name: write-task-log description: 指导 AI 正确填写任务日志,并在任务完成后自动提取认知价值。当任务完成后、对话即将结束时、或用户提到「写日志」「更新日志」「任务记录」时自动触发。对应 AGENT_RULES.md RULE-01/02/03。版本:v2.0(2026-03-19新增步骤四:认知提取)
任务日志填写技能
每次任务完成后,按以下步骤操作。顺序不可颠倒,四步必须全部完成。
设计原则(v2.0新增):默认模式是执行任务,不是捕捉认知。但每次任务完成后,自动提取认知价值,作为认知结构飞轮的燃料。郑总无需主动触发,这是系统自动完成的后台步骤。
步骤一:在 任务日志.md 追加日志条目
文件路径:/Users/boyuan/aiwork/0310_huaxiang\_内部总控\任务日志.md
格式模板
---
## [TASK-YYYYMMDD-NN] 任务名称
**日期**:YYYY-MM-DD
**执行者**:AI(Claude)
**触发来源**:用户需求 / 联动规则XX / 内部计划
**触发的 Skill**:[逗号分隔的 Skill 目录名,如 role-产品经理, skill-designer](可选,有明确 Skill 触发时填写)
### 完成的工作
(简明描述做了什么,关键决策是什么)
### 创建/修改的文件
- 新增:`路径/文件名`(说明用途)
- 修改:`路径/文件名`(说明改了什么)
### 关联关系
(本次任务与其他项目/文档的关系,使用 explains/implements/depends-on 等类型)
### 用户原始需求(逐条记录)
- 需求1:...
### 遗留事项
(未完成、需后续跟进的内容,无则写"无")
规则
- ID 格式:
TASK-YYYYMMDD-NN(当日第 NN 条)- 防并发冲突(必须执行):写入前,用 grep 扫描
任务日志.md全文中今日所有TASK-YYYYMMDD-条目,取最大序号 NN,新序号 = NN+1 - ⚠️ 禁止:只读文件末尾来判断序号——多 session 并发时末尾序号可能已落后
- 防并发冲突(必须执行):写入前,用 grep 扫描
- 只增不减:绝对不修改历史条目,只在末尾追加
- Session 结束时,在最后一条日志末尾追加需求汇总(用户的明确需求 + 隐含设计倾向 + 对未来方向的暗示)
步骤二:更新 项目排期表.md
文件路径:/Users/boyuan/aiwork/0310_huaxiang\_内部总控\项目排期表.md
检查该任务是否已在排期表中?
├── 已存在 → 更新状态字段(🔲待开始 → 🟡进行中 → ✅完成)
├── 属于某母任务 → 在母任务下加子任务并标注状态
└── 全新任务 → 在总览表 + 详细条目区追加
例外:纯文档小修改(改错别字)无需更新排期表。
步骤三:检查是否需要触发联动
查看 AGENT_RULES.md 第六节联动规则表:
| 触发事件 | 是否发生 | 需要触发的联动 |
|---|---|---|
| ①公理体系变动 | ? | 场景A + B |
| ②体系结构变动 | ? | 场景G(通知TF) |
| TF变动(含Breaking Change) | ? | 场景I(通知所有APP) |
| ④⑤分身数据格式变动 | ? | 场景L(通知消费方) |
如有联动需要触发,参见技能 trigger-linkage-rules/SKILL.md。
步骤四:认知提取(v1.1 废弃,由步骤五接管)
⛔ 本步骤已废弃(2026-03-21)。
原因:步骤四在充满操作细节的主 context 中执行认知提取,视角受污染;且所有类型均路由到 L2(L1.5候选被错误降级)。
功能完全由「步骤五:认知萃取(cognitive-task-reflector)」接管,步骤五提供独立 context + 正确路由。
步骤五:认知萃取(v1.1 新增,替代步骤四)
触发条件(满足任一条件即触发,G-04 扩展):
条件①(认知类关键词):任务日志条目(### 完成的工作)包含以下关键词之一:
cognitive- / L1 / L1.5 / L2 / L3 / 认知结构 / 碎片 / 整合 / 原则 / 矛盾 / 自洽
条件②(角色类 Skill 触发,新增):任务日志的「触发的 Skill」字段(可选字段)包含以下 Skill 名之一:
role-AI工程师 / role-产品经理 / role-技术架构师 / role-UI设计师 / role-数据分析师 / skill-designer / research-output
(这些角色的工作有较高认知洞见价值,即使不含认知类关键词也应尝试萃取)
不满足任何条件 → 步骤五静默跳过,不询问用户。
执行方式:
IF 触发条件满足:
调用 cognitive-task-reflector 子智能体
输入:{
task_log_entry: [刚写入的 TASK-YYYYMMDD-NN 完整条目内容]
}
⚠️ 本调用属于认知子任务,不触发 session-bootstrap 序列B(见 B0 排除清单)
处理输出:
IF candidate_fragments 非空:
向用户展示:
「🔍 认知萃取(cognitive-task-reflector)发现 N 条候选:
[逐条:category / title / reason_for_inclusion]」
用户逐条确认:
→ route="L2碎片" → 调用 cognitive-capture-fragment(同样不触发B序列)
→ route="L1.5候选" → 告知:「建议触发 cognitive-extract-principle 完整流程」
[立即触发] [下次处理]
IF candidate_fragments 为空:
步骤五静默完成,不向用户展示任何内容
IF 触发条件不满足:
步骤五静默跳过
与旧步骤四的对比:
| 维度 | 旧步骤四(废弃) | 新步骤五(接管) |
|---|---|---|
| 执行位置 | 主 context(含操作细节) | 独立 context(仅读日志+L0+L1.5) |
| 触发范围 | 每次任务后必须扫描 | 仅认知类任务(含关键词)自动触发 |
| L1.5候选路由 | 错误写入 L2 | 正确路由到 cognitive-extract-principle |
| 输出控制 | 固定汇报3条 | 候选为空时静默完成,不打扰 |
快速检查清单
完成任务后,逐项确认:
-
任务日志.md末尾已追加新条目(格式正确,ID 唯一) -
项目排期表.md状态已更新 - 跨项目联动已评估(有触发则处理,无则记录"已评估,无需联动")
-
步骤四认知提取(已废弃,由步骤五接管) - 步骤五认知萃取:触发条件满足则 cognitive-task-reflector 已调用;不满足则静默跳过
变更记录
v1.4 — 2026-03-22 — 序号防并发冲突机制同步(GAP-CO009-1 修复)
根因:scenario-sandbox-builder Phase 2 验证(CO-009沙盘)发现:write-task-log SKILL.md 的序号生成逻辑与 session-bootstrap B4(v1.2 更新的 grep防冲突)存在双轨漂移——直接触发此 Skill 时走 SKILL 内逻辑(无grep),绕过了 session-bootstrap 的防冲突修复。
修改内容:
- 修改:「规则」章节的 ID 格式说明 → 从「当日第NN条,从01起」改为「grep全文扫描取最大序号+1」
- 新增:⚠️ 禁止只读末尾的强制约束
- 备份路径:
history/SKILL_v1.3_20260322_before_co009.md
验证方法:触发 write-task-log 时,序号生成步骤应包含 grep 扫描逻辑,与 session-bootstrap B4 一致 验证状态:🔵 待验证
v1.3 — 2026-03-22 — 步骤五触发条件扩展(G-04 修复,PD-011 元验证发现)
根因:skill-closure-verifier-meta 对 PD-011(AI工程实现大闭环沙盘)执行 Phase 2 验证,发现 write-task-log 步骤五触发关键词全为认知体系词汇(cognitive-/L1/L2等),AI工程任务日志(如「完成 Prompt 设计」「实现 LLM 调用链」)不含这些词,导致 cognitive-task-reflector 不被触发,AI工程实践经验无法回流认知结构。
修改内容:
- 修改:步骤五触发条件 → 从单一「认知类关键词」扩展为「条件① 关键词 OR 条件② 角色类Skill」
- 新增:条件②(角色类 Skill 触发)——当任务日志「触发的 Skill」字段含特定角色 Skill 名时,也触发步骤五
- 新增关键词:
自洽(认知体系词汇补充) - 备份路径:
history/SKILL_v1.2_20260322_before_g04.md
验证结果:
- 正向验证:完成 role-AI工程师 任务后,任务日志触发的Skill字段含「role-AI工程师」→ 步骤五触发,cognitive-task-reflector 尝试萃取认知价值
- 负向验证:纯 DevOps/文章写作任务(触发的Skill不在扩展列表)仍静默跳过,不生成低质量碎片
验证状态:🔵 待验证
v1.2 — 2026-03-21 — 任务日志格式新增 triggered_skills 字段(SD3 修复)
根因:skill-evolution-planner-meta 在演进规划时依赖 CO-BUILD-LOG + PENDING-EXPERIENCES,但没有「哪个 Skill 被触发了多少次」的频率数据。任务日志是天然的 Skill 使用记录,但当前格式无结构化 Skill 字段,只能从「完成的工作」文本中猜测。
修改内容:
- 修改:任务日志格式模板 → 新增可选字段「触发的 Skill」,填写本次任务中明确触发的 Skill 目录名(逗号分隔)
验证结果:
- 正向验证:有明确 Skill 触发的任务日志包含该字段
- 负向验证:字段为「可选」,未触发明确 Skill 的任务(如纯对话)不强制填写
v1.1 — 2026-03-21 — 废弃步骤四,新增步骤五(cognitive-task-reflector 接管,CS-013 修复)
根因:Phase 2 关卡B C-2 问题:write-task-log 步骤四与 cognitive-task-reflector 功能双写,同一任务日志被提取两次;关卡A C4-3 问题:步骤四所有类型均路由到 L2(L1.5候选被降级)。CS-013 沙盘确认步骤四在操作细节充斥的主 context 中执行,视角受污染。
修改内容:
- 废弃:步骤四(原认知提取),保留说明文字供参考,标注废弃原因
- 新增:步骤五(认知萃取)——调用 cognitive-task-reflector 子智能体,仅在认知类任务(含关键词)后自动触发;候选碎片含正确路由(L2→capture-fragment / L1.5→extract-principle);无候选时静默完成
- 备份路径:
history/SKILL_v1.0_20260321.md
验证结果:
- 正向验证:完成 cognitive-reorganize 任务后,步骤五自动触发 cognitive-task-reflector,输出包含 excluded_items 的候选列表(待验证)
- 负向验证:完成前端开发任务(无 cognitive-* 关键词)后,步骤五静默跳过,无弹出询问
验证状态:🔵 待验证