Skip to main content

alloy-runtime-cli

Terminal client for Alloy Runtime.

Install

pip install alloy-runtime-cli

For isolated user installs, pipx is also a good fit:

pipx install alloy-runtime-cli

Command

The installed command is alloy.

alloy --help
alloy --help-json
alloy --help-markdown
alloy --help-toon
alloy --format table pipelines list
alloy --format json agents list
alloy login
alloy credentials supported
alloy credentials supported --kind tools
alloy --api-url https://your-alloy-runtime-host ping
alloy api-keys create --scope read --scope update --scope use --description "automation key"

Inference providers are read live from the server model catalog (GET /api/v1/models/providers), so any synced provider is valid for alloy credentials create --type org_provider --provider <key>; --kind tools and --kind mappings work offline.

Use alloy --help-json when automation or agents need recursive machine-readable CLI help as JSON. Use alloy --help-markdown for the same help tree rendered as Markdown. Use alloy --help-toon for the same help tree rendered as TOON. For session-wide help rendering, set ALLOY_RUNTIME_HELP_FORMAT=json, ALLOY_RUNTIME_HELP_FORMAT=markdown, or ALLOY_RUNTIME_HELP_FORMAT=toon and run alloy --help.

For scoped create commands such as agents create, schemas create, tool-configs create, and templates create, the CLI now defaults omitted ownership scope to organization. Pass --scope user only when you want a personal resource.

Use alloy --format compact for the existing psql-style human-readable record view. Use alloy --format table for Rich table output in the non-TUI CLI. Use alloy --format json for automation-friendly machine-readable output.

Running alloy without a subcommand launches the Textual TUI. TUI chat uses the standard non-streaming generation path, so it works with agents that have tools configured. Responses appear once the full turn completes rather than token-by-token.

For live model-execution inspection, use:

alloy executions get <execution_id>
alloy executions get <execution_id> --watch
alloy executions get <execution_id> --full-output

alloy executions get uses a dedicated transcript view for human output: one metadata header followed by chronological reasoning, grouped tool-call/result, and assistant blocks. Tool inputs are always complete; tool outputs are compact by default, and --full-output expands them. RAG retrieval diagnostics are printed above rag_search tool output bodies, with failures highlighted red and degraded retrieval highlighted yellow. --watch repaints a live grouped snapshot while the execution is still running and waits indefinitely unless you pass --timeout <seconds>.

For piping-friendly access to the latest assistant response in a chat session, including structured responses emitted as formatted JSON, use:

alloy sessions last <session_id>
alloy sessions last <session_id> -o clipboard
alloy sessions last <session_id> -o file -O response.md

alloy generate status <execution_id> displays the session ID when one exists, so you can move from an execution to the session response without parsing a full transcript.

alloy ping is the authenticated connectivity check. It confirms who you are, which host you reached, and which server build answered the request.

The CLI pins toon-format from the upstream GitHub source because the PyPI stub release is not usable yet.

Template validation

Use alloy templates validate when you want to check local Jinja content against the server's template resolution and helper validation rules before saving anything.

alloy templates validate --file ./templates/email.jinja2 --var user.name=Alice
alloy templates validate --content "Hello {{ name }}" --var name=World

Use templates validate for local drafts and CI-style checks. Use templates create or templates update when you want to persist the template after it passes validation. The command prints validation details either way and exits non-zero when the template is not renderable with the supplied variables.

Pipeline hosted runtime updates

Use alloy pipelines update to change the stored sandbox defaults for future hosted pipeline attempts:

alloy pipelines update <pipeline_id> --memory-mb 4096
alloy pipelines update <pipeline_id> --memory-mb 4096 --cpu 2 --timeout-seconds 21600
alloy pipelines update <pipeline_id> --clear-hosted-runtime-config

Runtime flags are partial updates: omitted --memory-mb, --cpu, or --timeout-seconds values stay unchanged. --clear-hosted-runtime-config removes all stored hosted runtime overrides and cannot be combined with runtime value flags.

Cancel a pending or running hosted pipeline execution with:

alloy pipelines executions cancel <pipeline_id> <execution_id>
alloy pipelines executions cancel <pipeline_id> <execution_id> --wait --timeout 120

--wait polls Alloy's persisted execution status until it is terminal. Provider process termination remains a server-side best-effort operation.

Rerun a failed, timed-out, cancelled, or approval-waiting hosted execution with:

alloy pipelines executions rerun <pipeline_id> <execution_id>
alloy pipelines executions rerun <pipeline_id> <execution_id> --timeout 1800
alloy pipelines executions get <pipeline_id> <execution_id>
alloy pipelines executions get <pipeline_id> <execution_id> --watch
alloy pipelines executions get <pipeline_id> <execution_id> --watch --timeout 600

pipelines executions get --watch polls the aggregate pipeline live-state endpoint and renders a compact current-state view for active child generations. JSON output emits the raw live-state DTO. Regular pipelines executions get remains the durable detail surface for result data, stdout/stderr, failure context, and generation-step diagnostics.

rerun submits a new hosted attempt asynchronously and returns the queued execution state immediately. Poll get when you want the terminal result.

To regenerate exactly one terminal ctx.generate_text(step_id="...") child on the next rerun while preserving other completed step cache hits, reset that step first:

alloy pipelines executions reset-step <pipeline_id> <execution_id> --step-id draft
alloy pipelines executions rerun <pipeline_id> <execution_id>

reset-step is parent-scoped and server-owned. It preserves the child generation row, retires only the exact deterministic key for the requested step, and is idempotent if the step was already reset.

Configuration

The CLI reads configuration in this order:

  1. CLI flags such as --api-url and --api-key
  2. Environment variables like ALLOY_RUNTIME_API_URL
  3. Stored credentials in ~/.alloy-runtime/config

Use alloy login to save an API key locally, or set the environment variables when running on a VPS.

CLI release trigger: no functional changes.

Model options and header display

Agent create/update/get output displays complete default_model_options maps instead of compacting to a few common keys. On agents update, use --clear-default-model-options to clear persisted defaults to null, or --default-model-options '{}' to replace them with an empty object. Header defaults are displayed with redacted values because server read surfaces never return raw default_extra_headers. alloy models list shows the copyable canonical <provider>/<model> identity in the Model column.

Hard-cut API migration

CLI automation should use canonical --model <provider>/<model>, --model-options, and --extra-headers, and should parse the canonical model field from JSON output. Legacy fallback-chain and requested/actual model output assumptions are removed. See docs/generate/hardcut_migration.md.

Metadata

Release files for alloy-runtime-cli 0.2.124

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

Source distribution (sdist)

Source distribution for alloy-runtime-cli 0.2.124
File Size Uploaded
alloy_runtime_cli-0.2.124.tar.gz 312.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for alloy-runtime-cli 0.2.124
File Interpreter ABI Platform
alloy_runtime_cli-0.2.124-py3-none-any.whl Python 3 none any Details

Total release size: 816.8 kB

Release files / alloy_runtime_cli-0.2.124.tar.gz

Download URL alloy_runtime_cli-0.2.124.tar.gz
Size 312.6 kB
Tags Source
SHA-256 checksum
How to use checksums
c30dbaf07c57f7aaf4200c777386135ff6b07febc4e30f40f46d8b49327da19b
BLAKE2b-256 checksum
How to use checksums
e1cc341218dc57e701f8626ca407c8ef87336d00c39d33625d73aab94f3657dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / alloy_runtime_cli-0.2.124-py3-none-any.whl

Download URL alloy_runtime_cli-0.2.124-py3-none-any.whl
Size 504.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
84fba8e435b553717fa8d2784cd754a8da141ddcfea324b6e50e23ed57ee4b04
BLAKE2b-256 checksum
How to use checksums
7cbe626215bdeb2dca7f5bedde3060051f761095d6d6a7f74645f181c19cd515
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.124 This release

2 release files

0.2.80

2 release files

0.2.79

2 release files

0.2.78

2 release files

0.2.77

2 release files

0.2.76

2 release files

0.2.75

2 release files

0.2.74

2 release files

0.2.73

2 release files

0.2.72

2 release files

0.2.71

2 release files

0.2.70

2 release files

0.2.69

2 release files

0.2.68

2 release files

0.2.67

2 release files

0.2.66

2 release files

0.2.65

2 release files

0.2.64

2 release files

0.2.63

2 release files

0.2.62

2 release files

0.2.61

2 release files

0.2.60

2 release files

0.2.59

2 release files

0.2.58

2 release files

0.2.57

2 release files

0.2.56

2 release files

0.2.55

2 release files

0.2.54

2 release files

0.2.53

2 release files

0.2.44

2 release files

0.2.43

2 release files

0.2.42

2 release files

0.2.41

2 release files

0.2.40

2 release files

0.2.39

2 release files

0.2.38

2 release files

0.2.37

2 release files

0.2.36

2 release files

0.2.35

2 release files

0.2.34

2 release files

0.2.33

2 release files

0.2.32

2 release files

0.2.31

2 release files

0.2.30

2 release files

0.2.29

2 release files

0.2.28

2 release files

0.2.27

2 release files

0.2.26

2 release files

0.2.25

2 release files

0.2.24

2 release files

0.2.23

2 release files

0.2.22

2 release files

0.2.21

2 release files

0.2.20

2 release files

0.2.19

2 release files

0.2.18

2 release files

0.2.17

2 release files

0.2.16

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.13

2 release files

0.2.12

2 release files

0.2.11

2 release files

0.2.10

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

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