Alloy Runtime CLI - Command-line interface for Alloy Runtime server
Project description
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"
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.
Configuration
The CLI reads configuration in this order:
- CLI flags such as
--api-urland--api-key - Environment variables like
ALLOY_RUNTIME_API_URL - 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. 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.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file alloy_runtime_cli-0.2.89.tar.gz.
File metadata
- Download URL: alloy_runtime_cli-0.2.89.tar.gz
- Upload date:
- Size: 303.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21b7cf869b363b7bafc225a54df54bdd4643a2a7add1385c26c8bb68d32c0d5c
|
|
| MD5 |
4ef34716857fb2ccf2fe7fc682d21a95
|
|
| BLAKE2b-256 |
fcfede970e3c086313713cfc08990bccd07dcf57e3d789aadf153c87762fb5ce
|
Provenance
The following attestation bundles were made for alloy_runtime_cli-0.2.89.tar.gz:
Publisher:
publish-python-packages.yml on alloy-runtime/alloy-runtime
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
alloy_runtime_cli-0.2.89.tar.gz -
Subject digest:
21b7cf869b363b7bafc225a54df54bdd4643a2a7add1385c26c8bb68d32c0d5c - Sigstore transparency entry: 1438182153
- Sigstore integration time:
-
Permalink:
alloy-runtime/alloy-runtime@a5441288f7750bbde22faa554c3c65cdc5f56dc1 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/alloy-runtime
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python-packages.yml@a5441288f7750bbde22faa554c3c65cdc5f56dc1 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file alloy_runtime_cli-0.2.89-py3-none-any.whl.
File metadata
- Download URL: alloy_runtime_cli-0.2.89-py3-none-any.whl
- Upload date:
- Size: 492.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fa30f330ff2d61c1cd4693e4f964fd9327071e5558c889eafe5a7d8f27858cfb
|
|
| MD5 |
713c7dc2cf010359347f23d148d6908a
|
|
| BLAKE2b-256 |
5b531a517c029b75ca5d8c72cb78a4980a554303fa6b30a782da6b7cf6b86f9c
|
Provenance
The following attestation bundles were made for alloy_runtime_cli-0.2.89-py3-none-any.whl:
Publisher:
publish-python-packages.yml on alloy-runtime/alloy-runtime
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
alloy_runtime_cli-0.2.89-py3-none-any.whl -
Subject digest:
fa30f330ff2d61c1cd4693e4f964fd9327071e5558c889eafe5a7d8f27858cfb - Sigstore transparency entry: 1438182183
- Sigstore integration time:
-
Permalink:
alloy-runtime/alloy-runtime@a5441288f7750bbde22faa554c3c65cdc5f56dc1 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/alloy-runtime
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python-packages.yml@a5441288f7750bbde22faa554c3c65cdc5f56dc1 -
Trigger Event:
workflow_dispatch
-
Statement type: