@dikolab/kbdb 0.3.2 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (466) hide show
  1. package/README.md +83 -89
  2. package/dist/chunk-BJPSPNGX.mjs +223 -0
  3. package/dist/chunk-BJPSPNGX.mjs.map +7 -0
  4. package/dist/cli.cjs +956 -319
  5. package/dist/cli.cjs.map +4 -4
  6. package/dist/cli.d.ts +9 -0
  7. package/dist/cli.mjs +840 -321
  8. package/dist/cli.mjs.map +4 -4
  9. package/dist/kbdb-worker.cjs +714 -94
  10. package/dist/kbdb-worker.cjs.map +4 -4
  11. package/dist/mod.cjs +122 -16
  12. package/dist/mod.cjs.map +3 -3
  13. package/dist/mod.d.ts +23 -2
  14. package/dist/mod.mjs +121 -16
  15. package/dist/mod.mjs.map +3 -3
  16. package/dist/src/shared/cli/functions/dispatch-command.function.d.ts +2 -1
  17. package/dist/src/shared/cli/functions/find-db.function.d.ts +7 -8
  18. package/dist/src/shared/cli/functions/handle-mcp.function.d.ts +1 -1
  19. package/dist/src/shared/cli/functions/parse-args.function.d.ts +4 -3
  20. package/dist/src/shared/cli/functions/resolve-kbid-prefix.function.d.ts +27 -0
  21. package/dist/src/shared/cli/functions/resolve-raw-db-path.function.d.ts +10 -0
  22. package/dist/src/shared/cli/functions/run-cli.function.d.ts +3 -1
  23. package/dist/src/shared/cli/functions/run-content.function.d.ts +8 -3
  24. package/dist/src/shared/cli/functions/run-import.function.d.ts +27 -0
  25. package/dist/src/shared/cli/functions/run-recall.function.d.ts +10 -4
  26. package/dist/src/shared/cli/functions/run-search.function.d.ts +7 -0
  27. package/dist/src/shared/cli/functions/run-unlearn.function.d.ts +9 -4
  28. package/dist/src/shared/cli/functions/run-worker-restart.function.d.ts +11 -0
  29. package/dist/src/shared/cli/functions/run-worker-stop.function.d.ts +11 -0
  30. package/dist/src/shared/cli/index.d.ts +2 -0
  31. package/dist/src/shared/cli/typings/cli-deps.interface.d.ts +4 -1
  32. package/dist/src/shared/cli/typings/cli-options.interface.d.ts +17 -0
  33. package/dist/src/shared/cli/typings/dispatch-client.type.d.ts +2 -1
  34. package/dist/src/shared/cli/typings/search-display.model.d.ts +6 -0
  35. package/dist/src/shared/embedding/classes/api-embedding-provider.class.d.ts +33 -0
  36. package/dist/src/shared/embedding/classes/onnx-embedding-provider.class.d.ts +33 -0
  37. package/dist/src/shared/embedding/functions/append-vector-entry.function.d.ts +14 -0
  38. package/dist/src/shared/embedding/functions/create-embedding-provider.function.d.ts +12 -0
  39. package/dist/src/shared/embedding/functions/detect-stale-vectors.function.d.ts +16 -0
  40. package/dist/src/shared/embedding/functions/parse-api-embedding-response.function.d.ts +11 -0
  41. package/dist/src/shared/embedding/functions/rebuild-vectors.function.d.ts +15 -0
  42. package/dist/src/shared/embedding/functions/scan-semantic-contradictions.function.d.ts +13 -0
  43. package/dist/src/shared/embedding/index.d.ts +7 -0
  44. package/dist/src/shared/embedding/typings/semantic-contradiction.model.d.ts +21 -0
  45. package/dist/src/shared/embedding/typings/stale-vectors-report.model.d.ts +16 -0
  46. package/dist/src/shared/mcp/classes/mcp-server.class.d.ts +22 -2
  47. package/dist/src/shared/mcp/functions/create-mcp-server.function.d.ts +6 -1
  48. package/dist/src/shared/mcp/functions/has-sampling-capability.function.d.ts +8 -0
  49. package/dist/src/shared/mcp/functions/run-auto-capture.function.d.ts +26 -0
  50. package/dist/src/shared/mcp/typings/mcp-client.interface.d.ts +2 -0
  51. package/dist/src/shared/mcp/typings/mcp-integrity-check-result.model.d.ts +24 -0
  52. package/dist/src/shared/mcp/typings/mcp-worker-client.interface.d.ts +3 -1
  53. package/dist/src/shared/version/constants/version.constant.d.ts +1 -1
  54. package/dist/src/shared/wasm-codec/typings/paged-search-result.model.d.ts +2 -0
  55. package/dist/src/shared/worker-client/classes/worker-client.class.d.ts +31 -1
  56. package/dist/src/shared/worker-client/constants/request-timeout.constant.d.ts +2 -0
  57. package/dist/src/shared/worker-client/constants/retry-defaults.constant.d.ts +2 -0
  58. package/dist/src/shared/worker-client/functions/get-or-create-client.function.d.ts +20 -0
  59. package/dist/src/shared/worker-client/functions/retry-on-timeout.function.d.ts +17 -0
  60. package/dist/src/shared/worker-client/index.d.ts +4 -1
  61. package/dist/src/shared/worker-client/typings/import-result.model.d.ts +16 -0
  62. package/dist/src/shared/worker-client/typings/integrity-check-result.model.d.ts +24 -0
  63. package/dist/src/shared/worker-client/typings/search-params.model.d.ts +4 -0
  64. package/dist/src/shared/worker-client/typings/search-result.model.d.ts +6 -0
  65. package/dist/src/shared/worker-client/typings/worker-client-options.interface.d.ts +7 -0
  66. package/dist/src/shared/worker-daemon/classes/worker-daemon.class.d.ts +5 -0
  67. package/dist/src/shared/worker-daemon/functions/create-ipc-server.function.d.ts +11 -11
  68. package/dist/src/shared/worker-daemon/functions/embed-after-learn.function.d.ts +13 -0
  69. package/dist/src/shared/worker-daemon/functions/handle-hybrid-search.function.d.ts +44 -0
  70. package/dist/src/shared/worker-daemon/functions/handle-import.function.d.ts +14 -0
  71. package/dist/src/shared/worker-daemon/functions/handle-read-ops.function.d.ts +7 -1
  72. package/dist/src/shared/worker-daemon/functions/handle-write-ops.function.d.ts +9 -4
  73. package/dist/src/shared/worker-daemon/typings/handler-context.interface.d.ts +3 -0
  74. package/dist/wasm/fs-database/kbdb_fs_database.d.ts +16 -85
  75. package/dist/wasm/fs-database/kbdb_fs_database.js +16 -85
  76. package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  77. package/dist/wasm/kb-worker/kbdb_worker.d.ts +20 -115
  78. package/dist/wasm/kb-worker/kbdb_worker.js +20 -115
  79. package/dist/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  80. package/dist/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  81. package/dist/worker.d.ts +8 -0
  82. package/dist/worker.mjs +606 -102
  83. package/dist/worker.mjs.map +4 -4
  84. package/docs/details/README.md +4 -0
  85. package/docs/details/agent-tooling.md +122 -0
  86. package/docs/details/cli.md +70 -13
  87. package/docs/details/knowledge-base.md +173 -0
  88. package/docs/details/library-api.md +42 -2
  89. package/docs/details/mcp-server.md +38 -7
  90. package/docs/details/search-and-ranking.md +11 -10
  91. package/docs/goals/cli.md +110 -34
  92. package/docs/goals/mcp.md +22 -19
  93. package/docs/goals/query-parser.md +8 -0
  94. package/docs/goals/worker-client.md +62 -1
  95. package/docs/goals/worker-daemon.md +52 -10
  96. package/docs/modules/typescript/cli.md +1 -1
  97. package/docs/modules/typescript/shared/cli/functions.md +116 -13
  98. package/docs/modules/typescript/shared/cli/module.md +33 -20
  99. package/docs/modules/typescript/shared/cli/typings.md +4 -0
  100. package/docs/modules/typescript/shared/embedding/functions.md +104 -25
  101. package/docs/modules/typescript/shared/mcp/module.md +1 -1
  102. package/docs/modules/typescript/shared/mcp/typings.md +8 -1
  103. package/docs/modules/typescript/shared/worker-client/module.md +9 -1
  104. package/docs/modules/typescript/shared/worker-client/typings.md +3 -0
  105. package/docs/modules/typescript/shared/worker-daemon/module.md +6 -3
  106. package/docs/overview.md +1 -2
  107. package/docs/release-notes/0.4.0.md +80 -0
  108. package/docs/release-notes/README.md +1 -0
  109. package/mod.ts +33 -15
  110. package/package.json +11 -10
  111. package/dist/chunk-JG2UCKLI.mjs +0 -95
  112. package/dist/chunk-JG2UCKLI.mjs.map +0 -7
  113. package/src/cli.ts +0 -71
  114. package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +0 -62
  115. package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +0 -15
  116. package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +0 -27
  117. package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +0 -50
  118. package/src/shared/auto-capture/index.ts +0 -7
  119. package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +0 -13
  120. package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +0 -13
  121. package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +0 -7
  122. package/src/shared/cli/constants/defaults.constant.ts +0 -19
  123. package/src/shared/cli/constants/global-help.constant.ts +0 -73
  124. package/src/shared/cli/constants/help-text.constant.ts +0 -4
  125. package/src/shared/cli/constants/leaf-help.constant.ts +0 -219
  126. package/src/shared/cli/constants/memory-protocol-body.constant.ts +0 -39
  127. package/src/shared/cli/constants/query-guidance-body.constant.ts +0 -37
  128. package/src/shared/cli/constants/subcommand-help.constant.ts +0 -195
  129. package/src/shared/cli/functions/collect-files.function.ts +0 -55
  130. package/src/shared/cli/functions/compute-section-kbid.function.ts +0 -49
  131. package/src/shared/cli/functions/dispatch-command.function.ts +0 -390
  132. package/src/shared/cli/functions/ensure-db.function.ts +0 -21
  133. package/src/shared/cli/functions/error-to-message.function.ts +0 -9
  134. package/src/shared/cli/functions/find-db.function.ts +0 -20
  135. package/src/shared/cli/functions/format-mcp-output.function.ts +0 -41
  136. package/src/shared/cli/functions/format-output.function.ts +0 -95
  137. package/src/shared/cli/functions/format-text-output.function.ts +0 -42
  138. package/src/shared/cli/functions/generate-group-help.function.ts +0 -41
  139. package/src/shared/cli/functions/generate-help.function.ts +0 -654
  140. package/src/shared/cli/functions/handle-data-command.function.ts +0 -67
  141. package/src/shared/cli/functions/handle-mcp.function.ts +0 -56
  142. package/src/shared/cli/functions/handle-migrate.function.ts +0 -64
  143. package/src/shared/cli/functions/hydrate-search-previews.function.ts +0 -29
  144. package/src/shared/cli/functions/install-default-skills.function.ts +0 -296
  145. package/src/shared/cli/functions/is-stdin-tty.function.ts +0 -12
  146. package/src/shared/cli/functions/parse-args.function.ts +0 -156
  147. package/src/shared/cli/functions/prompt-user.function.ts +0 -36
  148. package/src/shared/cli/functions/resolve-skill-names.function.ts +0 -43
  149. package/src/shared/cli/functions/run-agent-create.function.ts +0 -114
  150. package/src/shared/cli/functions/run-agent-delete.function.ts +0 -47
  151. package/src/shared/cli/functions/run-agent-get.function.ts +0 -166
  152. package/src/shared/cli/functions/run-agent-list.function.ts +0 -58
  153. package/src/shared/cli/functions/run-check.function.ts +0 -159
  154. package/src/shared/cli/functions/run-cli.function.ts +0 -299
  155. package/src/shared/cli/functions/run-content.function.ts +0 -47
  156. package/src/shared/cli/functions/run-db-init.function.ts +0 -44
  157. package/src/shared/cli/functions/run-db-migrate.function.ts +0 -40
  158. package/src/shared/cli/functions/run-export.function.ts +0 -40
  159. package/src/shared/cli/functions/run-gc.function.ts +0 -51
  160. package/src/shared/cli/functions/run-init.function.ts +0 -93
  161. package/src/shared/cli/functions/run-learn.function.ts +0 -223
  162. package/src/shared/cli/functions/run-migrate.function.ts +0 -85
  163. package/src/shared/cli/functions/run-rebuild.function.ts +0 -47
  164. package/src/shared/cli/functions/run-recall.function.ts +0 -66
  165. package/src/shared/cli/functions/run-search.function.ts +0 -133
  166. package/src/shared/cli/functions/run-skill-delete.function.ts +0 -47
  167. package/src/shared/cli/functions/run-skill-get.function.ts +0 -90
  168. package/src/shared/cli/functions/run-skill-learn.function.ts +0 -70
  169. package/src/shared/cli/functions/run-skill-list.function.ts +0 -74
  170. package/src/shared/cli/functions/run-status.function.ts +0 -29
  171. package/src/shared/cli/functions/run-unlearn.function.ts +0 -58
  172. package/src/shared/cli/functions/version-gate.function.ts +0 -44
  173. package/src/shared/cli/functions/wrap-command.function.ts +0 -34
  174. package/src/shared/cli/index.ts +0 -55
  175. package/src/shared/cli/typings/agent-create-client.interface.ts +0 -47
  176. package/src/shared/cli/typings/agent-get-client.interface.ts +0 -39
  177. package/src/shared/cli/typings/check-client.interface.ts +0 -66
  178. package/src/shared/cli/typings/cli-deps.interface.ts +0 -54
  179. package/src/shared/cli/typings/cli-options.interface.ts +0 -72
  180. package/src/shared/cli/typings/command-result.model.ts +0 -15
  181. package/src/shared/cli/typings/disconnectable-client.interface.ts +0 -29
  182. package/src/shared/cli/typings/dispatch-client.type.ts +0 -46
  183. package/src/shared/cli/typings/learn-client.interface.ts +0 -53
  184. package/src/shared/cli/typings/learn-io.interface.ts +0 -5
  185. package/src/shared/cli/typings/learn-result.model.ts +0 -27
  186. package/src/shared/cli/typings/search-client.interface.ts +0 -73
  187. package/src/shared/cli/typings/search-display.model.ts +0 -54
  188. package/src/shared/dir-resolver/functions/join-path.function.ts +0 -13
  189. package/src/shared/dir-resolver/functions/resolve-base-dir.function.ts +0 -25
  190. package/src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts +0 -5
  191. package/src/shared/dir-resolver/functions/resolve-worker-script.function.ts +0 -13
  192. package/src/shared/dir-resolver/index.ts +0 -11
  193. package/src/shared/dir-resolver/typings/base-dir.interface.ts +0 -4
  194. package/src/shared/embedding/classes/null-embedding-provider.class.ts +0 -29
  195. package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +0 -17
  196. package/src/shared/embedding/functions/build-vector-index.function.ts +0 -79
  197. package/src/shared/embedding/functions/cosine-similarity.function.ts +0 -31
  198. package/src/shared/embedding/functions/detect-near-duplicates.function.ts +0 -69
  199. package/src/shared/embedding/functions/jaccard-coefficient.function.ts +0 -26
  200. package/src/shared/embedding/functions/read-vector-index-meta.function.ts +0 -44
  201. package/src/shared/embedding/functions/rrf-fuse.function.ts +0 -33
  202. package/src/shared/embedding/functions/search-vectors.function.ts +0 -59
  203. package/src/shared/embedding/index.ts +0 -20
  204. package/src/shared/embedding/typings/embedding-config.interface.ts +0 -23
  205. package/src/shared/embedding/typings/embedding-provider.interface.ts +0 -25
  206. package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +0 -25
  207. package/src/shared/embedding/typings/near-duplicate-result.model.ts +0 -26
  208. package/src/shared/embedding/typings/vector-index-entry.model.ts +0 -13
  209. package/src/shared/embedding/typings/vector-index-meta.model.ts +0 -14
  210. package/src/shared/embedding/typings/vector-search-result.model.ts +0 -8
  211. package/src/shared/hash/functions/compute-sha256.ts +0 -17
  212. package/src/shared/hash/index.ts +0 -1
  213. package/src/shared/mcp/classes/mcp-server.class.ts +0 -480
  214. package/src/shared/mcp/constants/mcp-error-codes.constant.ts +0 -30
  215. package/src/shared/mcp/constants/tool-agent-create.constant.ts +0 -39
  216. package/src/shared/mcp/constants/tool-agent-delete.constant.ts +0 -26
  217. package/src/shared/mcp/constants/tool-agent-get.constant.ts +0 -24
  218. package/src/shared/mcp/constants/tool-agent-list.constant.ts +0 -18
  219. package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +0 -32
  220. package/src/shared/mcp/constants/tool-check.constant.ts +0 -21
  221. package/src/shared/mcp/constants/tool-content.constant.ts +0 -29
  222. package/src/shared/mcp/constants/tool-export.constant.ts +0 -27
  223. package/src/shared/mcp/constants/tool-gc.constant.ts +0 -21
  224. package/src/shared/mcp/constants/tool-learn.constant.ts +0 -58
  225. package/src/shared/mcp/constants/tool-rebuild.constant.ts +0 -21
  226. package/src/shared/mcp/constants/tool-recall.constant.ts +0 -36
  227. package/src/shared/mcp/constants/tool-retrieve.constant.ts +0 -31
  228. package/src/shared/mcp/constants/tool-search.constant.ts +0 -51
  229. package/src/shared/mcp/constants/tool-skill-delete.constant.ts +0 -24
  230. package/src/shared/mcp/constants/tool-skill-get.constant.ts +0 -27
  231. package/src/shared/mcp/constants/tool-skill-learn.constant.ts +0 -37
  232. package/src/shared/mcp/constants/tool-skill-list.constant.ts +0 -18
  233. package/src/shared/mcp/constants/tool-status.constant.ts +0 -20
  234. package/src/shared/mcp/constants/tool-unlearn.constant.ts +0 -25
  235. package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +0 -11
  236. package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +0 -17
  237. package/src/shared/mcp/functions/as-string-array.function.ts +0 -15
  238. package/src/shared/mcp/functions/as-string.function.ts +0 -10
  239. package/src/shared/mcp/functions/build-skills-text.function.ts +0 -43
  240. package/src/shared/mcp/functions/create-mcp-server.function.ts +0 -14
  241. package/src/shared/mcp/functions/create-prompt-definitions.function.ts +0 -102
  242. package/src/shared/mcp/functions/create-resource-templates.function.ts +0 -23
  243. package/src/shared/mcp/functions/create-tool-definitions.function.ts +0 -530
  244. package/src/shared/mcp/functions/extract-skill-arguments.function.ts +0 -27
  245. package/src/shared/mcp/functions/handle-agent-create.function.ts +0 -116
  246. package/src/shared/mcp/functions/handle-agent-delete.function.ts +0 -50
  247. package/src/shared/mcp/functions/handle-agent-get.function.ts +0 -160
  248. package/src/shared/mcp/functions/handle-agent-list.function.ts +0 -50
  249. package/src/shared/mcp/functions/handle-agent-prompt.function.ts +0 -68
  250. package/src/shared/mcp/functions/handle-completion.function.ts +0 -114
  251. package/src/shared/mcp/functions/handle-mcp-request.function.ts +0 -202
  252. package/src/shared/mcp/functions/handle-prompt-get.function.ts +0 -220
  253. package/src/shared/mcp/functions/handle-recall.function.ts +0 -66
  254. package/src/shared/mcp/functions/handle-resource-read.function.ts +0 -56
  255. package/src/shared/mcp/functions/handle-roots-list.function.ts +0 -29
  256. package/src/shared/mcp/functions/handle-skill-prompt.function.ts +0 -44
  257. package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +0 -24
  258. package/src/shared/mcp/functions/handle-tool-call.function.ts +0 -560
  259. package/src/shared/mcp/functions/handle-tool-check.function.ts +0 -21
  260. package/src/shared/mcp/functions/handle-tool-content.function.ts +0 -23
  261. package/src/shared/mcp/functions/handle-tool-export.function.ts +0 -25
  262. package/src/shared/mcp/functions/handle-tool-gc.function.ts +0 -21
  263. package/src/shared/mcp/functions/handle-tool-learn.function.ts +0 -69
  264. package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +0 -21
  265. package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +0 -40
  266. package/src/shared/mcp/functions/handle-tool-search.function.ts +0 -47
  267. package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +0 -34
  268. package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +0 -59
  269. package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +0 -61
  270. package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +0 -39
  271. package/src/shared/mcp/functions/handle-tool-status.function.ts +0 -21
  272. package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +0 -24
  273. package/src/shared/mcp/functions/parse-agent-meta.function.ts +0 -27
  274. package/src/shared/mcp/functions/parse-skill-arguments.function.ts +0 -36
  275. package/src/shared/mcp/functions/parse-skill-content.function.ts +0 -38
  276. package/src/shared/mcp/functions/read-agent-meta.function.ts +0 -41
  277. package/src/shared/mcp/functions/resolve-skill-refs.function.ts +0 -50
  278. package/src/shared/mcp/functions/run-startup-health-check.function.ts +0 -34
  279. package/src/shared/mcp/functions/serialize-skill-content.function.ts +0 -12
  280. package/src/shared/mcp/functions/should-emit-log.function.ts +0 -38
  281. package/src/shared/mcp/index.ts +0 -28
  282. package/src/shared/mcp/typings/agent-types.interface.ts +0 -39
  283. package/src/shared/mcp/typings/log-types.interface.ts +0 -26
  284. package/src/shared/mcp/typings/mcp-capabilities.interface.ts +0 -16
  285. package/src/shared/mcp/typings/mcp-client.interface.ts +0 -317
  286. package/src/shared/mcp/typings/mcp-completion.interface.ts +0 -45
  287. package/src/shared/mcp/typings/mcp-content-result.model.ts +0 -9
  288. package/src/shared/mcp/typings/mcp-export-result.model.ts +0 -11
  289. package/src/shared/mcp/typings/mcp-gc-result.model.ts +0 -15
  290. package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +0 -17
  291. package/src/shared/mcp/typings/mcp-integrity-error.model.ts +0 -15
  292. package/src/shared/mcp/typings/mcp-notification.interface.ts +0 -9
  293. package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +0 -9
  294. package/src/shared/mcp/typings/mcp-request.interface.ts +0 -11
  295. package/src/shared/mcp/typings/mcp-resource-result.interface.ts +0 -12
  296. package/src/shared/mcp/typings/mcp-resource-template.interface.ts +0 -11
  297. package/src/shared/mcp/typings/mcp-response.interface.ts +0 -18
  298. package/src/shared/mcp/typings/mcp-server-info.interface.ts +0 -7
  299. package/src/shared/mcp/typings/mcp-server-state.interface.ts +0 -17
  300. package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +0 -32
  301. package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +0 -16
  302. package/src/shared/mcp/typings/mcp-tool-result.interface.ts +0 -19
  303. package/src/shared/mcp/typings/mcp-types.interface.ts +0 -158
  304. package/src/shared/mcp/typings/mcp-worker-client.interface.ts +0 -243
  305. package/src/shared/mcp/typings/prompt-types.interface.ts +0 -39
  306. package/src/shared/mcp/typings/remove-section-result.model.ts +0 -10
  307. package/src/shared/mcp/typings/sampling-types.interface.ts +0 -48
  308. package/src/shared/mcp/typings/skill-types.interface.ts +0 -29
  309. package/src/shared/mcp/typings/tool-call-result.model.ts +0 -18
  310. package/src/shared/mod.ts +0 -1
  311. package/src/shared/platform/functions/get-ipc-path.function.ts +0 -19
  312. package/src/shared/platform/functions/get-tmpdir.function.ts +0 -8
  313. package/src/shared/platform/functions/is-process-alive.function.ts +0 -17
  314. package/src/shared/platform/index.ts +0 -3
  315. package/src/shared/runtime/functions/detect-runtime.ts +0 -14
  316. package/src/shared/runtime/functions/get-args.ts +0 -16
  317. package/src/shared/runtime/index.ts +0 -3
  318. package/src/shared/runtime/typings/runtime.ts +0 -2
  319. package/src/shared/sync/functions/build-import-report.function.ts +0 -40
  320. package/src/shared/sync/functions/parse-export-entry.function.ts +0 -45
  321. package/src/shared/sync/functions/resolve-conflict.function.ts +0 -31
  322. package/src/shared/sync/functions/serialize-export-entry.function.ts +0 -18
  323. package/src/shared/sync/index.ts +0 -9
  324. package/src/shared/sync/typings/conflict-resolution.type.ts +0 -8
  325. package/src/shared/sync/typings/export-entry.interface.ts +0 -13
  326. package/src/shared/sync/typings/export-options.interface.ts +0 -9
  327. package/src/shared/sync/typings/import-options.interface.ts +0 -7
  328. package/src/shared/sync/typings/import-report.interface.ts +0 -15
  329. package/src/shared/version/constants/version.constant.ts +0 -2
  330. package/src/shared/version/index.ts +0 -1
  331. package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +0 -112
  332. package/src/shared/wasm-codec/functions/decode-compose-output.function.ts +0 -16
  333. package/src/shared/wasm-codec/functions/decode-document-manifest-list.function.ts +0 -70
  334. package/src/shared/wasm-codec/functions/decode-document-manifest.function.ts +0 -87
  335. package/src/shared/wasm-codec/functions/decode-f32.function.ts +0 -16
  336. package/src/shared/wasm-codec/functions/decode-key-value-text.function.ts +0 -15
  337. package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +0 -86
  338. package/src/shared/wasm-codec/functions/decode-option-string.function.ts +0 -24
  339. package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +0 -59
  340. package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +0 -52
  341. package/src/shared/wasm-codec/functions/decode-recall-result.function.ts +0 -267
  342. package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +0 -43
  343. package/src/shared/wasm-codec/functions/decode-remove-flag.function.ts +0 -3
  344. package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +0 -194
  345. package/src/shared/wasm-codec/functions/decode-section-match.function.ts +0 -80
  346. package/src/shared/wasm-codec/functions/decode-section-record-list.function.ts +0 -20
  347. package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +0 -75
  348. package/src/shared/wasm-codec/functions/decode-section-record.function.ts +0 -85
  349. package/src/shared/wasm-codec/functions/decode-section-records.function.ts +0 -249
  350. package/src/shared/wasm-codec/functions/decode-section-type.function.ts +0 -30
  351. package/src/shared/wasm-codec/functions/decode-string.function.ts +0 -22
  352. package/src/shared/wasm-codec/functions/decode-u32.function.ts +0 -16
  353. package/src/shared/wasm-codec/functions/decode-u64.function.ts +0 -16
  354. package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +0 -31
  355. package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +0 -102
  356. package/src/shared/wasm-codec/functions/encode-group-params.function.ts +0 -28
  357. package/src/shared/wasm-codec/functions/encode-identifier-list.function.ts +0 -17
  358. package/src/shared/wasm-codec/functions/encode-kbid-list.function.ts +0 -17
  359. package/src/shared/wasm-codec/functions/encode-option-string.function.ts +0 -14
  360. package/src/shared/wasm-codec/functions/encode-recall-params.function.ts +0 -68
  361. package/src/shared/wasm-codec/functions/encode-search-params.function.ts +0 -12
  362. package/src/shared/wasm-codec/functions/encode-section-type.function.ts +0 -18
  363. package/src/shared/wasm-codec/functions/encode-string.function.ts +0 -9
  364. package/src/shared/wasm-codec/functions/encode-type-filter-param.function.ts +0 -13
  365. package/src/shared/wasm-codec/functions/encode-u32.function.ts +0 -5
  366. package/src/shared/wasm-codec/functions/encode-update-section-params.function.ts +0 -16
  367. package/src/shared/wasm-codec/index.ts +0 -49
  368. package/src/shared/wasm-codec/typings/add-section-input.model.ts +0 -45
  369. package/src/shared/wasm-codec/typings/add-section-result.model.ts +0 -28
  370. package/src/shared/wasm-codec/typings/document-manifest.model.ts +0 -20
  371. package/src/shared/wasm-codec/typings/document-section.model.ts +0 -12
  372. package/src/shared/wasm-codec/typings/item-decoder.type.ts +0 -10
  373. package/src/shared/wasm-codec/typings/near-duplicate.model.ts +0 -16
  374. package/src/shared/wasm-codec/typings/paged-search-result.model.ts +0 -22
  375. package/src/shared/wasm-codec/typings/section-match.model.ts +0 -31
  376. package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +0 -38
  377. package/src/shared/wasm-codec/typings/section-record.model.ts +0 -66
  378. package/src/shared/wasm-codec/typings/section-type-result.model.ts +0 -12
  379. package/src/shared/worker-client/classes/worker-client.class.ts +0 -466
  380. package/src/shared/worker-client/functions/compute-context-id.function.ts +0 -18
  381. package/src/shared/worker-client/functions/create-worker-client.function.ts +0 -70
  382. package/src/shared/worker-client/functions/discover-daemon.function.ts +0 -47
  383. package/src/shared/worker-client/functions/handle-ipc-data.function.ts +0 -49
  384. package/src/shared/worker-client/functions/resolve-db-path.function.ts +0 -21
  385. package/src/shared/worker-client/functions/send-ipc-request.function.ts +0 -39
  386. package/src/shared/worker-client/functions/spawn-daemon.function.ts +0 -35
  387. package/src/shared/worker-client/functions/wait-for-daemon.function.ts +0 -34
  388. package/src/shared/worker-client/index.ts +0 -44
  389. package/src/shared/worker-client/typings/add-section-result.model.ts +0 -39
  390. package/src/shared/worker-client/typings/content-result.model.ts +0 -12
  391. package/src/shared/worker-client/typings/daemon-info.model.ts +0 -7
  392. package/src/shared/worker-client/typings/export-result.model.ts +0 -14
  393. package/src/shared/worker-client/typings/gc-result.model.ts +0 -18
  394. package/src/shared/worker-client/typings/integrity-check-result.model.ts +0 -43
  395. package/src/shared/worker-client/typings/json-rpc-response.interface.ts +0 -17
  396. package/src/shared/worker-client/typings/migrate-result.model.ts +0 -11
  397. package/src/shared/worker-client/typings/pending-call.interface.ts +0 -7
  398. package/src/shared/worker-client/typings/rebuild-result.model.ts +0 -12
  399. package/src/shared/worker-client/typings/recall-document.model.ts +0 -16
  400. package/src/shared/worker-client/typings/recall-params.model.ts +0 -15
  401. package/src/shared/worker-client/typings/recall-reference.model.ts +0 -32
  402. package/src/shared/worker-client/typings/recall-result.model.ts +0 -98
  403. package/src/shared/worker-client/typings/recall-sibling.model.ts +0 -11
  404. package/src/shared/worker-client/typings/recall-single-result.model.ts +0 -41
  405. package/src/shared/worker-client/typings/remove-section-result.model.ts +0 -7
  406. package/src/shared/worker-client/typings/search-params.model.ts +0 -14
  407. package/src/shared/worker-client/typings/search-result.model.ts +0 -43
  408. package/src/shared/worker-client/typings/section.model.ts +0 -43
  409. package/src/shared/worker-client/typings/status-result.model.ts +0 -14
  410. package/src/shared/worker-client/typings/version-status.model.ts +0 -28
  411. package/src/shared/worker-client/typings/worker-client-error.interface.ts +0 -8
  412. package/src/shared/worker-client/typings/worker-client-options.interface.ts +0 -30
  413. package/src/shared/worker-daemon/classes/ipc-error.class.ts +0 -22
  414. package/src/shared/worker-daemon/classes/worker-daemon.class.ts +0 -1291
  415. package/src/shared/worker-daemon/constants/daemon-defaults.constant.ts +0 -29
  416. package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +0 -69
  417. package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +0 -16
  418. package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +0 -54
  419. package/src/shared/worker-daemon/functions/check-preconditions.function.ts +0 -28
  420. package/src/shared/worker-daemon/functions/create-host-imports.function.ts +0 -328
  421. package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +0 -87
  422. package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +0 -33
  423. package/src/shared/worker-daemon/functions/dispatch-request.function.ts +0 -190
  424. package/src/shared/worker-daemon/functions/handle-check-version.function.ts +0 -74
  425. package/src/shared/worker-daemon/functions/handle-config-method.function.ts +0 -27
  426. package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +0 -236
  427. package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +0 -257
  428. package/src/shared/worker-daemon/functions/load-wasm-modules.function.ts +0 -95
  429. package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +0 -51
  430. package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +0 -20
  431. package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +0 -38
  432. package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +0 -104
  433. package/src/shared/worker-daemon/functions/read-config.function.ts +0 -83
  434. package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +0 -55
  435. package/src/shared/worker-daemon/functions/run-worker.function.ts +0 -57
  436. package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +0 -92
  437. package/src/shared/worker-daemon/functions/start-daemon.function.ts +0 -74
  438. package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +0 -144
  439. package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +0 -41
  440. package/src/shared/worker-daemon/functions/write-lock.function.ts +0 -49
  441. package/src/shared/worker-daemon/index.ts +0 -16
  442. package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +0 -16
  443. package/src/shared/worker-daemon/typings/daemon-config.interface.ts +0 -20
  444. package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +0 -22
  445. package/src/shared/worker-daemon/typings/handler-context.interface.ts +0 -19
  446. package/src/shared/worker-daemon/typings/ipc-handler.interface.ts +0 -39
  447. package/src/shared/worker-daemon/typings/memory-ref.interface.ts +0 -13
  448. package/src/shared/worker-daemon/typings/wasm-fn.type.ts +0 -2
  449. package/src/shared/worker-daemon/typings/wasm-modules.interface.ts +0 -7
  450. package/src/shared/worker-daemon/typings/write-lock.interface.ts +0 -13
  451. package/src/wasm/fs-database/kbdb_fs_database.d.ts +0 -259
  452. package/src/wasm/fs-database/kbdb_fs_database.js +0 -515
  453. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  454. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +0 -35
  455. package/src/wasm/fs-database/package.json +0 -13
  456. package/src/wasm/kb-worker/kbdb_worker.d.ts +0 -650
  457. package/src/wasm/kb-worker/kbdb_worker.js +0 -1181
  458. package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  459. package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +0 -77
  460. package/src/wasm/kb-worker/package.json +0 -13
  461. package/src/wasm/query-parser/kbdb_query_parser.d.ts +0 -195
  462. package/src/wasm/query-parser/kbdb_query_parser.js +0 -403
  463. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  464. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm.d.ts +0 -25
  465. package/src/wasm/query-parser/package.json +0 -13
  466. package/src/worker.ts +0 -42
