clawdex-mobile 5.0.0 → 5.0.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 (572) hide show
  1. package/README.md +4 -0
  2. package/docs/setup-and-operations.md +3 -1
  3. package/docs/troubleshooting.md +1 -0
  4. package/package.json +18 -8
  5. package/scripts/setup-secure-dev.sh +26 -17
  6. package/services/rust-bridge/Cargo.lock +1 -1
  7. package/services/rust-bridge/Cargo.toml +1 -1
  8. package/vendor/bridge-binaries/darwin-arm64/codex-rust-bridge +0 -0
  9. package/{codex-rust-bridge → vendor/bridge-binaries/darwin-x64/codex-rust-bridge} +0 -0
  10. package/vendor/bridge-binaries/linux-x64/codex-rust-bridge +0 -0
  11. package/{codex-rust-bridge.exe → vendor/bridge-binaries/win32-x64/codex-rust-bridge.exe} +0 -0
  12. package/.github/workflows/ci.yml +0 -80
  13. package/.github/workflows/npm-release.yml +0 -176
  14. package/.github/workflows/pages.yml +0 -41
  15. package/AGENTS.md +0 -273
  16. package/STATUS.md +0 -115
  17. package/apps/mobile/.env.example +0 -6
  18. package/apps/mobile/App.tsx +0 -943
  19. package/apps/mobile/app.json +0 -77
  20. package/apps/mobile/assets/brand/adaptive-icon.png +0 -0
  21. package/apps/mobile/assets/brand/app-icon.png +0 -0
  22. package/apps/mobile/assets/brand/favicon.png +0 -0
  23. package/apps/mobile/assets/brand/mark.png +0 -0
  24. package/apps/mobile/assets/brand/splash-icon-white.png +0 -0
  25. package/apps/mobile/assets/brand/splash-icon.png +0 -0
  26. package/apps/mobile/babel.config.js +0 -7
  27. package/apps/mobile/eas.json +0 -40
  28. package/apps/mobile/eslint.config.cjs +0 -28
  29. package/apps/mobile/index.js +0 -5
  30. package/apps/mobile/package.json +0 -57
  31. package/apps/mobile/plugins/withAndroidCleartextTraffic.js +0 -14
  32. package/apps/mobile/src/api/__tests__/chatMapping.test.ts +0 -351
  33. package/apps/mobile/src/api/__tests__/client.test.ts +0 -1494
  34. package/apps/mobile/src/api/__tests__/ws.test.ts +0 -640
  35. package/apps/mobile/src/api/account.ts +0 -47
  36. package/apps/mobile/src/api/chatMapping.ts +0 -1048
  37. package/apps/mobile/src/api/client.ts +0 -1430
  38. package/apps/mobile/src/api/rateLimits.ts +0 -143
  39. package/apps/mobile/src/api/types.ts +0 -435
  40. package/apps/mobile/src/api/ws.ts +0 -852
  41. package/apps/mobile/src/bridgeUrl.ts +0 -105
  42. package/apps/mobile/src/components/ActivityBar.tsx +0 -95
  43. package/apps/mobile/src/components/ApprovalBanner.tsx +0 -207
  44. package/apps/mobile/src/components/BrandMark.tsx +0 -43
  45. package/apps/mobile/src/components/ChatHeader.tsx +0 -107
  46. package/apps/mobile/src/components/ChatInput.tsx +0 -457
  47. package/apps/mobile/src/components/ChatMessage.tsx +0 -959
  48. package/apps/mobile/src/components/ComposerUsageLimits.tsx +0 -167
  49. package/apps/mobile/src/components/SelectionSheet.tsx +0 -466
  50. package/apps/mobile/src/components/StatusLine.tsx +0 -52
  51. package/apps/mobile/src/components/ToolBlock.tsx +0 -67
  52. package/apps/mobile/src/components/TypingIndicator.tsx +0 -64
  53. package/apps/mobile/src/components/VoiceRecordingWaveform.tsx +0 -181
  54. package/apps/mobile/src/components/WorkspacePickerModal.tsx +0 -812
  55. package/apps/mobile/src/components/__tests__/chat-input-layout.test.ts +0 -35
  56. package/apps/mobile/src/components/__tests__/chatImageSource.test.ts +0 -44
  57. package/apps/mobile/src/components/__tests__/composerUsageLimits.test.ts +0 -138
  58. package/apps/mobile/src/components/__tests__/voiceWaveform.test.ts +0 -31
  59. package/apps/mobile/src/components/chat-input-layout.ts +0 -59
  60. package/apps/mobile/src/components/chatImageSource.ts +0 -86
  61. package/apps/mobile/src/components/usageLimitBadges.ts +0 -109
  62. package/apps/mobile/src/components/voiceWaveform.ts +0 -46
  63. package/apps/mobile/src/config.ts +0 -64
  64. package/apps/mobile/src/hooks/useVoiceRecorder.ts +0 -271
  65. package/apps/mobile/src/navigation/DrawerContent.tsx +0 -1129
  66. package/apps/mobile/src/navigation/__tests__/chatThreadTree.test.ts +0 -89
  67. package/apps/mobile/src/navigation/__tests__/drawerChats.test.ts +0 -65
  68. package/apps/mobile/src/navigation/chatThreadTree.ts +0 -191
  69. package/apps/mobile/src/navigation/drawerChats.ts +0 -9
  70. package/apps/mobile/src/screens/GitScreen.tsx +0 -1489
  71. package/apps/mobile/src/screens/MainScreen.tsx +0 -10511
  72. package/apps/mobile/src/screens/OnboardingScreen.tsx +0 -1746
  73. package/apps/mobile/src/screens/PrivacyScreen.tsx +0 -196
  74. package/apps/mobile/src/screens/SettingsScreen.tsx +0 -870
  75. package/apps/mobile/src/screens/TerminalScreen.tsx +0 -248
  76. package/apps/mobile/src/screens/TermsScreen.tsx +0 -192
  77. package/apps/mobile/src/screens/__tests__/agentThreadDisplay.test.ts +0 -80
  78. package/apps/mobile/src/screens/__tests__/agentThreads.test.ts +0 -170
  79. package/apps/mobile/src/screens/__tests__/gitDiff.test.ts +0 -131
  80. package/apps/mobile/src/screens/__tests__/planCardState.test.ts +0 -88
  81. package/apps/mobile/src/screens/__tests__/subAgentTranscript.test.ts +0 -102
  82. package/apps/mobile/src/screens/__tests__/transcriptMessages.test.ts +0 -97
  83. package/apps/mobile/src/screens/agentThreadDisplay.ts +0 -261
  84. package/apps/mobile/src/screens/agentThreads.ts +0 -167
  85. package/apps/mobile/src/screens/gitDiff.ts +0 -380
  86. package/apps/mobile/src/screens/planCardState.ts +0 -40
  87. package/apps/mobile/src/screens/subAgentTranscript.ts +0 -149
  88. package/apps/mobile/src/screens/transcriptMessages.ts +0 -102
  89. package/apps/mobile/src/theme.ts +0 -106
  90. package/apps/mobile/src/types/assets.d.ts +0 -4
  91. package/apps/mobile/tsconfig.json +0 -33
  92. package/docs/app-review-notes.md +0 -116
  93. package/docs/codex-app-server-cli-gap-tracker.md +0 -90
  94. package/docs/eas-builds.md +0 -91
  95. package/docs/open-source-license-requirements.md +0 -32
  96. package/docs/plans/2026-02-20-codex-desktop-style-redesign.md +0 -190
  97. package/docs/plans/2026-02-20-codex-mobile-implementation.md +0 -1630
  98. package/docs/plans/2026-02-21-codex-ui-redesign-design.md +0 -101
  99. package/docs/plans/2026-02-21-codex-ui-redesign.md +0 -1229
  100. package/docs/privacy-policy.md +0 -54
  101. package/docs/realtime-streaming-limitations.md +0 -161
  102. package/docs/terms-of-service.md +0 -33
  103. package/docs/voice-transcription.md +0 -87
  104. package/scripts/codex-live-demo.sh +0 -69
  105. package/scripts/start-bridge-secure.sh +0 -5
  106. package/scripts/start-expo.sh +0 -176
  107. package/scripts/sync-versions.js +0 -63
  108. package/scripts/teardown.sh +0 -136
  109. package/services/mac-bridge/.env.example +0 -10
  110. package/services/mac-bridge/codex-types/AbsolutePathBuf.ts +0 -14
  111. package/services/mac-bridge/codex-types/AddConversationListenerParams.ts +0 -6
  112. package/services/mac-bridge/codex-types/AddConversationSubscriptionResponse.ts +0 -5
  113. package/services/mac-bridge/codex-types/AgentMessageContent.ts +0 -5
  114. package/services/mac-bridge/codex-types/AgentMessageContentDeltaEvent.ts +0 -5
  115. package/services/mac-bridge/codex-types/AgentMessageDeltaEvent.ts +0 -5
  116. package/services/mac-bridge/codex-types/AgentMessageEvent.ts +0 -5
  117. package/services/mac-bridge/codex-types/AgentMessageItem.ts +0 -21
  118. package/services/mac-bridge/codex-types/AgentReasoningDeltaEvent.ts +0 -5
  119. package/services/mac-bridge/codex-types/AgentReasoningEvent.ts +0 -5
  120. package/services/mac-bridge/codex-types/AgentReasoningRawContentDeltaEvent.ts +0 -5
  121. package/services/mac-bridge/codex-types/AgentReasoningRawContentEvent.ts +0 -5
  122. package/services/mac-bridge/codex-types/AgentReasoningSectionBreakEvent.ts +0 -5
  123. package/services/mac-bridge/codex-types/AgentStatus.ts +0 -8
  124. package/services/mac-bridge/codex-types/ApplyPatchApprovalParams.ts +0 -21
  125. package/services/mac-bridge/codex-types/ApplyPatchApprovalRequestEvent.ts +0 -23
  126. package/services/mac-bridge/codex-types/ApplyPatchApprovalResponse.ts +0 -6
  127. package/services/mac-bridge/codex-types/ArchiveConversationParams.ts +0 -6
  128. package/services/mac-bridge/codex-types/ArchiveConversationResponse.ts +0 -5
  129. package/services/mac-bridge/codex-types/AskForApproval.ts +0 -9
  130. package/services/mac-bridge/codex-types/AuthMode.ts +0 -8
  131. package/services/mac-bridge/codex-types/AuthStatusChangeNotification.ts +0 -9
  132. package/services/mac-bridge/codex-types/BackgroundEventEvent.ts +0 -5
  133. package/services/mac-bridge/codex-types/ByteRange.ts +0 -13
  134. package/services/mac-bridge/codex-types/CallToolResult.ts +0 -9
  135. package/services/mac-bridge/codex-types/CancelLoginChatGptParams.ts +0 -5
  136. package/services/mac-bridge/codex-types/CancelLoginChatGptResponse.ts +0 -5
  137. package/services/mac-bridge/codex-types/ClientInfo.ts +0 -5
  138. package/services/mac-bridge/codex-types/ClientNotification.ts +0 -5
  139. package/services/mac-bridge/codex-types/ClientRequest.ts +0 -60
  140. package/services/mac-bridge/codex-types/CodexErrorInfo.ts +0 -8
  141. package/services/mac-bridge/codex-types/CollabAgentInteractionBeginEvent.ts +0 -23
  142. package/services/mac-bridge/codex-types/CollabAgentInteractionEndEvent.ts +0 -28
  143. package/services/mac-bridge/codex-types/CollabAgentSpawnBeginEvent.ts +0 -19
  144. package/services/mac-bridge/codex-types/CollabAgentSpawnEndEvent.ts +0 -28
  145. package/services/mac-bridge/codex-types/CollabCloseBeginEvent.ts +0 -18
  146. package/services/mac-bridge/codex-types/CollabCloseEndEvent.ts +0 -24
  147. package/services/mac-bridge/codex-types/CollabResumeBeginEvent.ts +0 -18
  148. package/services/mac-bridge/codex-types/CollabResumeEndEvent.ts +0 -24
  149. package/services/mac-bridge/codex-types/CollabWaitingBeginEvent.ts +0 -18
  150. package/services/mac-bridge/codex-types/CollabWaitingEndEvent.ts +0 -19
  151. package/services/mac-bridge/codex-types/CollaborationMode.ts +0 -10
  152. package/services/mac-bridge/codex-types/CollaborationModeMask.ts +0 -11
  153. package/services/mac-bridge/codex-types/ContentItem.ts +0 -5
  154. package/services/mac-bridge/codex-types/ContextCompactedEvent.ts +0 -5
  155. package/services/mac-bridge/codex-types/ContextCompactionItem.ts +0 -5
  156. package/services/mac-bridge/codex-types/ConversationGitInfo.ts +0 -5
  157. package/services/mac-bridge/codex-types/ConversationSummary.ts +0 -8
  158. package/services/mac-bridge/codex-types/CreditsSnapshot.ts +0 -5
  159. package/services/mac-bridge/codex-types/CustomPrompt.ts +0 -5
  160. package/services/mac-bridge/codex-types/DeprecationNoticeEvent.ts +0 -13
  161. package/services/mac-bridge/codex-types/DynamicToolCallRequest.ts +0 -6
  162. package/services/mac-bridge/codex-types/ElicitationRequestEvent.ts +0 -5
  163. package/services/mac-bridge/codex-types/ErrorEvent.ts +0 -6
  164. package/services/mac-bridge/codex-types/EventMsg.ts +0 -78
  165. package/services/mac-bridge/codex-types/ExecApprovalRequestEvent.ts +0 -44
  166. package/services/mac-bridge/codex-types/ExecCommandApprovalParams.ts +0 -16
  167. package/services/mac-bridge/codex-types/ExecCommandApprovalResponse.ts +0 -6
  168. package/services/mac-bridge/codex-types/ExecCommandBeginEvent.ts +0 -35
  169. package/services/mac-bridge/codex-types/ExecCommandEndEvent.ts +0 -64
  170. package/services/mac-bridge/codex-types/ExecCommandOutputDeltaEvent.ts +0 -18
  171. package/services/mac-bridge/codex-types/ExecCommandSource.ts +0 -5
  172. package/services/mac-bridge/codex-types/ExecCommandStatus.ts +0 -5
  173. package/services/mac-bridge/codex-types/ExecOneOffCommandParams.ts +0 -6
  174. package/services/mac-bridge/codex-types/ExecOneOffCommandResponse.ts +0 -5
  175. package/services/mac-bridge/codex-types/ExecOutputStream.ts +0 -5
  176. package/services/mac-bridge/codex-types/ExecPolicyAmendment.ts +0 -12
  177. package/services/mac-bridge/codex-types/ExitedReviewModeEvent.ts +0 -6
  178. package/services/mac-bridge/codex-types/FileChange.ts +0 -5
  179. package/services/mac-bridge/codex-types/ForcedLoginMethod.ts +0 -5
  180. package/services/mac-bridge/codex-types/ForkConversationParams.ts +0 -7
  181. package/services/mac-bridge/codex-types/ForkConversationResponse.ts +0 -7
  182. package/services/mac-bridge/codex-types/FunctionCallOutputBody.ts +0 -6
  183. package/services/mac-bridge/codex-types/FunctionCallOutputContentItem.ts +0 -9
  184. package/services/mac-bridge/codex-types/FunctionCallOutputPayload.ts +0 -12
  185. package/services/mac-bridge/codex-types/FuzzyFileSearchParams.ts +0 -5
  186. package/services/mac-bridge/codex-types/FuzzyFileSearchResponse.ts +0 -6
  187. package/services/mac-bridge/codex-types/FuzzyFileSearchResult.ts +0 -8
  188. package/services/mac-bridge/codex-types/FuzzyFileSearchSessionCompletedNotification.ts +0 -5
  189. package/services/mac-bridge/codex-types/FuzzyFileSearchSessionUpdatedNotification.ts +0 -6
  190. package/services/mac-bridge/codex-types/GetAuthStatusParams.ts +0 -5
  191. package/services/mac-bridge/codex-types/GetAuthStatusResponse.ts +0 -6
  192. package/services/mac-bridge/codex-types/GetConversationSummaryParams.ts +0 -6
  193. package/services/mac-bridge/codex-types/GetConversationSummaryResponse.ts +0 -6
  194. package/services/mac-bridge/codex-types/GetHistoryEntryResponseEvent.ts +0 -10
  195. package/services/mac-bridge/codex-types/GetUserAgentResponse.ts +0 -5
  196. package/services/mac-bridge/codex-types/GetUserSavedConfigResponse.ts +0 -6
  197. package/services/mac-bridge/codex-types/GhostCommit.ts +0 -8
  198. package/services/mac-bridge/codex-types/GitDiffToRemoteParams.ts +0 -5
  199. package/services/mac-bridge/codex-types/GitDiffToRemoteResponse.ts +0 -6
  200. package/services/mac-bridge/codex-types/GitSha.ts +0 -5
  201. package/services/mac-bridge/codex-types/HistoryEntry.ts +0 -5
  202. package/services/mac-bridge/codex-types/InitializeCapabilities.ts +0 -17
  203. package/services/mac-bridge/codex-types/InitializeParams.ts +0 -7
  204. package/services/mac-bridge/codex-types/InitializeResponse.ts +0 -5
  205. package/services/mac-bridge/codex-types/InputItem.ts +0 -10
  206. package/services/mac-bridge/codex-types/InputModality.ts +0 -8
  207. package/services/mac-bridge/codex-types/InterruptConversationParams.ts +0 -6
  208. package/services/mac-bridge/codex-types/InterruptConversationResponse.ts +0 -6
  209. package/services/mac-bridge/codex-types/ItemCompletedEvent.ts +0 -7
  210. package/services/mac-bridge/codex-types/ItemStartedEvent.ts +0 -7
  211. package/services/mac-bridge/codex-types/ListConversationsParams.ts +0 -5
  212. package/services/mac-bridge/codex-types/ListConversationsResponse.ts +0 -6
  213. package/services/mac-bridge/codex-types/ListCustomPromptsResponseEvent.ts +0 -9
  214. package/services/mac-bridge/codex-types/ListRemoteSkillsResponseEvent.ts +0 -9
  215. package/services/mac-bridge/codex-types/ListSkillsResponseEvent.ts +0 -9
  216. package/services/mac-bridge/codex-types/LocalShellAction.ts +0 -6
  217. package/services/mac-bridge/codex-types/LocalShellExecAction.ts +0 -5
  218. package/services/mac-bridge/codex-types/LocalShellStatus.ts +0 -5
  219. package/services/mac-bridge/codex-types/LoginApiKeyParams.ts +0 -5
  220. package/services/mac-bridge/codex-types/LoginApiKeyResponse.ts +0 -5
  221. package/services/mac-bridge/codex-types/LoginChatGptCompleteNotification.ts +0 -8
  222. package/services/mac-bridge/codex-types/LoginChatGptResponse.ts +0 -5
  223. package/services/mac-bridge/codex-types/LogoutChatGptResponse.ts +0 -5
  224. package/services/mac-bridge/codex-types/McpAuthStatus.ts +0 -5
  225. package/services/mac-bridge/codex-types/McpInvocation.ts +0 -18
  226. package/services/mac-bridge/codex-types/McpListToolsResponseEvent.ts +0 -25
  227. package/services/mac-bridge/codex-types/McpStartupCompleteEvent.ts +0 -6
  228. package/services/mac-bridge/codex-types/McpStartupFailure.ts +0 -5
  229. package/services/mac-bridge/codex-types/McpStartupStatus.ts +0 -5
  230. package/services/mac-bridge/codex-types/McpStartupUpdateEvent.ts +0 -14
  231. package/services/mac-bridge/codex-types/McpToolCallBeginEvent.ts +0 -10
  232. package/services/mac-bridge/codex-types/McpToolCallEndEvent.ts +0 -15
  233. package/services/mac-bridge/codex-types/MessagePhase.ts +0 -11
  234. package/services/mac-bridge/codex-types/ModeKind.ts +0 -8
  235. package/services/mac-bridge/codex-types/ModelRerouteEvent.ts +0 -6
  236. package/services/mac-bridge/codex-types/ModelRerouteReason.ts +0 -5
  237. package/services/mac-bridge/codex-types/NetworkAccess.ts +0 -8
  238. package/services/mac-bridge/codex-types/NetworkApprovalContext.ts +0 -6
  239. package/services/mac-bridge/codex-types/NetworkApprovalProtocol.ts +0 -5
  240. package/services/mac-bridge/codex-types/NewConversationParams.ts +0 -8
  241. package/services/mac-bridge/codex-types/NewConversationResponse.ts +0 -7
  242. package/services/mac-bridge/codex-types/ParsedCommand.ts +0 -12
  243. package/services/mac-bridge/codex-types/PatchApplyBeginEvent.ts +0 -23
  244. package/services/mac-bridge/codex-types/PatchApplyEndEvent.ts +0 -36
  245. package/services/mac-bridge/codex-types/PatchApplyStatus.ts +0 -5
  246. package/services/mac-bridge/codex-types/Personality.ts +0 -5
  247. package/services/mac-bridge/codex-types/PlanDeltaEvent.ts +0 -5
  248. package/services/mac-bridge/codex-types/PlanItem.ts +0 -5
  249. package/services/mac-bridge/codex-types/PlanItemArg.ts +0 -6
  250. package/services/mac-bridge/codex-types/PlanType.ts +0 -5
  251. package/services/mac-bridge/codex-types/Profile.ts +0 -9
  252. package/services/mac-bridge/codex-types/RateLimitSnapshot.ts +0 -8
  253. package/services/mac-bridge/codex-types/RateLimitWindow.ts +0 -17
  254. package/services/mac-bridge/codex-types/RawResponseItemEvent.ts +0 -6
  255. package/services/mac-bridge/codex-types/ReadOnlyAccess.ts +0 -19
  256. package/services/mac-bridge/codex-types/ReasoningContentDeltaEvent.ts +0 -5
  257. package/services/mac-bridge/codex-types/ReasoningEffort.ts +0 -8
  258. package/services/mac-bridge/codex-types/ReasoningItem.ts +0 -5
  259. package/services/mac-bridge/codex-types/ReasoningItemContent.ts +0 -5
  260. package/services/mac-bridge/codex-types/ReasoningItemReasoningSummary.ts +0 -5
  261. package/services/mac-bridge/codex-types/ReasoningRawContentDeltaEvent.ts +0 -5
  262. package/services/mac-bridge/codex-types/ReasoningSummary.ts +0 -10
  263. package/services/mac-bridge/codex-types/RemoteSkillDownloadedEvent.ts +0 -8
  264. package/services/mac-bridge/codex-types/RemoteSkillSummary.ts +0 -5
  265. package/services/mac-bridge/codex-types/RemoveConversationListenerParams.ts +0 -5
  266. package/services/mac-bridge/codex-types/RemoveConversationSubscriptionResponse.ts +0 -5
  267. package/services/mac-bridge/codex-types/RequestId.ts +0 -5
  268. package/services/mac-bridge/codex-types/RequestUserInputEvent.ts +0 -15
  269. package/services/mac-bridge/codex-types/RequestUserInputQuestion.ts +0 -6
  270. package/services/mac-bridge/codex-types/RequestUserInputQuestionOption.ts +0 -5
  271. package/services/mac-bridge/codex-types/Resource.ts +0 -9
  272. package/services/mac-bridge/codex-types/ResourceTemplate.ts +0 -9
  273. package/services/mac-bridge/codex-types/ResponseItem.ts +0 -18
  274. package/services/mac-bridge/codex-types/ResumeConversationParams.ts +0 -8
  275. package/services/mac-bridge/codex-types/ResumeConversationResponse.ts +0 -7
  276. package/services/mac-bridge/codex-types/ReviewCodeLocation.ts +0 -9
  277. package/services/mac-bridge/codex-types/ReviewDecision.ts +0 -9
  278. package/services/mac-bridge/codex-types/ReviewFinding.ts +0 -9
  279. package/services/mac-bridge/codex-types/ReviewLineRange.ts +0 -8
  280. package/services/mac-bridge/codex-types/ReviewOutputEvent.ts +0 -9
  281. package/services/mac-bridge/codex-types/ReviewRequest.ts +0 -9
  282. package/services/mac-bridge/codex-types/ReviewTarget.ts +0 -9
  283. package/services/mac-bridge/codex-types/SandboxMode.ts +0 -5
  284. package/services/mac-bridge/codex-types/SandboxPolicy.ts +0 -44
  285. package/services/mac-bridge/codex-types/SandboxSettings.ts +0 -6
  286. package/services/mac-bridge/codex-types/SendUserMessageParams.ts +0 -7
  287. package/services/mac-bridge/codex-types/SendUserMessageResponse.ts +0 -5
  288. package/services/mac-bridge/codex-types/SendUserTurnParams.ts +0 -16
  289. package/services/mac-bridge/codex-types/SendUserTurnResponse.ts +0 -5
  290. package/services/mac-bridge/codex-types/ServerNotification.ts +0 -45
  291. package/services/mac-bridge/codex-types/ServerRequest.ts +0 -16
  292. package/services/mac-bridge/codex-types/SessionConfiguredEvent.ts +0 -57
  293. package/services/mac-bridge/codex-types/SessionConfiguredNotification.ts +0 -8
  294. package/services/mac-bridge/codex-types/SessionNetworkProxyRuntime.ts +0 -5
  295. package/services/mac-bridge/codex-types/SessionSource.ts +0 -6
  296. package/services/mac-bridge/codex-types/SetDefaultModelParams.ts +0 -6
  297. package/services/mac-bridge/codex-types/SetDefaultModelResponse.ts +0 -5
  298. package/services/mac-bridge/codex-types/Settings.ts +0 -9
  299. package/services/mac-bridge/codex-types/SkillDependencies.ts +0 -6
  300. package/services/mac-bridge/codex-types/SkillErrorInfo.ts +0 -5
  301. package/services/mac-bridge/codex-types/SkillInterface.ts +0 -5
  302. package/services/mac-bridge/codex-types/SkillMetadata.ts +0 -12
  303. package/services/mac-bridge/codex-types/SkillScope.ts +0 -5
  304. package/services/mac-bridge/codex-types/SkillToolDependency.ts +0 -5
  305. package/services/mac-bridge/codex-types/SkillsListEntry.ts +0 -7
  306. package/services/mac-bridge/codex-types/StepStatus.ts +0 -5
  307. package/services/mac-bridge/codex-types/StreamErrorEvent.ts +0 -12
  308. package/services/mac-bridge/codex-types/SubAgentSource.ts +0 -6
  309. package/services/mac-bridge/codex-types/TerminalInteractionEvent.ts +0 -17
  310. package/services/mac-bridge/codex-types/TextElement.ts +0 -14
  311. package/services/mac-bridge/codex-types/ThreadId.ts +0 -5
  312. package/services/mac-bridge/codex-types/ThreadNameUpdatedEvent.ts +0 -6
  313. package/services/mac-bridge/codex-types/ThreadRolledBackEvent.ts +0 -9
  314. package/services/mac-bridge/codex-types/TokenCountEvent.ts +0 -7
  315. package/services/mac-bridge/codex-types/TokenUsage.ts +0 -5
  316. package/services/mac-bridge/codex-types/TokenUsageInfo.ts +0 -6
  317. package/services/mac-bridge/codex-types/Tool.ts +0 -9
  318. package/services/mac-bridge/codex-types/Tools.ts +0 -5
  319. package/services/mac-bridge/codex-types/TurnAbortReason.ts +0 -5
  320. package/services/mac-bridge/codex-types/TurnAbortedEvent.ts +0 -6
  321. package/services/mac-bridge/codex-types/TurnCompleteEvent.ts +0 -5
  322. package/services/mac-bridge/codex-types/TurnDiffEvent.ts +0 -5
  323. package/services/mac-bridge/codex-types/TurnItem.ts +0 -11
  324. package/services/mac-bridge/codex-types/TurnStartedEvent.ts +0 -6
  325. package/services/mac-bridge/codex-types/UndoCompletedEvent.ts +0 -5
  326. package/services/mac-bridge/codex-types/UndoStartedEvent.ts +0 -5
  327. package/services/mac-bridge/codex-types/UpdatePlanArgs.ts +0 -10
  328. package/services/mac-bridge/codex-types/UserInfoResponse.ts +0 -5
  329. package/services/mac-bridge/codex-types/UserInput.ts +0 -16
  330. package/services/mac-bridge/codex-types/UserMessageEvent.ts +0 -22
  331. package/services/mac-bridge/codex-types/UserMessageItem.ts +0 -6
  332. package/services/mac-bridge/codex-types/UserSavedConfig.ts +0 -14
  333. package/services/mac-bridge/codex-types/Verbosity.ts +0 -9
  334. package/services/mac-bridge/codex-types/ViewImageToolCallEvent.ts +0 -13
  335. package/services/mac-bridge/codex-types/WarningEvent.ts +0 -5
  336. package/services/mac-bridge/codex-types/WebSearchAction.ts +0 -5
  337. package/services/mac-bridge/codex-types/WebSearchBeginEvent.ts +0 -5
  338. package/services/mac-bridge/codex-types/WebSearchEndEvent.ts +0 -6
  339. package/services/mac-bridge/codex-types/WebSearchItem.ts +0 -6
  340. package/services/mac-bridge/codex-types/WebSearchMode.ts +0 -5
  341. package/services/mac-bridge/codex-types/index.ts +0 -234
  342. package/services/mac-bridge/codex-types/serde_json/JsonValue.ts +0 -5
  343. package/services/mac-bridge/codex-types/v2/Account.ts +0 -6
  344. package/services/mac-bridge/codex-types/v2/AccountLoginCompletedNotification.ts +0 -5
  345. package/services/mac-bridge/codex-types/v2/AccountRateLimitsUpdatedNotification.ts +0 -6
  346. package/services/mac-bridge/codex-types/v2/AccountUpdatedNotification.ts +0 -6
  347. package/services/mac-bridge/codex-types/v2/AgentMessageDeltaNotification.ts +0 -5
  348. package/services/mac-bridge/codex-types/v2/AnalyticsConfig.ts +0 -6
  349. package/services/mac-bridge/codex-types/v2/AppBranding.ts +0 -8
  350. package/services/mac-bridge/codex-types/v2/AppDisabledReason.ts +0 -5
  351. package/services/mac-bridge/codex-types/v2/AppInfo.ts +0 -19
  352. package/services/mac-bridge/codex-types/v2/AppListUpdatedNotification.ts +0 -9
  353. package/services/mac-bridge/codex-types/v2/AppMetadata.ts +0 -7
  354. package/services/mac-bridge/codex-types/v2/AppReview.ts +0 -5
  355. package/services/mac-bridge/codex-types/v2/AppScreenshot.ts +0 -5
  356. package/services/mac-bridge/codex-types/v2/AppsConfig.ts +0 -6
  357. package/services/mac-bridge/codex-types/v2/AppsListParams.ts +0 -24
  358. package/services/mac-bridge/codex-types/v2/AppsListResponse.ts +0 -14
  359. package/services/mac-bridge/codex-types/v2/AskForApproval.ts +0 -5
  360. package/services/mac-bridge/codex-types/v2/ByteRange.ts +0 -5
  361. package/services/mac-bridge/codex-types/v2/CancelLoginAccountParams.ts +0 -5
  362. package/services/mac-bridge/codex-types/v2/CancelLoginAccountResponse.ts +0 -6
  363. package/services/mac-bridge/codex-types/v2/CancelLoginAccountStatus.ts +0 -5
  364. package/services/mac-bridge/codex-types/v2/ChatgptAuthTokensRefreshParams.ts +0 -16
  365. package/services/mac-bridge/codex-types/v2/ChatgptAuthTokensRefreshReason.ts +0 -5
  366. package/services/mac-bridge/codex-types/v2/ChatgptAuthTokensRefreshResponse.ts +0 -5
  367. package/services/mac-bridge/codex-types/v2/CodexErrorInfo.ts +0 -11
  368. package/services/mac-bridge/codex-types/v2/CollabAgentState.ts +0 -6
  369. package/services/mac-bridge/codex-types/v2/CollabAgentStatus.ts +0 -5
  370. package/services/mac-bridge/codex-types/v2/CollabAgentTool.ts +0 -5
  371. package/services/mac-bridge/codex-types/v2/CollabAgentToolCallStatus.ts +0 -5
  372. package/services/mac-bridge/codex-types/v2/CommandAction.ts +0 -5
  373. package/services/mac-bridge/codex-types/v2/CommandExecParams.ts +0 -6
  374. package/services/mac-bridge/codex-types/v2/CommandExecResponse.ts +0 -5
  375. package/services/mac-bridge/codex-types/v2/CommandExecutionApprovalDecision.ts +0 -6
  376. package/services/mac-bridge/codex-types/v2/CommandExecutionOutputDeltaNotification.ts +0 -5
  377. package/services/mac-bridge/codex-types/v2/CommandExecutionRequestApprovalParams.ts +0 -37
  378. package/services/mac-bridge/codex-types/v2/CommandExecutionRequestApprovalResponse.ts +0 -6
  379. package/services/mac-bridge/codex-types/v2/CommandExecutionStatus.ts +0 -5
  380. package/services/mac-bridge/codex-types/v2/Config.ts +0 -17
  381. package/services/mac-bridge/codex-types/v2/ConfigBatchWriteParams.ts +0 -10
  382. package/services/mac-bridge/codex-types/v2/ConfigEdit.ts +0 -7
  383. package/services/mac-bridge/codex-types/v2/ConfigLayer.ts +0 -7
  384. package/services/mac-bridge/codex-types/v2/ConfigLayerMetadata.ts +0 -6
  385. package/services/mac-bridge/codex-types/v2/ConfigLayerSource.ts +0 -16
  386. package/services/mac-bridge/codex-types/v2/ConfigReadParams.ts +0 -11
  387. package/services/mac-bridge/codex-types/v2/ConfigReadResponse.ts +0 -8
  388. package/services/mac-bridge/codex-types/v2/ConfigRequirements.ts +0 -9
  389. package/services/mac-bridge/codex-types/v2/ConfigRequirementsReadResponse.ts +0 -10
  390. package/services/mac-bridge/codex-types/v2/ConfigValueWriteParams.ts +0 -11
  391. package/services/mac-bridge/codex-types/v2/ConfigWarningNotification.ts +0 -22
  392. package/services/mac-bridge/codex-types/v2/ConfigWriteResponse.ts +0 -12
  393. package/services/mac-bridge/codex-types/v2/ContextCompactedNotification.ts +0 -8
  394. package/services/mac-bridge/codex-types/v2/CreditsSnapshot.ts +0 -5
  395. package/services/mac-bridge/codex-types/v2/DeprecationNoticeNotification.ts +0 -13
  396. package/services/mac-bridge/codex-types/v2/DynamicToolCallOutputContentItem.ts +0 -5
  397. package/services/mac-bridge/codex-types/v2/DynamicToolCallParams.ts +0 -6
  398. package/services/mac-bridge/codex-types/v2/DynamicToolCallResponse.ts +0 -6
  399. package/services/mac-bridge/codex-types/v2/DynamicToolSpec.ts +0 -6
  400. package/services/mac-bridge/codex-types/v2/ErrorNotification.ts +0 -6
  401. package/services/mac-bridge/codex-types/v2/ExecPolicyAmendment.ts +0 -5
  402. package/services/mac-bridge/codex-types/v2/ExperimentalFeature.ts +0 -37
  403. package/services/mac-bridge/codex-types/v2/ExperimentalFeatureListParams.ts +0 -13
  404. package/services/mac-bridge/codex-types/v2/ExperimentalFeatureListResponse.ts +0 -11
  405. package/services/mac-bridge/codex-types/v2/ExperimentalFeatureStage.ts +0 -5
  406. package/services/mac-bridge/codex-types/v2/FeedbackUploadParams.ts +0 -5
  407. package/services/mac-bridge/codex-types/v2/FeedbackUploadResponse.ts +0 -5
  408. package/services/mac-bridge/codex-types/v2/FileChangeApprovalDecision.ts +0 -5
  409. package/services/mac-bridge/codex-types/v2/FileChangeOutputDeltaNotification.ts +0 -5
  410. package/services/mac-bridge/codex-types/v2/FileChangeRequestApprovalParams.ts +0 -14
  411. package/services/mac-bridge/codex-types/v2/FileChangeRequestApprovalResponse.ts +0 -6
  412. package/services/mac-bridge/codex-types/v2/FileUpdateChange.ts +0 -6
  413. package/services/mac-bridge/codex-types/v2/GetAccountParams.ts +0 -13
  414. package/services/mac-bridge/codex-types/v2/GetAccountRateLimitsResponse.ts +0 -14
  415. package/services/mac-bridge/codex-types/v2/GetAccountResponse.ts +0 -6
  416. package/services/mac-bridge/codex-types/v2/GitInfo.ts +0 -5
  417. package/services/mac-bridge/codex-types/v2/HazelnutScope.ts +0 -5
  418. package/services/mac-bridge/codex-types/v2/ItemCompletedNotification.ts +0 -6
  419. package/services/mac-bridge/codex-types/v2/ItemStartedNotification.ts +0 -6
  420. package/services/mac-bridge/codex-types/v2/ListMcpServerStatusParams.ts +0 -13
  421. package/services/mac-bridge/codex-types/v2/ListMcpServerStatusResponse.ts +0 -11
  422. package/services/mac-bridge/codex-types/v2/LoginAccountParams.ts +0 -21
  423. package/services/mac-bridge/codex-types/v2/LoginAccountResponse.ts +0 -9
  424. package/services/mac-bridge/codex-types/v2/LogoutAccountResponse.ts +0 -5
  425. package/services/mac-bridge/codex-types/v2/McpAuthStatus.ts +0 -5
  426. package/services/mac-bridge/codex-types/v2/McpServerOauthLoginCompletedNotification.ts +0 -5
  427. package/services/mac-bridge/codex-types/v2/McpServerOauthLoginParams.ts +0 -5
  428. package/services/mac-bridge/codex-types/v2/McpServerOauthLoginResponse.ts +0 -5
  429. package/services/mac-bridge/codex-types/v2/McpServerRefreshResponse.ts +0 -5
  430. package/services/mac-bridge/codex-types/v2/McpServerStatus.ts +0 -9
  431. package/services/mac-bridge/codex-types/v2/McpToolCallError.ts +0 -5
  432. package/services/mac-bridge/codex-types/v2/McpToolCallProgressNotification.ts +0 -5
  433. package/services/mac-bridge/codex-types/v2/McpToolCallResult.ts +0 -6
  434. package/services/mac-bridge/codex-types/v2/McpToolCallStatus.ts +0 -5
  435. package/services/mac-bridge/codex-types/v2/MergeStrategy.ts +0 -5
  436. package/services/mac-bridge/codex-types/v2/Model.ts +0 -8
  437. package/services/mac-bridge/codex-types/v2/ModelListParams.ts +0 -17
  438. package/services/mac-bridge/codex-types/v2/ModelListResponse.ts +0 -11
  439. package/services/mac-bridge/codex-types/v2/ModelRerouteReason.ts +0 -5
  440. package/services/mac-bridge/codex-types/v2/ModelReroutedNotification.ts +0 -6
  441. package/services/mac-bridge/codex-types/v2/NetworkAccess.ts +0 -5
  442. package/services/mac-bridge/codex-types/v2/NetworkRequirements.ts +0 -5
  443. package/services/mac-bridge/codex-types/v2/OverriddenMetadata.ts +0 -7
  444. package/services/mac-bridge/codex-types/v2/PatchApplyStatus.ts +0 -5
  445. package/services/mac-bridge/codex-types/v2/PatchChangeKind.ts +0 -5
  446. package/services/mac-bridge/codex-types/v2/PlanDeltaNotification.ts +0 -9
  447. package/services/mac-bridge/codex-types/v2/ProductSurface.ts +0 -5
  448. package/services/mac-bridge/codex-types/v2/ProfileV2.ts +0 -11
  449. package/services/mac-bridge/codex-types/v2/RateLimitSnapshot.ts +0 -8
  450. package/services/mac-bridge/codex-types/v2/RateLimitWindow.ts +0 -5
  451. package/services/mac-bridge/codex-types/v2/RawResponseItemCompletedNotification.ts +0 -6
  452. package/services/mac-bridge/codex-types/v2/ReadOnlyAccess.ts +0 -6
  453. package/services/mac-bridge/codex-types/v2/ReasoningEffortOption.ts +0 -6
  454. package/services/mac-bridge/codex-types/v2/ReasoningSummaryPartAddedNotification.ts +0 -5
  455. package/services/mac-bridge/codex-types/v2/ReasoningSummaryTextDeltaNotification.ts +0 -5
  456. package/services/mac-bridge/codex-types/v2/ReasoningTextDeltaNotification.ts +0 -5
  457. package/services/mac-bridge/codex-types/v2/RemoteSkillSummary.ts +0 -5
  458. package/services/mac-bridge/codex-types/v2/ResidencyRequirement.ts +0 -5
  459. package/services/mac-bridge/codex-types/v2/ReviewDelivery.ts +0 -5
  460. package/services/mac-bridge/codex-types/v2/ReviewStartParams.ts +0 -12
  461. package/services/mac-bridge/codex-types/v2/ReviewStartResponse.ts +0 -13
  462. package/services/mac-bridge/codex-types/v2/ReviewTarget.ts +0 -9
  463. package/services/mac-bridge/codex-types/v2/SandboxMode.ts +0 -5
  464. package/services/mac-bridge/codex-types/v2/SandboxPolicy.ts +0 -8
  465. package/services/mac-bridge/codex-types/v2/SandboxWorkspaceWrite.ts +0 -5
  466. package/services/mac-bridge/codex-types/v2/SessionSource.ts +0 -6
  467. package/services/mac-bridge/codex-types/v2/SkillDependencies.ts +0 -6
  468. package/services/mac-bridge/codex-types/v2/SkillErrorInfo.ts +0 -5
  469. package/services/mac-bridge/codex-types/v2/SkillInterface.ts +0 -5
  470. package/services/mac-bridge/codex-types/v2/SkillMetadata.ts +0 -12
  471. package/services/mac-bridge/codex-types/v2/SkillScope.ts +0 -5
  472. package/services/mac-bridge/codex-types/v2/SkillToolDependency.ts +0 -5
  473. package/services/mac-bridge/codex-types/v2/SkillsConfigWriteParams.ts +0 -5
  474. package/services/mac-bridge/codex-types/v2/SkillsConfigWriteResponse.ts +0 -5
  475. package/services/mac-bridge/codex-types/v2/SkillsListEntry.ts +0 -7
  476. package/services/mac-bridge/codex-types/v2/SkillsListExtraRootsForCwd.ts +0 -5
  477. package/services/mac-bridge/codex-types/v2/SkillsListParams.ts +0 -18
  478. package/services/mac-bridge/codex-types/v2/SkillsListResponse.ts +0 -6
  479. package/services/mac-bridge/codex-types/v2/SkillsRemoteReadParams.ts +0 -7
  480. package/services/mac-bridge/codex-types/v2/SkillsRemoteReadResponse.ts +0 -6
  481. package/services/mac-bridge/codex-types/v2/SkillsRemoteWriteParams.ts +0 -5
  482. package/services/mac-bridge/codex-types/v2/SkillsRemoteWriteResponse.ts +0 -5
  483. package/services/mac-bridge/codex-types/v2/TerminalInteractionNotification.ts +0 -5
  484. package/services/mac-bridge/codex-types/v2/TextElement.ts +0 -14
  485. package/services/mac-bridge/codex-types/v2/TextPosition.ts +0 -13
  486. package/services/mac-bridge/codex-types/v2/TextRange.ts +0 -6
  487. package/services/mac-bridge/codex-types/v2/Thread.ts +0 -51
  488. package/services/mac-bridge/codex-types/v2/ThreadArchiveParams.ts +0 -5
  489. package/services/mac-bridge/codex-types/v2/ThreadArchiveResponse.ts +0 -5
  490. package/services/mac-bridge/codex-types/v2/ThreadArchivedNotification.ts +0 -5
  491. package/services/mac-bridge/codex-types/v2/ThreadCompactStartParams.ts +0 -5
  492. package/services/mac-bridge/codex-types/v2/ThreadCompactStartResponse.ts +0 -5
  493. package/services/mac-bridge/codex-types/v2/ThreadForkParams.ts +0 -28
  494. package/services/mac-bridge/codex-types/v2/ThreadForkResponse.ts +0 -9
  495. package/services/mac-bridge/codex-types/v2/ThreadItem.ts +0 -81
  496. package/services/mac-bridge/codex-types/v2/ThreadListParams.ts +0 -39
  497. package/services/mac-bridge/codex-types/v2/ThreadListResponse.ts +0 -11
  498. package/services/mac-bridge/codex-types/v2/ThreadLoadedListParams.ts +0 -13
  499. package/services/mac-bridge/codex-types/v2/ThreadLoadedListResponse.ts +0 -14
  500. package/services/mac-bridge/codex-types/v2/ThreadNameUpdatedNotification.ts +0 -5
  501. package/services/mac-bridge/codex-types/v2/ThreadReadParams.ts +0 -9
  502. package/services/mac-bridge/codex-types/v2/ThreadReadResponse.ts +0 -6
  503. package/services/mac-bridge/codex-types/v2/ThreadResumeParams.ts +0 -37
  504. package/services/mac-bridge/codex-types/v2/ThreadResumeResponse.ts +0 -9
  505. package/services/mac-bridge/codex-types/v2/ThreadRollbackParams.ts +0 -12
  506. package/services/mac-bridge/codex-types/v2/ThreadRollbackResponse.ts +0 -14
  507. package/services/mac-bridge/codex-types/v2/ThreadSetNameParams.ts +0 -5
  508. package/services/mac-bridge/codex-types/v2/ThreadSetNameResponse.ts +0 -5
  509. package/services/mac-bridge/codex-types/v2/ThreadSortKey.ts +0 -5
  510. package/services/mac-bridge/codex-types/v2/ThreadSourceKind.ts +0 -5
  511. package/services/mac-bridge/codex-types/v2/ThreadStartParams.ts +0 -17
  512. package/services/mac-bridge/codex-types/v2/ThreadStartResponse.ts +0 -9
  513. package/services/mac-bridge/codex-types/v2/ThreadStartedNotification.ts +0 -6
  514. package/services/mac-bridge/codex-types/v2/ThreadTokenUsage.ts +0 -6
  515. package/services/mac-bridge/codex-types/v2/ThreadTokenUsageUpdatedNotification.ts +0 -6
  516. package/services/mac-bridge/codex-types/v2/ThreadUnarchiveParams.ts +0 -5
  517. package/services/mac-bridge/codex-types/v2/ThreadUnarchiveResponse.ts +0 -6
  518. package/services/mac-bridge/codex-types/v2/ThreadUnarchivedNotification.ts +0 -5
  519. package/services/mac-bridge/codex-types/v2/TokenUsageBreakdown.ts +0 -5
  520. package/services/mac-bridge/codex-types/v2/ToolRequestUserInputAnswer.ts +0 -8
  521. package/services/mac-bridge/codex-types/v2/ToolRequestUserInputOption.ts +0 -8
  522. package/services/mac-bridge/codex-types/v2/ToolRequestUserInputParams.ts +0 -9
  523. package/services/mac-bridge/codex-types/v2/ToolRequestUserInputQuestion.ts +0 -9
  524. package/services/mac-bridge/codex-types/v2/ToolRequestUserInputResponse.ts +0 -9
  525. package/services/mac-bridge/codex-types/v2/ToolsV2.ts +0 -5
  526. package/services/mac-bridge/codex-types/v2/Turn.ts +0 -18
  527. package/services/mac-bridge/codex-types/v2/TurnCompletedNotification.ts +0 -6
  528. package/services/mac-bridge/codex-types/v2/TurnDiffUpdatedNotification.ts +0 -9
  529. package/services/mac-bridge/codex-types/v2/TurnError.ts +0 -6
  530. package/services/mac-bridge/codex-types/v2/TurnInterruptParams.ts +0 -5
  531. package/services/mac-bridge/codex-types/v2/TurnInterruptResponse.ts +0 -5
  532. package/services/mac-bridge/codex-types/v2/TurnPlanStep.ts +0 -6
  533. package/services/mac-bridge/codex-types/v2/TurnPlanStepStatus.ts +0 -5
  534. package/services/mac-bridge/codex-types/v2/TurnPlanUpdatedNotification.ts +0 -6
  535. package/services/mac-bridge/codex-types/v2/TurnStartParams.ts +0 -44
  536. package/services/mac-bridge/codex-types/v2/TurnStartResponse.ts +0 -6
  537. package/services/mac-bridge/codex-types/v2/TurnStartedNotification.ts +0 -6
  538. package/services/mac-bridge/codex-types/v2/TurnStatus.ts +0 -5
  539. package/services/mac-bridge/codex-types/v2/TurnSteerParams.ts +0 -11
  540. package/services/mac-bridge/codex-types/v2/TurnSteerResponse.ts +0 -5
  541. package/services/mac-bridge/codex-types/v2/UserInput.ts +0 -10
  542. package/services/mac-bridge/codex-types/v2/WebSearchAction.ts +0 -5
  543. package/services/mac-bridge/codex-types/v2/WindowsWorldWritableWarningNotification.ts +0 -5
  544. package/services/mac-bridge/codex-types/v2/WriteStatus.ts +0 -5
  545. package/services/mac-bridge/codex-types/v2/index.ts +0 -204
  546. package/services/mac-bridge/eslint.config.cjs +0 -22
  547. package/services/mac-bridge/package.json +0 -30
  548. package/services/mac-bridge/schema.ts +0 -0
  549. package/services/mac-bridge/src/index.ts +0 -18
  550. package/services/mac-bridge/src/server.ts +0 -426
  551. package/services/mac-bridge/src/services/__tests__/gitService.test.ts +0 -157
  552. package/services/mac-bridge/src/services/__tests__/realtimeHub.test.ts +0 -116
  553. package/services/mac-bridge/src/services/__tests__/terminalService.test.ts +0 -51
  554. package/services/mac-bridge/src/services/codexAppServerClient.ts +0 -507
  555. package/services/mac-bridge/src/services/codexCliAdapter.ts +0 -622
  556. package/services/mac-bridge/src/services/gitService.ts +0 -61
  557. package/services/mac-bridge/src/services/realtimeHub.ts +0 -25
  558. package/services/mac-bridge/src/services/terminalService.ts +0 -226
  559. package/services/mac-bridge/src/types.ts +0 -151
  560. package/services/mac-bridge/src/utils/__tests__/threadMapping.test.ts +0 -397
  561. package/services/mac-bridge/src/utils/threadMapping.ts +0 -176
  562. package/services/mac-bridge/tsconfig.json +0 -16
  563. package/services/mac-bridge/vitest.config.ts +0 -9
  564. package/services/rust-bridge/.env.example +0 -14
  565. package/services/rust-bridge/package.json +0 -13
  566. package/services/rust-bridge/security_best_practices_report.md +0 -24
  567. package/site/index.html +0 -54
  568. package/site/privacy/index.html +0 -80
  569. package/site/styles.css +0 -135
  570. package/site/support/index.html +0 -51
  571. package/site/terms/index.html +0 -68
  572. package/tsconfig.json +0 -4
