← Commit history

Publish 1.9.57

John Lauer ·e735cc547d ·7d ago ·parent 8aa126d
5 files changed +16−4
README.md+2−1
@@ -176,7 +176,8 @@ Paste any of these into Claude Code; they use the exact words the skill triggers | `adom-tts load` / `cue` / `cue-status` / `queue clear\|drop` / `control skip` | Live-demo markers and queue management (see the user skill). | | `adom-tts logs [--tail N]` | Playback/synthesis event log with verdicts + anomaly hints. | | `adom-tts serve [--port N]` | Open the Playground webview. |-| `adom-tts voices` / `pronunciations` / `health` / `config` | Service info. |+| `adom-tts health [--probe]` | Exit 0 only when the service can speak (synthesis verified), 5 when it answers but the upstream speech endpoint refuses. |+| `adom-tts voices` / `pronunciations` / `config` | Service info. |  **Useful flags:** `--voice en-US-AriaNeural`, `--rate=+15%` or `--rate=-4%` (signed percentage, write it with `=`), `--surface desktop` (Hydrogen Desktop's window), `--surface pup`, `--no-pronunciations`. `$ADOM_TTS_API` overrides the baked-in service URL.
bin/adom-tts
⋯ 1 unchanged line ⋯
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-tts",-  "version": "1.9.56",+  "version": "1.9.57",   "type": "app",   "description": "Adom's shared text-to-speech CLI + Playground. Reads your AI answers back to you while driving, and renders perfectly-timed voiceover tracks for demo videos.",   "license": "MIT",
page.json+1−1
@@ -4,7 +4,7 @@   "slug": "adom-tts",   "title": "Adom TTS: Text to Speech",   "brief": "Adom's shared voice service. Reads your AI's answers back to you while you drive, and renders perfectly-timed voiceover tracks for your demo videos, so you never record your own voice.",-  "version": "1.9.56",+  "version": "1.9.57",   "license": "MIT",   "tags": [     "tts",
skills/adom-tts/SKILL.md+12−1
@@ -235,11 +235,22 @@ Other commands: ```bash adom-tts voices          # GET /tts/voices (edge-tts list as JSON) adom-tts pronunciations  # GET /tts/pronunciations (the override table)-adom-tts health          # service + edge-tts version+adom-tts health          # exit 0 ONLY when the service can SPEAK (synthesis verified), 5 when it answers but upstream refuses+adom-tts health --probe  # force a fresh synthesis probe instead of the cached verdict adom-tts config          # which URL is this binary hitting? adom-tts config --show   # also dump the resolved play surface + config path ``` +**Health means "can it speak", not "does it answer" (1.9.57, issue #8).**+`adom-tts health` prints the service's verdict with `ready` (synthesis verified+by a real request or a probe in the last 5 minutes) beside `ok` (process+answering) and exits 5 with a hint when the process is up but Microsoft's+speech endpoint is refusing synthesis. `--probe` forces a fresh probe. A `say`+that hits that refusal says so (`upstream speech endpoint refused`), spaces its+four attempts over half a minute, and its hint says it is NOT your arguments:+wait a few minutes, re-run `adom-tts health --probe`, and if it stays down for+an hour report it on the adom-tts wiki page. Never install a local TTS engine.+ **`--rate` is a signed percentage** (edge-tts syntax): `--rate=+10%`, `--rate=-4%`. Write it with `=` so a leading minus is never read as a flag. The CLI normalises `10`, `-4` and `15%`, and refuses anything else up front naming the flag. A