@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
package/mod.ts CHANGED
@@ -24,20 +24,38 @@
24
24
  * ```
25
25
  */
26
26
 
27
+ /** Semantic version string matching `package.json`. */
27
28
  export { version } from './src/shared/mod.ts';
28
29
 
29
- export {
30
- createWorkerClient,
31
- WorkerClient,
32
- resolveDbPath,
33
- computeContextId,
34
- } from './src/shared/worker-client/index.ts';
35
-
36
- export type {
37
- WorkerClientOptions,
38
- SearchParams,
39
- SearchResult,
40
- Section,
41
- AddSectionParams,
42
- StatusResult,
43
- } from './src/shared/worker-client/index.ts';
30
+ /** Creates a connected worker client for the given database. */
31
+ export { createWorkerClient } from './src/shared/worker-client/index.ts';
32
+
33
+ /** Persistent client wrapping JSON-RPC calls to the daemon. */
34
+ export { WorkerClient } from './src/shared/worker-client/index.ts';
35
+
36
+ /** Resolves a parent directory to the `.kbdb` path inside it. */
37
+ export { resolveDbPath } from './src/shared/worker-client/index.ts';
38
+
39
+ /** Derives the 16-char hex context ID from an absolute path. */
40
+ export { computeContextId } from './src/shared/worker-client/index.ts';
41
+
42
+ /** Returns a cached client or creates a new one for the given path. */
43
+ export { getOrCreateClient } from './src/shared/worker-client/index.ts';
44
+
45
+ /** Options accepted by {@linkcode createWorkerClient}. */
46
+ export type { WorkerClientOptions } from './src/shared/worker-client/index.ts';
47
+
48
+ /** Parameters for a search query. */
49
+ export type { SearchParams } from './src/shared/worker-client/index.ts';
50
+
51
+ /** A single ranked result returned by search. */
52
+ export type { SearchResult } from './src/shared/worker-client/index.ts';
53
+
54
+ /** Raw section record stored on disk. */
55
+ export type { Section } from './src/shared/worker-client/index.ts';
56
+
57
+ /** Parameters for adding a new section. */
58
+ export type { AddSectionParams } from './src/shared/worker-client/index.ts';
59
+
60
+ /** Database status snapshot returned by `client.status()`. */
61
+ export type { StatusResult } from './src/shared/worker-client/index.ts';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dikolab/kbdb",
3
- "version": "0.3.2",
4
- "description": "CLI tool and MCP server for a file-based knowledge base database",
3
+ "version": "0.4.0",
4
+ "description": "CLI tool and MCP server for a file-based knowledge base database -- index documents, search with ranked results, and recall context for AI agents",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -17,13 +17,15 @@
17
17
  "license": "ISC",
18
18
  "repository": {
19
19
  "type": "git",
20
- "url": "git@diko-gitlab:tech-slaves-internal/knowledge-base-db.git"
20
+ "url": "git+https://gitlab.com/tech-slaves/knowledge-base-db.git"
21
+ },
22
+ "homepage": "https://gitlab.com/tech-slaves/knowledge-base-db#readme",
23
+ "bugs": {
24
+ "url": "https://gitlab.com/tech-slaves/knowledge-base-db/-/issues"
21
25
  },
22
26
  "files": [
23
27
  "dist/**/*",
24
28
  "mod.ts",
25
- "src/**/*",
26
- "!src/**/*.spec.ts",
27
29
  "LICENSE",
28
30
  "README.md",
29
31
  "docs/details/**/*.md",
@@ -37,26 +39,25 @@
37
39
  "module": "./dist/mod.mjs",
38
40
  "types": "./dist/mod.d.ts",
39
41
  "bin": {
40
- "kbdb": "./dist/cli.cjs",
41
- "kbdb-worker": "./dist/kbdb-worker.cjs"
42
+ "kbdb": "./dist/cli.cjs"
42
43
  },
43
44
  "exports": {
44
45
  ".": {
45
- "deno": "./mod.ts",
46
46
  "types": "./dist/mod.d.ts",
47
+ "deno": "./mod.ts",
47
48
  "import": "./dist/mod.mjs",
48
49
  "require": "./dist/mod.cjs",
49
50
  "default": "./dist/mod.mjs"
50
51
  },
51
52
  "./cli": {
53
+ "types": "./dist/cli.d.ts",
52
54
  "deno": "./src/cli.ts",
53
- "types": "./dist/src/cli.d.ts",
54
55
  "import": "./dist/cli.mjs",
55
56
  "default": "./dist/cli.mjs"
56
57
  },
57
58
  "./worker": {
59
+ "types": "./dist/worker.d.ts",
58
60
  "deno": "./src/worker.ts",
59
- "types": "./dist/src/worker.d.ts",
60
61
  "import": "./dist/worker.mjs",
61
62
  "default": "./dist/worker.mjs"
62
63
  }
@@ -1,95 +0,0 @@
1
- // src/shared/runtime/functions/detect-runtime.ts
2
- function detectRuntime() {
3
- if (typeof globalThis !== "undefined" && "Deno" in globalThis) {
4
- return "deno";
5
- }
6
- return "node";
7
- }
8
-
9
- // src/shared/runtime/functions/get-args.ts
10
- function getArgs() {
11
- if (detectRuntime() === "deno") {
12
- const g = globalThis;
13
- const deno = g["Deno"];
14
- return deno?.args ?? [];
15
- }
16
- return process.argv.slice(2);
17
- }
18
-
19
- // src/shared/dir-resolver/functions/resolve-base-dir.function.ts
20
- import { dirname } from "node:path";
21
- import { fileURLToPath } from "node:url";
22
- function resolveScriptDir(entryUrl, entryDirname) {
23
- if (entryDirname) return entryDirname;
24
- if (entryUrl.startsWith("file:"))
25
- return dirname(fileURLToPath(entryUrl));
26
- return dirname(entryUrl);
27
- }
28
- function resolveBaseDir(entryUrl, entryDirname) {
29
- const scriptDir = typeof __dirname !== "undefined" ? __dirname : resolveScriptDir(entryUrl, entryDirname);
30
- return { scriptDir, cwd: process.cwd() };
31
- }
32
-
33
- // src/shared/dir-resolver/functions/join-path.function.ts
34
- import { join } from "node:path";
35
- function isRemoteUrl(path) {
36
- return path.startsWith("http://") || path.startsWith("https://");
37
- }
38
- function joinPath(base, ...segments) {
39
- if (isRemoteUrl(base)) {
40
- const trailing = base.endsWith("/") ? "" : "/";
41
- return base + trailing + segments.join("/");
42
- }
43
- return join(base, ...segments);
44
- }
45
-
46
- // src/shared/dir-resolver/functions/resolve-worker-script.function.ts
47
- function resolveWorkerScript(scriptDir, runtime) {
48
- if (runtime === "deno") {
49
- return joinPath(scriptDir, "worker.ts");
50
- }
51
- return joinPath(scriptDir, "kbdb-worker.cjs");
52
- }
53
-
54
- // src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts
55
- function resolveWasmDir(scriptDir) {
56
- return joinPath(scriptDir, "wasm");
57
- }
58
-
59
- // src/shared/hash/functions/compute-sha256.ts
60
- async function computeSha256(input) {
61
- const data = new TextEncoder().encode(input);
62
- const hash = await crypto.subtle.digest("SHA-256", data);
63
- const bytes = new Uint8Array(hash);
64
- return Array.from(bytes).map((b) => b.toString(16).padStart(2, "0")).join("");
65
- }
66
-
67
- // src/shared/platform/functions/get-ipc-path.function.ts
68
- import { join as join2 } from "node:path";
69
-
70
- // src/shared/platform/functions/get-tmpdir.function.ts
71
- import { tmpdir } from "node:os";
72
- function getTmpdir() {
73
- return tmpdir();
74
- }
75
-
76
- // src/shared/platform/functions/get-ipc-path.function.ts
77
- function getIpcPath(ctx) {
78
- if (process.platform === "win32") {
79
- return `\\\\.\\pipe\\kbdb-${ctx}`;
80
- }
81
- return join2(getTmpdir(), `kbdb-${ctx}.sock`);
82
- }
83
-
84
- export {
85
- detectRuntime,
86
- getArgs,
87
- resolveBaseDir,
88
- isRemoteUrl,
89
- joinPath,
90
- resolveWorkerScript,
91
- resolveWasmDir,
92
- computeSha256,
93
- getIpcPath
94
- };
95
- //# sourceMappingURL=chunk-JG2UCKLI.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/shared/runtime/functions/detect-runtime.ts", "../src/shared/runtime/functions/get-args.ts", "../src/shared/dir-resolver/functions/resolve-base-dir.function.ts", "../src/shared/dir-resolver/functions/join-path.function.ts", "../src/shared/dir-resolver/functions/resolve-worker-script.function.ts", "../src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts", "../src/shared/hash/functions/compute-sha256.ts", "../src/shared/platform/functions/get-ipc-path.function.ts", "../src/shared/platform/functions/get-tmpdir.function.ts"],
4
- "sourcesContent": ["import type { Runtime } from '../typings/runtime.ts';\n\n/**\n * Detects the current JavaScript runtime environment.\n *\n * Returns `'deno'` when the global `Deno` object is present,\n * otherwise returns `'node'`.\n */\nexport function detectRuntime(): Runtime {\n if (typeof globalThis !== 'undefined' && 'Deno' in globalThis) {\n return 'deno';\n }\n return 'node';\n}\n", "import { detectRuntime } from './detect-runtime.ts';\n\n/**\n * Returns the command-line arguments for the current runtime.\n *\n * In Deno, reads `Deno.args`; in Node.js, slices `process.argv`\n * past the interpreter and script entries.\n */\nexport function getArgs(): string[] {\n if (detectRuntime() === 'deno') {\n const g = globalThis as Record<string, unknown>;\n const deno = g['Deno'] as { args: string[] } | undefined;\n return deno?.args ?? [];\n }\n return process.argv.slice(2);\n}\n", "import { dirname } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nimport type { BaseDir } from '../typings/base-dir.interface.ts';\n\nexport function resolveScriptDir(\n entryUrl: string,\n entryDirname?: string,\n): string {\n if (entryDirname) return entryDirname;\n if (entryUrl.startsWith('file:'))\n return dirname(fileURLToPath(entryUrl));\n return dirname(entryUrl);\n}\n\nexport function resolveBaseDir(\n entryUrl: string,\n entryDirname?: string,\n): BaseDir {\n const scriptDir =\n typeof __dirname !== 'undefined'\n ? __dirname\n : resolveScriptDir(entryUrl, entryDirname);\n return { scriptDir, cwd: process.cwd() };\n}\n", "import { join } from 'node:path';\n\nexport function isRemoteUrl(path: string): boolean {\n return path.startsWith('http://') || path.startsWith('https://');\n}\n\nexport function joinPath(base: string, ...segments: string[]): string {\n if (isRemoteUrl(base)) {\n const trailing = base.endsWith('/') ? '' : '/';\n return base + trailing + segments.join('/');\n }\n return join(base, ...segments);\n}\n", "import { joinPath } from './join-path.function.ts';\n\nimport type { Runtime } from '../../runtime/typings/runtime.ts';\n\nexport function resolveWorkerScript(\n scriptDir: string,\n runtime: Runtime,\n): string {\n if (runtime === 'deno') {\n return joinPath(scriptDir, 'worker.ts');\n }\n return joinPath(scriptDir, 'kbdb-worker.cjs');\n}\n", "import { joinPath } from './join-path.function.ts';\n\nexport function resolveWasmDir(scriptDir: string): string {\n return joinPath(scriptDir, 'wasm');\n}\n", "/**\n * Computes the SHA-256 hash of a UTF-8 string.\n *\n * Uses the Web Crypto API (`crypto.subtle`), which is available\n * in both Deno and Node.js >= 20 without additional imports.\n *\n * @param input - the string to hash\n * @returns lowercase hex-encoded SHA-256 digest (64 characters)\n */\nexport async function computeSha256(input: string): Promise<string> {\n const data = new TextEncoder().encode(input);\n const hash = await crypto.subtle.digest('SHA-256', data);\n const bytes = new Uint8Array(hash);\n return Array.from(bytes)\n .map((b) => b.toString(16).padStart(2, '0'))\n .join('');\n}\n", "import { join } from 'node:path';\nimport { getTmpdir } from './get-tmpdir.function.ts';\n\n/**\n * Returns the platform-appropriate IPC socket path for a given\n * context identifier.\n *\n * On Windows, returns a named pipe path (`\\\\.\\pipe\\kbdb-<ctx>`).\n * On POSIX systems, returns a Unix domain socket path under the\n * system temp directory (`<tmpdir>/kbdb-<ctx>.sock`).\n *\n * @param ctx - unique context identifier embedded in the path\n */\nexport function getIpcPath(ctx: string): string {\n if (process.platform === 'win32') {\n return `\\\\\\\\.\\\\pipe\\\\kbdb-${ctx}`;\n }\n return join(getTmpdir(), `kbdb-${ctx}.sock`);\n}\n", "import { tmpdir } from 'node:os';\n\n/**\n * Returns the operating system's default temporary directory path.\n */\nexport function getTmpdir(): string {\n return tmpdir();\n}\n"],
5
- "mappings": ";AAQO,SAAS,gBAAyB;AACtC,MAAI,OAAO,eAAe,eAAe,UAAU,YAAY;AAC5D,WAAO;AAAA,EACV;AACA,SAAO;AACV;;;ACLO,SAAS,UAAoB;AACjC,MAAI,cAAc,MAAM,QAAQ;AAC7B,UAAM,IAAI;AACV,UAAM,OAAO,EAAE,MAAM;AACrB,WAAO,MAAM,QAAQ,CAAC;AAAA,EACzB;AACA,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC9B;;;ACfA,SAAS,eAAe;AACxB,SAAS,qBAAqB;AAIvB,SAAS,iBACb,UACA,cACO;AACP,MAAI,aAAc,QAAO;AACzB,MAAI,SAAS,WAAW,OAAO;AAC5B,WAAO,QAAQ,cAAc,QAAQ,CAAC;AACzC,SAAO,QAAQ,QAAQ;AAC1B;AAEO,SAAS,eACb,UACA,cACQ;AACR,QAAM,YACH,OAAO,cAAc,cAChB,YACA,iBAAiB,UAAU,YAAY;AAC/C,SAAO,EAAE,WAAW,KAAK,QAAQ,IAAI,EAAE;AAC1C;;;ACxBA,SAAS,YAAY;AAEd,SAAS,YAAY,MAAuB;AAChD,SAAO,KAAK,WAAW,SAAS,KAAK,KAAK,WAAW,UAAU;AAClE;AAEO,SAAS,SAAS,SAAiB,UAA4B;AACnE,MAAI,YAAY,IAAI,GAAG;AACpB,UAAM,WAAW,KAAK,SAAS,GAAG,IAAI,KAAK;AAC3C,WAAO,OAAO,WAAW,SAAS,KAAK,GAAG;AAAA,EAC7C;AACA,SAAO,KAAK,MAAM,GAAG,QAAQ;AAChC;;;ACRO,SAAS,oBACb,WACA,SACO;AACP,MAAI,YAAY,QAAQ;AACrB,WAAO,SAAS,WAAW,WAAW;AAAA,EACzC;AACA,SAAO,SAAS,WAAW,iBAAiB;AAC/C;;;ACVO,SAAS,eAAe,WAA2B;AACvD,SAAO,SAAS,WAAW,MAAM;AACpC;;;ACKA,eAAsB,cAAc,OAAgC;AACjE,QAAM,OAAO,IAAI,YAAY,EAAE,OAAO,KAAK;AAC3C,QAAM,OAAO,MAAM,OAAO,OAAO,OAAO,WAAW,IAAI;AACvD,QAAM,QAAQ,IAAI,WAAW,IAAI;AACjC,SAAO,MAAM,KAAK,KAAK,EACnB,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC,EAC1C,KAAK,EAAE;AACd;;;AChBA,SAAS,QAAAA,aAAY;;;ACArB,SAAS,cAAc;AAKhB,SAAS,YAAoB;AACjC,SAAO,OAAO;AACjB;;;ADMO,SAAS,WAAW,KAAqB;AAC7C,MAAI,QAAQ,aAAa,SAAS;AAC/B,WAAO,qBAAqB,GAAG;AAAA,EAClC;AACA,SAAOC,MAAK,UAAU,GAAG,QAAQ,GAAG,OAAO;AAC9C;",
6
- "names": ["join", "join"]
7
- }
package/src/cli.ts DELETED
@@ -1,71 +0,0 @@
1
- /**
2
- * @module
3
- *
4
- * CLI and MCP server executable for kbdb. Provides the
5
- * `kbdb` command with 18 subcommands for managing a
6
- * file-based knowledge base, and an MCP server mode
7
- * for AI agent integration.
8
- */
9
-
10
- import { getArgs, detectRuntime } from './shared/runtime/index.ts';
11
- import {
12
- resolveBaseDir,
13
- resolveWorkerScript,
14
- } from './shared/dir-resolver/index.ts';
15
- import {
16
- runCli,
17
- isStdinTty,
18
- promptUser,
19
- findDb,
20
- runInit,
21
- } from './shared/cli/index.ts';
22
- import type { CliDeps } from './shared/cli/index.ts';
23
- import { createWorkerClient } from './shared/worker-client/index.ts';
24
- import { createMcpServer } from './shared/mcp/index.ts';
25
-
26
- const runtime = detectRuntime();
27
- const baseDir = resolveBaseDir(import.meta.url, import.meta.dirname);
28
- const workerScript = resolveWorkerScript(baseDir.scriptDir, runtime);
29
-
30
- const deps: CliDeps = {
31
- isStdinTty,
32
- promptUser,
33
- createWorkerClient: (opts) =>
34
- createWorkerClient({ ...opts, workerScript }),
35
- findDb,
36
- runInit,
37
- startMcpServer: async (contextPath) => {
38
- const client = await createWorkerClient({
39
- contextPath,
40
- workerScript,
41
- });
42
- try {
43
- const server = createMcpServer(client);
44
- await server.listen();
45
- } finally {
46
- client.disconnect();
47
- }
48
- },
49
- };
50
-
51
- async function main(): Promise<void> {
52
- const result = await runCli(getArgs(), deps);
53
- if (result.output) {
54
- // eslint-disable-next-line no-console
55
- console.log(result.output);
56
- }
57
- if (result.error) {
58
- // eslint-disable-next-line no-console
59
- console.error(result.error);
60
- }
61
- if (result.exitCode !== 0) {
62
- process.exitCode = result.exitCode;
63
- }
64
- }
65
-
66
- main().catch((err: unknown) => {
67
- const msg = err instanceof Error ? err.message : String(err);
68
- // eslint-disable-next-line no-console
69
- console.error(`error: ${msg}`);
70
- process.exitCode = 1;
71
- });
@@ -1,62 +0,0 @@
1
- import type { AutoCaptureConfig } from '../typings/auto-capture-config.interface.ts';
2
- import type { AutoCaptureState } from '../typings/auto-capture-state.interface.ts';
3
- import type { AutoCaptureTrigger } from '../typings/auto-capture-trigger.interface.ts';
4
- import { evaluateTrigger } from '../functions/evaluate-trigger.function.ts';
5
-
6
- /**
7
- * Controls the auto-capture lifecycle.
8
- *
9
- * Tracks tool call counts, evaluates trigger conditions, and
10
- * advances session state when a capture fires. Reset state on
11
- * disconnect or session end via `reset()`.
12
- */
13
- export class AutoCaptureController {
14
- private toolCallsSinceLastCapture = 0;
15
- private lastCaptureTimestamp = 0;
16
- private totalCapturesThisSession = 0;
17
- private readonly config: AutoCaptureConfig;
18
-
19
- /** @param config - the auto-capture configuration to use */
20
- constructor(config: AutoCaptureConfig) {
21
- this.config = config;
22
- }
23
-
24
- /** Record one tool call for trigger counting. */
25
- recordToolCall(): void {
26
- this.toolCallsSinceLastCapture += 1;
27
- }
28
-
29
- /**
30
- * Evaluates the current state against the trigger criteria.
31
- *
32
- * When the trigger fires, advances the session counters so the
33
- * next evaluation respects rate limiting and the session cap.
34
- *
35
- * @returns the trigger decision with a human-readable reason
36
- */
37
- evaluate(): AutoCaptureTrigger {
38
- const trigger = evaluateTrigger(this.config, this.state());
39
- if (trigger.shouldCapture) {
40
- this.totalCapturesThisSession += 1;
41
- this.lastCaptureTimestamp = Date.now();
42
- this.toolCallsSinceLastCapture = 0;
43
- }
44
- return trigger;
45
- }
46
-
47
- /** Reset all counters, e.g. on client disconnect. */
48
- reset(): void {
49
- this.toolCallsSinceLastCapture = 0;
50
- this.lastCaptureTimestamp = 0;
51
- this.totalCapturesThisSession = 0;
52
- }
53
-
54
- /** Returns a snapshot of the current controller state. */
55
- state(): AutoCaptureState {
56
- return {
57
- toolCallsSinceLastCapture: this.toolCallsSinceLastCapture,
58
- lastCaptureTimestamp: this.lastCaptureTimestamp,
59
- totalCapturesThisSession: this.totalCapturesThisSession,
60
- };
61
- }
62
- }
@@ -1,15 +0,0 @@
1
- import type { AutoCaptureConfig } from '../typings/auto-capture-config.interface.ts';
2
-
3
- /**
4
- * Default configuration for the auto-capture feature.
5
- *
6
- * Auto-capture is disabled by default. Enable it in
7
- * `worker.toml` under `[auto_capture]`.
8
- */
9
- export const AUTO_CAPTURE_DEFAULTS: AutoCaptureConfig = {
10
- enabled: false,
11
- triggerAfterToolCalls: 5,
12
- minIntervalMs: 60_000,
13
- maxCapturesPerSession: 10,
14
- dryRun: false,
15
- };
@@ -1,27 +0,0 @@
1
- /**
2
- * Builds the MCP sampling prompt for knowledge extraction.
3
- *
4
- * Instructs the host LLM to identify durable factual knowledge
5
- * from the recent conversation context, filter out ephemeral or
6
- * task-specific information, and format the result for storage
7
- * following memory-protocol criteria.
8
- *
9
- * @param recentContext - the conversation excerpt to analyse
10
- */
11
- export function buildCapturePrompt(recentContext: string): string {
12
- return (
13
- 'Review the following conversation context and identify' +
14
- ' factual knowledge worth storing in the knowledge base.\n\n' +
15
- 'Rules:\n' +
16
- '- Include durable facts, decisions, preferences, and' +
17
- ' corrections that would be useful in future sessions.\n' +
18
- '- Exclude ephemeral, task-specific, or temporary information' +
19
- ' that has no lasting value.\n' +
20
- '- Format each piece of extracted knowledge as a concise' +
21
- ' statement suitable for direct storage.\n' +
22
- '- If no durable knowledge is found, respond with an empty' +
23
- ' list.\n\n' +
24
- 'Conversation context:\n' +
25
- recentContext
26
- );
27
- }
@@ -1,50 +0,0 @@
1
- import type { AutoCaptureConfig } from '../typings/auto-capture-config.interface.ts';
2
- import type { AutoCaptureState } from '../typings/auto-capture-state.interface.ts';
3
- import type { AutoCaptureTrigger } from '../typings/auto-capture-trigger.interface.ts';
4
-
5
- /**
6
- * Evaluates whether auto-capture should fire given the current
7
- * configuration and runtime state.
8
- *
9
- * Checks (in order): feature flag, session cap, rate limit,
10
- * and tool-call count threshold. Returns the first failing
11
- * condition as the reason.
12
- */
13
- export function evaluateTrigger(
14
- config: AutoCaptureConfig,
15
- state: AutoCaptureState,
16
- ): AutoCaptureTrigger {
17
- if (!config.enabled) {
18
- return {
19
- shouldCapture: false,
20
- reason: 'auto-capture is disabled',
21
- };
22
- }
23
-
24
- if (state.totalCapturesThisSession >= config.maxCapturesPerSession) {
25
- return {
26
- shouldCapture: false,
27
- reason: 'session capture limit reached',
28
- };
29
- }
30
-
31
- const elapsed = state.lastCaptureTimestamp
32
- ? Date.now() - state.lastCaptureTimestamp
33
- : Infinity;
34
-
35
- if (elapsed < config.minIntervalMs) {
36
- return {
37
- shouldCapture: false,
38
- reason: 'within minimum interval',
39
- };
40
- }
41
-
42
- if (state.toolCallsSinceLastCapture < config.triggerAfterToolCalls) {
43
- return {
44
- shouldCapture: false,
45
- reason: 'tool call threshold not yet reached',
46
- };
47
- }
48
-
49
- return { shouldCapture: true, reason: 'trigger threshold met' };
50
- }
@@ -1,7 +0,0 @@
1
- export { AutoCaptureController } from './classes/auto-capture-controller.class.ts';
2
- export { AUTO_CAPTURE_DEFAULTS } from './constants/auto-capture-defaults.constant.ts';
3
- export { evaluateTrigger } from './functions/evaluate-trigger.function.ts';
4
- export { buildCapturePrompt } from './functions/build-capture-prompt.function.ts';
5
- export type { AutoCaptureConfig } from './typings/auto-capture-config.interface.ts';
6
- export type { AutoCaptureTrigger } from './typings/auto-capture-trigger.interface.ts';
7
- export type { AutoCaptureState } from './typings/auto-capture-state.interface.ts';
@@ -1,13 +0,0 @@
1
- /** Configuration for auto-capture behavior. */
2
- export interface AutoCaptureConfig {
3
- /** Enable or disable auto-capture. */
4
- readonly enabled: boolean;
5
- /** Trigger a capture after this many tool calls. */
6
- readonly triggerAfterToolCalls: number;
7
- /** Minimum time in milliseconds between captures. */
8
- readonly minIntervalMs: number;
9
- /** Maximum number of captures allowed per session. */
10
- readonly maxCapturesPerSession: number;
11
- /** Log without writing when true. */
12
- readonly dryRun: boolean;
13
- }
@@ -1,13 +0,0 @@
1
- /** Runtime state tracked by the auto-capture controller. */
2
- export interface AutoCaptureState {
3
- /** Tool calls recorded since the last successful capture. */
4
- readonly toolCallsSinceLastCapture: number;
5
- /**
6
- * Unix epoch milliseconds of the most recent capture.
7
- *
8
- * Zero when no capture has occurred this session.
9
- */
10
- readonly lastCaptureTimestamp: number;
11
- /** Total captures completed during the current session. */
12
- readonly totalCapturesThisSession: number;
13
- }
@@ -1,7 +0,0 @@
1
- /** Result of evaluating whether auto-capture should fire. */
2
- export interface AutoCaptureTrigger {
3
- /** Whether a capture should be triggered. */
4
- readonly shouldCapture: boolean;
5
- /** Human-readable reason for the decision. */
6
- readonly reason: string;
7
- }
@@ -1,19 +0,0 @@
1
- /** Default maximum number of search results returned per query. */
2
- export const DEFAULT_LIMIT = 20;
3
-
4
- /** Default output format when `--format` is not specified. */
5
- export const DEFAULT_FORMAT = 'json' as const;
6
-
7
- /** Default search mode when `--mode` is not specified. */
8
- export const DEFAULT_MODE = 'sections' as const;
9
-
10
- /**
11
- * File extensions recognised as importable documents by the learn
12
- * command. Extensions are lowercase and include the leading dot.
13
- */
14
- export const SUPPORTED_EXTENSIONS = [
15
- '.md',
16
- '.txt',
17
- '.rst',
18
- '.adoc',
19
- ] as const;
@@ -1,73 +0,0 @@
1
- import { VERSION } from '../../version/index.ts';
2
-
3
- /**
4
- * Top-level help text displayed when no command is given or when
5
- * `--help` is passed without a command name.
6
- *
7
- * Lists all available commands grouped by category and describes
8
- * global options.
9
- */
10
- export const GLOBAL_HELP =
11
- `kbdb v${VERSION} - File-based knowledge base` +
12
- ` database for AI agents\n` +
13
- `\n` +
14
- `Usage: kbdb [options]\n` +
15
- ` kbdb <command> [options] ...[parameters]\n` +
16
- ` kbdb <command> <subcommand> [options]` +
17
- ` ...[params]\n` +
18
- `\n` +
19
- `Knowledge Base:\n` +
20
- ` learn Import content from` +
21
- ` files/stdin\n` +
22
- ` unlearn Remove sections by kbid\n` +
23
- ` search Query the knowledge base\n` +
24
- ` recall Retrieve section context` +
25
- ` by kbid\n` +
26
- ` content Compose rendered content` +
27
- ` from ids\n` +
28
- `\n` +
29
- `Database:\n` +
30
- ` db init Initialise a new .kbdb` +
31
- ` directory\n` +
32
- ` db migrate Migrate database to current` +
33
- ` format\n` +
34
- `\n` +
35
- `Maintenance:\n` +
36
- ` check Verify knowledge base` +
37
- ` integrity\n` +
38
- ` gc Garbage collect unreferenced\n` +
39
- ` sections\n` +
40
- ` rebuild Reconstruct all index` +
41
- ` files\n` +
42
- ` status Show database status\n` +
43
- ` export Snapshot database for` +
44
- ` backup\n` +
45
- `\n` +
46
- `Skills:\n` +
47
- ` skill learn Create a new skill` +
48
- ` definition\n` +
49
- ` skill list List all skills\n` +
50
- ` skill get Retrieve a skill by name` +
51
- ` or kbid\n` +
52
- ` skill delete Remove a skill\n` +
53
- `\n` +
54
- `Agents:\n` +
55
- ` agent create Create an agent with skill` +
56
- ` refs\n` +
57
- ` agent list List all agents\n` +
58
- ` agent get Retrieve an agent by docid\n` +
59
- ` agent delete Remove an agent\n` +
60
- `\n` +
61
- `Server:\n` +
62
- ` mcp Start MCP server mode` +
63
- ` (stdio)\n` +
64
- `\n` +
65
- `Global Options:\n` +
66
- ` -h, --help Show this help message\n` +
67
- ` -v, --version Show version information\n` +
68
- ` --db <path> Path to .kbdb directory\n` +
69
- ` --format <fmt> Output format` +
70
- ` (json|text|mcp)\n` +
71
- `\n` +
72
- `Run "kbdb <command> --help" for detailed` +
73
- ` information.\n`;
@@ -1,4 +0,0 @@
1
- import { generateHelp } from '../functions/generate-help.function.ts';
2
-
3
- /** Global help text for the kbdb CLI. */
4
- export const HELP_TEXT = generateHelp();