Skip to main content

Push-to-talk voice conversations powered by Whisper and Claude Code

Project description

MicroClaw Streams

Voice calls with Claude – talk it out. Voice in, voice out. Push-to-talk voice conversations powered by Whisper and Claude Code.

Whisper runs entirely on your machine — no audio is sent to the cloud. Only the transcribed text is sent to Claude.

Just three dependencies: numpy, sounddevice, and openai-whisper.

Setup

pip install microclaw-streams

Requires macOS (uses the built-in say command) and Claude Code to be installed and authenticated.

Usage

microclaw-streams
microclaw-streams --model turbo
microclaw-streams --resume <session-id>
microclaw-streams -l sv -e high

Options

Flag Description Default
-m, --model Whisper model size (tiny, base, small, medium, large, turbo) base
-l, --language Transcription language (e.g. en, sv, de) auto
-e, --effort Claude effort level (low, medium, high, max) low
-r, --resume Resume a previous Claude Code session by its session ID
--fp16 Use half-precision inference (requires CUDA GPU) off

Any additional flags you pass are forwarded directly to the claude CLI. For example:

microclaw-streams --max-turns 5 --permission-mode plan --model turbo

Here --model turbo is consumed by MicroClaw (Whisper model), while --max-turns 5 and --permission-mode plan are passed through to Claude Code. See claude --help for all available options.

Controls

Key Action
Enter Start/stop recording
A Record with auto-approve (allows edits, writes, bash)
W Record with web search enabled
T Type a message instead of speaking
E Cycle effort level
L Cycle transcription language
Space Interrupt speech output

How it works

  1. Record — Press Enter to start recording, press Enter again to stop
  2. Transcribe — Whisper transcribes your speech locally
  3. Respond — Claude Code processes your message and streams a response
  4. Speak — Voice output is spoken via macOS say command

Requirements

  • macOS (uses say for text-to-speech)
  • Python 3.10+
  • Claude Code CLI

Example Conversation

Loading Whisper 'turbo' model locally (no audio leaves your machine)...
Ready!

ENTER=record  A=auto-approve  T=manually type input  E=effort [low]  L=lang [auto]
Recording ... press ENTER to stop.
Transcribing...
You: Hey what's up how come we have a bunch of html files in this repo?

          Voice: Let me take a quick look at what HTML files are in the repo.
          [Glob **/*.html]
          [Glob result]
          index.html
          demo.html

          Voice: Actually, there are only two HTML files — an **index.html** and a **demo.html**. Not really a bunch. Want me to look into what they're for?
          [5.5s | 4 in | 123 out | 10254 cached | $0.0729]


ENTER=record  A=auto-approve  T=manually type input  E=effort [low]  L=lang [auto]
Recording ... press ENTER to stop.
Transcribing...
You: Yup, for sure.

          Voice: Sure, let me check them out.
          [Read /home/user/index.html]
          [Read result]
          Claude requested permissions to read from /home/user/index.html, but you haven't granted it yet.

          [Read /home/user/demo.html]
          [Read result]
          Claude requested permissions to read from /home/user/demo.html, but you haven't granted it yet.

          Voice: Hmm, looks like I need permission to read those files. Could you grant me access?
          [6.4s | 4 in | 147 out | 20759 cached | $0.0158]


ENTER=record  A=auto-approve  T=manually type input  E=effort [low]  L=lang [auto]
Recording (auto-approve ON) ... press ENTER to stop.
Transcribing...
You: Here you go.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

microclaw_streams-0.1.2.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

microclaw_streams-0.1.2-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

Details for the file microclaw_streams-0.1.2.tar.gz.

File metadata

  • Download URL: microclaw_streams-0.1.2.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for microclaw_streams-0.1.2.tar.gz
Algorithm Hash digest
SHA256 65c98a3bc50a0843a487b0f47c4360dfe47b678fe5f017e8c9bee1aa3fa7553c
MD5 091a3a75cb8602a34d5255f723651cdd
BLAKE2b-256 cc9a6b0f4c8bfa660715d41a95c9bd8e71d922cb0e64f233ba209431d1697bc1

See more details on using hashes here.

File details

Details for the file microclaw_streams-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for microclaw_streams-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5bf878b1eb251281788fc5513683720c62a5b2f820c5e8d24f0d47362105aa5b
MD5 36d9033c8f550f7a3b26b1925774783d
BLAKE2b-256 312e3ab2e6971f219f4eb6bdafae49c0c8fb4022a16222bea12b749b0ad9d986

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page