@openscout/scout 0.2.107 → 0.2.109

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 (545) hide show
  1. package/README.md +53 -16
  2. package/bin/scoutd +0 -0
  3. package/dist/build-manifest.json +3 -3
  4. package/dist/client/assets/conversation-motion-features-PYM3Yx_M.js +1 -0
  5. package/dist/client/assets/index-DGR8nSEY.js +88 -0
  6. package/dist/client/assets/index-rA7f7Rt0.css +1 -0
  7. package/dist/client/index.html +3 -3
  8. package/dist/main.mjs +1 -1
  9. package/package.json +26 -4
  10. package/server.json +2 -2
  11. package/dist/client/assets/ActivityScreen-CZmGwQ2U.js +0 -1
  12. package/dist/client/assets/AddProjectForm-CusDRiVO.js +0 -1
  13. package/dist/client/assets/AdventureEvidence-CyegKk1V.js +0 -5
  14. package/dist/client/assets/AdventureReader-X-hbTOi0.js +0 -4
  15. package/dist/client/assets/AdventureScenery-LPXSVP67.js +0 -1
  16. package/dist/client/assets/AgentAdventures-BAgxdOF8.js +0 -1
  17. package/dist/client/assets/AgentAvatar-CrP1eXxk.js +0 -1
  18. package/dist/client/assets/AgentConfigurationScreen-1L0IQm2w.js +0 -1
  19. package/dist/client/assets/AgentDefinitionsWorkspace-DguGs7jZ.js +0 -1
  20. package/dist/client/assets/AgentDetailCard-C4WVeJvJ.css +0 -1
  21. package/dist/client/assets/AgentDetailCard-DtHT3sCo.js +0 -1
  22. package/dist/client/assets/AgentFloorView-DH4jiDgw.js +0 -1
  23. package/dist/client/assets/AgentFloorWorld-CjoIa6jA.js +0 -1
  24. package/dist/client/assets/AgentInfoScreen-DYtmKkeE.js +0 -1
  25. package/dist/client/assets/AgentLaneCard-BaZ2g-f8.js +0 -1
  26. package/dist/client/assets/AgentLaneChrome-TF1SlJSc.js +0 -1
  27. package/dist/client/assets/AgentLaneDetailSheet-EzEPsn3g.js +0 -4
  28. package/dist/client/assets/AgentLaneSummaryResize-dpp7YvrX.js +0 -1
  29. package/dist/client/assets/AgentLanesEmbedScreen-BlSof_6S.js +0 -1
  30. package/dist/client/assets/AgentLanesPreflight-Ry-aqDTr.js +0 -1
  31. package/dist/client/assets/AgentLanesView-BJi9xXz6.js +0 -2
  32. package/dist/client/assets/AgentLiveActions-CGS-Bxb7.css +0 -1
  33. package/dist/client/assets/AgentLiveActions-CfTupTEl.js +0 -1
  34. package/dist/client/assets/AgentMasterScreen-EJhmuKgl.js +0 -1
  35. package/dist/client/assets/AgentSessions-B1gOhDBf.js +0 -6
  36. package/dist/client/assets/AgentsConsole-BjSTs-TV.css +0 -1
  37. package/dist/client/assets/AgentsConsole-RXGqRvcb.js +0 -1
  38. package/dist/client/assets/AgentsScreen-ChwMBs11.js +0 -1
  39. package/dist/client/assets/AgentsSubnav-DwNX4yy0.js +0 -1
  40. package/dist/client/assets/AstronautSuit-Cchnc4Ug.js +0 -1
  41. package/dist/client/assets/AtopView-gkEp4y__.js +0 -1
  42. package/dist/client/assets/BackToPicker-CUkjnoVk.js +0 -1
  43. package/dist/client/assets/BackToPicker-CdgVu-to.css +0 -1
  44. package/dist/client/assets/BriefingDetailScreen-DrlC3qkm.js +0 -1
  45. package/dist/client/assets/BriefingsScreen-B1HlBMGZ.js +0 -1
  46. package/dist/client/assets/BrokerMetadataPanel-Dk242Yh_.js +0 -1
  47. package/dist/client/assets/BrokerScreen-DwOF6bMA.js +0 -8
  48. package/dist/client/assets/Canvas-X9pVSkw3.js +0 -1
  49. package/dist/client/assets/CastPicker-BXUtPAGC.js +0 -1
  50. package/dist/client/assets/CastPicker-zXsnkTIy.css +0 -1
  51. package/dist/client/assets/ChannelComposer-DoK7IDGa.js +0 -1
  52. package/dist/client/assets/ChannelSidebar-e9DOPulb.js +0 -1
  53. package/dist/client/assets/CharacterFamilyPreview-BniL8sEL.css +0 -1
  54. package/dist/client/assets/CharacterFamilyPreview-DMfw7UM_.js +0 -1
  55. package/dist/client/assets/ChatAvatar-C3a_o5Hj.js +0 -1
  56. package/dist/client/assets/ChatBits-CsvxbToF.js +0 -1
  57. package/dist/client/assets/ChatCollapsedStrip-FEmQ_G9J.js +0 -1
  58. package/dist/client/assets/ChatRichInput-DhtwFxQE.js +0 -31
  59. package/dist/client/assets/ChatRightPanel-C1h_aIkn.js +0 -1
  60. package/dist/client/assets/ChatSpaceSurface-BXyLYKHn.js +0 -1
  61. package/dist/client/assets/ChatSpaceTheme-3wLZGsvT.css +0 -1
  62. package/dist/client/assets/ChatSpaceTheme-CUH8bTZc.js +0 -1
  63. package/dist/client/assets/CodeDiffPane-DuQRwpgK.js +0 -1
  64. package/dist/client/assets/CodeProjectPicker-ZQ6gSBpg.js +0 -2
  65. package/dist/client/assets/CodeScreen-BXyKeL5T.js +0 -1
  66. package/dist/client/assets/CommsCanvas-BR2YS76H.css +0 -1
  67. package/dist/client/assets/CommsCanvas-THp0r_U8.js +0 -1
  68. package/dist/client/assets/CommsDeck-BVmSMV2V.js +0 -1
  69. package/dist/client/assets/CommsFlowGraph-DxoOaLF_.js +0 -1
  70. package/dist/client/assets/CommsFlowGraph-vQucylxF.css +0 -1
  71. package/dist/client/assets/CommsFlowMap-Vi8ziCPg.js +0 -1
  72. package/dist/client/assets/CommsSelection-BUoRbu9o.js +0 -1
  73. package/dist/client/assets/ComposerAttachments-DW0AIb8k.js +0 -1
  74. package/dist/client/assets/ConversationComposer-CUQyArlk.js +0 -1
  75. package/dist/client/assets/ConversationFeedRows-DWiOfT-y.js +0 -1
  76. package/dist/client/assets/ConversationHeader-C-ZWscKj.js +0 -1
  77. package/dist/client/assets/ConversationPanels-D9oC0xG5.js +0 -6
  78. package/dist/client/assets/ConversationScreen-9MlMnEo4.css +0 -1
  79. package/dist/client/assets/ConversationScreen-CUfsQ4MR.js +0 -2
  80. package/dist/client/assets/ConversationStatus--IPm2nGh.js +0 -1
  81. package/dist/client/assets/CrewAvatar-BnIPIn_Z.css +0 -1
  82. package/dist/client/assets/CrewAvatar-kTznzqcO.js +0 -1
  83. package/dist/client/assets/CrewSprite-Dhryjx2c.js +0 -1
  84. package/dist/client/assets/CrewSprite-DsQJdu3Z.css +0 -1
  85. package/dist/client/assets/CrewStage-vdO0qm3D.js +0 -1
  86. package/dist/client/assets/CrewWorkspaces-DCBzAAS4.js +0 -1
  87. package/dist/client/assets/CrewWorkspaces-DDuYMByu.css +0 -1
  88. package/dist/client/assets/DataTable-aH-jCyDq.js +0 -1
  89. package/dist/client/assets/DispatchAftermath-66uQAorV.js +0 -1
  90. package/dist/client/assets/DocumentFocusViewer-BSC_JwVE.css +0 -1
  91. package/dist/client/assets/DocumentFocusViewer-DJr0v0D_.js +0 -1
  92. package/dist/client/assets/EmbeddableSurfacesLab-BBa70EhJ.js +0 -1
  93. package/dist/client/assets/EmptyState-CZlrHXy-.js +0 -1
  94. package/dist/client/assets/FileViewerPane-BAO6mtjD.js +0 -3
  95. package/dist/client/assets/FleetRollCallHud-C5q2567n.js +0 -1
  96. package/dist/client/assets/FlightObserveScreen-DZ2mrw91.js +0 -1
  97. package/dist/client/assets/FloorContextSheet-2_NVPQor.js +0 -1
  98. package/dist/client/assets/FloorExchangePanel-B3TFhjLk.css +0 -1
  99. package/dist/client/assets/FloorExchangePanel-BU1pPu8K.js +0 -1
  100. package/dist/client/assets/FloorMessagePasses-cLW2UGNP.js +0 -1
  101. package/dist/client/assets/FloorMessagePasses-nxwwiUom.css +0 -1
  102. package/dist/client/assets/FloorReplay-VFzA6Kxc.js +0 -1
  103. package/dist/client/assets/FloorResourcesSheet-C-kQ6Ren.js +0 -1
  104. package/dist/client/assets/FloorSavedWork-BeHDejWz.js +0 -1
  105. package/dist/client/assets/FloorTacticalHUD-CO-iiFpb.js +0 -1
  106. package/dist/client/assets/FollowScreen-CFfkIbc6.js +0 -1
  107. package/dist/client/assets/HarnessMark-C4naWc16.js +0 -1
  108. package/dist/client/assets/HarnessesScreen-DX3NLcDG.js +0 -1
  109. package/dist/client/assets/HerdrSession-_t7yM8vX.js +0 -4
  110. package/dist/client/assets/HomeHero-7JwycwFY.css +0 -1
  111. package/dist/client/assets/HomeHero-DouPyNmz.js +0 -1
  112. package/dist/client/assets/HostAdvisorView-CnM1i8hW.js +0 -1
  113. package/dist/client/assets/InviteLandingScreen-CEjG2E34.js +0 -1
  114. package/dist/client/assets/InviteSheet-CwxZtWCl.js +0 -1
  115. package/dist/client/assets/JumpPalette-O1aJE9gR.js +0 -1
  116. package/dist/client/assets/KnowledgeSearchInspector-32n9baT-.js +0 -1
  117. package/dist/client/assets/KnowledgeSearchScreen-Dd6jrQ0A.js +0 -1
  118. package/dist/client/assets/LaneToolHoverCard-CJa110yk.js +0 -1
  119. package/dist/client/assets/LaneTraceDetailSheet-DYrd0BIf.js +0 -1
  120. package/dist/client/assets/LaneTraceEventFocus-TbrNHRj_.js +0 -1
  121. package/dist/client/assets/MeshCanvas-DWZHYh1A.js +0 -3
  122. package/dist/client/assets/MeshCanvasMinimap-Dv7nMbl5.css +0 -1
  123. package/dist/client/assets/MeshCanvasMinimap-iswYFpIb.js +0 -1
  124. package/dist/client/assets/MeshScreen-8nAzQVbm.js +0 -1
  125. package/dist/client/assets/MeshTopologyView-BVvtqI8q.js +0 -2
  126. package/dist/client/assets/MessageEmbeds-ksPazAKH.js +0 -1
  127. package/dist/client/assets/MessagesScreen-C3WB4T21.js +0 -1
  128. package/dist/client/assets/MissionContextRail-D62-Wis8.js +0 -1
  129. package/dist/client/assets/MissionControlView-B9cNPXvl.js +0 -1
  130. package/dist/client/assets/MissionFocusOverlay-C1zys3Jv.js +0 -1
  131. package/dist/client/assets/MissionLeftAgentRow-vycMV77n.js +0 -1
  132. package/dist/client/assets/MissionLogPane-B19lYSY9.js +0 -1
  133. package/dist/client/assets/NativeAreaScreen-B1RLa85C.js +0 -1
  134. package/dist/client/assets/NativeAreaScreen-CV0OhGra.js +0 -1
  135. package/dist/client/assets/NativeAreaScreen-CzuZt6o1.js +0 -1
  136. package/dist/client/assets/NewAgentModal-Bh-L-emz.js +0 -1
  137. package/dist/client/assets/NewAgentModal-ru8u5YdJ.css +0 -1
  138. package/dist/client/assets/NewChatComposer-C5LT7MF7.css +0 -1
  139. package/dist/client/assets/NewChatComposer-C97-iTMK.js +0 -19
  140. package/dist/client/assets/NewChatOrigin-DFbF_XvR.js +0 -1
  141. package/dist/client/assets/NodeDetailPanel-CElOEpCh.js +0 -1
  142. package/dist/client/assets/NodeMenu-B-jjHf1c.js +0 -1
  143. package/dist/client/assets/ObserveEmbedScreen-B7Qt69Ms.js +0 -2
  144. package/dist/client/assets/ObserveTextFlow-PFnG_10h.js +0 -2
  145. package/dist/client/assets/ObservedTopologyPanel-BsBsvVPL.css +0 -1
  146. package/dist/client/assets/ObservedTopologyPanel-CUTIoLZJ.js +0 -2
  147. package/dist/client/assets/OpenScoutAppShell-37PDFfA4.js +0 -31
  148. package/dist/client/assets/OpenScoutAppShell-Bh6FnEJO.css +0 -1
  149. package/dist/client/assets/OpsAgentsView-DajlX8LO.js +0 -1
  150. package/dist/client/assets/OpsScreen-jVcaBKGi.js +0 -1
  151. package/dist/client/assets/OpsSubnav-BOOYShHE.js +0 -1
  152. package/dist/client/assets/ProjectAgentProfile-D_wlW4sQ.js +0 -1
  153. package/dist/client/assets/ProjectAgentProfileBar-DHuMKJj-.js +0 -1
  154. package/dist/client/assets/ProjectAgentProfileHero-Dbebtug1.js +0 -1
  155. package/dist/client/assets/ProjectsInbox-B8zYE4vP.css +0 -1
  156. package/dist/client/assets/ProjectsInbox-Cgu7B4--.js +0 -2
  157. package/dist/client/assets/ProjectsRail-CDWocin_.js +0 -1
  158. package/dist/client/assets/ProjectsScreen-B_CJycqW.js +0 -1
  159. package/dist/client/assets/ProjectsThreadAside-1MMl_qUD.js +0 -1
  160. package/dist/client/assets/Provider-C35yu29I.js +0 -5
  161. package/dist/client/assets/Provider-CCzjtkda.css +0 -1
  162. package/dist/client/assets/RailRow-B25zKEub.css +0 -1
  163. package/dist/client/assets/RailRow-BjmWK420.js +0 -1
  164. package/dist/client/assets/RawSessionsTable-DzT90hWu.js +0 -1
  165. package/dist/client/assets/RealtimeVoiceScreen-B6ylX3WQ.js +0 -16
  166. package/dist/client/assets/RenderedWorkerSprite-Dhlyg89J.js +0 -1
  167. package/dist/client/assets/RenderedWorkerSprite-qnTfkd_4.css +0 -1
  168. package/dist/client/assets/ReplayClock-348f17bW.js +0 -1
  169. package/dist/client/assets/ReplayLog-CBnAM3ui.js +0 -1
  170. package/dist/client/assets/ReplayOutpost-DyRPfNFx.js +0 -1
  171. package/dist/client/assets/ReplayOutpost-Y1DvZgeu.css +0 -1
  172. package/dist/client/assets/RepoDiffEmbedScreen-BWxvRDrS.js +0 -1
  173. package/dist/client/assets/RepoDiffPageScreen-DN94irmY.js +0 -1
  174. package/dist/client/assets/RepoDiffViewer-_4JVXBIW.js +0 -7
  175. package/dist/client/assets/RepoDiffViewerLazy-XGVC3WXv.js +0 -2
  176. package/dist/client/assets/ReposScreen-uMCpt0e9.js +0 -6
  177. package/dist/client/assets/RiggedWorkerCharacter-BpYECnyK.css +0 -1
  178. package/dist/client/assets/RiggedWorkerCharacter-q6QRc7_o.js +0 -1
  179. package/dist/client/assets/SageModelStudio-768dRQr4.css +0 -1
  180. package/dist/client/assets/SageModelStudio-CNDhZhgD.js +0 -4108
  181. package/dist/client/assets/ScoutDeckSurface-CUaU4R6T.js +0 -1
  182. package/dist/client/assets/ScoutDeckSurface-uhmuZRzC.css +0 -1
  183. package/dist/client/assets/ScoutSurface-3_25USO_.js +0 -1
  184. package/dist/client/assets/ScoutbotFxLab-CRqhYe0a.js +0 -4
  185. package/dist/client/assets/SecondaryNav-D7dbV2qo.js +0 -1
  186. package/dist/client/assets/SessionContextStrip-CXfs9hUD.js +0 -1
  187. package/dist/client/assets/SessionContextStrip-DAIXwtHd.css +0 -1
  188. package/dist/client/assets/SessionEmbedScreen-D0zFmou-.js +0 -1
  189. package/dist/client/assets/SessionHopMenu-E6VJZrE0.js +0 -1
  190. package/dist/client/assets/SessionObserve-CDdJ7fAE.css +0 -1
  191. package/dist/client/assets/SessionObserve-DXxBvejJ.js +0 -12
  192. package/dist/client/assets/SessionObserveEvidence-Cuj_KHxR.js +0 -1
  193. package/dist/client/assets/SessionRefScreen-DqLSUlCE.js +0 -1
  194. package/dist/client/assets/SessionsScreen-BLIRkohT.js +0 -1
  195. package/dist/client/assets/SettingsDrawer-R8a0TlJD.css +0 -1
  196. package/dist/client/assets/SettingsDrawer-juCpnbH6.js +0 -3
  197. package/dist/client/assets/SettingsScreen-BtGzE2-O.js +0 -1
  198. package/dist/client/assets/SharedFloorCharacter-Bi5_md4R.css +0 -1
  199. package/dist/client/assets/SharedFloorCharacter-DNEiaOUh.js +0 -1
  200. package/dist/client/assets/SharedWorkFloor-0rqtdF-n.css +0 -1
  201. package/dist/client/assets/SharedWorkFloor-D9mf9KSg.js +0 -2
  202. package/dist/client/assets/ShikiPane-CRtTYkMj.js +0 -15
  203. package/dist/client/assets/SlidePanel-Bg5dVaIa.css +0 -1
  204. package/dist/client/assets/SlidePanel-_CHAQdOa.js +0 -1
  205. package/dist/client/assets/SpaceSwitcher-BLgSCf_T.js +0 -1
  206. package/dist/client/assets/SpriteAvatar-CpZWf54-.js +0 -1
  207. package/dist/client/assets/SproutActionSprite-BSiTS4en.js +0 -1
  208. package/dist/client/assets/StatusPill-2gCP6H7A.js +0 -1
  209. package/dist/client/assets/TailView-CYSijNTy.js +0 -2
  210. package/dist/client/assets/TailView-Mj3AU2u0.css +0 -1
  211. package/dist/client/assets/Terminal-Bi97yb5s.js +0 -4
  212. package/dist/client/assets/TerminalEmbedScreen-Bqop67Bq.js +0 -1
  213. package/dist/client/assets/TerminalHeaderMount-Cq4OD_xN.js +0 -1
  214. package/dist/client/assets/TerminalRelay-DrikpUSJ.js +0 -46
  215. package/dist/client/assets/TextDocumentSurface-D52m7Vd8.js +0 -4
  216. package/dist/client/assets/TmuxPeek-CXFeweMg.js +0 -1
  217. package/dist/client/assets/VoiceControlWell-DF3bjcYA.js +0 -1
  218. package/dist/client/assets/VoicePathDiagram-CmpHWfO-.js +0 -1
  219. package/dist/client/assets/VoicePermissionsPanel-Ok2nfxHw.js +0 -1
  220. package/dist/client/assets/VoicePermissionsPanel-RijAZ1gP.css +0 -1
  221. package/dist/client/assets/VoiceTurnDetails-wAByRaNB.js +0 -8
  222. package/dist/client/assets/VoiceTurnStage-edoJalLV.js +0 -1
  223. package/dist/client/assets/VoiceTurnView-D-8g5E4r.js +0 -1
  224. package/dist/client/assets/WorkDetailScreen-zQkNVy2F.js +0 -5
  225. package/dist/client/assets/WorkFilesViewer-vNt01sDd.js +0 -1
  226. package/dist/client/assets/WorkRunView-BDkR7Edq.js +0 -1
  227. package/dist/client/assets/WorkRunView-CxwAZ2QQ.css +0 -1
  228. package/dist/client/assets/WorldActorTalk-BvSg_b1y.js +0 -1
  229. package/dist/client/assets/WorldCharacter-CIIlutQq.js +0 -1
  230. package/dist/client/assets/WorldMinimap-B6HNgcDe.js +0 -1
  231. package/dist/client/assets/WorldSky-Jm2Z6dfW.js +0 -1
  232. package/dist/client/assets/activity-CIlFrfPJ.js +0 -1
  233. package/dist/client/assets/addon-fit-dFpj9Kfq.js +0 -1
  234. package/dist/client/assets/addon-webgl-BFCGRtGh.js +0 -82
  235. package/dist/client/assets/adventure-evidence-DgQbBmfa.css +0 -1
  236. package/dist/client/assets/adventure-habitats-v1-CVMbdB_Z.png +0 -0
  237. package/dist/client/assets/adventure-habitats-v1-M1lcpTJh.js +0 -1
  238. package/dist/client/assets/adventure-playback-DTfkhIc0.js +0 -3
  239. package/dist/client/assets/adventure-reader-DM5UDDm9.css +0 -1
  240. package/dist/client/assets/agent-adventures-DZtWpj6k.css +0 -1
  241. package/dist/client/assets/agent-definitions-CymTYqvo.css +0 -1
  242. package/dist/client/assets/agent-directory-studio-injection-Bc8590z5.css +0 -1
  243. package/dist/client/assets/agent-essentials-BGGvT5G6.js +0 -1
  244. package/dist/client/assets/agent-floor-Dmr9hZHL.css +0 -1
  245. package/dist/client/assets/agent-floor-actor-DW8zLht0.js +0 -1
  246. package/dist/client/assets/agent-floor-world-Bnd1AtwK.css +0 -1
  247. package/dist/client/assets/agent-floor-world-layout-hfMjuoui.js +0 -1
  248. package/dist/client/assets/agent-lane-card-BkWVDYM8.css +0 -1
  249. package/dist/client/assets/agent-lane-card-model-CeqQGp-8.js +0 -1
  250. package/dist/client/assets/agent-lane-detail-Ti3trpfH.js +0 -2
  251. package/dist/client/assets/agent-lane-preview-Dpa3DuOn.js +0 -4
  252. package/dist/client/assets/agent-lanes-DmgipV9D.css +0 -1
  253. package/dist/client/assets/agent-lanes-model-DMAdqCmK.js +0 -4
  254. package/dist/client/assets/agent-master-THmq-1k8.css +0 -1
  255. package/dist/client/assets/agent-master-model-Bk_yuUXJ.js +0 -1
  256. package/dist/client/assets/agent-specialization-DDc7mLCW.js +0 -1
  257. package/dist/client/assets/agent-state-DDhnFEEP.js +0 -1
  258. package/dist/client/assets/agents-detail-redesign-h34ROjOW.css +0 -1
  259. package/dist/client/assets/agents-project-DgbqDc65.css +0 -1
  260. package/dist/client/assets/agents-screen-BYakbO50.css +0 -1
  261. package/dist/client/assets/api-BQYTwoz6.js +0 -1
  262. package/dist/client/assets/api-DSqpVKC7.js +0 -1
  263. package/dist/client/assets/arc.es-C1SQHJ3k.js +0 -188
  264. package/dist/client/assets/arrow-left-MVUKauwQ.js +0 -1
  265. package/dist/client/assets/arrow-right-Bp-FpE5V.js +0 -1
  266. package/dist/client/assets/arrow-up-right-BPedAgxO.js +0 -1
  267. package/dist/client/assets/bash-format-BRV5C6Gv.js +0 -1
  268. package/dist/client/assets/book-open-CV98WMSp.js +0 -1
  269. package/dist/client/assets/bot-B4zLQ4IN.js +0 -1
  270. package/dist/client/assets/briefings-BwuAFQK6.css +0 -1
  271. package/dist/client/assets/broker-display-BkBzyvbR.js +0 -2
  272. package/dist/client/assets/cache-DGBo3vIf.js +0 -2
  273. package/dist/client/assets/chat-api-DSJMBYoT.js +0 -2
  274. package/dist/client/assets/chat-message-markup-91DIry6R.js +0 -1
  275. package/dist/client/assets/chat-space-model-aW3Fd8_U.js +0 -4
  276. package/dist/client/assets/chat-transport-DNS5CB2I.js +0 -1
  277. package/dist/client/assets/check-lrJ3a73a.js +0 -1
  278. package/dist/client/assets/chevron-down-l1mrh5S9.js +0 -1
  279. package/dist/client/assets/chevron-right-DrfqcerI.js +0 -1
  280. package/dist/client/assets/chevron-up-CETZJzjV.js +0 -1
  281. package/dist/client/assets/chunk-HRAB3GC3-DbVLgbWX.js +0 -1
  282. package/dist/client/assets/clipboard-e3fSpeo7.js +0 -1
  283. package/dist/client/assets/clock-BV1aqPkK.js +0 -1
  284. package/dist/client/assets/code-screen-DrKinCyh.css +0 -1
  285. package/dist/client/assets/code-xml-BhcNbLWU.js +0 -1
  286. package/dist/client/assets/coffee-D7EAOdCk.js +0 -1
  287. package/dist/client/assets/collapsed-strip-raJWthAH.css +0 -1
  288. package/dist/client/assets/colors-CFlbwC25.js +0 -1
  289. package/dist/client/assets/comms-deck-C8nVeMBh.css +0 -1
  290. package/dist/client/assets/comms-deck-CBhsXnY-.js +0 -2
  291. package/dist/client/assets/comms-gesture-_aGFo6g3.js +0 -2
  292. package/dist/client/assets/compass-63TUaz5_.js +0 -1
  293. package/dist/client/assets/console-B1IBqLI_.css +0 -1
  294. package/dist/client/assets/content-B1lgE8qr.js +0 -1
  295. package/dist/client/assets/content-B5l11YyQ.js +0 -1
  296. package/dist/client/assets/content-BNZOZEpX.js +0 -1
  297. package/dist/client/assets/content-BRIxP155.js +0 -1
  298. package/dist/client/assets/content-BWd8gt8L.js +0 -1
  299. package/dist/client/assets/content-BfwS2jAK.js +0 -1
  300. package/dist/client/assets/content-C4p43_eT.js +0 -1
  301. package/dist/client/assets/content-CINHz-rZ.css +0 -1
  302. package/dist/client/assets/content-CdYfaoDV.js +0 -1
  303. package/dist/client/assets/content-CzldLxw0.js +0 -1
  304. package/dist/client/assets/content-D-olnc4U.js +0 -1
  305. package/dist/client/assets/content-DTioimq4.js +0 -1
  306. package/dist/client/assets/content-LOebm3_d.js +0 -1
  307. package/dist/client/assets/content-nGlEZhUI.js +0 -1
  308. package/dist/client/assets/content-oyzDM-LK.js +0 -1
  309. package/dist/client/assets/content-x1PHxED7.js +0 -1
  310. package/dist/client/assets/content-zX3ZY3T9.js +0 -1
  311. package/dist/client/assets/context-budget-8qFKqM-j.js +0 -1
  312. package/dist/client/assets/conversation-icons-Tqba2d56.js +0 -1
  313. package/dist/client/assets/conversation-model-FxDeWlle.js +0 -1
  314. package/dist/client/assets/conversation-motion-features-C5zjuNwE.js +0 -1
  315. package/dist/client/assets/conversation-prefs-DNre-Lcx.js +0 -1
  316. package/dist/client/assets/conversations-DoAAO6kA.js +0 -1
  317. package/dist/client/assets/copy-xKeM5ZtU.js +0 -1
  318. package/dist/client/assets/cpu-BOTa_WLr.js +0 -1
  319. package/dist/client/assets/createLucideIcon-zZ8Hx7er.js +0 -1
  320. package/dist/client/assets/credentials-OeoF-VKJ.js +0 -1
  321. package/dist/client/assets/ctx-panel-BC8fpcWJ.css +0 -1
  322. package/dist/client/assets/direct-voice-BbLPuJ04.js +0 -2
  323. package/dist/client/assets/direct-voice-DbO7CSv_.css +0 -1
  324. package/dist/client/assets/discover-DJFxyV1k.js +0 -2
  325. package/dist/client/assets/embed-entry-Lyvu0Kfc.js +0 -2
  326. package/dist/client/assets/embed-navigation-DayfkQau.js +0 -1
  327. package/dist/client/assets/external-link-CUObqmgX.js +0 -1
  328. package/dist/client/assets/eye-LrO-cXQt.js +0 -1
  329. package/dist/client/assets/file-code-corner-CsU7jJpu.js +0 -1
  330. package/dist/client/assets/file-text-CnISiiw6.js +0 -1
  331. package/dist/client/assets/flag-C4wl8z2-.js +0 -1
  332. package/dist/client/assets/fleet-roll-call-BUgf7w-V.css +0 -1
  333. package/dist/client/assets/flight-observe-GFg9L8ft.css +0 -1
  334. package/dist/client/assets/floor-character-name-CqJPOlXb.js +0 -1
  335. package/dist/client/assets/floor-context-model-rWKqaKmV.js +0 -1
  336. package/dist/client/assets/floor-context-sheet-BFnkFiY3.css +0 -1
  337. package/dist/client/assets/floor-memory-YMM8AlLY.js +0 -1
  338. package/dist/client/assets/floor-message-passes-CO3Ix_wR.js +0 -1
  339. package/dist/client/assets/floor-preview-text-HrORUJ7D.js +0 -1
  340. package/dist/client/assets/floor-replay-CccYqE-f.css +0 -1
  341. package/dist/client/assets/floor-tactical-hud-HL5Vja5Y.css +0 -1
  342. package/dist/client/assets/folder-D5prSkzz.js +0 -1
  343. package/dist/client/assets/follow-route-BvcGtBIL.js +0 -1
  344. package/dist/client/assets/fx-z37u1o2z.js +0 -1
  345. package/dist/client/assets/gauge-D9_5iJEm.js +0 -1
  346. package/dist/client/assets/gestures-QZub3Ot9.js +0 -1
  347. package/dist/client/assets/git-branch-B0_fPLO7.js +0 -1
  348. package/dist/client/assets/go-shortcuts-DicR7sUf.js +0 -1
  349. package/dist/client/assets/harnesses-screen-2z36fJKE.css +0 -1
  350. package/dist/client/assets/home-live-action-BkqGLVRY.js +0 -1
  351. package/dist/client/assets/home-moving-signal-DMguaRWR.css +0 -1
  352. package/dist/client/assets/home-moving-signal-rpMhsOJB.js +0 -1
  353. package/dist/client/assets/home-now-card-ByE6Umcx.js +0 -1
  354. package/dist/client/assets/home-now-card-nano-B5Dv3-pb.js +0 -1
  355. package/dist/client/assets/hooks-D787lBmm.css +0 -1
  356. package/dist/client/assets/hooks-_eCZZPsR.js +0 -2
  357. package/dist/client/assets/host-advisor-B2Fqs5Dd.css +0 -1
  358. package/dist/client/assets/inbox-thread-redesign-B_1ocqaX.css +0 -1
  359. package/dist/client/assets/index-724SdE6r.js +0 -1
  360. package/dist/client/assets/index-BWHgHrtv.js +0 -1
  361. package/dist/client/assets/index-CHD0qcfL.js +0 -1
  362. package/dist/client/assets/index-CN4rBB_s.css +0 -1
  363. package/dist/client/assets/index-D1d98iYf.js +0 -1
  364. package/dist/client/assets/index-EsrkGBcv.js +0 -10
  365. package/dist/client/assets/index-gGHPA-By.js +0 -1
  366. package/dist/client/assets/index-wLwc74Pu.css +0 -1
  367. package/dist/client/assets/inspector-panel-BkgUDn6G.js +0 -2
  368. package/dist/client/assets/keyboard-nav-DDHegDbx.js +0 -1
  369. package/dist/client/assets/knowledge-search-BNdQweGz.css +0 -1
  370. package/dist/client/assets/lane-ask-display-BTVSakyo.js +0 -18
  371. package/dist/client/assets/lane-edit-display-BjdT9oZl.js +0 -9
  372. package/dist/client/assets/lane-observe-CteDwdD-.js +0 -7
  373. package/dist/client/assets/lane-roster-store-D-RSWjb-.js +0 -1
  374. package/dist/client/assets/lane-tool-detail-Czggx8oM.js +0 -9
  375. package/dist/client/assets/layers-C8PDiMul.js +0 -1
  376. package/dist/client/assets/layout-grid-Cor2frzj.js +0 -1
  377. package/dist/client/assets/left-BV9yMiTL.css +0 -1
  378. package/dist/client/assets/left-Bn5X7x2o.js +0 -2
  379. package/dist/client/assets/left-BqS0fYX1.js +0 -1
  380. package/dist/client/assets/left-CAaRBK9S.css +0 -1
  381. package/dist/client/assets/left-CTCeeeD3.js +0 -1
  382. package/dist/client/assets/left-DhtVPVux.js +0 -1
  383. package/dist/client/assets/left-K39b-Wvx.js +0 -2
  384. package/dist/client/assets/left-KGmueNPt.js +0 -1
  385. package/dist/client/assets/left-P_GOYB-s.js +0 -1
  386. package/dist/client/assets/left-R2OOE7VG.css +0 -1
  387. package/dist/client/assets/left-advisor-B0N47De2.js +0 -1
  388. package/dist/client/assets/left-agents-CsSNc51Y.js +0 -1
  389. package/dist/client/assets/left-default-BlO5LP2T.js +0 -1
  390. package/dist/client/assets/left-lanes-C4PhaJE6.js +0 -1
  391. package/dist/client/assets/left-mission-BjTE5vPa.js +0 -1
  392. package/dist/client/assets/left-mission-DENnfshd.css +0 -1
  393. package/dist/client/assets/library-CkWNPHRp.js +0 -1
  394. package/dist/client/assets/loader-circle-OvccU82H.js +0 -1
  395. package/dist/client/assets/local-agents-BqnoxJrq.js +0 -1
  396. package/dist/client/assets/log-in-7SnYqW5w.js +0 -1
  397. package/dist/client/assets/machine-children-DxcqCLmd.js +0 -1
  398. package/dist/client/assets/machine-scope-DJt9RZ2w.js +0 -1
  399. package/dist/client/assets/media-blobs-Bi8pxr1u.js +0 -1
  400. package/dist/client/assets/mentions-ByUvhS-v.js +0 -1
  401. package/dist/client/assets/mesh-ops-B1kDjizF.css +0 -1
  402. package/dist/client/assets/mesh-ops-CiZ8xSAx.js +0 -1
  403. package/dist/client/assets/mesh-screen-DjA4mOaN.css +0 -1
  404. package/dist/client/assets/mesh-view-store-DZvJC4KU.js +0 -1
  405. package/dist/client/assets/message-circle-CxRVKNE-.js +0 -1
  406. package/dist/client/assets/message-markup-BQW5jdJw.js +0 -15
  407. package/dist/client/assets/message-markup-Zwo3t4cI.js +0 -1
  408. package/dist/client/assets/message-square-BxesYglW.js +0 -1
  409. package/dist/client/assets/message-visibility-DwxgcgYK.js +0 -1
  410. package/dist/client/assets/mission-control-CsX3Yc58.css +0 -1
  411. package/dist/client/assets/mission-control-model-BpJHDV5D.js +0 -1
  412. package/dist/client/assets/mission-control-store-elEEsIvb.js +0 -1
  413. package/dist/client/assets/mission-wall-CAo4BKfa.js +0 -1
  414. package/dist/client/assets/model-CBkMvT1w.js +0 -1
  415. package/dist/client/assets/monitor-DTTYEb73.js +0 -1
  416. package/dist/client/assets/nav-destinations-uorRqFxf.js +0 -1
  417. package/dist/client/assets/observe-BJqERJVj.js +0 -1
  418. package/dist/client/assets/openAgent-Dbv5wfuL.js +0 -1
  419. package/dist/client/assets/openContent-C6XO6kr5.js +0 -1
  420. package/dist/client/assets/operator-attention-DBaRg5ep.js +0 -1
  421. package/dist/client/assets/ops-agents-BOYxzPTm.css +0 -1
  422. package/dist/client/assets/ops-atop-BB4B4JdE.css +0 -1
  423. package/dist/client/assets/ops-screen-CxYM0VOW.css +0 -1
  424. package/dist/client/assets/page-status-BswZLqvA.js +0 -1
  425. package/dist/client/assets/page-status-bar-ByUD7VPM.css +0 -1
  426. package/dist/client/assets/panel-right-Bv7sP_fc.js +0 -1
  427. package/dist/client/assets/paperclip-BjcuP_Hx.js +0 -1
  428. package/dist/client/assets/pause-C2XTlkjs.js +0 -1
  429. package/dist/client/assets/persistent-state-KRk_yb0q.js +0 -1
  430. package/dist/client/assets/pin-C2mFOV1l.js +0 -1
  431. package/dist/client/assets/pip-idle-v1-Tt-CZsRG.png +0 -0
  432. package/dist/client/assets/pip-thinking-v1-BoHWSEye.png +0 -0
  433. package/dist/client/assets/pip-waiting-v1-DkuvJ-dN.png +0 -0
  434. package/dist/client/assets/pip-working-v1-wWQLRS1z.png +0 -0
  435. package/dist/client/assets/play-FT6K3It1.js +0 -1
  436. package/dist/client/assets/plus-DFDDeGKu.js +0 -1
  437. package/dist/client/assets/profile-DTmzN16I.js +0 -1
  438. package/dist/client/assets/project-overview-helpers-BQTc_Ous.js +0 -1
  439. package/dist/client/assets/projects-inbox-C0FUCv_p.js +0 -1
  440. package/dist/client/assets/projects-inbox-ColX6lpx.css +0 -1
  441. package/dist/client/assets/provider-Dojd8quC.js +0 -1
  442. package/dist/client/assets/proxy-AJsmwA6h.js +0 -1
  443. package/dist/client/assets/radio-DRoOZsws.js +0 -1
  444. package/dist/client/assets/refresh-cw-BmVr7sCD.js +0 -1
  445. package/dist/client/assets/repo-diff-DyYmQMSA.css +0 -1
  446. package/dist/client/assets/resizable-columns-C7ygvLt8.css +0 -1
  447. package/dist/client/assets/resolve-panes-pbY1fCWi.js +0 -1
  448. package/dist/client/assets/resolve-sidebar-context-YWkZTq1t.js +0 -1
  449. package/dist/client/assets/right-49kO-6nD.js +0 -1
  450. package/dist/client/assets/right-APtItA8A.js +0 -1
  451. package/dist/client/assets/right-BJwhPqtn.js +0 -1
  452. package/dist/client/assets/right-BPqrf4ek.js +0 -1
  453. package/dist/client/assets/right-D7djOy6K.js +0 -1
  454. package/dist/client/assets/right-DKOUCRob.js +0 -1
  455. package/dist/client/assets/right-DMNrVzg7.js +0 -1
  456. package/dist/client/assets/right-DWPVB-nK.js +0 -2
  457. package/dist/client/assets/right-DppeMCy4.js +0 -1
  458. package/dist/client/assets/right-GAL5Mw1v.js +0 -1
  459. package/dist/client/assets/rocket-CGl4RTV7.js +0 -1
  460. package/dist/client/assets/router-DCtl8wqb.js +0 -1
  461. package/dist/client/assets/runtime-picker-C3JwrDKP.css +0 -1
  462. package/dist/client/assets/runtime-picker-DXu2bOTh.js +0 -1
  463. package/dist/client/assets/scope-views-4khCg2_z.css +0 -1
  464. package/dist/client/assets/scope-views-RUWwCVAr.js +0 -1
  465. package/dist/client/assets/scout-voice-CZx60X6E.js +0 -1
  466. package/dist/client/assets/scoutbot-Bk3nyrkj.js +0 -3
  467. package/dist/client/assets/scoutbot-markdown-BKEBSbG0.js +0 -6
  468. package/dist/client/assets/scroll-text-DNjxhyO2.js +0 -1
  469. package/dist/client/assets/search-DT42oyRW.js +0 -1
  470. package/dist/client/assets/secondaryNavConfig-CS1svh6n.js +0 -1
  471. package/dist/client/assets/secondaryNavConfig-D15P1Y9k.css +0 -1
  472. package/dist/client/assets/selection-bridge-x3wFUjxj.js +0 -1
  473. package/dist/client/assets/send-horizontal-CH0-fbZE.js +0 -1
  474. package/dist/client/assets/send-to-agent-session-DoKCDBJ4.js +0 -1
  475. package/dist/client/assets/server-QfsgMLk1.js +0 -1
  476. package/dist/client/assets/session-catalog-CvSdPHPe.js +0 -1
  477. package/dist/client/assets/session-recap-lanes-D-eVJnpY.js +0 -1
  478. package/dist/client/assets/session-recap-queue-41l2XVkI.js +0 -1
  479. package/dist/client/assets/session-ref-lookup-state-SATH_jAP.js +0 -1
  480. package/dist/client/assets/session-table-L-pns6Zl.js +0 -1
  481. package/dist/client/assets/sessionRead-CvFz2RHv.js +0 -1
  482. package/dist/client/assets/sessions-view-Dc-QAa7O.js +0 -1
  483. package/dist/client/assets/settings-BVh7kldq.js +0 -1
  484. package/dist/client/assets/shared-work-artifacts-DfNl9KTo.js +0 -1
  485. package/dist/client/assets/sliders-horizontal-782VC_yy.js +0 -1
  486. package/dist/client/assets/solar-system-scope-2k-stars-points-1FwHnkj0.png +0 -0
  487. package/dist/client/assets/sparkles-BjHq_DNK.js +0 -1
  488. package/dist/client/assets/sprout-action-sprite-DZ8C0fTl.css +0 -1
  489. package/dist/client/assets/sprout-actions-proof-v1-BzUdc812.png +0 -0
  490. package/dist/client/assets/sse-BCPRocpq.js +0 -1
  491. package/dist/client/assets/status-tone-BM_zuRy1.js +0 -1
  492. package/dist/client/assets/surface-activity-B1rgWB1i.js +0 -1
  493. package/dist/client/assets/synthetic-agent-routing-aduMYO7P.js +0 -1
  494. package/dist/client/assets/system-surfaces-redesign-q2BmCB7e.css +0 -1
  495. package/dist/client/assets/tail-display-DHSNmvor.js +0 -2
  496. package/dist/client/assets/tail-events-d0yAYxR0.js +0 -1
  497. package/dist/client/assets/terminal-hQKQygcf.js +0 -1
  498. package/dist/client/assets/terminal-relay-Bxs1hp-j.js +0 -1
  499. package/dist/client/assets/terminal-screen-Bpb2SZrn.css +0 -1
  500. package/dist/client/assets/terminal-sessions-3RfJpen8.js +0 -1
  501. package/dist/client/assets/terminal-takeover-Ay5C2c-M.js +0 -1
  502. package/dist/client/assets/theme-vars-DNK0nn3k.js +0 -1
  503. package/dist/client/assets/time-Dhsh_2EG.js +0 -1
  504. package/dist/client/assets/triangle-alert-CHoRGdVO.js +0 -1
  505. package/dist/client/assets/types-B0PlfpKc.js +0 -1
  506. package/dist/client/assets/ui-LM8pS8qE.js +0 -1
  507. package/dist/client/assets/use-beside-DoRC1nt0.js +0 -1
  508. package/dist/client/assets/use-conversation-list-CY4JciOV.js +0 -1
  509. package/dist/client/assets/use-fleet-active-asks-CymmXWH4.js +0 -1
  510. package/dist/client/assets/use-mesh-node-state-BvaqtODo.js +0 -1
  511. package/dist/client/assets/use-mesh-ops-items-BSYaqH_0.js +0 -1
  512. package/dist/client/assets/use-reduced-motion-3gMYZNIp.js +0 -1
  513. package/dist/client/assets/use-scout-dev-flags-DS_pYYQd.js +0 -1
  514. package/dist/client/assets/useAgentHoverCard-BANmpjMh.js +0 -1
  515. package/dist/client/assets/useContentSecondaryNav-C6OBu-3_.js +0 -1
  516. package/dist/client/assets/useEmbedHeadline-D6pJRxUg.js +0 -1
  517. package/dist/client/assets/usePersistentState-B8lP7TRb.js +0 -1
  518. package/dist/client/assets/usePierreRuntime-BAQdiN0L.js +0 -50
  519. package/dist/client/assets/useSidebarCollapse-OL_8J5cL.js +0 -1
  520. package/dist/client/assets/users-BUjx36gx.js +0 -1
  521. package/dist/client/assets/voice-levels-Dcr3jglk.js +0 -1
  522. package/dist/client/assets/voice-paths-CJUuBPh3.css +0 -1
  523. package/dist/client/assets/voice-turn-DftA0iIb.css +0 -1
  524. package/dist/client/assets/voice-turn-ledger-BMZxlSjg.js +0 -1
  525. package/dist/client/assets/worker-rendered-v1-DmGVMlVi.png +0 -0
  526. package/dist/client/assets/worker-thinking-v1-ujakpzrK.png +0 -0
  527. package/dist/client/assets/worker-waiting-v1-DbTSsfJJ.png +0 -0
  528. package/dist/client/assets/worker-working-v1-BROAvJ_z.png +0 -0
  529. package/dist/client/assets/world-outposts-v1-DOt0i98W.png +0 -0
  530. package/dist/client/assets/wrench-DR0i5BU7.js +0 -1
  531. package/dist/client/assets/x-DAehov0E.js +0 -1
  532. package/dist/client/assets/xterm-BXQiLVnI.js +0 -34
  533. package/dist/client/assets/zap-CEjZNZbI.js +0 -1
  534. package/dist/client/characters/sage/sage.glb +0 -0
  535. package/dist/highlights-eq9cgrbb.scm +0 -604
  536. package/dist/highlights-ghv9g403.scm +0 -205
  537. package/dist/highlights-hk7bwhj4.scm +0 -284
  538. package/dist/highlights-r812a2qc.scm +0 -150
  539. package/dist/highlights-x6tmsnaa.scm +0 -115
  540. package/dist/injections-73j83es3.scm +0 -27
  541. package/dist/tree-sitter-javascript-nd0q4pe9.wasm +0 -0
  542. package/dist/tree-sitter-markdown-411r6y9b.wasm +0 -0
  543. package/dist/tree-sitter-markdown_inline-j5349f42.wasm +0 -0
  544. package/dist/tree-sitter-typescript-zxjzwt75.wasm +0 -0
  545. package/dist/tree-sitter-zig-e78zbjpm.wasm +0 -0
