Skip to content

feat: ship only the kokoro voices + hold replies terse while voice is on - #12

Merged
42piratas merged 4 commits into
mainfrom
chore/alberto-20260819-johnny-voice-list
Aug 19, 2026
Merged

feat: ship only the kokoro voices + hold replies terse while voice is on#12
42piratas merged 4 commits into
mainfrom
chore/alberto-20260819-johnny-voice-list

Conversation

@42piratas

@42piratas 42piratas commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

Two things, both aimed at /johnny being shorter — the placeholder you type against, and the replies you get back.

Voices

The argument-hint ran long enough to be unreadable while typing. Matilda and Charlie (ElevenLabs) are gone from the shipped registry, and the per-voice engine tag went with them — the remaining five are all kokoro, so (kkr) carried no information.

  • commands/johnny.md — hint is now Sarah·en | Dora·pt | Fenrir·en | Alfred·en-GB | Alex·pt | off; voice table and call format trimmed to match.
  • config.sh — the two eleven rows dropped from voice_registry.

Breaking: voice Matilda pt "..." and /johnny Charlie en no longer resolve. engines/eleven.sh stays — the engine still works for anyone who adds their own row and a key.

Brevity

The speak-first, write-terse contract was stated once at activation and then drifted. hooks/turn-mark.sh already runs on UserPromptSubmit and already knows whether voice is active, and stdout from that event is added to the model's context — so re-asserting the contract every turn costs one printf in a hook that is already registered. It carries the resolved voice name, so the contract also survives a compaction that drops the slash command.

Verified: voice voices lists the five kokoro names and nothing else; the hook prints the reminder with voice on, prints nothing with voice off, still stamps the turn marker either way, and is shellcheck-clean.

Ânderson Q added 2 commits August 19, 2026 09:46
The argument-hint placeholder ran long enough to be unreadable when typing
/johnny. Drop the two ElevenLabs entries and the per-voice engine tag — the
remaining five are all kokoro, so the tag carried no information. Both voices
stay in config.sh's registry and still work when named explicitly.
Matilda and Charlie were the only multi-language voices and the only ones
needing a cloud key. Removing them from voice_registry leaves five kokoro
voices, all single-language, so no name needs a language argument.

The eleven engine itself stays in engines/ — add your own row with a key
from your account.
@42piratas 42piratas changed the title docs(johnny): list only the kokoro voices in the slash command feat(voices)!: ship only the kokoro voices Aug 19, 2026
The slash command sets the speak-first, write-terse contract once at
activation. A long session drifts off it, and nothing pulls it back.

turn-mark.sh already runs on UserPromptSubmit and already knows whether voice
is active for the session, and stdout from that event is added to the model's
context — so the reminder costs one printf in a hook that is already
registered. It carries the resolved voice name, so the contract survives a
compaction that drops the slash command.
@42piratas 42piratas changed the title feat(voices)!: ship only the kokoro voices feat: ship only the kokoro voices + hold replies terse while voice is on Aug 19, 2026
The comment above the registry still described Matilda and Charlie as the
two voices needing a language argument. Neither is in the registry any more,
and every shipped row is single-language kokoro.
@42piratas
42piratas merged commit 052b444 into main Aug 19, 2026
1 check passed
@42piratas
42piratas deleted the chore/alberto-20260819-johnny-voice-list branch August 19, 2026 13:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant