edge-tts/SKILL.md
Text-to-speech via Microsoft Edge TTS (free, neural voices).
npx skillsauth add llblab/skills edge-ttsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Direct Node.js client for Microsoft Edge's online TTS service. The canonical client is scripts/say.mjs; scripts/say.sh is the shell entrypoint wrapper. There are no Python, CLI-wrapper, or legacy shell fallbacks.
./scripts/say.sh "Привет" ru +30% # Synthesize and play with an available local MP3 player
./scripts/say.sh "Привет" ru 1 /tmp/hello.mp3 # Save MP3; numeric rate multiplier is supported
./scripts/say.sh "Привет" ru +30% /tmp/a.mp3 /tmp/a.jsonl
./scripts/say.sh --text "Hello" --lang en --write-media /tmp/hello.mp3
./scripts/say.sh --file input.txt --voice ru-RU-SvetlanaNeural --write-media out.mp3 --write-subtitles out.srt
./scripts/say.sh --list-voices
say.sh delegates to say.mjs, which supports both positional and flag-style invocation. Positional form is compact for humans and simple wrappers; flag form is explicit and self-documenting for operators.
--text, --file — text source; - means stdin for files.--lang, --voice — language shortcut or explicit voice.--rate, --volume, --pitch — Edge prosody controls.--boundary — SentenceBoundary or WordBoundary.--write-media — MP3 output path; - means stdout.--write-subtitles — SRT output path; - means stderr.--write-metadata — JSONL boundary metadata output path.--list-voices — direct voice list request.Playback is optional and only applies when no media output path is provided. say.mjs auto-detects a local MP3 player and removes the temp file after playback when the player is blocking.
Default candidates:
ffplay, mpv, vlc/cvlc.mpg123.afplay.Start-Process.If no player exists, generation is still available through --write-media; the agent can then play the MP3 with any system-specific tool. Windows default-app playback uses delayed temp cleanup because registered apps usually detach immediately.
1 = +100%, 0.8 = +80%, -0.5 = -50%.development
Manage a guarded release flow that commits prepared release work on dev, opens a dev-to-main pull request with a release-focused PR summary, waits for checks, merges on success, tags, and optionally publishes an existing npm package. Use when the user asks to prepare or execute a dev→main release PR, hotfix release PR, or Dev2Main PR Summary workflow.
tools
Build, refactor, review, or debug Svelte 5 components that use Bits UI primitives. Use when working with bits-ui dialogs, popovers, dropdowns, comboboxes, selects, tabs, date/time controls, menus, tooltips, portals, render delegation, or Bits UI type helpers.
development
Evidence-grounded review for code, diffs, PRs, documents, plans, specs, and architecture. Use for evidence review, review, code review, quick review, sanity check, quality check, architecture review, production readiness, security review, scaling review, document review, evaluate, or check.
development
Collaborative idea-to-design and inquiry protocol. Use for product/architecture exploration, research-style question shaping, feature design, standards, specs, UX concepts, module boundaries, and non-trivial behavior changes when uncertainty matters.