@dikolab/kbdb 0.3.2 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (523) hide show
  1. package/README.md +92 -90
  2. package/dist/chunk-BJXEVALU.mjs +337 -0
  3. package/dist/chunk-BJXEVALU.mjs.map +7 -0
  4. package/dist/cli.cjs +1398 -378
  5. package/dist/cli.cjs.map +4 -4
  6. package/dist/cli.d.ts +9 -0
  7. package/dist/cli.mjs +1138 -342
  8. package/dist/cli.mjs.map +4 -4
  9. package/dist/kbdb-worker.cjs +1115 -135
  10. package/dist/kbdb-worker.cjs.map +4 -4
  11. package/dist/mod.cjs +351 -69
  12. package/dist/mod.cjs.map +4 -4
  13. package/dist/mod.d.ts +23 -2
  14. package/dist/mod.mjs +349 -68
  15. package/dist/mod.mjs.map +4 -4
  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 +22 -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/classes/tfidf-embedding-provider.class.d.ts +28 -0
  38. package/dist/src/shared/embedding/constants/tfidf-defaults.constant.d.ts +4 -0
  39. package/dist/src/shared/embedding/functions/append-vector-entry.function.d.ts +14 -0
  40. package/dist/src/shared/embedding/functions/create-embedding-provider.function.d.ts +15 -0
  41. package/dist/src/shared/embedding/functions/detect-stale-vectors.function.d.ts +16 -0
  42. package/dist/src/shared/embedding/functions/parse-api-embedding-response.function.d.ts +11 -0
  43. package/dist/src/shared/embedding/functions/rebuild-vectors.function.d.ts +15 -0
  44. package/dist/src/shared/embedding/functions/scan-semantic-contradictions.function.d.ts +13 -0
  45. package/dist/src/shared/embedding/index.d.ts +9 -0
  46. package/dist/src/shared/embedding/typings/semantic-contradiction.model.d.ts +21 -0
  47. package/dist/src/shared/embedding/typings/stale-vectors-report.model.d.ts +16 -0
  48. package/dist/src/shared/log/constants/log-colors.constant.d.ts +5 -0
  49. package/dist/src/shared/log/constants/log-defaults.constant.d.ts +3 -0
  50. package/dist/src/shared/log/constants/log-icons.constant.d.ts +3 -0
  51. package/dist/src/shared/log/functions/configure-log.function.d.ts +12 -0
  52. package/dist/src/shared/log/functions/log.function.d.ts +28 -0
  53. package/dist/src/shared/log/functions/parse-log-level.function.d.ts +10 -0
  54. package/dist/src/shared/log/functions/resolve-log-level.function.d.ts +12 -0
  55. package/dist/src/shared/log/functions/write-stderr.function.d.ts +10 -0
  56. package/dist/src/shared/log/index.d.ts +10 -0
  57. package/dist/src/shared/log/typings/log-config.interface.d.ts +7 -0
  58. package/dist/src/shared/log/typings/log-level.type.d.ts +7 -0
  59. package/dist/src/shared/log/typings/log-output.interface.d.ts +4 -0
  60. package/dist/src/shared/mcp/classes/mcp-server.class.d.ts +22 -2
  61. package/dist/src/shared/mcp/functions/create-mcp-server.function.d.ts +6 -1
  62. package/dist/src/shared/mcp/functions/has-sampling-capability.function.d.ts +8 -0
  63. package/dist/src/shared/mcp/functions/run-auto-capture.function.d.ts +26 -0
  64. package/dist/src/shared/mcp/typings/mcp-client.interface.d.ts +2 -0
  65. package/dist/src/shared/mcp/typings/mcp-integrity-check-result.model.d.ts +24 -0
  66. package/dist/src/shared/mcp/typings/mcp-worker-client.interface.d.ts +3 -1
  67. package/dist/src/shared/version/constants/version.constant.d.ts +1 -1
  68. package/dist/src/shared/wasm-codec/typings/paged-search-result.model.d.ts +2 -0
  69. package/dist/src/shared/worker-client/classes/worker-client.class.d.ts +38 -1
  70. package/dist/src/shared/worker-client/constants/request-timeout.constant.d.ts +2 -0
  71. package/dist/src/shared/worker-client/constants/retry-defaults.constant.d.ts +2 -0
  72. package/dist/src/shared/worker-client/functions/get-or-create-client.function.d.ts +20 -0
  73. package/dist/src/shared/worker-client/functions/retry-on-timeout.function.d.ts +18 -0
  74. package/dist/src/shared/worker-client/index.d.ts +4 -1
  75. package/dist/src/shared/worker-client/typings/import-result.model.d.ts +16 -0
  76. package/dist/src/shared/worker-client/typings/integrity-check-result.model.d.ts +24 -0
  77. package/dist/src/shared/worker-client/typings/search-params.model.d.ts +4 -0
  78. package/dist/src/shared/worker-client/typings/search-result.model.d.ts +6 -0
  79. package/dist/src/shared/worker-client/typings/worker-client-options.interface.d.ts +7 -0
  80. package/dist/src/shared/worker-daemon/classes/worker-daemon.class.d.ts +6 -0
  81. package/dist/src/shared/worker-daemon/functions/create-ipc-server.function.d.ts +11 -11
  82. package/dist/src/shared/worker-daemon/functions/embed-after-learn.function.d.ts +13 -0
  83. package/dist/src/shared/worker-daemon/functions/handle-hybrid-search.function.d.ts +44 -0
  84. package/dist/src/shared/worker-daemon/functions/handle-import.function.d.ts +14 -0
  85. package/dist/src/shared/worker-daemon/functions/handle-read-ops.function.d.ts +7 -1
  86. package/dist/src/shared/worker-daemon/functions/handle-write-ops.function.d.ts +9 -4
  87. package/dist/src/shared/worker-daemon/functions/run-worker.function.d.ts +6 -1
  88. package/dist/src/shared/worker-daemon/typings/handler-context.interface.d.ts +3 -0
  89. package/dist/src/shared/worker-daemon/typings/wasm-modules.interface.d.ts +5 -0
  90. package/dist/wasm/default-embedding/kbdb_default_embedding.d.ts +55 -0
  91. package/dist/wasm/default-embedding/kbdb_default_embedding.js +156 -0
  92. package/{src/wasm/query-parser/kbdb_query_parser_bg.wasm → dist/wasm/default-embedding/kbdb_default_embedding_bg.wasm} +0 -0
  93. package/dist/wasm/default-embedding/kbdb_default_embedding_bg.wasm.d.ts +12 -0
  94. package/dist/wasm/default-embedding/package.json +13 -0
  95. package/dist/wasm/fs-database/kbdb_fs_database.d.ts +16 -85
  96. package/dist/wasm/fs-database/kbdb_fs_database.js +16 -85
  97. package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  98. package/dist/wasm/fs-migration/kbdb_fs_migration.d.ts +38 -0
  99. package/dist/wasm/fs-migration/kbdb_fs_migration.js +130 -0
  100. package/dist/wasm/fs-migration/kbdb_fs_migration_bg.wasm +0 -0
  101. package/dist/wasm/fs-migration/kbdb_fs_migration_bg.wasm.d.ts +9 -0
  102. package/dist/wasm/fs-migration/package.json +13 -0
  103. package/dist/wasm/kb-worker/kbdb_worker.d.ts +20 -115
  104. package/dist/wasm/kb-worker/kbdb_worker.js +20 -115
  105. package/dist/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  106. package/dist/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  107. package/dist/worker.d.ts +8 -0
  108. package/dist/worker.mjs +899 -143
  109. package/dist/worker.mjs.map +4 -4
  110. package/docs/details/README.md +4 -0
  111. package/docs/details/agent-tooling.md +132 -0
  112. package/docs/details/cli.md +91 -18
  113. package/docs/details/knowledge-base.md +180 -0
  114. package/docs/details/library-api.md +42 -2
  115. package/docs/details/mcp-server.md +53 -7
  116. package/docs/details/search-and-ranking.md +16 -11
  117. package/docs/goals/cli.md +142 -37
  118. package/docs/goals/content-parser.md +1 -1
  119. package/docs/goals/hybrid-search.md +71 -42
  120. package/docs/goals/mcp.md +24 -19
  121. package/docs/goals/overview.md +1 -1
  122. package/docs/goals/query-parser.md +8 -0
  123. package/docs/goals/semantic-dedup.md +7 -3
  124. package/docs/goals/worker-client.md +62 -1
  125. package/docs/goals/worker-daemon.md +83 -30
  126. package/docs/modules/overview.md +43 -22
  127. package/docs/modules/rust/embedding/module.md +91 -0
  128. package/docs/modules/rust/overview.md +56 -21
  129. package/docs/modules/rust/query-parser/functions/module.md +7 -5
  130. package/docs/modules/rust/query-parser/functions/pipeline.md +6 -138
  131. package/docs/modules/rust/query-parser/module.md +16 -22
  132. package/docs/modules/rust/query-parser/types/module.md +5 -4
  133. package/docs/modules/rust/query-parser/types/token.md +5 -1
  134. package/docs/modules/rust/shared/content-parser/functions.md +1 -1
  135. package/docs/modules/rust/shared/memory/module.md +1 -1
  136. package/docs/modules/rust/shared/module.md +33 -5
  137. package/docs/modules/rust/shared/pipeline/functions.md +141 -0
  138. package/docs/modules/rust/shared/pipeline/module.md +62 -0
  139. package/docs/modules/rust/shared/pipeline/types.md +43 -0
  140. package/docs/modules/rust/shared/section/module.md +1 -1
  141. package/docs/modules/rust/shared/section/types.md +1 -1
  142. package/docs/modules/typescript/cli.md +5 -3
  143. package/docs/modules/typescript/kbdb-worker.md +20 -5
  144. package/docs/modules/typescript/overview.md +28 -6
  145. package/docs/modules/typescript/shared/cli/functions.md +131 -17
  146. package/docs/modules/typescript/shared/cli/module.md +33 -20
  147. package/docs/modules/typescript/shared/cli/typings.md +25 -0
  148. package/docs/modules/typescript/shared/embedding/functions.md +125 -19
  149. package/docs/modules/typescript/shared/embedding/module.md +10 -4
  150. package/docs/modules/typescript/shared/embedding/typings.md +7 -5
  151. package/docs/modules/typescript/shared/log/constants.md +82 -0
  152. package/docs/modules/typescript/shared/log/functions.md +131 -0
  153. package/docs/modules/typescript/shared/log/module.md +153 -0
  154. package/docs/modules/typescript/shared/log/typings.md +82 -0
  155. package/docs/modules/typescript/shared/mcp/module.md +1 -1
  156. package/docs/modules/typescript/shared/mcp/typings.md +8 -1
  157. package/docs/modules/typescript/shared/module.md +22 -6
  158. package/docs/modules/typescript/shared/worker-client/module.md +9 -1
  159. package/docs/modules/typescript/shared/worker-client/typings.md +3 -0
  160. package/docs/modules/typescript/shared/worker-daemon/functions.md +19 -6
  161. package/docs/modules/typescript/shared/worker-daemon/module.md +11 -5
  162. package/docs/modules/typescript/shared/worker-daemon/typings.md +13 -7
  163. package/docs/overview.md +1 -2
  164. package/docs/release-notes/0.4.0.md +80 -0
  165. package/docs/release-notes/0.4.1.md +149 -0
  166. package/docs/release-notes/README.md +1 -0
  167. package/mod.ts +33 -15
  168. package/package.json +12 -11
  169. package/dist/chunk-JG2UCKLI.mjs +0 -95
  170. package/dist/chunk-JG2UCKLI.mjs.map +0 -7
  171. package/src/cli.ts +0 -71
  172. package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +0 -62
  173. package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +0 -15
  174. package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +0 -27
  175. package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +0 -50
  176. package/src/shared/auto-capture/index.ts +0 -7
  177. package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +0 -13
  178. package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +0 -13
  179. package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +0 -7
  180. package/src/shared/cli/constants/defaults.constant.ts +0 -19
  181. package/src/shared/cli/constants/global-help.constant.ts +0 -73
  182. package/src/shared/cli/constants/help-text.constant.ts +0 -4
  183. package/src/shared/cli/constants/leaf-help.constant.ts +0 -219
  184. package/src/shared/cli/constants/memory-protocol-body.constant.ts +0 -39
  185. package/src/shared/cli/constants/query-guidance-body.constant.ts +0 -37
  186. package/src/shared/cli/constants/subcommand-help.constant.ts +0 -195
  187. package/src/shared/cli/functions/collect-files.function.ts +0 -55
  188. package/src/shared/cli/functions/compute-section-kbid.function.ts +0 -49
  189. package/src/shared/cli/functions/dispatch-command.function.ts +0 -390
  190. package/src/shared/cli/functions/ensure-db.function.ts +0 -21
  191. package/src/shared/cli/functions/error-to-message.function.ts +0 -9
  192. package/src/shared/cli/functions/find-db.function.ts +0 -20
  193. package/src/shared/cli/functions/format-mcp-output.function.ts +0 -41
  194. package/src/shared/cli/functions/format-output.function.ts +0 -95
  195. package/src/shared/cli/functions/format-text-output.function.ts +0 -42
  196. package/src/shared/cli/functions/generate-group-help.function.ts +0 -41
  197. package/src/shared/cli/functions/generate-help.function.ts +0 -654
  198. package/src/shared/cli/functions/handle-data-command.function.ts +0 -67
  199. package/src/shared/cli/functions/handle-mcp.function.ts +0 -56
  200. package/src/shared/cli/functions/handle-migrate.function.ts +0 -64
  201. package/src/shared/cli/functions/hydrate-search-previews.function.ts +0 -29
  202. package/src/shared/cli/functions/install-default-skills.function.ts +0 -296
  203. package/src/shared/cli/functions/is-stdin-tty.function.ts +0 -12
  204. package/src/shared/cli/functions/parse-args.function.ts +0 -156
  205. package/src/shared/cli/functions/prompt-user.function.ts +0 -36
  206. package/src/shared/cli/functions/resolve-skill-names.function.ts +0 -43
  207. package/src/shared/cli/functions/run-agent-create.function.ts +0 -114
  208. package/src/shared/cli/functions/run-agent-delete.function.ts +0 -47
  209. package/src/shared/cli/functions/run-agent-get.function.ts +0 -166
  210. package/src/shared/cli/functions/run-agent-list.function.ts +0 -58
  211. package/src/shared/cli/functions/run-check.function.ts +0 -159
  212. package/src/shared/cli/functions/run-cli.function.ts +0 -299
  213. package/src/shared/cli/functions/run-content.function.ts +0 -47
  214. package/src/shared/cli/functions/run-db-init.function.ts +0 -44
  215. package/src/shared/cli/functions/run-db-migrate.function.ts +0 -40
  216. package/src/shared/cli/functions/run-export.function.ts +0 -40
  217. package/src/shared/cli/functions/run-gc.function.ts +0 -51
  218. package/src/shared/cli/functions/run-init.function.ts +0 -93
  219. package/src/shared/cli/functions/run-learn.function.ts +0 -223
  220. package/src/shared/cli/functions/run-migrate.function.ts +0 -85
  221. package/src/shared/cli/functions/run-rebuild.function.ts +0 -47
  222. package/src/shared/cli/functions/run-recall.function.ts +0 -66
  223. package/src/shared/cli/functions/run-search.function.ts +0 -133
  224. package/src/shared/cli/functions/run-skill-delete.function.ts +0 -47
  225. package/src/shared/cli/functions/run-skill-get.function.ts +0 -90
  226. package/src/shared/cli/functions/run-skill-learn.function.ts +0 -70
  227. package/src/shared/cli/functions/run-skill-list.function.ts +0 -74
  228. package/src/shared/cli/functions/run-status.function.ts +0 -29
  229. package/src/shared/cli/functions/run-unlearn.function.ts +0 -58
  230. package/src/shared/cli/functions/version-gate.function.ts +0 -44
  231. package/src/shared/cli/functions/wrap-command.function.ts +0 -34
  232. package/src/shared/cli/index.ts +0 -55
  233. package/src/shared/cli/typings/agent-create-client.interface.ts +0 -47
  234. package/src/shared/cli/typings/agent-get-client.interface.ts +0 -39
  235. package/src/shared/cli/typings/check-client.interface.ts +0 -66
  236. package/src/shared/cli/typings/cli-deps.interface.ts +0 -54
  237. package/src/shared/cli/typings/cli-options.interface.ts +0 -72
  238. package/src/shared/cli/typings/command-result.model.ts +0 -15
  239. package/src/shared/cli/typings/disconnectable-client.interface.ts +0 -29
  240. package/src/shared/cli/typings/dispatch-client.type.ts +0 -46
  241. package/src/shared/cli/typings/learn-client.interface.ts +0 -53
  242. package/src/shared/cli/typings/learn-io.interface.ts +0 -5
  243. package/src/shared/cli/typings/learn-result.model.ts +0 -27
  244. package/src/shared/cli/typings/search-client.interface.ts +0 -73
  245. package/src/shared/cli/typings/search-display.model.ts +0 -54
  246. package/src/shared/dir-resolver/functions/join-path.function.ts +0 -13
  247. package/src/shared/dir-resolver/functions/resolve-base-dir.function.ts +0 -25
  248. package/src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts +0 -5
  249. package/src/shared/dir-resolver/functions/resolve-worker-script.function.ts +0 -13
  250. package/src/shared/dir-resolver/index.ts +0 -11
  251. package/src/shared/dir-resolver/typings/base-dir.interface.ts +0 -4
  252. package/src/shared/embedding/classes/null-embedding-provider.class.ts +0 -29
  253. package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +0 -17
  254. package/src/shared/embedding/functions/build-vector-index.function.ts +0 -79
  255. package/src/shared/embedding/functions/cosine-similarity.function.ts +0 -31
  256. package/src/shared/embedding/functions/detect-near-duplicates.function.ts +0 -69
  257. package/src/shared/embedding/functions/jaccard-coefficient.function.ts +0 -26
  258. package/src/shared/embedding/functions/read-vector-index-meta.function.ts +0 -44
  259. package/src/shared/embedding/functions/rrf-fuse.function.ts +0 -33
  260. package/src/shared/embedding/functions/search-vectors.function.ts +0 -59
  261. package/src/shared/embedding/index.ts +0 -20
  262. package/src/shared/embedding/typings/embedding-config.interface.ts +0 -23
  263. package/src/shared/embedding/typings/embedding-provider.interface.ts +0 -25
  264. package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +0 -25
  265. package/src/shared/embedding/typings/near-duplicate-result.model.ts +0 -26
  266. package/src/shared/embedding/typings/vector-index-entry.model.ts +0 -13
  267. package/src/shared/embedding/typings/vector-index-meta.model.ts +0 -14
  268. package/src/shared/embedding/typings/vector-search-result.model.ts +0 -8
  269. package/src/shared/hash/functions/compute-sha256.ts +0 -17
  270. package/src/shared/hash/index.ts +0 -1
  271. package/src/shared/mcp/classes/mcp-server.class.ts +0 -480
  272. package/src/shared/mcp/constants/mcp-error-codes.constant.ts +0 -30
  273. package/src/shared/mcp/constants/tool-agent-create.constant.ts +0 -39
  274. package/src/shared/mcp/constants/tool-agent-delete.constant.ts +0 -26
  275. package/src/shared/mcp/constants/tool-agent-get.constant.ts +0 -24
  276. package/src/shared/mcp/constants/tool-agent-list.constant.ts +0 -18
  277. package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +0 -32
  278. package/src/shared/mcp/constants/tool-check.constant.ts +0 -21
  279. package/src/shared/mcp/constants/tool-content.constant.ts +0 -29
  280. package/src/shared/mcp/constants/tool-export.constant.ts +0 -27
  281. package/src/shared/mcp/constants/tool-gc.constant.ts +0 -21
  282. package/src/shared/mcp/constants/tool-learn.constant.ts +0 -58
  283. package/src/shared/mcp/constants/tool-rebuild.constant.ts +0 -21
  284. package/src/shared/mcp/constants/tool-recall.constant.ts +0 -36
  285. package/src/shared/mcp/constants/tool-retrieve.constant.ts +0 -31
  286. package/src/shared/mcp/constants/tool-search.constant.ts +0 -51
  287. package/src/shared/mcp/constants/tool-skill-delete.constant.ts +0 -24
  288. package/src/shared/mcp/constants/tool-skill-get.constant.ts +0 -27
  289. package/src/shared/mcp/constants/tool-skill-learn.constant.ts +0 -37
  290. package/src/shared/mcp/constants/tool-skill-list.constant.ts +0 -18
  291. package/src/shared/mcp/constants/tool-status.constant.ts +0 -20
  292. package/src/shared/mcp/constants/tool-unlearn.constant.ts +0 -25
  293. package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +0 -11
  294. package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +0 -17
  295. package/src/shared/mcp/functions/as-string-array.function.ts +0 -15
  296. package/src/shared/mcp/functions/as-string.function.ts +0 -10
  297. package/src/shared/mcp/functions/build-skills-text.function.ts +0 -43
  298. package/src/shared/mcp/functions/create-mcp-server.function.ts +0 -14
  299. package/src/shared/mcp/functions/create-prompt-definitions.function.ts +0 -102
  300. package/src/shared/mcp/functions/create-resource-templates.function.ts +0 -23
  301. package/src/shared/mcp/functions/create-tool-definitions.function.ts +0 -530
  302. package/src/shared/mcp/functions/extract-skill-arguments.function.ts +0 -27
  303. package/src/shared/mcp/functions/handle-agent-create.function.ts +0 -116
  304. package/src/shared/mcp/functions/handle-agent-delete.function.ts +0 -50
  305. package/src/shared/mcp/functions/handle-agent-get.function.ts +0 -160
  306. package/src/shared/mcp/functions/handle-agent-list.function.ts +0 -50
  307. package/src/shared/mcp/functions/handle-agent-prompt.function.ts +0 -68
  308. package/src/shared/mcp/functions/handle-completion.function.ts +0 -114
  309. package/src/shared/mcp/functions/handle-mcp-request.function.ts +0 -202
  310. package/src/shared/mcp/functions/handle-prompt-get.function.ts +0 -220
  311. package/src/shared/mcp/functions/handle-recall.function.ts +0 -66
  312. package/src/shared/mcp/functions/handle-resource-read.function.ts +0 -56
  313. package/src/shared/mcp/functions/handle-roots-list.function.ts +0 -29
  314. package/src/shared/mcp/functions/handle-skill-prompt.function.ts +0 -44
  315. package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +0 -24
  316. package/src/shared/mcp/functions/handle-tool-call.function.ts +0 -560
  317. package/src/shared/mcp/functions/handle-tool-check.function.ts +0 -21
  318. package/src/shared/mcp/functions/handle-tool-content.function.ts +0 -23
  319. package/src/shared/mcp/functions/handle-tool-export.function.ts +0 -25
  320. package/src/shared/mcp/functions/handle-tool-gc.function.ts +0 -21
  321. package/src/shared/mcp/functions/handle-tool-learn.function.ts +0 -69
  322. package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +0 -21
  323. package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +0 -40
  324. package/src/shared/mcp/functions/handle-tool-search.function.ts +0 -47
  325. package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +0 -34
  326. package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +0 -59
  327. package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +0 -61
  328. package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +0 -39
  329. package/src/shared/mcp/functions/handle-tool-status.function.ts +0 -21
  330. package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +0 -24
  331. package/src/shared/mcp/functions/parse-agent-meta.function.ts +0 -27
  332. package/src/shared/mcp/functions/parse-skill-arguments.function.ts +0 -36
  333. package/src/shared/mcp/functions/parse-skill-content.function.ts +0 -38
  334. package/src/shared/mcp/functions/read-agent-meta.function.ts +0 -41
  335. package/src/shared/mcp/functions/resolve-skill-refs.function.ts +0 -50
  336. package/src/shared/mcp/functions/run-startup-health-check.function.ts +0 -34
  337. package/src/shared/mcp/functions/serialize-skill-content.function.ts +0 -12
  338. package/src/shared/mcp/functions/should-emit-log.function.ts +0 -38
  339. package/src/shared/mcp/index.ts +0 -28
  340. package/src/shared/mcp/typings/agent-types.interface.ts +0 -39
  341. package/src/shared/mcp/typings/log-types.interface.ts +0 -26
  342. package/src/shared/mcp/typings/mcp-capabilities.interface.ts +0 -16
  343. package/src/shared/mcp/typings/mcp-client.interface.ts +0 -317
  344. package/src/shared/mcp/typings/mcp-completion.interface.ts +0 -45
  345. package/src/shared/mcp/typings/mcp-content-result.model.ts +0 -9
  346. package/src/shared/mcp/typings/mcp-export-result.model.ts +0 -11
  347. package/src/shared/mcp/typings/mcp-gc-result.model.ts +0 -15
  348. package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +0 -17
  349. package/src/shared/mcp/typings/mcp-integrity-error.model.ts +0 -15
  350. package/src/shared/mcp/typings/mcp-notification.interface.ts +0 -9
  351. package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +0 -9
  352. package/src/shared/mcp/typings/mcp-request.interface.ts +0 -11
  353. package/src/shared/mcp/typings/mcp-resource-result.interface.ts +0 -12
  354. package/src/shared/mcp/typings/mcp-resource-template.interface.ts +0 -11
  355. package/src/shared/mcp/typings/mcp-response.interface.ts +0 -18
  356. package/src/shared/mcp/typings/mcp-server-info.interface.ts +0 -7
  357. package/src/shared/mcp/typings/mcp-server-state.interface.ts +0 -17
  358. package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +0 -32
  359. package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +0 -16
  360. package/src/shared/mcp/typings/mcp-tool-result.interface.ts +0 -19
  361. package/src/shared/mcp/typings/mcp-types.interface.ts +0 -158
  362. package/src/shared/mcp/typings/mcp-worker-client.interface.ts +0 -243
  363. package/src/shared/mcp/typings/prompt-types.interface.ts +0 -39
  364. package/src/shared/mcp/typings/remove-section-result.model.ts +0 -10
  365. package/src/shared/mcp/typings/sampling-types.interface.ts +0 -48
  366. package/src/shared/mcp/typings/skill-types.interface.ts +0 -29
  367. package/src/shared/mcp/typings/tool-call-result.model.ts +0 -18
  368. package/src/shared/mod.ts +0 -1
  369. package/src/shared/platform/functions/get-ipc-path.function.ts +0 -19
  370. package/src/shared/platform/functions/get-tmpdir.function.ts +0 -8
  371. package/src/shared/platform/functions/is-process-alive.function.ts +0 -17
  372. package/src/shared/platform/index.ts +0 -3
  373. package/src/shared/runtime/functions/detect-runtime.ts +0 -14
  374. package/src/shared/runtime/functions/get-args.ts +0 -16
  375. package/src/shared/runtime/index.ts +0 -3
  376. package/src/shared/runtime/typings/runtime.ts +0 -2
  377. package/src/shared/sync/functions/build-import-report.function.ts +0 -40
  378. package/src/shared/sync/functions/parse-export-entry.function.ts +0 -45
  379. package/src/shared/sync/functions/resolve-conflict.function.ts +0 -31
  380. package/src/shared/sync/functions/serialize-export-entry.function.ts +0 -18
  381. package/src/shared/sync/index.ts +0 -9
  382. package/src/shared/sync/typings/conflict-resolution.type.ts +0 -8
  383. package/src/shared/sync/typings/export-entry.interface.ts +0 -13
  384. package/src/shared/sync/typings/export-options.interface.ts +0 -9
  385. package/src/shared/sync/typings/import-options.interface.ts +0 -7
  386. package/src/shared/sync/typings/import-report.interface.ts +0 -15
  387. package/src/shared/version/constants/version.constant.ts +0 -2
  388. package/src/shared/version/index.ts +0 -1
  389. package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +0 -112
  390. package/src/shared/wasm-codec/functions/decode-compose-output.function.ts +0 -16
  391. package/src/shared/wasm-codec/functions/decode-document-manifest-list.function.ts +0 -70
  392. package/src/shared/wasm-codec/functions/decode-document-manifest.function.ts +0 -87
  393. package/src/shared/wasm-codec/functions/decode-f32.function.ts +0 -16
  394. package/src/shared/wasm-codec/functions/decode-key-value-text.function.ts +0 -15
  395. package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +0 -86
  396. package/src/shared/wasm-codec/functions/decode-option-string.function.ts +0 -24
  397. package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +0 -59
  398. package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +0 -52
  399. package/src/shared/wasm-codec/functions/decode-recall-result.function.ts +0 -267
  400. package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +0 -43
  401. package/src/shared/wasm-codec/functions/decode-remove-flag.function.ts +0 -3
  402. package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +0 -194
  403. package/src/shared/wasm-codec/functions/decode-section-match.function.ts +0 -80
  404. package/src/shared/wasm-codec/functions/decode-section-record-list.function.ts +0 -20
  405. package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +0 -75
  406. package/src/shared/wasm-codec/functions/decode-section-record.function.ts +0 -85
  407. package/src/shared/wasm-codec/functions/decode-section-records.function.ts +0 -249
  408. package/src/shared/wasm-codec/functions/decode-section-type.function.ts +0 -30
  409. package/src/shared/wasm-codec/functions/decode-string.function.ts +0 -22
  410. package/src/shared/wasm-codec/functions/decode-u32.function.ts +0 -16
  411. package/src/shared/wasm-codec/functions/decode-u64.function.ts +0 -16
  412. package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +0 -31
  413. package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +0 -102
  414. package/src/shared/wasm-codec/functions/encode-group-params.function.ts +0 -28
  415. package/src/shared/wasm-codec/functions/encode-identifier-list.function.ts +0 -17
  416. package/src/shared/wasm-codec/functions/encode-kbid-list.function.ts +0 -17
  417. package/src/shared/wasm-codec/functions/encode-option-string.function.ts +0 -14
  418. package/src/shared/wasm-codec/functions/encode-recall-params.function.ts +0 -68
  419. package/src/shared/wasm-codec/functions/encode-search-params.function.ts +0 -12
  420. package/src/shared/wasm-codec/functions/encode-section-type.function.ts +0 -18
  421. package/src/shared/wasm-codec/functions/encode-string.function.ts +0 -9
  422. package/src/shared/wasm-codec/functions/encode-type-filter-param.function.ts +0 -13
  423. package/src/shared/wasm-codec/functions/encode-u32.function.ts +0 -5
  424. package/src/shared/wasm-codec/functions/encode-update-section-params.function.ts +0 -16
  425. package/src/shared/wasm-codec/index.ts +0 -49
  426. package/src/shared/wasm-codec/typings/add-section-input.model.ts +0 -45
  427. package/src/shared/wasm-codec/typings/add-section-result.model.ts +0 -28
  428. package/src/shared/wasm-codec/typings/document-manifest.model.ts +0 -20
  429. package/src/shared/wasm-codec/typings/document-section.model.ts +0 -12
  430. package/src/shared/wasm-codec/typings/item-decoder.type.ts +0 -10
  431. package/src/shared/wasm-codec/typings/near-duplicate.model.ts +0 -16
  432. package/src/shared/wasm-codec/typings/paged-search-result.model.ts +0 -22
  433. package/src/shared/wasm-codec/typings/section-match.model.ts +0 -31
  434. package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +0 -38
  435. package/src/shared/wasm-codec/typings/section-record.model.ts +0 -66
  436. package/src/shared/wasm-codec/typings/section-type-result.model.ts +0 -12
  437. package/src/shared/worker-client/classes/worker-client.class.ts +0 -466
  438. package/src/shared/worker-client/functions/compute-context-id.function.ts +0 -18
  439. package/src/shared/worker-client/functions/create-worker-client.function.ts +0 -70
  440. package/src/shared/worker-client/functions/discover-daemon.function.ts +0 -47
  441. package/src/shared/worker-client/functions/handle-ipc-data.function.ts +0 -49
  442. package/src/shared/worker-client/functions/resolve-db-path.function.ts +0 -21
  443. package/src/shared/worker-client/functions/send-ipc-request.function.ts +0 -39
  444. package/src/shared/worker-client/functions/spawn-daemon.function.ts +0 -35
  445. package/src/shared/worker-client/functions/wait-for-daemon.function.ts +0 -34
  446. package/src/shared/worker-client/index.ts +0 -44
  447. package/src/shared/worker-client/typings/add-section-result.model.ts +0 -39
  448. package/src/shared/worker-client/typings/content-result.model.ts +0 -12
  449. package/src/shared/worker-client/typings/daemon-info.model.ts +0 -7
  450. package/src/shared/worker-client/typings/export-result.model.ts +0 -14
  451. package/src/shared/worker-client/typings/gc-result.model.ts +0 -18
  452. package/src/shared/worker-client/typings/integrity-check-result.model.ts +0 -43
  453. package/src/shared/worker-client/typings/json-rpc-response.interface.ts +0 -17
  454. package/src/shared/worker-client/typings/migrate-result.model.ts +0 -11
  455. package/src/shared/worker-client/typings/pending-call.interface.ts +0 -7
  456. package/src/shared/worker-client/typings/rebuild-result.model.ts +0 -12
  457. package/src/shared/worker-client/typings/recall-document.model.ts +0 -16
  458. package/src/shared/worker-client/typings/recall-params.model.ts +0 -15
  459. package/src/shared/worker-client/typings/recall-reference.model.ts +0 -32
  460. package/src/shared/worker-client/typings/recall-result.model.ts +0 -98
  461. package/src/shared/worker-client/typings/recall-sibling.model.ts +0 -11
  462. package/src/shared/worker-client/typings/recall-single-result.model.ts +0 -41
  463. package/src/shared/worker-client/typings/remove-section-result.model.ts +0 -7
  464. package/src/shared/worker-client/typings/search-params.model.ts +0 -14
  465. package/src/shared/worker-client/typings/search-result.model.ts +0 -43
  466. package/src/shared/worker-client/typings/section.model.ts +0 -43
  467. package/src/shared/worker-client/typings/status-result.model.ts +0 -14
  468. package/src/shared/worker-client/typings/version-status.model.ts +0 -28
  469. package/src/shared/worker-client/typings/worker-client-error.interface.ts +0 -8
  470. package/src/shared/worker-client/typings/worker-client-options.interface.ts +0 -30
  471. package/src/shared/worker-daemon/classes/ipc-error.class.ts +0 -22
  472. package/src/shared/worker-daemon/classes/worker-daemon.class.ts +0 -1291
  473. package/src/shared/worker-daemon/constants/daemon-defaults.constant.ts +0 -29
  474. package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +0 -69
  475. package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +0 -16
  476. package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +0 -54
  477. package/src/shared/worker-daemon/functions/check-preconditions.function.ts +0 -28
  478. package/src/shared/worker-daemon/functions/create-host-imports.function.ts +0 -328
  479. package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +0 -87
  480. package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +0 -33
  481. package/src/shared/worker-daemon/functions/dispatch-request.function.ts +0 -190
  482. package/src/shared/worker-daemon/functions/handle-check-version.function.ts +0 -74
  483. package/src/shared/worker-daemon/functions/handle-config-method.function.ts +0 -27
  484. package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +0 -236
  485. package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +0 -257
  486. package/src/shared/worker-daemon/functions/load-wasm-modules.function.ts +0 -95
  487. package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +0 -51
  488. package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +0 -20
  489. package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +0 -38
  490. package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +0 -104
  491. package/src/shared/worker-daemon/functions/read-config.function.ts +0 -83
  492. package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +0 -55
  493. package/src/shared/worker-daemon/functions/run-worker.function.ts +0 -57
  494. package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +0 -92
  495. package/src/shared/worker-daemon/functions/start-daemon.function.ts +0 -74
  496. package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +0 -144
  497. package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +0 -41
  498. package/src/shared/worker-daemon/functions/write-lock.function.ts +0 -49
  499. package/src/shared/worker-daemon/index.ts +0 -16
  500. package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +0 -16
  501. package/src/shared/worker-daemon/typings/daemon-config.interface.ts +0 -20
  502. package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +0 -22
  503. package/src/shared/worker-daemon/typings/handler-context.interface.ts +0 -19
  504. package/src/shared/worker-daemon/typings/ipc-handler.interface.ts +0 -39
  505. package/src/shared/worker-daemon/typings/memory-ref.interface.ts +0 -13
  506. package/src/shared/worker-daemon/typings/wasm-fn.type.ts +0 -2
  507. package/src/shared/worker-daemon/typings/wasm-modules.interface.ts +0 -7
  508. package/src/shared/worker-daemon/typings/write-lock.interface.ts +0 -13
  509. package/src/wasm/fs-database/kbdb_fs_database.d.ts +0 -259
  510. package/src/wasm/fs-database/kbdb_fs_database.js +0 -515
  511. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  512. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +0 -35
  513. package/src/wasm/fs-database/package.json +0 -13
  514. package/src/wasm/kb-worker/kbdb_worker.d.ts +0 -650
  515. package/src/wasm/kb-worker/kbdb_worker.js +0 -1181
  516. package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  517. package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +0 -77
  518. package/src/wasm/kb-worker/package.json +0 -13
  519. package/src/wasm/query-parser/kbdb_query_parser.d.ts +0 -195
  520. package/src/wasm/query-parser/kbdb_query_parser.js +0 -403
  521. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm.d.ts +0 -25
  522. package/src/wasm/query-parser/package.json +0 -13
  523. package/src/worker.ts +0 -42
