session orchestrator v5.13.0

30 commands · Claude Code · Codex CLI · Cursor IDE · Pi

Which command helps me right now?

Pick what you want to do. Each command below says when to use it, what you get, how to type it and what happens next.

I want to …

How to type a command in your coding tool

How each coding tool runs a command
Claude CodeType /name in the chat. In headless claude -p, use the long form, for example /session-orchestrator:session deep.
Codex CLIPick the skill in the Codex chat: $session-orchestrator:name. It is not a shell command. Plain /go and /close do not work there, and Codex never starts go or close on its own.
Cursor IDEType /name. Agents run one after another.
PiType /name. Each command is a prompt template.

Start here

Six commands are enough for your first sessions. Learn these and ignore the rest until you need them.

/bootstrap Start here

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

/session Start here

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 maintain
  • feature 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

/close Start here

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 commits
  • feature one feature: PRD and issues
  • retro 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

/evolve Start here

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 lessons
  • list show stored lessons
  • dialectic 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.

/brainstorm

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

/grill

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.

/spinout

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

/harness-audit

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.

/write-executable-plan

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.

/autopilot

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.

/architecture

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

/memory-cleanup

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

/repo-audit

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

/sunset-review

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.

/discovery

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

/debug

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.

/test

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

/test-audit

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

/ux-grill

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.

/eval

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.

/reconcile

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.

/portfolio

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

/dispatcher

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.

/persona-panel

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

/eli5

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

/release

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

/tmux-layout

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

/templates-ack

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-check
  • convergence-monitoring
  • docs-orchestrator
  • ecosystem-health
  • frontmatter-guard
  • gitlab-ops
  • gitlab-portfolio
  • hook-development
  • mcp-builder
  • mode-selector
  • npm-publish
  • peekaboo-driver
  • playwright-driver
  • quality-gates
  • remote-offload
  • session-end
  • session-plan
  • session-start
  • test-runner
  • using-orchestrator
  • vault-mirror
  • vault-sync
  • wave-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.

  • analyst
  • architect-reviewer
  • code-implementer
  • db-specialist
  • dialectic-deriver
  • docs-writer
  • eval-judge
  • qa-strategist
  • security-reviewer
  • session-reviewer
  • skill-applied-judge
  • test-writer
  • ui-developer
  • ux-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.

  • SessionStart
  • SessionEnd
  • PreToolUse
  • PostToolUse
  • Stop
  • SubagentStop
  • PostToolUseFailure
  • PostToolBatch
  • SubagentStart
  • CwdChanged
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.