@codemieai/code 0.8.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/README.md +12 -0
  2. package/dist/agents/core/AgentCLI.d.ts +4 -1
  3. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  4. package/dist/agents/core/AgentCLI.js +113 -6
  5. package/dist/agents/core/AgentCLI.js.map +1 -1
  6. package/dist/agents/core/BaseAgentAdapter.d.ts +8 -1
  7. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  8. package/dist/agents/core/BaseAgentAdapter.js +57 -1
  9. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  10. package/dist/agents/core/session/session-origin-audit.d.ts +4 -0
  11. package/dist/agents/core/session/session-origin-audit.d.ts.map +1 -0
  12. package/dist/agents/core/session/session-origin-audit.js +67 -0
  13. package/dist/agents/core/session/session-origin-audit.js.map +1 -0
  14. package/dist/agents/core/session/session-ownership.d.ts +2 -0
  15. package/dist/agents/core/session/session-ownership.d.ts.map +1 -0
  16. package/dist/agents/core/session/session-ownership.js +27 -0
  17. package/dist/agents/core/session/session-ownership.js.map +1 -0
  18. package/dist/agents/core/types.d.ts +33 -1
  19. package/dist/agents/core/types.d.ts.map +1 -1
  20. package/dist/agents/plugins/claude/claude.plugin.d.ts +11 -2
  21. package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -1
  22. package/dist/agents/plugins/claude/claude.plugin.js +55 -83
  23. package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
  24. package/dist/agents/plugins/claude/plugin/__tests__/statusline.test.ts +301 -0
  25. package/dist/agents/plugins/claude/plugin/skills/msgraph/scripts/msgraph.js +25 -2
  26. package/dist/agents/plugins/claude/plugin/statusline.mjs +147 -93
  27. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts.map +1 -1
  28. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js +2 -0
  29. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js.map +1 -1
  30. package/dist/agents/plugins/claude/statusline-installer.d.ts +5 -2
  31. package/dist/agents/plugins/claude/statusline-installer.d.ts.map +1 -1
  32. package/dist/agents/plugins/claude/statusline-installer.js +12 -59
  33. package/dist/agents/plugins/claude/statusline-installer.js.map +1 -1
  34. package/dist/agents/plugins/codex/codex.plugin.d.ts +8 -0
  35. package/dist/agents/plugins/codex/codex.plugin.d.ts.map +1 -1
  36. package/dist/agents/plugins/codex/codex.plugin.js +18 -3
  37. package/dist/agents/plugins/codex/codex.plugin.js.map +1 -1
  38. package/dist/agents/plugins/codex/session/processors/codex.conversations-processor.d.ts.map +1 -1
  39. package/dist/agents/plugins/codex/session/processors/codex.conversations-processor.js +2 -0
  40. package/dist/agents/plugins/codex/session/processors/codex.conversations-processor.js.map +1 -1
  41. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.d.ts.map +1 -1
  42. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.js +2 -0
  43. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.js.map +1 -1
  44. package/dist/agents/plugins/kimi/kimi.plugin.d.ts +1 -1
  45. package/dist/agents/plugins/kimi/kimi.plugin.d.ts.map +1 -1
  46. package/dist/agents/plugins/kimi/kimi.plugin.js +3 -2
  47. package/dist/agents/plugins/kimi/kimi.plugin.js.map +1 -1
  48. package/dist/agents/plugins/opencode/opencode-dynamic-models.d.ts.map +1 -1
  49. package/dist/agents/plugins/opencode/opencode-dynamic-models.js +5 -1
  50. package/dist/agents/plugins/opencode/opencode-dynamic-models.js.map +1 -1
  51. package/dist/agents/plugins/opencode/opencode-model-configs.d.ts.map +1 -1
  52. package/dist/agents/plugins/opencode/opencode-model-configs.js +29 -0
  53. package/dist/agents/plugins/opencode/opencode-model-configs.js.map +1 -1
  54. package/dist/agents/plugins/opencode/opencode.plugin.d.ts.map +1 -1
  55. package/dist/agents/plugins/opencode/opencode.plugin.js +1 -0
  56. package/dist/agents/plugins/opencode/opencode.plugin.js.map +1 -1
  57. package/dist/agents/plugins/opencode/session/processors/opencode.conversations-processor.d.ts.map +1 -1
  58. package/dist/agents/plugins/opencode/session/processors/opencode.conversations-processor.js +2 -0
  59. package/dist/agents/plugins/opencode/session/processors/opencode.conversations-processor.js.map +1 -1
  60. package/dist/bin/proxy-daemon.js +3 -1
  61. package/dist/bin/proxy-daemon.js.map +1 -1
  62. package/dist/cli/commands/analytics/data-loader.d.ts +11 -3
  63. package/dist/cli/commands/analytics/data-loader.d.ts.map +1 -1
  64. package/dist/cli/commands/analytics/data-loader.js +33 -6
  65. package/dist/cli/commands/analytics/data-loader.js.map +1 -1
  66. package/dist/cli/commands/analytics/formatter.d.ts.map +1 -1
  67. package/dist/cli/commands/analytics/formatter.js +4 -1
  68. package/dist/cli/commands/analytics/formatter.js.map +1 -1
  69. package/dist/cli/commands/analytics/index.d.ts +3 -0
  70. package/dist/cli/commands/analytics/index.d.ts.map +1 -1
  71. package/dist/cli/commands/analytics/index.js +25 -7
  72. package/dist/cli/commands/analytics/index.js.map +1 -1
  73. package/dist/cli/commands/analytics/native-loader.d.ts +2 -0
  74. package/dist/cli/commands/analytics/native-loader.d.ts.map +1 -1
  75. package/dist/cli/commands/analytics/native-loader.js +85 -3
  76. package/dist/cli/commands/analytics/native-loader.js.map +1 -1
  77. package/dist/cli/commands/analytics/report/payload-builder.d.ts +3 -0
  78. package/dist/cli/commands/analytics/report/payload-builder.d.ts.map +1 -1
  79. package/dist/cli/commands/analytics/report/payload-builder.js +3 -0
  80. package/dist/cli/commands/analytics/report/payload-builder.js.map +1 -1
  81. package/dist/cli/commands/analytics/report/report-generator.d.ts +3 -2
  82. package/dist/cli/commands/analytics/report/report-generator.d.ts.map +1 -1
  83. package/dist/cli/commands/analytics/report/report-generator.js +9 -4
  84. package/dist/cli/commands/analytics/report/report-generator.js.map +1 -1
  85. package/dist/cli/commands/analytics/report/session-report.d.ts +24 -0
  86. package/dist/cli/commands/analytics/report/session-report.d.ts.map +1 -0
  87. package/dist/cli/commands/analytics/report/session-report.js +50 -0
  88. package/dist/cli/commands/analytics/report/session-report.js.map +1 -0
  89. package/dist/cli/commands/analytics/report/types.d.ts +3 -0
  90. package/dist/cli/commands/analytics/report/types.d.ts.map +1 -1
  91. package/dist/cli/commands/analytics/sources/sessions-source.js +3 -1
  92. package/dist/cli/commands/analytics/sources/sessions-source.js.map +1 -1
  93. package/dist/cli/commands/analytics/sources/types.d.ts +2 -0
  94. package/dist/cli/commands/analytics/sources/types.d.ts.map +1 -1
  95. package/dist/cli/commands/analytics/types.d.ts +2 -0
  96. package/dist/cli/commands/analytics/types.d.ts.map +1 -1
  97. package/dist/cli/commands/assistants/chat/index.d.ts.map +1 -1
  98. package/dist/cli/commands/assistants/chat/index.js +8 -0
  99. package/dist/cli/commands/assistants/chat/index.js.map +1 -1
  100. package/dist/cli/commands/assistants/chat/types.d.ts +1 -0
  101. package/dist/cli/commands/assistants/chat/types.d.ts.map +1 -1
  102. package/dist/cli/commands/assistants/setup/index.js +2 -2
  103. package/dist/cli/commands/assistants/setup/index.js.map +1 -1
  104. package/dist/cli/commands/doctor/checks/JWTAuthCheck.d.ts.map +1 -1
  105. package/dist/cli/commands/doctor/checks/JWTAuthCheck.js +4 -2
  106. package/dist/cli/commands/doctor/checks/JWTAuthCheck.js.map +1 -1
  107. package/dist/cli/commands/hook.d.ts.map +1 -1
  108. package/dist/cli/commands/hook.js +26 -0
  109. package/dist/cli/commands/hook.js.map +1 -1
  110. package/dist/cli/commands/install.d.ts.map +1 -1
  111. package/dist/cli/commands/install.js +26 -17
  112. package/dist/cli/commands/install.js.map +1 -1
  113. package/dist/cli/commands/models.js +1 -1
  114. package/dist/cli/commands/models.js.map +1 -1
  115. package/dist/cli/commands/proxy/connectors/vscode.d.ts +9 -0
  116. package/dist/cli/commands/proxy/connectors/vscode.d.ts.map +1 -0
  117. package/dist/cli/commands/proxy/connectors/vscode.js +209 -0
  118. package/dist/cli/commands/proxy/connectors/vscode.js.map +1 -0
  119. package/dist/cli/commands/proxy/daemon-manager.d.ts +2 -0
  120. package/dist/cli/commands/proxy/daemon-manager.d.ts.map +1 -1
  121. package/dist/cli/commands/proxy/daemon-manager.js +2 -0
  122. package/dist/cli/commands/proxy/daemon-manager.js.map +1 -1
  123. package/dist/cli/commands/proxy/health-check.js +1 -1
  124. package/dist/cli/commands/proxy/health-check.js.map +1 -1
  125. package/dist/cli/commands/proxy/index.d.ts.map +1 -1
  126. package/dist/cli/commands/proxy/index.js +213 -33
  127. package/dist/cli/commands/proxy/index.js.map +1 -1
  128. package/dist/cli/index.js +5 -1
  129. package/dist/cli/index.js.map +1 -1
  130. package/dist/env/types.d.ts +2 -1
  131. package/dist/env/types.d.ts.map +1 -1
  132. package/dist/providers/core/default-agent-hooks.d.ts +10 -0
  133. package/dist/providers/core/default-agent-hooks.d.ts.map +1 -0
  134. package/dist/providers/core/default-agent-hooks.js +54 -0
  135. package/dist/providers/core/default-agent-hooks.js.map +1 -0
  136. package/dist/providers/core/types.d.ts +20 -0
  137. package/dist/providers/core/types.d.ts.map +1 -1
  138. package/dist/providers/core/types.js +20 -0
  139. package/dist/providers/core/types.js.map +1 -1
  140. package/dist/providers/integration/setup-ui.d.ts +1 -1
  141. package/dist/providers/integration/setup-ui.d.ts.map +1 -1
  142. package/dist/providers/integration/setup-ui.js.map +1 -1
  143. package/dist/providers/plugins/jwt/index.d.ts +2 -0
  144. package/dist/providers/plugins/jwt/index.d.ts.map +1 -1
  145. package/dist/providers/plugins/jwt/index.js +6 -3
  146. package/dist/providers/plugins/jwt/index.js.map +1 -1
  147. package/dist/providers/plugins/jwt/jwt.models.d.ts +12 -0
  148. package/dist/providers/plugins/jwt/jwt.models.d.ts.map +1 -0
  149. package/dist/providers/plugins/jwt/jwt.models.js +28 -0
  150. package/dist/providers/plugins/jwt/jwt.models.js.map +1 -0
  151. package/dist/providers/plugins/jwt/jwt.setup-steps.d.ts +1 -1
  152. package/dist/providers/plugins/jwt/jwt.setup-steps.d.ts.map +1 -1
  153. package/dist/providers/plugins/jwt/jwt.setup-steps.js +10 -9
  154. package/dist/providers/plugins/jwt/jwt.setup-steps.js.map +1 -1
  155. package/dist/providers/plugins/jwt/jwt.template.d.ts +1 -1
  156. package/dist/providers/plugins/jwt/jwt.template.d.ts.map +1 -1
  157. package/dist/providers/plugins/jwt/jwt.template.js +9 -6
  158. package/dist/providers/plugins/jwt/jwt.template.js.map +1 -1
  159. package/dist/providers/plugins/jwt/jwt.utils.d.ts +16 -0
  160. package/dist/providers/plugins/jwt/jwt.utils.d.ts.map +1 -0
  161. package/dist/providers/plugins/jwt/jwt.utils.js +21 -0
  162. package/dist/providers/plugins/jwt/jwt.utils.js.map +1 -0
  163. package/dist/providers/plugins/sso/proxy/plugins/index.d.ts +14 -14
  164. package/dist/providers/plugins/sso/proxy/plugins/index.js +16 -16
  165. package/dist/providers/plugins/sso/proxy/plugins/index.js.map +1 -1
  166. package/dist/providers/plugins/sso/proxy/sso.proxy.d.ts.map +1 -1
  167. package/dist/providers/plugins/sso/proxy/sso.proxy.js +3 -2
  168. package/dist/providers/plugins/sso/proxy/sso.proxy.js.map +1 -1
  169. package/dist/providers/plugins/sso/session/processors/conversations/syncProcessor.d.ts.map +1 -1
  170. package/dist/providers/plugins/sso/session/processors/conversations/syncProcessor.js +4 -0
  171. package/dist/providers/plugins/sso/session/processors/conversations/syncProcessor.js.map +1 -1
  172. package/dist/providers/plugins/sso/sso.auth.d.ts.map +1 -1
  173. package/dist/providers/plugins/sso/sso.auth.js +10 -1
  174. package/dist/providers/plugins/sso/sso.auth.js.map +1 -1
  175. package/dist/providers/plugins/sso/sso.template.d.ts.map +1 -1
  176. package/dist/providers/plugins/sso/sso.template.js +6 -82
  177. package/dist/providers/plugins/sso/sso.template.js.map +1 -1
  178. package/dist/telemetry/runtime/DesktopTelemetryRuntime.d.ts.map +1 -1
  179. package/dist/telemetry/runtime/DesktopTelemetryRuntime.js +3 -1
  180. package/dist/telemetry/runtime/DesktopTelemetryRuntime.js.map +1 -1
  181. package/dist/utils/auth.d.ts +1 -1
  182. package/dist/utils/auth.d.ts.map +1 -1
  183. package/dist/utils/auth.js +18 -1
  184. package/dist/utils/auth.js.map +1 -1
  185. package/dist/utils/config.d.ts.map +1 -1
  186. package/dist/utils/config.js +16 -6
  187. package/dist/utils/config.js.map +1 -1
  188. package/dist/utils/errors.d.ts.map +1 -1
  189. package/dist/utils/errors.js +6 -3
  190. package/dist/utils/errors.js.map +1 -1
  191. package/package.json +16 -11
  192. package/scripts/postinstall.mjs +14 -2
  193. package/scripts/validate-secrets.js +20 -4
