Open Computer Use is an open-source platform that gives AI agents real computer control through browser automation, terminal access, and desktop interaction. Built for developers who want to create truly autonomous AI workflows.
Unlike traditional AI assistants that only talk about tasks, Open Computer Use enables AI agents to actually perform them by:
- π Browsing the web like a human (search, click, fill forms, extract data)
- π» Running terminal commands and managing files
- π±οΈ Controlling desktop applications with full UI automation
- π€ Multi-agent orchestration that breaks down complex tasks
- π Streaming execution with real-time feedback
- π― 100% open-source and self-hostable
"Computer use" capabilities similar to Anthropic's Claude Computer Use, but fully open-source and extensible.
AI agent searching, navigating, and interacting with websites autonomously
Executing commands, managing files, and running complex workflows
Complex tasks broken down and executed by specialized agents
Human-in-the-loop control and intelligent collaboration
|
|
|
|
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Frontend (Next.js 15) β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β Chat UI β β Model β β VM β β
β β Components β β Selection β β Management β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Backend API (FastAPI) β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Multi-Agent Executor Service β β
β β βββββββββββββββ βββββββββββββββ βββββββββββββββ β β
β β β Planner ββ β Browser ββ β Terminal β β β
β β β Agent β β Agent β β Agent β β β
β β βββββββββββββββ βββββββββββββββ βββββββββββββββ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β WebSocket β β Database β β Billing β β
β β VM Control β β Service β β Service β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Docker VM (Ubuntu 22.04 + XFCE) β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Chrome Browser β Terminal β Desktop Apps β Tools β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β WebSocket Agent Server (Port 8080) β β
β β VNC Server (Port 5900) β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
- Node.js 20+ and npm
- Python 3.10+ and pip
- Docker and Docker Compose
- Supabase account (free tier works)
- API keys for AI providers (OpenAI, Anthropic, etc.)
git clone https://github.com/LLmHub-dev/open-computer-use.git
cd open-computer-use
- Go to Supabase and create a new project
- Wait for the project to finish setting up
- Go to Project Settings β API to get your keys
Execute the schema to create all required tables:
# Option A: Using Supabase Dashboard
# 1. Go to SQL Editor in your Supabase dashboard
# 2. Copy contents of supabase/schema.sql
# 3. Paste and run the SQL
# Option B: Using Supabase CLI (recommended)
npm install -g supabase
supabase login
supabase link --project-ref your-project-ref
supabase db push
Or manually run the schema file:
psql -h db.your-project.supabase.co -U postgres -d postgres -f supabase/schema.sql
This creates all necessary tables:
- π€ Users & Auth: users, user_preferences, user_keys
- π¬ Chat System: chats, messages, chat_participants, chat_attachments
- π€ AI Agents: machine_sessions, machine_usage, machine_ai_actions
- π³ Billing: user_credits, credit_transactions, stripe_customers, subscription_plans
- π Projects: projects, user_machines, machine_snapshots
# Frontend
cp .env.example .env
# Edit .env with your configuration
# Backend
cp backend/.env.example backend/.env
# Edit backend/.env with your configuration
Supabase (Required)
NEXT_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key-from-supabase-dashboard
SUPABASE_SERVICE_ROLE=your-service-role-key-from-supabase-dashboard
Security Keys (Required)
# Generate with: openssl rand -hex 32
ENCRYPTION_KEY=your-generated-32-byte-hex-string
CSRF_SECRET=your-generated-32-byte-hex-string
Google Search API (Required for web search)
GOOGLE_SEARCH_KEY=your-google-api-key
GOOGLE_SEARCH_CX=your-custom-search-engine-id
Get these from Google Cloud Console:
- Enable Custom Search API
- Create API key
- Create Custom Search Engine at programmablesearchengine.google.com
AI Provider Keys (Choose at least one)
# OpenAI
OPENAI_API_KEY=sk-...
# Anthropic
ANTHROPIC_API_KEY=sk-ant-...
# Azure OpenAI (Optional)
AZURE_OPENAI_ENDPOINT=https://your-endpoint.openai.azure.com/
AZURE_OPENAI_API_KEY=your-key
AZURE_OPENAI_DEPLOYMENT=your-deployment-name
AZURE_OPENAI_API_VERSION=2024-02-15-preview
Azure Container Instances (Optional - for cloud VM deployment)
AZURE_SUBSCRIPTION_ID=your-subscription-id
AZURE_RESOURCE_GROUP=your-resource-group
AZURE_TENANT_ID=your-tenant-id
AZURE_CLIENT_ID=your-client-id
AZURE_CLIENT_SECRET=your-client-secret
AZURE_CONTAINER_REGISTRY=your-registry.azurecr.io
AZURE_DESKTOP_IMAGE=your-registry.azurecr.io/ai-desktop:latest
Stripe (Optional - for billing)
STRIPE_API_KEY=sk_test_...
STRIPE_WEBHOOK_SECRET=whsec_...
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_...
# Frontend
npm install
# Backend
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
cd ..
Option A: Using Docker (Recommended)
# Start all services
docker-compose up --build
# Access the application
# Frontend: http://localhost:3000
# Backend: http://localhost:8001
Option B: Manual Start
# Terminal 1: Frontend
npm run dev
# Terminal 2: Backend
cd backend
python main.py
# Terminal 3: AI Desktop (if needed)
docker-compose -f docker-compose.ai-desktop.yml up --build
- Open http://localhost:3000
- Sign up / Log in with Supabase Auth
- Start a new chat
- Try a command: "Search for the latest AI news and summarize the top 3 articles"
- Watch your AI agent work! π
Connect your own API keys and switch between providers mid-conversation:
- β OpenAI (GPT-4, GPT-4 Turbo, GPT-3.5)
- β Anthropic (Claude 3.5 Sonnet, Claude 3 Opus)
- β Google (Gemini Pro, Gemini 1.5)
- β Azure OpenAI (Enterprise deployments)
- β xAI (Grok models)
- β Mistral AI (Mistral Large, Mixtral)
- β Perplexity (Online models)
- β OpenRouter (Access to 100+ models)
All API keys are encrypted and stored securely. You maintain full control over your AI costs and usage.
Watch your agents work in real-time with:
- π Task progress indicators
- π οΈ Tool call visualization
- πΈ Live screenshots from VM
- π¬ Streaming responses
- π Detailed execution logs
The AI automatically:
- Analyzes your request
- Breaks down into subtasks
- Assigns to specialized agents
- Executes with full context
- Reports detailed results
Each agent session runs in an isolated Docker container:
- π Sandboxed execution environment
- π Ephemeral containers (no data persistence)
- π Network isolation options
- π Resource limits and monitoring
|
|
|
|
|
|
- Framework: Next.js 15 (App Router, React 19)
- Language: TypeScript
- Styling: Tailwind CSS 4
- UI Components: Radix UI, shadcn/ui
- State Management: Zustand
- AI SDK: Vercel AI SDK
- Database: Supabase (Auth + Postgres)
- Payments: Stripe
- Framework: FastAPI (Python 3.10+)
- Async Runtime: asyncio, uvicorn
- WebSocket: websockets library
- AI Providers: openai, anthropic, google-generativeai
- Search: Google Custom Search API
- Caching: Redis (optional)
- Image Processing: Pillow, ImageMagick
- Containerization: Docker, Docker Compose
- VM Environment: Ubuntu 22.04 LTS + XFCE
- Browser: Google Chrome (with remote debugging)
- Automation: Selenium, Playwright, PyAutoGUI
- Cloud: Azure Container Instances (optional)
We love contributions! Here's how you can help:
Open an issue with:
- Clear description of the bug
- Steps to reproduce
- Expected vs actual behavior
- Screenshots or logs
- Check if it's already requested
- Open a new issue with the
enhancement
label - Describe your use case and proposed solution
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Make your changes
- Write tests if applicable
- Commit:
git commit -m 'Add amazing feature'
- Push:
git push origin feature/amazing-feature
- Open a Pull Request
Please read our Contributing Guide for detailed guidelines.
- π¬ Discord Community
- Multi-VM orchestration (parallel agents)
- Advanced workflow builder (visual programming)
- Marketplace for custom agents
- Windows and macOS VM support
- Mobile app (iOS/Android)
- Plugin system for custom tools
- Collaborative agent sessions
- Advanced analytics dashboard
- Enterprise SSO support
- Self-hosted cloud deployment guides
- Voice control integration
- Video understanding capabilities
- Agent memory and learning
- Multi-modal agent interactions
- Community agent templates
Vote on features: Feature Requests
Metric | Value |
---|---|
Average Task Completion | ~45 seconds |
Concurrent Sessions | 50+ (per server) |
Browser Navigation | ~2s per page |
Tool Call Latency | <500ms |
VM Startup Time | ~15 seconds |
Memory per Session | ~2GB |
Benchmarks measured on: 4 CPU cores, 8GB RAM, SSD storage
Open Computer Use gives AI agents significant autonomy. Please use responsibly:
- β Do: Automate repetitive tasks, research, testing, content creation
- β Don't: Violate terms of service, spam, scrape without permission
- π Security: Never share credentials, use isolated environments
- π Compliance: Follow data protection laws (GDPR, CCPA, etc.)
- π€ Ethics: Respect website robots.txt and rate limits
Read our Responsible Use Guidelines for more details.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Apache License 2.0
Copyright (c) 2025 Open Computer Use Contributors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Built with amazing open-source projects:
- Next.js - The React Framework
- FastAPI - Modern Python web framework
- Supabase - Open source Firebase alternative
- Vercel AI SDK - AI toolkit for TypeScript
- Radix UI - Unstyled, accessible components
- Anthropic - Inspiration from Claude Computer Use
- Docker - Containerization platform
Special thanks to all our contributors! π
- π¬ Discord: Join our community server
- π¦ Twitter: Follow @llmhub_dev
- π§ Email: prateek@llmhub.dev
- π Issues: GitHub Issues
- π‘ Discussions: GitHub Discussions
Made with β€οΈ by the Open Computer Use community