← Commit history

Publish 1.9.16

John Lauer ·a621007b88 ·3mo ago ·parent 4355ad6
7 files changed +26−13
Cargo.toml+1−1
@@ -1,6 +1,6 @@ [package] name = "adom-tts"-version = "1.9.15"+version = "1.9.16" edition = "2021" license = "AGPL-3.0-or-later" repository = "https://github.com/adom-inc/adom-tts"
README.md+4−4
@@ -4,15 +4,15 @@ edge-tts wrapper with Adom pronunciation overrides and a source-hash cache. It does two things that matter day to day: -- 🚗 **When you're driving** — it reads your AI's answers back to you, hands-free.-- 🎬 **When you're making a demo** — it renders the video's voiceover track with exact+- **When you're driving** — it reads your AI's answers back to you, hands-free.+- **When you're making a demo** — it renders the video's voiceover track with exact   timing, so you never have to record your own voice.  ---  ## The two use cases -### 🚗 Drive mode (hands-free)+### Drive mode (hands-free)  You're in the car. You can't read the screen. Just say it: @@ -22,7 +22,7 @@ Claude composes the reply, pipes it through `adom-tts say --play`, and it plays no screen, no typing. The skill triggers on the words you'd actually use ("read it to me", "read that back", "I'm in the car", "narrate the answer", and many more). -### 🎬 Demo voiceover (exact timing)+### Demo voiceover (exact timing)  Writing a walkthrough or product demo? Feed `adom-tts` your narration script and get a clean, perfectly-timed `.mp3` voiceover track in the house voice (`en-US-AndrewNeural`).
VERSION+1−1
@@ -1 +1 @@-1.9.15+1.9.16
bin/adom-tts
⋯ 1 unchanged line ⋯
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-tts",-  "version": "1.9.15",+  "version": "1.9.16",   "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+14−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.15",+  "version": "1.9.16",   "license": "MIT",   "tags": [     "tts",@@ -12,6 +12,7 @@     "audio",     "demo",     "accessibility",+    "cli",     "open-source",     "mit"   ],@@ -64,5 +65,17 @@   ],   "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,+  "org": "adom",+  "author": {+    "name": "John Lauer",+    "email": "[email protected]"   } }\ No newline at end of file
skills/adom-tts/SKILL.md+5−5
@@ -103,12 +103,12 @@ adom-tts say "Generic sentence" --out g.mp3 --no-pronunciations --play ```  **Anti-patterns (have caused real spin-loops in past sessions):**-- ❌ `python3 -m http.server <port>` to serve the mp3 — pup runs on the user's *desktop*, container localhost is unreachable. Hydrogen webviews have the same constraint.-- ❌ Custom HTML with base64-inlined mp3 + `data:` URL — past 2 MB this hits Chrome's URL length limit.-- ❌ `adom-cli carbon containers port-add` — provisions a permanent `*.adom.cloud` subdomain for a one-shot, total overkill.-- ✅ Just use `--play`. The binary handles the surface, the URL, and cleanup.+- Do NOT: `python3 -m http.server <port>` to serve the mp3 — pup runs on the user's *desktop*, container localhost is unreachable. Hydrogen webviews have the same constraint.+- Do NOT: custom HTML with base64-inlined mp3 + `data:` URL — past 2 MB this hits Chrome's URL length limit.+- 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. -**🚫 NEVER install a local TTS engine as a fallback.** If `adom-tts` exits+**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 `adom-tts health` fails, the service-tts container is down. The correct response is to **STOP and report the outage to the user**, then retry later.