import os # Configuration PROJECT_DIR = '.' OUTPUT_FILE = 'intaleq_v1_secure_latest.md' EXCLUDED_DIRS = {'.git', 'vendor', 'node_modules', '.gemini'} EXCLUDED_FILES = {OUTPUT_FILE, 'aggregate_files.py'} def aggregate_files(): with open(OUTPUT_FILE, 'w', encoding='utf-8') as outfile: outfile.write(f'# Intaleq V1 - Secure Latest Version\n\n') for root, dirs, files in os.walk(PROJECT_DIR): # Prune excluded directories dirs[:] = [d for d in dirs if d not in EXCLUDED_DIRS] for file in files: if file in EXCLUDED_FILES: continue filepath = os.path.join(root, file) rel_path = os.path.relpath(filepath, PROJECT_DIR) # We mainly want to include code files if any(file.endswith(ext) for ext in ['.php', '.sql', '.ini', '.json', '.md', '.txt', '.py', '.sh']): try: with open(filepath, 'r', encoding='utf-8', errors='ignore') as infile: content = infile.read() outfile.write(f'## File: {rel_path}\n') outfile.write(f'```\n') outfile.write(content) outfile.write(f'\n```\n\n') print(f"Added: {rel_path}") except Exception as e: print(f"Could not read {rel_path}: {e}") if __name__ == "__main__": aggregate_files() print(f"\nDone! File created: {OUTPUT_FILE}")