Sisyphus and Core Agents
Relevant source files
The following files were used as context for generating this wiki page:
Sisyphus is the primary orchestrator and powerful AI agent within the OhMyOpenCode ecosystem. Its purpose is to act as a senior-level engineer capable of parsing implicit requirements, managing complex task workflows, and delegating specialized work to a network of core subagents. Sisyphus emphasizes parallel execution, rigorous verification, and disciplined task tracking to ensure code delivery matches high professional standards without "AI slop." Sources: src/agents/sisyphus.ts:74-95, src/agents/sisyphus/default.ts:167-185
The core agent system operates on a tiered hierarchy where Prometheus handles strategic planning, Sisyphus or Atlas orchestrates execution, and specialized subagents like Hephaestus (deep work), Oracle (advisory), and Momus (review) fulfill specific functional roles. This division of labor ensures that high-level planning is never compromised by implementation details and that every piece of code undergoes multiple layers of automated and expert-level review. Sources: src/agents/prometheus/gpt.ts:24-33, src/agents/sisyphus.ts:97-105
Core Agent Identity and Roles
The system is defined by distinct agent identities, each with strict operational boundaries.
| Agent | Primary Role | Core Philosophy |
|---|---|---|
| Sisyphus | Orchestrator | Senior Staff Engineer; delegates to specialists; orchestrates parallel execution. |
| Prometheus | Planner | Strategic Consultant; strictly forbidden from writing code; produces "decision-complete" plans. |
| Hephaestus | Deep Worker | Autonomous engineer; solves problems creatively; focuses on completion and verification. |
| Oracle | Advisor | High-IQ reasoning specialist; handles complex architecture and hard debugging. |
| Momus | Critic | Blocker-finder; verifies plan executability and reference validity with a ruthless eye. |
Sources: src/agents/sisyphus.ts:77-85, src/agents/prometheus/gpt.ts:24-33, src/agents/hephaestus/gpt.ts:98-102, src/agents/oracle.ts:13-33, src/agents/momus.ts:15-28
Sisyphus Execution Workflow
Sisyphus follows a rigorous multi-phase loop to transform user requests into verified code. This process emphasizes an "Intent Gate" to ensure the agent does not start implementation unless explicitly requested. Sources: src/agents/sisyphus.ts:107-111, src/agents/sisyphus/default.ts:187-190
Phase 0: Intent Gate
Before taking any action, Sisyphus verbalizes the detected intent (research, implementation, investigation, etc.) and classifies the request type. It employs a "Turn-Local Intent Reset" to prevent implementation mode from carrying over from previous conversational turns unless the current message explicitly demands it. Sources: src/agents/sisyphus.ts:113-146, src/agents/sisyphus/default.ts:192-225
Phase 1: Codebase Assessment
For open-ended tasks, the agent assesses the codebase maturity. It classifies the project state as Disciplined, Transitional, Legacy/Chaotic, or Greenfield. This classification dictates whether the agent strictly follows existing patterns or proposes new conventions. Sources: src/agents/sisyphus.ts:185-207, src/agents/sisyphus/default.ts:265-287
Phase 2: Parallel Research and Implementation
Sisyphus parallelizes research using explore (internal code) and librarian (external docs) agents. Implementation is managed through a strict delegation protocol or direct execution for trivial tasks. Sources: src/agents/sisyphus.ts:209-245, src/agents/sisyphus/default.ts:289-325
The diagram shows the standard lifecycle of a task handled by Sisyphus, from initial intent classification to final verification. Sources: src/agents/sisyphus.ts:107-393, src/agents/sisyphus/default.ts:187-474
Core Specialized Agents
Prometheus (Strategic Planner)
Prometheus is a dedicated planner that interprets requests as needs for work plans rather than direct actions. It follows a "Decision Complete" principle, ensuring implementers have zero judgment calls to make.
- Allowed: Writing to
.sisyphus/plans/*.mdand.sisyphus/drafts/*.md. - Forbidden: Writing any code files (.ts, .py, etc.) or executing tasks.
Sources: src/agents/prometheus/gpt.ts:24-60
Oracle (Technical Advisor)
Oracle is a read-only consultation agent used for high-IQ reasoning. It is invoked when Sisyphus encounters architectural tradeoffs, complex debugging scenarios (2+ failed attempts), or unfamiliar patterns. It operates under a "pragmatic minimalism" framework, biasing toward the simplest valid solution. Sources: src/agents/oracle.ts:40-66
Momus (Plan Reviewer)
Momus acts as a practical filter for work plans generated by Prometheus. It verifies that file references exist and that tasks have executable QA scenarios. Its philosophy is to be a "blocker-finder" rather than a perfectionist, favoring approval unless a true blocking issue is identified. Sources: src/agents/momus.ts:32-55
This sequence demonstrates the typical interaction between the specialized planning and execution agents. Sources: src/agents/sisyphus.ts:395-400, src/agents/prometheus/gpt.ts:193-215, src/agents/momus.ts:114-125
Task and Todo Discipline
Sisyphus and core agents use a mandatory task tracking system (either TodoWrite or TaskCreate) to provide transparency and recovery hooks.
- Mandatory Creation: Any task with 2+ steps or uncertain scope requires an atomic breakdown before work begins.
- Real-time Updates: Steps must be marked
in_progressone at a time andcompletedimmediately upon finishing. - Anti-Patterns: Batch-completing tasks or finishing work without updating the task status is considered a blocking failure.
Sources: src/agents/sisyphus/default.ts:11-55, src/agents/hephaestus/gpt.ts:33-65
Technical Constraints and Safety
The agents operate under a set of "Hard Blocks" and "Anti-Patterns" to ensure system stability and code quality.
- Evidence Requirement: No task is considered complete without evidence (LSP diagnostics, build exit codes, or test results). Sources: src/agents/sisyphus.ts:365-375
- Failure Recovery: After 3 consecutive failed attempts at a fix, agents must stop, revert to the last working state, and consult the Oracle agent. Sources: src/agents/sisyphus.ts:377-393, src/agents/hephaestus/gpt.ts:311-321
- Tool Usage: Agents must prefer tools over internal knowledge. Parallelization of tool calls (multiple file reads, concurrent
exploreagents) is the default behavior to reduce latency. Sources: src/agents/sisyphus.ts:223-233, src/agents/hephaestus/gpt.ts:182-192
The Sisyphus and Core Agent system provides a robust, self-verifying architecture for autonomous software engineering, shifting the role of the AI from a simple code generator to a structured, multi-agent engineering team.