@codemieai/code 0.0.15 → 0.0.17
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 +86 -14
- package/bin/agent-executor.js +7 -28
- package/bin/codemie-claude.js +18 -0
- package/bin/codemie-codex.js +18 -0
- package/bin/codemie-deepagents.js +18 -0
- package/bin/codemie-gemini.js +18 -0
- package/dist/agents/codemie-code/agent.d.ts.map +1 -1
- package/dist/agents/codemie-code/agent.js +5 -34
- package/dist/agents/codemie-code/agent.js.map +1 -1
- package/dist/agents/codemie-code/config.d.ts.map +1 -1
- package/dist/agents/codemie-code/config.js +12 -4
- package/dist/agents/codemie-code/config.js.map +1 -1
- package/dist/agents/codemie-code/tools/planning.d.ts +1 -1
- package/dist/agents/core/AgentCLI.d.ts.map +1 -1
- package/dist/agents/core/AgentCLI.js +30 -63
- package/dist/agents/core/AgentCLI.js.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts +10 -6
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.js +108 -36
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
- package/dist/agents/core/BaseMetricsAdapter.d.ts +64 -0
- package/dist/agents/core/BaseMetricsAdapter.d.ts.map +1 -0
- package/dist/agents/core/BaseMetricsAdapter.js +74 -0
- package/dist/agents/core/BaseMetricsAdapter.js.map +1 -0
- package/dist/agents/core/types.d.ts +1 -0
- package/dist/agents/core/types.d.ts.map +1 -1
- package/dist/agents/plugins/claude.metrics.d.ts +112 -0
- package/dist/agents/plugins/claude.metrics.d.ts.map +1 -0
- package/dist/agents/plugins/claude.metrics.js +700 -0
- package/dist/agents/plugins/claude.metrics.js.map +1 -0
- package/dist/agents/plugins/claude.plugin.d.ts +9 -0
- package/dist/agents/plugins/claude.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/claude.plugin.js +52 -10
- package/dist/agents/plugins/claude.plugin.js.map +1 -1
- package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/codemie-code.plugin.js +46 -14
- package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
- package/dist/agents/plugins/codex.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/codex.plugin.js +2 -4
- package/dist/agents/plugins/codex.plugin.js.map +1 -1
- package/dist/agents/plugins/deepagents.plugin.js +1 -1
- package/dist/agents/plugins/deepagents.plugin.js.map +1 -1
- package/dist/agents/plugins/gemini.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/gemini.plugin.js +1 -8
- package/dist/agents/plugins/gemini.plugin.js.map +1 -1
- package/dist/agents/plugins/history-parser.d.ts +52 -0
- package/dist/agents/plugins/history-parser.d.ts.map +1 -0
- package/dist/agents/plugins/history-parser.js +155 -0
- package/dist/agents/plugins/history-parser.js.map +1 -0
- package/dist/cli/commands/analytics/aggregator.d.ts +58 -0
- package/dist/cli/commands/analytics/aggregator.d.ts.map +1 -0
- package/dist/cli/commands/analytics/aggregator.js +702 -0
- package/dist/cli/commands/analytics/aggregator.js.map +1 -0
- package/dist/cli/commands/analytics/data-loader.d.ts +84 -0
- package/dist/cli/commands/analytics/data-loader.d.ts.map +1 -0
- package/dist/cli/commands/analytics/data-loader.js +211 -0
- package/dist/cli/commands/analytics/data-loader.js.map +1 -0
- package/dist/cli/commands/analytics/exporter.d.ts +20 -0
- package/dist/cli/commands/analytics/exporter.d.ts.map +1 -0
- package/dist/cli/commands/analytics/exporter.js +103 -0
- package/dist/cli/commands/analytics/exporter.js.map +1 -0
- package/dist/cli/commands/analytics/formatter.d.ts +49 -0
- package/dist/cli/commands/analytics/formatter.d.ts.map +1 -0
- package/dist/cli/commands/analytics/formatter.js +309 -0
- package/dist/cli/commands/analytics/formatter.js.map +1 -0
- package/dist/cli/commands/analytics/index.d.ts +6 -0
- package/dist/cli/commands/analytics/index.d.ts.map +1 -0
- package/dist/cli/commands/analytics/index.js +157 -0
- package/dist/cli/commands/analytics/index.js.map +1 -0
- package/dist/cli/commands/analytics/model-normalizer.d.ts +21 -0
- package/dist/cli/commands/analytics/model-normalizer.d.ts.map +1 -0
- package/dist/cli/commands/analytics/model-normalizer.js +44 -0
- package/dist/cli/commands/analytics/model-normalizer.js.map +1 -0
- package/dist/cli/commands/analytics/types.d.ts +188 -0
- package/dist/cli/commands/analytics/types.d.ts.map +1 -0
- package/dist/cli/commands/analytics/types.js +6 -0
- package/dist/cli/commands/analytics/types.js.map +1 -0
- package/dist/cli/commands/auth.d.ts.map +1 -1
- package/dist/cli/commands/auth.js +10 -5
- package/dist/cli/commands/auth.js.map +1 -1
- package/dist/cli/commands/doctor/checks/AIConfigCheck.d.ts.map +1 -1
- package/dist/cli/commands/doctor/checks/AIConfigCheck.js +12 -5
- package/dist/cli/commands/doctor/checks/AIConfigCheck.js.map +1 -1
- package/dist/cli/commands/doctor/checks/AwsCliCheck.d.ts +9 -0
- package/dist/cli/commands/doctor/checks/AwsCliCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/checks/AwsCliCheck.js +28 -0
- package/dist/cli/commands/doctor/checks/AwsCliCheck.js.map +1 -0
- package/dist/cli/commands/doctor/checks/PythonCheck.d.ts.map +1 -1
- package/dist/cli/commands/doctor/checks/PythonCheck.js +10 -0
- package/dist/cli/commands/doctor/checks/PythonCheck.js.map +1 -1
- package/dist/cli/commands/doctor/checks/WorkflowsCheck.d.ts.map +1 -1
- package/dist/cli/commands/doctor/checks/WorkflowsCheck.js +2 -1
- package/dist/cli/commands/doctor/checks/WorkflowsCheck.js.map +1 -1
- package/dist/cli/commands/doctor/checks/index.d.ts +1 -0
- package/dist/cli/commands/doctor/checks/index.d.ts.map +1 -1
- package/dist/cli/commands/doctor/checks/index.js +1 -0
- package/dist/cli/commands/doctor/checks/index.js.map +1 -1
- package/dist/cli/commands/doctor/formatter.d.ts +1 -1
- package/dist/cli/commands/doctor/formatter.d.ts.map +1 -1
- package/dist/cli/commands/doctor/formatter.js +1 -6
- package/dist/cli/commands/doctor/formatter.js.map +1 -1
- package/dist/cli/commands/doctor/index.d.ts.map +1 -1
- package/dist/cli/commands/doctor/index.js +107 -10
- package/dist/cli/commands/doctor/index.js.map +1 -1
- package/dist/cli/commands/doctor/type-adapters.d.ts +18 -0
- package/dist/cli/commands/doctor/type-adapters.d.ts.map +1 -0
- package/dist/cli/commands/doctor/type-adapters.js +75 -0
- package/dist/cli/commands/doctor/type-adapters.js.map +1 -0
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +1 -6
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/list.d.ts.map +1 -1
- package/dist/cli/commands/list.js +0 -5
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/profile.d.ts.map +1 -1
- package/dist/cli/commands/profile.js +130 -92
- package/dist/cli/commands/profile.js.map +1 -1
- package/dist/cli/commands/setup.d.ts.map +1 -1
- package/dist/cli/commands/setup.js +147 -668
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/index.d.ts +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +5 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/env/types.d.ts +14 -2
- package/dist/env/types.d.ts.map +1 -1
- package/dist/env/types.js.map +1 -1
- package/dist/metrics/MetricsOrchestrator.d.ts +67 -0
- package/dist/metrics/MetricsOrchestrator.d.ts.map +1 -0
- package/dist/metrics/MetricsOrchestrator.js +287 -0
- package/dist/metrics/MetricsOrchestrator.js.map +1 -0
- package/dist/metrics/config.d.ts +38 -0
- package/dist/metrics/config.d.ts.map +1 -0
- package/dist/metrics/config.js +80 -0
- package/dist/metrics/config.js.map +1 -0
- package/dist/metrics/core/DeltaWriter.d.ts +49 -0
- package/dist/metrics/core/DeltaWriter.d.ts.map +1 -0
- package/dist/metrics/core/DeltaWriter.js +146 -0
- package/dist/metrics/core/DeltaWriter.js.map +1 -0
- package/dist/metrics/core/FileSnapshotter.d.ts +22 -0
- package/dist/metrics/core/FileSnapshotter.d.ts.map +1 -0
- package/dist/metrics/core/FileSnapshotter.js +74 -0
- package/dist/metrics/core/FileSnapshotter.js.map +1 -0
- package/dist/metrics/core/SessionCorrelator.d.ts +34 -0
- package/dist/metrics/core/SessionCorrelator.d.ts.map +1 -0
- package/dist/metrics/core/SessionCorrelator.js +115 -0
- package/dist/metrics/core/SessionCorrelator.js.map +1 -0
- package/dist/metrics/core/SyncStateManager.d.ts +69 -0
- package/dist/metrics/core/SyncStateManager.d.ts.map +1 -0
- package/dist/metrics/core/SyncStateManager.js +284 -0
- package/dist/metrics/core/SyncStateManager.js.map +1 -0
- package/dist/metrics/index.d.ts +9 -0
- package/dist/metrics/index.d.ts.map +1 -0
- package/dist/metrics/index.js +11 -0
- package/dist/metrics/index.js.map +1 -0
- package/dist/metrics/session/SessionStore.d.ts +43 -0
- package/dist/metrics/session/SessionStore.d.ts.map +1 -0
- package/dist/metrics/session/SessionStore.js +142 -0
- package/dist/metrics/session/SessionStore.js.map +1 -0
- package/dist/metrics/sync/MetricsApiClient.d.ts +32 -0
- package/dist/metrics/sync/MetricsApiClient.d.ts.map +1 -0
- package/dist/metrics/sync/MetricsApiClient.js +155 -0
- package/dist/metrics/sync/MetricsApiClient.js.map +1 -0
- package/dist/metrics/sync/aggregator.d.ts +13 -0
- package/dist/metrics/sync/aggregator.d.ts.map +1 -0
- package/dist/metrics/sync/aggregator.js +196 -0
- package/dist/metrics/sync/aggregator.js.map +1 -0
- package/dist/metrics/sync/index.d.ts +10 -0
- package/dist/metrics/sync/index.d.ts.map +1 -0
- package/dist/metrics/sync/index.js +10 -0
- package/dist/metrics/sync/index.js.map +1 -0
- package/dist/metrics/sync/jsonl-writer.d.ts +28 -0
- package/dist/metrics/sync/jsonl-writer.d.ts.map +1 -0
- package/dist/metrics/sync/jsonl-writer.js +72 -0
- package/dist/metrics/sync/jsonl-writer.js.map +1 -0
- package/dist/metrics/sync/types.d.ts +72 -0
- package/dist/metrics/sync/types.d.ts.map +1 -0
- package/dist/metrics/sync/types.js +7 -0
- package/dist/metrics/sync/types.js.map +1 -0
- package/dist/metrics/types.d.ts +308 -0
- package/dist/metrics/types.d.ts.map +1 -0
- package/dist/metrics/types.js +8 -0
- package/dist/metrics/types.js.map +1 -0
- package/dist/providers/core/base/BaseHealthCheck.d.ts +57 -0
- package/dist/providers/core/base/BaseHealthCheck.d.ts.map +1 -0
- package/dist/providers/core/base/BaseHealthCheck.js +121 -0
- package/dist/providers/core/base/BaseHealthCheck.js.map +1 -0
- package/dist/providers/core/base/BaseModelProxy.d.ts +45 -0
- package/dist/providers/core/base/BaseModelProxy.d.ts.map +1 -0
- package/dist/providers/core/base/BaseModelProxy.js +43 -0
- package/dist/providers/core/base/BaseModelProxy.js.map +1 -0
- package/dist/providers/core/base/http-client.d.ts +57 -0
- package/dist/providers/core/base/http-client.d.ts.map +1 -0
- package/dist/providers/core/base/http-client.js +240 -0
- package/dist/providers/core/base/http-client.js.map +1 -0
- package/dist/providers/core/decorators.d.ts +13 -0
- package/dist/providers/core/decorators.d.ts.map +1 -0
- package/dist/providers/core/decorators.js +15 -0
- package/dist/providers/core/decorators.js.map +1 -0
- package/dist/providers/core/index.d.ts +13 -0
- package/dist/providers/core/index.d.ts.map +1 -0
- package/dist/providers/core/index.js +14 -0
- package/dist/providers/core/index.js.map +1 -0
- package/dist/providers/core/registry.d.ts +66 -0
- package/dist/providers/core/registry.d.ts.map +1 -0
- package/dist/providers/core/registry.js +105 -0
- package/dist/providers/core/registry.js.map +1 -0
- package/dist/providers/core/types.d.ts +285 -0
- package/dist/providers/core/types.d.ts.map +1 -0
- package/dist/providers/core/types.js +7 -0
- package/dist/providers/core/types.js.map +1 -0
- package/dist/providers/index.d.ts +22 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +24 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/integration/setup-ui.d.ts +76 -0
- package/dist/providers/integration/setup-ui.d.ts.map +1 -0
- package/dist/providers/integration/setup-ui.js +186 -0
- package/dist/providers/integration/setup-ui.js.map +1 -0
- package/dist/providers/plugins/bedrock/bedrock.health.d.ts +53 -0
- package/dist/providers/plugins/bedrock/bedrock.health.d.ts.map +1 -0
- package/dist/providers/plugins/bedrock/bedrock.health.js +115 -0
- package/dist/providers/plugins/bedrock/bedrock.health.js.map +1 -0
- package/dist/providers/plugins/bedrock/bedrock.models.d.ts +26 -0
- package/dist/providers/plugins/bedrock/bedrock.models.d.ts.map +1 -0
- package/dist/providers/plugins/bedrock/bedrock.models.js +89 -0
- package/dist/providers/plugins/bedrock/bedrock.models.js.map +1 -0
- package/dist/providers/plugins/bedrock/bedrock.setup-steps.d.ts +12 -0
- package/dist/providers/plugins/bedrock/bedrock.setup-steps.d.ts.map +1 -0
- package/dist/providers/plugins/bedrock/bedrock.setup-steps.js +308 -0
- package/dist/providers/plugins/bedrock/bedrock.setup-steps.js.map +1 -0
- package/dist/providers/plugins/bedrock/bedrock.template.d.ts +11 -0
- package/dist/providers/plugins/bedrock/bedrock.template.d.ts.map +1 -0
- package/dist/providers/plugins/bedrock/bedrock.template.js +85 -0
- package/dist/providers/plugins/bedrock/bedrock.template.js.map +1 -0
- package/dist/providers/plugins/bedrock/index.d.ts +11 -0
- package/dist/providers/plugins/bedrock/index.d.ts.map +1 -0
- package/dist/providers/plugins/bedrock/index.js +11 -0
- package/dist/providers/plugins/bedrock/index.js.map +1 -0
- package/dist/providers/plugins/litellm/index.d.ts +8 -0
- package/dist/providers/plugins/litellm/index.d.ts.map +1 -0
- package/dist/providers/plugins/litellm/index.js +12 -0
- package/dist/providers/plugins/litellm/index.js.map +1 -0
- package/dist/providers/plugins/litellm/litellm.models.d.ts +27 -0
- package/dist/providers/plugins/litellm/litellm.models.d.ts.map +1 -0
- package/dist/providers/plugins/litellm/litellm.models.js +48 -0
- package/dist/providers/plugins/litellm/litellm.models.js.map +1 -0
- package/dist/providers/plugins/litellm/litellm.setup-steps.d.ts +8 -0
- package/dist/providers/plugins/litellm/litellm.setup-steps.d.ts.map +1 -0
- package/dist/providers/plugins/litellm/litellm.setup-steps.js +52 -0
- package/dist/providers/plugins/litellm/litellm.setup-steps.js.map +1 -0
- package/dist/providers/plugins/litellm/litellm.template.d.ts +11 -0
- package/dist/providers/plugins/litellm/litellm.template.d.ts.map +1 -0
- package/dist/providers/plugins/litellm/litellm.template.js +59 -0
- package/dist/providers/plugins/litellm/litellm.template.js.map +1 -0
- package/dist/providers/plugins/ollama/index.d.ts +11 -0
- package/dist/providers/plugins/ollama/index.d.ts.map +1 -0
- package/dist/providers/plugins/ollama/index.js +11 -0
- package/dist/providers/plugins/ollama/index.js.map +1 -0
- package/dist/providers/plugins/ollama/ollama.health.d.ts +48 -0
- package/dist/providers/plugins/ollama/ollama.health.d.ts.map +1 -0
- package/dist/providers/plugins/ollama/ollama.health.js +87 -0
- package/dist/providers/plugins/ollama/ollama.health.js.map +1 -0
- package/dist/providers/plugins/ollama/ollama.models.d.ts +47 -0
- package/dist/providers/plugins/ollama/ollama.models.d.ts.map +1 -0
- package/dist/providers/plugins/ollama/ollama.models.js +252 -0
- package/dist/providers/plugins/ollama/ollama.models.js.map +1 -0
- package/dist/providers/plugins/ollama/ollama.setup-steps.d.ts +16 -0
- package/dist/providers/plugins/ollama/ollama.setup-steps.d.ts.map +1 -0
- package/dist/providers/plugins/ollama/ollama.setup-steps.js +164 -0
- package/dist/providers/plugins/ollama/ollama.setup-steps.js.map +1 -0
- package/dist/providers/plugins/ollama/ollama.template.d.ts +11 -0
- package/dist/providers/plugins/ollama/ollama.template.d.ts.map +1 -0
- package/dist/providers/plugins/ollama/ollama.template.js +89 -0
- package/dist/providers/plugins/ollama/ollama.template.js.map +1 -0
- package/dist/providers/plugins/sso/index.d.ts +12 -0
- package/dist/providers/plugins/sso/index.d.ts.map +1 -0
- package/dist/providers/plugins/sso/index.js +12 -0
- package/dist/providers/plugins/sso/index.js.map +1 -0
- package/dist/providers/plugins/sso/sso.auth.d.ts +50 -0
- package/dist/providers/plugins/sso/sso.auth.d.ts.map +1 -0
- package/dist/{utils/sso-auth.js → providers/plugins/sso/sso.auth.js} +37 -2
- package/dist/providers/plugins/sso/sso.auth.js.map +1 -0
- package/dist/providers/plugins/sso/sso.health.d.ts +44 -0
- package/dist/providers/plugins/sso/sso.health.d.ts.map +1 -0
- package/dist/providers/plugins/sso/sso.health.js +178 -0
- package/dist/providers/plugins/sso/sso.health.js.map +1 -0
- package/dist/providers/plugins/sso/sso.http-client.d.ts +24 -0
- package/dist/providers/plugins/sso/sso.http-client.d.ts.map +1 -0
- package/dist/providers/plugins/sso/sso.http-client.js +193 -0
- package/dist/providers/plugins/sso/sso.http-client.js.map +1 -0
- package/dist/providers/plugins/sso/sso.models.d.ts +48 -0
- package/dist/providers/plugins/sso/sso.models.d.ts.map +1 -0
- package/dist/providers/plugins/sso/sso.models.js +139 -0
- package/dist/providers/plugins/sso/sso.models.js.map +1 -0
- package/dist/providers/plugins/sso/sso.setup-steps.d.ts +16 -0
- package/dist/providers/plugins/sso/sso.setup-steps.d.ts.map +1 -0
- package/dist/providers/plugins/sso/sso.setup-steps.js +145 -0
- package/dist/providers/plugins/sso/sso.setup-steps.js.map +1 -0
- package/dist/providers/plugins/sso/sso.template.d.ts +11 -0
- package/dist/providers/plugins/sso/sso.template.d.ts.map +1 -0
- package/dist/providers/plugins/sso/sso.template.js +35 -0
- package/dist/providers/plugins/sso/sso.template.js.map +1 -0
- package/dist/proxy/errors.d.ts.map +1 -0
- package/dist/proxy/errors.js.map +1 -0
- package/dist/proxy/http-client.d.ts.map +1 -0
- package/dist/{utils/proxy → proxy}/http-client.js +50 -15
- package/dist/proxy/http-client.js.map +1 -0
- package/dist/proxy/plugins/endpoint-blocker.plugin.d.ts +19 -0
- package/dist/proxy/plugins/endpoint-blocker.plugin.d.ts.map +1 -0
- package/dist/proxy/plugins/endpoint-blocker.plugin.js +61 -0
- package/dist/proxy/plugins/endpoint-blocker.plugin.js.map +1 -0
- package/dist/proxy/plugins/header-injection.plugin.d.ts.map +1 -0
- package/dist/{utils/proxy → proxy}/plugins/header-injection.plugin.js +10 -3
- package/dist/proxy/plugins/header-injection.plugin.js.map +1 -0
- package/dist/{utils/proxy → proxy}/plugins/index.d.ts +4 -2
- package/dist/proxy/plugins/index.d.ts.map +1 -0
- package/dist/{utils/proxy → proxy}/plugins/index.js +7 -5
- package/dist/proxy/plugins/index.js.map +1 -0
- package/dist/proxy/plugins/logging.plugin.d.ts +22 -0
- package/dist/proxy/plugins/logging.plugin.d.ts.map +1 -0
- package/dist/proxy/plugins/logging.plugin.js +156 -0
- package/dist/proxy/plugins/logging.plugin.js.map +1 -0
- package/dist/proxy/plugins/metrics-sync.plugin.d.ts +33 -0
- package/dist/proxy/plugins/metrics-sync.plugin.d.ts.map +1 -0
- package/dist/proxy/plugins/metrics-sync.plugin.js +310 -0
- package/dist/proxy/plugins/metrics-sync.plugin.js.map +1 -0
- package/dist/proxy/plugins/registry.d.ts.map +1 -0
- package/dist/{utils/proxy → proxy}/plugins/registry.js +9 -2
- package/dist/proxy/plugins/registry.js.map +1 -0
- package/dist/proxy/plugins/sso-auth.plugin.d.ts.map +1 -0
- package/dist/{utils/proxy → proxy}/plugins/sso-auth.plugin.js +1 -1
- package/dist/proxy/plugins/sso-auth.plugin.js.map +1 -0
- package/dist/{utils/proxy → proxy}/plugins/types.d.ts +8 -4
- package/dist/proxy/plugins/types.d.ts.map +1 -0
- package/dist/proxy/plugins/types.js.map +1 -0
- package/dist/{utils/proxy → proxy}/types.d.ts +7 -0
- package/dist/proxy/types.d.ts.map +1 -0
- package/dist/proxy/types.js.map +1 -0
- package/dist/utils/ascii-logo.d.ts +21 -0
- package/dist/utils/ascii-logo.d.ts.map +1 -0
- package/dist/utils/ascii-logo.js +75 -0
- package/dist/utils/ascii-logo.js.map +1 -0
- package/dist/utils/codemie-proxy.d.ts +2 -7
- package/dist/utils/codemie-proxy.d.ts.map +1 -1
- package/dist/utils/codemie-proxy.js +56 -61
- package/dist/utils/codemie-proxy.js.map +1 -1
- package/dist/utils/config-loader.d.ts +1 -6
- package/dist/utils/config-loader.d.ts.map +1 -1
- package/dist/utils/config-loader.js +49 -93
- package/dist/utils/config-loader.js.map +1 -1
- package/dist/utils/credential-store.d.ts +1 -1
- package/dist/utils/credential-store.d.ts.map +1 -1
- package/dist/utils/exec.d.ts +11 -0
- package/dist/utils/exec.d.ts.map +1 -1
- package/dist/utils/exec.js +17 -1
- package/dist/utils/exec.js.map +1 -1
- package/dist/utils/goodbye-messages.d.ts +13 -0
- package/dist/utils/goodbye-messages.d.ts.map +1 -0
- package/dist/utils/goodbye-messages.js +245 -0
- package/dist/utils/goodbye-messages.js.map +1 -0
- package/dist/utils/json-parser.d.ts +52 -0
- package/dist/utils/json-parser.d.ts.map +1 -0
- package/dist/utils/json-parser.js +126 -0
- package/dist/utils/json-parser.js.map +1 -0
- package/dist/utils/logger.d.ts +37 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +92 -22
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/sanitize.d.ts.map +1 -1
- package/dist/utils/sanitize.js +0 -1
- package/dist/utils/sanitize.js.map +1 -1
- package/dist/utils/which.d.ts +20 -0
- package/dist/utils/which.d.ts.map +1 -0
- package/dist/utils/which.js +47 -0
- package/dist/utils/which.js.map +1 -0
- package/package.json +10 -5
- package/dist/analytics/aggregation/adapters/claude.adapter.d.ts +0 -37
- package/dist/analytics/aggregation/adapters/claude.adapter.d.ts.map +0 -1
- package/dist/analytics/aggregation/adapters/claude.adapter.js +0 -531
- package/dist/analytics/aggregation/adapters/claude.adapter.js.map +0 -1
- package/dist/analytics/aggregation/adapters/codex.adapter.d.ts +0 -25
- package/dist/analytics/aggregation/adapters/codex.adapter.d.ts.map +0 -1
- package/dist/analytics/aggregation/adapters/codex.adapter.js +0 -396
- package/dist/analytics/aggregation/adapters/codex.adapter.js.map +0 -1
- package/dist/analytics/aggregation/adapters/gemini.adapter.d.ts +0 -36
- package/dist/analytics/aggregation/adapters/gemini.adapter.d.ts.map +0 -1
- package/dist/analytics/aggregation/adapters/gemini.adapter.js +0 -365
- package/dist/analytics/aggregation/adapters/gemini.adapter.js.map +0 -1
- package/dist/analytics/aggregation/adapters/index.d.ts +0 -7
- package/dist/analytics/aggregation/adapters/index.d.ts.map +0 -1
- package/dist/analytics/aggregation/adapters/index.js +0 -7
- package/dist/analytics/aggregation/adapters/index.js.map +0 -1
- package/dist/analytics/aggregation/aggregator.d.ts +0 -49
- package/dist/analytics/aggregation/aggregator.d.ts.map +0 -1
- package/dist/analytics/aggregation/aggregator.js +0 -239
- package/dist/analytics/aggregation/aggregator.js.map +0 -1
- package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.d.ts +0 -99
- package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.js +0 -110
- package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.js.map +0 -1
- package/dist/analytics/aggregation/core/adapter.interface.d.ts +0 -76
- package/dist/analytics/aggregation/core/adapter.interface.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/adapter.interface.js +0 -9
- package/dist/analytics/aggregation/core/adapter.interface.js.map +0 -1
- package/dist/analytics/aggregation/core/aggregation-utils.d.ts +0 -86
- package/dist/analytics/aggregation/core/aggregation-utils.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/aggregation-utils.js +0 -126
- package/dist/analytics/aggregation/core/aggregation-utils.js.map +0 -1
- package/dist/analytics/aggregation/core/discovery.d.ts +0 -40
- package/dist/analytics/aggregation/core/discovery.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/discovery.js +0 -132
- package/dist/analytics/aggregation/core/discovery.js.map +0 -1
- package/dist/analytics/aggregation/core/file-utils.d.ts +0 -24
- package/dist/analytics/aggregation/core/file-utils.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/file-utils.js +0 -143
- package/dist/analytics/aggregation/core/file-utils.js.map +0 -1
- package/dist/analytics/aggregation/core/index.d.ts +0 -14
- package/dist/analytics/aggregation/core/index.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/index.js +0 -14
- package/dist/analytics/aggregation/core/index.js.map +0 -1
- package/dist/analytics/aggregation/core/project-mapping.d.ts +0 -50
- package/dist/analytics/aggregation/core/project-mapping.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/project-mapping.js +0 -102
- package/dist/analytics/aggregation/core/project-mapping.js.map +0 -1
- package/dist/analytics/aggregation/core/streaming.d.ts +0 -26
- package/dist/analytics/aggregation/core/streaming.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/streaming.js +0 -58
- package/dist/analytics/aggregation/core/streaming.js.map +0 -1
- package/dist/analytics/aggregation/core/user-prompt-source.d.ts +0 -81
- package/dist/analytics/aggregation/core/user-prompt-source.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/user-prompt-source.js +0 -69
- package/dist/analytics/aggregation/core/user-prompt-source.js.map +0 -1
- package/dist/analytics/aggregation/core/user-prompt-sources/json.d.ts +0 -49
- package/dist/analytics/aggregation/core/user-prompt-sources/json.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/user-prompt-sources/json.js +0 -66
- package/dist/analytics/aggregation/core/user-prompt-sources/json.js.map +0 -1
- package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.d.ts +0 -43
- package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.d.ts.map +0 -1
- package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.js +0 -56
- package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.js.map +0 -1
- package/dist/analytics/aggregation/index.d.ts +0 -8
- package/dist/analytics/aggregation/index.d.ts.map +0 -1
- package/dist/analytics/aggregation/index.js +0 -8
- package/dist/analytics/aggregation/index.js.map +0 -1
- package/dist/analytics/aggregation/types.d.ts +0 -278
- package/dist/analytics/aggregation/types.d.ts.map +0 -1
- package/dist/analytics/aggregation/types.js +0 -8
- package/dist/analytics/aggregation/types.js.map +0 -1
- package/dist/analytics/collector.d.ts +0 -46
- package/dist/analytics/collector.d.ts.map +0 -1
- package/dist/analytics/collector.js +0 -83
- package/dist/analytics/collector.js.map +0 -1
- package/dist/analytics/config.d.ts +0 -15
- package/dist/analytics/config.d.ts.map +0 -1
- package/dist/analytics/config.js +0 -65
- package/dist/analytics/config.js.map +0 -1
- package/dist/analytics/index.d.ts +0 -99
- package/dist/analytics/index.d.ts.map +0 -1
- package/dist/analytics/index.js +0 -288
- package/dist/analytics/index.js.map +0 -1
- package/dist/analytics/plugins/api-metrics.plugin.d.ts +0 -26
- package/dist/analytics/plugins/api-metrics.plugin.d.ts.map +0 -1
- package/dist/analytics/plugins/api-metrics.plugin.js +0 -97
- package/dist/analytics/plugins/api-metrics.plugin.js.map +0 -1
- package/dist/analytics/plugins/index.d.ts +0 -15
- package/dist/analytics/plugins/index.d.ts.map +0 -1
- package/dist/analytics/plugins/index.js +0 -15
- package/dist/analytics/plugins/index.js.map +0 -1
- package/dist/analytics/plugins/model-metrics.plugin.d.ts +0 -39
- package/dist/analytics/plugins/model-metrics.plugin.d.ts.map +0 -1
- package/dist/analytics/plugins/model-metrics.plugin.js +0 -105
- package/dist/analytics/plugins/model-metrics.plugin.js.map +0 -1
- package/dist/analytics/plugins/provider-metrics.plugin.d.ts +0 -41
- package/dist/analytics/plugins/provider-metrics.plugin.d.ts.map +0 -1
- package/dist/analytics/plugins/provider-metrics.plugin.js +0 -123
- package/dist/analytics/plugins/provider-metrics.plugin.js.map +0 -1
- package/dist/analytics/plugins/types.d.ts +0 -61
- package/dist/analytics/plugins/types.d.ts.map +0 -1
- package/dist/analytics/plugins/types.js +0 -54
- package/dist/analytics/plugins/types.js.map +0 -1
- package/dist/analytics/privacy.d.ts +0 -10
- package/dist/analytics/privacy.d.ts.map +0 -1
- package/dist/analytics/privacy.js +0 -20
- package/dist/analytics/privacy.js.map +0 -1
- package/dist/analytics/remote-submission/cursor-manager.d.ts +0 -71
- package/dist/analytics/remote-submission/cursor-manager.d.ts.map +0 -1
- package/dist/analytics/remote-submission/cursor-manager.js +0 -204
- package/dist/analytics/remote-submission/cursor-manager.js.map +0 -1
- package/dist/analytics/remote-submission/index.d.ts +0 -12
- package/dist/analytics/remote-submission/index.d.ts.map +0 -1
- package/dist/analytics/remote-submission/index.js +0 -11
- package/dist/analytics/remote-submission/index.js.map +0 -1
- package/dist/analytics/remote-submission/lock-manager.d.ts +0 -71
- package/dist/analytics/remote-submission/lock-manager.d.ts.map +0 -1
- package/dist/analytics/remote-submission/lock-manager.js +0 -238
- package/dist/analytics/remote-submission/lock-manager.js.map +0 -1
- package/dist/analytics/remote-submission/metric-transformer.d.ts +0 -49
- package/dist/analytics/remote-submission/metric-transformer.d.ts.map +0 -1
- package/dist/analytics/remote-submission/metric-transformer.js +0 -175
- package/dist/analytics/remote-submission/metric-transformer.js.map +0 -1
- package/dist/analytics/remote-submission/submitter.d.ts +0 -78
- package/dist/analytics/remote-submission/submitter.d.ts.map +0 -1
- package/dist/analytics/remote-submission/submitter.js +0 -381
- package/dist/analytics/remote-submission/submitter.js.map +0 -1
- package/dist/analytics/remote-submission/types.d.ts +0 -169
- package/dist/analytics/remote-submission/types.d.ts.map +0 -1
- package/dist/analytics/remote-submission/types.js +0 -13
- package/dist/analytics/remote-submission/types.js.map +0 -1
- package/dist/analytics/session.d.ts +0 -56
- package/dist/analytics/session.d.ts.map +0 -1
- package/dist/analytics/session.js +0 -95
- package/dist/analytics/session.js.map +0 -1
- package/dist/analytics/types.d.ts +0 -104
- package/dist/analytics/types.d.ts.map +0 -1
- package/dist/analytics/types.js +0 -15
- package/dist/analytics/types.js.map +0 -1
- package/dist/analytics/writer.d.ts +0 -18
- package/dist/analytics/writer.d.ts.map +0 -1
- package/dist/analytics/writer.js +0 -44
- package/dist/analytics/writer.js.map +0 -1
- package/dist/cli/commands/analytics.d.ts +0 -3
- package/dist/cli/commands/analytics.d.ts.map +0 -1
- package/dist/cli/commands/analytics.js +0 -748
- package/dist/cli/commands/analytics.js.map +0 -1
- package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.d.ts +0 -11
- package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.d.ts.map +0 -1
- package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.js +0 -264
- package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.js.map +0 -1
- package/dist/cli/commands/doctor/providers/BaseProviderCheck.d.ts +0 -12
- package/dist/cli/commands/doctor/providers/BaseProviderCheck.d.ts.map +0 -1
- package/dist/cli/commands/doctor/providers/BaseProviderCheck.js +0 -12
- package/dist/cli/commands/doctor/providers/BaseProviderCheck.js.map +0 -1
- package/dist/cli/commands/doctor/providers/StandardProviderCheck.d.ts +0 -11
- package/dist/cli/commands/doctor/providers/StandardProviderCheck.d.ts.map +0 -1
- package/dist/cli/commands/doctor/providers/StandardProviderCheck.js +0 -97
- package/dist/cli/commands/doctor/providers/StandardProviderCheck.js.map +0 -1
- package/dist/cli/commands/doctor/providers/index.d.ts +0 -30
- package/dist/cli/commands/doctor/providers/index.d.ts.map +0 -1
- package/dist/cli/commands/doctor/providers/index.js +0 -66
- package/dist/cli/commands/doctor/providers/index.js.map +0 -1
- package/dist/types/sso.d.ts +0 -42
- package/dist/types/sso.d.ts.map +0 -1
- package/dist/types/sso.js +0 -2
- package/dist/types/sso.js.map +0 -1
- package/dist/utils/analytics-reader.d.ts +0 -117
- package/dist/utils/analytics-reader.d.ts.map +0 -1
- package/dist/utils/analytics-reader.js +0 -421
- package/dist/utils/analytics-reader.js.map +0 -1
- package/dist/utils/async-tips.d.ts +0 -64
- package/dist/utils/async-tips.d.ts.map +0 -1
- package/dist/utils/async-tips.js +0 -203
- package/dist/utils/async-tips.js.map +0 -1
- package/dist/utils/codemie-integration-validator.d.ts +0 -18
- package/dist/utils/codemie-integration-validator.d.ts.map +0 -1
- package/dist/utils/codemie-integration-validator.js +0 -119
- package/dist/utils/codemie-integration-validator.js.map +0 -1
- package/dist/utils/codemie-model-fetcher.d.ts +0 -11
- package/dist/utils/codemie-model-fetcher.d.ts.map +0 -1
- package/dist/utils/codemie-model-fetcher.js +0 -317
- package/dist/utils/codemie-model-fetcher.js.map +0 -1
- package/dist/utils/date-formatter.d.ts +0 -88
- package/dist/utils/date-formatter.d.ts.map +0 -1
- package/dist/utils/date-formatter.js +0 -133
- package/dist/utils/date-formatter.js.map +0 -1
- package/dist/utils/health-checker.d.ts +0 -20
- package/dist/utils/health-checker.d.ts.map +0 -1
- package/dist/utils/health-checker.js +0 -172
- package/dist/utils/health-checker.js.map +0 -1
- package/dist/utils/model-fetcher.d.ts +0 -21
- package/dist/utils/model-fetcher.d.ts.map +0 -1
- package/dist/utils/model-fetcher.js +0 -148
- package/dist/utils/model-fetcher.js.map +0 -1
- package/dist/utils/proxy/errors.d.ts.map +0 -1
- package/dist/utils/proxy/errors.js.map +0 -1
- package/dist/utils/proxy/http-client.d.ts.map +0 -1
- package/dist/utils/proxy/http-client.js.map +0 -1
- package/dist/utils/proxy/plugins/analytics.plugin.d.ts +0 -19
- package/dist/utils/proxy/plugins/analytics.plugin.d.ts.map +0 -1
- package/dist/utils/proxy/plugins/analytics.plugin.js +0 -84
- package/dist/utils/proxy/plugins/analytics.plugin.js.map +0 -1
- package/dist/utils/proxy/plugins/header-injection.plugin.d.ts.map +0 -1
- package/dist/utils/proxy/plugins/header-injection.plugin.js.map +0 -1
- package/dist/utils/proxy/plugins/index.d.ts.map +0 -1
- package/dist/utils/proxy/plugins/index.js.map +0 -1
- package/dist/utils/proxy/plugins/registry.d.ts.map +0 -1
- package/dist/utils/proxy/plugins/registry.js.map +0 -1
- package/dist/utils/proxy/plugins/sso-auth.plugin.d.ts.map +0 -1
- package/dist/utils/proxy/plugins/sso-auth.plugin.js.map +0 -1
- package/dist/utils/proxy/plugins/types.d.ts.map +0 -1
- package/dist/utils/proxy/plugins/types.js.map +0 -1
- package/dist/utils/proxy/types.d.ts.map +0 -1
- package/dist/utils/proxy/types.js.map +0 -1
- package/dist/utils/sso-auth.d.ts +0 -15
- package/dist/utils/sso-auth.d.ts.map +0 -1
- package/dist/utils/sso-auth.js.map +0 -1
- package/dist/utils/tips.d.ts +0 -35
- package/dist/utils/tips.d.ts.map +0 -1
- package/dist/utils/tips.js +0 -93
- package/dist/utils/tips.js.map +0 -1
- /package/dist/{utils/proxy → proxy}/errors.d.ts +0 -0
- /package/dist/{utils/proxy → proxy}/errors.js +0 -0
- /package/dist/{utils/proxy → proxy}/http-client.d.ts +0 -0
- /package/dist/{utils/proxy → proxy}/plugins/header-injection.plugin.d.ts +0 -0
- /package/dist/{utils/proxy → proxy}/plugins/registry.d.ts +0 -0
- /package/dist/{utils/proxy → proxy}/plugins/sso-auth.plugin.d.ts +0 -0
- /package/dist/{utils/proxy → proxy}/plugins/types.js +0 -0
- /package/dist/{utils/proxy → proxy}/types.js +0 -0
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metrics Collection Types
|
|
3
|
+
*
|
|
4
|
+
* Core type definitions for the metrics collection system.
|
|
5
|
+
* Supports file-based metrics gathering from agent session files.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* File snapshot information
|
|
9
|
+
*/
|
|
10
|
+
export interface FileInfo {
|
|
11
|
+
path: string;
|
|
12
|
+
size: number;
|
|
13
|
+
createdAt: number;
|
|
14
|
+
modifiedAt: number;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Snapshot of directory state at a point in time
|
|
18
|
+
*/
|
|
19
|
+
export interface FileSnapshot {
|
|
20
|
+
timestamp: number;
|
|
21
|
+
files: FileInfo[];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Correlation status
|
|
25
|
+
*/
|
|
26
|
+
export type CorrelationStatus = 'pending' | 'matched' | 'failed';
|
|
27
|
+
/**
|
|
28
|
+
* Session status
|
|
29
|
+
*/
|
|
30
|
+
export type SessionStatus = 'active' | 'completed' | 'recovered' | 'failed';
|
|
31
|
+
/**
|
|
32
|
+
* Watermark type (per-agent strategy)
|
|
33
|
+
*/
|
|
34
|
+
export type WatermarkType = 'hash' | 'line' | 'object';
|
|
35
|
+
/**
|
|
36
|
+
* Watermark data
|
|
37
|
+
*/
|
|
38
|
+
export interface Watermark {
|
|
39
|
+
type: WatermarkType;
|
|
40
|
+
value: string;
|
|
41
|
+
updatedAt: number;
|
|
42
|
+
expiresAt: number;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Correlation result
|
|
46
|
+
*/
|
|
47
|
+
export interface CorrelationResult {
|
|
48
|
+
status: CorrelationStatus;
|
|
49
|
+
agentSessionFile?: string;
|
|
50
|
+
agentSessionId?: string;
|
|
51
|
+
detectedAt?: number;
|
|
52
|
+
retryCount: number;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Monitoring state
|
|
56
|
+
*/
|
|
57
|
+
export interface MonitoringState {
|
|
58
|
+
isActive: boolean;
|
|
59
|
+
lastCheckTime?: number;
|
|
60
|
+
changeCount: number;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Sync status for metrics records
|
|
64
|
+
*/
|
|
65
|
+
export type SyncStatus = 'pending' | 'syncing' | 'synced' | 'failed';
|
|
66
|
+
/**
|
|
67
|
+
* Session metadata (stored in ~/.codemie/metrics/sessions/{sessionId}.json)
|
|
68
|
+
* Contains both session info and sync state
|
|
69
|
+
*/
|
|
70
|
+
export interface MetricsSession {
|
|
71
|
+
sessionId: string;
|
|
72
|
+
agentName: string;
|
|
73
|
+
provider: string;
|
|
74
|
+
startTime: number;
|
|
75
|
+
endTime?: number;
|
|
76
|
+
workingDirectory: string;
|
|
77
|
+
correlation: CorrelationResult;
|
|
78
|
+
monitoring: MonitoringState;
|
|
79
|
+
watermark?: Watermark;
|
|
80
|
+
status: SessionStatus;
|
|
81
|
+
syncState?: SyncState;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Tool execution status
|
|
85
|
+
*/
|
|
86
|
+
export type ToolStatus = 'pending' | 'success' | 'error';
|
|
87
|
+
/**
|
|
88
|
+
* File operation type
|
|
89
|
+
*/
|
|
90
|
+
export type FileOperationType = 'read' | 'write' | 'edit' | 'delete' | 'glob' | 'grep';
|
|
91
|
+
/**
|
|
92
|
+
* File operation details
|
|
93
|
+
*/
|
|
94
|
+
export interface FileOperation {
|
|
95
|
+
type: FileOperationType;
|
|
96
|
+
path?: string;
|
|
97
|
+
pattern?: string;
|
|
98
|
+
language?: string;
|
|
99
|
+
format?: string;
|
|
100
|
+
linesAdded?: number;
|
|
101
|
+
linesRemoved?: number;
|
|
102
|
+
linesModified?: number;
|
|
103
|
+
durationMs?: number;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Detailed tool call metric
|
|
107
|
+
*/
|
|
108
|
+
export interface ToolCallMetric {
|
|
109
|
+
id: string;
|
|
110
|
+
name: string;
|
|
111
|
+
timestamp: number;
|
|
112
|
+
status: ToolStatus;
|
|
113
|
+
input?: Record<string, unknown>;
|
|
114
|
+
error?: string;
|
|
115
|
+
fileOperation?: FileOperation;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Aggregated tool usage summary
|
|
119
|
+
*/
|
|
120
|
+
export interface ToolUsageSummary {
|
|
121
|
+
name: string;
|
|
122
|
+
count: number;
|
|
123
|
+
successCount?: number;
|
|
124
|
+
errorCount?: number;
|
|
125
|
+
fileOperations?: {
|
|
126
|
+
read?: number;
|
|
127
|
+
write?: number;
|
|
128
|
+
edit?: number;
|
|
129
|
+
delete?: number;
|
|
130
|
+
glob?: number;
|
|
131
|
+
grep?: number;
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Metric snapshot (extracted from agent session file)
|
|
136
|
+
* This represents the current state of all metrics for a session
|
|
137
|
+
*/
|
|
138
|
+
export interface MetricSnapshot {
|
|
139
|
+
sessionId: string;
|
|
140
|
+
timestamp: number;
|
|
141
|
+
tokens?: {
|
|
142
|
+
input: number;
|
|
143
|
+
output: number;
|
|
144
|
+
cacheCreation?: number;
|
|
145
|
+
cacheRead?: number;
|
|
146
|
+
};
|
|
147
|
+
toolCalls?: ToolCallMetric[];
|
|
148
|
+
toolUsageSummary?: ToolUsageSummary[];
|
|
149
|
+
turnCount?: number;
|
|
150
|
+
duration?: number;
|
|
151
|
+
model?: string;
|
|
152
|
+
metadata?: Record<string, unknown>;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Delta record (JSONL line in session_metrics.jsonl)
|
|
156
|
+
* Each line represents incremental metrics for one turn
|
|
157
|
+
*/
|
|
158
|
+
export interface MetricDelta {
|
|
159
|
+
recordId: string;
|
|
160
|
+
sessionId: string;
|
|
161
|
+
agentSessionId: string;
|
|
162
|
+
timestamp: number | string;
|
|
163
|
+
gitBranch?: string;
|
|
164
|
+
tokens: {
|
|
165
|
+
input: number;
|
|
166
|
+
output: number;
|
|
167
|
+
cacheCreation?: number;
|
|
168
|
+
cacheRead?: number;
|
|
169
|
+
};
|
|
170
|
+
tools: {
|
|
171
|
+
[toolName: string]: number;
|
|
172
|
+
};
|
|
173
|
+
toolStatus?: {
|
|
174
|
+
[toolName: string]: {
|
|
175
|
+
success: number;
|
|
176
|
+
failure: number;
|
|
177
|
+
};
|
|
178
|
+
};
|
|
179
|
+
fileOperations?: {
|
|
180
|
+
type: 'read' | 'write' | 'edit' | 'delete' | 'glob' | 'grep';
|
|
181
|
+
path?: string;
|
|
182
|
+
pattern?: string;
|
|
183
|
+
language?: string;
|
|
184
|
+
format?: string;
|
|
185
|
+
linesAdded?: number;
|
|
186
|
+
linesRemoved?: number;
|
|
187
|
+
linesModified?: number;
|
|
188
|
+
durationMs?: number;
|
|
189
|
+
}[];
|
|
190
|
+
models?: string[];
|
|
191
|
+
apiErrorMessage?: string;
|
|
192
|
+
userPrompts?: {
|
|
193
|
+
count: number;
|
|
194
|
+
text?: string;
|
|
195
|
+
}[];
|
|
196
|
+
syncStatus: SyncStatus;
|
|
197
|
+
syncedAt?: number;
|
|
198
|
+
syncAttempts: number;
|
|
199
|
+
syncError?: string;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* User prompt record (from history file)
|
|
203
|
+
*/
|
|
204
|
+
export interface UserPrompt {
|
|
205
|
+
display: string;
|
|
206
|
+
timestamp: number;
|
|
207
|
+
project: string;
|
|
208
|
+
sessionId: string;
|
|
209
|
+
pastedContents?: Record<string, unknown>;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Sync state (sync_state.json)
|
|
213
|
+
*/
|
|
214
|
+
export interface SyncState {
|
|
215
|
+
sessionId: string;
|
|
216
|
+
agentSessionId: string;
|
|
217
|
+
sessionStartTime: number;
|
|
218
|
+
sessionEndTime?: number;
|
|
219
|
+
status: 'active' | 'completed' | 'failed';
|
|
220
|
+
lastProcessedLine: number;
|
|
221
|
+
lastProcessedTimestamp: number;
|
|
222
|
+
processedRecordIds: string[];
|
|
223
|
+
attachedUserPromptTexts?: string[];
|
|
224
|
+
lastSyncedRecordId?: string;
|
|
225
|
+
lastSyncAt?: number;
|
|
226
|
+
totalDeltas: number;
|
|
227
|
+
totalSynced: number;
|
|
228
|
+
totalFailed: number;
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Agent-specific metrics support interface
|
|
232
|
+
*/
|
|
233
|
+
export interface AgentMetricsSupport {
|
|
234
|
+
/**
|
|
235
|
+
* Get data paths for this agent
|
|
236
|
+
*/
|
|
237
|
+
getDataPaths(): {
|
|
238
|
+
sessionsDir: string;
|
|
239
|
+
settingsDir?: string;
|
|
240
|
+
};
|
|
241
|
+
/**
|
|
242
|
+
* Check if file path matches agent's session file pattern
|
|
243
|
+
*/
|
|
244
|
+
matchesSessionPattern(path: string): boolean;
|
|
245
|
+
/**
|
|
246
|
+
* Extract session ID from file path
|
|
247
|
+
*/
|
|
248
|
+
extractSessionId(path: string): string;
|
|
249
|
+
/**
|
|
250
|
+
* Parse session file and extract metrics (full snapshot)
|
|
251
|
+
*/
|
|
252
|
+
parseSessionFile(path: string): Promise<MetricSnapshot>;
|
|
253
|
+
/**
|
|
254
|
+
* Parse incremental metrics from session file
|
|
255
|
+
* Returns only new deltas since fromLine
|
|
256
|
+
*/
|
|
257
|
+
parseIncrementalMetrics(path: string, processedRecordIds: Set<string>, attachedUserPromptTexts?: Set<string>): Promise<{
|
|
258
|
+
deltas: MetricDelta[];
|
|
259
|
+
lastLine: number;
|
|
260
|
+
newlyAttachedPrompts?: string[];
|
|
261
|
+
}>;
|
|
262
|
+
/**
|
|
263
|
+
* Get user prompts for a specific session
|
|
264
|
+
* Each agent implements this to parse their specific history format
|
|
265
|
+
*
|
|
266
|
+
* @param sessionId - Agent session ID
|
|
267
|
+
* @param fromTimestamp - Start timestamp (Unix ms) - optional
|
|
268
|
+
* @param toTimestamp - End timestamp (Unix ms) - optional
|
|
269
|
+
* @returns Array of user prompts
|
|
270
|
+
*/
|
|
271
|
+
getUserPrompts(sessionId: string, fromTimestamp?: number, toTimestamp?: number): Promise<UserPrompt[]>;
|
|
272
|
+
/**
|
|
273
|
+
* Get watermark strategy for this agent
|
|
274
|
+
*/
|
|
275
|
+
getWatermarkStrategy(): WatermarkType;
|
|
276
|
+
/**
|
|
277
|
+
* Get initialization delay (ms) for this agent
|
|
278
|
+
*/
|
|
279
|
+
getInitDelay(): number;
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* File change event
|
|
283
|
+
*/
|
|
284
|
+
export interface FileChangeEvent {
|
|
285
|
+
path: string;
|
|
286
|
+
timestamp: number;
|
|
287
|
+
size: number;
|
|
288
|
+
hash: string;
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Metrics configuration
|
|
292
|
+
*/
|
|
293
|
+
export interface MetricsConfig {
|
|
294
|
+
enabled: (provider: string) => boolean;
|
|
295
|
+
initDelay: Record<string, number>;
|
|
296
|
+
retry: {
|
|
297
|
+
attempts: number;
|
|
298
|
+
delays: number[];
|
|
299
|
+
};
|
|
300
|
+
monitoring: {
|
|
301
|
+
pollInterval: number;
|
|
302
|
+
debounceDelay: number;
|
|
303
|
+
};
|
|
304
|
+
watermark: {
|
|
305
|
+
ttl: number;
|
|
306
|
+
};
|
|
307
|
+
}
|
|
308
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/metrics/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/metrics/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Health Check Implementation
|
|
3
|
+
*
|
|
4
|
+
* Provides common patterns for health checks:
|
|
5
|
+
* - HTTP client with timeout
|
|
6
|
+
* - Ping/version detection
|
|
7
|
+
* - Model listing
|
|
8
|
+
* - Error handling
|
|
9
|
+
*/
|
|
10
|
+
import type { CodeMieConfigOptions } from '../../../env/types.js';
|
|
11
|
+
import type { ProviderHealthCheck, HealthCheckResult, HealthCheckConfig, ModelInfo } from '../types.js';
|
|
12
|
+
import { HTTPClient } from './http-client.js';
|
|
13
|
+
/**
|
|
14
|
+
* Base health check implementation
|
|
15
|
+
*/
|
|
16
|
+
export declare abstract class BaseHealthCheck implements ProviderHealthCheck {
|
|
17
|
+
protected client: HTTPClient;
|
|
18
|
+
protected config: HealthCheckConfig;
|
|
19
|
+
constructor(config: HealthCheckConfig);
|
|
20
|
+
/**
|
|
21
|
+
* Check if this health check supports the given provider
|
|
22
|
+
*/
|
|
23
|
+
supports(provider: string): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Main health check flow
|
|
26
|
+
* 1. Ping server
|
|
27
|
+
* 2. Get version
|
|
28
|
+
* 3. List models (if applicable)
|
|
29
|
+
* 4. Validate configured model (if specified)
|
|
30
|
+
*/
|
|
31
|
+
check(config: CodeMieConfigOptions): Promise<HealthCheckResult>;
|
|
32
|
+
/**
|
|
33
|
+
* Ping server to check if it's reachable
|
|
34
|
+
*/
|
|
35
|
+
protected abstract ping(): Promise<void>;
|
|
36
|
+
/**
|
|
37
|
+
* Get provider version
|
|
38
|
+
*/
|
|
39
|
+
protected abstract getVersion(): Promise<string | undefined>;
|
|
40
|
+
/**
|
|
41
|
+
* List available models (optional - override if needed)
|
|
42
|
+
*/
|
|
43
|
+
protected listModels(): Promise<ModelInfo[]>;
|
|
44
|
+
/**
|
|
45
|
+
* Get result for unreachable server
|
|
46
|
+
*/
|
|
47
|
+
protected getUnreachableResult(error?: unknown): HealthCheckResult;
|
|
48
|
+
/**
|
|
49
|
+
* Get healthy message
|
|
50
|
+
*/
|
|
51
|
+
protected getHealthyMessage(models: ModelInfo[]): string;
|
|
52
|
+
/**
|
|
53
|
+
* Get remediation for no models
|
|
54
|
+
*/
|
|
55
|
+
protected getNoModelsRemediation(): string;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=BaseHealthCheck.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseHealthCheck.d.ts","sourceRoot":"","sources":["../../../../src/providers/core/base/BaseHealthCheck.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EAEjB,SAAS,EACV,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,8BAAsB,eAAgB,YAAW,mBAAmB;IAClE,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC;IAC7B,SAAS,CAAC,MAAM,EAAE,iBAAiB,CAAC;gBAExB,MAAM,EAAE,iBAAiB;IAWrC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAInC;;;;;;OAMG;IACG,KAAK,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAwDrE;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAExC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAE5D;;OAEG;cACa,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAIlD;;OAEG;IACH,SAAS,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,iBAAiB;IASlE;;OAEG;IACH,SAAS,CAAC,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM;IAMxD;;OAEG;IACH,SAAS,CAAC,sBAAsB,IAAI,MAAM;CAG3C"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Health Check Implementation
|
|
3
|
+
*
|
|
4
|
+
* Provides common patterns for health checks:
|
|
5
|
+
* - HTTP client with timeout
|
|
6
|
+
* - Ping/version detection
|
|
7
|
+
* - Model listing
|
|
8
|
+
* - Error handling
|
|
9
|
+
*/
|
|
10
|
+
import { HTTPClient } from './http-client.js';
|
|
11
|
+
/**
|
|
12
|
+
* Base health check implementation
|
|
13
|
+
*/
|
|
14
|
+
export class BaseHealthCheck {
|
|
15
|
+
client;
|
|
16
|
+
config;
|
|
17
|
+
constructor(config) {
|
|
18
|
+
this.config = {
|
|
19
|
+
timeout: 5000,
|
|
20
|
+
...config
|
|
21
|
+
};
|
|
22
|
+
this.client = new HTTPClient({
|
|
23
|
+
timeout: this.config.timeout,
|
|
24
|
+
headers: this.config.headers
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Check if this health check supports the given provider
|
|
29
|
+
*/
|
|
30
|
+
supports(provider) {
|
|
31
|
+
return provider === this.config.provider;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Main health check flow
|
|
35
|
+
* 1. Ping server
|
|
36
|
+
* 2. Get version
|
|
37
|
+
* 3. List models (if applicable)
|
|
38
|
+
* 4. Validate configured model (if specified)
|
|
39
|
+
*/
|
|
40
|
+
async check(config) {
|
|
41
|
+
try {
|
|
42
|
+
// 1. Ping server
|
|
43
|
+
await this.ping();
|
|
44
|
+
// 2. Get version
|
|
45
|
+
const version = await this.getVersion();
|
|
46
|
+
// 3. List models (if applicable)
|
|
47
|
+
const models = await this.listModels().catch(() => []);
|
|
48
|
+
// 4. Build details with model validation
|
|
49
|
+
const details = [];
|
|
50
|
+
// Validate configured model if specified
|
|
51
|
+
if (config.model && models.length > 0) {
|
|
52
|
+
const configuredModel = config.model;
|
|
53
|
+
const modelAvailable = models.some(m => m.id === configuredModel);
|
|
54
|
+
if (modelAvailable) {
|
|
55
|
+
details.push({
|
|
56
|
+
status: 'ok',
|
|
57
|
+
message: `Model '${configuredModel}' available`
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
details.push({
|
|
62
|
+
status: 'warning',
|
|
63
|
+
message: `Model '${configuredModel}' not found`,
|
|
64
|
+
hint: `Available: ${models.slice(0, 3).map(m => m.id).join(', ')}${models.length > 3 ? '...' : ''}`
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
// Build result
|
|
69
|
+
const result = {
|
|
70
|
+
provider: this.config.provider,
|
|
71
|
+
status: 'healthy',
|
|
72
|
+
message: this.getHealthyMessage(models),
|
|
73
|
+
version,
|
|
74
|
+
models,
|
|
75
|
+
details
|
|
76
|
+
};
|
|
77
|
+
// Check if models are available
|
|
78
|
+
if (models.length === 0) {
|
|
79
|
+
result.status = 'unhealthy';
|
|
80
|
+
result.message = 'No models available';
|
|
81
|
+
result.remediation = this.getNoModelsRemediation();
|
|
82
|
+
}
|
|
83
|
+
return result;
|
|
84
|
+
}
|
|
85
|
+
catch (error) {
|
|
86
|
+
return this.getUnreachableResult(error);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* List available models (optional - override if needed)
|
|
91
|
+
*/
|
|
92
|
+
async listModels() {
|
|
93
|
+
return [];
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Get result for unreachable server
|
|
97
|
+
*/
|
|
98
|
+
getUnreachableResult(error) {
|
|
99
|
+
return {
|
|
100
|
+
provider: this.config.provider,
|
|
101
|
+
status: 'unreachable',
|
|
102
|
+
message: `Provider is not reachable: ${error instanceof Error ? error.message : String(error)}`,
|
|
103
|
+
remediation: 'Check if the provider is running and accessible'
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Get healthy message
|
|
108
|
+
*/
|
|
109
|
+
getHealthyMessage(models) {
|
|
110
|
+
return models.length > 0
|
|
111
|
+
? `Provider is healthy with ${models.length} model(s) available`
|
|
112
|
+
: 'Provider is healthy';
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Get remediation for no models
|
|
116
|
+
*/
|
|
117
|
+
getNoModelsRemediation() {
|
|
118
|
+
return 'Install models via provider CLI or CodeMie models command';
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=BaseHealthCheck.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseHealthCheck.js","sourceRoot":"","sources":["../../../../src/providers/core/base/BaseHealthCheck.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Model Proxy Implementation
|
|
3
|
+
*
|
|
4
|
+
* Unified implementation for both ModelInstallerProxy and ProviderModelFetcher
|
|
5
|
+
*/
|
|
6
|
+
import type { CodeMieConfigOptions } from '../../../env/types.js';
|
|
7
|
+
import type { ModelInstallerProxy, ProviderModelFetcher, ModelInfo, InstallProgress } from '../types.js';
|
|
8
|
+
import { HTTPClient } from './http-client.js';
|
|
9
|
+
/**
|
|
10
|
+
* Base model proxy implementation
|
|
11
|
+
*/
|
|
12
|
+
export declare abstract class BaseModelProxy implements ModelInstallerProxy, ProviderModelFetcher {
|
|
13
|
+
protected client: HTTPClient;
|
|
14
|
+
protected baseUrl: string;
|
|
15
|
+
constructor(baseUrl: string, timeout?: number);
|
|
16
|
+
/**
|
|
17
|
+
* Check if this proxy supports the given provider
|
|
18
|
+
*/
|
|
19
|
+
abstract supports(provider: string): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* List installed models
|
|
22
|
+
*/
|
|
23
|
+
abstract listModels(): Promise<ModelInfo[]>;
|
|
24
|
+
/**
|
|
25
|
+
* Fetch models for setup wizard
|
|
26
|
+
*/
|
|
27
|
+
abstract fetchModels(config: CodeMieConfigOptions): Promise<ModelInfo[]>;
|
|
28
|
+
/**
|
|
29
|
+
* Check if installation is supported
|
|
30
|
+
*/
|
|
31
|
+
supportsInstallation(): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Install model with progress tracking
|
|
34
|
+
*/
|
|
35
|
+
installModel(_modelName: string, _onProgress?: (status: InstallProgress) => void): Promise<void>;
|
|
36
|
+
/**
|
|
37
|
+
* Remove model
|
|
38
|
+
*/
|
|
39
|
+
removeModel(_modelName: string): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Get detailed model information
|
|
42
|
+
*/
|
|
43
|
+
getModelInfo(modelName: string): Promise<ModelInfo | null>;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=BaseModelProxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseModelProxy.d.ts","sourceRoot":"","sources":["../../../../src/providers/core/base/BaseModelProxy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,SAAS,EACT,eAAe,EAChB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,8BAAsB,cAAe,YAAW,mBAAmB,EAAE,oBAAoB;IACvF,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC;IAC7B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEd,OAAO,EAAE,MAAM,EAAE,OAAO,SAAQ;IAK5C;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAE5C;;OAEG;IACH,QAAQ,CAAC,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAE3C;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAExE;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAI/B;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAItG;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;CAIjE"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Model Proxy Implementation
|
|
3
|
+
*
|
|
4
|
+
* Unified implementation for both ModelInstallerProxy and ProviderModelFetcher
|
|
5
|
+
*/
|
|
6
|
+
import { HTTPClient } from './http-client.js';
|
|
7
|
+
/**
|
|
8
|
+
* Base model proxy implementation
|
|
9
|
+
*/
|
|
10
|
+
export class BaseModelProxy {
|
|
11
|
+
client;
|
|
12
|
+
baseUrl;
|
|
13
|
+
constructor(baseUrl, timeout = 10000) {
|
|
14
|
+
this.baseUrl = baseUrl;
|
|
15
|
+
this.client = new HTTPClient({ timeout });
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Check if installation is supported
|
|
19
|
+
*/
|
|
20
|
+
supportsInstallation() {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Install model with progress tracking
|
|
25
|
+
*/
|
|
26
|
+
async installModel(_modelName, _onProgress) {
|
|
27
|
+
throw new Error('Model installation not supported by this provider');
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Remove model
|
|
31
|
+
*/
|
|
32
|
+
async removeModel(_modelName) {
|
|
33
|
+
throw new Error('Model removal not supported by this provider');
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Get detailed model information
|
|
37
|
+
*/
|
|
38
|
+
async getModelInfo(modelName) {
|
|
39
|
+
const models = await this.listModels();
|
|
40
|
+
return models.find(m => m.id === modelName) || null;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=BaseModelProxy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseModelProxy.js","sourceRoot":"","sources":["../../../../src/providers/core/base/BaseModelProxy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,MAAM,OAAgB,cAAc;IACxB,MAAM,CAAa;IACnB,OAAO,CAAS;IAE1B,YAAY,OAAe,EAAE,OAAO,GAAG,KAAK;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5C,CAAC;IAiBD;;OAEG;IACH,oBAAoB;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,UAAkB,EAAE,WAA+C;QACpF,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,UAAkB;QAClC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,SAAiB;QAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,IAAI,IAAI,CAAC;IACtD,CAAC;CACF"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple HTTP Client for Provider Plugins
|
|
3
|
+
*
|
|
4
|
+
* Lightweight HTTP client with timeout, redirect, and retry support
|
|
5
|
+
*/
|
|
6
|
+
import http from 'http';
|
|
7
|
+
export interface HTTPClientConfig {
|
|
8
|
+
timeout?: number;
|
|
9
|
+
headers?: Record<string, string>;
|
|
10
|
+
maxRedirects?: number;
|
|
11
|
+
maxRetries?: number;
|
|
12
|
+
rejectUnauthorized?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface HTTPResponse<T = unknown> {
|
|
15
|
+
status: number;
|
|
16
|
+
statusText: string;
|
|
17
|
+
data: T;
|
|
18
|
+
headers: Record<string, string>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Simple HTTP Client
|
|
22
|
+
*/
|
|
23
|
+
export declare class HTTPClient {
|
|
24
|
+
private config;
|
|
25
|
+
constructor(config?: HTTPClientConfig);
|
|
26
|
+
/**
|
|
27
|
+
* Perform HTTP GET request with retry logic
|
|
28
|
+
*/
|
|
29
|
+
get<T = unknown>(url: string, headers?: Record<string, string>): Promise<HTTPResponse<T>>;
|
|
30
|
+
/**
|
|
31
|
+
* Perform HTTP POST request with retry logic
|
|
32
|
+
*/
|
|
33
|
+
post<T = unknown>(url: string, data?: unknown, headers?: Record<string, string>): Promise<HTTPResponse<T>>;
|
|
34
|
+
/**
|
|
35
|
+
* Perform HTTP GET request with redirect support (returns raw string)
|
|
36
|
+
*/
|
|
37
|
+
getRaw(url: string, headers?: Record<string, string>): Promise<{
|
|
38
|
+
statusCode?: number;
|
|
39
|
+
statusMessage?: string;
|
|
40
|
+
headers: http.IncomingHttpHeaders;
|
|
41
|
+
data: string;
|
|
42
|
+
}>;
|
|
43
|
+
/**
|
|
44
|
+
* Perform HTTP request
|
|
45
|
+
*/
|
|
46
|
+
private request;
|
|
47
|
+
/**
|
|
48
|
+
* Make HTTP request with automatic redirect following
|
|
49
|
+
* Handles 301, 302, 303, 307, 308 redirects following HTTP standards
|
|
50
|
+
*/
|
|
51
|
+
private requestWithRedirects;
|
|
52
|
+
/**
|
|
53
|
+
* Retry wrapper with exponential backoff
|
|
54
|
+
*/
|
|
55
|
+
private withRetry;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=http-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../../../src/providers/core/base/http-client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,IAAI,MAAM,MAAM,CAAC;AAKxB,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,CAAC;IACR,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAA6B;gBAE/B,MAAM,GAAE,gBAAqB;IAWzC;;OAEG;IACG,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAI/F;;OAEG;IACG,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAIhH;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAYtK;;OAEG;YACW,OAAO;IA6ErB;;;OAGG;YACW,oBAAoB;IAqHlC;;OAEG;YACW,SAAS;CAgCxB"}
|