How alvinunreal/oh-my-opencode-slim works
oh-my-opencode-slim is an OpenCode plugin that routes user work to specialized agents, commonly as parallel background tasks, then reconciles their results for the orchestrator. Its main runtime entry is src/index.ts; configuration and agent construction shape the team, while task-session management tracks child work. The README also documents code-intelligence tools, interviews, presets, marketplace packages, live multiplexer panes, and an optional desktop companion. Relationships reflect documented capabilities and sampled calls; some subsystem wiring is not visible in the excerpts.
Main entry points: src/index.ts Plugin entry · agents/index.ts Agent definitions · agents Specialist agents · task-session-manager/index.ts Task session manager
Components 19
Plugin runtime
- Plugin entry
src/index.ts - Configuration
src/config/index.ts
Agent team
- Agent definitions
src/agents/index.ts - Specialist agents
src/agents - Council synthesis
src/agents/council.ts
Task coordination
- Task session manager
src/hooks/task-session-manager/index.ts - Background job state
src/utils/background-job-board.ts - Task controls
src/tools
User features
- Code intelligence
src/tools - Docs and code MCPs
src/mcp/index.ts - Interview workflow
src/interview/manager.ts - Marketplace packages
src/marketplace/service.ts
User interfaces
- Preset switching
src/tools/preset-switch.ts - Pane integration
src/multiplexer/index.ts - Desktop companion
src/companion/manager.ts
Other components
- OpenCode user
- OpenCode host
- Model providers
- Package registry
Connections 19
- OpenCode user → OpenCode host: submits work
- OpenCode host → Plugin entry: loads plugin
- Plugin entry → Configuration: loads settings
- Plugin entry → Agent definitions: builds agents
- Agent definitions → Specialist agents: configures roles
- Specialist agents → Model providers: invoke models
- Plugin entry → Task session manager: tracks sessions
- Task session manager → Background job state: updates jobs
- Task controls → Background job state: reads job state
- Plugin entry → Task controls: registers tools
- Plugin entry → Code intelligence: registers tools
- Code intelligence → Docs and code MCPs: uses MCPs
- Plugin entry → Interview workflow: enables interviews
- Plugin entry → Marketplace packages: exposes packages
- Marketplace packages → Package registry: fetches packages
- OpenCode user → Council synthesis: requests synthesis
- OpenCode user → Preset switching: switches preset
- Plugin entry → Pane integration: enables panes
- Plugin entry → Desktop companion: updates activity