用途:这是 anibon-stream-synthesis 插件中所有技能的共享预检清单,必须在任何下载、处理或分析步骤之前首先运行,以便提前发现缺失的工具,防止任务中途出现难以定位的失败。
适用时机:本插件中每个编排技能开始时都必须使用,包括 anibon-timestamper、anibon-timestamper-local、creating-highlight-video、youtube-minutes-synthesis。
主要能力:在一次 shell 调用中检查以下工具是否可用:yt-dlp(下载字幕、说明文字、视频流)、ffmpeg 4.x+(视频剪切、拼接、音画同步)、python3 3.10+(运行 prepare_video.py 等处理脚本)、sqlite3(FGO / YGO 卡牌数据库查询)。
使用方式:
Bash(Mac/Linux):
echo "=== Tool Check ===" &&
(yt-dlp --version 2>/dev/null || python3 -m yt_dlp --version || python -m yt_dlp --version) &&
ffmpeg -version 2>&1 | head -1 &&
python3 --version &&
sqlite3 --version &&
echo "=== All tools OK ==="
PowerShell(Windows): echo "=== Tool Check ===" (yt-dlp --version 2>$null) -or (python -m yt_dlp --version) -or (py -m yt_dlp --version) (ffmpeg -version | Select-Object -First 1) (python --version) (sqlite3 --version) echo "=== All tools OK ==="
失败处理:yt-dlp 缺失时提示用户执行 pip install yt-dlp;ffmpeg 缺失时提示通过包管理器(apt/brew/choco)安装;python3 缺失时提示需要 Python 3.10+,可从 https://python.org 安装;sqlite3 缺失时提示执行 sudo apt install sqlite3。若有任何必需工具缺失,不要继续执行该技能的主要任务,应停止并把所有缺失工具一次性报告给用户,便于统一修复。
限制与注意:第一条工具调用必须是 echo "=== Tool Check ===",不得例外;不要因为“上次可能可用”而跳过检查,网络安装会更新、路径会失效,每个会话都应确认。