trycua/cua
c/ua (pronounced “koo-ah”) enables AI agents to control full operating systems in high-performance virtual containers with near-native speed on Apple Silicon.
🚀 Quick Start
Get started with a Computer-Use Agent UI and a VM with a single command:
|
|
This script will:
- Install Lume CLI for VM management (if needed)
- Pull the latest macOS CUA image (if needed)
- Set up Python environment and install/update required packages
- Launch the Computer-Use Agent UI
Supported Agent Loops
- UITARS-1.5 - Run locally on Apple Silicon with MLX, or use cloud providers
- OpenAI CUA - Use OpenAI’s Computer-Use Preview model
- Anthropic CUA - Use Anthropic’s Computer-Use capabilities
- OmniParser-v2.0 - Control UI with Set-of-Marks prompting using any vision model
System Requirements
- Mac with Apple Silicon (M1/M2/M3/M4 series)
- macOS 15 (Sequoia) or newer
- Disk space for VM images (30GB+ recommended)
💻 For Developers
Step 1: Install Lume CLI
|
|
Lume CLI manages high-performance macOS/Linux VMs with near-native speed on Apple Silicon.
Step 2: Pull the macOS CUA Image
|
|
The macOS CUA image contains the default Mac apps and the Computer Server for easy automation.
Step 3: Install Python SDK
|
|
Alternatively, see the Developer Guide for building from source.
Step 4: Use in Your Code
|
|
For ready-to-use examples, check out our Notebooks collection.
Lume CLI Reference
|
|
Lumier CLI Reference
For advanced container-like virtualization, check out Lumier - a Docker interface for macOS and Linux VMs.
|
|
Resources
- How to use the MCP Server with Claude Desktop or other MCP clients - One of the easiest ways to get started with C/ua
- How to use OpenAI Computer-Use, Anthropic, OmniParser, or UI-TARS for your Computer-Use Agent
- How to use Lume CLI for managing desktops
- Training Computer-Use Models: Collecting Human Trajectories with C/ua (Part 1)
- Build Your Own Operator on macOS (Part 1)
Modules
Module | Description | Installation |
---|---|---|
Lume | VM management for macOS/Linux using Apple’s Virtualization.Framework | curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/lume/scripts/install.sh | bash |
Lumier | Docker interface for macOS and Linux VMs | docker pull trycua/lumier:latest |
Computer | Interface for controlling virtual machines | pip install "cua-computer[all]" |
Agent | AI agent framework for automating tasks | pip install "cua-agent[all]" |
MCP Server | MCP server for using CUA with Claude Desktop | pip install cua-mcp-server |
SOM | Self-of-Mark library for Agent | pip install cua-som |
PyLume | Python bindings for Lume | pip install pylume |
Computer Server | Server component for Computer | pip install cua-computer-server |
Core | Core utilities | pip install cua-core |
Computer Interface Reference
For complete examples, see computer_examples.py or computer_nb.ipynb
|
|
ComputerAgent Reference
For complete examples, see agent_examples.py or agent_nb.ipynb
|
|
Demos
Check out these demos of the Computer-Use Agent in action:
MCP Server: Work with Claude Desktop and Tableau
AI-Gradio: Multi-app workflow with browser, VS Code and terminal
Notebook: Fix GitHub issue in Cursor
Community
Join our Discord community to discuss ideas, get assistance, or share your demos!
License
Cua is open-sourced under the MIT License - see the LICENSE file for details.
Microsoft’s OmniParser, which is used in this project, is licensed under the Creative Commons Attribution 4.0 International License (CC-BY-4.0) - see the OmniParser LICENSE file for details.
Contributing
We welcome contributions to CUA! Please refer to our Contributing Guidelines for details.
Trademarks
Apple, macOS, and Apple Silicon are trademarks of Apple Inc. Ubuntu and Canonical are registered trademarks of Canonical Ltd. Microsoft is a registered trademark of Microsoft Corporation. This project is not affiliated with, endorsed by, or sponsored by Apple Inc., Canonical Ltd., or Microsoft Corporation.
Stargazers
Thank you to all our supporters!