**/target/
**/__pycache__/
**/*.py[co]
**/graphify-out/

config.toml

.vscode/
.idea/
*.swp
*.swo
Thumbs.db
.DS_Store

*.png
*.pcx
*.log
*.txt
!tools/requirements-test.txt
!tools/telemetry-dashboard/vendor/THREE-LICENSE.txt
*.tmp
*.map
*_todo.md

# No trailing slash: a linked worktree reaches the retail INIs through an
# `ini` symlink, which a directory-only pattern does not match.
/ini

/infodocs/

/docs/*
!/docs/ares-generic-warhead.md
!/docs/ini-roots.md
!/docs/_config.yml
!/docs/index.md
!/docs/Networking.md
!/docs/ares-unit-delivery.md
!/docs/ares-superweapon-building-gates.md
!/docs/ares-superweapon-money.md
!/docs/ini-directives.md
!/docs/script-action-56.md
!/docs/ar/
!/docs/de/
!/docs/ru/
!/docs/sv/
!/docs/th/
!/docs/tr/
!/docs/zh-CN/
!/docs/images/
!/docs/images/**

.mcp.json
/.claude/*
!/.claude/skills/
/.claude/skills/ghidra-up/
/.agents/*
!/.agents/skills/
/.agents/skills/ghidra-up/
/todo/
/logs/
/saves/
/replays/

tools/vendor-eval/

/*.md
!/README.md
!/README.sv.md
!/README.de.md
!/README.zh-CN.md
!/README.ar.md
!/README.ru.md
!/README.th.md
!/README.tr.md
# Kept visible: a root CLAUDE.md would stop Claude Code reading AGENTS.md.
!/CLAUDE.md
!/AGENTS.md

/*.js
/*.py

# throwaway verification build dir (parallel-session exe lock workaround)
/target-verify/

# Dashboard build dependencies; compiled JS is intentionally tracked.
/tools/telemetry-dashboard/node_modules/
