npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

opencode-event-sound

v0.1.3

Published

Speak sound cues via OS text-to-speech when opencode sessions go idle, error out, or request permission

Downloads

709

Readme

opencode-event-sound

Speak sound cues through your OS text-to-speech engine when opencode sessions go idle, error out, or request permission.

세션 완료·에러·승인 요청 시 OS 음성(TTS)으로 소리로 알려주는 opencode 플러그인입니다. 기본 대사는 한국어이며 자유롭게 바꿀 수 있습니다.

Install

Add the plugin to your opencode config (~/.config/opencode/opencode.json):

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

Note: the options object is required by the config schema even when empty.

Restart opencode. That's it — on macOS it speaks with your Default Voice (System Settings > Accessibility > Spoken Content).

Options

Pass options via the tuple form:

{
  "plugin": [
    [
      "opencode-event-sound",
      {
        "voice": "Jian (Premium)",
        "phrases": {
          "session.idle": "작업 끝!",
          "session.error": "에러 났어",
          "permission.asked": "확인해줘"
        }
      }
    ]
  ]
}

| Option | Type | Default | Description | | --------- | --------------------- | ---------------------------------------------- | --------------------------------------------------------------------------- | | voice | string | (unset → macOS Default Voice) | Voice name passed to say -v on macOS. Ignored on Linux. | | phrases | Record<event, text> | Korean defaults below | Override what is spoken per event. Set a phrase to "" to silence an event. |

Events

| Event | Fires when | Default phrase | | --------------------- | --------------------------------- | -------------- | | session.idle | The agent finished its response | 다 됐다 | | session.error | The session hit an error | 뻑났다 | | permission.asked | Permission approval is requested | 승인 좀 |

opencode renamed the permission event around v1.18: permission.updated (old) → permission.asked (new). Both names are supported — configure either one and it applies to whichever your running version emits. A completion cue is also suppressed for 5s after an error, since the session goes idle right after failing.

Duplicate cues for the same event within 1.5s are throttled to avoid spam.

Platform support

  • macOS: say — uses the system Default Voice unless voice option is set. List installed voices: say -v '?'
  • Linux: spd-say, falling back to espeak-ng / espeak if installed
  • Other platforms: silently does nothing

TTS failures never interrupt your opencode session; they are swallowed quietly.

Related

License

MIT