autodev-cli 1.4.0 → 1.4.4

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 (237) hide show
  1. package/bin/autodev.js +0 -0
  2. package/out/agentBackup/archive.d.ts +44 -0
  3. package/out/agentBackup/archive.js +131 -0
  4. package/out/agentBackup/archive.js.map +1 -0
  5. package/out/agentBackup/export.d.ts +18 -0
  6. package/out/agentBackup/export.js +92 -0
  7. package/out/agentBackup/export.js.map +1 -0
  8. package/out/agentBackup/import.d.ts +21 -0
  9. package/out/agentBackup/import.js +40 -0
  10. package/out/agentBackup/import.js.map +1 -0
  11. package/out/agentBackup/index.d.ts +6 -0
  12. package/out/agentBackup/index.js +11 -0
  13. package/out/agentBackup/index.js.map +1 -0
  14. package/out/agentBackup/layout.d.ts +30 -0
  15. package/out/agentBackup/layout.js +126 -0
  16. package/out/agentBackup/layout.js.map +1 -0
  17. package/out/agentBackup/manifest.d.ts +24 -0
  18. package/out/agentBackup/manifest.js +70 -0
  19. package/out/agentBackup/manifest.js.map +1 -0
  20. package/out/agentBackup/opencodeDb.d.ts +20 -0
  21. package/out/agentBackup/opencodeDb.js +213 -0
  22. package/out/agentBackup/opencodeDb.js.map +1 -0
  23. package/out/agentBackup/sessionProviders.d.ts +35 -0
  24. package/out/agentBackup/sessionProviders.js +263 -0
  25. package/out/agentBackup/sessionProviders.js.map +1 -0
  26. package/out/agentBackup/upload.d.ts +9 -0
  27. package/out/agentBackup/upload.js +121 -0
  28. package/out/agentBackup/upload.js.map +1 -0
  29. package/out/cli.d.ts +1 -0
  30. package/out/cli.js +8 -0
  31. package/out/cli.js.map +1 -1
  32. package/out/cliExit.d.ts +34 -0
  33. package/out/cliExit.js +159 -0
  34. package/out/cliExit.js.map +1 -0
  35. package/out/commands/config.d.ts +2 -0
  36. package/out/commands/config.js +7 -7
  37. package/out/commands/config.js.map +1 -1
  38. package/out/commands/connect.d.ts +2 -0
  39. package/out/commands/connect.js +11 -0
  40. package/out/commands/connect.js.map +1 -1
  41. package/out/commands/export.d.ts +2 -0
  42. package/out/commands/export.js +79 -0
  43. package/out/commands/export.js.map +1 -0
  44. package/out/commands/import.d.ts +2 -0
  45. package/out/commands/import.js +92 -0
  46. package/out/commands/import.js.map +1 -0
  47. package/out/commands/init.d.ts +16 -0
  48. package/out/commands/init.js +9 -5
  49. package/out/commands/init.js.map +1 -1
  50. package/out/commands/resume.d.ts +2 -0
  51. package/out/commands/resume.js +65 -0
  52. package/out/commands/resume.js.map +1 -0
  53. package/out/commands/sessions.d.ts +2 -0
  54. package/out/commands/sessions.js +64 -0
  55. package/out/commands/sessions.js.map +1 -0
  56. package/out/commands/start.d.ts +2 -0
  57. package/out/commands/start.js +40 -7
  58. package/out/commands/start.js.map +1 -1
  59. package/out/commands/status.d.ts +2 -0
  60. package/out/commands/status.js +3 -3
  61. package/out/commands/status.js.map +1 -1
  62. package/out/commands/tailOutput.d.ts +12 -0
  63. package/out/commands/up.d.ts +3 -0
  64. package/out/configManager.d.ts +42 -0
  65. package/out/configManager.js +447 -0
  66. package/out/configManager.js.map +1 -0
  67. package/out/connect.d.ts +4 -0
  68. package/out/connect.js +7 -7
  69. package/out/connect.js.map +1 -1
  70. package/out/core/adapters.d.ts +34 -0
  71. package/out/core/adapters.js +84 -0
  72. package/out/core/adapters.js.map +1 -0
  73. package/out/core/commandHelpers.d.ts +12 -0
  74. package/out/core/commandHelpers.js +96 -0
  75. package/out/core/commandHelpers.js.map +1 -0
  76. package/out/core/projectMcp.d.ts +34 -0
  77. package/out/core/projectMcp.js +160 -0
  78. package/out/core/projectMcp.js.map +1 -0
  79. package/out/core/provider/BaseProvider.d.ts +14 -0
  80. package/out/core/provider/BaseProvider.js +25 -0
  81. package/out/core/provider/BaseProvider.js.map +1 -0
  82. package/out/core/provider/ProviderRegistry.d.ts +12 -0
  83. package/out/core/provider/ProviderRegistry.js +40 -0
  84. package/out/core/provider/ProviderRegistry.js.map +1 -0
  85. package/out/core/provider/contract.d.ts +62 -0
  86. package/out/core/provider/contract.js +9 -0
  87. package/out/core/provider/contract.js.map +1 -0
  88. package/out/core/provider/implementations.d.ts +54 -0
  89. package/out/core/provider/implementations.js +147 -0
  90. package/out/core/provider/implementations.js.map +1 -0
  91. package/out/core/settingsLoader.d.ts +221 -0
  92. package/out/core/settingsLoader.js +176 -0
  93. package/out/core/settingsLoader.js.map +1 -0
  94. package/out/discordGateway.d.ts +26 -0
  95. package/out/discordGateway.js +230 -0
  96. package/out/discordGateway.js.map +1 -0
  97. package/out/discordPoller.d.ts +28 -0
  98. package/out/discordPoller.js +247 -0
  99. package/out/discordPoller.js.map +1 -0
  100. package/out/dispatcher.d.ts +12 -0
  101. package/out/dispatcher.js +214 -0
  102. package/out/dispatcher.js.map +1 -0
  103. package/out/emailPoller.d.ts +42 -0
  104. package/out/emailPoller.js +221 -0
  105. package/out/emailPoller.js.map +1 -0
  106. package/out/git/gitService.d.ts +36 -0
  107. package/out/git/gitService.js +165 -0
  108. package/out/git/gitService.js.map +1 -0
  109. package/out/hookEventNormalizer.d.ts +39 -0
  110. package/out/hookEventNormalizer.js +397 -0
  111. package/out/hookEventNormalizer.js.map +1 -0
  112. package/out/hooksManager.d.ts +25 -0
  113. package/out/hooksManager.js +471 -0
  114. package/out/hooksManager.js.map +1 -0
  115. package/out/launchIde.d.ts +14 -0
  116. package/out/logger.d.ts +12 -0
  117. package/out/mcpEmailTest.d.ts +29 -0
  118. package/out/mcpEmailTest.js +245 -0
  119. package/out/mcpEmailTest.js.map +1 -0
  120. package/out/mcpInstallCheck.d.ts +23 -0
  121. package/out/mcpInstallCheck.js +219 -0
  122. package/out/mcpInstallCheck.js.map +1 -0
  123. package/out/mcpManager.d.ts +35 -0
  124. package/out/mcpManager.js +371 -0
  125. package/out/mcpManager.js.map +1 -0
  126. package/out/messageBuilder.d.ts +54 -0
  127. package/out/messageBuilder.js +373 -0
  128. package/out/messageBuilder.js.map +1 -0
  129. package/out/openCodeHooksManager.d.ts +23 -0
  130. package/out/openCodeHooksManager.js +511 -0
  131. package/out/openCodeHooksManager.js.map +1 -0
  132. package/out/periodicActions.d.ts +63 -0
  133. package/out/periodicActions.js +237 -0
  134. package/out/periodicActions.js.map +1 -0
  135. package/out/profileBuilder.d.ts +29 -0
  136. package/out/profileBuilder.js +366 -0
  137. package/out/profileBuilder.js.map +1 -0
  138. package/out/prompt.d.ts +12 -0
  139. package/out/prompt.js +18 -0
  140. package/out/prompt.js.map +1 -0
  141. package/out/protocolSections.d.ts +26 -0
  142. package/out/protocolSections.js +209 -0
  143. package/out/protocolSections.js.map +1 -0
  144. package/out/providers/claudeCliProvider.d.ts +71 -0
  145. package/out/providers/claudeCliProvider.js +425 -0
  146. package/out/providers/claudeCliProvider.js.map +1 -0
  147. package/out/providers/claudeTuiProvider.d.ts +23 -0
  148. package/out/providers/claudeTuiProvider.js +296 -0
  149. package/out/providers/claudeTuiProvider.js.map +1 -0
  150. package/out/providers/copilotCliProvider.d.ts +16 -0
  151. package/out/providers/copilotCliProvider.js +44 -0
  152. package/out/providers/copilotCliProvider.js.map +1 -0
  153. package/out/providers/copilotSdkProvider.d.ts +12 -0
  154. package/out/providers/copilotSdkProvider.js +445 -0
  155. package/out/providers/copilotSdkProvider.js.map +1 -0
  156. package/out/providers/grokTuiProvider.d.ts +14 -0
  157. package/out/providers/grokTuiProvider.js +271 -0
  158. package/out/providers/grokTuiProvider.js.map +1 -0
  159. package/out/providers/opencodeCliProvider.d.ts +29 -0
  160. package/out/providers/opencodeCliProvider.js +199 -0
  161. package/out/providers/opencodeCliProvider.js.map +1 -0
  162. package/out/providers/opencodeSdkProvider.d.ts +22 -0
  163. package/out/providers/opencodeSdkProvider.js +557 -0
  164. package/out/providers/opencodeSdkProvider.js.map +1 -0
  165. package/out/providers.d.ts +9 -0
  166. package/out/providers.js +44 -0
  167. package/out/providers.js.map +1 -0
  168. package/out/rateLimit.d.ts +18 -0
  169. package/out/rateLimit.js +90 -0
  170. package/out/rateLimit.js.map +1 -0
  171. package/out/rdp/auth.d.ts +55 -0
  172. package/out/rdp/auth.js +197 -0
  173. package/out/rdp/auth.js.map +1 -0
  174. package/out/rdp/bridge.d.ts +86 -0
  175. package/out/rdp/bridge.js +1398 -0
  176. package/out/rdp/bridge.js.map +1 -0
  177. package/out/rdp/constants.d.ts +86 -0
  178. package/out/rdp/constants.js +182 -0
  179. package/out/rdp/constants.js.map +1 -0
  180. package/out/rdp/index.d.ts +7 -0
  181. package/out/rdp/index.js +14 -0
  182. package/out/rdp/index.js.map +1 -0
  183. package/out/rdp/session.d.ts +30 -0
  184. package/out/rdp/session.js +196 -0
  185. package/out/rdp/session.js.map +1 -0
  186. package/out/rdp/types.d.ts +27 -0
  187. package/out/rdp/types.js +6 -0
  188. package/out/rdp/types.js.map +1 -0
  189. package/out/sdk/index.d.ts +22 -0
  190. package/out/sdk/index.js +81 -0
  191. package/out/sdk/index.js.map +1 -0
  192. package/out/sessionState.d.ts +54 -0
  193. package/out/sessionState.js +284 -0
  194. package/out/sessionState.js.map +1 -0
  195. package/out/sessions.d.ts +11 -0
  196. package/out/sessions.js +32 -0
  197. package/out/sessions.js.map +1 -0
  198. package/out/taskLoop.d.ts +152 -0
  199. package/out/taskLoop.js +2505 -0
  200. package/out/taskLoop.js.map +1 -0
  201. package/out/todo.d.ts +42 -0
  202. package/out/todo.js +311 -0
  203. package/out/todo.js.map +1 -0
  204. package/out/todoWriteManager.d.ts +26 -0
  205. package/out/todoWriteManager.js +44 -0
  206. package/out/todoWriteManager.js.map +1 -0
  207. package/out/vnc/auth.d.ts +52 -0
  208. package/out/vnc/auth.js +181 -0
  209. package/out/vnc/auth.js.map +1 -0
  210. package/out/vnc/bridge.d.ts +40 -0
  211. package/out/vnc/bridge.js +540 -0
  212. package/out/vnc/bridge.js.map +1 -0
  213. package/out/vnc/constants.d.ts +8 -0
  214. package/out/vnc/constants.js +34 -0
  215. package/out/vnc/constants.js.map +1 -0
  216. package/out/vnc/des.d.ts +6 -0
  217. package/out/vnc/des.js +93 -0
  218. package/out/vnc/des.js.map +1 -0
  219. package/out/vnc/index.d.ts +7 -0
  220. package/out/vnc/index.js +13 -0
  221. package/out/vnc/index.js.map +1 -0
  222. package/out/vnc/session.d.ts +18 -0
  223. package/out/vnc/session.js +193 -0
  224. package/out/vnc/session.js.map +1 -0
  225. package/out/vnc/types.d.ts +16 -0
  226. package/out/vnc/types.js +6 -0
  227. package/out/vnc/types.js.map +1 -0
  228. package/out/webSocketPoller.d.ts +95 -0
  229. package/out/webSocketPoller.js +986 -0
  230. package/out/webSocketPoller.js.map +1 -0
  231. package/out/webhook.d.ts +37 -0
  232. package/out/webhook.js +265 -0
  233. package/out/webhook.js.map +1 -0
  234. package/out/webhookPoller.d.ts +40 -0
  235. package/out/webhookPoller.js +378 -0
  236. package/out/webhookPoller.js.map +1 -0
  237. package/package.json +54 -41
