2026-02-17 11:17:01 +09:00
# src/agents/ — 11 Agent Definitions
2025-12-28 17:40:51 +09:00
2026-03-06 17:59:05 +09:00
**Generated: ** 2026-03-06
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-03-07 19:23:08 +09:00
| **Sisyphus ** | claude-opus-4-6 max | 0.1 | all | k2p5 → kimi-k2.5 → gpt-5.4 medium → glm-5 → big-pickle | Main orchestrator, plans + delegates |
2026-03-07 02:33:32 +09:00
| **Hephaestus ** | gpt-5.3-codex medium | 0.1 | all | gpt-5.4 medium (copilot) | Autonomous deep worker |
| **Oracle ** | gpt-5.4 high | 0.1 | subagent | gemini-3.1-pro high → claude-opus-4-6 max | Read-only consultation |
2026-03-06 17:59:05 +09:00
| **Librarian ** | gemini-3-flash | 0.1 | subagent | minimax-m2.5-free → big-pickle | External docs/code search |
| **Explore ** | grok-code-fast-1 | 0.1 | subagent | minimax-m2.5-free → claude-haiku-4-5 → gpt-5-nano | Contextual grep |
| **Multimodal-Looker ** | gpt-5.3-codex medium | 0.1 | subagent | k2p5 → gemini-3-flash → glm-4.6v → gpt-5-nano | PDF/image analysis |
2026-03-07 02:33:32 +09:00
| **Metis ** | claude-opus-4-6 max | **0.3 ** | subagent | gpt-5.4 high → gemini-3.1-pro high | Pre-planning consultant |
2026-03-06 17:59:05 +09:00
| **Momus ** | gpt-5.4 xhigh | 0.1 | subagent | claude-opus-4-6 max → gemini-3.1-pro high | Plan reviewer |
| **Atlas ** | claude-sonnet-4-6 | 0.1 | primary | gpt-5.4 medium | Todo-list orchestrator |
| **Prometheus ** | claude-opus-4-6 max | 0.1 | — | gpt-5.4 high → gemini-3.1-pro | 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
└── 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)