手工川 Logo手工川
Lovstudio.AI Skill / General·FREE · OPEN SOURCE

影视寻宝

检索并选择合适版本,qBittorrent 与 aria2 续传兜底,最后验收本地媒体与字幕状态

基本信息

你会用它完成什么

Use when the user asks to find and download a film, series, or long video. 以 aria2 为默认传输后端,完成多源测速、续传、容量预检、版本核验与字幕验收;也适用于“帮我下载这部电影”。

适用场景
General
当前版本
v0.4.3

开始前

先确认能不能跑

运行环境
Portable Agent Skills format; Python 3.9+, aria2 1.36+, and ffprobe recommended. qBittorrent 5.x Web API is an optional discovery, BitTorrent-management, and seeding adapter.
账号与密钥
Optional qBittorrent credentials remain in environment variables or an operating-system credential store; reports contain no secrets.

没有 Claude 或 GPT 账号也可以试:Skill 不绑定某一家模型,Claude 效果最稳,GPT 也可以;手里只有国产工具时,可以从下方的 WorkBuddy 安装入口开始,效果可能有差距。

安装渠道

装到你正在使用的 AI

Yoda、Codex、Claude Code 和其他兼容运行环境都使用同一份 Skill;选择你的工具后,按对应步骤完成安装。

先保存一次工作资料,支持 Profile 的 Skill 会在运行时直接复用。

配置工作资料

安装与配置

Yoda

适合同时使用多个 Agent 的工作流:在一个地方完成安装、分配和调用。

  1. 01打开 Yoda 的 Skills,搜索「media-fetch」,进入详情后点击“安装”。
  2. 02在目标 Agent 的配置中,把该 Skill 设为“自动”“仅手动”或“关闭”。
  3. 03重新加载当前会话,再从输入框的 Skill 菜单选择它;Yoda 会按当前 Runtime 插入对应调用命令。
打开 Yoda

在 Yoda 内完成

Yoda 会把安装后的 Skill 同步给已配置的 Agent,无需手动维护多个目录。

第一次调用

使用 lov-media-fetch 完成以下任务,并按 Skill 的验收标准检查结果:

该 Skill 声明:Portable Agent Skills format; Python 3.9+, aria2 1.36+, and ffprobe recommended. qBittorrent 5.x Web API is an optional discovery, BitTorrent-management, and seeding adapter.

使用说明

按这套方法完成任务

Version

一键完成长视频的检索、版本选择、磁盘预检、多源测速下载、可恢复续传、慢源切换和文件验收。

本地安装

通过 Agent Skills 安装器:

npx skills add https://github.com/lovstudio/media-fetch-skill --skill lov-media-fetch

或在本仓库根目录创建开发链接:

export SKILL_SOURCE_DIR="$(pwd)"
mkdir -p "${SKILL_SKILLS_INSTALL_DIR:?请设置本地 Skills 目录}"
ln -s "$SKILL_SOURCE_DIR" \
  "$SKILL_SKILLS_INSTALL_DIR/lov-media-fetch"

安装链接必须解析到当前源码目录;打包文件不等于本地安装。

用户配置

默认下载到 $HOME/Downloads/Media。首次运行先查看解析结果:

python3 scripts/media_config.py show

确认后写入共享配置:

python3 scripts/media_config.py init --write

显式请求和环境变量始终覆盖配置。默认只启用 aria2;可选 qBittorrent 密码只通过 QBITTORRENT_PASSWORD 或系统凭据提供。

使用

  • “帮我找并下载《影片名》的导演剪辑版,优先中英字幕,体积控制在 20GB 内。”
  • “Find and download the best compact 4K release of TITLE, then verify the English and Chinese subtitles.”
  • “这个 Magnet 帮我下载;先确认磁盘够用,太慢就自动换另一个版本。”

