plugins/tools/task/skills/adjust/SKILL.md
失败调整。验收未通过时触发,分析失败根因并分类,通过交互让用户选择调整策略(补充上下文/重新对齐/重新规划/放弃)
npx skillsauth add lazygophers/ccplugin plugins/tools/task/skills/adjustInstall 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.
分析校验失败原因,制定修正策略。1 次交互确认调整方向,所有修复遵循项目现有风格。
停滞检测:相同错误出现 3 次或 A→B→A→B 振荡 → 立即 AskUserQuestion。
从 flow 传入的 verify_result 中获取失败标准列表。读取 align.json 获取锁定风格和验收标准,读取 context.json 获取项目上下文。如果 task.json 存在,读取现有执行计划。
对 verify_result 中每条 failed_criteria 分析根本原因:
将根因归入以下类型之一:
| 类型 | 特征 | 可自动修复 | 策略 | |------|------|-----------|------| | test-failure | 测试未通过、断言失败 | ✅(≤2次) | 重新执行失败子任务 | | style-violation | lint 错误、命名不一致 | ✅(≤2次) | 运行格式化工具后重验 | | scope-creep | 修改了计划外文件 | ❌ | 需求偏差 → align | | missing-context | 引用不存在的函数/模块 | ❌ | 上下文缺失 → explore | | integration-issue | 接口不匹配、类型不兼容 | ❌ | 重新计划 → plan |
预定义策略详见 strategies.json。
如果失败类型为 test-failure 或 style-violation,且自动修复次数 < 2,且不涉及安全/完整性问题 → 自动返回"重新计划",不问用户。
自动修复上限 2 次。超过后必须进入步骤 5。
通过 AskUserQuestion 一次性展示:
提供以下选项:
将用户选择映射为 status 返回给 flow:
| 用户选择 | 返回 status | |---------|------------| | 补充上下文 | 上下文缺失 | | 重新对齐 | 需求偏差 | | 重新规划 | 重新计划 | | 放弃任务 | 放弃 |
返回 status + reason(失败原因)。
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 语义区分。定义结构体字段、函数、变量、包、接收者名、泛型、枚举时触发。