@codemieai/code 0.0.7 → 0.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/README.md +291 -47
  2. package/bin/agent-executor.js +6 -4
  3. package/dist/agents/codemie-code/agent.d.ts.map +1 -1
  4. package/dist/agents/codemie-code/agent.js +29 -28
  5. package/dist/agents/codemie-code/agent.js.map +1 -1
  6. package/dist/agents/codemie-code/config.d.ts.map +1 -1
  7. package/dist/agents/codemie-code/config.js +4 -3
  8. package/dist/agents/codemie-code/config.js.map +1 -1
  9. package/dist/agents/codemie-code/index.d.ts.map +1 -1
  10. package/dist/agents/codemie-code/index.js +10 -9
  11. package/dist/agents/codemie-code/index.js.map +1 -1
  12. package/dist/agents/codemie-code/tools/index.d.ts.map +1 -1
  13. package/dist/agents/codemie-code/tools/index.js +6 -5
  14. package/dist/agents/codemie-code/tools/index.js.map +1 -1
  15. package/dist/agents/codemie-code/ui/todoPanel.js +9 -9
  16. package/dist/agents/codemie-code/ui/todoPanel.js.map +1 -1
  17. package/dist/agents/codemie-code/ui.d.ts.map +1 -1
  18. package/dist/agents/codemie-code/ui.js +34 -33
  19. package/dist/agents/codemie-code/ui.js.map +1 -1
  20. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  21. package/dist/agents/core/AgentCLI.js +34 -17
  22. package/dist/agents/core/AgentCLI.js.map +1 -1
  23. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  24. package/dist/agents/core/BaseAgentAdapter.js +5 -11
  25. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  26. package/dist/agents/plugins/claude.plugin.d.ts.map +1 -1
  27. package/dist/agents/plugins/claude.plugin.js +9 -0
  28. package/dist/agents/plugins/claude.plugin.js.map +1 -1
  29. package/dist/agents/plugins/codemie-code.plugin.d.ts +4 -0
  30. package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
  31. package/dist/agents/plugins/codemie-code.plugin.js +9 -2
  32. package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
  33. package/dist/agents/plugins/deepagents.plugin.d.ts +21 -0
  34. package/dist/agents/plugins/deepagents.plugin.d.ts.map +1 -0
  35. package/dist/agents/plugins/deepagents.plugin.js +101 -0
  36. package/dist/agents/plugins/deepagents.plugin.js.map +1 -0
  37. package/dist/agents/registry.d.ts +1 -0
  38. package/dist/agents/registry.d.ts.map +1 -1
  39. package/dist/agents/registry.js +5 -2
  40. package/dist/agents/registry.js.map +1 -1
  41. package/dist/cli/commands/auth.js +5 -5
  42. package/dist/cli/commands/auth.js.map +1 -1
  43. package/dist/cli/commands/config.js +21 -21
  44. package/dist/cli/commands/config.js.map +1 -1
  45. package/dist/cli/commands/doctor/checks/AIConfigCheck.d.ts +13 -0
  46. package/dist/cli/commands/doctor/checks/AIConfigCheck.d.ts.map +1 -0
  47. package/dist/cli/commands/doctor/checks/AIConfigCheck.js +135 -0
  48. package/dist/cli/commands/doctor/checks/AIConfigCheck.js.map +1 -0
  49. package/dist/cli/commands/doctor/checks/AgentsCheck.d.ts +10 -0
  50. package/dist/cli/commands/doctor/checks/AgentsCheck.d.ts.map +1 -0
  51. package/dist/cli/commands/doctor/checks/AgentsCheck.js +57 -0
  52. package/dist/cli/commands/doctor/checks/AgentsCheck.js.map +1 -0
  53. package/dist/cli/commands/doctor/checks/NodeVersionCheck.d.ts +9 -0
  54. package/dist/cli/commands/doctor/checks/NodeVersionCheck.d.ts.map +1 -0
  55. package/dist/cli/commands/doctor/checks/NodeVersionCheck.js +38 -0
  56. package/dist/cli/commands/doctor/checks/NodeVersionCheck.js.map +1 -0
  57. package/dist/cli/commands/doctor/checks/NpmCheck.d.ts +9 -0
  58. package/dist/cli/commands/doctor/checks/NpmCheck.d.ts.map +1 -0
  59. package/dist/cli/commands/doctor/checks/NpmCheck.js +28 -0
  60. package/dist/cli/commands/doctor/checks/NpmCheck.js.map +1 -0
  61. package/dist/cli/commands/doctor/checks/WorkflowsCheck.d.ts +9 -0
  62. package/dist/cli/commands/doctor/checks/WorkflowsCheck.d.ts.map +1 -0
  63. package/dist/cli/commands/doctor/checks/WorkflowsCheck.js +72 -0
  64. package/dist/cli/commands/doctor/checks/WorkflowsCheck.js.map +1 -0
  65. package/dist/cli/commands/doctor/checks/index.d.ts +9 -0
  66. package/dist/cli/commands/doctor/checks/index.d.ts.map +1 -0
  67. package/dist/cli/commands/doctor/checks/index.js +9 -0
  68. package/dist/cli/commands/doctor/checks/index.js.map +1 -0
  69. package/dist/cli/commands/doctor/formatter.d.ts +53 -0
  70. package/dist/cli/commands/doctor/formatter.d.ts.map +1 -0
  71. package/dist/cli/commands/doctor/formatter.js +153 -0
  72. package/dist/cli/commands/doctor/formatter.js.map +1 -0
  73. package/dist/cli/commands/{doctor.d.ts → doctor/index.d.ts} +4 -1
  74. package/dist/cli/commands/doctor/index.d.ts.map +1 -0
  75. package/dist/cli/commands/doctor/index.js +67 -0
  76. package/dist/cli/commands/doctor/index.js.map +1 -0
  77. package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.d.ts +11 -0
  78. package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.d.ts.map +1 -0
  79. package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.js +192 -0
  80. package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.js.map +1 -0
  81. package/dist/cli/commands/doctor/providers/BaseProviderCheck.d.ts +12 -0
  82. package/dist/cli/commands/doctor/providers/BaseProviderCheck.d.ts.map +1 -0
  83. package/dist/cli/commands/doctor/providers/BaseProviderCheck.js +12 -0
  84. package/dist/cli/commands/doctor/providers/BaseProviderCheck.js.map +1 -0
  85. package/dist/cli/commands/doctor/providers/StandardProviderCheck.d.ts +11 -0
  86. package/dist/cli/commands/doctor/providers/StandardProviderCheck.d.ts.map +1 -0
  87. package/dist/cli/commands/doctor/providers/StandardProviderCheck.js +97 -0
  88. package/dist/cli/commands/doctor/providers/StandardProviderCheck.js.map +1 -0
  89. package/dist/cli/commands/doctor/providers/index.d.ts +30 -0
  90. package/dist/cli/commands/doctor/providers/index.d.ts.map +1 -0
  91. package/dist/cli/commands/doctor/providers/index.js +66 -0
  92. package/dist/cli/commands/doctor/providers/index.js.map +1 -0
  93. package/dist/cli/commands/doctor/types.d.ts +59 -0
  94. package/dist/cli/commands/doctor/types.d.ts.map +1 -0
  95. package/dist/cli/commands/doctor/types.js +5 -0
  96. package/dist/cli/commands/doctor/types.js.map +1 -0
  97. package/dist/cli/commands/install.d.ts.map +1 -1
  98. package/dist/cli/commands/install.js +24 -8
  99. package/dist/cli/commands/install.js.map +1 -1
  100. package/dist/cli/commands/list.js +3 -3
  101. package/dist/cli/commands/list.js.map +1 -1
  102. package/dist/cli/commands/profile.js +6 -6
  103. package/dist/cli/commands/profile.js.map +1 -1
  104. package/dist/cli/commands/setup.js +51 -38
  105. package/dist/cli/commands/setup.js.map +1 -1
  106. package/dist/cli/commands/uninstall.d.ts.map +1 -1
  107. package/dist/cli/commands/uninstall.js +19 -4
  108. package/dist/cli/commands/uninstall.js.map +1 -1
  109. package/dist/cli/commands/workflow.d.ts.map +1 -1
  110. package/dist/cli/commands/workflow.js +30 -59
  111. package/dist/cli/commands/workflow.js.map +1 -1
  112. package/dist/cli/index.js +1 -3
  113. package/dist/cli/index.js.map +1 -1
  114. package/dist/env/types.d.ts.map +1 -1
  115. package/dist/env/types.js +2 -2
  116. package/dist/env/types.js.map +1 -1
  117. package/dist/utils/async-tips.js +6 -6
  118. package/dist/utils/async-tips.js.map +1 -1
  119. package/dist/utils/codemie-integration-validator.d.ts +3 -2
  120. package/dist/utils/codemie-integration-validator.d.ts.map +1 -1
  121. package/dist/utils/codemie-integration-validator.js +38 -11
  122. package/dist/utils/codemie-integration-validator.js.map +1 -1
  123. package/dist/utils/config-loader.d.ts.map +1 -1
  124. package/dist/utils/config-loader.js +17 -6
  125. package/dist/utils/config-loader.js.map +1 -1
  126. package/dist/utils/credential-store.d.ts.map +1 -1
  127. package/dist/utils/credential-store.js +55 -24
  128. package/dist/utils/credential-store.js.map +1 -1
  129. package/dist/utils/first-time.d.ts +8 -0
  130. package/dist/utils/first-time.d.ts.map +1 -1
  131. package/dist/utils/first-time.js +133 -86
  132. package/dist/utils/first-time.js.map +1 -1
  133. package/dist/utils/logger.d.ts +19 -1
  134. package/dist/utils/logger.d.ts.map +1 -1
  135. package/dist/utils/logger.js +93 -8
  136. package/dist/utils/logger.js.map +1 -1
  137. package/dist/utils/sso-auth.d.ts.map +1 -1
  138. package/dist/utils/sso-auth.js +24 -10
  139. package/dist/utils/sso-auth.js.map +1 -1
  140. package/dist/utils/sso-gateway.d.ts +28 -0
  141. package/dist/utils/sso-gateway.d.ts.map +1 -1
  142. package/dist/utils/sso-gateway.js +201 -46
  143. package/dist/utils/sso-gateway.js.map +1 -1
  144. package/dist/utils/tips.js +3 -3
  145. package/dist/utils/tips.js.map +1 -1
  146. package/dist/workflows/installer.d.ts.map +1 -1
  147. package/dist/workflows/installer.js +3 -8
  148. package/dist/workflows/installer.js.map +1 -1
  149. package/package.json +9 -3
  150. package/dist/cli/commands/doctor.d.ts.map +0 -1
  151. package/dist/cli/commands/doctor.js +0 -365
  152. package/dist/cli/commands/doctor.js.map +0 -1
  153. package/dist/cli/commands/tools.d.ts +0 -6
  154. package/dist/cli/commands/tools.d.ts.map +0 -1
  155. package/dist/cli/commands/tools.js +0 -244
  156. package/dist/cli/commands/tools.js.map +0 -1
  157. package/dist/clients/adapters/github.d.ts +0 -17
  158. package/dist/clients/adapters/github.d.ts.map +0 -1
  159. package/dist/clients/adapters/github.js +0 -150
  160. package/dist/clients/adapters/github.js.map +0 -1
  161. package/dist/clients/adapters/gitlab.d.ts +0 -17
  162. package/dist/clients/adapters/gitlab.d.ts.map +0 -1
  163. package/dist/clients/adapters/gitlab.js +0 -147
  164. package/dist/clients/adapters/gitlab.js.map +0 -1
  165. package/dist/clients/registry.d.ts +0 -20
  166. package/dist/clients/registry.d.ts.map +0 -1
  167. package/dist/clients/registry.js +0 -27
  168. package/dist/clients/registry.js.map +0 -1
  169. package/dist/tools/detector.d.ts +0 -33
  170. package/dist/tools/detector.d.ts.map +0 -1
  171. package/dist/tools/detector.js +0 -145
  172. package/dist/tools/detector.js.map +0 -1
  173. package/dist/tools/index.d.ts +0 -8
  174. package/dist/tools/index.d.ts.map +0 -1
  175. package/dist/tools/index.js +0 -8
  176. package/dist/tools/index.js.map +0 -1
  177. package/dist/tools/manager.d.ts +0 -21
  178. package/dist/tools/manager.d.ts.map +0 -1
  179. package/dist/tools/manager.js +0 -104
  180. package/dist/tools/manager.js.map +0 -1
  181. package/dist/tools/registry.d.ts +0 -8
  182. package/dist/tools/registry.d.ts.map +0 -1
  183. package/dist/tools/registry.js +0 -36
  184. package/dist/tools/registry.js.map +0 -1
  185. package/dist/tools/types.d.ts +0 -41
  186. package/dist/tools/types.d.ts.map +0 -1
  187. package/dist/tools/types.js +0 -5
  188. package/dist/tools/types.js.map +0 -1
