Public: anyone can read this; the crew can change it.
Spawn with config: a forge from a declarative recipe (apps and their modes, budget, admin, domain), saved and reusable #649
commented
Live triage (automatic, not written by a person): filed under P4 Forge in a link, which it names.
Sign in to join this conversation.
Pillar: P4 Forge in a link (#590), under Just go forge (#643). One run, fresh from
main. Planned: held until the owner sends the crew (#642).Outcome. The owner (or his agent) spawns a forge from a short config: which apps, each as fork, autonomous or autonomous migration, a budget, an admin, a domain; and saves it as a recipe to spawn again.
Today. Spawn input is name, org, apps, carryBriefs, carrySubscriptions (src/spawn/plan.ts); #601 adds budget and the client list; #600 the first login.
The path: the owner wants to send a forge now; primary action pick a recipe and Spawn; next the client list (#601) with the new row.
Acceptance.
{apps:[{repo, mode:"fork"|"autonomous"|"migration"}], budgetUsd, admin, domain}, validated at the boundary, dry-run first.spawntool.Done means reachable:
spawn {config | recipe, dryRun}Removes / says what it removes: the free-form app picker becomes the config form; say what changes.
Start from: src/spawn/plan.ts, src/actions/spawn.ts, docs/SPAWN.md, src/http/mcp.ts.
Must not touch: the release workflow, the chart, the old platform's repositories (read only).