plugins/tools/task/skills/done/SKILL.md
任务终结。所有验收通过后触发,汇总执行结果、生成完成报告、提取经验教训写入 lessons.json
npx skillsauth add lazygophers/ccplugin plugins/tools/task/skills/doneInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
任务终结,总结执行结果并整理经验。
优先使用 flow 传入的 verify_result 和 plan 数据(避免重复读取文件)。
如果 verify_result 包含通过状态,直接复用其 evidence_summary、quality_score 和 score_breakdown。
如果是非正常完成(放弃等),从各阶段数据文件汇总(读取 index.json、align.json、task.json、context.json)。
向用户输出简洁的完成报告(≤20 行),包含:
[flow·{task_id}·done] 任务完成
## 结果
- 目标:{task_goal}
- 状态:{成功/部分成功/失败}
- 子任务:{completed}/{total} 完成
## 变更文件
- {file_1}:{变更摘要}
## 验证
- {criteria_1}:✓ 通过
## 经验(如有)
- {lesson_1}
不重复已有的 verify 证据。
从执行结果中提取非显而易见的经验,写入 .lazygophers/lessons.json(项目级,跨任务共享)。
只记录有价值的经验。"代码需要通过 lint" 不值得记录;"项目的 ruff 配置禁用了 E501 所以长行不算违规" 值得记录。
每条经验结构:
{
"task_id": "任务ID",
"task_type": "bug-fix|new-feature|refactor|...",
"outcome": "success|partial|failed",
"timestamp": "ISO8601",
"modules": ["涉及的模块路径"],
"keywords": ["任务关键词,用于语义匹配"],
"lessons": [
{
"category": "pattern|pitfall|toolchain|style",
"description": "具体经验描述",
"applies_to": "适用的模块/技术/场景"
}
],
"adjust_history": [
{"attempt": 1, "failure_type": "test-failure", "resolution": "自动修复"}
]
}
modules 和 keywords 用于 plan 阶段检索相关经验。
简单任务无经验可提取时,跳过写入。
development
Go 数据库规范——GORM Model 命名 ModelXxx、表名单数、枚举 uint8 + 常量、索引 idx_ 前缀 + deleted_at leading column、禁 time.Time 统一 int64 unix、禁指针/nullable 字段、TEXT/BLOB/JSON 禁 default、AutoMigrate 禁改主键。设计 DB model、写 GORM tag、建索引、做 migration 审查时触发。
development
Go HTTP API 规范——响应始终 200 + body code 字段、路由 /api/* 全 POST 单段 <Action><Model>、中间件逐路由注册禁 Group(prefix,mw...)、handler 仅返回 (rsp,error)、认证走 header。设计 HTTP API、写路由/handler/中间件时触发。
development
Go 项目结构规范——三层架构(API → Impl → State)、全局状态模式、internal/ 私有包、cmd/ 仅 main.go、go.work 多模块、禁止 Repository 接口和 DI 容器、struct 公共字段开头全 omitempty、handler var rsp 顶声明、禁 legacy migration。设计项目骨架、新建目录、组织包、做架构评审时触发。
development
Go 命名规范——Id/Uid 字段(非 ID)、IsActive/HasMFA 布尔前缀、CreatedAt 时间字段、接收者统一用 p、包名全小写无下划线、泛型类型参数描述性命名、集合字段 xxx_list 禁 xxxs 复数、Enum 0 值 XxxNil 禁 Unknown、禁 Status 统一 State、Set/Update 语义区分。定义结构体字段、函数、变量、包、接收者名、泛型、枚举时触发。