OpenCode port of oh-my-claudecode - Multi-agent orchestration plugin (omco)
npm install oh-my-claudecode-opencode> 🔄 OpenCode port of oh-my-claudecode v3.3.6
oh-my-claudecode-opencode (omco) - Multi-agent orchestration plugin that brings oh-my-claudecode features to OpenCode.
Like Sisyphus condemned to roll his boulder eternally, this plugin ensures your AI assistant never stops until the task is complete.
---
Just tell your AI assistant:
> "Install oh-my-claudecode-opencode by following these instructions: https://raw.githubusercontent.com/devswha/oh-my-claudecode-opencode/main/docs/guide/installation.md"
That's it. The AI will handle the rest.
``bash`
cd ~/.config/opencode && npm install oh-my-claudecode-opencode@latest && cat > opencode.json << 'EOF'
{
"plugin": ["oh-my-claudecode-opencode"]
}
EOF
echo "✅ Restart OpenCode to activate OMCO"
Once installed, just include these keywords in your prompts:
| Keyword | Effect |
|---------|--------|
| ultrawork or ulw | Maximum intensity parallel execution |ralph
| | Persistence mode - won't stop until complete |autopilot
| | Full autonomous execution |
Example: ulw implement user authentication with tests
---
This project ports the powerful features of oh-my-claudecode v3.3.6 (a Claude Code plugin) to the OpenCode platform.
| Original (Claude Code) | This Port (OpenCode) |
|------------------------|----------------------|
| oh-my-claudecode | oh-my-claudecode-opencode (omco) |
| Shell hooks + Node.js bridge | Native TypeScript plugin API |
| Stop hook (proactive blocking) | session.idle event (reactive) |
tags)
- ✅ Background agent orchestration
- ✅ Session state persistence---
Features
$3
- TODO Continuation Enforcer - Automatically reminds the assistant to complete pending tasks
- Ultrawork Mode - Maximum intensity parallel execution triggered by keywords
- Ralph Loop - Self-referential loop that continues until verified completion
- Background Agents - Run explore/librarian agents in parallel without blocking
- Agent Usage Reminder - Encourages using specialized agents over direct tool calls
$3
> Note: New agent names are available with backward compatibility for legacy names.
| Agent (New) | Alias (Legacy) | Model | Purpose |
|-------------|----------------|-------|---------|
|
architect | oracle | Opus | Strategic architecture & debugging advisor (READ-ONLY) |
| architect-medium | oracle-medium | Sonnet | Balanced architectural analysis (READ-ONLY) |
| architect-low | oracle-low | Haiku | Fast architectural checks (READ-ONLY) |
| researcher | librarian | Sonnet | Documentation & reference researcher |
| researcher-low | librarian-low | Haiku | Quick documentation lookup |
| explore | - | Haiku | Fast codebase search |
| explore-medium | - | Sonnet | Deeper codebase analysis |
| designer | frontend-engineer | Sonnet | UI/UX designer-developer |
| designer-low | frontend-engineer-low | Haiku | Fast UI changes |
| designer-high | frontend-engineer-high | Opus | Complex UI architecture |
| writer | document-writer | Haiku | Technical documentation |
| executor | sisyphus-junior | Sonnet | Focused task executor |
| executor-low | sisyphus-junior-low | Haiku | Simple task execution |
| executor-high | sisyphus-junior-high | Opus | Complex multi-file tasks |
| planner | prometheus | Opus | Strategic planning |
| analyst | metis | Opus | Pre-planning analysis |
| critic | momus | Opus | Plan review |
| vision | multimodal-looker | Sonnet | Visual/media analysis |
| qa-tester | - | Sonnet | Interactive CLI testing |Installation
> 💡 Recommended: Let your AI handle it! See Quick Install above.
$3
`bash
Install in OpenCode config directory
cd ~/.config/opencode
npm install oh-my-claudecode-opencodeRegister plugin in opencode.json
cat > opencode.json << 'EOF'
{
"plugin": ["oh-my-claudecode-opencode"]
}
EOFRestart OpenCode to activate
`For detailed instructions, see Installation Guide.
Usage
$3
Trigger maximum performance mode by including keywords in your prompt:
`
ultrawork: Implement the authentication system with tests
`or
`
ulw refactor the database layer
`Keywords:
ultrawork, ulw, uw$3
| Command | Description |
|---------|-------------|
|
/ultrawork | Maximum intensity parallel execution |
| /ralph-loop | Completion guarantee loop |
| /ultrawork-ralph | Combined max intensity + completion guarantee |
| /ultraqa | QA cycling workflow |
| /ralplan | Iterative planning with Planner/Architect/Critic |
| /plan | Start planning session |
| /review | Review plan with Critic |
| /doctor | Diagnose installation issues |
| /cancel-ralph | Cancel Ralph Loop |
| /cancel-ultraqa | Cancel UltraQA |$3
Start a self-referential loop that continues until the task is verified complete:
`
/ralph-loop "Implement user registration with email verification"
`Cancel with:
`
/cancel-ralph
`$3
The plugin provides tools for running agents in the background:
`typescript
// Run explore agent in background
background_task(agent="explore", prompt="Find all authentication-related files")// Run librarian for documentation research
background_task(agent="librarian", prompt="Find JWT best practices documentation")
// Get results when ready
background_output(task_id="...")
// Cancel all background tasks
background_cancel(all=true)
`$3
`typescript
// Synchronous call
call_omco_agent(
subagent_type="oracle",
prompt="Review this architecture decision...",
run_in_background=false
)// Async call
call_omco_agent(
subagent_type="explore",
prompt="Find all React components",
run_in_background=true
)
`Configuration
Create
.opencode/omco.json in your project (see assets/omco.example.json for full example):`json
{
"$schema": "node_modules/oh-my-claudecode-opencode/assets/omco.schema.json", "agents": {
"architect": { "tier": "opus", "enabled": true },
"explore": { "tier": "haiku" }
},
"background_task": {
"defaultConcurrency": 5
},
"ralph_loop": {
"enabled": true,
"default_max_iterations": 100
},
"autopilot": {
"enabled": true,
"maxPhaseRetries": 3,
"delegationEnforcement": "warn"
},
"ultraqa": {
"enabled": true,
"maxIterations": 10
},
"orchestrator": {
"delegationEnforcement": "warn",
"auditLogEnabled": true
}
}
`$3
| Option | Description | Default |
|--------|-------------|---------|
|
background_task.defaultConcurrency | Max parallel background tasks | 5 |
| ralph_loop.enabled | Enable Ralph Loop | true |
| ralph_loop.default_max_iterations | Max loop iterations | 100 |
| autopilot.enabled | Enable Autopilot mode | true |
| autopilot.maxPhaseRetries | Max retries per phase | 3 |
| autopilot.delegationEnforcement | strict, warn, off | warn |
| ultraqa.enabled | Enable UltraQA | true |
| ultraqa.maxIterations | Max QA iterations | 10 |
| orchestrator.delegationEnforcement | Delegation enforcement level | warn |
| orchestrator.auditLogEnabled | Enable audit logging | true |$3
By default, oh-my-claudecode-opencode uses GitHub Copilot Claude 4 models for the three tiers:
| Tier | Default Model |
|------|---------------|
|
haiku / LOW | github-copilot/claude-haiku-4 |
| sonnet / MEDIUM | github-copilot/claude-sonnet-4 |
| opus / HIGH | github-copilot/claude-opus-4 |To use other providers like Google or OpenAI, configure
model_mapping.tierDefaults:`json
{
"model_mapping": {
"tierDefaults": {
"haiku": "google/gemini-3-flash",
"sonnet": "google/gemini-3-pro",
"opus": "openai/gpt-5"
}
}
}
`$3
The plugin includes intelligent model routing with automatic tier escalation:
`json
{
"routing": {
"enabled": true,
"defaultTier": "MEDIUM",
"escalationEnabled": true,
"maxEscalations": 2,
"tierModels": {
"LOW": "github-copilot/claude-haiku-4",
"MEDIUM": "github-copilot/claude-sonnet-4",
"HIGH": "github-copilot/claude-opus-4"
},
"agentOverrides": {
"architect": { "tier": "HIGH", "reason": "Deep reasoning required" },
"explore": { "tier": "LOW", "reason": "Search-focused" }
},
"escalationKeywords": ["critical", "production", "urgent", "security"],
"simplificationKeywords": ["find", "list", "show", "where"]
}
}
`$3
Toggle platform features:
`json
{
"features": {
"parallelExecution": true,
"lspTools": true,
"astTools": true,
"continuationEnforcement": true,
"autoContextInjection": true
}
}
`$3
Configure MCP server integrations:
`json
{
"mcpServers": {
"exa": { "enabled": true, "apiKey": "your-api-key" },
"context7": { "enabled": true },
"grepApp": { "enabled": true }
}
}
`$3
Control allowed operations:
`json
{
"permissions": {
"allowBash": true,
"allowEdit": true,
"allowWrite": true,
"maxBackgroundTasks": 5
}
}
`$3
Customize trigger keywords:
`json
{
"magicKeywords": {
"ultrawork": ["ultrawork", "ulw", "uw"],
"search": ["search", "find", "locate"],
"analyze": ["analyze", "investigate", "examine"],
"ultrathink": ["ultrathink", "think", "reason", "ponder"]
}
}
`$3
`json
{
"disabled_hooks": [
"agent-usage-reminder",
"keyword-detector"
]
}
`Available hooks:
-
todo-continuation-enforcer
- keyword-detector
- ralph-loop
- session-recovery
- agent-usage-reminderHow It Works
$3
When the assistant has incomplete TODO items and becomes idle:
1. Plugin detects idle state (no tool calls for configured threshold)
2. Checks if pending/in_progress TODOs exist
3. Injects continuation prompt:
`
[SYSTEM REMINDER - TODO CONTINUATION]
Incomplete tasks remain in your todo list. Continue working on the next pending task.
Proceed without asking for permission. Mark each task complete when finished.
Do not stop until all tasks are done.
`$3
Self-referential execution loop:
1. User invokes
/ralph-loop "task description"
2. Plugin creates PRD (Product Requirements Document) if not exists
3. Monitors for completion signals ()
4. Re-injects task prompt on idle until completion
5. Tracks iterations to prevent infinite loops$3
When triggered:
1. Injects high-intensity system prompt
2. Encourages parallel execution
3. Minimizes confirmation requests
4. Maximizes throughput
Troubleshooting
$3
Run the diagnostic tool:
`bash
npx oh-my-claudecode-opencode doctor
`This checks:
1. Plugin installation in
~/.config/opencode/node_modules/
2. Plugin registration in opencode.json
3. Asset files present
4. Package dependencies
5. OMCO configuration validity$3
| Issue | Solution |
|-------|----------|
| "Plugin not installed" |
cd ~/.config/opencode && npm install oh-my-claudecode-opencode |
| "Plugin not in opencode.json" | Add "oh-my-claudecode-opencode" to "plugin" array |
| "Assets directory missing" | Reinstall: npm install oh-my-claudecode-opencode@latest |$3
| Code | Meaning |
|------|---------|
| 0 | All checks passed |
| 1 | Critical failure found |
| 2 | Warnings only |
$3
1. Run
/doctor in OpenCode and share the report
2. Open an issue: https://github.com/devswha/oh-my-claudecode-opencode/issuesDevelopment
`bash
Clone the repo
git clone https://github.com/devswha/oh-my-claudecode-opencode.git
cd oh-my-claudecode-opencodeInstall dependencies
bun installBuild
bun run buildType check
bun run typecheckRun tests
bun test
``Named after Sisyphus from Greek mythology - condemned to roll a boulder up a hill for eternity. Like Sisyphus, this plugin embodies persistence:
- Tasks are tracked until completion
- The assistant cannot simply "give up"
- Work continues until the boulder reaches the summit
> "The struggle itself toward the heights is enough to fill a man's heart. One must imagine Sisyphus happy." - Albert Camus
This project is an OpenCode port of oh-my-claudecode by @Yeachan-Heo.
Special thanks to:
- oh-my-claudecode - The original Claude Code plugin this project ports
- OpenCode - The target platform
MIT