package/README.md CHANGED
@@ -465,6 +465,18 @@ codemie codebase ui
465
465
 
466
466
  Use `codemie codebase start|stop|status` to manage the UI process, or `codemie codebase open` to open the URL only.
467
467
 
468
+ ## Connect VS Code BYOK via CodeMie Proxy
469
+
470
+ Configure VS Code's chat language model provider from the active SSO-backed CodeMie profile:
471
+
472
+ ```bash
473
+ codemie proxy connect vscode
474
+ ```
475
+
476
+ Use `--profile <name>` for a one-run profile override or `--insiders` for VS Code Insiders. The command writes that profile's model ID into `chatLanguageModels.json` and starts or reuses a transparent CodeMie proxy. The profile's project context is passed separately as `X-CodeMie-Project`.
477
+
478
+ No plaintext key or generated placeholder is written to that file. On first setup, press ⇧⌘P on macOS or Ctrl+Shift+P on Windows/Linux, run `Chat: Manage Language Models`, right-click **CodeMie Profile Model**, choose **Update API Key**, and enter the local key `codemie-proxy`. VS Code keeps it in secret storage. Reload VS Code after configuration.
479
+
468
480
  ## Connect Claude Desktop via CodeMie Proxy
469
481
 
470
482
  Use Claude Desktop 3P through CodeMie proxy routing to capture `claude-desktop` metrics and synced conversations.
