Name | agentdesk JSON |
Version |
0.2.110
JSON |
| download |
home_page | None |
Summary | A desktop for AI agents |
upload_time | 2024-12-05 04:24:55 |
maintainer | None |
docs_url | None |
author | Patrick Barker |
requires_python | <4.0,>=3.10 |
license | MIT |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
<!-- PROJECT LOGO -->
<br />
<p align="center">
<!-- <a href="https://github.com/agentsea/skillpacks">
<img src="https://project-logo.png" alt="Logo" width="80">
</a> -->
<h1 align="center">AgentDesk</h1>
<p align="center">
Desktops for AI agents :computer:
<br />
<a href="https://docs.hub.agentsea.ai/agentdesk/intro"><strong>Explore the docs »</strong></a>
<br />
<br />
<a href="https://youtu.be/exoOUUwFRB8">View Demo</a>
·
<a href="https://github.com/agentsea/agentdesk/issues">Report Bug</a>
·
<a href="https://github.com/agentsea/agentdesk/issues">Request Feature</a>
</p>
<br>
</p>
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](https://github.com/agentsea/agentd) a runtime daemon which exposes a REST API for interacting with the desktop.
▶ Implements the [DeviceBay Protocol](https://github.com/agentsea/devicebay).
## Installation
```
pip install agentdesk
```
## Quick Start
```python
from agentdesk import Desktop
# Create a desktop container
desktop = Desktop.docker()
# 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
```python
from agentdesk import Desktop
desktop = Desktop.docker()
```
```bash
$ agentdesk create --provider docker
```
_\*requires [docker](https://www.docker.com/)_
### Create a remote desktop on Kubernetes
```python
desktop = Desktop.kube()
```
```bash
$ agentdesk create --provider kube
```
### Create a remote desktop on GCE
```python
desktop = Desktop.gce()
```
```bash
$ agentdesk create --provider gce
```
### Create a remote desktop on EC2
```python
desktop = Desktop.ec2()
```
```bash
$ agentdesk create --provider ec2
```
### View the desktop in the UI
```python
desktop.view()
```
```bash
$ agentdesk view old_mckinny
```
_\*requires docker_
### List desktops
```python
Desktop.find()
```
```bash
$ agentdesk get
```
### Delete a desktop
```python
Desktop.delete("old_mckinny")
```
```bash
$ agentdesk delete old_mckinny
```
### Use the desktop
```python
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
```python
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](./examples/drawing/demo.ipynb).
### GPT-4V
See how to use GPT-4V with AgentDesk in our [notebook](./examples/gpt4v/note.ipynb) or [agent](./examples/gpt4v/main.py).
## Community
Come join us on [Discord](https://discord.gg/hhaq7XYPS6).
## Developing
Please open an issue before creating a PR.
Changes to the VM happen in [agentd](https://github.com/agentsea/agentd).
Raw data
{
"_id": null,
"home_page": null,
"name": "agentdesk",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": null,
"author": "Patrick Barker",
"author_email": "patrickbarkerco@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/30/45/05de50af94209207c8c7bd5bd3d574b4f74e897ed6d3521df8b5dc55e913/agentdesk-0.2.110.tar.gz",
"platform": null,
"description": "<!-- PROJECT LOGO -->\n<br />\n<p align=\"center\">\n <!-- <a href=\"https://github.com/agentsea/skillpacks\">\n <img src=\"https://project-logo.png\" alt=\"Logo\" width=\"80\">\n </a> -->\n\n <h1 align=\"center\">AgentDesk</h1>\n\n <p align=\"center\">\n Desktops for AI agents :computer:\n <br />\n <a href=\"https://docs.hub.agentsea.ai/agentdesk/intro\"><strong>Explore the docs \u00bb</strong></a>\n <br />\n <br />\n <a href=\"https://youtu.be/exoOUUwFRB8\">View Demo</a>\n \u00b7\n <a href=\"https://github.com/agentsea/agentdesk/issues\">Report Bug</a>\n \u00b7\n <a href=\"https://github.com/agentsea/agentdesk/issues\">Request Feature</a>\n </p>\n <br>\n</p>\n\nAgentDesk provides full-featured desktop environments which can be programatically controlled by AI agents. \nSpin them up locally or in the cloud.\n\n\u25b6 Built on [agentd](https://github.com/agentsea/agentd) a runtime daemon which exposes a REST API for interacting with the desktop.\n\n\u25b6 Implements the [DeviceBay Protocol](https://github.com/agentsea/devicebay).\n\n## Installation\n\n```\npip install agentdesk\n```\n\n## Quick Start\n\n```python\nfrom agentdesk import Desktop\n\n# Create a desktop container\ndesktop = Desktop.docker()\n\n# Launch the UI for it\ndesktop.view(background=True)\n\n# Open a browser to Google\ndesktop.open_url(\"https://google.com\")\n\n# Take actions on the desktop\ndesktop.move_mouse(500, 500)\ndesktop.click()\nimg = desktop.take_screenshot()\n```\n\n## Usage\n\n### Create a local desktop\n\n```python\nfrom agentdesk import Desktop\n\ndesktop = Desktop.docker()\n```\n\n```bash\n$ agentdesk create --provider docker\n```\n\n_\\*requires [docker](https://www.docker.com/)_\n\n\n### Create a remote desktop on Kubernetes\n\n```python\ndesktop = Desktop.kube()\n```\n\n```bash\n$ agentdesk create --provider kube\n```\n\n### Create a remote desktop on GCE\n\n```python\ndesktop = Desktop.gce()\n```\n\n```bash\n$ agentdesk create --provider gce\n```\n\n### Create a remote desktop on EC2\n\n```python\ndesktop = Desktop.ec2()\n```\n\n```bash\n$ agentdesk create --provider ec2\n```\n\n### View the desktop in the UI\n\n```python\ndesktop.view()\n```\n\n```bash\n$ agentdesk view old_mckinny\n```\n\n_\\*requires docker_\n\n### List desktops\n\n```python\nDesktop.find()\n```\n\n```bash\n$ agentdesk get\n```\n\n### Delete a desktop\n\n```python\nDesktop.delete(\"old_mckinny\")\n```\n\n```bash\n$ agentdesk delete old_mckinny\n```\n\n### Use the desktop\n\n```python\ndesktop.open_url(\"https://google.com\")\n\ncoords = desktop.mouse_coordinates()\n\ndesktop.move_mouse(500, 500)\n\ndesktop.click()\n\ndesktop.type_text(\"What kind of ducks are in Canada?\")\n\ndesktop.press_key('Enter')\n\ndesktop.scroll()\n\nimg = desktop.take_screenshot()\n```\n\n### Processors\n\nProcess images to make them more accessible to LMMs.\n\n#### Grid\n\nAdd a coordinate grid on top of the image\n\n```python\nfrom agentdesk.processors import GridProcessor\n\nimg = desktop.take_screenshot()\n\nprocessor = GridProcessor()\ngrid_img = processor.process_b64(img)\n```\n\n## Examples\n\n### Drawing Bot\n\nSee how to use a web-based drawing app with AgentDesk in our [notebook](./examples/drawing/demo.ipynb).\n\n### GPT-4V\n\nSee how to use GPT-4V with AgentDesk in our [notebook](./examples/gpt4v/note.ipynb) or [agent](./examples/gpt4v/main.py).\n\n## Community\n\nCome join us on [Discord](https://discord.gg/hhaq7XYPS6).\n\n## Developing\n\nPlease open an issue before creating a PR.\n\nChanges to the VM happen in [agentd](https://github.com/agentsea/agentd).\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A desktop for AI agents",
"version": "0.2.110",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "347627b158c885aa99df605e9cd618880c121d493c47da7215a4f282cb1f24cf",
"md5": "8cb7f891b466b33b74d4d9ecc159ad14",
"sha256": "f4db09f640f0fcb7ef2e90cbb8eb895e558876b0a66cfc2056ea41667a7be473"
},
"downloads": -1,
"filename": "agentdesk-0.2.110-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8cb7f891b466b33b74d4d9ecc159ad14",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 66552,
"upload_time": "2024-12-05T04:24:53",
"upload_time_iso_8601": "2024-12-05T04:24:53.457004Z",
"url": "https://files.pythonhosted.org/packages/34/76/27b158c885aa99df605e9cd618880c121d493c47da7215a4f282cb1f24cf/agentdesk-0.2.110-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "304505de50af94209207c8c7bd5bd3d574b4f74e897ed6d3521df8b5dc55e913",
"md5": "bd1eaa6aeed8f3459c48da74f116fdea",
"sha256": "2def108647f68507643f84fe39c185b5b7961fce2ea9959bb3773070f99b2a15"
},
"downloads": -1,
"filename": "agentdesk-0.2.110.tar.gz",
"has_sig": false,
"md5_digest": "bd1eaa6aeed8f3459c48da74f116fdea",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 51978,
"upload_time": "2024-12-05T04:24:55",
"upload_time_iso_8601": "2024-12-05T04:24:55.360992Z",
"url": "https://files.pythonhosted.org/packages/30/45/05de50af94209207c8c7bd5bd3d574b4f74e897ed6d3521df8b5dc55e913/agentdesk-0.2.110.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-05 04:24:55",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "agentdesk"
}