@balise.dev/cli 0.1.0

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 ADDED
@@ -0,0 +1,69 @@
1
+ # @balise/cli
2
+
3
+ Balise CLI — push your codebase to the Balise backend for spec extraction.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm install -g @balise.dev/cli
9
+ # or run without install
10
+ npx @balise.dev/cli --help
11
+ ```
12
+
13
+ ## Quickstart
14
+
15
+ ```bash
16
+ # 1. Authenticate (OAuth PKCE — opens your browser)
17
+ balise login
18
+
19
+ # 2. Link / create a repo inside your current project
20
+ cd my-project
21
+ balise init
22
+
23
+ # 3. Push a snapshot for extraction
24
+ balise sync
25
+ ```
26
+
27
+ ## Commands
28
+
29
+ | Command | Description |
30
+ |---|---|
31
+ | `balise login` | OAuth2 PKCE loopback login against Supabase GoTrue. Tokens stored in OS keychain. |
32
+ | `balise logout` | Purge tokens from keychain. |
33
+ | `balise whoami` | Print current user (`GET /v1/me`). |
34
+ | `balise init` | Create/link a repo & write `.balise/config`. |
35
+ | `balise sync` | Tarball current git repo → multipart upload → poll progress. |
36
+
37
+ ## Config
38
+
39
+ Per-repo config lives at `.balise/config` (INI, gitignored):
40
+
41
+ ```ini
42
+ [repo]
43
+ id = 550e8400-e29b-41d4-a716-446655440000
44
+ slug = my-repo
45
+ owner_login = colin
46
+
47
+ [api]
48
+ url = https://api.balise.dev
49
+ ```
50
+
51
+ ## Keychain
52
+
53
+ Tokens are stored **only** in the OS keychain via `keytar`:
54
+
55
+ - macOS: Keychain Access
56
+ - Windows: Credential Manager
57
+ - Linux: Secret Service (requires `libsecret`)
58
+
59
+ No file fallback. If keytar can't reach the keychain, the CLI fails with an actionable message.
60
+
61
+ ## Dev
62
+
63
+ ```bash
64
+ npm install
65
+ npm run build
66
+ npm test
67
+ npm link # registers `balise` globally against dist/
68
+ balise --help
69
+ ```