opencode-hypr-notifierOpenCode plugin for desktop notifications via notify-send. Get notified when OpenCode needs approval or is waiting for input.
0
5
近 7 天 2
12.3
生态多维模型
7 个月前
2026-01-02
快速安装与配置
opencode.json写入当前项目的 opencode.json,只对这个仓库生效。
opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-hypr-notifier@1.1.0"]
}写入 ~/.config/opencode/opencode.json,对所有项目生效。
~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-hypr-notifier@1.1.0"]
}若你要在本地改造这个插件,先装到项目里再从本地路径引用。
shell
pnpm add -D opencode-hypr-notifieropencode 启动时会通过内嵌运行时自动加载 npm 依赖并缓存至本地目录,无需手动在全局环境执行安装。
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