Prototype customer-side CLI for RunLLM Lite investigations
Project description
RunLLM Lite CLI
Prototype customer-side CLI for RunLLM Lite investigations.
The CLI stores local configuration, uploads a copy of the configured repository to the Lite engine, keeps a WebSocket open for the investigation, and executes engine-requested local tool calls on the customer's laptop.
Local Development
cd src/runllm_lite_cli
uv sync --group dev
RUNLLM_LITE_ENV=dev uv run runllm
RUNLLM_LITE_ENV=dev uv run runllm ask "what is the status of pod pod-12345?"
On first use, runllm or runllm ask "..." starts a short onboarding flow:
- Uses production defaults for packaged/PyPI installs:
- Engine URL:
https://gateway.runllm.com - Auth URL:
https://cli.runllm.com
- Engine URL:
- Uses local dev defaults when
RUNLLM_LITE_ENV=dev:- Engine URL:
http://127.0.0.1:5099 - Auth URL:
http://localhost:5185
- Engine URL:
- Prompts for the API key from the auth UI and validates it with the engine.
- Prompts for the local repo path, defaulting to the current directory.
- Starts a non-blocking repo scan for supported integration keywords.
- Auto-detects installed tools such as
kubectlandgcloud, with sensible defaults for kubeconfig and Google Cloud project. - Prints repo scan results when ready, and offers matching supported tools such as Grafana if the repo references them.
You can override endpoints explicitly with RUNLLM_LITE_ENGINE_URL and
RUNLLM_LITE_AUTH_URL.
If Google Cloud observability is configured during first-run interactive onboarding, RunLLM starts a background proactive discovery task. It does not block setup. If it finishes before you type your first question, RunLLM surfaces the insight and lets you ask follow-up questions in the same session. If you type first, your question wins and the proactive result is discarded.
runllm configure remains the advanced path for overriding values. It validates
the engine URL and repo path and writes ~/.runllm-lite/config.json. Running it
again preserves tool configuration.
On first use, the CLI checks for ~/.config/runllm/credentials.json. If no
API key is cached, it prints the configured auth URL, asks you to sign in through
the Lite UI, validates the pasted key with the engine, and saves the key locally
with file permissions set to 0600.
To replace the cached API key explicitly:
uv run runllm configure --api-key
You can also pass the key directly with --api-key <key>, though entering it at
the prompt avoids putting the key in shell history.
Tool configuration is separate:
runllm tools configure-kubectldetectskubectland validates kubeconfig.runllm tools configure-gcp-observabilitydetectsgcloudand optionally stores a default project. The CLI advertises curated actions for Cloud Logging, Error Reporting, Cloud Monitoring metrics, and alert policies while still executing everything through localgcloudcredentials.runllm tools configure-grafanastores Grafana MCP settings. Ifmcp-grafanais not onPATH, the CLI downloads the latest Linux x86_64 GitHub release to~/.runllm-lite/bin/mcp-grafanaunless--no-auto-installis set.runllm tools listshows the configured tools that will be advertised to the engine for a session.
runllm ask "..." runs a one-shot question. Running runllm with no
subcommand starts an interactive session: the CLI uploads the repo once, keeps
the WebSocket open, and lets you type follow-up questions until /exit.
For Git repositories, the CLI uses git archive HEAD so the upload matches the
committed files a fresh clone would contain. This excludes untracked files,
ignored generated outputs, local virtualenvs, node_modules, and other working
tree noise. If git archive is unavailable, the CLI falls back to a filtered
filesystem archive that skips common generated or heavy paths.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file runllm-0.2.2.tar.gz.
File metadata
- Download URL: runllm-0.2.2.tar.gz
- Upload date:
- Size: 27.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8bee9c5c176961ba14e2b337d69f872839b454cbb8724636a46913df8ac8adc6
|
|
| MD5 |
ede7facf14dedc9c33cd2ba0e48db769
|
|
| BLAKE2b-256 |
0b28d642a8c936c51c124bb10648abd86a5604a6e0aa5a9ffadc078fed0423d0
|
File details
Details for the file runllm-0.2.2-py3-none-any.whl.
File metadata
- Download URL: runllm-0.2.2-py3-none-any.whl
- Upload date:
- Size: 32.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5ec62b6ebb6d34aab249b7d6be565edfcf77ed41626e6a7ae5591f1e7fcd2ec7
|
|
| MD5 |
40f17ae3edca728cc8170cf831e28d46
|
|
| BLAKE2b-256 |
fdf96714561332d1483a51aef8ee735e23825342f61b44cc67fc16c2cf7ea7fe
|