我同时跑了 5 个 Claude Code,差点把 API 额度榨干——直到我发现了 abtop 这个开源库,真的太能打了。
- 免费干货
- 7小时前
- 7热度
- 0评论
上周在赶一个项目,同时开了三个 Claude Code 在跑。
一个在重构后端接口,一个在写测试,另一个在帮我处理文档。听起来很爽对吗?直到我发现:速率限制悄悄触发了,某个 Agent 跑出来一个 8080 端口然后挂在那里没人管,加上上下文窗口快撑爆了——而我完全不知道任何一件事在什么时候发生的。
当时我的感受就是:我需要一个能看到所有 Agent 状态的控制台。
然后我找到了 abtop。

abtop 是什么?
一句话:它就是 htop,但专门为 AI 编程 Agent 设计的。
项目地址:https://github.com/graykode/abtop
用 Rust 写的,基于 ratatui 构建 TUI 界面,完全在终端里跑。打开之后,你能实时看到:
- 每个 Claude Code / Codex CLI 会话的状态
- Token 用量和上下文窗口占用率(有进度条和百分比)
- API 速率限制情况
- Agent 当前在做什么任务
- Agent 产生的子进程和打开的端口
- 所在项目的 Git 状态
就是一张 AI Agent 的实时看板。

解决了哪些真实的痛点
痛点一:同时跑多个 Agent,不知道谁在干什么
现在越来越多人开始并行跑 Claude Code 处理不同的任务。问题是你得不停地切来切去看状态——abtop 把所有会话集中到一个屏幕,一目了然。
痛点二:不知道 API 快限速了
速率限制这件事最烦,踩到之后才知道,已经晚了。abtop 实时显示你的 quota 消耗情况,配合 --setup 命令可以安装速率限制 hook,变成提前感知。
痛点三:Agent 起了个服务然后忘了关
这个我真踩过坑。Agent 在调试中跑了一个本地服务,任务完成后进程还在那里占着端口。abtop 有孤儿端口检测功能,按 X 一键清理。
痛点四:上下文窗口快撑满了不知道
上下文窗口满了之后 Claude Code 的表现会明显变差,但你往往不知道什么时候会满。abtop 的每个会话都有上下文占用百分比的进度条,快满时会有视觉提示。
关键特性
支持的 Agent
| 功能 | Claude Code | Codex CLI |
|---|---|---|
| 会话发现 | ✅ | ✅ |
| Token 追踪 | ✅ | ✅ |
| 上下文窗口 % | ✅ | ✅ |
| 状态检测 | ✅ | ✅ |
| 当前任务 | ✅ | ✅ |
| 速率限制 | ✅ | ✅ |
| Git 状态 | ✅ | ✅ |
| 子进程/端口 | ✅ | ✅ |
| 子 Agent | ✅ | ❌ |
| Memory 状态 | ✅ | ❌ |
Claude Code 的支持更完整,Codex CLI 也覆盖了核心功能。
完全只读,无需 API Key
这一点很重要。abtop 只读取本地文件和进程信息,不需要任何 API Key,不需要鉴权。Tool 名称和文件路径会显示在 UI 里,但 prompt 文本和文件内容不会被展示。
唯一会发出网络请求的是 claude --print 生成 session 摘要,这是 Claude 自己的 API 调用,不是 abtop 的。
tmux 集成:直接跳转到对应 Agent
这个功能很实用。如果你在 tmux 里跑各个 Agent,在 abtop 里选中某个会话按 Enter,可以直接跳转到那个 pane。
tmux new -s work
# pane 0: abtop
# pane 1: claude(项目 A)
# pane 2: claude(项目 B)
# → 在 abtop 里按 Enter,直接跳过去
我现在的工作流就是左边开 abtop 监控,右边各个 pane 跑 Agent,切换成本降了很多。
支持的主题
btop (default)

dracula

catppuccin

tokyo-night

gruvbox

nord

安装方法
macOS / Linux(一行安装)
curl --proto '=https' --tlsv1.2 -LsSf \
https://github.com/graykode/abtop/releases/latest/download/abtop-installer.sh | sh
Homebrew
brew install graykode/tap/abtop
Cargo(如果你有 Rust 环境)
cargo install abtop
Windows
原生 Windows 不支持(依赖 ps、lsof 等 Unix 工具),需要通过 WSL:
wsl --install
# 进入 WSL 后:
curl --proto '=https' --tlsv1.2 -LsSf \
https://github.com/graykode/abtop/releases/latest/download/abtop-installer.sh | sh
abtop
基本使用
abtop # 启动 TUI 看板
abtop --once # 打印一次快照然后退出
abtop --setup # 安装速率限制收集 hook
abtop --theme dracula # 指定主题启动
推荐终端窗口大小:120×40 或更大。最小支持 80×24,面板会自适应隐藏。
快捷键
| 按键 | 功能 |
|---|---|
↑ / ↓ 或 k / j |
选择会话 |
Enter |
跳转到该会话终端(需要 tmux) |
x |
结束选中会话 |
X |
清除所有孤儿端口 |
t |
循环切换主题 |
1–5 |
切换面板显示 |
Esc |
打开/关闭配置页 |
r |
强制刷新 |
q |
退出 |
我的使用体会
说实话,abtop 解决的是一个我之前靠「感觉」在管理的问题。
以前跑多 Agent 的时候,我基本靠直觉判断"这个应该快完了吧"、"好像还没超速率"——结果时不时踩坑。abtop 给了这件事一个清晰的数字和视觉反馈,这种从模糊到可观测的变化,实际上改变了我怎么安排并发任务。
当然它还很新(3 月底才发布,目前 1700 Star),有些问题还在修——比如自定义 CLAUDE_CONFIG_DIR 路径的识别、某些场景下 session 自动发现失败。但核心功能已经够用了,更新节奏也挺快,9 个版本都在两周内出的。
如果你每天都在用 Claude Code,特别是同时跑多个项目的,这个工具值得装一下试试。
项目信息
- GitHub:https://github.com/graykode/abtop
- 语言:Rust(99%)
- License:MIT
- 最新版本:v0.2.11
- 支持平台:macOS / Linux(Windows 需 WSL)
你现在同时跑几个 AI Agent。
转自:https://mp.weixin.qq.com/s/4oHabtqewyy6BiHDJ_HuQA