@@ -1,560 +0,0 @@
1
- import type { McpWorkerClient } from '../typings/mcp-client.interface.ts';
2
- import { extractSkillArguments } from './extract-skill-arguments.function.ts';
3
- import { parseSkillContent } from './parse-skill-content.function.ts';
4
- import { serializeSkillContent } from './serialize-skill-content.function.ts';
5
- import { handleAgentCreate } from './handle-agent-create.function.ts';
6
- import { handleAgentList } from './handle-agent-list.function.ts';
7
- import { handleAgentGet } from './handle-agent-get.function.ts';
8
- import { handleAgentDelete } from './handle-agent-delete.function.ts';
9
- import { handleRecall } from './handle-recall.function.ts';
10
-
11
- /** Shape of a content item in an MCP tool call response. */
12
- interface ToolContent {
13
- /** Content type identifier, typically 'text'. */
14
- readonly type: string;
15
- /** The text payload. */
16
- readonly text: string;
17
- }
18
-
19
- /** Result returned by a tool call handler. */
20
- interface ToolCallResult {
21
- /** One or more content items describing the result. */
22
- readonly content: ToolContent[];
23
- /** Set to `true` when the tool encountered an error. */
24
- readonly isError?: boolean;
25
- }
26
-
27
- /**
28
- * Narrows an `unknown` value to a string, returning the fallback
29
- * when the value is not already a string.
30
- */
31
- function asString(value: unknown, fallback: string): string {
32
- return typeof value === 'string' ? value : fallback;
33
- }
34
-
35
- /**
36
- * Narrows an `unknown` value to a boolean, returning `undefined`
37
- * when the value is not a boolean.
38
- */
39
- function asBooleanOrUndefined(value: unknown): boolean | undefined {
40
- return typeof value === 'boolean' ? value : undefined;
41
- }
42
-
43
- /**
44
- * Narrows an `unknown` value to a `string[]`, returning `undefined`
45
- * when the value is not an array of strings.
46
- */
47
- function asStringArrayOrUndefined(
48
- value: unknown,
49
- ): string[] | undefined {
50
- if (
51
- Array.isArray(value) &&
52
- value.every((item) => typeof item === 'string')
53
- ) {
54
- return value;
55
- }
56
- return undefined;
57
- }
58
-
59
- /**
60
- * Narrows an `unknown` value to a `string[]`, returning an empty
61
- * array when the value is not an array of strings.
62
- */
63
- function asStringArray(value: unknown): string[] {
64
- if (
65
- Array.isArray(value) &&
66
- value.every((item) => typeof item === 'string')
67
- ) {
68
- return value;
69
- }
70
- return [];
71
- }
72
-
73
- /**
74
- * Dispatches an MCP tool call to the appropriate knowledge-base
75
- * operation and returns the result formatted as MCP content.
76
- *
77
- * @param client - the worker client used to execute operations
78
- * @param name - the tool name to invoke
79
- * @param args - tool arguments from the MCP request
80
- * @returns content items with optional isError flag
81
- */
82
- export async function handleToolCall(
83
- client: McpWorkerClient,
84
- name: string,
85
- args: Record<string, unknown>,
86
- ): Promise<ToolCallResult> {
87
- try {
88
- switch (name) {
89
- case 'search':
90
- return await handleSearch(client, args);
91
- case 'learn':
92
- return await handleLearn(client, args);
93
- case 'unlearn':
94
- return await handleUnlearn(client, args);
95
- case 'retrieve':
96
- return await handleRetrieve(client, args);
97
- case 'recall':
98
- return await handleRecall(client, args);
99
- case 'status':
100
- return await handleStatus(client);
101
- case 'content':
102
- return await handleContent(client, args);
103
- case 'check':
104
- return await handleCheck(client);
105
- case 'gc':
106
- return await handleGc(client);
107
- case 'rebuild':
108
- return await handleRebuild(client);
109
- case 'export':
110
- return await handleExport(client, args);
111
- case 'skill-learn':
112
- return await handleSkillLearn(client, args);
113
- case 'skill-list':
114
- return await handleSkillList(client);
115
- case 'skill-get':
116
- return await handleSkillGet(client, args);
117
- case 'skill-delete':
118
- return await handleSkillDelete(client, args);
119
- case 'agent-create':
120
- return await handleAgentCreate(client, args);
121
- case 'agent-list':
122
- return await handleAgentList(client);
123
- case 'agent-get':
124
- return await handleAgentGet(client, args);
125
- case 'agent-delete':
126
- return await handleAgentDelete(client, args);
127
- case 'auto-capture-review':
128
- return handleAutoCaptureReview();
129
- default:
130
- return {
131
- content: [
132
- {
133
- type: 'text',
134
- text: `Unknown tool: ${name}`,
135
- },
136
- ],
137
- isError: true,
138
- };
139
- }
140
- } catch (err) {
141
- return {
142
- content: [
143
- {
144
- type: 'text',
145
- text: err instanceof Error ? err.message : String(err),
146
- },
147
- ],
148
- isError: true,
149
- };
150
- }
151
- }
152
-
153
- async function handleSearch(
154
- client: McpWorkerClient,
155
- args: Record<string, unknown>,
156
- ): Promise<ToolCallResult> {
157
- const results = await client.search({
158
- query: asString(args['query'], ''),
159
- mode: args['mode'] as string | undefined,
160
- limit: args['limit'] as number | undefined,
161
- offset: args['offset'] as number | undefined,
162
- algo: args['algo'] as string | undefined,
163
- });
164
-
165
- const stripped = {
166
- ...results,
167
- items: results.items.map(
168
- ({
169
- score: _score,
170
- confidence: _confidence,
171
- ...rest
172
- }: (typeof results.items)[number] & {
173
- confidence?: number;
174
- }) => rest,
175
- ),
176
- };
177
-
178
- return {
179
- content: [
180
- {
181
- type: 'text',
182
- text: JSON.stringify(stripped, null, 2),
183
- },
184
- ],
185
- };
186
- }
187
-
188
- async function handleLearn(
189
- client: McpWorkerClient,
190
- args: Record<string, unknown>,
191
- ): Promise<ToolCallResult> {
192
- const sectionType = asString(args['type'], 'text/markdown');
193
- const title =
194
- typeof args['title'] === 'string' ? args['title'] : undefined;
195
- const description =
196
- typeof args['description'] === 'string'
197
- ? args['description']
198
- : undefined;
199
- const docid =
200
- typeof args['docid'] === 'string' ? args['docid'] : undefined;
201
- const tags = asStringArrayOrUndefined(args['tags']);
202
- const replace = asBooleanOrUndefined(args['replace']);
203
- if (sectionType.startsWith('image/') && !title) {
204
- return {
205
- content: [
206
- {
207
- type: 'text',
208
- text: 'title is required for image/* types',
209
- },
210
- ],
211
- isError: true,
212
- };
213
- }
214
- const result = await client.addSection({
215
- sectionType,
216
- content: asString(args['content'], ''),
217
- title,
218
- description,
219
- docid,
220
- tags,
221
- replace,
222
- });
223
- const normalized = {
224
- kbid: result.kbid,
225
- indexed_terms_count: result.indexed_terms_count ?? 0,
226
- elapsed_ms: result.elapsed_ms ?? 0,
227
- superseded: result.superseded ?? null,
228
- warnings: result.warnings ?? [],
229
- near_duplicates: (result.near_duplicates ?? []).map((d) => ({
230
- kbid: d.kbid,
231
- similarity: d.similarity,
232
- ...(d.method !== undefined ? { method: d.method } : {}),
233
- })),
234
- };
235
- return {
236
- content: [
237
- {
238
- type: 'text',
239
- text: JSON.stringify(normalized),
240
- },
241
- ],
242
- };
243
- }
244
-
245
- async function handleUnlearn(
246
- client: McpWorkerClient,
247
- args: Record<string, unknown>,
248
- ): Promise<ToolCallResult> {
249
- const result = await client.removeSection(
250
- asString(args['kbid'], ''),
251
- );
252
- return {
253
- content: [
254
- {
255
- type: 'text',
256
- text: JSON.stringify(result),
257
- },
258
- ],
259
- };
260
- }
261
-
262
- async function handleRetrieve(
263
- client: McpWorkerClient,
264
- args: Record<string, unknown>,
265
- ): Promise<ToolCallResult> {
266
- if (typeof args['kbid'] === 'string') {
267
- const sections = await client.readSections([args['kbid']]);
268
- return {
269
- content: [
270
- {
271
- type: 'text',
272
- text: JSON.stringify(sections, null, 2),
273
- },
274
- ],
275
- };
276
- }
277
- if (typeof args['docid'] === 'string') {
278
- const doc = await client.retrieveDocument(args['docid']);
279
- return {
280
- content: [
281
- {
282
- type: 'text',
283
- text: JSON.stringify(doc, null, 2),
284
- },
285
- ],
286
- };
287
- }
288
- return {
289
- content: [
290
- {
291
- type: 'text',
292
- text: 'Provide kbid or docid',
293
- },
294
- ],
295
- isError: true,
296
- };
297
- }
298
-
299
- async function handleStatus(
300
- client: McpWorkerClient,
301
- ): Promise<ToolCallResult> {
302
- const status = await client.dbStatus();
303
- return {
304
- content: [
305
- {
306
- type: 'text',
307
- text: JSON.stringify(status, null, 2),
308
- },
309
- ],
310
- };
311
- }
312
-
313
- async function handleContent(
314
- client: McpWorkerClient,
315
- args: Record<string, unknown>,
316
- ): Promise<ToolCallResult> {
317
- const ids = asStringArray(args['ids']);
318
- const result = await client.content(ids);
319
- return {
320
- content: [
321
- {
322
- type: 'text',
323
- text: JSON.stringify(result),
324
- },
325
- ],
326
- };
327
- }
328
-
329
- async function handleCheck(
330
- client: McpWorkerClient,
331
- ): Promise<ToolCallResult> {
332
- const report = await client.integrityCheck();
333
- return {
334
- content: [
335
- {
336
- type: 'text',
337
- text: JSON.stringify(report, null, 2),
338
- },
339
- ],
340
- };
341
- }
342
-
343
- async function handleGc(
344
- client: McpWorkerClient,
345
- ): Promise<ToolCallResult> {
346
- const report = await client.gc();
347
- return {
348
- content: [
349
- {
350
- type: 'text',
351
- text: JSON.stringify(report, null, 2),
352
- },
353
- ],
354
- };
355
- }
356
-
357
- async function handleRebuild(
358
- client: McpWorkerClient,
359
- ): Promise<ToolCallResult> {
360
- const report = await client.rebuildIndexes();
361
- return {
362
- content: [
363
- {
364
- type: 'text',
365
- text: JSON.stringify(report, null, 2),
366
- },
367
- ],
368
- };
369
- }
370
-
371
- async function handleSkillLearn(
372
- client: McpWorkerClient,
373
- args: Record<string, unknown>,
374
- ): Promise<ToolCallResult> {
375
- const name = asString(args['name'], '');
376
- if (!name) {
377
- return {
378
- content: [{ type: 'text', text: 'name is required' }],
379
- isError: true,
380
- };
381
- }
382
- const body = asString(args['body'], '');
383
- if (!body) {
384
- return {
385
- content: [{ type: 'text', text: 'body is required' }],
386
- isError: true,
387
- };
388
- }
389
- const description =
390
- typeof args['description'] === 'string'
391
- ? args['description']
392
- : undefined;
393
- const skillArgs = extractSkillArguments(body);
394
- const skill = {
395
- name,
396
- description,
397
- arguments: skillArgs.length > 0 ? skillArgs : undefined,
398
- body,
399
- };
400
- const json = serializeSkillContent(skill);
401
- const result = await client.addSection({
402
- sectionType: 'skill',
403
- content: json,
404
- title: name,
405
- description,
406
- });
407
- return {
408
- content: [
409
- {
410
- type: 'text',
411
- text: JSON.stringify({ kbid: result.kbid, name }),
412
- },
413
- ],
414
- };
415
- }
416
-
417
- async function handleSkillList(
418
- client: McpWorkerClient,
419
- ): Promise<ToolCallResult> {
420
- const records = await client.listByType('skill');
421
- const items = records.map((r) => {
422
- let argumentCount = 0;
423
- try {
424
- const parsed = JSON.parse(r.content) as Record<
425
- string,
426
- unknown
427
- >;
428
- if (Array.isArray(parsed['arguments'])) {
429
- argumentCount = parsed['arguments'].length;
430
- }
431
- } catch {
432
- // ignore parse errors
433
- }
434
- return {
435
- kbid: r.kbid,
436
- name: r.title,
437
- description: r.description,
438
- argumentCount,
439
- };
440
- });
441
- return {
442
- content: [
443
- {
444
- type: 'text',
445
- text: JSON.stringify(items, null, 2),
446
- },
447
- ],
448
- };
449
- }
450
-
451
- async function handleSkillGet(
452
- client: McpWorkerClient,
453
- args: Record<string, unknown>,
454
- ): Promise<ToolCallResult> {
455
- const kbid =
456
- typeof args['kbid'] === 'string' ? args['kbid'] : undefined;
457
- const name =
458
- typeof args['name'] === 'string' ? args['name'] : undefined;
459
- if (!kbid && !name) {
460
- return {
461
- content: [
462
- {
463
- type: 'text',
464
- text: 'name or kbid is required',
465
- },
466
- ],
467
- isError: true,
468
- };
469
- }
470
- let content: string | undefined;
471
- if (kbid) {
472
- const sections = await client.readSections([kbid]);
473
- if (sections.length > 0) {
474
- content = sections[0]?.content;
475
- }
476
- }
477
- if (content === undefined && name) {
478
- const records = await client.listByType('skill');
479
- const match = records.filter((r) => r.title === name).pop();
480
- if (match) {
481
- content = match.content;
482
- }
483
- }
484
- if (content === undefined) {
485
- const identifier = kbid ?? name ?? '';
486
- return {
487
- content: [
488
- {
489
- type: 'text',
490
- text: `skill not found: ${identifier}`,
491
- },
492
- ],
493
- isError: true,
494
- };
495
- }
496
- const skill = parseSkillContent(content);
497
- return {
498
- content: [
499
- {
500
- type: 'text',
501
- text: JSON.stringify(skill, null, 2),
502
- },
503
- ],
504
- };
505
- }
506
-
507
- async function handleSkillDelete(
508
- client: McpWorkerClient,
509
- args: Record<string, unknown>,
510
- ): Promise<ToolCallResult> {
511
- const kbid = asString(args['kbid'], '');
512
- if (!kbid) {
513
- return {
514
- content: [{ type: 'text', text: 'kbid is required' }],
515
- isError: true,
516
- };
517
- }
518
- const result = await client.removeSection(kbid);
519
- return {
520
- content: [
521
- {
522
- type: 'text',
523
- text: JSON.stringify({ kbid, removed: result.removed }),
524
- },
525
- ],
526
- };
527
- }
528
-
529
- function handleAutoCaptureReview(): ToolCallResult {
530
- return {
531
- content: [
532
- {
533
- type: 'text',
534
- text: JSON.stringify({
535
- pending: [],
536
- message: 'No pending auto-captured knowledge entries.',
537
- }),
538
- },
539
- ],
540
- };
541
- }
542
-
543
- async function handleExport(
544
- client: McpWorkerClient,
545
- args: Record<string, unknown>,
546
- ): Promise<ToolCallResult> {
547
- const path =
548
- typeof args['path'] === 'string' ? args['path'] : undefined;
549
- const result = await client.export(
550
- path !== undefined ? { path } : {},
551
- );
552
- return {
553
- content: [
554
- {
555
- type: 'text',
556
- text: JSON.stringify(result),
557
- },
558
- ],
559
- };
560
- }
@@ -1,21 +0,0 @@
1
- import type { McpWorkerClient } from '../typings/mcp-client.interface.ts';
2
- import type { ToolCallResult } from '../typings/tool-call-result.model.ts';
3
-
4
- /**
5
- * Handles the `check` MCP tool call.
6
- *
7
- * Runs an integrity check on the knowledge base and returns the
8
- * report as formatted JSON.
9
- *
10
- * @param client - the worker client used to execute operations
11
- */
12
- export async function handleToolCheck(
13
- client: McpWorkerClient,
14
- ): Promise<ToolCallResult> {
15
- const report = await client.integrityCheck();
16
- return {
17
- content: [
18
- { type: 'text', text: JSON.stringify(report, null, 2) },
19
- ],
20
- };
21
- }
@@ -1,23 +0,0 @@
1
- import type { McpWorkerClient } from '../typings/mcp-client.interface.ts';
2
- import type { ToolCallResult } from '../typings/tool-call-result.model.ts';
3
- import { asStringArray } from './as-string-array.function.ts';
4
-
5
- /**
6
- * Handles the `content` MCP tool call.
7
- *
8
- * Composes a rendered Markdown document from the given identifiers
9
- * and returns the result as JSON.
10
- *
11
- * @param client - the worker client used to execute operations
12
- * @param args - tool arguments from the MCP request
13
- */
14
- export async function handleToolContent(
15
- client: McpWorkerClient,
16
- args: Record<string, unknown>,
17
- ): Promise<ToolCallResult> {
18
- const ids = asStringArray(args['ids']);
19
- const result = await client.content(ids);
20
- return {
21
- content: [{ type: 'text', text: JSON.stringify(result) }],
22
- };
23
- }
@@ -1,25 +0,0 @@
1
- import type { McpWorkerClient } from '../typings/mcp-client.interface.ts';
2
- import type { ToolCallResult } from '../typings/tool-call-result.model.ts';
3
-
4
- /**
5
- * Handles the `export` MCP tool call.
6
- *
7
- * Exports the database as a self-contained directory snapshot.
8
- * Passes the optional `path` argument when supplied.
9
- *
10
- * @param client - the worker client used to execute operations
11
- * @param args - tool arguments from the MCP request
12
- */
13
- export async function handleToolExport(
14
- client: McpWorkerClient,
15
- args: Record<string, unknown>,
16
- ): Promise<ToolCallResult> {
17
- const path =
18
- typeof args['path'] === 'string' ? args['path'] : undefined;
19
- const result = await client.export(
20
- path !== undefined ? { path } : {},
21
- );
22
- return {
23
- content: [{ type: 'text', text: JSON.stringify(result) }],
24
- };
25
- }
@@ -1,21 +0,0 @@
1
- import type { McpWorkerClient } from '../typings/mcp-client.interface.ts';
2
- import type { ToolCallResult } from '../typings/tool-call-result.model.ts';
3
-
4
- /**
5
- * Handles the `gc` MCP tool call.
6
- *
7
- * Removes unreferenced sections from the knowledge base and returns
8
- * the collection report as formatted JSON.
9
- *
10
- * @param client - the worker client used to execute operations
11
- */
12
- export async function handleToolGc(
13
- client: McpWorkerClient,
14
- ): Promise<ToolCallResult> {
15
- const report = await client.gc();
16
- return {
17
- content: [
18
- { type: 'text', text: JSON.stringify(report, null, 2) },
19
- ],
20
- };
21
- }