@openclaw/codex 2026.5.2 → 2026.5.3-beta.2

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 (622) hide show
  1. package/dist/capabilities-CYg1OFaL.js +22 -0
  2. package/dist/client-Bm5-MMSf.js +622 -0
  3. package/dist/client-factory-Bh5chnqU.js +18 -0
  4. package/dist/command-handlers-Dxx2slu2.js +992 -0
  5. package/dist/compact-CpZ5DNlM.js +260 -0
  6. package/dist/computer-use-BblypQuj.js +380 -0
  7. package/dist/config-CkkoMeqF.js +244 -0
  8. package/dist/conversation-binding-D12ISGdf.js +549 -0
  9. package/dist/harness.js +41 -0
  10. package/dist/index.js +351 -0
  11. package/dist/media-understanding-provider.js +234 -0
  12. package/dist/models-Ddmxtdog.js +108 -0
  13. package/dist/prompt-overlay.js +12 -0
  14. package/dist/protocol-C9UWI98H.js +9 -0
  15. package/dist/protocol-validators-Cpopom3_.js +5762 -0
  16. package/dist/provider-catalog.js +84 -0
  17. package/dist/provider-discovery.js +33 -0
  18. package/dist/provider.js +150 -0
  19. package/dist/rolldown-runtime-DUslC3ob.js +14 -0
  20. package/dist/run-attempt-C5v380B8.js +3541 -0
  21. package/dist/session-binding-C7Y7rY0i.js +95 -0
  22. package/dist/shared-client-DEzBJ9G1.js +434 -0
  23. package/dist/test-api.js +42 -0
  24. package/dist/thread-lifecycle-BKZiIxyU.js +460 -0
  25. package/package.json +18 -3
  26. package/harness.ts +0 -59
  27. package/index.test.ts +0 -106
  28. package/index.ts +0 -41
  29. package/media-understanding-provider.test.ts +0 -300
  30. package/media-understanding-provider.ts +0 -369
  31. package/prompt-overlay-runtime-contract.test.ts +0 -45
  32. package/prompt-overlay.ts +0 -19
  33. package/provider-catalog.ts +0 -83
  34. package/provider-discovery.ts +0 -45
  35. package/provider.test.ts +0 -350
  36. package/provider.ts +0 -223
  37. package/src/app-server/approval-bridge.test.ts +0 -838
  38. package/src/app-server/approval-bridge.ts +0 -731
  39. package/src/app-server/auth-bridge.test.ts +0 -922
  40. package/src/app-server/auth-bridge.ts +0 -345
  41. package/src/app-server/auth-profile-runtime-contract.test.ts +0 -218
  42. package/src/app-server/capabilities.ts +0 -27
  43. package/src/app-server/client-factory.ts +0 -30
  44. package/src/app-server/client.test.ts +0 -463
  45. package/src/app-server/client.ts +0 -675
  46. package/src/app-server/compact.test.ts +0 -452
  47. package/src/app-server/compact.ts +0 -375
  48. package/src/app-server/computer-use.test.ts +0 -790
  49. package/src/app-server/computer-use.ts +0 -682
  50. package/src/app-server/config.test.ts +0 -431
  51. package/src/app-server/config.ts +0 -486
  52. package/src/app-server/context-engine-projection.test.ts +0 -104
  53. package/src/app-server/context-engine-projection.ts +0 -147
  54. package/src/app-server/delivery-no-reply-runtime-contract.test.ts +0 -80
  55. package/src/app-server/dynamic-tool-profile.ts +0 -31
  56. package/src/app-server/dynamic-tools.test.ts +0 -781
  57. package/src/app-server/dynamic-tools.ts +0 -345
  58. package/src/app-server/elicitation-bridge.test.ts +0 -625
  59. package/src/app-server/elicitation-bridge.ts +0 -555
  60. package/src/app-server/event-projector.test.ts +0 -921
  61. package/src/app-server/event-projector.ts +0 -1161
  62. package/src/app-server/managed-binary.test.ts +0 -141
  63. package/src/app-server/managed-binary.ts +0 -192
  64. package/src/app-server/models.test.ts +0 -242
  65. package/src/app-server/models.ts +0 -168
  66. package/src/app-server/native-hook-relay.test.ts +0 -143
  67. package/src/app-server/native-hook-relay.ts +0 -64
  68. package/src/app-server/openclaw-owned-tool-runtime-contract.test.ts +0 -415
  69. package/src/app-server/outcome-fallback-runtime-contract.test.ts +0 -352
  70. package/src/app-server/plugin-approval-roundtrip.ts +0 -122
  71. package/src/app-server/protocol-generated/json/DynamicToolCallParams.json +0 -24
  72. package/src/app-server/protocol-generated/json/v2/ErrorNotification.json +0 -162
  73. package/src/app-server/protocol-generated/json/v2/GetAccountResponse.json +0 -86
  74. package/src/app-server/protocol-generated/json/v2/ModelListResponse.json +0 -162
  75. package/src/app-server/protocol-generated/json/v2/ThreadResumeResponse.json +0 -1994
  76. package/src/app-server/protocol-generated/json/v2/ThreadStartResponse.json +0 -1994
  77. package/src/app-server/protocol-generated/json/v2/TurnCompletedNotification.json +0 -1243
  78. package/src/app-server/protocol-generated/json/v2/TurnStartResponse.json +0 -1240
  79. package/src/app-server/protocol-generated/typescript/AbsolutePathBuf.ts +0 -14
  80. package/src/app-server/protocol-generated/typescript/AgentPath.ts +0 -5
  81. package/src/app-server/protocol-generated/typescript/ApplyPatchApprovalParams.ts +0 -24
  82. package/src/app-server/protocol-generated/typescript/ApplyPatchApprovalResponse.ts +0 -6
  83. package/src/app-server/protocol-generated/typescript/AuthMode.ts +0 -8
  84. package/src/app-server/protocol-generated/typescript/ClientInfo.ts +0 -5
  85. package/src/app-server/protocol-generated/typescript/ClientNotification.ts +0 -5
  86. package/src/app-server/protocol-generated/typescript/ClientRequest.ts +0 -165
  87. package/src/app-server/protocol-generated/typescript/CollaborationMode.ts +0 -10
  88. package/src/app-server/protocol-generated/typescript/ContentItem.ts +0 -9
  89. package/src/app-server/protocol-generated/typescript/ConversationGitInfo.ts +0 -9
  90. package/src/app-server/protocol-generated/typescript/ConversationSummary.ts +0 -19
  91. package/src/app-server/protocol-generated/typescript/ExecCommandApprovalParams.ts +0 -22
  92. package/src/app-server/protocol-generated/typescript/ExecCommandApprovalResponse.ts +0 -6
  93. package/src/app-server/protocol-generated/typescript/ExecPolicyAmendment.ts +0 -12
  94. package/src/app-server/protocol-generated/typescript/FileChange.ts +0 -8
  95. package/src/app-server/protocol-generated/typescript/ForcedLoginMethod.ts +0 -5
  96. package/src/app-server/protocol-generated/typescript/FunctionCallOutputBody.ts +0 -6
  97. package/src/app-server/protocol-generated/typescript/FunctionCallOutputContentItem.ts +0 -12
  98. package/src/app-server/protocol-generated/typescript/FuzzyFileSearchMatchType.ts +0 -5
  99. package/src/app-server/protocol-generated/typescript/FuzzyFileSearchParams.ts +0 -9
  100. package/src/app-server/protocol-generated/typescript/FuzzyFileSearchResponse.ts +0 -6
  101. package/src/app-server/protocol-generated/typescript/FuzzyFileSearchResult.ts +0 -16
  102. package/src/app-server/protocol-generated/typescript/FuzzyFileSearchSessionCompletedNotification.ts +0 -5
  103. package/src/app-server/protocol-generated/typescript/FuzzyFileSearchSessionUpdatedNotification.ts +0 -10
  104. package/src/app-server/protocol-generated/typescript/GetAuthStatusParams.ts +0 -5
  105. package/src/app-server/protocol-generated/typescript/GetAuthStatusResponse.ts +0 -10
  106. package/src/app-server/protocol-generated/typescript/GetConversationSummaryParams.ts +0 -6
  107. package/src/app-server/protocol-generated/typescript/GetConversationSummaryResponse.ts +0 -6
  108. package/src/app-server/protocol-generated/typescript/GhostCommit.ts +0 -13
  109. package/src/app-server/protocol-generated/typescript/GitDiffToRemoteParams.ts +0 -5
  110. package/src/app-server/protocol-generated/typescript/GitDiffToRemoteResponse.ts +0 -6
  111. package/src/app-server/protocol-generated/typescript/GitSha.ts +0 -5
  112. package/src/app-server/protocol-generated/typescript/ImageDetail.ts +0 -5
  113. package/src/app-server/protocol-generated/typescript/InitializeCapabilities.ts +0 -18
  114. package/src/app-server/protocol-generated/typescript/InitializeParams.ts +0 -10
  115. package/src/app-server/protocol-generated/typescript/InitializeResponse.ts +0 -22
  116. package/src/app-server/protocol-generated/typescript/InputModality.ts +0 -8
  117. package/src/app-server/protocol-generated/typescript/LocalShellAction.ts +0 -6
  118. package/src/app-server/protocol-generated/typescript/LocalShellExecAction.ts +0 -11
  119. package/src/app-server/protocol-generated/typescript/LocalShellStatus.ts +0 -5
  120. package/src/app-server/protocol-generated/typescript/MessagePhase.ts +0 -11
  121. package/src/app-server/protocol-generated/typescript/ModeKind.ts +0 -8
  122. package/src/app-server/protocol-generated/typescript/NetworkPolicyAmendment.ts +0 -6
  123. package/src/app-server/protocol-generated/typescript/NetworkPolicyRuleAction.ts +0 -5
  124. package/src/app-server/protocol-generated/typescript/ParsedCommand.ts +0 -20
  125. package/src/app-server/protocol-generated/typescript/Personality.ts +0 -5
  126. package/src/app-server/protocol-generated/typescript/PlanType.ts +0 -17
  127. package/src/app-server/protocol-generated/typescript/RealtimeConversationVersion.ts +0 -5
  128. package/src/app-server/protocol-generated/typescript/RealtimeOutputModality.ts +0 -5
  129. package/src/app-server/protocol-generated/typescript/RealtimeVoice.ts +0 -24
  130. package/src/app-server/protocol-generated/typescript/RealtimeVoicesList.ts +0 -11
  131. package/src/app-server/protocol-generated/typescript/ReasoningEffort.ts +0 -8
  132. package/src/app-server/protocol-generated/typescript/ReasoningItemContent.ts +0 -7
  133. package/src/app-server/protocol-generated/typescript/ReasoningItemReasoningSummary.ts +0 -5
  134. package/src/app-server/protocol-generated/typescript/ReasoningSummary.ts +0 -10
  135. package/src/app-server/protocol-generated/typescript/RequestId.ts +0 -5
  136. package/src/app-server/protocol-generated/typescript/Resource.ts +0 -19
  137. package/src/app-server/protocol-generated/typescript/ResourceContent.ts +0 -27
  138. package/src/app-server/protocol-generated/typescript/ResourceTemplate.ts +0 -16
  139. package/src/app-server/protocol-generated/typescript/ResponseItem.ts +0 -70
  140. package/src/app-server/protocol-generated/typescript/ReviewDecision.ts +0 -17
  141. package/src/app-server/protocol-generated/typescript/ServerNotification.ts +0 -144
  142. package/src/app-server/protocol-generated/typescript/ServerRequest.ts +0 -47
  143. package/src/app-server/protocol-generated/typescript/ServiceTier.ts +0 -5
  144. package/src/app-server/protocol-generated/typescript/SessionSource.ts +0 -13
  145. package/src/app-server/protocol-generated/typescript/Settings.ts +0 -13
  146. package/src/app-server/protocol-generated/typescript/SubAgentSource.ts +0 -20
  147. package/src/app-server/protocol-generated/typescript/ThreadId.ts +0 -5
  148. package/src/app-server/protocol-generated/typescript/ThreadMemoryMode.ts +0 -5
  149. package/src/app-server/protocol-generated/typescript/Tool.ts +0 -18
  150. package/src/app-server/protocol-generated/typescript/Verbosity.ts +0 -9
  151. package/src/app-server/protocol-generated/typescript/WebSearchAction.ts +0 -9
  152. package/src/app-server/protocol-generated/typescript/WebSearchContextSize.ts +0 -5
  153. package/src/app-server/protocol-generated/typescript/WebSearchLocation.ts +0 -10
  154. package/src/app-server/protocol-generated/typescript/WebSearchMode.ts +0 -5
  155. package/src/app-server/protocol-generated/typescript/WebSearchToolConfig.ts +0 -11
  156. package/src/app-server/protocol-generated/typescript/index.ts +0 -80
  157. package/src/app-server/protocol-generated/typescript/serde_json/JsonValue.ts +0 -11
  158. package/src/app-server/protocol-generated/typescript/v2/Account.ts +0 -9
  159. package/src/app-server/protocol-generated/typescript/v2/AccountLoginCompletedNotification.ts +0 -9
  160. package/src/app-server/protocol-generated/typescript/v2/AccountRateLimitsUpdatedNotification.ts +0 -6
  161. package/src/app-server/protocol-generated/typescript/v2/AccountUpdatedNotification.ts +0 -7
  162. package/src/app-server/protocol-generated/typescript/v2/AddCreditsNudgeCreditType.ts +0 -5
  163. package/src/app-server/protocol-generated/typescript/v2/AddCreditsNudgeEmailStatus.ts +0 -5
  164. package/src/app-server/protocol-generated/typescript/v2/AdditionalFileSystemPermissions.ts +0 -18
  165. package/src/app-server/protocol-generated/typescript/v2/AdditionalNetworkPermissions.ts +0 -5
  166. package/src/app-server/protocol-generated/typescript/v2/AdditionalPermissionProfile.ts +0 -10
  167. package/src/app-server/protocol-generated/typescript/v2/AgentMessageDeltaNotification.ts +0 -10
  168. package/src/app-server/protocol-generated/typescript/v2/AnalyticsConfig.ts +0 -14
  169. package/src/app-server/protocol-generated/typescript/v2/AppBranding.ts +0 -15
  170. package/src/app-server/protocol-generated/typescript/v2/AppInfo.ts +0 -32
  171. package/src/app-server/protocol-generated/typescript/v2/AppListUpdatedNotification.ts +0 -9
  172. package/src/app-server/protocol-generated/typescript/v2/AppMetadata.ts +0 -20
  173. package/src/app-server/protocol-generated/typescript/v2/AppReview.ts +0 -5
  174. package/src/app-server/protocol-generated/typescript/v2/AppScreenshot.ts +0 -5
  175. package/src/app-server/protocol-generated/typescript/v2/AppSummary.ts +0 -14
  176. package/src/app-server/protocol-generated/typescript/v2/AppToolApproval.ts +0 -5
  177. package/src/app-server/protocol-generated/typescript/v2/AppToolsConfig.ts +0 -8
  178. package/src/app-server/protocol-generated/typescript/v2/ApprovalsReviewer.ts +0 -12
  179. package/src/app-server/protocol-generated/typescript/v2/AppsConfig.ts +0 -17
  180. package/src/app-server/protocol-generated/typescript/v2/AppsDefaultConfig.ts +0 -9
  181. package/src/app-server/protocol-generated/typescript/v2/AppsListParams.ts +0 -25
  182. package/src/app-server/protocol-generated/typescript/v2/AppsListResponse.ts +0 -16
  183. package/src/app-server/protocol-generated/typescript/v2/AskForApproval.ts +0 -18
  184. package/src/app-server/protocol-generated/typescript/v2/AutoReviewDecisionSource.ts +0 -8
  185. package/src/app-server/protocol-generated/typescript/v2/ByteRange.ts +0 -5
  186. package/src/app-server/protocol-generated/typescript/v2/CancelLoginAccountParams.ts +0 -5
  187. package/src/app-server/protocol-generated/typescript/v2/CancelLoginAccountResponse.ts +0 -6
  188. package/src/app-server/protocol-generated/typescript/v2/CancelLoginAccountStatus.ts +0 -5
  189. package/src/app-server/protocol-generated/typescript/v2/ChatgptAuthTokensRefreshParams.ts +0 -18
  190. package/src/app-server/protocol-generated/typescript/v2/ChatgptAuthTokensRefreshReason.ts +0 -5
  191. package/src/app-server/protocol-generated/typescript/v2/ChatgptAuthTokensRefreshResponse.ts +0 -9
  192. package/src/app-server/protocol-generated/typescript/v2/CodexErrorInfo.ts +0 -27
  193. package/src/app-server/protocol-generated/typescript/v2/CollabAgentState.ts +0 -6
  194. package/src/app-server/protocol-generated/typescript/v2/CollabAgentStatus.ts +0 -12
  195. package/src/app-server/protocol-generated/typescript/v2/CollabAgentTool.ts +0 -5
  196. package/src/app-server/protocol-generated/typescript/v2/CollabAgentToolCallStatus.ts +0 -5
  197. package/src/app-server/protocol-generated/typescript/v2/CollaborationModeMask.ts +0 -15
  198. package/src/app-server/protocol-generated/typescript/v2/CommandAction.ts +0 -10
  199. package/src/app-server/protocol-generated/typescript/v2/CommandExecOutputDeltaNotification.ts +0 -31
  200. package/src/app-server/protocol-generated/typescript/v2/CommandExecOutputStream.ts +0 -8
  201. package/src/app-server/protocol-generated/typescript/v2/CommandExecParams.ts +0 -107
  202. package/src/app-server/protocol-generated/typescript/v2/CommandExecResizeParams.ts +0 -19
  203. package/src/app-server/protocol-generated/typescript/v2/CommandExecResizeResponse.ts +0 -8
  204. package/src/app-server/protocol-generated/typescript/v2/CommandExecResponse.ts +0 -25
  205. package/src/app-server/protocol-generated/typescript/v2/CommandExecTerminalSize.ts +0 -17
  206. package/src/app-server/protocol-generated/typescript/v2/CommandExecTerminateParams.ts +0 -14
  207. package/src/app-server/protocol-generated/typescript/v2/CommandExecTerminateResponse.ts +0 -8
  208. package/src/app-server/protocol-generated/typescript/v2/CommandExecWriteParams.ts +0 -23
  209. package/src/app-server/protocol-generated/typescript/v2/CommandExecWriteResponse.ts +0 -8
  210. package/src/app-server/protocol-generated/typescript/v2/CommandExecutionApprovalDecision.ts +0 -13
  211. package/src/app-server/protocol-generated/typescript/v2/CommandExecutionOutputDeltaNotification.ts +0 -10
  212. package/src/app-server/protocol-generated/typescript/v2/CommandExecutionRequestApprovalParams.ts +0 -62
  213. package/src/app-server/protocol-generated/typescript/v2/CommandExecutionRequestApprovalResponse.ts +0 -8
  214. package/src/app-server/protocol-generated/typescript/v2/CommandExecutionSource.ts +0 -9
  215. package/src/app-server/protocol-generated/typescript/v2/CommandExecutionStatus.ts +0 -5
  216. package/src/app-server/protocol-generated/typescript/v2/Config.ts +0 -54
  217. package/src/app-server/protocol-generated/typescript/v2/ConfigBatchWriteParams.ts +0 -17
  218. package/src/app-server/protocol-generated/typescript/v2/ConfigEdit.ts +0 -7
  219. package/src/app-server/protocol-generated/typescript/v2/ConfigLayer.ts +0 -12
  220. package/src/app-server/protocol-generated/typescript/v2/ConfigLayerMetadata.ts +0 -6
  221. package/src/app-server/protocol-generated/typescript/v2/ConfigLayerSource.ts +0 -27
  222. package/src/app-server/protocol-generated/typescript/v2/ConfigReadParams.ts +0 -13
  223. package/src/app-server/protocol-generated/typescript/v2/ConfigReadResponse.ts +0 -12
  224. package/src/app-server/protocol-generated/typescript/v2/ConfigRequirements.ts +0 -15
  225. package/src/app-server/protocol-generated/typescript/v2/ConfigRequirementsReadResponse.ts +0 -11
  226. package/src/app-server/protocol-generated/typescript/v2/ConfigValueWriteParams.ts +0 -16
  227. package/src/app-server/protocol-generated/typescript/v2/ConfigWarningNotification.ts +0 -23
  228. package/src/app-server/protocol-generated/typescript/v2/ConfigWriteResponse.ts +0 -16
  229. package/src/app-server/protocol-generated/typescript/v2/ConfiguredHookHandler.ts +0 -14
  230. package/src/app-server/protocol-generated/typescript/v2/ConfiguredHookMatcherGroup.ts +0 -9
  231. package/src/app-server/protocol-generated/typescript/v2/ContextCompactedNotification.ts +0 -8
  232. package/src/app-server/protocol-generated/typescript/v2/CreditsSnapshot.ts +0 -5
  233. package/src/app-server/protocol-generated/typescript/v2/DeprecationNoticeNotification.ts +0 -14
  234. package/src/app-server/protocol-generated/typescript/v2/DeviceKeyAlgorithm.ts +0 -8
  235. package/src/app-server/protocol-generated/typescript/v2/DeviceKeyCreateParams.ts +0 -16
  236. package/src/app-server/protocol-generated/typescript/v2/DeviceKeyCreateResponse.ts +0 -18
  237. package/src/app-server/protocol-generated/typescript/v2/DeviceKeyProtectionClass.ts +0 -11
  238. package/src/app-server/protocol-generated/typescript/v2/DeviceKeyProtectionPolicy.ts +0 -8
  239. package/src/app-server/protocol-generated/typescript/v2/DeviceKeyPublicParams.ts +0 -8
  240. package/src/app-server/protocol-generated/typescript/v2/DeviceKeyPublicResponse.ts +0 -18
  241. package/src/app-server/protocol-generated/typescript/v2/DeviceKeySignParams.ts +0 -9
  242. package/src/app-server/protocol-generated/typescript/v2/DeviceKeySignPayload.ts +0 -68
  243. package/src/app-server/protocol-generated/typescript/v2/DeviceKeySignResponse.ts +0 -20
  244. package/src/app-server/protocol-generated/typescript/v2/DynamicToolCallOutputContentItem.ts +0 -7
  245. package/src/app-server/protocol-generated/typescript/v2/DynamicToolCallParams.ts +0 -13
  246. package/src/app-server/protocol-generated/typescript/v2/DynamicToolCallResponse.ts +0 -9
  247. package/src/app-server/protocol-generated/typescript/v2/DynamicToolCallStatus.ts +0 -5
  248. package/src/app-server/protocol-generated/typescript/v2/DynamicToolSpec.ts +0 -12
  249. package/src/app-server/protocol-generated/typescript/v2/ErrorNotification.ts +0 -11
  250. package/src/app-server/protocol-generated/typescript/v2/ExecPolicyAmendment.ts +0 -5
  251. package/src/app-server/protocol-generated/typescript/v2/ExperimentalFeature.ts +0 -38
  252. package/src/app-server/protocol-generated/typescript/v2/ExperimentalFeatureEnablementSetParams.ts +0 -13
  253. package/src/app-server/protocol-generated/typescript/v2/ExperimentalFeatureEnablementSetResponse.ts +0 -10
  254. package/src/app-server/protocol-generated/typescript/v2/ExperimentalFeatureListParams.ts +0 -14
  255. package/src/app-server/protocol-generated/typescript/v2/ExperimentalFeatureListResponse.ts +0 -13
  256. package/src/app-server/protocol-generated/typescript/v2/ExperimentalFeatureStage.ts +0 -10
  257. package/src/app-server/protocol-generated/typescript/v2/ExternalAgentConfigDetectParams.ts +0 -14
  258. package/src/app-server/protocol-generated/typescript/v2/ExternalAgentConfigDetectResponse.ts +0 -6
  259. package/src/app-server/protocol-generated/typescript/v2/ExternalAgentConfigImportCompletedNotification.ts +0 -5
  260. package/src/app-server/protocol-generated/typescript/v2/ExternalAgentConfigImportParams.ts +0 -8
  261. package/src/app-server/protocol-generated/typescript/v2/ExternalAgentConfigImportResponse.ts +0 -5
  262. package/src/app-server/protocol-generated/typescript/v2/ExternalAgentConfigMigrationItem.ts +0 -15
  263. package/src/app-server/protocol-generated/typescript/v2/ExternalAgentConfigMigrationItemType.ts +0 -10
  264. package/src/app-server/protocol-generated/typescript/v2/FeedbackUploadParams.ts +0 -12
  265. package/src/app-server/protocol-generated/typescript/v2/FeedbackUploadResponse.ts +0 -5
  266. package/src/app-server/protocol-generated/typescript/v2/FileChangeApprovalDecision.ts +0 -5
  267. package/src/app-server/protocol-generated/typescript/v2/FileChangeOutputDeltaNotification.ts +0 -10
  268. package/src/app-server/protocol-generated/typescript/v2/FileChangePatchUpdatedNotification.ts +0 -11
  269. package/src/app-server/protocol-generated/typescript/v2/FileChangeRequestApprovalParams.ts +0 -18
  270. package/src/app-server/protocol-generated/typescript/v2/FileChangeRequestApprovalResponse.ts +0 -6
  271. package/src/app-server/protocol-generated/typescript/v2/FileSystemAccessMode.ts +0 -5
  272. package/src/app-server/protocol-generated/typescript/v2/FileSystemPath.ts +0 -10
  273. package/src/app-server/protocol-generated/typescript/v2/FileSystemSandboxEntry.ts +0 -7
  274. package/src/app-server/protocol-generated/typescript/v2/FileSystemSpecialPath.ts +0 -12
  275. package/src/app-server/protocol-generated/typescript/v2/FileUpdateChange.ts +0 -6
  276. package/src/app-server/protocol-generated/typescript/v2/FsChangedNotification.ts +0 -18
  277. package/src/app-server/protocol-generated/typescript/v2/FsCopyParams.ts +0 -22
  278. package/src/app-server/protocol-generated/typescript/v2/FsCopyResponse.ts +0 -8
  279. package/src/app-server/protocol-generated/typescript/v2/FsCreateDirectoryParams.ts +0 -18
  280. package/src/app-server/protocol-generated/typescript/v2/FsCreateDirectoryResponse.ts +0 -8
  281. package/src/app-server/protocol-generated/typescript/v2/FsGetMetadataParams.ts +0 -14
  282. package/src/app-server/protocol-generated/typescript/v2/FsGetMetadataResponse.ts +0 -29
  283. package/src/app-server/protocol-generated/typescript/v2/FsReadDirectoryEntry.ts +0 -21
  284. package/src/app-server/protocol-generated/typescript/v2/FsReadDirectoryParams.ts +0 -14
  285. package/src/app-server/protocol-generated/typescript/v2/FsReadDirectoryResponse.ts +0 -14
  286. package/src/app-server/protocol-generated/typescript/v2/FsReadFileParams.ts +0 -14
  287. package/src/app-server/protocol-generated/typescript/v2/FsReadFileResponse.ts +0 -13
  288. package/src/app-server/protocol-generated/typescript/v2/FsRemoveParams.ts +0 -22
  289. package/src/app-server/protocol-generated/typescript/v2/FsRemoveResponse.ts +0 -8
  290. package/src/app-server/protocol-generated/typescript/v2/FsUnwatchParams.ts +0 -13
  291. package/src/app-server/protocol-generated/typescript/v2/FsUnwatchResponse.ts +0 -8
  292. package/src/app-server/protocol-generated/typescript/v2/FsWatchParams.ts +0 -18
  293. package/src/app-server/protocol-generated/typescript/v2/FsWatchResponse.ts +0 -14
  294. package/src/app-server/protocol-generated/typescript/v2/FsWriteFileParams.ts +0 -18
  295. package/src/app-server/protocol-generated/typescript/v2/FsWriteFileResponse.ts +0 -8
  296. package/src/app-server/protocol-generated/typescript/v2/GetAccountParams.ts +0 -14
  297. package/src/app-server/protocol-generated/typescript/v2/GetAccountRateLimitsResponse.ts +0 -15
  298. package/src/app-server/protocol-generated/typescript/v2/GetAccountResponse.ts +0 -6
  299. package/src/app-server/protocol-generated/typescript/v2/GitInfo.ts +0 -5
  300. package/src/app-server/protocol-generated/typescript/v2/GrantedPermissionProfile.ts +0 -10
  301. package/src/app-server/protocol-generated/typescript/v2/GuardianApprovalReview.ts +0 -18
  302. package/src/app-server/protocol-generated/typescript/v2/GuardianApprovalReviewAction.ts +0 -34
  303. package/src/app-server/protocol-generated/typescript/v2/GuardianApprovalReviewStatus.ts +0 -13
  304. package/src/app-server/protocol-generated/typescript/v2/GuardianCommandSource.ts +0 -5
  305. package/src/app-server/protocol-generated/typescript/v2/GuardianRiskLevel.ts +0 -8
  306. package/src/app-server/protocol-generated/typescript/v2/GuardianUserAuthorization.ts +0 -8
  307. package/src/app-server/protocol-generated/typescript/v2/GuardianWarningNotification.ts +0 -14
  308. package/src/app-server/protocol-generated/typescript/v2/HookCompletedNotification.ts +0 -10
  309. package/src/app-server/protocol-generated/typescript/v2/HookEventName.ts +0 -11
  310. package/src/app-server/protocol-generated/typescript/v2/HookExecutionMode.ts +0 -5
  311. package/src/app-server/protocol-generated/typescript/v2/HookHandlerType.ts +0 -5
  312. package/src/app-server/protocol-generated/typescript/v2/HookOutputEntry.ts +0 -6
  313. package/src/app-server/protocol-generated/typescript/v2/HookOutputEntryKind.ts +0 -5
  314. package/src/app-server/protocol-generated/typescript/v2/HookPromptFragment.ts +0 -5
  315. package/src/app-server/protocol-generated/typescript/v2/HookRunStatus.ts +0 -5
  316. package/src/app-server/protocol-generated/typescript/v2/HookRunSummary.ts +0 -28
  317. package/src/app-server/protocol-generated/typescript/v2/HookScope.ts +0 -5
  318. package/src/app-server/protocol-generated/typescript/v2/HookSource.ts +0 -13
  319. package/src/app-server/protocol-generated/typescript/v2/HookStartedNotification.ts +0 -10
  320. package/src/app-server/protocol-generated/typescript/v2/ItemCompletedNotification.ts +0 -6
  321. package/src/app-server/protocol-generated/typescript/v2/ItemGuardianApprovalReviewCompletedNotification.ts +0 -36
  322. package/src/app-server/protocol-generated/typescript/v2/ItemGuardianApprovalReviewStartedNotification.ts +0 -34
  323. package/src/app-server/protocol-generated/typescript/v2/ItemStartedNotification.ts +0 -6
  324. package/src/app-server/protocol-generated/typescript/v2/ListMcpServerStatusParams.ts +0 -20
  325. package/src/app-server/protocol-generated/typescript/v2/ListMcpServerStatusResponse.ts +0 -13
  326. package/src/app-server/protocol-generated/typescript/v2/LoginAccountParams.ts +0 -27
  327. package/src/app-server/protocol-generated/typescript/v2/LoginAccountResponse.ts +0 -27
  328. package/src/app-server/protocol-generated/typescript/v2/LogoutAccountResponse.ts +0 -5
  329. package/src/app-server/protocol-generated/typescript/v2/ManagedHooksRequirements.ts +0 -15
  330. package/src/app-server/protocol-generated/typescript/v2/MarketplaceAddParams.ts +0 -9
  331. package/src/app-server/protocol-generated/typescript/v2/MarketplaceAddResponse.ts +0 -10
  332. package/src/app-server/protocol-generated/typescript/v2/MarketplaceInterface.ts +0 -5
  333. package/src/app-server/protocol-generated/typescript/v2/MarketplaceLoadErrorInfo.ts +0 -6
  334. package/src/app-server/protocol-generated/typescript/v2/MarketplaceRemoveParams.ts +0 -5
  335. package/src/app-server/protocol-generated/typescript/v2/MarketplaceRemoveResponse.ts +0 -9
  336. package/src/app-server/protocol-generated/typescript/v2/MarketplaceUpgradeErrorInfo.ts +0 -5
  337. package/src/app-server/protocol-generated/typescript/v2/MarketplaceUpgradeParams.ts +0 -5
  338. package/src/app-server/protocol-generated/typescript/v2/MarketplaceUpgradeResponse.ts +0 -11
  339. package/src/app-server/protocol-generated/typescript/v2/McpAuthStatus.ts +0 -5
  340. package/src/app-server/protocol-generated/typescript/v2/McpElicitationArrayType.ts +0 -5
  341. package/src/app-server/protocol-generated/typescript/v2/McpElicitationBooleanSchema.ts +0 -11
  342. package/src/app-server/protocol-generated/typescript/v2/McpElicitationBooleanType.ts +0 -5
  343. package/src/app-server/protocol-generated/typescript/v2/McpElicitationConstOption.ts +0 -5
  344. package/src/app-server/protocol-generated/typescript/v2/McpElicitationEnumSchema.ts +0 -11
  345. package/src/app-server/protocol-generated/typescript/v2/McpElicitationLegacyTitledEnumSchema.ts +0 -13
  346. package/src/app-server/protocol-generated/typescript/v2/McpElicitationMultiSelectEnumSchema.ts +0 -9
  347. package/src/app-server/protocol-generated/typescript/v2/McpElicitationNumberSchema.ts +0 -13
  348. package/src/app-server/protocol-generated/typescript/v2/McpElicitationNumberType.ts +0 -5
  349. package/src/app-server/protocol-generated/typescript/v2/McpElicitationObjectType.ts +0 -5
  350. package/src/app-server/protocol-generated/typescript/v2/McpElicitationPrimitiveSchema.ts +0 -13
  351. package/src/app-server/protocol-generated/typescript/v2/McpElicitationSchema.ts +0 -18
  352. package/src/app-server/protocol-generated/typescript/v2/McpElicitationSingleSelectEnumSchema.ts +0 -9
  353. package/src/app-server/protocol-generated/typescript/v2/McpElicitationStringFormat.ts +0 -5
  354. package/src/app-server/protocol-generated/typescript/v2/McpElicitationStringSchema.ts +0 -15
  355. package/src/app-server/protocol-generated/typescript/v2/McpElicitationStringType.ts +0 -5
  356. package/src/app-server/protocol-generated/typescript/v2/McpElicitationTitledEnumItems.ts +0 -6
  357. package/src/app-server/protocol-generated/typescript/v2/McpElicitationTitledMultiSelectEnumSchema.ts +0 -15
  358. package/src/app-server/protocol-generated/typescript/v2/McpElicitationTitledSingleSelectEnumSchema.ts +0 -13
  359. package/src/app-server/protocol-generated/typescript/v2/McpElicitationUntitledEnumItems.ts +0 -9
  360. package/src/app-server/protocol-generated/typescript/v2/McpElicitationUntitledMultiSelectEnumSchema.ts +0 -15
  361. package/src/app-server/protocol-generated/typescript/v2/McpElicitationUntitledSingleSelectEnumSchema.ts +0 -12
  362. package/src/app-server/protocol-generated/typescript/v2/McpResourceReadParams.ts +0 -5
  363. package/src/app-server/protocol-generated/typescript/v2/McpResourceReadResponse.ts +0 -6
  364. package/src/app-server/protocol-generated/typescript/v2/McpServerElicitationAction.ts +0 -5
  365. package/src/app-server/protocol-generated/typescript/v2/McpServerElicitationRequestParams.ts +0 -27
  366. package/src/app-server/protocol-generated/typescript/v2/McpServerElicitationRequestResponse.ts +0 -19
  367. package/src/app-server/protocol-generated/typescript/v2/McpServerOauthLoginCompletedNotification.ts +0 -9
  368. package/src/app-server/protocol-generated/typescript/v2/McpServerOauthLoginParams.ts +0 -9
  369. package/src/app-server/protocol-generated/typescript/v2/McpServerOauthLoginResponse.ts +0 -5
  370. package/src/app-server/protocol-generated/typescript/v2/McpServerRefreshResponse.ts +0 -5
  371. package/src/app-server/protocol-generated/typescript/v2/McpServerStartupState.ts +0 -5
  372. package/src/app-server/protocol-generated/typescript/v2/McpServerStatus.ts +0 -15
  373. package/src/app-server/protocol-generated/typescript/v2/McpServerStatusDetail.ts +0 -5
  374. package/src/app-server/protocol-generated/typescript/v2/McpServerStatusUpdatedNotification.ts +0 -10
  375. package/src/app-server/protocol-generated/typescript/v2/McpServerToolCallParams.ts +0 -12
  376. package/src/app-server/protocol-generated/typescript/v2/McpServerToolCallResponse.ts +0 -11
  377. package/src/app-server/protocol-generated/typescript/v2/McpToolCallError.ts +0 -5
  378. package/src/app-server/protocol-generated/typescript/v2/McpToolCallProgressNotification.ts +0 -10
  379. package/src/app-server/protocol-generated/typescript/v2/McpToolCallResult.ts +0 -10
  380. package/src/app-server/protocol-generated/typescript/v2/McpToolCallStatus.ts +0 -5
  381. package/src/app-server/protocol-generated/typescript/v2/MemoryCitation.ts +0 -6
  382. package/src/app-server/protocol-generated/typescript/v2/MemoryCitationEntry.ts +0 -10
  383. package/src/app-server/protocol-generated/typescript/v2/MergeStrategy.ts +0 -5
  384. package/src/app-server/protocol-generated/typescript/v2/MigrationDetails.ts +0 -6
  385. package/src/app-server/protocol-generated/typescript/v2/Model.ts +0 -25
  386. package/src/app-server/protocol-generated/typescript/v2/ModelAvailabilityNux.ts +0 -5
  387. package/src/app-server/protocol-generated/typescript/v2/ModelListParams.ts +0 -18
  388. package/src/app-server/protocol-generated/typescript/v2/ModelListResponse.ts +0 -13
  389. package/src/app-server/protocol-generated/typescript/v2/ModelRerouteReason.ts +0 -5
  390. package/src/app-server/protocol-generated/typescript/v2/ModelReroutedNotification.ts +0 -12
  391. package/src/app-server/protocol-generated/typescript/v2/ModelUpgradeInfo.ts +0 -10
  392. package/src/app-server/protocol-generated/typescript/v2/ModelVerification.ts +0 -5
  393. package/src/app-server/protocol-generated/typescript/v2/ModelVerificationNotification.ts +0 -10
  394. package/src/app-server/protocol-generated/typescript/v2/NetworkAccess.ts +0 -5
  395. package/src/app-server/protocol-generated/typescript/v2/NetworkApprovalContext.ts +0 -6
  396. package/src/app-server/protocol-generated/typescript/v2/NetworkApprovalProtocol.ts +0 -5
  397. package/src/app-server/protocol-generated/typescript/v2/NetworkDomainPermission.ts +0 -5
  398. package/src/app-server/protocol-generated/typescript/v2/NetworkPolicyAmendment.ts +0 -6
  399. package/src/app-server/protocol-generated/typescript/v2/NetworkPolicyRuleAction.ts +0 -5
  400. package/src/app-server/protocol-generated/typescript/v2/NetworkRequirements.ts +0 -40
  401. package/src/app-server/protocol-generated/typescript/v2/NetworkUnixSocketPermission.ts +0 -5
  402. package/src/app-server/protocol-generated/typescript/v2/NonSteerableTurnKind.ts +0 -5
  403. package/src/app-server/protocol-generated/typescript/v2/OverriddenMetadata.ts +0 -11
  404. package/src/app-server/protocol-generated/typescript/v2/PatchApplyStatus.ts +0 -5
  405. package/src/app-server/protocol-generated/typescript/v2/PatchChangeKind.ts +0 -8
  406. package/src/app-server/protocol-generated/typescript/v2/PermissionGrantScope.ts +0 -5
  407. package/src/app-server/protocol-generated/typescript/v2/PermissionProfile.ts +0 -10
  408. package/src/app-server/protocol-generated/typescript/v2/PermissionProfileFileSystemPermissions.ts +0 -9
  409. package/src/app-server/protocol-generated/typescript/v2/PermissionProfileNetworkPermissions.ts +0 -5
  410. package/src/app-server/protocol-generated/typescript/v2/PermissionsRequestApprovalParams.ts +0 -14
  411. package/src/app-server/protocol-generated/typescript/v2/PermissionsRequestApprovalResponse.ts +0 -14
  412. package/src/app-server/protocol-generated/typescript/v2/PlanDeltaNotification.ts +0 -14
  413. package/src/app-server/protocol-generated/typescript/v2/PluginAuthPolicy.ts +0 -5
  414. package/src/app-server/protocol-generated/typescript/v2/PluginDetail.ts +0 -17
  415. package/src/app-server/protocol-generated/typescript/v2/PluginInstallParams.ts +0 -10
  416. package/src/app-server/protocol-generated/typescript/v2/PluginInstallPolicy.ts +0 -5
  417. package/src/app-server/protocol-generated/typescript/v2/PluginInstallResponse.ts +0 -10
  418. package/src/app-server/protocol-generated/typescript/v2/PluginInterface.ts +0 -46
  419. package/src/app-server/protocol-generated/typescript/v2/PluginListParams.ts +0 -12
  420. package/src/app-server/protocol-generated/typescript/v2/PluginListResponse.ts +0 -11
  421. package/src/app-server/protocol-generated/typescript/v2/PluginMarketplaceEntry.ts +0 -17
  422. package/src/app-server/protocol-generated/typescript/v2/PluginReadParams.ts +0 -10
  423. package/src/app-server/protocol-generated/typescript/v2/PluginReadResponse.ts +0 -6
  424. package/src/app-server/protocol-generated/typescript/v2/PluginSource.ts +0 -9
  425. package/src/app-server/protocol-generated/typescript/v2/PluginSummary.ts +0 -18
  426. package/src/app-server/protocol-generated/typescript/v2/PluginUninstallParams.ts +0 -5
  427. package/src/app-server/protocol-generated/typescript/v2/PluginUninstallResponse.ts +0 -5
  428. package/src/app-server/protocol-generated/typescript/v2/PluginsMigration.ts +0 -5
  429. package/src/app-server/protocol-generated/typescript/v2/ProfileV2.ts +0 -38
  430. package/src/app-server/protocol-generated/typescript/v2/RateLimitReachedType.ts +0 -10
  431. package/src/app-server/protocol-generated/typescript/v2/RateLimitSnapshot.ts +0 -17
  432. package/src/app-server/protocol-generated/typescript/v2/RateLimitWindow.ts +0 -9
  433. package/src/app-server/protocol-generated/typescript/v2/RawResponseItemCompletedNotification.ts +0 -10
  434. package/src/app-server/protocol-generated/typescript/v2/ReadOnlyAccess.ts +0 -8
  435. package/src/app-server/protocol-generated/typescript/v2/ReasoningEffortOption.ts +0 -6
  436. package/src/app-server/protocol-generated/typescript/v2/ReasoningSummaryPartAddedNotification.ts +0 -10
  437. package/src/app-server/protocol-generated/typescript/v2/ReasoningSummaryTextDeltaNotification.ts +0 -11
  438. package/src/app-server/protocol-generated/typescript/v2/ReasoningTextDeltaNotification.ts +0 -11
  439. package/src/app-server/protocol-generated/typescript/v2/RemoteControlClientConnectionAudience.ts +0 -8
  440. package/src/app-server/protocol-generated/typescript/v2/RemoteControlClientEnrollmentAudience.ts +0 -8
  441. package/src/app-server/protocol-generated/typescript/v2/RequestPermissionProfile.ts +0 -10
  442. package/src/app-server/protocol-generated/typescript/v2/ResidencyRequirement.ts +0 -5
  443. package/src/app-server/protocol-generated/typescript/v2/ReviewDelivery.ts +0 -5
  444. package/src/app-server/protocol-generated/typescript/v2/ReviewStartParams.ts +0 -15
  445. package/src/app-server/protocol-generated/typescript/v2/ReviewStartResponse.ts +0 -15
  446. package/src/app-server/protocol-generated/typescript/v2/ReviewTarget.ts +0 -16
  447. package/src/app-server/protocol-generated/typescript/v2/SandboxMode.ts +0 -5
  448. package/src/app-server/protocol-generated/typescript/v2/SandboxPolicy.ts +0 -19
  449. package/src/app-server/protocol-generated/typescript/v2/SandboxWorkspaceWrite.ts +0 -10
  450. package/src/app-server/protocol-generated/typescript/v2/SendAddCreditsNudgeEmailParams.ts +0 -6
  451. package/src/app-server/protocol-generated/typescript/v2/SendAddCreditsNudgeEmailResponse.ts +0 -6
  452. package/src/app-server/protocol-generated/typescript/v2/ServerRequestResolvedNotification.ts +0 -6
  453. package/src/app-server/protocol-generated/typescript/v2/SessionSource.ts +0 -13
  454. package/src/app-server/protocol-generated/typescript/v2/SkillDependencies.ts +0 -6
  455. package/src/app-server/protocol-generated/typescript/v2/SkillErrorInfo.ts +0 -5
  456. package/src/app-server/protocol-generated/typescript/v2/SkillInterface.ts +0 -13
  457. package/src/app-server/protocol-generated/typescript/v2/SkillMetadata.ts +0 -21
  458. package/src/app-server/protocol-generated/typescript/v2/SkillScope.ts +0 -5
  459. package/src/app-server/protocol-generated/typescript/v2/SkillSummary.ts +0 -14
  460. package/src/app-server/protocol-generated/typescript/v2/SkillToolDependency.ts +0 -12
  461. package/src/app-server/protocol-generated/typescript/v2/SkillsChangedNotification.ts +0 -11
  462. package/src/app-server/protocol-generated/typescript/v2/SkillsConfigWriteParams.ts +0 -16
  463. package/src/app-server/protocol-generated/typescript/v2/SkillsConfigWriteResponse.ts +0 -5
  464. package/src/app-server/protocol-generated/typescript/v2/SkillsListEntry.ts +0 -11
  465. package/src/app-server/protocol-generated/typescript/v2/SkillsListExtraRootsForCwd.ts +0 -5
  466. package/src/app-server/protocol-generated/typescript/v2/SkillsListParams.ts +0 -19
  467. package/src/app-server/protocol-generated/typescript/v2/SkillsListResponse.ts +0 -6
  468. package/src/app-server/protocol-generated/typescript/v2/SortDirection.ts +0 -5
  469. package/src/app-server/protocol-generated/typescript/v2/TerminalInteractionNotification.ts +0 -11
  470. package/src/app-server/protocol-generated/typescript/v2/TextElement.ts +0 -15
  471. package/src/app-server/protocol-generated/typescript/v2/TextPosition.ts +0 -14
  472. package/src/app-server/protocol-generated/typescript/v2/TextRange.ts +0 -6
  473. package/src/app-server/protocol-generated/typescript/v2/Thread.ts +0 -79
  474. package/src/app-server/protocol-generated/typescript/v2/ThreadActiveFlag.ts +0 -5
  475. package/src/app-server/protocol-generated/typescript/v2/ThreadApproveGuardianDeniedActionParams.ts +0 -12
  476. package/src/app-server/protocol-generated/typescript/v2/ThreadApproveGuardianDeniedActionResponse.ts +0 -5
  477. package/src/app-server/protocol-generated/typescript/v2/ThreadArchiveParams.ts +0 -5
  478. package/src/app-server/protocol-generated/typescript/v2/ThreadArchiveResponse.ts +0 -5
  479. package/src/app-server/protocol-generated/typescript/v2/ThreadArchivedNotification.ts +0 -5
  480. package/src/app-server/protocol-generated/typescript/v2/ThreadClosedNotification.ts +0 -5
  481. package/src/app-server/protocol-generated/typescript/v2/ThreadCompactStartParams.ts +0 -5
  482. package/src/app-server/protocol-generated/typescript/v2/ThreadCompactStartResponse.ts +0 -5
  483. package/src/app-server/protocol-generated/typescript/v2/ThreadForkParams.ts +0 -55
  484. package/src/app-server/protocol-generated/typescript/v2/ThreadForkResponse.ts +0 -41
  485. package/src/app-server/protocol-generated/typescript/v2/ThreadInjectItemsParams.ts +0 -12
  486. package/src/app-server/protocol-generated/typescript/v2/ThreadInjectItemsResponse.ts +0 -5
  487. package/src/app-server/protocol-generated/typescript/v2/ThreadItem.ts +0 -156
  488. package/src/app-server/protocol-generated/typescript/v2/ThreadListParams.ts +0 -55
  489. package/src/app-server/protocol-generated/typescript/v2/ThreadListResponse.ts +0 -20
  490. package/src/app-server/protocol-generated/typescript/v2/ThreadLoadedListParams.ts +0 -14
  491. package/src/app-server/protocol-generated/typescript/v2/ThreadLoadedListResponse.ts +0 -15
  492. package/src/app-server/protocol-generated/typescript/v2/ThreadMetadataGitInfoUpdateParams.ts +0 -21
  493. package/src/app-server/protocol-generated/typescript/v2/ThreadMetadataUpdateParams.ts +0 -14
  494. package/src/app-server/protocol-generated/typescript/v2/ThreadMetadataUpdateResponse.ts +0 -6
  495. package/src/app-server/protocol-generated/typescript/v2/ThreadNameUpdatedNotification.ts +0 -5
  496. package/src/app-server/protocol-generated/typescript/v2/ThreadReadParams.ts +0 -11
  497. package/src/app-server/protocol-generated/typescript/v2/ThreadReadResponse.ts +0 -6
  498. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeAudioChunk.ts +0 -14
  499. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeClosedNotification.ts +0 -8
  500. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeErrorNotification.ts +0 -8
  501. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeItemAddedNotification.ts +0 -9
  502. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeOutputAudioDeltaNotification.ts +0 -12
  503. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeSdpNotification.ts +0 -8
  504. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeStartTransport.ts +0 -17
  505. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeStartedNotification.ts +0 -13
  506. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeTranscriptDeltaNotification.ts +0 -16
  507. package/src/app-server/protocol-generated/typescript/v2/ThreadRealtimeTranscriptDoneNotification.ts +0 -16
  508. package/src/app-server/protocol-generated/typescript/v2/ThreadResumeParams.ts +0 -64
  509. package/src/app-server/protocol-generated/typescript/v2/ThreadResumeResponse.ts +0 -41
  510. package/src/app-server/protocol-generated/typescript/v2/ThreadRollbackParams.ts +0 -14
  511. package/src/app-server/protocol-generated/typescript/v2/ThreadRollbackResponse.ts +0 -15
  512. package/src/app-server/protocol-generated/typescript/v2/ThreadSetNameParams.ts +0 -5
  513. package/src/app-server/protocol-generated/typescript/v2/ThreadSetNameResponse.ts +0 -5
  514. package/src/app-server/protocol-generated/typescript/v2/ThreadShellCommandParams.ts +0 -14
  515. package/src/app-server/protocol-generated/typescript/v2/ThreadShellCommandResponse.ts +0 -5
  516. package/src/app-server/protocol-generated/typescript/v2/ThreadSortKey.ts +0 -5
  517. package/src/app-server/protocol-generated/typescript/v2/ThreadSourceKind.ts +0 -15
  518. package/src/app-server/protocol-generated/typescript/v2/ThreadStartParams.ts +0 -43
  519. package/src/app-server/protocol-generated/typescript/v2/ThreadStartResponse.ts +0 -41
  520. package/src/app-server/protocol-generated/typescript/v2/ThreadStartSource.ts +0 -5
  521. package/src/app-server/protocol-generated/typescript/v2/ThreadStartedNotification.ts +0 -6
  522. package/src/app-server/protocol-generated/typescript/v2/ThreadStatus.ts +0 -10
  523. package/src/app-server/protocol-generated/typescript/v2/ThreadStatusChangedNotification.ts +0 -6
  524. package/src/app-server/protocol-generated/typescript/v2/ThreadTokenUsage.ts +0 -10
  525. package/src/app-server/protocol-generated/typescript/v2/ThreadTokenUsageUpdatedNotification.ts +0 -10
  526. package/src/app-server/protocol-generated/typescript/v2/ThreadTurnsListParams.ts +0 -20
  527. package/src/app-server/protocol-generated/typescript/v2/ThreadTurnsListResponse.ts +0 -20
  528. package/src/app-server/protocol-generated/typescript/v2/ThreadUnarchiveParams.ts +0 -5
  529. package/src/app-server/protocol-generated/typescript/v2/ThreadUnarchiveResponse.ts +0 -6
  530. package/src/app-server/protocol-generated/typescript/v2/ThreadUnarchivedNotification.ts +0 -5
  531. package/src/app-server/protocol-generated/typescript/v2/ThreadUnsubscribeParams.ts +0 -5
  532. package/src/app-server/protocol-generated/typescript/v2/ThreadUnsubscribeResponse.ts +0 -6
  533. package/src/app-server/protocol-generated/typescript/v2/ThreadUnsubscribeStatus.ts +0 -5
  534. package/src/app-server/protocol-generated/typescript/v2/TokenUsageBreakdown.ts +0 -11
  535. package/src/app-server/protocol-generated/typescript/v2/ToolRequestUserInputAnswer.ts +0 -8
  536. package/src/app-server/protocol-generated/typescript/v2/ToolRequestUserInputOption.ts +0 -8
  537. package/src/app-server/protocol-generated/typescript/v2/ToolRequestUserInputParams.ts +0 -14
  538. package/src/app-server/protocol-generated/typescript/v2/ToolRequestUserInputQuestion.ts +0 -16
  539. package/src/app-server/protocol-generated/typescript/v2/ToolRequestUserInputResponse.ts +0 -11
  540. package/src/app-server/protocol-generated/typescript/v2/ToolsV2.ts +0 -6
  541. package/src/app-server/protocol-generated/typescript/v2/Turn.ts +0 -33
  542. package/src/app-server/protocol-generated/typescript/v2/TurnCompletedNotification.ts +0 -6
  543. package/src/app-server/protocol-generated/typescript/v2/TurnDiffUpdatedNotification.ts +0 -9
  544. package/src/app-server/protocol-generated/typescript/v2/TurnEnvironmentParams.ts +0 -6
  545. package/src/app-server/protocol-generated/typescript/v2/TurnError.ts +0 -10
  546. package/src/app-server/protocol-generated/typescript/v2/TurnInterruptParams.ts +0 -5
  547. package/src/app-server/protocol-generated/typescript/v2/TurnInterruptResponse.ts +0 -5
  548. package/src/app-server/protocol-generated/typescript/v2/TurnPlanStep.ts +0 -6
  549. package/src/app-server/protocol-generated/typescript/v2/TurnPlanStepStatus.ts +0 -5
  550. package/src/app-server/protocol-generated/typescript/v2/TurnPlanUpdatedNotification.ts +0 -11
  551. package/src/app-server/protocol-generated/typescript/v2/TurnStartParams.ts +0 -62
  552. package/src/app-server/protocol-generated/typescript/v2/TurnStartResponse.ts +0 -6
  553. package/src/app-server/protocol-generated/typescript/v2/TurnStartedNotification.ts +0 -6
  554. package/src/app-server/protocol-generated/typescript/v2/TurnStatus.ts +0 -5
  555. package/src/app-server/protocol-generated/typescript/v2/TurnSteerParams.ts +0 -13
  556. package/src/app-server/protocol-generated/typescript/v2/TurnSteerResponse.ts +0 -5
  557. package/src/app-server/protocol-generated/typescript/v2/UserInput.ts +0 -18
  558. package/src/app-server/protocol-generated/typescript/v2/WarningNotification.ts +0 -14
  559. package/src/app-server/protocol-generated/typescript/v2/WebSearchAction.ts +0 -9
  560. package/src/app-server/protocol-generated/typescript/v2/WindowsSandboxSetupCompletedNotification.ts +0 -10
  561. package/src/app-server/protocol-generated/typescript/v2/WindowsSandboxSetupMode.ts +0 -5
  562. package/src/app-server/protocol-generated/typescript/v2/WindowsSandboxSetupStartParams.ts +0 -10
  563. package/src/app-server/protocol-generated/typescript/v2/WindowsSandboxSetupStartResponse.ts +0 -5
  564. package/src/app-server/protocol-generated/typescript/v2/WindowsWorldWritableWarningNotification.ts +0 -9
  565. package/src/app-server/protocol-generated/typescript/v2/WriteStatus.ts +0 -5
  566. package/src/app-server/protocol-generated/typescript/v2/index.ts +0 -410
  567. package/src/app-server/protocol-validators.ts +0 -167
  568. package/src/app-server/protocol.ts +0 -110
  569. package/src/app-server/request.ts +0 -45
  570. package/src/app-server/run-attempt.context-engine.test.ts +0 -423
  571. package/src/app-server/run-attempt.test.ts +0 -2354
  572. package/src/app-server/run-attempt.ts +0 -1671
  573. package/src/app-server/run-attempt.vision-tools.test.ts +0 -35
  574. package/src/app-server/schema-normalization-runtime-contract.test.ts +0 -169
  575. package/src/app-server/session-binding.test.ts +0 -52
  576. package/src/app-server/session-binding.ts +0 -131
  577. package/src/app-server/session-history.ts +0 -40
  578. package/src/app-server/shared-client.test.ts +0 -396
  579. package/src/app-server/shared-client.ts +0 -174
  580. package/src/app-server/test-support.ts +0 -48
  581. package/src/app-server/thread-lifecycle.test.ts +0 -59
  582. package/src/app-server/thread-lifecycle.ts +0 -336
  583. package/src/app-server/timeout.ts +0 -22
  584. package/src/app-server/trajectory.test.ts +0 -155
  585. package/src/app-server/trajectory.ts +0 -433
  586. package/src/app-server/transcript-mirror.test.ts +0 -265
  587. package/src/app-server/transcript-mirror.ts +0 -311
  588. package/src/app-server/transcript-repair-runtime-contract.test.ts +0 -44
  589. package/src/app-server/transport-stdio.test.ts +0 -171
  590. package/src/app-server/transport-stdio.ts +0 -107
  591. package/src/app-server/transport-websocket.test.ts +0 -71
  592. package/src/app-server/transport-websocket.ts +0 -90
  593. package/src/app-server/transport.ts +0 -117
  594. package/src/app-server/user-input-bridge.test.ts +0 -137
  595. package/src/app-server/user-input-bridge.ts +0 -294
  596. package/src/app-server/version.ts +0 -3
  597. package/src/app-server/vision-tools.ts +0 -12
  598. package/src/command-formatters.ts +0 -204
  599. package/src/command-handlers.ts +0 -1559
  600. package/src/command-rpc.test.ts +0 -16
  601. package/src/command-rpc.ts +0 -97
  602. package/src/commands.test.ts +0 -1716
  603. package/src/commands.ts +0 -32
  604. package/src/conversation-binding-data.ts +0 -72
  605. package/src/conversation-binding.test.ts +0 -76
  606. package/src/conversation-binding.ts +0 -351
  607. package/src/conversation-control.test.ts +0 -50
  608. package/src/conversation-control.ts +0 -255
  609. package/src/conversation-turn-collector.test.ts +0 -154
  610. package/src/conversation-turn-collector.ts +0 -158
  611. package/src/conversation-turn-input.test.ts +0 -44
  612. package/src/conversation-turn-input.ts +0 -80
  613. package/src/manifest.test.ts +0 -20
  614. package/src/migration/apply.ts +0 -43
  615. package/src/migration/helpers.ts +0 -60
  616. package/src/migration/plan.ts +0 -148
  617. package/src/migration/provider.test.ts +0 -219
  618. package/src/migration/provider.ts +0 -28
  619. package/src/migration/source.ts +0 -176
  620. package/src/migration/targets.ts +0 -25
  621. package/test-api.ts +0 -79
  622. package/tsconfig.json +0 -16
