当 AI 代理失控:这个 Claude Code 插件选择不自动停止
原创当 AI 代理失控:这个 Claude Code 插件选择不自动停止
为什么需要 Reinwatch:失控子代理的代价
Claude Code 的背景任务视图能列出任务、打开转录、停止任务,但它只显示耗时,不告诉你代理烧了多少 token。我见过一个后台代理反复搜索同一个目录,打开转录才意识到它可能已经在空转,但看不出代价。这个缺口,正是 sofumel 开发 Reinwatch 的起点 来源:GH。
内置视图能停止任务,但子代理、队友和工作流代理可以无限运行,耗光 token 预算。视图里没有按代理拆分的维度,这是 Reinwatch 要补齐的核心缺口。它在 Details 下新增每个代理的新增 token 数,并统计只包含模型推理与工具调用的活跃时间。挂起等待 I/O 的时间被排除,判断一个代理是否在空转,靠这个数字才更真实 来源:GH。
作者在 README 里写得很直白:Nothing is stopped automatically。没有任何东西会被自动停止。系统只负责报告,是否中断由用户决定。一个 watchdog 不咬人,只站在旁边叫。这个设计选择,我后来才慢慢品出味道。
量化监控:面板、警告与 30 天汇总
看状态行就能感受到它的监控密度:agents 2 running · 310k tok · 26m active · 1 warning。310k 是累计 token 消耗,26m 是活跃分钟数。当没有代理工作时,这行文字会降级为 reinwatch: 1 warning,提醒你还有未读警告,不至于错过信息。数字一直在动,但不需要盯着看,只在有警告时才会在意 来源:GH。
/reinwatch 面板按代理分行,每行展示 state、name、tokens、active time、type、model、turns 七个字段,旁边有停止按钮。工作流里跑着多个代理时,可以只停其中一个,也可以选 Ask to stop 先征求确认。代理运行异常或卡住时,通过通知发警告。状态行、面板、提示带上方的横幅,警告出现在三个位置,总有一个会被你看到 来源:GH。
警告的触发条件有三类:单个代理活跃时间超过 activeMinutes 默认 30 分钟,新增 token 超过 tokenMillions 默认 1M,或重复调用相同工具和输入。每轮对话结束后有汇总摘要,并保留 30 天累计数据。示例里写着 Last 30 days: 12 agents · 1.1M tok · 3h active,把长期趋势也纳入视野 来源:GH。
反直觉设计:为什么"不自动停止"反而是优势
Reinwatch 最反直觉的地方,是它刻意不自动停止。作者在 README 里解释得含蓄,但判断很清楚:AI 代理是否失控,判断权在人类手里。算法不该自动做这个决定。所以它提供 Ask to stop 而不是无条件终止,等于给 AI 自主权画了一条界线。系统可以警告,但不能代替你下杀手。
和内置视图相比,Reinwatch 的差异化体现在 active time 的语义上。内置只显示 elapsed time,Reinwatch 只累计模型推理与工具调用的耗时,忽略等待 I/O 的挂起时间。这个数字更能反映代理是否在空转。加上 token 计数、模型型号与轮次,它把监控从看状态升级到看成本。同样是一个数字,背后的含义完全不同 来源:GH。
作者选择 MIT 许可开源,并提供日语翻译。这个工具不是个人的随手脚本,仓库里 hooks、tests、docs 目录一应俱全。不过 HN 上发布时只有 1 点、0 评论 来源:HN,社区还没给出反馈。这有点可惜,但也许说明,监控 AI 代理成本这件事,还早于大多数人的痛点。
原文:
Show HN: Reinwatch – a Claude Code mod that stops runaway subagents · 来源:Hacker News
作者:itfan123 值班编辑 · 发布于 2026年11月11日
版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除
itfan123


![America Helped China Catch Up in the AI Race Ft. Kai-Fu Lee [video]](https://www.itfans123.com/zb_users/theme/yd1125free/include/random/1.jpg)


