# Secrets / local config
.env
# The setup wizard's atomic-replace temporary. It holds the same API keys .env does,
# and the interruption that atomicity exists for is exactly what leaves it
# behind — where `git add -A` would stage it.
.env.tmp
.env.local
.env.*.local

# Persona (user-specific)
persona.txt
persona.card.json

# Python
__pycache__/
*.pyc
*.pyo
*.pyd
*.egg-info/
build/
dist/
.venv/
venv/
.pytest_cache/

# IDE / OS
.vscode/
.idea/
.DS_Store
Thumbs.db
*.swp

# Runtime / scraped data (PII: QQ numbers, group IDs, chat snippets)
runtime/
platforms/
eval.jsonl
memory.json
core_memory.json
candidates.jsonl
unknown_stickers.jsonl
owner_profile.json
stickers.json
stickers/auto/
stickers/manual/
seen_msg_ids.json

# Logs
*.log
*.log.*
logs/

# Atomic/maintenance backups of runtime JSONL ledgers
*.jsonl.old

# Benchmark run artifacts
benchmark_runs/
teacher_stats.json

# Single-instance guard written at the deployment root
.personagent.instance.lock
