Skip to main content

tt — the Tenstorrent CLI

One command for everything Tenstorrent.

tt is the single entry point to the Tenstorrent software stack. It either implements a function natively or delegates to an existing tool (tt-smi, tt-installer, etc.) behind a stable interface.

[!IMPORTANT] This is beta software. Expect breaking changes often as we add features. We welcome your feedback to help us improve tt-cli. If you have an issue or a comment, please don't hesitate to let us know through the GitHub issues page.

Quick start

Install with uv (recommended):

uv tool install tenstorrent
tt --help

(uv tool update-shell will make sure the tt binary is available on your PATH)

If you don't have uv, install it first:

curl -LsSf https://astral.sh/uv/install.sh | sh

You can also install the CLI with any pip-compatible tool, such as pipx. We highly recommend placing tt-cli in an isolated venv so it can safely update itself. For other installation methods, see DEVELOPERS.md.

Telemetry

Telemetry is opt-in: nothing is collected or sent unless you say so. tt asks once, on first interactive run, and doesn't bother you about it on later runs.

If you opt in, tt records command names, exit codes, coarse OS facts, and argument values only when they match a known list (e.g. catalog model names). We never send free-form arguments, paths, or static IDs. Exactly what is collected, every switch that controls it, and how delivery works: TELEMETRY.md.

If you change your mind about telemetry, use tt config set telemetry.enabled true or false. If you previously enabled telemetry, setting it to false opts you out and deletes anything not yet uploaded.

Example commands

This is not an exhaustive list. For the full list of commands and options in each group, add --help, e.g. tt model --help.

Device info Functionality
tt device status Detected devices: board, temperature, power, clock (--json for JSON output)
tt device info [N…] Device metadata: PCI IDs, board id, firmware versions
tt device reset [N…] Reset devices
tt smi Hand this terminal to the interactive tt-smi TUI (tt device top also works)
Model serving Functionality
tt model list Models that run on this machine's detected hardware (--all for every device; --cached, --type, --hw filters; --community for tt-model-manager bundles)
tt model info NAME Model metadata: engines, per-device support/status, requirements, cache state
tt model pull NAME Download a catalog model's weights, a tt-model bundle, or any HuggingFace repo's weights (--bundle / --weights-only override detection; --offline)
tt serve NAME [-- ARGS…] Serve a model via tt-inference-server, or via tt-model-manager for a community bundle id
tt model stop NAME Stop a running model server (--profile to stop only one profile of a bundle)
Other Functionality
tt update [VERSION] Converge system software + tools onto the latest tested "golden" set (--dry-run to preview; --yes to skip the confirmation; --force to allow downgrades to golden; a tt-installer VERSION runs that release instead and implies --force)
tt config Open the config file in your editor; list/get/set/path for scripting, sync/reset to maintain the file
tt report issue Open a prefilled GitHub issue (repo picker, environment details auto-collected; --no-browser to just print the URL)
tt self update Upgrade tt itself where it owns its environment (--check to only look) — see Keeping tt up to date

Interactive clients with tt launch

tt serve gives you an OpenAI-compatible endpoint; tt launch points a client at it. tt discovers what is running by asking the server itself (GET /v1/models) and configures the client's endpoint for you.

tt launch list                         # what can I connect, and is it usable now?
tt serve Qwen3-32B --port 8000         # in another terminal
tt launch openwebui --web-port 3080    # pull and run its container, after you confirm
tt launch stop openwebui               # stop it, keeping its data

Configuration

Configuration is TOML at ~/.config/tenstorrent/config.toml (XDG-compliant). tt config opens it with explanatory comments; edits preserve comments. Prefer tt config set <key> <value> over hand-editing: it puts the key in the correct table.

Contributing

We welcome contributions! Please see CONTRIBUTING.md for details on:

  • Reporting bugs via GitHub Issues
  • Submitting pull requests
  • Code standards and SPDX header requirements
  • Our weekly PR review cadence

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for the overall license, except where specified.

For clarification on how the Apache 2.0 license applies to this project, including hardware and patent considerations, see LICENSE_understanding.txt.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tenstorrent-1.0.0.tar.gz (301.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tenstorrent-1.0.0-py3-none-any.whl (214.5 kB view details)

Uploaded Python 3

File details

Details for the file tenstorrent-1.0.0.tar.gz.

File metadata

  • Download URL: tenstorrent-1.0.0.tar.gz
  • Upload date:
  • Size: 301.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tenstorrent-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d80a4780383ea91a459740c2274f3ac99edc970509327683b64ecb60a8b5ac06
MD5 70f879adbd0b3d6ce5e72bc1759d6b49
BLAKE2b-256 7477d221eb53968dc8fba08facd3db46d9b0f9b75774a194d500395e6138618b

See more details on using hashes here.

Provenance

The following attestation bundles were made for tenstorrent-1.0.0.tar.gz:

Publisher: release.yml on tenstorrent/tt-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tenstorrent-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: tenstorrent-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 214.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tenstorrent-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7df372121e2193fb4d08eb78f84837ce45daf0b816e565fd93303081b498d462
MD5 424f1901b8add463e586ff9e134b4ea5
BLAKE2b-256 1795fd93af5593be8cfa864a791fdf156479d678e5facc12d440c172ad8853c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for tenstorrent-1.0.0-py3-none-any.whl:

Publisher: release.yml on tenstorrent/tt-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.0.1

2 files

This release

1.0.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page