README.md
June 5, 2026 Β· View on GitHub
OpenCowork
Open-source desktop platform for multi-agent AI collaboration
Empowering AI agents with local tools, parallel teamwork, and seamless workplace integration.
δΈζζζ‘£ β’ Why OpenCowork β’ Features β’ Architecture β’ Quick Start
π Why OpenCowork?
Traditional LLM interfaces are often "environment-isolated islands." Developers spend 50% of their time copy-pasting code, terminal logs, and file contents between the chat and their IDE.
OpenCowork solves this by providing:
- Local Agency β Agents can directly read/write files and execute shell commands with your permission.
- Context Awareness β No more manual context feeding. Agents explore your codebase and logs autonomously.
- Task Orchestration β Complex tasks ("Refactor this module and update tests") are broken down and handled by specialized sub-agents.
- Human-in-the-loop β You stay in control with a transparent tool-call approval system.
π‘ Inspiration
OpenCowork is deeply inspired by Claude CoWork. We believe the future of productivity lies in a "Co-Working" relationship where humans provide direction and AI handles the iterative execution, tool manipulation, and cross-platform communication.
β¨ Key Features
βοΈ Core Runtime
- 4-layer Electron architecture β Main process, Preload bridge, Renderer UI, and Agent runtime running in main process.
- Provider-agnostic β Works with any LLM provider; bring your own model.
- TypeScript throughout β End-to-end type safety from database to UI.
π 5 Session Modes
Every conversation chooses the right mode for the task:
chatβ Conversational Q&A, no tool access.clarifyβ Ask questions to refine vague requirements before execution.coworkβ Full agent mode: code search, file I/O, shell, and sub-agent delegation.codeβ Focused code generation and editing with Monaco Editor integration.acpβ Autonomous coding pipeline: plan, implement, review autonomously.
π§° Native Toolbox & Rich Skills
- Built-in tools β File I/O, Shell (bash/powershell), Code Search (glob/grep), Web Scraping, OCR, Excel/Word/PDF processing.
- Extensible Skills β Load domain-specific capabilities via Markdown-defined skills:
- 1RPA β Supplier invoice upload for SRM systems.
- CSV Pipeline β Filter, join, aggregate, and transform tabular data.
- Document Suite β Create & edit DOCX, XLSX, PDF with tracked changes and formatting.
- Web Scraper β Extract structured content from live pages.
- Image OCR β Read text from screenshots and scanned documents.
- Email Drafter β Compose professional correspondence from templates.
- WeChat UI Sender β Send messages via desktop WeChat automation.
π¬ 8 Workplace Messaging Plugins
Bridge your local agents to any messaging platform:
| Platform | Support |
|---|---|
| Feishu / Lark | β |
| DingTalk | β |
| Discord | β |
| β | |
| Telegram | β |
| WeCom (WeChat Work) | β |
| Weixin (Official Account) | β |
| β |
β° Persistence & Cron Agent
- SQLite persistence β Messages, sessions, projects, tasks, and plans survive restarts.
- Cron scheduling β Schedule agents for daily reports, log monitoring, or any recurring task.
- Multi-channel delivery β Results can be delivered via desktop notification or any messaging plugin.
π οΈ Quick Start
Prerequisites
- Node.js >= 18
- npm >= 9
git clone https://github.com/AIDotNet/OpenCowork.git
cd OpenCowork
npm install
npm run dev
Key Commands
| Command | Description |
|---|---|
npm run dev | Start Electron + Vite with hot reload |
npm run build | Typecheck then build for production |
npm run build:win | Build Windows installer |
npm run lint | ESLint with cache |
npm run typecheck | TypeScript check (main + renderer) |
npm run format | Prettier auto-format |
Data directory:
~/.open-cowork/β contains SQLite database (data.db), config, agents, commands, and prompts.
ποΈ Architecture
OpenCowork follows a 4-layer Electron architecture for security and performance.
graph TB
subgraph "Renderer β React 19 UI"
A[React UI] --> B[Agent Loop]
B --> C[Tool System]
C --> C1[File I/O]
C --> C2[Shell]
C --> C3[Code Search]
C --> C4[Sub-Agents]
end
subgraph "Preload β Secure Bridge"
D[contextBridge API]
end
subgraph "Main Process β System Access"
E[IPC Handlers]
F[SQLite / File System]
G[Shell / SSH]
H[Messaging Plugins]
I[Cron Agent]
end
subgraph "Agent Runtime β Main Process"
J[js-agent-runtime.ts]
K[MCP Client]
L[LLM Provider Abstraction]
end
A -.->|ipcRenderer.invoke| D
D -.->|ipcMain.handle| E
E --> F
E --> G
E --> H
E --> I
A -.->|Direct Call| J
J --> K
J --> L
- Renderer β React 19 UI, agent loop, and tool system.
- Preload β Secure
contextBridgewith a narrow API surface. - Main Process β IPC handlers, SQLite, filesystem, shell, SSH, plugins.
- Agent Runtime β Provider-agnostic runtime (
js-agent-runtime.ts) with MCP client support.
π Use Cases
- Autonomous Coding β Let agents refactor code, fix bugs, and write tests directly in your workspace.
- Automated Ops β Schedule agents to monitor logs or system status and report to Feishu/Slack.
- Data Research β Agents can scrape web data, process local CSVs, and generate visual reports.
π Ecosystem Pairing
Codex-Manager
- Repository: qxcnm/Codex-Manager
- Recommended pairing: use Codex-Manager as the management or orchestration entry point for Codex-centric workflows, while OpenCowork handles local file operations, multi-agent execution, workplace messaging, and desktop automation.
- Best for: teams that want to separate task management and workflow organization from local execution and office integration.
- A simple way to think about it: Codex-Manager organizes the work, OpenCowork executes it in the real workspace.
π Star History
π€ Contributing
We welcome contributions! Please see our Development Guide for more details.
Special thanks
RoutinAI
π Sponsors
GeneralUpdate
π License
Licensed under the Apache License 2.0.
If this project helps you, please give it a star. β
Made with β€οΈ by the AIDotNet Team