GitHub 地址:https://github.com/graykode/abtop
简介
abtop 是一个专为 AI 编程代理(AI Coding Agents)设计的终端监控仪表盘(TUI)。它就像程序员熟悉的 htop或 btop,但监控对象不是系统进程,而是你本地运行的 Claude Code、Codex CLI、OpenCode 等 AI 会话。当你同时开启多个 Agent 处理不同项目时,abtop 能在一个屏幕上集中展示所有会话的 Token 消耗、上下文窗口饱和度、API 速率限制、Git 状态及开放端口,彻底解决“窗口切换疲劳”和“成本失控”的痛点。该项目基于 Rust 编写,隐私友好(无需 API Key,仅读取本地元数据),是重度 AI 编程用户的必备效率工具。
主要功能
1. 全景式 Agent 监控面板
-
资源消耗可视化:实时显示每个会话的 Token 用量、上下文窗口占用百分比(带进度条预警),防止对话因上下文爆满而“失忆”。
-
配额与限流预警:直接展示 API 速率限制(Rate Limit)的剩余配额和重置倒计时,避免任务执行到一半因超限而中断。
-
开发环境感知:集成 Git 状态显示(当前分支、变更文件数),并列出 Agent 启动的子进程和占用的网络端口,轻松发现并清理“僵尸服务”。
2. 无缝工作流集成
-
tmux 深度联动:在 tmux 环境中,选中会话按
Enter键可直接跳转到运行该 Agent 的窗格(Pane),实现监控与交互的无缝切换。 -
多平台与多配置支持:原生支持 macOS、Linux 及 Windows(通过 sysinfo 和 netstat),可自动发现不同配置文件(Profile)下的多个 Claude Code 实例。
3. 隐私安全与体验优化
-
零信任设计:工具完全只读(Read-Only),不收集 API Key,不发送数据到云端,仅读取本地进程信息和文件元数据,绝不显示你的代码文件内容或 Prompt 文本。
-
无障碍适配:内置 12 款主题,包含 4 种色盲友好(Colorblind-friendly)模式(高对比度、红色盲、绿色盲、蓝色盲),支持终端窗口自适应(最小 80x24)。
安装与配置
环境要求
-
终端环境:macOS、Linux 或 Windows(原生 PowerShell)。
-
依赖工具:Git(Cargo 安装方式需要)。
安装方式
-
一键脚本安装(macOS/Linux):
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/graykode/abtop/releases/latest/download/abtop-installer.sh | sh -
Cargo 安装(通用):
cargo install abtop -
Windows(PowerShell):
irm https://github.com/graykode/abtop/releases/latest/download/abtop-installer.ps1 | iexWindows 版本利用 sysinfo 和 netstat 实现原生支持,无需依赖 WSL。
关键配置(可选)
-
Rate Limit 钩子:运行
abtop --setup安装钩子,以启用更精确的配额监控(仅限支持的 Agent)。 -
主题与语言:首次运行后会在
~/.config/abtop/config.toml生成配置文件,可设置默认主题(如theme = "dracula")或语言(auto-detected)。
如何使用
基础启动
在终端直接运行 abtop即可启动交互式监控面板。界面通常分为会话列表、资源详情和底部操作栏。
核心交互指令
-
导航:使用
↑/↓或k/j键选择会话。 -
跳转(tmux):选中会话后按
Enter,直接切换到该 Agent 所在的 tmux 窗格。 -
主题切换:按
t键循环切换内置主题(含色盲友好模式)。 -
清理端口:按
X键可尝试清理所有检测到的孤儿端口。 -
退出:按
q键退出程序。
常用命令行参数
-
abtop --once:打印一次当前状态快照后退出,适合脚本集成。 -
abtop --theme nord:启动时直接加载指定主题。
应用场景实例(无代码)
场景一:全栈开发的“指挥中心”
痛点:全栈工程师小明同时用 Claude Code 重构前端组件、用 Codex CLI 调试后端 API,还用 OpenCode 编写测试脚本。他不断在 5 个终端窗口间来回切换,不仅效率低下,还经常搞混哪个会话在跑哪个任务,且无法感知 Token 消耗速度。
abtop 解决方案:
-
小明在 tmux 的一个独立窗格中启动
abtop。 -
在 abtop 面板中,他一眼看清:Session A(前端)已消耗 12K Token,上下文占用 45%;Session B(后端)触发了 Rate Limit,还剩 3 分钟重置;Session C(测试)在 3000 端口启动了一个测试服务器。
-
他发现后端会话快超限了,直接按
Enter键跳转到该窗格,暂停任务等待重置,避免了 API 报错中断。 -
价值:从“盲人摸象”变为“全局掌控”,窗口切换效率提升 80%,成本控制可视化。
场景二:团队协作的“资源守门员”
痛点:一个三人开发团队共用一套共享开发机进行 AI 辅助编程。经常发生 A 成员启动的 Agent 占用了 8080 端口,导致 B 成员的服务无法启动;或者有人忘记关闭 Agent,持续消耗团队 API 配额。
abtop 解决方案:
-
团队在共享机的公共终端(如 screen 会话)中常驻 abtop。
-
任何成员登录后,先看 abtop:红色高亮显示端口冲突的会话,以及过去 24 小时消耗 Token 最多的“大户”。
-
通过 tmux 跳转功能,快速定位到“僵尸进程”并清理。
-
价值:减少资源冲突,建立透明的成本审计机制,避免“公地悲剧”。
场景三:无障碍开发的“色盲友好”体验
痛点:一位有色觉障碍(红绿色盲)的开发者,在使用传统终端工具时难以区分表示“警告”的红色进度条和“正常”的绿色进度条,经常错过上下文窗口已满的提示。
abtop 解决方案:
-
该开发者在配置文件中设置
theme = "deuteranopia"(绿色盲模式)或使用高对比度主题。 -
abtop 使用形状和亮度对比(而非单纯的颜色)来标示状态(如上下文 90% 以上会显示为深色填充块)。
-
他无需依赖颜色辨别,仅凭视觉对比度即可快速识别高危会话。
-
价值:提升开发工具的包容性(Inclusivity),让所有开发者都能高效利用 AI 能力。
总结
abtop 填补了 AI 编程工具链中“监控”环节的空白。它将原本分散在多个终端、需要人工拼接的碎片化信息(Token、限流、端口),整合成了一个高性能、隐私安全、开箱即用的单一视图。对于每天与多个 AI Agent 打交道的开发者而言,它是提升效率、控制成本、避免资源泄漏的必备利器。
GitHub 地址:https://github.com/graykode/abtop

252

被折叠的 条评论
为什么被折叠?



