Start a saved org via the Org Runtime v2 daemon (monomind org run/serve). Migrates v1-shaped configs first. The legacy prompt-orchestrated path lives in runorgv1.
Scanned 9/10/2026
Install to Claude Code
npx -y skills add monoes/monomind --skill mastermind-runorg --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Mastermind Runorg?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/monoes-mastermind-runorg-6c02b862)More formats (shields.io, HTML) on the badges page.
---
name: mastermind-runorg
description: Start a saved org via the Org Runtime v2 daemon (monomind org run/serve). Migrates v1-shaped configs first. The legacy prompt-orchestrated path lives in runorgv1.
type: domain-skill
default_mode: auto
---
# Mastermind Runorg (v2)
Starts orgs exclusively through the v2 SDK daemon. Every role becomes a live
SDK session; events reach the dashboard through the daemon's own forwarder —
no curl emissions, no delivery gaps.
## Steps
1. **Resolve the org.** `org_name` from params. List available orgs when missing:
`monomind org list`.
2. **Shape-detect v1.** Do NOT rely on `monomind org validate` to catch v1
configs — a v1-shaped config with no structural violations (unique role
ids, one root, resolvable `reports_to`, parseable schedule) *passes*
schema validation even though it's still v1. Detect v1-ness directly:
`jq 'has("topology") or has("board_id") or has("loop") or ([.roles[]? | has("agent_type")] | any)' .monomind/orgs/<name>.json`
- `true` → step 3 (migrate first).
- `false` → step 4 (validate as-is).
3. **Migrate (v1 configs).** `monomind org migrate <name>` — original is kept
as `<name>.v1.json`. In confirm mode ask first; in auto mode migrate and
state it. If migration fails, stop and surface the error — do NOT fall back
to runorgv1 silently.
4. **Validate.** Run `monomind org validate <name>` on the config (post-migration
if step 3 ran).
- Valid → step 5.
- Invalid → surface the validator output and stop.
5. **Estimate scope and budget.** Before starting, read the numbers already sitting in
the org config and print a short summary — this is a read-and-summarize step, not a
spend prediction, so the user sees scope and the configured ceiling before any agent-hour
is spent, not only after the run stops on a budget:
```bash
orgFile=".monomind/orgs/<name>.json"
roleCount=$(jq '.roles | length' "$orgFile")
maxConcurrent=$(jq -r '.run_config.max_concurrent_agents // 4' "$orgFile")
orgBudgetTokens=$(jq -r '.run_config.budget_tokens // 1000000' "$orgFile")
roleBudgets=$(jq -r '.roles[] | " - \(.id): budget_tokens=\(.budget_tokens // "org-default split"), budget_usd=\(.budget_usd // "none")"' "$orgFile")
echo "About to run ${roleCount} role(s) (max ${maxConcurrent} concurrent)."
echo "Org-wide token budget ceiling: ${orgBudgetTokens}"
echo "Per-role overrides:"
echo "${roleBudgets}"
```
Print this summary unconditionally (auto and confirm mode alike) before step 6.
6. **Start.**
- One-shot (no `schedule` in config): run in background bash:
`monomind org run <name> --task "<optional task from params>"`
- Scheduled (`schedule` set): ensure the daemon host is up:
`monomind org serve` (background) — it picks up every scheduled org.
7. **Confirm liveness.** Within ~15 s: `monomind org status <name>` shows
`running`. Surface the dashboard link (`<CTRL_URL>/orgs`) and
`monomind org logs <name> --follow` as the tail command.
8. **Never** spawn a boss Task agent, create monotask boards, or emit
dashboard events manually. If the user explicitly asks for the legacy
behavior, direct them to `/mastermind:runorgv1` (deprecated).
The org runtime does not read `<org>-issues.json`. Work is driven by the org
definition's roles and goal plus an optional `--task` string.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!