用途:分析一个 Laravel 应用实际是如何编写的,并把发现的约定记录为持久、按路径作用域的规则,供其他代理读取。核心立场是记录现实,而非改进代码。
主要能力:先读取 composer.json、Pint/PHPStan/Rector 配置和 .ai/rules/index.md,并映射 app/ 目录树,识别非默认目录所代表的结构模式。随后按 references/checklist.md 逐维度扫描,给出 Pattern、Conflict、Default、No signal、Tooling-owned 或 Already-recorded 等判定。再进行开放式扫描,确认架构模式(Action、Service、Query、DTO、模块目录等)以及刻意缺失的模式。
判定标准:约定需至少 3 个一致示例且无显著对立写法;只记录反映真实选择的模式,跳过框架默认;跳过活跃工具会产出的形式,但记录应用刻意保留、工具会重构掉的写法。架构选择被视为最高信号。
使用方式:按 Step 0 到 Step 5 执行,先定向、再预定义扫描、开放式扫描、确认、记录、总结。默认确认模式只记录用户批准项;仅当调用明确说 yolo 等时才全部记录。记录时按最具体 glob 调用 record-rule,跨域约定按域分别记录。若 record-rule 不可用,则报告完整规则文本。
适用场景:Laravel 项目约定检测与共享规则生成,支持模块化或 DDD 布局,支持子代理并行扫描。
限制:检测为只读;规则禁用时无法自动记录;代码量过少时多数维度无信号,应如实说明并记录为空;冲突在代码混合时不得记录偏好赢家,除非用户指出稳定的上下文边界。