@codemieai/code 0.0.55 → 0.0.56

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 (110) hide show
  1. package/README.md +28 -0
  2. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  3. package/dist/agents/core/AgentCLI.js +10 -2
  4. package/dist/agents/core/AgentCLI.js.map +1 -1
  5. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  6. package/dist/agents/core/BaseAgentAdapter.js +20 -6
  7. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  8. package/dist/agents/core/session/ensure-session.d.ts.map +1 -1
  9. package/dist/agents/core/session/ensure-session.js +7 -2
  10. package/dist/agents/core/session/ensure-session.js.map +1 -1
  11. package/dist/agents/core/session/types.d.ts +1 -0
  12. package/dist/agents/core/session/types.d.ts.map +1 -1
  13. package/dist/agents/plugins/claude/claude.plugin.js +4 -4
  14. package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
  15. package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +1 -1
  16. package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/SKILL.md +273 -0
  17. package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/style-guide/css/base.css +166 -0
  18. package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/style-guide/css/buttons.css +253 -0
  19. package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/style-guide/css/components.css +605 -0
  20. package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/style-guide/css/forms.css +550 -0
  21. package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/style-guide/css/layout.css +410 -0
  22. package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/style-guide/css/tokens.css +323 -0
  23. package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/style-guide/css/typography.css +155 -0
  24. package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/style-guide/css/utilities.css +238 -0
  25. package/dist/agents/plugins/claude/plugin/skills/msgraph/scripts/msgraph.js +1 -0
  26. package/dist/cli/commands/hook.d.ts +2 -0
  27. package/dist/cli/commands/hook.d.ts.map +1 -1
  28. package/dist/cli/commands/hook.js +36 -31
  29. package/dist/cli/commands/hook.js.map +1 -1
  30. package/dist/cli/commands/setup.js +11 -1
  31. package/dist/cli/commands/setup.js.map +1 -1
  32. package/dist/providers/core/codemie-auth-helpers.d.ts +22 -0
  33. package/dist/providers/core/codemie-auth-helpers.d.ts.map +1 -0
  34. package/dist/providers/core/codemie-auth-helpers.js +118 -0
  35. package/dist/providers/core/codemie-auth-helpers.js.map +1 -0
  36. package/dist/providers/core/index.d.ts +1 -0
  37. package/dist/providers/core/index.d.ts.map +1 -1
  38. package/dist/providers/core/index.js +1 -0
  39. package/dist/providers/core/index.js.map +1 -1
  40. package/dist/providers/core/types.d.ts +4 -0
  41. package/dist/providers/core/types.d.ts.map +1 -1
  42. package/dist/providers/core/types.js.map +1 -1
  43. package/dist/providers/index.d.ts +2 -0
  44. package/dist/providers/index.d.ts.map +1 -1
  45. package/dist/providers/index.js +2 -0
  46. package/dist/providers/index.js.map +1 -1
  47. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.auth.d.ts +11 -0
  48. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.auth.d.ts.map +1 -0
  49. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.auth.js +30 -0
  50. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.auth.js.map +1 -0
  51. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.setup-steps.d.ts +8 -0
  52. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.setup-steps.d.ts.map +1 -0
  53. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.setup-steps.js +88 -0
  54. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.setup-steps.js.map +1 -0
  55. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.template.d.ts +11 -0
  56. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.template.d.ts.map +1 -0
  57. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.template.js +119 -0
  58. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.template.js.map +1 -0
  59. package/dist/providers/plugins/anthropic-subscription/index.d.ts +9 -0
  60. package/dist/providers/plugins/anthropic-subscription/index.d.ts.map +1 -0
  61. package/dist/providers/plugins/anthropic-subscription/index.js +9 -0
  62. package/dist/providers/plugins/anthropic-subscription/index.js.map +1 -0
  63. package/dist/providers/plugins/jwt/jwt.setup-steps.js +1 -1
  64. package/dist/providers/plugins/jwt/jwt.setup-steps.js.map +1 -1
  65. package/dist/providers/plugins/sso/proxy/plugins/claude-thinking-transformer.plugin.d.ts +30 -0
  66. package/dist/providers/plugins/sso/proxy/plugins/claude-thinking-transformer.plugin.d.ts.map +1 -0
  67. package/dist/providers/plugins/sso/proxy/plugins/claude-thinking-transformer.plugin.js +111 -0
  68. package/dist/providers/plugins/sso/proxy/plugins/claude-thinking-transformer.plugin.js.map +1 -0
  69. package/dist/providers/plugins/sso/proxy/plugins/index.d.ts +2 -1
  70. package/dist/providers/plugins/sso/proxy/plugins/index.d.ts.map +1 -1
  71. package/dist/providers/plugins/sso/proxy/plugins/index.js +3 -1
  72. package/dist/providers/plugins/sso/proxy/plugins/index.js.map +1 -1
  73. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.d.ts.map +1 -1
  74. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js +9 -7
  75. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js.map +1 -1
  76. package/dist/providers/plugins/sso/proxy/plugins/types.d.ts +1 -0
  77. package/dist/providers/plugins/sso/proxy/plugins/types.d.ts.map +1 -1
  78. package/dist/providers/plugins/sso/proxy/proxy-types.d.ts +2 -0
  79. package/dist/providers/plugins/sso/proxy/proxy-types.d.ts.map +1 -1
  80. package/dist/providers/plugins/sso/proxy/sso.proxy.d.ts.map +1 -1
  81. package/dist/providers/plugins/sso/proxy/sso.proxy.js +10 -0
  82. package/dist/providers/plugins/sso/proxy/sso.proxy.js.map +1 -1
  83. package/dist/providers/plugins/sso/session/processors/metrics/metrics-aggregator.js +1 -1
  84. package/dist/providers/plugins/sso/session/processors/metrics/metrics-aggregator.js.map +1 -1
  85. package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.d.ts +2 -2
  86. package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.d.ts.map +1 -1
  87. package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.js +4 -4
  88. package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.js.map +1 -1
  89. package/dist/providers/plugins/sso/sso.auth.d.ts +0 -4
  90. package/dist/providers/plugins/sso/sso.auth.d.ts.map +1 -1
  91. package/dist/providers/plugins/sso/sso.auth.js +3 -13
  92. package/dist/providers/plugins/sso/sso.auth.js.map +1 -1
  93. package/dist/providers/plugins/sso/sso.http-client.d.ts +3 -42
  94. package/dist/providers/plugins/sso/sso.http-client.d.ts.map +1 -1
  95. package/dist/providers/plugins/sso/sso.http-client.js +4 -75
  96. package/dist/providers/plugins/sso/sso.http-client.js.map +1 -1
  97. package/dist/providers/plugins/sso/sso.setup-steps.d.ts.map +1 -1
  98. package/dist/providers/plugins/sso/sso.setup-steps.js +15 -66
  99. package/dist/providers/plugins/sso/sso.setup-steps.js.map +1 -1
  100. package/dist/providers/plugins/sso/sso.template.d.ts.map +1 -1
  101. package/dist/providers/plugins/sso/sso.template.js +2 -1
  102. package/dist/providers/plugins/sso/sso.template.js.map +1 -1
  103. package/dist/utils/config.d.ts.map +1 -1
  104. package/dist/utils/config.js +17 -0
  105. package/dist/utils/config.js.map +1 -1
  106. package/dist/utils/processes.d.ts +9 -0
  107. package/dist/utils/processes.d.ts.map +1 -1
  108. package/dist/utils/processes.js +21 -0
  109. package/dist/utils/processes.js.map +1 -1
  110. package/package.json +3 -3
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Anthropic Subscription Provider Template
3
+ *
4
+ * Template definition for native Claude Code authentication using
5
+ * an existing Anthropic subscription login.
6
+ *
7
+ * Auto-registers on import via registerProvider().
8
+ */
9
+ import { registerProvider } from '../../core/decorators.js';
10
+ import { ensureApiBase } from '../../core/codemie-auth-helpers.js';
11
+ export const AnthropicSubscriptionTemplate = registerProvider({
12
+ name: 'anthropic-subscription',
13
+ displayName: 'Anthropic Subscription',
14
+ description: 'Native Claude Code authentication using your Claude subscription',
15
+ defaultBaseUrl: 'https://api.anthropic.com',
16
+ requiresAuth: false,
17
+ authType: 'none',
18
+ priority: 16,
19
+ defaultProfileName: 'anthropic-subscription',
20
+ recommendedModels: [
21
+ 'claude-sonnet-4-6',
22
+ 'claude-opus-4-6',
23
+ 'claude-4-5-haiku',
24
+ ],
25
+ capabilities: ['streaming', 'tools', 'function-calling', 'vision'],
26
+ supportsModelInstallation: false,
27
+ supportsStreaming: true,
28
+ agentHooks: {
29
+ '*': {
30
+ async beforeRun(env, config) {
31
+ if (config.agent !== 'claude') {
32
+ return env;
33
+ }
34
+ // Return a copy so callers that hold a reference to the original env are not affected.
35
+ const updated = { ...env };
36
+ // Native Claude subscription auth relies on Claude Code's stored login.
37
+ // Explicit Anthropic API/proxy env vars override that flow and can cause 401s.
38
+ delete updated.ANTHROPIC_AUTH_TOKEN;
39
+ delete updated.ANTHROPIC_API_KEY;
40
+ delete updated.ANTHROPIC_BASE_URL;
41
+ // Reuse the Claude Code plugin hooks so local metrics/conversation files are
42
+ // produced even though model traffic is not proxied through CodeMie.
43
+ //
44
+ // Dynamic import avoids a circular dependency: AgentRegistry imports all plugins
45
+ // (including this provider template) as side effects, so a static top-level import
46
+ // here would form a cycle. The dynamic import defers resolution until runtime when
47
+ // the registry is already fully initialised.
48
+ try {
49
+ const { AgentRegistry } = await import('../../../agents/registry.js');
50
+ const agent = AgentRegistry.getAgent('claude');
51
+ const installer = agent?.getExtensionInstaller?.();
52
+ if (installer) {
53
+ const result = await installer.install();
54
+ updated.CODEMIE_CLAUDE_EXTENSION_DIR = result.targetPath;
55
+ if (!result.success) {
56
+ const { logger } = await import('../../../utils/logger.js');
57
+ logger.warn(`[claude] Extension installation returned failure: ${result.error || 'unknown error'}`);
58
+ logger.warn('[claude] Continuing without extension - hooks may not be available');
59
+ }
60
+ }
61
+ }
62
+ catch (error) {
63
+ const { logger } = await import('../../../utils/logger.js');
64
+ const errorMsg = error instanceof Error ? error.message : String(error);
65
+ logger.error(`[claude] Extension installation threw exception: ${errorMsg}`);
66
+ logger.warn('[claude] Continuing without extension - hooks may not be available');
67
+ }
68
+ return updated;
69
+ }
70
+ },
71
+ 'claude': {
72
+ enrichArgs(args, _config) {
73
+ const pluginDir = process.env.CODEMIE_CLAUDE_EXTENSION_DIR;
74
+ if (!pluginDir || args.some(arg => arg === '--plugin-dir')) {
75
+ return args;
76
+ }
77
+ return ['--plugin-dir', pluginDir, ...args];
78
+ }
79
+ }
80
+ },
81
+ // Claude Code should use its own stored login/session instead of a placeholder token.
82
+ exportEnvVars: (config) => {
83
+ const env = {
84
+ // transformEnvVars() runs before beforeRun(), and beforeRun() removes agent auth vars
85
+ // for native Claude auth before the Claude process is spawned.
86
+ CODEMIE_API_KEY: '',
87
+ };
88
+ if (config.codeMieUrl) {
89
+ env.CODEMIE_URL = config.codeMieUrl;
90
+ env.CODEMIE_SYNC_API_URL = ensureApiBase(config.codeMieUrl);
91
+ }
92
+ if (config.codeMieProject) {
93
+ env.CODEMIE_PROJECT = config.codeMieProject;
94
+ }
95
+ return env;
96
+ },
97
+ setupInstructions: `
98
+ # Anthropic Subscription Setup Instructions
99
+
100
+ Use this option when Claude Code is already authenticated with your Anthropic account
101
+ and you want CodeMie to use that native login flow directly.
102
+
103
+ ## Prerequisites
104
+
105
+ 1. Install Claude Code
106
+ 2. Authenticate Claude Code with your Anthropic subscription
107
+
108
+ \`\`\`bash
109
+ claude auth login
110
+ \`\`\`
111
+
112
+ ## Notes
113
+
114
+ - No API key is stored in CodeMie for this provider
115
+ - Claude Code uses its existing local authentication/session
116
+ - This provider is intended for native \`codemie-claude\` usage
117
+ `
118
+ });
119
+ //# sourceMappingURL=anthropic-subscription.template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anthropic-subscription.template.js","sourceRoot":"","sources":["../../../../src/providers/plugins/anthropic-subscription/anthropic-subscription.template.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Anthropic Subscription Provider - Complete Provider Implementation
3
+ *
4
+ * Native Claude Code authentication via an existing Anthropic subscription.
5
+ * Auto-registers with ProviderRegistry on import.
6
+ */
7
+ export { AnthropicSubscriptionTemplate } from './anthropic-subscription.template.js';
8
+ export { AnthropicSubscriptionSetupSteps } from './anthropic-subscription.setup-steps.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/providers/plugins/anthropic-subscription/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,EAAE,+BAA+B,EAAE,MAAM,yCAAyC,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Anthropic Subscription Provider - Complete Provider Implementation
3
+ *
4
+ * Native Claude Code authentication via an existing Anthropic subscription.
5
+ * Auto-registers with ProviderRegistry on import.
6
+ */
7
+ export { AnthropicSubscriptionTemplate } from './anthropic-subscription.template.js';
8
+ export { AnthropicSubscriptionSetupSteps } from './anthropic-subscription.setup-steps.js';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/providers/plugins/anthropic-subscription/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,EAAE,+BAA+B,EAAE,MAAM,yCAAyC,CAAC"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import inquirer from 'inquirer';
8
8
  import chalk from 'chalk';
