# Standards — AGENTS.md The home of my agent-operating standards **and** the live global fleet that serves them. This repo is both the documentation of how any coding agent works in my repos and the actual source of the global agents, commands, and `how-i-work.md` that every project inherits. Edit here and every repo on this machine feels it. For a human-facing tour of the four standards documents, read `README.md` — this file is the agent-facing orientation and does not restate it. > **Inbox check (this repo):** At session start, if `INBOX.md` has unchecked items tagged > `(standards)`, surface them before proposing next steps; triage with `/triage`. ## What this repo is the source of The global layer lives here and is wired into `~/.claude` by **directory symlinks**, so a file added under `adapters/` is live immediately — no per-file linking: - `~/.claude/commands` → `adapters/claude/commands/` — global slash commands (`/retrofit`, `/handoff`, `/full-eval`, `/capture`, `/triage`, `/roundup`, `/new-project`, `/design`, `/adjudicate`). - `~/.claude/agents` → `adapters/claude/agents/` — global subagents (reviewer, evaluator, security-auditor, doc-auditor, exerciser, researcher, janitor, portability-checker, start9-spec-checker, design-checker, onboarding-tester). - `~/.claude/CLAUDE.md` → `how-i-work.md` — my universal preferences, loaded every session. (Distinct from this repo's *root* `CLAUDE.md`, which → `AGENTS.md`: same filename, different scopes — global preferences vs. this repo's orientation.) - `~/.claude/statusline.sh` → `adapters/claude/statusline.sh` — the Claude Code CLI terminal status-line script (invoked by `~/.claude/settings.json`). Because these are *global*, decisions here are never scoped to this repo alone. The test for anything proposed ("should we adopt linters / hooks / CI?", "is this skill worth building?") is **whether it's generally best-in-class across all the repos I build** — this repo is just where that cross-repo standard is authored and stored. ## Layout - `README.md` — human index of the four standards docs. - `how-i-work.md` — universal preferences (served as `~/.claude/CLAUDE.md`). - `portability.md` — the vendor-neutral / hot-swap protocol. - `retrofit-playbook.md` — terminal runbook for moving a project's brain onto disk. - `subagents-handbook.md` — designing and running delegated agents. - `guides/` — **neutral substance**: the self-contained operating guide for each command and agent, written as plain prose any vendor's harness could follow. Also holds shared reference docs that aren't tied to one command — e.g. `placement.md` (where a new project should live), which `/new-project` and `how-i-work.md` both point at. - `adapters/claude/{commands,agents}/` — **thin Claude wrappers**: frontmatter + a pointer to the matching `guides/` file. Substance never lives in a wrapper. - `INBOX.md` — cross-project capture buffer for untriaged ideas/bugs (see below). - `ROADMAP.md` — longer-term backlog for this repo (future agents, commands, standards). - `STATUS.md` — latest cross-project roundup snapshot, overwritten + committed by `/roundup` each run (git history is the diff over time). ## Conventions when editing - **Substance in `guides/`, machinery in `adapters/`.** To add or change what a command/agent *does*, edit its `guides/.md`. The wrapper only carries frontmatter and the "read your guide, then follow it exactly; if you can't read it, stop — don't improvise" pointer. Match the existing wrappers exactly. - **Portability first.** Knowledge lives in vendor-neutral files; vendor-named paths are relative symlinks into them. Full protocol in `portability.md`; the `portability-checker` agent verifies it. - **Keep this file lean.** Whole-repo, every-session facts only. Subsystem detail goes in a guide. Near-term status goes in `## Current state` below; longer-term backlog in `ROADMAP.md`. - Follow `how-i-work.md` for collaboration, git, and debugging defaults. ## The capture → triage → roadmap loop A frictionless path from "random thought about some repo" to "on the right list," so ideas stop scattering into phone notes: - **`/capture`** appends one structured line to `INBOX.md` from *any* repo (you need not be in the target repo) and commits+pushes the standards repo so the note is durable. Capture is deliberately dumb and uniform — no routing decision at capture time. - **`/triage`**, run *inside* a project, drains that project's `INBOX.md` items and routes each — `Current state`, the repo's `ROADMAP.md`, a guide, or discard — with your approval, then clears them from the inbox. - **Inbox is upstream of every repo's ROADMAP.** ROADMAP is triaged, owned backlog for one repo; the inbox is the raw, cross-project buffer that feeds the ROADMAPs. **Inbox-check line (the portable surfacing mechanism).** Every project repo's `AGENTS.md` should carry this so any vendor's agent surfaces pending items at session start: > **Inbox check:** At session start, if `~/Projects/standards/INBOX.md` exists, scan it for > items tagged `(this-repo)` and surface them before proposing next steps; triage with > `/triage`. ## Current state - **Fleet built and live** — commands `/capture /triage /roundup /new-project /handoff /retrofit /full-eval /design /adjudicate`; subagents incl. `design-checker` + `onboarding-tester` (substance in `guides/`, thin wrappers in `adapters/claude/`, symlinked into `~/.claude`). Dogfoods its own standard. Latest `/roundup`: `STATUS.md` 2026-06-16. - **`/adjudicate` built this session (ROADMAP item 10), live.** Debates each parked P2/P3 backlog item on a repo's ROADMAP to a verdict so the owner ratifies instead of researching: per item, investigator (grounds it in the code + classifies blast radius) → build- ∥ drop-advocate → judge (rubric = `how-i-work.md` + repo `AGENTS.md`, biased to DROP on ties). Verdicts: **DROP** (auto, ratified in one batch), **DO** (low blast radius → annotated plan, recommend-only), **ESCALATE** (HIGH blast radius / low confidence → balanced brief for the owner). Autonomy gated by blast radius, not priority; ROADMAP-only (nudges `/triage` first, never reads raw inbox). **v1 is recommend-only** — never executes; v2 (narrow auto-execution of the safe DO class) deferred until trust is built. - **`onboarding-tester` built this session (ROADMAP item 9), live.** Docs-only adopter agent: walks a product's published docs as a literal newcomer (never reading source), reports doc gaps, and on a fully clean run emits a publishable "all it took was X, Y, Z" walkthrough. First target: keysat SDK integration, **staged** — Stage 1 (Path 1, manual issuance under keysat's new `merchant-onboard` key, `d5885d1`) is **unblocked**, runs in a keysat session; Stage 2 (Path 2, buyer-pays on regtest) is **gated** on keysat's greenlit `payment_providers:write` scope + network gate + sandbox flag. - **Design system (ROADMAP item 8) shipped** — `/design` → `design/DESIGN.md` + DTCG tokens; `design-checker`; `/new-project` scaffolds `design/`. Pilot: keysat import (Case A). **Done:** the first **Case B (Extract) run on recap** — document-as-is; it exercised the previously-untested extract→reconcile path, the contract was distilled, and the conformance cleanup shipped in two phases (recap app 0.2.161, 2026-06-17). Extract-phase Phase-D learnings landed in `guides/design.md`; cleanup-execution learnings in `guides/design-checker.md`. **Still open (decoupled):** a fresh Claude Design run to confirm export internals + tune Phase-C — deliberately kept out of the recap run. - **Next steps:** (1) run the Stage-1 `onboarding-tester` harness in a keysat session (item 9); (2) cross-repo quality-gate standard + `/harden` (item 1); (3) non-git-folder sweep under `~/Projects` (~13). - Queued in `INBOX.md` for other repos' `/triage`: keysat design cleanup (P2) + onboarding Path-2 (P3); `ten31-transcripts` mini-retrofit; `ten31-database` networking/icon/intake; (standards) operator-onboarding agent (P3).