Chorus is an agent harness for AI-Human collaboration, inspired by the AI-Driven Development Lifecycle (AI-DLC) methodology. It manages session lifecycle, task state, sub-agent orchestration, observability, and failure recovery — letting multiple AI agents and humans collaborate through the full workflow from requirements to delivery.
opencode-chorus is the community-maintained plugin that connects OpenCode to your Chorus instance. It loads Chorus workflow skills, exposes an on-demand MCP tool bridge, and provides lifecycle hooks and reviewer automation — all without manual tool or skill configuration.
| Category | Components | Description |
|---|---|---|
| Lifecycle Hooks | State Management, Lazy MCP Bridge, Context Injection, Notification Coordination | Manages state, activates Chorus on first tool use, injects project context after activation, and routes notifications. |
| Review Agents | Proposal Reviewer, Task Reviewer | Automated reviewers that evaluate proposals and verify completed tasks with structured verdicts. |
| Workflow Skills | 8 bundled skills covering the full AI-DLC pipeline | chorus, chorus-idea, chorus-proposal, chorus-develop, chorus-quick-dev, chorus-review, chorus-yolo, chorus-openspec |
Note
A local or online Chorus instance must be running and accessible to use this plugin. See Chorus Quick Start to get one running.
For detailed component descriptions, see docs/COMPONENTS.md.
Tip
This plugin is already included in the Chorus upstream onboarding flow. If you followed the Chorus setup guide for OpenCode, you can skip to step 2.
Add opencode-chorus to your OpenCode config file (usually ~/.config/opencode/config.json):
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-chorus"]
}Create a chorus.json in your OpenCode config directory (~/.config/opencode/chorus.json) with the minimal configuration:
{
"chorusUrl": "http://localhost:3000",
"apiKey": "your-chorus-api-key"
}Or use environment variables:
export CHORUS_BASE_URL="http://localhost:3000"
export CHORUS_API_KEY="your-chorus-api-key"After installing and configuring, restart OpenCode. You will see the bundled Chorus skills in your workspace. Load the chorus skill to get started.
The plugin does not connect to Chorus during OpenCode startup. It registers the lazy bridge tools immediately, then creates the Chorus session, starts notification listening, and enables system prompt context injection when you first call a Chorus bridge tool such as chorus_tools or chorus_workspace_context.
For all configuration options (environment variables, chorus.json fields, state storage, observability settings), see docs/CONFIGURATION.md.
| Document | Description |
|---|---|
| Configuration | Full configuration reference — env vars, chorus.json, state storage, observability |
| Components | Detailed descriptions of lifecycle hooks, review agents, and workflow skills |
| Changelog | Release history and migration notes |
