@hraness/wordcell 0.25.0 → 0.26.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 (49) hide show
  1. package/README.md +37 -35
  2. package/dist/capture.js +6 -6
  3. package/dist/cli-bin.js +14 -0
  4. package/dist/cli-release-c74c5m3k.js +799 -0
  5. package/dist/cli.js +26 -23
  6. package/dist/clip/acquire.js +3 -3
  7. package/dist/clip/cli.js +6 -6
  8. package/dist/clip/doctor.js +4 -4
  9. package/dist/evaluation-builder-bin.js +14 -0
  10. package/dist/evaluation-builder.js +12 -17
  11. package/dist/evaluation-kb.js +6 -6
  12. package/dist/graph-percolation.js +2 -2
  13. package/dist/index-3t0v457d.js +18 -0
  14. package/dist/{index-47893rgw.js → index-5h5awwh4.js} +4 -4
  15. package/dist/index-8pabwzqg.js +909 -0
  16. package/dist/{index-1wccy765.js → index-8w1zsgcm.js} +63 -930
  17. package/dist/{index-7drercgk.js → index-9fywek7g.js} +1 -1
  18. package/dist/{index-hz2wyggk.js → index-9paxge84.js} +1 -1
  19. package/dist/{index-mcpppwbq.js → index-9zkba8hr.js} +6 -6
  20. package/dist/{index-59bcxqee.js → index-j2jt49gr.js} +1 -1
  21. package/dist/index-ncgdaja4.js +64 -0
  22. package/dist/{index-nwrehke7.js → index-nd8v7r0z.js} +1 -1
  23. package/dist/{index-t3abkwk4.js → index-zbv70qmk.js} +15 -15
  24. package/dist/index.js +40 -40
  25. package/dist/pdf.js +2 -2
  26. package/dist/portfolio.js +5 -5
  27. package/dist/sdk.js +4 -4
  28. package/dist/{support-adj7bbge.js → support-ym4mpf7w.js} +19 -18
  29. package/dist/url-intelligence.js +3 -3
  30. package/dist/workflows/decision-context.js +5 -5
  31. package/dist/workflows/index.js +5 -5
  32. package/package.json +13 -6
  33. package/skills/wordcell/SKILL.md +10 -1
  34. package/src/cli-bin.ts +5 -0
  35. package/src/cli-help.ts +12 -0
  36. package/src/cli-program.ts +3 -57
  37. package/src/cli-release.ts +732 -0
  38. package/src/cli-startup.ts +76 -0
  39. package/src/cli-update.ts +53 -0
  40. package/src/cli.ts +5 -4
  41. package/src/clip/metadata-search-tool/src/openalex.rs +156 -8
  42. package/src/evaluation-builder-bin.ts +5 -0
  43. package/src/evaluation-builder-cli-args.ts +30 -0
  44. package/src/evaluation-builder.ts +3 -27
  45. package/src/import-supermemory.ts +3 -1
  46. package/dist/{index-hxyjer3x.js → index-hacpnaew.js} +3 -3
  47. package/dist/{index-qfqjfxaa.js → index-m9p2a4mj.js} +4 -4
  48. package/dist/{index-xwxy71ew.js → index-ncwzmsge.js} +5 -5
  49. package/dist/{index-e26mdwxz.js → index-wqx1x32f.js} +3 -3
@@ -4,7 +4,7 @@ import {
4
4
  } from "./index-h170byqw.js";
5
5
  import {
6
6
  packUntrustedSearchContext
7
- } from "./index-mcpppwbq.js";
7
+ } from "./index-9zkba8hr.js";
8
8
 
9
9
  // src/workflows/decision-context.ts
10
10
  var decisionContextWorkflow = defineWorkflow({
@@ -5,7 +5,7 @@ import {
5
5
  MAX_SEARCH_RESULTS,
6
6
  openKnowledgeBase,
7
7
  validateKnowledgeBaseSearchHistory
8
- } from "./index-mcpppwbq.js";
8
+ } from "./index-9zkba8hr.js";
9
9
  import {
10
10
  expandSearchRequest,
11
11
  parseSearchRules
@@ -12,14 +12,9 @@ import {
12
12
  UntrustedContentBudgetError,
13
13
  createUntrustedToolResult
14
14
  } from "./index-4j3tt0c3.js";
15
- import {
16
- MAX_RERANK_CANDIDATES,
17
- MAX_RERANK_SNIPPET_BYTES,
18
- applyRerank
19
- } from "./index-j70m75wd.js";
20
15
  import {
21
16
  percolateWithGraph
22
- } from "./index-e26mdwxz.js";
17
+ } from "./index-wqx1x32f.js";
23
18
  import {
24
19
  openGraphAuthority
25
20
  } from "./index-3gc2yk4k.js";
@@ -27,6 +22,11 @@ import {
27
22
  validateGraphPercolationOptions,
28
23
  validateGraphQueryRequest
29
24
  } from "./index-pgtm2nhf.js";
25
+ import {
26
+ MAX_RERANK_CANDIDATES,
27
+ MAX_RERANK_SNIPPET_BYTES,
28
+ applyRerank
29
+ } from "./index-j70m75wd.js";
30
30
  import {
31
31
  GitHistoryError,
32
32
  gitHistoryForNotes,
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  MAX_SEARCH_RESULTS,
4
4
  openKnowledgeBase
5
- } from "./index-mcpppwbq.js";
5
+ } from "./index-9zkba8hr.js";
6
6
  import {
7
7
  MAX_EVALUATION_EVIDENCE_BYTES,
8
8
  redactEvaluationMachinePaths
@@ -0,0 +1,64 @@
1
+ // @bun
2
+ import {
3
+ isEvaluationBuilderHelp
4
+ } from "./index-3t0v457d.js";
5
+ import {
6
+ parseCliStartupCommand
7
+ } from "./index-8pabwzqg.js";
8
+ import {
9
+ findKbPackageRoot
10
+ } from "./index-4knsp9qj.js";
11
+ import {
12
+ __require
13
+ } from "./index-z1w83f81.js";
14
+
15
+ // src/cli-update.ts
16
+ import { runCliUpdate } from "@hraness/cli-update";
17
+ import { readFileSync } from "fs";
18
+ import { dirname, join } from "path";
19
+ function wordcellUpdateOptions(bin, entrypoint, argv) {
20
+ const packageRoot = findKbPackageRoot(dirname(entrypoint));
21
+ const manifest = JSON.parse(readFileSync(join(packageRoot, "package.json"), "utf8"));
22
+ if (manifest === null || typeof manifest !== "object" || !("version" in manifest) || typeof manifest.version !== "string") {
23
+ throw new Error("Wordcell package version is missing.");
24
+ }
25
+ const effectFree = bin === "wordcell" ? parseCliStartupCommand(argv) !== undefined : isEvaluationBuilderHelp(argv);
26
+ return {
27
+ packageName: "@hraness/wordcell",
28
+ version: manifest.version,
29
+ binName: bin,
30
+ entrypoint,
31
+ argv: effectFree && argv[0] === "update" ? ["--help"] : argv,
32
+ provider: { kind: "github", repository: "hraness/wordcell", tagPrefix: "v", assetName: "hraness-wordcell-{version}.tgz" },
33
+ ignoreScripts: true,
34
+ effectFree,
35
+ suppressAutomatic: bin === "wordcell" && argv[0] === "support",
36
+ async verifyArtifact(artifact) {
37
+ const { verifyUpdateArtifact } = await import("./cli-release-c74c5m3k.js");
38
+ await verifyUpdateArtifact(artifact);
39
+ }
40
+ };
41
+ }
42
+ async function runWordcellBin(bin, entrypoint, argv, dependencies = {}) {
43
+ const update = await (dependencies.update ?? runCliUpdate)(wordcellUpdateOptions(bin, entrypoint, argv));
44
+ if (update.handled)
45
+ return update.exitCode;
46
+ try {
47
+ if (dependencies.run)
48
+ return await dependencies.run();
49
+ if (bin === "wordcell") {
50
+ const { runStandaloneCli } = await import("./cli.js");
51
+ return await runStandaloneCli(argv);
52
+ }
53
+ const { runKbEvidenceRoutingBuildCli, kbEvidenceRoutingBuildUsage } = await import("./evaluation-builder.js");
54
+ if (isEvaluationBuilderHelp(argv))
55
+ console.log(kbEvidenceRoutingBuildUsage);
56
+ else
57
+ await runKbEvidenceRoutingBuildCli(argv);
58
+ return 0;
59
+ } finally {
60
+ await update.release();
61
+ }
62
+ }
63
+
64
+ export { runWordcellBin };
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  isolatedAgentBrowserEnvironment
4
- } from "./index-xwxy71ew.js";
4
+ } from "./index-ncwzmsge.js";
5
5
  import {
6
6
  BoundedByteBuffer
7
7
  } from "./index-gh719d91.js";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  acquireArchiveTodaySnapshot,
4
4
  discoverArchiveTodaySnapshot
5
- } from "./index-hxyjer3x.js";
5
+ } from "./index-hacpnaew.js";
6
6
  import {
7
7
  canonicalizeUrl,
8
8
  chooseBestExtraction,
@@ -18,7 +18,7 @@ import {
18
18
  inspectClipEnvironment,
19
19
  renderAdapterCapabilities,
20
20
  renderDoctorReport
21
- } from "./index-nwrehke7.js";
21
+ } from "./index-nd8v7r0z.js";
22
22
  import {
23
23
  cloneBrowserProfile
24
24
  } from "./index-5n05se68.js";
@@ -34,7 +34,7 @@ import {
34
34
  renderCookiePermissionNotice,
35
35
  renderCookiePermissionRecovery,
36
36
  setCookiePermissionReporter
37
- } from "./index-xwxy71ew.js";
37
+ } from "./index-ncwzmsge.js";
38
38
  import {
39
39
  CONTENT_REWRITE_TRUNCATION_WARNING,
40
40
  buildClipMarkdown,
@@ -60,6 +60,15 @@ import {
60
60
  renderCookieHeader,
61
61
  renderNetscapeCookieJar
62
62
  } from "./index-2gv8y733.js";
63
+ import {
64
+ abortCaptureBundle,
65
+ beginCaptureBundle,
66
+ commitCaptureBundle,
67
+ redactSensitiveText,
68
+ redactSensitiveTextWithCount,
69
+ sanitizeArtifactUrl,
70
+ writeCaptureBundle
71
+ } from "./index-mxxxytys.js";
63
72
  import {
64
73
  startNetworkProxy
65
74
  } from "./index-w2zc0vwa.js";
@@ -68,23 +77,14 @@ import {
68
77
  decodeBytes,
69
78
  safeFetch
70
79
  } from "./index-e5fbsywq.js";
80
+ import {
81
+ BoundedByteBuffer
82
+ } from "./index-gh719d91.js";
71
83
  import {
72
84
  captureUrl,
73
85
  parseArguments,
74
86
  usage
75
87
  } from "./index-byz4kzww.js";
76
- import {
77
- BoundedByteBuffer
78
- } from "./index-gh719d91.js";
79
- import {
80
- abortCaptureBundle,
81
- beginCaptureBundle,
82
- commitCaptureBundle,
83
- redactSensitiveText,
84
- redactSensitiveTextWithCount,
85
- sanitizeArtifactUrl,
86
- writeCaptureBundle
87
- } from "./index-mxxxytys.js";
88
88
  import {
89
89
  sanitizeTerminalLine,
90
90
  sanitizeTerminalText
package/dist/index.js CHANGED
@@ -19,6 +19,11 @@ import {
19
19
  import {
20
20
  initVault
21
21
  } from "./index-23z4zxgg.js";
22
+ import {
23
+ DEFAULT_SYSTEMONE_ENDPOINT,
24
+ DEFAULT_SYSTEMONE_MODEL,
25
+ createTypeSafeReranker
26
+ } from "./index-9rf81m0p.js";
22
27
  import {
23
28
  MAX_SOURCE_DISPOSITION_EVIDENCE,
24
29
  MAX_SOURCE_INBOX_CONNECTIONS,
@@ -27,17 +32,12 @@ import {
27
32
  MAX_SOURCE_INBOX_RESULTS,
28
33
  sourceInbox
29
34
  } from "./index-pj501bh1.js";
30
- import {
31
- DEFAULT_SYSTEMONE_ENDPOINT,
32
- DEFAULT_SYSTEMONE_MODEL,
33
- createTypeSafeReranker
34
- } from "./index-9rf81m0p.js";
35
35
  import {
36
36
  FrozenEvaluationSnapshotError,
37
37
  knowledgeBaseEvaluationRetrieverIds,
38
38
  openKnowledgeBaseEvaluation,
39
39
  verifyFrozenEvaluationSnapshot
40
- } from "./index-59bcxqee.js";
40
+ } from "./index-j2jt49gr.js";
41
41
  import {
42
42
  DEFAULT_SEARCH_RESULTS,
43
43
  MAX_SEARCH_CANDIDATES,
@@ -50,7 +50,7 @@ import {
50
50
  packUntrustedSearchContext,
51
51
  searchEvidenceRank,
52
52
  validateKnowledgeBaseSearchHistory
53
- } from "./index-mcpppwbq.js";
53
+ } from "./index-9zkba8hr.js";
54
54
  import"./index-adx6khj5.js";
55
55
  import {
56
56
  MAX_EMBEDDING_MODEL_BYTES,
@@ -70,31 +70,20 @@ import {
70
70
  } from "./index-fp732bgg.js";
71
71
  import"./index-4j3tt0c3.js";
72
72
  import {
73
- MAX_RERANK_CANDIDATES,
74
- MAX_RERANK_SNIPPET_BYTES,
75
- MAX_RERANK_STATE_BYTES,
76
- applyRerank
77
- } from "./index-j70m75wd.js";
73
+ percolateWithGraph
74
+ } from "./index-wqx1x32f.js";
78
75
  import {
79
- MAX_BOOTSTRAP_RESAMPLES,
80
- MAX_EVALUATION_DIAGNOSTICS,
81
- MAX_EVALUATION_EVIDENCE_BYTES,
82
- MAX_EVALUATION_QRELS_PER_QUERY,
83
- MAX_EVALUATION_QUERIES,
84
- MAX_EVALUATION_RESULTS_PER_QUERY,
85
- MAX_EVALUATION_RETRIEVERS,
86
- MAX_EVALUATION_TEXT_BYTES,
87
- MAX_EVALUATION_TIMEOUT_MS,
88
- RETRIEVAL_EVALUATION_REPORT_VERSION,
89
- RETRIEVAL_EVALUATION_SCHEMA_VERSION,
90
- buildRetrievalEvaluationReport,
91
- pairedBootstrapConfidenceInterval,
92
- parseRetrievalEvaluationCorpus,
93
- runRetrievalEvaluation
94
- } from "./index-b88v3vtm.js";
76
+ createGraphSnapshot,
77
+ openGraphAuthority,
78
+ queryGraph,
79
+ rebuildGraph,
80
+ verifyGraph
81
+ } from "./index-3gc2yk4k.js";
95
82
  import {
96
- percolateWithGraph
97
- } from "./index-e26mdwxz.js";
83
+ GRAPH_LIMITS,
84
+ GraphAuthorityError,
85
+ validateGraphQueryRequest
86
+ } from "./index-pgtm2nhf.js";
98
87
  import {
99
88
  DEFAULT_PERCOLATION_LIMIT,
100
89
  DEFAULT_PERCOLATION_MIN_SUPPORT,
@@ -117,17 +106,28 @@ import {
117
106
  percolateVault
118
107
  } from "./index-bdwcjvr4.js";
119
108
  import {
120
- createGraphSnapshot,
121
- openGraphAuthority,
122
- queryGraph,
123
- rebuildGraph,
124
- verifyGraph
125
- } from "./index-3gc2yk4k.js";
109
+ MAX_RERANK_CANDIDATES,
110
+ MAX_RERANK_SNIPPET_BYTES,
111
+ MAX_RERANK_STATE_BYTES,
112
+ applyRerank
113
+ } from "./index-j70m75wd.js";
126
114
  import {
127
- GRAPH_LIMITS,
128
- GraphAuthorityError,
129
- validateGraphQueryRequest
130
- } from "./index-pgtm2nhf.js";
115
+ MAX_BOOTSTRAP_RESAMPLES,
116
+ MAX_EVALUATION_DIAGNOSTICS,
117
+ MAX_EVALUATION_EVIDENCE_BYTES,
118
+ MAX_EVALUATION_QRELS_PER_QUERY,
119
+ MAX_EVALUATION_QUERIES,
120
+ MAX_EVALUATION_RESULTS_PER_QUERY,
121
+ MAX_EVALUATION_RETRIEVERS,
122
+ MAX_EVALUATION_TEXT_BYTES,
123
+ MAX_EVALUATION_TIMEOUT_MS,
124
+ RETRIEVAL_EVALUATION_REPORT_VERSION,
125
+ RETRIEVAL_EVALUATION_SCHEMA_VERSION,
126
+ buildRetrievalEvaluationReport,
127
+ pairedBootstrapConfidenceInterval,
128
+ parseRetrievalEvaluationCorpus,
129
+ runRetrievalEvaluation
130
+ } from "./index-b88v3vtm.js";
131
131
  import {
132
132
  GitHistoryError,
133
133
  MAX_GIT_HISTORY_COMMITS,
package/dist/pdf.js CHANGED
@@ -24,12 +24,12 @@ import {
24
24
  resolvePdfTools,
25
25
  runPdfCapture,
26
26
  runPdfToolCommand
27
- } from "./index-qfqjfxaa.js";
27
+ } from "./index-m9p2a4mj.js";
28
28
  import"./index-k86wepd8.js";
29
29
  import"./index-cd75vky9.js";
30
+ import"./index-mxxxytys.js";
30
31
  import"./index-e5fbsywq.js";
31
32
  import"./index-gh719d91.js";
32
- import"./index-mxxxytys.js";
33
33
  import"./index-1xxnjn0d.js";
34
34
  import"./index-z1w83f81.js";
35
35
 
package/dist/portfolio.js CHANGED
@@ -20,16 +20,16 @@ import {
20
20
  selectAuthorizedVaults,
21
21
  snapshotPortfolioRegistry,
22
22
  validateResolvedPortfolioVaults
23
- } from "./index-hz2wyggk.js";
24
- import"./index-mcpppwbq.js";
23
+ } from "./index-9paxge84.js";
24
+ import"./index-9zkba8hr.js";
25
25
  import"./index-adx6khj5.js";
26
26
  import"./index-fp732bgg.js";
27
27
  import"./index-4j3tt0c3.js";
28
- import"./index-j70m75wd.js";
29
- import"./index-e26mdwxz.js";
30
- import"./index-bdwcjvr4.js";
28
+ import"./index-wqx1x32f.js";
31
29
  import"./index-3gc2yk4k.js";
32
30
  import"./index-pgtm2nhf.js";
31
+ import"./index-bdwcjvr4.js";
32
+ import"./index-j70m75wd.js";
33
33
  import"./index-1gwbassd.js";
34
34
  import"./index-ahyhryb8.js";
35
35
  import"./index-1xxnjn0d.js";
package/dist/sdk.js CHANGED
@@ -11,15 +11,15 @@ import {
11
11
  packUntrustedSearchContext,
12
12
  searchEvidenceRank,
13
13
  validateKnowledgeBaseSearchHistory
14
- } from "./index-mcpppwbq.js";
14
+ } from "./index-9zkba8hr.js";
15
15
  import"./index-adx6khj5.js";
16
16
  import"./index-fp732bgg.js";
17
17
  import"./index-4j3tt0c3.js";
18
- import"./index-j70m75wd.js";
19
- import"./index-e26mdwxz.js";
20
- import"./index-bdwcjvr4.js";
18
+ import"./index-wqx1x32f.js";
21
19
  import"./index-3gc2yk4k.js";
22
20
  import"./index-pgtm2nhf.js";
21
+ import"./index-bdwcjvr4.js";
22
+ import"./index-j70m75wd.js";
23
23
  import"./index-1gwbassd.js";
24
24
  import"./index-ahyhryb8.js";
25
25
  import"./index-1xxnjn0d.js";
@@ -2,43 +2,44 @@
2
2
  import {
3
3
  parseArguments as parseArguments2,
4
4
  parseUrlMetadataArguments
5
- } from "./index-1wccy765.js";
6
- import"./index-47893rgw.js";
5
+ } from "./index-8w1zsgcm.js";
6
+ import"./index-5h5awwh4.js";
7
7
  import {
8
8
  parsePdfArguments
9
- } from "./index-qfqjfxaa.js";
10
- import"./index-hz2wyggk.js";
9
+ } from "./index-m9p2a4mj.js";
10
+ import"./index-9paxge84.js";
11
11
  import"./index-j4zgmzjr.js";
12
- import"./index-t3abkwk4.js";
13
- import"./index-hxyjer3x.js";
12
+ import"./index-npg9z1a4.js";
13
+ import"./index-zbv70qmk.js";
14
+ import"./index-hacpnaew.js";
14
15
  import"./index-k86wepd8.js";
15
- import"./index-nwrehke7.js";
16
+ import"./index-nd8v7r0z.js";
16
17
  import"./index-5n05se68.js";
17
- import"./index-xwxy71ew.js";
18
+ import"./index-8pabwzqg.js";
19
+ import"./index-ncwzmsge.js";
18
20
  import"./index-cd75vky9.js";
19
21
  import"./index-2gv8y733.js";
22
+ import"./index-mxxxytys.js";
20
23
  import"./index-w2zc0vwa.js";
21
24
  import"./index-e5fbsywq.js";
25
+ import"./index-gh719d91.js";
22
26
  import {
23
27
  parseArguments
24
28
  } from "./index-byz4kzww.js";
25
- import"./index-gh719d91.js";
26
- import"./index-npg9z1a4.js";
27
- import"./index-mxxxytys.js";
28
29
  import"./index-23z4zxgg.js";
29
- import"./index-pj501bh1.js";
30
30
  import"./index-9rf81m0p.js";
31
- import"./index-59bcxqee.js";
32
- import"./index-mcpppwbq.js";
31
+ import"./index-pj501bh1.js";
32
+ import"./index-j2jt49gr.js";
33
+ import"./index-9zkba8hr.js";
33
34
  import"./index-adx6khj5.js";
34
35
  import"./index-fp732bgg.js";
35
36
  import"./index-4j3tt0c3.js";
36
- import"./index-j70m75wd.js";
37
- import"./index-b88v3vtm.js";
38
- import"./index-e26mdwxz.js";
39
- import"./index-bdwcjvr4.js";
37
+ import"./index-wqx1x32f.js";
40
38
  import"./index-3gc2yk4k.js";
41
39
  import"./index-pgtm2nhf.js";
40
+ import"./index-bdwcjvr4.js";
41
+ import"./index-j70m75wd.js";
42
+ import"./index-b88v3vtm.js";
42
43
  import"./index-1gwbassd.js";
43
44
  import"./index-ahyhryb8.js";
44
45
  import"./index-1xxnjn0d.js";
@@ -10,7 +10,7 @@ import {
10
10
  readUrlMetadataDocument,
11
11
  renderUrlMetadataDocument,
12
12
  writeUrlMetadataDocument
13
- } from "./index-47893rgw.js";
13
+ } from "./index-5h5awwh4.js";
14
14
  import {
15
15
  ARCHIVE_TODAY_HOSTS,
16
16
  ArchiveTodayFailure,
@@ -23,10 +23,10 @@ import {
23
23
  parseMetadataSearchResponse,
24
24
  rankMetadataSearchResults,
25
25
  selectNewestArchiveTodayMemento
26
- } from "./index-hxyjer3x.js";
26
+ } from "./index-hacpnaew.js";
27
+ import"./index-mxxxytys.js";
27
28
  import"./index-e5fbsywq.js";
28
29
  import"./index-gh719d91.js";
29
- import"./index-mxxxytys.js";
30
30
  import"./index-1xxnjn0d.js";
31
31
  import"./index-qkesh4c6.js";
32
32
  import"./index-z1w83f81.js";
@@ -1,17 +1,17 @@
1
1
  // @bun
2
2
  import {
3
3
  decisionContextWorkflow
4
- } from "../index-7drercgk.js";
4
+ } from "../index-9fywek7g.js";
5
5
  import"../index-h170byqw.js";
6
- import"../index-mcpppwbq.js";
6
+ import"../index-9zkba8hr.js";
7
7
  import"../index-adx6khj5.js";
8
8
  import"../index-fp732bgg.js";
9
9
  import"../index-4j3tt0c3.js";
10
- import"../index-j70m75wd.js";
11
- import"../index-e26mdwxz.js";
12
- import"../index-bdwcjvr4.js";
10
+ import"../index-wqx1x32f.js";
13
11
  import"../index-3gc2yk4k.js";
14
12
  import"../index-pgtm2nhf.js";
13
+ import"../index-bdwcjvr4.js";
14
+ import"../index-j70m75wd.js";
15
15
  import"../index-1gwbassd.js";
16
16
  import"../index-ahyhryb8.js";
17
17
  import"../index-1xxnjn0d.js";
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  decisionContextWorkflow
4
- } from "../index-7drercgk.js";
4
+ } from "../index-9fywek7g.js";
5
5
  import {
6
6
  explainChangeWorkflow
7
7
  } from "../index-e4fagfjz.js";
@@ -9,15 +9,15 @@ import {
9
9
  planRadarWorkflow
10
10
  } from "../index-rdd5f7jj.js";
11
11
  import"../index-h170byqw.js";
12
- import"../index-mcpppwbq.js";
12
+ import"../index-9zkba8hr.js";
13
13
  import"../index-adx6khj5.js";
14
14
  import"../index-fp732bgg.js";
15
15
  import"../index-4j3tt0c3.js";
16
- import"../index-j70m75wd.js";
17
- import"../index-e26mdwxz.js";
18
- import"../index-bdwcjvr4.js";
16
+ import"../index-wqx1x32f.js";
19
17
  import"../index-3gc2yk4k.js";
20
18
  import"../index-pgtm2nhf.js";
19
+ import"../index-bdwcjvr4.js";
20
+ import"../index-j70m75wd.js";
21
21
  import"../index-1gwbassd.js";
22
22
  import"../index-ahyhryb8.js";
23
23
  import"../index-1xxnjn0d.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hraness/wordcell",
3
- "version": "0.25.0",
3
+ "version": "0.26.0",
4
4
  "description": "Wordcell keeps decisions, plans, and sources as Markdown beside your code, so coding agents can find them from the file they are about to change.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -311,8 +311,8 @@
311
311
  }
312
312
  },
313
313
  "bin": {
314
- "wordcell": "./dist/cli.js",
315
- "wordcell-evaluation-builder": "./dist/evaluation-builder.js"
314
+ "wordcell": "./dist/cli-bin.js",
315
+ "wordcell-evaluation-builder": "./dist/evaluation-builder-bin.js"
316
316
  },
317
317
  "main": "./dist/index.js",
318
318
  "types": "./src/index.ts",
@@ -472,14 +472,20 @@
472
472
  "assets/agent-skill.svg",
473
473
  "src/support.ts",
474
474
  "src/support-profile.ts",
475
- "src/directory-sync.ts"
475
+ "src/directory-sync.ts",
476
+ "src/cli-bin.ts",
477
+ "src/cli-startup.ts",
478
+ "src/cli-update.ts",
479
+ "src/cli-release.ts",
480
+ "src/evaluation-builder-bin.ts",
481
+ "src/evaluation-builder-cli-args.ts"
476
482
  ],
477
483
  "scripts": {
478
484
  "kb:refresh": "bunx --bun --package https://github.com/hraness/wordcell/releases/download/v0.24.1/hraness-wordcell-0.24.1.tgz wordcell refresh --root kb",
479
485
  "kb:check:lane": "bunx --bun --package https://github.com/hraness/wordcell/releases/download/v0.24.1/hraness-wordcell-0.24.1.tgz wordcell check --root kb --no-catalog",
480
486
  "kb:check": "bunx --bun --package https://github.com/hraness/wordcell/releases/download/v0.24.1/hraness-wordcell-0.24.1.tgz wordcell check --root kb && bunx --bun --package https://github.com/hraness/wordcell/releases/download/v0.24.1/hraness-wordcell-0.24.1.tgz wordcell agents check --root kb --repo .",
481
487
  "kb:catalog": "bunx --bun --package https://github.com/hraness/wordcell/releases/download/v0.24.1/hraness-wordcell-0.24.1.tgz wordcell catalog --root kb",
482
- "build": "bun -e 'await (await import(\"node:fs/promises\")).rm(\"./dist\", { recursive: true, force: true })' && bun build ./src/index.ts ./src/publish.ts ./src/publish-model.ts ./src/publish-search.ts ./src/agent-context.ts ./src/agent-guide-audit.ts ./src/attachments.ts ./src/authoring.ts ./src/benchmark.ts ./src/clip/browser-profiles.ts ./src/capture.ts ./src/cli.ts ./src/clip/acquire.ts ./src/clip/args.ts ./src/clip/bounded-byte-buffer.ts ./src/clip/bundle-reader.ts ./src/clip/cli.ts ./src/clip/cookies.ts ./src/clip/doctor.ts ./src/clip/jobs.ts ./src/clip/network.ts ./src/clip/network-proxy.ts ./src/clip/persist.ts ./src/clip/refresh.ts ./src/clip/terminal.ts ./src/evaluation.ts ./src/evaluation-builder.ts ./src/evaluation-kb.ts ./src/git.ts ./src/graph.ts ./src/graph-percolation.ts ./src/graph-authority.ts ./src/navigation.ts ./src/pdf.ts ./src/percolate.ts ./src/portfolio.ts ./src/query.ts ./src/rerank.ts ./src/rerank-typesafe.ts ./src/repository-memory.ts ./src/sdk.ts ./src/search.ts ./src/search-rules.ts ./src/semantic.ts ./src/source-inbox.ts ./src/untrusted-content.ts ./src/url-intelligence.ts ./src/workflow.ts ./src/workflows/index.ts ./src/workflows/decision-context.ts ./src/workflows/explain-change.ts ./src/workflows/plan-radar.ts ./src/clip/defuddle-worker.ts --outdir ./dist --root ./src --target bun --format esm --splitting --packages external && bun build ./src/publish-reader/reader.ts --outfile ./dist/publish-reader/reader.js --target browser --format esm && bun build ./src/publish-reader/theme.ts --outfile ./dist/publish-reader/theme.js --target browser --format iife && cp ./src/publish-reader/reader.css ./dist/publish-reader/reader.css",
488
+ "build": "bun -e 'await (await import(\"node:fs/promises\")).rm(\"./dist\", { recursive: true, force: true })' && bun build ./src/index.ts ./src/publish.ts ./src/publish-model.ts ./src/publish-search.ts ./src/agent-context.ts ./src/agent-guide-audit.ts ./src/attachments.ts ./src/authoring.ts ./src/benchmark.ts ./src/clip/browser-profiles.ts ./src/capture.ts ./src/cli.ts ./src/cli-bin.ts ./src/evaluation-builder-bin.ts ./src/clip/acquire.ts ./src/clip/args.ts ./src/clip/bounded-byte-buffer.ts ./src/clip/bundle-reader.ts ./src/clip/cli.ts ./src/clip/cookies.ts ./src/clip/doctor.ts ./src/clip/jobs.ts ./src/clip/network.ts ./src/clip/network-proxy.ts ./src/clip/persist.ts ./src/clip/refresh.ts ./src/clip/terminal.ts ./src/evaluation.ts ./src/evaluation-builder.ts ./src/evaluation-kb.ts ./src/git.ts ./src/graph.ts ./src/graph-percolation.ts ./src/graph-authority.ts ./src/navigation.ts ./src/pdf.ts ./src/percolate.ts ./src/portfolio.ts ./src/query.ts ./src/rerank.ts ./src/rerank-typesafe.ts ./src/repository-memory.ts ./src/sdk.ts ./src/search.ts ./src/search-rules.ts ./src/semantic.ts ./src/source-inbox.ts ./src/untrusted-content.ts ./src/url-intelligence.ts ./src/workflow.ts ./src/workflows/index.ts ./src/workflows/decision-context.ts ./src/workflows/explain-change.ts ./src/workflows/plan-radar.ts ./src/clip/defuddle-worker.ts --outdir ./dist --root ./src --target bun --format esm --splitting --packages external && bun build ./src/publish-reader/reader.ts --outfile ./dist/publish-reader/reader.js --target browser --format esm && bun build ./src/publish-reader/theme.ts --outfile ./dist/publish-reader/theme.js --target browser --format iife && cp ./src/publish-reader/reader.css ./dist/publish-reader/reader.css",
483
489
  "check:workflows": "bun ./scripts/check-workflow-yaml.ts",
484
490
  "check:installed-command-docs": "bun ./scripts/check-installed-command-docs.ts",
485
491
  "check:portfolio-inventory": "bun ./scripts/check-portfolio-inventory.ts",
@@ -506,7 +512,8 @@
506
512
  "yaml": "^2.9.0",
507
513
  "zod": "^4.4.3",
508
514
  "effect": "3.22.1",
509
- "@hraness/support-foundation": "git+https://github.com/hraness/support-foundation.git#b32c1c81bb2444f50509ed54388758ecfab1f1c0"
515
+ "@hraness/support-foundation": "git+https://github.com/hraness/support-foundation.git#b32c1c81bb2444f50509ed54388758ecfab1f1c0",
516
+ "@hraness/cli-update": "https://github.com/hraness/cli-update/releases/download/v0.1.0/hraness-cli-update-0.1.0.tgz"
510
517
  },
