@dikolab/kbdb 0.3.1 → 0.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.
Files changed (468) hide show
  1. package/README.md +108 -126
  2. package/dist/chunk-BJPSPNGX.mjs +223 -0
  3. package/dist/chunk-BJPSPNGX.mjs.map +7 -0
  4. package/dist/cli.cjs +956 -319
  5. package/dist/cli.cjs.map +4 -4
  6. package/dist/cli.d.ts +9 -0
  7. package/dist/cli.mjs +840 -321
  8. package/dist/cli.mjs.map +4 -4
  9. package/dist/kbdb-worker.cjs +714 -94
  10. package/dist/kbdb-worker.cjs.map +4 -4
  11. package/dist/mod.cjs +122 -16
  12. package/dist/mod.cjs.map +3 -3
  13. package/dist/mod.d.ts +23 -2
  14. package/dist/mod.mjs +121 -16
  15. package/dist/mod.mjs.map +3 -3
  16. package/dist/src/shared/cli/functions/dispatch-command.function.d.ts +2 -1
  17. package/dist/src/shared/cli/functions/find-db.function.d.ts +7 -8
  18. package/dist/src/shared/cli/functions/handle-mcp.function.d.ts +1 -1
  19. package/dist/src/shared/cli/functions/parse-args.function.d.ts +4 -3
  20. package/dist/src/shared/cli/functions/resolve-kbid-prefix.function.d.ts +27 -0
  21. package/dist/src/shared/cli/functions/resolve-raw-db-path.function.d.ts +10 -0
  22. package/dist/src/shared/cli/functions/run-cli.function.d.ts +3 -1
  23. package/dist/src/shared/cli/functions/run-content.function.d.ts +8 -3
  24. package/dist/src/shared/cli/functions/run-import.function.d.ts +27 -0
  25. package/dist/src/shared/cli/functions/run-recall.function.d.ts +10 -4
  26. package/dist/src/shared/cli/functions/run-search.function.d.ts +7 -0
  27. package/dist/src/shared/cli/functions/run-unlearn.function.d.ts +9 -4
  28. package/dist/src/shared/cli/functions/run-worker-restart.function.d.ts +11 -0
  29. package/dist/src/shared/cli/functions/run-worker-stop.function.d.ts +11 -0
  30. package/dist/src/shared/cli/index.d.ts +2 -0
  31. package/dist/src/shared/cli/typings/cli-deps.interface.d.ts +4 -1
  32. package/dist/src/shared/cli/typings/cli-options.interface.d.ts +17 -0
  33. package/dist/src/shared/cli/typings/dispatch-client.type.d.ts +2 -1
  34. package/dist/src/shared/cli/typings/search-display.model.d.ts +6 -0
  35. package/dist/src/shared/embedding/classes/api-embedding-provider.class.d.ts +33 -0
  36. package/dist/src/shared/embedding/classes/onnx-embedding-provider.class.d.ts +33 -0
  37. package/dist/src/shared/embedding/functions/append-vector-entry.function.d.ts +14 -0
  38. package/dist/src/shared/embedding/functions/create-embedding-provider.function.d.ts +12 -0
  39. package/dist/src/shared/embedding/functions/detect-stale-vectors.function.d.ts +16 -0
  40. package/dist/src/shared/embedding/functions/parse-api-embedding-response.function.d.ts +11 -0
  41. package/dist/src/shared/embedding/functions/rebuild-vectors.function.d.ts +15 -0
  42. package/dist/src/shared/embedding/functions/scan-semantic-contradictions.function.d.ts +13 -0
  43. package/dist/src/shared/embedding/index.d.ts +7 -0
  44. package/dist/src/shared/embedding/typings/semantic-contradiction.model.d.ts +21 -0
  45. package/dist/src/shared/embedding/typings/stale-vectors-report.model.d.ts +16 -0
  46. package/dist/src/shared/mcp/classes/mcp-server.class.d.ts +22 -2
  47. package/dist/src/shared/mcp/functions/create-mcp-server.function.d.ts +6 -1
  48. package/dist/src/shared/mcp/functions/has-sampling-capability.function.d.ts +8 -0
  49. package/dist/src/shared/mcp/functions/run-auto-capture.function.d.ts +26 -0
  50. package/dist/src/shared/mcp/typings/mcp-client.interface.d.ts +2 -0
  51. package/dist/src/shared/mcp/typings/mcp-integrity-check-result.model.d.ts +24 -0
  52. package/dist/src/shared/mcp/typings/mcp-worker-client.interface.d.ts +3 -1
  53. package/dist/src/shared/version/constants/version.constant.d.ts +1 -1
  54. package/dist/src/shared/wasm-codec/typings/paged-search-result.model.d.ts +2 -0
  55. package/dist/src/shared/worker-client/classes/worker-client.class.d.ts +31 -1
  56. package/dist/src/shared/worker-client/constants/request-timeout.constant.d.ts +2 -0
  57. package/dist/src/shared/worker-client/constants/retry-defaults.constant.d.ts +2 -0
  58. package/dist/src/shared/worker-client/functions/get-or-create-client.function.d.ts +20 -0
  59. package/dist/src/shared/worker-client/functions/retry-on-timeout.function.d.ts +17 -0
  60. package/dist/src/shared/worker-client/index.d.ts +4 -1
  61. package/dist/src/shared/worker-client/typings/import-result.model.d.ts +16 -0
  62. package/dist/src/shared/worker-client/typings/integrity-check-result.model.d.ts +24 -0
  63. package/dist/src/shared/worker-client/typings/search-params.model.d.ts +4 -0
  64. package/dist/src/shared/worker-client/typings/search-result.model.d.ts +6 -0
  65. package/dist/src/shared/worker-client/typings/worker-client-options.interface.d.ts +7 -0
  66. package/dist/src/shared/worker-daemon/classes/worker-daemon.class.d.ts +5 -0
  67. package/dist/src/shared/worker-daemon/functions/create-ipc-server.function.d.ts +11 -11
  68. package/dist/src/shared/worker-daemon/functions/embed-after-learn.function.d.ts +13 -0
  69. package/dist/src/shared/worker-daemon/functions/handle-hybrid-search.function.d.ts +44 -0
  70. package/dist/src/shared/worker-daemon/functions/handle-import.function.d.ts +14 -0
  71. package/dist/src/shared/worker-daemon/functions/handle-read-ops.function.d.ts +7 -1
  72. package/dist/src/shared/worker-daemon/functions/handle-write-ops.function.d.ts +9 -4
  73. package/dist/src/shared/worker-daemon/typings/handler-context.interface.d.ts +3 -0
  74. package/dist/wasm/fs-database/kbdb_fs_database.d.ts +16 -85
  75. package/dist/wasm/fs-database/kbdb_fs_database.js +16 -85
  76. package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  77. package/dist/wasm/kb-worker/kbdb_worker.d.ts +20 -115
  78. package/dist/wasm/kb-worker/kbdb_worker.js +20 -115
  79. package/dist/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  80. package/dist/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  81. package/dist/worker.d.ts +8 -0
  82. package/dist/worker.mjs +606 -102
  83. package/dist/worker.mjs.map +4 -4
  84. package/docs/details/README.md +4 -0
  85. package/docs/details/agent-tooling.md +122 -0
  86. package/docs/details/cli.md +78 -12
  87. package/docs/details/knowledge-base.md +173 -0
  88. package/docs/details/library-api.md +42 -2
  89. package/docs/details/mcp-server.md +39 -8
  90. package/docs/details/search-and-ranking.md +56 -0
  91. package/docs/goals/cli.md +110 -34
  92. package/docs/goals/mcp.md +22 -19
  93. package/docs/goals/query-parser.md +8 -0
  94. package/docs/goals/worker-client.md +62 -1
  95. package/docs/goals/worker-daemon.md +52 -10
  96. package/docs/modules/typescript/cli.md +1 -1
  97. package/docs/modules/typescript/shared/cli/functions.md +116 -13
  98. package/docs/modules/typescript/shared/cli/module.md +33 -20
  99. package/docs/modules/typescript/shared/cli/typings.md +4 -0
  100. package/docs/modules/typescript/shared/embedding/functions.md +104 -25
  101. package/docs/modules/typescript/shared/mcp/module.md +1 -1
  102. package/docs/modules/typescript/shared/mcp/typings.md +8 -1
  103. package/docs/modules/typescript/shared/worker-client/module.md +9 -1
  104. package/docs/modules/typescript/shared/worker-client/typings.md +3 -0
  105. package/docs/modules/typescript/shared/worker-daemon/module.md +6 -3
  106. package/docs/overview.md +43 -22
  107. package/docs/release-notes/0.3.1.md +10 -0
  108. package/docs/release-notes/0.3.2.md +64 -0
  109. package/docs/release-notes/0.4.0.md +80 -0
  110. package/docs/release-notes/README.md +2 -0
  111. package/mod.ts +33 -15
  112. package/package.json +11 -10
  113. package/dist/chunk-JG2UCKLI.mjs +0 -95
  114. package/dist/chunk-JG2UCKLI.mjs.map +0 -7
  115. package/src/cli.ts +0 -71
  116. package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +0 -62
  117. package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +0 -15
  118. package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +0 -27
  119. package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +0 -50
  120. package/src/shared/auto-capture/index.ts +0 -7
  121. package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +0 -13
  122. package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +0 -13
  123. package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +0 -7
  124. package/src/shared/cli/constants/defaults.constant.ts +0 -19
  125. package/src/shared/cli/constants/global-help.constant.ts +0 -73
  126. package/src/shared/cli/constants/help-text.constant.ts +0 -4
  127. package/src/shared/cli/constants/leaf-help.constant.ts +0 -219
  128. package/src/shared/cli/constants/memory-protocol-body.constant.ts +0 -39
  129. package/src/shared/cli/constants/query-guidance-body.constant.ts +0 -37
  130. package/src/shared/cli/constants/subcommand-help.constant.ts +0 -195
  131. package/src/shared/cli/functions/collect-files.function.ts +0 -55
  132. package/src/shared/cli/functions/compute-section-kbid.function.ts +0 -49
  133. package/src/shared/cli/functions/dispatch-command.function.ts +0 -390
  134. package/src/shared/cli/functions/ensure-db.function.ts +0 -21
  135. package/src/shared/cli/functions/error-to-message.function.ts +0 -9
  136. package/src/shared/cli/functions/find-db.function.ts +0 -20
  137. package/src/shared/cli/functions/format-mcp-output.function.ts +0 -41
  138. package/src/shared/cli/functions/format-output.function.ts +0 -95
  139. package/src/shared/cli/functions/format-text-output.function.ts +0 -42
  140. package/src/shared/cli/functions/generate-group-help.function.ts +0 -41
  141. package/src/shared/cli/functions/generate-help.function.ts +0 -654
  142. package/src/shared/cli/functions/handle-data-command.function.ts +0 -67
  143. package/src/shared/cli/functions/handle-mcp.function.ts +0 -56
  144. package/src/shared/cli/functions/handle-migrate.function.ts +0 -64
  145. package/src/shared/cli/functions/hydrate-search-previews.function.ts +0 -29
  146. package/src/shared/cli/functions/install-default-skills.function.ts +0 -296
  147. package/src/shared/cli/functions/is-stdin-tty.function.ts +0 -12
  148. package/src/shared/cli/functions/parse-args.function.ts +0 -156
  149. package/src/shared/cli/functions/prompt-user.function.ts +0 -36
  150. package/src/shared/cli/functions/resolve-skill-names.function.ts +0 -43
  151. package/src/shared/cli/functions/run-agent-create.function.ts +0 -114
  152. package/src/shared/cli/functions/run-agent-delete.function.ts +0 -47
  153. package/src/shared/cli/functions/run-agent-get.function.ts +0 -166
  154. package/src/shared/cli/functions/run-agent-list.function.ts +0 -58
  155. package/src/shared/cli/functions/run-check.function.ts +0 -159
  156. package/src/shared/cli/functions/run-cli.function.ts +0 -299
  157. package/src/shared/cli/functions/run-content.function.ts +0 -47
  158. package/src/shared/cli/functions/run-db-init.function.ts +0 -44
  159. package/src/shared/cli/functions/run-db-migrate.function.ts +0 -40
  160. package/src/shared/cli/functions/run-export.function.ts +0 -40
  161. package/src/shared/cli/functions/run-gc.function.ts +0 -51
  162. package/src/shared/cli/functions/run-init.function.ts +0 -93
  163. package/src/shared/cli/functions/run-learn.function.ts +0 -223
  164. package/src/shared/cli/functions/run-migrate.function.ts +0 -85
  165. package/src/shared/cli/functions/run-rebuild.function.ts +0 -47
  166. package/src/shared/cli/functions/run-recall.function.ts +0 -66
  167. package/src/shared/cli/functions/run-search.function.ts +0 -133
  168. package/src/shared/cli/functions/run-skill-delete.function.ts +0 -47
  169. package/src/shared/cli/functions/run-skill-get.function.ts +0 -90
  170. package/src/shared/cli/functions/run-skill-learn.function.ts +0 -70
  171. package/src/shared/cli/functions/run-skill-list.function.ts +0 -74
  172. package/src/shared/cli/functions/run-status.function.ts +0 -29
  173. package/src/shared/cli/functions/run-unlearn.function.ts +0 -58
  174. package/src/shared/cli/functions/version-gate.function.ts +0 -44
  175. package/src/shared/cli/functions/wrap-command.function.ts +0 -34
  176. package/src/shared/cli/index.ts +0 -55
  177. package/src/shared/cli/typings/agent-create-client.interface.ts +0 -47
  178. package/src/shared/cli/typings/agent-get-client.interface.ts +0 -39
  179. package/src/shared/cli/typings/check-client.interface.ts +0 -66
  180. package/src/shared/cli/typings/cli-deps.interface.ts +0 -54
  181. package/src/shared/cli/typings/cli-options.interface.ts +0 -72
  182. package/src/shared/cli/typings/command-result.model.ts +0 -15
  183. package/src/shared/cli/typings/disconnectable-client.interface.ts +0 -29
  184. package/src/shared/cli/typings/dispatch-client.type.ts +0 -46
  185. package/src/shared/cli/typings/learn-client.interface.ts +0 -53
  186. package/src/shared/cli/typings/learn-io.interface.ts +0 -5
  187. package/src/shared/cli/typings/learn-result.model.ts +0 -27
  188. package/src/shared/cli/typings/search-client.interface.ts +0 -73
  189. package/src/shared/cli/typings/search-display.model.ts +0 -54
  190. package/src/shared/dir-resolver/functions/join-path.function.ts +0 -13
  191. package/src/shared/dir-resolver/functions/resolve-base-dir.function.ts +0 -25
  192. package/src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts +0 -5
  193. package/src/shared/dir-resolver/functions/resolve-worker-script.function.ts +0 -13
  194. package/src/shared/dir-resolver/index.ts +0 -11
  195. package/src/shared/dir-resolver/typings/base-dir.interface.ts +0 -4
  196. package/src/shared/embedding/classes/null-embedding-provider.class.ts +0 -29
  197. package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +0 -17
  198. package/src/shared/embedding/functions/build-vector-index.function.ts +0 -79
  199. package/src/shared/embedding/functions/cosine-similarity.function.ts +0 -31
  200. package/src/shared/embedding/functions/detect-near-duplicates.function.ts +0 -69
  201. package/src/shared/embedding/functions/jaccard-coefficient.function.ts +0 -26
  202. package/src/shared/embedding/functions/read-vector-index-meta.function.ts +0 -44
  203. package/src/shared/embedding/functions/rrf-fuse.function.ts +0 -33
  204. package/src/shared/embedding/functions/search-vectors.function.ts +0 -59
  205. package/src/shared/embedding/index.ts +0 -20
  206. package/src/shared/embedding/typings/embedding-config.interface.ts +0 -23
  207. package/src/shared/embedding/typings/embedding-provider.interface.ts +0 -25
  208. package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +0 -25
  209. package/src/shared/embedding/typings/near-duplicate-result.model.ts +0 -26
  210. package/src/shared/embedding/typings/vector-index-entry.model.ts +0 -13
  211. package/src/shared/embedding/typings/vector-index-meta.model.ts +0 -14
  212. package/src/shared/embedding/typings/vector-search-result.model.ts +0 -8
  213. package/src/shared/hash/functions/compute-sha256.ts +0 -17
  214. package/src/shared/hash/index.ts +0 -1
  215. package/src/shared/mcp/classes/mcp-server.class.ts +0 -480
  216. package/src/shared/mcp/constants/mcp-error-codes.constant.ts +0 -30
  217. package/src/shared/mcp/constants/tool-agent-create.constant.ts +0 -39
  218. package/src/shared/mcp/constants/tool-agent-delete.constant.ts +0 -26
  219. package/src/shared/mcp/constants/tool-agent-get.constant.ts +0 -24
  220. package/src/shared/mcp/constants/tool-agent-list.constant.ts +0 -18
  221. package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +0 -32
  222. package/src/shared/mcp/constants/tool-check.constant.ts +0 -21
  223. package/src/shared/mcp/constants/tool-content.constant.ts +0 -29
  224. package/src/shared/mcp/constants/tool-export.constant.ts +0 -27
  225. package/src/shared/mcp/constants/tool-gc.constant.ts +0 -21
  226. package/src/shared/mcp/constants/tool-learn.constant.ts +0 -58
  227. package/src/shared/mcp/constants/tool-rebuild.constant.ts +0 -21
  228. package/src/shared/mcp/constants/tool-recall.constant.ts +0 -36
  229. package/src/shared/mcp/constants/tool-retrieve.constant.ts +0 -31
  230. package/src/shared/mcp/constants/tool-search.constant.ts +0 -51
  231. package/src/shared/mcp/constants/tool-skill-delete.constant.ts +0 -24
  232. package/src/shared/mcp/constants/tool-skill-get.constant.ts +0 -27
  233. package/src/shared/mcp/constants/tool-skill-learn.constant.ts +0 -37
  234. package/src/shared/mcp/constants/tool-skill-list.constant.ts +0 -18
  235. package/src/shared/mcp/constants/tool-status.constant.ts +0 -20
  236. package/src/shared/mcp/constants/tool-unlearn.constant.ts +0 -25
  237. package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +0 -11
  238. package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +0 -17
  239. package/src/shared/mcp/functions/as-string-array.function.ts +0 -15
  240. package/src/shared/mcp/functions/as-string.function.ts +0 -10
  241. package/src/shared/mcp/functions/build-skills-text.function.ts +0 -43
  242. package/src/shared/mcp/functions/create-mcp-server.function.ts +0 -14
  243. package/src/shared/mcp/functions/create-prompt-definitions.function.ts +0 -102
  244. package/src/shared/mcp/functions/create-resource-templates.function.ts +0 -23
  245. package/src/shared/mcp/functions/create-tool-definitions.function.ts +0 -530
  246. package/src/shared/mcp/functions/extract-skill-arguments.function.ts +0 -27
  247. package/src/shared/mcp/functions/handle-agent-create.function.ts +0 -116
  248. package/src/shared/mcp/functions/handle-agent-delete.function.ts +0 -50
  249. package/src/shared/mcp/functions/handle-agent-get.function.ts +0 -160
  250. package/src/shared/mcp/functions/handle-agent-list.function.ts +0 -50
  251. package/src/shared/mcp/functions/handle-agent-prompt.function.ts +0 -68
  252. package/src/shared/mcp/functions/handle-completion.function.ts +0 -114
  253. package/src/shared/mcp/functions/handle-mcp-request.function.ts +0 -202
  254. package/src/shared/mcp/functions/handle-prompt-get.function.ts +0 -220
  255. package/src/shared/mcp/functions/handle-recall.function.ts +0 -66
  256. package/src/shared/mcp/functions/handle-resource-read.function.ts +0 -56
  257. package/src/shared/mcp/functions/handle-roots-list.function.ts +0 -29
  258. package/src/shared/mcp/functions/handle-skill-prompt.function.ts +0 -44
  259. package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +0 -24
  260. package/src/shared/mcp/functions/handle-tool-call.function.ts +0 -560
  261. package/src/shared/mcp/functions/handle-tool-check.function.ts +0 -21
  262. package/src/shared/mcp/functions/handle-tool-content.function.ts +0 -23
  263. package/src/shared/mcp/functions/handle-tool-export.function.ts +0 -25
  264. package/src/shared/mcp/functions/handle-tool-gc.function.ts +0 -21
  265. package/src/shared/mcp/functions/handle-tool-learn.function.ts +0 -69
  266. package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +0 -21
  267. package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +0 -40
  268. package/src/shared/mcp/functions/handle-tool-search.function.ts +0 -47
  269. package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +0 -34
  270. package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +0 -59
  271. package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +0 -61
  272. package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +0 -39
  273. package/src/shared/mcp/functions/handle-tool-status.function.ts +0 -21
  274. package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +0 -24
  275. package/src/shared/mcp/functions/parse-agent-meta.function.ts +0 -27
  276. package/src/shared/mcp/functions/parse-skill-arguments.function.ts +0 -36
  277. package/src/shared/mcp/functions/parse-skill-content.function.ts +0 -38
  278. package/src/shared/mcp/functions/read-agent-meta.function.ts +0 -41
  279. package/src/shared/mcp/functions/resolve-skill-refs.function.ts +0 -50
  280. package/src/shared/mcp/functions/run-startup-health-check.function.ts +0 -34
  281. package/src/shared/mcp/functions/serialize-skill-content.function.ts +0 -12
  282. package/src/shared/mcp/functions/should-emit-log.function.ts +0 -38
  283. package/src/shared/mcp/index.ts +0 -28
  284. package/src/shared/mcp/typings/agent-types.interface.ts +0 -39
  285. package/src/shared/mcp/typings/log-types.interface.ts +0 -26
  286. package/src/shared/mcp/typings/mcp-capabilities.interface.ts +0 -16
  287. package/src/shared/mcp/typings/mcp-client.interface.ts +0 -317
  288. package/src/shared/mcp/typings/mcp-completion.interface.ts +0 -45
  289. package/src/shared/mcp/typings/mcp-content-result.model.ts +0 -9
  290. package/src/shared/mcp/typings/mcp-export-result.model.ts +0 -11
  291. package/src/shared/mcp/typings/mcp-gc-result.model.ts +0 -15
  292. package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +0 -17
  293. package/src/shared/mcp/typings/mcp-integrity-error.model.ts +0 -15
  294. package/src/shared/mcp/typings/mcp-notification.interface.ts +0 -9
  295. package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +0 -9
  296. package/src/shared/mcp/typings/mcp-request.interface.ts +0 -11
  297. package/src/shared/mcp/typings/mcp-resource-result.interface.ts +0 -12
  298. package/src/shared/mcp/typings/mcp-resource-template.interface.ts +0 -11
  299. package/src/shared/mcp/typings/mcp-response.interface.ts +0 -18
  300. package/src/shared/mcp/typings/mcp-server-info.interface.ts +0 -7
  301. package/src/shared/mcp/typings/mcp-server-state.interface.ts +0 -17
  302. package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +0 -32
  303. package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +0 -16
  304. package/src/shared/mcp/typings/mcp-tool-result.interface.ts +0 -19
  305. package/src/shared/mcp/typings/mcp-types.interface.ts +0 -158
  306. package/src/shared/mcp/typings/mcp-worker-client.interface.ts +0 -243
  307. package/src/shared/mcp/typings/prompt-types.interface.ts +0 -39
  308. package/src/shared/mcp/typings/remove-section-result.model.ts +0 -10
  309. package/src/shared/mcp/typings/sampling-types.interface.ts +0 -48
  310. package/src/shared/mcp/typings/skill-types.interface.ts +0 -29
  311. package/src/shared/mcp/typings/tool-call-result.model.ts +0 -18
  312. package/src/shared/mod.ts +0 -1
  313. package/src/shared/platform/functions/get-ipc-path.function.ts +0 -19
  314. package/src/shared/platform/functions/get-tmpdir.function.ts +0 -8
  315. package/src/shared/platform/functions/is-process-alive.function.ts +0 -17
  316. package/src/shared/platform/index.ts +0 -3
  317. package/src/shared/runtime/functions/detect-runtime.ts +0 -14
  318. package/src/shared/runtime/functions/get-args.ts +0 -16
  319. package/src/shared/runtime/index.ts +0 -3
  320. package/src/shared/runtime/typings/runtime.ts +0 -2
  321. package/src/shared/sync/functions/build-import-report.function.ts +0 -40
  322. package/src/shared/sync/functions/parse-export-entry.function.ts +0 -45
  323. package/src/shared/sync/functions/resolve-conflict.function.ts +0 -31
  324. package/src/shared/sync/functions/serialize-export-entry.function.ts +0 -18
  325. package/src/shared/sync/index.ts +0 -9
  326. package/src/shared/sync/typings/conflict-resolution.type.ts +0 -8
  327. package/src/shared/sync/typings/export-entry.interface.ts +0 -13
  328. package/src/shared/sync/typings/export-options.interface.ts +0 -9
  329. package/src/shared/sync/typings/import-options.interface.ts +0 -7
  330. package/src/shared/sync/typings/import-report.interface.ts +0 -15
  331. package/src/shared/version/constants/version.constant.ts +0 -2
  332. package/src/shared/version/index.ts +0 -1
  333. package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +0 -112
  334. package/src/shared/wasm-codec/functions/decode-compose-output.function.ts +0 -16
  335. package/src/shared/wasm-codec/functions/decode-document-manifest-list.function.ts +0 -70
  336. package/src/shared/wasm-codec/functions/decode-document-manifest.function.ts +0 -87
  337. package/src/shared/wasm-codec/functions/decode-f32.function.ts +0 -16
  338. package/src/shared/wasm-codec/functions/decode-key-value-text.function.ts +0 -15
  339. package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +0 -86
  340. package/src/shared/wasm-codec/functions/decode-option-string.function.ts +0 -24
  341. package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +0 -59
  342. package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +0 -52
  343. package/src/shared/wasm-codec/functions/decode-recall-result.function.ts +0 -267
  344. package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +0 -43
  345. package/src/shared/wasm-codec/functions/decode-remove-flag.function.ts +0 -3
  346. package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +0 -194
  347. package/src/shared/wasm-codec/functions/decode-section-match.function.ts +0 -80
  348. package/src/shared/wasm-codec/functions/decode-section-record-list.function.ts +0 -20
  349. package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +0 -75
  350. package/src/shared/wasm-codec/functions/decode-section-record.function.ts +0 -85
  351. package/src/shared/wasm-codec/functions/decode-section-records.function.ts +0 -249
  352. package/src/shared/wasm-codec/functions/decode-section-type.function.ts +0 -30
  353. package/src/shared/wasm-codec/functions/decode-string.function.ts +0 -22
  354. package/src/shared/wasm-codec/functions/decode-u32.function.ts +0 -16
  355. package/src/shared/wasm-codec/functions/decode-u64.function.ts +0 -16
  356. package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +0 -31
  357. package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +0 -102
  358. package/src/shared/wasm-codec/functions/encode-group-params.function.ts +0 -28
  359. package/src/shared/wasm-codec/functions/encode-identifier-list.function.ts +0 -17
  360. package/src/shared/wasm-codec/functions/encode-kbid-list.function.ts +0 -17
  361. package/src/shared/wasm-codec/functions/encode-option-string.function.ts +0 -14
  362. package/src/shared/wasm-codec/functions/encode-recall-params.function.ts +0 -68
  363. package/src/shared/wasm-codec/functions/encode-search-params.function.ts +0 -12
  364. package/src/shared/wasm-codec/functions/encode-section-type.function.ts +0 -18
  365. package/src/shared/wasm-codec/functions/encode-string.function.ts +0 -9
  366. package/src/shared/wasm-codec/functions/encode-type-filter-param.function.ts +0 -13
  367. package/src/shared/wasm-codec/functions/encode-u32.function.ts +0 -5
  368. package/src/shared/wasm-codec/functions/encode-update-section-params.function.ts +0 -16
  369. package/src/shared/wasm-codec/index.ts +0 -49
  370. package/src/shared/wasm-codec/typings/add-section-input.model.ts +0 -45
  371. package/src/shared/wasm-codec/typings/add-section-result.model.ts +0 -28
  372. package/src/shared/wasm-codec/typings/document-manifest.model.ts +0 -20
  373. package/src/shared/wasm-codec/typings/document-section.model.ts +0 -12
  374. package/src/shared/wasm-codec/typings/item-decoder.type.ts +0 -10
  375. package/src/shared/wasm-codec/typings/near-duplicate.model.ts +0 -16
  376. package/src/shared/wasm-codec/typings/paged-search-result.model.ts +0 -22
  377. package/src/shared/wasm-codec/typings/section-match.model.ts +0 -31
  378. package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +0 -38
  379. package/src/shared/wasm-codec/typings/section-record.model.ts +0 -66
  380. package/src/shared/wasm-codec/typings/section-type-result.model.ts +0 -12
  381. package/src/shared/worker-client/classes/worker-client.class.ts +0 -466
  382. package/src/shared/worker-client/functions/compute-context-id.function.ts +0 -18
  383. package/src/shared/worker-client/functions/create-worker-client.function.ts +0 -70
  384. package/src/shared/worker-client/functions/discover-daemon.function.ts +0 -47
  385. package/src/shared/worker-client/functions/handle-ipc-data.function.ts +0 -49
  386. package/src/shared/worker-client/functions/resolve-db-path.function.ts +0 -21
  387. package/src/shared/worker-client/functions/send-ipc-request.function.ts +0 -39
  388. package/src/shared/worker-client/functions/spawn-daemon.function.ts +0 -35
  389. package/src/shared/worker-client/functions/wait-for-daemon.function.ts +0 -34
  390. package/src/shared/worker-client/index.ts +0 -44
  391. package/src/shared/worker-client/typings/add-section-result.model.ts +0 -39
  392. package/src/shared/worker-client/typings/content-result.model.ts +0 -12
  393. package/src/shared/worker-client/typings/daemon-info.model.ts +0 -7
  394. package/src/shared/worker-client/typings/export-result.model.ts +0 -14
  395. package/src/shared/worker-client/typings/gc-result.model.ts +0 -18
  396. package/src/shared/worker-client/typings/integrity-check-result.model.ts +0 -43
  397. package/src/shared/worker-client/typings/json-rpc-response.interface.ts +0 -17
  398. package/src/shared/worker-client/typings/migrate-result.model.ts +0 -11
  399. package/src/shared/worker-client/typings/pending-call.interface.ts +0 -7
  400. package/src/shared/worker-client/typings/rebuild-result.model.ts +0 -12
  401. package/src/shared/worker-client/typings/recall-document.model.ts +0 -16
  402. package/src/shared/worker-client/typings/recall-params.model.ts +0 -15
  403. package/src/shared/worker-client/typings/recall-reference.model.ts +0 -32
  404. package/src/shared/worker-client/typings/recall-result.model.ts +0 -98
  405. package/src/shared/worker-client/typings/recall-sibling.model.ts +0 -11
  406. package/src/shared/worker-client/typings/recall-single-result.model.ts +0 -41
  407. package/src/shared/worker-client/typings/remove-section-result.model.ts +0 -7
  408. package/src/shared/worker-client/typings/search-params.model.ts +0 -14
  409. package/src/shared/worker-client/typings/search-result.model.ts +0 -43
  410. package/src/shared/worker-client/typings/section.model.ts +0 -43
  411. package/src/shared/worker-client/typings/status-result.model.ts +0 -14
  412. package/src/shared/worker-client/typings/version-status.model.ts +0 -28
  413. package/src/shared/worker-client/typings/worker-client-error.interface.ts +0 -8
  414. package/src/shared/worker-client/typings/worker-client-options.interface.ts +0 -30
  415. package/src/shared/worker-daemon/classes/ipc-error.class.ts +0 -22
  416. package/src/shared/worker-daemon/classes/worker-daemon.class.ts +0 -1291
  417. package/src/shared/worker-daemon/constants/daemon-defaults.constant.ts +0 -29
  418. package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +0 -69
  419. package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +0 -16
  420. package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +0 -54
  421. package/src/shared/worker-daemon/functions/check-preconditions.function.ts +0 -28
  422. package/src/shared/worker-daemon/functions/create-host-imports.function.ts +0 -328
  423. package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +0 -87
  424. package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +0 -33
  425. package/src/shared/worker-daemon/functions/dispatch-request.function.ts +0 -190
  426. package/src/shared/worker-daemon/functions/handle-check-version.function.ts +0 -74
  427. package/src/shared/worker-daemon/functions/handle-config-method.function.ts +0 -27
  428. package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +0 -236
  429. package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +0 -257
  430. package/src/shared/worker-daemon/functions/load-wasm-modules.function.ts +0 -95
  431. package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +0 -51
  432. package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +0 -20
  433. package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +0 -38
  434. package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +0 -104
  435. package/src/shared/worker-daemon/functions/read-config.function.ts +0 -83
  436. package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +0 -55
  437. package/src/shared/worker-daemon/functions/run-worker.function.ts +0 -57
  438. package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +0 -92
  439. package/src/shared/worker-daemon/functions/start-daemon.function.ts +0 -74
  440. package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +0 -144
  441. package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +0 -41
  442. package/src/shared/worker-daemon/functions/write-lock.function.ts +0 -49
  443. package/src/shared/worker-daemon/index.ts +0 -16
  444. package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +0 -16
  445. package/src/shared/worker-daemon/typings/daemon-config.interface.ts +0 -20
  446. package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +0 -22
  447. package/src/shared/worker-daemon/typings/handler-context.interface.ts +0 -19
  448. package/src/shared/worker-daemon/typings/ipc-handler.interface.ts +0 -39
  449. package/src/shared/worker-daemon/typings/memory-ref.interface.ts +0 -13
  450. package/src/shared/worker-daemon/typings/wasm-fn.type.ts +0 -2
  451. package/src/shared/worker-daemon/typings/wasm-modules.interface.ts +0 -7
  452. package/src/shared/worker-daemon/typings/write-lock.interface.ts +0 -13
  453. package/src/wasm/fs-database/kbdb_fs_database.d.ts +0 -259
  454. package/src/wasm/fs-database/kbdb_fs_database.js +0 -515
  455. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  456. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +0 -35
  457. package/src/wasm/fs-database/package.json +0 -13
  458. package/src/wasm/kb-worker/kbdb_worker.d.ts +0 -650
  459. package/src/wasm/kb-worker/kbdb_worker.js +0 -1181
  460. package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  461. package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +0 -77
  462. package/src/wasm/kb-worker/package.json +0 -13
  463. package/src/wasm/query-parser/kbdb_query_parser.d.ts +0 -195
  464. package/src/wasm/query-parser/kbdb_query_parser.js +0 -403
  465. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  466. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm.d.ts +0 -25
  467. package/src/wasm/query-parser/package.json +0 -13
  468. package/src/worker.ts +0 -42
