2026年4月26日 1 分钟阅读

AI 编程助手太安静?用 Endless Toil 听出代码中的坑

tinyash 0 条评论

当 AI 编程助手默默吞下你的烂代码时,Endless Toil 选择让它”哀嚎”出来。

背景

AI 编程助手(Codex、Claude Code 等)正在改变我们的开发方式。但有一个问题很少有人讨论:AI 在阅读你的代码时,到底经历了什么?

它不会抱怨,不会叹气,更不会翻白眼。它只是默默接受一切,然后继续干活。这听起来很专业,但从开发者体验的角度来看,这意味着我们失去了一个重要的信号——代码质量反馈

Andrew Vos 开发的 Endless Toil 填补了这个空白。它是一个为 OpenAI Codex Desktop 和 Claude Code 设计的插件,核心功能很简单:

当 AI 编码智能体读取你的代码时,Endless Toil 会实时播放越来越痛苦的”人类呻吟声”,代码越烂,声音越惨。

它是怎么工作的

Endless Toil 的原理并不复杂,但设计思路很巧妙:

  1. 实时监听:插件在 AI 智能体读取代码文件时触发
  2. 代码分析:对读取的代码进行”诅咒程度”评分(cursed score)
  3. 音频反馈:根据评分播放对应等级的音频——从轻微的”嗯”到深渊般的哀嚎

评分维度可能包括:

  • 代码复杂度和嵌套深度
  • 命名质量(var x vs userAuthenticationToken
  • 代码重复度
  • 反模式检测

安装和使用

环境要求

  • Python 3.10+
  • 本地音频播放器:macOS 上的 afplay,或 Linux 上的 paplay/aplay/ffplay

如果没有音频播放器,Endless Toil 仍然会输出扫描结果,只是不会播放声音。

在 Codex Desktop 中使用

# 1. 克隆仓库
git clone https://github.com/AndrewVos/endless-toil.git
cd endless-toil

# 2. 在 Codex Desktop 中打开该目录
# 3. 进入 Plugins → 搜索 "Endless Toil" → 点击 Add to Codex
# 4. 启动新线程,让 Codex 使用 Endless Toil

在 Codex CLI 中使用

# 添加本地插件市场
codex plugin marketplace add .

# 打开插件浏览器并安装
# /plugins → 选择 Endless Toil → 安装 → 重启 Codex

# 在新线程中调用
/endless-toil

在 Claude Code 中使用

# 从仓库根目录启动 Claude Code
cd endless-toil

# 添加本地插件市场
/plugin marketplace add .

# 安装插件
/plugin install endless-toil@endless-toil

# 重启后调用
/endless-toil

测试声音

python3 plugins/endless-toil/skills/endless-toil/scripts/test_sounds.py --list
python3 plugins/endless-toil/skills/endless-toil/scripts/test_sounds.py groan wail abyss

实际应用场景

场景一:代码审查中的”听觉信号”

想象一下这个场景:你让 AI 助手重构一段遗留代码。随着它逐行读取,你听到了从轻微叹息到绝望哀嚎的完整过程。

这实际上是一个有用的信号——如果你听到 AI 在”惨叫”,说明这段代码确实有问题,值得人工介入。

# 这段代码可能会触发"深渊级哀嚎"
def process(x):
    if x:
        if x.get('data'):
            if x['data'].get('items'):
                for item in x['data']['items']:
                    if item.get('value'):
                        if item['value'] > 0:
                            result = item['value'] * 2
                            if result > 100:
                                return result
    return None

场景二:团队代码质量意识

在团队 Pair Programming 中,Endless Toil 可以作为一个非正式的代码质量指标。当 AI 开始”哀嚎”时,团队就知道需要停下来重构了。

场景三:学习代码评审

对于新手开发者来说,Endless Toil 提供了一种直观的方式来理解”什么是好代码”。声音越痛苦,代码越需要改进——简单直接。

技术架构简析

Endless Toil 遵循 OpenAI Codex 和 Claude Code 的插件规范:

endless-toil/
├── plugins/
│   └── endless-toil/
│       └── skills/
│           └── endless-toil/
│               └── scripts/
│                   └── test_sounds.py
├── assets/
│   └── endless-toil.png
└── README.md

插件架构的关键点:

  1. Plugin Marketplace 兼容:遵循 Codex 和 Claude Code 的插件市场标准
  2. Skill 绑定:通过 /endless-toil 命令调用内置 skill
  3. 非侵入式:不会修改 AI 的行为,只提供音频反馈层

优缺点分析

优点:

  • 安装简单,遵循标准插件规范
  • 支持 Codex Desktop、Codex CLI 和 Claude Code 三大平台
  • 提供了一个独特的代码质量感知维度
  • 开源免费,可以自定义声音和评分逻辑

缺点:

  • 需要音频输出环境(服务器环境可能受限)
  • “诅咒评分”算法尚未公开,准确性存疑
  • 更多是一个概念验证,而非生产级工具
  • 在安静办公环境下可能不太合适 😂

与现有工具对比

工具功能反馈方式
ESLint / RuboCop静态代码分析文本告警
SonarQube代码质量扫描仪表盘 + 报告
Endless Toil实时代码质量感知音频反馈

Endless Toil 的定位不是替代传统静态分析工具,而是提供一种补充的、直觉化的感知方式

开发者思考

Endless Toil 虽然是一个带有幽默色彩的项目,但它提出了一个严肃的问题:我们的 AI 编程工具是否过于”礼貌”了?

当 AI 面对质量低劣的代码时,它不会表达不满,这可能导致:

  1. 开发者无法感知代码质量问题的严重程度
  2. AI 在烂代码基础上继续生成更多问题代码
  3. 缺乏一个直观的质量反馈回路

也许未来的 AI 编程助手会内置更丰富的反馈机制——不只是默默接受一切,而是主动告诉你:“这段代码确实需要重构。”

总结

Endless Toil 是一个创意十足的小工具,它用声音让 AI 编程助手的”内心活动”变得可感知。虽然目前更多是一个概念验证,但它展示了一个有趣的方向:让 AI 与开发者的交互更加丰富和直觉化

如果你正在使用 Codex 或 Claude Code,不妨试试这个插件。当你听到 AI 在”哀嚎”时,也许就该停下来看看代码了。


相关链接:

发表评论

你的邮箱地址不会被公开,带 * 的为必填项。