Skip to content

Open Cowork - Opensource Claude Cowork for Windows & macOS.

License

Notifications You must be signed in to change notification settings

OpenCoworkAI/open-cowork

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

133 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Open Cowork Logo

πŸš€ Open Cowork: Your Personal AI Agent Desktop App

β€’ Open Source Claude Cowork β€’ One-Click Install

δΈ­ζ–‡ζ–‡ζ‘£ β€’ Features β€’ Demo β€’ Downloads β€’ Quick Start β€’ Skills Library

Platform License Node.js


πŸ“– Introduction

Open Cowork is an open-source implementation of Claude Cowork, with one-click installers for Windows and macOSβ€”no coding required.

It provides a sandboxed workspace where AI can manage files, generate professional outputs (PPTX, DOCX, XLSX, etc.) through our built-in Skills system, and connect to desktop apps via MCP (browser, Notion, etc.) for better collaboration.

Warning

Disclaimer: Open Cowork is an AI collaboration tool. Please exercise caution with its operations, especially when authorizing file modifications or deletions. We support VM-based sandbox isolation, but some operations may still carry risks.


✨ Key Features

  • One-Click Install, Ready to Use: Pre-built installers for Windows and macOS, no environment setup neededβ€”just download and start using.
  • Flexible Model Support: Supports Claude, OpenAI-compatible APIs, and Chinese models like GLM, MiniMax, Kimi. Use your OpenRouter, Anthropic, or other API keys with flexible configuration. More models coming soon!
  • Smart File Management: Read, write, and organize files within your workspace.
  • Skills System: Built-in workflows for PPTX, DOCX, PDF, XLSX generation and processing. Supports custom skill creation and deletion.
  • MCP External Service Support: Integrate browser, Notion, custom apps and more through MCP Connectors to extend AI capabilities.
  • Multimodal Input: Drag & drop files and images directly into the chat input for seamless multimodal interaction.
  • Real-time Trace: Watch AI reasoning and tool execution in the Trace Panel.
  • Secure Workspace: All operations confined to your chosen workspace folder.
  • VM-Level Isolation: WSL2 (Windows) and Lima (macOS) VM isolationβ€”all commands execute in an isolated VM to protect your host system.
  • UI Enhancements: Beautiful and flexible UI design, system language switching, comprehensive MCP/Skills/Tools call display.

🎬 Demo

See Open Cowork in action:

1. Folder Organization & Cleanup πŸ“‚

document_organization.mp4

2. Generate PPT from Files πŸ“Š

ppt_generation.mov

3. Generate XLSX Spreadsheets πŸ“‰

xlsx_generation.mov

πŸ“¦ Installation

Option 1: Download Installer (Recommended)

Get the latest version from our Releases Page.

Platform File Type
Windows .exe
macOS (Apple Silicon) .dmg

Option 2: Build from Source

For developers who want to contribute or modify the codebase:

git clone https://github.com/OpenCoworkAI/open-cowork.git
cd open-cowork
npm install
npm run rebuild
npm run dev

To build the installer locally: npm run build

Security Configuration: πŸ”’ Sandbox Support

Open Cowork provides multi-level sandbox protection to keep your system safe:

Level Platform Technology Description
Basic All Path Guard File operations restricted to workspace folder
Enhanced Windows WSL2 Commands execute in isolated Linux VM
Enhanced macOS Lima Commands execute in isolated Linux VM
  • Windows (WSL2): When WSL2 is detected, all Bash commands are automatically routed to a Linux VM. The workspace is synced bidirectionally.
  • macOS (Lima): When Lima is installed (brew install lima), commands run in an Ubuntu VM with /Users mounted.
  • Fallback: If no VM is available, commands run natively with path-based restrictions.

Setup (Optional, Recommended)

  • Windows: WSL2 is auto-detected if installed. Install WSL2

  • macOS: Lima is auto-detected if installed. Install command:

brew install lima
# Open Cowork will automatically create and manage a 'claude-sandbox' VM

πŸš€ Quick Start Guide

1. Get an API Key

You need an API key to power the agent. We support OpenRouter, Anthropic, and various cost-effective Chinese Models.

Provider Get Key / Coding Plan Base URL (Required) Recommended Model
OpenRouter OpenRouter https://openrouter.ai/api claude-4-5-sonnet
Anthropic Anthropic Console (Default) claude-4-5-sonnet
Zhipu AI (GLM) GLM Coding Plan (⚑️Chinese Deal) https://open.bigmodel.cn/api/anthropic glm-4.7, glm-4.6
MiniMax MiniMax Coding Plan https://api.minimaxi.com/anthropic minimax-m2
Kimi Kimi Coding Plan https://api.kimi.com/coding/ kimi-k2

2. Configure

  1. Open the app and click the βš™οΈ Settings icon in the bottom left.
  2. Paste your API Key.
  3. Crucial: Set the Base URL according to the table above (especially for Zhipu/MiniMax, etc.).
  4. Enter the Model name you want to use.

3. Start Coworking

  1. Select a Workspace: Choose a folder where Claude is allowed to work.
  2. Enter a Prompt:

    "Read the financial_report.csv in this folder and create a PowerPoint summary with 5 slides."

πŸ“ Important Notes

  1. macOS Installation: If you see a security warning when opening the app, go to System Settings > Privacy & Security and click Open Anyway. If it is still blocked, run:
sudo xattr -rd com.apple.quarantine "/Applications/Open Cowork.app"
  1. Network Access: For tools like WebSearch, you may need to enable "Virtual Network Interface" (TUN Mode) in your proxy settings to ensure connectivity.
  2. Notion Connector: Besides setting the integration token, you also need to add connections in a root page. See https://www.notion.com/help/add-and-manage-connections-with-the-api for more details.

