agentleFS
hellyguohellyguo/self-ai-spec/skills/code-detect-problem/SKILL.md

code-detect-problem

Skill8 starsChanged 16 days agoApache-2.0View on GitHub

综合设计、性能、安全、代码质量与重复度五个维度对项目评分,给出重构或重建方案。适用于项目接手评估、技术债盘点、重构/重建决策。

The file

Files
SKILL.md

项目问题侦测

本文件中的 templates/... 均指本技能目录下的 templates/ 子目录。

<HARD-GATE> 理性,客观,实际,真实,不恭维,实事求是 </HARD-GATE>

执行流程

digraph detect_problem {
    "调用 skills 了解项目" -> "综合分析问题";
    "综合分析问题" -> "设计问题评分";
    "设计问题评分" -> "性能问题评分";
    "性能问题评分" -> "安全问题评分";
    "安全问题评分" -> "代码重复度评分";
    "代码重复度评分" -> "计算总分";
    "计算总分" -> "总分>6?" ;
    "总分>6?" -> "推荐重构方案" [label="yes"];
    "总分>6?" -> "总分<4?" [label="no"];
    "总分<4?" -> "推荐重建方案" [label="yes"];
    "总分<4?" -> "交由用户判断" [label="no,即 4-6 分"];
    "推荐重构方案" -> "生成方案文档";
    "推荐重建方案" -> "生成方案文档";
    "交由用户判断" -> "用户选择方案" [label="用户决策"];
    "用户选择方案" -> "生成方案文档";
    "生成方案文档" -> "输出评分报告";
    "输出评分报告" -> "结束" [shape=doublecircle];
}

Phase 1: 项目全局了解

按顺序调用技能获取项目信息:

技能输出物用途
code-deconstructdocs/deconstruct/*项目结构、数据流、设计
code-reviewdocs/review/*代码问题、数据库问题
code-detect-dupdocs/dup/*代码重复度

综合收集:项目结构、设计模式、代码质量、性能热点、安全风险、代码重复、数据库设计。


Phase 2: 问题评分

评分维度与权重

维度权重评分范围
设计质量30%0-10
性能质量25%0-10
安全质量20%0-10
代码质量15%0-10
重复度10%0-10

各维度评分标准

分数设计性能安全代码重复度
8-10清晰/模块独立/扩展性好优良/无瓶颈/资源管理完善措施完善/无漏洞规范/统一/注释完善<5%
6-7合理/偶有耦合尚可/偶有瓶颈基本到位/偶有隐患基本规范5-15%
4-5混乱/耦合严重问题明显/多处瓶颈欠缺/多处隐患不规范/混乱15-30%
0-3无设计/代码堆砌严重问题/资源泄漏严重问题/存在漏洞严重不规范>30%

检查项

维度好的表现差的表现
模块划分职责单一、边界清晰职责混杂、边界模糊
依赖关系单向依赖、无循环双向依赖、循环依赖
类设计单一职责、合理抽象上帝类、数据类
高消耗方法已优化、已缓存未优化、反复调用
资源管理try-with-resources未关闭流/连接
并发处理线程池、正确同步new Thread、锁问题
数据库操作批量操作、分页循环单条操作
SQL注入参数化查询字符串拼接SQL
XSS输入转义直接拼接HTML
敏感信息加密存储、不硬编码硬编码密码/密钥
权限控制完善校验无校验或校验不足
命名规范有意义、统一风格随意命名、风格混乱
异常处理合理处理、有后续只打日志或忽略

Phase 3: 计算总分

总分 = 设计质量×30% + 性能质量×25% + 安全质量×20% + 代码质量×15% + 重复度×10%
分数范围状态建议
高于 6可维护执行重构方案
4 至 6(含边界)边缘状态交由用户判断
低于 4不可维护执行重建方案

边界约定:总分恰为 6 或 4 时归入"边缘状态",由用户决策,不做自动判定。


Phase 4: 方案输出

使用模板生成方案文档:

方案模板输出路径
重构templates/refactor.mddocs/refactor/refactor-{yyyymmdd}-{seq}.md
重建templates/rebuild.mddocs/rebuild/rebuild-{yyyymmdd}-{seq}.md
评分报告templates/detect-report.mddocs/detect/detect-{yyyymmdd}-{seq}.md

Phase 5: 用户决策

总分 4 至 6 的项目交由用户判断,提供两种方案供选择:

选择处理
A - 重构生成重构方案文档
B - 重建生成重建方案文档
C - 更多信息提供详细分析,重新询问

输出物清单

类型文件说明
设计文档docs/deconstruct/*code-deconstruct 输出
审查文档docs/review/*code-review 输出
重复文档docs/dup/*code-detect-dup 输出
评分报告docs/detect/detect-{yyyymmdd}-{seq}.md评分结果
重构方案docs/refactor/refactor-{yyyymmdd}-{seq}.md重构方案
重建方案docs/rebuild/rebuild-{yyyymmdd}-{seq}.md重建方案

执行检查清单

  • code-deconstruct 已执行
  • code-review 已执行
  • code-detect-dup 已执行
  • 项目全局信息已收集
  • 五维度评分已完成
  • 总分已计算
  • 方案类型已确定(用户确认如需)
  • 方案文档已生成
  • 评分报告已输出

Git 提交

git add docs/
git commit -m "docs: project detection report {yyyymmdd}-{seq}"

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.