tai42-cli
The tai command-line client for operating a tai42 server over its HTTP API. It
ships the tai console script: thin, typed clients over the server's /api/*
surface — the same routes the Studio calls — for tools, presets, agents,
extensions, connectors, hooks, channels, storage, keys, scopes, roles,
configuration, and the rest of the operator surface. Human-readable tables by
default; raw JSON under --json for scripting. Typed package (py.typed).
Position in the ecosystem
TAI is an open-source runtime for MCP tools, agents, and workflows. tai42-cli
is the terminal client half of the tai command: it talks to a running server
over HTTP and depends only on the interface contract, so it installs and runs on
its own without the server package.
tai42-contract <-- tai42-cli
(interfaces) (the remote client)
Installing the server package adds its own local and runtime commands (serve,
db, doctor, catalog, openapi, backend, metrics, offline config/manifest
validation) to the same tai command through an entry-point group, so one binary
covers both remote and local operation when both are installed.
Install
Requires Python 3.13+. Install from PyPI:
uv add tai42-cli
Or as a standalone tool:
uv tool install tai42-cli
Usage
Point the client at a server and authenticate. The server URL resolves from the
--server flag, then TAI_SERVER_URL, then ~/.config/tai/config.toml, then a
local default. The API key resolves from --api-key-stdin, then TAI_API_KEY,
then the config file, then an interactive prompt (there is deliberately no
--api-key VALUE flag — a value on the command line leaks through ps and shell
history). The HTTP read window resolves from --timeout SECONDS, then
TAI_CLI_TIMEOUT_SECONDS, then a 120s default sized for fleet-broadcast config
writes; values must be positive and finite.
export TAI_SERVER_URL=https://your-server.example
export TAI_API_KEY=sk-...
tai tools list
tai tools list --json
tai config env get
tai version
Install shell completion:
tai completion install bash > /etc/bash_completion.d/tai
Development
uv venv --python 3.13
uv pip install --no-sources --editable ".[dev]"
uv run --no-sync ruff check .
uv run --no-sync ruff format --check .
uv run --no-sync pyright
uv run --no-sync pytest --cov --cov-report=term-missing
Documentation
The whole platform — concepts, guides, and the generated reference — lives in the unified documentation site:
- Layering & the contract/kit/cli/skeleton split: https://tai42.ai/concepts/layering
- Python SDK reference: https://tai42.ai/reference/python-sdk
License
Apache-2.0. See LICENSE and NOTICE.
Release files for tai42-cli 8.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 | |
|---|---|---|---|
| tai42_cli-8.0.0.tar.gz | 96.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tai42_cli-8.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 229.0 kB
Release files / tai42_cli-8.0.0.tar.gz
| Download URL | tai42_cli-8.0.0.tar.gz |
|---|---|
| Size | 96.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f4a022ba9491770f96fbec86276bbf263f3ded6c4434ce98f32bddfdc55a9984
|
|
BLAKE2b-256 checksum How to use checksums |
3add24d08f7af8c1f78e9a1da2c0a7b19c200ad58cb9bfcdf93e754bdeaff1de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / tai42_cli-8.0.0-py3-none-any.whl
| Download URL | tai42_cli-8.0.0-py3-none-any.whl |
|---|---|
| Size | 132.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
dd6bc3168450743ddc1a64c466bce38acefbcf3ddae0b620aef5cc920503fc38
|
|
BLAKE2b-256 checksum How to use checksums |
9b6540d6caff101892f240b9411f3123fb982570b58052486646f542423e5f79
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|