@@ -1,4 +1,4 @@
1
- import { AgentAdapter } from './types.js';
1
+ import type { AgentAdapter } from './types.js';
2
2
  /**
3
3
  * Universal CLI builder for any agent
4
4
  * Builds commander programs from agent metadata
@@ -46,9 +46,12 @@ export declare class AgentCLI {
46
46
  * Validate provider and model compatibility
47
47
  */
48
48
  private validateCompatibility;
49
+ private promptExternalResume;
49
50
  /**
50
51
  * Run the CLI
51
52
  */
52
53
  run(argv: string[]): Promise<void>;
53
54
  }
55
+ export declare function buildResumeEnvOverride(isExternal: boolean): Record<string, string>;
56
+ export declare function shouldBlockNonInteractiveResume(): boolean;
54
57
  //# sourceMappingURL=AgentCLI.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AgentCLI.d.ts","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAmB1C;;;GAGG;AACH,qBAAa,QAAQ;IAIP,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAmB;gBAEd,OAAO,EAAE,YAAY;IASzC;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB;;OAEG;IACH,OAAO,CAAC,YAAY;IA8EpB;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAQlC;;OAEG;YACW,SAAS;IAqLvB;;OAEG;YACW,iBAAiB;IA8B/B;;OAEG;YACW,UAAU;IA8ExB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgD7B;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzC"}