@@ -0,0 +1,378 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.WebhookPoller = void 0;
37
+ const https = __importStar(require("https"));
38
+ const http = __importStar(require("http"));
39
+ const url = __importStar(require("url"));
40
+ const messageBuilder_1 = require("./messageBuilder");
41
+ const todo_1 = require("./todo");
42
+ const todoWriteManager_1 = require("./todoWriteManager");
43
+ const webSocketPoller_1 = require("./webSocketPoller");
44
+ // ---------------------------------------------------------------------------
45
+ // WebhookPoller — public facade; routes to HTTP polling or WebSocket
46
+ // ---------------------------------------------------------------------------
47
+ class WebhookPoller {
48
+ _impl;
49
+ constructor(baseUrl, apiKey, slug) {
50
+ const isWs = baseUrl.startsWith('ws://') || baseUrl.startsWith('wss://');
51
+ this._impl = isWs
52
+ ? new webSocketPoller_1.WebSocketPoller(baseUrl, apiKey, slug)
53
+ : new HttpWebhookPoller(baseUrl, apiKey, slug);
54
+ }
55
+ /** Start the WebSocket connection (no-op for HTTP pollers). */
56
+ start(todoPath, log, workspaceRoot) {
57
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
58
+ this._impl.start(todoPath, log, workspaceRoot);
59
+ }
60
+ }
61
+ /** Tear down any persistent connections. */
62
+ destroy() {
63
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
64
+ this._impl.destroy();
65
+ }
66
+ }
67
+ /**
68
+ * Poll once for the next pending task and append it to TODO.md.
69
+ * For WebSocket mode: always returns false (tasks arrive via push).
70
+ */
71
+ pollAndAppend(todoPath, workspaceRoot) {
72
+ return this._impl.pollAndAppend(todoPath, workspaceRoot);
73
+ }
74
+ /**
75
+ * Send a JSON frame to the server over the WebSocket connection.
76
+ * No-op (returns false) in HTTP polling mode or when disconnected.
77
+ */
78
+ sendFrame(payload) {
79
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
80
+ return this._impl.sendFrame(payload);
81
+ }
82
+ return false;
83
+ }
84
+ /** Pass the VNC password to use when a vnc_session start arrives. */
85
+ setVncPassword(password) {
86
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
87
+ this._impl.setVncPassword(password);
88
+ }
89
+ }
90
+ setGitEnabled(enabled) {
91
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
92
+ this._impl.setGitEnabled(enabled);
93
+ }
94
+ }
95
+ setRdpSettings(s) {
96
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
97
+ this._impl.setRdpSettings(s);
98
+ }
99
+ }
100
+ /** Register a callback to fire each time the WS connection is established. */
101
+ setOnConnect(cb) {
102
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
103
+ this._impl.setOnConnect(cb);
104
+ }
105
+ }
106
+ /** Register a callback to fire each time a WS-pushed task is appended to TODO.md. */
107
+ setOnTaskAppend(cb) {
108
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
109
+ this._impl.setOnTaskAppend(cb);
110
+ }
111
+ }
112
+ setOnCommand(cb) {
113
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
114
+ this._impl.setOnCommand(cb);
115
+ }
116
+ else {
117
+ this._impl.setOnCommand(cb);
118
+ }
119
+ }
120
+ setOnMcpUpdate(cb) {
121
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
122
+ this._impl.setOnMcpUpdate(cb);
123
+ }
124
+ }
125
+ setOnExportRequest(cb) {
126
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
127
+ this._impl.setOnExportRequest(cb);
128
+ }
129
+ }
130
+ setOnRestoreRequest(cb) {
131
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
132
+ this._impl.setOnRestoreRequest(cb);
133
+ }
134
+ }
135
+ setOnExportConfig(cb) {
136
+ if (this._impl instanceof webSocketPoller_1.WebSocketPoller) {
137
+ this._impl.setOnExportConfig(cb);
138
+ }
139
+ }
140
+ /** True when backed by a WebSocket connection (vs HTTP polling). */
141
+ get isWebSocket() {
142
+ return this._impl instanceof webSocketPoller_1.WebSocketPoller;
143
+ }
144
+ }
145
+ exports.WebhookPoller = WebhookPoller;
146
+ // ---------------------------------------------------------------------------
147
+ // HttpWebhookPoller — original HTTP-polling implementation
148
+ // ---------------------------------------------------------------------------
149
+ class HttpWebhookPoller {
150
+ baseUrl;
151
+ apiKey;
152
+ slug;
153
+ lastProcessedId = 0;
154
+ _etag;
155
+ _polling = false;
156
+ _lastPollTime = 0;
157
+ _onCommand = null;
158
+ static MIN_INTERVAL_MS = 3_000;
159
+ setOnCommand(cb) { this._onCommand = cb; }
160
+ constructor(baseUrl, apiKey, slug) {
161
+ this.baseUrl = baseUrl;
162
+ this.apiKey = apiKey;
163
+ this.slug = slug;
164
+ }
165
+ /**
166
+ * Poll once for the next pending task and append it to TODO.md.
167
+ * Returns true if a task was appended; false otherwise.
168
+ * Skips if a previous poll is still in-flight, or if minimum interval hasn't elapsed.
169
+ */
170
+ async pollAndAppend(todoPath, workspaceRoot) {
171
+ // Skip if a previous request is still in progress
172
+ if (this._polling) {
173
+ return false;
174
+ }
175
+ // Enforce minimum 3-second gap between requests
176
+ const elapsed = Date.now() - this._lastPollTime;
177
+ if (this._lastPollTime > 0 && elapsed < HttpWebhookPoller.MIN_INTERVAL_MS) {
178
+ return false;
179
+ }
180
+ this._polling = true;
181
+ this._lastPollTime = Date.now();
182
+ try {
183
+ const qs = new URLSearchParams({
184
+ status: 'pending',
185
+ per_page: '1',
186
+ endpoint_slug: this.slug,
187
+ }).toString();
188
+ const { data: listData, etag, notModified } = await this._getWithEtag(`/v1/logs?${qs}`);
189
+ // Server says nothing changed — skip processing
190
+ if (notModified) {
191
+ return false;
192
+ }
193
+ // Store ETag for next request
194
+ if (etag) {
195
+ this._etag = etag;
196
+ }
197
+ // Handle both wrapped { data: [...] } and bare [...] responses
198
+ const logs = Array.isArray(listData)
199
+ ? listData
200
+ : listData.data ?? [];
201
+ if (logs.length === 0) {
202
+ return false;
203
+ }
204
+ const log = logs[0];
205
+ const logId = log.id;
206
+ if (!logId || logId <= this.lastProcessedId) {
207
+ return false;
208
+ }
209
+ const detail = await this._get(`/v1/logs/${logId}`);
210
+ // Mark received immediately regardless of outcome (don't re-deliver)
211
+ this.lastProcessedId = logId;
212
+ this._patch(`/v1/logs/${logId}`, { status: 'received' }).catch(() => { });
213
+ // Extract payload — try both nesting styles
214
+ const payload = detail.data?.payload ?? detail.payload;
215
+ if (!payload || payload.event !== 'user_message') {
216
+ return false;
217
+ }
218
+ let taskText = payload.task?.text ?? '';
219
+ // Pre-generate task ID so attachments share the same prefix
220
+ const httpTaskId = (0, todo_1.shortId)();
221
+ const textParts = [];
222
+ const attRefs = [];
223
+ if (payload.parts && workspaceRoot) {
224
+ for (const part of payload.parts) {
225
+ if (part.kind === 'text') {
226
+ const t = part.text ?? '';
227
+ if (t) {
228
+ textParts.push(t);
229
+ }
230
+ }
231
+ else if (part.kind === 'file' && part.file) {
232
+ const name = part.file.name ?? 'attachment';
233
+ const bytesB64 = part.file.bytes;
234
+ if (bytesB64) {
235
+ const buf = Buffer.from(bytesB64, 'base64');
236
+ const rel = (0, messageBuilder_1.saveAttachment)(workspaceRoot, name, buf, httpTaskId);
237
+ attRefs.push(rel);
238
+ }
239
+ else if (part.file.uri) {
240
+ attRefs.push(part.file.uri);
241
+ }
242
+ }
243
+ }
244
+ }
245
+ // Use parts text only as fallback when task.text is absent
246
+ if (!taskText && textParts.length > 0) {
247
+ taskText = textParts.join(' ');
248
+ }
249
+ if (!taskText) {
250
+ return false;
251
+ }
252
+ // Collapse newlines so the entire message becomes a single TODO.md line
253
+ taskText = taskText.replace(/\r\n|\r|\n/g, ' ').trim();
254
+ // Handle slash commands — don't append as tasks
255
+ if (taskText.startsWith('/')) {
256
+ this._onCommand?.(taskText);
257
+ return false;
258
+ }
259
+ const fullText = attRefs.length > 0
260
+ ? taskText + ' ' + attRefs.map(p => `[attachment: ${p}]`).join(' ')
261
+ : taskText;
262
+ await todoWriteManager_1.todoWriter.append(todoPath, fullText, httpTaskId);
263
+ return true;
264
+ }
265
+ catch {
266
+ return false;
267
+ }
268
+ finally {
269
+ this._polling = false;
270
+ }
271
+ }
272
+ // ---------------------------------------------------------------------------
273
+ _getWithEtag(path) {
274
+ return jsonRequestWithEtag('GET', this.baseUrl, path, this.apiKey, this._etag);
275
+ }
276
+ _get(path) {
277
+ return jsonRequest('GET', this.baseUrl, path, this.apiKey, undefined);
278
+ }
279
+ _patch(path, body) {
280
+ return jsonRequest('PATCH', this.baseUrl, path, this.apiKey, body);
281
+ }
282
+ }
283
+ // ---------------------------------------------------------------------------
284
+ // Helpers
285
+ // ---------------------------------------------------------------------------
286
+ function jsonRequestWithEtag(method, baseUrl, path, apiKey, etag) {
287
+ return new Promise((resolve, reject) => {
288
+ const rawUrl = baseUrl.replace(/\/$/, '') + path;
289
+ const parsed = url.parse(rawUrl);
290
+ const headers = {
291
+ 'X-API-Key': apiKey,
292
+ 'Accept': 'application/json',
293
+ 'User-Agent': 'AutoDev-VSCode/1.0',
294
+ };
295
+ if (etag) {
296
+ headers['If-None-Match'] = etag;
297
+ }
298
+ const options = {
299
+ hostname: parsed.hostname ?? '',
300
+ port: parsed.port,
301
+ path: parsed.path ?? '/',
302
+ method,
303
+ headers,
304
+ };
305
+ const transport = rawUrl.startsWith('https') ? https : http;
306
+ const req = transport.request(options, (res) => {
307
+ if (res.statusCode === 304) {
308
+ resolve({ data: {}, etag, notModified: true });
309
+ return;
310
+ }
311
+ const responseEtag = res.headers['etag'];
312
+ let data = '';
313
+ res.on('data', (chunk) => { data += chunk; });
314
+ res.on('end', () => {
315
+ if (!data.trim()) {
316
+ resolve({ data: {}, etag: responseEtag, notModified: false });
317
+ return;
318
+ }
319
+ try {
320
+ resolve({ data: JSON.parse(data), etag: responseEtag, notModified: false });
321
+ }
322
+ catch {
323
+ reject(new Error('Invalid JSON'));
324
+ }
325
+ });
326
+ });
327
+ req.on('error', reject);
328
+ req.setTimeout(15_000, () => { req.destroy(new Error('Request timed out')); });
329
+ req.end();
330
+ });
331
+ }
332
+ function jsonRequest(method, baseUrl, path, apiKey, body) {
333
+ return new Promise((resolve, reject) => {
334
+ const rawUrl = baseUrl.replace(/\/$/, '') + path;
335
+ const parsed = url.parse(rawUrl);
336
+ const json = body !== undefined ? JSON.stringify(body) : undefined;
337
+ const headers = {
338
+ 'X-API-Key': apiKey,
339
+ 'Accept': 'application/json',
340
+ 'User-Agent': 'AutoDev-VSCode/1.0',
341
+ };
342
+ if (json) {
343
+ headers['Content-Type'] = 'application/json';
344
+ headers['Content-Length'] = String(Buffer.byteLength(json));
345
+ }
346
+ const options = {
347
+ hostname: parsed.hostname ?? '',
348
+ port: parsed.port,
349
+ path: parsed.path ?? '/',
350
+ method,
351
+ headers,
352
+ };
353
+ const transport = rawUrl.startsWith('https') ? https : http;
354
+ const req = transport.request(options, (res) => {
355
+ let data = '';
356
+ res.on('data', (chunk) => { data += chunk; });
357
+ res.on('end', () => {
358
+ if (!data.trim()) {
359
+ resolve({});
360
+ return;
361
+ }
362
+ try {
363
+ resolve(JSON.parse(data));
364
+ }
365
+ catch {
366
+ reject(new Error('Invalid JSON'));
367
+ }
368
+ });
369
+ });
370
+ req.on('error', reject);
371
+ req.setTimeout(15_000, () => { req.destroy(new Error('Request timed out')); });
372
+ if (json) {
373
+ req.write(json);
374
+ }
375
+ req.end();
376
+ });
377
+ }
378
+ //# sourceMappingURL=webhookPoller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhookPoller.js","sourceRoot":"","sources":["../src/webhookPoller.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,41 +1,54 @@
1
- {
2
- "name": "autodev-cli",
3
- "version": "1.4.0",
4
- "description": "AutoAIDev CLI — autonomous AI task loop with VS Code / Cursor launcher",
5
- "license": "MIT",
6
- "bin": {
7
- "autodev": "./bin/autodev.js"
8
- },
9
- "main": "./out/cli.js",
10
- "files": [
11
- "bin",
12
- "out",
13
- "README.md",
14
- "LICENSE"
15
- ],
16
- "keywords": [
17
- "ai",
18
- "claude",
19
- "copilot",
20
- "opencode",
21
- "autonomous",
22
- "agent",
23
- "cli",
24
- "vscode",
25
- "cursor"
26
- ],
27
- "scripts": {
28
- "build": "tsc -p ./",
29
- "dev": "tsc -p ./ --watch",
30
- "prepublishOnly": "npm run build",
31
- "start": "node bin/autodev.js"
32
- },
33
- "dependencies": {
34
- "autoaidev": "^1.0.58",
35
- "commander": "^12.1.0"
36
- },
37
- "devDependencies": {
38
- "@types/node": "^20.0.0",
39
- "typescript": "^5.4.0"
40
- }
41
- }
1
+ {
2
+ "name": "autodev-cli",
3
+ "version": "1.4.4",
4
+ "description": "AutoAIDev CLI — autonomous AI task loop with VS Code / Cursor launcher",
5
+ "license": "MIT",
6
+ "bin": {
7
+ "autodev": "./bin/autodev.js"
8
+ },
9
+ "main": "./out/cli.js",
10
+ "files": [
11
+ "bin",
12
+ "out",
13
+ "README.md",
14
+ "LICENSE"
15
+ ],
16
+ "keywords": [
17
+ "ai",
18
+ "claude",
19
+ "copilot",
20
+ "opencode",
21
+ "autonomous",
22
+ "agent",
23
+ "cli",
24
+ "vscode",
25
+ "cursor"
26
+ ],
27
+ "scripts": {
28
+ "build": "tsc -p ./",
29
+ "dev": "tsc -p ./ --watch",
30
+ "prepublishOnly": "npm run build",
31
+ "start": "node bin/autodev.js",
32
+ "test": "node test/smoke.mjs"
33
+ },
34
+ "dependencies": {
35
+ "commander": "^12.1.0",
36
+ "node-pty": "^1.1.0",
37
+ "@opencode-ai/sdk": "^1.14.41",
38
+ "@raylin01/claude-client": "^0.3.3",
39
+ "adm-zip": "^0.5.17",
40
+ "imapflow": "^1.0.171",
41
+ "mailparser": "^3.7.1"
42
+ },
43
+ "devDependencies": {
44
+ "@types/node": "^20.0.0",
45
+ "typescript": "^5.4.0",
46
+ "@types/adm-zip": "^0.5.7",
47
+ "@types/mailparser": "^3.4.6"
48
+ },
49
+ "exports": {
50
+ ".": "./out/cli.js",
51
+ "./*": "./out/*.js",
52
+ "./package.json": "./package.json"
53
+ }
54
+ }