用途
ChatCrystal Task Writeback 用于在完成有实质意义的工作之后,写入可复用的 ChatCrystal 任务记忆。它针对的是那些产生了持久价值的实现或排查结果,例如持久性修复、有意义的易踩坑点、可复用的模式,或明确的工程决策。
主要能力
该技能的核心是围绕 write_task_memory 组织记忆写回流程,并让 ChatCrystal Core 决定一条记忆应被跳过、合并还是新建。技能本身不重新实现跳过或合并逻辑。它支持四种记忆结果类型(memory.outcome_type):
- fix:需要包含 root_cause 或 resolution。
- pitfall:需要包含 pitfalls,以及 resolution 或 reusable_patterns。
- decision:需要包含 decisions。
- pattern:需要包含 reusable_patterns。
使用方式
仅在实质性工作完成、且结果产生了可复用知识之后触发。技能要求先做质量门禁预检:确认候选内容属于经验资产,而不是工作日志。当摘要只说明改了什么、而不说明为何重要,没有清晰的问题、决策、易踩坑点、解决方案或可复用模式,或任务没有为未来工作留下持久教训时,不应调用 write_task_memory。
自动写回必须包含 source_run_key;如果没有,应输出结构化候选以供稍后保存,而不是静默写入手动记忆。当 write_task_memory 可用且运行时具有稳定的 run 或 session key 时,以 mode: "auto" 调用,并提供 source_run_key、task.goal、task.task_kind、task.project_dir、task.cwd、task.branch,必要时提供 task.source_agent,以及 memory.summary、memory.outcome_type,并按需提供 memory.root_cause、memory.resolution、memory.error_signatures、memory.files_touched、memory.tags。
mode: "manual" 只应用于显式的手动保存流程,绝不作为自动写回的静默回退。默认采用项目范围(project scope)的知识;仅对明确跨项目的知识使用全局范围,且只在显式手动保存流程中这样做。
文档提供了 MCP 输入示例,示例目标为修复 MCP recall schema 校验,task_kind 为 debug,outcome_type 为 fix,并给出 root_cause、resolution、files_touched 与 tags 等字段。
全量与降级模式
Full 模式要求 ChatCrystal Core 加 MCP 访问 write_task_memory。若 Core 报告 skipped,应保留任务结果,但不强制持久化。
若 ChatCrystal Core 或 MCP 工具不可用,或自动写回没有稳定的 run key,则进入降级模式:不得声称记忆已保存;应在响应中输出结构化记忆候选以供稍后保存,保持候选与 write_task_memory.memory 载荷结构一致;并且不要指示运行时把自动安装 ChatCrystal Core 作为技能流程的一部分。
结果报告
应准确报告持久化结果,包括 created、merged、skipped 三种状态。
适用场景与限制
适用于需要把修复、坑点、模式与工程决策沉淀为可复用任务记忆的开发或调试工作流。限制包括:依赖 ChatCrystal Core 与 MCP 工具进行完整写回;自动写回依赖稳定的 run 或 session key;质量门禁要求候选必须是经验资产;本技能不负责重新实现跳过或合并逻辑。