返回资讯中心
外部精选
软件工程
#开发者实时流

Forchetta 上线:在单一窗口管理 Mac 上所有 Claude Code 会话

来源标题:Forchetta – one window for all your Claude Code sessions (macOS)

macOS 工具 Forchetta 发布,可将 Mac 上所有 Claude Code 会话汇总到一个窗口实时查看。它能显示每个会话的运行状态、等待内容和花费,支持最多四个会话并排操作,并可直接处理权限请求、接收通知以及组建协作的 agent 团队。所有数据在本地运行,仅摘要功能可选调用 Claude API 且默认关闭,可通过 Homebrew 安装。

Hacker News 最新magmator2026/11/11 · 今天30 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

你 Mac 上的每个 Claude Code 会话,都汇聚在一个窗口里。 Forchetta 会找到你正在运行的 Claude Code 会话,并实时显示每个会话在做什么、在等待什么、已经花费了多少。最多可以并排打开四个会话,直接在各自的方框里回应权限请求,某个会话需要你时收到通知,还能启动协同工作的智能体团队。 安装 · 功能 · 智能体团队 · arricurdAI · 手动安装 · 卸载 · 🇮🇹 Italiano 一个正在工作的智能体团队。录制于本仓库的模拟环境(scripts/dev):其中的会话是 Claude Code 的脚本化替身,而应用、守护进程和队列都是真实运行的。 一切都在你的 Mac 上运行。唯一的外部服务是用于生成摘要的 Claude API,它是可选的,默认关闭。 brew install alessiodonato/tap/forchetta forchetta setup Homebrew 会一并安装 Node.js 和 tmux。forchetta setup 会: 然后从 ~/Applications 打开 Forchetta。已经在运行的会话会自动出现。要在应用里打开某个会话的终端,请用 forchetta run claude 启动它,或者在应用里选择 new session。 执行 brew upgrade forchetta 之后,需要再次运行 forchetta setup:只有在应用发生变化时,它才会重新构建应用。 你需要 macOS 12 或更高版本,以及 Claude Code(测试版本为 2.1.322)。可选:arricurdAI。 你的数据在哪里。Forchetta 把它写入的所有内容都保存在 ~/Library/Application Support/Forchetta,只有你能读取:守护进程的 token、tmux 的 socket、会话状态、日志、备份,以及 config.json 中的设置。在克隆的仓库里,这个位置是克隆目录内的 var/。下文中的 var/ 都指这个文件夹。 git clone https://github.com/alessiodonato/forchetta.git cd forchetta pnpm install # 同时会把 node-pty 的 spawn-helper 设为可执行 pnpm build # CLI、守护进程以及 dist/ 中的应用页面 bin/forchetta setup # 把应用装到 ~/Applications,并安装 hooks 你需要 Node.js 22 或更高版本、pnpm 和 tmux(brew install tmux)。pnpm build:app 则会把应用构建到 build/ 中,供开发使用。要在终端里使用 forchetta 命令,请在 ~/.zshrc 中添加: alias forchetta=/path/to/forchetta/bin/forchetta 与 arricurdAI 配合使用 arricurdAI 让 Claude Code 的上下文保持精简,并显示你的 token 都花在了哪里。Forchetta 不依赖它也能工作;配合使用时,Forchetta 还会显示: 它的菜单栏图标会取代 arricurdAI 的 SwiftBar 插件。Forchetta 会在 PATH 或其 hooks 中找到 arricurdAI。 Forchetta 通过 Claude Code 的 hooks 了解你的会话在做什么。forchetta setup 会安装这些 hooks;如果单独安装,则是: 每个事件都会经过 bin/forchetta-hook,这是一个很小的 sh + curl 脚本,负责把事件转发给本地守护进程。该脚本会: SessionStart 和 SessionEnd 则是同步的:它们大约耗时 30 毫秒。 PermissionRequest 会经过 bin/forchetta-permission,它会等待方框中的回答(见「在方框中处理权限请求」)。终端里的对话框仍会立刻出现。守护进程关闭时,该脚本会立即退出,不输出任何内容。使用 claude -p 和 SDK 时也是如此,它们没有对话框。 forchetta run claude [claude 参数] # 类似 claude,但在 tmux 中运行 forchetta ls # 会话及其状态 forchetta ls --json # 同上,以 JSON 输出,供脚本和 jq 使用 forchetta daemon start|stop|status forchetta run claude 会在 Forchetta 私有的 tmux 服务器中启动 Claude Code(var/tmux.sock,由 Forchetta 的 config/tmux.conf 配置),并附加当前终端。用法和 claude 一样,只有几处不同: 用普通 claude 启动的会话也会出现在 forchetta ls 中,但只是只读的:Forchetta 无法向它们发送命令。 守护进程会随 forchetta run 自动启动。停止守护进程不会停止任何会话。 如果你希望每次输入 claude 都经过 Forchetta,请在 ~/.zshrc 中添加(在克隆仓库中,要放在 forchetta 别名之后): alias claude='forchetta run claude' forchetta run 使用的是保存在 var/config.json 中的 claude 完整路径,因此不会形成循环。要运行原始的 claude 一次:command claude。 每个会话一个方框。会话开始时它自动出现,结束时淡出;10 分钟后它就会消失。每个方框会显示: 隔着一个房间也能看出状态: 琥珀色、绿色和红色只表示状态。Claude 橙标示出你可以操作的内容:启动某项操作的按钮、你已经选中的项,以及你正在输入的窗格。 性能与无障碍。开启「减弱动态效果」后(系统偏好设置 → 辅助功能 → 显示),状态仍然可辨认,但会保持静止。当窗口最小化、隐藏或被遮挡时,不会有任何动画,守护进程也会停止读取 arricurdAI。 在 Intel Mac 上,60 fps 的每个动画大约要占用 WindowServer 四分之一个核心。因此,持续动画只在每次状态变化后的最初几秒内流畅运行;之后它们会一起以每秒 12 步的节奏继续。静止时,应用、页面和守护进程合计的 CPU 占用保持在 1% 以下。 上下文和缓存来自 arricurdai status:Forchetta 显示同样的数字,不会重新计算。arricurdAI 会从 PATH 或其 hooks 中找到,也可以在 var/config.json 中设置("arricurdai": ["/path/to/arricurdai"])。百分比是估算值(≈):arricurdAI 给出的是 token 数,而不是模型的上下文窗口。窗口大小在 var/config.json 的 contextWindows 中:默认为 1M,Haiku 4.5、Sonnet 4.6 和 Opus 4.6 为 200k。 将鼠标悬停在方框上时,会出现 ✎。它让你为会话设置: 这个选择也会按文件夹保留(var/teams.json):在同一文件夹中重新启动的会话,哪怕是在第二天,也能找回自己的位置。Remove 会清除全部设置。 只要至少有一个分组,顶部就会出现 grid / org chart。在组织图中,每个分组有自己的区域,负责人(leads)在上,其他成员在下,并以连线相连;没有分组的会话排在最后。你起的名字会出现在所有地方:左侧栏、窗格、通知以及冲突警告中。 智能体团队(下一节)也是一个分组:它的会话在启动时就会获得名称、分组和角色。

(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →