@openscout/scout 0.2.96 → 0.2.98

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 (395) hide show
  1. package/README.md +0 -1
  2. package/bin/scoutd +0 -0
  3. package/dist/build-manifest.json +3 -3
  4. package/dist/client/assets/ActivityScreen-sfonf5SR.js +1 -0
  5. package/dist/client/assets/{AddProjectForm-IqOtJfRs.js → AddProjectForm-fXndbzXT.js} +1 -1
  6. package/dist/client/assets/{AgentAvatar-6-KBVKUu.js → AgentAvatar-Dz79iTxB.js} +1 -1
  7. package/dist/client/assets/AgentConfigurationScreen-DDc3udYM.js +1 -0
  8. package/dist/client/assets/AgentDefinitionsWorkspace-DHDS9Pgd.js +1 -0
  9. package/dist/client/assets/{AgentDetailCard-C9rn3Fj5.js → AgentDetailCard-8viaEY8b.js} +1 -1
  10. package/dist/client/assets/AgentFloorView-DuyvyMMj.js +1 -0
  11. package/dist/client/assets/AgentInfoScreen-qntgg2q2.js +1 -0
  12. package/dist/client/assets/{AgentLaneCard-DI2iW9zO.js → AgentLaneCard-Cc9uyfBr.js} +1 -1
  13. package/dist/client/assets/{AgentLaneChrome-D8bARHMx.js → AgentLaneChrome-Dv2lBFoH.js} +1 -1
  14. package/dist/client/assets/{AgentLaneDetailSheet-52un7dKC.js → AgentLaneDetailSheet-CGqtqSHQ.js} +1 -1
  15. package/dist/client/assets/{AgentLaneSummaryResize-CEBjmPTa.js → AgentLaneSummaryResize-Di4u6df2.js} +1 -1
  16. package/dist/client/assets/AgentLanesEmbedScreen-BA6fRwkD.js +1 -0
  17. package/dist/client/assets/{AgentLanesPreflight-q20mTjms.js → AgentLanesPreflight-CCGBArIb.js} +1 -1
  18. package/dist/client/assets/AgentLanesView-96lHsoX7.js +2 -0
  19. package/dist/client/assets/{AgentLiveActions-DrEJDJef.js → AgentLiveActions-DlSKL60c.js} +1 -1
  20. package/dist/client/assets/AgentMasterScreen-DHrMuQ6_.js +1 -0
  21. package/dist/client/assets/{AgentSessions-DCPCG4xb.js → AgentSessions-DV9v34aq.js} +2 -2
  22. package/dist/client/assets/AgentsConsole-DTpVhS67.js +1 -0
  23. package/dist/client/assets/AgentsScreen-hZ4o2I-e.js +1 -0
  24. package/dist/client/assets/AgentsSubnav-Ci7uWM7P.js +1 -0
  25. package/dist/client/assets/{AstronautSuit-DbjQtfD_.js → AstronautSuit-CwB4Dw07.js} +1 -1
  26. package/dist/client/assets/{AtopView-Daq_ob3z.js → AtopView-D7vyQDtE.js} +1 -1
  27. package/dist/client/assets/{BackToPicker-CXZjBRAe.js → BackToPicker-BHicJyfc.js} +1 -1
  28. package/dist/client/assets/BriefingDetailScreen-B-wD_Bot.js +1 -0
  29. package/dist/client/assets/{BriefingsScreen-B5oMTGKv.js → BriefingsScreen-Cn4Mbam9.js} +1 -1
  30. package/dist/client/assets/{BrokerMetadataPanel-BsiU8lTD.js → BrokerMetadataPanel-BJSwU9XZ.js} +1 -1
  31. package/dist/client/assets/BrokerScreen-C8FQ5rlg.js +5 -0
  32. package/dist/client/assets/{CastPicker-_5E5hNUe.js → CastPicker-CkgTalIt.js} +1 -1
  33. package/dist/client/assets/{ChatCollapsedStrip-D-eXhzPf.js → ChatCollapsedStrip-7Wrg8Ge0.js} +1 -1
  34. package/dist/client/assets/{CodeDiffPane-n7W4iGUG.js → CodeDiffPane-DfluIWmO.js} +1 -1
  35. package/dist/client/assets/{CodeProjectPicker-CMsbSTDq.js → CodeProjectPicker-By_Wz9ex.js} +1 -1
  36. package/dist/client/assets/CodeScreen-cLC0tJ4S.js +1 -0
  37. package/dist/client/assets/ConversationComposer-BUIjWMBi.js +1 -0
  38. package/dist/client/assets/ConversationFeedRows-Bx0gFyG_.js +1 -0
  39. package/dist/client/assets/ConversationHeader-Bt2RBj93.js +1 -0
  40. package/dist/client/assets/{ConversationPanels-Dujvnmup.js → ConversationPanels-o6W-cOoU.js} +2 -2
  41. package/dist/client/assets/ConversationScreen-DIU7m_aC.js +2 -0
  42. package/dist/client/assets/{ConversationStatus-DVzSb2Hv.js → ConversationStatus-CTYOywFh.js} +1 -1
  43. package/dist/client/assets/{CrewAvatar-BwXjyg8N.js → CrewAvatar-CZ_faQ_s.js} +1 -1
  44. package/dist/client/assets/CrewWorkspaces-DNX-QQ1h.js +1 -0
  45. package/dist/client/assets/CrewWorkspaces-Diq11KDq.css +1 -0
  46. package/dist/client/assets/{DataTable-Bp8tU9AK.js → DataTable-C6aMSilS.js} +1 -1
  47. package/dist/client/assets/{DispatchAftermath-B-6rmXzL.js → DispatchAftermath-ZCEB75hh.js} +1 -1
  48. package/dist/client/assets/{DocumentFocusViewer-Do3wQ_3Z.js → DocumentFocusViewer-D8iB6SMt.js} +1 -1
  49. package/dist/client/assets/{EmbeddableSurfacesLab-C1orRyP9.js → EmbeddableSurfacesLab-D3iZiS8o.js} +1 -1
  50. package/dist/client/assets/{EmptyState-CJzXj1l5.js → EmptyState-CKPWFSjq.js} +1 -1
  51. package/dist/client/assets/{FileViewerPane-Df6VzXjA.js → FileViewerPane-CxNbcTYf.js} +1 -1
  52. package/dist/client/assets/FlightObserveScreen-BTe1YRPr.js +1 -0
  53. package/dist/client/assets/{FollowScreen-DvnxYLVh.js → FollowScreen-CkR-okdL.js} +1 -1
  54. package/dist/client/assets/{HarnessMark-B979GCSB.js → HarnessMark-DttReffF.js} +1 -1
  55. package/dist/client/assets/HarnessesScreen-COO_Q8VY.js +1 -0
  56. package/dist/client/assets/{HerdrSession-B3McuYgi.js → HerdrSession-DsuxCtfX.js} +1 -1
  57. package/dist/client/assets/{HomeHero-CdUVPjkG.js → HomeHero-DXJo2QSO.js} +1 -1
  58. package/dist/client/assets/{HostAdvisorView-Bok5Sk5c.js → HostAdvisorView-DeJ-8RZV.js} +1 -1
  59. package/dist/client/assets/{KnowledgeSearchInspector-B7XSoJsu.js → KnowledgeSearchInspector-W_zNIBRV.js} +1 -1
  60. package/dist/client/assets/KnowledgeSearchScreen-_rxJNUUh.js +1 -0
  61. package/dist/client/assets/{LaneToolHoverCard-HByf2ndx.js → LaneToolHoverCard-t7-XJP-h.js} +1 -1
  62. package/dist/client/assets/LaneTraceDetailSheet-DNIECgEl.js +1 -0
  63. package/dist/client/assets/{LaneTraceEventFocus-DM-hoPxG.js → LaneTraceEventFocus-BB5DhFQm.js} +1 -1
  64. package/dist/client/assets/{MeshCanvas-DCLJRsBy.js → MeshCanvas-DZv2ipsy.js} +1 -1
  65. package/dist/client/assets/{MeshCanvasMinimap-cEFS9eW7.js → MeshCanvasMinimap-BXHRNb7l.js} +1 -1
  66. package/dist/client/assets/MeshScreen-DuNvpDC5.js +1 -0
  67. package/dist/client/assets/{MeshTopologyView-CCRPd8PU.js → MeshTopologyView-Dc0GSrKa.js} +2 -2
  68. package/dist/client/assets/MessagesScreen-dNNPFwAc.js +1 -0
  69. package/dist/client/assets/{MissionContextRail-DF0_kiU7.js → MissionContextRail-DnCWPzAM.js} +1 -1
  70. package/dist/client/assets/MissionControlView-DmaThhNR.js +1 -0
  71. package/dist/client/assets/MissionFocusOverlay-K21ssTxv.js +1 -0
  72. package/dist/client/assets/MissionLeftAgentRow-CbQm4BLv.js +1 -0
  73. package/dist/client/assets/{MissionLogPane-BbdDKjUl.js → MissionLogPane-BLvSSIdT.js} +1 -1
  74. package/dist/client/assets/{NewAgentModal-DfHxad34.js → NewAgentModal-B7qxjZlW.js} +1 -1
  75. package/dist/client/assets/NewChatComposer-D2Ah4T-W.js +19 -0
  76. package/dist/client/assets/{NewChatOrigin-B1u7ki70.js → NewChatOrigin-DCn5cWPZ.js} +1 -1
  77. package/dist/client/assets/{ObserveEmbedScreen-Co0xTii6.js → ObserveEmbedScreen-DvKGsaLv.js} +2 -2
  78. package/dist/client/assets/{ObserveTextFlow-ZQWwrK3i.js → ObserveTextFlow-DCJ5EmD8.js} +2 -2
  79. package/dist/client/assets/{ObservedTopologyPanel-BJUhDSuQ.js → ObservedTopologyPanel-CJVqIqQ2.js} +1 -1
  80. package/dist/client/assets/{OpenScoutAppShell-CUd2yOLu.js → OpenScoutAppShell-C9TOLB7u.js} +2 -2
  81. package/dist/client/assets/OpsAgentsView-vIoY-AW1.js +1 -0
  82. package/dist/client/assets/OpsScreen-CJBwshEp.js +1 -0
  83. package/dist/client/assets/OpsSubnav-CjDTnp64.js +1 -0
  84. package/dist/client/assets/ProjectAgentProfile-Br1eTD7G.js +1 -0
  85. package/dist/client/assets/ProjectAgentProfileBar-CUzZ4Rpx.js +1 -0
  86. package/dist/client/assets/ProjectAgentProfileHero-mjxNcRvw.js +1 -0
  87. package/dist/client/assets/ProjectsInbox-Bq29DE_o.js +2 -0
  88. package/dist/client/assets/ProjectsRail-kMDA0yn4.js +1 -0
  89. package/dist/client/assets/ProjectsScreen-BDaJYhc0.js +1 -0
  90. package/dist/client/assets/ProjectsThreadAside-B940p3vW.js +1 -0
  91. package/dist/client/assets/Provider-D0bB7q6y.js +1 -0
  92. package/dist/client/assets/{RailRow-CEH2MFBw.js → RailRow-B88JVr62.js} +1 -1
  93. package/dist/client/assets/RawSessionsTable-CzGhEdiZ.js +1 -0
  94. package/dist/client/assets/RealtimeVoiceScreen-CyP1CWsX.js +1 -0
  95. package/dist/client/assets/{RepoDiffEmbedScreen-kY2pHjIs.js → RepoDiffEmbedScreen-mexrJPhW.js} +1 -1
  96. package/dist/client/assets/{RepoDiffPageScreen-C6LhoKrn.js → RepoDiffPageScreen-DbqX4L3q.js} +1 -1
  97. package/dist/client/assets/{RepoDiffViewer-BhcIIQQg.js → RepoDiffViewer-Bw5yMC4A.js} +1 -1
  98. package/dist/client/assets/{RepoDiffViewerLazy-Csy_j9LD.js → RepoDiffViewerLazy-DzfoFhbl.js} +2 -2
  99. package/dist/client/assets/{ReposScreen-B_cB0zu7.js → ReposScreen-CzbO1Fuy.js} +2 -2
  100. package/dist/client/assets/{ScoutDeckSurface-CSy_fjcG.js → ScoutDeckSurface-DQoZofzH.js} +1 -1
  101. package/dist/client/assets/{ScoutSurface-CQVcSrin.js → ScoutSurface-NlhDsPzg.js} +1 -1
  102. package/dist/client/assets/{ScoutbotFxLab-DqGiLYNy.js → ScoutbotFxLab-l2WAahCg.js} +1 -1
  103. package/dist/client/assets/{SecondaryNav-BR4VRdgh.js → SecondaryNav-Cs0_FQdj.js} +1 -1
  104. package/dist/client/assets/{SessionEmbedScreen-BTlZ9gAg.js → SessionEmbedScreen-CpduQ0O9.js} +1 -1
  105. package/dist/client/assets/{SessionObserve-dQDN23pP.js → SessionObserve-BVeTkcIl.js} +1 -1
  106. package/dist/client/assets/{SessionObserveEvidence-BRBGKAgd.js → SessionObserveEvidence-BkOezTGV.js} +1 -1
  107. package/dist/client/assets/SessionRefScreen-DetLMkTT.js +1 -0
  108. package/dist/client/assets/SessionsScreen-B-McKw6d.js +1 -0
  109. package/dist/client/assets/{SettingsDrawer-RGVK_bmE.js → SettingsDrawer-CPB32w0n.js} +3 -3
  110. package/dist/client/assets/SettingsScreen-BEzYFdjz.js +1 -0
  111. package/dist/client/assets/{ShikiPane-DYI9Hkge.js → ShikiPane-C0TuCATU.js} +1 -1
  112. package/dist/client/assets/{SlidePanel-B9ugxWgA.js → SlidePanel-CETQ5NTx.js} +1 -1
  113. package/dist/client/assets/{SpriteAvatar-z5hHesx9.js → SpriteAvatar-DFO4Kb4Z.js} +1 -1
  114. package/dist/client/assets/{StatusPill-BFvMjmZV.js → StatusPill-BllrY-eg.js} +1 -1
  115. package/dist/client/assets/{TailView-0uEIj2JH.js → TailView-_gKWfaQM.js} +2 -2
  116. package/dist/client/assets/Terminal-DWyZTZdY.js +1 -0
  117. package/dist/client/assets/TerminalEmbedScreen-_SSzwhWa.js +1 -0
  118. package/dist/client/assets/{TerminalHeaderMount-BL07cd0q.js → TerminalHeaderMount-CY7uIWBg.js} +1 -1
  119. package/dist/client/assets/{TextDocumentSurface-BflAwXeZ.js → TextDocumentSurface-2X1Gw4eA.js} +1 -1
  120. package/dist/client/assets/{TmuxPeek-BTnjOQi0.js → TmuxPeek-CqTJRhkI.js} +1 -1
  121. package/dist/client/assets/{VoicePermissionsPanel-CgQ6GGS-.js → VoicePermissionsPanel-C4vkU-sU.js} +1 -1
  122. package/dist/client/assets/{WorkDetailScreen-CaLG-zDs.js → WorkDetailScreen-DqGnuK0e.js} +3 -3
  123. package/dist/client/assets/{WorkFilesViewer-B9Sil_No.js → WorkFilesViewer-D8-4vF5l.js} +1 -1
  124. package/dist/client/assets/{activity-DcrMApUY.js → activity-CzTJ-YMX.js} +1 -1
  125. package/dist/client/assets/{addon-fit-DMVrz5Sv.js → addon-fit-Zx3A7pGS.js} +1 -1
  126. package/dist/client/assets/{addon-webgl-BYvpZUyu.js → addon-webgl-DitJj-N0.js} +1 -1
  127. package/dist/client/assets/{agent-autocomplete-B-5QTeas.js → agent-autocomplete-BlK8wY06.js} +1 -1
  128. package/dist/client/assets/{agent-essentials-D7KRGYvF.js → agent-essentials-K9B6kbTS.js} +1 -1
  129. package/dist/client/assets/{agent-lane-card-model-CNZMPkhc.js → agent-lane-card-model-CY3OE1Xu.js} +1 -1
  130. package/dist/client/assets/{agent-lanes-model-DXqjs0OK.js → agent-lanes-model-tc-1hE6q.js} +1 -1
  131. package/dist/client/assets/{agent-master-model-DqjrVI2h.js → agent-master-model-DMcHeNq3.js} +1 -1
  132. package/dist/client/assets/agent-specialization-CtF_jI34.js +1 -0
  133. package/dist/client/assets/agents-project-DgbqDc65.css +1 -0
  134. package/dist/client/assets/{arc.es-NHqHWohb.js → arc.es-BNXJqSw7.js} +1 -1
  135. package/dist/client/assets/{arrow-down-CKtSUjmW.js → arrow-down-BAGkhHA6.js} +1 -1
  136. package/dist/client/assets/{arrow-left-Czpf-AE4.js → arrow-left-eToA6GxC.js} +1 -1
  137. package/dist/client/assets/{arrow-right-BuzMnLYP.js → arrow-right-DTX42clh.js} +1 -1
  138. package/dist/client/assets/{arrow-up-right-C6Wl-1uw.js → arrow-up-right-B09GPwFl.js} +1 -1
  139. package/dist/client/assets/{bot-rd0awxD3.js → bot-WxKXYtEX.js} +1 -1
  140. package/dist/client/assets/{check-ofKUE8yH.js → check-Dz2SRHft.js} +1 -1
  141. package/dist/client/assets/{chevron-down-wciXnOQz.js → chevron-down-D120PY4g.js} +1 -1
  142. package/dist/client/assets/{chevron-right-D-HdlPg8.js → chevron-right-CowuvuE6.js} +1 -1
  143. package/dist/client/assets/{chunk-HRAB3GC3-Tyv9rzx7.js → chunk-HRAB3GC3-KjjrTLCU.js} +1 -1
  144. package/dist/client/assets/{chunk-JTPDIGGW-BC2Mandc.js → chunk-JTPDIGGW-COJ00z94.js} +3 -3
  145. package/dist/client/assets/{chunk-T65CQEWV-C1AWTYZZ.js → chunk-T65CQEWV-H2QEKfr1.js} +1 -1
  146. package/dist/client/assets/{chunk-YOZR3KYS-DwHPHa6f.js → chunk-YOZR3KYS-CrCgXw9l.js} +1 -1
  147. package/dist/client/assets/{clock-B88r8OrZ.js → clock-_9FDplIT.js} +1 -1
  148. package/dist/client/assets/{code-xml-D7pOQM9l.js → code-xml-CkkNdRmu.js} +1 -1
  149. package/dist/client/assets/{compass-Dt1AMXz2.js → compass-BdpImt_W.js} +1 -1
  150. package/dist/client/assets/content-0RBfbCIJ.js +1 -0
  151. package/dist/client/assets/content-BTmnk2bl.js +1 -0
  152. package/dist/client/assets/content-Bk5DKhyP.js +1 -0
  153. package/dist/client/assets/{content-nkx0swDe.js → content-Bw_8GE_S.js} +1 -1
  154. package/dist/client/assets/content-CI4gLEWi.js +1 -0
  155. package/dist/client/assets/content-CLCtp9Rb.js +1 -0
  156. package/dist/client/assets/content-C_FAGTNk.js +1 -0
  157. package/dist/client/assets/content-CnnzWOE3.js +1 -0
  158. package/dist/client/assets/content-DKlY98pO.js +1 -0
  159. package/dist/client/assets/content-Df7ndXTG.js +1 -0
  160. package/dist/client/assets/content-DkZDzzx3.js +1 -0
  161. package/dist/client/assets/content-DnGmb2L0.js +1 -0
  162. package/dist/client/assets/content-Ds-zs-Ss.js +1 -0
  163. package/dist/client/assets/content-JIWSyC0f.js +1 -0
  164. package/dist/client/assets/content-Q3TIYC8q.js +1 -0
  165. package/dist/client/assets/content-evaBfvxD.js +1 -0
  166. package/dist/client/assets/{context-budget-DX_fwUs3.js → context-budget-DqxWzalx.js} +1 -1
  167. package/dist/client/assets/{conversation-icons-tp9BX6X2.js → conversation-icons-DHGc9wbT.js} +1 -1
  168. package/dist/client/assets/conversation-model-C2KuZUXc.js +1 -0
  169. package/dist/client/assets/conversation-motion-features-BJnHs3Ul.js +1 -0
  170. package/dist/client/assets/{copy-CWWAJ75H.js → copy-BzdzWsQd.js} +1 -1
  171. package/dist/client/assets/{cpu-DrqejfkB.js → cpu-CHFIGw87.js} +1 -1
  172. package/dist/client/assets/{createLucideIcon-DezKXSG2.js → createLucideIcon-Dv8H8m7J.js} +1 -1
  173. package/dist/client/assets/discover-DutlV0ZU.js +2 -0
  174. package/dist/client/assets/embed-entry-CJG7WEVw.js +2 -0
  175. package/dist/client/assets/{external-link-Dp_a2vRZ.js → external-link-BvX5PfLh.js} +1 -1
  176. package/dist/client/assets/{eye-BRyD0jno.js → eye-C9cGk5z6.js} +1 -1
  177. package/dist/client/assets/{file-code-corner-muIVH_xO.js → file-code-corner-jlGFdr8d.js} +1 -1
  178. package/dist/client/assets/{file-text-CqJgwxmv.js → file-text-BHro8MkG.js} +1 -1
  179. package/dist/client/assets/{gauge-hU--hKVP.js → gauge-DSflSery.js} +1 -1
  180. package/dist/client/assets/{gestures-DN4hEeqv.js → gestures-YA5IIwp-.js} +1 -1
  181. package/dist/client/assets/{git-branch-CK5v8F2v.js → git-branch-Bc_eDIpG.js} +1 -1
  182. package/dist/client/assets/{home-moving-signal-BjDtEJUP.js → home-moving-signal-PHSqSBu_.js} +1 -1
  183. package/dist/client/assets/home-now-card-C_qsI6C6.js +1 -0
  184. package/dist/client/assets/{home-now-card-nano-C-r_bBg5.js → home-now-card-nano-Jmy7eJ6H.js} +1 -1
  185. package/dist/client/assets/{hooks-D46bABUP.js → hooks-ME7rmhpE.js} +1 -1
  186. package/dist/client/assets/{index-DvLtl7rV.js → index-C1VaWNuD.js} +2 -2
  187. package/dist/client/assets/index-C8UCRm2W.js +1 -0
  188. package/dist/client/assets/index-Cn0I2Hgi.js +1 -0
  189. package/dist/client/assets/index-Cx6Gbr6n.js +1 -0
  190. package/dist/client/assets/{inspector-panel-Dkc7rLvY.js → inspector-panel-CwrHjRaQ.js} +2 -2
  191. package/dist/client/assets/{keyboard-nav-BLYDhL3Z.js → keyboard-nav-B8sQ_8IF.js} +1 -1
  192. package/dist/client/assets/{lane-roster-store-DOdI1O13.js → lane-roster-store-DN2jxXF-.js} +1 -1
  193. package/dist/client/assets/{layers-CSsg3JVP.js → layers-CW2-qHsG.js} +1 -1
  194. package/dist/client/assets/{layout-grid-DOChPJdZ.js → layout-grid-BoVnPOk-.js} +1 -1
  195. package/dist/client/assets/left-BRu9pnqx.js +2 -0
  196. package/dist/client/assets/left-BjS1dKNV.js +2 -0
  197. package/dist/client/assets/left-CL-TVLJ7.js +1 -0
  198. package/dist/client/assets/left-DLpsDi55.js +1 -0
  199. package/dist/client/assets/left-DPcM9o8Y.js +1 -0
  200. package/dist/client/assets/left-MmTJf1tK.js +1 -0
  201. package/dist/client/assets/left-P80i5V8L.js +1 -0
  202. package/dist/client/assets/left-advisor-CbXVzAqS.js +1 -0
  203. package/dist/client/assets/left-agents-7mJsiNyr.js +1 -0
  204. package/dist/client/assets/left-default-COK26l3H.js +1 -0
  205. package/dist/client/assets/left-lanes-Dbdm9Veu.js +1 -0
  206. package/dist/client/assets/left-mission-DqGR5jby.js +1 -0
  207. package/dist/client/assets/library-COnWzUWv.js +1 -0
  208. package/dist/client/assets/{loader-circle-pM56HNhR.js → loader-circle-DmUG_YC7.js} +1 -1
  209. package/dist/client/assets/{local-agents-C8xAhbO5.js → local-agents-VP1-ZlPw.js} +1 -1
  210. package/dist/client/assets/{mentions-DG6OQrsc.js → mentions-BZ5SBMtc.js} +1 -1
  211. package/dist/client/assets/mesh-buckets-CLYS8Jx8.js +1 -0
  212. package/dist/client/assets/{mesh-ops-BZ1h5RQs.js → mesh-ops-CKSWgax2.js} +1 -1
  213. package/dist/client/assets/{mesh-view-store-ChUOASK8.js → mesh-view-store-CBM1za_N.js} +1 -1
  214. package/dist/client/assets/{message-circle-mZCv8tvB.js → message-circle-joGFxfj1.js} +1 -1
  215. package/dist/client/assets/{message-markup-C2LQDm_k.js → message-markup-DC0QFEZn.js} +1 -1
  216. package/dist/client/assets/{message-square-C7t_qtuj.js → message-square-BLiFqpe_.js} +1 -1
  217. package/dist/client/assets/{mission-control-store-nDLdUZPA.js → mission-control-store-CM8mQGg8.js} +1 -1
  218. package/dist/client/assets/model-CBkMvT1w.js +1 -0
  219. package/dist/client/assets/{observe-BpEm1INu.js → observe-BLmy4quB.js} +1 -1
  220. package/dist/client/assets/{page-status-E5jnk48p.js → page-status-BE0-J1xY.js} +1 -1
  221. package/dist/client/assets/{paperclip-C64lkcbM.js → paperclip-Br7wUDFl.js} +1 -1
  222. package/dist/client/assets/{persistent-state-EHXw8WNy.js → persistent-state-BubPQ7tT.js} +1 -1
  223. package/dist/client/assets/{plus-Co-dqKul.js → plus-BWKhylds.js} +1 -1
  224. package/dist/client/assets/profile-BCvk8jOQ.js +1 -0
  225. package/dist/client/assets/projects-inbox-BIW7nv-H.css +1 -0
  226. package/dist/client/assets/projects-inbox-DFbgVlXL.js +1 -0
  227. package/dist/client/assets/{proxy-BiW5suC7.js → proxy-DVDRhSRR.js} +1 -1
  228. package/dist/client/assets/{radio-BOxBQX-T.js → radio-CxIXS1nU.js} +1 -1
  229. package/dist/client/assets/{refresh-cw-DMxGzDwn.js → refresh-cw-Bkh7Cvnd.js} +1 -1
  230. package/dist/client/assets/resolve-panes-DhD5qmQO.js +1 -0
  231. package/dist/client/assets/resolve-sidebar-context-GqhZNRPY.js +1 -0
  232. package/dist/client/assets/right-B_08ilv6.js +1 -0
  233. package/dist/client/assets/right-Brm67HOL.js +1 -0
  234. package/dist/client/assets/right-BveAPKBW.js +1 -0
  235. package/dist/client/assets/right-CpTB_-Ya.js +1 -0
  236. package/dist/client/assets/right-CqC4Qdot.js +1 -0
  237. package/dist/client/assets/right-D91j9d5Y.js +1 -0
  238. package/dist/client/assets/{right-CimaAvQN.js → right-DVUq5374.js} +1 -1
  239. package/dist/client/assets/right-DaLRhYl3.js +1 -0
  240. package/dist/client/assets/right-Dt1wOwA5.js +1 -0
  241. package/dist/client/assets/right-DtzqIZQF.js +1 -0
  242. package/dist/client/assets/{rocket-BQm5_CvR.js → rocket-CnxqjX_K.js} +1 -1
  243. package/dist/client/assets/{router-B9vQkNJL.js → router-kfcaYqZr.js} +1 -1
  244. package/dist/client/assets/runtime-picker-C20lTGhV.js +1 -0
  245. package/dist/client/assets/{scope-views-1IYJdl41.js → scope-views-KPY85UUx.js} +1 -1
  246. package/dist/client/assets/{scout-voice-BVUqGhth.js → scout-voice-Cg1qfepC.js} +1 -1
  247. package/dist/client/assets/scoutbot-D7kGGyK_.js +3 -0
  248. package/dist/client/assets/{scoutbot-markdown-BQ_Ee2Ic.js → scoutbot-markdown-yb87JlSE.js} +1 -1
  249. package/dist/client/assets/{scroll-text-Dze_dXtQ.js → scroll-text-DFcBYy5J.js} +1 -1
  250. package/dist/client/assets/{search-CDko0PKE.js → search-FB2vVxCp.js} +1 -1
  251. package/dist/client/assets/{secondaryNavConfig-BoQ_zYR9.js → secondaryNavConfig-C0Srrmy8.js} +1 -1
  252. package/dist/client/assets/{selection-bridge-Din6yV3h.js → selection-bridge-qBGFCJv8.js} +1 -1
  253. package/dist/client/assets/{send-horizontal-CSjIm6xg.js → send-horizontal-CS7mxVhX.js} +1 -1
  254. package/dist/client/assets/{server-Bzj7lPIx.js → server-WY6gsbZz.js} +1 -1
  255. package/dist/client/assets/{session-catalog-DsaZJXZt.js → session-catalog-CG4oL_yN.js} +1 -1
  256. package/dist/client/assets/{session-table-BQfR7u6r.js → session-table-uJh3v-ly.js} +1 -1
  257. package/dist/client/assets/{settings-Dyvpkb1D.js → settings-DQEtqkM9.js} +1 -1
  258. package/dist/client/assets/{sliders-horizontal-C8njVwfg.js → sliders-horizontal-57e99_qO.js} +1 -1
  259. package/dist/client/assets/{sparkles-CETYrxGA.js → sparkles-D0vWLTyC.js} +1 -1
  260. package/dist/client/assets/{sse-CD9MMUxl.js → sse-B29iGBnw.js} +1 -1
  261. package/dist/client/assets/{system-surfaces-redesign-QVXNeGYw.css → system-surfaces-redesign-kuf3wuE_.css} +1 -1
  262. package/dist/client/assets/{tail-events-Ps8KpKah.js → tail-events-LK29oCKm.js} +1 -1
  263. package/dist/client/assets/{terminal-9GRS_Qdc.js → terminal-UDy4lzV1.js} +1 -1
  264. package/dist/client/assets/{terminal-relay-GYMIvKs1.js → terminal-relay-CXHMdain.js} +1 -1
  265. package/dist/client/assets/{terminal-screen-BLk4PAYt.css → terminal-screen-vMICbBJh.css} +1 -1
  266. package/dist/client/assets/{terminal-sessions-BQ6t92tJ.js → terminal-sessions-Bdt2W3Y4.js} +1 -1
  267. package/dist/client/assets/{terminal-takeover-_Jyys4me.js → terminal-takeover-BMeBjBB2.js} +1 -1
  268. package/dist/client/assets/{use-conversation-list-C9ABzjXI.js → use-conversation-list-UG-tMN67.js} +1 -1
  269. package/dist/client/assets/{use-fleet-active-asks-DAspZQjE.js → use-fleet-active-asks-CCGrll5q.js} +1 -1
  270. package/dist/client/assets/{use-mesh-ops-items-Dh54ymEp.js → use-mesh-ops-items-BjyeFJTz.js} +1 -1
  271. package/dist/client/assets/{use-reduced-motion-x8pJMVrG.js → use-reduced-motion-CPoX8iV2.js} +1 -1
  272. package/dist/client/assets/{use-scout-dev-flags-DhCbiDK3.js → use-scout-dev-flags-DTseRrFi.js} +1 -1
  273. package/dist/client/assets/{useAgentHoverCard-DoBwV0LX.js → useAgentHoverCard-BgTLNcF-.js} +1 -1
  274. package/dist/client/assets/useContentSecondaryNav-CoIoz7JU.js +1 -0
  275. package/dist/client/assets/useEmbedHeadline-DuUnwTB7.js +1 -0
  276. package/dist/client/assets/{usePierreRuntime-ejq9dCWV.js → usePierreRuntime-35AHf9RQ.js} +1 -1
  277. package/dist/client/assets/{wrench-DjkoAOQt.js → wrench-BfVeded5.js} +1 -1
  278. package/dist/client/assets/{x-CAbNespN.js → x-DgmmnPKt.js} +1 -1
  279. package/dist/client/assets/{xterm-Cf-ngcGP.js → xterm-DnJJmrCA.js} +1 -1
  280. package/dist/client/assets/{zap-Cq8eWkcF.js → zap-Bcja1lHG.js} +1 -1
  281. package/dist/client/index.html +1 -1
  282. package/dist/main.mjs +5180 -9874
  283. package/dist/node/main.mjs +18 -2
  284. package/dist/pairing-runtime-controller.mjs +31 -2
  285. package/dist/runtime/broker-daemon.mjs +87 -13
  286. package/dist/scout-control-plane-web.mjs +35 -3
  287. package/package.json +2 -5
  288. package/dist/client/assets/ActivityScreen-BnoaUkVZ.js +0 -1
  289. package/dist/client/assets/AgentConfigurationScreen-CuZJy07q.js +0 -1
  290. package/dist/client/assets/AgentDefinitionsWorkspace-Iyl4BesU.js +0 -1
  291. package/dist/client/assets/AgentFloorView-YT-Jjccf.js +0 -1
  292. package/dist/client/assets/AgentInfoScreen-Dr99gQEZ.js +0 -1
  293. package/dist/client/assets/AgentLanesEmbedScreen-Dgcm7zd_.js +0 -1
  294. package/dist/client/assets/AgentLanesView-CetZZDyF.js +0 -2
  295. package/dist/client/assets/AgentMasterScreen-DJPnstoD.js +0 -1
  296. package/dist/client/assets/AgentsConsole-CsYOoFJi.js +0 -1
  297. package/dist/client/assets/AgentsScreen-k8LvBuU_.js +0 -1
  298. package/dist/client/assets/AgentsSubnav-C4xpQhsv.js +0 -1
  299. package/dist/client/assets/BriefingDetailScreen-CUCXO-KH.js +0 -1
  300. package/dist/client/assets/BrokerScreen-BPbOHhCS.js +0 -5
  301. package/dist/client/assets/CodeScreen-CeuO3EhR.js +0 -1
  302. package/dist/client/assets/ConversationComposer-CXPKx86g.js +0 -1
  303. package/dist/client/assets/ConversationFeedRows-WrH-YI3L.js +0 -1
  304. package/dist/client/assets/ConversationHeader-BQWzGzLK.js +0 -1
  305. package/dist/client/assets/ConversationScreen-CR9pWB65.js +0 -2
  306. package/dist/client/assets/CrewWorkspaces-CkQDhyie.css +0 -1
  307. package/dist/client/assets/CrewWorkspaces-NKujRzwh.js +0 -1
  308. package/dist/client/assets/FlightObserveScreen-6mGnmWQA.js +0 -1
  309. package/dist/client/assets/HarnessesScreen-CHTuv8p6.js +0 -1
  310. package/dist/client/assets/KnowledgeSearchScreen-D3o3IODW.js +0 -1
  311. package/dist/client/assets/LaneTraceDetailSheet-BUgHz-sd.js +0 -1
  312. package/dist/client/assets/MeshScreen-BcxPkhm6.js +0 -1
  313. package/dist/client/assets/MessagesScreen-Bb5l13MO.js +0 -1
  314. package/dist/client/assets/MissionControlView-E3V7bENU.js +0 -1
  315. package/dist/client/assets/MissionFocusOverlay-h15sQFvP.js +0 -1
  316. package/dist/client/assets/MissionLeftAgentRow-KPdk9rSa.js +0 -1
  317. package/dist/client/assets/NewChatComposer-_Stj0fZy.js +0 -19
  318. package/dist/client/assets/OpsAgentsView-DI5wu1si.js +0 -1
  319. package/dist/client/assets/OpsScreen-D8fQafCl.js +0 -1
  320. package/dist/client/assets/OpsSubnav-1K4Jaf__.js +0 -1
  321. package/dist/client/assets/ProjectAgentProfile-Bdjd_dAx.js +0 -1
  322. package/dist/client/assets/ProjectAgentProfileBar-k2QHHHsQ.js +0 -1
  323. package/dist/client/assets/ProjectAgentProfileHero-Bpxk1ui2.js +0 -1
  324. package/dist/client/assets/ProjectsInbox-C_bMHLCc.js +0 -2
  325. package/dist/client/assets/ProjectsRail-J-aH_pxT.js +0 -1
  326. package/dist/client/assets/ProjectsScreen-cVUkGbPz.js +0 -1
  327. package/dist/client/assets/ProjectsThreadAside-_ourdM-Q.js +0 -1
  328. package/dist/client/assets/Provider-CtXJeLrP.js +0 -1
  329. package/dist/client/assets/RawSessionsTable-CDyrom-F.js +0 -1
  330. package/dist/client/assets/RealtimeVoiceScreen-DBl3DN1H.js +0 -1
  331. package/dist/client/assets/SessionRefScreen-COVQMbtE.js +0 -1
  332. package/dist/client/assets/SessionsScreen--5OJ3p3v.js +0 -1
  333. package/dist/client/assets/SettingsScreen-CCxzy5IU.js +0 -1
  334. package/dist/client/assets/Terminal-DouZeNxc.js +0 -1
  335. package/dist/client/assets/TerminalEmbedScreen-dMNUbzXr.js +0 -1
  336. package/dist/client/assets/agent-specialization-BujJVUTD.js +0 -1
  337. package/dist/client/assets/agents-project-COzHxZAF.css +0 -1
  338. package/dist/client/assets/agents-project-model-UYiamtrU.js +0 -1
  339. package/dist/client/assets/content-9K38QchR.js +0 -1
  340. package/dist/client/assets/content-BRgnyXWh.js +0 -1
  341. package/dist/client/assets/content-BWPNyXJ0.js +0 -1
  342. package/dist/client/assets/content-BdkI07v3.js +0 -1
  343. package/dist/client/assets/content-C4oWa8SB.js +0 -1
  344. package/dist/client/assets/content-C9ijJxyl.js +0 -1
  345. package/dist/client/assets/content-CFZ4rghn.js +0 -1
  346. package/dist/client/assets/content-CIqu_Ci_.js +0 -1
  347. package/dist/client/assets/content-CnJF9DGO.js +0 -1
  348. package/dist/client/assets/content-CriW8Y8u.js +0 -1
  349. package/dist/client/assets/content-DDCyPPk_.js +0 -1
  350. package/dist/client/assets/content-DtcZeh5m.js +0 -1
  351. package/dist/client/assets/content-U9tsdtle.js +0 -1
  352. package/dist/client/assets/content-hFLK3CON.js +0 -1
  353. package/dist/client/assets/content-p00KQrtD.js +0 -1
  354. package/dist/client/assets/conversation-model-Dc02NsGp.js +0 -1
  355. package/dist/client/assets/conversation-motion-features-D9-RmBSq.js +0 -1
  356. package/dist/client/assets/discover-C2CZO4Tk.js +0 -2
  357. package/dist/client/assets/embed-entry-BSMUykuG.js +0 -2
  358. package/dist/client/assets/home-now-card-nF8OotI-.js +0 -1
  359. package/dist/client/assets/index-CPrU5q04.js +0 -1
  360. package/dist/client/assets/index-kL1WLbeS.js +0 -1
  361. package/dist/client/assets/index-zvhpRHao.js +0 -1
  362. package/dist/client/assets/left-B-SdEJSJ.js +0 -1
  363. package/dist/client/assets/left-B3wSE6ql.js +0 -1
  364. package/dist/client/assets/left-BNRFiRsb.js +0 -2
  365. package/dist/client/assets/left-BggzhgXN.js +0 -1
  366. package/dist/client/assets/left-CARCvvxS.js +0 -2
  367. package/dist/client/assets/left-CpokZYHt.js +0 -1
  368. package/dist/client/assets/left-YT7mIGuH.js +0 -1
  369. package/dist/client/assets/left-advisor-CCY0vkcO.js +0 -1
  370. package/dist/client/assets/left-agents-trhO5sL8.js +0 -1
  371. package/dist/client/assets/left-default-CG33elBs.js +0 -1
  372. package/dist/client/assets/left-lanes-CitMgeTp.js +0 -1
  373. package/dist/client/assets/left-mission-Zl2m_5eU.js +0 -1
  374. package/dist/client/assets/library-DkALuCh5.js +0 -1
  375. package/dist/client/assets/mesh-buckets-6y3ZIibI.js +0 -1
  376. package/dist/client/assets/mesh-roster-Bc7T4b7z.js +0 -1
  377. package/dist/client/assets/model-IGCUEsMy.js +0 -1
  378. package/dist/client/assets/profile-APxDsN2P.js +0 -1
  379. package/dist/client/assets/projects-inbox-Cg4X2lUQ.js +0 -1
  380. package/dist/client/assets/projects-inbox-DRBl2N85.css +0 -1
  381. package/dist/client/assets/resolve-panes-DeVJbS9c.js +0 -1
  382. package/dist/client/assets/resolve-sidebar-context-BQe5J6xF.js +0 -1
  383. package/dist/client/assets/right-Bmfd3pjP.js +0 -1
  384. package/dist/client/assets/right-BqI-nr9G.js +0 -1
  385. package/dist/client/assets/right-BuCgE0fZ.js +0 -1
  386. package/dist/client/assets/right-BwlW6E57.js +0 -1
  387. package/dist/client/assets/right-C0ybUw0j.js +0 -1
  388. package/dist/client/assets/right-CdkcrmeD.js +0 -1
  389. package/dist/client/assets/right-CkCCPbCX.js +0 -1
  390. package/dist/client/assets/right-D3eSiy41.js +0 -1
  391. package/dist/client/assets/right-Dz_xD0Vj.js +0 -1
  392. package/dist/client/assets/scoutbot-BJIamJOH.js +0 -3
  393. package/dist/client/assets/text-BP3oyl8-.js +0 -1
  394. package/dist/client/assets/useContentSecondaryNav-pZe2Zfk1.js +0 -1
  395. /package/dist/client/assets/{text-BYAFNLNq.css → runtime-picker-BYAFNLNq.css} +0 -0
@@ -0,0 +1 @@
1
+ import{j as t,r as n,G as q,I as V,J as X,K as Q}from"./index-C1VaWNuD.js";import{u as v,o as Z,f as W,n as tt}from"./Provider-D0bB7q6y.js";import{resolveContentPane as et,resolveRightPane as ot,resolveLeftPane as rt}from"./resolve-panes-DhD5qmQO.js";import{S as it}from"./ScoutSurface-NlhDsPzg.js";import{h as $}from"./router-kfcaYqZr.js";import{S as U}from"./RealtimeVoiceScreen-CyP1CWsX.js";import{BrokerRight as nt}from"./right-Brm67HOL.js";import{OpsInspectorPanel as st}from"./inspector-panel-CwrHjRaQ.js";import{b as at,u as ct}from"./persistent-state-BubPQ7tT.js";import{M as lt}from"./MeshCanvasMinimap-BXHRNb7l.js";import{p as pt}from"./secondaryNavConfig-C0Srrmy8.js";import{u as mt,T as dt}from"./chunk-JTPDIGGW-COJ00z94.js";import{a as E}from"./api-Co9aQ2Jw.js";import{u as ut,a as gt,b as ht,c as ft,d as yt,e as vt}from"./hooks-ME7rmhpE.js";import{T as bt}from"./chunk-HRAB3GC3-KjjrTLCU.js";import"./sse-B29iGBnw.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./conversation-model-C2KuZUXc.js";import"./time-Dhsh_2EG.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./keyboard-nav-B8sQ_8IF.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./content-CLCtp9Rb.js";import"./ActivityScreen-sfonf5SR.js";import"./clipboard-e3fSpeo7.js";import"./mentions-BZ5SBMtc.js";import"./AgentDetailCard-8viaEY8b.js";import"./AgentLiveActions-DlSKL60c.js";import"./terminal-takeover-BMeBjBB2.js";import"./openContent-C6XO6kr5.js";import"./eye-C9cGk5z6.js";import"./terminal-UDy4lzV1.js";import"./EmptyState-CKPWFSjq.js";/* empty css */import"./perf-PX8Rx0EP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Bdt2W3Y4.js";import"./left-DLpsDi55.js";/* empty css */import"./AgentAvatar-Dz79iTxB.js";import"./SpriteAvatar-DFO4Kb4Z.js";import"./CrewAvatar-CZ_faQ_s.js";import"./content-DnGmb2L0.js";import"./AgentInfoScreen-qntgg2q2.js";/* empty css */import"./BackToPicker-BHicJyfc.js";import"./ObservedTopologyPanel-CJVqIqQ2.js";import"./AgentsScreen-hZ4o2I-e.js";/* empty css */import"./AgentsSubnav-Ci7uWM7P.js";import"./SecondaryNav-Cs0_FQdj.js";import"./message-square-BLiFqpe_.js";import"./compass-BdpImt_W.js";import"./settings-DQEtqkM9.js";import"./git-branch-Bc_eDIpG.js";import"./scroll-text-DFcBYy5J.js";import"./library-COnWzUWv.js";/* empty css */import"./AgentSessions-DV9v34aq.js";import"./profile-BCvk8jOQ.js";import"./context-budget-DqxWzalx.js";import"./session-catalog-CG4oL_yN.js";import"./terminal-relay-CXHMdain.js";import"./ConversationScreen-DIU7m_aC.js";import"./ConversationComposer-BUIjWMBi.js";import"./zap-Bcja1lHG.js";import"./message-markup-DC0QFEZn.js";import"./message-visibility-CGOmSSKs.js";import"./operator-attention-RqieiSY8.js";import"./sessionRead-CvFz2RHv.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-Bt2RBj93.js";import"./AstronautSuit-CwB4Dw07.js";import"./ConversationFeedRows-Bx0gFyG_.js";import"./ConversationPanels-o6W-cOoU.js";import"./tail-display-DcliDVkW.js";import"./lane-edit-display-C_Aujldz.js";import"./use-reduced-motion-CPoX8iV2.js";import"./proxy-DVDRhSRR.js";import"./activity-CzTJ-YMX.js";import"./message-circle-joGFxfj1.js";import"./tail-events-LK29oCKm.js";import"./ConversationStatus-CTYOywFh.js";import"./check-Dz2SRHft.js";import"./sparkles-D0vWLTyC.js";import"./SessionObserve-BVeTkcIl.js";import"./bash-format-BRV5C6Gv.js";import"./lane-tool-detail-0WhMf4Vj.js";import"./LaneToolHoverCard-t7-XJP-h.js";import"./lane-observe-vfyACHi0.js";import"./lane-ask-display-B6iCAVcd.js";import"./ObserveTextFlow-DCJ5EmD8.js";import"./SessionObserveEvidence-BkOezTGV.js";import"./wrench-BfVeded5.js";import"./external-link-BvX5PfLh.js";import"./AgentDefinitionsWorkspace-DHDS9Pgd.js";import"./agent-specialization-CtF_jI34.js";import"./project-overview-helpers-BQTc_Ous.js";import"./FileViewerPane-CxNbcTYf.js";/* empty css */import"./agent-essentials-K9B6kbTS.js";/* empty css *//* empty css */import"./right-B_08ilv6.js";import"./openAgent-Dbv5wfuL.js";import"./TmuxPeek-CqTJRhkI.js";import"./refresh-cw-Bkh7Cvnd.js";import"./ProjectsRail-kMDA0yn4.js";import"./AddProjectForm-fXndbzXT.js";import"./projects-inbox-DFbgVlXL.js";import"./ProjectsScreen-BDaJYhc0.js";import"./ProjectsInbox-Bq29DE_o.js";import"./ui-LM8pS8qE.js";import"./SessionRefScreen-DetLMkTT.js";import"./session-ref-lookup-state-SATH_jAP.js";/* empty css */import"./CrewWorkspaces-DNX-QQ1h.js";import"./sliders-horizontal-57e99_qO.js";import"./useEmbedHeadline-DuUnwTB7.js";import"./api-HFH8wFyb.js";import"./cache-CeWH_KzJ.js";import"./arrow-up-right-B09GPwFl.js";import"./ProjectAgentProfile-Br1eTD7G.js";import"./ProjectAgentProfileBar-CUzZ4Rpx.js";import"./ProjectsThreadAside-B940p3vW.js";import"./content-JIWSyC0f.js";import"./BriefingDetailScreen-B-wD_Bot.js";import"./scoutbot-markdown-yb87JlSE.js";/* empty css */import"./BriefingsScreen-Cn4Mbam9.js";import"./content-Q3TIYC8q.js";import"./BrokerScreen-C8FQ5rlg.js";import"./status-tone-BM_zuRy1.js";import"./broker-display-Q75fupqG.js";import"./BrokerMetadataPanel-BJSwU9XZ.js";import"./DispatchAftermath-ZCEB75hh.js";import"./follow-route-BvcGtBIL.js";import"./ShikiPane-C0TuCATU.js";import"./arrow-down-BAGkhHA6.js";import"./paperclip-Br7wUDFl.js";import"./plus-BWKhylds.js";import"./send-horizontal-CS7mxVhX.js";import"./copy-BzdzWsQd.js";import"./radio-CxIXS1nU.js";import"./bot-WxKXYtEX.js";import"./left-BRu9pnqx.js";import"./conversation-prefs-DNre-Lcx.js";import"./use-fleet-active-asks-CCGrll5q.js";import"./agent-master-model-DMcHeNq3.js";import"./use-conversation-list-UG-tMN67.js";import"./RailRow-B88JVr62.js";/* empty css */import"./content-C_FAGTNk.js";import"./MessagesScreen-dNNPFwAc.js";import"./AgentMasterScreen-DHrMuQ6_.js";/* empty css */import"./right-DaLRhYl3.js";import"./CodeScreen-cLC0tJ4S.js";import"./CodeDiffPane-DfluIWmO.js";import"./usePierreRuntime-35AHf9RQ.js";/* empty css */import"./CodeProjectPicker-By_Wz9ex.js";/* empty css */import"./content-DKlY98pO.js";import"./FollowScreen-CkR-okdL.js";import"./content-0RBfbCIJ.js";import"./HarnessesScreen-COO_Q8VY.js";import"./useContentSecondaryNav-CoIoz7JU.js";import"./OpsSubnav-CjDTnp64.js";/* empty css */import"./left-BjS1dKNV.js";import"./content-DkZDzzx3.js";import"./HomeHero-DXJo2QSO.js";import"./TailView-_gKWfaQM.js";import"./SlidePanel-CETQ5NTx.js";import"./observe-BLmy4quB.js";import"./agent-lanes-model-tc-1hE6q.js";import"./home-moving-signal-PHSqSBu_.js";import"./home-live-action-BkqGLVRY.js";import"./cpu-CHFIGw87.js";import"./file-code-corner-jlGFdr8d.js";import"./right-CqC4Qdot.js";import"./left-MmTJf1tK.js";import"./mesh-view-store-CBM1za_N.js";import"./mesh-buckets-CLYS8Jx8.js";import"./content-CI4gLEWi.js";import"./MeshScreen-DuNvpDC5.js";import"./MeshCanvas-DZv2ipsy.js";import"./chunk-T65CQEWV-H2QEKfr1.js";import"./useAgentHoverCard-BgTLNcF-.js";import"./local-agents-VP1-ZlPw.js";/* empty css */import"./right-BveAPKBW.js";import"./left-P80i5V8L.js";import"./mesh-ops-CKSWgax2.js";import"./use-mesh-ops-items-BjyeFJTz.js";import"./content-Bw_8GE_S.js";import"./use-scout-dev-flags-DTseRrFi.js";import"./right-D91j9d5Y.js";import"./left-DPcM9o8Y.js";import"./left-agents-7mJsiNyr.js";import"./left-default-COK26l3H.js";import"./left-lanes-Dbdm9Veu.js";import"./lane-roster-store-DN2jxXF-.js";import"./left-mission-DqGR5jby.js";import"./mission-control-store-CM8mQGg8.js";import"./MissionLeftAgentRow-CbQm4BLv.js";import"./page-status-BE0-J1xY.js";import"./left-advisor-CbXVzAqS.js";import"./server-WY6gsbZz.js";import"./layers-CW2-qHsG.js";import"./gauge-DSflSery.js";import"./content-CnnzWOE3.js";import"./OpsScreen-CJBwshEp.js";/* empty css */import"./AgentLanesView-96lHsoX7.js";/* empty css */import"./AgentFloorView-DuyvyMMj.js";/* empty css */import"./AgentLanesPreflight-CCGBArIb.js";import"./AgentLaneChrome-Dv2lBFoH.js";import"./AgentLaneCard-Cc9uyfBr.js";/* empty css */import"./AgentLaneSummaryResize-Di4u6df2.js";import"./agent-lane-card-model-CY3OE1Xu.js";import"./agent-lane-preview-BhplDYGf.js";import"./agent-lane-detail-ppJId6Jc.js";import"./AgentLaneDetailSheet-CGqtqSHQ.js";import"./LaneTraceDetailSheet-DNIECgEl.js";import"./LaneTraceEventFocus-BB5DhFQm.js";import"./MissionControlView-DmaThhNR.js";/* empty css */import"./MissionContextRail-DnCWPzAM.js";import"./mission-wall-CocIM1cF.js";import"./mission-control-model-C0fByIjm.js";import"./MissionFocusOverlay-K21ssTxv.js";import"./MissionLogPane-BLvSSIdT.js";import"./OpsAgentsView-vIoY-AW1.js";/* empty css */import"./DataTable-C6aMSilS.js";/* empty css */import"./HostAdvisorView-DeJ-8RZV.js";/* empty css */import"./layout-grid-BoVnPOk-.js";import"./AtopView-D7vyQDtE.js";import"./content-Ds-zs-Ss.js";import"./RepoDiffPageScreen-DbqX4L3q.js";import"./RepoDiffViewerLazy-DzfoFhbl.js";import"./ReposScreen-CzbO1Fuy.js";/* empty css */import"./selection-bridge-qBGFCJv8.js";import"./right-DVUq5374.js";import"./content-Bk5DKhyP.js";import"./KnowledgeSearchScreen-_rxJNUUh.js";/* empty css */import"./clock-_9FDplIT.js";import"./KnowledgeSearchInspector-W_zNIBRV.js";import"./content-evaBfvxD.js";import"./SessionsScreen-B-McKw6d.js";import"./RawSessionsTable-CzGhEdiZ.js";import"./FlightObserveScreen-BTe1YRPr.js";/* empty css */import"./right-CpTB_-Ya.js";import"./content-Df7ndXTG.js";import"./SettingsScreen-BEzYFdjz.js";import"./StatusPill-BllrY-eg.js";import"./AgentConfigurationScreen-DDc3udYM.js";import"./CastPicker-CkgTalIt.js";import"./SettingsDrawer-CPB32w0n.js";import"./credentials-BTce3VP1.js";import"./VoicePermissionsPanel-C4vkU-sU.js";import"./left-CL-TVLJ7.js";import"./chunk-YOZR3KYS-CrCgXw9l.js";import"./session-table-uJh3v-ly.js";import"./Terminal-DWyZTZdY.js";/* empty css */import"./HerdrSession-DsuxCtfX.js";import"./TerminalHeaderMount-CY7uIWBg.js";import"./right-Dt1wOwA5.js";import"./content-BTmnk2bl.js";import"./WorkDetailScreen-DqGnuK0e.js";import"./WorkFilesViewer-D8-4vF5l.js";import"./right-DtzqIZQF.js";import"./agent-autocomplete-BlK8wY06.js";import"./gestures-YA5IIwp-.js";import"./rocket-CnxqjX_K.js";function xt(){const{route:o,navigate:e,agents:r}=v();return t.jsx(it,{children:et(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:l}=v(),[a]=at("openscout.scoutbot.collapsed",!0),[m,d]=ct("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(c=>{const p=c[0];p&&h(p.contentRect.height)});return S.observe(y),()=>S.disconnect()},[]),n.useEffect(()=>{if(u<=0)return;const y=H(m,u);y!==m&&d(y)},[u,m,d]);const j=n.useCallback(y=>{const S=y.clientY,c=m,p=g.current?.getBoundingClientRect().height??u,f=z=>{const Y=z.clientY-S;d(H(c-Y,p))},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,m,d]);let b=null;const x=o&&e.view==="ops"&&e.mode==="lanes";if(x)b=t.jsx(U,{forceExpanded:!0,fill:!0});else switch(e.view){case"ops":b=t.jsx(st,{mode:e.mode??"mission",agents:i,navigate:r,returnRoute:e});break;case"broker":b=t.jsx(nt,{selectedAttempt:s,navigate:r,onClose:l});break;default:b=ot(e,r)}const A=u>0?H(m,u):m,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(U,{height:a?void 0:A})]})}const J="openscout.globalJumpDock.mode.v1";function Ct(){if(typeof window>"u")return null;try{const o=window.localStorage.getItem(J);return o==="jump"||o==="minimap"?o:null}catch{return null}}function Rt(o){try{window.localStorage.setItem(J,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 l=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:()=>l("jump"),"aria-pressed":i==="jump",children:"jump"}),r&&t.jsx("button",{type:"button",className:`gjd-mode-btn${i==="minimap"?" gjd-mode-btn--active":""}`,onClick:()=>l("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(lt,{}):t.jsx(Et,{navigate:e})})]})}const Ot=pt();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 It(){const{route:o,navigate:e}=v();return t.jsxs("div",{className:"scout-left-shell",children:[t.jsx("div",{className:"scout-left-shell-rail",children:rt(o,e)}),t.jsx(Tt,{})]})}function Nt(){const o=q(),e=V(),r=mt({url:o,healthUrl:e,autoConnect:!0,sessionKey:"scout-terminal"});return t.jsx("div",{style:{height:"100%",background:"#0d0d0d",overflow:"hidden"},children:t.jsx(dt,{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 Z(W(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:W(e)}const I=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 N({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:{...Jt,opacity:r||i?.5:1,cursor:r||i?"default":"pointer"},children:i?"Working…":o}),t.jsx("button",{type:"button",onClick:s,style:Kt,onMouseEnter:l=>{l.currentTarget.style.color="rgba(255,255,255,0.8)"},onMouseLeave:l=>{l.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),[l,a]=n.useState(null),m=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(N,{eyebrow:`First-run setup · Step ${o} of ${I}`,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:K,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:l}),t.jsx(P,{primary:"Initialize Scout",onPrimary:()=>{m()},busy:i})]})}function Ft({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),i=e?.operatorNameSuggestion??"",[s,l]=n.useState(i),[a,m]=n.useState(!1),[d,g]=n.useState(null);n.useEffect(()=>{!s&&i&&l(i)},[i,s]);const u=async()=>{const h=s.trim();if(!h){g("Name is required.");return}m(!0),g(null);try{await E("/api/user",{method:"POST",body:JSON.stringify({name:h})}),await r()}catch(j){g(C("identity",j))}finally{m(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(N,{eyebrow:`Identity · Step ${o} of ${I}`,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=>{l(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",[l,a]=n.useState([s]),[m,d]=n.useState(i),[g,u]=n.useState("claude"),[h,j]=n.useState(!1),[b,x]=n.useState(null),A=(c,p)=>{a(f=>f.map((k,z)=>z===c?p:k))},R=()=>a(c=>[...c,""]),y=c=>a(p=>p.filter((f,k)=>k!==c)),S=async()=>{const c=l.map(f=>f.trim()).filter(Boolean),p=m.trim();if(!p){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:p,sourceRoots:c,defaultHarness:g})}),await r()}catch(f){x(C("project",f))}finally{j(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(N,{eyebrow:`Project · Step ${o} of ${I}`,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:[l.map((c,p)=>t.jsxs("div",{style:{display:"flex",gap:8},children:[t.jsx("input",{value:c,onChange:f=>A(p,f.target.value),placeholder:p===0?s:"Add another folder",style:{...L,flex:1}}),t.jsx("button",{type:"button",onClick:()=>y(p),disabled:l.length<=1,style:{...G,opacity:l.length<=1?.4:1,cursor:l.length<=1?"default":"pointer"},"aria-label":`Remove folder ${p+1}`,children:"−"})]},p)),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:m,onChange:c=>d(c.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(c=>{const p=g===c;return t.jsxs("button",{type:"button",onClick:()=>u(c),style:{...Yt,borderColor:p?"var(--accent, #2dd4bf)":"rgba(255,255,255,0.12)",backgroundColor:p?"rgba(45,212,191,0.08)":"rgba(255,255,255,0.02)"},children:[t.jsx("div",{style:{fontSize:15,fontWeight:600,textTransform:"capitalize"},children:c}),t.jsx("div",{style:{fontSize:12,color:"rgba(255,255,255,0.55)",marginTop:6,lineHeight:1.5},children:c==="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:c==="claude"?"Requires the Claude Code CLI, installed and signed in.":"Requires the Codex CLI, installed and signed in."})]},c)})}),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:!m.trim()})]})}function Ut({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),[i,s]=n.useState(!1),[l,a]=n.useState(null),m=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(N,{eyebrow:`Setup · Step ${o} of ${I}`,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:K,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:l}),t.jsx(P,{primary:"Run setup",onPrimary:()=>{m()},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)"},Jt={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"},Kt={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"},K={display:"flex",flexDirection:"column",gap:20,margin:0,padding:0,listStyle:"none"},Yt={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"},qt=[{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 Mesh",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(tt,{initialTheme:e,children:i})}),leftPanel:{title:"Navigation"},rightPanel:{title:"Context"},slots:{Content:xt,LeftPanel:It,Inspector:wt,Takeover:Dt,Terminal:Nt},intents:qt,hooks:{useCommands:vt,useStatus:yt,useNavCenter:ft,useNavActions:ht,useLayoutMode:gt,useTakeover:ut}}}Vt();export{Vt as createScoutApp};
@@ -0,0 +1 @@
1
+ import{u as q,a as ie,s as Pe,S as Oe}from"./scope-views-KPY85UUx.js";import{b as Al,i as Il,c as Tl,d as Rl}from"./scope-views-KPY85UUx.js";import{ad as pe,ae as Me,a1 as $e,a2 as Fe,a3 as Be,a4 as We,a5 as de,a6 as ze,a7 as Ge,a8 as He,af as Ke,a9 as Ve,ag as Ue,Q as qe,U as Ye,T as Ze,k as Je,h as Se}from"./router-kfcaYqZr.js";import{ah as Pl,ai as Ol,aj as Ml,ak as $l,al as Fl,am as Bl,an as Wl,ao as zl,ap as Gl,aq as Hl,V as Kl,ar as Vl,as as Ul,at as ql,R as Yl}from"./router-kfcaYqZr.js";import{r as d,j as r,X as le,E as Qe}from"./index-C1VaWNuD.js";import{A as Jl,R as Ql,N as Xl,Y as ec,P as tc,Z as sc,W as oc,O as nc,V as rc,D as ac,$ as ic,a0 as lc}from"./index-C1VaWNuD.js";import{u as ve}from"./Provider-D0bB7q6y.js";import{S as Xe}from"./ScoutSurface-NlhDsPzg.js";import{resolveContentPane as et}from"./resolve-panes-DhD5qmQO.js";import{i as tt}from"./model-CBkMvT1w.js";import{t as st}from"./bash-format-BRV5C6Gv.js";import{t as be}from"./time-Dhsh_2EG.js";import{i as ot,l as xe,j as nt,k as rt,m as at,e as it,g as lt,n as ct,r as pt,A as K,D as dt,h as ut}from"./agent-lanes-model-tc-1hE6q.js";import{S as mt}from"./SlidePanel-CETQ5NTx.js";import{H as ft}from"./HarnessMark-DttReffF.js";import{o as ht,f as gt,b as _t}from"./lane-observe-vfyACHi0.js";import{S as Le}from"./SessionObserve-BVeTkcIl.js";import{LaneTraceEventFocus as St}from"./LaneTraceEventFocus-BB5DhFQm.js";import{b as vt}from"./agent-lane-detail-ppJId6Jc.js";import{r as bt,u as xt}from"./AgentLanesView-96lHsoX7.js";import{u as Lt}from"./observe-BLmy4quB.js";import{f as wt}from"./terminal-sessions-Bdt2W3Y4.js";import{o as Nt,i as yt}from"./surface-activity-B1rgWB1i.js";import{AgentFloorView as jt}from"./AgentFloorView-DuyvyMMj.js";import{i as kt,c as Et,n as ue}from"./keyboard-nav-B8sQ_8IF.js";import{a as Ct}from"./api-Co9aQ2Jw.js";import{RawSessionsTable as At}from"./RawSessionsTable-CzGhEdiZ.js";import{SessionRefScreen as It}from"./SessionRefScreen-DetLMkTT.js";import{TailView as Tt}from"./TailView-_gKWfaQM.js";import{c as Rt,b as Dt,u as Pt,r as Ot}from"./hooks-ME7rmhpE.js";import"./perf-PX8Rx0EP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./sse-B29iGBnw.js";import"./index-BWHgHrtv.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./conversation-model-C2KuZUXc.js";import"./index-Cx6Gbr6n.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";import"./content-CLCtp9Rb.js";import"./ActivityScreen-sfonf5SR.js";import"./clipboard-e3fSpeo7.js";import"./mentions-BZ5SBMtc.js";import"./AgentDetailCard-8viaEY8b.js";import"./AgentLiveActions-DlSKL60c.js";import"./terminal-takeover-BMeBjBB2.js";import"./openContent-C6XO6kr5.js";import"./eye-C9cGk5z6.js";import"./terminal-UDy4lzV1.js";import"./EmptyState-CKPWFSjq.js";/* empty css */import"./left-DLpsDi55.js";/* empty css */import"./AgentAvatar-Dz79iTxB.js";import"./SpriteAvatar-DFO4Kb4Z.js";import"./CrewAvatar-CZ_faQ_s.js";import"./content-DnGmb2L0.js";import"./AgentInfoScreen-qntgg2q2.js";/* empty css */import"./BackToPicker-BHicJyfc.js";import"./ObservedTopologyPanel-CJVqIqQ2.js";import"./AgentsScreen-hZ4o2I-e.js";/* empty css */import"./AgentsSubnav-Ci7uWM7P.js";import"./SecondaryNav-Cs0_FQdj.js";import"./secondaryNavConfig-C0Srrmy8.js";import"./message-square-BLiFqpe_.js";import"./compass-BdpImt_W.js";import"./settings-DQEtqkM9.js";import"./git-branch-Bc_eDIpG.js";import"./scroll-text-DFcBYy5J.js";import"./library-COnWzUWv.js";/* empty css */import"./AgentSessions-DV9v34aq.js";import"./profile-BCvk8jOQ.js";import"./context-budget-DqxWzalx.js";import"./session-catalog-CG4oL_yN.js";import"./terminal-relay-CXHMdain.js";import"./ConversationScreen-DIU7m_aC.js";import"./ConversationComposer-BUIjWMBi.js";import"./zap-Bcja1lHG.js";import"./message-markup-DC0QFEZn.js";import"./message-visibility-CGOmSSKs.js";import"./operator-attention-RqieiSY8.js";import"./sessionRead-CvFz2RHv.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-Bt2RBj93.js";import"./AstronautSuit-CwB4Dw07.js";import"./ConversationFeedRows-Bx0gFyG_.js";import"./ConversationPanels-o6W-cOoU.js";import"./tail-display-DcliDVkW.js";import"./lane-edit-display-C_Aujldz.js";import"./use-reduced-motion-CPoX8iV2.js";import"./proxy-DVDRhSRR.js";import"./activity-CzTJ-YMX.js";import"./message-circle-joGFxfj1.js";import"./tail-events-LK29oCKm.js";import"./ConversationStatus-CTYOywFh.js";import"./check-Dz2SRHft.js";import"./sparkles-D0vWLTyC.js";import"./AgentDefinitionsWorkspace-DHDS9Pgd.js";import"./agent-specialization-CtF_jI34.js";import"./project-overview-helpers-BQTc_Ous.js";import"./FileViewerPane-CxNbcTYf.js";/* empty css */import"./agent-essentials-K9B6kbTS.js";import"./lane-tool-detail-0WhMf4Vj.js";import"./LaneToolHoverCard-t7-XJP-h.js";import"./lane-ask-display-B6iCAVcd.js";import"./ObserveTextFlow-DCJ5EmD8.js";import"./SessionObserveEvidence-BkOezTGV.js";import"./wrench-BfVeded5.js";import"./external-link-BvX5PfLh.js";/* empty css *//* empty css */import"./right-B_08ilv6.js";import"./openAgent-Dbv5wfuL.js";import"./TmuxPeek-CqTJRhkI.js";import"./refresh-cw-Bkh7Cvnd.js";import"./ProjectsRail-kMDA0yn4.js";import"./AddProjectForm-fXndbzXT.js";import"./projects-inbox-DFbgVlXL.js";import"./ProjectsScreen-BDaJYhc0.js";import"./ProjectsInbox-Bq29DE_o.js";import"./ui-LM8pS8qE.js";import"./CrewWorkspaces-DNX-QQ1h.js";import"./sliders-horizontal-57e99_qO.js";import"./useEmbedHeadline-DuUnwTB7.js";import"./api-HFH8wFyb.js";import"./cache-CeWH_KzJ.js";import"./arrow-up-right-B09GPwFl.js";import"./session-ref-lookup-state-SATH_jAP.js";/* empty css */import"./ProjectAgentProfile-Br1eTD7G.js";import"./ProjectAgentProfileBar-CUzZ4Rpx.js";import"./ProjectsThreadAside-B940p3vW.js";import"./content-JIWSyC0f.js";import"./BriefingDetailScreen-B-wD_Bot.js";import"./scoutbot-markdown-yb87JlSE.js";/* empty css */import"./BriefingsScreen-Cn4Mbam9.js";import"./content-Q3TIYC8q.js";import"./BrokerScreen-C8FQ5rlg.js";import"./status-tone-BM_zuRy1.js";import"./broker-display-Q75fupqG.js";import"./BrokerMetadataPanel-BJSwU9XZ.js";import"./DispatchAftermath-ZCEB75hh.js";import"./follow-route-BvcGtBIL.js";import"./ShikiPane-C0TuCATU.js";import"./arrow-down-BAGkhHA6.js";import"./paperclip-Br7wUDFl.js";import"./plus-BWKhylds.js";import"./send-horizontal-CS7mxVhX.js";import"./copy-BzdzWsQd.js";import"./radio-CxIXS1nU.js";import"./bot-WxKXYtEX.js";import"./left-BRu9pnqx.js";import"./conversation-prefs-DNre-Lcx.js";import"./use-fleet-active-asks-CCGrll5q.js";import"./agent-master-model-DMcHeNq3.js";import"./use-conversation-list-UG-tMN67.js";import"./RailRow-B88JVr62.js";/* empty css */import"./content-C_FAGTNk.js";import"./MessagesScreen-dNNPFwAc.js";import"./AgentMasterScreen-DHrMuQ6_.js";/* empty css */import"./right-DaLRhYl3.js";import"./CodeScreen-cLC0tJ4S.js";import"./CodeDiffPane-DfluIWmO.js";import"./usePierreRuntime-35AHf9RQ.js";/* empty css */import"./CodeProjectPicker-By_Wz9ex.js";/* empty css */import"./content-DKlY98pO.js";import"./FollowScreen-CkR-okdL.js";import"./content-0RBfbCIJ.js";import"./HarnessesScreen-COO_Q8VY.js";import"./useContentSecondaryNav-CoIoz7JU.js";import"./OpsSubnav-CjDTnp64.js";/* empty css */import"./left-BjS1dKNV.js";import"./content-DkZDzzx3.js";import"./HomeHero-DXJo2QSO.js";import"./persistent-state-BubPQ7tT.js";import"./home-moving-signal-PHSqSBu_.js";import"./home-live-action-BkqGLVRY.js";import"./cpu-CHFIGw87.js";import"./file-code-corner-jlGFdr8d.js";import"./right-CqC4Qdot.js";import"./left-MmTJf1tK.js";import"./mesh-view-store-CBM1za_N.js";import"./mesh-buckets-CLYS8Jx8.js";import"./content-CI4gLEWi.js";import"./MeshScreen-DuNvpDC5.js";import"./MeshCanvas-DZv2ipsy.js";import"./chunk-T65CQEWV-H2QEKfr1.js";import"./useAgentHoverCard-BgTLNcF-.js";import"./local-agents-VP1-ZlPw.js";/* empty css */import"./right-BveAPKBW.js";import"./left-P80i5V8L.js";import"./mesh-ops-CKSWgax2.js";import"./use-mesh-ops-items-BjyeFJTz.js";import"./content-Bw_8GE_S.js";import"./use-scout-dev-flags-DTseRrFi.js";import"./right-D91j9d5Y.js";import"./left-DPcM9o8Y.js";import"./left-agents-7mJsiNyr.js";import"./left-default-COK26l3H.js";import"./left-lanes-Dbdm9Veu.js";import"./lane-roster-store-DN2jxXF-.js";import"./left-mission-DqGR5jby.js";import"./mission-control-store-CM8mQGg8.js";import"./MissionLeftAgentRow-CbQm4BLv.js";import"./page-status-BE0-J1xY.js";import"./left-advisor-CbXVzAqS.js";import"./server-WY6gsbZz.js";import"./layers-CW2-qHsG.js";import"./gauge-DSflSery.js";import"./content-CnnzWOE3.js";import"./OpsScreen-CJBwshEp.js";/* empty css */import"./MissionControlView-DmaThhNR.js";/* empty css */import"./MissionContextRail-DnCWPzAM.js";import"./agent-lane-preview-BhplDYGf.js";import"./mission-wall-CocIM1cF.js";import"./mission-control-model-C0fByIjm.js";import"./MissionFocusOverlay-K21ssTxv.js";import"./MissionLogPane-BLvSSIdT.js";import"./OpsAgentsView-vIoY-AW1.js";/* empty css */import"./DataTable-C6aMSilS.js";/* empty css */import"./HostAdvisorView-DeJ-8RZV.js";/* empty css */import"./layout-grid-BoVnPOk-.js";import"./AtopView-D7vyQDtE.js";/* empty css *//* empty css */import"./AgentLanesPreflight-CCGBArIb.js";import"./AgentLaneChrome-Dv2lBFoH.js";import"./AgentLaneCard-Cc9uyfBr.js";/* empty css */import"./AgentLaneSummaryResize-Di4u6df2.js";import"./agent-lane-card-model-CY3OE1Xu.js";import"./AgentLaneDetailSheet-CGqtqSHQ.js";import"./LaneTraceDetailSheet-DNIECgEl.js";import"./content-Ds-zs-Ss.js";import"./RepoDiffPageScreen-DbqX4L3q.js";import"./RepoDiffViewerLazy-DzfoFhbl.js";import"./ReposScreen-CzbO1Fuy.js";/* empty css */import"./selection-bridge-qBGFCJv8.js";import"./right-DVUq5374.js";import"./content-Bk5DKhyP.js";import"./KnowledgeSearchScreen-_rxJNUUh.js";/* empty css */import"./clock-_9FDplIT.js";import"./KnowledgeSearchInspector-W_zNIBRV.js";import"./content-evaBfvxD.js";import"./SessionsScreen-B-McKw6d.js";import"./FlightObserveScreen-BTe1YRPr.js";/* empty css */import"./right-CpTB_-Ya.js";import"./content-Df7ndXTG.js";import"./SettingsScreen-BEzYFdjz.js";import"./StatusPill-BllrY-eg.js";import"./AgentConfigurationScreen-DDc3udYM.js";import"./CastPicker-CkgTalIt.js";import"./SettingsDrawer-CPB32w0n.js";import"./credentials-BTce3VP1.js";import"./VoicePermissionsPanel-C4vkU-sU.js";import"./left-CL-TVLJ7.js";import"./chunk-YOZR3KYS-CrCgXw9l.js";import"./session-table-uJh3v-ly.js";import"./Terminal-DWyZTZdY.js";/* empty css */import"./HerdrSession-DsuxCtfX.js";import"./chunk-JTPDIGGW-COJ00z94.js";import"./TerminalHeaderMount-CY7uIWBg.js";import"./right-Dt1wOwA5.js";import"./content-BTmnk2bl.js";import"./WorkDetailScreen-DqGnuK0e.js";import"./WorkFilesViewer-D8-4vF5l.js";import"./right-DtzqIZQF.js";import"./RealtimeVoiceScreen-CyP1CWsX.js";import"./agent-autocomplete-BlK8wY06.js";import"./gestures-YA5IIwp-.js";import"./rocket-CnxqjX_K.js";function Mt(e){return e?`${e[0]?.toUpperCase()}${e.slice(1)}`:"local"}function $t(e){const t=st(e.trim()),s=t.replace(/\/+$/u,"").split(/[\\/]/u).filter(Boolean);return s.length===0?t:s.slice(-2).join("/")}function Ft(e){const t=e?.trim();return t?t.replace(/\.jsonl$/u,"").slice(0,8):"—"}function F(e,t=Date.now()){const{agent:s,source:o,observe:n,lastActiveAt:l}=e,c=s.harness?.trim()||o,p=ot(n),i=$t(s.cwd||s.project||s.projectRoot||"—"),a=p?`${c} · live`:`${c} · ${be(l??t)}`;return{source:Mt(c),sessionRef:Ft(s.harnessSessionId),path:i,statusLine:a,live:p}}const Bt={think:"Thought",tool:"Tool",ask:"Request",message:"Message",note:"Note",system:"System",boot:"Boot"};function Wt({lane:e,event:t,nowMs:s=Date.now()}){const{agent:o,observe:n,source:l,lastActiveAt:c}=e,p=d.useMemo(()=>vt(e),[e]),i=F(e,s),a=t??n?.events?.at(-1),f=a?Bt[a.kind]??a.kind:null,g=n?.metadata?.session?.sessionStart,_=a?ht(a,g):null,h=_!=null?gt(_,c):void 0,m=_!=null?_t(_):void 0,u=a?.kind==="tool"||a?.kind==="ask"?a:void 0;return r.jsxs("div",{className:"scope-lane-detail",children:[r.jsxs("header",{className:"scope-lane-detail__head",children:[r.jsxs("div",{className:"scope-lane-detail__copy",children:[r.jsx("span",{className:"scope-lane-detail__kicker",children:"Lane trace"}),r.jsxs("h2",{className:"scope-lane-detail__title",children:[i.source,r.jsxs("span",{className:"scope-lane-detail__ref",children:[" · ",i.sessionRef]})]}),r.jsxs("div",{className:"scope-lane-detail__sub",children:[i.path,f?` · ${f}`:"",c?` · ${be(c)}`:""]})]}),r.jsx(ft,{harness:o.harness??p.harness,size:18,className:"scope-lane-detail__hmark"})]}),r.jsxs("dl",{className:"scope-lane-detail__meta","aria-label":"Session stats",children:[r.jsxs("div",{className:"scope-lane-detail__stat",children:[r.jsx("dt",{children:"events"}),r.jsx("dd",{children:p.events})]}),r.jsxs("div",{className:"scope-lane-detail__stat",children:[r.jsx("dt",{children:"tools"}),r.jsx("dd",{children:p.tools})]}),r.jsxs("div",{className:"scope-lane-detail__stat",children:[r.jsx("dt",{children:"files"}),r.jsx("dd",{children:p.files})]}),r.jsxs("div",{className:"scope-lane-detail__stat",children:[r.jsx("dt",{children:"model"}),r.jsx("dd",{children:p.model??"—"})]}),r.jsxs("div",{className:"scope-lane-detail__stat",children:[r.jsx("dt",{children:"branch"}),r.jsx("dd",{children:p.branch??"—"})]}),r.jsxs("div",{className:"scope-lane-detail__stat",children:[r.jsx("dt",{children:"status"}),r.jsx("dd",{children:i.statusLine})]})]}),r.jsx("div",{className:"scope-lane-detail__trace",children:r.jsx(Le,{data:n??void 0,agentId:l==="scout"?o.id:void 0,sessionId:o.harnessSessionId??p.sessionId,showRail:!1,variant:"default",surface:"scope",initialCursorT:a?.t,focusEventId:a?.id,inlineFocusEventId:u?.id,inlineFocusContent:u?r.jsx(St,{event:u,wallLabel:h,wallTitle:m,variant:"inline"}):void 0})})]})}function we({target:e,onClose:t}){const{lane:s,event:o}=e,n=F(s);return r.jsxs(mt,{open:!0,onClose:t,side:"right",owner:"scope.lane-trace",layer:"elevated",resizable:!0,defaultSize:980,minSize:560,maxSize:1280,scrollLock:!0,ariaLabel:`${n.source} ${n.sessionRef} trace`,className:"scope-lane-trace-sheet","data-scope-presentation":!0,children:[r.jsx("div",{className:"scope-lane-trace-sheet__toolbar",children:r.jsx("button",{type:"button",className:"scope-lane-trace-sheet__close",onClick:t,"aria-label":"Close",children:"×"})}),r.jsx(Wt,{lane:s,event:o})]})}function zt(e,t){const[s,o]=d.useState(()=>pe(e));d.useEffect(()=>{o(pe(e))},[e]);const n=d.useCallback(u=>{Me(u),o(u)},[]),l=d.useMemo(()=>bt({autoLanes:t,deck:s,defaultWidthTier:e}),[t,s,e]),c=d.useCallback((u,S="pinned_left")=>{n($e(s,{laneId:u.id,title:xe(u.agent,u.source),zone:S,width:s.laneWidths[u.id]}))},[s,n]),p=d.useCallback(u=>{n(Fe(s,u))},[s,n]),i=d.useCallback((u,S)=>{n(Be(s,u,S))},[s,n]),a=d.useCallback(u=>{n(We(s,u))},[s,n]),f=d.useCallback((u,S)=>{n(de(s,{kind:"harness",title:S??`${u} sessions`,harness:u,zone:"pinned_left",width:s.defaultLaneWidth}))},[s,n]),g=d.useCallback(()=>{n(de(s,{kind:"attention",title:"Needs attention",zone:"pinned_left",width:"sm"}))},[s,n]),_=d.useCallback(()=>{n(ze(s))},[s,n]),h=d.useCallback(u=>Ge(s,u),[s]),m=d.useCallback(u=>He(s,u),[s]);return{deck:s,layout:l,pinLane:c,unpinLane:p,setLaneWidth:i,setDefaultLaneWidth:a,addHarnessLane:f,addAttentionLane:g,clearPins:_,isPinned:h,pinnedZone:m}}const Ne=le("lanes-horizon"),Gt=6e4,Ht=160;function Kt(){try{const e=sessionStorage.getItem(Ne);if(e&&K.some(t=>t.key===e))return e}catch{}return dt}function ye({scoutAgents:e,defaultWidthTier:t="md",harnessFilter:s,projectFilter:o,horizonOverride:n}){const[l,c]=d.useState(Date.now()),[p,i]=d.useState(Kt),a=n??p,[f,g]=d.useState([]),[_,h]=d.useState(()=>new Set),m=ut(),u=nt(a),S=rt(a),{discovery:v,events:b,loadState:k}=xt({includeTranscriptReplay:!0,discoveryIntervalMs:Gt,discoveryLimit:Ht,recentLimit:m,recentWindowMs:u,pauseWhenHidden:!0});d.useEffect(()=>{const x=setInterval(()=>c(Date.now()),1e4);return()=>clearInterval(x)},[]),d.useEffect(()=>{let x=!1;const N=async()=>{if(yt())try{const ee=await wt({includeDiscovered:!1});x||g(ee)}catch{x||g([])}};N();const I=setInterval(()=>{N()},1e4),X=Nt(()=>{N()});return()=>{x=!0,clearInterval(I),X()}},[]),d.useEffect(()=>{try{sessionStorage.setItem(Ne,p)}catch{}},[p]);const y=d.useRef(at()),T=d.useMemo(()=>e.filter(x=>it(x,l,a)),[e,l,a]),C=Lt(T,{pauseWhenHidden:!0}),R=k.discovery==="loading"||k.recent==="loading";d.useEffect(()=>{if(_.size===0)return;const x=setTimeout(()=>h(new Set),900);return()=>clearTimeout(x)},[_]);const{lanes:w,issues:A,freshLaneIds:D}=d.useMemo(()=>{const x=lt({transcripts:v?.transcripts??[],tailEvents:b,processes:v?.processes??[],scoutAgents:e,terminalSessions:f,observeCache:C,now:l,workingOnly:!0,horizon:a}),N=ct(x.lanes,y.current),I=[...pt(v),...x.issues];return{lanes:N.lanes,issues:I,freshLaneIds:N.newLaneIds}},[v,b,e,f,C,l,a]);d.useEffect(()=>{if(A.length!==0)for(const x of A)console.warn(`[agent-lanes] ${x.message}`,x)},[A]),d.useEffect(()=>{D.length!==0&&h(x=>{const N=new Set(x);for(const I of D)N.add(I);return N})},[D.join("\0")]);const O=d.useMemo(()=>w.filter(x=>Ut(x,{harnessFilter:s,projectFilter:o})),[w,s,o]),{deck:W,layout:Z,setLaneWidth:J,setDefaultLaneWidth:Q}=zt(t,O);return{profileId:Ke,now:l,horizon:a,setHorizon:i,horizonLabel:S,traceWindowMs:u,lanes:O,issues:A,newLaneIds:_,tailLoading:R,deck:W,layout:Z,setLaneWidth:J,setDefaultLaneWidth:Q,activeFilterLabel:qt({harnessFilter:s,projectFilter:o})}}function me(e){const t=e?.trim().toLowerCase();return t||null}function se(e){return e.trim().toLowerCase().replace(/['"]/gu,"").replace(/[^a-z0-9]+/gu,"-").replace(/^-+|-+$/gu,"")}function Vt(e){return e.trim().replace(/\/+$/u,"").split(/[\\/]/u).filter(Boolean).pop()?.trim()||null}function fe(e,t){if(!t)return!0;const s=se(t);return e.some(o=>{const n=o?.trim();if(!n)return!1;const l=n.toLowerCase(),c=Vt(n);return l===t||se(n)===s||!!(c&&(c.toLowerCase()===t||se(c)===s))})}function Ut(e,t){const s=me(t.harnessFilter),o=me(t.projectFilter),{agent:n,facts:l,source:c}=e;return fe([n.harness,n.definitionId,l?.attribution,c],s)&&fe([n.project,n.projectRoot,n.cwd,l?.cwd],o)}function qt(e){return[e.harnessFilter?.trim()?`harness ${e.harnessFilter.trim()}`:"",e.projectFilter?.trim()?`project ${e.projectFilter.trim()}`:""].filter(Boolean).join(" · ")}function Yt(e){return e?`${e[0]?.toUpperCase()}${e.slice(1)}`:"local"}function Zt(e){const t=new Map;for(const s of e){const o=s.agent.harness?.trim()||s.source,n=t.get(o)??[];n.push(s),t.set(o,n)}return[...t.entries()].map(([s,o])=>{const n=[...o].sort((c,p)=>(p.lastActiveAt??0)-(c.lastActiveAt??0)),l=n.filter(c=>F(c).live).length;return{harness:s,label:Yt(s),lanes:n,liveCount:l}}).sort((s,o)=>o.lanes.length-s.lanes.length)}function Jt({lane:e,nowMs:t,onOpen:s}){const o=F(e,t),n=e.observe?.events?.length??0,l=c=>{(c.key==="Enter"||c.key===" ")&&(c.preventDefault(),s(e))};return r.jsxs("div",{className:`scope-dir__row${o.live?" is-live":""}`,role:"button",tabIndex:0,onClick:()=>s(e),onKeyDown:l,"aria-label":`${o.source} ${o.sessionRef}`,children:[r.jsx("span",{className:`scope-dir__dot${o.live?" is-live":""}`,"aria-hidden":!0}),r.jsx("span",{className:"scope-dir__ref",children:o.sessionRef}),r.jsx("span",{className:"scope-dir__path",title:e.agent.cwd??e.agent.project??void 0,children:o.path}),r.jsxs("span",{className:"scope-dir__events",children:[n,r.jsx("span",{className:"scope-dir__unit",children:"ev"})]}),r.jsx("span",{className:"scope-dir__status",children:o.statusLine})]})}function Qt({navigate:e,agents:t}){const s=q(),{now:o,horizonLabel:n,lanes:l,tailLoading:c}=ye({scoutAgents:t,defaultWidthTier:"md"}),p=d.useMemo(()=>Zt(l),[l]),[i,a]=d.useState(null),f=d.useCallback(h=>{const m=h.observe?.events?.at(-1);m&&a({lane:h,event:m})},[]),g=l.length,_=p.reduce((h,m)=>h+m.liveCount,0);return r.jsxs("div",{className:"scope-dir","data-scope-presentation":!0,...s,children:[r.jsx("header",{className:"scope-dir__bar",children:r.jsxs("div",{className:"scope-dir__summary",children:[r.jsxs("span",{className:"scope-dir__count",children:[g," instance",g===1?"":"s"]}),_>0?r.jsxs("span",{className:"scope-dir__live",children:[_," live"]}):null,r.jsxs("span",{className:"scope-dir__window",children:["window ",n]})]})}),p.length===0?r.jsx("div",{className:"scope-dir__empty",children:c?"Discovering sessions…":"No sessions discovered for this workspace."}):r.jsx("div",{className:"scope-dir__body",children:p.map(h=>r.jsxs("section",{className:"scope-dir__group",children:[r.jsxs("header",{className:"scope-dir__group-head",children:[r.jsx("span",{className:"scope-dir__group-name",children:h.label}),r.jsx("span",{className:"scope-dir__group-kind",children:"runtime"}),r.jsxs("span",{className:"scope-dir__group-counts",children:[h.lanes.length," ",h.lanes.length===1?"instance":"instances",h.liveCount?` · ${h.liveCount} live`:""]})]}),r.jsx("div",{className:"scope-dir__list",role:"list",children:h.lanes.map(m=>r.jsx(Jt,{lane:m,nowMs:o,onOpen:f},m.id))})]},h.harness))}),i?r.jsx(we,{target:i,onClose:()=>a(null)}):null]})}function Xt({laneId:e,grabbed:t,onKeyMove:s,onDragStart:o,onDragEnd:n}){const l=i=>{if(!(!i.altKey||!s)){if(i.key==="ArrowLeft"||i.key==="ArrowUp"){i.preventDefault(),i.stopPropagation(),s("before");return}(i.key==="ArrowRight"||i.key==="ArrowDown")&&(i.preventDefault(),i.stopPropagation(),s("after"))}},c=i=>{i.stopPropagation();const a=i.dataTransfer;if(!a)return;a.setData("text/plain",e),a.effectAllowed="move";const f=i.currentTarget.closest("[data-lane-id]");f instanceof HTMLElement&&(a.setDragImage(f,Math.min(48,f.clientWidth/2),18),f.classList.add("is-dragging")),o?.(e)},p=i=>{i.currentTarget.closest("[data-lane-id]")?.classList.remove("is-dragging"),n?.()};return r.jsx("span",{className:"scope-lane__drag",role:"button",tabIndex:0,draggable:!0,"aria-grabbed":t?"true":"false","aria-keyshortcuts":"Alt+ArrowLeft Alt+ArrowRight Alt+ArrowUp Alt+ArrowDown","aria-label":"Drag to reorder lane. Drop in a gutter for a new column. Alt+arrow keys also move.",title:"Drag to reorder · drop in gutters for a new column",onClick:i=>i.stopPropagation(),onKeyDown:l,onDragStart:c,onDragEnd:p,children:"⠿"})}const es=["sm","md","lg"],ts={sm:"¼",md:"½",lg:"full"},ss={sm:"Quarter row",md:"Half row",lg:"Full row"};function je({value:e,defaultValue:t,onChange:s,compact:o=!1,label:n="Lane width",variant:l="tier"}){const c=typeof e=="string"?e:t,p=l==="grid";return r.jsx("div",{className:`scope-lane-width${o?" is-compact":""}${p?" is-grid":""}`,role:"group","aria-label":n,onClick:i=>i.stopPropagation(),onKeyDown:i=>i.stopPropagation(),children:es.map(i=>r.jsx("button",{type:"button",className:`scope-lane-width__btn${c===i?" is-on":""}`,"aria-pressed":c===i,title:p?ss[i]:`${i.toUpperCase()} column width`,onClick:()=>s(i),children:p?ts[i]:i},i))})}function os({lane:e,layoutMode:t,compact:s,laneWidth:o,defaultLaneWidth:n,onLaneWidthChange:l,nowMs:c,traceWindowMs:p,traceWindowLabel:i,onOpenTrace:a,onTraceEventSelect:f,onDragStart:g,onDragEnd:_,onDragKeyMove:h,focusProps:m}){const{agent:u,observe:S,source:v}=e,b=F(e,c),k=!!(S&&S.events.length>0),y=m?.ref,T=m?{"data-cursor":m["data-cursor"],tabIndex:m.tabIndex,onFocus:m.onFocus}:void 0,C=()=>{const w=S?.events?.at(-1);a(e,w)},R=w=>{(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),C())};return r.jsxs("article",{ref:y,"data-lane-id":e.id,className:["scope-lane",b.live?"is-live":"",m?.["data-cursor"]?"is-cursor":"",s?"is-stack-compact":"",t==="grid"?"is-grid":""].filter(Boolean).join(" "),...T,children:[r.jsxs("header",{className:`scope-lane__head${s?" is-compact":""}`,role:"button",tabIndex:0,onClick:w=>{w.target instanceof HTMLElement&&w.target.closest(".scope-lane__drag")||C()},onKeyDown:R,"aria-label":`${b.source} ${b.sessionRef}`,children:[r.jsx(Xt,{laneId:e.id,onKeyMove:h,onDragStart:g,onDragEnd:_}),r.jsx("span",{className:"scope-lane__live","aria-hidden":"true"}),r.jsxs("div",{className:"scope-lane__meta",children:[r.jsxs("span",{className:"scope-lane__source",children:[b.source,r.jsxs("span",{className:"scope-lane__ref",children:[" · ",b.sessionRef]})]}),r.jsx("span",{className:"scope-lane__path",title:u.cwd??u.project??void 0,children:b.path}),s?null:r.jsx("span",{className:"scope-lane__status",children:b.statusLine}),l&&(t==="grid"||!s)?r.jsx(je,{value:o,defaultValue:n,onChange:l,compact:!0,label:`${b.sessionRef} width`,variant:t==="grid"?"grid":"tier"}):null]})]}),r.jsx("section",{className:"scope-lane__trace","aria-label":`${xe(u,v)} trace · ${i}`,children:k?r.jsx(Le,{data:S??void 0,agentId:v==="scout"?u.id:void 0,sessionId:u.harnessSessionId,showRail:!1,variant:"lane",surface:"scope",nowMs:c,traceWindowMs:p,traceWindowLabel:i,onLaneEventSelect:w=>f(e,w)}):r.jsx("div",{className:"scope-lane__empty",children:"waiting for events"})})]})}function ns({space:e,layoutMode:t,widthPx:s,gridSpan:o,children:n}){const l=t==="swim"?{"--scope-lane-width":`${s}px`}:t==="grid"&&o?{gridColumn:`span ${o}`}:void 0;return r.jsx("div",{className:`scope-lane-space${t==="grid"?" is-grid":""}`,style:l,"data-split":e.ids.length,"data-orient":e.orient,"data-grid-span":t==="grid"?o:void 0,children:r.jsx("div",{className:"scope-lane-space__lanes",children:n})})}const rs=[{key:"swim",label:"swim"},{key:"grid",label:"grid"},{key:"floor",label:"floor"}];function as({liveCount:e,horizon:t,horizonLabel:s,layoutMode:o,laneWidth:n,onHorizonChange:l,onLayoutChange:c,onLaneWidthChange:p}){const i=o==="floor";return r.jsxs("header",{className:"scope-lanes-bar",children:[r.jsxs("div",{className:"scope-lanes-bar__summary",children:[r.jsxs("span",{className:"scope-lanes-bar__count",children:[e," lane",e===1?"":"s"]}),r.jsx("span",{className:"scope-lanes-bar__window",children:i?"past 30m · lanes 4h":`window ${s}`})]}),r.jsxs("div",{className:"scope-lanes-bar__controls",children:[r.jsx("div",{className:"scope-lanes-bar__layouts",role:"group","aria-label":"Lane layout",children:rs.map(a=>r.jsx("button",{type:"button",className:`scope-lanes-bar__layout${o===a.key?" is-on":""}`,"aria-pressed":o===a.key,onClick:()=>c(a.key),children:a.label},a.key))}),i?null:r.jsxs(r.Fragment,{children:[r.jsx(je,{value:n,defaultValue:n,onChange:p,label:"Default column width",variant:o==="grid"?"grid":"tier"}),r.jsx("div",{className:"scope-lanes-bar__horizons",role:"group","aria-label":"Activity window",children:K.map(a=>r.jsx("button",{type:"button",className:`scope-lanes-bar__horizon${t===a.key?" is-on":""}`,"aria-pressed":t===a.key,onClick:()=>l(a.key),children:a.label},a.key))})]})]})]})}const V=.22,ce=.46,$=14,U=12,oe={mode:null,before:!0,slotIndex:-1,stackBand:0,targetAgentId:null};function G(e,t){return[...t.querySelectorAll(".scope-lane-space")].indexOf(e)}function is(e){return[...e.querySelectorAll("[data-lane-id]")].map(t=>t.getAttribute("data-lane-id")).filter(t=>!!t)}function z(e){return e?.querySelector("[data-lane-id]")??null}function ke(e,t){const s=e.filter(n=>{const l=n.getBoundingClientRect();return t>=l.top-$&&t<=l.bottom+$});if(!s.length)return[];const o=s[0].getBoundingClientRect().top;return e.filter(n=>Math.abs(n.getBoundingClientRect().top-o)<=$)}function E(e){return{before:!1,stackBand:0,targetAgentId:null,label:"",previewColumn:!1,col:null,...e}}function ls(e,t,s){const o=[...e.querySelectorAll(".scope-lane-space")];if(!o.length)return null;const n=ke(o,s);if(!n.length)return null;const l=n[0].getBoundingClientRect().top,c=Math.max(...n.map(f=>f.getBoundingClientRect().bottom));if(s<l-$||s>c+$)return null;const p=n[0].getBoundingClientRect(),i=G(n[0],e),a=Math.max(U*3,p.width*V);if(t<=p.left+a)return E({mode:"reorder",before:!0,slotIndex:i,slot:n[0],col:z(n[0]),label:"new column",previewColumn:!0});for(let f=0;f<n.length;f+=1){const g=n[f],_=g.getBoundingClientRect(),h=G(g,e),m=n[f+1],u=Math.max(U*3,_.width*V);if(m){const S=m.getBoundingClientRect(),v=_.right-u*.4,b=S.left+u*.4;if(t>=v&&t<=b){const k=(_.right+S.left)/2;if(t<k)return E({mode:"reorder",before:!1,slotIndex:h,slot:g,col:z(g),label:"new column",previewColumn:!0});const y=G(m,e);return E({mode:"reorder",before:!0,slotIndex:y,slot:m,col:z(m),label:"new column",previewColumn:!0})}continue}if(t>=_.right-u)return E({mode:"reorder",before:!1,slotIndex:h,slot:g,col:z(g),label:"new column",previewColumn:!0})}return null}function cs(e,t,s,o,n,l){const c=s.closest(".scope-lane-space");if(!c)return null;const p=s.getBoundingClientRect(),i=c.getBoundingClientRect(),a=G(c,o),f=is(c),g=(t-p.top)/p.height,_=(e-p.left)/p.width,h=(e-i.left)/i.width;if(g<ce){if(h<V)return E({mode:"reorder",before:!0,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0});if(h>1-V)return E({mode:"reorder",before:!1,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0});const S=_<.5;return E({mode:"reorder",before:S,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0})}const m=c.dataset.orient||"row";if(l<=1){const S=_<.5;return E({mode:"reorder",before:S,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0})}if(m==="column"&&f.length>=l&&!f.includes(n)){const S=_<.5;return E({mode:"reorder",before:S,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0})}const u=ps(c,t);return E({mode:"stack",stackBand:u.band,targetAgentId:s.getAttribute("data-lane-id"),slotIndex:a,slot:c,col:s,label:u.label,stackPreview:u.preview})}function H(e){const t=e.top+e.height*ce;return{top:t,left:e.left,width:e.width,height:Math.max(24,e.bottom-t)}}function he(e,t){return t<=1?e>=1:e>=t}function ps(e,t){const s=e.getBoundingClientRect(),o=[...e.querySelectorAll("[data-lane-id]")];if(!o.length)return{band:0,label:"stack",preview:H(s)};if(o.length===1){const p=o[0].getBoundingClientRect(),i=p.top+p.height*ce,a=p.top+p.height*.5,f=t<a?0:1,g=f===0?{top:i,left:s.left,width:s.width,height:Math.max(18,a-i)}:H(s);return{band:f,label:f===0?"stack above":"stack below",preview:g}}let n=o.length;for(let p=0;p<o.length;p+=1){const i=o[p].getBoundingClientRect();if(t<i.top+i.height/2){n=p;break}}let l;if(he(n,o.length))l=H(s);else if(n===0){const p=o[0].getBoundingClientRect();l={top:p.top,left:s.left,width:s.width,height:Math.max(18,p.height*.5)}}else{const p=o[n-1].getBoundingClientRect(),i=o[n].getBoundingClientRect();l={top:(p.bottom+i.top)/2-10,left:s.left,width:s.width,height:20}}const c=n===0?"stack top":he(n,o.length)?"stack bottom":"stack between";return{band:n,label:c,preview:l}}function ds(e,t,s,o,n){const l=document.elementFromPoint(e,t);if(l&&s.contains(l)){const c=l.closest("[data-lane-id]"),p=c?.getAttribute("data-lane-id");if(c&&p&&p!==o&&!c.classList.contains("is-dragging"))return cs(e,t,c,s,o,n)}return ls(s,e,t)}function us(e){return e.querySelector(".scope-lane-space")?.getBoundingClientRect().width||360}function ms(e){return[e.mode,e.slotIndex,e.before,e.stackBand,e.targetAgentId,e.label,e.previewColumn,e.col?.getAttribute("data-lane-id")].join("|")}function fs(e,t,s,o){const n=t.getBoundingClientRect(),l=s.slot.getBoundingClientRect();if(s.mode==="stack"){const g=s.stackPreview??H(l),_=s.label==="stack below"||s.label==="stack bottom";e.hidden=!1,e.className=`scope-lane-drop is-band${_?" is-bottom-stack":""}`,e.dataset.mode="stack",e.dataset.label=s.label||"",e.style.transform=`translate(${g.left-n.left+t.scrollLeft}px, ${g.top-n.top+t.scrollTop}px)`,e.style.width=`${g.width}px`,e.style.height=`${g.height}px`;return}if(s.previewColumn){const g=us(t),_=[...t.querySelectorAll(".scope-lane-space")],h=ke(_,l.top+l.height/2),m=(h.length?h:[s.slot]).map(b=>b.getBoundingClientRect()),u=Math.max(...m.map(b=>b.height),l.height),S=Math.min(...m.map(b=>b.top)),v=Math.max(0,s.before?l.left-n.left+t.scrollLeft-g-U/2:l.right-n.left+t.scrollLeft+U/2);e.hidden=!1,e.className="scope-lane-drop is-column",e.dataset.mode="column",e.dataset.label=s.label||"",e.style.transform=`translate(${v}px, ${S-n.top+t.scrollTop}px)`,e.style.width=`${g}px`,e.style.height=`${u}px`;return}const c=s.slot.dataset.orient||"row";let p,i,a,f;c==="column"?(p=l.left-n.left+t.scrollLeft,i=(s.before?l.top:l.bottom)-n.top+t.scrollTop-2,a=l.width,f=3):(p=(s.before?l.left:l.right)-n.left+t.scrollLeft-2,i=l.top-n.top+t.scrollTop,a=3,f=l.height),e.hidden=!1,e.className="scope-lane-drop is-line",e.dataset.mode="reorder",e.dataset.label=s.label||"",e.style.transform=`translate(${p}px, ${i}px)`,e.style.width=`${a}px`,e.style.height=`${f}px`}function ne(e,t,s={}){!s.keepIndicator&&t&&(t.hidden=!0,t.className="scope-lane-drop",delete t.dataset.label,delete t.dataset.mode,t.style.transform="",t.style.width="",t.style.height=""),e&&(e.querySelectorAll(".scope-lane-space").forEach(o=>{delete o.dataset.dropZone}),e.querySelectorAll("[data-lane-id].is-drop-target").forEach(o=>{o.classList.remove("is-drop-target"),delete o.dataset.dropZone,delete o.dataset.dropLabel}))}function hs({stackMax:e,onReorder:t,onStack:s,indicatorRef:o}){const n=d.useRef(null),l=d.useRef(null),c=d.useRef(oe),p=d.useRef(""),i=d.useCallback(h=>{n.current?.closest(".scope-lanes")?.classList.toggle("is-dragging",h)},[]),a=d.useCallback(h=>{l.current=h,p.current="",c.current=oe,i(!0)},[i]),f=d.useCallback(()=>{l.current=null,p.current="",c.current=oe,ne(n.current,o.current),i(!1)},[o,i]),g=d.useCallback(h=>{const m=l.current;if(!m)return;h.preventDefault(),h.dataTransfer.dropEffect="move";const u=n.current,S=o.current;if(!u||!S)return;const v=ds(h.clientX,h.clientY,u,m,e);if(!v){p.current&&(p.current="",ne(u,S));return}const b=ms(v);if(b===p.current)return;const k=!!(p.current&&v.mode==="reorder");p.current=b,c.current={mode:v.mode,before:v.before,slotIndex:v.slotIndex,stackBand:v.stackBand??0,targetAgentId:v.targetAgentId??null},ne(u,S,{keepIndicator:k}),v.col&&(v.col.classList.add("is-drop-target"),v.col.dataset.dropZone=v.mode,v.label&&(v.col.dataset.dropLabel=v.label)),v.slot.dataset.dropZone=v.mode,fs(S,u,v)},[o,e]),_=d.useCallback(h=>{h.preventDefault();const m=h.dataTransfer.getData("text/plain")||l.current,u=c.current;if(!m||u.slotIndex<0||!u.mode){f();return}u.mode==="stack"?s(m,u.slotIndex,u.stackBand):t(m,u.slotIndex,u.before),f()},[f,t,s]);return d.useEffect(()=>{const h=m=>{m.key!=="Escape"||!l.current||f()};return window.addEventListener("keydown",h),()=>window.removeEventListener("keydown",h)},[f]),{scrollRef:n,onDragStart:a,onDragEnd:f,scrollDragProps:{onDragEnter:h=>{l.current&&h.preventDefault()},onDragOver:g,onDrop:_}}}const re=le("lane-spaces"),gs=2,_s=6,B=4;function Ss(e){const t=Number(e);return Number.isFinite(t)?Math.min(_s,Math.max(gs,Math.round(t))):B}function Y(e){if(Array.isArray(e))return{ids:e.filter(s=>typeof s=="string"),orient:"row"};if(e&&typeof e=="object"&&Array.isArray(e.ids)){const t=e;return{ids:t.ids.filter(o=>typeof o=="string"),orient:t.orient==="column"?"column":"row"}}return{ids:[],orient:"row"}}function vs(e,t,s=B){const o=new Set(t),n=new Set,l=[];for(const c of e){const p=Y(c),i=p.ids.filter(g=>o.has(g)&&!n.has(g));if(i.forEach(g=>n.add(g)),!i.length)continue;const a=i.length===1?"row":p.orient,f=a==="column"?s:4;l.push({ids:i.slice(0,f),orient:a})}for(const c of t)n.has(c)||(l.push({ids:[c],orient:"row"}),n.add(c));return l}function ge(e,t,s=B){return t.length?vs(t,e,s):e.map(o=>({ids:[o],orient:"row"}))}function Ee(e,t){return e.map(s=>{const o=Y(s),n=o.ids.filter(l=>l!==t);return n.length?{ids:n,orient:n.length===1?"row":o.orient}:null}).filter(s=>s!==null)}function bs(e,t,s,o){const n=Ee(e,t),l=Math.min(o?s:s+1,n.length);return n.splice(l,0,{ids:[t],orient:"row"}),n}function xs(e,t,s,o,n=B){const l=Ee(e,t),p=[...Y(l[s]??{ids:[],orient:"row"}).ids],i=Math.min(Math.max(0,o),p.length);p.splice(i,0,t);const a=p.slice(0,n);return l[s]={ids:a,orient:a.length>1?"column":"row"},l}function Ls(){try{const e=sessionStorage.getItem(re);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.map(Y).filter(s=>s.ids.length>0):[]}catch{return[]}}function ws(e){try{if(!e.length){sessionStorage.removeItem(re);return}sessionStorage.setItem(re,JSON.stringify(e))}catch{}}function Ns(e,t=B){const s=d.useMemo(()=>e.map(m=>m.lane.id),[e]),o=d.useMemo(()=>new Map(e.map(m=>[m.lane.id,m])),[e]),[n,l]=d.useState(()=>Ls()),[c,p]=d.useState(()=>n.length>0),i=d.useMemo(()=>c?ge(s,n,t):ge(s,[],t),[s,c,t,n]);d.useEffect(()=>{c&&ws(i)},[c,i]);const a=d.useCallback(m=>{p(!0),l(m)},[]),f=d.useCallback((m,u,S)=>{a(bs(i,m,u,S))},[a,i]),g=d.useCallback((m,u,S,v=t)=>{a(xs(i,m,u,S,v))},[a,i,t]),_=d.useMemo(()=>i.map(m=>({space:m,columns:m.ids.map(u=>o.get(u)).filter(u=>u!==void 0)})).filter(m=>m.columns.length>0),[o,i]),h=d.useMemo(()=>_.flatMap(m=>m.columns),[_]);return{spaces:i,resolvedSpaces:_,flatColumns:h,reorderLane:f,stackLane:g,stackMax:Ss(t)}}function ys({lanes:e,onOpenTrace:t,onHorizonChange:s}){const[o,n]=d.useState(-1),l=d.useRef(new Map);d.useEffect(()=>{if(o<0)return;if(o>=e.length){n(e.length-1);return}const i=e[o];if(!i)return;const a=l.current.get(i.id);a?.scrollIntoView({block:"nearest",inline:"nearest"}),a?.focus()},[o,e]);const c=d.useCallback((i,a)=>{a?l.current.set(i,a):l.current.delete(i)},[]);d.useEffect(()=>{const i=a=>{if(!document.querySelector(".scope-lanes")||kt(a.target)||Et()||e.length===0)return;const f=Number(a.key)-1;if(!a.metaKey&&!a.ctrlKey&&!a.altKey&&f>=0&&f<K.length){a.preventDefault(),s(K[f].key);return}if(a.key==="ArrowRight"||a.key==="ArrowDown"||a.key==="j"){a.preventDefault(),n(g=>ue(g,e.length,1));return}if(a.key==="ArrowLeft"||a.key==="ArrowUp"||a.key==="k"){a.preventDefault(),n(g=>ue(g,e.length,-1));return}if(a.key==="Home"||a.key==="g"&&!a.shiftKey){a.preventDefault(),n(0);return}if(a.key==="End"||a.key==="G"){a.preventDefault(),n(e.length-1);return}if(a.key==="Enter"||a.key===" "){const g=o<0?0:o,_=e[g];if(!_)return;a.preventDefault(),n(g),t(_,_.observe?.events?.at(-1))}};return window.addEventListener("keydown",i),()=>window.removeEventListener("keydown",i)},[o,e,s,t]);const p=d.useCallback((i,a)=>({"data-cursor":o===i?!0:void 0,tabIndex:o===i?0:-1,ref:f=>c(a,f),onFocus:()=>n(i)}),[o,c]);return{focusedIndex:o,getLaneFocusProps:p}}const Ce=4;function Ae(e){switch(e){case"sm":return 1;case"md":return 2;case"lg":return Ce}}function js(e,t){if(e==="sm"||e==="md"||e==="lg")return e;if(typeof e=="number"&&Number.isFinite(e)){const{tier:s,px:o}=Ve(e);if(s)return s;let n=t,l=Number.POSITIVE_INFINITY;for(const[c,p]of Object.entries(Ue)){const i=Math.abs(p-o);i<l&&(l=i,n=c)}return n}return t}function ks(e,t){return Ae(js(e,t))}function Es(e,t){return e.length?Math.max(...e.map(s=>ks(s,t))):Ae(t)}const ae=le("lanes-layout");function Ie(e){return e==="swim"||e==="grid"||e==="floor"}function Cs(){try{const e=sessionStorage.getItem(ae);if(Ie(e))return e}catch{}return"swim"}function _e(){if(typeof window>"u")return null;const e=new URLSearchParams(window.location.search).get("layout")?.trim().toLowerCase();return Ie(e)?e:null}function As(){const[e,t]=d.useState(()=>_e()??Cs()),s=d.useCallback(o=>{t(o);try{sessionStorage.setItem(ae,o)}catch{}typeof window>"u"||qe({searchPatch:{layout:o==="swim"?null:o},replace:!0})},[]);return d.useEffect(()=>{const o=_e();if(o&&o!==e){t(o);try{sessionStorage.setItem(ae,o)}catch{}}},[e]),{layoutMode:e,setLayoutMode:s}}function Is({message:e}){return r.jsx("li",{className:"scope-lanes__issue",children:r.jsx("span",{className:"scope-lanes__issue-msg",children:e})})}function Ts({navigate:e,agents:t}){const s=q(),{layoutMode:o,setLayoutMode:n}=As(),l=o==="floor",{now:c,horizon:p,setHorizon:i,horizonLabel:a,traceWindowMs:f,lanes:g,layout:_,deck:h,setLaneWidth:m,setDefaultLaneWidth:u,activeFilterLabel:S,issues:v,tailLoading:b}=ye({scoutAgents:t,defaultWidthTier:"md",horizonOverride:l?"4h":void 0}),{resolvedSpaces:k,flatColumns:y,reorderLane:T,stackLane:C,stackMax:R}=Ns(_.flat),w=o==="grid",[A,D]=d.useState(null),O=d.useRef(null),{scrollRef:W,onDragStart:Z,onDragEnd:J,scrollDragProps:Q}=hs({stackMax:R,onReorder:T,onStack:C,indicatorRef:O}),x=d.useCallback(L=>{W.current=L},[W]),N=d.useCallback((L,M)=>{const P=M??L.observe?.events?.at(-1);P&&D({lane:L,event:P})},[]),I=d.useMemo(()=>{const L=new Map;return y.forEach((M,P)=>L.set(M.lane.id,P)),L},[y]),{getLaneFocusProps:X}=ys({lanes:y.map(L=>L.lane),onOpenTrace:N,onHorizonChange:i}),ee=d.useMemo(()=>b?"Loading sessions…":S?`No lanes match ${S} in the last ${a}.`:`No sessions with recent work in the last ${a}.`,[S,a,b]);return r.jsxs("div",{className:`scope-lanes${o==="grid"?" is-grid":""}`,"data-scope-presentation":!0,"data-scope-view":"lanes","data-scope-layout":o,"data-grid-cols":w?Ce:void 0,style:{"--scope-lane-stack-max":String(R)},...s,children:[r.jsx(as,{liveCount:l?g.length:y.length,horizon:p,horizonLabel:a,layoutMode:o,laneWidth:h.defaultLaneWidth,onHorizonChange:i,onLayoutChange:n,onLaneWidthChange:u}),v.length>0?r.jsx("div",{className:"scope-lanes__issues",role:"status","aria-live":"polite",children:r.jsx("ul",{className:"scope-lanes__issues-list",children:v.map(L=>r.jsx(Is,{message:L.message},L.id))})}):null,(l?g.length:y.length)===0?r.jsx("div",{className:"scope-lanes__empty",children:ee}):l?r.jsx(jt,{lanes:g,now:c,onOpenTrace:N}):r.jsx("div",{className:"scope-lanes__canvas",role:"listbox","aria-label":"Session lanes",children:r.jsxs("div",{ref:x,className:`scope-lanes__scroll${o==="grid"?" is-grid":""}`,...Q,children:[k.map((L,M)=>{const P=L.space.orient==="column"&&L.columns.length>1,Te=Math.max(...L.columns.map(j=>j.widthPx)),Re=w?Es(L.columns.map(j=>h.laneWidths[j.lane.id]??h.defaultLaneWidth),h.defaultLaneWidth):void 0;return r.jsx(ns,{space:L.space,layoutMode:o,widthPx:Te,gridSpan:Re,children:L.columns.map(j=>{const De=I.get(j.lane.id)??0;return r.jsx(os,{lane:j.lane,layoutMode:o,compact:P,laneWidth:h.laneWidths[j.lane.id]??h.defaultLaneWidth,defaultLaneWidth:h.defaultLaneWidth,onLaneWidthChange:te=>m(j.lane.id,te),nowMs:c,traceWindowMs:f,traceWindowLabel:a,onOpenTrace:N,onTraceEventSelect:N,onDragStart:Z,onDragEnd:J,onDragKeyMove:te=>{T(j.lane.id,M,te==="before")},focusProps:X(De,j.lane.id)},j.key)})},L.space.ids.join(":"))}),r.jsx("div",{ref:O,className:"scope-lane-drop","aria-hidden":"true",hidden:!0})]})}),A?r.jsx(we,{target:A,onClose:()=>D(null)}):null]})}const Rs=1e4;function Ds({route:e,navigate:t}){const s=q(),[o,n]=d.useState(null),[l,c]=d.useState(null),p=d.useCallback(async()=>{c(null);try{n(await Ct("/api/tail/discover"))}catch(f){c(f instanceof Error?f.message:String(f))}},[]);d.useEffect(()=>{p();const f=setInterval(()=>{p()},Rs);return()=>clearInterval(f)},[p]);const i=o?.transcripts?.length??0,a=o?.processes?.length??0;return e.sessionId?r.jsx("div",{className:"scope-sessions-route","data-scope-view":"sessions",...s,children:r.jsx(It,{sessionRef:e.sessionId,navigate:t})}):r.jsx("div",{className:"scope-sessions-route","data-scope-view":"sessions",...s,children:r.jsxs("div",{className:"scope-sessions",children:[r.jsx("header",{className:"scope-sessions__bar",children:r.jsxs("div",{className:"scope-sessions__summary",children:[r.jsxs("span",{className:"scope-sessions__count",children:[i," session",i===1?"":"s"]}),a>0?r.jsxs("span",{className:"scope-sessions__live",children:[a," active"]}):null,l?r.jsx("span",{className:"scope-sessions__warn",children:"discovery error"}):null]})}),r.jsx("div",{className:"scope-sessions__body",children:r.jsx("div",{className:"scope-sessions__atop",children:r.jsx(At,{navigate:t})})})]})})}function Ps({navigate:e,tailQuery:t}){const s=q();return r.jsx("div",{className:"scope-tail-route","data-scope-view":"tail",...s,children:r.jsxs("div",{className:"scope-tail",children:[r.jsx("header",{className:"scope-tail__bar",children:r.jsxs("div",{className:"scope-tail__summary",children:[r.jsx("span",{className:"scope-tail__count",children:"tail"}),r.jsx("span",{className:"scope-tail__hint",children:"live event stream"}),t?r.jsxs("span",{className:"scope-tail__query",title:t,children:["q=",t]}):null]})}),r.jsx("div",{className:"scope-tail__body",children:r.jsx("div",{className:"scope-tail__stream",children:r.jsx(Tt,{navigate:e,initialFilter:t,variant:"tail",chrome:"embedded"})})})]})})}function Os(e,t,s,o){if(!Ye(o))return null;const n=Ze(e);if(!n)return null;switch(n){case"lanes":return r.jsx(Ts,{navigate:t,agents:s});case"tail":return e.view!=="ops"||e.mode!=="tail"?null:r.jsx(Ps,{navigate:t,tailQuery:e.tailQuery});case"sessions":return e.view!=="sessions"?null:r.jsx(Ds,{route:e,navigate:t});case"agents":return e.view!=="agents-v2"||tt(e)?null:r.jsx(Qt,{navigate:t,agents:s});default:return null}}function Ms(){const{route:e,navigate:t,agents:s}=ve(),{pathname:o}=Je(),n=Os(e,t,s,o);return r.jsx(Xe,{children:n??et(e,t,s)})}function $s(){const{route:e,navigate:t}=ve();return Ot({className:"scout-nav-tabs scout-nav-tabs--scope",brandTag:Qe,items:Oe,activeKey:Pe(e),navigate:t})}function Fs(){const e=ie(),t=Rt(),s=$s();return Se("nav.sidebar",!1)?null:e?s:t}function Bs(){const e=ie(),t=Dt();return Se("nav.sidebar",!1)?null:e?d.createElement("div",{className:"scout-nav-actions"}):t}function Ws(){const e=ie(),t=Pt();return e?{active:!1,dismissible:!0}:t}function kl(e){e.slots.Content=Ms,e.hooks.useNavCenter=Fs,e.hooks.useNavActions=Bs,e.hooks.useTakeover=Ws}export{Qe as SCOPE_BRAND_LABEL,Al as SCOPE_ENABLE_HINTS,Jl as SCOPE_FLAG_BUNDLE,Ql as SCOPE_FLAG_BUNDLE_ALIASES,Xl as SCOPE_FLAG_KEY,Pl as SCOPE_FLAG_REGISTRY_KEY,Ol as SCOPE_LANE_DECK_DEFAULTS,Ke as SCOPE_LANE_DECK_PROFILE,ec as SCOPE_LEGACY_FLAG_BUNDLE,tc as SCOPE_LEGACY_FLAG_KEY,sc as SCOPE_LEGACY_PATH_PREFIX,oc as SCOPE_LEGACY_PATH_SEGMENT,nc as SCOPE_PATH_PREFIX,rc as SCOPE_PATH_SEGMENT,ac as SCOPE_ROUTE_SEGMENTS,ic as SCOPE_STORAGE_PREFIX,Oe as SCOPE_TOP_NAV_ITEMS,Ms as ScopeAppContent,Qt as ScopeDirView,os as ScopeLaneColumn,Wt as ScopeLaneDetailView,we as ScopeLaneTraceSheet,as as ScopeLanesBar,Ts as ScopeLanesView,Ml as buildScopePath,$l as buildScopeRoutePath,lc as canonicalizeScopePathname,Il as isScopeOnboardingExempt,Ye as isScopePath,Fl as isScopePresentation,Bl as parseScopeRouteFromUrl,Wl as preserveLocationSearch,Os as resolveScopeContentPane,zl as routeBelongsInScopeNamespace,Ze as routeToScopeSegment,Gl as scopeInstrumentBundleLayer,Hl as scopeLaneDeckProfileId,Kl as scopePresentationAttrs,Tl as scopePresentationTitle,Vl as scopeRoutePath,le as scopeStorageKey,Ul as scopeSurfaceFlagDefinition,Pe as scopeTopNavKeyForRoute,ql as scopeViewSegment,Yl as segmentToRoute,ie as useScopePresentation,q as useScopePresentationAttrs,Rl as useScopeShellChrome,kl as wireScopeOntoScout};
@@ -0,0 +1 @@
1
+ import{e as r}from"./index-C1VaWNuD.js";var o=r();export{o as r};
@@ -1,2 +1,2 @@
1
- import{r as o,j as e}from"./index-DvLtl7rV.js";import{u as b}from"./Provider-CtXJeLrP.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"./colors-BtO5_zlx.js";import{a as j}from"./api-Co9aQ2Jw.js";import{c as T}from"./clipboard-e3fSpeo7.js";import{u as E}from"./sse-CD9MMUxl.js";import{t as v}from"./time-Dhsh_2EG.js";import{X as B}from"./x-CAbNespN.js";import{C as $}from"./check-ofKUE8yH.js";import{C as L}from"./copy-CWWAJ75H.js";import"./router-B9vQkNJL.js";import"./perf-PX8Rx0EP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-BQ6t92tJ.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-BJIamJOH.js";import"./DocumentFocusViewer-Do3wQ_3Z.js";import"./createLucideIcon-DezKXSG2.js";import"./TextDocumentSurface-BflAwXeZ.js";import"./file-text-CqJgwxmv.js";import"./chevron-right-D-HdlPg8.js";import"./code-xml-D7pOQM9l.js";import"./arrow-left-Czpf-AE4.js";import"./arrow-right-BuzMnLYP.js";import"./scout-voice-BVUqGhth.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-BLYDhL3Z.js";import"./NewChatComposer-_Stj0fZy.js";import"./text-BP3oyl8-.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-pM56HNhR.js";import"./conversation-model-Dc02NsGp.js";import"./index-zvhpRHao.js";import"./HarnessMark-B979GCSB.js";import"./NewChatOrigin-B1u7ki70.js";import"./chevron-down-wciXnOQz.js";import"./search-CDko0PKE.js";import"./chunk-HRAB3GC3-Tyv9rzx7.js";import"./index-BWHgHrtv.js";const P={mission:"Control",advisor:"Host Advisor",issues:"Alerts",tail:"Tail",atop:"Runtime",agents:"Agents",lanes:"Lanes"};function Ie({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")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?`${v(l.generatedAt)} refresh`:"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{Ie as OpsInspectorPanel,Ie as OpsRight};
1
+ import{r as o,j as e}from"./index-C1VaWNuD.js";import{u as b}from"./Provider-D0bB7q6y.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"./colors-BtO5_zlx.js";import{a as j}from"./api-Co9aQ2Jw.js";import{c as T}from"./clipboard-e3fSpeo7.js";import{u as E}from"./sse-B29iGBnw.js";import{t as v}from"./time-Dhsh_2EG.js";import{X as B}from"./x-DgmmnPKt.js";import{C as $}from"./check-Dz2SRHft.js";import{C as L}from"./copy-BzdzWsQd.js";import"./router-kfcaYqZr.js";import"./perf-PX8Rx0EP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Bdt2W3Y4.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./conversation-model-C2KuZUXc.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./keyboard-nav-B8sQ_8IF.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";import"./index-BWHgHrtv.js";const P={mission:"Control",advisor:"Host Advisor",issues:"Alerts",tail:"Tail",atop:"Runtime",agents:"Agents",lanes:"Lanes"};function Oe({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")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?`${v(l.generatedAt)} refresh`:"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{Oe as OpsInspectorPanel,Oe as OpsRight};
@@ -1 +1 @@
1
- import{r as l}from"./index-DvLtl7rV.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,v as d,k as e,x as f,m as i,A as m,g as n,T as r,w as u};
1
+ import{r as l}from"./index-C1VaWNuD.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,v as d,k as e,x as f,m as i,A as m,g as n,T as r,w as u};
@@ -1 +1 @@
1
- import{r as c}from"./index-DvLtl7rV.js";let s=null;const o=new Set;function d(e,t){return e===t?!0:!e||!t?!1:e.live===t.live&&e.harness===t.harness&&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 E(e){if(!p(s,e)){s=e;for(const t of o)t()}}function g(e){return o.add(e),()=>{o.delete(e)}}function i(){return s}function I(){return c.useSyncExternalStore(g,i,i)}let u=null;const l=new Set;function y(e){if(u!==e){u=e;for(const t of l)t()}}function h(e){return l.add(e),()=>{l.delete(e)}}function a(){return u}function F(){return c.useSyncExternalStore(h,a,a)}let f=null;function v(e){f=e}function R(){return f}export{y as a,F as b,R as g,E as p,v as s,I as u};
1
+ import{r as c}from"./index-C1VaWNuD.js";let s=null;const o=new Set;function d(e,t){return e===t?!0:!e||!t?!1:e.live===t.live&&e.harness===t.harness&&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 E(e){if(!p(s,e)){s=e;for(const t of o)t()}}function g(e){return o.add(e),()=>{o.delete(e)}}function i(){return s}function I(){return c.useSyncExternalStore(g,i,i)}let u=null;const l=new Set;function y(e){if(u!==e){u=e;for(const t of l)t()}}function h(e){return l.add(e),()=>{l.delete(e)}}function a(){return u}function F(){return c.useSyncExternalStore(h,a,a)}let f=null;function v(e){f=e}function R(){return f}export{y as a,F as b,R as g,E as p,v as s,I as u};
@@ -1 +1 @@
1
- import{c as a}from"./createLucideIcon-DezKXSG2.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
+ import{c as a}from"./createLucideIcon-Dv8H8m7J.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 +1 @@
1
- import{c as t}from"./createLucideIcon-DezKXSG2.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
+ import{c as t}from"./createLucideIcon-Dv8H8m7J.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};
@@ -0,0 +1,2 @@
1
+ import{r as u,j as a}from"./index-C1VaWNuD.js";/* empty css */import{u as mt,m as gt,j as vt,b as ht,o as ft}from"./Provider-D0bB7q6y.js";import{a as bt,b as wt,m as xt,r as Qe}from"./keyboard-nav-B8sQ_8IF.js";import{n as me,g as Be}from"./colors-BtO5_zlx.js";import{s as It,a as _,h as Te,q as ye,i as He,u as jt}from"./conversation-model-C2KuZUXc.js";import{l as yt,i as q,a as O,p as Ee,t as At,b as Ct}from"./conversation-prefs-DNre-Lcx.js";import{i as Rt,l as St,s as Ue}from"./sessionRead-CvFz2RHv.js";import{u as kt,f as pe,b as Mt}from"./use-fleet-active-asks-CCGrll5q.js";import{a as Ge,c as Oe,p as Nt,N as _e,g as $t,t as Lt}from"./agent-master-model-DMcHeNq3.js";import{t as te}from"./time-Dhsh_2EG.js";import{u as Pt}from"./use-conversation-list-UG-tMN67.js";import{b as Bt}from"./router-kfcaYqZr.js";import{a as Ye}from"./message-visibility-CGOmSSKs.js";import{R as Ae}from"./RailRow-B88JVr62.js";import"./api-Co9aQ2Jw.js";import"./perf-PX8Rx0EP.js";import"./sse-B29iGBnw.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Bdt2W3Y4.js";import"./AgentAvatar-Dz79iTxB.js";import"./SpriteAvatar-DFO4Kb4Z.js";import"./CrewAvatar-CZ_faQ_s.js";function de(e){const n=e.split("/").filter(Boolean);return n[n.length-1]??e}function Je(e){const n=e.replace(/\/+$/,"").split("/");return n[n.length-1]??e}function Tt(e,n){const s=de(n).toLowerCase(),c=e.filter(v=>!!v.projectRoot),l=c.filter(v=>Je(v.projectRoot).toLowerCase()===s),d=l.length>0?l:c,i=Et(d);return i?{label:(l.length>0?d.find(v=>v.projectRoot===i):[...d].sort((v,f)=>f.lastActivityAt-v.lastActivityAt)[0])?.project??de(n),canonicalRoot:i}:{label:de(n),canonicalRoot:null}}function Et(e){const n=new Map;for(const d of e){const i=n.get(d.projectRoot)??{count:0,latest:0};i.count+=1,i.latest=Math.max(i.latest,d.lastActivityAt),n.set(d.projectRoot,i)}let s=null,c=-1,l=-1;for(const[d,i]of n)(i.count>c||i.count===c&&i.latest>l)&&(s=d,c=i.count,l=i.latest);return s}function Ut(e,n,s,c){const l=new Map;for(const i of e){const w=It(i),v=i.agentId?n.get(i.agentId):void 0,f=v?.repoKey??null,g=v?.project??null,M=(i.agentName??_(i)).trim(),h=w?`channel:${i.id}`:f?`repo:${f.toLowerCase()}`:g?`project:${g.toLowerCase()}`:M?`name:${M.toLowerCase()}`:`dm:${i.id}`,A=w?_(i):f?de(f):g??M??_(i);let b=l.get(h);if(b||(b={key:h,label:A,isChannel:w,conversations:[],bestState:"blocked",latestUpdate:0,unreadCount:0,canonicalRoot:null},l.set(h,b)),b.conversations.push(i),b.latestUpdate=Math.max(b.latestUpdate,i.lastMessageAt??0),Rt(i.lastMessageAt,i.id,s)&&(b.unreadCount+=1),!w&&v){const P=me(v.state);Be(P)<Be(b.bestState)&&(b.bestState=P)}}for(const i of l.values()){if(i.key.startsWith("repo:")){const w=i.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}}),v=Tt(w,i.key.slice(5));i.label=v.label,i.canonicalRoot=v.canonicalRoot}i.conversations.sort((w,v)=>(v.lastMessageAt??0)-(w.lastMessageAt??0))}const d=Array.from(l.values());return d.sort((i,w)=>w.latestUpdate-i.latestUpdate),d}const We="scout:messages:rail:v1",ce={view:"agents",groupBy:"project"};let Ie=null;function Gt(e){return e==="agents"||e==="sessions"}function Ot(e){return e==="project"||e==="agent"||e==="day"||e==="state"}function _t(){if(Ie)return Ie;try{const e=window.localStorage.getItem(We);if(!e)return{...ce};const n=JSON.parse(e);return{view:Gt(n.view)?n.view:ce.view,groupBy:Ot(n.groupBy)?n.groupBy:ce.groupBy}}catch{return{...ce}}}function De(e){try{window.localStorage.setItem(We,JSON.stringify(e))}catch{Ie=e}return e}const Dt=12,Ft=[["project","Project"],["agent","Agent"],["day","Day"],["state","State"]];function Kn(){const{route:e,navigate:n,agents:s,apiConnection:c}=mt(),{sessions:l,loading:d,loadError:i,reload:w}=Pt(),[v,f]=u.useState(()=>St()),[g,M]=u.useState(()=>yt()),[h,A]=u.useState(""),[b,P]=u.useState(()=>new Set),[I,r]=u.useState(!1),[D,F]=u.useState(!1),[Q,ge]=u.useState(!1),[K,ne]=u.useState(()=>_t()),C=K.view,Re=u.useCallback(t=>{ne(o=>De({...o,view:t}))},[]),et=u.useCallback(t=>{ne(o=>De({...o,groupBy:t}))},[]),k=kt(),j=Bt(e),J=u.useMemo(()=>gt(s,j),[s,j]),R=u.useMemo(()=>{const t=new Map,o=J?s.filter(p=>J.has(p.id)):s;for(const p of o)t.set(p.id,p);return t},[s,J]),ve=e.view==="messages"||e.view==="conversation"||e.view==="agent-info"||e.view==="agents-v2"?e.conversationId:void 0,W=e.view==="messages"?e.agentId:void 0;u.useEffect(()=>{F(!1)},[h]);const z=u.useMemo(()=>vt(l,J,j),[l,J,j]),he=u.useMemo(()=>h?z.filter(t=>Fe(t,h)):z,[z,h]),X=u.useMemo(()=>{const t=o=>pe(k,o)?.updatedAt??0;return z.filter(o=>q(o.id,g)||!Te(o)?!1:pe(k,o)?.status==="needs_attention").sort((o,p)=>t(p)-t(o))},[z,g,k]),Z=u.useMemo(()=>h?X.filter(t=>Fe(t,h)):X,[X,h]),x=u.useMemo(()=>{const t=he.filter(S=>!q(S.id,g)),o=le(he.filter(S=>q(S.id,g))),p=t.filter(S=>O(S.id,g)).sort((S,Y)=>Ee(Y.id,g)-Ee(S.id,g)||(Y.lastMessageAt??0)-(S.lastMessageAt??0)),H=t.filter(S=>!O(S.id,g)),m=H.filter(ye),y=H.filter(Te),$=H.filter(He);return{pinned:p,channels:le(m),dms:le(y),observed:Ut(le($),R,v),archived:o}},[he,R,v,g]),N=u.useMemo(()=>{const t=new Map,o=[];for(const m of x.dms){if(!m.agentId){o.push(m);continue}const y=R.get(m.agentId),$=Ge(y,m.agentId),S=y?[...R.values()].filter(E=>Ge(E,E.id)===$):[],Y=Oe(S)??y,ut=Y?.name??m.agentName??m.agentId.split(".")[0]??m.agentId,L=t.get($);if(L){L.count+=1,L.memberAgentIds.includes(m.agentId)||L.memberAgentIds.push(m.agentId);const E=Oe([L.agent,y].filter(pt=>!!pt));L.agent=E,L.agentId=E?.id??[...L.memberAgentIds].sort()[0],L.name=E?.name??L.name;continue}t.set($,{agentId:Y?.id??m.agentId,agent:Y,name:ut,memberAgentIds:S.length>0?S.map(E=>E.id).sort():[m.agentId],latest:m,count:1})}const p=new Map;for(const m of t.values()){const y=Nt(m.agent),$=p.get(y);$?$.push(m):p.set(y,[m])}for(const m of p.values())m.sort((y,$)=>y.name.localeCompare($.name));return{projects:[...p.keys()].sort((m,y)=>m===_e?1:y===_e?-1:m.localeCompare(y)).map(m=>({label:m,entries:p.get(m)})),unassigned:o}},[x.dms,R]),oe=u.useMemo(()=>C==="sessions"?$t(x.dms,K.groupBy,R,k,Date.now()):[],[C,x.dms,K.groupBy,R,k]),Se=ht(),se=u.useCallback(t=>{M(o=>At(t,o))},[]),ae=u.useCallback(t=>{M(o=>Ct(t,o))},[]),B=u.useCallback(t=>{f(Ue(t.id)),n({view:"messages",conversationId:t.id,...j?{machineId:j}:{}})},[n,j]),tt=u.useCallback(t=>{n({view:"messages",agentId:t,...j?{machineId:j}:{}})},[n,j]),nt=u.useCallback(t=>{if(f(Ue(t.id)),t.agentId){n({view:"messages",agentId:t.agentId,threadId:t.id,...j?{machineId:j}:{}});return}n({view:"messages",conversationId:t.id,...j?{machineId:j}:{}})},[n,j]),V=u.useCallback((t,o)=>{const p=O(o.id,g),H=q(o.id,g),m=_(o);Se(t,[{kind:"action",label:"Open",onSelect:()=>B(o)},{kind:"separator"},{kind:"action",label:p?"Unpin":"Pin to top",onSelect:()=>se(o.id)},{kind:"action",label:H?"Unarchive":"Archive",onSelect:()=>ae(o.id)},{kind:"separator"},{kind:"action",label:"Copy name",onSelect:()=>{navigator.clipboard?.writeText(m).catch(()=>{})}}])},[g,B,se,ae,Se]),ot=t=>{P(o=>{const p=new Set(o);return p.has(t)?p.delete(t):p.add(t),p})},st=c.status==="offline"||ft(i),ke=u.useRef(null),Me=u.useRef(null),at=bt(),it=xt(()=>ke.current);wt(u.useCallback(()=>Me.current,[]));const fe=x.pinned.length,be=x.channels.length,rt=C==="agents"?N.projects.reduce((t,o)=>t+o.entries.length,0)+N.unassigned.length:oe.reduce((t,o)=>t+o.sessions.length,0),we=x.observed.reduce((t,o)=>t+o.conversations.length,0),ie=x.archived.length,Ne=fe+be+rt+we+ie,ct=I||!!h,xe=u.useMemo(()=>{const t=[];for(const o of Z)t.push({rowId:`ny-${o.id}`,id:o.id});for(const o of x.pinned)t.push({rowId:`pin-${o.id}`,id:o.id});if(C==="agents"){for(const o of N.projects)for(const p of o.entries)t.push({rowId:`agent-${p.agentId}`,id:`agent-${p.agentId}`});for(const o of N.unassigned)t.push({rowId:o.id,id:o.id})}else for(const o of oe)for(const p of o.sessions)t.push({rowId:p.id,id:p.id});for(const o of x.channels)t.push({rowId:o.id,id:o.id});for(const o of x.observed)for(const p of o.conversations)t.push({rowId:p.id,id:p.id});for(const o of x.archived)t.push({rowId:`arch-${o.id}`,id:o.id});return t},[Z,x,C,N,oe]),lt=e.view==="messages"?e.threadId:void 0,$e=u.useMemo(()=>{if(W){for(const t of N.projects)for(const o of t.entries)if(o.agentId===W||o.memberAgentIds.includes(W))return o.agentId;return W}},[W,N]),re=ve??(C==="sessions"?lt:void 0)??($e?`agent-${$e}`:void 0),T=u.useMemo(()=>({activeId:re,activeRowId:re?xe.find(t=>t.id===re)?.rowId:void 0,firstRowId:xe[0]?.rowId}),[re,xe]),Le=D||h?x.observed:x.observed.slice(0,Dt),Pe=Math.max(0,x.observed.length-Le.length),dt=t=>!!(h||b.has(t.key)||ve&&t.conversations.some(o=>o.id===ve)),ee=t=>a.jsx(je,{pinned:O(t.id,g),archived:q(t.id,g),onTogglePin:()=>se(t.id),onToggleArchive:()=>ae(t.id)});return a.jsxs("div",{className:"ctx-panel",children:[a.jsxs("div",{className:"ctx-panel-toolbar",children:[a.jsx("input",{ref:Me,type:"text",className:"ctx-panel-search-input",placeholder:"Filter… (/)",value:h,onChange:t=>A(t.target.value),onKeyDown:it}),X.length>0&&a.jsx("span",{className:"ctx-panel-rail-stat",title:"Asks waiting on your reply",children:Qt(X.length)})]}),a.jsxs("div",{className:"ctx-panel-viewtoggle",role:"tablist","aria-label":"Rail view",children:[a.jsx("button",{type:"button",role:"tab","aria-selected":C==="agents",className:`ctx-panel-viewtab${C==="agents"?" ctx-panel-viewtab--on":""}`,onClick:()=>Re("agents"),children:"Agents"}),a.jsx("button",{type:"button",role:"tab","aria-selected":C==="sessions",className:`ctx-panel-viewtab${C==="sessions"?" ctx-panel-viewtab--on":""}`,onClick:()=>Re("sessions"),children:"Sessions"})]}),a.jsx("div",{ref:ke,className:["ctx-panel-list","ctx-panel-list--scroll",Ne===0&&"ctx-panel-list--empty"].filter(Boolean).join(" "),onKeyDown:at,children:Ne===0?a.jsx(qt,{query:h,loading:d,error:i,apiOffline:st,onRetry:()=>{w(!0)}}):a.jsxs(a.Fragment,{children:[Z.length>0&&a.jsx(U,{label:"Needs you",count:Z.length,hint:"Asks waiting on your reply",children:Z.map(t=>a.jsx(G,{rowId:`ny-${t.id}`,session:t,nav:T,agentById:R,asksByAgent:k,onSelect:B,onContextMenu:V},`ny-${t.id}`))}),fe>0&&a.jsx(U,{label:"Pinned",count:fe,hint:"Pinned conversations",children:x.pinned.map(t=>a.jsx(G,{rowId:`pin-${t.id}`,session:t,nav:T,agentById:R,asksByAgent:k,pinned:!0,actions:ee(t),onSelect:B,onContextMenu:V},`pin-${t.id}`))}),C==="agents"&&N.projects.map(t=>a.jsx(U,{label:t.label,count:t.entries.length,children:t.entries.map(o=>a.jsx(Kt,{entry:o,nav:T,ask:Mt(k,o.memberAgentIds),onSelect:tt},o.agentId))},t.label)),C==="agents"&&N.unassigned.length>0&&a.jsx(U,{label:"Direct",count:N.unassigned.length,hint:"Conversations without a resolved agent",children:N.unassigned.map(t=>a.jsx(G,{rowId:t.id,session:t,nav:T,agentById:R,asksByAgent:k,actions:ee(t),onSelect:B,onContextMenu:V},t.id))}),C==="sessions"&&a.jsxs("div",{className:"ctx-panel-groupbar",role:"radiogroup","aria-label":"Group sessions by",children:[a.jsx("span",{className:"ctx-panel-groupbar-label",children:"Group"}),Ft.map(([t,o])=>a.jsx("button",{type:"button",role:"radio","aria-checked":K.groupBy===t,className:`ctx-panel-groupchip${K.groupBy===t?" ctx-panel-groupchip--on":""}`,onClick:()=>et(t),children:o},t))]}),C==="sessions"&&oe.map(t=>a.jsx(U,{label:t.label,count:t.sessions.length,children:t.sessions.map(o=>a.jsx(G,{rowId:o.id,session:o,nav:T,agentById:R,asksByAgent:k,taskTitled:!0,actions:ee(o),onSelect:nt,onContextMenu:V},o.id))},t.label)),be>0&&a.jsx(U,{label:"Channels",count:be,children:x.channels.map(t=>a.jsx(G,{rowId:t.id,session:t,nav:T,agentById:R,asksByAgent:k,actions:ee(t),onSelect:B,onContextMenu:V},t.id))}),we>0&&a.jsxs(U,{label:"Observed",count:we,hint:"Agent conversations you’re not in",open:ct,onToggle:()=>r(t=>!t),children:[Le.map(t=>a.jsx(Vt,{group:t,isOpen:dt(t),nav:T,agentById:R,asksByAgent:k,prefs:g,observed:!0,onToggle:()=>ot(t.key),onSelect:B,onTogglePin:se,onToggleArchive:ae,onContextMenu:V},t.key)),Pe>0?a.jsxs("button",{type:"button",className:"ctx-panel-more",onClick:()=>F(!0),children:["+ ",Pe," more observed"]}):null]}),ie>0&&a.jsxs(U,{label:"Archived",count:ie,hint:"Hidden from the main rail",children:[a.jsx("button",{type:"button",className:"ctx-panel-more",onClick:()=>ge(t=>!t),children:Q?"▾ hide archived":`› show ${ie} archived`}),Q?x.archived.map(t=>a.jsx(G,{rowId:`arch-${t.id}`,session:t,nav:T,agentById:R,asksByAgent:k,actions:ee(t),onSelect:B,onContextMenu:V},`arch-${t.id}`)):null]})]})})]})}function U({label:e,count:n,hint:s,open:c,onToggle:l,children:d}){return l?a.jsxs("section",{className:"ctx-panel-rail-section","aria-label":e,children:[a.jsxs("button",{type:"button",className:"ctx-panel-section-label ctx-panel-section-toggle",title:s,"aria-expanded":!!c,onClick:l,children:[a.jsxs("span",{className:"ctx-panel-section-toggle-label",children:[a.jsx("span",{className:"ctx-panel-section-chevron","aria-hidden":!0,children:c?"▾":"▸"}),e]}),a.jsx("span",{className:"ctx-panel-count",children:n})]}),c?a.jsx("div",{className:"ctx-panel-rail-section-body",children:d}):null]}):a.jsxs("section",{className:"ctx-panel-rail-section","aria-label":e,children:[a.jsxs("div",{className:"ctx-panel-section-label",title:s,children:[a.jsx("span",{children:e}),a.jsx("span",{className:"ctx-panel-count",children:n})]}),a.jsx("div",{className:"ctx-panel-rail-section-body",children:d})]})}function je({pinned:e,archived:n,onTogglePin:s,onToggleArchive:c}){return a.jsxs(a.Fragment,{children:[a.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:l=>{l.stopPropagation(),s()},children:e?"Unpin":"Pin"}),a.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:l=>{l.stopPropagation(),c()},children:n?"Restore":"Archive"})]})}function G({session:e,rowId:n,nav:s,agentById:c,asksByAgent:l,pinned:d,depth:i,actions:w,worktreeLabel:v,taskTitled:f,onSelect:g,onContextMenu:M}){const h=e.id===s.activeId,A=f?Lt(e):_(e),b=ye(e),P=He(e),I=e.agentId?c.get(e.agentId):void 0,r=pe(l,e),D=!b&&!P&&r?.status==="needs_attention",F=Ve(e,I),Q=I?.name??e.agentName??void 0,ge=b?`${e.participantCount??e.participantIds.length} members`:f?Q?.toLowerCase()===A.toLowerCase()?void 0:Q:F.toLowerCase()===A.toLowerCase()?void 0:F,K=!b&&!f&&r?Ze(e,I,r):ge;return a.jsx(Ae,{depth:i,name:i===1?Ke(e,I,r):A,sub:i===1?Ve(e,I):K,meta:r?te(r.updatedAt):e.lastMessageAt?te(e.lastMessageAt):void 0,tone:b?"channel":r?Xe(I,r):I?me(I.state):"dm",agent:b?void 0:I,avatarName:i===1?I?.name??Ke(e,I,r):f?Q??A:A,avatarKind:b?"channel":"user",active:h,unread:D,pinned:d,activityLabel:r?Ce(r):void 0,activityTone:r?ze(r):void 0,worktreeLabel:v??void 0,title:i===1?Ht(e,I,r):void 0,actions:w,tabIndex:Qe(n===s.activeRowId,s.activeRowId!==void 0,n===s.firstRowId),onClick:()=>g(e),onContextMenu:M?ne=>M(ne,e):void 0})}function Kt({entry:e,nav:n,ask:s,onSelect:c}){const l=`agent-${e.agentId}`,d=e.agent,i=s?te(s.updatedAt):e.latest.lastMessageAt?te(e.latest.lastMessageAt):void 0;return a.jsx(Ae,{name:e.name,sub:s?Ze(e.latest,d,s):void 0,meta:e.count>1?i?`${e.count} · ${i}`:`${e.count}`:i,tone:s?Xe(d,s):d?me(d.state):"dm",agent:d,avatarName:e.name,avatarKind:"user",active:l===n.activeId,unread:s?.status==="needs_attention",activityLabel:s?Ce(s):void 0,activityTone:s?ze(s):void 0,tabIndex:Qe(l===n.activeRowId,n.activeRowId!==void 0,l===n.firstRowId),onClick:()=>c(e.agentId)})}function Vt({group:e,isOpen:n,nav:s,agentById:c,asksByAgent:l,prefs:d,observed:i,onToggle:w,onSelect:v,onTogglePin:f,onToggleArchive:g,onContextMenu:M}){if(e.conversations.length===1){const r=e.conversations[0];return a.jsx(G,{rowId:r.id,session:r,nav:s,agentById:c,asksByAgent:l,pinned:O(r.id,d),actions:a.jsx(je,{pinned:O(r.id,d),archived:q(r.id,d),onTogglePin:()=>f(r.id),onToggleArchive:()=>g(r.id)}),onSelect:v,onContextMenu:M})}const h=e.conversations.map(r=>pe(l,r)).filter(r=>!!r),A=h.length,b=h.filter(r=>r.status==="working").length,P=h.filter(r=>r.status==="needs_attention").length,I=e.conversations.some(r=>r.id===s.activeId);return a.jsxs("div",{children:[a.jsx(Ae,{name:e.label,meta:A>0?`${A} active · ${qe(e)}`:qe(e),tone:b>0?"in_turn":e.bestState,caret:n?"open":"closed",active:I&&!n,unread:!i&&P>0&&!n,activityLabel:A>0?`${A} active`:void 0,activityTone:P>0?"attention":b>0?"working":"pending",onClick:w}),n&&e.conversations.map(r=>{const D=r.agentId?c.get(r.agentId):void 0,F=e.canonicalRoot&&D?.projectRoot&&D.projectRoot!==e.canonicalRoot?Je(D.projectRoot):null;return a.jsx(G,{rowId:r.id,session:r,depth:1,nav:s,agentById:c,asksByAgent:l,pinned:O(r.id,d),worktreeLabel:F,actions:a.jsx(je,{pinned:O(r.id,d),archived:q(r.id,d),onTogglePin:()=>f(r.id),onToggleArchive:()=>g(r.id)}),onSelect:v,onContextMenu:M},r.id)})]},e.key)}function qt({query:e,loading:n,error:s,apiOffline:c,onRetry:l}){const d=e.trim().length>0,i=n?"Loading conversations":c?"Scout server offline":s?"Couldn't load conversations":d?"No matching conversations":"No conversations yet",w=n?"Checking the broker for your conversations, channels, and observed threads.":c?"Start or restart Scout services, then retry.":s||(d?"Try a shorter filter.":"Your conversations, channels, and observed agent threads will show here.");return a.jsxs("div",{className:"ctx-panel-empty-card","data-tone":c||s?"error":"neutral",children:[a.jsx("div",{className:"ctx-panel-empty-card-title",children:i}),a.jsx("div",{className:"ctx-panel-empty-card-detail",children:w}),(c||s)&&a.jsx("button",{type:"button",className:"ctx-panel-empty-card-action",onClick:l,children:"Retry"})]})}function Fe(e,n){const s=n.toLowerCase();return _(e).toLowerCase().includes(s)||e.id.toLowerCase().includes(s)||(e.preview??"").toLowerCase().includes(s)||(e.agentName??"").toLowerCase().includes(s)}function Qt(e){return e===1?"1 needs a reply":`${e} need a reply`}function Ce(e){return e.status==="queued"?"Starting":e.status==="working"?"Working":e.status==="needs_attention"?"Needs you":e.statusLabel||e.status}function ze(e){return e.status==="queued"?"pending":e.status==="needs_attention"?"attention":"working"}function Xe(e,n){return n.status==="working"?"in_turn":e?me(e.state):"dm"}function Ze(e,n,s){const c=Ce(s),l=ue(s.task)??ue(s.summary)??ue(e.preview)??e.currentBranch??n?.branch??"";return l?`${c} · ${l}`:c}function le(e){return[...e].sort((n,s)=>(s.lastMessageAt??0)-(n.lastMessageAt??0))}function Ke(e,n,s){const c=s?.task??ue(e.preview)??e.currentBranch??n?.branch??"",l=n?.name??e.agentName??_(e);return c?`${l} · ${c}`:l}function Ht(e,n,s){const c=[];return s&&c.push(`task: ${s.task}`),e.preview&&c.push(`preview: ${Ye(e.preview)}`),(e.currentBranch??n?.branch)&&c.push(`branch: ${e.currentBranch??n?.branch}`),n?.harness&&c.push(`harness: ${n.harness}`),c.length>0?c.join(`
2
+ `):void 0}function Ve(e,n){if(ye(e))return jt(e);const s=n?.handle?.trim().replace(/^@+/,"");return s||(e.agentId?e.agentId.split(".")[0]??e.agentId:_(e))}function ue(e){if(!e)return null;const n=Ye(e).replace(/\s+/g," ").trim();return n?n.length>60?`${n.slice(0,57)}…`:n:null}function qe(e){const n=e.latestUpdate?te(e.latestUpdate):"",s=`${e.conversations.length}`;return n?`${s} · ${n}`:s}export{Kn as ChatLeft};
@@ -0,0 +1,2 @@
1
+ import{r,j as e}from"./index-C1VaWNuD.js";/* empty css */import{n as k}from"./colors-BtO5_zlx.js";import{p as C,a as L}from"./api-Co9aQ2Jw.js";import{u as F,m as $,i as D,l as H}from"./Provider-D0bB7q6y.js";import{b as O}from"./router-kfcaYqZr.js";import{d as B,r as G}from"./operator-attention-RqieiSY8.js";import{u as K}from"./sse-B29iGBnw.js";import{t as f}from"./time-Dhsh_2EG.js";import{o as P}from"./openAgent-Dbv5wfuL.js";import{R as g}from"./RailRow-B88JVr62.js";import"./perf-PX8Rx0EP.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./conversation-model-C2KuZUXc.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./keyboard-nav-B8sQ_8IF.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Bdt2W3Y4.js";import"./index-BWHgHrtv.js";import"./openContent-C6XO6kr5.js";import"./AgentAvatar-Dz79iTxB.js";import"./SpriteAvatar-DFO4Kb4Z.js";import"./CrewAvatar-CZ_faQ_s.js";const U=new Set(["message.posted","flight.updated","collaboration.event.appended","agent.updated"]),V=4,z=4,X=3,N="/api/fleet",Y=3e4;function zt({prepend:t}){const{agents:o,agentsLoaded:a,navigate:c,route:n}=F(),[i]=r.useState(()=>C(N,Y)),[l,y]=r.useState(i),[A,T]=r.useState(i!==null),[j,b]=r.useState(()=>new Set),p=O(n),S=r.useMemo(()=>$(o,p),[o,p]),m=r.useMemo(()=>D(o,p),[o,p]),u=r.useMemo(()=>H(l,S),[l,S]),d=r.useCallback(async()=>{try{y(await L(N))}catch{}finally{T(!0)}},[]);r.useEffect(()=>{d()},[d]),K(s=>{U.has(s.kind)&&d()});const w=r.useMemo(()=>Z(m).slice(0,V),[m]),R=r.useMemo(()=>(u?.activity??[]).slice(0,z),[u]),_=r.useMemo(()=>(u?.needsAttention??[]).filter(s=>!j.has(s.recordId)).slice(0,X),[u,j]),M=r.useCallback(async s=>{b(h=>new Set(h).add(s.recordId));try{await B({recordKind:s.kind,recordId:s.recordId,itemUpdatedAt:s.updatedAt})}catch{b(h=>{const I=new Set(h);return I.delete(s.recordId),I});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:w,totalCount:m.length,loading:!a,onSelect:s=>P(c,s,{returnTo:n}),onSeeAll:()=>c({view:"agents-v2"})}),e.jsx(Q,{items:R,loading:!A,onSelect:s=>c(tt(s)),onSeeAll:()=>c({view:"activity"})}),e.jsx(W,{items:_,loading:!A,onSelect:s=>c(G(s)),onDismiss:s=>{M(s)}})]})}function q({agents:t,totalCount:o,loading:a,onSelect:c,onSeeAll:n}){return e.jsxs("section",{className:"ctx-panel-section base-rail-section",children:[e.jsx(x,{title:"Recent agents",onSeeAll:o>0?n:void 0}),a?e.jsx(v,{}):t.length===0?e.jsx("div",{className:"ctx-panel-empty",children:"No agents yet"}):t.map(i=>e.jsx(g,{name:i.name||i.id,meta:i.updatedAt?f(i.updatedAt):void 0,tone:k(i.state),title:J(i),onClick:()=>c(i)},i.id))]})}function J(t){const o=[];return t.project&&o.push(`project: ${t.project}`),t.branch&&o.push(`branch: ${t.branch}`),t.harness&&o.push(`harness: ${t.harness}`),o.join(`
2
+ `)}function Q({items:t,loading:o,onSelect:a,onSeeAll:c}){return e.jsxs("section",{className:"ctx-panel-section base-rail-section",children:[e.jsx(x,{title:"Recent Scout coordination",meta:(t.length>0,void 0),onSeeAll:t.length>0?c:void 0}),o?e.jsx(v,{}):t.length===0?e.jsx("div",{className:"ctx-panel-empty",children:"No recent Scout messages or dispatches"}):t.map(n=>{const i=n.actorName??n.agentName??n.agentId??"system",l=n.title??n.summary??E(n.kind);return e.jsx(g,{name:l,meta:n.ts?f(n.ts):void 0,tone:"neutral",title:`${i} · ${E(n.kind)}`,onClick:()=>a(n)},n.id)})]})}function W({items:t,loading:o,onSelect:a,onDismiss:c}){return!o&&t.length===0?null:e.jsxs("section",{className:"ctx-panel-section base-rail-section",children:[e.jsx(x,{title:"Needs attention",meta:t.length>0?`${t.length}`:void 0}),o?e.jsx(v,{rows:2}):t.map(n=>{const i=n.agentName??n.agentId??"operator";return e.jsx(g,{name:n.title,meta:f(n.updatedAt),tone:"in_turn",unread:!0,title:`${i} · ${n.kind}`,onClick:()=>a(n),actions:e.jsx("button",{type:"button",className:"rr-row-action",title:"Dismiss — stop asking until this changes","aria-label":"Dismiss",onClick:l=>{l.stopPropagation(),c(n)},children:"Dismiss"})},n.recordId)})]})}function v({rows:t=3}){return e.jsx("div",{className:"base-rail-loading",role:"status","aria-label":"Loading",children:Array.from({length:t},(o,a)=>e.jsx("span",{"aria-hidden":"true"},a))})}function x({title:t,meta:o,onSeeAll:a}){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:[o?e.jsx("span",{className:"ctx-panel-count",children:o}):null,a?e.jsx("button",{type:"button",className:"base-rail-see-all",onClick:a,children:"all"}):null]})]})}function Z(t){return[...t].sort((o,a)=>(a.updatedAt??0)-(o.updatedAt??0))}function E(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 tt(t){return t.conversationId?{view:"conversation",conversationId:t.conversationId}:t.agentId?{view:"agents-v2",agentId:t.agentId}:{view:"activity"}}export{zt as HomeLeft};
@@ -0,0 +1 @@
1
+ import{r as m,j as t}from"./index-C1VaWNuD.js";import{u as re,L as z}from"./chunk-YOZR3KYS-CrCgXw9l.js";import{a as le,f as oe,b as ce,c as me,d as de,s as ue}from"./terminal-sessions-Bdt2W3Y4.js";import{a as ve,b as pe,r as G,m as he}from"./keyboard-nav-B8sQ_8IF.js";import{u as be}from"./Provider-D0bB7q6y.js";import{c as fe}from"./colors-BtO5_zlx.js";import{r as P,c as xe}from"./terminal-relay-CXHMdain.js";import{t as ye,a as q,s as je,b as y,P as ge}from"./session-table-uJh3v-ly.js";/* empty css */import{R as ke}from"./refresh-cw-Bkh7Cvnd.js";import{A as Ne}from"./activity-CzTJ-YMX.js";import{C as we}from"./clock-_9FDplIT.js";import{F as Se}from"./DocumentFocusViewer-D8iB6SMt.js";import{L as Ae}from"./layers-CW2-qHsG.js";import{C as Ie}from"./chevron-right-CowuvuE6.js";import{E as U}from"./eye-C9cGk5z6.js";import{T as Ee}from"./terminal-UDy4lzV1.js";import"./createLucideIcon-Dv8H8m7J.js";import"./arrow-down-BAGkhHA6.js";import"./api-Co9aQ2Jw.js";import"./perf-PX8Rx0EP.js";import"./router-kfcaYqZr.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./sse-B29iGBnw.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./conversation-model-C2KuZUXc.js";import"./time-Dhsh_2EG.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./model-CBkMvT1w.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";const Te=[{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"}],Ce=[{id:"herdr",label:"Herdr"},{id:"tmux-named",label:"Tmux"},{id:"tmux-auto",label:"Tmux · auto"},{id:"external",label:"Background"}],Re=900*1e3,Me=1440*60*1e3,Le=10080*60*1e3,V=[{key:"now",label:"Now",maxAgeMs:Re},{key:"today",label:"Today",maxAgeMs:Me},{key:"week",label:"This week",maxAgeMs:Le},{key:"older",label:"Older",maxAgeMs:null},{key:"unknown",label:"Unknown",maxAgeMs:null}],$e=[{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 _e(a){return Ce.map(n=>({key:n.id,label:n.label,items:a.filter(l=>le(l)===n.id)})).filter(n=>n.items.length>0)}function Oe(a){const n=new Map;for(const i of a){const o=n.get(i.project);o?o.push(i):n.set(i.project,[i])}const l=new Set(["backend-only","unscoped"]),r=[...n.entries()].map(([i,o])=>({key:`project:${i}`,label:i,items:o,latestActivity:Math.max(...o.map(d=>q(d)??0)),isCatchAll:l.has(i)}));return r.sort((i,o)=>i.isCatchAll!==o.isCatchAll?i.isCatchAll?1:-1:i.latestActivity!==o.latestActivity?o.latestActivity-i.latestActivity:i.label.localeCompare(o.label,void 0,{numeric:!0,sensitivity:"base"})),r.map(({key:i,label:o,items:d})=>({key:i,label:o,items:d}))}function Fe(a,n){const l=r=>{const i=q(r);if(i===null)return"unknown";const o=Math.max(0,n-i);for(const d of V)if(d.maxAgeMs!==null&&o<d.maxAgeMs)return d.key;return"older"};return V.map(r=>({key:r.key,label:r.label,items:a.filter(i=>l(i)===r.key)})).filter(r=>r.items.length>0)}function Ke(a){return $e.map(n=>({key:n.key,label:n.label,items:a.filter(l=>ye(l)===n.rank)})).filter(n=>n.items.length>0)}function Be(a,n,l=Date.now()){switch(n){case"fleet":return _e(a);case"places":return Oe(a);case"time":return Fe(a,l);case"attention":return Ke(a)}}const De=8e3,We=[{id:"recent",label:"Recent"},{id:"name",label:"A–Z"}],ze={fleet:Ae,places:Se,time:we,attention:Ne};function Dt(){const{route:a,navigate:n,agents:l}=be(),[r,i]=m.useState({state:"loading",sessions:[]}),[o,d]=m.useState(""),[f,Q]=m.useState("recent"),[A,Y]=re("terminal-nav-mode","fleet"),[Z,J]=m.useState(!1),[X,M]=m.useState(null),[L,$]=m.useState(null),_=m.useRef(null),O=m.useRef(null),ee=ve(),te=he(()=>O.current);pe(m.useCallback(()=>_.current,[]));const x=m.useCallback((e={})=>{e.silent||i(s=>({state:"loading",sessions:s.sessions})),oe({includeDiscovered:!0}).then(s=>{i({state:"ready",sessions:s})}).catch(s=>{e.silent||i(c=>({state:"failed",sessions:c.sessions,error:s instanceof Error?s.message:String(s)}))})},[]);m.useEffect(()=>{x()},[x]),m.useEffect(()=>{const e=()=>{document.visibilityState==="visible"&&x({silent:!0})},s=window.setInterval(e,De);return window.addEventListener("focus",e),document.addEventListener("visibilitychange",e),()=>{window.clearInterval(s),window.removeEventListener("focus",e),document.removeEventListener("visibilitychange",e)}},[x]);const k=m.useMemo(()=>ce(r.sessions),[r.sessions]),p=m.useMemo(()=>je(me(k),f==="recent"?{column:"activity",direction:"desc"}:{column:"name",direction:"asc"}),[f,k]),j=m.useMemo(()=>Ge(l,f).filter(e=>{const s=P(e);return s?!k.some(c=>c.surface.backend===s.backend&&c.surface.sessionName===s.sessionName&&(s.paneId==null||c.surface.paneId===s.paneId)):!0}),[l,k,f]),u=o.trim().toLowerCase(),g=u?p.filter(e=>e.searchable.includes(u)):p,N=g.filter(e=>y(e)==="current"),ae=Be(N,A),w=g.filter(e=>y(e)==="inactive"),h=g.filter(e=>y(e)==="review"),F=u?w.length+h.length:p.filter(e=>y(e)!=="current").length,K=u?h.length:p.filter(e=>y(e)==="review").length,S=Z||!!u,v=u?j.filter(e=>Ue(e).includes(u)):j,ne=a.view==="terminal"?a.terminalSurfaceKey??null:null,B=a.view==="terminal"?a.terminalSessionId??null:null,I=e=>de(e.key,ne)&&(!B||e.session.id===B),E=a.view==="terminal"&&a.agentId?`agent:${a.agentId}`:null,D=!!(N.some(I)||S&&[...w,...h].some(I)||E!=null&&v.some(e=>`agent:${e.id}`===E)),W=N[0]?.id??(S?w[0]?.id??h[0]?.id:void 0)??(v[0]?`agent:${v[0].id}`:void 0),se=r.state==="loading"?"Syncing":u?`${g.length+v.length}/${p.length+j.length}`:`${p.length+j.length} targets`,T=(e,s)=>({view:"terminal",terminalSessionId:e.session.id,terminalSurfaceKey:ue(e.surface),...s?{mode:s}:{}}),C=(e,s="takeover")=>({view:"terminal",agentId:e.id,mode:s}),ie=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.`)){M(e.id),$(null);try{await xe({backend:"tmux",sessionName:e.surface.sessionName,paneId:e.surface.paneId??null,socketDir:e.surface.socketDir??null},"release"),x({silent:!0})}catch(s){$(s instanceof Error?s.message:String(s))}finally{M(null)}}},R=e=>{const s=I(e),c=y(e),b=X===e.id;return t.jsxs("div",{className:`terminal-nav-row${s?" 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:G(s,D,e.id===W),onClick:()=>n(T(e)),children:[t.jsx(Ee,{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${a.view==="terminal"&&s&&a.mode==="takeover"?" terminal-nav-action--selected":""}`,onClick:()=>n(T(e,"takeover")),title:"Enter this terminal","aria-label":"Enter this terminal",children:[t.jsx(z,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Enter"})]}),t.jsxs("button",{type:"button",className:`terminal-nav-action${a.view==="terminal"&&s&&a.mode==="observe"?" terminal-nav-action--selected":""}`,onClick:()=>n(T(e,"observe")),title:"Observe this terminal read-only","aria-label":"Observe this terminal read-only",children:[t.jsx(U,{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:()=>{ie(e)},disabled:b,title:"Release this inactive tmux surface; keep the agent","aria-label":"Release this inactive tmux surface; keep the agent",children:[t.jsx(ge,{size:12,strokeWidth:1.8}),t.jsx("span",{children:b?"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:se})]}),t.jsx("button",{type:"button",className:"terminal-nav-refresh",onClick:()=>x(),disabled:r.state==="loading",title:"Refresh terminals","aria-label":"Refresh terminals",children:t.jsx(ke,{size:14,strokeWidth:1.8})})]}),t.jsx("div",{className:"terminal-nav-modes",role:"group","aria-label":"Group terminals",children:Te.map(e=>{const s=ze[e.id];return t.jsx("button",{type:"button",title:e.title,"aria-label":e.title,"aria-pressed":A===e.id,className:`terminal-nav-mode${A===e.id?" terminal-nav-mode--active":""}`,onClick:()=>Y(e.id),children:t.jsx(s,{size:13,strokeWidth:1.8})},e.id)})}),t.jsxs("div",{className:"ctx-panel-toolbar terminal-nav-toolbar",children:[t.jsx("input",{ref:_,type:"text",className:"ctx-panel-search-input",placeholder:"Search… (/)",value:o,onChange:e=>d(e.target.value),onKeyDown:te}),t.jsx("div",{className:"ctx-panel-sort",role:"group","aria-label":"Sort terminals",children:We.map(e=>t.jsx("button",{type:"button",title:e.id==="recent"?"Sort by most recent":"Sort alphabetically","aria-pressed":f===e.id,className:`ctx-panel-sort-option${f===e.id?" ctx-panel-sort-option--active":""}`,onClick:()=>Q(e.id),children:e.label},e.id))})]}),r.state==="failed"&&t.jsx("div",{className:"terminal-nav-error",children:r.error}),L&&t.jsx("div",{className:"terminal-nav-error",children:L}),t.jsx("div",{ref:O,className:"terminal-nav-list",onKeyDown:ee,children:g.length===0&&v.length===0&&r.state!=="loading"?t.jsx("div",{className:"ctx-panel-empty",children:p.length+j.length===0?"No terminal targets":"No matches"}):t.jsxs(t.Fragment,{children:[ae.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(R)]},e.key)),N.length===0&&r.state!=="loading"&&t.jsx("div",{className:"terminal-nav-empty",children:"No sessions"}),F>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":S,onClick:()=>J(e=>!e),children:[t.jsx(Ie,{size:13,strokeWidth:1.8}),t.jsx("span",{children:"Inactive"}),t.jsx("span",{children:F}),K>0&&t.jsxs("span",{className:"terminal-nav-review-count",children:[K," review"]})]}),S&&t.jsxs(t.Fragment,{children:[w.map(R),h.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:h.length})]}),h.map(R)]})]}),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:v.length})]}),v.map(e=>{const s=`agent:${e.id}`,c=s===E,b=P(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:G(c,D,s===W),onClick:()=>n(C(e)),children:[t.jsx("span",{className:`terminal-nav-agent-dot${b?" 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:Pe(e)})]}),t.jsxs("span",{className:"terminal-nav-badges",children:[t.jsx("span",{className:"terminal-nav-badge terminal-nav-badge--backend",children:b?.backend??e.harness??"agent"}),t.jsx("span",{className:"terminal-nav-badge",children:b?"bound":fe(e.state)})]})]}),t.jsxs("div",{className:"terminal-nav-row-actions",children:[t.jsxs("button",{type:"button",className:`terminal-nav-action${a.view==="terminal"&&c&&a.mode==="takeover"?" terminal-nav-action--selected":""}`,onClick:()=>n(C(e,"takeover")),title:"Enter this agent terminal","aria-label":"Enter this agent terminal",children:[t.jsx(z,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Enter"})]}),b&&t.jsxs("button",{type:"button",className:`terminal-nav-action${a.view==="terminal"&&c&&a.mode==="observe"?" terminal-nav-action--selected":""}`,onClick:()=>n(C(e,"observe")),title:"Observe this agent terminal read-only","aria-label":"Observe this agent terminal read-only",children:[t.jsx(U,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Observe"})]})]})]},e.id)}),v.length===0&&t.jsx("div",{className:"terminal-nav-empty",children:"No agents"})]})]})})]})}function Ge(a,n){return[...a].filter(l=>!l.retiredFromFleet&&!l.staleLocalRegistration).sort((l,r)=>{const i=l.name.localeCompare(r.name,void 0,{numeric:!0,sensitivity:"base"});return n==="name"?i||l.id.localeCompare(r.id):(r.updatedAt??0)-(l.updatedAt??0)||i||l.id.localeCompare(r.id)})}function Pe(a){const n=a.project??H(a.cwd)??H(a.projectRoot)??a.definitionId;return[a.handle?`@${a.handle}`:null,a.harness,n,a.branch].filter(Boolean).join(" · ")}function Ue(a){return[a.name,a.handle,a.harness,a.state,a.project,a.branch,a.cwd,a.projectRoot,a.definitionId].filter(Boolean).join(" ").toLowerCase()}function H(a){const n=a?.trim().replace(/\/+$/u,"");return n?n.split("/").pop()||n:null}export{Dt as TerminalLeft};
@@ -0,0 +1 @@
1
+ import{r,j as t}from"./index-C1VaWNuD.js";/* empty css */import{d as w,c as S,e as y,f as M,g as A,i as N}from"./NewChatComposer-D2Ah4T-W.js";import{u as k,i as b}from"./Provider-D0bB7q6y.js";import{A as I}from"./AgentAvatar-Dz79iTxB.js";import{a as g}from"./api-Co9aQ2Jw.js";import{b as C}from"./router-kfcaYqZr.js";import{a as B}from"./sse-B29iGBnw.js";import{o as P,i as j}from"./surface-activity-B1rgWB1i.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./conversation-model-C2KuZUXc.js";import"./colors-BtO5_zlx.js";import"./time-Dhsh_2EG.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./keyboard-nav-B8sQ_8IF.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./scoutbot-D7kGGyK_.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";import"./SpriteAvatar-DFO4Kb4Z.js";import"./CrewAvatar-CZ_faQ_s.js";import"./perf-PX8Rx0EP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Bdt2W3Y4.js";import"./index-BWHgHrtv.js";function W(){const{agents:n,route:d}=k(),m=C(d),l=r.useMemo(()=>b(n,m),[n,m]),[u,h]=r.useState([]),[v,s]=r.useState(null),[a,p]=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"&&h(e.value),i.status==="fulfilled"&&s(i.value),o.status==="fulfilled"&&p(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(u),i=l.map(f=>S(f,e.get(f.id)??null,x.get(f.id)??[])),o=y(a,Date.now());return M(i,u,o)},[l,u,x,a])}}function Mt(){const{route:n,navigate:d,openContextCapture:m}=k(),{projects:l}=W(),u=n.view==="agents-v2"?n.projectSlug:void 0,h=n.view==="agents-v2"?n.agentId:void 0,v=u??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),p=N(s),c=s.slice.slug===v&&!h;return t.jsxs("button",{type:"button",className:"s-rail-proj","data-selected":c||void 0,"data-live":a>0||void 0,"data-needs":p||void 0,title:s.slice.root??void 0,onClick:()=>d({view:"agents-v2",projectSlug:s.slice.slug}),children:[t.jsx(I,{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":p||void 0,title:p?"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{Mt as AgentsLeft};
@@ -0,0 +1 @@
1
+ import{j as r}from"./index-C1VaWNuD.js";import{u as o}from"./Provider-D0bB7q6y.js";import{OpsAgentsLeft as i}from"./left-agents-7mJsiNyr.js";import{OpsDefaultLeft as m}from"./left-default-COK26l3H.js";import{OpsLanesLeft as p}from"./left-lanes-Dbdm9Veu.js";import{OpsMissionLeft as s}from"./left-mission-DqGR5jby.js";import{OpsAdvisorLeft as e}from"./left-advisor-CbXVzAqS.js";import"./router-kfcaYqZr.js";import"./perf-PX8Rx0EP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Bdt2W3Y4.js";import"./api-Co9aQ2Jw.js";import"./sse-B29iGBnw.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./conversation-model-C2KuZUXc.js";import"./time-Dhsh_2EG.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./keyboard-nav-B8sQ_8IF.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";/* empty css */import"./use-fleet-active-asks-CCGrll5q.js";import"./RailRow-B88JVr62.js";import"./AgentAvatar-Dz79iTxB.js";import"./SpriteAvatar-DFO4Kb4Z.js";import"./CrewAvatar-CZ_faQ_s.js";import"./operator-attention-RqieiSY8.js";import"./openContent-C6XO6kr5.js";import"./agent-lanes-model-tc-1hE6q.js";import"./context-budget-DqxWzalx.js";import"./lane-observe-vfyACHi0.js";import"./tail-display-DcliDVkW.js";import"./lane-edit-display-C_Aujldz.js";import"./lane-roster-store-DN2jxXF-.js";import"./mission-control-store-CM8mQGg8.js";import"./MissionLeftAgentRow-CbQm4BLv.js";import"./page-status-BE0-J1xY.js";import"./server-WY6gsbZz.js";import"./layers-CW2-qHsG.js";import"./sparkles-D0vWLTyC.js";import"./activity-CzTJ-YMX.js";import"./cpu-CHFIGw87.js";import"./gauge-DSflSery.js";import"./terminal-UDy4lzV1.js";function gr(){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":return r.jsx(p,{});default:return r.jsx(m,{})}}export{gr as OpsLeft};
@@ -0,0 +1 @@
1
+ import{j as e,r as S}from"./index-C1VaWNuD.js";import{u as O,g as q,i as P,j as G,k as C,l as H,c as I,r as w}from"./mesh-view-store-CBM1za_N.js";import{u as Q}from"./Provider-D0bB7q6y.js";import{n as F,a as V}from"./colors-BtO5_zlx.js";import{b as D}from"./mesh-buckets-CLYS8Jx8.js";import{u as J,h as U}from"./use-fleet-active-asks-CCGrll5q.js";import{R as u}from"./RailRow-B88JVr62.js";import{o as W}from"./openAgent-Dbv5wfuL.js";/* empty css */import"./router-kfcaYqZr.js";import"./perf-PX8Rx0EP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Bdt2W3Y4.js";import"./api-Co9aQ2Jw.js";import"./sse-B29iGBnw.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./conversation-model-C2KuZUXc.js";import"./time-Dhsh_2EG.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./keyboard-nav-B8sQ_8IF.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";import"./AgentAvatar-Dz79iTxB.js";import"./SpriteAvatar-DFO4Kb4Z.js";import"./CrewAvatar-CZ_faQ_s.js";import"./openContent-C6XO6kr5.js";function X({value:o,onChange:c,placeholder:i="Search…",onKeyDown:l}){return e.jsx("input",{type:"search",className:"fleet-search",placeholder:i,value:o,onChange:h=>c(h.target.value),onKeyDown:l,spellCheck:!1,autoCorrect:"off",autoCapitalize:"off"})}const Y=["needs_attention","in_turn","in_flight","callable","blocked"],Z={in_turn:"in turn",in_flight:"in flight",needs_attention:"needs attention",callable:"callable",blocked:"blocked"},ee={in_turn:"working",in_flight:"working",needs_attention:"working",callable:"available",blocked:"offline"};function te({active:o,onToggle:c}){return e.jsx("div",{className:"fleet-pills",role:"group","aria-label":"State filters",children:Y.map(i=>{const l=o.has(i);return e.jsx("button",{type:"button",className:`fleet-pill fleet-pill--${ee[i]}${l?" fleet-pill--on":""}`,onClick:()=>c(i),"aria-pressed":l,children:Z[i]},i)})})}const T=10;function ne(o){return F(o.state)}function _(o){return o.updatedAt??o.createdAt??0}function We(){const{agents:o,navigate:c}=Q(),{meshSnapshot:i,selectedId:l,selectedType:h,query:d,agentStateFilters:g,hiddenMachineIds:f,treeFullMachineIds:b}=O(),L=J(),p=S.useMemo(()=>i?D(o,i):[],[o,i]),y=S.useMemo(()=>{const n=d.trim().toLowerCase();return p.filter(s=>!f.has(s.machineId)).map(s=>{const t=s.agents.filter(r=>g.has(ne(r))?n?`${r.name??""} ${r.project??""} ${r.branch??""} ${r.harness??""}`.toLowerCase().includes(n):!0:!1);return{...s,agents:t}})},[p,d,g,f]),v=S.useMemo(()=>{const n=new Map([["this",[]],["peer",[]],["tailnet",[]]]);for(const s of y){const t=s.reachability==="this"?"this":s.reachability==="peer"?"peer":"tailnet";n.get(t)?.push(s)}return n},[y]);if(!i)return e.jsx("div",{className:"ctx-panel ctx-panel--empty",children:e.jsx("div",{className:"ctx-panel-empty-state",children:e.jsx("div",{className:"ctx-panel-empty-hint",children:"Loading mesh…"})})});const $=n=>{const s=p.map(t=>t.machineId);H(n,s),I(n,"node"),w(n)},x=f.size,j=p.length,E=n=>{I(n.id,"agent");const s=n.authorityNodeId??n.homeNodeId;s&&w(s),W(c,n,{returnTo:{view:"mesh"}})},k=(n,s)=>s.length===0?null:e.jsxs("section",{className:"mesh-nav-group",children:[e.jsx("div",{className:"mesh-nav-group-label",children:n}),s.map(t=>{const r=b.has(t.machineId),m=[...t.agents].sort((a,A)=>_(A)-_(a)),M=r?m:m.slice(0,T),N=m.length-M.length,B=l===t.machineId&&h==="node",R=t.agents.filter(a=>V(a.state)).length,z=t.agents.length>0?`${R}/${t.agents.length}`:t.online?"—":"not ready";return e.jsxs("div",{className:"mesh-nav-machine",children:[e.jsx(u,{name:t.machineLabel,meta:z,tone:"neutral",active:B,onClick:()=>$(t.machineId),title:`Focus ${t.machineLabel} on the map`}),M.map(a=>{const A=l===a.id&&h==="agent",K=U(L,a.id);return e.jsx(u,{name:a.name,tone:F(a.state),depth:1,active:A,unread:K,onClick:()=>E(a),title:a.name},a.id)}),!r&&N>0&&e.jsx(u,{name:`see ${N} more`,depth:1,tone:"neutral",onClick:()=>C(t.machineId),title:"Show all agents on this machine"}),r&&m.length>T&&e.jsx(u,{name:"see less",depth:1,tone:"neutral",onClick:()=>C(t.machineId),title:"Show recent agents only"})]},t.machineId)})]},n);return e.jsxs("div",{className:"ctx-panel mesh-nav",children:[e.jsxs("div",{className:"mesh-nav-head",children:[e.jsx(X,{value:d,onChange:q,placeholder:"Find machines or agents…"}),e.jsx(te,{active:g,onToggle:P}),x>0&&x<j&&e.jsxs("button",{type:"button",className:"mesh-nav-focus-chip",onClick:G,title:"Show all machines",children:[e.jsxs("span",{className:"mesh-nav-focus-chip-label",children:["focused · ",j-x,"/",j]}),e.jsx("span",{className:"mesh-nav-focus-chip-clear","aria-hidden":!0,children:"×"})]})]}),e.jsxs("div",{className:"mesh-nav-tree",children:[k("this host",v.get("this")??[]),k("peers",v.get("peer")??[]),k("tailnet",v.get("tailnet")??[])]})]})}export{We as MeshLeft};
@@ -0,0 +1 @@
1
+ import{r as N,j as e}from"./index-C1VaWNuD.js";import{a as I}from"./api-Co9aQ2Jw.js";import{b as L,c as j,s as R}from"./router-kfcaYqZr.js";import{u as $,r as y,s as b,i as C}from"./mesh-ops-CKSWgax2.js";import{u as E,s as T}from"./mesh-view-store-CBM1za_N.js";import{u as A}from"./Provider-D0bB7q6y.js";import{R as h}from"./RailRow-B88JVr62.js";import{u as U}from"./use-mesh-ops-items-BjyeFJTz.js";/* empty css */import"./perf-PX8Rx0EP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Bdt2W3Y4.js";import"./sse-B29iGBnw.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./conversation-model-C2KuZUXc.js";import"./time-Dhsh_2EG.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./keyboard-nav-B8sQ_8IF.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";import"./AgentAvatar-Dz79iTxB.js";import"./SpriteAvatar-DFO4Kb4Z.js";import"./CrewAvatar-CZ_faQ_s.js";function S(s){return s.hostName?.split(".")[0]??s.name??s.id.slice(0,12)}function Lt(){const{route:s,navigate:u}=A(),l=L(s),{items:i,unattributedOnly:c,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 m=t=>{b(!1),u(t?R(s,t):j(s))},O=()=>{u(j(s)),b(!0)},p=r?.localNode??null,d=r?Object.values(r.nodes).filter(t=>t.id!==p?.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:()=>m(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&&!c,onClick:()=>m(null),title:"Show items across all hosts"})]}),p&&e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"This host"}),f(p)]}),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:c,onClick:()=>c?m(null):O(),title:"Items with no venue host"})]}),!r&&e.jsx("div",{className:"ctx-panel-empty",children:"Loading mesh…"})]})}export{Lt as MeshOpsLeft};
@@ -0,0 +1 @@
1
+ import{r as i,j as s}from"./index-C1VaWNuD.js";/* empty css */import{a as r}from"./api-Co9aQ2Jw.js";import{u as h}from"./sse-B29iGBnw.js";import{u as v}from"./Provider-D0bB7q6y.js";import{S as u}from"./server-WY6gsbZz.js";import{L as j}from"./layers-CW2-qHsG.js";import{S as b}from"./sparkles-D0vWLTyC.js";import{A as N}from"./activity-CzTJ-YMX.js";import{C as f}from"./cpu-CHFIGw87.js";import{G as g,D as k}from"./gauge-DSflSery.js";import{T as y}from"./terminal-UDy4lzV1.js";import"./perf-PX8Rx0EP.js";import"./index-BWHgHrtv.js";import"./router-kfcaYqZr.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Bdt2W3Y4.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D7kGGyK_.js";import"./NewChatComposer-D2Ah4T-W.js";import"./runtime-picker-C20lTGhV.js";import"./scout-voice-Cg1qfepC.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DmUG_YC7.js";import"./createLucideIcon-Dv8H8m7J.js";import"./conversation-model-C2KuZUXc.js";import"./time-Dhsh_2EG.js";import"./index-Cx6Gbr6n.js";import"./HarnessMark-DttReffF.js";import"./NewChatOrigin-DCn5cWPZ.js";import"./keyboard-nav-B8sQ_8IF.js";import"./x-DgmmnPKt.js";import"./chevron-down-D120PY4g.js";import"./search-FB2vVxCp.js";import"./file-text-BHro8MkG.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-D8iB6SMt.js";import"./TextDocumentSurface-2X1Gw4eA.js";import"./chevron-right-CowuvuE6.js";import"./code-xml-CkkNdRmu.js";import"./arrow-left-eToA6GxC.js";import"./arrow-right-DTX42clh.js";import"./chunk-HRAB3GC3-KjjrTLCU.js";function us(){const{agents:l,navigate:t}=v(),[m,p]=i.useState(null),[n,x]=i.useState([]),a=i.useCallback(async()=>{const[e,o]=await Promise.allSettled([r("/api/tail/discover"),r("/api/service-budgets")]);e.status==="fulfilled"&&p(e.value),o.status==="fulfilled"&&o.value?.gauges&&x(o.value.gauges)},[]);i.useEffect(()=>{a()},[a]),h(()=>{a()});const d=m?.processes??[],c=n.length>0?Math.round(Math.max(...n.map(e=>e.fill??0))*100):100;return s.jsxs("div",{className:"s-advisor-left-nav",children:[s.jsxs("div",{className:"s-ctx-panel-section",children:[s.jsxs("div",{className:"s-ctx-panel-head",children:[s.jsx(u,{size:14,className:"s-ctx-icon"}),s.jsx("span",{className:"label-xs",children:"HOST TELEMETRY"})]}),s.jsxs("div",{className:"s-ctx-stat-list",children:[s.jsxs("div",{className:"s-ctx-stat-item",children:[s.jsx("span",{className:"label-xs s-ctx-stat-label",children:"Agents Connected"}),s.jsx("span",{className:"chip chip--sm chip--mono",children:l.length})]}),s.jsxs("div",{className:"s-ctx-stat-item",children:[s.jsx("span",{className:"label-xs s-ctx-stat-label",children:"Active Processes"}),s.jsx("span",{className:"chip chip--sm chip--working chip--mono",children:d.length})]}),s.jsxs("div",{className:"s-ctx-stat-item",children:[s.jsx("span",{className:"label-xs s-ctx-stat-label",children:"Peak Quota"}),s.jsxs("span",{className:`chip chip--sm chip--mono ${c>80?"chip--warning":"chip--working"}`,children:[c,"%"]})]})]})]}),s.jsxs("div",{className:"s-ctx-panel-section",children:[s.jsxs("div",{className:"s-ctx-panel-head",children:[s.jsx(j,{size:14,className:"s-ctx-icon"}),s.jsx("span",{className:"label-xs",children:"OPERATIONS SURFACES"})]}),s.jsxs("div",{className:"s-ctx-nav-list",children:[s.jsxs("button",{type:"button",className:"s-ctx-nav-btn s-ctx-nav-btn--active",onClick:()=>t({view:"ops",mode:"advisor"}),children:[s.jsx(b,{size:13}),s.jsx("span",{children:"Host Advisor"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"ops",mode:"mission"}),children:[s.jsx(N,{size:13}),s.jsx("span",{children:"Mission Control"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"ops",mode:"lanes"}),children:[s.jsx(f,{size:13}),s.jsx("span",{children:"Agent Lanes"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"harnesses"}),children:[s.jsx(g,{size:13}),s.jsx("span",{children:"Agent Providers & Quotas"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"terminal"}),children:[s.jsx(y,{size:13}),s.jsx("span",{children:"Terminal Relays"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"search"}),children:[s.jsx(k,{size:13}),s.jsx("span",{children:"Knowledge Indexer"})]})]})]})]})}export{us as OpsAdvisorLeft};