@lobu/gateway 3.0.8 → 3.0.12

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 (219) hide show
  1. package/dist/api/platform.d.ts.map +1 -1
  2. package/dist/api/platform.js +8 -26
  3. package/dist/api/platform.js.map +1 -1
  4. package/dist/auth/mcp/proxy.d.ts +14 -0
  5. package/dist/auth/mcp/proxy.d.ts.map +1 -1
  6. package/dist/auth/mcp/proxy.js +149 -13
  7. package/dist/auth/mcp/proxy.js.map +1 -1
  8. package/dist/cli/gateway.d.ts.map +1 -1
  9. package/dist/cli/gateway.js +29 -0
  10. package/dist/cli/gateway.js.map +1 -1
  11. package/dist/cli/index.js +2 -2
  12. package/dist/cli/index.js.map +1 -1
  13. package/dist/connections/chat-instance-manager.d.ts.map +1 -1
  14. package/dist/connections/chat-instance-manager.js +2 -1
  15. package/dist/connections/chat-instance-manager.js.map +1 -1
  16. package/dist/connections/interaction-bridge.d.ts +9 -2
  17. package/dist/connections/interaction-bridge.d.ts.map +1 -1
  18. package/dist/connections/interaction-bridge.js +132 -230
  19. package/dist/connections/interaction-bridge.js.map +1 -1
  20. package/dist/connections/message-handler-bridge.d.ts.map +1 -1
  21. package/dist/connections/message-handler-bridge.js +44 -26
  22. package/dist/connections/message-handler-bridge.js.map +1 -1
  23. package/dist/interactions.d.ts +9 -43
  24. package/dist/interactions.d.ts.map +1 -1
  25. package/dist/interactions.js +10 -52
  26. package/dist/interactions.js.map +1 -1
  27. package/dist/orchestration/base-deployment-manager.js +7 -7
  28. package/dist/orchestration/base-deployment-manager.js.map +1 -1
  29. package/dist/platform/unified-thread-consumer.d.ts.map +1 -1
  30. package/dist/platform/unified-thread-consumer.js +38 -34
  31. package/dist/platform/unified-thread-consumer.js.map +1 -1
  32. package/dist/routes/public/agent.d.ts +4 -0
  33. package/dist/routes/public/agent.d.ts.map +1 -1
  34. package/dist/routes/public/agent.js +21 -0
  35. package/dist/routes/public/agent.js.map +1 -1
  36. package/dist/services/core-services.d.ts.map +1 -1
  37. package/dist/services/core-services.js +4 -0
  38. package/dist/services/core-services.js.map +1 -1
  39. package/package.json +2 -2
  40. package/src/__tests__/agent-config-routes.test.ts +0 -254
  41. package/src/__tests__/agent-history-routes.test.ts +0 -72
  42. package/src/__tests__/agent-routes.test.ts +0 -68
  43. package/src/__tests__/agent-schedules-routes.test.ts +0 -59
  44. package/src/__tests__/agent-settings-store.test.ts +0 -323
  45. package/src/__tests__/bedrock-model-catalog.test.ts +0 -40
  46. package/src/__tests__/bedrock-openai-service.test.ts +0 -157
  47. package/src/__tests__/bedrock-provider-module.test.ts +0 -56
  48. package/src/__tests__/chat-instance-manager-slack.test.ts +0 -204
  49. package/src/__tests__/chat-response-bridge.test.ts +0 -131
  50. package/src/__tests__/config-memory-plugins.test.ts +0 -92
  51. package/src/__tests__/config-request-store.test.ts +0 -127
  52. package/src/__tests__/connection-routes.test.ts +0 -144
  53. package/src/__tests__/core-services-store-selection.test.ts +0 -92
  54. package/src/__tests__/docker-deployment.test.ts +0 -1211
  55. package/src/__tests__/embedded-deployment.test.ts +0 -342
  56. package/src/__tests__/grant-store.test.ts +0 -148
  57. package/src/__tests__/http-proxy.test.ts +0 -281
  58. package/src/__tests__/instruction-service.test.ts +0 -37
  59. package/src/__tests__/link-buttons.test.ts +0 -112
  60. package/src/__tests__/lobu.test.ts +0 -32
  61. package/src/__tests__/mcp-config-service.test.ts +0 -347
  62. package/src/__tests__/mcp-proxy.test.ts +0 -694
  63. package/src/__tests__/message-handler-bridge.test.ts +0 -17
  64. package/src/__tests__/model-selection.test.ts +0 -172
  65. package/src/__tests__/oauth-templates.test.ts +0 -39
  66. package/src/__tests__/platform-adapter-slack-send.test.ts +0 -114
  67. package/src/__tests__/platform-helpers-model-resolution.test.ts +0 -253
  68. package/src/__tests__/provider-inheritance.test.ts +0 -212
  69. package/src/__tests__/routes/cli-auth.test.ts +0 -337
  70. package/src/__tests__/routes/interactions.test.ts +0 -121
  71. package/src/__tests__/secret-proxy.test.ts +0 -85
  72. package/src/__tests__/session-manager.test.ts +0 -572
  73. package/src/__tests__/setup.ts +0 -133
  74. package/src/__tests__/skill-and-mcp-registry.test.ts +0 -203
  75. package/src/__tests__/slack-routes.test.ts +0 -161
  76. package/src/__tests__/system-config-resolver.test.ts +0 -75
  77. package/src/__tests__/system-message-limiter.test.ts +0 -89
  78. package/src/__tests__/system-skills-service.test.ts +0 -362
  79. package/src/__tests__/transcription-service.test.ts +0 -222
  80. package/src/__tests__/utils/rate-limiter.test.ts +0 -102
  81. package/src/__tests__/worker-connection-manager.test.ts +0 -497
  82. package/src/__tests__/worker-job-router.test.ts +0 -722
  83. package/src/api/index.ts +0 -1
  84. package/src/api/platform.ts +0 -292
  85. package/src/api/response-renderer.ts +0 -157
  86. package/src/auth/agent-metadata-store.ts +0 -168
  87. package/src/auth/api-auth-middleware.ts +0 -69
  88. package/src/auth/api-key-provider-module.ts +0 -213
  89. package/src/auth/base-provider-module.ts +0 -201
  90. package/src/auth/bedrock/provider-module.ts +0 -110
  91. package/src/auth/chatgpt/chatgpt-oauth-module.ts +0 -185
  92. package/src/auth/chatgpt/device-code-client.ts +0 -218
  93. package/src/auth/chatgpt/index.ts +0 -1
  94. package/src/auth/claude/oauth-module.ts +0 -280
  95. package/src/auth/cli/token-service.ts +0 -249
  96. package/src/auth/external/client.ts +0 -560
  97. package/src/auth/external/device-code-client.ts +0 -235
  98. package/src/auth/mcp/config-service.ts +0 -420
  99. package/src/auth/mcp/proxy.ts +0 -1086
  100. package/src/auth/mcp/string-substitution.ts +0 -17
  101. package/src/auth/mcp/tool-cache.ts +0 -90
  102. package/src/auth/oauth/base-client.ts +0 -267
  103. package/src/auth/oauth/client.ts +0 -153
  104. package/src/auth/oauth/credentials.ts +0 -7
  105. package/src/auth/oauth/providers.ts +0 -69
  106. package/src/auth/oauth/state-store.ts +0 -150
  107. package/src/auth/oauth-templates.ts +0 -179
  108. package/src/auth/provider-catalog.ts +0 -220
  109. package/src/auth/provider-model-options.ts +0 -41
  110. package/src/auth/settings/agent-settings-store.ts +0 -565
  111. package/src/auth/settings/auth-profiles-manager.ts +0 -216
  112. package/src/auth/settings/index.ts +0 -12
  113. package/src/auth/settings/model-preference-store.ts +0 -52
  114. package/src/auth/settings/model-selection.ts +0 -135
  115. package/src/auth/settings/resolved-settings-view.ts +0 -298
  116. package/src/auth/settings/template-utils.ts +0 -44
  117. package/src/auth/settings/token-service.ts +0 -88
  118. package/src/auth/system-env-store.ts +0 -98
  119. package/src/auth/user-agents-store.ts +0 -68
  120. package/src/channels/binding-service.ts +0 -214
  121. package/src/channels/index.ts +0 -4
  122. package/src/cli/gateway.ts +0 -1312
  123. package/src/cli/index.ts +0 -74
  124. package/src/commands/built-in-commands.ts +0 -80
  125. package/src/commands/command-dispatcher.ts +0 -94
  126. package/src/commands/command-reply-adapters.ts +0 -27
  127. package/src/config/file-loader.ts +0 -618
  128. package/src/config/index.ts +0 -588
  129. package/src/config/network-allowlist.ts +0 -71
  130. package/src/connections/chat-instance-manager.ts +0 -1284
  131. package/src/connections/chat-response-bridge.ts +0 -618
  132. package/src/connections/index.ts +0 -7
  133. package/src/connections/interaction-bridge.ts +0 -831
  134. package/src/connections/message-handler-bridge.ts +0 -415
  135. package/src/connections/platform-auth-methods.ts +0 -15
  136. package/src/connections/types.ts +0 -84
  137. package/src/gateway/connection-manager.ts +0 -291
  138. package/src/gateway/index.ts +0 -698
  139. package/src/gateway/job-router.ts +0 -201
  140. package/src/gateway-main.ts +0 -200
  141. package/src/index.ts +0 -41
  142. package/src/infrastructure/queue/index.ts +0 -12
  143. package/src/infrastructure/queue/queue-producer.ts +0 -148
  144. package/src/infrastructure/queue/redis-queue.ts +0 -361
  145. package/src/infrastructure/queue/types.ts +0 -133
  146. package/src/infrastructure/redis/system-message-limiter.ts +0 -94
  147. package/src/interactions/config-request-store.ts +0 -198
  148. package/src/interactions.ts +0 -363
  149. package/src/lobu.ts +0 -311
  150. package/src/metrics/prometheus.ts +0 -159
  151. package/src/modules/module-system.ts +0 -179
  152. package/src/orchestration/base-deployment-manager.ts +0 -900
  153. package/src/orchestration/deployment-utils.ts +0 -98
  154. package/src/orchestration/impl/docker-deployment.ts +0 -620
  155. package/src/orchestration/impl/embedded-deployment.ts +0 -268
  156. package/src/orchestration/impl/index.ts +0 -8
  157. package/src/orchestration/impl/k8s/deployment.ts +0 -1061
  158. package/src/orchestration/impl/k8s/helpers.ts +0 -610
  159. package/src/orchestration/impl/k8s/index.ts +0 -1
  160. package/src/orchestration/index.ts +0 -333
  161. package/src/orchestration/message-consumer.ts +0 -584
  162. package/src/orchestration/scheduled-wakeup.ts +0 -704
  163. package/src/permissions/approval-policy.ts +0 -36
  164. package/src/permissions/grant-store.ts +0 -219
  165. package/src/platform/file-handler.ts +0 -66
  166. package/src/platform/link-buttons.ts +0 -57
  167. package/src/platform/renderer-utils.ts +0 -44
  168. package/src/platform/response-renderer.ts +0 -84
  169. package/src/platform/unified-thread-consumer.ts +0 -187
  170. package/src/platform.ts +0 -318
  171. package/src/proxy/http-proxy.ts +0 -752
  172. package/src/proxy/proxy-manager.ts +0 -81
  173. package/src/proxy/secret-proxy.ts +0 -402
  174. package/src/proxy/token-refresh-job.ts +0 -143
  175. package/src/routes/internal/audio.ts +0 -141
  176. package/src/routes/internal/device-auth.ts +0 -652
  177. package/src/routes/internal/files.ts +0 -226
  178. package/src/routes/internal/history.ts +0 -69
  179. package/src/routes/internal/images.ts +0 -127
  180. package/src/routes/internal/interactions.ts +0 -84
  181. package/src/routes/internal/middleware.ts +0 -23
  182. package/src/routes/internal/schedule.ts +0 -226
  183. package/src/routes/internal/types.ts +0 -22
  184. package/src/routes/openapi-auto.ts +0 -239
  185. package/src/routes/public/agent-access.ts +0 -23
  186. package/src/routes/public/agent-config.ts +0 -675
  187. package/src/routes/public/agent-history.ts +0 -422
  188. package/src/routes/public/agent-schedules.ts +0 -296
  189. package/src/routes/public/agent.ts +0 -1086
  190. package/src/routes/public/agents.ts +0 -373
  191. package/src/routes/public/channels.ts +0 -191
  192. package/src/routes/public/cli-auth.ts +0 -896
  193. package/src/routes/public/connections.ts +0 -574
  194. package/src/routes/public/landing.ts +0 -16
  195. package/src/routes/public/oauth.ts +0 -147
  196. package/src/routes/public/settings-auth.ts +0 -104
  197. package/src/routes/public/slack.ts +0 -173
  198. package/src/routes/shared/agent-ownership.ts +0 -101
  199. package/src/routes/shared/token-verifier.ts +0 -34
  200. package/src/services/bedrock-model-catalog.ts +0 -217
  201. package/src/services/bedrock-openai-service.ts +0 -658
  202. package/src/services/core-services.ts +0 -1072
  203. package/src/services/image-generation-service.ts +0 -257
  204. package/src/services/instruction-service.ts +0 -318
  205. package/src/services/mcp-registry.ts +0 -94
  206. package/src/services/platform-helpers.ts +0 -287
  207. package/src/services/session-manager.ts +0 -262
  208. package/src/services/settings-resolver.ts +0 -74
  209. package/src/services/system-config-resolver.ts +0 -89
  210. package/src/services/system-skills-service.ts +0 -229
  211. package/src/services/transcription-service.ts +0 -684
  212. package/src/session.ts +0 -110
  213. package/src/spaces/index.ts +0 -1
  214. package/src/spaces/space-resolver.ts +0 -17
  215. package/src/stores/in-memory-agent-store.ts +0 -403
  216. package/src/stores/redis-agent-store.ts +0 -279
  217. package/src/utils/public-url.ts +0 -44
  218. package/src/utils/rate-limiter.ts +0 -94
  219. package/tsconfig.json +0 -33
