Start here
Six commands are enough for your first sessions. Learn these and ignore the rest until you need them.
- When
- You use session-orchestrator in a repo for the first time.
- You get
- A CLAUDE.md (AGENTS.md on Codex and Pi) with a Session Config and the minimum repo structure, committed. You see the created files and the commit hash.
- Type it
- Claude Code
/bootstrap [--upgrade <tier>]- Codex
$session-orchestrator:bootstrap- Cursor
/bootstrap- Pi
/bootstrap
- Touches
- Commits asks you first 7 to 9 setup questions;
/bootstrap --fast --no-interview skips them and uses sensible defaults
- Needs
- A git repository.
- Then
- Run
/session feature for your first session.
Source: skills/bootstrap/SKILL.md
- When
- You sit down to work on a repo and want to know what to do next.
- You get
- It reads your repository (git state, issues, CI, environment) and proposes what to work on. Nothing changes until you agree.
- Modes
housekeeping tidy up and maintainfeature build one clear feature (best for a first session)deep big or unclear change: look first, then build (the default)ultradeep an optional, longer profile of deep for a named research question; not a fourth type
- Type it
- Claude Code
/session [housekeeping|feature|deep|ultradeep] [task]- Codex
$session-orchestrator:session deep- Cursor
/session deep- Pi
/session
- Touches
- Changes files asks you first only session state (STATE.md, session lock); code waits for /go
- Needs
- /bootstrap done. With no session history, a bare /session first asks you for task and mode.
- Then
- Agree to the plan with
/go.
Source: commands/session.md
/go Start here
- When
- You read the session plan and agree with it.
- You get
- The agreed work, done in rounds (waves). Each round is checked with your tests, and you get a progress summary.
- Type it
- Claude Code
/go [instructions]- Codex
$session-orchestrator:go- Cursor
/go- Pi
/go
- Touches
- Changes files edits code per the plan; with no plan it does nothing
- Needs
- A plan from /session in this conversation, or this session's own paused STATE.md.
- Then
- Run
/close when the rounds are done.
Source: skills/go/SKILL.md
- When
- The work of this session is done and you want to wrap it up.
- You get
- The full check, a clean commit, issues for what is left, and a session summary.
- Type it
- Claude Code
/close- Codex
$session-orchestrator:close- Cursor
/close- Pi
/close
- Touches
- Commits also opens issues and pushes if configured; refuses when STATE.md belongs to another session
- Needs
- An active session of your own. Arguments are ignored.
- Then
- Start the next session with
/session.
Source: skills/close/SKILL.md
/plan Start here
- When
- You want to plan a new project or a feature, or look back at a finished phase.
- You get
- A researched question round, then a PRD or retro document and prioritized issues.
- Modes
new a new project: also creates the repo and commitsfeature one feature: PRD and issuesretro look back at a finished phase
- Type it
- Claude Code
/plan [new|feature|retro]- Codex
$session-orchestrator:plan feature- Cursor
/plan feature- Pi
/plan
- Touches
- Opens issues asks you first writes the PRD or retro;
new also creates a repo and commits
- Needs
- /bootstrap done.
/plan new also needs plan-baseline-path in your Session Config; feature and retro run without it.
- Then
- Optionally
/grill the PRD, then /session feature to build it.
Source: skills/plan/SKILL.md
- When
- After a few sessions, you want to learn from what went well or badly.
- You get
- Suggested lessons from your past sessions. You decide which ones to keep.
- Modes
analyze suggest lessons (default)review edit stored lessonslist show stored lessonsdialectic update USER.md and AGENT.md, only with --apply
- Type it
- Claude Code
/evolve analyze- Codex
$session-orchestrator:evolve analyze- Cursor
/evolve analyze- Pi
/evolve
- Touches
- Changes files asks you first stores a lesson only after you confirm it
- Needs
- /bootstrap done,
persistence: true in your Session Config, some session history.
- Then
- Run
/reconcile to turn lessons into rules.
Source: skills/evolve/SKILL.md
Clarify an idea
Turn a fuzzy idea into something you can plan.
- When
- You have a feature idea, but its scope or UX is still fuzzy.
- You get
- A short question dialogue (3 to 5 rounds) and an approved design spec in docs/specs/.
- Type it
- Claude Code
/brainstorm [topic-slug]- Codex
$session-orchestrator:brainstorm export-to-csv- Cursor
/brainstorm export-to-csv- Pi
/brainstorm
- Touches
- Changes files asks you first writes only the spec; no code work until you approve the design
- Needs
- /bootstrap done.
- Then
/plan feature with the spec, or /write-executable-plan.
Source: skills/brainstorm/SKILL.md
- When
- A plan or PRD feels settled and you want it attacked before anyone builds it.
- You get
- Hard questions, one decision at a time, grounded in your code. Contradictions and weak assumptions show up.
- Type it
- Claude Code
/grill [file-or-topic]- Codex
$session-orchestrator:grill docs/prd/<file>.md- Cursor
/grill <file>- Pi
/grill
- Touches
- Changes files asks you first mostly conversation; optionally writes a grill note in docs/specs/
- Needs
- A plan in the conversation, or a file to grill.
- Then
/plan feature to write down the hardened plan.
Source: skills/grill/SKILL.md
Start a project
Set up a repo, check the setup, or move a product into its own repo.
Also: /bootstrap and /plan new in Start here.
- When
- A product or a cleaned copy should move out of this repo into its own repo.
- You get
- A guided extraction in 5 steps: target, sanitize check, copy with fresh git, freeze marker, remotes.
- Type it
- Claude Code
/spinout [--type venture|snapshot] [--dry-run]- Codex
$session-orchestrator:spinout- Cursor
/spinout- Pi
/spinout
- Touches
- Commits asks you first creates a new repo and leaves a freeze marker in the source; --dry-run only prints the plan
- Needs
- /bootstrap done. Know the destination path and account.
- Then
- Run
/bootstrap in the new repo.
Source: skills/spinout/SKILL.md
- When
- You want to check that session-orchestrator is set up correctly in this repo.
- You get
- A score (healthy, warn or critical) and every category below 7 of 10.
- Type it
- Claude Code
/harness-audit- Codex
$session-orchestrator:harness-audit- Cursor
/harness-audit- Pi
/harness-audit
- Touches
- Changes files appends one record to .orchestrator/metrics/audit.jsonl
- Needs
- Nothing. Arguments are ignored.
- Then
- Fix weak categories, for example with
/bootstrap --upgrade.
Source: skills/harness-audit/SKILL.md
Plan a feature
Write down what to build before it is built.
Also: /plan feature in Start here.
- When
- You have an approved PRD or design spec and want steps any agent can follow.
- You get
- A plan in docs/plans/ with the files per task, complete code and exact check commands.
- Type it
- Claude Code
/write-executable-plan- Codex
$session-orchestrator:write-executable-plan- Cursor
/write-executable-plan- Pi
/write-executable-plan
- Touches
- Changes files one plan file; rejects placeholders such as TBD or TODO
- Needs
- /bootstrap done, and an approved PRD (from /plan feature) or spec (from /brainstorm).
- Then
- Build it in
/session.
Source: skills/write-executable-plan/SKILL.md
Build
Do the work in checked rounds.
Most of the time: /session, /go, /close in Start here.
- When
- You want several full sessions to run on their own while you are away.
- You get
- Repeated start, plan, build and close loops. 10 kill-switches stop it; every run is logged in autopilot.jsonl.
- Type it
- Claude Code
/autopilot [--headless] [--max-sessions=N] [--max-hours=H] [--dry-run]- Codex
$session-orchestrator:autopilot- Cursor
/autopilot- Pi
/autopilot
- Touches
- Commits edits and commits like /go and /close; --dry-run does not execute
- Needs
- Start it at the top level, never inside a running session. --headless needs
claude -p login.
- Then
- Read autopilot.jsonl and the session summaries.
Source: skills/autopilot/SKILL.md
Maintain
Keep the code, the memory and the setup in shape.
Also: /session housekeeping for a short tidy-up pass.
- When
- The code feels tangled and you want ideas that make it easier to test and navigate.
- You get
- Proposed refactors that turn shallow modules into deep ones.
- Type it
- Claude Code
/architecture- Codex
$session-orchestrator:architecture- Cursor
/architecture- Pi
/architecture
- Touches
- Reads only proposes, edits nothing
- Needs
- Works best with CONTEXT.md and docs/adr/. Without CONTEXT.md it first asks about your domain.
- Then
- Turn a proposal into
/plan feature or a session task.
Source: skills/architecture/SKILL.md
- When
- Claude's memory notes for this repo are stale, contradictory or too long.
- You get
- A cleaned memory folder with MEMORY.md under 200 lines, or a proposal to apply later.
- Type it
- Claude Code
/memory-cleanup [--dry-run | --apply-pending]- Codex
$session-orchestrator:memory-cleanup- Cursor
/memory-cleanup- Pi
/memory-cleanup
- Touches
- Changes files asks you first edits ~/.claude/projects/<repo>/memory/; --dry-run only writes a proposal
- Needs
- An existing memory folder.
- Then
- Keep working. Repeat every 5 or more sessions.
Source: skills/memory-cleanup/SKILL.md
- When
- You want to know whether a repo meets the baseline: config, CI, tests, security, docs.
- You get
- A checklist report over 9 categories: pass, fail or warn.
- Type it
- Claude Code
/repo-audit- Codex
$session-orchestrator:repo-audit- Cursor
/repo-audit- Pi
/repo-audit
- Touches
- Changes files report only, never fixes; writes a JSON file to .orchestrator/metrics/
- Needs
- Nothing. Arguments are ignored.
- Then
- Fix failing categories in
/session housekeeping.
Source: skills/repo-audit/SKILL.md
- When
- Once a quarter, you want to find skills, agents or commands nobody uses any more.
- You get
- Every item sorted into Active, Investigate, Demote or Retire.
- Type it
- Claude Code
/sunset-review [--kind skill|agent|command] [--window-days N]- Codex
$session-orchestrator:sunset-review- Cursor
/sunset-review- Pi
/sunset-review
- Touches
- Changes files writes a report; never deletes anything
- Needs
- Usage records (default window 90 days).
- Then
- Decide on the Retire and Demote candidates yourself.
Source: skills/sunset-review/SKILL.md
Investigate
Find problems and their causes before you fix anything.
- When
- You want a systematic hunt for quality problems and tech debt.
- You get
- A list of findings you go through one by one. Confirmed ones become issues.
- Type it
- Claude Code
/discovery [all|code|infra|ui|arch|session|audit|vault|feature]- Codex
$session-orchestrator:discovery code- Cursor
/discovery code- Pi
/discovery
- Touches
- Opens issues asks you first looks without changing; opens issues only for findings you confirm
- Needs
- /bootstrap done. --since and --full cannot be combined.
- Then
- Pick the new issues up in
/session.
Source: skills/discovery/SKILL.md
- When
- A test fails, the build breaks, or something behaves unexpectedly.
- You get
- A root-cause investigation in 4 steps, written down before any fix is proposed.
- Type it
- Claude Code
/debug [bug-or-issue]- Codex
$session-orchestrator:debug "test timeout in CI"- Cursor
/debug <bug>- Pi
/debug
- Touches
- Changes files asks you first writes a debug note in .orchestrator/debug/ first
- Needs
- /bootstrap done. Without an argument it picks a likely bug and confirms it with you.
- Then
- Fix it in a session, pointing to the debug note.
Source: skills/debug/SKILL.md
Test
Check that the app works and that your tests are worth keeping.
- When
- You want to check that a web or macOS app really works for a user.
- You get
- Driven test runs with screenshots, a UX verdict, and a report matched against your open issues.
- Type it
- Claude Code
/test [scope|profile] [--dry-run]- Codex
$session-orchestrator:test smoke- Cursor
/test smoke- Pi
/test
- Touches
- Opens issues writes test artifacts and a report; --dry-run only prints the plan
- Needs
- A runnable target: Playwright for web, Peekaboo for macOS.
- Then
- Fix findings in a session or with
/debug.
Source: skills/test/SKILL.md
- When
- You wonder whether a test is worth writing, or your test suite has grown too big.
- You get
- A verdict on a new test (gate), or a smaller suite where every delete or merge carries evidence.
- Type it
- Claude Code
/test-audit [gate|audit|campaign] [scope]- Codex
$session-orchestrator:test-audit audit tests/lib- Cursor
/test-audit audit <scope>- Pi
/test-audit
- Touches
- Changes files audit and campaign change tests under a coverage guard; gate only judges
- Needs
- A test suite. A missing scope is asked once.
- Then
- Run your full tests and commit with
/close.
Source: skills/test-audit/SKILL.md
- When
- A web app runs locally and you want its UX checked the same way every time.
- You get
- Measured checks per route and screen size, then a walk through each user journey with screenshots.
- Type it
- Claude Code
/ux-grill [loopback-url | manifest-path]- Codex
$session-orchestrator:ux-grill http://127.0.0.1:3100- Cursor
/ux-grill <url>- Pi
/ux-grill
- Touches
- Opens issues asks you first writes measurements; never commits or edits product code
- Needs
- The app running on a local URL, and agent-browser installed.
- Then
- Fix the issues, then run it again to compare.
Source: skills/ux-grill/SKILL.md
Look back
See how a session or a phase really went.
Also: /plan retro for a finished phase.
- When
- You want an honest score of how well the last session followed its process.
- You get
- A score per dimension against a fixed rubric (no single total), and an optional HTML report.
- Type it
- Claude Code
/eval [--session <id>] [--no-write]- Codex
$session-orchestrator:eval- Cursor
/eval- Pi
/eval
- Touches
- Changes files appends to .orchestrator/metrics/eval.jsonl unless --no-write
- Needs
- At least one finished session.
- Then
- Run
/evolve to learn from the weak dimensions.
Source: skills/eval/SKILL.md
Learn
Turn lessons from past sessions into rules your agents read.
First: /evolve in Start here.
- When
- You have approved lessons and want the strong ones to become rules.
- You get
- Proposed rules in .claude/rules/, four at a time. Your agents read them next time.
- Type it
- Claude Code
/reconcile [--dry-run]- Codex
$session-orchestrator:reconcile- Cursor
/reconcile- Pi
/reconcile
- Touches
- Changes files asks you first writes only the rules you approve; --dry-run writes nothing
- Needs
- Stored lessons from
/evolve.
- Then
- Commit the new rules with
/close.
Source: skills/reconcile/SKILL.md
Run many repos
See all your repos at once and pick the next one.
- When
- You run many repos and want one overview of their issues, MRs and staleness.
- You get
- One dashboard file in your vault: 01-projects/_PORTFOLIO.md.
- Type it
- Claude Code
/portfolio [--dry-run] [--repo <name>]- Codex
$session-orchestrator:portfolio- Cursor
/portfolio- Pi
/portfolio
- Touches
- Changes files writes the dashboard; --dry-run prints the diff only
- Needs
gitlab-portfolio.enabled: true and a vault folder in your Session Config; glab or gh logged in.
- Then
- Pick a repo, or ask
/dispatcher.
Source: skills/portfolio/SKILL.md
- When
- One repo is done and you want to know which repo is most worth working on next.
- You get
- A ranking of free repos and one recommendation. Once you confirm, it claims that repo and hands over to /session.
- Type it
- Claude Code
/dispatcher [--dry-run] [--repo <name>]- Codex
$session-orchestrator:dispatcher- Cursor
/dispatcher- Pi
/dispatcher
- Touches
- Changes files asks you first reads only until you confirm; then it takes that repo's session lock
- Needs
- Several repos under one folder.
- Then
- Run the suggested
/session in the chosen repo.
Source: skills/dispatcher/SKILL.md
More tools
Smaller helpers for special cases.
- When
- You want a text or file reviewed by several expert or buyer personas at once.
- You get
- One verdict per persona, merged into a final verdict.
- Type it
- Claude Code
/persona-panel <target> [--mode voting|hard-gate|summary]- Codex
$session-orchestrator:persona-panel docs/landing.md- Cursor
/persona-panel <target>- Pi
/persona-panel
- Touches
- Changes files writes a result file to .orchestrator/persona-panel/; --dry-run writes nothing
- Needs
- A target inside the project, and persona files in .claude/personas/.
- Then
- Revise the target based on the verdicts.
Source: skills/persona-panel/SKILL.md
- When
- The last answer was too technical or too long.
- You get
- The same facts in plain words, in your language, with nothing dropped.
- Type it
- Claude Code
/eli5 [topic]- Codex
$session-orchestrator:eli5- Cursor
/eli5- Pi
/eli5
- Touches
- Reads only only rewrites text in the chat
- Needs
- Nothing.
- Then
- Act on the now clear answer.
Source: skills/eli5/SKILL.md
- When
- You maintain this package and want to cut a new version.
- You get
- The release steps in their required order, with the conditions that stop a release.
- Type it
- Claude Code
/release [X.Y.Z]- Codex
$session-orchestrator:release 5.14.0- Cursor
/release- Pi
/release
- Touches
- Publishes publishes to npm; that cannot be undone
- Needs
- A clean main branch level with origin, a current GitHub mirror, a CHANGELOG entry, and all checks of
release.mjs --check green.
- Then
- Verify with
npm view session-orchestrator versions.
Source: skills/release/SKILL.md
- When
- During a long session you want STATE.md, CI and events visible side by side.
- You get
- A tmux layout with 4 panes to watch. The chat stays in your terminal.
- Type it
- Claude Code
/tmux-layout [--layout debug]- Codex
$session-orchestrator:tmux-layout- Cursor
/tmux-layout- Pi
/tmux-layout
- Touches
- Reads only opens panes for watching only
- Needs
- tmux installed. This skill is opt-in (status: proposed).
- Then
- Keep working in the chat.
Source: skills/tmux-layout/SKILL.md
- When
- The templates-first check blocks a gh or glab create, but you already read the template.
- You get
- Issue or MR creation passes for the rest of this session.
- Type it
- Claude Code
/templates-ack [reason]- Codex
$session-orchestrator:templates-ack (has no effect on Codex)- Cursor
/templates-ack- Pi
/templates-ack
- Touches
- Changes files writes one acknowledgement file in .orchestrator/runtime/
- Needs
- A Claude Code session. Without one it is refused.
- Then
- Run the gh or glab create command again.
Source: commands/templates-ack.md
Happens in the background
You never type these. They run when a command needs them.
23 internal skills
Building blocks the commands above call, for example session-start for /session and wave-executor for /go.
claude-md-drift-checkconvergence-monitoringdocs-orchestratorecosystem-healthfrontmatter-guardgitlab-opsgitlab-portfoliohook-developmentmcp-buildermode-selectornpm-publishpeekaboo-driverplaywright-driverquality-gatesremote-offloadsession-endsession-plansession-starttest-runnerusing-orchestratorvault-mirrorvault-syncwave-executor
14 agent roles
The agents a wave sends out: each role does one kind of work, such as writing code, writing tests or reviewing.
analystarchitect-reviewercode-implementerdb-specialistdialectic-deriverdocs-writereval-judgeqa-strategistsecurity-reviewersession-reviewerskill-applied-judgetest-writerui-developerux-evaluator
10 hook events
Moments in Claude Code where the guards and the session records run. Codex uses six of them; Pi maps five through a bridge.
SessionStartSessionEndPreToolUsePostToolUseStopSubagentStopPostToolUseFailurePostToolBatchSubagentStartCwdChanged
2 MCP tools
Optional tools your coding tool can call. They are not slash commands.
session_config- Reads the Session Config from CLAUDE.md or AGENTS.md.
session_metrics- Reads the last five session records from .orchestrator/metrics/sessions.jsonl.