# ── OS / editor noise ─────────────────────────────────────────────────────
.DS_Store
*.swp
*.swo
*~
.Trash-*/
__pycache__/
*.py[cod]

# ── OpenClaw ephemeral / binary / noisy data ──────────────────────────────
openclaw/workspace/
openclaw/workspace-*/
openclaw/logs/
openclaw/extensions-quarantine/
openclaw/sandboxes/
openclaw/media/
openclaw/memory/*.sqlite
openclaw/memory/*.tmp*
openclaw/agents/*/sessions/
openclaw/agents/*/agent/auth-*.json
openclaw/agents/*/agent/harness-auth/
openclaw/cron/runs/
openclaw/cron/jobs-state.json
openclaw/devices/paired.json
openclaw/discord/model-picker-preferences.json
openclaw/flows/*.sqlite*
openclaw/identity/device-auth.json
openclaw/memory/
openclaw/openclaw.json.backup-before-*
openclaw/openclaw.json.failed
openclaw/plugin-runtime-deps/
openclaw/tasks/*.sqlite*
openclaw/telegram/update-offset-*.json
openclaw/update-check.json

# Temp files
*.tmp
*.tmp-*

# Runtime logs
*.log

# Local n8n SQLite recovery backups
.n8n-db-backups/
backups/

# Local secrets
.env
.env.*
*.pem
*.key
id_rsa
id_ed25519
credentials.json

# Obsidian local UI/runtime/plugin artifacts
swarm-common/obsidian-vault/**/.obsidian/workspace.json
swarm-common/obsidian-vault/**/.obsidian/graph.json
swarm-common/obsidian-vault/**/.obsidian/bookmarks.json
swarm-common/obsidian-vault/**/.obsidian/types.json
swarm-common/obsidian-vault/**/.obsidian/plugins/*/
swarm-common/obsidian-vault/**/.obsidian/themes/