1
+ {"version":3,"file":"AgentCLI.d.ts","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAyB,MAAM,YAAY,CAAC;AAoBtE;;;GAGG;AACH,qBAAa,QAAQ;IAIP,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAmB;gBAEd,OAAO,EAAE,YAAY;IASzC;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB;;OAEG;IACH,OAAO,CAAC,YAAY;IA+EpB;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAQlC;;OAEG;YACW,SAAS;IAqQvB;;OAEG;YACW,iBAAiB;IA8B/B;;OAEG;YACW,UAAU;IA8ExB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;YAgDf,oBAAoB;IAwClC;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzC;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAElF;AAED,wBAAgB,+BAA+B,IAAI,OAAO,CAEzD"}
@@ -4,6 +4,7 @@ import { join } from 'path';
4
4
  import chalk from 'chalk';
5
5
  import { ConfigLoader } from '../../utils/config.js';
6
6
  import { ensureApiBase, DEFAULT_CODEMIE_BASE_URL } from '../../providers/core/codemie-auth-helpers.js';
7
+ import { AuthMethod, ProviderName } from '../../providers/core/types.js';
7
8
  import { JWTTemplate } from '../../providers/plugins/jwt/jwt.template.js';
8
9
  import { logger } from '../../utils/logger.js';
9
10
  import { getDirname } from '../../utils/paths.js';
