2026-02-17 11:17:01 +09:00
# src/agents/ — 11 Agent Definitions
2025-12-28 17:40:51 +09:00
2026-04-18 01:21:20 +09:00
**Generated: ** 2026-04-18
2026-02-01 19:26:57 +09:00
2026-02-17 11:17:01 +09:00
## OVERVIEW
2025-12-28 17:40:51 +09:00
2026-02-17 11:17:01 +09:00
Agent factories following `createXXXAgent(model) → AgentConfig` pattern. Each has static `mode` property. Built via `buildAgent()` compositing factory + categories + skills.
2025-12-28 17:40:51 +09:00
2026-02-17 11:17:01 +09:00
## AGENT INVENTORY
2026-01-17 22:01:56 +09:00
2026-02-17 11:17:01 +09:00
| Agent | Model | Temp | Mode | Fallback Chain | Purpose |
|-------|-------|------|------|----------------|---------|
2026-04-17 14:52:19 +09:00
| **Sisyphus ** | claude-opus-4-7 max | 0.1 | all | k2p5 -> kimi-k2.5 -> gpt-5.4 medium -> glm-5 -> big-pickle | Main orchestrator, plans + delegates |
2026-03-26 19:25:26 +09:00
| **Hephaestus ** | gpt-5.4 medium | 0.1 | all | — | Autonomous deep worker |
2026-04-17 14:52:19 +09:00
| **Oracle ** | gpt-5.4 high | 0.1 | subagent | gemini-3.1-pro high -> claude-opus-4-7 max | Read-only consultation |
2026-04-21 13:30:11 +09:00
| **Librarian ** | gpt-5.4-mini-fast | 0.1 | subagent | minimax-m2.7-highspeed -> minimax-m2.7 -> claude-haiku-4-5 -> gpt-5.4-nano | External docs/code search |
| **Explore ** | gpt-5.4-mini-fast | 0.1 | subagent | minimax-m2.7-highspeed -> minimax-m2.7 -> claude-haiku-4-5 -> gpt-5.4-nano | Contextual grep |
2026-04-05 14:04:42 +09:00
| **Multimodal-Looker ** | gpt-5.3-codex medium | 0.1 | subagent | k2p5 -> gemini-3-flash -> glm-4.6v -> gpt-5-nano | PDF/image analysis |
2026-04-17 14:52:19 +09:00
| **Metis ** | claude-opus-4-7 max | **0.3 ** | subagent | gpt-5.4 high -> gemini-3.1-pro high | Pre-planning consultant |
| **Momus ** | gpt-5.4 xhigh | 0.1 | subagent | claude-opus-4-7 max -> gemini-3.1-pro high | Plan reviewer |
2026-03-06 17:59:05 +09:00
| **Atlas ** | claude-sonnet-4-6 | 0.1 | primary | gpt-5.4 medium | Todo-list orchestrator |
2026-04-17 14:52:19 +09:00
| **Prometheus ** | claude-opus-4-7 max | 0.1 | — | internal planner | Strategic planner (internal) |
2026-02-18 15:51:24 +09:00
| **Sisyphus-Junior ** | claude-sonnet-4-6 | 0.1 | all | user-configurable | Category-spawned executor |
2025-12-28 17:40:51 +09:00
2026-01-17 22:01:56 +09:00
## TOOL RESTRICTIONS
2026-02-17 11:17:01 +09:00
| Agent | Denied Tools |
|-------|-------------|
| Oracle | write, edit, task, call_omo_agent |
| Librarian | write, edit, task, call_omo_agent |
| Explore | write, edit, task, call_omo_agent |
| Multimodal-Looker | ALL except read |
| Atlas | task, call_omo_agent |
| Momus | write, edit, task |
2026-02-10 14:53:39 +09:00
2026-02-17 11:17:01 +09:00
## STRUCTURE
2026-02-10 14:53:39 +09:00
2026-02-17 11:17:01 +09:00
```
agents/
├── sisyphus.ts # 559 LOC, main orchestrator
├── hephaestus.ts # 507 LOC, autonomous worker
├── oracle.ts # Read-only consultant
├── librarian.ts # External search
├── explore.ts # Codebase grep
├── multimodal-looker.ts # Vision/PDF
├── metis.ts # Pre-planning
├── momus.ts # Plan review
├── atlas/agent.ts # Todo orchestrator
├── types.ts # AgentFactory, AgentMode
├── agent-builder.ts # buildAgent() composition
├── utils.ts # Agent utilities
├── builtin-agents.ts # createBuiltinAgents() registry
2026-04-05 14:04:42 +09:00
├── dynamic-agent-prompt-builder.ts # Dynamic prompt builder system
├── dynamic-agent-core-sections.ts # Core prompt sections
├── dynamic-agent-policy-sections.ts # Policy prompt sections
├── dynamic-agent-tool-categorization.ts # Tool categorization
├── dynamic-agent-category-skills-guide.ts # Category skills guide
├── custom-agent-summaries.ts # Custom agent summaries
├── env-context.ts # Environment context
2026-02-17 11:17:01 +09:00
└── builtin-agents/ # maybeCreateXXXConfig conditional factories
├── sisyphus-agent.ts
├── hephaestus-agent.ts
├── atlas-agent.ts
├── general-agents.ts # collectPendingBuiltinAgents
└── available-skills.ts
```
2026-02-16 15:26:53 +09:00
2026-02-17 11:17:01 +09:00
## FACTORY PATTERN
2026-02-16 15:26:53 +09:00
2026-02-17 11:17:01 +09:00
``` typescript
const createXXXAgent : AgentFactory = ( model : string ) = > ( {
instructions : "..." ,
model ,
temperature : 0.1 ,
// ...config
} )
createXXXAgent . mode = "subagent" // or "primary" or "all"
```
2026-02-10 14:53:39 +09:00
2026-03-06 17:59:05 +09:00
Model resolution: 4-step: override → category-default → provider-fallback → system-default. Defined in `shared/model-requirements.ts` .
2026-02-10 14:53:39 +09:00
2026-02-17 11:17:01 +09:00
## MODES
2026-02-10 14:53:39 +09:00
2026-02-17 11:17:01 +09:00
- **primary**: Respects UI-selected model, uses fallback chain
- **subagent**: Uses own fallback chain, ignores UI selection
- **all**: Available in both contexts (Sisyphus-Junior)