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

# Virtualenvs
.venv/
venv/
env/
ENV/

# Tooling
.pytest_cache/
.ruff_cache/
.coverage
htmlcov/
.mypy_cache/
.tox/

# Editor / OS
.DS_Store
.idea/
.vscode/
*.swp
*~

# Internal tracking — not part of the published artifact
.claude/internal/

# OMC state
.omc/

# Claude Code local settings (per-machine permission cache)
.claude/settings.local.json

# uv lockfile (project uses pip via pyproject.toml; uv lockfile is generated by side-tooling)
uv.lock

# Eval artifacts that should not be committed wholesale
evals/results/_local/
evals/.cache/

# Local secrets
.env
.env.*
!.env.example
!.env.*.example

# Launch-prep notes (personal; not part of public repo)
.claude/GIF_RECORDING.md
.claude/launch.md
.claude/medium-post.md
