
AI 技能AI 插件【免费下载链接】agentic-awesome-skillsAAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and planning, backed by 2,400 agentic skills. Includes CLI, local MCP, catalog, plugins, and Workbench.项目地址https://gitcode.com/gh_mirrors/an/agentic-awesome-skills点击查看免费下载本技术指南以 AASagentic-awesome-skills仓库内plugins/agentic-awesome-skills-claude/skills/brooks-debt技能为骨架系统讲解如何在完整代码库中识别、分类并排序可维护性问题从「症状 → 来源 → 后果 → 补救」的铁律Iron Law出发完成六类衰减风险Decay Risk的全量扫描、Pain × Spread 优先级打分、有意/无意债务Intentional/Accidental Debt分类并输出可落地的重构路线图。读完本文你将掌握一套可直接用于日常代码审查与重构排期的技术债务评估方法论以及该技能在 AAS 仓库中的实际文件结构与调用方式。技能概览Brooks-Debt 是什么brooks-debt是 AAS 插件agentic-awesome-skills-claude中收录的一类社区技能community skill其元数据定义位于 SKILL.mdnamebrooks-debtdescription技术债务评估——识别、分类并排序可维护性问题帮助团队构建重构路线图参考十二本经典工程著作twelve classic engineering booksrisksafe只读分析类技能不执行破坏性操作source_typecommunity上游来源为hyhmrright/brooks-lintlicenseMIT从命名与定位看它属于 Brooks 技能家族的一员同目录下还有brooks-audit、brooks-lint、brooks-review、brooks-sweep、brooks-test等。它的核心价值不是做风格检查而是站在软件工程的经典著作视角回答一个关键问题这段代码看起来能跑但它是否正在腐烂何时使用触发场景判断SKILL.md 明确了本技能的触发条件当用户提出与技术债务、重构优先级、应该先清理什么相关的问题或询问为什么...类可维护性疑问时即可触发。典型场景包括重构前需要摸清结构性债务的分布与规模新成员需要快速定位代码库的高风险区域迭代排期前需要把欠账量化决定下一轮做什么代码能跑但总觉得哪里不对时需要一个系统化的诊断框架同时 SKILL.md 也给出边界仅在任务与上游来源和本地项目上下文明确匹配时使用应用变更前必须验证命令、生成的代码、依赖、凭据与外部服务行为示例不能替代环境专属的测试、安全审查或对破坏性/高成本操作的用户批准。执行前的准备Setup 四步SKILL.md 规定正式评估前需依次读取四份支撑材料../_shared/common.md—— 获取铁律Iron Law、项目配置Project Config、报告模板Report Template与健康评分规则Health Score../_shared/source-coverage.md—— 获取著作级覆盖说明、例外情况与权衡book-level coverage, exceptions, and tradeoffs../_shared/decay-risks.md—— 获取六类衰减风险的症状定义与来源归属本目录下的debt-guide.md—— 债务分类框架。需要说明在当前的 AAS 仓库镜像中_shared目录common.md、source-coverage.md、decay-risks.md并未随该技能一并收录它们属于上游仓库hyhmrright/brooks-lint的共享依赖。在本仓库内完整的核心方法论集中在 debt-guide.md 这一份独立文档中本文以下内容即以此文档为骨架展开。证据收集单问题澄清原则debt-guide.md的 Evidence Gathering 阶段要求如果证据不足以评估代码库只向用户提出一个问题从以下四个候选中选择最相关的一个回答后立即继续不得追问第二个问题代码库的哪一部分在开发典型功能时耗时最长哪个模块是开发者避之不及的为什么系统哪些部分测试最少、Bug 最多是否存在只有一个人完全理解的模块如果用户拒绝回答或表示不知道则基于现有证据继续并在报告中明确标注哪些区域未能评估。这一设计保证了评估流程的高效性——技术债务扫描不应因反复追问而卡死也不应因证据不足而假装覆盖全面。分析流程四步法Mode 3debt-guide.md将评估流程定义为Mode 3Tech Debt Assessment Mode所有发现必须遵守铁律Iron LawSymptom → Source → Consequence → Remedy症状 → 来源 → 后果 → 补救即每一条技术债务发现都必须完整呈现现象是什么、根因在哪本书/哪个设计原则层面、会造成什么后果、如何补救四个环节避免只罗列症状而无根因、只批评而无药方的空泛报告。Step 1全量衰减风险扫描Full Decay Risk Scan在评分之前必须先对整个代码库扫描全部六类衰减风险并列出所有发现。debt-guide 特别强调先列全再打分以防止早期发现产生锚定效应anchoring导致错过系统性模式。六类风险及各自的排查要点如下风险类型排查问题认知过载Cognitive Overload是否存在大范围命名问题、深层嵌套逻辑、散布于多个模块的超长函数变更传播Change Propagation哪些模块变更时引发最多连锁效应添加新功能时是否存在人人都必须修改的模块知识重复Knowledge Duplication同一概念被独立实现了几次领域词汇在代码库中是否一致偶然复杂度Accidental Complexity是否存在不增加价值的架构层或抽象基础设施开销与要解决的问题是否成比例依赖失序Dependency Disorder是否存在依赖环领域逻辑是否依赖基础设施是否有分层位置不明确的模块领域模型扭曲Domain Model Distortion业务逻辑是否位于正确的层代码命名是否匹配业务命名领域对象是否贫血anemic从技能家族背景看这六类风险与 brooks-lint 所提炼的十二本经典著作原则一脉相承DRY《程序员修炼之道》、命名与函数长度《Clean Code》、深层模块与信息隐藏《A Philosophy of Software Design》、领域语言与限界上下文《Domain-Driven Design》、稳定模式与超时/熔断《Release It!》等参见 brooks-lint/SKILL.md 中12 本书清单。换言之六类风险本质上是把十二本经典著作的评审透镜收敛为六个可执行的扫描维度。Step 2以 Pain × Spread 打分列出全部发现后对每条发现进行二维打分Pain疼痛度得分1–3这项问题今天在多大程度上拖慢开发3开发者主动回避触碰该区域大多数变更都会引发 Bug如没人愿意碰计费模块因为它总是改坏东西。2该区域比代码库其他部分明显更慢如在这里加一个字段要比别处慢 2–3 倍。1属于质量问题但尚未造成实际疼痛如命名不一致但我们总知道彼此指什么。Spread波及面得分1–3影响多少个文件、模块或开发者3影响 5 个以上模块或团队所有开发者如每个新功能都要触碰 core/ 里的上帝类。2影响 2–4 个模块或团队子集如auth 与 notification 模块紧耦合。1局限于单一模块或单一开发者负责的区域如只有一个老员工维护的遗留解析器。Priority Pain × Spread最高 9 分并按分数分级优先级分类处置建议7–9严重债务Critical debt下一个迭代sprint内处理4–6计划债务Scheduled debt本季度内规划1–3监控债务Monitored debt记录并持续观察Step 3判定债务意图Intent打分之后将每条发现区分为有意债务或无意债务有意债务Intentional debt为赶工期而做出的有意识的权宜之计并预期将来偿还。团队知道它的存在。它可能是正当的战略原型、迁移期间的已知临时绕过方案。无意债务Accidental debt在缺乏刻意决策的情况下累积的劣化——团队没有选择它甚至可能不知道它的存在。这正是 Ward Cunningham 最初定义所警示的类型不是战术取舍而是结构性侵蚀。在 Debt Summary Table 中用[intentional]或[accidental]标记每条发现。特别地没有可见偿还计划的有意债务——没有关联工单、没有代码注释、没有文档化决策——在排序时应视同无意债务处理。修复能量的投放顺序是优先处理无意债务因为有意债务至少还有负责人。Step 4按衰减风险分组报告按风险类型分组呈现发现而非按文件或模块分组。按风险分组能揭示系统性模式变更传播是系统性的 → 需要架构级干预认知过载是孤立的 → 局部重构即可。这一步骤把单点问题与系统性问题区分开直接决定了补救动作的层级重构一个函数 vs. 调整整体架构。输出报告模板 债务汇总表评估完成后使用common.md的标准报告模板输出模式行标注为Tech Debt Assessment。在 Findings 之后追加一张债务汇总表Debt Summary Table## Debt Summary | Risk | Findings | Avg Priority | Classification | Intent | |------|----------|-------------|----------------|--------| | Cognitive Overload | N | X.X | Monitored/Scheduled/Critical | intentional/accidental | | Change Propagation | N | X.X | ... | ... | | Knowledge Duplication | N | X.X | ... | ... | | Accidental Complexity | N | X.X | ... | ... | | Dependency Disorder | N | X.X | ... | ... | | Domain Model Distortion | N | X.X | ... | ... | **Recommended focus:** [risks with highest average priority]汇总表的字段设计值得注意Avg Priority平均优先级将六类风险的疼痛度做归一化横向对比而Recommended focus直接给出平均优先级最高的风险作为下一轮重构的主攻方向——这使整个报告从一堆发现收敛为一个明确的下一步行动。技能在 AAS 仓库中的文件结构与相关技能在 AAS 仓库中brooks-debt技能的实际文件组织为SKILL.md技能元数据frontmatter、使用场景、Setup 步骤、Process 流程与 Limitationsdebt-guide.md完整的债务分类框架本文主体内容的来源。与其同族的技能还包括brooks-lintSKILL.md以十二本经典著作为透镜做设计审查、brooks-audit含 architecture-guide.md 与 onboarding-guide.md以及brooks-review、brooks-sweep、brooks-test等共同构成一个以经典工程原则为基准的审查 → 评估 → 重构 → 验证闭环。实际使用时的分工建议依据各技能定位推断先用brooks-lint做设计气味与耦合的快速审查再用brooks-debt对全库做技术债务评估并输出重构路线图随后按路线图重构brooks-sweep并以brooks-review/brooks-test验证改动质量。局限与使用边界SKILL.md的 Limitations 部分明确了三条边界使用时必须遵守仅在任务与上游来源及本地项目上下文明确匹配时使用——不要对与评估目标无关的代码库套用本流程应用变更前必须验证命令、生成的代码、依赖、凭据与外部服务行为——本技能是分析框架不是可无脑执行的自动修改器示例不能替代环境专属测试、安全审查或对破坏性、高成本操作的用户批准。这些边界保证该技能始终停留在评估与建议的职责范围内与 AAS 仓库整体agent-first但重视安全护栏risk 字段、SECURITY_GUARDRAILS 类文档的定位一致。结语把债务感变成可排期的数据技术债务的难点从来不是感觉到有问题而是无法回答问题有多大、先解决哪个。brooks-debt提供了一条把主观直觉量化的路径六类风险全量扫描保证覆盖面Pain × Spread 把每条发现压成一个 1–9 的数值Intent 分类区分有意识的取舍与无声的侵蚀最后按风险分组并输出带平均优先级的汇总表让重构路线图不再是愿景而是一张可以直接排进迭代计划的任务清单。对于 AAS 中任何以可维护性为目标的团队或 Agent这套流程都值得作为重构前的标准动作。赞分享AI 技能AI 插件【免费下载链接】agentic-awesome-skillsAAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and planning, backed by 2,400 agentic skills. Includes CLI, local MCP, catalog, plugins, and Workbench.项目地址https://gitcode.com/gh_mirrors/an/agentic-awesome-skills点击查看免费下载相关推荐Meta Llama-3.2-3B快速开始指南5分钟完成模型加载与推理测试Meta Llama 3.2 3B快速开始指南5分钟完成模型加载与推理测试 想要快速上手Meta最新推出的Llama 3.2 3B大语言模型吗这篇终极指南将autojump性能优化技术债务评估影响与优先级autojump性能优化技术债务评估影响与优先级 引言性能瓶颈与技术债务的挑战 你是否曾在使用autojump时感受到随着使用时间增长目录跳转速度逐渐变慢CLI开发工具终极指南如何用Arnis将现实世界城市一键导入Minecraft终极指南如何用Arnis将现实世界城市一键导入Minecraft 你是否梦想过在Minecraft中重建自己的家乡城市或者想探索纽约、巴黎、东京等世界著名都桌面应用游戏开发GIS上一篇React-tracking 异步方法追踪完整处理Promise和错误场景下一篇Swifter源码解读学习Swift框架开发的设计模式与编码规范创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考