agim-cli 1.2.38 → 1.2.40

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 (154) hide show
  1. package/dist/core/onboarding.d.ts +11 -0
  2. package/dist/core/onboarding.d.ts.map +1 -1
  3. package/dist/core/onboarding.js.map +1 -1
  4. package/dist/core/router.d.ts.map +1 -1
  5. package/dist/core/router.js +16 -0
  6. package/dist/core/router.js.map +1 -1
  7. package/dist/plugins/messengers/dingtalk/dingtalk-adapter.d.ts +27 -10
  8. package/dist/plugins/messengers/dingtalk/dingtalk-adapter.d.ts.map +1 -1
  9. package/dist/plugins/messengers/dingtalk/dingtalk-adapter.js +157 -49
  10. package/dist/plugins/messengers/dingtalk/dingtalk-adapter.js.map +1 -1
  11. package/dist/plugins/messengers/dingtalk/types.d.ts +31 -0
  12. package/dist/plugins/messengers/dingtalk/types.d.ts.map +1 -1
  13. package/dist/plugins/messengers/feishu/feishu-adapter.d.ts.map +1 -1
  14. package/dist/plugins/messengers/feishu/feishu-adapter.js +8 -0
  15. package/dist/plugins/messengers/feishu/feishu-adapter.js.map +1 -1
  16. package/dist/plugins/messengers/telegram/telegram-adapter.d.ts.map +1 -1
  17. package/dist/plugins/messengers/telegram/telegram-adapter.js +15 -1
  18. package/dist/plugins/messengers/telegram/telegram-adapter.js.map +1 -1
  19. package/dist/web/public/assets/{a2a-C7lYvkA4.js → a2a-DmehGlp5.js} +2 -2
  20. package/dist/web/public/assets/{a2a-C7lYvkA4.js.map → a2a-DmehGlp5.js.map} +1 -1
  21. package/dist/web/public/assets/{activity-DFB1UVF1.js → activity-BcBiwDwG.js} +2 -2
  22. package/dist/web/public/assets/{activity-DFB1UVF1.js.map → activity-BcBiwDwG.js.map} +1 -1
  23. package/dist/web/public/assets/{admins-BgmlFiRu.js → admins-tAJBRPNq.js} +2 -2
  24. package/dist/web/public/assets/{admins-BgmlFiRu.js.map → admins-tAJBRPNq.js.map} +1 -1
  25. package/dist/web/public/assets/{agents-D9GBT8Zl.js → agents-DKOrXhec.js} +2 -2
  26. package/dist/web/public/assets/{agents-D9GBT8Zl.js.map → agents-DKOrXhec.js.map} +1 -1
  27. package/dist/web/public/assets/{approvals-Be45xKtz.js → approvals-Ct845Z1O.js} +2 -2
  28. package/dist/web/public/assets/{approvals-Be45xKtz.js.map → approvals-Ct845Z1O.js.map} +1 -1
  29. package/dist/web/public/assets/{audit-BNx_EkjC.js → audit-CkQy_37J.js} +2 -2
  30. package/dist/web/public/assets/{audit-BNx_EkjC.js.map → audit-CkQy_37J.js.map} +1 -1
  31. package/dist/web/public/assets/{bgjobs-uQw6SA4h.js → bgjobs-VYwpKepI.js} +2 -2
  32. package/dist/web/public/assets/{bgjobs-uQw6SA4h.js.map → bgjobs-VYwpKepI.js.map} +1 -1
  33. package/dist/web/public/assets/{brain-CY9GRk9W.js → brain-TW_iOL1V.js} +2 -2
  34. package/dist/web/public/assets/{brain-CY9GRk9W.js.map → brain-TW_iOL1V.js.map} +1 -1
  35. package/dist/web/public/assets/{briefcase-6msjfYUU.js → briefcase-QgcJq69K.js} +2 -2
  36. package/dist/web/public/assets/{briefcase-6msjfYUU.js.map → briefcase-QgcJq69K.js.map} +1 -1
  37. package/dist/web/public/assets/{chevron-right-DECkw7Jd.js → chevron-right-CcAr1f-K.js} +2 -2
  38. package/dist/web/public/assets/{chevron-right-DECkw7Jd.js.map → chevron-right-CcAr1f-K.js.map} +1 -1
  39. package/dist/web/public/assets/{circle-check-BL5BCLn_.js → circle-check-BILHImTr.js} +2 -2
  40. package/dist/web/public/assets/{circle-check-BL5BCLn_.js.map → circle-check-BILHImTr.js.map} +1 -1
  41. package/dist/web/public/assets/{circle-check-big-DtKj0bvZ.js → circle-check-big-CBgrbdAG.js} +2 -2
  42. package/dist/web/public/assets/{circle-check-big-DtKj0bvZ.js.map → circle-check-big-CBgrbdAG.js.map} +1 -1
  43. package/dist/web/public/assets/{circle-x-Dv0fneWH.js → circle-x-B1B8NND9.js} +2 -2
  44. package/dist/web/public/assets/{circle-x-Dv0fneWH.js.map → circle-x-B1B8NND9.js.map} +1 -1
  45. package/dist/web/public/assets/{confirm-dialog-QaqXnzLc.js → confirm-dialog-D8wDHO-b.js} +2 -2
  46. package/dist/web/public/assets/{confirm-dialog-QaqXnzLc.js.map → confirm-dialog-D8wDHO-b.js.map} +1 -1
  47. package/dist/web/public/assets/{data-table-BRHemHNS.js → data-table-CcspwVdk.js} +2 -2
  48. package/dist/web/public/assets/{data-table-BRHemHNS.js.map → data-table-CcspwVdk.js.map} +1 -1
  49. package/dist/web/public/assets/{dialog-DzCAOdn8.js → dialog-C1wHSzY6.js} +2 -2
  50. package/dist/web/public/assets/{dialog-DzCAOdn8.js.map → dialog-C1wHSzY6.js.map} +1 -1
  51. package/dist/web/public/assets/{download-DGggXcuj.js → download-6w834BgP.js} +2 -2
  52. package/dist/web/public/assets/{download-DGggXcuj.js.map → download-6w834BgP.js.map} +1 -1
  53. package/dist/web/public/assets/{email-DZXu4PeQ.js → email-CFuK_h9n.js} +2 -2
  54. package/dist/web/public/assets/{email-DZXu4PeQ.js.map → email-CFuK_h9n.js.map} +1 -1
  55. package/dist/web/public/assets/{empty-state--qSLu4iL.js → empty-state-B2cXkwjR.js} +2 -2
  56. package/dist/web/public/assets/{empty-state--qSLu4iL.js.map → empty-state-B2cXkwjR.js.map} +1 -1
  57. package/dist/web/public/assets/{external-link-SkbgGADx.js → external-link-Bu-yqob2.js} +2 -2
  58. package/dist/web/public/assets/{external-link-SkbgGADx.js.map → external-link-Bu-yqob2.js.map} +1 -1
  59. package/dist/web/public/assets/{eye-Du4m0dYr.js → eye-Duc9WPLm.js} +2 -2
  60. package/dist/web/public/assets/{eye-Du4m0dYr.js.map → eye-Duc9WPLm.js.map} +1 -1
  61. package/dist/web/public/assets/{facts-cmX647ty.js → facts-CEw-FHNh.js} +2 -2
  62. package/dist/web/public/assets/{facts-cmX647ty.js.map → facts-CEw-FHNh.js.map} +1 -1
  63. package/dist/web/public/assets/{health-Co_2jH5V.js → health-BvXVYkqK.js} +2 -2
  64. package/dist/web/public/assets/{health-Co_2jH5V.js.map → health-BvXVYkqK.js.map} +1 -1
  65. package/dist/web/public/assets/{hot-BAX3WV0p.js → hot-BhZXRin1.js} +2 -2
  66. package/dist/web/public/assets/{hot-BAX3WV0p.js.map → hot-BhZXRin1.js.map} +1 -1
  67. package/dist/web/public/assets/{index-BAK3HT1o.js → index-BHpIVVgn.js} +4 -4
  68. package/dist/web/public/assets/{index-BAK3HT1o.js.map → index-BHpIVVgn.js.map} +1 -1
  69. package/dist/web/public/assets/index-DbXE-sPo.css +1 -0
  70. package/dist/web/public/assets/{installed-vEt64SE3.js → installed-C7BXVY63.js} +2 -2
  71. package/dist/web/public/assets/{installed-vEt64SE3.js.map → installed-C7BXVY63.js.map} +1 -1
  72. package/dist/web/public/assets/{jobs-CmSWAbse.js → jobs-DeyPE4dy.js} +2 -2
  73. package/dist/web/public/assets/{jobs-CmSWAbse.js.map → jobs-DeyPE4dy.js.map} +1 -1
  74. package/dist/web/public/assets/{layout-Bl6t0Q6D.js → layout-Bpg3Cwxc.js} +2 -2
  75. package/dist/web/public/assets/{layout-Bl6t0Q6D.js.map → layout-Bpg3Cwxc.js.map} +1 -1
  76. package/dist/web/public/assets/{layout-Cbf_CCBN.js → layout-C9F_2bGL.js} +2 -2
  77. package/dist/web/public/assets/{layout-Cbf_CCBN.js.map → layout-C9F_2bGL.js.map} +1 -1
  78. package/dist/web/public/assets/{layout-DKUTeV-p.js → layout-DEcfL4vo.js} +2 -2
  79. package/dist/web/public/assets/{layout-DKUTeV-p.js.map → layout-DEcfL4vo.js.map} +1 -1
  80. package/dist/web/public/assets/{layout-DF92UGuZ.js → layout-DG6aWrsf.js} +2 -2
  81. package/dist/web/public/assets/{layout-DF92UGuZ.js.map → layout-DG6aWrsf.js.map} +1 -1
  82. package/dist/web/public/assets/{layout-BgbibVU6.js → layout-VX_jhUUD.js} +2 -2
  83. package/dist/web/public/assets/{layout-BgbibVU6.js.map → layout-VX_jhUUD.js.map} +1 -1
  84. package/dist/web/public/assets/{loader-circle-CXl24wsB.js → loader-circle-xp1T-xFY.js} +2 -2
  85. package/dist/web/public/assets/{loader-circle-CXl24wsB.js.map → loader-circle-xp1T-xFY.js.map} +1 -1
  86. package/dist/web/public/assets/{map-pin-CVRwkuru.js → map-pin-C8AaRu3a.js} +2 -2
  87. package/dist/web/public/assets/{map-pin-CVRwkuru.js.map → map-pin-C8AaRu3a.js.map} +1 -1
  88. package/dist/web/public/assets/{memos-k6FW9dd4.js → memos-DS0BAkvB.js} +2 -2
  89. package/dist/web/public/assets/{memos-k6FW9dd4.js.map → memos-DS0BAkvB.js.map} +1 -1
  90. package/dist/web/public/assets/messengers-CuSPC7_8.js +7 -0
  91. package/dist/web/public/assets/messengers-CuSPC7_8.js.map +1 -0
  92. package/dist/web/public/assets/{network-BLcJyt3y.js → network-D_47AT34.js} +2 -2
  93. package/dist/web/public/assets/{network-BLcJyt3y.js.map → network-D_47AT34.js.map} +1 -1
  94. package/dist/web/public/assets/{outbox-X2aiMbdq.js → outbox-BrYtpER3.js} +2 -2
  95. package/dist/web/public/assets/{outbox-X2aiMbdq.js.map → outbox-BrYtpER3.js.map} +1 -1
  96. package/dist/web/public/assets/{pagination-BD7XfwcX.js → pagination-BibL4sTk.js} +2 -2
  97. package/dist/web/public/assets/{pagination-BD7XfwcX.js.map → pagination-BibL4sTk.js.map} +1 -1
  98. package/dist/web/public/assets/{persona-CiMN6Pne.js → persona-CSf1599J.js} +2 -2
  99. package/dist/web/public/assets/{persona-CiMN6Pne.js.map → persona-CSf1599J.js.map} +1 -1
  100. package/dist/web/public/assets/{play-DTK7F9m6.js → play-DWybgrnO.js} +2 -2
  101. package/dist/web/public/assets/{play-DTK7F9m6.js.map → play-DWybgrnO.js.map} +1 -1
  102. package/dist/web/public/assets/{policy-awgRqM5Z.js → policy-DjhMMSnv.js} +2 -2
  103. package/dist/web/public/assets/{policy-awgRqM5Z.js.map → policy-DjhMMSnv.js.map} +1 -1
  104. package/dist/web/public/assets/{refresh-ccw-ChTs-DiT.js → refresh-ccw-B6Qh5cA4.js} +2 -2
  105. package/dist/web/public/assets/{refresh-ccw-ChTs-DiT.js.map → refresh-ccw-B6Qh5cA4.js.map} +1 -1
  106. package/dist/web/public/assets/{reminders-DZDyIu_n.js → reminders-Cjf-fz3F.js} +2 -2
  107. package/dist/web/public/assets/{reminders-DZDyIu_n.js.map → reminders-Cjf-fz3F.js.map} +1 -1
  108. package/dist/web/public/assets/{save-Bd0yyWyF.js → save-24zpCWMX.js} +2 -2
  109. package/dist/web/public/assets/{save-Bd0yyWyF.js.map → save-24zpCWMX.js.map} +1 -1
  110. package/dist/web/public/assets/{schedules-Bbq9N-Sz.js → schedules-fYr2acyu.js} +2 -2
  111. package/dist/web/public/assets/{schedules-Bbq9N-Sz.js.map → schedules-fYr2acyu.js.map} +1 -1
  112. package/dist/web/public/assets/{search-CUZFSMD0.js → search-BWPSnfQk.js} +2 -2
  113. package/dist/web/public/assets/{search-CUZFSMD0.js.map → search-BWPSnfQk.js.map} +1 -1
  114. package/dist/web/public/assets/{service-CPV-yW7V.js → service-BfTCNrBf.js} +2 -2
  115. package/dist/web/public/assets/{service-CPV-yW7V.js.map → service-BfTCNrBf.js.map} +1 -1
  116. package/dist/web/public/assets/{status-badge-DHLuTCYi.js → status-badge-B6yuKpfj.js} +2 -2
  117. package/dist/web/public/assets/{status-badge-DHLuTCYi.js.map → status-badge-B6yuKpfj.js.map} +1 -1
  118. package/dist/web/public/assets/{subtasks-dR1OyViz.js → subtasks-2qWjQXTS.js} +2 -2
  119. package/dist/web/public/assets/{subtasks-dR1OyViz.js.map → subtasks-2qWjQXTS.js.map} +1 -1
  120. package/dist/web/public/assets/{table-CTNMqGvo.js → table-CThpzZDh.js} +2 -2
  121. package/dist/web/public/assets/{table-CTNMqGvo.js.map → table-CThpzZDh.js.map} +1 -1
  122. package/dist/web/public/assets/{topn-Dk9JxsaD.js → topn-X_lIyE-a.js} +2 -2
  123. package/dist/web/public/assets/{topn-Dk9JxsaD.js.map → topn-X_lIyE-a.js.map} +1 -1
  124. package/dist/web/public/assets/{trash-2-CSId-EFx.js → trash-2-DiPoCIOw.js} +2 -2
  125. package/dist/web/public/assets/{trash-2-CSId-EFx.js.map → trash-2-DiPoCIOw.js.map} +1 -1
  126. package/dist/web/public/assets/{use-memory-B5fLcSLE.js → use-memory-Dt1-AtJI.js} +2 -2
  127. package/dist/web/public/assets/{use-memory-B5fLcSLE.js.map → use-memory-Dt1-AtJI.js.map} +1 -1
  128. package/dist/web/public/assets/{use-observability-CUbSm1kG.js → use-observability-CrrBrmG1.js} +2 -2
  129. package/dist/web/public/assets/{use-observability-CUbSm1kG.js.map → use-observability-CrrBrmG1.js.map} +1 -1
  130. package/dist/web/public/assets/{use-settings-CtTPlLXz.js → use-settings-CHe5ygSK.js} +2 -2
  131. package/dist/web/public/assets/{use-settings-CtTPlLXz.js.map → use-settings-CHe5ygSK.js.map} +1 -1
  132. package/dist/web/public/assets/{use-skills-DdmwXWK7.js → use-skills-DbfIV-Vu.js} +2 -2
  133. package/dist/web/public/assets/{use-skills-DdmwXWK7.js.map → use-skills-DbfIV-Vu.js.map} +1 -1
  134. package/dist/web/public/assets/{use-workspace-C_zPgOcX.js → use-workspace-CwLe4AlE.js} +2 -2
  135. package/dist/web/public/assets/{use-workspace-C_zPgOcX.js.map → use-workspace-CwLe4AlE.js.map} +1 -1
  136. package/dist/web/public/assets/{useQuery-CBD2h35Q.js → useQuery-CH4S_Ysb.js} +2 -2
  137. package/dist/web/public/assets/{useQuery-CBD2h35Q.js.map → useQuery-CH4S_Ysb.js.map} +1 -1
  138. package/dist/web/public/assets/{vector-vwq7t-U5.js → vector-BfuZmJ4V.js} +2 -2
  139. package/dist/web/public/assets/{vector-vwq7t-U5.js.map → vector-BfuZmJ4V.js.map} +1 -1
  140. package/dist/web/public/assets/{viewer-SR8OwQK3.js → viewer-CiYGvtYP.js} +2 -2
  141. package/dist/web/public/assets/{viewer-SR8OwQK3.js.map → viewer-CiYGvtYP.js.map} +1 -1
  142. package/dist/web/public/assets/{workspace-VRwymXux.js → workspace-s8gFRUsA.js} +2 -2
  143. package/dist/web/public/assets/{workspace-VRwymXux.js.map → workspace-s8gFRUsA.js.map} +1 -1
  144. package/dist/web/public/assets/{workspaces-5N_hYIVk.js → workspaces-DgitNWJ1.js} +2 -2
  145. package/dist/web/public/assets/{workspaces-5N_hYIVk.js.map → workspaces-DgitNWJ1.js.map} +1 -1
  146. package/dist/web/public/assets/{x-De56D6Eb.js → x-BvqJzFXj.js} +2 -2
  147. package/dist/web/public/assets/{x-De56D6Eb.js.map → x-BvqJzFXj.js.map} +1 -1
  148. package/dist/web/public/index.html +2 -2
  149. package/dist/web/server.js +11 -0
  150. package/dist/web/server.js.map +1 -1
  151. package/package.json +1 -1
  152. package/dist/web/public/assets/index-CDYTPZH0.css +0 -1
  153. package/dist/web/public/assets/messengers-iXrlzy93.js +0 -7
  154. package/dist/web/public/assets/messengers-iXrlzy93.js.map +0 -1
