@koda-sl/baker-bridge 0.116.0 → 0.117.0-dev.2a54c32e7

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 (159) hide show
  1. package/README.md +24 -2
  2. package/dist/broker/baker-api.d.ts +23 -0
  3. package/dist/broker/baker-api.d.ts.map +1 -0
  4. package/dist/broker/baker-api.js +55 -0
  5. package/dist/broker/baker-api.js.map +1 -0
  6. package/dist/broker/broker-client.d.ts +10 -0
  7. package/dist/broker/broker-client.d.ts.map +1 -0
  8. package/dist/broker/broker-client.js +60 -0
  9. package/dist/broker/broker-client.js.map +1 -0
  10. package/dist/broker/ca.d.ts +38 -0
  11. package/dist/broker/ca.d.ts.map +1 -0
  12. package/dist/broker/ca.js +80 -0
  13. package/dist/broker/ca.js.map +1 -0
  14. package/dist/broker/ca.test.d.ts +2 -0
  15. package/dist/broker/ca.test.d.ts.map +1 -0
  16. package/dist/broker/ca.test.js +58 -0
  17. package/dist/broker/ca.test.js.map +1 -0
  18. package/dist/broker/credential-cache.d.ts +24 -0
  19. package/dist/broker/credential-cache.d.ts.map +1 -0
  20. package/dist/broker/credential-cache.js +69 -0
  21. package/dist/broker/credential-cache.js.map +1 -0
  22. package/dist/broker/credential-cache.test.d.ts +2 -0
  23. package/dist/broker/credential-cache.test.d.ts.map +1 -0
  24. package/dist/broker/credential-cache.test.js +120 -0
  25. package/dist/broker/credential-cache.test.js.map +1 -0
  26. package/dist/broker/credential-text.d.ts +45 -0
  27. package/dist/broker/credential-text.d.ts.map +1 -0
  28. package/dist/broker/credential-text.js +103 -0
  29. package/dist/broker/credential-text.js.map +1 -0
  30. package/dist/broker/credential-text.test.d.ts +2 -0
  31. package/dist/broker/credential-text.test.d.ts.map +1 -0
  32. package/dist/broker/credential-text.test.js +54 -0
  33. package/dist/broker/credential-text.test.js.map +1 -0
  34. package/dist/broker/env.d.ts +19 -0
  35. package/dist/broker/env.d.ts.map +1 -0
  36. package/dist/broker/env.js +16 -0
  37. package/dist/broker/env.js.map +1 -0
  38. package/dist/broker/main.d.ts +3 -0
  39. package/dist/broker/main.d.ts.map +1 -0
  40. package/dist/broker/main.js +51 -0
  41. package/dist/broker/main.js.map +1 -0
  42. package/dist/broker/proxy.d.ts +24 -0
  43. package/dist/broker/proxy.d.ts.map +1 -0
  44. package/dist/broker/proxy.integration.test.d.ts +2 -0
  45. package/dist/broker/proxy.integration.test.d.ts.map +1 -0
  46. package/dist/broker/proxy.integration.test.js +201 -0
  47. package/dist/broker/proxy.integration.test.js.map +1 -0
  48. package/dist/broker/proxy.js +147 -0
  49. package/dist/broker/proxy.js.map +1 -0
  50. package/dist/broker/rewrite.d.ts +44 -0
  51. package/dist/broker/rewrite.d.ts.map +1 -0
  52. package/dist/broker/rewrite.js +291 -0
  53. package/dist/broker/rewrite.js.map +1 -0
  54. package/dist/broker/rewrite.test.d.ts +2 -0
  55. package/dist/broker/rewrite.test.d.ts.map +1 -0
  56. package/dist/broker/rewrite.test.js +171 -0
  57. package/dist/broker/rewrite.test.js.map +1 -0
  58. package/dist/broker/socket-service.d.ts +18 -0
  59. package/dist/broker/socket-service.d.ts.map +1 -0
  60. package/dist/broker/socket-service.js +103 -0
  61. package/dist/broker/socket-service.js.map +1 -0
  62. package/dist/broker/socket-service.test.d.ts +2 -0
  63. package/dist/broker/socket-service.test.d.ts.map +1 -0
  64. package/dist/broker/socket-service.test.js +73 -0
  65. package/dist/broker/socket-service.test.js.map +1 -0
  66. package/dist/broker/token-bucket.d.ts +9 -0
  67. package/dist/broker/token-bucket.d.ts.map +1 -0
  68. package/dist/broker/token-bucket.js +18 -0
  69. package/dist/broker/token-bucket.js.map +1 -0
  70. package/dist/broker/usage-reporter.d.ts +18 -0
  71. package/dist/broker/usage-reporter.d.ts.map +1 -0
  72. package/dist/broker/usage-reporter.js +31 -0
  73. package/dist/broker/usage-reporter.js.map +1 -0
  74. package/dist/broker/usage-reporter.test.d.ts +2 -0
  75. package/dist/broker/usage-reporter.test.d.ts.map +1 -0
  76. package/dist/broker/usage-reporter.test.js +20 -0
  77. package/dist/broker/usage-reporter.test.js.map +1 -0
  78. package/dist/hono/agent-session.d.ts +3 -0
  79. package/dist/hono/agent-session.d.ts.map +1 -1
  80. package/dist/hono/agent-session.js +15 -0
  81. package/dist/hono/agent-session.js.map +1 -1
  82. package/dist/hono/agent.d.ts +2 -0
  83. package/dist/hono/agent.d.ts.map +1 -1
  84. package/dist/hono/agent.js +11 -2
  85. package/dist/hono/agent.js.map +1 -1
  86. package/dist/hono/avatar-casting.d.ts +1 -0
  87. package/dist/hono/avatar-casting.d.ts.map +1 -1
  88. package/dist/hono/avatar-casting.js +18 -4
  89. package/dist/hono/avatar-casting.js.map +1 -1
  90. package/dist/hono/avatar-casting.test.js +5 -0
  91. package/dist/hono/avatar-casting.test.js.map +1 -1
  92. package/dist/hono/baker-ui-tool-schemas.test.js +30 -4
  93. package/dist/hono/baker-ui-tool-schemas.test.js.map +1 -1
  94. package/dist/hono/blocking-card.d.ts +12 -0
  95. package/dist/hono/blocking-card.d.ts.map +1 -0
  96. package/dist/hono/blocking-card.js +12 -0
  97. package/dist/hono/blocking-card.js.map +1 -0
  98. package/dist/hono/bridge-job.d.ts +42 -2
  99. package/dist/hono/bridge-job.d.ts.map +1 -1
  100. package/dist/hono/bridge-job.js +141 -7
  101. package/dist/hono/bridge-job.js.map +1 -1
  102. package/dist/hono/bridge-job.test.js +243 -1
  103. package/dist/hono/bridge-job.test.js.map +1 -1
  104. package/dist/hono/connection-input.d.ts +158 -12
  105. package/dist/hono/connection-input.d.ts.map +1 -1
  106. package/dist/hono/connection-input.js +155 -15
  107. package/dist/hono/connection-input.js.map +1 -1
  108. package/dist/hono/connection-input.test.js +89 -9
  109. package/dist/hono/connection-input.test.js.map +1 -1
  110. package/dist/hono/convex.d.ts +8 -0
  111. package/dist/hono/convex.d.ts.map +1 -1
  112. package/dist/hono/convex.js +8 -0
  113. package/dist/hono/convex.js.map +1 -1
  114. package/dist/hono/credential-input.d.ts +39 -0
  115. package/dist/hono/credential-input.d.ts.map +1 -0
  116. package/dist/hono/credential-input.js +78 -0
  117. package/dist/hono/credential-input.js.map +1 -0
  118. package/dist/hono/credential-scrub.d.ts +41 -0
  119. package/dist/hono/credential-scrub.d.ts.map +1 -0
  120. package/dist/hono/credential-scrub.js +152 -0
  121. package/dist/hono/credential-scrub.js.map +1 -0
  122. package/dist/hono/credential-scrub.test.d.ts +2 -0
  123. package/dist/hono/credential-scrub.test.d.ts.map +1 -0
  124. package/dist/hono/credential-scrub.test.js +105 -0
  125. package/dist/hono/credential-scrub.test.js.map +1 -0
  126. package/dist/hono/flow-input.d.ts.map +1 -1
  127. package/dist/hono/flow-input.js +3 -2
  128. package/dist/hono/flow-input.js.map +1 -1
  129. package/dist/hono/latitude-telemetry.d.ts.map +1 -1
  130. package/dist/hono/latitude-telemetry.js +8 -2
  131. package/dist/hono/latitude-telemetry.js.map +1 -1
  132. package/dist/hono/mcp-servers.d.ts +8 -1
  133. package/dist/hono/mcp-servers.d.ts.map +1 -1
  134. package/dist/hono/mcp-servers.js +17 -6
  135. package/dist/hono/mcp-servers.js.map +1 -1
  136. package/dist/hono/mcp-servers.test.js +25 -0
  137. package/dist/hono/mcp-servers.test.js.map +1 -1
  138. package/dist/hono/prompt-context.d.ts +8 -1
  139. package/dist/hono/prompt-context.d.ts.map +1 -1
  140. package/dist/hono/prompt-context.js +45 -7
  141. package/dist/hono/prompt-context.js.map +1 -1
  142. package/dist/hono/prompt-context.test.js +35 -1
  143. package/dist/hono/prompt-context.test.js.map +1 -1
  144. package/dist/hono/relay.d.ts +10 -1
  145. package/dist/hono/relay.d.ts.map +1 -1
  146. package/dist/hono/relay.js +6 -0
  147. package/dist/hono/relay.js.map +1 -1
  148. package/dist/hono/server.d.ts.map +1 -1
  149. package/dist/hono/server.js +22 -0
  150. package/dist/hono/server.js.map +1 -1
  151. package/dist/hono/tag-input.d.ts +123 -3
  152. package/dist/hono/tag-input.d.ts.map +1 -1
  153. package/dist/hono/tag-input.js +27 -17
  154. package/dist/hono/tag-input.js.map +1 -1
  155. package/dist/hono/tag-input.test.js +19 -1
  156. package/dist/hono/tag-input.test.js.map +1 -1
  157. package/dist/hono/types.d.ts +8 -0
  158. package/dist/hono/types.d.ts.map +1 -1
  159. package/package.json +5 -2
