hyperbrane 0.1.2 → 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.
Files changed (300) hide show
  1. package/README.md +105 -23
  2. package/dist/agent/agentClient.d.ts +5 -0
  3. package/dist/agent/agentClient.js +4 -0
  4. package/dist/agent/agentService.d.ts +9 -37
  5. package/dist/agent/agentService.js +64 -323
  6. package/dist/agent/agentStorage.d.ts +1 -20
  7. package/dist/agent/agentStorage.js +0 -30
  8. package/dist/agent/api.d.ts +105 -152
  9. package/dist/agent/api.js +1 -8
  10. package/dist/agent/client.d.ts +3 -1
  11. package/dist/agent/client.js +2 -3
  12. package/dist/agent/control.d.ts +23 -0
  13. package/dist/agent/control.js +479 -0
  14. package/dist/agent/dimensionAgentClient.d.ts +8 -0
  15. package/dist/agent/dimensionAgentClient.js +99 -0
  16. package/dist/agent/hostTranscript.d.ts +0 -6
  17. package/dist/agent/hostTranscript.js +3 -14
  18. package/dist/agent/session/backend.d.ts +18 -32
  19. package/dist/agent/session/claude/home.d.ts +0 -1
  20. package/dist/agent/session/claude/home.js +0 -1
  21. package/dist/agent/session/claude/provision.d.ts +10 -0
  22. package/dist/agent/session/claude/provision.js +17 -0
  23. package/dist/agent/session/claude/transcript.d.ts +3 -7
  24. package/dist/agent/session/claude/transcript.js +68 -14
  25. package/dist/agent/session/client.d.ts +1 -10
  26. package/dist/agent/session/client.js +0 -3
  27. package/dist/agent/session/codex/provision.d.ts +14 -0
  28. package/dist/agent/session/codex/provision.js +25 -0
  29. package/dist/agent/session/fileTranscript.d.ts +6 -49
  30. package/dist/agent/session/fileTranscript.js +26 -82
  31. package/dist/agent/session/install.d.ts +5 -0
  32. package/dist/agent/session/install.js +35 -0
  33. package/dist/agent/session/sessionStorage.d.ts +4 -35
  34. package/dist/agent/session/sessionStorage.js +10 -16
  35. package/dist/agent/session/sharedConnection.d.ts +0 -8
  36. package/dist/agent/session/sharedConnection.js +0 -7
  37. package/dist/agent/session/storedTranscripts.d.ts +1 -6
  38. package/dist/agent/session/storedTranscripts.js +0 -3
  39. package/dist/agent/session/worker/jsonRpc.d.ts +2 -13
  40. package/dist/agent/session/worker/jsonRpc.js +2 -11
  41. package/dist/agent/session/worker/protocol.d.ts +30 -21
  42. package/dist/agent/session/worker/protocol.js +29 -18
  43. package/dist/agent/session/worker/workerParams.d.ts +0 -5
  44. package/dist/agent/session/worker/workerParams.js +24 -17
  45. package/dist/agent/session/workerConnection.d.ts +2 -13
  46. package/dist/agent/session/workerConnection.js +7 -12
  47. package/dist/agent/session/workerGatewayConnection.d.ts +18 -0
  48. package/dist/agent/session/workerGatewayConnection.js +86 -0
  49. package/dist/agent/vendor-types/manifest.json +32 -0
  50. package/dist/agent/workerBundle.d.ts +4 -19
  51. package/dist/agent/workerBundle.generated.js +1 -1
  52. package/dist/agent/workerBundle.js +3 -30
  53. package/dist/agent/workerReplacement.d.ts +3 -0
  54. package/dist/agent/workerReplacement.js +49 -0
  55. package/dist/cli/agent.js +31 -16
  56. package/dist/cli/command.d.ts +10 -11
  57. package/dist/cli/command.js +0 -4
  58. package/dist/cli/dimension.js +6 -6
  59. package/dist/cli/gateway.js +3 -6
  60. package/dist/cli/main.js +14 -31
  61. package/dist/cli/streamPrinter.d.ts +2 -10
  62. package/dist/cli/streamPrinter.js +16 -46
  63. package/dist/cli/table.d.ts +0 -3
  64. package/dist/cli/table.js +0 -4
  65. package/dist/dimension/api.d.ts +42 -27
  66. package/dist/dimension/api.js +28 -47
  67. package/dist/dimension/client.d.ts +5 -0
  68. package/dist/dimension/client.js +4 -0
  69. package/dist/dimension/control.d.ts +22 -0
  70. package/dist/dimension/control.js +346 -0
  71. package/dist/dimension/image.d.ts +0 -5
  72. package/dist/dimension/image.js +0 -8
  73. package/dist/dimension/imageFiles.generated.js +1 -1
  74. package/dist/dimension/paths.d.ts +5 -4
  75. package/dist/dimension/paths.js +15 -6
  76. package/dist/dimension/service.d.ts +8 -24
  77. package/dist/dimension/service.js +85 -227
  78. package/dist/dimension/transport-worker.d.ts +1 -0
  79. package/dist/dimension/transport-worker.js +151 -0
  80. package/dist/dimension/transportBundle.d.ts +2 -0
  81. package/dist/dimension/transportBundle.generated.d.ts +1 -0
  82. package/dist/dimension/transportBundle.generated.js +2 -0
  83. package/dist/dimension/transportBundle.js +4 -0
  84. package/dist/dimension/transportClient.d.ts +10 -0
  85. package/dist/dimension/transportClient.js +115 -0
  86. package/dist/dimension/transportProtocol.d.ts +53 -0
  87. package/dist/dimension/transportProtocol.js +8 -0
  88. package/dist/index.d.ts +7 -9
  89. package/dist/index.js +7 -19
  90. package/dist/lib/control.d.ts +11 -0
  91. package/dist/lib/control.js +62 -0
  92. package/dist/lib/docker.d.ts +0 -22
  93. package/dist/lib/docker.js +0 -10
  94. package/dist/lib/image.d.ts +0 -3
  95. package/dist/lib/image.js +0 -2
  96. package/dist/lib/jsonDirectory.d.ts +0 -13
  97. package/dist/lib/jsonDirectory.js +34 -18
  98. package/dist/lib/scriptBundle.d.ts +6 -0
  99. package/dist/lib/scriptBundle.js +28 -0
  100. package/dist/lib/sh.d.ts +2 -0
  101. package/dist/lib/sh.js +8 -0
  102. package/dist/lib/sleep.d.ts +0 -1
  103. package/dist/lib/sleep.js +0 -1
  104. package/dist/lib/streamFetch.d.ts +15 -0
  105. package/dist/lib/streamFetch.js +150 -0
  106. package/dist/lib/tar.d.ts +0 -1
  107. package/dist/lib/tar.js +5 -11
  108. package/dist/lib/unixSocket.d.ts +2 -0
  109. package/dist/lib/unixSocket.js +28 -0
  110. package/dist/portal-gateway/api.d.ts +14 -44
  111. package/dist/portal-gateway/api.js +1 -3
  112. package/dist/portal-gateway/control.d.ts +42 -0
  113. package/dist/portal-gateway/control.js +657 -0
  114. package/dist/portal-gateway/gatewayClient.d.ts +5 -0
  115. package/dist/portal-gateway/gatewayClient.js +4 -0
  116. package/dist/portal-gateway/gatewayService.d.ts +8 -38
  117. package/dist/portal-gateway/gatewayService.js +82 -254
  118. package/dist/portal-gateway/image.d.ts +0 -1
  119. package/dist/portal-gateway/image.js +0 -2
  120. package/dist/portal-gateway/imageFiles.generated.js +2 -2
  121. package/dist/portal-gateway/portalClient.d.ts +5 -0
  122. package/dist/portal-gateway/portalClient.js +4 -0
  123. package/dist/portal-gateway/portalService.d.ts +5 -47
  124. package/dist/portal-gateway/portalService.js +19 -349
  125. package/dist/portal-gateway/transport-worker.d.ts +1 -0
  126. package/dist/portal-gateway/transport-worker.js +205 -0
  127. package/dist/portal-gateway/transportBundle.d.ts +2 -0
  128. package/dist/portal-gateway/transportBundle.generated.d.ts +1 -0
  129. package/dist/portal-gateway/transportBundle.generated.js +2 -0
  130. package/dist/portal-gateway/transportBundle.js +4 -0
  131. package/dist/portal-gateway/upstream.d.ts +0 -81
  132. package/dist/portal-gateway/upstream.js +0 -1
  133. package/dist/restore.d.ts +9 -0
  134. package/dist/restore.js +10 -0
  135. package/dist/sandbox/api.d.ts +126 -187
  136. package/dist/sandbox/api.js +5 -7
  137. package/dist/sandbox/client.d.ts +3 -0
  138. package/dist/sandbox/client.js +7 -0
  139. package/dist/sandbox/data-endpoints/dataEndpoints.d.ts +13 -0
  140. package/dist/sandbox/data-endpoints/dataEndpoints.js +100 -0
  141. package/dist/sandbox/data-endpoints/firewalledPorts.d.ts +4 -0
  142. package/dist/sandbox/data-endpoints/firewalledPorts.js +28 -0
  143. package/dist/sandbox/lib/httpOverStream.d.ts +3 -0
  144. package/dist/sandbox/lib/httpOverStream.js +21 -0
  145. package/dist/sandbox/lib/remoteFileOperations.d.ts +10 -0
  146. package/dist/sandbox/lib/remoteFileOperations.js +70 -0
  147. package/dist/sandbox/lib/shellCommand.d.ts +3 -0
  148. package/dist/sandbox/lib/shellCommand.js +7 -0
  149. package/dist/sandbox/lib/sshKey.d.ts +6 -0
  150. package/dist/sandbox/lib/sshKey.js +75 -0
  151. package/dist/sandbox/providers/boat/boatService.d.ts +3 -0
  152. package/dist/sandbox/providers/boat/boatService.js +373 -0
  153. package/dist/sandbox/providers/exedev/exeDevService.d.ts +2 -0
  154. package/dist/sandbox/providers/exedev/exeDevService.js +129 -0
  155. package/dist/sandbox/providers/exedev/exeDevToken.d.ts +1 -0
  156. package/dist/sandbox/providers/exedev/exeDevToken.js +50 -0
  157. package/dist/sandbox/providers/local/localService.d.ts +2 -0
  158. package/dist/sandbox/providers/local/localService.js +197 -0
  159. package/dist/sandbox/providers/ssh/sshService.d.ts +2 -0
  160. package/dist/sandbox/providers/ssh/sshService.js +83 -0
  161. package/dist/sandbox/providers/ssh/sshTransport.d.ts +12 -0
  162. package/dist/sandbox/providers/ssh/sshTransport.js +216 -0
  163. package/dist/sandbox/service.d.ts +3 -0
  164. package/dist/sandbox/service.js +26 -0
  165. package/dist/sandbox/storage/descriptors.d.ts +6 -0
  166. package/dist/sandbox/storage/descriptors.js +25 -0
  167. package/dist/sandbox/storage/sandboxStorage.d.ts +11 -0
  168. package/dist/sandbox/storage/sandboxStorage.js +42 -0
  169. package/dist/upstreams/anthropic.d.ts +0 -5
  170. package/dist/upstreams/anthropic.js +1 -8
  171. package/dist/upstreams/index.d.ts +2 -6
  172. package/dist/upstreams/index.js +0 -4
  173. package/dist/upstreams/openai.d.ts +0 -5
  174. package/dist/upstreams/openai.js +1 -13
  175. package/dist/vendor-types/claude/agent-sdk/bridge.d.ts +20 -4
  176. package/dist/vendor-types/claude/agent-sdk/browser-sdk.d.ts +24 -0
  177. package/dist/vendor-types/claude/agent-sdk/core.d.ts +2 -0
  178. package/dist/vendor-types/claude/agent-sdk/sdk-tools.d.ts +75 -6
  179. package/dist/vendor-types/claude/agent-sdk/sdk.d.ts +569 -100
  180. package/package.json +13 -4
  181. package/dist/agent/gatewaySignIns.d.ts +0 -5
  182. package/dist/agent/gatewaySignIns.js +0 -11
  183. package/dist/agent/session/codex/home.d.ts +0 -2
  184. package/dist/agent/session/codex/home.js +0 -4
  185. package/dist/agent/session/codex/messages.d.ts +0 -30
  186. package/dist/agent/session/codex/messages.js +0 -135
  187. package/dist/agent/session/codex/transcript.d.ts +0 -12
  188. package/dist/agent/session/codex/transcript.js +0 -22
  189. package/dist/agent/session/sdkMessages.d.ts +0 -15
  190. package/dist/agent/session/sdkMessages.js +0 -28
  191. package/dist/agent/session/workerSseConnection.d.ts +0 -31
  192. package/dist/agent/session/workerSseConnection.js +0 -76
  193. package/dist/agent/vendor-types/codex/app-server/AbsolutePathBuf.d.ts +0 -10
  194. package/dist/agent/vendor-types/codex/app-server/AbsolutePathBuf.js +0 -2
  195. package/dist/agent/vendor-types/codex/app-server/FunctionCallOutputBody.d.ts +0 -2
  196. package/dist/agent/vendor-types/codex/app-server/FunctionCallOutputBody.js +0 -2
  197. package/dist/agent/vendor-types/codex/app-server/FunctionCallOutputContentItem.d.ts +0 -22
  198. package/dist/agent/vendor-types/codex/app-server/FunctionCallOutputContentItem.js +0 -2
  199. package/dist/agent/vendor-types/codex/app-server/ImageDetail.d.ts +0 -1
  200. package/dist/agent/vendor-types/codex/app-server/ImageDetail.js +0 -2
  201. package/dist/agent/vendor-types/codex/app-server/ImageGenerationFailure.d.ts +0 -5
  202. package/dist/agent/vendor-types/codex/app-server/ImageGenerationFailure.js +0 -2
  203. package/dist/agent/vendor-types/codex/app-server/ImageGenerationItem.d.ts +0 -11
  204. package/dist/agent/vendor-types/codex/app-server/ImageGenerationItem.js +0 -2
  205. package/dist/agent/vendor-types/codex/app-server/LegacyAppPathString.d.ts +0 -23
  206. package/dist/agent/vendor-types/codex/app-server/LegacyAppPathString.js +0 -2
  207. package/dist/agent/vendor-types/codex/app-server/MessagePhase.d.ts +0 -7
  208. package/dist/agent/vendor-types/codex/app-server/MessagePhase.js +0 -2
  209. package/dist/agent/vendor-types/codex/app-server/ReasoningEffort.d.ts +0 -4
  210. package/dist/agent/vendor-types/codex/app-server/ReasoningEffort.js +0 -2
  211. package/dist/agent/vendor-types/codex/app-server/SleepItem.d.ts +0 -7
  212. package/dist/agent/vendor-types/codex/app-server/SleepItem.js +0 -2
  213. package/dist/agent/vendor-types/codex/app-server/WebSearchItem.d.ts +0 -14
  214. package/dist/agent/vendor-types/codex/app-server/WebSearchItem.js +0 -2
  215. package/dist/agent/vendor-types/codex/app-server/serde_json/JsonValue.d.ts +0 -3
  216. package/dist/agent/vendor-types/codex/app-server/serde_json/JsonValue.js +0 -2
  217. package/dist/agent/vendor-types/codex/app-server/v2/AgentMessageDelivery.d.ts +0 -1
  218. package/dist/agent/vendor-types/codex/app-server/v2/AgentMessageDelivery.js +0 -2
  219. package/dist/agent/vendor-types/codex/app-server/v2/AsyncUserInputQuestion.d.ts +0 -4
  220. package/dist/agent/vendor-types/codex/app-server/v2/AsyncUserInputQuestion.js +0 -2
  221. package/dist/agent/vendor-types/codex/app-server/v2/ByteRange.d.ts +0 -4
  222. package/dist/agent/vendor-types/codex/app-server/v2/ByteRange.js +0 -2
  223. package/dist/agent/vendor-types/codex/app-server/v2/CollabAgentState.d.ts +0 -5
  224. package/dist/agent/vendor-types/codex/app-server/v2/CollabAgentState.js +0 -2
  225. package/dist/agent/vendor-types/codex/app-server/v2/CollabAgentStatus.d.ts +0 -1
  226. package/dist/agent/vendor-types/codex/app-server/v2/CollabAgentStatus.js +0 -2
  227. package/dist/agent/vendor-types/codex/app-server/v2/CollabAgentTool.d.ts +0 -1
  228. package/dist/agent/vendor-types/codex/app-server/v2/CollabAgentTool.js +0 -2
  229. package/dist/agent/vendor-types/codex/app-server/v2/CollabAgentToolCallStatus.d.ts +0 -1
  230. package/dist/agent/vendor-types/codex/app-server/v2/CollabAgentToolCallStatus.js +0 -2
  231. package/dist/agent/vendor-types/codex/app-server/v2/CommandAction.d.ts +0 -19
  232. package/dist/agent/vendor-types/codex/app-server/v2/CommandAction.js +0 -2
  233. package/dist/agent/vendor-types/codex/app-server/v2/CommandExecutionSource.d.ts +0 -1
  234. package/dist/agent/vendor-types/codex/app-server/v2/CommandExecutionSource.js +0 -2
  235. package/dist/agent/vendor-types/codex/app-server/v2/CommandExecutionStatus.d.ts +0 -1
  236. package/dist/agent/vendor-types/codex/app-server/v2/CommandExecutionStatus.js +0 -2
  237. package/dist/agent/vendor-types/codex/app-server/v2/DynamicToolCallOutputContentItem.d.ts +0 -10
  238. package/dist/agent/vendor-types/codex/app-server/v2/DynamicToolCallOutputContentItem.js +0 -2
  239. package/dist/agent/vendor-types/codex/app-server/v2/DynamicToolCallStatus.d.ts +0 -1
  240. package/dist/agent/vendor-types/codex/app-server/v2/DynamicToolCallStatus.js +0 -2
  241. package/dist/agent/vendor-types/codex/app-server/v2/FileUpdateChange.d.ts +0 -6
  242. package/dist/agent/vendor-types/codex/app-server/v2/FileUpdateChange.js +0 -2
  243. package/dist/agent/vendor-types/codex/app-server/v2/HookPromptFragment.d.ts +0 -4
  244. package/dist/agent/vendor-types/codex/app-server/v2/HookPromptFragment.js +0 -2
  245. package/dist/agent/vendor-types/codex/app-server/v2/McpAppDisplayMode.d.ts +0 -1
  246. package/dist/agent/vendor-types/codex/app-server/v2/McpAppDisplayMode.js +0 -2
  247. package/dist/agent/vendor-types/codex/app-server/v2/McpAppUi.d.ts +0 -8
  248. package/dist/agent/vendor-types/codex/app-server/v2/McpAppUi.js +0 -2
  249. package/dist/agent/vendor-types/codex/app-server/v2/McpToolCallAppContext.d.ts +0 -7
  250. package/dist/agent/vendor-types/codex/app-server/v2/McpToolCallAppContext.js +0 -2
  251. package/dist/agent/vendor-types/codex/app-server/v2/McpToolCallError.d.ts +0 -3
  252. package/dist/agent/vendor-types/codex/app-server/v2/McpToolCallError.js +0 -2
  253. package/dist/agent/vendor-types/codex/app-server/v2/McpToolCallResult.d.ts +0 -6
  254. package/dist/agent/vendor-types/codex/app-server/v2/McpToolCallResult.js +0 -2
  255. package/dist/agent/vendor-types/codex/app-server/v2/McpToolCallStatus.d.ts +0 -1
  256. package/dist/agent/vendor-types/codex/app-server/v2/McpToolCallStatus.js +0 -2
  257. package/dist/agent/vendor-types/codex/app-server/v2/MemoryCitation.d.ts +0 -5
  258. package/dist/agent/vendor-types/codex/app-server/v2/MemoryCitation.js +0 -2
  259. package/dist/agent/vendor-types/codex/app-server/v2/MemoryCitationEntry.d.ts +0 -6
  260. package/dist/agent/vendor-types/codex/app-server/v2/MemoryCitationEntry.js +0 -2
  261. package/dist/agent/vendor-types/codex/app-server/v2/PatchApplyStatus.d.ts +0 -1
  262. package/dist/agent/vendor-types/codex/app-server/v2/PatchApplyStatus.js +0 -2
  263. package/dist/agent/vendor-types/codex/app-server/v2/PatchChangeKind.d.ts +0 -8
  264. package/dist/agent/vendor-types/codex/app-server/v2/PatchChangeKind.js +0 -2
  265. package/dist/agent/vendor-types/codex/app-server/v2/SubAgentActivityKind.d.ts +0 -1
  266. package/dist/agent/vendor-types/codex/app-server/v2/SubAgentActivityKind.js +0 -2
  267. package/dist/agent/vendor-types/codex/app-server/v2/TextElement.d.ts +0 -11
  268. package/dist/agent/vendor-types/codex/app-server/v2/TextElement.js +0 -2
  269. package/dist/agent/vendor-types/codex/app-server/v2/ThreadItem.d.ts +0 -215
  270. package/dist/agent/vendor-types/codex/app-server/v2/ThreadItem.js +0 -2
  271. package/dist/agent/vendor-types/codex/app-server/v2/UserInput.d.ts +0 -35
  272. package/dist/agent/vendor-types/codex/app-server/v2/UserInput.js +0 -2
  273. package/dist/agent/vendor-types/codex/app-server/v2/WebSearchAction.d.ts +0 -14
  274. package/dist/agent/vendor-types/codex/app-server/v2/WebSearchAction.js +0 -2
  275. package/dist/cli/services.d.ts +0 -19
  276. package/dist/cli/services.js +0 -34
  277. package/dist/dimension/http.d.ts +0 -7
  278. package/dist/dimension/http.js +0 -77
  279. package/dist/dimension/storage.d.ts +0 -39
  280. package/dist/dimension/storage.js +0 -79
  281. package/dist/portal-gateway/fakes.d.ts +0 -3
  282. package/dist/portal-gateway/fakes.js +0 -11
  283. package/dist/portal-gateway/gatewayStorage.d.ts +0 -66
  284. package/dist/portal-gateway/gatewayStorage.js +0 -125
  285. package/dist/portal-gateway/portalStorage.d.ts +0 -34
  286. package/dist/portal-gateway/portalStorage.js +0 -44
  287. package/dist/sandbox/boatService.d.ts +0 -52
  288. package/dist/sandbox/boatService.js +0 -343
  289. package/dist/sandbox/containerService.d.ts +0 -15
  290. package/dist/sandbox/containerService.js +0 -184
  291. package/dist/sandbox/endpointProxy.d.ts +0 -90
  292. package/dist/sandbox/endpointProxy.js +0 -716
  293. package/dist/sandbox/exeDevAuth.d.ts +0 -16
  294. package/dist/sandbox/exeDevAuth.js +0 -49
  295. package/dist/sandbox/localService.d.ts +0 -19
  296. package/dist/sandbox/localService.js +0 -200
  297. package/dist/sandbox/sseConnection.d.ts +0 -41
  298. package/dist/sandbox/sseConnection.js +0 -166
  299. package/dist/sandbox/sshService.d.ts +0 -30
  300. package/dist/sandbox/sshService.js +0 -680
