@taurgis/bonsai 3.2.0 → 3.2.2
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 +7 -4
- package/agents/agents/salesforce-docs-researcher.agent.md +14 -1
- package/agents/instructions/salesforce-research.instructions.md +2 -1
- package/bin/cli.mjs +9 -17
- package/dist/base-command.d.ts +22 -12
- package/dist/base-command.js +86 -49
- package/dist/commands/config/base.js +11 -2
- package/dist/commands/config/get.js +8 -12
- package/dist/commands/config/index.js +2 -2
- package/dist/commands/config/list.js +10 -16
- package/dist/commands/config/set.d.ts +2 -1
- package/dist/commands/config/set.js +34 -27
- package/dist/commands/config/unset.d.ts +2 -1
- package/dist/commands/config/unset.js +25 -24
- package/dist/commands/fetch.d.ts +7 -15
- package/dist/commands/fetch.js +57 -401
- package/dist/commands/import.d.ts +4 -9
- package/dist/commands/import.js +56 -284
- package/dist/commands/inspect.d.ts +7 -1
- package/dist/commands/inspect.js +103 -52
- package/dist/commands/list.d.ts +13 -1
- package/dist/commands/list.js +79 -32
- package/dist/commands/prune.d.ts +4 -1
- package/dist/commands/prune.js +55 -75
- package/dist/commands/status.d.ts +3 -2
- package/dist/commands/status.js +52 -79
- package/dist/hooks/command-not-found/suggest.d.ts +1 -0
- package/dist/hooks/command-not-found/suggest.js +66 -39
- package/dist/lib/argv.d.ts +24 -3
- package/dist/lib/argv.js +124 -53
- package/dist/lib/batch.d.ts +41 -0
- package/dist/lib/batch.js +39 -0
- package/dist/lib/cache-view.d.ts +21 -0
- package/dist/lib/cache-view.js +30 -0
- package/dist/lib/cli-emit.d.ts +28 -0
- package/dist/lib/cli-emit.js +44 -0
- package/dist/lib/cli-error-policy.d.ts +57 -0
- package/dist/lib/cli-error-policy.js +74 -0
- package/dist/lib/cli-flag-manifest.d.ts +5 -0
- package/dist/lib/cli-flag-manifest.js +8 -0
- package/dist/lib/cli-presentation.d.ts +39 -0
- package/dist/lib/cli-presentation.js +50 -0
- package/dist/lib/cli-result-types.d.ts +88 -0
- package/dist/lib/cli-result-types.js +2 -0
- package/dist/lib/config/index.d.ts +21 -3
- package/dist/lib/config/index.js +58 -3
- package/dist/lib/config-persist.d.ts +28 -0
- package/dist/lib/config-persist.js +29 -0
- package/dist/lib/envelope.d.ts +41 -3
- package/dist/lib/envelope.js +147 -4
- package/dist/lib/help-preflight.d.ts +5 -8
- package/dist/lib/help-preflight.js +13 -32
- package/dist/lib/json-meta.d.ts +0 -2
- package/dist/lib/json-meta.js +21 -25
- package/dist/lib/limit-flag.d.ts +11 -1
- package/dist/lib/limit-flag.js +19 -6
- package/dist/lib/parse-error-ux.d.ts +5 -0
- package/dist/lib/parse-error-ux.js +73 -0
- package/dist/lib/prune-flags.d.ts +28 -0
- package/dist/lib/prune-flags.js +74 -0
- package/dist/lib/research/artifact-index.d.ts +11 -2
- package/dist/lib/research/artifact-index.js +7 -4
- package/dist/lib/research/browser.d.ts +41 -2
- package/dist/lib/research/browser.js +139 -50
- package/dist/lib/research/capture.d.ts +24 -2
- package/dist/lib/research/capture.js +24 -4
- package/dist/lib/research/cli-io.d.ts +33 -0
- package/dist/lib/research/cli-io.js +27 -0
- package/dist/lib/research/compress.d.ts +7 -0
- package/dist/lib/research/compress.js +7 -3
- package/dist/lib/research/docs/capabilities.d.ts +15 -0
- package/dist/lib/research/docs/capabilities.js +5 -0
- package/dist/lib/research/docs/clean-dom.d.ts +2 -0
- package/dist/lib/research/docs/clean-dom.js +2 -0
- package/dist/lib/research/docs/code-blocks.d.ts +2 -0
- package/dist/lib/research/docs/code-blocks.js +2 -0
- package/dist/lib/research/docs/detect.d.ts +4 -0
- package/dist/lib/research/docs/detect.js +4 -0
- package/dist/lib/research/docs/machine-readable.d.ts +18 -0
- package/dist/lib/research/docs/machine-readable.js +10 -0
- package/dist/lib/research/docs/markdown-source.d.ts +20 -0
- package/dist/lib/research/docs/markdown-source.js +19 -2
- package/dist/lib/research/docs/quality-gates.d.ts +5 -0
- package/dist/lib/research/docs/quality-gates.js +4 -0
- package/dist/lib/research/docs/rsc.d.ts +9 -2
- package/dist/lib/research/docs/rsc.js +5 -2
- package/dist/lib/research/docs/section-artifacts.d.ts +12 -0
- package/dist/lib/research/docs/section-artifacts.js +12 -0
- package/dist/lib/research/docs/sections.d.ts +18 -0
- package/dist/lib/research/docs/sections.js +17 -1
- package/dist/lib/research/docs/source-map.d.ts +28 -0
- package/dist/lib/research/docs/source-map.js +27 -0
- package/dist/lib/research/docs/validate.d.ts +35 -2
- package/dist/lib/research/docs/validate.js +47 -2
- package/dist/lib/research/extract.d.ts +16 -0
- package/dist/lib/research/extract.js +12 -1
- package/dist/lib/research/fetch-command-service.d.ts +36 -0
- package/dist/lib/research/fetch-command-service.js +310 -0
- package/dist/lib/research/fetch-result.d.ts +114 -0
- package/dist/lib/research/fetch-result.js +212 -0
- package/dist/lib/research/fetcher.d.ts +46 -8
- package/dist/lib/research/fetcher.js +58 -30
- package/dist/lib/research/freshness.d.ts +54 -11
- package/dist/lib/research/freshness.js +91 -31
- package/dist/lib/research/import-command-service.d.ts +56 -0
- package/dist/lib/research/import-command-service.js +381 -0
- package/dist/lib/research/keywords.js +5 -1
- package/dist/lib/research/markdown.d.ts +12 -1
- package/dist/lib/research/markdown.js +13 -5
- package/dist/lib/research/persist-artifact.d.ts +23 -0
- package/dist/lib/research/persist-artifact.js +27 -0
- package/dist/lib/research/prompt-injection.d.ts +8 -0
- package/dist/lib/research/prompt-injection.js +42 -13
- package/dist/lib/research/proxy.d.ts +14 -8
- package/dist/lib/research/proxy.js +14 -10
- package/dist/lib/research/revalidate.d.ts +49 -20
- package/dist/lib/research/revalidate.js +80 -15
- package/dist/lib/research/schema.d.ts +7 -0
- package/dist/lib/research/schema.js +2 -0
- package/dist/lib/research/secret-scan.d.ts +6 -0
- package/dist/lib/research/secret-scan.js +8 -0
- package/dist/lib/research/secure-write.d.ts +4 -0
- package/dist/lib/research/secure-write.js +31 -2
- package/dist/lib/research/storage.d.ts +5 -1
- package/dist/lib/research/storage.js +8 -3
- package/dist/lib/research/summarize.d.ts +15 -0
- package/dist/lib/research/summarize.js +11 -0
- package/dist/lib/research/url.d.ts +9 -6
- package/dist/lib/research/url.js +33 -21
- package/dist/lib/text.d.ts +7 -2
- package/dist/lib/text.js +13 -2
- package/dist/lib/value-flags.d.ts +14 -0
- package/dist/lib/value-flags.js +28 -0
- package/dist/sites/coveo.d.ts +10 -0
- package/dist/sites/coveo.js +10 -0
- package/dist/sites/index.d.ts +16 -0
- package/dist/sites/index.js +16 -4
- package/dist/sites/markdown-twin.d.ts +31 -0
- package/dist/sites/markdown-twin.js +56 -0
- package/dist/sites/salesforce/fetch-page.d.ts +8 -2
- package/dist/sites/salesforce/fetch-page.js +14 -3
- package/dist/sites/salesforce/help-tooling-markdown.d.ts +30 -0
- package/dist/sites/salesforce/help-tooling-markdown.js +74 -0
- package/dist/sites/salesforce/index.d.ts +1 -0
- package/dist/sites/salesforce/index.js +1 -0
- package/dist/sites/salesforce-developer/fetch-page.d.ts +6 -1
- package/dist/sites/salesforce-developer/fetch-page.js +6 -1
- package/dist/sites/salesforce-developer/index.d.ts +1 -0
- package/dist/sites/salesforce-developer/index.js +1 -0
- package/dist/sites/salesforce-developer/route-markdown.d.ts +18 -6
- package/dist/sites/salesforce-developer/route-markdown.js +29 -67
- package/dist/sites/salesforce-doc-fetch.d.ts +39 -5
- package/dist/sites/salesforce-doc-fetch.js +52 -7
- package/dist/sites/salesforce-dom-probe.d.ts +20 -2
- package/dist/sites/salesforce-dom-probe.js +20 -2
- package/dist/sites/types.d.ts +14 -8
- package/dist/sites/types.js +3 -0
- package/oclif.manifest.json +104 -98
- package/package.json +19 -7
- package/agents/agents/official-docs-researcher.agent.md +0 -87
- package/agents/instructions/web-research.instructions.md +0 -44
- package/agents/skills/web-research/SKILL.md +0 -118
package/oclif.manifest.json
CHANGED
|
@@ -4,19 +4,19 @@
|
|
|
4
4
|
"aliases": [],
|
|
5
5
|
"args": {
|
|
6
6
|
"url": {
|
|
7
|
-
"description": "
|
|
7
|
+
"description": "HTTP(S) URL to research",
|
|
8
8
|
"name": "url",
|
|
9
9
|
"required": true
|
|
10
10
|
}
|
|
11
11
|
},
|
|
12
|
-
"description": "
|
|
12
|
+
"description": "Fetch a URL, convert the main content to Markdown, and cache compressed and detailed variants.\n\nUsually invoked as `bonsai <url>`; run `bonsai help fetch` for URL-form flags.",
|
|
13
13
|
"examples": [
|
|
14
14
|
{
|
|
15
|
-
"description": "
|
|
16
|
-
"command": "<%= config.bin %> https://docs.nestjs.com/ --topic \"Backend Frameworks\" --tags \"Node\" --tags \"NestJS\" --format detailed --ttl
|
|
15
|
+
"description": "cache docs with detailed output, topic, tags, and TTL",
|
|
16
|
+
"command": "<%= config.bin %> https://docs.nestjs.com/ --topic \"Backend Frameworks\" --tags \"Node\" --tags \"NestJS\" --format detailed --ttl 7d"
|
|
17
17
|
},
|
|
18
18
|
{
|
|
19
|
-
"description": "
|
|
19
|
+
"description": "cache a volatile page with compressed JSON output",
|
|
20
20
|
"command": "<%= config.bin %> https://news.ycombinator.com/ --format compressed --ttl 2h --json"
|
|
21
21
|
}
|
|
22
22
|
],
|
|
@@ -32,14 +32,14 @@
|
|
|
32
32
|
"aliases": [
|
|
33
33
|
"plan"
|
|
34
34
|
],
|
|
35
|
-
"description": "
|
|
35
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
36
36
|
"name": "read-only",
|
|
37
37
|
"allowNo": false,
|
|
38
38
|
"type": "boolean"
|
|
39
39
|
},
|
|
40
40
|
"topic": {
|
|
41
41
|
"char": "t",
|
|
42
|
-
"description": "
|
|
42
|
+
"description": "main research topic for metadata",
|
|
43
43
|
"name": "topic",
|
|
44
44
|
"hasDynamicHelp": false,
|
|
45
45
|
"multiple": false,
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
},
|
|
56
56
|
"format": {
|
|
57
57
|
"char": "f",
|
|
58
|
-
"description": "
|
|
58
|
+
"description": "output format",
|
|
59
59
|
"name": "format",
|
|
60
60
|
"default": "compressed",
|
|
61
61
|
"hasDynamicHelp": false,
|
|
@@ -81,39 +81,39 @@
|
|
|
81
81
|
},
|
|
82
82
|
"ttl": {
|
|
83
83
|
"char": "l",
|
|
84
|
-
"description": "
|
|
84
|
+
"description": "TTL duration for freshness (e.g. \"2h\", \"7d\", \"6m\")",
|
|
85
85
|
"name": "ttl",
|
|
86
86
|
"hasDynamicHelp": false,
|
|
87
87
|
"multiple": false,
|
|
88
88
|
"type": "option"
|
|
89
89
|
},
|
|
90
90
|
"max-age": {
|
|
91
|
-
"description": "maximum age
|
|
91
|
+
"description": "maximum cache age to accept (e.g. \"2h\", \"7d\", \"6m\")",
|
|
92
92
|
"name": "max-age",
|
|
93
93
|
"hasDynamicHelp": false,
|
|
94
94
|
"multiple": false,
|
|
95
95
|
"type": "option"
|
|
96
96
|
},
|
|
97
97
|
"force": {
|
|
98
|
-
"description": "
|
|
98
|
+
"description": "fetch fresh content, ignoring cached entries",
|
|
99
99
|
"name": "force",
|
|
100
100
|
"allowNo": false,
|
|
101
101
|
"type": "boolean"
|
|
102
102
|
},
|
|
103
103
|
"dry-run": {
|
|
104
|
-
"description": "
|
|
104
|
+
"description": "fetch and validate without writing cache",
|
|
105
105
|
"name": "dry-run",
|
|
106
106
|
"allowNo": false,
|
|
107
107
|
"type": "boolean"
|
|
108
108
|
},
|
|
109
109
|
"allow-stale": {
|
|
110
|
-
"description": "
|
|
110
|
+
"description": "suppress exit code 5 when stale cache is served within grace after failed revalidation",
|
|
111
111
|
"name": "allow-stale",
|
|
112
112
|
"allowNo": false,
|
|
113
113
|
"type": "boolean"
|
|
114
114
|
},
|
|
115
115
|
"rendered": {
|
|
116
|
-
"description": "
|
|
116
|
+
"description": "use browser-rendered capture for dynamic pages",
|
|
117
117
|
"name": "rendered",
|
|
118
118
|
"allowNo": false,
|
|
119
119
|
"type": "boolean"
|
|
@@ -138,7 +138,7 @@
|
|
|
138
138
|
"pluginName": "@taurgis/bonsai",
|
|
139
139
|
"pluginType": "core",
|
|
140
140
|
"strict": false,
|
|
141
|
-
"summary": "
|
|
141
|
+
"summary": "Fetch and cache URL research Markdown",
|
|
142
142
|
"enableJsonFlag": true,
|
|
143
143
|
"stdoutIsPrimaryData": true
|
|
144
144
|
},
|
|
@@ -146,27 +146,27 @@
|
|
|
146
146
|
"aliases": [],
|
|
147
147
|
"args": {
|
|
148
148
|
"url": {
|
|
149
|
-
"description": "
|
|
149
|
+
"description": "single source URL for single-source import",
|
|
150
150
|
"name": "url",
|
|
151
151
|
"required": false
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"description": "
|
|
154
|
+
"description": "Store supplied Markdown under one URL or a multi-source research note, using the same freshness and storage metadata as fetched pages.",
|
|
155
155
|
"examples": [
|
|
156
156
|
{
|
|
157
|
-
"description": "import detailed research for
|
|
158
|
-
"command": "
|
|
157
|
+
"description": "import detailed research for one URL from stdin",
|
|
158
|
+
"command": "printf \"# My Article\\n\" | <%= config.bin %> import https://example.com/docs --stdin --ttl 7d"
|
|
159
159
|
},
|
|
160
160
|
{
|
|
161
|
-
"description": "import research synthesized from multiple source URLs",
|
|
161
|
+
"description": "import a research note synthesized from multiple source URLs",
|
|
162
162
|
"command": "echo \"# Synthesized\" | <%= config.bin %> import --stdin --topic \"React docs\" --source-url https://react.dev/a --source-url https://react.dev/b"
|
|
163
163
|
},
|
|
164
164
|
{
|
|
165
|
-
"description": "import research from a
|
|
165
|
+
"description": "import research from a Markdown file",
|
|
166
166
|
"command": "<%= config.bin %> import https://example.com/docs --file path/to/notes.md"
|
|
167
167
|
},
|
|
168
168
|
{
|
|
169
|
-
"description": "import research from stdin
|
|
169
|
+
"description": "import research from stdin with the file placeholder",
|
|
170
170
|
"command": "cat notes.md | <%= config.bin %> import https://example.com/docs --file -"
|
|
171
171
|
}
|
|
172
172
|
],
|
|
@@ -182,7 +182,7 @@
|
|
|
182
182
|
"aliases": [
|
|
183
183
|
"plan"
|
|
184
184
|
],
|
|
185
|
-
"description": "
|
|
185
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
186
186
|
"name": "read-only",
|
|
187
187
|
"allowNo": false,
|
|
188
188
|
"type": "boolean"
|
|
@@ -194,14 +194,15 @@
|
|
|
194
194
|
"type": "boolean"
|
|
195
195
|
},
|
|
196
196
|
"file": {
|
|
197
|
-
"
|
|
197
|
+
"char": "f",
|
|
198
|
+
"description": "Markdown file to import, or \"-\" for stdin",
|
|
198
199
|
"name": "file",
|
|
199
200
|
"hasDynamicHelp": false,
|
|
200
201
|
"multiple": false,
|
|
201
202
|
"type": "option"
|
|
202
203
|
},
|
|
203
204
|
"input-format": {
|
|
204
|
-
"description": "
|
|
205
|
+
"description": "input content format",
|
|
205
206
|
"name": "input-format",
|
|
206
207
|
"default": "detailed",
|
|
207
208
|
"hasDynamicHelp": false,
|
|
@@ -214,7 +215,7 @@
|
|
|
214
215
|
},
|
|
215
216
|
"topic": {
|
|
216
217
|
"char": "t",
|
|
217
|
-
"description": "
|
|
218
|
+
"description": "main topic for this research note",
|
|
218
219
|
"name": "topic",
|
|
219
220
|
"hasDynamicHelp": false,
|
|
220
221
|
"multiple": false,
|
|
@@ -242,7 +243,7 @@
|
|
|
242
243
|
"type": "option"
|
|
243
244
|
},
|
|
244
245
|
"source-url": {
|
|
245
|
-
"description": "
|
|
246
|
+
"description": "source URLs for multi-source import (can be repeated)",
|
|
246
247
|
"name": "source-url",
|
|
247
248
|
"hasDynamicHelp": false,
|
|
248
249
|
"multiple": true,
|
|
@@ -250,12 +251,18 @@
|
|
|
250
251
|
},
|
|
251
252
|
"ttl": {
|
|
252
253
|
"char": "l",
|
|
253
|
-
"description": "
|
|
254
|
+
"description": "TTL duration for imported note freshness (e.g. \"2h\", \"7d\", \"6m\")",
|
|
254
255
|
"name": "ttl",
|
|
255
256
|
"hasDynamicHelp": false,
|
|
256
257
|
"multiple": false,
|
|
257
258
|
"type": "option"
|
|
258
259
|
},
|
|
260
|
+
"dry-run": {
|
|
261
|
+
"description": "validate import without writing cache",
|
|
262
|
+
"name": "dry-run",
|
|
263
|
+
"allowNo": false,
|
|
264
|
+
"type": "boolean"
|
|
265
|
+
},
|
|
259
266
|
"storage": {
|
|
260
267
|
"description": "override where this note is cached (secrets always stored globally)",
|
|
261
268
|
"name": "storage",
|
|
@@ -275,7 +282,7 @@
|
|
|
275
282
|
"pluginName": "@taurgis/bonsai",
|
|
276
283
|
"pluginType": "core",
|
|
277
284
|
"strict": true,
|
|
278
|
-
"summary": "Import agent-supplied
|
|
285
|
+
"summary": "Import agent-supplied Markdown into cache",
|
|
279
286
|
"enableJsonFlag": true,
|
|
280
287
|
"stdoutIsPrimaryData": true
|
|
281
288
|
},
|
|
@@ -283,19 +290,19 @@
|
|
|
283
290
|
"aliases": [],
|
|
284
291
|
"args": {
|
|
285
292
|
"url": {
|
|
286
|
-
"description": "
|
|
293
|
+
"description": "URL to inspect",
|
|
287
294
|
"name": "url",
|
|
288
295
|
"required": true
|
|
289
296
|
}
|
|
290
297
|
},
|
|
291
|
-
"description": "
|
|
298
|
+
"description": "Show frontmatter metadata and section children for cached URLs without printing content.",
|
|
292
299
|
"examples": [
|
|
293
300
|
{
|
|
294
|
-
"description": "inspect cached
|
|
301
|
+
"description": "inspect cached metadata for a URL",
|
|
295
302
|
"command": "<%= config.bin %> <%= command.id %> https://example.com/docs"
|
|
296
303
|
},
|
|
297
304
|
{
|
|
298
|
-
"description": "
|
|
305
|
+
"description": "inspect cached metadata as JSON",
|
|
299
306
|
"command": "<%= config.bin %> <%= command.id %> https://example.com/docs --json"
|
|
300
307
|
}
|
|
301
308
|
],
|
|
@@ -311,7 +318,7 @@
|
|
|
311
318
|
"aliases": [
|
|
312
319
|
"plan"
|
|
313
320
|
],
|
|
314
|
-
"description": "
|
|
321
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
315
322
|
"name": "read-only",
|
|
316
323
|
"allowNo": false,
|
|
317
324
|
"type": "boolean"
|
|
@@ -324,29 +331,29 @@
|
|
|
324
331
|
"pluginName": "@taurgis/bonsai",
|
|
325
332
|
"pluginType": "core",
|
|
326
333
|
"strict": false,
|
|
327
|
-
"summary": "Inspect cached research metadata for a URL
|
|
334
|
+
"summary": "Inspect cached research metadata for a URL",
|
|
328
335
|
"enableJsonFlag": true,
|
|
329
336
|
"stdoutIsPrimaryData": true
|
|
330
337
|
},
|
|
331
338
|
"list": {
|
|
332
339
|
"aliases": [],
|
|
333
340
|
"args": {},
|
|
334
|
-
"description": "
|
|
341
|
+
"description": "List page-level cached artifacts with source URLs, topic, tags, freshness, capture method, and token estimates.",
|
|
335
342
|
"examples": [
|
|
336
343
|
{
|
|
337
|
-
"description": "list
|
|
344
|
+
"description": "list cached entries",
|
|
338
345
|
"command": "<%= config.bin %> list"
|
|
339
346
|
},
|
|
340
347
|
{
|
|
341
|
-
"description": "list
|
|
348
|
+
"description": "list entries for a topic as JSON",
|
|
342
349
|
"command": "<%= config.bin %> list --topic \"React Suspense\" --json"
|
|
343
350
|
},
|
|
344
351
|
{
|
|
345
|
-
"description": "list
|
|
352
|
+
"description": "list fresh entries matching tags",
|
|
346
353
|
"command": "<%= config.bin %> list --freshness fresh --tags node --tags url"
|
|
347
354
|
},
|
|
348
355
|
{
|
|
349
|
-
"description": "list entries matching a
|
|
356
|
+
"description": "list entries matching a URL glob",
|
|
350
357
|
"command": "<%= config.bin %> list --url \"https://react.dev/*\""
|
|
351
358
|
}
|
|
352
359
|
],
|
|
@@ -362,14 +369,14 @@
|
|
|
362
369
|
"aliases": [
|
|
363
370
|
"plan"
|
|
364
371
|
],
|
|
365
|
-
"description": "
|
|
372
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
366
373
|
"name": "read-only",
|
|
367
374
|
"allowNo": false,
|
|
368
375
|
"type": "boolean"
|
|
369
376
|
},
|
|
370
377
|
"topic": {
|
|
371
378
|
"char": "t",
|
|
372
|
-
"description": "
|
|
379
|
+
"description": "exact topic (case-insensitive)",
|
|
373
380
|
"name": "topic",
|
|
374
381
|
"hasDynamicHelp": false,
|
|
375
382
|
"multiple": false,
|
|
@@ -377,21 +384,21 @@
|
|
|
377
384
|
},
|
|
378
385
|
"tags": {
|
|
379
386
|
"char": "g",
|
|
380
|
-
"description": "
|
|
387
|
+
"description": "tags to require (must match all)",
|
|
381
388
|
"name": "tags",
|
|
382
389
|
"hasDynamicHelp": false,
|
|
383
390
|
"multiple": true,
|
|
384
391
|
"type": "option"
|
|
385
392
|
},
|
|
386
393
|
"url": {
|
|
387
|
-
"description": "
|
|
394
|
+
"description": "source URL glob (case-insensitive, supports * wildcard)",
|
|
388
395
|
"name": "url",
|
|
389
396
|
"hasDynamicHelp": false,
|
|
390
397
|
"multiple": false,
|
|
391
398
|
"type": "option"
|
|
392
399
|
},
|
|
393
400
|
"freshness": {
|
|
394
|
-
"description": "
|
|
401
|
+
"description": "freshness state",
|
|
395
402
|
"name": "freshness",
|
|
396
403
|
"hasDynamicHelp": false,
|
|
397
404
|
"multiple": false,
|
|
@@ -403,7 +410,7 @@
|
|
|
403
410
|
"type": "option"
|
|
404
411
|
},
|
|
405
412
|
"artifact-type": {
|
|
406
|
-
"description": "
|
|
413
|
+
"description": "artifact type; section children are omitted from list - use inspect to see them",
|
|
407
414
|
"name": "artifact-type",
|
|
408
415
|
"hasDynamicHelp": false,
|
|
409
416
|
"multiple": false,
|
|
@@ -415,7 +422,7 @@
|
|
|
415
422
|
"type": "option"
|
|
416
423
|
},
|
|
417
424
|
"capture-method": {
|
|
418
|
-
"description": "
|
|
425
|
+
"description": "capture method",
|
|
419
426
|
"name": "capture-method",
|
|
420
427
|
"hasDynamicHelp": false,
|
|
421
428
|
"multiple": false,
|
|
@@ -429,7 +436,7 @@
|
|
|
429
436
|
"type": "option"
|
|
430
437
|
},
|
|
431
438
|
"limit": {
|
|
432
|
-
"description": "
|
|
439
|
+
"description": "result count (default 50, max 100)",
|
|
433
440
|
"name": "limit",
|
|
434
441
|
"default": 50,
|
|
435
442
|
"hasDynamicHelp": false,
|
|
@@ -444,25 +451,25 @@
|
|
|
444
451
|
"pluginName": "@taurgis/bonsai",
|
|
445
452
|
"pluginType": "core",
|
|
446
453
|
"strict": true,
|
|
447
|
-
"summary": "List cached research artifacts by metadata
|
|
454
|
+
"summary": "List cached research artifacts by metadata",
|
|
448
455
|
"enableJsonFlag": true,
|
|
449
456
|
"stdoutIsPrimaryData": true
|
|
450
457
|
},
|
|
451
458
|
"prune": {
|
|
452
459
|
"aliases": [],
|
|
453
460
|
"args": {},
|
|
454
|
-
"description": "
|
|
461
|
+
"description": "Delete cached artifacts by content age, idle time, URL glob, or artifact type.",
|
|
455
462
|
"examples": [
|
|
456
463
|
{
|
|
457
|
-
"description": "
|
|
458
|
-
"command": "<%= config.bin %> prune --older-than
|
|
464
|
+
"description": "preview pruning entries older than 30 days",
|
|
465
|
+
"command": "<%= config.bin %> prune --older-than 30d --dry-run"
|
|
459
466
|
},
|
|
460
467
|
{
|
|
461
|
-
"description": "
|
|
468
|
+
"description": "prune source artifacts older than 30 days",
|
|
462
469
|
"command": "<%= config.bin %> prune --older-than 30d --artifact-type source --yes"
|
|
463
470
|
},
|
|
464
471
|
{
|
|
465
|
-
"description": "prune entries matching a URL glob
|
|
472
|
+
"description": "prune entries matching a URL glob",
|
|
466
473
|
"command": "<%= config.bin %> prune --url \"https://react.dev/*\" --yes"
|
|
467
474
|
}
|
|
468
475
|
],
|
|
@@ -478,34 +485,34 @@
|
|
|
478
485
|
"aliases": [
|
|
479
486
|
"plan"
|
|
480
487
|
],
|
|
481
|
-
"description": "
|
|
488
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
482
489
|
"name": "read-only",
|
|
483
490
|
"allowNo": false,
|
|
484
491
|
"type": "boolean"
|
|
485
492
|
},
|
|
486
493
|
"older-than": {
|
|
487
|
-
"description": "
|
|
494
|
+
"description": "content age threshold (fetched_at, else validated_at), e.g. \"30d\"",
|
|
488
495
|
"name": "older-than",
|
|
489
496
|
"hasDynamicHelp": false,
|
|
490
497
|
"multiple": false,
|
|
491
498
|
"type": "option"
|
|
492
499
|
},
|
|
493
500
|
"inactive": {
|
|
494
|
-
"description": "
|
|
501
|
+
"description": "idle time threshold (validated_at, else fetched_at), e.g. \"14d\"",
|
|
495
502
|
"name": "inactive",
|
|
496
503
|
"hasDynamicHelp": false,
|
|
497
504
|
"multiple": false,
|
|
498
505
|
"type": "option"
|
|
499
506
|
},
|
|
500
507
|
"url": {
|
|
501
|
-
"description": "
|
|
508
|
+
"description": "source URL glob (case-insensitive, supports * wildcard)",
|
|
502
509
|
"name": "url",
|
|
503
510
|
"hasDynamicHelp": false,
|
|
504
511
|
"multiple": false,
|
|
505
512
|
"type": "option"
|
|
506
513
|
},
|
|
507
514
|
"artifact-type": {
|
|
508
|
-
"description": "
|
|
515
|
+
"description": "artifact type to prune, including section children",
|
|
509
516
|
"name": "artifact-type",
|
|
510
517
|
"hasDynamicHelp": false,
|
|
511
518
|
"multiple": false,
|
|
@@ -518,14 +525,14 @@
|
|
|
518
525
|
"type": "option"
|
|
519
526
|
},
|
|
520
527
|
"dry-run": {
|
|
521
|
-
"description": "
|
|
528
|
+
"description": "preview files without deleting",
|
|
522
529
|
"name": "dry-run",
|
|
523
530
|
"allowNo": false,
|
|
524
531
|
"type": "boolean"
|
|
525
532
|
},
|
|
526
533
|
"yes": {
|
|
527
534
|
"char": "y",
|
|
528
|
-
"description": "confirm deletion
|
|
535
|
+
"description": "confirm deletion (required unless --dry-run)",
|
|
529
536
|
"name": "yes",
|
|
530
537
|
"allowNo": false,
|
|
531
538
|
"type": "boolean"
|
|
@@ -538,7 +545,7 @@
|
|
|
538
545
|
"pluginName": "@taurgis/bonsai",
|
|
539
546
|
"pluginType": "core",
|
|
540
547
|
"strict": true,
|
|
541
|
-
"summary": "
|
|
548
|
+
"summary": "Prune cached research artifacts",
|
|
542
549
|
"enableJsonFlag": true,
|
|
543
550
|
"stdoutIsPrimaryData": true
|
|
544
551
|
},
|
|
@@ -546,19 +553,19 @@
|
|
|
546
553
|
"aliases": [],
|
|
547
554
|
"args": {
|
|
548
555
|
"url": {
|
|
549
|
-
"description": "
|
|
556
|
+
"description": "URL to check",
|
|
550
557
|
"name": "url",
|
|
551
558
|
"required": true
|
|
552
559
|
}
|
|
553
560
|
},
|
|
554
|
-
"description": "
|
|
561
|
+
"description": "Report cache hit/miss state, freshness, and the action the URL shorthand would take.",
|
|
555
562
|
"examples": [
|
|
556
563
|
{
|
|
557
|
-
"description": "check
|
|
564
|
+
"description": "check whether a URL is cached",
|
|
558
565
|
"command": "<%= config.bin %> <%= command.id %> https://example.com/docs"
|
|
559
566
|
},
|
|
560
567
|
{
|
|
561
|
-
"description": "
|
|
568
|
+
"description": "evaluate status with a specific tier and TTL",
|
|
562
569
|
"command": "<%= config.bin %> <%= command.id %> https://example.com/docs --tier volatile --ttl 2h"
|
|
563
570
|
}
|
|
564
571
|
],
|
|
@@ -574,15 +581,14 @@
|
|
|
574
581
|
"aliases": [
|
|
575
582
|
"plan"
|
|
576
583
|
],
|
|
577
|
-
"description": "
|
|
584
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
578
585
|
"name": "read-only",
|
|
579
586
|
"allowNo": false,
|
|
580
587
|
"type": "boolean"
|
|
581
588
|
},
|
|
582
589
|
"tier": {
|
|
583
|
-
"description": "freshness tier policy to evaluate
|
|
590
|
+
"description": "freshness tier policy to evaluate; when omitted, uses the cached entry's own tier",
|
|
584
591
|
"name": "tier",
|
|
585
|
-
"default": "standard",
|
|
586
592
|
"hasDynamicHelp": false,
|
|
587
593
|
"multiple": false,
|
|
588
594
|
"options": [
|
|
@@ -594,14 +600,14 @@
|
|
|
594
600
|
},
|
|
595
601
|
"ttl": {
|
|
596
602
|
"char": "l",
|
|
597
|
-
"description": "
|
|
603
|
+
"description": "TTL duration to evaluate freshness (e.g. \"2h\", \"7d\", \"6m\")",
|
|
598
604
|
"name": "ttl",
|
|
599
605
|
"hasDynamicHelp": false,
|
|
600
606
|
"multiple": false,
|
|
601
607
|
"type": "option"
|
|
602
608
|
},
|
|
603
609
|
"max-age": {
|
|
604
|
-
"description": "maximum age
|
|
610
|
+
"description": "maximum cache age to accept (e.g. \"2h\", \"7d\", \"6m\")",
|
|
605
611
|
"name": "max-age",
|
|
606
612
|
"hasDynamicHelp": false,
|
|
607
613
|
"multiple": false,
|
|
@@ -615,7 +621,7 @@
|
|
|
615
621
|
"pluginName": "@taurgis/bonsai",
|
|
616
622
|
"pluginType": "core",
|
|
617
623
|
"strict": false,
|
|
618
|
-
"summary": "Check
|
|
624
|
+
"summary": "Check cache status without fetching or writing",
|
|
619
625
|
"enableJsonFlag": true,
|
|
620
626
|
"stdoutIsPrimaryData": true
|
|
621
627
|
},
|
|
@@ -629,7 +635,7 @@
|
|
|
629
635
|
"command": "<%= config.bin %> <%= command.id %> get storage"
|
|
630
636
|
},
|
|
631
637
|
{
|
|
632
|
-
"description": "set
|
|
638
|
+
"description": "set project storage mode",
|
|
633
639
|
"command": "<%= config.bin %> <%= command.id %> set storage project --local"
|
|
634
640
|
}
|
|
635
641
|
],
|
|
@@ -645,7 +651,7 @@
|
|
|
645
651
|
"aliases": [
|
|
646
652
|
"plan"
|
|
647
653
|
],
|
|
648
|
-
"description": "
|
|
654
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
649
655
|
"name": "read-only",
|
|
650
656
|
"allowNo": false,
|
|
651
657
|
"type": "boolean"
|
|
@@ -658,7 +664,7 @@
|
|
|
658
664
|
"pluginName": "@taurgis/bonsai",
|
|
659
665
|
"pluginType": "core",
|
|
660
666
|
"strict": true,
|
|
661
|
-
"summary": "Manage research cache
|
|
667
|
+
"summary": "Manage research cache configuration",
|
|
662
668
|
"enableJsonFlag": true,
|
|
663
669
|
"stdoutIsPrimaryData": true
|
|
664
670
|
},
|
|
@@ -671,7 +677,7 @@
|
|
|
671
677
|
"required": false
|
|
672
678
|
}
|
|
673
679
|
},
|
|
674
|
-
"description": "Print a config value. Without --global/--local, shows the merged effective value
|
|
680
|
+
"description": "Print a config value. Without --global/--local, shows the merged effective value, in precedence order: a per-command override flag (e.g. `fetch --storage`) > env var > project file > user file > built-in default.\n\nValid keys: storage, summary.",
|
|
675
681
|
"examples": [
|
|
676
682
|
{
|
|
677
683
|
"description": "get the effective storage mode",
|
|
@@ -694,14 +700,14 @@
|
|
|
694
700
|
"aliases": [
|
|
695
701
|
"plan"
|
|
696
702
|
],
|
|
697
|
-
"description": "
|
|
703
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
698
704
|
"name": "read-only",
|
|
699
705
|
"allowNo": false,
|
|
700
706
|
"type": "boolean"
|
|
701
707
|
},
|
|
702
708
|
"global": {
|
|
703
709
|
"char": "g",
|
|
704
|
-
"description": "
|
|
710
|
+
"description": "read user-level config only",
|
|
705
711
|
"name": "global",
|
|
706
712
|
"allowNo": false,
|
|
707
713
|
"type": "boolean"
|
|
@@ -713,7 +719,7 @@
|
|
|
713
719
|
"charAliases": [
|
|
714
720
|
"p"
|
|
715
721
|
],
|
|
716
|
-
"description": "
|
|
722
|
+
"description": "read project-level config only",
|
|
717
723
|
"name": "local",
|
|
718
724
|
"allowNo": false,
|
|
719
725
|
"type": "boolean"
|
|
@@ -726,7 +732,7 @@
|
|
|
726
732
|
"pluginName": "@taurgis/bonsai",
|
|
727
733
|
"pluginType": "core",
|
|
728
734
|
"strict": true,
|
|
729
|
-
"summary": "Get
|
|
735
|
+
"summary": "Get a research configuration value",
|
|
730
736
|
"stdoutIsPrimaryData": true
|
|
731
737
|
},
|
|
732
738
|
"config:list": {
|
|
@@ -755,14 +761,14 @@
|
|
|
755
761
|
"aliases": [
|
|
756
762
|
"plan"
|
|
757
763
|
],
|
|
758
|
-
"description": "
|
|
764
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
759
765
|
"name": "read-only",
|
|
760
766
|
"allowNo": false,
|
|
761
767
|
"type": "boolean"
|
|
762
768
|
},
|
|
763
769
|
"global": {
|
|
764
770
|
"char": "g",
|
|
765
|
-
"description": "
|
|
771
|
+
"description": "show user-level config only",
|
|
766
772
|
"name": "global",
|
|
767
773
|
"allowNo": false,
|
|
768
774
|
"type": "boolean"
|
|
@@ -774,7 +780,7 @@
|
|
|
774
780
|
"charAliases": [
|
|
775
781
|
"p"
|
|
776
782
|
],
|
|
777
|
-
"description": "
|
|
783
|
+
"description": "show project-level config only",
|
|
778
784
|
"name": "local",
|
|
779
785
|
"allowNo": false,
|
|
780
786
|
"type": "boolean"
|
|
@@ -787,7 +793,7 @@
|
|
|
787
793
|
"pluginName": "@taurgis/bonsai",
|
|
788
794
|
"pluginType": "core",
|
|
789
795
|
"strict": true,
|
|
790
|
-
"summary": "List
|
|
796
|
+
"summary": "List research configuration values",
|
|
791
797
|
"stdoutIsPrimaryData": true
|
|
792
798
|
},
|
|
793
799
|
"config:set": {
|
|
@@ -804,14 +810,14 @@
|
|
|
804
810
|
"required": false
|
|
805
811
|
}
|
|
806
812
|
},
|
|
807
|
-
"description": "Persist a configuration value. Writes user-level config by default; pass --local
|
|
813
|
+
"description": "Persist a configuration value. Writes user-level config by default; pass --local for project-level config (.bonsai.json in cwd).\n\nValid keys: storage, summary. The inline form `<key>=<value>` is also accepted.",
|
|
808
814
|
"examples": [
|
|
809
815
|
{
|
|
810
|
-
"description": "store research cache
|
|
816
|
+
"description": "store research cache in the current project",
|
|
811
817
|
"command": "<%= config.bin %> config set storage project --local"
|
|
812
818
|
},
|
|
813
819
|
{
|
|
814
|
-
"description": "set the user-level default
|
|
820
|
+
"description": "set the user-level default with key=value",
|
|
815
821
|
"command": "<%= config.bin %> config set storage=global"
|
|
816
822
|
}
|
|
817
823
|
],
|
|
@@ -827,14 +833,14 @@
|
|
|
827
833
|
"aliases": [
|
|
828
834
|
"plan"
|
|
829
835
|
],
|
|
830
|
-
"description": "
|
|
836
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
831
837
|
"name": "read-only",
|
|
832
838
|
"allowNo": false,
|
|
833
839
|
"type": "boolean"
|
|
834
840
|
},
|
|
835
841
|
"global": {
|
|
836
842
|
"char": "g",
|
|
837
|
-
"description": "
|
|
843
|
+
"description": "write user-level config (default)",
|
|
838
844
|
"name": "global",
|
|
839
845
|
"allowNo": false,
|
|
840
846
|
"type": "boolean"
|
|
@@ -846,13 +852,13 @@
|
|
|
846
852
|
"charAliases": [
|
|
847
853
|
"p"
|
|
848
854
|
],
|
|
849
|
-
"description": "
|
|
855
|
+
"description": "write project-level config (.bonsai.json in cwd)",
|
|
850
856
|
"name": "local",
|
|
851
857
|
"allowNo": false,
|
|
852
858
|
"type": "boolean"
|
|
853
859
|
},
|
|
854
860
|
"dry-run": {
|
|
855
|
-
"description": "
|
|
861
|
+
"description": "preview write without saving",
|
|
856
862
|
"name": "dry-run",
|
|
857
863
|
"allowNo": false,
|
|
858
864
|
"type": "boolean"
|
|
@@ -865,7 +871,7 @@
|
|
|
865
871
|
"pluginName": "@taurgis/bonsai",
|
|
866
872
|
"pluginType": "core",
|
|
867
873
|
"strict": true,
|
|
868
|
-
"summary": "Set a research configuration key
|
|
874
|
+
"summary": "Set a research configuration key",
|
|
869
875
|
"stdoutIsPrimaryData": true
|
|
870
876
|
},
|
|
871
877
|
"config:unset": {
|
|
@@ -900,14 +906,14 @@
|
|
|
900
906
|
"aliases": [
|
|
901
907
|
"plan"
|
|
902
908
|
],
|
|
903
|
-
"description": "
|
|
909
|
+
"description": "(alias: --plan) block filesystem writes/deletes; network fetches still run; also honored via BONSAI_READ_ONLY/BONSAI_PLAN_MODE",
|
|
904
910
|
"name": "read-only",
|
|
905
911
|
"allowNo": false,
|
|
906
912
|
"type": "boolean"
|
|
907
913
|
},
|
|
908
914
|
"global": {
|
|
909
915
|
"char": "g",
|
|
910
|
-
"description": "
|
|
916
|
+
"description": "remove from user-level config (default)",
|
|
911
917
|
"name": "global",
|
|
912
918
|
"allowNo": false,
|
|
913
919
|
"type": "boolean"
|
|
@@ -919,13 +925,13 @@
|
|
|
919
925
|
"charAliases": [
|
|
920
926
|
"p"
|
|
921
927
|
],
|
|
922
|
-
"description": "
|
|
928
|
+
"description": "remove from project-level config (.bonsai.json in cwd)",
|
|
923
929
|
"name": "local",
|
|
924
930
|
"allowNo": false,
|
|
925
931
|
"type": "boolean"
|
|
926
932
|
},
|
|
927
933
|
"dry-run": {
|
|
928
|
-
"description": "
|
|
934
|
+
"description": "preview removal without saving",
|
|
929
935
|
"name": "dry-run",
|
|
930
936
|
"allowNo": false,
|
|
931
937
|
"type": "boolean"
|
|
@@ -938,9 +944,9 @@
|
|
|
938
944
|
"pluginName": "@taurgis/bonsai",
|
|
939
945
|
"pluginType": "core",
|
|
940
946
|
"strict": true,
|
|
941
|
-
"summary": "Remove a research configuration key
|
|
947
|
+
"summary": "Remove a research configuration key",
|
|
942
948
|
"stdoutIsPrimaryData": true
|
|
943
949
|
}
|
|
944
950
|
},
|
|
945
|
-
"version": "3.2.
|
|
951
|
+
"version": "3.2.2"
|
|
946
952
|
}
|