@@ -41,14 +41,16 @@ interface CliDeps {
41
41
 
42
42
  Routes:
43
43
 
44
- | Command | Handler |
45
- |-------------|----------------------------------|
46
- | `help` | returns `HELP_TEXT` |
47
- | `version` | returns `VERSION` |
48
- | `init` | calls `deps.runInit` |
49
- | `mcp` | calls `deps.startMcpServer` |
50
- | `migrate` | version check + migrate daemon |
51
- | *(other)* | `dispatchCommand(client, opts)` |
44
+ | Command | Handler |
45
+ |------------------|----------------------------------|
46
+ | `help` | returns `HELP_TEXT` |
47
+ | `version` | returns `VERSION` |
48
+ | `init` | calls `deps.runInit` |
49
+ | `mcp` | calls `deps.startMcpServer` |
50
+ | `migrate` | version check + migrate daemon |
51
+ | `worker-stop` | `runWorkerStop(dbDir)` |
52
+ | `worker-restart` | `runWorkerRestart(dbDir)` |
53
+ | *(other)* | `dispatchCommand(client, opts)` |
52
54
 
53
55
  ### `dispatchCommand`
54
56
 
@@ -69,8 +71,8 @@ async function dispatchCommand(
69
71
  `DispatchClient` is the intersection of all per-command
70
72
  client interfaces (`SearchClient & LearnClient &
71
73
  UnlearnClient & RecallClient & ContentClient &
72
- CheckClient & GcClient & RebuildClient & ExportClient &
73
- SkillClient & AgentClient`).
74
+ CheckClient & GcClient & RebuildClient & StatusClient &
75
+ ExportClient & SkillClient & AgentClient`).
74
76
 
75
77
  | Command | Handler |
76
78
  |----------------|----------------------------------|
@@ -82,6 +84,7 @@ SkillClient & AgentClient`).
82
84
  | `content` | `runContent(client, options)` |
83
85
  | `check` | `runCheck(client, options)` |
84
86
  | `gc` | `runGc(client, options)` |
87
+ | `status` | `runStatus(client, options)` |
85
88
  | `rebuild` | `runRebuild(client, options)` |
86
89
  | `skill-learn` | `runSkillLearn(client, options)` |
87
90
  | `skill-list` | `runSkillList(client, options)` |
@@ -110,9 +113,9 @@ Throws on invalid or missing required arguments.
110
113
  Prints help text and exits for `--help` / `--version`.
111
114
 
112
115
  **Compound command handling**: when the first positional
113
- argument is `db`, `skill`, or `agent`, the parser
114
- consumes the next positional as the subcommand and sets
115
- `command` to the hyphenated form:
116
+ argument is `db`, `skill`, `agent`, or `worker`, the
117
+ parser consumes the next positional as the subcommand
118
+ and sets `command` to the hyphenated form:
116
119
 
117
120
  | First positional | Second positional | `command` value |
118
121
  |------------------|-------------------|------------------|
@@ -126,6 +129,8 @@ consumes the next positional as the subcommand and sets
126
129
  | `agent` | `list` | `agent-list` |
127
130
  | `agent` | `get` | `agent-get` |
128
131
  | `agent` | `delete` | `agent-delete` |
132
+ | `worker` | `stop` | `worker-stop` |
133
+ | `worker` | `restart` | `worker-restart` |
129
134
 
130
135
  **New options parsed:**
131
136
 
@@ -384,6 +389,70 @@ Output: JSON `{ "path": "...",
384
389
  "documents_exported": number,
385
390
  "elapsed_ms": number }`.
386
391
 
392
+ ### `runStatus`
393
+
394
+ **File:** `run-status.function.ts`
395
+
396
+ Retrieves the database status summary report from the
397
+ worker daemon.
398
+
399
+ ```ts
400
+ async function runStatus(
401
+ client: StatusClient,
402
+ options: CliOptions,
403
+ ): Promise<unknown>;
404
+ ```
405
+
406
+ `StatusClient` interface:
407
+
408
+ ```ts
409
+ interface StatusClient {
410
+ dbStatus(): Promise<unknown>;
411
+ }
412
+ ```
413
+
414
+ Delegates to `client.dbStatus()`. The caller is
415
+ responsible for serialising the result and setting
416
+ the process exit code.
417
+
418
+ ### `runWorkerStop`
419
+
420
+ **File:** `run-worker-stop.function.ts`
421
+
422
+ Stops the background worker daemon for the current
423
+ database. Discovers the daemon via its PID file and
424
+ sends `SIGTERM`. Returns success when the daemon was
425
+ stopped or was not running.
426
+
427
+ ```ts
428
+ async function runWorkerStop(
429
+ dbDir: string,
430
+ ): Promise<CommandResult>;
431
+ ```
432
+
433
+ Routed directly by `runCli` (not via
434
+ `dispatchCommand`) because the worker-stop command
435
+ does not require a live worker client connection.
436
+
437
+ ### `runWorkerRestart`
438
+
439
+ **File:** `run-worker-restart.function.ts`
440
+
441
+ Stops and restarts the background worker daemon.
442
+ Calls `runWorkerStop` internally; the daemon
443
+ auto-spawns on the next CLI command, so restart only
444
+ needs to stop the current instance.
445
+
446
+ ```ts
447
+ async function runWorkerRestart(
448
+ dbDir: string,
449
+ ): Promise<CommandResult>;
450
+ ```
451
+
452
+ Routed directly by `runCli` (not via
453
+ `dispatchCommand`) for the same reason as
454
+ `runWorkerStop`.
455
+
387
456
  ### `ensureDb`
388
457
 
389
458
  **File:** `ensure-db.function.ts`
@@ -470,6 +539,35 @@ interface PromptIO {
470
539
 
471
540
  Defaults to readline on `process.stdin`/`process.stdout`.
472
541
 
542
+ ### `resolveKbidPrefix`
543
+
544
+ **File:** `resolve-kbid-prefix.function.ts`
545
+
546
+ Resolves a short kbid prefix to a full 26-character
547
+ kbid. Scans all section types (`text`, `code`, `image`)
548
+ for kbids matching the prefix and returns the full
549
+ identifier when exactly one match exists. Full-length
550
+ identifiers (>= 26 chars) are returned as-is. Throws
551
+ when the prefix is ambiguous (multiple matches) or
552
+ unrecognized (no matches).
553
+
554
+ ```ts
555
+ async function resolveKbidPrefix(
556
+ prefix: string,
557
+ client: PrefixResolver,
558
+ ): Promise<string>;
559
+ ```
560
+
561
+ `PrefixResolver` interface:
562
+
563
+ ```ts
564
+ interface PrefixResolver {
565
+ listByType(
566
+ sectionType: string,
567
+ ): Promise<readonly { kbid: string }[]>;
568
+ }
569
+ ```
570
+
473
571
  ### `runDbInit`
474
572
 
475
573
  **File:** `run-db-init.function.ts`
@@ -675,10 +773,15 @@ src/shared/cli/
675
773
  ├── run-export.spec.ts
676
774
  ├── run-unlearn.spec.ts
677
775
  ├── run-search.spec.ts
776
+ ├── run-recall.spec.ts
678
777
  ├── run-content.spec.ts
778
+ ├── run-status.spec.ts
679
779
  ├── run-check.spec.ts
680
780
  ├── run-gc.spec.ts
681
781
  ├── run-rebuild.spec.ts
782
+ ├── run-worker-stop.spec.ts
783
+ ├── run-worker-restart.spec.ts
784
+ ├── resolve-kbid-prefix.spec.ts
682
785
  ├── run-skill-learn.spec.ts
683
786
  ├── run-skill-list.spec.ts
684
787
  ├── run-skill-get.spec.ts
@@ -40,6 +40,7 @@ src/shared/cli/
40
40
  │ ├── is-stdin-tty.function.ts
41
41
  │ ├── parse-args.function.ts
42
42
  │ ├── prompt-user.function.ts
43
+ │ ├── resolve-kbid-prefix.function.ts
43
44
  │ ├── run-agent-create.function.ts
44
45
  │ ├── run-agent-delete.function.ts
45
46
  │ ├── run-agent-get.function.ts
@@ -49,17 +50,22 @@ src/shared/cli/
49
50
  │ ├── run-content.function.ts
50
51
  │ ├── run-db-init.function.ts
51
52
  │ ├── run-db-migrate.function.ts
53
+ │ ├── run-export.function.ts
52
54
  │ ├── run-gc.function.ts
53
55
  │ ├── run-init.function.ts
54
56
  │ ├── run-learn.function.ts
55
57
  │ ├── run-migrate.function.ts
58
+ │ ├── run-recall.function.ts
56
59
  │ ├── run-rebuild.function.ts
57
60
  │ ├── run-search.function.ts
58
61
  │ ├── run-skill-delete.function.ts
59
62
  │ ├── run-skill-get.function.ts
60
63
  │ ├── run-skill-learn.function.ts
61
64
  │ ├── run-skill-list.function.ts
62
- └── run-unlearn.function.ts
65
+ ├── run-status.function.ts
66
+ │ ├── run-unlearn.function.ts
67
+ │ ├── run-worker-restart.function.ts
68
+ │ └── run-worker-stop.function.ts
63
69
  ├── typings/
64
70
  │ ├── cli-options.interface.ts
65
71
  │ ├── command-result.model.ts
@@ -72,14 +78,16 @@ src/shared/cli/
72
78
 
73
79
  - **[functions.md](functions.md)** -- `runCli`,
74
80
  `dispatchCommand`, `parseArgs`, `findDb`,
75
- `runInit`, `runMigrate`, `runLearn`, `runUnlearn`,
76
- `runSearch`, `runContent`, `runCheck`, `runGc`,
77
- `runRebuild`, `ensureDb`, `formatOutput`,
81
+ `resolveKbidPrefix`, `runInit`, `runMigrate`,
82
+ `runLearn`, `runUnlearn`, `runSearch`, `runRecall`,
83
+ `runContent`, `runExport`, `runStatus`, `runCheck`,
84
+ `runGc`, `runRebuild`, `ensureDb`, `formatOutput`,
78
85
  `errorToMessage`, `isStdinTty`, `promptUser`,
79
86
  `runDbInit`, `runDbMigrate`, `runSkillLearn`,
80
87
  `runSkillList`, `runSkillGet`, `runSkillDelete`,
81
88
  `runAgentCreate`, `runAgentList`, `runAgentGet`,
82
- `runAgentDelete`.
89
+ `runAgentDelete`, `runWorkerStop`,
90
+ `runWorkerRestart`.
83
91
  - **[typings.md](typings.md)** -- `CliOptions`,
84
92
  `CommandResult`, `LearnResult`, `SearchDisplay`,
85
93
  `SearchMode`, `OutputFormat`.
@@ -100,26 +108,31 @@ cli.ts (entry point)
100
108
  │ ├─ command === 'migrate' → runMigrate(client, options)
101
109
  │ ├─ command === 'db-init' → runDbInit(options)
102
110
  │ ├─ command === 'db-migrate' → runDbMigrate(client, options)
111
+ │ ├─ command === 'worker-stop' → runWorkerStop(dbDir)
112
+ │ ├─ command === 'worker-restart' → runWorkerRestart(dbDir)
103
113
  │ └─ data command:
104
114
  │ ├─ findDb(options.dbPath) → dbDir
105
115
  │ ├─ if not found: isStdinTty() / promptUser()
106
116
  │ ├─ createWorkerClient({ contextPath: dbDir })
107
117
  │ ├─ version gate (checkVersion)
108
118
  │ └─ dispatchCommand(client, options)
109
- │ ├─ learn → runLearn(client, options)
110
- │ ├─ unlearn → runUnlearn(client, options)
111
- │ ├─ search → runSearch(client, options)
112
- │ ├─ content runContent(client, options)
113
- │ ├─ checkrunCheck(client, options)
114
- │ ├─ gc runGc(client, options)
115
- │ ├─ rebuild runRebuild(client, options)
116
- │ ├─ skill-learn runSkillLearn(client, options)
117
- │ ├─ skill-list runSkillList(client, options)
118
- │ ├─ skill-get runSkillGet(client, options)
119
- │ ├─ skill-delete runSkillDelete(client, options)
120
- │ ├─ agent-create runAgentCreate(client, options)
121
- │ ├─ agent-list runAgentList(client, options)
122
- │ ├─ agent-get runAgentGet(client, options)
123
- └─ agent-delete runAgentDelete(client, options)
119
+ │ ├─ learn → runLearn(client, options)
120
+ │ ├─ unlearn → runUnlearn(client, options)
121
+ │ ├─ search → runSearch(client, options)
122
+ │ ├─ recall runRecall(client, options)
123
+ │ ├─ contentrunContent(client, options)
124
+ │ ├─ export runExport(client, options)
125
+ │ ├─ status runStatus(client, options)
126
+ │ ├─ check runCheck(client, options)
127
+ │ ├─ gc runGc(client, options)
128
+ │ ├─ rebuild runRebuild(client, options)
129
+ │ ├─ skill-learn runSkillLearn(client, options)
130
+ │ ├─ skill-list runSkillList(client, options)
131
+ │ ├─ skill-get runSkillGet(client, options)
132
+ │ ├─ skill-delete runSkillDelete(client, options)
133
+ ├─ agent-create runAgentCreate(client, options)
134
+ │ ├─ agent-list → runAgentList(client, options)
135
+ │ ├─ agent-get → runAgentGet(client, options)
136
+ │ └─ agent-delete → runAgentDelete(client, options)
124
137
  └─ returns CommandResult { output?, error?, exitCode }
125
138
  ```
@@ -32,6 +32,8 @@ interface CliOptions {
32
32
  persona?: string;
33
33
  body?: string;
34
34
  skills?: string[];
35
+ timeoutMs?: number;
36
+ retry?: number;
35
37
  }
36
38
  ```
37
39
 
@@ -61,6 +63,8 @@ interface CliOptions {
61
63
  | `persona` | Agent persona file path (`--persona`) |
62
64
  | `body` | Skill body file path (`--body`) |
63
65
  | `skills` | Ordered skill kbid list (`--skills`) |
66
+ | `timeoutMs` | Request timeout in ms |
67
+ | `retry` | Max retry count on timeout |
64
68
 
65
69
  ### `OutputFormat`
66
70
 
@@ -2,35 +2,19 @@
2
2
 
3
3
  **Source:** `src/shared/embedding/functions/`
4
4
 
5
- ## embed
5
+ ## createEmbeddingProvider
6
6
 
7
7
  ```ts
8
- embed(
9
- provider: EmbeddingProvider,
10
- text: string,
11
- ): Promise<Float32Array>
12
- ```
13
-
14
- Computes a single embedding vector for the given text.
15
- Delegates to the provider's `embed()` method. Returns a
16
- `Float32Array` of dimensions matching `provider.dimensions()`.
17
-
18
- Used during `learn` to embed section content and during
19
- `search` to embed the query string.
20
-
21
- ## batchEmbed
22
-
23
- ```ts
24
- batchEmbed(
25
- provider: EmbeddingProvider,
26
- texts: string[],
27
- ): Promise<Float32Array[]>
8
+ createEmbeddingProvider(
9
+ config: EmbeddingConfig,
10
+ ): EmbeddingProvider
28
11
  ```
29
12
 
30
- Computes embeddings for multiple texts in a single batch.
31
- More efficient than calling `embed()` in a loop -- providers
32
- can batch API calls or parallelize ONNX inference. Used
33
- during `rebuild` to re-embed all sections.
13
+ Factory that returns the appropriate `EmbeddingProvider`
14
+ implementation based on the given config. Returns an
15
+ `OnnxEmbeddingProvider` for `type: 'onnx'`, an
16
+ `ApiEmbeddingProvider` for `type: 'api'`, or a
17
+ `NullEmbeddingProvider` for `type: 'none'`.
34
18
 
35
19
  ## cosineSimilarity
36
20
 
@@ -92,3 +76,98 @@ Note: This is a brute-force linear scan. For corpus sizes
92
76
  under 100k sections, this is fast enough (< 50ms). A future
93
77
  version may add approximate nearest neighbor (ANN) indexing
94
78
  if scale demands it.
79
+
80
+ ## appendVectorEntry
81
+
82
+ ```ts
83
+ appendVectorEntry(
84
+ provider: EmbeddingProvider,
85
+ kbid: string,
86
+ content: string,
87
+ indexPath: string,
88
+ ): Promise<void>
89
+ ```
90
+
91
+ Appends a single vector entry to an existing vector index.
92
+ Used during incremental `learn` to add new sections without
93
+ a full rebuild.
94
+
95
+ ## readVectorIndexMeta
96
+
97
+ ```ts
98
+ readVectorIndexMeta(
99
+ indexPath: string,
100
+ ): Promise<VectorIndexMeta | null>
101
+ ```
102
+
103
+ Reads the `vectors-meta.toml` file for an existing vector
104
+ index. Returns `null` if the index does not exist.
105
+
106
+ ## rrfFuse
107
+
108
+ ```ts
109
+ rrfFuse(
110
+ lexical: { kbid: string; rank: number }[],
111
+ vector: { kbid: string; score: number }[],
112
+ k?: number,
113
+ ): { kbid: string; score: number }[]
114
+ ```
115
+
116
+ Merges lexical and vector result lists using Reciprocal
117
+ Rank Fusion. The `k` parameter controls rank smoothing
118
+ (default: 60).
119
+
120
+ ## jaccardCoefficient
121
+
122
+ ```ts
123
+ jaccardCoefficient(
124
+ a: Set<string>,
125
+ b: Set<string>,
126
+ ): number
127
+ ```
128
+
129
+ Computes the Jaccard similarity coefficient between two
130
+ term sets. Returns a value in [0, 1]. Used as the first
131
+ pass in near-duplicate detection.
132
+
133
+ ## detectNearDuplicates
134
+
135
+ ```ts
136
+ detectNearDuplicates(
137
+ sections: SectionRecord[],
138
+ provider?: EmbeddingProvider,
139
+ ): Promise<NearDuplicateResult[]>
140
+ ```
141
+
142
+ Two-pass near-duplicate detection: Jaccard coefficient on
143
+ term sets (always), then cosine similarity on embeddings
144
+ (when a provider is available). Returns pairs of sections
145
+ that exceed the similarity thresholds.
146
+
147
+ ## detectStaleVectors
148
+
149
+ ```ts
150
+ detectStaleVectors(
151
+ indexPath: string,
152
+ currentKbids: Set<string>,
153
+ ): Promise<StaleVectorsReport>
154
+ ```
155
+
156
+ Compares the vector index against the current section set
157
+ and reports entries whose kbid no longer exists. Used by
158
+ `check` to flag stale vector data.
159
+
160
+ ## rebuildVectors
161
+
162
+ ```ts
163
+ rebuildVectors(
164
+ provider: EmbeddingProvider,
165
+ sections: SectionRecord[],
166
+ outPath: string,
167
+ ): Promise<VectorIndexMeta>
168
+ ```
169
+
170
+ Rebuilds the entire vector index from scratch. Embeds all
171
+ sections and writes a fresh `vectors.idx` and
172
+ `vectors-meta.toml`. Called by `rebuild` when an embedding
173
+ provider is configured.
@@ -94,7 +94,7 @@ src/shared/mcp/
94
94
  cli.ts (entry point, MCP mode)
95
95
 
96
96
  ├─ detect runtime (Deno / Node)
97
- ├─ resolve db path (--db flag or KBDB_DIR env)
97
+ ├─ resolve db path (--db flag or KBDB_DB_DIR env or cwd)
98
98
  ├─ createWorkerClient({ targetDir })
99
99
  ├─ createMcpServer(client)
100
100
  │ └─ returns McpServer
@@ -61,7 +61,14 @@ interface McpWorkerClient {
61
61
  readonly depth?: number;
62
62
  }): Promise<RecallResult | RecallResult[]>;
63
63
 
64
- dbStatus(): Promise<DbStatus>;
64
+ dbStatus(): Promise<{
65
+ initialized: boolean;
66
+ contextPath: string;
67
+ cacheStats: {
68
+ contentCount: number;
69
+ indexCount: number;
70
+ };
71
+ }>;
65
72
 
66
73
  disconnect(): void;
67
74
  }
@@ -22,6 +22,12 @@ that communicates with the worker daemon. It:
22
22
  named pipe.
23
23
  - Exposes every daemon IPC method as a typed async
24
24
  function (JSON-RPC 2.0 over IPC).
25
+ - Retries transient connection failures (`ENOENT`,
26
+ `ECONNREFUSED`) with exponential backoff.
27
+ - Rejects all pending calls on post-connect socket
28
+ failure and marks the client as disconnected.
29
+ - Exposes `isConnected` state and a cached client
30
+ factory (`getOrCreateClient`).
25
31
  - Handles reconnection when the connection drops.
26
32
 
27
33
  The module is **not** exported from the library API
@@ -45,6 +51,7 @@ src/shared/worker-client/
45
51
  │ ├── compute-context-id.function.ts
46
52
  │ ├── create-worker-client.function.ts
47
53
  │ ├── discover-daemon.function.ts
54
+ │ ├── get-or-create-client.function.ts
48
55
  │ ├── resolve-db-path.function.ts
49
56
  │ ├── spawn-daemon.function.ts
50
57
  │ └── wait-for-daemon.function.ts
@@ -71,7 +78,8 @@ src/shared/worker-client/
71
78
 
72
79
  - **[classes.md](classes.md)** -- `WorkerClient`.
73
80
  - **[functions.md](functions.md)** --
74
- `createWorkerClient`, `resolveDbPath`,
81
+ `createWorkerClient`, `getOrCreateClient`,
82
+ `clearClientCache`, `resolveDbPath`,
75
83
  `computeContextId`, `discoverDaemon`,
76
84
  `spawnDaemon`, `waitForDaemon`.
77
85
  - **[typings.md](typings.md)** --
@@ -22,6 +22,7 @@ interface WorkerClientOptions {
22
22
  readonly autoSpawn?: boolean;
23
23
  readonly connectTimeoutMs?: number;
24
24
  readonly workerScript?: string;
25
+ readonly requestTimeoutMs?: number;
25
26
  }
26
27
  ```
27
28
 
@@ -38,6 +39,8 @@ interface WorkerClientOptions {
38
39
  | | after spawning; defaults to 10000 |
39
40
  | `workerScript` | Absolute path to the worker |
40
41
  | | daemon script |
42
+ | `requestTimeoutMs` | Per-request timeout; default |
43
+ | | 30 000 ms |
41
44
 
42
45
  ### `SearchParams`
43
46
 
@@ -22,6 +22,8 @@ background process that:
22
22
  context directory.
23
23
  - Listens on a local IPC socket (Unix domain socket
24
24
  or Windows named pipe) for JSON-RPC 2.0 requests.
25
+ Configures accepted connections with `SO_KEEPALIVE`
26
+ (30 s) and listens with backlog 256.
25
27
  - Maintains an in-memory LRU cache with TTL expiry
26
28
  for indexes, content objects, and manifests.
27
29
  - Tracks active connections and resets the idle timer
@@ -92,11 +94,12 @@ src/worker.ts (entry point)
92
94
  │ │ └─ compile kb-worker.wasm ────┘
93
95
  │ │ (imports both modules)
94
96
  │ ├─ init cache
97
+ │ ├─ remove stale IPC socket
98
+ │ ├─ await createIpcServer(ctx, handler)
99
+ │ │ └─ kb-worker-{ctx}.sock (listening)
95
100
  │ ├─ write PID file
96
101
  │ │ └─ kb-worker-{ctx}.pid
97
- ├─ createIpcServer(ctx, handler)
98
- │ │ └─ kb-worker-{ctx}.sock
99
- │ └─ listen for connections
102
+ └─ start idle timer
100
103
  └─ daemon running
101
104
  ```
102
105