@kubbisec/ai-linux-x64 0.1.21 → 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 +47 -34
- package/bundled/components/kubbisec-model-selector.js +187 -177
- 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 +55 -55
- package/bundled/config/config.js.map +1 -1
- package/bundled/config/detect-local-llm-providers.d.ts +26 -16
- package/bundled/config/detect-local-llm-providers.js +130 -142
- 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 +45 -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 +67 -48
- package/bundled/config/ensure-kubbisec-project-settings.js.map +1 -1
- package/bundled/config/extended-context.d.ts +5 -6
- package/bundled/config/extended-context.js +23 -22
- package/bundled/config/feature-flags.d.ts +10 -2
- package/bundled/config/feature-flags.js +8 -2
- package/bundled/config/format-kubbisec-footer-status.d.ts +1 -1
- package/bundled/config/format-kubbisec-footer-status.js +26 -31
- package/bundled/config/kubbisec-extension-manifest.d.ts +21 -2
- 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 +51 -25
- package/bundled/config/llm-config-mutations.js +173 -182
- package/bundled/config/llm-config.d.ts +54 -41
- package/bundled/config/llm-config.js +199 -199
- package/bundled/config/llm-provider-catalog.d.ts +18 -15
- package/bundled/config/llm-provider-catalog.js +45 -46
- 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 +173 -183
- package/bundled/config/materialize-kubbisec-pi-resources.js.map +1 -1
- package/bundled/config/register-custom-llm-providers.d.ts +11 -5
- package/bundled/config/register-custom-llm-providers.js +17 -15
- package/bundled/config/register-kubbisec-llm-provider.d.ts +14 -10
- package/bundled/config/register-kubbisec-llm-provider.js +50 -42
- package/bundled/config/resolve-agents-context-file.d.ts +1 -1
- package/bundled/config/resolve-agents-context-file.js +33 -34
- 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 +6 -3
- package/bundled/config/sync-kubbisec-pi-models.js +58 -58
- package/bundled/copy/cli-reference-index.d.ts +2 -6
- 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 +11 -6
- package/bundled/copy/kubbisec-shell-copy.js +1 -1
- package/bundled/extensions/cli-local-shared.d.ts +60 -26
- package/bundled/extensions/cli-local-shared.d.ts.map +1 -1
- package/bundled/extensions/cli-local-shared.js +139 -118
- package/bundled/extensions/cli-local-shared.js.map +1 -1
- package/bundled/extensions/kubbisec-aspm-local.extension.d.ts +18 -15
- package/bundled/extensions/kubbisec-aspm-local.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-aspm-local.extension.js +109 -117
- 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 +64 -35
- package/bundled/extensions/kubbisec-clarify.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-clarify.extension.js +323 -305
- 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 +29 -32
- package/bundled/extensions/kubbisec-extended-context.extension.d.ts +1 -1
- package/bundled/extensions/kubbisec-extended-context.extension.js +56 -43
- 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 +205 -215
- package/bundled/extensions/kubbisec-footer.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-github-local.extension.d.ts +26 -21
- package/bundled/extensions/kubbisec-github-local.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-github-local.extension.js +470 -122
- 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 +200 -181
- package/bundled/extensions/kubbisec-memory.extension.d.ts +9 -7
- package/bundled/extensions/kubbisec-memory.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-memory.extension.js +88 -95
- package/bundled/extensions/kubbisec-naus-local.extension.d.ts +18 -15
- package/bundled/extensions/kubbisec-naus-local.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-naus-local.extension.js +123 -114
- package/bundled/extensions/kubbisec-naus-local.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-platform-tools.extension.d.ts +31 -21
- 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 +10 -8
- package/bundled/extensions/kubbisec-runtime-status.extension.js +15 -13
- package/bundled/extensions/kubbisec-scope.extension.d.ts +12 -7
- package/bundled/extensions/kubbisec-scope.extension.js +13 -13
- package/bundled/extensions/kubbisec-skill-mentions.extension.d.ts +27 -16
- package/bundled/extensions/kubbisec-skill-mentions.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-skill-mentions.extension.js +74 -63
- package/bundled/extensions/kubbisec-skill-mentions.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-skill-telemetry.extension.d.ts +2 -3
- package/bundled/extensions/kubbisec-skill-telemetry.extension.js +59 -64
- package/bundled/extensions/kubbisec-theme-lock.extension.d.ts +1 -1
- package/bundled/extensions/kubbisec-theme-lock.extension.js +33 -34
- 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 +118 -109
- package/bundled/extensions/kubbisec-ui.extension.js.map +1 -1
- package/bundled/extensions/kubbisec-workflow.extension.d.ts +20 -18
- package/bundled/extensions/kubbisec-workflow.extension.d.ts.map +1 -1
- package/bundled/extensions/kubbisec-workflow.extension.js +138 -140
- 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 +54 -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/redaction.test.d.ts +2 -0
- package/bundled/node_modules/@aspm/shared/dist/redaction.test.d.ts.map +1 -0
- package/bundled/node_modules/@aspm/shared/dist/redaction.test.js +626 -0
- package/bundled/node_modules/@aspm/shared/dist/redaction.test.js.map +1 -0
- 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 +121 -131
- 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 +146 -153
- package/bundled/skills/chat-mention-render.d.ts +2 -2
- package/bundled/skills/chat-mention-render.js +121 -126
- package/bundled/skills/chat-mentions.d.ts +17 -8
- 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 +33 -35
- package/bundled/skills/naus-pipelines/SKILL.md +11 -10
- package/bundled/skills/remediation/SKILL.md +1 -1
- package/bundled/skills/skill-mention.d.ts +10 -2
- package/bundled/skills/skill-mention.js +10 -2
- package/bundled/theme/clear-terminal.d.ts +1 -1
- package/bundled/theme/clear-terminal.js +3 -4
- 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 +30 -31
- 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 +11 -10
- package/bundled/theme/render-compact-header.d.ts +13 -5
- package/bundled/theme/render-compact-header.js +127 -129
- 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 -28
- package/bundled/clarify/clarify-gate.d.ts.map +0 -1
- package/bundled/clarify/clarify-gate.js +0 -152
- package/bundled/clarify/clarify-gate.js.map +0 -1
- package/bundled/clarify/clarify-select-panel.d.ts +0 -14
- package/bundled/clarify/clarify-select-panel.d.ts.map +0 -1
- package/bundled/clarify/clarify-select-panel.js +0 -82
- package/bundled/clarify/clarify-select-panel.js.map +0 -1
- package/bundled/clarify/clarify-ui-state.d.ts +0 -21
- 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 -21
- package/bundled/clarify/parse-clarify-answer.d.ts.map +0 -1
- package/bundled/clarify/parse-clarify-answer.js +0 -57
- package/bundled/clarify/parse-clarify-answer.js.map +0 -1
- package/bundled/clarify/question-format.d.ts +0 -39
- package/bundled/clarify/question-format.d.ts.map +0 -1
- package/bundled/clarify/question-format.js +0 -144
- package/bundled/clarify/question-format.js.map +0 -1
- package/bundled/clarify/questionnaire-tool.d.ts +0 -25
- package/bundled/clarify/questionnaire-tool.d.ts.map +0 -1
- package/bundled/clarify/questionnaire-tool.js +0 -161
- package/bundled/clarify/questionnaire-tool.js.map +0 -1
- package/bundled/clarify/scope-discovery.d.ts +0 -9
- package/bundled/clarify/scope-discovery.d.ts.map +0 -1
- package/bundled/clarify/scope-discovery.js +0 -130
- package/bundled/clarify/scope-discovery.js.map +0 -1
- package/bundled/clarify/session-questionnaire.d.ts +0 -26
- package/bundled/clarify/session-questionnaire.d.ts.map +0 -1
- package/bundled/clarify/session-questionnaire.js +0 -372
- package/bundled/clarify/session-questionnaire.js.map +0 -1
- package/bundled/clarify/session-questionnaire.types.d.ts +0 -47
- 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
|
@@ -1,108 +1,108 @@
|
|
|
1
1
|
import { fuzzyFilter } from "@earendil-works/pi-tui";
|
|
2
2
|
export const SKILL_MENTION_TOKEN = "@skill";
|
|
3
3
|
export const PLAN_MENTION_ALIASES = ["@plan", "@planejar"];
|
|
4
|
-
const PLAN_MENTION_TOKENS_LONGEST_FIRST = [...PLAN_MENTION_ALIASES].sort(
|
|
4
|
+
const PLAN_MENTION_TOKENS_LONGEST_FIRST = [...PLAN_MENTION_ALIASES].sort(
|
|
5
|
+
(a, b) => b.length - a.length,
|
|
6
|
+
);
|
|
5
7
|
const PATH_DELIMITERS = new Set([" ", "\t", '"', "'", "="]);
|
|
6
8
|
function findLastDelimiter(text) {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
9
|
+
for (let i = text.length - 1; i >= 0; i -= 1) {
|
|
10
|
+
if (PATH_DELIMITERS.has(text[i] ?? "")) {
|
|
11
|
+
return i;
|
|
11
12
|
}
|
|
12
|
-
|
|
13
|
+
}
|
|
14
|
+
return -1;
|
|
13
15
|
}
|
|
14
16
|
/** Same token rules as Pi CombinedAutocompleteProvider.extractAtPrefix. */
|
|
15
17
|
export function extractAtPrefix(textBeforeCursor) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
18
|
+
const lastDelimiterIndex = findLastDelimiter(textBeforeCursor);
|
|
19
|
+
const tokenStart = lastDelimiterIndex === -1 ? 0 : lastDelimiterIndex + 1;
|
|
20
|
+
if (textBeforeCursor[tokenStart] === "@") {
|
|
21
|
+
return textBeforeCursor.slice(tokenStart);
|
|
22
|
+
}
|
|
23
|
+
return null;
|
|
22
24
|
}
|
|
23
25
|
/** KubbiSec: `@skill` may include a space and partial name (not only the last @ token). */
|
|
24
26
|
export function extractSkillMentionPrefix(textBeforeCursor) {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return null;
|
|
34
|
-
return slice;
|
|
27
|
+
const idx = textBeforeCursor.lastIndexOf(SKILL_MENTION_TOKEN);
|
|
28
|
+
if (idx === -1) return null;
|
|
29
|
+
if (idx > 0 && !PATH_DELIMITERS.has(textBeforeCursor[idx - 1] ?? "")) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
const slice = textBeforeCursor.slice(idx);
|
|
33
|
+
if (!parseSkillMentionPrefix(slice)) return null;
|
|
34
|
+
return slice;
|
|
35
35
|
}
|
|
36
36
|
export function parseSkillMentionPrefix(atPrefix) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
return null;
|
|
42
|
-
return { query: tail.startsWith(" ") ? tail.trimStart() : "" };
|
|
37
|
+
if (!atPrefix?.startsWith(SKILL_MENTION_TOKEN)) return null;
|
|
38
|
+
const tail = atPrefix.slice(SKILL_MENTION_TOKEN.length);
|
|
39
|
+
if (tail.length > 0 && !tail.startsWith(" ")) return null;
|
|
40
|
+
return { query: tail.startsWith(" ") ? tail.trimStart() : "" };
|
|
43
41
|
}
|
|
44
42
|
export function parsePlanMentionPrefix(atPrefix) {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
return { query: tail.startsWith(" ") ? tail.trimStart() : "" };
|
|
54
|
-
}
|
|
55
|
-
return null;
|
|
43
|
+
if (!atPrefix) return null;
|
|
44
|
+
for (const token of PLAN_MENTION_TOKENS_LONGEST_FIRST) {
|
|
45
|
+
if (!atPrefix.startsWith(token)) continue;
|
|
46
|
+
const tail = atPrefix.slice(token.length);
|
|
47
|
+
if (tail.length > 0 && !tail.startsWith(" ")) continue;
|
|
48
|
+
return { query: tail.startsWith(" ") ? tail.trimStart() : "" };
|
|
49
|
+
}
|
|
50
|
+
return null;
|
|
56
51
|
}
|
|
57
52
|
export function filterSkillSuggestions(skills, query) {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
})
|
|
53
|
+
const items = skills.map((skill) => ({
|
|
54
|
+
value: skill.name,
|
|
55
|
+
label: skill.name,
|
|
56
|
+
description: skill.description,
|
|
57
|
+
}));
|
|
58
|
+
if (!query) return items;
|
|
59
|
+
return fuzzyFilter(items, query, (item) => `${item.label} ${item.description ?? ""}`).map(
|
|
60
|
+
(item) => ({
|
|
61
|
+
value: item.value,
|
|
62
|
+
label: item.label,
|
|
63
|
+
description: item.description,
|
|
64
|
+
}),
|
|
65
|
+
);
|
|
70
66
|
}
|
|
71
67
|
/** Pi expands `/skill:name` — map `@skill name` before submit. */
|
|
72
68
|
export function transformAtSkillMentions(text) {
|
|
73
|
-
|
|
69
|
+
return text.replace(/@skill\s+([^\s@/]+)/g, "/skill:$1");
|
|
74
70
|
}
|
|
75
71
|
/** Legacy: map `@plan` / `@planejar` to `/mode:plan` (prefer session state + visible @plan). */
|
|
76
72
|
export function transformAtPlanMentions(text) {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
73
|
+
const tokenPattern = PLAN_MENTION_TOKENS_LONGEST_FIRST.map((t) =>
|
|
74
|
+
t.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"),
|
|
75
|
+
).join("|");
|
|
76
|
+
const pattern = new RegExp(`(^|[\\s"'=])(${tokenPattern})(\\s[\\s\\S]*)?`, "g");
|
|
77
|
+
return text.replace(pattern, (_match, delim, _token, tail) => {
|
|
78
|
+
const query = tail ? tail.trimStart() : "";
|
|
79
|
+
return `${delim}/mode:plan${query ? ` ${query}` : ""}`;
|
|
80
|
+
});
|
|
83
81
|
}
|
|
84
82
|
/** Apply @skill → /skill:name only. @plan stays visible; plan mode is set via session state. */
|
|
85
83
|
export function transformChatMentions(text) {
|
|
86
|
-
|
|
84
|
+
return transformAtSkillMentions(text);
|
|
87
85
|
}
|
|
88
86
|
export function messageActivatesPlanMode(text) {
|
|
89
|
-
|
|
90
|
-
|
|
87
|
+
const trimmed = text.trim();
|
|
88
|
+
return (
|
|
89
|
+
trimmed.startsWith("/mode:plan") || /^@plan\b/i.test(trimmed) || /^@planejar\b/i.test(trimmed)
|
|
90
|
+
);
|
|
91
91
|
}
|
|
92
92
|
export function applySkillMentionCompletion(lines, cursorLine, cursorCol, item, prefix) {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
93
|
+
const currentLine = lines[cursorLine] ?? "";
|
|
94
|
+
const beforePrefix = currentLine.slice(0, cursorCol - prefix.length);
|
|
95
|
+
const afterCursor = currentLine.slice(cursorCol);
|
|
96
|
+
const atIndex = beforePrefix.lastIndexOf(SKILL_MENTION_TOKEN);
|
|
97
|
+
const head = atIndex >= 0 ? beforePrefix.slice(0, atIndex) : beforePrefix;
|
|
98
|
+
const insertion = `${SKILL_MENTION_TOKEN} ${item.value} `;
|
|
99
|
+
const newLine = `${head}${insertion}${afterCursor}`;
|
|
100
|
+
const newLines = [...lines];
|
|
101
|
+
newLines[cursorLine] = newLine;
|
|
102
|
+
return {
|
|
103
|
+
lines: newLines,
|
|
104
|
+
cursorLine,
|
|
105
|
+
cursorCol: head.length + insertion.length,
|
|
106
|
+
};
|
|
107
107
|
}
|
|
108
|
-
//# sourceMappingURL=chat-mentions.js.map
|
|
108
|
+
//# sourceMappingURL=chat-mentions.js.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: github-local
|
|
3
|
-
description: Local gh/git, naus, and aspm on the machine running kbs chat
|
|
3
|
+
description: Local gh/git, naus, and aspm on the machine running kbs chat with host-first auth support.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
`kbs chat --extended-context -p <project-id> -w /path/to/clone`
|
|
6
|
+
GitHub local tools are available in chat without `--extended-context`.
|
|
9
7
|
|
|
10
8
|
## Tools
|
|
11
9
|
|
|
12
|
-
- **GitHub:** `github_local_status`, `github_local_repo_summary`
|
|
10
|
+
- **GitHub:** `github_local_status`, `github_local_repo_summary`, `github_local_clone`, `github_local_fetch`, `github_local_commit`, `github_local_push`, `github_local_pr_create`
|
|
11
|
+
- Uses host `gh`/`git` auth first; local push/PR/clone retry once with the platform/env token when native auth is rejected.
|
|
12
|
+
- Always available in chat (no `--extended-context` required).
|
|
13
13
|
- **NAUS:** `naus_local_status`, `naus_local_validate`, `naus_local_plan`, `naus_local_run`
|
|
14
14
|
- **ASPM:** `aspm_local_status`, `aspm_local_doctor`, `aspm_local_scan`, `aspm_local_upload`
|
|
15
15
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export type KubbisecSkillEntry = {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
name: string;
|
|
3
|
+
description: string;
|
|
4
4
|
};
|
|
5
5
|
/** Skills shipped under dist/skills (same dirs passed as Pi --skill). */
|
|
6
6
|
export declare function listBundledKubbisecSkills(): KubbisecSkillEntry[];
|
|
7
|
-
//# sourceMappingURL=list-bundled-skills.d.ts.map
|
|
7
|
+
//# sourceMappingURL=list-bundled-skills.d.ts.map
|
|
@@ -1,44 +1,42 @@
|
|
|
1
1
|
import * as fs from "node:fs";
|
|
2
2
|
import * as path from "node:path";
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
resolveBundledDistRoot,
|
|
5
|
+
resolveSnapshotBundledDistDir,
|
|
6
|
+
} from "../resolve-bundled-dist-root.js";
|
|
7
|
+
|
|
4
8
|
function parseSkillFrontmatter(raw) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return { name, description };
|
|
9
|
+
const match = raw.match(/^---\r?\n([\s\S]*?)\r?\n---/);
|
|
10
|
+
if (!match) return {};
|
|
11
|
+
const block = match[1];
|
|
12
|
+
const name = block.match(/^name:\s*(.+)$/m)?.[1]?.trim();
|
|
13
|
+
const description = block.match(/^description:\s*(.+)$/m)?.[1]?.trim();
|
|
14
|
+
return { name, description };
|
|
12
15
|
}
|
|
13
16
|
function resolveSkillsDir() {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
return srcDir;
|
|
21
|
-
return null;
|
|
17
|
+
const distDir = path.join(resolveBundledDistRoot(), "skills");
|
|
18
|
+
if (fs.existsSync(distDir)) return distDir;
|
|
19
|
+
const entryDir = path.dirname(resolveSnapshotBundledDistDir());
|
|
20
|
+
const srcDir = path.join(entryDir, "src/skills");
|
|
21
|
+
if (fs.existsSync(srcDir)) return srcDir;
|
|
22
|
+
return null;
|
|
22
23
|
}
|
|
23
24
|
/** Skills shipped under dist/skills (same dirs passed as Pi --skill). */
|
|
24
25
|
export function listBundledKubbisecSkills() {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
return entries.sort((a, b) => a.name.localeCompare(b.name));
|
|
26
|
+
const skillsDir = resolveSkillsDir();
|
|
27
|
+
if (!skillsDir) return [];
|
|
28
|
+
const entries = [];
|
|
29
|
+
for (const dir of fs.readdirSync(skillsDir, { withFileTypes: true })) {
|
|
30
|
+
if (!dir.isDirectory()) continue;
|
|
31
|
+
const skillMd = path.join(skillsDir, dir.name, "SKILL.md");
|
|
32
|
+
if (!fs.existsSync(skillMd)) continue;
|
|
33
|
+
const raw = fs.readFileSync(skillMd, "utf8");
|
|
34
|
+
const meta = parseSkillFrontmatter(raw);
|
|
35
|
+
entries.push({
|
|
36
|
+
name: meta.name?.trim() || dir.name,
|
|
37
|
+
description: meta.description?.trim() || dir.name,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
return entries.sort((a, b) => a.name.localeCompare(b.name));
|
|
43
41
|
}
|
|
44
|
-
//# sourceMappingURL=list-bundled-skills.js.map
|
|
42
|
+
//# sourceMappingURL=list-bundled-skills.js.map
|
|
@@ -16,7 +16,7 @@ description: NAUS CI/CD — YAML, validação @naus/validation, runners e jobs A
|
|
|
16
16
|
|
|
17
17
|
Top-level: `name`, `description`, `local`, `stages`, `variables`, `volumes`, `repository`, `only`, `run` (obrigatório).
|
|
18
18
|
|
|
19
|
-
**HARD-GATE:** antes de mostrar YAML final → `naus_pipeline_docs` + `naus_validate_yaml` (ou `naus_local_validate`
|
|
19
|
+
**HARD-GATE:** antes de mostrar YAML final → `naus_pipeline_docs` + `naus_validate_yaml` (ou `naus_local_validate` no workspace).
|
|
20
20
|
|
|
21
21
|
## NAUS CLI (`npm install -g @kubbisec/naus`)
|
|
22
22
|
|
|
@@ -54,14 +54,9 @@ run:
|
|
|
54
54
|
|
|
55
55
|
- kubbisec_scan:
|
|
56
56
|
stage: security
|
|
57
|
-
kind:
|
|
58
|
-
|
|
59
|
-
matrix_strategy: chain
|
|
57
|
+
kind: kubbisec_scan
|
|
58
|
+
profile: full
|
|
60
59
|
depends_on: [build]
|
|
61
|
-
parallel:
|
|
62
|
-
- tool: osv
|
|
63
|
-
- tool: gitleaks
|
|
64
|
-
- tool: syft
|
|
65
60
|
|
|
66
61
|
- kubbisec_gate:
|
|
67
62
|
kind: aspm_gate
|
|
@@ -72,13 +67,17 @@ run:
|
|
|
72
67
|
CRITICAL: 0
|
|
73
68
|
```
|
|
74
69
|
|
|
75
|
-
Jobs `kind: aspm` **não** precisam de `script:` — o NAUS expande
|
|
70
|
+
Jobs `kind: aspm` e `kind: kubbisec_scan` **não** precisam de `script:` — o NAUS expande para a CLI correspondente.
|
|
71
|
+
|
|
72
|
+
### Hybrid Scan (`kind: kubbisec_scan`)
|
|
73
|
+
Executa uma varredura híbrida (scanners tradicionais + passes semânticos de IA) e faz o upload automático para o ASPM. É o sucessor moderno do `kind: aspm_matrix` para segurança geral do repositório.
|
|
76
74
|
|
|
77
75
|
## Kinds de job
|
|
78
76
|
|
|
79
77
|
| Kind | Campos principais |
|
|
80
78
|
|------|-------------------|
|
|
81
79
|
| `container` (default) | `image:`, `script:`, `depends_on:` |
|
|
80
|
+
| `kubbisec_scan` | `profile:` full \| quick \| ai-only \| scanners-only |
|
|
82
81
|
| `aspm` | `tool:`, `mode:` scan \| upload \| scan-and-upload |
|
|
83
82
|
| `aspm_matrix` | `parallel: [{ tool: ... }]`, `matrix_strategy:` chain \| fanout |
|
|
84
83
|
| `aspm_gate` | `rules:` (vulnerabilities, coverage, risk_score) |
|
|
@@ -105,7 +104,9 @@ No YAML, referencie apenas `$VAR` — nunca o valor em claro. Chaves em `.secret
|
|
|
105
104
|
- Local `naus run` → criar `.secrets` no repo; **não** inventar `kubsec_set_secret`, `naus set_env_pack` ou `attach_env_pack` para execução local.
|
|
106
105
|
- Cloud → Env Packs na UI; `.secrets` só existe na máquina onde corres `naus run`.
|
|
107
106
|
|
|
108
|
-
## Fluxo local (`kbs chat
|
|
107
|
+
## Fluxo local (`kbs chat -w <repo>`)
|
|
108
|
+
|
|
109
|
+
Ferramentas `naus_local_*` disponíveis sem `--extended-context`. Se `naus` não estiver no PATH, o chat instala `@kubbisec/naus` globalmente (allowlist) antes de executar.
|
|
109
110
|
|
|
110
111
|
| Tool | Comando |
|
|
111
112
|
|------|---------|
|
|
@@ -9,4 +9,4 @@ Fix the finding using the cloned repository workspace.
|
|
|
9
9
|
2. Apply minimal code changes from real evidence only — no invented CVEs or paths.
|
|
10
10
|
3. Auto-PR (`kbs fix --mode auto`): commit, `git push`, `gh pr create` with `GIT_TERMINAL_PROMPT=0` and `GH_PROMPT_DISABLED=1`.
|
|
11
11
|
|
|
12
|
-
For local
|
|
12
|
+
For local git/gh in chat, use `github_local_*` tools (always available; host-first auth). See @skill github-local.
|
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
/** @deprecated Import from chat-mentions.js — re-export shim for backward compatibility. */
|
|
2
|
-
export {
|
|
3
|
-
|
|
2
|
+
export {
|
|
3
|
+
applySkillMentionCompletion,
|
|
4
|
+
extractAtPrefix,
|
|
5
|
+
extractSkillMentionPrefix,
|
|
6
|
+
filterSkillSuggestions,
|
|
7
|
+
parseSkillMentionPrefix,
|
|
8
|
+
SKILL_MENTION_TOKEN,
|
|
9
|
+
transformAtSkillMentions,
|
|
10
|
+
} from "./chat-mentions.js";
|
|
11
|
+
//# sourceMappingURL=skill-mention.d.ts.map
|
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
/** @deprecated Import from chat-mentions.js — re-export shim for backward compatibility. */
|
|
2
|
-
export {
|
|
3
|
-
|
|
2
|
+
export {
|
|
3
|
+
applySkillMentionCompletion,
|
|
4
|
+
extractAtPrefix,
|
|
5
|
+
extractSkillMentionPrefix,
|
|
6
|
+
filterSkillSuggestions,
|
|
7
|
+
parseSkillMentionPrefix,
|
|
8
|
+
SKILL_MENTION_TOKEN,
|
|
9
|
+
transformAtSkillMentions,
|
|
10
|
+
} from "./chat-mentions.js";
|
|
11
|
+
//# sourceMappingURL=skill-mention.js.map
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/** Clear visible screen and scrollback when stdout is a TTY (chat TUI takeover). */
|
|
2
2
|
export function clearTerminal() {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
process.stdout.write("\x1b[2J\x1b[3J\x1b[H");
|
|
3
|
+
if (!process.stdout.isTTY) return;
|
|
4
|
+
process.stdout.write("\x1b[2J\x1b[3J\x1b[H");
|
|
6
5
|
}
|
|
7
|
-
//# sourceMappingURL=clear-terminal.js.map
|
|
6
|
+
//# sourceMappingURL=clear-terminal.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
let requestRender;
|
|
2
2
|
export function setKubbisecFooterRequestRender(handler) {
|
|
3
|
-
|
|
3
|
+
requestRender = handler;
|
|
4
4
|
}
|
|
5
5
|
export function requestKubbisecFooterRender() {
|
|
6
|
-
|
|
6
|
+
requestRender?.();
|
|
7
7
|
}
|
|
8
|
-
//# sourceMappingURL=footer-render-hook.js.map
|
|
8
|
+
//# sourceMappingURL=footer-render-hook.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/** Brand cyan #28DCF9 — kubbisec.json `accent`, footer branch, hex `mark.ansi`. */
|
|
2
2
|
export declare const KUBBISEC_BRAND_CYAN_ANSI = "\u001B[38;2;40;220;249m";
|
|
3
3
|
export declare function kubbisecBrandFg(text: string): string;
|
|
4
|
-
//# sourceMappingURL=kubbisec-brand-fg.d.ts.map
|
|
4
|
+
//# sourceMappingURL=kubbisec-brand-fg.d.ts.map
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
export const KUBBISEC_BRAND_CYAN_ANSI = "\x1b[38;2;40;220;249m";
|
|
3
3
|
const ANSI_RESET = "\x1b[0m";
|
|
4
4
|
export function kubbisecBrandFg(text) {
|
|
5
|
-
|
|
5
|
+
return `${KUBBISEC_BRAND_CYAN_ANSI}${text}${ANSI_RESET}`;
|
|
6
6
|
}
|
|
7
|
-
//# sourceMappingURL=kubbisec-brand-fg.js.map
|
|
7
|
+
//# sourceMappingURL=kubbisec-brand-fg.js.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import type { EditorTheme } from "@earendil-works/pi-tui";
|
|
2
|
+
|
|
2
3
|
declare function dimText(text: string): string;
|
|
3
4
|
/** `/settings` list — current value column and cursor use brand cyan (#28DCF9). */
|
|
4
5
|
export declare function buildKubbisecSettingsListTheme(): {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
label: (text: string, selected: boolean) => string;
|
|
7
|
+
value: (text: string, _selected: boolean) => string;
|
|
8
|
+
description: typeof dimText;
|
|
9
|
+
cursor: string;
|
|
10
|
+
hint: typeof dimText;
|
|
10
11
|
};
|
|
11
12
|
/** Map Pi `accent` role to exact brand RGB (footer branch, header). */
|
|
12
13
|
export declare function patchGlobalThemeAccent(): void;
|
|
13
14
|
/** Slash-command autocomplete inside the editor — selected row uses brand cyan (#28DCF9). */
|
|
14
15
|
export declare function withKubbisecSelectListTheme(theme: EditorTheme): EditorTheme;
|
|
15
|
-
|
|
16
|
-
//# sourceMappingURL=kubbisec-menu-themes.d.ts.map
|
|
16
|
+
//# sourceMappingURL=kubbisec-menu-themes.d.ts.map
|
|
@@ -1,47 +1,46 @@
|
|
|
1
1
|
import { kubbisecBrandFg } from "./kubbisec-brand-fg.js";
|
|
2
|
+
|
|
2
3
|
const brand = (text) => kubbisecBrandFg(text);
|
|
3
4
|
const PI_THEME_KEY = Symbol.for("@earendil-works/pi-coding-agent:theme");
|
|
4
5
|
function getPiThemeInstance() {
|
|
5
|
-
|
|
6
|
+
return globalThis[PI_THEME_KEY];
|
|
6
7
|
}
|
|
7
8
|
function dimText(text) {
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
const instance = getPiThemeInstance();
|
|
10
|
+
return instance ? instance.fg("dim", text) : text;
|
|
10
11
|
}
|
|
11
12
|
/** `/settings` list — current value column and cursor use brand cyan (#28DCF9). */
|
|
12
13
|
export function buildKubbisecSettingsListTheme() {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
return {
|
|
15
|
+
label: (text, selected) => (selected ? brand(text) : text),
|
|
16
|
+
value: (text, _selected) => brand(text),
|
|
17
|
+
description: dimText,
|
|
18
|
+
cursor: brand("→ "),
|
|
19
|
+
hint: dimText,
|
|
20
|
+
};
|
|
20
21
|
}
|
|
21
22
|
/** Map Pi `accent` role to exact brand RGB (footer branch, header). */
|
|
22
23
|
export function patchGlobalThemeAccent() {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
};
|
|
32
|
-
instance.__kubbisecMenuPatched = true;
|
|
24
|
+
const instance = getPiThemeInstance();
|
|
25
|
+
if (!instance || instance.__kubbisecMenuPatched) return;
|
|
26
|
+
const originalFg = instance.fg.bind(instance);
|
|
27
|
+
instance.fg = (role, text) => {
|
|
28
|
+
if (role === "accent") return brand(text);
|
|
29
|
+
return originalFg(role, text);
|
|
30
|
+
};
|
|
31
|
+
instance.__kubbisecMenuPatched = true;
|
|
33
32
|
}
|
|
34
33
|
/** Slash-command autocomplete inside the editor — selected row uses brand cyan (#28DCF9). */
|
|
35
34
|
export function withKubbisecSelectListTheme(theme) {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
35
|
+
return {
|
|
36
|
+
...theme,
|
|
37
|
+
selectList: {
|
|
38
|
+
selectedPrefix: brand,
|
|
39
|
+
selectedText: brand,
|
|
40
|
+
description: theme.selectList.description,
|
|
41
|
+
scrollInfo: theme.selectList.scrollInfo,
|
|
42
|
+
noMatch: theme.selectList.noMatch,
|
|
43
|
+
},
|
|
44
|
+
};
|
|
46
45
|
}
|
|
47
|
-
//# sourceMappingURL=kubbisec-menu-themes.js.map
|
|
46
|
+
//# sourceMappingURL=kubbisec-menu-themes.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export declare const KUBBISEC_THEME_NAME = "kubbisec";
|
|
2
|
-
//# sourceMappingURL=kubbisec-theme-name.d.ts.map
|
|
2
|
+
//# sourceMappingURL=kubbisec-theme-name.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export const KUBBISEC_THEME_NAME = "kubbisec";
|
|
2
|
-
//# sourceMappingURL=kubbisec-theme-name.js.map
|
|
2
|
+
//# sourceMappingURL=kubbisec-theme-name.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/** Runtime patch for Pi `/settings` current-value column (deep import via require.resolve). */
|
|
2
2
|
export declare function patchPiSettingsListTheme(): Promise<void>;
|
|
3
|
-
//# sourceMappingURL=patch-pi-settings-theme.runtime.d.ts.map
|
|
3
|
+
//# sourceMappingURL=patch-pi-settings-theme.runtime.d.ts.map
|
|
@@ -3,14 +3,15 @@ import { pathToFileURL } from "node:url";
|
|
|
3
3
|
import { buildKubbisecSettingsListTheme } from "./kubbisec-menu-themes.js";
|
|
4
4
|
/** Runtime patch for Pi `/settings` current-value column (deep import via require.resolve). */
|
|
5
5
|
export async function patchPiSettingsListTheme() {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
6
|
+
try {
|
|
7
|
+
const require = createRequire(import.meta.url);
|
|
8
|
+
const themePath = require.resolve(
|
|
9
|
+
"@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js",
|
|
10
|
+
);
|
|
11
|
+
const themeMod = await import(pathToFileURL(themePath).href);
|
|
12
|
+
themeMod.getSettingsListTheme = buildKubbisecSettingsListTheme;
|
|
13
|
+
} catch {
|
|
14
|
+
// Pi bundle layout differs — accent patch still applies to selected rows.
|
|
15
|
+
}
|
|
15
16
|
}
|
|
16
|
-
//# sourceMappingURL=patch-pi-settings-theme.runtime.js.map
|
|
17
|
+
//# sourceMappingURL=patch-pi-settings-theme.runtime.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export type CompactHeaderTheme = {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
fg: (role: string, text: string) => string;
|
|
3
|
+
bold: (text: string) => string;
|
|
4
4
|
};
|
|
5
5
|
/** Works from `dist/theme/` and from materialized `<cwd>/.pi/theme/`. */
|
|
6
6
|
export declare function resolveTerminalAssetsDir(moduleUrl?: string): string;
|
|
@@ -16,6 +16,14 @@ export declare function renderHeaderHintsLine(theme: CompactHeaderTheme): string
|
|
|
16
16
|
/** Single-line brand row: mark + wordmark + version + subtitle. */
|
|
17
17
|
export declare function renderCompactHeaderLine(theme: CompactHeaderTheme, version: string): string;
|
|
18
18
|
/** Default chat chrome: hex block, wordmark, version, spacer, subtitle, hints. */
|
|
19
|
-
export declare function renderCompactHeaderLines(
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
export declare function renderCompactHeaderLines(
|
|
20
|
+
theme: CompactHeaderTheme,
|
|
21
|
+
version: string,
|
|
22
|
+
width?: number,
|
|
23
|
+
): string[];
|
|
24
|
+
export declare function renderChatHeaderLines(
|
|
25
|
+
theme: CompactHeaderTheme,
|
|
26
|
+
version: string,
|
|
27
|
+
width: number,
|
|
28
|
+
): string[];
|
|
29
|
+
//# sourceMappingURL=render-compact-header.d.ts.map
|