station
AGENTS.md3 starsChanged 12 days agoApache-2.0View on GitHub
Arm auto-merge (gh pr merge <n> --repo kontourai/station --auto) with no merge-method flag, confirm once, then stop; never merge by hand or arm another lane's in-flight PR. Landing a pull request has the confirmation query; the ruleset owns required checks, strategy, and batching (currently 1 build, up to 3 merges, ALLGREEN). The guide covers attribution, queue confirmation, and base freshness. Tests must reach the behavior their names claim and fail when it breaks. Helper tests do not prove caller integration;…
- Commits and pushes
We split this AGENTS.md into the rules it gives an agent
7 rules. About 0 are common, 2 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 8
Use an isolated Station home, instance name, and non-default ports.
- Very specific: line 10
Run npm run dependencies:ci to arm hooks.
- Very specific: line 11
Never git push --no-verify: no required CI check re-runs the pre-push gates.
- Distinctive: line 15
If an explicit submission handoff is active, freeze the worktree.
- Distinctive: line 48
Read docs/glossary.md, the affected canonical guide, and docs/architecture/module-map.md only when their topic is in scope.
- Very specific: line 52
After changes, run npx --no @kontourai/veritas readiness and address any FAIL lines before finishing.
- Very specific: line 53
If npx says the package is missing, install this repo's dependencies, adding @kontourai/veritas as a development dependency if it is not …
≈ “Common” is an estimate: at least 1 in 5 of the 36,368 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Station agent instructions
Start here
- GitHub owns live work state. Check
git status -sbagainstorigin/main. - Work only in a sibling worktree (
../station-worktrees/<lane>), never the primary checkout or a nested worktree. Preserve intentional changes; never usegit stash; after review begins, integrate upstream withgit merge origin/main, not rebase. - In a fresh environment, match
.nvmrcandpackageManagerbeforedependencies:ci, and unshallow history before trusting local docs-freshness results. If it hands you a single checkout and branch, work there; withoutgh, arm auto-merge through the GitHub connector. - Use an isolated Station home, instance name, and non-default ports. Ports 3141 and 3000 belong to the user.
- Hand a running instance to the operator through a freshly minted
station open --printsign-in link (single-use), never a barelocalhostURL. Mint it at handoff, not at start; see development. - Run
npm run dependencies:cito arm hooks; managed installs use pinned pnpm andnpm runis the script interface, so never run raw npm installs. Before editing, runnpm run gate:for -- <paths...>, thennpm run test:focused -- <file...>, not ad-hocnpx vitest. - Never
git push --no-verify: no required CI check re-runs the pre-push gates. The transfer gate usesSTATION_TRANSFER_BASELINE_ROOT; slow captures useSTATION_TRANSFER_CAPTURE_TIMEOUT_MS(testing). - Ordinary PRs use focused evidence and normal hooks; hosted checks and the merge queue own broad integration and full typechecking. A selector explanation, deferred selection (
test:changedexit 3), or rerun is not completion evidence. Run localci:fastonly for a specific failure or explicit request, neverfull:regressionmerely becausemainmoved. Never background a fulltypecheckorci:fastto poll its sentinel. Verification owns lane selection and exact-SHA receipts; focused evidence, hosted qualification, and Nightly usability remain distinct. - Diagnose the failure rather than rerun-to-green: a red lane is a signal to diagnose, not a request to rerun until green. For a redundant same-digest run, join or reuse the existing lease.
- A new Station Control tool or
stationCLI action needs a counterpart or exemption inscripts/cli-mcp-parity.json(parity). - If an explicit submission handoff is active, freeze the worktree. Never use shell background or relaunch loops, and do not edit or remove a worktree with a live handoff.
Landing a pull request
Arm auto-merge (gh pr merge <n> --repo kontourai/station --auto) with no merge-method flag, confirm once, then stop; never merge by hand or arm another lane's in-flight PR. Landing a pull request has the confirmation query; the ruleset owns required checks, strategy, and batching (currently 1 build, up to 3 merges, ALLGREEN). The guide covers attribution, queue confirmation, and base freshness.
Test evidence
Tests must reach the behavior their names claim and fail when it breaks. Helper tests do not prove caller integration; missing prerequisites and caught errors must not become success. For fault injection, commit and confirm a clean tree first, preserve intervening edits, and report baseline, injected failure, and restored outcomes. Fixture, cleanup, and performance work follows the test-effectiveness route.
Issue references
archive#NNNN is kontourai/station-archive, the pre-2026-08-28 history. Here, #27–#601 re-file archive issues under new numbers (see the map), so low numbers exist in both repos.
A bare #NNNN means this repo, except pre-reset text in areas the sweep skipped (notably packages/cli, packages/sdk, packages/connect, scripts, docs/adr). When unsure, check both repos. Write #NNNN for this repo, archive#NNNN for the archive.
Read only the route you need
For behavior or public-contract changes, use documentation-audit. Ship a new user-facing capability behind a Feature Preview.
Codex loads only this root automatically; read the routed scope explicitly. Claude's nested CLAUDE.md imports its paired AGENTS.md.
| Touched path | Read |
| Documentation, decisions | docs/guides/documentation.md |
src-server/** | src-server/AGENTS.md |
src-ui/**, packages/basis-pane/**, packages/board-pane/** | src-ui/AGENTS.md |
scripts/**, .github/**, root configuration, package scripts | scripts/AGENTS.md |
src-desktop/** | src-desktop/AGENTS.md |
packages/contracts/** | packages/contracts/AGENTS.md |
packages/sdk/** | packages/sdk/AGENTS.md |
tests/** | tests/AGENTS.md |
Read docs/glossary.md, the affected canonical guide, and docs/architecture/module-map.md only when their topic is in scope. Station consumes sibling Kontour products through published contracts, never their internals.
<!-- veritas:governance-block:start -->This repo uses Veritas for AI governance. Read .veritas/GOVERNANCE.md before making changes.
After changes, run npx --no @kontourai/veritas readiness and address any FAIL lines before finishing.
If npx says the package is missing, install this repo's dependencies, adding @kontourai/veritas as a development dependency if it is not one, and run it again.
<!-- veritas:governance-block:end -->Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 28,693 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository16 other files it gives its agents.
- scripts/AGENTS.mdAGENTS.md
- src-desktop/AGENTS.mdAGENTS.md
- src-server/AGENTS.mdAGENTS.md
- src-ui/AGENTS.mdAGENTS.md
- tests/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- scripts/CLAUDE.mdCLAUDE.md
- src-desktop/CLAUDE.mdCLAUDE.md
- src-server/CLAUDE.mdCLAUDE.md
- src-ui/CLAUDE.mdCLAUDE.md
- tests/CLAUDE.mdCLAUDE.md
- deslopSkill
- documentation-auditSkill
- security-triageSkill
- tauri-v2-buildSkill
- test-auditSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

