|
|
2 months ago | |
|---|---|---|
| src | 2 months ago | |
| .gitignore | 2 months ago | |
| README.md | 2 months ago | |
| bun.lock | 2 months ago | |
| package.json | 2 months ago | |
| tsconfig.json | 2 months ago |
A lightweight, powerful agent orchestration plugin for OpenCode. It transforms your AI assistant into a manager capable of delegating complex tasks to specialized sub-agents, running searches in the background, and managing multi-step workflows with ease.
The plugin follows a "Hub and Spoke" model:
@explore background task to find all auth-related files.@librarian task to check the latest documentation for the auth library used.@document-writer to update the README.| Agent | Role | Best Used For... |
|---|---|---|
| orchestrator | Manager | Planning, task delegation, and overall coordination. |
| oracle | Architect | Complex debugging, architectural decisions, and code reviews. |
| explore | Searcher | Fast codebase grep, finding patterns, and locating definitions. |
| librarian | Researcher | External library docs, GitHub examples, and API research. |
| frontend-ui-ux | Designer | Visual changes, CSS/styling, and React/Vue component polish. |
| document-writer | Scribe | Technical documentation, READMEs, and inline code comments. |
| multimodal-looker | Visionary | Analyzing screenshots, wireframes, or UI designs. |
| code-simplicity-reviewer | Minimalist | Ruthless code simplification and YAGNI principle enforcement. |
The plugin provides three core tools to manage asynchronous work:
background_task: Launches an agent in a new session.
sync=true: Blocks until the agent finishes (ideal for quick sub-tasks).sync=false: Runs in the background (ideal for long searches or research).background_output: Fetches the result of a background task using its ID.background_cancel: Aborts running tasks if they are no longer needed.You can customize the behavior of the plugin via the OpenCode configuration.
You can customize built-in agents or add entirely new ones in your oh-my-opencode-lite.json file.
Simply define a custom_agents array. The Orchestrator will automatically learn when to use your new agent based on its description.
{
"custom_agents": [
{
"name": "sql-expert",
"description": "Schema design, query optimization, and complex joins",
"prompt": "You are a Senior DBA. Analyze the schema and provide optimized SQL...",
"model": "openai/gpt-4.5"
}
]
}
{
"agents": {
"oracle": {
"model": "claude-3-5-sonnet",
"temperature": 0,
"prompt_append": "Always prioritize security in your reviews."
}
},
"disabled_agents": ["multimodal-looker"]
}
The plugin looks for configuration in two places (and merges them):
~/.config/opencode/oh-my-opencode-lite.json (or OS equivalent)./.opencode/oh-my-opencode-lite.jsonbash
bun install
bash
npm run dev
This will build the plugin and launch OpenCode with the plugin active.src/index.ts: Plugin entry point and tool registration.src/agents/: Definitions and system prompts for all sub-agents.src/features/background-manager.ts: State management for async tasks.src/tools/background.ts: Implementation of the background_* tools.src/config/: Configuration schema and loading logic.npm run build
Generates the dist/ folder with bundled ESM code and TypeScript declarations.
MIT