将角色与 Skill 从 .claude 迁入 .agent,移除 Claude CLI 运行时并接入固定 Opus 角色 profile、完整 schema、预算 deadline、raw 与回执证据链。 同步拆分 Skill 职责、复利 lesson、Gate 回放、Dashboard 人审入口、数据库登记和机械门禁;候选设计正文不包含在本提交中。
7.4 KiB
name, description, disable-model-invocation
| name | description | disable-model-invocation |
|---|---|---|
| capture-ai-flavor-cases | 从已有作品或创作反馈中抽取可复核的 AI 味案例卡,保留来源哈希与位置并做来源重验证。需要反向积累人感样例、记录一次写作事故或批量回填既有作品时使用;不做标注确认与规则升格,不直接修改正文、范式或生产规则。 | true |
抽取 AI 味案例卡
在五技能接力链中的位置
本 Skill 是技能 5「挖掘」的采集入口(链路登记见 meta/chains/README.md 的 AI 味接力段):
创作/已有作品 → 案例卡采集(本 Skill)→ 来源重验证(本 Skill)
→ 标注 / canonical / 样例投影 / 规则候选 / 评测 / 激活(promote-ai-flavor-rule)
→ humanization/rules active → 技能 2/3 消费
- 它不碰本次创作正文:只记账(作者回退、误杀、门禁失败都走
feedback入卡),在背后为规则库供料; - 采集快、升格慢:卡片默认
shadow,之后的每一步状态推进都归promote-ai-flavor-rule。
目的与边界
本 Skill 只生产质量证据层的 ai_flavor_case 卡片,并做来源重验证。它不是作品实体卡,也不是公共范式卡;卡片默认处于 shadow,不能进入生成上下文,不能直接改变正文或规则。
输入有两条来源链:
backfill:扫描已有作品,记录表面候选、全文哈希、章节/行位置和上下文。来源未明确授权时只保存哈希与位置,不把原文写入仓库。live_feedback:记录创作中发现的具体问题、候选正文哈希和人工判断,允许快速入卡,但同样先停在shadow。
确定性脚本负责发现、哈希、状态、结构门禁和自动落库;“这是 AI 味还是有意写法”由 promote-ai-flavor-rule 的人工/独立评审标注。
数据与副作用合同
- 读取:用户明确提供的文本文件,以及本 Skill 输出的案例卡 YAML/JSON。
- 写入:检测命令指定的回执文件,以及
muse-example中的案例卡与重验证账本;不写正文、knowledge/正式资产或生产规则目录,也不写质量评测账。 - 自动落库:
scan、inventory、feedback在检测完成后自动以一个事务写入数据库。--offline是显式例外,只用于离线合同测试或数据库恢复准备;不能把离线文件当正式内容。 - 恢复入口:
persist_cases.py只用于把已审计的 inventory/revalidation 文件恢复或迁移入库,正常检测不得依赖它单独执行。 - 模型:扫描、哈希、校验都不调用模型;语义标注由
promote-ai-flavor-rule承接。 - 失败:任何来源、哈希、状态或反例门失败都返回
CASE_CARD_CONTRACT_FAILED,不输出部分成功的卡。 - 规则权威边界:运行时规则/样例权威在
example_ai_flavor_rule/example_ai_flavor_sample(DDL-111);规则生命周期不在本 Skill,归promote-ai-flavor-rule。
运行
采集只是第一步;标注、确认、样例投影、规则候选归纳、评测与激活由 promote-ai-flavor-rule 承担。本 Skill CLI 只暴露:scan / inventory / feedback / validate / revalidate。confirm_card / project_sample 是供 promote 导入的库函数,采集入口不提供对应子命令。
# 既有作品反向扫描;research_only 是默认安全值,输出 hash-only 卡
.venv/bin/python .agent/skills/capture-ai-flavor-cases/scripts/capture_cases.py scan \
/path/to/work.txt --work-ref work-7 --output /tmp/ai-flavor-cases.yaml
# 命令结束时自动写入 muse-example;同时生成 .inventory.json/.revalidation.json 回执
# 批量回填并固化可复核清单;只写来源哈希、位置和观察,不复制第三方正文
.venv/bin/python .agent/skills/capture-ai-flavor-cases/scripts/capture_cases.py inventory \
/path/to/works --source-root-ref 小说清单 --output /path/to/backfill-inventory.json \
--generated-on 2026-08-13
# 8 本作品的卡与逐卡重验证在同一检测运行中自动入库
# 创作反馈快速入卡(正文只在本次受控输入中读取)
.venv/bin/python .agent/skills/capture-ai-flavor-cases/scripts/capture_cases.py feedback \
--text-file /tmp/candidate.txt --work-ref work-12 --run-ref run-abc \
--issue "段尾抽象升华没有功能" --output /tmp/feedback-card.yaml
# 创作反馈也会自动入库,保留 run_ref 绑定
# 明确只做离线构造(不会写库)
.venv/bin/python .agent/skills/capture-ai-flavor-cases/scripts/capture_cases.py inventory \
/path/to/works --output /tmp/inventory.json --offline
# 对卡片做结构与来源门禁
.venv/bin/python .agent/skills/capture-ai-flavor-cases/scripts/capture_cases.py validate \
/tmp/ai-flavor-cases.yaml
# 在确认/投影/规则使用前手工重验证来源;默认自动追加数据库回执。
.venv/bin/python .agent/skills/capture-ai-flavor-cases/scripts/capture_cases.py revalidate \
/path/to/ai-flavor-cases.yaml --source-root /path/to/source-root \
--checked-on 2026-08-14 --output /tmp/ai-flavor-revalidation.json
# 仅需离线回执时显式加 --offline
owned、licensed 和 public_domain 才允许把片段写入卡;research_only、unauthorized 只能 hash-only,且永远不能确认。source_sha256 针对原始文件字节,excerpt_sha256 针对保存的片段,二者不可由模型自报。
重验证不会在看板打开时自动发生;它是确认、样例投影和规则消费前的显式 fail-closed 门。来源找不到不是“仍然有效”,而是 unavailable。
状态与交接
scan/feedback产生shadow + unclassified——这是本 Skill 的终点。- 之后的标注(
sf/snf/boundary/regression)、canonical确认、样例投影、规则候选归纳、评测与激活全部归promote-ai-flavor-rule。 revalidate产出的 verified 回执是交接件:下游每一步都要拿它做 fail-closed 复核。
详细字段和失败码见 references/case-card-contract.md。
首版回填清单与候选规则种子见 references/fixtures/;其中既有作品只保留 hash/位置,不能直接确认。
inventory/revalidate 的 --output 导出是可复核的恢复证据;正式内容在 muse-example 的
example_ai_flavor_case、example_ai_flavor_revalidation_batch、example_ai_flavor_revalidation 三张表。
dashboard/server.py 的 /ai-flavor 默认查这三张表,数据库不可用时读它自己的 dashboard/fixtures/ 离线回退(导出件由人放入,看板不读本 Skill 目录);页面不会因打开而重新读取原文。
状态语义:案例卡 shadow 只供复核,canonical 仅表示获授权且完成评审,rejected/archived 不进入生成上下文;重验证 verified 才能确认、投影样例或消费规则,stale(全文哈希变化)、unavailable(来源不可得)和 card_mismatch(锚点变化)都使当前卡在这些动作上失效,但历史回执保留。
复利合同
- 消费:研究限定来源与已有案例卡;不把第三方正文写入正式内容。
- 回写:
persist_cases.persist批次落库成功后经propose_lesson_dedup登记「AI味案例卡批次已落库」(run_id/candidate_sha256均绑report_sha256);规则升格仍归promote-ai-flavor-rule。离线/测试可传persist_lesson=False。