telekit install paths. Run telekit voice status to check readiness. On Linux and Windows, voice starts off until you set it up. Once enabled, send a voice note to your bot in a private Telegram chat. Voice notes in a group are not transcribed. Telekit transcribes it locally and gives the text to the agent as your message. There is no preview in the chat unless you opt in.
Audio files work the same way. A caption goes before the transcript. The agent sees the text, not the audio file. If transcription fails, the agent receives the file instead.
To see the full transcript in chat before the reply:
telekit voice echo off hides it again. The default is off. The preview shows a microphone icon followed by the full transcript in italics. A long one arrives as more than one message. The change applies to the next voice note.
In chat, /settings set voice.echo on and /settings set voice.echo off do the same thing. /settings voice.echo shows the current value. /settings set voice.keep on keeps the original file. /settings set voice.keep off deletes it again.
The transcript is the message the agent sees. It stays in that session the same way a typed message does. /new drops it with the rest of the thread.
Original audio is deleted after the turn. To keep the file on this Mac:
telekit voice keep off deletes files after the turn again. Kept files stay in Telekit’s attachment folder and are not removed by /new. /settings set voice.keep on and off do the same thing.
Set up a local model
On a Mac with Homebrew, one command installs any missingffmpeg, ffprobe, and whisper-cli (from whisper.cpp), downloads the local model, and enables voice:
TELEKIT_VOICE_MODEL_DIR when you run setup. Telekit saves that directory for the background daemon, so it keeps working after the installer shell exits. An explicit runtime value takes precedence.
You do not need a voice flag on a fresh Mac install. If setup fails, Telekit reports the error and leaves the rest of the installation usable. Fix the issue and run telekit voice setup --yes to retry. An existing voice choice survives a normal reinstall. Use --voice with ./install.sh, the compiled runtime installer, or telekit install to retry or re-enable voice during installation. Use --no-voice with any of these installers to turn voice off and keep it off on later installs.
For a smaller, English-only model (about 148 MB):
--yes is optional. Without it, setup asks before installing missing tools in an interactive terminal. In a script, use --yes or install them first. If Homebrew is unavailable, install ffmpeg and whisper.cpp yourself and run setup again.
Use your own speech command
Your command receives a 16 kHz mono WAV path in place of{wav}. It must print UTF-8 transcript text to standard output and exit successfully. Pass it as a JSON argument list; Telekit does not run it through a shell.
ffmpeg and ffprobe to prepare the audio. The command may use any speech engine you choose.
Keep the command and any subprocesses in the foreground and in the same process group. Telekit stops that group on cancellation or timeout. A command that detaches a child cannot be stopped by Telekit.
Check or turn off
voice status lists missing tools, whether the preview echo is on, the last self-test, and a suggested fix. --json gives installers a machine-readable status. voice test prints the transcript and the time taken. voice off stops transcription and keeps the downloaded model; later installs respect that choice. Run setup again to enable it.
Telekit accepts notes up to 10 minutes and Telegram downloads up to 20 MB. If transcription fails, you get a short reason. The agent still receives the audio as a file. If voice is off, the agent receives the file without a transcript.
Speech recognition can mishear names and technical terms. Turn the preview on when you want the full transcript in the chat before the reply.