Skip to main content

Sidekick Agent Runtime

Portable agent execution engine for Sidekick. Runs on user machines (laptops, VMs, self-hosted runners) and communicates with a Sidekick backend via HTTP and WebSocket.

Installation

pip install sidekick-agent-runtime

Quick Start

sidekick serve --url https://sidekick.example.com --token <your-runner-token>

Or using environment variables:

export SIDEKICK_URL=https://sidekick.example.com
export RUNNER_TOKEN=<your-runner-token>
sidekick serve

Configuration

Flag Env Var Default Description
--url SIDEKICK_URL http://localhost:8000 Sidekick backend URL
--token RUNNER_TOKEN (required) Runner authentication token
--name RUNNER_NAME hostname Display name for this runner
--workspace RUNNER_WORKSPACE ~/.sidekick/<name>/workspace Override working directory
--log-level LOG_LEVEL INFO Logging level (DEBUG, INFO, WARNING, ERROR)
--allow-insecure SIDEKICK_ALLOW_INSECURE false Allow unencrypted HTTP to non-localhost backends
--allow-env-passthrough SIDEKICK_ALLOW_ENV_PASSTHROUGH false Pass all server-provided env vars to CLI tools

Note: The --url flag defaults to http://localhost:8000 for local development. In production, always set this to your Sidekick instance URL (e.g. https://sidekick.example.com).

How It Works

The agent runtime connects to your Sidekick instance and executes agent turns:

  1. Connects via WebSocket for real-time notifications
  2. Receives turn assignments from Sidekick
  3. Calls LLM through Sidekick's proxy (SSE streaming)
  4. Executes tools locally (shell commands, file I/O) or remotely (via Sidekick)
  5. Reports results back to Sidekick

Local Tools

The runtime can execute these tools directly on the host machine:

  • RunCommand — Execute shell commands
  • ReadFile — Read file contents
  • WriteFile — Write files
  • ListFiles — List directory contents
  • CLI Tools — Execute Python-based CLI tools defined in Sidekick

Requirements

  • Python 3.11+
  • A running Sidekick backend instance
  • Network access from the runner to the Sidekick backend (HTTP + WebSocket)
  • A runner token (generated in Sidekick's admin UI)

Security Considerations

The agent runtime executes commands on behalf of the connected Sidekick backend. Only connect to Sidekick instances you trust.

Key security features:

  • HTTPS enforced by default — Connections to non-localhost backends over plain HTTP are blocked. Use --allow-insecure to override (not recommended).
  • Sensitive env-var stripping — Environment variables containing credentials, proxy settings, and path-injection vectors are stripped from CLI tool subprocesses by default. Use --allow-env-passthrough to override.
  • Atomic credential writes — Token cache (~/.sidekick/credentials.json) is written atomically with 0600 permissions.
  • Token verification — After browser-based authentication, the received token is verified against the backend before caching.

See SECURITY.md for the full trust model and vulnerability reporting instructions.

Compatibility

Agent Runtime Sidekick Backend
0.1.x >= 0.1.0

The runtime communicates via the /api/runtime/v1 API. Breaking changes to this API will be reflected in the compatibility table above.

License

MIT

Metadata

Release files for sidekick-agent-cli 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sidekick-agent-cli 0.4.0
File Size Uploaded Provenance Actions
sidekick_agent_cli-0.4.0.tar.gz 95.4 kB Without provenance Details for sidekick_agent_cli-0.4.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for sidekick-agent-cli 0.4.0
File Interpreter ABI Platform Actions
sidekick_agent_cli-0.4.0-py3-none-any.whl Python 3 none any Details for sidekick_agent_cli-0.4.0-py3-none-any.whl

Total release size: 171.2 kB

Release files / sidekick_agent_cli-0.4.0.tar.gz

Download URL sidekick_agent_cli-0.4.0.tar.gz
Size 95.4 kB
Tags Source
SHA-256 checksum
How to use checksums
997fb5cba1e6f9346cecdf78cd4619f8e88450698991d6b468a9348cce0e2bd6
BLAKE2b-256 checksum
How to use checksums
cc59040b1a60704dec739551f7b96609ea9573bffe2a170e63236681944d316f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.21

Release files / sidekick_agent_cli-0.4.0-py3-none-any.whl

Download URL sidekick_agent_cli-0.4.0-py3-none-any.whl
Size 75.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b77752178354d0467a437038b63cad04b47f6bd6709ad8d979281f91567f1ff6
BLAKE2b-256 checksum
How to use checksums
05334e86c75eb9b3608be84f4fe07ddfdec33fd3db0bb1def483a9a1390c3626
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.21

Security for sidekick-agent-cli 0.4.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page