@codemieai/code 0.0.15 → 0.0.16
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 +24 -9
- package/dist/agents/codemie-code/agent.js +2 -2
- 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 +5 -4
- package/dist/agents/core/AgentCLI.js.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts +1 -5
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.js +5 -26
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
- package/dist/agents/plugins/claude.plugin.js +1 -1
- package/dist/agents/plugins/claude.plugin.js.map +1 -1
- package/dist/agents/plugins/codemie-code.plugin.js +1 -1
- package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
- package/dist/agents/plugins/codex.plugin.js +2 -2
- 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.js +1 -1
- package/dist/agents/plugins/gemini.plugin.js.map +1 -1
- package/dist/analytics/index.d.ts.map +1 -1
- package/dist/analytics/index.js +3 -11
- package/dist/analytics/index.js.map +1 -1
- package/dist/analytics/remote-submission/cursor-manager.d.ts +1 -1
- package/dist/analytics/remote-submission/cursor-manager.js +2 -2
- package/dist/analytics/remote-submission/cursor-manager.js.map +1 -1
- package/dist/analytics/remote-submission/index.d.ts +2 -2
- package/dist/analytics/remote-submission/index.d.ts.map +1 -1
- package/dist/analytics/remote-submission/index.js +1 -1
- package/dist/analytics/remote-submission/index.js.map +1 -1
- package/dist/analytics/remote-submission/lock-manager.d.ts +1 -1
- package/dist/analytics/remote-submission/lock-manager.js +2 -2
- package/dist/analytics/remote-submission/lock-manager.js.map +1 -1
- package/dist/analytics/remote-submission/metric-transformer.d.ts +2 -30
- package/dist/analytics/remote-submission/metric-transformer.d.ts.map +1 -1
- package/dist/analytics/remote-submission/metric-transformer.js +24 -117
- package/dist/analytics/remote-submission/metric-transformer.js.map +1 -1
- package/dist/analytics/remote-submission/submitter.d.ts +1 -0
- package/dist/analytics/remote-submission/submitter.d.ts.map +1 -1
- package/dist/analytics/remote-submission/submitter.js +18 -37
- package/dist/analytics/remote-submission/submitter.js.map +1 -1
- package/dist/analytics/remote-submission/types.d.ts +5 -51
- package/dist/analytics/remote-submission/types.d.ts.map +1 -1
- package/dist/analytics/remote-submission/types.js.map +1 -1
- 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/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 +23 -8
- 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.js +90 -12
- 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 +159 -660
- 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 +4 -1
- package/dist/cli/index.js.map +1 -1
- 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 +20 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +22 -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 +141 -0
- package/dist/providers/integration/setup-ui.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 +87 -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/{utils/codemie-model-fetcher.d.ts → providers/plugins/sso/sso.http-client.d.ts} +16 -5
- package/dist/providers/plugins/sso/sso.http-client.d.ts.map +1 -0
- package/dist/providers/plugins/sso/sso.http-client.js +187 -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 +1 -1
- package/dist/proxy/http-client.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 +7 -3
- package/dist/proxy/plugins/header-injection.plugin.js.map +1 -0
- package/dist/{utils/proxy → proxy}/plugins/index.d.ts +2 -2
- package/dist/proxy/plugins/index.d.ts.map +1 -0
- package/dist/{utils/proxy → proxy}/plugins/index.js +3 -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 +92 -0
- package/dist/proxy/plugins/logging.plugin.js.map +1 -0
- package/dist/proxy/plugins/registry.d.ts.map +1 -0
- package/dist/{utils/proxy → proxy}/plugins/registry.js +1 -1
- 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 +3 -3
- package/dist/proxy/plugins/types.d.ts.map +1 -0
- package/dist/proxy/plugins/types.js.map +1 -0
- package/dist/proxy/types.d.ts.map +1 -0
- package/dist/proxy/types.js.map +1 -0
- package/dist/utils/codemie-proxy.d.ts +5 -4
- package/dist/utils/codemie-proxy.d.ts.map +1 -1
- package/dist/utils/codemie-proxy.js +31 -26
- 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 +30 -90
- 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/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +0 -2
- package/dist/utils/logger.js.map +1 -1
- package/package.json +1 -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/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.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/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.d.ts +0 -0
- /package/dist/{utils/proxy → proxy}/types.js +0 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SSO Model Management
|
|
3
|
+
*
|
|
4
|
+
* Fetches available models from CodeMie SSO API.
|
|
5
|
+
* Handles both direct model listing and LiteLLM integration discovery.
|
|
6
|
+
*/
|
|
7
|
+
import { BaseModelProxy } from '../../core/base/BaseModelProxy.js';
|
|
8
|
+
import { ProviderRegistry } from '../../core/registry.js';
|
|
9
|
+
import { SSOTemplate } from './sso.template.js';
|
|
10
|
+
import { CodeMieSSO } from './sso.auth.js';
|
|
11
|
+
import { fetchCodeMieModels, fetchCodeMieIntegrations, CODEMIE_ENDPOINTS } from './sso.http-client.js';
|
|
12
|
+
import { logger } from '../../../utils/logger.js';
|
|
13
|
+
/**
|
|
14
|
+
* SSO Model Proxy
|
|
15
|
+
*
|
|
16
|
+
* Fetches models from CodeMie SSO API and LiteLLM integrations
|
|
17
|
+
*/
|
|
18
|
+
export class SSOModelProxy extends BaseModelProxy {
|
|
19
|
+
sso;
|
|
20
|
+
constructor(baseUrl) {
|
|
21
|
+
// SSO doesn't have a fixed base URL, it's resolved from config
|
|
22
|
+
super(baseUrl || '', 10000);
|
|
23
|
+
this.sso = new CodeMieSSO();
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Check if this proxy supports the given provider
|
|
27
|
+
*/
|
|
28
|
+
supports(provider) {
|
|
29
|
+
return provider === 'ai-run-sso';
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* SSO does not support local model installation
|
|
33
|
+
*/
|
|
34
|
+
supportsInstallation() {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* List models from SSO API
|
|
39
|
+
*
|
|
40
|
+
* Note: This is mainly for consistency with the interface.
|
|
41
|
+
* For SSO, listModels and fetchModels are essentially the same.
|
|
42
|
+
*/
|
|
43
|
+
async listModels() {
|
|
44
|
+
try {
|
|
45
|
+
const credentials = await this.sso.getStoredCredentials();
|
|
46
|
+
if (!credentials) {
|
|
47
|
+
throw new Error('No SSO credentials found. Run: codemie auth login');
|
|
48
|
+
}
|
|
49
|
+
return await this.fetchModelsFromAPI(credentials.apiUrl, credentials.cookies);
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
logger.debug('Failed to list SSO models:', error);
|
|
53
|
+
throw error;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Fetch models for setup wizard
|
|
58
|
+
*
|
|
59
|
+
* Returns models from CodeMie SSO API
|
|
60
|
+
*/
|
|
61
|
+
async fetchModels(config) {
|
|
62
|
+
try {
|
|
63
|
+
// Try to get credentials
|
|
64
|
+
const credentials = await this.sso.getStoredCredentials();
|
|
65
|
+
if (!credentials) {
|
|
66
|
+
// If no credentials yet, return empty array (setup wizard will handle auth)
|
|
67
|
+
logger.debug('No SSO credentials found, returning empty model list');
|
|
68
|
+
return [];
|
|
69
|
+
}
|
|
70
|
+
// Use API URL from credentials or config
|
|
71
|
+
const apiUrl = credentials.apiUrl || config.codeMieUrl;
|
|
72
|
+
if (!apiUrl) {
|
|
73
|
+
throw new Error('No CodeMie URL configured');
|
|
74
|
+
}
|
|
75
|
+
return await this.fetchModelsFromAPI(apiUrl, credentials.cookies);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
logger.debug('Failed to fetch SSO models:', error);
|
|
79
|
+
// Return empty array instead of throwing - setup wizard will handle this
|
|
80
|
+
return [];
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Fetch LiteLLM integrations
|
|
85
|
+
*/
|
|
86
|
+
async fetchIntegrations(codeMieUrl) {
|
|
87
|
+
const credentials = await this.sso.getStoredCredentials();
|
|
88
|
+
if (!credentials) {
|
|
89
|
+
logger.debug('No SSO credentials found for fetching integrations');
|
|
90
|
+
throw new Error('No SSO credentials found. Please authenticate first.');
|
|
91
|
+
}
|
|
92
|
+
const apiUrl = credentials.apiUrl || codeMieUrl;
|
|
93
|
+
logger.debug(`Fetching integrations from: ${apiUrl}${CODEMIE_ENDPOINTS.USER_SETTINGS}`);
|
|
94
|
+
try {
|
|
95
|
+
// Use the working utility function that handles redirects and SSL
|
|
96
|
+
return await fetchCodeMieIntegrations(apiUrl, credentials.cookies, CODEMIE_ENDPOINTS.USER_SETTINGS);
|
|
97
|
+
}
|
|
98
|
+
catch (error) {
|
|
99
|
+
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
100
|
+
const errorStack = error instanceof Error ? error.stack : undefined;
|
|
101
|
+
// Log error details properly
|
|
102
|
+
logger.debug('Failed to fetch SSO integrations:', errorMsg);
|
|
103
|
+
if (errorStack && process.env.CODEMIE_DEBUG) {
|
|
104
|
+
logger.debug('Stack trace:', errorStack);
|
|
105
|
+
}
|
|
106
|
+
// Re-throw with more context
|
|
107
|
+
throw new Error(`Failed to fetch integrations: ${errorMsg}`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Fetch models from CodeMie API
|
|
112
|
+
*/
|
|
113
|
+
async fetchModelsFromAPI(apiUrl, cookies) {
|
|
114
|
+
try {
|
|
115
|
+
// Use the working utility function that handles redirects, SSL, and retry logic
|
|
116
|
+
const modelIds = await fetchCodeMieModels(apiUrl, cookies);
|
|
117
|
+
if (modelIds.length === 0) {
|
|
118
|
+
return [];
|
|
119
|
+
}
|
|
120
|
+
// Transform model IDs to ModelInfo format
|
|
121
|
+
// Mark recommended models as popular for highlighting (⭐)
|
|
122
|
+
const models = modelIds.map(id => {
|
|
123
|
+
const isRecommended = SSOTemplate.recommendedModels.includes(id);
|
|
124
|
+
return {
|
|
125
|
+
id,
|
|
126
|
+
name: id, // Use label from API
|
|
127
|
+
popular: isRecommended // Adds ⭐ to recommended models
|
|
128
|
+
};
|
|
129
|
+
});
|
|
130
|
+
return models;
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
throw new Error(`Failed to fetch models from SSO API: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// Auto-register model proxy
|
|
138
|
+
ProviderRegistry.registerModelProxy('ai-run-sso', new SSOModelProxy());
|
|
139
|
+
//# sourceMappingURL=sso.models.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sso.models.js","sourceRoot":"","sources":["../../../../src/providers/plugins/sso/sso.models.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SSO Provider Setup Steps
|
|
3
|
+
*
|
|
4
|
+
* Implements interactive setup flow for CodeMie SSO provider.
|
|
5
|
+
* Features:
|
|
6
|
+
* - Browser-based SSO authentication
|
|
7
|
+
* - CodeMie URL configuration
|
|
8
|
+
* - LiteLLM integration discovery (optional)
|
|
9
|
+
* - Model fetching from SSO API
|
|
10
|
+
*/
|
|
11
|
+
import type { ProviderSetupSteps } from '../../core/types.js';
|
|
12
|
+
/**
|
|
13
|
+
* SSO setup steps implementation
|
|
14
|
+
*/
|
|
15
|
+
export declare const SSOSetupSteps: ProviderSetupSteps;
|
|
16
|
+
//# sourceMappingURL=sso.setup-steps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sso.setup-steps.d.ts","sourceRoot":"","sources":["../../../../src/providers/plugins/sso/sso.setup-steps.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EACV,kBAAkB,EAEnB,MAAM,qBAAqB,CAAC;AAO7B;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,kBAyI3B,CAAC"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SSO Provider Setup Steps
|
|
3
|
+
*
|
|
4
|
+
* Implements interactive setup flow for CodeMie SSO provider.
|
|
5
|
+
* Features:
|
|
6
|
+
* - Browser-based SSO authentication
|
|
7
|
+
* - CodeMie URL configuration
|
|
8
|
+
* - LiteLLM integration discovery (optional)
|
|
9
|
+
* - Model fetching from SSO API
|
|
10
|
+
*/
|
|
11
|
+
import inquirer from 'inquirer';
|
|
12
|
+
import chalk from 'chalk';
|
|
13
|
+
import { ProviderRegistry } from '../../core/registry.js';
|
|
14
|
+
import { SSOTemplate } from './sso.template.js';
|
|
15
|
+
import { CodeMieSSO } from './sso.auth.js';
|
|
16
|
+
import { SSOModelProxy } from './sso.models.js';
|
|
17
|
+
/**
|
|
18
|
+
* SSO setup steps implementation
|
|
19
|
+
*/
|
|
20
|
+
export const SSOSetupSteps = {
|
|
21
|
+
name: 'ai-run-sso',
|
|
22
|
+
/**
|
|
23
|
+
* Step 1: Gather credentials/configuration
|
|
24
|
+
*
|
|
25
|
+
* Prompts for CodeMie URL and performs browser-based authentication
|
|
26
|
+
*/
|
|
27
|
+
async getCredentials() {
|
|
28
|
+
// Prompt for CodeMie URL
|
|
29
|
+
const answers = await inquirer.prompt([
|
|
30
|
+
{
|
|
31
|
+
type: 'input',
|
|
32
|
+
name: 'codeMieUrl',
|
|
33
|
+
message: 'CodeMie organization URL:',
|
|
34
|
+
default: SSOTemplate.defaultBaseUrl,
|
|
35
|
+
validate: (input) => {
|
|
36
|
+
if (!input.trim()) {
|
|
37
|
+
return 'CodeMie URL is required';
|
|
38
|
+
}
|
|
39
|
+
if (!input.startsWith('http://') && !input.startsWith('https://')) {
|
|
40
|
+
return 'Please enter a valid URL starting with http:// or https://';
|
|
41
|
+
}
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
]);
|
|
46
|
+
const codeMieUrl = answers.codeMieUrl.trim();
|
|
47
|
+
// Authenticate via browser
|
|
48
|
+
console.log(chalk.cyan('\n🔐 Authenticating via browser...\n'));
|
|
49
|
+
const sso = new CodeMieSSO();
|
|
50
|
+
const authResult = await sso.authenticate({
|
|
51
|
+
codeMieUrl,
|
|
52
|
+
timeout: 120000 // 2 minutes
|
|
53
|
+
});
|
|
54
|
+
if (!authResult.success) {
|
|
55
|
+
throw new Error(`SSO authentication failed: ${authResult.error || 'Unknown error'}`);
|
|
56
|
+
}
|
|
57
|
+
console.log(chalk.green('✓ Authentication successful!\n'));
|
|
58
|
+
// Check for LiteLLM integrations
|
|
59
|
+
const modelProxy = new SSOModelProxy(authResult.apiUrl);
|
|
60
|
+
let integrations;
|
|
61
|
+
let integrationsFetchError;
|
|
62
|
+
try {
|
|
63
|
+
integrations = await modelProxy.fetchIntegrations(codeMieUrl);
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
// Log error but don't fail setup - integrations are optional
|
|
67
|
+
integrationsFetchError = error instanceof Error ? error.message : String(error);
|
|
68
|
+
console.log(chalk.yellow(`⚠️ Could not fetch integrations: ${integrationsFetchError}\n`));
|
|
69
|
+
integrations = [];
|
|
70
|
+
}
|
|
71
|
+
// Always prompt for integration selection
|
|
72
|
+
let integrationInfo;
|
|
73
|
+
if (integrations.length > 0) {
|
|
74
|
+
console.log(chalk.cyan(`📦 Found ${integrations.length} LiteLLM integration(s)\n`));
|
|
75
|
+
const integrationAnswers = await inquirer.prompt([
|
|
76
|
+
{
|
|
77
|
+
type: 'list',
|
|
78
|
+
name: 'integration',
|
|
79
|
+
message: 'Select LiteLLM integration (optional):',
|
|
80
|
+
choices: [
|
|
81
|
+
{ name: 'None (use CodeMie models directly)', value: null },
|
|
82
|
+
...integrations.map(i => ({
|
|
83
|
+
name: `${i.alias} (${i.project_name || 'Default'})`,
|
|
84
|
+
value: { id: i.id, alias: i.alias }
|
|
85
|
+
}))
|
|
86
|
+
]
|
|
87
|
+
}
|
|
88
|
+
]);
|
|
89
|
+
integrationInfo = integrationAnswers.integration;
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
// Show message if no integrations found
|
|
93
|
+
if (integrationsFetchError) {
|
|
94
|
+
console.log(chalk.dim('ℹ️ Proceeding without LiteLLM integration (fetch failed)\n'));
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
console.log(chalk.dim('ℹ️ No LiteLLM integrations configured\n'));
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return {
|
|
101
|
+
baseUrl: authResult.apiUrl,
|
|
102
|
+
additionalConfig: {
|
|
103
|
+
codeMieUrl,
|
|
104
|
+
codeMieIntegration: integrationInfo,
|
|
105
|
+
apiUrl: authResult.apiUrl
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
},
|
|
109
|
+
/**
|
|
110
|
+
* Step 2: Fetch available models
|
|
111
|
+
*
|
|
112
|
+
* Queries SSO API to discover available models
|
|
113
|
+
*/
|
|
114
|
+
async fetchModels(credentials) {
|
|
115
|
+
const modelProxy = new SSOModelProxy(credentials.baseUrl);
|
|
116
|
+
const models = await modelProxy.fetchModels({
|
|
117
|
+
codeMieUrl: credentials.additionalConfig?.codeMieUrl,
|
|
118
|
+
baseUrl: credentials.baseUrl
|
|
119
|
+
});
|
|
120
|
+
return models.map(m => m.id);
|
|
121
|
+
},
|
|
122
|
+
/**
|
|
123
|
+
* Step 3: Build final configuration
|
|
124
|
+
*
|
|
125
|
+
* Transform credentials + model selection into CodeMieConfigOptions
|
|
126
|
+
*/
|
|
127
|
+
buildConfig(credentials, selectedModel) {
|
|
128
|
+
const config = {
|
|
129
|
+
provider: 'ai-run-sso',
|
|
130
|
+
codeMieUrl: credentials.additionalConfig?.codeMieUrl,
|
|
131
|
+
apiKey: "sso-provided",
|
|
132
|
+
baseUrl: credentials.baseUrl,
|
|
133
|
+
model: selectedModel
|
|
134
|
+
};
|
|
135
|
+
// Only include codeMieIntegration if it has a value
|
|
136
|
+
const integration = credentials.additionalConfig?.codeMieIntegration;
|
|
137
|
+
if (integration) {
|
|
138
|
+
config.codeMieIntegration = integration;
|
|
139
|
+
}
|
|
140
|
+
return config;
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
// Auto-register setup steps
|
|
144
|
+
ProviderRegistry.registerSetupSteps('ai-run-sso', SSOSetupSteps);
|
|
145
|
+
//# sourceMappingURL=sso.setup-steps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sso.setup-steps.js","sourceRoot":"","sources":["../../../../src/providers/plugins/sso/sso.setup-steps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SSO Provider Template
|
|
3
|
+
*
|
|
4
|
+
* Template definition for AI-Run SSO (CodeMie SSO) provider.
|
|
5
|
+
* Enterprise SSO authentication with centralized model management.
|
|
6
|
+
*
|
|
7
|
+
* Auto-registers on import via registerProvider().
|
|
8
|
+
*/
|
|
9
|
+
import type { ProviderTemplate } from '../../core/types.js';
|
|
10
|
+
export declare const SSOTemplate: ProviderTemplate;
|
|
11
|
+
//# sourceMappingURL=sso.template.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sso.template.d.ts","sourceRoot":"","sources":["../../../../src/providers/plugins/sso/sso.template.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,eAAO,MAAM,WAAW,kBAwBtB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SSO Provider Template
|
|
3
|
+
*
|
|
4
|
+
* Template definition for AI-Run SSO (CodeMie SSO) provider.
|
|
5
|
+
* Enterprise SSO authentication with centralized model management.
|
|
6
|
+
*
|
|
7
|
+
* Auto-registers on import via registerProvider().
|
|
8
|
+
*/
|
|
9
|
+
import { registerProvider } from '../../core/decorators.js';
|
|
10
|
+
export const SSOTemplate = registerProvider({
|
|
11
|
+
name: 'ai-run-sso',
|
|
12
|
+
displayName: 'CodeMie SSO',
|
|
13
|
+
description: 'Enterprise SSO Authentication with centralized model management',
|
|
14
|
+
defaultBaseUrl: 'https://codemie.lab.epam.com', // Default CodeMie URL
|
|
15
|
+
requiresAuth: true,
|
|
16
|
+
authType: 'sso',
|
|
17
|
+
priority: 0, // Highest priority (shown first)
|
|
18
|
+
defaultProfileName: 'codemie-sso',
|
|
19
|
+
recommendedModels: [
|
|
20
|
+
'claude-4-5-sonnet',
|
|
21
|
+
],
|
|
22
|
+
capabilities: ['streaming', 'tools', 'sso-auth', 'function-calling', 'embeddings'],
|
|
23
|
+
supportsModelInstallation: false,
|
|
24
|
+
supportsStreaming: true,
|
|
25
|
+
envMapping: {
|
|
26
|
+
baseUrl: ['OPENAI_BASE_URL', 'ANTHROPIC_BASE_URL', 'GOOGLE_GEMINI_BASE_URL'],
|
|
27
|
+
apiKey: ['OPENAI_API_KEY', 'ANTHROPIC_AUTH_TOKEN', 'GEMINI_API_KEY'],
|
|
28
|
+
model: ['OPENAI_MODEL', 'ANTHROPIC_MODEL', 'GEMINI_MODEL']
|
|
29
|
+
},
|
|
30
|
+
customProperties: {
|
|
31
|
+
requiresIntegration: true,
|
|
32
|
+
sessionDuration: 86400000 // 24 hours
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=sso.template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sso.template.js","sourceRoot":"","sources":["../../../../src/providers/plugins/sso/sso.template.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,MAAM,CAAC,MAAM,WAAW,GAAG,gBAAgB,CAAmB;IAC5D,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,iEAAiE;IAC9E,cAAc,EAAE,8BAA8B,EAAE,sBAAsB;IACtE,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,CAAC,EAAE,iCAAiC;IAC9C,kBAAkB,EAAE,aAAa;IACjC,iBAAiB,EAAE;QACjB,mBAAmB;KACpB;IACD,YAAY,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,YAAY,CAAC;IAClF,yBAAyB,EAAE,KAAK;IAChC,iBAAiB,EAAE,IAAI;IACvB,UAAU,EAAE;QACV,OAAO,EAAE,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,wBAAwB,CAAC;QAC5E,MAAM,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,EAAE,gBAAgB,CAAC;QACpE,KAAK,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,cAAc,CAAC;KAC3D;IACD,gBAAgB,EAAE;QAChB,mBAAmB,EAAE,IAAI;QACzB,eAAe,EAAE,QAAQ,CAAC,WAAW;KACtC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/proxy/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;aAGjB,UAAU,EAAE,MAAM;aAClB,IAAI,EAAE,MAAM;aACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAHjD,OAAO,EAAE,MAAM,EACC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;IAOnD,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CASlC;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,UAAU;gBACrC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,UAAU;gBAC9B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,UAAU;gBAC9B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;gBAC/B,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAInF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CA8C5F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/proxy/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK;IAGjB;IACA;IACA;IAJlB,YACE,OAAe,EACC,UAAkB,EAClB,IAAY,EACZ,OAAiC;QAEjD,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,eAAU,GAAV,UAAU,CAAQ;QAClB,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAA0B;QAGjD,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,GAAG,IAAI,CAAC,OAAO;SAChB,CAAC;IACJ,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,UAAU;IACjD,YAAY,OAAe,EAAE,OAAiC;QAC5D,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,UAAU;IAC1C,YAAY,OAAe,EAAE,OAAiC;QAC5D,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,UAAU;IAC1C,YAAY,OAAe,EAAE,OAAiC;QAC5D,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,UAAU;IAC3C,YAAY,UAAkB,EAAE,OAAe,EAAE,OAAiC;QAChF,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc,EAAE,OAAiC;IAC9E,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,iBAAiB;QACjB,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,GAAI,KAAa,CAAC,IAAI,CAAC;YAEjC,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC7E,OAAO,IAAI,YAAY,CAAC,sCAAsC,KAAK,CAAC,OAAO,EAAE,EAAE;oBAC7E,aAAa,EAAE,KAAK,CAAC,OAAO;oBAC5B,SAAS,EAAE,IAAI;oBACf,GAAG,OAAO;iBACX,CAAC,CAAC;YACL,CAAC;YAED,IAAI,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9D,OAAO,IAAI,YAAY,CAAC,oBAAoB,KAAK,CAAC,OAAO,EAAE,EAAE;oBAC3D,aAAa,EAAE,KAAK,CAAC,OAAO;oBAC5B,SAAS,EAAE,IAAI;oBACf,GAAG,OAAO;iBACX,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,gBAAgB;QAChB,OAAO,IAAI,UAAU,CACnB,KAAK,CAAC,OAAO,EACb,GAAG,EACH,gBAAgB,EAChB;YACE,aAAa,EAAE,KAAK,CAAC,OAAO;YAC5B,GAAG,OAAO;SACX,CACF,CAAC;IACJ,CAAC;IAED,qBAAqB;IACrB,OAAO,IAAI,UAAU,CACnB,MAAM,CAAC,KAAK,CAAC,EACb,GAAG,EACH,eAAe,EACf,EAAE,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,EAAE,CAC7C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/proxy/http-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,GAAE,iBAAsB;IAmB3C;;;OAGG;IACG,OAAO,CACX,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC;IAgEhC;;;OAGG;IACG,YAAY,CAChB,QAAQ,EAAE,IAAI,CAAC,eAAe,EAC9B,UAAU,EAAE,IAAI,CAAC,cAAc,EAC/B,WAAW,GAAE,MAAM,EAAwC,GAC1D,OAAO,CAAC,IAAI,CAAC;IAsBhB;;;;OAIG;IACG,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAUvE;;OAEG;IACH,KAAK,IAAI,IAAI;CAId"}
|
|
@@ -8,7 +8,7 @@ import { pipeline } from 'stream/promises';
|
|
|
8
8
|
import https from 'https';
|
|
9
9
|
import http from 'http';
|
|
10
10
|
import { TimeoutError, NetworkError } from './errors.js';
|
|
11
|
-
import { logger } from '../logger.js';
|
|
11
|
+
import { logger } from '../utils/logger.js';
|
|
12
12
|
/**
|
|
13
13
|
* Simple streaming HTTP client for proxy forwarding
|
|
14
14
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/proxy/http-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAa5C;;GAEG;AACH,MAAM,OAAO,eAAe;IAClB,UAAU,CAAc;IACxB,SAAS,CAAa;IACtB,OAAO,CAAS;IAExB,YAAY,UAA6B,EAAE;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,oBAAoB;QAE9D,qCAAqC;QACrC,MAAM,YAAY,GAAG;YACnB,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,IAAI,KAAK;YACvD,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,EAAE;YACd,OAAO,EAAE,KAAK,CAAC,qBAAqB;SACrC,CAAC;QAEF,IAAI,CAAC,UAAU,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC;YAC9B,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,EAAE;YACd,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO,CACX,GAAQ,EACR,OAA8B;QAE9B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1D,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAE3E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,cAAc,GAAwB;gBAC1C,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxD,IAAI,EAAE,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM;gBAC/B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK;gBACL,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC;YAEF,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,EAAE;gBACnD,OAAO,CAAC,GAAG,CAAC,CAAC;YACf,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAU,EAAE,EAAE;gBAC7B,uEAAuE;gBACvE,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,IAAI,KAAK,4BAA4B,EAAE,CAAC;oBAChH,qEAAqE;oBACrE,MAAM,UAAU,GAAG,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;oBACnD,UAAkB,CAAC,SAAS,GAAG,IAAI,CAAC;oBACrC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACnB,OAAO;gBACT,CAAC;gBAED,+BAA+B;gBAC/B,uDAAuD;gBACvD,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,KAAK,cAAc;oBAC9B,KAAK,CAAC,IAAI,KAAK,WAAW;oBAC1B,KAAK,CAAC,IAAI,KAAK,YAAY;oBAC3B,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,gBAAgB,CAAC;oBACzC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;gBAE5D,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,CAAC,IAAI,YAAY,CAAC,+BAA+B,KAAK,CAAC,OAAO,EAAE,EAAE;wBACtE,SAAS,EAAE,KAAK,CAAC,IAAI,IAAI,eAAe;wBACxC,QAAQ,EAAE,GAAG,CAAC,QAAQ;qBACvB,CAAC,CAAC,CAAC;gBACN,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;gBACrB,GAAG,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,YAAY,CAAC,yBAAyB,IAAI,CAAC,OAAO,IAAI,EAAE;oBACjE,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE;iBACpB,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,CAAC;YAEH,yCAAyC;YACzC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;YAED,GAAG,CAAC,GAAG,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAChB,QAA8B,EAC9B,UAA+B,EAC/B,cAAwB,CAAC,mBAAmB,EAAE,YAAY,CAAC;QAE3D,mBAAmB;QACnB,UAAU,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,IAAI,GAAG,CAAC;QAEnD,uCAAuC;QACvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACpE,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QAED,8CAA8C;QAC9C,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yCAAyC;YACzC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;YAC5D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,QAA8B;QACnD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header-injection.plugin.d.ts","sourceRoot":"","sources":["../../../src/proxy/plugins/header-injection.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAK1E,qBAAa,qBAAsB,YAAW,WAAW;IACvD,EAAE,SAA4B;IAC9B,IAAI,SAAsB;IAC1B,OAAO,SAAW;IAClB,QAAQ,SAAM;IAER,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAG3E"}
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
* SOLID: Single responsibility = inject CodeMie headers
|
|
6
6
|
* KISS: Straightforward header injection
|
|
7
7
|
*/
|
|
8
|
-
import {
|
|
8
|
+
import { ProviderRegistry } from '../../providers/core/registry.js';
|
|
9
|
+
import { logger } from '../../utils/logger.js';
|
|
9
10
|
export class HeaderInjectionPlugin {
|
|
10
11
|
id = '@codemie/proxy-headers';
|
|
11
12
|
name = 'Header Injection';
|
|
@@ -26,8 +27,11 @@ class HeaderInjectionInterceptor {
|
|
|
26
27
|
context.headers['X-CodeMie-Request-ID'] = context.requestId;
|
|
27
28
|
context.headers['X-CodeMie-Session-ID'] = context.sessionId;
|
|
28
29
|
const config = this.context.config;
|
|
29
|
-
//
|
|
30
|
-
|
|
30
|
+
// Check if provider requires integration header
|
|
31
|
+
const provider = ProviderRegistry.getProvider(config.provider || '');
|
|
32
|
+
const requiresIntegration = provider?.customProperties?.requiresIntegration === true;
|
|
33
|
+
// Add integration header for providers that require it
|
|
34
|
+
if (requiresIntegration && config.integrationId) {
|
|
31
35
|
context.headers['X-CodeMie-Integration'] = config.integrationId;
|
|
32
36
|
}
|
|
33
37
|
// Add model header if configured (for all providers)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header-injection.plugin.js","sourceRoot":"","sources":["../../../src/proxy/plugins/header-injection.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,MAAM,OAAO,qBAAqB;IAChC,EAAE,GAAG,wBAAwB,CAAC;IAC9B,IAAI,GAAG,kBAAkB,CAAC;IAC1B,OAAO,GAAG,OAAO,CAAC;IAClB,QAAQ,GAAG,EAAE,CAAC;IAEd,KAAK,CAAC,iBAAiB,CAAC,OAAsB;QAC5C,OAAO,IAAI,0BAA0B,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;CACF;AAED,MAAM,0BAA0B;IAGV;IAFpB,IAAI,GAAG,kBAAkB,CAAC;IAE1B,YAAoB,OAAsB;QAAtB,YAAO,GAAP,OAAO,CAAe;IAAG,CAAC;IAE9C,KAAK,CAAC,SAAS,CAAC,OAAqB;QACnC,iCAAiC;QACjC,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;QAC5D,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;QAE5D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAEnC,gDAAgD;QAChD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QACrE,MAAM,mBAAmB,GAAG,QAAQ,EAAE,gBAAgB,EAAE,mBAAmB,KAAK,IAAI,CAAC;QAErF,uDAAuD;QACvD,IAAI,mBAAmB,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;YAChD,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;QAClE,CAAC;QAED,qDAAqD;QACrD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QACxD,CAAC;QAED,uDAAuD;QACvD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpE,CAAC;QAED,yBAAyB;QACzB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC;QAC1D,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,4BAA4B,CAAC,CAAC;IAC1D,CAAC;CACF"}
|
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { SSOAuthPlugin } from './sso-auth.plugin.js';
|
|
8
8
|
import { HeaderInjectionPlugin } from './header-injection.plugin.js';
|
|
9
|
-
import {
|
|
9
|
+
import { LoggingPlugin } from './logging.plugin.js';
|
|
10
10
|
/**
|
|
11
11
|
* Register core plugins
|
|
12
12
|
* Called at app startup
|
|
13
13
|
*/
|
|
14
14
|
export declare function registerCorePlugins(): void;
|
|
15
|
-
export { SSOAuthPlugin, HeaderInjectionPlugin,
|
|
15
|
+
export { SSOAuthPlugin, HeaderInjectionPlugin, LoggingPlugin };
|
|
16
16
|
export { getPluginRegistry, resetPluginRegistry } from './registry.js';
|
|
17
17
|
export * from './types.js';
|
|
18
18
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/proxy/plugins/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAO1C;AAMD,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,aAAa,EAAE,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACvE,cAAc,YAAY,CAAC"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
import { getPluginRegistry } from './registry.js';
|
|
8
8
|
import { SSOAuthPlugin } from './sso-auth.plugin.js';
|
|
9
9
|
import { HeaderInjectionPlugin } from './header-injection.plugin.js';
|
|
10
|
-
import {
|
|
10
|
+
import { LoggingPlugin } from './logging.plugin.js';
|
|
11
11
|
/**
|
|
12
12
|
* Register core plugins
|
|
13
13
|
* Called at app startup
|
|
@@ -17,14 +17,12 @@ export function registerCorePlugins() {
|
|
|
17
17
|
// Register in any order (priority determines execution order)
|
|
18
18
|
registry.register(new SSOAuthPlugin());
|
|
19
19
|
registry.register(new HeaderInjectionPlugin());
|
|
20
|
-
registry.register(new
|
|
21
|
-
enabled: false // Disabled by default (enabled in proxy start() if analytics is enabled)
|
|
22
|
-
});
|
|
20
|
+
registry.register(new LoggingPlugin()); // Always enabled - logs to log files at INFO level
|
|
23
21
|
}
|
|
24
22
|
// Auto-register on import
|
|
25
23
|
registerCorePlugins();
|
|
26
24
|
// Re-export for convenience
|
|
27
|
-
export { SSOAuthPlugin, HeaderInjectionPlugin,
|
|
25
|
+
export { SSOAuthPlugin, HeaderInjectionPlugin, LoggingPlugin };
|
|
28
26
|
export { getPluginRegistry, resetPluginRegistry } from './registry.js';
|
|
29
27
|
export * from './types.js';
|
|
30
28
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/proxy/plugins/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;IAErC,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,mDAAmD;AAC7F,CAAC;AAED,0BAA0B;AAC1B,mBAAmB,EAAE,CAAC;AAEtB,4BAA4B;AAC5B,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,aAAa,EAAE,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACvE,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logging Plugin - Request/Response Logging to Log Files
|
|
3
|
+
* Priority: 50 (runs before analytics)
|
|
4
|
+
*
|
|
5
|
+
* Purpose: Logs detailed proxy request/response information to log files
|
|
6
|
+
* Separates operational logging from analytics metrics
|
|
7
|
+
*
|
|
8
|
+
* Log Level: INFO (file-only, no console output)
|
|
9
|
+
* Log Location: ~/.codemie/logs/debug-YYYY-MM-DD.log
|
|
10
|
+
*
|
|
11
|
+
* SOLID: Single responsibility = log proxy activity
|
|
12
|
+
* KISS: Simple logging, reuses Logger system
|
|
13
|
+
*/
|
|
14
|
+
import { ProxyPlugin, PluginContext, ProxyInterceptor } from './types.js';
|
|
15
|
+
export declare class LoggingPlugin implements ProxyPlugin {
|
|
16
|
+
id: string;
|
|
17
|
+
name: string;
|
|
18
|
+
version: string;
|
|
19
|
+
priority: number;
|
|
20
|
+
createInterceptor(_context: PluginContext): Promise<ProxyInterceptor>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=logging.plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logging.plugin.d.ts","sourceRoot":"","sources":["../../../src/proxy/plugins/logging.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAoB,MAAM,YAAY,CAAC;AAI5F,qBAAa,aAAc,YAAW,WAAW;IAC/C,EAAE,SAA4B;IAC9B,IAAI,SAAa;IACjB,OAAO,SAAW;IAClB,QAAQ,SAAM;IAER,iBAAiB,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAG5E"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logging Plugin - Request/Response Logging to Log Files
|
|
3
|
+
* Priority: 50 (runs before analytics)
|
|
4
|
+
*
|
|
5
|
+
* Purpose: Logs detailed proxy request/response information to log files
|
|
6
|
+
* Separates operational logging from analytics metrics
|
|
7
|
+
*
|
|
8
|
+
* Log Level: INFO (file-only, no console output)
|
|
9
|
+
* Log Location: ~/.codemie/logs/debug-YYYY-MM-DD.log
|
|
10
|
+
*
|
|
11
|
+
* SOLID: Single responsibility = log proxy activity
|
|
12
|
+
* KISS: Simple logging, reuses Logger system
|
|
13
|
+
*/
|
|
14
|
+
import { logger } from '../../utils/logger.js';
|
|
15
|
+
export class LoggingPlugin {
|
|
16
|
+
id = '@codemie/proxy-logging';
|
|
17
|
+
name = 'Logging';
|
|
18
|
+
version = '1.0.0';
|
|
19
|
+
priority = 50; // Run before analytics
|
|
20
|
+
async createInterceptor(_context) {
|
|
21
|
+
return new LoggingInterceptor();
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
class LoggingInterceptor {
|
|
25
|
+
name = 'logging';
|
|
26
|
+
async onRequest(context) {
|
|
27
|
+
try {
|
|
28
|
+
logger.info(`[proxy-request] ${context.method} ${context.url}`, {
|
|
29
|
+
requestId: context.requestId,
|
|
30
|
+
sessionId: context.sessionId,
|
|
31
|
+
agent: context.agentName,
|
|
32
|
+
targetUrl: context.targetUrl,
|
|
33
|
+
bodySize: context.requestBody?.length || 0,
|
|
34
|
+
headers: this.sanitizeHeaders(context.headers)
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
// Don't break proxy flow on logging errors
|
|
39
|
+
logger.error(`[${this.name}] Error logging request:`, error);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
async onResponseComplete(context, metadata) {
|
|
43
|
+
try {
|
|
44
|
+
logger.info(`[proxy-response] ${metadata.statusCode} ${context.url} (${metadata.durationMs}ms)`, {
|
|
45
|
+
requestId: context.requestId,
|
|
46
|
+
statusCode: metadata.statusCode,
|
|
47
|
+
statusMessage: metadata.statusMessage,
|
|
48
|
+
bytesSent: metadata.bytesSent,
|
|
49
|
+
durationMs: metadata.durationMs
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
// Don't break proxy flow on logging errors
|
|
54
|
+
logger.error(`[${this.name}] Error logging response:`, error);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
async onError(context, error) {
|
|
58
|
+
try {
|
|
59
|
+
logger.info(`[proxy-error] ${error.name}: ${error.message}`, {
|
|
60
|
+
requestId: context.requestId,
|
|
61
|
+
url: context.url,
|
|
62
|
+
errorType: error.name,
|
|
63
|
+
errorStack: error.stack
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
catch (logError) {
|
|
67
|
+
// Don't break proxy flow on logging errors
|
|
68
|
+
logger.error(`[${this.name}] Error logging error:`, logError);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Sanitize headers to remove sensitive data
|
|
73
|
+
*/
|
|
74
|
+
sanitizeHeaders(headers) {
|
|
75
|
+
const sanitized = {};
|
|
76
|
+
for (const [key, value] of Object.entries(headers)) {
|
|
77
|
+
const lowerKey = key.toLowerCase();
|
|
78
|
+
// Mask sensitive headers
|
|
79
|
+
if (lowerKey.includes('authorization') ||
|
|
80
|
+
lowerKey.includes('api-key') ||
|
|
81
|
+
lowerKey.includes('token') ||
|
|
82
|
+
lowerKey.includes('cookie')) {
|
|
83
|
+
sanitized[key] = '[REDACTED]';
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
sanitized[key] = value;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return sanitized;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=logging.plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logging.plugin.js","sourceRoot":"","sources":["../../../src/proxy/plugins/logging.plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/proxy/plugins/registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGxF;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,YAAY,CAAuC;IAE3D;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;IAanE;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAoBrE;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAiB/B;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBnE;;OAEG;IACH,MAAM,IAAI,WAAW,EAAE;IAIvB;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIrD;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;IAOpE;;OAEG;IACH,KAAK,IAAI,IAAI;CAKd;AAKD,wBAAgB,iBAAiB,IAAI,cAAc,CAKlD;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C"}
|