Command Line Interface for the YellowDog Platform
Overview
This is a set of Python CLI commands for interacting with the YellowDog Platform, also providing examples of usage of the YellowDog Python SDK.
The CLI is one command, yd. Most of what it does names the object acted on, then what to do to it — yd workrequirement submit, yd instance terminate — and yd <noun> --help lists a noun's verbs; yd help lists everything. The commands support:
- Work Requirements — submitting, cancelling, holding, starting, finishing and reprioritising them, and comparing them against Worker Pools, with
yd workrequirement(short formyd wr) - Task Groups and Tasks — reprioritising Task Groups and comparing them against Worker Pools with
yd taskgroup(yd tg), and aborting running Tasks withyd task - Worker Pools — provisioning, resizing and shutting them down, and refreshing or regenerating Configured Worker Pools' tokens, with
yd workerpool(yd wp) - Compute Requirements — instantiating, resizing, stopping, starting, reprovisioning, terminating and setting when they are automatically terminated with
yd computerequirement(yd cr) - Instances and Nodes — stopping, starting, restarting, deprovisioning and terminating individual Instances with
yd instance, and Worker Pool Nodes' Instances withyd node, which also shuts Nodes down and submits Node Actions to them - Resources — creating, updating and removing Compute Source Templates, Compute Requirement Templates, Keyrings, Credentials, Image Families, Namespaces, Allowances, Configured Worker Pools, Attribute Definitions, Namespace Policies, Groups, Applications and Users (update only) with
yd resource, from specification files or, for a resource of a few properties, on the command line (yd resource create --type Keyring --set name=team-keys), and showing or removing them by name - Allowances — boosting them with
yd allowance - Remote data stores — uploading, downloading, listing, deleting and copying files with
yd data - Cloud provider setup (AWS, Azure, GCP) with the
yd cloudwizardcommand - Cloud regions, instance types and prices, as the YellowDog Platform knows them, with
yd cloudinfo - Inspecting — listing YellowDog items with
yd list, filtered by name, status or provider, or within one Work Requirement, Task Group, Compute Requirement, Worker Pool or Node (yd task list --within <wr>), the largest listings stopping at 1000 items unless--limitsays otherwise, showing any entity's details by its YellowDog ID withyd show, following event streams withyd follow, and waiting for Work Requirements, Worker Pools or Compute Requirements to finish withyd wait; every noun also haslistandshowverbs for its own objects - Showing the details of the current Application with the
yd applicationcommand - Diagnosing the configuration, credentials and connectivity with the
yd doctorcommand - Reporting the processed values of variable substitutions with the
yd variablescommand - Completing commands, verbs, options and their values on Tab, in bash, zsh, fish and PowerShell, with the
yd completioncommand
Utility commands are also provided: yd completion, yd doctor, yd format-json, yd help, yd jsonnet2json, yd schema, and yd version. For a full list of commands run yd help.
The remote data store commands — the yd data verbs upload, download, delete, list and copy — use rclone, and do not require YellowDog credentials. An rclone binary already on your PATH is used in preference and is never modified; otherwise one is downloaded to a per-user cache directory the first time it's needed.
Installation
Python 3.10 or later is required.
pipx (recommended) — installs into an isolated environment and puts the commands on your PATH automatically:
pipx install yellowdog-cli
uv:
uv tool install yellowdog-cli
pip + virtual environment:
python3 -m venv yd-env
source yd-env/bin/activate # macOS / Linux; on Windows: yd-env\Scripts\activate
pip install -U yellowdog-cli
Optional Extras
Four optional extras are available:
| Extra | Provides |
|---|---|
jsonnet |
Jsonnet templating of resource specifications |
commander |
The yd commander desktop GUI, described below |
cloudwizard |
The cloud provider SDKs required by the yd cloudwizard command |
mcp |
The yd mcp MCP server, described below |
List the ones you need in square brackets at installation time, e.g. to install all four:
pipx install "yellowdog-cli[jsonnet,commander,cloudwizard,mcp]" # pipx
uv tool install "yellowdog-cli[jsonnet,commander,cloudwizard,mcp]" # uv
pip install -U "yellowdog-cli[jsonnet,commander,cloudwizard,mcp]" # pip
An extra can also be added to an existing pipx installation without reinstalling it, e.g. pipx inject yellowdog-cli jsonnet.
Commander GUI
yd commander is an optional cross-platform desktop GUI for driving the CLI, installed via the commander extra above:
pip install -U "yellowdog-cli[commander]"
yd commander
It works by running yd commands on your behalf and displaying their output. See the Commander documentation for details.
MCP Server
yd mcp is an optional MCP server exposing the yd commands as tools for an agent, installed via the mcp extra above:
pip install -U "yellowdog-cli[mcp]"
yd mcp config.toml
It runs yd commands on an agent's behalf, with --json, and returns their results. See the MCP server documentation for details.
Documentation
Please see the documentation in the GitHub repository for full details. This documentation should be read in conjunction with the main YellowDog Documentation.
Metadata
Release files for yellowdog-cli 15.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| yellowdog_cli-15.0.0.tar.gz | 1.2 MB | Without provenance | Details for yellowdog_cli-15.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| yellowdog_cli-15.0.0-py3-none-any.whl | Python 3 | none | any | Details for yellowdog_cli-15.0.0-py3-none-any.whl |
Total release size: 1.9 MB
Release files / yellowdog_cli-15.0.0.tar.gz
| Download URL | yellowdog_cli-15.0.0.tar.gz |
|---|---|
| Size | 1.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
907d88a949c390029adf1a63575bd35d8c5b4746e9f926ffad1988f6604be296
|
|
BLAKE2b-256 checksum How to use checksums |
3a7f50dd341a307669bae707631e7ca4b34775b072f40ea847aef1627f5171a6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.8
|
Release files / yellowdog_cli-15.0.0-py3-none-any.whl
| Download URL | yellowdog_cli-15.0.0-py3-none-any.whl |
|---|---|
| Size | 698.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d3873fca8f77e1dffd294b34cb2b49b724d986d1aaeccedd7a27fd870d1acd94
|
|
BLAKE2b-256 checksum How to use checksums |
51ba9f6a2130452ec4de6de235f501ace1bf16720df6260ed27016260f89c0c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.8
|
Security for yellowdog-cli 15.0.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.