用途:scan 是一个确定性检查引擎,对后端代码运行 grep 模式匹配与结构化分析,用于机械检测已知反模式、代码坏味道或结构问题。它只做机械检测,不评判架构或设计,主观评估由 axiom:critique 等技能负责。
主要能力:接受 scope 参数(文件路径、目录路径或 cwd)和 dimensions 参数(逗号分隔的维度列表或 all),据此决定执行哪些检查。检查定义来自规范目录文件,可加载项目级自定义检查。输出按维度和严重级别(HIGH、MEDIUM、LOW)分组,每条发现包含文件位置、匹配模式与修复提示,并标记 deterministic: true。报告中包含运行检查总数、发现总数与各维度汇总。
使用方式:触发条件包括用户说“scan code”“check patterns”“run checks”“detect anti-patterns”,运行 /axiom:scan,其他 axiom 技能请求确定性模式检测,或需要对已知代码坏味道做机械验证。执行流程为:加载规范检查目录;若项目根存在 .axiom/checks.md 则合并项目自定义检查;按 dimensions 过滤检查集(无效维度名会报错并列出有效维度);对解析后的 scope 执行 grep 与结构分析,收集匹配并记录零匹配为通过;按 findings 格式输出,按维度再按严重级别分组。
适用场景:需要机械验证已知代码坏味道,或作为其他技能获取确定性证据时使用。不适用场景:需要定性架构评审(用 axiom:critique)、完整质量审计(用 axiom:audit)或主观设计反馈时不应激活。
限制与错误处理:不发明目录之外的模式,只运行规范或项目自定义目录中的检查;不跳过匹配多的检查,也不静默压制误报,由用户通过 .axiom/checks.md 调整排除项;严格尊重 scope 边界。若 grep 模式编译或执行失败,会报告具体模式与错误,不静默跳过。若 scope 无可扫描文件,返回“nothing to scan”及解析路径,不视为失败。.axiom/checks.md 缺失时静默跳过。权限错误时记录路径并继续扫描其余文件。具体的规范检查目录内容、findings 格式细节与安装命令在资料中暂未提供。