New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

@serkanalgur/opencodev2-notification

Package Overview
Dependencies
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@serkanalgur/opencodev2-notification

Native OS notifications for OpenCode V2 - know when tasks complete, errors occur, or the AI needs your input

latest
Source
npmnpm
Version
1.2.7
Version published
Maintainers
1
Created
Source

@serkanalgur/opencodev2-notification

npm version License: MIT OpenCode Plugin GitHub stars GitHub issues

Native OS notifications for OpenCode V2

A CLI plugin for OpenCode V2 that delivers native OS notifications when tasks complete, errors occur, or the AI needs your input.

Why This Exists

You delegate a task and switch to another window. Now you're checking back every 30 seconds. Did it finish? Did it error? Is it waiting for permission?

This plugin solves that:

  • Stay focused - Work in other apps. A notification arrives when the AI needs you.
  • Uses OpenCode's built-in attention API - Native notifications on all platforms
  • Smart defaults - Won't spam you. Only notifies for meaningful events with parent-session filtering and quiet-hours support.
  • Lightweight - Event-driven, no tools added to your conversation

Installation

opencode plugin add @serkanalgur/opencodev2-notification

Via opencode.json

Add to your opencode.json or opencode.jsonc:

{
  "plugins": ["@serkanalgur/opencodev2-notification"]
}

As a local plugin

Or copy the plugin files to your .opencode/plugins/ directory:

.opencode/plugins/notification/index.ts

⚠️ Required: enable attention (mandatory)

This plugin will NOT work unless you turn on OpenCode's attention setting first. The plugin only uses OpenCode's built-in notification API — it cannot enable it for you. If attention is off, every notification is silently dropped (attention_disabled) and nothing appears on screen or plays a sound.

Add this block to ~/.config/opencode/cli.json:

{
  "attention": {
    "notifications": true,
    "sound": true,
    "volume": 0.4
  }
}
  • attention.notifications → shows system notifications (usually when the terminal is not focused).
  • attention.sound → plays a sound always (even while the terminal is focused).

On macOS, also allow notifications for your terminal app: System Settings → Notifications → (Terminal/iTerm) → Allow Notifications.

If attention is disabled, v1.2.6+ prints a clear warning in the terminal when an event fires:

opencodev2-notification: attention is disabled. Enable it in ~/.config/opencode/cli.json:
  "attention": { "notifications": true, "sound": true }

How It Works

"Notify the human when the AI needs them back, not for every micro-event."

EventNotifies?SoundWhy
Session completeYesdoneMain task done - time to review
Session errorYeserrorSomething broke - needs attention
Permission neededYespermissionAI is blocked, waiting for you
Sub-task complete/errorNo (default)-Set notifyChildSessions: true to include child sessions

The plugin automatically:

  • Uses OpenCode's built-in attention.notify() API for native notifications
  • Only notifies when terminal is not focused (no spam while you're working)
  • Deduplicates rapid-fire notifications

Platform Support

PlatformMethodStatus
macOSNotification Center✅ Full support
WindowsToast notifications✅ Full support
LinuxDesktop notifications✅ Full support

Plugin Configuration (Optional)

The plugin ships with sensible defaults and works right after you've completed the required attention setup above.

To customize the plugin itself, create ~/.config/opencode/opencodev2-notification.json:

{
  "notifyChildSessions": false,
  "sounds": {
    "idle": "done",
    "error": "error",
    "permission": "permission"
  },
  "quietHours": {
    "enabled": false,
    "start": "22:00",
    "end": "08:00"
  }
}

Configuration Keys

KeyTypeDefaultDescription
notifyChildSessionsbooleanfalseInclude child/sub-session notifications
sounds.idlestring"done"Sound for session complete
sounds.errorstring"error"Sound for errors
sounds.permissionstring"permission"Sound for permission requests
quietHours.enabledbooleanfalseEnable quiet hours
quietHours.startstring"22:00"Quiet hours start (HH:MM)
quietHours.endstring"08:00"Quiet hours end (HH:MM)

Available Sound Names

default, question, permission, error, done, subagent_done

FAQ

Does this add bloat to my context?

Minimal footprint. The plugin is event-driven - it listens for session events and fires notifications. No tools are added to your conversation.

Will I get spammed with notifications?

No. Smart defaults prevent noise:

  • Only notifies for parent sessions (not every sub-task)
  • Supports quiet-hours suppression
  • Only notifies when terminal is not focused
  • Deduplication prevents rapid-fire notifications

Can I disable it temporarily?

Remove the plugin from your opencode.json or delete the plugin files.

Credits

Inspired by opencode-notify by kdcokenny.

License

MIT

Keywords

opencode

FAQs

Package last updated on 21 Sep 2026

Related posts