@@ -16,7 +16,7 @@ export class CodeMieSSO {
16
16
  const codeMieBase = this.ensureApiBase(config.codeMieUrl);
17
17
  const ssoUrl = `${codeMieBase}/v1/auth/login/${port}`;
18
18
  // 3. Launch browser
19
- console.log(chalk.dim(`Opening browser for authentication...`));
19
+ console.log(chalk.white(`Opening browser for authentication...`));
20
20
  await open(ssoUrl);
21
21
  // 4. Wait for callback with timeout
22
22
  const result = await this.waitForCallback(config.timeout || 120000);
@@ -64,14 +64,22 @@ export class CodeMieSSO {
64
64
  }
65
65
  return base;
66
66
  }
67
- async startLocalServer() {
67
+ startLocalServer() {
68
68
  return new Promise((resolve, reject) => {
69
+ let serverPort;
69
70
  this.server = createServer((req, res) => {
70
- if (!req.url)
71
+ if (!req.url) {
72
+ res.writeHead(400, { 'Content-Type': 'text/plain' });
73
+ res.end('Bad Request: Missing URL');
71
74
  return;
72
- const address = this.server.address();
73
- const port = typeof address === 'object' && address ? address.port : 0;
74
- const url = new URL(req.url, `http://localhost:${port}`);
75
+ }
76
+ // Use locally scoped port from closure
77
+ if (!serverPort) {
78
+ res.writeHead(500, { 'Content-Type': 'text/plain' });
79
+ res.end('Internal Server Error: Server not ready');
80
+ return;
81
+ }
82
+ const url = new URL(req.url, `http://localhost:${serverPort}`);
75
83
  // Handle the OAuth callback
76
84
  this.handleCallback(url).then(result => {
77
85
  this.callbackResult = result;
@@ -98,7 +106,10 @@ export class CodeMieSSO {
98
106
  </body>
99
107
  </html>
100
108
  `);
101
- this.server.close();
109
+ // Close server safely
110
+ if (this.server) {
111
+ this.server.close();
112
+ }
102
113
  }).catch(error => {
103
114
  this.callbackResult = { success: false, error: error.message };
104
115
  res.writeHead(500, { 'Content-Type': 'text/html; charset=utf-8' });
@@ -116,13 +127,16 @@ export class CodeMieSSO {
116
127
  </body>
117
128
  </html>
118
129
  `);
119
- this.server.close();
130
+ // Close server safely
131
+ if (this.server) {
132
+ this.server.close();
133
+ }
120
134
  });
121
135
  });
122
136
  this.server.listen(0, () => {
123
137
  const address = this.server.address();
124
- const port = typeof address === 'object' && address ? address.port : 0;
125
- resolve(port);
138
+ serverPort = typeof address === 'object' && address ? address.port : 0;
139
+ resolve(serverPort);
126
140
  });
127
141
  this.server.on('error', reject);
128
142
  });
@@ -1 +1 @@
1
- {"version":3,"file":"sso-auth.js","sourceRoot":"","sources":["../../src/utils/sso-auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sso-auth.js","sourceRoot":"","sources":["../../src/utils/sso-auth.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,19 @@
3
3
  *
4
4
  * This creates a local HTTP server that proxies requests from the claude binary
5
5
  * to the codemie API, adding SSO authentication cookies in the process.
6
+ *
7
+ * Debug Logging:
8
+ * When debug mode is enabled, all requests and responses are logged to the
9
+ * unified debug session directory in JSONL (JSON Lines) format at:
10
+ * ~/.codemie/debug/session-<timestamp>/requests.jsonl
11
+ *
12
+ * Each line in the file is a JSON object with a 'type' field:
13
+ * - session_start: Gateway initialization
14
+ * - request: HTTP request details (headers, body, URL)
15
+ * - response: HTTP response details (status, headers, body preview)
16
+ * - session_end: Gateway shutdown with session statistics
17
+ *
18
+ * Sensitive data (Cookie, Authorization headers) is automatically redacted.
6
19
  */
7
20
  export interface GatewayConfig {
8
21
  targetApiUrl: string;
@@ -15,6 +28,9 @@ export declare class SSOGateway {
15
28
  private credentials;
16
29
  private config;
17
30
  private actualPort;
31
+ private debugLogFile;
32
+ private requestCounter;
33
+ private sessionStartTime;
18
34
  constructor(config: GatewayConfig);
19
35
  /**
20
36
  * Start the gateway server on a random available port
@@ -43,5 +59,17 @@ export declare class SSOGateway {
43
59
  * Find an available port for the gateway server
44
60
  */
45
61
  private findAvailablePort;
62
+ /**
63
+ * Initialize debug logging - uses session directory from main logger
64
+ */
65
+ private initializeDebugLogging;
66
+ /**
67
+ * Append request details to session debug file
68
+ */
69
+ private logRequestToFile;
70
+ /**
71
+ * Append response details to session debug file
72
+ */
73
+ private logResponseToFile;
46
74
  }
47
75
  //# sourceMappingURL=sso-gateway.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sso-gateway.d.ts","sourceRoot":"","sources":["../../src/utils/sso-gateway.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,UAAU,CAAa;gBAEnB,MAAM,EAAE,aAAa;IAIjC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAiDrD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3B;;OAEG;YACW,aAAa;IA6K3B;;OAEG;YACW,eAAe;IAa7B;;OAEG;YACW,eAAe;IA4C7B;;OAEG;YACW,iBAAiB;CAsBhC"}
1
+ {"version":3,"file":"sso-gateway.d.ts","sourceRoot":"","sources":["../../src/utils/sso-gateway.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAUH,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,gBAAgB,CAAc;gBAE1B,MAAM,EAAE,aAAa;IAIjC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IA+DrD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB3B;;OAEG;YACW,aAAa;IA6M3B;;OAEG;YACW,eAAe;IAa7B;;OAEG;YACW,eAAe;IA4C7B;;OAEG;YACW,iBAAiB;IAuB/B;;OAEG;YACW,sBAAsB;IAiCpC;;OAEG;YACW,gBAAgB;IAyC9B;;OAEG;YACW,iBAAiB;CA6BhC"}
@@ -3,15 +3,34 @@
3
3
  *
4
4
  * This creates a local HTTP server that proxies requests from the claude binary
5
5
  * to the codemie API, adding SSO authentication cookies in the process.
6
+ *
7
+ * Debug Logging:
8
+ * When debug mode is enabled, all requests and responses are logged to the
9
+ * unified debug session directory in JSONL (JSON Lines) format at:
10
+ * ~/.codemie/debug/session-<timestamp>/requests.jsonl
11
+ *
12
+ * Each line in the file is a JSON object with a 'type' field:
13
+ * - session_start: Gateway initialization
14
+ * - request: HTTP request details (headers, body, URL)
15
+ * - response: HTTP response details (status, headers, body preview)
16
+ * - session_end: Gateway shutdown with session statistics
17
+ *
18
+ * Sensitive data (Cookie, Authorization headers) is automatically redacted.
6
19
  */
7
20
  import { createServer } from 'http';
21
+ import { randomUUID } from 'crypto';
8
22
  import { CredentialStore } from './credential-store.js';
9
23
  import { logger } from './logger.js';
24
+ import { promises as fs } from 'fs';
25
+ import { join } from 'path';
10
26
  export class SSOGateway {
11
27
  server = null;
12
28
  credentials = null;
13
29
  config;
14
30
  actualPort = 0;
31
+ debugLogFile = null;
32
+ requestCounter = 0; // For statistics only
33
+ sessionStartTime = '';
15
34
  constructor(config) {
16
35
  this.config = config;
17
36
  }
@@ -25,14 +44,29 @@ export class SSOGateway {
25
44
  if (!this.credentials) {
26
45
  throw new Error('SSO credentials not found. Please run: codemie auth login');
27
46
  }
47
+ if (this.config.debug) {
48
+ await this.initializeDebugLogging();
49
+ }
28
50
  // Find available port
29
51
  this.actualPort = this.config.port || await this.findAvailablePort();
30
52
  return new Promise((resolve, reject) => {
31
53
  this.server = createServer((req, res) => {
32
54
  this.handleRequest(req, res).catch(error => {
33
55
  logger.error('Gateway request error:', error);
34
- res.statusCode = 500;
35
- res.end('Internal Server Error');
56
+ if (!res.headersSent) {
57
+ res.statusCode = 500;
58
+ res.setHeader('Content-Type', 'application/json');
59
+ const errorMessage = error instanceof Error ? error.message : String(error);
60
+ const errorResponse = {
61
+ error: 'Internal Server Error',
62
+ message: errorMessage,
63
+ timestamp: new Date().toISOString()
64
+ };
65
+ if (this.config.debug && error instanceof Error && error.stack) {
66
+ errorResponse.stack = error.stack;
67
+ }
68
+ res.end(JSON.stringify(errorResponse, null, 2));
69
+ }
36
70
  });
37
71
  });
38
72
  this.server.on('error', (error) => {
@@ -51,10 +85,6 @@ export class SSOGateway {
51
85
  this.actualPort = address.port;
52
86
  }
53
87
  const gatewayUrl = `http://localhost:${this.actualPort}`;
54
- if (this.config.debug) {
55
- logger.info(`[DEBUG] SSO Gateway started on ${gatewayUrl}`);
56
- logger.info(`[DEBUG] Proxying to: ${this.config.targetApiUrl}`);
57
- }
58
88
  resolve({ port: this.actualPort, url: gatewayUrl });
59
89
  });
60
90
  });
@@ -64,11 +94,22 @@ export class SSOGateway {
64
94
  */
65
95
  async stop() {
66
96
  if (this.server) {
97
+ if (this.config.debug && this.debugLogFile) {
98
+ try {
99
+ const sessionEnd = {
100
+ type: 'session_end',
101
+ timestamp: new Date().toISOString(),
102
+ totalRequests: this.requestCounter,
103
+ duration: Date.now() - new Date(this.sessionStartTime).getTime()
104
+ };
105
+ await fs.appendFile(this.debugLogFile, JSON.stringify(sessionEnd) + '\n', 'utf-8');
106
+ }
107
+ catch (error) {
108
+ logger.error('Failed to write session end log:', error);
109
+ }
110
+ }
67
111
  return new Promise((resolve) => {
68
112
  this.server.close(() => {
69
- if (this.config.debug) {
70
- logger.info('[DEBUG] SSO Gateway stopped');
71
- }
72
113
  resolve();
73
114
  });
74
115
  });
@@ -80,9 +121,18 @@ export class SSOGateway {
80
121
  async handleRequest(req, res) {
81
122
  if (!this.credentials) {
82
123
  res.statusCode = 401;
83
- res.end('SSO credentials not available');
124
+ res.setHeader('Content-Type', 'application/json');
125
+ res.end(JSON.stringify({
126
+ error: 'Unauthorized',
127
+ message: 'SSO credentials not available. Please run: codemie auth login',
128
+ timestamp: new Date().toISOString()
129
+ }, null, 2));
84
130
  return;
85
131
  }
132
+ // Generate unique request ID for tracking and add to statistics
133
+ const requestId = randomUUID();
134
+ this.requestCounter++;
135
+ const requestTimestamp = new Date().toISOString();
86
136
  try {
87
137
  // Construct target URL by properly joining base URL with request path
88
138
  // This ensures we preserve both the API path and query parameters
@@ -113,29 +163,32 @@ export class SSOGateway {
113
163
  .map(([key, value]) => `${key}=${value}`)
114
164
  .join('; ');
115
165
  forwardHeaders['Cookie'] = cookieHeader;
116
- // Add CodeMie integration header for ai-run-sso
166
+ // Add request ID header for tracking
167
+ forwardHeaders['X-CodeMie-Request-ID'] = requestId;
168
+ // Add session ID header (always available)
169
+ forwardHeaders['X-CodeMie-Session-ID'] = logger.getSessionId();
170
+ // Add CodeMie headers from config
117
171
  try {
118
172
  const { ConfigLoader } = await import('./config-loader.js');
119
173
  const config = await ConfigLoader.load();
120
- if (config.codeMieIntegration?.id && config.provider === 'ai-run-sso') {
174
+ // Add integration header only for ai-run-sso provider
175
+ if (config.provider === 'ai-run-sso' && config.codeMieIntegration?.id) {
121
176
  forwardHeaders['X-CodeMie-Integration'] = config.codeMieIntegration.id;
122
- if (this.config.debug) {
123
- console.log(`[DEBUG] Added CodeMie integration header: ${config.codeMieIntegration.id}`);
124
- }
125
177
  }
126
- }
127
- catch (error) {
128
- // Non-fatal error - continue without integration header
129
- if (this.config.debug) {
130
- console.log(`[DEBUG] Could not load config for integration header: ${error}`);
178
+ // Add model header if configured (for all providers)
179
+ if (config.model) {
180
+ forwardHeaders['X-CodeMie-CLI-Model'] = config.model;
181
+ }
182
+ // Add timeout header if configured (for all providers)
183
+ if (config.timeout) {
184
+ forwardHeaders['X-CodeMie-CLI-Timeout'] = String(config.timeout);
131
185
  }
132
186
  }
133
- // Add CodeMie client type header for request tracking
187
+ catch {
188
+ // Non-fatal error - continue without config headers
189
+ }
134
190
  if (this.config.clientType) {
135
191
  forwardHeaders['X-CodeMie-Client'] = this.config.clientType;
136
- if (this.config.debug) {
137
- console.log(`[DEBUG] Added CodeMie client header: ${this.config.clientType}`);
138
- }
139
192
  }
140
193
  // Handle request body for POST/PUT requests
141
194
  let body = '';
@@ -143,9 +196,14 @@ export class SSOGateway {
143
196
  body = await this.readRequestBody(req);
144
197
  }
145
198
  if (this.config.debug) {
146
- console.log(`[DEBUG] About to fetch: ${targetUrl}`);
147
- console.log(`[DEBUG] Method: ${req.method || 'GET'}`);
148
- console.log(`[DEBUG] Cookie header present: ${!!forwardHeaders['Cookie']}`);
199
+ await this.logRequestToFile(requestId, {
200
+ method: req.method || 'GET',
201
+ url: requestUrl,
202
+ targetUrl,
203
+ headers: forwardHeaders,
204
+ body: body || undefined,
205
+ timestamp: requestTimestamp
206
+ });
149
207
  }
150
208
  // Use native Node.js https module for better SSL control (following codemie-model-fetcher pattern)
151
209
  // Always disable SSL verification to handle enterprise certificates like codemie-model-fetcher does
@@ -161,9 +219,6 @@ export class SSOGateway {
161
219
  rejectUnauthorized: false, // Always allow self-signed certificates like codemie-model-fetcher
162
220
  timeout: 30000
163
221
  };
164
- if (this.config.debug) {
165
- console.log(`[DEBUG] Using native https with SSL verification disabled (like codemie-model-fetcher)`);
166
- }
167
222
  const responseData = await this.makeHttpRequest(https, parsedUrl, requestOptions, body);
168
223
  // Create a Response-like object
169
224
  const response = new Response(responseData.data, {
@@ -198,28 +253,41 @@ export class SSOGateway {
198
253
  res.end();
199
254
  }
200
255
  if (this.config.debug) {
201
- logger.info(`[DEBUG] Proxied ${req.method} ${req.url} -> ${response.status}`);
202
- // Log request details for OpenAPI spec creation
203
- console.log(`\n=== REQUEST DETAILS ===`);
204
- console.log(`Method: ${req.method}`);
205
- console.log(`Original URL: ${req.url}`);
206
- console.log(`Target URL: ${targetUrl}`);
207
- console.log(`Headers:`, JSON.stringify(forwardHeaders, null, 2));
208
- if (body) {
209
- console.log(`Body:`, body);
256
+ const responseHeaders = {};
257
+ response.headers.forEach((value, key) => {
258
+ responseHeaders[key] = value;
259
+ });
260
+ // Extract response body preview (first 1000 chars)
261
+ let bodyPreview;
262
+ if (responseData.data) {
263
+ const bodyText = responseData.data.toString('utf-8');
264
+ bodyPreview = bodyText.length > 1000
265
+ ? bodyText.substring(0, 1000) + '...[truncated]'
266
+ : bodyText;
210
267
  }
211
- console.log(`Response Status: ${response.status}`);
212
- console.log(`======================\n`);
268
+ await this.logResponseToFile(requestId, {
269
+ statusCode: response.status,
270
+ statusMessage: response.statusText,
271
+ headers: responseHeaders,
272
+ bodyPreview,
273
+ timestamp: new Date().toISOString()
274
+ });
213
275
  }
214
276
  }
215
277
  catch (error) {
216
278
  logger.error('Gateway proxy error:', error);
217
- if (this.config.debug) {
218
- console.log(`[DEBUG] Proxy error for request: ${req.url}`);
219
- console.log(`[DEBUG] Error details:`, error);
220
- }
221
279
  res.statusCode = 502;
222
- res.end('Bad Gateway');
280
+ res.setHeader('Content-Type', 'application/json');
281
+ const errorMessage = error instanceof Error ? error.message : String(error);
282
+ const errorResponse = {
283
+ error: 'Bad Gateway',
284
+ message: errorMessage,
285
+ timestamp: new Date().toISOString()
286
+ };
287
+ if (this.config.debug && error instanceof Error && error.stack) {
288
+ errorResponse.stack = error.stack;
289
+ }
290
+ res.end(JSON.stringify(errorResponse, null, 2));
223
291
  }
224
292
  }
225
293
  /**
@@ -294,5 +362,92 @@ export class SSOGateway {
294
362
  });
295
363
  });
296
364
  }
365
+ /**
366
+ * Initialize debug logging - uses session directory from main logger
367
+ */
368
+ async initializeDebugLogging() {
369
+ this.sessionStartTime = new Date().toISOString();
370
+ try {
371
+ // Get session directory from main logger
372
+ const sessionDir = logger.getDebugSessionDir();
373
+ if (!sessionDir) {
374
+ logger.error('Debug session directory not available');
375
+ this.debugLogFile = null;
376
+ return;
377
+ }
378
+ // Create requests.jsonl in the same session directory
379
+ const filename = 'requests.jsonl';
380
+ this.debugLogFile = join(sessionDir, filename);
381
+ // Write session header
382
+ const sessionHeader = {
383
+ type: 'session_start',
384
+ timestamp: this.sessionStartTime,
385
+ gatewayConfig: {
386
+ targetApiUrl: this.config.targetApiUrl,
387
+ clientType: this.config.clientType
388
+ }
389
+ };
390
+ await fs.writeFile(this.debugLogFile, JSON.stringify(sessionHeader) + '\n', 'utf-8');
391
+ }
392
+ catch (error) {
393
+ logger.error('Failed to create debug log file:', error);
394
+ this.debugLogFile = null;
395
+ }
396
+ }
397
+ /**
398
+ * Append request details to session debug file
399
+ */
400
+ async logRequestToFile(requestId, data) {
401
+ if (!this.debugLogFile)
402
+ return;
403
+ try {
404
+ // Sanitize sensitive data
405
+ const sanitizedHeaders = { ...data.headers };
406
+ if (sanitizedHeaders['Cookie']) {
407
+ sanitizedHeaders['Cookie'] = '[REDACTED]';
408
+ }
409
+ if (sanitizedHeaders['Authorization']) {
410
+ sanitizedHeaders['Authorization'] = '[REDACTED]';
411
+ }
412
+ const logEntry = {
413
+ type: 'request',
414
+ requestId,
415
+ timestamp: data.timestamp,
416
+ method: data.method,
417
+ url: data.url,
418
+ targetUrl: data.targetUrl,
419
+ headers: sanitizedHeaders,
420
+ body: data.body
421
+ };
422
+ // Append to file (JSONL format - one JSON object per line)
423
+ await fs.appendFile(this.debugLogFile, JSON.stringify(logEntry) + '\n', 'utf-8');
424
+ }
425
+ catch (error) {
426
+ logger.error('Failed to write request log:', error);
427
+ }
428
+ }
429
+ /**
430
+ * Append response details to session debug file
431
+ */
432
+ async logResponseToFile(requestId, data) {
433
+ if (!this.debugLogFile)
434
+ return;
435
+ try {
436
+ const logEntry = {
437
+ type: 'response',
438
+ requestId,
439
+ timestamp: data.timestamp,
440
+ statusCode: data.statusCode,
441
+ statusMessage: data.statusMessage,
442
+ headers: data.headers,
443
+ bodyPreview: data.bodyPreview
444
+ };
445
+ // Append to file (JSONL format - one JSON object per line)
446
+ await fs.appendFile(this.debugLogFile, JSON.stringify(logEntry) + '\n', 'utf-8');
447
+ }
448
+ catch (error) {
449
+ logger.error('Failed to write response log:', error);
450
+ }
451
+ }
297
452
  }
298
453
  //# sourceMappingURL=sso-gateway.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sso-gateway.js","sourceRoot":"","sources":["../../src/utils/sso-gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sso-gateway.js","sourceRoot":"","sources":["../../src/utils/sso-gateway.ts"],"names":[],"mappings":"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"}
@@ -47,12 +47,12 @@ export class TipDisplay {
47
47
  * Display a formatted tip
48
48
  */
49
49
  displayTip(tip) {
50
- console.log(chalk.dim('─'.repeat(60)));
50
+ console.log(chalk.white('─'.repeat(60)));
51
51
  console.log(chalk.cyan('💡 Tip:'), chalk.white(tip.message));
52
52
  if (tip.command) {
53
- console.log(chalk.gray(' →'), chalk.blueBright(tip.command));
53
+ console.log(chalk.white(' →'), chalk.blueBright(tip.command));
54
54
  }
55
- console.log(chalk.dim('─'.repeat(60)));
55
+ console.log(chalk.white('─'.repeat(60)));
56
56
  }
57
57
  /**
58
58
  * Display a random tip
@@ -1 +1 @@
1
- {"version":3,"file":"tips.js","sourceRoot":"","sources":["../../src/utils/tips.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tips.js","sourceRoot":"","sources":["../../src/utils/tips.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../src/workflows/installer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAKxF;;GAEG;AACH,wBAAsB,eAAe,CACnC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,WAAW,EACrB,OAAO,GAAE,sBAA2B,EACpC,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAA;CAAE,CAAC,CAsC5D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,WAAW,EACrB,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAYf;AAwCD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,gBAAgB,GAAG;IAChE,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAgCA"}
1
+ {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../src/workflows/installer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAIxF;;GAEG;AACH,wBAAsB,eAAe,CACnC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,WAAW,EACrB,OAAO,GAAE,sBAA2B,EACpC,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAA;CAAE,CAAC,CAsC5D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,WAAW,EACrB,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAYf;AAwCD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,gBAAgB,GAAG;IAChE,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CA8BA"}
@@ -5,7 +5,6 @@ import * as fs from 'node:fs';
5
5
  import * as path from 'node:path';
6
6
  import { getTemplate } from './registry.js';
7
7
  import { ensureWorkflowDir, isWorkflowInstalled } from './detector.js';
8
- import { isToolInstalled } from '../tools/detector.js';
9
8
  /**
10
9
  * Install a workflow from template
11
10
  */
@@ -88,13 +87,9 @@ export function validateDependencies(template) {
88
87
  if (template.dependencies.optionalSecrets && template.dependencies.optionalSecrets.length > 0) {
89
88
  warnings.push(`Optional secrets for enhanced functionality:\n - ${template.dependencies.optionalSecrets.join('\n - ')}`);
90
89
  }
91
- // Check required tools
92
- for (const tool of template.dependencies.tools) {
93
- if (tool === 'gh' || tool === 'glab') {
94
- if (!isToolInstalled(tool)) {
95
- missing.push(`${tool.toUpperCase()} CLI`);
96
- }
97
- }
90
+ // Note required tools in warnings
91
+ if (template.dependencies.tools.length > 0) {
92
+ warnings.push(`This workflow requires the following CLI tools:\n - ${template.dependencies.tools.join('\n - ')}\nPlease install them manually.`);
98
93
  }
99
94
  return {
100
95
  valid: missing.length === 0,