SDK & CLI Overview
Install the Meshive Python package, authenticate with an API key, and read your account, workspaces, pods, storage, assets, GPUs, templates, serverless deployments, and host machines from the command line or from Python.
The meshive Python package ships a command-line tool and a Python SDK from a single install. Use the CLI to inspect your account, workspaces, pods, and host machines from a terminal; use the SDK to do the same programmatically — both synchronously and with asyncio.
What you can do today
Section titled “What you can do today”The read surface mirrors what you see in the console:
- Account —
me(who the key belongs to),api-keys(your keys, prefixes only),creditandcredit-history(balance, top-ups, refunds) - Workspaces —
workspaces,workspace(cost and resource summary),members - Pods —
pods/pod, pluspod-metricsfor live CPU/RAM/GPU/disk usage - Storage —
storages/storage(the volumes in a workspace) - Assets —
assets/asset(datasets, models, outputs and their versions) andasset-storage(managed usage, cost, credit status) - Catalog —
gpus(what you can rent right now, with prices) andtemplates/template - Serverless —
servings/servingandtasks/task - Host —
machines/machine,machine-metrics, andearningsfor the machines you contribute as a host
Every command has a Python SDK counterpart (client.list_gpus(), client.get_credit(), …) — see the SDK reference.
Install
Section titled “Install”Requires Python 3.10+. The only runtime dependency is httpx.
pip install meshiveVerify the install:
meshive --versionAuthentication
Section titled “Authentication”The SDK and CLI authenticate with a Meshive API Key (READ scope). Issue one from the console. Keys look like meshive_ followed by a 64-character token.
The recommended flow is meshive login, which verifies the key against the API and stores it locally so later commands need no flags:
-
Log in
Section titled “Log in”Terminal window meshive login # prompts for the key (hidden input)The key is verified before it is saved. On success it’s written to
~/.meshive/credentials.jsonwith file mode0600(owner read/write only). -
Use any command
Section titled “Use any command”Terminal window meshive me # works with no --api-key -
Log out when done
Section titled “Log out when done”Terminal window meshive logout # removes the saved credentials
Providing the key without logging in
Section titled “Providing the key without logging in”meshive login is optional. You can also pass the key per-command or via the environment. The resolution order is --api-key flag › MESHIVE_API_KEY env › meshive login file:
export MESHIVE_API_KEY=meshive_xxxxxxxxmeshive memeshive me --api-key meshive_xxxxxxxxRelocating the config directory
Section titled “Relocating the config directory”By default credentials live in ~/.meshive/ (directory mode 0700). Set MESHIVE_CONFIG_DIR to relocate it — useful for test isolation or juggling multiple accounts:
export MESHIVE_CONFIG_DIR=/path/to/alt-config- CLI Reference — every command, flag, and filter
- Python SDK — sync and async clients, models, and error handling