@@ -40,6 +40,43 @@ export const ACK_GLYPHS = {
40
40
  emoji: { received: '⏳', working: '🤖', done: '✅', failed: '❌' },
41
41
  kaomoji: { received: '(´・ω・`)', working: '(。•̀ᴗ-)', done: '(•̀ᴗ•́)', failed: '(╥﹏╥)' },
42
42
  };
43
+ /**
44
+ * Batch 4 (#3) — pure account-resolution helper. Merge accounts dict +
45
+ * top-level credentials into the set of (accountId → DingTalkConfig)
46
+ * pairs the adapter should start. Disabled accounts are filtered out.
47
+ * Each entry's policy / ack-reaction fields fall back to the top-level
48
+ * values when the account-block doesn't override them.
49
+ *
50
+ * Single-account legacy configs (top-level credentials, no `accounts`)
51
+ * resolve to `{'default': <cfg>}` so the adapter sees the same code
52
+ * path regardless of multi-bot vs single-bot deployments.
53
+ */
54
+ export function planDingTalkAccounts(cfg) {
55
+ const out = new Map();
56
+ const hasExplicitDefault = !!cfg.accounts?.default;
57
+ if (cfg.clientId && cfg.clientSecret && !hasExplicitDefault) {
58
+ out.set('default', cfg);
59
+ }
60
+ for (const [accountId, override] of Object.entries(cfg.accounts || {})) {
61
+ if (override.enabled === false)
62
+ continue;
63
+ const clientId = override.clientId || cfg.clientId;
64
+ const clientSecret = override.clientSecret || cfg.clientSecret;
65
+ if (!clientId || !clientSecret)
66
+ continue;
67
+ out.set(accountId, {
68
+ clientId,
69
+ clientSecret,
70
+ channelId: cfg.channelId,
71
+ dmPolicy: override.dmPolicy ?? cfg.dmPolicy,
72
+ groupPolicy: override.groupPolicy ?? cfg.groupPolicy,
73
+ allowFrom: override.allowFrom ?? cfg.allowFrom,
74
+ groupAllowFrom: override.groupAllowFrom ?? cfg.groupAllowFrom,
75
+ ackReaction: override.ackReaction ?? cfg.ackReaction,
76
+ });
77
+ }
78
+ return out;
79
+ }
43
80
  /**
44
81
  * Batch 1 (#4) — pure access-policy evaluator. Decoupled from the adapter
45
82
  * class so unit tests can hit it without the SDK. Returns:
@@ -79,7 +116,18 @@ export function evalAccessPolicy(cfg, msg) {
79
116
  }
80
117
  export class DingTalkAdapter {
81
118
  name = 'dingtalk';
82
- client = null;
119
+ // Batch 4 (#3) — accountId → live client. 'default' is the implicit
120
+ // entry built from the top-level credentials when accounts dict is
121
+ // empty. When the operator defines accounts dict, we start one
122
+ // DWClient per entry plus the default (if top-level creds are also
123
+ // set). The threadOwner map below tracks which client originated each
124
+ // thread so outbound replies route back to the right bot.
125
+ clients = new Map();
126
+ // accountId per thread — populated on inbound, consulted on outbound.
127
+ threadOwner = new Map();
128
+ // Per-account effective config snapshot — used by passesAccessPolicy()
129
+ // so each account can have its own dmPolicy / allowFrom / etc.
130
+ effectiveConfigs = new Map();
83
131
  config = null;
84
132
  messageHandler;
85
133
  seenMessages = new Map();
@@ -92,28 +140,75 @@ export class DingTalkAdapter {
92
140
  catch {
93
141
  throw new Error('DingTalk config not found. Run `agim` → Configure → DingTalk first.');
94
142
  }
95
- if (!this.config?.clientId || !this.config?.clientSecret) {
96
- throw new Error('DingTalk ClientID or ClientSecret missing. Re-run the configure flow.');
143
+ if (!this.config) {
144
+ throw new Error('DingTalk config not found. Re-run the configure flow.');
145
+ }
146
+ const planned = this.planAccounts(this.config);
147
+ if (planned.size === 0) {
148
+ throw new Error('DingTalk ClientID or ClientSecret missing on every account. Re-run the configure flow.');
149
+ }
150
+ for (const [accountId, accountCfg] of planned) {
151
+ const client = new DingTalkClient(accountCfg);
152
+ client.onMessage(async (msg) => { await this.handleInbound(msg, accountId); });
153
+ try {
154
+ await client.start();
155
+ this.clients.set(accountId, client);
156
+ this.effectiveConfigs.set(accountId, accountCfg);
157
+ log.info({ event: 'dingtalk.account.started', accountId }, 'DingTalk account started');
158
+ }
159
+ catch (err) {
160
+ // One bad account shouldn't kill all the others.
161
+ log.error({
162
+ event: 'dingtalk.account.start_failed',
163
+ accountId,
164
+ err: err instanceof Error ? err.message : String(err),
165
+ }, 'DingTalk account failed to start');
166
+ }
167
+ }
168
+ if (this.clients.size === 0) {
169
+ throw new Error('DingTalk: every account failed to start');
97
170
  }
98
- this.client = new DingTalkClient(this.config);
99
- this.client.onMessage(async (msg) => { await this.handleInbound(msg); });
100
- await this.client.start();
101
- log.info('DingTalk adapter started (WebSocket Stream mode, no webhook needed)');
171
+ log.info({ accounts: Array.from(this.clients.keys()) }, `DingTalk adapter started (${this.clients.size} account(s), Stream mode, no webhook needed)`);
172
+ }
173
+ /** Internal wrapper that defers to the pure {@link planDingTalkAccounts}
174
+ * helper exported from this module so unit tests can exercise account
175
+ * resolution without spinning up the SDK. */
176
+ planAccounts(cfg) {
177
+ return planDingTalkAccounts(cfg);
102
178
  }
