A toolkit for building AI agents that use devices
Project description
Surfkit
A toolkit for building AI agents that use devices
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Installation
pip install surfkit
Usage
Building Agents
Initialize a new project
surfkit new [NAME]
Build a docker container for the agent
surfkit build
Running Agents
Create an agent locally
surfkit create agent --name foo
Create an agent on kubernetes
surfkit create agent --runtime kube
List running agents
surfkit list agents
Get details about a specific agent
surfkit get agent --name foo
Fetch logs for a specific agent
surfkit logs --name foo
Delete an agent
surfkit delete agent --name foo
Managing Devices
Create a device
surfkit create device --type desktop --provicer gce --name bar
List devices
surfkit list devices
View device in UI
surfkit view --name bar
Delete a device
surfkit delete device --name bar
Tracking Tasks
Create a tracker
surfkit create tracker
List trackers
surfkit list trackers
Delete a tracker
surfkit delete tracker -n foo
Solving Tasks
Solve a task with an existing setup
surfkit solve --description "search for common french ducks" --agent foo --device bar
Solve a task creating the agent ad hoc
surfkit solve --description "search for alpaca sweaters" \
--device bar --agent-file ./agent.yaml
Solve a task and kill the agent post-execution
surfkit solve --description "search for the meaning of life" \
--device bar --agent-file ./agent.yaml --kill
List tasks
surfkit list tasks
Publishing Agents
Login to the hub
surfkit login
Publish the agent
surfkit publish
List published agent types
surfkit list types
Run a published agent
surfkit create agent --type SurfPizza --runtime kube
Developing
Add the following function to your ~/.zshrc
(or similar)
function sk() {
local project_dir="/path/to/surfkit/repo"
local venv_dir="$project_dir/.venv"
local ssh_auth_sock="$SSH_AUTH_SOCK"
local ssh_agent_pid="$SSH_AGENT_PID"
export SSH_AUTH_SOCK="$ssh_auth_sock"
export SSH_AGENT_PID="$ssh_agent_pid"
# Add the Poetry environment's bin directory to the PATH
export PATH="$venv_dir/bin:$PATH"
# Execute the surfkit.cli.main module using python -m
surfkit "$@"
}
Replacing /path/to/surfkit/repo
with the absolute path to your local repo.
Then calling sk
will execute the working code in your repo from any location.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for surfkit-0.1.208-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6b0b31d0c709ad8b0dfa453b179491b845c4173c34319f7f52919df9c747c9e |
|
MD5 | 69f6911a7976ac18ccfc36b13df1eb78 |
|
BLAKE2b-256 | 997d0ad3dba0c096514524ae3fa078a840fb385af2db88b0e5cd0f5e6b5c19ee |