@kubbisec/ai-linux-arm64 0.1.22 → 0.1.23
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/bin/kubbisec +0 -0
- package/bundled/components/kubbisec-model-selector.d.ts +34 -47
- package/bundled/components/kubbisec-model-selector.js +177 -187
- package/bundled/components/kubbisec-model-selector.js.map +1 -1
- package/bundled/config/config.d.ts +6 -6
- package/bundled/config/config.d.ts.map +1 -1
- package/bundled/config/config.js +52 -54
- package/bundled/config/config.js.map +1 -1
- package/bundled/config/detect-local-llm-providers.d.ts +16 -26
- package/bundled/config/detect-local-llm-providers.js +142 -130
- package/bundled/config/ensure-kbs-project-settings.d.ts +20 -0
- package/bundled/config/ensure-kbs-project-settings.d.ts.map +1 -0
- package/bundled/config/ensure-kbs-project-settings.js +46 -0
- package/bundled/config/ensure-kbs-project-settings.js.map +1 -0
- package/bundled/config/ensure-kubbisec-project-settings.d.ts +11 -9
- package/bundled/config/ensure-kubbisec-project-settings.d.ts.map +1 -1
- package/bundled/config/ensure-kubbisec-project-settings.js +72 -44
- package/bundled/config/ensure-kubbisec-project-settings.js.map +1 -1
- package/bundled/config/extended-context.d.ts +6 -5
- package/bundled/config/extended-context.js +22 -23
- package/bundled/config/feature-flags.d.ts +2 -10
- package/bundled/config/feature-flags.js +2 -8
- package/bundled/config/format-kubbisec-footer-status.d.ts +1 -1
- package/bundled/config/format-kubbisec-footer-status.js +31 -26
- package/bundled/config/kubbisec-extension-manifest.d.ts +2 -22
- package/bundled/config/kubbisec-extension-manifest.d.ts.map +1 -1
- package/bundled/config/kubbisec-extension-manifest.js +19 -20
- package/bundled/config/kubbisec-extension-manifest.js.map +1 -1
- package/bundled/config/llm-config-mutations.d.ts +25 -51
- package/bundled/config/llm-config-mutations.js +182 -173
- package/bundled/config/llm-config.d.ts +41 -54
- package/bundled/config/llm-config.js +199 -199
- package/bundled/config/llm-provider-catalog.d.ts +15 -18
- package/bundled/config/llm-provider-catalog.js +46 -45
- package/bundled/config/materialize-kubbisec-pi-resources.d.ts +1 -1
- package/bundled/config/materialize-kubbisec-pi-resources.d.ts.map +1 -1
- package/bundled/config/materialize-kubbisec-pi-resources.js +182 -174
- package/bundled/config/materialize-kubbisec-pi-resources.js.map +1 -1
- package/bundled/config/register-custom-llm-providers.d.ts +5 -11
- package/bundled/config/register-custom-llm-providers.js +15 -17
- package/bundled/config/register-kubbisec-llm-provider.d.ts +10 -14
- package/bundled/config/register-kubbisec-llm-provider.js +42 -50
- package/bundled/config/resolve-agents-context-file.d.ts +1 -1
- package/bundled/config/resolve-agents-context-file.js +34 -33
- package/bundled/config/resource-budget.d.ts +12 -12
- package/bundled/config/resource-budget.js +28 -28
- package/bundled/config/sync-kubbisec-pi-models.d.ts +3 -6
- package/bundled/config/sync-kubbisec-pi-models.js +58 -58
- package/bundled/copy/cli-reference-index.d.ts +2 -7
- package/bundled/copy/cli-reference-index.d.ts.map +1 -1
- package/bundled/copy/cli-reference-index.js +2 -62
- package/bundled/copy/cli-reference-index.js.map +1 -1
- package/bundled/copy/kubbisec-shell-copy.d.ts +6 -11
- package/bundled/copy/kubbisec-shell-copy.js +1 -1
- package/bundled/extensions/cli-local-shared.d.ts +36 -45
- package/bundled/extensions/cli-local-shared.d.ts.map +1 -1
- package/bundled/extensions/cli-local-shared.js +129 -128
- package/bundled/extensions/cli-local-shared.js.map +1 -1
- package/bundled/extensions/kubbisec-aspm-local.extension.d.ts +15 -18
- package/bundled/extensions/kubbisec-aspm-local.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-aspm-local.extension.js +106 -121
- package/bundled/extensions/kubbisec-aspm-local.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-brand.extension.d.ts +1 -1
- package/bundled/extensions/kubbisec-brand.extension.js +25 -25
- package/bundled/extensions/kubbisec-byok-provider.extension.d.ts +1 -1
- package/bundled/extensions/kubbisec-byok-provider.extension.js +2 -2
- package/bundled/extensions/kubbisec-clarify.extension.d.ts +35 -64
- package/bundled/extensions/kubbisec-clarify.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-clarify.extension.js +305 -323
- package/bundled/extensions/kubbisec-clarify.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-exit.extension.d.ts +1 -1
- package/bundled/extensions/kubbisec-exit.extension.js +32 -29
- package/bundled/extensions/kubbisec-extended-context.extension.d.ts +1 -1
- package/bundled/extensions/kubbisec-extended-context.extension.js +43 -56
- package/bundled/extensions/kubbisec-footer.extension.d.ts +14 -14
- package/bundled/extensions/kubbisec-footer.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-footer.extension.js +215 -205
- package/bundled/extensions/kubbisec-footer.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-github-local.extension.d.ts +18 -29
- package/bundled/extensions/kubbisec-github-local.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-github-local.extension.js +457 -129
- package/bundled/extensions/kubbisec-github-local.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-llm-config.extension.d.ts +1 -1
- package/bundled/extensions/kubbisec-llm-config.extension.js +181 -200
- package/bundled/extensions/kubbisec-memory.extension.d.ts +7 -9
- package/bundled/extensions/kubbisec-memory.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-memory.extension.js +95 -88
- package/bundled/extensions/kubbisec-naus-local.extension.d.ts +15 -18
- package/bundled/extensions/kubbisec-naus-local.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-naus-local.extension.js +103 -135
- package/bundled/extensions/kubbisec-naus-local.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-platform-tools.extension.d.ts +21 -31
- package/bundled/extensions/kubbisec-platform-tools.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-platform-tools.extension.js +152 -152
- package/bundled/extensions/kubbisec-platform-tools.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-runtime-status.extension.d.ts +8 -10
- package/bundled/extensions/kubbisec-runtime-status.extension.js +13 -15
- package/bundled/extensions/kubbisec-scope.extension.d.ts +7 -12
- package/bundled/extensions/kubbisec-scope.extension.js +13 -13
- package/bundled/extensions/kubbisec-skill-mentions.extension.d.ts +16 -27
- package/bundled/extensions/kubbisec-skill-mentions.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-skill-mentions.extension.js +64 -73
- package/bundled/extensions/kubbisec-skill-mentions.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-skill-telemetry.extension.d.ts +3 -2
- package/bundled/extensions/kubbisec-skill-telemetry.extension.js +64 -59
- package/bundled/extensions/kubbisec-theme-lock.extension.d.ts +1 -1
- package/bundled/extensions/kubbisec-theme-lock.extension.js +34 -33
- package/bundled/extensions/kubbisec-ui.extension.d.ts +1 -1
- package/bundled/extensions/kubbisec-ui.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-ui.extension.js +122 -116
- package/bundled/extensions/kubbisec-ui.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-workflow.extension.d.ts +18 -20
- package/bundled/extensions/kubbisec-workflow.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-workflow.extension.js +140 -138
- package/bundled/node_modules/@aspm/shared/dist/ai/index.d.ts +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/index.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/ai/index.js +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/index.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/build-assistant-system-prompt.d.ts +7 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/build-assistant-system-prompt.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/build-assistant-system-prompt.js +30 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/build-assistant-system-prompt.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/build-chat-system-prompt.d.ts +7 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/build-chat-system-prompt.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/build-chat-system-prompt.js +14 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/build-chat-system-prompt.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/cli-reference-index.d.ts +6 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/cli-reference-index.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/cli-reference-index.js +65 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/cli-reference-index.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/format-mcp-knowledge.d.ts +8 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/format-mcp-knowledge.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/format-mcp-knowledge.js +29 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/format-mcp-knowledge.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/index.d.ts +7 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/index.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/index.js +16 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/index.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/mcp-instructions.d.ts +2 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/mcp-instructions.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/mcp-instructions.js +36 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/mcp-instructions.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/mental-map.d.ts +6 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/mental-map.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/mental-map.js +32 -0
- package/bundled/node_modules/@aspm/shared/dist/ai/product-knowledge/mental-map.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/api-key-scope-groups.d.ts +12 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/api-key-scope-groups.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/api-key-scope-groups.js +93 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/api-key-scope-groups.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/api-key-scope-presets.d.ts +13 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/api-key-scope-presets.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/api-key-scope-presets.js +79 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/api-key-scope-presets.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/index.d.ts +4 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/index.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/index.js +20 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/index.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/migrate-api-key-metadata.d.ts +20 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/migrate-api-key-metadata.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/migrate-api-key-metadata.js +78 -0
- package/bundled/node_modules/@aspm/shared/dist/api-key/migrate-api-key-metadata.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/assistant/assistant-thread.d.ts +19 -0
- package/bundled/node_modules/@aspm/shared/dist/assistant/assistant-thread.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/assistant/assistant-thread.js +126 -0
- package/bundled/node_modules/@aspm/shared/dist/assistant/assistant-thread.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/assistant/index.d.ts +1 -0
- package/bundled/node_modules/@aspm/shared/dist/assistant/index.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/assistant/index.js +1 -0
- package/bundled/node_modules/@aspm/shared/dist/assistant/index.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/billing/index.d.ts +2 -0
- package/bundled/node_modules/@aspm/shared/dist/billing/index.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/billing/index.js +18 -0
- package/bundled/node_modules/@aspm/shared/dist/billing/index.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/billing/plan-limits.d.ts +17 -0
- package/bundled/node_modules/@aspm/shared/dist/billing/plan-limits.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/billing/plan-limits.js +30 -0
- package/bundled/node_modules/@aspm/shared/dist/billing/plan-limits.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/ci-job-dependencies.d.ts +42 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/ci-job-dependencies.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/ci-job-dependencies.js +147 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/ci-job-dependencies.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/git-checkout-log-policy.d.ts +12 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/git-checkout-log-policy.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/git-checkout-log-policy.js +70 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/git-checkout-log-policy.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/index.d.ts +4 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/index.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/index.js +20 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/index.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/kubbisec-ci-execution-env.d.ts +16 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/kubbisec-ci-execution-env.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/kubbisec-ci-execution-env.js +45 -0
- package/bundled/node_modules/@aspm/shared/dist/ci/kubbisec-ci-execution-env.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/dto/create-report.dto.d.ts +1 -0
- package/bundled/node_modules/@aspm/shared/dist/dto/create-report.dto.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/dto/create-report.dto.js +6 -0
- package/bundled/node_modules/@aspm/shared/dist/dto/create-report.dto.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/dto/index.d.ts +5 -3
- package/bundled/node_modules/@aspm/shared/dist/dto/index.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/dto/index.js +5 -3
- package/bundled/node_modules/@aspm/shared/dist/dto/index.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/dto/update-project.dto.d.ts +9 -0
- package/bundled/node_modules/@aspm/shared/dist/dto/update-project.dto.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/dto/update-project.dto.js +52 -0
- package/bundled/node_modules/@aspm/shared/dist/dto/update-project.dto.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/enums.d.ts +3 -1
- package/bundled/node_modules/@aspm/shared/dist/enums.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/enums.js +4 -0
- package/bundled/node_modules/@aspm/shared/dist/enums.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/index.d.ts +8 -2
- package/bundled/node_modules/@aspm/shared/dist/index.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/index.js +8 -2
- package/bundled/node_modules/@aspm/shared/dist/index.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/mcp/constants.d.ts +22 -0
- package/bundled/node_modules/@aspm/shared/dist/mcp/constants.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/mcp/constants.js +52 -0
- package/bundled/node_modules/@aspm/shared/dist/mcp/constants.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/mcp/oauth-metadata.d.ts +37 -0
- package/bundled/node_modules/@aspm/shared/dist/mcp/oauth-metadata.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/mcp/oauth-metadata.js +51 -0
- package/bundled/node_modules/@aspm/shared/dist/mcp/oauth-metadata.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/project-scanner-summary.d.ts +7 -4
- package/bundled/node_modules/@aspm/shared/dist/project-scanner-summary.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/project-scanner-summary.js +15 -7
- package/bundled/node_modules/@aspm/shared/dist/project-scanner-summary.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/rbac/index.d.ts +1 -0
- package/bundled/node_modules/@aspm/shared/dist/rbac/index.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/rbac/index.js +1 -0
- package/bundled/node_modules/@aspm/shared/dist/rbac/index.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/rbac/kubbisec-permission-descriptions.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/rbac/kubbisec-permission-descriptions.js +2 -0
- package/bundled/node_modules/@aspm/shared/dist/rbac/kubbisec-permission-descriptions.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/rbac/kubbisec-permissions.d.ts +1 -1
- package/bundled/node_modules/@aspm/shared/dist/rbac/kubbisec-permissions.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/rbac/kubbisec-permissions.js +2 -0
- package/bundled/node_modules/@aspm/shared/dist/rbac/kubbisec-permissions.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/rbac/member-quota.d.ts +8 -0
- package/bundled/node_modules/@aspm/shared/dist/rbac/member-quota.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/rbac/member-quota.js +19 -0
- package/bundled/node_modules/@aspm/shared/dist/rbac/member-quota.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/rbac/resolve-org-permissions.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/rbac/resolve-org-permissions.js +4 -0
- package/bundled/node_modules/@aspm/shared/dist/rbac/resolve-org-permissions.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/redaction.d.ts +1 -0
- package/bundled/node_modules/@aspm/shared/dist/redaction.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/redaction.js +1 -0
- package/bundled/node_modules/@aspm/shared/dist/redaction.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/security/aspm-gate-rules.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/security/aspm-gate-rules.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/security/build-aspm-security-matrix-pipeline-yaml.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/security/build-aspm-security-matrix-pipeline-yaml.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/security/build-github-security-workflow-yaml.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/security/build-github-security-workflow-yaml.js +2 -2
- package/bundled/node_modules/@aspm/shared/dist/security/build-github-security-workflow-yaml.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/security/index.d.ts +2 -2
- package/bundled/node_modules/@aspm/shared/dist/security/index.d.ts.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/security/index.js +2 -2
- package/bundled/node_modules/@aspm/shared/dist/security/index.js.map +1 -1
- package/bundled/node_modules/@aspm/shared/dist/shared-project/constants.d.ts +4 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/constants.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/constants.js +10 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/constants.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/index.d.ts +4 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/index.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/index.js +20 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/index.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/redact-log-lines.d.ts +2 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/redact-log-lines.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/redact-log-lines.js +9 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/redact-log-lines.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/share-prefix.d.ts +3 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/share-prefix.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/share-prefix.js +18 -0
- package/bundled/node_modules/@aspm/shared/dist/shared-project/share-prefix.js.map +1 -0
- package/bundled/node_modules/@aspm/shared/package.json +27 -5
- package/bundled/node_modules/@kubbisec/chat-memory/dist/sanitizer.js +2 -2
- package/bundled/node_modules/@kubbisec/chat-memory/dist/sanitizer.js.map +1 -1
- package/bundled/node_modules/@kubbisec/chat-memory/package.json +4 -4
- package/bundled/node_modules/@kubbisec/home/dist/migrate.d.ts.map +1 -1
- package/bundled/node_modules/@kubbisec/home/dist/migrate.js +1 -1
- package/bundled/node_modules/@kubbisec/home/dist/migrate.js.map +1 -1
- package/bundled/node_modules/@kubbisec/home/package.json +3 -3
- package/bundled/resolve-bundled-dist-root.js +130 -122
- package/bundled/resolve-bundled-dist-root.js.map +1 -1
- package/bundled/skills/aspm-platform/SKILL.md +3 -1
- package/bundled/skills/at-path-mentions.d.ts +1 -1
- package/bundled/skills/at-path-mentions.js +153 -146
- package/bundled/skills/chat-mention-render.d.ts +2 -2
- package/bundled/skills/chat-mention-render.js +126 -121
- package/bundled/skills/chat-mentions.d.ts +8 -17
- package/bundled/skills/chat-mentions.js +76 -76
- package/bundled/skills/github-local/SKILL.md +5 -5
- package/bundled/skills/kubbisec-resource-router/SKILL.md +3 -0
- package/bundled/skills/list-bundled-skills.d.ts +3 -3
- package/bundled/skills/list-bundled-skills.js +35 -33
- package/bundled/skills/naus-pipelines/SKILL.md +11 -10
- package/bundled/skills/remediation/SKILL.md +1 -1
- package/bundled/skills/skill-mention.d.ts +2 -10
- package/bundled/skills/skill-mention.js +2 -10
- package/bundled/theme/clear-terminal.d.ts +1 -1
- package/bundled/theme/clear-terminal.js +4 -3
- package/bundled/theme/footer-render-hook.d.ts +1 -1
- package/bundled/theme/footer-render-hook.js +3 -3
- package/bundled/theme/kubbisec-brand-fg.d.ts +1 -1
- package/bundled/theme/kubbisec-brand-fg.js +2 -2
- package/bundled/theme/kubbisec-menu-themes.d.ts +7 -7
- package/bundled/theme/kubbisec-menu-themes.js +31 -30
- package/bundled/theme/kubbisec-theme-name.d.ts +1 -1
- package/bundled/theme/kubbisec-theme-name.js +1 -1
- package/bundled/theme/patch-pi-settings-theme.runtime.d.ts +1 -1
- package/bundled/theme/patch-pi-settings-theme.runtime.js +10 -11
- package/bundled/theme/render-compact-header.d.ts +5 -13
- package/bundled/theme/render-compact-header.js +128 -126
- package/bundled/theme/render-compact-header.js.map +1 -1
- package/bundled/workflow/session-workflow-mode.d.ts +1 -1
- package/bundled/workflow/session-workflow-mode.js +33 -33
- package/package.json +1 -1
- package/bundled/clarify/clarify-gate-state.d.ts +0 -3
- package/bundled/clarify/clarify-gate-state.d.ts.map +0 -1
- package/bundled/clarify/clarify-gate-state.js +0 -9
- package/bundled/clarify/clarify-gate-state.js.map +0 -1
- package/bundled/clarify/clarify-gate.d.ts +0 -35
- package/bundled/clarify/clarify-gate.d.ts.map +0 -1
- package/bundled/clarify/clarify-gate.js +0 -159
- package/bundled/clarify/clarify-gate.js.map +0 -1
- package/bundled/clarify/clarify-select-panel.d.ts +0 -21
- package/bundled/clarify/clarify-select-panel.d.ts.map +0 -1
- package/bundled/clarify/clarify-select-panel.js +0 -80
- package/bundled/clarify/clarify-select-panel.js.map +0 -1
- package/bundled/clarify/clarify-ui-state.d.ts +0 -23
- package/bundled/clarify/clarify-ui-state.d.ts.map +0 -1
- package/bundled/clarify/clarify-ui-state.js +0 -48
- package/bundled/clarify/clarify-ui-state.js.map +0 -1
- package/bundled/clarify/parse-clarify-answer.d.ts +0 -32
- package/bundled/clarify/parse-clarify-answer.d.ts.map +0 -1
- package/bundled/clarify/parse-clarify-answer.js +0 -51
- package/bundled/clarify/parse-clarify-answer.js.map +0 -1
- package/bundled/clarify/question-format.d.ts +0 -50
- package/bundled/clarify/question-format.d.ts.map +0 -1
- package/bundled/clarify/question-format.js +0 -137
- package/bundled/clarify/question-format.js.map +0 -1
- package/bundled/clarify/questionnaire-tool.d.ts +0 -36
- package/bundled/clarify/questionnaire-tool.d.ts.map +0 -1
- package/bundled/clarify/questionnaire-tool.js +0 -197
- package/bundled/clarify/questionnaire-tool.js.map +0 -1
- package/bundled/clarify/scope-discovery.d.ts +0 -12
- package/bundled/clarify/scope-discovery.d.ts.map +0 -1
- package/bundled/clarify/scope-discovery.js +0 -122
- package/bundled/clarify/scope-discovery.js.map +0 -1
- package/bundled/clarify/session-questionnaire.d.ts +0 -61
- package/bundled/clarify/session-questionnaire.d.ts.map +0 -1
- package/bundled/clarify/session-questionnaire.js +0 -364
- package/bundled/clarify/session-questionnaire.js.map +0 -1
- package/bundled/clarify/session-questionnaire.types.d.ts +0 -49
- package/bundled/clarify/session-questionnaire.types.d.ts.map +0 -1
- package/bundled/clarify/session-questionnaire.types.js +0 -13
- package/bundled/clarify/session-questionnaire.types.js.map +0 -1
package/bundled/config/config.js
CHANGED
|
@@ -1,69 +1,67 @@
|
|
|
1
1
|
import * as fs from "node:fs";
|
|
2
2
|
import * as os from "node:os";
|
|
3
3
|
import * as path from "node:path";
|
|
4
|
-
import {
|
|
5
|
-
DEFAULT_KUBBISEC_API_URL,
|
|
6
|
-
getAiStateDir,
|
|
7
|
-
getKubbisecConfigPath,
|
|
8
|
-
resolveKubbisecApiUrl,
|
|
9
|
-
} from "@kubbisec/home";
|
|
4
|
+
import { DEFAULT_KUBBISEC_API_URL, getAiStateDir, getKubbisecConfigPath, resolveKubbisecApiUrl, } from "@kubbisec/home";
|
|
10
5
|
export function getKubbisecStateDir() {
|
|
11
|
-
|
|
6
|
+
return getAiStateDir();
|
|
12
7
|
}
|
|
13
8
|
export function getConfigPath() {
|
|
14
|
-
|
|
9
|
+
return getKubbisecConfigPath();
|
|
15
10
|
}
|
|
16
11
|
export function loadConfig() {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
12
|
+
const stateDir = getAiStateDir();
|
|
13
|
+
const candidates = [getKubbisecConfigPath(), path.join(stateDir, "kbs.json")];
|
|
14
|
+
for (const configFile of candidates) {
|
|
15
|
+
try {
|
|
16
|
+
if (!fs.existsSync(configFile))
|
|
17
|
+
continue;
|
|
18
|
+
return JSON.parse(fs.readFileSync(configFile, "utf8"));
|
|
19
|
+
}
|
|
20
|
+
catch { }
|
|
21
|
+
}
|
|
22
|
+
return {};
|
|
26
23
|
}
|
|
27
24
|
export function saveConfig(partial) {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
25
|
+
const prev = loadConfig();
|
|
26
|
+
const next = {
|
|
27
|
+
apiUrl: resolveKubbisecApiUrl(partial.apiUrl ?? prev.apiUrl),
|
|
28
|
+
apiKey: partial.apiKey ?? prev.apiKey ?? "",
|
|
29
|
+
orgId: partial.orgId ?? prev.orgId,
|
|
30
|
+
defaultProject: partial.defaultProject ?? prev.defaultProject,
|
|
31
|
+
clientId: partial.clientId ?? prev.clientId ?? `kubbisec-${os.hostname()}`,
|
|
32
|
+
};
|
|
33
|
+
const stateDir = getAiStateDir();
|
|
34
|
+
fs.mkdirSync(stateDir, { recursive: true, mode: 0o700 });
|
|
35
|
+
const persisted = {
|
|
36
|
+
apiKey: next.apiKey,
|
|
37
|
+
orgId: next.orgId,
|
|
38
|
+
defaultProject: next.defaultProject,
|
|
39
|
+
clientId: next.clientId,
|
|
40
|
+
};
|
|
41
|
+
if (next.apiUrl !== DEFAULT_KUBBISEC_API_URL) {
|
|
42
|
+
persisted.apiUrl = next.apiUrl;
|
|
43
|
+
}
|
|
44
|
+
fs.writeFileSync(getKubbisecConfigPath(), `${JSON.stringify(persisted, null, 2)}\n`, {
|
|
45
|
+
mode: 0o600,
|
|
46
|
+
});
|
|
47
|
+
return next;
|
|
51
48
|
}
|
|
52
49
|
export function clearConfig() {
|
|
53
|
-
|
|
54
|
-
|
|
50
|
+
const configFile = getKubbisecConfigPath();
|
|
51
|
+
if (fs.existsSync(configFile))
|
|
52
|
+
fs.unlinkSync(configFile);
|
|
55
53
|
}
|
|
56
54
|
export function requireConfig() {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
55
|
+
const cfg = loadConfig();
|
|
56
|
+
if (!cfg.apiKey?.trim()) {
|
|
57
|
+
throw new Error("Not logged in. Run: kubbisec login");
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
apiUrl: resolveKubbisecApiUrl(cfg.apiUrl),
|
|
61
|
+
apiKey: cfg.apiKey.trim(),
|
|
62
|
+
orgId: cfg.orgId?.trim() || undefined,
|
|
63
|
+
defaultProject: cfg.defaultProject?.trim() || undefined,
|
|
64
|
+
clientId: cfg.clientId?.trim() || `kubbisec-${os.hostname()}`,
|
|
65
|
+
};
|
|
68
66
|
}
|
|
69
|
-
//# sourceMappingURL=config.js.map
|
|
67
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EACL,wBAAwB,EACxB,aAAa,EACb,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAUxB,MAAM,UAAU,mBAAmB;IACjC,OAAO,aAAa,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,qBAAqB,EAAE,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC;IACjC,MAAM,UAAU,GAAG,CAAC,qBAAqB,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAC9E,KAAK,MAAM,UAAU,IAAI,UAAU,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;gBAAE,SAAS;YACzC,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAA4B,CAAC;QACpF,CAAC;QAAC,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,38 +6,28 @@ export declare const LM_STUDIO_PROVIDER_NAME = "LM Studio";
|
|
|
6
6
|
export declare const OLLAMA_DEFAULT_HOST = "http://127.0.0.1:11434";
|
|
7
7
|
export declare const LM_STUDIO_DEFAULT_HOST = "http://127.0.0.1:1234";
|
|
8
8
|
export type LocalLlmDetectOptions = {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
timeoutMs?: number;
|
|
10
|
+
ollamaBaseUrl?: string;
|
|
11
|
+
lmStudioBaseUrl?: string;
|
|
12
|
+
detectOllama?: boolean;
|
|
13
|
+
detectLmStudio?: boolean;
|
|
14
14
|
};
|
|
15
15
|
export type LocalLlmDetectResult = {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
detected: KubbisecCustomProviderDef[];
|
|
17
|
+
ollama: KubbisecCustomProviderDef | null;
|
|
18
|
+
lmstudio: KubbisecCustomProviderDef | null;
|
|
19
|
+
removedProviderIds: string[];
|
|
20
20
|
};
|
|
21
21
|
export declare function resolveOllamaHost(config?: KubbisecLlmConfig["localLlm"]): string;
|
|
22
22
|
export declare function resolveLmStudioOpenAiBase(config?: KubbisecLlmConfig["localLlm"]): string;
|
|
23
23
|
export declare function inferLocalModelReasoning(modelId: string): boolean;
|
|
24
24
|
export declare function formatLocalModelName(modelId: string): string;
|
|
25
|
-
export declare function detectOllamaProvider(
|
|
26
|
-
|
|
27
|
-
): Promise<KubbisecCustomProviderDef | null>;
|
|
28
|
-
export declare function detectLmStudioProvider(
|
|
29
|
-
options?: LocalLlmDetectOptions,
|
|
30
|
-
): Promise<KubbisecCustomProviderDef | null>;
|
|
25
|
+
export declare function detectOllamaProvider(options?: LocalLlmDetectOptions): Promise<KubbisecCustomProviderDef | null>;
|
|
26
|
+
export declare function detectLmStudioProvider(options?: LocalLlmDetectOptions): Promise<KubbisecCustomProviderDef | null>;
|
|
31
27
|
export declare function isLocalLlmAutodetectEnabled(config?: KubbisecLlmConfig): boolean;
|
|
32
|
-
export declare function detectLocalLlmProviders(
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
export declare function syncAutodetectedLocalProviders(
|
|
37
|
-
cwd?: string,
|
|
38
|
-
options?: LocalLlmDetectOptions,
|
|
39
|
-
): Promise<{
|
|
40
|
-
config: KubbisecLlmConfig;
|
|
41
|
-
result: LocalLlmDetectResult;
|
|
28
|
+
export declare function detectLocalLlmProviders(config?: KubbisecLlmConfig, overrides?: LocalLlmDetectOptions): Promise<KubbisecCustomProviderDef[]>;
|
|
29
|
+
export declare function syncAutodetectedLocalProviders(cwd?: string, options?: LocalLlmDetectOptions): Promise<{
|
|
30
|
+
config: KubbisecLlmConfig;
|
|
31
|
+
result: LocalLlmDetectResult;
|
|
42
32
|
}>;
|
|
43
|
-
//# sourceMappingURL=detect-local-llm-providers.d.ts.map
|
|
33
|
+
//# sourceMappingURL=detect-local-llm-providers.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyLlmConfigToPiSettings, readLlmConfig, writeLlmConfig } from "./llm-config.js";
|
|
1
|
+
import { applyLlmConfigToPiSettings, readLlmConfig, writeLlmConfig, } from "./llm-config.js";
|
|
2
2
|
export const OLLAMA_PROVIDER_ID = "ollama";
|
|
3
3
|
export const LM_STUDIO_PROVIDER_ID = "lmstudio";
|
|
4
4
|
export const OLLAMA_PROVIDER_NAME = "Ollama";
|
|
@@ -6,155 +6,167 @@ export const LM_STUDIO_PROVIDER_NAME = "LM Studio";
|
|
|
6
6
|
export const OLLAMA_DEFAULT_HOST = "http://127.0.0.1:11434";
|
|
7
7
|
export const LM_STUDIO_DEFAULT_HOST = "http://127.0.0.1:1234";
|
|
8
8
|
export function resolveOllamaHost(config) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
const fromEnv = process.env.OLLAMA_HOST?.trim();
|
|
10
|
+
const fromConfig = config?.ollama?.baseUrl?.trim();
|
|
11
|
+
const raw = fromConfig || fromEnv || OLLAMA_DEFAULT_HOST;
|
|
12
|
+
return raw.replace(/\/+$/, "");
|
|
13
13
|
}
|
|
14
14
|
export function resolveLmStudioOpenAiBase(config) {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
const fromEnv = process.env.LM_STUDIO_BASE_URL?.trim() || process.env.LMSTUDIO_BASE_URL?.trim();
|
|
16
|
+
const fromConfig = config?.lmstudio?.baseUrl?.trim();
|
|
17
|
+
const raw = fromConfig || fromEnv || LM_STUDIO_DEFAULT_HOST;
|
|
18
|
+
const trimmed = raw.replace(/\/+$/, "");
|
|
19
|
+
return trimmed.endsWith("/v1") ? trimmed : `${trimmed}/v1`;
|
|
20
20
|
}
|
|
21
21
|
export function inferLocalModelReasoning(modelId) {
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
const lower = modelId.toLowerCase();
|
|
23
|
+
return /(?:^|[-_/])(o1|o3|qwq|deepseek-r1|r1|reasoning|think)/.test(lower);
|
|
24
24
|
}
|
|
25
25
|
export function formatLocalModelName(modelId) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
const base = modelId.split(":")[0] ?? modelId;
|
|
27
|
+
return base
|
|
28
|
+
.split(/[-_/]/)
|
|
29
|
+
.filter(Boolean)
|
|
30
|
+
.map((part) => part.charAt(0).toUpperCase() + part.slice(1))
|
|
31
|
+
.join(" ");
|
|
32
32
|
}
|
|
33
33
|
async function fetchJson(url, timeoutMs) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
34
|
+
const controller = new AbortController();
|
|
35
|
+
const timer = setTimeout(() => controller.abort(), timeoutMs);
|
|
36
|
+
try {
|
|
37
|
+
const response = await fetch(url, {
|
|
38
|
+
signal: controller.signal,
|
|
39
|
+
headers: { Accept: "application/json" },
|
|
40
|
+
});
|
|
41
|
+
if (!response.ok)
|
|
42
|
+
return null;
|
|
43
|
+
return (await response.json());
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
finally {
|
|
49
|
+
clearTimeout(timer);
|
|
50
|
+
}
|
|
48
51
|
}
|
|
49
52
|
function toLocalModelDef(modelId) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
53
|
+
const id = modelId.trim();
|
|
54
|
+
return {
|
|
55
|
+
id,
|
|
56
|
+
name: formatLocalModelName(id),
|
|
57
|
+
reasoning: inferLocalModelReasoning(id),
|
|
58
|
+
contextWindow: 128_000,
|
|
59
|
+
maxTokens: 8_192,
|
|
60
|
+
};
|
|
58
61
|
}
|
|
59
62
|
export async function detectOllamaProvider(options = {}) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
63
|
+
if (options.detectOllama === false)
|
|
64
|
+
return null;
|
|
65
|
+
const host = (options.ollamaBaseUrl ?? resolveOllamaHost()).replace(/\/+$/, "");
|
|
66
|
+
const timeoutMs = options.timeoutMs ?? 900;
|
|
67
|
+
const tags = await fetchJson(`${host}/api/tags`, timeoutMs);
|
|
68
|
+
const models = (tags?.models ?? [])
|
|
69
|
+
.map((entry) => entry.name?.trim() || entry.model?.trim())
|
|
70
|
+
.filter((name) => Boolean(name));
|
|
71
|
+
if (models.length === 0)
|
|
72
|
+
return null;
|
|
73
|
+
const uniqueModels = [...new Set(models)].map(toLocalModelDef);
|
|
74
|
+
return {
|
|
75
|
+
id: OLLAMA_PROVIDER_ID,
|
|
76
|
+
name: OLLAMA_PROVIDER_NAME,
|
|
77
|
+
baseUrl: `${host}/v1`,
|
|
78
|
+
apiKey: "ollama",
|
|
79
|
+
api: "openai-completions",
|
|
80
|
+
models: uniqueModels,
|
|
81
|
+
autodetected: true,
|
|
82
|
+
detectSource: "ollama",
|
|
83
|
+
};
|
|
79
84
|
}
|
|
80
85
|
export async function detectLmStudioProvider(options = {}) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
86
|
+
if (options.detectLmStudio === false)
|
|
87
|
+
return null;
|
|
88
|
+
const baseUrl = (options.lmStudioBaseUrl ?? resolveLmStudioOpenAiBase()).replace(/\/+$/, "");
|
|
89
|
+
const timeoutMs = options.timeoutMs ?? 900;
|
|
90
|
+
const listing = await fetchJson(`${baseUrl}/models`, timeoutMs);
|
|
91
|
+
const models = (listing?.data ?? [])
|
|
92
|
+
.map((entry) => entry.id?.trim())
|
|
93
|
+
.filter((id) => Boolean(id));
|
|
94
|
+
if (models.length === 0)
|
|
95
|
+
return null;
|
|
96
|
+
const uniqueModels = [...new Set(models)].map(toLocalModelDef);
|
|
97
|
+
return {
|
|
98
|
+
id: LM_STUDIO_PROVIDER_ID,
|
|
99
|
+
name: LM_STUDIO_PROVIDER_NAME,
|
|
100
|
+
baseUrl,
|
|
101
|
+
apiKey: "lm-studio",
|
|
102
|
+
api: "openai-completions",
|
|
103
|
+
models: uniqueModels,
|
|
104
|
+
autodetected: true,
|
|
105
|
+
detectSource: "lmstudio",
|
|
106
|
+
};
|
|
98
107
|
}
|
|
99
108
|
export function isLocalLlmAutodetectEnabled(config = readLlmConfig()) {
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
109
|
+
if (process.env.KUBBISEC_LLM_AUTODETECT === "0")
|
|
110
|
+
return false;
|
|
111
|
+
if (process.env.KUBBISEC_LLM_AUTODETECT === "1")
|
|
112
|
+
return true;
|
|
113
|
+
return config.localLlm?.autoDetect !== false;
|
|
103
114
|
}
|
|
104
115
|
export async function detectLocalLlmProviders(config = readLlmConfig(), overrides = {}) {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
116
|
+
if (!isLocalLlmAutodetectEnabled(config))
|
|
117
|
+
return [];
|
|
118
|
+
const local = config.localLlm;
|
|
119
|
+
const timeoutMs = overrides.timeoutMs ?? 900;
|
|
120
|
+
const [ollama, lmstudio] = await Promise.all([
|
|
121
|
+
detectOllamaProvider({
|
|
122
|
+
timeoutMs,
|
|
123
|
+
ollamaBaseUrl: overrides.ollamaBaseUrl ?? local?.ollama?.baseUrl,
|
|
124
|
+
detectOllama: local?.ollama?.enabled !== false && overrides.detectOllama !== false,
|
|
125
|
+
}),
|
|
126
|
+
detectLmStudioProvider({
|
|
127
|
+
timeoutMs,
|
|
128
|
+
lmStudioBaseUrl: overrides.lmStudioBaseUrl ?? local?.lmstudio?.baseUrl,
|
|
129
|
+
detectLmStudio: local?.lmstudio?.enabled !== false && overrides.detectLmStudio !== false,
|
|
130
|
+
}),
|
|
131
|
+
]);
|
|
132
|
+
return [ollama, lmstudio].filter((provider) => provider != null);
|
|
121
133
|
}
|
|
122
134
|
function mergeDetectedProviders(current, detected) {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
135
|
+
const manual = current.filter((provider) => !provider.autodetected);
|
|
136
|
+
const manualIds = new Set(manual.map((provider) => provider.id));
|
|
137
|
+
const detectedIds = new Set(detected.map((provider) => provider.id));
|
|
138
|
+
const removedProviderIds = current
|
|
139
|
+
.filter((provider) => provider.autodetected && !detectedIds.has(provider.id))
|
|
140
|
+
.map((provider) => provider.id);
|
|
141
|
+
const next = [...manual];
|
|
142
|
+
for (const provider of detected) {
|
|
143
|
+
if (manualIds.has(provider.id))
|
|
144
|
+
continue;
|
|
145
|
+
const index = next.findIndex((entry) => entry.id === provider.id && entry.autodetected);
|
|
146
|
+
if (index >= 0)
|
|
147
|
+
next[index] = provider;
|
|
148
|
+
else
|
|
149
|
+
next.push(provider);
|
|
150
|
+
}
|
|
151
|
+
return { providers: next, removedProviderIds };
|
|
137
152
|
}
|
|
138
153
|
export async function syncAutodetectedLocalProviders(cwd = process.cwd(), options = {}) {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
current
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
removedProviderIds,
|
|
157
|
-
},
|
|
158
|
-
};
|
|
154
|
+
const current = readLlmConfig(cwd);
|
|
155
|
+
const detected = await detectLocalLlmProviders(current, options);
|
|
156
|
+
const { providers, removedProviderIds } = mergeDetectedProviders(current.providers ?? [], detected);
|
|
157
|
+
const next = { ...current, providers };
|
|
158
|
+
writeLlmConfig(cwd, next);
|
|
159
|
+
applyLlmConfigToPiSettings(cwd, next);
|
|
160
|
+
const ollama = detected.find((provider) => provider.id === OLLAMA_PROVIDER_ID) ?? null;
|
|
161
|
+
const lmstudio = detected.find((provider) => provider.id === LM_STUDIO_PROVIDER_ID) ?? null;
|
|
162
|
+
return {
|
|
163
|
+
config: next,
|
|
164
|
+
result: {
|
|
165
|
+
detected,
|
|
166
|
+
ollama,
|
|
167
|
+
lmstudio,
|
|
168
|
+
removedProviderIds,
|
|
169
|
+
},
|
|
170
|
+
};
|
|
159
171
|
}
|
|
160
|
-
//# sourceMappingURL=detect-local-llm-providers.js.map
|
|
172
|
+
//# sourceMappingURL=detect-local-llm-providers.js.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const KBS_PROJECT_CONFIG_DIR = ".kbs";
|
|
2
|
+
export declare const KBS_PROJECT_SETTINGS_FILE = "settings.json";
|
|
3
|
+
export declare const KBS_SPECS_DIR = "specs";
|
|
4
|
+
export declare const KBS_PLANS_DIR = "plans";
|
|
5
|
+
export declare const KBS_CONTEXT_DIR = "context";
|
|
6
|
+
export type KbsProjectSettings = {
|
|
7
|
+
quietStartup?: boolean;
|
|
8
|
+
enableSkillCommands?: boolean;
|
|
9
|
+
workflow?: {
|
|
10
|
+
lastSpecSlug?: string;
|
|
11
|
+
lastPlanSlug?: string;
|
|
12
|
+
};
|
|
13
|
+
[key: string]: unknown;
|
|
14
|
+
};
|
|
15
|
+
/** Create `.kbs/specs`, `.kbs/plans`, `.kbs/context` (ART-003). */
|
|
16
|
+
export declare function ensureKbsProjectLayout(cwd: string): void;
|
|
17
|
+
export declare function resolveKbsProjectSettingsPath(cwd: string): string;
|
|
18
|
+
/** Merge KubbiSec defaults into `<cwd>/.kbs/settings.json` without removing user keys. */
|
|
19
|
+
export declare function ensureKbsProjectSettings(cwd?: string): string;
|
|
20
|
+
//# sourceMappingURL=ensure-kbs-project-settings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ensure-kbs-project-settings.d.ts","sourceRoot":"","sources":["../../src/config/ensure-kbs-project-settings.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAC7C,eAAO,MAAM,yBAAyB,kBAAkB,CAAC;AACzD,eAAO,MAAM,aAAa,UAAU,CAAC;AACrC,eAAO,MAAM,aAAa,UAAU,CAAC;AACrC,eAAO,MAAM,eAAe,YAAY,CAAC;AAEzC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,mEAAmE;AACnE,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAKxD;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjE;AAeD,0FAA0F;AAC1F,wBAAgB,wBAAwB,CAAC,GAAG,SAAgB,GAAG,MAAM,CAcpE"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import * as fs from "node:fs";
|
|
2
|
+
import * as path from "node:path";
|
|
3
|
+
export const KBS_PROJECT_CONFIG_DIR = ".kbs";
|
|
4
|
+
export const KBS_PROJECT_SETTINGS_FILE = "settings.json";
|
|
5
|
+
export const KBS_SPECS_DIR = "specs";
|
|
6
|
+
export const KBS_PLANS_DIR = "plans";
|
|
7
|
+
export const KBS_CONTEXT_DIR = "context";
|
|
8
|
+
/** Create `.kbs/specs`, `.kbs/plans`, `.kbs/context` (ART-003). */
|
|
9
|
+
export function ensureKbsProjectLayout(cwd) {
|
|
10
|
+
const base = path.join(cwd, KBS_PROJECT_CONFIG_DIR);
|
|
11
|
+
for (const sub of [KBS_SPECS_DIR, KBS_PLANS_DIR, KBS_CONTEXT_DIR]) {
|
|
12
|
+
fs.mkdirSync(path.join(base, sub), { recursive: true, mode: 0o755 });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export function resolveKbsProjectSettingsPath(cwd) {
|
|
16
|
+
return path.join(cwd, KBS_PROJECT_CONFIG_DIR, KBS_PROJECT_SETTINGS_FILE);
|
|
17
|
+
}
|
|
18
|
+
function readExistingSettings(filePath) {
|
|
19
|
+
try {
|
|
20
|
+
const raw = fs.readFileSync(filePath, "utf8");
|
|
21
|
+
const parsed = JSON.parse(raw);
|
|
22
|
+
if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
|
|
23
|
+
return parsed;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
catch {
|
|
27
|
+
/* missing or invalid — start fresh */
|
|
28
|
+
}
|
|
29
|
+
return {};
|
|
30
|
+
}
|
|
31
|
+
/** Merge KubbiSec defaults into `<cwd>/.kbs/settings.json` without removing user keys. */
|
|
32
|
+
export function ensureKbsProjectSettings(cwd = process.cwd()) {
|
|
33
|
+
const dir = path.join(cwd, KBS_PROJECT_CONFIG_DIR);
|
|
34
|
+
const filePath = resolveKbsProjectSettingsPath(cwd);
|
|
35
|
+
fs.mkdirSync(dir, { recursive: true, mode: 0o755 });
|
|
36
|
+
ensureKbsProjectLayout(cwd);
|
|
37
|
+
const existing = readExistingSettings(filePath);
|
|
38
|
+
const merged = {
|
|
39
|
+
...existing,
|
|
40
|
+
quietStartup: true,
|
|
41
|
+
enableSkillCommands: false,
|
|
42
|
+
};
|
|
43
|
+
fs.writeFileSync(filePath, `${JSON.stringify(merged, null, 2)}\n`, "utf8");
|
|
44
|
+
return filePath;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=ensure-kbs-project-settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ensure-kbs-project-settings.js","sourceRoot":"","sources":["../../src/config/ensure-kbs-project-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAC7C,MAAM,CAAC,MAAM,yBAAyB,GAAG,eAAe,CAAC;AACzD,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC;AACrC,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC;AAYzC,mEAAmE;AACnE,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;IACpD,KAAK,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,eAAe,CAAC,EAAE,CAAC;QAClE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,GAAW;IACvD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,yBAAyB,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB;IAC5C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnE,OAAO,MAA4B,CAAC;QACtC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,wBAAwB,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;IACpD,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACpD,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAE5B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,MAAM,GAAuB;QACjC,GAAG,QAAQ;QACX,YAAY,EAAE,IAAI;QAClB,mBAAmB,EAAE,KAAK;KAC3B,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3E,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -5,25 +5,27 @@ export declare const KUBBISEC_PROJECT_SETTINGS_FILE = "settings.json";
|
|
|
5
5
|
export declare const KUBBISEC_SPECS_DIR = "specs";
|
|
6
6
|
export declare const KUBBISEC_PLANS_DIR = "plans";
|
|
7
7
|
export declare const KUBBISEC_CONTEXT_DIR = "context";
|
|
8
|
+
export declare const KUBBISEC_WORKTREES_DIR = "worktrees";
|
|
8
9
|
export type KubbisecProjectSettings = {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
theme?: string;
|
|
11
|
+
quietStartup?: boolean;
|
|
12
|
+
enableSkillCommands?: boolean;
|
|
13
|
+
workflow?: {
|
|
14
|
+
lastSpecSlug?: string;
|
|
15
|
+
lastPlanSlug?: string;
|
|
16
|
+
};
|
|
17
|
+
[key: string]: unknown;
|
|
17
18
|
};
|
|
18
19
|
/** Create `.kubbisec/specs`, `.kubbisec/plans`, `.kubbisec/context` (ART-003). */
|
|
19
20
|
export declare function ensureKubbisecProjectLayout(cwd: string): void;
|
|
20
21
|
export declare function resolveKubbisecProjectSettingsPath(cwd: string): string;
|
|
21
22
|
/** Merge KubbiSec defaults into `<cwd>/.kubbisec/settings.json` without removing user keys. */
|
|
22
23
|
export declare function ensureKubbisecProjectSettings(cwd?: string): string;
|
|
24
|
+
export declare function ensureKubbisecGitignore(cwd: string): void;
|
|
23
25
|
/** @deprecated Use ensureKubbisecProjectSettings */
|
|
24
26
|
export declare function ensurePiProjectSettings(cwd?: string): string;
|
|
25
27
|
/** @deprecated Use ensureKubbisecProjectSettings */
|
|
26
28
|
export declare function ensurePiProjectTheme(cwd?: string): string;
|
|
27
29
|
/** KubbiSec project settings used when starting the chat runtime. */
|
|
28
30
|
export declare function ensureKubbisecChatProjectSettings(cwd?: string): void;
|
|
29
|
-
//# sourceMappingURL=ensure-kubbisec-project-settings.d.ts.map
|
|
31
|
+
//# sourceMappingURL=ensure-kubbisec-project-settings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensure-kubbisec-project-settings.d.ts","sourceRoot":"","sources":["../../src/config/ensure-kubbisec-project-settings.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,2BAA2B,cAAc,CAAC;AACvD,kDAAkD;AAClD,eAAO,MAAM,qBAAqB,cAA8B,CAAC;AACjE,eAAO,MAAM,8BAA8B,kBAAkB,CAAC;AAC9D,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAC1C,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAC1C,eAAO,MAAM,oBAAoB,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ensure-kubbisec-project-settings.d.ts","sourceRoot":"","sources":["../../src/config/ensure-kubbisec-project-settings.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,2BAA2B,cAAc,CAAC;AACvD,kDAAkD;AAClD,eAAO,MAAM,qBAAqB,cAA8B,CAAC;AACjE,eAAO,MAAM,8BAA8B,kBAAkB,CAAC;AAC9D,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAC1C,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAC1C,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAC9C,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAElD,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAmBF,kFAAkF;AAClF,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAU7D;AAED,wBAAgB,kCAAkC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtE;AAeD,+FAA+F;AAC/F,wBAAgB,6BAA6B,CAAC,GAAG,SAAgB,GAAG,MAAM,CAiBzE;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAiBzD;AAED,oDAAoD;AACpD,wBAAgB,uBAAuB,CAAC,GAAG,SAAgB,GAAG,MAAM,CAEnE;AAED,oDAAoD;AACpD,wBAAgB,oBAAoB,CAAC,GAAG,SAAgB,GAAG,MAAM,CAEhE;AAED,qEAAqE;AACrE,wBAAgB,iCAAiC,CAAC,GAAG,SAAgB,GAAG,IAAI,CAG3E"}
|