@keeroklab/cli 0.1.0 → 0.1.1
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.
- package/README.md +67 -0
- package/package.json +5 -2
package/README.md
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# @keeroklab/cli
|
|
2
|
+
|
|
3
|
+
CLI wrapper for **Keerok Lab** — live Claude Code supervision for training sessions.
|
|
4
|
+
|
|
5
|
+
Students connect to a supervised session where the instructor can monitor terminals in real-time, send messages, and manage API budgets.
|
|
6
|
+
|
|
7
|
+
## Quick Start
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npx @keeroklab/cli connect <token> --server https://keerok.tech
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Your instructor will provide the `<token>` via email or the session page.
|
|
14
|
+
|
|
15
|
+
## Requirements
|
|
16
|
+
|
|
17
|
+
- **Node.js 18+** — [Download](https://nodejs.org)
|
|
18
|
+
- A terminal (macOS Terminal, iTerm2, Windows Terminal, etc.)
|
|
19
|
+
|
|
20
|
+
## What happens when you connect
|
|
21
|
+
|
|
22
|
+
1. Your token is validated against the server
|
|
23
|
+
2. A secure WebSocket connection is established
|
|
24
|
+
3. `claude` (Claude Code CLI) is launched in your terminal
|
|
25
|
+
4. Your terminal output is streamed to the instructor's dashboard (read-only)
|
|
26
|
+
|
|
27
|
+
## Options
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
Usage: keerok-lab connect <token> [options]
|
|
31
|
+
|
|
32
|
+
Arguments:
|
|
33
|
+
token Connection token provided by the instructor
|
|
34
|
+
|
|
35
|
+
Options:
|
|
36
|
+
-s, --server <url> Server URL (default: "https://keerok.tech")
|
|
37
|
+
-c, --command <cmd> Command to run (default: "claude")
|
|
38
|
+
-h, --help Display help
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Security
|
|
42
|
+
|
|
43
|
+
- Your API key is **encrypted (AES-256/Fernet)** and never stored in plain text
|
|
44
|
+
- The key is only active during the session and **revoked automatically** when it ends
|
|
45
|
+
- The instructor sees your terminal in **read-only** mode (no write access)
|
|
46
|
+
- No personal data is kept after the session ends
|
|
47
|
+
|
|
48
|
+
## How It Works
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
Student terminal Keerok Server Instructor dashboard
|
|
52
|
+
│ │ │
|
|
53
|
+
├── validate token ──────────► │ │
|
|
54
|
+
│◄── session config ───────── │ │
|
|
55
|
+
│ │ │
|
|
56
|
+
├══ WebSocket ═══════════════► │ ◄═══════════════ WebSocket ══┤
|
|
57
|
+
│ │ │
|
|
58
|
+
│ terminal output ─────────► │ ──── terminal stream ──────► │
|
|
59
|
+
│ │ │
|
|
60
|
+
│◄── instructor message ────── │ ◄── send message ───────────┤
|
|
61
|
+
│◄── budget warning ────────── │ │
|
|
62
|
+
│◄── session ended ─────────── │ ◄── end session ────────────┤
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## License
|
|
66
|
+
|
|
67
|
+
MIT
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keeroklab/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "CLI wrapper for Keerok Lab — live Claude Code supervision",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -16,9 +16,12 @@
|
|
|
16
16
|
"author": "Keerok <hello@keerok.tech> (https://keerok.tech)",
|
|
17
17
|
"repository": {
|
|
18
18
|
"type": "git",
|
|
19
|
-
"url": "https://github.com/
|
|
19
|
+
"url": "https://github.com/vincentrandon/keeroklab-cli"
|
|
20
20
|
},
|
|
21
21
|
"homepage": "https://keerok.tech",
|
|
22
|
+
"bugs": {
|
|
23
|
+
"url": "https://github.com/vincentrandon/keeroklab-cli/issues"
|
|
24
|
+
},
|
|
22
25
|
"license": "MIT",
|
|
23
26
|
"dependencies": {
|
|
24
27
|
"commander": "^12.0.0",
|