This repository builds the metasystem: a portable set of working rules, scripts, and skills for repositories where agents (Claude Code, Codex, Devin) and humans build software together. One question organizes everything here: what ships to other repositories, and what merely helped build it?
| Folder | What it is | Ships? |
|---|---|---|
metasystem/ |
The product. The template that gets installed into other repositories. Its payload is an explicit allowlist; nothing else leaves. | The allowlisted parts, via metasystem system adopt |
paper/ |
The paper. The book about the metasystem: why it exists and how it works, chapter by chapter, with its PDF build. This project's intent quotes it. | Never |
development/ |
The building of it. Design docs, analysis, finished reports, this repository's own local rules, the evidence index. | Never |
evidence/ |
Gitignored symlink to the durable evidence store, where full run transcripts and archived mission repositories live. Hundreds of megabytes a day of raw evidence would sink git; the tracked index of it is development/evidence-index.md. |
Never |
It is tempting to think this repository needs a third concept: the metasystem, plus some meta-meta thing that builds it. It does not, and the vocabulary stays two-level on purpose:
- The metasystem is equipment. It plays the same role here as in any repository that adopts it: hooks fire at turn ends, supervision watches processes, dispatch runs delegates, receipts accumulate, retros tune rules.
- This repository is simply an adopted repository whose product happens to
be the metasystem's own source. Its
metasystem/plans/holds this project's plans, like any project's. Itsmetasystem/artifacts/holds this project's live runtime state, like any project's — and transfers to no one.
What people mistake for a third layer is the ordinary software boundary between a source tree and a distribution. That boundary is enforced here, not narrated: the payload is an allowlist (a forgotten file stays home), the shipped files are swept for any trace of this repository, and one rule is audited mechanically — the kit may call into the metasystem; nothing shipped may reference outward.
Every path in metasystem/ carries one of three verdicts — SHIPS,
PROJECT-STATE, or RUNTIME — in
development/metasystem-inventory.md,
each with the deciding rule.
- Install the metasystem in a fresh repository →
metasystem/bin/metasystem system adopt <target> --runtimes claude,codexand followmetasystem/docs/project-adaptation.md. - Install it in a repository that already has agent rules → follow
metasystem/docs/metasystem-reconciliation.md, written for an agent to execute with human review points. - Upgrade an adopted repository to a newer template → the upgrade procedure in the same reconciliation manual (the recorded adoption SHA and the three-bucket rule). Currently a documented manual procedure; an engine verb is on the backlog.
- Work with goals and agents day to day →
metasystem help humanfor your actions (goals, approval, budgets, start and stop) andmetasystem help agentfor build, review and land; the manual ismetasystem/docs/working-with-agents.md. - Change the metasystem itself → work in this repository under its own
rules; the gate of record is the testing contract (
metasystem test run), and nothing is pushed on red.