Onboarding
xal-factory init sets up a factory in about two minutes. Every question shows its default,
Enter takes it, and every answer is followed by the one command that changes it later.
xal-factory init # askxal-factory init --yes # take every defaultxal-factory init --set pipeline.chain=on --set plan.session_ceiling_usd=40 # script itWhat it asks
Section titled “What it asks”The factory. Your GitHub owner (read from gh), a name, and the ops repo’s name and
location. The ops repo holds admitted specs, the status file, the cost ledger and the idea
inbox.
How the factory runs. The options marked asked on the options page. The defaults are the safe choice: the driver builds a session only when you dispatch it, nothing chains, and nothing merges without you.
| Asked | Default | What you are choosing |
|---|---|---|
| escalation label | needs-human |
the label a stopped pull request gets |
| fallback language | go |
what seed pre-selects; the stack ADR still decides |
| driver model | the strongest | quality against cost, per session |
| plan and session ceilings | $600, $70 |
the spend bounds every plan starts with |
| driver | on |
whether /run-session builds sessions, or you build them by hand |
| chain | off |
whether a merged session dispatches the next |
| auto-merge | off |
what may merge with no person present |
| status nudge, idea inbox | on |
the ops repo’s weekday nudge and /idea inbox |
What it does
Section titled “What it does”- Checks your tools and that git has an identity (the seeders commit; it asks for one if not).
- Seeds the ops repo with its gate, and writes your answers into its
.xal/factory.conf: only the ones that differ from a default. That file is the factory profile: every service you seed starts from it. - Offers to create the ops repo on GitHub (private), open and pin the idea inbox, and switch its workflows to match. Say no and it prints the commands instead.
- Prints a summary of every option and its value, and what to do next.
xal-factory seed orders # a service repo, from the profile, with its gate and pipelinecd orders && ./scripts/check.shxal-factory apply # once pushed: workflows on or off as the profile saysThe seeder prints what remains yours: installing the Claude GitHub App, setting three
secrets, and writing each secret’s real expiry into .xal/gate-inputs. Gate 0 stays red
until you do, on purpose.