511
518
  "devDependencies": {
512
519
  "@hraness/build-governance": "github:hraness/build-governance#v0.1.0",
@@ -58,7 +58,7 @@ missing:
58
58
  ```sh
59
59
  command -v wordcell >/dev/null 2>&1 || {
60
60
  command -v bun >/dev/null 2>&1 || exit 1
61
- bun add --global --ignore-scripts https://github.com/hraness/wordcell/releases/download/v0.25.0/hraness-wordcell-0.25.0.tgz
61
+ bun add --global --ignore-scripts https://github.com/hraness/wordcell/releases/download/v0.26.0/hraness-wordcell-0.26.0.tgz
62
62
  }
63
63
  wordcell --help
64
64
  ```
@@ -73,6 +73,15 @@ Installation ends after command verification. Never run `wordcell init`, create
73
73
  vault, refresh a catalog, or edit Markdown as an installation side effect.
74
74
  Initialize or mutate a vault only when the user's request requires that change.
75
75
 
76
+ Supported global installations check for verified releases daily before work.
77
+ Use `wordcell update status`, `wordcell update check`, and `wordcell update`
78
+ to inspect or update the installed version. `wordcell update disable` saves an
79
+ opt-out; `wordcell update enable` restores updates. For offline or externally
80
+ version-bound work, set `HRANESS_NO_UPDATE=1` for the invocation. Never override
81
+ a saved opt-out or a consumer's version binding as part of task setup. Updates
82
+ require `gh`, preserve `--ignore-scripts`, and wait for active commands to exit.
83
+ SDK imports and help never check for updates.
84
+
76
85
  ## Preserve the Wordcell contract
77
86
 
78
87
  - For an existing vault, resolve `KB_ROOT` to the directory that contains its
package/src/cli-bin.ts ADDED
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env bun
2
+ import { fileURLToPath } from "node:url";
3
+ import { runWordcellBin } from "./cli-update.js";
4
+
5
+ if (import.meta.main) process.exitCode = await runWordcellBin("wordcell", fileURLToPath(import.meta.url), process.argv.slice(2));
package/src/cli-help.ts CHANGED
@@ -650,6 +650,18 @@ export const commandHelp: readonly CommandHelp[] = [
650
650
  examples: ["wordcell url-metadata backfill --root kb"],
651
651
  notes: ["Run `wordcell url-metadata --help` for every option."],
652
652
  },
653
+ {
654
+ id: "update",
655
+ label: "update [check|status|enable|disable]",
656
+ usage: "wordcell update [check|status|enable|disable] [--json]",
657
+ summary: "Update this global installation or change automatic update settings.",
658
+ group: "advanced",
659
+ options: [JSON_OPTION, ["--check", "Check the latest release without installing"]],
660
+ examples: ["wordcell update status", "wordcell update disable"],
661
+ notes: ["Supported global installs on macOS and Linux update daily before work.",
662
+ "Set HRANESS_NO_UPDATE=1 to skip automatic checks for one invocation.",
663
+ "Active commands prevent replacement. SDK imports never check for updates."],
664
+ },
653
665
  {
654
666
  id: "support",
655
667
  label: "support",