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

# Build artifacts
build/
dist/
dist.v*/

# Dev-tree asset symlinks — wheel gets these via force-include in pyproject.toml
src/memo/agent_assets/

# Environments
.venv/
venv/
.env
.env.local

# Local DB / state
*.db
*.db-shm
*.db-wal

# Editor / IDE / OS
.DS_Store
.claude/
.windsurf/
.idea/
.vscode/

# Node (integrations)
node_modules/
integrations/**/node_modules/
integrations/**/dist/
integrations/**/.paperclip-sdk/

# Generated dashboard HTML (rebuild with `python web/build.py`)
web/health.html

# Local synapse runtime state (federation ledger, capture state)
.synapse/

# Local memflow runtime state (events, sync state)
.memflow/

# Codegraph MCP index + runtime (sqlite db, wal, socket, pid)
.codegraph/

# Local backup archives
memo-backup-*.zip

# devswarm temp workspace
.devswarm-temp/

# understand-anything tool output (local knowledge-graph cache)
.understand-anything/

# Zero-config repo mode defaults (auto-created on first run)
memorias/
memories/
.memo-state/
.memo-state/*.db
.memo-state/*.db-shm
.memo-state/*.db-wal

# Auto-harvested eval labels (per-machine, regenerate with `memo eval harvest`)
eval/auto_labels.json
memo-version.json

# Internal dev-process artifacts (design plans/specs + maintainer-only release
# docs) — not shipped in the wheel, not public-facing
docs/superpowers/
docs/distribution.md
docs/registry-submission.md

# Obsolete IDE client rules (product renamed: Windsurf retired → Devin Desktop)
.windsurfrules

# Agent instruction files kept local, not versioned (CLAUDE.md stays tracked)
/AGENTS.md
/GEMINI.md

# scratch/debug output
*.log
err_synth*.txt
