@dikolab/kbdb 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (468) hide show
  1. package/README.md +108 -126
  2. package/dist/chunk-BJPSPNGX.mjs +223 -0
  3. package/dist/chunk-BJPSPNGX.mjs.map +7 -0
  4. package/dist/cli.cjs +956 -319
  5. package/dist/cli.cjs.map +4 -4
  6. package/dist/cli.d.ts +9 -0
  7. package/dist/cli.mjs +840 -321
  8. package/dist/cli.mjs.map +4 -4
  9. package/dist/kbdb-worker.cjs +714 -94
  10. package/dist/kbdb-worker.cjs.map +4 -4
  11. package/dist/mod.cjs +122 -16
  12. package/dist/mod.cjs.map +3 -3
  13. package/dist/mod.d.ts +23 -2
  14. package/dist/mod.mjs +121 -16
  15. package/dist/mod.mjs.map +3 -3
  16. package/dist/src/shared/cli/functions/dispatch-command.function.d.ts +2 -1
  17. package/dist/src/shared/cli/functions/find-db.function.d.ts +7 -8
  18. package/dist/src/shared/cli/functions/handle-mcp.function.d.ts +1 -1
  19. package/dist/src/shared/cli/functions/parse-args.function.d.ts +4 -3
  20. package/dist/src/shared/cli/functions/resolve-kbid-prefix.function.d.ts +27 -0
  21. package/dist/src/shared/cli/functions/resolve-raw-db-path.function.d.ts +10 -0
  22. package/dist/src/shared/cli/functions/run-cli.function.d.ts +3 -1
  23. package/dist/src/shared/cli/functions/run-content.function.d.ts +8 -3
  24. package/dist/src/shared/cli/functions/run-import.function.d.ts +27 -0
  25. package/dist/src/shared/cli/functions/run-recall.function.d.ts +10 -4
  26. package/dist/src/shared/cli/functions/run-search.function.d.ts +7 -0
  27. package/dist/src/shared/cli/functions/run-unlearn.function.d.ts +9 -4
  28. package/dist/src/shared/cli/functions/run-worker-restart.function.d.ts +11 -0
  29. package/dist/src/shared/cli/functions/run-worker-stop.function.d.ts +11 -0
  30. package/dist/src/shared/cli/index.d.ts +2 -0
  31. package/dist/src/shared/cli/typings/cli-deps.interface.d.ts +4 -1
  32. package/dist/src/shared/cli/typings/cli-options.interface.d.ts +17 -0
  33. package/dist/src/shared/cli/typings/dispatch-client.type.d.ts +2 -1
  34. package/dist/src/shared/cli/typings/search-display.model.d.ts +6 -0
  35. package/dist/src/shared/embedding/classes/api-embedding-provider.class.d.ts +33 -0
  36. package/dist/src/shared/embedding/classes/onnx-embedding-provider.class.d.ts +33 -0
  37. package/dist/src/shared/embedding/functions/append-vector-entry.function.d.ts +14 -0
  38. package/dist/src/shared/embedding/functions/create-embedding-provider.function.d.ts +12 -0
  39. package/dist/src/shared/embedding/functions/detect-stale-vectors.function.d.ts +16 -0
  40. package/dist/src/shared/embedding/functions/parse-api-embedding-response.function.d.ts +11 -0
  41. package/dist/src/shared/embedding/functions/rebuild-vectors.function.d.ts +15 -0
  42. package/dist/src/shared/embedding/functions/scan-semantic-contradictions.function.d.ts +13 -0
  43. package/dist/src/shared/embedding/index.d.ts +7 -0
  44. package/dist/src/shared/embedding/typings/semantic-contradiction.model.d.ts +21 -0
  45. package/dist/src/shared/embedding/typings/stale-vectors-report.model.d.ts +16 -0
  46. package/dist/src/shared/mcp/classes/mcp-server.class.d.ts +22 -2
  47. package/dist/src/shared/mcp/functions/create-mcp-server.function.d.ts +6 -1
  48. package/dist/src/shared/mcp/functions/has-sampling-capability.function.d.ts +8 -0
  49. package/dist/src/shared/mcp/functions/run-auto-capture.function.d.ts +26 -0
  50. package/dist/src/shared/mcp/typings/mcp-client.interface.d.ts +2 -0
  51. package/dist/src/shared/mcp/typings/mcp-integrity-check-result.model.d.ts +24 -0
  52. package/dist/src/shared/mcp/typings/mcp-worker-client.interface.d.ts +3 -1
  53. package/dist/src/shared/version/constants/version.constant.d.ts +1 -1
  54. package/dist/src/shared/wasm-codec/typings/paged-search-result.model.d.ts +2 -0
  55. package/dist/src/shared/worker-client/classes/worker-client.class.d.ts +31 -1
  56. package/dist/src/shared/worker-client/constants/request-timeout.constant.d.ts +2 -0
  57. package/dist/src/shared/worker-client/constants/retry-defaults.constant.d.ts +2 -0
  58. package/dist/src/shared/worker-client/functions/get-or-create-client.function.d.ts +20 -0
  59. package/dist/src/shared/worker-client/functions/retry-on-timeout.function.d.ts +17 -0
  60. package/dist/src/shared/worker-client/index.d.ts +4 -1
  61. package/dist/src/shared/worker-client/typings/import-result.model.d.ts +16 -0
  62. package/dist/src/shared/worker-client/typings/integrity-check-result.model.d.ts +24 -0
  63. package/dist/src/shared/worker-client/typings/search-params.model.d.ts +4 -0
  64. package/dist/src/shared/worker-client/typings/search-result.model.d.ts +6 -0
  65. package/dist/src/shared/worker-client/typings/worker-client-options.interface.d.ts +7 -0
  66. package/dist/src/shared/worker-daemon/classes/worker-daemon.class.d.ts +5 -0
  67. package/dist/src/shared/worker-daemon/functions/create-ipc-server.function.d.ts +11 -11
  68. package/dist/src/shared/worker-daemon/functions/embed-after-learn.function.d.ts +13 -0
  69. package/dist/src/shared/worker-daemon/functions/handle-hybrid-search.function.d.ts +44 -0
  70. package/dist/src/shared/worker-daemon/functions/handle-import.function.d.ts +14 -0
  71. package/dist/src/shared/worker-daemon/functions/handle-read-ops.function.d.ts +7 -1
  72. package/dist/src/shared/worker-daemon/functions/handle-write-ops.function.d.ts +9 -4
  73. package/dist/src/shared/worker-daemon/typings/handler-context.interface.d.ts +3 -0
  74. package/dist/wasm/fs-database/kbdb_fs_database.d.ts +16 -85
  75. package/dist/wasm/fs-database/kbdb_fs_database.js +16 -85
  76. package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  77. package/dist/wasm/kb-worker/kbdb_worker.d.ts +20 -115
  78. package/dist/wasm/kb-worker/kbdb_worker.js +20 -115
  79. package/dist/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  80. package/dist/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  81. package/dist/worker.d.ts +8 -0
  82. package/dist/worker.mjs +606 -102
  83. package/dist/worker.mjs.map +4 -4
  84. package/docs/details/README.md +4 -0
  85. package/docs/details/agent-tooling.md +122 -0
  86. package/docs/details/cli.md +78 -12
  87. package/docs/details/knowledge-base.md +173 -0
  88. package/docs/details/library-api.md +42 -2
  89. package/docs/details/mcp-server.md +39 -8
  90. package/docs/details/search-and-ranking.md +56 -0
  91. package/docs/goals/cli.md +110 -34
  92. package/docs/goals/mcp.md +22 -19
  93. package/docs/goals/query-parser.md +8 -0
  94. package/docs/goals/worker-client.md +62 -1
  95. package/docs/goals/worker-daemon.md +52 -10
  96. package/docs/modules/typescript/cli.md +1 -1
  97. package/docs/modules/typescript/shared/cli/functions.md +116 -13
  98. package/docs/modules/typescript/shared/cli/module.md +33 -20
  99. package/docs/modules/typescript/shared/cli/typings.md +4 -0
  100. package/docs/modules/typescript/shared/embedding/functions.md +104 -25
  101. package/docs/modules/typescript/shared/mcp/module.md +1 -1
  102. package/docs/modules/typescript/shared/mcp/typings.md +8 -1
  103. package/docs/modules/typescript/shared/worker-client/module.md +9 -1
  104. package/docs/modules/typescript/shared/worker-client/typings.md +3 -0
  105. package/docs/modules/typescript/shared/worker-daemon/module.md +6 -3
  106. package/docs/overview.md +43 -22
  107. package/docs/release-notes/0.3.1.md +10 -0
  108. package/docs/release-notes/0.3.2.md +64 -0
  109. package/docs/release-notes/0.4.0.md +80 -0
  110. package/docs/release-notes/README.md +2 -0
  111. package/mod.ts +33 -15
  112. package/package.json +11 -10
  113. package/dist/chunk-JG2UCKLI.mjs +0 -95
  114. package/dist/chunk-JG2UCKLI.mjs.map +0 -7
  115. package/src/cli.ts +0 -71
  116. package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +0 -62
  117. package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +0 -15
  118. package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +0 -27
  119. package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +0 -50
  120. package/src/shared/auto-capture/index.ts +0 -7
  121. package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +0 -13
  122. package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +0 -13
  123. package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +0 -7
  124. package/src/shared/cli/constants/defaults.constant.ts +0 -19
  125. package/src/shared/cli/constants/global-help.constant.ts +0 -73
  126. package/src/shared/cli/constants/help-text.constant.ts +0 -4
  127. package/src/shared/cli/constants/leaf-help.constant.ts +0 -219
  128. package/src/shared/cli/constants/memory-protocol-body.constant.ts +0 -39
  129. package/src/shared/cli/constants/query-guidance-body.constant.ts +0 -37
  130. package/src/shared/cli/constants/subcommand-help.constant.ts +0 -195
  131. package/src/shared/cli/functions/collect-files.function.ts +0 -55
  132. package/src/shared/cli/functions/compute-section-kbid.function.ts +0 -49
  133. package/src/shared/cli/functions/dispatch-command.function.ts +0 -390
  134. package/src/shared/cli/functions/ensure-db.function.ts +0 -21
  135. package/src/shared/cli/functions/error-to-message.function.ts +0 -9
  136. package/src/shared/cli/functions/find-db.function.ts +0 -20
  137. package/src/shared/cli/functions/format-mcp-output.function.ts +0 -41
  138. package/src/shared/cli/functions/format-output.function.ts +0 -95
  139. package/src/shared/cli/functions/format-text-output.function.ts +0 -42
  140. package/src/shared/cli/functions/generate-group-help.function.ts +0 -41
  141. package/src/shared/cli/functions/generate-help.function.ts +0 -654
  142. package/src/shared/cli/functions/handle-data-command.function.ts +0 -67
  143. package/src/shared/cli/functions/handle-mcp.function.ts +0 -56
  144. package/src/shared/cli/functions/handle-migrate.function.ts +0 -64
  145. package/src/shared/cli/functions/hydrate-search-previews.function.ts +0 -29
  146. package/src/shared/cli/functions/install-default-skills.function.ts +0 -296
  147. package/src/shared/cli/functions/is-stdin-tty.function.ts +0 -12
  148. package/src/shared/cli/functions/parse-args.function.ts +0 -156
  149. package/src/shared/cli/functions/prompt-user.function.ts +0 -36
  150. package/src/shared/cli/functions/resolve-skill-names.function.ts +0 -43
  151. package/src/shared/cli/functions/run-agent-create.function.ts +0 -114
  152. package/src/shared/cli/functions/run-agent-delete.function.ts +0 -47
  153. package/src/shared/cli/functions/run-agent-get.function.ts +0 -166
  154. package/src/shared/cli/functions/run-agent-list.function.ts +0 -58
  155. package/src/shared/cli/functions/run-check.function.ts +0 -159
  156. package/src/shared/cli/functions/run-cli.function.ts +0 -299
  157. package/src/shared/cli/functions/run-content.function.ts +0 -47
  158. package/src/shared/cli/functions/run-db-init.function.ts +0 -44
  159. package/src/shared/cli/functions/run-db-migrate.function.ts +0 -40
  160. package/src/shared/cli/functions/run-export.function.ts +0 -40
  161. package/src/shared/cli/functions/run-gc.function.ts +0 -51
  162. package/src/shared/cli/functions/run-init.function.ts +0 -93
  163. package/src/shared/cli/functions/run-learn.function.ts +0 -223
  164. package/src/shared/cli/functions/run-migrate.function.ts +0 -85
  165. package/src/shared/cli/functions/run-rebuild.function.ts +0 -47
  166. package/src/shared/cli/functions/run-recall.function.ts +0 -66
  167. package/src/shared/cli/functions/run-search.function.ts +0 -133
  168. package/src/shared/cli/functions/run-skill-delete.function.ts +0 -47
  169. package/src/shared/cli/functions/run-skill-get.function.ts +0 -90
  170. package/src/shared/cli/functions/run-skill-learn.function.ts +0 -70
  171. package/src/shared/cli/functions/run-skill-list.function.ts +0 -74
  172. package/src/shared/cli/functions/run-status.function.ts +0 -29
  173. package/src/shared/cli/functions/run-unlearn.function.ts +0 -58
  174. package/src/shared/cli/functions/version-gate.function.ts +0 -44
  175. package/src/shared/cli/functions/wrap-command.function.ts +0 -34
  176. package/src/shared/cli/index.ts +0 -55
  177. package/src/shared/cli/typings/agent-create-client.interface.ts +0 -47
  178. package/src/shared/cli/typings/agent-get-client.interface.ts +0 -39
  179. package/src/shared/cli/typings/check-client.interface.ts +0 -66
  180. package/src/shared/cli/typings/cli-deps.interface.ts +0 -54
  181. package/src/shared/cli/typings/cli-options.interface.ts +0 -72
  182. package/src/shared/cli/typings/command-result.model.ts +0 -15
  183. package/src/shared/cli/typings/disconnectable-client.interface.ts +0 -29
  184. package/src/shared/cli/typings/dispatch-client.type.ts +0 -46
  185. package/src/shared/cli/typings/learn-client.interface.ts +0 -53
  186. package/src/shared/cli/typings/learn-io.interface.ts +0 -5
  187. package/src/shared/cli/typings/learn-result.model.ts +0 -27
  188. package/src/shared/cli/typings/search-client.interface.ts +0 -73
  189. package/src/shared/cli/typings/search-display.model.ts +0 -54
  190. package/src/shared/dir-resolver/functions/join-path.function.ts +0 -13
  191. package/src/shared/dir-resolver/functions/resolve-base-dir.function.ts +0 -25
  192. package/src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts +0 -5
  193. package/src/shared/dir-resolver/functions/resolve-worker-script.function.ts +0 -13
  194. package/src/shared/dir-resolver/index.ts +0 -11
  195. package/src/shared/dir-resolver/typings/base-dir.interface.ts +0 -4
  196. package/src/shared/embedding/classes/null-embedding-provider.class.ts +0 -29
  197. package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +0 -17
  198. package/src/shared/embedding/functions/build-vector-index.function.ts +0 -79
  199. package/src/shared/embedding/functions/cosine-similarity.function.ts +0 -31
  200. package/src/shared/embedding/functions/detect-near-duplicates.function.ts +0 -69
  201. package/src/shared/embedding/functions/jaccard-coefficient.function.ts +0 -26
  202. package/src/shared/embedding/functions/read-vector-index-meta.function.ts +0 -44
  203. package/src/shared/embedding/functions/rrf-fuse.function.ts +0 -33
  204. package/src/shared/embedding/functions/search-vectors.function.ts +0 -59
  205. package/src/shared/embedding/index.ts +0 -20
  206. package/src/shared/embedding/typings/embedding-config.interface.ts +0 -23
  207. package/src/shared/embedding/typings/embedding-provider.interface.ts +0 -25
  208. package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +0 -25
  209. package/src/shared/embedding/typings/near-duplicate-result.model.ts +0 -26
  210. package/src/shared/embedding/typings/vector-index-entry.model.ts +0 -13
  211. package/src/shared/embedding/typings/vector-index-meta.model.ts +0 -14
  212. package/src/shared/embedding/typings/vector-search-result.model.ts +0 -8
  213. package/src/shared/hash/functions/compute-sha256.ts +0 -17
  214. package/src/shared/hash/index.ts +0 -1
  215. package/src/shared/mcp/classes/mcp-server.class.ts +0 -480
  216. package/src/shared/mcp/constants/mcp-error-codes.constant.ts +0 -30
  217. package/src/shared/mcp/constants/tool-agent-create.constant.ts +0 -39
  218. package/src/shared/mcp/constants/tool-agent-delete.constant.ts +0 -26
  219. package/src/shared/mcp/constants/tool-agent-get.constant.ts +0 -24
  220. package/src/shared/mcp/constants/tool-agent-list.constant.ts +0 -18
  221. package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +0 -32
  222. package/src/shared/mcp/constants/tool-check.constant.ts +0 -21
  223. package/src/shared/mcp/constants/tool-content.constant.ts +0 -29
  224. package/src/shared/mcp/constants/tool-export.constant.ts +0 -27
  225. package/src/shared/mcp/constants/tool-gc.constant.ts +0 -21
  226. package/src/shared/mcp/constants/tool-learn.constant.ts +0 -58
  227. package/src/shared/mcp/constants/tool-rebuild.constant.ts +0 -21
  228. package/src/shared/mcp/constants/tool-recall.constant.ts +0 -36
  229. package/src/shared/mcp/constants/tool-retrieve.constant.ts +0 -31
  230. package/src/shared/mcp/constants/tool-search.constant.ts +0 -51
  231. package/src/shared/mcp/constants/tool-skill-delete.constant.ts +0 -24
  232. package/src/shared/mcp/constants/tool-skill-get.constant.ts +0 -27
  233. package/src/shared/mcp/constants/tool-skill-learn.constant.ts +0 -37
  234. package/src/shared/mcp/constants/tool-skill-list.constant.ts +0 -18
  235. package/src/shared/mcp/constants/tool-status.constant.ts +0 -20
  236. package/src/shared/mcp/constants/tool-unlearn.constant.ts +0 -25
  237. package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +0 -11
  238. package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +0 -17
  239. package/src/shared/mcp/functions/as-string-array.function.ts +0 -15
  240. package/src/shared/mcp/functions/as-string.function.ts +0 -10
  241. package/src/shared/mcp/functions/build-skills-text.function.ts +0 -43
  242. package/src/shared/mcp/functions/create-mcp-server.function.ts +0 -14
  243. package/src/shared/mcp/functions/create-prompt-definitions.function.ts +0 -102
  244. package/src/shared/mcp/functions/create-resource-templates.function.ts +0 -23
  245. package/src/shared/mcp/functions/create-tool-definitions.function.ts +0 -530
  246. package/src/shared/mcp/functions/extract-skill-arguments.function.ts +0 -27
  247. package/src/shared/mcp/functions/handle-agent-create.function.ts +0 -116
  248. package/src/shared/mcp/functions/handle-agent-delete.function.ts +0 -50
  249. package/src/shared/mcp/functions/handle-agent-get.function.ts +0 -160
  250. package/src/shared/mcp/functions/handle-agent-list.function.ts +0 -50
  251. package/src/shared/mcp/functions/handle-agent-prompt.function.ts +0 -68
  252. package/src/shared/mcp/functions/handle-completion.function.ts +0 -114
  253. package/src/shared/mcp/functions/handle-mcp-request.function.ts +0 -202
  254. package/src/shared/mcp/functions/handle-prompt-get.function.ts +0 -220
  255. package/src/shared/mcp/functions/handle-recall.function.ts +0 -66
  256. package/src/shared/mcp/functions/handle-resource-read.function.ts +0 -56
  257. package/src/shared/mcp/functions/handle-roots-list.function.ts +0 -29
  258. package/src/shared/mcp/functions/handle-skill-prompt.function.ts +0 -44
  259. package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +0 -24
  260. package/src/shared/mcp/functions/handle-tool-call.function.ts +0 -560
  261. package/src/shared/mcp/functions/handle-tool-check.function.ts +0 -21
  262. package/src/shared/mcp/functions/handle-tool-content.function.ts +0 -23
  263. package/src/shared/mcp/functions/handle-tool-export.function.ts +0 -25
  264. package/src/shared/mcp/functions/handle-tool-gc.function.ts +0 -21
  265. package/src/shared/mcp/functions/handle-tool-learn.function.ts +0 -69
  266. package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +0 -21
  267. package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +0 -40
  268. package/src/shared/mcp/functions/handle-tool-search.function.ts +0 -47
  269. package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +0 -34
  270. package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +0 -59
  271. package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +0 -61
  272. package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +0 -39
  273. package/src/shared/mcp/functions/handle-tool-status.function.ts +0 -21
  274. package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +0 -24
  275. package/src/shared/mcp/functions/parse-agent-meta.function.ts +0 -27
  276. package/src/shared/mcp/functions/parse-skill-arguments.function.ts +0 -36
  277. package/src/shared/mcp/functions/parse-skill-content.function.ts +0 -38
  278. package/src/shared/mcp/functions/read-agent-meta.function.ts +0 -41
  279. package/src/shared/mcp/functions/resolve-skill-refs.function.ts +0 -50
  280. package/src/shared/mcp/functions/run-startup-health-check.function.ts +0 -34
  281. package/src/shared/mcp/functions/serialize-skill-content.function.ts +0 -12
  282. package/src/shared/mcp/functions/should-emit-log.function.ts +0 -38
  283. package/src/shared/mcp/index.ts +0 -28
  284. package/src/shared/mcp/typings/agent-types.interface.ts +0 -39
  285. package/src/shared/mcp/typings/log-types.interface.ts +0 -26
  286. package/src/shared/mcp/typings/mcp-capabilities.interface.ts +0 -16
  287. package/src/shared/mcp/typings/mcp-client.interface.ts +0 -317
  288. package/src/shared/mcp/typings/mcp-completion.interface.ts +0 -45
  289. package/src/shared/mcp/typings/mcp-content-result.model.ts +0 -9
  290. package/src/shared/mcp/typings/mcp-export-result.model.ts +0 -11
  291. package/src/shared/mcp/typings/mcp-gc-result.model.ts +0 -15
  292. package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +0 -17
  293. package/src/shared/mcp/typings/mcp-integrity-error.model.ts +0 -15
  294. package/src/shared/mcp/typings/mcp-notification.interface.ts +0 -9
  295. package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +0 -9
  296. package/src/shared/mcp/typings/mcp-request.interface.ts +0 -11
  297. package/src/shared/mcp/typings/mcp-resource-result.interface.ts +0 -12
  298. package/src/shared/mcp/typings/mcp-resource-template.interface.ts +0 -11
  299. package/src/shared/mcp/typings/mcp-response.interface.ts +0 -18
  300. package/src/shared/mcp/typings/mcp-server-info.interface.ts +0 -7
  301. package/src/shared/mcp/typings/mcp-server-state.interface.ts +0 -17
  302. package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +0 -32
  303. package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +0 -16
  304. package/src/shared/mcp/typings/mcp-tool-result.interface.ts +0 -19
  305. package/src/shared/mcp/typings/mcp-types.interface.ts +0 -158
  306. package/src/shared/mcp/typings/mcp-worker-client.interface.ts +0 -243
  307. package/src/shared/mcp/typings/prompt-types.interface.ts +0 -39
  308. package/src/shared/mcp/typings/remove-section-result.model.ts +0 -10
  309. package/src/shared/mcp/typings/sampling-types.interface.ts +0 -48
  310. package/src/shared/mcp/typings/skill-types.interface.ts +0 -29
  311. package/src/shared/mcp/typings/tool-call-result.model.ts +0 -18
  312. package/src/shared/mod.ts +0 -1
  313. package/src/shared/platform/functions/get-ipc-path.function.ts +0 -19
  314. package/src/shared/platform/functions/get-tmpdir.function.ts +0 -8
  315. package/src/shared/platform/functions/is-process-alive.function.ts +0 -17
  316. package/src/shared/platform/index.ts +0 -3
  317. package/src/shared/runtime/functions/detect-runtime.ts +0 -14
  318. package/src/shared/runtime/functions/get-args.ts +0 -16
  319. package/src/shared/runtime/index.ts +0 -3
  320. package/src/shared/runtime/typings/runtime.ts +0 -2
  321. package/src/shared/sync/functions/build-import-report.function.ts +0 -40
  322. package/src/shared/sync/functions/parse-export-entry.function.ts +0 -45
  323. package/src/shared/sync/functions/resolve-conflict.function.ts +0 -31
  324. package/src/shared/sync/functions/serialize-export-entry.function.ts +0 -18
  325. package/src/shared/sync/index.ts +0 -9
  326. package/src/shared/sync/typings/conflict-resolution.type.ts +0 -8
  327. package/src/shared/sync/typings/export-entry.interface.ts +0 -13
  328. package/src/shared/sync/typings/export-options.interface.ts +0 -9
  329. package/src/shared/sync/typings/import-options.interface.ts +0 -7
  330. package/src/shared/sync/typings/import-report.interface.ts +0 -15
  331. package/src/shared/version/constants/version.constant.ts +0 -2
  332. package/src/shared/version/index.ts +0 -1
  333. package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +0 -112
  334. package/src/shared/wasm-codec/functions/decode-compose-output.function.ts +0 -16
  335. package/src/shared/wasm-codec/functions/decode-document-manifest-list.function.ts +0 -70
  336. package/src/shared/wasm-codec/functions/decode-document-manifest.function.ts +0 -87
  337. package/src/shared/wasm-codec/functions/decode-f32.function.ts +0 -16
  338. package/src/shared/wasm-codec/functions/decode-key-value-text.function.ts +0 -15
  339. package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +0 -86
  340. package/src/shared/wasm-codec/functions/decode-option-string.function.ts +0 -24
  341. package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +0 -59
  342. package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +0 -52
  343. package/src/shared/wasm-codec/functions/decode-recall-result.function.ts +0 -267
  344. package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +0 -43
  345. package/src/shared/wasm-codec/functions/decode-remove-flag.function.ts +0 -3
  346. package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +0 -194
  347. package/src/shared/wasm-codec/functions/decode-section-match.function.ts +0 -80
  348. package/src/shared/wasm-codec/functions/decode-section-record-list.function.ts +0 -20
  349. package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +0 -75
  350. package/src/shared/wasm-codec/functions/decode-section-record.function.ts +0 -85
  351. package/src/shared/wasm-codec/functions/decode-section-records.function.ts +0 -249
  352. package/src/shared/wasm-codec/functions/decode-section-type.function.ts +0 -30
  353. package/src/shared/wasm-codec/functions/decode-string.function.ts +0 -22
  354. package/src/shared/wasm-codec/functions/decode-u32.function.ts +0 -16
  355. package/src/shared/wasm-codec/functions/decode-u64.function.ts +0 -16
  356. package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +0 -31
  357. package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +0 -102
  358. package/src/shared/wasm-codec/functions/encode-group-params.function.ts +0 -28
  359. package/src/shared/wasm-codec/functions/encode-identifier-list.function.ts +0 -17
  360. package/src/shared/wasm-codec/functions/encode-kbid-list.function.ts +0 -17
  361. package/src/shared/wasm-codec/functions/encode-option-string.function.ts +0 -14
  362. package/src/shared/wasm-codec/functions/encode-recall-params.function.ts +0 -68
  363. package/src/shared/wasm-codec/functions/encode-search-params.function.ts +0 -12
  364. package/src/shared/wasm-codec/functions/encode-section-type.function.ts +0 -18
  365. package/src/shared/wasm-codec/functions/encode-string.function.ts +0 -9
  366. package/src/shared/wasm-codec/functions/encode-type-filter-param.function.ts +0 -13
  367. package/src/shared/wasm-codec/functions/encode-u32.function.ts +0 -5
  368. package/src/shared/wasm-codec/functions/encode-update-section-params.function.ts +0 -16
  369. package/src/shared/wasm-codec/index.ts +0 -49
  370. package/src/shared/wasm-codec/typings/add-section-input.model.ts +0 -45
  371. package/src/shared/wasm-codec/typings/add-section-result.model.ts +0 -28
  372. package/src/shared/wasm-codec/typings/document-manifest.model.ts +0 -20
  373. package/src/shared/wasm-codec/typings/document-section.model.ts +0 -12
  374. package/src/shared/wasm-codec/typings/item-decoder.type.ts +0 -10
  375. package/src/shared/wasm-codec/typings/near-duplicate.model.ts +0 -16
  376. package/src/shared/wasm-codec/typings/paged-search-result.model.ts +0 -22
  377. package/src/shared/wasm-codec/typings/section-match.model.ts +0 -31
  378. package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +0 -38
  379. package/src/shared/wasm-codec/typings/section-record.model.ts +0 -66
  380. package/src/shared/wasm-codec/typings/section-type-result.model.ts +0 -12
  381. package/src/shared/worker-client/classes/worker-client.class.ts +0 -466
  382. package/src/shared/worker-client/functions/compute-context-id.function.ts +0 -18
  383. package/src/shared/worker-client/functions/create-worker-client.function.ts +0 -70
  384. package/src/shared/worker-client/functions/discover-daemon.function.ts +0 -47
  385. package/src/shared/worker-client/functions/handle-ipc-data.function.ts +0 -49
  386. package/src/shared/worker-client/functions/resolve-db-path.function.ts +0 -21
  387. package/src/shared/worker-client/functions/send-ipc-request.function.ts +0 -39
  388. package/src/shared/worker-client/functions/spawn-daemon.function.ts +0 -35
  389. package/src/shared/worker-client/functions/wait-for-daemon.function.ts +0 -34
  390. package/src/shared/worker-client/index.ts +0 -44
  391. package/src/shared/worker-client/typings/add-section-result.model.ts +0 -39
  392. package/src/shared/worker-client/typings/content-result.model.ts +0 -12
  393. package/src/shared/worker-client/typings/daemon-info.model.ts +0 -7
  394. package/src/shared/worker-client/typings/export-result.model.ts +0 -14
  395. package/src/shared/worker-client/typings/gc-result.model.ts +0 -18
  396. package/src/shared/worker-client/typings/integrity-check-result.model.ts +0 -43
  397. package/src/shared/worker-client/typings/json-rpc-response.interface.ts +0 -17
  398. package/src/shared/worker-client/typings/migrate-result.model.ts +0 -11
  399. package/src/shared/worker-client/typings/pending-call.interface.ts +0 -7
  400. package/src/shared/worker-client/typings/rebuild-result.model.ts +0 -12
  401. package/src/shared/worker-client/typings/recall-document.model.ts +0 -16
  402. package/src/shared/worker-client/typings/recall-params.model.ts +0 -15
  403. package/src/shared/worker-client/typings/recall-reference.model.ts +0 -32
  404. package/src/shared/worker-client/typings/recall-result.model.ts +0 -98
  405. package/src/shared/worker-client/typings/recall-sibling.model.ts +0 -11
  406. package/src/shared/worker-client/typings/recall-single-result.model.ts +0 -41
  407. package/src/shared/worker-client/typings/remove-section-result.model.ts +0 -7
  408. package/src/shared/worker-client/typings/search-params.model.ts +0 -14
  409. package/src/shared/worker-client/typings/search-result.model.ts +0 -43
  410. package/src/shared/worker-client/typings/section.model.ts +0 -43
  411. package/src/shared/worker-client/typings/status-result.model.ts +0 -14
  412. package/src/shared/worker-client/typings/version-status.model.ts +0 -28
  413. package/src/shared/worker-client/typings/worker-client-error.interface.ts +0 -8
  414. package/src/shared/worker-client/typings/worker-client-options.interface.ts +0 -30
  415. package/src/shared/worker-daemon/classes/ipc-error.class.ts +0 -22
  416. package/src/shared/worker-daemon/classes/worker-daemon.class.ts +0 -1291
  417. package/src/shared/worker-daemon/constants/daemon-defaults.constant.ts +0 -29
  418. package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +0 -69
  419. package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +0 -16
  420. package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +0 -54
  421. package/src/shared/worker-daemon/functions/check-preconditions.function.ts +0 -28
  422. package/src/shared/worker-daemon/functions/create-host-imports.function.ts +0 -328
  423. package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +0 -87
  424. package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +0 -33
  425. package/src/shared/worker-daemon/functions/dispatch-request.function.ts +0 -190
  426. package/src/shared/worker-daemon/functions/handle-check-version.function.ts +0 -74
  427. package/src/shared/worker-daemon/functions/handle-config-method.function.ts +0 -27
  428. package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +0 -236
  429. package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +0 -257
  430. package/src/shared/worker-daemon/functions/load-wasm-modules.function.ts +0 -95
  431. package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +0 -51
  432. package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +0 -20
  433. package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +0 -38
  434. package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +0 -104
  435. package/src/shared/worker-daemon/functions/read-config.function.ts +0 -83
  436. package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +0 -55
  437. package/src/shared/worker-daemon/functions/run-worker.function.ts +0 -57
  438. package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +0 -92
  439. package/src/shared/worker-daemon/functions/start-daemon.function.ts +0 -74
  440. package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +0 -144
  441. package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +0 -41
  442. package/src/shared/worker-daemon/functions/write-lock.function.ts +0 -49
  443. package/src/shared/worker-daemon/index.ts +0 -16
  444. package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +0 -16
  445. package/src/shared/worker-daemon/typings/daemon-config.interface.ts +0 -20
  446. package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +0 -22
  447. package/src/shared/worker-daemon/typings/handler-context.interface.ts +0 -19
  448. package/src/shared/worker-daemon/typings/ipc-handler.interface.ts +0 -39
  449. package/src/shared/worker-daemon/typings/memory-ref.interface.ts +0 -13
  450. package/src/shared/worker-daemon/typings/wasm-fn.type.ts +0 -2
  451. package/src/shared/worker-daemon/typings/wasm-modules.interface.ts +0 -7
  452. package/src/shared/worker-daemon/typings/write-lock.interface.ts +0 -13
  453. package/src/wasm/fs-database/kbdb_fs_database.d.ts +0 -259
  454. package/src/wasm/fs-database/kbdb_fs_database.js +0 -515
  455. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  456. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +0 -35
  457. package/src/wasm/fs-database/package.json +0 -13
  458. package/src/wasm/kb-worker/kbdb_worker.d.ts +0 -650
  459. package/src/wasm/kb-worker/kbdb_worker.js +0 -1181
  460. package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  461. package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +0 -77
  462. package/src/wasm/kb-worker/package.json +0 -13
  463. package/src/wasm/query-parser/kbdb_query_parser.d.ts +0 -195
  464. package/src/wasm/query-parser/kbdb_query_parser.js +0 -403
  465. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  466. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm.d.ts +0 -25
  467. package/src/wasm/query-parser/package.json +0 -13
  468. package/src/worker.ts +0 -42
@@ -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
- }