安全扫描
OpenClaw
可疑
medium confidence该技能基本符合其声明的目的(使用本地ASR回退发布抖音视频),但存在重要不一致和可能影响隐私的默认设置,安装前应了解。
评估建议
该工具似乎实现了其声明的功能(授权抖音、转录、草拟字幕、发布或导出回退包)。安装或运行前:- 预计设置DOUYIN_CLIENT_KEY、DOUYIN_CLIENT_SECRET和DOUYIN_REDIRECT_URI;- 如果不想将音频上传到云端ASR服务,设置DOUYIN_ASR_MODE为whisper-gpu或whisper-cpu,并确保安装whisper-cli和模型;否则,默认模式('api')将使用OpenAI转录端点;- 工具在~/.config/douyin-upload-skill下写入加密令牌和本地密钥文件;- 回退出箱包包括源路径和转录/字幕文件,复制或分享前请审查;- 如果需要确认外部端点,请检查/修改config.asrApiUrl和代码;使用前请确认环境变量并根据需要设置ASR模式为本地。...详细分析 ▾
ℹ 用途与能力
代码和SKILL.md实现了与技能名称和描述相匹配的抖音OAuth+上传+本地/第三方ASR+回退出箱工作流。然而,注册元数据声称没有所需的环境变量,而SKILL.md和代码需要DOUYIN_CLIENT_KEY、DOUYIN_CLIENT_KEY、DOUYIN_REDIRECT_URI(以及可选的DOUYIN_ASR_API_KEY、DOUYIN_TOKEN_ENC_KEY等)。此元数据遗漏是一个你应了解的不一致。
⚠ 指令范围
运行时指令和代码操作本地视频文件,计算SHA256,提取音频,运行本地二进制文件(ffmpeg/whisper-cli),可能将音频发送到配置的ASR API。默认情况下,配置设置asrMode='api',DEFAULT_ASR_API_URL设置为OpenAI的转录端点——这意味着音频将默认上传到第三方,除非您显式配置本地whisper模式。该工具还在~/.config/下写入转录缓存、出箱包和加密令牌。这些行为与工具的功能一致,但对隐私敏感,并未在注册元数据中明确强调。
✓ 安装机制
没有外部安装规格(无下载的安装程序或远程存档);该包包含Node.js脚本。代码预期使用本地二进制文件(ffmpeg、ffprobe、whisper-cli、xdg-open)。这比获取远程可执行文件的风险更低,但依赖于运行本地命令行工具。
ℹ 凭证需求
SKILL.md和代码中请求的环境变量(DOUYIN_CLIENT_KEY、DOUYIN_CLIENT_SECRET、DOUYIN_REDIRECT_URI、可选DOUYIN_ASR_API_KEY、DOUYIN_TOKEN_ENC_KEY等)与用于认证抖音并可选调用ASR API的CLI成比例。注册元数据错误地列出零所需环境变量——一个不匹配。此外,如果asrMode保持为'api',DOUYIN_ASR_API_KEY可以导致音频发送到第三方。
✓ 持久化与权限
该技能在标准的用户路径下存储加密令牌和本地密钥文件(~/.config、~/.cache、~/.local/share)。它不请求系统范围或其他技能的凭证,也不设置always:true。令牌存储使用从环境变量或本地token.key文件派生的密钥的AES-256-GCM。对于持久CLI凭证来说这是预期的,但会创建一个您应管理和保护的本地持久工件。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv0.1.02026/3/4
初始公开发布
● 可疑
安装命令 点击复制
官方npx clawhub@latest install douyin-upload-skill
镜像加速npx clawhub@latest install douyin-upload-skill --registry https://cn.clawhub-mirror.com
技能文档
概览
使用此技能以确定性的CLI流程发布本地视频到抖音:- 验证本地依赖和环境。
- OAuth授权并存储加密令牌。
- 准备视频元数据和来自本地音频的转录。
- 生成3个字幕候选项。
- 确认或编辑字幕,然后发布。
- 如果发布权限不可用,导出手动发布包。
<技能根目录>/scripts/douyin.js 脚本。必需环境变量
在auth 或 publish 前设置这些环境变量:
DOUYIN_CLIENT_KEYDOUYIN_CLIENT_SECRETDOUYIN_REDIRECT_URI
DOUYIN_SCOPEDOUYIN_TOKEN_ENC_KEYDOUYIN_ASR_MODE(api/whisper-gpu/whisper-cpu)DOUYIN_ASR_API_URLDOUYIN_ASR_API_MODELDOUYIN_ASR_API_KEYDOUYIN_WHISPER_BINDOUYIN_WHISPER_MODEL_PATHDOUYIN_FFMPEG_BINDOUYIN_FFPROBE_BIN
工作流
- 运行依赖检查:
node <技能根目录>/scripts/douyin.js doctor
- 授权账号(手动代码粘贴流):
node <技能根目录>/scripts/douyin.js auth
- 准备来自本地视频路径的转录和元数据:
node <技能根目录>/scripts/douyin.js prepare --video "E:\视频\demo.mp4"
- 从
transcript.text创建3个字幕候选项:
- 请求用户选择或编辑最终字幕。
- 发布带有明确可见性和确认策略:
node <技能根目录>/scripts/douyin.js publish \
--video "E:\视频\demo.mp4" \
--text "<最终字幕>" \
--private-status 0 \
--auto-confirm false
命令行为
doctor:报告依赖和环境准备以及安装提示。auth:打开OAuth URL,接受粘贴的回调URL或code,存储加密令牌。prepare:返回元数据、转录和ASR失败细节(不停止发布流程)。publish:上传并通过官方API创建视频。如果发生类似权限的API错误,写入回退文件到outbox并返回mode: fallback。config:存储持久设置(defaultPrivateStatus、autoConfirm、whisperBin、whisperModelPath、outboxDir等)。
标题规则
发布前:- 保持最终文本长度 <= 1000。
- 始终向用户显示最终草稿。
- 如果
auto-confirm为 false,要求终端中显式用户确认。
输出合同
将脚本stdout视为JSON。始终解析和分支:okcommandmode(official或fallback对于publish)asrError(可选在prepare中)
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制