Skip to content

kernelalex/zerowarp-opencode-plugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenCode + ZeroWarp

Local-only ZeroWarp notification plugin for OpenCode, maintained by Enigma Labs.

This fork preserves the useful terminal integration from the upstream Warp plugin while removing Warp-owned distribution identity. It emits local OSC 777 escape sequences for ZeroWarp to parse; it does not include telemetry, analytics SDKs, or Warp cloud service calls.

Features

Native Notifications

Get native ZeroWarp notifications when OpenCode:

  • Completes a task, with a concise prompt/response summary
  • Needs your input for a permission request
  • Runs a tool, with status updates as tools execute

Notifications are delivered through the local terminal session. No plugin payload is sent to Warp cloud services.

Installation

From npm

After this package is published, add it to your opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "plugin": ["zerowarp-opencode-plugin"]
}

From local files

Build the plugin and copy or symlink it into your OpenCode plugins directory:

bun install
bun run build

# Global
cp dist/index.js ~/.config/opencode/plugins/zerowarp-opencode-plugin.js

# Or project-level
cp dist/index.js .opencode/plugins/zerowarp-opencode-plugin.js

Requirements

  • ZeroWarp terminal
  • OpenCode CLI
  • A POSIX-style terminal device at /dev/tty for local OSC delivery. On Windows, use WSL or another environment that exposes /dev/tty; native PowerShell/CMD delivery is not implemented in this release.

How It Works

The plugin uses ZeroWarp's inherited pluggable-notification protocol over OSC escape sequences. When OpenCode triggers an event, the plugin:

  1. Reads event data from OpenCode's plugin API.
  2. Formats a concise notification payload.
  3. Writes an OSC 777 escape sequence to /dev/tty for the local terminal to consume.

The plugin hooks into these OpenCode events:

  • session.created confirms the plugin is active.
  • session.idle fires when OpenCode finishes responding and includes prompt/response context.
  • permission.updated / permission.asked fires when OpenCode needs tool approval.
  • chat.message fires when a user prompt is submitted.
  • tool.execute.after fires when a tool call completes.

Development

bun install
bun run typecheck
bun test
bun run build

Uninstall

Remove "zerowarp-opencode-plugin" from the plugin array in your opencode.json.

Attribution

This project is a privacy-focused fork of the Warp OpenCode notification plugin. ZeroWarp-specific changes are maintained by Enigma Labs.

License

MIT License. See LICENSE for details.

About

Local-only ZeroWarp notification plugin for OpenCode. Sends local OSC status events to ZeroWarp with no telemetry or Warp cloud dependencies.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 100.0%