@@ -1,248 +0,0 @@
1
- import { Ionicons } from '@expo/vector-icons';
2
- import { useCallback, useEffect, useState } from 'react';
3
- import {
4
- Alert,
5
- KeyboardAvoidingView,
6
- Platform,
7
- Pressable,
8
- ScrollView,
9
- StyleSheet,
10
- Text,
11
- TextInput,
12
- View,
13
- } from 'react-native';
14
- import { SafeAreaView } from 'react-native-safe-area-context';
15
-
16
- import type { HostBridgeApiClient } from '../api/client';
17
- import type { HostBridgeWsClient } from '../api/ws';
18
- import { colors, radius, spacing, typography } from '../theme';
19
-
20
- interface TerminalScreenProps {
21
- api: HostBridgeApiClient;
22
- ws: HostBridgeWsClient;
23
- onOpenDrawer: () => void;
24
- }
25
-
26
- export function TerminalScreen({ api, ws, onOpenDrawer }: TerminalScreenProps) {
27
- const [command, setCommand] = useState('pwd');
28
- const [output, setOutput] = useState('');
29
- const [running, setRunning] = useState(false);
30
- const [error, setError] = useState<string | null>(null);
31
-
32
- const executeCommand = useCallback(async () => {
33
- try {
34
- setRunning(true);
35
- const result = await api.execTerminal({ command });
36
- const lines = [
37
- `$ ${result.command}`,
38
- result.stdout || '(no stdout)',
39
- result.stderr ? `stderr:\n${result.stderr}` : null,
40
- `exit ${String(result.code)} · ${result.durationMs}ms`,
41
- ]
42
- .filter(Boolean)
43
- .join('\n\n');
44
- setOutput(lines);
45
- setError(null);
46
- } catch (err) {
47
- setError((err as Error).message);
48
- } finally {
49
- setRunning(false);
50
- }
51
- }, [api, command]);
52
-
53
- const runCommand = useCallback(() => {
54
- const trimmed = command.trim();
55
- if (!trimmed || running) {
56
- return;
57
- }
58
-
59
- Alert.alert('Run command?', trimmed, [
60
- {
61
- text: 'Cancel',
62
- style: 'cancel'
63
- },
64
- {
65
- text: 'Run',
66
- onPress: () => {
67
- void executeCommand();
68
- }
69
- }
70
- ]);
71
- }, [command, executeCommand, running]);
72
-
73
- useEffect(() => {
74
- return ws.onEvent((event) => {
75
- if (event.method === 'bridge/terminal/completed') {
76
- const payload = event.params;
77
- const command = typeof payload?.command === 'string' ? payload.command : 'unknown';
78
- const code =
79
- typeof payload?.code === 'number' || payload?.code === null
80
- ? payload.code
81
- : null;
82
- setOutput((prev) =>
83
- `${prev}\n\n[ws] ${command} → ${String(code)}`.trim()
84
- );
85
- }
86
- });
87
- }, [ws]);
88
-
89
- return (
90
- <SafeAreaView style={styles.container}>
91
- <View style={styles.header}>
92
- <Pressable onPress={onOpenDrawer} hitSlop={8} style={styles.menuBtn}>
93
- <Ionicons name="menu" size={22} color={colors.textMuted} />
94
- </Pressable>
95
- <Ionicons name="terminal" size={16} color={colors.textMuted} />
96
- <Text style={styles.headerTitle}>Terminal</Text>
97
- </View>
98
-
99
- <KeyboardAvoidingView
100
- style={styles.body}
101
- behavior={Platform.OS === 'ios' ? 'padding' : undefined}
102
- >
103
- <View style={styles.terminalWindow}>
104
- {/* macOS-style window header */}
105
- <View style={styles.windowHeader}>
106
- <View style={styles.trafficLights}>
107
- <View style={[styles.trafficLight, { backgroundColor: '#FF5F56' }]} />
108
- <View style={[styles.trafficLight, { backgroundColor: '#FFBD2E' }]} />
109
- <View style={[styles.trafficLight, { backgroundColor: '#8A93A5' }]} />
110
- </View>
111
- <Text style={styles.windowTitle}>bash — 80x24</Text>
112
- <View style={styles.trafficLightsPlaceholder} />
113
- </View>
114
-
115
- <ScrollView style={styles.output} contentContainerStyle={styles.outputContent}>
116
- <Text selectable style={styles.outputText}>
117
- {output || 'Run a command to see output.'}
118
- </Text>
119
- </ScrollView>
120
- </View>
121
-
122
- {error ? <Text style={styles.errorText}>{error}</Text> : null}
123
-
124
- <View style={styles.inputRow}>
125
- <Text style={styles.prompt}>$</Text>
126
- <TextInput
127
- style={styles.input}
128
- value={command}
129
- onChangeText={setCommand}
130
- keyboardAppearance="dark"
131
- autoCapitalize="none"
132
- autoCorrect={false}
133
- returnKeyType="send"
134
- onSubmitEditing={runCommand}
135
- placeholder="command"
136
- placeholderTextColor={colors.textMuted}
137
- />
138
- <Pressable
139
- onPress={runCommand}
140
- disabled={running || !command.trim()}
141
- style={({ pressed }) => [
142
- styles.runBtn,
143
- pressed && styles.runBtnPressed,
144
- running && styles.runBtnDisabled,
145
- ]}
146
- >
147
- <Ionicons name={running ? 'pause' : 'play'} size={14} color={colors.white} />
148
- </Pressable>
149
- </View>
150
- </KeyboardAvoidingView>
151
- </SafeAreaView>
152
- );
153
- }
154
-
155
- const styles = StyleSheet.create({
156
- container: { flex: 1, backgroundColor: '#000000' }, // Pure black context for terminal
157
- header: {
158
- flexDirection: 'row',
159
- alignItems: 'center',
160
- gap: spacing.sm,
161
- paddingHorizontal: spacing.lg,
162
- paddingVertical: spacing.md,
163
- backgroundColor: colors.bgMain,
164
- },
165
- menuBtn: { padding: spacing.xs },
166
- headerTitle: { ...typography.headline, color: colors.textPrimary },
167
- body: { flex: 1, padding: spacing.md },
168
- terminalWindow: {
169
- flex: 1,
170
- backgroundColor: '#1E1E1E', // standard dark term bg
171
- borderRadius: radius.md,
172
- borderWidth: StyleSheet.hairlineWidth,
173
- borderColor: 'rgba(255,255,255,0.1)',
174
- overflow: 'hidden',
175
- boxShadow: '0px 10px 20px rgba(0, 0, 0, 0.5)',
176
- },
177
- windowHeader: {
178
- flexDirection: 'row',
179
- alignItems: 'center',
180
- justifyContent: 'space-between',
181
- paddingHorizontal: spacing.md,
182
- paddingVertical: spacing.sm,
183
- backgroundColor: '#323233',
184
- borderBottomWidth: StyleSheet.hairlineWidth,
185
- borderBottomColor: '#111',
186
- },
187
- trafficLights: {
188
- flexDirection: 'row',
189
- gap: 6,
190
- width: 50,
191
- },
192
- trafficLightsPlaceholder: {
193
- width: 50,
194
- },
195
- trafficLight: {
196
- width: 12,
197
- height: 12,
198
- borderRadius: 6,
199
- },
200
- windowTitle: {
201
- ...typography.caption,
202
- color: '#9E9E9E',
203
- fontWeight: '600',
204
- },
205
- output: { flex: 1 },
206
- outputContent: { padding: spacing.md },
207
- outputText: {
208
- ...typography.mono,
209
- color: '#D4D7DF',
210
- fontSize: 13,
211
- lineHeight: 20,
212
- },
213
- errorText: {
214
- ...typography.caption,
215
- color: colors.error,
216
- paddingHorizontal: spacing.lg,
217
- paddingBottom: spacing.xs,
218
- },
219
- inputRow: {
220
- flexDirection: 'row',
221
- alignItems: 'center',
222
- gap: spacing.sm,
223
- paddingTop: spacing.md,
224
- paddingBottom: Platform.OS === 'ios' ? spacing.xl : spacing.md,
225
- },
226
- prompt: { ...typography.mono, color: colors.textSecondary, fontWeight: '700' },
227
- input: {
228
- flex: 1,
229
- ...typography.mono,
230
- color: colors.textPrimary,
231
- backgroundColor: '#1E1E1E',
232
- borderWidth: StyleSheet.hairlineWidth,
233
- borderColor: 'rgba(255,255,255,0.1)',
234
- borderRadius: radius.md,
235
- paddingHorizontal: spacing.md,
236
- paddingVertical: 10,
237
- },
238
- runBtn: {
239
- width: 30,
240
- height: 30,
241
- borderRadius: 15,
242
- backgroundColor: colors.accent,
243
- alignItems: 'center',
244
- justifyContent: 'center',
245
- },
246
- runBtnPressed: { backgroundColor: colors.accentPressed },
247
- runBtnDisabled: { backgroundColor: colors.bgItem },
248
- });
@@ -1,192 +0,0 @@
1
- import { Ionicons } from '@expo/vector-icons';
2
- import { useCallback, useState } from 'react';
3
- import {
4
- Alert,
5
- Linking,
6
- Pressable,
7
- ScrollView,
8
- StyleSheet,
9
- Text,
10
- View
11
- } from 'react-native';
12
- import { BlurView } from 'expo-blur';
13
- import { LinearGradient } from 'expo-linear-gradient';
14
- import { SafeAreaView } from 'react-native-safe-area-context';
15
-
16
- import { colors, radius, spacing, typography } from '../theme';
17
-
18
- interface TermsScreenProps {
19
- termsUrl: string | null;
20
- onOpenDrawer: () => void;
21
- }
22
-
23
- export function TermsScreen({ termsUrl, onOpenDrawer }: TermsScreenProps) {
24
- const [openingTerms, setOpeningTerms] = useState(false);
25
-
26
- const openTerms = useCallback(async () => {
27
- if (!termsUrl || openingTerms) {
28
- return;
29
- }
30
-
31
- try {
32
- setOpeningTerms(true);
33
- const supported = await Linking.canOpenURL(termsUrl);
34
- if (!supported) {
35
- Alert.alert('Cannot open link', 'The terms URL is not supported on this device.');
36
- return;
37
- }
38
- await Linking.openURL(termsUrl);
39
- } catch {
40
- Alert.alert('Could not open link', 'Please open the terms URL manually.');
41
- } finally {
42
- setOpeningTerms(false);
43
- }
44
- }, [openingTerms, termsUrl]);
45
-
46
- return (
47
- <View style={styles.container}>
48
- <LinearGradient
49
- colors={[colors.bgMain, colors.bgMain, colors.bgMain]}
50
- style={StyleSheet.absoluteFill}
51
- />
52
- <SafeAreaView style={styles.safeArea}>
53
- <BlurView intensity={80} tint="dark" style={styles.header}>
54
- <Pressable onPress={onOpenDrawer} hitSlop={8} style={styles.menuBtn}>
55
- <Ionicons name="menu" size={22} color={colors.textPrimary} />
56
- </Pressable>
57
- <Ionicons name="document-text" size={16} color={colors.textPrimary} />
58
- <Text style={styles.headerTitle}>Terms</Text>
59
- </BlurView>
60
-
61
- <ScrollView style={styles.body} contentContainerStyle={styles.bodyContent}>
62
- <Section title="Use Of Service">
63
- This mobile app is a client for interacting with a user-owned host bridge and repository.
64
- You are responsible for commands, commits, and approvals executed through your setup.
65
- </Section>
66
-
67
- <Section title="Account And Credentials">
68
- You must keep bridge tokens and provider credentials confidential.
69
- Do not share devices or hosts that have active bridge credentials without protection.
70
- </Section>
71
-
72
- <Section title="Acceptable Use">
73
- You may not use this app to access systems you do not own or have explicit authorization
74
- to control.
75
- </Section>
76
-
77
- <Section title="Operational Risk">
78
- Terminal and Git actions can change files and repository history on your host.
79
- Review commands and approvals before execution.
80
- </Section>
81
-
82
- <Section title="Availability And Changes">
83
- Features may change over time. You are responsible for maintaining your local bridge
84
- configuration and secure network setup.
85
- </Section>
86
-
87
- <Text style={styles.sectionLabel}>Official Terms</Text>
88
- <BlurView intensity={50} tint="dark" style={styles.card}>
89
- <Text style={styles.cardTitle}>Terms URL</Text>
90
- <Text selectable style={styles.termsUrl}>
91
- {termsUrl ?? 'Not configured. Set EXPO_PUBLIC_TERMS_OF_SERVICE_URL.'}
92
- </Text>
93
- <Pressable
94
- disabled={!termsUrl || openingTerms}
95
- onPress={() => void openTerms()}
96
- style={({ pressed }) => [
97
- styles.openBtn,
98
- (!termsUrl || openingTerms) && styles.openBtnDisabled,
99
- pressed && termsUrl && !openingTerms && styles.openBtnPressed
100
- ]}
101
- >
102
- <Ionicons name="open-outline" size={16} color={colors.white} />
103
- <Text style={styles.openBtnText}>
104
- {openingTerms ? 'Opening...' : 'Open terms'}
105
- </Text>
106
- </Pressable>
107
- </BlurView>
108
- </ScrollView>
109
- </SafeAreaView>
110
- </View>
111
- );
112
- }
113
-
114
- function Section({ title, children }: { title: string; children: string }) {
115
- return (
116
- <>
117
- <Text style={styles.sectionLabel}>{title}</Text>
118
- <BlurView intensity={50} tint="dark" style={styles.card}>
119
- <Text style={styles.bodyText}>{children}</Text>
120
- </BlurView>
121
- </>
122
- );
123
- }
124
-
125
- const styles = StyleSheet.create({
126
- container: { flex: 1, backgroundColor: colors.bgMain },
127
- safeArea: { flex: 1 },
128
- header: {
129
- flexDirection: 'row',
130
- alignItems: 'center',
131
- gap: spacing.sm,
132
- paddingHorizontal: spacing.lg,
133
- paddingVertical: spacing.md,
134
- borderBottomWidth: StyleSheet.hairlineWidth,
135
- borderBottomColor: colors.borderHighlight
136
- },
137
- menuBtn: { padding: spacing.xs },
138
- headerTitle: { ...typography.headline, color: colors.textPrimary },
139
- body: { flex: 1 },
140
- bodyContent: { padding: spacing.lg, paddingBottom: spacing.xxl },
141
- sectionLabel: {
142
- ...typography.caption,
143
- textTransform: 'uppercase',
144
- letterSpacing: 0.8,
145
- marginTop: spacing.sm,
146
- marginBottom: spacing.sm,
147
- color: colors.textMuted,
148
- marginLeft: spacing.xs
149
- },
150
- card: {
151
- borderRadius: radius.md,
152
- borderWidth: StyleSheet.hairlineWidth,
153
- borderColor: colors.borderHighlight,
154
- padding: spacing.lg,
155
- marginBottom: spacing.sm,
156
- overflow: 'hidden'
157
- },
158
- bodyText: {
159
- ...typography.body,
160
- color: colors.textSecondary
161
- },
162
- cardTitle: {
163
- ...typography.headline,
164
- color: colors.textPrimary
165
- },
166
- termsUrl: {
167
- ...typography.mono,
168
- marginTop: spacing.sm,
169
- color: colors.textMuted
170
- },
171
- openBtn: {
172
- marginTop: spacing.md,
173
- flexDirection: 'row',
174
- alignItems: 'center',
175
- justifyContent: 'center',
176
- gap: spacing.sm,
177
- borderRadius: radius.md,
178
- paddingVertical: spacing.md,
179
- paddingHorizontal: spacing.md,
180
- backgroundColor: colors.accent
181
- },
182
- openBtnPressed: {
183
- backgroundColor: colors.accentPressed
184
- },
185
- openBtnDisabled: {
186
- backgroundColor: colors.bgItem
187
- },
188
- openBtnText: {
189
- ...typography.headline,
190
- color: colors.white
191
- }
192
- });
@@ -1,80 +0,0 @@
1
- import type { ChatSummary } from '../../api/types';
2
- import {
3
- buildAgentThreadDisplayState,
4
- getAgentThreadAccentColor,
5
- } from '../agentThreadDisplay';
6
-
7
- function chat(
8
- id: string,
9
- partial: Partial<ChatSummary> = {}
10
- ): ChatSummary {
11
- return {
12
- id,
13
- title: partial.title ?? id,
14
- status: partial.status ?? 'idle',
15
- createdAt: partial.createdAt ?? '2026-03-20T00:00:00.000Z',
16
- updatedAt: partial.updatedAt ?? '2026-03-20T00:00:00.000Z',
17
- statusUpdatedAt: partial.statusUpdatedAt ?? '2026-03-20T00:00:00.000Z',
18
- lastMessagePreview: partial.lastMessagePreview ?? '',
19
- cwd: partial.cwd,
20
- modelProvider: partial.modelProvider,
21
- sourceKind: partial.sourceKind,
22
- parentThreadId: partial.parentThreadId,
23
- subAgentDepth: partial.subAgentDepth,
24
- lastError: partial.lastError,
25
- };
26
- }
27
-
28
- describe('agentThreadDisplay', () => {
29
- it('uses live runtime activity for running child threads', () => {
30
- const display = buildAgentThreadDisplayState(
31
- chat('thr_worker', { status: 'idle' }),
32
- {
33
- activity: {
34
- tone: 'running',
35
- title: 'Reasoning',
36
- detail: 'Inspecting files',
37
- },
38
- runWatchdogUntil: Date.parse('2026-03-20T10:00:30.000Z'),
39
- },
40
- Date.parse('2026-03-20T10:00:00.000Z')
41
- );
42
-
43
- expect(display.label).toBe('Reasoning');
44
- expect(display.detail).toBe('Inspecting files');
45
- expect(display.tone).toBe('running');
46
- });
47
-
48
- it('shows pending approvals as active waiting state', () => {
49
- const display = buildAgentThreadDisplayState(chat('thr_worker'), {
50
- pendingApproval: { id: 'appr-1' },
51
- activity: {
52
- tone: 'running',
53
- title: 'Working',
54
- },
55
- });
56
-
57
- expect(display.label).toBe('Needs approval');
58
- expect(display.tone).toBe('running');
59
- });
60
-
61
- it('falls back to error details from the chat summary', () => {
62
- const display = buildAgentThreadDisplayState(
63
- chat('thr_worker', {
64
- status: 'error',
65
- lastError: 'Command exited 1',
66
- }),
67
- null
68
- );
69
-
70
- expect(display.label).toBe('Error');
71
- expect(display.detail).toBe('Command exited 1');
72
- expect(display.tone).toBe('error');
73
- });
74
-
75
- it('assigns stable accent colors per thread id', () => {
76
- expect(getAgentThreadAccentColor('thr_worker')).toBe(
77
- getAgentThreadAccentColor('thr_worker')
78
- );
79
- });
80
- });
@@ -1,170 +0,0 @@
1
- import type { ChatSummary } from '../../api/types';
2
- import {
3
- collectLiveAgentPanelThreadIds,
4
- collectRelatedAgentThreads,
5
- describeAgentThreadSource,
6
- findMatchingAgentThread,
7
- } from '../agentThreads';
8
-
9
- function chat(
10
- id: string,
11
- partial: Partial<ChatSummary> = {}
12
- ): ChatSummary {
13
- return {
14
- id,
15
- title: partial.title ?? id,
16
- status: partial.status ?? 'complete',
17
- createdAt: partial.createdAt ?? '2026-03-20T00:00:00.000Z',
18
- updatedAt: partial.updatedAt ?? '2026-03-20T00:00:00.000Z',
19
- statusUpdatedAt: partial.statusUpdatedAt ?? '2026-03-20T00:00:00.000Z',
20
- lastMessagePreview: partial.lastMessagePreview ?? '',
21
- cwd: partial.cwd,
22
- modelProvider: partial.modelProvider,
23
- agentNickname: partial.agentNickname,
24
- agentRole: partial.agentRole,
25
- sourceKind: partial.sourceKind,
26
- parentThreadId: partial.parentThreadId,
27
- subAgentDepth: partial.subAgentDepth,
28
- lastError: partial.lastError,
29
- };
30
- }
31
-
32
- describe('agentThreads', () => {
33
- it('collects the full related thread tree for a spawned sub-agent', () => {
34
- const root = chat('thr_root', {
35
- title: 'Main task',
36
- sourceKind: 'appServer',
37
- updatedAt: '2026-03-20T00:00:01.000Z',
38
- });
39
- const child = chat('thr_child', {
40
- title: 'Worker one',
41
- sourceKind: 'subAgentThreadSpawn',
42
- parentThreadId: 'thr_root',
43
- subAgentDepth: 1,
44
- status: 'running',
45
- updatedAt: '2026-03-20T00:00:03.000Z',
46
- });
47
- const grandchild = chat('thr_grandchild', {
48
- title: 'Nested worker',
49
- sourceKind: 'subAgentThreadSpawn',
50
- parentThreadId: 'thr_child',
51
- subAgentDepth: 2,
52
- updatedAt: '2026-03-20T00:00:02.000Z',
53
- });
54
- const unrelated = chat('thr_other', {
55
- title: 'Other thread',
56
- sourceKind: 'appServer',
57
- updatedAt: '2026-03-20T00:00:04.000Z',
58
- });
59
-
60
- const result = collectRelatedAgentThreads(
61
- [root, child, grandchild, unrelated],
62
- grandchild
63
- );
64
-
65
- expect(result.rootThreadId).toBe('thr_root');
66
- expect(result.threads.map((entry) => entry.id)).toEqual([
67
- 'thr_root',
68
- 'thr_child',
69
- 'thr_grandchild',
70
- ]);
71
- });
72
-
73
- it('keeps the full related sub-agent history for the agent selector', () => {
74
- const root = chat('thr_root', {
75
- title: 'Main task',
76
- sourceKind: 'appServer',
77
- updatedAt: '2026-03-18T00:00:00.000Z',
78
- });
79
- const recentChild = chat('thr_recent', {
80
- title: 'Recent worker',
81
- sourceKind: 'subAgentThreadSpawn',
82
- parentThreadId: 'thr_root',
83
- subAgentDepth: 1,
84
- updatedAt: '2026-03-20T11:00:00.000Z',
85
- });
86
- const oldRunningChild = chat('thr_running', {
87
- title: 'Running worker',
88
- sourceKind: 'subAgentThreadSpawn',
89
- parentThreadId: 'thr_root',
90
- subAgentDepth: 1,
91
- status: 'running',
92
- updatedAt: '2026-03-17T00:00:00.000Z',
93
- });
94
- const oldFocusedChild = chat('thr_focused', {
95
- title: 'Focused worker',
96
- sourceKind: 'subAgentThreadSpawn',
97
- parentThreadId: 'thr_root',
98
- subAgentDepth: 1,
99
- updatedAt: '2026-03-17T00:00:00.000Z',
100
- });
101
- const oldCompletedChild = chat('thr_old', {
102
- title: 'Old worker',
103
- sourceKind: 'subAgentThreadSpawn',
104
- parentThreadId: 'thr_root',
105
- subAgentDepth: 1,
106
- updatedAt: '2026-03-16T00:00:00.000Z',
107
- });
108
-
109
- const result = collectRelatedAgentThreads(
110
- [root, recentChild, oldRunningChild, oldFocusedChild, oldCompletedChild],
111
- oldFocusedChild
112
- );
113
-
114
- expect(result.threads.map((entry) => entry.id)).toEqual([
115
- 'thr_root',
116
- 'thr_running',
117
- 'thr_recent',
118
- 'thr_focused',
119
- 'thr_old',
120
- ]);
121
- });
122
-
123
- it('matches agent threads by id, title, or preview text', () => {
124
- const root = chat('thr_root', { title: 'Main task' });
125
- const child = chat('thr_child', {
126
- title: 'Docs worker',
127
- agentNickname: 'Atlas',
128
- agentRole: 'explorer',
129
- lastMessagePreview: 'OpenAI docs search',
130
- });
131
-
132
- expect(findMatchingAgentThread([root, child], 'thr_child')?.id).toBe('thr_child');
133
- expect(findMatchingAgentThread([root, child], 'atlas')?.id).toBe('thr_child');
134
- expect(findMatchingAgentThread([root, child], 'explorer')?.id).toBe('thr_child');
135
- expect(findMatchingAgentThread([root, child], 'docs worker')?.id).toBe('thr_child');
136
- expect(findMatchingAgentThread([root, child], 'docs search')?.id).toBe('thr_child');
137
- });
138
-
139
- it('describes root and sub-agent source kinds for the selector', () => {
140
- const root = chat('thr_root', { sourceKind: 'appServer' });
141
- const review = chat('thr_review', {
142
- sourceKind: 'subAgentReview',
143
- parentThreadId: 'thr_root',
144
- });
145
-
146
- expect(describeAgentThreadSource(root, 'thr_root')).toBe('Main thread');
147
- expect(describeAgentThreadSource(review, 'thr_root')).toBe('Review agent');
148
- });
149
-
150
- it('includes the main thread in the live agent panel when sub-agents are active', () => {
151
- expect(
152
- collectLiveAgentPanelThreadIds([
153
- { id: 'thr_root', isRootThread: true, isActive: false },
154
- { id: 'thr_child_1', isRootThread: false, isActive: true },
155
- { id: 'thr_child_2', isRootThread: false, isActive: true },
156
- { id: 'thr_child_3', isRootThread: false, isActive: false },
157
- ])
158
- ).toEqual(['thr_root', 'thr_child_1', 'thr_child_2']);
159
- });
160
-
161
- it('keeps the live agent panel hidden when no sub-agent is active', () => {
162
- expect(
163
- collectLiveAgentPanelThreadIds([
164
- { id: 'thr_root', isRootThread: true, isActive: true },
165
- { id: 'thr_child_1', isRootThread: false, isActive: false },
166
- { id: 'thr_child_2', isRootThread: false, isActive: false },
167
- ])
168
- ).toEqual([]);
169
- });
170
- });