← Back to Skills Marketplace
tangc

Feishu Send Voice

by tangzhan_aicoding · GitHub ↗ · v0.1.0
cross-platform ⚠ suspicious
538
Downloads
2
Stars
5
Active Installs
1
Versions
Install in OpenClaw
/install feishu-send-voice
Description
将文本转为语音并通过飞书 audio 消息发送给指定用户。用于“给用户发语音”“把这段话转语音并发飞书”“语音播报结果”等场景,尤其当普通文件发送会降级为文本时使用。仅在指定 channel=feishu 时触发。优先在需要高可达、可听播报时使用。
README (SKILL.md)

Feishu Voice TTS

Overview

把文本转换为语音(edge-tts),再转码为飞书可用的 Opus(OGG 容器),调用飞书开放平台“先上传文件再发 audio 消息”的标准流程发送,避免“直接发文件被降级成文本”。

Quick Start

执行脚本:

skills/feishu-voice-tts/scripts/send_feishu_voice.sh "用户你好,这是一条语音消息" "user_open_id"

参数:

  1. text(必填)要播报的文本
  2. open_id(必填,可用环境变量替代)飞书用户 open_id
  3. voice(可选)edge-tts 音色,默认 zh-CN-YunxiNeural

环境变量(可选,优先级高于配置文件):

  • FEISHU_APP_ID
  • FEISHU_APP_SECRET
  • FEISHU_OPEN_ID
  • EDGE_TTS_VOICE

Workflow

按以下顺序执行,不要跳步:

  1. 文本转语音:edge-tts 生成 mp3
  2. 转码:ffmpeg 转为 audio/ogg(opus 编码,16k 单声道)
  3. 获取 tenant token:飞书 /auth/v3/tenant_access_token/internal
  4. 上传语音文件:飞书 /im/v1/files,拿 file_key
  5. 发送 audio 消息:飞书 /im/v1/messagesmsg_type=audio + file_key

成功时脚本输出:

{"success": true, "message_id": "...", "file_key": "..."}

Requirements

  • ffmpeg 可用
  • edge-tts 可用(脚本自动尝试以下入口):
    • edge-tts
    • ~/Library/Python/3.14/bin/edge-tts
    • python3 -m edge_tts
  • 本机存在 OpenClaw 配置:~/.openclaw/openclaw.json
    • 默认读取:channels.feishu.accounts.feishu-main.appId/appSecret

Failure Handling

  • 缺少依赖:按报错安装(例如 python3 -m pip install --user edge-tts
  • 飞书 API 失败:脚本会直接输出原始 JSON 错误,按 code/msg 排查
  • 被降级成文本:确认发送的是 msg_type=audiocontent 里是上传后的 file_key

scripts/

  • scripts/send_feishu_voice.sh:完整自动化脚本(TTS + 转码 + 上传 + 发送)
Usage Guidance
This skill appears to be what it claims (text→TTS→send to Feishu). Before installing or running it: 1) verify the script source/trustworthiness (source is listed as unknown); 2) note that it reads your Feishu appId/appSecret either from environment variables or from ~/.openclaw/openclaw.json — the package metadata did not declare that config dependency, so confirm you’re comfortable granting it access to that file; 3) prefer supplying FEISHU_APP_ID/FEISHU_APP_SECRET via environment variables rather than leaving credentials in shared config; 4) inspect and run the script in a controlled environment (or with minimal-permission Feishu app) to confirm behavior; and 5) ensure edge-tts and ffmpeg are installed from trusted sources. If you cannot verify the skill source or do not want the skill to read ~/.openclaw/openclaw.json, do not install/run it.
Capability Analysis
Type: OpenClaw Skill Name: feishu-send-voice Version: 0.1.0 The skill is classified as suspicious due to its inherent capabilities, which, while necessary for its stated purpose, carry significant security risks. It reads sensitive Feishu API credentials (appId, appSecret) from the OpenClaw configuration file (`~/.openclaw/openclaw.json`) or environment variables. The script executes external commands (`edge-tts`, `ffmpeg`, `curl`) with user-provided text, which introduces potential command injection vulnerabilities, particularly with the `$TEXT` argument passed to `edge-tts`. Although there is no clear evidence of intentional malicious behavior like data exfiltration to unauthorized endpoints or backdoor installation, the direct handling of sensitive credentials and execution of external commands with user input constitutes a high-risk capability that could be exploited.
Capability Assessment
Purpose & Capability
The script implements exactly what the name/description promise: uses edge-tts to generate MP3, ffmpeg to convert to opus-in-ogg, obtains a Feishu tenant token, uploads the file and sends an audio message to a specified open_id. The need for ffmpeg, edge-tts and Feishu credentials is coherent with that purpose.
Instruction Scope
SKILL.md and the shell script are consistent: they instruct running the provided script which only reads the OpenClaw config (or env vars), writes temporary files, calls local binaries (edge-tts/ffmpeg/ffprobe/python3) and makes requests to official Feishu endpoints. The script does not reference other system paths or send data to unexpected external endpoints.
Install Mechanism
There is no install spec; this is instruction-only plus a shell script that relies on existing local binaries. That is the lowest install risk and consistent with the declared runtime requirements.
Credentials
Registry metadata lists no required config paths or credentials, but the script and SKILL.md require Feishu credentials — either via environment variables (FEISHU_APP_ID/FEISHU_APP_SECRET) or by reading ~/.openclaw/openclaw.json. This mismatch (metadata says none, runtime requires credentials/config) is an incoherence that could surprise users. Otherwise, the amount and type of secrets requested are proportional to the task.
Persistence & Privilege
The skill does not request permanent/always-on inclusion, does not modify other skills or global agent settings, and does not persist credentials beyond the normal API calls. Autonomous invocation is allowed (platform default) but not combined with other high-risk behaviors.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install feishu-send-voice
  3. After installation, invoke the skill by name or use /feishu-send-voice
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.0
- Initial release of feishu-voice-tts skill. - Converts text to speech using edge-tts and sends as Feishu audio message. - Avoids file downgrade to text by following Feishu's "upload file then send audio message" workflow. - Supports customizable voice, user open_id, and flexible configuration via environment variables. - Includes a shell script for full automation of TTS, file conversion, upload, and message sending.
Metadata
Slug feishu-send-voice
Version 0.1.0
License
All-time Installs 5
Active Installs 5
Total Versions 1
Frequently Asked Questions

What is Feishu Send Voice?

将文本转为语音并通过飞书 audio 消息发送给指定用户。用于“给用户发语音”“把这段话转语音并发飞书”“语音播报结果”等场景,尤其当普通文件发送会降级为文本时使用。仅在指定 channel=feishu 时触发。优先在需要高可达、可听播报时使用。 It is an AI Agent Skill for Claude Code / OpenClaw, with 538 downloads so far.

How do I install Feishu Send Voice?

Run "/install feishu-send-voice" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Feishu Send Voice free?

Yes, Feishu Send Voice is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Feishu Send Voice support?

Feishu Send Voice is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Feishu Send Voice?

It is built and maintained by tangzhan_aicoding (@tangc); the current version is v0.1.0.

💬 Comments