AI voice and x402 wallet capabilities for OpenClaw agents.
ClawVoice by ForgeMesh Labs gives OpenClaw agents voice output, optional push-to-talk voice input, and a local Base USDC x402 wallet for paid agent calls.
Package name: @forgemeshlabs/x402-agent-voice
Commands: clawvoice, agentvoice, or x402-agent-voice
Homepage: https://forgemesh.io
Feedback: clawdbotworker@gmail.com
- Text-to-speech for OpenClaw agents.
- Local, hosted, or hybrid voice modes.
- Optional push-to-talk speech-to-text on supported platforms.
- x402 payments for hosted ForgeMesh Voice fallback.
- Local Base USDC x402 wallet for paid agent calls.
- Spend caps, balance checks, and withdrawal for leftover USDC.
- Plug-and-play OpenClaw / ClawHub skill packaging.
Search terms: ClawVoice, OpenClaw Voice, OpenClaw Agent Voice, AI Voice, Agent Voice, x402 Voice, Wallet Voice, Voice Skill, OpenClaw Skill.
From the release tarball:
npm install -g ./forgemeshlabs-x402-agent-voice-0.3.18.tgzThen run setup:
clawvoice init --mode hybrid --micUse hosted mode if you do not want local voice setup:
clawvoice init --mode hostedShort aliases also work:
agentvoice init --mode hybrid --micThe old command still works:
x402-agent-voice init --mode hybrid --micGlobal npm installs are not automatically scanned by OpenClaw. To make ClawVoice appear in the OpenClaw Skills sidebar, link the installed package into your OpenClaw skills folder:
mkdir -p ~/.openclaw/skills
ln -s "$(npm root -g)/@forgemeshlabs/x402-agent-voice" ~/.openclaw/skills/clawvoice-x402
openclaw gateway restartUse the restart command your OpenClaw install supports if it differs. The symlink keeps future npm update -g @forgemeshlabs/x402-agent-voice updates connected to the same skill registration.
ClawVoice is a speech tool, not an automatic replacement for OpenClaw's chat renderer. Your agent speaks when it calls the CLI.
For one reply:
Use ClawVoice to say "hello, my agent voice is working"
For the rest of a chat session:
Use ClawVoice to speak your responses out loud from now on.
After that instruction, the agent should call clawvoice speak "<reply>" for normal user-facing replies. Long answers should be summarized aloud and written fully in chat.
To stop current playback:
Stop talking.
The agent should run:
clawvoice stopThat stops the current ClawVoice audio and disables session voice mode until you ask for spoken replies again.
Setup asks how your agent should speak:
| Mode | Meaning |
|---|---|
local |
Free local voice after setup. The voice runtime runs on your machine. |
hosted |
No local voice install. Your agent pays ForgeMesh Voice per call through x402. |
hybrid |
Local first, hosted fallback. This is the recommended mode. |
Setup creates a unique local Base USDC wallet the first time it runs for a user profile. If ~/.x402-agent-voice/wallet.json already exists, setup reuses that wallet instead of replacing it.
Each machine, container, or user profile gets its own wallet unless you deliberately copy the local wallet file. Do not share wallet.json, check it into git, paste it into chat, or upload it to support.
clawvoice voice-check
clawvoice stop
clawvoice wallet
clawvoice balance
clawvoice withdraw --to 0xYourWallet --amount all
clawvoice products
clawvoice voice
clawvoice speak "hello world"wallet shows the public address, chain, token, and spend policy. It does not show the private key.
Setup includes an optional Customize your agent's voice step. It lets you choose:
- Voice ID
- Language
- Hosted endpoint tier
- Preset
- Mix
- Expression
- Expression level
- Expression controls
You can also set those options during noninteractive setup:
clawvoice init --mode hybrid --mic --voice M1 --lang en --tier base --preset calm --mix narrator --expression cheerful --level 0.7 --control speed=1.1Check the current voice options:
clawvoice voiceSet a voice ID:
clawvoice voice M1Set a language code:
clawvoice voice --lang esSet a hosted endpoint tier:
clawvoice voice --tier proSet a preset or mix:
clawvoice voice --preset calm
clawvoice voice --mix narratorSet expression and intensity:
clawvoice voice --expression cheerful --level 0.7Set expression controls:
clawvoice voice --control speed=1.1 --control pitch=0.2Set everything at once:
clawvoice voice --voice F1 --lang fr --tier base --preset calm --mix narrator --expression cheerful --level 0.7 --control speed=1.1Clear a preset, mix, expression, or level:
clawvoice voice --preset none
clawvoice voice --mix none
clawvoice voice --expression none
clawvoice voice --level none
clawvoice voice --clear-controlsList the built-in language guide:
clawvoice voice --languagesThen test it:
clawvoice speak "testing the new voice"Voice IDs, language codes, endpoint tiers, presets, mixes, expressions, expression levels, and expression controls depend on the active local engine or hosted voice service. Defaults are M1, en, base, no preset, no mix, no expression, no level, and no expression controls.
Use clawvoice voice --lang <code> to set the language. The hosted service may support additional aliases; these are the built-in global-friendly codes and display names.
| Code | Language | Localized display name |
|---|---|---|
en |
English | ClawVoice Agent Voice |
es |
Español | ClawVoice Voz de agente |
fr |
Français | ClawVoice Voix d'agent |
de |
Deutsch | ClawVoice Agentenstimme |
it |
Italiano | ClawVoice Voce agente |
pt |
Português | ClawVoice Voz de agente |
nl |
Nederlands | ClawVoice Agentstem |
pl |
Polski | ClawVoice Głos agenta |
cs |
Čeština | ClawVoice Hlas agenta |
hu |
Magyar | ClawVoice Ügynökhang |
ro |
Română | ClawVoice Vocea agentului |
el |
Ελληνικά | ClawVoice Φωνή πράκτορα |
sv |
Svenska | ClawVoice Agentröst |
da |
Dansk | ClawVoice Agentstemme |
fi |
Suomi | ClawVoice Agenttiääni |
no |
Norsk | ClawVoice Agentstemme |
ru |
Русский | ClawVoice Голос агента |
uk |
Українська | ClawVoice Голос агента |
tr |
Türkçe | ClawVoice Ajan sesi |
ar |
العربية | ClawVoice صوت الوكيل |
he |
עברית | ClawVoice קול סוכן |
hi |
हिन्दी | ClawVoice एजेंट आवाज़ |
bn |
বাংলা | ClawVoice এজেন্ট ভয়েস |
id |
Bahasa Indonesia | ClawVoice Suara agen |
ms |
Bahasa Melayu | ClawVoice Suara ejen |
fil |
Filipino | ClawVoice Boses ng ahente |
vi |
Tiếng Việt | ClawVoice Giọng nói tác nhân |
th |
ไทย | ClawVoice เสียงเอเจนต์ |
ja |
日本語 | ClawVoice エージェント音声 |
ko |
한국어 | ClawVoice 에이전트 음성 |
zh |
中文 | ClawVoice 智能代理语音 |
The agent wallet is meant to hold a small working balance. If there is leftover USDC, send it back to your main wallet:
clawvoice withdraw --to 0xYourWallet --amount allYou can also withdraw a specific USDC amount:
clawvoice withdraw --to 0xYourWallet --amount 1.25Withdrawals send Base USDC from the local agent hot wallet. The command prints a summary first and asks for confirmation before broadcasting. Use --yes only for automation you trust.
Important: USDC transfers on Base require a small amount of Base ETH for gas. x402 payments usually do not require you to think about ETH, but a normal wallet-to-wallet USDC transfer does.
Push-to-talk voice input is optional functionality.
clawvoice install-mic
clawvoice talkTo talk to your agent with the microphone, run clawvoice install-mic once, then start a conversation with clawvoice talk. If local voice output is not installed, ClawVoice can still speak through hosted voice when the wallet is funded.
You can also transcribe one recording without starting a conversation:
clawvoice listenThere is no hold-to-talk hotkey yet. In the terminal flow, start clawvoice talk, speak normally, then press Enter when you are done talking. ClawVoice transcribes what you said, sends it to the agent, and speaks the reply.
listen records from the microphone until you press Enter, then transcribes locally with faster-whisper.
talk runs a conversation loop:
record your voice -> transcribe locally -> send words to your agent -> speak the reply
Wake word and always-on listening are not shipped yet.
| Capability | macOS | Linux | Windows |
|---|---|---|---|
| Wallet creation | Supported | Supported | Supported |
| Hosted x402 voice | Supported | Supported | Supported |
| Local text-to-speech | Supported | Supported | Use WSL2 |
| Playback | Supported | Supported | Partial / WSL2 recommended |
| Push-to-talk voice input | Supported with FFmpeg + faster-whisper | Supported with FFmpeg + faster-whisper | WSL2 recommended |
| Wake word / always-on listening | Not shipped | Not shipped | Not shipped |
Windows users can use wallet and hosted voice flows. Native Windows microphone recording, local voice install, and playback still need a compatibility pass. Use WSL2 for the full local path.
Hosted voice and other paid x402 calls are guarded before any payment is signed.
Default policy:
| Setting | Default |
|---|---|
| Per-call cap | $0.05 |
| Daily cap | $0.25 |
| Session voice cap | $0.10 |
| Approval before paid calls | On |
Spend records are stored locally at:
~/.x402-agent-voice/spend.jsonl
Configuration is stored locally at:
~/.x402-agent-voice/config.json
For local or hybrid mode:
clawvoice install-voiceTo see what it would do first:
clawvoice install-voice --dry-runLocal voice may download Python packages and model files. It needs Python 3.9-3.12 (onnxruntime has no wheels for 3.13+); the installer probes python3.12, python3.11, python3.10, python3.9, then python3, or you can point X402_VOICE_PYTHON at a specific interpreter. Hosted mode avoids that setup and uses x402 payments instead.
The package includes a starter list of ForgeMesh x402 products:
clawvoice productsAgentCash and X402Scan discovery can still be used for broader x402 discovery.
- Treat the generated wallet as a small-balance hot wallet.
- Each fresh user profile gets a unique local wallet. Reinstalls reuse the existing local wallet unless you reset local state.
- Do not fund it with more than you are comfortable letting an agent spend.
- Do not share
~/.x402-agent-voice/wallet.json; it contains the private key. - Use
clawvoice withdraw --to 0xYourWallet --amount allto recover leftover USDC. - The private key stays on your machine.
- The private key is not printed by setup,
wallet,voice-check, or normal commands. - Paid calls require approval unless you explicitly pass
--approve.
Please send feedback, bugs, and confusing setup steps to:
clawdbotworker@gmail.com
Helpful details:
- OS and Node version.
- Setup mode: local, hosted, or hybrid.
- Whether
voice-checkreports local server, FFmpeg, and Whisper as ready. - Whether
speak,listen, andtalkworked. - Any payment approval prompt that felt unclear.