@openscout/scout 0.2.98 → 0.2.105

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 (669) hide show
  1. package/NOTICE +7 -0
  2. package/README.md +37 -0
  3. package/bin/scout.mjs +6 -0
  4. package/bin/scoutd +0 -0
  5. package/dist/build-manifest.json +4 -4
  6. package/dist/chat.mjs +285 -0
  7. package/dist/client/assets/ActivityScreen-CcDdQTBK.js +1 -0
  8. package/dist/client/assets/{AddProjectForm-fXndbzXT.js → AddProjectForm-CHNJ4NnS.js} +1 -1
  9. package/dist/client/assets/AdventureEvidence-B4mEvXeD.js +5 -0
  10. package/dist/client/assets/AdventureReader-ZsBDQITY.js +4 -0
  11. package/dist/client/assets/AdventureScenery-DSxDlqG1.js +1 -0
  12. package/dist/client/assets/AgentAdventures-BxrYq_2v.js +1 -0
  13. package/dist/client/assets/AgentAvatar-NZOqcsB2.js +1 -0
  14. package/dist/client/assets/AgentConfigurationScreen-BhD1PEAM.js +1 -0
  15. package/dist/client/assets/AgentDefinitionsWorkspace-BqS6MXqF.js +1 -0
  16. package/dist/client/assets/AgentDetailCard-MIEBKw_S.js +1 -0
  17. package/dist/client/assets/AgentFloorView-A0dDRlRV.js +1 -0
  18. package/dist/client/assets/AgentFloorWorld-BTqwmK5G.js +1 -0
  19. package/dist/client/assets/AgentInfoScreen-DuaN0sgE.js +1 -0
  20. package/dist/client/assets/{AgentLaneCard-Cc9uyfBr.js → AgentLaneCard-C4rKLLdT.js} +1 -1
  21. package/dist/client/assets/{AgentLaneChrome-Dv2lBFoH.js → AgentLaneChrome-fGC-ZrJS.js} +1 -1
  22. package/dist/client/assets/{AgentLaneDetailSheet-CGqtqSHQ.js → AgentLaneDetailSheet-BTF4_th9.js} +2 -2
  23. package/dist/client/assets/{AgentLaneSummaryResize-Di4u6df2.js → AgentLaneSummaryResize-DgSeA_vS.js} +1 -1
  24. package/dist/client/assets/AgentLanesEmbedScreen-CeNiaZ9_.js +1 -0
  25. package/dist/client/assets/{AgentLanesPreflight-CCGBArIb.js → AgentLanesPreflight-CcS23wij.js} +1 -1
  26. package/dist/client/assets/AgentLanesView-WZhEDBFE.js +2 -0
  27. package/dist/client/assets/AgentLiveActions-6Kfr1uOT.js +1 -0
  28. package/dist/client/assets/AgentMasterScreen-DUDUTAnU.js +1 -0
  29. package/dist/client/assets/AgentSessions-CO1WGa8Z.js +6 -0
  30. package/dist/client/assets/AgentsConsole-BQOWkj35.js +1 -0
  31. package/dist/client/assets/AgentsScreen-BMNAj1PH.js +1 -0
  32. package/dist/client/assets/AgentsSubnav-CeHhuzyM.js +1 -0
  33. package/dist/client/assets/{AstronautSuit-CwB4Dw07.js → AstronautSuit-D67fIBdR.js} +1 -1
  34. package/dist/client/assets/AtopView-Ck30FbzG.js +1 -0
  35. package/dist/client/assets/BackToPicker-CkBhGRlD.js +1 -0
  36. package/dist/client/assets/BriefingDetailScreen-yZG8_m4h.js +1 -0
  37. package/dist/client/assets/BriefingsScreen-DTxYMr3a.js +1 -0
  38. package/dist/client/assets/{BrokerMetadataPanel-BJSwU9XZ.js → BrokerMetadataPanel-crirZCdo.js} +1 -1
  39. package/dist/client/assets/BrokerScreen-CT37VQiL.js +8 -0
  40. package/dist/client/assets/Canvas-CRP0KjKb.js +1 -0
  41. package/dist/client/assets/{CastPicker-CkgTalIt.js → CastPicker-ZPomvOf-.js} +1 -1
  42. package/dist/client/assets/ChannelComposer-BVItWlEz.js +1 -0
  43. package/dist/client/assets/ChannelSidebar-B-2spawY.js +1 -0
  44. package/dist/client/assets/CharacterFamilyPreview-BniL8sEL.css +1 -0
  45. package/dist/client/assets/CharacterFamilyPreview-ckVkecDO.js +1 -0
  46. package/dist/client/assets/ChatAvatar-DKBsbOqk.js +1 -0
  47. package/dist/client/assets/ChatBits-CLJ71hTY.js +1 -0
  48. package/dist/client/assets/ChatCollapsedStrip-Co0NmqOO.js +1 -0
  49. package/dist/client/assets/ChatRightPanel-pKQtkAgl.js +1 -0
  50. package/dist/client/assets/ChatSpaceSurface-NrLwdPkE.js +1 -0
  51. package/dist/client/assets/ChatSpaceTheme-BPMgPdVK.css +1 -0
  52. package/dist/client/assets/ChatSpaceTheme-D37Jk7bl.js +1 -0
  53. package/dist/client/assets/{CodeDiffPane-DfluIWmO.js → CodeDiffPane-D-iv28LJ.js} +1 -1
  54. package/dist/client/assets/{CodeProjectPicker-By_Wz9ex.js → CodeProjectPicker-CZ3gDdiT.js} +1 -1
  55. package/dist/client/assets/CodeScreen-CSC-zbP9.js +1 -0
  56. package/dist/client/assets/CommsCanvas-BR2YS76H.css +1 -0
  57. package/dist/client/assets/CommsCanvas-DdNAwjGW.js +1 -0
  58. package/dist/client/assets/CommsDeck-mGWY7Ivi.js +1 -0
  59. package/dist/client/assets/CommsFlowGraph-vQucylxF.css +1 -0
  60. package/dist/client/assets/CommsFlowGraph-voDD9M5R.js +1 -0
  61. package/dist/client/assets/CommsFlowMap-C33sgD48.js +1 -0
  62. package/dist/client/assets/CommsSelection-BL8aYD7z.js +1 -0
  63. package/dist/client/assets/{ConversationComposer-BUIjWMBi.js → ConversationComposer-DNcn5U6D.js} +1 -1
  64. package/dist/client/assets/ConversationFeedRows-RnYSa7Io.js +1 -0
  65. package/dist/client/assets/ConversationHeader-Y9TEJxP_.js +1 -0
  66. package/dist/client/assets/ConversationPanels-6pprBpmq.js +6 -0
  67. package/dist/client/assets/ConversationScreen-Brfas2y0.css +1 -0
  68. package/dist/client/assets/ConversationScreen-tpj4cqWs.js +2 -0
  69. package/dist/client/assets/ConversationStatus-Cv-7hErW.js +1 -0
  70. package/dist/client/assets/{CrewAvatar-CZ_faQ_s.js → CrewAvatar-zgzC3cbU.js} +1 -1
  71. package/dist/client/assets/CrewSprite-Dp9KBBGY.js +1 -0
  72. package/dist/client/assets/CrewSprite-DsQJdu3Z.css +1 -0
  73. package/dist/client/assets/CrewWorkspaces-DDuYMByu.css +1 -0
  74. package/dist/client/assets/CrewWorkspaces-K2jcyLec.js +1 -0
  75. package/dist/client/assets/{DataTable-C6aMSilS.js → DataTable-av71ehJV.js} +1 -1
  76. package/dist/client/assets/DispatchAftermath-CcYGUB10.js +1 -0
  77. package/dist/client/assets/DocumentFocusViewer-DlMiEALb.js +1 -0
  78. package/dist/client/assets/{EmbeddableSurfacesLab-D3iZiS8o.js → EmbeddableSurfacesLab-CTkO_tQR.js} +1 -1
  79. package/dist/client/assets/{EmptyState-CKPWFSjq.js → EmptyState-CYUwYyAW.js} +1 -1
  80. package/dist/client/assets/{FileViewerPane-CxNbcTYf.js → FileViewerPane-Cxhixtks.js} +2 -2
  81. package/dist/client/assets/FlightObserveScreen-CvzhzuWc.js +1 -0
  82. package/dist/client/assets/FloorContextSheet-Vj_wVZq1.js +1 -0
  83. package/dist/client/assets/FloorExchangePanel-B3TFhjLk.css +1 -0
  84. package/dist/client/assets/FloorExchangePanel-CjHSDXad.js +1 -0
  85. package/dist/client/assets/FloorMessagePasses-BG4ebnX5.js +1 -0
  86. package/dist/client/assets/FloorMessagePasses-nxwwiUom.css +1 -0
  87. package/dist/client/assets/FloorReplay-BoYaGY9t.js +1 -0
  88. package/dist/client/assets/FloorResourcesSheet-_Iy5UqgY.js +1 -0
  89. package/dist/client/assets/FloorSavedWork-jbtRs-YE.js +1 -0
  90. package/dist/client/assets/FloorTacticalHUD-BhyOqlL5.js +1 -0
  91. package/dist/client/assets/FollowScreen-CupyOgt4.js +1 -0
  92. package/dist/client/assets/HarnessMark-DSvM_H7H.js +1 -0
  93. package/dist/client/assets/HarnessesScreen-DyjqbZ4k.js +1 -0
  94. package/dist/client/assets/{HerdrSession-DsuxCtfX.js → HerdrSession-Dcm3vf9U.js} +3 -3
  95. package/dist/client/assets/{HomeHero-DXJo2QSO.js → HomeHero-pIZtE1cC.js} +1 -1
  96. package/dist/client/assets/HostAdvisorView-Dv5meXo2.js +1 -0
  97. package/dist/client/assets/InviteLandingScreen-xZQ2na1z.js +1 -0
  98. package/dist/client/assets/InviteSheet--5Zjct25.js +1 -0
  99. package/dist/client/assets/JumpPalette-BmiSOEmp.js +1 -0
  100. package/dist/client/assets/KnowledgeSearchInspector-B8yiM524.js +1 -0
  101. package/dist/client/assets/KnowledgeSearchScreen-BPqAjHnH.js +1 -0
  102. package/dist/client/assets/{LaneToolHoverCard-t7-XJP-h.js → LaneToolHoverCard-D2cnTeUd.js} +1 -1
  103. package/dist/client/assets/LaneTraceDetailSheet-jl4XQmEx.js +1 -0
  104. package/dist/client/assets/{LaneTraceEventFocus-BB5DhFQm.js → LaneTraceEventFocus-BLhVHwff.js} +1 -1
  105. package/dist/client/assets/MeshCanvas-BR25OBTJ.js +3 -0
  106. package/dist/client/assets/MeshCanvasMinimap-ClVolr4-.js +1 -0
  107. package/dist/client/assets/MeshScreen-BW1dMFWF.js +1 -0
  108. package/dist/client/assets/{MeshTopologyView-Dc0GSrKa.js → MeshTopologyView-BT3ke2D1.js} +2 -2
  109. package/dist/client/assets/MessagesScreen-CtNMfIvC.js +1 -0
  110. package/dist/client/assets/MissionContextRail-CafjuseK.js +1 -0
  111. package/dist/client/assets/MissionControlView-BjPOViGY.js +1 -0
  112. package/dist/client/assets/MissionFocusOverlay-nhy3hkxQ.js +1 -0
  113. package/dist/client/assets/MissionLeftAgentRow-Dms0DBjO.js +1 -0
  114. package/dist/client/assets/MissionLogPane-DiUf3vWW.js +1 -0
  115. package/dist/client/assets/NativeAreaScreen-BQSTo8As.js +1 -0
  116. package/dist/client/assets/NativeAreaScreen-Brix6xDB.js +1 -0
  117. package/dist/client/assets/NativeAreaScreen-D7HyQNlM.js +1 -0
  118. package/dist/client/assets/NewAgentModal-BQ2wQ5gp.js +1 -0
  119. package/dist/client/assets/NewChatComposer-BEXS8vV6.js +19 -0
  120. package/dist/client/assets/{NewChatOrigin-DCn5cWPZ.js → NewChatOrigin-C8ROO4ps.js} +1 -1
  121. package/dist/client/assets/NodeDetailPanel-BNTqYC7m.js +1 -0
  122. package/dist/client/assets/NodeMenu-CcOeFRCB.js +1 -0
  123. package/dist/client/assets/ObserveEmbedScreen-Dh30EjAQ.js +2 -0
  124. package/dist/client/assets/{ObserveTextFlow-DCJ5EmD8.js → ObserveTextFlow-CC5mnngm.js} +2 -2
  125. package/dist/client/assets/{ObservedTopologyPanel-CJVqIqQ2.js → ObservedTopologyPanel-DF6tRZL_.js} +1 -1
  126. package/dist/client/assets/OpenScoutAppShell-D9pgw36i.js +31 -0
  127. package/dist/client/assets/OpsAgentsView-D3rM0udq.js +1 -0
  128. package/dist/client/assets/OpsScreen-DySeNQ1V.js +1 -0
  129. package/dist/client/assets/OpsSubnav-C9E0r3GZ.js +1 -0
  130. package/dist/client/assets/ProjectAgentProfile-FUav75j2.js +1 -0
  131. package/dist/client/assets/{ProjectAgentProfileBar-CUzZ4Rpx.js → ProjectAgentProfileBar-C8z22pJ2.js} +1 -1
  132. package/dist/client/assets/ProjectAgentProfileHero-BLK0EwMg.js +1 -0
  133. package/dist/client/assets/ProjectsInbox-DfCXReZK.js +2 -0
  134. package/dist/client/assets/ProjectsRail-CELVubfJ.js +1 -0
  135. package/dist/client/assets/ProjectsScreen-DMw4TLKy.js +1 -0
  136. package/dist/client/assets/ProjectsThreadAside-D1Sh4fnX.js +1 -0
  137. package/dist/client/assets/Provider-CNZluAZb.js +5 -0
  138. package/dist/client/assets/{RailRow-B0sRaJc6.css → RailRow-B25zKEub.css} +1 -1
  139. package/dist/client/assets/RailRow-DUPqXMZh.js +1 -0
  140. package/dist/client/assets/RailToggle-BwmY70B8.js +1 -0
  141. package/dist/client/assets/RawSessionsTable-6OVJq0JZ.js +1 -0
  142. package/dist/client/assets/RealtimeVoiceScreen-D41TYY0x.js +9 -0
  143. package/dist/client/assets/RenderedWorkerSprite-C8fxndAh.js +1 -0
  144. package/dist/client/assets/RenderedWorkerSprite-qnTfkd_4.css +1 -0
  145. package/dist/client/assets/ReplayClock-DUVJjrIu.js +1 -0
  146. package/dist/client/assets/ReplayLog-Bek1Vc4W.js +1 -0
  147. package/dist/client/assets/ReplayOutpost-DlRg3172.js +1 -0
  148. package/dist/client/assets/ReplayOutpost-Y1DvZgeu.css +1 -0
  149. package/dist/client/assets/{RepoDiffEmbedScreen-mexrJPhW.js → RepoDiffEmbedScreen-CVUMnt6A.js} +1 -1
  150. package/dist/client/assets/{RepoDiffPageScreen-DbqX4L3q.js → RepoDiffPageScreen-D9-s5PyB.js} +1 -1
  151. package/dist/client/assets/RepoDiffViewer-D7FN-oyY.js +7 -0
  152. package/dist/client/assets/RepoDiffViewerLazy-BpMR7tlx.js +2 -0
  153. package/dist/client/assets/{ReposScreen-CzbO1Fuy.js → ReposScreen-BQ7HO1om.js} +2 -2
  154. package/dist/client/assets/RiggedWorkerCharacter-BpYECnyK.css +1 -0
  155. package/dist/client/assets/RiggedWorkerCharacter-CJMWlvV-.js +1 -0
  156. package/dist/client/assets/SageModelStudio-768dRQr4.css +1 -0
  157. package/dist/client/assets/SageModelStudio-B526NSnw.js +4108 -0
  158. package/dist/client/assets/ScoutDeckSurface-ChkvGyEW.js +1 -0
  159. package/dist/client/assets/{ScoutSurface-NlhDsPzg.js → ScoutSurface-6g1f5chk.js} +1 -1
  160. package/dist/client/assets/{ScoutbotFxLab-l2WAahCg.js → ScoutbotFxLab-BuwBdnPf.js} +1 -1
  161. package/dist/client/assets/{SecondaryNav-Cs0_FQdj.js → SecondaryNav-Bs-_VwTC.js} +1 -1
  162. package/dist/client/assets/SessionEmbedScreen-C2wf35-P.js +1 -0
  163. package/dist/client/assets/SessionObserve-B64YsYhy.js +12 -0
  164. package/dist/client/assets/{SessionObserve-CLrHfAKZ.css → SessionObserve-CDdJ7fAE.css} +1 -1
  165. package/dist/client/assets/SessionObserveEvidence-CS1aQBpQ.js +1 -0
  166. package/dist/client/assets/SessionRefScreen-DURV0MpF.js +1 -0
  167. package/dist/client/assets/SessionsScreen-D71ZR-8t.js +1 -0
  168. package/dist/client/assets/SettingsDrawer-Nz98oBVl.js +3 -0
  169. package/dist/client/assets/SettingsScreen-CYBHal6y.js +1 -0
  170. package/dist/client/assets/SharedFloorCharacter-Bi5_md4R.css +1 -0
  171. package/dist/client/assets/SharedFloorCharacter-V04kD5T9.js +1 -0
  172. package/dist/client/assets/SharedWorkFloor-BCmdeb3Q.css +1 -0
  173. package/dist/client/assets/SharedWorkFloor-C0xxW4SN.js +2 -0
  174. package/dist/client/assets/{ShikiPane-C0TuCATU.js → ShikiPane-XwFI-pCp.js} +1 -1
  175. package/dist/client/assets/{SlidePanel-CETQ5NTx.js → SlidePanel-BMpkXai_.js} +1 -1
  176. package/dist/client/assets/SpaceSwitcher-BfeIf-ad.js +1 -0
  177. package/dist/client/assets/SpriteAvatar-aHeF4ZQZ.js +1 -0
  178. package/dist/client/assets/SproutActionSprite-DI5N3gOj.js +1 -0
  179. package/dist/client/assets/{StatusPill-BllrY-eg.js → StatusPill-Dw4LP7wu.js} +1 -1
  180. package/dist/client/assets/{TailView-_gKWfaQM.js → TailView-BofjmUMJ.js} +2 -2
  181. package/dist/client/assets/Terminal-jIqnIZZ6.js +4 -0
  182. package/dist/client/assets/TerminalEmbedScreen-3XsjuySR.js +1 -0
  183. package/dist/client/assets/TerminalHeaderMount-CwbQhXcI.js +1 -0
  184. package/dist/client/assets/TerminalRelay--qOBwnbR.js +46 -0
  185. package/dist/client/assets/{TextDocumentSurface-2X1Gw4eA.js → TextDocumentSurface-BK6Qy41F.js} +1 -1
  186. package/dist/client/assets/{TmuxPeek-CqTJRhkI.js → TmuxPeek-DpUT9Tpc.js} +1 -1
  187. package/dist/client/assets/{VoicePermissionsPanel-C4vkU-sU.js → VoicePermissionsPanel-D35fOnQj.js} +1 -1
  188. package/dist/client/assets/{WorkDetailScreen-DqGnuK0e.js → WorkDetailScreen-Bcf_yHhU.js} +4 -4
  189. package/dist/client/assets/WorkFilesViewer-t8AEyx3Q.js +1 -0
  190. package/dist/client/assets/WorkRunView-CxwAZ2QQ.css +1 -0
  191. package/dist/client/assets/WorkRunView-_mhG_FR2.js +1 -0
  192. package/dist/client/assets/WorldActorTalk-CKerDikx.js +1 -0
  193. package/dist/client/assets/WorldCharacter-BRrj3MQN.js +1 -0
  194. package/dist/client/assets/WorldMinimap-DOptgrc4.js +1 -0
  195. package/dist/client/assets/WorldSky-D-RJzSa6.js +1 -0
  196. package/dist/client/assets/{activity-CzTJ-YMX.js → activity-BJqFrZyB.js} +1 -1
  197. package/dist/client/assets/{addon-fit-Zx3A7pGS.js → addon-fit-CHohcvS3.js} +1 -1
  198. package/dist/client/assets/{addon-webgl-DitJj-N0.js → addon-webgl-CaRy2x2b.js} +1 -1
  199. package/dist/client/assets/adventure-evidence-DgQbBmfa.css +1 -0
  200. package/dist/client/assets/adventure-habitats-v1-CVMbdB_Z.png +0 -0
  201. package/dist/client/assets/adventure-habitats-v1-M1lcpTJh.js +1 -0
  202. package/dist/client/assets/adventure-playback-DTfkhIc0.js +3 -0
  203. package/dist/client/assets/adventure-reader-DM5UDDm9.css +1 -0
  204. package/dist/client/assets/agent-adventures-DZtWpj6k.css +1 -0
  205. package/dist/client/assets/agent-autocomplete-_u9o5EZu.js +2 -0
  206. package/dist/client/assets/{agent-essentials-K9B6kbTS.js → agent-essentials-bKWYOZaH.js} +1 -1
  207. package/dist/client/assets/{agent-floor-CuJr1iK1.css → agent-floor-Dmr9hZHL.css} +1 -1
  208. package/dist/client/assets/agent-floor-actor-DW8zLht0.js +1 -0
  209. package/dist/client/assets/agent-floor-world-Bnd1AtwK.css +1 -0
  210. package/dist/client/assets/agent-floor-world-layout-hfMjuoui.js +1 -0
  211. package/dist/client/assets/agent-lane-card-model-CeqQGp-8.js +1 -0
  212. package/dist/client/assets/{agent-lane-detail-ppJId6Jc.js → agent-lane-detail-Ti3trpfH.js} +1 -1
  213. package/dist/client/assets/{agent-lane-preview-BhplDYGf.js → agent-lane-preview-Dpa3DuOn.js} +1 -1
  214. package/dist/client/assets/{agent-lanes-DlqcEf0l.css → agent-lanes-DmgipV9D.css} +1 -1
  215. package/dist/client/assets/agent-lanes-model-DMAdqCmK.js +4 -0
  216. package/dist/client/assets/agent-master-THmq-1k8.css +1 -0
  217. package/dist/client/assets/agent-master-model-C-KdOFDK.js +1 -0
  218. package/dist/client/assets/{agent-specialization-CtF_jI34.js → agent-specialization-BplZUa_0.js} +1 -1
  219. package/dist/client/assets/agent-state-DDhnFEEP.js +1 -0
  220. package/dist/client/assets/{api-HFH8wFyb.js → api-BQYTwoz6.js} +1 -1
  221. package/dist/client/assets/api-DSqpVKC7.js +1 -0
  222. package/dist/client/assets/{arc.es-BNXJqSw7.js → arc.es-CubLvQ4W.js} +1 -1
  223. package/dist/client/assets/{arrow-left-eToA6GxC.js → arrow-left-DFfKAq0d.js} +1 -1
  224. package/dist/client/assets/{arrow-right-DTX42clh.js → arrow-right-DmAWnyAH.js} +1 -1
  225. package/dist/client/assets/{arrow-up-right-B09GPwFl.js → arrow-up-right-B0aLKiyF.js} +1 -1
  226. package/dist/client/assets/at-sign-DM7xeppo.js +1 -0
  227. package/dist/client/assets/book-open-BL9qvhEI.js +1 -0
  228. package/dist/client/assets/{bot-WxKXYtEX.js → bot-BhAVbcCA.js} +1 -1
  229. package/dist/client/assets/broker-display-BkBzyvbR.js +2 -0
  230. package/dist/client/assets/{cache-CeWH_KzJ.js → cache-DGBo3vIf.js} +1 -1
  231. package/dist/client/assets/chat-api-BPVC0asu.js +1 -0
  232. package/dist/client/assets/chat-space-model-B6Jg2CY4.js +4 -0
  233. package/dist/client/assets/{check-Dz2SRHft.js → check-g7D7-c1J.js} +1 -1
  234. package/dist/client/assets/{chevron-down-D120PY4g.js → chevron-down-CDzRQQGl.js} +1 -1
  235. package/dist/client/assets/{chevron-right-CowuvuE6.js → chevron-right-DKGTLiqc.js} +1 -1
  236. package/dist/client/assets/chevron-up-DX7R6KY2.js +1 -0
  237. package/dist/client/assets/{chunk-HRAB3GC3-KjjrTLCU.js → chunk-HRAB3GC3-Dvk_QpRq.js} +1 -1
  238. package/dist/client/assets/{clock-_9FDplIT.js → clock-CQb4FeMf.js} +1 -1
  239. package/dist/client/assets/{code-xml-CkkNdRmu.js → code-xml-Cmadr3pQ.js} +1 -1
  240. package/dist/client/assets/coffee-ljG1_krY.js +1 -0
  241. package/dist/client/assets/colors-CFlbwC25.js +1 -0
  242. package/dist/client/assets/comms-deck-C8nVeMBh.css +1 -0
  243. package/dist/client/assets/comms-deck-CBhsXnY-.js +2 -0
  244. package/dist/client/assets/comms-gesture-_aGFo6g3.js +2 -0
  245. package/dist/client/assets/{compass-BdpImt_W.js → compass-CvzkzkIh.js} +1 -1
  246. package/dist/client/assets/content-0AXa0klu.js +1 -0
  247. package/dist/client/assets/content-BEyJ19Lx.js +1 -0
  248. package/dist/client/assets/content-BN5weWKW.js +1 -0
  249. package/dist/client/assets/content-BNokkm7C.js +1 -0
  250. package/dist/client/assets/content-BV4PUM9q.js +1 -0
  251. package/dist/client/assets/content-BxUPlcx5.js +1 -0
  252. package/dist/client/assets/content-CIC5sku8.js +1 -0
  253. package/dist/client/assets/content-CKJ9zb7Z.js +1 -0
  254. package/dist/client/assets/content-CdkTyxqk.js +1 -0
  255. package/dist/client/assets/content-CnhhSCZq.js +1 -0
  256. package/dist/client/assets/content-D1Ze_FG9.js +1 -0
  257. package/dist/client/assets/content-DY3F9Vfr.js +1 -0
  258. package/dist/client/assets/content-DrKBYpcb.js +1 -0
  259. package/dist/client/assets/content-LSStQYj5.js +1 -0
  260. package/dist/client/assets/content-YvU-D0hF.js +1 -0
  261. package/dist/client/assets/content-oKQMyVnH.js +1 -0
  262. package/dist/client/assets/{context-budget-DqxWzalx.js → context-budget-8qFKqM-j.js} +1 -1
  263. package/dist/client/assets/{conversation-icons-DHGc9wbT.js → conversation-icons-CIRaxmid.js} +1 -1
  264. package/dist/client/assets/conversation-model-m8HhzroS.js +1 -0
  265. package/dist/client/assets/conversation-motion-features-D9PxLoDt.js +1 -0
  266. package/dist/client/assets/conversations-Cbg9h_Af.js +1 -0
  267. package/dist/client/assets/{copy-BzdzWsQd.js → copy-BGOC1tJB.js} +1 -1
  268. package/dist/client/assets/{cpu-CHFIGw87.js → cpu-Q6nrHFTN.js} +1 -1
  269. package/dist/client/assets/{createLucideIcon-Dv8H8m7J.js → createLucideIcon-ChvMq-zl.js} +1 -1
  270. package/dist/client/assets/{credentials-BTce3VP1.js → credentials-OeoF-VKJ.js} +1 -1
  271. package/dist/client/assets/discover-DlwbftpC.js +2 -0
  272. package/dist/client/assets/embed-entry-c0lwtjBG.js +2 -0
  273. package/dist/client/assets/embed-navigation-DayfkQau.js +1 -0
  274. package/dist/client/assets/{external-link-BvX5PfLh.js → external-link-BVccgH0n.js} +1 -1
  275. package/dist/client/assets/{eye-C9cGk5z6.js → eye-CsGfEVR6.js} +1 -1
  276. package/dist/client/assets/{file-code-corner-jlGFdr8d.js → file-code-corner-Be6da5l3.js} +1 -1
  277. package/dist/client/assets/{file-text-BHro8MkG.js → file-text-DP6txVW-.js} +1 -1
  278. package/dist/client/assets/flag-DAFE2wZ5.js +1 -0
  279. package/dist/client/assets/floor-character-name-CqJPOlXb.js +1 -0
  280. package/dist/client/assets/floor-context-model-rWKqaKmV.js +1 -0
  281. package/dist/client/assets/floor-context-sheet-BFnkFiY3.css +1 -0
  282. package/dist/client/assets/floor-memory-YMM8AlLY.js +1 -0
  283. package/dist/client/assets/floor-message-passes-CO3Ix_wR.js +1 -0
  284. package/dist/client/assets/floor-preview-text-HrORUJ7D.js +1 -0
  285. package/dist/client/assets/floor-replay-CccYqE-f.css +1 -0
  286. package/dist/client/assets/floor-tactical-hud-HL5Vja5Y.css +1 -0
  287. package/dist/client/assets/folder-B_S7gBVr.js +1 -0
  288. package/dist/client/assets/{gauge-DSflSery.js → gauge-DQCGlE3o.js} +1 -1
  289. package/dist/client/assets/{gestures-YA5IIwp-.js → gestures-CofqY4Km.js} +1 -1
  290. package/dist/client/assets/{git-branch-Bc_eDIpG.js → git-branch-DcUCsWdJ.js} +1 -1
  291. package/dist/client/assets/go-shortcuts-KQy-ZOpV.js +1 -0
  292. package/dist/client/assets/home-moving-signal-BIHUGNfI.js +1 -0
  293. package/dist/client/assets/home-now-card-CaLgZze2.js +1 -0
  294. package/dist/client/assets/{home-now-card-nano-Jmy7eJ6H.js → home-now-card-nano-CvU8B61b.js} +1 -1
  295. package/dist/client/assets/{hooks-D6NI15f6.css → hooks-D787lBmm.css} +1 -1
  296. package/dist/client/assets/hooks-DaUOREpP.js +2 -0
  297. package/dist/client/assets/index-CGbs0SBm.css +1 -0
  298. package/dist/client/assets/index-CbqBwfIW.js +1 -0
  299. package/dist/client/assets/index-CyPMl7Up.js +1 -0
  300. package/dist/client/assets/index-DReVb7jZ.js +10 -0
  301. package/dist/client/assets/index-PQpJveGO.js +1 -0
  302. package/dist/client/assets/index-kkXUq-zf.js +1 -0
  303. package/dist/client/assets/{inspector-panel-CwrHjRaQ.js → inspector-panel-CLU7wjnT.js} +2 -2
  304. package/dist/client/assets/{keyboard-nav-B8sQ_8IF.js → keyboard-nav-CJXPaHXj.js} +1 -1
  305. package/dist/client/assets/knowledge-search-BNdQweGz.css +1 -0
  306. package/dist/client/assets/lane-ask-display-BTVSakyo.js +18 -0
  307. package/dist/client/assets/{lane-edit-display-C_Aujldz.js → lane-edit-display-BjdT9oZl.js} +1 -1
  308. package/dist/client/assets/{lane-observe-vfyACHi0.js → lane-observe-CteDwdD-.js} +3 -3
  309. package/dist/client/assets/lane-roster-store-Ch9t6lb0.js +1 -0
  310. package/dist/client/assets/{lane-tool-detail-0WhMf4Vj.js → lane-tool-detail-Czggx8oM.js} +1 -1
  311. package/dist/client/assets/{layers-CW2-qHsG.js → layers-BOwyWodP.js} +1 -1
  312. package/dist/client/assets/{layout-grid-BoVnPOk-.js → layout-grid-B36Qsh0y.js} +1 -1
  313. package/dist/client/assets/left-0vBrvrBG.js +2 -0
  314. package/dist/client/assets/{left-DH44V4I_.css → left-BV9yMiTL.css} +1 -1
  315. package/dist/client/assets/left-C6SyaqlJ.js +1 -0
  316. package/dist/client/assets/left-CTuXysZR.js +2 -0
  317. package/dist/client/assets/left-Cc6s4DT2.js +1 -0
  318. package/dist/client/assets/left-DF5caiyh.js +1 -0
  319. package/dist/client/assets/left-DgT4tWCx.js +1 -0
  320. package/dist/client/assets/left-R0wppTTr.js +1 -0
  321. package/dist/client/assets/left-advisor-C-kt8V28.js +1 -0
  322. package/dist/client/assets/left-agents-thnBO156.js +1 -0
  323. package/dist/client/assets/left-default-CT42fnpF.js +1 -0
  324. package/dist/client/assets/left-lanes-CSmZgciK.js +1 -0
  325. package/dist/client/assets/left-mission-C86x6i9h.js +1 -0
  326. package/dist/client/assets/left-mission-DENnfshd.css +1 -0
  327. package/dist/client/assets/library-DdhYL_9v.js +1 -0
  328. package/dist/client/assets/{loader-circle-DmUG_YC7.js → loader-circle-DNUsuPWz.js} +1 -1
  329. package/dist/client/assets/{local-agents-VP1-ZlPw.js → local-agents-I40PawYA.js} +1 -1
  330. package/dist/client/assets/machine-children-CdhNzDF0.js +1 -0
  331. package/dist/client/assets/machine-scope-DJt9RZ2w.js +1 -0
  332. package/dist/client/assets/mentions-Ck_Vjnyp.js +1 -0
  333. package/dist/client/assets/{mesh-ops-CKSWgax2.js → mesh-ops-DSlvHp-D.js} +1 -1
  334. package/dist/client/assets/{mesh-screen-D1Yvo8fU.css → mesh-screen-DjA4mOaN.css} +1 -1
  335. package/dist/client/assets/mesh-view-store-C1-mdP3P.js +1 -0
  336. package/dist/client/assets/{message-circle-joGFxfj1.js → message-circle-cI5_A5mj.js} +1 -1
  337. package/dist/client/assets/{message-markup-DC0QFEZn.js → message-markup-6Tgo4qFJ.js} +1 -1
  338. package/dist/client/assets/{message-square-BLiFqpe_.js → message-square-CJW4WRlo.js} +1 -1
  339. package/dist/client/assets/{message-visibility-CGOmSSKs.js → message-visibility-DwxgcgYK.js} +1 -1
  340. package/dist/client/assets/mission-control-CsX3Yc58.css +1 -0
  341. package/dist/client/assets/mission-control-model-C30vU1Fe.js +1 -0
  342. package/dist/client/assets/mission-control-store-p_cboAm4.js +1 -0
  343. package/dist/client/assets/{mission-wall-CocIM1cF.js → mission-wall-DOuGOxQy.js} +1 -1
  344. package/dist/client/assets/monitor-C7_cHlkC.js +1 -0
  345. package/dist/client/assets/nav-destinations-CU_euC-Q.js +1 -0
  346. package/dist/client/assets/observe-CtS0l3zu.js +1 -0
  347. package/dist/client/assets/{operator-attention-RqieiSY8.js → operator-attention-DBaRg5ep.js} +1 -1
  348. package/dist/client/assets/ops-screen-CxYM0VOW.css +1 -0
  349. package/dist/client/assets/page-status-DwFR4wSw.js +1 -0
  350. package/dist/client/assets/panel-right-qP17MwMl.js +1 -0
  351. package/dist/client/assets/pause-B_hliKuR.js +1 -0
  352. package/dist/client/assets/{persistent-state-BubPQ7tT.js → persistent-state-BUsTTZFE.js} +1 -1
  353. package/dist/client/assets/pin-Oi4qHR6M.js +1 -0
  354. package/dist/client/assets/pip-idle-v1-Tt-CZsRG.png +0 -0
  355. package/dist/client/assets/pip-thinking-v1-BoHWSEye.png +0 -0
  356. package/dist/client/assets/pip-waiting-v1-DkuvJ-dN.png +0 -0
  357. package/dist/client/assets/pip-working-v1-wWQLRS1z.png +0 -0
  358. package/dist/client/assets/play-CVeRmqLH.js +1 -0
  359. package/dist/client/assets/{plus-BWKhylds.js → plus-D5NLH_fM.js} +1 -1
  360. package/dist/client/assets/profile-BegEUmB7.js +1 -0
  361. package/dist/client/assets/projects-inbox-CKPLZN8s.css +1 -0
  362. package/dist/client/assets/{projects-inbox-DFbgVlXL.js → projects-inbox-CfwxCTdN.js} +1 -1
  363. package/dist/client/assets/provider-DwmCoSlc.js +1 -0
  364. package/dist/client/assets/{proxy-DVDRhSRR.js → proxy-DgzP27W8.js} +1 -1
  365. package/dist/client/assets/{radio-CxIXS1nU.js → radio-Cas2qg1D.js} +1 -1
  366. package/dist/client/assets/{refresh-cw-Bkh7Cvnd.js → refresh-cw-IcD2lPoT.js} +1 -1
  367. package/dist/client/assets/resolve-panes-pfZTezKo.js +1 -0
  368. package/dist/client/assets/resolve-sidebar-context-D5ksvrb_.js +1 -0
  369. package/dist/client/assets/right-BDaCJ0CF.js +1 -0
  370. package/dist/client/assets/right-BP6lXRFS.js +1 -0
  371. package/dist/client/assets/right-Cb1VCrdj.js +1 -0
  372. package/dist/client/assets/right-CeFaxfBo.js +1 -0
  373. package/dist/client/assets/right-Ck2SrYCj.js +1 -0
  374. package/dist/client/assets/right-D-uv5YfF.js +1 -0
  375. package/dist/client/assets/right-DJMSICky.js +1 -0
  376. package/dist/client/assets/right-Dnljs8ah.js +1 -0
  377. package/dist/client/assets/right-SdCSF8PP.js +1 -0
  378. package/dist/client/assets/{right-DVUq5374.js → right-cjPTwPXS.js} +2 -2
  379. package/dist/client/assets/{rocket-CnxqjX_K.js → rocket-DAqYvu8I.js} +1 -1
  380. package/dist/client/assets/router-C-MF5-mb.js +1 -0
  381. package/dist/client/assets/{runtime-picker-BYAFNLNq.css → runtime-picker-C3JwrDKP.css} +1 -1
  382. package/dist/client/assets/runtime-picker-C_AVYF63.js +1 -0
  383. package/dist/client/assets/{scope-views-KPY85UUx.js → scope-views-Dl3ml9OZ.js} +1 -1
  384. package/dist/client/assets/scout-voice-CqAyfblr.js +1 -0
  385. package/dist/client/assets/{scoutbot-D7kGGyK_.js → scoutbot-Bk3nyrkj.js} +2 -2
  386. package/dist/client/assets/{scoutbot-markdown-yb87JlSE.js → scoutbot-markdown-DwvGQOWo.js} +1 -1
  387. package/dist/client/assets/{scroll-text-DFcBYy5J.js → scroll-text-B0tKI9Sg.js} +1 -1
  388. package/dist/client/assets/{search-FB2vVxCp.js → search-UsM-9-_W.js} +1 -1
  389. package/dist/client/assets/secondaryNavConfig-D15P1Y9k.css +1 -0
  390. package/dist/client/assets/secondaryNavConfig-DzNHk6IH.js +1 -0
  391. package/dist/client/assets/{selection-bridge-qBGFCJv8.js → selection-bridge-OTS2iFkt.js} +1 -1
  392. package/dist/client/assets/{send-horizontal-CS7mxVhX.js → send-horizontal-BlQsRK6C.js} +1 -1
  393. package/dist/client/assets/send-to-agent-session-C1mgqdow.js +1 -0
  394. package/dist/client/assets/{server-WY6gsbZz.js → server-DBlPW0Mp.js} +1 -1
  395. package/dist/client/assets/{session-catalog-CG4oL_yN.js → session-catalog-CnpZMB7C.js} +1 -1
  396. package/dist/client/assets/{session-table-uJh3v-ly.js → session-table-CGkfG5Yd.js} +1 -1
  397. package/dist/client/assets/sessions-view-Bge4XZ4I.js +1 -0
  398. package/dist/client/assets/{settings-DQEtqkM9.js → settings-C69Zjrpq.js} +1 -1
  399. package/dist/client/assets/shared-work-artifacts-DfNl9KTo.js +1 -0
  400. package/dist/client/assets/{sliders-horizontal-57e99_qO.js → sliders-horizontal-6bzeod7c.js} +1 -1
  401. package/dist/client/assets/solar-system-scope-2k-stars-points-1FwHnkj0.png +0 -0
  402. package/dist/client/assets/{sparkles-D0vWLTyC.js → sparkles-Cc5lPZRv.js} +1 -1
  403. package/dist/client/assets/sprout-action-sprite-DZ8C0fTl.css +1 -0
  404. package/dist/client/assets/sprout-actions-proof-v1-BzUdc812.png +0 -0
  405. package/dist/client/assets/{sse-B29iGBnw.js → sse-A8AyLH0g.js} +1 -1
  406. package/dist/client/assets/system-surfaces-redesign-DKFg4GB5.css +1 -0
  407. package/dist/client/assets/{tail-display-DcliDVkW.js → tail-display-DHSNmvor.js} +2 -2
  408. package/dist/client/assets/{tail-events-LK29oCKm.js → tail-events-C4WdhVeK.js} +1 -1
  409. package/dist/client/assets/{terminal-UDy4lzV1.js → terminal-DMZjX1es.js} +1 -1
  410. package/dist/client/assets/{terminal-relay-CXHMdain.js → terminal-relay-mO89dX-Y.js} +1 -1
  411. package/dist/client/assets/terminal-screen-Bpb2SZrn.css +1 -0
  412. package/dist/client/assets/{terminal-sessions-Bdt2W3Y4.js → terminal-sessions-3RfJpen8.js} +1 -1
  413. package/dist/client/assets/{terminal-takeover-BMeBjBB2.js → terminal-takeover-CZZsnPzj.js} +1 -1
  414. package/dist/client/assets/use-beside-D3cJpA5p.js +1 -0
  415. package/dist/client/assets/use-conversation-list-D5EnpVba.js +1 -0
  416. package/dist/client/assets/{use-fleet-active-asks-CCGrll5q.js → use-fleet-active-asks-D_QOmjg5.js} +1 -1
  417. package/dist/client/assets/use-mesh-node-state-3V3ADQ-G.js +1 -0
  418. package/dist/client/assets/{use-mesh-ops-items-BjyeFJTz.js → use-mesh-ops-items-DI9GKWlF.js} +1 -1
  419. package/dist/client/assets/{use-reduced-motion-CPoX8iV2.js → use-reduced-motion-CiaZHMnk.js} +1 -1
  420. package/dist/client/assets/use-scout-dev-flags-CkdAHlDR.js +1 -0
  421. package/dist/client/assets/{useAgentHoverCard-BgTLNcF-.js → useAgentHoverCard-A3QGXqIy.js} +1 -1
  422. package/dist/client/assets/useContentSecondaryNav-DrL_nkCZ.js +1 -0
  423. package/dist/client/assets/{useEmbedHeadline-DuUnwTB7.js → useEmbedHeadline-atkQVfGw.js} +1 -1
  424. package/dist/client/assets/usePersistentState-Y8XwSTg-.js +1 -0
  425. package/dist/client/assets/{usePierreRuntime-35AHf9RQ.js → usePierreRuntime-DTvcwISe.js} +1 -1
  426. package/dist/client/assets/users-RLK3P5U4.js +1 -0
  427. package/dist/client/assets/worker-rendered-v1-DmGVMlVi.png +0 -0
  428. package/dist/client/assets/worker-thinking-v1-ujakpzrK.png +0 -0
  429. package/dist/client/assets/worker-waiting-v1-DbTSsfJJ.png +0 -0
  430. package/dist/client/assets/worker-working-v1-BROAvJ_z.png +0 -0
  431. package/dist/client/assets/world-outposts-v1-DOt0i98W.png +0 -0
  432. package/dist/client/assets/{wrench-BfVeded5.js → wrench-B4maQJai.js} +1 -1
  433. package/dist/client/assets/{x-DgmmnPKt.js → x-rlMdRqJF.js} +1 -1
  434. package/dist/client/assets/{xterm-DnJJmrCA.js → xterm-B1zHHOLQ.js} +1 -1
  435. package/dist/client/assets/{zap-Bcja1lHG.js → zap-B4X0OrEw.js} +1 -1
  436. package/dist/client/characters/sage/sage.glb +0 -0
  437. package/dist/client/crew/brik-bust.webp +0 -0
  438. package/dist/client/crew/brik-chip-id.webp +0 -0
  439. package/dist/client/crew/fenn-bust.webp +0 -0
  440. package/dist/client/crew/fenn-chip-id.webp +0 -0
  441. package/dist/client/crew/lulu-bust.webp +0 -0
  442. package/dist/client/crew/milo-bust.webp +0 -0
  443. package/dist/client/crew/milo-chip-id.webp +0 -0
  444. package/dist/client/crew/nori-bust.webp +0 -0
  445. package/dist/client/crew/pip-bust.webp +0 -0
  446. package/dist/client/crew/pip-chip-id.webp +0 -0
  447. package/dist/client/crew/sheets/eye-plate-v1/blink-half.webp +0 -0
  448. package/dist/client/crew/sheets/eye-plate-v1/blink-shut.webp +0 -0
  449. package/dist/client/crew/sheets/eye-plate-v1/look-left.webp +0 -0
  450. package/dist/client/crew/sheets/eye-plate-v1/look-right.webp +0 -0
  451. package/dist/client/crew/sheets/eye-plate-v1/look-up.webp +0 -0
  452. package/dist/client/crew/sheets/eye-plate-v1/rest.webp +0 -0
  453. package/dist/client/crew/sheets/sprout/blink-half.webp +0 -0
  454. package/dist/client/crew/sheets/sprout/blink-shut.webp +0 -0
  455. package/dist/client/crew/sheets/sprout/look-left.webp +0 -0
  456. package/dist/client/crew/sheets/sprout/look-right.webp +0 -0
  457. package/dist/client/crew/sheets/sprout/look-up.webp +0 -0
  458. package/dist/client/crew/sprout-bust.webp +0 -0
  459. package/dist/client/crew/sprout-chip-id.webp +0 -0
  460. package/dist/client/crew/tuck-bust.webp +0 -0
  461. package/dist/client/crew/tuck-chip-id.webp +0 -0
  462. package/dist/client/crew/vex-bust.webp +0 -0
  463. package/dist/client/crew/vex-chip-id.webp +0 -0
  464. package/dist/client/crew/wrench-bust.webp +0 -0
  465. package/dist/client/crew/wrench-chip-id.webp +0 -0
  466. package/dist/client/index.html +15 -3
  467. package/dist/drizzle/0017_wise_silver_sable.sql +26 -0
  468. package/dist/drizzle/0018_message_epoch_order.sql +1 -0
  469. package/dist/drizzle/0019_session_actor_targets.sql +227 -0
  470. package/dist/drizzle/README.md +19 -0
  471. package/dist/drizzle/meta/0017_snapshot.json +6785 -0
  472. package/dist/drizzle/meta/0018_snapshot.json +6804 -0
  473. package/dist/drizzle/meta/0019_snapshot.json +6804 -0
  474. package/dist/drizzle/meta/_journal.json +21 -0
  475. package/dist/highlights-eq9cgrbb.scm +604 -0
  476. package/dist/highlights-ghv9g403.scm +205 -0
  477. package/dist/highlights-hk7bwhj4.scm +284 -0
  478. package/dist/highlights-r812a2qc.scm +150 -0
  479. package/dist/highlights-x6tmsnaa.scm +115 -0
  480. package/dist/injections-73j83es3.scm +27 -0
  481. package/dist/main.mjs +32163 -29049
  482. package/dist/node/main.mjs +7189 -6285
  483. package/dist/openscout-terminal-relay.mjs +391 -9
  484. package/dist/pairing-runtime-controller.mjs +36724 -35406
  485. package/dist/runtime/base-daemon.mjs +14204 -63
  486. package/dist/runtime/broker-daemon.mjs +23498 -3137
  487. package/dist/runtime/broker-process-manager.mjs +19 -5
  488. package/dist/runtime/mesh-discover.mjs +18 -5
  489. package/dist/scout-control-plane-web.mjs +58517 -36972
  490. package/dist/statusline.mjs +1021 -35
  491. package/dist/tree-sitter-javascript-nd0q4pe9.wasm +0 -0
  492. package/dist/tree-sitter-markdown-411r6y9b.wasm +0 -0
  493. package/dist/tree-sitter-markdown_inline-j5349f42.wasm +0 -0
  494. package/dist/tree-sitter-typescript-zxjzwt75.wasm +0 -0
  495. package/dist/tree-sitter-zig-e78zbjpm.wasm +0 -0
  496. package/dist/update-helper.mjs +32235 -0
  497. package/package.json +2 -2
  498. package/dist/client/assets/ActivityScreen-sfonf5SR.js +0 -1
  499. package/dist/client/assets/AgentAvatar-Dz79iTxB.js +0 -1
  500. package/dist/client/assets/AgentConfigurationScreen-DDc3udYM.js +0 -1
  501. package/dist/client/assets/AgentDefinitionsWorkspace-DHDS9Pgd.js +0 -1
  502. package/dist/client/assets/AgentDetailCard-8viaEY8b.js +0 -1
  503. package/dist/client/assets/AgentFloorView-DuyvyMMj.js +0 -1
  504. package/dist/client/assets/AgentInfoScreen-qntgg2q2.js +0 -1
  505. package/dist/client/assets/AgentLanesEmbedScreen-BA6fRwkD.js +0 -1
  506. package/dist/client/assets/AgentLanesView-96lHsoX7.js +0 -2
  507. package/dist/client/assets/AgentLiveActions-DlSKL60c.js +0 -1
  508. package/dist/client/assets/AgentMasterScreen-DHrMuQ6_.js +0 -1
  509. package/dist/client/assets/AgentSessions-DV9v34aq.js +0 -6
  510. package/dist/client/assets/AgentsConsole-DTpVhS67.js +0 -1
  511. package/dist/client/assets/AgentsScreen-hZ4o2I-e.js +0 -1
  512. package/dist/client/assets/AgentsSubnav-Ci7uWM7P.js +0 -1
  513. package/dist/client/assets/AtopView-D7vyQDtE.js +0 -1
  514. package/dist/client/assets/BackToPicker-BHicJyfc.js +0 -1
  515. package/dist/client/assets/BriefingDetailScreen-B-wD_Bot.js +0 -1
  516. package/dist/client/assets/BriefingsScreen-Cn4Mbam9.js +0 -1
  517. package/dist/client/assets/BrokerScreen-C8FQ5rlg.js +0 -5
  518. package/dist/client/assets/ChatCollapsedStrip-7Wrg8Ge0.js +0 -1
  519. package/dist/client/assets/CodeScreen-cLC0tJ4S.js +0 -1
  520. package/dist/client/assets/ConversationFeedRows-Bx0gFyG_.js +0 -1
  521. package/dist/client/assets/ConversationHeader-Bt2RBj93.js +0 -1
  522. package/dist/client/assets/ConversationPanels-o6W-cOoU.js +0 -6
  523. package/dist/client/assets/ConversationScreen-CkWnKXt6.css +0 -1
  524. package/dist/client/assets/ConversationScreen-DIU7m_aC.js +0 -2
  525. package/dist/client/assets/ConversationStatus-CTYOywFh.js +0 -1
  526. package/dist/client/assets/CrewWorkspaces-DNX-QQ1h.js +0 -1
  527. package/dist/client/assets/CrewWorkspaces-Diq11KDq.css +0 -1
  528. package/dist/client/assets/DispatchAftermath-ZCEB75hh.js +0 -1
  529. package/dist/client/assets/DocumentFocusViewer-D8iB6SMt.js +0 -1
  530. package/dist/client/assets/FlightObserveScreen-BTe1YRPr.js +0 -1
  531. package/dist/client/assets/FollowScreen-CkR-okdL.js +0 -1
  532. package/dist/client/assets/HarnessMark-DttReffF.js +0 -1
  533. package/dist/client/assets/HarnessesScreen-COO_Q8VY.js +0 -1
  534. package/dist/client/assets/HostAdvisorView-DeJ-8RZV.js +0 -1
  535. package/dist/client/assets/KnowledgeSearchInspector-W_zNIBRV.js +0 -1
  536. package/dist/client/assets/KnowledgeSearchScreen-_rxJNUUh.js +0 -1
  537. package/dist/client/assets/LaneTraceDetailSheet-DNIECgEl.js +0 -1
  538. package/dist/client/assets/MeshCanvas-DZv2ipsy.js +0 -3
  539. package/dist/client/assets/MeshCanvasMinimap-BXHRNb7l.js +0 -1
  540. package/dist/client/assets/MeshScreen-DuNvpDC5.js +0 -1
  541. package/dist/client/assets/MessagesScreen-dNNPFwAc.js +0 -1
  542. package/dist/client/assets/MissionContextRail-DnCWPzAM.js +0 -1
  543. package/dist/client/assets/MissionControlView-DmaThhNR.js +0 -1
  544. package/dist/client/assets/MissionFocusOverlay-K21ssTxv.js +0 -1
  545. package/dist/client/assets/MissionLeftAgentRow-CbQm4BLv.js +0 -1
  546. package/dist/client/assets/MissionLogPane-BLvSSIdT.js +0 -1
  547. package/dist/client/assets/NewAgentModal-B7qxjZlW.js +0 -1
  548. package/dist/client/assets/NewChatComposer-D2Ah4T-W.js +0 -19
  549. package/dist/client/assets/ObserveEmbedScreen-DvKGsaLv.js +0 -2
  550. package/dist/client/assets/OpenScoutAppShell-C9TOLB7u.js +0 -79
  551. package/dist/client/assets/OpsAgentsView-vIoY-AW1.js +0 -1
  552. package/dist/client/assets/OpsScreen-CJBwshEp.js +0 -1
  553. package/dist/client/assets/OpsSubnav-CjDTnp64.js +0 -1
  554. package/dist/client/assets/ProjectAgentProfile-Br1eTD7G.js +0 -1
  555. package/dist/client/assets/ProjectAgentProfileHero-mjxNcRvw.js +0 -1
  556. package/dist/client/assets/ProjectsInbox-Bq29DE_o.js +0 -2
  557. package/dist/client/assets/ProjectsRail-kMDA0yn4.js +0 -1
  558. package/dist/client/assets/ProjectsScreen-BDaJYhc0.js +0 -1
  559. package/dist/client/assets/ProjectsThreadAside-B940p3vW.js +0 -1
  560. package/dist/client/assets/Provider-D0bB7q6y.js +0 -1
  561. package/dist/client/assets/RailRow-B88JVr62.js +0 -1
  562. package/dist/client/assets/RawSessionsTable-CzGhEdiZ.js +0 -1
  563. package/dist/client/assets/RealtimeVoiceScreen-CyP1CWsX.js +0 -1
  564. package/dist/client/assets/RepoDiffViewer-Bw5yMC4A.js +0 -7
  565. package/dist/client/assets/RepoDiffViewerLazy-DzfoFhbl.js +0 -2
  566. package/dist/client/assets/ScoutDeckSurface-DQoZofzH.js +0 -1
  567. package/dist/client/assets/SessionEmbedScreen-CpduQ0O9.js +0 -1
  568. package/dist/client/assets/SessionObserve-BVeTkcIl.js +0 -12
  569. package/dist/client/assets/SessionObserveEvidence-BkOezTGV.js +0 -1
  570. package/dist/client/assets/SessionRefScreen-DetLMkTT.js +0 -1
  571. package/dist/client/assets/SessionsScreen-B-McKw6d.js +0 -1
  572. package/dist/client/assets/SettingsDrawer-CPB32w0n.js +0 -3
  573. package/dist/client/assets/SettingsScreen-BEzYFdjz.js +0 -1
  574. package/dist/client/assets/SpriteAvatar-DFO4Kb4Z.js +0 -1
  575. package/dist/client/assets/Terminal-DWyZTZdY.js +0 -1
  576. package/dist/client/assets/TerminalEmbedScreen-_SSzwhWa.js +0 -1
  577. package/dist/client/assets/TerminalHeaderMount-CY7uIWBg.js +0 -1
  578. package/dist/client/assets/WorkFilesViewer-D8-4vF5l.js +0 -1
  579. package/dist/client/assets/agent-autocomplete-BlK8wY06.js +0 -10
  580. package/dist/client/assets/agent-lane-card-model-CY3OE1Xu.js +0 -1
  581. package/dist/client/assets/agent-lanes-model-tc-1hE6q.js +0 -2
  582. package/dist/client/assets/agent-master-I1W-5d-x.css +0 -1
  583. package/dist/client/assets/agent-master-model-DMcHeNq3.js +0 -1
  584. package/dist/client/assets/api-Co9aQ2Jw.js +0 -1
  585. package/dist/client/assets/arrow-down-BAGkhHA6.js +0 -1
  586. package/dist/client/assets/broker-display-Q75fupqG.js +0 -2
  587. package/dist/client/assets/chunk-JTPDIGGW-COJ00z94.js +0 -46
  588. package/dist/client/assets/chunk-T65CQEWV-H2QEKfr1.js +0 -1
  589. package/dist/client/assets/chunk-YOZR3KYS-CrCgXw9l.js +0 -2
  590. package/dist/client/assets/colors-BtO5_zlx.js +0 -1
  591. package/dist/client/assets/content-0RBfbCIJ.js +0 -1
  592. package/dist/client/assets/content-BTmnk2bl.js +0 -1
  593. package/dist/client/assets/content-Bk5DKhyP.js +0 -1
  594. package/dist/client/assets/content-Bw_8GE_S.js +0 -1
  595. package/dist/client/assets/content-CI4gLEWi.js +0 -1
  596. package/dist/client/assets/content-CLCtp9Rb.js +0 -1
  597. package/dist/client/assets/content-C_FAGTNk.js +0 -1
  598. package/dist/client/assets/content-CnnzWOE3.js +0 -1
  599. package/dist/client/assets/content-DKlY98pO.js +0 -1
  600. package/dist/client/assets/content-Df7ndXTG.js +0 -1
  601. package/dist/client/assets/content-DkZDzzx3.js +0 -1
  602. package/dist/client/assets/content-DnGmb2L0.js +0 -1
  603. package/dist/client/assets/content-Ds-zs-Ss.js +0 -1
  604. package/dist/client/assets/content-JIWSyC0f.js +0 -1
  605. package/dist/client/assets/content-Q3TIYC8q.js +0 -1
  606. package/dist/client/assets/content-evaBfvxD.js +0 -1
  607. package/dist/client/assets/conversation-model-C2KuZUXc.js +0 -1
  608. package/dist/client/assets/conversation-motion-features-BJnHs3Ul.js +0 -1
  609. package/dist/client/assets/discover-DutlV0ZU.js +0 -2
  610. package/dist/client/assets/embed-entry-CJG7WEVw.js +0 -2
  611. package/dist/client/assets/home-moving-signal-PHSqSBu_.js +0 -1
  612. package/dist/client/assets/home-now-card-C_qsI6C6.js +0 -1
  613. package/dist/client/assets/hooks-ME7rmhpE.js +0 -2
  614. package/dist/client/assets/index-C1VaWNuD.js +0 -10
  615. package/dist/client/assets/index-C8UCRm2W.js +0 -1
  616. package/dist/client/assets/index-Cn0I2Hgi.js +0 -1
  617. package/dist/client/assets/index-Cx6Gbr6n.js +0 -1
  618. package/dist/client/assets/index-i7TMxlwW.css +0 -1
  619. package/dist/client/assets/knowledge-search-D_bLoYtC.css +0 -1
  620. package/dist/client/assets/lane-ask-display-B6iCAVcd.js +0 -18
  621. package/dist/client/assets/lane-roster-store-DN2jxXF-.js +0 -1
  622. package/dist/client/assets/left-BRu9pnqx.js +0 -2
  623. package/dist/client/assets/left-BjS1dKNV.js +0 -2
  624. package/dist/client/assets/left-CL-TVLJ7.js +0 -1
  625. package/dist/client/assets/left-DLpsDi55.js +0 -1
  626. package/dist/client/assets/left-DPcM9o8Y.js +0 -1
  627. package/dist/client/assets/left-MmTJf1tK.js +0 -1
  628. package/dist/client/assets/left-P80i5V8L.js +0 -1
  629. package/dist/client/assets/left-advisor-CbXVzAqS.js +0 -1
  630. package/dist/client/assets/left-agents-7mJsiNyr.js +0 -1
  631. package/dist/client/assets/left-default-COK26l3H.js +0 -1
  632. package/dist/client/assets/left-lanes-Dbdm9Veu.js +0 -1
  633. package/dist/client/assets/left-mission-DSenPIyb.css +0 -1
  634. package/dist/client/assets/left-mission-DqGR5jby.js +0 -1
  635. package/dist/client/assets/library-COnWzUWv.js +0 -1
  636. package/dist/client/assets/mentions-BZ5SBMtc.js +0 -1
  637. package/dist/client/assets/mesh-buckets-CLYS8Jx8.js +0 -1
  638. package/dist/client/assets/mesh-view-store-CBM1za_N.js +0 -1
  639. package/dist/client/assets/mission-control-CnU7dNt1.css +0 -1
  640. package/dist/client/assets/mission-control-model-C0fByIjm.js +0 -1
  641. package/dist/client/assets/mission-control-store-CM8mQGg8.js +0 -1
  642. package/dist/client/assets/observe-BLmy4quB.js +0 -1
  643. package/dist/client/assets/ops-screen-giu3If_N.css +0 -1
  644. package/dist/client/assets/page-status-BE0-J1xY.js +0 -1
  645. package/dist/client/assets/paperclip-Br7wUDFl.js +0 -1
  646. package/dist/client/assets/perf-PX8Rx0EP.js +0 -1
  647. package/dist/client/assets/profile-BCvk8jOQ.js +0 -1
  648. package/dist/client/assets/projects-inbox-BIW7nv-H.css +0 -1
  649. package/dist/client/assets/resolve-panes-DhD5qmQO.js +0 -1
  650. package/dist/client/assets/resolve-sidebar-context-GqhZNRPY.js +0 -1
  651. package/dist/client/assets/right-B_08ilv6.js +0 -1
  652. package/dist/client/assets/right-Brm67HOL.js +0 -1
  653. package/dist/client/assets/right-BveAPKBW.js +0 -1
  654. package/dist/client/assets/right-CpTB_-Ya.js +0 -1
  655. package/dist/client/assets/right-CqC4Qdot.js +0 -1
  656. package/dist/client/assets/right-D91j9d5Y.js +0 -1
  657. package/dist/client/assets/right-DaLRhYl3.js +0 -1
  658. package/dist/client/assets/right-Dt1wOwA5.js +0 -1
  659. package/dist/client/assets/right-DtzqIZQF.js +0 -1
  660. package/dist/client/assets/router-kfcaYqZr.js +0 -1
  661. package/dist/client/assets/runtime-picker-C20lTGhV.js +0 -1
  662. package/dist/client/assets/scout-voice-Cg1qfepC.js +0 -1
  663. package/dist/client/assets/secondaryNavConfig-C0Srrmy8.js +0 -1
  664. package/dist/client/assets/secondaryNavConfig-xssF_ubT.css +0 -1
  665. package/dist/client/assets/system-surfaces-redesign-kuf3wuE_.css +0 -1
  666. package/dist/client/assets/terminal-screen-vMICbBJh.css +0 -1
  667. package/dist/client/assets/use-conversation-list-UG-tMN67.js +0 -1
  668. package/dist/client/assets/use-scout-dev-flags-DTseRrFi.js +0 -1
  669. package/dist/client/assets/useContentSecondaryNav-CoIoz7JU.js +0 -1
