@openscout/scout 0.2.98 → 0.2.102

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (622) hide show
  1. package/NOTICE +7 -0
  2. package/bin/scoutd +0 -0
  3. package/dist/build-manifest.json +3 -3
  4. package/dist/client/assets/ActivityScreen-DCALiEXY.js +1 -0
  5. package/dist/client/assets/{AddProjectForm-fXndbzXT.js → AddProjectForm-DfbjlFfy.js} +1 -1
  6. package/dist/client/assets/AdventureEvidence-Dzz9VbuE.js +5 -0
  7. package/dist/client/assets/AdventureReader-ClMxT0e4.js +4 -0
  8. package/dist/client/assets/AdventureScenery-D548O0x4.js +1 -0
  9. package/dist/client/assets/AgentAdventures-NwTKeF0F.js +1 -0
  10. package/dist/client/assets/AgentAvatar-BIwg54Tj.js +1 -0
  11. package/dist/client/assets/AgentConfigurationScreen-B2Hw0ce1.js +1 -0
  12. package/dist/client/assets/AgentDefinitionsWorkspace-CwZJ833X.js +1 -0
  13. package/dist/client/assets/AgentDetailCard-CFDE8TLi.js +1 -0
  14. package/dist/client/assets/AgentFloorView-l2wNKFob.js +1 -0
  15. package/dist/client/assets/AgentFloorWorld-BDJmXl3C.js +1 -0
  16. package/dist/client/assets/AgentInfoScreen-ClZM1wQb.js +1 -0
  17. package/dist/client/assets/{AgentLaneCard-Cc9uyfBr.js → AgentLaneCard-C6YmwPxQ.js} +1 -1
  18. package/dist/client/assets/{AgentLaneChrome-Dv2lBFoH.js → AgentLaneChrome-D9uJ4QY7.js} +1 -1
  19. package/dist/client/assets/{AgentLaneDetailSheet-CGqtqSHQ.js → AgentLaneDetailSheet-KYckCBCX.js} +2 -2
  20. package/dist/client/assets/{AgentLaneSummaryResize-Di4u6df2.js → AgentLaneSummaryResize-BBYBS3DO.js} +1 -1
  21. package/dist/client/assets/AgentLanesEmbedScreen-DqHwqY0X.js +1 -0
  22. package/dist/client/assets/{AgentLanesPreflight-CCGBArIb.js → AgentLanesPreflight-pw2vMO3Q.js} +1 -1
  23. package/dist/client/assets/AgentLanesView-aAyC7lHf.js +2 -0
  24. package/dist/client/assets/AgentLiveActions-lYzicnNa.js +1 -0
  25. package/dist/client/assets/AgentMasterScreen-By6DN0jF.js +1 -0
  26. package/dist/client/assets/AgentSessions-Cox2zS-e.js +6 -0
  27. package/dist/client/assets/AgentsConsole-Dq0S_hRA.js +1 -0
  28. package/dist/client/assets/AgentsScreen-Bi9Lx47B.js +1 -0
  29. package/dist/client/assets/AgentsSubnav-BOobgtGE.js +1 -0
  30. package/dist/client/assets/{AstronautSuit-CwB4Dw07.js → AstronautSuit-C-4I5YKi.js} +1 -1
  31. package/dist/client/assets/AtopView-DKm-ERYC.js +1 -0
  32. package/dist/client/assets/BackToPicker-Bys9ColC.js +1 -0
  33. package/dist/client/assets/BriefingDetailScreen-sprFl4Nk.js +1 -0
  34. package/dist/client/assets/BriefingsScreen-D4Zf31Y6.js +1 -0
  35. package/dist/client/assets/{BrokerMetadataPanel-BJSwU9XZ.js → BrokerMetadataPanel-1GoSl2BV.js} +1 -1
  36. package/dist/client/assets/BrokerScreen-CejzhRsB.js +8 -0
  37. package/dist/client/assets/{CastPicker-CkgTalIt.js → CastPicker-BuwE_JQp.js} +1 -1
  38. package/dist/client/assets/CharacterFamilyPreview-BniL8sEL.css +1 -0
  39. package/dist/client/assets/CharacterFamilyPreview-CfO3j8Of.js +1 -0
  40. package/dist/client/assets/ChatCollapsedStrip-TV0j1xTB.js +1 -0
  41. package/dist/client/assets/{CodeDiffPane-DfluIWmO.js → CodeDiffPane-DB6-mqtX.js} +1 -1
  42. package/dist/client/assets/{CodeProjectPicker-By_Wz9ex.js → CodeProjectPicker-B_LNLpIK.js} +1 -1
  43. package/dist/client/assets/CodeScreen-C9H160XS.js +1 -0
  44. package/dist/client/assets/CommsCanvas-BR2YS76H.css +1 -0
  45. package/dist/client/assets/CommsCanvas-DOKw3Q8i.js +1 -0
  46. package/dist/client/assets/CommsDeck-C18JA7rK.js +1 -0
  47. package/dist/client/assets/CommsFlowGraph-Czg-KTS0.js +1 -0
  48. package/dist/client/assets/CommsFlowGraph-vQucylxF.css +1 -0
  49. package/dist/client/assets/CommsFlowMap-CzBWvSa5.js +1 -0
  50. package/dist/client/assets/CommsSelection-g1twA-Lb.js +1 -0
  51. package/dist/client/assets/{ConversationComposer-BUIjWMBi.js → ConversationComposer-B7RU6LKd.js} +1 -1
  52. package/dist/client/assets/ConversationFeedRows-DVqnZQH0.js +1 -0
  53. package/dist/client/assets/ConversationHeader-CCSU8uo_.js +1 -0
  54. package/dist/client/assets/ConversationPanels-C9yCAoJy.js +6 -0
  55. package/dist/client/assets/ConversationScreen-Brfas2y0.css +1 -0
  56. package/dist/client/assets/ConversationScreen-tTP6B_F-.js +2 -0
  57. package/dist/client/assets/ConversationStatus-CK-YfLpi.js +1 -0
  58. package/dist/client/assets/{CrewAvatar-CZ_faQ_s.js → CrewAvatar-CJhuqTsJ.js} +1 -1
  59. package/dist/client/assets/CrewSprite-DsQJdu3Z.css +1 -0
  60. package/dist/client/assets/CrewSprite-hgpA3SWB.js +1 -0
  61. package/dist/client/assets/CrewWorkspaces-4O8dgRUD.js +1 -0
  62. package/dist/client/assets/{DataTable-C6aMSilS.js → DataTable-BMOZ1-z8.js} +1 -1
  63. package/dist/client/assets/DispatchAftermath-DDlwqSCY.js +1 -0
  64. package/dist/client/assets/DocumentFocusViewer-f12RRQpV.js +1 -0
  65. package/dist/client/assets/{EmbeddableSurfacesLab-D3iZiS8o.js → EmbeddableSurfacesLab-DGl9EMRV.js} +1 -1
  66. package/dist/client/assets/{EmptyState-CKPWFSjq.js → EmptyState-uyYN5piI.js} +1 -1
  67. package/dist/client/assets/{FileViewerPane-CxNbcTYf.js → FileViewerPane-HtiDbj9N.js} +2 -2
  68. package/dist/client/assets/FlightObserveScreen-DDXfNbsw.js +1 -0
  69. package/dist/client/assets/FloorContextSheet-DV-SYA0K.js +1 -0
  70. package/dist/client/assets/FloorExchangePanel-B3TFhjLk.css +1 -0
  71. package/dist/client/assets/FloorExchangePanel-D59nvRCF.js +1 -0
  72. package/dist/client/assets/FloorMessagePasses-BCwsz9VS.js +1 -0
  73. package/dist/client/assets/FloorMessagePasses-nxwwiUom.css +1 -0
  74. package/dist/client/assets/FloorReplay-BHo79HCD.js +1 -0
  75. package/dist/client/assets/FloorResourcesSheet-Djrgd_ZU.js +1 -0
  76. package/dist/client/assets/FloorSavedWork-2tjBoy06.js +1 -0
  77. package/dist/client/assets/FloorTacticalHUD-Bngao6sn.js +1 -0
  78. package/dist/client/assets/FollowScreen-eHXOlK-u.js +1 -0
  79. package/dist/client/assets/{HarnessMark-DttReffF.js → HarnessMark-Bt47OeHy.js} +1 -1
  80. package/dist/client/assets/HarnessesScreen-M84sFjWY.js +1 -0
  81. package/dist/client/assets/{HerdrSession-DsuxCtfX.js → HerdrSession-CtJOUn7H.js} +3 -3
  82. package/dist/client/assets/{HomeHero-DXJo2QSO.js → HomeHero-Cvwx2H0w.js} +1 -1
  83. package/dist/client/assets/HostAdvisorView-CTJXIc1Q.js +1 -0
  84. package/dist/client/assets/KnowledgeSearchInspector-DwGMVmFL.js +1 -0
  85. package/dist/client/assets/KnowledgeSearchScreen-WC0WhFio.js +1 -0
  86. package/dist/client/assets/{LaneToolHoverCard-t7-XJP-h.js → LaneToolHoverCard-C6YehJqD.js} +1 -1
  87. package/dist/client/assets/LaneTraceDetailSheet-mAhj7MJi.js +1 -0
  88. package/dist/client/assets/{LaneTraceEventFocus-BB5DhFQm.js → LaneTraceEventFocus-WLNZZVi_.js} +1 -1
  89. package/dist/client/assets/MeshCanvas-FDDGE69h.js +3 -0
  90. package/dist/client/assets/MeshCanvasMinimap-CGRzQCac.js +1 -0
  91. package/dist/client/assets/MeshScreen-DlfiMlaR.js +1 -0
  92. package/dist/client/assets/{MeshTopologyView-Dc0GSrKa.js → MeshTopologyView-C2Cv_2gx.js} +2 -2
  93. package/dist/client/assets/MessagesScreen-BZ7yaGJx.js +1 -0
  94. package/dist/client/assets/MissionContextRail-CVSZJnvX.js +1 -0
  95. package/dist/client/assets/MissionControlView-DpGhxG4a.js +1 -0
  96. package/dist/client/assets/MissionFocusOverlay-B9SiuO-i.js +1 -0
  97. package/dist/client/assets/MissionLeftAgentRow-DhhRRim0.js +1 -0
  98. package/dist/client/assets/MissionLogPane-CMBiI29U.js +1 -0
  99. package/dist/client/assets/NativeAreaScreen-BQyHHRAM.js +1 -0
  100. package/dist/client/assets/NativeAreaScreen-Ditv-TYW.js +1 -0
  101. package/dist/client/assets/NativeAreaScreen-Dq3uPSEI.js +1 -0
  102. package/dist/client/assets/NewAgentModal-Cl4nsGhu.js +1 -0
  103. package/dist/client/assets/NewChatComposer-JjLbm3W2.js +19 -0
  104. package/dist/client/assets/{NewChatOrigin-DCn5cWPZ.js → NewChatOrigin-CyPPWTJP.js} +1 -1
  105. package/dist/client/assets/NodeDetailPanel-BUG8rOb-.js +1 -0
  106. package/dist/client/assets/NodeMenu-Fw8ATWQA.js +1 -0
  107. package/dist/client/assets/ObserveEmbedScreen-BPiSXXvm.js +2 -0
  108. package/dist/client/assets/{ObserveTextFlow-DCJ5EmD8.js → ObserveTextFlow-ET0dD1wO.js} +2 -2
  109. package/dist/client/assets/{ObservedTopologyPanel-CJVqIqQ2.js → ObservedTopologyPanel-DkEkQzo-.js} +1 -1
  110. package/dist/client/assets/OpenScoutAppShell-CzKbjwCA.js +22 -0
  111. package/dist/client/assets/OpsAgentsView-CZbtkcQH.js +1 -0
  112. package/dist/client/assets/OpsScreen-DJq-aBmX.js +1 -0
  113. package/dist/client/assets/OpsSubnav-9sURjajO.js +1 -0
  114. package/dist/client/assets/ProjectAgentProfile-q_1tMJIL.js +1 -0
  115. package/dist/client/assets/{ProjectAgentProfileBar-CUzZ4Rpx.js → ProjectAgentProfileBar-C1fR65Eh.js} +1 -1
  116. package/dist/client/assets/ProjectAgentProfileHero-DyEFyTFs.js +1 -0
  117. package/dist/client/assets/ProjectsInbox-Bs8I__my.js +2 -0
  118. package/dist/client/assets/ProjectsRail-Deb38OJ1.js +1 -0
  119. package/dist/client/assets/ProjectsScreen-CgLiYiss.js +1 -0
  120. package/dist/client/assets/ProjectsThreadAside-C0Yw3yIL.js +1 -0
  121. package/dist/client/assets/Provider-5Hotn7NQ.js +5 -0
  122. package/dist/client/assets/{RailRow-B0sRaJc6.css → RailRow-B25zKEub.css} +1 -1
  123. package/dist/client/assets/RailRow-BYguXNm4.js +1 -0
  124. package/dist/client/assets/RawSessionsTable-DIhmlvk-.js +1 -0
  125. package/dist/client/assets/RealtimeVoiceScreen-3oU7b7V5.js +1 -0
  126. package/dist/client/assets/RenderedWorkerSprite-CvdWO32C.js +1 -0
  127. package/dist/client/assets/RenderedWorkerSprite-qnTfkd_4.css +1 -0
  128. package/dist/client/assets/ReplayClock-B7JLTp8A.js +1 -0
  129. package/dist/client/assets/ReplayLog-DZTpf2CW.js +1 -0
  130. package/dist/client/assets/ReplayOutpost-CvWQa30T.js +1 -0
  131. package/dist/client/assets/ReplayOutpost-Y1DvZgeu.css +1 -0
  132. package/dist/client/assets/{RepoDiffEmbedScreen-mexrJPhW.js → RepoDiffEmbedScreen-Cbu0_PJW.js} +1 -1
  133. package/dist/client/assets/{RepoDiffPageScreen-DbqX4L3q.js → RepoDiffPageScreen-Chwm6GXL.js} +1 -1
  134. package/dist/client/assets/RepoDiffViewer-C2mb0Wj-.js +7 -0
  135. package/dist/client/assets/RepoDiffViewerLazy-BQ6ZCrsq.js +2 -0
  136. package/dist/client/assets/{ReposScreen-CzbO1Fuy.js → ReposScreen-C7JZQmyh.js} +2 -2
  137. package/dist/client/assets/RiggedWorkerCharacter-BpYECnyK.css +1 -0
  138. package/dist/client/assets/RiggedWorkerCharacter-DNe731GE.js +1 -0
  139. package/dist/client/assets/SageModelStudio-768dRQr4.css +1 -0
  140. package/dist/client/assets/SageModelStudio-BR1J2D4R.js +4108 -0
  141. package/dist/client/assets/ScoutDeckSurface-flRamdvE.js +1 -0
  142. package/dist/client/assets/{ScoutSurface-NlhDsPzg.js → ScoutSurface-BpklGmDL.js} +1 -1
  143. package/dist/client/assets/{ScoutbotFxLab-l2WAahCg.js → ScoutbotFxLab-DeK7ySWZ.js} +1 -1
  144. package/dist/client/assets/{SecondaryNav-Cs0_FQdj.js → SecondaryNav-BkTn5tkq.js} +1 -1
  145. package/dist/client/assets/SessionEmbedScreen-CcQN6xlo.js +1 -0
  146. package/dist/client/assets/{SessionObserve-CLrHfAKZ.css → SessionObserve-BOBJSfs0.css} +1 -1
  147. package/dist/client/assets/SessionObserve-DaqDhqDI.js +12 -0
  148. package/dist/client/assets/SessionObserveEvidence-Drv-D8Oh.js +1 -0
  149. package/dist/client/assets/SessionRefScreen-BOQ1_ydg.js +1 -0
  150. package/dist/client/assets/SessionsScreen-R8QKvoey.js +1 -0
  151. package/dist/client/assets/SettingsDrawer-BDapR4E9.js +3 -0
  152. package/dist/client/assets/SettingsScreen-DirtO7Z0.js +1 -0
  153. package/dist/client/assets/SharedFloorCharacter-Bi5_md4R.css +1 -0
  154. package/dist/client/assets/SharedFloorCharacter-CSYG_t9t.js +1 -0
  155. package/dist/client/assets/SharedWorkFloor-BCmdeb3Q.css +1 -0
  156. package/dist/client/assets/SharedWorkFloor-yPWFLZwX.js +2 -0
  157. package/dist/client/assets/{ShikiPane-C0TuCATU.js → ShikiPane-BudrOxNK.js} +1 -1
  158. package/dist/client/assets/{SlidePanel-CETQ5NTx.js → SlidePanel-Datu7XG4.js} +1 -1
  159. package/dist/client/assets/SpriteAvatar-BW1JzkDt.js +1 -0
  160. package/dist/client/assets/SproutActionSprite-DveCzg6l.js +1 -0
  161. package/dist/client/assets/{StatusPill-BllrY-eg.js → StatusPill-MxYClPG5.js} +1 -1
  162. package/dist/client/assets/{TailView-_gKWfaQM.js → TailView-Dn7uWmPz.js} +2 -2
  163. package/dist/client/assets/Terminal-D-DsQlmV.js +4 -0
  164. package/dist/client/assets/TerminalEmbedScreen-9Gmln759.js +1 -0
  165. package/dist/client/assets/TerminalHeaderMount-DCGstkZ4.js +1 -0
  166. package/dist/client/assets/{TextDocumentSurface-2X1Gw4eA.js → TextDocumentSurface-BhYvAB0o.js} +1 -1
  167. package/dist/client/assets/{TmuxPeek-CqTJRhkI.js → TmuxPeek-BhK0V9Qt.js} +1 -1
  168. package/dist/client/assets/{VoicePermissionsPanel-C4vkU-sU.js → VoicePermissionsPanel-CecFWzva.js} +1 -1
  169. package/dist/client/assets/{WorkDetailScreen-DqGnuK0e.js → WorkDetailScreen-CwtRCm_-.js} +4 -4
  170. package/dist/client/assets/WorkFilesViewer-DJHftsH9.js +1 -0
  171. package/dist/client/assets/WorkRunView-CxwAZ2QQ.css +1 -0
  172. package/dist/client/assets/WorkRunView-x5PH1byG.js +1 -0
  173. package/dist/client/assets/WorldActorTalk-uIH2jGqA.js +1 -0
  174. package/dist/client/assets/WorldCharacter-Dn4sIXNP.js +1 -0
  175. package/dist/client/assets/WorldMinimap-Blqg0d5r.js +1 -0
  176. package/dist/client/assets/WorldSky-DV9bpvXj.js +1 -0
  177. package/dist/client/assets/{activity-CzTJ-YMX.js → activity-CSUhvjD0.js} +1 -1
  178. package/dist/client/assets/{addon-fit-Zx3A7pGS.js → addon-fit-MR98IWES.js} +1 -1
  179. package/dist/client/assets/{addon-webgl-DitJj-N0.js → addon-webgl-CIIKXrvK.js} +1 -1
  180. package/dist/client/assets/adventure-evidence-DgQbBmfa.css +1 -0
  181. package/dist/client/assets/adventure-habitats-v1-CVMbdB_Z.png +0 -0
  182. package/dist/client/assets/adventure-habitats-v1-M1lcpTJh.js +1 -0
  183. package/dist/client/assets/adventure-playback-DTfkhIc0.js +3 -0
  184. package/dist/client/assets/adventure-reader-DM5UDDm9.css +1 -0
  185. package/dist/client/assets/agent-adventures-DZtWpj6k.css +1 -0
  186. package/dist/client/assets/agent-autocomplete-CeHQpuG9.js +10 -0
  187. package/dist/client/assets/{agent-essentials-K9B6kbTS.js → agent-essentials-8t2il7PV.js} +1 -1
  188. package/dist/client/assets/{agent-floor-CuJr1iK1.css → agent-floor-Dmr9hZHL.css} +1 -1
  189. package/dist/client/assets/agent-floor-actor-3v9drnxh.js +1 -0
  190. package/dist/client/assets/agent-floor-world-Bnd1AtwK.css +1 -0
  191. package/dist/client/assets/agent-floor-world-layout-hfMjuoui.js +1 -0
  192. package/dist/client/assets/agent-lane-card-model-l0stnU9N.js +1 -0
  193. package/dist/client/assets/{agent-lane-detail-ppJId6Jc.js → agent-lane-detail-Db7KyAlf.js} +1 -1
  194. package/dist/client/assets/{agent-lane-preview-BhplDYGf.js → agent-lane-preview-B8lsQJOQ.js} +1 -1
  195. package/dist/client/assets/{agent-lanes-DlqcEf0l.css → agent-lanes-DmgipV9D.css} +1 -1
  196. package/dist/client/assets/agent-lanes-model-CX0wTcnF.js +4 -0
  197. package/dist/client/assets/agent-master-THmq-1k8.css +1 -0
  198. package/dist/client/assets/agent-master-model-C-KdOFDK.js +1 -0
  199. package/dist/client/assets/{agent-specialization-CtF_jI34.js → agent-specialization-CiVxQsFT.js} +1 -1
  200. package/dist/client/assets/agent-state-DDhnFEEP.js +1 -0
  201. package/dist/client/assets/{api-HFH8wFyb.js → api-B9_IqFKY.js} +1 -1
  202. package/dist/client/assets/api-CaROe5_H.js +1 -0
  203. package/dist/client/assets/{arc.es-BNXJqSw7.js → arc.es-BzhWalCl.js} +1 -1
  204. package/dist/client/assets/{arrow-down-BAGkhHA6.js → arrow-down-WoVlkUmg.js} +1 -1
  205. package/dist/client/assets/{arrow-left-eToA6GxC.js → arrow-left-PuKdO3NM.js} +1 -1
  206. package/dist/client/assets/{arrow-right-DTX42clh.js → arrow-right-ldbfp4SZ.js} +1 -1
  207. package/dist/client/assets/{arrow-up-right-B09GPwFl.js → arrow-up-right-Hn754ybA.js} +1 -1
  208. package/dist/client/assets/book-open-BlJnpf2U.js +1 -0
  209. package/dist/client/assets/{bot-WxKXYtEX.js → bot-CfN9PSBF.js} +1 -1
  210. package/dist/client/assets/broker-display-BkBzyvbR.js +2 -0
  211. package/dist/client/assets/{cache-CeWH_KzJ.js → cache-DEy9E34b.js} +1 -1
  212. package/dist/client/assets/{check-Dz2SRHft.js → check-B8dMv3Is.js} +1 -1
  213. package/dist/client/assets/{chevron-down-D120PY4g.js → chevron-down-B5eMsn5c.js} +1 -1
  214. package/dist/client/assets/{chevron-right-CowuvuE6.js → chevron-right-C7UGFpkl.js} +1 -1
  215. package/dist/client/assets/chevron-up-BHOEgHcn.js +1 -0
  216. package/dist/client/assets/{chunk-HRAB3GC3-KjjrTLCU.js → chunk-HRAB3GC3-C5X-kFhb.js} +1 -1
  217. package/dist/client/assets/chunk-JTPDIGGW-ZC-98AHT.js +46 -0
  218. package/dist/client/assets/{chunk-T65CQEWV-H2QEKfr1.js → chunk-T65CQEWV-CSVUz2rY.js} +1 -1
  219. package/dist/client/assets/chunk-YOZR3KYS-B59jqwO0.js +2 -0
  220. package/dist/client/assets/{clock-_9FDplIT.js → clock-DFcRbtrl.js} +1 -1
  221. package/dist/client/assets/{code-xml-CkkNdRmu.js → code-xml-BmyLM0I2.js} +1 -1
  222. package/dist/client/assets/coffee-C_D9zooM.js +1 -0
  223. package/dist/client/assets/colors-CFlbwC25.js +1 -0
  224. package/dist/client/assets/comms-deck-C8nVeMBh.css +1 -0
  225. package/dist/client/assets/comms-deck-CBhsXnY-.js +2 -0
  226. package/dist/client/assets/comms-gesture-_aGFo6g3.js +2 -0
  227. package/dist/client/assets/{compass-BdpImt_W.js → compass-DTZdCpv9.js} +1 -1
  228. package/dist/client/assets/content-B5Q4pb9R.js +1 -0
  229. package/dist/client/assets/content-BK1IfOZs.js +1 -0
  230. package/dist/client/assets/content-BeEsWLEm.js +1 -0
  231. package/dist/client/assets/content-BkOwEknW.js +1 -0
  232. package/dist/client/assets/content-C32W5kAG.js +1 -0
  233. package/dist/client/assets/content-CoqyLs9v.js +1 -0
  234. package/dist/client/assets/content-CwpdIS5b.js +1 -0
  235. package/dist/client/assets/content-DS2OkJ3Q.js +1 -0
  236. package/dist/client/assets/content-DXKaPDfn.js +1 -0
  237. package/dist/client/assets/content-DZt5-dkI.js +1 -0
  238. package/dist/client/assets/content-DbQJH8L1.js +1 -0
  239. package/dist/client/assets/content-DetoiaHq.js +1 -0
  240. package/dist/client/assets/content-Dhu3wL7J.js +1 -0
  241. package/dist/client/assets/content-Dpv34iZu.js +1 -0
  242. package/dist/client/assets/content-TtQJb61D.js +1 -0
  243. package/dist/client/assets/content-ymNb2R7g.js +1 -0
  244. package/dist/client/assets/{context-budget-DqxWzalx.js → context-budget-DemtXu7E.js} +1 -1
  245. package/dist/client/assets/{conversation-icons-DHGc9wbT.js → conversation-icons-BQ4OeOmr.js} +1 -1
  246. package/dist/client/assets/conversation-model-BGFHoxQ0.js +1 -0
  247. package/dist/client/assets/conversation-motion-features-9x8uZpwh.js +1 -0
  248. package/dist/client/assets/conversations-Cbg9h_Af.js +1 -0
  249. package/dist/client/assets/{copy-BzdzWsQd.js → copy-D9WUpQRf.js} +1 -1
  250. package/dist/client/assets/{cpu-CHFIGw87.js → cpu-Ck_4tB_-.js} +1 -1
  251. package/dist/client/assets/{createLucideIcon-Dv8H8m7J.js → createLucideIcon-DkjnzvcJ.js} +1 -1
  252. package/dist/client/assets/{credentials-BTce3VP1.js → credentials-C4VXz2hr.js} +1 -1
  253. package/dist/client/assets/discover-C8IOY7_K.js +2 -0
  254. package/dist/client/assets/embed-entry-CG3CfCbm.js +2 -0
  255. package/dist/client/assets/embed-navigation-DayfkQau.js +1 -0
  256. package/dist/client/assets/{external-link-BvX5PfLh.js → external-link-RT4Ph-6-.js} +1 -1
  257. package/dist/client/assets/{eye-C9cGk5z6.js → eye-CtqSV8BS.js} +1 -1
  258. package/dist/client/assets/{file-code-corner-jlGFdr8d.js → file-code-corner-D_Aptal2.js} +1 -1
  259. package/dist/client/assets/{file-text-BHro8MkG.js → file-text-ChtICwub.js} +1 -1
  260. package/dist/client/assets/flag-CqdOxVkI.js +1 -0
  261. package/dist/client/assets/floor-character-name-CqJPOlXb.js +1 -0
  262. package/dist/client/assets/floor-context-model-DZBpo_oD.js +1 -0
  263. package/dist/client/assets/floor-context-sheet-BFnkFiY3.css +1 -0
  264. package/dist/client/assets/floor-memory-YMM8AlLY.js +1 -0
  265. package/dist/client/assets/floor-message-passes-CJh9f8Jp.js +1 -0
  266. package/dist/client/assets/floor-preview-text-HrORUJ7D.js +1 -0
  267. package/dist/client/assets/floor-replay-CccYqE-f.css +1 -0
  268. package/dist/client/assets/floor-tactical-hud-HL5Vja5Y.css +1 -0
  269. package/dist/client/assets/folder-0fWevPvQ.js +1 -0
  270. package/dist/client/assets/{gauge-DSflSery.js → gauge-Dgtfxf_o.js} +1 -1
  271. package/dist/client/assets/{gestures-YA5IIwp-.js → gestures-BDCZ1FRG.js} +1 -1
  272. package/dist/client/assets/{git-branch-Bc_eDIpG.js → git-branch-CA3cHKCI.js} +1 -1
  273. package/dist/client/assets/go-shortcuts-DKtw4qYx.js +1 -0
  274. package/dist/client/assets/home-moving-signal-B7m-ngb2.js +1 -0
  275. package/dist/client/assets/home-now-card-DduXkHRR.js +1 -0
  276. package/dist/client/assets/{home-now-card-nano-Jmy7eJ6H.js → home-now-card-nano-D1ScGrgv.js} +1 -1
  277. package/dist/client/assets/hooks-C6VyQTQe.js +2 -0
  278. package/dist/client/assets/{hooks-D6NI15f6.css → hooks-D787lBmm.css} +1 -1
  279. package/dist/client/assets/index-C5cX8dkl.js +1 -0
  280. package/dist/client/assets/{index-C1VaWNuD.js → index-C8uS5szO.js} +5 -5
  281. package/dist/client/assets/index-Ck1__1yL.css +1 -0
  282. package/dist/client/assets/index-ClOOrVG1.js +1 -0
  283. package/dist/client/assets/index-Crtgfc9I.js +1 -0
  284. package/dist/client/assets/index-CvsM3jm8.js +1 -0
  285. package/dist/client/assets/{inspector-panel-CwrHjRaQ.js → inspector-panel-BLhDODb3.js} +2 -2
  286. package/dist/client/assets/{keyboard-nav-B8sQ_8IF.js → keyboard-nav-CXfav14z.js} +1 -1
  287. package/dist/client/assets/knowledge-search-BNdQweGz.css +1 -0
  288. package/dist/client/assets/{lane-edit-display-C_Aujldz.js → lane-edit-display-BjdT9oZl.js} +1 -1
  289. package/dist/client/assets/{lane-observe-vfyACHi0.js → lane-observe-BD21P8BB.js} +2 -2
  290. package/dist/client/assets/lane-roster-store-DzNHP392.js +1 -0
  291. package/dist/client/assets/{lane-tool-detail-0WhMf4Vj.js → lane-tool-detail-Czggx8oM.js} +1 -1
  292. package/dist/client/assets/{layers-CW2-qHsG.js → layers-Bolb8ejU.js} +1 -1
  293. package/dist/client/assets/{layout-grid-BoVnPOk-.js → layout-grid-DI9tVJ2E.js} +1 -1
  294. package/dist/client/assets/left-B-_z_nqj.js +2 -0
  295. package/dist/client/assets/left-B1LY7rJc.js +1 -0
  296. package/dist/client/assets/{left-DH44V4I_.css → left-BV9yMiTL.css} +1 -1
  297. package/dist/client/assets/left-C6bdjWcG.js +2 -0
  298. package/dist/client/assets/left-CF4iuqlz.js +1 -0
  299. package/dist/client/assets/left-DLtNyZl1.js +1 -0
  300. package/dist/client/assets/left-Fpxoq-VY.js +1 -0
  301. package/dist/client/assets/left-N2wXfTlp.js +1 -0
  302. package/dist/client/assets/left-advisor-CeIjCKbd.js +1 -0
  303. package/dist/client/assets/left-agents-upjHVlOj.js +1 -0
  304. package/dist/client/assets/left-default-08gmdCtb.js +1 -0
  305. package/dist/client/assets/left-lanes-Cvsp73Hw.js +1 -0
  306. package/dist/client/assets/left-mission-DENnfshd.css +1 -0
  307. package/dist/client/assets/left-mission-W1LLaz74.js +1 -0
  308. package/dist/client/assets/library-DLKBVUJ6.js +1 -0
  309. package/dist/client/assets/{loader-circle-DmUG_YC7.js → loader-circle-DurUYl7E.js} +1 -1
  310. package/dist/client/assets/{local-agents-VP1-ZlPw.js → local-agents-D9fYYRyj.js} +1 -1
  311. package/dist/client/assets/machine-children-RGS4Q0r6.js +1 -0
  312. package/dist/client/assets/machine-scope-DJt9RZ2w.js +1 -0
  313. package/dist/client/assets/mentions-Ctw1ECUC.js +1 -0
  314. package/dist/client/assets/{mesh-ops-CKSWgax2.js → mesh-ops-CGpRk4ik.js} +1 -1
  315. package/dist/client/assets/{mesh-screen-D1Yvo8fU.css → mesh-screen-DjA4mOaN.css} +1 -1
  316. package/dist/client/assets/mesh-view-store-CliSYsmt.js +1 -0
  317. package/dist/client/assets/{message-circle-joGFxfj1.js → message-circle-CSiJj6yo.js} +1 -1
  318. package/dist/client/assets/{message-markup-DC0QFEZn.js → message-markup-DgFSyb3f.js} +1 -1
  319. package/dist/client/assets/{message-square-BLiFqpe_.js → message-square-NmXWtWLR.js} +1 -1
  320. package/dist/client/assets/{message-visibility-CGOmSSKs.js → message-visibility-DwxgcgYK.js} +1 -1
  321. package/dist/client/assets/mission-control-CsX3Yc58.css +1 -0
  322. package/dist/client/assets/mission-control-model-C30vU1Fe.js +1 -0
  323. package/dist/client/assets/mission-control-store-DZ29Mlj1.js +1 -0
  324. package/dist/client/assets/{mission-wall-CocIM1cF.js → mission-wall-DOuGOxQy.js} +1 -1
  325. package/dist/client/assets/nav-destinations-CyXnw9kh.js +1 -0
  326. package/dist/client/assets/observe-CkfOxYx_.js +1 -0
  327. package/dist/client/assets/{operator-attention-RqieiSY8.js → operator-attention-DGR4kOog.js} +1 -1
  328. package/dist/client/assets/ops-screen-CxYM0VOW.css +1 -0
  329. package/dist/client/assets/page-status-CkS3SZu-.js +1 -0
  330. package/dist/client/assets/panel-right-BNTJhy8M.js +1 -0
  331. package/dist/client/assets/pause-DWS7YGQ3.js +1 -0
  332. package/dist/client/assets/{persistent-state-BubPQ7tT.js → persistent-state-xsuk6Kc-.js} +1 -1
  333. package/dist/client/assets/pin-DWlD1BOF.js +1 -0
  334. package/dist/client/assets/pip-idle-v1-Tt-CZsRG.png +0 -0
  335. package/dist/client/assets/pip-thinking-v1-BoHWSEye.png +0 -0
  336. package/dist/client/assets/pip-waiting-v1-DkuvJ-dN.png +0 -0
  337. package/dist/client/assets/pip-working-v1-wWQLRS1z.png +0 -0
  338. package/dist/client/assets/play-D_Pggug4.js +1 -0
  339. package/dist/client/assets/{plus-BWKhylds.js → plus-D_wLGJGT.js} +1 -1
  340. package/dist/client/assets/profile-C3KgiZvc.js +1 -0
  341. package/dist/client/assets/{projects-inbox-DFbgVlXL.js → projects-inbox-DvbqJO3q.js} +1 -1
  342. package/dist/client/assets/{proxy-DVDRhSRR.js → proxy-DOG46ja4.js} +1 -1
  343. package/dist/client/assets/{radio-CxIXS1nU.js → radio-C_jtwbFP.js} +1 -1
  344. package/dist/client/assets/{refresh-cw-Bkh7Cvnd.js → refresh-cw-Da9DDLk2.js} +1 -1
  345. package/dist/client/assets/resolve-panes-DuowGRTk.js +1 -0
  346. package/dist/client/assets/resolve-sidebar-context-BkTbqteq.js +1 -0
  347. package/dist/client/assets/right-B9OUA6Ho.js +1 -0
  348. package/dist/client/assets/right-BDQnjetX.js +1 -0
  349. package/dist/client/assets/{right-DVUq5374.js → right-BLJsc2-p.js} +2 -2
  350. package/dist/client/assets/right-BUbKHmRH.js +1 -0
  351. package/dist/client/assets/right-Ci2IcD4s.js +1 -0
  352. package/dist/client/assets/right-CmCce3e5.js +1 -0
  353. package/dist/client/assets/right-D7w0zM5a.js +1 -0
  354. package/dist/client/assets/right-DIoON_bv.js +1 -0
  355. package/dist/client/assets/right-E0Jr3VN5.js +1 -0
  356. package/dist/client/assets/right-lCdAk9dW.js +1 -0
  357. package/dist/client/assets/{rocket-CnxqjX_K.js → rocket-DyrYDo8V.js} +1 -1
  358. package/dist/client/assets/router-BKiMcYa7.js +1 -0
  359. package/dist/client/assets/{runtime-picker-BYAFNLNq.css → runtime-picker-C3JwrDKP.css} +1 -1
  360. package/dist/client/assets/runtime-picker-DdsttHHc.js +1 -0
  361. package/dist/client/assets/{scope-views-KPY85UUx.js → scope-views-B7PZGlhY.js} +1 -1
  362. package/dist/client/assets/scout-voice-DOQ_B77g.js +1 -0
  363. package/dist/client/assets/{scoutbot-D7kGGyK_.js → scoutbot-Bk3nyrkj.js} +2 -2
  364. package/dist/client/assets/{scoutbot-markdown-yb87JlSE.js → scoutbot-markdown-Bz0Vbto2.js} +1 -1
  365. package/dist/client/assets/{scroll-text-DFcBYy5J.js → scroll-text-DwC8r2g6.js} +1 -1
  366. package/dist/client/assets/{search-FB2vVxCp.js → search-C4VlW_0l.js} +1 -1
  367. package/dist/client/assets/secondaryNavConfig-DAXIFtVd.js +1 -0
  368. package/dist/client/assets/{selection-bridge-qBGFCJv8.js → selection-bridge-B5jqyMR9.js} +1 -1
  369. package/dist/client/assets/{send-horizontal-CS7mxVhX.js → send-horizontal-pOtGI7FM.js} +1 -1
  370. package/dist/client/assets/send-to-agent-session-BZGq_ycy.js +1 -0
  371. package/dist/client/assets/{server-WY6gsbZz.js → server-ms1yxUYJ.js} +1 -1
  372. package/dist/client/assets/{session-catalog-CG4oL_yN.js → session-catalog-s-T_w41t.js} +1 -1
  373. package/dist/client/assets/{session-table-uJh3v-ly.js → session-table-CDx_16xf.js} +1 -1
  374. package/dist/client/assets/sessions-view-DzYGsKWS.js +1 -0
  375. package/dist/client/assets/{settings-DQEtqkM9.js → settings-TJIkkZ0P.js} +1 -1
  376. package/dist/client/assets/shared-work-artifacts-4IIQXQfc.js +1 -0
  377. package/dist/client/assets/{sliders-horizontal-57e99_qO.js → sliders-horizontal-CHf3ntw0.js} +1 -1
  378. package/dist/client/assets/solar-system-scope-2k-stars-points-1FwHnkj0.png +0 -0
  379. package/dist/client/assets/{sparkles-D0vWLTyC.js → sparkles-BbOFw3d0.js} +1 -1
  380. package/dist/client/assets/sprout-action-sprite-DZ8C0fTl.css +1 -0
  381. package/dist/client/assets/sprout-actions-proof-v1-BzUdc812.png +0 -0
  382. package/dist/client/assets/{sse-B29iGBnw.js → sse-v5QLsOHV.js} +1 -1
  383. package/dist/client/assets/system-surfaces-redesign-DKFg4GB5.css +1 -0
  384. package/dist/client/assets/{tail-display-DcliDVkW.js → tail-display-DHSNmvor.js} +2 -2
  385. package/dist/client/assets/{tail-events-LK29oCKm.js → tail-events-DQ46QBW1.js} +1 -1
  386. package/dist/client/assets/{terminal-UDy4lzV1.js → terminal-96JWDYDL.js} +1 -1
  387. package/dist/client/assets/{terminal-relay-CXHMdain.js → terminal-relay-Bfx8pg80.js} +1 -1
  388. package/dist/client/assets/terminal-screen-Bpb2SZrn.css +1 -0
  389. package/dist/client/assets/{terminal-sessions-Bdt2W3Y4.js → terminal-sessions-Ch9aYlgi.js} +1 -1
  390. package/dist/client/assets/{terminal-takeover-BMeBjBB2.js → terminal-takeover-BlpxpvSp.js} +1 -1
  391. package/dist/client/assets/use-beside-Df-F2Uvg.js +1 -0
  392. package/dist/client/assets/use-conversation-list-A_YUf8lo.js +1 -0
  393. package/dist/client/assets/{use-fleet-active-asks-CCGrll5q.js → use-fleet-active-asks-DFs_u-vM.js} +1 -1
  394. package/dist/client/assets/use-mesh-node-state-Ck9CYplv.js +1 -0
  395. package/dist/client/assets/{use-mesh-ops-items-BjyeFJTz.js → use-mesh-ops-items-Be1WmwCg.js} +1 -1
  396. package/dist/client/assets/{use-reduced-motion-CPoX8iV2.js → use-reduced-motion-D7n3vK8t.js} +1 -1
  397. package/dist/client/assets/use-scout-dev-flags-0TXfQcG0.js +1 -0
  398. package/dist/client/assets/{useAgentHoverCard-BgTLNcF-.js → useAgentHoverCard-Dr-OjNFF.js} +1 -1
  399. package/dist/client/assets/useContentSecondaryNav-CGvMOVGY.js +1 -0
  400. package/dist/client/assets/{useEmbedHeadline-DuUnwTB7.js → useEmbedHeadline-BL8wQawZ.js} +1 -1
  401. package/dist/client/assets/{usePierreRuntime-35AHf9RQ.js → usePierreRuntime-DJkRHMoe.js} +1 -1
  402. package/dist/client/assets/worker-rendered-v1-DmGVMlVi.png +0 -0
  403. package/dist/client/assets/worker-thinking-v1-ujakpzrK.png +0 -0
  404. package/dist/client/assets/worker-waiting-v1-DbTSsfJJ.png +0 -0
  405. package/dist/client/assets/worker-working-v1-BROAvJ_z.png +0 -0
  406. package/dist/client/assets/world-outposts-v1-DOt0i98W.png +0 -0
  407. package/dist/client/assets/{wrench-BfVeded5.js → wrench-BsMTSeji.js} +1 -1
  408. package/dist/client/assets/{x-DgmmnPKt.js → x-DI1ktCYb.js} +1 -1
  409. package/dist/client/assets/{xterm-DnJJmrCA.js → xterm-B1YBE4Gq.js} +1 -1
  410. package/dist/client/assets/{zap-Bcja1lHG.js → zap-sKPkh4sQ.js} +1 -1
  411. package/dist/client/characters/sage/sage.glb +0 -0
  412. package/dist/client/crew/brik-bust.webp +0 -0
  413. package/dist/client/crew/brik-chip-id.webp +0 -0
  414. package/dist/client/crew/fenn-bust.webp +0 -0
  415. package/dist/client/crew/fenn-chip-id.webp +0 -0
  416. package/dist/client/crew/lulu-bust.webp +0 -0
  417. package/dist/client/crew/milo-bust.webp +0 -0
  418. package/dist/client/crew/milo-chip-id.webp +0 -0
  419. package/dist/client/crew/nori-bust.webp +0 -0
  420. package/dist/client/crew/pip-bust.webp +0 -0
  421. package/dist/client/crew/pip-chip-id.webp +0 -0
  422. package/dist/client/crew/sheets/eye-plate-v1/blink-half.webp +0 -0
  423. package/dist/client/crew/sheets/eye-plate-v1/blink-shut.webp +0 -0
  424. package/dist/client/crew/sheets/eye-plate-v1/look-left.webp +0 -0
  425. package/dist/client/crew/sheets/eye-plate-v1/look-right.webp +0 -0
  426. package/dist/client/crew/sheets/eye-plate-v1/look-up.webp +0 -0
  427. package/dist/client/crew/sheets/eye-plate-v1/rest.webp +0 -0
  428. package/dist/client/crew/sheets/sprout/blink-half.webp +0 -0
  429. package/dist/client/crew/sheets/sprout/blink-shut.webp +0 -0
  430. package/dist/client/crew/sheets/sprout/look-left.webp +0 -0
  431. package/dist/client/crew/sheets/sprout/look-right.webp +0 -0
  432. package/dist/client/crew/sheets/sprout/look-up.webp +0 -0
  433. package/dist/client/crew/sprout-bust.webp +0 -0
  434. package/dist/client/crew/sprout-chip-id.webp +0 -0
  435. package/dist/client/crew/tuck-bust.webp +0 -0
  436. package/dist/client/crew/tuck-chip-id.webp +0 -0
  437. package/dist/client/crew/vex-bust.webp +0 -0
  438. package/dist/client/crew/vex-chip-id.webp +0 -0
  439. package/dist/client/crew/wrench-bust.webp +0 -0
  440. package/dist/client/crew/wrench-chip-id.webp +0 -0
  441. package/dist/client/index.html +2 -2
  442. package/dist/drizzle/0017_wise_silver_sable.sql +26 -0
  443. package/dist/drizzle/0018_message_epoch_order.sql +1 -0
  444. package/dist/drizzle/meta/0017_snapshot.json +6785 -0
  445. package/dist/drizzle/meta/0018_snapshot.json +6804 -0
  446. package/dist/drizzle/meta/_journal.json +14 -0
  447. package/dist/main.mjs +26906 -24284
  448. package/dist/node/main.mjs +7077 -6284
  449. package/dist/openscout-terminal-relay.mjs +391 -9
  450. package/dist/pairing-runtime-controller.mjs +35541 -34446
  451. package/dist/runtime/base-daemon.mjs +31 -8
  452. package/dist/runtime/broker-daemon.mjs +7864 -2578
  453. package/dist/runtime/broker-process-manager.mjs +15 -3
  454. package/dist/runtime/mesh-discover.mjs +14 -3
  455. package/dist/scout-control-plane-web.mjs +37053 -33186
  456. package/dist/statusline.mjs +1021 -35
  457. package/dist/update-helper.mjs +32169 -0
  458. package/package.json +2 -2
  459. package/dist/client/assets/ActivityScreen-sfonf5SR.js +0 -1
  460. package/dist/client/assets/AgentAvatar-Dz79iTxB.js +0 -1
  461. package/dist/client/assets/AgentConfigurationScreen-DDc3udYM.js +0 -1
  462. package/dist/client/assets/AgentDefinitionsWorkspace-DHDS9Pgd.js +0 -1
  463. package/dist/client/assets/AgentDetailCard-8viaEY8b.js +0 -1
  464. package/dist/client/assets/AgentFloorView-DuyvyMMj.js +0 -1
  465. package/dist/client/assets/AgentInfoScreen-qntgg2q2.js +0 -1
  466. package/dist/client/assets/AgentLanesEmbedScreen-BA6fRwkD.js +0 -1
  467. package/dist/client/assets/AgentLanesView-96lHsoX7.js +0 -2
  468. package/dist/client/assets/AgentLiveActions-DlSKL60c.js +0 -1
  469. package/dist/client/assets/AgentMasterScreen-DHrMuQ6_.js +0 -1
  470. package/dist/client/assets/AgentSessions-DV9v34aq.js +0 -6
  471. package/dist/client/assets/AgentsConsole-DTpVhS67.js +0 -1
  472. package/dist/client/assets/AgentsScreen-hZ4o2I-e.js +0 -1
  473. package/dist/client/assets/AgentsSubnav-Ci7uWM7P.js +0 -1
  474. package/dist/client/assets/AtopView-D7vyQDtE.js +0 -1
  475. package/dist/client/assets/BackToPicker-BHicJyfc.js +0 -1
  476. package/dist/client/assets/BriefingDetailScreen-B-wD_Bot.js +0 -1
  477. package/dist/client/assets/BriefingsScreen-Cn4Mbam9.js +0 -1
  478. package/dist/client/assets/BrokerScreen-C8FQ5rlg.js +0 -5
  479. package/dist/client/assets/ChatCollapsedStrip-7Wrg8Ge0.js +0 -1
  480. package/dist/client/assets/CodeScreen-cLC0tJ4S.js +0 -1
  481. package/dist/client/assets/ConversationFeedRows-Bx0gFyG_.js +0 -1
  482. package/dist/client/assets/ConversationHeader-Bt2RBj93.js +0 -1
  483. package/dist/client/assets/ConversationPanels-o6W-cOoU.js +0 -6
  484. package/dist/client/assets/ConversationScreen-CkWnKXt6.css +0 -1
  485. package/dist/client/assets/ConversationScreen-DIU7m_aC.js +0 -2
  486. package/dist/client/assets/ConversationStatus-CTYOywFh.js +0 -1
  487. package/dist/client/assets/CrewWorkspaces-DNX-QQ1h.js +0 -1
  488. package/dist/client/assets/DispatchAftermath-ZCEB75hh.js +0 -1
  489. package/dist/client/assets/DocumentFocusViewer-D8iB6SMt.js +0 -1
  490. package/dist/client/assets/FlightObserveScreen-BTe1YRPr.js +0 -1
  491. package/dist/client/assets/FollowScreen-CkR-okdL.js +0 -1
  492. package/dist/client/assets/HarnessesScreen-COO_Q8VY.js +0 -1
  493. package/dist/client/assets/HostAdvisorView-DeJ-8RZV.js +0 -1
  494. package/dist/client/assets/KnowledgeSearchInspector-W_zNIBRV.js +0 -1
  495. package/dist/client/assets/KnowledgeSearchScreen-_rxJNUUh.js +0 -1
  496. package/dist/client/assets/LaneTraceDetailSheet-DNIECgEl.js +0 -1
  497. package/dist/client/assets/MeshCanvas-DZv2ipsy.js +0 -3
  498. package/dist/client/assets/MeshCanvasMinimap-BXHRNb7l.js +0 -1
  499. package/dist/client/assets/MeshScreen-DuNvpDC5.js +0 -1
  500. package/dist/client/assets/MessagesScreen-dNNPFwAc.js +0 -1
  501. package/dist/client/assets/MissionContextRail-DnCWPzAM.js +0 -1
  502. package/dist/client/assets/MissionControlView-DmaThhNR.js +0 -1
  503. package/dist/client/assets/MissionFocusOverlay-K21ssTxv.js +0 -1
  504. package/dist/client/assets/MissionLeftAgentRow-CbQm4BLv.js +0 -1
  505. package/dist/client/assets/MissionLogPane-BLvSSIdT.js +0 -1
  506. package/dist/client/assets/NewAgentModal-B7qxjZlW.js +0 -1
  507. package/dist/client/assets/NewChatComposer-D2Ah4T-W.js +0 -19
  508. package/dist/client/assets/ObserveEmbedScreen-DvKGsaLv.js +0 -2
  509. package/dist/client/assets/OpenScoutAppShell-C9TOLB7u.js +0 -79
  510. package/dist/client/assets/OpsAgentsView-vIoY-AW1.js +0 -1
  511. package/dist/client/assets/OpsScreen-CJBwshEp.js +0 -1
  512. package/dist/client/assets/OpsSubnav-CjDTnp64.js +0 -1
  513. package/dist/client/assets/ProjectAgentProfile-Br1eTD7G.js +0 -1
  514. package/dist/client/assets/ProjectAgentProfileHero-mjxNcRvw.js +0 -1
  515. package/dist/client/assets/ProjectsInbox-Bq29DE_o.js +0 -2
  516. package/dist/client/assets/ProjectsRail-kMDA0yn4.js +0 -1
  517. package/dist/client/assets/ProjectsScreen-BDaJYhc0.js +0 -1
  518. package/dist/client/assets/ProjectsThreadAside-B940p3vW.js +0 -1
  519. package/dist/client/assets/Provider-D0bB7q6y.js +0 -1
  520. package/dist/client/assets/RailRow-B88JVr62.js +0 -1
  521. package/dist/client/assets/RawSessionsTable-CzGhEdiZ.js +0 -1
  522. package/dist/client/assets/RealtimeVoiceScreen-CyP1CWsX.js +0 -1
  523. package/dist/client/assets/RepoDiffViewer-Bw5yMC4A.js +0 -7
  524. package/dist/client/assets/RepoDiffViewerLazy-DzfoFhbl.js +0 -2
  525. package/dist/client/assets/ScoutDeckSurface-DQoZofzH.js +0 -1
  526. package/dist/client/assets/SessionEmbedScreen-CpduQ0O9.js +0 -1
  527. package/dist/client/assets/SessionObserve-BVeTkcIl.js +0 -12
  528. package/dist/client/assets/SessionObserveEvidence-BkOezTGV.js +0 -1
  529. package/dist/client/assets/SessionRefScreen-DetLMkTT.js +0 -1
  530. package/dist/client/assets/SessionsScreen-B-McKw6d.js +0 -1
  531. package/dist/client/assets/SettingsDrawer-CPB32w0n.js +0 -3
  532. package/dist/client/assets/SettingsScreen-BEzYFdjz.js +0 -1
  533. package/dist/client/assets/SpriteAvatar-DFO4Kb4Z.js +0 -1
  534. package/dist/client/assets/Terminal-DWyZTZdY.js +0 -1
  535. package/dist/client/assets/TerminalEmbedScreen-_SSzwhWa.js +0 -1
  536. package/dist/client/assets/TerminalHeaderMount-CY7uIWBg.js +0 -1
  537. package/dist/client/assets/WorkFilesViewer-D8-4vF5l.js +0 -1
  538. package/dist/client/assets/agent-autocomplete-BlK8wY06.js +0 -10
  539. package/dist/client/assets/agent-lane-card-model-CY3OE1Xu.js +0 -1
  540. package/dist/client/assets/agent-lanes-model-tc-1hE6q.js +0 -2
  541. package/dist/client/assets/agent-master-I1W-5d-x.css +0 -1
  542. package/dist/client/assets/agent-master-model-DMcHeNq3.js +0 -1
  543. package/dist/client/assets/api-Co9aQ2Jw.js +0 -1
  544. package/dist/client/assets/broker-display-Q75fupqG.js +0 -2
  545. package/dist/client/assets/chunk-JTPDIGGW-COJ00z94.js +0 -46
  546. package/dist/client/assets/chunk-YOZR3KYS-CrCgXw9l.js +0 -2
  547. package/dist/client/assets/colors-BtO5_zlx.js +0 -1
  548. package/dist/client/assets/content-0RBfbCIJ.js +0 -1
  549. package/dist/client/assets/content-BTmnk2bl.js +0 -1
  550. package/dist/client/assets/content-Bk5DKhyP.js +0 -1
  551. package/dist/client/assets/content-Bw_8GE_S.js +0 -1
  552. package/dist/client/assets/content-CI4gLEWi.js +0 -1
  553. package/dist/client/assets/content-CLCtp9Rb.js +0 -1
  554. package/dist/client/assets/content-C_FAGTNk.js +0 -1
  555. package/dist/client/assets/content-CnnzWOE3.js +0 -1
  556. package/dist/client/assets/content-DKlY98pO.js +0 -1
  557. package/dist/client/assets/content-Df7ndXTG.js +0 -1
  558. package/dist/client/assets/content-DkZDzzx3.js +0 -1
  559. package/dist/client/assets/content-DnGmb2L0.js +0 -1
  560. package/dist/client/assets/content-Ds-zs-Ss.js +0 -1
  561. package/dist/client/assets/content-JIWSyC0f.js +0 -1
  562. package/dist/client/assets/content-Q3TIYC8q.js +0 -1
  563. package/dist/client/assets/content-evaBfvxD.js +0 -1
  564. package/dist/client/assets/conversation-model-C2KuZUXc.js +0 -1
  565. package/dist/client/assets/conversation-motion-features-BJnHs3Ul.js +0 -1
  566. package/dist/client/assets/discover-DutlV0ZU.js +0 -2
  567. package/dist/client/assets/embed-entry-CJG7WEVw.js +0 -2
  568. package/dist/client/assets/home-moving-signal-PHSqSBu_.js +0 -1
  569. package/dist/client/assets/home-now-card-C_qsI6C6.js +0 -1
  570. package/dist/client/assets/hooks-ME7rmhpE.js +0 -2
  571. package/dist/client/assets/index-C8UCRm2W.js +0 -1
  572. package/dist/client/assets/index-Cn0I2Hgi.js +0 -1
  573. package/dist/client/assets/index-Cx6Gbr6n.js +0 -1
  574. package/dist/client/assets/index-i7TMxlwW.css +0 -1
  575. package/dist/client/assets/knowledge-search-D_bLoYtC.css +0 -1
  576. package/dist/client/assets/lane-roster-store-DN2jxXF-.js +0 -1
  577. package/dist/client/assets/left-BRu9pnqx.js +0 -2
  578. package/dist/client/assets/left-BjS1dKNV.js +0 -2
  579. package/dist/client/assets/left-CL-TVLJ7.js +0 -1
  580. package/dist/client/assets/left-DLpsDi55.js +0 -1
  581. package/dist/client/assets/left-DPcM9o8Y.js +0 -1
  582. package/dist/client/assets/left-MmTJf1tK.js +0 -1
  583. package/dist/client/assets/left-P80i5V8L.js +0 -1
  584. package/dist/client/assets/left-advisor-CbXVzAqS.js +0 -1
  585. package/dist/client/assets/left-agents-7mJsiNyr.js +0 -1
  586. package/dist/client/assets/left-default-COK26l3H.js +0 -1
  587. package/dist/client/assets/left-lanes-Dbdm9Veu.js +0 -1
  588. package/dist/client/assets/left-mission-DSenPIyb.css +0 -1
  589. package/dist/client/assets/left-mission-DqGR5jby.js +0 -1
  590. package/dist/client/assets/library-COnWzUWv.js +0 -1
  591. package/dist/client/assets/mentions-BZ5SBMtc.js +0 -1
  592. package/dist/client/assets/mesh-buckets-CLYS8Jx8.js +0 -1
  593. package/dist/client/assets/mesh-view-store-CBM1za_N.js +0 -1
  594. package/dist/client/assets/mission-control-CnU7dNt1.css +0 -1
  595. package/dist/client/assets/mission-control-model-C0fByIjm.js +0 -1
  596. package/dist/client/assets/mission-control-store-CM8mQGg8.js +0 -1
  597. package/dist/client/assets/observe-BLmy4quB.js +0 -1
  598. package/dist/client/assets/ops-screen-giu3If_N.css +0 -1
  599. package/dist/client/assets/page-status-BE0-J1xY.js +0 -1
  600. package/dist/client/assets/paperclip-Br7wUDFl.js +0 -1
  601. package/dist/client/assets/perf-PX8Rx0EP.js +0 -1
  602. package/dist/client/assets/profile-BCvk8jOQ.js +0 -1
  603. package/dist/client/assets/resolve-panes-DhD5qmQO.js +0 -1
  604. package/dist/client/assets/resolve-sidebar-context-GqhZNRPY.js +0 -1
  605. package/dist/client/assets/right-B_08ilv6.js +0 -1
  606. package/dist/client/assets/right-Brm67HOL.js +0 -1
  607. package/dist/client/assets/right-BveAPKBW.js +0 -1
  608. package/dist/client/assets/right-CpTB_-Ya.js +0 -1
  609. package/dist/client/assets/right-CqC4Qdot.js +0 -1
  610. package/dist/client/assets/right-D91j9d5Y.js +0 -1
  611. package/dist/client/assets/right-DaLRhYl3.js +0 -1
  612. package/dist/client/assets/right-Dt1wOwA5.js +0 -1
  613. package/dist/client/assets/right-DtzqIZQF.js +0 -1
  614. package/dist/client/assets/router-kfcaYqZr.js +0 -1
  615. package/dist/client/assets/runtime-picker-C20lTGhV.js +0 -1
  616. package/dist/client/assets/scout-voice-Cg1qfepC.js +0 -1
  617. package/dist/client/assets/secondaryNavConfig-C0Srrmy8.js +0 -1
  618. package/dist/client/assets/system-surfaces-redesign-kuf3wuE_.css +0 -1
  619. package/dist/client/assets/terminal-screen-vMICbBJh.css +0 -1
  620. package/dist/client/assets/use-conversation-list-UG-tMN67.js +0 -1
  621. package/dist/client/assets/use-scout-dev-flags-DTseRrFi.js +0 -1
  622. package/dist/client/assets/useContentSecondaryNav-CoIoz7JU.js +0 -1
