# OpenCoWork **Repository Path**: devai/OpenCoWork ## Basic Information - **Project Name**: OpenCoWork - **Description**: 一个开源桌面多智能体 AI 协作平台。它的定位不是再做一个聊天窗口,而是把大模型、文件系统、Shell、SSH、MCP、定时任务、办公 IM 插件和多 Agent 编排放进一个本地桌面运行时里,让 Agent 真正进入开发者的工作环境。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: https://www.cnblogs.com/token-ai/p/20175241 - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-06-05 - **Last Updated**: 2026-07-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

OpenCowork

OpenCowork

开源桌面多智能体 AI 协作平台
让 AI 智能体直接访问你的文件系统、执行 Shell 命令、使用丰富工具箱 —— 一切都在你的机器上运行。

OpenCowork 界面预览

English为什么选择核心特性架构快速开始文档

License Version Stars Forks

--- ## 🚀 为什么选择 OpenCowork? 大多数 AI 聊天界面与你的实际工作环境是隔离的。你一半的时间花在窗口之间复制粘贴代码、文件内容和终端输出。 **OpenCowork 把智能体放进你的机器:** - **直接文件系统访问** — 智能体在你的许可下读写、编辑项目文件。 - **Shell 执行** — 无需离开对话即可运行命令、查看日志、管理开发服务器。 - **完整的上下文感知** — 智能体自主探索你的代码库,无需手动喂数据。 - **人在回路** — 透明的工具调用审批系统让你始终拥有最终控制权。 ## ✨ 核心特性 ### ⚙️ 运行时 - **4 层 Electron 架构** — 主进程、Preload 安全桥接、渲染进程 UI(React 19)、提供商无关的 Agent 运行时。 - **全栈 TypeScript** — 从 SQLite 经 IPC 到 UI 端到端类型安全。 - **SSH 远程支持** — 智能体通过 SSH 透明操作远程主机,集成 xterm.js 终端。 ### 🔄 4 种 Agent 模式 每次对话选择最合适的模式: | 模式 | 用途 | | --------- | ---- | | `clarify` | 提出有据可查的问题,解决歧义,在任何代码编写前产出可审阅的计划。 | | `cowork` | 完整 Agent:代码搜索、文件 I/O、Shell、浏览器、子智能体委派等。 | | `code` | 结对编程 — 聚焦代码生成和精准编辑,集成 Monaco Editor。 | | `acp` | 架构管控:澄清需求、设计方案、分解任务并委派给子智能体执行。 | ### 🧰 工具体系 - **文件与 Shell** — Read、Write、Edit、Glob、Grep、Bash(支持本地和 SSH)。 - **浏览器** — 内置 webview,支持导航、截图、点击、输入和内容提取。 - **任务与团队** — 通过 TaskCreate/TaskUpdate 分解和跟踪工作,通过 Task 派生并行子智能体,通过 TeamCreate/SendMessage/TeamStatus 编排 Agent 团队。 - **Plan Mode** — EnterPlanMode → 编写计划 → ExitPlanMode,产出结构化、可审阅的实现计划。 - **目标追踪** — 创建、跟踪和完成会话级目标,支持 Token 预算。 - **记忆系统** — 分层记忆:全局 SOUL.md / USER.md / MEMORY.md,项目级 .agents/ 覆盖。 - **Cron 智能体** — 调度周期性或一次性后台智能体任务,支持多渠道交付。 - **MCP 客户端** — 连接 Model Context Protocol 服务器(stdio、SSE、streamable-HTTP),并将启用的 MCP 工具直接暴露给 Agent。 - **技能系统** — 从技能市场安装领域特定技能;运行时动态加载并呈现给智能体。 - **自定义扩展** — 通过声明式 HTTP 工具、沙箱 JS 处理器和自定义 HTML 渲染器构建插件。 ### 💬 8 大通讯平台集成 | 平台 | 支持 | | ---------------- | ---- | | 飞书 / Lark | ✅ | | 钉钉 | ✅ | | Discord | ✅ | | QQ | ✅ | | Telegram | ✅ | | 企业微信 | ✅ | | 微信公众号 | ✅ | | WhatsApp | ✅ | ### ⏰ 持久化 - **SQLite** — 消息、会话、项目、任务和计划重启不丢失。 - **增量 Schema** — 仅在列不存在时添加,无迁移文件,无数据丢失。 ### 🌐 国际化 支持 13+ 种语言,包括中文、英文、越南语、土耳其语等 — 全部通过 i18next 实现。 ## 🏗️ 架构 ``` 渲染进程 (React 19) ←→ Preload (contextBridge) ←→ 主进程 │ │ Agent 循环 ─ 工具注册表 ─ IPC ──────────→ IPC 处理器 │ │ ├─ 文件 I/O, Grep/Glob, Bash SQLite (better-sqlite3) ├─ 浏览器 (webview) Shell / SSH (node-pty, ssh2) ├─ 子智能体 & 团队 通讯插件 ├─ Plan, Goal, Memory MCP 客户端 ├─ 技能 & 扩展 Cron 调度器 └─ MCP 资源 文件系统 ``` - **渲染进程** — React 19 + Tailwind CSS + Zustand 状态管理。Agent 循环运行于此,工具通过 IPC 执行。 - **Preload** — 精简的 `contextBridge` API,安全的主↔渲染通信。 - **主进程** — 系统访问:SQLite、文件系统、Shell、SSH、通讯插件、Cron、MCP 客户端。 - **Agent 运行时** — 提供商无关(`js-agent-runtime.ts`),流式响应,处理工具调用。 ## 🛠️ 快速开始 **环境要求:** Node.js ≥ 18,npm ≥ 9 ```bash git clone https://github.com/AIDotNet/OpenCowork.git cd OpenCowork npm install npm run dev ``` ### 常用命令 | 命令 | 说明 | | ------------------- | ----------------------------------- | | `npm run dev` | 启动 Electron + Vite 热重载开发 | | `npm run build` | 类型检查并构建生产版本 | | `npm run build:win` | 构建 Windows 安装包 | | `npm run build:mac` | 构建 macOS .dmg/zip | | `npm run build:linux` | 构建 Linux .AppImage/.deb | | `npm run lint` | ESLint 检查(带缓存) | | `npm run typecheck` | TypeScript 类型检查(主 + 渲染进程)| | `npm run format` | Prettier 自动格式化 | > **数据目录:** `~/.open-cowork/` — 包含 SQLite 数据库、配置、智能体、技能、命令和提示词。 ## 🌟 使用场景 - **自主编程** — 智能体直接在工作区重构代码、调试 Bug、编写代码。 - **定时运维** — Cron 智能体监控日志或系统状态并汇报至飞书/钉钉/Slack。 - **数据调研** — 抓取网页、处理 CSV、生成带图表的报告。 - **远程管理** — 通过 SSH 操作远程服务器,无需离开应用。 ## 📖 文档 完整文档请访问 **[open-cowork.dev](https://open-cowork.dev)** — 基于 Fumadocs + Next.js 构建。 ## 🤝 参与贡献 欢迎任何形式的贡献!请参阅 [AGENTS.md](AGENTS.md) 了解开发指南、编码规范和提交消息格式。 ### 特别感谢 RoutinAI **[RoutinAI](https://routin.ai/)** — 企业级统一大语言模型 API 网关,通过单一的、类型安全的接口访问 GPT、Claude 和 Gemini 系列的 100+ 模型。 GeneralUpdate **[GeneralUpdate](https://github.com/GeneralLibrary/GeneralUpdate)** — 跨平台 .NET 应用自动升级组件。 ## 💝 赞助商 - [lchlfe@hotmail.com](mailto:lchlfe@hotmail.com) - [caomaohanfengZT](https://github.com/caomaohanfengZT) - [struggle3](https://github.com/struggle3) ## 📜 许可证 [Apache License 2.0](LICENSE) ---
⭐ 如果这个项目对你有帮助,请点亮一颗 Star。 由 **AIDotNet** 团队倾情打造 ❤️