maestro-bundle
Route work into the right maestro tier and drive the SPEC/NOTES/VERIFY bundle lifecycle - open, resume, close, recall.
Drive a pre-known multi-agent path as a maestro graph - run it by name or from a file you just wrote, pull each agent node with graph next, spawn it as a sub-agent under its maestro-<profile> definition, hand the result back with graph result, repeat until the verdict. Author a
$ npx -y skills add ReinaMacCredy/maestro --skill maestro-graph --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/maestro-graphContext preview
The summary Claude sees to decide when to auto-load this skill.
Drive a pre-known multi-agent path as a maestro graph - run it by name or from a file you just wrote, pull each agent node with graph next, spawn it as a sub-agent under its maestro-<profile> definition, hand the result back with graph result, repeat until the verdict. Author a
name: maestro-graph description: Drive a pre-known multi-agent path as a maestro graph - run it by name or from a file you just wrote, pull each agent node with graph next, spawn it as a sub-agent under its maestro-<profile> definition, hand the result back with graph result, repeat until the verdict. Author a new graph from the reference when no preset fits. review-date: 2026-11-28
<!-- maestro-skill-version: dev -->
Use when a task is a pre-known path with several agent steps: a review gate, a research sweep, a judge panel, a fix loop. The path is one markdown graph file; maestro holds the run, executes the deterministic nodes itself and hands you only the agent and human nodes to spawn. maestro never starts a model (Hub d78), so the loop below is yours on every harness. Design, diagnosis and the SLP seat protocol stay outside graphs.
(`<repo>/.maestro/graphs`), the room (`~/maestro/graphs`) and the shipped set; a nearer file shadows a farther one by name. `maestro graph show <name>` prints one.
range>` and `tier=light|full`; `fix-loop` takes `scope=<what to fix>` and `check=<command that must pass>` and drives a writing fixer for at most three rounds; `council` takes `brief=<neutral brief>` and `tier=lens|debate|debate-with-proof|high-risk` and runs the maestro-council protocol with you (the Lead) answering the draft and verdict nodes.
[references/authoring.md](references/authoring.md) and run it with `--file <path>`. Keep a good one by copying the file into a graphs directory (Hub d100; there is no save verb).
maestro graph run <name>|--file <path> [key=value ...] [--limit k=v] --json > run.json
loop:
envelope = read run.json (or maestro graph next <run> --json > run.json)
if envelope.done: stop; the verdict, LIMIT stop or failed node is in it
for each node in envelope.nodes (all at once, they are independent):
kind human -> stop and ask the user the prompt; feed the answer back
kind agent -> spawn a sub-agent with the node's profile and brief
for each returned sub-agent:
maestro graph result <run> <ref> --file <path>|--text "<result>"
maestro graph next <run> --jsonout of it (`jq`, or one `python3 -c` line); never let it land inline. An envelope carrying several node briefs and their schemas routinely passes a harness output cap, and a truncated envelope costs a second read of the same bytes before the loop can continue.
depend on one of them appear on a later `next`, as soon as their own inputs are in: only a `join` waits for a whole fan-out (Hub d82).
sub-agent's answer to a file and pass `--file`; maestro extracts the first JSON block from prose or a fence. `PARSE_FAILED` with `retry: true` means re-ask that sub-agent for JSON matching the schema carried in the error (two retries); the third failure marks the node failed and the run ends with `failed`.
`fanout`, Hub d84) with `partial` state; rerun with `--limit <k>=<N>` when the cap, not the graph, was wrong.
error names, then run the `maestro graph trust` command it gives and `graph next` again. Home and shipped graphs never ask.
The profile is a definition `maestro install` rendered for both harnesses (Hub d83): `~/.claude/agents/maestro-<profile>.md` and `~/.codex/agents/maestro-<profile>.toml`.
`model: "opus"`, and the node's `brief` verbatim as the task. A profile whose `harness` is codex (challenger, verifier, auditor) opens as a Codex pane with `--profile maestro-<profile>` instead; the Agent tool rejects its model.
`brief` verbatim.
Send the `brief`, never the bare `prompt`: the brief is the prompt plus, when a schema is declared, one sentence naming the required keys and any optional keys, then the schema as a JSON block (Hub d843), so the agent answers in the declared shape instead of its harness habit. It already carries the run state the graph author placed in it. Add only what the harness needs to return the answer (for example, "write your JSON answer to <path>"). Never merge two nodes into one spawn and never run a function node's command yourself; maestro already did.
`graph run` reports `executor` in every envelope (Hub d88): `subagent` from a plain session, `claude -p`, `codex exec` or a desktop app; `team` when the driver is a role pane of a running SLP team. Under `team` the Lead is the driver and each agent node is one Peer work item (Hub d89); the Lead is never a node and maestro still spawns nothing.
Team Supervisor: maestro work add "run graph <name> <key=value ...>" \
--acceptance "the run's verdict"
Lead: maestro work take <item>
maestro graph run <name> [key=value ...] --json
loop:
envelope = the JSON just returned (or maestro graph next <run> --json)
if envelope.done: maestro work return <item> "<verdict JSON>"; stop
for each node in envelope.nodes without a work field:
kind human -> answer it yourself: maestro grapMaestro is a local-first coordination system for human and agent work. It keeps durable work, decisions, sessions, evidence, dispatches, and handbacks in each repository's shared Git root.
Repo: ReinaMacCredy/maestro
Route work into the right maestro tier and drive the SPEC/NOTES/VERIFY bundle lifecycle - open, resume, close, recall.
Decision support and grounded teaching for the human. Invoke when the user signals a message did not land ("wait, what?", "I don't understand", "explain it…
Lead-only council for a hard-to-reverse fork - a neutral brief, sealed independent seats, one premise verifier on unanimity, bounded verifiers, one…
Resolve material unknowns blocking the next authorized slice, using research, grilling, prototypes, models, or wayfinding. Record durable decisions and apply…
Diagnosis-only investigation of a failure with unknown cause - reproduce, localize, reduce, deliver root cause with evidence. Read-only; an explicit fix…
Answer an evidence question without touching production code - research external facts against primary sources, build or iterate a disposable prototype (its…