# Python
__pycache__/
*.py[cod]
.venv/
*.egg-info/
.mypy_cache/
.ruff_cache/
.pytest_cache/

# Node
node_modules/
.next/
out/

# Env / secrets — never commit (AGENTS.md)
.env
.env.*
!.env.example
!**/.env.example
*.key

# Data & model artifacts — never commit (AGENTS.md)
*.csv
*.jsonl
datasets/
apprentice-api/spike/.cache/
checkpoints/
optimized_program.json

# Tooling
.codegraph/
.DS_Store
*.log
apprentice-ui/codex_working.md
.codex/

# Local dev databases (and their manual backups)
*.db
*.db.bak*

# Local machine config with secrets — never commit
.mcp.json

# Local working artifacts, not repo content
# (.claude/skills holds symlinks into the ignored .agents/ dir — dangling on a fresh clone)
.claude/skills/
outputs/
test-sdk/
.agents/
skills-lock.json
docs/personal_learning.md
.uv-cache/
spike/Capture-*.png
apprentice-ui/ClaudeDesign/screenshots/localhost-*.png
