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.212-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41cb79dcb85a8448bd4a5215cd172e4e8b1b437df6c8a393b7b3d13a1ff4f752 |
|
MD5 | d425fc0aac3a2509fcdd837c477cc431 |
|
BLAKE2b-256 | 8bf92c33e896d44f82aeb370dccf5bbdae0e34cd4e6a68b99a1de98fa02ad665 |