rathflow-cli 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- rathflow_cli/__init__.py +6 -0
- rathflow_cli/__main__.py +6 -0
- rathflow_cli/cli.py +161 -0
- rathflow_cli/commands/__init__.py +0 -0
- rathflow_cli/commands/_common.py +78 -0
- rathflow_cli/commands/admin.py +83 -0
- rathflow_cli/commands/agent.py +288 -0
- rathflow_cli/commands/api_cmd.py +75 -0
- rathflow_cli/commands/asset.py +449 -0
- rathflow_cli/commands/auth_cmd.py +160 -0
- rathflow_cli/commands/billing.py +71 -0
- rathflow_cli/commands/config_cmd.py +98 -0
- rathflow_cli/commands/memory.py +275 -0
- rathflow_cli/commands/org.py +70 -0
- rathflow_cli/commands/project.py +223 -0
- rathflow_cli/commands/sandbox.py +282 -0
- rathflow_cli/commands/session.py +237 -0
- rathflow_cli/commands/workflow.py +81 -0
- rathflow_cli/config.py +69 -0
- rathflow_cli/endpoints.py +207 -0
- rathflow_cli/errors.py +70 -0
- rathflow_cli/http.py +294 -0
- rathflow_cli/output.py +95 -0
- rathflow_cli/selftest.py +120 -0
- rathflow_cli/state.py +129 -0
- rathflow_cli-0.1.0.dist-info/METADATA +164 -0
- rathflow_cli-0.1.0.dist-info/RECORD +31 -0
- rathflow_cli-0.1.0.dist-info/WHEEL +5 -0
- rathflow_cli-0.1.0.dist-info/entry_points.txt +2 -0
- rathflow_cli-0.1.0.dist-info/licenses/LICENSE +21 -0
- rathflow_cli-0.1.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: rathflow-cli
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: RathFlow command line client: sessions, memory, sandboxes, assets and billing over the RathFlow REST API.
|
|
5
|
+
Author: Rath Team
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Project-URL: Homepage, https://rathflow.lynwe.com/
|
|
8
|
+
Project-URL: Repository, https://github.com/Rath-Team/rathflow-cli
|
|
9
|
+
Project-URL: Issues, https://github.com/Rath-Team/rathflow-cli/issues
|
|
10
|
+
Project-URL: Changelog, https://github.com/Rath-Team/rathflow-cli/blob/main/CHANGELOG.md
|
|
11
|
+
Keywords: rathflow,cli,agent,sessions,memory,sandbox
|
|
12
|
+
Classifier: Development Status :: 3 - Alpha
|
|
13
|
+
Classifier: Environment :: Console
|
|
14
|
+
Classifier: Intended Audience :: Developers
|
|
15
|
+
Classifier: Operating System :: OS Independent
|
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Classifier: Topic :: Software Development
|
|
22
|
+
Classifier: Topic :: Utilities
|
|
23
|
+
Requires-Python: >=3.10
|
|
24
|
+
Description-Content-Type: text/markdown
|
|
25
|
+
License-File: LICENSE
|
|
26
|
+
Requires-Dist: httpx>=0.27
|
|
27
|
+
Requires-Dist: typer>=0.12
|
|
28
|
+
Provides-Extra: socks
|
|
29
|
+
Requires-Dist: httpx[socks]; extra == "socks"
|
|
30
|
+
Dynamic: license-file
|
|
31
|
+
|
|
32
|
+
# rathflow-cli
|
|
33
|
+
|
|
34
|
+
[](https://pypi.org/project/rathflow-cli/)
|
|
35
|
+
[](https://pypi.org/project/rathflow-cli/)
|
|
36
|
+
[](LICENSE)
|
|
37
|
+
|
|
38
|
+
The RathFlow command line client. It talks to the RathFlow northbound REST API and
|
|
39
|
+
covers sessions, memory, sandboxes, agents, assets, projects, billing and
|
|
40
|
+
workflows.
|
|
41
|
+
|
|
42
|
+
## Install
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
uv tool install rathflow-cli
|
|
46
|
+
# or
|
|
47
|
+
pipx install rathflow-cli
|
|
48
|
+
# or
|
|
49
|
+
pip install rathflow-cli
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Requires Python 3.10+.
|
|
53
|
+
|
|
54
|
+
## Quick start
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
# Log in with your email and password (the password prompt does not echo).
|
|
58
|
+
rathflow auth login -e you@example.com
|
|
59
|
+
|
|
60
|
+
# Who am I, what can I reach.
|
|
61
|
+
rathflow whoami
|
|
62
|
+
|
|
63
|
+
# Pick a project scope; every later command carries it.
|
|
64
|
+
rathflow project list
|
|
65
|
+
rathflow project use <project_id>
|
|
66
|
+
|
|
67
|
+
# Read something.
|
|
68
|
+
rathflow session list
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
The default gateway is `https://rathflow.lynwe.com`. Point it elsewhere with
|
|
72
|
+
`--base-url`, `RATHFLOW_BASE_URL`, or `rathflow config set base_url <url>`.
|
|
73
|
+
|
|
74
|
+
## Commands
|
|
75
|
+
|
|
76
|
+
| Group | What it covers |
|
|
77
|
+
| --- | --- |
|
|
78
|
+
| `auth` | log in / out, register, API keys (`keys`, `key-create`, `key-revoke`) |
|
|
79
|
+
| `config` | local profiles (`list`, `show`, `set`, `use`) |
|
|
80
|
+
| `org` | organizations, invitations |
|
|
81
|
+
| `project` | projects, scope switching, project config, share links |
|
|
82
|
+
| `session` | sessions, blocks, events |
|
|
83
|
+
| `memory` | memory entries, search, commit tasks |
|
|
84
|
+
| `sandbox` | sandboxes, exec, code, files, logs |
|
|
85
|
+
| `agent` | agent definitions, versions, prompts, runs |
|
|
86
|
+
| `asset` | assets, versions, credentials, publish |
|
|
87
|
+
| `billing` | subscription, usage, invoices |
|
|
88
|
+
| `workflow` | workflows |
|
|
89
|
+
| `admin` | platform administration (platform admins only) |
|
|
90
|
+
|
|
91
|
+
Two more entry points sit at the root:
|
|
92
|
+
|
|
93
|
+
- `rathflow whoami` — identity, scope and reachable projects.
|
|
94
|
+
- `rathflow api <Key>` — call any endpoint directly; `rathflow api --list` prints
|
|
95
|
+
the whole table. Streaming endpoints stream.
|
|
96
|
+
|
|
97
|
+
Every group has `--help`, e.g. `rathflow session --help`.
|
|
98
|
+
|
|
99
|
+
## Authentication
|
|
100
|
+
|
|
101
|
+
`rathflow auth login` exchanges your email and password for a JWT, stored in the
|
|
102
|
+
CLI config file (mode `0600`). The CLI sends it as a `Bearer` token and never
|
|
103
|
+
touches cookies, so it is unaffected by the browser CSRF rules.
|
|
104
|
+
|
|
105
|
+
For unattended use, issue a long-lived API key and pass it through the
|
|
106
|
+
environment:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
rathflow auth key-create # prints the key once, right here
|
|
110
|
+
export RATHFLOW_TOKEN=rf_... # or: rathflow config set token rf_...
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## Configuration
|
|
114
|
+
|
|
115
|
+
Precedence, highest first: command-line flag > environment variable > active
|
|
116
|
+
profile > built-in default. Profiles live in
|
|
117
|
+
`~/.config/rathflow/config.json` (override the directory with
|
|
118
|
+
`RATHFLOW_CONFIG_DIR`).
|
|
119
|
+
|
|
120
|
+
| Variable | Meaning |
|
|
121
|
+
| --- | --- |
|
|
122
|
+
| `RATHFLOW_BASE_URL` | Gateway address |
|
|
123
|
+
| `RATHFLOW_PROJECT` | Project scope |
|
|
124
|
+
| `RATHFLOW_TOKEN` | Bearer token / API key |
|
|
125
|
+
| `RATHFLOW_CONFIG_DIR` | Config directory |
|
|
126
|
+
|
|
127
|
+
## Output
|
|
128
|
+
|
|
129
|
+
- Default: human-readable tables.
|
|
130
|
+
- `--json`: one stable JSON document, for scripts.
|
|
131
|
+
- `--quiet` / `-q`: primary keys only.
|
|
132
|
+
|
|
133
|
+
Exit codes are stable: `0` success, and non-zero for usage errors, API errors and
|
|
134
|
+
remote command failures (a sandbox `exec` returns the remote exit code).
|
|
135
|
+
|
|
136
|
+
## Proxies
|
|
137
|
+
|
|
138
|
+
The CLI respects the standard proxy variables. One caveat: `httpx` cannot use a
|
|
139
|
+
SOCKS proxy unless `socksio` is installed. If your environment sets
|
|
140
|
+
`ALL_PROXY=socks://...` (some Clash setups do), install the extra or the CLI
|
|
141
|
+
fails to start with `Unknown scheme for proxy URL`:
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
uv tool install 'rathflow-cli[socks]'
|
|
145
|
+
# or clear it for this command only
|
|
146
|
+
ALL_PROXY= rathflow whoami
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
## Development
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
uv venv --python 3.12 .venv
|
|
153
|
+
uv pip install -e .
|
|
154
|
+
.venv/bin/rathflow --help
|
|
155
|
+
.venv/bin/python -m rathflow_cli.selftest
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
`selftest` checks that no command hard-codes a URL and, when the upstream
|
|
159
|
+
generated endpoint table is available (`RATHFLOW_ENDPOINTS_TS`), that
|
|
160
|
+
`rathflow_cli/endpoints.py` still matches it.
|
|
161
|
+
|
|
162
|
+
## License
|
|
163
|
+
|
|
164
|
+
MIT — see [LICENSE](LICENSE).
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
rathflow_cli/__init__.py,sha256=55P6YuPlmnlo_dbK9zoK54PV3pBVRajFUhRAQ969yLU,180
|
|
2
|
+
rathflow_cli/__main__.py,sha256=nKWVfSLFVrKAb_fsVeGdkIdVC6gCmaycpot-JNdnTq0,139
|
|
3
|
+
rathflow_cli/cli.py,sha256=uyOBqV4Vy0U1f662N1GuCWlkOLpOdrsyp4VNk-vFFug,5216
|
|
4
|
+
rathflow_cli/config.py,sha256=Tz-ccTXlIaRZqVAQ3JRglWn0gWMJW3ki1tXWdPfhZss,2155
|
|
5
|
+
rathflow_cli/endpoints.py,sha256=vsA9x2QETIfnE8dj5LFEaFC5mSYyJiUqxBEL7JsJy2Y,10470
|
|
6
|
+
rathflow_cli/errors.py,sha256=xfQMNdT1nrjzqZ_tega0D0HgHGZ1wXW9d7pLC7yD7Yw,2188
|
|
7
|
+
rathflow_cli/http.py,sha256=ykmzPKY6eRjb0A4otBTsujGheAJfX29uVB0Yh8t6idY,11129
|
|
8
|
+
rathflow_cli/output.py,sha256=1kfRl6L13AglUxS-WkRo5TzkPIeUKT2vBxRqdehFBu4,2881
|
|
9
|
+
rathflow_cli/selftest.py,sha256=jdQJr_3lMvX3QFJEtRIE8YveDXR9wnReNP7pPXW3EGM,4748
|
|
10
|
+
rathflow_cli/state.py,sha256=W3NhsL0rqHozeR3Xjiy58tdE7wk2oUQdDQELEcam9yc,4470
|
|
11
|
+
rathflow_cli/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
12
|
+
rathflow_cli/commands/_common.py,sha256=cpvFpeXUZY8HfBRqdE1tIwZG_T-85SguX_1nGk0zO_s,2624
|
|
13
|
+
rathflow_cli/commands/admin.py,sha256=oVkxrbijtAkz8IA6fH2tZHpKxvO5yDRZeu00UhK2LEE,2560
|
|
14
|
+
rathflow_cli/commands/agent.py,sha256=beQ1_4WvlHM6gvsbZpXZYhVTjSwK9LDtDlC2kS3oTnE,9186
|
|
15
|
+
rathflow_cli/commands/api_cmd.py,sha256=dxvnxXAjRLhjbZbT1-wg2w0eSl7KvPhmB3OK46dVz5Y,3060
|
|
16
|
+
rathflow_cli/commands/asset.py,sha256=mRTFDXuO6KayMS_XlV10njWctWojinrP72dy19Lgr0M,14654
|
|
17
|
+
rathflow_cli/commands/auth_cmd.py,sha256=aIhbQ_8KZrmfhAMeWZzNXmxFDjCOFZNMzuaPEWqaUj4,5831
|
|
18
|
+
rathflow_cli/commands/billing.py,sha256=ra8JGIvyAGjmuFVH_R7CPOEOak2Kh7tdfsBNbbxC2IY,2177
|
|
19
|
+
rathflow_cli/commands/config_cmd.py,sha256=lWMyFUbEaoSKlzvHNIV7qJu1VSzocwp2hdUfgJ1-7UA,3063
|
|
20
|
+
rathflow_cli/commands/memory.py,sha256=rM-diDlJwl_UpHtzWn7ZgNpaV_C0neUclkd_foRHmkU,9514
|
|
21
|
+
rathflow_cli/commands/org.py,sha256=Jgfs4Abl0KZBoJ0DUAPznsM0nhVQT0oOo4E3LCRTiK8,2236
|
|
22
|
+
rathflow_cli/commands/project.py,sha256=JeBxdN72MUxigSp07PkGBp3olKYHYuzo8MFb77ROJJA,8319
|
|
23
|
+
rathflow_cli/commands/sandbox.py,sha256=1sbE7wskhvSMd-QWNzKdzB7y0QRDgpaZIQKPTatdbZg,9271
|
|
24
|
+
rathflow_cli/commands/session.py,sha256=9N0OLLtmv_EDG8xdCG_RL3dXviwaFIWJYdWODHjf7rc,7536
|
|
25
|
+
rathflow_cli/commands/workflow.py,sha256=uzqmOlE8UzAty-kjm6enLivs72Ir5mS4rJqx_lveMyo,2364
|
|
26
|
+
rathflow_cli-0.1.0.dist-info/licenses/LICENSE,sha256=Qva3k8Gk9vn181cZczFGgOr6aUwMys0YrbkjmqfEW2c,1066
|
|
27
|
+
rathflow_cli-0.1.0.dist-info/METADATA,sha256=CTeQOa6HEV0HmQCqrskOx6H6ZbmP8QW7BrsfIFZqaqI,5366
|
|
28
|
+
rathflow_cli-0.1.0.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
|
|
29
|
+
rathflow_cli-0.1.0.dist-info/entry_points.txt,sha256=ydDlCW-3Kk8cZqMgz2t-1Jskupjvk75QjcZXoSZlTCs,51
|
|
30
|
+
rathflow_cli-0.1.0.dist-info/top_level.txt,sha256=Htb0EsJ96ExLB9_ZyKt3Q6mcvKucpEvGeRwYZzfmSdY,13
|
|
31
|
+
rathflow_cli-0.1.0.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Rath Team
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
rathflow_cli
|