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 7.0.1
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-7.0.1.tar.gz | 93.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tai42_cli-7.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 223.3 kB
Release files / tai42_cli-7.0.1.tar.gz
| Download URL | tai42_cli-7.0.1.tar.gz |
|---|---|
| Size | 93.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4c61cb36d50bb81f21a4bd835bf49fde04fa86b8e0d538400e906287d780b182
|
|
BLAKE2b-256 checksum How to use checksums |
2b05235732bee7cf6a46b8537e8a098df0931eb6888945fc93007f7ef7c86a7e
|
| 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-7.0.1-py3-none-any.whl
| Download URL | tai42_cli-7.0.1-py3-none-any.whl |
|---|---|
| Size | 129.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
56977c45b88f5e7b55e47c391ac0b5c608fdd06232b3e7001fe04e0d703a9f1e
|
|
BLAKE2b-256 checksum How to use checksums |
7904bd3e2112f1ab30c8934ae4ad38fa145b949294ea30bd1a9d2c2c2e63e711
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|