package/NOTICE CHANGED
@@ -12,3 +12,10 @@ distributed under the License is distributed on an "AS IS" BASIS,
12
12
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
13
  See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
+
16
+ This product includes a star-field texture by Solar System Scope
17
+ (https://www.solarsystemscope.com/textures/), licensed under the
18
+ Creative Commons Attribution 4.0 International license
19
+ (https://creativecommons.org/licenses/by/4.0/). The island halo map is
20
+ an OpenScout derivative of the 2k stars texture with black made
21
+ transparent.
package/bin/scoutd CHANGED
Binary file
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "packageName": "@openscout/scout",
4
- "version": "0.2.98",
5
- "commit": "cc2fdb7c3b9205eccdb429e8c65fc48d72c5e1d6",
4
+ "version": "0.2.102",
5
+ "commit": "c50900700bff66c1b1947d3413e54a7b1279d581",
6
6
  "branch": "HEAD",
7
7
  "sourceDirty": false,
8
- "builtAt": "2026-09-05T20:59:15.503Z"
8
+ "builtAt": "2026-09-14T18:49:27.881Z"
9
9
  }
@@ -0,0 +1 @@
1
+ import{r as t,j as s}from"./index-C8uS5szO.js";import{p as Y,a as J}from"./api-CaROe5_H.js";import{c as k}from"./clipboard-e3fSpeo7.js";import{u as Q}from"./sse-v5QLsOHV.js";import{a as Z}from"./colors-CFlbwC25.js";import{m as ss,a as es}from"./machine-scope-DJt9RZ2w.js";import{b as as}from"./router-BKiMcYa7.js";import{r as B}from"./mentions-Ctw1ECUC.js";import{t as I,b as U}from"./time-Dhsh_2EG.js";import{u as ts,a as ns}from"./Provider-5Hotn7NQ.js";import{E as C}from"./EmptyState-uyYN5piI.js";/* empty css */import"./index-BWHgHrtv.js";import"./agent-state-DDhnFEEP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Ch9aYlgi.js";import"./index-C5cX8dkl.js";import"./AgentDetailCard-CFDE8TLi.js";import"./AgentLiveActions-lYzicnNa.js";import"./terminal-takeover-BlpxpvSp.js";import"./openContent-C6XO6kr5.js";import"./eye-CtqSV8BS.js";import"./createLucideIcon-DkjnzvcJ.js";import"./terminal-96JWDYDL.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-JjLbm3W2.js";import"./runtime-picker-DdsttHHc.js";import"./scout-voice-DOQ_B77g.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DurUYl7E.js";import"./conversation-model-BGFHoxQ0.js";import"./conversations-Cbg9h_Af.js";import"./HarnessMark-Bt47OeHy.js";import"./NewChatOrigin-CyPPWTJP.js";import"./keyboard-nav-CXfav14z.js";import"./x-DI1ktCYb.js";import"./chevron-down-B5eMsn5c.js";import"./search-C4VlW_0l.js";import"./file-text-ChtICwub.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-f12RRQpV.js";import"./TextDocumentSurface-BhYvAB0o.js";import"./index-CvsM3jm8.js";import"./chevron-right-C7UGFpkl.js";import"./folder-0fWevPvQ.js";import"./chevron-up-BHOEgHcn.js";import"./code-xml-BmyLM0I2.js";import"./arrow-left-PuKdO3NM.js";import"./arrow-right-ldbfp4SZ.js";import"./chunk-HRAB3GC3-C5X-kFhb.js";const is=3e4,ls={"agent.registered":"registered","agent.online":"came online","agent.offline":"went offline","flight.started":"started task","message.sent":"sent message","message.received":"received message","collaboration.ask":"asked a question","collaboration.answer":"answered",ask_sent:"sent a request",ask_working:"working",flight_created:"started task",message_sent:"sent",message_received:"received"},rs=new Set(["ask_failed","ask_replied","flight.completed","flight.updated","flight_updated"]),os={presence:{label:"Presence",tone:"notice"},work:{label:"Execution",tone:"working"},message:{label:"Delivery",tone:"completed"},collaboration:{label:"Coordination",tone:"working"},system:{label:"System",tone:"notice"}};function q(a){return ls[a]??a.replace(/[._]/g," ")}function cs(a){return a.startsWith("agent.")||a.includes("registered")||a.includes("online")||a.includes("offline")?"presence":a.startsWith("flight")||a.startsWith("ask_")?"work":a.startsWith("message")?"message":a.startsWith("collaboration")?"collaboration":"system"}function ds(a){return(a??"system").charAt(0).toUpperCase()}function u(a){return a.length<=14?a:`${a.slice(0,8)}...${a.slice(-4)}`}function us(a){if(!a)return null;const p=a.split("/").filter(Boolean);return p[p.length-1]??a}function ps(a){return`${a.actorName??"system"} ${q(a.kind)}`}function hs(a){return a.workspaceRoot?`Recorded from ${a.workspaceRoot}.`:a.conversationId?`Linked to thread ${u(a.conversationId)}.`:"No additional detail was captured for this event."}function pe({navigate:a}){const{agents:p,route:z}=ts(),[w]=t.useState(()=>Y("/api/activity",is)),[g,F]=t.useState(w??[]),[x,S]=t.useState(null),[y,R]=t.useState(w===null),[_,T]=t.useState(!1),[h,E]=t.useState(null),[N,G]=t.useState(null),$=t.useRef(w??[]),b=t.useRef(0),f=t.useRef(null),K=ns(),L=as(z),D=t.useMemo(()=>ss(p,L),[p,L]),i=t.useMemo(()=>es(g,D).filter(e=>!rs.has(e.kind)),[g,D]);t.useEffect(()=>{$.current=g},[g]),t.useEffect(()=>{x&&!i.some(e=>e.id===x)&&S(null)},[x,i]);const m=t.useCallback(async(e="initial")=>{const l=++b.current;!($.current.length>0)&&e!=="background"?(R(!0),E(null)):T(!0);try{const o=await J("/api/activity");if(l!==b.current)return;F(o),E(null),G(Date.now()),S(v=>o.some(A=>A.id===v)?v:null)}catch(o){if(l!==b.current)return;E(o instanceof Error?o.message:String(o))}finally{l===b.current&&(R(!1),T(!1))}},[]),P=t.useCallback(()=>{f.current||(f.current=setTimeout(()=>{f.current=null,m("background")},250))},[m]);t.useEffect(()=>(m("initial"),()=>{f.current&&clearTimeout(f.current)}),[m]),Q(P);const H=t.useMemo(()=>{const e=new Set(i.map(c=>c.actorName??"system")),l=new Set(i.map(c=>c.conversationId).filter(c=>!!c));return[{label:"Events",value:`${i.length}`,detail:i.length>0?`Latest ${I(i[0].ts)}`:"Waiting for records"},{label:"Actors",value:`${e.size}`,detail:e.size>0?"Distinct event owners":"No actors yet"},{label:"Threads",value:`${l.size}`,detail:l.size>0?"Conversation-linked records":"No linked threads"}]},[i]),V=!y&&i.length===0&&!!h,X=!y&&i.length===0&&!h;return s.jsxs("div",{className:"sys-surface-page",children:[s.jsxs("div",{className:"sys-page-head",children:[s.jsxs("div",{className:"sys-page-title-group",children:[s.jsx("h2",{className:"sys-page-title",children:"Activity Log"}),s.jsx("p",{className:"sys-page-subtitle",children:"Broker events, task execution, and collaboration handoffs."})]}),s.jsxs("div",{className:"sys-page-actions",children:[s.jsx("div",{className:"sys-sync-note",children:y?"Loading audit ledger...":h&&i.length>0?`Showing last confirmed snapshot from ${N?I(N):"earlier"}`:N?`Updated ${I(N)}`:"Waiting for first snapshot"}),s.jsx("button",{type:"button",className:"s-btn",disabled:y||_,onClick:()=>{m("manual")},children:_?"Refreshing...":"Refresh"})]})]}),s.jsx("div",{className:"sys-stat-grid",children:H.map(e=>s.jsxs("div",{className:"sys-stat-card",children:[s.jsx("span",{className:"sys-stat-label",children:e.label}),s.jsx("strong",{className:"sys-stat-value",children:e.value}),s.jsx("span",{className:"sys-stat-detail",children:e.detail})]},e.label))}),h&&i.length>0&&s.jsxs("div",{className:"sys-banner sys-banner-warning",children:[s.jsx("strong",{children:"Refresh failed."}),s.jsx("span",{children:h})]}),y&&i.length===0&&s.jsx(C,{title:"Loading activity",body:"Pulling the latest records from the broker database."}),V&&s.jsx(C,{className:"sys-state-card-error",title:"Activity is unavailable",body:h,action:s.jsx("button",{type:"button",className:"s-btn",onClick:()=>{m("manual")},children:"Try again"})}),X&&s.jsx(C,{title:"No activity yet",body:"Events appear here after agents register, send messages, or advance work."}),i.length>0&&s.jsx("div",{className:"sys-audit-list",children:i.map(e=>{const l=x===e.id,c=cs(e.kind),o=os[c],v=us(e.workspaceRoot),A=e.summary&&e.summary!==e.title?e.summary:hs(e),r=[];if(e.conversationId&&r.push({key:"thread",label:"Thread",title:`Open thread ${u(e.conversationId)}`,route:{view:"conversation",conversationId:e.conversationId}}),e.recordId&&r.push({key:"work",label:"Work",title:"Open work item",route:{view:"work",workId:e.recordId}}),e.agentId){const n=e.agentName??"Agent";r.push({key:"agent",label:n,title:`Open agent ${n}`,route:{view:"agents-v2",agentId:e.agentId}})}e.sessionId&&r.push({key:"session",label:"Session",title:"Open session",route:{view:"sessions",sessionId:e.sessionId}}),(e.flightId||e.invocationId)&&r.push({key:"follow",label:"Follow",title:"Follow live execution",route:{view:"follow",...e.flightId?{flightId:e.flightId}:{},...e.invocationId?{invocationId:e.invocationId}:{},...e.conversationId?{conversationId:e.conversationId}:{}}});const M=()=>S(l?null:e.id);return s.jsxs("article",{className:`sys-audit-entry${l?" sys-audit-entry-expanded":""}`,onContextMenu:n=>{const j=window.getSelection()?.toString().trim(),d=[];j&&(d.push({kind:"action",label:"Copy Selection",shortcut:"⌘C",onSelect:()=>{k(j)}}),d.push({kind:"separator"}));const W=e.title??e.summary??"";if(W&&d.push({kind:"action",label:"Copy Details",onSelect:()=>{k(W)}}),e.actorName&&d.push({kind:"action",label:"Copy Actor",onSelect:()=>{k(e.actorName)}}),d.push({kind:"action",label:"Copy Event ID",onSelect:()=>{k(e.id)}}),r.length>0){d.push({kind:"separator"});for(const O of r)d.push({kind:"action",label:`Open ${O.label}`,onSelect:()=>a(O.route)})}K(n,d)},children:[s.jsxs("div",{className:"sys-audit-toggle",role:"button",tabIndex:0,"aria-expanded":l,onClick:M,onKeyDown:n=>{(n.key==="Enter"||n.key===" ")&&(n.preventDefault(),M())},children:[s.jsxs("div",{className:"sys-audit-stamp",children:[s.jsx("span",{className:"sys-audit-time",children:I(e.ts)}),s.jsx("span",{className:"sys-audit-date",children:U(e.ts)})]}),s.jsx("div",{className:`sys-audit-marker sys-audit-marker-${o.tone}`,children:s.jsx("span",{})}),s.jsxs("div",{className:"sys-audit-body",children:[s.jsxs("div",{className:"sys-audit-topline",children:[s.jsx("span",{className:"sys-audit-category",children:o.label}),s.jsx("span",{className:"sys-audit-kind",children:q(e.kind)})]}),s.jsx("h3",{className:"sys-audit-title",children:B(e.title??ps(e))}),s.jsx("p",{className:"sys-audit-summary",children:B(A)}),s.jsxs("div",{className:"sys-audit-meta",children:[s.jsxs("span",{className:"sys-audit-meta-item",children:[s.jsx("span",{className:"sys-audit-avatar",style:{background:Z(e.actorName??"system")},children:ds(e.actorName)}),e.actorName??"system"]}),v&&s.jsxs("span",{className:"sys-audit-meta-item",children:["Workspace ",v]})]}),r.length>0&&s.jsxs("div",{className:"sys-audit-jumps",children:[s.jsx("span",{className:"sys-audit-jumps-label",children:"Open"}),r.map(n=>s.jsx("button",{type:"button",className:"sys-audit-jump",title:n.title,onClick:j=>{j.stopPropagation(),a(n.route)},children:n.label},n.key))]})]}),s.jsx("div",{className:"sys-audit-expand",children:l?"Close":"Details"})]}),l&&s.jsxs("div",{className:"sys-audit-details",children:[s.jsxs("div",{className:"sys-detail-grid",children:[s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Event"}),s.jsx("code",{className:"sys-detail-value",children:e.kind})]}),s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Recorded"}),s.jsx("span",{className:"sys-detail-value",children:U(e.ts)})]}),s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Actor"}),s.jsx("span",{className:"sys-detail-value",children:e.actorName??"system"})]}),e.agentName&&s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Agent"}),s.jsx("span",{className:"sys-detail-value",children:e.agentName})]}),s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Workspace"}),s.jsx("span",{className:"sys-detail-value",children:e.workspaceRoot??"Not attached"})]}),s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Thread"}),s.jsx("span",{className:"sys-detail-value",children:e.conversationId?u(e.conversationId):"Not attached"})]}),e.recordId&&s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Work"}),s.jsx("span",{className:"sys-detail-value",children:u(e.recordId)})]}),e.sessionId&&s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Session"}),s.jsx("span",{className:"sys-detail-value",children:u(e.sessionId)})]}),e.flightId&&s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Flight"}),s.jsx("span",{className:"sys-detail-value",children:u(e.flightId)})]}),e.invocationId&&s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Invocation"}),s.jsx("span",{className:"sys-detail-value",children:u(e.invocationId)})]}),s.jsxs("div",{className:"sys-detail-card",children:[s.jsx("span",{className:"sys-detail-label",children:"Record id"}),s.jsx("code",{className:"sys-detail-value",children:e.id})]})]}),r.length>0&&s.jsx("div",{className:"sys-inline-actions",children:r.map(n=>s.jsxs("button",{type:"button",className:"s-btn s-btn-sm",onClick:()=>a(n.route),children:["Open ",n.label]},n.key))})]})]},e.id)})})]})}export{pe as ActivityScreen};
@@ -1 +1 @@
1
- import{r as n,j as o}from"./index-C1VaWNuD.js";import{a as y}from"./api-Co9aQ2Jw.js";import{c as j}from"./createLucideIcon-Dv8H8m7J.js";const m=[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],f=j("folder-plus",m);function h({onClose:p}){const[d,l]=n.useState(""),[r,c]=n.useState(!1),[i,a]=n.useState(null),u=async()=>{const e=d.trim();if(!(!e||r)){c(!0),a(null);try{const t=await y("/api/projects/add",{method:"POST",body:JSON.stringify({root:e})}),s=t.projects[0]?.title??null;t.alreadyRegistered?a({text:s?`/${s} is already registered`:"Already registered",tone:"ok"}):s?(a({text:`Registered /${s}`,tone:"ok"}),l("")):a({text:"Root added, but no project found there yet",tone:"error"})}catch(t){a({text:t instanceof Error?t.message:String(t),tone:"error"})}finally{c(!1)}}};return o.jsxs("div",{className:"pi-addProject",children:[o.jsxs("div",{className:"pi-addProjectBox","data-busy":r||void 0,children:[o.jsx(f,{size:13,strokeWidth:1.8,"aria-hidden":!0}),o.jsx("input",{className:"pi-addProjectInput",type:"text",value:d,placeholder:"~/dev/my-project","aria-label":"Project folder path",autoFocus:!0,disabled:r,spellCheck:!1,onChange:e=>l(e.currentTarget.value),onKeyDown:e=>{e.key==="Enter"&&u(),e.key==="Escape"&&p()}}),o.jsx("button",{type:"button",className:"pi-addProjectSubmit",disabled:r||!d.trim(),onClick:()=>{u()},children:r?"Adding...":"Add"})]}),i?o.jsx("div",{className:"pi-addProjectNote","data-tone":i.tone,role:"status",children:i.text}):null]})}const k=Object.freeze(Object.defineProperty({__proto__:null,AddProjectForm:h},Symbol.toStringTag,{value:"Module"}));export{h as A,f as F,k as a};
1
+ import{r as n,j as o}from"./index-C8uS5szO.js";import{a as y}from"./api-CaROe5_H.js";import{c as j}from"./createLucideIcon-DkjnzvcJ.js";const m=[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],f=j("folder-plus",m);function h({onClose:p}){const[d,l]=n.useState(""),[r,c]=n.useState(!1),[i,a]=n.useState(null),u=async()=>{const e=d.trim();if(!(!e||r)){c(!0),a(null);try{const t=await y("/api/projects/add",{method:"POST",body:JSON.stringify({root:e})}),s=t.projects[0]?.title??null;t.alreadyRegistered?a({text:s?`/${s} is already registered`:"Already registered",tone:"ok"}):s?(a({text:`Registered /${s}`,tone:"ok"}),l("")):a({text:"Root added, but no project found there yet",tone:"error"})}catch(t){a({text:t instanceof Error?t.message:String(t),tone:"error"})}finally{c(!1)}}};return o.jsxs("div",{className:"pi-addProject",children:[o.jsxs("div",{className:"pi-addProjectBox","data-busy":r||void 0,children:[o.jsx(f,{size:13,strokeWidth:1.8,"aria-hidden":!0}),o.jsx("input",{className:"pi-addProjectInput",type:"text",value:d,placeholder:"~/dev/my-project","aria-label":"Project folder path",autoFocus:!0,disabled:r,spellCheck:!1,onChange:e=>l(e.currentTarget.value),onKeyDown:e=>{e.key==="Enter"&&u(),e.key==="Escape"&&p()}}),o.jsx("button",{type:"button",className:"pi-addProjectSubmit",disabled:r||!d.trim(),onClick:()=>{u()},children:r?"Adding...":"Add"})]}),i?o.jsx("div",{className:"pi-addProjectNote","data-tone":i.tone,role:"status",children:i.text}):null]})}const k=Object.freeze(Object.defineProperty({__proto__:null,AddProjectForm:h},Symbol.toStringTag,{value:"Module"}));export{h as A,f as F,k as a};
@@ -0,0 +1,5 @@
1
+ import{j as e}from"./index-C8uS5szO.js";import{u as E}from"./Provider-5Hotn7NQ.js";import{a as M,c as P,d as O}from"./adventure-playback-DTfkhIc0.js";import{b as W}from"./agent-lane-detail-Db7KyAlf.js";/* empty css */import{B as L}from"./book-open-BlJnpf2U.js";import{c as S}from"./createLucideIcon-DkjnzvcJ.js";import{A as R}from"./arrow-up-right-Hn754ybA.js";const T=[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]],B=S("flask-conical",T);const F=[["path",{d:"m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9",key:"1hayfq"}],["path",{d:"m18 15 4-4",key:"16gjal"}],["path",{d:"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5",key:"15ts47"}]],H=S("hammer",F);function b(i){const o=[];for(const t of i.split("/"))!t||t==="."||(t===".."&&o.length&&o.at(-1)!==".."?o.pop():(t!==".."||!i.startsWith("/"))&&o.push(t));return`${i.startsWith("/")?"/":""}${o.join("/")}`}function y(i){return i.length<1024&&!/[\n\r\0*?<>|;$`]/.test(i)&&!i.startsWith("-")&&/(?:\/|\.[a-zA-Z0-9]{1,12}$)/.test(i)&&!/^\w+:\/\//.test(i)}function V(i){const o=i?.trim()??"";try{const t=JSON.parse(o);if(t&&typeof t=="object"&&!Array.isArray(t)){const m=[t.path,t.file_path,t.filePath,t.filename].filter(s=>typeof s=="string"&&y(s)),r=t.cmd??t.command;return{paths:m,command:typeof r=="string"?r:Array.isArray(r)?r.filter(s=>typeof s=="string").join(" "):""}}}catch{}return{paths:y(o)&&!/\s/.test(o)?[o]:[],command:o}}function Z(i){const o=[];let t="";const m=i.split(`
2
+ `).filter(r=>{if(t)return r.trim()===t&&(t=""),!1;const s=/<<-?\s*['"]?([A-Za-z_][\w]*)['"]?/.exec(r);return s&&(t=s[1]),!0}).join(`
3
+ `);for(const[r,...s]of O(m)){const u=r.split("/").at(-1)??"";if(!["cat","head","tail","sed","rg","grep"].includes(u)||u==="sed"&&s.some(d=>/^-i|^--in-place/.test(d)))continue;const c=u==="rg"||u==="grep";let p=!1,n=!0;const l=[];for(let d=0;d<s.length;d++){const h=s[d];if(n&&h==="--"){n=!1;continue}if(n&&h.startsWith("-")){if(h==="--files"){p=!0;continue}if(["-e","--regexp","-f","--file"].includes(h)){p=!0,d++;continue}if(/^-[ef].+/.test(h)||/^--(?:regexp|file)=/.test(h)){p=!0;continue}(["-n","-c"].includes(h)&&!c&&u!=="sed"||["--max-count","-m","--glob","-g","--type","-t","--encoding","--context","-A","-B","-C","--include","--exclude","--exclude-dir","--iglob","--max-depth"].includes(h))&&d++;continue}if((c||u==="sed")&&!p){p=!0;continue}if([">",">>","<","2>"].includes(h))break;l.push(h)}for(const d of l)(y(d)||c&&/^[A-Za-z0-9_./-]+$/.test(d))&&o.push({path:d,search:c})}return o}function q(i,o,t){const m=new Map,r=new Map,s=[],u=new Set,c=t.facts?.cwd||W(t).cwd||"",p=Number.isFinite(o)?Math.min(Math.floor(o),i.length-1):-1;for(const n of i.slice(0,Math.max(0,p+1))){if(u.has(n.event.id))continue;u.add(n.event.id);const l=n.event;if(l.kind!=="tool")continue;const d=V(l.arg),h=l.tool?.toLowerCase()??"",x=M(n),N=x!==null,w=!!l.diff||/(?:edit|write|apply_patch|str_replace)/.test(h),z=/(?:read|search|find|view|open)/.test(h),A=new Set(!N&&(z||w)?d.paths:[]);if(w)for(const a of`${l.arg??""}
4
+ ${l.diff?.preview??""}`.matchAll(/^(?:\*\*\* (?:Update|Add|Delete) File: |(?:\+\+\+|---) [ab]\/)(.+)$/gm))y(a[1])&&A.add(a[1]);const k=new Set;if(x)for(const a of Z(x))A.add(a.path),a.search&&k.add(a.path);const C=w?r:m;for(const a of A){const f=k.has(a),j=f?null:a.startsWith("/")?b(a):c.startsWith("/")?b(`${c}/${a}`):null,g=j??b(a),v=C.get(g);v?v.observations++:C.set(g,{path:b(a),resolvedPath:j,observations:1,clue:f?"Search scope":l.tool||n.label})}if(x!==null&&P(x)){const a=l.result,f=a?.exit_code??a?.exitCode,j=typeof f=="number"?f:typeof f=="string"&&/^-?\d+$/.test(f)?Number(f):void 0,g=l.text==="Command completed"?`Observed command completion · ${Object.entries(a??{}).map(([$,_])=>`${$}: ${_}`).join(" · ")||"Exit unavailable"}`:a?Object.entries(a).map(([$,_])=>`${$}: ${_}`).join(" · "):l.stream?.join(`
5
+ `)||"Result unavailable in these observations",v=j;s.push({id:n.id,command:x,outcome:v===void 0?"unavailable":v===0?"passed":"failed",clue:g})}}return{read:[...m.values()],changed:[...r.values()],runs:s}}function I({stops:i,index:o,lane:t,onFile:m}){const{openFilePreview:r}=E(),s=q(i,o,t),u=(c,p)=>c.length?e.jsx("ul",{children:c.map(n=>e.jsxs("li",{children:[n.resolvedPath?e.jsxs("button",{type:"button",title:n.path,onClick:()=>(m??r)(n.resolvedPath),children:[e.jsx("span",{children:n.path}),e.jsx(R,{size:12})]}):e.jsx("code",{children:n.path}),e.jsxs("small",{children:[n.clue,n.observations>1?` · ${n.observations} observations`:""]})]},n.resolvedPath??n.path))}):e.jsx("p",{children:p});return e.jsxs("aside",{className:"adventure-evidence","aria-label":"Evidence collected through playhead",children:[e.jsxs("header",{children:[e.jsx("strong",{children:"Collected along the way"}),e.jsx("small",{children:"Through this observation · file previews show current contents"})]}),e.jsxs("div",{className:"adventure-evidence__shelves",children:[e.jsxs("section",{children:[e.jsxs("h3",{children:[e.jsx(L,{size:16}),"Explored ",e.jsx("span",{children:s.read.length})]}),u(s.read,"No file paths observed yet.")]}),e.jsxs("section",{children:[e.jsxs("h3",{children:[e.jsx(H,{size:16}),"Changed ",e.jsx("span",{children:s.changed.length})]}),u(s.changed,"No changed paths observed yet.")]}),e.jsxs("section",{children:[e.jsxs("h3",{children:[e.jsx(B,{size:16}),"Validation ",e.jsx("span",{children:s.runs.length})]}),s.runs.length?e.jsx("ul",{children:s.runs.map(c=>e.jsxs("li",{children:[e.jsx("code",{children:c.command}),e.jsx("span",{className:`adventure-evidence__outcome is-${c.outcome}`,children:c.outcome==="passed"?"Exited successfully":c.outcome==="failed"?"Exited with error":"Result unavailable"}),e.jsxs("details",{children:[e.jsx("summary",{children:"Trace clue"}),e.jsx("pre",{children:c.clue})]})]},c.id))}):e.jsx("p",{children:"No validation command observed yet."})]})]})]})}const ee=Object.freeze(Object.defineProperty({__proto__:null,AdventureEvidence:I},Symbol.toStringTag,{value:"Module"}));export{I as A,H,ee as a};
@@ -0,0 +1,4 @@
1
+ import{r as d,j as e}from"./index-C8uS5szO.js";import{a as $}from"./api-CaROe5_H.js";import{f as O}from"./index-CvsM3jm8.js";import{a as q}from"./adventure-playback-DTfkhIc0.js";import{f as P}from"./floor-preview-text-HrORUJ7D.js";/* empty css */import{B as W}from"./book-open-BlJnpf2U.js";import{X as D}from"./x-DI1ktCYb.js";import{T as I}from"./terminal-96JWDYDL.js";import{c as H}from"./createLucideIcon-DkjnzvcJ.js";import{S as J}from"./scroll-text-DwC8r2g6.js";import"./TextDocumentSurface-BhYvAB0o.js";import"./chevron-right-C7UGFpkl.js";import"./folder-0fWevPvQ.js";import"./file-text-ChtICwub.js";const K=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M9 10h6",key:"9gxzsh"}],["path",{d:"M12 13V7",key:"h0r20n"}],["path",{d:"M9 17h6",key:"r8uit2"}]],U=H("file-diff",K),V={notes:"Field notes",diff:"Changes",result:"Results"},G={notes:"Field notes",diff:"What changed",result:"What came back"},X={notes:J,diff:U,result:I},C=r=>new Date(r).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"}),F=r=>r.split(`
2
+ `).length,S=r=>r<1024?`${r} B`:`${(r/1024).toFixed(r<102400?1:0)} KB`;function Q(r,t){const s=v=>v.replace(/\s+/g," ").trim().toLowerCase();if(!r||!t)return!1;const[o,l]=[s(r),s(t)];if(!o||!l)return!1;if(o===l)return!0;const[h,x]=o.length<=l.length?[o,l]:[l,o];return h.length>=24&&x.includes(h.slice(0,80))}function Y(r){return r?.event.stream?.length?r.event.stream.join(`
3
+ `):r?.event.result?JSON.stringify(r.event.result,null,2):""}function Z(r){return r.split("/").flatMap((t,s)=>s===0?[t]:["/",e.jsx("wbr",{},s),t])}function c(r,t,s=!1){return t?e.jsxs("div",{children:[e.jsx("dt",{children:r}),e.jsx("dd",{className:s?"is-path":void 0,children:t})]},r):null}function xe({stop:r,path:t,onClose:s,onPath:o}){const l=d.useRef(null),h=d.useRef(null),[x,v]=d.useState("notes"),[a,b]=d.useState(null),[k,w]=d.useState("");d.useEffect(()=>{l.current?.showModal()},[]),d.useEffect(()=>{let n=!0;return b(null),w(""),t&&$(`/api/file/preview?path=${encodeURIComponent(t)}`).then(u=>{n&&b(u)}).catch(u=>{n&&w(String(u))}),()=>{n=!1}},[t]);const R=r?q(r):null,j=R||r?.event.detail||r?.event.arg||null,p=P(r?.event.text),f=Y(r),_=r?.event.result?.exit_code??r?.event.result?.exitCode,i=r?.event.diff,g=["notes","diff","result"].filter(n=>n==="notes"||(n==="diff"?!!i:!!f)),m=g.includes(x)?x:"notes";d.useEffect(()=>{h.current?.scrollTo({top:0})},[m,t]);const B=t?t.split("/").filter(Boolean):[],T=t?B.at(-1)??t:r?.event.tool||r?.label||"Artifact",N=a?.kind==="file"?a.sizeBytes:void 0,E=a?.kind==="file"&&a.previewable?a.truncated:!1,y=a&&O.find(n=>n.canHandle(a)),z=e.jsxs(e.Fragment,{children:[p&&!Q(p,j)?e.jsx("p",{className:"adventure-reader__prose",children:p}):null,j?e.jsxs("figure",{className:"adventure-reader__record",children:[e.jsx("figcaption",{children:R?"Observed command":"Recorded input"}),e.jsx("pre",{children:j})]}):null,!p&&!j?e.jsx("p",{className:"adventure-reader__quiet",children:"Nothing was written down at this stop."}):null,g.includes("result")?e.jsxs("button",{type:"button",className:"adventure-reader__next",onClick:()=>v("result"),children:["Read what came back",e.jsx("span",{"aria-hidden":"true",children:"→"})]}):null]}),L=e.jsxs(e.Fragment,{children:[e.jsxs("p",{className:"adventure-reader__tally",children:[e.jsxs("b",{children:["+",i?.add??0]})," added ",e.jsxs("b",{children:["−",i?.del??0]})," removed"]}),i?.preview?e.jsx("pre",{className:"adventure-reader__diff",children:i.preview.split(`
4
+ `).map((n,u)=>e.jsx("span",{className:n.startsWith("+")?"is-added":n.startsWith("-")?"is-removed":"",children:n||" "},u))}):e.jsx("p",{className:"adventure-reader__quiet",children:"No preview was recorded for this change."})]}),M=e.jsxs(e.Fragment,{children:[e.jsxs("p",{className:"adventure-reader__tally",children:[_===void 0?"Output":`Exit code ${_}`,f?e.jsxs("small",{children:[F(f)," ",F(f)===1?"line":"lines"]}):null]}),f?e.jsx("pre",{className:"adventure-reader__output",children:f}):e.jsx("p",{className:"adventure-reader__quiet",children:"Nothing came back at this stop."})]}),A=k?e.jsxs("div",{className:"adventure-reader__failed",role:"alert",children:[e.jsx("strong",{children:"This file could not be opened."}),e.jsx("p",{children:k})]}):a&&y?e.jsx("div",{className:"adventure-reader__file",children:y.render({resource:a,openFilePreview:o})}):a?e.jsx("p",{className:"adventure-reader__quiet",children:"No reader is available for this kind of file."}):e.jsxs("p",{className:"adventure-reader__quiet",role:"status",children:["Opening ",T,"…"]});return e.jsxs("dialog",{ref:l,className:"adventure-reader","aria-labelledby":"adventure-reader-title",onCancel:s,onClose:s,onClick:n=>{n.target===n.currentTarget&&s()},children:[e.jsxs("header",{children:[e.jsx(W,{size:19,"aria-hidden":"true"}),e.jsxs("div",{className:"adventure-reader__masthead",children:[e.jsx("small",{children:t?"Field journal · current file":"Field journal · recorded stop"}),e.jsx("h2",{id:"adventure-reader-title",title:t??void 0,children:T})]}),!t&&r?e.jsxs("span",{className:"adventure-reader__stamp",children:[r.label," · ",C(r.at)]}):null,e.jsx("button",{type:"button",onClick:s,"aria-label":"Close field journal",children:e.jsx(D,{size:18})})]}),e.jsxs("div",{className:"adventure-reader__binding",children:[e.jsxs("aside",{children:[t?null:e.jsx("nav",{"aria-label":"Journal pages",children:g.map(n=>{const u=X[n];return e.jsxs("button",{type:"button","aria-pressed":m===n,onClick:()=>v(n),children:[e.jsx(u,{size:15}),e.jsx("span",{children:V[n]})]},n)})}),e.jsx("dl",{className:"adventure-reader__meta",children:t?e.jsxs(e.Fragment,{children:[c("Path",Z(t),!0),c("Reading","Current contents on disk"),N===void 0?null:c("Size",E?`${S(N)} · preview truncated`:S(N))]}):e.jsxs(e.Fragment,{children:[r?c("Observed",C(r.at)):null,r?c("Stop",r.label):null,c("Tool",r?.event.tool,!0),_===void 0?null:c("Exit code",String(_)),i?c("Change",`+${i.add} / −${i.del} lines`):null]})})]}),e.jsxs("article",{className:"adventure-reader__leaf",ref:h,children:[e.jsxs("div",{className:"adventure-reader__head",children:[e.jsx("span",{children:t?"Current file":G[m]}),e.jsx("small",{children:t?"Current contents, read from disk":"As recorded, never re-run"})]}),e.jsx("div",{className:"adventure-reader__body",children:t?A:m==="notes"?z:m==="diff"?L:M})]})]}),e.jsxs("footer",{children:[e.jsx("span",{children:"Esc returns to the trail."}),e.jsx("button",{type:"button",onClick:s,children:"Back to the trail →"})]})]})}export{xe as AdventureReader};
@@ -0,0 +1 @@
1
+ import{r as s,j as e}from"./index-C8uS5szO.js";import{p as t}from"./adventure-habitats-v1-M1lcpTJh.js";function a(){const r=s.useId();return e.jsxs("svg",{className:"adventures__scenery",width:"100%",height:"400","aria-hidden":"true",children:[e.jsx("defs",{children:e.jsxs("pattern",{id:r,width:"2400",height:"400",patternUnits:"userSpaceOnUse",children:[e.jsx("image",{href:t,width:"1200",height:"400",preserveAspectRatio:"none"}),e.jsx("image",{href:t,width:"1200",height:"400",preserveAspectRatio:"none",transform:"translate(2400 0) scale(-1 1)"})]})}),e.jsx("rect",{width:"100%",height:"400",fill:`url(#${r})`})]})}export{a as AdventureScenery};
@@ -0,0 +1 @@
1
+ import{r,m as se,g as ne,j as e,h as ke}from"./index-C8uS5szO.js";import{ReplayClock as be}from"./ReplayClock-B7JLTp8A.js";import{S as _e}from"./SproutActionSprite-DveCzg6l.js";import{C as B}from"./CrewSprite-hgpA3SWB.js";import{l as ie}from"./agent-lanes-model-CX0wTcnF.js";import{o as ye}from"./lane-observe-BD21P8BB.js";import{b as L,a as O,c as we}from"./adventure-playback-DTfkhIc0.js";import{AdventureScenery as Ne}from"./AdventureScenery-D548O0x4.js";import{AdventureReader as Se}from"./AdventureReader-ClMxT0e4.js";import{ReplayLog as Ce}from"./ReplayLog-DZTpf2CW.js";import{H as $e,A as Pe}from"./AdventureEvidence-Dzz9VbuE.js";import{f as H}from"./floor-preview-text-HrORUJ7D.js";/* empty css */import{c as K}from"./createLucideIcon-DkjnzvcJ.js";import{F as V}from"./flag-CqdOxVkI.js";import{W as Me}from"./wrench-BsMTSeji.js";import{B as oe}from"./book-open-BlJnpf2U.js";import{P as Te}from"./pause-DWS7YGQ3.js";import{P as Ae}from"./play-D_Pggug4.js";import{R as Re}from"./radio-C_jtwbFP.js";import{A as ze}from"./arrow-left-PuKdO3NM.js";import{A as ae}from"./arrow-right-ldbfp4SZ.js";/* empty css */import"./lane-ask-display-B6iCAVcd.js";import"./context-budget-DemtXu7E.js";import"./terminal-sessions-Ch9aYlgi.js";import"./api-CaROe5_H.js";import"./lane-edit-display-BjdT9oZl.js";import"./tail-display-DHSNmvor.js";import"./time-Dhsh_2EG.js";import"./adventure-habitats-v1-M1lcpTJh.js";import"./index-CvsM3jm8.js";import"./TextDocumentSurface-BhYvAB0o.js";import"./chevron-right-C7UGFpkl.js";import"./folder-0fWevPvQ.js";import"./file-text-ChtICwub.js";/* empty css */import"./x-DI1ktCYb.js";import"./terminal-96JWDYDL.js";import"./scroll-text-DwC8r2g6.js";import"./observe-CkfOxYx_.js";import"./agent-state-DDhnFEEP.js";import"./surface-activity-B1rgWB1i.js";import"./Provider-5Hotn7NQ.js";import"./router-BKiMcYa7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-v5QLsOHV.js";import"./index-BWHgHrtv.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-JjLbm3W2.js";import"./runtime-picker-DdsttHHc.js";import"./scout-voice-DOQ_B77g.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DurUYl7E.js";import"./conversation-model-BGFHoxQ0.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-C5cX8dkl.js";import"./HarnessMark-Bt47OeHy.js";import"./NewChatOrigin-CyPPWTJP.js";import"./keyboard-nav-CXfav14z.js";import"./chevron-down-B5eMsn5c.js";import"./search-C4VlW_0l.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-f12RRQpV.js";import"./chevron-up-BHOEgHcn.js";import"./code-xml-BmyLM0I2.js";import"./chunk-HRAB3GC3-C5X-kFhb.js";import"./agent-lane-detail-Db7KyAlf.js";/* empty css */import"./arrow-up-right-Hn754ybA.js";const Ie=[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]],le=K("mail",Ie);const Le=[["path",{d:"m8 3 4 8 5-5 5 15H2L8 3z",key:"otkl63"}]],Ee=K("mountain",Le);const We=[["path",{d:"M3.5 21 14 3",key:"1szst5"}],["path",{d:"M20.5 21 10 3",key:"1310c3"}],["path",{d:"M15.5 21 12 15l-3.5 6",key:"1ddtfw"}],["path",{d:"M2 21h20",key:"1nyx9w"}]],re=K("tent",We),De={start:"Trailhead",think:"Lookout",read:"Field library",edit:"Workbench",tool:"Tool shed",message:"Post station",wait:"Waiting camp",end:"Turn complete",stopped:"Journey interrupted"};function Fe(n){const p=n.text.trim().toLowerCase();if(n.kind==="note"||n.kind==="system"||n.kind==="boot")return/^(task started|turn started|\[turn_started\])$/.test(p)?"start":/^(task complete|task completed|turn complete|turn completed|turn ended|\[turn_ended\])$/.test(p)?"end":/^(?:(?:turn|task) (?:aborted|failed|cancelled|canceled))(?:$|[ :])/.test(p)?"stopped":/\b(waiting|approval required|permission requested|blocked)\b/.test(p)?"wait":null;if(n.kind==="think")return"think";if(n.kind==="ask"||n.kind==="message")return"message";const c=n.tool?.toLowerCase()??"";return/wait|sleep|request_user_input/.test(c)?"wait":n.diff||/(?:^|[._/])(?:edit|write|write_file|edit_file|apply_patch|multiedit|str_replace_editor)$/.test(c)?"edit":/read|search|find|open|view|fetch/.test(c)?"read":n.kind==="tool"?"tool":null}function Je(n,p){const c=new Set,x=(n.observe?.events??[]).flatMap(o=>{const b=ye(o,n.observe?.metadata?.session?.sessionStart),v=Fe(o);return b===null||b>p||!v||c.has(o.id)?[]:(c.add(o.id),[{id:`${n.id}:${o.id}`,event:o,at:b,kind:v,label:De[v],artifact:o.arg||o.tool||o.text}])}).sort((o,b)=>o.at-b.at),m=[];let k;for(const o of x)(!k||o.kind==="start"||k.closed)&&(k={id:o.id,stops:[],partial:o.kind!=="start",closed:!1},m.push(k)),k.stops.push(o),k.closed=o.kind==="end"||o.kind==="stopped";return m}function I(n,p){if(p==="continuous")return null;const c=n.event.result?.exit_code??n.event.result?.exitCode,x=typeof c=="number"?c:typeof c=="string"&&/^-?\d+$/.test(c)?Number(c):null;if(x!==null&&x!==0)return`Command needs attention · exit ${x}`;if(n.kind==="stopped")return"Journey interrupted";if(n.kind==="wait")return"Waiting for input";if(p==="problems")return null;if(n.kind==="end")return"Turn complete";if(p==="all")return L(n).checkpoint?L(n).label:null;const m=O(n);return m&&x!==null&&we(m)?"Validation result ready":null}const qe={start:V,think:Ee,read:oe,edit:$e,tool:Me,message:le,wait:re,end:V,stopped:re},M=n=>new Date(n).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"}),w=218;function xs({lanes:n,now:p,onActor:c}){const[x,m]=r.useState(null),[k,o]=r.useState(n[0]?.id??""),[b,v]=r.useState(null),[de,_]=r.useState(0),[ce,He]=r.useState(!0),[ue,Oe]=r.useState(!0),[Ve,Ke]=r.useState(!1),[U,Ue]=r.useState(!1),[f,Ye]=r.useState(!1),[u,h]=r.useState(!0),[j,pe]=r.useState(1),[E,T]=r.useState("rest"),[S,Y]=r.useState("results"),[me,A]=r.useState(null),[C,he]=r.useState(!document.hidden);r.useEffect(()=>{const t=()=>he(!document.hidden);return document.addEventListener("visibilitychange",t),()=>document.removeEventListener("visibilitychange",t)},[]);const R=r.useRef(null),l=n.find(t=>t.id===k)??n[0],W=r.useMemo(()=>l?Je(l,p):[],[l,p]),g=W.find(t=>t.id===b)??W.at(-1),a=g?.stops??[],i=Math.min(de??a.length-1,a.length-1),s=a[i],Z=l?se(l.agent.name)??ne(l.id):"sprout",D=s?.event.to?n.find(t=>[t.id,t.agent.id,t.agent.name,t.agent.handle].includes(s.event.to)):void 0;ce&&l&&n.filter(t=>t.id!==l.id&&!!l.agent.project&&t.agent.project===l.agent.project).slice(0,4);const G=b===null,y=s?L(s):null,F=s?I(s,S):null,Q=a.findIndex((t,d)=>d>i&&I(t,S==="continuous"?"results":S)),$=!!(u&&F&&me!==s?.id),J=$||!u&&!!s,P=u&&!$;r.useEffect(()=>{if(!u||f||!C||!s){T("rest");return}T("travel");const t=window.setTimeout(()=>T(y?.routine?"land":"rest"),700/j),d=window.setTimeout(()=>T("rest"),960/j);return()=>{window.clearTimeout(t),window.clearTimeout(d)}},[s?.id,u,f,C,j]);const xe=E==="travel"?y?.routine?"jump":"run":E==="land"?"land":"idle",X=s?O(s):null,ee=s?.event.result?.exit_code??s?.event.result?.exitCode,ve=ee!==void 0?`Process exited with code ${ee}`:s?.event.live?"Command is still running":"Inspect the observed command and collected evidence below",q=ue&&!U;r.useEffect(()=>{_(0),A(null)},[l?.id,g?.id]),r.useEffect(()=>{if(!C||!P||!s||i>=a.length-1)return;const t=window.setTimeout(()=>{document.hidden||_(i+1)},Math.max(1e3,y?.durationMs??1600)/j);return()=>window.clearTimeout(t)},[C,P,s?.id,i,a.length,y?.durationMs,j]),r.useEffect(()=>{!R.current||i<0||R.current.scrollTo({left:Math.max(0,150+i*w-R.current.clientWidth*.5),behavior:u&&!f&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches?"smooth":"auto"})},[i,l?.id,g?.id]);const fe=t=>{o(t),v(null),_(0),h(!0)},N=t=>{h(!1),v(g?.id??null),_(Math.max(0,Math.min(a.length-1,t)))},te=()=>{h(!u),u||A(s?.id??null)},je=$?"Checkpoint":u?i>=a.length-1?g?.closed?"Journey complete":"Following live":"Playing journey":"Paused for review";return e.jsxs("section",{onKeyDown:t=>{t.code==="Space"&&!t.target.closest("button,input,select,textarea,summary,[contenteditable=true]")&&(t.preventDefault(),te())},className:`adventures${J?" is-reviewing":""}${f||!u?" is-paused":""}`,"aria-label":"Agent Replay",onPointerDown:t=>t.stopPropagation(),onWheel:t=>t.stopPropagation(),children:[e.jsx("div",{className:"adventures__scene",ref:R,tabIndex:0,"aria-label":"Replay landscape, follows the seek position",children:e.jsxs("div",{className:"adventures__landscape",style:{width:Math.max(1e3,a.length*w+450)},children:[e.jsx(Ne,{}),e.jsx("div",{className:"adventures__trail","aria-hidden":"true"}),a.length?null:e.jsxs("div",{className:"adventures__empty",children:[e.jsx(B,{slug:"sprout",size:120,paused:f}),e.jsx("h3",{children:"The trail is quiet."}),e.jsx("p",{children:n.length?"No journey observations are available for this agent. Choose another agent or keep watching.":"Your crew will appear when agent activity arrives."})]}),a.map((t,d)=>{const ge=qe[t.kind],z=L(t);return e.jsxs("button",{type:"button",className:`adventures__stop adventures__stop--${t.kind}${z.checkpoint?" is-checkpoint":z.routine?" is-routine":""}${d===i?" is-current":""}${d>i?" is-ahead":""}`,style:{left:150+d*w},onClick:()=>N(d),"aria-label":`${t.label}, ${M(t.at)}`,"aria-pressed":d===i,children:[e.jsx("span",{className:"adventures__stop-title",children:z.checkpoint?z.label:t.label}),e.jsxs("span",{className:"adventures__prop",children:[e.jsx(ge,{size:36,strokeWidth:1.5}),t.kind==="edit"?e.jsx("span",{className:"adventures__sparks"}):null]}),e.jsx("span",{className:"adventures__artifact",children:H(O(t)??t.artifact).slice(0,100)}),e.jsx("time",{children:M(t.at)})]},t.id)}),s&&l?e.jsxs("div",{className:`adventures__traveler adventures__traveler--${s.kind}${q?" has-action-sprite":""}${y?.checkpoint?" is-checkpoint":""}${y?.routine&&E==="travel"?" is-hopping":""}`,style:{left:112+i*w,transitionDuration:`${700/j}ms`},children:[s.kind==="think"?e.jsx("span",{className:"adventures__thought",children:"Thinking"}):null,e.jsx("button",{type:"button",onClick:()=>{h(!1),c(l)},"aria-label":`Inspect ${ie(l.agent,l.source)}`,children:e.jsx(e.Fragment,{children:q?e.jsx(_e,{action:xe,playbackRate:j,size:128,paused:f||!u}):e.jsx(B,{slug:Z,size:112,pixel:U&&ke(Z),paused:f||!P,expression:J?"look-right":Be(s.kind)})})},s.id),e.jsx("span",{className:"adventures__shadow"}),s.kind!=="think"?e.jsxs("span",{className:"adventures__action-caption",children:[e.jsx("strong",{children:s.event.tool||(s.kind==="message"?"Message":s.kind==="end"?"Turn complete":s.kind==="wait"?"Waiting":s.label)}),s.event.tool?e.jsx("small",{children:H(X||s.event.arg).slice(0,90)}):null]}):null]}):null,s&&J?e.jsxs("button",{type:"button",className:"adventures__world-artifact",style:{left:252+i*w},onClick:()=>{h(!1),m({path:null})},"aria-label":"Inspect current artifact",children:[e.jsxs("span",{className:"adventures__artifact-sheet",children:[e.jsx(oe,{size:23}),e.jsx("strong",{children:F||s.label}),e.jsx("span",{children:H(X||s.artifact).slice(0,110)}),e.jsx("small",{children:"Inspect artifact ↗"})]}),e.jsx("span",{className:"adventures__artifact-stand"})]}):null,s?.event.to?e.jsxs("div",{className:"adventures__handoff",style:{left:218+i*w},children:[e.jsx(le,{size:20}),e.jsxs("span",{children:["Message to ",s.event.to]}),D?e.jsx(B,{slug:se(D.agent.name)??ne(D.id),size:70,paused:f||!P}):null]}):null,s?e.jsxs("div",{className:"adventures__frontier",style:{left:240+a.length*w},children:[e.jsx("span",{children:g?.closed?"Until the next turn":"Uncharted"}),e.jsx("small",{children:g?.closed?"This journey has ended.":"The next step is not known yet."})]}):null]})}),e.jsxs("div",{className:"adventures__console",children:[e.jsxs("details",{className:"replay-selection",children:[e.jsx("summary",{children:"Choose agent / journey"}),e.jsxs("div",{className:"adventures__navigation",children:[e.jsxs("label",{children:[q?"Sprout follows":"Follow",e.jsx("select",{"aria-label":"Follow agent",value:l?.id??"",onChange:t=>fe(t.target.value),children:n.map(t=>e.jsxs("option",{value:t.id,children:[ie(t.agent,t.source)," · ",t.id.slice(-5)]},t.id))})]}),e.jsxs("label",{children:["Journey",e.jsx("select",{"aria-label":"Select journey",value:g?.id??"",onChange:t=>{v(t.target.value),_(0),h(!0)},children:W.map((t,d)=>e.jsxs("option",{value:t.id,children:[d+1," · ",M(t.stops[0].at)," · ",t.closed?t.stops.at(-1).label:"end not observed"]},t.id))})]})]})]}),e.jsxs("div",{className:"adventures__transport",children:[e.jsxs("div",{className:"adventures__recording-clock",children:[e.jsx(be,{at:s?.at??0,nextAt:a[i+1]?.at??s?.at??0,start:a[0]?.at??0,duration:Math.max(1e3,y?.durationMs??1600)/j,running:C&&P&&!f}),e.jsx("span",{className:"adventures__clock-divider","aria-hidden":"true"}),s?e.jsx("time",{dateTime:new Date(s.at).toISOString(),children:new Date(s.at).toLocaleString([],{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:"short"})}):e.jsx("span",{children:"No recorded timestamp"})]}),e.jsxs("div",{className:"adventures__transport-top",children:[e.jsxs("button",{type:"button",className:"adventures__play-button",title:"Play or pause · Space","aria-label":u?"Pause journey":"Play journey",onClick:te,children:[u?e.jsx(Te,{size:17}):e.jsx(Ae,{size:17}),e.jsx("span",{children:u?"Pause":"Play"})]}),e.jsxs("span",{className:`adventures__transport-status${$?" is-checkpoint":""}`,role:"status",children:[e.jsx("i",{}),je]}),e.jsxs("label",{className:"adventures__speed",children:[e.jsx("span",{children:"Speed"}),e.jsxs("select",{"aria-label":"Playback pace",value:j,onChange:t=>pe(Number(t.target.value)),children:[e.jsx("option",{value:.75,children:"0.75×"}),e.jsx("option",{value:1,children:"1×"}),e.jsx("option",{value:1.5,children:"1.5×"})]})]}),e.jsxs("select",{className:"adventures__checkpoint-mode","aria-label":"Checkpoint behavior",value:S,onChange:t=>Y(t.target.value),children:[e.jsx("option",{value:"results",children:"Review results"}),e.jsx("option",{value:"all",children:"Every checkpoint"}),e.jsx("option",{value:"problems",children:"Only problems"}),e.jsx("option",{value:"continuous",children:"Play straight through"})]})]}),e.jsxs("button",{className:"adventures__next-review",type:"button",disabled:Q<0,onClick:()=>{v(g?.id??null),_(Q),h(!0),A(null),S==="continuous"&&Y("results")},children:[e.jsx(V,{size:12})," Next review point"]}),e.jsxs("div",{className:"adventures__playhead",children:[e.jsxs("button",{type:"button",className:G?"is-live":"","aria-pressed":G,onClick:()=>{v(null),_(null),h(!0)},children:[e.jsx(Re,{size:14})," Live edge"]}),e.jsx("button",{type:"button","aria-label":"Previous observation",disabled:i<=0,onClick:()=>N(i-1),children:e.jsx(ze,{size:15})}),e.jsxs("div",{className:"adventures__seek-track",children:[e.jsx("input",{type:"range","aria-label":"Journey observation",min:0,max:Math.max(0,a.length-1),value:Math.max(0,i),disabled:!a.length,onChange:t=>N(Number(t.target.value))}),e.jsx("div",{className:"adventures__seek-markers",children:a.map((t,d)=>I(t,"all")?e.jsx("button",{type:"button",style:{left:`${a.length>1?d/(a.length-1)*100:0}%`},className:d<=i?"is-visited":"","aria-label":`Seek to ${I(t,"all")} at ${M(t.at)}`,title:`${t.label} · ${M(t.at)}`,onClick:()=>N(d)},t.id):null)})]}),e.jsx("button",{type:"button","aria-label":"Next observation",disabled:i>=a.length-1,onClick:()=>N(i+1),children:e.jsx(ae,{size:15})}),e.jsx("span",{children:a.length?`${i+1} / ${a.length}`:"No observations"})]}),$?e.jsxs("div",{className:"adventures__checkpoint-review",children:[e.jsxs("div",{children:[e.jsx("strong",{children:F}),e.jsx("small",{children:ve})]}),e.jsxs("button",{type:"button",onClick:()=>A(s?.id??null),children:["Continue ",e.jsx(ae,{size:14})]})]}):null]}),e.jsx(Ce,{stops:a,index:i,onInspect:t=>{N(t),m({path:null})}}),l?e.jsx("div",{onClickCapture:()=>h(!1),children:e.jsx(Pe,{stops:a,index:i,lane:l,onFile:t=>{h(!1),m({path:t})}})}):null]}),x?e.jsx(Se,{stop:s,path:x.path,onClose:()=>m(null),onPath:t=>m({path:t})}):null]})}function Be(n){return n==="think"?"look-up":n==="message"?"look-left":"look-right"}export{xs as AgentAdventures};
@@ -0,0 +1 @@
1
+ import{j as i,f as B,m as f,g as L,C as F,h as G}from"./index-C8uS5szO.js";import{d as J}from"./Provider-5Hotn7NQ.js";import{a as K,S as Q}from"./SpriteAvatar-BW1JzkDt.js";import{C as U}from"./CrewAvatar-CJhuqTsJ.js";import{s as X}from"./colors-CFlbwC25.js";import{i as Y,d as $}from"./agent-state-DDhnFEEP.js";const z={hero:{tile:!1,presence:!1,glow:!0},inspector:{sizes:{compact:32,regular:40,large:52},tile:!0,presence:!0},row:{sizes:{compact:20,regular:24,large:32},tile:!0,presence:!0},turn:{tile:!1,presence:!1},list:{tile:!1,presence:!1},roster:{tile:!1,presence:!1},node:{sizes:{compact:14,regular:16,large:20},tile:!1,presence:!1}},ee={compact:.85,regular:1,large:1.25};function le(e,a){return z[e].sizes?.[a]}function re(e,a){if(a==="regular")return e;const l=Math.round(e*ee[a]);return a==="compact"?Math.max(20,Math.min(e,l)):l}function ce({agent:e,name:a,slug:l,avatarStyle:E,project:D,harness:R,state:I,kind:M="agent",placement:d="row",size:w,scaleWithPreference:P=!0,presence:g,tile:T,salt:O,className:s,channelClassName:_,style:o,title:c}){const r=e?.name??a??"?";if(M==="channel")return i.jsx("span",{className:_??s,style:o,title:c??r,children:"#"});const t=J(),k=t?.operatorName||t?.onboarding?.operatorName?.trim()||t?.onboarding?.operatorNameSuggestion?.trim()||"operator",m=r.toLowerCase()==="operator"||r.toLowerCase()==="you"||r.toLowerCase()===k.toLowerCase()||r.toLowerCase()==="art",A=t?.appearanceDetails?.operatorCharacter||"milo",h=E??t?.appearanceDetails?.avatarStyle??"crew",y=m?void 0:B(t?.appearanceDetails?.agentCharacters,{id:e?.id,name:r},t?.agents??[]),p=l?f(l)??L(l):m?f(A)??L(A):f(y)??f(e?.slug||r),H=p!=null&&F[p]!=null&&(h!=="chip"||G(p)),n=z[d],S=P?t?.appearanceDetails?.avatarSize??"regular":"regular",u=w!=null?re(w,S):n.sizes?.[S];if(h!=="sprite"&&H&&p){const b=R??e?.harness??void 0,Z=I??e?.state??null,q=D??e?.project??"openscout",C=i.jsx(U,{slug:p,name:r,project:q,harness:b,state:Z,size:u,badge:b?g??n.presence:!1,ring:g??(d==="hero"||d==="turn"?!1:n.presence),chip:h==="chip",glow:n.glow,title:c??r});return u==null?i.jsx("span",{className:s,style:{background:"transparent",overflow:"visible",display:"inline-grid",placeItems:"center",...o},title:c??r,children:C}):s||o?i.jsx("span",{className:s,style:{display:"inline-grid",placeItems:"center",...o},children:C}):C}const j=e?K(e):null,x=g??n.presence,N=Y(e?.state??null),V=x&&N?X(e?.state??null):void 0,W=x&&$(e?.state??null),v=i.jsx(Q,{name:r,size:u,hue:j?.hue,tone:j?.tone,salt:O,tile:T??n.tile,glow:n.glow,corner:V,cornerPulse:W,title:c??r});return u==null?i.jsx("span",{className:s,style:{background:"transparent",overflow:"visible",...o},title:c??r,children:v}):s||o?i.jsx("span",{className:s,style:o,children:v}):v}export{ce as A,le as p};
@@ -0,0 +1 @@
1
+ import{r as t,j as s,f as W,z as V}from"./index-C8uS5szO.js";import{E as Y}from"./EmptyState-uyYN5piI.js";import{C as F}from"./CastPicker-BuwE_JQp.js";import{a as D}from"./api-CaROe5_H.js";import{h as G}from"./NewChatComposer-JjLbm3W2.js";import{d as J}from"./time-Dhsh_2EG.js";import{u as L}from"./Provider-5Hotn7NQ.js";import{o as Q}from"./openContent-C6XO6kr5.js";import{AgentsSubnav as X}from"./AgentsSubnav-BOobgtGE.js";/* empty css */import{R as Z}from"./refresh-cw-Da9DDLk2.js";import{S as ss}from"./settings-TJIkkZ0P.js";import{c as H}from"./createLucideIcon-DkjnzvcJ.js";import{B as _}from"./bot-CfN9PSBF.js";import{W as es}from"./wrench-BsMTSeji.js";import{S as as}from"./server-ms1yxUYJ.js";import{C as ns}from"./cpu-Ck_4tB_-.js";import"./CrewAvatar-CJhuqTsJ.js";import"./HarnessMark-Bt47OeHy.js";import"./check-B8dMv3Is.js";import"./runtime-picker-DdsttHHc.js";import"./scout-voice-DOQ_B77g.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DurUYl7E.js";import"./router-BKiMcYa7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Ch9aYlgi.js";import"./conversation-model-BGFHoxQ0.js";import"./agent-state-DDhnFEEP.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-C5cX8dkl.js";import"./NewChatOrigin-CyPPWTJP.js";import"./keyboard-nav-CXfav14z.js";import"./x-DI1ktCYb.js";import"./chevron-down-B5eMsn5c.js";import"./search-C4VlW_0l.js";import"./file-text-ChtICwub.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-v5QLsOHV.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-f12RRQpV.js";import"./TextDocumentSurface-BhYvAB0o.js";import"./index-CvsM3jm8.js";import"./chevron-right-C7UGFpkl.js";import"./folder-0fWevPvQ.js";import"./chevron-up-BHOEgHcn.js";import"./code-xml-BmyLM0I2.js";import"./arrow-left-PuKdO3NM.js";import"./arrow-right-ldbfp4SZ.js";import"./chunk-HRAB3GC3-C5X-kFhb.js";import"./SecondaryNav-BkTn5tkq.js";import"./secondaryNavConfig-DAXIFtVd.js";import"./nav-destinations-CyXnw9kh.js";import"./message-square-NmXWtWLR.js";import"./terminal-96JWDYDL.js";import"./compass-DTZdCpv9.js";import"./git-branch-CA3cHKCI.js";import"./scroll-text-DwC8r2g6.js";const is=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]],K=H("key-round",is);const ts=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]],cs=H("save",ts);function A(e){switch(e){case"ready":case"running":case"available":case"enabled":return"sys-chip-success";case"configured":case"installed":case"working":return"sys-chip-warning";case"missing":case"offline":case"not_ready":case"error":return"sys-chip-danger";default:return"sys-chip-neutral"}}function M(e){switch(e){case"available":case"ready":return"ready";case"offline":case"not_ready":return"not ready";default:return e}}function I(e){return e?e.replace(/^\/Users\/[^/]+/,"~"):"Not reported"}function rs(e){return e.length>0?e.join(", "):"No capabilities reported"}function ls({runtime:e}){return s.jsxs("div",{className:"agent-config-row",children:[s.jsxs("div",{className:"agent-config-row-main",children:[s.jsx("span",{className:"agent-config-icon",children:s.jsx(ns,{size:14})}),s.jsxs("div",{className:"agent-config-row-copy",children:[s.jsx("div",{className:"agent-config-row-title",children:e.label}),s.jsx("div",{className:"agent-config-row-detail",children:e.description}),s.jsx("div",{className:"agent-config-row-meta",children:e.detail})]})]}),s.jsxs("div",{className:"agent-config-row-side",children:[s.jsx("span",{className:`sys-chip ${A(e.state)}`,children:e.state}),s.jsx("span",{className:"agent-config-row-meta",children:e.binaryPath??e.loginCommand??e.source})]})]})}function os({provider:e}){return s.jsxs("div",{className:"agent-config-row",children:[s.jsxs("div",{className:"agent-config-row-main",children:[s.jsx("span",{className:"agent-config-icon",children:s.jsx(K,{size:14})}),s.jsxs("div",{className:"agent-config-row-copy",children:[s.jsx("div",{className:"agent-config-row-title",children:e.name}),s.jsx("div",{className:"agent-config-row-detail",children:e.protocol}),s.jsx("code",{className:"agent-config-code",children:e.baseUrl}),s.jsxs("div",{className:"agent-config-row-meta",children:["Keys: ",e.envKeys.join(", ")]}),s.jsx("div",{className:"agent-config-row-meta",children:e.note})]})]}),s.jsxs("div",{className:"agent-config-row-side",children:[s.jsx("span",{className:`sys-chip ${A(e.status)}`,children:e.status}),s.jsx("a",{className:"agent-config-link",href:e.docsUrl,target:"_blank",rel:"noreferrer",children:"Docs"})]})]})}function ds({agent:e,selected:o,navigate:g}){return s.jsxs("button",{type:"button",className:`agent-config-row agent-config-row-button${o?" agent-config-row-selected":""}`,onClick:()=>g({view:"agents-v2",agentId:e.id,tab:"config"}),children:[s.jsxs("div",{className:"agent-config-row-main",children:[s.jsx("span",{className:"agent-config-icon",children:s.jsx(_,{size:14})}),s.jsxs("div",{className:"agent-config-row-copy",children:[s.jsx("div",{className:"agent-config-row-title",children:e.name}),s.jsx("div",{className:"agent-config-row-detail",children:e.id}),s.jsxs("div",{className:"agent-config-row-meta",children:[e.harness??"unknown harness"," / ",e.transport??"unknown transport",e.model?` / ${e.model}`:""]})]})]}),s.jsxs("div",{className:"agent-config-row-side",children:[s.jsx("span",{className:`sys-chip ${A(e.status)}`,children:M(e.status)}),s.jsx("span",{className:"agent-config-row-meta",children:I(e.projectRoot??e.cwd)})]})]})}function B(e,o,g,n,N){o(e),g(e.model??""),n(e.runtime.cwd),N(e.runtime.harness)}function ms({agent:e,agents:o,navigate:g,onConfigSaved:n}){const{route:N,appearanceDetails:y,updateAppearanceDetails:b}=L(),h=e?.id??null,x=e?W(y.agentCharacters,e,o):void 0,[c,f]=t.useState(null),[d,p]=t.useState(!1),[j,m]=t.useState(null),[w,a]=t.useState(""),[v,l]=t.useState(""),[C,S]=t.useState(""),[$,E]=t.useState(!1),[u,T]=t.useState("idle"),[O,z]=t.useState(null),k=t.useRef(0),P=t.useCallback(async()=>{const i=++k.current;if(z(null),E(!1),!h){f(null),m(null),p(!1);return}p(!0),m(null);try{const r=await D(`/api/agents/${encodeURIComponent(h)}/config`);if(i!==k.current)return;B(r,f,a,l,S)}catch(r){if(i!==k.current)return;f(null),a(""),l(""),S(e?.harness??""),m(r instanceof Error?r.message:String(r))}finally{i===k.current&&p(!1)}},[e?.harness,h]);t.useEffect(()=>{P()},[P]);const U=t.useMemo(()=>{const i=["claude","codex","pi",c?.runtime.harness,e?.harness,C].filter(r=>!!r?.trim());return Array.from(new Set(i))},[e?.harness,c?.runtime.harness,C]),q=async i=>{if(i.preventDefault(),!(!h||!c||u==="saving")){T("saving"),z(null),m(null);try{const r=await D(`/api/agents/${encodeURIComponent(h)}/config`,{method:"POST",body:JSON.stringify({model:w.trim()||null,runtime:{cwd:v.trim()||c.runtime.cwd,harness:C.trim()||c.runtime.harness},restart:$})});B(r.config,f,a,l,S),E(!1),z(r.restarted?"Saved and restarted":"Saved"),n?.()}catch(r){m(r instanceof Error?r.message:String(r))}finally{T("idle")}}};return e?s.jsxs("div",{className:"sys-panel agent-config-detail-panel",children:[s.jsxs("div",{className:"sys-section-head",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"sys-section-title",children:e.name}),s.jsx("p",{className:"sys-section-subtitle",children:e.id})]}),s.jsxs("div",{className:"sys-page-actions",children:[s.jsx("button",{type:"button",className:"s-btn",onClick:()=>g({view:"agents-v2",agentId:e.id}),children:"Open Agent"}),s.jsx("button",{type:"button",className:"s-btn",onClick:()=>{G(e).then(i=>{Q(g,{view:"conversation",conversationId:i},{returnTo:N})})},children:"Open Chat"})]})]}),s.jsxs("div",{className:"agent-config-detail-grid",children:[s.jsxs("div",{children:[s.jsx("span",{className:"agent-config-label",children:"Status"}),s.jsx("span",{className:`sys-chip ${A(e.status)}`,children:M(e.status)})]}),s.jsxs("div",{children:[s.jsx("span",{className:"agent-config-label",children:"Harness"}),s.jsx("strong",{className:"agent-config-selectable",children:e.harness??"Not reported"})]}),s.jsxs("div",{children:[s.jsx("span",{className:"agent-config-label",children:"Transport"}),s.jsx("strong",{className:"agent-config-selectable",children:e.transport??"Not reported"})]}),s.jsxs("div",{children:[s.jsx("span",{className:"agent-config-label",children:"Reported model"}),s.jsx("strong",{className:"agent-config-selectable",children:e.model??"Not reported"})]}),s.jsxs("div",{children:[s.jsx("span",{className:"agent-config-label",children:"Configured model"}),s.jsx("strong",{className:"agent-config-selectable",children:d?"Loading...":c?c.model??"Harness default":"Not editable"})]}),s.jsxs("div",{className:"agent-config-detail-wide",children:[s.jsx("span",{className:"agent-config-label",children:"Project"}),s.jsx("code",{className:"agent-config-inline-code",title:e.projectRoot??void 0,children:I(e.projectRoot)})]}),s.jsxs("div",{className:"agent-config-detail-wide",children:[s.jsx("span",{className:"agent-config-label",children:"Working dir"}),s.jsx("code",{className:"agent-config-inline-code",title:e.cwd??c?.runtime.cwd??void 0,children:I(e.cwd??c?.runtime.cwd??null)})]}),s.jsxs("div",{className:"agent-config-detail-wide",children:[s.jsx("span",{className:"agent-config-label",children:"Capabilities"}),s.jsx("span",{className:"agent-config-selectable",children:rs(e.capabilities)})]}),s.jsxs("div",{className:"agent-config-detail-wide",children:[s.jsx("span",{className:"agent-config-label",children:"Character"}),x?s.jsx("span",{className:"sys-chip sys-chip-neutral",children:x}):s.jsx("span",{className:"agent-config-selectable",children:"Generative sprite"})]})]}),s.jsx("div",{className:"agent-config-cast",children:s.jsx(F,{selectedSlug:x,onSelect:i=>{const r=V(y.agentCharacters,o),R={...r.byId};R[e.id]===i?delete R[e.id]:R[e.id]=i,b({agentCharacters:{...r,byId:R}})}})}),d&&s.jsx("div",{className:"agent-config-edit agent-config-edit-empty",children:s.jsx("span",{className:"agent-config-save-note",children:"Loading editable launch config..."})}),!d&&c&&s.jsxs("form",{className:"agent-config-edit",onSubmit:q,children:[s.jsxs("div",{className:"agent-config-edit-grid",children:[s.jsxs("label",{className:"agent-config-field",children:[s.jsx("span",{children:"Model"}),s.jsx("input",{name:"model",value:w,placeholder:"Harness default",disabled:!c.editable||u==="saving",onChange:i=>a(i.currentTarget.value)})]}),s.jsxs("label",{className:"agent-config-field",children:[s.jsx("span",{children:"Harness"}),s.jsx("select",{name:"harness",value:C,disabled:!c.editable||u==="saving",onChange:i=>S(i.currentTarget.value),children:U.map(i=>s.jsx("option",{value:i,children:i},i))})]}),s.jsxs("label",{className:"agent-config-field agent-config-field-wide",children:[s.jsx("span",{children:"Working dir"}),s.jsx("input",{name:"cwd",value:v,disabled:!c.editable||u==="saving",onChange:i=>l(i.currentTarget.value)})]})]}),s.jsxs("div",{className:"agent-config-save-row",children:[s.jsxs("label",{className:"agent-config-check",children:[s.jsx("input",{type:"checkbox",checked:$,disabled:!c.editable||u==="saving",onChange:i=>E(i.currentTarget.checked)}),s.jsx("span",{children:"Restart after saving"})]}),s.jsxs("button",{type:"submit",className:"s-btn",disabled:!c.editable||u==="saving",children:[s.jsx(cs,{size:13}),u==="saving"?"Saving...":"Save config"]}),O&&s.jsx("span",{className:"agent-config-save-note",children:O}),j&&s.jsx("span",{className:"agent-config-save-error",children:j})]})]}),!d&&!c&&s.jsx("div",{className:"agent-config-edit agent-config-edit-empty",children:s.jsx("span",{className:"agent-config-save-error",children:j??"No editable local config found"})})]}):s.jsxs("div",{className:"sys-panel agent-config-detail-panel",children:[s.jsx("div",{className:"sys-section-head",children:s.jsxs("div",{children:[s.jsx("h3",{className:"sys-section-title",children:"Agent Details"}),s.jsx("p",{className:"sys-section-subtitle",children:"Select an agent to inspect runtime, model, and tool context."})]})}),s.jsxs("div",{className:"sys-list-empty",children:[s.jsx("h3",{children:"No agent selected"}),s.jsx("p",{children:"Choose an agent from the configuration roster."})]})]})}function ye({navigate:e,selectedAgentId:o}){const{route:g}=L(),[n,N]=t.useState(null),[y,b]=t.useState(!0),[h,x]=t.useState(!1),[c,f]=t.useState(null),d=t.useRef(0),p=t.useCallback(async(a="initial")=>{const v=++d.current;a==="initial"?b(!0):x(!0),f(null);try{const l=await D("/api/agent-config/snapshot");if(v!==d.current)return;N(l)}catch(l){if(v!==d.current)return;f(l instanceof Error?l.message:String(l))}finally{v===d.current&&(b(!1),x(!1))}},[]);t.useEffect(()=>{p()},[p]);const j=t.useMemo(()=>n?n.agents.find(a=>a.id===o)??n.agents[0]??null:null,[o,n]),m=n?.providers??[],w=n?[{label:"Runtimes",value:String(n.runtimes.length),detail:`${n.runtimes.filter(a=>a.state==="ready").length} ready`},{label:"BYOK",value:String(m.length),detail:`${m.filter(a=>a.status==="configured").length} configured`},{label:"Agents",value:String(n.agents.length),detail:`${n.agents.filter(a=>M(a.status)!=="not ready").length} ready`},{label:"Broker",value:n.broker.label,detail:n.broker.nodeId??"No node id"}]:[];return s.jsxs("div",{className:"s-secondary-nav-shell",children:[s.jsx("div",{className:"s-secondary-nav-bar",children:s.jsx(X,{activeRoute:g,navigate:e})}),s.jsx("div",{className:"s-secondary-nav-body s-secondary-nav-body--scroll",children:s.jsxs("div",{className:"sys-surface-page sys-surface-page-wide",children:[s.jsxs("div",{className:"sys-page-head",children:[s.jsxs("div",{className:"sys-page-title-group",children:[s.jsx("h2",{className:"sys-page-title",children:"Agent Configuration"}),s.jsx("p",{className:"sys-page-subtitle",children:"Runtimes, agents, project inventory, delivery bridges, and the missing tool/provider surfaces in one control plane."})]}),s.jsxs("div",{className:"sys-page-actions",children:[n&&s.jsxs("div",{className:"sys-sync-note",children:["Updated ",J(n.generatedAt)||"unknown"]}),s.jsxs("button",{type:"button",className:"s-btn",disabled:y||h,onClick:()=>{p("manual")},children:[s.jsx(Z,{size:13}),h?"Refreshing...":"Refresh"]})]})]}),n&&s.jsx("div",{className:"sys-stat-grid",children:w.map(a=>s.jsxs("div",{className:"sys-stat-card",children:[s.jsx("span",{className:"sys-stat-label",children:a.label}),s.jsx("strong",{className:"sys-stat-value",children:a.value}),s.jsx("span",{className:"sys-stat-detail",children:a.detail})]},a.label))}),c&&s.jsxs("div",{className:"sys-banner sys-banner-warning",children:[s.jsx("strong",{children:"Configuration snapshot failed."}),s.jsx("span",{children:c})]}),y&&!n&&s.jsx(Y,{title:"Loading configuration",body:"Reading Scout settings, runtime readiness, broker agents, and project inventory."}),n&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"agent-config-layout",children:[s.jsxs("div",{className:"sys-panel",children:[s.jsxs("div",{className:"sys-section-head",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"sys-section-title",children:"Runtimes"}),s.jsx("p",{className:"sys-section-subtitle",children:"Harness readiness replaces provider auth for the current local-first posture."})]}),s.jsx(ss,{size:15})]}),s.jsx("div",{className:"agent-config-list",children:n.runtimes.map(a=>s.jsx(ls,{runtime:a},a.id))})]}),s.jsxs("div",{className:"sys-panel",children:[s.jsxs("div",{className:"sys-section-head",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"sys-section-title",children:"BYOK Providers"}),s.jsx("p",{className:"sys-section-subtitle",children:"OpenAI-compatible vendors OpenScout can discover from local environment configuration."})]}),s.jsx(K,{size:15})]}),s.jsx("div",{className:"agent-config-list",children:m.map(a=>s.jsx(os,{provider:a},a.id))})]})]}),s.jsxs("div",{className:"agent-config-layout agent-config-layout-primary",children:[s.jsxs("div",{className:"sys-panel",children:[s.jsxs("div",{className:"sys-section-head",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"sys-section-title",children:"Agents"}),s.jsx("p",{className:"sys-section-subtitle",children:"Broker-visible endpoints with runtime, model, and source state."})]}),s.jsx(_,{size:15})]}),s.jsx("div",{className:"agent-config-list agent-config-list-scroll",children:n.agents.length===0?s.jsxs("div",{className:"sys-list-empty",children:[s.jsx("h3",{children:"No agents registered"}),s.jsx("p",{children:"Run setup or start a local agent to populate this roster."})]}):n.agents.map(a=>s.jsx(ds,{agent:a,selected:a.id===j?.id,navigate:e},a.id))})]}),s.jsx(ms,{agent:j,agents:n.agents,navigate:e,onConfigSaved:()=>{p("manual")}})]}),s.jsxs("div",{className:"agent-config-layout",children:[s.jsxs("div",{className:"sys-panel",children:[s.jsxs("div",{className:"sys-section-head",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"sys-section-title",children:"Tools & Context"}),s.jsx("p",{className:"sys-section-subtitle",children:"The next model boundary to make first-class."})]}),s.jsx(es,{size:15})]}),s.jsx("p",{className:"agent-config-copy",children:n.toolContext.note}),s.jsxs("div",{className:"agent-config-chip-row",children:[s.jsxs("span",{className:"sys-chip sys-chip-neutral",children:[n.toolContext.mcpServerCount," MCP servers"]}),s.jsx("span",{className:"sys-chip sys-chip-warning",children:"loadouts pending"})]})]}),s.jsxs("div",{className:"sys-panel",children:[s.jsxs("div",{className:"sys-section-head",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"sys-section-title",children:"Broker & Delivery"}),s.jsx("p",{className:"sys-section-subtitle",children:"Control-plane state and bridges that route attention back to you."})]}),s.jsx(as,{size:15})]}),s.jsxs("div",{className:"agent-config-detail-grid",children:[s.jsxs("div",{children:[s.jsx("span",{className:"agent-config-label",children:"Broker"}),s.jsx("span",{className:`sys-chip ${n.broker.healthy?"sys-chip-success":"sys-chip-danger"}`,children:n.broker.label})]}),s.jsxs("div",{children:[s.jsx("span",{className:"agent-config-label",children:"Messages"}),s.jsx("strong",{children:n.broker.messageCount})]}),n.integrations.map(a=>s.jsxs("div",{className:"agent-config-detail-wide",children:[s.jsx("span",{className:"agent-config-label",children:a.name}),s.jsx("span",{children:a.detail})]},a.id))]})]})]}),s.jsxs("div",{className:"sys-panel",children:[s.jsx("div",{className:"sys-section-head",children:s.jsxs("div",{children:[s.jsx("h3",{className:"sys-section-title",children:"Known Missing Pieces"}),s.jsx("p",{className:"sys-section-subtitle",children:"The configuration model is now visible; these are the next root-cause surfaces to build."})]})}),s.jsx("div",{className:"agent-config-gap-list",children:n.gaps.map(a=>s.jsx("span",{children:a},a))})]})]})]})})]})}export{ye as AgentConfigurationScreen};
@@ -0,0 +1 @@
1
+ import{r as l,j as e}from"./index-C8uS5szO.js";import{A as k}from"./AgentAvatar-BIwg54Tj.js";import{a as R}from"./api-CaROe5_H.js";import{c as T}from"./agent-state-DDhnFEEP.js";import{t as D}from"./time-Dhsh_2EG.js";import{u as M}from"./Provider-5Hotn7NQ.js";import{a as I}from"./agent-specialization-CiVxQsFT.js";import{p as O}from"./project-overview-helpers-BQTc_Ous.js";import{FileViewerPane as $}from"./FileViewerPane-HtiDbj9N.js";/* empty css */import{C as z}from"./chevron-right-C7UGFpkl.js";import{C as L}from"./chevron-down-B5eMsn5c.js";import{F as H}from"./folder-0fWevPvQ.js";import{F as U}from"./DocumentFocusViewer-f12RRQpV.js";import{F as G}from"./file-text-ChtICwub.js";import"./SpriteAvatar-BW1JzkDt.js";import"./CrewAvatar-CJhuqTsJ.js";import"./HarnessMark-Bt47OeHy.js";import"./colors-CFlbwC25.js";import"./router-BKiMcYa7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Ch9aYlgi.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-v5QLsOHV.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-JjLbm3W2.js";import"./runtime-picker-DdsttHHc.js";import"./scout-voice-DOQ_B77g.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DurUYl7E.js";import"./createLucideIcon-DkjnzvcJ.js";import"./conversation-model-BGFHoxQ0.js";import"./conversations-Cbg9h_Af.js";import"./index-C5cX8dkl.js";import"./NewChatOrigin-CyPPWTJP.js";import"./keyboard-nav-CXfav14z.js";import"./x-DI1ktCYb.js";import"./search-C4VlW_0l.js";import"./model-CBkMvT1w.js";import"./index-CvsM3jm8.js";import"./TextDocumentSurface-BhYvAB0o.js";import"./chevron-up-BHOEgHcn.js";import"./code-xml-BmyLM0I2.js";import"./arrow-left-PuKdO3NM.js";import"./arrow-right-ldbfp4SZ.js";import"./chunk-HRAB3GC3-C5X-kFhb.js";function B({payload:t,selectedSlug:n,selectedFile:v,filter:S,collapsed:i,onToggleFolder:N,onSelectFile:h}){const p=S.trim().toLowerCase(),b=t.folders.filter(o=>!p||o.slug.includes(p)?!0:o.files.some(c=>c.name.toLowerCase().includes(p)||c.relativePath.toLowerCase().includes(p)));return b.length===0?e.jsx("div",{className:"adef-treeEmpty",children:t.agentsRootExists?"No agent folders in .agents yet.":"No .agents directory on disk."}):e.jsx(e.Fragment,{children:b.map(o=>{const c=i.has(o.slug),C=o.slug===n;return e.jsxs("div",{className:"adef-folder","data-selected-agent":C||void 0,children:[e.jsxs("button",{type:"button",className:"adef-folderRow",onClick:()=>N(o.slug),children:[e.jsx("span",{className:"adef-folderChevron","aria-hidden":!0,children:c?e.jsx(z,{size:12}):e.jsx(L,{size:12})}),e.jsx("span",{className:"adef-folderIcon","aria-hidden":!0,children:c?e.jsx(H,{size:13}):e.jsx(U,{size:13})}),e.jsx("span",{className:"adef-folderName",children:o.slug})]}),c?null:o.files.map(d=>{const f=v?.absolutePath===d.absolutePath;return e.jsxs("button",{type:"button",className:"adef-fileRow","data-selected":f||void 0,onClick:()=>h({slug:o.slug,name:d.name,relativePath:`.agents/${d.relativePath}`,absolutePath:d.absolutePath,excerpt:d.excerpt}),children:[e.jsx("span",{className:"adef-fileIcon","aria-hidden":!0,children:e.jsx(G,{size:12})}),e.jsx("span",{className:"adef-fileName",children:d.name})]},d.absolutePath)})]},o.slug)})})}function J({agent:t,config:n,onConfigSaved:v,sessionCatalog:S,navigate:i,homeView:N}){const h=I(t,n),p=t.handle?.replace(/^@+/,"")||t.name,b=S?.sessions.length??0,[o,c]=l.useState(""),[C,d]=l.useState(""),[f,x]=l.useState(""),[E,w]=l.useState(!1),[m,g]=l.useState("idle"),[P,y]=l.useState(null),[j,F]=l.useState(null);l.useEffect(()=>{if(!n){c(""),d(""),x(t.harness??"");return}c(n.model??""),d(n.runtime.cwd),x(n.runtime.harness),w(!1),y(null),F(null)},[t.harness,t.id,n]);const A=l.useMemo(()=>{const s=["claude","codex","pi",n?.runtime.harness,t.harness,f].filter(u=>!!u?.trim());return Array.from(new Set(s))},[t.harness,n?.runtime.harness,f]),a=async s=>{if(s.preventDefault(),!(!n||m==="saving")){g("saving"),y(null),F(null);try{const u=await R(`/api/agents/${encodeURIComponent(t.id)}/config`,{method:"POST",body:JSON.stringify({model:o.trim()||null,runtime:{cwd:C.trim()||n.runtime.cwd,harness:f.trim()||n.runtime.harness},restart:E})});v(u.config),w(!1),y(u.restarted?"Saved and restarted":"Saved")}catch(u){F(u instanceof Error?u.message:"Could not save config")}finally{g("idle")}}},r=()=>i({view:N,agentId:t.id,tab:"profile"});return e.jsxs("aside",{className:"adef-inspector",children:[e.jsxs("header",{className:"adef-inspectorHead",children:[e.jsx(k,{agent:t,size:36,tile:!0,presence:!1}),e.jsxs("div",{className:"adef-inspectorIdent",children:[e.jsxs("span",{className:"adef-inspectorHandle",children:["@",p]}),e.jsx("span",{className:"adef-inspectorSpec",children:h.headline})]})]}),e.jsxs("dl",{className:"adef-inspectorFacts",children:[e.jsxs("div",{children:[e.jsx("dt",{children:"State"}),e.jsx("dd",{children:T(t.state,t)})]}),e.jsxs("div",{children:[e.jsx("dt",{children:"Sessions"}),e.jsx("dd",{children:b})]})]}),n?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"adef-inspectorSec",children:"Runtime"}),e.jsxs("form",{className:"adef-configEdit",onSubmit:a,children:[e.jsxs("label",{className:"adef-configField",children:[e.jsx("span",{children:"Model"}),e.jsx("input",{value:o,placeholder:"Harness default",disabled:!n.editable||m==="saving",onChange:s=>c(s.currentTarget.value)})]}),e.jsxs("label",{className:"adef-configField",children:[e.jsx("span",{children:"Harness"}),e.jsx("select",{value:f,disabled:!n.editable||m==="saving",onChange:s=>x(s.currentTarget.value),children:A.map(s=>e.jsx("option",{value:s,children:s},s))})]}),e.jsxs("label",{className:"adef-configField adef-configField--wide",children:[e.jsx("span",{children:"Working dir"}),e.jsx("input",{value:C,disabled:!n.editable||m==="saving",onChange:s=>d(s.currentTarget.value)})]}),e.jsxs("div",{className:"adef-configSaveRow",children:[e.jsxs("label",{className:"adef-configCheck",children:[e.jsx("input",{type:"checkbox",checked:E,disabled:!n.editable||m==="saving",onChange:s=>w(s.currentTarget.checked)}),e.jsx("span",{children:"Restart"})]}),e.jsx("button",{type:"submit",className:"adef-inspectorAct","data-primary":!0,disabled:!n.editable||m==="saving",children:m==="saving"?"Saving…":"Save"})]}),P?e.jsx("p",{className:"adef-inspectorMeta",children:P}):null,j?e.jsx("p",{className:"adef-configError",children:j}):null]}),e.jsx("div",{className:"adef-inspectorSec",children:"Permissions"}),e.jsx("p",{className:"adef-inspectorMono",children:O(n.permissionProfile)}),e.jsx("div",{className:"adef-inspectorSec",children:"Tools"}),e.jsx("div",{className:"adef-inspectorChips",children:(h.capabilities.length>0?h.capabilities:["—"]).map(s=>e.jsx("span",{className:"adef-inspectorChip",children:s},s))})]}):e.jsx("p",{className:"adef-inspectorMeta",children:"No editable local config on disk."}),t.updatedAt?e.jsxs("p",{className:"adef-inspectorMeta",children:["Updated ",D(t.updatedAt)]}):null,e.jsx("div",{className:"adef-inspectorActs",children:e.jsx("button",{type:"button",className:"adef-inspectorAct","data-primary":!0,onClick:r,children:"Sessions"})})]})}function He({agent:t,navigate:n,homeView:v="agents-v2"}){const{openFilePreview:S}=M(),[i,N]=l.useState(null),[h,p]=l.useState(null),[b,o]=l.useState(null),[c,C]=l.useState(null),[d,f]=l.useState("loading"),[x,E]=l.useState(""),[w,m]=l.useState(()=>new Set),[g,P]=l.useState(null),y=l.useCallback(async a=>{await R("/api/file/reveal",{method:"POST",body:JSON.stringify({path:a})}).catch(()=>{})},[]);l.useEffect(()=>{let a=!1;return f("loading"),(async()=>{const[r,s,u]=await Promise.allSettled([R(`/api/agents/${encodeURIComponent(t.id)}/definitions`),R(`/api/agents/${encodeURIComponent(t.id)}/config`).catch(()=>null),R(`/api/agents/${encodeURIComponent(t.id)}/session-catalog`).catch(()=>null)]);a||(r.status==="fulfilled"&&N(r.value),s.status==="fulfilled"&&p(s.value),u.status==="fulfilled"&&o(u.value),f("ready"))})(),()=>{a=!0}},[t.id]);const j=l.useMemo(()=>{if(!i)return null;const a=i.folders.find(s=>s.slug===i.selectedSlug)??i.folders[0]??null,r=a?.files.find(s=>s.name==="AGENT.md")??a?.files[0]??null;return!a||!r?null:{slug:a.slug,name:r.name,relativePath:`.agents/${r.relativePath}`,absolutePath:r.absolutePath,excerpt:r.excerpt}},[i]);l.useEffect(()=>{j&&(P(a=>a&&i?.folders.some(r=>r.files.some(s=>s.absolutePath===a.absolutePath))?a:j),i?.selectedSlug&&m(a=>{const r=new Set(a);return r.delete(i.selectedSlug),r}))},[j,i]);const F=i?.folders.reduce((a,r)=>a+r.files.length,0)??0,A=l.useCallback(a=>{m(r=>{const s=new Set(r);return s.has(a)?s.delete(a):s.add(a),s})},[]);return e.jsxs("div",{className:"adef-workspace",children:[e.jsxs("header",{className:"adef-head",children:[e.jsxs("div",{className:"adef-headCopy",children:[e.jsx("span",{className:"adef-headKind",children:"Config"}),e.jsxs("span",{className:"adef-headPath",title:i?.agentsRoot,children:[i?.agentsRootExists?".agents · explore & edit":"explore & edit",i?` · ${i.folders.length} agents · ${F} files`:""]})]}),e.jsx("input",{type:"search",className:"adef-filter",placeholder:"Filter agents & files…",value:x,onChange:a=>E(a.target.value)})]}),d==="loading"?e.jsx("div",{className:"adef-loading",children:"Loading agent config…"}):e.jsxs("div",{className:"adef-frame",children:[e.jsx("aside",{className:"adef-tree","aria-label":"Agent definition files",children:i?e.jsx(B,{payload:i,selectedSlug:i.selectedSlug,selectedFile:g,filter:x,collapsed:w,onToggleFolder:A,onSelectFile:P}):null}),e.jsx("section",{className:"adef-viewer","aria-label":"Definition file",children:g?e.jsx($,{artifact:g,onOpen:S,onReveal:a=>{y(a)},onBrowse:i?a=>n({view:"code",root:i.projectRoot,file:a}):void 0}):e.jsx("div",{className:"av2-repoViewerState",children:i?.agentsRootExists?"Select a definition file — or create .agents/<handle>/AGENT.md":"Create .agents/<handle>/AGENT.md in the project root to define this expert on disk."})}),e.jsx(J,{agent:t,config:h,onConfigSaved:p,sessionCatalog:c,navigate:n,homeView:v})]})]})}export{He as AgentDefinitionsWorkspace};
@@ -0,0 +1 @@
1
+ import{r as v,j as a}from"./index-C8uS5szO.js";import{n as A,b as C,c as y}from"./agent-state-DDhnFEEP.js";import{s as $}from"./colors-CFlbwC25.js";import{t as k}from"./time-Dhsh_2EG.js";import{A as w}from"./AgentLiveActions-lYzicnNa.js";function F(c){return c?c.replace(/^\/Users\/[^/]+/,"~"):null}const I=v.forwardRef(function({agent:e,pinned:l,onOpen:N,onClose:b,onAction:u,style:g,className:o},f){const r=A(e.state),m=C(e.state),n=e.cwd??e.projectRoot,t=l?n:F(n),d=e.handle?`@${e.handle.replace(/^@+/,"")}`:null,h=e.selector??e.defaultSelector,p=d??e.name,j=e.authorityNodeName??e.homeNodeName??e.authorityNodeId??e.homeNodeId,i=y(r);return a.jsxs("div",{ref:f,className:`agent-card${l?" agent-card--pinned":""}${o?` ${o}`:""}`,style:g,role:"dialog","aria-label":`${p} details`,children:[a.jsxs("header",{className:"agent-card-head",children:[a.jsx("div",{className:"agent-card-name",children:p}),a.jsxs("div",{className:"agent-card-meta",children:[a.jsx("span",{className:`agent-card-dot agent-card-dot--${m}`,style:r==="in_turn"||r==="in_flight"?{background:$(e.state)}:void 0}),i&&a.jsx("span",{className:`agent-card-state agent-card-state--${m}`,children:i}),e.updatedAt&&a.jsxs(a.Fragment,{children:[i&&a.jsx("span",{className:"agent-card-sep",children:"·"}),a.jsx("span",{className:"agent-card-time",children:k(e.updatedAt)})]})]})]}),a.jsxs("div",{className:"agent-card-body",children:[d&&a.jsx(s,{label:"handle",children:a.jsx("code",{className:"agent-card-mono",children:d})}),h&&a.jsx(s,{label:"selector",children:a.jsx("code",{className:"agent-card-mono",children:h})}),t&&a.jsx(s,{label:"cwd",children:a.jsx("code",{className:"agent-card-mono",title:n??t,children:t})}),j&&a.jsx(s,{label:"machine",children:a.jsx("span",{className:"agent-card-mono",children:j})}),(e.project||e.branch)&&a.jsx(s,{label:"project",children:a.jsxs("span",{className:"agent-card-mono",children:[e.project??"—",e.branch&&a.jsxs(a.Fragment,{children:[a.jsx("span",{className:"agent-card-sep agent-card-sep--inline",children:"·"}),a.jsx("span",{className:"agent-card-branch",children:e.branch})]})]})}),(e.harness||e.model)&&a.jsx(s,{label:"runtime",children:a.jsxs("span",{className:"agent-card-mono",children:[e.harness??"—",e.model&&a.jsxs(a.Fragment,{children:[a.jsx("span",{className:"agent-card-sep agent-card-sep--inline",children:"·"}),a.jsx("span",{className:"agent-card-model",children:e.model})]})]})}),e.transport&&a.jsx(s,{label:"launch transport",children:a.jsx("span",{className:"agent-card-mono",children:e.transport})}),e.role&&a.jsx(s,{label:"role",children:a.jsx("span",{className:"agent-card-mono",children:e.role})}),e.capabilities&&e.capabilities.length>0&&a.jsx(s,{label:"capabilities",children:a.jsxs("div",{className:"agent-card-caps",children:[e.capabilities.slice(0,8).map(x=>a.jsx("span",{className:"agent-card-cap",children:x},x)),e.capabilities.length>8&&a.jsxs("span",{className:"agent-card-cap agent-card-cap--more",children:["+",e.capabilities.length-8]})]})})]}),a.jsx(w,{agent:e,variant:"compact",onNavigate:u}),a.jsxs("footer",{className:"agent-card-foot",children:[a.jsxs("button",{type:"button",className:"agent-card-link",onClick:N,children:["Open agent ",a.jsx("span",{"aria-hidden":!0,children:"→"})]}),l&&a.jsx("button",{type:"button",className:"agent-card-close",onClick:b,"aria-label":"Close",children:"esc"})]})]})});function s({label:c,children:e}){return a.jsxs("div",{className:"agent-card-field",children:[a.jsx("span",{className:"agent-card-label",children:c}),a.jsx("div",{className:"agent-card-value",children:e})]})}export{I as A};
@@ -0,0 +1 @@
1
+ import{r as l,j as e}from"./index-C8uS5szO.js";import{AgentAdventures as rt}from"./AgentAdventures-NwTKeF0F.js";import{SharedWorkFloor as it}from"./SharedWorkFloor-yPWFLZwX.js";import{FloorReplay as ct}from"./FloorReplay-BHo79HCD.js";import{a as dt}from"./floor-memory-YMM8AlLY.js";import{FloorTacticalHUD as mt}from"./FloorTacticalHUD-Bngao6sn.js";import{FloorResourcesSheet as pt}from"./FloorResourcesSheet-Djrgd_ZU.js";/* empty css */import{F as Se,b as ut,a as we}from"./agent-floor-world-layout-hfMjuoui.js";import{FloorContextSheet as ft}from"./FloorContextSheet-DV-SYA0K.js";import{AgentFloorWorld as gt}from"./AgentFloorWorld-BDJmXl3C.js";import{f as Be}from"./agent-floor-actor-3v9drnxh.js";import{f as _t}from"./floor-character-name-CqJPOlXb.js";import{H as Ke}from"./HarnessMark-Bt47OeHy.js";import{a as Oe,S as Ae}from"./SpriteAvatar-BW1JzkDt.js";import{n as ht}from"./agent-state-DDhnFEEP.js";import{o as xt,b as jt}from"./lane-observe-BD21P8BB.js";import{t as bt}from"./time-Dhsh_2EG.js";import{S as Nt}from"./SessionObserve-DaqDhqDI.js";import{l as Q}from"./agent-lanes-model-CX0wTcnF.js";import{p as kt,s as We,a as He}from"./lane-roster-store-DzNHP392.js";import{c as vt}from"./createLucideIcon-DkjnzvcJ.js";import{T as St}from"./terminal-96JWDYDL.js";import{F as wt}from"./file-code-corner-D_Aptal2.js";import{M as yt}from"./message-square-NmXWtWLR.js";import"./ReplayClock-B7JLTp8A.js";import"./SproutActionSprite-DveCzg6l.js";/* empty css */import"./CrewSprite-hgpA3SWB.js";import"./adventure-playback-DTfkhIc0.js";import"./AdventureScenery-D548O0x4.js";import"./adventure-habitats-v1-M1lcpTJh.js";import"./AdventureReader-ClMxT0e4.js";import"./api-CaROe5_H.js";import"./index-CvsM3jm8.js";import"./TextDocumentSurface-BhYvAB0o.js";import"./chevron-right-C7UGFpkl.js";import"./folder-0fWevPvQ.js";import"./file-text-ChtICwub.js";import"./floor-preview-text-HrORUJ7D.js";/* empty css */import"./book-open-BlJnpf2U.js";import"./x-DI1ktCYb.js";import"./scroll-text-DwC8r2g6.js";import"./ReplayLog-DZTpf2CW.js";import"./observe-CkfOxYx_.js";import"./surface-activity-B1rgWB1i.js";import"./AdventureEvidence-Dzz9VbuE.js";import"./Provider-5Hotn7NQ.js";import"./router-BKiMcYa7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Ch9aYlgi.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-v5QLsOHV.js";import"./index-BWHgHrtv.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-JjLbm3W2.js";import"./runtime-picker-DdsttHHc.js";import"./scout-voice-DOQ_B77g.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DurUYl7E.js";import"./conversation-model-BGFHoxQ0.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-C5cX8dkl.js";import"./NewChatOrigin-CyPPWTJP.js";import"./keyboard-nav-CXfav14z.js";import"./chevron-down-B5eMsn5c.js";import"./search-C4VlW_0l.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-f12RRQpV.js";import"./chevron-up-BHOEgHcn.js";import"./code-xml-BmyLM0I2.js";import"./arrow-left-PuKdO3NM.js";import"./arrow-right-ldbfp4SZ.js";import"./chunk-HRAB3GC3-C5X-kFhb.js";import"./agent-lane-detail-Db7KyAlf.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";/* empty css */import"./arrow-up-right-Hn754ybA.js";/* empty css */import"./flag-CqdOxVkI.js";import"./wrench-BsMTSeji.js";import"./pause-DWS7YGQ3.js";import"./play-D_Pggug4.js";import"./radio-C_jtwbFP.js";import"./WorldMinimap-Blqg0d5r.js";import"./WorldSky-DV9bpvXj.js";import"./WorldActorTalk-uIH2jGqA.js";import"./send-to-agent-session-BZGq_ycy.js";import"./FloorExchangePanel-D59nvRCF.js";import"./floor-message-passes-CJh9f8Jp.js";import"./shared-work-artifacts-4IIQXQfc.js";import"./CharacterFamilyPreview-CfO3j8Of.js";import"./RenderedWorkerSprite-CvdWO32C.js";import"./FloorMessagePasses-BCwsz9VS.js";import"./WorkRunView-x5PH1byG.js";import"./floor-context-model-DZBpo_oD.js";import"./lane-ask-display-B6iCAVcd.js";import"./context-budget-DemtXu7E.js";import"./SharedFloorCharacter-CSYG_t9t.js";import"./WorldCharacter-Dn4sIXNP.js";import"./RiggedWorkerCharacter-DNe731GE.js";/* empty css */import"./FloorSavedWork-2tjBoy06.js";import"./pin-DWlD1BOF.js";/* empty css *//* empty css */import"./git-branch-CA3cHKCI.js";import"./coffee-C_D9zooM.js";/* empty css */import"./bash-format-BRV5C6Gv.js";import"./lane-tool-detail-Czggx8oM.js";import"./LaneToolHoverCard-C6YehJqD.js";import"./mentions-Ctw1ECUC.js";import"./AgentDetailCard-CFDE8TLi.js";import"./AgentLiveActions-lYzicnNa.js";import"./terminal-takeover-BlpxpvSp.js";import"./openContent-C6XO6kr5.js";import"./eye-CtqSV8BS.js";import"./message-markup-DgFSyb3f.js";import"./ObservedTopologyPanel-DkEkQzo-.js";import"./ObserveTextFlow-ET0dD1wO.js";import"./use-reduced-motion-D7n3vK8t.js";import"./proxy-DOG46ja4.js";import"./SessionObserveEvidence-Drv-D8Oh.js";import"./message-circle-CSiJj6yo.js";import"./external-link-RT4Ph-6-.js";const $t=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]],Mt=vt("circle-dot",$t),U=5*6e4,Ot=3,ne=Ot+1,se=8,At=15*6e4,Ge=.65,ae=1.45,Ye=.1,je=360,be=260;function ye(o){return Math.round(Math.min(ae,Math.max(Ge,o))*100)/100}function Y(o,a){return Math.round(Math.min(a,Math.max(-a,o)))}const le=128,$e=34,Xe=14,Ct=12,V=44,Me=7,J=58,I=440,Lt=48,Rt=24,Ft=480,qe="openscout:agent-floor-orient",Ue="openscout:agent-floor-lane-order";function Et(){try{const o=localStorage.getItem(qe);if(o==="past-left"||o==="past-right")return o}catch{}return"past-left"}function Pt(){try{const o=JSON.parse(sessionStorage.getItem(Ue)??"[]");return Array.isArray(o)?o.filter(a=>typeof a=="string"):[]}catch{return[]}}function Ne(o){return new Date(o).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",hour12:!1})}const Tt=/^(edit|multi_?edit|write|apply_?patch|patch_apply|str_?replace|notebook_?edit|create_file)/i;function It(o){return o.kind==="tool"?o.diff||o.tool&&Tt.test(o.tool.trim())?"edit":"tool":o.kind==="message"||o.kind==="ask"?"msg":null}function Ze(o,a,n){const r=o.observe?.metadata?.session?.sessionStart,m={tool:0,edit:0,msg:0},i=Array.from({length:ne},()=>({blocks:[],counts:{tool:0,edit:0,msg:0},tools:new Map,total:0})),h=[];let f=null;for(const g of o.observe?.events??[]){const b=It(g);if(!b)continue;const d=xt(g,r),P=d===null||d>=a?0:Math.floor((a-d)/U)+1;if(P>=ne)continue;const p=i[P];p.blocks.push(b),p.counts[b]+=1,p.total+=1,m[b]+=1;const x=b==="msg"?null:g.tool?.trim()||"tool";x&&p.tools.set(x,(p.tools.get(x)??0)+1),h.push({kind:b,label:b==="msg"?jt(g.text,44,1):g.text.trim()||x||"tool",at:d}),f={at:d,label:b==="msg"?"message":g.tool?.trim()||"tool"}}return{lane:o,live:Be(o,n).posture==="working",slots:i.map(g=>({blocks:g.blocks.slice(-8),counts:g.counts,tools:[...g.tools.entries()].sort((b,d)=>d[1]-b[1]),total:g.total})),counts:m,strip:h.slice(-10).map(g=>g.kind),lastLabel:f?.label??null,lastAt:f?.at??(o.lastActiveAt||null)}}function ke(o){const a=(n,r,m)=>`${n} ${n===1?r:m}`;return[a(o.tool,"tool","tools"),a(o.edit,"edit","edits"),a(o.msg,"msg","msgs")].join(" · ")}function Dt(o){return/^(working|active|running|in_turn|in_flight)/i.test(o.lane.agent.state??"")?"quiet":"idle"}function B(o){return o.tool+o.edit+o.msg}function Ve(o){if(B(o)===0)return"quiet";const n=[["tool-led",o.tool],["edit-heavy",o.edit],["conversation-led",o.msg]];return n.sort((r,m)=>m[1]-r[1]),n[0][1]===n[1][1]?"balanced":n[0][0]}function zt(o){const a=new Map;for(const r of o.slots)for(const[m,i]of r.tools)a.set(m,(a.get(m)??0)+i);const[n]=[...a.entries()].sort((r,m)=>m[1]-r[1]);return n?{value:n[0],detail:`${n[1]} call${n[1]===1?"":"s"} · 15m`}:{value:"no tool pattern",detail:"messages and edits only"}}function Wt(o){const a=o.slots[0]?.total??0,n=o.slots[1]?.total??0;return a===0&&n===0?{value:"quiet",detail:"no work in the last 10m"}:a===0?{value:"paused",detail:`${n} in the prior 5m`}:n===0?{value:"new burst",detail:`${a} in the current 5m`}:a>=n+3?{value:"building",detail:`${a} now · ${n} prior`}:n>=a+3?{value:"easing",detail:`${a} now · ${n} prior`}:{value:"steady",detail:`${a} now · ${n} prior`}}function X({label:o,value:a,detail:n,mix:r}){const m=r?Math.max(1,B(r)):1;return e.jsxs("span",{className:"agent-floor__dock-insight",children:[e.jsx("span",{className:"agent-floor__dock-insight-label",children:o}),e.jsx("span",{className:"agent-floor__dock-insight-value",children:a}),e.jsx("span",{className:"agent-floor__dock-insight-detail",children:n}),r?e.jsx("span",{className:"agent-floor__dock-mix",style:{"--mix-tool":`${r.tool/m*100}%`,"--mix-edit":`${(r.tool+r.edit)/m*100}%`},"aria-hidden":"true"}):null]})}function Je(o,a){const n=o.lastAt?bt(o.lastAt,a):null;return o.live?{glyph:"▸",label:o.lastLabel??"working",meta:n??"now"}:{glyph:"⏸",label:Dt(o),meta:n?`· ${n}`:""}}function Ht({series:o,now:a}){const n=Je(o,a);return o.live?e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"agent-floor__card-run",children:n.glyph}),e.jsx("span",{className:"agent-floor__card-tool",children:n.label}),e.jsx("span",{className:"agent-floor__card-ago",children:n.meta})]}):e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"agent-floor__card-pause",children:n.glyph}),e.jsxs("span",{className:"agent-floor__card-idle",children:[n.label,n.meta?` ${n.meta}`:""]})]})}function Yt({kind:o,z:a,size:n=$e,faceH:r=Ct,pad:m,live:i}){return e.jsxs("span",{className:`agent-floor__block is-${o}${m?" is-pedestal":""}${i?" is-live":""}`,style:{"--z":`${a}px`,"--bs":`${n}px`,"--bh":`${r}px`},"aria-hidden":"true",children:[e.jsx("span",{className:"agent-floor__face is-left"}),e.jsx("span",{className:"agent-floor__face is-right"}),e.jsx("span",{className:"agent-floor__face is-top"})]})}function Xt({slot:o}){const a=Math.max(1,o.total),n=o.counts.tool/a*100,r=o.counts.edit/a*100;return e.jsxs("span",{className:"agent-floor__block agent-floor__slab",style:{"--z":"0px","--bs":`${V}px`,"--bh":`${Me}px`,"--mix-a":`${n.toFixed(1)}%`,"--mix-b":`${(n+r).toFixed(1)}%`},"aria-hidden":"true",children:[e.jsx("span",{className:"agent-floor__face is-left"}),e.jsx("span",{className:"agent-floor__face is-right"}),e.jsx("span",{className:"agent-floor__face is-top"})]})}function Zt({slot:o,slotIndex:a,periodStart:n}){const r=a===0?`${Ne(n)} — now`:`${Ne(n-a*U)} – ${Ne(n-(a-1)*U)}`;return e.jsxs("span",{className:"agent-floor__peek",children:[e.jsx("span",{className:"agent-floor__peek-range",children:r}),e.jsxs("span",{className:"agent-floor__peek-cols",children:[e.jsxs("span",{className:"agent-floor__peek-col",children:[o.tools.slice(0,3).map(([m,i])=>e.jsxs("span",{className:"agent-floor__peek-tool",children:[m,i>1?` ×${i}`:""]},m)),o.tools.length===0?e.jsx("span",{className:"agent-floor__peek-tool is-empty",children:"no tools"}):null]}),e.jsxs("span",{className:"agent-floor__peek-col is-right",children:[e.jsxs("span",{children:[o.counts.edit," edit",o.counts.edit===1?"":"s"]}),e.jsxs("span",{children:[o.counts.msg," msg",o.counts.msg===1?"":"s"]})]})]})]})}function Vt({series:o,index:a,planeW:n,flip:r,periodStart:m,now:i,focused:h,pinned:f,dimmed:g,peekSlot:b,onFocus:d,onPeek:P,onSelect:p}){const{lane:x,live:c,slots:M}=o,S=x.agent,y=Q(S,x.source),re=Oe(S),K=(le-V)/2,ie=_=>{const k=(J-V)/2;return r?I+_*J+k:n-I-(_+1)*J+k},O=Be(x,i),G=[{id:"home",label:"READY",x:55,y:44},{id:"tools",label:"TOOLS",x:165,y:44},{id:"edit",label:"EDIT",x:275,y:44},{id:"message",label:"COMMS",x:380,y:44}],ce=G.find(_=>_.id===O.station),N=r?0:n-I,$=N+ce.x,de=ce.y,ee=x.id.replace(/[^a-zA-Z0-9]/g,"").slice(-5);return e.jsxs("button",{type:"button",className:`agent-floor__lane${c?" is-live":""}${a%2===1?" is-alt":""}${h?" is-focus":""}${f?" is-pinned":""}${g?" is-dim":""}`,style:{left:0,top:a*le,width:n,height:le},onClick:()=>p(x),onMouseEnter:()=>d(x.id),onMouseLeave:()=>{d(null),P(x.id,null)},onFocus:()=>d(x.id),onBlur:()=>d(null),"aria-label":`${y} ${S.harness??""} ${ee} — ${O.label} — ${f?"open timeline":"pin details"}`,children:[e.jsx("span",{className:"agent-floor__lane-strip","aria-hidden":"true"}),M.map((_,k)=>{if(_.total===0)return null;const D=h&&b===k,T=Me+2+_.blocks.length*Xe;return e.jsxs("span",{className:`agent-floor__stack${k===0?" is-now":" is-minted"}${D?" is-peeking":""}`,style:{left:ie(k),top:K},onMouseEnter:()=>P(x.id,k),children:[e.jsx(Xt,{slot:_}),e.jsx("span",{className:"agent-floor__stack-blocks",style:{left:(V-$e)/2,top:(V-$e)/2},children:_.blocks.map((z,me)=>e.jsx(Yt,{kind:z,z:Me+2+me*Xe},me))}),D?e.jsx("span",{className:"agent-floor__bb agent-floor__peek-anchor",style:{left:V/2,top:V/2,"--z":`${T+46}px`},children:e.jsx(Zt,{slot:_,slotIndex:k,periodStart:m})}):null]},k)}),e.jsxs("span",{className:"agent-floor__work-zone",style:{left:N,width:I},"aria-hidden":"true",children:[e.jsx("span",{className:"agent-floor__route"}),G.map(_=>e.jsxs("span",{className:`agent-floor__station${_.id===O.station?" is-occupied":""}`,style:{left:_.x,top:_.y},children:[e.jsx("span",{className:"agent-floor__station-surface",children:_.id==="home"?e.jsx(Mt,{size:22}):_.id==="tools"?e.jsx(St,{size:22}):_.id==="edit"?e.jsx(wt,{size:22}):e.jsx(yt,{size:22})}),e.jsx("span",{className:"agent-floor__bb agent-floor__station-label",children:_.label})]},_.id))]}),e.jsxs("span",{className:`agent-floor__actor-position is-${O.posture}${f||h?" is-selected":""}`,style:{left:$,top:de},"data-station":O.station,children:[e.jsx("span",{className:"agent-floor__selection-ring"}),e.jsxs("span",{className:"agent-floor__bb agent-floor__actor-body",style:{"--z":"42px"},children:[e.jsx(Ae,{name:S.name,size:56,hue:re.hue,tone:re.tone,glow:!1}),O.posture==="attention"||O.posture==="blocked"?e.jsx("span",{className:"agent-floor__actor-alert",children:"!"}):null]})]}),e.jsx("span",{className:"agent-floor__bb agent-floor__flag-anchor agent-floor__unit-label",style:{left:N+220,top:91,"--z":"76px"},children:e.jsxs("span",{className:`agent-floor__flag${h?" is-focus":""}${f?" is-pinned":""}`,children:[e.jsx("span",{className:"agent-floor__flag-name",children:y}),e.jsxs("span",{className:"agent-floor__unit-id",children:[S.harness," · ",ee]}),e.jsx("span",{className:`agent-floor__unit-status is-${O.posture}`,children:O.label})]})})]})}function Bt({focus:o,pinned:a,ledger:n,liveCount:r,now:m}){if(!o){const d=n.reduce((c,M)=>(c.tool+=M.counts.tool,c.edit+=M.counts.edit,c.msg+=M.counts.msg,c),{tool:0,edit:0,msg:0}),P=n.filter(c=>B(c.counts)>0).length,p=[...n].sort((c,M)=>B(M.counts)-B(c.counts))[0]??null,x=p?B(p.counts):0;return e.jsxs("div",{className:"agent-floor__dock is-resting",children:[e.jsx("span",{className:"agent-floor__dock-id agent-floor__dock-fleet",children:e.jsxs("span",{className:"agent-floor__dock-id-copy",children:[e.jsx("span",{className:"agent-floor__dock-title",children:"fleet at a glance"}),e.jsxs("span",{children:[n.length," lane",n.length===1?"":"s"," · ",r," live"]})]})}),e.jsxs("span",{className:"agent-floor__dock-insights",children:[e.jsx(X,{label:"coverage",value:`${P}/${n.length} lanes`,detail:"showed work · 15m"}),e.jsx(X,{label:"hottest lane",value:p?Q(p.lane.agent,p.lane.source):"none yet",detail:p?`${x} classified events`:"waiting for activity"}),e.jsx(X,{label:"throughput",value:`${B(d)} events`,detail:"classified · 15m"}),e.jsx(X,{label:"activity mix",value:Ve(d),detail:ke(d),mix:d})]})]})}const i=o.lane.agent,h=Oe(i),f=Wt(o),g=zt(o),b=o.slots.filter(d=>d.total>0).length;return e.jsxs("div",{className:`agent-floor__dock${a?" is-pinned":""}`,children:[e.jsxs("span",{className:"agent-floor__dock-id",children:[e.jsx(Ae,{name:i.name,size:30,tile:!0,hue:h.hue,tone:h.tone}),e.jsxs("span",{className:"agent-floor__dock-id-copy",children:[e.jsxs("span",{className:"agent-floor__dock-name",children:[Q(i,o.lane.source),e.jsx(Ke,{harness:i.harness,size:12,className:"agent-floor__card-mark"}),e.jsx("span",{className:`agent-floor__card-dot${o.live?" is-live":""}`}),a?e.jsx("span",{className:"agent-floor__dock-lock",children:"locked"}):null]}),e.jsx("span",{className:"agent-floor__dock-action",children:e.jsx(Ht,{series:o,now:m})})]})]}),e.jsxs("span",{className:"agent-floor__dock-insights",children:[e.jsx(X,{label:"momentum",value:f.value,detail:f.detail}),e.jsx(X,{label:"cadence",value:`${b}/${o.slots.length} windows`,detail:"active five-minute bands"}),e.jsx(X,{label:"signature",value:g.value,detail:g.detail}),e.jsx(X,{label:"activity mix",value:Ve(o.counts),detail:ke(o.counts),mix:o.counts})]})]})}function Kt({series:o,now:a,concise:n,onConciseChange:r,onClose:m,onOpenFull:i,operatorName:h}){const{agent:f,observe:g,source:b}=o.lane,d=Q(f,b);return e.jsxs("aside",{className:"agent-floor__trace-panel","aria-label":`${d} selected lane trace`,children:[e.jsx("button",{type:"button",className:"agent-floor__trace-close",onClick:m,"aria-label":"Close selected lane trace",children:"×"}),e.jsx("div",{className:"agent-floor__trace-body",children:g?e.jsx(Nt,{data:g,agentId:b==="scout"?f.id:void 0,sessionId:f.harnessSessionId,showRail:!1,variant:"lane",nowMs:a,traceWindowMs:At,traceWindowLabel:"15m",laneCollapseTechnicalEvents:n,onLaneCollapseTechnicalEventsChange:r,laneOperatorName:h,onLaneEventSelect:i}):e.jsx("div",{className:"agent-floor__trace-empty",children:"Waiting for trace activity…"})})]})}function Gt({zoom:o,fit:a,onZoomChange:n,onReset:r}){const m=Math.round(o*100);return e.jsxs("div",{className:"agent-floor__zoom",role:"group","aria-label":"Floor zoom",children:[e.jsx("button",{type:"button","aria-label":"Zoom out",disabled:o<=Ge,onClick:()=>n(ye(o-Ye)),children:"−"}),e.jsx("button",{type:"button",className:"agent-floor__zoom-reset","aria-label":"Reset floor zoom to fit",title:"Reset zoom and position to automatic fit",onClick:r,children:a?"fit":`${m}%`}),e.jsx("button",{type:"button","aria-label":"Zoom in",disabled:o>=ae,onClick:()=>n(ye(o+Ye)),children:"+"})]})}function bn({lanes:o,now:a,onOpenTrace:n,railLedger:r=!1,operatorName:m}){const i=Math.max(a,Date.now()),[h,f]=l.useState(null),[g,b]=l.useState(!1),[d,P]=l.useState(!0),[p,x]=l.useState(!1),[c,M]=l.useState(!1),[S,y]=l.useState(null),[re,K]=l.useState(0),[ie,O]=l.useState(Et),[G,ce]=l.useState(null),[N,$]=l.useState(null),[de,ee]=l.useState(null),[Ce,_]=l.useState(!1),[k,D]=l.useState(1),[T,z]=l.useState({x:0,y:0}),[me,Le]=l.useState(!1),[pe,Re]=l.useState(Pt),A=l.useMemo(()=>dt(pe,o.map(t=>t.id)),[pe,o]),ue=Math.max(1,Math.ceil(A.length/se)),W=Math.min(re,ue-1),Fe=Object.fromEntries(A.map((t,s)=>[t,s%se])),Ee=l.useRef(null),fe=l.useRef(null),[ge,Qe]=l.useState(null),_e=ie==="past-right";l.useEffect(()=>{const t=Ee.current;if(!t)return;const s=new ResizeObserver(u=>{const v=u[0]?.contentRect;v&&Qe(j=>j&&Math.abs(j.w-v.width)<2&&Math.abs(j.h-v.height)<2?j:{w:v.width,h:v.height})});return s.observe(t),()=>s.disconnect()},[]);const et=l.useCallback(()=>{O(t=>{const s=t==="past-left"?"past-right":"past-left";try{localStorage.setItem(qe,s)}catch{}return s})},[]),L=l.useCallback(t=>{ce(t),t===null&&ee(null)},[]),tt=l.useCallback((t,s)=>{ee(s===null?null:{laneId:t,slot:s})},[]),R=l.useCallback(t=>{const s=A.indexOf(t.id);s>=0&&K(Math.floor(s/se)),y(null),f(null),c&&N===t.id?n(t):$(t.id)},[N,n,A,c]),he=l.useCallback(()=>{D(1),z({x:0,y:0})},[]),ot=l.useCallback(t=>{if(!(t.target instanceof Element?t.target:null)?.closest(".agent-floor__trace-panel, .agent-floor__zoom, .floor-tactical, .shared-floor, .floor-replay")){if(t.preventDefault(),t.metaKey||t.ctrlKey){D(u=>ye(u-t.deltaY*.002));return}z(u=>({x:Y(u.x-t.deltaX,je),y:Y(u.y-t.deltaY,be)}))}},[]),st=l.useCallback(t=>{const s=t.target instanceof Element?t.target:null;t.button!==0||s?.closest("button, .agent-floor__trace-panel, .floor-tactical, .shared-floor, .floor-replay")||(fe.current={pointerId:t.pointerId,startX:t.clientX,startY:t.clientY,panX:T.x,panY:T.y},t.currentTarget.setPointerCapture(t.pointerId),Le(!0))},[T]),nt=l.useCallback(t=>{const s=fe.current;!s||s.pointerId!==t.pointerId||z({x:Y(s.panX+t.clientX-s.startX,je),y:Y(s.panY+t.clientY-s.startY,be)})},[]),Pe=l.useCallback(t=>{fe.current?.pointerId===t.pointerId&&(fe.current=null,t.currentTarget.hasPointerCapture(t.pointerId)&&t.currentTarget.releasePointerCapture(t.pointerId),Le(!1))},[]);l.useEffect(()=>{if(N===null&&S===null&&h===null)return;const t=s=>{s.key==="Escape"&&($(null),y(null),f(null))};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[N,S,h]);const q=Math.floor(i/U)*U,C=l.useMemo(()=>{const t=new Map(o.map(j=>[j.id,j])),s=pe.flatMap(j=>{const E=t.get(j);return E?[E]:[]}),u=new Set(s.map(j=>j.id)),v=o.filter(j=>!u.has(j.id)).sort((j,E)=>E.lastActiveAt-j.lastActiveAt);return s.concat(v)},[o,pe]);l.useEffect(()=>{const t=A;Re(s=>s.length===t.length&&s.every((u,v)=>u===t[v])?s:t);try{sessionStorage.setItem(Ue,JSON.stringify(t))}catch{}},[A]);const{series:te,hidden:Te,planeW:Z,planeD:xe,lanesStartY:Ie}=l.useMemo(()=>{const t=C.map(E=>Ze(E,q,i)),s=new Set(A.slice(W*se,(W+1)*se)),u=t.filter(E=>s.has(E.lane.id)),v=u.length*le,j=Math.max(Ft,v+Rt*2);return{series:u,hidden:t.filter(E=>!u.includes(E)),planeW:Lt+ne*J+I,planeD:j,lanesStartY:(j-v)/2}},[C,A,q,W,i]),w=l.useMemo(()=>C.map(t=>Ze(t,q,i)),[C,q,i]),ve=w.filter(t=>t.live).length,F=G??N,at=F===null?null:w.find(t=>t.lane.id===F)??null,H=N===null?null:w.find(t=>t.lane.id===N)??null;l.useEffect(()=>{N!==null&&!w.some(t=>t.lane.id===N)&&$(null)},[w,N]),l.useEffect(()=>{_(!1)},[N]),l.useEffect(()=>{if(!r)return;const t=w.map(s=>{const u=Je(s,i);return{id:s.lane.id,label:Q(s.lane.agent,s.lane.source),statusLabel:s.lane.agent.harness?.trim()||"lane",tone:ht(s.lane.agent.state,s.lane.agent),updatedAt:s.lane.lastActiveAt>0?s.lane.lastActiveAt:void 0,floor:{live:s.live,harness:s.lane.agent.harness,identity:_t(s.lane).label,project:s.lane.agent.project?.trim()||null,actionGlyph:u.glyph,actionLabel:u.label,actionMeta:u.meta,strip:s.strip,countsLabel:ke(s.counts)}}});kt(t)},[r,w,i]),l.useEffect(()=>{if(r)return We({onHover:L,onSelect:t=>{const s=w.find(u=>u.lane.id===t);s&&R(s.lane)}}),()=>We(null)},[r,w,L,R]),l.useEffect(()=>{if(r)return He(F),()=>He(null)},[r,F]);const De=t=>_e?I+t*J:Z-I-t*J,ze=Ie+te.length*le+26,oe=l.useMemo(()=>{if(!ge)return 1;const t=(c?Z:we)+40,s=(c?xe:Se)+35,u=Math.min((ge.w-40)/t,(ge.h-55)/s);return Math.round(Math.min(1.6,Math.max(.15,u))*100)/100},[ge,Z,xe,c]),lt=Math.round(oe*k*100)/100;return e.jsxs("div",{className:`agent-floor is-tactical${r?" is-rail-ledger":""}`,"data-live-count":ve,"data-floor-orient":ie,children:[e.jsxs("div",{className:"agent-floor__body",children:[r?null:e.jsxs("aside",{className:"agent-floor__ledger","aria-label":"Fleet ledger",children:[e.jsxs("header",{className:"agent-floor__ledger-head",children:[e.jsx("span",{className:"agent-floor__ledger-title",children:"fleet"}),e.jsxs("span",{className:"agent-floor__ledger-meta",children:[w.length," lane",w.length===1?"":"s"," · ",ve," live"]}),e.jsx("span",{className:"agent-floor__ledger-trace",children:"trace 15m"})]}),e.jsx("div",{className:"agent-floor__ledger-rows",children:w.map(t=>{const s=t.lane.agent,u=Oe(s);return e.jsxs("button",{type:"button",className:`agent-floor__ledger-row${F===t.lane.id?" is-focus":""}`,onClick:()=>R(t.lane),onMouseEnter:()=>L(t.lane.id),onMouseLeave:()=>L(null),children:[e.jsxs("span",{className:"agent-floor__ledger-id",children:[e.jsx(Ae,{name:s.name,size:18,tile:!0,hue:u.hue,tone:u.tone}),e.jsx("span",{className:"agent-floor__ledger-name",children:Q(s,t.lane.source)}),e.jsx(Ke,{harness:s.harness,size:11,className:"agent-floor__card-mark"}),e.jsx("span",{className:`agent-floor__card-dot${t.live?" is-live":""}`})]}),e.jsxs("span",{className:"agent-floor__ledger-tally",children:[e.jsx("span",{className:"agent-floor__ledger-strip",children:t.strip.map((v,j)=>e.jsx("span",{className:`agent-floor__ledger-cell is-${v}`},j))}),e.jsx("span",{className:"agent-floor__ledger-counts",children:ke(t.counts)})]})]},t.lane.id)})}),e.jsx("footer",{className:"agent-floor__ledger-foot",children:"rows and flags are linked — hover to unroll, click to pin"})]}),e.jsxs("div",{className:`agent-floor__viewport${H||S||h?" is-inspecting":""}${me?" is-dragging":""}`,ref:Ee,onWheel:ot,onPointerDown:st,onPointerMove:nt,onPointerUp:Pe,onPointerCancel:Pe,children:[e.jsxs("div",{className:"agent-floor__command-bar",children:[c||!d?e.jsx("strong",{children:"Operations floor"}):null,e.jsxs("div",{className:"agent-floor__view-switch",role:"group","aria-label":"Floor view",children:[e.jsx("button",{type:"button","aria-pressed":!c&&!p,onClick:()=>{x(!1),M(!1),he()},children:"World"}),e.jsx("button",{type:"button","aria-pressed":p,onClick:()=>{x(!0),M(!1),y(null),f(null),he()},children:"Replay"}),e.jsx("button",{type:"button","aria-pressed":c,onClick:()=>{x(!1),M(!0),y(null),f(null),he()},children:"History"})]}),!c&&!p?e.jsx("button",{type:"button",onClick:()=>P(!d),children:d?"Rooms":"Shared map"}):null,!c&&!p?e.jsx("div",{className:"agent-floor__view-switch","aria-label":"Floor resources",children:["artifacts","branches","terminals"].map(t=>e.jsx("button",{type:"button","aria-pressed":h===t,onClick:()=>{f(t),$(null),y(null)},children:t==="artifacts"?"Artifacts":t==="branches"?"Branches":"Terminals"},t))}):null,!c&&!p&&!d&&A.length>o.length?e.jsxs("button",{type:"button",title:"Release vacant desks and compact sectors",onClick:()=>{Re(C.map(t=>t.id)),K(0)},children:["Release ",A.length-o.length," ",A.length-o.length===1?"desk":"desks"]}):null,!c&&!p&&!d&&ue>1?e.jsxs("span",{className:"agent-floor__page-controls",children:[e.jsx("button",{type:"button","aria-label":"Previous floor sector",disabled:W===0,onClick:()=>{K(W-1),$(null),L(null)},children:"←"}),"Sector ",W+1," / ",ue,e.jsx("button",{type:"button","aria-label":"Next floor sector",disabled:W===ue-1,onClick:()=>{K(W+1),$(null),L(null)},children:"→"})]}):null]}),!c&&!p&&!d?e.jsx(mt,{berths:Fe,allLanes:C,lanes:te.map(t=>t.lane),now:i,selectedId:F,sheetOpen:!!(H||S||h),motionPaused:g,onPause:()=>b(!g),onActor:t=>{R(t),z({x:-100,y:0}),D(1)},onRoom:t=>{f(null),y(t),$(null),L(null)}}):null,!c&&!p&&h?e.jsx(pt,{view:h,lanes:C,onView:f,onClose:()=>f(null),onActor:R}):null,!c&&!p&&d?e.jsx(it,{now:i,lanes:C,onActor:R}):null,p?e.jsx(rt,{lanes:C,now:i,onActor:n}):null,c?e.jsx(ct,{lanes:C,now:i,onActor:R}):null,!c&&!p&&!d?e.jsx(Gt,{zoom:k,fit:k===1&&T.x===0&&T.y===0,onZoomChange:D,onReset:he}):null,e.jsx("div",{className:"agent-floor__stage",style:{display:p||c||d?"none":void 0,transform:`translate3d(${T.x}px, ${T.y}px, 0) scale(${lt})`},children:c?e.jsxs("div",{className:"agent-floor__field",style:{width:Z,height:xe,left:-Z/2,top:-xe/2},children:[e.jsx("div",{className:"agent-floor__plane"}),Array.from({length:ne+1},(t,s)=>e.jsx("div",{className:`agent-floor__seam${s===0?" is-front":""}`,style:{left:De(s)}},s)),Array.from({length:ne+1},(t,s)=>e.jsx("div",{className:`agent-floor__bb agent-floor__tick${s===0?" is-now":""}`,style:{left:De(s),top:ze},children:s===0?e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"agent-floor__tick-pulse"}),e.jsx("span",{children:"now"})]}):Ne(q-(s-1)*U)},s)),e.jsx("div",{className:"agent-floor__lanes",style:{left:0,top:Ie},"data-focus":F!==null||void 0,children:te.map((t,s)=>e.jsx(Vt,{series:t,index:s,planeW:Z,flip:_e,periodStart:q,now:i,focused:F===t.lane.id,pinned:N===t.lane.id,dimmed:N===null&&G!==null&&G!==t.lane.id,peekSlot:de?.laneId===t.lane.id?de.slot:null,onFocus:L,onPeek:tt,onSelect:R},t.lane.id))}),Te.length>0?e.jsxs("div",{className:"agent-floor__bb agent-floor__chip",style:{left:_e?I/2:Z-I/2,top:ze+30},children:["+",Te.length," more in the ledger"]}):null]}):e.jsx(gt,{berths:Fe,lanes:te.map(t=>t.lane),now:i,motionPaused:g,selectedId:F,onFocus:L,onSelect:R,onFocusRoom:(t,s,u)=>{f(null),y(t),$(null),L(null),D(ae),z({x:Y((we/2-s)*oe*ae-140,je),y:Y((Se/2-u)*oe*ae,be)})}})}),!c&&(H||S)?e.jsx(ft,{lane:H?.lane??null,room:S,lanes:te.map(t=>t.lane),allLanes:C,now:i,onClose:()=>{$(null),y(null)},onSelectRoom:t=>{f(null),y(t);const s=ut[t];z({x:Y((we/2-s.x-205)*oe*k-140,je),y:Y((Se/2-s.y-132)*oe*k,be)})},onSelectLane:R,onOpenTrace:n},H?.lane.id??S):H?e.jsx(Kt,{series:H,now:i,concise:Ce,onConciseChange:_,onClose:()=>$(null),onOpenFull:()=>n(H.lane),operatorName:m}):null]})]}),p?null:e.jsx(Bt,{focus:at,pinned:N!==null&&F===N,ledger:w,liveCount:ve,now:i}),e.jsxs("footer",{className:"agent-floor__legend",style:{display:p?"none":void 0},children:[e.jsxs("span",{className:"agent-floor__legend-item",children:[e.jsx("span",{className:"agent-floor__legend-swatch is-tool"}),"tool call"]}),e.jsxs("span",{className:"agent-floor__legend-item",children:[e.jsx("span",{className:"agent-floor__legend-swatch is-edit"}),"file edit"]}),e.jsxs("span",{className:"agent-floor__legend-item",children:[e.jsx("span",{className:"agent-floor__legend-swatch is-msg"}),"message"]}),e.jsxs("span",{className:"agent-floor__legend-item",children:[e.jsx("span",{className:"agent-floor__legend-pulse"}),"actors follow recent activity"]}),e.jsxs("button",{type:"button",className:"agent-floor__legend-flip",hidden:!c,onClick:et,title:"Flip which side history accumulates on",children:["past ",_e?"→":"←"]}),e.jsx("span",{className:"agent-floor__legend-note",children:"Rooms open their own sheets · actors open task details · History retains the trace"})]})]})}export{bn as AgentFloorView};
@@ -0,0 +1 @@
1
+ import{j as e,r as j}from"./index-C8uS5szO.js";import{a as F,S as z}from"./SpriteAvatar-BW1JzkDt.js";import{f as A}from"./agent-floor-actor-3v9drnxh.js";import{l as D}from"./agent-lanes-model-CX0wTcnF.js";/* empty css */import{F as E,a as T,b as R,f as q,c as B}from"./agent-floor-world-layout-hfMjuoui.js";import{C as G}from"./coffee-C_D9zooM.js";import{T as H}from"./terminal-96JWDYDL.js";import{R as P}from"./radio-C_jtwbFP.js";import{F as U}from"./file-code-corner-D_Aptal2.js";import{G as Z}from"./git-branch-CA3cHKCI.js";import"./agent-state-DDhnFEEP.js";import"./lane-observe-BD21P8BB.js";import"./time-Dhsh_2EG.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./lane-ask-display-B6iCAVcd.js";import"./context-budget-DemtXu7E.js";import"./terminal-sessions-Ch9aYlgi.js";import"./api-CaROe5_H.js";import"./createLucideIcon-DkjnzvcJ.js";const J=[{id:"home",name:"Crew quarters",detail:"Ready · quiet · attention",...R.home,icon:G},{id:"tools",name:"Execution lab",detail:"Tools & runtime",...R.tools,icon:H},{id:"message",name:"Communications",detail:"Messages & requests",...R.message,icon:P},{id:"edit",name:"Build workshop",detail:"Files & patches",...R.edit,icon:U}];function K({lane:t,berth:u,now:g,selected:x,motionPaused:h,instant:w,onFocus:d,onSelect:M}){const a=A(t,g),r=q(a.station,u),_=j.useRef(null),s=j.useRef(`translate(${r.x}px, ${r.y}px)`),m=j.useRef(!1),[f,n]=j.useState(!1),i=F(t.agent),l=D(t.agent,t.source),y=t.id.replace(/[^a-zA-Z0-9]/g,"").slice(-4),$=t.facts?.currentTask||t.facts?.branch||t.agent.harness||"Observed session";return j.useEffect(()=>{const p=_.current;if(!p)return;const b=(o,c)=>`translate(${o}px, ${c}px)`,N=window.matchMedia("(prefers-reduced-motion: reduce)"),S=new DOMMatrixReadOnly(getComputedStyle(p).transform),k=m.current?{x:S.m41,y:S.m42}:r;if(h){m.current=!0,n(!1);return}p.style.transform=b(r.x,r.y);const I=Math.hypot(k.x-r.x,k.y-r.y);if(!m.current||I<1||N.matches||w){m.current=!0,n(!1);return}const O=B(k,r);let v=0;const W=O.map((o,c)=>(c&&(v+=Math.hypot(o.x-O[c-1].x,o.y-O[c-1].y)),v)),C=p.animate(O.map((o,c)=>({transform:b(o.x,o.y),offset:W[c]/v})),{duration:Math.min(4200,Math.max(900,v*5)),easing:"linear"});n(!0),C.onfinish=()=>n(!1);const L=()=>{N.matches&&(C.cancel(),n(!1))};return N.addEventListener("change",L),()=>{const o=new DOMMatrixReadOnly(getComputedStyle(p).transform);C.cancel(),p.style.transform=b(o.m41,o.m42),N.removeEventListener("change",L)}},[r.x,r.y,h,w]),e.jsxs("button",{ref:_,type:"button",style:{transform:s.current},className:`floor-world__actor is-${a.posture}${x?" is-selected":""}${f?" is-moving":""}`,"data-station":a.station,"aria-pressed":x,"aria-label":`${l} ${y}, ${a.label}. Inspect actor`,onClick:()=>M(t),onMouseEnter:()=>d(t.id),onMouseLeave:()=>d(null),onFocus:()=>d(t.id),onBlur:()=>d(null),children:[e.jsx("span",{className:"floor-world__actor-shadow"}),e.jsx("span",{className:"floor-world__ring"}),e.jsx("span",{className:"floor-world__sprite",children:e.jsx(z,{name:t.agent.name,size:44,hue:i.hue,tone:i.tone,glow:!1})}),a.posture==="attention"||a.posture==="blocked"?e.jsx("span",{className:"floor-world__alert",children:"!"}):null,e.jsxs("span",{className:"floor-world__actor-name",children:[l,e.jsx("small",{children:y})]}),e.jsx("span",{className:"floor-world__actor-action",children:f?"Moving":a.label}),x?e.jsx("span",{className:"floor-world__thought",children:$.slice(0,150)}):null]})}function _e({berths:t,lanes:u,now:g,selectedId:x,motionPaused:h,instant:w,onFocus:d,onSelect:M,onFocusRoom:a}){const r=u.map(s=>A(s,g)),_=r.filter(s=>s.posture==="attention"||s.posture==="blocked").length;return e.jsxs("div",{className:`floor-world${h?" is-motion-paused":""}`,style:{width:T,height:E,left:-T/2,top:-E/2},children:[e.jsxs("div",{className:"floor-world__passage",children:[e.jsx("span",{children:"SCOUT / OPERATIONS"}),e.jsx("span",{children:_?`${_} need attention`:"Live observation"})]}),e.jsx("div",{className:"floor-world__spine"}),J.map(s=>{const m=s.icon,f=r.filter(i=>i.station===s.id),n=f.some(i=>i.posture==="working");return e.jsxs("section",{className:`floor-world__room is-${s.id}${n?" is-active":""}`,style:{left:s.x,top:s.y},"aria-label":`${s.name}, ${f.length} actors`,children:[e.jsx("header",{children:e.jsxs("button",{type:"button","aria-label":`Inspect ${s.name}`,onClick:()=>a(s.id,s.x+205,s.y+132),children:[e.jsx(m,{size:20}),e.jsxs("span",{children:[e.jsx("strong",{children:s.name}),e.jsx("small",{children:s.detail})]}),e.jsx("span",{className:"floor-world__room-count",children:f.length})]})}),e.jsx("div",{className:"floor-world__furniture","aria-hidden":"true",children:Array.from({length:8},(i,l)=>e.jsxs("span",{className:`floor-world__console${u.some((y,$)=>t[y.id]===l&&r[$]?.station===s.id)?" is-occupied":""}`,style:{left:65+l%4*94,top:83+Math.floor(l/4)*94},children:[e.jsxs("span",{className:"floor-world__screen",children:[e.jsx("i",{}),e.jsx("i",{}),e.jsx("i",{})]}),e.jsx("span",{className:"floor-world__keyboard"})]},l))}),e.jsx("span",{className:"floor-world__door","aria-hidden":"true"})]},s.id)}),e.jsx("div",{className:"floor-world__center-mark","aria-hidden":"true",children:e.jsx(Z,{size:24})}),u.map(s=>e.jsx(K,{lane:s,berth:t[s.id]??0,now:g,instant:w,motionPaused:h,selected:x===s.id,onFocus:d,onSelect:M},s.id))]})}export{_e as AgentFloorWorld,E as FLOOR_WORLD_HEIGHT,T as FLOOR_WORLD_WIDTH};
@@ -0,0 +1 @@
1
+ import{r as u,j as a}from"./index-C8uS5szO.js";/* empty css */import{c as J,b as X}from"./agent-state-DDhnFEEP.js";import{m as Y,c as Z}from"./conversation-model-BGFHoxQ0.js";import{a as ee,s as ae}from"./colors-CFlbwC25.js";import{a as U}from"./api-CaROe5_H.js";import{u as te}from"./sse-v5QLsOHV.js";import{b as se,t as le}from"./time-Dhsh_2EG.js";import{f as m}from"./runtime-picker-DdsttHHc.js";import{u as oe}from"./Provider-5Hotn7NQ.js";import{o as re}from"./openContent-C6XO6kr5.js";import{B as L}from"./BackToPicker-Bys9ColC.js";import{A as ie}from"./AgentLiveActions-lYzicnNa.js";import{O as ne}from"./ObservedTopologyPanel-DkEkQzo-.js";import{a as ce}from"./NewChatComposer-JjLbm3W2.js";import"./createLucideIcon-DkjnzvcJ.js";import"./conversations-Cbg9h_Af.js";import"./index-BWHgHrtv.js";import"./scout-voice-DOQ_B77g.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DurUYl7E.js";import"./router-BKiMcYa7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Ch9aYlgi.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-f12RRQpV.js";import"./TextDocumentSurface-BhYvAB0o.js";import"./file-text-ChtICwub.js";import"./x-DI1ktCYb.js";import"./index-CvsM3jm8.js";import"./chevron-right-C7UGFpkl.js";import"./folder-0fWevPvQ.js";import"./chevron-up-BHOEgHcn.js";import"./code-xml-BmyLM0I2.js";import"./arrow-left-PuKdO3NM.js";import"./arrow-right-ldbfp4SZ.js";import"./keyboard-nav-CXfav14z.js";import"./chunk-HRAB3GC3-C5X-kFhb.js";import"./terminal-takeover-BlpxpvSp.js";import"./eye-CtqSV8BS.js";import"./terminal-96JWDYDL.js";import"./index-C5cX8dkl.js";import"./HarnessMark-Bt47OeHy.js";import"./NewChatOrigin-CyPPWTJP.js";import"./chevron-down-B5eMsn5c.js";import"./search-C4VlW_0l.js";function A({values:t}){return a.jsx("span",{className:"s-agent-token-list",children:t.map(s=>a.jsx("span",{className:"s-agent-token",children:s},s))})}function o({value:t}){return a.jsx("span",{className:"s-agent-code-value",children:t})}function I({label:t,value:s}){return s?.trim()?a.jsxs("span",{className:"s-agent-profile-chip",children:[a.jsx("span",{className:"s-agent-profile-chip-label",children:t}),a.jsx("span",{className:"s-agent-profile-chip-value",children:s})]}):null}function T(t){return(t??"").toLowerCase().replace(/[^a-z0-9]+/g,"")}function de(t){return t.trim().replace(/^@+/,"").replace(/^(project|agent|session)[-_.:\s]+/iu,"").split(/[-_\s·]+/u).filter(Boolean).map(s=>s.slice(0,1).toUpperCase()+s.slice(1)).join(" ")}function ue(t,s,i,n){let l=t.trim().replace(/^@+/,"");const h=[s,i,n,n?m(n):null].filter(p=>!!p?.trim());for(const p of h){const f=p.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");l=l.replace(new RegExp(`^${f}[-_.:\\s·]+`,"iu"),"")}return l}function pe(t,s,i,n){const l=s?.participants?.find(d=>d.agentId===t.id||d.actorId===t.id),h=T(t.harness),p=T(i),f=[l?.scopedAlias,s?.alias,t.handle,l?.displayName,s?.agentName,t.name];for(const d of f){if(!d?.trim())continue;const v=ue(d,i,n,t.harness),N=de(v),g=T(N);if(!(!g||g===p||g===h))return N}return null}function me(t){const s=t?.trim();return s?s.toLowerCase()==="a2a"?"A2A":m(s)??s:null}function he({name:t,url:s}){return s?a.jsx("a",{href:s,target:"_blank",rel:"noreferrer",children:t}):a.jsx(a.Fragment,{children:t})}function j({title:t,subtitle:s,items:i,variant:n}){return i.length===0?null:a.jsxs("section",{className:`s-agent-profile-card${n?` s-agent-profile-card-${n}`:""}`,children:[a.jsx("div",{className:"s-agent-profile-card-header",children:a.jsxs("div",{children:[a.jsx("div",{className:"s-agent-profile-card-title",children:t}),s&&a.jsx("div",{className:"s-agent-profile-card-subtitle",children:s})]})}),a.jsx("div",{className:"s-agent-meta-card-body",children:i.map(l=>a.jsxs("div",{className:"s-agent-meta-row",children:[a.jsx("span",{className:"s-agent-meta-label",children:l.label}),a.jsx("span",{className:"s-agent-meta-value",children:l.value})]},l.label))})]})}function ua({conversationId:t,navigate:s}){const{agents:i,route:n}=oe(),[l,h]=u.useState(null),[p,f]=u.useState(!1),[d,v]=u.useState(null),[N,g]=u.useState(null),[y,B]=u.useState(null),S=u.useCallback(async()=>{B(null);try{const r=await U(`/api/session/${encodeURIComponent(t)}`).catch(()=>null);h(r)}catch(r){B(r instanceof Error?r.message:String(r)),h(null)}finally{f(!0)}},[t]);u.useEffect(()=>{f(!1),S()},[S]),te(()=>{S()});const c=l?.agentId??null;u.useEffect(()=>{if(!c||i.some(R=>R.id===c)){v(null);return}let r=!1;return U(`/api/agents/${encodeURIComponent(c)}`).then(R=>{r||v(R)}).catch(()=>{r||v(null)}).finally(()=>{r||g(c)}),()=>{r=!0}},[i,c]);const e=u.useMemo(()=>c?i.find(r=>r.id===c)??(d?.id===c?d:null):null,[d,i,c]);if(!e)return!p||c!==null&&N!==c?a.jsxs("div",{children:[a.jsx(L,{slot:"agent-info",fallback:{view:"conversation",conversationId:t},navigate:s}),a.jsx("div",{className:"s-empty",children:a.jsx("p",{children:"Loading…"})})]}):a.jsxs("div",{children:[a.jsx(L,{slot:"agent-info",fallback:{view:"conversation",conversationId:t},navigate:s}),y&&a.jsx("p",{className:"s-error",children:y}),a.jsx("div",{className:"s-empty",children:a.jsx("p",{children:"Agent not found"})})]});const W=Y(e),C=e.handle?`@${e.handle.replace(/^@+/,"")}`:null,P=e.selector??e.defaultSelector??C,D=J(e.state),E=e.authorityNodeName?`${e.authorityNodeName} (${e.authorityNodeId??"unknown"})`:e.authorityNodeId,H=e.homeNodeName?`${e.homeNodeName} (${e.homeNodeId??"unknown"})`:e.homeNodeId,$=e.skills??[],b=me(e.protocol),k=!!(e.providerName||b||$.length>0),F=ce(e),x=F.title,w=pe(e,l,x,F.slug),z=w?`${x} · ${w}`:x,M=l?.participants?.find(r=>r.agentId===e.id||r.actorId===e.id),O=e.model&&e.harness&&e.model.startsWith(`${e.harness}-`)?e.model.slice(e.harness.length+1):e.model,Q=[m(e.harness??"")??e.harness,O].filter(r=>!!r).join(" · "),_=[{label:"Project",value:x},{label:"Alias",value:w??"Default project participant"},...P?[{label:"Primary selector",value:a.jsx(o,{value:P})}]:[],...M?.scopedAlias?[{label:"Scoped alias",value:a.jsx(o,{value:M.scopedAlias})}]:[],...C?[{label:"Handle",value:a.jsx(o,{value:C})}]:[],...e.defaultSelector&&e.defaultSelector!==e.selector?[{label:"Default selector",value:a.jsx(o,{value:e.defaultSelector})}]:[],{label:"Definition",value:a.jsx(o,{value:e.definitionId})}],q=[{label:"Routable agent ID",value:a.jsx(o,{value:e.id})},...e.providerName?[{label:"Provider",value:a.jsx(he,{name:e.providerName,url:e.providerUrl})}]:[],...b?[{label:"Protocol",value:b}]:[],...$.length>0?[{label:"Skills",value:a.jsx(A,{values:$})}]:[],...k?[]:[{label:"Class",value:m(e.agentClass)??"—"}],...!k&&e.role?[{label:"Role",value:m(e.role)??e.role}]:[],...e.authorityProfile?[{label:"Authority profile",value:a.jsx(o,{value:e.authorityProfile.roleId})}]:[],...e.workspaceQualifier?[{label:"Workspace qualifier",value:a.jsx(o,{value:e.workspaceQualifier})}]:[],...e.nodeQualifier?[{label:"Node qualifier",value:a.jsx(o,{value:e.nodeQualifier})}]:[],...e.staleLocalRegistration?[{label:"Registration",value:e.replacedByAgentId?`Superseded by ${e.replacedByAgentId}`:"Historical registration"}]:[],...e.retiredFromFleet?[{label:"Fleet state",value:"Retired"}]:[]],K=[...e.projectRoot?[{label:"Project path",value:a.jsx(o,{value:e.projectRoot})}]:[],...e.cwd?[{label:"Working dir",value:a.jsx(o,{value:e.cwd})}]:[],...e.branch?[{label:"Branch",value:e.branch}]:[],...E?[{label:"Authority node",value:a.jsx(o,{value:E})}]:[],...H?[{label:"Home node",value:a.jsx(o,{value:H})}]:[],...e.ownerId?[{label:"Owner",value:e.ownerName?`${e.ownerName} (${e.ownerId})`:e.ownerId}]:[],...e.conversationId?[{label:"Direct conversation",value:a.jsx(o,{value:e.conversationId})}]:[]],V=[...!k&&e.harness?[{label:"Harness",value:e.harness}]:[],...e.model?[{label:"Model",value:e.model}]:[],...!k&&e.transport?[{label:"Transport",value:m(e.transport)??e.transport}]:[],...e.wakePolicy?[{label:"Wake policy",value:m(e.wakePolicy)??e.wakePolicy}]:[],...e.harnessSessionId?[{label:b?`${b} session`:"Harness session",value:a.jsx(o,{value:e.harnessSessionId})}]:[],...e.harnessLogPath?[{label:"Harness log",value:a.jsx(o,{value:e.harnessLogPath})}]:[],...e.capabilities.length>0?[{label:"Capabilities",value:a.jsx(A,{values:e.capabilities})}]:[],...e.authorityProfile?.readTools.length?[{label:"Broker reads",value:a.jsx(A,{values:e.authorityProfile.readTools})}]:[],...e.authorityProfile?.writeTools.length?[{label:"Broker writes",value:a.jsx(A,{values:e.authorityProfile.writeTools})}]:[],...e.authorityProfile?[{label:"Machine access",value:`shell ${e.authorityProfile.shell?"allowed":"blocked"} · code writes ${e.authorityProfile.codebaseWrites?"allowed":"blocked"}`}]:[],...e.runtimePolicy?.sandbox?[{label:"Sandbox",value:e.runtimePolicy.sandbox}]:[]],G=[{label:"Conversation ID",value:a.jsx(o,{value:t})},...l?.alias?[{label:"Conversation alias",value:a.jsx(o,{value:l.alias})}]:[],...l?.naturalKey?[{label:"Natural key",value:a.jsx(o,{value:l.naturalKey})}]:[],...l?.workspaceRoot?[{label:"Workspace",value:a.jsx(o,{value:l.workspaceRoot})}]:[],...l?.currentBranch?[{label:"Session branch",value:l.currentBranch}]:[],...l?.messageCount!=null?[{label:"Messages",value:String(l.messageCount)}]:[],...l?.lastMessageAt?[{label:"Last message",value:se(l.lastMessageAt)}]:[]];return a.jsxs("div",{className:"s-agent-profile-page",children:[a.jsxs("div",{className:"s-agent-profile-page-topbar",children:[a.jsx(L,{slot:"agent-info",fallback:{view:"conversation",conversationId:t},navigate:s}),a.jsx("button",{type:"button",className:"s-btn",onClick:()=>s({view:"agents-v2",agentId:e.id}),children:"Open in Agents"})]}),y&&a.jsx("p",{className:"s-error",children:y}),a.jsxs("section",{className:"s-agent-profile-hero",children:[a.jsx("div",{className:"s-agent-profile-hero-main",children:a.jsxs("div",{className:"s-agent-profile-hero-title-row",children:[a.jsx("div",{className:"s-avatar s-agent-profile-hero-avatar",style:{background:ee(e.name)},children:e.name[0].toUpperCase()}),a.jsxs("div",{className:"s-agent-profile-hero-copy",children:[a.jsxs("div",{className:"s-agent-casefile-title-meta",children:[a.jsx("span",{className:"s-agent-casefile-record",children:P??W??Z(e.id)??e.id}),D&&a.jsxs("span",{className:`s-agent-state-chip s-agent-state-chip-${X(e.state)}`,children:[a.jsx("span",{className:"s-dot",style:{background:ae(e.state)}}),D]}),e.staleLocalRegistration&&a.jsx("span",{className:"s-agent-state-chip s-agent-state-chip-offline",children:"Superseded registration"})]}),a.jsx("h1",{className:"s-agent-profile-hero-title",children:z}),a.jsxs("div",{className:"s-agent-profile-hero-tags",children:[a.jsx(I,{label:"Project",value:x}),a.jsx(I,{label:"Alias",value:w??"Default"}),a.jsx(I,{label:"Runtime",value:Q||null}),a.jsx(I,{label:"Host",value:e.homeNodeName?.replace(/\.local$/i,"")??null})]}),a.jsxs("p",{className:"s-agent-profile-hero-context",children:[l?.title?`Conversation: ${l.title}.`:"Attached to this conversation.",e.updatedAt?` Updated ${le(e.updatedAt)}.`:""]})]})]})}),a.jsxs("div",{className:"s-agent-profile-hero-actions",children:[a.jsx(ie,{agent:e,navigate:s,returnTo:n}),a.jsx("button",{type:"button",className:"s-btn s-btn-primary",onClick:()=>re(s,{view:"conversation",conversationId:t},{returnTo:n}),children:"Open conversation"})]})]}),a.jsxs("div",{className:"s-agent-profile-grid",children:[a.jsx(j,{title:"Stable alias",subtitle:"Repeatable project identity used to route future work.",items:_,variant:"primary"}),a.jsx(j,{title:"Current conversation",subtitle:"Unique DM/context attached to this page.",items:G}),a.jsx(j,{title:"Runtime instance",subtitle:"Concrete harness state for the current attachment.",items:V}),a.jsx(j,{title:"Location",subtitle:"Where this alias resolves right now.",items:K}),a.jsx(j,{title:"Diagnostics",subtitle:"Broker and provider fields for debugging.",items:q,variant:"secondary"})]}),a.jsx(ne,{title:"Observed harness families",size:"compact",maxAgents:8,maxTasks:4,showEmpty:!0})]})}export{ua as AgentInfoScreen};
@@ -1 +1 @@
1
- import{j as a,r as u}from"./index-C1VaWNuD.js";/* empty css */import{AgentLaneCockpitPane as w,cockpitHeightTier as y}from"./AgentLaneSummaryResize-Di4u6df2.js";import{c as $}from"./clipboard-e3fSpeo7.js";import{H as L}from"./HarnessMark-DttReffF.js";function F(){return a.jsx("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",className:"s-lane-card-gmark",children:a.jsx("path",{d:"M2 4.2c0-.4.3-.7.7-.7h2.1l1 1h3.5c.4 0 .7.3.7.7V9c0 .4-.3.7-.7.7H2.7c-.4 0-.7-.3-.7-.7V4.2Z",fill:"none",stroke:"currentColor",strokeWidth:"1",strokeLinejoin:"round"})})}function T(){return a.jsxs("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",className:"s-lane-card-gmark",children:[a.jsx("circle",{cx:"6",cy:"3",r:"1.5",fill:"none",stroke:"currentColor",strokeWidth:"1"}),a.jsx("circle",{cx:"6",cy:"9",r:"1.5",fill:"none",stroke:"currentColor",strokeWidth:"1"}),a.jsx("path",{d:"M6 4.5v3",stroke:"currentColor",strokeWidth:"1"})]})}function W({dir:s}){return a.jsx("span",{className:"s-lane-card-dir","aria-hidden":"true",children:s==="from"?"←":"→"})}function M(){return a.jsxs(a.Fragment,{children:[a.jsx("i",{className:"s-lane-card-gl s-lane-card-gl-t","aria-hidden":"true"}),a.jsx("i",{className:"s-lane-card-gl s-lane-card-gl-b","aria-hidden":"true"}),a.jsx("i",{className:"s-lane-card-gl s-lane-card-gl-l","aria-hidden":"true"}),a.jsx("i",{className:"s-lane-card-gl s-lane-card-gl-r","aria-hidden":"true"})]})}function d({value:s,label:l,side:n}){const[r,e]=u.useState(!1),c=u.useRef(null);u.useEffect(()=>()=>{c.current&&clearTimeout(c.current)},[]);const i=u.useCallback(t=>{t.preventDefault(),t.stopPropagation(),$(s).then(o=>{o&&(e(!0),c.current&&clearTimeout(c.current),c.current=setTimeout(()=>e(!1),1100))})},[s]);return a.jsx("button",{type:"button",className:`s-lane-card-copydot s-lane-card-copydot--${n}${r?" s-lane-card-copydot--done":""}`,onClick:i,title:r?"Copied":`Copy ${l}`,"aria-label":r?`Copied ${l}`:`Copy ${l}`,children:r?a.jsx("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",children:a.jsx("path",{d:"M2.5 6.2 4.8 8.5 9.5 3.8",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})}):a.jsxs("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",children:[a.jsx("rect",{x:"3.4",y:"3.4",width:"5.8",height:"5.8",rx:"1.3",fill:"none",stroke:"currentColor",strokeWidth:"1"}),a.jsx("path",{d:"M2.4 7.2V2.8c0-.4.3-.7.7-.7h4",fill:"none",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"})]})})}function N({value:s,label:l,group:n}){const r=!!n&&n.rows.length>0;return a.jsxs("span",{className:`s-lane-card-instr${r?" s-lane-card-instr--pop":""}`,children:[a.jsx("span",{className:"s-lane-card-instr-val",children:s}),a.jsx("span",{className:"s-lane-card-instr-label",children:l}),r&&a.jsxs("span",{className:"s-lane-card-pop",role:"tooltip",children:[a.jsxs("span",{className:"s-lane-card-pop-h",children:[a.jsx("span",{className:"s-lane-card-pop-title",children:l}),a.jsx("span",{className:"s-lane-card-pop-count",children:n.more>0?`top ${n.rows.length} · ${s}`:s})]}),a.jsxs("span",{className:"s-lane-card-pop-list",children:[n.rows.map((e,c)=>a.jsxs("span",{className:"s-lane-card-pop-row",title:e.full??e.text,children:[a.jsx("span",{className:`s-lane-card-pop-mark s-lane-card-pop-mark--${e.tone}`,children:e.mark}),a.jsx("span",{className:"s-lane-card-pop-text",children:e.text})]},`${c}:${e.full||e.text}`)),n.more>0&&a.jsxs("span",{className:"s-lane-card-pop-more",children:["+",n.more," more"]})]})]})]})}function P(s){return s.toLocaleString()}function B(s){return s>=1e6?`${(s/1e6).toFixed(1)}M`:s>=1e3?`${(s/1e3).toFixed(s>=1e5?0:1)}k`:`${s}`}function S({usage:s}){return s.dials.length===0?null:a.jsxs("div",{className:"s-lane-card-cockpit-tokens","aria-label":"Token usage",children:[a.jsxs("div",{className:"s-lane-card-cockpit-tokens-head",children:[a.jsxs("span",{className:"s-lane-card-cockpit-tokens-label",children:[a.jsx("span",{className:"s-lane-card-cockpit-tokens-mark","aria-hidden":"true",children:"◎"}),"Tokens"]}),s.total!=null&&a.jsx("span",{className:"s-lane-card-cockpit-tokens-hint",children:B(s.total)})]}),a.jsx("div",{className:"s-lane-card-cockpit-dials",children:s.dials.map(l=>a.jsxs("span",{className:"s-lane-card-cockpit-dial",children:[a.jsx("span",{className:"s-lane-card-cockpit-dial-value",children:P(l.value)}),a.jsx("span",{className:"s-lane-card-cockpit-dial-label",children:l.label})]},l.label))})]})}function I({pops:s}){const l=s.edits.rows.length>0,n=l?s.edits:s.files;if(n.rows.length===0)return null;const r=l?"Files modified":"Files touched";return a.jsxs("div",{className:"s-lane-card-cockpit-files","aria-label":r,children:[a.jsxs("div",{className:"s-lane-card-cockpit-tokens-head",children:[a.jsx("span",{className:"s-lane-card-cockpit-tokens-label",children:r}),a.jsx("span",{className:"s-lane-card-cockpit-tokens-hint",children:n.rows.length+n.more})]}),a.jsxs("div",{className:"s-lane-card-cockpit-files-list",children:[n.rows.map((e,c)=>a.jsxs("span",{className:"s-lane-card-cockpit-file",title:e.full??e.text,children:[a.jsx("span",{className:`s-lane-card-pop-mark s-lane-card-pop-mark--${e.tone}`,children:e.mark}),a.jsx("span",{className:"s-lane-card-cockpit-file-text",children:e.text})]},`${c}:${e.full||e.text}`)),n.more>0&&a.jsxs("span",{className:"s-lane-card-cockpit-file s-lane-card-cockpit-file--more",children:["+",n.more," more"]})]})]})}function g({model:s,cockpitHeight:l=null}){const n=y(l)==="stats";return a.jsxs(a.Fragment,{children:[a.jsx("div",{className:"s-lane-card-summary",children:s.head?.placeholder?a.jsxs("div",{className:`s-lane-card-wait${s.working?" s-lane-card-wait--working":""}`,children:[a.jsx("span",{className:"s-lane-card-wait-dot","aria-hidden":"true"}),a.jsx("span",{className:"s-lane-card-wait-label",children:s.head.text})]}):a.jsxs("div",{className:`s-lane-card-current${s.head?.dir?"":" s-lane-card-current--console"}`,children:[s.head?.dir?a.jsx(W,{dir:s.head.dir}):a.jsx("span",{className:"s-lane-card-prompt","aria-hidden":"true",children:"❯"}),a.jsxs("span",{className:"s-lane-card-headwrap",children:[a.jsx("span",{className:"s-lane-card-head-text",children:s.head?.text??"Waiting for trace activity…"}),s.head?.full&&a.jsx("span",{className:"s-lane-card-headpop",role:"tooltip",children:s.head.full})]})]})}),a.jsxs("div",{className:"s-lane-card-accs",children:[a.jsx("div",{className:"s-lane-card-accs-tools",children:s.stats.tools>0?a.jsxs(a.Fragment,{children:[a.jsx(N,{value:s.stats.tools,label:"tools",group:s.pops.tools}),s.stats.edits>0&&a.jsx(N,{value:s.stats.edits,label:"edits",group:s.pops.edits}),s.stats.reads>0&&a.jsx(N,{value:s.stats.reads,label:"reads",group:s.pops.reads}),s.stats.files>0&&a.jsx(N,{value:s.stats.files,label:"files",group:s.pops.files})]}):a.jsx("span",{className:"s-lane-card-accs-empty",children:"no tool activity yet"})}),a.jsxs("div",{className:"s-lane-card-vitals",children:[a.jsxs("span",{className:`s-lane-card-instr s-lane-card-instr--ctx${s.context==null?" s-lane-card-instr--ctx-pending":""}`,title:s.context==null?"Context window — awaiting usage":`Context window ${s.context}% used`,children:[a.jsx("span",{className:"s-lane-card-gauge","aria-hidden":"true",children:a.jsx("span",{className:"s-lane-card-gauge-fill",style:{width:`${s.context??0}%`}})}),a.jsx("span",{className:"s-lane-card-instr-val",children:s.context==null?"—":`${s.context}%`}),a.jsx("span",{className:"s-lane-card-instr-label",children:"ctx"})]}),s.tokens&&a.jsxs("span",{className:"s-lane-card-instr",title:"Tokens currently in context",children:[a.jsx("span",{className:"s-lane-card-instr-val",children:s.tokens}),a.jsx("span",{className:"s-lane-card-instr-label",children:"ctx tokens"})]}),s.turns!=null&&a.jsxs("span",{className:"s-lane-card-instr",children:[a.jsx("span",{className:"s-lane-card-instr-val",children:s.turns}),a.jsx("span",{className:"s-lane-card-instr-label",children:s.turns===1?"turn":"turns"})]})]})]}),n&&(s.tokenUsage?a.jsx(S,{usage:s.tokenUsage}):a.jsx(I,{pops:s.pops}))]})}function V({model:s,avatar:l,trace:n,collapsed:r=!1,onToggleCollapsed:e,onOpen:c,cockpitHeight:i}){const{name:t,harness:o,model:h,effort:k,cwd:p,cwdFull:f,branch:x,sessionId:j,sessionIdFull:v,parentSessionId:m,parentSessionLabel:b}=s;return a.jsxs("section",{className:`s-lane-card${s.working?" s-lane-card--working":""}${r?" s-lane-card--collapsed":""}`,"aria-label":`${t} lane`,children:[c&&a.jsx("button",{type:"button",className:"s-lane-card-hit",onClick:c,"aria-label":`Inspect ${t}`}),a.jsxs("div",{className:"s-lane-card-head",children:[a.jsxs("span",{className:"s-lane-card-anchor s-lane-card-anchor--av",children:[a.jsx(M,{}),l]}),a.jsxs("div",{className:"s-lane-card-ident",children:[a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--trail s-lane-card-namebox",children:[a.jsx("span",{className:"s-lane-card-name s-lane-card-sel",children:t}),s.authority&&a.jsx("span",{className:"s-lane-card-authority",title:s.authority.title,children:s.authority.label}),a.jsx(d,{value:t,label:"agent name",side:"trail"})]}),p&&a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--trail s-lane-card-d s-lane-card-d--strong",title:f??p,children:[a.jsx(F,{}),a.jsx("span",{className:"s-lane-card-val s-lane-card-sel",children:p}),a.jsx(d,{value:f??p,label:"working directory",side:"trail"})]}),x&&a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--trail s-lane-card-d",title:x,children:[a.jsx("span",{className:"s-lane-card-gchar","aria-hidden":"true",children:"⎇"}),a.jsx("span",{className:"s-lane-card-val s-lane-card-sel",children:x}),a.jsx(d,{value:x,label:"branch",side:"trail"})]})]}),a.jsxs("div",{className:"s-lane-card-meta",children:[o&&a.jsx("span",{className:"s-lane-card-anchor s-lane-card-anchor--hm",children:a.jsx(L,{harness:o,size:30,className:"s-lane-card-hmark"})}),a.jsxs("div",{className:"s-lane-card-meta-lines",children:[(h||k)&&a.jsxs("div",{className:"s-lane-card-meta-run",children:[h&&a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--lead s-lane-card-modelwrap",children:[a.jsx("span",{className:"s-lane-card-meta-model s-lane-card-sel",children:h}),a.jsx(d,{value:h,label:"model",side:"lead"})]}),k&&a.jsx("span",{className:"s-lane-card-meta-effort s-lane-card-sel",children:k})]}),(j||m)&&a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--lead s-lane-card-meta-sid",children:[a.jsx(T,{}),j&&a.jsx("span",{className:"s-lane-card-val s-lane-card-sel",children:j}),m&&a.jsxs(a.Fragment,{children:[a.jsx("span",{className:"s-lane-card-gchar","aria-hidden":"true",children:"↳"}),a.jsx("span",{className:"s-lane-card-val s-lane-card-sel",children:b??m})]}),a.jsx(d,{value:v??m??j??"",label:"session id",side:"lead"})]}),a.jsxs("div",{className:"s-lane-card-meta-foot",children:[s.time&&a.jsxs("span",{className:"s-lane-card-time",children:[a.jsx("span",{className:"s-lane-card-time-dot","aria-hidden":"true"}),s.time]}),e&&a.jsx("button",{type:"button",className:"s-lane-card-caret","aria-label":r?"Expand summary":"Collapse summary","aria-expanded":!r,onClick:C=>{C.stopPropagation(),e()},children:a.jsx("svg",{viewBox:"0 0 10 10",width:"10",height:"10","aria-hidden":"true",children:a.jsx("path",{d:"M2 3.5 L5 6.5 L8 3.5",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinecap:"round",strokeLinejoin:"round"})})})]})]})]})]}),!r&&(i!==void 0?a.jsx(w,{cockpitHeight:i,children:a.jsx(g,{model:s,cockpitHeight:i})}):a.jsx(g,{model:s})),n]})}export{V as AgentLaneCard};
1
+ import{j as a,r as u}from"./index-C8uS5szO.js";/* empty css */import{AgentLaneCockpitPane as w,cockpitHeightTier as y}from"./AgentLaneSummaryResize-BBYBS3DO.js";import{c as $}from"./clipboard-e3fSpeo7.js";import{H as L}from"./HarnessMark-Bt47OeHy.js";function F(){return a.jsx("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",className:"s-lane-card-gmark",children:a.jsx("path",{d:"M2 4.2c0-.4.3-.7.7-.7h2.1l1 1h3.5c.4 0 .7.3.7.7V9c0 .4-.3.7-.7.7H2.7c-.4 0-.7-.3-.7-.7V4.2Z",fill:"none",stroke:"currentColor",strokeWidth:"1",strokeLinejoin:"round"})})}function T(){return a.jsxs("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",className:"s-lane-card-gmark",children:[a.jsx("circle",{cx:"6",cy:"3",r:"1.5",fill:"none",stroke:"currentColor",strokeWidth:"1"}),a.jsx("circle",{cx:"6",cy:"9",r:"1.5",fill:"none",stroke:"currentColor",strokeWidth:"1"}),a.jsx("path",{d:"M6 4.5v3",stroke:"currentColor",strokeWidth:"1"})]})}function W({dir:s}){return a.jsx("span",{className:"s-lane-card-dir","aria-hidden":"true",children:s==="from"?"←":"→"})}function M(){return a.jsxs(a.Fragment,{children:[a.jsx("i",{className:"s-lane-card-gl s-lane-card-gl-t","aria-hidden":"true"}),a.jsx("i",{className:"s-lane-card-gl s-lane-card-gl-b","aria-hidden":"true"}),a.jsx("i",{className:"s-lane-card-gl s-lane-card-gl-l","aria-hidden":"true"}),a.jsx("i",{className:"s-lane-card-gl s-lane-card-gl-r","aria-hidden":"true"})]})}function d({value:s,label:l,side:n}){const[r,e]=u.useState(!1),c=u.useRef(null);u.useEffect(()=>()=>{c.current&&clearTimeout(c.current)},[]);const i=u.useCallback(t=>{t.preventDefault(),t.stopPropagation(),$(s).then(o=>{o&&(e(!0),c.current&&clearTimeout(c.current),c.current=setTimeout(()=>e(!1),1100))})},[s]);return a.jsx("button",{type:"button",className:`s-lane-card-copydot s-lane-card-copydot--${n}${r?" s-lane-card-copydot--done":""}`,onClick:i,title:r?"Copied":`Copy ${l}`,"aria-label":r?`Copied ${l}`:`Copy ${l}`,children:r?a.jsx("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",children:a.jsx("path",{d:"M2.5 6.2 4.8 8.5 9.5 3.8",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})}):a.jsxs("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",children:[a.jsx("rect",{x:"3.4",y:"3.4",width:"5.8",height:"5.8",rx:"1.3",fill:"none",stroke:"currentColor",strokeWidth:"1"}),a.jsx("path",{d:"M2.4 7.2V2.8c0-.4.3-.7.7-.7h4",fill:"none",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"})]})})}function N({value:s,label:l,group:n}){const r=!!n&&n.rows.length>0;return a.jsxs("span",{className:`s-lane-card-instr${r?" s-lane-card-instr--pop":""}`,children:[a.jsx("span",{className:"s-lane-card-instr-val",children:s}),a.jsx("span",{className:"s-lane-card-instr-label",children:l}),r&&a.jsxs("span",{className:"s-lane-card-pop",role:"tooltip",children:[a.jsxs("span",{className:"s-lane-card-pop-h",children:[a.jsx("span",{className:"s-lane-card-pop-title",children:l}),a.jsx("span",{className:"s-lane-card-pop-count",children:n.more>0?`top ${n.rows.length} · ${s}`:s})]}),a.jsxs("span",{className:"s-lane-card-pop-list",children:[n.rows.map((e,c)=>a.jsxs("span",{className:"s-lane-card-pop-row",title:e.full??e.text,children:[a.jsx("span",{className:`s-lane-card-pop-mark s-lane-card-pop-mark--${e.tone}`,children:e.mark}),a.jsx("span",{className:"s-lane-card-pop-text",children:e.text})]},`${c}:${e.full||e.text}`)),n.more>0&&a.jsxs("span",{className:"s-lane-card-pop-more",children:["+",n.more," more"]})]})]})]})}function P(s){return s.toLocaleString()}function B(s){return s>=1e6?`${(s/1e6).toFixed(1)}M`:s>=1e3?`${(s/1e3).toFixed(s>=1e5?0:1)}k`:`${s}`}function S({usage:s}){return s.dials.length===0?null:a.jsxs("div",{className:"s-lane-card-cockpit-tokens","aria-label":"Token usage",children:[a.jsxs("div",{className:"s-lane-card-cockpit-tokens-head",children:[a.jsxs("span",{className:"s-lane-card-cockpit-tokens-label",children:[a.jsx("span",{className:"s-lane-card-cockpit-tokens-mark","aria-hidden":"true",children:"◎"}),"Tokens"]}),s.total!=null&&a.jsx("span",{className:"s-lane-card-cockpit-tokens-hint",children:B(s.total)})]}),a.jsx("div",{className:"s-lane-card-cockpit-dials",children:s.dials.map(l=>a.jsxs("span",{className:"s-lane-card-cockpit-dial",children:[a.jsx("span",{className:"s-lane-card-cockpit-dial-value",children:P(l.value)}),a.jsx("span",{className:"s-lane-card-cockpit-dial-label",children:l.label})]},l.label))})]})}function I({pops:s}){const l=s.edits.rows.length>0,n=l?s.edits:s.files;if(n.rows.length===0)return null;const r=l?"Files modified":"Files touched";return a.jsxs("div",{className:"s-lane-card-cockpit-files","aria-label":r,children:[a.jsxs("div",{className:"s-lane-card-cockpit-tokens-head",children:[a.jsx("span",{className:"s-lane-card-cockpit-tokens-label",children:r}),a.jsx("span",{className:"s-lane-card-cockpit-tokens-hint",children:n.rows.length+n.more})]}),a.jsxs("div",{className:"s-lane-card-cockpit-files-list",children:[n.rows.map((e,c)=>a.jsxs("span",{className:"s-lane-card-cockpit-file",title:e.full??e.text,children:[a.jsx("span",{className:`s-lane-card-pop-mark s-lane-card-pop-mark--${e.tone}`,children:e.mark}),a.jsx("span",{className:"s-lane-card-cockpit-file-text",children:e.text})]},`${c}:${e.full||e.text}`)),n.more>0&&a.jsxs("span",{className:"s-lane-card-cockpit-file s-lane-card-cockpit-file--more",children:["+",n.more," more"]})]})]})}function g({model:s,cockpitHeight:l=null}){const n=y(l)==="stats";return a.jsxs(a.Fragment,{children:[a.jsx("div",{className:"s-lane-card-summary",children:s.head?.placeholder?a.jsxs("div",{className:`s-lane-card-wait${s.working?" s-lane-card-wait--working":""}`,children:[a.jsx("span",{className:"s-lane-card-wait-dot","aria-hidden":"true"}),a.jsx("span",{className:"s-lane-card-wait-label",children:s.head.text})]}):a.jsxs("div",{className:`s-lane-card-current${s.head?.dir?"":" s-lane-card-current--console"}`,children:[s.head?.dir?a.jsx(W,{dir:s.head.dir}):a.jsx("span",{className:"s-lane-card-prompt","aria-hidden":"true",children:"❯"}),a.jsxs("span",{className:"s-lane-card-headwrap",children:[a.jsx("span",{className:"s-lane-card-head-text",children:s.head?.text??"Waiting for trace activity…"}),s.head?.full&&a.jsx("span",{className:"s-lane-card-headpop",role:"tooltip",children:s.head.full})]})]})}),a.jsxs("div",{className:"s-lane-card-accs",children:[a.jsx("div",{className:"s-lane-card-accs-tools",children:s.stats.tools>0?a.jsxs(a.Fragment,{children:[a.jsx(N,{value:s.stats.tools,label:"tools",group:s.pops.tools}),s.stats.edits>0&&a.jsx(N,{value:s.stats.edits,label:"edits",group:s.pops.edits}),s.stats.reads>0&&a.jsx(N,{value:s.stats.reads,label:"reads",group:s.pops.reads}),s.stats.files>0&&a.jsx(N,{value:s.stats.files,label:"files",group:s.pops.files})]}):a.jsx("span",{className:"s-lane-card-accs-empty",children:"no tool activity yet"})}),a.jsxs("div",{className:"s-lane-card-vitals",children:[a.jsxs("span",{className:`s-lane-card-instr s-lane-card-instr--ctx${s.context==null?" s-lane-card-instr--ctx-pending":""}`,title:s.context==null?"Context window — awaiting usage":`Context window ${s.context}% used`,children:[a.jsx("span",{className:"s-lane-card-gauge","aria-hidden":"true",children:a.jsx("span",{className:"s-lane-card-gauge-fill",style:{width:`${s.context??0}%`}})}),a.jsx("span",{className:"s-lane-card-instr-val",children:s.context==null?"—":`${s.context}%`}),a.jsx("span",{className:"s-lane-card-instr-label",children:"ctx"})]}),s.tokens&&a.jsxs("span",{className:"s-lane-card-instr",title:"Tokens currently in context",children:[a.jsx("span",{className:"s-lane-card-instr-val",children:s.tokens}),a.jsx("span",{className:"s-lane-card-instr-label",children:"ctx tokens"})]}),s.turns!=null&&a.jsxs("span",{className:"s-lane-card-instr",children:[a.jsx("span",{className:"s-lane-card-instr-val",children:s.turns}),a.jsx("span",{className:"s-lane-card-instr-label",children:s.turns===1?"turn":"turns"})]})]})]}),n&&(s.tokenUsage?a.jsx(S,{usage:s.tokenUsage}):a.jsx(I,{pops:s.pops}))]})}function V({model:s,avatar:l,trace:n,collapsed:r=!1,onToggleCollapsed:e,onOpen:c,cockpitHeight:i}){const{name:t,harness:o,model:h,effort:k,cwd:p,cwdFull:f,branch:x,sessionId:j,sessionIdFull:v,parentSessionId:m,parentSessionLabel:b}=s;return a.jsxs("section",{className:`s-lane-card${s.working?" s-lane-card--working":""}${r?" s-lane-card--collapsed":""}`,"aria-label":`${t} lane`,children:[c&&a.jsx("button",{type:"button",className:"s-lane-card-hit",onClick:c,"aria-label":`Inspect ${t}`}),a.jsxs("div",{className:"s-lane-card-head",children:[a.jsxs("span",{className:"s-lane-card-anchor s-lane-card-anchor--av",children:[a.jsx(M,{}),l]}),a.jsxs("div",{className:"s-lane-card-ident",children:[a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--trail s-lane-card-namebox",children:[a.jsx("span",{className:"s-lane-card-name s-lane-card-sel",children:t}),s.authority&&a.jsx("span",{className:"s-lane-card-authority",title:s.authority.title,children:s.authority.label}),a.jsx(d,{value:t,label:"agent name",side:"trail"})]}),p&&a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--trail s-lane-card-d s-lane-card-d--strong",title:f??p,children:[a.jsx(F,{}),a.jsx("span",{className:"s-lane-card-val s-lane-card-sel",children:p}),a.jsx(d,{value:f??p,label:"working directory",side:"trail"})]}),x&&a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--trail s-lane-card-d",title:x,children:[a.jsx("span",{className:"s-lane-card-gchar","aria-hidden":"true",children:"⎇"}),a.jsx("span",{className:"s-lane-card-val s-lane-card-sel",children:x}),a.jsx(d,{value:x,label:"branch",side:"trail"})]})]}),a.jsxs("div",{className:"s-lane-card-meta",children:[o&&a.jsx("span",{className:"s-lane-card-anchor s-lane-card-anchor--hm",children:a.jsx(L,{harness:o,size:30,className:"s-lane-card-hmark"})}),a.jsxs("div",{className:"s-lane-card-meta-lines",children:[(h||k)&&a.jsxs("div",{className:"s-lane-card-meta-run",children:[h&&a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--lead s-lane-card-modelwrap",children:[a.jsx("span",{className:"s-lane-card-meta-model s-lane-card-sel",children:h}),a.jsx(d,{value:h,label:"model",side:"lead"})]}),k&&a.jsx("span",{className:"s-lane-card-meta-effort s-lane-card-sel",children:k})]}),(j||m)&&a.jsxs("span",{className:"s-lane-card-fieldc s-lane-card-fieldc--lead s-lane-card-meta-sid",children:[a.jsx(T,{}),j&&a.jsx("span",{className:"s-lane-card-val s-lane-card-sel",children:j}),m&&a.jsxs(a.Fragment,{children:[a.jsx("span",{className:"s-lane-card-gchar","aria-hidden":"true",children:"↳"}),a.jsx("span",{className:"s-lane-card-val s-lane-card-sel",children:b??m})]}),a.jsx(d,{value:v??m??j??"",label:"session id",side:"lead"})]}),a.jsxs("div",{className:"s-lane-card-meta-foot",children:[s.time&&a.jsxs("span",{className:"s-lane-card-time",children:[a.jsx("span",{className:"s-lane-card-time-dot","aria-hidden":"true"}),s.time]}),e&&a.jsx("button",{type:"button",className:"s-lane-card-caret","aria-label":r?"Expand summary":"Collapse summary","aria-expanded":!r,onClick:C=>{C.stopPropagation(),e()},children:a.jsx("svg",{viewBox:"0 0 10 10",width:"10",height:"10","aria-hidden":"true",children:a.jsx("path",{d:"M2 3.5 L5 6.5 L8 3.5",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinecap:"round",strokeLinejoin:"round"})})})]})]})]})]}),!r&&(i!==void 0?a.jsx(w,{cockpitHeight:i,children:a.jsx(g,{model:s,cockpitHeight:i})}):a.jsx(g,{model:s})),n]})}export{V as AgentLaneCard};
@@ -1 +1 @@
1
- import{j as e}from"./index-C1VaWNuD.js";const p=["sm","md","lg"];function j({title:n,width:l,defaultWidth:c,pinned:s,onTogglePin:h,onWidthChange:d,onResizeStart:m,resizing:r,widthControls:o=!0,statusLabel:t,live:g}){const i=typeof l=="string"?l:c;return e.jsxs("div",{className:`s-agent-lane-chrome${r?" s-agent-lane-chrome--resizing":""}`,children:[e.jsxs("div",{className:"s-agent-lane-chrome-body",children:[e.jsxs("div",{className:"s-agent-lane-chrome-top",children:[e.jsx("button",{type:"button",className:`s-agent-lane-chrome-pin${s?" s-agent-lane-chrome-pin--on":""}`,"aria-pressed":s,title:s?"Unpin lane":"Pin lane",onClick:h,children:e.jsx(u,{filled:s})}),e.jsx("span",{className:"s-agent-lane-chrome-title",title:n,children:n}),t?e.jsxs("span",{className:`s-agent-lane-chrome-status${g?" s-agent-lane-chrome-status--live":""}`,title:t,children:[e.jsx("span",{className:"s-agent-lane-chrome-status-dot","aria-hidden":"true"}),e.jsx("span",{className:"s-agent-lane-chrome-status-label",children:t})]}):null]}),o?e.jsx("div",{className:"s-agent-lane-chrome-widths",role:"group","aria-label":"Lane width",children:p.map(a=>e.jsx("button",{type:"button",className:`s-agent-lane-chrome-width-btn${i===a?" s-agent-lane-chrome-width-btn--on":""}`,"aria-pressed":i===a,title:`${a.toUpperCase()} width`,onClick:()=>d(a),children:a.toUpperCase()},a))}):null]}),o?e.jsx("div",{role:"separator","aria-orientation":"vertical","aria-label":"Resize lane width",title:"Drag to resize lane",className:`s-agent-lane-width-handle${r?" s-agent-lane-width-handle--active":""}`,onPointerDown:m}):null]})}function u({filled:n}){return e.jsx("svg",{viewBox:"0 0 12 12",width:"12",height:"12","aria-hidden":"true",children:e.jsx("path",{d:"M4.2 1.8h3.6l.5 1.8 1.9.8-.2 1.1-1.7.4-.8 3.1H4.3l-.8-3.1-1.7-.4-.2-1.1 1.9-.8.5-1.8Z",fill:n?"currentColor":"none",stroke:"currentColor",strokeWidth:"0.9",strokeLinejoin:"round"})})}export{j as AgentLaneChrome};
1
+ import{j as e}from"./index-C8uS5szO.js";const p=["sm","md","lg"];function j({title:n,width:l,defaultWidth:c,pinned:s,onTogglePin:h,onWidthChange:d,onResizeStart:m,resizing:r,widthControls:o=!0,statusLabel:t,live:g}){const i=typeof l=="string"?l:c;return e.jsxs("div",{className:`s-agent-lane-chrome${r?" s-agent-lane-chrome--resizing":""}`,children:[e.jsxs("div",{className:"s-agent-lane-chrome-body",children:[e.jsxs("div",{className:"s-agent-lane-chrome-top",children:[e.jsx("button",{type:"button",className:`s-agent-lane-chrome-pin${s?" s-agent-lane-chrome-pin--on":""}`,"aria-pressed":s,title:s?"Unpin lane":"Pin lane",onClick:h,children:e.jsx(u,{filled:s})}),e.jsx("span",{className:"s-agent-lane-chrome-title",title:n,children:n}),t?e.jsxs("span",{className:`s-agent-lane-chrome-status${g?" s-agent-lane-chrome-status--live":""}`,title:t,children:[e.jsx("span",{className:"s-agent-lane-chrome-status-dot","aria-hidden":"true"}),e.jsx("span",{className:"s-agent-lane-chrome-status-label",children:t})]}):null]}),o?e.jsx("div",{className:"s-agent-lane-chrome-widths",role:"group","aria-label":"Lane width",children:p.map(a=>e.jsx("button",{type:"button",className:`s-agent-lane-chrome-width-btn${i===a?" s-agent-lane-chrome-width-btn--on":""}`,"aria-pressed":i===a,title:`${a.toUpperCase()} width`,onClick:()=>d(a),children:a.toUpperCase()},a))}):null]}),o?e.jsx("div",{role:"separator","aria-orientation":"vertical","aria-label":"Resize lane width",title:"Drag to resize lane",className:`s-agent-lane-width-handle${r?" s-agent-lane-width-handle--active":""}`,onPointerDown:m}):null]})}function u({filled:n}){return e.jsx("svg",{viewBox:"0 0 12 12",width:"12",height:"12","aria-hidden":"true",children:e.jsx("path",{d:"M4.2 1.8h3.6l.5 1.8 1.9.8-.2 1.1-1.7.4-.8 3.1H4.3l-.8-3.1-1.7-.4-.2-1.1 1.9-.8.5-1.8Z",fill:n?"currentColor":"none",stroke:"currentColor",strokeWidth:"0.9",strokeLinejoin:"round"})})}export{j as AgentLaneChrome};