# secrets — never commit
# (gitignore does NOT support inline comments — keep comments on their own line)
.env
.env.*
# allow the committed example (placeholders only)
!.env.example
# local RFC 3161 timestamp-authority private key + cert
.vault_tsa/

# macOS
.DS_Store

# python
.venv/
__pycache__/
*.pyc
*.egg-info/
.pytest_cache/

# node / ts sdk
node_modules/
dist/
*.tsbuildinfo

# harness — reference clone (study only, never tracked)
ECC-reference/

# harness runtime artifacts (generated by hooks; never tracked)
.claude/state/
.claude/metrics/
.claude/sessions/
# learned instincts are runtime/personal — keep the drop-zone (README) but ignore its contents
.claude/homunculus/instincts/learned/*
!.claude/homunculus/instincts/learned/README.md
# auto-captured gotcha ledger (machine-written, secret-scrubbed; runtime only)
.claude/homunculus/gotchas.jsonl
.vault_tlog/

# personal Claude Code settings (machine-local)
.claude/settings.local.json
.claude/launch.json

# tooling caches
.hypothesis/

# internal PM research — never commit (competitive analysis, vision gap docs)
docs/COMPETITORS.md
docs/VISION_GAPS.md
