@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.
- package/README.md +108 -126
- package/dist/chunk-BJPSPNGX.mjs +223 -0
- package/dist/chunk-BJPSPNGX.mjs.map +7 -0
- package/dist/cli.cjs +956 -319
- package/dist/cli.cjs.map +4 -4
- package/dist/cli.d.ts +9 -0
- package/dist/cli.mjs +840 -321
- package/dist/cli.mjs.map +4 -4
- package/dist/kbdb-worker.cjs +714 -94
- package/dist/kbdb-worker.cjs.map +4 -4
- package/dist/mod.cjs +122 -16
- package/dist/mod.cjs.map +3 -3
- package/dist/mod.d.ts +23 -2
- package/dist/mod.mjs +121 -16
- package/dist/mod.mjs.map +3 -3
- package/dist/src/shared/cli/functions/dispatch-command.function.d.ts +2 -1
- package/dist/src/shared/cli/functions/find-db.function.d.ts +7 -8
- package/dist/src/shared/cli/functions/handle-mcp.function.d.ts +1 -1
- package/dist/src/shared/cli/functions/parse-args.function.d.ts +4 -3
- package/dist/src/shared/cli/functions/resolve-kbid-prefix.function.d.ts +27 -0
- package/dist/src/shared/cli/functions/resolve-raw-db-path.function.d.ts +10 -0
- package/dist/src/shared/cli/functions/run-cli.function.d.ts +3 -1
- package/dist/src/shared/cli/functions/run-content.function.d.ts +8 -3
- package/dist/src/shared/cli/functions/run-import.function.d.ts +27 -0
- package/dist/src/shared/cli/functions/run-recall.function.d.ts +10 -4
- package/dist/src/shared/cli/functions/run-search.function.d.ts +7 -0
- package/dist/src/shared/cli/functions/run-unlearn.function.d.ts +9 -4
- package/dist/src/shared/cli/functions/run-worker-restart.function.d.ts +11 -0
- package/dist/src/shared/cli/functions/run-worker-stop.function.d.ts +11 -0
- package/dist/src/shared/cli/index.d.ts +2 -0
- package/dist/src/shared/cli/typings/cli-deps.interface.d.ts +4 -1
- package/dist/src/shared/cli/typings/cli-options.interface.d.ts +17 -0
- package/dist/src/shared/cli/typings/dispatch-client.type.d.ts +2 -1
- package/dist/src/shared/cli/typings/search-display.model.d.ts +6 -0
- package/dist/src/shared/embedding/classes/api-embedding-provider.class.d.ts +33 -0
- package/dist/src/shared/embedding/classes/onnx-embedding-provider.class.d.ts +33 -0
- package/dist/src/shared/embedding/functions/append-vector-entry.function.d.ts +14 -0
- package/dist/src/shared/embedding/functions/create-embedding-provider.function.d.ts +12 -0
- package/dist/src/shared/embedding/functions/detect-stale-vectors.function.d.ts +16 -0
- package/dist/src/shared/embedding/functions/parse-api-embedding-response.function.d.ts +11 -0
- package/dist/src/shared/embedding/functions/rebuild-vectors.function.d.ts +15 -0
- package/dist/src/shared/embedding/functions/scan-semantic-contradictions.function.d.ts +13 -0
- package/dist/src/shared/embedding/index.d.ts +7 -0
- package/dist/src/shared/embedding/typings/semantic-contradiction.model.d.ts +21 -0
- package/dist/src/shared/embedding/typings/stale-vectors-report.model.d.ts +16 -0
- package/dist/src/shared/mcp/classes/mcp-server.class.d.ts +22 -2
- package/dist/src/shared/mcp/functions/create-mcp-server.function.d.ts +6 -1
- package/dist/src/shared/mcp/functions/has-sampling-capability.function.d.ts +8 -0
- package/dist/src/shared/mcp/functions/run-auto-capture.function.d.ts +26 -0
- package/dist/src/shared/mcp/typings/mcp-client.interface.d.ts +2 -0
- package/dist/src/shared/mcp/typings/mcp-integrity-check-result.model.d.ts +24 -0
- package/dist/src/shared/mcp/typings/mcp-worker-client.interface.d.ts +3 -1
- package/dist/src/shared/version/constants/version.constant.d.ts +1 -1
- package/dist/src/shared/wasm-codec/typings/paged-search-result.model.d.ts +2 -0
- package/dist/src/shared/worker-client/classes/worker-client.class.d.ts +31 -1
- package/dist/src/shared/worker-client/constants/request-timeout.constant.d.ts +2 -0
- package/dist/src/shared/worker-client/constants/retry-defaults.constant.d.ts +2 -0
- package/dist/src/shared/worker-client/functions/get-or-create-client.function.d.ts +20 -0
- package/dist/src/shared/worker-client/functions/retry-on-timeout.function.d.ts +17 -0
- package/dist/src/shared/worker-client/index.d.ts +4 -1
- package/dist/src/shared/worker-client/typings/import-result.model.d.ts +16 -0
- package/dist/src/shared/worker-client/typings/integrity-check-result.model.d.ts +24 -0
- package/dist/src/shared/worker-client/typings/search-params.model.d.ts +4 -0
- package/dist/src/shared/worker-client/typings/search-result.model.d.ts +6 -0
- package/dist/src/shared/worker-client/typings/worker-client-options.interface.d.ts +7 -0
- package/dist/src/shared/worker-daemon/classes/worker-daemon.class.d.ts +5 -0
- package/dist/src/shared/worker-daemon/functions/create-ipc-server.function.d.ts +11 -11
- package/dist/src/shared/worker-daemon/functions/embed-after-learn.function.d.ts +13 -0
- package/dist/src/shared/worker-daemon/functions/handle-hybrid-search.function.d.ts +44 -0
- package/dist/src/shared/worker-daemon/functions/handle-import.function.d.ts +14 -0
- package/dist/src/shared/worker-daemon/functions/handle-read-ops.function.d.ts +7 -1
- package/dist/src/shared/worker-daemon/functions/handle-write-ops.function.d.ts +9 -4
- package/dist/src/shared/worker-daemon/typings/handler-context.interface.d.ts +3 -0
- package/dist/wasm/fs-database/kbdb_fs_database.d.ts +16 -85
- package/dist/wasm/fs-database/kbdb_fs_database.js +16 -85
- package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
- package/dist/wasm/kb-worker/kbdb_worker.d.ts +20 -115
- package/dist/wasm/kb-worker/kbdb_worker.js +20 -115
- package/dist/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
- package/dist/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
- package/dist/worker.d.ts +8 -0
- package/dist/worker.mjs +606 -102
- package/dist/worker.mjs.map +4 -4
- package/docs/details/README.md +4 -0
- package/docs/details/agent-tooling.md +122 -0
- package/docs/details/cli.md +78 -12
- package/docs/details/knowledge-base.md +173 -0
- package/docs/details/library-api.md +42 -2
- package/docs/details/mcp-server.md +39 -8
- package/docs/details/search-and-ranking.md +56 -0
- package/docs/goals/cli.md +110 -34
- package/docs/goals/mcp.md +22 -19
- package/docs/goals/query-parser.md +8 -0
- package/docs/goals/worker-client.md +62 -1
- package/docs/goals/worker-daemon.md +52 -10
- package/docs/modules/typescript/cli.md +1 -1
- package/docs/modules/typescript/shared/cli/functions.md +116 -13
- package/docs/modules/typescript/shared/cli/module.md +33 -20
- package/docs/modules/typescript/shared/cli/typings.md +4 -0
- package/docs/modules/typescript/shared/embedding/functions.md +104 -25
- package/docs/modules/typescript/shared/mcp/module.md +1 -1
- package/docs/modules/typescript/shared/mcp/typings.md +8 -1
- package/docs/modules/typescript/shared/worker-client/module.md +9 -1
- package/docs/modules/typescript/shared/worker-client/typings.md +3 -0
- package/docs/modules/typescript/shared/worker-daemon/module.md +6 -3
- package/docs/overview.md +43 -22
- package/docs/release-notes/0.3.1.md +10 -0
- package/docs/release-notes/0.3.2.md +64 -0
- package/docs/release-notes/0.4.0.md +80 -0
- package/docs/release-notes/README.md +2 -0
- package/mod.ts +33 -15
- package/package.json +11 -10
- package/dist/chunk-JG2UCKLI.mjs +0 -95
- package/dist/chunk-JG2UCKLI.mjs.map +0 -7
- package/src/cli.ts +0 -71
- package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +0 -62
- package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +0 -15
- package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +0 -27
- package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +0 -50
- package/src/shared/auto-capture/index.ts +0 -7
- package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +0 -13
- package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +0 -13
- package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +0 -7
- package/src/shared/cli/constants/defaults.constant.ts +0 -19
- package/src/shared/cli/constants/global-help.constant.ts +0 -73
- package/src/shared/cli/constants/help-text.constant.ts +0 -4
- package/src/shared/cli/constants/leaf-help.constant.ts +0 -219
- package/src/shared/cli/constants/memory-protocol-body.constant.ts +0 -39
- package/src/shared/cli/constants/query-guidance-body.constant.ts +0 -37
- package/src/shared/cli/constants/subcommand-help.constant.ts +0 -195
- package/src/shared/cli/functions/collect-files.function.ts +0 -55
- package/src/shared/cli/functions/compute-section-kbid.function.ts +0 -49
- package/src/shared/cli/functions/dispatch-command.function.ts +0 -390
- package/src/shared/cli/functions/ensure-db.function.ts +0 -21
- package/src/shared/cli/functions/error-to-message.function.ts +0 -9
- package/src/shared/cli/functions/find-db.function.ts +0 -20
- package/src/shared/cli/functions/format-mcp-output.function.ts +0 -41
- package/src/shared/cli/functions/format-output.function.ts +0 -95
- package/src/shared/cli/functions/format-text-output.function.ts +0 -42
- package/src/shared/cli/functions/generate-group-help.function.ts +0 -41
- package/src/shared/cli/functions/generate-help.function.ts +0 -654
- package/src/shared/cli/functions/handle-data-command.function.ts +0 -67
- package/src/shared/cli/functions/handle-mcp.function.ts +0 -56
- package/src/shared/cli/functions/handle-migrate.function.ts +0 -64
- package/src/shared/cli/functions/hydrate-search-previews.function.ts +0 -29
- package/src/shared/cli/functions/install-default-skills.function.ts +0 -296
- package/src/shared/cli/functions/is-stdin-tty.function.ts +0 -12
- package/src/shared/cli/functions/parse-args.function.ts +0 -156
- package/src/shared/cli/functions/prompt-user.function.ts +0 -36
- package/src/shared/cli/functions/resolve-skill-names.function.ts +0 -43
- package/src/shared/cli/functions/run-agent-create.function.ts +0 -114
- package/src/shared/cli/functions/run-agent-delete.function.ts +0 -47
- package/src/shared/cli/functions/run-agent-get.function.ts +0 -166
- package/src/shared/cli/functions/run-agent-list.function.ts +0 -58
- package/src/shared/cli/functions/run-check.function.ts +0 -159
- package/src/shared/cli/functions/run-cli.function.ts +0 -299
- package/src/shared/cli/functions/run-content.function.ts +0 -47
- package/src/shared/cli/functions/run-db-init.function.ts +0 -44
- package/src/shared/cli/functions/run-db-migrate.function.ts +0 -40
- package/src/shared/cli/functions/run-export.function.ts +0 -40
- package/src/shared/cli/functions/run-gc.function.ts +0 -51
- package/src/shared/cli/functions/run-init.function.ts +0 -93
- package/src/shared/cli/functions/run-learn.function.ts +0 -223
- package/src/shared/cli/functions/run-migrate.function.ts +0 -85
- package/src/shared/cli/functions/run-rebuild.function.ts +0 -47
- package/src/shared/cli/functions/run-recall.function.ts +0 -66
- package/src/shared/cli/functions/run-search.function.ts +0 -133
- package/src/shared/cli/functions/run-skill-delete.function.ts +0 -47
- package/src/shared/cli/functions/run-skill-get.function.ts +0 -90
- package/src/shared/cli/functions/run-skill-learn.function.ts +0 -70
- package/src/shared/cli/functions/run-skill-list.function.ts +0 -74
- package/src/shared/cli/functions/run-status.function.ts +0 -29
- package/src/shared/cli/functions/run-unlearn.function.ts +0 -58
- package/src/shared/cli/functions/version-gate.function.ts +0 -44
- package/src/shared/cli/functions/wrap-command.function.ts +0 -34
- package/src/shared/cli/index.ts +0 -55
- package/src/shared/cli/typings/agent-create-client.interface.ts +0 -47
- package/src/shared/cli/typings/agent-get-client.interface.ts +0 -39
- package/src/shared/cli/typings/check-client.interface.ts +0 -66
- package/src/shared/cli/typings/cli-deps.interface.ts +0 -54
- package/src/shared/cli/typings/cli-options.interface.ts +0 -72
- package/src/shared/cli/typings/command-result.model.ts +0 -15
- package/src/shared/cli/typings/disconnectable-client.interface.ts +0 -29
- package/src/shared/cli/typings/dispatch-client.type.ts +0 -46
- package/src/shared/cli/typings/learn-client.interface.ts +0 -53
- package/src/shared/cli/typings/learn-io.interface.ts +0 -5
- package/src/shared/cli/typings/learn-result.model.ts +0 -27
- package/src/shared/cli/typings/search-client.interface.ts +0 -73
- package/src/shared/cli/typings/search-display.model.ts +0 -54
- package/src/shared/dir-resolver/functions/join-path.function.ts +0 -13
- package/src/shared/dir-resolver/functions/resolve-base-dir.function.ts +0 -25
- package/src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts +0 -5
- package/src/shared/dir-resolver/functions/resolve-worker-script.function.ts +0 -13
- package/src/shared/dir-resolver/index.ts +0 -11
- package/src/shared/dir-resolver/typings/base-dir.interface.ts +0 -4
- package/src/shared/embedding/classes/null-embedding-provider.class.ts +0 -29
- package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +0 -17
- package/src/shared/embedding/functions/build-vector-index.function.ts +0 -79
- package/src/shared/embedding/functions/cosine-similarity.function.ts +0 -31
- package/src/shared/embedding/functions/detect-near-duplicates.function.ts +0 -69
- package/src/shared/embedding/functions/jaccard-coefficient.function.ts +0 -26
- package/src/shared/embedding/functions/read-vector-index-meta.function.ts +0 -44
- package/src/shared/embedding/functions/rrf-fuse.function.ts +0 -33
- package/src/shared/embedding/functions/search-vectors.function.ts +0 -59
- package/src/shared/embedding/index.ts +0 -20
- package/src/shared/embedding/typings/embedding-config.interface.ts +0 -23
- package/src/shared/embedding/typings/embedding-provider.interface.ts +0 -25
- package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +0 -25
- package/src/shared/embedding/typings/near-duplicate-result.model.ts +0 -26
- package/src/shared/embedding/typings/vector-index-entry.model.ts +0 -13
- package/src/shared/embedding/typings/vector-index-meta.model.ts +0 -14
- package/src/shared/embedding/typings/vector-search-result.model.ts +0 -8
- package/src/shared/hash/functions/compute-sha256.ts +0 -17
- package/src/shared/hash/index.ts +0 -1
- package/src/shared/mcp/classes/mcp-server.class.ts +0 -480
- package/src/shared/mcp/constants/mcp-error-codes.constant.ts +0 -30
- package/src/shared/mcp/constants/tool-agent-create.constant.ts +0 -39
- package/src/shared/mcp/constants/tool-agent-delete.constant.ts +0 -26
- package/src/shared/mcp/constants/tool-agent-get.constant.ts +0 -24
- package/src/shared/mcp/constants/tool-agent-list.constant.ts +0 -18
- package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +0 -32
- package/src/shared/mcp/constants/tool-check.constant.ts +0 -21
- package/src/shared/mcp/constants/tool-content.constant.ts +0 -29
- package/src/shared/mcp/constants/tool-export.constant.ts +0 -27
- package/src/shared/mcp/constants/tool-gc.constant.ts +0 -21
- package/src/shared/mcp/constants/tool-learn.constant.ts +0 -58
- package/src/shared/mcp/constants/tool-rebuild.constant.ts +0 -21
- package/src/shared/mcp/constants/tool-recall.constant.ts +0 -36
- package/src/shared/mcp/constants/tool-retrieve.constant.ts +0 -31
- package/src/shared/mcp/constants/tool-search.constant.ts +0 -51
- package/src/shared/mcp/constants/tool-skill-delete.constant.ts +0 -24
- package/src/shared/mcp/constants/tool-skill-get.constant.ts +0 -27
- package/src/shared/mcp/constants/tool-skill-learn.constant.ts +0 -37
- package/src/shared/mcp/constants/tool-skill-list.constant.ts +0 -18
- package/src/shared/mcp/constants/tool-status.constant.ts +0 -20
- package/src/shared/mcp/constants/tool-unlearn.constant.ts +0 -25
- package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +0 -11
- package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +0 -17
- package/src/shared/mcp/functions/as-string-array.function.ts +0 -15
- package/src/shared/mcp/functions/as-string.function.ts +0 -10
- package/src/shared/mcp/functions/build-skills-text.function.ts +0 -43
- package/src/shared/mcp/functions/create-mcp-server.function.ts +0 -14
- package/src/shared/mcp/functions/create-prompt-definitions.function.ts +0 -102
- package/src/shared/mcp/functions/create-resource-templates.function.ts +0 -23
- package/src/shared/mcp/functions/create-tool-definitions.function.ts +0 -530
- package/src/shared/mcp/functions/extract-skill-arguments.function.ts +0 -27
- package/src/shared/mcp/functions/handle-agent-create.function.ts +0 -116
- package/src/shared/mcp/functions/handle-agent-delete.function.ts +0 -50
- package/src/shared/mcp/functions/handle-agent-get.function.ts +0 -160
- package/src/shared/mcp/functions/handle-agent-list.function.ts +0 -50
- package/src/shared/mcp/functions/handle-agent-prompt.function.ts +0 -68
- package/src/shared/mcp/functions/handle-completion.function.ts +0 -114
- package/src/shared/mcp/functions/handle-mcp-request.function.ts +0 -202
- package/src/shared/mcp/functions/handle-prompt-get.function.ts +0 -220
- package/src/shared/mcp/functions/handle-recall.function.ts +0 -66
- package/src/shared/mcp/functions/handle-resource-read.function.ts +0 -56
- package/src/shared/mcp/functions/handle-roots-list.function.ts +0 -29
- package/src/shared/mcp/functions/handle-skill-prompt.function.ts +0 -44
- package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +0 -24
- package/src/shared/mcp/functions/handle-tool-call.function.ts +0 -560
- package/src/shared/mcp/functions/handle-tool-check.function.ts +0 -21
- package/src/shared/mcp/functions/handle-tool-content.function.ts +0 -23
- package/src/shared/mcp/functions/handle-tool-export.function.ts +0 -25
- package/src/shared/mcp/functions/handle-tool-gc.function.ts +0 -21
- package/src/shared/mcp/functions/handle-tool-learn.function.ts +0 -69
- package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +0 -21
- package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +0 -40
- package/src/shared/mcp/functions/handle-tool-search.function.ts +0 -47
- package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +0 -34
- package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +0 -59
- package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +0 -61
- package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +0 -39
- package/src/shared/mcp/functions/handle-tool-status.function.ts +0 -21
- package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +0 -24
- package/src/shared/mcp/functions/parse-agent-meta.function.ts +0 -27
- package/src/shared/mcp/functions/parse-skill-arguments.function.ts +0 -36
- package/src/shared/mcp/functions/parse-skill-content.function.ts +0 -38
- package/src/shared/mcp/functions/read-agent-meta.function.ts +0 -41
- package/src/shared/mcp/functions/resolve-skill-refs.function.ts +0 -50
- package/src/shared/mcp/functions/run-startup-health-check.function.ts +0 -34
- package/src/shared/mcp/functions/serialize-skill-content.function.ts +0 -12
- package/src/shared/mcp/functions/should-emit-log.function.ts +0 -38
- package/src/shared/mcp/index.ts +0 -28
- package/src/shared/mcp/typings/agent-types.interface.ts +0 -39
- package/src/shared/mcp/typings/log-types.interface.ts +0 -26
- package/src/shared/mcp/typings/mcp-capabilities.interface.ts +0 -16
- package/src/shared/mcp/typings/mcp-client.interface.ts +0 -317
- package/src/shared/mcp/typings/mcp-completion.interface.ts +0 -45
- package/src/shared/mcp/typings/mcp-content-result.model.ts +0 -9
- package/src/shared/mcp/typings/mcp-export-result.model.ts +0 -11
- package/src/shared/mcp/typings/mcp-gc-result.model.ts +0 -15
- package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +0 -17
- package/src/shared/mcp/typings/mcp-integrity-error.model.ts +0 -15
- package/src/shared/mcp/typings/mcp-notification.interface.ts +0 -9
- package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +0 -9
- package/src/shared/mcp/typings/mcp-request.interface.ts +0 -11
- package/src/shared/mcp/typings/mcp-resource-result.interface.ts +0 -12
- package/src/shared/mcp/typings/mcp-resource-template.interface.ts +0 -11
- package/src/shared/mcp/typings/mcp-response.interface.ts +0 -18
- package/src/shared/mcp/typings/mcp-server-info.interface.ts +0 -7
- package/src/shared/mcp/typings/mcp-server-state.interface.ts +0 -17
- package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +0 -32
- package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +0 -16
- package/src/shared/mcp/typings/mcp-tool-result.interface.ts +0 -19
- package/src/shared/mcp/typings/mcp-types.interface.ts +0 -158
- package/src/shared/mcp/typings/mcp-worker-client.interface.ts +0 -243
- package/src/shared/mcp/typings/prompt-types.interface.ts +0 -39
- package/src/shared/mcp/typings/remove-section-result.model.ts +0 -10
- package/src/shared/mcp/typings/sampling-types.interface.ts +0 -48
- package/src/shared/mcp/typings/skill-types.interface.ts +0 -29
- package/src/shared/mcp/typings/tool-call-result.model.ts +0 -18
- package/src/shared/mod.ts +0 -1
- package/src/shared/platform/functions/get-ipc-path.function.ts +0 -19
- package/src/shared/platform/functions/get-tmpdir.function.ts +0 -8
- package/src/shared/platform/functions/is-process-alive.function.ts +0 -17
- package/src/shared/platform/index.ts +0 -3
- package/src/shared/runtime/functions/detect-runtime.ts +0 -14
- package/src/shared/runtime/functions/get-args.ts +0 -16
- package/src/shared/runtime/index.ts +0 -3
- package/src/shared/runtime/typings/runtime.ts +0 -2
- package/src/shared/sync/functions/build-import-report.function.ts +0 -40
- package/src/shared/sync/functions/parse-export-entry.function.ts +0 -45
- package/src/shared/sync/functions/resolve-conflict.function.ts +0 -31
- package/src/shared/sync/functions/serialize-export-entry.function.ts +0 -18
- package/src/shared/sync/index.ts +0 -9
- package/src/shared/sync/typings/conflict-resolution.type.ts +0 -8
- package/src/shared/sync/typings/export-entry.interface.ts +0 -13
- package/src/shared/sync/typings/export-options.interface.ts +0 -9
- package/src/shared/sync/typings/import-options.interface.ts +0 -7
- package/src/shared/sync/typings/import-report.interface.ts +0 -15
- package/src/shared/version/constants/version.constant.ts +0 -2
- package/src/shared/version/index.ts +0 -1
- package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +0 -112
- package/src/shared/wasm-codec/functions/decode-compose-output.function.ts +0 -16
- package/src/shared/wasm-codec/functions/decode-document-manifest-list.function.ts +0 -70
- package/src/shared/wasm-codec/functions/decode-document-manifest.function.ts +0 -87
- package/src/shared/wasm-codec/functions/decode-f32.function.ts +0 -16
- package/src/shared/wasm-codec/functions/decode-key-value-text.function.ts +0 -15
- package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +0 -86
- package/src/shared/wasm-codec/functions/decode-option-string.function.ts +0 -24
- package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +0 -59
- package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +0 -52
- package/src/shared/wasm-codec/functions/decode-recall-result.function.ts +0 -267
- package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +0 -43
- package/src/shared/wasm-codec/functions/decode-remove-flag.function.ts +0 -3
- package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +0 -194
- package/src/shared/wasm-codec/functions/decode-section-match.function.ts +0 -80
- package/src/shared/wasm-codec/functions/decode-section-record-list.function.ts +0 -20
- package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +0 -75
- package/src/shared/wasm-codec/functions/decode-section-record.function.ts +0 -85
- package/src/shared/wasm-codec/functions/decode-section-records.function.ts +0 -249
- package/src/shared/wasm-codec/functions/decode-section-type.function.ts +0 -30
- package/src/shared/wasm-codec/functions/decode-string.function.ts +0 -22
- package/src/shared/wasm-codec/functions/decode-u32.function.ts +0 -16
- package/src/shared/wasm-codec/functions/decode-u64.function.ts +0 -16
- package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +0 -31
- package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +0 -102
- package/src/shared/wasm-codec/functions/encode-group-params.function.ts +0 -28
- package/src/shared/wasm-codec/functions/encode-identifier-list.function.ts +0 -17
- package/src/shared/wasm-codec/functions/encode-kbid-list.function.ts +0 -17
- package/src/shared/wasm-codec/functions/encode-option-string.function.ts +0 -14
- package/src/shared/wasm-codec/functions/encode-recall-params.function.ts +0 -68
- package/src/shared/wasm-codec/functions/encode-search-params.function.ts +0 -12
- package/src/shared/wasm-codec/functions/encode-section-type.function.ts +0 -18
- package/src/shared/wasm-codec/functions/encode-string.function.ts +0 -9
- package/src/shared/wasm-codec/functions/encode-type-filter-param.function.ts +0 -13
- package/src/shared/wasm-codec/functions/encode-u32.function.ts +0 -5
- package/src/shared/wasm-codec/functions/encode-update-section-params.function.ts +0 -16
- package/src/shared/wasm-codec/index.ts +0 -49
- package/src/shared/wasm-codec/typings/add-section-input.model.ts +0 -45
- package/src/shared/wasm-codec/typings/add-section-result.model.ts +0 -28
- package/src/shared/wasm-codec/typings/document-manifest.model.ts +0 -20
- package/src/shared/wasm-codec/typings/document-section.model.ts +0 -12
- package/src/shared/wasm-codec/typings/item-decoder.type.ts +0 -10
- package/src/shared/wasm-codec/typings/near-duplicate.model.ts +0 -16
- package/src/shared/wasm-codec/typings/paged-search-result.model.ts +0 -22
- package/src/shared/wasm-codec/typings/section-match.model.ts +0 -31
- package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +0 -38
- package/src/shared/wasm-codec/typings/section-record.model.ts +0 -66
- package/src/shared/wasm-codec/typings/section-type-result.model.ts +0 -12
- package/src/shared/worker-client/classes/worker-client.class.ts +0 -466
- package/src/shared/worker-client/functions/compute-context-id.function.ts +0 -18
- package/src/shared/worker-client/functions/create-worker-client.function.ts +0 -70
- package/src/shared/worker-client/functions/discover-daemon.function.ts +0 -47
- package/src/shared/worker-client/functions/handle-ipc-data.function.ts +0 -49
- package/src/shared/worker-client/functions/resolve-db-path.function.ts +0 -21
- package/src/shared/worker-client/functions/send-ipc-request.function.ts +0 -39
- package/src/shared/worker-client/functions/spawn-daemon.function.ts +0 -35
- package/src/shared/worker-client/functions/wait-for-daemon.function.ts +0 -34
- package/src/shared/worker-client/index.ts +0 -44
- package/src/shared/worker-client/typings/add-section-result.model.ts +0 -39
- package/src/shared/worker-client/typings/content-result.model.ts +0 -12
- package/src/shared/worker-client/typings/daemon-info.model.ts +0 -7
- package/src/shared/worker-client/typings/export-result.model.ts +0 -14
- package/src/shared/worker-client/typings/gc-result.model.ts +0 -18
- package/src/shared/worker-client/typings/integrity-check-result.model.ts +0 -43
- package/src/shared/worker-client/typings/json-rpc-response.interface.ts +0 -17
- package/src/shared/worker-client/typings/migrate-result.model.ts +0 -11
- package/src/shared/worker-client/typings/pending-call.interface.ts +0 -7
- package/src/shared/worker-client/typings/rebuild-result.model.ts +0 -12
- package/src/shared/worker-client/typings/recall-document.model.ts +0 -16
- package/src/shared/worker-client/typings/recall-params.model.ts +0 -15
- package/src/shared/worker-client/typings/recall-reference.model.ts +0 -32
- package/src/shared/worker-client/typings/recall-result.model.ts +0 -98
- package/src/shared/worker-client/typings/recall-sibling.model.ts +0 -11
- package/src/shared/worker-client/typings/recall-single-result.model.ts +0 -41
- package/src/shared/worker-client/typings/remove-section-result.model.ts +0 -7
- package/src/shared/worker-client/typings/search-params.model.ts +0 -14
- package/src/shared/worker-client/typings/search-result.model.ts +0 -43
- package/src/shared/worker-client/typings/section.model.ts +0 -43
- package/src/shared/worker-client/typings/status-result.model.ts +0 -14
- package/src/shared/worker-client/typings/version-status.model.ts +0 -28
- package/src/shared/worker-client/typings/worker-client-error.interface.ts +0 -8
- package/src/shared/worker-client/typings/worker-client-options.interface.ts +0 -30
- package/src/shared/worker-daemon/classes/ipc-error.class.ts +0 -22
- package/src/shared/worker-daemon/classes/worker-daemon.class.ts +0 -1291
- package/src/shared/worker-daemon/constants/daemon-defaults.constant.ts +0 -29
- package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +0 -69
- package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +0 -16
- package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +0 -54
- package/src/shared/worker-daemon/functions/check-preconditions.function.ts +0 -28
- package/src/shared/worker-daemon/functions/create-host-imports.function.ts +0 -328
- package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +0 -87
- package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +0 -33
- package/src/shared/worker-daemon/functions/dispatch-request.function.ts +0 -190
- package/src/shared/worker-daemon/functions/handle-check-version.function.ts +0 -74
- package/src/shared/worker-daemon/functions/handle-config-method.function.ts +0 -27
- package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +0 -236
- package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +0 -257
- package/src/shared/worker-daemon/functions/load-wasm-modules.function.ts +0 -95
- package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +0 -51
- package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +0 -20
- package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +0 -38
- package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +0 -104
- package/src/shared/worker-daemon/functions/read-config.function.ts +0 -83
- package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +0 -55
- package/src/shared/worker-daemon/functions/run-worker.function.ts +0 -57
- package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +0 -92
- package/src/shared/worker-daemon/functions/start-daemon.function.ts +0 -74
- package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +0 -144
- package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +0 -41
- package/src/shared/worker-daemon/functions/write-lock.function.ts +0 -49
- package/src/shared/worker-daemon/index.ts +0 -16
- package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +0 -16
- package/src/shared/worker-daemon/typings/daemon-config.interface.ts +0 -20
- package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +0 -22
- package/src/shared/worker-daemon/typings/handler-context.interface.ts +0 -19
- package/src/shared/worker-daemon/typings/ipc-handler.interface.ts +0 -39
- package/src/shared/worker-daemon/typings/memory-ref.interface.ts +0 -13
- package/src/shared/worker-daemon/typings/wasm-fn.type.ts +0 -2
- package/src/shared/worker-daemon/typings/wasm-modules.interface.ts +0 -7
- package/src/shared/worker-daemon/typings/write-lock.interface.ts +0 -13
- package/src/wasm/fs-database/kbdb_fs_database.d.ts +0 -259
- package/src/wasm/fs-database/kbdb_fs_database.js +0 -515
- package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
- package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +0 -35
- package/src/wasm/fs-database/package.json +0 -13
- package/src/wasm/kb-worker/kbdb_worker.d.ts +0 -650
- package/src/wasm/kb-worker/kbdb_worker.js +0 -1181
- package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
- package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +0 -77
- package/src/wasm/kb-worker/package.json +0 -13
- package/src/wasm/query-parser/kbdb_query_parser.d.ts +0 -195
- package/src/wasm/query-parser/kbdb_query_parser.js +0 -403
- package/src/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
- package/src/wasm/query-parser/kbdb_query_parser_bg.wasm.d.ts +0 -25
- package/src/wasm/query-parser/package.json +0 -13
- package/src/worker.ts +0 -42
|
@@ -1,195 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Detailed help texts keyed by `"group-subcommand"`.
|
|
3
|
-
*
|
|
4
|
-
* Used by `generateHelp` to display per-subcommand documentation
|
|
5
|
-
* when the user runs `kbdb <group> <subcommand> --help`. Falls
|
|
6
|
-
* back to group-level help when the key is absent.
|
|
7
|
-
*/
|
|
8
|
-
export const SUBCOMMAND_HELP: Readonly<Record<string, string>> = {
|
|
9
|
-
'db-init':
|
|
10
|
-
`kbdb db init - Initialise a new .kbdb directory\n` +
|
|
11
|
-
`\n` +
|
|
12
|
-
`Usage: kbdb db init [options]\n` +
|
|
13
|
-
`\n` +
|
|
14
|
-
`Options:\n` +
|
|
15
|
-
` --db <path> Path to create .kbdb in\n` +
|
|
16
|
-
` (default: current directory)\n` +
|
|
17
|
-
` -h, --help Show this help message\n` +
|
|
18
|
-
`\n` +
|
|
19
|
-
`Output:\n` +
|
|
20
|
-
` JSON { path, created }\n` +
|
|
21
|
-
`\n` +
|
|
22
|
-
`Examples:\n` +
|
|
23
|
-
` kbdb db init\n` +
|
|
24
|
-
` kbdb db init --db /path/to/project\n`,
|
|
25
|
-
|
|
26
|
-
'db-migrate':
|
|
27
|
-
`kbdb db migrate - Migrate database to current` +
|
|
28
|
-
` format\n` +
|
|
29
|
-
`\n` +
|
|
30
|
-
`Usage: kbdb db migrate [options]\n` +
|
|
31
|
-
`\n` +
|
|
32
|
-
`Options:\n` +
|
|
33
|
-
` --db <path> Path containing .kbdb\n` +
|
|
34
|
-
` (default: current directory)\n` +
|
|
35
|
-
` -h, --help Show this help message\n` +
|
|
36
|
-
`\n` +
|
|
37
|
-
`Output:\n` +
|
|
38
|
-
` JSON MigrateResult or "already up to date"\n` +
|
|
39
|
-
`\n` +
|
|
40
|
-
`Examples:\n` +
|
|
41
|
-
` kbdb db migrate\n` +
|
|
42
|
-
` kbdb db migrate --db /path/to/project\n`,
|
|
43
|
-
|
|
44
|
-
'skill-learn':
|
|
45
|
-
`kbdb skill learn - Create a new skill definition\n` +
|
|
46
|
-
`\n` +
|
|
47
|
-
`Usage: kbdb skill learn [options]` +
|
|
48
|
-
` --name <n> --body <file|->\n` +
|
|
49
|
-
`\n` +
|
|
50
|
-
`Options:\n` +
|
|
51
|
-
` --name <name> Skill name (required)\n` +
|
|
52
|
-
` --description <d> Skill description\n` +
|
|
53
|
-
` --body <file|-> Template body file or` +
|
|
54
|
-
` stdin (required)\n` +
|
|
55
|
-
` --db <path> Path to .kbdb directory\n` +
|
|
56
|
-
`\n` +
|
|
57
|
-
`Output:\n` +
|
|
58
|
-
` JSON { kbid, name, arguments }\n` +
|
|
59
|
-
`\n` +
|
|
60
|
-
`Examples:\n` +
|
|
61
|
-
` kbdb skill learn --name summarize` +
|
|
62
|
-
` --body prompt.txt\n` +
|
|
63
|
-
` cat body.txt | kbdb skill learn` +
|
|
64
|
-
` --name my-skill --body -\n`,
|
|
65
|
-
|
|
66
|
-
'skill-list':
|
|
67
|
-
`kbdb skill list - List all skills\n` +
|
|
68
|
-
`\n` +
|
|
69
|
-
`Usage: kbdb skill list [options]\n` +
|
|
70
|
-
`\n` +
|
|
71
|
-
`Options:\n` +
|
|
72
|
-
` --db <path> Path to .kbdb directory\n` +
|
|
73
|
-
`\n` +
|
|
74
|
-
`Output:\n` +
|
|
75
|
-
` JSON array of { kbid, name, description,` +
|
|
76
|
-
` argumentCount }\n` +
|
|
77
|
-
`\n` +
|
|
78
|
-
`Examples:\n` +
|
|
79
|
-
` kbdb skill list\n` +
|
|
80
|
-
` kbdb skill list --db /path/to/project\n`,
|
|
81
|
-
|
|
82
|
-
'skill-get':
|
|
83
|
-
`kbdb skill get - Retrieve a skill by name` +
|
|
84
|
-
` or kbid\n` +
|
|
85
|
-
`\n` +
|
|
86
|
-
`Usage: kbdb skill get [options] <name-or-kbid>\n` +
|
|
87
|
-
`\n` +
|
|
88
|
-
`Arguments:\n` +
|
|
89
|
-
` <name-or-kbid> Skill name or 26-char` +
|
|
90
|
-
` kbid\n` +
|
|
91
|
-
`\n` +
|
|
92
|
-
`Options:\n` +
|
|
93
|
-
` --db <path> Path to .kbdb directory\n` +
|
|
94
|
-
`\n` +
|
|
95
|
-
`Output:\n` +
|
|
96
|
-
` JSON SkillDefinition object\n` +
|
|
97
|
-
`\n` +
|
|
98
|
-
`Examples:\n` +
|
|
99
|
-
` kbdb skill get summarize-document\n` +
|
|
100
|
-
` kbdb skill get abcdef1234567890abcdef1234\n`,
|
|
101
|
-
|
|
102
|
-
'skill-delete':
|
|
103
|
-
`kbdb skill delete - Remove a skill\n` +
|
|
104
|
-
`\n` +
|
|
105
|
-
`Usage: kbdb skill delete [options] <kbid>\n` +
|
|
106
|
-
`\n` +
|
|
107
|
-
`Arguments:\n` +
|
|
108
|
-
` <kbid> 26-character kbid of the` +
|
|
109
|
-
` skill to remove\n` +
|
|
110
|
-
`\n` +
|
|
111
|
-
`Options:\n` +
|
|
112
|
-
` --db <path> Path to .kbdb directory\n` +
|
|
113
|
-
`\n` +
|
|
114
|
-
`Output:\n` +
|
|
115
|
-
` JSON { kbid, removed }\n` +
|
|
116
|
-
`\n` +
|
|
117
|
-
`Examples:\n` +
|
|
118
|
-
` kbdb skill delete abcdef1234567890abcdef1234\n`,
|
|
119
|
-
|
|
120
|
-
'agent-create':
|
|
121
|
-
`kbdb agent create - Create an agent with skill` +
|
|
122
|
-
` refs\n` +
|
|
123
|
-
`\n` +
|
|
124
|
-
`Usage: kbdb agent create [options] --name <n>` +
|
|
125
|
-
` --persona <file|-> --skills <kbid,...>\n` +
|
|
126
|
-
`\n` +
|
|
127
|
-
`Options:\n` +
|
|
128
|
-
` --name <name> Agent name (required)\n` +
|
|
129
|
-
` --description <d> Agent description\n` +
|
|
130
|
-
` --persona <file|-> Persona file or stdin` +
|
|
131
|
-
` (required)\n` +
|
|
132
|
-
` --skills <kbid,...> Comma-separated skill` +
|
|
133
|
-
` kbids (required)\n` +
|
|
134
|
-
` --db <path> Path to .kbdb directory\n` +
|
|
135
|
-
`\n` +
|
|
136
|
-
`Output:\n` +
|
|
137
|
-
` JSON { docid, name, skills }\n` +
|
|
138
|
-
`\n` +
|
|
139
|
-
`Examples:\n` +
|
|
140
|
-
` kbdb agent create --name code-reviewer` +
|
|
141
|
-
` --persona ./p.txt --skills abc123\n` +
|
|
142
|
-
` cat persona.txt | kbdb agent create` +
|
|
143
|
-
` --name my-agent --persona - --skills abc123\n`,
|
|
144
|
-
|
|
145
|
-
'agent-list':
|
|
146
|
-
`kbdb agent list - List all agents\n` +
|
|
147
|
-
`\n` +
|
|
148
|
-
`Usage: kbdb agent list [options]\n` +
|
|
149
|
-
`\n` +
|
|
150
|
-
`Options:\n` +
|
|
151
|
-
` --db <path> Path to .kbdb directory\n` +
|
|
152
|
-
`\n` +
|
|
153
|
-
`Output:\n` +
|
|
154
|
-
` JSON array of { docid, name, description,` +
|
|
155
|
-
` skillCount }\n` +
|
|
156
|
-
`\n` +
|
|
157
|
-
`Examples:\n` +
|
|
158
|
-
` kbdb agent list\n` +
|
|
159
|
-
` kbdb agent list --db /path/to/project\n`,
|
|
160
|
-
|
|
161
|
-
'agent-get':
|
|
162
|
-
`kbdb agent get - Retrieve an agent by docid\n` +
|
|
163
|
-
`\n` +
|
|
164
|
-
`Usage: kbdb agent get [options] <docid>\n` +
|
|
165
|
-
`\n` +
|
|
166
|
-
`Arguments:\n` +
|
|
167
|
-
` <docid> Agent document identifier\n` +
|
|
168
|
-
`\n` +
|
|
169
|
-
`Options:\n` +
|
|
170
|
-
` --db <path> Path to .kbdb directory\n` +
|
|
171
|
-
`\n` +
|
|
172
|
-
`Output:\n` +
|
|
173
|
-
` JSON AgentDefinition object with resolved` +
|
|
174
|
-
` skills\n` +
|
|
175
|
-
`\n` +
|
|
176
|
-
`Examples:\n` +
|
|
177
|
-
` kbdb agent get agent-code-reviewer\n`,
|
|
178
|
-
|
|
179
|
-
'agent-delete':
|
|
180
|
-
`kbdb agent delete - Remove an agent\n` +
|
|
181
|
-
`\n` +
|
|
182
|
-
`Usage: kbdb agent delete [options] <docid>\n` +
|
|
183
|
-
`\n` +
|
|
184
|
-
`Arguments:\n` +
|
|
185
|
-
` <docid> Agent document identifier\n` +
|
|
186
|
-
`\n` +
|
|
187
|
-
`Options:\n` +
|
|
188
|
-
` --db <path> Path to .kbdb directory\n` +
|
|
189
|
-
`\n` +
|
|
190
|
-
`Output:\n` +
|
|
191
|
-
` JSON { docid, removed }\n` +
|
|
192
|
-
`\n` +
|
|
193
|
-
`Examples:\n` +
|
|
194
|
-
` kbdb agent delete agent-code-reviewer\n`,
|
|
195
|
-
};
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { readdirSync, statSync } from 'node:fs';
|
|
2
|
-
import { basename, extname, join } from 'node:path';
|
|
3
|
-
import { SUPPORTED_EXTENSIONS } from '../constants/defaults.constant.ts';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Resolves a single target path to a flat list of supported files.
|
|
7
|
-
*
|
|
8
|
-
* When `target` is a file, returns it wrapped in an array if its
|
|
9
|
-
* extension is in `SUPPORTED_EXTENSIONS` and it is not a dotfile;
|
|
10
|
-
* otherwise returns `[]`. When `target` is a directory, recursively
|
|
11
|
-
* collects all matching files, skipping dot-entries at every level.
|
|
12
|
-
* Returns `[]` for non-existent or inaccessible paths.
|
|
13
|
-
*
|
|
14
|
-
* @param target - file or directory path to resolve
|
|
15
|
-
* @returns flat array of absolute or relative paths to supported files
|
|
16
|
-
*/
|
|
17
|
-
export function collectFiles(target: string): string[] {
|
|
18
|
-
try {
|
|
19
|
-
const stat = statSync(target);
|
|
20
|
-
if (stat.isFile()) {
|
|
21
|
-
return isSupportedFile(target) ? [target] : [];
|
|
22
|
-
}
|
|
23
|
-
if (stat.isDirectory()) {
|
|
24
|
-
return scanDirectory(target);
|
|
25
|
-
}
|
|
26
|
-
} catch {
|
|
27
|
-
// Non-existent or inaccessible path -- skip
|
|
28
|
-
}
|
|
29
|
-
return [];
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
function scanDirectory(dir: string): string[] {
|
|
33
|
-
const files: string[] = [];
|
|
34
|
-
for (const entry of readdirSync(dir)) {
|
|
35
|
-
if (entry.startsWith('.')) continue;
|
|
36
|
-
const full = join(dir, entry);
|
|
37
|
-
try {
|
|
38
|
-
const stat = statSync(full);
|
|
39
|
-
if (stat.isDirectory()) {
|
|
40
|
-
files.push(...scanDirectory(full));
|
|
41
|
-
} else if (isSupportedFile(full)) {
|
|
42
|
-
files.push(full);
|
|
43
|
-
}
|
|
44
|
-
} catch {
|
|
45
|
-
// Skip inaccessible entries
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return files;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
function isSupportedFile(path: string): boolean {
|
|
52
|
-
if (basename(path).startsWith('.')) return false;
|
|
53
|
-
const ext = extname(path).toLowerCase();
|
|
54
|
-
return (SUPPORTED_EXTENSIONS as readonly string[]).includes(ext);
|
|
55
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { createHash } from 'node:crypto';
|
|
2
|
-
|
|
3
|
-
/** RFC 4648 base32 alphabet (upper-case, no padding). */
|
|
4
|
-
const BASE32_ALPHABET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';
|
|
5
|
-
|
|
6
|
-
function base32Encode(bytes: Uint8Array): string {
|
|
7
|
-
let result = '';
|
|
8
|
-
let bits = 0;
|
|
9
|
-
let value = 0;
|
|
10
|
-
for (const byte of bytes) {
|
|
11
|
-
value = (value << 8) | byte;
|
|
12
|
-
bits += 8;
|
|
13
|
-
while (bits >= 5) {
|
|
14
|
-
result += BASE32_ALPHABET[(value >>> (bits - 5)) & 0x1f];
|
|
15
|
-
bits -= 5;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
if (bits > 0) {
|
|
19
|
-
result += BASE32_ALPHABET[(value << (5 - bits)) & 0x1f];
|
|
20
|
-
}
|
|
21
|
-
return result.toLowerCase();
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Computes a 26-character kbid for a section using the same algorithm
|
|
26
|
-
* as the Rust engine's `hash_section`.
|
|
27
|
-
*
|
|
28
|
-
* Algorithm:
|
|
29
|
-
* 1. Build input: `"section <mime> <byteLen>\0<content>"`
|
|
30
|
-
* 2. SHA-256 hash the input
|
|
31
|
-
* 3. Take the first 16 bytes
|
|
32
|
-
* 4. Base32 encode (RFC 4648, no padding), lowercased → 26 chars
|
|
33
|
-
*
|
|
34
|
-
* @param mimeType - MIME type string (e.g. `"text/markdown"`)
|
|
35
|
-
* @param content - UTF-8 section content string
|
|
36
|
-
* @returns 26-character lowercase base32 kbid
|
|
37
|
-
*/
|
|
38
|
-
export function computeSectionKbid(
|
|
39
|
-
mimeType: string,
|
|
40
|
-
content: string,
|
|
41
|
-
): string {
|
|
42
|
-
const contentBytes = Buffer.from(content, 'utf-8');
|
|
43
|
-
const header = `section ${mimeType} ${contentBytes.length.toString()}\0`;
|
|
44
|
-
const headerBytes = Buffer.from(header, 'utf-8');
|
|
45
|
-
const input = Buffer.concat([headerBytes, contentBytes]);
|
|
46
|
-
const hash = createHash('sha256').update(input).digest();
|
|
47
|
-
const truncated = new Uint8Array(hash.buffer, 0, 16);
|
|
48
|
-
return base32Encode(truncated);
|
|
49
|
-
}
|
|
@@ -1,390 +0,0 @@
|
|
|
1
|
-
import type { CliOptions } from '../typings/cli-options.interface.ts';
|
|
2
|
-
import type { CommandResult } from '../typings/command-result.model.ts';
|
|
3
|
-
import type { PagedSearchDisplay } from '../typings/search-display.model.ts';
|
|
4
|
-
import type { LearnIO } from './run-learn.function.ts';
|
|
5
|
-
import type { SearchClient } from './run-search.function.ts';
|
|
6
|
-
import type { LearnClient } from './run-learn.function.ts';
|
|
7
|
-
import type { UnlearnClient } from './run-unlearn.function.ts';
|
|
8
|
-
import type { ContentClient } from './run-content.function.ts';
|
|
9
|
-
import type { CheckClient } from './run-check.function.ts';
|
|
10
|
-
import type { GcClient } from './run-gc.function.ts';
|
|
11
|
-
import type { RebuildClient } from './run-rebuild.function.ts';
|
|
12
|
-
import type { StatusClient } from './run-status.function.ts';
|
|
13
|
-
import type { DbMigrateClient } from './run-db-migrate.function.ts';
|
|
14
|
-
import type { SkillLearnClient } from './run-skill-learn.function.ts';
|
|
15
|
-
import type { SkillListClient } from './run-skill-list.function.ts';
|
|
16
|
-
import type { SkillGetClient } from './run-skill-get.function.ts';
|
|
17
|
-
import type { SkillDeleteClient } from './run-skill-delete.function.ts';
|
|
18
|
-
import type { AgentCreateClient } from './run-agent-create.function.ts';
|
|
19
|
-
import type { AgentListClient } from './run-agent-list.function.ts';
|
|
20
|
-
import type { AgentGetClient } from './run-agent-get.function.ts';
|
|
21
|
-
import type { AgentDeleteClient } from './run-agent-delete.function.ts';
|
|
22
|
-
import type { RecallClient } from './run-recall.function.ts';
|
|
23
|
-
import type { ExportClient } from './run-export.function.ts';
|
|
24
|
-
import { runSearch } from './run-search.function.ts';
|
|
25
|
-
import { runLearn } from './run-learn.function.ts';
|
|
26
|
-
import { runUnlearn } from './run-unlearn.function.ts';
|
|
27
|
-
import { runContent } from './run-content.function.ts';
|
|
28
|
-
import { runCheck } from './run-check.function.ts';
|
|
29
|
-
import { runGc } from './run-gc.function.ts';
|
|
30
|
-
import { runRebuild } from './run-rebuild.function.ts';
|
|
31
|
-
import { runStatus } from './run-status.function.ts';
|
|
32
|
-
import { runDbInit } from './run-db-init.function.ts';
|
|
33
|
-
import { runInit } from './run-init.function.ts';
|
|
34
|
-
import { runDbMigrate } from './run-db-migrate.function.ts';
|
|
35
|
-
import { runSkillLearn } from './run-skill-learn.function.ts';
|
|
36
|
-
import { runSkillList } from './run-skill-list.function.ts';
|
|
37
|
-
import { runSkillGet } from './run-skill-get.function.ts';
|
|
38
|
-
import { runSkillDelete } from './run-skill-delete.function.ts';
|
|
39
|
-
import { runAgentCreate } from './run-agent-create.function.ts';
|
|
40
|
-
import { runAgentList } from './run-agent-list.function.ts';
|
|
41
|
-
import { runAgentGet } from './run-agent-get.function.ts';
|
|
42
|
-
import { runAgentDelete } from './run-agent-delete.function.ts';
|
|
43
|
-
import { runRecall } from './run-recall.function.ts';
|
|
44
|
-
import { runExport } from './run-export.function.ts';
|
|
45
|
-
import { formatOutput } from './format-output.function.ts';
|
|
46
|
-
import { errorToMessage } from './error-to-message.function.ts';
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Intersection of all data-command client interfaces.
|
|
50
|
-
*
|
|
51
|
-
* Each run* function defines its own minimal interface; this
|
|
52
|
-
* intersection combines them so `dispatchCommand` can route
|
|
53
|
-
* to any command handler with full type safety.
|
|
54
|
-
*/
|
|
55
|
-
export type DispatchClient = SearchClient &
|
|
56
|
-
LearnClient &
|
|
57
|
-
UnlearnClient &
|
|
58
|
-
ContentClient &
|
|
59
|
-
CheckClient &
|
|
60
|
-
GcClient &
|
|
61
|
-
RebuildClient &
|
|
62
|
-
StatusClient &
|
|
63
|
-
DbMigrateClient &
|
|
64
|
-
SkillLearnClient &
|
|
65
|
-
SkillListClient &
|
|
66
|
-
SkillGetClient &
|
|
67
|
-
SkillDeleteClient &
|
|
68
|
-
AgentCreateClient &
|
|
69
|
-
AgentListClient &
|
|
70
|
-
AgentGetClient &
|
|
71
|
-
AgentDeleteClient &
|
|
72
|
-
RecallClient &
|
|
73
|
-
ExportClient;
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* Routes a parsed CLI command to the appropriate handler and
|
|
77
|
-
* returns a `CommandResult` without touching process globals.
|
|
78
|
-
*
|
|
79
|
-
* @param client - worker client covering all data commands
|
|
80
|
-
* @param options - parsed CLI options with command and args
|
|
81
|
-
* @param io - optional injectable I/O for learn stdin
|
|
82
|
-
*/
|
|
83
|
-
export async function dispatchCommand(
|
|
84
|
-
client: DispatchClient,
|
|
85
|
-
options: CliOptions,
|
|
86
|
-
io?: LearnIO,
|
|
87
|
-
): Promise<CommandResult> {
|
|
88
|
-
switch (options.command) {
|
|
89
|
-
case 'learn':
|
|
90
|
-
return handleLearn(client, options, io);
|
|
91
|
-
case 'unlearn':
|
|
92
|
-
return handleUnlearn(client, options);
|
|
93
|
-
case 'search':
|
|
94
|
-
return handleSearch(client, options);
|
|
95
|
-
case 'recall':
|
|
96
|
-
return handleRecall(client, options);
|
|
97
|
-
case 'content':
|
|
98
|
-
return handleContent(client, options);
|
|
99
|
-
case 'check':
|
|
100
|
-
return handleCheck(client, options);
|
|
101
|
-
case 'gc':
|
|
102
|
-
return handleGc(client, options);
|
|
103
|
-
case 'rebuild':
|
|
104
|
-
return handleRebuild(client, options);
|
|
105
|
-
case 'status':
|
|
106
|
-
return handleStatus(client, options);
|
|
107
|
-
case 'export':
|
|
108
|
-
return handleExport(client, options);
|
|
109
|
-
case 'db-init':
|
|
110
|
-
return handleDbInit(options);
|
|
111
|
-
case 'db-migrate':
|
|
112
|
-
return handleDbMigrate(client, options);
|
|
113
|
-
case 'skill-learn': {
|
|
114
|
-
const result = await runSkillLearn(client, options);
|
|
115
|
-
return result;
|
|
116
|
-
}
|
|
117
|
-
case 'skill-list': {
|
|
118
|
-
const result = await runSkillList(client, options);
|
|
119
|
-
return result;
|
|
120
|
-
}
|
|
121
|
-
case 'skill-get': {
|
|
122
|
-
const result = await runSkillGet(client, options);
|
|
123
|
-
return result;
|
|
124
|
-
}
|
|
125
|
-
case 'skill-delete': {
|
|
126
|
-
const result = await runSkillDelete(client, options);
|
|
127
|
-
return result;
|
|
128
|
-
}
|
|
129
|
-
case 'agent-create': {
|
|
130
|
-
const result = await runAgentCreate(client, options);
|
|
131
|
-
return result;
|
|
132
|
-
}
|
|
133
|
-
case 'agent-list': {
|
|
134
|
-
const result = await runAgentList(client, options);
|
|
135
|
-
return result;
|
|
136
|
-
}
|
|
137
|
-
case 'agent-get': {
|
|
138
|
-
const result = await runAgentGet(client, options);
|
|
139
|
-
return result;
|
|
140
|
-
}
|
|
141
|
-
case 'agent-delete': {
|
|
142
|
-
const result = await runAgentDelete(client, options);
|
|
143
|
-
return result;
|
|
144
|
-
}
|
|
145
|
-
default:
|
|
146
|
-
return {
|
|
147
|
-
error: `unknown command: ${options.command}`,
|
|
148
|
-
exitCode: 1,
|
|
149
|
-
};
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
async function handleLearn(
|
|
154
|
-
client: DispatchClient,
|
|
155
|
-
options: CliOptions,
|
|
156
|
-
io?: LearnIO,
|
|
157
|
-
): Promise<CommandResult> {
|
|
158
|
-
try {
|
|
159
|
-
const results = await runLearn(client, options, io);
|
|
160
|
-
return {
|
|
161
|
-
output: JSON.stringify(results, null, 2),
|
|
162
|
-
exitCode: 0,
|
|
163
|
-
};
|
|
164
|
-
} catch (err) {
|
|
165
|
-
return {
|
|
166
|
-
error: `learn failed: ${errorToMessage(err)}`,
|
|
167
|
-
exitCode: 1,
|
|
168
|
-
};
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
async function handleUnlearn(
|
|
173
|
-
client: DispatchClient,
|
|
174
|
-
options: CliOptions,
|
|
175
|
-
): Promise<CommandResult> {
|
|
176
|
-
try {
|
|
177
|
-
const results = await runUnlearn(client, options);
|
|
178
|
-
return {
|
|
179
|
-
output: JSON.stringify(results, null, 2),
|
|
180
|
-
exitCode: 0,
|
|
181
|
-
};
|
|
182
|
-
} catch (err) {
|
|
183
|
-
return {
|
|
184
|
-
error: `unlearn failed: ${errorToMessage(err)}`,
|
|
185
|
-
exitCode: 1,
|
|
186
|
-
};
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
async function handleSearch(
|
|
191
|
-
client: DispatchClient,
|
|
192
|
-
options: CliOptions,
|
|
193
|
-
): Promise<CommandResult> {
|
|
194
|
-
try {
|
|
195
|
-
const results = await runSearch(client, options);
|
|
196
|
-
if (options.content) {
|
|
197
|
-
await hydrateSearchPreviews(client, results);
|
|
198
|
-
}
|
|
199
|
-
return {
|
|
200
|
-
output: formatOutput(results, options.format),
|
|
201
|
-
exitCode: 0,
|
|
202
|
-
};
|
|
203
|
-
} catch (err) {
|
|
204
|
-
return {
|
|
205
|
-
error: `search failed: ${errorToMessage(err)}`,
|
|
206
|
-
exitCode: 1,
|
|
207
|
-
};
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
async function handleRecall(
|
|
212
|
-
client: DispatchClient,
|
|
213
|
-
options: CliOptions,
|
|
214
|
-
): Promise<CommandResult> {
|
|
215
|
-
try {
|
|
216
|
-
const result = await runRecall(client, options);
|
|
217
|
-
if ('error' in result) {
|
|
218
|
-
return {
|
|
219
|
-
error: `error: ${result.error}`,
|
|
220
|
-
exitCode: 1,
|
|
221
|
-
};
|
|
222
|
-
}
|
|
223
|
-
return {
|
|
224
|
-
output: JSON.stringify(result, null, 2),
|
|
225
|
-
exitCode: 0,
|
|
226
|
-
};
|
|
227
|
-
} catch (err) {
|
|
228
|
-
return {
|
|
229
|
-
error: `recall failed: ${errorToMessage(err)}`,
|
|
230
|
-
exitCode: 1,
|
|
231
|
-
};
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
async function handleExport(
|
|
236
|
-
client: DispatchClient,
|
|
237
|
-
options: CliOptions,
|
|
238
|
-
): Promise<CommandResult> {
|
|
239
|
-
try {
|
|
240
|
-
const result = await runExport(client, options);
|
|
241
|
-
return {
|
|
242
|
-
output: JSON.stringify(result, null, 2),
|
|
243
|
-
exitCode: 0,
|
|
244
|
-
};
|
|
245
|
-
} catch (err) {
|
|
246
|
-
return {
|
|
247
|
-
error: `export failed: ${errorToMessage(err)}`,
|
|
248
|
-
exitCode: 1,
|
|
249
|
-
};
|
|
250
|
-
}
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
async function handleContent(
|
|
254
|
-
client: DispatchClient,
|
|
255
|
-
options: CliOptions,
|
|
256
|
-
): Promise<CommandResult> {
|
|
257
|
-
try {
|
|
258
|
-
const result = await runContent(client, options);
|
|
259
|
-
return {
|
|
260
|
-
output: JSON.stringify(result, null, 2),
|
|
261
|
-
exitCode: 0,
|
|
262
|
-
};
|
|
263
|
-
} catch (err) {
|
|
264
|
-
return {
|
|
265
|
-
error: `content failed: ${errorToMessage(err)}`,
|
|
266
|
-
exitCode: 1,
|
|
267
|
-
};
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
async function handleCheck(
|
|
272
|
-
client: DispatchClient,
|
|
273
|
-
options: CliOptions,
|
|
274
|
-
): Promise<CommandResult> {
|
|
275
|
-
try {
|
|
276
|
-
const result = await runCheck(client, options);
|
|
277
|
-
return {
|
|
278
|
-
output: JSON.stringify(result, null, 2),
|
|
279
|
-
exitCode: result.ok ? 0 : 1,
|
|
280
|
-
};
|
|
281
|
-
} catch (err) {
|
|
282
|
-
return {
|
|
283
|
-
error: `check failed: ${errorToMessage(err)}`,
|
|
284
|
-
exitCode: 1,
|
|
285
|
-
};
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
async function handleGc(
|
|
290
|
-
client: DispatchClient,
|
|
291
|
-
options: CliOptions,
|
|
292
|
-
): Promise<CommandResult> {
|
|
293
|
-
try {
|
|
294
|
-
const result = await runGc(client, options);
|
|
295
|
-
return {
|
|
296
|
-
output: JSON.stringify(result, null, 2),
|
|
297
|
-
exitCode: 0,
|
|
298
|
-
};
|
|
299
|
-
} catch (err) {
|
|
300
|
-
return {
|
|
301
|
-
error: `gc failed: ${errorToMessage(err)}`,
|
|
302
|
-
exitCode: 1,
|
|
303
|
-
};
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
async function handleRebuild(
|
|
308
|
-
client: DispatchClient,
|
|
309
|
-
options: CliOptions,
|
|
310
|
-
): Promise<CommandResult> {
|
|
311
|
-
try {
|
|
312
|
-
const result = await runRebuild(client, options);
|
|
313
|
-
return {
|
|
314
|
-
output: JSON.stringify(result, null, 2),
|
|
315
|
-
exitCode: 0,
|
|
316
|
-
};
|
|
317
|
-
} catch (err) {
|
|
318
|
-
return {
|
|
319
|
-
error: `rebuild failed: ${errorToMessage(err)}`,
|
|
320
|
-
exitCode: 1,
|
|
321
|
-
};
|
|
322
|
-
}
|
|
323
|
-
}
|
|
324
|
-
|
|
325
|
-
async function handleStatus(
|
|
326
|
-
client: DispatchClient,
|
|
327
|
-
options: CliOptions,
|
|
328
|
-
): Promise<CommandResult> {
|
|
329
|
-
try {
|
|
330
|
-
const result = await runStatus(client, options);
|
|
331
|
-
return {
|
|
332
|
-
output: JSON.stringify(result, null, 2),
|
|
333
|
-
exitCode: 0,
|
|
334
|
-
};
|
|
335
|
-
} catch (err) {
|
|
336
|
-
return {
|
|
337
|
-
error: `status failed: ${errorToMessage(err)}`,
|
|
338
|
-
exitCode: 1,
|
|
339
|
-
};
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
function handleDbInit(options: CliOptions): CommandResult {
|
|
344
|
-
return runDbInit(options, runInit);
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
async function handleDbMigrate(
|
|
348
|
-
client: DispatchClient,
|
|
349
|
-
options: CliOptions,
|
|
350
|
-
): Promise<CommandResult> {
|
|
351
|
-
try {
|
|
352
|
-
const result = await runDbMigrate(client, options);
|
|
353
|
-
return {
|
|
354
|
-
output: JSON.stringify(result, null, 2),
|
|
355
|
-
exitCode: 0,
|
|
356
|
-
};
|
|
357
|
-
} catch (err) {
|
|
358
|
-
return {
|
|
359
|
-
error: `db-migrate failed: ${errorToMessage(err)}`,
|
|
360
|
-
exitCode: 1,
|
|
361
|
-
};
|
|
362
|
-
}
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
/**
|
|
366
|
-
* Hydrates each result's `preview` field with the actual section
|
|
367
|
-
* content fetched from the client.
|
|
368
|
-
*
|
|
369
|
-
* Failures for individual results are caught and suppressed so that
|
|
370
|
-
* one unavailable section does not prevent other previews from
|
|
371
|
-
* being returned.
|
|
372
|
-
*
|
|
373
|
-
* @param client - content client used to fetch section text
|
|
374
|
-
* @param results - mutable search display records to hydrate
|
|
375
|
-
*/
|
|
376
|
-
async function hydrateSearchPreviews(
|
|
377
|
-
client: ContentClient,
|
|
378
|
-
paged: PagedSearchDisplay,
|
|
379
|
-
): Promise<void> {
|
|
380
|
-
await Promise.all(
|
|
381
|
-
paged.items.map(async (result) => {
|
|
382
|
-
try {
|
|
383
|
-
const contentResult = await client.content([result.kbid]);
|
|
384
|
-
result.preview = contentResult.data;
|
|
385
|
-
} catch {
|
|
386
|
-
// Leave preview as empty string on failure.
|
|
387
|
-
}
|
|
388
|
-
}),
|
|
389
|
-
);
|
|
390
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { existsSync, mkdirSync } from 'node:fs';
|
|
2
|
-
import { join, resolve } from 'node:path';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Ensures that the `.kbdb` database directory exists at the
|
|
6
|
-
* resolved base path, creating it recursively if necessary.
|
|
7
|
-
*
|
|
8
|
-
* When `dbPath` is provided it is resolved to an absolute path and
|
|
9
|
-
* used as the base; otherwise `process.cwd()` is used.
|
|
10
|
-
*
|
|
11
|
-
* @param dbPath - optional path to the knowledge-base root directory
|
|
12
|
-
* @returns absolute path to the `.kbdb` directory
|
|
13
|
-
*/
|
|
14
|
-
export function ensureDb(dbPath?: string): string {
|
|
15
|
-
const base = dbPath ? resolve(dbPath) : process.cwd();
|
|
16
|
-
const kbdbDir = join(base, '.kbdb');
|
|
17
|
-
if (!existsSync(kbdbDir)) {
|
|
18
|
-
mkdirSync(kbdbDir, { recursive: true });
|
|
19
|
-
}
|
|
20
|
-
return kbdbDir;
|
|
21
|
-
}
|