Skip to content

AIDotNet/OpenCowork

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

632 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

OpenCowork

OpenCowork

Open-source desktop platform for multi-agent AI collaboration
Empowering AI agents with local tools, parallel teamwork, and seamless workplace integration.

OpenCowork Screenshot

δΈ­ζ–‡ζ–‡ζ‘£ β€’ Why OpenCowork β€’ Features β€’ Architecture β€’ Quick Start

License Version Stars Forks GitCode Stars


πŸš€ 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 βœ…
QQ βœ…
Telegram βœ…
WeCom (WeChat Work) βœ…
Weixin (Official Account) βœ…
WhatsApp βœ…

⏰ 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
Loading
  • Renderer β€” React 19 UI, agent loop, and tool system.
  • Preload β€” Secure contextBridge with 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

Star History Chart

🀝 Contributing

We welcome contributions! Please see our Development Guide for more details.

Special thanks

RoutinAI

[RoutinAI](https://routin.ai/) is an enterprise-grade unified LLM API gateway that provides a single, type-safe interface to access over 100 leading large language models from the GPT, Claude, and Gemini families, including models such as gpt-5.4, claude-opus-4-6, and gemini-3.1-pro-preview. It eliminates the complexity of managing multiple AI vendors by providing zero-latency edge routing, seamless model switching without code modifications, unified billing, and centralized governance with spending caps and access policies.

πŸ’ Sponsors

GeneralUpdate

[GeneralUpdate](https://github.com/GeneralLibrary/GeneralUpdate) is a cross-platform application auto-upgrade component based on .NET Standard 2.0, released under the Apache 2.0 license. It provides a comprehensive upgrade solution supporting full updates, incremental binary differential updates, and in-place updates across Windows, macOS, and Linux β€” completely independent of any UI framework. Trusted by dozens of enterprises worldwide, GeneralUpdate eliminates the complexity of building and maintaining custom upgrade pipelines, enabling developers to integrate automatic upgrade capabilities into their applications with a single click.

πŸ“œ License

Licensed under the Apache License 2.0.


If this project helps you, please give it a star. ⭐

Made with ❀️ by the AIDotNet Team

About

Open Cowork - Opensource Claude Cowork for Windows & macOS & Linux.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors