This project has been archived by its maintainers, and is no longer receiving any updates.
Dojo SDK Client
Python client SDK for interacting with the Dojo API
Installation
uv add dojo-sdk-client
if you want to use our example agents:
uv add "dojo-sdk-client[agents]"
if you want to use our multi-turn environment with verifiers
uv add "dojo-sdk-client[multi_turn_env]"
if you want to use our browserbase engine:
uv add "dojo-sdk-client[browserbase]"
Quick Start
Basic Task Execution
from dojo_sdk_client import BaseDojoClient
from dojo_sdk_client.types import TaskStatus
client = BaseDojoClient(api_key="your-api-key")
# Create and start task
exec_id = await client.create_task(
task_id="tic-tac-toe/win-game",
state={"board": [[0]*3 for _ in range(3)]}
)
await client.start_task(exec_id)
status = await client.get_task_status(exec_id)
while status.status == TaskStatus.QUEUED:
await asyncio.sleep(1)
status = await client.get_task_status(exec_id)
# Submit action
action = {"type": "click", "x": 100, "y": 100}
await client.submit_action(exec_id, action, "Making move")
Agent Evaluation
from dojo_sdk_client import DojoEvalClient
from dojo_sdk_client.select_engine import select_engine
engine = select_engine(API_KEY)
eval_client = DojoEvalClient(agent=agent, engine=engine)
results = await eval_client.evaluate(tasks=["tic-tac-toe/win-game", "2048/get-256-tile"], num_runners=1)
Changing Engines
from dojo_sdk_client.engines.browserbase_engine import BrowserBaseEngine
engine = BrowserBaseEngine(
api_key="your-browserbase-api-key",
project_id="your-browserbase-project-id",
dojo_api_key="your-dojo-api-key"
)
eval_client = DojoEvalClient(agent=your_agent,engine=engine)
BrowserBase engine has a concurrency limit that can be controlled with the BROWSERBASE_CONCURRENT_LIMIT environment variable.
Clients
BaseDojoClient - Low-level HTTP client for direct API interactions
DojoEvalClient - High-level client for running automated evaluations
MultiTurnEnv - Multi-turn environment for running evaluations with Verifiers
Engines
DojoEngine - Default engine for running tasks using Dojo
BrowserBaseEngine - Engine for running tasks using BrowserBase
Documentation
Visit docs.trydojo.ai for complete documentation.
Metadata
Release files for dojo-sdk-client 0.1.37
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dojo_sdk_client-0.1.37.tar.gz | 54.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dojo_sdk_client-0.1.37-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 122.1 kB
Release files / dojo_sdk_client-0.1.37.tar.gz
| Download URL | dojo_sdk_client-0.1.37.tar.gz |
|---|---|
| Size | 54.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0a8a83751d46cc5e1755dda9d17939e218959f955b24b45d67492301c61aeb99
|
|
BLAKE2b-256 checksum How to use checksums |
6b607018f7ccbd49124f1f3433b8bd9cf5fa69dfea479dd405b43084b0d046ff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.15
|
Release files / dojo_sdk_client-0.1.37-py3-none-any.whl
| Download URL | dojo_sdk_client-0.1.37-py3-none-any.whl |
|---|---|
| Size | 67.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
20a558aaeac711c914a8608437bd6c5907f9856a52ca952c13354d06138a0ddc
|
|
BLAKE2b-256 checksum How to use checksums |
d433870f7c1f9c2a1d7027d9f6a920a4b151032d9e1c9b4c07da5feea17f68fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.15
|