@@ -1 +0,0 @@
1
- import{j as t,r as n,T as K,U as V,y as X,V as Q}from"./index-EsrkGBcv.js";import{u as v,h as Z}from"./Provider-C35yu29I.js";import{resolveContentPane as tt,resolveRightPane as et,resolveLeftPane as ot}from"./resolve-panes-pbY1fCWi.js";import{S as rt}from"./ScoutSurface-3_25USO_.js";import{a as $}from"./provider-Dojd8quC.js";import{S as W}from"./RealtimeVoiceScreen-B6ylX3WQ.js";import{BrokerRight as it}from"./right-DppeMCy4.js";import{OpsInspectorPanel as nt}from"./inspector-panel-BkgUDn6G.js";import{b as st,u as at}from"./persistent-state-KRk_yb0q.js";import{M as pt}from"./MeshCanvasMinimap-iswYFpIb.js";import{e as mt}from"./nav-destinations-uorRqFxf.js";import{u as ct}from"./Terminal-Bi97yb5s.js";import{T as lt}from"./TerminalRelay-DrikpUSJ.js";import{a as E}from"./api-DSqpVKC7.js";import{i as dt,f as U}from"./machine-scope-DJt9RZ2w.js";import{u as ut,a as gt,b as ht,c as ft,d as yt,e as vt}from"./hooks-_eCZZPsR.js";import{T as bt}from"./chunk-HRAB3GC3-DbVLgbWX.js";import"./theme-vars-DNK0nn3k.js";import"./router-DCtl8wqb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./sse-BCPRocpq.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-C97-iTMK.js";import"./runtime-picker-DXu2bOTh.js";import"./scout-voice-CZx60X6E.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-OvccU82H.js";import"./createLucideIcon-zZ8Hx7er.js";import"./media-blobs-Bi8pxr1u.js";import"./index-724SdE6r.js";import"./HarnessMark-C4naWc16.js";import"./conversation-model-FxDeWlle.js";import"./time-Dhsh_2EG.js";import"./conversations-DoAAO6kA.js";import"./colors-CFlbwC25.js";import"./NewChatOrigin-DFbF_XvR.js";import"./keyboard-nav-DDHegDbx.js";import"./x-DAehov0E.js";import"./chevron-down-l1mrh5S9.js";import"./search-DT42oyRW.js";import"./file-text-CnISiiw6.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DJr0v0D_.js";import"./TextDocumentSurface-D52m7Vd8.js";import"./index-CHD0qcfL.js";import"./chevron-right-DrfqcerI.js";import"./folder-D5prSkzz.js";import"./chevron-up-CETZJzjV.js";import"./code-xml-BhcNbLWU.js";import"./arrow-left-MVUKauwQ.js";import"./arrow-right-Bp-FpE5V.js";import"./voice-turn-ledger-BMZxlSjg.js";import"./content-B1lgE8qr.js";import"./ActivityScreen-CZmGwQ2U.js";import"./clipboard-e3fSpeo7.js";import"./mentions-ByUvhS-v.js";import"./AgentDetailCard-DtHT3sCo.js";import"./AgentLiveActions-CfTupTEl.js";import"./terminal-takeover-Ay5C2c-M.js";import"./openContent-C6XO6kr5.js";import"./eye-LrO-cXQt.js";import"./terminal-hQKQygcf.js";import"./SessionHopMenu-E6VJZrE0.js";import"./external-link-CUObqmgX.js";import"./EmptyState-CZlrHXy-.js";/* empty css */import"./left-KGmueNPt.js";/* empty css */import"./AgentAvatar-CrP1eXxk.js";import"./SpriteAvatar-CpZWf54-.js";import"./CrewAvatar-kTznzqcO.js";import"./content-CdYfaoDV.js";import"./AgentInfoScreen-DYtmKkeE.js";/* empty css *//* empty css */import"./BackToPicker-CUkjnoVk.js";import"./CrewStage-vdO0qm3D.js";import"./ObservedTopologyPanel-CUTIoLZJ.js";import"./AgentsScreen-ChwMBs11.js";/* empty css */import"./AgentsSubnav-DwNX4yy0.js";import"./SecondaryNav-D7dbV2qo.js";import"./secondaryNavConfig-CS1svh6n.js";import"./message-square-BxesYglW.js";import"./compass-63TUaz5_.js";import"./settings-BVh7kldq.js";import"./git-branch-B0_fPLO7.js";import"./scroll-text-DNjxhyO2.js";import"./library-CkWNPHRp.js";/* empty css */import"./AgentSessions-B1gOhDBf.js";import"./profile-DTmzN16I.js";import"./context-budget-8qFKqM-j.js";import"./session-catalog-CvSdPHPe.js";import"./terminal-relay-Bxs1hp-j.js";import"./ConversationScreen-CUfsQ4MR.js";import"./ComposerAttachments-DW0AIb8k.js";import"./message-markup-Zwo3t4cI.js";import"./message-markup-BQW5jdJw.js";import"./message-visibility-DwxgcgYK.js";import"./operator-attention-DBaRg5ep.js";import"./sessionRead-CvFz2RHv.js";import"./MessageEmbeds-ksPazAKH.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-C-ZWscKj.js";import"./AstronautSuit-Cchnc4Ug.js";import"./panel-right-Bv7sP_fc.js";import"./CommsFlowGraph-DxoOaLF_.js";import"./comms-gesture-_aGFo6g3.js";import"./CommsCanvas-THp0r_U8.js";import"./comms-deck-CBhsXnY-.js";import"./CommsFlowMap-Vi8ziCPg.js";import"./CommsSelection-BUoRbu9o.js";/* empty css */import"./use-conversation-list-CY4JciOV.js";import"./agent-master-model-Bk_yuUXJ.js";import"./use-beside-DoRC1nt0.js";import"./ConversationComposer-CUQyArlk.js";import"./zap-CEjZNZbI.js";import"./ConversationFeedRows-DWiOfT-y.js";import"./ConversationPanels-D9oC0xG5.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./use-reduced-motion-3gMYZNIp.js";import"./proxy-AJsmwA6h.js";import"./activity-CIlFrfPJ.js";import"./message-circle-CxRVKNE-.js";import"./tail-events-d0yAYxR0.js";import"./ConversationStatus--IPm2nGh.js";import"./check-lrJ3a73a.js";import"./sparkles-BjHq_DNK.js";import"./triangle-alert-CHoRGdVO.js";import"./SessionContextStrip-CXfs9hUD.js";import"./SessionObserve-DXxBvejJ.js";import"./bash-format-BRV5C6Gv.js";import"./lane-tool-detail-Czggx8oM.js";import"./LaneToolHoverCard-CJa110yk.js";import"./lane-observe-CteDwdD-.js";import"./lane-ask-display-BTVSakyo.js";import"./ObserveTextFlow-PFnG_10h.js";import"./SessionObserveEvidence-Cuj_KHxR.js";import"./wrench-DR0i5BU7.js";import"./AgentDefinitionsWorkspace-DguGs7jZ.js";import"./agent-specialization-DDc7mLCW.js";import"./project-overview-helpers-BQTc_Ous.js";import"./FileViewerPane-BAO6mtjD.js";/* empty css */import"./agent-essentials-BGGvT5G6.js";/* empty css */import"./right-DMNrVzg7.js";import"./openAgent-Dbv5wfuL.js";import"./TmuxPeek-CXFeweMg.js";import"./refresh-cw-BmVr7sCD.js";import"./ProjectsRail-CDWocin_.js";import"./AddProjectForm-CusDRiVO.js";import"./projects-inbox-C0FUCv_p.js";import"./ProjectsScreen-B_CJycqW.js";import"./ProjectsInbox-Cgu7B4--.js";import"./ui-LM8pS8qE.js";import"./SessionRefScreen-DqLSUlCE.js";import"./session-ref-lookup-state-SATH_jAP.js";/* empty css */import"./CrewWorkspaces-DCBzAAS4.js";import"./plus-DFDDeGKu.js";import"./useEmbedHeadline-D6pJRxUg.js";import"./api-BQYTwoz6.js";import"./cache-DGBo3vIf.js";import"./arrow-up-right-BPedAgxO.js";import"./ProjectAgentProfile-D_wlW4sQ.js";import"./ProjectAgentProfileBar-DHuMKJj-.js";import"./ProjectsThreadAside-1MMl_qUD.js";import"./content-DTioimq4.js";import"./BriefingDetailScreen-DrlC3qkm.js";import"./scoutbot-markdown-BKEBSbG0.js";/* empty css */import"./BriefingsScreen-B1HlBMGZ.js";import"./content-CzldLxw0.js";import"./BrokerScreen-DwOF6bMA.js";import"./status-tone-BM_zuRy1.js";import"./broker-display-BkBzyvbR.js";import"./BrokerMetadataPanel-Dk242Yh_.js";import"./DispatchAftermath-66uQAorV.js";import"./follow-route-BvcGtBIL.js";import"./ShikiPane-CRtTYkMj.js";import"./paperclip-BjcuP_Hx.js";import"./send-horizontal-CH0-fbZE.js";import"./copy-xKeM5ZtU.js";import"./radio-DRoOZsws.js";import"./left-K39b-Wvx.js";import"./conversation-prefs-DNre-Lcx.js";import"./use-fleet-active-asks-CymmXWH4.js";import"./sessions-view-Dc-QAa7O.js";import"./RailRow-BjmWK420.js";/* empty css */import"./content-zX3ZY3T9.js";import"./MessagesScreen-C3WB4T21.js";import"./AgentMasterScreen-EJhmuKgl.js";/* empty css */import"./CommsDeck-BVmSMV2V.js";import"./right-GAL5Mw1v.js";import"./CodeScreen-BXyKeL5T.js";import"./CodeDiffPane-DuQRwpgK.js";import"./usePierreRuntime-BAQdiN0L.js";/* empty css */import"./CodeProjectPicker-ZQ6gSBpg.js";/* empty css */import"./content-nGlEZhUI.js";import"./FollowScreen-CFfkIbc6.js";import"./content-D-olnc4U.js";import"./HarnessesScreen-DX3NLcDG.js";import"./useContentSecondaryNav-C6OBu-3_.js";import"./OpsSubnav-BOOYShHE.js";/* empty css */import"./left-Bn5X7x2o.js";import"./content-BNZOZEpX.js";import"./HomeHero-DouPyNmz.js";import"./TailView-CYSijNTy.js";import"./SlidePanel-_CHAQdOa.js";import"./observe-BJqERJVj.js";import"./agent-lanes-model-DMAdqCmK.js";import"./home-moving-signal-rpMhsOJB.js";import"./home-live-action-BkqGLVRY.js";import"./cpu-BOTa_WLr.js";import"./file-code-corner-CsU7jJpu.js";import"./right-49kO-6nD.js";import"./left-DhtVPVux.js";import"./mesh-view-store-DZvJC4KU.js";import"./machine-children-DxcqCLmd.js";import"./use-mesh-node-state-BvaqtODo.js";import"./NodeMenu-B-jjHf1c.js";import"./content-C4p43_eT.js";import"./MeshScreen-8nAzQVbm.js";import"./MeshCanvas-DWZHYh1A.js";import"./Canvas-X9pVSkw3.js";import"./useAgentHoverCard-BANmpjMh.js";import"./local-agents-BqnoxJrq.js";/* empty css */import"./right-APtItA8A.js";import"./NodeDetailPanel-CElOEpCh.js";import"./left-BqS0fYX1.js";import"./mesh-ops-CiZ8xSAx.js";import"./use-mesh-ops-items-BSYaqH_0.js";import"./content-oyzDM-LK.js";import"./use-scout-dev-flags-DS_pYYQd.js";import"./right-DKOUCRob.js";import"./left-P_GOYB-s.js";import"./left-agents-CsSNc51Y.js";import"./left-default-BlO5LP2T.js";import"./left-lanes-C4PhaJE6.js";import"./lane-roster-store-D-RSWjb-.js";import"./left-mission-BjTE5vPa.js";import"./mission-control-store-elEEsIvb.js";import"./MissionLeftAgentRow-vycMV77n.js";import"./page-status-BswZLqvA.js";import"./left-advisor-B0N47De2.js";import"./server-QfsgMLk1.js";import"./layers-C8PDiMul.js";import"./gauge-D9_5iJEm.js";import"./content-BRIxP155.js";import"./OpsScreen-jVcaBKGi.js";/* empty css */import"./AgentLanesView-BJi9xXz6.js";/* empty css */import"./AgentFloorView-DH4jiDgw.js";import"./AgentAdventures-BAgxdOF8.js";import"./ReplayClock-348f17bW.js";import"./SproutActionSprite-BSiTS4en.js";/* empty css */import"./CrewSprite-Dhryjx2c.js";import"./adventure-playback-DTfkhIc0.js";import"./AdventureScenery-LPXSVP67.js";import"./adventure-habitats-v1-M1lcpTJh.js";import"./AdventureReader-X-hbTOi0.js";import"./floor-preview-text-HrORUJ7D.js";/* empty css */import"./book-open-CV98WMSp.js";import"./ReplayLog-CBnAM3ui.js";import"./AdventureEvidence-CyegKk1V.js";import"./agent-lane-detail-Ti3trpfH.js";/* empty css *//* empty css */import"./flag-C4wl8z2-.js";import"./pause-C2XTlkjs.js";import"./play-FT6K3It1.js";import"./SharedWorkFloor-D9mf9KSg.js";import"./WorldMinimap-B6HNgcDe.js";import"./WorldSky-Jm2Z6dfW.js";import"./WorldActorTalk-BvSg_b1y.js";import"./send-to-agent-session-DoKCDBJ4.js";import"./FloorExchangePanel-BU1pPu8K.js";import"./floor-character-name-CqJPOlXb.js";import"./floor-message-passes-CO3Ix_wR.js";import"./shared-work-artifacts-DfNl9KTo.js";import"./floor-memory-YMM8AlLY.js";import"./CharacterFamilyPreview-DMfw7UM_.js";import"./RenderedWorkerSprite-Dhlyg89J.js";import"./FloorMessagePasses-cLW2UGNP.js";import"./WorkRunView-BDkR7Edq.js";import"./floor-context-model-rWKqaKmV.js";import"./agent-floor-actor-DW8zLht0.js";import"./SharedFloorCharacter-DNEiaOUh.js";import"./WorldCharacter-CIIlutQq.js";import"./RiggedWorkerCharacter-q6QRc7_o.js";import"./FloorReplay-VFzA6Kxc.js";import"./AgentFloorWorld-CjoIa6jA.js";/* empty css */import"./agent-floor-world-layout-hfMjuoui.js";import"./coffee-D7EAOdCk.js";/* empty css */import"./FloorTacticalHUD-CO-iiFpb.js";import"./FloorSavedWork-BeHDejWz.js";import"./pin-C2mFOV1l.js";/* empty css */import"./FloorResourcesSheet-C-kQ6Ren.js";/* empty css *//* empty css */import"./FloorContextSheet-2_NVPQor.js";import"./session-recap-lanes-D-eVJnpY.js";import"./AgentLanesPreflight-Ry-aqDTr.js";import"./AgentLaneChrome-TF1SlJSc.js";import"./AgentLaneCard-BaZ2g-f8.js";/* empty css */import"./AgentLaneSummaryResize-dpp7YvrX.js";import"./agent-lane-card-model-CeqQGp-8.js";import"./agent-lane-preview-Dpa3DuOn.js";import"./AgentLaneDetailSheet-EzEPsn3g.js";import"./LaneTraceDetailSheet-DYrd0BIf.js";import"./LaneTraceEventFocus-TbrNHRj_.js";import"./MissionControlView-B9cNPXvl.js";/* empty css */import"./MissionContextRail-D62-Wis8.js";import"./mission-wall-CAo4BKfa.js";import"./mission-control-model-BpJHDV5D.js";import"./MissionFocusOverlay-C1zys3Jv.js";import"./MissionLogPane-B19lYSY9.js";import"./OpsAgentsView-DajlX8LO.js";/* empty css */import"./DataTable-aH-jCyDq.js";/* empty css */import"./sliders-horizontal-782VC_yy.js";import"./HostAdvisorView-CnM1i8hW.js";/* empty css */import"./layout-grid-Cor2frzj.js";import"./AtopView-gkEp4y__.js";import"./FleetRollCallHud-C5q2567n.js";import"./session-recap-queue-41l2XVkI.js";/* empty css */import"./content-BWd8gt8L.js";import"./RepoDiffPageScreen-DN94irmY.js";import"./RepoDiffViewerLazy-XGVC3WXv.js";import"./ReposScreen-uMCpt0e9.js";/* empty css */import"./selection-bridge-x3wFUjxj.js";import"./right-DWPVB-nK.js";import"./content-x1PHxED7.js";import"./KnowledgeSearchScreen-Dd6jrQ0A.js";/* empty css */import"./clock-BV1aqPkK.js";import"./KnowledgeSearchInspector-32n9baT-.js";import"./content-B5l11YyQ.js";import"./SessionsScreen-BLIRkohT.js";import"./RawSessionsTable-DzT90hWu.js";import"./FlightObserveScreen-DZ2mrw91.js";/* empty css */import"./right-D7djOy6K.js";import"./content-BfwS2jAK.js";import"./SettingsScreen-BtGzE2-O.js";import"./StatusPill-2gCP6H7A.js";import"./AgentConfigurationScreen-1L0IQm2w.js";import"./CastPicker-BXUtPAGC.js";import"./bot-B4zLQ4IN.js";import"./SettingsDrawer-juCpnbH6.js";import"./credentials-OeoF-VKJ.js";import"./VoicePermissionsPanel-Ok2nfxHw.js";import"./monitor-DTTYEb73.js";import"./left-CTCeeeD3.js";import"./usePersistentState-B8lP7TRb.js";import"./session-table-L-pns6Zl.js";import"./log-in-7SnYqW5w.js";import"./right-BPqrf4ek.js";import"./content-LOebm3_d.js";import"./WorkDetailScreen-zQkNVy2F.js";import"./WorkFilesViewer-vNt01sDd.js";import"./right-BJwhPqtn.js";/* empty css */import"./HerdrSession-_t7yM8vX.js";import"./TerminalHeaderMount-Cq4OD_xN.js";import"./direct-voice-BbLPuJ04.js";import"./VoiceControlWell-DF3bjcYA.js";import"./gestures-QZub3Ot9.js";import"./rocket-CGl4RTV7.js";import"./VoiceTurnDetails-wAByRaNB.js";import"./VoiceTurnStage-edoJalLV.js";import"./VoiceTurnView-D-8g5E4r.js";/* empty css *//* empty css */function xt(){const{route:o,navigate:e,agents:r}=v();return t.jsx(rt,{children:tt(o,e,r)})}function jt({onResizeStart:o}){const e=n.useCallback(r=>{r.preventDefault(),o(r)},[o]);return t.jsxs("div",{role:"separator","aria-orientation":"horizontal",onMouseDown:e,className:"group relative flex h-[7px] shrink-0 cursor-ns-resize items-center justify-center",children:[t.jsx("div",{className:"absolute inset-x-0 top-0 h-px bg-[var(--scout-chrome-border-soft)] transition-colors group-hover:bg-[var(--scout-chrome-ink-faint)]"}),t.jsxs("div",{className:"flex flex-row gap-[3px] opacity-0 transition-opacity group-hover:opacity-100",children:[t.jsx("div",{className:"h-[3px] w-[3px] rounded-full bg-[var(--scout-chrome-ink-faint)]"}),t.jsx("div",{className:"h-[3px] w-[3px] rounded-full bg-[var(--scout-chrome-ink-faint)]"}),t.jsx("div",{className:"h-[3px] w-[3px] rounded-full bg-[var(--scout-chrome-ink-faint)]"})]})]})}const _=260,St=.7,kt=260;function H(o,e){const r=Math.max(_,Math.floor(e*St));return Math.min(r,Math.max(_,Math.round(o)))}function wt(){const o=$("surface.scoutbot",!0),{route:e,navigate:r,agents:i,selectedBrokerAttempt:s,clearBrokerAttempt:m}=v(),[a]=st("openscout.scoutbot.collapsed",!0),[l,d]=at("openscout.scoutbot.height",kt),g=n.useRef(null),[u,h]=n.useState(0);n.useLayoutEffect(()=>{const y=g.current;if(!y)return;h(y.getBoundingClientRect().height);const S=new ResizeObserver(p=>{const c=p[0];c&&h(c.contentRect.height)});return S.observe(y),()=>S.disconnect()},[]),n.useEffect(()=>{if(u<=0)return;const y=H(l,u);y!==l&&d(y)},[u,l,d]);const j=n.useCallback(y=>{const S=y.clientY,p=l,c=g.current?.getBoundingClientRect().height??u,f=z=>{const J=z.clientY-S;d(H(p-J,c))},k=()=>{document.removeEventListener("mousemove",f),document.removeEventListener("mouseup",k),document.body.style.removeProperty("cursor"),document.body.style.removeProperty("user-select")};document.body.style.cursor="ns-resize",document.body.style.userSelect="none",document.addEventListener("mousemove",f),document.addEventListener("mouseup",k)},[u,l,d]);let b=null;const x=o&&e.view==="ops"&&e.mode==="lanes";if(x)b=t.jsx(W,{forceExpanded:!0,fill:!0});else switch(e.view){case"ops":b=t.jsx(nt,{mode:e.mode??"mission",agents:i,navigate:r,returnRoute:e});break;case"broker":b=t.jsx(it,{selectedAttempt:s,navigate:r,onClose:m});break;default:b=et(e,r)}const A=u>0?H(l,u):l,R=o&&e.view!=="broker"&&e.view!=="voice";return t.jsxs("div",{ref:g,className:"flex h-full flex-col overflow-hidden",children:[t.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:b}),R&&!x&&!a&&t.jsx(jt,{onResizeStart:j}),R&&!x&&t.jsx(W,{height:a?void 0:A})]})}const Y="openscout.globalJumpDock.mode.v1";function Ct(){if(typeof window>"u")return null;try{const o=window.localStorage.getItem(Y);return o==="jump"||o==="minimap"?o:null}catch{return null}}function Rt(o){try{window.localStorage.setItem(Y,o)}catch{}}function Tt(){const{route:o,navigate:e}=v(),r=o.view==="mesh",[i,s]=n.useState(()=>{const a=Ct();return a==="minimap"&&r?"minimap":a==="jump"?"jump":r?"minimap":"jump"});n.useEffect(()=>{i==="minimap"&&!r&&s("jump")},[i,r]);const m=a=>{s(a),Rt(a)};return t.jsxs("div",{className:"gjd",children:[t.jsxs("div",{className:"gjd-head",children:[t.jsx("span",{className:"gjd-ear","aria-hidden":!0}),t.jsxs("div",{className:"gjd-mode",role:"group","aria-label":"Bottom dock mode",children:[t.jsx("button",{type:"button",className:`gjd-mode-btn${i==="jump"?" gjd-mode-btn--active":""}`,onClick:()=>m("jump"),"aria-pressed":i==="jump",children:"jump"}),r&&t.jsx("button",{type:"button",className:`gjd-mode-btn${i==="minimap"?" gjd-mode-btn--active":""}`,onClick:()=>m("minimap"),"aria-pressed":i==="minimap",children:"minimap"})]}),t.jsx("span",{className:"gjd-ear","aria-hidden":!0})]}),t.jsx("div",{className:"gjd-body",children:i==="minimap"&&r?t.jsx(pt,{}):t.jsx(Et,{navigate:e})})]})}const Ot=mt();function Et({navigate:o}){const e=$("ops.control",!0),r=Ot.filter(i=>!i.opsGated||e);return t.jsx("div",{className:"gjd-jumps",children:r.map(i=>{const s=i.icon;return t.jsxs("button",{type:"button",className:"gjd-jump",onClick:()=>o(i.route),children:[t.jsx("span",{className:"gjd-jump-icon",children:n.createElement(s,{size:13,strokeWidth:1.6})}),t.jsx("span",{className:"gjd-jump-label",children:i.label})]},i.id)})})}function Nt(){const{route:o,navigate:e}=v();return t.jsxs("div",{className:"scout-left-shell",children:[t.jsx("div",{className:"scout-left-shell-rail",children:ot(o,e)}),t.jsx(Tt,{})]})}function It(){const o=K(),e=V(),r=ct({url:o,healthUrl:e,autoConnect:!0,sessionKey:"scout-terminal"});return t.jsx("div",{style:{height:"100%",background:"#0d0d0d",overflow:"hidden"},children:t.jsx(lt,{relay:r,fontSize:13,configItems:[{label:"ws",value:o},{label:"health",value:e}]})})}const Pt="Scout's local server isn't responding. It may still be starting up — wait a moment and try again.",Mt="Scout couldn't start its background service. Restart Scout from the menu bar icon, then try again.",At="The broker isn't running yet. Start Scout's services from the menu bar icon, then run setup again.",zt="Starting the broker took too long. Try again — if it keeps happening, restart Scout.",Ht="Scout couldn't write its settings in your home folder (~/.openscout). Check the folder's permissions and try again.",Bt="That folder doesn't exist on this Mac. Double-check the path — for example /Users/you/dev.";function C(o,e){const r=e instanceof Error?e.message:String(e);return dt(U(e))?Pt:/Unable to locate scoutd|Unable to locate Bun/i.test(r)?Mt:/openscout-runtime broker/i.test(r)?At:/timed out/i.test(r)?zt:/EACCES|EPERM|EROFS/i.test(r)?Ht:o==="project"&&/ENOENT|does not exist|doesn'?t exist/i.test(r)?/does not exist|doesn'?t exist/i.test(r)&&/[/~]/.test(r)?r:Bt:U(e)}const N=4;function Dt(){const{onboarding:o}=v();return o?o.hasLocalConfig?o.hasOperatorName?o.hasProjectConfig?o.needed===!0&&(!o.brokerReachable||!o.hasReadyRuntime)?t.jsx(T,{children:t.jsx(Ut,{step:4})}):null:t.jsx(T,{children:t.jsx(Wt,{step:3})}):t.jsx(T,{children:t.jsx(Ft,{step:2})}):t.jsx(T,{children:t.jsx(Lt,{step:1})}):null}function T({children:o}){return t.jsx("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",overflow:"auto",background:"var(--bg)",color:"var(--ink)"},children:t.jsx("div",{style:{width:"100%",maxWidth:720,padding:"80px 72px",display:"flex",flexDirection:"column",gap:40},children:o})})}function I({eyebrow:o,title:e,description:r}){return t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[t.jsx("div",{style:_t,children:o}),t.jsx("div",{style:Gt,children:e}),t.jsx("div",{style:$t,children:r})]})}function P({primary:o,onPrimary:e,primaryDisabled:r,busy:i}){const{skipOnboarding:s}=v();return t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10,paddingTop:8},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:24},children:[t.jsx("button",{type:"button",onClick:e,disabled:r||i,style:{...Yt,opacity:r||i?.5:1,cursor:r||i?"default":"pointer"},children:i?"Working…":o}),t.jsx("button",{type:"button",onClick:s,style:qt,onMouseEnter:m=>{m.currentTarget.style.color="rgba(255,255,255,0.8)"},onMouseLeave:m=>{m.currentTarget.style.color="rgba(255,255,255,0.45)"},children:"Set up later"})]}),t.jsx("div",{style:{fontSize:11,color:"rgba(255,255,255,0.35)",lineHeight:1.5},children:"Scout stays limited until setup finishes."})]})}function M({message:o}){return o?t.jsx("div",{style:{borderRadius:8,border:"1px solid rgba(239,68,68,0.35)",backgroundColor:"rgba(239,68,68,0.08)",color:"rgba(252,165,165,0.95)",padding:"12px 16px",fontSize:12,lineHeight:1.5},children:o}):null}function Lt({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),[i,s]=n.useState(!1),[m,a]=n.useState(null),l=async()=>{s(!0),a(null);try{await E("/api/onboarding/init",{method:"POST",body:"{}"}),await r()}catch(d){a(C("init",d))}finally{s(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(I,{eyebrow:`First-run setup · Step ${o} of ${N}`,title:"Welcome to Scout",description:t.jsxs(t.Fragment,{children:["Scout needs a local config before it can talk to the broker, the web app, and paired devices. This writes"," ",t.jsx("code",{style:F,children:"~/.openscout/config.json"})," with sensible defaults — you can edit it any time."]})}),t.jsxs("ul",{style:q,children:[t.jsx(w,{label:"Local config (~/.openscout/config.json)",done:!1,hint:"missing"}),t.jsx(w,{label:".openscout/project.json in a repo",done:!!e?.hasProjectConfig,hint:e?.hasProjectConfig?e.projectRoot??void 0:"checked after setup"})]}),t.jsx(M,{message:m}),t.jsx(P,{primary:"Initialize Scout",onPrimary:()=>{l()},busy:i})]})}function Ft({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),i=e?.operatorNameSuggestion??"",[s,m]=n.useState(i),[a,l]=n.useState(!1),[d,g]=n.useState(null);n.useEffect(()=>{!s&&i&&m(i)},[i,s]);const u=async()=>{const h=s.trim();if(!h){g("Name is required.");return}l(!0),g(null);try{await E("/api/user",{method:"POST",body:JSON.stringify({name:h})}),await r()}catch(j){g(C("identity",j))}finally{l(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(I,{eyebrow:`Identity · Step ${o} of ${N}`,title:"What should we call you?",description:"Your name shows up on messages you send and in any agent that speaks for you. You can change it later in Settings."}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[t.jsx("label",{style:O,children:"Your name"}),t.jsx("input",{autoFocus:!0,value:s,onChange:h=>{m(h.target.value),g(null)},onKeyDown:h=>{h.key==="Enter"&&u()},placeholder:i||"Operator",style:L}),i?t.jsx("div",{style:{fontSize:11,color:"rgba(255,255,255,0.4)",fontFamily:"var(--hud-font-mono)"},children:"Prefilled from your machine."}):null]}),t.jsx(M,{message:d}),t.jsx(P,{primary:"Continue",onPrimary:()=>{u()},busy:a,primaryDisabled:!s.trim()})]})}function Wt({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),i=e?.currentDirectory??"",s=i||"~/dev",[m,a]=n.useState([s]),[l,d]=n.useState(i),[g,u]=n.useState("claude"),[h,j]=n.useState(!1),[b,x]=n.useState(null),A=(p,c)=>{a(f=>f.map((k,z)=>z===p?c:k))},R=()=>a(p=>[...p,""]),y=p=>a(c=>c.filter((f,k)=>k!==p)),S=async()=>{const p=m.map(f=>f.trim()).filter(Boolean),c=l.trim();if(!c){x("Pick where Scout should anchor this context.");return}j(!0),x(null);try{await E("/api/onboarding/project",{method:"POST",body:JSON.stringify({contextRoot:c,sourceRoots:p,defaultHarness:g})}),await r()}catch(f){x(C("project",f))}finally{j(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(I,{eyebrow:`Project · Step ${o} of ${N}`,title:"Where do your repos live?",description:t.jsxs(t.Fragment,{children:["Scout scans these folders for projects and anchors this context at"," ",t.jsx("code",{style:F,children:"<context>/.openscout/project.json"}),"."]})}),t.jsxs("div",{style:B,children:[t.jsx("label",{style:O,children:"Scan folders"}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[m.map((p,c)=>t.jsxs("div",{style:{display:"flex",gap:8},children:[t.jsx("input",{value:p,onChange:f=>A(c,f.target.value),placeholder:c===0?s:"Add another folder",style:{...L,flex:1}}),t.jsx("button",{type:"button",onClick:()=>y(c),disabled:m.length<=1,style:{...G,opacity:m.length<=1?.4:1,cursor:m.length<=1?"default":"pointer"},"aria-label":`Remove folder ${c+1}`,children:"−"})]},c)),t.jsx("button",{type:"button",onClick:R,style:{...G,alignSelf:"flex-start"},children:"+ Add folder"})]})]}),t.jsxs("div",{style:B,children:[t.jsx("label",{style:O,children:"Context root"}),t.jsx("input",{value:l,onChange:p=>d(p.target.value),placeholder:s,style:L}),t.jsxs("div",{style:D,children:["Scout writes ",t.jsx("code",{style:F,children:".openscout/project.json"})," ","inside this folder."]}),t.jsx("div",{style:D,children:"Tip: ~ expands to your home folder."})]}),t.jsxs("div",{style:B,children:[t.jsx("label",{style:O,children:"Default harness"}),t.jsx("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:["claude","codex"].map(p=>{const c=g===p;return t.jsxs("button",{type:"button",onClick:()=>u(p),style:{...Jt,borderColor:c?"var(--accent, #2dd4bf)":"rgba(255,255,255,0.12)",backgroundColor:c?"rgba(45,212,191,0.08)":"rgba(255,255,255,0.02)"},children:[t.jsx("div",{style:{fontSize:15,fontWeight:600,textTransform:"capitalize"},children:p}),t.jsx("div",{style:{fontSize:12,color:"rgba(255,255,255,0.55)",marginTop:6,lineHeight:1.5},children:p==="claude"?"Anthropic Claude Code — local CLI agent.":"OpenAI Codex — cloud agentic sandbox."}),t.jsx("div",{style:{fontSize:11,fontFamily:"var(--hud-font-mono)",color:"rgba(255,255,255,0.4)",marginTop:8,lineHeight:1.5},children:p==="claude"?"Requires the Claude Code CLI, installed and signed in.":"Requires the Codex CLI, installed and signed in."})]},p)})}),t.jsx("div",{style:D,children:"Not installed yet? Pick one anyway — the final step checks and tells you what's missing."})]}),t.jsx(M,{message:b}),t.jsx(P,{primary:"Create project",onPrimary:()=>{S()},busy:h,primaryDisabled:!l.trim()})]})}function Ut({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),[i,s]=n.useState(!1),[m,a]=n.useState(null),l=async()=>{s(!0),a(null);try{const d=await E("/api/onboarding/setup",{method:"POST",body:"{}"});await r(),d.brokerWarning?a(C("setup",d.brokerWarning)):d.hasReadyRuntime===!1&&a("Setup finished, but Scout didn't find a ready agent runtime. Install or sign in to a supported runtime, then choose Run setup again.")}catch(d){a(C("setup",d))}finally{s(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(I,{eyebrow:`Setup · Step ${o} of ${N}`,title:"Finish setup",description:"Scout will install its harness skills, start the local broker, refresh discovery, and check for a ready agent runtime."}),t.jsxs("ul",{style:q,children:[t.jsx(w,{label:".openscout/project.json",done:!!e?.hasProjectConfig,hint:e?.projectConfigPath??e?.projectRoot??void 0}),t.jsx(w,{label:"Broker reachable",done:!!e?.brokerReachable,hint:e?.brokerReachable?"connected":"starts when you run setup"}),t.jsx(w,{label:"Agent runtime",done:!!e?.hasReadyRuntime,hint:e?.hasReadyRuntime?"ready":"install or sign in to a supported runtime"})]}),t.jsx(M,{message:m}),t.jsx(P,{primary:"Run setup",onPrimary:()=>{l()},busy:i})]})}function w({label:o,done:e,hint:r}){return t.jsxs("li",{style:{display:"flex",alignItems:"flex-start",gap:16},children:[t.jsx("span",{style:{marginTop:2,width:20,height:20,borderRadius:999,display:"flex",alignItems:"center",justifyContent:"center",fontSize:11,fontWeight:700,flexShrink:0,backgroundColor:e?"rgba(34,197,94,0.15)":"rgba(255,255,255,0.07)",color:e?"#4ade80":"rgba(255,255,255,0.5)"},children:e?"✓":"•"}),t.jsxs("div",{style:{minWidth:0},children:[t.jsx("div",{style:{fontSize:13,lineHeight:1.5,color:e?"rgba(255,255,255,0.75)":"rgba(255,255,255,0.9)"},children:o}),r?t.jsx("div",{style:{fontSize:11,fontFamily:"var(--hud-font-mono)",color:"rgba(255,255,255,0.35)",marginTop:4,wordBreak:"break-all"},children:r}):null]})]})}const _t={fontSize:11,fontFamily:"var(--hud-font-mono)",textTransform:"uppercase",letterSpacing:"0.18em",color:"rgba(255,255,255,0.4)"},Gt={fontSize:36,fontWeight:600,letterSpacing:"-0.01em",lineHeight:1.15},$t={fontSize:15,lineHeight:1.75,color:"rgba(255,255,255,0.6)",maxWidth:580},B={display:"flex",flexDirection:"column",gap:10},O={fontSize:11,fontFamily:"var(--hud-font-mono)",textTransform:"uppercase",letterSpacing:"0.15em",color:"rgba(255,255,255,0.5)"},L={width:"100%",padding:"10px 14px",fontSize:14,fontFamily:"var(--hud-font-mono)",color:"rgba(255,255,255,0.92)",backgroundColor:"rgba(255,255,255,0.04)",border:"1px solid rgba(255,255,255,0.12)",borderRadius:8,outline:"none",boxSizing:"border-box"},D={fontSize:12,color:"rgba(255,255,255,0.45)",lineHeight:1.6},F={fontFamily:"var(--hud-font-mono)",fontSize:12,padding:"2px 6px",borderRadius:4,backgroundColor:"rgba(255,255,255,0.06)"},Yt={fontSize:13,fontWeight:600,padding:"12px 24px",borderRadius:10,backgroundColor:"var(--accent, #2dd4bf)",color:"#0b0d12",border:"none",transition:"opacity 0.15s ease"},G={fontSize:13,fontWeight:500,padding:"10px 14px",borderRadius:8,backgroundColor:"rgba(255,255,255,0.04)",border:"1px solid rgba(255,255,255,0.12)",color:"rgba(255,255,255,0.85)",transition:"all 0.15s ease"},qt={fontSize:12,color:"rgba(255,255,255,0.45)",textDecoration:"underline dotted rgba(255,255,255,0.25)",textUnderlineOffset:4,background:"none",border:"none",cursor:"pointer",padding:"4px 2px",transition:"color 0.15s ease"},q={display:"flex",flexDirection:"column",gap:20,margin:0,padding:0,listStyle:"none"},Jt={textAlign:"left",padding:"16px 18px",borderRadius:12,borderWidth:1,borderStyle:"solid",borderColor:"rgba(255,255,255,0.12)",color:"rgba(255,255,255,0.9)",cursor:"pointer",transition:"all 0.15s ease"},Kt=[{commandId:"nav:home",title:"Go to Home",description:"Navigate to the home overview showing queue, threads, signal, and activity",category:"navigation",keywords:["home","inbox","dashboard"],shortcut:"Cmd+1"},{commandId:"nav:agents",title:"Go to Agents",description:"Navigate to the agents roster showing all registered agents",category:"navigation",keywords:["agents","roster","list"],shortcut:"Cmd+2"},{commandId:"nav:messages",title:"Go to Chat",description:"Navigate to the unified chat surface backed by the normalized conversations service",category:"navigation",keywords:["conversations","comms","chat","threads","channels","channel","group","broadcast"],shortcut:"Cmd+3"},{commandId:"nav:sessions",title:"Open Sessions",description:"Navigate to the sessions list showing all active conversations",category:"navigation",keywords:["sessions","conversations","threads"]},{commandId:"nav:search",title:"Go to Search",description:"Navigate to the session knowledge search surface for extraction, search, and raw-log drilldown planning",category:"navigation",keywords:["search","knowledge","qmd","history"],shortcut:"Cmd+4"},{commandId:"nav:activity",title:"Open Activity",description:"Navigate to the activity feed showing recent events",category:"navigation",keywords:["activity","feed","events","log"]},{commandId:"nav:mesh",title:"Open Network",description:"Navigate to the mesh network view showing nodes and topology",category:"navigation",keywords:["mesh","network","nodes","peers","topology"]},{commandId:"nav:dispatch",title:"Open Dispatch",description:"Navigate to the dispatch ledger for routing, delivery attempts, and failed queries",category:"navigation",keywords:["dispatch","broker","routing","delivery","messages"]},{commandId:"nav:repos",title:"Open Repositories",description:"Navigate to the repos view for branches, diffs, and working-tree state",category:"navigation",keywords:["repos","repositories","git","branches","diffs"]},{commandId:"nav:harnesses",title:"Open Providers",description:"Open the central view for providers, harnesses, observed topology, and budget feeds",category:"navigation",keywords:["provider","providers","harness","harnesses","claude","codex","budget","usage","topology"]},{commandId:"nav:ops",title:"Go to Ops",description:"Navigate to the operator workspace for dispatch, mesh, tail, runtime, alerts, and agent operations",category:"navigation",keywords:["ops","operator","control","tail","runtime","services","atop","dispatch","mesh"],shortcut:"Cmd+5"},{commandId:"nav:ops-atop",title:"Open Runtime",description:"Open the live agent/process view with observed harness families",category:"navigation",keywords:["runtime","services","atop","process","session","agent","topology"]},{commandId:"nav:settings",title:"Open Settings",description:"Open the settings screen for pairing, identity, and relay config",category:"settings",keywords:["settings","preferences","config","pair"],shortcut:"Cmd+,"},{commandId:"nav:agent-config",title:"Open Agent Configuration",description:"Open the unified agent configuration surface for runtimes, agents, tools, delivery, and broker state",category:"settings",keywords:["agent config","runtimes","providers","mcp","tools"]},{commandId:"nav:pair",title:"Pair Device",description:"Open the device pairing flow to connect a mobile device",category:"settings",keywords:["pair","qr","device","phone","mobile"]},{commandId:"scout:reload",title:"Reload Agents",description:"Refresh the agent list and message state from the broker",category:"workspace",keywords:["reload","refresh","sync"]},{commandId:"scout:open:*",title:"Open Agent",description:"Open the agent's view (runtime, sessions, inspector) for one specific agent.",category:"navigation",keywords:["open","agent","view","inspect"],params:[{name:"agentId",description:"The agent identifier to open",type:"string"}]},{commandId:"scout:message:*",title:"Message Agent",description:"Open the DM conversation for one specific agent to message them. One agent maps to a DM; group work belongs in an explicit channel and broadcasts belong in the shared channel.",category:"workspace",keywords:["message","chat","conversation","dm","tell","ask","reply"],params:[{name:"agentId",description:"The agent identifier to message",type:"string"}]}];function Vt(o={}){const{initialTheme:e="dark"}=o,r=X();return{id:"openscout",name:"Scout",description:"All your agents, one message away. Scout is a control plane for managing coding agents: Send posts into a Chat, direct agent messages create or steer Runs, and shared work stays in explicit channels.",mode:"panel",icon:n.createElement("svg",{width:14,height:14,viewBox:"0 0 20 20",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":!0},n.createElement("polygon",{points:"10,4.3 14.8,7.1 14.8,12.9 10,15.7 5.2,12.9 5.2,7.1",strokeWidth:1.9}),n.createElement("polygon",{points:"10,7 12.4,8.4 12.4,10.6 10,12 7.6,10.6 7.6,8.4",strokeWidth:1.32,opacity:.74})),Provider:({children:i})=>n.createElement(bt,{defaultTheme:e,defaultTemplate:r,storageKey:Q,children:n.createElement(Z,{initialTheme:e,children:i})}),leftPanel:{title:"Navigation"},rightPanel:{title:"Context"},slots:{Content:xt,LeftPanel:Nt,Inspector:wt,Takeover:Dt,Terminal:It},intents:Kt,hooks:{useCommands:vt,useStatus:yt,useNavCenter:ft,useNavActions:ht,useLayoutMode:gt,useTakeover:ut}}}Vt();export{Vt as createScoutApp};
@@ -1 +0,0 @@
1
- .scout-left-shell{display:flex;flex-direction:column;height:100%;min-height:0}.scout-left-shell-rail{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column}.scout-left-shell-rail>*{flex:1 1 auto;min-height:0}.gjd{flex:0 0 auto;display:flex;flex-direction:column;border-top:1px solid color-mix(in srgb,var(--ink) 8%,transparent);background:color-mix(in srgb,var(--surface) 92%,transparent)}.gjd-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md)}.gjd-ear{height:1px;background:color-mix(in srgb,var(--ink) 10%,transparent)}.gjd-mode{display:inline-flex;gap:var(--space-3xs);padding:var(--space-3xs);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--ink) 5%,transparent)}.gjd-mode-btn{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-sm);text-transform:uppercase;padding:var(--space-2xs) var(--space-sm);border:none;background:transparent;color:color-mix(in srgb,var(--ink) 55%,transparent);border-radius:var(--radius-sm);cursor:pointer;transition:background .12s,color .12s}.gjd-mode-btn:hover{color:var(--ink)}.gjd-mode-btn--active{background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink)}.gjd-body{padding:0}.gjd-jumps{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xs);padding:var(--space-xs) var(--space-sm) var(--space-md)}.gjd-jump{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:color-mix(in srgb,var(--ink) 75%,transparent);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:500;cursor:pointer;text-align:left;transition:background .12s,color .12s,border-color .12s}.gjd-jump:hover{background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink);border-color:color-mix(in srgb,var(--ink) 10%,transparent)}.gjd-jump-icon{display:inline-flex;align-items:center;color:color-mix(in srgb,var(--ink) 50%,transparent)}.gjd-jump:hover .gjd-jump-icon{color:var(--accent)}.gjd-jump-label{flex:1}.gjd-body>.mesh-rail{border-top:0}
@@ -1,2 +0,0 @@
1
- import{r as o,j as e}from"./index-EsrkGBcv.js";import{u as b}from"./Provider-C35yu29I.js";import{o as k}from"./openAgent-Dbv5wfuL.js";import{o as y}from"./openContent-C6XO6kr5.js";import{a as A,i as S,b as I,c as O}from"./agent-state-DDhnFEEP.js";import{a as j}from"./api-DSqpVKC7.js";import{c as T}from"./clipboard-e3fSpeo7.js";import{u as E}from"./sse-BCPRocpq.js";import{t as v}from"./time-Dhsh_2EG.js";import{X as B}from"./x-DAehov0E.js";import{C as $}from"./check-lrJ3a73a.js";import{C as L}from"./copy-xKeM5ZtU.js";import"./theme-vars-DNK0nn3k.js";import"./provider-Dojd8quC.js";import"./router-DCtl8wqb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-C97-iTMK.js";import"./runtime-picker-DXu2bOTh.js";import"./scout-voice-CZx60X6E.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-OvccU82H.js";import"./createLucideIcon-zZ8Hx7er.js";import"./media-blobs-Bi8pxr1u.js";import"./index-724SdE6r.js";import"./HarnessMark-C4naWc16.js";import"./conversation-model-FxDeWlle.js";import"./conversations-DoAAO6kA.js";import"./colors-CFlbwC25.js";import"./NewChatOrigin-DFbF_XvR.js";import"./keyboard-nav-DDHegDbx.js";import"./chevron-down-l1mrh5S9.js";import"./search-DT42oyRW.js";import"./file-text-CnISiiw6.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DJr0v0D_.js";import"./TextDocumentSurface-D52m7Vd8.js";import"./index-CHD0qcfL.js";import"./chevron-right-DrfqcerI.js";import"./folder-D5prSkzz.js";import"./chevron-up-CETZJzjV.js";import"./code-xml-BhcNbLWU.js";import"./arrow-left-MVUKauwQ.js";import"./arrow-right-Bp-FpE5V.js";import"./voice-turn-ledger-BMZxlSjg.js";import"./chunk-HRAB3GC3-DbVLgbWX.js";import"./index-BWHgHrtv.js";const P={mission:"Control",advisor:"Host Advisor",issues:"Alerts",tail:"Tail",atop:"Runtime",agents:"Agents",lanes:"Lanes",world:"World"};function He({mode:t,agents:s,navigate:c,returnRoute:i}){const[l,r]=o.useState(null),[n,g]=o.useState(()=>typeof window>"u"?null:N(window.scoutOpsDetailSnapshot)),x=o.useCallback(async()=>{const a=await j("/api/fleet").catch(()=>null);r(a)},[]);if(o.useEffect(()=>{x()},[x]),o.useEffect(()=>{const a=h=>{g(N(h.detail))};return window.addEventListener("scout:ops-detail",a),()=>window.removeEventListener("scout:ops-detail",a)},[]),E(a=>{(a.kind==="message.posted"||a.kind==="flight.updated"||a.kind==="collaboration.event.appended")&&x()}),t==="advisor")return e.jsx(H,{navigate:c});if(t==="tail"||t==="issues")return e.jsx(D,{detail:n?.source==="tail"?n:null,mode:t,navigate:c});const d=(l?.activeAsks??[]).filter(a=>a.status!=="needs_attention"),p=l?.needsAttention??[];if(t==="lanes"||t==="world")return null;const w=s.filter(a=>A(a.state)),C=s.filter(a=>S(a.state)),u=[...s].sort((a,h)=>(h.updatedAt??0)-(a.updatedAt??0)).slice(0,7);return e.jsxs("div",{className:"ctx-panel ctx-panel--ops-inspector",children:[n&&e.jsxs("section",{className:"ctx-panel-section ctx-panel-selected-detail",children:[e.jsx("div",{className:"ctx-panel-section-label",children:n.focus==="flow"?"Message":"Selection"}),e.jsxs("div",{className:"ctx-panel-selected-card",children:[e.jsx("div",{className:"ctx-panel-selected-title",children:n.title}),e.jsx("div",{className:"ctx-panel-selected-meta",children:n.meta}),e.jsx("div",{className:"ctx-panel-selected-body",children:n.body}),n.action&&e.jsx("button",{type:"button",className:"ctx-panel-selected-action",onClick:()=>c(n.action.route),children:n.action.label})]})]}),e.jsxs("section",{className:"ctx-panel-section ctx-panel-ops-summary",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Ops Context"}),e.jsxs("div",{className:"ctx-panel-ops-mode-card",children:[e.jsx("span",{children:"Current"}),e.jsx("strong",{children:P[t]}),e.jsx("small",{children:l?`refreshed ${v(l.generatedAt)}`:"loading"})]}),e.jsxs("div",{className:"ctx-panel-stat-grid",children:[e.jsx(m,{label:"Needs",value:p.length,tone:p.length>0?"warn":"ok"}),e.jsx(m,{label:"Active",value:d.length}),e.jsx(m,{label:"Online",value:`${C.length}/${s.length}`}),e.jsx(m,{label:"Working",value:w.length})]})]}),e.jsxs("section",{className:"ctx-panel-section",children:[e.jsxs("div",{className:"ctx-panel-section-label",children:["Queue",p.length>0&&e.jsx("span",{className:"ctx-panel-count",children:p.length})]}),p.length===0?e.jsx("div",{className:"ctx-panel-empty",children:"No operator cues"}):e.jsx("div",{className:"ctx-panel-list",children:p.slice(0,5).map(a=>e.jsx(W,{item:a,navigate:c},a.recordId))})]}),e.jsxs("section",{className:"ctx-panel-section",children:[e.jsxs("div",{className:"ctx-panel-section-label",children:["Runs",d.length>0&&e.jsx("span",{className:"ctx-panel-count",children:d.length})]}),d.length===0?e.jsx("div",{className:"ctx-panel-empty",children:"No active requests"}):e.jsx("div",{className:"ctx-panel-list",children:d.slice(0,5).map(a=>e.jsx(z,{ask:a,navigate:c},a.invocationId))})]}),e.jsxs("section",{className:"ctx-panel-section",children:[e.jsxs("div",{className:"ctx-panel-section-label",children:["Recent activity",u.length>0&&e.jsx("span",{className:"ctx-panel-count",children:u.length})]}),e.jsx("div",{className:"ctx-panel-pulse-list",children:u.map(a=>e.jsxs("button",{type:"button",className:"ctx-panel-pulse-row",onClick:()=>k(c,a,{returnTo:i}),children:[e.jsx("span",{className:`ctx-panel-pulse-dot ctx-panel-pulse-dot--${I(a.state)}`}),e.jsx("span",{children:a.name}),e.jsxs("small",{children:[O(a.state)," · ",a.updatedAt?v(a.updatedAt):"unknown"]})]},a.id))})]})]})}function R(){if(typeof window>"u")return;const t=window;t.scoutOpsDetailSnapshot=null,window.dispatchEvent(new CustomEvent("scout:ops-detail",{detail:null}))}function D({detail:t,mode:s,navigate:c}){const i=s==="issues"?"Alert detail":"Tail detail",l=t?.copy?.find(n=>n.label==="Copy message")?.value??t?.body??"",r=t?.copy?.find(n=>n.label==="Copy metadata")?.value??t?.metadata?.map(n=>`${n.label}: ${n.value}`).join(`
2
- `)??"";return e.jsx("div",{className:"ctx-panel ctx-panel--ops-inspector ctx-panel--tail-inspector",children:e.jsxs("section",{className:"ctx-panel-section ctx-panel-tail-detail",children:[e.jsxs("div",{className:"ctx-panel-section-label ctx-panel-tail-detail-label",children:[e.jsx("span",{children:i}),t&&e.jsx("button",{type:"button",className:"ctx-panel-tail-icon-button",onClick:R,"aria-label":"Clear Tail detail",title:"Clear",children:e.jsx(B,{size:13,strokeWidth:2,"aria-hidden":"true"})})]}),t?e.jsxs("div",{className:"ctx-panel-tail-card",children:[e.jsxs("div",{className:"ctx-panel-tail-card-head",children:[e.jsx("div",{className:"ctx-panel-tail-card-title",children:t.title}),e.jsx("div",{className:"ctx-panel-tail-card-meta",children:t.meta})]}),t.metadata&&t.metadata.length>0&&e.jsxs("div",{className:"ctx-panel-tail-copy-scope",children:[e.jsx("dl",{className:"ctx-panel-tail-metadata",children:t.metadata.map(n=>e.jsxs("div",{className:"ctx-panel-tail-metadata-row",children:[e.jsx("dt",{children:n.label}),e.jsx("dd",{title:n.value,children:n.value})]},n.label))}),r&&e.jsx(f,{label:"Copy metadata",value:r})]}),t.action&&e.jsx("div",{className:"ctx-panel-tail-actions",children:e.jsx("button",{type:"button",className:"ctx-panel-tail-action-button",onClick:()=>c(t.action.route),children:t.action.label})}),e.jsxs("div",{className:"ctx-panel-tail-copy-scope ctx-panel-tail-copy-scope--message",children:[e.jsx("div",{className:"ctx-panel-tail-message",children:t.body}),l&&e.jsx(f,{label:"Copy message",value:l})]})]}):e.jsxs("div",{className:"ctx-panel-tail-empty-card",children:[e.jsx("span",{children:"Tail"}),e.jsx("strong",{children:"No log selected"})]})]})})}function f({label:t,value:s}){const[c,i]=o.useState(!1),l=o.useRef(null);o.useEffect(()=>()=>{l.current!=null&&window.clearTimeout(l.current)},[]);const r=o.useCallback(async()=>{await T(s)&&(i(!0),l.current!=null&&window.clearTimeout(l.current),l.current=window.setTimeout(()=>i(!1),1200))},[s]);return e.jsxs("button",{type:"button",className:`ctx-panel-tail-hover-copy${c?" ctx-panel-tail-hover-copy--copied":""}`,onClick:()=>{r()},title:t,children:[c?e.jsx($,{size:13,strokeWidth:2,"aria-hidden":"true"}):e.jsx(L,{size:13,strokeWidth:1.9,"aria-hidden":"true"}),e.jsx("span",{children:c?"Copied":t})]})}function H({navigate:t}){const[s,c]=o.useState(null),[i,l]=o.useState(null);return o.useEffect(()=>{Promise.allSettled([j("/.host-info"),j("/api/build")]).then(([r,n])=>{r.status==="fulfilled"&&c(r.value),n.status==="fulfilled"&&l(n.value)})},[]),e.jsxs("div",{className:"ctx-panel ctx-panel--ops-inspector ctx-panel--plan-inspector",children:[e.jsxs("section",{className:"ctx-panel-section ctx-panel-ops-summary",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Host Telemetry"}),e.jsxs("div",{className:"ctx-panel-summary-card",children:[e.jsx("div",{className:"ctx-panel-summary-title",children:s?.nodeName||"Local Host"}),e.jsxs("div",{className:"ctx-panel-summary-kicker",children:["Node: ",s?.nodeId||"local"]}),e.jsxs("div",{className:"ctx-panel-summary-meta",children:[e.jsxs("span",{children:[i?.runtime?.platform||"darwin"," ",i?.runtime?.arch||"arm64"]}),i?.gitBranch&&e.jsxs("span",{children:["branch: ",i.gitBranch]})]})]})]}),e.jsxs("section",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Host Endpoints"}),e.jsxs("div",{className:"ctx-panel-metric-stack",children:[e.jsxs("div",{className:"ctx-panel-metric-row",children:[e.jsx("span",{className:"ctx-panel-metric-label",children:"Broker Port"}),e.jsx("span",{className:"ctx-panel-metric-value",children:s?.ports?.broker??43110})]}),e.jsxs("div",{className:"ctx-panel-metric-row",children:[e.jsx("span",{className:"ctx-panel-metric-label",children:"Web UI Port"}),e.jsx("span",{className:"ctx-panel-metric-value",children:s?.ports?.web??43120})]}),e.jsxs("div",{className:"ctx-panel-metric-row",children:[e.jsx("span",{className:"ctx-panel-metric-label",children:"Advertise Scope"}),e.jsx("span",{className:"ctx-panel-metric-value",children:s?.advertiseScope||"mesh"})]})]})]}),e.jsxs("section",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Quick Actions"}),e.jsxs("div",{className:"ctx-panel-stack",children:[e.jsx("button",{type:"button",className:"ctx-panel-action-btn",onClick:()=>t({view:"ops",mode:"mission"}),children:"Mission Control Wall →"}),e.jsx("button",{type:"button",className:"ctx-panel-action-btn",onClick:()=>t({view:"harnesses"}),children:"Agent Providers & Quotas →"}),e.jsx("button",{type:"button",className:"ctx-panel-action-btn",onClick:()=>t({view:"terminal"}),children:"Terminal Relays →"}),e.jsx("button",{type:"button",className:"ctx-panel-action-btn",onClick:()=>t({view:"search"}),children:"Knowledge Search →"})]})]})]})}function m({label:t,value:s,tone:c}){return e.jsxs("div",{className:`ctx-panel-stat${c?` ctx-panel-stat--${c}`:""}`,children:[e.jsx("span",{children:t}),e.jsx("strong",{children:s})]})}function N(t){if(!t||typeof t!="object")return null;const s=t;if(s.focus!=="flow"&&s.focus!=="item"||typeof s.title!="string"||typeof s.meta!="string"||typeof s.body!="string")return null;const c=Array.isArray(s.metadata)?s.metadata.filter(l=>l!=null&&typeof l=="object"&&typeof l.label=="string"&&typeof l.value=="string"):void 0,i=Array.isArray(s.copy)?s.copy.filter(l=>l!=null&&typeof l=="object"&&typeof l.label=="string"&&typeof l.value=="string"):void 0;return{source:s.source==="tail"?"tail":"generic",focus:s.focus,title:s.title,meta:s.meta,body:s.body,metadata:c,copy:i,action:s.action&&typeof s.action=="object"?s.action:null}}function W({item:t,navigate:s}){const{route:c}=b();return e.jsx("button",{type:"button",className:"ctx-panel-item ctx-panel-item--attention",onClick:()=>{t.conversationId?y(s,{view:"conversation",conversationId:t.conversationId},{returnTo:c}):s({view:"ops",mode:"mission"})},children:e.jsxs("div",{className:"ctx-panel-body",children:[e.jsx("span",{className:"ctx-panel-name",children:t.title}),e.jsxs("span",{className:"ctx-panel-sub",children:[t.agentName??t.agentId??"operator"," · ",v(t.updatedAt)]})]})})}function z({ask:t,navigate:s}){const{route:c}=b();return e.jsx("button",{type:"button",className:"ctx-panel-item",onClick:()=>{t.conversationId?y(s,{view:"conversation",conversationId:t.conversationId},{returnTo:c}):s({view:"ops",mode:"mission"})},children:e.jsxs("div",{className:"ctx-panel-body",children:[e.jsx("span",{className:"ctx-panel-name",children:t.task}),e.jsxs("span",{className:"ctx-panel-sub",children:[t.agentName??t.agentId," · ",t.statusLabel]})]})})}export{He as OpsInspectorPanel,He as OpsRight};
@@ -1 +0,0 @@
1
- import{r as l}from"./index-EsrkGBcv.js";const d=["input","textarea","select","[contenteditable='']","[contenteditable='true']","[contenteditable='plaintext-only']","[role='combobox']","[role='searchbox']","[role='spinbutton']","[role='textbox']"].join(","),y=[".xterm",".xterm-helper-textarea","[data-scout-terminal-input='true']"].join(",");function m(t){const e=t;if(!e)return!1;const n=typeof e.tagName=="string"?e.tagName.toLowerCase():"";return n==="input"||n==="textarea"||n==="select"||e.isContentEditable===!0||typeof e.closest=="function"&&e.closest(d)?!0:typeof e.parentElement?.closest=="function"&&!!e.parentElement.closest(d)}function x(t){const e=t;return e?typeof e.closest=="function"&&e.closest(y)?!0:typeof e.parentElement?.closest=="function"&&!!e.parentElement.closest(y):!1}function k(t){return(t.metaKey||t.ctrlKey)&&t.shiftKey&&!t.altKey&&t.key.toLowerCase()==="b"}function h(){return!!(document.querySelector(".kb-help-backdrop")||document.querySelector("[data-command-palette-open='true']")||document.querySelector("[role='dialog'][aria-modal='true']"))}function g(t,e,n){return e<=0?-1:t<0?n>0?0:e-1:Math.max(0,Math.min(e-1,t+n))}const f=["a[href]","button:not([disabled])","textarea:not([disabled])","input:not([disabled])","select:not([disabled])","[tabindex]:not([tabindex='-1'])"].join(", ");function w(t=!0){const e=l.useRef(null),n=l.useRef(null);l.useEffect(()=>{if(!t)return;n.current=document.activeElement;const o=e.current;return o?((o.querySelector(f)??o).focus(),()=>{n.current?.focus?.()}):void 0},[t]);const r=l.useCallback(o=>{if(!t||o.key!=="Tab")return;const s=e.current;if(!s)return;const c=Array.from(s.querySelectorAll(f));if(c.length===0){o.preventDefault(),s.focus();return}const u=c[0],a=c[c.length-1],i=document.activeElement;o.shiftKey?(i===u||!s.contains(i))&&(o.preventDefault(),a.focus()):i===a&&(o.preventDefault(),u.focus())},[t]);return{ref:e,onKeyDown:r}}function p(t){return Array.from(t.querySelectorAll([":scope > button:not([disabled])",":scope > [role='button']:not([aria-disabled='true'])",":scope > * > button[data-list-primary]:not([disabled])"].join(", ")))}function b(t,e){t.forEach((n,r)=>{n.tabIndex=r===e?0:-1}),t[e]?.focus()}function S(){return l.useCallback(t=>{const e=t.key==="ArrowDown"||t.key==="j",n=t.key==="ArrowUp"||t.key==="k",r=t.key==="Home"||t.key==="g"&&!t.shiftKey&&!t.metaKey&&!t.ctrlKey,o=t.key==="End"||t.key==="G";if(!e&&!n&&!r&&!o)return;const s=p(t.currentTarget);if(s.length===0)return;const c=document.activeElement,u=s.findIndex(i=>i===c);let a;e?a=u<0?0:Math.min(s.length-1,u+1):n?a=u<0?s.length-1:Math.max(0,u-1):r?a=0:a=s.length-1,t.preventDefault(),b(s,a)},[])}function T(t,e,n){return t||!e&&n?0:-1}function v(){l.useEffect(()=>{const t=e=>{if(e.key!=="["&&e.key!=="]"||m(e.target))return;const n=e.target,r=["left","center","right"],o=e.key==="]"?1:-1,s=r.findIndex(u=>{const a=document.querySelector(`[data-pane="${u}"]`);return a?a.contains(n):!1}),c=s<0?o>0?-1:r.length:s;for(let u=c+o;u>=0&&u<r.length;u+=o){const a=document.querySelector(`[data-pane="${r[u]}"]`);if(!a)continue;const i=a.querySelector(f);if(i){e.preventDefault(),i.focus();return}}};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[])}function L(t){l.useEffect(()=>{const e=n=>{if(n.key!=="/"||m(n.target))return;const r=t();r&&(n.preventDefault(),r.focus(),r.select())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[t])}function A(t){return e=>{if(e.key!=="ArrowDown")return;const n=t();if(!n)return;const r=p(n);if(r.length===0)return;const o=r.findIndex(c=>c.tabIndex===0),s=o>=0?o:0;e.preventDefault(),b(r,s)}}export{S as a,L as b,h as c,x as d,v as e,k as f,m as i,A as m,g as n,T as r,w as u};
@@ -1 +0,0 @@
1
- .ks-page{--ks-measure: 1080px;--ks-gutter: clamp(var(--space-2xl), 2.5vw, var(--space-5xl));flex:1 1 auto;min-height:0;height:100%;overflow:hidden;display:flex;flex-direction:column;background:var(--bg);color:var(--ink)}.ks-shell{flex:1 1 auto;min-height:0;width:min(100%,var(--ks-measure));margin:0 auto;padding:var(--space-3xl) var(--ks-gutter) var(--space-4xl);display:flex;flex-direction:column;gap:var(--space-2xl);overflow:auto}.ks-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3xl)}.ks-header-titles{min-width:0;display:flex;flex-direction:column;gap:var(--space-sm)}.ks-eyebrow{display:inline-flex;align-items:center;gap:var(--space-sm);color:var(--accent);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:700;letter-spacing:0;text-transform:uppercase}.ks-header-titles h1{margin:0;font-family:var(--font-accent-title);font-size:var(--display-xs);font-weight:560;line-height:var(--leading-display);letter-spacing:0;color:var(--ink);text-wrap:balance}.ks-header-titles p{margin:0;font-size:var(--text-md);line-height:var(--leading-snug);color:var(--muted);max-width:min(100%,78ch);text-wrap:pretty}.ks-search-form{display:grid;grid-template-columns:18px minmax(0,1fr) 24px 18px;align-items:center;gap:var(--space-md);height:52px;padding:0 var(--space-2xl);border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 92%,transparent);transition:border-color var(--motion-duration-hover) var(--motion-ease-standard),box-shadow var(--motion-duration-hover) var(--motion-ease-standard)}.ks-search-form:focus-within{border-color:color-mix(in srgb,var(--accent) 48%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent),0 1px color-mix(in srgb,var(--accent) 16%,transparent)}.ks-search-form>svg{color:var(--muted)}.ks-search-input{min-width:0;height:100%;border:0;outline:none;background:transparent;color:var(--ink);font-family:var(--font-accent-title);font-size:var(--text-2xl);line-height:var(--leading-tight);font-weight:500;padding:0}.ks-search-input::placeholder{color:var(--dim);font-weight:400}.ks-search-clear,.ks-search-hint{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-pill);border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);background:color-mix(in srgb,var(--ink) 4%,transparent);color:var(--muted);cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;transition:color var(--motion-duration-hover) var(--motion-ease-standard),background var(--motion-duration-hover) var(--motion-ease-standard)}.ks-search-hint{cursor:default;pointer-events:none;color:var(--dim)}.ks-search-clear:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 10%,transparent)}.ks-search-form .ks-spin{color:var(--dim);grid-column:4}.ks-filterbar{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md) var(--space-2xl);border:1px solid color-mix(in srgb,var(--ink) 7%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 70%,transparent)}.ks-filterbar-row{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap;min-width:0}.ks-filterbar-row--inline{flex-wrap:wrap}.ks-filterbar-label{display:inline-flex;align-items:center;gap:var(--space-2xs);flex:none;width:76px;color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-md);text-transform:uppercase}.ks-chip-row{display:flex;flex-wrap:wrap;gap:var(--space-xs);min-width:0}.ks-chip{appearance:none;display:inline-flex;align-items:center;gap:var(--space-xs);min-height:28px;padding:0 var(--space-md);border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--ink) 4%,transparent);color:var(--muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;line-height:1;cursor:pointer;transition:color var(--motion-duration-hover) var(--motion-ease-standard),background var(--motion-duration-hover) var(--motion-ease-standard),border-color var(--motion-duration-hover) var(--motion-ease-standard)}.ks-chip:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 9%,transparent);border-color:color-mix(in srgb,var(--ink) 18%,transparent)}.ks-chip:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:2px}.ks-chip--active{color:color-mix(in srgb,var(--accent) 92%,var(--ink));background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.ks-chip--active:hover{background:color-mix(in srgb,var(--accent) 18%,transparent)}.ks-chip-label{white-space:nowrap}.ks-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:16px;padding:0 4px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;font-variant-numeric:tabular-nums}.ks-chip--active .ks-chip-count{background:color-mix(in srgb,var(--accent) 20%,transparent);color:color-mix(in srgb,var(--accent) 92%,var(--ink))}.ks-clear-all{appearance:none;margin-left:auto;padding:0 var(--space-sm);height:26px;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:var(--radius-pill);background:transparent;color:var(--muted);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;cursor:pointer;transition:color var(--motion-duration-hover) var(--motion-ease-standard),border-color var(--motion-duration-hover) var(--motion-ease-standard)}.ks-clear-all:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.ks-error{min-width:0;padding:var(--space-sm) 0;color:color-mix(in srgb,var(--red) 85%,var(--ink));font-size:var(--text-sm)}.ks-empty-state{min-width:0;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-3xl);border:1px dashed color-mix(in srgb,var(--ink) 12%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--ink) 3%,transparent);color:var(--muted);font-size:var(--text-md);line-height:var(--leading-snug)}.ks-empty-state strong{color:var(--ink);font-size:var(--text-lg);font-weight:620}.ks-empty-hit{min-width:0;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-3xl) var(--space-2xl);border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--muted);font-size:var(--text-md);line-height:var(--leading-snug)}.ks-empty-hit strong{color:var(--ink);font-size:var(--text-lg);font-weight:620}.ks-empty-hit--quiet{border-style:dashed;background:color-mix(in srgb,var(--ink) 3%,transparent)}.ks-empty-hit--quiet strong{font-size:var(--text-md);color:var(--muted)}.ks-empty-hit--quiet kbd,.ks-empty-hit kbd{display:inline-block;min-width:1.4em;padding:0 4px;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);border-bottom-width:2px;border-radius:4px;background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;text-align:center}.ks-empty-hit-actions{display:flex;flex-wrap:wrap;gap:var(--space-md);margin-top:var(--space-2xs)}.ks-hit-list{display:flex;flex-direction:column;min-width:0;gap:var(--space-md)}.ks-hit-list-head{position:sticky;top:0;z-index:1;display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) 0;background:var(--bg);color:var(--ink);font-size:var(--text-md);font-weight:620;letter-spacing:0}.ks-hit-list-meta{font-weight:500;font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--dim) 88%,transparent);font-size:var(--text-sm)}.ks-hit-list-body{display:flex;flex-direction:column;gap:var(--space-2xl)}.ks-skeleton{display:flex;flex-direction:column;gap:var(--space-2xl);pointer-events:none}.ks-skeleton-session{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-lg) 0;border-top:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.ks-skeleton-session:first-child{border-top:0}.ks-skeleton-moments{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md) var(--space-2xl);border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--ink) 7%,transparent);background:color-mix(in srgb,var(--surface) 86%,transparent)}.ks-skeleton-line{display:block;height:10px;border-radius:var(--radius-sm);background:linear-gradient(90deg,color-mix(in srgb,var(--border) 60%,transparent),color-mix(in srgb,var(--border) 95%,transparent),color-mix(in srgb,var(--border) 60%,transparent));background-size:200% 100%;animation:ks-skeleton-shimmer 1.4s linear infinite}.ks-skeleton-session:nth-child(2) .ks-skeleton-line{animation-delay:.12s}.ks-skeleton-session:nth-child(3) .ks-skeleton-line{animation-delay:.24s}.ks-skeleton-line--meta{width:210px;height:8px}.ks-skeleton-line--goal{width:min(100%,420px);height:15px}.ks-skeleton-line--title{width:min(100%,320px);height:12px}.ks-skeleton-line--snippet{width:100%}.ks-skeleton-line--snippet-short{width:62%}@keyframes ks-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.ks-skeleton-line{animation:none}}.ks-session{min-width:0;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-lg) 0;border-top:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.ks-session:first-child{border-top:0}.ks-session-head{min-width:0;display:flex;flex-direction:column;gap:var(--space-xs)}.ks-session-topline{min-width:0;display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);font-size:var(--text-xs);color:var(--muted)}.ks-session-meta{min-width:0;display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap;color:var(--muted)}.ks-session-meta span{min-width:0;max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ks-session-meta span+span:before{content:"·";margin:0 .5em;color:color-mix(in srgb,var(--dim) 70%,transparent)}.ks-hit-chip{padding:2px 8px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) 14%,transparent);color:color-mix(in srgb,var(--accent) 92%,var(--ink));font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase;white-space:nowrap}.ks-hit-session{font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap}.ks-session-count{color:color-mix(in srgb,var(--dim) 90%,transparent);font-variant-numeric:tabular-nums}.ks-hit-when{flex:none;color:var(--dim);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.ks-session-goal{appearance:none;width:fit-content;max-width:100%;text-align:left;border:0;background:transparent;color:var(--ink);font-family:var(--font-accent-title);font-size:var(--text-2xl);font-weight:600;line-height:var(--leading-tight);letter-spacing:0;cursor:pointer;padding:0;transition:color var(--motion-duration-hover) var(--motion-ease-standard)}.ks-session-goal:hover,.ks-session-goal:focus-visible{color:var(--accent);outline:none}.ks-session-moments{min-width:0;display:flex;flex-direction:column;gap:1px;border-radius:var(--radius-md);overflow:hidden;border:1px solid color-mix(in srgb,var(--ink) 7%,transparent);background:color-mix(in srgb,var(--ink) 6%,transparent)}.ks-hit{appearance:none;min-width:0;display:block;width:100%;text-align:left;border:0;padding:var(--space-md) var(--space-2xl);background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--ink);cursor:pointer;transition:background var(--motion-duration-hover) var(--motion-ease-standard)}.ks-hit:hover{background:color-mix(in srgb,var(--ink) 4%,var(--surface))}.ks-hit--selected{background:color-mix(in srgb,var(--accent) 9%,var(--surface));box-shadow:inset 2px 0 0 var(--accent)}.ks-hit:hover .ks-hit-title,.ks-hit--selected .ks-hit-title,.ks-hit:focus-visible .ks-hit-title{color:color-mix(in srgb,var(--accent) 82%,var(--ink))}.ks-hit:focus-visible{outline:none;background:color-mix(in srgb,var(--ink) 6%,var(--surface))}.ks-hit-body{min-width:0;display:flex;flex-direction:column;gap:var(--space-2xs)}.ks-hit-details{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-xs)}.ks-hit-details--moment{margin-bottom:1px}.ks-hit-details span{min-width:0;max-width:28ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;letter-spacing:var(--tracking-md);text-transform:uppercase}.ks-hit-details-strong{color:color-mix(in srgb,var(--muted) 90%,var(--ink));font-weight:600}.ks-hit-details span+span:before{content:"·";margin:0 .5em;color:color-mix(in srgb,var(--dim) 70%,transparent)}.ks-hit-title{margin:0;min-width:0;color:var(--ink);font-family:var(--font-accent-title);font-size:var(--text-lg);font-weight:580;line-height:var(--leading-tight);letter-spacing:0;overflow-wrap:anywhere;transition:color var(--motion-duration-hover) var(--motion-ease-standard)}.ks-hit-snippet{margin:0;color:color-mix(in srgb,var(--ink) 70%,var(--muted));font-size:var(--text-sm);line-height:var(--leading-snug);overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ks-hit-snippet--empty{color:var(--dim);font-style:italic}.ks-hit mark,.ks-inspector mark{padding:0 3px;border-radius:3px;background:color-mix(in srgb,var(--accent) 28%,transparent);color:var(--ink);font-weight:600}.ks-foot-status{flex:none;display:flex;padding:0;border-top:1px solid color-mix(in srgb,var(--ink) 7%,transparent);background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;letter-spacing:0}.ks-foot-status-shell{width:min(100%,var(--ks-measure));margin:0 auto;padding:var(--space-md) var(--ks-gutter);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-width:0}.ks-foot-status-facts{min-width:0;display:inline-flex;align-items:center;gap:var(--space-sm);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ks-text-action{appearance:none;flex:none;padding:0;border:0;background:transparent;color:var(--muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:color var(--motion-duration-hover) var(--motion-ease-standard)}.ks-text-action:hover,.ks-text-action:focus-visible{color:var(--accent);outline:none}.ks-text-action:disabled{cursor:not-allowed;opacity:.55}.ks-spin{animation:ks-spin .9s linear infinite}@keyframes ks-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ks-inspector{height:100%;min-height:0;display:flex;flex-direction:column;background:color-mix(in srgb,var(--bg) 90%,transparent);border-left:1px solid color-mix(in srgb,var(--ink) 7%,transparent)}.ks-inspector-error{padding:var(--space-sm) var(--space-md);border-bottom:1px solid color-mix(in srgb,var(--red) 25%,transparent);background:color-mix(in srgb,var(--red) 8%,transparent);color:color-mix(in srgb,var(--red) 88%,var(--ink));font-size:var(--text-sm)}.ks-preview-panel{min-height:0;display:flex;flex:1 1 auto;flex-direction:column;gap:var(--space-lg);padding:var(--space-2xl);overflow:auto}.ks-inspector-empty{min-width:0;display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-2xl);color:var(--muted);font-size:var(--text-md);line-height:var(--leading-snug)}.ks-inspector-empty>svg{color:var(--dim);margin-bottom:var(--space-2xs)}.ks-inspector-empty strong{color:var(--ink);font-size:var(--text-lg)}.ks-inspector-empty-hint{color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase}.ks-inspector-empty kbd{display:inline-block;min-width:1.4em;padding:0 4px;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);border-bottom-width:2px;border-radius:4px;background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;text-align:center}.ks-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);position:sticky;top:0;z-index:1;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding-bottom:var(--space-sm);margin:calc(var(--space-2xl) * -1) calc(var(--space-2xl) * -1) 0;padding:var(--space-md) var(--space-2xl) var(--space-sm)}.ks-preview-head h2{margin:var(--space-3xs) 0 0;color:var(--ink);font-family:var(--font-accent-title);font-size:var(--text-2xl);font-weight:600;line-height:var(--leading-tight);letter-spacing:0;overflow-wrap:anywhere}.ks-panel-eyebrow{display:inline-flex;align-items:center;gap:var(--space-sm);color:var(--accent);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-md);text-transform:uppercase}.ks-preview-close{appearance:none;flex:none;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--ink) 4%,transparent);color:var(--muted);cursor:pointer;transition:color var(--motion-duration-hover) var(--motion-ease-standard),border-color var(--motion-duration-hover) var(--motion-ease-standard)}.ks-preview-close:hover{color:var(--ink);border-color:color-mix(in srgb,var(--accent) 32%,var(--border))}.ks-preview-meta{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin:0}.ks-preview-meta span{padding:3px var(--space-sm);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--muted);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;letter-spacing:var(--tracking-sm);text-transform:uppercase}.ks-preview-actions{min-width:0;display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.ks-preview-actions button{appearance:none;min-width:0;height:28px;display:inline-flex;align-items:center;gap:var(--space-2xs);padding:0 var(--space-md);border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--ink) 4%,transparent);color:var(--muted);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase;cursor:pointer;transition:color var(--motion-duration-hover) var(--motion-ease-standard),background var(--motion-duration-hover) var(--motion-ease-standard),border-color var(--motion-duration-hover) var(--motion-ease-standard)}.ks-preview-actions button:hover{border-color:color-mix(in srgb,var(--accent) 36%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:color-mix(in srgb,var(--accent) 92%,var(--ink))}.ks-preview-actions button:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:2px}.ks-preview-actions button.ks-action-primary{border-color:color-mix(in srgb,var(--accent) 42%,transparent);background:color-mix(in srgb,var(--accent) 16%,var(--surface));color:color-mix(in srgb,var(--accent) 92%,var(--ink))}.ks-why-matched{min-width:0;border-block:1px solid color-mix(in srgb,var(--ink) 7%,transparent)}.ks-why-matched>summary{min-width:0;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;color:var(--muted);cursor:pointer;list-style:none}.ks-why-matched>summary::-webkit-details-marker{display:none}.ks-why-matched>summary:before{content:"›";color:var(--dim);font-family:var(--font-mono);transition:transform var(--motion-duration-hover) var(--motion-ease-standard)}.ks-why-matched[open]>summary:before{transform:rotate(90deg)}.ks-why-matched>summary span{min-width:0;color:var(--ink);font-size:var(--text-sm);overflow-wrap:anywhere}.ks-why-matched>summary em{margin-left:auto;color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-style:normal;font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase;white-space:nowrap}.ks-why-matched dl{display:grid;gap:var(--space-xs);margin:0;padding:0 0 var(--space-md) calc(var(--space-sm) + 7px)}.ks-why-matched dl div{display:grid;grid-template-columns:84px minmax(0,1fr);gap:var(--space-sm)}.ks-why-matched dt,.ks-why-matched dd{margin:0;font-family:var(--font-mono);font-size:var(--text-2xs)}.ks-why-matched dt{color:var(--dim);font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase}.ks-why-matched dd{color:var(--muted);overflow-wrap:anywhere}.ks-conversation-excerpt{min-width:0;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);border:1px solid color-mix(in srgb,var(--accent) 16%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--accent) 4%,transparent)}.ks-excerpt-turn{min-width:0;display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-md);border:1px solid color-mix(in srgb,var(--ink) 7%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 80%,transparent)}.ks-excerpt-turn--matched{border-color:color-mix(in srgb,var(--accent) 30%,transparent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.ks-excerpt-turn--muted{opacity:.78}.ks-excerpt-turn header{display:flex;align-items:center;gap:var(--space-sm)}.ks-excerpt-turn header span,.ks-excerpt-turn header strong,.ks-excerpt-turn header em{font-family:var(--font-mono);font-size:var(--text-2xs)}.ks-excerpt-turn header span,.ks-excerpt-turn header em{color:var(--dim);font-style:normal;font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase}.ks-excerpt-turn header strong{color:var(--ink);overflow-wrap:anywhere}.ks-excerpt-turn header em{margin-left:auto;color:color-mix(in srgb,var(--accent) 88%,var(--ink))}.ks-excerpt-turn p{margin:0;color:var(--ink);font-size:var(--text-sm);line-height:var(--leading-snug);overflow-wrap:anywhere;white-space:pre-wrap;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}.ks-excerpt-turn p.is-expanded{display:block;overflow:visible;-webkit-line-clamp:unset}.ks-excerpt-turn--muted p{display:block;max-height:240px;overflow:auto;-webkit-line-clamp:unset}.ks-excerpt-turn--muted p:focus-visible{outline:1px solid color-mix(in srgb,var(--accent) 68%,transparent);outline-offset:3px}.ks-excerpt-turn-expand{appearance:none;align-self:flex-start;min-height:26px;padding:0 var(--space-sm);border:0;border-radius:var(--radius-md);background:transparent;color:color-mix(in srgb,var(--accent) 82%,var(--ink));font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;cursor:pointer}.ks-excerpt-turn-expand:hover,.ks-excerpt-turn-expand:focus-visible{background:color-mix(in srgb,var(--accent) 8%,transparent)}.ks-excerpt-fold{display:flex;flex-direction:column;gap:var(--space-xs)}.ks-excerpt-fold-toggle{appearance:none;align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-xs);min-height:28px;padding:0 var(--space-sm);border:0;border-radius:var(--radius-md);background:transparent;color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;cursor:pointer}.ks-excerpt-fold-toggle:hover,.ks-excerpt-fold-toggle:focus-visible{background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--muted)}.ks-excerpt-fold-body{display:flex;flex-direction:column;gap:var(--space-xs)}@media(prefers-reduced-motion:reduce){.ks-why-matched>summary:before{transition:none}}.ks-rendered-head{display:flex;align-items:center;gap:var(--space-sm);color:var(--muted)}.ks-rendered-head strong{color:var(--ink);font-size:var(--text-sm);font-weight:620}.ks-rendered-head span{margin-left:auto;color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase}.ks-indexed-snippet{min-width:0;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);border:1px solid color-mix(in srgb,var(--ink) 7%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--bg) 34%,transparent)}.ks-indexed-snippet span{color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase}.ks-indexed-snippet p{margin:0;color:var(--ink);font-size:var(--text-sm);line-height:var(--leading-snug);overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.ks-preview-source{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-xs) var(--space-sm);align-items:center;padding:var(--space-md);border:1px solid color-mix(in srgb,var(--green) 16%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--green) 6%,transparent)}.ks-preview-source span{grid-column:1 / -1;color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase}.ks-preview-source code{min-width:0;color:color-mix(in srgb,var(--green) 88%,var(--ink));font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.ks-preview-source button{appearance:none;height:26px;display:inline-flex;align-items:center;gap:var(--space-2xs);padding:0 var(--space-sm);border:1px solid color-mix(in srgb,var(--green) 24%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--green) 8%,var(--surface));color:color-mix(in srgb,var(--green) 88%,var(--ink));font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase;cursor:pointer;transition:background var(--motion-duration-hover) var(--motion-ease-standard)}.ks-preview-source button:hover{background:color-mix(in srgb,var(--green) 16%,var(--surface))}.ks-preview-loading{display:flex;align-items:center;gap:var(--space-sm);color:var(--muted);font-size:var(--text-sm)}.ks-jsonl-window{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid color-mix(in srgb,var(--ink) 7%,transparent);border-radius:var(--radius-lg)}.ks-jsonl-window>summary.ks-jsonl-window-head{cursor:pointer;list-style:none}.ks-jsonl-window>summary.ks-jsonl-window-head::-webkit-details-marker{display:none}.ks-jsonl-window:not([open])>summary.ks-jsonl-window-head{border-bottom:0}.ks-jsonl-window-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-bottom:1px solid color-mix(in srgb,var(--ink) 7%,transparent);background:color-mix(in srgb,var(--bg) 36%,transparent)}.ks-jsonl-window-head strong{color:var(--ink);font-size:var(--text-sm);font-weight:620}.ks-jsonl-window-head span{color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-sm);text-transform:uppercase;text-align:right}.ks-jsonl-record{border-top:1px solid color-mix(in srgb,var(--ink) 6%,transparent);background:color-mix(in srgb,var(--surface) 75%,transparent)}.ks-jsonl-record--matched{background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.ks-jsonl-record:first-of-type{border-top:0}.ks-jsonl-record summary{display:grid;grid-template-columns:42px minmax(72px,.42fr) minmax(0,1fr);gap:var(--space-sm);align-items:center;padding:var(--space-sm) var(--space-md);color:var(--muted);font-size:var(--text-xs);cursor:pointer}.ks-jsonl-record summary span,.ks-jsonl-record summary strong{font-family:var(--font-mono)}.ks-jsonl-record summary strong{color:var(--ink);overflow-wrap:anywhere}.ks-jsonl-record summary em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal}.ks-jsonl-record pre{max-height:240px;margin:0;overflow:auto;padding:var(--space-md);border-top:1px solid color-mix(in srgb,var(--ink) 6%,transparent);background:color-mix(in srgb,black 20%,transparent);color:var(--ink);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-snug);white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:760px){.ks-shell{padding:var(--space-2xl) var(--space-2xl) var(--space-5xl)}.ks-header-titles h1{font-size:var(--text-4xl)}.ks-search-form{height:48px;padding:0 var(--space-lg)}.ks-search-input{font-size:var(--text-xl)}.ks-filterbar{padding:var(--space-md) var(--space-lg)}.ks-filterbar-label{width:64px}.ks-hit,.ks-preview-actions{padding-left:var(--space-lg);padding-right:var(--space-lg)}.ks-preview-panel{padding:var(--space-lg)}}
@@ -1,18 +0,0 @@
1
- const C=/^\s*#\s*AGENTS\.md instructions[^\n]*(?:\n+<INSTRUCTIONS>[\s\S]*?<\/INSTRUCTIONS>)?/i,O=/<INSTRUCTIONS>[\s\S]*?<\/INSTRUCTIONS>/gi,b=/\bask\/Task\s*:\s*([^\n]+)/i,R=/^(?:#+\s*)?(?:task|request|prompt|goal|user goal|user request|ask)\s*:\s*(.+)$/i,g=/^\s*#{1,4}\s*(?:my request(?:\s+for\s+[^:\n]+)?|request|user request)\s*:?\s*$/i,$=/^#?\s*(?:AGENTS\.md instructions|Global Codex Build Hygiene|Agent Instructions)\b/i,I=/^#?\s*Files mentioned by the user\s*:?\s*$/i,k=/^```/,G=/^.+?\bask\/Task\s*:\s*/i,q=/^\s*(?:\u2316\s*)?.+?\s+(?:->|\u2192)\s+.+?\s+(?:\u00b7|\.)\s+ask:[\w-]+\s*(?:>|\u203a)\s*/iu,U=/^#?\s*Codex task\s*(?:[-:\u2013\u2014])\s*/i,w=/^(?:ask|request|user request|incoming ask)$/i;function N(e){return(e??"").replace(/\r\n/g,`
2
- `).trim()}function h(e){let t=e.trim(),n=!0;for(;n;){const s=t.replace(C,"").trim();n=s!==t,t=s}return t.replace(O,"").trim()}function y(e){let t=e.trim(),n=!0;for(;n;){n=!1;const s=t.split(`
3
- `),r=f(s[0]??"");w.test(r)&&s.length>1&&(t=s.slice(1).join(`
4
- `).trim(),t=h(t),n=!0)}return t}function D(e){const t=e.split(`
5
- `),n=[];let s=!1;for(const r of t){if(I.test(r)){s=!0;continue}if(s&&g.test(r)){s=!1,n.push(r);continue}s||n.push(r)}return n.join(`
6
- `).trim()}function f(e){return e.trim().replace(/^\s*(?:[-*+]|\d+\.)\s+/u,"").replace(/^>\s*/u,"").replace(q,"").replace(G,"").replace(U,"").trim()}function M(e){const t=f(e);return!t||k.test(t)||$.test(t)||I.test(t)||g.test(t)||w.test(t)||/^<image\b/i.test(t)||/^<\/image>$/i.test(t)||/^<\/?INSTRUCTIONS>$/i.test(t)?!1:/[\p{L}\p{N}]/u.test(t)}function _(e){for(const t of e.split(`
7
- `))if(M(t))return f(t);return null}function x(e){const t=e.match(b);if(t?.[1]?.trim())return f(t[1]);for(const n of e.split(`
8
- `)){const r=f(n).match(R);if(r?.[1]?.trim())return f(r[1])}return null}function A(e){const t=e.split(`
9
- `);for(let n=0;n<t.length;n+=1){if(!g.test(t[n]??""))continue;return t.slice(n+1).join(`
10
- `).trim()||null}return null}function S(e,t){const n=e.trim();if(n.length<=t)return n;const s=n.slice(0,t).trimEnd(),r=Math.max(s.lastIndexOf(" "),s.lastIndexOf(`
11
- `),s.lastIndexOf("."));return`${(r>t*.55?s.slice(0,r):s).trimEnd()}...`}const B=/<\/?([a-zA-Z][\w.-]*)(\s[^<>]*?)?\s*\/?>/g,X=/[-_]/,F=/([\w.-]+)\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'>]+))/g,K=new Set(["realtime_delegation","input"]),P=["transcript_delta"],H={transcript_delta:"Transcript","in-app-browser-context":"Browser context",environment_context:"Environment","app-context":"App context","system-reminder":"Reminder",recommended_plugins:"Plugins","local-command-caveat":"Command note"};function Q(e){const t=H[e];if(t)return t;const n=e.replace(/[-_]+/g," ").trim();return n?n.charAt(0).toUpperCase()+n.slice(1):e}function v(e){const t=[],n=new Map,s=(i,c,l)=>{let o;if(l){let T;for(const m of l.matchAll(F)){const E=m[2]??m[3]??m[4]??"";if(T===void 0&&(T=E),m[1]?.toLowerCase()==="source"){o=E;break}}o??=T}const a=n.get(i);if(a){!a.detail&&o&&(a.detail=o,a.raw=c);return}const u={name:i,raw:c};o&&(u.detail=o),n.set(i,u),t.push(u)};let r=e;for(const i of P){const c=new RegExp(`<${i}\\b([^<>]*?)\\s*>([\\s\\S]*?)(?:<\\/${i}\\s*>|$)`,"gi");r=r.replace(c,(l,o)=>(s(i,`<${i}${o??""}>`,o||void 0),"")),r=r.replace(new RegExp(`<\\/${i}\\s*>`,"gi"),"")}const p=r.replace(B,(i,c,l)=>{const o=c.toLowerCase();return K.has(o)?"":X.test(c)?(s(o,i,i.startsWith("</")?void 0:l),""):i}).replace(/[ \t]{2,}/g," ").replace(/^[ \t]+|[ \t]+$/gm,"").replace(/\n{3,}/g,`
12
-
13
- `).trim();return{tags:t,text:p}}function j(e){return e.split(`
14
- `).map(t=>f(t)).filter(t=>t.length>0).join(`
15
- `).trim()}function V(e){const t=e.to?.trim();return t?t==="human"?"To operator":`To ${t}`:"User request"}function z(e){if(typeof e.answerT!="number"||!Number.isFinite(e.answerT))return null;const t=Math.max(0,Math.round(e.answerT-e.t));if(t<60)return`${t}s`;const n=Math.floor(t/60),s=t%60;return s>0?`${n}m ${s}s`:`${n}m`}function L(e){const t=N(e.text),n=D(y(h(t)))||t,s=A(n)??A(t)??n,{tags:r,text:d}=v(s),p=d||s,i=j(p)||t||"Request",c=x(p)??x(t)??_(p)??_(t)??"Request",l=V(e),o=[{label:"route",value:l}],a=z(e);a&&o.push({label:"answer",value:a});const u=N(e.answer),T=u?`${t}
16
-
17
- Answer:
18
- ${u}`:t;return{label:l,title:S(c,180),preview:S(i,520),requestText:s,fullText:t,copyText:T,fields:o,contextTags:r,answer:u?{label:a?`answered after ${a}`:"answered",text:u}:void 0}}function W(e,t=!1){const n=L(e);return t?n.fullText:n.title}function Y(e){return L(e).preview}export{W as a,L as b,Q as c,Y as l};
@@ -1,9 +0,0 @@
1
- const c=new Set(["strreplace","str_replace","str_replace_editor","multiedit"]);function a(t){return t&&typeof t=="object"&&!Array.isArray(t)?t:null}function l(t,e){for(const n of e){const o=t[n];if(typeof o=="string"&&o.trim())return o.trim()}}function f(t){const e=(t??"").trim().toLowerCase();return c.has(e)}function h(t){return t.trim().replace(/^\/Users\/[^/]+\//u,"~/").replace(/^\/home\/[^/]+\//u,"~/")}const u=/^StrReplace · (.+?) · edit: (.*?)(?: · (success|error|failed))?$/i;function m(t){const n=t.trim().match(/^-(.+?)(?: · \+(.+))?$/u);return n?{oldText:n[1]?.trim()??"",newText:n[2]?.trim()??""}:{oldText:"",newText:""}}function T(t){const e=t.trim().match(u);if(!e?.[1]||!e[2])return null;const{oldText:n,newText:o}=m(e[2]);return!n&&!o?null:{path:e[1].trim(),oldText:n,newText:o,outcome:e[3]?.trim().toLowerCase()}}function p(t){const e=a(t);if(!e)return null;const n=l(e,["path","file_path","filePath","filename","file"]),o=l(e,["old_string","oldString","old_str","replace_old","search"]),r=l(e,["new_string","newString","new_str","replace_new","replace"]);return!n||!o&&!r?null:{path:n,oldText:o??"",newText:r??""}}function x(t){const e=t.oldText.split(/\r?\n/).filter(r=>r.length>0),n=t.newText.split(/\r?\n/).filter(r=>r.length>0),o=[];for(const r of e.slice(0,6))o.push(`-${r}`);for(const r of n.slice(0,6))o.push(`+${r}`);if(o.length!==0)return{add:Math.max(n.length,t.newText?1:0),del:Math.max(e.length,t.oldText?1:0),preview:o.join(`
2
- `)}}function w(t){const e=[`file: ${t.path}`];return t.oldText&&e.push(`old:
3
- ${t.oldText}`),t.newText&&e.push(`new:
4
- ${t.newText}`),e.join(`
5
-
6
- `)}function d(t){const e=t?.trim();if(!e)return null;const n=e.match(/\bold:\s*\n([\s\S]*?)(?:\n\nnew:|\s*$)/i),o=e.match(/\bnew:\s*\n([\s\S]*)$/i),r=n?.[1]?.trim()??"",i=o?.[1]?.trim()??"";return!r&&!i?null:{oldText:r,newText:i}}function g(t){if(!f(t.tool))return null;const e=t.arg?.trim();if(!e||e==="started"||e==="completed"||e==="patch")return null;const n=d(t.detail);if(n)return{path:e,oldText:n.oldText,newText:n.newText};if(t.diff?.preview){const r=[],i=[];for(const s of t.diff.preview.split(`
7
- `))s.startsWith("-")&&r.push(s.slice(1)),s.startsWith("+")&&i.push(s.slice(1));if(r.length>0||i.length>0)return{path:e,oldText:r.join(`
8
- `),newText:i.join(`
9
- `)}}const o=t.arg?.trim();if(o?.startsWith("{"))try{const r=p(JSON.parse(o));if(r)return r}catch{}return null}export{T as a,x as b,p as c,w as d,f as i,h as l,g as s};
@@ -1,7 +0,0 @@
1
- import{n as m,t as A,b as T}from"./time-Dhsh_2EG.js";import{o as p,a as v}from"./tail-display-DHSNmvor.js";const _=2*6e4,E=9e4,w=2*6e4;function H(e,n=Date.now()){if(e>n&&e-n<=w)return"now";const t=A(e,n);return!t||t==="now"?t||"now":t.startsWith("in ")?t:`${t} ago`}function C(e){return T(e)}function R(e){if(!Number.isFinite(e)||e<=0)return"0s";if(e<6e4)return`${Math.max(1,Math.round(e/1e3))}s`;if(e<36e5)return`${Math.max(1,Math.round(e/6e4))}m`;const n=Math.floor(e/36e5),t=Math.round(e%36e5/6e4);return t>0?`${n}h ${t}m`:`${n}h`}function D(e){if(!Number.isFinite(e)||e<_)return null;const n=Math.floor(e/1e3);if(n<3600)return`${Math.floor(n/60)}m gap`;const t=Math.floor(n/3600),s=Math.floor(n%3600/60);return s>0?`${t}h ${s}m gap`:`${t}h gap`}function G(e,n,t,s,o=0){const a=t-s,r=e.map(f=>u(f,n)).filter(f=>f!==null);if(r.length===0)return{eventCount:0,spanMs:0,oldestAt:null,newestAt:null,truncatedBefore:!1,hiddenBeforeCount:o};const i=Math.min(...r),c=Math.max(...r);return{eventCount:e.length,spanMs:Math.max(0,c-i),oldestAt:i,newestAt:c,truncatedBefore:i>a+E,hiddenBeforeCount:o}}function u(e,n){const t=m(e.at);if(t!==null)return t;if(!Number.isFinite(e.t)||e.t<0)return null;const s=m(n);return s===null?null:s+e.t*1e3}function N(e,n,t,s){const o=t-s;return e.filter(a=>{const r=u(a,n);return r===null?!1:r>=o})}function K(e,n,t,s){const o=t-s;return e.reduce((a,r)=>{const i=u(r,n);return i===null||i>=o?a:a+1},0)}const S=50;function q(e,n,t,s=S){const o=L(e,n,t);return!e||!o?o??null:o.events.length>=s||e.events.length<=o.events.length?o:{...e,events:e.events.slice(-s)}}function L(e,n,t){if(!e)return null;const s=e.metadata?.session?.sessionStart,o=N(e.events,s,n,t);if(o.length===e.events.length)return e;const a=n-t,r=e.files.filter(i=>typeof s!="number"||!Number.isFinite(s)||!Number.isFinite(i.lastT)||i.lastT<0?!0:s+i.lastT*1e3>=a);return{...e,events:o,files:r}}const g=180,b=3;function X(e,n=g,t=b){const s=e.replace(/\r\n/g,`
2
- `).trim();if(!s)return"";const o=s.split(`
3
- `),a=o.slice(0,t).join(`
4
- `);if(a.length<=n&&o.length<=t)return a;const r=a.slice(0,n).trimEnd(),i=Math.max(r.lastIndexOf(" "),r.lastIndexOf(`
5
- `),r.lastIndexOf("."));return`${(i>n*.55?r.slice(0,i):r).trimEnd()}…`}function Z(e,n=g,t=b){const s=e.replace(/\r\n/g,`
6
- `).trim();return s?s.length>n||s.split(`
7
- `).length>t:!1}const x=/(?:^|[\s'"`])(\/[^\s'"`]+|(?:[\w@.-]+\/)+[\w@./-]+\.\w{1,8})/g,z=/\b(?:sed|cat|head|tail|nl)\s+(?:-[^\s]+\s+)*['"]?([^\s'"]+)/,M=/\b(?:[\w./-]+\/)+[\w@./-]+\.\w{1,8}\b/g,I=/\bgit\s+diff\b[\s\S]*?\s--\s+([^\n\r;&|]+)/g,F=/^(?:\+\+\+|---)\s+(?:[ab]\/)?([^\s]+)|^\*\*\*\s+(?:Add|Update|Delete) File:\s+(.+)$/gm;function l(e){const n=e.trim().replace(/^['"]|['"]$/g,"");return!n||n.length<3||n.startsWith("{")||n.startsWith("[")||/^(https?:|git@)/.test(n)||!n.includes("/")&&!n.includes(".")?null:n}const h=new Set(["echo","sed","grep","egrep","fgrep","rg","awk","cat","head","tail","ls","cd","pwd","cp","mv","rm","mkdir","touch","chmod","chown","npx","npm","pnpm","yarn","bun","node","deno","python","python3","pip","pip3","ruby","go","cargo","rustc","swift","make","cmake","bash","sh","zsh","fish","curl","wget","git","docker","kubectl","for","do","done","then","fi","else","elif","case","esac","while","until","function","return","exit","set","export","source","eval","true","false","test","find","xargs","sort","uniq","wc","tee","open","kill","ps","top","env","printf","read","sleep"]),O=new Set(["ts","tsx","js","jsx","mjs","cjs","mts","cts","swift","kt","java","go","rs","rb","py","php","c","h","cc","cpp","hpp","m","mm","cs","scala","clj","ex","exs","lua","dart","json","json5","jsonc","yaml","yml","toml","xml","ini","cfg","conf","env","lock","properties","plist","entitlements","md","mdx","markdown","txt","rst","adoc","csv","tsv","css","scss","sass","less","html","htm","vue","svelte","sh","bash","zsh","fish","ps1","bat","cmd","png","jpg","jpeg","gif","svg","webp","ico","bmp","tiff","avif","pdf","mp4","mov","webm","mp3","wav","woff","woff2","ttf","otf","sql","graphql","gql","proto","prisma","wasm","map","gradle","bazel","bzl","mk","cmake","dockerfile","gitignore","npmrc","nvmrc","editorconfig","prettierrc","eslintrc","babelrc"]),k=/^[A-Za-z_][A-Za-z0-9_]*=/,P=/\.([A-Za-z0-9_+-]{1,12})$/;function W(e){if(typeof e!="string")return!1;const n=e.trim();if(!n||/[\n\r]/.test(n))return!1;if(n.includes("/"))return!0;if(n.length<3||n.startsWith("-")||n.startsWith("{")||n.startsWith("[")||k.test(n)||/\s/.test(n))return!1;const t=n.toLowerCase();if(h.has(t)||t.startsWith("n")&&h.has(t.slice(1)))return!1;const s=n.match(P);return s?O.has(s[1].toLowerCase()):!1}function B(e){const n=new Map;for(const t of e){const s=t.path?.trim();if(!s||!W(s))continue;const o=n.get(s);if(!o){n.set(s,{...t,path:s});continue}o.touches+=t.touches,o.lastT=Math.max(o.lastT,t.lastT),o.state==="read"&&t.state!=="read"&&(o.state=t.state),o.state==="modified"&&t.state==="created"&&(o.state="created")}return[...n.values()]}function d(e,n){const t=new Set,s=n?.trim();if(!s)return[];const o=s.match(/"path"\s*:\s*"((?:\\.|[^"\\])*)"/);if(o?.[1]){const r=o[1].replace(/\\"/g,'"'),i=l(r);i&&t.add(i)}const a=s.match(z);if(a?.[1]){const r=l(a[1]);r&&t.add(r)}for(const r of s.matchAll(I))for(const i of(r[1]??"").split(/\s+/)){const c=l(i);c&&t.add(c)}for(const r of s.matchAll(F)){const i=l(r[1]??r[2]??"");i&&i!=="/dev/null"&&t.add(i)}for(const r of s.matchAll(x)){const i=l(r[1]??"");i&&t.add(i)}if(t.size===0)for(const r of s.matchAll(M)){const i=l(r[0]??"");i&&t.add(i)}if(t.size===0&&p(e)&&s.length<240){const r=l(s);r&&t.add(r)}return[...t]}function $(e){return v(e)?"modified":(p(e),"read")}function U(e){const n=new Map;for(const t of e){if(t.kind!=="tool"||t.tool==="res")continue;const s=[...d(t.tool,t.arg??t.text),...d(t.tool,t.detail)];for(const o of s){const a=$(t.tool),r=n.get(o);if(!r){n.set(o,{path:o,state:a,touches:1,lastT:t.t});continue}r.touches+=1,r.lastT=Math.max(r.lastT,t.t),a==="modified"&&(r.state="modified")}}return[...n.values()].sort((t,s)=>s.lastT-t.lastT)}function J(e,n=96){const t=e?.trim();return t?t.length<=n?t:`${t.slice(0,Math.max(0,n-1)).trimEnd()}…`:""}export{S as L,C as a,X as b,q as c,U as d,N as e,H as f,K as g,G as h,W as i,R as j,D as k,J as l,Z as m,u as o,B as p};
@@ -1 +0,0 @@
1
- import{r as a}from"./index-EsrkGBcv.js";let o=null;const s=new Set;function d(e,t){return e===t?!0:!e||!t?!1:e.live===t.live&&e.harness===t.harness&&e.identity===t.identity&&e.project===t.project&&e.actionGlyph===t.actionGlyph&&e.actionLabel===t.actionLabel&&e.actionMeta===t.actionMeta&&e.countsLabel===t.countsLabel&&e.strip.length===t.strip.length&&e.strip.every((n,r)=>n===t.strip[r])}function L(e,t){return e.id===t.id&&e.label===t.label&&e.statusLabel===t.statusLabel&&e.tone===t.tone&&e.agentId===t.agentId&&e.updatedAt===t.updatedAt&&d(e.floor,t.floor)}function p(e,t){return e===t?!0:e===null||t===null||e.length!==t.length?!1:e.every((n,r)=>L(n,t[r]))}function S(e){if(!p(o,e)){o=e;for(const t of s)t()}}function g(e){return s.add(e),()=>{s.delete(e)}}function i(){return o}function E(){return a.useSyncExternalStore(g,i,i)}let u=null;const l=new Set;function I(e){if(u!==e){u=e;for(const t of l)t()}}function h(e){return l.add(e),()=>{l.delete(e)}}function c(){return u}function F(){return a.useSyncExternalStore(h,c,c)}let f=null;function v(e){f=e}function R(){return f}export{I as a,F as b,R as g,S as p,v as s,E as u};
@@ -1,9 +0,0 @@
1
- import{i as u,s as $,l as x}from"./lane-edit-display-BjdT9oZl.js";function s(t){return(t??"").trim()}const w=new Set(["bash","shell","terminal","exec","run","command","exec_command","shell_command","local_shell","container_exec","container.exec"]);function p(t){const e=s(t.tool),l=s(t.arg),i=s(t.text);if(e&&w.has(e.toLowerCase())&&l&&l!=="started"&&l!=="completed")return l;if(e&&u(e)&&l&&l!=="started"&&l!=="completed"&&l!=="patch"){const o=l.lastIndexOf("/");return o>=0?l.slice(o+1):l}return e&&l&&l!=="started"&&l!=="completed"&&l!==e?`${e} · ${l}`:l&&(!e||l===e)?l:e||i||"command"}function g(t){const e=[],l=p(t);return l&&e.push(l),t.detail?.trim()&&e.push(t.detail.trim()),t.text?.trim()&&t.text.trim()!==l&&e.push(t.text.trim()),t.result&&e.push(Object.entries(t.result).map(([i,o])=>`${i}: ${o}`).join(`
2
- `)),t.diff&&(e.push(`+${t.diff.add}${t.diff.del>0?` -${t.diff.del}`:""}`),t.diff.preview&&e.push(t.diff.preview)),t.stream?.length&&e.push(t.stream.join(`
3
- `)),e.join(`
4
-
5
- `)}function O(t,e){if(t.kind!=="tool")return null;const l=p(t),i=[];e?.wallLabel&&i.push({label:"when",value:e.wallTitle?`${e.wallLabel} · ${e.wallTitle}`:e.wallLabel}),e?.sessionOffset&&i.push({label:"offset",value:e.sessionOffset});const o=s(t.tool),r=s(t.arg),h=u(t.tool),m=h?$(t):null;h&&m?.path?i.push({label:"file",value:x(m.path)}):(o&&o!==l&&i.push({label:"tool",value:o}),r&&r!==o&&r!==l&&i.push({label:"arg",value:r}));const f=t.result?.outcome;f!=null&&String(f).length>0&&i.push({label:"outcome",value:String(f)});const a=[],c=s(t.detail),n=s(t.text);return c&&a.push({title:"detail",content:c}),n&&n!==l&&n!==c&&a.push({title:"trace",content:n}),t.result&&Object.keys(t.result).length>0&&a.push({title:"result",content:Object.entries(t.result).map(([d,b])=>`${d}: ${b}`).join(`
6
- `)}),t.diff?.preview&&a.push({title:u(t.tool)?"change":"diff",content:t.diff.preview}),t.stream?.length&&a.push({title:"output",content:t.stream.join(`
7
- `)}),{command:l,hoverFields:i,sections:a,copyText:g(t)}}function T(t){if(!Number.isFinite(t)||t<=0)return"at start";if(t<60)return`+${t}s`;const e=Math.floor(t/60),l=t%60;return l>0?`+${e}m ${l}s`:`+${e}m`}function j(t,e=4){const l=[t.command];for(const i of t.hoverFields)i.label==="when"||i.label==="offset"||l.push(`${i.label}: ${i.value}`);for(const i of t.sections){const o=i.content.split(`
8
- `).filter(Boolean).slice(0,2).join(`
9
- `);o&&l.push(o)}return l.slice(0,e)}export{O as b,T as f,j as l};
@@ -1 +0,0 @@
1
- import{c as a}from"./createLucideIcon-zZ8Hx7er.js";const e=[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]],c=a("layers",e);export{c as L};
@@ -1 +0,0 @@
1
- import{c as t}from"./createLucideIcon-zZ8Hx7er.js";const e=[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]],i=t("layout-grid",e);export{i as L};
@@ -1 +0,0 @@
1
- .terminal-nav-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg);border-bottom:1px solid color-mix(in srgb,var(--border) 32%,transparent)}.terminal-nav-title{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-xl);text-transform:uppercase;color:var(--dim)}.terminal-nav-summary{margin-top:var(--space-3xs);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:var(--muted);text-transform:uppercase}.terminal-nav-refresh{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;flex:none;border:1px solid color-mix(in srgb,var(--border) 48%,transparent);border-radius:var(--radius-sm);background:transparent;color:var(--muted);cursor:pointer}.terminal-nav-refresh:hover:not(:disabled){border-color:color-mix(in srgb,var(--ink) 18%,transparent);color:var(--ink);background:color-mix(in srgb,var(--ink) 5%,transparent)}.terminal-nav-refresh:disabled{cursor:progress;opacity:.55}.terminal-nav-toolbar{padding:var(--space-md) var(--space-lg)}.terminal-nav-modes{flex:none;display:flex;gap:1px;margin:var(--space-sm) var(--space-lg) 0;padding:var(--space-3xs);background:color-mix(in srgb,var(--ink) 4%,transparent);border:1px solid color-mix(in srgb,var(--border) 40%,transparent);border-radius:var(--radius-md)}.terminal-nav-mode{flex:1;display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2xs, 3px) 0;border:none;background:transparent;color:var(--muted);border-radius:var(--radius-sm);cursor:pointer;transition:background .1s,color .1s}.terminal-nav-mode:hover{color:var(--ink)}.terminal-nav-mode--active{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.terminal-nav-error{flex:none;padding:0 var(--space-lg) var(--space-sm);font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--red)}.terminal-nav-list{flex:1;min-height:0;overflow-y:auto;padding:var(--space-xs) 0 var(--space-lg)}.terminal-nav-section{padding:var(--space-xs) 0 var(--space-sm)}.terminal-nav-section+.terminal-nav-section{border-top:1px solid color-mix(in srgb,var(--ink) 7%,transparent);padding-top:var(--space-md)}.terminal-nav-section-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-xs) var(--space-lg) var(--space-sm);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-xl);text-transform:uppercase;color:var(--dim)}.terminal-nav-section-title span:last-child{color:var(--muted);letter-spacing:var(--tracking-sm)}.terminal-nav-section-title--review{padding-top:var(--space-md);color:color-mix(in srgb,var(--red) 76%,var(--dim))}.terminal-nav-inactive-toggle{width:100%;min-height:34px;display:grid;grid-template-columns:16px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-lg);border:0;background:transparent;color:var(--dim);cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-lg);text-align:left;text-transform:uppercase}.terminal-nav-inactive-toggle:hover,.terminal-nav-inactive-toggle:focus-visible{background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--muted)}.terminal-nav-inactive-toggle:focus-visible{outline:1px solid var(--accent);outline-offset:-1px}.terminal-nav-inactive-toggle svg{transition:transform .12s ease}.terminal-nav-inactive-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.terminal-nav-review-count{color:color-mix(in srgb,var(--red) 68%,var(--dim));letter-spacing:var(--tracking-sm)}.terminal-nav-empty{padding:var(--space-md) var(--space-lg);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:var(--dim)}.terminal-nav-row{width:100%;position:relative;border-left:2px solid transparent;border-bottom:1px solid color-mix(in srgb,var(--ink) 5%,transparent);background:transparent}.terminal-nav-row:hover,.terminal-nav-row:focus-within{background:color-mix(in srgb,var(--ink) 5%,transparent)}.terminal-nav-row--active{border-left-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.terminal-nav-row-select{width:100%;min-height:48px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-lg);border:0;background:transparent;color:var(--muted);cursor:pointer;text-align:left;font-family:inherit}.terminal-nav-row:hover .terminal-nav-row-select,.terminal-nav-row:focus-within .terminal-nav-row-select,.terminal-nav-row--active .terminal-nav-row-select{padding-right:calc(var(--space-lg) + 56px)}.terminal-nav-row--review:hover .terminal-nav-row-select,.terminal-nav-row--review:focus-within .terminal-nav-row-select,.terminal-nav-row--review.terminal-nav-row--active .terminal-nav-row-select{padding-right:calc(var(--space-lg) + 84px)}.terminal-nav-row-select:focus-visible,.terminal-nav-action:focus-visible{outline:1px solid var(--accent);outline-offset:-1px}.terminal-nav-row-icon{color:color-mix(in srgb,var(--ink) 44%,transparent)}.terminal-nav-agent-dot{width:10px;height:10px;justify-self:center;border:1px solid color-mix(in srgb,var(--ink) 26%,transparent);border-radius:999px;background:color-mix(in srgb,var(--ink) 10%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ink) 4%,transparent)}.terminal-nav-agent-dot--bound{border-color:color-mix(in srgb,var(--accent) 46%,transparent);background:color-mix(in srgb,var(--accent) 62%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 9%,transparent)}.terminal-nav-row-main{min-width:0;display:grid;gap:1px}.terminal-nav-row-title{min-width:0;display:flex;align-items:center;gap:var(--space-sm);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:500;color:var(--muted)}.terminal-nav-row--active .terminal-nav-row-title{color:var(--ink)}.terminal-nav-row-title span:last-child,.terminal-nav-row-detail{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.terminal-nav-row-detail{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--dim);letter-spacing:var(--tracking-sm)}.terminal-nav-row-because{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-2xs);color:var(--dim)}.terminal-nav-row-because--screen{font-family:var(--font-mono);color:color-mix(in srgb,var(--accent) 78%,var(--ink))}.terminal-nav-search-hint{display:flex;align-items:center;gap:var(--space-sm);padding:2px var(--space-md) var(--space-sm);font-size:var(--text-2xs);color:var(--dim)}.terminal-nav-search-hint code{font-family:var(--font-mono);color:var(--muted)}.terminal-nav-search-working{color:color-mix(in srgb,var(--accent) 70%,var(--ink))}.terminal-nav-badges{flex:none;display:inline-flex;align-items:center;gap:var(--space-3xs);max-width:128px;overflow:hidden;transition:opacity .12s ease}.terminal-nav-badge{min-width:0;max-width:78px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1px var(--space-2xs);border:1px solid color-mix(in srgb,var(--border) 42%,transparent);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-sm);color:color-mix(in srgb,var(--ink) 48%,transparent);text-transform:uppercase}.terminal-nav-badge--backend{max-width:48px;color:color-mix(in srgb,var(--ink) 60%,transparent)}.terminal-nav-badge--review{border-color:color-mix(in srgb,var(--red) 28%,transparent);color:color-mix(in srgb,var(--red) 76%,var(--muted))}.terminal-nav-row-actions{position:absolute;top:50%;right:var(--space-lg);display:flex;align-items:center;gap:var(--space-3xs);transform:translateY(-50%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease}.terminal-nav-row:hover .terminal-nav-row-actions,.terminal-nav-row:focus-within .terminal-nav-row-actions,.terminal-nav-row--active .terminal-nav-row-actions{opacity:1;visibility:visible;pointer-events:auto}.terminal-nav-row:hover .terminal-nav-badges,.terminal-nav-row:focus-within .terminal-nav-badges,.terminal-nav-row--active .terminal-nav-badges{width:0;max-width:0;gap:0;opacity:0;visibility:hidden}.terminal-nav-action{min-width:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--border) 48%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--ink) 3%,transparent);color:color-mix(in srgb,var(--ink) 62%,transparent);cursor:pointer}.terminal-nav-action span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.terminal-nav-action:hover{border-color:color-mix(in srgb,var(--ink) 20%,transparent);background:color-mix(in srgb,var(--ink) 7%,transparent);color:var(--ink)}.terminal-nav-action:disabled{cursor:progress;opacity:.5}.terminal-nav-action--release:hover:not(:disabled){border-color:color-mix(in srgb,var(--red) 36%,transparent);background:color-mix(in srgb,var(--red) 10%,transparent);color:var(--red)}.terminal-nav-action--selected{border-color:color-mix(in srgb,var(--accent) 36%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--ink)}
@@ -1,2 +0,0 @@
1
- import{r as c,j as e}from"./index-EsrkGBcv.js";/* empty css */import{n as M}from"./agent-state-DDhnFEEP.js";import{p as k,a as L}from"./api-DSqpVKC7.js";import{m as F,b as $,d as D}from"./machine-scope-DJt9RZ2w.js";import{d as H}from"./router-DCtl8wqb.js";import{d as O,r as B}from"./operator-attention-DBaRg5ep.js";import{u as G}from"./sse-BCPRocpq.js";import{t as v}from"./time-Dhsh_2EG.js";import{u as K}from"./Provider-C35yu29I.js";import{o as P}from"./openAgent-Dbv5wfuL.js";import{R as x}from"./RailRow-BjmWK420.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./index-BWHgHrtv.js";import"./theme-vars-DNK0nn3k.js";import"./provider-Dojd8quC.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-C97-iTMK.js";import"./runtime-picker-DXu2bOTh.js";import"./scout-voice-CZx60X6E.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-OvccU82H.js";import"./createLucideIcon-zZ8Hx7er.js";import"./media-blobs-Bi8pxr1u.js";import"./index-724SdE6r.js";import"./HarnessMark-C4naWc16.js";import"./conversation-model-FxDeWlle.js";import"./conversations-DoAAO6kA.js";import"./colors-CFlbwC25.js";import"./NewChatOrigin-DFbF_XvR.js";import"./keyboard-nav-DDHegDbx.js";import"./x-DAehov0E.js";import"./chevron-down-l1mrh5S9.js";import"./search-DT42oyRW.js";import"./file-text-CnISiiw6.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DJr0v0D_.js";import"./TextDocumentSurface-D52m7Vd8.js";import"./index-CHD0qcfL.js";import"./chevron-right-DrfqcerI.js";import"./folder-D5prSkzz.js";import"./chevron-up-CETZJzjV.js";import"./code-xml-BhcNbLWU.js";import"./arrow-left-MVUKauwQ.js";import"./arrow-right-Bp-FpE5V.js";import"./voice-turn-ledger-BMZxlSjg.js";import"./chunk-HRAB3GC3-DbVLgbWX.js";import"./openContent-C6XO6kr5.js";import"./AgentAvatar-CrP1eXxk.js";import"./SpriteAvatar-CpZWf54-.js";import"./CrewAvatar-kTznzqcO.js";const U=new Set(["message.posted","flight.updated","collaboration.event.appended","agent.updated"]),V=4,z=4,X=3,y="/api/fleet",Y=3e4;function oe({prepend:t}){const{agents:n,agentsLoaded:i,navigate:a,route:s}=K(),[o]=c.useState(()=>k(y,Y)),[l,u]=c.useState(o),[j,w]=c.useState(o!==null),[I,S]=c.useState(()=>new Set),p=H(s),b=c.useMemo(()=>F(n,p),[n,p]),h=c.useMemo(()=>$(n,p),[n,p]),m=c.useMemo(()=>D(l,b),[l,b]),d=c.useCallback(async()=>{try{u(await L(y))}catch{}finally{w(!0)}},[]);c.useEffect(()=>{d()},[d]),G(r=>{U.has(r.kind)&&d()});const C=c.useMemo(()=>tt(h).slice(0,V),[h]),R=c.useMemo(()=>(m?.activity??[]).slice(0,z),[m]),N=c.useMemo(()=>Z(m?.needsAttention??[],I),[m,I]),_=c.useCallback(async r=>{S(f=>new Set(f).add(r.recordId));try{await O({recordKind:r.kind,recordId:r.recordId,itemUpdatedAt:r.updatedAt})}catch{S(f=>{const E=new Set(f);return E.delete(r.recordId),E});return}d()},[d]);return e.jsxs("div",{className:"ctx-panel base-rail",children:[t?e.jsx("div",{className:"base-rail-prepend",children:t}):null,e.jsx(q,{agents:C,totalCount:h.length,loading:!i,onSelect:r=>P(a,r,{returnTo:s}),onSeeAll:()=>a({view:"agents-v2"})}),e.jsx(Q,{items:R,loading:!j,onSelect:r=>a(et(r)),onSeeAll:()=>a({view:"activity"})}),e.jsx(W,{items:N.items,totalCount:N.totalCount,loading:!j,onSelect:r=>a(B(r)),onDismiss:r=>{_(r)}})]})}function q({agents:t,totalCount:n,loading:i,onSelect:a,onSeeAll:s}){return e.jsxs("section",{className:"ctx-panel-section base-rail-section",children:[e.jsx(g,{title:"Recent agents",onSeeAll:n>0?s:void 0}),i?e.jsx(A,{}):t.length===0?e.jsx("div",{className:"ctx-panel-empty",children:"No agents yet"}):t.map(o=>e.jsx(x,{name:o.name||o.id,meta:o.updatedAt?v(o.updatedAt):void 0,tone:M(o.state),title:J(o),onClick:()=>a(o)},o.id))]})}function J(t){const n=[];return t.project&&n.push(`project: ${t.project}`),t.branch&&n.push(`branch: ${t.branch}`),t.harness&&n.push(`harness: ${t.harness}`),n.join(`
2
- `)}function Q({items:t,loading:n,onSelect:i,onSeeAll:a}){return e.jsxs("section",{className:"ctx-panel-section base-rail-section",children:[e.jsx(g,{title:"Recent Scout coordination",meta:(t.length>0,void 0),onSeeAll:t.length>0?a:void 0}),n?e.jsx(A,{}):t.length===0?e.jsx("div",{className:"ctx-panel-empty",children:"No recent Scout messages or dispatches"}):t.map(s=>{const o=s.actorName??s.agentName??s.agentId??"system",l=s.title??s.summary??T(s.kind);return e.jsx(x,{name:l,meta:s.ts?v(s.ts):void 0,tone:"neutral",title:`${o} · ${T(s.kind)}`,onClick:()=>i(s)},s.id)})]})}function W({items:t,totalCount:n,loading:i,onSelect:a,onDismiss:s}){return!i&&t.length===0?null:e.jsxs("section",{className:"ctx-panel-section base-rail-section",children:[e.jsx(g,{title:"Needs attention",meta:n>0?`${n}`:void 0}),i?e.jsx(A,{rows:2}):t.map(o=>{const l=o.agentName??o.agentId??"operator";return e.jsx(x,{name:o.title,meta:v(o.updatedAt),tone:"in_turn",unread:!0,title:`${l} · ${o.kind}`,onClick:()=>a(o),actions:e.jsx("button",{type:"button",className:"rr-row-action",title:"Dismiss — stop asking until this changes","aria-label":"Dismiss",onClick:u=>{u.stopPropagation(),s(o)},children:"Dismiss"})},o.recordId)})]})}function Z(t,n,i=X){const a=[...t].filter(s=>!n.has(s.recordId)).sort((s,o)=>s.updatedAt-o.updatedAt||s.recordId.localeCompare(o.recordId));return{items:a.slice(0,i),totalCount:a.length}}function A({rows:t=3}){return e.jsx("div",{className:"base-rail-loading",role:"status","aria-label":"Loading",children:Array.from({length:t},(n,i)=>e.jsx("span",{"aria-hidden":"true"},i))})}function g({title:t,meta:n,onSeeAll:i}){return e.jsxs("div",{className:"ctx-panel-section-label base-rail-section-label",children:[e.jsx("span",{children:t}),e.jsxs("span",{className:"base-rail-section-trailing",children:[n?e.jsx("span",{className:"ctx-panel-count",children:n}):null,i?e.jsx("button",{type:"button",className:"base-rail-see-all",onClick:i,children:"all"}):null]})]})}function tt(t){return[...t].sort((n,i)=>(i.updatedAt??0)-(n.updatedAt??0))}function T(t){switch(t){case"message":return"Message";case"invocation":return"Invocation";case"flight":return"Flight update";case"collaboration":return"Collaboration";default:return t.replace(/_/g," ")}}function et(t){return t.conversationId?{view:"conversation",conversationId:t.conversationId}:t.agentId?{view:"agents-v2",agentId:t.agentId}:{view:"activity"}}export{oe as HomeLeft,W as NeedsAttentionSection,Z as selectNeedsAttentionItems};
@@ -1 +0,0 @@
1
- import{r as N,j as e}from"./index-EsrkGBcv.js";import{a as I}from"./api-DSqpVKC7.js";import{d as L,e as j,s as R}from"./router-DCtl8wqb.js";import{u as $,r as y,s as b,i as C}from"./mesh-ops-CiZ8xSAx.js";import{u as E,s as T}from"./mesh-view-store-DZvJC4KU.js";import{u as A}from"./Provider-C35yu29I.js";import{R as h}from"./RailRow-BjmWK420.js";import{u as U}from"./use-mesh-ops-items-BSYaqH_0.js";/* empty css */import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./theme-vars-DNK0nn3k.js";import"./provider-Dojd8quC.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-BCPRocpq.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-C97-iTMK.js";import"./runtime-picker-DXu2bOTh.js";import"./scout-voice-CZx60X6E.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-OvccU82H.js";import"./createLucideIcon-zZ8Hx7er.js";import"./media-blobs-Bi8pxr1u.js";import"./index-724SdE6r.js";import"./HarnessMark-C4naWc16.js";import"./conversation-model-FxDeWlle.js";import"./time-Dhsh_2EG.js";import"./conversations-DoAAO6kA.js";import"./colors-CFlbwC25.js";import"./NewChatOrigin-DFbF_XvR.js";import"./keyboard-nav-DDHegDbx.js";import"./x-DAehov0E.js";import"./chevron-down-l1mrh5S9.js";import"./search-DT42oyRW.js";import"./file-text-CnISiiw6.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DJr0v0D_.js";import"./TextDocumentSurface-D52m7Vd8.js";import"./index-CHD0qcfL.js";import"./chevron-right-DrfqcerI.js";import"./folder-D5prSkzz.js";import"./chevron-up-CETZJzjV.js";import"./code-xml-BhcNbLWU.js";import"./arrow-left-MVUKauwQ.js";import"./arrow-right-Bp-FpE5V.js";import"./voice-turn-ledger-BMZxlSjg.js";import"./chunk-HRAB3GC3-DbVLgbWX.js";import"./AgentAvatar-CrP1eXxk.js";import"./SpriteAvatar-CpZWf54-.js";import"./CrewAvatar-kTznzqcO.js";function S(s){return s.hostName?.split(".")[0]??s.name??s.id.slice(0,12)}function Vt(){const{route:s,navigate:u}=A(),l=L(s),{items:i,unattributedOnly:m,lab:M,refreshToken:g}=$(),{meshSnapshot:r}=E();U(l);const[w]=N.useState(()=>y());N.useEffect(()=>{let t=!1;return I("/api/mesh").then(o=>{t||T(o)}).catch(()=>{}),()=>{t=!0}},[g]);const p=t=>{b(!1),u(t?R(s,t):j(s))},O=()=>{u(j(s)),b(!0)},c=r?.localNode??null,d=r?Object.values(r.nodes).filter(t=>t.id!==c?.id):[],a=t=>M.lastLook?t.filter(o=>C(o,w)).length:0,x=i.filter(t=>t.hostNodeId===null),f=t=>{const o=i.filter(k=>k.hostNodeId===t.id),n=a(o),v=l===t.id;return e.jsx(h,{name:S(t),meta:o.length>0?`${n>0?`${n}·`:""}${o.length}`:"—",tone:n>0?"needs_attention":"neutral",active:v,unread:n>0,onClick:()=>p(v?null:t.id),title:`Scope the list to ${S(t)}`},t.id)};return e.jsxs("div",{className:"ctx-panel mesh-ops-rail",children:[e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Mesh"}),e.jsx(h,{name:"everywhere",meta:`${a(i)>0?`${a(i)}·`:""}${i.length}`,tone:a(i)>0?"needs_attention":"neutral",active:l===null&&!m,onClick:()=>p(null),title:"Show items across all hosts"})]}),c&&e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"This host"}),f(c)]}),d.length>0&&e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Peers"}),d.map(t=>f(t))]}),e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"No venue"}),e.jsx(h,{name:"unattributed",meta:x.length>0?String(x.length):"—",tone:"neutral",active:m,onClick:()=>m?p(null):O(),title:"Items with no venue host"})]}),!r&&e.jsx("div",{className:"ctx-panel-empty",children:"Loading mesh…"})]})}export{Vt as MeshOpsLeft};
@@ -1 +0,0 @@
1
- .base-rail{height:100%;overflow-y:auto}.base-rail-prepend{border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent)}.base-rail-section{padding-top:var(--space-md)}.base-rail-section:first-of-type{padding-top:var(--space-xs)}.base-rail-section-label{padding:var(--space-2xs) var(--space-lg) var(--space-2xs)}.base-rail-section-trailing{display:inline-flex;align-items:center;gap:var(--space-xs)}.base-rail-see-all{border:0;padding:var(--space-3xs) var(--space-2xs);background:transparent;color:var(--muted);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;letter-spacing:var(--tracking-lg);text-transform:uppercase;cursor:pointer;border-radius:var(--radius-sm);transition:background .1s,color .1s}.base-rail-see-all:hover{background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--ink)}.base-rail-loading{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg) var(--space-md)}.base-rail-loading span{display:block;width:82%;height:8px;border-radius:999px;background:color-mix(in srgb,var(--ink) 8%,transparent);animation:base-rail-loading-pulse 1.2s ease-in-out infinite alternate}.base-rail-loading span:nth-child(2n){width:61%}@keyframes base-rail-loading-pulse{0%{opacity:.45}to{opacity:.9}}@media(prefers-reduced-motion:reduce){.base-rail-loading span{animation:none}}.base-rail-section--jumps{border-bottom:none;padding-bottom:var(--space-lg)}.base-rail-jumps{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-xs);padding:var(--space-2xs) var(--space-md) 0}.base-rail-jump{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid color-mix(in srgb,var(--border) 50%,transparent);background:color-mix(in srgb,var(--bg) 70%,transparent);border-radius:var(--radius-md);color:var(--ink);cursor:pointer;font-size:var(--text-sm);font-weight:500;letter-spacing:-.003em;text-align:left;transition:background .1s,border-color .1s,color .1s}.base-rail-jump:hover{background:color-mix(in srgb,var(--ink) 5%,transparent);border-color:color-mix(in srgb,var(--border) 80%,transparent)}.base-rail-jump-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.base-rail-jump:hover .base-rail-jump-icon{color:var(--ink)}
@@ -1 +0,0 @@
1
- import{r as m,j as t}from"./index-EsrkGBcv.js";import{u as ee}from"./usePersistentState-B8lP7TRb.js";import{b as te,f as ae,a as ne,c as se,d as ie,s as re}from"./terminal-sessions-3RfJpen8.js";import{a as le,r as F,i as oe}from"./keyboard-nav-DDHegDbx.js";import{u as ce}from"./Provider-C35yu29I.js";import{c as me}from"./agent-state-DDhnFEEP.js";import{r as K,c as de}from"./terminal-relay-Bxs1hp-j.js";import{t as ue,a as G,s as ve,b as j,P as pe}from"./session-table-L-pns6Zl.js";/* empty css */import{R as he}from"./refresh-cw-BmVr7sCD.js";import{A as fe}from"./activity-CIlFrfPJ.js";import{C as be}from"./clock-BV1aqPkK.js";import{F as xe}from"./folder-D5prSkzz.js";import{L as ye}from"./layers-C8PDiMul.js";import{C as ge}from"./chevron-right-DrfqcerI.js";import{L as D}from"./log-in-7SnYqW5w.js";import{E as B}from"./eye-LrO-cXQt.js";import{T as je}from"./terminal-hQKQygcf.js";import"./api-DSqpVKC7.js";import"./theme-vars-DNK0nn3k.js";import"./provider-Dojd8quC.js";import"./router-DCtl8wqb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-BCPRocpq.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-C97-iTMK.js";import"./runtime-picker-DXu2bOTh.js";import"./scout-voice-CZx60X6E.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-OvccU82H.js";import"./createLucideIcon-zZ8Hx7er.js";import"./media-blobs-Bi8pxr1u.js";import"./index-724SdE6r.js";import"./HarnessMark-C4naWc16.js";import"./conversation-model-FxDeWlle.js";import"./time-Dhsh_2EG.js";import"./conversations-DoAAO6kA.js";import"./colors-CFlbwC25.js";import"./NewChatOrigin-DFbF_XvR.js";import"./x-DAehov0E.js";import"./chevron-down-l1mrh5S9.js";import"./search-DT42oyRW.js";import"./file-text-CnISiiw6.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DJr0v0D_.js";import"./TextDocumentSurface-D52m7Vd8.js";import"./index-CHD0qcfL.js";import"./chevron-up-CETZJzjV.js";import"./code-xml-BhcNbLWU.js";import"./arrow-left-MVUKauwQ.js";import"./arrow-right-Bp-FpE5V.js";import"./voice-turn-ledger-BMZxlSjg.js";import"./chunk-HRAB3GC3-DbVLgbWX.js";const ke=[{id:"fleet",label:"Fleet",title:"Group by fleet: herdr, tmux, background"},{id:"places",label:"Places",title:"Group by project"},{id:"time",label:"Time",title:"Group by last activity"},{id:"attention",label:"Attention",title:"Group by attention state: attached, live, detached, exited"}],Ne=[{id:"herdr",label:"Herdr"},{id:"tmux-named",label:"Tmux"},{id:"tmux-auto",label:"Tmux · auto"},{id:"external",label:"Background"}],we=900*1e3,Se=1440*60*1e3,Ae=10080*60*1e3,W=[{key:"now",label:"Now",maxAgeMs:we},{key:"today",label:"Today",maxAgeMs:Se},{key:"week",label:"This week",maxAgeMs:Ae},{key:"older",label:"Older",maxAgeMs:null},{key:"unknown",label:"Unknown",maxAgeMs:null}],Ee=[{key:"attached",label:"Attached",rank:3},{key:"live",label:"Live",rank:2},{key:"detached",label:"Detached",rank:1},{key:"exited",label:"Exited",rank:0}];function Ie(n){return Ne.map(s=>({key:s.id,label:s.label,items:n.filter(o=>te(o)===s.id)})).filter(s=>s.items.length>0)}function Te(n){const s=new Map;for(const i of n){const l=s.get(i.project);l?l.push(i):s.set(i.project,[i])}const o=new Set(["backend-only","unscoped"]),r=[...s.entries()].map(([i,l])=>({key:`project:${i}`,label:i,items:l,latestActivity:Math.max(...l.map(u=>G(u)??0)),isCatchAll:o.has(i)}));return r.sort((i,l)=>i.isCatchAll!==l.isCatchAll?i.isCatchAll?1:-1:i.latestActivity!==l.latestActivity?l.latestActivity-i.latestActivity:i.label.localeCompare(l.label,void 0,{numeric:!0,sensitivity:"base"})),r.map(({key:i,label:l,items:u})=>({key:i,label:l,items:u}))}function Ce(n,s){const o=r=>{const i=G(r);if(i===null)return"unknown";const l=Math.max(0,s-i);for(const u of W)if(u.maxAgeMs!==null&&l<u.maxAgeMs)return u.key;return"older"};return W.map(r=>({key:r.key,label:r.label,items:n.filter(i=>o(i)===r.key)})).filter(r=>r.items.length>0)}function Re(n){return Ee.map(s=>({key:s.key,label:s.label,items:n.filter(o=>ue(o)===s.rank)})).filter(s=>s.items.length>0)}function Me(n,s,o=Date.now()){switch(s){case"fleet":return Ie(n);case"places":return Te(n);case"time":return Ce(n,o);case"attention":return Re(n)}}const Le=8e3,$e=[{id:"recent",label:"Recent"},{id:"name",label:"A–Z"}],_e={fleet:ye,places:xe,time:be,attention:fe};function Wt(){const{route:n,navigate:s,agents:o}=ce(),[r,i]=m.useState({state:"loading",sessions:[]}),[l,u]=m.useState("recent"),[k,P]=ee("terminal-nav-mode","fleet"),[U,V]=m.useState(!1),[q,I]=m.useState(null),[T,C]=m.useState(null),H=m.useRef(null),Y=le();m.useEffect(()=>{const e=a=>{if(a.key!=="/"||a.metaKey||a.ctrlKey||a.altKey||oe(a.target))return;const c=()=>{const d=document.querySelector("[data-terminal-find]");return d?(d.focus(),d.select(),!0):!1};if(c()){a.preventDefault();return}a.preventDefault(),s({view:"terminal"}),requestAnimationFrame(()=>{c()||requestAnimationFrame(c)})};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[s]);const h=m.useCallback((e={})=>{e.silent||i(a=>({state:"loading",sessions:a.sessions})),ae({includeDiscovered:!0}).then(a=>{i({state:"ready",sessions:a})}).catch(a=>{e.silent||i(c=>({state:"failed",sessions:c.sessions,error:a instanceof Error?a.message:String(a)}))})},[]);m.useEffect(()=>{h()},[h]),m.useEffect(()=>{const e=()=>{document.visibilityState==="visible"&&h({silent:!0})},a=window.setInterval(e,Le);return window.addEventListener("focus",e),document.addEventListener("visibilitychange",e),()=>{window.clearInterval(a),window.removeEventListener("focus",e),document.removeEventListener("visibilitychange",e)}},[h]);const b=m.useMemo(()=>ne(r.sessions),[r.sessions]),f=m.useMemo(()=>ve(se(b),l==="recent"?{column:"activity",direction:"desc"}:{column:"name",direction:"asc"}),[l,b]),R=m.useMemo(()=>Oe(o,l).filter(e=>{const a=K(e);return a?!b.some(c=>c.surface.backend===a.backend&&c.surface.sessionName===a.sessionName&&(a.paneId==null||c.surface.paneId===a.paneId)):!0}),[o,b,l]),x=f.filter(e=>j(e)==="current"),Z=Me(x,k),y=f.filter(e=>j(e)==="inactive"),v=f.filter(e=>j(e)==="review"),M=y.length+v.length,L=v.length,g=U,p=R,J=n.view==="terminal"?n.terminalSurfaceKey??null:null,$=n.view==="terminal"?n.terminalSessionId??null:null,N=e=>ie(e.key,J)&&(!$||e.session.id===$),w=n.view==="terminal"&&n.agentId?`agent:${n.agentId}`:null,_=!!(x.some(N)||g&&[...y,...v].some(N)||w!=null&&p.some(e=>`agent:${e.id}`===w)),O=x[0]?.id??(g?y[0]?.id??v[0]?.id:void 0)??(p[0]?`agent:${p[0].id}`:void 0),Q=r.state==="loading"?"Syncing":`${f.length+R.length} targets`,S=(e,a)=>({view:"terminal",terminalSessionId:e.session.id,terminalSurfaceKey:re(e.surface),...a?{mode:a}:{}}),A=(e,a="takeover")=>({view:"terminal",agentId:e.id,mode:a}),X=async e=>{if(e.surface.backend==="tmux"&&window.confirm(`Release inactive terminal ${e.surface.sessionName}? The tmux surface will stop, but any associated Scout agent remains available and can be started again.`)){I(e.id),C(null);try{await de({backend:"tmux",sessionName:e.surface.sessionName,paneId:e.surface.paneId??null,socketDir:e.surface.socketDir??null},"release"),h({silent:!0})}catch(a){C(a instanceof Error?a.message:String(a))}finally{I(null)}}},E=e=>{const a=N(e),c=j(e),d=q===e.id;return t.jsxs("div",{className:`terminal-nav-row${a?" terminal-nav-row--active":""}${c==="review"?" terminal-nav-row--review":""}`,title:e.surface.sessionName,children:[t.jsxs("button",{type:"button","data-list-primary":!0,className:"terminal-nav-row-select",tabIndex:F(a,_,e.id===O),onClick:()=>s(S(e)),children:[t.jsx(je,{className:"terminal-nav-row-icon",size:14,strokeWidth:1.7}),t.jsxs("span",{className:"terminal-nav-row-main",children:[t.jsx("span",{className:"terminal-nav-row-title",children:t.jsx("span",{children:e.title})}),t.jsx("span",{className:"terminal-nav-row-detail",children:e.detail||e.session.sourceSessionId})]}),t.jsxs("span",{className:"terminal-nav-badges",children:[t.jsx("span",{className:"terminal-nav-badge terminal-nav-badge--backend",children:e.surface.backend}),t.jsx("span",{className:`terminal-nav-badge${c==="review"?" terminal-nav-badge--review":""}`,children:c==="current"?e.condition:c})]})]}),t.jsxs("div",{className:"terminal-nav-row-actions",children:[t.jsxs("button",{type:"button",className:`terminal-nav-action${n.view==="terminal"&&a&&n.mode==="takeover"?" terminal-nav-action--selected":""}`,onClick:()=>s(S(e,"takeover")),title:"Enter this terminal","aria-label":"Enter this terminal",children:[t.jsx(D,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Enter"})]}),t.jsxs("button",{type:"button",className:`terminal-nav-action${n.view==="terminal"&&a&&n.mode==="observe"?" terminal-nav-action--selected":""}`,onClick:()=>s(S(e,"observe")),title:"Observe this terminal read-only","aria-label":"Observe this terminal read-only",children:[t.jsx(B,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Observe"})]}),c==="review"&&e.surface.backend==="tmux"&&t.jsxs("button",{type:"button",className:"terminal-nav-action terminal-nav-action--release",onClick:()=>{X(e)},disabled:d,title:"Release this inactive tmux surface; keep the agent","aria-label":"Release this inactive tmux surface; keep the agent",children:[t.jsx(pe,{size:12,strokeWidth:1.8}),t.jsx("span",{children:d?"Releasing":"Release"})]})]})]},e.id)};return t.jsxs("div",{className:"ctx-panel terminal-nav",children:[t.jsxs("div",{className:"terminal-nav-head",children:[t.jsxs("div",{children:[t.jsx("div",{className:"terminal-nav-title",children:"Terminals"}),t.jsx("div",{className:"terminal-nav-summary",children:Q})]}),t.jsx("button",{type:"button",className:"terminal-nav-refresh",onClick:()=>h(),disabled:r.state==="loading",title:"Refresh terminals","aria-label":"Refresh terminals",children:t.jsx(he,{size:14,strokeWidth:1.8})})]}),t.jsx("div",{className:"terminal-nav-modes",role:"group","aria-label":"Group terminals",children:ke.map(e=>{const a=_e[e.id];return t.jsx("button",{type:"button",title:e.title,"aria-label":e.title,"aria-pressed":k===e.id,className:`terminal-nav-mode${k===e.id?" terminal-nav-mode--active":""}`,onClick:()=>P(e.id),children:t.jsx(a,{size:13,strokeWidth:1.8})},e.id)})}),t.jsx("div",{className:"ctx-panel-toolbar terminal-nav-toolbar",children:t.jsx("div",{className:"ctx-panel-sort",role:"group","aria-label":"Sort terminals",children:$e.map(e=>t.jsx("button",{type:"button",title:e.id==="recent"?"Sort by most recent":"Sort alphabetically","aria-pressed":l===e.id,className:`ctx-panel-sort-option${l===e.id?" ctx-panel-sort-option--active":""}`,onClick:()=>u(e.id),children:e.label},e.id))})}),r.state==="failed"&&t.jsx("div",{className:"terminal-nav-error",children:r.error}),T&&t.jsx("div",{className:"terminal-nav-error",children:T}),t.jsx("div",{ref:H,className:"terminal-nav-list",onKeyDown:Y,children:f.length===0&&p.length===0&&r.state!=="loading"?t.jsx("div",{className:"ctx-panel-empty",children:"No terminal targets"}):t.jsxs(t.Fragment,{children:[Z.map(e=>e.items.length===0?null:t.jsxs("div",{className:"terminal-nav-section",children:[t.jsxs("div",{className:"terminal-nav-section-title",children:[t.jsx("span",{children:e.label}),t.jsx("span",{children:e.items.length})]}),e.items.map(a=>E(a))]},e.key)),x.length===0&&r.state!=="loading"&&t.jsx("div",{className:"terminal-nav-empty",children:"No sessions"}),M>0&&t.jsxs("div",{className:"terminal-nav-section terminal-nav-section--inactive",children:[t.jsxs("button",{type:"button",className:"terminal-nav-inactive-toggle","aria-expanded":g,onClick:()=>V(e=>!e),children:[t.jsx(ge,{size:13,strokeWidth:1.8}),t.jsx("span",{children:"Inactive"}),t.jsx("span",{children:M}),L>0&&t.jsxs("span",{className:"terminal-nav-review-count",children:[L," review"]})]}),g&&t.jsxs(t.Fragment,{children:[y.map(e=>E(e)),v.length>0&&t.jsxs("div",{className:"terminal-nav-section-title terminal-nav-section-title--review",children:[t.jsx("span",{children:"Review after 30 days"}),t.jsx("span",{children:v.length})]}),v.map(e=>E(e))]})]}),t.jsxs("div",{className:"terminal-nav-section",children:[t.jsxs("div",{className:"terminal-nav-section-title",children:[t.jsx("span",{children:"Available agents"}),t.jsx("span",{children:p.length})]}),p.map(e=>{const a=`agent:${e.id}`,c=a===w,d=K(e);return t.jsxs("div",{className:`terminal-nav-row terminal-nav-row--agent${c?" terminal-nav-row--active":""}`,title:e.name,children:[t.jsxs("button",{type:"button","data-list-primary":!0,className:"terminal-nav-row-select",tabIndex:F(c,_,a===O),onClick:()=>s(A(e)),children:[t.jsx("span",{className:`terminal-nav-agent-dot${d?" terminal-nav-agent-dot--bound":""}`,"aria-hidden":!0}),t.jsxs("span",{className:"terminal-nav-row-main",children:[t.jsx("span",{className:"terminal-nav-row-title",children:t.jsx("span",{children:e.name})}),t.jsx("span",{className:"terminal-nav-row-detail",children:Fe(e)})]}),t.jsxs("span",{className:"terminal-nav-badges",children:[t.jsx("span",{className:"terminal-nav-badge terminal-nav-badge--backend",children:d?.backend??e.harness??"agent"}),t.jsx("span",{className:"terminal-nav-badge",children:d?"bound":me(e.state)})]})]}),t.jsxs("div",{className:"terminal-nav-row-actions",children:[t.jsxs("button",{type:"button",className:`terminal-nav-action${n.view==="terminal"&&c&&n.mode==="takeover"?" terminal-nav-action--selected":""}`,onClick:()=>s(A(e,"takeover")),title:"Enter this agent terminal","aria-label":"Enter this agent terminal",children:[t.jsx(D,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Enter"})]}),d&&t.jsxs("button",{type:"button",className:`terminal-nav-action${n.view==="terminal"&&c&&n.mode==="observe"?" terminal-nav-action--selected":""}`,onClick:()=>s(A(e,"observe")),title:"Observe this agent terminal read-only","aria-label":"Observe this agent terminal read-only",children:[t.jsx(B,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Observe"})]})]})]},e.id)}),p.length===0&&t.jsx("div",{className:"terminal-nav-empty",children:"No agents"})]})]})})]})}function Oe(n,s){return[...n].filter(o=>!o.retiredFromFleet&&!o.staleLocalRegistration).sort((o,r)=>{const i=o.name.localeCompare(r.name,void 0,{numeric:!0,sensitivity:"base"});return s==="name"?i||o.id.localeCompare(r.id):(r.updatedAt??0)-(o.updatedAt??0)||i||o.id.localeCompare(r.id)})}function Fe(n){const s=n.project??z(n.cwd)??z(n.projectRoot)??n.definitionId;return[n.handle?`@${n.handle}`:null,n.harness,s,n.branch].filter(Boolean).join(" · ")}function z(n){const s=n?.trim().replace(/\/+$/u,"");return s?s.split("/").pop()||s:null}export{Wt as TerminalLeft};
@@ -1 +0,0 @@
1
- import{j as n,r as y}from"./index-EsrkGBcv.js";import{u as L,j as _,l as F,e as T,m as E,a as b,r as C,f as $,d as P,t as R}from"./mesh-view-store-DZvJC4KU.js";import{u as B}from"./Provider-C35yu29I.js";import{n as z}from"./agent-state-DDhnFEEP.js";import{a as H,b as O,d as U,m as q}from"./machine-children-DxcqCLmd.js";import{u as K,h as V}from"./use-fleet-active-asks-CymmXWH4.js";import{R as I}from"./RailRow-BjmWK420.js";import{nodeMenuRowProps as G,NodeMenu as Q}from"./NodeMenu-B-jjHf1c.js";import{u as D,l as J,r as W}from"./use-mesh-node-state-BvaqtODo.js";import{o as X}from"./openAgent-Dbv5wfuL.js";/* empty css */import"./theme-vars-DNK0nn3k.js";import"./provider-Dojd8quC.js";import"./router-DCtl8wqb.js";import"./api-DSqpVKC7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-BCPRocpq.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-C97-iTMK.js";import"./runtime-picker-DXu2bOTh.js";import"./scout-voice-CZx60X6E.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-OvccU82H.js";import"./createLucideIcon-zZ8Hx7er.js";import"./media-blobs-Bi8pxr1u.js";import"./index-724SdE6r.js";import"./HarnessMark-C4naWc16.js";import"./conversation-model-FxDeWlle.js";import"./time-Dhsh_2EG.js";import"./conversations-DoAAO6kA.js";import"./colors-CFlbwC25.js";import"./NewChatOrigin-DFbF_XvR.js";import"./keyboard-nav-DDHegDbx.js";import"./x-DAehov0E.js";import"./chevron-down-l1mrh5S9.js";import"./search-DT42oyRW.js";import"./file-text-CnISiiw6.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DJr0v0D_.js";import"./TextDocumentSurface-D52m7Vd8.js";import"./index-CHD0qcfL.js";import"./chevron-right-DrfqcerI.js";import"./folder-D5prSkzz.js";import"./chevron-up-CETZJzjV.js";import"./code-xml-BhcNbLWU.js";import"./arrow-left-MVUKauwQ.js";import"./arrow-right-Bp-FpE5V.js";import"./voice-turn-ledger-BMZxlSjg.js";import"./chunk-HRAB3GC3-DbVLgbWX.js";import"./AgentAvatar-CrP1eXxk.js";import"./SpriteAvatar-CpZWf54-.js";import"./CrewAvatar-kTznzqcO.js";import"./openContent-C6XO6kr5.js";function Y({value:t,onChange:l,placeholder:a="Search…",onKeyDown:s}){return n.jsx("input",{type:"search",className:"fleet-search",placeholder:a,value:t,onChange:m=>l(m.target.value),onKeyDown:s,spellCheck:!1,autoCorrect:"off",autoCapitalize:"off"})}const Z=["needs_attention","in_turn","in_flight","callable","blocked"],ee={in_turn:"in turn",in_flight:"in flight",needs_attention:"needs attention",callable:"callable",blocked:"blocked"},te={in_turn:"working",in_flight:"working",needs_attention:"working",callable:"available",blocked:"offline"};function ne({active:t,onToggle:l}){return n.jsx("div",{className:"fleet-pills",role:"group","aria-label":"State filters",children:Z.map(a=>{const s=t.has(a);return n.jsx("button",{type:"button",className:`fleet-pill fleet-pill--${te[a]}${s?" fleet-pill--on":""}`,onClick:()=>l(a),"aria-pressed":s,children:ee[a]},a)})})}const k=10;function oe(t){return z(t.state)}function ae({bucket:t,active:l,hidden:a,anyHidden:s,positioned:m,full:c,selectedId:v,selectedType:h,activeAsks:A,onSelect:N,onFocus:w,onSelectAgent:p,onToggleFull:x}){const d=y.useRef(null),u=D(t.machineId),M=u?.view??null,g=O({machineId:t.machineId,machineLabel:t.machineLabel,nodeId:t.node?.nodeId??null,brokerUrl:t.node?.brokerUrl??M?.node?.brokerUrl??null,hidden:a,anyHidden:s,positioned:m,canCopy:typeof navigator<"u"&&!!navigator.clipboard,checking:u?.loading??!1,on:{select:e=>N(e),refresh:e=>{W(e)},focus:e=>w(e),toggleHidden:e=>R(e),showAll:()=>T(),clearPosition:e=>P(e),copy:e=>{navigator.clipboard?.writeText(e)}}}),r=U(t,M),S=c?r:r.slice(0,k),f=r.length-S.length;return n.jsxs("div",{className:"mesh-nav-machine",children:[n.jsx(I,{name:t.machineLabel,meta:q(t,M,u?.loading??!1),tone:"neutral",active:l,onClick:()=>N(t.machineId),onPointerEnter:()=>{u||J(t.machineId,{deep:!1})},title:`${t.machineLabel} — click to see what is running here`,actions:n.jsx(Q,{ref:d,machineLabel:t.machineLabel,actions:g,className:"mesh-nav-menu-btn"}),...G(d)}),S.map(e=>n.jsx(I,{name:e.name,meta:e.meta,tone:e.tone,depth:1,active:v===e.selectId&&h==="agent",unread:e.agent?V(A,e.agent.id):!1,onClick:e.agent?()=>p(e.agent):void 0,title:e.title},e.key)),!c&&f>0&&n.jsx(I,{name:`see ${f} more`,depth:1,tone:"neutral",onClick:()=>x(t.machineId),title:"Show all agents on this machine"}),c&&r.length>k&&n.jsx(I,{name:"see less",depth:1,tone:"neutral",onClick:()=>x(t.machineId),title:"Show recent agents only"})]})}function mt(){const{agents:t,navigate:l}=B(),{meshSnapshot:a,selectedId:s,selectedType:m,query:c,agentStateFilters:v,hiddenMachineIds:h,treeFullMachineIds:A,machinePositions:N}=L(),w=K(),p=y.useMemo(()=>a?H(t,a):[],[t,a]),x=y.useMemo(()=>{const e=c.trim().toLowerCase();return p.filter(o=>!h.has(o.machineId)).map(o=>{const i=o.agents.filter(j=>v.has(oe(j))?e?`${j.name??""} ${j.project??""} ${j.branch??""} ${j.harness??""}`.toLowerCase().includes(e):!0:!1);return{...o,agents:i}})},[p,c,v,h]),d=y.useMemo(()=>{const e=new Map([["this",[]],["peer",[]],["tailnet",[]]]);for(const o of x){const i=o.reachability==="this"?"this":o.reachability==="peer"?"peer":"tailnet";e.get(i)?.push(o)}return e},[x]);if(!a)return n.jsx("div",{className:"ctx-panel ctx-panel--empty",children:n.jsx("div",{className:"ctx-panel-empty-state",children:n.jsx("div",{className:"ctx-panel-empty-hint",children:"Loading mesh…"})})});const u=e=>{b(e,"node"),C(e)},M=e=>{$(e,p.map(o=>o.machineId)),b(e,"node"),C(e)},g=h.size,r=p.length,S=e=>{b(e.id,"agent");const o=e.authorityNodeId??e.homeNodeId;o&&C(o),X(l,e,{returnTo:{view:"mesh"}})},f=(e,o)=>o.length===0?null:n.jsxs("section",{className:"mesh-nav-group",children:[n.jsx("div",{className:"mesh-nav-group-label",children:e}),o.map(i=>n.jsx(ae,{bucket:i,active:s===i.machineId&&m==="node",hidden:h.has(i.machineId),anyHidden:g>0,positioned:i.machineId in N,full:A.has(i.machineId),selectedId:s,selectedType:m,activeAsks:w,onSelect:u,onFocus:M,onSelectAgent:S,onToggleFull:E},i.machineId))]},e);return n.jsxs("div",{className:"ctx-panel mesh-nav",children:[n.jsxs("div",{className:"mesh-nav-head",children:[n.jsx(Y,{value:c,onChange:_,placeholder:"Find machines or agents…"}),n.jsx(ne,{active:v,onToggle:F}),g>0&&g<r&&n.jsxs("button",{type:"button",className:"mesh-nav-focus-chip",onClick:T,title:"Show all machines",children:[n.jsxs("span",{className:"mesh-nav-focus-chip-label",children:["focused · ",r-g,"/",r]}),n.jsx("span",{className:"mesh-nav-focus-chip-clear","aria-hidden":!0,children:"×"})]})]}),n.jsxs("div",{className:"mesh-nav-tree",children:[f("this host",d.get("this")??[]),f("peers",d.get("peer")??[]),f("tailnet",d.get("tailnet")??[])]})]})}export{mt as MeshLeft};
@@ -1,2 +0,0 @@
1
- import{r as d,j as i}from"./index-EsrkGBcv.js";import{u as wt,l as xt}from"./use-conversation-list-CY4JciOV.js";import{a as It}from"./api-DSqpVKC7.js";/* empty css */import{m as Ct,c as yt,i as jt}from"./machine-scope-DJt9RZ2w.js";import{a as At,b as Rt,m as St,r as ze}from"./keyboard-nav-DDHegDbx.js";import{n as we,f as Ge}from"./agent-state-DDhnFEEP.js";import{f as kt,c as F,i as _e,d as Me,a as Xe,g as Mt}from"./conversations-DoAAO6kA.js";import{l as Nt,i as K,a as _,p as Fe,t as $t,b as Lt}from"./conversation-prefs-DNre-Lcx.js";import{i as Pt,l as Bt,s as De}from"./sessionRead-CvFz2RHv.js";import{u as Tt,f as be,b as Ot}from"./use-fleet-active-asks-CymmXWH4.js";import{p as Et,N as Ke,g as Ut,t as Gt}from"./sessions-view-Dc-QAa7O.js";import{u as _t,a as Ft}from"./Provider-C35yu29I.js";import{u as Dt}from"./use-beside-DoRC1nt0.js";import{t as re}from"./time-Dhsh_2EG.js";import{d as Kt}from"./router-DCtl8wqb.js";import{c as Ze}from"./message-visibility-DwxgcgYK.js";import{R as Ne}from"./RailRow-BjmWK420.js";import{a as Ve,c as qe}from"./agent-master-model-Bk_yuUXJ.js";import"./sse-BCPRocpq.js";import"./index-BWHgHrtv.js";import"./theme-vars-DNK0nn3k.js";import"./provider-Dojd8quC.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-C97-iTMK.js";import"./runtime-picker-DXu2bOTh.js";import"./scout-voice-CZx60X6E.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-OvccU82H.js";import"./createLucideIcon-zZ8Hx7er.js";import"./media-blobs-Bi8pxr1u.js";import"./index-724SdE6r.js";import"./HarnessMark-C4naWc16.js";import"./conversation-model-FxDeWlle.js";import"./colors-CFlbwC25.js";import"./NewChatOrigin-DFbF_XvR.js";import"./x-DAehov0E.js";import"./chevron-down-l1mrh5S9.js";import"./search-DT42oyRW.js";import"./file-text-CnISiiw6.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DJr0v0D_.js";import"./TextDocumentSurface-D52m7Vd8.js";import"./index-CHD0qcfL.js";import"./chevron-right-DrfqcerI.js";import"./folder-D5prSkzz.js";import"./chevron-up-CETZJzjV.js";import"./code-xml-BhcNbLWU.js";import"./arrow-left-MVUKauwQ.js";import"./arrow-right-Bp-FpE5V.js";import"./voice-turn-ledger-BMZxlSjg.js";import"./chunk-HRAB3GC3-DbVLgbWX.js";import"./comms-deck-CBhsXnY-.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./AgentAvatar-CrP1eXxk.js";import"./SpriteAvatar-CpZWf54-.js";import"./CrewAvatar-kTznzqcO.js";function ve(e){const n=e.split("/").filter(Boolean);return n[n.length-1]??e}function et(e){const n=e.replace(/\/+$/,"").split("/");return n[n.length-1]??e}function Vt(e,n){const s=ve(n).toLowerCase(),r=e.filter(m=>!!m.projectRoot),u=r.filter(m=>et(m.projectRoot).toLowerCase()===s),c=u.length>0?u:r,a=qt(c);return a?{label:(u.length>0?c.find(m=>m.projectRoot===a):[...c].sort((m,f)=>f.lastActivityAt-m.lastActivityAt)[0])?.project??ve(n),canonicalRoot:a}:{label:ve(n),canonicalRoot:null}}function qt(e){const n=new Map;for(const c of e){const a=n.get(c.projectRoot)??{count:0,latest:0};a.count+=1,a.latest=Math.max(a.latest,c.lastActivityAt),n.set(c.projectRoot,a)}let s=null,r=-1,u=-1;for(const[c,a]of n)(a.count>r||a.count===r&&a.latest>u)&&(s=c,r=a.count,u=a.latest);return s}function Qt(e,n,s,r){const u=new Map;for(const a of e){const v=kt(a),m=a.agentId?n.get(a.agentId):void 0,f=m?.repoKey??null,g=m?.project??null,N=(a.agentName??F(a)).trim(),b=v?`channel:${a.id}`:f?`repo:${f.toLowerCase()}`:g?`project:${g.toLowerCase()}`:N?`name:${N.toLowerCase()}`:`dm:${a.id}`,j=v?F(a):f?ve(f):g??N??F(a);let w=u.get(b);if(w||(w={key:b,label:j,isChannel:v,conversations:[],bestState:"blocked",latestUpdate:0,unreadCount:0,canonicalRoot:null},u.set(b,w)),w.conversations.push(a),w.latestUpdate=Math.max(w.latestUpdate,a.lastMessageAt??0),Pt(a.lastMessageAt,a.id,s)&&(w.unreadCount+=1),!v&&m){const S=we(m.state);Ge(S)<Ge(w.bestState)&&(w.bestState=S)}}for(const a of u.values()){if(a.key.startsWith("repo:")){const v=a.conversations.map(f=>{const g=f.agentId?n.get(f.agentId):void 0;return{project:g?.project??null,projectRoot:g?.projectRoot??null,lastActivityAt:f.lastMessageAt??0}}),m=Vt(v,a.key.slice(5));a.label=m.label,a.canonicalRoot=m.canonicalRoot}a.conversations.sort((v,m)=>(m.lastMessageAt??0)-(v.lastMessageAt??0))}const c=Array.from(u.values());return c.sort((a,v)=>v.latestUpdate-a.latestUpdate),c}const tt="scout:messages:rail:v2",ge={view:"sessions",groupBy:"recent"};let Se=null;function Ht(e){return e==="agents"||e==="sessions"}function Jt(e){return e==="recent"||e==="project"||e==="agent"||e==="day"||e==="state"}function Yt(){if(Se)return Se;try{const e=window.localStorage.getItem(tt);if(!e)return{...ge};const n=JSON.parse(e);return{view:Ht(n.view)?n.view:ge.view,groupBy:Jt(n.groupBy)?n.groupBy:ge.groupBy}}catch{return{...ge}}}function Qe(e){try{window.localStorage.setItem(tt,JSON.stringify(e))}catch{Se=e}return e}const Wt=12,zt=[["recent","Recent"],["project","Project"],["agent","Agent"],["day","Day"],["state","State"]];function po(){const{route:e,navigate:n,agents:s,apiConnection:r}=_t(),{sessions:u,loading:c,loadError:a,reload:v}=wt(),[m,f]=d.useState(()=>Bt()),[g,N]=d.useState(()=>Nt()),[b,j]=d.useState(""),[w,S]=d.useState(()=>new Set),[V,l]=d.useState(!1),[x,q]=d.useState(!1),[X,Z]=d.useState(!1),[B,Q]=d.useState(()=>Yt()),C=B.view,H=d.useCallback(t=>{Q(o=>Qe({...o,view:t}))},[]),it=d.useCallback(t=>{Q(o=>Qe({...o,groupBy:t}))},[]),M=Tt(),A=Kt(e),ee=d.useMemo(()=>Ct(s,A),[s,A]),R=d.useMemo(()=>{const t=new Map,o=ee?s.filter(p=>ee.has(p.id)):s;for(const p of o)t.set(p.id,p);return t},[s,ee]),xe=e.view==="messages"||e.view==="conversation"||e.view==="agent-info"||e.view==="agents-v2"?e.conversationId:void 0,te=e.view==="messages"?e.agentId:void 0;d.useEffect(()=>{q(!1)},[b]);const ne=d.useMemo(()=>yt(u,ee,A),[u,ee,A]),Ie=d.useMemo(()=>b?ne.filter(t=>He(t,b)):ne,[ne,b]),oe=d.useMemo(()=>{const t=o=>be(M,o)?.updatedAt??0;return ne.filter(o=>K(o.id,g)||!_e(o)?!1:be(M,o)?.status==="needs_attention").sort((o,p)=>t(p)-t(o))},[ne,g,M]),se=d.useMemo(()=>b?oe.filter(t=>He(t,b)):oe,[oe,b]),I=d.useMemo(()=>{const t=Ie.filter(k=>!K(k.id,g)),o=he(Ie.filter(k=>K(k.id,g))),p=t.filter(k=>_(k.id,g)).sort((k,z)=>Fe(z.id,g)-Fe(k.id,g)||(z.lastMessageAt??0)-(k.lastMessageAt??0)),W=t.filter(k=>!_(k.id,g)),h=W.filter(Me),y=W.filter(_e),L=W.filter(Xe);return{pinned:p,channels:he(h),dms:he(y),observed:he(L),archived:o}},[Ie,R,m,g]),$=d.useMemo(()=>{const t=new Map,o=[];for(const h of I.dms){if(!h.agentId){o.push(h);continue}const y=R.get(h.agentId),L=Ve(y,h.agentId),k=y?[...R.values()].filter(E=>Ve(E,E.id)===L):[],z=qe(k)??y,ft=z?.name??h.agentName??h.agentId.split(".")[0]??h.agentId,P=t.get(L);if(P){P.count+=1,P.memberAgentIds.includes(h.agentId)||P.memberAgentIds.push(h.agentId);const E=qe([P.agent,y].filter(bt=>!!bt));P.agent=E,P.agentId=E?.id??[...P.memberAgentIds].sort()[0],P.name=E?.name??P.name;continue}t.set(L,{agentId:z?.id??h.agentId,agent:z,name:ft,memberAgentIds:k.length>0?k.map(E=>E.id).sort():[h.agentId],latest:h,count:1})}const p=new Map;for(const h of t.values()){const y=Et(h.agent),L=p.get(y);L?L.push(h):p.set(y,[h])}for(const h of p.values())h.sort((y,L)=>y.name.localeCompare(L.name));return{projects:[...p.keys()].sort((h,y)=>h===Ke?1:y===Ke?-1:h.localeCompare(y)).map(h=>({label:h,entries:p.get(h)})),unassigned:o}},[I.dms,R]),J=C==="sessions"&&B.groupBy==="recent",ce=d.useMemo(()=>J?[]:I.channels,[J,I.channels]),Y=d.useMemo(()=>J?[]:Qt(I.observed,R,m),[J,I.observed,R,m]),le=d.useMemo(()=>{if(C!=="sessions")return[];const t=J?[...I.dms,...I.channels,...I.observed]:I.dms;return Ut(t,B.groupBy,R,M,Date.now())},[C,J,I.dms,I.channels,I.observed,B.groupBy,R,M]),Le=Ft(),de=d.useCallback(t=>{N(o=>$t(t,o))},[]),ue=d.useCallback(t=>{N(o=>Lt(t,o))},[]),Ce=Xt(),ae=Dt(),T=d.useCallback(t=>{f(De(t.id)),n({view:"messages",conversationId:t.id,...A?{machineId:A}:{}})},[n,A]),rt=d.useCallback(t=>{n({view:"messages",agentId:t,...A?{machineId:A}:{}})},[n,A]),ct=d.useCallback(t=>{if(f(De(t.id)),t.agentId){n({view:"messages",agentId:t.agentId,threadId:t.id,...A?{machineId:A}:{}});return}n({view:"messages",conversationId:t.id,...A?{machineId:A}:{}})},[n,A]),D=d.useCallback((t,o)=>{const p=_(o.id,g),W=K(o.id,g),h=F(o),y=[{kind:"action",label:"Open",onSelect:()=>T(o)},{kind:"action",label:ae.has(o.id)?"Close beside the stage":"Open beside the stage",onSelect:()=>ae.toggle(o.id)},{kind:"separator"},{kind:"action",label:p?"Unpin":"Pin to top",onSelect:()=>de(o.id)},{kind:"action",label:W?"Unarchive":"Archive",onSelect:()=>ue(o.id)},{kind:"separator"},{kind:"action",label:"Rename…",onSelect:()=>Ce.begin(o.id)},{kind:"action",label:"Copy name",onSelect:()=>{navigator.clipboard?.writeText(h).catch(()=>{})}}];Le(t,y)},[g,T,de,ue,Le,Ce,ae]),lt=t=>{S(o=>{const p=new Set(o);return p.has(t)?p.delete(t):p.add(t),p})},dt=r.status==="offline"||jt(a),Pe=d.useRef(null),Be=d.useRef(null),ut=At(),pt=St(()=>Pe.current);Rt(d.useCallback(()=>Be.current,[]));const ye=I.pinned.length,je=ce.length,mt=C==="agents"?$.projects.reduce((t,o)=>t+o.entries.length,0)+$.unassigned.length:le.reduce((t,o)=>t+o.sessions.length,0),Ae=Y.reduce((t,o)=>t+o.conversations.length,0),pe=I.archived.length,Te=ye+je+mt+Ae+pe,gt=V||!!b,Re=d.useMemo(()=>{const t=[];for(const o of se)t.push({rowId:`ny-${o.id}`,id:o.id});for(const o of I.pinned)t.push({rowId:`pin-${o.id}`,id:o.id});if(C==="agents"){for(const o of $.projects)for(const p of o.entries)t.push({rowId:`agent-${p.agentId}`,id:`agent-${p.agentId}`});for(const o of $.unassigned)t.push({rowId:o.id,id:o.id})}else for(const o of le)for(const p of o.sessions)t.push({rowId:p.id,id:p.id});for(const o of ce)t.push({rowId:o.id,id:o.id});for(const o of Y)for(const p of o.conversations)t.push({rowId:p.id,id:p.id});for(const o of I.archived)t.push({rowId:`arch-${o.id}`,id:o.id});return t},[se,I,C,$,le,ce,Y]),ht=e.view==="messages"?e.threadId:void 0,Oe=d.useMemo(()=>{if(te){for(const t of $.projects)for(const o of t.entries)if(o.agentId===te||o.memberAgentIds.includes(te))return o.agentId;return te}},[te,$]),me=xe??(C==="sessions"?ht:void 0)??(Oe?`agent-${Oe}`:void 0),O=d.useMemo(()=>({activeId:me,activeRowId:me?Re.find(t=>t.id===me)?.rowId:void 0,firstRowId:Re[0]?.rowId}),[me,Re]),Ee=x||b?Y:Y.slice(0,Wt),Ue=Math.max(0,Y.length-Ee.length),vt=t=>!!(b||w.has(t.key)||xe&&t.conversations.some(o=>o.id===xe)),ie=t=>i.jsx(ke,{pinned:_(t.id,g),archived:K(t.id,g),beside:ae.has(t.id),onTogglePin:()=>de(t.id),onToggleArchive:()=>ue(t.id),onToggleBeside:()=>ae.toggle(t.id)});return i.jsx(nt.Provider,{value:Ce,children:i.jsxs("div",{className:"ctx-panel",children:[i.jsxs("div",{className:"ctx-panel-toolbar",children:[i.jsx("input",{ref:Be,type:"text",className:"ctx-panel-search-input",placeholder:"Filter… (/)",value:b,onChange:t=>j(t.target.value),onKeyDown:pt}),oe.length>0&&i.jsx("span",{className:"ctx-panel-rail-stat",title:"Asks waiting on your reply",children:nn(oe.length)})]}),i.jsxs("div",{className:"ctx-panel-viewtoggle",role:"tablist","aria-label":"Rail view",children:[i.jsx("button",{type:"button",role:"tab","aria-selected":C==="agents",className:`ctx-panel-viewtab${C==="agents"?" ctx-panel-viewtab--on":""}`,onClick:()=>H("agents"),children:"Agents"}),i.jsx("button",{type:"button",role:"tab","aria-selected":C==="sessions",className:`ctx-panel-viewtab${C==="sessions"?" ctx-panel-viewtab--on":""}`,onClick:()=>H("sessions"),children:"Sessions"})]}),i.jsx("div",{ref:Pe,className:["ctx-panel-list","ctx-panel-list--scroll",Te===0&&"ctx-panel-list--empty"].filter(Boolean).join(" "),onKeyDown:ut,children:Te===0?i.jsx(tn,{query:b,loading:c,error:a,apiOffline:dt,onRetry:()=>{v(!0)}}):i.jsxs(i.Fragment,{children:[se.length>0&&i.jsx(U,{label:"Needs you",count:se.length,hint:"Asks waiting on your reply",children:se.map(t=>i.jsx(G,{rowId:`ny-${t.id}`,session:t,nav:O,agentById:R,asksByAgent:M,onSelect:T,onContextMenu:D},`ny-${t.id}`))}),ye>0&&i.jsx(U,{label:"Pinned",count:ye,hint:"Pinned conversations",children:I.pinned.map(t=>i.jsx(G,{rowId:`pin-${t.id}`,session:t,nav:O,agentById:R,asksByAgent:M,pinned:!0,actions:ie(t),onSelect:T,onContextMenu:D},`pin-${t.id}`))}),C==="agents"&&$.projects.map(t=>i.jsx(U,{label:t.label,count:t.entries.length,children:t.entries.map(o=>i.jsx(Zt,{entry:o,nav:O,ask:Ot(M,o.memberAgentIds),onSelect:rt},o.agentId))},t.label)),C==="agents"&&$.unassigned.length>0&&i.jsx(U,{label:"Direct",count:$.unassigned.length,hint:"Conversations without a resolved agent",children:$.unassigned.map(t=>i.jsx(G,{rowId:t.id,session:t,nav:O,agentById:R,asksByAgent:M,actions:ie(t),onSelect:T,onContextMenu:D},t.id))}),C==="sessions"&&i.jsxs("div",{className:"ctx-panel-groupbar",role:"radiogroup","aria-label":"Order the queue by",children:[i.jsx("span",{className:"ctx-panel-groupbar-label",children:"Order"}),zt.map(([t,o])=>i.jsx("button",{type:"button",role:"radio","aria-checked":B.groupBy===t,className:`ctx-panel-groupchip${B.groupBy===t?" ctx-panel-groupchip--on":""}`,onClick:()=>it(t),children:o},t))]}),C==="sessions"&&le.map(t=>i.jsx(U,{label:t.label,count:t.sessions.length,children:t.sessions.map(o=>i.jsx(G,{rowId:o.id,session:o,nav:O,agentById:R,asksByAgent:M,taskTitled:!0,actions:ie(o),onSelect:ct,onContextMenu:D},o.id))},t.label)),je>0&&i.jsx(U,{label:"Channels",count:je,children:ce.map(t=>i.jsx(G,{rowId:t.id,session:t,nav:O,agentById:R,asksByAgent:M,actions:ie(t),onSelect:T,onContextMenu:D},t.id))}),Ae>0&&i.jsxs(U,{label:"Observed",count:Ae,hint:"Agent conversations you’re not in",open:gt,onToggle:()=>l(t=>!t),children:[Ee.map(t=>i.jsx(en,{group:t,isOpen:vt(t),nav:O,agentById:R,asksByAgent:M,prefs:g,observed:!0,onToggle:()=>lt(t.key),onSelect:T,onTogglePin:de,onToggleArchive:ue,onContextMenu:D},t.key)),Ue>0?i.jsxs("button",{type:"button",className:"ctx-panel-more",onClick:()=>q(!0),children:["+ ",Ue," more observed"]}):null]}),pe>0&&i.jsxs(U,{label:"Archived",count:pe,hint:"Hidden from the main rail",children:[i.jsx("button",{type:"button",className:"ctx-panel-more",onClick:()=>Z(t=>!t),children:X?"▾ hide archived":`› show ${pe} archived`}),X?I.archived.map(t=>i.jsx(G,{rowId:`arch-${t.id}`,session:t,nav:O,agentById:R,asksByAgent:M,actions:ie(t),onSelect:T,onContextMenu:D},`arch-${t.id}`)):null]})]})})]})})}const nt=d.createContext(null);function Xt(){const[e,n]=d.useState(null),[s,r]=d.useState({}),u=d.useCallback((c,a)=>{n(null);const v=a.trim();r(m=>({...m,[c]:v})),It(`/api/conversations/${encodeURIComponent(c)}/title`,{method:"POST",body:JSON.stringify({title:v})}).then(()=>xt({force:!0})).catch(()=>{}).then(()=>{r(m=>{const{[c]:f,...g}=m;return g})})},[]);return{editingId:e,renamed:s,begin:d.useCallback(c=>n(c),[]),commit:u,cancel:d.useCallback(()=>n(null),[])}}function U({label:e,count:n,hint:s,open:r,onToggle:u,children:c}){return u?i.jsxs("section",{className:"ctx-panel-rail-section","aria-label":e,children:[i.jsxs("button",{type:"button",className:"ctx-panel-section-label ctx-panel-section-toggle",title:s,"aria-expanded":!!r,onClick:u,children:[i.jsxs("span",{className:"ctx-panel-section-toggle-label",children:[i.jsx("span",{className:"ctx-panel-section-chevron","aria-hidden":!0,children:r?"▾":"▸"}),e]}),i.jsx("span",{className:"ctx-panel-count",children:n})]}),r?i.jsx("div",{className:"ctx-panel-rail-section-body",children:c}):null]}):i.jsxs("section",{className:"ctx-panel-rail-section","aria-label":e,children:[i.jsxs("div",{className:"ctx-panel-section-label",title:s,children:[i.jsx("span",{children:e}),i.jsx("span",{className:"ctx-panel-count",children:n})]}),i.jsx("div",{className:"ctx-panel-rail-section-body",children:c})]})}function ke({pinned:e,archived:n,beside:s,onTogglePin:r,onToggleArchive:u,onToggleBeside:c}){return i.jsxs(i.Fragment,{children:[c?i.jsx("button",{type:"button",className:["rr-row-action",s&&"rr-row-action--on"].filter(Boolean).join(" "),title:s?"Close the column beside the stage":"Keep this conversation beside the stage","aria-label":s?"Close beside":"Open beside","aria-pressed":s,onClick:a=>{a.stopPropagation(),c()},children:"Beside"}):null,i.jsx("button",{type:"button",className:["rr-row-action",e&&"rr-row-action--on"].filter(Boolean).join(" "),title:e?"Unpin":"Pin to top","aria-label":e?"Unpin":"Pin",onClick:a=>{a.stopPropagation(),r()},children:e?"Unpin":"Pin"}),i.jsx("button",{type:"button",className:["rr-row-action",n&&"rr-row-action--on"].filter(Boolean).join(" "),title:n?"Unarchive":"Archive","aria-label":n?"Unarchive":"Archive",onClick:a=>{a.stopPropagation(),u()},children:n?"Restore":"Archive"})]})}function G({session:e,rowId:n,nav:s,agentById:r,asksByAgent:u,pinned:c,depth:a,actions:v,worktreeLabel:m,taskTitled:f,onSelect:g,onContextMenu:N}){const b=e.id===s.activeId,j=d.useContext(nt),w=j?.renamed[e.id]??(f?Gt(e):F(e)),S=Me(e),V=Xe(e),l=e.agentId?r.get(e.agentId):void 0,x=be(u,e),q=!S&&!V&&x?.status==="needs_attention",X=Ye(e,l),Z=l?.name??e.agentName??void 0,B=S?`${e.participantCount??e.participantIds.length} members`:f?Z?.toLowerCase()===w.toLowerCase()?void 0:Z:X.toLowerCase()===w.toLowerCase()?void 0:X,Q=!S&&!f&&x?at(e,l,x):B,C=V?Q?`watching · ${Q}`:"watching":Q;return i.jsx(Ne,{depth:a,name:a===1?Je(e,l,x):w,sub:a===1?Ye(e,l):C,meta:x?re(x.updatedAt):e.lastMessageAt?re(e.lastMessageAt):void 0,tone:S?"channel":x?st(l,x):l?we(l.state):"dm",agent:S?void 0:l,avatarName:a===1?l?.name??Je(e,l,x):f?Z??w:w,avatarKind:S?"channel":"user",active:b,unread:q,pinned:c,activityLabel:x?$e(x):void 0,activityTone:x?ot(x):void 0,worktreeLabel:m??void 0,title:a===1?on(e,l,x):void 0,actions:j?.editingId===e.id?void 0:v,editing:j&&j.editingId===e.id?{value:w,onCommit:H=>j.commit(e.id,H),onCancel:j.cancel}:void 0,tabIndex:ze(n===s.activeRowId,s.activeRowId!==void 0,n===s.firstRowId),onClick:()=>g(e),onContextMenu:N?H=>N(H,e):void 0})}function Zt({entry:e,nav:n,ask:s,onSelect:r}){const u=`agent-${e.agentId}`,c=e.agent,a=s?re(s.updatedAt):e.latest.lastMessageAt?re(e.latest.lastMessageAt):void 0;return i.jsx(Ne,{name:e.name,sub:s?at(e.latest,c,s):void 0,meta:e.count>1?a?`${e.count} · ${a}`:`${e.count}`:a,tone:s?st(c,s):c?we(c.state):"dm",agent:c,avatarName:e.name,avatarKind:"user",active:u===n.activeId,unread:s?.status==="needs_attention",activityLabel:s?$e(s):void 0,activityTone:s?ot(s):void 0,tabIndex:ze(u===n.activeRowId,n.activeRowId!==void 0,u===n.firstRowId),onClick:()=>r(e.agentId)})}function en({group:e,isOpen:n,nav:s,agentById:r,asksByAgent:u,prefs:c,observed:a,onToggle:v,onSelect:m,onTogglePin:f,onToggleArchive:g,onContextMenu:N}){if(e.conversations.length===1){const l=e.conversations[0];return i.jsx(G,{rowId:l.id,session:l,nav:s,agentById:r,asksByAgent:u,pinned:_(l.id,c),actions:i.jsx(ke,{pinned:_(l.id,c),archived:K(l.id,c),onTogglePin:()=>f(l.id),onToggleArchive:()=>g(l.id)}),onSelect:m,onContextMenu:N})}const b=e.conversations.map(l=>be(u,l)).filter(l=>!!l),j=b.length,w=b.filter(l=>l.status==="working").length,S=b.filter(l=>l.status==="needs_attention").length,V=e.conversations.some(l=>l.id===s.activeId);return i.jsxs("div",{children:[i.jsx(Ne,{name:e.label,meta:j>0?`${j} active · ${We(e)}`:We(e),tone:w>0?"in_turn":e.bestState,caret:n?"open":"closed",active:V&&!n,unread:!a&&S>0&&!n,activityLabel:j>0?`${j} active`:void 0,activityTone:S>0?"attention":w>0?"working":"pending",onClick:v}),n&&e.conversations.map(l=>{const x=l.agentId?r.get(l.agentId):void 0,q=e.canonicalRoot&&x?.projectRoot&&x.projectRoot!==e.canonicalRoot?et(x.projectRoot):null;return i.jsx(G,{rowId:l.id,session:l,depth:1,nav:s,agentById:r,asksByAgent:u,pinned:_(l.id,c),worktreeLabel:q,actions:i.jsx(ke,{pinned:_(l.id,c),archived:K(l.id,c),onTogglePin:()=>f(l.id),onToggleArchive:()=>g(l.id)}),onSelect:m,onContextMenu:N},l.id)})]},e.key)}function tn({query:e,loading:n,error:s,apiOffline:r,onRetry:u}){const c=e.trim().length>0,a=n?"Loading conversations":r?"Scout server offline":s?"Couldn't load conversations":c?"No matching conversations":"No conversations yet",v=n?"Checking the broker for your conversations, channels, and observed threads.":r?"Start or restart Scout services, then retry.":s||(c?"Try a shorter filter.":"Your conversations, channels, and observed agent threads will show here.");return i.jsxs("div",{className:"ctx-panel-empty-card","data-tone":r||s?"error":"neutral",children:[i.jsx("div",{className:"ctx-panel-empty-card-title",children:a}),i.jsx("div",{className:"ctx-panel-empty-card-detail",children:v}),(r||s)&&i.jsx("button",{type:"button",className:"ctx-panel-empty-card-action",onClick:u,children:"Retry"})]})}function He(e,n){const s=n.toLowerCase();return F(e).toLowerCase().includes(s)||e.id.toLowerCase().includes(s)||(e.preview??"").toLowerCase().includes(s)||(e.agentName??"").toLowerCase().includes(s)}function nn(e){return e===1?"1 needs a reply":`${e} need a reply`}function $e(e){return e.status==="queued"?"Starting":e.status==="working"?"Working":e.status==="needs_attention"?"Needs you":e.statusLabel||e.status}function ot(e){return e.status==="queued"?"pending":e.status==="needs_attention"?"attention":"working"}function st(e,n){return n.status==="working"?"in_turn":e?we(e.state):"dm"}function at(e,n,s){const r=$e(s),u=fe(s.task)??fe(s.summary)??fe(e.preview)??e.currentBranch??n?.branch??"";return u?`${r} · ${u}`:r}function he(e){return[...e].sort((n,s)=>(s.lastMessageAt??0)-(n.lastMessageAt??0))}function Je(e,n,s){const r=s?.task??fe(e.preview)??e.currentBranch??n?.branch??"",u=n?.name??e.agentName??F(e);return r?`${u} · ${r}`:u}function on(e,n,s){const r=[];return s&&r.push(`task: ${s.task}`),e.preview&&r.push(`preview: ${Ze(e.preview)}`),(e.currentBranch??n?.branch)&&r.push(`branch: ${e.currentBranch??n?.branch}`),n?.harness&&r.push(`harness: ${n.harness}`),r.length>0?r.join(`
2
- `):void 0}function Ye(e,n){if(Me(e))return Mt(e);const s=n?.handle?.trim().replace(/^@+/,"");return s||(e.agentId?e.agentId.split(".")[0]??e.agentId:F(e))}function fe(e){if(!e)return null;const n=Ze(e).replace(/\s+/g," ").trim();return n?n.length>60?`${n.slice(0,57)}…`:n:null}function We(e){const n=e.latestUpdate?re(e.latestUpdate):"",s=`${e.conversations.length}`;return n?`${s} · ${n}`:s}export{po as ChatLeft};
@@ -1 +0,0 @@
1
- import{r,j as t}from"./index-EsrkGBcv.js";/* empty css */import{d as w,c as S,e as y,f as M,g as A,i as N}from"./NewChatComposer-C97-iTMK.js";import{u as k}from"./Provider-C35yu29I.js";import{A as b}from"./AgentAvatar-CrP1eXxk.js";import{a as g}from"./api-DSqpVKC7.js";import{b as I}from"./machine-scope-DJt9RZ2w.js";import{d as C}from"./router-DCtl8wqb.js";import{a as B}from"./sse-BCPRocpq.js";import{o as P,i as j}from"./surface-activity-B1rgWB1i.js";import"./runtime-picker-DXu2bOTh.js";import"./scout-voice-CZx60X6E.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-OvccU82H.js";import"./createLucideIcon-zZ8Hx7er.js";import"./media-blobs-Bi8pxr1u.js";import"./index-724SdE6r.js";import"./HarnessMark-C4naWc16.js";import"./conversation-model-FxDeWlle.js";import"./agent-state-DDhnFEEP.js";import"./time-Dhsh_2EG.js";import"./conversations-DoAAO6kA.js";import"./colors-CFlbwC25.js";import"./NewChatOrigin-DFbF_XvR.js";import"./keyboard-nav-DDHegDbx.js";import"./x-DAehov0E.js";import"./chevron-down-l1mrh5S9.js";import"./search-DT42oyRW.js";import"./file-text-CnISiiw6.js";import"./theme-vars-DNK0nn3k.js";import"./provider-Dojd8quC.js";import"./scoutbot-Bk3nyrkj.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DJr0v0D_.js";import"./TextDocumentSurface-D52m7Vd8.js";import"./index-CHD0qcfL.js";import"./chevron-right-DrfqcerI.js";import"./folder-D5prSkzz.js";import"./chevron-up-CETZJzjV.js";import"./code-xml-BhcNbLWU.js";import"./arrow-left-MVUKauwQ.js";import"./arrow-right-Bp-FpE5V.js";import"./voice-turn-ledger-BMZxlSjg.js";import"./chunk-HRAB3GC3-DbVLgbWX.js";import"./SpriteAvatar-CpZWf54-.js";import"./CrewAvatar-kTznzqcO.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./index-BWHgHrtv.js";function W(){const{agents:n,route:d}=k(),m=C(d),l=r.useMemo(()=>I(n,m),[n,m]),[p,f]=r.useState([]),[v,s]=r.useState(null),[a,u]=r.useState(null),c=r.useCallback(async()=>{const[e,i,o]=await Promise.allSettled([g("/api/conversations"),g("/api/fleet"),g("/api/tail/discover")]);e.status==="fulfilled"&&f(e.value),i.status==="fulfilled"&&s(i.value),o.status==="fulfilled"&&u(o.value)},[]);r.useEffect(()=>{c()},[c]),r.useEffect(()=>{const e=()=>{j()&&c()},i=window.setInterval(e,1e4),o=P(e);return()=>{window.clearInterval(i),o()}},[c]),B(()=>!0,()=>{j()&&c()});const x=r.useMemo(()=>{const e=new Map;for(const i of v?.activeAsks??[]){const o=e.get(i.agentId)??[];o.push(i),e.set(i.agentId,o)}return e},[v?.activeAsks]);return{projects:r.useMemo(()=>{const{sessionByAgentId:e}=w(p),i=l.map(h=>S(h,e.get(h.id)??null,x.get(h.id)??[])),o=y(a,Date.now());return M(i,p,o)},[l,p,x,a])}}function Et(){const{route:n,navigate:d,openContextCapture:m}=k(),{projects:l}=W(),p=n.view==="agents-v2"?n.projectSlug:void 0,f=n.view==="agents-v2"?n.agentId:void 0,v=p??l[0]?.slice.slug;return t.jsxs("div",{className:"ctx-panel s-agents-rail",children:[t.jsx("div",{className:"s-agents-recent s-rail-projects",children:l.length===0?t.jsx("div",{className:"ctx-panel-empty",children:"No projects yet"}):l.map(s=>{const a=A(s),u=N(s),c=s.slice.slug===v&&!f;return t.jsxs("button",{type:"button",className:"s-rail-proj","data-selected":c||void 0,"data-live":a>0||void 0,"data-needs":u||void 0,title:s.slice.root??void 0,onClick:()=>d({view:"agents-v2",projectSlug:s.slice.slug}),children:[t.jsx(b,{name:s.slice.title,size:22,tile:!0,presence:!1}),t.jsxs("span",{className:"s-rail-proj-name","data-idle":a===0||void 0,children:[t.jsx("span",{"aria-hidden":!0,style:{opacity:.4},children:"/"}),s.slice.title]}),a>0?t.jsx("span",{className:"s-rail-proj-count","data-needs":u||void 0,title:u?"needs you":void 0,children:a}):null]},s.slice.key)})}),t.jsxs("div",{className:"s-agents-foot s-rail-foot-icons",children:[t.jsx("button",{type:"button",className:"s-rail-icon",title:"Search","aria-label":"Search",onClick:()=>d({view:"search"}),children:t.jsx(E,{})}),t.jsx("button",{type:"button",className:"s-rail-icon",title:"New chat (⌘⌥N)","aria-label":"New chat",onClick:()=>m(),children:t.jsx(L,{})}),t.jsx("button",{type:"button",className:"s-rail-icon s-rail-icon--end",title:"Settings","aria-label":"Settings",onClick:()=>d({view:"settings"}),children:t.jsx(D,{})})]})]})}function E(){return t.jsxs("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,children:[t.jsx("circle",{cx:"7",cy:"7",r:"4.25",stroke:"currentColor",strokeWidth:"1.4"}),t.jsx("path",{d:"M10.5 10.5 14 14",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})]})}function L(){return t.jsx("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,children:t.jsx("path",{d:"M8 3v10M3 8h10",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})})}function D(){return t.jsxs("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,children:[t.jsx("circle",{cx:"8",cy:"8",r:"2.25",stroke:"currentColor",strokeWidth:"1.3"}),t.jsx("path",{d:"M8 1.5v1.6M8 12.9v1.6M14.5 8h-1.6M3.1 8H1.5M12.6 3.4l-1.1 1.1M4.5 11.5l-1.1 1.1M12.6 12.6l-1.1-1.1M4.5 4.5 3.4 3.4",stroke:"currentColor",strokeWidth:"1.3",strokeLinecap:"round"})]})}export{Et as AgentsLeft};
@@ -1 +0,0 @@
1
- import{j as r}from"./index-EsrkGBcv.js";import{u as o}from"./Provider-C35yu29I.js";import{OpsAgentsLeft as i}from"./left-agents-CsSNc51Y.js";import{OpsDefaultLeft as m}from"./left-default-BlO5LP2T.js";import{OpsLanesLeft as p}from"./left-lanes-C4PhaJE6.js";import{OpsMissionLeft as s}from"./left-mission-BjTE5vPa.js";import{OpsAdvisorLeft as e}from"./left-advisor-B0N47De2.js";import"./theme-vars-DNK0nn3k.js";import"./provider-Dojd8quC.js";import"./router-DCtl8wqb.js";import"./api-DSqpVKC7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-BCPRocpq.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-C97-iTMK.js";import"./runtime-picker-DXu2bOTh.js";import"./scout-voice-CZx60X6E.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-OvccU82H.js";import"./createLucideIcon-zZ8Hx7er.js";import"./media-blobs-Bi8pxr1u.js";import"./index-724SdE6r.js";import"./HarnessMark-C4naWc16.js";import"./conversation-model-FxDeWlle.js";import"./time-Dhsh_2EG.js";import"./conversations-DoAAO6kA.js";import"./colors-CFlbwC25.js";import"./NewChatOrigin-DFbF_XvR.js";import"./keyboard-nav-DDHegDbx.js";import"./x-DAehov0E.js";import"./chevron-down-l1mrh5S9.js";import"./search-DT42oyRW.js";import"./file-text-CnISiiw6.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DJr0v0D_.js";import"./TextDocumentSurface-D52m7Vd8.js";import"./index-CHD0qcfL.js";import"./chevron-right-DrfqcerI.js";import"./folder-D5prSkzz.js";import"./chevron-up-CETZJzjV.js";import"./code-xml-BhcNbLWU.js";import"./arrow-left-MVUKauwQ.js";import"./arrow-right-Bp-FpE5V.js";import"./voice-turn-ledger-BMZxlSjg.js";import"./chunk-HRAB3GC3-DbVLgbWX.js";/* empty css */import"./use-fleet-active-asks-CymmXWH4.js";import"./RailRow-BjmWK420.js";import"./AgentAvatar-CrP1eXxk.js";import"./SpriteAvatar-CpZWf54-.js";import"./CrewAvatar-kTznzqcO.js";import"./operator-attention-DBaRg5ep.js";import"./openContent-C6XO6kr5.js";import"./agent-lanes-model-DMAdqCmK.js";import"./lane-ask-display-BTVSakyo.js";import"./context-budget-8qFKqM-j.js";import"./lane-observe-CteDwdD-.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./lane-roster-store-D-RSWjb-.js";import"./mission-control-store-elEEsIvb.js";import"./MissionLeftAgentRow-vycMV77n.js";import"./page-status-BswZLqvA.js";import"./server-QfsgMLk1.js";import"./layers-C8PDiMul.js";import"./sparkles-BjHq_DNK.js";import"./activity-CIlFrfPJ.js";import"./cpu-BOTa_WLr.js";import"./gauge-D9_5iJEm.js";import"./terminal-hQKQygcf.js";function kr(){const{route:t}=o();if(t.view!=="ops")return null;switch(t.mode){case"mission":return r.jsx(s,{});case"agents":return r.jsx(i,{});case"advisor":return r.jsx(e,{});case"lanes":case"world":return r.jsx(p,{});default:return r.jsx(m,{})}}export{kr as OpsLeft};