refactor(tts): replace NeuTTS optional skill with built-in provider + setup flow#1664
Merged
refactor(tts): replace NeuTTS optional skill with built-in provider + setup flow#1664
Conversation
… setup flow Remove the optional skill (redundant now that NeuTTS is a built-in TTS provider). Replace neutts_cli dependency with a standalone synthesis helper (tools/neutts_synth.py) that calls the neutts Python API directly in a subprocess. Add TTS provider selection to hermes setup: - 'hermes setup' now prompts for TTS provider after model selection - 'hermes setup tts' available as standalone section - Selecting NeuTTS checks for deps and offers to install: espeak-ng (system) + neutts[all] (pip) - ElevenLabs/OpenAI selections prompt for API keys - Tool status display shows NeuTTS install state Changes: - Remove optional-skills/mlops/models/neutts/ (skill + CLI scaffold) - Add tools/neutts_synth.py (standalone synthesis subprocess helper) - Move jo.wav/jo.txt to tools/neutts_samples/ (bundled default voice) - Refactor _generate_neutts() — uses neutts API via subprocess, no neutts_cli dependency, config-driven ref_audio/ref_text/model/device - Add TTS setup to hermes_cli/setup.py (SETUP_SECTIONS, tool status) - Update config.py defaults (ref_audio, ref_text, model, device)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to PR #1657. Replaces the optional NeuTTS skill with a proper built-in provider integration and setup wizard flow.
What changed
Removed: The entire
optional-skills/mlops/models/neutts/directory — the 400-line SKILL.md, CLI scaffold (neutts_cli), and bootstrap helper. All redundant now that NeuTTS is a built-in TTS provider.Added: Setup wizard flow (
hermes setup tts)When selecting NeuTTS as their TTS provider, users get an interactive install:
hermes setup(model section)hermes setup ttsRefactored: Synthesis backend
tools/neutts_synth.py— standalone helper that calls theneuttsPython API directly in a subprocess (keeps ~500MB model out of the agent process)neutts_clidependency — just needspip install neutts[all]tts.neutts.ref_audio,tts.neutts.ref_text,tts.neutts.model,tts.neutts.devicetools/neutts_samples/jo.wav+jo.txt)