@@ -8,7 +8,7 @@ agents over stdio using JSON-RPC 2.0.
8
8
 
9
9
  Configure kbdb as an MCP server for your AI agent
10
10
  platform. The server requires a database path via
11
- `--db` or the `KBDB_DIR` environment variable.
11
+ `--db` or the `KBDB_DB_DIR` environment variable.
12
12
 
13
13
  ### Claude Code (CLI)
14
14
 
@@ -131,9 +131,9 @@ deno run -A jsr:@dikolab/kbdb/cli mcp \
131
131
  --db /path/to/.kbdb
132
132
  ```
133
133
 
134
- ### Using `KBDB_DIR` Environment Variable
134
+ ### Using `KBDB_DB_DIR` Environment Variable
135
135
 
136
- The `--db` flag can be replaced by the `KBDB_DIR`
136
+ The `--db` flag can be replaced by the `KBDB_DB_DIR`
137
137
  environment variable in any configuration:
138
138
 
139
139
  ```json
@@ -143,20 +143,66 @@ environment variable in any configuration:
143
143
  "command": "npx",
144
144
  "args": ["-y", "@dikolab/kbdb", "mcp"],
145
145
  "env": {
146
- "KBDB_DIR": "/path/to/.kbdb"
146
+ "KBDB_DB_DIR": "/path/to/.kbdb"
147
147
  }
