Skip to main content

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)

Source distribution for lemma-terminal 0.8.0
File Size Uploaded
lemma_terminal-0.8.0.tar.gz 564.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for lemma-terminal 0.8.0
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

0.9.0

2 release files

This release

0.8.0 This release

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.0

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.1.0

2 release files

0.0.1

2 release 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