Core Features
Core Features
Oh My OpenCode provides a suite of powerful enterprise-grade features that elevate OpenCode to a professional level. This document details how each core feature works and how to use it.
Sisyphus Agent Orchestration System
What is Sisyphus?
Sisyphus is the core orchestration system of Oh My OpenCode, acting as the “primary agent.” Its name comes from the Greek myth of Sisyphus who continuously pushed a boulder up a hill, symbolizing persistent task execution and management.
Model Used: Sisyphus typically uses the most powerful models, such as Claude Opus 4.5 High or Claude Sonnet 4, to ensure excellent task decomposition and coordination capabilities.
Why Do We Need an Orchestrator?
In complex development tasks, a single AI agent often struggles to handle all aspects. The value of an orchestrator lies in:
- Task Decomposition: Breaking large tasks into manageable subtasks
- Specialization Matching: Selecting the most suitable specialist agent for each subtask
- Resource Coordination: Managing parallel execution and resource allocation of multiple agents
- Result Integration: Aggregating work from various agents into complete solutions
- Context Management: Ensuring context sharing and consistency between different agents
How It Works
User Task
↓
Sisyphus analyzes task requirements
↓
Automatically selects appropriate specialist agents
↓
Coordinates multiple agents working in parallel
↓
Integrates results and returns
Core Capabilities
1. Intelligent Task Decomposition
Sisyphus can break complex tasks into multiple subtasks:
# User input
opencode "Refactor entire authentication system, add OAuth2 and JWT support"
# Sisyphus internal decomposition
# - Subtask 1: @oracle design new authentication architecture
# - Subtask 2: @librarian research OAuth2 and JWT best practices
# - Subtask 3: @backend-engineer implement server-side logic
# - Subtask 4: @frontend-ui-ux-engineer update login interface
2. Automatic Agent Selection
Automatically selects the most suitable agent based on task type:
| Task Type | Selected Agent | Reason |
|---|---|---|
| Architecture Design | @oracle | System thinking and technical decisions |
| Documentation Research | @librarian | Information retrieval and organization |
| UI Development | @frontend-ui-ux-engineer | Frontend technical expertise |
| API Development | @backend-engineer | Backend technical expertise |
| Bug Analysis | @explore | Deep code base analysis |
3. Parallel Task Coordination
Multiple agents can work simultaneously, with Sisyphus coordinating:
{
"main_task": "Develop user dashboard",
"parallel_tasks": [
{
"agent": "@oracle",
"task": "Design component architecture",
"status": "in_progress"
},
{
"agent": "@librarian",
"task": "Research UI library documentation",
"status": "completed"
},
{
"agent": "@frontend-engineer",
"task": "Implement base components",
"status": "in_progress"
}
]
}
Configuration Options
{
"sisyphus": {
"enabled": true,
"max_concurrent_tasks": 3, // Maximum concurrent tasks
"task_timeout": 300, // Task timeout (seconds)
"auto_delegate": true, // Auto-delegate tasks
"delegation_strategy": "optimal" // Delegation strategy: optimal, balanced, sequential
}
}
Specialized Agent Team
@oracle - Architect
Specialization: System architecture design, technical decisions, pattern selection
Use Cases:
- Design new system architecture
- Select technology stack
- Major refactoring decisions
- Performance optimization solutions
Example Usage:
# Direct call
opencode "@oracle Analyze bottlenecks in current microservices architecture"
# Combined with ultrawork
opencode "ulw: @oracle Design a highly available distributed caching system"
Configuration:
{
"agents": {
"oracle": {
"enabled": true,
"model": "claude-sonnet-4",
"temperature": 0.7,
"max_tokens": 4096,
"prompt_append": "Please provide detailed technical decision rationale and trade-off analysis"
}
}
}
@librarian - Documentation Specialist
Model Used: GPT-4 Turbo, Claude Sonnet 3.5, or similar models
Specialization: Documentation research, knowledge organization, information retrieval
Use Cases:
- Research framework/library documentation
- Organize technical materials
- Write technical documentation
- Learn new technologies
Example Usage:
# Research documentation
opencode "@librarian Research best practices for React Server Components"
# Write documentation
opencode "@librarian Write API documentation for the current project"
@frontend-ui-ux-engineer - Frontend UI/UX Engineer
Model Used: Claude Sonnet 4, GPT-4, or similar models
Specialization: Frontend development, UI/UX design, user experience optimization
Use Cases:
- Design and implement user interfaces
- Optimize user experience
- Responsive design
- Accessibility improvements
Example Usage:
# UI/UX development
opencode "@frontend-ui-ux-engineer Design and implement a modern login page"
# User experience optimization
opencode "@frontend-ui-ux-engineer Optimize form interaction and validation feedback"
@frontend-engineer - Frontend Engineer
Model Used: Claude Sonnet 4, GPT-4, or similar models
Specialization: React/Vue/Angular development, UI/UX implementation
Use Cases:
- Frontend component development
- UI implementation
- Style adjustments
- Frontend performance optimization
Example Usage:
# UI development
opencode "@frontend-engineer Implement a responsive user card component"
# Performance optimization
opencode "@frontend-engineer Optimize homepage load performance"
@backend-engineer - Backend Engineer
Model Used: Claude Sonnet 4, GPT-4, or similar models
Specialization: Node.js/Python/Go development, API design, databases
Use Cases:
- API endpoint development
- Database design
- Business logic implementation
- Backend performance optimization
Example Usage:
# API development
opencode "@backend-engineer Implement user authentication API with JWT support"
# Database optimization
opencode "@backend-engineer Optimize database indexes for order queries"
@explore - Explorer
Model Used: Claude Sonnet 3.5, GPT-4, or similar models
Specialization: Code base analysis, issue tracking, dependency relationships
Use Cases:
- Bug debugging
- Code base exploration
- Dependency analysis
- Impact scope assessment
Example Usage:
# Bug debugging
opencode "@explore Find the code location causing memory leak"
# Dependency analysis
opencode "@explore Analyze where this function is called from"
@document-writer - Technical Writing Specialist
Model Used: GPT-4, Claude Sonnet 3.5, or similar models
Specialization: Technical documentation writing, API documentation, tutorial creation
Use Cases:
- Write technical documentation
- Create API references
- Write tutorials and guides
- Maintain project README
Example Usage:
# Documentation writing
opencode "@document-writer Write complete usage documentation for the new feature"
# API documentation
opencode "@document-writer Generate complete documentation for RESTful API"
@multimodal-looker - Visual Content Analysis Specialist
Model Used: Claude Sonnet 4 (Vision), GPT-4 Vision, or similar multimodal models
Specialization: Visual content analysis, image understanding, design review
Use Cases:
- Analyze design mockups
- Understand UI screenshots
- Review visual design
- Extract information from images
Example Usage:
# Design analysis
opencode "@multimodal-looker Analyze this design mockup and provide implementation suggestions"
# UI review
opencode "@multimodal-looker Review the visual design and layout of the current page"
LSP Tool Integration
What is LSP?
Language Server Protocol (LSP) is a protocol developed by Microsoft that provides language intelligence features to editors. Oh My OpenCode integrates LSP for AI agents to use, giving them the same code understanding capabilities as IDEs.
Available LSP Features
lsp_hover - View Definitions
View type definitions and documentation for symbols:
// AI can use the lsp_hover tool
// to view type information for UserService
const service = new UserService();
lsp_goto_definition - Jump to Definition
Jump to the definition location of a symbol:
# AI can use lsp_goto_definition for automatic location
"Find the implementation of authenticateUser function"
lsp_rename - Safe Renaming
Safe cross-file symbol renaming:
opencode "Use lsp_rename tool to rename getUserData to fetchUserProfile"
lsp_find_references - Find References
Find all reference locations of a symbol:
opencode "Use lsp_find_references to find all usages of the deprecated API"
lsp_code_actions - Code Actions
Execute code refactoring and quick fixes:
opencode "Use lsp_code_actions to automatically fix type errors"
Supported Languages
- ✅ TypeScript/JavaScript
- ✅ Python
- ✅ Go
- ✅ Rust
- ✅ Java
- ✅ C/C++
Configure LSP
{
"lsp": {
"enabled": true,
"languages": ["typescript", "python", "go"],
"servers": {
"typescript": {
"command": "typescript-language-server",
"args": ["--stdio"]
},
"python": {
"command": "pylsp",
"args": []
}
}
}
}
AST-Grep Code Search
What is AST-Grep?
AST-Grep is a code search tool based on Abstract Syntax Trees (AST), more precise and powerful than simple text searches.
Core Capabilities
1. ast_grep_search - Structured Search
# Find all components using useState
opencode "Use ast_grep_search to find all React components using useState"
# Find specific code patterns
opencode "Use ast_grep_search to find all async functions without try-catch"
2. ast_grep_replace - Code Refactoring
# Batch refactoring
opencode "Use ast_grep_replace to change all var declarations to const"
# Pattern replacement
opencode "Use ast_grep_replace to convert all class components to function components"
Example
# .ast-grep.yml configuration
rule:
pattern: console.log($$$ARGS)
fix: logger.debug($$$ARGS)
language: typescript
Background Task Parallel Execution
Working Mechanism
While the main task is executing, background agents can handle other work in parallel:
Main task: Implement user login functionality
↓ (in progress)
Background task 1: @librarian Research security best practices
Background task 2: @explore Analyze existing authentication code
Background task 3: @oracle Design new session management
↓ (concurrent)
Integrate all results
Advantages
- ⚡ Efficiency Boost: 3x+ work efficiency
- 🧠 Intelligent Collaboration: Tasks automatically share context
- 🎯 Auto Balance: Dynamically adjust task allocation based on resources
Configuration
{
"background_task": {
"enabled": true,
"defaultConcurrency": 3,
"priority": "balanced", // high, balanced, low
"auto_merge_results": true
}
}
Claude Code Compatibility Layer
Seamless Migration
Oh My OpenCode provides full Claude Code compatibility, existing configurations work without modification:
Claude Code Configuration Example:
// Claude Code configuration
{
"custom_instructions": "Use TypeScript strict mode",
"context_files": [".claud/CONTEXT.md"]
}
Auto-Converted to Oh My OpenCode Format:
{
"agents": {
"default": {
"prompt_append": "Use TypeScript strict mode"
}
},
"context_injection": {
"files": [".claud/CONTEXT.md"]
}
}
Supported Features
- ✅ custom_instructions
- ✅ context_files
- ✅ project_rules
- ✅ custom_tools
- ✅ hooks
Session Management Tools
Features
- Session Persistence: Save and restore work sessions
- Context Accumulation: Maintain context memory across sessions
- Task Linking: Associate related tasks
Usage
# Save session
opencode "Save current session as refactor-auth"
# Restore session
opencode "Restore session refactor-auth and continue"
# List sessions
opencode "List all saved sessions"
Intelligent Context Injection
AGENTS.md Hierarchical System
Supports project-level and directory-level context rules:
project/
├── AGENTS.md # Global rules
├── src/
│ ├── AGENTS.md # src directory rules
│ └── components/
│ └── AGENTS.md # components directory rules
Conditional Rule Activation
Automatically activate rules based on conditions:
<!-- AGENTS.md -->
# Conditional Rules
## when: file.ext == "*.test.ts"
Use Jest and React Testing Library
## when: agent == "@frontend-engineer"
Follow company UI design system
Next Steps
After learning about the core features, we recommend:
- 📖 Check Best Practices to learn efficient usage patterns
- ⚙️ Explore Advanced Configuration for deep customization
- 💡 Refer to Use Cases for inspiration