app
Adom TTS: Text to Speech
Public Made by Adomby adom
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.
← Commit history
Publish 1.9.32
4 files changed
+32−7
bin/adom-tts⋯ 1 unchanged line ⋯
package.json+1−1@@ -1,6 +1,6 @@ { "slug": "adom-tts",- "version": "1.9.31",+ "version": "1.9.32", "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+22−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.31",+ "version": "1.9.32", "license": "MIT", "tags": [ "tts",@@ -12,6 +12,7 @@ "audio", "demo", "accessibility",+ "cli", "open-source", "mit" ],@@ -64,5 +65,25 @@ ], "install": { "binary_name": "adom-tts"+ },+ "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.",+ "dependencies": {},+ "scripts": {+ "install": "./install.sh",+ "uninstall": "./uninstall.sh"+ },+ "needs_sudo": false,+ "files": [+ "package.json",+ "install.sh",+ "uninstall.sh",+ "bin/adom-tts",+ "skills/**",+ "completions/**"+ ],+ "org": "adom",+ "author": {+ "name": "John Lauer",+ "email": "[email protected]" } }
skills/adom-tts/SKILL.md+9−5@@ -113,11 +113,15 @@ adom-tts say "Generic sentence" --out g.mp3 --no-pronunciations --play - Do NOT: `adom-cli carbon containers port-add` — provisions a permanent `*.adom.cloud` subdomain for a one-shot, total overkill. - DO: just use `--play`. The binary handles the surface, the URL, and cleanup. -**Multiple Adom Desktops? Pin the target for pup.** If more than one desktop is-on the relay and you play to `--surface pup`, the player window is ambiguous-and won't open (`⚠ STALLED — no audio sink` in `status`). `export-ADOM_DESKTOP_TARGET=<host>` (the desktop the human is at) BEFORE the first-`say --play`; if already wedged, pin it then run `adom-tts restart`.+**Default to the hydrogen webview surface. Only use `--surface pup` when the+user explicitly asks for it.** The default (no `--surface`) is the hydrogen+webview and it is the reliable path — proven end-to-end. Pup is more fragile:+its window can strand on a stale port and, with more than one Adom Desktop on+the relay, its window is ambiguous and won't open. So do NOT auto-route a+"pup window_mode" user into `--surface pup`; just narrate on the default+surface. If you DO need pup (user asked), first `export ADOM_DESKTOP_TARGET=<host>`+(the desktop the human is at); if a clip comes back `surface-unavailable`,+re-send WITHOUT `--surface pup`. **NEVER install a local TTS engine as a fallback.** If `adom-tts` exits non-zero — `adom-tts: unreachable` (exit 2) or `HTTP <status>` (exit 4) — or