@overlordai/server 1.0.112 → 1.0.114

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 (191) hide show
  1. package/database/migrations/003-chat-bindings-project-key-index.sql +1 -0
  2. package/database/migrations/004-drop-agent-command.sql +2 -0
  3. package/dist/adapters/command-parser.utils.d.ts +45 -0
  4. package/dist/adapters/command-parser.utils.d.ts.map +1 -0
  5. package/dist/adapters/command-parser.utils.js +144 -0
  6. package/dist/adapters/command-parser.utils.js.map +1 -0
  7. package/dist/adapters/help-text.d.ts +2 -0
  8. package/dist/adapters/help-text.d.ts.map +1 -0
  9. package/dist/adapters/help-text.js +24 -0
  10. package/dist/adapters/help-text.js.map +1 -0
  11. package/dist/adapters/lark/lark-message.parser.d.ts +7 -30
  12. package/dist/adapters/lark/lark-message.parser.d.ts.map +1 -1
  13. package/dist/adapters/lark/lark-message.parser.js +26 -138
  14. package/dist/adapters/lark/lark-message.parser.js.map +1 -1
  15. package/dist/adapters/lark/lark.adapter.d.ts +12 -0
  16. package/dist/adapters/lark/lark.adapter.d.ts.map +1 -1
  17. package/dist/adapters/lark/lark.adapter.js +83 -17
  18. package/dist/adapters/lark/lark.adapter.js.map +1 -1
  19. package/dist/adapters/slack/slack-message.parser.d.ts +2 -9
  20. package/dist/adapters/slack/slack-message.parser.d.ts.map +1 -1
  21. package/dist/adapters/slack/slack-message.parser.js +21 -113
  22. package/dist/adapters/slack/slack-message.parser.js.map +1 -1
  23. package/dist/adapters/slack/slack.adapter.d.ts +4 -0
  24. package/dist/adapters/slack/slack.adapter.d.ts.map +1 -1
  25. package/dist/adapters/slack/slack.adapter.js +78 -20
  26. package/dist/adapters/slack/slack.adapter.js.map +1 -1
  27. package/dist/adapters/slack/slack.controller.d.ts.map +1 -1
  28. package/dist/adapters/slack/slack.controller.js +5 -2
  29. package/dist/adapters/slack/slack.controller.js.map +1 -1
  30. package/dist/common/project-validation.d.ts +1 -1
  31. package/dist/common/project-validation.d.ts.map +1 -1
  32. package/dist/common/project-validation.js +1 -9
  33. package/dist/common/project-validation.js.map +1 -1
  34. package/dist/database/repositories/bot.repository.d.ts +4 -0
  35. package/dist/database/repositories/bot.repository.d.ts.map +1 -1
  36. package/dist/database/repositories/bot.repository.js +15 -0
  37. package/dist/database/repositories/bot.repository.js.map +1 -1
  38. package/dist/database/repositories/project.repository.d.ts.map +1 -1
  39. package/dist/database/repositories/project.repository.js +0 -2
  40. package/dist/database/repositories/project.repository.js.map +1 -1
  41. package/dist/database/repositories/task.repository.d.ts +1 -1
  42. package/dist/database/repositories/task.repository.d.ts.map +1 -1
  43. package/dist/database/repositories/task.repository.js +4 -1
  44. package/dist/database/repositories/task.repository.js.map +1 -1
  45. package/dist/dispatcher/cleanup.service.d.ts +5 -0
  46. package/dist/dispatcher/cleanup.service.d.ts.map +1 -1
  47. package/dist/dispatcher/cleanup.service.js +19 -0
  48. package/dist/dispatcher/cleanup.service.js.map +1 -1
  49. package/dist/dispatcher/dispatcher.module.d.ts.map +1 -1
  50. package/dist/dispatcher/dispatcher.module.js +2 -0
  51. package/dist/dispatcher/dispatcher.module.js.map +1 -1
  52. package/dist/dispatcher/dispatcher.service.d.ts +12 -4
  53. package/dist/dispatcher/dispatcher.service.d.ts.map +1 -1
  54. package/dist/dispatcher/dispatcher.service.js +150 -40
  55. package/dist/dispatcher/dispatcher.service.js.map +1 -1
  56. package/dist/dispatcher/dispatcher.types.d.ts +1 -0
  57. package/dist/dispatcher/dispatcher.types.d.ts.map +1 -1
  58. package/dist/dispatcher/scheduler.service.d.ts.map +1 -1
  59. package/dist/dispatcher/scheduler.service.js +13 -2
  60. package/dist/dispatcher/scheduler.service.js.map +1 -1
  61. package/dist/dispatcher/task-creation.service.d.ts.map +1 -1
  62. package/dist/dispatcher/task-creation.service.js +16 -1
  63. package/dist/dispatcher/task-creation.service.js.map +1 -1
  64. package/dist/dispatcher/task-lifecycle.service.d.ts +2 -2
  65. package/dist/dispatcher/task-lifecycle.service.d.ts.map +1 -1
  66. package/dist/dispatcher/task-lifecycle.service.js +16 -8
  67. package/dist/dispatcher/task-lifecycle.service.js.map +1 -1
  68. package/dist/events/event-types.d.ts +1 -0
  69. package/dist/events/event-types.d.ts.map +1 -1
  70. package/dist/notifier/notification-consumer.d.ts +18 -1
  71. package/dist/notifier/notification-consumer.d.ts.map +1 -1
  72. package/dist/notifier/notification-consumer.js +91 -4
  73. package/dist/notifier/notification-consumer.js.map +1 -1
  74. package/dist/notifier/template.service.d.ts +2 -0
  75. package/dist/notifier/template.service.d.ts.map +1 -1
  76. package/dist/notifier/template.service.js +20 -0
  77. package/dist/notifier/template.service.js.map +1 -1
  78. package/dist/web/dashboard.controller.d.ts +1 -1
  79. package/dist/web/dashboard.controller.d.ts.map +1 -1
  80. package/dist/web/dashboard.controller.js +12 -4
  81. package/dist/web/dashboard.controller.js.map +1 -1
  82. package/dist/web/dashboard.service.d.ts +18 -0
  83. package/dist/web/dashboard.service.d.ts.map +1 -1
  84. package/dist/web/dashboard.service.js +78 -8
  85. package/dist/web/dashboard.service.js.map +1 -1
  86. package/dist/web/frame-handlers/progress.handler.d.ts +3 -1
  87. package/dist/web/frame-handlers/progress.handler.d.ts.map +1 -1
  88. package/dist/web/frame-handlers/progress.handler.js +22 -3
  89. package/dist/web/frame-handlers/progress.handler.js.map +1 -1
  90. package/dist/web/project.controller.d.ts +0 -2
  91. package/dist/web/project.controller.d.ts.map +1 -1
  92. package/dist/web/task.controller.d.ts +3 -1
  93. package/dist/web/task.controller.d.ts.map +1 -1
  94. package/dist/web/task.controller.js +7 -5
  95. package/dist/web/task.controller.js.map +1 -1
  96. package/dist/web/web-event.service.d.ts.map +1 -1
  97. package/dist/web/web-event.service.js +1 -0
  98. package/dist/web/web-event.service.js.map +1 -1
  99. package/dist/web/worker-channel.gateway.d.ts.map +1 -1
  100. package/dist/web/worker-channel.gateway.js +1 -1
  101. package/dist/web/worker-channel.gateway.js.map +1 -1
  102. package/package.json +4 -4
  103. package/public/assets/{AccessTokensPage-B37kGOg-.js → AccessTokensPage-B2zkZtaB.js} +1 -1
  104. package/public/assets/{AdminPage-Jz5wJYYo.js → AdminPage-B-n-9yUY.js} +1 -1
  105. package/public/assets/{ApiReferencePage-3HCao2I-.js → ApiReferencePage-Dcik4fBN.js} +1 -1
  106. package/public/assets/{ArchitecturePage-Dkq4OMH4.js → ArchitecturePage-CDgB6NL0.js} +1 -1
  107. package/public/assets/{AuditLogPage-CBPpYMF3.js → AuditLogPage-CmxGpu8q.js} +1 -1
  108. package/public/assets/{BindPlatformPage-U0OoNP9F.js → BindPlatformPage-D-7wxMjF.js} +1 -1
  109. package/public/assets/{BotIntegrationPage-HMlGzxip.js → BotIntegrationPage-DoD5KbmU.js} +1 -1
  110. package/public/assets/BotManage-DSe8d-gZ.js +6 -0
  111. package/public/assets/{BotSetupPage-DZh6oQoQ.js → BotSetupPage-BkNF3ug4.js} +1 -1
  112. package/public/assets/{ChangelogPage-DKgK8Zi9.js → ChangelogPage-BUAm5LN6.js} +1 -1
  113. package/public/assets/{CliReferencePage-DPdhWACA.js → CliReferencePage-B6-2m7YU.js} +1 -1
  114. package/public/assets/{DeploymentPage-4VuP4mnX.js → DeploymentPage-cW2JDGd0.js} +1 -1
  115. package/public/assets/{DevWorkflowPage-CQ1hJ7Or.js → DevWorkflowPage-BbNK1Bmy.js} +1 -1
  116. package/public/assets/{DeveloperManage-Kco6t4om.js → DeveloperManage-BVkSw-WE.js} +2 -2
  117. package/public/assets/{DeveloperSetupPage-mRrbH5xe.js → DeveloperSetupPage-Cf8ehfWm.js} +1 -1
  118. package/public/assets/{DocsIndexPage-DYjwjEE0.js → DocsIndexPage-BEMGBIkx.js} +1 -1
  119. package/public/assets/{DocsLayout-CrX-ApPM.js → DocsLayout-BLcuuadd.js} +1 -1
  120. package/public/assets/{DocsPrimitives-DeUTjHq6.js → DocsPrimitives-BEIQH4P7.js} +1 -1
  121. package/public/assets/EditProjectPage-RsYg77Bf.js +2 -0
  122. package/public/assets/{EmptyState-Cuv36Xt4.js → EmptyState-D8UwaoPs.js} +1 -1
  123. package/public/assets/{EnvVariablesPage-CvHe4Xig.js → EnvVariablesPage-krKQsNzw.js} +1 -1
  124. package/public/assets/HomePage-vhKQtyLw.js +1 -0
  125. package/public/assets/{InfoRow-DeNySRbP.js → InfoRow-BbQYGWPd.js} +1 -1
  126. package/public/assets/{InstallationPage-BCGJORc8.js → InstallationPage-blIErVXZ.js} +1 -1
  127. package/public/assets/{LandingPage-CTroZzhm.js → LandingPage-CL2eVc3w.js} +1 -1
  128. package/public/assets/{LocalDevelopmentPage-BXM4MX2P.js → LocalDevelopmentPage-CNfZtynN.js} +1 -1
  129. package/public/assets/{LoginPage-A75sAGVu.js → LoginPage-C_jpU4-N.js} +1 -1
  130. package/public/assets/{MetricBar-BDEzd1N4.js → MetricBar-CCL5kOaE.js} +1 -1
  131. package/public/assets/{NotFoundPage-C8Kh0_3v.js → NotFoundPage-DiQ3T_pE.js} +1 -1
  132. package/public/assets/{OnboardingGuide-_2H21YWa.js → OnboardingGuide-xVUtEvVm.js} +1 -1
  133. package/public/assets/{PermissionsPage-2rL23RBw.js → PermissionsPage-CE5Yc52w.js} +1 -1
  134. package/public/assets/{PipelineConfigPage-B1idgNZD.js → PipelineConfigPage-BG_LWoNZ.js} +1 -1
  135. package/public/assets/{PipelineEditorPage-BePXaiIA.js → PipelineEditorPage-BR9ozDOr.js} +1 -1
  136. package/public/assets/{ProfilePage-Bsb-yYFk.js → ProfilePage-kUKBviJg.js} +1 -1
  137. package/public/assets/{ProjectDetailPage-CJ5e4NOa.js → ProjectDetailPage-VE0081wk.js} +3 -3
  138. package/public/assets/ProjectListPage-DZoCY4RY.js +6 -0
  139. package/public/assets/{PtyTerminal-DaKz0vK4.js → PtyTerminal-DY7uY9Y-.js} +7 -7
  140. package/public/assets/{QuickAuth-B7dl4f3-.js → QuickAuth-DbURb8Mn.js} +1 -1
  141. package/public/assets/{RemoveMemberConfirmDialog-2dHwvxlc.js → RemoveMemberConfirmDialog-WvwPPSjT.js} +1 -1
  142. package/public/assets/{Select-Ddvq-p-d.js → Select-B_UE_NDL.js} +1 -1
  143. package/public/assets/{SettingsPage-CBdcZRG8.js → SettingsPage-DpJ00PdY.js} +1 -1
  144. package/public/assets/{Skeleton-DobWAlna.js → Skeleton-CqLLWdXS.js} +1 -1
  145. package/public/assets/{SkillPage-B8K73UoR.js → SkillPage-D5a41yA5.js} +1 -1
  146. package/public/assets/TaskDetailPage-Dt3Hj-nd.js +21 -0
  147. package/public/assets/TaskListPage-CbmW-VAl.js +1 -0
  148. package/public/assets/{TaskStatusBadge-DEvQC-u6.js → TaskStatusBadge-DzeMf5Ey.js} +1 -1
  149. package/public/assets/TerminalHomePage-D7aNN02N.js +11 -0
  150. package/public/assets/{TokenManage-pe5Gl1xB.js → TokenManage-BCVRHkhz.js} +1 -1
  151. package/public/assets/Tooltip-BWRiD768.js +1 -0
  152. package/public/assets/{TotpSetupPage-Cg2eJ4tj.js → TotpSetupPage-D4T0gS9_.js} +1 -1
  153. package/public/assets/WorkerDetailPage-D9ZTWwot.js +1 -0
  154. package/public/assets/{WorkerListPage-ikzre6x3.js → WorkerListPage-4qQGHwbV.js} +2 -2
  155. package/public/assets/{WorkerOperationsPage-CZTm_7Iw.js → WorkerOperationsPage-DKPUYRDJ.js} +1 -1
  156. package/public/assets/{WorkerSetupGuidePage-DOoDjnsh.js → WorkerSetupGuidePage-B4B-DkyO.js} +1 -1
  157. package/public/assets/{WorkerSetupPage-CKBix5Q1.js → WorkerSetupPage-frqVW4Ll.js} +1 -1
  158. package/public/assets/{arrow-left-JxQLehNu.js → arrow-left-DEORM5c1.js} +1 -1
  159. package/public/assets/{arrow-right-B9MMPq7r.js → arrow-right-B0qrrCV_.js} +1 -1
  160. package/public/assets/{bot-D4XAIZpg.js → bot-B_Wtzq9W.js} +1 -1
  161. package/public/assets/{chevron-right-BnrKn_TK.js → chevron-right-CURI3LO_.js} +1 -1
  162. package/public/assets/{copy-BMk275-C.js → copy-4UTzTyXv.js} +1 -1
  163. package/public/assets/{download-CDL9H3k4.js → download-Dq5jLFci.js} +1 -1
  164. package/public/assets/{external-link-w9HXli2Y.js → external-link-Cj283ZgT.js} +1 -1
  165. package/public/assets/index-BiItJ2NI.css +1 -0
  166. package/public/assets/{index-BQnGxJp6.js → index-C5MJg1oC.js} +48 -48
  167. package/public/assets/{key-D2RcZwqu.js → key-BKBK0Uc2.js} +1 -1
  168. package/public/assets/{loader-circle-WkHSZw6i.js → loader-circle-B71q4Dz7.js} +1 -1
  169. package/public/assets/{pencil-DhRHGJdQ.js → pencil-DG3Q-41a.js} +1 -1
  170. package/public/assets/{plus-DjrYpu3Y.js → plus-CQjC8fgx.js} +1 -1
  171. package/public/assets/{rotate-ccw-BQIvBc59.js → rotate-ccw-CQh0kfDP.js} +1 -1
  172. package/public/assets/{scroll-text-CYw22M6v.js → scroll-text-DF3DMVZk.js} +1 -1
  173. package/public/assets/{settings-BnLpYMUh.js → settings-C_K0CJNU.js} +1 -1
  174. package/public/assets/{status-colors-BctY6ntj.js → status-colors-BnNRsWp0.js} +1 -1
  175. package/public/assets/{task-constants-Q3KTzg_P.js → task-constants-D_2_U6qL.js} +1 -1
  176. package/public/assets/{trash-2-CKUpgjbq.js → trash-2-DsQUbmfY.js} +1 -1
  177. package/public/assets/{useFetch-B2mQfB2A.js → useFetch-C8LjfJUm.js} +1 -1
  178. package/public/assets/{users-Bs898oaT.js → users-BWaNs7Vz.js} +1 -1
  179. package/public/assets/{wifi-sZC7YCLF.js → wifi-0ZLwtMKj.js} +1 -1
  180. package/public/assets/{workflow-aMBoiSG2.js → workflow-B0yaOIwg.js} +1 -1
  181. package/public/index.html +2 -2
  182. package/public/sw.js +1 -1
  183. package/public/assets/BotManage-VXqJlXLc.js +0 -6
  184. package/public/assets/EditProjectPage-Df1ZAe44.js +0 -2
  185. package/public/assets/HomePage-BMuwtC-M.js +0 -1
  186. package/public/assets/ProjectListPage-DpivjBfJ.js +0 -6
  187. package/public/assets/TaskDetailPage-iKtR7IDt.js +0 -21
  188. package/public/assets/TaskListPage-CdOI_dWD.js +0 -1
  189. package/public/assets/TerminalHomePage-BMIZMlee.js +0 -11
  190. package/public/assets/WorkerDetailPage-ChkCQsSd.js +0 -1
  191. package/public/assets/index-DrlMKbMb.css +0 -1
