使用 Claude Code 或 Codex 等 AI 编程工具的开发者经常面临“AI 大脑疲劳”,即由于同时处理数十个并发线程并试图在心理内存中维持各自上下文而导致的认知枯竭。Sergey Kuhne 通过用持久化的、基于 Git 的优先级队列取代瞬时的聊天窗口来解决这一问题,该队列将每个任务视为一个已提交的快照。

上下文切换问题

在与 AI 智能体协作时,单个任务可能会迅速分支为多个后续澄清和辅助任务,每个任务都需要自己的工作空间。这迫使开发者在众多线程之间跳跃,试图同时在脑中记住每个活跃对话的具体要求和进展。

Kuhne 将此描述为专注力的失效,大脑变得疲惫不堪,难以记住任务从哪里开始或应该在哪里结束。虽然常见的建议是休息或限制范围,但 Kuhne 的方法侧重于重构工作本身的排序和上下文。

“工单不会一直挂在我的记忆中作为需要记住的东西。上下文随之关闭。因此,当我从队列中挑选下一个项目时,我确实可以集中注意力。一次只做一件事。”

— How I'm fighting the AI Brain Fry — Sergey Kuhne

基于 Git 的优先级队列

提议的工作流将工作组织成优先级队列,其中“事实来源”存在于 Git 仓库中,而不是聊天界面。每个工单都是位于相关代码旁边的 markdown 文件,项目看板的状态作为已提交的快照进行维护。

智能体按周期处理此看板,研究新工单并构建由人类标记为“安全”的任务。对于敏感代码,智能体在独立分支上构建,并在继续之前请求许可。至关重要的是,智能体永远不会部署到生产环境,因为那是人类的职责。

所有者收件箱与上下文关闭

为了防止 AI 对复杂的权衡做出自主决策,系统将需要人类判断的项目路由到“所有者收件箱”。一个脚本读取整个看板,并呈现出一份等待裁决的优先级列表,例如审查特定更改或回答技术问题。

开发者通过单页查看器查看这些项目——这是一个在每个周期从 Git 重建的 Claude artifact。这允许开发者看到整个看板以及每个工单的审查页面,而无需滚动终端历史记录。一旦给出裁决,它就会重新提交到 Git,开发者便“关闭”了该上下文。

通过关闭一个项目的上下文并将其放回队列,开发者可以清空心理内存。这允许他们从队列中挑选下一个项目,并完全专注于其特定要求,而不会受到记忆中未完成任务的干扰。

技术限制与权衡

该系统并非完美解决方案,仍面临持续的技术挑战。Kuhne 指出,主要困难在于足够快地提供上下文,使得加载工单耗时少于一分钟,并防止工单在被人类决策阻塞时进入无限循环。

虽然该系统通过减少干扰显著提高了生产力,但它仍然是一个耗费精力的过程。目标是从“迷失”在多个线程的状态转变为结构化的流程,其中开发者只需一次只持有一个上下文。

Hacker News 读者的反应

  • 亲身经验: 一位使用类似设置的评论者指出,虽然将 markdown 文件保存在仓库中有所帮助,但他们仍因反复为多个同时运行的智能体加载和卸载上下文而感到疲劳。 评论 ↗
  • 替代方案: 另一位用户建议使用 GitHub issues 作为管理系统,认为它提供了更好的 UI 和更多工具来跟踪分配给智能体的任务队列。 评论 ↗
  • 质疑: 几位评论者建议问题可能源于试图一次进行过多的并行工作,指出无论使用什么工具,人类多任务处理的认知能力仍然是一个限制。 评论 ↗
  • 替代方案: 一位评论者建议将 LLM 作为检查错误或建议更好模式的工具,而不是依赖它们进行主要的代码生成。 评论 ↗

以上为 Hacker News 讨论中观点的摘要,并非经过核实的事实。 阅读完整讨论 ↗