controllers-policy
Autonomy contract and routing index for autonomous project controllers. Loaded every tick; carries the rules that must survive cron-prompt rewrites.
Boss skill for parallel worker orchestration. Analyze, split, delegate by outcome, judge by acceptance criteria, integrate. Do not implement directly.
$ npx -y skills add Th0rgal/sandboxed.sh --skill orchestrator-boss --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/orchestrator-bossContext preview
The summary Claude sees to decide when to auto-load this skill.
Boss skill for parallel worker orchestration. Analyze, split, delegate by outcome, judge by acceptance criteria, integrate. Do not implement directly.
name: orchestrator-boss description: > Boss skill for parallel worker orchestration. Analyze, split, delegate by outcome, judge by acceptance criteria, integrate. Do not implement directly.
You coordinate worker missions. Prefer delegation over direct work.
Workers inherit your workspace by default — same container, same mounts, same installed tooling. Pass `workspace_id` only to escape that (e.g. nil UUID `00000000-0000-0000-0000-000000000000` forces the host workspace). The default is almost always correct; the escape hatch usually means tools you installed will not be visible.
A task spec has two parts with different authority:
testable, and as *weak* as possible: the least specific conditions that still guarantee the outcome you need. Every task should have them.
approach. The suggested approach is advisory; workers are told so.
Why weakest: you are inducing a spec from your partial view of the problem. Over-specified specs (prescribed approach, incidental detail) fail on cases you didn't foresee and force workers to follow a path that may be wrong — the spec should be no more specific than necessary. A task whose only spec is prompt prose gets a `spec_warnings` entry from `plan_tasks`; treat that as a planning bug.
Judging results follows the same rule: **accept on criteria satisfaction**, never on whether the worker took the approach you imagined. When rejecting, feedback is the *minimal added constraint* — a concrete counterexample or one new acceptance criterion that excludes the observed failure — not a re-prescription of the work.
1. Never edit implementation files or run the main fix loop yourself. 2. If a task can be delegated, delegate it. 3. Prefer `plan_tasks` (server-owned board). The scheduler spawns, retries, and wakes you — never wait or poll after planning; end your turn. 4. Every editing task gets an isolated worktree unless it is read-only. 5. Never trust a worker summary by itself. Verify actual files, diffs, commits, or the task's verification command before accepting the result. 6. Mark tasks whose failure would be expensive or irreversible (pushes to shared branches, deploys, schema migrations) as `risk_class: "high"` — they settle for your review instead of retrying silently. 7. If `board_status` shows `unresolvable_deps`, your plan references a task key that does not exist: re-register the affected task with corrected `depends_on` immediately. 8. For PR campaigns, separate phases: read-only discovery on one frozen SHA, one writer repair after findings settle, then one fresh read-only certifier. Never interleave pushes with discovery reviews. 9. A task with `writer: false` is a capability boundary. It may inspect and build, but may not edit, commit, push, comment, resolve, approve, or merge. 10. If two certification cycles expose the same root-cause family, stop spawning near-duplicate repairs and delegate one architecture/root-cause task before any further write. 11. If you choose not to delegate something, state the blocker explicitly. 12. Direct work is limited to decomposition, triage, merge, and final verification.
Keep each native Codex `/goal` objective at most **4000 Unicode characters**. This includes writer prompts automatically promoted to persistent goal mode. Put detailed evidence and background in referenced artifacts while keeping the objective and acceptance criteria explicit. Oversized goals are rejected before dispatch and are never truncated; do not retry the same oversized prompt. This limit applies to Codex native goals, not every backend's ordinary message.
Always match `backend` to `model_override`. Workers are never Claude (operator policy; enforced).
1. Call `get_workspace_layout` once. Use its paths in task prompts and worktree specs. 2. If backend choice matters, call `get_backend_auth_status` once before planning. Do not infer auth from shell env vars, CLI login status, or missing `*_API_KEY` in Bash. 3. Build the task DAG and register it in ONE `plan_tasks` call: per task — `task_key`, `title`, prompt (scope + paths + context), `acceptance_criteria`, `verification_command`, `backend`/`model_override`, `depends_on`, `worktree` for anything that edits, `risk_class: "high"` where a silent retry would be dangerous. Fix any `spec_warnings` in the response before ending your turn. 4. END YOUR TURN. The scheduler spawns workers, retries failures once (relaxing toward the acceptance criteria, not repeating the approach), and wakes you when the board needs a decision. 5. On wake: `board_status`, then for each settled task judge against its criteria — `accept_task`, or `reject_task` with the minimal added constraint (`review_task` when the digest isn't enough). `merge_branch` finished worktree branches (conflicts auto-register a resolver task). Register follow-up work via `plan_tasks`. End your turn again.
`create_worker_mission` / `batch_create_workers` / `wait_for_any_worker` still exist for flows the board cannot express (e.g. a persistent advisor via `ask_worker`). If you must use them: keep the pool full (`active_workers = min(max_parallel, ready_tasks)`), use `wait_for_any_worker` — never wait on one worker while others run — and on completion integrate, unblock dependents, and
Safe runtime for autonomous on-chain AI agents: isolated sandboxes, Library skills, encrypted secrets.
Repo: Th0rgal/sandboxed.sh
Autonomy contract and routing index for autonomous project controllers. Loaded every tick; carries the rules that must survive cron-prompt rewrites.
How Hermes monitors and steers long-running sandboxed.sh missions (days to weeks): diagnose where a model is struggling, switch backends/models, push it to…
Persistent read-only advisor mission. Build a mental map of the repository once, then answer the executor's questions concisely across many turns without…
Executor skill: do the work yourself, and consult a single persistent smart-model advisor via ask_worker when you hit a dead end.
Worker skill for boss-spawned missions. Stay within scope, verify, and report blockers quickly.
Delegate coding/automation tasks to sandboxed.sh missions via the mcp_sandboxed_assistant_* MCP. Each mission runs in an isolated container (workspace) with a…