148
148
  }
149
149
  }
150
150
  }
151
151
  ```
152
152
 
153
- Resolution order: `--db` flag, then `KBDB_DIR`
153
+ Resolution order: `--db` flag, then `KBDB_DB_DIR`
154
154
  env var. If neither is set, the server exits with
155
155
  an error. The server does not fall back to the
156
156
  current working directory because the server's cwd
157
157
  is determined by the host application, not the
158
158
  user.
159
159
 
160
+ ### `KBDB_DAEMON_TIMEOUT`
161
+
162
+ Per-request daemon timeout in milliseconds.
163
+ Defaults to `30000` (30 seconds). Overridden by
164
+ the `--timeout-ms` flag.
165
+
166
+ ### `KBDB_RETRY`
167
+
168
+ Maximum number of retries with daemon respawn when
169
+ a request times out. Defaults to `1`. Overridden
170
+ by the `--retry` flag.
171
+
172
+ ### `KBDB_LOG_LEVEL`
173
+
174
+ Log verbosity: `debug`, `info`, `warning`, `error`
175
+ (case-insensitive). Defaults to `error`. Overridden
176
+ by `-v`/`-vv`/`-vvv` flags. The level is forwarded
177
+ to the worker daemon via `--log-level`.
178
+
179
+ ### `KBDB_NON_INTERACTIVE`
180
+
181
+ Suppress interactive prompts. Accepts `1` or
182
+ `true`. The MCP server does not prompt interactively
183
+ (it reads JSON-RPC from stdin), but the variable is
184
+ inherited by the worker daemon for consistency.
185
+
186
+ These variables can be set in the `env` block of
187
+ your MCP configuration:
188
+
189
+ ```json
190
+ {
191
+ "mcpServers": {
192
+ "kbdb": {
193
+ "command": "npx",
194
+ "args": ["-y", "@dikolab/kbdb", "mcp"],
195
+ "env": {
196
+ "KBDB_DB_DIR": "/path/to/.kbdb",
197
+ "KBDB_DAEMON_TIMEOUT": "60000",
198
+ "KBDB_RETRY": "2",
199
+ "KBDB_LOG_LEVEL": "warning"
200
+ }
201
+ }
202
+ }
203
+ }
204
+ ```
205
+
160
206
  ### Multiple Knowledge Bases
161
207
 
162
208
  Register multiple server instances pointing to
@@ -213,7 +259,7 @@ daemon via JSON-RPC 2.0 over IPC.
213
259
 
214
260
  | Tool | Parameters | Description | Read-only | Destructive |
215
261
  |------|-----------|-------------|-----------|-------------|
216
- | `skill-learn` | `name` (string, required), `description` (string, required), `body` (string, required), `arguments` (array) | Create a new skill definition. Body supports `{{argName}}` template placeholders. | no | no |
262
+ | `skill-learn` | `name` (string, required), `description` (string), `body` (string, required) | Create or update a skill definition. Body supports `{{argName}}` template placeholders. | no | no |
217
263
  | `skill-list` | (none) | List all skill definitions. Returns array of summaries with kbid, name, description, argumentCount. | yes | no |
218
264
  | `skill-get` | `name` (string), `kbid` (string) | Retrieve a single skill by name or kb-id. At least one required; `kbid` takes precedence. | yes | no |
219
265
  | `skill-delete` | `kbid` (string, required) | Remove a skill by kb-id. Agent documents referencing this skill will have dangling references. | no | yes |
@@ -222,7 +268,7 @@ daemon via JSON-RPC 2.0 over IPC.
222
268
 
223
269
  | Tool | Parameters | Description | Read-only | Destructive |
224
270
  |------|-----------|-------------|-----------|-------------|
225
- | `agent-create` | `name` (string, required), `description` (string, required), `persona` (string, required), `skills` (string[], required) | Create an agent document with a persona and ordered skill references. | no | no |
271
+ | `agent-create` | `name` (string, required), `description` (string), `persona` (string, required), `skills` (string[]) | Create an agent with a persona and optional skill references. | no | no |
226
272
  | `agent-list` | (none) | List all agent documents. Returns array of summaries with docid, name, description, skillCount. | yes | no |
227
273
  | `agent-get` | `docid` (string, required) | Retrieve an agent with resolved skill definitions. Deleted skills appear with `name: null`. | yes | no |
228
274
  | `agent-delete` | `docid` (string, required) | Remove an agent document. Referenced skill sections are preserved. | no | yes |
@@ -2,11 +2,13 @@
2
2
 
3
3
  When you search, kbdb finds the sections that best
4
4
  match your query and ranks them by relevance. By
5
- default it matches keywords (like a search engine).
6
- You can also enable AI-powered similarity search
7
- or combine both with `--algo hybrid`. The rest of
8
- this page explains how ranking works under the hood
9
- -- you don't need to read it to use kbdb.
5
+ default it uses keyword search -- matching terms with
6
+ stemming, synonym expansion, and BM25F ranking. Use
7
+ `--algo hybrid` to combine keyword matching with
8
+ AI-powered similarity for broader recall. The rest
9
+ of this page explains how ranking
10
+ works under the hood -- you don't need to read it
11
+ to use kbdb.
10
12
 
11
13
  ---
12
14
 
@@ -529,12 +531,11 @@ Neither standalone module calls the other directly.
529
531
  kbdb supports three search algorithms, selected
530
532
  with `--algo` (CLI) or the `algo` parameter (MCP).
531
533
 
532
- ### Lexical (default)
534
+ ### Lexical
533
535
 
534
536
  Keyword matching with stemming and synonym
535
537
  expansion, scored by BM25F as described above.
536
538
  Fast, works offline, and gives consistent results.
537
- This is the default when no `--algo` flag is given.
538
539
 
539
540
  ### Vector
540
541
 
@@ -551,7 +552,7 @@ because of JSONB" even though none of the words
551
552
  overlap.
552
553
 
553
554
  Requires an embedding provider to be configured.
554
- Without one, vector mode falls back to lexical.
555
+ Without one, vector mode returns an error.
555
556
 
556
557
  ### Hybrid
557
558
 
@@ -559,12 +560,16 @@ Runs both lexical and vector searches in parallel,
559
560
  then merges the two ranked lists using Reciprocal
560
561
  Rank Fusion (RRF). This combines the precision of
561
562
  keyword matching with the associative recall of
562
- embeddings.
563
+ embeddings. Use `--algo hybrid` to enable.
563
564
 
564
565
  RRF works by converting each result's rank position
565
566
  into a score (`1 / (k + rank)` with k=60), then
566
567
  summing scores across both lists. Results that rank
567
568
  well in both lists get the highest combined scores.
568
569
 
569
- Hybrid mode requires an embedding provider. Without
570
- one, it falls back to lexical.
570
+ Hybrid mode uses a built-in TF-IDF embedding provider
571
+ by default. Configure `provider = "onnx"` or
572
+ `provider = "api"` in `worker.toml` for higher
573
+ quality embeddings. Setting `provider = "none"`
574
+ explicitly disables embeddings and returns an error
575
+ for hybrid and vector searches.
package/docs/goals/cli.md CHANGED
@@ -49,7 +49,10 @@ All commands and their canonical forms:
49
49
 
50
50
  ```
