Multi-Agent Setup
cc-deck supports multiple AI coding agents through a pluggable Agent interface. Each agent gets automatic detection, hook installation, and event translation.
Supported Agents
| Agent | Indicator | Integration Method |
|---|---|---|
Claude Code |
|
Hook entries in |
OpenCode |
|
TypeScript plugin in |
Installing Hooks
The plugin install command auto-detects all installed agents and configures hooks for each.
cc-deck config plugin install
To install hooks for a specific agent only:
cc-deck config plugin install --agents opencode
Checking Status
View which agents are detected and whether their hooks are installed:
cc-deck config plugin status
The output shows each agent’s detection state, hook installation state, and configuration path.
Uninstalling Hooks
Remove hooks for all agents:
cc-deck config plugin remove
Remove hooks for a specific agent:
cc-deck config plugin remove --agents opencode
Sidebar Indicators
When sessions from multiple agent types are active, the sidebar shows agent indicators before each session name.
For example, [CC] api-server and [OC] frontend.
When all sessions use the same agent type, indicators are hidden to save horizontal space.
Custom Integrations
Use cc-deck hook --raw to send pre-normalized JSON payloads from any external process:
echo '{"hook_event_name":"SessionStart","agent":"custom","pane_id":1,"session_id":"s1"}' | cc-deck hook --raw
The --raw flag accepts the normalized payload format directly, skipping agent-specific translation.
This allows any tool to feed events into the cc-deck sidebar.
Hook Command
Each agent’s hook installation registers a command that calls cc-deck hook --agent <name>.
The agent adapter translates the agent-specific payload into the normalized format before forwarding to the Zellij plugin.
Agent emits event --> cc-deck hook --agent <name> --> TranslateEvent() --> NormalizedPayload --> Zellij pipe --> Sidebar