Setup
How It Works
The installer:- Downloads the OpenCode plugin (
peon-ping.ts) - Patches it for Kilo CLI:
- Replaces
@opencode-ai/pluginwith@kilocode/plugin - Changes config path from
~/.config/opencode/to~/.config/kilo/ - Updates session ID prefix (
oc-→kilo-)
- Replaces
- Copies to
~/.config/kilo/plugins/peon-ping.ts - Creates
~/.config/kilo/peon-ping/config.json - Installs the default pack (
peon) from the registry to~/.openpeon/packs/
Patch Details
The installer applies these transformations:Event Mapping
| Kilo CLI Event | CESP Category | Trigger |
|---|---|---|
Plugin init / session.created | session.start | Kilo launches, session starts |
session.status (busy) | task.acknowledge | Agent accepts work |
session.idle | task.complete | Agent finishes turn |
session.error | task.error | Error occurs |
permission.asked | input.required | Permission prompt |
| Rapid prompts detected | user.spam | 3+ prompts in 10 seconds |
Features
All OpenCode features are supported:- Terminal focus detection — Notifications only when terminal is not focused
- Tab titles —
● project: done/✗ project: error - Subagent filtering — Skip sounds for parallel Task tool sessions
- Pack rotation — Per-session pack switching
- SSH/devcontainer relay — Audio routing to local machine
Configuration
Config path:~/.config/kilo/peon-ping/config.json
Uninstall
~/.openpeon/packs/ are preserved (shared with other adapters).
Differences from OpenCode
| Feature | OpenCode | Kilo CLI |
|---|---|---|
| Import path | @opencode-ai/plugin | @kilocode/plugin |
| Config dir | ~/.config/opencode/ | ~/.config/kilo/ |
| Session ID prefix | oc- | kilo- |
| Project name fallback | "opencode" | "kilo" |