The open source infra for virtual desktop orchestration, tailored for computer agents
A computer agent operating a Cyberdesk virtual desktop from a user prompt
π Quick Start
TypeScript
npm install cyberdesk@0.2.1
import { createCyberdeskClient } from 'cyberdesk'; const cyberdesk = createCyberdeskClient({ apiKey: 'YOUR_API_KEY' }); const launchResult = await cyberdesk.launchDesktop({ body: { timeout_ms: 10000 } }); const desktopId = launchResult.id; // Take a screenshot const screenshot = await cyberdesk.executeComputerAction({ path: { id: desktopId }, body: { type: 'screenshot' } }); // Left click at (100, 150) await cyberdesk.executeComputerAction({ path: { id: desktopId }, body: { type: 'click_mouse', x: 100, y: 150, button: 'left' } });
Python
pip install cyberdesk==0.2.7
from cyberdesk import CyberdeskClient from cyberdesk.actions import click_mouse, screenshot, ClickMouseButton client = CyberdeskClient(api_key="YOUR_API_KEY") result = client.launch_desktop(timeout_ms=10000) desktop_id = result.id # Take a screenshot screenshot_action = screenshot() screenshot_result = client.execute_computer_action(desktop_id, screenshot_action) # Left click at (100, 150) click_action = click_mouse(x=100, y=150, button=ClickMouseButton.LEFT) client.execute_computer_action(desktop_id, click_action)
π For more details and advanced usage, see the Quickstart Guide and Official Documentation.
β¨ Features
π Fast Launch Spin up virtual desktops in seconds, ready for automation or remote use. |
π±οΈ Full Automation Control mouse, keyboard, and moreβperfect for computer agents. |
π₯οΈ Cloud Native Runs on AKS, or self-hosted on your own infrastructure. |
π Secure & Auditable Session logs, API keys, and enterprise-grade security. |
π§© Type-Safe SDKs Official Python & TypeScript SDKs with full type hints. |
π€ AI-Ready Tailor built for the next generation of computer use agents |
π Official Documentation
π οΈ Project Structure
/apps
- web: Landing page and dashboard (README)
- api: Developer-facing API (README)
- docs: Documentation site (README)
/services
- cyberdesk-operator: Kubernetes operator for managing Cyberdesk Custom Resources, and starting/stopping Kubevirt virtual machines (README)
- gateway: HTTP service that proxies requests to the Kubevirt API, and routes them to the correct virtual machine (README)
/sdks
/infrastructure
- terraform: AKS Cluster Setup (Terraform) (README)
- kubernetes: Kubernetes resources for the Cyberdesk operator
π€ Contributing
We welcome contributions!
- Join the Discord for discussion and support
- Get a personal 1-1 walkthrough of how to self host the project by contacting us on Discord
π£ Community & Support
- Discord for help and chat
- Good First Issues
- Open an Issue
π‘ Philosophy
At Cyberdesk our mission is to make building computer agents as easy as playing with legos. We believe in open, simple, and extensible tools for the new generation of developers: computer agent developers.
π License
Apache License 2.0. See LICENSE.
Made with β€οΈ by the Cyberdesk Team
