Getting started
This is the operator’s tutorial. It walks through the path a directive takes from your input to actual shipped code, and where you intervene along the way.
The shape of one full run
Section titled “The shape of one full run”You → write a DirectiveBusiness CEO → routes it (decides scope + which depts engage + budgets)Management → spins up Project, breaks into BuildRequestsTechnology → answers BuildRequests, ships CapabilitiesCoding harness inside that project → planner / worker / validator iterateMarketing → pings about the Project as it nears launchThree of those layers are on disk and observable in the UI. Your job is to write directives, occasionally answer escalations, and watch.
1. Make sure the org is running
Section titled “1. Make sure the org is running”Open /papercup (admin). It redirects to /papercup/harnesses. You should see the embedded Harness Dashboard with a project picker that lists:
- Department harnesses:
org-business,org-rd,org-technology,org-management,org-marketing(harness_kind: "department") - Coding harnesses:
sheets,restart, … (harness_kind: "coding")
If departments aren’t there, check ~/.restart-harness-projects.json. If the org files are missing, the system seeds itself on first request to any /api/org/* endpoint.
2. Turn on the directors you want active
Section titled “2. Turn on the directors you want active”For each department you want running autonomously, open /harness/org-{dept} → Director agent tab → toggle Auto: ON. Default interval is 60 seconds.
Director schedulers are server-side. Once toggled on they keep running with all browsers closed.
You can leave a director OFF and only kick it manually via the ▶ Run now button on the same tab.
3. Write a directive
Section titled “3. Write a directive”Go to /papercup/directives → + New directive. Fields:
- Title — short (“Build a real-time spreadsheet”)
- Body — the spec. The CEO routes based on this; be concrete about scope, deadline, and constraints.
- Priority —
low/normal/high. CEO weighs this when choosing scope. - Budget (cents) — total $ envelope. CEO allocates across spun-up projects.
Submitting POSTs to /api/org/directives and auto-emits a Directive kind message to Business with kind Directive.
4. Watch the CEO route it
Section titled “4. Watch the CEO route it”Within one Business auto-loop tick (or after you click ▶ Run now in Business’s Director Agent tab), the CEO worker will:
- Read your directive
- Decide: which departments to engage, how to split scope, what budget per project
- Emit a
Directive Summary(visible at/papercup/directives/{id}) - Spin up 1+ projects via
spinup_projectactions - Emit
PriorityandBudgetAllocationmessages to Management
Each spun-up project broadcasts a ProjectKickoff to all 5 departments.
5. Watch Management decompose + Technology build
Section titled “5. Watch Management decompose + Technology build”Once Management has the project, its director iterates: emit BuildRequests to Technology for any reusable capabilities, send ProgressUpdates back to Business as state changes.
Technology answers BuildRequests with BuildRequestResponse (accept/reject) and ships Capability messages when the work lands. Capabilities auto-fan-out to every active project’s metadata.
If the project has its own coding harness (e.g. sheets), the actual code-shipping happens there. Switch the harness picker on /papercup/harnesses to that project to watch planner / worker / validator iterate.
6. When you intervene
Section titled “6. When you intervene”Most of the time you don’t. Cases where you do:
- Director loop stuck on the same decision — open Memory tab on that dept; you’ll see e.g. 5 consecutive
NEXT_WORKER_CEO_MODEon the same message. Either edit the message status manually or pause the loop and update the director’s notes. - Charter rule needs adjusting — edit
~/.restart-org/charter.mddirectly (orPUT /api/org/charter). Directors re-read it on next prompt. - Project budget exhausted or stalled —
PATCH /api/org/projects/{slug}to update budget_cents or status. - Need to retroactively model existing work — see Operator conventions: retroactive seeding for the directive → project → CEO summary → messages order.
- Emergency stop everything —
POST /api/org/admin/stop-allcancels all in-flight runs and persistsautoLoop: falseto every dept.
7. Where to look for state
Section titled “7. Where to look for state”| Want to see… | Look at |
|---|---|
| What every director just did | Each dept’s Director runs disclosure in /harness/org-{dept} Director Agent tab |
| Cross-org pulse (active runs, backlog, audit) | Was on /papercup/health — folded into the Harnesses console (round 37) |
| Why this directive ended up as 1 vs N projects | /papercup/directives/{id} → Summaries section (CEO routing notes) |
| Whether a project is hooked to a coding harness | /papercup/projects/{slug} Overview → metadata.harness_slug |
| Audit trail (config edits, admin stops) | ~/.restart-org/audit.jsonl |
Common patterns
Section titled “Common patterns”See Operator conventions for:
_discarded/folder pattern when retiring components- Backup before wiping
~/.restart-org/ - Reserved-project quirks
- Retroactive seeding order
- BudgetAllocation accumulator gotcha