Skip to main content

A desktop for AI agents

Project description


AgentDesk

Desktops for AI agents   :computer:
Explore the docs »

View Demo · Report Bug · Request Feature


AgentDesk provides full-featured desktop environments which can be programatically controlled by AI agents. Spin them up locally or in the cloud.

▶ Built on agentd a runtime daemon which exposes a REST API for interacting with the desktop.

▶ Implements the DeviceBay Protocol.

Installation

pip install agentdesk

Quick Start

from agentdesk import Desktop

# Create a local VM
desktop = Desktop.local()

# Launch the UI for it
desktop.view(background=True)

# Open a browser to Google
desktop.open_url("https://google.com")

# Take actions on the desktop
desktop.move_mouse(500, 500)
desktop.click()
img = desktop.take_screenshot()

Usage

Create a local desktop

from agentdesk import Desktop

desktop = Desktop.local()
$ agentdesk create --provider qemu

*requires qemu

Create a remote desktop on GCE

desktop = Desktop.gce()
$ agentdesk create --provider gce

Create a remote desktop on EC2

desktop = Desktop.ec2()
$ agentdesk create --provider ec2

View the desktop in the UI

desktop.view()
$ agentdesk view old_mckinny

*requires docker

List desktops

Desktop.find()
$ agentdesk get

Delete a desktop

Desktop.delete("old_mckinny")
$ agentdesk delete old_mckinny

Use the desktop

desktop.open_url("https://google.com")

coords = desktop.mouse_coordinates()

desktop.move_mouse(500, 500)

desktop.click()

desktop.type_text("What kind of ducks are in Canada?")

desktop.press_key('Enter')

desktop.scroll()

img = desktop.take_screenshot()

Processors

Process images to make them more accessible to LMMs.

Grid

Add a coordinate grid on top of the image

from agentdesk.processors import GridProcessor

img = desktop.take_screenshot()

processor = GridProcessor()
grid_img = processor.process_b64(img)

Examples

Drawing Bot

See how to use a web-based drawing app with AgentDesk in our notebook.

GPT-4V

See how to use GPT-4V with AgentDesk in our notebook or agent.

Community

Come join us on Discord.

Developing

Please open an issue before creating a PR.

Changes to the VM happen in agentd.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agentdesk_dg-0.2.93.tar.gz (34.9 kB view details)

Uploaded Source

Built Distribution

agentdesk_dg-0.2.93-py3-none-any.whl (43.1 kB view details)

Uploaded Python 3

File details

Details for the file agentdesk_dg-0.2.93.tar.gz.

File metadata

  • Download URL: agentdesk_dg-0.2.93.tar.gz
  • Upload date:
  • Size: 34.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Darwin/23.6.0

File hashes

Hashes for agentdesk_dg-0.2.93.tar.gz
Algorithm Hash digest
SHA256 6934a3cb111de5fae3232ca96cc70d3abe3a0cee723cfb0312566802f2cd54e2
MD5 c1371b701405b6c371945c3e9c053b3b
BLAKE2b-256 b0e8edf6defc845a2be0abf21f94549656755d96067a8b9ff469ca4d54ea0456

See more details on using hashes here.

File details

Details for the file agentdesk_dg-0.2.93-py3-none-any.whl.

File metadata

  • Download URL: agentdesk_dg-0.2.93-py3-none-any.whl
  • Upload date:
  • Size: 43.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Darwin/23.6.0

File hashes

Hashes for agentdesk_dg-0.2.93-py3-none-any.whl
Algorithm Hash digest
SHA256 10755d581f27d4b2ce8e86a68c5234ac1fd4527381df0e84e00f21f3c76efe25
MD5 40e97c0c648b6fab9d5e2b6086bee6e2
BLAKE2b-256 beeb946faf61d07aef10e90ae4b3858bc195b6f2bf6aff7e066c9f484cf8ecf8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page