51
51
  kbdb --help | -h
52
- kbdb --version | -v
52
+ kbdb --version
53
+ kbdb -v <command> (verbose: warnings)
54
+ kbdb -vv <command> (verbose: info)
55
+ kbdb -vvv <command> (verbose: debug)
53
56
  kbdb learn [options] <path | ->...
54
57
  kbdb unlearn [options] <kbid>...
55
58
  kbdb search [options] <query>...
@@ -61,6 +64,8 @@ kbdb gc [options]
61
64
  kbdb rebuild [options]
62
65
  kbdb status [options]
63
66
  kbdb export [options] [<path>]
67
+ kbdb worker stop [options]
68
+ kbdb worker restart [options]
64
69
  kbdb db init [options]
65
70
  kbdb db migrate [options]
66
71
  kbdb skill learn [options] --name <n> --body <file|->
@@ -104,10 +109,9 @@ with the AI agent host over stdio using JSON-RPC 2.0,
104
109
  and delegates all operations to the worker daemon via
105
110
  the same worker client module.
106
111
 
107
- MCP mode requires `--db <path>` or the `KBDB_DIR`
108
- environment variable. It does not fall back to the
109
- current working directory because the server's cwd is
110
- determined by the host application, not the user.
112
+ MCP mode accepts `--db <path>` or the `KBDB_DB_DIR`
113
+ environment variable. When neither is set, it falls
114
+ back to the current working directory.
111
115
 
