用途:把“看起来没问题”变成可重复的工具证据,对 PHP 项目执行代码规范门禁并诚实区分 PASS/FAIL/UNVERIFIED/PLANNED。适用于用户要求 lint、格式检查、自动修复、提交前质量验证,或 CI 出现 php -l '{file}' 相关失败时。
主要能力:根据 .php 与 composer.json 标记识别 PHP 工作区;运行 php -l '{file}' 并保留退出码、作用域与工具版本;将失败分为格式、静态规则、配置、依赖、环境与工具内部错误;用 php-cs-fixer fix 处理可逆问题并复扫;把本地结果与 CI/构建/测试证据分层汇报。
必要用法:先确认仓库根与 composer.json 或目标文件存在,探测 php --version,再做只读检查:bash -c 'find . -name '"'"'.php'"'"' -type f -not -path '"'"'/vendor/*'"'"' -print0 | xargs -0 -n1 php -l'。工具准备为 composer require --dev php-cs-fixer,修复命令为 php-cs-fixer fix。仓库配置优先于技能示例,冲突时先报告差异。修复后必须复跑同一 lint 命令,再运行项目既有测试与构建;只有命令、范围与退出码都明确时才写“通过”。
限制:目标工具须已安装且版本兼容,须从正确仓库或模块根执行,自定义配置以已提交配置为准;不静默安装工具、升级依赖或修改团队规则,不用 suppress/ignore/调高阈值掩盖问题,工具缺失或配置无法加载时必须输出 UNVERIFIED。php -l 只验证语法,不覆盖类型、风格或框架规则;formatter 通过不等于编译、测试或安全审计通过。生成代码与 vendor 目录是否扫描须遵循仓库规则。依赖漏洞、安全审计、语法学习等应改用专门技能。该技能不收集、上传或存储用户代码与凭据,默认只读本地仓库并运行本地工具,自动修复前先检查 diff。