@@ -0,0 +1 @@
1
+ import{j as o}from"./index-DReVb7jZ.js";import{AgentsLeft as i}from"./left-C6SyaqlJ.js";/* empty css */import"./api-DSqpVKC7.js";import"./index-BWHgHrtv.js";import"./Provider-CNZluAZb.js";import"./router-C-MF5-mb.js";import"./BackToPicker-CkBhGRlD.js";import"./AgentLiveActions-6Kfr1uOT.js";import"./ObservedTopologyPanel-DF6tRZL_.js";/* empty css */import"./secondaryNavConfig-DzNHk6IH.js";/* empty css */import"./CrewAvatar-zgzC3cbU.js";import"./runtime-picker-C_AVYF63.js";import"./index-CbqBwfIW.js";import"./AgentDetailCard-MIEBKw_S.js";import"./ConversationScreen-tpj4cqWs.js";/* empty css */import"./CommsFlowGraph-voDD9M5R.js";import"./CommsCanvas-DdNAwjGW.js";/* empty css */import"./SessionObserve-B64YsYhy.js";/* empty css *//* empty css *//* empty css *//* empty css */import{ProjectsRail as m}from"./ProjectsRail-CELVubfJ.js";import"./ProjectsInbox-DfCXReZK.js";import"./projects-inbox-CfwxCTdN.js";import{ChatLeft as p}from"./left-0vBrvrBG.js";/* empty css *//* empty css */import{HomeLeft as e}from"./left-CTuXysZR.js";import"./content-DrKBYpcb.js";import{MeshLeft as s}from"./left-Cc6s4DT2.js";import"./mesh-view-store-C1-mdP3P.js";import"./NodeMenu-CcOeFRCB.js";/* empty css *//* empty css */import{MeshOpsLeft as n}from"./left-DgT4tWCx.js";import"./use-scout-dev-flags-CkdAHlDR.js";import"./mesh-ops-DSlvHp-D.js";import{OpsLeft as l}from"./left-R0wppTTr.js";/* empty css *//* empty css *//* empty css */import"./CrewSprite-Dp9KBBGY.js";/* empty css *//* empty css *//* empty css */import"./SharedWorkFloor-C0xxW4SN.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./SlidePanel-BMpkXai_.js";/* empty css */import"./mission-control-store-p_cboAm4.js";/* empty css *//* empty css *//* empty css */import"./TailView-BofjmUMJ.js";import"./RailRow-DUPqXMZh.js";import"./left-mission-C86x6i9h.js";import{TerminalLeft as a}from"./left-DF5caiyh.js";/* empty css */import{M as f}from"./MeshCanvasMinimap-ClVolr4-.js";import"./NewChatComposer-BEXS8vV6.js";import"./conversation-model-m8HhzroS.js";import"./createLucideIcon-ChvMq-zl.js";import"./agent-state-DDhnFEEP.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./loader-circle-DNUsuPWz.js";import"./file-text-DP6txVW-.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./surface-activity-B1rgWB1i.js";import"./provider-DwmCoSlc.js";import"./scoutbot-Bk3nyrkj.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./terminal-takeover-CZZsnPzj.js";import"./openContent-C6XO6kr5.js";import"./eye-CsGfEVR6.js";import"./terminal-DMZjX1es.js";import"./nav-destinations-CU_euC-Q.js";import"./message-square-CJW4WRlo.js";import"./compass-CvzkzkIh.js";import"./settings-C69Zjrpq.js";import"./git-branch-DcUCsWdJ.js";import"./scroll-text-B0tKI9Sg.js";import"./voice-levels-Dcr3jglk.js";import"./ConversationComposer-DNcn5U6D.js";import"./zap-B4X0OrEw.js";import"./message-markup-6Tgo4qFJ.js";import"./mentions-Ck_Vjnyp.js";import"./message-visibility-DwxgcgYK.js";import"./operator-attention-DBaRg5ep.js";import"./sessionRead-CvFz2RHv.js";import"./clipboard-e3fSpeo7.js";import"./types-B0PlfpKc.js";import"./ConversationHeader-Y9TEJxP_.js";import"./AstronautSuit-D67fIBdR.js";import"./panel-right-qP17MwMl.js";import"./use-beside-D3cJpA5p.js";import"./use-conversation-list-D5EnpVba.js";import"./agent-master-model-C-KdOFDK.js";import"./comms-deck-CBhsXnY-.js";import"./ConversationFeedRows-RnYSa7Io.js";import"./ConversationPanels-6pprBpmq.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./use-reduced-motion-CiaZHMnk.js";import"./proxy-DgzP27W8.js";import"./activity-BJqFrZyB.js";import"./message-circle-cI5_A5mj.js";import"./tail-events-C4WdhVeK.js";import"./ConversationStatus-Cv-7hErW.js";import"./check-g7D7-c1J.js";import"./sparkles-Cc5lPZRv.js";import"./comms-gesture-_aGFo6g3.js";import"./CommsFlowMap-C33sgD48.js";import"./CommsSelection-BL8aYD7z.js";import"./bash-format-BRV5C6Gv.js";import"./lane-tool-detail-Czggx8oM.js";import"./LaneToolHoverCard-D2cnTeUd.js";import"./lane-observe-CteDwdD-.js";import"./lane-ask-display-BTVSakyo.js";import"./ObserveTextFlow-CC5mnngm.js";import"./SessionObserveEvidence-CS1aQBpQ.js";import"./wrench-B4maQJai.js";import"./external-link-BVccgH0n.js";import"./AddProjectForm-CHNJ4NnS.js";import"./project-overview-helpers-BQTc_Ous.js";import"./ui-LM8pS8qE.js";import"./SessionRefScreen-DURV0MpF.js";import"./session-ref-lookup-state-SATH_jAP.js";/* empty css */import"./CrewWorkspaces-K2jcyLec.js";import"./agent-specialization-BplZUa_0.js";import"./plus-D5NLH_fM.js";import"./useEmbedHeadline-atkQVfGw.js";import"./api-BQYTwoz6.js";import"./cache-DGBo3vIf.js";import"./arrow-up-right-B0aLKiyF.js";import"./conversation-prefs-DNre-Lcx.js";import"./use-fleet-active-asks-D_QOmjg5.js";import"./sessions-view-Bge4XZ4I.js";import"./openAgent-Dbv5wfuL.js";import"./HomeHero-pIZtE1cC.js";import"./refresh-cw-IcD2lPoT.js";import"./observe-CtS0l3zu.js";import"./persistent-state-BUsTTZFE.js";import"./agent-lanes-model-DMAdqCmK.js";import"./context-budget-8qFKqM-j.js";import"./home-moving-signal-BIHUGNfI.js";import"./home-live-action-BkqGLVRY.js";import"./cpu-Q6nrHFTN.js";import"./file-code-corner-Be6da5l3.js";import"./machine-children-CdhNzDF0.js";import"./use-mesh-node-state-3V3ADQ-G.js";import"./use-mesh-ops-items-DI9GKWlF.js";import"./left-agents-thnBO156.js";import"./left-default-CT42fnpF.js";import"./left-lanes-CSmZgciK.js";import"./lane-roster-store-Ch9t6lb0.js";import"./left-advisor-C-kt8V28.js";import"./server-DBlPW0Mp.js";import"./layers-BOwyWodP.js";import"./gauge-DQCGlE3o.js";import"./MissionLeftAgentRow-Dms0DBjO.js";import"./page-status-DwFR4wSw.js";import"./WorldMinimap-DOptgrc4.js";import"./WorldSky-D-RJzSa6.js";import"./WorldActorTalk-CKerDikx.js";import"./send-to-agent-session-C1mgqdow.js";import"./FloorExchangePanel-CjHSDXad.js";import"./floor-character-name-CqJPOlXb.js";import"./floor-message-passes-CO3Ix_wR.js";import"./floor-preview-text-HrORUJ7D.js";import"./shared-work-artifacts-DfNl9KTo.js";import"./agent-lane-detail-Ti3trpfH.js";import"./floor-memory-YMM8AlLY.js";import"./CharacterFamilyPreview-ckVkecDO.js";import"./RenderedWorkerSprite-C8fxndAh.js";import"./FloorMessagePasses-BG4ebnX5.js";import"./WorkRunView-_mhG_FR2.js";import"./floor-context-model-rWKqaKmV.js";import"./agent-floor-actor-DW8zLht0.js";import"./SharedFloorCharacter-V04kD5T9.js";import"./WorldCharacter-BRrj3MQN.js";import"./RiggedWorkerCharacter-CJMWlvV-.js";import"./usePersistentState-Y8XwSTg-.js";import"./terminal-relay-mO89dX-Y.js";import"./session-table-CGkfG5Yd.js";import"./clock-CQb4FeMf.js";function hi(r,t){switch(r.view){case"inbox":case"activity":case"briefings":return{body:o.jsx(e,{}),footer:null};case"agents-v2":return{body:o.jsx(m,{route:r,navigate:t}),footer:null};case"agent-info":return{body:o.jsx(i,{}),footer:null};case"repos":case"repo-diff":case"code":return{body:null,footer:null};case"sessions":return{body:null,footer:null};case"terminal":return{body:o.jsx(a,{}),footer:null};case"messages":case"conversation":return{body:o.jsx(p,{}),footer:null};case"broker":case"work":case"follow":return{body:null,footer:null};case"search":return{body:null,footer:null};case"ops":return{body:o.jsx(l,{}),footer:null};case"mesh":return{body:o.jsx(s,{}),footer:o.jsx(f,{})};case"mesh-ops":return{body:o.jsx(n,{}),footer:null};case"harnesses":return{body:null,footer:null};case"settings":case"voice":return{body:null,footer:null};default:return{body:null,footer:null}}}export{hi as resolveSidebarContext};
@@ -0,0 +1 @@
1
+ import{j as t,r as h}from"./index-DReVb7jZ.js";import{u as Z,a as pe}from"./Provider-CNZluAZb.js";import{o as ee}from"./openAgent-Dbv5wfuL.js";import{o as F}from"./openContent-C6XO6kr5.js";import{i as fe,c as te,n as D}from"./agent-state-DDhnFEEP.js";import{s as se,a as X}from"./colors-CFlbwC25.js";import{t as O,c as ne}from"./time-Dhsh_2EG.js";import{f as oe}from"./runtime-picker-C_AVYF63.js";import{a as R}from"./api-DSqpVKC7.js";import{u as L}from"./sse-A8AyLH0g.js";import{r as E}from"./terminal-relay-mO89dX-Y.js";import{q as re}from"./terminal-takeover-CZZsnPzj.js";import{r as ve,s as be,a as je,b as ke,c as ge}from"./session-catalog-CnpZMB7C.js";import{p as ae}from"./NewChatComposer-BEXS8vV6.js";import{A as Ne}from"./AgentAvatar-NZOqcsB2.js";import{A as we}from"./AgentLiveActions-6Kfr1uOT.js";import{T as H}from"./TmuxPeek-DpUT9Tpc.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./createLucideIcon-ChvMq-zl.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./file-text-DP6txVW-.js";import"./x-rlMdRqJF.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-CJXPaHXj.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./index-BWHgHrtv.js";import"./conversation-model-m8HhzroS.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";import"./eye-CsGfEVR6.js";import"./terminal-DMZjX1es.js";/* empty css */import"./refresh-cw-IcD2lPoT.js";const ye=new Intl.NumberFormat("en-US"),Ce=new Intl.NumberFormat("en-US",{notation:"compact",maximumFractionDigits:1});function M(e){return typeof e!="number"||!Number.isFinite(e)?"-":Math.abs(e)<1e3?ye.format(e):Ce.format(e).toLowerCase()}function Se(e){if(!Number.isFinite(e)||e<=0)return"0s";if(e<60)return`${Math.round(e)}s`;const s=Math.round(e),a=Math.floor(s/3600),r=Math.floor(s%3600/60),i=s%60;return a>0?`${a}h ${r}m`:r>=10||i===0?`${r}m`:`${r}m ${i}s`}function Ie(e){return e.replace(/\.local$/i,"").replace(/-local-openscout$/i,"")}function z(e){const s=e?.trim();return s?s.toLowerCase()==="a2a"?"A2A":s:null}function Y(e){const s=e?.trim();return s?s==="claude_stream_json"?"Claude stream-json worker":s==="codex_app_server"?"Codex app server":s==="pi_rpc"?"Pi RPC":s==="tmux"?"tmux terminal":s:null}function ie(e){return!!(e.providerName||z(e.protocol)||(e.skills?.length??0)>0)}async function Ae(e){await R("/api/local-path/reveal",{method:"POST",body:JSON.stringify({path:e.path,agentId:e.agentId,...e.basePath?{basePath:e.basePath}:{},...e.sessionId?{sessionId:e.sessionId}:{}})})}function ce(e){Ae(e).catch(s=>{console.warn("Failed to reveal local path",s)})}function Ut(){const{route:e,agents:s,navigate:a}=Z();if(e.view==="agent-info")return t.jsx(Re,{conversationId:e.conversationId,agents:s,navigate:a,route:e});if(e.view==="agents-v2"){if(!e.agentId)return null;const r=s.find(i=>i.id===e.agentId)??null;return r?t.jsx(le,{agent:r,agents:s,navigate:a,route:e,observeMode:e.tab==="observe",showStaticIdentity:!1}):null}return null}function Re({conversationId:e,agents:s,navigate:a,route:r}){const[i,m]=h.useState(null),[x,v]=h.useState(null),[p,f]=h.useState(!1),n=h.useCallback(async()=>{const o=await R(`/api/session/${encodeURIComponent(e)}`).catch(()=>null);m(o),f(!0)},[e]);h.useEffect(()=>{f(!1),n()},[n]),L(()=>{n()});const l=i?.agentId??null;h.useEffect(()=>{if(!l||s.some(c=>c.id===l)){v(null);return}let o=!1;return R(`/api/agents/${encodeURIComponent(l)}`).then(c=>{o||v(c)}).catch(()=>{o||v(null)}),()=>{o=!0}},[s,l]);const u=h.useMemo(()=>l?s.find(o=>o.id===l)??(x?.id===l?x:null):null,[x,s,l]);return p?u?t.jsx(le,{agent:u,agents:s,navigate:a,route:r,observeMode:!1}):t.jsxs("div",{className:"flex flex-col h-full overflow-y-auto frame-scrollbar p-4 gap-4 text-sm",children:[t.jsx(w,{label:"Conversation",value:e}),t.jsx("div",{className:"mt-2 text-xs font-mono uppercase tracking-[0.15em] leading-relaxed text-[var(--scout-chrome-ink-ghost)]",children:"No live agent registration matches this profile."})]}):t.jsx("div",{className:"flex h-full items-center justify-center p-4 text-center text-sm italic text-[var(--scout-chrome-ink-faint)]",children:"Loading agent context..."})}function le({agent:e,agents:s,navigate:a,route:r,observeMode:i,showStaticIdentity:m=!0}){const x=fe(e.state),[v,p]=h.useState(null),[f,n]=h.useState(null),[l,u]=h.useState(null),o=e.skills??[],c=z(e.protocol),j=ie(e),y=h.useCallback(async()=>{const[k,xe,he]=await Promise.all([R("/api/fleet").catch(()=>null),R(`/api/agents/${encodeURIComponent(e.id)}/session-catalog`).catch(()=>null),R(`/api/agents/${encodeURIComponent(e.id)}/observe`).catch(()=>null)]);k&&p(k),n(xe),u(he)},[e.id]);h.useEffect(()=>{y()},[y]),h.useEffect(()=>{n(null),u(null)},[e.id]),L(()=>{y()});const{focusedSession:d,focusSession:C}=Z(),N=ve(e,f),S=h.useMemo(()=>be(f?.sessions??[],N),[f?.sessions,N]),$=r.view==="agents-v2"&&r.agentId===e.id?r.sessionId:null,I=je(e.id,d,N,S,$),P=ke($,S);h.useEffect(()=>{P&&(d?.agentId===e.id&&d.sessionId===P||C(e.id,P))},[e.id,d?.agentId,d?.sessionId,C,P]);const b=S.find(k=>k.id===I)??null,_=!!(b&&N&&b.id===N),G=l?.sessionId?.trim()||l?.data.metadata?.session?.externalSessionId?.trim()||l?.data.metadata?.session?.threadId?.trim()||null,T=b&&_&&G?G:b?.id??null,U=b&&T&&T!==b.id?b.id:null,W=b?ge(e,f,b,_):{canObserve:!1,canTakeover:!1},me=()=>F(a,{view:"terminal",agentId:e.id,mode:"observe"},{returnTo:r}),B=()=>F(a,{view:"terminal",agentId:e.id,mode:"takeover"},{returnTo:r}),ue=()=>{if(E(e)){B();return}const k=f?.resumeCommand;if(k){re({command:k,cwd:f?.resumeCwd,agentId:e.id}).then(()=>B());return}B()};return m?t.jsxs("div",{className:"flex flex-col h-full overflow-y-auto frame-scrollbar p-4 gap-4 text-sm",children:[t.jsxs("div",{className:"flex items-center gap-3 border-b border-[var(--scout-chrome-border-soft)] pb-3",children:[t.jsx(Ne,{agent:e,placement:"inspector"}),t.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[t.jsx("span",{className:"truncate text-lg text-[var(--scout-chrome-ink-strong)]",children:e.name}),e.handle&&t.jsxs("span",{className:"text-xs font-mono text-[var(--scout-chrome-ink-faint)]",children:["@",e.handle]})]})]}),t.jsx(we,{agent:e,catalog:f,navigate:a,returnTo:r,variant:"compact"}),E(e)?.backend==="tmux"&&t.jsx(H,{agentId:e.id,lines:44,columns:132}),t.jsxs(g,{label:"State",children:[t.jsxs("div",{className:"flex items-baseline gap-2",children:[t.jsx("span",{className:"w-1.5 h-1.5 rounded-full",style:{background:se(e.state),opacity:x?1:.4}}),t.jsx("span",{className:"text-md capitalize text-[var(--scout-chrome-ink)]",children:te(e.state)})]}),e.updatedAt&&t.jsxs("div",{className:"mt-1 text-xs font-mono text-[var(--scout-chrome-ink-faint)]",children:["Updated ",O(e.updatedAt)]})]}),t.jsx(g,{label:"Presence",children:t.jsx(_e,{focusAgent:e,agents:s,onOpenAgent:k=>ee(a,k,{returnTo:r})})}),i&&t.jsx(J,{agentId:e.id}),v&&t.jsx(V,{asks:v.activeAsks,agentId:e.id,navigate:a}),t.jsxs(g,{label:"Identity",children:[e.providerName&&t.jsx(w,{label:"Provider",value:e.providerName}),c&&t.jsx(w,{label:"Protocol",value:c}),!j&&t.jsx(w,{label:"Class",value:e.agentClass}),!j&&e.role&&t.jsx(w,{label:"Role",value:oe(e.role)??e.role}),!j&&e.harness&&t.jsx(w,{label:"Harness",value:e.harness}),!j&&e.transport&&t.jsx(w,{label:"Transport",value:Y(e.transport)??e.transport}),(e.homeNodeName||e.homeNodeId)&&t.jsx(w,{label:"Host",value:Ie(e.homeNodeName??e.homeNodeId??"")})]}),o.length>0&&t.jsx(g,{label:`Skills · ${o.length}`,children:t.jsx("div",{className:"flex flex-wrap gap-1",children:o.map(k=>t.jsx("span",{className:"rounded-sm bg-[var(--scout-chrome-hover)] px-1.5 py-0.5 text-xs font-mono text-[var(--scout-chrome-ink-soft)]",children:k},k))})}),(e.project||e.branch||e.cwd)&&t.jsxs(g,{label:"Project",children:[e.project&&t.jsx(w,{label:"Name",value:e.project}),e.branch&&t.jsx(w,{label:"Branch",value:e.branch}),e.cwd&&t.jsx(w,{label:"Cwd",value:e.cwd})]}),e.capabilities.length>0&&t.jsx(g,{label:`Capabilities · ${e.capabilities.length}`,children:t.jsx("div",{className:"flex flex-wrap gap-1",children:e.capabilities.map(k=>t.jsx("span",{className:"rounded-sm bg-[var(--scout-chrome-hover)] px-1.5 py-0.5 text-xs font-mono text-[var(--scout-chrome-ink-soft)]",children:k},k))})}),t.jsx(Me,{agent:e,catalog:f,navigate:a,returnTo:r})]}):t.jsxs("div",{className:"flex flex-col h-full overflow-y-auto frame-scrollbar p-4 gap-4 text-sm",children:[b&&t.jsxs(g,{label:"Session",children:[t.jsxs("div",{className:"flex items-baseline justify-between gap-2",children:[t.jsx("span",{className:"truncate font-mono text-md text-[var(--scout-chrome-ink)]",title:T??b.id,children:de(T??b.id)}),t.jsx("span",{className:"shrink-0 font-mono text-2xs uppercase tracking-[0.12em]",style:{color:_?"var(--accent)":"var(--scout-chrome-ink-faint)"},children:_?"now":b.endedAt?`ended · ${O(b.endedAt)||"recent"}`:O(b.startedAt)||"recent"})]}),b.cwd&&t.jsx("div",{className:"mt-1 truncate font-mono text-2xs text-[var(--scout-chrome-ink-ghost)]",title:b.cwd,children:b.cwd}),T&&t.jsxs("div",{className:"mt-1 break-all font-mono text-2xs leading-snug text-[var(--scout-chrome-ink-faint)]",title:T,children:[t.jsx("span",{className:"uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-ghost)]",children:"id"})," ",T]}),U&&t.jsxs("div",{className:"mt-0.5 truncate font-mono text-2xs text-[var(--scout-chrome-ink-ghost)]",title:U,children:["profile ",U]}),t.jsx("div",{className:"mt-2.5 flex flex-col gap-1.5",children:t.jsxs(Te,{label:"Terminal",children:[t.jsx(q,{onClick:me,disabled:!W.canObserve,title:W.canObserve?"Watch the live terminal, read-only":"No live terminal to observe",children:"Observe"}),t.jsx(q,{onClick:ue,disabled:!W.canTakeover,title:W.canTakeover?"Grab the keyboard and drive it":"Can't take over this session",children:"Take over"})]})})]}),!i&&b&&t.jsx(Ee,{agentId:e.id,navigate:a,cwd:b.cwd??e.cwd,route:r}),E(e)?.backend==="tmux"&&t.jsx(H,{agentId:e.id,lines:44,columns:132}),t.jsx(g,{label:"Runtime",children:t.jsx($e,{agent:e})}),i&&t.jsx(J,{agentId:e.id}),v&&t.jsx(V,{asks:v.activeAsks,agentId:e.id,navigate:a})]})}function $e({agent:e}){const s=[],a=(m,x)=>{x&&x.trim()&&s.push({label:m,value:x.trim()})},r=z(e.protocol);return ie(e)?a("Protocol",r):(a("Role",oe(e.role)),a("Class",e.agentClass)),s.length===0?null:t.jsx("div",{className:"grid grid-cols-2 gap-x-3 gap-y-2",children:s.map(m=>t.jsxs("div",{className:"min-w-0",children:[t.jsx("div",{className:"font-mono text-3xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-faint)]",children:m.label}),t.jsx("div",{className:"truncate font-mono text-sm text-[var(--scout-chrome-ink)]",children:m.value})]},m.label))})}function Te({label:e,children:s}){return t.jsxs("div",{className:"flex items-center gap-2.5",children:[t.jsx("span",{className:"w-[56px] shrink-0 font-mono text-3xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-faint)]",children:e}),t.jsx("div",{className:"flex gap-1.5",children:s})]})}function q({onClick:e,disabled:s,title:a,children:r}){return t.jsx("button",{type:"button",onClick:e,disabled:s,title:a,className:"rounded-[4px] border border-[var(--scout-chrome-border-soft)] px-2.5 py-1 font-mono text-3xs uppercase tracking-[0.08em] text-[var(--scout-chrome-ink-soft)] transition-colors hover:bg-[var(--scout-chrome-active)] hover:text-[var(--scout-chrome-ink)] disabled:cursor-default disabled:opacity-40 disabled:hover:bg-transparent disabled:hover:text-[var(--scout-chrome-ink-soft)]",children:r})}function Me({agent:e,catalog:s,navigate:a,returnTo:r}){const i=pe(),m=E(e),x=s?.activeSessionId??(m?e.harnessSessionId??m.sessionName:null),p=h.useMemo(()=>Pe(e,s,x),[e,s,x]).filter(c=>c.id===x||!c.endedAt),f=p.slice(0,5);if(f.length===0)return null;const n=c=>F(a,{view:"terminal",agentId:e.id,mode:c},{returnTo:r}),l=()=>{if(m){n("takeover");return}s?.resumeCommand&&re({command:s.resumeCommand,cwd:s.resumeCwd,agentId:e.id}).then(()=>n("takeover"))},u=c=>F(a,{view:"sessions",sessionId:c},{returnTo:r}),o=(c,j,y)=>{const d=[];return j&&d.push({kind:"action",label:"Observe in terminal",onSelect:()=>n("observe")}),y&&d.push({kind:"action",label:"Takeover terminal",onSelect:l}),d.length>0&&d.push({kind:"separator"}),d.push({kind:"action",label:"Open session detail",onSelect:()=>u(c.id)}),d.push({kind:"action",label:"Open agent profile",onSelect:()=>ee(a,e,{returnTo:r})}),d};return t.jsx(g,{label:`Running sessions · ${p.length}`,children:t.jsxs("div",{className:"flex flex-col gap-1.5",children:[f.map(c=>{const j=c.id===x,y=j&&!!m,d=j&&(!!m||!!s?.resumeCommand),C=O(c.startedAt)||"recent",N=Y(c.transport)??c.harness??Y(e.transport)??e.harness??"session",S=j?C:c.endedAt?`${O(c.endedAt)||C} ended`:N,$=o(c,y,d);return t.jsxs("div",{onContextMenu:I=>i(I,$),className:`rounded border px-2 py-1.5 transition-colors ${j?"border-[color-mix(in_srgb,var(--accent)_40%,transparent)] bg-[color-mix(in_srgb,var(--accent)_8%,transparent)]":"border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)]"}`,children:[t.jsxs("button",{type:"button",title:y?`Observe terminal ${c.id}`:`Open session ${c.id}`,onClick:()=>y?n("observe"):u(c.id),className:"flex w-full items-center justify-between gap-2 bg-transparent p-0 text-left",children:[t.jsxs("span",{className:"flex min-w-0 flex-col",children:[t.jsxs("span",{className:"flex min-w-0 items-center gap-1.5",children:[j&&t.jsx("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full bg-[var(--accent)]"}),t.jsx("span",{className:"truncate font-mono text-xs text-[var(--scout-chrome-ink)]",children:de(c.id)}),t.jsx("span",{className:"shrink-0 rounded-sm bg-[var(--scout-chrome-hover)] px-1 py-0.5 font-mono text-3xs uppercase tracking-[0.08em] text-[var(--scout-chrome-ink-faint)]",children:N})]}),t.jsx("span",{className:"mt-0.5 truncate font-mono text-2xs text-[var(--scout-chrome-ink-faint)]",children:c.cwd?ae(c.cwd):"workspace"})]}),t.jsxs("span",{className:"flex shrink-0 flex-col items-end",children:[t.jsx("span",{className:"font-mono text-2xs uppercase tracking-[0.12em] text-[var(--accent)]",children:j?"active":"running"}),t.jsx("span",{className:"mt-0.5 max-w-[78px] truncate font-mono text-2xs text-[var(--scout-chrome-ink-ghost)]",children:S})]})]}),t.jsx("button",{type:"button",title:"Session actions",onClick:I=>i(I,$),className:"mt-1.5 h-5 rounded border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] px-1.5 font-mono text-3xs uppercase tracking-[0.08em] text-[var(--scout-chrome-ink-faint)] hover:bg-[var(--scout-chrome-active)] hover:text-[var(--scout-chrome-ink)]",children:"..."})]},c.id)}),p.length>f.length&&t.jsxs("div",{className:"px-1 pt-0.5 font-mono text-2xs text-[var(--scout-chrome-ink-ghost)]",children:[p.length-f.length," more running"]})]})})}function Pe(e,s,a){const r=[...s?.sessions??[]],i=E(e);return i&&a&&!r.some(m=>m.id===a)&&r.unshift({id:a,startedAt:e.createdAt??e.updatedAt??Date.now(),cwd:e.cwd??e.projectRoot??".",...e.harness?{harness:e.harness}:{},transport:i.backend,model:e.model}),r.sort((m,x)=>{const v=m.endedAt??m.startedAt,p=x.endedAt??x.startedAt;return ne(v,p)})}function de(e){const s=e.replace(/^session[_:-]?/i,"");return s.length>10?s.slice(0,8):s}function J({agentId:e}){const[s,a]=h.useState(null),r=h.useCallback(async()=>{const i=await R(`/api/agents/${encodeURIComponent(e)}/observe`).catch(()=>null);a(i)},[e]);return h.useEffect(()=>{r()},[r]),L(()=>{r()}),s?.data?t.jsx(Oe,{agentId:e,data:s.data,sessionId:s.sessionId}):t.jsx(g,{label:"Trace",children:t.jsx("div",{className:"text-xs leading-relaxed text-[var(--scout-chrome-ink-faint)]",children:"Resolving session trace."})})}function Oe({agentId:e,data:s,sessionId:a}){const r=s.metadata?.session,i=s.events,m=s.files,x=i.filter(o=>o.kind==="tool").length,v=i.filter(o=>o.kind==="think").length,p=i.filter(o=>o.kind==="ask").length,f=i.filter(o=>o.kind==="tool"&&o.tool==="read").length,n=i.filter(o=>o.kind==="tool"&&(o.tool==="edit"||o.tool==="write")).length,l=i.length>0?i[i.length-1].t:0,u=r?.threadPath;return t.jsxs(t.Fragment,{children:[t.jsxs(g,{label:"Session",children:[a&&t.jsx(w,{label:"Active",value:a}),u&&t.jsx(Q,{label:"Source",path:u,basePath:r?.cwd??null,value:ae(u),agentId:e,sessionId:a}),r?.cwd&&t.jsx(Q,{label:"Workspace",path:r.cwd,value:r.cwd,agentId:e,sessionId:a})]}),t.jsx(g,{label:"Trace stats",children:t.jsxs("div",{className:"grid grid-cols-2 gap-1.5",children:[t.jsx(A,{label:"Turns",value:M(r?.turnCount)}),t.jsx(A,{label:"Tools",value:M(x)}),t.jsx(A,{label:"Thinks",value:M(v)}),t.jsx(A,{label:"Requests",value:M(p)}),t.jsx(A,{label:"Reads",value:M(f)}),t.jsx(A,{label:"Edits",value:M(n)}),t.jsx(A,{label:"Files",value:M(m.length)}),t.jsx(A,{label:"Window",value:Se(l)})]})}),m.length>0&&t.jsx(g,{label:`Files touched · ${m.length}`,children:t.jsx("div",{className:"flex flex-col gap-1",children:m.slice(0,8).map(o=>t.jsxs("button",{type:"button",title:o.path,onClick:()=>ce({path:o.path,basePath:r?.cwd??null,agentId:e,sessionId:a}),className:"flex items-center justify-between gap-2 rounded border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] px-2 py-1 text-left hover:border-[var(--accent)]",children:[t.jsx("span",{className:"min-w-0 truncate font-mono text-xs text-[var(--scout-chrome-ink-soft)]",children:o.path}),t.jsxs("span",{className:"shrink-0 font-mono text-2xs text-[var(--scout-chrome-ink-faint)]",children:["x",o.touches]})]},o.path))})})]})}function K(e,s){return e?.view==="agents-v2"?{...e,view:"agents-v2",agentId:s,tab:"observe"}:{view:"agents-v2",agentId:s,tab:"observe"}}function Ee({agentId:e,navigate:s,cwd:a,route:r}){const[i,m]=h.useState(null),x=h.useCallback(async()=>{const d=await R(`/api/agents/${encodeURIComponent(e)}/observe`).catch(()=>null);m(d)},[e]);h.useEffect(()=>{x()},[x]),L(()=>{x()});const v=i?.data;if(!v||v.files.length===0)return null;const p=v.files,n=[...p].sort((d,C)=>{const N=d.state==="read"?0:1,S=C.state==="read"?0:1;return N!==S?S-N:C.touches-d.touches}).slice(0,6),l=p.length-n.length,u=p.filter(d=>d.state!=="read").length,o=v.metadata?.session?.cwd??a??null,c=i.sessionId??v.metadata?.session?.externalSessionId??void 0,j=()=>s(o?{view:"repo-diff",path:o,agentId:e,include:"changed",...c?{sessionId:c}:{}}:K(r,e)),y=()=>s(o?{view:"repo-diff",path:o}:K(r,e));return t.jsxs(g,{label:"Files changed",children:[t.jsxs("div",{className:"mb-1.5 flex items-baseline justify-between font-mono text-3xs uppercase tracking-[0.14em] text-[var(--scout-chrome-ink-faint)]",children:[t.jsx("span",{children:u>0?`${u} changed`:"touched"}),t.jsx("span",{className:"tabular-nums",children:p.length})]}),t.jsxs("div",{className:"flex flex-col gap-1",children:[n.map(d=>{const C=d.path.replace(/\/+$/,"").split("/"),N=C.pop()??d.path,S=C.pop(),$=S?`${S}/`:"",I=d.state!=="read",P=d.state==="created"?"+":d.state==="modified"?"~":"·";return t.jsxs("div",{className:"flex items-baseline justify-between gap-2 font-mono text-xs leading-tight",title:`${d.path} · ${d.state}`,children:[t.jsxs("span",{className:"flex min-w-0 items-baseline gap-1.5",children:[t.jsx("span",{className:"flex-none tabular-nums",style:{color:I?"var(--accent)":"var(--scout-chrome-ink-ghost)"},children:P}),t.jsxs("span",{className:"flex min-w-0 items-baseline",children:[t.jsx("span",{className:"truncate text-[var(--scout-chrome-ink-ghost)]",children:$}),t.jsx("span",{className:"flex-none",style:{color:I?"var(--scout-chrome-ink-soft)":"var(--scout-chrome-ink-faint)"},children:N})]})]}),t.jsxs("span",{className:"shrink-0 tabular-nums text-2xs text-[var(--scout-chrome-ink-faint)]",children:["×",d.touches]})]},d.path)}),t.jsxs("div",{className:"mt-1 flex flex-wrap gap-x-3 gap-y-1",children:[t.jsxs("button",{type:"button",onClick:j,className:"w-fit cursor-pointer font-mono text-2xs uppercase tracking-[0.1em] text-[var(--accent)] hover:underline",children:["Session diff",l>0?` · +${l}`:""," →"]}),t.jsx("button",{type:"button",onClick:y,className:"w-fit cursor-pointer font-mono text-2xs uppercase tracking-[0.1em] text-[var(--scout-chrome-ink-faint)] hover:text-[var(--accent)] hover:underline",children:"Worktree diff →"})]})]})]})}function Q({label:e,path:s,basePath:a,value:r,agentId:i,sessionId:m}){return t.jsxs("div",{className:"flex items-baseline justify-between py-0.5 gap-2",children:[t.jsx("span",{className:"shrink-0 text-xs font-mono uppercase tracking-wider text-[var(--scout-chrome-ink-faint)]",children:e}),t.jsx("button",{type:"button",title:`Reveal ${s}`,onClick:()=>ce({path:s,basePath:a,agentId:i,sessionId:m}),className:"min-w-0 truncate bg-transparent p-0 text-right font-mono text-sm text-[var(--accent)] hover:text-[var(--scout-chrome-ink)] hover:underline",children:r})]})}function A({label:e,value:s}){return t.jsxs("div",{className:"rounded border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] px-2 py-1.5",children:[t.jsx("div",{className:"font-mono text-3xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-faint)]",children:e}),t.jsx("div",{className:"mt-0.5 font-mono text-md text-[var(--scout-chrome-ink)]",children:s})]})}function _e({focusAgent:e,agents:s,onOpenAgent:a}){const p=h.useMemo(()=>{const n=s.filter(u=>u.id!==e.id),l=u=>{const o=D(u);return o==="in_turn"?0:o==="in_flight"?1:2};return n.slice().sort((u,o)=>{const c=l(u.state??""),j=l(o.state??"");return c!==j?c-j:ne(u.updatedAt,o.updatedAt)}).slice(0,8)},[s,e.id]),f=h.useMemo(()=>{const n=[{agent:e,x:120,y:90,focused:!0}];return p.forEach((l,u)=>{const o=2*Math.PI*u/Math.max(p.length,1)-Math.PI/2;n.push({agent:l,x:120+68*Math.cos(o),y:90+68*Math.sin(o),focused:!1})}),n},[e,p,120,90,68]);return t.jsxs("div",{className:"@container flex flex-wrap items-start gap-3",children:[t.jsxs("svg",{viewBox:"0 0 240 180",className:"block mx-auto shrink-0 w-full",style:{maxWidth:240},xmlns:"http://www.w3.org/2000/svg",children:[t.jsx("defs",{children:t.jsxs("radialGradient",{id:"inspMeshGlow",cx:"50%",cy:"50%",r:"50%",children:[t.jsx("stop",{offset:"0%",stopColor:"var(--accent)",stopOpacity:"0.06"}),t.jsx("stop",{offset:"100%",stopColor:"var(--accent)",stopOpacity:"0"})]})}),t.jsx("circle",{cx:120,cy:90,r:82,fill:"url(#inspMeshGlow)"}),t.jsx("circle",{cx:120,cy:90,r:68,fill:"none",stroke:"var(--border)",strokeDasharray:"2 4"}),f.slice(1).map((n,l)=>t.jsxs("g",{children:[t.jsx("line",{x1:120,y1:90,x2:n.x,y2:n.y,stroke:"var(--accent)",strokeWidth:1,opacity:.6}),t.jsx("circle",{r:2,fill:"var(--accent)",children:t.jsx("animateMotion",{dur:`${2+l*.3}s`,repeatCount:"indefinite",path:`M 120,90 L ${n.x},${n.y}`})})]},`e-${n.agent.id}`)),f.map(n=>{const l=D(n.agent.state),u=l==="in_turn"||l==="in_flight"||l==="callable",o=n.focused?14:9;return t.jsxs("g",{style:{cursor:"pointer"},onClick:()=>a(n.agent),children:[u&&t.jsxs("circle",{cx:n.x,cy:n.y,r:o+5,fill:"none",stroke:X(n.agent.name),strokeWidth:.8,opacity:.3,children:[t.jsx("animate",{attributeName:"r",values:`${o};${o+8};${o}`,dur:"2.5s",repeatCount:"indefinite"}),t.jsx("animate",{attributeName:"opacity",values:"0.3;0;0.3",dur:"2.5s",repeatCount:"indefinite"})]}),t.jsx("circle",{cx:n.x,cy:n.y,r:o,fill:X(n.agent.name),stroke:n.focused?"var(--accent)":"var(--surface)",strokeWidth:n.focused?1.5:1}),t.jsx("text",{x:n.x,y:n.y,dy:"0.35em",textAnchor:"middle",fontFamily:"var(--font-mono)",fontSize:n.focused?10:8,fontWeight:600,fill:"var(--scout-chrome-avatar-ink)",children:n.agent.name[0].toUpperCase()}),t.jsx("text",{x:n.x,y:n.y+o+10,textAnchor:"middle",fontFamily:"var(--font-mono)",fontSize:8,fill:"var(--dim)",letterSpacing:"0.04em",children:n.agent.name.length>9?n.agent.name.slice(0,8)+"...":n.agent.name})]},n.agent.id)})]}),p.length>0&&t.jsx("ul",{className:"@max-[380px]:hidden flex-1 min-w-[120px] flex flex-col gap-1 m-0 p-0 list-none",children:p.map(n=>{const l=D(n.state);return t.jsx("li",{children:t.jsxs("button",{type:"button",onClick:()=>a(n),className:"w-full flex items-center gap-2 py-1 px-1.5 rounded hover:bg-[var(--surface-hover)] text-left",children:[t.jsx("span",{"aria-hidden":!0,className:"shrink-0 w-2 h-2 rounded-full",style:{background:X(n.name)}}),t.jsx("span",{className:"flex-1 truncate text-sm font-mono text-[var(--scout-chrome-ink)]",children:n.name}),t.jsx("span",{"aria-hidden":!0,title:te(n.state),className:"shrink-0 w-1.5 h-1.5 rounded-full",style:{background:se(l)}})]})},n.id)})})]})}function V({asks:e,agentId:s,navigate:a}){const r=e.filter(i=>i.agentId===s&&(i.status==="needs_attention"||i.status==="queued"));return r.length===0?null:t.jsx(g,{label:`Incoming requests · ${r.length}`,children:t.jsx("div",{className:"flex flex-col gap-2",children:r.map(i=>t.jsxs("div",{className:"p-2.5 rounded-md border border-amber-500/30 bg-amber-500/[0.04] cursor-pointer hover:bg-amber-500/[0.08] transition-colors",onClick:()=>{i.conversationId&&a({view:"agents-v2",agentId:s,conversationId:i.conversationId})},children:[t.jsx("div",{className:"text-2xs font-mono uppercase tracking-[0.12em] text-amber-500/80 mb-1",children:"awaiting"}),t.jsx("div",{className:"line-clamp-2 text-sm leading-relaxed text-[var(--scout-chrome-ink)]",children:i.summary??i.task}),t.jsxs("div",{className:"mt-1.5 text-2xs font-mono text-[var(--scout-chrome-ink-ghost)]",children:[i.harness??"operator"," → ",i.agentName??"agent"]})]},i.invocationId))})})}function g({label:e,children:s}){return t.jsxs("div",{className:"flex flex-col",children:[t.jsx("div",{className:"mb-1.5 text-2xs font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)]",children:e}),s]})}function w({label:e,value:s}){return t.jsxs("div",{className:"flex items-baseline justify-between py-0.5 gap-2",children:[t.jsx("span",{className:"shrink-0 text-xs font-mono uppercase tracking-wider text-[var(--scout-chrome-ink-faint)]",children:e}),t.jsx("span",{className:"truncate text-sm font-mono text-[var(--scout-chrome-ink)]",title:s,children:s})]})}export{Ut as AgentsInspector};
@@ -0,0 +1 @@
1
+ import{r as y,j as e}from"./index-DReVb7jZ.js";import{a as O}from"./api-DSqpVKC7.js";import{a as r,t as f}from"./time-Dhsh_2EG.js";import{u as M,j as R}from"./mesh-ops-DSlvHp-D.js";import{u as L}from"./mesh-view-store-C1-mdP3P.js";import{u as H}from"./Provider-CNZluAZb.js";/* empty css */import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";function E(o){return o.state==="waiting"&&o.nextMoveOwnerId==="operator"&&o.waitingOn?.label==="Held by operator"}function t({label:o,value:c}){return c?e.jsxs("div",{className:"mesh-ops-detail-row",children:[e.jsx("span",{className:"mesh-ops-detail-label",children:o}),e.jsx("span",{className:"mesh-ops-detail-value",children:c})]}):null}function Ce(){const{navigate:o}=H(),{items:c,hosts:h,selectedItemId:w,lab:A}=M(),{meshSnapshot:p}=L(),[i,x]=y.useState(null),[v,j]=y.useState(null),s=c.find(l=>l.id===w)??null,u=async l=>{if(!(!s||i)){x(l),j(null);try{await O(`/api/mesh-ops/items/${encodeURIComponent(s.id)}/${l}`,{method:"POST",body:"{}"}),R()}catch(d){j(d instanceof Error?d.message:String(d))}finally{x(null)}}};if(!s){const l=new Map;for(const n of c)n.hostNodeId&&l.set(n.hostNodeId,(l.get(n.hostNodeId)??0)+1);const d=p?.localNode?.id??null;return e.jsxs("div",{className:"ctx-panel mesh-ops-inspector",children:[e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Mesh"}),h.map(n=>e.jsx(t,{label:n.nodeId===d?"this host":"peer",value:`${n.label} · ${l.get(n.nodeId)??0} items${n.liveSessionCount>0?` · ${n.liveSessionCount} live`:""}`},n.nodeId)),h.length===0&&e.jsx("div",{className:"ctx-panel-empty",children:"No hosts yet."})]}),e.jsx("div",{className:"ctx-panel-section",children:e.jsx("p",{className:"mesh-ops-inspector-note",children:"Select an item to inspect it. Counts are items attributed to each host; the map stays in the mesh screen."})})]})}if(s.kind==="session"&&s.session){const l=s.session;return e.jsxs("div",{className:"ctx-panel mesh-ops-inspector",children:[e.jsxs("div",{className:"mesh-ops-inspector-header",children:[e.jsx("div",{className:"mesh-ops-inspector-title",children:s.title}),e.jsxs("div",{className:"mesh-ops-inspector-summary",children:[l.live?`Live ${l.harness} session`:l.endedAt!==null?`Ended ${l.harness} session`:`Lost ${l.harness} session — no end marker, last seen ${r(l.lastSeenAt)}`,l.alias?` · ${l.alias}`:""]})]}),e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Session"}),e.jsx(t,{label:"harness",value:l.harness}),e.jsx(t,{label:"state",value:l.endedAt!==null?"ended":l.state}),e.jsx(t,{label:"agent",value:s.ownerId}),e.jsx(t,{label:"started",value:l.startedAt!==null?r(l.startedAt):null}),e.jsx(t,{label:"last seen",value:r(l.lastSeenAt)}),e.jsx(t,{label:"ended",value:l.endedAt!==null?r(l.endedAt):null})]}),e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Venue"}),e.jsx(t,{label:"host",value:s.hostLabel}),e.jsx(t,{label:"project",value:s.projectRoot}),e.jsx(t,{label:"cwd",value:l.cwd})]})]})}const S=E(s),I=s.state==="done"||s.state==="cancelled",$=s.state==="open"||s.state==="working",C=S,m=s.state==="review",a=s.latestFlight,k=a!==null&&(a.state==="running"||a.state==="queued"),b=p?.localNode?.hostName?.split(".")[0]??p?.localNode?.name??"here",N=s.hostLabel??"unattributed",g=N===b||s.hostNodeId===null;return e.jsxs("div",{className:"ctx-panel mesh-ops-inspector",children:[e.jsxs("div",{className:"mesh-ops-inspector-header",children:[e.jsx("div",{className:"mesh-ops-inspector-title",children:s.title}),s.summary&&e.jsx("div",{className:"mesh-ops-inspector-summary",children:s.summary})]}),A.routeStrip&&e.jsx("div",{className:"mesh-ops-routestrip","aria-hidden":!0,children:e.jsxs("svg",{viewBox:"0 0 260 40",className:"mesh-ops-routestrip-svg",children:[e.jsx("line",{x1:"24",y1:"18",x2:"236",y2:"18",className:`mesh-ops-routestrip-line${k&&!g?" mesh-ops-routestrip-line--moving":""}`}),e.jsx("rect",{x:"14",y:"12",width:"12",height:"12",rx:"2",className:"mesh-ops-routestrip-node"}),e.jsx("rect",{x:"234",y:"12",width:"12",height:"12",rx:"2",className:"mesh-ops-routestrip-node"}),e.jsx("text",{x:"20",y:"36",textAnchor:"middle",className:"mesh-ops-routestrip-label",children:b}),e.jsx("text",{x:"246",y:"36",textAnchor:"end",className:"mesh-ops-routestrip-label",children:g?"(same host)":N})]})}),!I&&e.jsxs("div",{className:"mesh-ops-actions",children:[C?e.jsx("button",{type:"button",className:"mesh-ops-button",disabled:i!==null,onClick:()=>{u("release")},children:i==="release"?"Releasing…":"Release"}):$?e.jsx("button",{type:"button",className:"mesh-ops-button",disabled:i!==null,onClick:()=>{u("hold")},children:i==="hold"?"Holding…":"Hold"}):null,(s.state==="review"||s.attention!=="silent")&&e.jsx("button",{type:"button",className:"mesh-ops-button",disabled:i!==null,onClick:()=>{u(m?"accept":"clear")},title:m?"Accept this work item":"Dismiss this item from the attention queue",children:i==="accept"||i==="clear"?m?"Accepting…":"Clearing…":m?"Accept":"Clear"}),e.jsx("button",{type:"button",className:"mesh-ops-button",onClick:()=>o({view:"work",workId:s.id}),title:"Open the full work item",children:"Open item"})]}),v&&e.jsx("div",{className:"ctx-panel-empty","data-tone":"error",children:v}),e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"State"}),e.jsx(t,{label:"phase",value:s.currentPhase}),e.jsx(t,{label:"state",value:s.state}),e.jsx(t,{label:"attention",value:s.attention==="silent"?null:s.attention}),e.jsx(t,{label:"waiting on",value:s.waitingOn?.label??null}),e.jsx(t,{label:"acceptance",value:s.acceptanceState==="none"?null:s.acceptanceState}),e.jsx(t,{label:"priority",value:s.priority}),e.jsx(t,{label:"labels",value:s.labels.length>0?s.labels.join(", "):null})]}),e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Venue"}),e.jsx(t,{label:"owner",value:s.ownerName??s.ownerId}),e.jsx(t,{label:"host",value:s.hostLabel??(s.hostNodeId?s.hostNodeId:null)}),e.jsx(t,{label:"project",value:s.projectRoot})]}),a&&e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Latest flight"}),e.jsx(t,{label:"state",value:a.state}),e.jsx(t,{label:"summary",value:a.summary}),e.jsx(t,{label:"started",value:a.startedAt!==null?r(a.startedAt):null}),e.jsx(t,{label:"completed",value:a.completedAt!==null?r(a.completedAt):null}),s.activeFlightCount>0&&e.jsx(t,{label:"active",value:`${s.activeFlightCount} in flight`})]}),e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Activity"}),e.jsx(t,{label:"last",value:s.lastMeaningfulSummary}),e.jsx(t,{label:"updated",value:`${f(s.updatedAt)} · created ${f(s.createdAt)}`})]})]})}export{Ce as MeshOpsInspector};
@@ -0,0 +1 @@
1
+ import{j as t}from"./index-DReVb7jZ.js";import{u as h}from"./Provider-CNZluAZb.js";import{o as j}from"./openAgent-Dbv5wfuL.js";import{n as v,i as u,c as d}from"./agent-state-DDhnFEEP.js";import{A as b}from"./AgentAvatar-NZOqcsB2.js";import{t as g}from"./time-Dhsh_2EG.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./api-DSqpVKC7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./openContent-C6XO6kr5.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";function ft(){const{agents:r,agentsLoaded:s,apiConnection:o,navigate:a,route:f}=h(),n=e=>j(a,e,{returnTo:f});if(!s)return t.jsx("div",{className:"flex h-full flex-col justify-center","aria-busy":"true",children:t.jsxs("div",{className:"base-rail-loading",role:"status","aria-label":"Loading agent roster",children:[t.jsx("span",{"aria-hidden":"true"}),t.jsx("span",{"aria-hidden":"true"}),t.jsx("span",{"aria-hidden":"true"}),t.jsx("span",{"aria-hidden":"true"})]})});if(r.length===0)return t.jsxs("div",{className:"flex h-full flex-col items-center justify-center px-4 text-center font-mono text-sm leading-relaxed text-[var(--scout-chrome-ink-faint)]",children:[t.jsx("div",{className:"mb-1 uppercase tracking-[0.15em]",children:o.status==="offline"?"Roster unavailable":"No agents"}),t.jsx("div",{children:o.status==="offline"?o.message:"Connect an agent to see your roster here."})]});const i=r.filter(e=>{const x=v(e.state,e);return x==="in_turn"||x==="in_flight"}),l=r.filter(e=>u(e.state,e)&&!i.includes(e)),m=r.filter(e=>!u(e.state,e));return t.jsxs("div",{className:"flex flex-col h-full overflow-y-auto frame-scrollbar p-4 gap-4 text-sm",children:[i.length>0&&t.jsx(c,{label:"In progress",count:i.length,children:i.map(e=>t.jsx(p,{agent:e,onOpen:n,subLabel:d(e.state,e)},e.id))}),l.length>0&&t.jsx(c,{label:"Callable",count:l.length,children:l.map(e=>t.jsx(p,{agent:e,onOpen:n},e.id))}),m.length>0&&t.jsx(c,{label:"Blocked",count:m.length,children:m.map(e=>t.jsx(p,{agent:e,onOpen:n,subLabel:d(e.state,e),dim:!0},e.id))})]})}function c({label:r,count:s,children:o}){return t.jsxs("div",{className:"flex flex-col",children:[t.jsxs("div",{className:"flex items-baseline justify-between mb-1.5",children:[t.jsx("span",{className:"text-2xs font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)]",children:r}),t.jsx("span",{className:"text-2xs font-mono tabular-nums text-[var(--scout-chrome-ink-ghost)]",children:s})]}),t.jsx("div",{className:"flex flex-col gap-0.5",children:o})]})}function p({agent:r,onOpen:s,subLabel:o,dim:a}){return t.jsxs("button",{onClick:()=>s(r),className:`group flex items-center gap-2.5 px-2 py-1.5 rounded-sm text-left transition-colors ${a?"opacity-60 hover:opacity-100 hover:bg-[var(--scout-chrome-hover)]":"hover:bg-[var(--scout-chrome-hover)]"}`,children:[t.jsx(b,{agent:r,placement:"row"}),t.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[t.jsx("span",{className:"truncate font-medium text-[var(--scout-chrome-ink)]",children:r.name}),o?t.jsx("span",{className:"truncate text-xs text-[var(--scout-chrome-ink-faint)]",children:o}):r.updatedAt?t.jsx("span",{className:"truncate text-xs text-[var(--scout-chrome-ink-ghost)]",children:g(r.updatedAt)}):null]})]})}export{ft as HomeRight};
@@ -0,0 +1 @@
1
+ import{r as d,j as s}from"./index-DReVb7jZ.js";import{u as C,s as j}from"./mesh-view-store-C1-mdP3P.js";import{NodeDetailPanel as L}from"./NodeDetailPanel-BNTqYC7m.js";import{u as O}from"./local-agents-I40PawYA.js";import{a as $,s as E}from"./use-mesh-node-state-3V3ADQ-G.js";import{t as J}from"./time-Dhsh_2EG.js";import{g as R}from"./Provider-CNZluAZb.js";import{n as T,a as P}from"./agent-state-DDhnFEEP.js";import{a as N}from"./api-DSqpVKC7.js";/* empty css *//* empty css */import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";function B(a){return a.localNode?.advertiseScope==="mesh"}function _(a){const n=new Map;for(const t of a){const r=(t.harness??t.agentClass??"agent").toLowerCase(),o=n.get(r)??{total:0,working:0};o.total+=1,P(t.state)&&(o.working+=1),n.set(r,o)}return Array.from(n.entries()).map(([t,r])=>({label:t,total:r.total,working:r.working})).sort((t,r)=>r.total-t.total).slice(0,6)}function I(a){return a?a.replace(/^https?:\/\//,"").split("/")[0]??a:"Unavailable"}function U(a){return new Promise(n=>window.setTimeout(n,a))}async function z(a,n){let t=null,r=null;for(let o=0;o<=n.attempts;o+=1){try{if(t=await N("/api/mesh"),j(t),a(t))return t}catch(c){r=c}o<n.attempts&&await U(n.intervalMs)}if(t)return t;throw r instanceof Error?r:new Error("Mesh status is temporarily unavailable.")}function D(a){return a.issues.find(n=>n.code==="local_only"||n.code==="mesh_loopback"||n.code==="tailscale_stopped")?.summary??null}function Is(){const{meshSnapshot:a,selectedId:n,selectedType:t}=C(),{agents:r}=O(),o=$(),c=d.useMemo(()=>R(r),[r]),[w,p]=d.useState(!1),[x,h]=d.useState(null),k=d.useCallback(async()=>{p(!0),h({tone:"info",text:"Joining mesh — announcing broker and syncing peers…"});try{const e=await N("/api/mesh/join",{method:"POST",body:"{}"});j(e);const l=e.identity.discoverable?e:await z(i=>i.identity.discoverable,{attempts:6,intervalMs:750});if(l.identity.discoverable){const i=e.discovery,A=i?.discoveredCount!=null?` Found ${i.discoveredCount} peer node${i.discoveredCount===1?"":"s"}.`:"";h(i.error?{tone:"warning",text:`On mesh, but the initial peer sync failed: ${i.error}`}:{tone:"success",text:`On mesh at ${I(l.identity.announceUrl??l.brokerUrl)}.${A}`})}else h({tone:"warning",text:D(l)??"Joined, but this broker is not peer-reachable yet."})}catch(e){h({tone:"error",text:e instanceof Error?e.message:String(e)})}finally{p(!1)}},[]),M=d.useCallback(async()=>{p(!0),h({tone:"info",text:"Leaving mesh…"});try{const e=await N("/api/mesh/leave",{method:"POST",body:"{}"});j(e),h({tone:"success",text:"Local only — peers will no longer discover this broker."})}catch(e){h({tone:"error",text:e instanceof Error?e.message:String(e)})}finally{p(!1)}},[]),y=d.useMemo(()=>{const e={total:c.length,working:0,ready:0,notReady:0};for(const l of c){const i=T(l.state);i==="in_turn"||i==="in_flight"?e.working+=1:i==="callable"?e.ready+=1:e.notReady+=1}return e},[c]),v=d.useMemo(()=>_(c),[c]);if(!a)return s.jsx("div",{className:"sys-inspector-empty",children:s.jsx("p",{children:"Loading mesh…"})});if(n&&t==="node")return s.jsx(L,{machineId:n,mesh:a,issues:a.issues});const m=a,g=Object.values(m.nodes).filter(e=>e.id!==m.localNode?.id).length,S=m.tailscale.onlineCount??0,f=m.localNode?.hostName?.split(".")[0]??m.localNode?.name??m.identity.name??"this broker",b=Object.values(o.entries),u=b.reduce((e,l)=>{const i=E(l.view??null).tone;return!l.view||l.view.broker==="unknown"?e.unchecked+=1:i==="ok"?e.responding+=1:i==="warn"?e.partial+=1:e.silent+=1,e},{responding:0,partial:0,silent:0,unchecked:0});return s.jsxs("div",{className:"sys-inspector-content mesh-summary",children:[s.jsxs("div",{className:"sys-inspector-head",children:[s.jsx("h3",{className:"sys-inspector-title",children:"Network"}),s.jsx("span",{className:"mesh-summary-mode",children:m.identity.modeLabel})]}),s.jsxs("section",{className:"mesh-summary-section",children:[s.jsxs("div",{className:"mesh-summary-counts",children:[s.jsxs("div",{className:"mesh-summary-count",children:[s.jsx("span",{className:"mesh-summary-count-value",children:b.length||g+1}),s.jsx("span",{className:"mesh-summary-count-label",children:"machines"})]}),s.jsxs("div",{className:"mesh-summary-count mesh-summary-count--working",children:[s.jsx("span",{className:"mesh-summary-count-value",children:u.responding}),s.jsx("span",{className:"mesh-summary-count-label",children:"responding"})]}),u.partial>0&&s.jsxs("div",{className:"mesh-summary-count",children:[s.jsx("span",{className:"mesh-summary-count-value",children:u.partial}),s.jsx("span",{className:"mesh-summary-count-label",children:"partial"})]}),u.silent>0&&s.jsxs("div",{className:"mesh-summary-count mesh-summary-count--offline",children:[s.jsx("span",{className:"mesh-summary-count-value",children:u.silent}),s.jsx("span",{className:"mesh-summary-count-label",children:"no answer"})]}),u.unchecked>0&&s.jsxs("div",{className:"mesh-summary-count",children:[s.jsx("span",{className:"mesh-summary-count-value",children:u.unchecked}),s.jsx("span",{className:"mesh-summary-count-label",children:"not checked"})]})]}),s.jsx("p",{className:"mesh-summary-hint",children:o.updatedAt?`Machines last swept ${J(o.updatedAt)}. Select one to see what is running on it.`:"Select a machine to see what is running on it."})]}),s.jsxs("section",{className:"mesh-summary-section",children:[s.jsxs("div",{className:"sys-inspector-section-label",children:["On ",f]}),s.jsxs("div",{className:"mesh-summary-counts",children:[s.jsxs("div",{className:"mesh-summary-count",children:[s.jsx("span",{className:"mesh-summary-count-value",children:y.total}),s.jsx("span",{className:"mesh-summary-count-label",children:"agents"})]}),s.jsxs("div",{className:"mesh-summary-count mesh-summary-count--working",children:[s.jsx("span",{className:"mesh-summary-count-value",children:y.working}),s.jsx("span",{className:"mesh-summary-count-label",children:"working"})]}),s.jsxs("div",{className:"mesh-summary-count",children:[s.jsx("span",{className:"mesh-summary-count-value",children:y.ready}),s.jsx("span",{className:"mesh-summary-count-label",children:"ready"})]}),s.jsxs("div",{className:"mesh-summary-count mesh-summary-count--offline",children:[s.jsx("span",{className:"mesh-summary-count-value",children:y.notReady}),s.jsx("span",{className:"mesh-summary-count-label",children:"not ready"})]})]})]}),v.length>0&&s.jsxs("section",{className:"mesh-summary-section",children:[s.jsxs("div",{className:"sys-inspector-section-label",children:["By harness, on ",f]}),s.jsx("div",{className:"mesh-summary-harness",children:v.map(e=>s.jsxs("div",{className:"mesh-summary-harness-row",children:[s.jsx("span",{className:"mesh-summary-harness-name",children:e.label}),s.jsx("span",{className:"mesh-summary-harness-count",children:e.total}),e.working>0&&s.jsxs("span",{className:"mesh-summary-harness-working",children:[e.working," working"]})]},e.label))})]}),s.jsxs("section",{className:"mesh-summary-section",children:[s.jsx("div",{className:"sys-inspector-section-label",children:"Peers"}),s.jsxs("div",{className:"mesh-summary-peers",children:[s.jsxs("div",{className:"mesh-summary-peer-row",children:[s.jsx("span",{className:"mesh-summary-peer-label",children:"Mesh"}),s.jsx("span",{className:"mesh-summary-peer-value",children:g})]}),m.tailscale.available&&s.jsxs("div",{className:"mesh-summary-peer-row",children:[s.jsx("span",{className:"mesh-summary-peer-label",children:"Tailnet"}),s.jsx("span",{className:`mesh-summary-peer-value${m.tailscale.running?"":" mesh-summary-peer-value--dim"}`,children:m.tailscale.running?`${S} online`:"stopped"})]})]})]}),s.jsxs("section",{className:"mesh-summary-section mesh-summary-reach",children:[s.jsx("div",{className:"sys-inspector-section-label",children:"Mesh"}),s.jsx(F,{joined:B(m),busy:w,tailscaleAvailable:m.tailscale.available,onJoin:()=>{k()},onLeave:()=>{M()}}),x&&s.jsx("div",{className:`sys-banner mesh-action-message sys-banner-${x.tone}`,children:s.jsx("span",{children:x.text})})]})]})}function F({joined:a,busy:n,tailscaleAvailable:t,onJoin:r,onLeave:o}){return s.jsxs("div",{className:"mesh-reach",children:[s.jsxs("label",{className:"mesh-join-toggle",children:[s.jsx("input",{type:"checkbox",checked:a,disabled:n,onChange:()=>{a?o():r()}}),s.jsx("span",{className:"mesh-join-toggle-copy",children:n?"Working…":a?"On mesh":"Join mesh"})]}),!t&&!a&&s.jsx("p",{className:"mesh-join-hint",children:"Tailscale can add automatic discovery; explicit seeds and LAN peers still work."}),a&&s.jsx("p",{className:"mesh-join-hint",children:"Mesh membership is on. Reachability is reported separately above."})]})}export{Is as MeshInspectorPanel};
@@ -0,0 +1 @@
1
+ import{r as l,j as e}from"./index-DReVb7jZ.js";import{u as P}from"./Provider-CNZluAZb.js";import{a as g}from"./api-DSqpVKC7.js";import{u as A}from"./sse-A8AyLH0g.js";import{t as b}from"./time-Dhsh_2EG.js";import{o as k}from"./openContent-C6XO6kr5.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./index-BWHgHrtv.js";function f(t){const r=t.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean);return r[r.length-1]??t}function N(t){const n=t?.trim();if(!n)return null;const r=f(n);return r.endsWith(".jsonl")?r.slice(0,-6):r}function C(t){return t.workspaceRoot?f(t.workspaceRoot):t.agentName??"unassigned"}function L(t){return t.harness?.trim()||t.kind?.trim()||"scout"}function w(t){return t.project?.trim()||(t.cwd?f(t.cwd):null)||"unknown"}function y(t,n=4){const r=new Map;for(const c of t){const a=c.trim()||"unknown";r.set(a,(r.get(a)??0)+1)}return[...r.entries()].map(([c,a])=>({label:c,count:a})).sort((c,a)=>a.count-c.count||c.label.localeCompare(a.label)).slice(0,n)}function we(){const{route:t,navigate:n}=P(),[r,c]=l.useState([]),[a,h]=l.useState(null),x=l.useCallback(async()=>{const[u,d]=await Promise.allSettled([g("/api/sessions"),g("/api/tail/discover")]);u.status==="fulfilled"&&c(u.value),d.status==="fulfilled"&&h(d.value)},[]);if(l.useEffect(()=>{x()},[x]),A(()=>{x()}),t.view!=="sessions")return null;const s=t.sessionId?r.find(u=>u.id===t.sessionId)??null:null;return s?e.jsxs("div",{className:"flex flex-col h-full overflow-y-auto frame-scrollbar p-4 gap-4 text-sm",children:[e.jsxs("div",{className:"border-b border-[var(--scout-chrome-border-soft)] pb-3",children:[e.jsx("div",{className:"text-lg leading-snug text-[var(--scout-chrome-ink-strong)]",children:s.title}),e.jsx("div",{className:"text-xs font-mono uppercase tracking-wider text-cyan-400/70 mt-1",children:s.kind})]}),s.agentName&&e.jsxs(m,{label:"Agent",children:[e.jsx(p,{label:"Name",value:s.agentName}),s.harness&&e.jsx(p,{label:"Harness",value:s.harness})]}),(s.currentBranch||s.workspaceRoot)&&e.jsxs(m,{label:"Workspace",children:[s.currentBranch&&e.jsx(p,{label:"Branch",value:s.currentBranch}),s.workspaceRoot&&e.jsx(p,{label:"Root",value:s.workspaceRoot})]}),e.jsxs(m,{label:"Activity",children:[e.jsx(p,{label:"Messages",value:`${s.messageCount}`}),s.lastMessageAt&&e.jsx(p,{label:"Last",value:b(s.lastMessageAt)}),(s.participantCount??s.participantIds.length)>0&&e.jsx(p,{label:"Participants",value:`${s.participantCount??s.participantIds.length}`})]}),s.preview&&e.jsx(m,{label:"Preview",children:e.jsxs("div",{className:"text-sm italic leading-relaxed text-[var(--scout-chrome-ink-soft)]",children:['"',s.preview,'"']})})]}):e.jsx($,{sessions:r,discovery:a,navigate:n,route:t})}function $({sessions:t,discovery:n,navigate:r,route:c}){const a=n?.transcripts??[],h=l.useMemo(()=>y([...t.map(L),...a.map(o=>o.source||"unknown")],5),[t,a]),x=l.useMemo(()=>y([...t.map(C),...a.map(w)],5),[t,a]),s=l.useMemo(()=>a.slice().sort((o,i)=>i.mtimeMs-o.mtimeMs).slice(0,5),[a]),u=l.useMemo(()=>t.filter(o=>o.lastMessageAt).slice().sort((o,i)=>(i.lastMessageAt??0)-(o.lastMessageAt??0)).slice(0,5),[t]),d=n?.processes?.length??0,S=n?.totals.transcripts??a.length,R=d>0?"Live harness activity":"Quiet session surface";return e.jsxs("div",{className:"flex flex-col h-full overflow-y-auto frame-scrollbar p-4 gap-4 text-sm",children:[e.jsxs("div",{className:"rounded border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] p-2.5",children:[e.jsx("div",{className:"text-2xs font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)]",children:"Sessions context"}),e.jsxs("div",{className:"mt-2 grid grid-cols-3 gap-1",children:[e.jsx(v,{label:"Scout",value:`${t.length}`}),e.jsx(v,{label:"Raw",value:`${S}`}),e.jsx(v,{label:"Live",value:`${d}`})]}),e.jsxs("div",{className:"mt-2 flex items-center justify-between gap-2 border-t border-[var(--scout-chrome-border-soft)] pt-2 font-mono text-2xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-ghost)]",children:[e.jsx("span",{children:R}),e.jsxs("span",{children:[h.length," sources"]})]})]}),e.jsx(m,{label:"Sources",children:e.jsx(M,{items:h,empty:"No sources visible"})}),e.jsx(m,{label:"Project mix",children:e.jsx(M,{items:x,empty:"No projects visible"})}),e.jsx(m,{label:"Recent raw",children:s.length===0?e.jsx(j,{children:"No raw transcripts discovered."}):e.jsx("div",{className:"flex flex-col gap-1.5",children:s.map(o=>{const i=N(o.sessionId)??N(o.transcriptPath);return e.jsxs("button",{type:"button",className:"rounded border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] px-2 py-1.5 text-left transition-colors hover:border-[var(--scout-chrome-border)]",onClick:()=>{i&&k(r,{view:"sessions",sessionId:i},{returnTo:c})},disabled:!i,children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"shrink-0 rounded-sm bg-[var(--scout-chrome-bg)] px-1 py-0.5 font-mono text-3xs uppercase tracking-[0.08em] text-[var(--scout-chrome-ink-faint)]",children:o.source||"raw"}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-sm text-[var(--scout-chrome-ink)]",children:w(o)}),e.jsx("span",{className:"shrink-0 font-mono text-2xs text-[var(--scout-chrome-ink-faint)]",children:b(o.mtimeMs)})]}),e.jsx("div",{className:"mt-0.5 truncate font-mono text-2xs text-[var(--scout-chrome-ink-ghost)]",children:i??f(o.transcriptPath)})]},`${o.source}:${o.transcriptPath}`)})})}),e.jsx(m,{label:"Recent Scout sessions",children:u.length===0?e.jsx(j,{children:"No recent Scout session messages."}):e.jsx("div",{className:"flex flex-col gap-1",children:u.map(o=>e.jsxs("button",{type:"button",className:"flex items-center gap-2 bg-transparent px-0 py-0.5 text-left",onClick:()=>k(r,{view:"sessions",sessionId:o.id},{returnTo:c}),children:[e.jsx("span",{className:"min-w-0 flex-1 truncate text-sm text-[var(--scout-chrome-ink-soft)]",children:o.title}),e.jsx("span",{className:"shrink-0 font-mono text-2xs text-[var(--scout-chrome-ink-faint)]",children:o.lastMessageAt?b(o.lastMessageAt):"-"})]},o.id))})})]})}function v({label:t,value:n}){return e.jsxs("div",{className:"min-w-0 rounded-sm border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-bg)] px-1.5 py-1",children:[e.jsx("div",{className:"font-mono text-2xs uppercase tracking-[0.1em] text-[var(--scout-chrome-ink-faint)]",children:t}),e.jsx("div",{className:"mt-0.5 truncate font-mono text-lg text-[var(--scout-chrome-ink-strong)]",children:n})]})}function M({items:t,empty:n}){return t.length===0?e.jsx(j,{children:n}):e.jsx("div",{className:"flex flex-wrap gap-1",children:t.map(r=>e.jsxs("span",{className:"rounded-sm border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] px-1.5 py-0.5 font-mono text-xs text-[var(--scout-chrome-ink-soft)]",title:`${r.count} ${r.label}`,children:[r.label," ",r.count]},r.label))})}function j({children:t}){return e.jsx("div",{className:"text-xs font-mono uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-ghost)]",children:t})}function m({label:t,children:n}){return e.jsxs("div",{className:"flex flex-col",children:[e.jsx("div",{className:"mb-1.5 text-2xs font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)]",children:t}),n]})}function p({label:t,value:n}){return e.jsxs("div",{className:"flex items-baseline justify-between py-0.5 gap-2",children:[e.jsx("span",{className:"shrink-0 text-xs font-mono uppercase tracking-wider text-[var(--scout-chrome-ink-faint)]",children:t}),e.jsx("span",{className:"truncate text-sm font-mono text-[var(--scout-chrome-ink)]",children:n})]})}export{we as SessionsInspector};
@@ -0,0 +1 @@
1
+ import{r as i,j as e}from"./index-DReVb7jZ.js";import{u as lt}from"./Provider-CNZluAZb.js";import{o as Me}from"./openContent-C6XO6kr5.js";import{a as W}from"./api-DSqpVKC7.js";import{u as ot}from"./sse-A8AyLH0g.js";import{u as dt}from"./tail-events-C4WdhVeK.js";import{n as ut,a as mt,c as _e}from"./agent-state-DDhnFEEP.js";import{s as Be}from"./colors-CFlbwC25.js";import{A as pt}from"./AgentLiveActions-6Kfr1uOT.js";import{i as ht,a as vt,c as ft}from"./message-visibility-DwxgcgYK.js";import{d as xt,a as jt,b as gt,m as Nt,c as We}from"./conversation-model-m8HhzroS.js";import{c as yt,e as It,t as F,f as oe}from"./time-Dhsh_2EG.js";import{b as wt}from"./conversations-Cbg9h_Af.js";import{d as St}from"./router-C-MF5-mb.js";import{T as Tt}from"./TmuxPeek-DpUT9Tpc.js";import{S as bt}from"./scroll-text-B0tKI9Sg.js";import"./provider-DwmCoSlc.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./index-BWHgHrtv.js";import"./terminal-takeover-CZZsnPzj.js";import"./eye-CsGfEVR6.js";import"./terminal-DMZjX1es.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";/* empty css */import"./refresh-cw-IcD2lPoT.js";const kt=20;function de(t){if(!t)return null;const s=t.replace(/[\\/]+$/,"");return s?s.split(/[\\/]/).filter(Boolean).at(-1)??s:null}function ue(t){const s=t?.trim();return s?s.length>18?`${s.slice(0,8)}...${s.slice(-6)}`:s:null}function b(t){const s=new Set,a=[];for(const c of t){const m=c?.trim();if(!m)continue;const h=m.toLowerCase();s.has(h)||(s.add(h),a.push(m))}return a}function Ue(t,s){const a=t?.trim().replace(/[\\/]+$/,""),c=s.trim().replace(/[\\/]+$/,"");if(!a||!c)return!1;if(a===c)return!0;if(c.startsWith("~/")){const m=c.slice(1);if(a.endsWith(m)||a.includes(`${m}/`))return!0}if(a.startsWith("~/")){const m=a.slice(1);if(c.endsWith(m)||c.includes(`${m}/`))return!0}return a.startsWith(`${c}/`)||c.startsWith(`${a}/`)}function Ve(t,s){const a=t?.trim().toLowerCase(),c=s.trim().toLowerCase();return!a||!c?!1:a.includes(c)||c.includes(a)}function He(t,s){const a=t?.trim().toLowerCase(),c=s.trim().toLowerCase();return!a||!c?!1:a===c}function Ct(t){const{activeSessionId:s,agent:a,sessionMeta:c}=t,m=b([s,a?.harnessSessionId]),h=b([a?.cwd,a?.projectRoot,c?.workspaceRoot]),r=b([a?.project,de(a?.cwd),de(a?.projectRoot),de(c?.workspaceRoot)]).filter(U=>U.length>2),o=b([...m.slice(0,2),...r.slice(0,2)]).join("|");return{sessionIds:m,paths:h,projects:r,query:o}}function he(t,s){return!!(s.sessionIds.some(a=>Ve(t.sessionId,a))||s.paths.some(a=>Ue(t.cwd,a))||s.projects.some(a=>He(t.project,a)))}function At(t,s){const a=s.filter(r=>he(r,t)),c=b(a.filter(r=>t.sessionIds.some(o=>Ve(r.sessionId,o))).map(r=>r.sessionId));if(c[0])return c[0];const m=b(a.filter(r=>t.paths.some(o=>Ue(r.cwd,o))).map(r=>r.sessionId));if(m[0])return m[0];const h=b(a.filter(r=>t.projects.some(o=>He(r.project,o))).map(r=>r.sessionId));return h[0]?h[0]:t.paths[0]?t.paths[0]:t.sessionIds[0]?t.sessionIds[0]:t.projects[0]?t.projects[0]:t.query}function G(t,s){const a=new Map;for(const c of[...s,...t])a.set(c.id,c);return[...a.values()].sort((c,m)=>yt(c.ts,m.ts)).slice(0,kt)}function Et(t){return t==="tool-result"?"tool result":t}function Lt(t){const s=t.replace(/\s+/g," ").trim();return s.length<=180?s:`${s.slice(0,177)}...`}const Rt={direct:"Conversation",channel:"Conversation",group_direct:"Conversation",thread:"Thread"},Pt=1800,$t=4800,Fe=2,Mt=120,_t=650,Bt=1800;function me(t,s){try{return JSON.stringify(t)===JSON.stringify(s)?t:s}catch{return s}}function ze(t){if(!t)return null;const s=t.replace(/[\\/]+$/,"");return s?s.split(/[\\/]/).filter(Boolean).at(-1)??s:null}function Wt(t){if(!t)return null;const s=t.replace(/[\\/]+$/,"");return s?s.replace(/^\/Users\/[^/]+(?=\/|$)/,"~"):null}function z(t){switch(t){case"queued":return"Queued";case"waking":return"Waking";case"waiting":return"Thinking";case"running":return"Working";default:return t.replace(/_/g," ")}}function Ds(){const{route:t,agents:s,navigate:a,apiConnection:c,reload:m}=lt(),h=St(t),r=t.view==="conversation"||t.view==="messages"?t.conversationId??null:null,[o,U]=i.useState(null),[E,ve]=i.useState([]),[L,fe]=i.useState(null),[Oe,V]=i.useState(!1),H=i.useCallback(async()=>{if(!r){U(null),ve([]),fe(null),V(!0);return}try{const[n,l,x]=await Promise.all([W(`/api/session/${encodeURIComponent(r)}`).catch(()=>null),W(`/api/flights?conversationId=${encodeURIComponent(r)}`).catch(()=>[]),W(`/api/messages?conversationId=${encodeURIComponent(r)}&limit=8`).catch(()=>[])]);U(p=>me(p,n)),ve(p=>me(p,l??[])),fe(p=>me(p,x?.filter(B=>!ht(B)).sort((B,rt)=>It(B.createdAt,rt.createdAt)).at(-1)??null)),V(!0)}catch{V(!0)}},[r]);i.useEffect(()=>{V(!1),H()},[H]);const j=o?.agentId??null,d=i.useMemo(()=>j?s.find(n=>n.id===j)??null:null,[s,j]),O=d?.id??null,xe=xt(o),ee=jt({resolvedAgentId:O,sessionId:xe,machineId:h}),[je,ge]=i.useState(null),[R,te]=i.useState([]),[w,se]=i.useState([]),Ne=i.useRef([]),S=i.useRef(null),q=i.useRef(null),f=i.useRef([]),g=i.useRef(null),N=i.useRef(null),P=i.useRef(new Set),D=i.useCallback(()=>{S.current!==null&&(window.clearTimeout(S.current),S.current=null),q.current=null},[]),$=i.useCallback(()=>{if(!r)return;const n=Date.now(),l=q.current??n;q.current=l;const p=n-l>=$t?0:Pt;S.current!==null&&window.clearTimeout(S.current),S.current=window.setTimeout(()=>{S.current=null,q.current=null,H()},p)},[r,H]);i.useEffect(()=>D,[D]),i.useEffect(()=>{if(ge(null),!O)return;let n=!1;return W(`/api/agents/${encodeURIComponent(O)}/session-catalog`).then(l=>{n||ge(l)}).catch(()=>{}),()=>{n=!0}},[O]);const qe=gt({name:d?.name,agentName:o?.agentName,id:j,title:o?.title}),ye=d?Nt(d)??We(d.id)??d.id:j?We(j)??j:null,u=i.useMemo(()=>E.filter(wt).sort((n,l)=>(l.startedAt??0)-(n.startedAt??0))[0]??null,[E]);i.useEffect(()=>{P.current=new Set(E.map(n=>n.invocationId))},[E]),i.useEffect(()=>{D(),P.current.clear()},[D,r]),ot(n=>{if(r){if(n.kind==="message.posted"){n.payload?.message?.conversationId===r&&$();return}if(n.kind==="conversation.upserted"){n.payload?.conversation?.id===r&&$();return}if(n.kind==="invocation.requested"){const l=n.payload?.invocation;if(l?.conversationId===r){P.current.add(l.id),$();return}!l?.conversationId&&j&&l?.targetAgentId===j&&(P.current.add(l.id),$());return}if(n.kind==="flight.updated"){const l=n.payload?.flight;if(!l)return;(u?.id===l.id||u?.invocationId===l.invocationId||P.current.has(l.invocationId)||E.some(p=>p.id===l.id||p.invocationId===l.invocationId))&&$()}}});const v=je?.activeSessionId??d?.harnessSessionId??xe??o?.harnessSessionId??null,I=d?.harnessSessionId??o?.harnessSessionId??null,k=d?.harnessLogPath??null,y=i.useMemo(()=>Ct({activeSessionId:v,agent:d,sessionMeta:o}),[v,d,o]),ne=JSON.stringify({sessionIds:y.sessionIds,paths:y.paths,projects:y.projects}),M=y.sessionIds.length>0||y.paths.length>0||y.projects.length>0,K=i.useCallback(()=>{g.current!==null&&(window.clearTimeout(g.current),g.current=null),N.current!==null&&(window.clearInterval(N.current),N.current=null),f.current=[]},[]),J=i.useCallback(()=>{K()},[K]),Ie=i.useCallback(()=>{if(N.current!==null||(g.current!==null&&(window.clearTimeout(g.current),g.current=null),f.current.length===0))return;const l=()=>{const x=f.current.slice(0,Fe);f.current=f.current.slice(Fe),x.length>0&&se(p=>G(p,x)),!(f.current.length>0)&&N.current!==null&&(window.clearInterval(N.current),N.current=null)};l(),f.current.length>0&&(N.current=window.setInterval(l,Mt))},[]),we=i.useCallback(n=>{N.current===null&&g.current===null&&(g.current=window.setTimeout(()=>{g.current=null,Ie()},n))},[Ie]);i.useEffect(()=>{Ne.current=w},[w]),i.useEffect(()=>K,[K]),i.useEffect(()=>{J(),te([]),se([])},[J,ne]),i.useEffect(()=>{if(!M)return;let n=!1;const l=new URLSearchParams({limit:"180",transcripts:"true"});return W(`/api/tail/recent?${l.toString()}`).then(x=>{if(n)return;const p=(x.events??[]).filter(B=>he(B,y));te(G([],p))}).catch(()=>{}),()=>{n=!0}},[M,ne]),dt(i.useCallback(n=>{M&&he(n,y)&&te(l=>G(l,[n]))},[M,ne])),i.useEffect(()=>{if(R.length===0){J(),se([]);return}const n=Ne.current,l=new Set([...n.map(p=>p.id),...f.current.map(p=>p.id)]),x=R.filter(p=>!l.has(p.id));x.length!==0&&(f.current=G(f.current,x),f.current.length>0&&we(n.length===0?_t:Bt))},[we,J,R]);const ae=i.useMemo(()=>w.flatMap(Ut).slice(0,5),[w]);if(!r)return e.jsx(Ft,{apiOffline:c.status==="offline",onRetry:()=>{m()}});if(!Oe)return e.jsx("div",{className:"ctx-panel ctx-panel--conversation",children:e.jsx("div",{className:"ctx-panel-empty-state",children:e.jsx("div",{className:"ctx-panel-empty-hint",children:"Loading conversation…"})})});const De=o?.kind?Rt[o.kind]??o.kind:"Conversation",Q=o?.workspaceRoot??null,ie=ze(Q),Y=Wt(Q),Se=o?.currentBranch??null,ce=d?.harness??o?.harness??null,Z=o?.lastMessageAt??L?.createdAt??null,Te=o?.messageCount??null,be=o?o.participantCount??o.participantIds.filter(n=>n!=="operator").length+1:null,C=d?.state??null,Ke=ut(C),Je=L?vt(L):null,ke=L?.body?.trim()||o?.preview?.trim()||null,Ce=ke?ft(ke):null,Ae=Je?null:L?.actorName??null,Ee=ue(v),_=v??I,Le=ue(_),Qe=ue(I),Re=!!(I&&I!==_),Pe=[ce,d?.transport].filter(Boolean).join(" · "),Ye=!!(v||I||k),T=!!(d?.terminalSurface?.backend==="tmux"||d?.transport==="tmux"&&d.harnessSessionId),A=!!(u||mt(C,d)),Ze=A?u?z(u.state):"In motion":"At rest",Xe=u?.summary?.trim()??(Z?`Last update ${F(Z)??"recently"}`:"No recent activity recorded"),re=[Se?`branch ${Se}`:null,ce,d?.transport].filter(Boolean),Ge=!!(ie||Y||re.length>0),et=A?"Live activity":T?"Terminal":"Activity",le=u?.summary?.trim()??(v&&!T?"Terminal session is live.":w.length>0&&!T?"Streaming matching Tail events.":null),X=At(y,R),tt=!!(d&&(u||v||R.length>0||T)),st=!T,nt=v?T?"Terminal session":"Trace session":u?"Session starting":"Session context",at=v?Le??v:u?z(u.state):"Waiting for a session id",$e=v?[ce,d?.transport,u?z(u.state):null].filter(Boolean).join(" · "):u?.summary?.trim()??le??null,it=()=>{ee&&Me(a,ee,{returnTo:t})},ct=()=>{Me(a,{view:"ops",mode:"tail",...X?{tailQuery:X}:{}},{returnTo:t})};return e.jsxs("div",{className:"ctx-panel ctx-panel--conversation",children:[e.jsxs("section",{className:"ctx-panel-section ctx-panel-conversation-summary",children:[e.jsx("div",{className:"ctx-panel-section-label",children:De}),e.jsxs("div",{className:"ctx-panel-conversation-card",children:[e.jsx("div",{className:"ctx-panel-conversation-title",children:qe}),ye&&e.jsxs("div",{className:"ctx-panel-conversation-handle",children:["@",ye]}),e.jsxs("div",{className:"ctx-panel-conversation-state",children:[e.jsx("span",{className:"ctx-panel-conversation-state-dot",style:{background:Be(C)}}),e.jsx("span",{children:_e(C)})]})]})]}),u&&e.jsxs("section",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Now"}),e.jsxs("div",{className:"ctx-panel-conversation-flight",children:[e.jsxs("div",{className:"ctx-panel-conversation-flight-row",children:[e.jsx("span",{className:"ctx-panel-conversation-flight-label",children:z(u.state)}),u.startedAt&&e.jsx("span",{className:"ctx-panel-conversation-flight-time",children:F(u.startedAt)})]}),u.summary&&e.jsx("div",{className:"ctx-panel-conversation-flight-summary",children:u.summary})]})]}),e.jsxs("section",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Workspace"}),Ge?e.jsxs("div",{className:"ctx-panel-workspace-card",children:[e.jsxs("div",{className:"ctx-panel-workspace-head",children:[e.jsx("div",{className:"ctx-panel-workspace-kicker",children:"Project"}),e.jsx("div",{className:"ctx-panel-workspace-title",title:Q??ie??void 0,children:ie??"Unscoped workspace"})]}),Y&&e.jsx("div",{className:"ctx-panel-workspace-path",title:Q??Y,children:Y}),re.length>0&&e.jsx("div",{className:"ctx-panel-workspace-strip",children:re.map(n=>e.jsx("span",{className:"ctx-panel-workspace-chip",children:n},n))})]}):e.jsx("div",{className:"ctx-panel-empty",children:"No workspace metadata yet"})]}),Ye&&e.jsxs("section",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Session"}),e.jsxs("div",{className:"ctx-panel-session-card",children:[e.jsx("div",{className:"ctx-panel-session-head",children:e.jsxs("div",{className:"ctx-panel-session-primary",children:[Pe&&e.jsx("div",{className:"ctx-panel-session-kind",children:Pe}),_&&e.jsx("div",{className:"ctx-panel-session-id",title:_,children:Le??_})]})}),(Re||k)&&e.jsxs("div",{className:"ctx-panel-session-meta",children:[Re&&I&&e.jsxs("div",{className:"ctx-panel-session-meta-item",children:[e.jsx("span",{children:"Harness session"}),e.jsx("strong",{title:I,children:Qe??I})]}),k&&e.jsxs("div",{className:"ctx-panel-session-meta-item",children:[e.jsx("span",{children:"Harness log"}),e.jsx("strong",{title:k,children:ze(k)??k})]})]})]})]}),e.jsxs("section",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Activity"}),e.jsxs("div",{className:`ctx-panel-activity-card${A?" ctx-panel-activity-card--active":""}`,children:[e.jsxs("div",{className:"ctx-panel-activity-head",children:[e.jsx("span",{className:"ctx-panel-activity-dot",style:{background:A?"var(--green)":Be(C)}}),e.jsxs("div",{className:"ctx-panel-activity-main",children:[e.jsx("div",{className:"ctx-panel-activity-title",children:Ze}),e.jsx("div",{className:"ctx-panel-activity-sub",title:Z?oe(Z):void 0,children:Xe})]})]}),u&&e.jsxs("div",{className:"ctx-panel-activity-ledger",children:[e.jsx("span",{className:"ctx-panel-activity-ledger-label",children:z(u.state)}),u.startedAt&&e.jsx("span",{className:"ctx-panel-activity-ledger-time",title:oe(u.startedAt),children:F(u.startedAt)})]}),e.jsxs("div",{className:"ctx-panel-activity-facts",children:[typeof Te=="number"&&e.jsx(pe,{label:"Messages",value:`${Te}`}),typeof be=="number"&&e.jsx(pe,{label:"People",value:`${be}`}),Ke&&e.jsx(pe,{label:"Agent",value:_e(C)})]})]})]}),Ce&&e.jsxs("section",{className:"ctx-panel-section ctx-panel-conversation-preview",children:[e.jsx("div",{className:"ctx-panel-section-label",children:Ae?`Latest · ${Ae}`:"Latest"}),e.jsx("div",{className:"ctx-panel-conversation-preview-body",children:Ce})]}),tt&&d&&e.jsxs("section",{className:"ctx-panel-section ctx-panel-conversation-live-section",children:[e.jsxs("div",{className:"ctx-panel-section-label",children:[e.jsx("span",{children:et}),Ee&&e.jsx("span",{className:"ctx-panel-live-session",title:v??void 0,children:Ee})]}),e.jsxs("div",{className:`ctx-panel-live-card${A?" ctx-panel-live-card--active":""}`,children:[e.jsxs("div",{className:`ctx-panel-live-session-card${A?" ctx-panel-live-session-card--active":""}`,children:[e.jsxs("div",{className:"ctx-panel-live-session-copy",children:[e.jsx("span",{children:nt}),e.jsx("strong",{title:v??void 0,children:at}),$e&&e.jsx("small",{children:$e})]}),e.jsx("div",{className:"ctx-panel-live-session-pulse","aria-hidden":"true",children:e.jsx("span",{})})]}),e.jsx(pt,{agent:d,catalog:je,navigate:a,returnTo:t,variant:"compact",className:"ctx-panel-live-actions"}),le&&e.jsx("div",{className:"ctx-panel-live-summary",children:le}),T&&e.jsx(Tt,{agentId:d.id,lines:24,columns:132,className:"ctx-panel-tmux-peek--conversation"}),ae.length>0&&e.jsxs("div",{className:"ctx-panel-live-files","aria-live":"polite",children:[e.jsxs("div",{className:"ctx-panel-live-files-label",children:[e.jsx("span",{children:"Files"}),e.jsx("strong",{children:ae.length})]}),e.jsx("ol",{className:"ctx-panel-live-file-list",children:ae.map(n=>e.jsxs("li",{className:`ctx-panel-live-file ctx-panel-live-file--${n.tone}`,title:`${n.path} · ${n.verb}`,children:[e.jsx("span",{className:"ctx-panel-live-file-mark",children:n.mark}),e.jsx("span",{className:"ctx-panel-live-file-path",children:qt(n.path)}),e.jsx("span",{className:"ctx-panel-live-file-time",children:F(n.ts)})]},`${n.eventId}:${n.path}`))})]}),st&&e.jsx("div",{className:"ctx-panel-live-stream","aria-live":"polite",children:w.length>0?e.jsx("ol",{className:"ctx-panel-live-events",children:w.map(n=>e.jsxs("li",{className:"ctx-panel-live-event",children:[e.jsx("span",{className:"ctx-panel-live-event-kind",children:Et(n.kind)}),e.jsx("span",{className:"ctx-panel-live-event-summary",children:Lt(n.summary)}),e.jsx("span",{className:"ctx-panel-live-event-time",title:oe(n.ts),children:F(n.ts)})]},n.id))}):e.jsx("div",{className:"ctx-panel-live-stream-empty",children:"Waiting for matching Tail events"})}),M&&e.jsxs("button",{type:"button",className:"ctx-panel-live-tail-button",onClick:ct,title:X?`Tail filter: ${X}`:"Open Tail",children:[e.jsx(bt,{size:13,strokeWidth:1.9,"aria-hidden":"true"}),e.jsx("span",{children:"Tail"})]})]})]}),ee&&e.jsx("section",{className:"ctx-panel-section ctx-panel-conversation-profile-section",children:e.jsxs("button",{type:"button",className:"ctx-panel-roster-button ctx-panel-conversation-profile-button",onClick:it,children:[e.jsx("span",{className:"ctx-panel-roster-label",children:d?"Open agent profile":"Open session trace"}),e.jsx("span",{className:"ctx-panel-roster-count",children:e.jsx("span",{children:"→"})})]})})]})}function Ft({apiOffline:t,onRetry:s}){return e.jsx("div",{className:"ctx-panel ctx-panel--conversation",children:e.jsx("div",{className:"ctx-panel-empty-state",children:e.jsxs("div",{className:"ctx-panel-empty-card","data-tone":t?"error":"neutral",children:[e.jsx("div",{className:"ctx-panel-empty-card-title",children:t?"Context unavailable":"No conversation selected"}),e.jsx("div",{className:"ctx-panel-empty-card-detail",children:t?"Scout context will load after the server reconnects.":"Select a chat to inspect participants, sessions, and recent activity."}),t&&e.jsx("button",{type:"button",className:"ctx-panel-empty-card-action",onClick:s,children:"Retry"})]})})})}function pe({label:t,value:s}){return e.jsxs("div",{className:"ctx-panel-fact",children:[e.jsx("span",{className:"ctx-panel-fact-value",children:s}),e.jsx("span",{className:"ctx-panel-fact-label",children:t})]})}const zt=/(?:["'`])?((?:~|\/|\.{1,2}\/|[A-Za-z0-9_.-]+\/)[^\s"'`),;]+?\.(?:ts|tsx|js|jsx|mjs|cjs|css|scss|swift|md|json|jsonc|yml|yaml|toml|sql|py|rs|go|sh|html|m|mm))(?:["'`])?/gi;function Ut(t){const s=new Set,a=[],c=Vt(t.summary);for(const m of t.summary.matchAll(zt)){const h=m[1]?.trim();if(!h)continue;const r=h.toLowerCase();s.has(r)||(s.add(r),a.push({eventId:t.id,path:h,verb:c,mark:Ot(c),tone:Ht(c),ts:t.ts}))}return a}function Vt(t){return/\b(created|create|wrote|write|edited|edit|modified|modify|updated|update|changed|change|patched|patch)\b/i.test(t)?"changed":/\b(read|opened|viewed|cat|sed)\b/i.test(t)?"read":"touched"}function Ht(t){return t==="changed"?"changed":t==="read"?"read":"touched"}function Ot(t){return t==="changed"?"+":t==="read"?"r":"·"}function qt(t){const s=t.replace(/[\\/]+$/g,""),a=s.split(/[\\/]/).filter(Boolean);return a.length<=2?s:`${a.at(-2)}/${a.at(-1)}`}export{Ds as ConversationInspector};
@@ -0,0 +1 @@
1
+ import{j as e,r as i}from"./index-DReVb7jZ.js";import{u as w}from"./Provider-CNZluAZb.js";import{a as C}from"./api-DSqpVKC7.js";import{u as B}from"./sse-A8AyLH0g.js";import{t as g}from"./time-Dhsh_2EG.js";import{B as E,b as M}from"./BrokerScreen-CT37VQiL.js";import{b as S}from"./broker-display-BkBzyvbR.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./index-BWHgHrtv.js";import"./EmptyState-CYUwYyAW.js";import"./clipboard-e3fSpeo7.js";import"./status-tone-BM_zuRy1.js";import"./openContent-C6XO6kr5.js";import"./BrokerMetadataPanel-crirZCdo.js";import"./DispatchAftermath-CcYGUB10.js";import"./follow-route-BvcGtBIL.js";import"./arrow-up-right-B0aLKiyF.js";import"./ShikiPane-XwFI-pCp.js";import"./types-B0PlfpKc.js";import"./useEmbedHeadline-atkQVfGw.js";/* empty css */import"./refresh-cw-IcD2lPoT.js";import"./external-link-BVccgH0n.js";import"./message-square-CJW4WRlo.js";import"./plus-D5NLH_fM.js";import"./send-horizontal-BlQsRK6C.js";import"./check-g7D7-c1J.js";import"./copy-BGOC1tJB.js";import"./at-sign-DM7xeppo.js";import"./radio-Cas2qg1D.js";function $(r){return`${Math.round(r*100)}%`}function R(r){switch(r){case"success":return"sent";case"failed_query":return"query";case"failed_delivery":return"delivery";default:return"attempt"}}function q(r){switch(r){case"dm":return"direct";case"channel":return"channel";case"broadcast":return"broadcast";case null:return"no route";default:return r}}function A(r){const t=new Map;for(const o of r){const n=q(o.route);t.set(n,(t.get(n)??0)+1)}return[...t.entries()].map(([o,n])=>({label:o,count:n})).sort((o,n)=>n.count-o.count||o.label.localeCompare(n.label)).slice(0,5)}function D(r){const t={sent:0,query:0,delivery:0,failures:0};for(const o of r)o.kind==="success"?t.sent+=1:o.kind==="failed_query"?t.query+=1:(o.kind==="failed_delivery"||o.kind==="delivery_attempt")&&(t.delivery+=1),S(o)&&(t.failures+=1);return t}function L(){const{inspectBrokerAttempt:r}=w(),[t,o]=i.useState(null),[n,f]=i.useState(null),l=i.useCallback(async()=>{try{const s=await C(M());o(s),f(null)}catch(s){f(s instanceof Error?s.message:String(s))}},[]);i.useEffect(()=>{l()},[l]),B(s=>{(s.kind==="message.posted"||s.kind==="delivery.planned"||s.kind==="delivery.attempted"||s.kind==="delivery.state.changed"||s.kind==="scout.dispatched")&&l()});const h=i.useMemo(()=>t?[...t.failedQueries,...t.failedDeliveries].sort((s,m)=>m.ts-s.ts).slice(0,4):[],[t]),v=i.useMemo(()=>t?t.attempts.slice().sort((s,m)=>m.ts-s.ts).slice(0,5):[],[t]),j=i.useMemo(()=>t?A(t.attempts):[],[t]),a=i.useMemo(()=>t?D(t.attempts):null,[t]),b=i.useCallback(s=>{r(s),window.dispatchEvent(new CustomEvent("scout:set-inspector-width",{detail:{width:420}}))},[r]);if(!t&&!n)return e.jsx("div",{className:"flex h-full flex-col overflow-y-auto frame-scrollbar p-4 gap-4 text-sm",children:e.jsx(u,{title:"Dispatch context",status:"Loading broker ledger..."})});if(!t)return e.jsxs("div",{className:"flex h-full flex-col overflow-y-auto frame-scrollbar p-4 gap-4 text-sm",children:[e.jsx(u,{title:"Dispatch context",status:"Broker diagnostics unavailable"}),e.jsx("div",{className:"rounded border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] p-2.5 text-sm leading-relaxed text-[var(--scout-chrome-ink-soft)]",children:n})]});const c=t.attempts.length,y=t.ledger.hasMore.attempts?"+":"",N=c>0&&a?a.failures/c:0;return e.jsxs("div",{className:"flex h-full flex-col overflow-y-auto frame-scrollbar p-4 gap-4 text-sm",children:[e.jsxs(u,{title:"Dispatch context",status:`${c}${y} latest route${c===1?"":"s"}`,children:[e.jsxs("div",{className:"mt-2 grid grid-cols-3 gap-1",children:[e.jsx(d,{label:"Sent",value:`${a?.sent??0}`}),e.jsx(d,{label:"Query",value:`${a?.query??0}`}),e.jsx(d,{label:"Delivery",value:`${a?.delivery??0}`})]}),e.jsxs("div",{className:"mt-2 flex items-center justify-between gap-2 border-t border-[var(--scout-chrome-border-soft)] pt-2 font-mono text-2xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-ghost)]",children:[e.jsxs("span",{children:[$(N)," failed"]}),e.jsx("span",{children:g(t.generatedAt)})]})]}),e.jsx(p,{label:"Route mix",children:e.jsx(_,{items:j,empty:"No route records visible"})}),e.jsx(p,{label:"Needs attention",children:h.length===0?e.jsx(x,{children:"No failed routes in history."}):e.jsx("div",{className:"flex flex-col gap-1.5",children:h.map(s=>e.jsx(k,{attempt:s,onOpen:b},s.id))})}),e.jsx(p,{label:"Recent dispatch",children:v.length===0?e.jsx(x,{children:"No recent dispatch rows."}):e.jsx("div",{className:"flex flex-col gap-1",children:v.map(s=>e.jsx(k,{attempt:s,onOpen:b,compact:!0},s.id))})})]})}function u({title:r,status:t,children:o}){return e.jsxs("div",{className:"rounded border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] p-2.5",children:[e.jsx("div",{className:"text-2xs font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)]",children:r}),e.jsx("div",{className:"mt-1 font-mono text-xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-soft)]",children:t}),o]})}function d({label:r,value:t}){return e.jsxs("div",{className:"min-w-0 rounded-sm border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-bg)] px-1.5 py-1",children:[e.jsx("div",{className:"font-mono text-2xs uppercase tracking-[0.1em] text-[var(--scout-chrome-ink-faint)]",children:r}),e.jsx("div",{className:"mt-0.5 truncate font-mono text-lg text-[var(--scout-chrome-ink-strong)]",children:t})]})}function p({label:r,children:t}){return e.jsxs("div",{className:"flex flex-col",children:[e.jsx("div",{className:"mb-1.5 text-2xs font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)]",children:r}),t]})}function _({items:r,empty:t}){return r.length===0?e.jsx(x,{children:t}):e.jsx("div",{className:"flex flex-wrap gap-1",children:r.map(o=>e.jsxs("span",{className:"rounded-sm border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] px-1.5 py-0.5 font-mono text-xs text-[var(--scout-chrome-ink-soft)]",title:`${o.count} ${o.label}`,children:[o.label," ",o.count]},o.label))})}function x({children:r}){return e.jsx("div",{className:"text-xs font-mono uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-ghost)]",children:r})}function k({attempt:r,onOpen:t,compact:o=!1}){return e.jsxs("button",{type:"button",className:"rounded border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] px-2 py-1.5 text-left transition-colors hover:border-[var(--scout-chrome-border)]",onClick:()=>t(r),children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"shrink-0 rounded-sm bg-[var(--scout-chrome-bg)] px-1 py-0.5 font-mono text-3xs uppercase tracking-[0.08em] text-[var(--scout-chrome-ink-faint)]",children:R(r.kind)}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-sm text-[var(--scout-chrome-ink)]",children:r.detail}),e.jsx("span",{className:"shrink-0 font-mono text-2xs text-[var(--scout-chrome-ink-faint)]",children:g(r.ts)})]}),!o&&e.jsxs("div",{className:"mt-0.5 flex items-center gap-2 font-mono text-2xs text-[var(--scout-chrome-ink-ghost)]",children:[e.jsx("span",{className:"truncate",children:r.actorName??"unknown"}),e.jsx("span",{className:"shrink-0",children:"->"}),e.jsx("span",{className:"truncate",children:r.target??"none"})]})]})}function Ve({selectedAttempt:r,navigate:t,onClose:o}){return r?e.jsx(E,{attempt:r,navigate:t,onClose:o}):e.jsx(L,{})}export{Ve as BrokerRight};
@@ -0,0 +1 @@
1
+ import{r as d,j as e}from"./index-DReVb7jZ.js";import{u as k}from"./Provider-CNZluAZb.js";import{c as y}from"./agent-state-DDhnFEEP.js";import{A as S}from"./AgentAvatar-NZOqcsB2.js";import{t as N}from"./time-Dhsh_2EG.js";import{f as w}from"./runtime-picker-C_AVYF63.js";import{c as I}from"./clipboard-e3fSpeo7.js";import{f as T,r as C,t as R}from"./terminal-sessions-3RfJpen8.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./api-DSqpVKC7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./conversation-model-m8HhzroS.js";import"./createLucideIcon-ChvMq-zl.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./loader-circle-DNUsuPWz.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";import"./voice-levels-Dcr3jglk.js";function Te(){const{route:t,agents:o,navigate:s}=k();if(t.view!=="terminal")return null;const r=t.agentId?o.find(i=>i.id===t.agentId)??null:null,l=t.mode??"takeover",[f,p]=d.useState(null);d.useEffect(()=>{if(t.view!=="terminal"||t.agentId||!t.terminalSurfaceKey){p(null);return}let i=!1;return T().then(g=>{i||p(C(g,t.terminalSessionId,t.terminalSurfaceKey))}).catch(()=>{i||p(null)}),()=>{i=!0}},[t.agentId,t.terminalSessionId,t.terminalSurfaceKey,t.view]);const j=f?R(f.surface):null,n=(r?$(r):null)??j,c=d.useMemo(()=>n?A(n):null,[n]);return r?e.jsxs("div",{className:"flex h-full flex-col gap-4 overflow-y-auto p-4 text-sm frame-scrollbar",children:[e.jsx(D,{agent:r}),e.jsxs(u,{label:"Terminal",children:[e.jsx(a,{label:"Mode",value:v(l)}),e.jsx(a,{label:"Backend",value:n?.backend??"pty"}),n&&e.jsx(a,{label:"Session",value:n.sessionName}),n?.paneId&&e.jsx(a,{label:"Pane",value:n.paneId}),e.jsx(a,{label:"State",value:y(r.state)})]}),c&&e.jsx(h,{label:"Open in your own terminal",command:c}),e.jsxs("div",{className:"grid grid-cols-2 gap-1.5",children:[n&&e.jsx(m,{active:l==="observe",label:"Observe",onClick:()=>s(b(r.id,"observe"))}),e.jsx(m,{active:l==="takeover",label:"Takeover",onClick:()=>s(b(r.id,"takeover"))}),e.jsx(m,{label:"Profile",onClick:()=>s({view:"agents-v2",agentId:r.id,tab:"profile"})}),e.jsx(m,{label:"Trace",onClick:()=>s({view:"agents-v2",agentId:r.id,tab:"observe"})})]}),e.jsxs(u,{label:"Agent",children:[e.jsx(a,{label:"Harness",value:r.harness??"-"}),e.jsx(a,{label:"Transport",value:r.transport??"-"}),r.role&&e.jsx(a,{label:"Role",value:w(r.role)??r.role}),r.handle&&e.jsx(a,{label:"Handle",value:`@${r.handle}`}),r.updatedAt&&e.jsx(a,{label:"Updated",value:N(r.updatedAt)})]}),(r.project||r.branch||r.cwd||r.projectRoot)&&e.jsxs(u,{label:"Workspace",children:[r.project&&e.jsx(a,{label:"Name",value:r.project}),r.branch&&e.jsx(a,{label:"Branch",value:r.branch}),r.cwd&&e.jsx(a,{label:"Cwd",value:r.cwd}),!r.cwd&&r.projectRoot&&e.jsx(a,{label:"Root",value:r.projectRoot})]})]}):e.jsxs("div",{className:"flex h-full flex-col gap-4 overflow-y-auto p-4 text-sm frame-scrollbar",children:[e.jsxs(u,{label:"Terminal",children:[e.jsx(a,{label:"Mode",value:v(l)}),t.agentId&&e.jsx(a,{label:"Agent",value:t.agentId}),n&&e.jsx(a,{label:"Backend",value:n.backend}),n&&e.jsx(a,{label:"Session",value:n.sessionName})]}),c&&e.jsx(h,{label:"Open in your own terminal",command:c})]})}function x(t){return/^[A-Za-z0-9_./:@%+=,-]+$/u.test(t)?t:`'${t.replace(/'/gu,"'\\''")}'`}function A(t){return t.backend==="tmux"?`tmux attach -t ${x(t.sessionName)}`:`${t.socketDir?`ZELLIJ_SOCKET_DIR=${x(t.socketDir)} `:""}zellij attach ${x(t.sessionName)}`}function b(t,o){return{view:"terminal",agentId:t,mode:o}}function $(t){return t.terminalSurface?t.terminalSurface:t.transport==="tmux"&&t.harnessSessionId?{backend:"tmux",sessionName:t.harnessSessionId,paneId:null,socketDir:null}:null}function v(t){return t==="observe"?"Read-only observe":"Interactive takeover"}function D({agent:t}){return e.jsx("div",{className:"border-b border-[var(--scout-chrome-border-soft)] pb-3",children:e.jsxs("div",{className:"flex items-center gap-2.5",children:[e.jsx(S,{agent:t,placement:"row",size:32,presence:!1}),e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:"truncate text-lg leading-snug text-[var(--scout-chrome-ink-strong)]",children:t.name}),t.handle&&e.jsxs("div",{className:"truncate font-mono text-xs text-cyan-400/70",children:["@",t.handle]})]})]})})}function m({active:t,label:o,onClick:s}){return e.jsx("button",{type:"button",onClick:s,className:`h-7 rounded border px-2 font-mono text-2xs uppercase tracking-[0.1em] transition-colors ${t?"border-cyan-400/35 bg-cyan-400/[0.12] text-cyan-200":"border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] text-[var(--scout-chrome-ink-soft)] hover:bg-[var(--scout-chrome-active)] hover:text-[var(--scout-chrome-ink)]"}`,children:o})}function h({label:t,command:o}){const[s,r]=d.useState(!1);return e.jsxs("details",{className:"rounded border border-[var(--scout-chrome-border-soft)] bg-[var(--scout-chrome-hover)] p-2",children:[e.jsx("summary",{className:"cursor-pointer select-none font-mono text-2xs uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)]",children:t}),e.jsx("div",{className:"mb-1.5 mt-2 flex items-center justify-end gap-2",children:e.jsx("button",{type:"button",className:"rounded border border-cyan-400/20 bg-cyan-400/[0.08] px-2 py-1 font-mono text-2xs uppercase tracking-[0.1em] text-cyan-100/80 hover:bg-cyan-400/[0.14]",onClick:()=>{I(o).then(l=>{l&&(r(!0),window.setTimeout(()=>r(!1),1200))})},children:s?"Copied":"Copy"})}),e.jsx("code",{className:"block select-text break-all rounded bg-black/25 p-2 font-mono text-xs leading-relaxed text-[var(--scout-chrome-ink)]",children:o})]})}function u({label:t,children:o}){return e.jsxs("div",{className:"flex flex-col",children:[e.jsx("div",{className:"mb-1.5 text-2xs font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)]",children:t}),o]})}function a({label:t,value:o}){return e.jsxs("div",{className:"flex items-baseline justify-between gap-2 py-0.5",children:[e.jsx("span",{className:"shrink-0 text-xs font-mono uppercase tracking-wider text-[var(--scout-chrome-ink-faint)]",children:t}),e.jsx("span",{className:"truncate text-right text-sm font-mono text-[var(--scout-chrome-ink)]",children:o})]})}export{Te as TerminalInspector};
@@ -0,0 +1 @@
1
+ import{r as u,j as e}from"./index-DReVb7jZ.js";import{u as j}from"./Provider-CNZluAZb.js";import{o as b}from"./openContent-C6XO6kr5.js";import{a as N}from"./api-DSqpVKC7.js";import{u as w}from"./sse-A8AyLH0g.js";import{t as g,b as p}from"./time-Dhsh_2EG.js";import{C as y}from"./chevron-down-CDzRQQGl.js";import{C as I}from"./chevron-right-DKGTLiqc.js";import{M as C}from"./message-square-CJW4WRlo.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./index-BWHgHrtv.js";const M=5;function Ie(){const{route:t,navigate:s}=j(),a=t.view==="work"?t.workId:null,[r,o]=u.useState(null),i=u.useCallback(async()=>{if(!a){o(null);return}try{o(await N(`/api/work/${encodeURIComponent(a)}`))}catch{o(null)}},[a]);if(u.useEffect(()=>{i()},[i]),w(()=>{a&&i()}),t.view!=="work")return null;if(!r)return e.jsx("div",{className:"flex h-full items-center justify-center px-4 text-center text-sm font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-ghost)]",children:"Loading work item…"});const d=O(r.state),m=T(r.attention),f=r.ownerName??r.ownerId??"Unassigned",l=r.nextMoveOwnerName??r.nextMoveOwnerId??null,h=l!==null&&(r.ownerId??null)!==(r.nextMoveOwnerId??null)&&l!==f,k=1+(h?1:0)+(r.priority?1:0)+2+(r.parentId?1:0)+(r.conversationId?1:0);return e.jsxs("div",{className:"flex flex-col h-full overflow-y-auto frame-scrollbar text-sm",children:[e.jsx("div",{className:"sticky top-0 z-10 border-b border-[var(--scout-chrome-border-soft)] bg-black/55 px-4 py-2 backdrop-blur",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:`h-1.5 w-1.5 rounded-full ${d.dot}`}),e.jsx("span",{className:`font-mono text-xs uppercase tracking-[0.15em] ${d.text}`,children:L(r.state)}),e.jsxs("span",{className:"min-w-0 flex-1 truncate text-xs text-[var(--scout-chrome-ink-faint)]",children:[e.jsx("span",{className:"text-[var(--scout-chrome-ink)]",children:f}),h&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"px-1 text-[var(--scout-chrome-ink-ghost)]",children:"→"}),e.jsx("span",{className:"text-[var(--scout-chrome-ink)]",children:l})]})]}),m&&e.jsx("span",{className:"shrink-0 rounded border border-amber-400/30 bg-amber-400/10 px-1.5 py-0.5 font-mono text-2xs uppercase tracking-[0.12em] text-amber-300/90",children:m})]})}),e.jsxs("div",{className:"flex flex-col gap-4 p-4",children:[e.jsxs(c,{label:"Case facts",children:[e.jsx(n,{label:"Phase",value:r.currentPhase}),e.jsx(n,{label:"Acceptance",value:r.acceptanceState.replace(/_/g," ")}),r.priority&&e.jsx(n,{label:"Priority",value:r.priority})]}),e.jsx(c,{label:"Timeline",children:r.timeline.length===0?e.jsx("div",{className:"text-xs text-[var(--scout-chrome-ink-faint)]",children:"No activity yet."}):e.jsx("div",{className:"flex flex-col gap-1.5",children:r.timeline.slice(0,M).map(x=>e.jsx(W,{item:x,onOpen:x.conversationId?()=>b(s,{view:"conversation",conversationId:x.conversationId},{returnTo:t}):void 0},x.id))})}),e.jsxs(c,{label:"Routing",collapsible:!0,defaultOpen:!1,count:k,children:[e.jsx(n,{label:"Owner",value:f}),h&&l&&e.jsx(n,{label:"Next move",value:l}),r.priority&&e.jsx(n,{label:"Priority",value:r.priority}),e.jsx(n,{label:"Children",value:`${r.activeChildWorkCount}`}),e.jsx(n,{label:"Flights",value:`${r.activeFlightCount}`}),r.lastMeaningfulAt&&e.jsx(n,{label:"Last update",value:g(r.lastMeaningfulAt)}),(r.conversationId||r.parentId)&&e.jsxs("div",{className:"mt-2 flex flex-col gap-1.5",children:[r.conversationId&&e.jsx(v,{label:"Open thread",onClick:()=>b(s,{view:"conversation",conversationId:r.conversationId},{returnTo:t})}),r.parentId&&r.parentTitle&&e.jsx(v,{label:r.parentTitle,eyebrow:"Parent",onClick:()=>b(s,{view:"work",workId:r.parentId},{returnTo:t})})]})]}),e.jsxs(c,{label:"Record",collapsible:!0,defaultOpen:!1,children:[e.jsx(n,{label:"Case ID",value:r.id}),e.jsx(n,{label:"Created",value:p(r.createdAt)}),e.jsx(n,{label:"Updated",value:p(r.updatedAt)}),e.jsx(n,{label:"Last activity",value:p(r.lastMeaningfulAt)})]}),r.lastMeaningfulSummary&&e.jsxs(c,{label:"Hudson context",collapsible:!0,defaultOpen:!1,children:[e.jsx("div",{className:"text-sm italic leading-relaxed text-[var(--scout-chrome-ink-soft)]",children:r.lastMeaningfulSummary}),e.jsxs("div",{className:"mt-2 flex gap-1.5",children:[e.jsx("span",{className:"rounded border border-[var(--scout-chrome-border-soft)] px-1.5 py-0.5 font-mono text-2xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-faint)]",children:"Plan"}),e.jsx("span",{className:"rounded border border-[var(--scout-chrome-border-soft)] px-1.5 py-0.5 font-mono text-2xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-faint)]",children:"Docs"}),e.jsx("span",{className:"rounded border border-[var(--scout-chrome-border-soft)] px-1.5 py-0.5 font-mono text-2xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-faint)]",children:"Code"})]})]})]})]})}function L(t){switch(t){case"review":return"In review";case"waiting":return"Waiting";case"working":return"Working";case"done":return"Done";default:return t.replace(/_/g," ")}}function T(t){switch(t){case"badge":return"Noteworthy";case"interrupt":return"Blocked";default:return null}}function O(t){return/complete|done|finished/i.test(t)?{dot:"bg-emerald-400",text:"text-emerald-300/90"}:/fail|error/i.test(t)?{dot:"bg-red-400",text:"text-red-300/90"}:/block|wait|pause/i.test(t)?{dot:"bg-amber-400",text:"text-amber-300/90"}:/active|working|in[_-]?progress/i.test(t)?{dot:"bg-cyan-400",text:"text-cyan-300/90"}:{dot:"bg-[var(--scout-chrome-ink-faint)]",text:"text-[var(--scout-chrome-ink)]"}}function c({label:t,children:s,collapsible:a=!1,defaultOpen:r=!0,count:o}){const[i,d]=u.useState(r);return a?e.jsxs("div",{className:"flex flex-col",children:[e.jsxs("button",{type:"button",onClick:()=>d(m=>!m),className:"flex items-center gap-1.5 text-left text-2xs font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)] hover:text-[var(--scout-chrome-ink)]",children:[i?e.jsx(y,{"aria-hidden":"true",size:10,strokeWidth:2}):e.jsx(I,{"aria-hidden":"true",size:10,strokeWidth:2}),e.jsx("span",{children:t}),typeof o=="number"&&o>0&&e.jsx("span",{className:"rounded border border-[var(--scout-chrome-border-soft)] px-1 py-0 font-mono text-3xs tracking-[0.1em] text-[var(--scout-chrome-ink-faint)]",children:o})]}),i&&e.jsx("div",{className:"mt-1.5",children:s})]}):e.jsxs("div",{className:"flex flex-col",children:[e.jsx("div",{className:"mb-1.5 text-2xs font-mono uppercase tracking-[0.15em] text-[var(--scout-chrome-ink-faint)]",children:t}),s]})}function v({label:t,eyebrow:s,onClick:a}){return e.jsxs("button",{type:"button",onClick:a,className:"flex items-center justify-between gap-2 rounded border border-[var(--scout-chrome-border-soft)] bg-white/[0.025] px-2 py-1.5 text-left hover:border-cyan-400/25 hover:bg-cyan-400/10",children:[e.jsxs("span",{className:"min-w-0",children:[s&&e.jsx("span",{className:"block font-mono text-2xs uppercase tracking-[0.14em] text-[var(--scout-chrome-ink-faint)]",children:s}),e.jsx("span",{className:"block truncate font-mono text-xs text-[var(--scout-chrome-ink)]",children:t})]}),e.jsx(C,{"aria-hidden":"true",size:11,strokeWidth:1.8,className:"shrink-0 text-cyan-300/75"})]})}function W({item:t,onOpen:s}){const a=e.jsxs(e.Fragment,{children:[e.jsx("span",{className:`mt-1 h-1.5 w-1.5 shrink-0 rounded-full ${A(t)}`}),e.jsxs("span",{className:"min-w-0 flex-1",children:[e.jsxs("span",{className:"flex items-center justify-between gap-2",children:[e.jsx("span",{className:"font-mono text-2xs text-[var(--scout-chrome-ink-faint)]",children:g(t.at)}),e.jsx("span",{className:"shrink-0 rounded border border-[var(--scout-chrome-border-soft)] px-1 py-0.5 font-mono text-3xs uppercase tracking-[0.12em] text-[var(--scout-chrome-ink-faint)]",children:_(t)})]}),e.jsx("span",{className:"mt-0.5 block truncate text-xs font-semibold text-[var(--scout-chrome-ink-strong)]",children:t.actorName??"system"}),t.title&&e.jsx("span",{className:"mt-0.5 block truncate text-xs leading-snug text-[var(--scout-chrome-ink)]",children:t.title}),t.summary&&e.jsx("span",{className:"mt-0.5 block text-xs leading-relaxed text-[var(--scout-chrome-ink-faint)]",style:{display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:2,overflow:"hidden"},children:t.summary})]})]}),r="flex gap-2 border-t border-[var(--scout-chrome-border-soft)] pt-1.5 first:border-t-0 first:pt-0",o=p(t.at);return s?e.jsx("button",{type:"button",onClick:s,title:o,className:`${r} text-left hover:text-cyan-300/90`,children:a}):e.jsx("div",{className:r,title:o,children:a})}function _(t){switch(t.kind){case"flight_started":return"flight started";case"flight_completed":return t.detailKind?`flight ${t.detailKind}`:"flight ended";case"message":return"message";default:return t.title??t.detailKind??"event"}}function A(t){return t.kind==="message"?"bg-cyan-400":t.kind==="flight_started"?"bg-lime-400":t.kind==="flight_completed"?t.detailKind?.includes("fail")?"bg-red-400":"bg-emerald-400":t.detailKind?.includes("interrupt")||t.detailKind?.includes("block")?"bg-amber-400":"bg-[var(--scout-chrome-ink-faint)]"}function n({label:t,value:s}){return e.jsxs("div",{className:"flex items-baseline justify-between py-0.5 gap-2",children:[e.jsx("span",{className:"shrink-0 text-xs font-mono uppercase tracking-wider text-[var(--scout-chrome-ink-faint)]",children:t}),e.jsx("span",{className:"truncate text-sm font-mono text-[var(--scout-chrome-ink)]",children:s})]})}export{Ie as WorkInspector};
@@ -1,2 +1,2 @@
1
- import{r as d,j as s}from"./index-C1VaWNuD.js";/* empty css */import{a as P}from"./api-Co9aQ2Jw.js";import{u as U,a as $,b as M,c as H,r as X,w as V,f as o,d as Y,e as _,t as z,g as Q,h as Z,i as ss,s as es}from"./ui-LM8pS8qE.js";import{B as as,u as ns}from"./selection-bridge-qBGFCJv8.js";import"./perf-PX8Rx0EP.js";function ts(n){return n.error!=null?{label:"SCAN ERR",cls:"err"}:n.status.conflicts>0?{label:"CONFLICT",cls:"conflict"}:n.status.clean?{label:"CLEAN",cls:"clean"}:{label:"DIRTY",cls:"dirty"}}function cs(n){const t=(n.state??"").toLowerCase();return t==="active"?"ACTIVE":t==="idle"?"IDLE":t==="waiting"?"WAITING":"—"}function ls(n){const t=n.lastIndexOf("/");return t<0?{dir:"",file:n}:{dir:n.slice(0,t+1),file:n.slice(t+1)}}function is(n){return n.status.clean?"clean":`staged ${n.status.staged}, unstaged ${n.status.unstaged}, untracked ${n.status.untracked}, conflicts ${n.status.conflicts}, changed files ${n.status.changedFiles}`}function rs(n,t,u){const l=["Operator request:",n,"","Repo Watch context:",`- Project: ${u.name}`,`- Project root: ${u.root}`,`- Project attention: ${u.attention}`,`- Worktree: ${t.path}`,`- Branch: ${t.branch.name??t.branch.head??"detached"}`];t.branch.upstream&&l.push(`- Upstream: ${t.branch.upstream}`),l.push(`- Drift: ahead ${t.branch.ahead}, behind ${t.branch.behind}`,`- Status: ${is(t)}`);const p=M(t),i=H(t);if(p.has&&l.push(`- Branch churn: +${p.add} -${p.del}`),i.has&&l.push(`- Working-tree churn: +${i.add} -${i.del}`),t.attentionReasons.length>0&&l.push(`- Attention reasons: ${t.attentionReasons.join("; ")}`),t.status.files.length>0){const T=t.status.files.slice(0,8).map(h=>`${h.status}: ${h.path}`).join(", ");l.push(`- Changed files: ${T}`)}return l.join(`
2
- `)}function ds({worktree:n,project:t,generatedAt:u}){const[l,p]=d.useState(""),[i,T]=d.useState("scout"),[h,k]=d.useState(!1),[R,g]=d.useState(null),[O,A]=d.useState(null),[B,K]=d.useState(!1),x=d.useMemo(()=>n?U(n):[],[n]),E=d.useMemo(()=>x.slice(0,8),[x]),I=d.useMemo(()=>{if(i==="scout")return"Scout";const e=i.replace(/^agent:/,""),c=E.find(m=>m.id===e);return c?$(c):"Agent"},[E,i]);async function w(){const e=l.trim();if(!(!e||h||!n||!t)){k(!0),g(null),A(null);try{const c=rs(e,n,t);if(i==="scout")await P("/api/send",{method:"POST",body:JSON.stringify({body:c})}),g("Sent to Scout");else{const m=i.replace(/^agent:/,"");await P("/api/ask",{method:"POST",body:JSON.stringify({body:c,targetAgentId:m,targetLabel:m,metadata:{source:"repo-watch",originSurface:"repo-watch",handoffKind:"repo-watch-agent-ask",targetAgentId:m}})}),g(`Sent to ${I}`)}p("")}catch(c){A(c instanceof Error?c.message:String(c))}finally{k(!1)}}}if(!n||!t)return s.jsx("aside",{className:"rw-ctx","aria-label":"Worktree detail",children:s.jsxs("div",{className:"rw-ctx-empty",children:[s.jsx("span",{className:"eb",children:"CONTEXT · WORKTREE"}),s.jsx("span",{className:"msg",children:"Select a worktree to inspect"})]})});const a=n,r=a.branch,N=5,f=x.length+a.sessions.length,b=!B&&f>N,y=b?x.slice(0,N):x,D=b?a.sessions.slice(0,Math.max(0,N-y.length)):a.sessions,q=f-y.length-D.length,L=ts(a),j=M(a),v=H(a),{add:S,del:C,has:G}=X(a),W=S+C||1,F=[{label:"staged",n:a.status.staged},{label:"unstaged",n:a.status.unstaged},{label:"untracked",n:a.status.untracked},{label:"conflicts",n:a.status.conflicts,cls:"conf"}].filter(e=>e.n>0);return s.jsxs("aside",{className:"rw-ctx","aria-label":"Worktree detail",children:[s.jsxs("div",{className:"ctx-h",children:[s.jsx("div",{className:"ctx-eyebrow",children:s.jsx("span",{children:"CONTEXT · WORKTREE"})}),s.jsxs("div",{className:"ctx-repo",children:[s.jsx("span",{className:"dot "+V(a)}),s.jsx("span",{className:"rn",children:t.name}),s.jsx("span",{className:"ctx-state "+L.cls,children:L.label})]}),s.jsx("div",{className:"ctx-branch",children:s.jsx(as,{branch:r,fallback:a.name})}),s.jsxs("div",{className:"ctx-path",children:[a.path,r.upstream?s.jsxs("span",{className:"ref",children:[" · ",r.upstream]}):null]})]}),s.jsxs("div",{className:"ctx-stats",children:[s.jsxs("div",{children:[s.jsxs("div",{className:"v"+(r.ahead>0?" mint":" dim"),children:["↑",r.ahead]}),s.jsx("div",{className:"k",children:"AHEAD"})]}),s.jsxs("div",{children:[s.jsxs("div",{className:"v"+(r.behind>0?" amber":" dim"),children:["↓",r.behind]}),s.jsx("div",{className:"k",children:"BEHIND"})]}),s.jsxs("div",{children:[s.jsx("div",{className:"v"+(a.status.changedFiles>0?"":" dim"),children:a.status.changedFiles}),s.jsx("div",{className:"k",children:"FILES"})]})]}),F.length>0?s.jsx("div",{className:"ctx-breakdown",children:F.map(e=>s.jsxs("span",{className:"ctx-chip"+(e.cls?" "+e.cls:""),children:[s.jsx("span",{className:"n",children:e.n}),e.label]},e.label))}):null,s.jsxs("div",{className:"ctx-body",children:[a.attentionReasons.length>0?s.jsxs("div",{className:"ctx-sec",children:[s.jsxs("div",{className:"ctx-sec-h",children:[s.jsx("span",{children:"ATTENTION"}),s.jsx("span",{className:"n",children:a.attentionReasons.length})]}),s.jsx("div",{className:"ctx-why",children:a.attentionReasons.map((e,c)=>s.jsx("span",{className:"pill",children:e},c))})]}):null,a.error?s.jsxs("div",{className:"ctx-sec",children:[s.jsx("div",{className:"ctx-sec-h",children:s.jsx("span",{children:"SCAN ERROR"})}),s.jsx("div",{className:"ctx-err",children:a.error})]}):null,s.jsxs("div",{className:"ctx-sec",children:[s.jsxs("div",{className:"ctx-sec-h",children:[s.jsx("span",{children:"CHURN"}),s.jsx("span",{className:"n",children:j.has?"reviewable":"working tree"})]}),G?s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"ctx-churn",children:[s.jsxs("span",{className:"nums",children:[s.jsxs("span",{className:"add",children:["+",o(S)]}),s.jsx("span",{className:"sl",children:"/"}),s.jsxs("span",{className:"del",children:["−",o(C)]})]}),s.jsxs("span",{className:"cbar",title:`+${o(S)} −${o(C)}`,children:[s.jsx("span",{className:"g",style:{width:S/W*100+"%"}}),s.jsx("span",{className:"r",style:{width:C/W*100+"%"}})]})]}),s.jsxs("span",{className:"ctx-churn-clean",children:[j.has?`branch +${o(j.add)} −${o(j.del)}`:null,j.has&&v.has?" · ":null,v.has?`working tree +${o(v.add)} −${o(v.del)}`:null]})]}):s.jsx("div",{className:"ctx-churn-clean",children:a.status.clean?"working tree clean":"no line changes"})]}),a.status.files.length>0?s.jsxs("div",{className:"ctx-sec",children:[s.jsxs("div",{className:"ctx-sec-h",children:[s.jsx("span",{children:"FILES CHANGED"}),s.jsx("span",{className:"n",children:a.status.files.length})]}),a.status.files.map(e=>{const c=Y(e.status),{dir:m,file:J}=ls(e.path);return s.jsxs("div",{className:"ctx-fchg",children:[s.jsx("span",{className:"badge",style:{color:Q(c),background:z(c)},title:e.status,children:_(e.status)}),s.jsxs("span",{className:"fp",title:e.path,children:[s.jsx("span",{className:"dir",children:m}),J]})]},e.path)})]}):null,s.jsxs("div",{className:"ctx-sec",children:[s.jsx("div",{className:"ctx-sec-h",children:s.jsx("span",{children:"LAST COMMIT"})}),s.jsx("div",{className:"ctx-commit",children:a.lastCommitAt!=null||r.head?s.jsxs(s.Fragment,{children:[r.head?s.jsx("span",{className:"hash",children:r.head.slice(0,7)}):null,s.jsxs("span",{className:"t",children:[Z(a.lastCommitAt,u)," ago"]})]}):s.jsx("span",{className:"none",children:"no commit data"})})]}),s.jsxs("div",{className:"ctx-sec",children:[s.jsxs("div",{className:"ctx-sec-h",children:[s.jsx("span",{children:"ATTACHED SESSIONS"}),s.jsxs("span",{className:"n",children:[x.length," handle",x.length===1?"":"s",a.sessions.length>0?` · ${a.sessions.length} session${a.sessions.length===1?"":"s"}`:""]})]}),f>0?s.jsxs(s.Fragment,{children:[y.map(e=>s.jsxs("div",{className:"ctx-agent",children:[s.jsx("span",{className:"d "+(ss(e)?"on":"off")}),s.jsx("span",{className:"h",children:$(e)}),s.jsx("span",{className:"role",children:cs(e)})]},$(e))),D.map(e=>s.jsxs("div",{className:"ctx-agent",children:[s.jsx("span",{className:"d off"}),s.jsx("span",{className:"h",children:es(e)}),s.jsx("span",{className:"role",children:"SESSION"})]},e.id)),f>N?s.jsx("button",{type:"button",className:"ctx-more",onClick:()=>K(e=>!e),"aria-expanded":!b,children:b?`+${q} more`:"Show less"}):null]}):s.jsx("div",{className:"ctx-none",children:"no attached sessions"})]})]}),s.jsxs("div",{className:"ctx-ask",children:[s.jsx("textarea",{value:l,onChange:e=>{p(e.currentTarget.value),g(null),A(null)},onKeyDown:e=>{e.stopPropagation(),(e.metaKey||e.ctrlKey)&&e.key==="Enter"&&(e.preventDefault(),w())},disabled:h,rows:3,placeholder:i==="scout"?"Message Scout about this worktree":"Message this agent about the worktree"}),s.jsxs("div",{className:"ctx-ask-bar",children:[s.jsxs("select",{value:i,onChange:e=>T(e.currentTarget.value),onKeyDown:e=>e.stopPropagation(),disabled:h,"aria-label":"Message target",children:[s.jsx("option",{value:"scout",children:"Scout"}),E.map(e=>s.jsx("option",{value:`agent:${e.id}`,children:$(e)},e.id))]}),s.jsx("button",{className:"ctx-btn primary",type:"button",disabled:h||l.trim().length===0,onClick:()=>{w()},children:h?"Sending":"Send"})]}),s.jsxs("div",{className:"ctx-ask-foot",children:[O?s.jsx("span",{className:"err",children:O}):R?s.jsx("span",{className:"ok",children:R}):s.jsxs("span",{children:["Repo Watch context included · ",I]}),s.jsx("button",{type:"button",title:"Copy worktree path",onClick:()=>{navigator.clipboard?.writeText(a.path)},children:"Copy path"})]})]})]})}function js(){const{worktree:n,project:t,generatedAt:u,tone:l}=ns();return s.jsx("div",{className:"rw-scope rw-ctx-rail-scope tone-"+l,children:s.jsx(ds,{worktree:n,project:t,generatedAt:u})})}export{js as ReposInspector,js as default};
1
+ import{r as d,j as s}from"./index-DReVb7jZ.js";/* empty css */import{a as P}from"./api-DSqpVKC7.js";import{u as U,a as $,b as M,c as H,r as X,w as V,f as o,d as Y,e as _,t as z,g as Q,h as Z,i as ss,s as es}from"./ui-LM8pS8qE.js";import{B as as,u as ns}from"./selection-bridge-OTS2iFkt.js";function ts(n){return n.error!=null?{label:"SCAN ERR",cls:"err"}:n.status.conflicts>0?{label:"CONFLICT",cls:"conflict"}:n.status.clean?{label:"CLEAN",cls:"clean"}:{label:"DIRTY",cls:"dirty"}}function cs(n){const t=(n.state??"").toLowerCase();return t==="active"?"ACTIVE":t==="idle"?"IDLE":t==="waiting"?"WAITING":"—"}function ls(n){const t=n.lastIndexOf("/");return t<0?{dir:"",file:n}:{dir:n.slice(0,t+1),file:n.slice(t+1)}}function is(n){return n.status.clean?"clean":`staged ${n.status.staged}, unstaged ${n.status.unstaged}, untracked ${n.status.untracked}, conflicts ${n.status.conflicts}, changed files ${n.status.changedFiles}`}function rs(n,t,u){const l=["Operator request:",n,"","Repo Watch context:",`- Project: ${u.name}`,`- Project root: ${u.root}`,`- Project attention: ${u.attention}`,`- Worktree: ${t.path}`,`- Branch: ${t.branch.name??t.branch.head??"detached"}`];t.branch.upstream&&l.push(`- Upstream: ${t.branch.upstream}`),l.push(`- Drift: ahead ${t.branch.ahead}, behind ${t.branch.behind}`,`- Status: ${is(t)}`);const p=M(t),i=H(t);if(p.has&&l.push(`- Branch churn: +${p.add} -${p.del}`),i.has&&l.push(`- Working-tree churn: +${i.add} -${i.del}`),t.attentionReasons.length>0&&l.push(`- Attention reasons: ${t.attentionReasons.join("; ")}`),t.status.files.length>0){const T=t.status.files.slice(0,8).map(h=>`${h.status}: ${h.path}`).join(", ");l.push(`- Changed files: ${T}`)}return l.join(`
2
+ `)}function ds({worktree:n,project:t,generatedAt:u}){const[l,p]=d.useState(""),[i,T]=d.useState("scout"),[h,k]=d.useState(!1),[R,g]=d.useState(null),[O,A]=d.useState(null),[B,K]=d.useState(!1),x=d.useMemo(()=>n?U(n):[],[n]),E=d.useMemo(()=>x.slice(0,8),[x]),I=d.useMemo(()=>{if(i==="scout")return"Scout";const e=i.replace(/^agent:/,""),c=E.find(m=>m.id===e);return c?$(c):"Agent"},[E,i]);async function w(){const e=l.trim();if(!(!e||h||!n||!t)){k(!0),g(null),A(null);try{const c=rs(e,n,t);if(i==="scout")await P("/api/send",{method:"POST",body:JSON.stringify({body:c})}),g("Sent to Scout");else{const m=i.replace(/^agent:/,"");await P("/api/ask",{method:"POST",body:JSON.stringify({body:c,targetAgentId:m,targetLabel:m,metadata:{source:"repo-watch",originSurface:"repo-watch",handoffKind:"repo-watch-agent-ask",targetAgentId:m}})}),g(`Sent to ${I}`)}p("")}catch(c){A(c instanceof Error?c.message:String(c))}finally{k(!1)}}}if(!n||!t)return s.jsx("aside",{className:"rw-ctx","aria-label":"Worktree detail",children:s.jsxs("div",{className:"rw-ctx-empty",children:[s.jsx("span",{className:"eb",children:"CONTEXT · WORKTREE"}),s.jsx("span",{className:"msg",children:"Select a worktree to inspect"})]})});const a=n,r=a.branch,N=5,f=x.length+a.sessions.length,b=!B&&f>N,y=b?x.slice(0,N):x,D=b?a.sessions.slice(0,Math.max(0,N-y.length)):a.sessions,q=f-y.length-D.length,L=ts(a),j=M(a),v=H(a),{add:S,del:C,has:G}=X(a),W=S+C||1,F=[{label:"staged",n:a.status.staged},{label:"unstaged",n:a.status.unstaged},{label:"untracked",n:a.status.untracked},{label:"conflicts",n:a.status.conflicts,cls:"conf"}].filter(e=>e.n>0);return s.jsxs("aside",{className:"rw-ctx","aria-label":"Worktree detail",children:[s.jsxs("div",{className:"ctx-h",children:[s.jsx("div",{className:"ctx-eyebrow",children:s.jsx("span",{children:"CONTEXT · WORKTREE"})}),s.jsxs("div",{className:"ctx-repo",children:[s.jsx("span",{className:"dot "+V(a)}),s.jsx("span",{className:"rn",children:t.name}),s.jsx("span",{className:"ctx-state "+L.cls,children:L.label})]}),s.jsx("div",{className:"ctx-branch",children:s.jsx(as,{branch:r,fallback:a.name})}),s.jsxs("div",{className:"ctx-path",children:[a.path,r.upstream?s.jsxs("span",{className:"ref",children:[" · ",r.upstream]}):null]})]}),s.jsxs("div",{className:"ctx-stats",children:[s.jsxs("div",{children:[s.jsxs("div",{className:"v"+(r.ahead>0?" mint":" dim"),children:["↑",r.ahead]}),s.jsx("div",{className:"k",children:"AHEAD"})]}),s.jsxs("div",{children:[s.jsxs("div",{className:"v"+(r.behind>0?" amber":" dim"),children:["↓",r.behind]}),s.jsx("div",{className:"k",children:"BEHIND"})]}),s.jsxs("div",{children:[s.jsx("div",{className:"v"+(a.status.changedFiles>0?"":" dim"),children:a.status.changedFiles}),s.jsx("div",{className:"k",children:"FILES"})]})]}),F.length>0?s.jsx("div",{className:"ctx-breakdown",children:F.map(e=>s.jsxs("span",{className:"ctx-chip"+(e.cls?" "+e.cls:""),children:[s.jsx("span",{className:"n",children:e.n}),e.label]},e.label))}):null,s.jsxs("div",{className:"ctx-body",children:[a.attentionReasons.length>0?s.jsxs("div",{className:"ctx-sec",children:[s.jsxs("div",{className:"ctx-sec-h",children:[s.jsx("span",{children:"ATTENTION"}),s.jsx("span",{className:"n",children:a.attentionReasons.length})]}),s.jsx("div",{className:"ctx-why",children:a.attentionReasons.map((e,c)=>s.jsx("span",{className:"pill",children:e},c))})]}):null,a.error?s.jsxs("div",{className:"ctx-sec",children:[s.jsx("div",{className:"ctx-sec-h",children:s.jsx("span",{children:"SCAN ERROR"})}),s.jsx("div",{className:"ctx-err",children:a.error})]}):null,s.jsxs("div",{className:"ctx-sec",children:[s.jsxs("div",{className:"ctx-sec-h",children:[s.jsx("span",{children:"CHURN"}),s.jsx("span",{className:"n",children:j.has?"reviewable":"working tree"})]}),G?s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"ctx-churn",children:[s.jsxs("span",{className:"nums",children:[s.jsxs("span",{className:"add",children:["+",o(S)]}),s.jsx("span",{className:"sl",children:"/"}),s.jsxs("span",{className:"del",children:["−",o(C)]})]}),s.jsxs("span",{className:"cbar",title:`+${o(S)} −${o(C)}`,children:[s.jsx("span",{className:"g",style:{width:S/W*100+"%"}}),s.jsx("span",{className:"r",style:{width:C/W*100+"%"}})]})]}),s.jsxs("span",{className:"ctx-churn-clean",children:[j.has?`branch +${o(j.add)} −${o(j.del)}`:null,j.has&&v.has?" · ":null,v.has?`working tree +${o(v.add)} −${o(v.del)}`:null]})]}):s.jsx("div",{className:"ctx-churn-clean",children:a.status.clean?"working tree clean":"no line changes"})]}),a.status.files.length>0?s.jsxs("div",{className:"ctx-sec",children:[s.jsxs("div",{className:"ctx-sec-h",children:[s.jsx("span",{children:"FILES CHANGED"}),s.jsx("span",{className:"n",children:a.status.files.length})]}),a.status.files.map(e=>{const c=Y(e.status),{dir:m,file:J}=ls(e.path);return s.jsxs("div",{className:"ctx-fchg",children:[s.jsx("span",{className:"badge",style:{color:Q(c),background:z(c)},title:e.status,children:_(e.status)}),s.jsxs("span",{className:"fp",title:e.path,children:[s.jsx("span",{className:"dir",children:m}),J]})]},e.path)})]}):null,s.jsxs("div",{className:"ctx-sec",children:[s.jsx("div",{className:"ctx-sec-h",children:s.jsx("span",{children:"LAST COMMIT"})}),s.jsx("div",{className:"ctx-commit",children:a.lastCommitAt!=null||r.head?s.jsxs(s.Fragment,{children:[r.head?s.jsx("span",{className:"hash",children:r.head.slice(0,7)}):null,s.jsxs("span",{className:"t",children:[Z(a.lastCommitAt,u)," ago"]})]}):s.jsx("span",{className:"none",children:"no commit data"})})]}),s.jsxs("div",{className:"ctx-sec",children:[s.jsxs("div",{className:"ctx-sec-h",children:[s.jsx("span",{children:"ATTACHED SESSIONS"}),s.jsxs("span",{className:"n",children:[x.length," handle",x.length===1?"":"s",a.sessions.length>0?` · ${a.sessions.length} session${a.sessions.length===1?"":"s"}`:""]})]}),f>0?s.jsxs(s.Fragment,{children:[y.map(e=>s.jsxs("div",{className:"ctx-agent",children:[s.jsx("span",{className:"d "+(ss(e)?"on":"off")}),s.jsx("span",{className:"h",children:$(e)}),s.jsx("span",{className:"role",children:cs(e)})]},$(e))),D.map(e=>s.jsxs("div",{className:"ctx-agent",children:[s.jsx("span",{className:"d off"}),s.jsx("span",{className:"h",children:es(e)}),s.jsx("span",{className:"role",children:"SESSION"})]},e.id)),f>N?s.jsx("button",{type:"button",className:"ctx-more",onClick:()=>K(e=>!e),"aria-expanded":!b,children:b?`+${q} more`:"Show less"}):null]}):s.jsx("div",{className:"ctx-none",children:"no attached sessions"})]})]}),s.jsxs("div",{className:"ctx-ask",children:[s.jsx("textarea",{value:l,onChange:e=>{p(e.currentTarget.value),g(null),A(null)},onKeyDown:e=>{e.stopPropagation(),(e.metaKey||e.ctrlKey)&&e.key==="Enter"&&(e.preventDefault(),w())},disabled:h,rows:3,placeholder:i==="scout"?"Message Scout about this worktree":"Message this agent about the worktree"}),s.jsxs("div",{className:"ctx-ask-bar",children:[s.jsxs("select",{value:i,onChange:e=>T(e.currentTarget.value),onKeyDown:e=>e.stopPropagation(),disabled:h,"aria-label":"Message target",children:[s.jsx("option",{value:"scout",children:"Scout"}),E.map(e=>s.jsx("option",{value:`agent:${e.id}`,children:$(e)},e.id))]}),s.jsx("button",{className:"ctx-btn primary",type:"button",disabled:h||l.trim().length===0,onClick:()=>{w()},children:h?"Sending":"Send"})]}),s.jsxs("div",{className:"ctx-ask-foot",children:[O?s.jsx("span",{className:"err",children:O}):R?s.jsx("span",{className:"ok",children:R}):s.jsxs("span",{children:["Repo Watch context included · ",I]}),s.jsx("button",{type:"button",title:"Copy worktree path",onClick:()=>{navigator.clipboard?.writeText(a.path)},children:"Copy path"})]})]})]})}function ps(){const{worktree:n,project:t,generatedAt:u,tone:l}=ns();return s.jsx("div",{className:"rw-scope rw-ctx-rail-scope tone-"+l,children:s.jsx(ds,{worktree:n,project:t,generatedAt:u})})}export{ps as ReposInspector,ps as default};
@@ -1 +1 @@
1
- import{c}from"./createLucideIcon-Dv8H8m7J.js";const e=[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]],t=c("rocket",e);export{t as R};
1
+ import{c}from"./createLucideIcon-ChvMq-zl.js";const e=[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]],t=c("rocket",e);export{t as R};