@redaksjon/protokoll 0.0.14 → 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/.cursor/rules/no-auto-summary-files.md +43 -0
- package/README.md +611 -38
- package/dist/main.js +750 -231
- package/dist/main.js.map +1 -1
- package/dist/mcp/server.js +1363 -39
- package/dist/mcp/server.js.map +1 -1
- package/dist/term-assist.js +274 -0
- package/dist/term-assist.js.map +1 -0
- package/dist/term-context.js +146 -0
- package/dist/term-context.js.map +1 -0
- package/dist/{feedback.js → transcript.js} +1623 -155
- package/dist/transcript.js.map +1 -0
- package/docs/entity-metadata.md +416 -0
- package/docs/examples.md +21 -0
- package/docs/transcript-listing.md +371 -0
- package/guide/action.md +266 -4
- package/guide/context-commands.md +413 -93
- package/guide/feedback.md +1 -1
- package/guide/index.md +65 -2
- package/guide/interactive.md +224 -9
- package/guide/mcp-integration.md +66 -19
- package/guide/transcript-listing.md +444 -0
- package/package.json +17 -8
- package/scripts/test-mcp-compliance.js +97 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/feedback.js.map +0 -1
|
@@ -42,77 +42,303 @@ Projects define routing destinations and classification rules.
|
|
|
42
42
|
protokoll project list
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
-
Output:
|
|
45
|
+
Output (compact table with row numbers):
|
|
46
46
|
```
|
|
47
47
|
Projects (3):
|
|
48
48
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
┌─────┬────────────────────┬────────────────────┬───────────────────────────┐
|
|
50
|
+
│ # │ ID │ Name │ Info │
|
|
51
|
+
├─────┼────────────────────┼────────────────────┼───────────────────────────┤
|
|
52
|
+
│ 1 │ personal │ Personal Notes │ INACTIVE → ~/notes │
|
|
53
|
+
├─────┼────────────────────┼────────────────────┼───────────────────────────┤
|
|
54
|
+
│ 2 │ quarterly-planning │ Quarterly Planning │ → ~/work/planning/notes │
|
|
55
|
+
├─────┼────────────────────┼────────────────────┼───────────────────────────┤
|
|
56
|
+
│ 3 │ work │ Work Notes │ → ~/work/notes │
|
|
57
|
+
└─────┴────────────────────┴────────────────────┴───────────────────────────┘
|
|
58
|
+
|
|
59
|
+
Use "project show <id>" or "project show <#>" to see full details for any entry.
|
|
52
60
|
```
|
|
53
61
|
|
|
54
|
-
|
|
62
|
+
The table uses fixed column widths and truncates long paths intelligently. For full details including descriptions, trigger phrases, and all configuration, use either the ID or row number:
|
|
55
63
|
```bash
|
|
56
|
-
protokoll project
|
|
64
|
+
protokoll project show walmart # By ID
|
|
65
|
+
protokoll project show 6 # By row number from list
|
|
57
66
|
```
|
|
58
67
|
|
|
59
|
-
|
|
68
|
+
Or for verbose output with full YAML details:
|
|
69
|
+
```bash
|
|
70
|
+
protokoll project list --verbose
|
|
71
|
+
```
|
|
60
72
|
|
|
61
73
|
### Show Project Details
|
|
62
74
|
|
|
75
|
+
You can show details using either the ID or the row number from the list:
|
|
76
|
+
|
|
63
77
|
```bash
|
|
64
|
-
protokoll project show quarterly-planning
|
|
78
|
+
protokoll project show quarterly-planning # By ID
|
|
79
|
+
protokoll project show 2 # By row number
|
|
65
80
|
```
|
|
66
81
|
|
|
67
|
-
Output:
|
|
82
|
+
Output (formatted table):
|
|
68
83
|
```
|
|
69
84
|
Project: Quarterly Planning
|
|
70
85
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
86
|
+
┌─────────────────────┬────────────────────────────────────────────┐
|
|
87
|
+
│ ID │ quarterly-planning │
|
|
88
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
89
|
+
│ Name │ Quarterly Planning │
|
|
90
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
91
|
+
│ Type │ project │
|
|
92
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
93
|
+
│ Context Type │ work │
|
|
94
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
95
|
+
│ Trigger Phrases │ • quarterly planning │
|
|
96
|
+
│ │ • Q1 planning │
|
|
97
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
98
|
+
│ Topics │ • roadmap │
|
|
99
|
+
│ │ • budget │
|
|
100
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
101
|
+
│ Destination │ ~/work/planning/notes │
|
|
102
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
103
|
+
│ Directory Structure │ month │
|
|
104
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
105
|
+
│ Filename Options │ • date │
|
|
106
|
+
│ │ • time │
|
|
107
|
+
│ │ • subject │
|
|
108
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
109
|
+
│ Sounds Like │ • quarterly plan │
|
|
110
|
+
│ │ • quarter planning │
|
|
111
|
+
├─────────────────────┼────────────────────────────────────────────┤
|
|
112
|
+
│ Active │ true │
|
|
113
|
+
└─────────────────────┴────────────────────────────────────────────┘
|
|
90
114
|
|
|
91
115
|
File: /Users/you/.protokoll/projects/quarterly-planning.yaml
|
|
92
116
|
```
|
|
93
117
|
|
|
118
|
+
The formatted output makes it easy to read all fields. Arrays are displayed as bullet points, and nested objects are expanded in a readable format.
|
|
119
|
+
|
|
94
120
|
### Add a Project
|
|
95
121
|
|
|
96
122
|
```bash
|
|
97
123
|
protokoll project add
|
|
98
124
|
```
|
|
99
125
|
|
|
100
|
-
|
|
126
|
+
For the best experience, provide the project name on the command line:
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
protokoll project add --name "Client Alpha"
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
The streamlined process uses sensible defaults and focuses on the smart assistance features:
|
|
133
|
+
|
|
101
134
|
```
|
|
102
135
|
[Add New Project]
|
|
103
136
|
|
|
104
137
|
Project name: Client Alpha
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
138
|
+
|
|
139
|
+
[Generating phonetic variants...]
|
|
140
|
+
• Calling AI model...
|
|
141
|
+
(Phonetic variants help when Whisper mishears the project name)
|
|
142
|
+
Sounds like (Enter for suggested, or edit):
|
|
143
|
+
client alpha,client alfa,klient alpha,clint alpha,...(+4 more)
|
|
144
|
+
>
|
|
145
|
+
|
|
146
|
+
[Generating trigger phrases...]
|
|
147
|
+
• Calling AI model...
|
|
148
|
+
(Trigger phrases indicate content belongs to this project)
|
|
149
|
+
Trigger phrases (Enter for suggested, or edit):
|
|
150
|
+
client alpha,alpha project,working on alpha,alpha client,...(+8 more)
|
|
151
|
+
>
|
|
152
|
+
|
|
153
|
+
Topic keywords (Enter for suggested, or edit):
|
|
154
|
+
client engagement,consulting,project management,...(+5 more)
|
|
155
|
+
>
|
|
156
|
+
|
|
157
|
+
Description (Enter for suggested, or edit):
|
|
158
|
+
Primary client project for Q1
|
|
159
|
+
>
|
|
112
160
|
|
|
113
161
|
Project "Client Alpha" saved successfully.
|
|
114
162
|
```
|
|
115
163
|
|
|
164
|
+
The project creation now uses these sensible defaults:
|
|
165
|
+
- **ID**: Auto-generated from name (e.g., "Client Alpha" → "client-alpha")
|
|
166
|
+
- **Context type**: Defaults to "work"
|
|
167
|
+
- **Directory structure**: Defaults to "month"
|
|
168
|
+
- **Output destination**: Uses your configured default
|
|
169
|
+
|
|
170
|
+
You can override any default using command-line options:
|
|
171
|
+
|
|
172
|
+
```bash
|
|
173
|
+
protokoll project add --name "Personal Notes" \
|
|
174
|
+
--context personal \
|
|
175
|
+
--structure day \
|
|
176
|
+
--destination ~/personal-notes
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
#### Non-Interactive Mode
|
|
180
|
+
|
|
181
|
+
If you want to accept all AI-generated suggestions automatically without being prompted, use the `--yes` flag:
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
protokoll project add --name "FjellGrunn" --yes
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
This will generate phonetic variants, trigger phrases, topics, and description using AI, then immediately save the project without waiting for your confirmation. Output looks like:
|
|
188
|
+
|
|
189
|
+
```
|
|
190
|
+
[Add New Project]
|
|
191
|
+
|
|
192
|
+
[Generating phonetic variants...]
|
|
193
|
+
• Calling AI model...
|
|
194
|
+
(Phonetic variants help when Whisper mishears the project name)
|
|
195
|
+
fyellgruhn,feelgrun,feellgrun,fyellgrunn,fyehlgrunn,fjehlgrun,...(+16 more)
|
|
196
|
+
✓ Accepted (--yes mode)
|
|
197
|
+
|
|
198
|
+
[Generating trigger phrases...]
|
|
199
|
+
• Calling AI model...
|
|
200
|
+
(Trigger phrases indicate content belongs to this project)
|
|
201
|
+
fjellgrunn,fjell grunn project,working on fjellgrunn,...(+12 more)
|
|
202
|
+
✓ Accepted (--yes mode)
|
|
203
|
+
|
|
204
|
+
Project "FjellGrunn" saved successfully.
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
This mode is useful for:
|
|
208
|
+
- **Automation**: Scripts that create projects without manual intervention
|
|
209
|
+
- **Trusting the AI**: When you're confident the AI will generate good suggestions
|
|
210
|
+
- **Speed**: Quickly creating multiple projects in a batch
|
|
211
|
+
|
|
212
|
+
You can combine `--yes` with other flags:
|
|
213
|
+
|
|
214
|
+
```bash
|
|
215
|
+
# Non-interactive with source URL
|
|
216
|
+
protokoll project add https://github.com/myorg/myproject --name "My Project" --yes
|
|
217
|
+
|
|
218
|
+
# Non-interactive with local README
|
|
219
|
+
protokoll project add /path/to/README.md --name "Documentation" --yes
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
#### Project Field Reference
|
|
223
|
+
|
|
224
|
+
| Field | How Set | Purpose | Examples |
|
|
225
|
+
|-------|---------|---------|----------|
|
|
226
|
+
| **Name** | Prompted (or `--name` flag) | Display name for the project | "Client Alpha", "Personal Notes" |
|
|
227
|
+
| **ID** | Auto-generated from name | Filename and reference identifier | "client-alpha", "personal-notes" |
|
|
228
|
+
| **Context type** | Auto: "work" (override with `--context`) | Nature of content | work, personal, mixed |
|
|
229
|
+
| **Directory structure** | Auto: "month" (override with `--structure`) | Date-based folder organization | none, year, month, day |
|
|
230
|
+
| **Output destination** | Auto: configured default (override with `--destination`) | Where transcripts are saved | "~/clients/alpha/notes" |
|
|
231
|
+
| **Sounds like** | AI-suggested (editable) | Phonetic variants for misheard names | "protocol" for "Protokoll" |
|
|
232
|
+
| **Trigger phrases** | AI-suggested (editable) | High-confidence matching phrases | "client alpha", "working on alpha" |
|
|
233
|
+
| **Topic keywords** | AI-suggested (editable) | Lower-confidence theme associations | "budget", "roadmap" |
|
|
234
|
+
| **Description** | AI-suggested (editable) | Your reference note | "Primary client project for Q1" |
|
|
235
|
+
|
|
236
|
+
##### Understanding Trigger Phrases vs Sounds Like vs Topics
|
|
237
|
+
|
|
238
|
+
- **Trigger phrases** (`explicit_phrases`): High-confidence content matching. If someone says "working on the alpha project" in a recording, and "alpha project" is a trigger phrase, the transcript routes to this project. These match the *content* being discussed.
|
|
239
|
+
|
|
240
|
+
- **Sounds like** (`sounds_like`): Phonetic variants for when Whisper mishears the *project name itself*. If your project is named "Protokoll" (Norwegian), Whisper might transcribe it as "protocol" or "pro to call". Add these variants so lookups still find the project.
|
|
241
|
+
|
|
242
|
+
- **Topic keywords** (`topics`): Lower-confidence associations. If a transcript mentions "budget" and your project has "budget" as a topic, it's a weaker signal than a trigger phrase. Topics help with classification but shouldn't be relied on alone.
|
|
243
|
+
|
|
244
|
+
#### Smart Project Creation
|
|
245
|
+
|
|
246
|
+
Protokoll can use AI assistance to automatically generate sounds_like, trigger phrases, topics, and descriptions:
|
|
247
|
+
|
|
248
|
+
**Basic Smart Creation**
|
|
249
|
+
|
|
250
|
+
```bash
|
|
251
|
+
# AI generates sounds_like and trigger phrases from project name
|
|
252
|
+
protokoll project add
|
|
253
|
+
|
|
254
|
+
[Add New Project]
|
|
255
|
+
|
|
256
|
+
Project name: Protokoll
|
|
257
|
+
ID (Enter for "protokoll"):
|
|
258
|
+
|
|
259
|
+
[Generating phonetic variants...]
|
|
260
|
+
Sounds like (Enter for suggested, or edit):
|
|
261
|
+
protocol,pro to call,proto call,protocolle,...
|
|
262
|
+
|
|
263
|
+
[Generating trigger phrases...]
|
|
264
|
+
Trigger phrases (Enter for suggested, or edit):
|
|
265
|
+
protokoll,working on protokoll,protokoll project,protokoll meeting,...
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
**With Source Content**
|
|
269
|
+
|
|
270
|
+
```bash
|
|
271
|
+
# Provide URL or file for full context analysis
|
|
272
|
+
protokoll project add https://github.com/myorg/myproject
|
|
273
|
+
|
|
274
|
+
[Fetching content from source...]
|
|
275
|
+
Found: github - myorg/myproject
|
|
276
|
+
|
|
277
|
+
[Analyzing content...]
|
|
278
|
+
|
|
279
|
+
Project name (Enter for "MyProject"):
|
|
280
|
+
ID (Enter for "myproject"):
|
|
281
|
+
|
|
282
|
+
[Generating phonetic variants...]
|
|
283
|
+
[Generating trigger phrases...]
|
|
284
|
+
|
|
285
|
+
Topic keywords (Enter for suggested, or edit):
|
|
286
|
+
typescript,automation,api,github,...
|
|
287
|
+
|
|
288
|
+
Description (Enter for suggested, or edit):
|
|
289
|
+
MyProject is a comprehensive automation toolkit...
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
**Command-Line Options**
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
# Skip prompts with arguments
|
|
296
|
+
protokoll project add --name "My Project"
|
|
297
|
+
protokoll project add --name "My Project" --context work
|
|
298
|
+
|
|
299
|
+
# Combine with source
|
|
300
|
+
protokoll project add https://github.com/org/repo --name "Repo Name"
|
|
301
|
+
|
|
302
|
+
# Control smart assistance
|
|
303
|
+
protokoll project add --smart # Force enable
|
|
304
|
+
protokoll project add --no-smart # Force disable
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
**Supported Source Types**
|
|
308
|
+
|
|
309
|
+
| Type | Description | Example |
|
|
310
|
+
|------|-------------|---------|
|
|
311
|
+
| GitHub URL | Fetches raw README.md | `https://github.com/org/repo` |
|
|
312
|
+
| Web URL | Fetches page content | `https://example.com/docs` |
|
|
313
|
+
| Local file | Reads file content | `./README.md` |
|
|
314
|
+
| Directory | Finds README in directory | `./my-project/` |
|
|
315
|
+
|
|
316
|
+
**Configuration**
|
|
317
|
+
|
|
318
|
+
```yaml
|
|
319
|
+
# .protokoll/config.yaml
|
|
320
|
+
smartAssistance:
|
|
321
|
+
enabled: true # Enable AI-assisted project creation
|
|
322
|
+
phoneticModel: "gpt-5-nano" # Fast model for phonetic variants
|
|
323
|
+
analysisModel: "gpt-5-mini" # Model for content analysis
|
|
324
|
+
soundsLikeOnAdd: true # Auto-generate phonetic variants
|
|
325
|
+
triggerPhrasesOnAdd: true # Auto-generate trigger phrases
|
|
326
|
+
promptForSource: true # Ask for URL/file when creating projects
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
**How It Works**
|
|
330
|
+
|
|
331
|
+
1. Enter project name
|
|
332
|
+
2. AI generates sounds_like (phonetic variants for transcription correction)
|
|
333
|
+
3. AI generates trigger phrases (content-matching for classification)
|
|
334
|
+
4. Optionally provide URL/file for topics and description
|
|
335
|
+
5. All suggestions are editable before saving
|
|
336
|
+
|
|
337
|
+
**Requirements**
|
|
338
|
+
|
|
339
|
+
- `OPENAI_API_KEY` environment variable set
|
|
340
|
+
- Network access for URL fetching and API calls
|
|
341
|
+
|
|
116
342
|
### Delete a Project
|
|
117
343
|
|
|
118
344
|
```bash
|
|
@@ -141,37 +367,55 @@ People are used for name recognition and correction in transcripts.
|
|
|
141
367
|
protokoll person list
|
|
142
368
|
```
|
|
143
369
|
|
|
144
|
-
Output:
|
|
370
|
+
Output (compact table with row numbers):
|
|
145
371
|
```
|
|
146
|
-
People (
|
|
372
|
+
People (3):
|
|
373
|
+
|
|
374
|
+
┌─────┬──────────────┬──────────────┬────────────────────────────┐
|
|
375
|
+
│ # │ ID │ Name │ Info │
|
|
376
|
+
├─────┼──────────────┼──────────────┼────────────────────────────┤
|
|
377
|
+
│ 1 │ john-smith │ John Smith │ Engineering Lead · @acme │
|
|
378
|
+
├─────┼──────────────┼──────────────┼────────────────────────────┤
|
|
379
|
+
│ 2 │ priya-sharma │ Priya Sharma │ Product Manager · @acme │
|
|
380
|
+
├─────┼──────────────┼──────────────┼────────────────────────────┤
|
|
381
|
+
│ 3 │ sarah-chen │ Sarah Chen │ Designer │
|
|
382
|
+
└─────┴──────────────┴──────────────┴────────────────────────────┘
|
|
147
383
|
|
|
148
|
-
|
|
149
|
-
priya-sharma Priya Sharma (acme-corp) - Product Manager
|
|
150
|
-
sarah-chen Sarah Chen - Designer
|
|
384
|
+
Use "person show <id>" or "person show <#>" to see full details for any entry.
|
|
151
385
|
```
|
|
152
386
|
|
|
153
387
|
### Show Person Details
|
|
154
388
|
|
|
155
389
|
```bash
|
|
156
|
-
protokoll person show priya-sharma
|
|
390
|
+
protokoll person show priya-sharma # By ID
|
|
391
|
+
protokoll person show 2 # By row number
|
|
157
392
|
```
|
|
158
393
|
|
|
159
|
-
Output:
|
|
394
|
+
Output (formatted table):
|
|
160
395
|
```
|
|
161
396
|
Person: Priya Sharma
|
|
162
397
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
398
|
+
┌─────────────┬──────────────────────────────────────────┐
|
|
399
|
+
│ ID │ priya-sharma │
|
|
400
|
+
├─────────────┼──────────────────────────────────────────┤
|
|
401
|
+
│ Name │ Priya Sharma │
|
|
402
|
+
├─────────────┼──────────────────────────────────────────┤
|
|
403
|
+
│ Type │ person │
|
|
404
|
+
├─────────────┼──────────────────────────────────────────┤
|
|
405
|
+
│ First Name │ Priya │
|
|
406
|
+
├─────────────┼──────────────────────────────────────────┤
|
|
407
|
+
│ Last Name │ Sharma │
|
|
408
|
+
├─────────────┼──────────────────────────────────────────┤
|
|
409
|
+
│ Company │ acme-corp │
|
|
410
|
+
├─────────────┼──────────────────────────────────────────┤
|
|
411
|
+
│ Role │ Product Manager │
|
|
412
|
+
├─────────────┼──────────────────────────────────────────┤
|
|
413
|
+
│ Sounds Like │ • pre a │
|
|
414
|
+
│ │ • pria │
|
|
415
|
+
│ │ • preeya │
|
|
416
|
+
├─────────────┼──────────────────────────────────────────┤
|
|
417
|
+
│ Context │ Colleague from product team │
|
|
418
|
+
└─────────────┴──────────────────────────────────────────┘
|
|
175
419
|
|
|
176
420
|
File: /Users/you/.protokoll/people/priya-sharma.yaml
|
|
177
421
|
```
|
|
@@ -218,37 +462,57 @@ Terms define technical vocabulary and their phonetic variants.
|
|
|
218
462
|
protokoll term list
|
|
219
463
|
```
|
|
220
464
|
|
|
221
|
-
Output:
|
|
465
|
+
Output (compact table with row numbers):
|
|
466
|
+
```
|
|
467
|
+
Terms (3):
|
|
468
|
+
|
|
469
|
+
┌─────┬────────────┬────────────┬──────────────────────────────────┐
|
|
470
|
+
│ # │ ID │ Name │ Info │
|
|
471
|
+
├─────┼────────────┼────────────┼──────────────────────────────────┤
|
|
472
|
+
│ 1 │ graphql │ GraphQL │ GraphQL Query Language │
|
|
473
|
+
├─────┼────────────┼────────────┼──────────────────────────────────┤
|
|
474
|
+
│ 2 │ kubernetes │ Kubernetes │ Container orchestration platform │
|
|
475
|
+
├─────┼────────────┼────────────┼──────────────────────────────────┤
|
|
476
|
+
│ 3 │ react │ React │ JavaScript UI library │
|
|
477
|
+
└─────┴────────────┴────────────┴──────────────────────────────────┘
|
|
478
|
+
|
|
479
|
+
Use "term show <id>" or "term show <#>" to see full details for any entry.
|
|
222
480
|
```
|
|
223
|
-
Terms (4):
|
|
224
481
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
482
|
+
Long expansions are truncated in the table view. For verbose output with full YAML details:
|
|
483
|
+
```bash
|
|
484
|
+
protokoll term list --verbose
|
|
228
485
|
```
|
|
229
486
|
|
|
230
487
|
### Show Term Details
|
|
231
488
|
|
|
232
489
|
```bash
|
|
233
|
-
protokoll term show kubernetes
|
|
490
|
+
protokoll term show kubernetes # By ID
|
|
491
|
+
protokoll term show 2 # By row number
|
|
234
492
|
```
|
|
235
493
|
|
|
236
|
-
Output:
|
|
494
|
+
Output (formatted table):
|
|
237
495
|
```
|
|
238
496
|
Term: Kubernetes
|
|
239
497
|
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
498
|
+
┌─────────────┬────────────────────────────────────────┐
|
|
499
|
+
│ ID │ kubernetes │
|
|
500
|
+
├─────────────┼────────────────────────────────────────┤
|
|
501
|
+
│ Name │ Kubernetes │
|
|
502
|
+
├─────────────┼────────────────────────────────────────┤
|
|
503
|
+
│ Type │ term │
|
|
504
|
+
├─────────────┼────────────────────────────────────────┤
|
|
505
|
+
│ Expansion │ Container orchestration platform │
|
|
506
|
+
├─────────────┼────────────────────────────────────────┤
|
|
507
|
+
│ Domain │ engineering │
|
|
508
|
+
├─────────────┼────────────────────────────────────────┤
|
|
509
|
+
│ Sounds Like │ • kube │
|
|
510
|
+
│ │ • k8s │
|
|
511
|
+
│ │ • cube er net ease │
|
|
512
|
+
│ │ • kuber netties │
|
|
513
|
+
├─────────────┼────────────────────────────────────────┤
|
|
514
|
+
│ Projects │ • infrastructure │
|
|
515
|
+
└─────────────┴────────────────────────────────────────┘
|
|
252
516
|
|
|
253
517
|
File: /Users/you/.protokoll/terms/kubernetes.yaml
|
|
254
518
|
```
|
|
@@ -273,6 +537,39 @@ Associated project IDs (comma-separated, Enter to skip): api-project
|
|
|
273
537
|
Term "GraphQL" saved successfully.
|
|
274
538
|
```
|
|
275
539
|
|
|
540
|
+
### Update a Term from Source
|
|
541
|
+
|
|
542
|
+
Regenerate term metadata by analyzing updated documentation:
|
|
543
|
+
|
|
544
|
+
```bash
|
|
545
|
+
protokoll term update kubernetes https://kubernetes.io/docs/concepts/overview/
|
|
546
|
+
```
|
|
547
|
+
|
|
548
|
+
This will:
|
|
549
|
+
- Fetch content from the URL
|
|
550
|
+
- Regenerate description, topics, domain using LLM
|
|
551
|
+
- Generate new sounds_like variants
|
|
552
|
+
- Suggest relevant projects based on topics
|
|
553
|
+
- Update the term file with new metadata
|
|
554
|
+
|
|
555
|
+
**Use case**: The Kubernetes project has evolved significantly. Update the term definition to reflect current documentation.
|
|
556
|
+
|
|
557
|
+
### Merge Duplicate Terms
|
|
558
|
+
|
|
559
|
+
```bash
|
|
560
|
+
protokoll term merge kubernetes-dupe kubernetes
|
|
561
|
+
```
|
|
562
|
+
|
|
563
|
+
This will:
|
|
564
|
+
- Combine sounds_like arrays (deduplicated)
|
|
565
|
+
- Combine topics arrays (deduplicated)
|
|
566
|
+
- Combine projects arrays (deduplicated)
|
|
567
|
+
- Keep target's description/domain (fall back to source if missing)
|
|
568
|
+
- Delete the source term
|
|
569
|
+
- Save the merged term
|
|
570
|
+
|
|
571
|
+
**Use case**: You accidentally created "kubernetes" and "k8s" as separate terms. Merge them into one.
|
|
572
|
+
|
|
276
573
|
### Delete a Term
|
|
277
574
|
|
|
278
575
|
```bash
|
|
@@ -289,34 +586,49 @@ Companies are used for organization recognition and can be linked to people.
|
|
|
289
586
|
protokoll company list
|
|
290
587
|
```
|
|
291
588
|
|
|
292
|
-
Output:
|
|
589
|
+
Output (compact table with row numbers):
|
|
293
590
|
```
|
|
294
591
|
Companies (3):
|
|
295
592
|
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
593
|
+
┌─────┬────────────┬──────────────────┬──────────────┐
|
|
594
|
+
│ # │ ID │ Name │ Info │
|
|
595
|
+
├─────┼────────────┼──────────────────┼──────────────┤
|
|
596
|
+
│ 1 │ acme-corp │ Acme Corporation │ Manufacturing│
|
|
597
|
+
├─────┼────────────┼──────────────────┼──────────────┤
|
|
598
|
+
│ 2 │ globalbank │ Global Bank │ Finance │
|
|
599
|
+
├─────┼────────────┼──────────────────┼──────────────┤
|
|
600
|
+
│ 3 │ techstart │ TechStart Inc │ Technology │
|
|
601
|
+
└─────┴────────────┴──────────────────┴──────────────┘
|
|
602
|
+
|
|
603
|
+
Use "company show <id>" or "company show <#>" to see full details for any entry.
|
|
299
604
|
```
|
|
300
605
|
|
|
301
606
|
### Show Company Details
|
|
302
607
|
|
|
303
608
|
```bash
|
|
304
|
-
protokoll company show acme-corp
|
|
609
|
+
protokoll company show acme-corp # By ID
|
|
610
|
+
protokoll company show 1 # By row number
|
|
305
611
|
```
|
|
306
612
|
|
|
307
|
-
Output:
|
|
613
|
+
Output (formatted table):
|
|
308
614
|
```
|
|
309
615
|
Company: Acme Corporation
|
|
310
616
|
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
617
|
+
┌─────────────┬──────────────────────────┐
|
|
618
|
+
│ ID │ acme-corp │
|
|
619
|
+
├─────────────┼──────────────────────────┤
|
|
620
|
+
│ Name │ Acme Corporation │
|
|
621
|
+
├─────────────┼──────────────────────────┤
|
|
622
|
+
│ Type │ company │
|
|
623
|
+
├─────────────┼──────────────────────────┤
|
|
624
|
+
│ Full Name │ Acme Corporation Ltd. │
|
|
625
|
+
├─────────────┼──────────────────────────┤
|
|
626
|
+
│ Industry │ Manufacturing │
|
|
627
|
+
├─────────────┼──────────────────────────┤
|
|
628
|
+
│ Sounds Like │ • acme │
|
|
629
|
+
│ │ • acme corp │
|
|
630
|
+
│ │ • a c m e │
|
|
631
|
+
└─────────────┴──────────────────────────┘
|
|
320
632
|
|
|
321
633
|
File: /Users/you/.protokoll/companies/acme-corp.yaml
|
|
322
634
|
```
|
|
@@ -356,13 +668,21 @@ Ignored terms are words or phrases that Protokoll won't ask about during interac
|
|
|
356
668
|
protokoll ignored list
|
|
357
669
|
```
|
|
358
670
|
|
|
359
|
-
Output:
|
|
671
|
+
Output (compact table with row numbers):
|
|
360
672
|
```
|
|
361
673
|
Ignored terms (3):
|
|
362
674
|
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
675
|
+
┌─────┬───────────┬───────────┬──────────────┐
|
|
676
|
+
│ # │ ID │ Name │ Info │
|
|
677
|
+
├─────┼───────────┼───────────┼──────────────┤
|
|
678
|
+
│ 1 │ basically │ basically │ 1/8/2026 │
|
|
679
|
+
├─────┼───────────┼───────────┼──────────────┤
|
|
680
|
+
│ 2 │ like │ like │ 1/10/2026 │
|
|
681
|
+
├─────┼───────────┼───────────┼──────────────┤
|
|
682
|
+
│ 3 │ um │ um │ 1/12/2026 │
|
|
683
|
+
└─────┴───────────┴───────────┴──────────────┘
|
|
684
|
+
|
|
685
|
+
Use "ignored show <id>" to see full details for any entry.
|
|
366
686
|
```
|
|
367
687
|
|
|
368
688
|
### Show Ignored Term Details
|
package/guide/feedback.md
CHANGED
|
@@ -175,7 +175,7 @@ For comprehensive corrections, the system typically:
|
|
|
175
175
|
|
|
176
176
|
### Example: Complete Term Correction
|
|
177
177
|
|
|
178
|
-
When you
|
|
178
|
+
When you provide feedback: *"WCMP should be WCNP - Walmart's Native Cloud Platform"*
|
|
179
179
|
|
|
180
180
|
The model executes:
|
|
181
181
|
|