| name | session-bootstrap |
| description | Universal init prompt — every agent spawned into an AgentOps repo runs `ao session bootstrap` first. |
| skill_api_version | 1 |
| metadata | {"tier":"session"} |
| practices | ["agile-manifesto","dora-metrics","fungibility-charter"] |
| hexagonal_role | driving-adapter |
| consumes | ["bd","onboard"] |
| produces | ["stdout","json"] |
| context_rel | [{"kind":"customer-of","with":"AGENTS.md"},{"kind":"customer-of","with":"AGENTS-WORKFLOW.md"},{"kind":"customer-of","with":"AGENTS-CI.md"},{"kind":"customer-of","with":"AGENTS-CODEX.md"},{"kind":"customer-of","with":"AGENTS-RUNTIME.md"}] |
ao session bootstrap — the universal init prompt
One-line value: every agent in the swarm starts with the same orientation report, regardless of model.
When to invoke
Every agent spawned into an AgentOps repository runs this first. No exceptions. The bootstrap is the contract that makes the future fungibility charter (soc-vuu6.29) operational: identical starting frames let you swap Claude for Codex (or vice versa) on any bead without re-orienting.
Triggers:
- Manual spawn — operator just spawned a fresh agent into the repo:
ao session bootstrap.
- SessionStart hook (opt-in) — AgentOps 3.0 ships no SessionStart hook. If you author one via the
hooks-authoring skill, it can fail-open auto-fire ao session bootstrap --robot and discard the exit code.
- Pipeline submit — the orchestration substrate (the reference Gas City City) and headless CI agents call
ao session bootstrap --json before claiming work.
If you spawned without running it: stop, run it, then resume.
What it does
Four fail-open substeps, each producing a field in the session-bootstrap.v1 schema:
- Confirm tier-split AGENTS.md present — checks
AGENTS.md and the post-soc-vuu6.3 siblings (AGENTS-WORKFLOW.md, AGENTS-CI.md, AGENTS-CODEX.md, AGENTS-RUNTIME.md). Reports which exist. The agent reads them itself once oriented; the bootstrap just confirms presence.
- Invoke
onboard --auto — the future task-routed reading list subcommand under soc-vuu6.9. Currently P3 / not yet implemented: bootstrap falls back to phase="skipped:not-implemented" and continues without blocking.
- Count ready beads —
bd ready --json length. Surfaces what's immediately claimable. Fails to null if bd is missing or errors.
- Probe mcp-agent-mail — soft, optional. Reports unread-count or
null. Skipped with --no-mail or env MCP_AGENT_MAIL_DISABLED=1.
Flags