@dikolab/kbdb 0.3.2 → 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 (466) hide show
  1. package/README.md +83 -89
  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 +70 -13
  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 +38 -7
  90. package/docs/details/search-and-ranking.md +11 -10
  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 +1 -2
  107. package/docs/release-notes/0.4.0.md +80 -0
  108. package/docs/release-notes/README.md +1 -0
  109. package/mod.ts +33 -15
  110. package/package.json +11 -10
  111. package/dist/chunk-JG2UCKLI.mjs +0 -95
  112. package/dist/chunk-JG2UCKLI.mjs.map +0 -7
  113. package/src/cli.ts +0 -71
  114. package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +0 -62
  115. package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +0 -15
  116. package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +0 -27
  117. package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +0 -50
  118. package/src/shared/auto-capture/index.ts +0 -7
  119. package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +0 -13
  120. package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +0 -13
  121. package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +0 -7
  122. package/src/shared/cli/constants/defaults.constant.ts +0 -19
  123. package/src/shared/cli/constants/global-help.constant.ts +0 -73
  124. package/src/shared/cli/constants/help-text.constant.ts +0 -4
  125. package/src/shared/cli/constants/leaf-help.constant.ts +0 -219
  126. package/src/shared/cli/constants/memory-protocol-body.constant.ts +0 -39
  127. package/src/shared/cli/constants/query-guidance-body.constant.ts +0 -37
  128. package/src/shared/cli/constants/subcommand-help.constant.ts +0 -195
  129. package/src/shared/cli/functions/collect-files.function.ts +0 -55
  130. package/src/shared/cli/functions/compute-section-kbid.function.ts +0 -49
  131. package/src/shared/cli/functions/dispatch-command.function.ts +0 -390
  132. package/src/shared/cli/functions/ensure-db.function.ts +0 -21
  133. package/src/shared/cli/functions/error-to-message.function.ts +0 -9
  134. package/src/shared/cli/functions/find-db.function.ts +0 -20
  135. package/src/shared/cli/functions/format-mcp-output.function.ts +0 -41
  136. package/src/shared/cli/functions/format-output.function.ts +0 -95
  137. package/src/shared/cli/functions/format-text-output.function.ts +0 -42
  138. package/src/shared/cli/functions/generate-group-help.function.ts +0 -41
  139. package/src/shared/cli/functions/generate-help.function.ts +0 -654
  140. package/src/shared/cli/functions/handle-data-command.function.ts +0 -67
  141. package/src/shared/cli/functions/handle-mcp.function.ts +0 -56
  142. package/src/shared/cli/functions/handle-migrate.function.ts +0 -64
  143. package/src/shared/cli/functions/hydrate-search-previews.function.ts +0 -29
  144. package/src/shared/cli/functions/install-default-skills.function.ts +0 -296
  145. package/src/shared/cli/functions/is-stdin-tty.function.ts +0 -12
  146. package/src/shared/cli/functions/parse-args.function.ts +0 -156
  147. package/src/shared/cli/functions/prompt-user.function.ts +0 -36
  148. package/src/shared/cli/functions/resolve-skill-names.function.ts +0 -43
  149. package/src/shared/cli/functions/run-agent-create.function.ts +0 -114
  150. package/src/shared/cli/functions/run-agent-delete.function.ts +0 -47
  151. package/src/shared/cli/functions/run-agent-get.function.ts +0 -166
  152. package/src/shared/cli/functions/run-agent-list.function.ts +0 -58
  153. package/src/shared/cli/functions/run-check.function.ts +0 -159
  154. package/src/shared/cli/functions/run-cli.function.ts +0 -299
  155. package/src/shared/cli/functions/run-content.function.ts +0 -47
  156. package/src/shared/cli/functions/run-db-init.function.ts +0 -44
  157. package/src/shared/cli/functions/run-db-migrate.function.ts +0 -40
  158. package/src/shared/cli/functions/run-export.function.ts +0 -40
  159. package/src/shared/cli/functions/run-gc.function.ts +0 -51
  160. package/src/shared/cli/functions/run-init.function.ts +0 -93
  161. package/src/shared/cli/functions/run-learn.function.ts +0 -223
  162. package/src/shared/cli/functions/run-migrate.function.ts +0 -85
  163. package/src/shared/cli/functions/run-rebuild.function.ts +0 -47
  164. package/src/shared/cli/functions/run-recall.function.ts +0 -66
  165. package/src/shared/cli/functions/run-search.function.ts +0 -133
  166. package/src/shared/cli/functions/run-skill-delete.function.ts +0 -47
  167. package/src/shared/cli/functions/run-skill-get.function.ts +0 -90
  168. package/src/shared/cli/functions/run-skill-learn.function.ts +0 -70
  169. package/src/shared/cli/functions/run-skill-list.function.ts +0 -74
  170. package/src/shared/cli/functions/run-status.function.ts +0 -29
  171. package/src/shared/cli/functions/run-unlearn.function.ts +0 -58
  172. package/src/shared/cli/functions/version-gate.function.ts +0 -44
  173. package/src/shared/cli/functions/wrap-command.function.ts +0 -34
  174. package/src/shared/cli/index.ts +0 -55
  175. package/src/shared/cli/typings/agent-create-client.interface.ts +0 -47
  176. package/src/shared/cli/typings/agent-get-client.interface.ts +0 -39
  177. package/src/shared/cli/typings/check-client.interface.ts +0 -66
  178. package/src/shared/cli/typings/cli-deps.interface.ts +0 -54
  179. package/src/shared/cli/typings/cli-options.interface.ts +0 -72
  180. package/src/shared/cli/typings/command-result.model.ts +0 -15
  181. package/src/shared/cli/typings/disconnectable-client.interface.ts +0 -29
  182. package/src/shared/cli/typings/dispatch-client.type.ts +0 -46
  183. package/src/shared/cli/typings/learn-client.interface.ts +0 -53
  184. package/src/shared/cli/typings/learn-io.interface.ts +0 -5
  185. package/src/shared/cli/typings/learn-result.model.ts +0 -27
  186. package/src/shared/cli/typings/search-client.interface.ts +0 -73
  187. package/src/shared/cli/typings/search-display.model.ts +0 -54
  188. package/src/shared/dir-resolver/functions/join-path.function.ts +0 -13
  189. package/src/shared/dir-resolver/functions/resolve-base-dir.function.ts +0 -25
  190. package/src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts +0 -5
  191. package/src/shared/dir-resolver/functions/resolve-worker-script.function.ts +0 -13
  192. package/src/shared/dir-resolver/index.ts +0 -11
  193. package/src/shared/dir-resolver/typings/base-dir.interface.ts +0 -4
  194. package/src/shared/embedding/classes/null-embedding-provider.class.ts +0 -29
  195. package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +0 -17
  196. package/src/shared/embedding/functions/build-vector-index.function.ts +0 -79
  197. package/src/shared/embedding/functions/cosine-similarity.function.ts +0 -31
  198. package/src/shared/embedding/functions/detect-near-duplicates.function.ts +0 -69
  199. package/src/shared/embedding/functions/jaccard-coefficient.function.ts +0 -26
  200. package/src/shared/embedding/functions/read-vector-index-meta.function.ts +0 -44
  201. package/src/shared/embedding/functions/rrf-fuse.function.ts +0 -33
  202. package/src/shared/embedding/functions/search-vectors.function.ts +0 -59
  203. package/src/shared/embedding/index.ts +0 -20
  204. package/src/shared/embedding/typings/embedding-config.interface.ts +0 -23
  205. package/src/shared/embedding/typings/embedding-provider.interface.ts +0 -25
  206. package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +0 -25
  207. package/src/shared/embedding/typings/near-duplicate-result.model.ts +0 -26
  208. package/src/shared/embedding/typings/vector-index-entry.model.ts +0 -13
  209. package/src/shared/embedding/typings/vector-index-meta.model.ts +0 -14
  210. package/src/shared/embedding/typings/vector-search-result.model.ts +0 -8
  211. package/src/shared/hash/functions/compute-sha256.ts +0 -17
  212. package/src/shared/hash/index.ts +0 -1
  213. package/src/shared/mcp/classes/mcp-server.class.ts +0 -480
  214. package/src/shared/mcp/constants/mcp-error-codes.constant.ts +0 -30
  215. package/src/shared/mcp/constants/tool-agent-create.constant.ts +0 -39
  216. package/src/shared/mcp/constants/tool-agent-delete.constant.ts +0 -26
  217. package/src/shared/mcp/constants/tool-agent-get.constant.ts +0 -24
  218. package/src/shared/mcp/constants/tool-agent-list.constant.ts +0 -18
  219. package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +0 -32
  220. package/src/shared/mcp/constants/tool-check.constant.ts +0 -21
  221. package/src/shared/mcp/constants/tool-content.constant.ts +0 -29
  222. package/src/shared/mcp/constants/tool-export.constant.ts +0 -27
  223. package/src/shared/mcp/constants/tool-gc.constant.ts +0 -21
  224. package/src/shared/mcp/constants/tool-learn.constant.ts +0 -58
  225. package/src/shared/mcp/constants/tool-rebuild.constant.ts +0 -21
  226. package/src/shared/mcp/constants/tool-recall.constant.ts +0 -36
  227. package/src/shared/mcp/constants/tool-retrieve.constant.ts +0 -31
  228. package/src/shared/mcp/constants/tool-search.constant.ts +0 -51
  229. package/src/shared/mcp/constants/tool-skill-delete.constant.ts +0 -24
  230. package/src/shared/mcp/constants/tool-skill-get.constant.ts +0 -27
  231. package/src/shared/mcp/constants/tool-skill-learn.constant.ts +0 -37
  232. package/src/shared/mcp/constants/tool-skill-list.constant.ts +0 -18
  233. package/src/shared/mcp/constants/tool-status.constant.ts +0 -20
  234. package/src/shared/mcp/constants/tool-unlearn.constant.ts +0 -25
  235. package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +0 -11
  236. package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +0 -17
  237. package/src/shared/mcp/functions/as-string-array.function.ts +0 -15
  238. package/src/shared/mcp/functions/as-string.function.ts +0 -10
  239. package/src/shared/mcp/functions/build-skills-text.function.ts +0 -43
  240. package/src/shared/mcp/functions/create-mcp-server.function.ts +0 -14
  241. package/src/shared/mcp/functions/create-prompt-definitions.function.ts +0 -102
  242. package/src/shared/mcp/functions/create-resource-templates.function.ts +0 -23
  243. package/src/shared/mcp/functions/create-tool-definitions.function.ts +0 -530
  244. package/src/shared/mcp/functions/extract-skill-arguments.function.ts +0 -27
  245. package/src/shared/mcp/functions/handle-agent-create.function.ts +0 -116
  246. package/src/shared/mcp/functions/handle-agent-delete.function.ts +0 -50
  247. package/src/shared/mcp/functions/handle-agent-get.function.ts +0 -160
  248. package/src/shared/mcp/functions/handle-agent-list.function.ts +0 -50
  249. package/src/shared/mcp/functions/handle-agent-prompt.function.ts +0 -68
  250. package/src/shared/mcp/functions/handle-completion.function.ts +0 -114
  251. package/src/shared/mcp/functions/handle-mcp-request.function.ts +0 -202
  252. package/src/shared/mcp/functions/handle-prompt-get.function.ts +0 -220
  253. package/src/shared/mcp/functions/handle-recall.function.ts +0 -66
  254. package/src/shared/mcp/functions/handle-resource-read.function.ts +0 -56
  255. package/src/shared/mcp/functions/handle-roots-list.function.ts +0 -29
  256. package/src/shared/mcp/functions/handle-skill-prompt.function.ts +0 -44
  257. package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +0 -24
  258. package/src/shared/mcp/functions/handle-tool-call.function.ts +0 -560
  259. package/src/shared/mcp/functions/handle-tool-check.function.ts +0 -21
  260. package/src/shared/mcp/functions/handle-tool-content.function.ts +0 -23
  261. package/src/shared/mcp/functions/handle-tool-export.function.ts +0 -25
  262. package/src/shared/mcp/functions/handle-tool-gc.function.ts +0 -21
  263. package/src/shared/mcp/functions/handle-tool-learn.function.ts +0 -69
  264. package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +0 -21
  265. package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +0 -40
  266. package/src/shared/mcp/functions/handle-tool-search.function.ts +0 -47
  267. package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +0 -34
  268. package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +0 -59
  269. package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +0 -61
  270. package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +0 -39
  271. package/src/shared/mcp/functions/handle-tool-status.function.ts +0 -21
  272. package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +0 -24
  273. package/src/shared/mcp/functions/parse-agent-meta.function.ts +0 -27
  274. package/src/shared/mcp/functions/parse-skill-arguments.function.ts +0 -36
  275. package/src/shared/mcp/functions/parse-skill-content.function.ts +0 -38
  276. package/src/shared/mcp/functions/read-agent-meta.function.ts +0 -41
  277. package/src/shared/mcp/functions/resolve-skill-refs.function.ts +0 -50
  278. package/src/shared/mcp/functions/run-startup-health-check.function.ts +0 -34
  279. package/src/shared/mcp/functions/serialize-skill-content.function.ts +0 -12
  280. package/src/shared/mcp/functions/should-emit-log.function.ts +0 -38
  281. package/src/shared/mcp/index.ts +0 -28
  282. package/src/shared/mcp/typings/agent-types.interface.ts +0 -39
  283. package/src/shared/mcp/typings/log-types.interface.ts +0 -26
  284. package/src/shared/mcp/typings/mcp-capabilities.interface.ts +0 -16
  285. package/src/shared/mcp/typings/mcp-client.interface.ts +0 -317
  286. package/src/shared/mcp/typings/mcp-completion.interface.ts +0 -45
  287. package/src/shared/mcp/typings/mcp-content-result.model.ts +0 -9
  288. package/src/shared/mcp/typings/mcp-export-result.model.ts +0 -11
  289. package/src/shared/mcp/typings/mcp-gc-result.model.ts +0 -15
  290. package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +0 -17
  291. package/src/shared/mcp/typings/mcp-integrity-error.model.ts +0 -15
  292. package/src/shared/mcp/typings/mcp-notification.interface.ts +0 -9
  293. package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +0 -9
  294. package/src/shared/mcp/typings/mcp-request.interface.ts +0 -11
  295. package/src/shared/mcp/typings/mcp-resource-result.interface.ts +0 -12
  296. package/src/shared/mcp/typings/mcp-resource-template.interface.ts +0 -11
  297. package/src/shared/mcp/typings/mcp-response.interface.ts +0 -18
  298. package/src/shared/mcp/typings/mcp-server-info.interface.ts +0 -7
  299. package/src/shared/mcp/typings/mcp-server-state.interface.ts +0 -17
  300. package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +0 -32
  301. package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +0 -16
  302. package/src/shared/mcp/typings/mcp-tool-result.interface.ts +0 -19
  303. package/src/shared/mcp/typings/mcp-types.interface.ts +0 -158
  304. package/src/shared/mcp/typings/mcp-worker-client.interface.ts +0 -243
  305. package/src/shared/mcp/typings/prompt-types.interface.ts +0 -39
  306. package/src/shared/mcp/typings/remove-section-result.model.ts +0 -10
  307. package/src/shared/mcp/typings/sampling-types.interface.ts +0 -48
  308. package/src/shared/mcp/typings/skill-types.interface.ts +0 -29
  309. package/src/shared/mcp/typings/tool-call-result.model.ts +0 -18
  310. package/src/shared/mod.ts +0 -1
  311. package/src/shared/platform/functions/get-ipc-path.function.ts +0 -19
  312. package/src/shared/platform/functions/get-tmpdir.function.ts +0 -8
  313. package/src/shared/platform/functions/is-process-alive.function.ts +0 -17
  314. package/src/shared/platform/index.ts +0 -3
  315. package/src/shared/runtime/functions/detect-runtime.ts +0 -14
  316. package/src/shared/runtime/functions/get-args.ts +0 -16
  317. package/src/shared/runtime/index.ts +0 -3
  318. package/src/shared/runtime/typings/runtime.ts +0 -2
  319. package/src/shared/sync/functions/build-import-report.function.ts +0 -40
  320. package/src/shared/sync/functions/parse-export-entry.function.ts +0 -45
  321. package/src/shared/sync/functions/resolve-conflict.function.ts +0 -31
  322. package/src/shared/sync/functions/serialize-export-entry.function.ts +0 -18
  323. package/src/shared/sync/index.ts +0 -9
  324. package/src/shared/sync/typings/conflict-resolution.type.ts +0 -8
  325. package/src/shared/sync/typings/export-entry.interface.ts +0 -13
  326. package/src/shared/sync/typings/export-options.interface.ts +0 -9
  327. package/src/shared/sync/typings/import-options.interface.ts +0 -7
  328. package/src/shared/sync/typings/import-report.interface.ts +0 -15
  329. package/src/shared/version/constants/version.constant.ts +0 -2
  330. package/src/shared/version/index.ts +0 -1
  331. package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +0 -112
  332. package/src/shared/wasm-codec/functions/decode-compose-output.function.ts +0 -16
  333. package/src/shared/wasm-codec/functions/decode-document-manifest-list.function.ts +0 -70
  334. package/src/shared/wasm-codec/functions/decode-document-manifest.function.ts +0 -87
  335. package/src/shared/wasm-codec/functions/decode-f32.function.ts +0 -16
  336. package/src/shared/wasm-codec/functions/decode-key-value-text.function.ts +0 -15
  337. package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +0 -86
  338. package/src/shared/wasm-codec/functions/decode-option-string.function.ts +0 -24
  339. package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +0 -59
  340. package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +0 -52
  341. package/src/shared/wasm-codec/functions/decode-recall-result.function.ts +0 -267
  342. package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +0 -43
  343. package/src/shared/wasm-codec/functions/decode-remove-flag.function.ts +0 -3
  344. package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +0 -194
  345. package/src/shared/wasm-codec/functions/decode-section-match.function.ts +0 -80
  346. package/src/shared/wasm-codec/functions/decode-section-record-list.function.ts +0 -20
  347. package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +0 -75
  348. package/src/shared/wasm-codec/functions/decode-section-record.function.ts +0 -85
  349. package/src/shared/wasm-codec/functions/decode-section-records.function.ts +0 -249
  350. package/src/shared/wasm-codec/functions/decode-section-type.function.ts +0 -30
  351. package/src/shared/wasm-codec/functions/decode-string.function.ts +0 -22
  352. package/src/shared/wasm-codec/functions/decode-u32.function.ts +0 -16
  353. package/src/shared/wasm-codec/functions/decode-u64.function.ts +0 -16
  354. package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +0 -31
  355. package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +0 -102
  356. package/src/shared/wasm-codec/functions/encode-group-params.function.ts +0 -28
  357. package/src/shared/wasm-codec/functions/encode-identifier-list.function.ts +0 -17
  358. package/src/shared/wasm-codec/functions/encode-kbid-list.function.ts +0 -17
  359. package/src/shared/wasm-codec/functions/encode-option-string.function.ts +0 -14
  360. package/src/shared/wasm-codec/functions/encode-recall-params.function.ts +0 -68
  361. package/src/shared/wasm-codec/functions/encode-search-params.function.ts +0 -12
  362. package/src/shared/wasm-codec/functions/encode-section-type.function.ts +0 -18
  363. package/src/shared/wasm-codec/functions/encode-string.function.ts +0 -9
  364. package/src/shared/wasm-codec/functions/encode-type-filter-param.function.ts +0 -13
  365. package/src/shared/wasm-codec/functions/encode-u32.function.ts +0 -5
  366. package/src/shared/wasm-codec/functions/encode-update-section-params.function.ts +0 -16
  367. package/src/shared/wasm-codec/index.ts +0 -49
  368. package/src/shared/wasm-codec/typings/add-section-input.model.ts +0 -45
  369. package/src/shared/wasm-codec/typings/add-section-result.model.ts +0 -28
  370. package/src/shared/wasm-codec/typings/document-manifest.model.ts +0 -20
  371. package/src/shared/wasm-codec/typings/document-section.model.ts +0 -12
  372. package/src/shared/wasm-codec/typings/item-decoder.type.ts +0 -10
  373. package/src/shared/wasm-codec/typings/near-duplicate.model.ts +0 -16
  374. package/src/shared/wasm-codec/typings/paged-search-result.model.ts +0 -22
  375. package/src/shared/wasm-codec/typings/section-match.model.ts +0 -31
  376. package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +0 -38
  377. package/src/shared/wasm-codec/typings/section-record.model.ts +0 -66
  378. package/src/shared/wasm-codec/typings/section-type-result.model.ts +0 -12
  379. package/src/shared/worker-client/classes/worker-client.class.ts +0 -466
  380. package/src/shared/worker-client/functions/compute-context-id.function.ts +0 -18
  381. package/src/shared/worker-client/functions/create-worker-client.function.ts +0 -70
  382. package/src/shared/worker-client/functions/discover-daemon.function.ts +0 -47
  383. package/src/shared/worker-client/functions/handle-ipc-data.function.ts +0 -49
  384. package/src/shared/worker-client/functions/resolve-db-path.function.ts +0 -21
  385. package/src/shared/worker-client/functions/send-ipc-request.function.ts +0 -39
  386. package/src/shared/worker-client/functions/spawn-daemon.function.ts +0 -35
  387. package/src/shared/worker-client/functions/wait-for-daemon.function.ts +0 -34
  388. package/src/shared/worker-client/index.ts +0 -44
  389. package/src/shared/worker-client/typings/add-section-result.model.ts +0 -39
  390. package/src/shared/worker-client/typings/content-result.model.ts +0 -12
  391. package/src/shared/worker-client/typings/daemon-info.model.ts +0 -7
  392. package/src/shared/worker-client/typings/export-result.model.ts +0 -14
  393. package/src/shared/worker-client/typings/gc-result.model.ts +0 -18
  394. package/src/shared/worker-client/typings/integrity-check-result.model.ts +0 -43
  395. package/src/shared/worker-client/typings/json-rpc-response.interface.ts +0 -17
  396. package/src/shared/worker-client/typings/migrate-result.model.ts +0 -11
  397. package/src/shared/worker-client/typings/pending-call.interface.ts +0 -7
  398. package/src/shared/worker-client/typings/rebuild-result.model.ts +0 -12
  399. package/src/shared/worker-client/typings/recall-document.model.ts +0 -16
  400. package/src/shared/worker-client/typings/recall-params.model.ts +0 -15
  401. package/src/shared/worker-client/typings/recall-reference.model.ts +0 -32
  402. package/src/shared/worker-client/typings/recall-result.model.ts +0 -98
  403. package/src/shared/worker-client/typings/recall-sibling.model.ts +0 -11
  404. package/src/shared/worker-client/typings/recall-single-result.model.ts +0 -41
  405. package/src/shared/worker-client/typings/remove-section-result.model.ts +0 -7
  406. package/src/shared/worker-client/typings/search-params.model.ts +0 -14
  407. package/src/shared/worker-client/typings/search-result.model.ts +0 -43
  408. package/src/shared/worker-client/typings/section.model.ts +0 -43
  409. package/src/shared/worker-client/typings/status-result.model.ts +0 -14
  410. package/src/shared/worker-client/typings/version-status.model.ts +0 -28
  411. package/src/shared/worker-client/typings/worker-client-error.interface.ts +0 -8
  412. package/src/shared/worker-client/typings/worker-client-options.interface.ts +0 -30
  413. package/src/shared/worker-daemon/classes/ipc-error.class.ts +0 -22
  414. package/src/shared/worker-daemon/classes/worker-daemon.class.ts +0 -1291
  415. package/src/shared/worker-daemon/constants/daemon-defaults.constant.ts +0 -29
  416. package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +0 -69
  417. package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +0 -16
  418. package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +0 -54
  419. package/src/shared/worker-daemon/functions/check-preconditions.function.ts +0 -28
  420. package/src/shared/worker-daemon/functions/create-host-imports.function.ts +0 -328
  421. package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +0 -87
  422. package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +0 -33
  423. package/src/shared/worker-daemon/functions/dispatch-request.function.ts +0 -190
  424. package/src/shared/worker-daemon/functions/handle-check-version.function.ts +0 -74
  425. package/src/shared/worker-daemon/functions/handle-config-method.function.ts +0 -27
  426. package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +0 -236
  427. package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +0 -257
  428. package/src/shared/worker-daemon/functions/load-wasm-modules.function.ts +0 -95
  429. package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +0 -51
  430. package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +0 -20
  431. package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +0 -38
  432. package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +0 -104
  433. package/src/shared/worker-daemon/functions/read-config.function.ts +0 -83
  434. package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +0 -55
  435. package/src/shared/worker-daemon/functions/run-worker.function.ts +0 -57
  436. package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +0 -92
  437. package/src/shared/worker-daemon/functions/start-daemon.function.ts +0 -74
  438. package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +0 -144
  439. package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +0 -41
  440. package/src/shared/worker-daemon/functions/write-lock.function.ts +0 -49
  441. package/src/shared/worker-daemon/index.ts +0 -16
  442. package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +0 -16
  443. package/src/shared/worker-daemon/typings/daemon-config.interface.ts +0 -20
  444. package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +0 -22
  445. package/src/shared/worker-daemon/typings/handler-context.interface.ts +0 -19
  446. package/src/shared/worker-daemon/typings/ipc-handler.interface.ts +0 -39
  447. package/src/shared/worker-daemon/typings/memory-ref.interface.ts +0 -13
  448. package/src/shared/worker-daemon/typings/wasm-fn.type.ts +0 -2
  449. package/src/shared/worker-daemon/typings/wasm-modules.interface.ts +0 -7
  450. package/src/shared/worker-daemon/typings/write-lock.interface.ts +0 -13
  451. package/src/wasm/fs-database/kbdb_fs_database.d.ts +0 -259
  452. package/src/wasm/fs-database/kbdb_fs_database.js +0 -515
  453. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  454. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +0 -35
  455. package/src/wasm/fs-database/package.json +0 -13
  456. package/src/wasm/kb-worker/kbdb_worker.d.ts +0 -650
  457. package/src/wasm/kb-worker/kbdb_worker.js +0 -1181
  458. package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  459. package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +0 -77
  460. package/src/wasm/kb-worker/package.json +0 -13
  461. package/src/wasm/query-parser/kbdb_query_parser.d.ts +0 -195
  462. package/src/wasm/query-parser/kbdb_query_parser.js +0 -403
  463. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  464. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm.d.ts +0 -25
  465. package/src/wasm/query-parser/package.json +0 -13
  466. package/src/worker.ts +0 -42
