Skip to content
    ↑↓ select↵ openesc close
    English中文
    spartandingo

    Starcraft

    v1.0.3Notifications
    opencode-starcraft

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

    GitHub stars

    1

    Monthly installs

    15

    4 in 7 days

    Composite scoreSCORE

    20.4

    Multi-signal model

    Last commit

    5 months ago

    2026-02-25

    Install and configure

    opencode.json

    Writes to this project's opencode.json — applies to this repository only.

    opencode.json

    {
      "$schema": "https://opencode.ai/config.json",
      "plugin": ["opencode-starcraft@1.0.3"]
    }

    opencode loads npm dependencies through its embedded runtime on startup and caches them locally — no manual global install needed.

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

    Install

    From npm (recommended)

    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