Skip to main content

Lightweight CLI client for registering bots with a DeskClaw exam server and triggering evaluation runs.

Project description

deskclaw-client

Lightweight CLI client for registering bots with a DeskClaw exam server and triggering evaluation runs.

Installation

pip install deskclaw-client

Quick Start

# Register your bot with the exam server
deskclaw-client register \
  --server http://EXAM_SERVER_IP:8420 \
  --name my-bot \
  --url http://localhost:8080/v1/chat/completions

# Trigger a test run (waits for completion by default)
deskclaw-client run --server http://EXAM_SERVER_IP:8420 --name my-bot

# Check run status
deskclaw-client status --server http://EXAM_SERVER_IP:8420 --name my-bot

# List all registered bots
deskclaw-client list --server http://EXAM_SERVER_IP:8420

Environment Variable

Set DESKCLAW_SERVER to avoid repeating the server URL:

export DESKCLAW_SERVER=http://EXAM_SERVER_IP:8420
deskclaw-client register --name my-bot --url http://localhost:8080/v1/chat/completions
deskclaw-client run --name my-bot

Commands

Command Description
register Register a bot with the exam server
run Trigger a test run for your bot
status Check the status of test runs
list List all registered bots
serve Start a local HTTP proxy for non-HTTP agents
bridges List available bridge types

Register Options

  • --server — Exam server URL (or DESKCLAW_SERVER env var)
  • --name — Unique bot name
  • --url — Your bot's HTTP API endpoint
  • --protocol — API protocol: openai (default), anthropic, custom
  • --capabilities — Comma-separated capabilities (e.g. text_generation,tool_use,multi_turn)
  • --auth — Bearer auth token (if your bot requires authentication)

Bridge Mode (Non-HTTP Agents)

If your agent doesn't expose an HTTP API (e.g. it uses WebSocket, Socket, or stdio), use serve to start a local HTTP proxy that bridges between the exam server and your agent's native protocol.

deskclaw-client serve \
  --server http://EXAM_SERVER_IP:8420 \
  --name my-openclaw \
  --bridge openclaw \
  --target ws://localhost:18789 \
  --port 9090 \
  --token <your-agent-token>

This single command will:

  1. Connect to your agent via its native protocol (WebSocket, etc.)
  2. Start a local OpenAI-compatible HTTP proxy on the specified port
  3. Auto-register the proxy URL with the exam server
  4. Wait for test requests from the exam server

Serve Options

  • --server — Exam server URL (or DESKCLAW_SERVER env var)
  • --name — Bot name to register
  • --bridge — Bridge type (e.g. openclaw)
  • --target — Agent native address (e.g. ws://localhost:18789)
  • --port — Local proxy port (default: 9090)
  • --host — Local proxy bind address (default: 0.0.0.0)
  • --token — Agent auth token (bridge-specific)
  • --capabilities — Comma-separated capabilities
  • -v / --verbose — Enable debug logging

Available Bridges

Bridge Transport Description
openclaw WebSocket OpenClaw agents via native WebSocket protocol

Run deskclaw-client bridges to list all available bridges.

Supported Protocols

  • OpenAI/v1/chat/completions compatible endpoints
  • Anthropic/v1/messages compatible endpoints
  • Custom — Any HTTP endpoint (configure via exam server)
  • Bridge — Non-HTTP agents via deskclaw-client serve

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deskclaw_client-0.2.2.tar.gz (12.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

deskclaw_client-0.2.2-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file deskclaw_client-0.2.2.tar.gz.

File metadata

  • Download URL: deskclaw_client-0.2.2.tar.gz
  • Upload date:
  • Size: 12.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for deskclaw_client-0.2.2.tar.gz
Algorithm Hash digest
SHA256 b33000b8682ae9c3d3e8c5bb26b17448fccf22c110f81a4a01a9791a00d4b989
MD5 fcad15923d67e5f0ec8226bc12dc95e2
BLAKE2b-256 9484fcbca8eda657d83fcc2ef0b5a59d0a324f84a2767a30253d200ac23abd83

See more details on using hashes here.

File details

Details for the file deskclaw_client-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for deskclaw_client-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9930b62ba46314578562acfbfee641506b696a8fab4521cc0c7b3fac094ef91e
MD5 08c86e40822727971ce49c67fc04f543
BLAKE2b-256 3bd9f7a8267f53a583680914dcf4d64c787fd2aa54565e2a592dcd83e6a971d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page