🧰 Skills Library

Open Cowork ships with built-in skills under .claude/skills/, and supports user-added or custom skills, including:

  • pptx for PowerPoint generation
  • docx for Word document processing
  • pdf for PDF handling and forms
  • xlsx for Excel spreadsheet support
  • skill-creator for creating custom skills

πŸ—οΈ Architecture

open-cowork/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ main/                    # Electron Main Process (Node.js)
β”‚   β”‚   β”œβ”€β”€ index.ts             # Main entry point
β”‚   β”‚   β”œβ”€β”€ claude/              # Agent SDK & Runner
β”‚   β”‚   β”‚   └── agent-runner.ts  # AI agent execution logic
β”‚   β”‚   β”œβ”€β”€ config/              # Configuration management
β”‚   β”‚   β”‚   └── config-store.ts  # Persistent settings storage
β”‚   β”‚   β”œβ”€β”€ db/                  # Database layer
β”‚   β”‚   β”‚   └── database.ts      # SQLite/data persistence
β”‚   β”‚   β”œβ”€β”€ ipc/                 # IPC handlers
β”‚   β”‚   β”œβ”€β”€ memory/              # Memory management
β”‚   β”‚   β”‚   └── memory-manager.ts
β”‚   β”‚   β”œβ”€β”€ sandbox/             # Security & Path Resolution
β”‚   β”‚   β”‚   └── path-resolver.ts # Sandboxed file access
β”‚   β”‚   β”œβ”€β”€ session/             # Session management
β”‚   β”‚   β”‚   └── session-manager.ts
β”‚   β”‚   β”œβ”€β”€ skills/              # Skill Loader & Manager
β”‚   β”‚   β”‚   └── skills-manager.ts
β”‚   β”‚   └── tools/               # Tool execution
β”‚   β”‚       └── tool-executor.ts # Tool call handling
β”‚   β”œβ”€β”€ preload/                 # Electron preload scripts
β”‚   β”‚   └── index.ts             # Context bridge setup
β”‚   └── renderer/                # Frontend UI (React + Tailwind)
β”‚       β”œβ”€β”€ App.tsx              # Root component
β”‚       β”œβ”€β”€ main.tsx             # React entry point
β”‚       β”œβ”€β”€ components/          # UI Components
β”‚       β”‚   β”œβ”€β”€ ChatView.tsx     # Main chat interface
β”‚       β”‚   β”œβ”€β”€ ConfigModal.tsx  # Settings dialog
β”‚       β”‚   β”œβ”€β”€ ContextPanel.tsx # File context display
β”‚       β”‚   β”œβ”€β”€ MessageCard.tsx  # Chat message component
β”‚       β”‚   β”œβ”€β”€ PermissionDialog.tsx
β”‚       β”‚   β”œβ”€β”€ Sidebar.tsx      # Navigation sidebar
β”‚       β”‚   β”œβ”€β”€ Titlebar.tsx     # Custom window titlebar
β”‚       β”‚   β”œβ”€β”€ TracePanel.tsx   # AI reasoning trace
β”‚       β”‚   └── WelcomeView.tsx  # Onboarding screen
β”‚       β”œβ”€β”€ hooks/               # Custom React hooks
β”‚       β”‚   └── useIPC.ts        # IPC communication hook
β”‚       β”œβ”€β”€ store/               # State management
β”‚       β”‚   └── index.ts
β”‚       β”œβ”€β”€ styles/              # CSS styles
β”‚       β”‚   └── globals.css
β”‚       β”œβ”€β”€ types/               # TypeScript types
β”‚       β”‚   └── index.ts
β”‚       └── utils/               # Utility functions
β”œβ”€β”€ .claude/
β”‚   └── skills/                  # Default Skill Definitions
β”‚       β”œβ”€β”€ pptx/                # PowerPoint generation
β”‚       β”œβ”€β”€ docx/                # Word document processing
β”‚       β”œβ”€β”€ pdf/                 # PDF handling & forms
β”‚       β”œβ”€β”€ xlsx/                # Excel spreadsheet support
β”‚       └── skill-creator/       # Skill development toolkit
β”œβ”€β”€ resources/                   # Static Assets (icons, images)
β”œβ”€β”€ electron-builder.yml         # Build configuration
β”œβ”€β”€ vite.config.ts               # Vite bundler config
└── package.json                 # Dependencies & scripts

πŸ—ΊοΈ Roadmap

  • Core: Stable Windows & macOS Installers
  • Security: Full Filesystem Sandboxing
  • Skills: PPTX, DOCX, PDF, XLSX Support + Custom Skill Management
  • VM Sandbox: WSL2 (Windows) and Lima (macOS) isolation support
  • MCP Connectors: Custom connector support for external service integration
  • Rich Input: File upload and image input in chat
  • Multi-Model: OpenAI-compatible API support (iterating)
  • UI/UX: Enhanced interface with English/Chinese localization
  • Memory Optimization: Improved context management for longer sessions and cross-session memory.
  • New Features: Stay tuned!

πŸ› οΈ Contributing

We welcome contributions! Whether it's a new Skill, a UI fix, or a security improvement:

  1. Fork the repo.
  2. Create a branch (git checkout -b feature/NewSkill).
  3. Submit a PR.

πŸ’¬ Community

Join our WeChat group for support and discussion:

WeChat Group


πŸ“„ License

MIT Β© Open Cowork Team


Made with ❀️ by the Open Cowork Team with the help of opus4.5