尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

claude-video CLI退出码速查:脚本调试必备的错误代码字典

claude-video CLI退出码速查:脚本调试必备的错误代码字典 claude-video CLI退出码速查脚本调试必备的错误代码字典【免费下载链接】claude-videoGive Claude the ability to watch any video. /watch downloads, extracts frames, transcribes, hands it all to Claude.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-videoclaude-video 是一款让 Claude 看视频的开源技能插件/watch一条命令即可下载视频、自动抽帧、拉取字幕或 Whisper 转录再把画面和台词一起交给 Claude 分析。当你把它的 CLI 脚本写进自动化流程或 CI 时退出码exit code就是判断成功还是失败、失败在哪一步的第一手信号。本文整理 claude-video 全部脚本的退出码对照表脚本调试时 30 秒定位问题。1️⃣ 先搞懂一个 Python 细节claude-video 的脚本均为纯 Python 实现入口为 scripts/watch.py退出码由两种写法决定看懂代码前先记住这个规律raise SystemExit(错误信息)→ 退出码1信息输出到 stderrraise SystemExit(2)→ 退出码2Unix 约定的用法错误return 0→ 退出码0表示成功也就是说凡是带一句话报错的异常基本都是码 1码 2 几乎专属于参数没给对。2️⃣ setup.py 预检退出码最常用的 4 个码python3 scripts/setup.py --check是静默预检命令成功时退出 0 且无任何输出失败时打印一行可直接执行的修复提示。它是脚本和 CI 前置检查的最佳选择单次耗时不到 100ms。退出码含义处理建议0✅ 一切就绪静默无输出继续执行后续步骤2缺少 ffmpeg / ffprobe / yt-dlp运行安装器python3 scripts/setup.py3缺少 Whisper API 密钥运行安装器或手动配置~/.config/watch/.env4依赖与密钥都缺失运行安装器一次即可补齐对应源码scripts/setup.py。3️⃣ setup.py 安装器退出码不带参数直接运行python3 scripts/setup.pymacOS 上会自动执行brew installLinux/Windows 则打印精确的安装命令供你手动执行。退出码含义0 依赖 API 密钥全部就绪并写入SETUP_COMPLETEtrue标记2依赖缺失Linux/Windows 需手动安装或 macOS brew 安装失败3依赖就绪但未填 API 密钥 —— 功能可用只是无字幕的视频只能纯画面源码scripts/setup.py。另有--json模式输出机器可读的状态快照退出码恒为0适合在程序里解析status、missing_binaries等字段。4️⃣ watch.py 主流程退出码/watch背后的主脚本 scripts/watch.py 负责编排完整流水线下载 → 抽帧 → 转录 → 输出 Markdown 报告。退出码场景0✅ 报告生成成功帧路径与字幕已打印1运行时错误见下方清单2参数用法错误argparse 解析失败如参数缺失、--whisper传了非法值典型的退出码 1 报错清单--start must be non-negative—— 起始时间为负数--end must be greater than --start—— 时间范围倒挂--start XX.Xs is past end of video—— 起点超出视频总时长Cannot parse time value—— 时间格式只支持 SS、MM:SS 或 HH:MM:SS见 scripts/frames.py本地文件不存在、扩展名不是视频格式仅告警但继续yt-dlp 未产出视频文件、ffprobe 读取失败、ffmpeg 抽帧或音频提取失败参数校验源码scripts/watch.py下载与 ffprobe 环节scripts/download.py、scripts/frames.py。5️⃣ Whisper 转录重试策略与失败退出视频没有字幕时走 Whisper 兜底。客户端 scripts/whisper.py 用纯标准库手写内置了一套值得记住的重试逻辑总尝试次数4 次首次 3 次重试HTTP429限流最多重试2 次优先读取响应头Retry-After其余4xx如 401 密钥无效、413 超出 25MB 上传上限判定为不可恢复不重试、直接退出码 15xx / 网络错误按 2s、4s、6s 递增退避重试未配置任何密钥 → 退出码 1并提示先运行setup.py配置源码scripts/whisper.py。6️⃣ 子脚本单独运行统一约定4 个模块脚本都可独立在命令行运行退出码约定完全一致脚本退出码 2退出码 1scripts/download.py参数不足用法错误文件不存在 / yt-dlp 未安装 / 下载失败scripts/frames.py参数不足ffprobe/ffmpeg 未安装、时间解析失败、抽帧失败scripts/transcribe.py参数不足VTT 字幕解析异常scripts/whisper.py参数不足密钥缺失 / API 请求失败7️⃣ 调试实战3 步定位法1️⃣先看退出码—— 在关键命令后紧跟echo $?捕获状态 2️⃣再看 stderr 前缀——[watch]/[setup]开头的行能直接指明失败阶段下载、抽帧、转录 3️⃣最后对照本字典—— 码 2 基本是参数问题码 1 读报错文案码 3/4 只在 setup 预检中出现python3 scripts/setup.py --check echo setup check exit: $?顺带一提Claude Code 的会话钩子 hooks/scripts/check-setup.sh 也做了同类预检配置齐全时静默退出 0缺依赖或密钥时打印一行修复提示若.env权限不是 600 还会单独告警。小结一张表带走退出码快速判断0一切正常放心继续1运行时错误读 stderr 中的报错文案2用法/参数错误检查命令行写法3仅 setup 出现缺 API 密钥4仅 setup 出现依赖 密钥都缺把这张表存进调试笔记claude-video 的脚本问题基本能在 1 分钟内定位。更多参数细节--start/--end、--fps、帧预算策略可参考 README.md 与 SKILL.md。【免费下载链接】claude-videoGive Claude the ability to watch any video. /watch downloads, extracts frames, transcribes, hands it all to Claude.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-video创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表