@@ -1 +1 @@
1
- {"version":3,"file":"avatar-casting.js","sourceRoot":"","sources":["../../src/hono/avatar-casting.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"avatar-casting.js","sourceRoot":"","sources":["../../src/hono/avatar-casting.ts"],"names":[],"mappings":"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"}
@@ -20,5 +20,10 @@ describe("avatarCastingToolText", () => {
20
20
  const text = avatarCastingToolText({ status: "cast", avatarHandle: "marcos", imageId: "img_1" });
21
21
  expect(text).toBe(JSON.stringify({ status: "cast", avatarHandle: "marcos", imageId: "img_1" }));
22
22
  });
23
+ it("tells the agent a face the countdown kept was nobody's choice", () => {
24
+ const text = avatarCastingToolText({ status: "cast", avatarHandle: "marcos", imageId: "img_1", chosenBy: "auto" });
25
+ expect(text).toContain("Nobody picked");
26
+ expect(text).toContain("never say the user chose");
27
+ });
23
28
  });
24
29
  //# sourceMappingURL=avatar-casting.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar-casting.test.js","sourceRoot":"","sources":["../../src/hono/avatar-casting.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,IAAI,GAAG,qBAAqB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEnF,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;QACpF,MAAM,IAAI,GAAG,qBAAqB,CAAC;YACjC,MAAM,EAAE,UAAU;YAClB,YAAY,EAAE,QAAQ;YACtB,MAAM,EAAE,2BAA2B;SACpC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,IAAI,GAAG,qBAAqB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QAEjG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"avatar-casting.test.js","sourceRoot":"","sources":["../../src/hono/avatar-casting.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,IAAI,GAAG,qBAAqB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEnF,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;QACpF,MAAM,IAAI,GAAG,qBAAqB,CAAC;YACjC,MAAM,EAAE,UAAU;YAClB,YAAY,EAAE,QAAQ;YACtB,MAAM,EAAE,2BAA2B;SACpC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,IAAI,GAAG,qBAAqB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QAEjG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,IAAI,GAAG,qBAAqB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QAEnH,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import { describe, expect, it } from "vitest";
