@codemieai/code 0.0.18 → 0.0.20

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.
Files changed (150) hide show
  1. package/dist/agents/core/AgentCLI.d.ts +4 -0
  2. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  3. package/dist/agents/core/AgentCLI.js +97 -24
  4. package/dist/agents/core/AgentCLI.js.map +1 -1
  5. package/dist/agents/core/BaseAgentAdapter.d.ts +24 -0
  6. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  7. package/dist/agents/core/BaseAgentAdapter.js +191 -81
  8. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  9. package/dist/agents/core/flag-transform.d.ts +37 -0
  10. package/dist/agents/core/flag-transform.d.ts.map +1 -0
  11. package/dist/agents/core/flag-transform.js +107 -0
  12. package/dist/agents/core/flag-transform.js.map +1 -0
  13. package/dist/agents/core/types.d.ts +53 -6
  14. package/dist/agents/core/types.d.ts.map +1 -1
  15. package/dist/agents/plugins/claude.plugin.d.ts.map +1 -1
  16. package/dist/agents/plugins/claude.plugin.js +11 -4
  17. package/dist/agents/plugins/claude.plugin.js.map +1 -1
  18. package/dist/agents/plugins/codemie-code.plugin.d.ts +1 -0
  19. package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
  20. package/dist/agents/plugins/codemie-code.plugin.js +14 -26
  21. package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
  22. package/dist/agents/plugins/codex.plugin.d.ts +4 -0
  23. package/dist/agents/plugins/codex.plugin.d.ts.map +1 -1
  24. package/dist/agents/plugins/codex.plugin.js +231 -22
  25. package/dist/agents/plugins/codex.plugin.js.map +1 -1
  26. package/dist/agents/plugins/deepagents.plugin.d.ts.map +1 -1
  27. package/dist/agents/plugins/deepagents.plugin.js +7 -4
  28. package/dist/agents/plugins/deepagents.plugin.js.map +1 -1
  29. package/dist/agents/plugins/gemini.plugin.d.ts.map +1 -1
  30. package/dist/agents/plugins/gemini.plugin.js +15 -12
  31. package/dist/agents/plugins/gemini.plugin.js.map +1 -1
  32. package/dist/cli/commands/doctor/checks/FrameworksCheck.d.ts +12 -0
  33. package/dist/cli/commands/doctor/checks/FrameworksCheck.d.ts.map +1 -0
  34. package/dist/cli/commands/doctor/checks/FrameworksCheck.js +103 -0
  35. package/dist/cli/commands/doctor/checks/FrameworksCheck.js.map +1 -0
  36. package/dist/cli/commands/doctor/checks/index.d.ts +1 -0
  37. package/dist/cli/commands/doctor/checks/index.d.ts.map +1 -1
  38. package/dist/cli/commands/doctor/checks/index.js +1 -0
  39. package/dist/cli/commands/doctor/checks/index.js.map +1 -1
  40. package/dist/cli/commands/doctor/index.d.ts.map +1 -1
  41. package/dist/cli/commands/doctor/index.js +3 -2
  42. package/dist/cli/commands/doctor/index.js.map +1 -1
  43. package/dist/cli/commands/install.d.ts.map +1 -1
  44. package/dist/cli/commands/install.js +79 -30
  45. package/dist/cli/commands/install.js.map +1 -1
  46. package/dist/cli/commands/list.d.ts.map +1 -1
  47. package/dist/cli/commands/list.js +55 -15
  48. package/dist/cli/commands/list.js.map +1 -1
  49. package/dist/cli/commands/uninstall.d.ts.map +1 -1
  50. package/dist/cli/commands/uninstall.js +85 -34
  51. package/dist/cli/commands/uninstall.js.map +1 -1
  52. package/dist/cli/index.d.ts +1 -0
  53. package/dist/cli/index.d.ts.map +1 -1
  54. package/dist/cli/index.js +5 -3
  55. package/dist/cli/index.js.map +1 -1
  56. package/dist/frameworks/core/BaseFrameworkAdapter.d.ts +88 -0
  57. package/dist/frameworks/core/BaseFrameworkAdapter.d.ts.map +1 -0
  58. package/dist/frameworks/core/BaseFrameworkAdapter.js +156 -0
  59. package/dist/frameworks/core/BaseFrameworkAdapter.js.map +1 -0
  60. package/dist/frameworks/core/index.d.ts +9 -0
  61. package/dist/frameworks/core/index.d.ts.map +1 -0
  62. package/dist/frameworks/core/index.js +9 -0
  63. package/dist/frameworks/core/index.js.map +1 -0
  64. package/dist/frameworks/core/registry.d.ts +53 -0
  65. package/dist/frameworks/core/registry.d.ts.map +1 -0
  66. package/dist/frameworks/core/registry.js +82 -0
  67. package/dist/frameworks/core/registry.js.map +1 -0
  68. package/dist/frameworks/core/types.d.ts +130 -0
  69. package/dist/frameworks/core/types.d.ts.map +1 -0
  70. package/dist/frameworks/core/types.js +8 -0
  71. package/dist/frameworks/core/types.js.map +1 -0
  72. package/dist/frameworks/index.d.ts +9 -0
  73. package/dist/frameworks/index.d.ts.map +1 -0
  74. package/dist/frameworks/index.js +12 -0
  75. package/dist/frameworks/index.js.map +1 -0
  76. package/dist/frameworks/plugins/bmad.plugin.d.ts +46 -0
  77. package/dist/frameworks/plugins/bmad.plugin.d.ts.map +1 -0
  78. package/dist/frameworks/plugins/bmad.plugin.js +111 -0
  79. package/dist/frameworks/plugins/bmad.plugin.js.map +1 -0
  80. package/dist/frameworks/plugins/index.d.ts +8 -0
  81. package/dist/frameworks/plugins/index.d.ts.map +1 -0
  82. package/dist/frameworks/plugins/index.js +15 -0
  83. package/dist/frameworks/plugins/index.js.map +1 -0
  84. package/dist/frameworks/plugins/speckit.plugin.d.ts +59 -0
  85. package/dist/frameworks/plugins/speckit.plugin.d.ts.map +1 -0
  86. package/dist/frameworks/plugins/speckit.plugin.js +213 -0
  87. package/dist/frameworks/plugins/speckit.plugin.js.map +1 -0
  88. package/dist/metrics/config.d.ts.map +1 -1
  89. package/dist/metrics/config.js +7 -1
  90. package/dist/metrics/config.js.map +1 -1
  91. package/dist/metrics/sync/aggregator.d.ts +7 -1
  92. package/dist/metrics/sync/aggregator.d.ts.map +1 -1
  93. package/dist/metrics/sync/aggregator.js +14 -5
  94. package/dist/metrics/sync/aggregator.js.map +1 -1
  95. package/dist/metrics/sync/post-processor.d.ts +48 -0
  96. package/dist/metrics/sync/post-processor.d.ts.map +1 -0
  97. package/dist/metrics/sync/post-processor.js +147 -0
  98. package/dist/metrics/sync/post-processor.js.map +1 -0
  99. package/dist/metrics/sync/types.d.ts +2 -2
  100. package/dist/metrics/sync/types.d.ts.map +1 -1
  101. package/dist/metrics/types.d.ts +6 -0
  102. package/dist/metrics/types.d.ts.map +1 -1
  103. package/dist/providers/core/types.d.ts +0 -5
  104. package/dist/providers/core/types.d.ts.map +1 -1
  105. package/dist/providers/plugins/bedrock/bedrock.template.d.ts.map +1 -1
  106. package/dist/providers/plugins/bedrock/bedrock.template.js +0 -5
  107. package/dist/providers/plugins/bedrock/bedrock.template.js.map +1 -1
  108. package/dist/providers/plugins/litellm/litellm.template.d.ts.map +1 -1
  109. package/dist/providers/plugins/litellm/litellm.template.js +0 -6
  110. package/dist/providers/plugins/litellm/litellm.template.js.map +1 -1
  111. package/dist/providers/plugins/ollama/ollama.template.d.ts.map +1 -1
  112. package/dist/providers/plugins/ollama/ollama.template.js +22 -17
  113. package/dist/providers/plugins/ollama/ollama.template.js.map +1 -1
  114. package/dist/providers/plugins/sso/sso.template.d.ts.map +1 -1
  115. package/dist/providers/plugins/sso/sso.template.js +0 -5
  116. package/dist/providers/plugins/sso/sso.template.js.map +1 -1
  117. package/dist/proxy/plugins/metrics-sync.plugin.js +20 -9
  118. package/dist/proxy/plugins/metrics-sync.plugin.js.map +1 -1
  119. package/dist/proxy/plugins/sso-auth.plugin.js +7 -2
  120. package/dist/proxy/plugins/sso-auth.plugin.js.map +1 -1
  121. package/dist/utils/codemie-proxy.d.ts +1 -0
  122. package/dist/utils/codemie-proxy.d.ts.map +1 -1
  123. package/dist/utils/codemie-proxy.js +9 -3
  124. package/dist/utils/codemie-proxy.js.map +1 -1
  125. package/dist/utils/config-loader.d.ts +4 -2
  126. package/dist/utils/config-loader.d.ts.map +1 -1
  127. package/dist/utils/config-loader.js +43 -33
  128. package/dist/utils/config-loader.js.map +1 -1
  129. package/dist/utils/exec.d.ts +1 -0
  130. package/dist/utils/exec.d.ts.map +1 -1
  131. package/dist/utils/exec.js +23 -9
  132. package/dist/utils/exec.js.map +1 -1
  133. package/dist/utils/first-time.d.ts +3 -3
  134. package/dist/utils/first-time.d.ts.map +1 -1
  135. package/dist/utils/first-time.js +21 -4
  136. package/dist/utils/first-time.js.map +1 -1
  137. package/dist/utils/logger.js +2 -2
  138. package/dist/utils/logger.js.map +1 -1
  139. package/dist/utils/profile.d.ts +12 -0
  140. package/dist/utils/profile.d.ts.map +1 -0
  141. package/dist/utils/profile.js +32 -0
  142. package/dist/utils/profile.js.map +1 -0
  143. package/package.json +22 -6
  144. package/scripts/README.md +80 -0
  145. package/scripts/release.sh +267 -0
  146. package/scripts/validate-secrets.js +54 -0
  147. package/dist/utils/ascii-logo.d.ts +0 -21
  148. package/dist/utils/ascii-logo.d.ts.map +0 -1
  149. package/dist/utils/ascii-logo.js +0 -85
  150. package/dist/utils/ascii-logo.js.map +0 -1
