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