Skip to content

0xd219b/cocowork

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CocoWork Logo

CocoWork

An agent-agnostic desktop application for AI coding agents

FeaturesSupported AgentsInstallationDevelopmentArchitectureAcknowledgments


CocoWork is a native desktop application that provides a unified interface for communicating with AI coding agents via the Agent Client Protocol (ACP). Built with pure Rust and GPUI, it offers a fast, lightweight, and consistent experience across different AI agents.

Features

  • Agent Agnostic: Work with multiple AI coding agents through a single interface
  • Native Performance: Built with Rust for speed and efficiency
  • Modern UI: Beautiful, responsive interface powered by GPUI
  • Session Management: Persistent conversations with SQLite storage
  • File System Integration: Secure file access with permission management
  • MCP Support: Model Context Protocol server integration
  • Cross-Platform: Runs on macOS (Windows and Linux support planned)

Supported Agents

CocoWork supports any ACP-compatible agent, including:

Agent Status Notes
Claude Code Supported Via @zed-industries/claude-code-acp bridge
Gemini CLI Supported Uses --experimental-acp flag
Codex Supported Via codex-acp binary (auto-downloaded)
Goose Supported Uses --acp flag
Custom Agents Supported Any ACP-compatible agent

Installation

Prerequisites

  • Rust 1.77 or later
  • macOS 12.0 or later (for GPUI support)
  • Node.js (for Claude Code agent)

Building from Source

# Clone the repository
git clone https://github.com/0xd219b/cocowork.git
cd cocowork

# Build and run
cargo run --package cocowork-ui

# Or build a release version
cargo build --release

Installing Agents

Each agent needs to be installed separately:

# Claude Code (requires Node.js)
npm install -g @anthropic-ai/claude-code

# Gemini CLI
# Follow instructions at https://github.com/google-gemini/gemini-cli

# Codex - no manual installation needed!
# CocoWork automatically downloads the codex-acp binary from
# https://github.com/zed-industries/codex-acp
# Just set CODEX_API_KEY or OPEN_AI_API_KEY environment variable

Development

Commands

# Build all crates
cargo build

# Run the application
cargo run --package cocowork-ui

# Run tests
cargo test --workspace

# Run linter
cargo clippy --workspace

# Check compilation
cargo check --workspace

Project Structure

cocowork/
├── crates/
│   ├── cocowork-core/     # Core library (ACP, agents, storage)
│   └── cocowork-ui/       # GPUI desktop application
├── assets/
│   ├── icons/             # SVG icons
│   └── images/            # Logo and images
└── document/              # Design documents

Architecture

┌─────────────────────────────────────────────────────────────────┐
│                      cocowork-ui (GPUI)                         │
│  ├── window/          Main window + 3-panel layout              │
│  ├── components/      Reusable UI components                    │
│  ├── acp_integration  Bridge between GPUI and ACP               │
│  └── theme/           Colors, typography, layout constants      │
├─────────────────────────────────────────────────────────────────┤
│                      cocowork-core                              │
│  ├── acp/             ACP client, protocol, session manager     │
│  ├── agent/           Agent adapters and lifecycle              │
│  ├── sandbox/         File permissions, watcher                 │
│  ├── storage/         SQLite persistence                        │
│  └── types/           Shared type definitions                   │
└─────────────────────────────────────────────────────────────────┘

ACP Protocol Flow

initialize → session/new → session/prompt → streaming session/update → prompt_response

Acknowledgments

CocoWork would not be possible without the incredible work of the open-source community.

Special Thanks to Zed

We extend our deepest gratitude to the Zed team for their outstanding work on:

  • GPUI: The powerful, high-performance GPU-accelerated UI framework that powers CocoWork's interface
  • Architecture Patterns: Many of our UI components and patterns are inspired by Zed's elegant codebase
  • ACP Bridges: The @zed-industries/claude-code-acp package enables Claude Code integration, and codex-acp enables Codex integration

Zed is an exceptional code editor, and we highly recommend checking it out at zed.dev.

Other Acknowledgments

  • Anthropic for Claude and the Agent Client Protocol specification
  • The Rust community for the amazing ecosystem of crates

License

CocoWork is licensed under the GNU General Public License v3.0.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.


Made with Rust and GPUI

About

CocoWork is a native desktop application that provides a unified interface for communicating with AI coding agents via the Agent Client Protocol (ACP).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages