@hraness/wordcell 0.21.3 → 0.22.1

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 (93) hide show
  1. package/README.md +170 -64
  2. package/dist/authoring.js +5 -3
  3. package/dist/{authority-4sp9d552.js → authority-06eqhqam.js} +57 -12
  4. package/dist/benchmark.js +4 -4
  5. package/dist/capture.js +6 -5
  6. package/dist/cli.js +39 -33
  7. package/dist/clip/acquire.js +3 -2
  8. package/dist/clip/cli.js +6 -5
  9. package/dist/clip/doctor.js +4 -3
  10. package/dist/clip/jobs.js +3 -3
  11. package/dist/clip/refresh.js +1 -1
  12. package/dist/evaluation-builder.js +20 -19
  13. package/dist/evaluation-kb.js +16 -15
  14. package/dist/graph-authority.js +5 -5
  15. package/dist/graph-percolation.js +7 -7
  16. package/dist/graph.js +1 -1
  17. package/dist/{index-pbr6rv47.js → index-1k595z6v.js} +6 -6
  18. package/dist/{index-0k2x4nn9.js → index-233z9wmn.js} +17 -5
  19. package/dist/index-3agn8scn.js +306 -0
  20. package/dist/index-4knsp9qj.js +34 -0
  21. package/dist/index-66pshdtx.js +341 -0
  22. package/dist/{index-59ssmqqm.js → index-76dbn6pe.js} +1 -1
  23. package/dist/{index-0rfcqab6.js → index-810nfzdj.js} +617 -66
  24. package/dist/index-9rf81m0p.js +368 -0
  25. package/dist/{index-51bap0mq.js → index-bqtqeak3.js} +10 -10
  26. package/dist/{index-9zcpdbjg.js → index-de2w8crk.js} +13 -13
  27. package/dist/{index-bgfzwt4h.js → index-djrcc1yf.js} +6 -6
  28. package/dist/{index-6sw24nvv.js → index-ecqpgr5y.js} +53 -2
  29. package/dist/{index-van48n3g.js → index-fc4dr114.js} +4 -2
  30. package/dist/{index-jzcws0zn.js → index-g5vsqmdy.js} +27 -57
  31. package/dist/index-hmw17zaa.js +1985 -0
  32. package/dist/index-j70m75wd.js +217 -0
  33. package/dist/{index-nd6nynv2.js → index-jk1sgx36.js} +1 -1
  34. package/dist/{index-3ehtt59c.js → index-n386evxj.js} +1 -1
  35. package/dist/{index-vdw5yjfa.js → index-q7tbg07z.js} +110 -20
  36. package/dist/{index-ekpwvbra.js → index-qbssx940.js} +1 -2
  37. package/dist/{index-115b07ap.js → index-rr9kzq4n.js} +5 -5
  38. package/dist/{index-11621h23.js → index-tf4wzjew.js} +1 -1
  39. package/dist/{index-why54q5p.js → index-vnybgywh.js} +4 -4
  40. package/dist/{index-bcfn9xah.js → index-xv80vzfp.js} +7 -7
  41. package/dist/index.js +289 -95
  42. package/dist/percolate.js +2 -2
  43. package/dist/portfolio.js +16 -15
  44. package/dist/publish-model.js +36 -0
  45. package/dist/publish-reader/reader.css +1042 -0
  46. package/dist/publish-reader/reader.js +1534 -0
  47. package/dist/publish-reader/theme.js +92 -0
  48. package/dist/publish-search.js +52 -0
  49. package/dist/publish.js +36 -0
  50. package/dist/rerank-typesafe.js +13 -0
  51. package/dist/rerank.js +14 -0
  52. package/dist/sdk.js +16 -13
  53. package/dist/search.js +3 -3
  54. package/dist/semantic.js +5 -5
  55. package/dist/{support-vm4mkw0k.js → support-1rh2d7mt.js} +38 -32
  56. package/dist/workflows/decision-context.js +15 -14
  57. package/dist/workflows/index.js +15 -14
  58. package/package.json +65 -6
  59. package/skills/wordcell/AGENTS.md +1 -0
  60. package/skills/wordcell/SKILL.md +2 -1
  61. package/skills/wordcell/agents/openai.yaml +1 -1
  62. package/skills/wordcell/references/publish.md +127 -0
  63. package/skills/wordcell/references/query.md +22 -0
  64. package/skills/wordcell/references/refresh.md +14 -0
  65. package/src/authoring-model.ts +29 -0
  66. package/src/authoring-program.ts +38 -3
  67. package/src/authoring.ts +17 -3
  68. package/src/cli-program.ts +441 -12
  69. package/src/graph.ts +1 -1
  70. package/src/index.ts +4 -0
  71. package/src/oh/authority.ts +14 -5
  72. package/src/oh/canonical-rust.ts +127 -0
  73. package/src/oh/projection-rust.ts +63 -0
  74. package/src/oh-adoption.ts +7 -1
  75. package/src/publish-graph.ts +0 -0
  76. package/src/publish-index.ts +195 -0
  77. package/src/publish-markdown.ts +617 -0
  78. package/src/publish-model.ts +599 -0
  79. package/src/publish-nav.ts +204 -0
  80. package/src/publish-pages.ts +382 -0
  81. package/src/publish-reader/reader.css +1042 -0
  82. package/src/publish-reader/reader.ts +1017 -0
  83. package/src/publish-reader/theme.ts +97 -0
  84. package/src/publish-search.ts +418 -0
  85. package/src/publish-select.ts +419 -0
  86. package/src/publish-theme.ts +106 -0
  87. package/src/publish.ts +904 -0
  88. package/src/rerank-credentials.ts +56 -0
  89. package/src/rerank-typesafe.ts +472 -0
  90. package/src/rerank.ts +389 -0
  91. package/src/sdk.ts +157 -6
  92. package/src/serve.ts +180 -0
  93. package/src/vault.ts +23 -9
@@ -0,0 +1,92 @@
1
+ (() => {
2
+ // src/publish-theme.ts
3
+ var WORDCELL_APPEARANCE_STORAGE_KEY = "hraness-design-palette-v1";
4
+ var wordcellPalettes = [
5
+ "wordcell",
6
+ "catppuccin",
7
+ "gruvbox",
8
+ "rose-pine",
9
+ "tokyo-night"
10
+ ];
11
+ var wordcellAppearanceModes = ["system", "light", "dark"];
12
+ var DEFAULT_WORDCELL_APPEARANCE = {
13
+ palette: "wordcell",
14
+ mode: "system"
15
+ };
16
+ function isWordcellPalette(value) {
17
+ return typeof value === "string" && wordcellPalettes.includes(value);
18
+ }
19
+ function isWordcellAppearanceMode(value) {
20
+ return typeof value === "string" && wordcellAppearanceModes.includes(value);
21
+ }
22
+ function parseAppearancePreference(value) {
23
+ if (typeof value !== "object" || value === null)
24
+ return;
25
+ const palette = value.palette;
26
+ const mode = value.mode;
27
+ if (!isWordcellPalette(palette) || !isWordcellAppearanceMode(mode))
28
+ return;
29
+ return { palette, mode };
30
+ }
31
+ function serializeAppearancePreference(preference) {
32
+ return JSON.stringify({ palette: preference.palette, mode: preference.mode });
33
+ }
34
+ function resolveAppearanceMode(mode, systemPrefersDark) {
35
+ if (mode === "system")
36
+ return systemPrefersDark ? "dark" : "light";
37
+ return mode;
38
+ }
39
+
40
+ // src/publish-reader/theme.ts
41
+ var host = globalThis;
42
+ var root = host.document?.documentElement;
43
+ var media = host.matchMedia?.("(prefers-color-scheme: dark)");
44
+ function readPreference() {
45
+ try {
46
+ const raw = host.localStorage?.getItem(WORDCELL_APPEARANCE_STORAGE_KEY);
47
+ if (raw === null || raw === undefined)
48
+ return DEFAULT_WORDCELL_APPEARANCE;
49
+ return parseAppearancePreference(JSON.parse(raw)) ?? DEFAULT_WORDCELL_APPEARANCE;
50
+ } catch {
51
+ return DEFAULT_WORDCELL_APPEARANCE;
52
+ }
53
+ }
54
+ var preference = readPreference();
55
+ var listeners = new Set;
56
+ function resolved() {
57
+ return resolveAppearanceMode(preference.mode, media?.matches === true);
58
+ }
59
+ function apply() {
60
+ const theme = resolved();
61
+ root?.setAttribute("data-palette", preference.palette);
62
+ root?.setAttribute("data-theme", theme);
63
+ for (const listener of listeners)
64
+ listener(preference, theme);
65
+ }
66
+ host.addEventListener?.("storage", (event) => {
67
+ if (event.key !== WORDCELL_APPEARANCE_STORAGE_KEY)
68
+ return;
69
+ preference = readPreference();
70
+ apply();
71
+ });
72
+ media?.addEventListener("change", () => {
73
+ if (preference.mode === "system")
74
+ apply();
75
+ });
76
+ host.wordcellAppearance = {
77
+ get: () => preference,
78
+ resolvedTheme: resolved,
79
+ set(next) {
80
+ preference = parseAppearancePreference(next) ?? DEFAULT_WORDCELL_APPEARANCE;
81
+ try {
82
+ host.localStorage?.setItem(WORDCELL_APPEARANCE_STORAGE_KEY, serializeAppearancePreference(preference));
83
+ } catch {}
84
+ apply();
85
+ },
86
+ subscribe(listener) {
87
+ listeners.add(listener);
88
+ return () => listeners.delete(listener);
89
+ }
90
+ };
91
+ apply();
92
+ })();
@@ -0,0 +1,52 @@
1
+ // @bun
2
+ import {
3
+ MAX_PUBLISH_MARK_RANGES,
4
+ MAX_PUBLISH_PREFIX_EXPANSIONS,
5
+ MAX_PUBLISH_QUERY_BYTES,
6
+ MAX_PUBLISH_QUERY_FILTERS,
7
+ MAX_PUBLISH_QUERY_TERMS,
8
+ PUBLISH_FIELD_ALIAS,
9
+ PUBLISH_FIELD_CONTENT,
10
+ PUBLISH_FIELD_METADATA,
11
+ PUBLISH_FIELD_PATH,
12
+ PUBLISH_FIELD_TAG,
13
+ PUBLISH_FIELD_TITLE,
14
+ PUBLISH_SEARCH_WEIGHTS_V1,
15
+ comparePublishScores,
16
+ publishDocMatchesFilters,
17
+ publishMarkRanges,
18
+ publishNormalize,
19
+ publishPrefixTerms,
20
+ publishQuery,
21
+ publishQueryParts,
22
+ publishShardName,
23
+ publishSnippet,
24
+ publishUtf8Bytes,
25
+ scorePublishDocument
26
+ } from "./index-3agn8scn.js";
27
+ import"./index-z1w83f81.js";
28
+ export {
29
+ scorePublishDocument,
30
+ publishUtf8Bytes,
31
+ publishSnippet,
32
+ publishShardName,
33
+ publishQueryParts,
34
+ publishQuery,
35
+ publishPrefixTerms,
36
+ publishNormalize,
37
+ publishMarkRanges,
38
+ publishDocMatchesFilters,
39
+ comparePublishScores,
40
+ PUBLISH_SEARCH_WEIGHTS_V1,
41
+ PUBLISH_FIELD_TITLE,
42
+ PUBLISH_FIELD_TAG,
43
+ PUBLISH_FIELD_PATH,
44
+ PUBLISH_FIELD_METADATA,
45
+ PUBLISH_FIELD_CONTENT,
46
+ PUBLISH_FIELD_ALIAS,
47
+ MAX_PUBLISH_QUERY_TERMS,
48
+ MAX_PUBLISH_QUERY_FILTERS,
49
+ MAX_PUBLISH_QUERY_BYTES,
50
+ MAX_PUBLISH_PREFIX_EXPANSIONS,
51
+ MAX_PUBLISH_MARK_RANGES
52
+ };
@@ -0,0 +1,36 @@
1
+ // @bun
2
+ import {
3
+ DEFAULT_PUBLISH_LIST_LIMIT,
4
+ MAX_PUBLISH_LIST_BYTES,
5
+ MAX_PUBLISH_LIST_LIMIT,
6
+ MAX_PUBLISH_PATH_COMPONENT_BYTES,
7
+ MAX_SITE_BYTES,
8
+ WORDCELL_PUBLISH_GENERATOR,
9
+ projectVault,
10
+ publishVault,
11
+ renderPublishReportText,
12
+ serializeSiteFile
13
+ } from "./index-hmw17zaa.js";
14
+ import"./index-233z9wmn.js";
15
+ import"./index-d13v9ckt.js";
16
+ import"./index-48pz4jpc.js";
17
+ import"./index-06c9ctr6.js";
18
+ import"./index-4knsp9qj.js";
19
+ import"./index-66pshdtx.js";
20
+ import"./index-3agn8scn.js";
21
+ import"./index-5vwpzb5a.js";
22
+ import"./index-x3fthpsc.js";
23
+ import"./index-qbssx940.js";
24
+ import"./index-z1w83f81.js";
25
+ export {
26
+ serializeSiteFile,
27
+ renderPublishReportText,
28
+ publishVault,
29
+ projectVault,
30
+ WORDCELL_PUBLISH_GENERATOR,
31
+ MAX_SITE_BYTES,
32
+ MAX_PUBLISH_PATH_COMPONENT_BYTES,
33
+ MAX_PUBLISH_LIST_LIMIT,
34
+ MAX_PUBLISH_LIST_BYTES,
35
+ DEFAULT_PUBLISH_LIST_LIMIT
36
+ };
@@ -0,0 +1,13 @@
1
+ // @bun
2
+ import {
3
+ DEFAULT_SYSTEMONE_ENDPOINT,
4
+ DEFAULT_SYSTEMONE_MODEL,
5
+ createTypeSafeReranker
6
+ } from "./index-9rf81m0p.js";
7
+ import"./index-j70m75wd.js";
8
+ import"./index-z1w83f81.js";
9
+ export {
10
+ createTypeSafeReranker,
11
+ DEFAULT_SYSTEMONE_MODEL,
12
+ DEFAULT_SYSTEMONE_ENDPOINT
13
+ };
package/dist/rerank.js ADDED
@@ -0,0 +1,14 @@
1
+ // @bun
2
+ import {
3
+ MAX_RERANK_CANDIDATES,
4
+ MAX_RERANK_SNIPPET_BYTES,
5
+ MAX_RERANK_STATE_BYTES,
6
+ applyRerank
7
+ } from "./index-j70m75wd.js";
8
+ import"./index-z1w83f81.js";
9
+ export {
10
+ applyRerank,
11
+ MAX_RERANK_STATE_BYTES,
12
+ MAX_RERANK_SNIPPET_BYTES,
13
+ MAX_RERANK_CANDIDATES
14
+ };
package/dist/sdk.js CHANGED
@@ -9,28 +9,31 @@ import {
9
9
  openKnowledgeBase,
10
10
  packSearchContext,
11
11
  packUntrustedSearchContext,
12
+ searchEvidenceRank,
12
13
  validateKnowledgeBaseSearchHistory
13
- } from "./index-vdw5yjfa.js";
14
- import"./index-4j3tt0c3.js";
14
+ } from "./index-q7tbg07z.js";
15
15
  import"./index-adx6khj5.js";
16
- import"./index-115b07ap.js";
17
- import"./index-bgfzwt4h.js";
18
- import"./index-bcfn9xah.js";
19
- import"./index-11621h23.js";
20
- import"./index-0k2x4nn9.js";
21
- import"./index-nd6nynv2.js";
16
+ import"./index-rr9kzq4n.js";
17
+ import"./index-4j3tt0c3.js";
18
+ import"./index-j70m75wd.js";
19
+ import"./index-djrcc1yf.js";
20
+ import"./index-jk1sgx36.js";
21
+ import"./index-xv80vzfp.js";
22
+ import"./index-tf4wzjew.js";
22
23
  import"./index-1gwbassd.js";
23
- import"./index-3rm7cz6h.js";
24
- import"./index-why54q5p.js";
24
+ import"./index-vnybgywh.js";
25
+ import"./index-1xxnjn0d.js";
26
+ import"./index-233z9wmn.js";
27
+ import"./index-d13v9ckt.js";
25
28
  import"./index-48pz4jpc.js";
26
29
  import"./index-06c9ctr6.js";
27
- import"./index-d13v9ckt.js";
28
30
  import"./index-5vwpzb5a.js";
29
- import"./index-ekpwvbra.js";
30
- import"./index-1xxnjn0d.js";
31
+ import"./index-3rm7cz6h.js";
32
+ import"./index-qbssx940.js";
31
33
  import"./index-z1w83f81.js";
32
34
  export {
33
35
  validateKnowledgeBaseSearchHistory,
36
+ searchEvidenceRank,
34
37
  packUntrustedSearchContext,
35
38
  packSearchContext,
36
39
  openKnowledgeBase,
package/dist/search.js CHANGED
@@ -6,12 +6,12 @@ import {
6
6
  fuseRankedCandidates,
7
7
  searchExactVault,
8
8
  validateSearchQuery
9
- } from "./index-why54q5p.js";
9
+ } from "./index-vnybgywh.js";
10
+ import"./index-d13v9ckt.js";
10
11
  import"./index-48pz4jpc.js";
11
12
  import"./index-06c9ctr6.js";
12
- import"./index-d13v9ckt.js";
13
13
  import"./index-5vwpzb5a.js";
14
- import"./index-ekpwvbra.js";
14
+ import"./index-qbssx940.js";
15
15
  import"./index-z1w83f81.js";
16
16
  export {
17
17
  validateSearchQuery,
package/dist/semantic.js CHANGED
@@ -14,14 +14,14 @@ import {
14
14
  searchSemanticVault,
15
15
  semanticDatabasePath,
16
16
  sha256EmbeddingModelFile
17
- } from "./index-115b07ap.js";
18
- import"./index-0k2x4nn9.js";
19
- import"./index-why54q5p.js";
17
+ } from "./index-rr9kzq4n.js";
18
+ import"./index-vnybgywh.js";
19
+ import"./index-233z9wmn.js";
20
+ import"./index-d13v9ckt.js";
20
21
  import"./index-48pz4jpc.js";
21
22
  import"./index-06c9ctr6.js";
22
- import"./index-d13v9ckt.js";
23
23
  import"./index-5vwpzb5a.js";
24
- import"./index-ekpwvbra.js";
24
+ import"./index-qbssx940.js";
25
25
  import"./index-z1w83f81.js";
26
26
  export {
27
27
  sha256EmbeddingModelFile,
@@ -2,54 +2,60 @@
2
2
  import {
3
3
  parseArguments as parseArguments2,
4
4
  parseUrlMetadataArguments
5
- } from "./index-0rfcqab6.js";
5
+ } from "./index-810nfzdj.js";
6
6
  import"./index-bcknqxrq.js";
7
- import"./index-51bap0mq.js";
8
7
  import {
9
8
  parsePdfArguments
10
9
  } from "./index-054mb7d3.js";
10
+ import"./index-bqtqeak3.js";
11
11
  import"./index-j4zgmzjr.js";
12
- import"./index-npg9z1a4.js";
13
- import"./index-23z4zxgg.js";
14
- import"./index-pj501bh1.js";
15
- import"./index-pbr6rv47.js";
16
- import"./index-vdw5yjfa.js";
17
- import"./index-4j3tt0c3.js";
18
- import"./index-adx6khj5.js";
19
- import"./index-115b07ap.js";
20
- import"./index-bgfzwt4h.js";
21
- import"./index-bcfn9xah.js";
22
- import"./index-11621h23.js";
23
- import"./index-0k2x4nn9.js";
24
- import"./index-nd6nynv2.js";
25
- import"./index-1gwbassd.js";
26
- import"./index-b88v3vtm.js";
27
- import"./index-hya40gb2.js";
28
- import"./index-x3fthpsc.js";
29
- import"./index-6sw24nvv.js";
30
- import"./index-3rm7cz6h.js";
31
- import"./index-why54q5p.js";
32
- import"./index-48pz4jpc.js";
33
- import"./index-06c9ctr6.js";
34
- import"./index-d13v9ckt.js";
35
- import"./index-5vwpzb5a.js";
36
- import"./index-ekpwvbra.js";
37
- import"./index-9zcpdbjg.js";
12
+ import"./index-de2w8crk.js";
38
13
  import"./index-6jcz0m1c.js";
39
14
  import"./index-f984hw45.js";
40
- import"./index-van48n3g.js";
41
- import"./index-jzcws0zn.js";
15
+ import"./index-fc4dr114.js";
16
+ import"./index-5n05se68.js";
17
+ import"./index-g5vsqmdy.js";
42
18
  import"./index-hgve9rh2.js";
19
+ import"./index-2gv8y733.js";
43
20
  import"./index-w2zc0vwa.js";
44
21
  import"./index-e5fbsywq.js";
45
22
  import {
46
23
  parseArguments
47
24
  } from "./index-dfag79p7.js";
48
25
  import"./index-gh719d91.js";
26
+ import"./index-npg9z1a4.js";
49
27
  import"./index-mxxxytys.js";
50
- import"./index-2gv8y733.js";
28
+ import"./index-23z4zxgg.js";
29
+ import"./index-pj501bh1.js";
30
+ import"./index-9rf81m0p.js";
31
+ import"./index-1k595z6v.js";
32
+ import"./index-q7tbg07z.js";
33
+ import"./index-adx6khj5.js";
34
+ import"./index-rr9kzq4n.js";
35
+ import"./index-4j3tt0c3.js";
36
+ import"./index-j70m75wd.js";
37
+ import"./index-b88v3vtm.js";
38
+ import"./index-djrcc1yf.js";
39
+ import"./index-jk1sgx36.js";
40
+ import"./index-xv80vzfp.js";
41
+ import"./index-tf4wzjew.js";
42
+ import"./index-1gwbassd.js";
43
+ import"./index-vnybgywh.js";
51
44
  import"./index-1xxnjn0d.js";
52
- import"./index-5n05se68.js";
45
+ import"./index-hmw17zaa.js";
46
+ import"./index-233z9wmn.js";
47
+ import"./index-d13v9ckt.js";
48
+ import"./index-48pz4jpc.js";
49
+ import"./index-06c9ctr6.js";
50
+ import"./index-4knsp9qj.js";
51
+ import"./index-66pshdtx.js";
52
+ import"./index-3agn8scn.js";
53
+ import"./index-hya40gb2.js";
54
+ import"./index-5vwpzb5a.js";
55
+ import"./index-x3fthpsc.js";
56
+ import"./index-ecqpgr5y.js";
57
+ import"./index-3rm7cz6h.js";
58
+ import"./index-qbssx940.js";
53
59
  import"./index-z1w83f81.js";
54
60
 
55
61
  // src/support.ts
@@ -1,26 +1,27 @@
1
1
  // @bun
2
2
  import {
3
3
  decisionContextWorkflow
4
- } from "../index-59ssmqqm.js";
4
+ } from "../index-76dbn6pe.js";
5
5
  import"../index-h170byqw.js";
6
- import"../index-vdw5yjfa.js";
7
- import"../index-4j3tt0c3.js";
6
+ import"../index-q7tbg07z.js";
8
7
  import"../index-adx6khj5.js";
9
- import"../index-115b07ap.js";
10
- import"../index-bgfzwt4h.js";
11
- import"../index-bcfn9xah.js";
12
- import"../index-11621h23.js";
13
- import"../index-0k2x4nn9.js";
14
- import"../index-nd6nynv2.js";
8
+ import"../index-rr9kzq4n.js";
9
+ import"../index-4j3tt0c3.js";
10
+ import"../index-j70m75wd.js";
11
+ import"../index-djrcc1yf.js";
12
+ import"../index-jk1sgx36.js";
13
+ import"../index-xv80vzfp.js";
14
+ import"../index-tf4wzjew.js";
15
15
  import"../index-1gwbassd.js";
16
- import"../index-3rm7cz6h.js";
17
- import"../index-why54q5p.js";
16
+ import"../index-vnybgywh.js";
17
+ import"../index-1xxnjn0d.js";
18
+ import"../index-233z9wmn.js";
19
+ import"../index-d13v9ckt.js";
18
20
  import"../index-48pz4jpc.js";
19
21
  import"../index-06c9ctr6.js";
20
- import"../index-d13v9ckt.js";
21
22
  import"../index-5vwpzb5a.js";
22
- import"../index-ekpwvbra.js";
23
- import"../index-1xxnjn0d.js";
23
+ import"../index-3rm7cz6h.js";
24
+ import"../index-qbssx940.js";
24
25
  import"../index-z1w83f81.js";
25
26
  export {
26
27
  decisionContextWorkflow
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  decisionContextWorkflow
4
- } from "../index-59ssmqqm.js";
4
+ } from "../index-76dbn6pe.js";
5
5
  import {
6
6
  explainChangeWorkflow
7
7
  } from "../index-e4fagfjz.js";
@@ -9,24 +9,25 @@ import {
9
9
  planRadarWorkflow
10
10
  } from "../index-rdd5f7jj.js";
11
11
  import"../index-h170byqw.js";
12
- import"../index-vdw5yjfa.js";
13
- import"../index-4j3tt0c3.js";
12
+ import"../index-q7tbg07z.js";
14
13
  import"../index-adx6khj5.js";
15
- import"../index-115b07ap.js";
16
- import"../index-bgfzwt4h.js";
17
- import"../index-bcfn9xah.js";
18
- import"../index-11621h23.js";
19
- import"../index-0k2x4nn9.js";
20
- import"../index-nd6nynv2.js";
14
+ import"../index-rr9kzq4n.js";
15
+ import"../index-4j3tt0c3.js";
16
+ import"../index-j70m75wd.js";
17
+ import"../index-djrcc1yf.js";
18
+ import"../index-jk1sgx36.js";
19
+ import"../index-xv80vzfp.js";
20
+ import"../index-tf4wzjew.js";
21
21
  import"../index-1gwbassd.js";
22
- import"../index-3rm7cz6h.js";
23
- import"../index-why54q5p.js";
22
+ import"../index-vnybgywh.js";
23
+ import"../index-1xxnjn0d.js";
24
+ import"../index-233z9wmn.js";
25
+ import"../index-d13v9ckt.js";
24
26
  import"../index-48pz4jpc.js";
25
27
  import"../index-06c9ctr6.js";
26
- import"../index-d13v9ckt.js";
27
28
  import"../index-5vwpzb5a.js";
28
- import"../index-ekpwvbra.js";
29
- import"../index-1xxnjn0d.js";
29
+ import"../index-3rm7cz6h.js";
30
+ import"../index-qbssx940.js";
30
31
  import"../index-z1w83f81.js";
