AIDotNet/OpenCowork
Open Cowork - Opensource Claude Cowork for Windows & macOS & Linux.
OpenCowork – Desktop platform for multi‑agent AI collaboration
What it is – OpenCowork is an open‑source desktop application (built with Electron) that lets large‑language‑model agents work directly on the files, shell, and repositories that live on your machine. The agents can read, edit, run commands, browse the web, and even coordinate with each other, all while you stay in control via visible tool‑call approvals.
Why it matters – Most chat‑based AI tools require you to copy‑paste code or logs, losing context and forcing a back‑and‑forth. OpenCowork runs the agent next to the work, giving it native access to the local filesystem, a full shell (including SSH), and a searchable code graph. This makes the AI a true co‑worker rather than a detached chatbot.
Core features (as described in the README)
| Feature | What you get |
|---|---|
| Multi‑agent design | Create sub‑agents, agent teams, and set session goals. The platform isn’t a single chat box; it can orchestrate several agents that share a common runtime. |
| Messaging channel integration | Connect the agent hub to Feishu, DingTalk, Discord, QQ, Telegram, WeCom, WeChat Official, and WhatsApp, so it can send updates where your team already communicates. |
| Runtime stack | Electron + React 19 UI ↔ narrow Preload bridge ↔ Electron Main (host gateway) ↔ .NET 11 Native AOT worker that owns the agent loop, tool execution, SQLite storage, and CodeGraph indexing. |
| Five session modes | chat (plain conversation), clarify (plan before code), cowork (full access to files, shell, browser, sub‑agents), code (pair‑programming with Monaco editor), acp (architecture‑lead design & delegation). |
| Toolbox | • Files & shell (read/write, glob, grep, Bash, SSH) • Browser automation (navigate, click, extract) • Task & team management • Plan mode • Goal‑driven memory (SOUL.md, USER.md, MEMORY.md) • Cron jobs • MCP servers (stdio, SSE, HTTP) • Skills marketplace & extensions • CodeGraph (tree‑sitter based code‑base indexing). |
| Workspace UI | Kanban task board, scheduled/one‑shot tasks, resource explorer, skill/persona panels, WebDAV sync, node‑graph canvas for media pipelines, visual CodeGraph view, dedicated SSH terminal. |
| Internationalisation | UI translated into 16 languages via i18next. |
| Desktop pet & lifecycle hooks | Optional mascot and hooks for custom start/stop behaviour. |
Architecture at a glance
Renderer (React 19) ←→ Preload ←→ Main (Electron host) ←→ Native Worker (.NET 11 AOT)
UI & approvals IPC, windows, channels, cron, SSH Agent loop, tools, SQLite, CodeGraph
CLI (Ink TUI) ────────────────────────────────────────────────────────────────────────→ Same Native Worker
- Renderer – only displays state; it never runs the agent logic.
- Preload – a thin
contextBridgeexposing safe APIs to the renderer. - Main – manages windows, credentials, messaging plugins, and spawns the native worker.
- Native Worker – the authoritative process that runs the LLM provider loop, executes tools, stores data in SQLite, and maintains the CodeGraph.
Both the desktop UI and the terminal‑based CLI (cowork) talk to the same native worker, ensuring a single source of truth for agents, providers, and jobs.
Getting started (quick‑start from the README)
- Prerequisites – Node ≥ 18, npm ≥ 9, .NET 11 SDK (Preview 7+ with Native AOT support). Clone with submodules because the CodeGraph side‑car is required.
git clone --recurse-submodules https://github.com/AIDotNet/OpenCowork.git cd OpenCowork - Install dependencies & run in development mode
npm install npm run dev # launches Electron with hot‑reload - Build for distribution – use the provided scripts (
npm run build:win,build:mac,build:linux). Pre‑built installers are also available on the GitHub Releases page. - CLI alternative – after a global npm install you can run the same worker from a terminal:
npm install -g @aidotnet/opencowork cowork # starts the TUI client cowork --doctor # diagnostics
All configuration, providers, agents, and skill definitions live under ~/.open-cowork/ and are shared between the desktop app and the CLI.
Typical use cases
- Autonomous coding – let an agent refactor, debug, and commit changes directly in the repository you trust.
- Scheduled operations – cron‑based agents monitor logs or system health and push alerts to Feishu, Discord, etc.
- Research & reporting – browse the web, scrape data, process CSV/Excel files, and generate documents.
- Remote administration – open an SSH terminal inside the app and run commands on another host without leaving the UI.
- Design & media pipelines – use the “Draw” node‑graph canvas and bundled extensions for product design, creative production, or video generation.
Documentation & community
- Official docs – https://open-cowork.dev
- In‑repo guides –
AGENTS.md(agent conventions),cli/README.md(CLI usage), architecture docs underdocs/architecture/. - Contributing – follow the
feat(scope): …commit style, runnpm run typecheckandnpm run lintbefore opening a PR. - Sponsors & thanks – the project lists a few individual sponsors and acknowledges RoutinAI (LLM gateway) and GeneralUpdate (auto‑update library).
License
Apache License 2.0 – free for commercial and non‑commercial use, with the usual patent‑grant and attribution requirements.
Bottom line – OpenCowork is a fully fledged, locally‑run multi‑agent platform that bridges large‑language‑model capabilities with the developer’s existing workflow, offering both a rich desktop UI and a terminal client while keeping all data on the user’s machine.
Related
- Project
- Project
- Project
- Project
- Project