granola-toolkit 0.26.0 → 0.28.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.
Files changed (3) hide show
  1. package/README.md +27 -2
  2. package/dist/cli.js +4680 -4305
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -32,6 +32,7 @@ Installed command:
32
32
 
33
33
  ```bash
34
34
  granola --help
35
+ granola attach --help
35
36
  granola auth login
36
37
  granola exports --help
37
38
  granola meeting --help
@@ -49,6 +50,7 @@ Local build:
49
50
  ```bash
50
51
  vp pack
51
52
  node dist/cli.js --help
53
+ node dist/cli.js attach --help
52
54
  node dist/cli.js exports --help
53
55
  node dist/cli.js meeting --help
54
56
  node dist/cli.js notes --help
@@ -98,6 +100,7 @@ granola meeting view 1234abcd
98
100
  granola meeting notes 1234abcd
99
101
  granola meeting transcript 1234abcd --format json
100
102
  granola meeting export 1234abcd --format yaml
103
+ granola meeting open 1234abcd
101
104
  granola tui
102
105
  granola tui --meeting 1234abcd
103
106
  ```
@@ -109,8 +112,12 @@ granola serve
109
112
  granola serve --port 4096
110
113
  granola serve --hostname 0.0.0.0 --port 4096
111
114
  granola serve --network lan --password "change-me"
115
+ granola attach http://127.0.0.1:4096
116
+ granola attach http://127.0.0.1:4096 --meeting 1234abcd
117
+ granola attach http://127.0.0.1:4096 --password "change-me"
112
118
 
113
119
  granola web
120
+ granola web --meeting 1234abcd
114
121
  granola web --open=false --port 4096
115
122
  granola web --network lan --password "change-me" --trusted-origins "https://trusted.example"
116
123
  ```
@@ -186,6 +193,7 @@ The focused meeting subcommands are:
186
193
 
187
194
  - `meeting notes` for just the selected note output
188
195
  - `meeting transcript` for just the selected transcript output
196
+ - `meeting open` to start the web workspace focused on one meeting
189
197
 
190
198
  The machine-readable `export` command includes:
191
199
 
@@ -218,7 +226,7 @@ The initial server API includes:
218
226
  - `POST /exports/jobs/:id/rerun`
219
227
  - `POST /exports/transcripts`
220
228
 
221
- This is the foundation for the future `granola web` client and any attachable TUI flows.
229
+ This is the shared runtime for `granola web` and `granola attach`.
222
230
 
223
231
  Server hardening now includes:
224
232
 
@@ -232,6 +240,11 @@ Server hardening now includes:
232
240
 
233
241
  `web` starts the same local server as `serve`, enables the browser client at `/`, and opens that workspace in your default browser unless you pass `--open=false`.
234
242
 
243
+ You can deep-link into a specific meeting with either:
244
+
245
+ - `granola web --meeting <id>`
246
+ - `granola meeting open <id>`
247
+
235
248
  The initial browser client includes:
236
249
 
237
250
  - a searchable meeting list
@@ -247,9 +260,21 @@ The initial browser client includes:
247
260
  - stronger empty and error states for list/detail failures
248
261
  - a server-access panel that can unlock or lock a password-protected local server
249
262
 
263
+ ### Attach
264
+
265
+ `attach` connects the terminal workspace to an already running `granola serve` or `granola web` instance instead of starting a second isolated app.
266
+
267
+ Use it when you want:
268
+
269
+ - two terminal workspaces attached to the same live app state
270
+ - one terminal workspace and one browser workspace sharing auth, meeting index, and export-job history
271
+ - a password-protected local server to remain the single source of truth
272
+
273
+ The attach flow uses the existing local HTTP API plus `GET /events` for live state updates.
274
+
250
275
  ### TUI
251
276
 
252
- `tui` starts a full-screen terminal workspace on the shared app core, without requiring the local server or browser client.
277
+ `tui` starts a full-screen terminal workspace on the shared app core, without requiring the local server or browser client. Use `attach` when you want the same workspace against an existing shared server instance instead.
253
278
 
254
279
  The initial terminal workspace includes:
255
280