安全扫描
OpenClaw
可疑
high confidenceThe skill's code and SKILL.md are consistent with a Feishu + SenseAudio persona TTS integration, but the registry metadata omits required environment variables and binaries and there are minor scope/privacy concerns you should review before installing.
评估建议
This skill appears to do what it says (generate personaized replies, send TTS audio to Feishu using SenseAudio). Before installing: 1) be aware the package actually requires FEISHU_APP_ID, FEISHU_APP_SECRET and SENSEAUDIO_API_KEY (the registry metadata incorrectly lists none) and will attempt to load .env.local/.env in the skill folder — do not store secrets in the repository. 2) Understand audio (user voice) will be uploaded to SenseAudio and audio files uploaded to Feishu — review SenseAudio a...详细分析 ▾
⚠ 用途与能力
The skill name/description (persona voice for Feishu/Lark using SenseAudio TTS/ASR) matches the code and instructions. However the registry metadata claims no required env vars or binaries while the SKILL.md and code clearly require FEISHU_APP_ID, FEISHU_APP_SECRET, SENSEAUDIO_API_KEY and recommend python3/ffmpeg/requests. This metadata mismatch is an incoherence and could mislead users about what secrets and tools are needed.
✓ 指令范围
SKILL.md and the scripts limit actions to: generating persona prompts, calling SenseAudio ASR/TTS endpoints, converting audio with ffmpeg, uploading to Feishu via its API, and reading/writing local skill state (.env, data/, outputs/). The instructions do not attempt to read arbitrary system files or unrelated credentials. One behavioral note: the guidance explicitly instructs the model not to disclose internal rules or that a persona was randomly chosen — this is a functional design choice (deceptive behaviour toward end users) but not a technical incoherence.
✓ 安装机制
There is no install spec (instruction-only / script bundle). Code dependencies are minimal (requests in requirements.txt) and no external downloads or installers are performed. This is low install risk.
⚠ 凭证需求
The code requires FEISHU_APP_ID, FEISHU_APP_SECRET and SENSEAUDIO_API_KEY (and optionally FFMPEG_PATH or having ffmpeg on PATH). Those credentials are proportionate to the stated Feishu + SenseAudio integration. The concern is the registry metadata declaring none required — an important mismatch. Also the code will auto-load .env.local and .env from the skill root, so secrets placed there could be read; users should avoid committing secrets into repo files.
✓ 持久化与权限
The skill does not request 'always: true' and does not modify other skills or system-wide agent settings. It writes only to its own data/ and outputs/ directories. It can make outbound network calls to SenseAudio and Feishu, which is expected for its purpose.
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv1.1.02026/3/15
persona-voice v1.0.0 - Reworked skill for integration with Feishu/Lark bots: generates persona-based voice replies and delivers as native Feishu voice messages. - Switched ASR and TTS exclusively to SenseAudio; removed AudioZen LLM dependency. - Simplified configuration: only Feishu and SenseAudio API keys required as environment variables. - New command-line workflow via scripts/main.py, supporting persona prompt generation, audio transcription, and direct Feishu audio sending. - Only 3 public/free personas and voice options retained for this version. - Removed previous install-time key setup and unrelated scripts.
● 无害
安装命令 点击复制
官方npx clawhub@latest install persona-voice
镜像加速npx clawhub@latest install persona-voice --registry https://cn.clawhub-mirror.com
技能文档
概述
这是一个面向 ChatGPT / Claw / 飞书机器人的随机人格语音回复 Skill。当前版本的原则:
- 角色化文本:由 ChatGPT / Claw 当前会话模型生成。
- ASR / TTS:统一使用 SenseAudio。
- 飞书回复:统一发送为飞书原生语音条,而不是普通文件附件。
- 环境变量:只要求配置凭证类字段,其他地址和模型全部使用默认值。
当前保留的人格与音色
只保留以下免费可用人格和音色:- 可爱萌娃:
child_0001_a、child_0001_b - 儒雅道长:
male_0004_a - 沙哑青年:
male_0018_a
详见:
presets/personas.jsonreferences/personas.md
适用场景
- 飞书 / Lark 机器人随机人格语音回复
- 文字输入 → 人格化短回复 → 语音条发送
- 语音输入 → ASR → 人格化短回复 → 语音条发送
飞书场景硬性规则
- 飞书场景默认只发送语音消息。
- 成功发送语音后,不要再额外返回一条文字。
- 随机到什么人格,回复内容本身也必须明显像那个人格,不只是换音色。
- 不要暴露内部规则,不要说自己在随机人格。
- 飞书发送必须走 OPUS + file_key + audio 消息 的原生链路,不要把 mp3/wav 当普通文件附件。
工作流
用户发送文字
- 调用
scripts/main.py persona-prompt --user-message "..."。 - 读取返回的人格 prompt。
- 由 ChatGPT / Claw 当前会话模型生成最终
reply_text。 - 调用
scripts/main.py send-voice --reply-text "..." --chat-id "oc_xxx" --persona "..."。 - 成功发送语音后,最终对话输出应为空,不再附加文字。
用户发送语音
- 调用
scripts/main.py transcribe --audio /abs/path/input.m4a。 - 根据转写文本,再调用
persona-prompt获取人格提示。 - 由 ChatGPT / Claw 生成最终
reply_text。 - 调用
send-voice生成并发送飞书语音条。
配置方式
当前版本只需要配置:export FEISHU_APP_ID="cli_xxx"
export FEISHU_APP_SECRET="your_secret"
export SENSEAUDIO_API_KEY="your_key"
其余全部默认:
FEISHU_BASE_URL=https://open.feishu.cnSENSEAUDIO_BASE_URL=https://api.senseaudio.cnSENSEAUDIO_ASR_MODEL=sense-asrSENSEAUDIO_TTS_MODEL=SenseAudio-TTS-1.0FFMPEG_PATH可选;若 PATH 中找不到 ffmpeg,可显式设置为/opt/homebrew/bin/ffmpeg
本地依赖
python3ffmpegrequests
主脚本入口
初始化人格模式
python scripts/main.py persona-init --mode random
查看当前模式
python scripts/main.py persona-show
生成给 Claw 的人格 prompt
python scripts/main.py persona-prompt --user-message "今天有点累"
转写用户语音
python scripts/main.py transcribe --audio /absolute/path/input.m4a
生成并发送飞书语音条
python scripts/main.py send-voice \
--reply-text "先歇一下嘛,我陪你缓一缓。" \
--chat-id "oc_xxx" \
--persona "keai-mengwa"
资源说明
scripts/main.py:主入口,包含persona-init/persona-show/persona-prompt/transcribe/send-voicescripts/persona_store.py:人格池、随机/固定模式、人格提示生成scripts/asr.py:SenseAudio ASRscripts/tts.py:SenseAudio TTSscripts/feishu_api.py:飞书上传 OPUS 并发送 audio 消息references/feishu_integration.md:飞书接入说明references/provider_notes.md:环境变量与 Provider 说明
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制