31
32
  export {
32
33
  planRadarWorkflow,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@hraness/wordcell",
3
- "version": "0.21.3",
4
- "description": "A knowledge base for coding agents, built from Markdown, backlinks, semantic search, and Git context.",
3
+ "version": "0.22.1",
4
+ "description": "A local knowledge base for coding agents. Save decisions in Markdown and recover the context behind your code.",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
7
  "sideEffects": [
@@ -37,15 +37,30 @@
37
37
  "./src/pdf.ts",
38
38
  "./src/percolate.ts",
39
39
  "./src/portfolio.ts",
40
+ "./src/publish.ts",
41
+ "./src/publish-model.ts",
42
+ "./src/publish-search.ts",
43
+ "./src/publish-select.ts",
44
+ "./src/publish-index.ts",
45
+ "./src/publish-markdown.ts",
46
+ "./src/publish-nav.ts",
47
+ "./src/publish-graph.ts",
48
+ "./src/publish-pages.ts",
49
+ "./src/publish-theme.ts",
50
+ "./src/publish-reader/reader.ts",
51
+ "./src/publish-reader/theme.ts",
40
52
  "./src/portfolio-audit.ts",
41
53
  "./src/portfolio-identity.ts",
42
54
  "./src/portfolio-registry.ts",
43
55
  "./src/query.ts",
56
+ "./src/rerank.ts",
57
+ "./src/rerank-typesafe.ts",
44
58
  "./src/repository-memory.ts",
45
59
  "./src/sdk.ts",
46
60
  "./src/search.ts",
47
61
  "./src/search-rules.ts",
48
62
  "./src/semantic.ts",
63
+ "./src/serve.ts",
49
64
  "./src/source-inbox.ts",
50
65
  "./src/untrusted-content.ts",
51
66
  "./src/url-intelligence.ts",
@@ -210,10 +225,30 @@
210
225
  "types": "./src/portfolio.ts",
211
226
  "import": "./dist/portfolio.js"
212
227
  },
228
+ "./publish": {
229
+ "types": "./src/publish.ts",
230
+ "import": "./dist/publish.js"
231
+ },
232
+ "./publish-model": {
233
+ "types": "./src/publish-model.ts",
234
+ "import": "./dist/publish-model.js"
235
+ },
236
+ "./publish-search": {
237
+ "types": "./src/publish-search.ts",
238
+ "import": "./dist/publish-search.js"
239
+ },
213
240
  "./query": {
214
241
  "types": "./src/query.ts",
215
242
  "import": "./dist/query.js"
216
243
  },
244
+ "./rerank": {
245
+ "types": "./src/rerank.ts",
246
+ "import": "./dist/rerank.js"
247
+ },
248
+ "./rerank-typesafe": {
249
+ "types": "./src/rerank-typesafe.ts",
250
+ "import": "./dist/rerank-typesafe.js"
251
+ },
217
252
  "./repository-memory": {
218
253
  "types": "./src/repository-memory.ts",
219
254
  "import": "./dist/repository-memory.js"
@@ -351,8 +386,23 @@
351
386
  "src/navigation.ts",
352
387
  "src/note-lock.ts",
353
388
  "src/oh-adoption.ts",
389
+ "src/oh/canonical-rust.ts",
390
+ "src/oh/projection-rust.ts",
354
391
  "src/percolate.ts",
355
392
  "src/portfolio.ts",
393
+ "src/publish.ts",
394
+ "src/publish-graph.ts",
395
+ "src/publish-index.ts",
396
+ "src/publish-markdown.ts",
397
+ "src/publish-model.ts",
398
+ "src/publish-nav.ts",
399
+ "src/publish-pages.ts",
400
+ "src/publish-search.ts",
401
+ "src/publish-select.ts",
402
+ "src/publish-theme.ts",
403
+ "src/publish-reader/reader.ts",
404
+ "src/publish-reader/reader.css",
405
+ "src/publish-reader/theme.ts",
356
406
  "src/portfolio-audit.ts",
357
407
  "src/portfolio-identity.ts",
358
408
  "src/portfolio-registry.ts",
@@ -369,11 +419,15 @@
369
419
  "src/pdf/source.ts",
370
420
  "src/pdf/tools.ts",
371
421
  "src/query.ts",
422
+ "src/rerank.ts",
423
+ "src/rerank-typesafe.ts",
424
+ "src/rerank-credentials.ts",
372
425
  "src/repository-memory.ts",
373
426
  "src/search.ts",
374
427
  "src/search-rules.ts",
375
428
  "src/semantic-runtime.ts",
376
429
  "src/semantic.ts",
430
+ "src/serve.ts",
377
431
  "src/sdk.ts",
378
432
  "src/source-inbox.ts",
379
433
  "src/untrusted-content.ts",
@@ -398,6 +452,7 @@
398
452
  "src/graph-cli.ts",
399
453
  "src/graph-percolation.ts",
400
454
  "src/oh/authority.ts",
455
+ "src/oh/canonical-rust.ts",
401
456
  "src/oh/programs.ts",
402
457
  "src/oh/schema.ts",
403
458
  "src/oh/snapshot.ts",
@@ -411,7 +466,7 @@
411
466
  "kb:check:lane": "bunx --bun github:hraness/kb#v0.15.1 check --root kb --no-catalog",
412
467
  "kb:check": "bunx --bun github:hraness/kb#v0.15.1 check --root kb && bunx --bun github:hraness/kb#v0.15.1 agents check --root kb --repo .",
413
468
  "kb:catalog": "bunx --bun github:hraness/kb#v0.15.1 catalog --root kb",
414
- "build": "bun -e 'await (await import(\"node:fs/promises\")).rm(\"./dist\", { recursive: true, force: true })' && bun build ./src/index.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/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",
469
+ "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",
415
470
  "check:workflows": "bun ./scripts/check-workflow-yaml.ts",
416
471
  "check:installed-command-docs": "bun ./scripts/check-installed-command-docs.ts",
417
472
  "check:portfolio-inventory": "bun ./scripts/check-portfolio-inventory.ts",
@@ -421,12 +476,15 @@
421
476
  "url-metadata:tool:build": "bun ./dist/cli.js url-metadata tool build",
422
477
  "url-metadata:tool:check": "bun ./dist/cli.js url-metadata tool check",
423
478
  "test:package": "bun run ./scripts/package-smoke.ts",
424
- "check": "bun run check:effect && bun run check:workflows && bun run check:portfolio-inventory && bun run check:installed-command-docs && bun run typecheck && bun run build && bun run test:package && bun run test && bun run url-metadata:tool:check",
479
+ "check": "bun run check:worker && bun run check:effect && bun run check:workflows && bun run check:portfolio-inventory && bun run check:installed-command-docs && bun run typecheck && bun run build && bun run test:package && bun run test && bun run url-metadata:tool:check",
425
480
  "prepack": "bun run check",
426
- "check:effect": "bun run scripts/check-effect-policy.ts && bun test ./scripts/check-effect-architecture.test.ts"
481
+ "check:effect": "bun run scripts/check-effect-policy.ts",
482
+ "kb:search": "bunx --bun --package https://github.com/hraness/wordcell/releases/download/v0.22.1/hraness-wordcell-0.22.1.tgz wordcell search --root kb --mode exact --rerank typesafe --rerank-limit 25",
483
+ "kb:search:local": "bunx --bun --package https://github.com/hraness/wordcell/releases/download/v0.22.1/hraness-wordcell-0.22.1.tgz wordcell search --root kb --mode exact",
484
+ "check:worker": "tsc -p worker/tsconfig.json --noEmit"
427
485
  },
428
486
  "dependencies": {
429
- "@hraness/oh": "https://github.com/hraness/oh/releases/download/v0.4.3/hraness-oh-0.4.3.tgz",
487
+ "@hraness/oh": "https://github.com/hraness/oh/releases/download/v0.11.0/hraness-oh-0.11.0.tgz",
430
488
  "@steipete/sweet-cookie": "0.4.3",
431
489
  "@tobilu/qmd": "git+https://github.com/hraness/qmd.git#aa993dceb3ef8cfb71d470554ca437570f5a2b3c",
432
490
  "agent-browser": "0.32.3",
@@ -437,6 +495,7 @@
437
495
  "@hraness/support-foundation": "git+https://github.com/hraness/support-foundation.git#b32c1c81bb2444f50509ed54388758ecfab1f1c0"
438
496
  },
439
497
  "devDependencies": {
498
+ "@hraness/build-governance": "github:hraness/build-governance#v0.1.0",
440
499
  "@types/bun": "^1.3.14",
441
500
  "fast-check": "^4.8.0",
442
501
  "typescript": "^6.0.3"
@@ -7,6 +7,7 @@
7
7
  - `references/save-pdf.md` and `pdf-review.md` – PDF ingestion, OCR, image evidence, and mixed-media review.
8
8
  - `references/plan.md` and `plan-structure.md` – durable plan authoring and its adaptable Markdown contract.
9
9
  - `references/percolate.md` and `refresh.md` – evidence-backed graph edits, catalog maintenance, and vault validation.
10
+ - `references/publish.md` – static `hraness.wordcell.site.v1` publication of a vault or selected subsection.
10
11
  - `templates/companion-skill.template.md` – inert, copyable starting point for an approved companion skill.
11
12
  - `agents/openai.yaml` – user-facing skill metadata and invocation prompt.
12
13
 
@@ -35,6 +35,7 @@ selected.
35
35
  | Create or update an implementation plan, proposal, RFC, migration plan, execution audit, or phased checklist in the vault | [Write a durable plan](references/plan.md) and [use its structure](references/plan-structure.md) |
36
36
  | Review recurring ideas, promote concepts, or add and verify typed relationships | [Percolate concepts and relationships](references/percolate.md) |
37
37
  | Refresh or validate the catalog, graph, attachments, repository scopes, context mappings, or overall vault health | [Refresh and check the knowledge base](references/refresh.md) |
38
+ | Publish a vault or a selected subsection as a hosted read-only static site with browser-local search — locally via `wordcell publish`, or over the wordcell.io REST/MCP surface when no filesystem or Bun runtime is available | [Publish a static site](references/publish.md) |
38
39
 
39
40
  Read more than one primary reference only when the request spans those
40
41
  workflows. For example, saving a source and linking it from a maintained note
@@ -55,7 +56,7 @@ missing:
55
56
  ```sh
56
57
  command -v wordcell >/dev/null 2>&1 || {
57
58
  command -v bun >/dev/null 2>&1 || exit 1
58
- bun add --global --ignore-scripts https://github.com/hraness/wordcell/releases/download/v0.21.3/hraness-wordcell-0.21.3.tgz
59
+ bun add --global --ignore-scripts https://github.com/hraness/wordcell/releases/download/v0.22.1/hraness-wordcell-0.22.1.tgz
59
60
  }
60
61
  wordcell --help
61
62
  ```