Show HN:Fleet Deck – 在一面板上查看機器上所有 Claude Code 會話
Fleet Deck 是一個本地工具,可實時監控和管理所有正在運行的 Claude Code 會話。它提供一個看板,顯示每個會話的狀態、衝突提醒、需求隊列,並支持任務分配、遠程控制、會話恢復等功能。核心架構零模型調用,依靠鈎子事件和確定性邏輯,確保安全與高效。
Fleet Deck 是一個專為管理多個 Claude Code 會話而設計的本地監控與控制面板。無論你是在同一個倉庫的不同工作樹中啓動多個會話,還是臨時創建幾個輔助任務,Fleet Deck 都會將它們統一展示在一個瀏覽器看板上。每個會話都有一個獨特的呼號(如 falcon-a3f2),並顯示其實時狀態:排隊、工作中、驗證中、需要你、空閒、離線。這些狀態完全基於鈎子遙測,而非會話自報,從而避免了“覺得自己快完成了”的樂觀誤導。
衝突檢測是 Fleet Deck 的核心功能之一。當兩個會話在 30 分鐘內嘗試編輯同一文件時,這兩個會話都會收到一條“協調,不要覆蓋”的上下文警告,同時看板上的相關卡片會閃紅。該檢測還支持工作樹感知:如果在倉庫的兩個不同工作樹中編輯同一個文件,它也能提前預測未來的合併衝突。
看板上的“需要你”軌道會收集所有來自會話的權限請求、選擇題、MCP 表單以及“我應該用 bcrypt 還是 argon2?”這類問題,你可以直接從看板作答。終端甚至不再顯示這些提示,而是直接打印“⎿ 已由 PermissionRequest 鈎子允許”並繼續執行。此外,Fleet Deck 還提供郵件功能,你可以向單個會話、整個倉庫或所有會話發送消息。消息在下一個輪次邊界送達,空閒會話通常會在幾秒內收到通知。
Fleet Deck 還包含一個輕量級的編排器。你可以通過“assign auto: fix the flaky test”這樣的指令讓看板自動選擇一個最佳候選會話(空閒、負載最低、倉庫匹配)來執行任務,整個過程通過 SQL 查詢完成,不調用任何模型。你的 Token 不會被額外消耗。看板上的“+ Spawn”按鈕可以啓動一個全新的交互式 Claude 會話,並在 tmux 窗口中運行,你可以實時觀看其工作,也可以隨時終止它。
高級功能包括批量生成:勾選“batch”後,可以在輸入框中按行列出多個任務,每個任務會創建一個獨立的 git 工作樹和分支,互不干擾。3x 前綴可以讓同一任務並行運行三次,以便競速找出最佳結果。在啓動前,表單會精確展示會話數量,讓你對資源使用一目瞭然。
Fleet Deck 的設計強調零模型調用和失敗開放。守護進程(fleetd)是一個 Node.js 後台程序,使用 SQLite 存儲狀態,默認只綁定本地迴環地址 127.0.0.1,因此外部無法訪問。即使守護進程崩潰,鈎子會靜默超時,會話照常運行,不影響工作。看板本身是基於 React 的單頁應用,通過 WebSocket 與守護進程通信。
對於用户關心的安全性:Fleet Deck 的核心不做任何模型調用,只進行確定性邏輯處理。唯一的額外消耗是每次會話的 ~100 token 的簡短報告和偶爾的提醒。遠程控制功能允許通過 claude.ai 從手機操控會話,但默認綁定迴環,只有設置 FLEETDECK_BIND=0.0.0.0 並配置令牌後才能從 LAN 訪問。
Fleet Deck 還支持會話恢復(Revive)。當機器重啓或 tmux 崩潰後,已丟失的終端不會丟失工作——git 工作樹和會話記錄仍在磁盤上。離線但工作樹和記錄完整的卡片會顯示“⟲ revive”按鈕,點擊後使用 --resume 標誌在原始工作樹中重新啓動會話,保留相同的呼號和完整歷史,甚至會話 ID 也會延續。
安裝方面,Fleet Deck 可以通過 Claude 插件市場安裝:只需在終端中運行兩條命令,然後任何新的 claude 啓動都會自動向看板註冊。它要求 Node 22.5+,無需額外的 npm 安裝(守護進程作為單個捆綁文件提供),並支持 Linux、WSL2 和 macOS。tmux 是可選的,但啓用後可以查看終端面板或生成工作線程。
總之,Fleet Deck 為 Claude Code 用户提供了一個強大的空中交通管制塔,幫助管理複雜的工作流程,減少衝突和混亂,同時保持極低的開銷和極高的可靠性。