← 返回 Skills 市场
junweiren98-rgb

抖音视频智能助手

作者 junweiren98-rgb · GitHub ↗ · v1.1.0 · MIT-0
cross-platform ⚠ suspicious
476
总下载
0
收藏
2
当前安装
2
版本数
在 OpenClaw 中安装
/install douyin-transcribe-skill
功能描述
抖音视频智能助手。用户发抖音链接或视频文件,自动转录并智能处理(总结/逐字稿/归档/讨论)。 触发词:抖音、douyin.com、转文字、转录、视频转文本、douyin、transcribe
使用说明 (SKILL.md)

抖音视频智能助手 🎬🧠

用户发一个抖音链接,你就能"看到"视频内容——转录、总结、讨论、归档,一条龙。


触发条件

以下情况触发此 Skill:

  1. 用户消息包含 douyin.com 链接(短链或长链都算)
  2. 用户发来视频文件 + 提到"转文字/转录"等
  3. 用户发来类似 7.94 复制打开抖音... 的分享文本(提取其中链接)

第一步:判断用户意图

根据用户消息,判断属于以下哪种模式:

模式 触发信号 用户说的话举例
默认模式 只发了链接,没有额外指令 https://v.douyin.com/xxx
逐字稿模式 明确要原文/逐字稿 "转文字"、"逐字稿"、"转录出来"
总结模式 要总结/要点 "总结一下"、"讲了啥"、"帮我看看"
归档模式 要保存/收藏 "存到知识库"、"收藏一下"、"记下来"
讨论模式 要讨论/评价 "你怎么看"、"有道理吗"、"值不值得做"

判断不了时,用默认模式。


第二步:转录视频

无论哪种模式,都需要先拿到逐字稿。

方式 A:用户发来抖音链接

A1. 启动浏览器

browser(action="start", profile="openclaw")

如果浏览器已运行,跳过。

A2. 打开链接

browser(action="navigate", url="\x3C链接>", profile="openclaw")

A3. 等待播放,提取音频

等 3-5 秒让视频播放,然后执行:

browser(action="act", kind="evaluate", profile="openclaw", fn=下方代码)
() => {
  const entries = performance.getEntriesByType('resource');
  const audioEntry = entries.find(e => e.name.includes('media-audio'));
  const title = document.querySelector('h1')?.textContent?.trim() ||
                document.querySelector('[data-e2e="video-desc"]')?.textContent?.trim() ||
                document.title;
  const authorEl = document.querySelector('[data-e2e="video-account-link"]') ||
                   document.querySelector('.author-name');
  const author = authorEl?.textContent?.trim();
  return {
    audioUrl: audioEntry?.name || null,
    title: title || '未知标题',
    author: author || '未知作者'
  };
}

如果 audioUrl 为 null,等 5 秒重试(最多 3 次)。仍然为 null 可能需要用户先登录抖音网页版。

A4. 运行转录脚本

\x3Cskill目录> 替换为这个 SKILL.md 所在的实际目录路径。

Windows PowerShell:

$env:DOUYIN_AUDIO_URL = "\x3CaudioUrl>"
$env:DOUYIN_TITLE = "\x3Ctitle>"
$env:DOUYIN_AUTHOR = "\x3Cauthor>"
cd "\x3Cskill目录>"
node scripts/transcribe.js "\x3C原始链接>"

Linux/Mac:

cd "\x3Cskill目录>"
DOUYIN_AUDIO_URL="\x3CaudioUrl>" DOUYIN_TITLE="\x3Ctitle>" DOUYIN_AUTHOR="\x3Cauthor>" node scripts/transcribe.js "\x3C原始链接>"

设 timeout 120 秒。

A5. 读取逐字稿

脚本成功后,读取 douyin-transcripts/ 目录下最新的 .md 文件,拿到完整逐字稿文本。

方式 B:用户发来视频文件

保存文件到 \x3Cskill目录>/temp/,然后:

cd "\x3Cskill目录>"
node scripts/transcribe.js "\x3C视频文件路径>"

读取最新 .md 输出文件。

方式 C:用户发来分享文本

从文本中提取 https://v.douyin.com/xxxxx/ 链接,按方式 A 处理。


第三步:根据模式输出结果

🔹 默认模式(最常用)

用户只发了链接,没说要干嘛。给最有价值的输出。

  1. 读完逐字稿后,你自己做一个总结(不调脚本,你就是 LLM)
  2. 总结格式:

📹 {视频标题} 👤 {博主名}

要点总结:

  1. {要点1}
  2. {要点2}
  3. {要点3} ...(3-7个要点,视内容长度而定)

一句话概括: {用一句话说清楚这个视频讲了什么}


💡 逐字稿已保存。回复"看原文"查看完整逐字稿,"存起来"归档到知识库。

  1. 不要甩一大段逐字稿——用户扔链接过来是想快速了解内容,不是要读作文

🔹 逐字稿模式

用户明确要逐字稿,直接给:

📹 {标题} | 👤 {博主}


{完整逐字稿内容}

如果逐字稿太长(>2000字),先给前 1000 字 + "内容较长,已保存完整版到 {文件路径}"。

🔹 总结模式

比默认模式更详细的总结:

📹 {标题} | 👤 {博主}

核心观点

{2-3段话概括视频主旨}

关键要点

  1. {要点标题}:{展开说明}
  2. {要点标题}:{展开说明} ...

适用场景

{这个内容对用户有什么用,适合什么人看}

🔹 归档模式

  1. 先做总结(同默认模式)
  2. 保存到知识库目录 \x3Cworkspace>/douyin-knowledge/(workspace 指 OpenClaw 工作目录)
  3. 文件名格式:{YYYY-MM-DD}-{简短标题}.md
  4. 文件内容包含:来源链接、博主、总结、完整逐字稿
# {视频标题}

**来源**: {抖音链接}
**博主**: {博主名}
**日期**: {归档日期}

## 总结
{AI 总结内容}

## 完整逐字稿
{逐字稿全文}
  1. 告诉用户:

✅ 已归档到 douyin-knowledge/{文件名} {简短总结}

如果用户提到飞书/Notion 等具体平台,用对应工具创建文档。

🔹 讨论模式

  1. 先做总结
  2. 然后给出你的看法/分析:

📹 {标题} | 👤 {博主}

要点: {3-5个要点}

我的看法: {你对内容的分析——同意什么、质疑什么、对用户有什么启发}

{如果和用户的工作/计划相关,指出关联}


后续交互

转录完成后,用户可能会追问。常见追问及处理:

用户说 你做什么
"看原文" / "逐字稿" 展示完整逐字稿
"存起来" / "归档" 执行归档模式
"你怎么看" 给出分析讨论
"他说的XX是什么意思" 基于逐字稿回答
"帮我提取金句" 从逐字稿中挑出精彩句子
"发到飞书" 用飞书工具创建文档

关键:逐字稿已经在你上下文里了,后续追问不需要重新转录。


首次使用?先帮用户配置

当用户第一次触发时,按以下顺序检查环境。缺什么补什么。

检查 1:.env 文件

read: \x3Cskill目录>/.env

不存在则从 .env.example 复制。

检查 2:Groq API Key

.env,检查 GROQ_API_KEY 是否已填(不是 gsk_your_key_here)。

如果未填,告诉用户:

需要一个免费的 Groq API Key 来做语音识别。

  1. 打开 https://console.groq.com
  2. Google/GitHub 登录(免费,不要信用卡)
  3. API Keys → Create API Key
  4. 复制 Key(gsk_ 开头)发给我

拿到 Key 后更新 .env

检查 3:ffmpeg

exec: ffmpeg -version

没装则引导安装(Mac: brew install ffmpeg,Windows: gyan.dev 下载,Linux: apt install ffmpeg)。


技术说明

工作原理

抖音链接 → 浏览器打开 → DASH 音频流 URL → ffmpeg 下载(~1MB)
         → Groq Whisper large-v3(免费,3秒)
         → Groq LLM 标点分段(免费,1秒)
         → Agent 智能处理(总结/讨论/归档)

依赖

依赖 必须? 费用
ffmpeg 免费
Groq API Key 免费
OpenClaw Browser 推荐 N/A

文件结构

douyin-transcribe/
├── SKILL.md              ← 你正在读的操作指南
├── README.md             ← 面向人类的说明
├── _meta.json            ← 元数据 + 触发词
├── .env.example          ← 配置模板
├── .env                  ← 用户配置(不提交 git)
├── .gitignore
├── scripts/
│   └── transcribe.js     ← 转录脚本
├── douyin-transcripts/   ← 逐字稿输出(自动创建)
└── temp/                 ← 临时文件(自动清理)

故障排查

