Skip to main content

Overview

These are the basic steps to getting up and running:
  1. Install surfkit
  2. Create an agent instance
  3. Create a device
  4. Launch your agent to solve a task

Prerequisites

  • Docker
  • Python >= 3.10
  • MacOS or Linux
  • Poetry
If you want to create a desktop using Docker, that is all you need. To create a desktop with other providers:
If you are using Docker Desktop on MacOS, please update the settings: go to Settings | Advanced and make sure that the checkbox Allow the default Docker socket to be used (requires password) is checked. Save the settings, apply and restart.

Install Surfkit

Run an Agent

Clone Robbie Gen 2 repository
Install dependencies
Create a new agent
List running agents
Agents will prompt you for any keys they need. In order to skip this and automatically add local keys
View all agent logs
Follow logs

Create a Device

Now that we’ve installed our agent, we need to give it a device to use. The fastest way to get up and running is to use Docker, but the most scalable is to create devices in GCP or AWS. To create an Ubuntu desktop for our agent to use, select one of the following options ▼
Requirements
  • Docker installed
  • At least 16GB of RAM
You can also skip the provider flag, because docker is the default provider:
Requirements
  • QEMU installed (macOS, linux)
  • At least 16GB of RAM
Requirements
  • gcloud installed
  • Logged in to an account with create permissions for GCE*
* Read this for more details on how to configure GCE to create desktop VMs
Requirements
* Read this for more details on how to configure AWS to create desktop VMs
List running devices

Create a Tracker

Before solving a task, we have the choice to create a tracker, which is a task server that tracks tasks for us in a Docker container.

Solve a task

Use the agent to solve a task on the device
If you don’t create tracker explicitly before launching an agent, which you pass to the solve command via the --tracker flag, surfkit will ask if you want to create a tracker automatically.

What’s next

Now that you have a feel for the basics, you can move on to more advanced topics, like learning about all the tools in the surfkit or creating your own agent.

Create an Agent

Create your own agent

Learn more

Learn more about the tools