# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# Virtual Environment
.venv/
venv/
ENV/
env/

# Environment Variables
.env
CREDS.txt
NVIDIA_NIM_API_KEY=*.txt
.goal10-hermes-venv/

# Neo4j & Docker
docker/data/
docker/logs/

# IDEs
.vscode/
.idea/
*.swp
*.swo

# Project Specific
config.yaml
tests/fixtures/*.py
smoke_test.py
auth_service.py

# UV
.uv/
uv.lock
.pytest_cache/
GEMINI.md
# Preserve local documentation, but version the approved v1 planning package.
docs/*
!docs/v1/
docs/v1/*
!docs/v1/*.md

# npm
npm/node_modules/

.gemini
.memex

# Internal planning docs — not for main branch
TRASH/

# Claude Code local settings
.claude/ruvector.db
ruvector.db

# VS Code Extension build & dependencies
memex-vscode/node_modules/
memex-vscode/dist/
memex-vscode/*.vsix

# Local agent caches & configurations
.claude/
.antigravitycli/
temp_repo/

# memex-site (Next.js website)
memex-site/node_modules/
memex-site/.next/
memex-site/out/
memex-site/.wrangler/
memex-site/next-env.d.ts
memex-site/next.config.ts.bak
memex-site/.env*.local

# The Python `lib/` rule above matches at any depth and was swallowing the
# website's source. Scope it back in.
!memex-site/src/lib/
memex-site/.playwright-cli/
memex-site/output/
