Features
Features
Features you’ll think should’ve always existed. Once you use them, you can’t go back.
Ralph Loop / /ulw-loop
Self-referential loop. Doesn’t stop until 100% done.
The Ralph Loop is the engine behind ultrawork. When activated:
- Agent executes a task cycle
- Checks if everything is truly complete
- If not, loops back and continues
- Repeats until every subtask is verified done
This is why ultrawork doesn’t stop halfway. The loop enforces completion.
Activate via:
ultraworkorulw— automatic Ralph Loop/ulw-loop— explicit loop activation
Todo Enforcer
Agent goes idle? System yanks it back.
Todo Enforcer monitors task progress. When an agent finishes a subtask and has nothing queued, it doesn’t stop — the system pulls the next todo item and forces the agent to continue.
Your task gets done, period.
Comment Checker
No AI slop in comments. Code reads like a senior wrote it.
Comment Checker rejects low-quality AI-generated comments:
- Obvious restatements of code (
// increment i by 1fori++) - Boilerplate JSDoc that adds no information
- Generic doc strings that could apply to any function
/init-deep
Auto-generates hierarchical AGENTS.md files throughout your project:
project/
├── AGENTS.md ← project-wide context
├── src/
│ ├── AGENTS.md ← src-specific context
│ └── components/
│ └── AGENTS.md ← component-specific context
Agents auto-read relevant context. Zero manual management. Great for both token efficiency and agent performance.
Run:
/init-deep
Session Tools
List, read, search, and analyze session history:
| Action | What it does |
|---|---|
| List | Show all sessions with metadata |
| Read | Load a previous session’s full context |
| Search | Search across session transcripts |
| Analyze | Extract patterns and insights from past work |
Session Recovery
Automatic recovery from:
- Session errors and crashes
- Context window limits (auto-truncation and resume)
- API failures (automatic retry with backoff)
Your work survives interruptions. The system picks up where it left off.
Think Mode
Enhanced reasoning capability. When enabled, the agent spends more compute on planning and analysis before responding.
Useful for:
- Complex architectural decisions
- Multi-step debugging
- Tasks requiring deep analysis
File Prompts
Load prompts from files using file:// syntax in agent configurations:
{
"agents": {
"oracle": {
"prompt_append": "file://.opencode/prompts/oracle-custom.md"
}
}
}
This lets you manage agent instructions as version-controlled files instead of inline JSON strings.
Doctor Command
Built-in diagnostics:
bunx oh-my-opencode doctor
Checks:
- Plugin registration in
opencode.json - Configuration file validity
- Model availability and API key access
- Environment and dependency status
Run this first when something doesn’t work.
Model Fallbacks
Configure fallback models so tasks don’t fail when a provider is down:
{
"fallback_models": {
"default": ["claude-opus-4-6", "kimi-k2.5"],
"hephaestus": [
"gpt-5.4",
{ "model": "claude-opus-4-6", "reasoning_effort": "high" }
]
}
}
Supports both plain model strings and per-fallback configuration objects in the same array.
Model Setup
Agent-model matching is built into the installation process. Each agent defaults to the model best suited for its role:
| Agent | Default Model | Why |
|---|---|---|
| Sisyphus | claude-opus-4-6 / kimi-k2.5 / glm-5 | Strong orchestration and planning |
| Hephaestus | gpt-5.4 | Deep autonomous reasoning |
| Prometheus | claude-opus-4-6 / kimi-k2.5 / glm-5 | Interview and planning |
| Experts | Varies by category | Category-based routing |
See the Installation Guide for model setup details.
Next Steps
- Agent System — How agents use these features
- Tools — The developer tools powering agents
- Configuration — Configure fallbacks, hooks, and more