@@ -1,8 +1,203 @@
1
1
  import { BaseAgentAdapter } from '../core/BaseAgentAdapter.js';
2
- import { mkdir, writeFile } from 'fs/promises';
2
+ import { mkdir, writeFile, readFile } from 'fs/promises';
3
3
  import { existsSync } from 'fs';
4
4
  import { join } from 'path';
5
5
  import { homedir } from 'os';
6
+ /**
7
+ * Helper functions
8
+ */
9
+ async function atomicWrite(filePath, content) {
10
+ const tempFile = filePath + '.tmp';
11
+ await writeFile(tempFile, content);
12
+ const { rename } = await import('fs/promises');
13
+ await rename(tempFile, filePath);
14
+ }
15
+ async function countActiveSessions(configFile, excludeSessionId) {
16
+ if (!existsSync(configFile))
17
+ return 0;
18
+ const configContent = await readFile(configFile, 'utf-8');
19
+ const sessionMarkerRegex = /# --- CODEMIE SESSION START: (.+?) ---/g;
20
+ const matches = [...configContent.matchAll(sessionMarkerRegex)];
21
+ // Count sessions, excluding the one being cleaned up
22
+ let count = 0;
23
+ for (const match of matches) {
24
+ const sessionId = match[1];
25
+ if (sessionId !== excludeSessionId) {
26
+ count++;
27
+ }
28
+ }
29
+ return count;
30
+ }
31
+ export async function cleanupAuthJson(authFile, sessionEnv, configFile) {
32
+ if (!existsSync(authFile))
33
+ return;
34
+ const authContent = await readFile(authFile, 'utf-8');
35
+ const authConfig = JSON.parse(authContent);
36
+ const provider = sessionEnv?.CODEMIE_PROFILE_NAME || sessionEnv?.CODEMIE_PROVIDER;
37
+ // Count remaining active sessions (excluding current one being cleaned)
38
+ const sessionId = sessionEnv?.CODEMIE_SESSION_ID;
39
+ const remainingSessions = configFile ? await countActiveSessions(configFile, sessionId) : 0;
40
+ const cleanedAuth = {};
41
+ // Provider-specific cleanup
42
+ if (provider === 'gemini') {
43
+ // Remove only Gemini-specific vars that match this session
44
+ for (const [key, value] of Object.entries(authConfig)) {
45
+ if (typeof value !== 'string')
46
+ continue;
47
+ // Remove only this session's gemini keys
48
+ if (key === 'GEMINI_API_KEY' && value === sessionEnv?.GEMINI_API_KEY) {
49
+ continue;
50
+ }
51
+ if (key === 'GOOGLE_GEMINI_BASE_URL' && value === sessionEnv?.GOOGLE_GEMINI_BASE_URL) {
52
+ continue;
53
+ }
54
+ // Remove OPENAI_API_KEY if it was set by gemini and no other sessions remain
55
+ if (key === 'OPENAI_API_KEY' && value === sessionEnv?.OPENAI_API_KEY && value === 'not-required' && remainingSessions === 0) {
56
+ continue;
57
+ }
58
+ cleanedAuth[key] = value;
59
+ }
60
+ }
61
+ else {
62
+ // Ollama or other OpenAI-compatible providers
63
+ const sessionBaseUrl = sessionEnv?.OPENAI_BASE_URL || sessionEnv?.OPENAI_API_BASE;
64
+ for (const [key, value] of Object.entries(authConfig)) {
65
+ if (typeof value !== 'string')
66
+ continue;
67
+ // Only remove OPENAI_API_BASE if it matches this session's URL
68
+ if (key === 'OPENAI_API_BASE' && value === sessionBaseUrl) {
69
+ continue;
70
+ }
71
+ // Remove OPENAI_API_KEY only if no other sessions remain
72
+ if (key === 'OPENAI_API_KEY' && value === sessionEnv?.OPENAI_API_KEY && value === 'not-required' && remainingSessions === 0) {
73
+ continue;
74
+ }
75
+ // Keep everything else
76
+ cleanedAuth[key] = value;
77
+ }
78
+ }
79
+ await atomicWrite(authFile, JSON.stringify(cleanedAuth, null, 2));
80
+ }
81
+ export async function cleanupConfigToml(configFile, sessionEnv) {
82
+ if (!existsSync(configFile))
83
+ return;
84
+ const sessionId = sessionEnv?.CODEMIE_SESSION_ID;
85
+ if (!sessionId) {
86
+ // Fallback: try to find any session for this provider (backward compat)
87
+ const profileName = sessionEnv?.CODEMIE_PROFILE_NAME || sessionEnv?.CODEMIE_PROVIDER;
88
+ if (!profileName)
89
+ return;
90
+ let configContent = await readFile(configFile, 'utf-8');
91
+ // Remove any session block for this provider
92
+ const sessionBlockRegex = new RegExp(`# --- CODEMIE SESSION START: ${profileName}-\\d+ ---[\\s\\S]*?# --- CODEMIE SESSION END: ${profileName}-\\d+ ---\\n?`, 'g');
93
+ configContent = configContent.replace(sessionBlockRegex, '');
94
+ configContent = configContent.replace(/^\s*\n+/gm, '\n').replace(/^\n/, ''); // Clean up empty lines
95
+ await atomicWrite(configFile, configContent);
96
+ return;
97
+ }
98
+ // Use session ID for precise removal
99
+ let configContent = await readFile(configFile, 'utf-8');
100
+ const sessionStartMarker = `# --- CODEMIE SESSION START: ${sessionId} ---`;
101
+ const sessionEndMarker = `# --- CODEMIE SESSION END: ${sessionId} ---`;
102
+ const sessionBlockRegex = new RegExp(`${sessionStartMarker.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}[\\s\\S]*?${sessionEndMarker.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}\\n?`, 'g');
103
+ configContent = configContent.replace(sessionBlockRegex, '');
104
+ configContent = configContent.replace(/^\s*\n+/gm, '\n').replace(/^\n/, ''); // Clean up empty lines
105
+ await atomicWrite(configFile, configContent);
106
+ }
107
+ /**
108
+ * Setup helper functions
109
+ */
110
+ async function ensureCodexDirectory(codexDir) {
111
+ if (!existsSync(codexDir)) {
112
+ await mkdir(codexDir, { recursive: true });
113
+ }
114
+ }
115
+ async function loadExistingAuth(authFile) {
116
+ if (!existsSync(authFile)) {
117
+ return {};
118
+ }
119
+ try {
120
+ const authContent = await readFile(authFile, 'utf-8');
121
+ return JSON.parse(authContent);
122
+ }
123
+ catch {
124
+ // Ignore parse errors, will overwrite with valid JSON
125
+ return {};
126
+ }
127
+ }
128
+ function buildAuthConfig(env, existingAuth) {
129
+ const authConfig = {
130
+ ...existingAuth
131
+ };
132
+ const provider = env.CODEMIE_PROFILE_NAME || env.CODEMIE_PROVIDER;
133
+ // Provider-specific auth configuration
134
+ if (provider === 'gemini') {
135
+ // Gemini session: add Gemini-specific vars
136
+ if (env.GEMINI_API_KEY) {
137
+ authConfig.GEMINI_API_KEY = env.GEMINI_API_KEY;
138
+ }
139
+ if (env.GOOGLE_GEMINI_BASE_URL) {
140
+ authConfig.GOOGLE_GEMINI_BASE_URL = env.GOOGLE_GEMINI_BASE_URL;
141
+ }
142
+ // Also set OPENAI_* for compatibility (gemini can use OpenAI SDK)
143
+ if (env.OPENAI_API_KEY) {
144
+ authConfig.OPENAI_API_KEY = env.OPENAI_API_KEY;
145
+ }
146
+ // Don't overwrite OPENAI_API_BASE if it exists from another session
147
+ }
148
+ else {
149
+ // Ollama or other OpenAI-compatible providers
150
+ authConfig.OPENAI_API_KEY = env.OPENAI_API_KEY || existingAuth.OPENAI_API_KEY || 'not-required';
151
+ // Codex prioritizes OPENAI_API_BASE over OPENAI_BASE_URL
152
+ if (env.OPENAI_BASE_URL) {
153
+ authConfig.OPENAI_API_BASE = env.OPENAI_BASE_URL;
154
+ }
155
+ else if (env.OPENAI_API_BASE) {
156
+ authConfig.OPENAI_API_BASE = env.OPENAI_API_BASE;
157
+ }
158
+ }
159
+ return authConfig;
160
+ }
161
+ export async function setupAuthJson(authFile, env) {
162
+ const existingAuth = await loadExistingAuth(authFile);
163
+ const authConfig = buildAuthConfig(env, existingAuth);
164
+ await atomicWrite(authFile, JSON.stringify(authConfig, null, 2));
165
+ }
166
+ function buildSessionBlock(providerName, baseUrl, model) {
167
+ // Generate unique session ID (timestamp + provider)
168
+ const sessionId = `${providerName}-${Date.now()}`;
169
+ let content = '';
170
+ content += `# --- CODEMIE SESSION START: ${sessionId} ---\n`;
171
+ content += `profile = "${providerName}"\n\n`;
172
+ content += `[model_providers.${providerName}]\n`;
173
+ content += `name = "${providerName}"\n`;
174
+ content += `base_url = "${baseUrl}"\n\n`;
175
+ content += `[profiles.${providerName}]\n`;
176
+ content += `model_provider = "${providerName}"\n`;
177
+ content += `model = "${model}"\n`;
178
+ content += `# --- CODEMIE SESSION END: ${sessionId} ---\n`;
179
+ return content;
180
+ }
181
+ export async function setupConfigToml(configFile, env) {
182
+ const model = env.OPENAI_MODEL || env.CODEX_MODEL;
183
+ const baseUrl = env.OPENAI_BASE_URL || env.OPENAI_API_BASE;
184
+ if (!model || !baseUrl) {
185
+ return;
186
+ }
187
+ const providerName = env.CODEMIE_PROFILE_NAME || env.CODEMIE_PROVIDER || 'default';
188
+ // Read existing content (or empty if file doesn't exist)
189
+ let existingContent = '';
190
+ if (existsSync(configFile)) {
191
+ existingContent = await readFile(configFile, 'utf-8');
192
+ }
193
+ // Build session block
194
+ const sessionBlock = buildSessionBlock(providerName, baseUrl, model);
195
+ // Append session block to existing content
196
+ const newContent = existingContent ? `${existingContent}\n${sessionBlock}` : sessionBlock;
197
+ // Store session ID for cleanup
198
+ env.CODEMIE_SESSION_ID = sessionBlock.match(/# --- CODEMIE SESSION START: (.*?) ---/)?.[1] || '';
199
+ await atomicWrite(configFile, newContent);
200
+ }
6
201
  // Define metadata object for reusability
7
202
  const metadata = {
8
203
  name: 'codex',
@@ -23,21 +218,17 @@ const metadata = {
23
218
  },
24
219
  supportedProviders: ['ollama', 'litellm', 'ai-run-sso'],
25
220
  blockedModelPatterns: [/^claude/i],
221
+ recommendedModels: ['gpt-4.1', 'gpt-4o', 'qwen2.5-coder'],
26
222
  ssoConfig: {
27
223
  enabled: true,
28
- clientType: 'codex-cli',
29
- envOverrides: {
30
- baseUrl: 'OPENAI_BASE_URL',
31
- apiKey: 'OPENAI_API_KEY'
32
- }
224
+ clientType: 'codex-cli'
33
225
  },
34
- // Codex needs model injected as argument
35
- argumentTransform: (args, config) => {
36
- const hasModelArg = args.some((arg, idx) => (arg === '-m' || arg === '--model') && idx < args.length - 1);
37
- if (!hasModelArg && config.model) {
38
- return ['--model', config.model, ...args];
226
+ flagMappings: {
227
+ '--task': {
228
+ type: 'subcommand',
229
+ target: 'exec',
230
+ position: 'before'
39
231
  }
40
- return args;
41
232
  }
42
233
  };
43
234
  /**
@@ -47,21 +238,39 @@ export const CodexPluginMetadata = {
47
238
  ...metadata,
48
239
  // Lifecycle hook uses dataPaths from metadata (DRY!)
49
240
  lifecycle: {
241
+ enrichArgs: (args, config) => {
242
+ // Pass profile to Codex (uses config.toml profiles)
243
+ const hasProfileArg = args.some((arg, idx) => (arg === '--profile') && idx < args.length - 1);
244
+ // Use CodeMie profile name (matches beforeRun setup)
245
+ const profileName = config.profileName || config.provider || 'default';
246
+ if (!hasProfileArg) {
247
+ return ['--profile', profileName, ...args];
248
+ }
249
+ return args;
250
+ },
50
251
  beforeRun: async (env) => {
51
252
  const codexDir = join(homedir(), metadata.dataPaths.home.replace('~/', ''));
52
253
  const authFile = join(codexDir, metadata.dataPaths.settings);
53
- // Create ~/.codex directory if it doesn't exist
54
- if (!existsSync(codexDir)) {
55
- await mkdir(codexDir, { recursive: true });
254
+ const configFile = join(codexDir, 'config.toml');
255
+ await ensureCodexDirectory(codexDir);
256
+ await setupAuthJson(authFile, env);
257
+ await setupConfigToml(configFile, env);
258
+ return env;
259
+ },
260
+ afterRun: async (exitCode, sessionEnv) => {
261
+ // Cleanup session-specific configuration after session ends
262
+ const codexDir = join(homedir(), metadata.dataPaths.home.replace('~/', ''));
263
+ const authFile = join(codexDir, metadata.dataPaths.settings);
264
+ const configFile = join(codexDir, 'config.toml');
265
+ try {
266
+ await cleanupAuthJson(authFile, sessionEnv, configFile);
267
+ await cleanupConfigToml(configFile, sessionEnv);
56
268
  }
57
- // Create auth.json if it doesn't exist
58
- if (!existsSync(authFile)) {
59
- const authConfig = {
60
- OPENAI_API_KEY: env.OPENAI_API_KEY || 'proxy-handled'
61
- };
62
- await writeFile(authFile, JSON.stringify(authConfig, null, 2));
269
+ catch (error) {
270
+ // Ignore cleanup errors (session already ended, non-critical)
271
+ const { logger } = await import('../../utils/logger.js');
272
+ logger.debug(`Cleanup failed (non-critical): ${error instanceof Error ? error.message : String(error)}`);
63
273
  }
64
- return env;
65
274
  }
66
275
  },
67
276
  // Analytics adapter uses same metadata (DRY!)
@@ -1 +1 @@
1
- {"version":3,"file":"codex.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/codex.plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/codex.plugin.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deepagents.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/deepagents.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAI/D;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,aAkDtC,CAAC;AAEF;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,gBAAgB;;IAKpD;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB9B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAkBjC"}
1
+ {"version":3,"file":"deepagents.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/deepagents.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAI/D;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,aAsDtC,CAAC;AAEF;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,gBAAgB;;IAKpD;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB9B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAkBjC"}
@@ -17,14 +17,17 @@ export const DeepAgentsPluginMetadata = {
17
17
  },
18
18
  supportedProviders: ['ollama', 'litellm', 'ai-run-sso'],
19
19
  blockedModelPatterns: [], // Accepts both Claude and OpenAI models
20
+ recommendedModels: ['claude-4-5-sonnet', 'gpt-4.1', 'gpt-4o'],
20
21
  // Note: Deep Agents CLI doesn't support CLI arguments for API configuration
21
22
  // All configuration must be done via environment variables
22
23
  ssoConfig: {
23
24
  enabled: true,
24
- clientType: 'codemie-deepagents',
25
- envOverrides: {
26
- baseUrl: 'OPENAI_BASE_URL', // Deep Agents uses OpenAI SDK for custom base URLs
27
- apiKey: 'OPENAI_API_KEY' // Use OpenAI env vars when proxying through SSO/LiteLLM
25
+ clientType: 'codemie-deepagents'
26
+ },
27
+ flagMappings: {
28
+ '--task': {
29
+ type: 'positional',
30
+ target: null
28
31
  }
29
32
  },
30
33
  lifecycle: {
@@ -1 +1 @@
1
- {"version":3,"file":"deepagents.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/deepagents.plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deepagents.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/deepagents.plugin.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/gemini.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAyC/D;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,aA4ClC,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAa,SAAQ,gBAAgB;;CAIjD"}
1
+ {"version":3,"file":"gemini.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/gemini.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AA6C/D;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,aA2ClC,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAa,SAAQ,gBAAgB;;CAIjD"}
@@ -17,12 +17,15 @@ const metadata = {
17
17
  },
18
18
  supportedProviders: ['ai-run-sso', 'litellm'],
19
19
  blockedModelPatterns: [/^claude/i, /^gpt/i], // Gemini models only
20
+ recommendedModels: ['gemini-2.5-flash', 'gemini-2.5-pro'],
20
21
  ssoConfig: {
21
22
  enabled: true,
22
- clientType: 'gemini-cli',
23
- envOverrides: {
24
- baseUrl: 'GOOGLE_GEMINI_BASE_URL',
25
- apiKey: 'GEMINI_API_KEY'
23
+ clientType: 'gemini-cli'
24
+ },
25
+ flagMappings: {
26
+ '--task': {
27
+ type: 'flag',
28
+ target: '-p'
26
29
  }
27
30
  },
28
31
  // Data paths (used by lifecycle hooks and analytics)
@@ -37,16 +40,16 @@ const metadata = {
37
40
  */
38
41
  export const GeminiPluginMetadata = {
39
42
  ...metadata,
40
- // Gemini CLI uses -m flag for model selection
41
- argumentTransform: (args, config) => {
42
- const hasModelArg = args.some((arg, idx) => (arg === '-m' || arg === '--model') && idx < args.length - 1);
43
- if (!hasModelArg && config.model) {
44
- return ['-m', config.model, ...args];
45
- }
46
- return args;
47
- },
48
43
  // Lifecycle hook to ensure settings file exists (uses metadata.dataPaths)
49
44
  lifecycle: {
45
+ enrichArgs: (args, config) => {
46
+ // Gemini CLI uses -m flag for model selection
47
+ const hasModelArg = args.some((arg, idx) => (arg === '-m' || arg === '--model') && idx < args.length - 1);
48
+ if (!hasModelArg && config.model) {
49
+ return ['-m', config.model, ...args];
50
+ }
51
+ return args;
52
+ },
50
53
  beforeRun: async (env) => {
51
54
  const geminiDir = join(homedir(), metadata.dataPaths.home.replace('~/', ''));
52
55
  const settingsFile = join(geminiDir, metadata.dataPaths.settings);
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/gemini.plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gemini.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/gemini.plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAE7B,+DAA+D;AAC/D,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,yCAAyC;IAEtD,UAAU,EAAE,oBAAoB;IAChC,UAAU,EAAE,QAAQ;IAEpB,UAAU,EAAE;QACV,OAAO,EAAE,CAAC,wBAAwB,EAAE,iBAAiB,CAAC;QACtD,MAAM,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;QAC5C,KAAK,EAAE,CAAC,cAAc,CAAC;KACxB;IAED,kBAAkB,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC;IAC7C,oBAAoB,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,qBAAqB;IAClE,iBAAiB,EAAE,CAAC,kBAAkB,EAAE,gBAAgB,CAAC;IAEzD,SAAS,EAAE;QACT,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,YAAY;KACzB;IAED,YAAY,EAAE;QACZ,QAAQ,EAAE;YACR,IAAI,EAAE,MAAe;YACrB,MAAM,EAAE,IAAI;SACb;KACF;IAED,qDAAqD;IACrD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,yBAAyB;QACnC,QAAQ,EAAE,eAAe;KAC1B;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAkB;IACjD,GAAG,QAAQ;IAEX,0EAA0E;IAC1E,SAAS,EAAE;QACT,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YAC3B,8CAA8C;YAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACzC,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAC7D,CAAC;YAEF,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;YACvC,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QACD,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACvB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAC7E,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAElE,iDAAiD;YACjD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3B,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,CAAC;YAED,2CAA2C;YAC3C,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC9B,MAAM,QAAQ,GAAG;oBACf,QAAQ,EAAE;wBACR,IAAI,EAAE;4BACJ,YAAY,EAAE,gBAAgB;yBAC/B;qBACF;iBACF,CAAC;gBACF,MAAM,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACnE,CAAC;YAED,OAAO,GAAG,CAAC;QACb,CAAC;KACF;IAED,0DAA0D;CAC3D,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,gBAAgB;IAChD;QACE,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC9B,CAAC;CACF"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Frameworks Health Check
3
+ *
4
+ * Verifies installation status of development frameworks
5
+ */
6
+ import type { HealthCheckResult, ItemWiseHealthCheck, HealthCheckDetail } from '../types.js';
7
+ export declare class FrameworksCheck implements ItemWiseHealthCheck {
8
+ name: string;
9
+ run(): Promise<HealthCheckResult>;
10
+ runWithItemDisplay(onStartItem: (itemName: string) => void, onDisplayItem: (detail: HealthCheckDetail) => void): Promise<HealthCheckResult>;
11
+ }
12
+ //# sourceMappingURL=FrameworksCheck.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrameworksCheck.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/doctor/checks/FrameworksCheck.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAG7F,qBAAa,eAAgB,YAAW,mBAAmB;IACzD,IAAI,SAAgB;IAEd,GAAG,IAAI,OAAO,CAAC,iBAAiB,CAAC;IA8CjC,kBAAkB,CACtB,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EACvC,aAAa,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,GACjD,OAAO,CAAC,iBAAiB,CAAC;CAsD9B"}
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Frameworks Health Check
3
+ *
4
+ * Verifies installation status of development frameworks
5
+ */
6
+ import { FrameworkRegistry } from '../../../../frameworks/index.js';
7
+ export class FrameworksCheck {
8
+ name = 'Frameworks';
9
+ async run() {
10
+ const details = [];
11
+ let success = true;
12
+ try {
13
+ const frameworks = FrameworkRegistry.getAllFrameworks();
14
+ if (frameworks.length === 0) {
15
+ details.push({
16
+ status: 'info',
17
+ message: 'No frameworks registered'
18
+ });
19
+ }
20
+ else {
21
+ // Check each framework
22
+ for (const framework of frameworks) {
23
+ const installed = await framework.isInstalled();
24
+ const version = installed ? await framework.getVersion() : null;
25
+ const versionStr = version ? ` (${version})` : '';
26
+ if (installed) {
27
+ details.push({
28
+ status: 'ok',
29
+ message: `${framework.metadata.displayName}${versionStr}`
30
+ });
31
+ }
32
+ else {
33
+ details.push({
34
+ status: 'info',
35
+ message: `${framework.metadata.displayName} - not installed`
36
+ });
37
+ }
38
+ }
39
+ }
40
+ return { name: this.name, success, details };
41
+ }
42
+ catch (error) {
43
+ return {
44
+ name: this.name,
45
+ success: false,
46
+ details: [{
47
+ status: 'error',
48
+ message: `Failed to check frameworks: ${error instanceof Error ? error.message : String(error)}`
49
+ }]
50
+ };
51
+ }
52
+ }
53
+ async runWithItemDisplay(onStartItem, onDisplayItem) {
54
+ const details = [];
55
+ let success = true;
56
+ try {
57
+ const frameworks = FrameworkRegistry.getAllFrameworks();
58
+ if (frameworks.length === 0) {
59
+ const detail = {
60
+ status: 'info',
61
+ message: 'No frameworks registered'
62
+ };
63
+ details.push(detail);
64
+ onDisplayItem(detail);
65
+ }
66
+ else {
67
+ // Check each framework
68
+ for (const framework of frameworks) {
69
+ onStartItem(`Checking ${framework.metadata.displayName}...`);
70
+ const installed = await framework.isInstalled();
71
+ const version = installed ? await framework.getVersion() : null;
72
+ const versionStr = version ? ` (${version})` : '';
73
+ const detail = installed
74
+ ? {
75
+ status: 'ok',
76
+ message: `${framework.metadata.displayName}${versionStr}`
77
+ }
78
+ : {
79
+ status: 'info',
80
+ message: `${framework.metadata.displayName} - not installed`
81
+ };
82
+ details.push(detail);
83
+ onDisplayItem(detail);
84
+ }
85
+ }
86
+ return { name: this.name, success, details };
87
+ }
88
+ catch (error) {
89
+ const detail = {
90
+ status: 'error',
91
+ message: `Failed to check frameworks: ${error instanceof Error ? error.message : String(error)}`
92
+ };
93
+ details.push(detail);
94
+ onDisplayItem(detail);
95
+ return {
96
+ name: this.name,
97
+ success: false,
98
+ details
99
+ };
100
+ }
101
+ }
102
+ }
103
+ //# sourceMappingURL=FrameworksCheck.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrameworksCheck.js","sourceRoot":"","sources":["../../../../../src/cli/commands/doctor/checks/FrameworksCheck.ts"],"names":[],"mappings":"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"}
@@ -9,4 +9,5 @@ export { AwsCliCheck } from './AwsCliCheck.js';
9
9
  export { AIConfigCheck } from './AIConfigCheck.js';
10
10
  export { AgentsCheck } from './AgentsCheck.js';
11
11
  export { WorkflowsCheck } from './WorkflowsCheck.js';
12
+ export { FrameworksCheck } from './FrameworksCheck.js';
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/doctor/checks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/doctor/checks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
@@ -9,4 +9,5 @@ export { AwsCliCheck } from './AwsCliCheck.js';
9
9
  export { AIConfigCheck } from './AIConfigCheck.js';
10
10
  export { AgentsCheck } from './AgentsCheck.js';
11
11
  export { WorkflowsCheck } from './WorkflowsCheck.js';
12
+ export { FrameworksCheck } from './FrameworksCheck.js';
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/commands/doctor/checks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/commands/doctor/checks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/doctor/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBpC,wBAAgB,mBAAmB,IAAI,OAAO,CAmL7C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/doctor/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBpC,wBAAgB,mBAAmB,IAAI,OAAO,CAoL7C"}
@@ -5,7 +5,7 @@ import { Command } from 'commander';
5
5
  import chalk from 'chalk';
6
6
  import os from 'os';
7
7
  import { HealthCheckFormatter } from './formatter.js';
8
- import { NodeVersionCheck, NpmCheck, PythonCheck, UvCheck, AwsCliCheck, AIConfigCheck, AgentsCheck, WorkflowsCheck } from './checks/index.js';
8
+ import { NodeVersionCheck, NpmCheck, PythonCheck, UvCheck, AwsCliCheck, AIConfigCheck, AgentsCheck, WorkflowsCheck, FrameworksCheck } from './checks/index.js';
9
9
  import { ProviderRegistry } from '../../../providers/core/registry.js';
10
10
  import { adaptProviderResult } from './type-adapters.js';
11
11
  import { logger } from '../../../utils/logger.js';
@@ -69,7 +69,8 @@ export function createDoctorCommand() {
69
69
  new AwsCliCheck(),
70
70
  new AIConfigCheck(),
71
71
  new AgentsCheck(),
72
- new WorkflowsCheck()
72
+ new WorkflowsCheck(),
73
+ new FrameworksCheck()
73
74
  ];
74
75
  // Run and display standard checks immediately
75
76
  for (const check of checks) {