feat(agent): layered system prompt, environment facts and intent-routed skills

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
rootandClaude Opus 5.5 committed 2026-09-30 18:47:15 +08:00
1 parent 0f20c19b7c
commit 21b7e8ff23
25 files changed
+1783 -149

No files matched your search

@@ -0,0 +1,56 @@
---
name: acquire-title
title: 收录一部作品
description: 把一部电影或剧按要求的版本(4K、1080p、原盘…)收进来:确认作品、比对已有收录版本、找资源、给方案、提交下载。用户说「把《X》收进来」「下个 X 的 4K」时用。
triggers:
- 收(进来|进库|录)
- (下|下载|找|搜)(一下|个|一个)?.{0,12}(4K|2160p|1080p|原盘|REMUX|杜比|HDR|资源|版本)
- 《[^》]+》.{0,10}(收|下|找|搜|要)
- 想看|加到库里|加入媒体库
capabilities:
- catalog.lookup
- inventory.query
- release.search
- release.inspect
- download.plan
- download.submit
- download.list
sessions: [chat, child]
---
## 适用意图
- 「把《沙丘 2》4K 收进来」「下一个《奥本海默》1080p」「找找《三体》有没有原盘」。
- 只是问库里有没有、有哪些版本时,查完 inventory.query 就回答,不往下走。
## 步骤
1. 确认作品:catalog.lookup(写作品名或别名,带年份更准)。多个候选且分不清时,用最可能的一个继续,并在汇报里写明按哪部处理。
2. 比对已有:inventory.query 看这部作品已有的收录版本和文件。已经有满足要求的版本就直接回答「已经有了」,不再找资源。
3. 看有没有在下:download.list 按作品名查,已经在下载的就汇报进度,不重复下。
4. 找资源:release.search(传 mediaEntityId,按要求的分辨率挑)。只在需要看文件清单、促销时对 1–2 条用 release.inspect,不要逐条遍历。
5. 准备下载:对选中的资源调用 download.plan(slotId 用 inventory.query 返回的收录版本)。
6. 有真实分歧(体积差很多、画质取舍、要不要覆盖已有版本)时给 2–3 个方案;没有分歧直接 download.submit。
## 需要批准
- download.submit(提交到下载器)。download.plan 返回需要批准时,交互会话里会出审批卡;方案里带了这份下载,用户选定即批准。
- 被拒绝时一句话:「没提交:需要你批准」。
## 汇报模板
> 《沙丘:第二部》4K 已提交下载:Dune.Part.Two.2024.2160p.UHD.BluRay…(58.2 GB,来自憨憨),完成后自动整理入库。
> 《沙丘:第二部》已经有 4K 版本(2160p REMUX,已入库),没有再下。
> 没找到《沙丘:第二部》的 4K 资源;已有 1080p 版本。站点里最近的 4K 资源是……
- 「已提交」不等于「已入库」:提交成功只写已提交。
- 写资源标题、体积(GB)、站点名;不写资源 ID、计划 ID、slot。
## 不要做
- 不要在已有满足要求的版本时再提交下载。
- 不要用单字、通配符搜索;检索词写作品名或别名。
- 不要把「准备下载」说成「已提交」,也不要把「已提交」说成「已入库」。
- 不要换参数重试被拒绝的提交。