LLM 写的代码会堆积:重复代码块、死文件、过期文档、结构蔓延。 CodeEraser 度量它、判决它、用一个只准变好的分数把住大门。
GitHub Releases:x86_64-windows · x86_64-linux · aarch64-macos · x86_64-macos · aarch64-linux,GUI + CLI + 判决核,SHA256 钉扎;Windows 安装包运行 ce setup,AppImage / dmg 用户自己跑一次brew install skymanbp/codeeraser/codeeraser(macOS 与 Linux,由同一组 pin 生成)cargo install codeeraserce setup,或手动:/plugin marketplace add skymanbp/CodeEraser@release,再 /plugin install codeeraser@codeeraserce update --yesce update 拿最新 tag 对比本构建(退出码 0 / 1 / 2);--yes 在两枚 SHA256 pin 都通过后替换 ce 与 ce-core(但绝不动插件或 cargo 拥有的副本,它们各自给出自己的更新命令);--installer 则保存经校验的 GUI 安装包。GUI 有更新屏,Claude Code 里用 /codeeraser:update。
$ ce check --lang zh --roast 检查分数 944/1000 | 判轴 0:86 1:0 2:102 3:0 4:0 5:0 6:205 | 候选 34 棘轮:新增 0,移除 0,超限 0,动用容差 3 -> pass 注:10 块并入既有成员,15 个文件内对不入相似表 毒舌:干净得可疑。你贿赂谁了?
真实输出:CodeEraser 判决它自己的仓库。棘轮只收不放:违规集入基线银行,新增熵直接判负。
| 不带 CodeEraser | 带 CodeEraser | |
|---|---|---|
| 文件落盘前被拒绝的写入 | 0 | 2 |
| 残留的克隆块 | 4 | 0 |
| 重复文档段 | 1 | 0 |
| 仍欠的删除 | 1 | 0 |
| 检查分数 | 871 | 979 |
同一个七步任务,两份完全相同的种子树;唯一的变量是 CodeEraser 在不在环内——写入时的守卫、Stop 审计,以及审计拒绝之后按自己的计划执行的擦除。两次都仍以红色收场——但红的不是同一件事。
种子是 demo/seed/,一个精确到分的 Python + TypeScript 小型开票服务,两次运行之前先由同样的门量过、判为干净;任务是加折扣、紧凑报表、CSV 与 JSON 输出,以及 API 里的金额格式化。



ce join 打印的同一批行。ce check . --fail-under 939 # 棘轮+地板;exit 1 直接把流水线判红ce precommit # 暂存区净行数 + 涉改重复块ce mcp # 每个报告家族都是任意 agent 可读的只读工具总门。七轴合成 0–1000 分,对基线银行只缩不涨的棘轮,外加 CI 硬地板。
winnowing 指纹的 T1/T2 克隆检测,克隆块预算只准往下棘。
T3 近似克隆:Haskell 核的树编辑距离判决,改名换形的拷贝一并抓。
缓存引用图上的存活性判决:无保留入边、无入口声明即判死,门就红。旁边是未被提及的声明顾问,它永不把门翻红。
文档与注释里的重复散文,活段上的精确 Jaccard 判决。
树尺度结构熵:布局偏离、文档陈旧、冗余、模块度诸轴,整仓一览。
逐文件逐函数的尺寸、复杂度、可读性,经典指标由核分级;判的是全局表,或该文件自己那条 [[rules.class]] 线。
主线历史上的分数轨迹,逐提交缓存、可重建、方向诚实。
确定性两段式擦除器:死文件、逐字重复的文档孪生、整单元精确克隆。先出计划,只在干净工作区上应用,且永不通过让模型重写代码来完成。
git 窗口内的改动热度,逐单元归属,看得出一个文件是在被重写,还是只在被追加。
三信号联判:把改动、重复与存活性折成一条判决,热的、重复的、已死的那个角落会自己报名。
同角色顾问:在索引已有的词袋上做整数 BM25,由核判定哪些候选扮演查询的角色。确定性、离线的检索,只当顾问,永不把门翻红。
作为 Claude Code 插件:重复写入在落笔瞬间被拦,停止时审计,会话开始报健康。
46 ms671 ms490 ms每 500 次编辑 0.00 次误报范围内 17/17(100%)每个数字由回放产生(cli/tests/it/bench.rs 与 bench_backfill.rs),单源 contracts/bench/bench.json——绝不手填。当前发布 v1.7.4 沿用 v1.7.3 的数值:按规则它算新程序,但本版的改动落在这七项指标所计时的范围之外,故未重新测量。
docs/diagrams/architecture.zh.json 渲染;每个组件都引用自己的源文件。打开原尺寸 SVG。全部十五个发布二进制(五平台 × ce / ce-core,再加五个 GUI
安装包)都以 SHA256 钉扎在 plugin/bin/manifest.env;tag 阶段逐 pin 校验、等被打标提交的 CI 全绿、拒绝任何计划外资产,然后才发布。SHA256SUMS 覆盖全集可离线核对。代码签名被刻意排除在设计外;哈希链就是永久信任锚。本仓库每次提交都用自己的工具给自己把门。