跳到主要内容
    ↑↓ 选择↵ 打开esc 关闭
    中文English
    spartandingo

    Starcraft

    v1.0.3通知与集成
    opencode-starcraft

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

    GitHub 星标

    1

    月装机量

    15

    近 7 天 4

    综合评分SCORE

    20.4

    生态多维模型

    最近提交

    5 个月前

    2026-02-25

    快速安装与配置

    opencode.json

    写入当前项目的 opencode.json,只对这个仓库生效。

    opencode.json

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

    opencode 启动时会通过内嵌运行时自动加载 npm 依赖并缓存至本地目录,无需手动在全局环境执行安装。

    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