This page provides an overview of the agent system in oh-my-opencode. Agents are specialized AI personas with distinct roles, model assignments, tool permissions, and prompts. The system includes 11 built-in agents that handle everything from main orchestration (Sisyphus) to specialized consultation (Oracle), code exploration (Explore, Librarian), planning (Prometheus, Metis, Momus), and execution (Hephaestus, Atlas).
For detailed information about specific agents, see:
The system defines 11 built-in agents, each with a specific role in the orchestration hierarchy docs/reference/features.md5 Agents are created via factories that define their identity, model fallback chains, and tool restrictions packages/omo-opencode/src/AGENTS.md57
This diagram maps the logical roles to the specific code entities and orchestration patterns used to instantiate them.
Agent Inventory Table
| Agent | Purpose | Default Model | Fallback Example |
|---|---|---|---|
| Sisyphus | Main orchestrator | claude-opus-4-7 | kimi-k2.6 → gpt-5.5 docs/reference/features.md13 |
| Hephaestus | Autonomous deep worker | gpt-5.5 | Requires GPT-capable provider docs/reference/features.md14 |
| Atlas | Todo-list orchestrator | claude-sonnet-4-6 | kimi-k2.6 → minimax-m3 docs/reference/features.md31 |
| Oracle | Read-only consultation | gpt-5.5 | gemini-3.1-pro → claude-opus-4-7 docs/reference/features.md15 |
| Librarian | External docs/code search | gpt-5.4-mini-fast | qwen3.5-plus → minimax-m3 docs/reference/features.md16 |
| Explore | Contextual grep | gpt-5.4-mini-fast | qwen3.5-plus → minimax-m3 docs/reference/features.md17 |
| Metis | Pre-planning consultant | claude-sonnet-4-6 | claude-opus-4-7 → gpt-5.5 docs/reference/features.md24 |
| Momus | Plan reviewer | gpt-5.5 | claude-opus-4-7 → gemini-3.1-pro docs/reference/features.md25 |
| Prometheus | Strategic planner | claude-opus-4-7 | gpt-5.5 → glm-5.1 docs/reference/features.md23 |
| Sisyphus-Junior | Category-spawned executor | (category-dependent) | claude-sonnet-4-6 → kimi-k2.6 docs/reference/features.md32 |
| Multimodal-Looker | Visual content analysis | gpt-5.5 | kimi-k2.6 → glm-4.6v docs/reference/features.md18 |
Sources: docs/reference/features.md11-32 docs/guide/orchestration.md82-85
Agent modes control how agents interact with model selection and where they can be invoked.
mode: "primary": Top-level session agents selected directly in UI/CLI. These respect user-selected models as the primary choice docs/guide/orchestration.md93 Used by: sisyphus, hephaestus, prometheus, atlas.mode: "subagent": Worker/consultant agents invoked via task(..., subagent_type="...") or call_omo_agent(...). These ignore UI selection in favor of optimized fallback chains docs/guide/orchestration.md94 Used by: oracle, explore, librarian, metis, momus, sisyphus-junior.This diagram bridges the conceptual modes to the actual tool-based invocation logic.
Sources: docs/guide/orchestration.md91-100 packages/omo-opencode/src/agents/sisyphus-junior/index.test.ts122-131
Agents are assigned granular tool permissions using restriction lists. This ensures safety, such as preventing read-only consultants from modifying the codebase docs/reference/features.md44-53
| Agent | Restrictions | Blocked Tools Examples |
|---|---|---|
| Oracle | Read-only | write, edit, task, call_omo_agent |
| Librarian | Read-only | write, edit, task, call_omo_agent |
| Explore | Read-only | write, edit, task, call_omo_agent |
| Multimodal-Looker | Allowlist: read only | Everything except read |
| Atlas | Cannot delegate | task, call_omo_agent |
| Momus | Read-only | write, edit, task |
Sources: docs/reference/features.md46-53 packages/omo-opencode/src/agents/sisyphus-junior/index.test.ts196-224
The system uses a dynamic prompt builder to construct system prompts at runtime. This ensures prompts are optimized for the specific model's personality and the current task context docs/guide/agent-model-matching.md73
The prompt builder adapts to the model family (Claude vs GPT) and the available tools/skills.
Key Behaviors:
isGptModel() to switch between mechanics-driven (Claude) and principle-driven (GPT) prompts docs/guide/agent-model-matching.md87-88apply_patch for file edits packages/omo-opencode/src/agents/sisyphus-junior/index.test.ts184-194thinking configurations (e.g., 32k budget) while GLM reasoning models skip this packages/omo-opencode/src/agents/sisyphus-junior/index.test.ts159-182Sources: docs/guide/agent-model-matching.md77-88 packages/omo-opencode/src/agents/sisyphus-junior/index.test.ts146-194
Model matching is based on the "Models are Developers" philosophy: matching the model's intrinsic "personality" to the agent's role docs/guide/agent-model-matching.md35-41
model in oh-my-openagent.json docs/reference/configuration.md176task(category="...") use the category's mapped model docs/guide/overview.md69Sources: docs/guide/agent-model-matching.md43-71 docs/reference/configuration.md99-124 docs/reference/features.md11-32