9
- import { ensureApiBase } from '../sso/sso.http-client.js';
9
+ import { ensureApiBase } from '../../core/codemie-auth-helpers.js';
10
10
  export const JWTBearerSetupSteps = {
11
11
  name: 'bearer-auth',
12
12
  async getCredentials(_isUpdate) {
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.setup-steps.js","sourceRoot":"","sources":["../../../../src/providers/plugins/jwt/jwt.setup-steps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jwt.setup-steps.js","sourceRoot":"","sources":["../../../../src/providers/plugins/jwt/jwt.setup-steps.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,MAAM,CAAC,MAAM,mBAAmB,GAAuB;IACrD,IAAI,EAAE,aAAa;IAEnB,KAAK,CAAC,cAAc,CAAC,SAAmB;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAC;QACjF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,6CAA6C,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC,CAAC;QAElF,sBAAsB;QACtB,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACvC;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,mBAAmB;gBAC5B,OAAO,EAAE,8BAA8B;gBACvC,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;oBAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;wBAAE,OAAO,qBAAqB,CAAC;oBAChD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;wBAClE,OAAO,4DAA4D,CAAC;oBACtE,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;aACF;SACF,CAAC,CAAC;QAEH,+CAA+C;QAC/C,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAE7C,gEAAgE;QAChE,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;QAE1C,+CAA+C;QAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC,CAAC;QAC9F,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;QAEzD,MAAM,kBAAkB,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC/C;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,yCAAyC;gBAClD,OAAO,EAAE,KAAK;aACf;SACF,CAAC,CAAC;QAEH,IAAI,WAAW,GAAG,mBAAmB,CAAC;QAEtC,IAAI,kBAAkB,CAAC,YAAY,EAAE,CAAC;YACpC,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBAC1C;oBACE,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,4BAA4B;oBACrC,OAAO,EAAE,mBAAmB;oBAC5B,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;wBAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;4BAAE,OAAO,2BAA2B,CAAC;wBACtD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;4BACtC,OAAO,uDAAuD,CAAC;wBACjE,CAAC;wBACD,OAAO,IAAI,CAAC;oBACd,CAAC;iBACF;aACF,CAAC,CAAC;YAEH,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC;QACrC,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,WAAW,wBAAwB,CAAC,CAAC,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC,CAAC;QAEtF,6CAA6C;QAC7C,OAAO;YACL,OAAO,EAAG,2BAA2B;YACrC,gBAAgB,EAAE;gBAChB,UAAU,EAAG,0BAA0B;gBACvC,UAAU,EAAE,KAAK;gBACjB,SAAS,EAAE;oBACT,WAAW;oBACX,kEAAkE;iBACnE;aACF;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,YAAiC;QACjD,sFAAsF;QACtF,sDAAsD;QACtD,OAAO;YACL,mBAAmB;YACnB,iBAAiB;YACjB,kBAAkB;YAClB,aAAa;YACb,QAAQ;YACR,aAAa;SACd,CAAC;IACJ,CAAC;IAED,WAAW,CACT,WAAgC,EAChC,aAAqB;QAErB,MAAM,SAAS,GAAG,WAAW,CAAC,gBAAgB,EAAE,SAEnC,CAAC;QAEd,OAAO;YACL,QAAQ,EAAE,aAAa;YACvB,UAAU,EAAE,WAAW,CAAC,gBAAgB,EAAE,UAAgC,EAAG,wBAAwB;YACrG,OAAO,EAAE,WAAW,CAAC,OAAO,EAAG,2BAA2B;YAC1D,KAAK,EAAE,aAAa;YACpB,UAAU,EAAE,KAAK;YACjB,SAAS;SACV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA4B;QAC7C,6CAA6C;QAC7C,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,EAAE,WAAW,IAAI,mBAAmB,CAAC;QACzE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;QAElE,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,0BAA0B,WAAW,uBAAuB;aACpE,CAAC;QACJ,CAAC;QAED,8BAA8B;QAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,8DAA8D;aACtE,CAAC;QACJ,CAAC;QAED,wCAAwC;QACxC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YACvE,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC;gBACnD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;gBACrC,OAAO;oBACL,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,wBAAwB,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,EAAE;oBAClE,SAAS;iBACV,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;QAED,oCAAoC;QACpC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;CACF,CAAC"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Claude Thinking Transformer Plugin
3
+ * Priority: 16 (runs after Request Sanitizer at 15, before header injection at 20)
4
+ *
5
+ * Transforms thinking parameters for Claude models that require the new adaptive
6
+ * thinking API (e.g. claude-opus-4-7).
7
+ *
8
+ * Problem: Claude Code sends `thinking: { type: "enabled", budget_tokens: N }`
9
+ * for Opus models. claude-opus-4-7 rejects this with HTTP 400:
10
+ * "thinking.type.enabled" is not supported for this model. Use
11
+ * "thinking.type.adaptive" and "output_config.effort" instead.
12
+ *
13
+ * Fix: When the request model matches a Claude 4.7+ pattern:
14
+ * - "enabled" → thinking: { type: "adaptive" } + output_config.effort (derived
15
+ * from budget_tokens; only written if not already present)
16
+ * - "disabled" → delete the thinking field entirely (model does not accept this value)
17
+ *
18
+ * Scope: Only enabled for codemie-claude agent (Claude Code via SSO proxy).
19
+ *
20
+ * To add support for a new model: append a pattern to ADAPTIVE_THINKING_MODEL_PATTERNS.
21
+ */
22
+ import { ProxyPlugin, PluginContext, ProxyInterceptor } from './types.js';
23
+ export declare class ClaudeThinkingTransformerPlugin implements ProxyPlugin {
24
+ id: string;
25
+ name: string;
26
+ version: string;
27
+ priority: number;
28
+ createInterceptor(context: PluginContext): Promise<ProxyInterceptor>;
29
+ }
30
+ //# sourceMappingURL=claude-thinking-transformer.plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-thinking-transformer.plugin.d.ts","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/claude-thinking-transformer.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAiC1E,qBAAa,+BAAgC,YAAW,WAAW;IACjE,EAAE,SAAgD;IAClD,IAAI,SAAiC;IACrC,OAAO,SAAW;IAClB,QAAQ,SAAM;IAER,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAS3E"}
@@ -0,0 +1,111 @@
1
+ /**
2
+ * Claude Thinking Transformer Plugin
3
+ * Priority: 16 (runs after Request Sanitizer at 15, before header injection at 20)
4
+ *
5
+ * Transforms thinking parameters for Claude models that require the new adaptive
6
+ * thinking API (e.g. claude-opus-4-7).
7
+ *
8
+ * Problem: Claude Code sends `thinking: { type: "enabled", budget_tokens: N }`
9
+ * for Opus models. claude-opus-4-7 rejects this with HTTP 400:
10
+ * "thinking.type.enabled" is not supported for this model. Use
11
+ * "thinking.type.adaptive" and "output_config.effort" instead.
12
+ *
13
+ * Fix: When the request model matches a Claude 4.7+ pattern:
14
+ * - "enabled" → thinking: { type: "adaptive" } + output_config.effort (derived
15
+ * from budget_tokens; only written if not already present)
16
+ * - "disabled" → delete the thinking field entirely (model does not accept this value)
17
+ *
18
+ * Scope: Only enabled for codemie-claude agent (Claude Code via SSO proxy).
19
+ *
20
+ * To add support for a new model: append a pattern to ADAPTIVE_THINKING_MODEL_PATTERNS.
21
+ */
22
+ import { logger } from '../../../../../utils/logger.js';
23
+ /**
24
+ * Model name patterns that require the adaptive thinking API.
25
+ * Matches claude-opus-4-7, claude-opus-4-7-20250514, and future date-tagged variants.
26
+ * Extend this list as Anthropic migrates additional models — see EPMCDME-11821.
27
+ */
28
+ const ADAPTIVE_THINKING_MODEL_PATTERNS = [
29
+ /claude-opus-4-[7-9](?:[^0-9]|$)/i, // claude-opus-4-7/8/9 and date-tagged variants (e.g. claude-opus-4-7-20250514); excludes claude-opus-4-70+
30
+ ];
31
+ function modelRequiresAdaptiveThinking(modelName) {
32
+ return ADAPTIVE_THINKING_MODEL_PATTERNS.some(p => p.test(modelName));
33
+ }
34
+ /**
35
+ * Map legacy budget_tokens to the closest output_config.effort level.
36
+ *
37
+ * budget_tokens was the maximum token budget for thinking in the old API.
38
+ * effort is a coarser control in the new API: low / medium / high.
39
+ */
40
+ function budgetTokensToEffort(budgetTokens) {
41
+ const tokens = typeof budgetTokens === 'number' ? budgetTokens : 0;
42
+ if (tokens <= 2048)
43
+ return 'low';
44
+ if (tokens <= 8192)
45
+ return 'medium';
46
+ return 'high';
47
+ }
48
+ /** Agent that sends Claude API requests through the codemie proxy */
49
+ const ALLOWED_AGENT = 'codemie-claude';
50
+ export class ClaudeThinkingTransformerPlugin {
51
+ id = '@codemie/proxy-claude-thinking-transformer';
52
+ name = 'Claude Thinking Transformer';
53
+ version = '1.0.0';
54
+ priority = 16; // After RequestSanitizer (15), before HeaderInjection (20)
55
+ async createInterceptor(context) {
56
+ const clientType = context.config.clientType;
57
+ if (!clientType || clientType !== ALLOWED_AGENT) {
58
+ throw new Error(`Plugin disabled for agent: ${clientType}`);
59
+ }
60
+ // Pass the configured model as a fallback for requests that omit body.model
61
+ const configModel = context.config.model;
62
+ return new ClaudeThinkingTransformerInterceptor(configModel);
63
+ }
64
+ }
65
+ class ClaudeThinkingTransformerInterceptor {
66
+ configModel;
67
+ name = 'claude-thinking-transformer';
68
+ constructor(configModel) {
69
+ this.configModel = configModel;
70
+ }
71
+ async onRequest(context) {
72
+ if (!context.requestBody || !context.headers['content-type']?.includes('application/json')) {
73
+ return;
74
+ }
75
+ try {
76
+ const bodyStr = context.requestBody.toString('utf-8');
77
+ const body = JSON.parse(bodyStr);
78
+ const thinkingType = body.thinking?.type;
79
+ if (thinkingType !== 'enabled' && thinkingType !== 'disabled') {
80
+ return;
81
+ }
82
+ // Resolve model: prefer request body, fall back to proxy config
83
+ const model = (typeof body.model === 'string' && body.model) || this.configModel || '';
84
+ if (!model || !modelRequiresAdaptiveThinking(model)) {
85
+ return;
86
+ }
87
+ if (thinkingType === 'enabled') {
88
+ const effort = budgetTokensToEffort(body.thinking.budget_tokens);
89
+ // Replace old thinking object with new adaptive format
90
+ body.thinking = { type: 'adaptive' };
91
+ // Set output_config.effort only if the caller hasn't already specified it
92
+ if (!body.output_config?.effort) {
93
+ body.output_config = { ...(body.output_config ?? {}), effort };
94
+ }
95
+ logger.debug(`[${this.name}] Transformed thinking: "enabled" → "adaptive", effort="${effort}" for model: ${model}`);
96
+ }
97
+ else {
98
+ // thinking.type === 'disabled': model does not accept this value — remove the field
99
+ delete body.thinking;
100
+ logger.debug(`[${this.name}] Removed unsupported thinking.type="disabled" for model: ${model}`);
101
+ }
102
+ const newBodyStr = JSON.stringify(body);
103
+ context.requestBody = Buffer.from(newBodyStr, 'utf-8');
104
+ context.headers['content-length'] = String(context.requestBody.length);
105
+ }
106
+ catch {
107
+ // Not valid JSON or unexpected structure — pass through unchanged
108
+ }
109
+ }
110
+ }
111
+ //# sourceMappingURL=claude-thinking-transformer.plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-thinking-transformer.plugin.js","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/claude-thinking-transformer.plugin.ts"],"names":[],"mappings":"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"}
@@ -10,13 +10,14 @@ import { SSOAuthPlugin } from './sso-auth.plugin.js';
10
10
  import { JWTAuthPlugin } from './jwt-auth.plugin.js';
11
11
  import { HeaderInjectionPlugin } from './header-injection.plugin.js';
12
12
  import { RequestSanitizerPlugin } from './request-sanitizer.plugin.js';
13
+ import { ClaudeThinkingTransformerPlugin } from './claude-thinking-transformer.plugin.js';
13
14
  import { LoggingPlugin } from './logging.plugin.js';
14
15
  /**
15
16
  * Register core plugins
16
17
  * Called at app startup
17
18
  */
18
19
  export declare function registerCorePlugins(): void;
19
- export { MCPAuthPlugin, EndpointBlockerPlugin, SSOAuthPlugin, JWTAuthPlugin, HeaderInjectionPlugin, RequestSanitizerPlugin, LoggingPlugin };
20
+ export { MCPAuthPlugin, EndpointBlockerPlugin, SSOAuthPlugin, JWTAuthPlugin, HeaderInjectionPlugin, RequestSanitizerPlugin, ClaudeThinkingTransformerPlugin, LoggingPlugin, };
20
21
  export { SSOSessionSyncPlugin } from './sso.session-sync.plugin.js';
21
22
  export { getPluginRegistry, resetPluginRegistry } from './registry.js';
22
23
  export * from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAY1C;AAMD,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,aAAa,EAAE,aAAa,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,aAAa,EAAE,CAAC;AAC5I,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACvE,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,+BAA+B,EAAE,MAAM,yCAAyC,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAa1C;AAMD,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,+BAA+B,EAC/B,aAAa,GACd,CAAC;AACF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACvE,cAAc,YAAY,CAAC"}
@@ -11,6 +11,7 @@ import { SSOAuthPlugin } from './sso-auth.plugin.js';
11
11
  import { JWTAuthPlugin } from './jwt-auth.plugin.js';
12
12
  import { HeaderInjectionPlugin } from './header-injection.plugin.js';
13
13
  import { RequestSanitizerPlugin } from './request-sanitizer.plugin.js';
14
+ import { ClaudeThinkingTransformerPlugin } from './claude-thinking-transformer.plugin.js';
14
15
  import { LoggingPlugin } from './logging.plugin.js';
15
16
  import { SSOSessionSyncPlugin } from './sso.session-sync.plugin.js';
16
17
  /**
@@ -25,6 +26,7 @@ export function registerCorePlugins() {
25
26
  registry.register(new SSOAuthPlugin());
26
27
  registry.register(new JWTAuthPlugin());
27
28
  registry.register(new RequestSanitizerPlugin()); // Priority 15 - strips unsupported reasoning params
29
+ registry.register(new ClaudeThinkingTransformerPlugin()); // Priority 16 - transforms thinking params for Claude 4.7+ models
28
30
  registry.register(new HeaderInjectionPlugin());
29
31
  registry.register(new LoggingPlugin()); // Always enabled - logs to log files at INFO level
30
32
  registry.register(new SSOSessionSyncPlugin()); // Priority 100 - syncs sessions via multiple processors
@@ -32,7 +34,7 @@ export function registerCorePlugins() {
32
34
  // Auto-register on import
33
35
  registerCorePlugins();
34
36
  // Re-export for convenience
35
- export { MCPAuthPlugin, EndpointBlockerPlugin, SSOAuthPlugin, JWTAuthPlugin, HeaderInjectionPlugin, RequestSanitizerPlugin, LoggingPlugin };
37
+ export { MCPAuthPlugin, EndpointBlockerPlugin, SSOAuthPlugin, JWTAuthPlugin, HeaderInjectionPlugin, RequestSanitizerPlugin, ClaudeThinkingTransformerPlugin, LoggingPlugin, };
36
38
  export { SSOSessionSyncPlugin } from './sso.session-sync.plugin.js';
37
39
  export { getPluginRegistry, resetPluginRegistry } from './registry.js';
38
40
  export * from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;IAErC,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,CAAU,sCAAsC;IACvF,QAAQ,CAAC,QAAQ,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC,CAAC,+CAA+C;IAC/F,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,sBAAsB,EAAE,CAAC,CAAC,CAAC,oDAAoD;IACrG,QAAQ,CAAC,QAAQ,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,mDAAmD;IAC3F,QAAQ,CAAC,QAAQ,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC,CAAC,wDAAwD;AACzG,CAAC;AAED,0BAA0B;AAC1B,mBAAmB,EAAE,CAAC;AAEtB,4BAA4B;AAC5B,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,aAAa,EAAE,aAAa,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,aAAa,EAAE,CAAC;AAC5I,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACvE,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,+BAA+B,EAAE,MAAM,yCAAyC,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;IAErC,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,CAAU,sCAAsC;IACvF,QAAQ,CAAC,QAAQ,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC,CAAC,+CAA+C;IAC/F,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,sBAAsB,EAAE,CAAC,CAAC,CAAC,oDAAoD;IACrG,QAAQ,CAAC,QAAQ,CAAC,IAAI,+BAA+B,EAAE,CAAC,CAAC,CAAC,kEAAkE;IAC5H,QAAQ,CAAC,QAAQ,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,mDAAmD;IAC3F,QAAQ,CAAC,QAAQ,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC,CAAC,wDAAwD;AACzG,CAAC;AAED,0BAA0B;AAC1B,mBAAmB,EAAE,CAAC;AAEtB,4BAA4B;AAC5B,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,+BAA+B,EAC/B,aAAa,GACd,CAAC;AACF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACvE,cAAc,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sso.session-sync.plugin.d.ts","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAM1E,qBAAa,oBAAqB,YAAW,WAAW;IACtD,EAAE,SAA+B;IACjC,IAAI,SAAgC;IACpC,OAAO,SAAW;IAClB,QAAQ,SAAO;IAET,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA2C1E;;;OAGG;IACH,OAAO,CAAC,aAAa;IAiBrB;;;OAGG;IACH,OAAO,CAAC,eAAe;CAgBxB"}
1
+ {"version":3,"file":"sso.session-sync.plugin.d.ts","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAO1E,qBAAa,oBAAqB,YAAW,WAAW;IACtD,EAAE,SAA+B;IACjC,IAAI,SAAgC;IACpC,OAAO,SAAW;IAClB,QAAQ,SAAO;IAET,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA6C1E;;;OAGG;IACH,OAAO,CAAC,aAAa;IAiBrB;;;OAGG;IACH,OAAO,CAAC,eAAe;CAgBxB"}
@@ -21,38 +21,40 @@
21
21
  */
22
22
  import { logger } from '../../../../../utils/logger.js';
23
23
  import { SessionSyncer } from '../../session/SessionSyncer.js';
24
+ import { ConfigurationError } from '../../../../../utils/errors.js';
24
25
  export class SSOSessionSyncPlugin {
25
26
  id = '@codemie/sso-session-sync';
26
27
  name = 'SSO Session Sync (Unified)';
27
28
  version = '1.0.0';
28
29
  priority = 100; // Run after logging (priority 50)
29
30
  async createInterceptor(context) {
31
+ const syncCredentials = context.syncCredentials || context.credentials;
30
32
  // Only create interceptor if we have necessary context
31
33
  if (!context.config.sessionId) {
32
34
  logger.debug('[SSOSessionSyncPlugin] Skipping: Session ID not available');
33
- throw new Error('Session ID not available (session sync disabled)');
35
+ throw new ConfigurationError('Session ID not available (session sync disabled)');
34
36
  }
35
37
  // Guard: skip if credentials are JWT (not SSO)
36
- if (!context.credentials || !('cookies' in context.credentials)) {
38
+ if (!syncCredentials || !('cookies' in syncCredentials)) {
37
39
  logger.debug('[SSOSessionSyncPlugin] Skipping: Not SSO credentials');
38
- throw new Error('SSO credentials not available (session sync disabled)');
40
+ throw new ConfigurationError('SSO credentials not available (session sync disabled)');
39
41
  }
40
42
  if (!context.config.clientType) {
41
43
  logger.debug('[SSOSessionSyncPlugin] Skipping: Client type not available');
42
- throw new Error('Client type not available (session sync disabled)');
44
+ throw new ConfigurationError('Client type not available (session sync disabled)');
43
45
  }
44
46
  // Check if sync is enabled (from config or env var)
45
47
  const syncEnabled = this.isSyncEnabled(context);
46
48
  if (!syncEnabled) {
47
49
  logger.debug('[SSOSessionSyncPlugin] Skipping: Session sync disabled by configuration');
48
- throw new Error('Session sync disabled by configuration');
50
+ throw new ConfigurationError('Session sync disabled by configuration');
49
51
  }
50
52
  logger.debug('[SSOSessionSyncPlugin] Initializing unified session sync');
51
53
  // Check if dry-run mode is enabled
52
54
  const dryRun = this.isDryRunEnabled(context);
53
55
  // Cast credentials to SSOCredentials (already validated above)
54
- const ssoCredentials = context.credentials;
55
- return new SSOSessionSyncInterceptor(context.config.sessionId, context.config.targetApiUrl, ssoCredentials.cookies, context.config.clientType, context.config.version, dryRun);
56
+ const ssoCredentials = syncCredentials;
57
+ return new SSOSessionSyncInterceptor(context.config.sessionId, context.config.syncApiUrl || context.config.targetApiUrl, ssoCredentials.cookies, context.config.clientType, context.config.version, dryRun);
56
58
  }
57
59
  /**
58
60
  * Check if session sync is enabled
@@ -1 +1 @@
1
- {"version":3,"file":"sso.session-sync.plugin.js","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sso.session-sync.plugin.js","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,7 @@ export interface PluginContext {
39
39
  config: ProxyConfig;
40
40
  logger: typeof logger;
41
41
  credentials?: SSOCredentials | JWTCredentials;
42
+ syncCredentials?: SSOCredentials | JWTCredentials;
42
43
  profileConfig?: CodeMieConfigOptions;
43
44
  [key: string]: unknown;
44
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/providers/plugins/sso/proxy/plugins/types.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,8 @@ export interface ProxyConfig {
26
26
  repository?: string;
27
27
  branch?: string;
28
28
  project?: string;
29
+ syncApiUrl?: string;
30
+ syncCodeMieUrl?: string;
29
31
  }
30
32
  /**
31
33
  * Proxy context - shared state across interceptors
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-types.d.ts","sourceRoot":"","sources":["../../../../../src/providers/plugins/sso/proxy/proxy-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,UAAU,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB"}
1
+ {"version":3,"file":"proxy-types.d.ts","sourceRoot":"","sources":["../../../../../src/providers/plugins/sso/proxy/proxy-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,UAAU,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"sso.proxy.d.ts","sourceRoot":"","sources":["../../../../../src/providers/plugins/sso/proxy/sso.proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAQH,OAAO,EAAE,WAAW,EAAgB,MAAM,kBAAkB,CAAC;AAI7D,OAAO,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,qBAAa,YAAY;IAMX,OAAO,CAAC,MAAM;IAL1B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,UAAU,CAAa;gBAEX,MAAM,EAAE,WAAW;IAQvC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IA+FrD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB3B;;;;;;;;;;;;OAYG;YACW,aAAa;IAiG3B;;OAEG;YACW,YAAY;IA0B1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAatB;;;OAGG;YACW,QAAQ;IAiBtB;;OAEG;YACW,cAAc;IAkG5B;;;OAGG;YACW,OAAO;IAqBrB;;OAEG;YACW,WAAW;IAsDzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA6BzB;;OAEG;YACW,iBAAiB;IAuB/B;;OAEG;YACW,gBAAgB;CAU/B"}
1
+ {"version":3,"file":"sso.proxy.d.ts","sourceRoot":"","sources":["../../../../../src/providers/plugins/sso/proxy/sso.proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AASH,OAAO,EAAE,WAAW,EAAgB,MAAM,kBAAkB,CAAC;AAI7D,OAAO,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,qBAAa,YAAY;IAMX,OAAO,CAAC,MAAM;IAL1B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,UAAU,CAAa;gBAEX,MAAM,EAAE,WAAW;IAQvC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IA4GrD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB3B;;;;;;;;;;;;OAYG;YACW,aAAa;IAiG3B;;OAEG;YACW,YAAY;IA0B1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAatB;;;OAGG;YACW,QAAQ;IAiBtB;;OAEG;YACW,cAAc;IAkG5B;;;OAGG;YACW,OAAO;IAqBrB;;OAEG;YACW,WAAW;IAsDzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA6BzB;;OAEG;YACW,iBAAiB;IAuB/B;;OAEG;YACW,gBAAgB;CAU/B"}
@@ -56,6 +56,7 @@ export class CodeMieProxy {
56
56
  const authMethod = this.config.authMethod || 'sso'; // Default: SSO for backward compat
57
57
  // 2. Load credentials based on auth method
58
58
  let credentials = null;
59
+ let syncCredentials = null;
59
60
  if (authMethod === 'jwt') {
60
61
  // JWT path: token from CLI arg, env var, or credential store
61
62
  const token = this.config.jwtToken
@@ -80,11 +81,20 @@ export class CodeMieProxy {
80
81
  }
81
82
  }
82
83
  }
84
+ if (this.config.syncCodeMieUrl) {
85
+ const { CodeMieSSO } = await import('../sso.auth.js');
86
+ const sso = new CodeMieSSO();
87
+ syncCredentials = await sso.getStoredCredentials(this.config.syncCodeMieUrl);
88
+ if (!syncCredentials) {
89
+ logger.debug(`[CodeMieProxy] Analytics sync is configured for ${this.config.syncCodeMieUrl}, but no stored credentials were found. Re-authenticate with: codemie profile login --url ${this.config.syncCodeMieUrl}`);
90
+ }
91
+ }
83
92
  // 3. Build plugin context (includes profile config read once at CLI level)
84
93
  const pluginContext = {
85
94
  config: this.config,
86
95
  logger,
87
96
  credentials: credentials || undefined,
97
+ syncCredentials: syncCredentials || undefined,
88
98
  profileConfig: this.config.profileConfig
89
99
  };
90
100
  // 4. Initialize plugins from registry