JSPM

opencode-starcraft

1.0.3
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 4
  • Score
    100M100P100Q71723F
  • License MIT

StarCraft sound effects plugin for OpenCode - plays iconic Protoss and Terran voice lines on session events

Package Exports

  • opencode-starcraft
  • opencode-starcraft/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (opencode-starcraft) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

opencode-starcraft

StarCraft sound effects plugin for OpenCode. Plays iconic Protoss and Terran voice lines when things happen in your coding session.

Install

Add opencode-starcraft to the plugin array in your OpenCode config file.

The config file is at ~/.config/opencode/opencode.json (global) or opencode.json (project-level).

{
  "plugin": ["opencode-starcraft"]
}

OpenCode installs npm plugins automatically at startup. No other steps needed.

From source

Clone this repo and copy index.js into your OpenCode plugins directory:

git clone https://github.com/spartandingo/opencode-starcraft.git
cp opencode-starcraft/index.js ~/.config/opencode/plugins/starcraft-sounds.js

How it works

Sound files are downloaded automatically on first run from The Sounds Resource and cached in ~/.config/opencode/sounds/starcraft/. No sound files are distributed with this package.

Audio playback uses child_process.spawn with platform-native commands (afplay on macOS, paplay on Linux) -- no additional dependencies required.

Mute / Unmute

You can mute sound effects at any time. There are two ways:

Slash command: Type /mute in the TUI to toggle sounds on/off. No setup required -- the command is registered automatically by the plugin.

Ask the LLM: Say "mute sounds" or "unmute sounds" in your session. The plugin registers an rts_mute_toggle tool that the LLM will call.

Mute state is persisted across sessions. When you unmute, a confirmation sound plays.

Events

OpenCode Event Sound Quote
session.created scv-ready.wav "SCV good to go, sir"
session.idle scv-yes-sir.wav / scv-affirmative.wav "Yes sir" / "Affirmative"
session.compacted additional-pylons.wav "You must construct additional pylons!"
session.error not-enough-minerals-*.wav / not-enough-vespene-gas.wav "Not enough minerals" / "Insufficient vespene gas"
permission.asked scv-whaddya-want.wav / scv-im-not-listening.wav "Whaddya want?"

Platform support

Platform Audio command Status
macOS afplay (built-in) Tested
Linux paplay (PulseAudio) Should work

Credits

  • Sound files from StarCraft (Blizzard Entertainment) via The Sounds Resource
  • Sounds are downloaded on demand and not distributed with this package
  • StarCraft is a trademark of Blizzard Entertainment, Inc.

License

MIT