@codemieai/code 0.0.7 → 0.0.9
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 +291 -47
- package/bin/agent-executor.js +6 -4
- package/dist/agents/codemie-code/agent.d.ts.map +1 -1
- package/dist/agents/codemie-code/agent.js +29 -28
- 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 +4 -3
- package/dist/agents/codemie-code/config.js.map +1 -1
- package/dist/agents/codemie-code/index.d.ts.map +1 -1
- package/dist/agents/codemie-code/index.js +10 -9
- package/dist/agents/codemie-code/index.js.map +1 -1
- package/dist/agents/codemie-code/tools/index.d.ts.map +1 -1
- package/dist/agents/codemie-code/tools/index.js +6 -5
- package/dist/agents/codemie-code/tools/index.js.map +1 -1
- package/dist/agents/codemie-code/ui/todoPanel.js +9 -9
- package/dist/agents/codemie-code/ui/todoPanel.js.map +1 -1
- package/dist/agents/codemie-code/ui.d.ts.map +1 -1
- package/dist/agents/codemie-code/ui.js +34 -33
- package/dist/agents/codemie-code/ui.js.map +1 -1
- package/dist/agents/core/AgentCLI.d.ts.map +1 -1
- package/dist/agents/core/AgentCLI.js +34 -17
- package/dist/agents/core/AgentCLI.js.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.js +5 -11
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
- package/dist/agents/plugins/claude.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/claude.plugin.js +9 -0
- package/dist/agents/plugins/claude.plugin.js.map +1 -1
- package/dist/agents/plugins/codemie-code.plugin.d.ts +4 -0
- package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/codemie-code.plugin.js +9 -2
- package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
- package/dist/agents/plugins/deepagents.plugin.d.ts +21 -0
- package/dist/agents/plugins/deepagents.plugin.d.ts.map +1 -0
- package/dist/agents/plugins/deepagents.plugin.js +101 -0
- package/dist/agents/plugins/deepagents.plugin.js.map +1 -0
- package/dist/agents/registry.d.ts +1 -0
- package/dist/agents/registry.d.ts.map +1 -1
- package/dist/agents/registry.js +5 -2
- package/dist/agents/registry.js.map +1 -1
- package/dist/cli/commands/auth.js +5 -5
- package/dist/cli/commands/auth.js.map +1 -1
- package/dist/cli/commands/config.js +21 -21
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/doctor/checks/AIConfigCheck.d.ts +13 -0
- package/dist/cli/commands/doctor/checks/AIConfigCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/checks/AIConfigCheck.js +135 -0
- package/dist/cli/commands/doctor/checks/AIConfigCheck.js.map +1 -0
- package/dist/cli/commands/doctor/checks/AgentsCheck.d.ts +10 -0
- package/dist/cli/commands/doctor/checks/AgentsCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/checks/AgentsCheck.js +57 -0
- package/dist/cli/commands/doctor/checks/AgentsCheck.js.map +1 -0
- package/dist/cli/commands/doctor/checks/NodeVersionCheck.d.ts +9 -0
- package/dist/cli/commands/doctor/checks/NodeVersionCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/checks/NodeVersionCheck.js +38 -0
- package/dist/cli/commands/doctor/checks/NodeVersionCheck.js.map +1 -0
- package/dist/cli/commands/doctor/checks/NpmCheck.d.ts +9 -0
- package/dist/cli/commands/doctor/checks/NpmCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/checks/NpmCheck.js +28 -0
- package/dist/cli/commands/doctor/checks/NpmCheck.js.map +1 -0
- package/dist/cli/commands/doctor/checks/WorkflowsCheck.d.ts +9 -0
- package/dist/cli/commands/doctor/checks/WorkflowsCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/checks/WorkflowsCheck.js +72 -0
- package/dist/cli/commands/doctor/checks/WorkflowsCheck.js.map +1 -0
- package/dist/cli/commands/doctor/checks/index.d.ts +9 -0
- package/dist/cli/commands/doctor/checks/index.d.ts.map +1 -0
- package/dist/cli/commands/doctor/checks/index.js +9 -0
- package/dist/cli/commands/doctor/checks/index.js.map +1 -0
- package/dist/cli/commands/doctor/formatter.d.ts +53 -0
- package/dist/cli/commands/doctor/formatter.d.ts.map +1 -0
- package/dist/cli/commands/doctor/formatter.js +153 -0
- package/dist/cli/commands/doctor/formatter.js.map +1 -0
- package/dist/cli/commands/{doctor.d.ts → doctor/index.d.ts} +4 -1
- package/dist/cli/commands/doctor/index.d.ts.map +1 -0
- package/dist/cli/commands/doctor/index.js +67 -0
- package/dist/cli/commands/doctor/index.js.map +1 -0
- package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.d.ts +11 -0
- package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.js +192 -0
- package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.js.map +1 -0
- package/dist/cli/commands/doctor/providers/BaseProviderCheck.d.ts +12 -0
- package/dist/cli/commands/doctor/providers/BaseProviderCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/providers/BaseProviderCheck.js +12 -0
- package/dist/cli/commands/doctor/providers/BaseProviderCheck.js.map +1 -0
- package/dist/cli/commands/doctor/providers/StandardProviderCheck.d.ts +11 -0
- package/dist/cli/commands/doctor/providers/StandardProviderCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/providers/StandardProviderCheck.js +97 -0
- package/dist/cli/commands/doctor/providers/StandardProviderCheck.js.map +1 -0
- package/dist/cli/commands/doctor/providers/index.d.ts +30 -0
- package/dist/cli/commands/doctor/providers/index.d.ts.map +1 -0
- package/dist/cli/commands/doctor/providers/index.js +66 -0
- package/dist/cli/commands/doctor/providers/index.js.map +1 -0
- package/dist/cli/commands/doctor/types.d.ts +59 -0
- package/dist/cli/commands/doctor/types.d.ts.map +1 -0
- package/dist/cli/commands/doctor/types.js +5 -0
- package/dist/cli/commands/doctor/types.js.map +1 -0
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +24 -8
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/list.js +3 -3
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/profile.js +6 -6
- package/dist/cli/commands/profile.js.map +1 -1
- package/dist/cli/commands/setup.js +51 -38
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/commands/uninstall.d.ts.map +1 -1
- package/dist/cli/commands/uninstall.js +19 -4
- package/dist/cli/commands/uninstall.js.map +1 -1
- package/dist/cli/commands/workflow.d.ts.map +1 -1
- package/dist/cli/commands/workflow.js +30 -59
- package/dist/cli/commands/workflow.js.map +1 -1
- package/dist/cli/index.js +1 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/env/types.d.ts.map +1 -1
- package/dist/env/types.js +2 -2
- package/dist/env/types.js.map +1 -1
- package/dist/utils/async-tips.js +6 -6
- package/dist/utils/async-tips.js.map +1 -1
- package/dist/utils/codemie-integration-validator.d.ts +3 -2
- package/dist/utils/codemie-integration-validator.d.ts.map +1 -1
- package/dist/utils/codemie-integration-validator.js +38 -11
- package/dist/utils/codemie-integration-validator.js.map +1 -1
- package/dist/utils/config-loader.d.ts.map +1 -1
- package/dist/utils/config-loader.js +17 -6
- package/dist/utils/config-loader.js.map +1 -1
- package/dist/utils/credential-store.d.ts.map +1 -1
- package/dist/utils/credential-store.js +55 -24
- package/dist/utils/credential-store.js.map +1 -1
- package/dist/utils/first-time.d.ts +8 -0
- package/dist/utils/first-time.d.ts.map +1 -1
- package/dist/utils/first-time.js +133 -86
- package/dist/utils/first-time.js.map +1 -1
- package/dist/utils/logger.d.ts +19 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +93 -8
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/sso-auth.d.ts.map +1 -1
- package/dist/utils/sso-auth.js +24 -10
- package/dist/utils/sso-auth.js.map +1 -1
- package/dist/utils/sso-gateway.d.ts +28 -0
- package/dist/utils/sso-gateway.d.ts.map +1 -1
- package/dist/utils/sso-gateway.js +201 -46
- package/dist/utils/sso-gateway.js.map +1 -1
- package/dist/utils/tips.js +3 -3
- package/dist/utils/tips.js.map +1 -1
- package/dist/workflows/installer.d.ts.map +1 -1
- package/dist/workflows/installer.js +3 -8
- package/dist/workflows/installer.js.map +1 -1
- package/package.json +9 -3
- package/dist/cli/commands/doctor.d.ts.map +0 -1
- package/dist/cli/commands/doctor.js +0 -365
- package/dist/cli/commands/doctor.js.map +0 -1
- package/dist/cli/commands/tools.d.ts +0 -6
- package/dist/cli/commands/tools.d.ts.map +0 -1
- package/dist/cli/commands/tools.js +0 -244
- package/dist/cli/commands/tools.js.map +0 -1
- package/dist/clients/adapters/github.d.ts +0 -17
- package/dist/clients/adapters/github.d.ts.map +0 -1
- package/dist/clients/adapters/github.js +0 -150
- package/dist/clients/adapters/github.js.map +0 -1
- package/dist/clients/adapters/gitlab.d.ts +0 -17
- package/dist/clients/adapters/gitlab.d.ts.map +0 -1
- package/dist/clients/adapters/gitlab.js +0 -147
- package/dist/clients/adapters/gitlab.js.map +0 -1
- package/dist/clients/registry.d.ts +0 -20
- package/dist/clients/registry.d.ts.map +0 -1
- package/dist/clients/registry.js +0 -27
- package/dist/clients/registry.js.map +0 -1
- package/dist/tools/detector.d.ts +0 -33
- package/dist/tools/detector.d.ts.map +0 -1
- package/dist/tools/detector.js +0 -145
- package/dist/tools/detector.js.map +0 -1
- package/dist/tools/index.d.ts +0 -8
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/index.js +0 -8
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/manager.d.ts +0 -21
- package/dist/tools/manager.d.ts.map +0 -1
- package/dist/tools/manager.js +0 -104
- package/dist/tools/manager.js.map +0 -1
- package/dist/tools/registry.d.ts +0 -8
- package/dist/tools/registry.d.ts.map +0 -1
- package/dist/tools/registry.js +0 -36
- package/dist/tools/registry.js.map +0 -1
- package/dist/tools/types.d.ts +0 -41
- package/dist/tools/types.d.ts.map +0 -1
- package/dist/tools/types.js +0 -5
- package/dist/tools/types.js.map +0 -1
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Standard provider health check (OpenAI, Azure, LiteLLM, Gemini, etc.)
|
|
3
|
+
*/
|
|
4
|
+
import ora from 'ora';
|
|
5
|
+
import { checkProviderHealth } from '../../../../utils/health-checker.js';
|
|
6
|
+
import { fetchAvailableModels } from '../../../../utils/model-fetcher.js';
|
|
7
|
+
import { BaseProviderCheck } from './BaseProviderCheck.js';
|
|
8
|
+
export class StandardProviderCheck extends BaseProviderCheck {
|
|
9
|
+
supportedProviders = ['openai', 'azure', 'litellm', 'gemini', 'codex'];
|
|
10
|
+
async check(config) {
|
|
11
|
+
const details = [];
|
|
12
|
+
let success = true;
|
|
13
|
+
// Test connectivity
|
|
14
|
+
if (config.baseUrl && config.apiKey && config.model) {
|
|
15
|
+
const healthSpinner = ora('Validating credentials and endpoint...').start();
|
|
16
|
+
try {
|
|
17
|
+
const startTime = Date.now();
|
|
18
|
+
const result = await checkProviderHealth(config.baseUrl, config.apiKey);
|
|
19
|
+
const duration = Date.now() - startTime;
|
|
20
|
+
if (!result.success) {
|
|
21
|
+
throw new Error(result.message);
|
|
22
|
+
}
|
|
23
|
+
healthSpinner.succeed('Credentials validated');
|
|
24
|
+
details.push({
|
|
25
|
+
status: 'ok',
|
|
26
|
+
message: `Response time: ${duration}ms`
|
|
27
|
+
});
|
|
28
|
+
details.push({
|
|
29
|
+
status: 'info',
|
|
30
|
+
message: `Status: ${result.message}`
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
35
|
+
healthSpinner.fail('Connection test failed');
|
|
36
|
+
details.push({
|
|
37
|
+
status: 'error',
|
|
38
|
+
message: `Connection error: ${errorMessage}`
|
|
39
|
+
});
|
|
40
|
+
success = false;
|
|
41
|
+
}
|
|
42
|
+
// Fetch and verify models (skip for Bedrock)
|
|
43
|
+
if (config.provider !== 'bedrock') {
|
|
44
|
+
const modelsSpinner = ora('Fetching available models...').start();
|
|
45
|
+
try {
|
|
46
|
+
const availableModels = await fetchAvailableModels({
|
|
47
|
+
provider: config.provider,
|
|
48
|
+
baseUrl: config.baseUrl,
|
|
49
|
+
apiKey: config.apiKey,
|
|
50
|
+
model: config.model,
|
|
51
|
+
timeout: config.timeout || 300
|
|
52
|
+
});
|
|
53
|
+
if (availableModels.length > 0) {
|
|
54
|
+
modelsSpinner.succeed(`Found ${availableModels.length} available models`);
|
|
55
|
+
// Check if configured model exists
|
|
56
|
+
const configuredModel = config.model;
|
|
57
|
+
const modelExists = availableModels.includes(configuredModel);
|
|
58
|
+
if (modelExists) {
|
|
59
|
+
details.push({
|
|
60
|
+
status: 'ok',
|
|
61
|
+
message: `Configured model '${configuredModel}' is available`
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
details.push({
|
|
66
|
+
status: 'warn',
|
|
67
|
+
message: `Configured model '${configuredModel}' not found in available models`
|
|
68
|
+
});
|
|
69
|
+
details.push({
|
|
70
|
+
status: 'info',
|
|
71
|
+
message: `Available models: ${availableModels.slice(0, 5).join(', ')}${availableModels.length > 5 ? '...' : ''}`
|
|
72
|
+
});
|
|
73
|
+
success = false;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
modelsSpinner.warn('Could not fetch models from provider');
|
|
78
|
+
details.push({
|
|
79
|
+
status: 'info',
|
|
80
|
+
message: `Using configured model: ${config.model}`
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
86
|
+
modelsSpinner.warn('Model verification skipped');
|
|
87
|
+
details.push({
|
|
88
|
+
status: 'info',
|
|
89
|
+
message: `Model verification error: ${errorMessage}`
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return this.createResult('Connectivity Test', success, details);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=StandardProviderCheck.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StandardProviderCheck.js","sourceRoot":"","sources":["../../../../../src/cli/commands/doctor/providers/StandardProviderCheck.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provider health checks registry
|
|
3
|
+
*/
|
|
4
|
+
import { CodeMieConfigOptions } from '../../../../utils/config-loader.js';
|
|
5
|
+
import { ProviderHealthCheck, HealthCheckResult } from '../types.js';
|
|
6
|
+
export { BaseProviderCheck } from './BaseProviderCheck.js';
|
|
7
|
+
export { AIRunSSOProviderCheck } from './AIRunSSOProviderCheck.js';
|
|
8
|
+
export { StandardProviderCheck } from './StandardProviderCheck.js';
|
|
9
|
+
/**
|
|
10
|
+
* Registry of all provider-specific health checks
|
|
11
|
+
*/
|
|
12
|
+
declare class ProviderCheckRegistry {
|
|
13
|
+
private checks;
|
|
14
|
+
/**
|
|
15
|
+
* Get applicable checks for a given provider
|
|
16
|
+
*/
|
|
17
|
+
getChecksForProvider(provider: string): ProviderHealthCheck[];
|
|
18
|
+
/**
|
|
19
|
+
* Run all applicable provider checks
|
|
20
|
+
* @param config Configuration to check
|
|
21
|
+
* @param onProgress Optional callback called before each check starts
|
|
22
|
+
*/
|
|
23
|
+
runChecks(config: CodeMieConfigOptions, onProgress?: (checkName: string) => void): Promise<HealthCheckResult[]>;
|
|
24
|
+
/**
|
|
25
|
+
* Register a custom provider check
|
|
26
|
+
*/
|
|
27
|
+
register(check: ProviderHealthCheck): void;
|
|
28
|
+
}
|
|
29
|
+
export declare const providerCheckRegistry: ProviderCheckRegistry;
|
|
30
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/doctor/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAIrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE;;GAEG;AACH,cAAM,qBAAqB;IACzB,OAAO,CAAC,MAAM,CAGZ;IAEF;;OAEG;IACH,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,EAAE;IAI7D;;;;OAIG;IACG,SAAS,CACb,MAAM,EAAE,oBAAoB,EAC5B,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GACvC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAiC/B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,mBAAmB,GAAG,IAAI;CAG3C;AAGD,eAAO,MAAM,qBAAqB,uBAA8B,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provider health checks registry
|
|
3
|
+
*/
|
|
4
|
+
import { AIRunSSOProviderCheck } from './AIRunSSOProviderCheck.js';
|
|
5
|
+
import { StandardProviderCheck } from './StandardProviderCheck.js';
|
|
6
|
+
export { BaseProviderCheck } from './BaseProviderCheck.js';
|
|
7
|
+
export { AIRunSSOProviderCheck } from './AIRunSSOProviderCheck.js';
|
|
8
|
+
export { StandardProviderCheck } from './StandardProviderCheck.js';
|
|
9
|
+
/**
|
|
10
|
+
* Registry of all provider-specific health checks
|
|
11
|
+
*/
|
|
12
|
+
class ProviderCheckRegistry {
|
|
13
|
+
checks = [
|
|
14
|
+
new AIRunSSOProviderCheck(),
|
|
15
|
+
new StandardProviderCheck()
|
|
16
|
+
];
|
|
17
|
+
/**
|
|
18
|
+
* Get applicable checks for a given provider
|
|
19
|
+
*/
|
|
20
|
+
getChecksForProvider(provider) {
|
|
21
|
+
return this.checks.filter(check => check.supports(provider));
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Run all applicable provider checks
|
|
25
|
+
* @param config Configuration to check
|
|
26
|
+
* @param onProgress Optional callback called before each check starts
|
|
27
|
+
*/
|
|
28
|
+
async runChecks(config, onProgress) {
|
|
29
|
+
if (!config.provider) {
|
|
30
|
+
return [];
|
|
31
|
+
}
|
|
32
|
+
const applicableChecks = this.getChecksForProvider(config.provider);
|
|
33
|
+
const results = [];
|
|
34
|
+
for (const check of applicableChecks) {
|
|
35
|
+
try {
|
|
36
|
+
// Notify progress if callback provided
|
|
37
|
+
if (onProgress) {
|
|
38
|
+
onProgress('Provider');
|
|
39
|
+
}
|
|
40
|
+
const result = await check.check(config);
|
|
41
|
+
results.push(result);
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
// If a check throws an error, capture it
|
|
45
|
+
results.push({
|
|
46
|
+
name: 'Provider Check Error',
|
|
47
|
+
success: false,
|
|
48
|
+
details: [{
|
|
49
|
+
status: 'error',
|
|
50
|
+
message: `Check failed: ${error instanceof Error ? error.message : String(error)}`
|
|
51
|
+
}]
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return results;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Register a custom provider check
|
|
59
|
+
*/
|
|
60
|
+
register(check) {
|
|
61
|
+
this.checks.push(check);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// Export singleton instance
|
|
65
|
+
export const providerCheckRegistry = new ProviderCheckRegistry();
|
|
66
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/commands/doctor/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE;;GAEG;AACH,MAAM,qBAAqB;IACjB,MAAM,GAA0B;QACtC,IAAI,qBAAqB,EAAE;QAC3B,IAAI,qBAAqB,EAAE;KAC5B,CAAC;IAEF;;OAEG;IACH,oBAAoB,CAAC,QAAgB;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CACb,MAA4B,EAC5B,UAAwC;QAExC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpE,MAAM,OAAO,GAAwB,EAAE,CAAC;QAExC,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,uCAAuC;gBACvC,IAAI,UAAU,EAAE,CAAC;oBACf,UAAU,CAAC,UAAU,CAAC,CAAC;gBACzB,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACzC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,yCAAyC;gBACzC,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,CAAC;4BACR,MAAM,EAAE,OAAO;4BACf,OAAO,EAAE,iBAAiB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;yBACnF,CAAC;iBACH,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAA0B;QACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;CACF;AAED,4BAA4B;AAC5B,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,EAAE,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Health check types and interfaces
|
|
3
|
+
*/
|
|
4
|
+
import { CodeMieConfigOptions } from '../../../utils/config-loader.js';
|
|
5
|
+
/**
|
|
6
|
+
* Status of a health check item
|
|
7
|
+
*/
|
|
8
|
+
export type HealthStatus = 'ok' | 'warn' | 'error' | 'info';
|
|
9
|
+
/**
|
|
10
|
+
* Individual health check detail
|
|
11
|
+
*/
|
|
12
|
+
export interface HealthCheckDetail {
|
|
13
|
+
status: HealthStatus;
|
|
14
|
+
message: string;
|
|
15
|
+
hint?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Result of a health check
|
|
19
|
+
*/
|
|
20
|
+
export interface HealthCheckResult {
|
|
21
|
+
name: string;
|
|
22
|
+
success: boolean;
|
|
23
|
+
details: HealthCheckDetail[];
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Progress callback for individual items
|
|
27
|
+
*/
|
|
28
|
+
export type ProgressCallback = (message: string) => void;
|
|
29
|
+
/**
|
|
30
|
+
* Item display callback for showing items one by one
|
|
31
|
+
*/
|
|
32
|
+
export type ItemDisplayCallback = (itemName: string, result: HealthCheckDetail) => void;
|
|
33
|
+
/**
|
|
34
|
+
* Base interface for all health checks
|
|
35
|
+
*/
|
|
36
|
+
export interface HealthCheck {
|
|
37
|
+
name: string;
|
|
38
|
+
run(onProgress?: ProgressCallback): Promise<HealthCheckResult>;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Health check that supports item-by-item display
|
|
42
|
+
*/
|
|
43
|
+
export interface ItemWiseHealthCheck extends HealthCheck {
|
|
44
|
+
runWithItemDisplay(onStartItem: (itemName: string) => void, onDisplayItem: (detail: HealthCheckDetail) => void): Promise<HealthCheckResult>;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Provider-specific health check
|
|
48
|
+
*/
|
|
49
|
+
export interface ProviderHealthCheck {
|
|
50
|
+
/**
|
|
51
|
+
* Check if this provider check supports the given provider
|
|
52
|
+
*/
|
|
53
|
+
supports(provider: string): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Run provider-specific health checks
|
|
56
|
+
*/
|
|
57
|
+
check(config: CodeMieConfigOptions): Promise<HealthCheckResult>;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/doctor/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAExF;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,UAAU,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAChE;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,kBAAkB,CAChB,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EACvC,aAAa,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,GACjD,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAEpC;;OAEG;IACH,KAAK,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACjE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/cli/commands/doctor/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,oBAAoB,IAAI,OAAO,CA+F9C"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
2
|
import { AgentRegistry } from '../../agents/registry.js';
|
|
3
|
-
import { logger } from '../../utils/logger.js';
|
|
4
3
|
import { asyncTipDisplay } from '../../utils/async-tips.js';
|
|
5
|
-
import { AgentInstallationError } from '../../utils/errors.js';
|
|
4
|
+
import { AgentInstallationError, getErrorMessage } from '../../utils/errors.js';
|
|
6
5
|
import ora from 'ora';
|
|
7
6
|
import chalk from 'chalk';
|
|
8
7
|
export function createInstallCommand() {
|
|
@@ -21,11 +20,11 @@ export function createInstallCommand() {
|
|
|
21
20
|
const installed = await agent.isInstalled();
|
|
22
21
|
const status = installed ? chalk.green('✓ installed') : chalk.yellow('○ not installed');
|
|
23
22
|
const version = installed ? await agent.getVersion() : null;
|
|
24
|
-
const versionStr = version ? chalk.
|
|
23
|
+
const versionStr = version ? chalk.white(` (${version})`) : '';
|
|
25
24
|
console.log(chalk.bold(` ${agent.displayName}`) + versionStr);
|
|
26
25
|
console.log(` Command: ${chalk.cyan(`codemie install ${agent.name}`)}`);
|
|
27
26
|
console.log(` Status: ${status}`);
|
|
28
|
-
console.log(` ${chalk.
|
|
27
|
+
console.log(` ${chalk.white(agent.description)}`);
|
|
29
28
|
console.log();
|
|
30
29
|
}
|
|
31
30
|
console.log(chalk.cyan('💡 Tip:') + ' Run ' + chalk.blueBright('codemie install <agent>') + ' to install an agent');
|
|
@@ -38,7 +37,7 @@ export function createInstallCommand() {
|
|
|
38
37
|
}
|
|
39
38
|
// Check if already installed
|
|
40
39
|
if (await agent.isInstalled()) {
|
|
41
|
-
|
|
40
|
+
console.log(chalk.blueBright(`${agent.displayName} is already installed`));
|
|
42
41
|
return;
|
|
43
42
|
}
|
|
44
43
|
const spinner = ora(`Installing ${agent.displayName}...`).start();
|
|
@@ -52,8 +51,10 @@ export function createInstallCommand() {
|
|
|
52
51
|
// Show how to run the newly installed agent
|
|
53
52
|
console.log();
|
|
54
53
|
console.log(chalk.cyan('💡 Next steps:'));
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
// Handle special case where agent name already includes 'codemie-' prefix
|
|
55
|
+
const command = agent.name.startsWith('codemie-') ? agent.name : `codemie-${agent.name}`;
|
|
56
|
+
console.log(chalk.white(` Interactive mode:`), chalk.blueBright(command));
|
|
57
|
+
console.log(chalk.white(` Single task:`), chalk.blueBright(`${command} --task "your task"`));
|
|
57
58
|
console.log();
|
|
58
59
|
}
|
|
59
60
|
catch (error) {
|
|
@@ -62,7 +63,22 @@ export function createInstallCommand() {
|
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
65
|
catch (error) {
|
|
65
|
-
|
|
66
|
+
// Handle AgentInstallationError with helpful suggestions
|
|
67
|
+
if (error instanceof AgentInstallationError) {
|
|
68
|
+
console.error(chalk.red(`✗ ${getErrorMessage(error)}`));
|
|
69
|
+
console.log();
|
|
70
|
+
console.log(chalk.cyan('💡 Available agents:'));
|
|
71
|
+
const allAgents = AgentRegistry.getAllAgents();
|
|
72
|
+
for (const agent of allAgents) {
|
|
73
|
+
console.log(chalk.white(` • ${agent.name}`));
|
|
74
|
+
}
|
|
75
|
+
console.log();
|
|
76
|
+
console.log(chalk.cyan('💡 Tip:') + ' Run ' + chalk.blueBright('codemie install') + ' to see all agents');
|
|
77
|
+
console.log();
|
|
78
|
+
process.exit(1);
|
|
79
|
+
}
|
|
80
|
+
// For other errors, show simple message
|
|
81
|
+
console.error(chalk.red(`✗ Installation failed: ${getErrorMessage(error)}`));
|
|
66
82
|
process.exit(1);
|
|
67
83
|
}
|
|
68
84
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,13 +20,13 @@ export function createListCommand() {
|
|
|
20
20
|
console.log(chalk.bold('\nAvailable Agents:\n'));
|
|
21
21
|
for (const agent of agents) {
|
|
22
22
|
const installed = await agent.isInstalled();
|
|
23
|
-
const status = installed ? chalk.green('✓ installed') : chalk.
|
|
23
|
+
const status = installed ? chalk.green('✓ installed') : chalk.white('not installed');
|
|
24
24
|
const version = installed ? await agent.getVersion() : null;
|
|
25
|
-
const versionStr = version ? chalk.
|
|
25
|
+
const versionStr = version ? chalk.white(` (${version})`) : '';
|
|
26
26
|
console.log(chalk.bold(` ${agent.displayName}`) + versionStr);
|
|
27
27
|
console.log(` Command: ${chalk.cyan(agent.name)}`);
|
|
28
28
|
console.log(` Status: ${status}`);
|
|
29
|
-
console.log(` ${chalk.
|
|
29
|
+
console.log(` ${chalk.white(agent.description)}`);
|
|
30
30
|
console.log();
|
|
31
31
|
}
|
|
32
32
|
// Show a helpful tip after listing agents (unless in assistant context)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/cli/commands/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,UAAU,iBAAiB;IAC/B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpC,OAAO;SACJ,WAAW,CAAC,2BAA2B,CAAC;SACxC,MAAM,CAAC,iBAAiB,EAAE,4BAA4B,CAAC;SACvD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS;gBAC9B,CAAC,CAAC,MAAM,aAAa,CAAC,kBAAkB,EAAE;gBAC1C,CAAC,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;YAEjC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBAC/E,OAAO;YACT,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;YAEjD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;gBAC5C,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/cli/commands/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,UAAU,iBAAiB;IAC/B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpC,OAAO;SACJ,WAAW,CAAC,2BAA2B,CAAC;SACxC,MAAM,CAAC,iBAAiB,EAAE,4BAA4B,CAAC;SACvD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS;gBAC9B,CAAC,CAAC,MAAM,aAAa,CAAC,kBAAkB,EAAE;gBAC1C,CAAC,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;YAEjC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBAC/E,OAAO;YACT,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;YAEjD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;gBAC5C,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBACrF,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAE/D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC;gBAC/D,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACtD,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,EAAE,CAAC,CAAC;gBACrC,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,CAAC;YAED,wEAAwE;YACxE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC;gBAC5D,UAAU,CAAC,aAAa,EAAE,CAAC;YAC7B,CAAC;QACH,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -27,12 +27,12 @@ function createListCommand() {
|
|
|
27
27
|
}
|
|
28
28
|
console.log(chalk.bold.cyan('\n📋 Provider Profiles:\n'));
|
|
29
29
|
profiles.forEach(({ name, active, profile }) => {
|
|
30
|
-
const activeMarker = active ? chalk.green('● ') : chalk.
|
|
31
|
-
const providerLabel = chalk.
|
|
32
|
-
const modelLabel = profile.model ? chalk.
|
|
30
|
+
const activeMarker = active ? chalk.green('● ') : chalk.white('○ ');
|
|
31
|
+
const providerLabel = chalk.white(`(${profile.provider})`);
|
|
32
|
+
const modelLabel = profile.model ? chalk.white(`- ${profile.model}`) : '';
|
|
33
33
|
console.log(`${activeMarker}${chalk.white(name)} ${providerLabel} ${modelLabel}`);
|
|
34
34
|
if (active) {
|
|
35
|
-
console.log(chalk.
|
|
35
|
+
console.log(chalk.white(` └─ Active profile`));
|
|
36
36
|
}
|
|
37
37
|
});
|
|
38
38
|
console.log('');
|
|
@@ -97,7 +97,7 @@ function createShowCommand() {
|
|
|
97
97
|
const maskedKey = profile.apiKey.length > 12
|
|
98
98
|
? `${profile.apiKey.substring(0, 8)}***${profile.apiKey.substring(profile.apiKey.length - 4)}`
|
|
99
99
|
: '***';
|
|
100
|
-
console.log(chalk.cyan('API Key: ') + chalk.
|
|
100
|
+
console.log(chalk.cyan('API Key: ') + chalk.white(maskedKey));
|
|
101
101
|
}
|
|
102
102
|
console.log('');
|
|
103
103
|
}
|
|
@@ -136,7 +136,7 @@ function createDeleteCommand() {
|
|
|
136
136
|
// Show new active profile if switched
|
|
137
137
|
const activeProfile = await ConfigLoader.getActiveProfileName();
|
|
138
138
|
if (activeProfile) {
|
|
139
|
-
console.log(chalk.
|
|
139
|
+
console.log(chalk.white(`Active profile is now: ${activeProfile}\n`));
|
|
140
140
|
}
|
|
141
141
|
}
|
|
142
142
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../src/cli/commands/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAEvC,OAAO;SACJ,WAAW,CAAC,0BAA0B,CAAC;SACvC,UAAU,CAAC,iBAAiB,EAAE,CAAC;SAC/B,UAAU,CAAC,mBAAmB,EAAE,CAAC;SACjC,UAAU,CAAC,iBAAiB,EAAE,CAAC;SAC/B,UAAU,CAAC,mBAAmB,EAAE,CAAC;SACjC,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAErC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,iBAAiB;IACxB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpC,OAAO;SACJ,WAAW,CAAC,4BAA4B,CAAC;SACzC,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;YAEnD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,2DAA2D,CAAC,CAAC,CAAC;gBACvF,OAAO;YACT,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;YAE1D,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;gBAC7C,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../src/cli/commands/profile.ts"],"names":[],"mappings":"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"}
|