the signals and their derived score are provisional and subject to change.
validate manually before sharing.
2d0a584541a3a2f8141fff6f809a33a38db23d3dnone
CLAUDE.mdTool: claude-code# Claude Code instructions
`AGENTS.md` is the canonical instruction set for every agent. The files are
imported here so Claude receives their rules at the start of a session. Do not
repeat those rules in this file.
@AGENTS.md
@code/AGENTS.md
@manual/AGENTS.md
## Writing-rule hook
`.claude/settings.json` runs the shared `.agents/hooks/style-rules.py` on
five events. Edit, Write, and NotebookEdit payloads are checked as they land.
Markdown edits re-inject the writing rules from `AGENTS.md`; C and C++ edit.claudeTool: claude-code.claudeTool: claude-code.codexTool: codex.agentsTool: unspecified.agentsTool: unspecified.github/copilot-instructions.mdTool: github-copilot# GitHub Copilot instructions
Follow the repository-wide `AGENTS.md` and any more specific `AGENTS.md` that
applies to the files being suggested or changed.
manual/content/keys/crush.mdTool: crush---
key: Crush
summary: How close a crushable target must be before a crusher drives over it instead of shooting.
see_also: ["Crusher", "Crushable", "PlayerAutoCrush", "AutoCrush", "system:difficulty"]
when_omitted:
kind: value
value: "1.5"
---
The distance is written in cells and measured between the two objects. Two decisions read it, and both are reached only for a house under computer control.
The first is the approach step. A unit carrying [`Crusher=yes`](/keys/crusher/), or one that has earned tAGENTS.mdTool: agents-md# OpenTS repository instructions
These instructions apply to the entire repository. A more specific `AGENTS.md`
may add rules for its subtree.
## Required context
Read `CONTRIBUTING.md` before changing the project. Read `docs/BUILDING.md`
before making or repeating a build claim, and read `docs/STYLE.md` before
changing source.
For work under `manual/`, read and follow `manual/AGENTS.md`; it supplements
these instructions and routes authoring and maintenance work to the owning
manual guides.
## Projectcode/AGENTS.mdTool: agents-md# Engine source instructions
These instructions apply to `code/` and supplement the repository-wide
instructions in [`../AGENTS.md`](../AGENTS.md).
## Read before changing source
- Use [`../docs/BUILDING.md`](../docs/BUILDING.md) for supported build paths.
- Use [`../docs/STYLE.md`](../docs/STYLE.md) for source conventions.
- Read the relevant implementation, callers, data paths, and tests first.
## Language and change discipline
- Use C++20 for new and substantially rewritten code. Modernize inheritedmanual/AGENTS.mdTool: agents-md# Manual agent instructions
These instructions apply to `manual/` and supplement the repository-root
instructions.
## Read before editing
- Read [README.md](README.md) for the manual layout and launcher behavior.
- Read [AUTHORING.md](AUTHORING.md) and [STYLE.md](STYLE.md) before changing
public content.
- Read [MAINTAINING.md](MAINTAINING.md) before changing schemas, generated
data, adapters, lifecycle, routes, tooling, or publication.
- Check factual claims against the relevant record, page, sourcemanual/content/keys/agent.mdTool: agents-md---
key: Agent
summary: Makes a soldier report on the structure it walks into rather than capturing it.
see_also: ["system:capture"]
when_omitted:
kind: value
value: "no"
---
The spy branch runs only for a soldier that is not an [`Engineer=yes`](/keys/engineer/#scope-infantrytype) type, because the engineer handling claims the arrival first and never falls through to it. A type that sets both flags therefore behaves as an engineer and never spies.
This setting forces nothing else on. Without [`Infiltr.cursorTool: cursornone