用途:校验项目环境变量配置,将 .env 文件与代码引用、示例文件及部署清单交叉比对,提前发现配置问题。
主要能力:发现代码引用但 .env 缺失的必需变量(CRITICAL);识别类型不匹配,如 PORT=abc 而代码按整数解析、布尔值写法不一致、URL 格式无效(HIGH);检测不安全默认值,如 SECRET_KEY=changeme、PASSWORD=password、生产文件中的 DEBUG=true(HIGH);标记未被任何代码或清单引用的孤立变量(MEDIUM);检查格式问题,如缺少 KEY=VALUE、尾部空白、引号不一致、重复定义(LOW)。
使用方式:技能按四阶段工作。发现阶段定位 .env(缺失时查找 .env.local、.env.development、.env.production)、.env.example 或 .env.template,并用 grep 搜索 os.environ、process.env、env::var、os.Getenv 等模式,同时检查 docker-compose.yml、Dockerfile、k8s 清单中的 ${VAR} 或 ENV VAR。模式提取阶段汇总变量名、是否必需、类型提示、默认值及引用位置。校验阶段执行上述检查。报告阶段输出结构化报告,含 PASS/FAIL 判定、按严重级别统计、逐条问题(含引用位置、期望类型、修复建议)及未引用变量表。
适用场景:项目提交前或部署前的环境配置审查,尤其是多环境(开发/生产)配置一致性检查。
限制:无法校验运行时注入的变量(如 vault、AWS SSM);类型推断为启发式,复杂值可能误判;不校验变量值对外部服务是否有效;生产与开发的区分依赖文件命名约定。无 .env 时报告缺失,无示例文件时仅依据代码引用校验,无代码引用时仅做格式与安全检查。