# Bolt Assistant settings. # # Copy this file to .env and fill in the three required values: # # cp .env.example .env (bash) copy .env.example .env (cmd/PowerShell) # # Lines that carry a value below are working defaults; remove the leading # # only to change one. Blank means "not set". # ── server ─────────────────────────────────────────────────────────────────── # Where your Bolt server's desk API listens (port 5002 in the default setup). BOLT_SERVER_URL= # A desk API key for this device (ask Bolt to "create an api key for Bolt # Assistant" — it arrives as a file through the heartbeat). DESK_API_KEY= # Its own conversation on the server. Defaults to pet-assistant-; # the "pet-" prefix gives it voice-client behaviour (short, speakable replies). # DESK_SESSION_ID= # The ElevenLabs voice the server's /desk/tts speaks in (a voice id). ELEVENLABS_VOICE_ID= # TTS_SAMPLE_RATE=16000 # STREAMING_REPLIES=true # speak sentences as they form; false waits for the whole reply # ── audio devices ──────────────────────────────────────────────────────────── # Blank = the system default; a number = the device index; anything else is a # name substring (sounddevice's rules). `run.bat --devices` lists them. # MIC_DEVICE= # SPEAKER_DEVICE= # ── wake phrases ───────────────────────────────────────────────────────────── # With REQUIRE_WAKE_WORD off (the default) the open mic itself is the # activation: anything that sounds like speech is sent and answered. Set it to # true to need a phrase first ("Hey Bolt", "Thunderbolt", "Hey Assistant"...). # REQUIRE_WAKE_WORD=false # WAKE_WORDS=hey bolt,bolt,thunderbolt,hey thunderbolt,ok bolt,okay bolt,yo bolt,hi bolt,hey assistant,ok assistant,okay assistant,hey bolts,hey volt,hey bold,hey boat,okay volt,hey thunder bolt,thunder bolt # These count anywhere in what was said ("what's the weather, assistant?"). # ANYWHERE_WAKE_WORDS=assistant # ── listening (local voice-activity detection) ─────────────────────────────── # Nothing leaves the machine until the detector hears speech. Raise # VAD_RMS_THRESHOLD if background noise keeps getting transcribed; lower it if # you have to shout. # VAD_RMS_THRESHOLD=500 # VAD_START_FRAMES=3 # loud 80 ms frames in a row before speech starts # VAD_SILENCE_END_SEC=0.8 # quiet seconds that end an utterance # MIN_UTTERANCE_SEC=0.35 # shorter bursts are never sent # MAX_UTTERANCE_SEC=12 # the longest utterance sent # COMMAND_WAIT_SEC=8 # after a bare "Hey Bolt", how long for the request # FOLLOW_UP_SEC=8 # when the reply ends on a question, keep listening # FOLLOW_UP_MAX_TURNS=5 # CHIMES=true # ── what Bolt may do on this machine ───────────────────────────────────────── # There's no screen to approve things on, so ASSISTANT_COMMANDS decides: # off nothing runs # read (default) filectl list/read only # all everything, shell commands and file writes included, like Bolt-Pet ASSISTANT_COMMANDS=read # COMMAND_TIMEOUT_SECONDS=60 # ── heartbeat: reminders and delivered files ───────────────────────────────── # Every HEARTBEAT_SECONDS the assistant reports in to the server — the channel # Bolt's reminders and any files he delivers to this client arrive on. # Announcements are spoken when the mic is idle, and files land in # BOLT_DOWNLOAD_DIR (default ~/Downloads/Bolt) without overwriting what is # already there. Set to 0 to turn the heartbeat off. HEARTBEAT_SECONDS=60 # BOLT_DOWNLOAD_DIR=