rathflow-cli
The RathFlow command line client. It talks to the RathFlow northbound REST API and covers sessions, memory, sandboxes, agents, assets, projects, billing and workflows.
Install
uv tool install rathflow-cli
# or
pipx install rathflow-cli
# or
pip install rathflow-cli
Requires Python 3.10+.
Quick start
# Log in with your email and password (the password prompt does not echo).
rathflow auth login -e you@example.com
# Who am I, what can I reach.
rathflow whoami
# Pick a project scope; every later command carries it.
rathflow project list
rathflow project use <project_id>
# Read something.
rathflow session list
The default gateway is https://rathflow.lynwe.com. Point it elsewhere with
--base-url, RATHFLOW_BASE_URL, or rathflow config set base_url <url>.
Commands
| Group | What it covers |
|---|---|
auth |
log in / out, register, API keys (keys, key-create, key-revoke) |
config |
local profiles (list, show, set, use) |
org |
organizations, invitations |
project |
projects, scope switching, project config, share links |
session |
sessions, blocks, events |
memory |
memory entries, search, commit tasks |
sandbox |
sandboxes, exec, code, files, logs |
agent |
agent definitions, versions, prompts, runs |
asset |
assets, versions, credentials, publish |
billing |
subscription, usage, invoices |
workflow |
workflows |
admin |
platform administration (platform admins only) |
Two more entry points sit at the root:
rathflow whoami— identity, scope and reachable projects.rathflow api <Key>— call any endpoint directly;rathflow api --listprints the whole table. Streaming endpoints stream.
Every group has --help, e.g. rathflow session --help.
Authentication
rathflow auth login exchanges your email and password for a JWT, stored in the
CLI config file (mode 0600). The CLI sends it as a Bearer token and never
touches cookies, so it is unaffected by the browser CSRF rules.
For unattended use, issue a long-lived API key and pass it through the environment:
rathflow auth key-create # prints the key once, right here
export RATHFLOW_TOKEN=rf_... # or: rathflow config set token rf_...
Configuration
Precedence, highest first: command-line flag > environment variable > active
profile > built-in default. Profiles live in
~/.config/rathflow/config.json (override the directory with
RATHFLOW_CONFIG_DIR).
| Variable | Meaning |
|---|---|
RATHFLOW_BASE_URL |
Gateway address |
RATHFLOW_PROJECT |
Project scope |
RATHFLOW_TOKEN |
Bearer token / API key |
RATHFLOW_CONFIG_DIR |
Config directory |
Output
- Default: human-readable tables.
--json: one stable JSON document, for scripts.--quiet/-q: primary keys only.
Exit codes are stable: 0 success, and non-zero for usage errors, API errors and
remote command failures (a sandbox exec returns the remote exit code).
Proxies
The CLI respects the standard proxy variables. One caveat: httpx cannot use a
SOCKS proxy unless socksio is installed. If your environment sets
ALL_PROXY=socks://... (some Clash setups do), install the extra or the CLI
fails to start with Unknown scheme for proxy URL:
uv tool install 'rathflow-cli[socks]'
# or clear it for this command only
ALL_PROXY= rathflow whoami
Development
uv venv --python 3.12 .venv
uv pip install -e .
.venv/bin/rathflow --help
.venv/bin/python -m rathflow_cli.selftest
selftest checks that no command hard-codes a URL and, when the upstream
generated endpoint table is available (RATHFLOW_ENDPOINTS_TS), that
rathflow_cli/endpoints.py still matches it.
License
MIT — see LICENSE.
Metadata
Release files for rathflow-cli 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rathflow_cli-0.1.1.tar.gz | 41.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rathflow_cli-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 94.7 kB
Release files / rathflow_cli-0.1.1.tar.gz
| Download URL | rathflow_cli-0.1.1.tar.gz |
|---|---|
| Size | 41.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1b68e4081161870f99446909b6f12a7cdaa26f1ecc84b94020bf8f0156648478
|
|
BLAKE2b-256 checksum How to use checksums |
13e2b2ded5c4b8c04f0baccc22e758f814fd3e64702cd6cc368ef0b229e58548
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logRelease files / rathflow_cli-0.1.1-py3-none-any.whl
| Download URL | rathflow_cli-0.1.1-py3-none-any.whl |
|---|---|
| Size | 53.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
498f392289fa29a281d90dd7231c617c156352e6c507a2b0356fb05a5c06a8b6
|
|
BLAKE2b-256 checksum How to use checksums |
fd37b31368000a68e827134dcd795cd49e409542c1f9b18e0661784f0aac8a8c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency log