定性:素材载体切换(本地 md -> WeKnora 容器),非扩容;驱动方向由素材驱动改为方法驱动。
- 新建 references/接口调用/WeKnora_极致事件检索.md 调用契约:MCP hybrid_search(服务 weknora)/ kb_id 用库名禁写死 UUID / match_count=3 / vector_threshold=0.5 显式 / 不传 keyword_threshold / 零命中判据 success=true 且 data=null / 只读 chunk_metadata.answers[0] / 禁用 chat 与 agent_chat / 复筛<=2条每节点 / 取材不取形转译 / 降级矩阵 / 成本控制
- S7 布位表新增「候选创作方法」列(4->5 列)打通方法层(此前 05_极致事件 6 个方法文件在创作流程中 0 调用)
- S7 新增「极致触点素材检索」按需环节 + {material_content} 定死结构 + 极致触点机制自检([期待A]-被X打破->[结果B]);输入章节素材库改双层源(主源 WeKnora / 降级 md,md 永不删除)
- 6 个方法文件补「素材供给」块(极致标签 / 定库检索入口 / 问法②打破方式填法)
- SKILL.md MCP 依赖节增 WeKnora 检索层(含静默降级口径);S7 小节补调用链;frontmatter updated_at
- 索引_知识素材库.md 修正 03/05/06/07/08/11 定性(实为字段结构模板而非素材库);新增「接口调用」章节
- S9 输入增 {material_cards} + 新增台词毛边三档参考;S11 类1「爆点贯穿」升级为爆点溯源 4 判据,八类35项清单同步
- 根目录补 3 份方案/规范文档 + 2 份 09-23 WeKnora 文档;变更日志归档
193 lines
41 KiB
Markdown
193 lines
41 KiB
Markdown
# 变更日志(主 SKILL.md frontmatter last_change 历史归档,09-04 起)
|
||
|
||
> 用途:SKILL.md frontmatter `last_change` 字段的历史明细归档处(该字段仅保留最近一次变更的**一行摘要**,完整明细按日期记于此)。
|
||
> 维护规则:每次变更 SKILL.md 时——① 在下方**按日期追加**一条(新在上);② frontmatter `last_change` 更新为当次一行摘要。
|
||
> 本文件位于 `references-add/`(运行时与标准库取并集加载,不影响创作执行逻辑,仅供维护追溯)。
|
||
|
||
---
|
||
|
||
## 2026-09-24(执行:素材层切换 WeKnora + 方法层接线)
|
||
|
||
- **触发**:用户「按照方案执行」,执行《技能接入WeKnora实施规范_V1.0》《极致事件素材接入创作流程方案_V1.1》。定性经用户两轮收口 —— ① 驱动关系由**素材驱动**改为**方法驱动**;② 素材动作不叫「扩容」叫**切换**(素材载体:本地 md → WeKnora)。
|
||
- **新建调用契约**:`接口调用/WeKnora_极致事件检索.md` —— MCP `hybrid_search`(服务 `weknora`)+ FAQ 容器 `MCN极致事件素材库`;`kb_id` 用**库名**(禁写死 UUID);`match_count=3`;`vector_threshold=0.5` 显式传;**不传** `keyword_threshold`(FAQ 恒为纯向量召回);**禁用 `chat`/`agent_chat`**(会摘要化卡片,丢失原话/微反应/铺垫量级)。含镜像式五要素问法、返回判据(`success=true 且 data=null` = **零命中而非调用失败**;同卡内容重复三份、**只读 `chunk_metadata.answers[0]`**)、复筛 ≤2 条/节点、取材不取形转译、降级矩阵、上下文成本控制(`match_count=3` + 按需检索 + 读后即弃)。
|
||
- **方法层接线(治「方法层 0 调用」)**:`创作流程/7_生成短视频大纲.md`「极致触点节点布位」表**新增「候选创作方法」列**(钩子型→极致行为四分类;留人型→预期反转四载体 / 冲突叙事套路;转粉型→克制 / 荒诞化 / 抽象化;传播型→无厘头 / 专属符号型),并明定**调用方向自上而下:方法定手法 → 类型定判定 → 检索取素材**,禁止素材驱动。
|
||
- **S7 检索环节**:新增「极致触点素材检索」小节(布位定完 → 事件展开之前,**按需触发**:已有桥段的节点跳过,通常一视频 1–3 次)+ `{material_content}` 注入格式定死(机制来源 / 落差结构 / 手法与铺垫量级 / 拍摄参考 / 本账号转译,**不含原卡人物名与台词**)+ 新增**极致触点机制自检**(每个 L1 节点须写得出 `[期待A] —被X打破→ [结果B]`,写不出则降级为普通情节、不计入 L1 密度);输入章节「素材库」改为**双层源**(主源 WeKnora 检索 / 源与降级 md 文件,**md 永不删除**);System Prompt 与禁止行为同步(禁跳方法列、禁搬卡原文、禁零命中编造)。
|
||
- **SKILL.md**:MCP 依赖章节新增「WeKnora 检索层(极致事件素材 · 可选增强)」含降级口径;S7 小节补全调用链 + 输出增「极致触点机制自检」+ 新增检索契约引用行;frontmatter `updated_at` → 2026-09-24。
|
||
- **S9/S11 配套**:S9 输入增 `{material_cards}`(可选)+ 新增「台词毛边三档参考」(**原话 / 微反应 / 意外**,只借范式不借句子、不得影响「说什么」);S11 类1「爆点贯穿」升级为**爆点溯源 4 判据**(次数 / 可溯源 / 落差三件套 / 转译合规),`知识库/09_脚本诊断/脚本质量自动检查清单_八类35项.md` 类1 同项同步。
|
||
- **索引修正**:`索引_知识素材库.md` 修正 03/05/06/07/08/11 六个库的定性(**实为字段结构模板、尚无实素材条目** —— 原描述「生活仪式化行为选型」「穿搭方案选型」等**承诺了不存在的内容**);素材库章节补双层源说明 + 新增「极致事件素材(事件类 · 主源在 WeKnora)」行;新增「三、接口调用」章节。
|
||
- **6 个方法文件**各补「素材供给」块(极致标签 / 定库 / 问法「② 打破方式」填法):极致行为创作法(**不映射标签**、横切未定、按事件标签跨库找载体)、预期反转(反差·反常识·价值观冲击;铺垫 中 3-10s)、荒诞化 / 抽象化 / 无厘头(自嘲反差·反差)、错位化-反常化(反常识·反差)。
|
||
- **未执行(留待后续,见方案 §六)**:① 6 个空壳库的字段结构并入 `分块定义/` 后原文件退役;② 21 条载体素材补问答对入库;③ 清理 15 条泛化磁铁卡 + 6 条标签污染;④ 240 条卡补「方法归属」字段。
|
||
|
||
## 2026-09-23(执行:极致事件卡片层治本 —— 10 固定字段硬规则 + 「极致触点」三义裁决 + 横切定库)
|
||
|
||
- **触发**:用户「按照方案优化」,执行同日《极致事件卡片优化方案_V1.0》全部 10 项(P0 3 / P1 4 / P2 3);三项待确认按方案建议选项落地(库位 → B 跨库横切;触点治理 → A 加裁决条款不改名;存量卡 → A 按 V1.3 重出)。
|
||
- **口径单源(治「极致触点」一词三义)**:`知识库/05_极致事件/01_极致类型-素材标签映射表.md` 第四节新增 **4.5 条款** —— 摊开 A 布位层(爆点节点)/ B 卡片层(击中原因)/ C 8 库层(内容描述)三义 + 一句话判据(「说画面里有什么」= C /「说用户为什么被击中」= B /「说它在第几秒引爆」= A);明确 C = 极致事件「极致内容」字段的等价物;**硬规则:极致事件类必须写满 10 固定字段**,不得退回 8 库口径。节标题「四条」→「**五条**边界裁决条款」。
|
||
- **横切定库(治 D2 + 缺口 1)**:同文件第二节新增「**定库列怎么读**」说明 —— 极致事件 = **跨库横切类别**,「定库」为**选定的检索入口库**、**可为空**(`—(横切未定)`);「极致行为」行补注定库口径;表头变更行登记。**不做**新增「行为/情境」类库、**不做**同一事件多库复制。
|
||
- **模板层(`素材库/分块定义/00_模板-各库分块模板.md` §极致事件,升 V1.2 → V1.3)**:
|
||
① 新增两条头注 —— 10 字段硬规则 + 卡片头元信息行 `> 所属库:{NN 库名 | 横切未定}`(**不占字段位**);
|
||
② 「极致内容」补两条要求(人物语言**保留原话不概括** + **≥1 处真实毛边**);
|
||
③ 「内容含义」补**时间跨度型写法**(成长/蜕变类 `[长期期待 A] —经 X 过程→ [结果 B]`);
|
||
④ 「极致触点」四子项**收敛为效果侧两项(用户心理 / 共鸣)**,机制侧「反差 / 猎奇」归还「事件标签 / 极致类型」+ **效果词不得复用标签词**;
|
||
⑤ 「创作手法」补子项 **铺垫量级:短 ≤3s / 中 3–10s / 长 >10s**;
|
||
⑥ 「事件标签」补自检 **下限 ≥2 值** + **「(主)」记法**(主标签 = 定库依据);
|
||
⑦ 专属段说明补「横切未定则省略本段」;专属说明 5 条 → **6 条**。
|
||
- **顺带修正模板内自相矛盾**:§三 总表 ※2 字段数 `9 + 10 = 19` → **`10 + 10 = 20`**(落 03 库 `10 + 5 = 15`;横切未定只写 10);※3 末尾「同名升级」处补 4.5 指针(闭合原文「是否同步见第四节」的**悬空指针**);「事件标签位于卡片**末位**」→ **第 4 位**(专属说明 4 同步)。
|
||
- **评估标准(`知识库/05_极致事件/03_极致事件评估标准.md`)**:第一节补「**翻车 / 失败 / 未达预期也是合法的极致**」 —— 豪言后翻车**同等入库**,但**须写清被打破的期待落点**(否则是流水账、不入库);与「步骤 5 真实性校验」不冲突(须真实发生)。
|
||
- **存量卡重出(`极致事件提取_多类别样本_20260922.md`,仓库根)**:§二 12 张卡由旧口径 9 字段迁移为 **V1.3 的 10 固定字段 + 元信息行** —— 原「极致标签」→ `事件标签`(第 4 位);原「极致触点」→ `极致内容`(第 1 位);原「表现形式」→ `内容含义`(第 2 位);**新增效果侧 `极致触点`**(原卡无此字段,按 V1.3 补写、依据原描述推断、**不含新事实**);`创作手法` 补铺垫量级;补卡片头 `> 所属库:…`。**事件内容与判据一字未改。** 同文件同步修正:§一 定库列(7 处 `⚠️ 见 §四` → `—(横切未定)`)、§3.1 类型分布(`错位` 2→1、补 `品质` 1 —— 原表把 F1 误记为错位)、§3.2 标签分布(按 §一 总览重算;零命中实为 4 个)。
|
||
- **新自检暴露(重要实证)**:重出后按「`事件标签` ≥2 值」自检,**12 张卡中 6 张为单标签**(P1 / P2 / P3 / C1 / C2 / C3)—— **保留实测原判、逐条标 ⚠️、不追补**,作为该条款必要性的实证(与 D5 判断一致)。
|
||
- **明确不做(保持原判)**:卡片内嵌 Prompt 模板(越层)/卡内嵌评分字段(与模板说明 2 冲突)/「黄金组合」字段(用法非素材属性)/标签层加「一级心理刺激」(违反 4.4 红线)/「用户需求层」(选题层职责)/8 库「极致触点」字段改名(沿用 4.1「只加裁决、不全量改名」原则)。
|
||
- **核对**:模板 / 映射表 / 评估标准三文件口径一致;`00_模板` 内旧字段数 `9 + N` 零残留;12 张卡全部含 10 固定字段 + 元信息行。
|
||
|
||
## 2026-09-23(追加·执行:治本 11 的「信息密度」一词二义 → 更名「展开深度检查」)
|
||
|
||
- **触发**:上一轮(三级留人点体系)留的两项「未同步项」之一,用户回复「按照建议执行」。
|
||
- **问题**:`创作流程/11_脚本检查和诊断.md` 里「信息密度」一词二义 —— 「二、信息密度检查」= **展开深度静态数量**(具名物品/对话组/步骤链/环境细节),四维度表里那条 = **时间轴频率**(已更名「留人密度」)。同名共存,读法不稳定。
|
||
- **处置(改名而非加注,消除同根)**:
|
||
1. **`11_脚本检查和诊断.md`**:「二、信息密度检查」→ **「二、展开深度检查」**(业务逻辑头、模块标题、四维度弱情感铺垫行、System Prompt 第 2 项/审核规则/知识指针、输出模板章节标题共 7 处);原「命名区分(防混淆)」改为「**命名沿革**」,保留两口径不互相替代的说明;「改为检查信息密度…」同步为「留人密度」。
|
||
2. **连带引用**:`SKILL.md`(能力清单行)、`创作流程/7_生成短视频大纲.md`:178(大纲校验项更名,与「展开深度标准」同名归一)。
|
||
3. **频率义引用统一为「留人密度」**:`创作流程/9_生成短视频脚本.md`(弱情感铺垫「留人密度优先」+ 赛道标准指针)、`创作流程/6_生成短视频框架.md`(弱情感铺垫等级行、三问自检 3 处、赛道标准指针、模板 A 侧描述)。
|
||
4. **症状名去同根**:`03_框架节奏/04_节奏控时`(2.2 节奏信号行、七、误区「信息密度过低」→「留人点过疏」);`03_框架节奏/01_标准爆款结构模板`(误区行「中段信息密度过低」→「中段留人点过疏」)。
|
||
5. **子技能副本同步**:`mcn-dou-analysis/references/知识库/视频拆解/框架04_节奏控时.md`(2 处)、`框架01_标准爆款结构.md`(1 处)。
|
||
- **保留边界(未动)**:「信息密度」作为**通用描述语 / 关键指标 / 方法论原文 / 文件标题**的用法一律保留(如 `01_标准爆款结构模板`:289「关键指标:信息密度高」、`08_对话风格/高信息密度Vlog创作法`、`创作流程/3_对标视频账号拆解`「每30秒信息增量」)—— 本次只治「作为阈值口径名或模块名」的义项,不做全量替换。
|
||
- **核对**:全树扫 `信息密度检查` → 有效规则**零残留**(剩余命中全部为 8 库方法论原文 + 第三方参考技能 + 本日志自身)。
|
||
|
||
## 2026-09-23(方案·未执行:极致事件卡片优化方案 V1.0)
|
||
|
||
- **触发**:用户指出「对于极致事件卡片,没有什么优化的建议和方案」。本方案为**卡片层专项**,与上一轮「留人点」(流程侧)并行、互不改口径。
|
||
- **核心结论**:卡片**主体不需重构**(三字段分工 事实/机制/效果 成立,外部评审亦认可);真问题是三条结构性问题 ——
|
||
① **存量卡两套口径并存**(同日 `极致事件卡_癫婆_模板版` 为 V1.2 的 10 字段;`极致事件提取_多类别样本` 12 条仍为旧口径 9 字段,全部用「表现形式」、且无新口径的「极致触点」);
|
||
② **「极致触点」一词三义**(布位层 = 爆点节点 / 卡片层 = 击中原因 / 8 库层 = 内容描述);
|
||
③ **10+N 的 N 不可见**(卡内无「所属库」标注,致本地缺口 1「12 个事件里 7 个定库无处可落」无法落地)。
|
||
- **外部 9 条建议判定**:**采纳 1**(双轴体系 → 用本地方案落地:卡片加归属标注 + 映射表「定库」列改可空);**改造 4**(事件强度评分 → 把已在使用但未定义的「主/辅」标注正式化,不新增字段;失败样本 → 不建新库,判定处补准入一行;真人细节 → 「极致内容」补「原话不概括」+「≥1 处真实毛边」;节奏字段 → 只取「铺垫量级」,出现位置与情绪曲线分别归 S7 布位、07_情绪共鸣);**否决 3**(卡片内嵌 Prompt 模板 = 越层;黄金组合字段 = 组合是用法非素材属性;标签三级分层之「一级心理刺激」= 违反 4.4 条款「情绪效果不设标签」红线;用户需求层 = 选题层职责)。
|
||
- **4 个外部「盲区」核实**:**3 个已被现有体系覆盖** —— 成长/蜕变 → 反差 + 期待铺垫 + 「内容含义」时间跨度变体;挑战规则 → 极致行为·强度拉满 + 难度极限;关系变化 → **预见式服务**标签,定义原文即「对方还没开口就已经做好」。仅「悬念/信息差」属标签层挤压(对应本地缺口 2),非新类型。
|
||
- **产出**:`极致事件卡片优化方案_V1.0_20260923.md`(仓库根,含 D1–D6 缺口、P0–P2 改动清单、明确不做清单、3 项待确认)。**技能文件零改动。**
|
||
|
||
## 2026-09-23(中段留人机制治本:新增「三级留人点体系」,合并 35 项两条口径打架的密度项)
|
||
|
||
- **触发**:用户提出「能否提升中间留人的吸引力,10 秒左右一个吸引点抓住用户注意力」。只读审计后发现瓶颈不在阈值松紧,而在**中段留人在技能里没有被定义成可产出、可自检的东西**。
|
||
- **审计发现(4 项)**:
|
||
1. **三条密度线口径打架**:A 信息密度 每10秒(`9_生成短视频脚本.md`:151/441、35项:73、`04_节奏控时`:48/91/106、`01_标准爆款结构模板`:246、`06_编导终审`:71)=下限防腐;B 钩子密度 每15秒(35项:72)**全技能无定义、无来源、无产出格式,悬空**;C 极致触点 每15-20秒(`7_生成短视频大纲`:66/159、`05_极致事件/03`:17/41)=上限爆点,资源有限**不可能也不应** 10 秒一个。
|
||
2. **产出粒度太粗**:S6「本场钩子」是**场级**(一场 15-25s → 15-25s 才一个留人设计);S7 只有 4 个极致触点布位、非窗口化 → **「每10秒一个吸引点」在全部产出物里没有字段**。
|
||
3. **校验强度倒挂**:S7 里 L1 极致触点是硬闸门,中段留人(原 L162-163)只是"参见知识库"软引用;而 L165-171 硬检查全是**静态数量**(具名物品≥12/对话≥4组/故事细节≥50),与时间轴无关。
|
||
4. **命名口径分化**:钩子类型存在 4 套并存的枚举(五类留人机制 / `01_标准爆款结构模板`:143-149 的「数据冲击·违背常识」/ `04_爆款开场` 10 种开场方式(CSV)/ `04_爆款开场` 8 个旧钩子文件口径)。
|
||
- **方案(路线 A 合并升级,非新增第 4 条平行线)**:三级留人点体系 —— **L1 极致触点**(15-20 秒,稀缺性保护,**不动**)/ **L2 留人点**(每 10 秒 ≥1,由 A 升级 + B 归并)/ **L3 增量点**(3-5 秒,知识库已有,落成字段)。L2 判据=观众产生一个明确的「为什么」(抛问题/打破预期/说到自己/给承诺,**类型名沿用五类留人机制**,不新造枚举);可自检换算=**本场最少留人点数 = ⌈本场时长 ÷ 10⌉**;分赛道分档=剧情/知识/口播/搞笑 10 秒、Vlog/美食/亲子/情侣 10-15 秒、沉浸/治愈/慢生活 15 秒。
|
||
- **改动(11 个文件)**:
|
||
- **口径单源**:`references/知识库/03_框架节奏/04_节奏控时叙事套路.md` 新增 1.3「三级留人点体系」(定义/阈值/判据/换算/分档/禁止混层);1.2 后各节与 2.2 节奏信号、七、误区、八、自查清单同步对齐(删「每15秒一个新信息」,情绪峰值 20 秒→15-20 秒)。
|
||
- **知识库对齐**:`03_框架节奏/01_标准爆款结构模板.md`(钩子类型表加五类口径说明,`数据冲击`/`违背常识` 归入反差画面;中间主体 ⑤ 与误区、自查清单指向 1.3);`03_框架节奏/06_编导终审验收标准.md`(「增量密度」→「留人密度」,中段不疲加「极致触点空档 ≤ 20 秒」,Step 4 与返工归因同步)。
|
||
- **创作流程产出与闸门**:`创作流程/6_生成短视频框架.md`(「本场钩子」列加 10 秒窗口粒度 + ⌈时长÷10⌉;新增「本场钩子 ≠ 极致触点」提示;场次结构输出模板占位符与校验行同步;模板A/B 与三段式速查表口径同步);`创作流程/7_生成短视频大纲.md`(新增「留人点布位」表 + 禁止混层/不计入留人点三类说明;校验规则新增**硬闸门**「留人点数 ≥ ⌈本场时长÷10⌉,不达标打回 S6」+ 类型覆盖 ≥2 类;原两条软引用改为指向 `01_标准爆款结构模板`;大纲输出模板各场新增留人点字段;开场钩子类型枚举改为五类)。
|
||
- **质检层**:`创作流程/9_生成短视频脚本.md`(L151/L441「信息密度」→「留人密度」);`创作流程/11_脚本检查和诊断.md`(类4 两项更名、四维度「信息密度」条目→「留人密度」并给出分档判据、输出模板行同步、弱情感铺垫评分项改为留人密度达标;**「二、信息密度检查」(展开深度静态数量)加命名区分注**,避免与新留人密度混淆);`知识库/09_脚本诊断/脚本质量自动检查清单_八类35项.md` 类4「钩子密度+信息密度」合并为「留人密度」、腾出槽位新增「留人点类型覆盖」(**类4 仍 3 项、总数仍 35 项**)。
|
||
- **极致事件层**:`知识库/05_极致事件/03_极致事件评估标准.md`(密度校验加「不计入彼此」说明;第四节分工表新增 `03_框架节奏` 行,明确「极致触点 ≠ 留人点,禁止互相替代」防爆点稀释;文件头加 09-23 变更行)。
|
||
- **钩子机制映射**:`知识库/04_爆款开场/00_开场方式全量覆盖分析.md` 新增第五节「五类留人机制 ↔ 开场方式 ↔ 中段复用」映射表 + 两条红线(中段选型不受 S5 限制、中段复用≠重放开场话术)。**替代原计划新建 5 篇中段方法论文件——五类机制的方法论本就在本库 10 篇开场方式文件里,新建属重复建设。**
|
||
- **子技能副本同步**:`subskills/mcn-script-review/SKILL.md` 与 `references/脚本复盘流程.md`(框架节奏维、爆款开场维「中间留人钩子」、中段不疲、评分总表行);`subskills/mcn-dou-analysis/references/知识库/视频拆解/框架04_节奏控时.md`(含 2.1 与节奏控制信号)。
|
||
- **版本标签**:`SKILL.md` frontmatter `updated_at`/`last_change` 更新(version 保持 1.0,与既往惯例一致)。
|
||
- **残留核对**:全树扫描 `钩子密度`/`每15秒`/`每10秒至少1个新信息`——**有效规则零残留**;剩余命中仅在 `subskills/mcn-video-prompt/参考skills/script-writing-studio/`(**第三方参考技能,禁改**)2 处。
|
||
- **遗留项(同日追加批次已解决其一)**:`11_脚本检查和诊断.md` 内「二、信息密度检查」与新增「留人密度」共用「信息密度」词根的**一词二义问题** —— 已于 2026-09-23 追加批次更名为「展开深度检查」(连带 10 文件同步,见上方「追加·执行」条)。**仍未做**:赛道分档阈值(剧情 10 秒 / Vlog 10-15 秒 / 沉浸 15 秒)为**推定值非实测**,建议跑 3-5 条真实脚本后按落选/留存数据回调。
|
||
- **关联产出**:`中间留人机制诊断与留人点体系方案_V1.0_20260923.md`(仓库根,含 8 项改动点清单与证据索引 文件:行号)。
|
||
|
||
## 2026-09-10(工作台配置收敛:端口/DB/目录单源化,代码层统一引用 config.json)
|
||
|
||
- **触发**:用户问「这些设定能否用配置,所有文件和脚本都引用,避免有调整时到处修改」。确认范围:只收敛代码层(不动文档/技能规范),配置放 `mcn-work-shop/config.json`。
|
||
- **目标**:工作台散落在 server.js / dsh-data.js / 4 个辅助脚本 / 前端 data-pages.js / start.bat 里的硬编码设定(端口 8900、DB 名 mcn-plugin.db、产出根 MCNSkill项目、榜单目录),统一收进 config.json,代码层一律从配置读,调整只需改 config.json 一处。
|
||
- **新增**:
|
||
- `mcn-work-shop/config.json`:单一配置源(port / dbName / outputRoot / businessDataDir / extraRoots)
|
||
- `mcn-work-shop/load-config.js`:配置读取唯一入口 + 默认值唯一来源(config 缺失/损坏回退 DEFAULTS)
|
||
- **改动**:
|
||
- `server.js`:`require('./load-config')` 取 CFG;`PORT_BASE = argv[2] || CFG.port`(argv 端口仍优先);`DEFAULT_ROOT` / `path.join(ROOT, CFG.dbName)` 从 CFG 读;`saveConfig` 合并写盘保留其它字段;错误提示「mcn-plugin.db」→ CFG.dbName 动态
|
||
- `dsh-data.js`:删本地 loadCfg,改用 loadConfig;`DSH_DB = path.join(__dirname, CFG.dbName)`;榜单目录 `path.join(...CFG.businessDataDir)`
|
||
- `build-create-prompts.cjs` / `submit-review-tasks.cjs` / `poll-create-tasks.cjs` / `poll-review-tasks.cjs`:DB / API 端口 / prompt 内 dbName 字面量 → CFG 动态
|
||
- `public/data-pages.js`:新增 `const BASE = location.origin`;SKILL_HINT_VIDEO_PARSE / SKILL_HINT_ANALYZE / saveHintOf 里的 `http://localhost:8900` 全部改 BASE 动态(前端读不到 server 端 config.json,用 location.origin 让回调地址端口自动跟随当前访问地址)
|
||
- `start.bat`:端口从 config.json 读取(`for /f` + load-config),不再写死 8900
|
||
- **踩坑**:`load-config.cjs` 用 `.cjs` 扩展名时,`require('./load-config')` 无扩展名解析会 MODULE_NOT_FOUND(Node 不会把 .cjs 作为无扩展 require 的解析目标)→ 重命名为 `load-config.js`(无 package.json,默认 CommonJS)后所有引用自动生效。node --check 只查语法不执行 require,此坑在运行时才暴露。
|
||
- **验证**:8 文件 node --check 全通过;`loadConfig()` 正确读回 config.json 全字段;工作台重启 HTTP 200(端口 8900、产出根 MCNSkill项目 均从 config 正确读取)。
|
||
|
||
## 2026-09-10(dsh 部署环境废弃:三环境 → 两环境,判定简化为一步)
|
||
|
||
- **触发**:用户确认「第一步 技能路径含 `.dsh` 路径段 ② dsh 部署环境 —— 没有这个环境了」。实测依据:`~/.dsh/skills/` 不存在、`~/.dsh/mcn-plugin.db` 不存在、`~/.dsh` 下仅剩 `profiles/`、`D:\dshworkspace` 整个目录不存在。
|
||
- **判据 v3(一步 · 仓库特征判定)**:删除 `.dsh` 路径段判定步骤,仅保留 `git -C {技能目录} rev-parse --show-toplevel` 返回仓库根 = ①开发机、失败 = ②用户环境(无 git 兜底向上找 `.git`)。环境模型由三环境精简为两环境。
|
||
- **产出结果不变**:两环境(开发机/用户环境)产出本就同构(桌面 `MCNSkill项目/`),仅判定依据简化。
|
||
- **改动范围**:
|
||
- **判定层**:`V1.0/references-add/路径配置.md`、`Lite1.0/references-add/路径配置.md`、`subskills/mcn-dou-analysis/references/路径配置.md`、`subskills/mcn-video-prompt/references-add/路径配置.md`(判定表/执行规则/解析规则/变更记录,v3)
|
||
- **SKILL 层**:`V1.0/SKILL.md`(榜单读取 71/78、外部技能依赖 dsh 副本删除、产出路径表述)、`Lite1.0/SKILL.md`、`subskills/mcn-dou-analysis/SKILL.md`(42/44/51/52/58/59/82/95 行)、`subskills/mcn-video-prompt/SKILL.md`(502/505/531-539)、`subskills/mcn-data-insight/SKILL.md`(90-96/116 行)
|
||
- **标准库**:5 份 `references/规则/路径引用规范.md`(「三种机器」→「两种机器」)、`references/创作流程规范.md`、`references/创作流程/{11_脚本检查和诊断,4_账号设定解析和确认}.md`、`references/接口调用/{MCP_工具调用规范,自动化任务清理规范}.md`
|
||
- **数据源层**:`subskills/mcn-data-insight/scripts/fetch_week_ranks.py`(删 `.dsh` 分支代码)、`mcn-work-shop/dsh-data.js`(删 `isDshDeploy` 分支 + 注释)、`mcn-work-shop/public/data-pages.js`(SKILL_HINT_RANKING + 写库注释)、`subskills/mcn-data-insight/subskills/{douyin-rise-ranking,douyin-weekly-surge,douyin-content-surge,douyin-daily-hot}/SKILL.md`、`references/规则/抖音数据规则.md`
|
||
- **账号分析层**:`references/账号数据分析方法.md`、`references/feature/{01_获取账号信息,03_提炼账号设定,04_分析视频数据,06_生成账号设定卡片}.md`、`references/铁律避坑规则/账号信息获取执行避坑.md`(删「dsh 原库」)、`references/浏览器搜索抖音账号操作规范.md`(159/175 行 browser-harness dsh 部署环境)
|
||
- **README**:`references-add/README.md`(两处)、`subskills/mcn-dou-analysis/references-add/README.md`、`subskills/mcn-video-prompt/references-add/README.md`、`subskills/mcn-video-prompt/references/README.md`
|
||
- **残留核对**:全树扫描 `.dsh`/`dshworkspace`/`dsh 部署`/`dsh 环境`/`dsh_MCNProject`/`②dsh`/`③用户环境`——**当前有效规则零残留**,剩余命中全部为豁免三类:①变更记录/变更日志历史行;②「09-10 起 dsh 环境已废弃」说明文字;③`路径引用规范.md` 用户级路径示例 `{主目录}/.dsh/...`(DSH 工具配置目录,非部署环境)。工作台重启验证 HTTP 200,`dsh-data.js`/`fetch_week_ranks.py` 语法校验通过。
|
||
|
||
## 2026-09-10(路径治本:环境判定锚点重构为「仓库特征判定」+ 全树写死路径清理)
|
||
|
||
- **触发**:仓库本地路径由 `D:\AgentSkill\mcn-video-script` 迁移至 `D:\AI技能\mcn-short-video`,`D:\AgentSkill` 已不存在 → 全部以「本机是否存在 `D:\AgentSkill`」为锚点的环境判定**失效**,开发机被误判为「③ 用户环境」(产出落桌面、且误启用 references-add 增量分支)。同时发现技能目录 8 处**真实读写路径**写死盘符。
|
||
- **判据重构(新口径 v2 · 两步)**:
|
||
- 第一步:技能路径是否含 `.dsh` 路径段 → 含 = ② dsh 部署环境
|
||
- 第二步:不含 `.dsh` 时,`git -C {技能目录} rev-parse --show-toplevel` 能返回仓库根 = ① 开发机(处于源技能 git 检出内);命令失败 = ③ 用户环境。无 git 环境兜底:从技能目录向上逐级查找 `.git`
|
||
- ⚠️ 必须 `.dsh` 优先判定——`~/.dsh` 自身也是 git 仓库,先查 `.git` 会把 dsh 环境误判为开发机
|
||
- **产出根目录三环境结果完全不变**,仅判定依据改变
|
||
- **改动范围(21 个文件)**:
|
||
- **规范层**:`references/规则/路径引用规范.md`(允许项「锚点禁止用写死盘符」+ 禁令项示例 `D:\MyRepo` + 豁免表);`V1.0/references-add/路径配置.md`、`Lite1.0/references-add/路径配置.md`(判定表/执行规则/解析规则/变更记录);两份 `references-add/README.md`
|
||
- **标准库副本(4 份 `路径引用规范.md` 同步)**:`subskills/{mcn-data-insight,mcn-dou-analysis,mcn-script-review,mcn-video-prompt}/references/规则/`
|
||
- **子技能判定节**:`subskills/mcn-dou-analysis/{SKILL.md,references/路径配置.md,references-add/README.md}`、`subskills/mcn-video-prompt/{SKILL.md,references-add/README.md,references-add/路径配置.md,references/README.md}`
|
||
- **MCP 文档**:`references/接口调用/MCP_工具调用规范.md`、`subskills/mcn-dou-analysis/references/接口调用/MCP_工具调用规范.md`(开发/非开发环境判定)
|
||
- **Lite1.0**:`SKILL.md` 外部技能依赖段落(见下)
|
||
- **真实读写路径修复(B 类 8 处)**:
|
||
- `mcn-work-shop/server.js`:新增 `BROWSER_LOCK_FILE = path.join(ROOT, '.browser-lock')`、`SESSION_CWD = ROOT`;2 处 `const cwd` 与 `BROWSER_LOCK` 改用常量;`SESSION_CWD_PATTERN` 由 `'%mcn-workshop%'` 放宽为 `'%mcn-work%'`(**同时兼容历史会话 mcn-workshop 与新建会话 mcn-work-shop**,避免 6 小时清理对旧会话失效)
|
||
- `mcn-work-shop/build-create-prompts.cjs` / `submit-review-tasks.cjs`:prompt 内 DB 绝对路径 → 改用文件内既有 `DB` 常量插值
|
||
- `V1.0/SKILL.md` 第 5 条:文档里的运行时 `cwds=["D:\AgentSkill\mcn-workshop"]` → 改为 `<工作台目录>`(由 server.js 从 ROOT 动态推导)
|
||
- **Lite1.0 外部技能依赖修正(09-02 结构变更补同步)**:原段落仍写「三环境两步判定 + `D:\AgentSkill\mcn-dou-analysis` 外部路径」,既失效又未同步 09-02「mcn-dou-analysis 并入 `subskills/`」变更。修正为:**Lite1.0 目录下无 `subskills/`(实测),未内置该技能**;需要账号解析改用完整版「短视频工作台」V1.0,或先把技能同步进 `Lite1.0/subskills/` 后按相对路径 `subskills/mcn-dou-analysis/SKILL.md` 调用;禁止盘符绝对路径定位。
|
||
- **BROWSER_LOCK 契约同步**:`subskills/mcn-dou-analysis/references/浏览器搜索抖音账号操作规范.md` 5.6 节锁文件路径由 8 处盘符硬编码 → 改为相对 `.browser-lock`(工作台触发的会话 cwd 即工作台目录),并注明以工作台注入的绝对路径为准。
|
||
- **残留核对**:全树扫描 `AgentSkill` 剩 18 处(含本条目自身 5 处),**全部为豁免类别**——变更记录/变更日志行 11 处、frontmatter `last_change` 摘要 1 处、09-04/09-10 修正说明行 2 处、Lite 技能审计报告历史 2 处、路径引用规范修订脚注 1 处、本条目残留核对说明 1 处。**当前规则行零残留**。`mcn-video-script` 剩 1 处(变更记录行)、`MCNVideo AI` 剩 3 处(Lite 审计报告历史)。
|
||
|
||
## 2026-09-07(S1/S2 产物文件名改名:01_需求理解 / 02_需求补全)
|
||
|
||
- **决策**:产物文件名 01_需求拆分.md / 02_需求拆解.md(旧步骤名「需求拆分任务规划 / 任务需求拆解完善」残留,两词同音近义、与现行步骤名对不上)→ 改名 **01_需求理解.md**(S1 产物=五板块状态表)/ **02_需求补全.md**(S2 产物=归类+AI 补全)。命名口径:编号承担"属于哪步"(01=S1、02=S2),文件名承担"装了什么"(与 03_对标拆解~11_诊断报告 产物语义名体系一致;不采用对齐步骤名方案,避免与 references/创作流程/1_意图识别.md、2_需求完善.md 撞名)。
|
||
- **影响面(V1.0 内 9 处,运行时产物文件无需 mv)**:创作流程规范 L49/L68(行文 01需求理解~08广告植入)、L78、落盘表 L426-427、L452(需求拆分/拆解→需求理解/补全);1_意图识别 L83 User Prompt 引导语「完成需求拆分和任务规划」→「完成需求理解与信息完整度判定」(旧步骤名残留联动清理);11_脚本检查和诊断 L241-243。
|
||
- **写入事故复盘(补入失误记录)**:同文件多处 Edit 并行提交发生写竞态——前一个 replace_all 的成果被并发写覆盖丢失(L49/L68/L427 残留),串行补做后零残留。教训:**同一文件多处修改必须串行,禁止并行 Edit;改后全量 grep 验证零残留**。
|
||
|
||
|
||
- **D·视觉脚本 → D·视觉短片(全量)**:S9 格式列举(SKILL.md)、S6 内容形式映射表(F04 测评种草/F07 纯视觉短片)、S9 正文 6 处、创作流程规范 3 处、03_框架节奏/07_脚本格式选择指南 8 处——与工作台需求框/用户既定术语对齐,消除「纯视觉短片→D·视觉脚本」混用。
|
||
- **预设钩子 → 开场钩子(全量)**:S5 选题方案字段(含 10 种开场方式引用)+ S7 大纲回扣语义 + 04_爆款开场/00_口径说明——对外统称「开场钩子」(=S6 场1 段名、工作台需求框 hook 字段同名同义),S5 阶段语义由「预设」改为直接以开场钩子表达。
|
||
- **需求框-技能衔接注明(mcn-work-shop/prompts/clarify.md)**:内容形式 4 项为粗选方向,落创作时细化为 S6 口径(口播→教程/知识分享/盘点,视觉短片→测评/沉浸式);故事框架四词(钩子前置/悬念反转/递进铺垫/先抑后扬)=达人倾向词,由 S6 用叙事形态 F01-F08 + 结构模板(三段式/五段式)定型。
|
||
- **规则沉淀(09-07)**:新增 references/规则/概念分层与源头表述规范.md(先分层再落笔:策略/实现/容器各写源头正文;禁止 X=Y/括注跨文档打补丁,改源头正文;同族术语对外一个总称、改名一次全链路;含开场钩子家族案例);SKILL.md 红线摘要区新增 🔴 索引行;项目级 技能审计检查清单.md 一致性维新增第 11/12 条(概念分层、源头表述自洽),编号重排 1→15,使用方法补层级先于枚举。
|
||
- **开场钩子分层表述源头化(5_选题 / 6_框架 / 04_爆款开场·00_)**:三个源头正文自洽——开场方式(04_ 库 10 种标准分类)由 S5 依据用户要求/账号结构性符号/对标拆解(S3)选定并写入选题方案;S6 场次表「本场钩子」=五类留人机制(悬念提问/反差画面/直击痛点/身份共鸣/利益承诺),场1 的本场钩子用于把 S5 已选开场方式实现为镜头与台词。消除 S5「钩子类型」一词双指(表头改「开场方式」、方案字段行改为单一开场方式成分);不再以对照式/括注维护,概念各归其位。
|
||
|
||
## 2026-09-07(S1/S2 五板块归一 + 台词风格降层 + 说话风格词族全链路)
|
||
|
||
- **S1/S2 五维度 → 五板块(顶层集合归一)**:1_意图识别 / 2_需求完善 顶层一律为 账号设定 / 选题 / 框架 / 大纲 / 广告Brief(与 S2/S3 板块名、S4 输入引用、下游产物链对齐);S1 原「人设信息」行改名「账号设定」;「选题信息/框架信息」后缀去除;SKILL.md 步骤1 描述、创作流程规范落盘表说明(五板块状态表 + 02 容器不补全)同步。
|
||
- **台词风格顶层维度降层**:S1 判定表删顶层「台词风格」行,语气/语速/口头禅/语言禁忌并入 账号设定·说话风格 子项(保留推荐级);S2 补全策略 D「台词风格补全」并入 A「账号设定补全(含说话风格子层)」,E 重编号为 D;S2 大纲板块明确定位=草稿容器(承接用户已写段落,缺失正常由 S7 生成,不补全、不参与必补判定)。
|
||
- **语音层词族全链路统一为「说话风格」**(对齐 S4 达人设定⑤说话风格权威字段名):S3 拆解维度行与对标视频表列、S7 输入/自检 3 处、S8 广告植入 4 处、S9 输入与一致性检查 3 处、S11 检查轴 2 处(台词风格一致性→说话风格一致性)、人设设计参考选项十(台词风格设计用→说话风格设计用);「语言风格」仅保留于 S4 卡模板内部作 ⑤说话风格 的子成分描述语(2-3 个形容词层),不再作为对外字段名。S1/S2 内与卡内层级词区分:需求层=板块/子项,卡内=达人设定维度①-⑨。
|
||
- **S2 大纲板块下游断链修复**:7_生成短视频大纲 输入段补「步骤2大纲草稿容器→大纲生成起点和约束」承接句式(对齐 S5/S6 既有模式)。
|
||
- **顺带修正**:创作流程规范落盘表 05 行「钩子预设」→「开场钩子」(此前改名漏网变体)。
|
||
## 2026-09-07(S5↔S4 字段漂移修复:账号定位补「核心价值类型」7 字段)
|
||
|
||
- **根因**:S4 账号定位重构为 6 字段时漏掉旧模板「②核心价值类型」字段,S5 约束提取仍按旧编号引用(维度①赛道/受众/差异化、维度②核心价值类型)——核心价值实为 S5 选题生成锚点(L304 推导依据)+ 选题方案必填输出字段(core_value_type),非可删引用。
|
||
- **修复(用户选方案 1 补字段)**:S4 账号定位 6→7 字段(赛道定位后插入「核心价值类型:知识/情感/实用/娱乐/观点 选 1,细化参考 人设设计参考选项.md 五、主导价值」;确认清单①、输出模板表、P0 输入约束承接规则同步补行);S5 约束提取 4 行去旧编号改指 S4 现行字段名 + 老卡缺字段兜底(由赛道定位+内容打法推导并回填);参考选项五标注改「账号定位·核心价值类型」;SKILL.md 步骤 4 输出描述同步 7 字段。
|
||
- **影响面**:仅技能层 4 文件;工作台账号设定为自由 md 无固定字段表单,不受影响;存量人设卡片零迁移(S5 读取兜底)。
|
||
|
||
## 2026-09-07(B项收尾:落盘表说明列修正 + 人设设计参考选项对齐 S4 卡模板 + dsh 副本废弃)
|
||
|
||
- **创作流程规范落盘表 04 行说明列修正**:「账号设定 + 人设卡片」→「账号设定 + 达人设定」(04_人设卡片.md 内容 = S4 产出的账号设定+达人设定两个板块,原说明列自指文件名系笔误)。
|
||
- **人设设计参考选项.md 编号体系对齐 S4 人设卡片**:删除全文旧版「达人维度③/④/⑥/⑧」「账号维度②」编号(源自旧 9 维模板,与 S4 现行「达人设定 6 章节:身份人设/性格人设/外在特质/价值观与底线/说话风格/行为决策 + 账号定位 6 字段」不同源,实锤错位);各章标注改为指向 S4 现行字段(核心性格/气质/小瑕疵/情绪倾向→性格人设,三观→价值观与底线,语态细节→说话风格,专属符号→外在特质·记忆符号,传递感觉→账号定位·差异化定位,主导价值→账号定位·核心价值类型);文件头用途行新增章节归属说明。dou-analysis 子技能知识库副本同文件同步(台词风格设计用→说话风格设计用)。
|
||
- **决策记录**:dsh 技能副本项目经确认不存在,同步策略更新为「只改 V1.0 源;Lite1.0 默认不动、术语同步由用户手动发起」。
|
||
|
||
## 2026-09-04(R73/R74 技能树体量优化)
|
||
|
||
主 SKILL.md 压缩维护:frontmatter `last_change` 明细迁移至本文件(历史归档);11 步流程 ASCII 总览图压缩为行式 Gate 链(S1→[G0]→…→[G6]);文件底部新增「阅读分层」说明(🔑 导航行/🚫 红线/无标记正文三类)。
|
||
|
||
## 2026-09-04(子技能索引登记 + 外部依赖路径修正)
|
||
|
||
- 新增「子技能索引(subskills/)」章节:subskills 下 6 个子技能全部登记入主 SKILL.md(browser-harness/lieflat-charts/mcn-data-insight/mcn-dou-analysis/mcn-script-review/mcn-video-prompt),引用一律相对路径 `subskills/<目录>/SKILL.md`;目录树补 `subskills/` 行。
|
||
- 修正外部技能依赖段落:mcn-dou-analysis 原「D:\AgentSkill 两步判定」规则废弃(独立仓库不存在,改 subskills/ + dsh 平级 `~/.dsh/skills` 双描述);browser-harness 可执行文件改技能自带 venv 相对路径(原 uv 工具安装已废弃);lieflat-charts 路径改相对。
|
||
- 全文件旧绝对路径引用零残留。
|
||
|
||
## 2026-09-03(技能更名 + 触发条件补清理场景)
|
||
|
||
- 技能更名:短视频脚本创作 → **短视频工作台**(用户定,对外统一名称;触发方式与引用结构不变)。
|
||
- 触发条件新增 🧹 后台任务清理场景:用户问后台任务/清理过期失败任务时按 `references/接口调用/自动化任务清理规范.md` 执行——只清过期或错误失败的一次性任务,禁清未来/周期/运行中任务,删除走宿主工具禁直改库。
|
||
|
||
## 2026-09-02(工作台 AI 任务契约与执行铁律)
|
||
|
||
- 工作台新增第 7 条「AI 任务入口技能契约(P0)」:所有 AI 会话任务入口须遵守功能入口×技能调用契约(prompt=技能前缀常量+业务正文+skills 参数级挂载),新增/修改入口前先读 `mcn-work-shop/docs/AI会话任务输入输出对照.md`(含新增入口检查清单 7 项)——防裸 prompt 跳步/技能声明混入业务串/BROWSER_HINT 误注入;原第 7/8 条顺延为 8/9。
|
||
- 工作台任务执行方式铁律固化:创作/改写/复盘必须走 `POST /api/run` + skills 参数,禁会话内手写草稿。
|
||
- 调度机制实测定稿 + 端口 8899→8900。
|
||
|
||
> ⚠️ 仅记录 2026-09-02 起的变更明细(本文件创建前,更早历史未归档——如确需追溯请查 git 提交历史)。
|