Volcano Engine Podcast

v1.1.0

生成火山引擎豆包语音播客(PodcastTTS)。输入主题文本,自动生成双人对话式播客音频。触发关键词:豆包语音播客、生成播客、语音播客。

0· 93·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for cindypapa/volcano-engine-podcast.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Volcano Engine Podcast" (cindypapa/volcano-engine-podcast) from ClawHub.
Skill page: https://clawhub.ai/cindypapa/volcano-engine-podcast
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Required binaries: python3
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install volcano-engine-podcast

ClawHub CLI

Package manager switcher

npx clawhub@latest install volcano-engine-podcast
Security Scan
Capability signals
Requires OAuth tokenRequires sensitive credentials
These labels describe what authority the skill may exercise. They are separate from suspicious or malicious moderation verdicts.
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description (generate double-person PodcastTTS audio) align with bundled Python scripts, which implement a WebSocket client to a Volcano/Bytedance PodcastTTS endpoint and helpers to save/copy MP3s. Required binary (python3) and websockets package are appropriate.
Instruction Scope
SKILL.md explicitly limits flow (ask for reference material, generate audio, copy final MP3 to a messaging send directory). It references reading ~/.openclaw/config.json and copying to /root/.openclaw/media/qqbot/downloads — these are specific paths the skill will read/write and are necessary for the stated behavior, but they are filesystem locations outside the skill directory that the agent must be permitted to access.
Install Mechanism
No install spec; this is instruction+script-only. It requires the websockets package (declared in metadata). No remote downloads or archive extraction are used.
Credentials
Declared requirements list no environment variables, but code will read ~/.openclaw/config.json for volc_podcast.appid and volc_podcast.access_key and falls back to VOLC_APPID / VOLC_ACCESS_TOKEN environment variables. This is proportionate (API keys needed to call the service) but the metadata/instructions should declare these env vars and the exact config keys. Also the config JSON example includes secret_key which the code does not use; there is a hardcoded app_key value in code (likely a client id), which is unusual but not obviously malicious.
Persistence & Privilege
Skill is not always-enabled and does not request elevated platform privileges. It writes files to specified local paths for delivery (its own output and copying into a send directory) but does not modify other skills or global agent configuration.
Assessment
This skill appears to do what it says: it connects to a Volcano/Bytedance PodcastTTS websocket endpoint to generate MP3s and then copies the file into /root/.openclaw/media/qqbot/downloads so the agent can send it. Before installing, confirm: (1) you trust the skill source (GitHub homepage) and the openspeech.bytedance.com endpoint, (2) you are comfortable storing your Volcano API keys in ~/.openclaw/config.json or in VOLC_APPID / VOLC_ACCESS_TOKEN env vars, and (3) the agent has permission to write to /root/.openclaw/media/qqbot/downloads. Note the minor mismatches: the skill metadata declares no required env vars but the code does read env vars/config; the config example contains a secret_key field the code doesn't use, and there is a hardcoded app_key in the code. These are quality/documentation issues rather than clear red flags, but you may want the author to clarify the exact config/env var names and remove/justify the hardcoded app_key before deploying in a sensitive environment.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

Binspython3
latestvk9722dg4j4jg6m2c7a9v0d70e5858fht
93downloads
0stars
1versions
Updated 6d ago
v1.1.0
MIT-0

火山引擎豆包语音播客生成

基于火山引擎 PodcastTTS API,输入主题文本,AI 自动生成双人对话播客音频(含片头音乐、多轮对话、片尾结束)。


🎯 触发条件

用户提到以下关键词时触发:

  • "用豆包语音播客帮我生成..."
  • "生成语音播客"
  • "豆包播客"
  • "PodcastTTS"

🔄 收到请求后流程

⚠️ 重要:收到用户请求后,必须先询问是否有参考资料!

步骤 1:询问参考资料

用户:用豆包语音播客帮我生成XX主题的语音播客

助手回复:
收到!请选择资料来源:

1️⃣ **有参考资料**
   - 请发送相关文档、链接或已有内容
   - 我会基于资料生成播客

2️⃣ **没有参考资料**
   - 直接按你提供的主题生成播客
   - AI 会自动扩展内容

请回复 "1" 或 "2",或直接发送资料(文档/链接)

步骤 2:生成播客

  • 有资料:先读取资料内容,整合后生成播客
  • 无资料:直接使用主题文本生成播客

步骤 3:发送音频

生成完成后,必须把 MP3 文件发送给用户

<qqvoice>/root/.openclaw/media/qqbot/downloads/播客名称.mp3</qqvoice>

📋 配置

火山引擎播客 API 配置:

// ~/.openclaw/config.json
{
  "volc_podcast": {
    "appid": "3398567544",
    "access_key": "your_access_key",
    "secret_key": "your_secret_key"
  }
}

🔧 调用方式

快速调用(推荐)

import asyncio
import sys
sys.path.insert(0, "/root/.openclaw/workspace/skills/volcano-engine-podcast/scripts")
from generate_podcast import PodcastGenerator

async def generate_podcast(text, output_name="podcast"):
    gen = PodcastGenerator(
        appid="3398567544",
        access_token="your_token",
    )
    
    result = await gen.generate(
        text=text,
        output_dir=f"/tmp/{output_name}",
        encoding="mp3",
        use_head_music=True,
    )
    
    if result["success"]:
        # 复制到发送目录
        import shutil
        src = result["final_files"][0]
        dst = f"/root/.openclaw/media/qqbot/downloads/{output_name}.mp3"
        shutil.copy(src, dst)
        return dst
    
    return None

# 使用
audio_path = await generate_podcast("今天来聊聊AI编程助手", "AI编程助手播客")

📊 返回结果

{
    "success": True,
    "duration": 135.99,           # 播客时长(秒)
    "final_files": ["...mp3"],    # 最终音频文件
    "texts": [...],               # 对话文本列表
    "usage": {                    # Token 消耗
        "input_text_tokens": 1245,
        "output_audio_tokens": 3217,
        "total_tokens": 4462
    }
}

⚙️ 参数说明

参数默认说明
text必填输入主题文本
encodingmp3音频格式
use_head_musicTrue片头音乐
use_tail_musicFalse片尾音乐

📝 注意事项

  1. 每次调用消耗 audio token
  2. 对话角色由 AI 自动分配(男女双人对话)
  3. 音频采样率 24kHz
  4. 生成后必须发送 MP3 给用户

Comments

Loading comments...