@@ -60,6 +60,7 @@ const crypto_service_1 = require("../../common/crypto.service");
60
60
  const config_1 = require("../../common/config");
61
61
  const lark_message_parser_1 = require("./lark-message.parser");
62
62
  const lark_card_builder_1 = require("./lark-card.builder");
63
+ const help_text_1 = require("../help-text");
63
64
  /**
64
65
  * Lark Adapter — handles Lark webhooks, sends/updates messages,
65
66
  * resolves users. Supports multiple bots via app_id routing.
@@ -164,6 +165,7 @@ let LarkAdapter = class LarkAdapter {
164
165
  const senderUid = event?.sender?.sender_id?.open_id ??
165
166
  event?.sender?.sender_id?.user_id ??
166
167
  '';
168
+ const parentId = message.parent_id;
167
169
  // Parse the command
168
170
  const parsed = this.parser.parse(commandText);
169
171
  if (parsed.type === 'help') {
@@ -214,12 +216,36 @@ let LarkAdapter = class LarkAdapter {
214
216
  await this.sendTextMessage(message.chat_id, lines.join('\n'), appId);
215
217
  return null;
216
218
  }
219
+ // Fetch quoted message content if this is a reply (deferred until after help/bind/info)
220
+ let quotedContent;
221
+ if (parentId) {
222
+ try {
223
+ quotedContent = await this.fetchQuotedContent(parentId, appId);
224
+ }
225
+ catch (err) {
226
+ this.logger.warn(`Failed to fetch quoted message ${parentId}: ${(0, protocol_1.getErrorMessage)(err)}`);
227
+ await this.sendTextMessage(message.chat_id, 'Failed to fetch quoted message. Please try again.', appId);
228
+ return null;
229
+ }
230
+ }
217
231
  const developer = await this.resolveUser(senderUid);
218
232
  if (!developer) {
219
233
  this.logger.warn(`Cannot resolve user for platform UID: ${senderUid}`);
220
234
  await this.sendTextMessage(message.chat_id, 'Your Lark account is not linked. Send "bind" to get a link to connect your account.', appId);
221
235
  return null;
222
236
  }
237
+ // Resolve @mentioned developer (non-sender, non-bot)
238
+ let mentionedDeveloperId;
239
+ const mentionResult = this.resolveDeveloperMention(message.mentions, senderUid);
240
+ if (mentionResult) {
241
+ if ('developerId' in mentionResult) {
242
+ mentionedDeveloperId = mentionResult.developerId;
243
+ }
244
+ else {
245
+ // Unregistered mention — warn and fall back to sender
246
+ await this.sendTextMessage(message.chat_id, `@${mentionResult.unregisteredName} is not registered as a developer. Task assigned to you.`, appId);
247
+ }
248
+ }
223
249
  // Resolve default project from chat binding if not specified
224
250
  const chatBinding = this.botRepo.findBindingByChatId(message.chat_id);
225
251
  if (!parsed.args.project && chatBinding?.projectKey) {
@@ -227,7 +253,11 @@ let LarkAdapter = class LarkAdapter {
227
253
  }
228
254
  return {
229
255
  type: parsed.type,
230
- args: parsed.args,
256
+ args: {
257
+ ...parsed.args,
258
+ ...(quotedContent ? { quotedContent, quotedMsgId: parentId } : {}),
259
+ ...(mentionedDeveloperId ? { developer: mentionedDeveloperId } : {}),
260
+ },
231
261
  platform: protocol_1.Platform.LARK,
232
262
  user: {
233
263
  id: developer.id,
@@ -453,26 +483,62 @@ let LarkAdapter = class LarkAdapter {
453
483
  return '';
454
484
  }
455
485
  }
486
+ /**
487
+ * Fetch the text content of a quoted (parent) message.
488
+ * Returns null if the message is not text or cannot be fetched.
489
+ */
490
+ async fetchQuotedContent(messageId, appId) {
491
+ const client = this.getOrCreateClient(appId);
492
+ if (!client)
493
+ return undefined;
494
+ const resp = await client.im.message.get({ path: { message_id: messageId } });
495
+ const item = resp?.data?.items?.[0];
496
+ if (!item || item.msg_type !== 'text')
497
+ return undefined;
498
+ try {
499
+ const parsed = JSON.parse(item.body?.content ?? '{}');
500
+ return parsed.text?.trim() || undefined;
501
+ }
502
+ catch {
503
+ return undefined;
504
+ }
505
+ }
506
+ /**
507
+ * Resolve a @mentioned developer from the mentions array.
508
+ * Filters out the sender's own mention. The first mention is assumed to be
509
+ * the bot. If a second mention resolves to a registered developer, returns
510
+ * their id and name. If unresolved, returns the unregistered name.
511
+ */
512
+ resolveDeveloperMention(mentions, senderOpenId) {
513
+ if (!mentions || mentions.length === 0)
514
+ return null;
515
+ // Filter out sender's own mention
516
+ const nonSenderMentions = mentions.filter((m) => m.id.open_id !== senderOpenId);
517
+ if (nonSenderMentions.length === 0)
518
+ return null;
519
+ // The first non-sender mention is usually the bot. Look for a second one.
520
+ // Try to find a resolved developer among non-sender mentions (skip index 0 = bot).
521
+ const candidateMentions = nonSenderMentions.length >= 2
522
+ ? nonSenderMentions.slice(1)
523
+ : [];
524
+ for (const mention of candidateMentions) {
525
+ const openId = mention.id.open_id;
526
+ if (!openId)
527
+ continue;
528
+ const dev = this.developerRepo.resolveByPlatformUid(protocol_1.Platform.LARK, openId);
529
+ if (dev) {
530
+ return { developerId: dev.id, name: dev.name };
531
+ }
532
+ // Not a registered dev — return unregistered name
533
+ return { unregisteredName: mention.name };
534
+ }
535
+ return null;
536
+ }
456
537
  /**
457
538
  * Send a help message listing available commands.
458
539
  */