103
179
  async stop() {
104
- if (this.client) {
105
- await this.client.stop();
106
- this.client = null;
180
+ for (const [accountId, client] of this.clients) {
181
+ try {
182
+ await client.stop();
183
+ }
184
+ catch (err) {
185
+ log.warn({ accountId, err: err instanceof Error ? err.message : String(err) }, 'stop failed');
186
+ }
107
187
  }
188
+ this.clients.clear();
189
+ this.threadOwner.clear();
190
+ this.effectiveConfigs.clear();
108
191
  log.info('DingTalk adapter stopped');
109
192
  }
110
193
  onMessage(handler) {
111
194
  this.messageHandler = handler;
112
195
  }
113
196
  async sendMessage(threadId, text) {
114
- if (!this.client)
197
+ const client = this.clientForThread(threadId);
198
+ if (!client)
115
199
  throw new Error('DingTalk adapter not started');
116
- await this.client.sendMessage(threadId, text);
200
+ await client.sendMessage(threadId, text);
201
+ }
202
+ /** Batch 4 (#3) — pick the client that owns this thread, falling back
203
+ * to 'default' if we never saw the thread before (manual notify path). */
204
+ clientForThread(threadId) {
205
+ const owner = this.threadOwner.get(threadId);
206
+ if (owner) {
207
+ const c = this.clients.get(owner);
208
+ if (c)
209
+ return c;
210
+ }
211
+ return this.clients.get('default') ?? this.clients.values().next().value ?? null;
117
212
  }
118
213
  // No sendTyping / sendThinking — DingTalk doesn't expose a typing
119
214
  // indicator API for stream-mode bots, and the client UI already shows
@@ -153,7 +248,7 @@ export class DingTalkAdapter {
153
248
  ? `group:${msg.conversationId}`
154
249
  : `user:${msg.senderStaffId}`;
155
250
  }
156
- async handleInbound(msg) {
251
+ async handleInbound(msg, accountId = 'default') {
157
252
  if (!this.messageHandler) {
158
253
  log.debug('no message handler registered');
159
254
  return;
@@ -165,17 +260,22 @@ export class DingTalkAdapter {
165
260
  // Batch 1 (#4) — access policy gate. Filters BEFORE dispatch so the
166
261
  // agent never sees an unauthorized turn. `pairing` learns the first
167
262
  // DM sender into allowFrom for future turns (write-back).
168
- if (!this.passesAccessPolicy(msg)) {
263
+ if (!this.passesAccessPolicy(msg, accountId)) {
169
264
  log.info({
170
265
  event: 'dingtalk.policy.denied',
266
+ accountId,
171
267
  messageId: msg.msgId,
172
268
  conversationType: msg.conversationType,
173
269
  senderStaffId: msg.senderStaffId,
174
270
  }, 'inbound dropped by access policy');
175
271
  return;
176
272
  }
177
- const channelId = this.config?.channelId || 'default';
273
+ const acctCfg = this.effectiveConfigs.get(accountId) || this.config || undefined;
274
+ const channelId = acctCfg?.channelId || 'default';
178
275
  const threadId = this.threadIdFor(msg);
276
+ // Batch 4 (#3) — remember which account owns this thread so future
277
+ // outbound sends route back to the same bot.
278
+ this.threadOwner.set(threadId, accountId);
179
279
  // Batch 1 (#7) — best-effort ack-reaction. Fire-and-forget; if the
180
280
  // session webhook expired or the SDK chokes, we still proceed.
181
281
  void this.sendAckReaction(msg, 'received').catch((err) => {
@@ -226,16 +326,16 @@ export class DingTalkAdapter {
226
326
  wgs_lat: norm.lat, wgs_lng: norm.lng,
227
327
  applied: norm.applied,
228
328
  });
229
- if (this.client) {
230
- await this.client.sendMessage(threadId, `📍 已收到位置${msg.link?.title ? `「${msg.link.title}」` : ''}。告诉我要做什么(例如 /memo 食堂、记下、提醒我下次来)。`)
329
+ if (this.clients.size > 0) {
330
+ await this.clientForThread(threadId)?.sendMessage(threadId, `📍 已收到位置${msg.link?.title ? `「${msg.link.title}」` : ''}。告诉我要做什么(例如 /memo 食堂、记下、提醒我下次来)。`)
231
331
  .catch(err => log.warn({ err: err instanceof Error ? err.message : String(err) }, 'failed to ack dingtalk location'));
232
332
  }
233
333
  return;
234
334
  }
235
335
  // Not a recognised map URL — fall through to "tell user we can't"
236
336
  // by sending a generic hint and stop here.
237
- if (this.client) {
238
- await this.client.sendMessage(threadId, '👁 链接已收到,但我只能阅读文本——请把要做的事情用文字告诉我。')
337
+ if (this.clients.size > 0) {
338
+ await this.clientForThread(threadId)?.sendMessage(threadId, '👁 链接已收到,但我只能阅读文本——请把要做的事情用文字告诉我。')
239
339
  .catch(() => undefined);
240
340
  }
241
341
  return;
@@ -271,8 +371,8 @@ export class DingTalkAdapter {
271
371
  threadId,
272
372
  content: msg.content,
273
373
  }, 'received file msgtype — currently no handler');
274
- if (this.client) {
275
- await this.client.sendMessage(threadId, '📎 文件收到了,但我暂时还不能解析文件内容——请打字告诉我或上传图片。')
374
+ if (this.clients.size > 0) {
375
+ await this.clientForThread(threadId)?.sendMessage(threadId, '📎 文件收到了,但我暂时还不能解析文件内容——请打字告诉我或上传图片。')
276
376
  .catch(() => undefined);
277
377
  }
278
378
  return;
@@ -288,8 +388,8 @@ export class DingTalkAdapter {
288
388
  threadId,
289
389
  fullPayload: msg,
290
390
  }, 'unknown dingtalk msgtype — full payload logged for analysis');
291
- if (this.client) {
292
- await this.client.sendMessage(threadId, `❓ 收到一条 \`${msg.msgtype}\` 类型消息,我还不认得这种格式,已记录到日志便于调试。请打字告诉我要做什么。`)
391
+ if (this.clients.size > 0) {
392
+ await this.clientForThread(threadId)?.sendMessage(threadId, `❓ 收到一条 \`${msg.msgtype}\` 类型消息,我还不认得这种格式,已记录到日志便于调试。请打字告诉我要做什么。`)
293
393
  .catch(() => undefined);
294
394
  }
295
395
  }
@@ -312,8 +412,8 @@ export class DingTalkAdapter {
312
412
  const downloadCode = msg.content?.downloadCode ?? msg.content?.pictureDownloadCode;
313
413
  if (!downloadCode) {
314
414
  log.warn({ event: 'dingtalk.image.no_download_code', messageId: msg.msgId, content: msg.content }, 'image msg arrived without downloadCode — falling back to ack hint');
315
- if (this.client) {
316
- await this.client.sendMessage(threadId, '🖼 图片收到了但我没拿到下载凭据,没法看。请重发或打字描述。')
415
+ if (this.clients.size > 0) {
416
+ await this.clientForThread(threadId)?.sendMessage(threadId, '🖼 图片收到了但我没拿到下载凭据,没法看。请重发或打字描述。')
317
417
  .catch(() => undefined);
318
418
  }
319
419
  return;
@@ -321,9 +421,10 @@ export class DingTalkAdapter {
321
421
  const subPath = this.subPathFor(msg);
322
422
  let attachmentLine;
323
423
  try {
324
- if (!this.client)
424
+ const client = this.clientForThread(threadId);
425
+ if (!client)
325
426
  throw new Error('client not ready');
326
- const dl = await this.client.downloadMessageFile(downloadCode);
427
+ const dl = await client.downloadMessageFile(downloadCode);
327
428
  if (!dl)
328
429
  throw new Error('messageFiles/download returned null');
329
430
  const ext = pickDingTalkExtension(dl.contentType, undefined);
@@ -366,9 +467,10 @@ export class DingTalkAdapter {
366
467
  let downloadErr = null;
367
468
  if (downloadCode) {
368
469
  try {
369
- if (!this.client)
470
+ const c = this.clientForThread(threadId);
471
+ if (!c)
370
472
  throw new Error('client not ready');
371
- const dl = await this.client.downloadMessageFile(downloadCode);
473
+ const dl = await c.downloadMessageFile(downloadCode);
372
474
  if (!dl)
373
475
  throw new Error('messageFiles/download returned null');
374
476
  const ext = pickDingTalkExtension(dl.contentType, undefined);
@@ -435,10 +537,11 @@ export class DingTalkAdapter {
435
537
  safeFilenameStem(msgId) {
436
538
  return (msgId || 'unknown').replace(/[^A-Za-z0-9_-]/g, '_');
437
539
  }
438
- /** Batch 1 (#4) wrapper around the pure evalAccessPolicy() helper so
439
- * the policy logic is testable without spinning up the SDK. */
440
- passesAccessPolicy(msg) {
441
- const cfg = this.config;
540
+ /** Batch 1 (#4) + Batch 4 (#3) per-account policy gate. Uses the
541
+ * effective config for `accountId` so each bot can have its own
542
+ * dmPolicy / allowlist. */
543
+ passesAccessPolicy(msg, accountId = 'default') {
544
+ const cfg = this.effectiveConfigs.get(accountId) || this.config;
442
545
  if (!cfg)
443
546
  return true;
444
547
  const result = evalAccessPolicy(cfg, {
@@ -446,37 +549,34 @@ export class DingTalkAdapter {
446
549
  senderStaffId: msg.senderStaffId || '',
447
550
  });
448
551
  if (result.pairedNewSender) {
449
- // First-DM pairing: persist into the in-memory config so the next
450
- // turn recognises them. Not written back to ~/.agim/config.json by
451
- // design — a restart re-pairs the next DMer. Operators wanting
452
- // durable pairs should switch to `allowlist` and edit allowFrom.
552
+ // Pairing learn-back: scoped to the inbound account so paired-with
553
+ // bot-A doesn't accidentally unlock DMs to bot-B.
453
554
  cfg.allowFrom = [result.pairedNewSender];
454
555
  log.info({
455
556
  event: 'dingtalk.policy.paired',
557
+ accountId,
456
558
  senderStaffId: result.pairedNewSender,
457
559
  }, 'pairing locked in');
458
560
  }
459
561
  return result.allowed;
460
562
  }
461
- /** Batch 1 (#7) fire a quick ack into the same conversation. State is
462
- * one of 'received' / 'working' / 'done' / 'failed'; we render with
463
- * emoji or kaomoji per cfg.ackReaction. Off → no-op. Falls back to a
464
- * short markdown message because DingTalk Stream bots don't have a
465
- * native "react to a message" API the way Slack / Discord do — the
466
- * closest equivalent is a follow-up text. We deliberately use a tiny
467
- * payload so a busy group doesn't get spammed. */
563
+ /** Batch 1 (#7) + Batch 4 (#3) per-account ack glyph. Reads the
564
+ * ackReaction mode from the account that owns the inbound thread. */
468
565
  async sendAckReaction(msg, state) {
469
- const mode = this.config?.ackReaction || 'off';
566
+ const threadId = this.threadIdFor(msg);
567
+ const accountId = this.threadOwner.get(threadId) || 'default';
568
+ const acctCfg = this.effectiveConfigs.get(accountId) || this.config;
569
+ const mode = acctCfg?.ackReaction || 'off';
470
570
  if (mode === 'off')
471
571
  return;
472
- if (!this.client)
572
+ const client = this.clientForThread(threadId);
573
+ if (!client)
473
574
  return;
474
575
  const glyph = ACK_GLYPHS[mode][state];
475
576
  if (!glyph)
476
577
  return;
477
- const threadId = this.threadIdFor(msg);
478
578
  try {
479
- await this.client.sendMessage(threadId, glyph);
579
+ await client.sendMessage(threadId, glyph);
480
580
  }
481
581
  catch (err) {
482
582
  log.debug({
@@ -488,11 +588,19 @@ export class DingTalkAdapter {
488
588
  }
489
589
  /** Shared text-dispatch path used by text / markdown msgtypes. */
490
590
  async dispatchText(msg, text, threadId, channelId) {
591
+ // Batch 3 (#8) — quoted-message recovery. DingTalk Stream sometimes
592
+ // carries the originalContent.text when the user "reply-to"-style
593
+ // quotes a prior message. Defensive: many SDK versions don't ship
594
+ // these fields at all, so absent is fine.
595
+ const quoted = msg.originalContent?.text?.trim() || '';
596
+ const composed = quoted
597
+ ? `[reply to dingtalk message ${msg.originalMessageId || ''}: "${quoted.length > 800 ? `${quoted.slice(0, 797)}…` : quoted}"]\n\n${text}`
598
+ : text;
491
599
  const out = {
492
600
  id: msg.msgId,
493
601
  threadId,
494
602
  userId: msg.senderStaffId || 'unknown',
495
- text,
603
+ text: composed,
496
604
  timestamp: msg.createAt ? new Date(msg.createAt) : new Date(),
497
605
  channelId,
498
606
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dingtalk-adapter.js","sourceRoot":"","sources":["../../../../src/plugins/messengers/dingtalk/dingtalk-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dingtalk-adapter.js","sourceRoot":"","sources":["../../../../src/plugins/messengers/dingtalk/dingtalk-adapter.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,21 @@
1
+ /** Per-account override block. Same shape as the top-level DingTalkConfig
2
+ * but every field is optional — operators only override what differs
3
+ * from the global defaults. Each entry gets its own DWClient instance. */
4
+ export interface DingTalkAccountConfig {
5
+ /** Human-readable name (optional). Shown in CLI / Web listings. */
6
+ name?: string;
7
+ /** Account-specific credentials. Required when defined. */
8
+ clientId?: string;
9
+ clientSecret?: string;
10
+ /** Per-account access-policy overrides (fall back to global if absent). */
11
+ dmPolicy?: 'open' | 'pairing' | 'allowlist';
12
+ groupPolicy?: 'open' | 'allowlist' | 'disabled';
13
+ allowFrom?: string[];
14
+ groupAllowFrom?: string[];
15
+ ackReaction?: 'off' | 'emoji' | 'kaomoji';
16
+ /** Disable this account without removing the entry. */
17
+ enabled?: boolean;
18
+ }
1
19
  export interface DingTalkConfig {
2
20
  /** AppKey from the DingTalk developer console (also serves as robotCode). */
3
21
  clientId: string;
@@ -6,6 +24,12 @@ export interface DingTalkConfig {
6
24
  /** Optional channel id (forwarded to MessageContext); we don't drive
7
25
  * routing on it but a few downstream consumers tag logs by it. */
8
26
  channelId?: string;
27
+ /** Batch 4 (#3) — multi-account / multi-bot. When this map is present
28
+ * the adapter starts one DWClient per entry, in addition to (or
29
+ * instead of) the top-level single-account credentials. Existing
30
+ * single-account deployments are unaffected because top-level fields
31
+ * remain the canonical default account ("default" key reserved). */
32
+ accounts?: Record<string, DingTalkAccountConfig>;
9
33
  /** Batch 1 (#4) — DM access policy. Defaults to 'open' (current behavior).
10
34
  * - `open` : any user can DM the bot (existing default)
11
35
  * - `pairing` : only users seen in earlier `allowFrom`-acked messages
@@ -94,6 +118,13 @@ export interface DingTalkInboundMessage {
94
118
  sessionWebhookExpiredTime?: number;
95
119
  createAt?: number;
96
120
  isAdmin?: boolean;
121
+ /** Batch 3 (#8) — when the inbound is a "reply to ..." quote, the
122
+ * Stream SDK may populate these fields. Names follow the older
123
+ * OpenAPI shapes seen in the wild; we read them defensively. */
124
+ originalMessageId?: string;
125
+ originalContent?: {
126
+ text?: string;
127
+ };
97
128
  /** Catch-all for unknown fields — we never index this in code, but
98
129
  * preserving it lets the debug-log path dump the full payload. */
99
130
  [extra: string]: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/plugins/messengers/dingtalk/types.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,cAAc;IAC7B,6EAA6E;IAC7E,QAAQ,EAAE,MAAM,CAAA;IAChB,yEAAyE;IACzE,YAAY,EAAE,MAAM,CAAA;IACpB;uEACmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;4EAGwE;IACxE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,CAAA;IAC3C;;;yDAGqD;IACrD,WAAW,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAA;IAC/C,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB;;;oEAGgE;IAChE,WAAW,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,CAAA;CAC1C;AAED;;;;;;;;;sEASsE;AACtE,MAAM,WAAW,sBAAsB;IACrC,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAA;IACf,iCAAiC;IACjC,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IAC1B;;2BAEuB;IACvB,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9E;;;;;kEAK8D;IAC9D,OAAO,CAAC,EAAE;QACR,mBAAmB,CAAC,EAAE,MAAM,CAAA;QAC5B,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB;;+DAEuD;QACvD,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAC3B,CAAA;IACD;gEAC4D;IAC5D,cAAc,EAAE,MAAM,CAAA;IACtB,iDAAiD;IACjD,gBAAgB,EAAE,GAAG,GAAG,GAAG,GAAG,MAAM,CAAA;IACpC,yEAAyE;IACzE,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,uEAAuE;IACvE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;uDAEmD;IACnD,SAAS,EAAE,MAAM,CAAA;IACjB;+EAC2E;IAC3E,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,yBAAyB,CAAC,EAAE,MAAM,CAAA;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;uEACmE;IACnE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;CACzB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/plugins/messengers/dingtalk/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"feishu-adapter.d.ts","sourceRoot":"","sources":["../../../../src/plugins/messengers/feishu/feishu-adapter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAW,cAAc,EAAE,MAAM,wBAAwB,CAAA;AA2CvF,qBAAa,aAAc,YAAW,gBAAgB;IACpD,QAAQ,CAAC,IAAI,YAAW;IACxB,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,cAAc,CAAC,CAAwC;IAC/D,yEAAyE;IACzE,OAAO,CAAC,YAAY,CAA4B;IAE1C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAI1D,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY1D,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxD,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAepE;;;OAGG;IACH,OAAO,CAAC,WAAW;YAyBL,mBAAmB;CAkIlC;AAGD,eAAO,MAAM,aAAa,eAAsB,CAAA"}
1
+ {"version":3,"file":"feishu-adapter.d.ts","sourceRoot":"","sources":["../../../../src/plugins/messengers/feishu/feishu-adapter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAW,cAAc,EAAE,MAAM,wBAAwB,CAAA;AA2CvF,qBAAa,aAAc,YAAW,gBAAgB;IACpD,QAAQ,CAAC,IAAI,YAAW;IACxB,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,cAAc,CAAC,CAAwC;IAC/D,yEAAyE;IACzE,OAAO,CAAC,YAAY,CAA4B;IAE1C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAI1D,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY1D,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxD,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAepE;;;OAGG;IACH,OAAO,CAAC,WAAW;YAyBL,mBAAmB;CA2IlC;AAGD,eAAO,MAAM,aAAa,eAAsB,CAAA"}
@@ -221,6 +221,14 @@ export class FeishuAdapter {
221
221
  log.debug('Empty message text');
222
222
  return;
223
223
  }
224
+ // Batch 3 (#8) — quoted-message hint. Feishu's WebSocket payload
225
+ // carries parent_id but not the parent's content; fetching the
226
+ // body requires an OpenAPI call we can wire up later (TODO).
227
+ // For now we surface a lightweight cite so the agent knows a
228
+ // quote exists and can ask for context if needed.
229
+ if (message.parent_id) {
230
+ text = `[reply to feishu message ${message.parent_id}]\n\n${text}`;
231
+ }
224
232
  log.debug({ text }, 'Message received');
225
233
  const msg = {
226
234
  id: message.message_id || '',
@@ -1 +1 @@
1
- {"version":3,"file":"feishu-adapter.js","sourceRoot":"","sources":["../../../../src/plugins/messengers/feishu/feishu-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feishu-adapter.js","sourceRoot":"","sources":["../../../../src/plugins/messengers/feishu/feishu-adapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"telegram-adapter.d.ts","sourceRoot":"","sources":["../../../../src/plugins/messengers/telegram/telegram-adapter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EAEd,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,wBAAwB,CAAA;AAkB/B,qBAAa,eAAgB,YAAW,gBAAgB;IACtD,QAAQ,CAAC,IAAI,cAAa;IAC1B,OAAO,CAAC,GAAG,CAAmB;IAC9B,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,cAAc,CAAC,CAAwC;IAC/D,OAAO,CAAC,aAAa,CAAC,CAAuC;IAC7D,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,eAAe,CAAoD;IAK3E,OAAO,CAAC,aAAa,CAAC,CAAgC;IACtD,OAAO,CAAC,uBAAuB,CAAI;IACnC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAI;IACtD,OAAO,CAAC,iBAAiB,CAAC,CAAgC;IAC1D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAiB;IAE5D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA2S5B;;6EAEyE;IACzE,OAAO,CAAC,iBAAiB;YAYX,cAAc;IAmD5B,OAAO,CAAC,aAAa;IA6Bf,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B3B,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAIhE;;;;;;;;;OASG;YACW,iBAAiB;IAuD/B;;;;;;;;;;;;;;;OAeG;YACW,iBAAiB;IA4E/B;;;;;;;OAOG;YACW,gBAAgB;IAkE9B;;;;OAIG;YACW,iBAAiB;IAyDzB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAahE,gBAAgB,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAIhE,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAW3B,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC;IAsBV,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAe3B,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IA+DV,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAuCrE;AA8ED,eAAO,MAAM,eAAe,iBAAwB,CAAA"}
1
+ {"version":3,"file":"telegram-adapter.d.ts","sourceRoot":"","sources":["../../../../src/plugins/messengers/telegram/telegram-adapter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EAEd,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,wBAAwB,CAAA;AAkB/B,qBAAa,eAAgB,YAAW,gBAAgB;IACtD,QAAQ,CAAC,IAAI,cAAa;IAC1B,OAAO,CAAC,GAAG,CAAmB;IAC9B,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,cAAc,CAAC,CAAwC;IAC/D,OAAO,CAAC,aAAa,CAAC,CAAuC;IAC7D,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,eAAe,CAAoD;IAK3E,OAAO,CAAC,aAAa,CAAC,CAAgC;IACtD,OAAO,CAAC,uBAAuB,CAAI;IACnC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAI;IACtD,OAAO,CAAC,iBAAiB,CAAC,CAAgC;IAC1D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAiB;IAE5D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0T5B;;6EAEyE;IACzE,OAAO,CAAC,iBAAiB;YAYX,cAAc;IAmD5B,OAAO,CAAC,aAAa;IA6Bf,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B3B,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAIhE;;;;;;;;;OASG;YACW,iBAAiB;IAuD/B;;;;;;;;;;;;;;;OAeG;YACW,iBAAiB;IA4E/B;;;;;;;OAOG;YACW,gBAAgB;IAkE9B;;;;OAIG;YACW,iBAAiB;IAyDzB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAahE,gBAAgB,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAIhE,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAW3B,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC;IAsBV,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAe3B,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IA+DV,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAuCrE;AA8ED,eAAO,MAAM,eAAe,iBAAwB,CAAA"}
@@ -62,11 +62,25 @@ export class TelegramAdapter {
62
62
  return;
63
63
  if (!this.messageHandler)
64
64
  return;
65
+ // Batch 3 (#8) — quoted-message recovery. If the user replied to
66
+ // an earlier message in this chat, prepend a compact citation
67
+ // block so the agent can refer back to it. Limited to 800 chars
68
+ // to keep groups with long quote chains from blowing the prompt
69
+ // (a /memo or explicit follow-up can fetch the rest).
70
+ const replyTo = ctx.message.reply_to_message;
71
+ const quoted = replyTo?.text || replyTo?.caption || '';
72
+ const quotedAuthor = replyTo?.from?.username
73
+ ?? replyTo?.from?.first_name
74
+ ?? 'someone';
75
+ const quotedBlock = quoted
76
+ ? `[reply to @${quotedAuthor}: "${quoted.length > 800 ? `${quoted.slice(0, 797)}…` : quoted}"]\n\n`
77
+ : '';
78
+ const text = `${quotedBlock}${ctx.message.text || ''}`;
65
79
  const message = {
66
80
  id: ctx.message.message_id.toString(),
67
81
  threadId: ctx.chat.id.toString(),
68
82
  userId: ctx.message.from?.id?.toString() || 'unknown',
69
- text: ctx.message.text || '',
83
+ text,
70
84
  timestamp: new Date(ctx.message.date * 1000),
71
85
  channelId: this.config?.channelId || 'default',
72
86
  };