Merge pull request 'docs: auto-speak narrates every turn' (#38) from docs/dankvoice-narration-cadence into main
This commit was merged in pull request #38.
This commit is contained in:
@@ -83,16 +83,22 @@ saved sink. Thinking narration rides the same arming (`thinking: true`).
|
|||||||
|
|
||||||
## Limits
|
## Limits
|
||||||
|
|
||||||
* Auto-speak narrates thinking and the final message only — mid-turn tool
|
* Auto-speak narrates **each turn** — the assistant's prose and thinking while
|
||||||
chatter is never spoken; skipped in `print`/`json` modes so benches stay
|
the agent is still working — plus the settled final answer, spoken once. A
|
||||||
silent.
|
turn that lands while audio is still playing is dropped, not queued or
|
||||||
|
interrupting; tool-only turns stay silent; `print`/`json` modes never speak,
|
||||||
|
so benches stay quiet. Narration goes through the humanizer, so it lags its
|
||||||
|
turn by a rewrite round trip; `/say humanize off` removes the lag.
|
||||||
|
* Arming is read at startup only — see **Arming auto-speak** above. A session
|
||||||
|
that never speaks is unarmed, not broken; `/say on` before debugging.
|
||||||
* frank-tts deployment, voice packs and the registry are owned by the
|
* frank-tts deployment, voice packs and the registry are owned by the
|
||||||
`serverAppConfigs` repo (`serverAppConfigs-docs/Dankclaw/Frank TTS.md`).
|
`serverAppConfigs` repo (`serverAppConfigs-docs/Dankclaw/Frank TTS.md`).
|
||||||
|
|
||||||
## Citations
|
## Citations
|
||||||
|
|
||||||
* Package repo `dank/dankvoice` (README, `docs/decisions/`) — behaviour and
|
* Package repo `dank/dankvoice` (README, `docs/decisions/`) — behaviour and
|
||||||
knob truth.
|
knob truth. `docs/decisions/2026-10-19-turn-narration.md` records why
|
||||||
|
narration rides `turn_end` and not only `agent_end`.
|
||||||
* Gitea issues #21, #23, #27, #32 (drop-in history) and #34 (this cutover)
|
* Gitea issues #21, #23, #27, #32 (drop-in history) and #34 (this cutover)
|
||||||
on `dank/command-center`.
|
on `dank/command-center`.
|
||||||
* Live endpoint probes 2026-10-18/19 documented in those issues.
|
* Live endpoint probes 2026-10-18/19 documented in those issues.
|
||||||
|
|||||||
+10
-4
@@ -20,10 +20,16 @@ on its concept page, linked here. Never re-expand an entry in place.
|
|||||||
|
|
||||||
Sessions spoke only on explicit `/say`: the settings file carried no `auto`
|
Sessions spoke only on explicit `/say`: the settings file carried no `auto`
|
||||||
key, and arming is session-scoped by design (`/say on` never persists). Set
|
key, and arming is session-scoped by design (`/say on` never persists). Set
|
||||||
`"auto": true` in `~/.omp/cache/dankvoice.json`. Law: silence at session start
|
`"auto": true` in `~/.omp/cache/dankvoice.json`. Same report, second half:
|
||||||
is a config state — read `/say status` for `auto-speak on`, then watch
|
auto-speak listened only to `agent_end` — a settle that fires once per prompt
|
||||||
`pgrep -a pw-play` for one player per segment, before blaming the endpoint.
|
and is skipped outright when the harness schedules a continuation — so nothing
|
||||||
Details: [dankvoice](core/dankvoice.md).
|
was narrated while an agent worked; fixed in dank/dankvoice#3, which narrates
|
||||||
|
`turn_end` as well. Law: silence at session start is a config state — read
|
||||||
|
`/say status` for `auto-speak on`, then watch `pgrep -a pw-play` for one player
|
||||||
|
per segment, before blaming the endpoint. Law: whether the harness delivers an
|
||||||
|
event to extensions is settled in minutes by a throwaway probe extension that
|
||||||
|
timestamps `turn_end`/`agent_end` — never inferred from audio timing, which the
|
||||||
|
humanizer lags by seconds. Details: [dankvoice](core/dankvoice.md).
|
||||||
|
|
||||||
## 2026-10-19 — LazyVim installed as an NVIM_APPNAME profile
|
## 2026-10-19 — LazyVim installed as an NVIM_APPNAME profile
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user