@@ -72,6 +73,7 @@ export class AgentCLI {
72
73
  .option('--task <prompt>', 'Execute a single task (agent-specific flag mapping)')
73
74
  .option('--reasoning-effort <level>', 'Reasoning/thinking effort: minimal|low|medium|high|xhigh|max')
74
75
  .option('--resume <session-id>', 'Resume an existing session by ID')
76
+ .option('--no-analytics-report', 'Disable the automatic per-session analytics report written on exit')
75
77
  .allowUnknownOption()
76
78
  .argument('[args...]', `Arguments to pass to ${this.adapter.displayName}`)
77
79
  .action(async (args, options) => {
@@ -170,12 +172,12 @@ export class AgentCLI {
170
172
  // JWT token from CLI overrides everything
171
173
  if (options.jwtToken) {
172
174
  process.env.CODEMIE_JWT_TOKEN = options.jwtToken;
173
- process.env.CODEMIE_AUTH_METHOD = 'jwt';
175
+ process.env.CODEMIE_AUTH_METHOD = AuthMethod.JWT;
174
176
  const hasNoConfig = !options.provider
175
177
  && !(await ConfigLoader.hasGlobalConfig())
176
178
  && !(await ConfigLoader.hasLocalConfig(process.cwd()));
177
179
  if (hasNoConfig) {
178
- config.provider = 'bearer-auth';
180
+ config.provider = ProviderName.BEARER_AUTH;
179
181
  if (!config.model) {
180
182
  config.model = JWTTemplate.recommendedModels?.[0];
181
183
  }
@@ -185,7 +187,7 @@ export class AgentCLI {
185
187
  ? ensureApiBase(config.codeMieUrl)
186
188
  : ensureApiBase(DEFAULT_CODEMIE_BASE_URL);
187
189
  }
188
- config.authMethod = 'jwt';
190
+ config.authMethod = AuthMethod.JWT;
189
191
  }
190
192
  // Validate --reasoning-effort (catches both CLI flag and profile defaults)
191
193
  if (config.reasoningEffort) {
@@ -216,7 +218,7 @@ export class AgentCLI {
216
218
  const requiresAuth = provider?.requiresAuth ?? true; // Default to true for safety
217
219
  // Skip apiKey validation for SSO and JWT authentication methods
218
220
  const authMethod = config.authMethod;
219
- const usesAlternativeAuth = authMethod === 'sso' || authMethod === 'jwt';
221
+ const usesAlternativeAuth = authMethod === AuthMethod.SSO || authMethod === AuthMethod.JWT;
220
222
  if (requiresAuth && !config.apiKey && !usesAlternativeAuth) {
221
223
  missingFields.push('apiKey');
222
224
  }
@@ -257,7 +259,7 @@ export class AgentCLI {
257
259
  // which gets spread after process.env in BaseAgentAdapter.run(), erasing the
258
260
  // 'jwt' value we set in process.env above and causing the proxy to use the SSO path.
259
261
  if (options.jwtToken) {
260
- providerEnv.CODEMIE_AUTH_METHOD = 'jwt';
262
+ providerEnv.CODEMIE_AUTH_METHOD = AuthMethod.JWT;
261
263
  providerEnv.CODEMIE_JWT_TOKEN = options.jwtToken;
262
264
  }
263
265
  // Pass config info for welcome message display
@@ -267,8 +269,76 @@ export class AgentCLI {
267
269
  if (options.status) {
268
270
  providerEnv.CODEMIE_STATUS = '1';
269
271
  }
272
+ // Disable per-session analytics report on exit (default enabled).
273
+ // Commander sets options.analyticsReport = false only when --no-analytics-report is passed.
274
+ if (options.analyticsReport === false) {
275
+ providerEnv.CODEMIE_SESSION_ANALYTICS_REPORT = '0';
276
+ }
270
277
  // Serialize full profile config for proxy plugins (read once at CLI level)
271
278
  providerEnv.CODEMIE_PROFILE_CONFIG = JSON.stringify(config);
279
+ // Resume ownership check — after providerEnv is built so we can extend it
280
+ //
281
+ // options.resume only reflects the CodeMie `--resume <id>` flag. Some agents
282
+ // (e.g. Codex) also accept a native positional `resume <id>` invocation, which
283
+ // Commander's catch-all [args...] absorbs without populating options.resume.
284
+ // Ask the adapter to recognize its own native form so the ownership check still
285
+ // applies to it.
286
+ let nativeResumeId;
287
+ if (!options.resume) {
288
+ try {
289
+ nativeResumeId = this.adapter.extractNativeResumeId?.(args);
290
+ }
291
+ catch (error) {
292
+ logger.debug('[AgentCLI] Native resume id extraction failed; proceeding without validation', {
293
+ agent: this.adapter.name,
294
+ error: error instanceof Error ? error.message : String(error),
295
+ });
296
+ }
297
+ }
298
+ if (options.resume || nativeResumeId) {
299
+ // Strip only control characters before using the value in output.
300
+ // Native resume commands may accept non-UUID identifiers (slugs, ticket IDs, etc.),
301
+ // so we must not validate the format here.
302
+ const resumeId = (options.resume ?? nativeResumeId ?? '').replace(/\p{Cc}/gu, '');
303
+ const resolveResumeOwnership = this.adapter.resolveResumeOwnership?.bind(this.adapter);
304
+ if (resolveResumeOwnership && resumeId) {
305
+ let ownership;
306
+ try {
307
+ ownership = await resolveResumeOwnership({
308
+ resumeId,
309
+ cwd: process.cwd(),
310
+ env: process.env,
311
+ });
312
+ }
313
+ catch (error) {
314
+ logger.debug('[AgentCLI] Resume ownership resolver failed; proceeding without validation', {
315
+ agent: this.adapter.name,
316
+ resumeId,
317
+ error: error instanceof Error ? error.message : String(error),
318
+ });
319
+ }
320
+ const isExternal = ownership?.supported === true && ownership.owned === false;
321
+ if (isExternal) {
322
+ const confirmed = await this.promptExternalResume(resumeId, ownership?.fallbackResumeCommand);
323
+ const { appendAuditEvent } = await import('./session/session-origin-audit.js');
324
+ const auditData = {
325
+ agent: this.adapter.name,
326
+ resumeId,
327
+ ...(ownership?.auditData ?? {}),
328
+ };
329
+ if (!confirmed) {
330
+ appendAuditEvent('resume_blocked', auditData);
331
+ process.exit(1);
332
+ }
333
+ // Inject into subprocess env (for lifecycle hook subprocesses that inherit it)
334
+ // and into the current process env (for same-process consumers such as sso syncProcessor).
335
+ Object.assign(providerEnv, buildResumeEnvOverride(true));
336
+ process.env.CODEMIE_CONV_SYNC_DISABLED = '1';
337
+ appendAuditEvent('resume_external_confirmed', auditData);
338
+ logger.info(`[AgentCLI] External resume confirmed for agent ${this.adapter.name}; conversation sync suppressed`);
339
+ }
340
+ }
341
+ }
272
342
  // Set profile name in logger for log formatting
273
343
  logger.setProfileName(config.name || 'default');
274
344
  // Collect all arguments to pass to the agent
@@ -277,6 +347,8 @@ export class AgentCLI {
277
347
  logger.debug(`[AgentCLI] collected agentArgs: ${JSON.stringify(agentArgs)}`);
278
348
  // Run the agent (welcome message will be shown inside)
279
349
  await this.adapter.run(agentArgs, providerEnv);
350
+ // Clean up the process-level flag set for same-process conversation sync consumers.
351
+ delete process.env.CODEMIE_CONV_SYNC_DISABLED;
280
352
  }
281
353
  catch (error) {
282
354
  // Show user-friendly error message in console first
@@ -398,7 +470,7 @@ export class AgentCLI {
398
470
  collectPassThroughArgs(args, options) {
399
471
  const agentArgs = [...args];
400
472
  // Config-only options (not passed to agent, handled by CodeMie CLI)
401
- const configOnlyOptions = ['profile', 'provider', 'apiKey', 'baseUrl', 'timeout', 'model', 'silent', 'status', 'jwtToken', 'reasoningEffort'];
473
+ const configOnlyOptions = ['profile', 'provider', 'apiKey', 'baseUrl', 'timeout', 'model', 'silent', 'status', 'jwtToken', 'reasoningEffort', 'analyticsReport'];
402
474
  for (const [key, value] of Object.entries(options)) {
403
475
  // Skip config-only options (handled by CodeMie CLI layer)
404
476
  if (configOnlyOptions.includes(key))
@@ -476,6 +548,35 @@ export class AgentCLI {
476
548
  }
477
549
  return true;
478
550
  }
551
+ async promptExternalResume(sessionId, fallbackResumeCommand) {
552
+ const fallbackLine = fallbackResumeCommand
553
+ ? `Use '${fallbackResumeCommand}' to resume without CodeMie tracking.\n`
554
+ : 'Resume without CodeMie tracking using the native agent CLI.\n';
555
+ if (shouldBlockNonInteractiveResume()) {
556
+ console.error(chalk.red(`\n✗ Session ${sessionId} was not created through CodeMie.\n`) +
557
+ chalk.white('Non-interactive mode: resume blocked.\n') +
558
+ chalk.white(fallbackLine));
559
+ return false;
560
+ }
561
+ const { createInterface } = await import('node:readline');
562
+ const rl = createInterface({ input: process.stdin, output: process.stdout });
563
+ console.log(chalk.yellow(`\n⚠ Warning: Session ${sessionId} was not created through CodeMie.`));
564
+ console.log(chalk.white('If you continue:'));
565
+ console.log(chalk.white(' • Token usage and API metrics WILL be tracked via the CodeMie proxy.'));
566
+ console.log(chalk.white(' • Conversation transcript will NOT be synced to your CodeMie account history.\n'));
567
+ console.log(chalk.dim(fallbackResumeCommand
568
+ ? `To resume without any CodeMie tracking, use: ${fallbackResumeCommand}\n`
569
+ : 'To resume without any CodeMie tracking, use the native agent CLI.\n'));
570
+ try {
571
+ const answer = await new Promise((resolve) => {
572
+ rl.question(chalk.yellow('Continue with CodeMie? (y/N): '), resolve);
573
+ });
574
+ return answer.trim().toLowerCase() === 'y';
575
+ }
576
+ finally {
577
+ rl.close();
578
+ }
579
+ }
479
580
  /**
480
581
  * Run the CLI
481
582
  */
@@ -483,4 +584,10 @@ export class AgentCLI {
483
584
  await this.program.parseAsync(argv);
484
585
  }
485
586
  }
587
+ export function buildResumeEnvOverride(isExternal) {
588
+ return isExternal ? { CODEMIE_CONV_SYNC_DISABLED: '1' } : {};
589
+ }
590
+ export function shouldBlockNonInteractiveResume() {
591
+ return !process.stdin.isTTY || process.env.CODEMIE_NO_PROMPTS === '1';
592
+ }
486
593
  //# sourceMappingURL=AgentCLI.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AgentCLI.js","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentCLI.js","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,13 @@ export declare abstract class BaseAgentAdapter implements AgentAdapter {
15
15
  * @param enabled - Whether to enable silent mode
16
16
  */
17
17
  setSilentMode(enabled: boolean): void;
18
+ /**
19
+ * Writes a per-session analytics JSON report on session exit when the agent
20
+ * opts in (`metadata.sessionAnalyticsReport`) and the run did not disable it
21
+ * (`CODEMIE_SESSION_ANALYTICS_REPORT !== '0'`). Non-fatal: any failure is logged
22
+ * and swallowed so session finalization always completes.
23
+ */
24
+ private maybeWriteSessionReport;
18
25
  /**
19
26
  * Get metrics configuration for this agent
20
27
  * Used by post-processor to filter/sanitize metrics
@@ -52,7 +59,7 @@ export declare abstract class BaseAgentAdapter implements AgentAdapter {
52
59
  *
53
60
  * @param version - Specific version, 'supported', or undefined for latest
54
61
  */
55
- installVersion(version?: string): Promise<void>;
62
+ installVersion(version?: string): Promise<string | null>;
56
63
  /**
57
64
  * Uninstall agent via npm
58
65
  */
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAgentAdapter.d.ts","sourceRoot":"","sources":["../../../src/agents/core/BaseAgentAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAe,gBAAgB,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAQ3I,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAuBpE;;;GAGG;AACH,8BAAsB,gBAAiB,YAAW,YAAY;IAC5D,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAQ;IAC5C,SAAgB,QAAQ,EAAE,aAAa,CAAC;gBAE5B,QAAQ,EAAE,aAAa;IAKnC;;;;;OAKG;IACH,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIrC;;;OAGG;IACH,gBAAgB,IAAI,OAAO,YAAY,EAAE,kBAAkB,GAAG,SAAS;IAIvE,IAAI,gBAAgB,IAAI,MAAM,EAAE,GAAG,SAAS,CAE3C;IAED;;;;;;OAMG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIjE;;;;;;OAMG;IACG,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAIvE,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;;;;;;OAOG;IACG,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4BrD;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAehC;;;;;OAKG;IACG,sBAAsB,CAAC,QAAQ,CAAC,EAAE,OAAO,YAAY,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrG;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAcrC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAa1C;;;;;;;OAOG;IACG,yBAAyB,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAuGtE;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA6f/E;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmDxB;;;OAGG;cACa,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBjE;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;;;;;;;;OASG;IACH,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU;IAsFrE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,eAAe,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IASxD;;;;;;;;;;;;;OAaG;cACa,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/D;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,SAAS;IA8BjB;;;;;;;;;;;;;;;OAeG;cACa,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,OAAO,CAAC,IAAI,CAAC;CAoCjB"}
1
+ {"version":3,"file":"BaseAgentAdapter.d.ts","sourceRoot":"","sources":["../../../src/agents/core/BaseAgentAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAe,gBAAgB,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAQ3I,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAuBpE;;;GAGG;AACH,8BAAsB,gBAAiB,YAAW,YAAY;IAC5D,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAQ;IAC5C,SAAgB,QAAQ,EAAE,aAAa,CAAC;gBAE5B,QAAQ,EAAE,aAAa;IAKnC;;;;;OAKG;IACH,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIrC;;;;;OAKG;YACW,uBAAuB;IAiCrC;;;OAGG;IACH,gBAAgB,IAAI,OAAO,YAAY,EAAE,kBAAkB,GAAG,SAAS;IAIvE,IAAI,gBAAgB,IAAI,MAAM,EAAE,GAAG,SAAS,CAE3C;IAED;;;;;;OAMG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIjE;;;;;;OAMG;IACG,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAIvE,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;;;;;;OAOG;IACG,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAkC9D;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAehC;;;;;OAKG;IACG,sBAAsB,CAAC,QAAQ,CAAC,EAAE,OAAO,YAAY,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrG;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAcrC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAa1C;;;;;;;OAOG;IACG,yBAAyB,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAuGtE;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAwgB/E;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmDxB;;;OAGG;cACa,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBjE;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;;;;;;;;OASG;IACH,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU;IAsFrE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,eAAe,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IASxD;;;;;;;;;;;;;OAaG;cACa,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/D;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,SAAS;IA8BjB;;;;;;;;;;;;;;;OAeG;cACa,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,OAAO,CAAC,IAAI,CAAC;CAoCjB"}
@@ -39,6 +39,47 @@ export class BaseAgentAdapter {
39
39
  setSilentMode(enabled) {
40
40
  this.metadata.silentMode = enabled;
41
41
  }
42
+ /**
43
+ * Writes a per-session analytics JSON report on session exit when the agent
44
+ * opts in (`metadata.sessionAnalyticsReport`) and the run did not disable it
45
+ * (`CODEMIE_SESSION_ANALYTICS_REPORT !== '0'`). Non-fatal: any failure is logged
46
+ * and swallowed so session finalization always completes.
47
+ */
48
+ async maybeWriteSessionReport(env) {
49
+ if (!this.metadata.sessionAnalyticsReport)
50
+ return;
51
+ if (env.CODEMIE_SESSION_ANALYTICS_REPORT === '0')
52
+ return;
53
+ const sessionId = env.CODEMIE_SESSION_ID;
54
+ if (!sessionId)
55
+ return;
56
+ try {
57
+ const { generateSessionReport } = await import('../../cli/commands/analytics/report/session-report.js');
58
+ // Email is available in CODEMIE_PROFILE_CONFIG (already parsed at adapter startup for other uses).
59
+ let userEmail;
60
+ if (env.CODEMIE_PROFILE_CONFIG) {
61
+ try {
62
+ const profileConfig = JSON.parse(env.CODEMIE_PROFILE_CONFIG);
63
+ userEmail = profileConfig.userEmail || undefined;
64
+ }
65
+ catch {
66
+ // malformed env — omit email gracefully
67
+ }
68
+ }
69
+ const result = await generateSessionReport({ sessionId, userEmail });
70
+ if (result.written) {
71
+ logger.debug(`[${this.displayName}] Session analytics report written: ${result.written}`);
72
+ }
73
+ else {
74
+ logger.debug(`[${this.displayName}] No analytics data for session ${sessionId}; report skipped`);
75
+ }
76
+ }
77
+ catch (err) {
78
+ logger.warn(`[${this.displayName}] Session analytics report failed (non-fatal)`, {
79
+ error: err instanceof Error ? err.message : String(err),
80
+ });
81
+ }
82
+ }
42
83
  /**
43
84
  * Get metrics configuration for this agent
44
85
  * Used by post-processor to filter/sanitize metrics
@@ -128,6 +169,12 @@ export class BaseAgentAdapter {
128
169
  }
129
170
  throw error;
130
171
  }
172
+ try {
173
+ return await this.getVersion();
174
+ }
175
+ catch {
176
+ return null;
177
+ }
131
178
  }
132
179
  /**
133
180
  * Uninstall agent via npm
@@ -601,7 +648,7 @@ export class BaseAgentAdapter {
601
648
  const { getCommandPath } = await import('../../utils/processes.js');
602
649
  const resolvedPath = await getCommandPath(this.metadata.cliCommand);
603
650
  if (resolvedPath) {
604
- commandPath = isWindows && /[ ()&|<>^%[\]{}]/.test(resolvedPath) ? `"${resolvedPath}"` : resolvedPath;
651
+ commandPath = isWindows && /[ \t,;=()&|<>^%[\]{}]/.test(resolvedPath) ? `"${resolvedPath}"` : resolvedPath;
605
652
  logger.debug(`Resolved command path: ${resolvedPath}`);
606
653
  }
607
654
  else if (!isWindows) {
@@ -639,6 +686,13 @@ export class BaseAgentAdapter {
639
686
  }
640
687
  }
641
688
  }
689
+ // getCommandPath() may return null (binary not in PATH), leaving commandPath as the raw
690
+ // unquoted absolute path from plugin metadata. CMD.EXE treats bare '(' as a group delimiter
691
+ // and tab , ; = as token delimiters, so a path like C:\Users\Name(Org\...\bin\cmd.exe or
692
+ // C:\Users\Name;Org\... must be quoted before shell: true spawn.
693
+ if (isWindows && /[ \t,;=()&|<>^%[\]{}]/.test(commandPath) && !commandPath.startsWith('"')) {
694
+ commandPath = `"${commandPath}"`;
695
+ }
642
696
  // When shell: true is needed (Windows), merge args into command to avoid DEP0190
643
697
  // Node.js deprecation warning: shell mode doesn't escape array arguments, only concatenates them
644
698
  let finalCommand = commandPath;
@@ -706,6 +760,8 @@ export class BaseAgentAdapter {
706
760
  if (code !== null) {
707
761
  await executeAfterRun(this, this.metadata.lifecycle, this.metadata.name, code, env);
708
762
  }
763
+ // Write the per-session analytics report (gated, non-fatal).
764
+ await this.maybeWriteSessionReport(env);
709
765
  // Show goodbye message with random easter egg (skip in silent mode for ACP)
710
766
  if (!this.metadata.silentMode) {
711
767
  console.log(chalk.cyan.bold(getRandomGoodbyeMessage()));