DevTrends开发者趋势
主题色

betayao /

seahelm

同时开五六个 Claude Code / Codex 在不同 git worktree 里干活的时候,最大的问题不是工具不好用,而是不知道该看哪个窗口。终端长得都一样,只能一个个切过去看最后一行输出。tmux 能管窗口,但它不知道「agent 在等你确认」这件事,对 tmux 来说卡在权限询问的 Claude 和正在写代码的 Claude 没有区别。 Seahelm 把这件事变成一眼可见:每个 repo 一个 tab,每个 git wo…

语言SwiftDT软件开发DTAgent 能力扩展DTAgent 管理与编排DT命令行工具DT桌面应用DTmacOSDT终端DTClaude CodeDTCodexDTCursorDTOpenCode原始ai-agents

产品配图

关于

同时开五六个 Claude Code / Codex 在不同 git worktree 里干活的时候,最大的问题不是工具不好用,而是不知道该看哪个窗口。终端长得都一样,只能一个个切过去看最后一行输出。tmux 能管窗口,但它不知道「agent 在等你确认」这件事,对 tmux 来说卡在权限询问的 Claude 和正在写代码的 Claude 没有区别。 Seahelm 把这件事变成一眼可见:每个 repo 一个 tab,每个 git worktree 一张卡片,卡片上只显示 running / waiting / broken 三种状态。 技术上有两点可能值得一提。 一是终端渲染直接嵌了 libghostty(Ghostty 的 C 接口),Swift + AppKit,不是 Electron,延迟和渲染是原生终端的水平。会话持久化用 zmx,退出 App 或者重启电脑之后 agent 还在原地。 二是状态判断做成了一个优先级梯子:进程退出状态 > OSC 133 shell 集成标记 > 文本正则匹配。正则那一层是数据驱动的,每个 agent 一份 JSON manifest,可以在 ~/.config/seahelm/agents/ 下覆盖。Claude Code 和 Codex 接了原生 hook,所以「在等你」是一个真实事件,不是从屏幕文字猜出来的。目前 12 个 agent 有状态识别:claude、codex、opencode、gemini、cursor、aider、amp、cline、goose、kiro、pi、agent。 另外 agent 可以反过来操作它。每个 pane 都有 SEAHELMPANEID,配一个控制 socket 和 CLI: seahelm pane split <pane> --direction right seahelm pane run <pane> "npm test" seahelm wait agent-status <pane> --status Idle 所以一个 agent 能自己开一个兄弟 pane、把活派过去、然后等它做完。

收录记录

  1. 阮一峰周刊·用户投稿

    2026年9月4日 · 1 次收录

讨论这个产品