2
2
  import { z } from "zod";
3
- import { avatarCastingToolShape } from "./avatar-casting.js";
4
- import { connectionInputToolShape } from "./connection-input.js";
5
- import { flowInputToolShape } from "./flow-input.js";
6
- import { tagInputToolShape } from "./tag-input.js";
3
+ import { avatarCastingToolShape, createAvatarCastingTool } from "./avatar-casting.js";
4
+ import { connectionInputToolShape, createConnectionInputTool } from "./connection-input.js";
5
+ import { createCredentialInputTool, credentialInputToolShape } from "./credential-input.js";
6
+ import { createFlowInputTool, flowInputToolShape } from "./flow-input.js";
7
+ import { createTagInputTool, tagInputToolShape } from "./tag-input.js";
7
8
  /**
8
9
  * The CLI converts each in-process MCP tool's input shape to JSON Schema and
9
10
  * refuses any tool whose schema carries `propertyNames` — and the refusal takes
@@ -26,6 +27,7 @@ const TOOL_SHAPES = {
26
27
  // Added a record after this test existed, and emptied the server again: every
27
28
  // tool `baker_ui` hosts is here, or the next one does the same.
28
29
  request_avatar_casting: avatarCastingToolShape,
30
+ request_credential: credentialInputToolShape,
29
31
  };
30
32
  describe("baker_ui tool input schemas", () => {
31
33
  it.each(Object.entries(TOOL_SHAPES))("%s converts without propertyNames", (_name, shape) => {
@@ -48,9 +50,33 @@ describe("baker_ui tool input schemas", () => {
48
50
  ],
49
51
  connections: [{ platform: "google-tag-manager", reason: "to read the container" }],
50
52
  avatarHandle: "marta",
53
+ label: "Shopify admin token",
54
+ reason: "so I can update the theme",
55
+ allowedHosts: ["acme.myshopify.com"],
51
56
  resolution: { results: [] },
52
57
  });
53
58
  expect(parsed.success).toBe(true);
54
59
  });
55
60
  });
61
+ /**
62
+ * A blocking card is answered by the bridge's `canUseTool`, which injects the
63
+ * user's resolution. The CLI skips that callback for any tool it auto-approves
64
+ * first (an allow rule, a permissive mode, the auto-mode classifier), and the
65
+ * tool then runs with no resolution — the card closes as "nothing connected"
66
+ * seconds after it opened. Measured on Opus 5.5: every `request_connection`
67
+ * resolved empty without the user touching it, while Haiku 4.5 reached the
68
+ * callback. `anthropic/requiresUserInteraction` sends a tool to the callback in
69
+ * every mode that prompts.
70
+ */
71
+ describe("baker_ui blocking tools", () => {
72
+ it.each([
73
+ ["request_tag_input", createTagInputTool],
74
+ ["request_flow_input", createFlowInputTool],
75
+ ["request_connection", createConnectionInputTool],
76
+ ["request_avatar_casting", createAvatarCastingTool],
77
+ ["request_credential", createCredentialInputTool],
78
+ ])("%s always reaches the bridge's permission callback", (_name, create) => {
79
+ expect(create()._meta).toMatchObject({ "anthropic/requiresUserInteraction": true });
80
+ });
81
+ });
56
82
  //# sourceMappingURL=baker-ui-tool-schemas.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"baker-ui-tool-schemas.test.js","sourceRoot":"","sources":["../../src/hono/baker-ui-tool-schemas.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,GAAG;IAClB,iBAAiB,EAAE,iBAAiB;IACpC,kBAAkB,EAAE,kBAAkB;IACtC,kBAAkB,EAAE,wBAAwB;IAC5C,8EAA8E;IAC9E,gEAAgE;IAChE,sBAAsB,EAAE,sBAAsB;CACtC,CAAC;AAEX,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC3C,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,mCAAmC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACzF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QAC9E,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,4DAA4D,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAClH,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC;YAC9B,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;YACpF,QAAQ,EAAE;gBACR;oBACE,MAAM,EAAE,YAAY;oBACpB,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,IAAI;oBACZ,YAAY,EAAE,IAAI;oBAClB,cAAc,EAAE,aAAa;oBAC7B,eAAe,EAAE,EAAE,MAAM,EAAE,qBAAqB,EAAE;iBACnD;aACF;YACD,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;YAClF,YAAY,EAAE,OAAO;YACrB,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;SAC5B,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"baker-ui-tool-schemas.test.js","sourceRoot":"","sources":["../../src/hono/baker-ui-tool-schemas.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Marks a `baker_ui` tool as a card the user answers. The bridge's `canUseTool`
3
+ * is what holds the call open and injects the user's resolution; the CLI skips
4
+ * that callback for a tool it auto-approves first (an allow rule, a permissive
5
+ * mode, the auto-mode classifier), and the tool then answers with no
6
+ * resolution — an empty card the user never saw. This annotation sends the call
7
+ * to the callback in every mode that prompts.
8
+ */
9
+ export declare function answeredInTheCard<T extends {
10
+ _meta?: Record<string, unknown>;
11
+ }>(definition: T): T;
12
+ //# sourceMappingURL=blocking-card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blocking-card.d.ts","sourceRoot":"","sources":["../../src/hono/blocking-card.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAEjG"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Marks a `baker_ui` tool as a card the user answers. The bridge's `canUseTool`
3
+ * is what holds the call open and injects the user's resolution; the CLI skips
4
+ * that callback for a tool it auto-approves first (an allow rule, a permissive
5
+ * mode, the auto-mode classifier), and the tool then answers with no
6
+ * resolution — an empty card the user never saw. This annotation sends the call
7
+ * to the callback in every mode that prompts.
8
+ */
9
+ export function answeredInTheCard(definition) {
10
+ return { ...definition, _meta: { ...definition._meta, "anthropic/requiresUserInteraction": true } };
11
+ }
12
+ //# sourceMappingURL=blocking-card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blocking-card.js","sourceRoot":"","sources":["../../src/hono/blocking-card.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAgD,UAAa;IAC5F,OAAO,EAAE,GAAG,UAAU,EAAE,KAAK,EAAE,EAAE,GAAG,UAAU,CAAC,KAAK,EAAE,mCAAmC,EAAE,IAAI,EAAE,EAAE,CAAC;AACtG,CAAC"}
@@ -1,10 +1,11 @@
1
- import type { ModelUsage, Options, SDKMessage, SlashCommand } from "@anthropic-ai/claude-agent-sdk";
1
+ import type { McpServerConfig, McpSetServersResult, ModelUsage, Options, SDKMessage, SlashCommand } from "@anthropic-ai/claude-agent-sdk";
2
2
  import { type ReviewDigestPost } from "../review/digest-bundle.ts";
3
3
  import { type AgentTask } from "./agent-tasks.ts";
4
4
  import type { AttachedTo } from "./attachments.ts";
5
5
  import { type AvatarCastingRequest, type AvatarCastingResult } from "./avatar-casting.ts";
6
6
  import { type ConnectionInputRequest, type ConnectionInputResolution } from "./connection-input.ts";
7
7
  import { type ContextUsage } from "./context-usage.ts";
8
+ import { type CredentialInputRequest, type CredentialInputResult } from "./credential-input.ts";
8
9
  import { type FlowInputRequestInput, type FlowInputResolution, readRawFlowTree } from "./flow-input.ts";
9
10
  import { type McpServersProvider } from "./mcp-servers.ts";
10
11
  import { type DirtySessionReason } from "./session-continuity.ts";
@@ -13,7 +14,7 @@ import { type UsageBaseline } from "./session-usage-baseline.ts";
13
14
  import { type TagChangeInput, type TagChangeResolution } from "./tag-input.ts";
14
15
  import { type TurnEventRecorder } from "./turn-events.ts";
15
16
  import { type TurnModelUsage } from "./turn-model-usage.ts";
