AIDotNet/OpenCowork
Open Cowork - Opensource Claude Cowork for Windows & macOS & Linux.
OpenCowork – 多代理 AI 協作的桌面平台
這是什麼 – OpenCowork 是一個開源的桌面應用程式(使用 Electron 建構),讓大型語言模型代理能直接在 你 的機器上操作檔案、終端機與程式碼庫。這些代理可以讀取、編輯、執行命令、瀏覽網路,甚至彼此協調,同時你仍能透過可見的工具呼叫授權來掌控整個流程。
為什麼重要 – 多數基於聊天的 AI 工具需要你複製貼上程式碼或日誌,導致上下文遺失並迫使反覆溝通。OpenCowork 讓代理在工作旁邊運作,提供對本地檔案系統、完整終端機(含 SSH)以及可搜尋的程式碼圖譜的原生存取權。這讓 AI 變成真正的共同工作者,而非脫離實務的聊天機器人。
核心功能(如 README 所述)
| 功能 | 你能獲得的 |
|---|---|
| 多代理設計 | 建立子代理、代理團隊,並設定會話目標。此平台不是單一聊天框;它能協調多個共享共同執行環境的代理。 |
| 訊息頻道整合 | 將代理中心連接至 Feishu、DingTalk、Discord、QQ、Telegram、WeCom、WeChat 官方號碼與 WhatsApp,讓它能將更新發送到團隊已使用的溝通平台。 |
| 執行時堆疊 | Electron + React 19 UI ↔ 狹窄的 Preload 橋接 ↔ Electron Main(主機閘道)↔ .NET 11 原生 AOT 工作者,負責代理迴圈、工具執行、SQLite 儲存與 CodeGraph 索引。 |
| 五種會話模式 | chat(純對話)、clarify(編碼前規劃)、cowork(完整存取檔案、終端機、瀏覽器、子代理)、code(使用 Monaco 編輯器進行配對程式設計)、acp(架構導向設計與委派)。 |
| 工具箱 | • 檔案與終端機(讀取/寫入、glob、grep、Bash、SSH) |
| • 瀏覽器自動化(導航、點擊、提取) | |
| • 任務與團隊管理 | |
| • 計畫模式 | |
• 目標驅動記憶(SOUL.md、USER.md、MEMORY.md) |
|
| • 定時工作(cron) | |
| • MCP 伺服器(stdio、SSE、HTTP) | |
| • 技能市場與擴充功能 | |
| • CodeGraph(基於 tree-sitter 的專案索引)。 | |
| 工作區 UI | Kanban 任務看板、排程/一次性任務、資源探索器、技能/角色面板、WebDAV 同步、用於媒體流程的節點圖畫布、視覺化 CodeGraph 檢視、專用 SSH 終端機。 |
| 國際化 | 使用 i18next 將介面翻譯成 16 種語言。 |
| 桌面寵物與生命週期鉤子 | 可選的吉祥物與自訂啟動/停止行為的鉤子。 |
架構概覽
Renderer (React 19) ←→ Preload ←→ Main (Electron host) ←→ Native Worker (.NET 11 AOT)
UI 與授權 IPC、視窗、通訊管道、cron、SSH 代理迴圈、工具、SQLite、CodeGraph
CLI (Ink TUI) ────────────────────────────────────────────────────────────────────────→ 同一原生工作者
- Renderer – 僅顯示狀態;從不執行代理邏輯。
- Preload – 一個輕量的
contextBridge,向 Renderer 暴露安全的 API。 - Main – 管理視窗、憑證、訊息插件,並啟動原生工作者。
- Native Worker – 掌管權威的處理程序,負責執行 LLM 提供者迴圈、工具執行、資料儲存至 SQLite,以及維護 CodeGraph。
桌面 UI 與基於終端機的 CLI(cowork)皆與 同一 原生工作者通訊,確保代理、提供者與工作擁有單一真相來源。
快速入門(來自 README 的快速起手)
- 先決條件 – Node ≥ 18、npm ≥ 9、.NET 11 SDK(預覽版 7+ 並支援原生 AOT)。請使用子模組克隆,因為 CodeGraph 附加工具是必需的。
git clone --recurse-submodules https://github.com/AIDotNet/OpenCowork.git cd OpenCowork - 安裝相依性並以開發模式執行
npm install npm run dev # 啟動帶有熱重載的 Electron - 建構發行版本 – 使用提供的指令碼(
npm run build:win、build:mac、build:linux)。GitHub Releases 頁面也提供預先建構的安裝程式。 - CLI 替代方案 – 全域安裝 npm 後,你可從終端機執行相同的工作者:
npm install -g @aidotnet/opencowork cowork # 啟動 TUI 客戶端 cowork --doctor # 診斷
所有設定、提供者、代理與技能定義皆位於 ~/.open-cowork/,並在桌面應用與 CLI 之間共用。
常見使用情境
- 自主程式設計 – 讓代理直接在你信任的程式碼庫中重構、除錯並提交變更。
- 排程式操作 – 基於 cron 的代理監控日誌或系統健康狀態,並將警報推送到 Feishu、Discord 等平台。
- 研究與報告 – 瀏覽網路、爬取資料、處理 CSV/Excel 檔案,並產生文件。
- 遠端管理 – 在應用程式內開啟 SSH 終端機,於不離開 UI 的情況下在其他主機執行命令。
- 設計與媒體流程 – 使用「繪圖」節點圖畫布與內建擴充功能,進行產品設計、創意製作或影片生成。
文件與社群
- 官方文件 – https://open-cowork.dev
- 專案內指南 –
AGENTS.md(代理慣例)、cli/README.md(CLI 使用方式)、docs/architecture/下的架構文件。 - 貢獻方式 – 遵循
feat(scope): …提交風格,開 PR 前執行npm run typecheck與npm run lint。 - 贊助者與致謝 – 項目列出數位個人贊助者,並感謝 RoutinAI(LLM 網關)與 GeneralUpdate(自動更新庫)。
授權條款
Apache License 2.0 – 可自由用於商業與非商業用途,並附帶常見的專利授權與署名要求。
總結 – OpenCowork 是一個功能完整的本地運行多代理平台,將大型語言模型的能力與開發者的既有工作流程結合,提供豐富的桌面 UI 與終端機客戶端,同時確保所有資料皆保留在使用者的機器上。
相關
- 專案
- 專案
- 專案
- 專案
- 專案