Official Warp terminal integration for OpenCode.
Get native Warp notifications when OpenCode:
- Completes a task — with a summary showing your prompt and the response
- Needs your input — when a permission request is pending
- Runs a tool — status updates as tools execute
Notifications appear in Warp's notification center and as system notifications, so you can context-switch while OpenCode works and get alerted when attention is needed.
Add the plugin to your opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["@warp-dot-dev/opencode-warp"]
}Copy or symlink the built plugin into your OpenCode plugins directory:
# Global
cp dist/index.js ~/.config/opencode/plugins/opencode-warp.js
# Or project-level
cp dist/index.js .opencode/plugins/opencode-warp.js- Warp terminal (macOS, Linux, or Windows)
- OpenCode CLI
This plugin uses Warp's pluggable notifications feature via OSC escape sequences. When OpenCode triggers an event, the plugin:
- Reads event data from OpenCode's plugin API
- Formats a concise notification payload
- Sends an OSC 777 escape sequence to Warp, which displays a native notification
The plugin hooks into these OpenCode events:
- session.created — confirms the plugin is active
- session.idle — fires when OpenCode finishes responding, includes your prompt and the response
- permission.updated / permission.asked — fires when OpenCode needs tool approval
- message.updated — fires when a user prompt is submitted
- tool.execute.after — fires when a tool call completes
Notifications work out of the box. To customize Warp's notification behavior (sounds, system notifications, etc.), see Warp's notification settings.
# Install dependencies
bun install
# Type check
bun run typecheck
# Run tests
bun test
# Build
bun run buildRemove "@warp-dot-dev/opencode-warp" from the plugin array in your opencode.json.
Contributions welcome! Please open an issue or PR on GitHub.
MIT License — see LICENSE for details.