自然语言调用默认运行 full 流水线。已有链接使用 download-known;本地文件验收使用 verify。 aria2 默认负责 HTTP(S)、Magnet 和 Torrent 的测速、下载与续传。qBittorrent 仅在 需要搜索插件、队列界面、BT 深度管理或长期做种时启用。每次后端选择与切换都写入 transport trace,不把客户端进度当作最终完成证据。

可选 qBittorrent 连接

启用该适配器时,将 WebUI 限定在本机回环地址。已有兼容客户端时直接复用,密码 保存在系统凭据中,再通过环境变量注入当前任务。

export QBITTORRENT_URL="http://127.0.0.1:8080"
export QBITTORRENT_USERNAME="admin"
export QBITTORRENT_PASSWORD="从安全凭据读取"

主链路依次运行:

python3 scripts/rank_candidates.py --input candidates.json --output decision.json
python3 scripts/storage_preflight.py --decision decision.json
python3 scripts/aria2_acquire.py \
  --input INPUT --job-id JOB_ID --output-dir "$HOME/Downloads/Media" \
  --result aria2-acquisition.json --watch --no-proxy
python3 scripts/verify_media.py --path "$HOME/Downloads/Media" --output verification.json

若直接 URL 的路径没有媒体扩展名,给 aria2 增加 --output-name "TITLE (YEAR).mp4"。可选 qBittorrent 搜索与获取脚本仍保留:

python3 scripts/qbittorrent_search.py --query "TITLE YEAR" --output candidates.json
python3 scripts/qbittorrent_acquire.py \
  --decision decision.json --wait-complete --result qbit-acquisition.json

质量门

python3 scripts/validate_skill.py .
python3 scripts/test_aria2_acquire.py
python3 scripts/media_config.py show --json
python3 scripts/rank_candidates.py \
  --input assets/example-candidates.json \
  --output /tmp/media-fetch-decision.json
python3 scripts/storage_preflight.py \
  --decision /tmp/media-fetch-decision.json \
  --output-dir /tmp
python3 scripts/aria2_acquire.py \
  --input 'https://example.invalid/movie.mp4' \
  --job-id validation-direct --output-dir /tmp \
  --result /tmp/media-fetch-aria2-direct.json --dry-run
python3 scripts/aria2_acquire.py \
  --input 'magnet:?xt=urn:btih:0123456789abcdef0123456789abcdef01234567' \
  --job-id validation-bt --output-dir /tmp \
  --result /tmp/media-fetch-aria2-bt.json --dry-run

依赖

  • Python 3.9+
  • PyYAML(Skill 源码校验)
  • aria2 1.36+(默认 HTTP、Magnet 与 Torrent 下载后端)
  • FFmpeg / ffprobe(媒体验收)
  • 可选:Rats Search(独立 DHT 检索)
  • 可选:qBittorrent 5.x WebUI(搜索插件、队列管理、做种)

字幕分支

默认验收 zh-Hans 与 en。如果成片只有英文字幕,先匹配同一发行版本的外置 SRT,再交给 lov-subtitle-freedom-skill 做时间轴、UTF-8 和 SRT 保真处理。该 Skill 的英文学习提示、人物卡和 ASS 样式均需要明确开启;Media Fetch 不会把它们 作为简中字幕输出。

用户案例

《指环王》三部曲的实际任务验证了后端解耦的价值:可选 qBittorrent 搜索并测速后, 主候选在首轮实测偏慢,aria2 使用同一信息哈希、DHT/PeX/LSD 与 Tracker 续传,最终得到 3 个可读的 1080p HEVC 文件。下载报告为 complete,媒体验收为 passed_with_warnings,唯一开放项是原发行文件未嵌入 zh-Hans,因此报告继续 保留字幕缺口而不是虚报“双语完成”。完整脱敏证据位于 cases/evidence/。

License

MIT

案例

用过这个 Skill?分享你满意的真实成果,可以手动填写,也可以交给 Agent 整理。

正在读取案例…

SKILL CARD / TRUST RECORD

先看证据,再决定是否使用

