Impeccable 是什么:把设计指导放进 AI 编程流程
源码导读:从 CLI 安装器到引擎契约
阅读 JavaScript 入口,同时承认打包引擎与仓库源码的边界。
源码导读:从 CLI 安装器到引擎契约知识学习CN编辑简报更新 2026-09-29
你将学会
- 定位安装入口
- 对照契约文档
- 留下尚未验证的部分
开始前需要
- 一个页面及其用户任务
- 检查 Agent 技能与项目钩子的权限
产出有依据的设计修改,让另一位审阅者可以接受或拒绝。
先看结论
- npm CLI 和二进制引擎是两层。
- 退出码 1 与 2 不能混为一谈。
- 阅读源码不等于验证已下载程序。
定位安装入口
固定版本 package.json 定义 CLI 包,cli/bin/cli.js 是调用发行版引擎的入口。给自动化写命令前,先追参数处理、平台选择和进程退出方式。
README 说明 npm 包主要是调用独立引擎的薄层。仓库可见代码解释安装和集成,不等于能直接读到每条检测规则的实现。
对照契约文档
docs/CLI-CONTRACT.md 说明命令与输出预期,docs/ENGINE.md 描述运行时边界。把一项操作与启动器并排阅读,分清 JavaScript 和引擎各自负责什么。
README 区分退出码:0 表示扫描完成且无主要问题,2 表示完成但发现问题,1 表示目标扫描发生运行错误。将所有非零值视为同一种失败会丢失关键信息。
留下尚未验证的部分
真实试用应记录源码提交、包版本和引擎制品,再核对 stdout、stderr 与退出码。本文没有运行这些实验。
若 Codex 与 Cursor 的钩子表现不同,应读各自清单,不要假定存在统一生命周期;它们的信任模型并不相同。
如何选择
| 比较维度 | 方案 A | 方案 B |
|---|---|---|
| Best when | You need predictable behavior and easy auditing | You need adaptive optimization and have reliable telemetry |
| Main risk | May leave performance on the table | Can become difficult to explain or debug |
实施步骤
- 1
打开固定版本的 package.json 与 cli/bin/cli.js。
- 2
沿一个命令阅读 CLI 契约。
- 3
日后实测时记录退出码和引擎版本。
可复制示例
text
npx impeccable detect src/
# 0:完成且无主要问题
# 2:完成但有主要问题
# 1:至少一个目标未能完成扫描常见问题
所有检测规则源码都在何处?
README 描述独立引擎,需检查其发行制品与接口,不能假定 JS 启动器包含全部规则。
本文运行过 CLI 吗?
没有,只审阅了固定提交的代码和契约。
资料来源
- Impeccable / package.json来源核查 2026-09-29
- Impeccable / cli/bin/cli.js来源核查 2026-09-29
- Impeccable / docs/CLI-CONTRACT.md来源核查 2026-09-29
- Impeccable / docs/ENGINE.md来源核查 2026-09-29