Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.
Design & media
AudioClaw Skills Voice Intake
Try itUse when AudioClaw Skills needs to understand a user voice message with AudioClaw ASR, including speech-to-text, model routing for deepthink or pro features,...
What it does
Use this skill when the user sends a voice message and AudioClaw should understand the content before replying.
The skill document
AudioClaw Skills Voice Intake
When to use
Use this skill when the user sends a voice message and AudioClaw should understand the content before replying.
Common triggers:
- A Feishu or chat bot receives an audio message instead of text.
- AudioClaw needs a transcript plus a clean user message payload.
- The workflow wants richer ASR features such as timestamps, sentiment, or speaker separation.
- The team wants one stable AudioClaw intake entrypoint instead of hand-written ASR requests.
- The channel stores inbound voice files as
.oggor.opus, and AudioClaw still needs one stable ASR path.
Do not use this skill for speech output. Use $audioclaw-skills-voice-reply for TTS.
Workflow
- Save the incoming audio file locally.
- Run
scripts/openclaw_voice_intake.pywith the audio path. - Let the script choose the best model when no model is forced:
sense-asr-deepthinkfor normal single-speaker voice understandingsense-asrwhen a language hint is providedsense-asr-prowhen timestamps, sentiment, speaker diarization, or punctuation are requestedsense-asr-litewhen hotwords are requested
- Use the JSON manifest it returns as the AudioClaw handoff:
transcript.normalized_textopenclaw.turn_payloadrouting.selected_model
- If
understanding.clarification_neededistrue, ask the user to repeat or resend the audio.
Runtime model
Official HTTP ASR API:
- Endpoint:
https://api.senseaudio.cn/v1/audio/transcriptions - Content type:
multipart/form-data - File size limit:
<=10MB - Practical local input suffixes accepted by this skill:
.wav,.mp3,.ogg,.opus,.flac,.aac,.m4a,.mp4
Supported response goals:
- plain transcript
- richer raw response passthrough
- AudioClaw-ready turn payload
The skill keeps two layers separate:
- ASR output from AudioClaw ASR
- AudioClaw packaging and clarification heuristics
API key lookup
This skill now treats SENSEAUDIO_API_KEY as the default API key source again.
Runtime rules:
- If the host app injects
SENSEAUDIO_API_KEYas an AudioClaw login token such asv2.public..., the shared bootstrap will replace it with the realsk-...value from~/.audioclaw/workspace/state/senseaudio_credentials.jsonbefore ASR starts. --api-key-envstill works, but the default runtime path isSENSEAUDIO_API_KEY.
Commands
Basic voice intake:
python3 scripts/openclaw_voice_intake.py \
--input /path/to/user_audio.mp3
Voice intake with richer AudioClaw structure:
python3 scripts/openclaw_voice_intake.py \
--input /path/to/meeting_clip.m4a \
--enable-punctuation \
--timestamp-granularity segment \
--enable-sentiment \
--out-json /tmp/openclaw_voice_turn.json
Force a specific model:
python3 scripts/openclaw_voice_intake.py \
--input /path/to/user_audio.mp3 \
--model sense-asr-deepthink
AudioClaw integration pattern
Recommended handoff:
- Channel adapter stores the inbound audio.
- AudioClaw calls
scripts/openclaw_voice_intake.py. - AudioClaw reads:
openclaw.turn_payload.roleopenclaw.turn_payload.contentopenclaw.turn_payload.metadata
- The normal dialogue pipeline continues as if the user typed the recognized text.
Operational rules:
- Keep the original audio path in metadata for debugging.
- Pass
languageonly when you are confident; otherwise let ASR auto-detect. - If you request timestamps, sentiment, or diarization, let the script choose
sense-asr-pro. - If transcript is empty, do not hallucinate a user intent. Ask for clarification.
Resources
scripts/senseaudio_asr_client.py- Multipart HTTP client for AudioClaw ASR
- Handles model routing validation and JSON or text responses
scripts/openclaw_voice_intake.py- Main runtime for AudioClaw
- Builds transcript, normalized user text, and turn payload
references/openclaw_voice_intake.md- Official ASR docs summary, model support notes, and AudioClaw payload examples
Related skills
Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.
Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.
Fetch raw ad creative, app, ranking, and revenue data from AdMapix as structured JSON.
Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.
Site audit, content writing, and competitor analysis for organic search rankings.
More from kikidouloveme79
Browse all skillsUse when AudioClaw Skills, Feishu, or Lark needs to send AudioClaw voice replies with runtime-switchable voice_id, emotion preset, or speaking style, includi...
Use when a user wants to rehearse a high-pressure conversation such as a performance review, reporting meeting, promotion defense, difficult manager conversa...
Use when a game, interactive story, or virtual world needs reusable NPC voice behavior, including fixed voice identity, catchphrases, relationship-aware dial...
Use when a team wants to generate multiple ad, spoken-copy, sales, or promo voice variants from one typed or spoken creative brief, transcribe voice memos wi...
当用户希望把 AudioClaw 变成一个持续监听、开口就说、停顿就回答的本机语音助手时使用。这个 skill 会在 macOS 上启动常驻监听流程,默认优先使用内置 Swift 录音器减少 Python 音频依赖;用户语音通过 SenseAudio ASR 转文字,再发给 audioclaw agent,并用...
当用户希望把 AudioClaw 变成一个持续监听、开口就说、停顿就回答的本机语音助手时使用。这个 skill 支持 macOS 和 Windows 两个平台:优先尝试 Python 录音链路,macOS 上再提供原生 Swift 录音兜底;用户语音通过 SenseAudio ASR 转文字,再发给 audioc...