把片名或 Magnet/Torrent 请求变成经过容量预检、版本核验、可恢复下载和 ffprobe 验收的本地媒体,并把字幕缺口单独呈现。

CARD v0.4.3

适用场景

从片名或已有 Magnet/Torrent 识别、选择、下载并验收电影或剧集

维护方 · LovStudio / 手工川工作室

输出契约

JSON · MKV / MP4 / supported container · UTF-8 SRT

依赖与环境

Optional qBittorrent credentials remain in environment variables or an operating-system credential store; reports contain no secrets.

风险与缓解

搜索结果中的做种数和文件名会随时间漂移,且不等同于稳定下载速度。 · 保留 advertised 与 observed 两套字段,执行暖机后的持续测速,并记录 backend 与切换事件。

+3 项

DIMENSIONS

维度地图

5 维度

剪辑版本识别

先确认作品与剪辑版本,再比较画质和体积。

quality-policy.md 的时长容差规则;LOTR 案例的 Extended Remastered 候选与三部片时长回读。

下载韧性

以持续实测速度选择后端,并在同一输入上保留可恢复状态。

aria2_acquire.py 的直链与 DHT/PeX/LSD/Tracker 路由、RPC 进度、.aria2 状态和 LOTR 传输记录。

容量纪律

把成片、局部文件、探测预算和空间保留一起纳入预检。

storage_preflight.py 与 acquisition-policy.md 的计算式和终态。

媒体验收

客户端完成信号之后,逐文件检查可读性、时长、编码、音轨和字幕。

verify_media.py 的结构化报告;LOTR 案例 3 个文件均可读且无错误。

字幕保真

将简中字幕作为独立状态,遵循时间轴、UTF-8、SRT 和原文件不变原则。

references/subtitle-handoff.md 与 lov-subtitle-freedom-skill 的 SRT 保真约定;LOTR 报告明确标出 zh-Hans 缺口。

VALUE CARD

价值与交付边界

检索并选择合适版本,qBittorrent 与 aria2 续传兜底,最后验收本地媒体与字幕状态。

开源免费

免费

直接安装使用

价值锚点

一次长视频任务通常可省下数十分钟至数小时的版本筛选、容量检查、下载排障和文件验收时间。

使用边界

覆盖候选检索、版本选择、容量预检、qBittorrent/aria2 编排、媒体验收和字幕状态记录;外部来源、网络可达性与字幕内容本身按实际条件处理。

维护说明

随 qBittorrent、aria2、FFmpeg、Skill runtime 和字幕格式变化复评。

用户评价与留言

登录后即可留言

分发渠道

在哪里可以获得它

这里标注这个 Skill 在各个平台的真实发布状态;有单品页时,入口会直接打开对应页面。

已发布

GitHub

公开源码、更新记录与 Issue 都在这里。

查看 GitHub
LS已发布

Lovstudio.AI 官网

在 Lovstudio.AI 获取、安装并查看使用说明。

你正在浏览此页面

WB暂未发布

WorkBuddy

该平台的单品页尚未发布。

单品页发布后会在这里出现。

SP暂未发布

支付宝 SkillPay

该平台的单品页尚未发布。

单品页发布后会在这里出现。

搭配使用

需要时,继续补齐这些能力

更多信息

权限与许可

源码可见性
公开仓库,可检查源码、Issue 与更新记录。
数据与权限
不同 Skill 可能读取本地文件、访问网络或调用第三方模型。执行前请检查完整手册中的具体步骤与命令。
许可
MIT
media-discoveryrelease-selectiondownload-orchestrationquality-controlaria2-primaryoptional-qbittorrentresumable-downloadsubtitle-handoff

NEXT STEP

一个会员,全部 Skill。

回到目录,按结果、证据和依赖继续挑选;开通 VIP 后,每个 Skill 都能直接安装。

返回当前 Skills 结果

手工川 / KEEP MAKING

生命的意义,在于创作。