sherpa-onnx-tts
Local TTS using the sherpa-onnx offline CLI.
Install
- Download the runtime for your OS (extracts into
$BRIGADE_STATE_DIR/tools/sherpa-onnx-tts/runtime, default~/.brigade/tools/sherpa-onnx-tts/runtime) - Download a voice model (extracts into
$BRIGADE_STATE_DIR/tools/sherpa-onnx-tts/models, default~/.brigade/tools/sherpa-onnx-tts/models)
Resolve the active state directory first:
bashSTATE_DIR="${BRIGADE_STATE_DIR:-$HOME/.brigade}"
Then write those resolved paths into the active Brigade config file ($BRIGADE_CONFIG_PATH, default ~/.brigade/brigade.json):
json5{ skills: { entries: { "sherpa-onnx-tts": { env: { SHERPA_ONNX_RUNTIME_DIR: "/path/to/your/state-dir/tools/sherpa-onnx-tts/runtime", SHERPA_ONNX_MODEL_DIR: "/path/to/your/state-dir/tools/sherpa-onnx-tts/models/vits-piper-en_US-lessac-high", }, }, }, }, }
The wrapper lives in this skill folder. Run it directly, or add the wrapper to PATH:
bashexport PATH="{baseDir}/bin:$PATH"
Usage
bash{baseDir}/bin/sherpa-onnx-tts -o ./tts.wav "Hello from local TTS."
Notes:
- Pick a different model from the sherpa-onnx
tts-modelsrelease if you want another voice. - If the model dir has multiple
.onnxfiles, setSHERPA_ONNX_MODEL_FILEor pass--model-file. - You can also pass
--tokens-fileor--data-dirto override the defaults. - Windows: run
node {baseDir}\\bin\\sherpa-onnx-tts -o tts.wav "Hello from local TTS."

