Dev.to · 2 min read

用自己的 Claude 訂閱,讓 Claude Code 擔任 osFoundry 的 worker

用自己的 Claude 訂閱,讓 Claude Code 擔任 osFoundry 的 worker

完成這套設定後,osFoundry 裡的 Worker 角色就交給 Claude Code。當計畫中的某個步驟輪到 Worker,桌面 app 會在你的專案資料夾裡啟動 claude,登入的是你自己的 Claude 訂閱。Claude Code 用自己的工具編輯檔案,osFoundry 這邊的工具(例如搜尋你的筆記)則以 mcp__osfoundry__memory_search 的名稱呼叫。每一次這樣的呼叫,都會在 osFoundry 的聊天裡顯示成一行「Using …」。 誰負責什麼 Claude Code osFoundry 桌面 app 登入 你的 Claude 訂閱,/login 之後由 CLI 保存 完全不經手。會從子行程的環境中移除 ANTHROPIC_API_KEY 之類的變數,讓這次執行不會退回 API 計費 費用 從你的訂閱裡扣 這次執行記為費用 0 檔案 用自己的 Read、Edit、Bash,只在一個資料夾內(--add-dir) 決定是哪個資料夾:Local Folders 裡最新加入的那個 osFoundry 工具 以 mcp__osfoundry__ 呼叫 只在這次執行期間透過 loopback port 提供,並逐一用白名單檢查每次呼叫 核准 在自己的資料夾內以 --permission-mode bypassPermissions 執行 經過 bridge 的每次呼叫,都會通過和其他模型工具呼叫相同的核准與政策關卡 輸出 最終文字 成為該角色的輸出。工具活動以進度行顯示 設定 1. 安裝 Claude Code,並登入一次 依照 Anthropic 文件的方式安裝 CLI。接著在終端機裡登入: $ claude > /login osFoundry 會在 PATH、~/.claude/local,以及 VS Code 擴充套件的 bundle(~/.vscode/extensions/anthropic.claude-code-*/resources/native-binary/claude)裡尋找執行檔。所以只透過 VS Code 擴充套件裝的 Claude Code 也找得到。 2. 在 External AI 中啟用 在桌面 app 裡點標題列的鑰匙圖示(API Keys (BYOK)),再打開 External AI(外部 AI)分頁。Claude Code 那一列應該長這樣: Claude Code Installed [Enabled] /Users/you/.claude/local/claude Model id: cli:claude (chat) · cli:claude:agent (autonomous) [Verify sign-in] [Sign in] 範例:External AI 分頁中的 Claude Code 與 Codex 點 Verify sign-in(驗證登入)。app 會透過 CLI 跑一次很小的 completion,然後顯示 ✓ Signed in 或 Needs sign-in。Sign in 會在終端機視窗裡開啟 Claude Code,並顯示提示「Type /login to sign in, then close this window.」 你可能會看到 API key in env 的標籤。這表示啟動 osFoundry 的環境裡設了 ANTHROPIC_API_KEY 之類的變數。app 在啟動 claude 之前會把它拿掉,所以這次執行仍然使用你的訂閱。這個標籤只是提醒。 3. 指定資料夾 Agent 模式在真實的目錄裡運作。到 Settings → Local Folders 加入你的專案。如果有好幾個,會使用最近加入的那個。從 Code 介面(Code surface)啟動的執行,則改用該次執行所登記的 repository。 4. 綁定角色 打開 Pipeline 分頁 → Pipeline Roles。在 Agents 底下選 Worker,再從 External AI (subscription) 群組選擇 cli:claude:agent。 這兩個 id 是兩種不同的模式: cli:claude:agent 是自主模式。Claude Code 在你的資料夾裡有自己的工具,另外還能透過 bridge 使用 osFoundry 的工具。適合 Worker、Researcher、Document Agent 這類角色。 cli:claude 是聊天模式。CLI 會帶著 --disallowedTools '*' 執行,什麼都不能呼叫。適合 Titling 或 Compaction 這類純文字角色。如果把需要工具的角色綁到它,執行會失敗,並顯示訊息請你改用 cli:claude:agent。 你在 Agents 畫面自訂的 agent 也能使用它。它們的模型選單會在 CLI agents 底下列出,標籤是「autonomous — runs in your local folder」。 5. app 實際啟動的指令 每次執行時,osFoundry 會先啟動一個全新的 MCP bridge,再大致用下面的方式啟動 CLI。這些 flag 來自 src-tauri/src/providers/agent_cli.rs 裡的 build_claude_command: claude -p "" \ --output-format stream-json --verbose --include-partial-messages \ --permission-mode bypassPermissions \ --add-dir /Users/you/work/site \ --mcp-config '{"mcpServers":{"osfoundry":{"type":"http", "url":"http://127.0.0.1:/mcp", "headers":{"Authorization":"Bearer "}, "timeout":120000}}}' \ --strict-mcp-config \ --append-system-prompt "" 有了 --strict-mcp-config,你自己設在全域或專案裡的 MCP 伺服器就不會混進這次執行。只會接上 osfoundry 這個伺服器。port 和 token 每次執行都是新的,行程結束時 listener 也會關閉。 實際執行一次 範例。筆記和 repository 都是示範內容。 你(Maestro 聊天,Worker = cli:claude:agent) 幫我在筆記裡找 Q4 預算檢討是什麼時候,然後加到 TODO.md。 Claude Code 的工具呼叫 mcp__osfoundry__memory_search {"query": "Q4 預算檢討"} → 「Q4 預算檢討:週四 14:00。」 Read TODO.md Edit TODO.md (+ "- [ ] 準備 Q4 預算檢討(週四 14:00)要用的數字") osFoundry 的進度行 Using memory_search — {"query":"Q4 預算檢討"} Using Read — {"file_path":"TODO.md"} Using Edit — {"file_path":"TODO.md", …} 回答 已在 TODO.md 加入「準備 Q4 預算檢討(週四 14:00)要用的數字」。 時間取自你的筆記「Q4 預算檢討:週四 14:00。」 mcp__osfoundry__ 這個前綴,是 Claude Code 為名叫 osfoundry 的伺服器的工具取名的方式。osFoundry 會在進度行裡把它拿掉,所以 memory_search 看起來和用 API 模型時一樣。 界線在哪裡 bridge 提供的是一份簡短、固定的清單。裡面有唯讀工具,例如 memory_search、web_search、extract_content、code_search、todo_list、transcribe 和 cloud_* 的讀取工具,再加上編排(spawn_fleet、graph_run、loop_run)、即時畫面與 Canvas 工具。read_file、write_file、execute_command 是刻意排除的。Claude Code 本來就有限定在資料夾內的同類工具,若再透過 MCP 給它第二個不受範圍限制的執行器,就會伸手到 --add-dir 之外。 白名單由 bridge 強制執行,而不是靠 CLI flag。以 bypassPermissions 模式執行時不會遵守 --allowedTools,所以 osFoundry 根本不傳。呼叫這次執行清單以外的任何工具,都會收到 JSON-RPC 錯誤:「tool '…' is not available to this agent」。 workspace 和 channel 在 bridge 啟動時就固定了。工具呼叫無法透過參數把自己導向別的 workspace。 寫入畫面或 Canvas 編輯器的操作(ui_agent_act、Canvas 的寫入工具)一律會先問你,和 API 模型時一樣。沒有人在看的執行,例如回應 channel 提及的 agent,會直接拒絕需要核准的工具,而不是去等一個不會出現的點擊。 你的檔案從不經過 osFoundry。Claude Code 直接讀取和編輯,流量則以你自己的登入送往 Anthropic,就跟在終端機裡用一樣。 下一步是把 cli:claude:agent 也綁到 Researcher 角色,和 Worker 並列,然後跑一個編排任務。Pipeline 角色頁面列出了所有可以交給它的角色,Local Folders 則說明工作資料夾是怎麼選出來的。

This is a summary aggregated from Dev.to. Read the complete article on the original site:

Read full article at Dev.to

More AI & Machine Learning News