112
116
  See [MCP](mcp.md) for the full MCP mode
113
117
  specification.
@@ -116,11 +120,18 @@ specification.
116
120
 
117
121
  These options apply to all commands.
118
122
 
119
- | Option | Short | Description |
120
- |---------------|-------|--------------------------|
121
- | `--help` | `-h` | Print help text and exit |
122
- | `--version` | `-v` | Print version and exit |
123
- | `--db <path>` | | Database directory path |
123
+ | Option | Short | Description |
124
+ |--------------------|-------|--------------------------|
125
+ | `--help` | `-h` | Print help text and exit |
126
+ | `--version` | | Print version and exit |
127
+ | `--verbose` | `-v` | Set log level to WARNING (errors + warnings) |
128
+ | `--verbose-info` | `-vv` | Set log level to INFO |
129
+ | `--verbose-debug` | `-vvv`| Set log level to DEBUG (all messages) |
130
+ | `--db <path>` | | Database directory path (optional) |
131
+ | `--format <fmt>` | `-f` | Output format (json default; text when stdout is a TTY) |
132
+ | `--timeout-ms <ms>`| | Request timeout in ms |
133
+ | `--retry <n>` | | Max retries on timeout |
134
+ | `--non-interactive` | | Suppress prompts; use defaults |
124
135
 
