Archibald 是一个软件架构质量评估技能,工作在架构层面(组件、模块、包、服务、分层及其关系),关注可观察的结构质量,而非类级 SOLID 或系统级设计原则检查。资料指出架构坏味与代码坏味相关性低于 30%,因此需要专门的架构级评估。
主要能力按子命令划分:archibald 或 archibald full 执行全维度评估;archibald smells 检测架构坏味(循环依赖、不稳定依赖、枢纽式依赖、上帝组件、特性集中、功能分散、接口模糊);archibald antipatterns 识别反模式;archibald metrics 做量化指标分析;archibald dependencies 分析依赖结构;archibald risks 做风险与权衡分析;archibald debt 评估技术债。未指定子命令时默认全量评估;提到具体概念(如 cyclic dependency、CBO、DSM)时匹配到相应维度。
使用方式:先确定目标架构(文件、目录或按名称定位服务/模块),并建立项目规模、团队规模、生命周期阶段、架构风格等上下文以校准严重度;再加载对应参考文件(全量评估需读取全部十二个参考文件);随后从代码库收集组件结构、依赖图、公共 API、规模指标,必要时结合文档(架构图、ADR)与版本控制(共同变更、热点、增长趋势);最后按维度分析并报告。
报告结构为每条发现包含维度、严重度(CRITICAL/HIGH/MEDIUM/LOW)、位置、描述、证据、影响与建议;汇总包含发现统计表、各维度健康评分、前三优先事项、改进路线图(Critical/Important/Beneficial)与总体评估。可选修复模式会给出具体重构步骤、迁移方案、前后依赖图或按优先级排列的整改清单,大规模变更建议采用 Strangler Fig、Façade 等增量方式。
限制与原则:这些是诊断性发现而非强制要求,需按规模校准严重度,承认有意的权衡,关注趋势而非快照,优先可执行而非穷举。资料未提供收费、价格、平台支持范围等信息。