ccgateway 0.1.8 → 0.2.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AA0BA;;;;;;;;GAQG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAqJjD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,IAAI,IAAI,CAgDjC;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAuBrF;AAID,6BAA6B;AAC7B,wBAAgB,OAAO,IAAI,MAAM,CAEhC"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAyBA;;;;;;;;GAQG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAqHjD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,IAAI,IAAI,CAgDjC;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAuBrF;AAID,6BAA6B;AAC7B,wBAAgB,OAAO,IAAI,MAAM,CAEhC"}
package/dist/daemon.js CHANGED
@@ -7,7 +7,6 @@ import { CCSpawner } from './spawner.js';
7
7
  import { MessageRouter } from './router.js';
8
8
  import { PluginLoader } from './plugin.js';
9
9
  import { CrossAgentMessenger } from './messaging.js';
10
- import { AsyncTaskWatcher } from './async-watcher.js';
11
10
  import { createIpcServer, socketPath } from './ipc.js';
12
11
  import { configureLogger, logger } from './logger.js';
13
12
  import { writeFileSync, readFileSync, existsSync, unlinkSync, statSync } from 'node:fs';
@@ -43,38 +42,11 @@ export async function startDaemon() {
43
42
  const skills = new SkillManager(ccgHome);
44
43
  const context = new ContextBuilder(sessions, skills, ccgHome, registry);
45
44
  const spawner = new CCSpawner();
46
- // 5. Create PluginLoader (needed by watcher callbacks)
45
+ // 5. Create PluginLoader
47
46
  const loader = new PluginLoader();
48
- // 5.5 Create async task watcher
49
- const watcher = new AsyncTaskWatcher({
50
- sendToChannel: async (channel, botId, content) => {
51
- const gatewayPlugins = loader.getPluginsByType("gateway");
52
- for (const plugin of gatewayPlugins) {
53
- const gw = plugin;
54
- if (typeof gw.sendToChannel === "function") {
55
- try {
56
- await gw.sendToChannel(channel, botId, content);
57
- return;
58
- }
59
- catch {
60
- // try next gateway
61
- }
62
- }
63
- }
64
- logger.error(`async-watcher: no gateway could deliver result to channel ${channel}`);
65
- },
66
- appendToSession: async (agentId, sessionKey, content, tokens) => {
67
- await sessions.appendMessage(agentId, sessionKey, {
68
- role: "assistant",
69
- content,
70
- ts: Date.now(),
71
- tokens,
72
- });
73
- },
74
- });
75
- // 5.6 Create router (needs watcher)
76
- const router = new MessageRouter(registry, sessions, context, spawner, config.bindings, watcher);
77
- // 5.7 Create messenger (needs loader and router)
47
+ // 5.5 Create router
48
+ const router = new MessageRouter(registry, sessions, context, spawner, config.bindings);
49
+ // 5.6 Create messenger (needs loader and router)
78
50
  const messenger = new CrossAgentMessenger(registry, config.bindings, loader, ccgHome);
79
51
  messenger.setRouter(router);
80
52
  // 6. Build CcgCore object for plugins
@@ -107,9 +79,7 @@ export async function startDaemon() {
107
79
  }
108
80
  // 8. Start all plugins
109
81
  await loader.startAll();
110
- // 8.5 Start async task watcher
111
- watcher.start();
112
- // 9. Start IPC server for cross-agent messaging from CLI
82
+ // 8.5 Start IPC server for cross-agent messaging from CLI
113
83
  const ipcServer = createIpcServer(async (toAgent, content, fromAgent) => {
114
84
  await messenger.send(toAgent, content, fromAgent);
115
85
  });
@@ -119,7 +89,6 @@ export async function startDaemon() {
119
89
  // 11. Set up signal handlers for graceful shutdown
120
90
  const shutdown = async (signal) => {
121
91
  logger.info(`ccgateway received ${signal}, shutting down...`);
122
- watcher.stop();
123
92
  try {
124
93
  ipcServer.close();
125
94
  removeSocketFile();
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
@@ -18,10 +18,24 @@ export declare class CrossAgentMessenger {
18
18
  /** Set the router for internal message routing (called after router is created) */
19
19
  setRouter(router: MessageRouter): void;
20
20
  /**
21
- * Send a message to an agent. Uses channel-native messaging if the agent
22
- * has a gateway binding, otherwise falls back to file-based inbox.
21
+ * Send a message to an agent. The request is posted to the target's
22
+ * channel for visibility, then the target agent processes it **in the
23
+ * background**. When done, the response is posted to both the target's
24
+ * channel and the sender's channel.
25
+ *
26
+ * Returns immediately after posting the request — does NOT block waiting
27
+ * for the target agent to finish.
23
28
  */
24
29
  send(toAgentId: string, content: string, fromAgentId?: string): Promise<void>;
30
+ /**
31
+ * Route a cross-agent message in the background and post the response
32
+ * to both the target's channel and the sender's channel when done.
33
+ */
34
+ private routeInBackground;
35
+ /**
36
+ * Get the sendToChannel function for a gateway, if available.
37
+ */
38
+ private getSendToChannel;
25
39
  /**
26
40
  * Direct file-based inbox write.
27
41
  * Appends to $CCG_HOME/agents/{toAgentId}/inbox.jsonl
@@ -1 +1 @@
1
- {"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../src/messaging.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAOjD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;CACf;AAID,qBAAa,mBAAmB;IAI5B,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO;IANjB,OAAO,CAAC,MAAM,CAAC,CAAgB;gBAGrB,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,MAAM;IAGzB,mFAAmF;IACnF,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAItC;;;OAGG;IACG,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAiFhB;;;OAGG;IACG,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAkBhB;;OAEG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqBzD;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBnD;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAGtC"}
1
+ {"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../src/messaging.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQjD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;CACf;AAYD,qBAAa,mBAAmB;IAI5B,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO;IANjB,OAAO,CAAC,MAAM,CAAC,CAAgB;gBAGrB,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,MAAM;IAGzB,mFAAmF;IACnF,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAItC;;;;;;;;OAQG;IACG,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IA+ChB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAwEzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;;OAGG;IACG,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAkBhB;;OAEG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqBzD;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBnD;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAGtC"}
package/dist/messaging.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { appendFile, readFile, writeFile, mkdir } from "node:fs/promises";
2
2
  import { existsSync } from "node:fs";
3
3
  import { join } from "node:path";
4
+ import { logger } from "./logger.js";
4
5
  // ── CrossAgentMessenger ──────────────────────────────────────────────────
5
6
  export class CrossAgentMessenger {
6
7
  agents;
@@ -19,8 +20,13 @@ export class CrossAgentMessenger {
19
20
  this.router = router;
20
21
  }
21
22
  /**
22
- * Send a message to an agent. Uses channel-native messaging if the agent
23
- * has a gateway binding, otherwise falls back to file-based inbox.
23
+ * Send a message to an agent. The request is posted to the target's
24
+ * channel for visibility, then the target agent processes it **in the
25
+ * background**. When done, the response is posted to both the target's
26
+ * channel and the sender's channel.
27
+ *
28
+ * Returns immediately after posting the request — does NOT block waiting
29
+ * for the target agent to finish.
24
30
  */
25
31
  async send(toAgentId, content, fromAgentId) {
26
32
  // Validate target agent exists
@@ -31,10 +37,9 @@ export class CrossAgentMessenger {
31
37
  // 1. Find target agent's primary binding (first binding where agent matches)
32
38
  const binding = this.bindings.find((b) => b.agent === toAgentId);
33
39
  if (binding) {
34
- // 2a. Post to Discord/Slack for human visibility (optional)
35
- const gatewayPlugins = this.plugins.getPluginsByType("gateway");
36
- const plugin = gatewayPlugins.find((p) => p.name === `${binding.gateway}-gateway`);
37
- if (plugin && typeof plugin.sendToChannel === "function") {
40
+ const sendToChannel = this.getSendToChannel(binding.gateway);
41
+ // 2. Post the request to the target's channel for human visibility
42
+ if (sendToChannel) {
38
43
  let senderBotId = binding.bot;
39
44
  if (fromAgentId) {
40
45
  const senderBinding = this.bindings.find((b) => b.agent === fromAgentId && b.gateway === binding.gateway);
@@ -42,12 +47,27 @@ export class CrossAgentMessenger {
42
47
  senderBotId = senderBinding.bot;
43
48
  }
44
49
  }
45
- // Post to channel so humans can see the cross-agent message
46
- await plugin.sendToChannel(binding.channel, senderBotId, content);
50
+ await sendToChannel(binding.channel, senderBotId, content);
47
51
  }
48
- // 2b. Route internally so the target agent actually processes it.
49
- // Bot messages are ignored by the gateway, so we route directly.
52
+ // 3. Route in the background don't block the caller.
53
+ // Uses spawnStreaming (via onChunk no-op) for activity-based timeout.
50
54
  if (this.router) {
55
+ this.routeInBackground(toAgentId, content, fromAgentId, binding, sendToChannel);
56
+ }
57
+ return;
58
+ }
59
+ // 4. No binding or no usable gateway plugin — fall back to inbox
60
+ await this.sendToInbox(toAgentId, content, fromAgentId);
61
+ }
62
+ /**
63
+ * Route a cross-agent message in the background and post the response
64
+ * to both the target's channel and the sender's channel when done.
65
+ */
66
+ routeInBackground(toAgentId, content, fromAgentId, binding, sendToChannel) {
67
+ // Fire and forget — errors are logged, not thrown
68
+ void (async () => {
69
+ try {
70
+ // Use a no-op onChunk to trigger spawnStreaming (activity-based timeout)
51
71
  const response = await this.router.route({
52
72
  from: {
53
73
  gateway: "internal",
@@ -59,25 +79,43 @@ export class CrossAgentMessenger {
59
79
  to: { agent: toAgentId },
60
80
  content,
61
81
  attachments: [],
62
- });
63
- if (plugin && typeof plugin.sendToChannel === "function") {
64
- const sendToChannel = plugin.sendToChannel;
65
- // Post the agent's response in their own channel for visibility
82
+ }, () => { });
83
+ if (sendToChannel) {
84
+ // Post the agent's response in their own channel
66
85
  await sendToChannel(binding.channel, binding.bot, response);
67
- // Post the response back to the sender's channel so they see the reply.
68
- // Bot messages are ignored by the gateway handler, so this won't loop.
86
+ // Post the response back to the sender's channel so they see the reply
69
87
  if (fromAgentId) {
70
88
  const senderBinding = this.bindings.find((b) => b.agent === fromAgentId && b.gateway === binding.gateway);
71
89
  if (senderBinding && senderBinding.channel !== binding.channel) {
72
- await sendToChannel(senderBinding.channel, binding.bot, response);
90
+ await sendToChannel(senderBinding.channel, binding.bot, `[from ${toAgentId}] ${response}`);
73
91
  }
74
92
  }
75
93
  }
94
+ logger.info(`messaging: cross-agent ${fromAgentId || "system"} → ${toAgentId} completed`);
76
95
  }
77
- return;
96
+ catch (err) {
97
+ const errMsg = err instanceof Error ? err.message : String(err);
98
+ logger.error(`messaging: cross-agent ${fromAgentId || "system"} → ${toAgentId} failed: ${errMsg}`);
99
+ // Post error to sender's channel if possible
100
+ if (sendToChannel && fromAgentId) {
101
+ const senderBinding = this.bindings.find((b) => b.agent === fromAgentId && b.gateway === binding.gateway);
102
+ if (senderBinding) {
103
+ await sendToChannel(senderBinding.channel, binding.bot, `⚠️ Cross-agent message to ${toAgentId} failed: ${errMsg}`).catch(() => { });
104
+ }
105
+ }
106
+ }
107
+ })();
108
+ }
109
+ /**
110
+ * Get the sendToChannel function for a gateway, if available.
111
+ */
112
+ getSendToChannel(gateway) {
113
+ const gatewayPlugins = this.plugins.getPluginsByType("gateway");
114
+ const plugin = gatewayPlugins.find((p) => p.name === `${gateway}-gateway`);
115
+ if (plugin && typeof plugin.sendToChannel === "function") {
116
+ return plugin.sendToChannel;
78
117
  }
79
- // 3. No binding or no usable gateway plugin — fall back to inbox
80
- await this.sendToInbox(toAgentId, content, fromAgentId);
118
+ return null;
81
119
  }
82
120
  /**
83
121
  * Direct file-based inbox write.
@@ -1 +1 @@
1
- {"version":3,"file":"messaging.js","sourceRoot":"","sources":["../src/messaging.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messaging.js","sourceRoot":"","sources":["../src/messaging.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAmBrC,4EAA4E;AAE5E,MAAM,OAAO,mBAAmB;IAIpB;IACA;IACA;IACA;IANF,MAAM,CAAiB;IAE/B,YACU,MAAqB,EACrB,QAAyB,EACzB,OAAqB,EACrB,OAAe;QAHf,WAAM,GAAN,MAAM,CAAe;QACrB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,YAAO,GAAP,OAAO,CAAc;QACrB,YAAO,GAAP,OAAO,CAAQ;IACtB,CAAC;IAEJ,mFAAmF;IACnF,SAAS,CAAC,MAAqB;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,IAAI,CACR,SAAiB,EACjB,OAAe,EACf,WAAoB;QAEpB,+BAA+B;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,aAAa,CAAC,CAAC;QACpD,CAAC;QAED,6EAA6E;QAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;QAEjE,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAE7D,mEAAmE;YACnE,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;gBAC9B,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAChE,CAAC;oBACF,IAAI,aAAa,EAAE,CAAC;wBAClB,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC;oBAClC,CAAC;gBACH,CAAC;gBAED,MAAM,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YAC7D,CAAC;YAED,uDAAuD;YACvD,yEAAyE;YACzE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,IAAI,CAAC,iBAAiB,CACpB,SAAS,EACT,OAAO,EACP,WAAW,EACX,OAAO,EACP,aAAa,CACd,CAAC;YACJ,CAAC;YAED,OAAO;QACT,CAAC;QAED,iEAAiE;QACjE,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACK,iBAAiB,CACvB,SAAiB,EACjB,OAAe,EACf,WAA+B,EAC/B,OAAsB,EACtB,aAAqC;QAErC,kDAAkD;QAClD,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,yEAAyE;gBACzE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAO,CAAC,KAAK,CACvC;oBACE,IAAI,EAAE;wBACJ,OAAO,EAAE,UAAU;wBACnB,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,IAAI,EAAE,WAAW,IAAI,QAAQ;wBAC7B,MAAM,EAAE,WAAW,IAAI,QAAQ;wBAC/B,SAAS,EAAE,UAAU,IAAI,CAAC,GAAG,EAAE,EAAE;qBAClC;oBACD,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;oBACxB,OAAO;oBACP,WAAW,EAAE,EAAE;iBAChB,EACD,GAAG,EAAE,GAAE,CAAC,CACT,CAAC;gBAEF,IAAI,aAAa,EAAE,CAAC;oBAClB,iDAAiD;oBACjD,MAAM,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;oBAE5D,uEAAuE;oBACvE,IAAI,WAAW,EAAE,CAAC;wBAChB,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAChE,CAAC;wBACF,IAAI,aAAa,IAAI,aAAa,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;4BAC/D,MAAM,aAAa,CACjB,aAAa,CAAC,OAAO,EACrB,OAAO,CAAC,GAAG,EACX,SAAS,SAAS,KAAK,QAAQ,EAAE,CAClC,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,MAAM,CAAC,IAAI,CACT,0BAA0B,WAAW,IAAI,QAAQ,MAAM,SAAS,YAAY,CAC7E,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,MAAM,CAAC,KAAK,CACV,0BAA0B,WAAW,IAAI,QAAQ,MAAM,SAAS,YAAY,MAAM,EAAE,CACrF,CAAC;gBAEF,6CAA6C;gBAC7C,IAAI,aAAa,IAAI,WAAW,EAAE,CAAC;oBACjC,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAChE,CAAC;oBACF,IAAI,aAAa,EAAE,CAAC;wBAClB,MAAM,aAAa,CACjB,aAAa,CAAC,OAAO,EACrB,OAAO,CAAC,GAAG,EACX,6BAA6B,SAAS,YAAY,MAAM,EAAE,CAC3D,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACpB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,OAAe;QACtC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAChC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,OAAO,UAAU,CACE,CAAC;QAE3C,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;YACzD,OAAO,MAAM,CAAC,aAAgC,CAAC;QACjD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CACf,SAAiB,EACjB,OAAe,EACf,WAAoB;QAEpB,MAAM,GAAG,GAAiB;YACxB,IAAI,EAAE,WAAW,IAAI,QAAQ;YAC7B,OAAO;YACP,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,IAAI,EAAE,KAAK;SACZ,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QAEpD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,OAAe;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAE7C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEjE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,QAAQ,GAAmB,KAAK,CAAC,GAAG,CACxC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAiB,CAC3C,CAAC;QAEF,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,OAAe;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAE7C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEjE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAmB,KAAK,CAAC,GAAG,CACxC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAiB,CAC3C,CAAC;QAEF,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACxE,MAAM,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,OAAe;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IAC9D,CAAC;CACF"}
package/dist/plugin.d.ts CHANGED
@@ -8,7 +8,7 @@ export interface SessionManager {
8
8
  resetSession(agentId: string, sessionKey: string): Promise<void>;
9
9
  }
10
10
  export interface MessageRouter {
11
- route(message: IncomingMessage): Promise<string>;
11
+ route(message: IncomingMessage, onChunk?: (accumulated: string) => void): Promise<string>;
12
12
  resolveAgent(gateway: string, channelId: string): string | undefined;
13
13
  resolveAgentByBot(gateway: string, botId: string): string | undefined;
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,eAAe,EAChB,MAAM,YAAY,CAAC;AAMpB,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;IAC9C,UAAU,IAAI,WAAW,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,kBAAkB,CAChB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC;IACV,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACrE,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACvE;AAID,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E;AAID,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,4EAA4E;AAC5E,MAAM,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC;AAI5C,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAmB;IAElC;;;;;;;;;OASG;IACG,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkClE,gDAAgD;IAC1C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAS/B,uDAAuD;IACjD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B,8EAA8E;IAC9E,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAIvC,kCAAkC;IAClC,UAAU,IAAI,SAAS,EAAE;IAIzB,+CAA+C;IAC/C,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,EAAE;IAI/C,uDAAuD;IACvD,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAM9C;;;;OAIG;YACW,YAAY;CAW3B"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,eAAe,EAChB,MAAM,YAAY,CAAC;AAMpB,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;IAC9C,UAAU,IAAI,WAAW,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,kBAAkB,CAChB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC;IACV,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1F,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACrE,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACvE;AAID,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E;AAID,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,4EAA4E;AAC5E,MAAM,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC;AAI5C,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAmB;IAElC;;;;;;;;;OASG;IACG,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkClE,gDAAgD;IAC1C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAS/B,uDAAuD;IACjD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B,8EAA8E;IAC9E,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAIvC,kCAAkC;IAClC,UAAU,IAAI,SAAS,EAAE;IAIzB,+CAA+C;IAC/C,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,EAAE;IAI/C,uDAAuD;IACvD,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAM9C;;;;OAIG;YACW,YAAY;CAW3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"discord-gateway.d.ts","sourceRoot":"","sources":["../../src/plugins/discord-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,OAAO,EAAoB,MAAM,YAAY,CAAC;AACvF,OAAO,KAAK,EAAE,SAAS,EAAW,MAAM,cAAc,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAKnD,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,oBAAoB;IAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAID;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYlD;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAa,GAAG,MAAM,EAAE,CAoCzE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,GACd,eAAe,CAiBjB;AAID,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,YAAY,EAAE,oBAAoB,GACjC,SAAS,CAgMX"}
1
+ {"version":3,"file":"discord-gateway.d.ts","sourceRoot":"","sources":["../../src/plugins/discord-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,OAAO,EAAoB,MAAM,YAAY,CAAC;AACvF,OAAO,KAAK,EAAE,SAAS,EAAW,MAAM,cAAc,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAKnD,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,oBAAoB;IAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAYD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYlD;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAa,GAAG,MAAM,EAAE,CAoCzE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,GACd,eAAe,CAiBjB;AAID,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,YAAY,EAAE,oBAAoB,GACjC,SAAS,CAwRX"}
@@ -1,5 +1,10 @@
1
1
  import { Client, GatewayIntentBits } from "discord.js";
2
2
  import { logger } from "../logger.js";
3
+ // ── Constants ────────────────────────────────────────────────────────────
4
+ /** Minimum interval between Discord message edits (rate-limit safe). */
5
+ const EDIT_THROTTLE_MS = 800;
6
+ /** Discord message character limit. */
7
+ const DISCORD_CHAR_LIMIT = 2000;
3
8
  // ── Helpers (exported for testing) ────────────────────────────────────────
4
9
  /**
5
10
  * Resolve a token value. If it starts with "$", treat it as an env var name.
@@ -82,6 +87,16 @@ export default function createDiscordGateway(pluginConfig) {
82
87
  const resolvedTokens = new Map();
83
88
  // Track our own bot user IDs so we can distinguish "our bots" from "other bots"
84
89
  const ownBotUserIds = new Set();
90
+ // Per-channel message queue — prevents concurrent spawns for the same channel.
91
+ // When a message is being processed, subsequent messages queue behind it.
92
+ const channelLocks = new Map();
93
+ // Message deduplication — Discord gateway can replay events after reconnection.
94
+ // Track recently seen message IDs to prevent processing the same message twice.
95
+ const seenMessages = new Set();
96
+ // Cross-agent loop prevention — tracks channels where the last message we
97
+ // processed was from a bot. If ANOTHER bot message arrives in the same channel
98
+ // before a human message resets it, we skip it (caps at 1 hop).
99
+ const botChainActive = new Set();
85
100
  const plugin = {
86
101
  name: "discord-gateway",
87
102
  type: "gateway",
@@ -116,8 +131,21 @@ export default function createDiscordGateway(pluginConfig) {
116
131
  }
117
132
  });
118
133
  client.on("messageCreate", async (msg) => {
134
+ // Deduplicate at the earliest point — before enqueue.
135
+ // Discord gateway can deliver the same event multiple times per bot.
136
+ // Key includes botId so different bots can still process the same message.
137
+ const dedupKey = `${botId}:${msg.id}`;
138
+ if (seenMessages.has(dedupKey))
139
+ return;
140
+ seenMessages.add(dedupKey);
141
+ if (seenMessages.size > 5000) {
142
+ const all = [...seenMessages];
143
+ seenMessages.clear();
144
+ for (const id of all.slice(-2500))
145
+ seenMessages.add(id);
146
+ }
119
147
  try {
120
- await handleMessage(msg, botId);
148
+ await enqueueMessage(msg, botId);
121
149
  }
122
150
  catch (err) {
123
151
  const errMsg = err instanceof Error ? err.message : String(err);
@@ -152,12 +180,48 @@ export default function createDiscordGateway(pluginConfig) {
152
180
  }
153
181
  };
154
182
  return plugin;
183
+ // ── Per-channel queue — serialize messages so only one spawns at a time ──
184
+ async function enqueueMessage(msg, receivingBotId) {
185
+ const key = `${receivingBotId}:${msg.channelId}`;
186
+ const prev = channelLocks.get(key) ?? Promise.resolve();
187
+ const current = prev.then(() => handleMessage(msg, receivingBotId), () => handleMessage(msg, receivingBotId));
188
+ channelLocks.set(key, current);
189
+ // Clean up after completion to avoid memory leak
190
+ current.finally(() => {
191
+ if (channelLocks.get(key) === current) {
192
+ channelLocks.delete(key);
193
+ }
194
+ });
195
+ return current;
196
+ }
155
197
  // ── Internal message handler ──────────────────────────────────────────
156
198
  async function handleMessage(msg, receivingBotId) {
157
- logger.info(`discord-gateway: bot "${receivingBotId}" received message in channel ${msg.channelId} from ${msg.author.tag} (bot=${msg.author.bot})`);
158
- // Ignore all bot messages (prevents feedback loops)
199
+ logger.info(`discord-gateway: bot "${receivingBotId}" received message ${msg.id} in channel ${msg.channelId} from ${msg.author.tag} (bot=${msg.author.bot})`);
200
+ // Cross-agent communication: allow messages from our own bots, but
201
+ // prevent loops. External bots are always ignored.
159
202
  if (msg.author.bot) {
160
- return;
203
+ // Ignore external bots entirely
204
+ if (!ownBotUserIds.has(msg.author.id))
205
+ return;
206
+ // Ignore self — a bot never responds to its own messages
207
+ const client = clients.get(receivingBotId);
208
+ if (client?.user?.id === msg.author.id)
209
+ return;
210
+ // Loop prevention: only allow 1 hop of bot-to-bot per channel.
211
+ // If we already responded to a bot message here, skip until a human resets.
212
+ const chainKey = `${receivingBotId}:${msg.channelId}`;
213
+ if (botChainActive.has(chainKey)) {
214
+ logger.info(`discord-gateway: bot "${receivingBotId}" skipping bot message in ${msg.channelId} (chain limit)`);
215
+ return;
216
+ }
217
+ // Mark chain active — next bot message in this channel will be skipped
218
+ botChainActive.add(chainKey);
219
+ }
220
+ else {
221
+ // Human message resets the chain for all bots in this channel
222
+ for (const botId of clients.keys()) {
223
+ botChainActive.delete(`${botId}:${msg.channelId}`);
224
+ }
161
225
  }
162
226
  // Only handle messages if THIS bot is the one bound to this channel.
163
227
  // This prevents "several people typing" — only the correct bot responds.
@@ -186,24 +250,39 @@ export default function createDiscordGateway(pluginConfig) {
186
250
  }
187
251
  // Normalize to IncomingMessage and route
188
252
  const incomingMessage = normalizeMessage(msg, agentId);
189
- // Show typing indicator
253
+ // Show typing indicator while processing
190
254
  const typingInterval = setInterval(() => {
191
255
  msg.channel.sendTyping().catch(() => { });
192
256
  }, 5000);
193
- // Send initial typing
194
257
  await msg.channel.sendTyping().catch(() => { });
258
+ // Send initial "thinking" message that we'll edit with streaming content
259
+ const sentMsg = await msg.channel.send("Thinking...");
260
+ let lastEditTime = 0;
261
+ // Throttled streaming callback — edits the message at most every EDIT_THROTTLE_MS
262
+ const onChunk = (accumulated) => {
263
+ const now = Date.now();
264
+ if (now - lastEditTime < EDIT_THROTTLE_MS)
265
+ return;
266
+ lastEditTime = now;
267
+ // During streaming, show first chunk (truncated if too long)
268
+ const preview = accumulated.length > DISCORD_CHAR_LIMIT - 3
269
+ ? accumulated.slice(0, DISCORD_CHAR_LIMIT - 3) + "..."
270
+ : accumulated;
271
+ sentMsg.edit(preview).catch(() => { });
272
+ };
195
273
  try {
196
- const response = await core.router.route(incomingMessage);
197
- // Split and send response
274
+ const response = await core.router.route(incomingMessage, onChunk);
275
+ // Final response: replace initial message + send overflow chunks
198
276
  const chunks = splitMessage(response);
199
- for (const chunk of chunks) {
200
- await msg.channel.send(chunk);
277
+ await sentMsg.edit(chunks[0]);
278
+ for (let i = 1; i < chunks.length; i++) {
279
+ await msg.channel.send(chunks[i]);
201
280
  }
202
281
  }
203
282
  catch (err) {
204
283
  const errMsg = err instanceof Error ? err.message : String(err);
205
284
  logger.error(`discord-gateway: error handling message: ${errMsg}`);
206
- await msg.channel.send(`⚠️ Error: ${errMsg}`).catch(() => { });
285
+ await sentMsg.edit(`⚠️ Error: ${errMsg}`).catch(() => { });
207
286
  }
208
287
  finally {
209
288
  clearInterval(typingInterval);
@@ -1 +1 @@
1
- {"version":3,"file":"discord-gateway.js","sourceRoot":"","sources":["../../src/plugins/discord-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAkC,MAAM,YAAY,CAAC;AAGvF,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAetC,6EAA6E;AAE7E;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,yBAAyB,OAAO,sCAAsC,KAAK,IAAI,CAChF,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,QAAgB,IAAI;IAC7D,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,IAAI,SAAS,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvB,MAAM;QACR,CAAC;QAED,6CAA6C;QAC7C,IAAI,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACpD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC1C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB;YAC3D,SAAS;QACX,CAAC;QAED,sCAAsC;QACtC,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9C,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC1C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc;YACzD,SAAS;QACX,CAAC;QAED,oBAAoB;QACpB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACvC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,GAAY,EACZ,OAAe;IAEf,OAAO;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,GAAG,CAAC,SAAS;YACtB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE;YACrB,SAAS,EAAE,GAAG,CAAC,EAAE;SAClB;QACD,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QACtB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5D,IAAI,EAAE,CAAC,CAAC,WAAW,IAAI,0BAA0B;YACjD,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,QAAQ,EAAE,CAAC,CAAC,IAAI,IAAI,SAAS;SAC9B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,6EAA6E;AAE7E,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,YAAkC;IAElC,IAAI,IAAa,CAAC;IAClB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEjD,gFAAgF;IAChF,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IAExC,MAAM,MAAM,GAAwC;QAClD,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,SAAS;QAEf,KAAK,CAAC,IAAI,CAAC,OAAgB;YACzB,IAAI,GAAG,OAAO,CAAC;YAEf,uCAAuC;YACvC,KAAK,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnE,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC5C,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QAED,KAAK,CAAC,KAAK;YACT,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBAClE,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;oBACxB,OAAO,EAAE;wBACP,iBAAiB,CAAC,MAAM;wBACxB,iBAAiB,CAAC,aAAa;wBAC/B,iBAAiB,CAAC,cAAc;qBACjC;iBACF,CAAC,CAAC;gBAEH,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBAE3B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBACtB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;wBAChB,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAClC,MAAM,CAAC,IAAI,CACT,yBAAyB,KAAK,kBAAkB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAClE,CAAC;wBACF,4CAA4C;wBAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK,CAClD,CAAC;wBACF,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;4BAC5B,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;4BAChD,MAAM,CAAC,IAAI,CACT,yBAAyB,KAAK,aAAa,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAC/G,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;oBAChD,IAAI,CAAC;wBACH,MAAM,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBAClC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,MAAM,GACV,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACnD,MAAM,CAAC,KAAK,CACV,2CAA2C,GAAG,CAAC,EAAE,KAAK,MAAM,EAAE,CAC/D,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI;YACR,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBAC5D,MAAM,CAAC,IAAI,CAAC,uCAAuC,KAAK,GAAG,CAAC,CAAC;gBAC7D,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,CAAC;YACD,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,aAAa,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;KACF,CAAC;IAEF,mFAAmF;IACnF,MAAM,CAAC,aAAa,GAAG,KAAK,EAC1B,SAAiB,EACjB,KAAa,EACb,OAAe,EACA,EAAE;QACjB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,gCAAgC,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CACb,YAAY,SAAS,mCAAmC,CACzD,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAO,OAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,MAAM,CAAC;IAEd,yEAAyE;IAEzE,KAAK,UAAU,aAAa,CAAC,GAAY,EAAE,cAAsB;QAC/D,MAAM,CAAC,IAAI,CACT,yBAAyB,cAAc,iCAAiC,GAAG,CAAC,SAAS,SAAS,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CACvI,CAAC;QAEF,oDAAoD;QACpD,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,qEAAqE;QACrE,yEAAyE;QACzE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CACvC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,KAAK,cAAc,CAC1F,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CACT,yBAAyB,cAAc,4BAA4B,GAAG,CAAC,SAAS,EAAE,CACnF,CAAC;YACF,OAAO,CAAC,wCAAwC;QAClD,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC;QAE9B,mCAAmC;QACnC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACvD,OAAO;QACT,CAAC;QAED,wBAAwB;QACxB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACjD,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CACvD,OAAO,EACP,SAAS,EACT,GAAG,CAAC,SAAS,CACd,CAAC;YACF,MAAO,IAAI,CAAC,QAAgB,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC/D,MAAO,GAAG,CAAC,OAAuB,CAAC,IAAI,CACrC,uBAAuB,OAAO,qBAAqB,CACpD,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CACvD,OAAO,EACP,SAAS,EACT,GAAG,CAAC,SAAS,CACd,CAAC;YACF,MAAO,GAAG,CAAC,OAAuB,CAAC,IAAI,CACrC,cAAc,OAAO,oBAAoB,UAAU,oBAAoB,GAAG,CAAC,SAAS,EAAE,CACvF,CAAC;YACF,OAAO;QACT,CAAC;QAED,yCAAyC;QACzC,MAAM,eAAe,GAAG,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAEvD,wBAAwB;QACxB,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;YACrC,GAAG,CAAC,OAAuB,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC5D,CAAC,EAAE,IAAI,CAAC,CAAC;QAET,sBAAsB;QACtB,MAAO,GAAG,CAAC,OAAuB,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEhE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAE1D,0BAA0B;YAC1B,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;YACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAO,GAAG,CAAC,OAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,MAAM,CAAC,KAAK,CAAC,4CAA4C,MAAM,EAAE,CAAC,CAAC;YAEnE,MAAO,GAAG,CAAC,OAAuB,CAAC,IAAI,CACrC,aAAa,MAAM,EAAE,CACtB,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACpB,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,cAAc,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"discord-gateway.js","sourceRoot":"","sources":["../../src/plugins/discord-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAkC,MAAM,YAAY,CAAC;AAGvF,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAetC,4EAA4E;AAE5E,wEAAwE;AACxE,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,uCAAuC;AACvC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEhC,6EAA6E;AAE7E;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,yBAAyB,OAAO,sCAAsC,KAAK,IAAI,CAChF,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,QAAgB,IAAI;IAC7D,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,IAAI,SAAS,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvB,MAAM;QACR,CAAC;QAED,6CAA6C;QAC7C,IAAI,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACpD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC1C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB;YAC3D,SAAS;QACX,CAAC;QAED,sCAAsC;QACtC,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9C,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC1C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc;YACzD,SAAS;QACX,CAAC;QAED,oBAAoB;QACpB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACvC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,GAAY,EACZ,OAAe;IAEf,OAAO;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,GAAG,CAAC,SAAS;YACtB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE;YACrB,SAAS,EAAE,GAAG,CAAC,EAAE;SAClB;QACD,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QACtB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5D,IAAI,EAAE,CAAC,CAAC,WAAW,IAAI,0BAA0B;YACjD,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,QAAQ,EAAE,CAAC,CAAC,IAAI,IAAI,SAAS;SAC9B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,6EAA6E;AAE7E,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,YAAkC;IAElC,IAAI,IAAa,CAAC;IAClB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEjD,gFAAgF;IAChF,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IAExC,+EAA+E;IAC/E,0EAA0E;IAC1E,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;IAEtD,gFAAgF;IAChF,gFAAgF;IAChF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEvC,0EAA0E;IAC1E,+EAA+E;IAC/E,gEAAgE;IAChE,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IAEzC,MAAM,MAAM,GAAwC;QAClD,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,SAAS;QAEf,KAAK,CAAC,IAAI,CAAC,OAAgB;YACzB,IAAI,GAAG,OAAO,CAAC;YAEf,uCAAuC;YACvC,KAAK,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnE,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC5C,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QAED,KAAK,CAAC,KAAK;YACT,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBAClE,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;oBACxB,OAAO,EAAE;wBACP,iBAAiB,CAAC,MAAM;wBACxB,iBAAiB,CAAC,aAAa;wBAC/B,iBAAiB,CAAC,cAAc;qBACjC;iBACF,CAAC,CAAC;gBAEH,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBAE3B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBACtB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;wBAChB,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAClC,MAAM,CAAC,IAAI,CACT,yBAAyB,KAAK,kBAAkB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAClE,CAAC;wBACF,4CAA4C;wBAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK,CAClD,CAAC;wBACF,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;4BAC5B,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;4BAChD,MAAM,CAAC,IAAI,CACT,yBAAyB,KAAK,aAAa,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAC/G,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;oBAChD,sDAAsD;oBACtD,qEAAqE;oBACrE,2EAA2E;oBAC3E,MAAM,QAAQ,GAAG,GAAG,KAAK,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;oBACtC,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC;wBAAE,OAAO;oBACvC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAC3B,IAAI,YAAY,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC;wBAC7B,MAAM,GAAG,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;wBAC9B,YAAY,CAAC,KAAK,EAAE,CAAC;wBACrB,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;4BAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC1D,CAAC;oBAED,IAAI,CAAC;wBACH,MAAM,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBACnC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,MAAM,GACV,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACnD,MAAM,CAAC,KAAK,CACV,2CAA2C,GAAG,CAAC,EAAE,KAAK,MAAM,EAAE,CAC/D,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI;YACR,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBAC5D,MAAM,CAAC,IAAI,CAAC,uCAAuC,KAAK,GAAG,CAAC,CAAC;gBAC7D,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,CAAC;YACD,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,aAAa,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;KACF,CAAC;IAEF,mFAAmF;IACnF,MAAM,CAAC,aAAa,GAAG,KAAK,EAC1B,SAAiB,EACjB,KAAa,EACb,OAAe,EACA,EAAE;QACjB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,gCAAgC,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CACb,YAAY,SAAS,mCAAmC,CACzD,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAO,OAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,MAAM,CAAC;IAEd,4EAA4E;IAE5E,KAAK,UAAU,cAAc,CAAC,GAAY,EAAE,cAAsB;QAChE,MAAM,GAAG,GAAG,GAAG,cAAc,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAExD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CACvB,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,cAAc,CAAC,EACxC,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,cAAc,CAAC,CACzC,CAAC;QAEF,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAE/B,iDAAiD;QACjD,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE;YACnB,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,EAAE,CAAC;gBACtC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,yEAAyE;IAEzE,KAAK,UAAU,aAAa,CAAC,GAAY,EAAE,cAAsB;QAC/D,MAAM,CAAC,IAAI,CACT,yBAAyB,cAAc,sBAAsB,GAAG,CAAC,EAAE,eAAe,GAAG,CAAC,SAAS,SAAS,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CACjJ,CAAC;QAEF,mEAAmE;QACnE,mDAAmD;QACnD,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YACnB,gCAAgC;YAChC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAAE,OAAO;YAE9C,yDAAyD;YACzD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC3C,IAAI,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO;YAE/C,+DAA+D;YAC/D,4EAA4E;YAC5E,MAAM,QAAQ,GAAG,GAAG,cAAc,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YACtD,IAAI,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjC,MAAM,CAAC,IAAI,CACT,yBAAyB,cAAc,6BAA6B,GAAG,CAAC,SAAS,gBAAgB,CAClG,CAAC;gBACF,OAAO;YACT,CAAC;YAED,uEAAuE;YACvE,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,8DAA8D;YAC9D,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnC,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,yEAAyE;QACzE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CACvC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,KAAK,cAAc,CAC1F,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CACT,yBAAyB,cAAc,4BAA4B,GAAG,CAAC,SAAS,EAAE,CACnF,CAAC;YACF,OAAO,CAAC,wCAAwC;QAClD,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC;QAE9B,mCAAmC;QACnC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACvD,OAAO;QACT,CAAC;QAED,wBAAwB;QACxB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACjD,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CACvD,OAAO,EACP,SAAS,EACT,GAAG,CAAC,SAAS,CACd,CAAC;YACF,MAAO,IAAI,CAAC,QAAgB,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC/D,MAAO,GAAG,CAAC,OAAuB,CAAC,IAAI,CACrC,uBAAuB,OAAO,qBAAqB,CACpD,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CACvD,OAAO,EACP,SAAS,EACT,GAAG,CAAC,SAAS,CACd,CAAC;YACF,MAAO,GAAG,CAAC,OAAuB,CAAC,IAAI,CACrC,cAAc,OAAO,oBAAoB,UAAU,oBAAoB,GAAG,CAAC,SAAS,EAAE,CACvF,CAAC;YACF,OAAO;QACT,CAAC;QAED,yCAAyC;QACzC,MAAM,eAAe,GAAG,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAEvD,yCAAyC;QACzC,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;YACrC,GAAG,CAAC,OAAuB,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC5D,CAAC,EAAE,IAAI,CAAC,CAAC;QACT,MAAO,GAAG,CAAC,OAAuB,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEhE,yEAAyE;QACzE,MAAM,OAAO,GAAG,MAAO,GAAG,CAAC,OAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvE,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,kFAAkF;QAClF,MAAM,OAAO,GAAG,CAAC,WAAmB,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,IAAI,GAAG,GAAG,YAAY,GAAG,gBAAgB;gBAAE,OAAO;YAClD,YAAY,GAAG,GAAG,CAAC;YAEnB,6DAA6D;YAC7D,MAAM,OAAO,GACX,WAAW,CAAC,MAAM,GAAG,kBAAkB,GAAG,CAAC;gBACzC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,GAAG,CAAC,CAAC,GAAG,KAAK;gBACtD,CAAC,CAAC,WAAW,CAAC;YAElB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAEnE,iEAAiE;YACjE,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvC,MAAO,GAAG,CAAC,OAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,MAAM,CAAC,KAAK,CAAC,4CAA4C,MAAM,EAAE,CAAC,CAAC;YAEnE,MAAM,OAAO,CAAC,IAAI,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC5D,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,cAAc,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -26,8 +26,8 @@ export declare function resolveToken(value: string): string;
26
26
  */
27
27
  export declare function markdownToMrkdwn(md: string): string;
28
28
  /**
29
- * Split a message into chunks that fit within Slack's character limit.
30
- * Prefers splitting at newline boundaries.
29
+ * Split a message into chunks that fit within Slack's section block text
30
+ * limit (3000 chars). Prefers splitting at newline boundaries.
31
31
  */
32
32
  export declare function splitMessage(text: string, maxLen?: number): string[];
33
33
  export default function createSlackGateway(pluginConfig: SlackGatewayConfig): CcgPlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"slack-gateway.d.ts","sourceRoot":"","sources":["../../src/plugins/slack-gateway.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAW,MAAM,cAAc,CAAC;AAMvD,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAID;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYlD;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAqCnD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAO,GAAG,MAAM,EAAE,CA4BlE;AAWD,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,YAAY,EAAE,kBAAkB,GAAG,SAAS,CAqQtF"}
1
+ {"version":3,"file":"slack-gateway.d.ts","sourceRoot":"","sources":["../../src/plugins/slack-gateway.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAW,MAAM,cAAc,CAAC;AAMvD,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAYD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYlD;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAqCnD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAqB,GAAG,MAAM,EAAE,CA4BhF;AAuBD,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,YAAY,EAAE,kBAAkB,GAAG,SAAS,CAmVtF"}