Repository navigation
voice presets: zany persona per voice - #3
Merged
Merged
Conversation
1 of 4 tasks
OpenAI's voice descriptions are sparse, so we lean in and assign a distinct personality to each voice in the Realtime catalog: alloy → gameshow (1970s game show host) ash → noir (hardboiled film-noir detective) ballad → bard (medieval bard with light rhyming) coral → influencer (overcaffeinated LA wellness influencer) echo → thespian (classically trained Shakespearean actor) sage → monk (deadpan zen monk; one-line koan opener) shimmer → diva (Broadway diva, perpetual Act II climax) verse → sportscaster (live play-by-play announcer) Plus the practical `concise` (sage) and the existing `default` (marin) and `jarvis` (cedar). Each persona reminds the model to stay accurate — flavor is on top of correct behavior, not in place of it. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
zdql
force-pushed
the
feature/zany-personas
branch
from
May 26, 2026 18:06
b4b36ee to
95ef0b0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Pairs every OpenAI Realtime voice with a distinct personality preset, so the voice catalog ships as a catalog and not a single character.
alloygameshow— 1970s game show hostashnoir— hardboiled film-noir detectiveballadbard— medieval bard with light rhymingcedarjarvis(existing)coralinfluencer— overcaffeinated LA wellness influencerechothespian— Shakespearean actormarindefault(existing)sageconcise(existing) +monk— deadpan zen monkshimmerdiva— Broadway divaversesportscaster— live play-by-playEach persona reminds the model to stay accurate; the flavor is on top of correct behavior, not a replacement.
Test plan
cargo test(23 passing — preset tests cover resolution edge cases).gamechat --preset noir --print-realtime-configshowsvoice: "ash"+ noir persona appended to base instructions.🤖 Generated with Claude Code