问题 解决
audioUrl 为 null 等几秒重试;或登录抖音网页版
ffmpeg 未找到 引导安装
Groq 429 等 1 分钟再试
音频 >25MB 建议更短的视频
安全使用建议
主要注意三点: 1) 元数据与实际需求不一致:尽管注册摘要显示“无环境变量/无二进制依赖”,此技能实际需要 GROQ_API_KEY(或 OpenAI key 可选)和 ffmpeg/ffprobe,可能还会使用 yt-dlp。确认你愿意提供这些依赖并在主机上安装 ffmpeg。 2) 切勿通过聊天粘贴密钥:SKILL.md 建议“复制 Key 发给我”,这会把敏感密钥写入对话历史并可能被记录。改用安全配置方式(将 key 写入技能目录下的 .env 文件本地保存,并在技能文件系统中限制访问),或在平台提供的安全凭据存储中配置。 3) 文件与网络操作风险:技能会在工作区内写文件并用 ffmpeg/yt-dlp 下载/转码、并向 Groq 发起网络请求(上传音频)。如果你不信任作者或环境,请在隔离环境(受限容器或沙箱)中运行、审阅 scripts/transcribe.js 完整源码,或仅在测试账号/临时 API key 下试用。 如果你 want higher assurance:请求作者/maintainer 证明其 GitHub 仓库(_meta.json 中声称的仓库)与发布包一致,或手动审计 transcribe.js 剩余被截断部分以确认没有其他外部 endpoint 或不明行为。
功能分析
Type: OpenClaw Skill Name: douyin-transcribe-skill Version: 1.1.0 The skill bundle provides legitimate functionality for transcribing Douyin videos but contains a high-risk command injection vulnerability. In `scripts/transcribe.js`, the `runCommand` function uses `execSync` with unsanitized string interpolation, which could allow arbitrary command execution if a user provides a specially crafted URL or file path. While the behavior aligns with the stated purpose and no evidence of intentional malice or data exfiltration (beyond sending audio to configured STT providers) was found, the lack of input sanitization in shell execution qualifies it as suspicious.
能力评估
Purpose & Capability
Skill 声称是抖音视频转录/总结助手,SKILL.md 与 scripts/transcribe.js 实现的功能(打开浏览器提取音频流、用 ffmpeg 下载/转码、调用 Groq/OpenAI 做 STT、写入工作区文件)与目的相符。但注册表顶部汇总显示“Required env vars: none / Required binaries: none”,这与 SKILL.md 和脚本实际需要(GROQ_API_KEY、ffmpeg,可能还有 OpenAI key、yt-dlp)不一致——元数据表述不准确,用户界面可能误导。
Instruction Scope
运行说明要求:启动 agent 浏览器、在浏览器上下文提取 audio URL、读取/拷贝 <skill>/.env、检查并写入 workspace 下的 douyin-transcripts 和 douyin-knowledge、调用本地 ffmpeg/yt-dlp、并在需要时让用户“发给我” Groq API Key。两点值得警惕:1) 指导用户将 API Key 直接粘贴到聊天('复制 Key 发给我')会把秘密写入聊天记录;2) SKILL.md 与脚本会读取 .env 并将其中所有大写键值注入进程环境,可能无意间读取与此 skill 无关的敏感值。如果用户不谨慎,脚本/agent 有能力把这些数据用网络请求发送到外部 API(Groq),造成泄露。
Install Mechanism
无安装规范(instruction-only + 附带脚本),这降低了安装链条风险(没有从不可信 URL 下载可执行文件)。不过脚本会调用系统二进制(ffmpeg、ffprobe、yt-dlp),并会用 execSync/execFileSync 执行命令并写入工作区文件;这些都是功能所需,但应在受控环境中运行。
Credentials
虽然 registry 高层摘要显示不需要 env vars,脚本和 SKILL.md 实际需要 GROQ_API_KEY(主要用于 STT),并可使用 OPENAI_API_KEY 作为备用。脚本会从 <skill>/.env 加载所有大写键值,这可能 import 非本技能相关的 secrets if placed there. 要求用户将 API key 发到聊天是过度且不安全的。总体上所需凭据与转录目的相关,但要求提交方式和 .env 的全盘读取方式不够谨慎。
Persistence & Privilege
技能没有设置 always:true,也不修改其他技能或系统范围配置。它会在工作区内创建/写入目录(douyin-transcripts, temp, douyin-knowledge),这与功能一致且符合最小作用域。技能需要 agent 的 browser/exec/read 权限(在 _meta.json 中声明),这是实现自动浏览与文件操作所需。
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install douyin-transcribe-skill
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /douyin-transcribe-skill 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.1.0
v1.1.0: 智能模式升级 - 默认AI总结+支持逐字稿/归档/讨论模式,体验更自然
v1.0.0
首次发布:浏览器提取音频 + Groq Whisper 免费转文字 + LLM 自动标点分段
元数据
Slug douyin-transcribe-skill
版本 1.1.0
许可证 MIT-0
累计安装 2
当前安装数 2
历史版本数 2
常见问题

抖音视频智能助手 是什么?

抖音视频智能助手。用户发抖音链接或视频文件,自动转录并智能处理(总结/逐字稿/归档/讨论)。 触发词:抖音、douyin.com、转文字、转录、视频转文本、douyin、transcribe. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 476 次。

如何安装 抖音视频智能助手?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install douyin-transcribe-skill」即可一键安装,无需额外配置。

抖音视频智能助手 是免费的吗?

是的,抖音视频智能助手 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

抖音视频智能助手 支持哪些平台?

抖音视频智能助手 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 抖音视频智能助手?

由 junweiren98-rgb(@junweiren98-rgb)开发并维护,当前版本 v1.1.0。

💬 留言讨论