tmo-cli is the Tensormesh administrator CLI: a kubectl-familiar tool for
platform/SRE engineers to observe and operate LMCacheEngine resources (the
KV-cache controllers) and their per-GPU-node server pods.
It unifies two surfaces — the Kubernetes CRD (lmcacheengines.lmcache.lmcache.ai)
for engine lifecycle and status, and each server pod’s HTTP control API (reached
through the Kubernetes API-server proxy) for cache state, quotas, and diagnostics.
tmo-cli is the admin/SRE CLI talking directly to your Kubernetes cluster
(the data plane).Install
tmo-cli is distributed privately as part of the gated Tensormesh product — not through
public Homebrew or krew. It installs from the Tensormesh container registry (GHCR)
using the same access token as the operator chart and images: a token scoped to
artifact pull only, which grants no access to Tensormesh source code. If you don’t
have one, request it from the Tensormesh team — it’s the same token used in the
operator install guide.
One-line install (recommended)
/usr/local/bin (falling back
to ~/.local/bin if that isn’t writable — no sudo). To pin a version or change the
target, pass flags after -s --:
Manual install (air-gapped / CI)
Prefer to pull the artifact yourself? Authenticate to GHCR with your token and useoras:
Verify
How it connects
tmo-cli uses your existing kubeconfig — if kubectl works, tmo-cli works.
Resolution precedence: --kubeconfig → $KUBECONFIG → the tmo-cli config
default → ~/.kube/config.
node, cache, diag, quota) reach engine pods through the
Kubernetes API-server proxy by default — no extra network path, and RBAC on
pods/proxy gates them. Pass --direct to reach pod host IPs directly when
running inside the cluster.
Global flags
Exit codes
Stable and scriptable:Common tasks
See the fleet
Deploying or changing engines (owned by Helm)
Engine fleet membership and spec are owned by the Helm release —
tmo-cli
does not create, apply, edit, or delete engines. To add, change, or remove an
engine, edit the chart values and helm upgrade.Inspect servers and cache state
Operate (destructive — gated)
Diagnose and file a ticket
diag bundle collects the CR, recent events, and each server’s /conf,
/status, /threads, and /periodic-threads-health into a gzip tarball.
Secrets are redacted by default; /env is included only with --include-env
(and is still redacted). Attach the tarball to a support ticket.
Output and scripting
Tables are for humans;-o json (and -o yaml) is the automation contract,
wrapped in an envelope with tmoOutputVersion: v1:
--no-color or NO_COLOR=1.
Troubleshooting
tmo-cli does not phone home — there is no telemetry in the default build.
