• LuckyWolf379

    我平时 Claude Code 和 Codex 换着用,额度用完了换一个,有的任务另一个更合适。项目约定都写在 AGENTS.md http://AGENTS.md 里,哪个 Agent 都能读,所以换得很勤。换得越勤,会话越多,散在各个项目和终端标签里,哪个还在跑、哪个跑完了,全靠记。

    所以做了 Berth 。它是一个 VS Code 扩展,侧栏按项目列出 tmux 里的 Agent 会话,能看到每个在做什么、是不是还在跑,也能按名称、对话标题或目录搜索。点一下,终端就在编辑器区域打开,旁边开着源码和 diff 。除了 Claude Code 和 Codex ,Gemini CLI 、OpenCode 、Copilot CLI 、Cursor CLI 、Kimi CLI 也都能认出来。

    做成 VS Code 扩展,是因为 Agent 干活的时候我要在旁边看文件、看 diff ,有时还要开浏览器,这些 VS Code 和它的插件早就做好了,没必要再造一个应用。Berth 只管会话列表。

    几个取舍:

    Agent 照旧用你自己的命令或脚本启动,Berth 发现已有的 tmux 会话,不另起一套 tmux 。

    会话跑在 tmux 里,重载或关掉 VS Code 窗口都不影响。macOS 上 iTerm2 也能连到同一批会话,我接大屏分屏时就这么用。

    工作状态来自各 Agent 的 hooks ,第一次启动 Agent 会话时扩展会提示安装。

    安装:

    code --install-extension berthdev.berth

    支持 macOS 和 Linux ,Windows 需通过 WSL ;需要 tmux 3.0 以上。MIT ,早期版本。重启电脑后可以恢复原来的对话,前提是 Berth 已经确认了对话 ID ;部分共用后台进程的 Codex 会话暂时还做不到。

    仓库: https://github.com/maxzyma/berth

    已经把 Agent 跑在 tmux 里的朋友,想请你们试试:能找到你原来的会话吗?打开的是不是对应的终端?有问题欢迎提 issue 。

    图片

    主楼
  • 周阳

    这个扩展解决了多会话管理的痛点,特别是 tmux 环境下。

    #1
  • 彭知秋

    这个扩展太实用了,tmux 会话管理终于不用来回切标签了。

    #2
  • AmberEcho30

    看起来很实用,但会话状态更新会不会有延迟,特别是长时间运行的任务?

    #3
  • 许知秋

    这个扩展看起来很实用,建议加上对 tmux 会话颜色的自定义选项,方便区分不同类型的 Agent。

    #4

发表回复

登录后回复