mcpField
L
ln-645-architecture-modernization-auditor

ln-645-architecture-modernization-auditor

github.com/levnikolaevich测试与质量58470 次安装2 天前更新
代码仓库

关于 ln-645-architecture-modernization-auditor

用于发现架构简化与现代化机会的代码审计技能,面向审查代码库的编码 Agent。它生成基于证据且考虑迁移风险的发现,不会修改代码。

主要功能

  1. 01检测过时的自定义机制
  2. 02审查过度构建的扩展点
  3. 03查找并行架构机制
  4. 04结合上下文验证候选项
  5. 05评分并撰写审计发现

适用场景

  1. 01审查代码库中可移除的架构间接层
  2. 02评估仅有单一实现的插件或注册表设计
  3. 03发现重叠的分发或服务组合模式

MCP 相关

该技能优先使用 hex-line 读取本地代码,并在可用时使用 hex-graph 分析关系。MCP 不可用或不受支持时,会改用内置代码库工具。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-645-architecture-modernization-auditor

安装后在 Claude Code 中输入/ln-645-architecture-modernization-auditor确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
audit_scoring.md
audit_summary_contract.md
audit_worker_core_contract.md
mcp_integration_patterns.md
mcp_tool_preferences.md
two_layer_detection.md
references/templates/
audit_worker_report_template.md

详细介绍

路径: 文件路径(references/、../ln-*)相对于此技能目录。

架构现代化审计员

类型: L3 Worker

用于发现架构层面简化和现代化机会的 L3 Worker。

目的与范围

  • 审计已过时的自定义架构机制、过度构建的扩展点,以及可避免的架构间接层
  • 识别会增加维护成本、但当前不再具有架构价值的机制
  • 生成可安全迁移的现代化问题
  • 发出 SIMPLIFY_ARCHITECTURE、RETIRE_CUSTOM_MECHANISM 或 CONSOLIDATE_EXTENSION_POINT
  • 计算合规评分(X/10)

输入

必须读取: 加载 references/audit_worker_core_contract.md 和 references/mcp_tool_preferences.md。 工具策略:你可能会作为独立子 Agent 运行,此时宿主的 AGENTS.md 不在适用范围内,因此文件读取、搜索和编辑时默认优先使用 hex-line MCP。仅当 MCP 行为不明确时,才加载 references/mcp_integration_patterns.md。

接收包含以下内容的 contextStore:tech_stack、architecture、codebase_root、output_dir、domain_mode、scan_path。

当引用、架构指标或实现关系能实质性提升现代化问题的质量时,优先使用 hex-graph。如果可用,读取本地代码时优先使用 hex-line。如果 MCP 不可用、不受支持或未编入索引,则继续使用内置的 Read/Grep/Glob/Bash,并在报告中说明回退情况。

工作流

检测策略:采用两层检测(候选扫描,然后上下文验证);仅当验证方法不明确时,才加载 references/two_layer_detection.md。

  1. 解析上下文 -- 根据领域感知范围或代码库根目录确定 scan_root
  2. 查找现代化候选项(第 1 层)
    • 只有一个实现的自定义插件/扩展系统
    • 使用范围有限、手工构建的服务定位器、注册表、分发器、总线、适配器或工厂
    • 带有弃用注释或未使用兼容分支的旧版架构机制
    • 用于解决相同问题的并行架构机制
  3. 验证架构价值(第 2 层)
    • 该机制是否为框架或部署模型所必需? -> 跳过
    • 该机制是否为有外部使用者的公共扩展 API? -> 降低优先级或跳过
    • 该机制是否隔离了具有多个真实实现的易变边界? -> 跳过
    • 替换方案是否只是更换包或重写工具? -> 跳过
  4. 收集问题,包括严重性、位置、操作、工作量、迁移风险和建议
  5. 使用 references/audit_scoring.md 计算评分
  6. 将报告写入 {output_dir}/ln-645--{identifier}.md
  7. 按照 references/audit_summary_contract.md 返回摘要

审计规则

1. 过时的自定义机制

内容: 项目已不再需要、却仍保留的自定义架构机制

检测:

  • 搜索 Legacy、Compat、Shim、Adapter、Registry、Plugin、Extension、ServiceLocator、Dispatcher、EventBus
  • 检查引用和实现数量
  • 如有弃用注释和 ADR,请阅读

严重性: 关键路径机制为 HIGH,影响广泛但非关键的机制为 MEDIUM,孤立的清理项为 LOW

操作: RETIRE_CUSTOM_MECHANISM

2. 过度构建的扩展点

内容: 只有一个实现且没有活跃变化点的扩展或插件架构

检测:

  • 仅由一个实现使用的接口/抽象类
  • 只有一种已注册类型的工厂或注册表
  • 由配置驱动的插件加载,但只有一个硬编码插件

严重性: 默认情况下为 MEDIUM;若间接层隐藏了关键流程,则为 HIGH

操作: CONSOLIDATE_EXTENSION_POINT

3. 并行架构机制

内容: 两种或更多架构机制在不同模块中以不同方式解决同一问题

检测方式:

  • 存在多种分发/注册表/事件机制
  • 存在多种服务组合风格
  • 同一边界存在多种适配器约定

严重性: 若导致行为不一致,则为 HIGH;若主要增加维护成本,则为 MEDIUM

操作: SIMPLIFY_ARCHITECTURE

评分算法

必须阅读: 加载 references/audit_scoring.md。

输出格式

必须阅读: 加载 references/templates/audit_worker_report_template.md。

按照 references/audit_summary_contract.md 编写 JSON 摘要。在托管模式下,调用方会传入 runId 和 summaryArtifactPath;在独立模式下,工作进程会按照共享约定生成自己的运行范围产物路径。

将报告写入 {output_dir}/ln-645--{identifier}.md,并设置 category: "Architecture Modernization",检查项为:obsolete_mechanisms、overbuilt_extension_points、parallel_mechanisms。

当缺少 summaryArtifactPath 时,将独立运行摘要写入 .hex-skills/runtime-artifacts/runs/{run_id}/evaluation-worker/{worker}--{identifier}.json,并可选择在结构化输出中回显相同摘要。

关键规则

应用已加载的 references/audit_worker_core_contract.md。

  • 不要自动修复: 仅报告,绝不重写架构
  • 独特审查角度: 仅审查架构层面的现代化。不要审查软件包健康状况、CVE、通用工具替换、代码复杂度或运行时配置卫生。
  • 不要推荐软件包: 不要搜索开源替代方案,也不要建议替换依赖项。
  • 必须提供证据: 每项现代化发现都必须包含实现数量、参考证据和迁移风险。
  • 必须指定操作: 每项发现都必须使用 SIMPLIFY_ARCHITECTURE、RETIRE_CUSTOM_MECHANISM 或 CONSOLIDATE_EXTENSION_POINT。

完成定义

应用已加载的 references/audit_worker_core_contract.md。

  • contextStore 已成功解析
  • 已确定 scan_root
  • 已检查过时的自定义机制
  • 已检查过度构建的扩展点
  • 已检查并行架构机制
  • 已应用第 2 层架构价值验证
  • 已收集包含严重性、位置、操作、工作量、迁移风险和建议的发现
  • 已按照 references/audit_scoring.md 计算分数
  • 已将报告写入 {output_dir}/ln-645--{identifier}.md(通过一次原子 Write 调用)
  • 已按照约定写入摘要

版本: 1.0.0 最后更新: 2026-02-26

评论

支持 Markdown