@@ -1,390 +0,0 @@
1
- import type { CliOptions } from '../typings/cli-options.interface.ts';
2
- import type { CommandResult } from '../typings/command-result.model.ts';
3
- import type { PagedSearchDisplay } from '../typings/search-display.model.ts';
4
- import type { LearnIO } from './run-learn.function.ts';
5
- import type { SearchClient } from './run-search.function.ts';
6
- import type { LearnClient } from './run-learn.function.ts';
7
- import type { UnlearnClient } from './run-unlearn.function.ts';
8
- import type { ContentClient } from './run-content.function.ts';
9
- import type { CheckClient } from './run-check.function.ts';
10
- import type { GcClient } from './run-gc.function.ts';
11
- import type { RebuildClient } from './run-rebuild.function.ts';
12
- import type { StatusClient } from './run-status.function.ts';
13
- import type { DbMigrateClient } from './run-db-migrate.function.ts';
14
- import type { SkillLearnClient } from './run-skill-learn.function.ts';
15
- import type { SkillListClient } from './run-skill-list.function.ts';
16
- import type { SkillGetClient } from './run-skill-get.function.ts';
17
- import type { SkillDeleteClient } from './run-skill-delete.function.ts';
18
- import type { AgentCreateClient } from './run-agent-create.function.ts';
19
- import type { AgentListClient } from './run-agent-list.function.ts';
20
- import type { AgentGetClient } from './run-agent-get.function.ts';
21
- import type { AgentDeleteClient } from './run-agent-delete.function.ts';
22
- import type { RecallClient } from './run-recall.function.ts';
23
- import type { ExportClient } from './run-export.function.ts';
24
- import { runSearch } from './run-search.function.ts';
25
- import { runLearn } from './run-learn.function.ts';
26
- import { runUnlearn } from './run-unlearn.function.ts';
27
- import { runContent } from './run-content.function.ts';
28
- import { runCheck } from './run-check.function.ts';
29
- import { runGc } from './run-gc.function.ts';
30
- import { runRebuild } from './run-rebuild.function.ts';
31
- import { runStatus } from './run-status.function.ts';
32
- import { runDbInit } from './run-db-init.function.ts';
33
- import { runInit } from './run-init.function.ts';
34
- import { runDbMigrate } from './run-db-migrate.function.ts';
35
- import { runSkillLearn } from './run-skill-learn.function.ts';
36
- import { runSkillList } from './run-skill-list.function.ts';
37
- import { runSkillGet } from './run-skill-get.function.ts';
38
- import { runSkillDelete } from './run-skill-delete.function.ts';
39
- import { runAgentCreate } from './run-agent-create.function.ts';
40
- import { runAgentList } from './run-agent-list.function.ts';
41
- import { runAgentGet } from './run-agent-get.function.ts';
42
- import { runAgentDelete } from './run-agent-delete.function.ts';
43
- import { runRecall } from './run-recall.function.ts';
44
- import { runExport } from './run-export.function.ts';
45
- import { formatOutput } from './format-output.function.ts';
46
- import { errorToMessage } from './error-to-message.function.ts';
47
-
48
- /**
49
- * Intersection of all data-command client interfaces.
50
- *
51
- * Each run* function defines its own minimal interface; this
52
- * intersection combines them so `dispatchCommand` can route
53
- * to any command handler with full type safety.
54
- */
55
- export type DispatchClient = SearchClient &
56
- LearnClient &
57
- UnlearnClient &
58
- ContentClient &
59
- CheckClient &
60
- GcClient &
61
- RebuildClient &
62
- StatusClient &
63
- DbMigrateClient &
64
- SkillLearnClient &
65
- SkillListClient &
66
- SkillGetClient &
67
- SkillDeleteClient &
68
- AgentCreateClient &
69
- AgentListClient &
70
- AgentGetClient &
71
- AgentDeleteClient &
72
- RecallClient &
73
- ExportClient;
74
-
75
- /**
76
- * Routes a parsed CLI command to the appropriate handler and
77
- * returns a `CommandResult` without touching process globals.
78
- *
79
- * @param client - worker client covering all data commands
80
- * @param options - parsed CLI options with command and args
81
- * @param io - optional injectable I/O for learn stdin
82
- */
83
- export async function dispatchCommand(
84
- client: DispatchClient,
85
- options: CliOptions,
86
- io?: LearnIO,
87
- ): Promise<CommandResult> {
88
- switch (options.command) {
89
- case 'learn':
90
- return handleLearn(client, options, io);
91
- case 'unlearn':
92
- return handleUnlearn(client, options);
93
- case 'search':
94
- return handleSearch(client, options);
95
- case 'recall':
96
- return handleRecall(client, options);
97
- case 'content':
98
- return handleContent(client, options);
99
- case 'check':
100
- return handleCheck(client, options);
101
- case 'gc':
102
- return handleGc(client, options);
103
- case 'rebuild':
104
- return handleRebuild(client, options);
105
- case 'status':
106
- return handleStatus(client, options);
107
- case 'export':
108
- return handleExport(client, options);
109
- case 'db-init':
110
- return handleDbInit(options);
111
- case 'db-migrate':
112
- return handleDbMigrate(client, options);
113
- case 'skill-learn': {
114
- const result = await runSkillLearn(client, options);
115
- return result;
116
- }
117
- case 'skill-list': {
118
- const result = await runSkillList(client, options);
119
- return result;
120
- }
121
- case 'skill-get': {
122
- const result = await runSkillGet(client, options);
123
- return result;
124
- }
125
- case 'skill-delete': {
126
- const result = await runSkillDelete(client, options);
127
- return result;
128
- }
129
- case 'agent-create': {
130
- const result = await runAgentCreate(client, options);
131
- return result;
132
- }
133
- case 'agent-list': {
134
- const result = await runAgentList(client, options);
135
- return result;
136
- }
137
- case 'agent-get': {
138
- const result = await runAgentGet(client, options);
139
- return result;
140
- }
141
- case 'agent-delete': {
142
- const result = await runAgentDelete(client, options);
143
- return result;
144
- }
145
- default:
146
- return {
147
- error: `unknown command: ${options.command}`,
148
- exitCode: 1,
149
- };
150
- }
151
- }
152
-
153
- async function handleLearn(
154
- client: DispatchClient,
155
- options: CliOptions,
156
- io?: LearnIO,
157
- ): Promise<CommandResult> {
158
- try {
159
- const results = await runLearn(client, options, io);
160
- return {
161
- output: JSON.stringify(results, null, 2),
162
- exitCode: 0,
163
- };
164
- } catch (err) {
165
- return {
166
- error: `learn failed: ${errorToMessage(err)}`,
167
- exitCode: 1,
168
- };
169
- }
170
- }
171
-
172
- async function handleUnlearn(
173
- client: DispatchClient,
174
- options: CliOptions,
175
- ): Promise<CommandResult> {
176
- try {
177
- const results = await runUnlearn(client, options);
178
- return {
179
- output: JSON.stringify(results, null, 2),
180
- exitCode: 0,
181
- };
182
- } catch (err) {
183
- return {
184
- error: `unlearn failed: ${errorToMessage(err)}`,
185
- exitCode: 1,
186
- };
187
- }
188
- }
189
-
190
- async function handleSearch(
191
- client: DispatchClient,
192
- options: CliOptions,
193
- ): Promise<CommandResult> {
194
- try {
195
- const results = await runSearch(client, options);
196
- if (options.content) {
197
- await hydrateSearchPreviews(client, results);
198
- }
199
- return {
200
- output: formatOutput(results, options.format),
201
- exitCode: 0,
202
- };
203
- } catch (err) {
204
- return {
205
- error: `search failed: ${errorToMessage(err)}`,
206
- exitCode: 1,
207
- };
208
- }
209
- }
210
-
211
- async function handleRecall(
212
- client: DispatchClient,
213
- options: CliOptions,
214
- ): Promise<CommandResult> {
215
- try {
216
- const result = await runRecall(client, options);
217
- if ('error' in result) {
218
- return {
219
- error: `error: ${result.error}`,
220
- exitCode: 1,
221
- };
222
- }
223
- return {
224
- output: JSON.stringify(result, null, 2),
225
- exitCode: 0,
226
- };
227
- } catch (err) {
228
- return {
229
- error: `recall failed: ${errorToMessage(err)}`,
230
- exitCode: 1,
231
- };
232
- }
233
- }
234
-
235
- async function handleExport(
236
- client: DispatchClient,
237
- options: CliOptions,
238
- ): Promise<CommandResult> {
239
- try {
240
- const result = await runExport(client, options);
241
- return {
242
- output: JSON.stringify(result, null, 2),
243
- exitCode: 0,
244
- };
245
- } catch (err) {
246
- return {
247
- error: `export failed: ${errorToMessage(err)}`,
248
- exitCode: 1,
249
- };
250
- }
251
- }
252
-
253
- async function handleContent(
254
- client: DispatchClient,
255
- options: CliOptions,
256
- ): Promise<CommandResult> {
257
- try {
258
- const result = await runContent(client, options);
259
- return {
260
- output: JSON.stringify(result, null, 2),
261
- exitCode: 0,
262
- };
263
- } catch (err) {
264
- return {
265
- error: `content failed: ${errorToMessage(err)}`,
266
- exitCode: 1,
267
- };
268
- }
269
- }
270
-
271
- async function handleCheck(
272
- client: DispatchClient,
273
- options: CliOptions,
274
- ): Promise<CommandResult> {
275
- try {
276
- const result = await runCheck(client, options);
277
- return {
278
- output: JSON.stringify(result, null, 2),
279
- exitCode: result.ok ? 0 : 1,
280
- };
281
- } catch (err) {
282
- return {
283
- error: `check failed: ${errorToMessage(err)}`,
284
- exitCode: 1,
285
- };
286
- }
287
- }
288
-
289
- async function handleGc(
290
- client: DispatchClient,
291
- options: CliOptions,
292
- ): Promise<CommandResult> {
293
- try {
294
- const result = await runGc(client, options);
295
- return {
296
- output: JSON.stringify(result, null, 2),
297
- exitCode: 0,
298
- };
299
- } catch (err) {
300
- return {
301
- error: `gc failed: ${errorToMessage(err)}`,
302
- exitCode: 1,
303
- };
304
- }
305
- }
306
-
307
- async function handleRebuild(
308
- client: DispatchClient,
309
- options: CliOptions,
310
- ): Promise<CommandResult> {
311
- try {
312
- const result = await runRebuild(client, options);
313
- return {
314
- output: JSON.stringify(result, null, 2),
315
- exitCode: 0,
316
- };
317
- } catch (err) {
318
- return {
319
- error: `rebuild failed: ${errorToMessage(err)}`,
320
- exitCode: 1,
321
- };
322
- }
323
- }
324
-
325
- async function handleStatus(
326
- client: DispatchClient,
327
- options: CliOptions,
328
- ): Promise<CommandResult> {
329
- try {
330
- const result = await runStatus(client, options);
331
- return {
332
- output: JSON.stringify(result, null, 2),
333
- exitCode: 0,
334
- };
335
- } catch (err) {
336
- return {
337
- error: `status failed: ${errorToMessage(err)}`,
338
- exitCode: 1,
339
- };
340
- }
341
- }
342
-
343
- function handleDbInit(options: CliOptions): CommandResult {
344
- return runDbInit(options, runInit);
345
- }
346
-
347
- async function handleDbMigrate(
348
- client: DispatchClient,
349
- options: CliOptions,
350
- ): Promise<CommandResult> {
351
- try {
352
- const result = await runDbMigrate(client, options);
353
- return {
354
- output: JSON.stringify(result, null, 2),
355
- exitCode: 0,
356
- };
357
- } catch (err) {
358
- return {
359
- error: `db-migrate failed: ${errorToMessage(err)}`,
360
- exitCode: 1,
361
- };
362
- }
363
- }
364
-
365
- /**
366
- * Hydrates each result's `preview` field with the actual section
367
- * content fetched from the client.
368
- *
369
- * Failures for individual results are caught and suppressed so that
370
- * one unavailable section does not prevent other previews from
371
- * being returned.
372
- *
373
- * @param client - content client used to fetch section text
374
- * @param results - mutable search display records to hydrate
375
- */
376
- async function hydrateSearchPreviews(
377
- client: ContentClient,
378
- paged: PagedSearchDisplay,
379
- ): Promise<void> {
380
- await Promise.all(
381
- paged.items.map(async (result) => {
382
- try {
383
- const contentResult = await client.content([result.kbid]);
384
- result.preview = contentResult.data;
385
- } catch {
386
- // Leave preview as empty string on failure.
387
- }
388
- }),
389
- );
390
- }
@@ -1,21 +0,0 @@
1
- import { existsSync, mkdirSync } from 'node:fs';
2
- import { join, resolve } from 'node:path';
3
-
4
- /**
5
- * Ensures that the `.kbdb` database directory exists at the
6
- * resolved base path, creating it recursively if necessary.
7
- *
8
- * When `dbPath` is provided it is resolved to an absolute path and
9
- * used as the base; otherwise `process.cwd()` is used.
10
- *
11
- * @param dbPath - optional path to the knowledge-base root directory
12
- * @returns absolute path to the `.kbdb` directory
13
- */
14
- export function ensureDb(dbPath?: string): string {
15
- const base = dbPath ? resolve(dbPath) : process.cwd();
16
- const kbdbDir = join(base, '.kbdb');
17
- if (!existsSync(kbdbDir)) {
18
- mkdirSync(kbdbDir, { recursive: true });
19
- }
20
- return kbdbDir;
21
- }
@@ -1,9 +0,0 @@
1
- /**
2
- * Converts an unknown thrown value to a human-readable message.
3
- *
4
- * @param err - the caught value
5
- * @returns the error message string
6
- */
7
- export function errorToMessage(err: unknown): string {
8
- return err instanceof Error ? err.message : String(err);
9
- }
@@ -1,20 +0,0 @@
1
- import { existsSync } from 'node:fs';
2
- import { join, resolve } from 'node:path';
3
-
4
- /**
5
- * Resolves the absolute path to the `.kbdb` database directory
6
- * under the given base path (or the current working directory).
7
- *
8
- * Unlike `ensureDb`, this function is purely read-only: it never
9
- * creates the directory. Returns `null` when the `.kbdb` directory
10
- * does not exist.
11
- *
12
- * @param dbPath - optional path to the knowledge-base root directory
13
- * @returns absolute path to the `.kbdb` directory, or `null` when
14
- * it does not exist
15
- */
16
- export function findDb(dbPath?: string): string | null {
17
- const base = dbPath ? resolve(dbPath) : process.cwd();
18
- const kbdbDir = join(base, '.kbdb');
19
- return existsSync(kbdbDir) ? kbdbDir : null;
20
- }
@@ -1,41 +0,0 @@
1
- import type { PagedSearchDisplay } from '../typings/search-display.model.ts';
2
-
3
- /**
4
- * Formats a paged search result as a JSON string compatible
5
- * with the MCP (Model Context Protocol) `text` content block.
6
- *
7
- * @param paged - paginated search results to serialise
8
- * @returns MCP-compatible JSON string ready for stdout
9
- */
10
- export function formatMcpOutput(paged: PagedSearchDisplay): string {
11
- const mcpItems = paged.items.map((r) => ({
12
- kbid: r.kbid,
13
- heading: r.heading,
14
- type: r.type,
15
- docids: r.docids,
16
- snippet: r.snippet,
17
- matched_terms: r.matched_terms,
18
- matched_fields: r.matched_fields,
19
- created_at: r.created_at,
20
- }));
21
- return JSON.stringify(
22
- {
23
- type: 'text',
24
- text: paged.items
25
- .map(
26
- (r) =>
27
- `[${r.kbid}] ${r.heading ?? '(untitled)'}` +
28
- ` — ${r.snippet || r.preview}`,
29
- )
30
- .join('\n'),
31
- items: mcpItems,
32
- total: paged.total,
33
- offset: paged.offset,
34
- limit: paged.limit,
35
- has_more: paged.has_more,
36
- relaxed: paged.relaxed,
37
- },
38
- null,
39
- 2,
40
- );
41
- }
@@ -1,95 +0,0 @@
1
- import type { OutputFormat } from '../typings/cli-options.interface.ts';
2
- import type { PagedSearchDisplay } from '../typings/search-display.model.ts';
3
-
4
- /**
5
- * Serialises a paged search result into the requested output
6
- * format string.
7
- *
8
- * - `'json'` -- pretty-printed JSON envelope
9
- * - `'text'` -- numbered human-readable list with paging footer
10
- * - `'mcp'` -- JSON envelope compatible with MCP protocol
11
- *
12
- * @param paged - paginated search results to format
13
- * @param format - target output format
14
- * @returns formatted string ready for stdout
15
- */
16
- export function formatOutput(
17
- paged: PagedSearchDisplay,
18
- format: OutputFormat,
19
- ): string {
20
- switch (format) {
21
- case 'json':
22
- return JSON.stringify(paged, null, 2);
23
- case 'text':
24
- return formatText(paged);
25
- case 'mcp':
26
- return formatMcp(paged);
27
- }
28
- }
29
-
30
- function formatText(paged: PagedSearchDisplay): string {
31
- if (paged.items.length === 0) return 'No results found.';
32
- const start = paged.offset + 1;
33
- const end = paged.offset + paged.items.length;
34
-
35
- const lines = paged.items
36
- .map((r, i) => {
37
- const num = paged.offset + i + 1;
38
- const heading = r.heading ?? '(untitled)';
39
- const terms = r.matched_terms.join(', ');
40
- const fields = r.matched_fields.join(', ');
41
- const confidencePct = (r.confidence * 100).toFixed(0);
42
- return (
43
- `${String(num)}. [${r.kbid}] ${heading}` +
44
- ` (score: ${r.score.toFixed(4)},` +
45
- ` confidence: ${confidencePct}%)\n` +
46
- ` ${r.snippet || r.preview || '(no snippet)'}\n` +
47
- ` type: ${r.type}` +
48
- ` terms: ${terms}` +
49
- (fields ? ` fields: ${fields}` : '')
50
- );
51
- })
52
- .join('\n\n');
53
-
54
- const footer =
55
- `\nShowing ${String(start)}-${String(end)}` +
56
- ` of ${String(paged.total)} results`;
57
- const hint = paged.has_more
58
- ? `\nUse --offset ${String(end)} to see more`
59
- : '';
60
-
61
- return lines + footer + hint;
62
- }
63
-
64
- function formatMcp(paged: PagedSearchDisplay): string {
65
- const mcpItems = paged.items.map((r) => ({
66
- kbid: r.kbid,
67
- heading: r.heading,
68
- type: r.type,
69
- docids: r.docids,
70
- snippet: r.snippet,
71
- matched_terms: r.matched_terms,
72
- matched_fields: r.matched_fields,
73
- created_at: r.created_at,
74
- }));
75
- return JSON.stringify(
76
- {
77
- type: 'text',
78
- text: paged.items
79
- .map(
80
- (r) =>
81
- `[${r.kbid}] ${r.heading ?? '(untitled)'}` +
82
- ` — ${r.snippet || r.preview}`,
83
- )
84
- .join('\n'),
85
- items: mcpItems,
86
- total: paged.total,
87
- offset: paged.offset,
88
- limit: paged.limit,
89
- has_more: paged.has_more,
90
- relaxed: paged.relaxed,
91
- },
92
- null,
93
- 2,
94
- );
95
- }
@@ -1,42 +0,0 @@
1
- import type { PagedSearchDisplay } from '../typings/search-display.model.ts';
2
-
3
- /**
4
- * Formats a paged search result as a numbered human-readable
5
- * text list with a paging footer and optional "more" hint.
6
- *
7
- * @param paged - paginated search results to render
8
- * @returns formatted string ready for stdout
9
- */
10
- export function formatTextOutput(paged: PagedSearchDisplay): string {
11
- if (paged.items.length === 0) return 'No results found.';
12
- const start = paged.offset + 1;
13
- const end = paged.offset + paged.items.length;
14
-
15
- const lines = paged.items
16
- .map((r, i) => {
17
- const num = paged.offset + i + 1;
18
- const heading = r.heading ?? '(untitled)';
19
- const terms = r.matched_terms.join(', ');
20
- const fields = r.matched_fields.join(', ');
21
- const confidencePct = (r.confidence * 100).toFixed(0);
22
- return (
23
- `${String(num)}. [${r.kbid}] ${heading}` +
24
- ` (score: ${r.score.toFixed(4)},` +
25
- ` confidence: ${confidencePct}%)\n` +
26
- ` ${r.snippet || r.preview || '(no snippet)'}\n` +
27
- ` type: ${r.type}` +
28
- ` terms: ${terms}` +
29
- (fields ? ` fields: ${fields}` : '')
30
- );
31
- })
32
- .join('\n\n');
33
-
34
- const footer =
35
- `\nShowing ${String(start)}-${String(end)}` +
36
- ` of ${String(paged.total)} results`;
37
- const hint = paged.has_more
38
- ? `\nUse --offset ${String(end)} to see more`
39
- : '';
40
-
41
- return lines + footer + hint;
42
- }
@@ -1,41 +0,0 @@
1
- /** One-line description for each group command. */
2
- const GROUP_DESCRIPTIONS: Readonly<Record<string, string>> = {
3
- db: 'Database management',
4
- skill: 'Skill management',
5
- agent: 'Agent management',
6
- };
7
-
8
- /**
9
- * Generates the level-2 help text for a group command.
10
- *
11
- * Lists all subcommands with their descriptions and
12
- * includes a footer pointing to per-subcommand help.
13
- *
14
- * @param group - the group command name (e.g. `'db'`, `'skill'`)
15
- * @param subs - ordered list of `[name, description]` pairs
16
- * @returns formatted help string for the group command
17
- */
18
- export function generateGroupHelp(
19
- group: string,
20
- subs: readonly (readonly [string, string])[],
21
- ): string {
22
- const subLines = subs
23
- .map(([name, desc]) => ` ${name.padEnd(20)}${desc}`)
24
- .join('\n');
25
- const desc = GROUP_DESCRIPTIONS[group] ?? group;
26
- return (
27
- `kbdb ${group} - ${desc}\n` +
28
- `\n` +
29
- `Usage: kbdb ${group} <subcommand> [options]\n` +
30
- `\n` +
31
- `Subcommands:\n` +
32
- `${subLines}\n` +
33
- `\n` +
34
- `Global Options:\n` +
35
- ` --db <path> Path to .kbdb directory\n` +
36
- ` -h, --help Show this help message\n` +
37
- `\n` +
38
- `Run "kbdb ${group} <subcommand> --help"` +
39
- ` for details.\n`
40
- );
41
- }