@@ -35,8 +35,9 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.registerInteractionBridge = registerInteractionBridge;
37
37
  const core_1 = require("@lobu/core");
38
- const config_request_store_1 = require("../interactions/config-request-store");
39
38
  const logger = (0, core_1.createLogger)("chat-interaction-bridge");
39
+ const PENDING_TTL = 5 * 60000; // 5 minutes (in-memory cleanup)
40
+ const PENDING_TOOL_KEY_PREFIX = "pending-tool:";
40
41
  async function postWithFallback(thread, primary, connectionId, context) {
41
42
  try {
42
43
  await thread.post(primary);
@@ -53,7 +54,7 @@ async function postWithFallback(thread, primary, connectionId, context) {
53
54
  }
54
55
  /**
55
56
  * Send a message with inline keyboard buttons via the Telegram Bot API.
56
- * Used for interactive elements (grant/package requests, questions) since
57
+ * Used for interactive elements (tool approvals, questions) since
57
58
  * the Chat SDK does not support Telegram's inline keyboard natively.
58
59
  */
59
60
  async function sendTelegramInlineKeyboard(botToken, chatId, text, buttons) {
@@ -73,16 +74,22 @@ async function sendTelegramInlineKeyboard(botToken, chatId, text, buttons) {
73
74
  return false;
74
75
  }
75
76
  }
76
- const GRANT_REQUEST_TTL = 5 * 60000; // 5 minutes
77
- const GRANT_REQUEST_REDIS_TTL = 300; // 5 minutes in seconds
78
- const GRANT_REQUEST_KEY_PREFIX = "pending-grant:";
79
- async function storePendingGrant(redis, grantRequestId, agentId, domains) {
80
- const key = `${GRANT_REQUEST_KEY_PREFIX}${grantRequestId}`;
81
- await redis.set(key, JSON.stringify({ agentId, domains }), "EX", GRANT_REQUEST_REDIS_TTL);
77
+ function resolveGrantExpiresAt(duration) {
78
+ switch (duration) {
79
+ case "once":
80
+ return Date.now() + 60000;
81
+ case "1h":
82
+ return Date.now() + 3600000;
83
+ case "24h":
84
+ return Date.now() + 86400000;
85
+ case "always":
86
+ return null;
87
+ default:
88
+ return null;
89
+ }
82
90
  }
83
- async function getPendingGrant(redis, grantRequestId) {
84
- const key = `${GRANT_REQUEST_KEY_PREFIX}${grantRequestId}`;
85
- const raw = await redis.get(key);
91
+ async function getPendingToolInvocation(redis, requestId) {
92
+ const raw = await redis.get(`${PENDING_TOOL_KEY_PREFIX}${requestId}`);
86
93
  if (!raw)
87
94
  return null;
88
95
  try {
@@ -92,10 +99,15 @@ async function getPendingGrant(redis, grantRequestId) {
92
99
  return null;
93
100
  }
94
101
  }
95
- async function deletePendingGrant(redis, grantRequestId) {
96
- await redis.del(`${GRANT_REQUEST_KEY_PREFIX}${grantRequestId}`);
102
+ function formatToolArgs(args) {
103
+ return Object.entries(args)
104
+ .map(([k, v]) => {
105
+ const val = typeof v === "string" ? v : JSON.stringify(v);
106
+ return ` ${k}: ${val}`;
107
+ })
108
+ .join("\n");
97
109
  }
98
- function registerInteractionBridge(interactionService, manager, connection, chat, grantStore, agentSettingsStore) {
110
+ function registerInteractionBridge(interactionService, manager, connection, chat, grantStore, executeToolDirect) {
99
111
  const { id: connectionId, platform } = connection;
100
112
  // Per-connection state (avoids cross-contamination between connections)
101
113
  const handledEvents = new Set();
@@ -123,7 +135,7 @@ function registerInteractionBridge(interactionService, manager, connection, chat
123
135
  const optionTimer = setTimeout(() => {
124
136
  pendingQuestionOptions.delete(event.id);
125
137
  activeTimers.delete(optionTimer);
126
- }, GRANT_REQUEST_TTL);
138
+ }, PENDING_TTL);
127
139
  activeTimers.add(optionTimer);
128
140
  const buttons = event.options.map((option, i) => [
129
141
  {
@@ -157,92 +169,36 @@ function registerInteractionBridge(interactionService, manager, connection, chat
157
169
  }
158
170
  };
159
171
  const redis = manager.getServices().getQueue().getRedisClient();
160
- const onGrantRequested = async (event) => {
172
+ const onToolApprovalNeeded = async (event) => {
161
173
  try {
162
174
  if (!shouldHandle(event, platform, connectionId, manager))
163
175
  return;
164
176
  if (handledEvents.has(event.id))
165
177
  return;
166
178
  markHandled(event.id);
167
- // Store pending grant in Redis so it survives pod restarts / multi-replica
168
- try {
169
- await storePendingGrant(redis, event.id, event.agentId, event.domains);
170
- }
171
- catch (error) {
172
- logger.error({ grantRequestId: event.id, error: String(error) }, "Failed to store pending grant in Redis");
173
- }
174
- const domainList = event.domains.join(", ");
175
- const text = `Access Request\nDomains: ${domainList}\nReason: ${event.reason}`;
179
+ const argsText = formatToolArgs(event.args);
180
+ const text = `Tool Approval\n${event.mcpId} → ${event.toolName}\n${argsText}`;
181
+ const tid = event.id;
176
182
  if (platform === "telegram") {
177
183
  const botToken = manager.getConnectionConfigSecret(connectionId, "botToken");
178
184
  if (botToken) {
179
185
  const sent = await sendTelegramInlineKeyboard(botToken, event.channelId, text, [
180
186
  [
181
- { text: "Approve", callback_data: `grant:${event.id}:approve` },
182
- { text: "Deny", callback_data: `grant:${event.id}:deny` },
187
+ { text: "Allow once", callback_data: `tool:${tid}:once` },
188
+ { text: "Allow 1h", callback_data: `tool:${tid}:1h` },
183
189
  ],
184
- ]);
185
- if (sent)
186
- return;
187
- logger.warn({ connectionId }, "Telegram inline keyboard failed for grant, falling back");
188
- }
189
- }
190
- const thread = await resolveThread(manager, connectionId, event.channelId, event.conversationId);
191
- if (!thread)
192
- return;
193
- const { Card, CardText, Actions, Button } = await Promise.resolve().then(() => __importStar(require("chat")));
194
- const card = Card({
195
- children: [
196
- CardText(`*Access Request*\nDomains: ${domainList}\nReason: ${event.reason}`),
197
- Actions([
198
- Button({
199
- id: `grant:${event.id}:approve`,
200
- label: "Approve",
201
- style: "primary",
202
- value: "approve",
203
- }),
204
- Button({
205
- id: `grant:${event.id}:deny`,
206
- label: "Deny",
207
- style: "danger",
208
- value: "deny",
209
- }),
210
- ]),
211
- ],
212
- });
213
- await postWithFallback(thread, { card, fallbackText: text }, connectionId, "grant interaction with buttons");
214
- }
215
- catch (error) {
216
- logger.error({ connectionId, error: String(error) }, "Unhandled error in grant:requested handler");
217
- }
218
- };
219
- const onPackageRequested = async (event) => {
220
- try {
221
- if (!shouldHandle(event, platform, connectionId, manager))
222
- return;
223
- if (handledEvents.has(event.id))
224
- return;
225
- markHandled(event.id);
226
- const pkgList = event.packages.join(", ");
227
- const text = `Package Install Request\nPackages: ${pkgList}\nReason: ${event.reason}`;
228
- if (platform === "telegram") {
229
- const botToken = manager.getConnectionConfigSecret(connectionId, "botToken");
230
- if (botToken) {
231
- const sent = await sendTelegramInlineKeyboard(botToken, event.channelId, text, [
232
190
  [
191
+ { text: "Allow 24h", callback_data: `tool:${tid}:24h` },
233
192
  {
234
- text: "Approve",
235
- callback_data: `package:${event.id}:approve`,
236
- },
237
- {
238
- text: "Deny",
239
- callback_data: `package:${event.id}:deny`,
193
+ text: "Allow always",
194
+ callback_data: `tool:${tid}:always`,
240
195
  },
241
196
  ],
197
+ [{ text: "Deny", callback_data: `tool:${tid}:deny` }],
242
198
  ]);
243
199
  if (sent)
244
200
  return;
245
- logger.warn({ connectionId }, "Telegram inline keyboard failed for package request, falling back");
201
+ logger.warn({ connectionId }, "Telegram inline keyboard failed for tool approval, falling back");
246
202
  }
247
203
  }
248
204
  const thread = await resolveThread(manager, connectionId, event.channelId, event.conversationId);
@@ -251,72 +207,33 @@ function registerInteractionBridge(interactionService, manager, connection, chat
251
207
  const { Card, CardText, Actions, Button } = await Promise.resolve().then(() => __importStar(require("chat")));
252
208
  const card = Card({
253
209
  children: [
254
- CardText(`*Package Install Request*\nPackages: ${pkgList}\nReason: ${event.reason}`),
210
+ CardText(`*Tool Approval*\n${event.mcpId} ${event.toolName}\n${argsText}`),
255
211
  Actions([
256
212
  Button({
257
- id: `package:${event.id}:approve`,
258
- label: "Approve",
213
+ id: `tool:${tid}:once`,
214
+ label: "Allow once",
215
+ value: "once",
216
+ }),
217
+ Button({
218
+ id: `tool:${tid}:1h`,
219
+ label: "Allow 1h",
259
220
  style: "primary",
260
- value: "approve",
221
+ value: "1h",
261
222
  }),
262
223
  Button({
263
- id: `package:${event.id}:deny`,
264
- label: "Deny",
265
- style: "danger",
266
- value: "deny",
224
+ id: `tool:${tid}:24h`,
225
+ label: "Allow 24h",
226
+ style: "primary",
227
+ value: "24h",
267
228
  }),
268
- ]),
269
- ],
270
- });
271
- await postWithFallback(thread, { card, fallbackText: text }, connectionId, "package request interaction with buttons");
272
- }
273
- catch (error) {
274
- logger.error({ connectionId, error: String(error) }, "Unhandled error in package:requested handler");
275
- }
276
- };
277
- const onConfigRequested = async (event) => {
278
- try {
279
- if (!shouldHandle(event, platform, connectionId, manager))
280
- return;
281
- if (handledEvents.has(event.id))
282
- return;
283
- markHandled(event.id);
284
- if (platform === "telegram") {
285
- const botToken = manager.getConnectionConfigSecret(connectionId, "botToken");
286
- if (botToken) {
287
- const sent = await sendTelegramInlineKeyboard(botToken, event.channelId, event.text, [
288
- [
289
- {
290
- text: "Approve",
291
- callback_data: `config:${event.id}:approve`,
292
- },
293
- {
294
- text: "Deny",
295
- callback_data: `config:${event.id}:deny`,
296
- },
297
- ],
298
- ]);
299
- if (sent)
300
- return;
301
- logger.warn({ connectionId }, "Telegram inline keyboard failed for config request, falling back");
302
- }
303
- }
304
- const thread = await resolveThread(manager, connectionId, event.channelId, event.conversationId);
305
- if (!thread)
306
- return;
307
- const { Card, CardText, Actions, Button } = await Promise.resolve().then(() => __importStar(require("chat")));
308
- const card = Card({
309
- children: [
310
- CardText(event.text),
311
- Actions([
312
229
  Button({
313
- id: `config:${event.id}:approve`,
314
- label: "Approve",
230
+ id: `tool:${tid}:always`,
231
+ label: "Allow always",
315
232
  style: "primary",
316
- value: "approve",
233
+ value: "always",
317
234
  }),
318
235
  Button({
319
- id: `config:${event.id}:deny`,
236
+ id: `tool:${tid}:deny`,
320
237
  label: "Deny",
321
238
  style: "danger",
322
239
  value: "deny",
@@ -324,10 +241,10 @@ function registerInteractionBridge(interactionService, manager, connection, chat
324
241
  ]),
325
242
  ],
326
243
  });
327
- await postWithFallback(thread, { card, fallbackText: event.text }, connectionId, "config request interaction with buttons");
244
+ await postWithFallback(thread, { card, fallbackText: text }, connectionId, "tool approval interaction");
328
245
  }
329
246
  catch (error) {
330
- logger.error({ connectionId, error: String(error) }, "Unhandled error in config:requested handler");
247
+ logger.error({ connectionId, error: String(error) }, "Unhandled error in tool:approval-needed handler");
331
248
  }
332
249
  };
333
250
  const onLinkButtonCreated = async (event) => {
@@ -377,18 +294,14 @@ function registerInteractionBridge(interactionService, manager, connection, chat
377
294
  }
378
295
  };
379
296
  interactionService.on("question:created", onQuestionCreated);
380
- interactionService.on("grant:requested", onGrantRequested);
381
- interactionService.on("package:requested", onPackageRequested);
382
- interactionService.on("config:requested", onConfigRequested);
297
+ interactionService.on("tool:approval-needed", onToolApprovalNeeded);
383
298
  interactionService.on("link-button:created", onLinkButtonCreated);
384
299
  interactionService.on("status-message:created", onStatusMessageCreated);
385
- registerActionHandlers(chat, connection, redis, grantStore, agentSettingsStore, pendingQuestionOptions);
300
+ registerActionHandlers(chat, connection, redis, grantStore, pendingQuestionOptions, executeToolDirect);
386
301
  logger.info({ connectionId, platform }, "Interaction bridge registered");
387
302
  return () => {
388
303
  interactionService.off("question:created", onQuestionCreated);
389
- interactionService.off("grant:requested", onGrantRequested);
390
- interactionService.off("package:requested", onPackageRequested);
391
- interactionService.off("config:requested", onConfigRequested);
304
+ interactionService.off("tool:approval-needed", onToolApprovalNeeded);
392
305
  interactionService.off("link-button:created", onLinkButtonCreated);
393
306
  interactionService.off("status-message:created", onStatusMessageCreated);
394
307
  for (const timer of activeTimers) {
@@ -400,116 +313,105 @@ function registerInteractionBridge(interactionService, manager, connection, chat
400
313
  logger.info({ connectionId, platform }, "Interaction bridge unregistered");
401
314
  };
402
315
  }
403
- function registerActionHandlers(chat, connection, redis, grantStore, agentSettingsStore, pendingQuestionOptions) {
316
+ function registerActionHandlers(chat, connection, redis, grantStore, pendingQuestionOptions, executeToolDirect) {
404
317
  chat.onAction(async (event) => {
405
- var _a, _b, _c;
318
+ var _a, _b, _c, _d;
406
319
  const actionId = (_a = event.actionId) !== null && _a !== void 0 ? _a : "";
407
320
  const value = (_b = event.value) !== null && _b !== void 0 ? _b : "";
408
321
  const thread = event.thread;
409
322
  if (!thread || !actionId)
410
323
  return;
411
- // Handle grant approval/denialpersist to GrantStore before echoing
412
- if (actionId.startsWith("grant:")) {
324
+ // Handle tool approval — store grant, execute tool, post result
325
+ if (actionId.startsWith("tool:")) {
413
326
  const parts = actionId.split(":");
414
- const grantRequestId = parts[1];
415
- const decision = parts[2]; // "approve" or "deny"
416
- if (grantRequestId && grantStore) {
417
- try {
418
- const pending = await getPendingGrant(redis, grantRequestId);
327
+ const requestId = parts[1];
328
+ const decision = (_c = parts[2]) !== null && _c !== void 0 ? _c : "deny";
329
+ if (!requestId)
330
+ return;
331
+ if (decision === "deny") {
332
+ if (grantStore) {
333
+ const pending = await getPendingToolInvocation(redis, requestId).catch(() => null);
419
334
  if (pending) {
420
- const approved = decision === "approve";
421
- try {
422
- for (const domain of pending.domains) {
423
- await grantStore.grant(pending.agentId, domain, null, !approved);
424
- }
425
- logger.info({
426
- grantRequestId,
427
- agentId: pending.agentId,
428
- domains: pending.domains,
429
- approved,
430
- }, "Grant request resolved via button");
431
- }
432
- catch (error) {
433
- logger.error({ grantRequestId, error: String(error) }, "Failed to persist grant decision");
434
- }
435
- await deletePendingGrant(redis, grantRequestId).catch(
436
- /* best effort */ () => undefined);
437
- }
438
- else {
439
- logger.warn({ grantRequestId }, "No pending grant found in Redis — may have expired");
335
+ const pattern = `/mcp/${pending.mcpId}/tools/${pending.toolName}`;
336
+ await grantStore
337
+ .grant(pending.agentId, pattern, null, true)
338
+ .catch(() => undefined);
440
339
  }
441
340
  }
442
- catch (error) {
443
- logger.error({ grantRequestId, error: String(error) }, "Redis error looking up pending grant");
341
+ await redis
342
+ .del(`${PENDING_TOOL_KEY_PREFIX}${requestId}`)
343
+ .catch(() => undefined);
344
+ try {
345
+ await thread.post("Tool call denied. Let me know if you'd like me to try a different approach.");
444
346
  }
347
+ catch (_e) {
348
+ // best effort
349
+ }
350
+ return;
445
351
  }
446
- // Echo human-readable decision back to thread so the worker receives it
447
- const responseText = decision === "approve" ? "approve" : "deny";
448
- try {
449
- await thread.post(responseText);
450
- }
451
- catch (error) {
452
- logger.debug({ connectionId: connection.id, error: String(error) }, "Failed to post grant action response");
453
- }
454
- return;
455
- }
456
- if (actionId.startsWith("config:")) {
457
- const parts = actionId.split(":");
458
- const configRequestId = parts[1];
459
- const decision = parts[2];
460
- if (configRequestId && decision === "approve" && !agentSettingsStore) {
352
+ // Approved store grant, execute, post result
353
+ const pending = await getPendingToolInvocation(redis, requestId).catch(() => null);
354
+ if (!pending) {
355
+ logger.warn({ requestId }, "No pending tool invocation found — may have expired");
461
356
  try {
462
- await thread.post("failed to apply requested configuration change");
357
+ await thread.post("Tool approval expired. Please try again.");
463
358
  }
464
- catch (_d) {
359
+ catch (_f) {
465
360
  // best effort
466
361
  }
467
362
  return;
468
363
  }
469
- if (configRequestId && decision === "approve" && agentSettingsStore) {
364
+ const pattern = `/mcp/${pending.mcpId}/tools/${pending.toolName}`;
365
+ const expiresAt = resolveGrantExpiresAt(decision);
366
+ if (grantStore) {
470
367
  try {
471
- const pending = await (0, config_request_store_1.getPendingConfigRequest)(redis, configRequestId);
472
- if (pending) {
473
- await (0, config_request_store_1.applyPendingConfigRequest)(agentSettingsStore, grantStore, pending);
474
- await (0, config_request_store_1.deletePendingConfigRequest)(redis, configRequestId).catch(() => undefined);
475
- logger.info({
476
- configRequestId,
477
- agentId: pending.agentId,
478
- }, "Config request resolved via button");
479
- }
368
+ await grantStore.grant(pending.agentId, pattern, expiresAt);
369
+ logger.info({
370
+ requestId,
371
+ agentId: pending.agentId,
372
+ pattern,
373
+ decision,
374
+ expiresAt,
375
+ }, "Grant stored via tool approval");
376
+ }
377
+ catch (error) {
378
+ logger.error({ requestId, error: String(error) }, "Failed to store grant");
379
+ }
380
+ }
381
+ // Execute the pending tool call
382
+ if (executeToolDirect) {
383
+ try {
384
+ const result = await executeToolDirect(pending.agentId, pending.userId, pending.mcpId, pending.toolName, pending.args);
385
+ const resultText = result.content.map((c) => c.text).join("\n");
386
+ await thread.post(result.isError ? `Tool error: ${resultText}` : resultText);
387
+ logger.info({
388
+ requestId,
389
+ mcpId: pending.mcpId,
390
+ toolName: pending.toolName,
391
+ isError: result.isError,
392
+ }, "Tool executed after approval");
480
393
  }
481
394
  catch (error) {
482
- logger.error({ configRequestId, error: String(error) }, "Failed to apply config request");
395
+ logger.error({ requestId, error: String(error) }, "Failed to execute tool after approval");
483
396
  try {
484
- await thread.post("failed to apply requested configuration change");
397
+ await thread.post(`Failed to execute tool: ${String(error)}`);
485
398
  }
486
- catch (_e) {
399
+ catch (_g) {
487
400
  // best effort
488
401
  }
489
- return;
490
402
  }
491
403
  }
492
- else if (configRequestId) {
493
- await (0, config_request_store_1.deletePendingConfigRequest)(redis, configRequestId).catch(() => undefined);
494
- }
495
- try {
496
- await thread.post(decision === "approve" ? "approve" : "deny");
497
- }
498
- catch (error) {
499
- logger.debug({ connectionId: connection.id, error: String(error) }, "Failed to post config action response");
500
- }
501
- return;
502
- }
503
- // Handle package install approval/denial
504
- if (actionId.startsWith("package:")) {
505
- const decision = actionId.split(":")[2] || value || "";
506
- const responseText = decision || "";
507
- try {
508
- await thread.post(responseText);
509
- }
510
- catch (error) {
511
- logger.debug({ connectionId: connection.id, error: String(error) }, "Failed to post package action response");
404
+ else {
405
+ try {
406
+ await thread.post("approve");
407
+ }
408
+ catch (_h) {
409
+ // best effort
410
+ }
512
411
  }
412
+ await redis
413
+ .del(`${PENDING_TOOL_KEY_PREFIX}${requestId}`)
414
+ .catch(() => undefined);
513
415
  return;
514
416
  }
515
417
  // Handle question responses
@@ -519,7 +421,7 @@ function registerActionHandlers(chat, connection, redis, grantStore, agentSettin
519
421
  const responseText = value ||
520
422
  (questionId &&
521
423
  Number.isFinite(optionIdx) &&
522
- ((_c = pendingQuestionOptions.get(questionId)) === null || _c === void 0 ? void 0 : _c[optionIdx])
424
+ ((_d = pendingQuestionOptions.get(questionId)) === null || _d === void 0 ? void 0 : _d[optionIdx])
523
425
  ? pendingQuestionOptions.get(questionId)[optionIdx]
524
426
  : optionIndex || "");
525
427
  if (questionId) {
@@ -1 +1 @@
1
- {"version":3,"file":"interaction-bridge.js","sourceRoot":"","sources":["../../src/connections/interaction-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interaction-bridge.js","sourceRoot":"","sources":["../../src/connections/interaction-bridge.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"message-handler-bridge.d.ts","sourceRoot":"","sources":["../../src/connections/message-handler-bridge.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOhD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAclD,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAC/B,MAAM,EAAE,MAAM,GACb,OAAO,CAKT;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,kBAAkB,EAC9B,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,mBAAmB,EAC5B,iBAAiB,CAAC,EAAE,iBAAiB,GACpC,IAAI,CAmBN;AAkUD;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAaf"}
1
+ {"version":3,"file":"message-handler-bridge.d.ts","sourceRoot":"","sources":["../../src/connections/message-handler-bridge.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOhD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAclD,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAC/B,MAAM,EAAE,MAAM,GACb,OAAO,CAKT;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,kBAAkB,EAC9B,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,mBAAmB,EAC5B,iBAAiB,CAAC,EAAE,iBAAiB,GACpC,IAAI,CAmBN;AAsVD;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAaf"}