claudio

Listening and turns

Tune when your turn ends, whether you can talk over a reply, and who claudio listens to.

The defaults suit one person talking at a desk. Change them when claudio cuts you off, waits too long, keeps stopping itself, or answers other people in the room.

Tune when your turn ends

The ears are Deepgram Flux. While you speak, Flux keeps a confidence that you have finished, from 0 to 1. Three settings act on it:

  • eager_eot (default 0.3): the brain starts on your words early, before your turn is surely over
  • eot (default 0.7): your turn counts as finished
  • eot_timeout_ms (default 1500): after this much silence your turn ends, whatever the confidence

Find what you notice, then make the change:

IfRun
It answers before you finish a thoughtclaudio set eot 0.8 and claudio set eot_timeout_ms 2500
It waits too long after you stopclaudio set eot 0.6 or claudio set eot_timeout_ms 1000
Replies are slow to startclaudio set eager_eot 0.2, so the brain starts earlier

An early start is silent until it counts. Its audio is held until your turn is final, and plays only if your final words match the ones it started on. If you carry on talking instead, or your final words differ, the early reply is dropped without a note. Your line prints once your turn is final. A dropped start costs brain time and some speech synthesis, nothing you hear.

Each change reconnects the ears at once, so you can tune while you talk: “set eot to 0.8”.

eager_eotnumber

confidence at which the brain starts on a turn early, before you have surely finished

default
0.3
accepts
0 to 1
env
CLAUDIO_EAGER_EOT
eotnumber

confidence at which your turn counts as finished

default
0.7
accepts
0 to 1
env
CLAUDIO_EOT
eot_timeout_msinteger

silence after which your turn ends whatever the confidence

default
1500
accepts
100 to 10000
env
CLAUDIO_EOT_TIMEOUT_MS

Talk in another language

Switch the ears to Flux's multilingual model:

claudio set ears flux-general-multi

The persona is written in English. To have replies in your language, say so in PERSONA.md, and pick a voice that speaks it.

Interrupt a reply by talking over it

With barge_in on, the default, talking over a reply pauses it. What you say next decides what happens:

  • A real sentence cuts the reply and becomes your next turn.
  • A backchannel, such as “mm-hm” or “okay”, lets the reply carry on from the sentence it was on. The spoken commands reference lists the words.
  • Nothing for 3 seconds also lets it carry on.

On speakers, this needs the echo canceller, or the mic hears the reply and pauses it. The banner shows echo cancel on when the echo canceller runs. Without it, use headphones.

Turn barge-in off when a noisy room keeps pausing replies:

claudio set barge_in false

Replies then play through. The mic is silenced from the moment your turn ends until the reply ends, so nothing you say while it answers is heard; an early start never cuts you off mid-sentence. Press Enter to cut a reply.

barge_inboolean

talking over it pauses it

default
true
accepts
true · false
env
CLAUDIO_BARGE_IN

Use push to talk

With push to talk on, the mic stays closed until you press Enter, and closes again when your turn ends:

claudio set push_to_talk true

The state line reads push to talk · Enter opens the mic while the mic is closed. Typed lines still work as turns. Turning it off opens the mic at once.

push_to_talkboolean

the mic stays closed until you press Enter, for one turn

default
false
accepts
true · false
env
CLAUDIO_PUSH_TO_TALK

Share a room with other people

With address_me on, only turns that start with its name count, “claudio” unless you give it another (below):

claudio set address_me true

“claudio, what's the sequencer doing?” works: the name is dropped before the brain sees the turn. Any other turn is shown dim and ignored, and the first one says why: · not for me: start with claudio. “slash address me off” (said with the name) turns it off. Slash commands need the name too: “claudio, slash mute”.

To be called something else, give it a name of one to three words. It answers to that name and calls itself by it, and the ears are told to listen for it:

claudio set name nyx

Or say “slash name Nyx”.

Say the name alone (“Nyx.”) and it shows · listening: a turn you start within 8 seconds counts without the name, so “Nyx.” then “What's the sequencer doing?” works.

Other voices still pause a reply while barge_in is on. The reply carries on about 3 seconds after they stop.

address_meboolean

only turns that start with its name count, for a room with other people

default
false
accepts
true · false
env
CLAUDIO_ADDRESS_ME
nametext

what it answers to, and calls itself: one to three words

default
claudio
accepts
text
env
CLAUDIO_NAME

On this page