125
136
  ### `--help`, `-h`
126
137
 
@@ -135,16 +146,31 @@ kbdb -h
135
146
  When no command is given (`kbdb` with no arguments),
136
147
  the help text is printed as the default behaviour.
137
148
 
138
- ### `--version`, `-v`
149
+ ### `--version`
139
150
 
140
151
  Print the package version string and exit. No database
141
152
  connection is made.
142
153
 
143
154
  ```
144
155
  kbdb --version
145
- kbdb -v
146
156
  ```
147
157
 
158
+ ### `--verbose`, `-v` / `-vv` / `-vvv`
159
+
160
+ Increase log verbosity on stderr. Each additional `v`
161
+ raises the level by one step.
162
+
163
+ ```
164
+ kbdb -v <command> # WARNING: errors + warnings
165
+ kbdb -vv <command> # INFO: errors, warnings, info
166
+ kbdb -vvv <command> # DEBUG: all messages
167
+ ```
168
+
169
+ The default level is ERROR. The `KBDB_LOG_LEVEL`
170
+ environment variable sets the base level; CLI flags
171
+ override it. Log lines are prefixed with per-level
172
+ icons (✖⚠ℹ▸) and ANSI colors.
173
+
148
174
  ### `--db <path>`
149
175
 
150
176
  Set the path to the directory that contains (or will
@@ -156,12 +182,13 @@ kbdb search "query" --db /path/to/project
156
182
  ```
157
183
 
158
184
  When omitted:
159
- - **CLI mode**: defaults to the current working
160
- directory (`process.cwd()`).
161
- - **MCP mode**: falls back to the `KBDB_DIR`
162
- environment variable. If neither `--db` nor
163
- `KBDB_DIR` is set, the MCP server prints an error
164
- and exits non-zero.
185
+ - **CLI mode**: falls back to the `KBDB_DB_DIR`
186
+ environment variable when `--db` is omitted,
187
+ then to the current working directory
188
+ (`process.cwd()`).
189
+ - **MCP mode**: falls back to the `KBDB_DB_DIR`
190
+ environment variable, then to the current
191
+ working directory.
165
192
 
166
193
  ## Commands
167
194
 
@@ -300,7 +327,10 @@ Remove knowledge base sections by their kb-id.
300
327
 
301
328
  **Arguments:**
302
329
  - `<kbid>...` -- one or more 26-character kb-id
303
- strings. Each is processed independently.
330
+ strings (or unique prefixes -- kbdb resolves
331
+ short prefixes to full identifiers, similar to
332
+ git short hashes). Each is processed
333
+ independently.
304
334
 
305
335
  **Behaviour:**
306
336
  - The engine removes the referenced content and
@@ -360,6 +390,7 @@ Search the knowledge base by keywords or phrases.
360
390
  | `--offset <n>` | `-o` | `0` | Result offset |
361
391
  | `--format <fmt>` | `-f` | `json` | Output format |
362
392
  | `--content` | `-c` | | Hydrate previews |
393
+ | `--algo <algo>` | | `lexical` | Search algorithm |
363
394
  | `--db <path>` | | cwd | Database directory |
364
395
 
365
396
  #### `--mode`, `-m`
@@ -406,8 +437,8 @@ Controls the output format printed to stdout.
406
437
 
407
438
  | Format | Description |
408
439
  |--------|-----------------------------------------|
409
- | `json` | Pretty-printed JSON array (default). |
410
- | `text` | Numbered human-readable list with scores and matched terms. |
440
+ | `json` | Pretty-printed JSON array (default when stdout is piped). |
441
+ | `text` | Numbered human-readable list with scores and matched terms (default when stdout is a TTY). |
411
442
  | `mcp` | JSON envelope for MCP protocol consumers. |
412
443
 
413
444
  ```
@@ -553,7 +584,10 @@ more knowledge base identifiers and output it to
553
584
  stdout.
554
585
 
555
586
  **Arguments:**
556
- - `<id>...` -- one or more kbid or docid identifiers.
587
+ - `<id>...` -- one or more kbid or docid identifiers
588
+ (or unique prefixes -- kbdb resolves short
589
+ prefixes to full identifiers, similar to git
590
+ short hashes).
557
591
 
558
592
  **Output:**
559
593
  - **stdout**: JSON envelope containing the composed
@@ -600,7 +634,9 @@ expansion depths.
600
634
 
601
635
  **Arguments:**
602
636
  - `<kbid>...` -- one or more 26-character kb-id
603
- strings.
637
+ strings (or unique prefixes -- kbdb resolves
638
+ short prefixes to full identifiers, similar to
639
+ git short hashes).
604
640
 
605
641
  **Options:**
606
642
 
@@ -722,9 +758,9 @@ Start a long-lived MCP server on stdio.
722
758
  **Behaviour:**
723
759
  - Communicates with the AI agent host over stdio
724
760
  using JSON-RPC 2.0.
725
- - Requires `--db <path>` or the `KBDB_DIR` environment
726
- variable. Does NOT fall back to the current working
727
- directory.
761
+ - Accepts `--db <path>` or the `KBDB_DB_DIR`
762
+ environment variable. Falls back to the current
763
+ working directory when neither is set.
728
764
  - Runs a version gate before starting: exits with an
729
765
  error if the database needs migration or is too new.
730
766
  - The MCP server does not prompt, does not print
@@ -734,8 +770,8 @@ Start a long-lived MCP server on stdio.
734
770
  a shutdown signal.
735
771
 
736
772
  **Environment variables:**
737
- - `KBDB_DIR` -- fallback database directory path when
738
- `--db` is not specified.
773
+ - `KBDB_DB_DIR` -- fallback database directory path
774
+ when `--db` is not specified.
739
775
 
740
776
  **Exit code:** `0` on clean shutdown, `1` on error.
741
777
 
@@ -943,6 +979,43 @@ src/cli.ts parseArgs()
943
979
  -> stdout
944
980
  ```
945
981
 
982
+ ### `kbdb worker` -- daemon lifecycle
983
+
984
+ The `worker` command group manages the background
985
+ worker daemon process.
986
+
987
+ #### `worker stop` -- stop the daemon
988
+
989
+ ```
990
+ kbdb worker stop [options]
991
+ ```
992
+
993
+ Stop the running worker daemon for the current
994
+ database. If no daemon is running, prints a message
995
+ and exits successfully.
996
+
997
+ **Exit code:** `0` on success, `1` on error.
998
+
999
+ **Delegation chain:**
1000
+ ```
1001
+ src/cli.ts parseArgs()
1002
+ -> dispatchCommand(client, options)
1003
+ -> runWorkerStop(client, options)
1004
+ -> sends shutdown signal via IPC
1005
+ ```
1006
+
1007
+ #### `worker restart` -- restart the daemon
1008
+
1009
+ ```
1010
+ kbdb worker restart [options]
1011
+ ```
1012
+
1013
+ Stop and restart the worker daemon. Equivalent to
1014
+ `worker stop` followed by the next command
1015
+ auto-spawning a new daemon.
1016
+
1017
+ **Exit code:** `0` on success, `1` on error.
1018
+
946
1019
  ### `kbdb db` -- database management
947
1020
 
948
1021
  The `db` command group manages the `.kbdb` database
@@ -1658,6 +1731,13 @@ storage directory via `findDb()`.
1658
1731
  - If stdin is not a TTY (piped / CI): print error to
1659
1732
  stderr, exit 1. No prompt.
1660
1733
 
1734
+ 2b. **Non-interactive override** -- when
1735
+ `--non-interactive` is passed or
1736
+ `KBDB_NON_INTERACTIVE` is set to `1` or `true`,
1737
+ the CLI overrides `isStdinTty()` to return
1738
+ `false`. This forces the non-interactive path
1739
+ (error + exit 1) regardless of terminal type.
1740
+
1661
1741
  3. **Version check gate** -- when `.kbdb` exists, the
1662
1742
  CLI calls `client.checkVersion(dbDir)` before
1663
1743
  dispatching any data command:
@@ -1721,18 +1801,21 @@ processes the raw argument vector
1721
1801
  deprecation warning to stderr, and continues
1722
1802
  parsing.
1723
1803
  4. When the first positional token is `db`, `skill`,
1724
- or `agent`, the parser consumes the next positional
1804
+ `agent`, or `worker`, the parser consumes the next positional
1725
1805
  token as the subcommand and combines them into a
1726
1806
  hyphenated command string: `db init` →
1727
1807
  `'db-init'`, `skill learn` → `'skill-learn'`,
1728
- `agent create` → `'agent-create'`, etc.
1808
+ `agent create` → `'agent-create'`,
1809
+ `worker stop` → `'worker-stop'`, etc.
1729
1810
  5. All other flags (`--db`, `--format`, `--mode`,
1730
1811
  `--limit`, `--offset`, `--title`, `--description`,
1731
1812
  `--docid`, `--name`, `--persona`, `--body`,
1732
- `--skills`, `--depth` / `-d`, `--tags`) consume
1733
- the next token as their value. `--depth` is parsed
1734
- as a number and clamped to the range 0--3. `--tags`
1735
- splits its value on commas into a `string[]`.
1813
+ `--skills`, `--depth` / `-d`, `--tags`,
1814
+ `--timeout-ms`, `--retry`) consume the next token
1815
+ as their value. `--depth` is parsed as a number
1816
+ and clamped to the range 0--3. `--tags` splits its
1817
+ value on commas into a `string[]`. `--timeout-ms`
1818
+ and `--retry` are parsed as numbers.
1736
1819
  6. `--content` / `-c` and `--replace` are boolean
1737
1820
  flags; they set their respective option to `true`
1738
1821
  without consuming the next token.
@@ -1802,6 +1885,10 @@ interface CliOptions {
1802
1885
  tags?: string[];
1803
1886
  /** Enable supersession by source key (learn). */
1804
1887
  replace?: boolean;
1888
+ /** Request timeout in ms. */
1889
+ timeoutMs?: number;
1890
+ /** Max retry count on timeout. */
1891
+ retry?: number;
1805
1892
  /** Positional arguments following the sub-command. */
1806
1893
  args: string[];
1807
1894
  }
@@ -1883,6 +1970,10 @@ Agents:
1883
1970
  agent get Retrieve an agent by docid
1884
1971
  agent delete Remove an agent
1885
1972
 
1973
+ Worker:
1974
+ worker stop Stop the background daemon
1975
+ worker restart Restart the background daemon
1976
+
1886
1977
  Server:
1887
1978
  mcp Start MCP server mode (stdio)
1888
1979
 
@@ -2114,6 +2205,8 @@ Routing table:
2114
2205
  | `agent-create` | `runAgentCreate` | yes |
2115
2206
  | `agent-list` | `runAgentList` | yes |
2116
2207
  | `agent-get` | `runAgentGet` | yes |
2208
+ | `worker-stop` | `runWorkerStop` | yes |
2209
+ | `worker-restart` | `runWorkerRestart` | yes |
2117
2210
  | `agent-delete` | `runAgentDelete` | yes |
2118
2211
 
2119
2212
  Unknown commands return exit code 1 with an "unknown
@@ -2504,9 +2597,21 @@ kbdb search "machine learning" --limit 5
2504
2597
 
2505
2598
  ## Environment Variables
2506
2599
 
2507
- | Variable | Used by | Description |
2508
- |------------|----------|----------------------------|
2509
- | `KBDB_DIR` | MCP mode | Fallback database directory when `--db` is not specified. Not used in CLI mode. |
2600
+ | Variable | Used by | Description |
2601
+ |-----------------------|-----------|-------------------------|
2602
+ | `KBDB_DB_DIR` | CLI + MCP | Fallback database directory when `--db` is not specified |
2603
+ | `KBDB_DAEMON_TIMEOUT` | CLI + MCP | Request timeout fallback (ms) |
2604
+ | `KBDB_RETRY` | CLI + MCP | Retry count fallback |
2605
+
2606
+ ### Resolution Priority
2607
+
2608
+ When multiple sources set the same option, the
2609
+ most specific source wins:
2610
+
2611
+ - **timeout**: `--timeout-ms` >
2612
+ `KBDB_DAEMON_TIMEOUT` > `30000`
2613
+ - **retry**: `--retry` > `KBDB_RETRY` > `5`
2614
+ - **db path**: `--db` > `KBDB_DB_DIR` > cwd
2510
2615
 
2511
2616
  ## Exit Codes
2512
2617
 
@@ -138,7 +138,7 @@ preserved; the caller should normalise whitespace
138
138
  if needed.
139
139
 
140
140
  This function replaces the current implementation
141
- in `query-parser/src/pipeline/markers.rs`. The
141
+ in `shared/src/pipeline/markers.rs`. The
142
142
  existing `strip_content_markers()` recognizes only
143
143
  `$(image:)` and `$(code:)`. The shared version
144
144
  recognizes all six marker types.