Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Sisyphus
The main coordinator agent for the Coyote coding ecosystem, providing a powerful CLI interface for code generation and project management similar to OpenCode, ClaudeCode, Codex, or Gemini CLI.
Inspired by the Sisyphus and Oracle agents of OpenCode.
Sisyphus acts as the primary entry point. Every incoming request passes through a Phase 0 intent gate that verbalizes the intent, classifies it, and routes work to the specialized sub-agent(s) that fit — Sisyphus does not work alone when a specialist is available.
Architecture
flowchart TD
user([User request]) --> sisyphus["Sisyphus<br/>orchestrator"]
sisyphus --> classify{"Phase 0<br/>Intent gate"}
classify -->|"Trivial<br/>(single file, obvious)"| direct["Direct tools<br/>fs_read / fs_patch / execute_command"]
classify -->|"Find in code<br/>How does Y work?"| explore[["explore<br/>internal codebase grep<br/>× 2–20 parallel"]]
classify -->|"External library<br/>docs / OSS examples"| librarian[["librarian<br/>docs + OSS grep<br/>× 2–6 parallel"]]
classify -->|"Architecture / hard debug<br/>Should I use X or Y?"| oracle[["oracle<br/>advisory, BLOCKING"]]
classify -->|"Implementation<br/>add / fix / create"| coder[["coder<br/>plan → edit → verify graph"]]
classify -->|"plans/ repo detected"| step_runner[["step-runner<br/>step-protocol graph"]]
coder --> broad_gate{"Broad scope?<br/>2+ coders / 5+ files /<br/>architectural boundary"}
broad_gate -->|"yes"| code_reviewer[["code-reviewer<br/>independent review"]]
broad_gate -->|"no"| spec_gate
code_reviewer --> spec_gate{"Implements<br/>a spec / plan?"}
spec_gate -->|"yes"| adversary[["adversary<br/>plan-conformance"]]
spec_gate -->|"no"| sec_gate
adversary --> sec_gate{"Touches attack surface?<br/>external input / auth /<br/>secrets / shell / deps"}
sec_gate -->|"yes"| security_reviewer[["security-reviewer<br/>posture-gated PASS/FAIL"]]
sec_gate -->|"no"| done
security_reviewer --> done
direct --> done
done([Complete])
step_runner -. "internally spawns" .-> coder
step_runner -. "internally spawns" .-> code_reviewer
Spawnable sub-agents (from config.yaml):
- explore — internal codebase grep. Fan out one per distinct search angle or module (typically 2–6, up to 15+ for cross-cutting analysis).
- librarian — external grep for official docs and production OSS examples. Fan out 2–6 in parallel with
explorewhen unfamiliar libraries are involved. - oracle — advisory reasoning for architecture questions, hard debugging (after 2+ failed attempts), design review, and plan review. Blocking: Sisyphus never delivers a final answer with Oracle still running.
- coder — graph agent that plans, implements, and verifies (build + tests) in a bounded fix-loop.
- code-reviewer — independent post-implementation review; fires when the change is broad (2+ coders, 5+ files) or crosses architectural boundaries.
- adversary — plan-conformance review; fires whenever the change implements a written spec, plan step, or acceptance-criteria list. Orthogonal to
code-reviewer— both can run. - security-reviewer — security analysis; fires when the change touches attack surface (external input, auth/secrets, shell/file-path sinks, new dependencies). Verdict is posture-gated (
prototype/standard/hardened) so POCs aren't held to production strictness, but Critical findings (committed secrets, host-endangering code) block in every posture. Orthogonal to both other reviewers — all three can run. - step-runner — graph agent that executes one step of a phased plan repo. Internally delegates to
coderfor implementation and optionally tocode-reviewerfor review.
Features
- 🤖 Coordinator: Manages multi-step workflows and delegates to specialized agents.
- 💻 CLI Coding: Provides a natural language interface for writing and editing code.
- 🔄 Task Management: Tracks progress and context across complex operations.
- 🛠️ Tool Integration: Seamlessly uses system tools for building, testing, and file manipulation.
- 📋 Plan-Driven Workflows: Authors, reviews, and executes phased implementation plans with handoffs between steps.
Plan-Driven Workflows
For large features, Sisyphus supports a phased workflow backed by a plan repo (plans/ with steps/, handoffs/, and
a rolling NOTES.md):
- Author — after converging on a solution with you, Sisyphus loads the
plan-authoringskill and writes a high-level plan plus one grounded, self-contained implementation plan per step. - Review — Oracle critiques the plans with the
plan-reviewskill (ground-truth checks against the codebase, verifiability, dependency ordering) and returns aPLAN_REVIEW: OKAY/REJECTverdict. Rejected plans are fixed before any code is written. - Execute — one step at a time via the
step-implementationandhandoff-protocolskills: read the previous handoff, staleness-check the plan, implement (delegating to Coder), verify, review, write an evidence-backed handoff, and stop for your approval before the next step begins.
Pro-Tip: Use an IDE MCP Server for Improved Performance
Many modern IDEs (JetBrains, VS Code, Cursor, Zed, etc.) expose MCP servers that let LLMs use IDE tools directly. Using
one dramatically improves the performance of coding agents. If you have one, add it to your coyote config (see the
MCP Server docs) and reference it in this agent's mcp_servers: list:
# ...
mcp_servers:
- your-ide-mcp-server
global_tools:
- fs_read.sh
- fs_grep.sh
- fs_glob.sh
- fs_ls.sh
- web_search_coyote.sh
- execute_command.sh
# ...