@theplato/tiro-cli 0.4.1 โ 0.6.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 +65 -5
- package/dist/bin/tiro.js +177 -1939
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -46,6 +46,7 @@ The CLI is **not a replacement for MCP**. It's the same data through a different
|
|
|
46
46
|
- ๐ **OAuth Authorization Code + PKCE** โ no copy-paste tokens, no secrets in shell history. Tokens live in OS Keychain.
|
|
47
47
|
- ๐ **`--output` writes to disk** โ stdout becomes a single line of metadata. Agents stay context-light.
|
|
48
48
|
- ๐ช **Same JSON shape as MCP** โ `tiro notes transcript --format json` mirrors `get_note_transcript` exactly. Switch surfaces without changing parsers.
|
|
49
|
+
- ๐ธ๏ธ **Workspace wiki** โ `tiro wiki search / page / mentions / graph` read the auto-extracted knowledge graph; `--workspace` targets a specific workspace.
|
|
49
50
|
- ๐งต **NDJSON streams by default** โ pipe to `jq`, `head`, `xargs`. No buffer-in-memory surprises.
|
|
50
51
|
- ๐ค **Agent-aware** โ TTY detection auto-selects pretty vs JSON. `error.suggestion` field for auto-recovery.
|
|
51
52
|
- ๐ซ **No voice in v1** โ intentionally matches MCP feature parity (audio uploads belong elsewhere).
|
|
@@ -110,6 +111,7 @@ tiro notes list # pretty table in T
|
|
|
110
111
|
tiro notes list --json # NDJSON for pipes
|
|
111
112
|
tiro notes list --keyword "OKR" --since 30d # Reorder by keyword relevance
|
|
112
113
|
tiro notes list --folder <id> --limit 100 --cursor <token>
|
|
114
|
+
tiro notes list --workspace <guid> # scope to one workspace
|
|
113
115
|
```
|
|
114
116
|
|
|
115
117
|
### Deep keyword search (returns notes + their primary documents)
|
|
@@ -117,10 +119,19 @@ tiro notes list --folder <id> --limit 100 --cursor <token>
|
|
|
117
119
|
tiro notes search "Q3 Planning" # positional keyword
|
|
118
120
|
tiro notes search "OKR" --since 2026-04-01 --until 2026-05-01
|
|
119
121
|
tiro notes search "Acme Corp" --folder <id> --json | jq '.[] | .guid'
|
|
122
|
+
tiro notes search "release" --workspace <guid> # scope to one workspace
|
|
120
123
|
```
|
|
121
124
|
|
|
122
125
|
`--since` / `--until` accept ISO-8601 (`2026-04-01T10:00:00Z`) or relative (`7d`, `24h`, `30m`).
|
|
123
126
|
|
|
127
|
+
**Workspace scoping.** `notes list` / `notes search` resolve their workspace in this
|
|
128
|
+
order: explicit `--workspace <guid>` first, then the workspace your API key is bound
|
|
129
|
+
to (workspace-scoped keys), then โ for an unbound credential (a personal key or an
|
|
130
|
+
OAuth login) โ **across every workspace you belong to**, with a one-line warning to
|
|
131
|
+
stderr. Unlike `wiki`, notes are never silently pinned to a single "default"
|
|
132
|
+
workspace. Run `tiro wiki workspaces` for guids, or `tiro auth status` to see which
|
|
133
|
+
workspace your credential is bound to.
|
|
134
|
+
|
|
124
135
|
### Get one note โ stdout
|
|
125
136
|
```bash
|
|
126
137
|
tiro notes get <guid> # markdown to TTY
|
|
@@ -150,6 +161,50 @@ header instead of being attached to every speaker line. Use
|
|
|
150
161
|
|
|
151
162
|
`--format json` returns the exact shape MCP's `get_note_transcript` emits (`{noteGuid, title, participants, createdAt, recordingDurationSeconds, paragraphs[]}` with each paragraph carrying `segments[]` of `{content, speaker:{label,name}|null}`).
|
|
152
163
|
|
|
164
|
+
### Browse workspace folders
|
|
165
|
+
```bash
|
|
166
|
+
tiro folders list # flat list (id, sharingType, title)
|
|
167
|
+
tiro folders list --workspace <guid> --json
|
|
168
|
+
tiro folders tree --workspace <guid> # hierarchy, indented by depth
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
Folders are workspace-scoped. The workspace resolves from `--workspace`, else your
|
|
172
|
+
API key's bound workspace. Unlike notes, folders have no cross-workspace path โ an
|
|
173
|
+
unbound credential must pass `--workspace` (run `tiro wiki workspaces` for guids).
|
|
174
|
+
Use a folder id with `tiro notes list --folder <id>`. `sharingType` is one of
|
|
175
|
+
`PRIVATE` / `ALL_MEMBER_VIEWER` / `ALL_MEMBER_EDITOR` / `LIMITED`.
|
|
176
|
+
|
|
177
|
+
### List word memories
|
|
178
|
+
```bash
|
|
179
|
+
tiro word-memories list # custom transcription vocabulary
|
|
180
|
+
tiro word-memories list --workspace <guid> --json
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
Word memories are the custom vocabulary that biases a workspace's transcription.
|
|
184
|
+
Read-only and workspace-scoped (same resolution as folders).
|
|
185
|
+
|
|
186
|
+
### Explore the workspace wiki
|
|
187
|
+
|
|
188
|
+
The wiki is Tiro's auto-extracted knowledge graph (entities, concepts, and their
|
|
189
|
+
links) over your notes. These commands are **read-only** and mirror the MCP wiki
|
|
190
|
+
tools. Wiki is a paid, opt-in feature โ calls against an ineligible or
|
|
191
|
+
not-activated workspace return the backend's upgrade message and a non-zero exit.
|
|
192
|
+
|
|
193
|
+
```bash
|
|
194
|
+
tiro wiki workspaces # which workspaces? (guid + wiki on/off)
|
|
195
|
+
tiro wiki search "Ontology" --workspace <guid> # find pages by keyword
|
|
196
|
+
tiro wiki page <pageGuid> --workspace <guid> # body + mentions + links
|
|
197
|
+
tiro wiki mentions <pageGuid> --workspace <guid> # where the page is grounded in notes
|
|
198
|
+
tiro wiki graph <pageGuid> --mode around --workspace <guid> # neighborhood graph
|
|
199
|
+
tiro wiki graph --mode seed --type CONCEPT --workspace <guid> # overview graph (no pageGuid)
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
`--workspace` is optional โ omit it to use the default workspace for your API
|
|
203
|
+
key. If your account belongs to multiple workspaces, run `tiro wiki workspaces`
|
|
204
|
+
first and pass the `guid` of the one whose wiki is enabled. `graph` results are
|
|
205
|
+
capped (default 50 nodes); a `truncated: true` flag signals you to narrow the
|
|
206
|
+
query.
|
|
207
|
+
|
|
153
208
|
### Connect to Claude Code (MCP)
|
|
154
209
|
```bash
|
|
155
210
|
tiro mcp install
|
|
@@ -180,11 +235,15 @@ tiro notes transcript Get the full transcript (matches MCP get_note_transcr
|
|
|
180
235
|
tiro mcp info Show hosted MCP endpoint info
|
|
181
236
|
tiro mcp install Print one-line claude-mcp-add command
|
|
182
237
|
|
|
183
|
-
|
|
238
|
+
tiro wiki search/page Read the workspace knowledge graph
|
|
239
|
+
tiro wiki mentions/graph Page mentions and graph slices
|
|
240
|
+
tiro folders list/tree Browse workspace folders (flat or hierarchy)
|
|
241
|
+
tiro word-memories list List custom transcription vocabulary
|
|
242
|
+
|
|
243
|
+
# Coming later:
|
|
184
244
|
tiro notes export Bulk-export search results to a directory
|
|
185
245
|
tiro templates list/get Document templates
|
|
186
246
|
tiro share-links {C/R/D} Manage note share links
|
|
187
|
-
tiro folders search Search user / team folders
|
|
188
247
|
tiro schema [<command>] Print JSON Schema (for agents)
|
|
189
248
|
```
|
|
190
249
|
|
|
@@ -314,8 +373,9 @@ OAuth Authorization Code + PKCE flow:
|
|
|
314
373
|
|
|
315
374
|
- โ
**v0.1** โ Auth (`login`, `status`, `logout`) + `--help`
|
|
316
375
|
- โ
**v0.2** โ Notes core (`list`, `search`, `get`, `transcript`); MCP-shape transcript JSON; first test suite
|
|
317
|
-
-
|
|
318
|
-
-
|
|
376
|
+
- โ
**v0.5** โ `wiki` command group (workspace knowledge graph, read-only)
|
|
377
|
+
- โ
**v0.6** โ `folders` and `word-memories` (workspace-scoped, read-only)
|
|
378
|
+
- โณ **next** โ `notes export`, templates, share-links, `schema`
|
|
319
379
|
- โณ **v1.0** โ Stable. Public docs, license decision, Homebrew tap.
|
|
320
380
|
- ๐ฎ **v1.x** โ Device Flow (RFC 8628), shell completions, self-update
|
|
321
381
|
|
|
@@ -325,7 +385,7 @@ See [`SPEC.md`](./SPEC.md) for the full v1 design and [`CHANGELOG.md`](./CHANGEL
|
|
|
325
385
|
|
|
326
386
|
## Contributing
|
|
327
387
|
|
|
328
|
-
This repo is currently private alpha. Feedback and bug reports
|
|
388
|
+
This repo is currently private alpha. Feedback and bug reports can be sent to [yeoul@theplato.io](mailto:yeoul@theplato.io); once we open up, this section will list public contribution guidelines.
|
|
329
389
|
|
|
330
390
|
---
|
|
331
391
|
|