一位开发者在 V2EX 发布了开源项目 Berth,这是一款 VS Code 扩展,用于解决 AI 编程 Agent 会话分散难管理的问题。作者日常在 Claude Code 与 Codex 之间频繁切换,项目约定统一写在 AGENTS.md 中供各 Agent 读取,但会话散落在不同项目和终端标签里,难以掌握哪个还在运行、哪个已结束。Berth 在 VS Code 侧栏按项目列出 tmux 中的 Agent 会话,显示各会话的运行状态与工作内容,支持按名称、对话标题或目录搜索,点击即可在编辑器区域打开对应终端,并与源码、diff 并排显示。除 Claude Code 和 Codex 外,该扩展还能识别 Gemini CLI、OpenCode、Copilot CLI、Cursor CLI、Kimi CLI 等多种 Agent。设计上,Berth 不另建 tmux 体系,只发现已有会话,Agent 仍用用户原有命令启动;会话运行在 tmux 中,关闭或重载 VS Code 窗口均不受影响,macOS 上 iTerm2 也可连接同一批会话;工作状态来自各 Agent 的 hooks,首次启动时会提示安装。安装方式为 code –install-extension berthdev.berth,支持 macOS 和 Linux,Windows 需通过 WSL,要求 tmux 3.0 以上版本。项目采用 MIT 协议,代码托管于 GitHub,目前处于早期版本,重启电脑后已确认对话 ID 的会话可以恢复。
事件分析
Berth 的出现折射出 AI 编程工作流的新变化:多 Agent 并行、频繁切换已成为部分开发者的常态,会话编排正在成为开发者工具链的新一层。技术上,该项目选择在 tmux 之上做薄封装而非另造独立应用,复用 VS Code 的编辑、diff 与插件生态,这种贴合既有基础设施的思路降低了维护成本,也让 Agent 的生命周期与编辑器进程解耦,编辑器崩溃或重启均不中断后台任务。通过 hooks 获取 Agent 状态目前仍是轻量方案,若各家 CLI 的状态上报格式趋于统一,类似能力可能被吸收进 VS Code 或主流 Agent 产品的原生功能中。此外,AGENTS.md 作为跨 Agent 共享约定的实践,暗示 Agent 工具生态正向协议化、标准化方向演进,围绕多 Agent 管理的周边工具有望成为一个新的细分赛道。
核心观点:当 AI Agent 成为开发主力,会话管理正从终端技巧演变为独立工具层,编辑器正在变成 Agent 舰队的指挥舱。
原文链接:V2EX 分享发现