@swarmvaultai/cli 3.3.0 → 3.4.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 CHANGED
@@ -122,10 +122,11 @@ Run a whole-vault health check before handing the workspace to an agent or openi
122
122
 
123
123
  - checks workspace config and schema presence
124
124
  - reports graph, page, source, review, candidate, task, watch, migration, and retrieval state
125
+ - emits prioritized recommended next actions before the full check list
125
126
  - emits suggested follow-up commands for warnings and errors
126
127
  - supports `--json` for structured automation output
127
128
  - add `--repair` to rebuild safe derived retrieval artifacts
128
- - the live viewer workbench shows the same checks with details and copyable suggested commands
129
+ - the live viewer workbench shows the same recommendations and checks with details, copyable suggested commands, and safe direct repair
129
130
 
130
131
  ### `swarmvault source add|list|reload|review|guide|session|delete`
131
132
 
@@ -422,9 +423,9 @@ The MCP surface also exposes `swarmvault://schema`, `swarmvault://sessions`, `sw
422
423
 
423
424
  Start the local graph workspace backed by `state/graph.json`, `/api/search`, `/api/page`, local graph query/path/explain endpoints, and the workbench APIs for doctor, retrieval repair, capture, context packs, task start, and source reload.
424
425
 
425
- The workbench renders every vault doctor check with details, suggested commands that can be copied back to a terminal, safe one-click retrieval repair through `doctor --repair`, selectable capture modes (`ingest`, normalized `add`, or `inbox`), editable token budgets for context packs and task starts, and action receipts after workbench operations complete.
426
+ The workbench renders prioritized vault doctor recommendations, every check with details, suggested commands that can be copied back to a terminal, safe one-click retrieval repair through `doctor --repair`, selectable capture modes (`ingest`, normalized `add`, or `inbox`), title/tag capture fields, editable token budgets for context packs and task starts, and action receipts after workbench operations complete.
426
427
 
427
- It also exposes `/api/bookmarklet` and `/api/clip`, so a running local viewer can capture the current browser URL, selected text, markdown, HTML excerpts, and tags through the workbench or bookmarklet without leaving the browser.
428
+ It also exposes `/api/bookmarklet` and `/api/clip`, so a running local viewer can capture the current browser URL, page title, selected text, markdown, HTML excerpts, and tags through the workbench or bookmarklet without leaving the browser. URL-only bookmarklet clips use normalized `add`; selected text is imported through the inbox path.
428
429
 
429
430
  ### `swarmvault graph query "<question>" [--dfs] [--budget <n>]`
430
431
 
package/dist/index.js CHANGED
@@ -309,9 +309,9 @@ program.name("swarmvault").description("SwarmVault is a local-first knowledge co
309
309
  function readCliVersion() {
310
310
  try {
311
311
  const packageJson = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8"));
312
- return typeof packageJson.version === "string" && packageJson.version.trim() ? packageJson.version : "3.3.0";
312
+ return typeof packageJson.version === "string" && packageJson.version.trim() ? packageJson.version : "3.4.0";
313
313
  } catch {
314
- return "3.3.0";
314
+ return "3.4.0";
315
315
  }
316
316
  }
317
317
  function parsePositiveInt(value, fallback) {
@@ -2024,6 +2024,16 @@ program.command("doctor").description("Diagnose vault health across graph, retri
2024
2024
  log(
2025
2025
  `Sources ${report.counts.sources} | Managed ${report.counts.managedSources} | Pages ${report.counts.pages} | Nodes ${report.counts.nodes} | Edges ${report.counts.edges}`
2026
2026
  );
2027
+ if (report.recommendations.length) {
2028
+ log("Recommended next actions:");
2029
+ for (const recommendation of report.recommendations) {
2030
+ const action = recommendation.command ? ` ${recommendation.command}` : "";
2031
+ log(` [${recommendation.priority}] ${recommendation.label}:${action}`);
2032
+ if (recommendation.description) {
2033
+ log(` ${recommendation.description}`);
2034
+ }
2035
+ }
2036
+ }
2027
2037
  for (const check of report.checks) {
2028
2038
  log(`[${check.status}] ${check.label}: ${check.summary}`);
2029
2039
  if (check.detail) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@swarmvaultai/cli",
3
- "version": "3.3.0",
3
+ "version": "3.4.0",
4
4
  "description": "Global CLI for SwarmVault.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -44,7 +44,7 @@
44
44
  "prepublishOnly": "node ../../scripts/check-release-sync.mjs && node ../../scripts/check-published-manifests.mjs"
45
45
  },
46
46
  "dependencies": {
47
- "@swarmvaultai/engine": "3.3.0",
47
+ "@swarmvaultai/engine": "3.4.0",
48
48
  "commander": "^14.0.1"
49
49
  },
50
50
  "devDependencies": {