Lemma CLI (lemma-terminal)
lemma is the command-line and terminal-UI for Lemma —
build and operate pods (a team's tables, files, functions, agents, workflows, schedules,
connectors, surfaces, and apps) from your terminal, and drop Lemma's agent skills straight into
your coding agent so it can build pods for you.
Install
uv tool install lemma-terminal
This installs the lemma command globally. (Don't have uv? See
astral.sh/uv.)
lemma --version
Quickstart
lemma auth login # authenticate against the default cloud server
lemma orgs select --save-default # pick your organization
lemma pods select --save-default # pick the pod to work in
lemma describe # inventory the selected pod
From there, the command surface mirrors the resource model — lemma <resource> <verb>:
lemma tables list
lemma files ls /knowledge
lemma agent chat # talk to the pod's default agent
lemma pod init my-pod # scaffold a new pod bundle on disk to import
Working across several pods at once (e.g. a coding agent per repo)? lemma app init
and lemma pods create --with-starter write committed .lemma.<server>.env files
that bind the folder per server, so every command from that tree targets the right
pod — no per-shell exports, no global switching. The same repo drives local and cloud:
lemma pods describe # local pod (from .lemma.local.env)
lemma --server lemma-cloud apps deploy # cloud pod (from .lemma.lemma-cloud.env)
lemma config show # shows the resolved server, pod, and files
Add --json to any command for machine-readable output, and --full to expand folded fields.
See SETUP.md for cloud/local server configuration, environment variables, project
.lemma.<server>.env files, and the Textual TUI (lemma tui).
Staying up to date
lemma update # upgrade to the newest release
lemma update --version 0.7.3 # or pin one
lemma doctor # what's installed, and whether it matches the server
After a command that talked to a server, the CLI checks — in the background,
after the command has already printed — whether that server is running a newer
release, and prints a one-line notice on stderr once per version. It asks the
server, not PyPI: one release publishes lemma-terminal, lemma-sdk and the API
together, so the server's API version is the released version, and the check
adds no host the command was not already talking to. Set LEMMA_UPDATE_CHECK=0
to turn it off.
lemma update reinstalls via uv tool install --force. Where that cannot work —
a source checkout, or an image that overlays its Python environment — it says so
and prints the command to run instead.
Install Lemma skills into your coding agent
Lemma ships agent skills (SKILL.md format) that teach a coding agent how to design, build, and
operate pods. lemma skills installs them into the coding agent you already use:
lemma skills list # what's bundled
lemma skills install # auto-detect Claude Code / Codex / OpenCode / Cursor and install
lemma skills install --target claude # or pick one explicitly
lemma skills install --all-skills # include workspace-runtime helpers too
install is an upsert — the CLI owns these skills, so an existing copy is overwritten to match
what this lemma-terminal bundles (re-run it after upgrading to refresh them; identical copies report
unchanged). By default it installs every namespaced lemma-* product skill: pod building and
operation, widgets, app design and QA, research, data analysis, artifact authoring, evaluations, and
pod-skill creation. --all-skills additionally installs the environment-specific browser and
liteparse-documents helpers. Targets and their locations:
| Target | Location (--scope user) |
Tool |
|---|---|---|
claude |
~/.claude/skills/ |
Claude Code |
codex |
~/.agents/skills/ |
Codex CLI |
opencode |
~/.config/opencode/skills/ |
OpenCode |
cursor |
project only → .cursor/skills/ |
Cursor (no global skills dir) |
agents |
~/.agents/skills/ |
shared (Codex + OpenCode) |
all |
all of the above | — |
Use --scope project to install into the current directory (.claude/skills/, .agents/skills/,
.opencode/skills/, .cursor/skills/), or --dir PATH for an arbitrary location. Cursor is
project-scoped only — run lemma skills install --target cursor --scope project inside the repo
you're working in. Then restart your coding agent and ask it to build a pod.
Anonymous usage telemetry
A CLI built with an ingestion key compiled in reports which command group you ran, whether it succeeded, the CLI version, and your OS — nothing else. Never arguments, flag values, paths, pod or resource names, ids, or anything you typed at the prompt; the command name is matched against a fixed list of groups and dropped if it is not one of them.
It says so on the first command that reports, and turning it off is permanent:
lemma telemetry # what this installation is (or is not) sending
lemma telemetry off # stop; LEMMA_TELEMETRY=0 does the same per-invocation
Builds without a key compiled in — every locally built and self-hosted CLI — send nothing, and no flag turns that into reporting.
How it fits together
lemma-sdk— the Python client used by functions and automation.lemma-terminal(this package) — the human- and agent-facing CLI and TUI; pod-scoped workflows are first-class.lemma-stack— installs and manages the local Lemma stack (separate tool).
License
Apache-2.0
Metadata
Release files for lemma-terminal 0.8.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 | |
|---|---|---|---|
| lemma_terminal-0.8.0.tar.gz | 564.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lemma_terminal-0.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.1 MB
Release files / lemma_terminal-0.8.0.tar.gz
| Download URL | lemma_terminal-0.8.0.tar.gz |
|---|---|
| Size | 564.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e022353d4f616a63b97c88402d4f7d95437347f5cb05afd7860c1f391ef2c71e
|
|
BLAKE2b-256 checksum How to use checksums |
4f1123e1cdc8ad792774fe2fed29627ecca2d32cd158c8cbb374db9e59cbfb28
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / lemma_terminal-0.8.0-py3-none-any.whl
| Download URL | lemma_terminal-0.8.0-py3-none-any.whl |
|---|---|
| Size | 516.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cd60e0f93f84b32d1b8b6e470de131eb63613080b980029f552ad7e32f901dc6
|
|
BLAKE2b-256 checksum How to use checksums |
71cfa1fd5ee63c798be0abbde3f6bcd3d3aedc1f689c669be772e9150aab516e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|