16
- import type { ChatAttachment, CurrentReference, DispatchHistorySnapshot, DispatchSender, ReviewTurn } from "./types.ts";
17
+ import type { ChatAttachment, CurrentReference, DispatchHistorySnapshot, DispatchSender, PromptCredential, ReviewTurn } from "./types.ts";
17
18
  export type BridgeJob = {
18
19
  threadId: string;
19
20
  turnId: string;
@@ -23,6 +24,7 @@ export type BridgeJob = {
23
24
  continuedAttachments?: ChatAttachment[];
24
25
  history?: DispatchHistorySnapshot;
25
26
  currentReference?: CurrentReference;
27
+ credentials?: PromptCredential[];
26
28
  currentSender?: DispatchSender;
27
29
  planMode?: boolean;
28
30
  unattended?: boolean;
@@ -75,10 +77,20 @@ export type PendingFlowInput = {
75
77
  resolve: (resolution: FlowInputResolution) => void;
76
78
  reject: (reason: Error) => void;
77
79
  };
80
+ export type PendingCredentialInput = {
81
+ resolve: (result: CredentialInputResult) => void;
82
+ reject: (reason: Error) => void;
83
+ };
78
84
  export type PendingAvatarCasting = {
79
85
  resolve: (result: AvatarCastingResult) => void;
80
86
  reject: (reason: Error) => void;
81
87
  };
88
+ /** Whether a mid-turn reload loaded everything, the servers it loaded, and which the CLI could not start. */
89
+ type McpReload = {
90
+ ready: boolean;
91
+ loaded: string[];
92
+ failed: string[];
93
+ };
82
94
  export type PendingConnectionInput = {
83
95
  resolve: (resolution: ConnectionInputResolution) => void;
84
96
  reject: (reason: Error) => void;
@@ -101,7 +113,13 @@ export type BridgeJobControls = {
101
113
  pendingTagInputs: Map<string, PendingTagInput>;
102
114
  pendingFlowInputs: Map<string, PendingFlowInput>;
103
115
  pendingConnectionInputs: Map<string, PendingConnectionInput>;
116
+ pendingCredentialInputs: Map<string, PendingCredentialInput>;
104
117
  pendingAvatarCastings: Map<string, PendingAvatarCasting>;
118
+ /**
119
+ * Reload the running query's MCP servers from Convex, set by the query that is
120
+ * running. Resolves whether the new set is loaded.
121
+ */
122
+ reloadMcpServers?: () => Promise<McpReload>;
105
123
  /**
106
124
  * An avatar created in this turn whose face nobody has chosen yet.
107
125
  *
@@ -156,6 +174,10 @@ export type BridgeJobRelay = {
156
174
  connections: ConnectionInputRequest[];
157
175
  }): Promise<boolean>;
158
176
  connectionInputResolved(target: CallbackTarget): Promise<void>;
177
+ credentialInputRequest(target: CallbackTarget, request: {
178
+ toolUseId: string;
179
+ } & CredentialInputRequest): Promise<boolean>;
180
+ credentialInputResolved(target: CallbackTarget): Promise<void>;
159
181
  avatarCastingRequest(target: CallbackTarget, request: {
160
182
  toolUseId: string;
161
183
  } & AvatarCastingRequest): Promise<boolean>;
@@ -192,6 +214,12 @@ export type AgentSdkQuery = AsyncIterable<SDKMessage> & {
192
214
  totalCostUsd: number;
193
215
  modelUsage: Record<string, ModelUsage>;
194
216
  }>;
217
+ /**
218
+ * Replace the query's MCP servers mid-turn — how a server or app the user
219
+ * connects from the chat card becomes callable in the same turn. Absent on
220
+ * adapters that cannot (tests).
221
+ */
222
+ setMcpServers?: (servers: Record<string, McpServerConfig>) => Promise<McpSetServersResult>;
195
223
  };
196
224
  type AgentSdkAdapter = {
197
225
  /** `reminder`, when present, rides as its own text block beside `prompt` in the one user message. */
@@ -352,6 +380,17 @@ export declare class BridgeJobExecutor {
352
380
  private withContinuedAttachments;
353
381
  private invalidResumeFallbackAttempt;
354
382
  private resolveMcpServers;
383
+ /**
384
+ * Load what the user just connected into the running query, so its tools
385
+ * answer in this turn instead of the next. Asks Convex for the whole set
386
+ * afresh (the same set the next turn starts from, so the tool list changes
387
+ * once, not twice) and hands it to the CLI with `baker_ui` kept — the SDK
388
+ * drops any in-process server missing from the call, and `baker_ui` is the
389
+ * server whose tool call is resolving right now. Never throws. A server the
390
+ * CLI could not start is named, because it will not start next message
391
+ * either; anything else that goes wrong here loads next message.
392
+ */
393
+ private reloadMcpServers;
355
394
  private reportMcpFailures;
356
395
  /**
357
396
  * The SDK's permission hook. Blocking prompts are routed to their dashboard
@@ -430,6 +469,7 @@ export declare class BridgeJobExecutor {
430
469
  */
431
470
  private flowNodeTargetRefusals;
432
471
  private handleConnectionInputRequest;
472
+ private handleCredentialInputRequest;
433
473
  private handlePlanReview;
434
474
  /**
435
475
  * Runs the casting the created avatar is owed, then lets the original call proceed.
@@ -1 +1 @@
1
- {"version":3,"file":"bridge-job.d.ts","sourceRoot":"","sources":["../../src/hono/bridge-job.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge-job.d.ts","sourceRoot":"","sources":["../../src/hono/bridge-job.ts"],"names":[],"mappings":"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"}
@@ -11,15 +11,17 @@ import { avatarAwaitingItsFace, avatarCreatedInAssistantMessage, avatarHandleFro
11
11
  import { accentContradictsUser } from "./avatar-accent.js";
12
12
  import { AVATAR_CASTING_TOOL_NAME, normalizeAvatarCastingToolInput, } from "./avatar-casting.js";
13
13
  import { asksForAvatarFace, FACE_QUESTION_MESSAGE } from "./avatar-face-question.js";
14
- import { CONNECTION_INPUT_TOOL_NAME, CONNECTION_PLATFORMS, normalizeConnectionInputToolInput, } from "./connection-input.js";
14
+ import { CONNECTION_INPUT_TOOL_NAME, CONNECTION_PLATFORMS, connectedButNotLoaded, normalizeConnectionInputToolInput, toolsConnected, } from "./connection-input.js";
15
15
  import { messageContextTokens, pickContextWindow, streamEventContextUsage, turnContextUsage, } from "./context-usage.js";
16
+ import { CREDENTIAL_INPUT_TOOL_NAME, normalizeCredentialInputToolInput, } from "./credential-input.js";
17
+ import { credentialScrubHooks } from "./credential-scrub.js";
16
18
  import { FLOW_INPUT_TOOL_NAME, nodeTargetRefusals, normalizeFlowInputToolInput, readRawFlowTree, sanitizeFlowRequests, } from "./flow-input.js";
17
19
  import { writesInventedLogo } from "./invented-logo.js";
18
20
  import { installedLatitudeHook, latitudeTelemetryFor } from "./latitude-telemetry.js";
19
21
  import { composioScopesToInvalidate, failedCustomServers, reportMcpInvalid, serversConnectedWithNoTools, } from "./mcp-servers.js";
20
22
  import { agentModelOverride, autoCompactWindowForModel, betasForModel, contextWindowForModel, } from "./model-capabilities.js";
21
23
  import { BEDROCK_SERVABLE_CAPABILITIES, buildAgentExtraBody, EXTRA_BODY_ENV, MODEL_CAPABILITIES_ENV, } from "./openrouter-session.js";
22
- import { currentReferenceReminder } from "./prompt-context.js";
24
+ import { credentialReminder, currentReferenceReminder } from "./prompt-context.js";
23
25
  import { bridgeRuntimeFiles } from "./runtime-files.js";
24
26
  import { applyCurrentSenderAttribution, buildCleanBoundary, buildRehydratedPrompt, compactionRetryAttempt, emptyInProgressSession, isContextOverflowError, isResumeSessionError, observeInProgressSession, prepareSessionAttempt, stallContinuationAttempt, } from "./session-continuity.js";
25
27
  import { readSessionSkills } from "./session-skills.js";
@@ -44,6 +46,35 @@ export function parsePlanDecision(value) {
44
46
  }
45
47
  return null;
46
48
  }
49
+ /**
50
+ * How long a mid-turn MCP reload may hold the card's answer. Connecting a
51
+ * handful of HTTP servers takes seconds; past this the tools arrive next
52
+ * message instead, and the turn goes on.
53
+ */
54
+ const MCP_RELOAD_TIMEOUT_MS = 30_000;
55
+ /** The card's resolution, with what the reload did: ready now, or which servers would not start. */
56
+ function withReload(resolution, reload) {
57
+ const missing = reload?.ready ? connectedButNotLoaded(resolution, reload.loaded) : [];
58
+ const failed = [...(reload?.failed ?? []), ...missing];
59
+ return {
60
+ ...resolution,
61
+ toolsReady: reload?.ready === true && missing.length === 0,
62
+ ...(failed.length > 0 ? { failedToLoad: failed } : {}),
63
+ };
64
+ }
65
+ /** The promise's value, or `undefined` once `ms` pass without one. */
66
+ async function settleWithin(promise, ms) {
67
+ let timer;
68
+ const timedOut = new Promise((resolve) => {
69
+ timer = setTimeout(() => resolve(undefined), ms);
70
+ });
71
+ try {
72
+ return await Promise.race([promise, timedOut]);
73
+ }
74
+ finally {
75
+ clearTimeout(timer);
76
+ }
77
+ }
47
78
  /**
48
79
  * The Agent SDK matches AskUserQuestion answers to their questions by the
49
80
  * question TEXT (see `AskUserQuestionInput.answers`), but the dashboard submits
@@ -191,6 +222,16 @@ export function reviewQueryOptions(job) {
191
222
  ? { outputFormat: { type: "json_schema", schema: job.review.outputSchema }, hooks: reviewOutputHooks() }
192
223
  : {};
193
224
  }
225
+ /**
226
+ * Every job's tool results pass through the credential scrub, appended after
227
+ * any other PostToolUse hook so its rewrite is the one the SDK keeps.
228
+ */
229
+ function withCredentialScrub(options) {
230
+ const scrub = credentialScrubHooks();
231
+ const hooks = { ...(options.hooks ?? {}) };
232
+ hooks.PostToolUse = [...(hooks.PostToolUse ?? []), ...(scrub.PostToolUse ?? [])];
233
+ return { ...options, hooks };
234
+ }
194
235
  /**
195
236
  * The review runs on Baker's own OpenRouter credential and its own read-only
196
237
  * key, both replacing whatever the Runtime was started with — the client never
@@ -260,6 +301,13 @@ function refuseMalformedCall(toolName, input, userText, priorUserText) {
260
301
  }
261
302
  return null;
262
303
  }
304
+ /**
305
+ * Whether this Runtime has Credentials: the backend sets `BAKER_CREDENTIALS=1`
306
+ * alongside the credential broker's proxy env. Read per turn, not at import.
307
+ */
308
+ function credentialsEnabled() {
309
+ return process.env.BAKER_CREDENTIALS === "1";
310
+ }
263
311
  /** Blocking prompts: every tool that would leave a card the backend parks on. */
264
312
  function deniedUnattendedPrompt(toolName) {
265
313
  return (toolName === "AskUserQuestion" ||
@@ -267,6 +315,7 @@ function deniedUnattendedPrompt(toolName) {
267
315
  toolName === TAG_INPUT_TOOL_NAME ||
268
316
  toolName === FLOW_INPUT_TOOL_NAME ||
269
317
  toolName === CONNECTION_INPUT_TOOL_NAME ||
318
+ toolName === CREDENTIAL_INPUT_TOOL_NAME ||
270
319
  toolName === AVATAR_CASTING_TOOL_NAME);
271
320
  }
272
321
  export class StreamStallError extends Error {
@@ -1058,7 +1107,11 @@ export class BridgeJobExecutor {
1058
1107
  const verbatim = verbatimSlashCommand(job.prompt) ??
1059
1108
  leadingSkillCommand(job.prompt, (await readSessionSkills(bridgeRuntimeFiles.projectRoot())) ?? []);
1060
1109
  let requestPrompt = verbatim ?? applyCurrentSenderAttribution(job.prompt, job.currentSender);
1061
- const reminder = verbatim === null ? currentReferenceReminder(job.currentReference) : undefined;
1110
+ const reminders = [
1111
+ verbatim === null ? currentReferenceReminder(job.currentReference) : undefined,
1112
+ credentialReminder(job.credentials ?? [], credentialsEnabled()),
1113
+ ].filter((text) => text !== undefined);
1114
+ const reminder = reminders.length > 0 ? reminders.join("\n\n") : undefined;
1062
1115
  if (job.attachments && job.attachments.length > 0) {
1063
1116
  requestPrompt += await this.prepareAttachments(job.attachments, "message");
1064
1117
  }
@@ -1315,6 +1368,39 @@ export class BridgeJobExecutor {
1315
1368
  return undefined;
1316
1369
  }
1317
1370
  }
1371
+ /**
1372
+ * Load what the user just connected into the running query, so its tools
1373
+ * answer in this turn instead of the next. Asks Convex for the whole set
1374
+ * afresh (the same set the next turn starts from, so the tool list changes
1375
+ * once, not twice) and hands it to the CLI with `baker_ui` kept — the SDK
1376
+ * drops any in-process server missing from the call, and `baker_ui` is the
1377
+ * server whose tool call is resolving right now. Never throws. A server the
1378
+ * CLI could not start is named, because it will not start next message
1379
+ * either; anything else that goes wrong here loads next message.
1380
+ */
1381
+ async reloadMcpServers(job, query) {
1382
+ const notReady = { ready: false, loaded: [], failed: [] };
1383
+ if (!this.mcpServersProvider || !query.setMcpServers) {
1384
+ return notReady;
1385
+ }
1386
+ try {
1387
+ const servers = await this.mcpServersProvider(job.threadId, job.currentSender?.userId, { fresh: true });
1388
+ if (!servers) {
1389
+ return notReady;
1390
+ }
1391
+ const result = await settleWithin(query.setMcpServers({ ...servers, baker_ui: createBakerUiServer({ credentials: credentialsEnabled() }) }), MCP_RELOAD_TIMEOUT_MS);
1392
+ const failed = Object.keys(result?.errors ?? {});
1393
+ if (failed.length > 0) {
1394
+ console.error(`[mcp] reload after a connection could not start ${failed.join(", ")}`);
1395
+ }
1396
+ const loaded = Object.keys(servers).filter((name) => !failed.includes(name));
1397
+ return { ready: result !== undefined && failed.length === 0, loaded, failed };
1398
+ }
1399
+ catch (error) {
1400
+ console.error(`[mcp] reload after a connection failed: ${error instanceof Error ? error.message : String(error)}`);
1401
+ return notReady;
1402
+ }
1403
+ }
1318
1404
  reportMcpFailures(job, msg) {
1319
1405
  for (const scope of composioScopesToInvalidate(msg)) {
1320
1406
  void reportMcpInvalid(job.threadId, { scope }, job.currentSender?.userId);
@@ -1405,6 +1491,15 @@ export class BridgeJobExecutor {
1405
1491
  if (toolName === CONNECTION_INPUT_TOOL_NAME) {
1406
1492
  return this.handleConnectionInputRequest(job, controls, input, opts.toolUseID, opts.signal);
1407
1493
  }
1494
+ if (toolName === CREDENTIAL_INPUT_TOOL_NAME) {
1495
+ if (!credentialsEnabled()) {
1496
+ return Promise.resolve({
1497
+ behavior: "deny",
1498
+ message: "Saved credentials are not available in this workspace. Ask the user to share what you need another way, and never ask them to paste a password or key into the chat.",
1499
+ });
1500
+ }
1501
+ return this.handleCredentialInputRequest(job, controls, input, opts.toolUseID, opts.signal);
1502
+ }
1408
1503
  if (toolName === AVATAR_CASTING_TOOL_NAME) {
1409
1504
  return this.handleAvatarCastingRequest(job, controls, input, opts.toolUseID, opts.signal);
1410
1505
  }
@@ -1475,7 +1570,7 @@ export class BridgeJobExecutor {
1475
1570
  settingSources: ["project"],
1476
1571
  // `baker_ui` hosts in-process interactive dashboard tools (secure tag
1477
1572
  // form). Always present; HTTP (Composio) servers merge alongside it.
1478
- mcpServers: { ...(mcpServers ?? {}), baker_ui: createBakerUiServer() },
1573
+ mcpServers: { ...(mcpServers ?? {}), baker_ui: createBakerUiServer({ credentials: credentialsEnabled() }) },
1479
1574
  // Only send the key when there is something in it: the SDK forwards
1480
1575
  // `settings` to the CLI whenever it is present, so an empty object still
1481
1576
  // becomes a `--settings {}` flag tier for the CLI to parse.
@@ -1488,7 +1583,7 @@ export class BridgeJobExecutor {
1488
1583
  // the workspace could not be read; omit rather than allowlist nothing.
1489
1584
  ...(skills ? { skills } : {}),
1490
1585
  disallowedTools: disallowedToolsFor(job),
1491
- ...reviewQueryOptions(job),
1586
+ ...withCredentialScrub(reviewQueryOptions(job)),
1492
1587
  ...(job.planMode ? { permissionMode: "plan" } : {}),
1493
1588
  canUseTool: (toolName, input, opts) => this.routeToolUse(job, controls, toolName, input, opts),
1494
1589
  // No `fallbackModel`, and no server-side refusal `fallbacks` in the extra
@@ -1534,6 +1629,7 @@ export class BridgeJobExecutor {
1534
1629
  ...attempt.resumeOptions,
1535
1630
  };
1536
1631
  const query = this.sdk.query({ prompt: attempt.prompt, reminder: attempt.reminder, options });
1632
+ controls.reloadMcpServers = () => this.reloadMcpServers(job, query);
1537
1633
  let queryClosed = false;
1538
1634
  const closeQuery = () => {
1539
1635
  if (queryClosed) {
@@ -1555,6 +1651,7 @@ export class BridgeJobExecutor {
1555
1651
  throw error;
1556
1652
  }
1557
1653
  finally {
1654
+ controls.reloadMcpServers = undefined;
1558
1655
  controls.abortSignal.removeEventListener("abort", closeQuery);
1559
1656
  // Release the held-open input if the turn-end policy never fired (the
1560
1657
  // stream ended on its own, or an error path closed the query). Idempotent.
@@ -1693,6 +1790,7 @@ export class BridgeJobExecutor {
1693
1790
  controls.pendingTagInputs.size > 0 ||
1694
1791
  controls.pendingFlowInputs.size > 0 ||
1695
1792
  controls.pendingConnectionInputs.size > 0 ||
1793
+ controls.pendingCredentialInputs.size > 0 ||
1696
1794
  controls.pendingAvatarCastings.size > 0,
1697
1795
  onStall: () => {
1698
1796
  console.error(`[BridgeJob] no stream data for ${this.stallTimeoutMs}ms while awaiting the model — closing query for retry (thread ${job.threadId})`);
@@ -2171,7 +2269,7 @@ export class BridgeJobExecutor {
2171
2269
  if (connections.length === 0) {
2172
2270
  return {
2173
2271
  behavior: "deny",
2174
- message: `request_connection requires \`connections: [...]\` with at least one entry { platform, reason }. Platform must be one of ${CONNECTION_PLATFORMS.join(", ")}. Retry with that shape.`,
2272
+ message: `request_connection requires \`connections: [...]\` with at least one entry: { platform, reason } where platform is one of ${CONNECTION_PLATFORMS.join(", ")}; { server: { name, url, auth?, keyHeader?, scope? }, reason } for a remote MCP server; or { app, reason } for a managed app from \`baker mcp catalog\`. Retry with that shape.`,
2175
2273
  };
2176
2274
  }
2177
2275
  const posted = await this.relay.connectionInputRequest(target, { toolUseId, connections });
@@ -2193,7 +2291,43 @@ export class BridgeJobExecutor {
2193
2291
  return { behavior: "deny", message: PROMPT_UNANSWERED_MESSAGE };
2194
2292
  }
2195
2293
  void this.relay.connectionInputResolved(target);
2196
- return { behavior: "allow", updatedInput: { connections, resolution: decision.value } };
2294
+ // Loaded before the tool answers, so the model's next request already
2295
+ // carries the new tools. Only when an app or server came through: a
2296
+ // platform adds no tool, and reloading for nothing rewrites the tool list.
2297
+ const resolution = toolsConnected(decision.value)
2298
+ ? withReload(decision.value, await controls.reloadMcpServers?.())
2299
+ : decision.value;
2300
+ return { behavior: "allow", updatedInput: { connections, resolution } };
2301
+ }
2302
+ async handleCredentialInputRequest(job, controls, input, toolUseId, signal) {
2303
+ const target = { threadId: job.threadId, turnId: job.turnId };
2304
+ const request = normalizeCredentialInputToolInput(input);
2305
+ if (!request) {
2306
+ return {
2307
+ behavior: "deny",
2308
+ message: "request_credential requires { label, reason, allowedHosts: [...] } (and optionally a lowercase `name`). Retry with that shape.",
2309
+ };
2310
+ }
2311
+ const posted = await this.relay.credentialInputRequest(target, { toolUseId, ...request });
2312
+ if (!posted) {
2313
+ console.error(`[request_credential] failed to post credential-input-request for ${toolUseId} — denying`);
2314
+ return {
2315
+ behavior: "deny",
2316
+ message: "The credential request could not be delivered to the dashboard — retry request_credential in a moment.",
2317
+ };
2318
+ }
2319
+ const decision = await this.awaitPromptDecision({
2320
+ label: "request_credential",
2321
+ signal,
2322
+ controls,
2323
+ pending: controls.pendingCredentialInputs,
2324
+ toolUseId,
2325
+ });
2326
+ if (decision.kind === "unanswered") {
2327
+ return { behavior: "deny", message: PROMPT_UNANSWERED_MESSAGE };
2328
+ }
2329
+ void this.relay.credentialInputResolved(target);
2330
+ return { behavior: "allow", updatedInput: { ...request, resolution: decision.value } };
2197
2331
  }
2198
2332
  async handlePlanReview(job, controls, input, toolUseId, signal) {
2199
2333
  const target = { threadId: job.threadId, turnId: job.turnId };