Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 10 additions & 4 deletions .claude/agents/implementer.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,16 @@ fork commit you made is pushed: the orchestrator removes the worktree once its b
A design is chosen on its merits for the modern hardware ToyOS targets, never because a test or
development environment (QEMU, CI, the dev host) or a particular test machine lacks or has a
feature, and never because another OS does it that way; when an environment cannot run the right
design, the environment changes or the gap is filed. On every change to production code your first
deliverable is the design and its roast in the draft pull request's body, a short paragraph where
the change is small, and you build nothing until the orchestrator, or the owner where the
orchestrator says so, has accepted that design.
design, the environment changes or the gap is filed. Where that hardware's manufacturers or the
published state of the art back a design, the design follows and cites them, and leaves them only
when they leave it. Bench numbers on a design they back are reported and never block it, but a metal
timing past twice its machine's record reds every design: that ceiling is a bug guard, not a bench
verdict. A slowdown on a design they back is investigated, not used to reject it. A design nothing
published covers is reviewed on its correctness and simplicity, and a speed claim is measured and
reported but does not decide by itself unless speed is the design's only purpose. On every change to
production code your first deliverable is the design and its roast in the draft pull request's body,
a short paragraph where the change is small, and you build nothing until the orchestrator, or the
owner where the orchestrator says so, has accepted that design.

Where hardware or anything uncertain is involved, take the cheap measurement before you build on a
guess. Then build, then test on root `CLAUDE.md`'s tiers before anyone reviews:
Expand Down
4 changes: 3 additions & 1 deletion .claude/agents/orchestrator.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,9 @@ prompt does the job; when a review finds a way around a gate, the rule moves int
gate goes. A brief prefers deleting to adding. Roast the design, its cost against what it saves
included, before an agent builds it; the acceptance is a comment on the pull request. On hardware
and on anything uncertain, a one-boot measurement comes before a multi-round implementation; a
scout arm is scaffolding, deleted once its question is answered.
scout arm is scaffolding, deleted once its question is answered. No brief or issue makes a bench
number the condition a design lives by where its hardware's manufacturers or the published state
of the art back it, or where nothing published covers it and speed is not its only purpose.

## Agents

Expand Down
8 changes: 7 additions & 1 deletion .claude/agents/reviewer.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,13 @@ if it meets the bar above; otherwise it is a NOTE.
userland could own; a design made worse to spare the ABI; a design choice made because of a
test or development environment's capability (QEMU, CI, the dev host), a particular test
machine's, or another OS's practice, for a design is chosen on its merits for the modern hardware
ToyOS targets, and an environment that cannot run it changes or the gap is filed. A new
ToyOS targets, and an environment that cannot run it changes or the gap is filed; where that
hardware's manufacturers or the published state of the art back a design, one that does not
follow and cite them, or leaves them while they still back it. Bench numbers on a design they back
are reported and never send it back, but a metal timing past twice its machine's record reds every
design: that ceiling is a bug guard, not a bench verdict. A design nothing published covers is
reviewed on its correctness and simplicity, and a speed claim does not decide by itself unless
speed is the design's only purpose. A new
dependency only where it is the cleanest path, a general and widely used crate the pull request
says why it takes; no new fetch. Nothing outside the brief's fence.
Assembly, a naked function and a `core::arch` or `std::arch` path live only in an
Expand Down