opencode-hypr-notifierOpenCode plugin for desktop notifications via notify-send. Get notified when OpenCode needs approval or is waiting for input.
0
5
2 in 7 days
12.3
Multi-signal model
7 months ago
2026-01-02
Install and configure
opencode.jsonWrites to this project's opencode.json — applies to this repository only.
opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-hypr-notifier@1.1.0"]
}Writes to ~/.config/opencode/opencode.json — applies to every project.
~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-hypr-notifier@1.1.0"]
}If you want to modify the plugin locally, install it into the project and reference the local path.
shell
pnpm add -D opencode-hypr-notifieropencode loads npm dependencies through its embedded runtime on startup and caches them locally — no manual global install needed.
Desktop notifications for OpenCode via notify-send. Get notified when OpenCode needs input, finishes processing, or completes tasks.
What It Does
Sends a single desktop notification when:
- Idle - OpenCode finishes and waits for your input (e.g., after printing output)
- Permission - OpenCode needs approval for an action
- Session/Task Complete - A session or task finishes
Only one idle notification is sent until you interact again, preventing notification spam.
Installation
Option 1: Copy directly
git clone https://github.com/lprior-repo/opencode-hypr-notifier.git
cp opencode-hypr-notifier/src/hypr-notifier.ts ~/.config/opencode/plugin/
Option 2: npm
Add to opencode.json:
{
"plugin": ["opencode-hypr-notifier"]
}
Requirements
notify-send(Debian:apt install libnotify-bin, Arch:pacman -S libnotify)- A notification daemon (dunst, mako, swaync, etc.)
- OpenCode 1.0+
Configuration
Optional. Create ~/.config/opencode/opencode-hyprland.json:
{
"notification": true,
"timeout": 15000,
"transient": false,
"urgency": {
"permission": "critical",
"session": "normal",
"idle": "normal"
},
"messages": {
"permission": "OpenCode Needs Your Attention",
"session": "OpenCode Session Idle",
"idle": "OpenCode Waiting for Input"
},
"icons": {
"permission": "dialog-password",
"session": "emblem-ok-symbolic",
"idle": "dialog-information"
}
}
| Option | Default | Description |
|---|---|---|
notification |
true |
Enable/disable notifications |
timeout |
15000 |
Display time (ms) |
transient |
false |
Don't persist in history |
urgency.* |
varies | "low", "normal", "critical" |
messages.* |
varies | Notification title |
icons.* |
varies | Icon name |
Events
| Event | When | Default Urgency |
|---|---|---|
session.idle |
OpenCode waiting for input | Normal |
permission.updated |
Needs user approval | Critical |
session.complete |
Session finishes | Normal |
task.complete |
Task finishes | Normal |
License
MIT