@@ -1,311 +0,0 @@
1
- import { randomUUID } from "node:crypto";
2
- import fs from "node:fs/promises";
3
- import path from "node:path";
4
- import { StringDecoder } from "node:string_decoder";
5
- import { CURRENT_SESSION_VERSION, type SessionManager } from "@mariozechner/pi-coding-agent";
6
- import {
7
- acquireSessionWriteLock,
8
- emitSessionTranscriptUpdate,
9
- resolveSessionWriteLockAcquireTimeoutMs,
10
- runAgentHarnessBeforeMessageWriteHook,
11
- type AgentMessage,
12
- type SessionWriteLockAcquireTimeoutConfig,
13
- } from "openclaw/plugin-sdk/agent-harness-runtime";
14
-
15
- const TRANSCRIPT_APPEND_SCAN_CHUNK_BYTES = 64 * 1024;
16
- const SESSION_MANAGER_APPEND_MAX_BYTES = 8 * 1024 * 1024;
17
-
18
- type TranscriptLeafInfo = {
19
- leafId?: string;
20
- hasParentLinkedEntries: boolean;
21
- nonSessionEntryCount: number;
22
- };
23
-
24
- export async function mirrorCodexAppServerTranscript(params: {
25
- sessionFile: string;
26
- sessionKey?: string;
27
- agentId?: string;
28
- messages: AgentMessage[];
29
- idempotencyScope?: string;
30
- config?: SessionWriteLockAcquireTimeoutConfig;
31
- }): Promise<void> {
32
- const messages = params.messages.filter(
33
- (message) => message.role === "user" || message.role === "assistant",
34
- );
35
- if (messages.length === 0) {
36
- return;
37
- }
38
-
39
- await fs.mkdir(path.dirname(params.sessionFile), { recursive: true });
40
- const lock = await acquireSessionWriteLock({
41
- sessionFile: params.sessionFile,
42
- timeoutMs: resolveSessionWriteLockAcquireTimeoutMs(params.config),
43
- });
44
- try {
45
- const existingIdempotencyKeys = await readTranscriptIdempotencyKeys(params.sessionFile);
46
- for (const [index, message] of messages.entries()) {
47
- const idempotencyKey = params.idempotencyScope
48
- ? `${params.idempotencyScope}:${message.role}:${index}`
49
- : undefined;
50
- if (idempotencyKey && existingIdempotencyKeys.has(idempotencyKey)) {
51
- continue;
52
- }
53
- const transcriptMessage = {
54
- ...message,
55
- ...(idempotencyKey ? { idempotencyKey } : {}),
56
- } as Parameters<SessionManager["appendMessage"]>[0];
57
- const nextMessage = runAgentHarnessBeforeMessageWriteHook({
58
- message: transcriptMessage,
59
- agentId: params.agentId,
60
- sessionKey: params.sessionKey,
61
- });
62
- if (!nextMessage) {
63
- continue;
64
- }
65
- const messageToAppend = (idempotencyKey
66
- ? {
67
- ...(nextMessage as unknown as Record<string, unknown>),
68
- idempotencyKey,
69
- }
70
- : nextMessage) as unknown as Parameters<SessionManager["appendMessage"]>[0];
71
- await appendCodexAppServerTranscriptMessage({
72
- transcriptPath: params.sessionFile,
73
- message: messageToAppend,
74
- });
75
- if (idempotencyKey) {
76
- existingIdempotencyKeys.add(idempotencyKey);
77
- }
78
- }
79
- } finally {
80
- await lock.release();
81
- }
82
-
83
- if (params.sessionKey) {
84
- emitSessionTranscriptUpdate({ sessionFile: params.sessionFile, sessionKey: params.sessionKey });
85
- } else {
86
- emitSessionTranscriptUpdate(params.sessionFile);
87
- }
88
- }
89
-
90
- async function appendCodexAppServerTranscriptMessage(params: {
91
- transcriptPath: string;
92
- message: unknown;
93
- }): Promise<void> {
94
- await ensureTranscriptHeader(params.transcriptPath);
95
- const stat = await fs.stat(params.transcriptPath).catch(() => null);
96
- let leafInfo: TranscriptLeafInfo = await readTranscriptLeafInfo(params.transcriptPath).catch(
97
- () => ({
98
- hasParentLinkedEntries: false,
99
- nonSessionEntryCount: 0,
100
- }),
101
- );
102
- const hasLinearEntries = !leafInfo.hasParentLinkedEntries && leafInfo.nonSessionEntryCount > 0;
103
- const shouldRawAppend = hasLinearEntries && (stat?.size ?? 0) > SESSION_MANAGER_APPEND_MAX_BYTES;
104
- if (hasLinearEntries && !shouldRawAppend) {
105
- const migrated = await migrateLinearTranscriptToParentLinked(params.transcriptPath);
106
- leafInfo = {
107
- ...(migrated.leafId ? { leafId: migrated.leafId } : {}),
108
- hasParentLinkedEntries: Boolean(migrated.leafId),
109
- nonSessionEntryCount: leafInfo.nonSessionEntryCount,
110
- };
111
- }
112
- const entry = {
113
- type: "message",
114
- id: randomUUID(),
115
- ...(shouldRawAppend ? {} : { parentId: leafInfo.leafId ?? null }),
116
- timestamp: new Date().toISOString(),
117
- message: params.message,
118
- };
119
- await fs.appendFile(params.transcriptPath, `${JSON.stringify(entry)}\n`, "utf-8");
120
- }
121
-
122
- async function ensureTranscriptHeader(transcriptPath: string): Promise<void> {
123
- const stat = await fs.stat(transcriptPath).catch(() => null);
124
- if (stat?.isFile() && stat.size > 0) {
125
- return;
126
- }
127
- await fs.mkdir(path.dirname(transcriptPath), { recursive: true });
128
- const header = {
129
- type: "session",
130
- version: CURRENT_SESSION_VERSION,
131
- id: randomUUID(),
132
- timestamp: new Date().toISOString(),
133
- cwd: process.cwd(),
134
- };
135
- await fs.writeFile(transcriptPath, `${JSON.stringify(header)}\n`, {
136
- encoding: "utf-8",
137
- mode: 0o600,
138
- flag: stat?.isFile() ? "w" : "wx",
139
- });
140
- }
141
-
142
- async function readTranscriptLeafInfo(transcriptPath: string): Promise<TranscriptLeafInfo> {
143
- const handle = await fs.open(transcriptPath, "r");
144
- try {
145
- const decoder = new StringDecoder("utf8");
146
- const buffer = Buffer.allocUnsafe(TRANSCRIPT_APPEND_SCAN_CHUNK_BYTES);
147
- let carry = "";
148
- let leafId: string | undefined;
149
- let hasParentLinkedEntries = false;
150
- let nonSessionEntryCount = 0;
151
- while (true) {
152
- const { bytesRead } = await handle.read(buffer, 0, buffer.length, null);
153
- if (bytesRead <= 0) {
154
- break;
155
- }
156
- const text = carry + decoder.write(buffer.subarray(0, bytesRead));
157
- const lines = text.split(/\r?\n/);
158
- carry = lines.pop() ?? "";
159
- for (const line of lines) {
160
- if (lineHasNonSessionEntry(line)) {
161
- nonSessionEntryCount += 1;
162
- }
163
- const id = lineParentLinkedEntryId(line);
164
- if (id) {
165
- leafId = id;
166
- hasParentLinkedEntries = true;
167
- }
168
- }
169
- await yieldTranscriptAppendScan();
170
- }
171
- const tail = carry + decoder.end();
172
- if (lineHasNonSessionEntry(tail)) {
173
- nonSessionEntryCount += 1;
174
- }
175
- const id = lineParentLinkedEntryId(tail);
176
- if (id) {
177
- leafId = id;
178
- hasParentLinkedEntries = true;
179
- }
180
- return {
181
- ...(leafId ? { leafId } : {}),
182
- hasParentLinkedEntries,
183
- nonSessionEntryCount,
184
- };
185
- } finally {
186
- await handle.close();
187
- }
188
- }
189
-
190
- async function migrateLinearTranscriptToParentLinked(transcriptPath: string): Promise<{
191
- leafId?: string;
192
- }> {
193
- const raw = await fs.readFile(transcriptPath, "utf-8");
194
- const existingIds = new Set<string>();
195
- const output: string[] = [];
196
- let previousId: string | null = null;
197
- let leafId: string | undefined;
198
- for (const line of raw.split(/\r?\n/)) {
199
- if (!line.trim()) {
200
- continue;
201
- }
202
- let parsed: unknown;
203
- try {
204
- parsed = JSON.parse(line);
205
- } catch {
206
- output.push(line);
207
- continue;
208
- }
209
- if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
210
- output.push(line);
211
- continue;
212
- }
213
- const record = parsed as Record<string, unknown>;
214
- if (record.type === "session") {
215
- output.push(JSON.stringify({ ...record, version: CURRENT_SESSION_VERSION }));
216
- continue;
217
- }
218
- const id = normalizeEntryId(record.id) ?? generateEntryId(existingIds);
219
- existingIds.add(id);
220
- record.id = id;
221
- if (!Object.hasOwn(record, "parentId")) {
222
- record.parentId = previousId;
223
- }
224
- previousId = id;
225
- leafId = id;
226
- output.push(JSON.stringify(record));
227
- }
228
- await fs.writeFile(transcriptPath, `${output.join("\n")}\n`, {
229
- encoding: "utf-8",
230
- mode: 0o600,
231
- });
232
- const result: { leafId?: string } = {};
233
- if (leafId) {
234
- result.leafId = leafId;
235
- }
236
- return result;
237
- }
238
-
239
- function normalizeEntryId(value: unknown): string | undefined {
240
- return typeof value === "string" && value.trim().length > 0 ? value : undefined;
241
- }
242
-
243
- function generateEntryId(existingIds: Set<string>): string {
244
- for (let attempt = 0; attempt < 100; attempt += 1) {
245
- const id = randomUUID().slice(0, 8);
246
- if (!existingIds.has(id)) {
247
- existingIds.add(id);
248
- return id;
249
- }
250
- }
251
- const id = randomUUID();
252
- existingIds.add(id);
253
- return id;
254
- }
255
-
256
- function lineHasNonSessionEntry(line: string): boolean {
257
- if (!line.trim()) {
258
- return false;
259
- }
260
- try {
261
- const parsed = JSON.parse(line) as { type?: unknown };
262
- return parsed.type !== "session";
263
- } catch {
264
- return false;
265
- }
266
- }
267
-
268
- function lineParentLinkedEntryId(line: string): string | undefined {
269
- if (!line.trim()) {
270
- return undefined;
271
- }
272
- try {
273
- const parsed = JSON.parse(line) as { type?: unknown; id?: unknown; parentId?: unknown };
274
- return parsed.type !== "session" && typeof parsed.id === "string" && "parentId" in parsed
275
- ? parsed.id
276
- : undefined;
277
- } catch {
278
- return undefined;
279
- }
280
- }
281
-
282
- async function yieldTranscriptAppendScan(): Promise<void> {
283
- await new Promise<void>((resolve) => setImmediate(resolve));
284
- }
285
-
286
- async function readTranscriptIdempotencyKeys(sessionFile: string): Promise<Set<string>> {
287
- const keys = new Set<string>();
288
- let raw: string;
289
- try {
290
- raw = await fs.readFile(sessionFile, "utf8");
291
- } catch (error) {
292
- if ((error as NodeJS.ErrnoException).code !== "ENOENT") {
293
- throw error;
294
- }
295
- return keys;
296
- }
297
- for (const line of raw.split(/\r?\n/)) {
298
- if (!line.trim()) {
299
- continue;
300
- }
301
- try {
302
- const parsed = JSON.parse(line) as { message?: { idempotencyKey?: unknown } };
303
- if (typeof parsed.message?.idempotencyKey === "string") {
304
- keys.add(parsed.message.idempotencyKey);
305
- }
306
- } catch {
307
- continue;
308
- }
309
- }
310
- return keys;
311
- }
@@ -1,44 +0,0 @@
1
- import {
2
- assistantHistoryMessage,
3
- currentPromptHistoryMessage,
4
- mediaOnlyHistoryMessage,
5
- structuredHistoryMessage,
6
- } from "openclaw/plugin-sdk/agent-runtime-test-contracts";
7
- import { describe, expect, it } from "vitest";
8
- import { projectContextEngineAssemblyForCodex } from "./context-engine-projection.js";
9
-
10
- describe("Codex transcript projection runtime contract", () => {
11
- it("drops only the duplicate trailing current prompt while preserving prior structured context", () => {
12
- const prompt = "newest inbound message";
13
-
14
- const result = projectContextEngineAssemblyForCodex({
15
- prompt,
16
- originalHistoryMessages: [structuredHistoryMessage()],
17
- assembledMessages: [
18
- structuredHistoryMessage(),
19
- assistantHistoryMessage(),
20
- currentPromptHistoryMessage(prompt),
21
- ],
22
- });
23
-
24
- expect(result.promptText).toContain("Current user request:\nnewest inbound message");
25
- expect(result.promptText).toContain("[user]\nolder structured context\n[image omitted]");
26
- expect(result.promptText).toContain("[assistant]\nack");
27
- expect(result.promptText).not.toContain("[user]\nnewest inbound message");
28
- });
29
-
30
- it("keeps media-only user history visible as omitted media instead of dropping the turn", () => {
31
- const result = projectContextEngineAssemblyForCodex({
32
- prompt: "newest inbound message",
33
- originalHistoryMessages: [mediaOnlyHistoryMessage()],
34
- assembledMessages: [
35
- mediaOnlyHistoryMessage(),
36
- currentPromptHistoryMessage("newest inbound message"),
37
- ],
38
- });
39
-
40
- expect(result.promptText).toContain("[user]\n[image omitted]");
41
- expect(result.promptText).not.toContain("data:image/png");
42
- expect(result.promptText).not.toContain("bbbb");
43
- });
44
- });
@@ -1,171 +0,0 @@
1
- import { mkdir, mkdtemp, rm, writeFile } from "node:fs/promises";
2
- import os from "node:os";
3
- import path from "node:path";
4
- import { afterEach, describe, expect, it } from "vitest";
5
- import type { CodexAppServerStartOptions } from "./config.js";
6
- import {
7
- resolveCodexAppServerSpawnEnv,
8
- resolveCodexAppServerSpawnInvocation,
9
- } from "./transport-stdio.js";
10
-
11
- const tempDirs: string[] = [];
12
-
13
- async function createTempDir(): Promise<string> {
14
- const dir = await mkdtemp(path.join(os.tmpdir(), "openclaw-codex-spawn-"));
15
- tempDirs.push(dir);
16
- return dir;
17
- }
18
-
19
- afterEach(async () => {
20
- for (const dir of tempDirs.splice(0)) {
21
- await rm(dir, { recursive: true, force: true });
22
- }
23
- });
24
-
25
- function startOptions(command: string): CodexAppServerStartOptions {
26
- return {
27
- transport: "stdio",
28
- command,
29
- args: ["app-server", "--listen", "stdio://"],
30
- headers: {},
31
- };
32
- }
33
-
34
- describe("resolveCodexAppServerSpawnInvocation", () => {
35
- it("keeps non-Windows Codex app-server invocation unchanged", () => {
36
- const resolved = resolveCodexAppServerSpawnInvocation(startOptions("codex"), {
37
- platform: "darwin",
38
- env: {},
39
- execPath: "/usr/local/bin/node",
40
- });
41
-
42
- expect(resolved).toEqual({
43
- command: "codex",
44
- args: ["app-server", "--listen", "stdio://"],
45
- shell: undefined,
46
- windowsHide: undefined,
47
- });
48
- });
49
-
50
- it("requires managed Codex commands to be resolved before spawn", () => {
51
- expect(() =>
52
- resolveCodexAppServerSpawnInvocation(
53
- {
54
- ...startOptions("codex"),
55
- commandSource: "managed",
56
- },
57
- {
58
- platform: "darwin",
59
- env: {},
60
- execPath: "/usr/local/bin/node",
61
- },
62
- ),
63
- ).toThrow("must be resolved before spawn");
64
- });
65
-
66
- it("resolves Windows npm .cmd Codex shims through Node instead of raw spawn", async () => {
67
- const binDir = await createTempDir();
68
- const entryPath = path.join(binDir, "node_modules", "@openai", "codex", "bin", "codex.js");
69
- const shimPath = path.join(binDir, "codex.cmd");
70
- await mkdir(path.dirname(entryPath), { recursive: true });
71
- await writeFile(entryPath, "console.log('codex')\n", "utf8");
72
- await writeFile(
73
- shimPath,
74
- '@ECHO off\r\n"%~dp0\\node_modules\\@openai\\codex\\bin\\codex.js" %*\r\n',
75
- "utf8",
76
- );
77
-
78
- const resolved = resolveCodexAppServerSpawnInvocation(startOptions("codex"), {
79
- platform: "win32",
80
- env: { PATH: binDir, PATHEXT: ".CMD;.EXE;.BAT" },
81
- execPath: "C:\\node\\node.exe",
82
- });
83
-
84
- expect(resolved).toEqual({
85
- command: "C:\\node\\node.exe",
86
- args: [entryPath, "app-server", "--listen", "stdio://"],
87
- shell: undefined,
88
- windowsHide: true,
89
- });
90
- });
91
- });
92
-
93
- describe("resolveCodexAppServerSpawnEnv", () => {
94
- it("applies configured env overrides before clearing denied env vars", () => {
95
- expect({
96
- ...resolveCodexAppServerSpawnEnv(
97
- {
98
- env: {
99
- OPENAI_API_KEY: "configured-openai-key",
100
- KEEP: "override",
101
- },
102
- clearEnv: ["OPENAI_API_KEY", "CODEX_API_KEY", "MISSING"],
103
- },
104
- {
105
- OPENAI_API_KEY: "parent-openai-key",
106
- CODEX_API_KEY: "parent-codex-key",
107
- KEEP: "parent",
108
- },
109
- ),
110
- }).toEqual({
111
- KEEP: "override",
112
- });
113
- });
114
-
115
- it("clears denied env vars case-insensitively on Windows", () => {
116
- expect({
117
- ...resolveCodexAppServerSpawnEnv(
118
- {
119
- env: {
120
- OpenAI_Api_Key: "configured-openai-key",
121
- Other: "configured",
122
- },
123
- clearEnv: ["OPENAI_API_KEY", " CODEX_API_KEY ", ""],
124
- },
125
- {
126
- Codex_Api_Key: "parent-codex-key",
127
- KEEP: "parent",
128
- },
129
- "win32",
130
- ),
131
- }).toEqual({
132
- KEEP: "parent",
133
- Other: "configured",
134
- });
135
- });
136
-
137
- it("uses a null-prototype env map and ignores prototype-polluting keys", () => {
138
- const overrides = Object.create(null) as Record<string, string | undefined>;
139
- Object.defineProperty(overrides, "__proto__", {
140
- value: "polluted",
141
- enumerable: true,
142
- });
143
- Object.defineProperty(overrides, "constructor", {
144
- value: "polluted",
145
- enumerable: true,
146
- });
147
- Object.defineProperty(overrides, "prototype", {
148
- value: "polluted",
149
- enumerable: true,
150
- });
151
- overrides.SAFE = "1";
152
-
153
- const env = resolveCodexAppServerSpawnEnv(
154
- {
155
- env: overrides as Record<string, string>,
156
- },
157
- {
158
- BASE: "1",
159
- },
160
- );
161
-
162
- expect(Object.getPrototypeOf(env)).toBeNull();
163
- expect({ ...env }).toEqual({
164
- BASE: "1",
165
- SAFE: "1",
166
- });
167
- expect(Object.hasOwn(env, "__proto__")).toBe(false);
168
- expect(Object.hasOwn(env, "constructor")).toBe(false);
169
- expect(Object.hasOwn(env, "prototype")).toBe(false);
170
- });
171
- });
@@ -1,107 +0,0 @@
1
- import { spawn } from "node:child_process";
2
- import {
3
- materializeWindowsSpawnProgram,
4
- resolveWindowsSpawnProgram,
5
- } from "openclaw/plugin-sdk/windows-spawn";
6
- import type { CodexAppServerStartOptions } from "./config.js";
7
- import type { CodexAppServerTransport } from "./transport.js";
8
-
9
- const UNSAFE_ENVIRONMENT_KEYS = new Set(["__proto__", "constructor", "prototype"]);
10
-
11
- type CodexAppServerSpawnRuntime = {
12
- platform: NodeJS.Platform;
13
- env: NodeJS.ProcessEnv;
14
- execPath: string;
15
- };
16
-
17
- const DEFAULT_SPAWN_RUNTIME: CodexAppServerSpawnRuntime = {
18
- platform: process.platform,
19
- env: process.env,
20
- execPath: process.execPath,
21
- };
22
-
23
- export function resolveCodexAppServerSpawnInvocation(
24
- options: CodexAppServerStartOptions,
25
- runtime: CodexAppServerSpawnRuntime = DEFAULT_SPAWN_RUNTIME,
26
- ): { command: string; args: string[]; shell?: boolean; windowsHide?: boolean } {
27
- if (options.commandSource === "managed") {
28
- throw new Error("Managed Codex app-server start options must be resolved before spawn.");
29
- }
30
- const program = resolveWindowsSpawnProgram({
31
- command: options.command,
32
- platform: runtime.platform,
33
- env: runtime.env,
34
- execPath: runtime.execPath,
35
- packageName: "@openai/codex",
36
- });
37
- const resolved = materializeWindowsSpawnProgram(program, options.args);
38
- return {
39
- command: resolved.command,
40
- args: resolved.argv,
41
- shell: resolved.shell,
42
- windowsHide: resolved.windowsHide,
43
- };
44
- }
45
-
46
- export function resolveCodexAppServerSpawnEnv(
47
- options: Pick<CodexAppServerStartOptions, "env" | "clearEnv">,
48
- baseEnv: NodeJS.ProcessEnv = process.env,
49
- platform: NodeJS.Platform = process.platform,
50
- ): NodeJS.ProcessEnv {
51
- const env = Object.create(null) as NodeJS.ProcessEnv;
52
- copySafeEnvironmentEntries(env, baseEnv);
53
- copySafeEnvironmentEntries(env, options.env ?? {});
54
- const keysToClear = normalizedEnvironmentKeys(options.clearEnv ?? []);
55
- if (platform === "win32") {
56
- const lowerCaseKeysToClear = new Set(keysToClear.map((key) => key.toLowerCase()));
57
- for (const candidate of Object.keys(env)) {
58
- if (lowerCaseKeysToClear.has(candidate.toLowerCase())) {
59
- delete env[candidate];
60
- }
61
- }
62
- } else {
63
- for (const key of keysToClear) {
64
- delete env[key];
65
- }
66
- }
67
- return env;
68
- }
69
-
70
- function normalizedEnvironmentKeys(rawKeys: readonly string[]): string[] {
71
- const keys: string[] = [];
72
- for (const rawKey of rawKeys) {
73
- const key = rawKey.trim();
74
- if (key.length > 0) {
75
- keys.push(key);
76
- }
77
- }
78
- return keys;
79
- }
80
-
81
- function copySafeEnvironmentEntries(
82
- target: NodeJS.ProcessEnv,
83
- source: NodeJS.ProcessEnv | Record<string, string | undefined>,
84
- ): void {
85
- for (const [key, value] of Object.entries(source)) {
86
- if (UNSAFE_ENVIRONMENT_KEYS.has(key)) {
87
- continue;
88
- }
89
- target[key] = value;
90
- }
91
- }
92
-
93
- export function createStdioTransport(options: CodexAppServerStartOptions): CodexAppServerTransport {
94
- const env = resolveCodexAppServerSpawnEnv(options);
95
- const invocation = resolveCodexAppServerSpawnInvocation(options, {
96
- platform: process.platform,
97
- env,
98
- execPath: process.execPath,
99
- });
100
- return spawn(invocation.command, invocation.args, {
101
- env,
102
- detached: process.platform !== "win32",
103
- shell: invocation.shell,
104
- stdio: ["pipe", "pipe", "pipe"],
105
- windowsHide: invocation.windowsHide,
106
- });
107
- }
@@ -1,71 +0,0 @@
1
- import { afterEach, describe, expect, it } from "vitest";
2
- import { WebSocketServer, type RawData } from "ws";
3
- import { CodexAppServerClient } from "./client.js";
4
-
5
- describe("Codex app-server websocket transport", () => {
6
- const clients: CodexAppServerClient[] = [];
7
- const servers: WebSocketServer[] = [];
8
-
9
- afterEach(async () => {
10
- for (const client of clients) {
11
- client.close();
12
- }
13
- clients.length = 0;
14
- await Promise.all(
15
- servers
16
- .splice(0)
17
- .map(
18
- (server) =>
19
- new Promise<void>((resolve, reject) =>
20
- server.close((error) => (error ? reject(error) : resolve())),
21
- ),
22
- ),
23
- );
24
- });
25
-
26
- it("can speak JSON-RPC over websocket transport", async () => {
27
- const server = new WebSocketServer({ host: "127.0.0.1", port: 0 });
28
- servers.push(server);
29
- const authHeaders: Array<string | undefined> = [];
30
- server.on("connection", (socket, request) => {
31
- authHeaders.push(request.headers.authorization);
32
- socket.on("message", (data) => {
33
- const message = JSON.parse(rawDataToText(data)) as { id?: number; method?: string };
34
- if (message.method === "initialize") {
35
- socket.send(
36
- JSON.stringify({ id: message.id, result: { userAgent: "openclaw/0.125.0" } }),
37
- );
38
- return;
39
- }
40
- if (message.method === "model/list") {
41
- socket.send(JSON.stringify({ id: message.id, result: { data: [] } }));
42
- }
43
- });
44
- });
45
- await new Promise<void>((resolve) => server.once("listening", resolve));
46
- const address = server.address();
47
- if (!address || typeof address === "string") {
48
- throw new Error("expected websocket test server port");
49
- }
50
- const client = CodexAppServerClient.start({
51
- transport: "websocket",
52
- url: `ws://127.0.0.1:${address.port}`,
53
- authToken: "secret",
54
- });
55
- clients.push(client);
56
-
57
- await expect(client.initialize()).resolves.toBeUndefined();
58
- await expect(client.request("model/list", {})).resolves.toEqual({ data: [] });
59
- expect(authHeaders).toEqual(["Bearer secret"]);
60
- });
61
- });
62
-
63
- function rawDataToText(data: RawData): string {
64
- if (Array.isArray(data)) {
65
- return Buffer.concat(data).toString("utf8");
66
- }
67
- if (data instanceof ArrayBuffer) {
68
- return Buffer.from(new Uint8Array(data)).toString("utf8");
69
- }
70
- return Buffer.from(data).toString("utf8");
71
- }