459
540
  async sendHelpMessage(chatId, appId) {
460
- const helpText = [
461
- 'Available commands:',
462
- ' develop "description" [--project key] [--on worker]',
463
- ' progress [#taskId]',
464
- ' cancel #taskId',
465
- ' retry #taskId',
466
- ' list [--project key]',
467
- ' workspace #taskId',
468
- ' logs #taskId',
469
- ' confirm #taskId',
470
- ' drain worker-name',
471
- ' undrain worker-name',
472
- ' bind — link your Lark account to Overlord',
473
- ' info — show chat and user info for this channel',
474
- ].join('\n');
475
- await this.sendTextMessage(chatId, helpText, appId);
541
+ await this.sendTextMessage(chatId, (0, help_text_1.buildHelpText)('Lark'), appId);
476
542
  }
477
543
  };
478
544
  exports.LarkAdapter = LarkAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"lark.adapter.js","sourceRoot":"","sources":["../../../src/adapters/lark/lark.adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lark.adapter.js","sourceRoot":"","sources":["../../../src/adapters/lark/lark.adapter.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,8 @@
1
- import type { ParsedCommand } from '../lark/lark-message.parser';
2
- export type { ParsedCommand };
1
+ import type { ParsedCommand } from '../command-parser.utils';
2
+ export type { ParsedCommand } from '../command-parser.utils';
3
3
  export declare class SlackMessageParser {
4
4
  stripBotMention(text: string, botUserId: string): string;
5
5
  parse(text: string): ParsedCommand;
6
- private parseDevelop;
7
- private parseWithOptionalTaskId;
8
- private parseWithRequiredTaskId;
9
- private parseList;
10
- private parseWorkerCommand;
11
- private extractTaskId;
12
6
  private unescapeMrkdwn;
13
- private tokenize;
14
7
  }
15
8
  //# sourceMappingURL=slack-message.parser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slack-message.parser.d.ts","sourceRoot":"","sources":["../../../src/adapters/slack/slack-message.parser.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B,qBACa,kBAAkB;IAC7B,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAIxD,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;IA+ClC,OAAO,CAAC,YAAY;IAkDpB,OAAO,CAAC,uBAAuB;IAK/B,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,QAAQ;CAUjB"}
1
+ {"version":3,"file":"slack-message.parser.d.ts","sourceRoot":"","sources":["../../../src/adapters/slack/slack-message.parser.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,qBACa,kBAAkB;IAC7B,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAIxD,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;IAsDlC,OAAO,CAAC,cAAc;CAIvB"}
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.SlackMessageParser = void 0;
10
10
  const common_1 = require("@nestjs/common");
11
11
  const protocol_1 = require("@overlordai/protocol");
12
+ const command_parser_utils_1 = require("../command-parser.utils");
12
13
  let SlackMessageParser = class SlackMessageParser {
13
14
  stripBotMention(text, botUserId) {
14
15
  return text.replace(new RegExp(`<@${botUserId}>`, 'g'), '').trim();
@@ -18,7 +19,7 @@ let SlackMessageParser = class SlackMessageParser {
18
19
  if (!unescaped) {
19
20
  return { type: 'help', args: {} };
20
21
  }
21
- const tokens = this.tokenize(unescaped);
22
+ const tokens = (0, command_parser_utils_1.tokenize)(unescaped);
22
23
  if (tokens.length === 0) {
23
24
  return { type: 'help', args: {} };
24
25
  }
@@ -26,28 +27,35 @@ let SlackMessageParser = class SlackMessageParser {
26
27
  switch (commandName) {
27
28
  case 'develop':
28
29
  case 'dev':
29
- return this.parseDevelop(tokens.slice(1));
30
+ return (0, command_parser_utils_1.parseDevelop)(tokens.slice(1));
30
31
  case 'progress':
31
- return this.parseWithOptionalTaskId(protocol_1.CommandType.PROGRESS, tokens.slice(1));
32
+ return (0, command_parser_utils_1.parseWithOptionalTaskId)(protocol_1.CommandType.PROGRESS, tokens.slice(1));
32
33
  case 'cancel':
33
- return this.parseWithRequiredTaskId(protocol_1.CommandType.CANCEL, tokens.slice(1));
34
+ return (0, command_parser_utils_1.parseWithRequiredTaskId)(protocol_1.CommandType.CANCEL, tokens.slice(1));
34
35
  case 'retry':
35
- return this.parseWithRequiredTaskId(protocol_1.CommandType.RETRY, tokens.slice(1));
36
+ return (0, command_parser_utils_1.parseWithRequiredTaskId)(protocol_1.CommandType.RETRY, tokens.slice(1));
36
37
  case 'list':
37
38
  case 'ls':
38
- return this.parseList(tokens.slice(1));
39
+ return (0, command_parser_utils_1.parseList)(tokens.slice(1));
39
40
  case 'workspace':
40
41
  case 'ws':
41
- return this.parseWithRequiredTaskId(protocol_1.CommandType.WORKSPACE, tokens.slice(1));
42
+ return (0, command_parser_utils_1.parseWithRequiredTaskId)(protocol_1.CommandType.WORKSPACE, tokens.slice(1));
42
43
  case 'logs':
43
44
  case 'log':
44
- return this.parseWithRequiredTaskId(protocol_1.CommandType.LOGS, tokens.slice(1));
45
+ return (0, command_parser_utils_1.parseWithRequiredTaskId)(protocol_1.CommandType.LOGS, tokens.slice(1));
45
46
  case 'confirm':
46
- return this.parseWithRequiredTaskId(protocol_1.CommandType.CONFIRM, tokens.slice(1));
47
- case 'drain':
48
- return this.parseWorkerCommand(protocol_1.CommandType.DRAIN, tokens.slice(1));
49
- case 'undrain':
50
- return this.parseWorkerCommand(protocol_1.CommandType.UNDRAIN, tokens.slice(1));
47
+ return (0, command_parser_utils_1.parseWithRequiredTaskId)(protocol_1.CommandType.CONFIRM, tokens.slice(1));
48
+ case 'projects':
49
+ case 'proj':
50
+ return { type: protocol_1.CommandType.PROJECTS, args: {} };
51
+ case 'status':
52
+ return { type: protocol_1.CommandType.STATUS, args: {} };
53
+ case 'show':
54
+ return (0, command_parser_utils_1.parseWithRequiredTaskId)(protocol_1.CommandType.SHOW, tokens.slice(1));
55
+ case 'workers':
56
+ return { type: protocol_1.CommandType.WORKERS, args: {} };
57
+ case 'search':
58
+ return (0, command_parser_utils_1.parseSearch)(tokens.slice(1));
51
59
  case 'bind':
52
60
  return { type: protocol_1.CommandType.BIND, args: {} };
53
61
  case 'info':
@@ -56,109 +64,9 @@ let SlackMessageParser = class SlackMessageParser {
56
64
  return { type: 'help', args: {} };
57
65
  }
58
66
  }
59
- parseDevelop(tokens) {
60
- let description;
61
- let project;
62
- let worker;
63
- let i = 0;
64
- while (i < tokens.length) {
65
- const token = tokens[i];
66
- if (token === '--project' || token === '-p') {
67
- i++;
68
- if (i < tokens.length)
69
- project = tokens[i];
70
- i++;
71
- continue;
72
- }
73
- if (token === '--on') {
74
- i++;
75
- if (i < tokens.length)
76
- worker = tokens[i];
77
- i++;
78
- continue;
79
- }
80
- if (description === undefined) {
81
- description = token;
82
- }
83
- i++;
84
- }
85
- if (!description) {
86
- return { type: 'help', args: {} };
87
- }
88
- let taskType;
89
- if (description) {
90
- const typeMatch = description.match(/^(feat|fix|refactor|docs|chore):\s*/i);
91
- if (typeMatch) {
92
- taskType = typeMatch[1].toLowerCase();
93
- description = description.slice(typeMatch[0].length).trim();
94
- }
95
- }
96
- return {
97
- type: protocol_1.CommandType.DEVELOP,
98
- args: {
99
- description: description.trim(),
100
- ...(project ? { project } : {}),
101
- ...(worker ? { worker } : {}),
102
- ...(taskType ? { taskType } : {}),
103
- },
104
- };
105
- }
106
- parseWithOptionalTaskId(type, tokens) {
107
- const taskId = this.extractTaskId(tokens);
108
- return { type, args: taskId !== undefined ? { taskId } : {} };
109
- }
110
- parseWithRequiredTaskId(type, tokens) {
111
- const taskId = this.extractTaskId(tokens);
112
- if (taskId === undefined) {
113
- return { type: 'help', args: {} };
114
- }
115
- return { type, args: { taskId } };
116
- }
117
- parseList(tokens) {
118
- let project;
119
- let i = 0;
120
- while (i < tokens.length) {
121
- const token = tokens[i];
122
- if (token === '--project' || token === '-p') {
123
- i++;
124
- if (i < tokens.length)
125
- project = tokens[i];
126
- i++;
127
- continue;
128
- }
129
- i++;
130
- }
131
- return { type: protocol_1.CommandType.LIST, args: project ? { project } : {} };
132
- }
133
- parseWorkerCommand(type, tokens) {
134
- const workerName = tokens[0];
135
- if (!workerName) {
136
- return { type: 'help', args: {} };
137
- }
138
- return { type, args: { worker: workerName } };
139
- }
140
- extractTaskId(tokens) {
141
- for (const token of tokens) {
142
- const match = /^#?(\d+)$/.exec(token);
143
- if (match)
144
- return parseInt(match[1], 10);
145
- }
146
- return undefined;
147
- }
148
67
  unescapeMrkdwn(text) {
149
68
  return text.replace(/&amp;/g, '&').replace(/&lt;/g, '<').replace(/&gt;/g, '>');
150
69
  }
151
- tokenize(text) {
152
- const tokens = [];
153
- const regex = /(?:"([^"]*)")|(?:'([^']*)')|(\S+)/g;
154
- let match;
155
- while ((match = regex.exec(text)) !== null) {
156
- const value = match[1] ?? match[2] ?? match[3];
157
- if (value !== undefined)
158
- tokens.push(value);
159
- }
160
- return tokens;
161
- }
162
70
  };
163
71
  exports.SlackMessageParser = SlackMessageParser;
164
72
  exports.SlackMessageParser = SlackMessageParser = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"slack-message.parser.js","sourceRoot":"","sources":["../../../src/adapters/slack/slack-message.parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack-message.parser.js","sourceRoot":"","sources":["../../../src/adapters/slack/slack-message.parser.ts"],"names":[],"mappings":"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"}
@@ -68,6 +68,10 @@ export declare class SlackAdapter implements IMessageAdapter {
68
68
  private findAnyClient;
69
69
  private rememberChatAppId;
70
70
  private evictChannelCache;
71
+ private fetchThreadRootContent;
72
+ private resolveDeveloperMention;
73
+ private stripDeveloperMentions;
74
+ private sendTextMessage;
71
75
  private sendHelpMessage;
72
76
  }
73
77
  //# sourceMappingURL=slack.adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slack.adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/slack/slack.adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack.adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/slack/slack.adapter.ts"],"names":[],"mappings":"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"}
@@ -60,6 +60,7 @@ const crypto_service_1 = require("../../common/crypto.service");
60
60
  const config_1 = require("../../common/config");
61
61
  const slack_message_parser_1 = require("./slack-message.parser");
62
62
  const slack_block_builder_1 = require("./slack-block.builder");
63
+ const help_text_1 = require("../help-text");
63
64
  let SlackAdapter = class SlackAdapter {
64
65
  static { SlackAdapter_1 = this; }
65
66
  botRepo;
@@ -117,16 +118,22 @@ let SlackAdapter = class SlackAdapter {
117
118
  }
118
119
  const isDM = event.channel_type === 'im';
119
120
  let commandText;
121
+ let botUserId = '';
120
122
  if (isDM) {
121
123
  commandText = event.text.trim();
122
124
  }
123
125
  else if (event.type === 'app_mention') {
124
- const botUserId = await this.getBotUserId(appId);
126
+ botUserId = await this.getBotUserId(appId);
125
127
  commandText = this.parser.stripBotMention(event.text, botUserId);
126
128
  }
127
129
  else {
128
130
  return null;
129
131
  }
132
+ // Extract @mentioned developer before parsing command
133
+ const mentionResult = this.resolveDeveloperMention(commandText, botUserId);
134
+ if (mentionResult) {
135
+ commandText = this.stripDeveloperMentions(commandText, botUserId);
136
+ }
130
137
  const parsed = this.parser.parse(commandText);
131
138
  if (parsed.type === 'help') {
132
139
  await this.sendHelpMessage(event.channel, appId);
@@ -190,19 +197,50 @@ let SlackAdapter = class SlackAdapter {
190
197
  }
191
198
  return null;
192
199
  }
200
+ // Fetch thread root message if this is a reply in a thread (deferred until after help/bind/info)
201
+ let quotedContent;
202
+ let quotedMsgId;
203
+ if (event.thread_ts && event.thread_ts !== event.ts) {
204
+ try {
205
+ const content = await this.fetchThreadRootContent(event.channel, event.thread_ts, appId);
206
+ if (content) {
207
+ quotedContent = content;
208
+ quotedMsgId = event.thread_ts;
209
+ }
210
+ }
211
+ catch (err) {
212
+ this.logger.error(`Failed to fetch thread root: ${(0, protocol_1.getErrorMessage)(err)}`);
213
+ await this.sendEphemeral(event.channel, event.user, 'Failed to fetch quoted message. Please try again.', appId);
214
+ return null;
215
+ }
216
+ }
193
217
  const developer = await this.resolveUser(event.user);
194
218
  if (!developer) {
195
219
  this.logger.warn(`Cannot resolve Slack user: ${event.user}`);
196
220
  await this.sendEphemeral(event.channel, event.user, 'Your Slack account is not linked. Send "bind" to get a link to connect your account.', appId);
197
221
  return null;
198
222
  }
223
+ // Resolve the mentioned developer if any
224
+ let mentionedDeveloperId;
225
+ if (mentionResult) {
226
+ if ('developerId' in mentionResult) {
227
+ mentionedDeveloperId = mentionResult.developerId;
228
+ }
229
+ else {
230
+ await this.sendTextMessage(event.channel, `<@${mentionResult.unregisteredUserId}> is not registered as a developer. Task assigned to you.`, appId);
231
+ }
232
+ }
199
233
  const chatBinding = this.botRepo.findBindingByChatId(event.channel);
200
234
  if (!parsed.args.project && chatBinding?.projectKey) {
201
235
  parsed.args.project = chatBinding.projectKey;
202
236
  }
203
237
  const command = {
204
238
  type: parsed.type,
205
- args: parsed.args,
239
+ args: {
240
+ ...parsed.args,
241
+ ...(quotedContent ? { quotedContent, quotedMsgId } : {}),
242
+ ...(mentionedDeveloperId ? { developer: mentionedDeveloperId } : {}),
243
+ },
206
244
  platform: protocol_1.Platform.SLACK,
207
245
  user: { id: developer.id, name: developer.name, platformUid: event.user },
208
246
  chat: { id: event.channel, platformChatId: event.channel },
@@ -448,32 +486,52 @@ let SlackAdapter = class SlackAdapter {
448
486
  }
449
487
  }
450
488
  }
451
- async sendHelpMessage(channelId, appId) {
452
- const helpText = [
453
- 'Available commands:',
454
- ' develop "description" [--project key] [--on worker]',
455
- ' progress [#taskId]',
456
- ' cancel #taskId',
457
- ' retry #taskId',
458
- ' list [--project key]',
459
- ' workspace #taskId',
460
- ' logs #taskId',
461
- ' confirm #taskId',
462
- ' drain worker-name',
463
- ' undrain worker-name',
464
- ' bind link your Slack account to Overlord',
465
- ' info show chat and user info for this channel',
466
- ].join('\n');
489
+ async fetchThreadRootContent(channel, threadTs, appId) {
490
+ const client = this.getOrCreateClient(appId);
491
+ if (!client)
492
+ return null;
493
+ const resp = await client.conversations.replies({ channel, ts: threadTs, limit: 1 });
494
+ const rootMsg = resp?.messages?.[0];
495
+ if (!rootMsg?.text)
496
+ return null;
497
+ return rootMsg.text.trim() || null;
498
+ }
499
+ resolveDeveloperMention(text, botUserId) {
500
+ const mentionPattern = /<@(\w+)>/g;
501
+ let match;
502
+ while ((match = mentionPattern.exec(text)) !== null) {
503
+ const userId = match[1];
504
+ if (userId === botUserId)
505
+ continue;
506
+ const dev = this.developerRepo.resolveByPlatformUid(protocol_1.Platform.SLACK, userId);
507
+ if (dev) {
508
+ return { developerId: dev.id, name: dev.name };
509
+ }
510
+ return { unregisteredUserId: userId };
511
+ }
512
+ return null;
513
+ }
514
+ stripDeveloperMentions(text, botUserId) {
515
+ return text.replace(/<@(\w+)>/g, (match, userId) => {
516
+ if (userId === botUserId)
517
+ return match;
518
+ return '';
519
+ }).replace(/\s+/g, ' ').trim();
520
+ }
521
+ async sendTextMessage(channelId, text, appId) {
467
522
  const client = this.getOrCreateClient(appId);
468
523
  if (!client)
469
524
  return;
470
525
  try {
471
- await client.chat.postMessage({ channel: channelId, text: helpText });
526
+ await client.chat.postMessage({ channel: channelId, text });
472
527
  }
473
528
  catch (err) {
474
- this.logger.error(`Failed to send help message: ${(0, protocol_1.getErrorMessage)(err)}`);
529
+ this.logger.error(`Failed to send text message: ${(0, protocol_1.getErrorMessage)(err)}`);
475
530
  }
476
531
  }
532
+ async sendHelpMessage(channelId, appId) {
533
+ await this.sendTextMessage(channelId, (0, help_text_1.buildHelpText)('Slack'), appId);
534
+ }
477
535
  };
478
536
  exports.SlackAdapter = SlackAdapter;
479
537
  exports.SlackAdapter = SlackAdapter = SlackAdapter_1 = __decorate([