@ytinnovation/harness-core 0.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -0
- package/dist/assets/fetch-published-by-name.d.ts +16 -0
- package/dist/assets/fetch-published-by-name.d.ts.map +1 -0
- package/dist/assets/fetch-published-by-name.js +40 -0
- package/dist/assets/fetch-published-by-name.js.map +1 -0
- package/dist/assets/install-content.d.ts +7 -0
- package/dist/assets/install-content.d.ts.map +1 -0
- package/dist/assets/install-content.js +24 -0
- package/dist/assets/install-content.js.map +1 -0
- package/dist/assets/install-from.d.ts +6 -0
- package/dist/assets/install-from.d.ts.map +1 -0
- package/dist/assets/install-from.js +13 -0
- package/dist/assets/install-from.js.map +1 -0
- package/dist/assets/install.d.ts +36 -0
- package/dist/assets/install.d.ts.map +1 -0
- package/dist/assets/install.js +199 -0
- package/dist/assets/install.js.map +1 -0
- package/dist/assets/mcp-config-format.d.ts +11 -0
- package/dist/assets/mcp-config-format.d.ts.map +1 -0
- package/dist/assets/mcp-config-format.js +101 -0
- package/dist/assets/mcp-config-format.js.map +1 -0
- package/dist/assets/metadata.d.ts +65 -0
- package/dist/assets/metadata.d.ts.map +1 -0
- package/dist/assets/metadata.js +164 -0
- package/dist/assets/metadata.js.map +1 -0
- package/dist/assets/project-manifest.d.ts +80 -0
- package/dist/assets/project-manifest.d.ts.map +1 -0
- package/dist/assets/project-manifest.js +556 -0
- package/dist/assets/project-manifest.js.map +1 -0
- package/dist/assets/published-content.d.ts +28 -0
- package/dist/assets/published-content.d.ts.map +1 -0
- package/dist/assets/published-content.js +137 -0
- package/dist/assets/published-content.js.map +1 -0
- package/dist/assets/registry-entry.d.ts +9 -0
- package/dist/assets/registry-entry.d.ts.map +1 -0
- package/dist/assets/registry-entry.js +72 -0
- package/dist/assets/registry-entry.js.map +1 -0
- package/dist/assets/remote-list.d.ts +15 -0
- package/dist/assets/remote-list.d.ts.map +1 -0
- package/dist/assets/remote-list.js +36 -0
- package/dist/assets/remote-list.js.map +1 -0
- package/dist/cli-output/clipboard.d.ts +9 -0
- package/dist/cli-output/clipboard.d.ts.map +1 -0
- package/dist/cli-output/clipboard.js +56 -0
- package/dist/cli-output/clipboard.js.map +1 -0
- package/dist/cli-output/renderers.d.ts +99 -0
- package/dist/cli-output/renderers.d.ts.map +1 -0
- package/dist/cli-output/renderers.js +267 -0
- package/dist/cli-output/renderers.js.map +1 -0
- package/dist/cloud/enterprise-asset-client.d.ts +32 -0
- package/dist/cloud/enterprise-asset-client.d.ts.map +1 -0
- package/dist/cloud/enterprise-asset-client.js +179 -0
- package/dist/cloud/enterprise-asset-client.js.map +1 -0
- package/dist/cloud/enterprise-asset-types.d.ts +74 -0
- package/dist/cloud/enterprise-asset-types.d.ts.map +1 -0
- package/dist/cloud/enterprise-asset-types.js +2 -0
- package/dist/cloud/enterprise-asset-types.js.map +1 -0
- package/dist/cloud/harness-service-url.d.ts +3 -0
- package/dist/cloud/harness-service-url.d.ts.map +1 -0
- package/dist/cloud/harness-service-url.js +13 -0
- package/dist/cloud/harness-service-url.js.map +1 -0
- package/dist/cloud/rag-client.d.ts +18 -0
- package/dist/cloud/rag-client.d.ts.map +1 -0
- package/dist/cloud/rag-client.js +57 -0
- package/dist/cloud/rag-client.js.map +1 -0
- package/dist/cloud/redaction.d.ts +2 -0
- package/dist/cloud/redaction.d.ts.map +1 -0
- package/dist/cloud/redaction.js +53 -0
- package/dist/cloud/redaction.js.map +1 -0
- package/dist/cloud/telemetry-client.d.ts +21 -0
- package/dist/cloud/telemetry-client.d.ts.map +1 -0
- package/dist/cloud/telemetry-client.js +39 -0
- package/dist/cloud/telemetry-client.js.map +1 -0
- package/dist/contracts/config.d.ts +9 -0
- package/dist/contracts/config.d.ts.map +1 -0
- package/dist/contracts/config.defaults.d.ts +5 -0
- package/dist/contracts/config.defaults.d.ts.map +1 -0
- package/dist/contracts/config.defaults.js +5 -0
- package/dist/contracts/config.defaults.js.map +1 -0
- package/dist/contracts/config.js +5 -0
- package/dist/contracts/config.js.map +1 -0
- package/dist/contracts/config.loader.d.ts +3 -0
- package/dist/contracts/config.loader.d.ts.map +1 -0
- package/dist/contracts/config.loader.js +38 -0
- package/dist/contracts/config.loader.js.map +1 -0
- package/dist/contracts/errors.d.ts +8 -0
- package/dist/contracts/errors.d.ts.map +1 -0
- package/dist/contracts/errors.js +10 -0
- package/dist/contracts/errors.js.map +1 -0
- package/dist/cursor-acp-demo/index.d.ts +2 -0
- package/dist/cursor-acp-demo/index.d.ts.map +1 -0
- package/dist/cursor-acp-demo/index.js +63 -0
- package/dist/cursor-acp-demo/index.js.map +1 -0
- package/dist/dashboard/command.d.ts +15 -0
- package/dist/dashboard/command.d.ts.map +1 -0
- package/dist/dashboard/command.js +283 -0
- package/dist/dashboard/command.js.map +1 -0
- package/dist/dashboard/http-api.d.ts +3 -0
- package/dist/dashboard/http-api.d.ts.map +1 -0
- package/dist/dashboard/http-api.js +376 -0
- package/dist/dashboard/http-api.js.map +1 -0
- package/dist/dashboard/telemetry-snapshot.d.ts +11 -0
- package/dist/dashboard/telemetry-snapshot.d.ts.map +1 -0
- package/dist/dashboard/telemetry-snapshot.js +27 -0
- package/dist/dashboard/telemetry-snapshot.js.map +1 -0
- package/dist/dashboard-assets/assets/index-BNx5sFKx.css +1 -0
- package/dist/dashboard-assets/assets/index-ruRt5sDA.js +40 -0
- package/dist/dashboard-assets/index.html +13 -0
- package/dist/gateway/auth.d.ts +44 -0
- package/dist/gateway/auth.d.ts.map +1 -0
- package/dist/gateway/auth.js +2 -0
- package/dist/gateway/auth.js.map +1 -0
- package/dist/gateway/client.d.ts +65 -0
- package/dist/gateway/client.d.ts.map +1 -0
- package/dist/gateway/client.js +133 -0
- package/dist/gateway/client.js.map +1 -0
- package/dist/gateway/command.d.ts +4 -0
- package/dist/gateway/command.d.ts.map +1 -0
- package/dist/gateway/command.js +213 -0
- package/dist/gateway/command.js.map +1 -0
- package/dist/gateway/service-http-exchange.d.ts +17 -0
- package/dist/gateway/service-http-exchange.d.ts.map +1 -0
- package/dist/gateway/service-http-exchange.js +183 -0
- package/dist/gateway/service-http-exchange.js.map +1 -0
- package/dist/gateway/token-exchange.d.ts +10 -0
- package/dist/gateway/token-exchange.d.ts.map +1 -0
- package/dist/gateway/token-exchange.js +8 -0
- package/dist/gateway/token-exchange.js.map +1 -0
- package/dist/index.d.ts +111 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +62 -0
- package/dist/index.js.map +1 -0
- package/dist/init/cloud-asset-client.d.ts +74 -0
- package/dist/init/cloud-asset-client.d.ts.map +1 -0
- package/dist/init/cloud-asset-client.js +399 -0
- package/dist/init/cloud-asset-client.js.map +1 -0
- package/dist/init/cloud-auto.d.ts +16 -0
- package/dist/init/cloud-auto.d.ts.map +1 -0
- package/dist/init/cloud-auto.js +61 -0
- package/dist/init/cloud-auto.js.map +1 -0
- package/dist/init/command.d.ts +17 -0
- package/dist/init/command.d.ts.map +1 -0
- package/dist/init/command.js +783 -0
- package/dist/init/command.js.map +1 -0
- package/dist/init/cursor-adapter.d.ts +24 -0
- package/dist/init/cursor-adapter.d.ts.map +1 -0
- package/dist/init/cursor-adapter.js +71 -0
- package/dist/init/cursor-adapter.js.map +1 -0
- package/dist/init/fingerprint.d.ts +6 -0
- package/dist/init/fingerprint.d.ts.map +1 -0
- package/dist/init/fingerprint.js +157 -0
- package/dist/init/fingerprint.js.map +1 -0
- package/dist/init/git-identity-catalog.d.ts +17 -0
- package/dist/init/git-identity-catalog.d.ts.map +1 -0
- package/dist/init/git-identity-catalog.js +48 -0
- package/dist/init/git-identity-catalog.js.map +1 -0
- package/dist/init/local-fallback-config-packs.d.ts +5 -0
- package/dist/init/local-fallback-config-packs.d.ts.map +1 -0
- package/dist/init/local-fallback-config-packs.js +6 -0
- package/dist/init/local-fallback-config-packs.js.map +1 -0
- package/dist/init/manifest-records.d.ts +34 -0
- package/dist/init/manifest-records.d.ts.map +1 -0
- package/dist/init/manifest-records.js +296 -0
- package/dist/init/manifest-records.js.map +1 -0
- package/dist/init/matched-init.d.ts +64 -0
- package/dist/init/matched-init.d.ts.map +1 -0
- package/dist/init/matched-init.js +263 -0
- package/dist/init/matched-init.js.map +1 -0
- package/dist/init/plan.d.ts +8 -0
- package/dist/init/plan.d.ts.map +1 -0
- package/dist/init/plan.js +165 -0
- package/dist/init/plan.js.map +1 -0
- package/dist/init/project-fingerprint-catalog.d.ts +17 -0
- package/dist/init/project-fingerprint-catalog.d.ts.map +1 -0
- package/dist/init/project-fingerprint-catalog.js +105 -0
- package/dist/init/project-fingerprint-catalog.js.map +1 -0
- package/dist/init/prompt.d.ts +38 -0
- package/dist/init/prompt.d.ts.map +1 -0
- package/dist/init/prompt.js +217 -0
- package/dist/init/prompt.js.map +1 -0
- package/dist/init/questions.d.ts +5 -0
- package/dist/init/questions.d.ts.map +1 -0
- package/dist/init/questions.js +71 -0
- package/dist/init/questions.js.map +1 -0
- package/dist/init/template-match.d.ts +10 -0
- package/dist/init/template-match.d.ts.map +1 -0
- package/dist/init/template-match.js +125 -0
- package/dist/init/template-match.js.map +1 -0
- package/dist/init/types.d.ts +162 -0
- package/dist/init/types.d.ts.map +1 -0
- package/dist/init/types.js +2 -0
- package/dist/init/types.js.map +1 -0
- package/dist/init/write.d.ts +7 -0
- package/dist/init/write.d.ts.map +1 -0
- package/dist/init/write.js +155 -0
- package/dist/init/write.js.map +1 -0
- package/dist/install/command.d.ts +25 -0
- package/dist/install/command.d.ts.map +1 -0
- package/dist/install/command.js +251 -0
- package/dist/install/command.js.map +1 -0
- package/dist/install/prompt.d.ts +21 -0
- package/dist/install/prompt.d.ts.map +1 -0
- package/dist/install/prompt.js +60 -0
- package/dist/install/prompt.js.map +1 -0
- package/dist/kernel/commands/init.d.ts +11 -0
- package/dist/kernel/commands/init.d.ts.map +1 -0
- package/dist/kernel/commands/init.js +144 -0
- package/dist/kernel/commands/init.js.map +1 -0
- package/dist/kernel/create.d.ts +3 -0
- package/dist/kernel/create.d.ts.map +1 -0
- package/dist/kernel/create.js +31 -0
- package/dist/kernel/create.js.map +1 -0
- package/dist/kernel/router.d.ts +14 -0
- package/dist/kernel/router.d.ts.map +1 -0
- package/dist/kernel/router.js +73 -0
- package/dist/kernel/router.js.map +1 -0
- package/dist/kernel/types.d.ts +6 -0
- package/dist/kernel/types.d.ts.map +1 -0
- package/dist/kernel/types.js +2 -0
- package/dist/kernel/types.js.map +1 -0
- package/dist/knowledge/command.d.ts +6 -0
- package/dist/knowledge/command.d.ts.map +1 -0
- package/dist/knowledge/command.js +151 -0
- package/dist/knowledge/command.js.map +1 -0
- package/dist/knowledge/query.d.ts +23 -0
- package/dist/knowledge/query.d.ts.map +1 -0
- package/dist/knowledge/query.js +133 -0
- package/dist/knowledge/query.js.map +1 -0
- package/dist/knowledge/rag.d.ts +74 -0
- package/dist/knowledge/rag.d.ts.map +1 -0
- package/dist/knowledge/rag.js +55 -0
- package/dist/knowledge/rag.js.map +1 -0
- package/dist/knowledge/types.d.ts +40 -0
- package/dist/knowledge/types.d.ts.map +1 -0
- package/dist/knowledge/types.js +13 -0
- package/dist/knowledge/types.js.map +1 -0
- package/dist/mcp/command.d.ts +19 -0
- package/dist/mcp/command.d.ts.map +1 -0
- package/dist/mcp/command.js +359 -0
- package/dist/mcp/command.js.map +1 -0
- package/dist/mcp/server.d.ts +14 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +44 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/tool-registry.d.ts +38 -0
- package/dist/mcp/tool-registry.d.ts.map +1 -0
- package/dist/mcp/tool-registry.js +50 -0
- package/dist/mcp/tool-registry.js.map +1 -0
- package/dist/mcp/tools/add-skill.d.ts +29 -0
- package/dist/mcp/tools/add-skill.d.ts.map +1 -0
- package/dist/mcp/tools/add-skill.js +184 -0
- package/dist/mcp/tools/add-skill.js.map +1 -0
- package/dist/mcp/tools/assemble-init-assets.d.ts +26 -0
- package/dist/mcp/tools/assemble-init-assets.d.ts.map +1 -0
- package/dist/mcp/tools/assemble-init-assets.js +136 -0
- package/dist/mcp/tools/assemble-init-assets.js.map +1 -0
- package/dist/mcp/tools/query-knowledge.d.ts +28 -0
- package/dist/mcp/tools/query-knowledge.d.ts.map +1 -0
- package/dist/mcp/tools/query-knowledge.js +92 -0
- package/dist/mcp/tools/query-knowledge.js.map +1 -0
- package/dist/mcp/tools/read-instructions.d.ts +14 -0
- package/dist/mcp/tools/read-instructions.d.ts.map +1 -0
- package/dist/mcp/tools/read-instructions.js +81 -0
- package/dist/mcp/tools/read-instructions.js.map +1 -0
- package/dist/mcp/tools/sync-spec.d.ts +17 -0
- package/dist/mcp/tools/sync-spec.d.ts.map +1 -0
- package/dist/mcp/tools/sync-spec.js +80 -0
- package/dist/mcp/tools/sync-spec.js.map +1 -0
- package/dist/mcp/tools/update-rule.d.ts +49 -0
- package/dist/mcp/tools/update-rule.d.ts.map +1 -0
- package/dist/mcp/tools/update-rule.js +188 -0
- package/dist/mcp/tools/update-rule.js.map +1 -0
- package/dist/mcp/types.d.ts +21 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +8 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/prompt/command.d.ts +10 -0
- package/dist/prompt/command.d.ts.map +1 -0
- package/dist/prompt/command.js +260 -0
- package/dist/prompt/command.js.map +1 -0
- package/dist/rule/command.d.ts +10 -0
- package/dist/rule/command.d.ts.map +1 -0
- package/dist/rule/command.js +120 -0
- package/dist/rule/command.js.map +1 -0
- package/dist/skills/command.d.ts +23 -0
- package/dist/skills/command.d.ts.map +1 -0
- package/dist/skills/command.js +713 -0
- package/dist/skills/command.js.map +1 -0
- package/dist/skills/default-internal-skill-provider.d.ts +4 -0
- package/dist/skills/default-internal-skill-provider.d.ts.map +1 -0
- package/dist/skills/default-internal-skill-provider.js +23 -0
- package/dist/skills/default-internal-skill-provider.js.map +1 -0
- package/dist/skills/gitlab-skill-publish-client.d.ts +13 -0
- package/dist/skills/gitlab-skill-publish-client.d.ts.map +1 -0
- package/dist/skills/gitlab-skill-publish-client.js +255 -0
- package/dist/skills/gitlab-skill-publish-client.js.map +1 -0
- package/dist/skills/install.d.ts +23 -0
- package/dist/skills/install.d.ts.map +1 -0
- package/dist/skills/install.js +143 -0
- package/dist/skills/install.js.map +1 -0
- package/dist/skills/list-scan.d.ts +29 -0
- package/dist/skills/list-scan.d.ts.map +1 -0
- package/dist/skills/list-scan.js +230 -0
- package/dist/skills/list-scan.js.map +1 -0
- package/dist/skills/metadata.d.ts +5 -0
- package/dist/skills/metadata.d.ts.map +1 -0
- package/dist/skills/metadata.js +44 -0
- package/dist/skills/metadata.js.map +1 -0
- package/dist/skills/providers/harness-service.d.ts +11 -0
- package/dist/skills/providers/harness-service.d.ts.map +1 -0
- package/dist/skills/providers/harness-service.js +111 -0
- package/dist/skills/providers/harness-service.js.map +1 -0
- package/dist/skills/providers/stub.d.ts +4 -0
- package/dist/skills/providers/stub.d.ts.map +1 -0
- package/dist/skills/providers/stub.js +18 -0
- package/dist/skills/providers/stub.js.map +1 -0
- package/dist/skills/publish.d.ts +35 -0
- package/dist/skills/publish.d.ts.map +1 -0
- package/dist/skills/publish.js +115 -0
- package/dist/skills/publish.js.map +1 -0
- package/dist/skills/registry.d.ts +24 -0
- package/dist/skills/registry.d.ts.map +1 -0
- package/dist/skills/registry.js +124 -0
- package/dist/skills/registry.js.map +1 -0
- package/dist/skills/remove.d.ts +14 -0
- package/dist/skills/remove.d.ts.map +1 -0
- package/dist/skills/remove.js +44 -0
- package/dist/skills/remove.js.map +1 -0
- package/dist/skills/search.d.ts +9 -0
- package/dist/skills/search.d.ts.map +1 -0
- package/dist/skills/search.js +65 -0
- package/dist/skills/search.js.map +1 -0
- package/dist/skills/skill-markdown-manifest.d.ts +6 -0
- package/dist/skills/skill-markdown-manifest.d.ts.map +1 -0
- package/dist/skills/skill-markdown-manifest.js +57 -0
- package/dist/skills/skill-markdown-manifest.js.map +1 -0
- package/dist/skills/types.d.ts +138 -0
- package/dist/skills/types.d.ts.map +1 -0
- package/dist/skills/types.js +2 -0
- package/dist/skills/types.js.map +1 -0
- package/dist/skills/update.d.ts +11 -0
- package/dist/skills/update.d.ts.map +1 -0
- package/dist/skills/update.js +55 -0
- package/dist/skills/update.js.map +1 -0
- package/dist/spec/command.d.ts +11 -0
- package/dist/spec/command.d.ts.map +1 -0
- package/dist/spec/command.js +201 -0
- package/dist/spec/command.js.map +1 -0
- package/dist/telemetry/reporter.d.ts +14 -0
- package/dist/telemetry/reporter.d.ts.map +1 -0
- package/dist/telemetry/reporter.js +31 -0
- package/dist/telemetry/reporter.js.map +1 -0
- package/dist/telemetry/sink.d.ts +7 -0
- package/dist/telemetry/sink.d.ts.map +1 -0
- package/dist/telemetry/sink.js +309 -0
- package/dist/telemetry/sink.js.map +1 -0
- package/dist/telemetry/types.d.ts +48 -0
- package/dist/telemetry/types.d.ts.map +1 -0
- package/dist/telemetry/types.js +2 -0
- package/dist/telemetry/types.js.map +1 -0
- package/dist/update/apply.d.ts +11 -0
- package/dist/update/apply.d.ts.map +1 -0
- package/dist/update/apply.js +94 -0
- package/dist/update/apply.js.map +1 -0
- package/dist/update/command.d.ts +43 -0
- package/dist/update/command.d.ts.map +1 -0
- package/dist/update/command.js +524 -0
- package/dist/update/command.js.map +1 -0
- package/dist/update/config-pack-sync.d.ts +11 -0
- package/dist/update/config-pack-sync.d.ts.map +1 -0
- package/dist/update/config-pack-sync.js +88 -0
- package/dist/update/config-pack-sync.js.map +1 -0
- package/dist/update/enterprise-update-provider.d.ts +8 -0
- package/dist/update/enterprise-update-provider.d.ts.map +1 -0
- package/dist/update/enterprise-update-provider.js +76 -0
- package/dist/update/enterprise-update-provider.js.map +1 -0
- package/dist/update/manifest-source.d.ts +33 -0
- package/dist/update/manifest-source.d.ts.map +1 -0
- package/dist/update/manifest-source.js +111 -0
- package/dist/update/manifest-source.js.map +1 -0
- package/dist/update/plan-utils.d.ts +5 -0
- package/dist/update/plan-utils.d.ts.map +1 -0
- package/dist/update/plan-utils.js +13 -0
- package/dist/update/plan-utils.js.map +1 -0
- package/dist/update/prompt.d.ts +19 -0
- package/dist/update/prompt.d.ts.map +1 -0
- package/dist/update/prompt.js +72 -0
- package/dist/update/prompt.js.map +1 -0
- package/dist/update/resolve-action.d.ts +7 -0
- package/dist/update/resolve-action.d.ts.map +1 -0
- package/dist/update/resolve-action.js +14 -0
- package/dist/update/resolve-action.js.map +1 -0
- package/dist/update/types.d.ts +33 -0
- package/dist/update/types.d.ts.map +1 -0
- package/dist/update/types.js +2 -0
- package/dist/update/types.js.map +1 -0
- package/package.json +42 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rag-client.d.ts","sourceRoot":"","sources":["../../src/cloud/rag-client.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,KAAK,CAAC;IACf,SAAS,EAAE,oBAAoB,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAkBD,wBAAsB,eAAe,CACnC,OAAO,EAAE,sBAAsB,EAC/B,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,+BAA+B,CAAC,CA6C1C"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { HarnessError } from '../contracts/errors.js';
|
|
2
|
+
import { resolveHarnessServiceBaseUrl } from './harness-service-url.js';
|
|
3
|
+
import { applyCloudPayloadRedaction } from './redaction.js';
|
|
4
|
+
function isRecord(v) {
|
|
5
|
+
return !!v && typeof v === 'object' && !Array.isArray(v);
|
|
6
|
+
}
|
|
7
|
+
async function readJson(response) {
|
|
8
|
+
const text = await response.text();
|
|
9
|
+
if (!text.trim()) {
|
|
10
|
+
return {};
|
|
11
|
+
}
|
|
12
|
+
try {
|
|
13
|
+
return JSON.parse(text);
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
return {};
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export async function queryHarnessRag(request, options = {}) {
|
|
20
|
+
const baseUrl = options.baseUrl ?? resolveHarnessServiceBaseUrl();
|
|
21
|
+
if (!baseUrl) {
|
|
22
|
+
throw new HarnessError('HARNESS_SERVICE_UNAVAILABLE', 'HARNESS_SERVICE_URL is not configured');
|
|
23
|
+
}
|
|
24
|
+
const fetchImpl = options.fetchImpl ?? globalThis.fetch;
|
|
25
|
+
if (typeof fetchImpl !== 'function') {
|
|
26
|
+
throw new HarnessError('HARNESS_SERVICE_UNAVAILABLE', 'fetch implementation is unavailable');
|
|
27
|
+
}
|
|
28
|
+
const redactedRequest = await applyCloudPayloadRedaction(request, options.workspaceRoot);
|
|
29
|
+
let response;
|
|
30
|
+
try {
|
|
31
|
+
response = await fetchImpl(new URL('/rag/query', baseUrl), {
|
|
32
|
+
method: 'POST',
|
|
33
|
+
headers: { 'Content-Type': 'application/json' },
|
|
34
|
+
body: JSON.stringify(redactedRequest),
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
throw new HarnessError('HARNESS_SERVICE_UNAVAILABLE', `Cannot reach harness-service: ${error instanceof Error ? error.message : String(error)}`);
|
|
39
|
+
}
|
|
40
|
+
const body = await readJson(response);
|
|
41
|
+
if (!response.ok) {
|
|
42
|
+
const errorCode = isRecord(body) && typeof body.errorCode === 'string' ? body.errorCode : 'HARNESS_SERVICE_ERROR';
|
|
43
|
+
const message = isRecord(body) && typeof body.message === 'string'
|
|
44
|
+
? body.message
|
|
45
|
+
: `harness-service returned HTTP ${response.status}`;
|
|
46
|
+
throw new HarnessError(errorCode === 'SERVICE_UNAVAILABLE' ? 'HARNESS_SERVICE_UNAVAILABLE' : 'HARNESS_SERVICE_ERROR', message);
|
|
47
|
+
}
|
|
48
|
+
if (!isRecord(body) || body.enabled !== false || body.errorCode !== 'RAG_NOT_CONFIGURED' || typeof body.message !== 'string') {
|
|
49
|
+
throw new HarnessError('HARNESS_SERVICE_ERROR', 'Invalid response from harness-service /rag/query');
|
|
50
|
+
}
|
|
51
|
+
return {
|
|
52
|
+
enabled: false,
|
|
53
|
+
errorCode: 'RAG_NOT_CONFIGURED',
|
|
54
|
+
message: body.message,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=rag-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rag-client.js","sourceRoot":"","sources":["../../src/cloud/rag-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redaction.d.ts","sourceRoot":"","sources":["../../src/cloud/redaction.ts"],"names":[],"mappings":"AA8DA,wBAAsB,0BAA0B,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAMlG"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
const DEFAULT_PATTERNS = ['api_key', 'token', 'password', 'secret', 'authorization'];
|
|
4
|
+
async function loadRedactionRule(workspaceRoot) {
|
|
5
|
+
if (!workspaceRoot) {
|
|
6
|
+
return { enabled: false, patterns: DEFAULT_PATTERNS };
|
|
7
|
+
}
|
|
8
|
+
try {
|
|
9
|
+
const file = await readFile(join(workspaceRoot, '.harness', 'redaction.json'), 'utf8');
|
|
10
|
+
const parsed = JSON.parse(file);
|
|
11
|
+
const enabled = parsed.enabled === true;
|
|
12
|
+
const patterns = Array.isArray(parsed.patterns)
|
|
13
|
+
? parsed.patterns.filter((entry) => typeof entry === 'string' && entry.trim().length > 0)
|
|
14
|
+
: DEFAULT_PATTERNS;
|
|
15
|
+
return { enabled, patterns: patterns.length > 0 ? patterns : DEFAULT_PATTERNS };
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
return { enabled: false, patterns: DEFAULT_PATTERNS };
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
function maskValue(value) {
|
|
22
|
+
if (typeof value !== 'string' || value.length === 0) {
|
|
23
|
+
return '***';
|
|
24
|
+
}
|
|
25
|
+
return '*'.repeat(Math.max(3, Math.min(8, value.length)));
|
|
26
|
+
}
|
|
27
|
+
function redactObjectValue(value, patterns) {
|
|
28
|
+
if (Array.isArray(value)) {
|
|
29
|
+
return value.map((entry) => redactObjectValue(entry, patterns));
|
|
30
|
+
}
|
|
31
|
+
if (!value || typeof value !== 'object') {
|
|
32
|
+
return value;
|
|
33
|
+
}
|
|
34
|
+
const source = value;
|
|
35
|
+
const redacted = {};
|
|
36
|
+
for (const [key, nested] of Object.entries(source)) {
|
|
37
|
+
const lowerKey = key.toLowerCase();
|
|
38
|
+
if (patterns.some((pattern) => lowerKey.includes(pattern.toLowerCase()))) {
|
|
39
|
+
redacted[key] = maskValue(nested);
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
redacted[key] = redactObjectValue(nested, patterns);
|
|
43
|
+
}
|
|
44
|
+
return redacted;
|
|
45
|
+
}
|
|
46
|
+
export async function applyCloudPayloadRedaction(payload, workspaceRoot) {
|
|
47
|
+
const rule = await loadRedactionRule(workspaceRoot);
|
|
48
|
+
if (!rule.enabled) {
|
|
49
|
+
return payload;
|
|
50
|
+
}
|
|
51
|
+
return redactObjectValue(payload, rule.patterns);
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=redaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redaction.js","sourceRoot":"","sources":["../../src/cloud/redaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAajC,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;AAErF,KAAK,UAAU,iBAAiB,CAAC,aAAsB;IACrD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IACxD,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC,CAAC;QACvF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAwB,CAAC;QACvD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;QACxC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;YAC7C,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;YAC1G,CAAC,CAAC,gBAAgB,CAAC;QACrB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IACxD,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc,EAAE,QAAkB;IAC3D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC;YACzE,QAAQ,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;YAClC,SAAS;QACX,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAI,OAAU,EAAE,aAAsB;IACpF,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACpD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAM,CAAC;AACxD,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type HarnessTelemetryEventType = 'cli.command.completed' | 'cli.command.failed' | 'asset.installed' | 'asset.updated' | 'asset.used' | 'mcp.tool.called' | 'mcp.tool.failed';
|
|
2
|
+
export interface HarnessTelemetryEvent {
|
|
3
|
+
event_type: HarnessTelemetryEventType;
|
|
4
|
+
occurred_at: string;
|
|
5
|
+
source?: string;
|
|
6
|
+
source_version?: string;
|
|
7
|
+
command?: string;
|
|
8
|
+
success?: boolean;
|
|
9
|
+
duration_ms?: number;
|
|
10
|
+
error_code?: string;
|
|
11
|
+
asset_id?: string;
|
|
12
|
+
payload?: Record<string, unknown>;
|
|
13
|
+
}
|
|
14
|
+
export interface ReportHarnessTelemetryEventsOptions {
|
|
15
|
+
fetchImpl?: typeof fetch;
|
|
16
|
+
onError?: (error: unknown) => void;
|
|
17
|
+
workspaceRoot?: string;
|
|
18
|
+
}
|
|
19
|
+
export declare function createHarnessTelemetryEvent(eventType: HarnessTelemetryEventType, fields?: Omit<HarnessTelemetryEvent, 'event_type' | 'occurred_at'>): HarnessTelemetryEvent;
|
|
20
|
+
export declare function reportHarnessTelemetryEvents(events: HarnessTelemetryEvent[], options?: ReportHarnessTelemetryEventsOptions): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=telemetry-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telemetry-client.d.ts","sourceRoot":"","sources":["../../src/cloud/telemetry-client.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,yBAAyB,GACjC,uBAAuB,GACvB,oBAAoB,GACpB,iBAAiB,GACjB,eAAe,GACf,YAAY,GACZ,iBAAiB,GACjB,iBAAiB,CAAC;AAEtB,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,yBAAyB,CAAC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,mCAAmC;IAClD,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,yBAAyB,EACpC,MAAM,GAAE,IAAI,CAAC,qBAAqB,EAAE,YAAY,GAAG,aAAa,CAAM,GACrE,qBAAqB,CAMvB;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,qBAAqB,EAAE,EAC/B,OAAO,GAAE,mCAAwC,GAChD,OAAO,CAAC,IAAI,CAAC,CA8Bf"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { resolveHarnessServiceBaseUrl } from './harness-service-url.js';
|
|
2
|
+
import { applyCloudPayloadRedaction } from './redaction.js';
|
|
3
|
+
export function createHarnessTelemetryEvent(eventType, fields = {}) {
|
|
4
|
+
return {
|
|
5
|
+
event_type: eventType,
|
|
6
|
+
occurred_at: new Date().toISOString(),
|
|
7
|
+
...fields,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export async function reportHarnessTelemetryEvents(events, options = {}) {
|
|
11
|
+
const baseUrl = resolveHarnessServiceBaseUrl();
|
|
12
|
+
if (!baseUrl || events.length === 0) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const fetchImpl = options.fetchImpl ?? globalThis.fetch;
|
|
16
|
+
if (typeof fetchImpl !== 'function') {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const payload = { events };
|
|
20
|
+
const redactedPayload = await applyCloudPayloadRedaction(payload, options.workspaceRoot);
|
|
21
|
+
try {
|
|
22
|
+
await fetchImpl(new URL('/telemetry/events', baseUrl), {
|
|
23
|
+
method: 'POST',
|
|
24
|
+
headers: {
|
|
25
|
+
'Content-Type': 'application/json',
|
|
26
|
+
},
|
|
27
|
+
body: JSON.stringify(redactedPayload),
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
if (options.onError) {
|
|
32
|
+
options.onError(error);
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
36
|
+
console.error(`TELEMETRY_REPORT_FAILED ${message}`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=telemetry-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telemetry-client.js","sourceRoot":"","sources":["../../src/cloud/telemetry-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AA8B5D,MAAM,UAAU,2BAA2B,CACzC,SAAoC,EACpC,SAAoE,EAAE;IAEtE,OAAO;QACL,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,GAAG,MAAM;KACV,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,MAA+B,EAC/B,UAA+C,EAAE;IAEjD,MAAM,OAAO,GAAG,4BAA4B,EAAE,CAAC;IAC/C,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC;IACxD,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;QACpC,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,CAAC;IAC3B,MAAM,eAAe,GAAG,MAAM,0BAA0B,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAEzF,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,IAAI,GAAG,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE;YACrD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;SACtC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACvB,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC;IACtD,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface HarnessConfig {
|
|
2
|
+
/** harness.config schema version */
|
|
3
|
+
version: number;
|
|
4
|
+
workspaceProfile?: string;
|
|
5
|
+
specMountPath?: string;
|
|
6
|
+
knowledgeMountPath?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function mergeHarnessConfig(partial?: Partial<HarnessConfig>): HarnessConfig;
|
|
9
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/contracts/config.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC5B,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,kBAAkB,CAChC,OAAO,GAAE,OAAO,CAAC,aAAa,CAAM,GACnC,aAAa,CAEf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.defaults.d.ts","sourceRoot":"","sources":["../../src/contracts/config.defaults.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,eAAO,MAAM,sBAAsB;;CAEzB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.defaults.js","sourceRoot":"","sources":["../../src/contracts/config.defaults.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,OAAO,EAAE,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/contracts/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAU9D,MAAM,UAAU,kBAAkB,CAChC,UAAkC,EAAE;IAEpC,OAAO,EAAE,GAAG,sBAAsB,EAAE,GAAG,OAAO,EAAE,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.loader.d.ts","sourceRoot":"","sources":["../../src/contracts/config.loader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAiCjD,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,aAAa,CAAC,CAexB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
import { mergeHarnessConfig } from './config.js';
|
|
4
|
+
const HARNESS_CONFIG_FILENAME = 'harness.config.json';
|
|
5
|
+
function isJsonObject(value) {
|
|
6
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
7
|
+
}
|
|
8
|
+
function sanitizeHarnessConfig(parsedConfig) {
|
|
9
|
+
const sanitizedConfig = {};
|
|
10
|
+
if (typeof parsedConfig.version === 'number') {
|
|
11
|
+
sanitizedConfig.version = parsedConfig.version;
|
|
12
|
+
}
|
|
13
|
+
if (typeof parsedConfig.workspaceProfile === 'string') {
|
|
14
|
+
sanitizedConfig.workspaceProfile = parsedConfig.workspaceProfile;
|
|
15
|
+
}
|
|
16
|
+
if (typeof parsedConfig.specMountPath === 'string') {
|
|
17
|
+
sanitizedConfig.specMountPath = parsedConfig.specMountPath;
|
|
18
|
+
}
|
|
19
|
+
if (typeof parsedConfig.knowledgeMountPath === 'string') {
|
|
20
|
+
sanitizedConfig.knowledgeMountPath = parsedConfig.knowledgeMountPath;
|
|
21
|
+
}
|
|
22
|
+
return sanitizedConfig;
|
|
23
|
+
}
|
|
24
|
+
export async function loadHarnessConfig(workspaceRoot) {
|
|
25
|
+
const configPath = join(workspaceRoot, HARNESS_CONFIG_FILENAME);
|
|
26
|
+
try {
|
|
27
|
+
const rawConfig = await readFile(configPath, 'utf8');
|
|
28
|
+
const parsedConfig = JSON.parse(rawConfig);
|
|
29
|
+
if (!isJsonObject(parsedConfig)) {
|
|
30
|
+
return mergeHarnessConfig();
|
|
31
|
+
}
|
|
32
|
+
return mergeHarnessConfig(sanitizeHarnessConfig(parsedConfig));
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return mergeHarnessConfig();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=config.loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.loader.js","sourceRoot":"","sources":["../../src/contracts/config.loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;AAEtD,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,qBAAqB,CAC5B,YAAqC;IAErC,MAAM,eAAe,GAA2B,EAAE,CAAC;IAEnD,IAAI,OAAO,YAAY,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC7C,eAAe,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;IACjD,CAAC;IAED,IAAI,OAAO,YAAY,CAAC,gBAAgB,KAAK,QAAQ,EAAE,CAAC;QACtD,eAAe,CAAC,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAC;IACnE,CAAC;IAED,IAAI,OAAO,YAAY,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;QACnD,eAAe,CAAC,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;IAC7D,CAAC;IAED,IAAI,OAAO,YAAY,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;QACxD,eAAe,CAAC,kBAAkB,GAAG,YAAY,CAAC,kBAAkB,CAAC;IACvE,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,aAAqB;IAErB,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC;IAEhE,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,YAAY,GAAY,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAEpD,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,OAAO,kBAAkB,EAAE,CAAC;QAC9B,CAAC;QAED,OAAO,kBAAkB,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC,CAAC;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,kBAAkB,EAAE,CAAC;IAC9B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/contracts/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEtC,qBAAa,YAAa,SAAQ,KAAK;IACrC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;gBAEpB,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CASnF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export class HarnessError extends Error {
|
|
2
|
+
code;
|
|
3
|
+
constructor(code, message, options) {
|
|
4
|
+
super(message, options?.cause !== undefined ? { cause: options.cause } : undefined);
|
|
5
|
+
this.name = 'HarnessError';
|
|
6
|
+
this.code = code;
|
|
7
|
+
Object.setPrototypeOf(this, HarnessError.prototype);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/contracts/errors.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,YAAa,SAAQ,KAAK;IAC5B,IAAI,CAAmB;IAEhC,YAAY,IAAsB,EAAE,OAAe,EAAE,OAA6B;QAChF,KAAK,CACH,OAAO,EACP,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CACpE,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IACtD,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cursor-acp-demo/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { spawn } from "child_process";
|
|
2
|
+
import readline from "readline";
|
|
3
|
+
const agent = spawn("agent", ["acp"], { stdio: ["pipe", "pipe", "inherit"] });
|
|
4
|
+
let nextId = 1;
|
|
5
|
+
const pending = new Map();
|
|
6
|
+
function send(method, params) {
|
|
7
|
+
const id = nextId++;
|
|
8
|
+
agent.stdin.write(JSON.stringify({ jsonrpc: "2.0", id, method, params }) + "\n");
|
|
9
|
+
return new Promise((resolve, reject) => pending.set(id, { resolve, reject }));
|
|
10
|
+
}
|
|
11
|
+
function respond(id, result) {
|
|
12
|
+
agent.stdin.write(JSON.stringify({ jsonrpc: "2.0", id, result }) + "\n");
|
|
13
|
+
}
|
|
14
|
+
const rl = readline.createInterface({ input: agent.stdout });
|
|
15
|
+
rl.on("line", (line) => {
|
|
16
|
+
const msg = JSON.parse(line);
|
|
17
|
+
if (msg.id && (msg.result || msg.error)) {
|
|
18
|
+
const waiter = pending.get(msg.id);
|
|
19
|
+
if (!waiter)
|
|
20
|
+
return;
|
|
21
|
+
pending.delete(msg.id);
|
|
22
|
+
msg.error ? waiter.reject(msg.error) : waiter.resolve(msg.result);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
if (msg.method === "session/update") {
|
|
26
|
+
const update = msg.params?.update;
|
|
27
|
+
if (update?.sessionUpdate === "agent_message_chunk" &&
|
|
28
|
+
update.content?.text) {
|
|
29
|
+
process.stdout.write(update.content.text);
|
|
30
|
+
}
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
if (msg.method === "session/request_permission") {
|
|
34
|
+
respond(msg.id, {
|
|
35
|
+
outcome: { outcome: "selected", optionId: "allow-once" },
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
const init = async () => {
|
|
40
|
+
await send("initialize", {
|
|
41
|
+
protocolVersion: 1,
|
|
42
|
+
clientCapabilities: {
|
|
43
|
+
fs: { readTextFile: true, writeTextFile: true },
|
|
44
|
+
terminal: true,
|
|
45
|
+
},
|
|
46
|
+
clientInfo: { name: "acp-minimal-client", version: "0.1.0" },
|
|
47
|
+
});
|
|
48
|
+
await send("authenticate", { methodId: "cursor_login" });
|
|
49
|
+
const { sessionId } = await send("session/new", {
|
|
50
|
+
cwd: process.cwd(),
|
|
51
|
+
mcpServers: [],
|
|
52
|
+
});
|
|
53
|
+
const result = await send("session/prompt", {
|
|
54
|
+
sessionId,
|
|
55
|
+
prompt: [{ type: "text", text: "Say hello in one sentence." }],
|
|
56
|
+
});
|
|
57
|
+
console.log(`\n\n[stopReason=${result.stopReason}]`);
|
|
58
|
+
};
|
|
59
|
+
init().finally(() => {
|
|
60
|
+
agent.stdin.end();
|
|
61
|
+
agent.kill();
|
|
62
|
+
});
|
|
63
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cursor-acp-demo/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { CommandRouter } from '../kernel/router.js';
|
|
2
|
+
export interface DashboardServeOptions {
|
|
3
|
+
port: number;
|
|
4
|
+
help: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare function resolveDashboardAssetsRoot(): string;
|
|
7
|
+
declare function renderDashboardHelp(programName?: string): string;
|
|
8
|
+
export declare function parseDashboardServeArgs(args: string[]): DashboardServeOptions;
|
|
9
|
+
export { resolveDashboardTelemetryBuckets } from './telemetry-snapshot.js';
|
|
10
|
+
/** Exported for unit tests. */
|
|
11
|
+
export declare function formatDashboardListenError(port: number, error: NodeJS.ErrnoException): string;
|
|
12
|
+
export declare function runDashboardCommand(args: string[]): Promise<number>;
|
|
13
|
+
export declare function registerDashboardCommand(router: CommandRouter): void;
|
|
14
|
+
export { renderDashboardHelp };
|
|
15
|
+
//# sourceMappingURL=command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/dashboard/command.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQzD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf;AAkBD,wBAAgB,0BAA0B,IAAI,MAAM,CAOnD;AAED,iBAAS,mBAAmB,CAAC,WAAW,SAAY,GAAG,MAAM,CAe5D;AAaD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,qBAAqB,CAuB7E;AAED,OAAO,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AA6B3E,+BAA+B;AAC/B,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,cAAc,GAAG,MAAM,CAU7F;AAmKD,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAyBzE;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAEpE;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
|