@@ -1,7 +1,3 @@
1
1
  import anthropic from "./anthropic.js";
2
2
  import openai from "./openai.js";
3
- /**
4
- * Registered on every gateway whose creator doesn't list its own: a gateway that doesn't know an
5
- * upstream passes its tokens through to the dimension untouched.
6
- */
7
3
  export const BUILTIN_UPSTREAMS = [anthropic, openai];
@@ -1,7 +1,2 @@
1
- /**
2
- * Codex: a ChatGPT plan through `codex login --device-auth`, or an OpenAI API key. Once the gateway
3
- * holds a sign-in, `codex login --device-auth` in any dimension completes without a browser: the
4
- * gateway approves the device login and answers the exchange itself.
5
- */
6
1
  declare const _default: import("../portal-gateway/upstream.ts").UpstreamDefinition;
7
2
  export default _default;
@@ -1,29 +1,17 @@
1
- import { defineUpstream } from "../portal-gateway/upstream.js";
2
- /**
3
- * Codex: a ChatGPT plan through `codex login --device-auth`, or an OpenAI API key. Once the gateway
4
- * holds a sign-in, `codex login --device-auth` in any dimension completes without a browser: the
5
- * gateway approves the device login and answers the exchange itself.
6
- */
1
+ import { defineUpstream } from "../portal-gateway/api.js";
7
2
  export default defineUpstream({
8
3
  name: "openai",
9
4
  modes: {
10
5
  oauth: {
11
- // The API (HTTP and websocket) is on chatgpt.com; auth.openai.com is the token endpoint.
12
6
  hosts: ["chatgpt.com", "auth.openai.com"],
13
7
  present: { header: "authorization", scheme: "Bearer" },
14
- // The sign-in exchange is form-encoded, the refresh JSON.
15
8
  tokenUrl: "https://auth.openai.com/oauth/token",
16
- // codex decodes both JWTs: the access token's exp decides when it refreshes, and the id
17
- // token's claims give it the account and plan.
18
9
  fakes: {
19
10
  access: { jwt: true },
20
11
  id: { jwt: true },
21
12
  refresh: { prefix: "rt.1." },
22
13
  },
23
- // Another session token, in the body and again in a header; codex doesn't keep it.
24
14
  strip: { fields: ["oai_is"], headers: ["x-oai-is-update"] },
25
- // codex polls this until the device login is approved, then exchanges the code it returns
26
- // (with the returned verifier, which it doesn't check) at tokenUrl, answered by the gateway.
27
15
  answers: [
28
16
  {
29
17
  url: "https://auth.openai.com/api/accounts/deviceauth/token",
@@ -61,17 +61,21 @@ export type BridgeSessionHandle = {
61
61
  sendControlCancelRequest(requestId: string): void;
62
62
  /**
63
63
  * Swap the underlying transport in place with a fresh JWT (and epoch).
64
- * Carries the SSE sequence number so the server resumes the stream.
64
+ * Carries the SSE sequence number so the server resumes the stream, and
65
+ * hands the old transport's undelivered writes to the new one, including
66
+ * writes made after the transport died, so this call is also how a host
67
+ * recovers them after onClose fires.
65
68
  * Call this when the poll loop re-dispatches work for the same session
66
69
  * with a fresh secret (JWT is 4h; backend mints a new one every dispatch).
67
70
  *
68
71
  * Throws if `createV2ReplTransport` fails (registerWorker error, etc).
69
- * Caller should treat that as a close and drop this handle.
72
+ * Caller should treat that as a close and drop this handle; the
73
+ * undelivered writes are dropped with it.
70
74
  */
71
75
  reconnectTransport(opts: {
72
76
  ingressToken: string;
73
77
  apiBaseUrl: string;
74
- /** Omit to reuse the current transport's epoch (token-refresh reconnect); provide to override. */
78
+ /** Omit to reuse the current transport's epoch (token-refresh reconnect); provide to override. Pass a fresh one after a 4090. */
75
79
  epoch?: number;
76
80
  }): Promise<void>;
77
81
  /**
@@ -131,6 +135,13 @@ export type AttachBridgeSessionOptions = {
131
135
  * not be able to drive it.
132
136
  */
133
137
  outboundOnly?: boolean;
138
+ /**
139
+ * Version of the Claude Code CLI this host runs the session's turns with.
140
+ * Reported to attaching clients as `claude_code_version` on the initialize
141
+ * reply so they can gate features before the first turn's `system`/`init`
142
+ * arrives; omit when unknown and clients wait for that message instead.
143
+ */
144
+ claudeCodeVersion?: string;
134
145
  /**
135
146
  * User message typed on claude.ai. Echoes of outbound writes and
136
147
  * re-deliveries of prompts already forwarded are filtered before this
@@ -221,7 +232,11 @@ export type AttachBridgeSessionOptions = {
221
232
  * (heartbeat/write auth exhaustion — re-attach with a fresh secret,
222
233
  * like 401), 403/404 = permanent SSE HTTP rejection. Transient
223
234
  * disconnects (503, network blips) retry indefinitely inside
224
- * SSETransport and do NOT fire this.
235
+ * SSETransport and do NOT fire this. After it fires, the handle keeps
236
+ * writes it could not deliver: reconnectTransport() hands them to the
237
+ * rebuilt transport, and close() drops them. After a 4090 the epoch
238
+ * may be stale: pass one from a fresh /bridge call, since reusing a
239
+ * stale one closes again.
225
240
  */
226
241
  onClose?: (code?: number) => void;
227
242
  };
@@ -351,6 +366,7 @@ export type CreateSessionFailure = {
351
366
  terminal: true;
352
367
  reason: 'grouping_rejected' | 'request_rejected' | 'malformed_response';
353
368
  status: number;
369
+ /** The service's own message, unchanged and still untrusted, or undefined. It is passed on only if it is one line of at most 1,024 UTF-16 units, with no control or invisible characters and no whitespace other than single ASCII spaces. */
354
370
  detail: string | undefined;
355
371
  };
356
372
  /**
@@ -89,6 +89,13 @@ type BrowserQueryOptionsBase = {
89
89
  * each turn's result. At most one per turn.
90
90
  */
91
91
  promptSuggestions?: boolean;
92
+ /**
93
+ * Dialog kinds (`request_user_dialog` `dialog_kind` values) this consumer's
94
+ * `onUserDialog` can render, declared on `initialize`. The remote CLI sends
95
+ * only kinds an attached client declared, so `onUserDialog` alone does not
96
+ * opt in. A non-empty list without `onUserDialog` throws.
97
+ */
98
+ supportedDialogKinds?: string[];
92
99
  };
93
100
  /**
94
101
  * Exactly one of `websocket` | `sse` must be provided. `sse` is the v1alpha2
@@ -182,3 +189,20 @@ export declare function getCcrEvent(query: Query, message: SDKMessage): {
182
189
  created_at?: string;
183
190
  source?: string;
184
191
  } | undefined;
192
+ /**
193
+ * Closes the event stream of an `sse` query without ending the query. The
194
+ * stream reopens on `resumeSseStream()` or on the query's next send, its own
195
+ * answers to earlier requests included. It then replays the durable events
196
+ * sent meanwhile (or `onCatchUpTruncated` fires). Until then, requests from
197
+ * the remote session, such as permission prompts, wait unanswered. So do the
198
+ * query's own requests in flight and sends still waiting for the first
199
+ * connection. Ephemeral frames and delivery updates sent meanwhile are lost.
200
+ * Returns false for a WebSocket, closed or suspended query.
201
+ */
202
+ export declare function suspendSseStream(query: Query): boolean;
203
+ /**
204
+ * Reopens the event stream that `suspendSseStream()` closed, resuming after
205
+ * the last event received. Returns false unless `query` is suspended and
206
+ * still open.
207
+ */
208
+ export declare function resumeSseStream(query: Query): boolean;
@@ -1,10 +1,12 @@
1
1
  export {
2
2
  AbortError,
3
+ BUILTIN_TOOL_NAMES,
3
4
  createSdkMcpServer,
4
5
  deleteSession,
5
6
  EXIT_REASONS,
6
7
  filterEscalatingDefaultMode,
7
8
  HOOK_EVENTS,
9
+ LEGACY_TOOL_NAME_ALIASES,
8
10
  ORG_POLICY_LIMIT_PREFIXES,
9
11
  query,
10
12
  renameSession,
@@ -44,6 +44,7 @@ export type ToolInputSchemas =
44
44
  | ScheduleWakeupInput
45
45
  | RemoteTriggerInput
46
46
  | ShowOnboardingRolePickerInput
47
+ | OfferChromeSetupInput
47
48
  | ReadNotificationsInput
48
49
  | MonitorInput
49
50
  | ProposeSkillsInput
@@ -84,6 +85,7 @@ export type ToolOutputSchemas =
84
85
  | ArtifactOutput
85
86
  | RemoteTriggerOutput
86
87
  | ShowOnboardingRolePickerOutput
88
+ | OfferChromeSetupOutput
87
89
  | ReadNotificationsOutput
88
90
  | ScheduleWakeupOutput
89
91
  | MonitorOutput
@@ -131,6 +133,7 @@ export type AgentOutput =
131
133
  output_tokens_details?: {
132
134
  thinking_tokens?: number | null;
133
135
  } | null;
136
+ fallback_credit?: unknown;
134
137
  };
135
138
  toolStats?: {
136
139
  readCount: number;
@@ -444,6 +447,7 @@ export type ArtifactOutput =
444
447
  publishesResetAt?: number;
445
448
  contract?: string;
446
449
  updated?: boolean;
450
+ owned?: boolean;
447
451
  icon?: string;
448
452
  faviconSent?: true;
449
453
  iconDropped?: true;
@@ -451,6 +455,7 @@ export type ArtifactOutput =
451
455
  seq?: number;
452
456
  unchanged?: true;
453
457
  liveSubscription?: string;
458
+ pinned?: boolean;
454
459
  }
455
460
  | {
456
461
  artifacts: {
@@ -461,8 +466,12 @@ export type ArtifactOutput =
461
466
  rel?: "mine" | "shared";
462
467
  external?: true;
463
468
  role?: "editor" | "commenter" | "reader" | "viewer";
469
+ pinned?: boolean;
464
470
  }[];
465
471
  truncated?: boolean;
472
+ total?: number;
473
+ total_at_least?: true;
474
+ pins_enabled?: boolean;
466
475
  scope?: "shared" | "all";
467
476
  external_listed?: true;
468
477
  }
@@ -474,7 +483,9 @@ export type ArtifactOutput =
474
483
  codeText: string;
475
484
  result: string;
476
485
  durationMs: number;
486
+ title?: string;
477
487
  };
488
+ owned?: boolean;
478
489
  artifactRead?: {
479
490
  slug: string;
480
491
  ver?: string;
@@ -555,6 +566,7 @@ export type ArtifactOutput =
555
566
  written?: {
556
567
  url: string;
557
568
  };
569
+ owned?: boolean;
558
570
  asset_upload: {
559
571
  id: string;
560
572
  url: string;
@@ -568,6 +580,7 @@ export type ArtifactOutput =
568
580
  written?: {
569
581
  url: string;
570
582
  };
583
+ owned?: boolean;
571
584
  asset_uploads: {
572
585
  url: string;
573
586
  /**
@@ -658,10 +671,19 @@ export type ArtifactOutput =
658
671
  written?: {
659
672
  url: string;
660
673
  };
674
+ owned?: boolean;
661
675
  asset_delete: {
662
676
  id: string;
663
677
  deleted: boolean;
664
678
  };
679
+ }
680
+ | {
681
+ pin: {
682
+ action: "pin" | "unpin";
683
+ url: string;
684
+ pinned: boolean;
685
+ title?: string;
686
+ };
665
687
  };
666
688
  export type ProjectsOutput =
667
689
  | {
@@ -764,6 +786,10 @@ export interface AgentInput {
764
786
  * Optional model override for this agent. Takes precedence over the agent definition's model frontmatter and the configured default subagent model. If omitted, uses the agent definition's model, else the default (inherits from the parent unless a default subagent model is configured). Ignored for subagent_type: "fork" — forks always inherit the parent model.
765
787
  */
766
788
  model?: "sonnet" | "opus" | "haiku" | "fable";
789
+ /**
790
+ * Reasoning effort for this agent. Set this ONLY when the user, or instructions such as CLAUDE.md or a skill, explicitly ask that this agent or delegated work run at a specific effort level, never on your own judgment; otherwise omit it and the agent runs at its usual effort. Ignored for subagent_type: "fork": a fork runs at your own effort.
791
+ */
792
+ effort?: "low" | "medium" | "high" | "xhigh" | "max";
767
793
  /**
768
794
  * Agents run in the background by default; you will be notified when one completes. Set to false only when your very next action depends on this agent's result and nothing else could usefully happen while it runs — otherwise leave it in the background so the user can hand you other work.
769
795
  */
@@ -791,7 +817,7 @@ export interface BashInput {
791
817
  */
792
818
  command: string;
793
819
  /**
794
- * Optional timeout in milliseconds (max 600000)
820
+ * Optional timeout in milliseconds (max 600000 for a foreground command)
795
821
  */
796
822
  timeout?: number;
797
823
  /**
@@ -811,7 +837,7 @@ export interface BashInput {
811
837
  */
812
838
  description?: string;
813
839
  /**
814
- * Set to true to run this command in the background.
840
+ * Set to true to run this command in the background. With it, `timeout` limits how long the command may run in the background before it is stopped (default 1800000 ms, max 7200000 ms).
815
841
  */
816
842
  run_in_background?: boolean;
817
843
  /**
@@ -870,6 +896,10 @@ export interface FileReadInput {
870
896
  * Page range for PDF files (e.g., "1-5", "3", "10-20"). Only applicable to PDF files. Maximum 20 pages per request.
871
897
  */
872
898
  pages?: string;
899
+ /**
900
+ * Set to true to read a text file, or a line range of one, that is over the usual size limits, up to what still fits in your context. Only use this when you genuinely need all of it or the user asked for the whole file; otherwise read it in parts with offset and limit, or search it.
901
+ */
902
+ allow_large?: boolean;
873
903
  }
874
904
  export interface FileWriteInput {
875
905
  /**
@@ -1084,6 +1114,10 @@ export interface WebFetchInput {
1084
1114
  * The prompt to run on the fetched content
1085
1115
  */
1086
1116
  prompt: string;
1117
+ /**
1118
+ * Character position in the page text to start reading from. Use it to read on through a page too long for one call, with the value the previous result gave.
1119
+ */
1120
+ offset?: number;
1087
1121
  }
1088
1122
  export interface WebSearchInput {
1089
1123
  /**
@@ -2933,6 +2967,12 @@ export interface RemoteTriggerInput {
2933
2967
  };
2934
2968
  }
2935
2969
  export interface ShowOnboardingRolePickerInput {}
2970
+ export interface OfferChromeSetupInput {
2971
+ /**
2972
+ * A short phrase naming what the task needs the user's own browser for.
2973
+ */
2974
+ reason?: string;
2975
+ }
2936
2976
  export interface ReadNotificationsInput {}
2937
2977
  export interface MonitorInput {
2938
2978
  /**
@@ -3118,7 +3158,7 @@ export interface ProposeGoalInput {
3118
3158
  }
3119
3159
  export interface ArtifactInput {
3120
3160
  /**
3121
- * Omit (or 'publish') to publish file_path. 'list' enumerates artifacts — the user's own by default, see `scope`; only `limit` and `scope` may accompany it. 'read' returns the content of the published artifact at `url` (raw HTML for the user's own; an isolated summary, steered by the optional `prompt`, for one someone else owns, though a page published in this session's own Slack channel can come back in full as untrusted content) — see **Calls**. 'watch', 'unwatch', and 'status' manage live-update subscriptions through which a session keeps track of new versions of an artifact published elsewhere, and those aren't available in this session: 'watch' only reports that — this session does not keep track of new versions — and 'status' lists this session's artifact watches (pass `url` to check one). 'upload_asset' adds one local media, PDF, font, or text file to an existing artifact — pass `url` and `file_path` (or `file_paths` for several in one call). 'list_assets' lists the files in an artifact's asset store (pass `url`; `after` continues a listing), 'read_asset' saves one of them to a local file named by its id (pass `url` and `asset_id`, optionally `out_dir`), and 'delete_asset' permanently removes one (pass `url` and `asset_id`). See **Artifact assets** above.
3161
+ * Omit (or 'publish') to publish file_path. 'list' enumerates artifacts — the user's own by default, see `scope`; only `limit` and `scope` may accompany it. 'read' returns the content of the published artifact at `url` (raw HTML for the user's own; an isolated summary, steered by the optional `prompt`, for one someone else owns, though a page published in this session's own Slack channel can come back in full as untrusted content) — see **Calls**. 'watch', 'unwatch', and 'status' manage live-update subscriptions through which a session keeps track of new versions of an artifact published elsewhere, and those aren't available in this session: 'watch' only reports that — this session does not keep track of new versions — and 'status' lists this session's artifact watches (pass `url` to check one). 'upload_asset' adds one local media, PDF, font, or text file to an existing artifact — pass `url` and `file_path` (or `file_paths` for several in one call). 'list_assets' lists the files in an artifact's asset store (pass `url`; `after` continues a listing), 'read_asset' saves one of them to a local file named by its id (pass `url` and `asset_id`, optionally `out_dir`), and 'delete_asset' permanently removes one (pass `url` and `asset_id`). See **Artifact assets** above. 'pin' adds the artifact at `url` to the user's pinned list in their claude.ai sidebar and 'unpin' removes it (nothing else may accompany either) — private to the user, reversible, and no change to who can see the artifact.
3122
3162
  */
3123
3163
  action?:
3124
3164
  | "publish"
@@ -3131,7 +3171,9 @@ export interface ArtifactInput {
3131
3171
  | "upload_asset"
3132
3172
  | "list_assets"
3133
3173
  | "read_asset"
3134
- | "delete_asset";
3174
+ | "delete_asset"
3175
+ | "pin"
3176
+ | "unpin";
3135
3177
  /**
3136
3178
  * Path to the .html file to render. Required to publish (the default action). Use a short, distinctive basename — it is the last-resort title when the HTML has no <title> and no `title` parameter is given. For 'upload_asset', the local image, video, PDF, font, stylesheet (CSS), script (JS), or text (CSV, Markdown, JSON, plain text) file to upload.
3137
3179
  */
@@ -3165,7 +3207,7 @@ export interface ArtifactInput {
3165
3207
  */
3166
3208
  label?: string;
3167
3209
  /**
3168
- * Existing artifact URL to update in place. Pass whenever the user wants to update an artifact this conversation did not publish — "update my artifact", "keep the same link", a pasted artifact URL — and find the URL with action: "list" or ask the user for the link if you don't have it; without this, the publish creates a separate artifact instead of updating the existing one. Omit for new artifacts and same-conversation redeploys. Must be an artifact the user owns or was given edit access to (a read of it says "writer"). For 'read' and the other url-addressed actions: the artifact to act on.
3210
+ * An existing artifact's claude.ai link (claude.ai/artifact/{id} or claude.ai/code/artifact/{uuid}; a chat, project or session link is not one) to update in place. Pass whenever the user wants to update an artifact this conversation did not publish — "update my artifact", "keep the same link", a pasted artifact URL — and find the URL with action: "list" or ask the user for the link if you don't have it; without this, the publish creates a separate artifact instead of updating the existing one. Omit for new artifacts and same-conversation redeploys. Must be an artifact the user owns or was given edit access to (a read of it says "writer"). Before publishing to an artifact this conversation has neither read nor published, read it (action: "read") and build on what comes back; a publish sent without that read is refused. A refusal that hands you the live version counts as that read: merge your edits into that version and publish that; never resend the refused content unchanged. For 'read' and the other url-addressed actions: the artifact to act on.
3169
3211
  */
3170
3212
  url?: string;
3171
3213
  /**
@@ -3176,6 +3218,10 @@ export interface ArtifactInput {
3176
3218
  * Last-resort overwrite that DISCARDS the newer published version's page — another session's publish, or someone's save from a page that can publish new versions of itself. On a conflict the fix is to merge your changes onto the newer content (handed to you in the rejection, or re-read) and publish again — not force. Pass force:true only when the user has explicitly said to discard that specific version; never to get past a conflict on your own judgment. The tracked baseVersion is still sent; with force:true the server treats it as informational and overwrites, unless it refuses force over a version saved from inside the page. Omit (or false) so a concurrent write conflicts instead of being silently clobbered.
3177
3219
  */
3178
3220
  force?: boolean;
3221
+ /**
3222
+ * publish only: true also pins the published artifact to the user's claude.ai sidebar once it is published — pass it only when the user asked for that; a pin that fails never fails the publish (the result says so).
3223
+ */
3224
+ pin?: boolean;
3179
3225
  /**
3180
3226
  * read_asset: directory to save into — default: this artifact’s folder in your scratchpad directory, where saving needs no approval and which you can Read from. read_asset names the file by the asset id plus the extension for its type; saving to any directory other than the default is an ordinary file save the user may be asked to approve.
3181
3227
  */
@@ -3271,7 +3317,7 @@ export interface BashOutput {
3271
3317
  */
3272
3318
  backgroundCwdHint?: string;
3273
3319
  /**
3274
- * True when this backgrounded command is owned by a synchronous subagent and is therefore terminated when that agent gives its final response; absent when the command survives (main loop, async subagents)
3320
+ * True when this backgrounded command is terminated at its caller's final response, so no completion notification can follow (a synchronous subagent's command, or a headless session that takes no further input and is not waiting for background commands); absent when the command survives
3275
3321
  */
3276
3322
  backgroundEndsWithFinalResponse?: true;
3277
3323
  /**
@@ -3733,6 +3779,10 @@ export interface WebSearchOutput {
3733
3779
  * The URL of the search result
3734
3780
  */
3735
3781
  url: string;
3782
+ /**
3783
+ * Page text. PostToolUse hooks get it; tool_use_result does not.
3784
+ */
3785
+ snippet?: string;
3736
3786
  }[];
3737
3787
  }
3738
3788
  | string
@@ -3996,6 +4046,9 @@ export interface ShowOnboardingRolePickerOutput {
3996
4046
  role?: string;
3997
4047
  dismissed?: boolean;
3998
4048
  }
4049
+ export interface OfferChromeSetupOutput {
4050
+ outcome: "connected" | "not_now" | "no_attempt_yet";
4051
+ }
3999
4052
  export interface ReadNotificationsOutput {
4000
4053
  notifications: {
4001
4054
  /**
@@ -4014,11 +4067,19 @@ export interface ReadNotificationsOutput {
4014
4067
  * Verbatim notification body.
4015
4068
  */
4016
4069
  content: string;
4070
+ /**
4071
+ * RFC3339 timestamp, by this machine's clock, of when the notification reached this session's queue. Missing from results saved before this field existed.
4072
+ */
4073
+ arrived_at?: string;
4017
4074
  }[];
4018
4075
  /**
4019
4076
  * Notifications still queued after this drain (drains are size-budgeted); call the tool again to read them.
4020
4077
  */
4021
4078
  remaining: number;
4079
+ /**
4080
+ * RFC3339 timestamp, by this machine's clock, of when this call read the queue. Missing from results saved before this field existed.
4081
+ */
4082
+ read_at?: string;
4022
4083
  }
4023
4084
  export interface ScheduleWakeupOutput {
4024
4085
  /**
@@ -4120,6 +4181,10 @@ export interface CronCreateOutput {
4120
4181
  humanSchedule: string;
4121
4182
  recurring: boolean;
4122
4183
  durable?: boolean;
4184
+ /**
4185
+ * Epoch ms of the job's next run, the scheduler's per-job offset included
4186
+ */
4187
+ nextFireAt?: number;
4123
4188
  }
4124
4189
  export interface CronDeleteOutput {
4125
4190
  id: string;
@@ -4132,6 +4197,10 @@ export interface CronListOutput {
4132
4197
  prompt: string;
4133
4198
  recurring?: boolean;
4134
4199
  durable?: boolean;
4200
+ /**
4201
+ * Epoch ms of the job's next run, the scheduler's per-job offset included
4202
+ */
4203
+ nextFireAt?: number;
4135
4204
  }[];
4136
4205
  }
4137
4206
  export interface PushNotificationOutput {