@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.
- package/NOTICE +7 -0
- package/bin/scoutd +0 -0
- package/dist/build-manifest.json +3 -3
- package/dist/client/assets/ActivityScreen-DCALiEXY.js +1 -0
- package/dist/client/assets/{AddProjectForm-fXndbzXT.js → AddProjectForm-DfbjlFfy.js} +1 -1
- package/dist/client/assets/AdventureEvidence-Dzz9VbuE.js +5 -0
- package/dist/client/assets/AdventureReader-ClMxT0e4.js +4 -0
- package/dist/client/assets/AdventureScenery-D548O0x4.js +1 -0
- package/dist/client/assets/AgentAdventures-NwTKeF0F.js +1 -0
- package/dist/client/assets/AgentAvatar-BIwg54Tj.js +1 -0
- package/dist/client/assets/AgentConfigurationScreen-B2Hw0ce1.js +1 -0
- package/dist/client/assets/AgentDefinitionsWorkspace-CwZJ833X.js +1 -0
- package/dist/client/assets/AgentDetailCard-CFDE8TLi.js +1 -0
- package/dist/client/assets/AgentFloorView-l2wNKFob.js +1 -0
- package/dist/client/assets/AgentFloorWorld-BDJmXl3C.js +1 -0
- package/dist/client/assets/AgentInfoScreen-ClZM1wQb.js +1 -0
- package/dist/client/assets/{AgentLaneCard-Cc9uyfBr.js → AgentLaneCard-C6YmwPxQ.js} +1 -1
- package/dist/client/assets/{AgentLaneChrome-Dv2lBFoH.js → AgentLaneChrome-D9uJ4QY7.js} +1 -1
- package/dist/client/assets/{AgentLaneDetailSheet-CGqtqSHQ.js → AgentLaneDetailSheet-KYckCBCX.js} +2 -2
- package/dist/client/assets/{AgentLaneSummaryResize-Di4u6df2.js → AgentLaneSummaryResize-BBYBS3DO.js} +1 -1
- package/dist/client/assets/AgentLanesEmbedScreen-DqHwqY0X.js +1 -0
- package/dist/client/assets/{AgentLanesPreflight-CCGBArIb.js → AgentLanesPreflight-pw2vMO3Q.js} +1 -1
- package/dist/client/assets/AgentLanesView-aAyC7lHf.js +2 -0
- package/dist/client/assets/AgentLiveActions-lYzicnNa.js +1 -0
- package/dist/client/assets/AgentMasterScreen-By6DN0jF.js +1 -0
- package/dist/client/assets/AgentSessions-Cox2zS-e.js +6 -0
- package/dist/client/assets/AgentsConsole-Dq0S_hRA.js +1 -0
- package/dist/client/assets/AgentsScreen-Bi9Lx47B.js +1 -0
- package/dist/client/assets/AgentsSubnav-BOobgtGE.js +1 -0
- package/dist/client/assets/{AstronautSuit-CwB4Dw07.js → AstronautSuit-C-4I5YKi.js} +1 -1
- package/dist/client/assets/AtopView-DKm-ERYC.js +1 -0
- package/dist/client/assets/BackToPicker-Bys9ColC.js +1 -0
- package/dist/client/assets/BriefingDetailScreen-sprFl4Nk.js +1 -0
- package/dist/client/assets/BriefingsScreen-D4Zf31Y6.js +1 -0
- package/dist/client/assets/{BrokerMetadataPanel-BJSwU9XZ.js → BrokerMetadataPanel-1GoSl2BV.js} +1 -1
- package/dist/client/assets/BrokerScreen-CejzhRsB.js +8 -0
- package/dist/client/assets/{CastPicker-CkgTalIt.js → CastPicker-BuwE_JQp.js} +1 -1
- package/dist/client/assets/CharacterFamilyPreview-BniL8sEL.css +1 -0
- package/dist/client/assets/CharacterFamilyPreview-CfO3j8Of.js +1 -0
- package/dist/client/assets/ChatCollapsedStrip-TV0j1xTB.js +1 -0
- package/dist/client/assets/{CodeDiffPane-DfluIWmO.js → CodeDiffPane-DB6-mqtX.js} +1 -1
- package/dist/client/assets/{CodeProjectPicker-By_Wz9ex.js → CodeProjectPicker-B_LNLpIK.js} +1 -1
- package/dist/client/assets/CodeScreen-C9H160XS.js +1 -0
- package/dist/client/assets/CommsCanvas-BR2YS76H.css +1 -0
- package/dist/client/assets/CommsCanvas-DOKw3Q8i.js +1 -0
- package/dist/client/assets/CommsDeck-C18JA7rK.js +1 -0
- package/dist/client/assets/CommsFlowGraph-Czg-KTS0.js +1 -0
- package/dist/client/assets/CommsFlowGraph-vQucylxF.css +1 -0
- package/dist/client/assets/CommsFlowMap-CzBWvSa5.js +1 -0
- package/dist/client/assets/CommsSelection-g1twA-Lb.js +1 -0
- package/dist/client/assets/{ConversationComposer-BUIjWMBi.js → ConversationComposer-B7RU6LKd.js} +1 -1
- package/dist/client/assets/ConversationFeedRows-DVqnZQH0.js +1 -0
- package/dist/client/assets/ConversationHeader-CCSU8uo_.js +1 -0
- package/dist/client/assets/ConversationPanels-C9yCAoJy.js +6 -0
- package/dist/client/assets/ConversationScreen-Brfas2y0.css +1 -0
- package/dist/client/assets/ConversationScreen-tTP6B_F-.js +2 -0
- package/dist/client/assets/ConversationStatus-CK-YfLpi.js +1 -0
- package/dist/client/assets/{CrewAvatar-CZ_faQ_s.js → CrewAvatar-CJhuqTsJ.js} +1 -1
- package/dist/client/assets/CrewSprite-DsQJdu3Z.css +1 -0
- package/dist/client/assets/CrewSprite-hgpA3SWB.js +1 -0
- package/dist/client/assets/CrewWorkspaces-4O8dgRUD.js +1 -0
- package/dist/client/assets/{DataTable-C6aMSilS.js → DataTable-BMOZ1-z8.js} +1 -1
- package/dist/client/assets/DispatchAftermath-DDlwqSCY.js +1 -0
- package/dist/client/assets/DocumentFocusViewer-f12RRQpV.js +1 -0
- package/dist/client/assets/{EmbeddableSurfacesLab-D3iZiS8o.js → EmbeddableSurfacesLab-DGl9EMRV.js} +1 -1
- package/dist/client/assets/{EmptyState-CKPWFSjq.js → EmptyState-uyYN5piI.js} +1 -1
- package/dist/client/assets/{FileViewerPane-CxNbcTYf.js → FileViewerPane-HtiDbj9N.js} +2 -2
- package/dist/client/assets/FlightObserveScreen-DDXfNbsw.js +1 -0
- package/dist/client/assets/FloorContextSheet-DV-SYA0K.js +1 -0
- package/dist/client/assets/FloorExchangePanel-B3TFhjLk.css +1 -0
- package/dist/client/assets/FloorExchangePanel-D59nvRCF.js +1 -0
- package/dist/client/assets/FloorMessagePasses-BCwsz9VS.js +1 -0
- package/dist/client/assets/FloorMessagePasses-nxwwiUom.css +1 -0
- package/dist/client/assets/FloorReplay-BHo79HCD.js +1 -0
- package/dist/client/assets/FloorResourcesSheet-Djrgd_ZU.js +1 -0
- package/dist/client/assets/FloorSavedWork-2tjBoy06.js +1 -0
- package/dist/client/assets/FloorTacticalHUD-Bngao6sn.js +1 -0
- package/dist/client/assets/FollowScreen-eHXOlK-u.js +1 -0
- package/dist/client/assets/{HarnessMark-DttReffF.js → HarnessMark-Bt47OeHy.js} +1 -1
- package/dist/client/assets/HarnessesScreen-M84sFjWY.js +1 -0
- package/dist/client/assets/{HerdrSession-DsuxCtfX.js → HerdrSession-CtJOUn7H.js} +3 -3
- package/dist/client/assets/{HomeHero-DXJo2QSO.js → HomeHero-Cvwx2H0w.js} +1 -1
- package/dist/client/assets/HostAdvisorView-CTJXIc1Q.js +1 -0
- package/dist/client/assets/KnowledgeSearchInspector-DwGMVmFL.js +1 -0
- package/dist/client/assets/KnowledgeSearchScreen-WC0WhFio.js +1 -0
- package/dist/client/assets/{LaneToolHoverCard-t7-XJP-h.js → LaneToolHoverCard-C6YehJqD.js} +1 -1
- package/dist/client/assets/LaneTraceDetailSheet-mAhj7MJi.js +1 -0
- package/dist/client/assets/{LaneTraceEventFocus-BB5DhFQm.js → LaneTraceEventFocus-WLNZZVi_.js} +1 -1
- package/dist/client/assets/MeshCanvas-FDDGE69h.js +3 -0
- package/dist/client/assets/MeshCanvasMinimap-CGRzQCac.js +1 -0
- package/dist/client/assets/MeshScreen-DlfiMlaR.js +1 -0
- package/dist/client/assets/{MeshTopologyView-Dc0GSrKa.js → MeshTopologyView-C2Cv_2gx.js} +2 -2
- package/dist/client/assets/MessagesScreen-BZ7yaGJx.js +1 -0
- package/dist/client/assets/MissionContextRail-CVSZJnvX.js +1 -0
- package/dist/client/assets/MissionControlView-DpGhxG4a.js +1 -0
- package/dist/client/assets/MissionFocusOverlay-B9SiuO-i.js +1 -0
- package/dist/client/assets/MissionLeftAgentRow-DhhRRim0.js +1 -0
- package/dist/client/assets/MissionLogPane-CMBiI29U.js +1 -0
- package/dist/client/assets/NativeAreaScreen-BQyHHRAM.js +1 -0
- package/dist/client/assets/NativeAreaScreen-Ditv-TYW.js +1 -0
- package/dist/client/assets/NativeAreaScreen-Dq3uPSEI.js +1 -0
- package/dist/client/assets/NewAgentModal-Cl4nsGhu.js +1 -0
- package/dist/client/assets/NewChatComposer-JjLbm3W2.js +19 -0
- package/dist/client/assets/{NewChatOrigin-DCn5cWPZ.js → NewChatOrigin-CyPPWTJP.js} +1 -1
- package/dist/client/assets/NodeDetailPanel-BUG8rOb-.js +1 -0
- package/dist/client/assets/NodeMenu-Fw8ATWQA.js +1 -0
- package/dist/client/assets/ObserveEmbedScreen-BPiSXXvm.js +2 -0
- package/dist/client/assets/{ObserveTextFlow-DCJ5EmD8.js → ObserveTextFlow-ET0dD1wO.js} +2 -2
- package/dist/client/assets/{ObservedTopologyPanel-CJVqIqQ2.js → ObservedTopologyPanel-DkEkQzo-.js} +1 -1
- package/dist/client/assets/OpenScoutAppShell-CzKbjwCA.js +22 -0
- package/dist/client/assets/OpsAgentsView-CZbtkcQH.js +1 -0
- package/dist/client/assets/OpsScreen-DJq-aBmX.js +1 -0
- package/dist/client/assets/OpsSubnav-9sURjajO.js +1 -0
- package/dist/client/assets/ProjectAgentProfile-q_1tMJIL.js +1 -0
- package/dist/client/assets/{ProjectAgentProfileBar-CUzZ4Rpx.js → ProjectAgentProfileBar-C1fR65Eh.js} +1 -1
- package/dist/client/assets/ProjectAgentProfileHero-DyEFyTFs.js +1 -0
- package/dist/client/assets/ProjectsInbox-Bs8I__my.js +2 -0
- package/dist/client/assets/ProjectsRail-Deb38OJ1.js +1 -0
- package/dist/client/assets/ProjectsScreen-CgLiYiss.js +1 -0
- package/dist/client/assets/ProjectsThreadAside-C0Yw3yIL.js +1 -0
- package/dist/client/assets/Provider-5Hotn7NQ.js +5 -0
- package/dist/client/assets/{RailRow-B0sRaJc6.css → RailRow-B25zKEub.css} +1 -1
- package/dist/client/assets/RailRow-BYguXNm4.js +1 -0
- package/dist/client/assets/RawSessionsTable-DIhmlvk-.js +1 -0
- package/dist/client/assets/RealtimeVoiceScreen-3oU7b7V5.js +1 -0
- package/dist/client/assets/RenderedWorkerSprite-CvdWO32C.js +1 -0
- package/dist/client/assets/RenderedWorkerSprite-qnTfkd_4.css +1 -0
- package/dist/client/assets/ReplayClock-B7JLTp8A.js +1 -0
- package/dist/client/assets/ReplayLog-DZTpf2CW.js +1 -0
- package/dist/client/assets/ReplayOutpost-CvWQa30T.js +1 -0
- package/dist/client/assets/ReplayOutpost-Y1DvZgeu.css +1 -0
- package/dist/client/assets/{RepoDiffEmbedScreen-mexrJPhW.js → RepoDiffEmbedScreen-Cbu0_PJW.js} +1 -1
- package/dist/client/assets/{RepoDiffPageScreen-DbqX4L3q.js → RepoDiffPageScreen-Chwm6GXL.js} +1 -1
- package/dist/client/assets/RepoDiffViewer-C2mb0Wj-.js +7 -0
- package/dist/client/assets/RepoDiffViewerLazy-BQ6ZCrsq.js +2 -0
- package/dist/client/assets/{ReposScreen-CzbO1Fuy.js → ReposScreen-C7JZQmyh.js} +2 -2
- package/dist/client/assets/RiggedWorkerCharacter-BpYECnyK.css +1 -0
- package/dist/client/assets/RiggedWorkerCharacter-DNe731GE.js +1 -0
- package/dist/client/assets/SageModelStudio-768dRQr4.css +1 -0
- package/dist/client/assets/SageModelStudio-BR1J2D4R.js +4108 -0
- package/dist/client/assets/ScoutDeckSurface-flRamdvE.js +1 -0
- package/dist/client/assets/{ScoutSurface-NlhDsPzg.js → ScoutSurface-BpklGmDL.js} +1 -1
- package/dist/client/assets/{ScoutbotFxLab-l2WAahCg.js → ScoutbotFxLab-DeK7ySWZ.js} +1 -1
- package/dist/client/assets/{SecondaryNav-Cs0_FQdj.js → SecondaryNav-BkTn5tkq.js} +1 -1
- package/dist/client/assets/SessionEmbedScreen-CcQN6xlo.js +1 -0
- package/dist/client/assets/{SessionObserve-CLrHfAKZ.css → SessionObserve-BOBJSfs0.css} +1 -1
- package/dist/client/assets/SessionObserve-DaqDhqDI.js +12 -0
- package/dist/client/assets/SessionObserveEvidence-Drv-D8Oh.js +1 -0
- package/dist/client/assets/SessionRefScreen-BOQ1_ydg.js +1 -0
- package/dist/client/assets/SessionsScreen-R8QKvoey.js +1 -0
- package/dist/client/assets/SettingsDrawer-BDapR4E9.js +3 -0
- package/dist/client/assets/SettingsScreen-DirtO7Z0.js +1 -0
- package/dist/client/assets/SharedFloorCharacter-Bi5_md4R.css +1 -0
- package/dist/client/assets/SharedFloorCharacter-CSYG_t9t.js +1 -0
- package/dist/client/assets/SharedWorkFloor-BCmdeb3Q.css +1 -0
- package/dist/client/assets/SharedWorkFloor-yPWFLZwX.js +2 -0
- package/dist/client/assets/{ShikiPane-C0TuCATU.js → ShikiPane-BudrOxNK.js} +1 -1
- package/dist/client/assets/{SlidePanel-CETQ5NTx.js → SlidePanel-Datu7XG4.js} +1 -1
- package/dist/client/assets/SpriteAvatar-BW1JzkDt.js +1 -0
- package/dist/client/assets/SproutActionSprite-DveCzg6l.js +1 -0
- package/dist/client/assets/{StatusPill-BllrY-eg.js → StatusPill-MxYClPG5.js} +1 -1
- package/dist/client/assets/{TailView-_gKWfaQM.js → TailView-Dn7uWmPz.js} +2 -2
- package/dist/client/assets/Terminal-D-DsQlmV.js +4 -0
- package/dist/client/assets/TerminalEmbedScreen-9Gmln759.js +1 -0
- package/dist/client/assets/TerminalHeaderMount-DCGstkZ4.js +1 -0
- package/dist/client/assets/{TextDocumentSurface-2X1Gw4eA.js → TextDocumentSurface-BhYvAB0o.js} +1 -1
- package/dist/client/assets/{TmuxPeek-CqTJRhkI.js → TmuxPeek-BhK0V9Qt.js} +1 -1
- package/dist/client/assets/{VoicePermissionsPanel-C4vkU-sU.js → VoicePermissionsPanel-CecFWzva.js} +1 -1
- package/dist/client/assets/{WorkDetailScreen-DqGnuK0e.js → WorkDetailScreen-CwtRCm_-.js} +4 -4
- package/dist/client/assets/WorkFilesViewer-DJHftsH9.js +1 -0
- package/dist/client/assets/WorkRunView-CxwAZ2QQ.css +1 -0
- package/dist/client/assets/WorkRunView-x5PH1byG.js +1 -0
- package/dist/client/assets/WorldActorTalk-uIH2jGqA.js +1 -0
- package/dist/client/assets/WorldCharacter-Dn4sIXNP.js +1 -0
- package/dist/client/assets/WorldMinimap-Blqg0d5r.js +1 -0
- package/dist/client/assets/WorldSky-DV9bpvXj.js +1 -0
- package/dist/client/assets/{activity-CzTJ-YMX.js → activity-CSUhvjD0.js} +1 -1
- package/dist/client/assets/{addon-fit-Zx3A7pGS.js → addon-fit-MR98IWES.js} +1 -1
- package/dist/client/assets/{addon-webgl-DitJj-N0.js → addon-webgl-CIIKXrvK.js} +1 -1
- package/dist/client/assets/adventure-evidence-DgQbBmfa.css +1 -0
- package/dist/client/assets/adventure-habitats-v1-CVMbdB_Z.png +0 -0
- package/dist/client/assets/adventure-habitats-v1-M1lcpTJh.js +1 -0
- package/dist/client/assets/adventure-playback-DTfkhIc0.js +3 -0
- package/dist/client/assets/adventure-reader-DM5UDDm9.css +1 -0
- package/dist/client/assets/agent-adventures-DZtWpj6k.css +1 -0
- package/dist/client/assets/agent-autocomplete-CeHQpuG9.js +10 -0
- package/dist/client/assets/{agent-essentials-K9B6kbTS.js → agent-essentials-8t2il7PV.js} +1 -1
- package/dist/client/assets/{agent-floor-CuJr1iK1.css → agent-floor-Dmr9hZHL.css} +1 -1
- package/dist/client/assets/agent-floor-actor-3v9drnxh.js +1 -0
- package/dist/client/assets/agent-floor-world-Bnd1AtwK.css +1 -0
- package/dist/client/assets/agent-floor-world-layout-hfMjuoui.js +1 -0
- package/dist/client/assets/agent-lane-card-model-l0stnU9N.js +1 -0
- package/dist/client/assets/{agent-lane-detail-ppJId6Jc.js → agent-lane-detail-Db7KyAlf.js} +1 -1
- package/dist/client/assets/{agent-lane-preview-BhplDYGf.js → agent-lane-preview-B8lsQJOQ.js} +1 -1
- package/dist/client/assets/{agent-lanes-DlqcEf0l.css → agent-lanes-DmgipV9D.css} +1 -1
- package/dist/client/assets/agent-lanes-model-CX0wTcnF.js +4 -0
- package/dist/client/assets/agent-master-THmq-1k8.css +1 -0
- package/dist/client/assets/agent-master-model-C-KdOFDK.js +1 -0
- package/dist/client/assets/{agent-specialization-CtF_jI34.js → agent-specialization-CiVxQsFT.js} +1 -1
- package/dist/client/assets/agent-state-DDhnFEEP.js +1 -0
- package/dist/client/assets/{api-HFH8wFyb.js → api-B9_IqFKY.js} +1 -1
- package/dist/client/assets/api-CaROe5_H.js +1 -0
- package/dist/client/assets/{arc.es-BNXJqSw7.js → arc.es-BzhWalCl.js} +1 -1
- package/dist/client/assets/{arrow-down-BAGkhHA6.js → arrow-down-WoVlkUmg.js} +1 -1
- package/dist/client/assets/{arrow-left-eToA6GxC.js → arrow-left-PuKdO3NM.js} +1 -1
- package/dist/client/assets/{arrow-right-DTX42clh.js → arrow-right-ldbfp4SZ.js} +1 -1
- package/dist/client/assets/{arrow-up-right-B09GPwFl.js → arrow-up-right-Hn754ybA.js} +1 -1
- package/dist/client/assets/book-open-BlJnpf2U.js +1 -0
- package/dist/client/assets/{bot-WxKXYtEX.js → bot-CfN9PSBF.js} +1 -1
- package/dist/client/assets/broker-display-BkBzyvbR.js +2 -0
- package/dist/client/assets/{cache-CeWH_KzJ.js → cache-DEy9E34b.js} +1 -1
- package/dist/client/assets/{check-Dz2SRHft.js → check-B8dMv3Is.js} +1 -1
- package/dist/client/assets/{chevron-down-D120PY4g.js → chevron-down-B5eMsn5c.js} +1 -1
- package/dist/client/assets/{chevron-right-CowuvuE6.js → chevron-right-C7UGFpkl.js} +1 -1
- package/dist/client/assets/chevron-up-BHOEgHcn.js +1 -0
- package/dist/client/assets/{chunk-HRAB3GC3-KjjrTLCU.js → chunk-HRAB3GC3-C5X-kFhb.js} +1 -1
- package/dist/client/assets/chunk-JTPDIGGW-ZC-98AHT.js +46 -0
- package/dist/client/assets/{chunk-T65CQEWV-H2QEKfr1.js → chunk-T65CQEWV-CSVUz2rY.js} +1 -1
- package/dist/client/assets/chunk-YOZR3KYS-B59jqwO0.js +2 -0
- package/dist/client/assets/{clock-_9FDplIT.js → clock-DFcRbtrl.js} +1 -1
- package/dist/client/assets/{code-xml-CkkNdRmu.js → code-xml-BmyLM0I2.js} +1 -1
- package/dist/client/assets/coffee-C_D9zooM.js +1 -0
- package/dist/client/assets/colors-CFlbwC25.js +1 -0
- package/dist/client/assets/comms-deck-C8nVeMBh.css +1 -0
- package/dist/client/assets/comms-deck-CBhsXnY-.js +2 -0
- package/dist/client/assets/comms-gesture-_aGFo6g3.js +2 -0
- package/dist/client/assets/{compass-BdpImt_W.js → compass-DTZdCpv9.js} +1 -1
- package/dist/client/assets/content-B5Q4pb9R.js +1 -0
- package/dist/client/assets/content-BK1IfOZs.js +1 -0
- package/dist/client/assets/content-BeEsWLEm.js +1 -0
- package/dist/client/assets/content-BkOwEknW.js +1 -0
- package/dist/client/assets/content-C32W5kAG.js +1 -0
- package/dist/client/assets/content-CoqyLs9v.js +1 -0
- package/dist/client/assets/content-CwpdIS5b.js +1 -0
- package/dist/client/assets/content-DS2OkJ3Q.js +1 -0
- package/dist/client/assets/content-DXKaPDfn.js +1 -0
- package/dist/client/assets/content-DZt5-dkI.js +1 -0
- package/dist/client/assets/content-DbQJH8L1.js +1 -0
- package/dist/client/assets/content-DetoiaHq.js +1 -0
- package/dist/client/assets/content-Dhu3wL7J.js +1 -0
- package/dist/client/assets/content-Dpv34iZu.js +1 -0
- package/dist/client/assets/content-TtQJb61D.js +1 -0
- package/dist/client/assets/content-ymNb2R7g.js +1 -0
- package/dist/client/assets/{context-budget-DqxWzalx.js → context-budget-DemtXu7E.js} +1 -1
- package/dist/client/assets/{conversation-icons-DHGc9wbT.js → conversation-icons-BQ4OeOmr.js} +1 -1
- package/dist/client/assets/conversation-model-BGFHoxQ0.js +1 -0
- package/dist/client/assets/conversation-motion-features-9x8uZpwh.js +1 -0
- package/dist/client/assets/conversations-Cbg9h_Af.js +1 -0
- package/dist/client/assets/{copy-BzdzWsQd.js → copy-D9WUpQRf.js} +1 -1
- package/dist/client/assets/{cpu-CHFIGw87.js → cpu-Ck_4tB_-.js} +1 -1
- package/dist/client/assets/{createLucideIcon-Dv8H8m7J.js → createLucideIcon-DkjnzvcJ.js} +1 -1
- package/dist/client/assets/{credentials-BTce3VP1.js → credentials-C4VXz2hr.js} +1 -1
- package/dist/client/assets/discover-C8IOY7_K.js +2 -0
- package/dist/client/assets/embed-entry-CG3CfCbm.js +2 -0
- package/dist/client/assets/embed-navigation-DayfkQau.js +1 -0
- package/dist/client/assets/{external-link-BvX5PfLh.js → external-link-RT4Ph-6-.js} +1 -1
- package/dist/client/assets/{eye-C9cGk5z6.js → eye-CtqSV8BS.js} +1 -1
- package/dist/client/assets/{file-code-corner-jlGFdr8d.js → file-code-corner-D_Aptal2.js} +1 -1
- package/dist/client/assets/{file-text-BHro8MkG.js → file-text-ChtICwub.js} +1 -1
- package/dist/client/assets/flag-CqdOxVkI.js +1 -0
- package/dist/client/assets/floor-character-name-CqJPOlXb.js +1 -0
- package/dist/client/assets/floor-context-model-DZBpo_oD.js +1 -0
- package/dist/client/assets/floor-context-sheet-BFnkFiY3.css +1 -0
- package/dist/client/assets/floor-memory-YMM8AlLY.js +1 -0
- package/dist/client/assets/floor-message-passes-CJh9f8Jp.js +1 -0
- package/dist/client/assets/floor-preview-text-HrORUJ7D.js +1 -0
- package/dist/client/assets/floor-replay-CccYqE-f.css +1 -0
- package/dist/client/assets/floor-tactical-hud-HL5Vja5Y.css +1 -0
- package/dist/client/assets/folder-0fWevPvQ.js +1 -0
- package/dist/client/assets/{gauge-DSflSery.js → gauge-Dgtfxf_o.js} +1 -1
- package/dist/client/assets/{gestures-YA5IIwp-.js → gestures-BDCZ1FRG.js} +1 -1
- package/dist/client/assets/{git-branch-Bc_eDIpG.js → git-branch-CA3cHKCI.js} +1 -1
- package/dist/client/assets/go-shortcuts-DKtw4qYx.js +1 -0
- package/dist/client/assets/home-moving-signal-B7m-ngb2.js +1 -0
- package/dist/client/assets/home-now-card-DduXkHRR.js +1 -0
- package/dist/client/assets/{home-now-card-nano-Jmy7eJ6H.js → home-now-card-nano-D1ScGrgv.js} +1 -1
- package/dist/client/assets/hooks-C6VyQTQe.js +2 -0
- package/dist/client/assets/{hooks-D6NI15f6.css → hooks-D787lBmm.css} +1 -1
- package/dist/client/assets/index-C5cX8dkl.js +1 -0
- package/dist/client/assets/{index-C1VaWNuD.js → index-C8uS5szO.js} +5 -5
- package/dist/client/assets/index-Ck1__1yL.css +1 -0
- package/dist/client/assets/index-ClOOrVG1.js +1 -0
- package/dist/client/assets/index-Crtgfc9I.js +1 -0
- package/dist/client/assets/index-CvsM3jm8.js +1 -0
- package/dist/client/assets/{inspector-panel-CwrHjRaQ.js → inspector-panel-BLhDODb3.js} +2 -2
- package/dist/client/assets/{keyboard-nav-B8sQ_8IF.js → keyboard-nav-CXfav14z.js} +1 -1
- package/dist/client/assets/knowledge-search-BNdQweGz.css +1 -0
- package/dist/client/assets/{lane-edit-display-C_Aujldz.js → lane-edit-display-BjdT9oZl.js} +1 -1
- package/dist/client/assets/{lane-observe-vfyACHi0.js → lane-observe-BD21P8BB.js} +2 -2
- package/dist/client/assets/lane-roster-store-DzNHP392.js +1 -0
- package/dist/client/assets/{lane-tool-detail-0WhMf4Vj.js → lane-tool-detail-Czggx8oM.js} +1 -1
- package/dist/client/assets/{layers-CW2-qHsG.js → layers-Bolb8ejU.js} +1 -1
- package/dist/client/assets/{layout-grid-BoVnPOk-.js → layout-grid-DI9tVJ2E.js} +1 -1
- package/dist/client/assets/left-B-_z_nqj.js +2 -0
- package/dist/client/assets/left-B1LY7rJc.js +1 -0
- package/dist/client/assets/{left-DH44V4I_.css → left-BV9yMiTL.css} +1 -1
- package/dist/client/assets/left-C6bdjWcG.js +2 -0
- package/dist/client/assets/left-CF4iuqlz.js +1 -0
- package/dist/client/assets/left-DLtNyZl1.js +1 -0
- package/dist/client/assets/left-Fpxoq-VY.js +1 -0
- package/dist/client/assets/left-N2wXfTlp.js +1 -0
- package/dist/client/assets/left-advisor-CeIjCKbd.js +1 -0
- package/dist/client/assets/left-agents-upjHVlOj.js +1 -0
- package/dist/client/assets/left-default-08gmdCtb.js +1 -0
- package/dist/client/assets/left-lanes-Cvsp73Hw.js +1 -0
- package/dist/client/assets/left-mission-DENnfshd.css +1 -0
- package/dist/client/assets/left-mission-W1LLaz74.js +1 -0
- package/dist/client/assets/library-DLKBVUJ6.js +1 -0
- package/dist/client/assets/{loader-circle-DmUG_YC7.js → loader-circle-DurUYl7E.js} +1 -1
- package/dist/client/assets/{local-agents-VP1-ZlPw.js → local-agents-D9fYYRyj.js} +1 -1
- package/dist/client/assets/machine-children-RGS4Q0r6.js +1 -0
- package/dist/client/assets/machine-scope-DJt9RZ2w.js +1 -0
- package/dist/client/assets/mentions-Ctw1ECUC.js +1 -0
- package/dist/client/assets/{mesh-ops-CKSWgax2.js → mesh-ops-CGpRk4ik.js} +1 -1
- package/dist/client/assets/{mesh-screen-D1Yvo8fU.css → mesh-screen-DjA4mOaN.css} +1 -1
- package/dist/client/assets/mesh-view-store-CliSYsmt.js +1 -0
- package/dist/client/assets/{message-circle-joGFxfj1.js → message-circle-CSiJj6yo.js} +1 -1
- package/dist/client/assets/{message-markup-DC0QFEZn.js → message-markup-DgFSyb3f.js} +1 -1
- package/dist/client/assets/{message-square-BLiFqpe_.js → message-square-NmXWtWLR.js} +1 -1
- package/dist/client/assets/{message-visibility-CGOmSSKs.js → message-visibility-DwxgcgYK.js} +1 -1
- package/dist/client/assets/mission-control-CsX3Yc58.css +1 -0
- package/dist/client/assets/mission-control-model-C30vU1Fe.js +1 -0
- package/dist/client/assets/mission-control-store-DZ29Mlj1.js +1 -0
- package/dist/client/assets/{mission-wall-CocIM1cF.js → mission-wall-DOuGOxQy.js} +1 -1
- package/dist/client/assets/nav-destinations-CyXnw9kh.js +1 -0
- package/dist/client/assets/observe-CkfOxYx_.js +1 -0
- package/dist/client/assets/{operator-attention-RqieiSY8.js → operator-attention-DGR4kOog.js} +1 -1
- package/dist/client/assets/ops-screen-CxYM0VOW.css +1 -0
- package/dist/client/assets/page-status-CkS3SZu-.js +1 -0
- package/dist/client/assets/panel-right-BNTJhy8M.js +1 -0
- package/dist/client/assets/pause-DWS7YGQ3.js +1 -0
- package/dist/client/assets/{persistent-state-BubPQ7tT.js → persistent-state-xsuk6Kc-.js} +1 -1
- package/dist/client/assets/pin-DWlD1BOF.js +1 -0
- package/dist/client/assets/pip-idle-v1-Tt-CZsRG.png +0 -0
- package/dist/client/assets/pip-thinking-v1-BoHWSEye.png +0 -0
- package/dist/client/assets/pip-waiting-v1-DkuvJ-dN.png +0 -0
- package/dist/client/assets/pip-working-v1-wWQLRS1z.png +0 -0
- package/dist/client/assets/play-D_Pggug4.js +1 -0
- package/dist/client/assets/{plus-BWKhylds.js → plus-D_wLGJGT.js} +1 -1
- package/dist/client/assets/profile-C3KgiZvc.js +1 -0
- package/dist/client/assets/{projects-inbox-DFbgVlXL.js → projects-inbox-DvbqJO3q.js} +1 -1
- package/dist/client/assets/{proxy-DVDRhSRR.js → proxy-DOG46ja4.js} +1 -1
- package/dist/client/assets/{radio-CxIXS1nU.js → radio-C_jtwbFP.js} +1 -1
- package/dist/client/assets/{refresh-cw-Bkh7Cvnd.js → refresh-cw-Da9DDLk2.js} +1 -1
- package/dist/client/assets/resolve-panes-DuowGRTk.js +1 -0
- package/dist/client/assets/resolve-sidebar-context-BkTbqteq.js +1 -0
- package/dist/client/assets/right-B9OUA6Ho.js +1 -0
- package/dist/client/assets/right-BDQnjetX.js +1 -0
- package/dist/client/assets/{right-DVUq5374.js → right-BLJsc2-p.js} +2 -2
- package/dist/client/assets/right-BUbKHmRH.js +1 -0
- package/dist/client/assets/right-Ci2IcD4s.js +1 -0
- package/dist/client/assets/right-CmCce3e5.js +1 -0
- package/dist/client/assets/right-D7w0zM5a.js +1 -0
- package/dist/client/assets/right-DIoON_bv.js +1 -0
- package/dist/client/assets/right-E0Jr3VN5.js +1 -0
- package/dist/client/assets/right-lCdAk9dW.js +1 -0
- package/dist/client/assets/{rocket-CnxqjX_K.js → rocket-DyrYDo8V.js} +1 -1
- package/dist/client/assets/router-BKiMcYa7.js +1 -0
- package/dist/client/assets/{runtime-picker-BYAFNLNq.css → runtime-picker-C3JwrDKP.css} +1 -1
- package/dist/client/assets/runtime-picker-DdsttHHc.js +1 -0
- package/dist/client/assets/{scope-views-KPY85UUx.js → scope-views-B7PZGlhY.js} +1 -1
- package/dist/client/assets/scout-voice-DOQ_B77g.js +1 -0
- package/dist/client/assets/{scoutbot-D7kGGyK_.js → scoutbot-Bk3nyrkj.js} +2 -2
- package/dist/client/assets/{scoutbot-markdown-yb87JlSE.js → scoutbot-markdown-Bz0Vbto2.js} +1 -1
- package/dist/client/assets/{scroll-text-DFcBYy5J.js → scroll-text-DwC8r2g6.js} +1 -1
- package/dist/client/assets/{search-FB2vVxCp.js → search-C4VlW_0l.js} +1 -1
- package/dist/client/assets/secondaryNavConfig-DAXIFtVd.js +1 -0
- package/dist/client/assets/{selection-bridge-qBGFCJv8.js → selection-bridge-B5jqyMR9.js} +1 -1
- package/dist/client/assets/{send-horizontal-CS7mxVhX.js → send-horizontal-pOtGI7FM.js} +1 -1
- package/dist/client/assets/send-to-agent-session-BZGq_ycy.js +1 -0
- package/dist/client/assets/{server-WY6gsbZz.js → server-ms1yxUYJ.js} +1 -1
- package/dist/client/assets/{session-catalog-CG4oL_yN.js → session-catalog-s-T_w41t.js} +1 -1
- package/dist/client/assets/{session-table-uJh3v-ly.js → session-table-CDx_16xf.js} +1 -1
- package/dist/client/assets/sessions-view-DzYGsKWS.js +1 -0
- package/dist/client/assets/{settings-DQEtqkM9.js → settings-TJIkkZ0P.js} +1 -1
- package/dist/client/assets/shared-work-artifacts-4IIQXQfc.js +1 -0
- package/dist/client/assets/{sliders-horizontal-57e99_qO.js → sliders-horizontal-CHf3ntw0.js} +1 -1
- package/dist/client/assets/solar-system-scope-2k-stars-points-1FwHnkj0.png +0 -0
- package/dist/client/assets/{sparkles-D0vWLTyC.js → sparkles-BbOFw3d0.js} +1 -1
- package/dist/client/assets/sprout-action-sprite-DZ8C0fTl.css +1 -0
- package/dist/client/assets/sprout-actions-proof-v1-BzUdc812.png +0 -0
- package/dist/client/assets/{sse-B29iGBnw.js → sse-v5QLsOHV.js} +1 -1
- package/dist/client/assets/system-surfaces-redesign-DKFg4GB5.css +1 -0
- package/dist/client/assets/{tail-display-DcliDVkW.js → tail-display-DHSNmvor.js} +2 -2
- package/dist/client/assets/{tail-events-LK29oCKm.js → tail-events-DQ46QBW1.js} +1 -1
- package/dist/client/assets/{terminal-UDy4lzV1.js → terminal-96JWDYDL.js} +1 -1
- package/dist/client/assets/{terminal-relay-CXHMdain.js → terminal-relay-Bfx8pg80.js} +1 -1
- package/dist/client/assets/terminal-screen-Bpb2SZrn.css +1 -0
- package/dist/client/assets/{terminal-sessions-Bdt2W3Y4.js → terminal-sessions-Ch9aYlgi.js} +1 -1
- package/dist/client/assets/{terminal-takeover-BMeBjBB2.js → terminal-takeover-BlpxpvSp.js} +1 -1
- package/dist/client/assets/use-beside-Df-F2Uvg.js +1 -0
- package/dist/client/assets/use-conversation-list-A_YUf8lo.js +1 -0
- package/dist/client/assets/{use-fleet-active-asks-CCGrll5q.js → use-fleet-active-asks-DFs_u-vM.js} +1 -1
- package/dist/client/assets/use-mesh-node-state-Ck9CYplv.js +1 -0
- package/dist/client/assets/{use-mesh-ops-items-BjyeFJTz.js → use-mesh-ops-items-Be1WmwCg.js} +1 -1
- package/dist/client/assets/{use-reduced-motion-CPoX8iV2.js → use-reduced-motion-D7n3vK8t.js} +1 -1
- package/dist/client/assets/use-scout-dev-flags-0TXfQcG0.js +1 -0
- package/dist/client/assets/{useAgentHoverCard-BgTLNcF-.js → useAgentHoverCard-Dr-OjNFF.js} +1 -1
- package/dist/client/assets/useContentSecondaryNav-CGvMOVGY.js +1 -0
- package/dist/client/assets/{useEmbedHeadline-DuUnwTB7.js → useEmbedHeadline-BL8wQawZ.js} +1 -1
- package/dist/client/assets/{usePierreRuntime-35AHf9RQ.js → usePierreRuntime-DJkRHMoe.js} +1 -1
- package/dist/client/assets/worker-rendered-v1-DmGVMlVi.png +0 -0
- package/dist/client/assets/worker-thinking-v1-ujakpzrK.png +0 -0
- package/dist/client/assets/worker-waiting-v1-DbTSsfJJ.png +0 -0
- package/dist/client/assets/worker-working-v1-BROAvJ_z.png +0 -0
- package/dist/client/assets/world-outposts-v1-DOt0i98W.png +0 -0
- package/dist/client/assets/{wrench-BfVeded5.js → wrench-BsMTSeji.js} +1 -1
- package/dist/client/assets/{x-DgmmnPKt.js → x-DI1ktCYb.js} +1 -1
- package/dist/client/assets/{xterm-DnJJmrCA.js → xterm-B1YBE4Gq.js} +1 -1
- package/dist/client/assets/{zap-Bcja1lHG.js → zap-sKPkh4sQ.js} +1 -1
- package/dist/client/characters/sage/sage.glb +0 -0
- package/dist/client/crew/brik-bust.webp +0 -0
- package/dist/client/crew/brik-chip-id.webp +0 -0
- package/dist/client/crew/fenn-bust.webp +0 -0
- package/dist/client/crew/fenn-chip-id.webp +0 -0
- package/dist/client/crew/lulu-bust.webp +0 -0
- package/dist/client/crew/milo-bust.webp +0 -0
- package/dist/client/crew/milo-chip-id.webp +0 -0
- package/dist/client/crew/nori-bust.webp +0 -0
- package/dist/client/crew/pip-bust.webp +0 -0
- package/dist/client/crew/pip-chip-id.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/blink-half.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/blink-shut.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/look-left.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/look-right.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/look-up.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/rest.webp +0 -0
- package/dist/client/crew/sheets/sprout/blink-half.webp +0 -0
- package/dist/client/crew/sheets/sprout/blink-shut.webp +0 -0
- package/dist/client/crew/sheets/sprout/look-left.webp +0 -0
- package/dist/client/crew/sheets/sprout/look-right.webp +0 -0
- package/dist/client/crew/sheets/sprout/look-up.webp +0 -0
- package/dist/client/crew/sprout-bust.webp +0 -0
- package/dist/client/crew/sprout-chip-id.webp +0 -0
- package/dist/client/crew/tuck-bust.webp +0 -0
- package/dist/client/crew/tuck-chip-id.webp +0 -0
- package/dist/client/crew/vex-bust.webp +0 -0
- package/dist/client/crew/vex-chip-id.webp +0 -0
- package/dist/client/crew/wrench-bust.webp +0 -0
- package/dist/client/crew/wrench-chip-id.webp +0 -0
- package/dist/client/index.html +2 -2
- package/dist/drizzle/0017_wise_silver_sable.sql +26 -0
- package/dist/drizzle/0018_message_epoch_order.sql +1 -0
- package/dist/drizzle/meta/0017_snapshot.json +6785 -0
- package/dist/drizzle/meta/0018_snapshot.json +6804 -0
- package/dist/drizzle/meta/_journal.json +14 -0
- package/dist/main.mjs +26906 -24284
- package/dist/node/main.mjs +7077 -6284
- package/dist/openscout-terminal-relay.mjs +391 -9
- package/dist/pairing-runtime-controller.mjs +35541 -34446
- package/dist/runtime/base-daemon.mjs +31 -8
- package/dist/runtime/broker-daemon.mjs +7864 -2578
- package/dist/runtime/broker-process-manager.mjs +15 -3
- package/dist/runtime/mesh-discover.mjs +14 -3
- package/dist/scout-control-plane-web.mjs +37053 -33186
- package/dist/statusline.mjs +1021 -35
- package/dist/update-helper.mjs +32169 -0
- package/package.json +2 -2
- package/dist/client/assets/ActivityScreen-sfonf5SR.js +0 -1
- package/dist/client/assets/AgentAvatar-Dz79iTxB.js +0 -1
- package/dist/client/assets/AgentConfigurationScreen-DDc3udYM.js +0 -1
- package/dist/client/assets/AgentDefinitionsWorkspace-DHDS9Pgd.js +0 -1
- package/dist/client/assets/AgentDetailCard-8viaEY8b.js +0 -1
- package/dist/client/assets/AgentFloorView-DuyvyMMj.js +0 -1
- package/dist/client/assets/AgentInfoScreen-qntgg2q2.js +0 -1
- package/dist/client/assets/AgentLanesEmbedScreen-BA6fRwkD.js +0 -1
- package/dist/client/assets/AgentLanesView-96lHsoX7.js +0 -2
- package/dist/client/assets/AgentLiveActions-DlSKL60c.js +0 -1
- package/dist/client/assets/AgentMasterScreen-DHrMuQ6_.js +0 -1
- package/dist/client/assets/AgentSessions-DV9v34aq.js +0 -6
- package/dist/client/assets/AgentsConsole-DTpVhS67.js +0 -1
- package/dist/client/assets/AgentsScreen-hZ4o2I-e.js +0 -1
- package/dist/client/assets/AgentsSubnav-Ci7uWM7P.js +0 -1
- package/dist/client/assets/AtopView-D7vyQDtE.js +0 -1
- package/dist/client/assets/BackToPicker-BHicJyfc.js +0 -1
- package/dist/client/assets/BriefingDetailScreen-B-wD_Bot.js +0 -1
- package/dist/client/assets/BriefingsScreen-Cn4Mbam9.js +0 -1
- package/dist/client/assets/BrokerScreen-C8FQ5rlg.js +0 -5
- package/dist/client/assets/ChatCollapsedStrip-7Wrg8Ge0.js +0 -1
- package/dist/client/assets/CodeScreen-cLC0tJ4S.js +0 -1
- package/dist/client/assets/ConversationFeedRows-Bx0gFyG_.js +0 -1
- package/dist/client/assets/ConversationHeader-Bt2RBj93.js +0 -1
- package/dist/client/assets/ConversationPanels-o6W-cOoU.js +0 -6
- package/dist/client/assets/ConversationScreen-CkWnKXt6.css +0 -1
- package/dist/client/assets/ConversationScreen-DIU7m_aC.js +0 -2
- package/dist/client/assets/ConversationStatus-CTYOywFh.js +0 -1
- package/dist/client/assets/CrewWorkspaces-DNX-QQ1h.js +0 -1
- package/dist/client/assets/DispatchAftermath-ZCEB75hh.js +0 -1
- package/dist/client/assets/DocumentFocusViewer-D8iB6SMt.js +0 -1
- package/dist/client/assets/FlightObserveScreen-BTe1YRPr.js +0 -1
- package/dist/client/assets/FollowScreen-CkR-okdL.js +0 -1
- package/dist/client/assets/HarnessesScreen-COO_Q8VY.js +0 -1
- package/dist/client/assets/HostAdvisorView-DeJ-8RZV.js +0 -1
- package/dist/client/assets/KnowledgeSearchInspector-W_zNIBRV.js +0 -1
- package/dist/client/assets/KnowledgeSearchScreen-_rxJNUUh.js +0 -1
- package/dist/client/assets/LaneTraceDetailSheet-DNIECgEl.js +0 -1
- package/dist/client/assets/MeshCanvas-DZv2ipsy.js +0 -3
- package/dist/client/assets/MeshCanvasMinimap-BXHRNb7l.js +0 -1
- package/dist/client/assets/MeshScreen-DuNvpDC5.js +0 -1
- package/dist/client/assets/MessagesScreen-dNNPFwAc.js +0 -1
- package/dist/client/assets/MissionContextRail-DnCWPzAM.js +0 -1
- package/dist/client/assets/MissionControlView-DmaThhNR.js +0 -1
- package/dist/client/assets/MissionFocusOverlay-K21ssTxv.js +0 -1
- package/dist/client/assets/MissionLeftAgentRow-CbQm4BLv.js +0 -1
- package/dist/client/assets/MissionLogPane-BLvSSIdT.js +0 -1
- package/dist/client/assets/NewAgentModal-B7qxjZlW.js +0 -1
- package/dist/client/assets/NewChatComposer-D2Ah4T-W.js +0 -19
- package/dist/client/assets/ObserveEmbedScreen-DvKGsaLv.js +0 -2
- package/dist/client/assets/OpenScoutAppShell-C9TOLB7u.js +0 -79
- package/dist/client/assets/OpsAgentsView-vIoY-AW1.js +0 -1
- package/dist/client/assets/OpsScreen-CJBwshEp.js +0 -1
- package/dist/client/assets/OpsSubnav-CjDTnp64.js +0 -1
- package/dist/client/assets/ProjectAgentProfile-Br1eTD7G.js +0 -1
- package/dist/client/assets/ProjectAgentProfileHero-mjxNcRvw.js +0 -1
- package/dist/client/assets/ProjectsInbox-Bq29DE_o.js +0 -2
- package/dist/client/assets/ProjectsRail-kMDA0yn4.js +0 -1
- package/dist/client/assets/ProjectsScreen-BDaJYhc0.js +0 -1
- package/dist/client/assets/ProjectsThreadAside-B940p3vW.js +0 -1
- package/dist/client/assets/Provider-D0bB7q6y.js +0 -1
- package/dist/client/assets/RailRow-B88JVr62.js +0 -1
- package/dist/client/assets/RawSessionsTable-CzGhEdiZ.js +0 -1
- package/dist/client/assets/RealtimeVoiceScreen-CyP1CWsX.js +0 -1
- package/dist/client/assets/RepoDiffViewer-Bw5yMC4A.js +0 -7
- package/dist/client/assets/RepoDiffViewerLazy-DzfoFhbl.js +0 -2
- package/dist/client/assets/ScoutDeckSurface-DQoZofzH.js +0 -1
- package/dist/client/assets/SessionEmbedScreen-CpduQ0O9.js +0 -1
- package/dist/client/assets/SessionObserve-BVeTkcIl.js +0 -12
- package/dist/client/assets/SessionObserveEvidence-BkOezTGV.js +0 -1
- package/dist/client/assets/SessionRefScreen-DetLMkTT.js +0 -1
- package/dist/client/assets/SessionsScreen-B-McKw6d.js +0 -1
- package/dist/client/assets/SettingsDrawer-CPB32w0n.js +0 -3
- package/dist/client/assets/SettingsScreen-BEzYFdjz.js +0 -1
- package/dist/client/assets/SpriteAvatar-DFO4Kb4Z.js +0 -1
- package/dist/client/assets/Terminal-DWyZTZdY.js +0 -1
- package/dist/client/assets/TerminalEmbedScreen-_SSzwhWa.js +0 -1
- package/dist/client/assets/TerminalHeaderMount-CY7uIWBg.js +0 -1
- package/dist/client/assets/WorkFilesViewer-D8-4vF5l.js +0 -1
- package/dist/client/assets/agent-autocomplete-BlK8wY06.js +0 -10
- package/dist/client/assets/agent-lane-card-model-CY3OE1Xu.js +0 -1
- package/dist/client/assets/agent-lanes-model-tc-1hE6q.js +0 -2
- package/dist/client/assets/agent-master-I1W-5d-x.css +0 -1
- package/dist/client/assets/agent-master-model-DMcHeNq3.js +0 -1
- package/dist/client/assets/api-Co9aQ2Jw.js +0 -1
- package/dist/client/assets/broker-display-Q75fupqG.js +0 -2
- package/dist/client/assets/chunk-JTPDIGGW-COJ00z94.js +0 -46
- package/dist/client/assets/chunk-YOZR3KYS-CrCgXw9l.js +0 -2
- package/dist/client/assets/colors-BtO5_zlx.js +0 -1
- package/dist/client/assets/content-0RBfbCIJ.js +0 -1
- package/dist/client/assets/content-BTmnk2bl.js +0 -1
- package/dist/client/assets/content-Bk5DKhyP.js +0 -1
- package/dist/client/assets/content-Bw_8GE_S.js +0 -1
- package/dist/client/assets/content-CI4gLEWi.js +0 -1
- package/dist/client/assets/content-CLCtp9Rb.js +0 -1
- package/dist/client/assets/content-C_FAGTNk.js +0 -1
- package/dist/client/assets/content-CnnzWOE3.js +0 -1
- package/dist/client/assets/content-DKlY98pO.js +0 -1
- package/dist/client/assets/content-Df7ndXTG.js +0 -1
- package/dist/client/assets/content-DkZDzzx3.js +0 -1
- package/dist/client/assets/content-DnGmb2L0.js +0 -1
- package/dist/client/assets/content-Ds-zs-Ss.js +0 -1
- package/dist/client/assets/content-JIWSyC0f.js +0 -1
- package/dist/client/assets/content-Q3TIYC8q.js +0 -1
- package/dist/client/assets/content-evaBfvxD.js +0 -1
- package/dist/client/assets/conversation-model-C2KuZUXc.js +0 -1
- package/dist/client/assets/conversation-motion-features-BJnHs3Ul.js +0 -1
- package/dist/client/assets/discover-DutlV0ZU.js +0 -2
- package/dist/client/assets/embed-entry-CJG7WEVw.js +0 -2
- package/dist/client/assets/home-moving-signal-PHSqSBu_.js +0 -1
- package/dist/client/assets/home-now-card-C_qsI6C6.js +0 -1
- package/dist/client/assets/hooks-ME7rmhpE.js +0 -2
- package/dist/client/assets/index-C8UCRm2W.js +0 -1
- package/dist/client/assets/index-Cn0I2Hgi.js +0 -1
- package/dist/client/assets/index-Cx6Gbr6n.js +0 -1
- package/dist/client/assets/index-i7TMxlwW.css +0 -1
- package/dist/client/assets/knowledge-search-D_bLoYtC.css +0 -1
- package/dist/client/assets/lane-roster-store-DN2jxXF-.js +0 -1
- package/dist/client/assets/left-BRu9pnqx.js +0 -2
- package/dist/client/assets/left-BjS1dKNV.js +0 -2
- package/dist/client/assets/left-CL-TVLJ7.js +0 -1
- package/dist/client/assets/left-DLpsDi55.js +0 -1
- package/dist/client/assets/left-DPcM9o8Y.js +0 -1
- package/dist/client/assets/left-MmTJf1tK.js +0 -1
- package/dist/client/assets/left-P80i5V8L.js +0 -1
- package/dist/client/assets/left-advisor-CbXVzAqS.js +0 -1
- package/dist/client/assets/left-agents-7mJsiNyr.js +0 -1
- package/dist/client/assets/left-default-COK26l3H.js +0 -1
- package/dist/client/assets/left-lanes-Dbdm9Veu.js +0 -1
- package/dist/client/assets/left-mission-DSenPIyb.css +0 -1
- package/dist/client/assets/left-mission-DqGR5jby.js +0 -1
- package/dist/client/assets/library-COnWzUWv.js +0 -1
- package/dist/client/assets/mentions-BZ5SBMtc.js +0 -1
- package/dist/client/assets/mesh-buckets-CLYS8Jx8.js +0 -1
- package/dist/client/assets/mesh-view-store-CBM1za_N.js +0 -1
- package/dist/client/assets/mission-control-CnU7dNt1.css +0 -1
- package/dist/client/assets/mission-control-model-C0fByIjm.js +0 -1
- package/dist/client/assets/mission-control-store-CM8mQGg8.js +0 -1
- package/dist/client/assets/observe-BLmy4quB.js +0 -1
- package/dist/client/assets/ops-screen-giu3If_N.css +0 -1
- package/dist/client/assets/page-status-BE0-J1xY.js +0 -1
- package/dist/client/assets/paperclip-Br7wUDFl.js +0 -1
- package/dist/client/assets/perf-PX8Rx0EP.js +0 -1
- package/dist/client/assets/profile-BCvk8jOQ.js +0 -1
- package/dist/client/assets/resolve-panes-DhD5qmQO.js +0 -1
- package/dist/client/assets/resolve-sidebar-context-GqhZNRPY.js +0 -1
- package/dist/client/assets/right-B_08ilv6.js +0 -1
- package/dist/client/assets/right-Brm67HOL.js +0 -1
- package/dist/client/assets/right-BveAPKBW.js +0 -1
- package/dist/client/assets/right-CpTB_-Ya.js +0 -1
- package/dist/client/assets/right-CqC4Qdot.js +0 -1
- package/dist/client/assets/right-D91j9d5Y.js +0 -1
- package/dist/client/assets/right-DaLRhYl3.js +0 -1
- package/dist/client/assets/right-Dt1wOwA5.js +0 -1
- package/dist/client/assets/right-DtzqIZQF.js +0 -1
- package/dist/client/assets/router-kfcaYqZr.js +0 -1
- package/dist/client/assets/runtime-picker-C20lTGhV.js +0 -1
- package/dist/client/assets/scout-voice-Cg1qfepC.js +0 -1
- package/dist/client/assets/secondaryNavConfig-C0Srrmy8.js +0 -1
- package/dist/client/assets/system-surfaces-redesign-kuf3wuE_.css +0 -1
- package/dist/client/assets/terminal-screen-vMICbBJh.css +0 -1
- package/dist/client/assets/use-conversation-list-UG-tMN67.js +0 -1
- package/dist/client/assets/use-scout-dev-flags-DTseRrFi.js +0 -1
- package/dist/client/assets/useContentSecondaryNav-CoIoz7JU.js +0 -1
package/dist/client/assets/{AgentLaneDetailSheet-CGqtqSHQ.js → AgentLaneDetailSheet-KYckCBCX.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as i,j as e}from"./index-C1VaWNuD.js";import{S as qe}from"./SlidePanel-CETQ5NTx.js";import{a as me}from"./api-Co9aQ2Jw.js";import{A as Ge}from"./AgentAvatar-Dz79iTxB.js";import{H as Je}from"./HarnessMark-DttReffF.js";import{t as de}from"./time-Dhsh_2EG.js";import{h as Ke}from"./tail-display-DcliDVkW.js";import{a as Ve}from"./colors-BtO5_zlx.js";import{c as Q}from"./clipboard-e3fSpeo7.js";import{d as Qe,c as Ue}from"./context-budget-DqxWzalx.js";import{Q as Xe}from"./router-kfcaYqZr.js";import{u as Ye}from"./Provider-D0bB7q6y.js";import{s as Ze,t as es,b as ss}from"./bash-format-BRV5C6Gv.js";import{i as as}from"./keyboard-nav-B8sQ_8IF.js";import{o as ie}from"./openContent-C6XO6kr5.js";import{b as ts,f as Ie}from"./agent-lane-preview-BhplDYGf.js";import{i as ns}from"./synthetic-agent-routing-aduMYO7P.js";import{b as $e,c as ls,a as is,l as cs,r as rs,d as os}from"./agent-lane-detail-ppJId6Jc.js";import{l as ds,a as hs,s as us}from"./agent-lanes-model-tc-1hE6q.js";import{E as pe}from"./external-link-BvX5PfLh.js";async function ms(s){return me("/api/session-control/compact",{method:"POST",body:JSON.stringify(s)})}function Te(s){return ns(s.id)}function ps(s){return $e(s).sessionId?.trim()||null}function Pe(s){const t=ps(s);if(!t)return null;const c=Te(s.agent)?void 0:s.agent.id;return{view:"sessions",sessionId:t,...c?{agentId:c}:{}}}function fs(s){return Pe(s)}function xs(s){return Te(s.agent)?null:{view:"agents-v2",agentId:s.agent.id,tab:"profile"}}const js={created:"+",modified:"~",read:"○"},gs={blocked:"blocked",completed:"done",in_progress:"active",pending:"todo",unknown:"step"},Ae=["s-lane-sheet-vitals","s-lane-sheet-runtime","s-lane-sheet-files","s-lane-sheet-commands","s-lane-sheet-plans","s-lane-sheet-docs"];function he(s){return!!(s&&Ae.includes(s))}function vs(){if(typeof window>"u")return null;const s=window.location.hash.replace(/^#/,"");return he(s)?s:null}function ce(s){return typeof s!="number"||!Number.isFinite(s)?"—":s.toLocaleString()}function Ns(s){return s>=1e6?`${(s/1e6).toFixed(1)}M`:s>=1e3?`${(s/1e3).toFixed(s>=1e5?0:1)}k`:`${s}`}function bs(s){const t=s.lastIndexOf("/");return t<0?{dir:"",base:s}:{dir:s.slice(0,t+1),base:s.slice(t+1)}}function ws(s,t){const c=new Map;for(const l of t?.events??[]){if(l.kind!=="tool"||!l.diff||!l.arg)continue;const r=l.arg.trim().split(/[\\/]/).filter(Boolean).pop();if(!r)continue;const u=c.get(r)??{add:0,del:0};u.add+=l.diff.add??0,u.del+=l.diff.del??0,c.set(r,u)}return s.map(l=>{const r=l.path.split(/[\\/]/).filter(Boolean).pop()??l.path,u=c.get(r);return{...l,add:u?.add??0,del:u?.del??0}})}function re(s,t=48){return s?s.length<=t?s:`…${s.slice(-(t-1))}`:"—"}async function ks(s){await me("/api/local-path/reveal",{method:"POST",body:JSON.stringify({path:s.path,...s.basePath?{basePath:s.basePath}:{},...s.agentId?{agentId:s.agentId}:{},...s.sessionId?{sessionId:s.sessionId}:{}})})}function ue(s,t){return s.startsWith("/")||s.startsWith("~/")?s:t?`${t.replace(/\/$/u,"")}/${s}`:s}function U({value:s,label:t}){const[c,l]=i.useState(!1),r=i.useRef(null);i.useEffect(()=>()=>{r.current&&clearTimeout(r.current)},[]);const u=i.useCallback(m=>{m.preventDefault(),m.stopPropagation(),Q(s).then(d=>{d&&(l(!0),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>l(!1),1100))})},[s]);return e.jsx("button",{type:"button",className:`s-lane-sheet-copy${c?" s-lane-sheet-copy--done":""}`,onClick:u,title:c?"Copied":`Copy ${t}`,"aria-label":c?`Copied ${t}`:`Copy ${t}`,children:c?e.jsx("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",children:e.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"})}):e.jsxs("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",children:[e.jsx("rect",{x:"3.4",y:"3.4",width:"5.8",height:"5.8",rx:"1.3",fill:"none",stroke:"currentColor",strokeWidth:"1"}),e.jsx("path",{d:"M2.4 7.2V2.8c0-.4.3-.7.7-.7h4",fill:"none",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"})]})})}function De({path:s,basePath:t,agentId:c,sessionId:l,label:r}){return e.jsx("button",{type:"button",className:"s-lane-sheet-reveal",title:`Reveal ${r} in OS`,"aria-label":`Reveal ${r} in OS`,onClick:u=>{u.preventDefault(),u.stopPropagation(),ks({path:s,basePath:t,agentId:c,sessionId:l}).catch(m=>console.warn("Failed to reveal local path",m))},children:e.jsx(pe,{size:11,strokeWidth:1.6})})}function V({id:s,label:t,count:c,actions:l}){return e.jsxs("div",{className:"s-lane-sheet-sechead",id:s,children:[e.jsx("span",{className:"s-lane-sheet-sechead-label",children:t}),c!=null&&c!==!1&&e.jsx("span",{className:"s-lane-sheet-sechead-count",children:c}),e.jsx("span",{className:"s-lane-sheet-sechead-rule","aria-hidden":"true"}),l&&e.jsx("span",{className:"s-lane-sheet-sechead-actions",children:l})]})}function C({children:s,onClick:t,primary:c=!1,disabled:l=!1}){return e.jsx("button",{type:"button",className:`s-lane-sheet-ghost${c?" s-lane-sheet-ghost--primary":""}`,onClick:t,disabled:l,children:s})}function L({label:s,value:t,title:c,copy:l,reveal:r}){return e.jsxs("div",{className:"s-lane-sheet-meta-row",children:[e.jsx("dt",{children:s}),e.jsxs("dd",{className:"s-lane-sheet-fact",children:[e.jsx("span",{className:"s-lane-sheet-fact-val",title:c??t,children:t}),r&&e.jsx(De,{...r,label:s}),l&&e.jsx(U,{value:l,label:s})]})]})}function oe({file:s,basePath:t,agentId:c,sessionId:l,onOpen:r}){const u=Ie(s),m=s.path,d=ue(m,t),{dir:b,base:B}=bs(m),$=s.add>0||s.del>0;return e.jsxs("div",{className:"s-lane-sheet-frow",title:m,children:[e.jsx("span",{className:`s-lane-sheet-fstate s-lane-sheet-fstate--${s.state}`,"aria-hidden":"true",children:js[s.state]??"○"}),e.jsxs("span",{className:"s-lane-sheet-fpath",children:[b&&e.jsx("span",{className:"s-lane-sheet-fdir",children:b}),e.jsx("span",{className:"s-lane-sheet-fbase",children:B})]}),$&&e.jsxs("span",{className:"s-lane-sheet-fdiff",children:[s.add>0&&e.jsxs("span",{className:"s-lane-sheet-file-add",children:["+",s.add]}),s.del>0&&e.jsxs("span",{className:"s-lane-sheet-file-del",children:["−",s.del]})]}),e.jsxs("span",{className:"s-lane-sheet-frow-acts",children:[e.jsx("button",{type:"button",className:"s-lane-sheet-rowact",title:`Open ${u} in diff`,"aria-label":`Open ${u} in diff`,onClick:()=>r(d),children:e.jsx(pe,{size:11,strokeWidth:1.6})}),e.jsx(De,{path:m,basePath:t,agentId:c,sessionId:l,label:u}),e.jsx(U,{value:m,label:"file path"})]})]})}function ys({entry:s}){const{dir:t,rest:c}=Ze(es(s.command)),l=ss(c||s.command);return e.jsxs("div",{className:"s-lane-sheet-crow",title:s.command,children:[e.jsx("span",{className:"s-lane-sheet-cmark","aria-hidden":"true",children:"❯"}),e.jsxs("span",{className:"s-lane-sheet-ctext",children:[t&&e.jsxs("span",{className:"s-lane-sheet-bash-dir",children:[t,"/"]}),l.map((r,u)=>e.jsxs("span",{className:`s-lane-sheet-bash-${r.tier}${r.known?" s-lane-sheet-bash-prog--known":""}${r.flag?" s-lane-sheet-bash-flag":""}`,children:[u>0?" ":"",r.text]},u))]}),s.outcome&&e.jsx("span",{className:"s-lane-sheet-cresult",children:s.outcome}),e.jsx("span",{className:"s-lane-sheet-crow-acts",children:e.jsx(U,{value:s.command,label:"command"})})]})}function Le({label:s,hint:t,children:c}){const[l,r]=i.useState(!1);return e.jsxs("div",{className:`s-lane-sheet-disc${l?" s-lane-sheet-disc--open":""}`,children:[e.jsxs("button",{type:"button",className:"s-lane-sheet-disc-head","aria-expanded":l,onClick:()=>r(u=>!u),children:[e.jsx("span",{className:`s-lane-sheet-disc-caret${l?" s-lane-sheet-disc-caret--open":""}`,"aria-hidden":"true",children:"›"}),e.jsx("span",{className:"s-lane-sheet-disc-label",children:s}),t!=null&&t!==!1&&e.jsx("span",{className:"s-lane-sheet-disc-hint",children:t})]}),l&&e.jsx("div",{className:"s-lane-sheet-disc-body",children:c})]})}function Cs({plan:s,onOpen:t}){const[c,l]=i.useState(!1),r=s.steps.filter(m=>m.status==="completed").length,u=s.steps.find(m=>m.status==="in_progress");return e.jsxs("div",{className:`s-lane-sheet-plan${c?" s-lane-sheet-plan--open":""}`,children:[e.jsxs("button",{type:"button",className:"s-lane-sheet-plan-head","aria-expanded":c,onClick:()=>l(m=>!m),children:[e.jsx("span",{className:`s-lane-sheet-plan-caret${c?" s-lane-sheet-plan-caret--open":""}`,"aria-hidden":"true",children:"›"}),e.jsx("span",{className:"s-lane-sheet-plan-title",title:s.title,children:s.title}),e.jsxs("span",{className:"s-lane-sheet-plan-tally",children:[r,"/",s.steps.length]})]}),!c&&u&&e.jsxs("div",{className:"s-lane-sheet-plan-now",title:u.text,children:[e.jsx("span",{className:"s-lane-sheet-plan-now-mark","aria-hidden":"true",children:"▸"}),e.jsx("span",{className:"s-lane-sheet-plan-now-text",children:u.text})]}),c&&e.jsxs("div",{className:"s-lane-sheet-plan-steps",children:[s.steps.map(m=>e.jsxs("div",{className:`s-lane-sheet-pstep s-lane-sheet-pstep--${m.status}`,children:[e.jsx("span",{className:"s-lane-sheet-pstep-box","aria-hidden":"true",children:m.status==="completed"?"✓":m.status==="in_progress"?"▸":"○"}),e.jsx("span",{className:"s-lane-sheet-pstep-text",children:m.text})]},m.id)),e.jsx("div",{className:"s-lane-sheet-plan-foot",children:e.jsx(C,{onClick:t,children:"Open in Plans →"})})]})]})}function Ss({document:s,expanded:t,onToggle:c,onOpen:l}){const r=os(s),u=s.steps.length>0;return e.jsxs("article",{className:"s-lane-sheet-doc",children:[e.jsxs("button",{type:"button",className:"s-lane-sheet-doc-head","aria-expanded":t,onClick:c,children:[e.jsx("span",{className:"s-lane-sheet-doc-title",children:s.title}),e.jsxs("span",{className:"s-lane-sheet-doc-meta",children:[u?`${s.steps.length} steps`:Ie(s.path)," · ",de(s.updatedAt)]}),!t&&r&&e.jsx("span",{className:"s-lane-sheet-doc-excerpt",children:r})]}),t&&e.jsxs("div",{className:"s-lane-sheet-doc-body",children:[s.summary&&e.jsx("p",{className:"s-lane-sheet-doc-summary",children:s.summary}),u&&s.steps.length>0&&e.jsx("ol",{className:"s-lane-sheet-doc-steps",children:s.steps.map(m=>e.jsxs("li",{className:`s-lane-sheet-doc-step s-lane-sheet-doc-step--${m.status}`,children:[e.jsx("span",{className:"s-lane-sheet-doc-step-state",children:gs[m.status]}),e.jsx("span",{className:"s-lane-sheet-doc-step-text",children:m.text})]},m.id))}),(s.body||s.rawText)&&e.jsx("pre",{className:"s-lane-sheet-doc-pre",children:s.body||s.rawText}),e.jsx("button",{type:"button",className:"s-lane-sheet-doc-open",onClick:l,children:"Open in Plans"})]})]})}function Ls({lane:s,navigate:t,returnRoute:c,onClose:l,navigationEnabled:r=!0,onPinProject:u,projectPinned:m=!1}){const{agent:d,observe:b,source:B,lastActiveAt:$}=s,{openFilePreview:A}=Ye(),X=i.useMemo(()=>Ve(d.state??null,d),[d]),w=i.useMemo(()=>ts(b,d,{isLive:X}),[b,d,X]),[D,Y]=i.useState(!1),[O,fe]=i.useState([]),[F,xe]=i.useState([]),[Oe,Fe]=i.useState(null),[_,Ee]=i.useState(!1),[Re,je]=i.useState(!1),[z,ge]=i.useState(!1),[ve,Z]=i.useState(null),[x,ee]=i.useState("s-lane-sheet-vitals"),E=i.useRef(null),se=i.useRef(null);i.useEffect(()=>()=>{E.current&&clearTimeout(E.current)},[]);const Ne=i.useCallback(a=>{typeof window>"u"||window.location.hash!==`#${a}`&&Xe({hash:a,replace:!1})},[]),W=i.useCallback(a=>{const h=se.current,f=h?.querySelector(`#${a}`);if(!h||!f)return!1;const g=h.getBoundingClientRect().top,y=f.getBoundingClientRect().top;return h.scrollTop=Math.max(0,h.scrollTop+y-g),ee(a),!0},[]),T=i.useCallback((a,h)=>{a.preventDefault(),W(h)&&Ne(h)},[W,Ne]),H=ds(d,B),Me=hs(d,B),n=i.useMemo(()=>$e(s),[s]),o=s.facts,I=o?.turn?.phase?o.turn.phase==="started":X,ae=ls(s),p=i.useMemo(()=>{const a=o?.touchedFiles.length?o.touchedFiles:is(b,1/0),h=ws(a,b),f=h.filter(v=>v.state==="created"),g=h.filter(v=>v.state==="modified"),y=h.filter(v=>v.state==="read"),M=[...f,...g];return{created:f,modified:g,read:y,changed:M,totalAdd:M.reduce((v,N)=>v+N.add,0),totalDel:M.reduce((v,N)=>v+N.del,0)}},[o,b]),q=p.changed.length+p.read.length,S=i.useMemo(()=>cs(b),[b]),te=i.useMemo(()=>p.changed.map(a=>ue(a.path,n.cwd)).join(`
|
|
1
|
+
import{r as i,j as e}from"./index-C8uS5szO.js";import{S as qe}from"./SlidePanel-Datu7XG4.js";import{a as me}from"./api-CaROe5_H.js";import{A as Ge}from"./AgentAvatar-BIwg54Tj.js";import{H as Je}from"./HarnessMark-Bt47OeHy.js";import{t as de}from"./time-Dhsh_2EG.js";import{h as Ke}from"./tail-display-DHSNmvor.js";import{a as Ve}from"./agent-state-DDhnFEEP.js";import{c as U}from"./clipboard-e3fSpeo7.js";import{d as Ue,c as Qe}from"./context-budget-DemtXu7E.js";import{d as Xe}from"./router-BKiMcYa7.js";import{u as Ye}from"./Provider-5Hotn7NQ.js";import{s as Ze,t as es,b as ss}from"./bash-format-BRV5C6Gv.js";import{i as as}from"./keyboard-nav-CXfav14z.js";import{o as ie}from"./openContent-C6XO6kr5.js";import{b as ts,f as Ie}from"./agent-lane-preview-B8lsQJOQ.js";import{i as ns}from"./synthetic-agent-routing-aduMYO7P.js";import{b as $e,c as ls,a as is,l as cs,r as rs,d as os}from"./agent-lane-detail-Db7KyAlf.js";import{l as ds,a as hs,s as us}from"./agent-lanes-model-CX0wTcnF.js";import{E as pe}from"./external-link-RT4Ph-6-.js";async function ms(s){return me("/api/session-control/compact",{method:"POST",body:JSON.stringify(s)})}function Te(s){return ns(s.id)}function ps(s){return $e(s).sessionId?.trim()||null}function Pe(s){const t=ps(s);if(!t)return null;const c=Te(s.agent)?void 0:s.agent.id;return{view:"sessions",sessionId:t,...c?{agentId:c}:{}}}function fs(s){return Pe(s)}function xs(s){return Te(s.agent)?null:{view:"agents-v2",agentId:s.agent.id,tab:"profile"}}const js={created:"+",modified:"~",read:"○"},gs={blocked:"blocked",completed:"done",in_progress:"active",pending:"todo",unknown:"step"},Ae=["s-lane-sheet-vitals","s-lane-sheet-runtime","s-lane-sheet-files","s-lane-sheet-commands","s-lane-sheet-plans","s-lane-sheet-docs"];function he(s){return!!(s&&Ae.includes(s))}function vs(){if(typeof window>"u")return null;const s=window.location.hash.replace(/^#/,"");return he(s)?s:null}function ce(s){return typeof s!="number"||!Number.isFinite(s)?"—":s.toLocaleString()}function Ns(s){return s>=1e6?`${(s/1e6).toFixed(1)}M`:s>=1e3?`${(s/1e3).toFixed(s>=1e5?0:1)}k`:`${s}`}function bs(s){const t=s.lastIndexOf("/");return t<0?{dir:"",base:s}:{dir:s.slice(0,t+1),base:s.slice(t+1)}}function ws(s,t){const c=new Map;for(const l of t?.events??[]){if(l.kind!=="tool"||!l.diff||!l.arg)continue;const r=l.arg.trim().split(/[\\/]/).filter(Boolean).pop();if(!r)continue;const u=c.get(r)??{add:0,del:0};u.add+=l.diff.add??0,u.del+=l.diff.del??0,c.set(r,u)}return s.map(l=>{const r=l.path.split(/[\\/]/).filter(Boolean).pop()??l.path,u=c.get(r);return{...l,add:u?.add??0,del:u?.del??0}})}function re(s,t=48){return s?s.length<=t?s:`…${s.slice(-(t-1))}`:"—"}async function ks(s){await me("/api/local-path/reveal",{method:"POST",body:JSON.stringify({path:s.path,...s.basePath?{basePath:s.basePath}:{},...s.agentId?{agentId:s.agentId}:{},...s.sessionId?{sessionId:s.sessionId}:{}})})}function ue(s,t){return s.startsWith("/")||s.startsWith("~/")?s:t?`${t.replace(/\/$/u,"")}/${s}`:s}function Q({value:s,label:t}){const[c,l]=i.useState(!1),r=i.useRef(null);i.useEffect(()=>()=>{r.current&&clearTimeout(r.current)},[]);const u=i.useCallback(m=>{m.preventDefault(),m.stopPropagation(),U(s).then(d=>{d&&(l(!0),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>l(!1),1100))})},[s]);return e.jsx("button",{type:"button",className:`s-lane-sheet-copy${c?" s-lane-sheet-copy--done":""}`,onClick:u,title:c?"Copied":`Copy ${t}`,"aria-label":c?`Copied ${t}`:`Copy ${t}`,children:c?e.jsx("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",children:e.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"})}):e.jsxs("svg",{viewBox:"0 0 12 12",width:"11",height:"11","aria-hidden":"true",children:[e.jsx("rect",{x:"3.4",y:"3.4",width:"5.8",height:"5.8",rx:"1.3",fill:"none",stroke:"currentColor",strokeWidth:"1"}),e.jsx("path",{d:"M2.4 7.2V2.8c0-.4.3-.7.7-.7h4",fill:"none",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"})]})})}function De({path:s,basePath:t,agentId:c,sessionId:l,label:r}){return e.jsx("button",{type:"button",className:"s-lane-sheet-reveal",title:`Reveal ${r} in OS`,"aria-label":`Reveal ${r} in OS`,onClick:u=>{u.preventDefault(),u.stopPropagation(),ks({path:s,basePath:t,agentId:c,sessionId:l}).catch(m=>console.warn("Failed to reveal local path",m))},children:e.jsx(pe,{size:11,strokeWidth:1.6})})}function V({id:s,label:t,count:c,actions:l}){return e.jsxs("div",{className:"s-lane-sheet-sechead",id:s,children:[e.jsx("span",{className:"s-lane-sheet-sechead-label",children:t}),c!=null&&c!==!1&&e.jsx("span",{className:"s-lane-sheet-sechead-count",children:c}),e.jsx("span",{className:"s-lane-sheet-sechead-rule","aria-hidden":"true"}),l&&e.jsx("span",{className:"s-lane-sheet-sechead-actions",children:l})]})}function C({children:s,onClick:t,primary:c=!1,disabled:l=!1}){return e.jsx("button",{type:"button",className:`s-lane-sheet-ghost${c?" s-lane-sheet-ghost--primary":""}`,onClick:t,disabled:l,children:s})}function L({label:s,value:t,title:c,copy:l,reveal:r}){return e.jsxs("div",{className:"s-lane-sheet-meta-row",children:[e.jsx("dt",{children:s}),e.jsxs("dd",{className:"s-lane-sheet-fact",children:[e.jsx("span",{className:"s-lane-sheet-fact-val",title:c??t,children:t}),r&&e.jsx(De,{...r,label:s}),l&&e.jsx(Q,{value:l,label:s})]})]})}function oe({file:s,basePath:t,agentId:c,sessionId:l,onOpen:r}){const u=Ie(s),m=s.path,d=ue(m,t),{dir:b,base:B}=bs(m),$=s.add>0||s.del>0;return e.jsxs("div",{className:"s-lane-sheet-frow",title:m,children:[e.jsx("span",{className:`s-lane-sheet-fstate s-lane-sheet-fstate--${s.state}`,"aria-hidden":"true",children:js[s.state]??"○"}),e.jsxs("span",{className:"s-lane-sheet-fpath",children:[b&&e.jsx("span",{className:"s-lane-sheet-fdir",children:b}),e.jsx("span",{className:"s-lane-sheet-fbase",children:B})]}),$&&e.jsxs("span",{className:"s-lane-sheet-fdiff",children:[s.add>0&&e.jsxs("span",{className:"s-lane-sheet-file-add",children:["+",s.add]}),s.del>0&&e.jsxs("span",{className:"s-lane-sheet-file-del",children:["−",s.del]})]}),e.jsxs("span",{className:"s-lane-sheet-frow-acts",children:[e.jsx("button",{type:"button",className:"s-lane-sheet-rowact",title:`Open ${u} in diff`,"aria-label":`Open ${u} in diff`,onClick:()=>r(d),children:e.jsx(pe,{size:11,strokeWidth:1.6})}),e.jsx(De,{path:m,basePath:t,agentId:c,sessionId:l,label:u}),e.jsx(Q,{value:m,label:"file path"})]})]})}function ys({entry:s}){const{dir:t,rest:c}=Ze(es(s.command)),l=ss(c||s.command);return e.jsxs("div",{className:"s-lane-sheet-crow",title:s.command,children:[e.jsx("span",{className:"s-lane-sheet-cmark","aria-hidden":"true",children:"❯"}),e.jsxs("span",{className:"s-lane-sheet-ctext",children:[t&&e.jsxs("span",{className:"s-lane-sheet-bash-dir",children:[t,"/"]}),l.map((r,u)=>e.jsxs("span",{className:`s-lane-sheet-bash-${r.tier}${r.known?" s-lane-sheet-bash-prog--known":""}${r.flag?" s-lane-sheet-bash-flag":""}`,children:[u>0?" ":"",r.text]},u))]}),s.outcome&&e.jsx("span",{className:"s-lane-sheet-cresult",children:s.outcome}),e.jsx("span",{className:"s-lane-sheet-crow-acts",children:e.jsx(Q,{value:s.command,label:"command"})})]})}function Le({label:s,hint:t,children:c}){const[l,r]=i.useState(!1);return e.jsxs("div",{className:`s-lane-sheet-disc${l?" s-lane-sheet-disc--open":""}`,children:[e.jsxs("button",{type:"button",className:"s-lane-sheet-disc-head","aria-expanded":l,onClick:()=>r(u=>!u),children:[e.jsx("span",{className:`s-lane-sheet-disc-caret${l?" s-lane-sheet-disc-caret--open":""}`,"aria-hidden":"true",children:"›"}),e.jsx("span",{className:"s-lane-sheet-disc-label",children:s}),t!=null&&t!==!1&&e.jsx("span",{className:"s-lane-sheet-disc-hint",children:t})]}),l&&e.jsx("div",{className:"s-lane-sheet-disc-body",children:c})]})}function Cs({plan:s,onOpen:t}){const[c,l]=i.useState(!1),r=s.steps.filter(m=>m.status==="completed").length,u=s.steps.find(m=>m.status==="in_progress");return e.jsxs("div",{className:`s-lane-sheet-plan${c?" s-lane-sheet-plan--open":""}`,children:[e.jsxs("button",{type:"button",className:"s-lane-sheet-plan-head","aria-expanded":c,onClick:()=>l(m=>!m),children:[e.jsx("span",{className:`s-lane-sheet-plan-caret${c?" s-lane-sheet-plan-caret--open":""}`,"aria-hidden":"true",children:"›"}),e.jsx("span",{className:"s-lane-sheet-plan-title",title:s.title,children:s.title}),e.jsxs("span",{className:"s-lane-sheet-plan-tally",children:[r,"/",s.steps.length]})]}),!c&&u&&e.jsxs("div",{className:"s-lane-sheet-plan-now",title:u.text,children:[e.jsx("span",{className:"s-lane-sheet-plan-now-mark","aria-hidden":"true",children:"▸"}),e.jsx("span",{className:"s-lane-sheet-plan-now-text",children:u.text})]}),c&&e.jsxs("div",{className:"s-lane-sheet-plan-steps",children:[s.steps.map(m=>e.jsxs("div",{className:`s-lane-sheet-pstep s-lane-sheet-pstep--${m.status}`,children:[e.jsx("span",{className:"s-lane-sheet-pstep-box","aria-hidden":"true",children:m.status==="completed"?"✓":m.status==="in_progress"?"▸":"○"}),e.jsx("span",{className:"s-lane-sheet-pstep-text",children:m.text})]},m.id)),e.jsx("div",{className:"s-lane-sheet-plan-foot",children:e.jsx(C,{onClick:t,children:"Open in Plans →"})})]})]})}function Ss({document:s,expanded:t,onToggle:c,onOpen:l}){const r=os(s),u=s.steps.length>0;return e.jsxs("article",{className:"s-lane-sheet-doc",children:[e.jsxs("button",{type:"button",className:"s-lane-sheet-doc-head","aria-expanded":t,onClick:c,children:[e.jsx("span",{className:"s-lane-sheet-doc-title",children:s.title}),e.jsxs("span",{className:"s-lane-sheet-doc-meta",children:[u?`${s.steps.length} steps`:Ie(s.path)," · ",de(s.updatedAt)]}),!t&&r&&e.jsx("span",{className:"s-lane-sheet-doc-excerpt",children:r})]}),t&&e.jsxs("div",{className:"s-lane-sheet-doc-body",children:[s.summary&&e.jsx("p",{className:"s-lane-sheet-doc-summary",children:s.summary}),u&&s.steps.length>0&&e.jsx("ol",{className:"s-lane-sheet-doc-steps",children:s.steps.map(m=>e.jsxs("li",{className:`s-lane-sheet-doc-step s-lane-sheet-doc-step--${m.status}`,children:[e.jsx("span",{className:"s-lane-sheet-doc-step-state",children:gs[m.status]}),e.jsx("span",{className:"s-lane-sheet-doc-step-text",children:m.text})]},m.id))}),(s.body||s.rawText)&&e.jsx("pre",{className:"s-lane-sheet-doc-pre",children:s.body||s.rawText}),e.jsx("button",{type:"button",className:"s-lane-sheet-doc-open",onClick:l,children:"Open in Plans"})]})]})}function Ls({lane:s,navigate:t,returnRoute:c,onClose:l,navigationEnabled:r=!0,onPinProject:u,projectPinned:m=!1}){const{agent:d,observe:b,source:B,lastActiveAt:$}=s,{openFilePreview:A}=Ye(),X=i.useMemo(()=>Ve(d.state??null,d),[d]),w=i.useMemo(()=>ts(b,d,{isLive:X}),[b,d,X]),[D,Y]=i.useState(!1),[O,fe]=i.useState([]),[F,xe]=i.useState([]),[Oe,Fe]=i.useState(null),[_,Ee]=i.useState(!1),[Re,je]=i.useState(!1),[z,ge]=i.useState(!1),[ve,Z]=i.useState(null),[x,ee]=i.useState("s-lane-sheet-vitals"),E=i.useRef(null),se=i.useRef(null);i.useEffect(()=>()=>{E.current&&clearTimeout(E.current)},[]);const Ne=i.useCallback(a=>{typeof window>"u"||window.location.hash!==`#${a}`&&Xe({hash:a,replace:!1})},[]),W=i.useCallback(a=>{const h=se.current,f=h?.querySelector(`#${a}`);if(!h||!f)return!1;const g=h.getBoundingClientRect().top,y=f.getBoundingClientRect().top;return h.scrollTop=Math.max(0,h.scrollTop+y-g),ee(a),!0},[]),T=i.useCallback((a,h)=>{a.preventDefault(),W(h)&&Ne(h)},[W,Ne]),H=ds(d,B),Me=hs(d,B),n=i.useMemo(()=>$e(s),[s]),o=s.facts,I=o?.turn?.phase?o.turn.phase==="started":X,ae=ls(s),p=i.useMemo(()=>{const a=o?.touchedFiles.length?o.touchedFiles:is(b,1/0),h=ws(a,b),f=h.filter(v=>v.state==="created"),g=h.filter(v=>v.state==="modified"),y=h.filter(v=>v.state==="read"),M=[...f,...g];return{created:f,modified:g,read:y,changed:M,totalAdd:M.reduce((v,N)=>v+N.add,0),totalDel:M.reduce((v,N)=>v+N.del,0)}},[o,b]),q=p.changed.length+p.read.length,S=i.useMemo(()=>cs(b),[b]),te=i.useMemo(()=>p.changed.map(a=>ue(a.path,n.cwd)).join(`
|
|
2
2
|
`),[p.changed,n.cwd]),be=i.useMemo(()=>{const a=[`agent: ${H}`],h=d.harness??n.harness,f=o?.model??n.model;(h||f||o?.effort)&&a.push(`harness: ${[h,f,o?.effort].filter(Boolean).join(" · ")}`);const g=o?.branch??n.branch;return g&&a.push(`branch: ${g}`),n.cwd&&a.push(`cwd: ${n.cwd}`),n.sessionId&&a.push(`session: ${n.sessionId}`),d.harnessLogPath&&a.push(`transcript: ${d.harnessLogPath}`),o?.originator&&a.push(`origin: ${o.originator}`),a.join(`
|
|
3
3
|
`)},[d,o,H,n]),we=i.useMemo(()=>S.map(a=>a.command).join(`
|
|
4
|
-
`),[S]),Be=i.useCallback(()=>{Q(be)},[be]),_e=i.useCallback(()=>{Q(we)},[we]),ze=i.useCallback(()=>{for(const a of p.changed)A(ue(a.path,n.cwd))},[p.changed,n.cwd,A]),We=i.useCallback(()=>{te&&Q(te).then(a=>{a&&(je(!0),E.current&&clearTimeout(E.current),E.current=setTimeout(()=>je(!1),1100))})},[te]),j=o?.usage??n.usage,ke=i.useMemo(()=>j?[{label:"in",value:j.inputTokens},{label:"out",value:j.outputTokens},{label:"cache rd",value:j.cacheReadInputTokens},{label:"cache wr",value:j.cacheCreationInputTokens},{label:"total",value:j.totalTokens},{label:"reasoning",value:j.reasoningOutputTokens}].filter(a=>typeof a.value=="number"):[],[j]),k=i.useMemo(()=>Qe(j,{model:o?.model??n.model,adapterType:d.harness??n.harness}),[j,o?.model,n.model,d.harness,n.harness]),ne=!!(o?.compaction?.eligible&&us(d.harness??n.harness)&&n.sessionId),He=i.useCallback(async()=>{if(!(!ne||z)){ge(!0),Z(null);try{const a=await ms({harness:d.harness??n.harness,sessionId:n.sessionId,transcriptPath:d.harnessLogPath,agentId:d.id});(!a.ok||!a.delivered)&&Z(a.error??"Compaction was not delivered to the harness")}catch(a){Z(a instanceof Error?a.message:"Compaction request failed")}finally{ge(!1)}}},[d.harness,d.harnessLogPath,d.id,ne,z,n.harness,n.sessionId]),ye=$?de($):null,G=i.useMemo(()=>Pe(s),[s]),P=i.useMemo(()=>xs(s),[s]),J=i.useMemo(()=>fs(s),[s]),R=i.useCallback(()=>{!r||!G||(ie(t,G,{returnTo:c}),l())},[t,r,l,c,G]),le=i.useCallback(()=>{if(r){if(P){ie(t,P,{returnTo:c}),l();return}R()}},[t,r,l,R,P,c]),K=i.useCallback(()=>{!r||!J||(ie(t,J,{returnTo:c}),l())},[t,r,l,c,J]);i.useEffect(()=>{const a=h=>{if(!as(h.target))switch(h.key.toLowerCase()){case"o":h.preventDefault(),R();break;case"t":h.preventDefault(),K();break;case"p":if(!P)return;h.preventDefault(),le();break}};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[le,R,K,P]);const Ce=i.useCallback(a=>{r&&(t({view:"ops",mode:"advisor",planDocumentId:a}),l())},[t,r,l]);return i.useEffect(()=>{let a=!1;return Y(!1),me("/api/plan-documents").then(h=>{if(a)return;const f=rs(h.documents,s);fe(f.plans),xe(f.docs),Y(!0)}).catch(()=>{a||(fe([]),xe([]),Y(!0))}),()=>{a=!0}},[s.id]),i.useEffect(()=>{const a=()=>{const h=vs();h&&window.requestAnimationFrame(()=>{W(h)})};return a(),window.addEventListener("hashchange",a),window.addEventListener("popstate",a),()=>{window.removeEventListener("hashchange",a),window.removeEventListener("popstate",a)}},[s.id,S.length,W]),i.useEffect(()=>{const a=se.current;if(!a)return;let h=0;const f=()=>{h=0;const y=Ae.map(N=>a.querySelector(`#${N}`)).filter(N=>!!N);if(y.length===0)return;if(a.scrollTop+a.clientHeight>=a.scrollHeight-2){const N=y[y.length-1].id;he(N)&&ee(N);return}const M=a.getBoundingClientRect().top+18,v=y.reduce((N,Se)=>Se.getBoundingClientRect().top<=M?Se:N,y[0]);he(v.id)&&ee(v.id)},g=()=>{h||(h=window.requestAnimationFrame(f))};return f(),a.addEventListener("scroll",g,{passive:!0}),window.addEventListener("resize",g),()=>{h&&window.cancelAnimationFrame(h),a.removeEventListener("scroll",g),window.removeEventListener("resize",g)}},[S.length,D,O.length,F.length]),e.jsxs(qe,{open:!0,onClose:l,side:"right",owner:"openscout.agent-lane",resizable:!0,defaultSize:720,minSize:420,maxSize:960,scrollLock:!0,ariaLabel:`${H} lane detail`,className:"s-lane-sheet",children:[e.jsxs("div",{className:"s-slide-header s-lane-sheet-header",children:[e.jsx(Ge,{agent:d,placement:"row",size:28,presence:!1,className:"s-agent-lane-avatar"}),e.jsxs("div",{className:"s-lane-sheet-header-copy",children:[e.jsx("div",{className:"s-lane-sheet-title",children:H}),e.jsxs("div",{className:"s-lane-sheet-sub",children:[Me," · ",$?de($):"idle"]})]}),e.jsx("span",{className:"s-slide-spacer"}),e.jsxs("div",{className:"s-lane-sheet-header-cta",children:[e.jsx(Je,{harness:d.harness??n.harness,size:18,className:`s-lane-sheet-hmark${I?" s-lane-sheet-hmark--working":""}`}),r?e.jsxs(e.Fragment,{children:[e.jsx(C,{primary:!0,onClick:R,disabled:!G,children:"Open session"}),P?e.jsx(C,{onClick:le,children:"Agent profile"}):null,e.jsx(C,{onClick:K,disabled:!J,children:"Traces"})]}):null,ae?e.jsx(C,{onClick:()=>u?.(ae),disabled:m||!u,children:e.jsx("span",{title:ae,children:m?"Project pinned":"Pin project"})}):null]}),e.jsx("button",{type:"button",className:"s-slide-close",onClick:l,"aria-label":"Close",children:"×"})]}),e.jsxs("nav",{className:"s-lane-sheet-anchors","aria-label":"Jump to section",children:[e.jsx("a",{href:"#s-lane-sheet-vitals",className:`s-lane-sheet-anchor${x==="s-lane-sheet-vitals"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-vitals"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-vitals"),children:"Vitals"}),e.jsx("a",{href:"#s-lane-sheet-runtime",className:`s-lane-sheet-anchor${x==="s-lane-sheet-runtime"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-runtime"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-runtime"),children:"Runtime"}),e.jsxs("a",{href:"#s-lane-sheet-files",className:`s-lane-sheet-anchor${x==="s-lane-sheet-files"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-files"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-files"),children:["Files",q>0&&e.jsx("span",{className:"s-lane-sheet-anchor-n",children:q})]}),S.length>0&&e.jsxs("a",{href:"#s-lane-sheet-commands",className:`s-lane-sheet-anchor${x==="s-lane-sheet-commands"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-commands"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-commands"),children:["Commands",e.jsx("span",{className:"s-lane-sheet-anchor-n",children:S.length})]}),e.jsx("a",{href:"#s-lane-sheet-plans",className:`s-lane-sheet-anchor${x==="s-lane-sheet-plans"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-plans"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-plans"),children:"Plans"}),e.jsx("a",{href:"#s-lane-sheet-docs",className:`s-lane-sheet-anchor${x==="s-lane-sheet-docs"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-docs"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-docs"),children:"Docs"}),I&&o?.turn&&e.jsxs("span",{className:"s-lane-sheet-anchorbar-turn",children:["turn ",o.turn.phase,o.turn.index?` · #${o.turn.index}`:""]})]}),e.jsxs("div",{ref:se,className:`s-slide-body s-lane-sheet-body${I?" s-lane-sheet-body--working":" s-lane-sheet-body--idle"}`,children:[e.jsxs("section",{id:"s-lane-sheet-vitals",className:`s-lane-sheet-section s-lane-sheet-vitals${I?"":" s-lane-sheet-vitals--idle"}`,children:[w&&e.jsxs("div",{className:"s-lane-sheet-vitals-now",children:[e.jsxs("div",{className:"s-lane-sheet-vitals-now-top",children:[e.jsxs("span",{className:"s-lane-sheet-vitals-live","aria-hidden":"true",children:[e.jsx("span",{className:"s-lane-sheet-vitals-live-dot"}),e.jsx("span",{className:"s-lane-sheet-vitals-live-ring"})]}),e.jsx("span",{className:"s-lane-sheet-vitals-now-label",children:I?"executing now":"last action"}),I&&o?.turn&&e.jsxs("span",{className:"s-lane-sheet-vitals-now-turn",children:["turn ",o.turn.phase,o.turn.index?` · #${o.turn.index}`:""]})]}),e.jsxs("div",{className:"s-lane-sheet-vitals-well",children:[w.headlineFrom==="user"?e.jsx("span",{className:"s-lane-sheet-vitals-prompt","aria-hidden":"true",children:"←"}):w.headlineFrom==="agent"?e.jsx("span",{className:"s-lane-sheet-vitals-prompt","aria-hidden":"true",children:"→"}):e.jsx("span",{className:"s-lane-sheet-vitals-prompt s-lane-sheet-vitals-prompt--cmd","aria-hidden":"true",children:"❯"}),e.jsx("span",{className:"s-lane-sheet-vitals-cmd",title:w.headFull,children:w.headline}),I&&e.jsx("span",{className:"s-lane-sheet-vitals-caret","aria-hidden":"true"}),e.jsxs("span",{className:"s-lane-sheet-vitals-now-acts",children:[r&&e.jsx("button",{type:"button",className:"s-lane-sheet-reveal",title:"Open trace at this step","aria-label":"Open trace",onClick:K,children:e.jsx(pe,{size:11,strokeWidth:1.6})}),w.headFull&&w.headFull!==w.headline&&e.jsx(U,{value:w.headFull,label:"current action"})]})]})]}),k&&e.jsxs("div",{className:`s-lane-sheet-vitals-gauge${k.overLimit?" s-lane-sheet-vitals-gauge--over":""}`,children:[e.jsxs("div",{className:"s-lane-sheet-vitals-gauge-top",children:[e.jsx("span",{className:"s-lane-sheet-vitals-gauge-label",children:"context"}),e.jsxs("span",{className:"s-lane-sheet-vitals-gauge-read",children:[e.jsx("b",{children:k.usedLabel}),e.jsxs("span",{className:"s-lane-sheet-vitals-gauge-of",children:[" / ",k.budgetLabel]}),e.jsx("span",{className:"s-lane-sheet-vitals-gauge-unit",children:" tokens"}),e.jsxs("span",{className:"s-lane-sheet-vitals-gauge-pct",children:[k.pct,"%",k.overLimit?" over":""]})]}),ne&&e.jsx("button",{type:"button",className:"s-lane-sheet-vitals-compact",onClick:()=>{He()},disabled:z,title:"Force a context compaction on this live session",children:z?"Compacting…":"Compact context"})]}),e.jsxs("div",{className:"s-lane-sheet-vitals-gaugebar",role:"meter","aria-label":"context budget","aria-valuenow":k.pct,"aria-valuemin":0,"aria-valuemax":Math.max(100,k.pct),children:[e.jsx("span",{className:"s-lane-sheet-vitals-gaugebar-fill",style:{width:`${Ue(k)}%`},children:e.jsx("span",{className:"s-lane-sheet-vitals-gaugebar-edge","aria-hidden":"true"})}),[25,50,75].map(a=>e.jsx("span",{className:"s-lane-sheet-vitals-gaugebar-tick",style:{left:`${a}%`},"aria-hidden":"true"},a))]}),ve&&e.jsx("div",{className:"s-lane-sheet-vitals-compact-error",role:"status",children:ve}),o?.compaction?.lastCompactedSummary&&e.jsxs("div",{className:"s-lane-sheet-vitals-compact-note",children:["last compaction · ",o.compaction.lastCompactedSummary]})]}),e.jsxs("div",{className:"s-lane-sheet-vitals-cadence",children:[e.jsx("b",{children:ce(n.events)})," events · ",e.jsx("b",{children:ce(n.tools)})," tools",ye?e.jsxs(e.Fragment,{children:[" · ",ye]}):null]})]}),e.jsxs("section",{id:"s-lane-sheet-runtime",className:"s-lane-sheet-section",children:[e.jsxs(Le,{label:"Runtime",hint:[d.harness??n.harness,o?.model??n.model].filter(Boolean).join(" · ")||void 0,children:[e.jsxs("dl",{className:"s-lane-sheet-meta",children:[e.jsx(L,{label:"Effort",value:o?.effort??"—"}),e.jsx(L,{label:"Branch",value:o?.branch??n.branch??"—",copy:o?.branch??n.branch??null}),e.jsx(L,{label:"Working dir",value:re(n.cwd),title:n.cwd??void 0,copy:n.cwd??null,reveal:n.cwd?{path:n.cwd,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId}:void 0}),e.jsx(L,{label:"Session",value:re(n.sessionId,36),title:n.sessionId??void 0,copy:n.sessionId??null}),d.harnessLogPath&&e.jsx(L,{label:"Transcript",value:re(d.harnessLogPath,36),title:d.harnessLogPath,copy:d.harnessLogPath,reveal:{path:d.harnessLogPath,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId}}),e.jsx(L,{label:"Origin",value:o?.originator??"—",copy:o?.originator??null}),e.jsx(L,{label:"Attribution",value:o?.attribution?Ke(o.attribution):"—"}),o?.currentTask&&e.jsx(L,{label:"Task",value:o.currentTask,title:o.currentTask,copy:o.currentTask})]}),e.jsx("div",{className:"s-lane-sheet-disc-bar",children:e.jsx(C,{onClick:Be,children:"Copy diagnostics"})})]}),ke.length>0&&e.jsx(Le,{label:"Tokens",hint:typeof j?.totalTokens=="number"?Ns(j.totalTokens):void 0,children:e.jsx("div",{className:"s-lane-sheet-dials",children:ke.map(a=>e.jsxs("span",{className:"s-lane-sheet-dial",children:[e.jsx("span",{className:"s-lane-sheet-dial-value",children:ce(a.value)}),e.jsx("span",{className:"s-lane-sheet-dial-label",children:a.label})]},a.label))})})]}),e.jsxs("section",{id:"s-lane-sheet-files",className:"s-lane-sheet-section",children:[e.jsx(V,{label:"Files",count:q>0?`${p.changed.length} changed · ${p.read.length} read`:void 0,actions:p.changed.length>0?e.jsxs(e.Fragment,{children:[(p.totalAdd>0||p.totalDel>0)&&e.jsxs("span",{className:"s-lane-sheet-file-diff","aria-hidden":"true",children:[p.totalAdd>0&&e.jsxs("span",{className:"s-lane-sheet-file-add",children:["+",p.totalAdd]}),p.totalDel>0&&e.jsxs("span",{className:"s-lane-sheet-file-del",children:["−",p.totalDel]})]}),e.jsx(C,{onClick:We,children:Re?"Copied":"Copy changed"}),e.jsx(C,{onClick:ze,children:"Open all → diff"})]}):void 0}),q===0?e.jsx("div",{className:"s-lane-sheet-empty",children:"No files touched in this session yet."}):e.jsxs("div",{className:"s-lane-sheet-filegroups",children:[p.created.length>0&&e.jsxs("div",{className:"s-lane-sheet-filegroup",children:[e.jsxs("div",{className:"s-lane-sheet-fglabel",children:[e.jsx("span",{className:"s-lane-sheet-fgmark s-lane-sheet-fgmark--created","aria-hidden":"true"}),"new",e.jsx("span",{className:"s-lane-sheet-fgcount",children:p.created.length})]}),e.jsx("div",{className:"s-lane-sheet-files",children:p.created.map(a=>e.jsx(oe,{file:a,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId,onOpen:A},a.path))})]}),p.modified.length>0&&e.jsxs("div",{className:"s-lane-sheet-filegroup",children:[e.jsxs("div",{className:"s-lane-sheet-fglabel",children:[e.jsx("span",{className:"s-lane-sheet-fgmark s-lane-sheet-fgmark--modified","aria-hidden":"true"}),"modified",e.jsx("span",{className:"s-lane-sheet-fgcount",children:p.modified.length})]}),e.jsx("div",{className:"s-lane-sheet-files",children:p.modified.map(a=>e.jsx(oe,{file:a,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId,onOpen:A},a.path))})]}),p.read.length>0&&e.jsxs("div",{className:"s-lane-sheet-filegroup",children:[e.jsxs("button",{type:"button",className:"s-lane-sheet-fglabel s-lane-sheet-fglabel--btn","aria-expanded":_,onClick:()=>Ee(a=>!a),children:[e.jsx("span",{className:`s-lane-sheet-fgcaret${_?" s-lane-sheet-fgcaret--open":""}`,"aria-hidden":"true",children:"›"}),e.jsx("span",{className:"s-lane-sheet-fgmark s-lane-sheet-fgmark--read","aria-hidden":"true"}),"read",e.jsx("span",{className:"s-lane-sheet-fgcount",children:p.read.length}),!_&&e.jsx("span",{className:"s-lane-sheet-fghint",children:"collapsed"})]}),_&&e.jsx("div",{className:"s-lane-sheet-files",children:p.read.map(a=>e.jsx(oe,{file:a,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId,onOpen:A},a.path))})]})]})]}),S.length>0&&e.jsxs("section",{id:"s-lane-sheet-commands",className:"s-lane-sheet-section",children:[e.jsx(V,{label:"Commands",count:"recent",actions:e.jsx(C,{onClick:_e,children:"Copy all"})}),e.jsx("div",{className:"s-lane-sheet-cmds",children:S.map(a=>e.jsx(ys,{entry:a},a.id))})]}),e.jsxs("section",{id:"s-lane-sheet-plans",className:"s-lane-sheet-section",children:[e.jsx(V,{label:"Plans",count:D&&O.length>0?O.length:void 0}),D?O.length===0?e.jsx("div",{className:"s-lane-sheet-empty",children:"No plans matched this session yet."}):e.jsx("div",{className:"s-lane-sheet-plans",children:O.map(a=>e.jsx(Cs,{plan:a,onOpen:()=>Ce(a.id)},a.id))}):e.jsx("div",{className:"s-lane-sheet-empty",children:"Indexing plan documents…"})]}),e.jsxs("section",{id:"s-lane-sheet-docs",className:"s-lane-sheet-section",children:[e.jsx(V,{label:"Docs",count:D&&F.length>0?F.length:void 0}),D?F.length===0?e.jsx("div",{className:"s-lane-sheet-empty",children:"No related docs matched this session yet."}):e.jsx("div",{className:"s-lane-sheet-docs",children:F.map(a=>e.jsx(Ss,{document:a,expanded:Oe===a.id,onToggle:()=>Fe(h=>h===a.id?null:a.id),onOpen:()=>Ce(a.id)},a.id))}):e.jsx("div",{className:"s-lane-sheet-empty",children:"Indexing documents…"})]})]})]})}const Vs=Object.freeze(Object.defineProperty({__proto__:null,AgentLaneDetailSheet:Ls},Symbol.toStringTag,{value:"Module"}));export{Ls as A,Vs as a,Te as i};
|
|
4
|
+
`),[S]),Be=i.useCallback(()=>{U(be)},[be]),_e=i.useCallback(()=>{U(we)},[we]),ze=i.useCallback(()=>{for(const a of p.changed)A(ue(a.path,n.cwd))},[p.changed,n.cwd,A]),We=i.useCallback(()=>{te&&U(te).then(a=>{a&&(je(!0),E.current&&clearTimeout(E.current),E.current=setTimeout(()=>je(!1),1100))})},[te]),j=o?.usage??n.usage,ke=i.useMemo(()=>j?[{label:"in",value:j.inputTokens},{label:"out",value:j.outputTokens},{label:"cache rd",value:j.cacheReadInputTokens},{label:"cache wr",value:j.cacheCreationInputTokens},{label:"total",value:j.totalTokens},{label:"reasoning",value:j.reasoningOutputTokens}].filter(a=>typeof a.value=="number"):[],[j]),k=i.useMemo(()=>Ue(j,{model:o?.model??n.model,adapterType:d.harness??n.harness}),[j,o?.model,n.model,d.harness,n.harness]),ne=!!(o?.compaction?.eligible&&us(d.harness??n.harness)&&n.sessionId),He=i.useCallback(async()=>{if(!(!ne||z)){ge(!0),Z(null);try{const a=await ms({harness:d.harness??n.harness,sessionId:n.sessionId,transcriptPath:d.harnessLogPath,agentId:d.id});(!a.ok||!a.delivered)&&Z(a.error??"Compaction was not delivered to the harness")}catch(a){Z(a instanceof Error?a.message:"Compaction request failed")}finally{ge(!1)}}},[d.harness,d.harnessLogPath,d.id,ne,z,n.harness,n.sessionId]),ye=$?de($):null,G=i.useMemo(()=>Pe(s),[s]),P=i.useMemo(()=>xs(s),[s]),J=i.useMemo(()=>fs(s),[s]),R=i.useCallback(()=>{!r||!G||(ie(t,G,{returnTo:c}),l())},[t,r,l,c,G]),le=i.useCallback(()=>{if(r){if(P){ie(t,P,{returnTo:c}),l();return}R()}},[t,r,l,R,P,c]),K=i.useCallback(()=>{!r||!J||(ie(t,J,{returnTo:c}),l())},[t,r,l,c,J]);i.useEffect(()=>{const a=h=>{if(!as(h.target))switch(h.key.toLowerCase()){case"o":h.preventDefault(),R();break;case"t":h.preventDefault(),K();break;case"p":if(!P)return;h.preventDefault(),le();break}};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[le,R,K,P]);const Ce=i.useCallback(a=>{r&&(t({view:"ops",mode:"advisor",planDocumentId:a}),l())},[t,r,l]);return i.useEffect(()=>{let a=!1;return Y(!1),me("/api/plan-documents").then(h=>{if(a)return;const f=rs(h.documents,s);fe(f.plans),xe(f.docs),Y(!0)}).catch(()=>{a||(fe([]),xe([]),Y(!0))}),()=>{a=!0}},[s.id]),i.useEffect(()=>{const a=()=>{const h=vs();h&&window.requestAnimationFrame(()=>{W(h)})};return a(),window.addEventListener("hashchange",a),window.addEventListener("popstate",a),()=>{window.removeEventListener("hashchange",a),window.removeEventListener("popstate",a)}},[s.id,S.length,W]),i.useEffect(()=>{const a=se.current;if(!a)return;let h=0;const f=()=>{h=0;const y=Ae.map(N=>a.querySelector(`#${N}`)).filter(N=>!!N);if(y.length===0)return;if(a.scrollTop+a.clientHeight>=a.scrollHeight-2){const N=y[y.length-1].id;he(N)&&ee(N);return}const M=a.getBoundingClientRect().top+18,v=y.reduce((N,Se)=>Se.getBoundingClientRect().top<=M?Se:N,y[0]);he(v.id)&&ee(v.id)},g=()=>{h||(h=window.requestAnimationFrame(f))};return f(),a.addEventListener("scroll",g,{passive:!0}),window.addEventListener("resize",g),()=>{h&&window.cancelAnimationFrame(h),a.removeEventListener("scroll",g),window.removeEventListener("resize",g)}},[S.length,D,O.length,F.length]),e.jsxs(qe,{open:!0,onClose:l,side:"right",owner:"openscout.agent-lane",resizable:!0,defaultSize:720,minSize:420,maxSize:960,scrollLock:!0,ariaLabel:`${H} lane detail`,className:"s-lane-sheet",children:[e.jsxs("div",{className:"s-slide-header s-lane-sheet-header",children:[e.jsx(Ge,{agent:d,placement:"row",size:28,presence:!1,className:"s-agent-lane-avatar"}),e.jsxs("div",{className:"s-lane-sheet-header-copy",children:[e.jsx("div",{className:"s-lane-sheet-title",children:H}),e.jsxs("div",{className:"s-lane-sheet-sub",children:[Me," · ",$?de($):"idle"]})]}),e.jsx("span",{className:"s-slide-spacer"}),e.jsxs("div",{className:"s-lane-sheet-header-cta",children:[e.jsx(Je,{harness:d.harness??n.harness,size:18,className:`s-lane-sheet-hmark${I?" s-lane-sheet-hmark--working":""}`}),r?e.jsxs(e.Fragment,{children:[e.jsx(C,{primary:!0,onClick:R,disabled:!G,children:"Open session"}),P?e.jsx(C,{onClick:le,children:"Agent profile"}):null,e.jsx(C,{onClick:K,disabled:!J,children:"Traces"})]}):null,ae?e.jsx(C,{onClick:()=>u?.(ae),disabled:m||!u,children:e.jsx("span",{title:ae,children:m?"Project pinned":"Pin project"})}):null]}),e.jsx("button",{type:"button",className:"s-slide-close",onClick:l,"aria-label":"Close",children:"×"})]}),e.jsxs("nav",{className:"s-lane-sheet-anchors","aria-label":"Jump to section",children:[e.jsx("a",{href:"#s-lane-sheet-vitals",className:`s-lane-sheet-anchor${x==="s-lane-sheet-vitals"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-vitals"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-vitals"),children:"Vitals"}),e.jsx("a",{href:"#s-lane-sheet-runtime",className:`s-lane-sheet-anchor${x==="s-lane-sheet-runtime"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-runtime"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-runtime"),children:"Runtime"}),e.jsxs("a",{href:"#s-lane-sheet-files",className:`s-lane-sheet-anchor${x==="s-lane-sheet-files"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-files"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-files"),children:["Files",q>0&&e.jsx("span",{className:"s-lane-sheet-anchor-n",children:q})]}),S.length>0&&e.jsxs("a",{href:"#s-lane-sheet-commands",className:`s-lane-sheet-anchor${x==="s-lane-sheet-commands"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-commands"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-commands"),children:["Commands",e.jsx("span",{className:"s-lane-sheet-anchor-n",children:S.length})]}),e.jsx("a",{href:"#s-lane-sheet-plans",className:`s-lane-sheet-anchor${x==="s-lane-sheet-plans"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-plans"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-plans"),children:"Plans"}),e.jsx("a",{href:"#s-lane-sheet-docs",className:`s-lane-sheet-anchor${x==="s-lane-sheet-docs"?" s-lane-sheet-anchor--active":""}`,"aria-current":x==="s-lane-sheet-docs"?"location":void 0,onClick:a=>T(a,"s-lane-sheet-docs"),children:"Docs"}),I&&o?.turn&&e.jsxs("span",{className:"s-lane-sheet-anchorbar-turn",children:["turn ",o.turn.phase,o.turn.index?` · #${o.turn.index}`:""]})]}),e.jsxs("div",{ref:se,className:`s-slide-body s-lane-sheet-body${I?" s-lane-sheet-body--working":" s-lane-sheet-body--idle"}`,children:[e.jsxs("section",{id:"s-lane-sheet-vitals",className:`s-lane-sheet-section s-lane-sheet-vitals${I?"":" s-lane-sheet-vitals--idle"}`,children:[w&&e.jsxs("div",{className:"s-lane-sheet-vitals-now",children:[e.jsxs("div",{className:"s-lane-sheet-vitals-now-top",children:[e.jsxs("span",{className:"s-lane-sheet-vitals-live","aria-hidden":"true",children:[e.jsx("span",{className:"s-lane-sheet-vitals-live-dot"}),e.jsx("span",{className:"s-lane-sheet-vitals-live-ring"})]}),e.jsx("span",{className:"s-lane-sheet-vitals-now-label",children:I?"executing now":"last action"}),I&&o?.turn&&e.jsxs("span",{className:"s-lane-sheet-vitals-now-turn",children:["turn ",o.turn.phase,o.turn.index?` · #${o.turn.index}`:""]})]}),e.jsxs("div",{className:"s-lane-sheet-vitals-well",children:[w.headlineFrom==="user"?e.jsx("span",{className:"s-lane-sheet-vitals-prompt","aria-hidden":"true",children:"←"}):w.headlineFrom==="agent"?e.jsx("span",{className:"s-lane-sheet-vitals-prompt","aria-hidden":"true",children:"→"}):e.jsx("span",{className:"s-lane-sheet-vitals-prompt s-lane-sheet-vitals-prompt--cmd","aria-hidden":"true",children:"❯"}),e.jsx("span",{className:"s-lane-sheet-vitals-cmd",title:w.headFull,children:w.headline}),I&&e.jsx("span",{className:"s-lane-sheet-vitals-caret","aria-hidden":"true"}),e.jsxs("span",{className:"s-lane-sheet-vitals-now-acts",children:[r&&e.jsx("button",{type:"button",className:"s-lane-sheet-reveal",title:"Open trace at this step","aria-label":"Open trace",onClick:K,children:e.jsx(pe,{size:11,strokeWidth:1.6})}),w.headFull&&w.headFull!==w.headline&&e.jsx(Q,{value:w.headFull,label:"current action"})]})]})]}),k&&e.jsxs("div",{className:`s-lane-sheet-vitals-gauge${k.overLimit?" s-lane-sheet-vitals-gauge--over":""}`,children:[e.jsxs("div",{className:"s-lane-sheet-vitals-gauge-top",children:[e.jsx("span",{className:"s-lane-sheet-vitals-gauge-label",children:"context"}),e.jsxs("span",{className:"s-lane-sheet-vitals-gauge-read",children:[e.jsx("b",{children:k.usedLabel}),e.jsxs("span",{className:"s-lane-sheet-vitals-gauge-of",children:[" / ",k.budgetLabel]}),e.jsx("span",{className:"s-lane-sheet-vitals-gauge-unit",children:" tokens"}),e.jsxs("span",{className:"s-lane-sheet-vitals-gauge-pct",children:[k.pct,"%",k.overLimit?" over":""]})]}),ne&&e.jsx("button",{type:"button",className:"s-lane-sheet-vitals-compact",onClick:()=>{He()},disabled:z,title:"Force a context compaction on this live session",children:z?"Compacting…":"Compact context"})]}),e.jsxs("div",{className:"s-lane-sheet-vitals-gaugebar",role:"meter","aria-label":"context budget","aria-valuenow":k.pct,"aria-valuemin":0,"aria-valuemax":Math.max(100,k.pct),children:[e.jsx("span",{className:"s-lane-sheet-vitals-gaugebar-fill",style:{width:`${Qe(k)}%`},children:e.jsx("span",{className:"s-lane-sheet-vitals-gaugebar-edge","aria-hidden":"true"})}),[25,50,75].map(a=>e.jsx("span",{className:"s-lane-sheet-vitals-gaugebar-tick",style:{left:`${a}%`},"aria-hidden":"true"},a))]}),ve&&e.jsx("div",{className:"s-lane-sheet-vitals-compact-error",role:"status",children:ve}),o?.compaction?.lastCompactedSummary&&e.jsxs("div",{className:"s-lane-sheet-vitals-compact-note",children:["last compaction · ",o.compaction.lastCompactedSummary]})]}),e.jsxs("div",{className:"s-lane-sheet-vitals-cadence",children:[e.jsx("b",{children:ce(n.events)})," events · ",e.jsx("b",{children:ce(n.tools)})," tools",ye?e.jsxs(e.Fragment,{children:[" · ",ye]}):null]})]}),e.jsxs("section",{id:"s-lane-sheet-runtime",className:"s-lane-sheet-section",children:[e.jsxs(Le,{label:"Runtime",hint:[d.harness??n.harness,o?.model??n.model].filter(Boolean).join(" · ")||void 0,children:[e.jsxs("dl",{className:"s-lane-sheet-meta",children:[e.jsx(L,{label:"Effort",value:o?.effort??"—"}),e.jsx(L,{label:"Branch",value:o?.branch??n.branch??"—",copy:o?.branch??n.branch??null}),e.jsx(L,{label:"Working dir",value:re(n.cwd),title:n.cwd??void 0,copy:n.cwd??null,reveal:n.cwd?{path:n.cwd,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId}:void 0}),e.jsx(L,{label:"Session",value:re(n.sessionId,36),title:n.sessionId??void 0,copy:n.sessionId??null}),d.harnessLogPath&&e.jsx(L,{label:"Transcript",value:re(d.harnessLogPath,36),title:d.harnessLogPath,copy:d.harnessLogPath,reveal:{path:d.harnessLogPath,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId}}),e.jsx(L,{label:"Origin",value:o?.originator??"—",copy:o?.originator??null}),e.jsx(L,{label:"Attribution",value:o?.attribution?Ke(o.attribution):"—"}),o?.currentTask&&e.jsx(L,{label:"Task",value:o.currentTask,title:o.currentTask,copy:o.currentTask})]}),e.jsx("div",{className:"s-lane-sheet-disc-bar",children:e.jsx(C,{onClick:Be,children:"Copy diagnostics"})})]}),ke.length>0&&e.jsx(Le,{label:"Tokens",hint:typeof j?.totalTokens=="number"?Ns(j.totalTokens):void 0,children:e.jsx("div",{className:"s-lane-sheet-dials",children:ke.map(a=>e.jsxs("span",{className:"s-lane-sheet-dial",children:[e.jsx("span",{className:"s-lane-sheet-dial-value",children:ce(a.value)}),e.jsx("span",{className:"s-lane-sheet-dial-label",children:a.label})]},a.label))})})]}),e.jsxs("section",{id:"s-lane-sheet-files",className:"s-lane-sheet-section",children:[e.jsx(V,{label:"Files",count:q>0?`${p.changed.length} changed · ${p.read.length} read`:void 0,actions:p.changed.length>0?e.jsxs(e.Fragment,{children:[(p.totalAdd>0||p.totalDel>0)&&e.jsxs("span",{className:"s-lane-sheet-file-diff","aria-hidden":"true",children:[p.totalAdd>0&&e.jsxs("span",{className:"s-lane-sheet-file-add",children:["+",p.totalAdd]}),p.totalDel>0&&e.jsxs("span",{className:"s-lane-sheet-file-del",children:["−",p.totalDel]})]}),e.jsx(C,{onClick:We,children:Re?"Copied":"Copy changed"}),e.jsx(C,{onClick:ze,children:"Open all → diff"})]}):void 0}),q===0?e.jsx("div",{className:"s-lane-sheet-empty",children:"No files touched in this session yet."}):e.jsxs("div",{className:"s-lane-sheet-filegroups",children:[p.created.length>0&&e.jsxs("div",{className:"s-lane-sheet-filegroup",children:[e.jsxs("div",{className:"s-lane-sheet-fglabel",children:[e.jsx("span",{className:"s-lane-sheet-fgmark s-lane-sheet-fgmark--created","aria-hidden":"true"}),"new",e.jsx("span",{className:"s-lane-sheet-fgcount",children:p.created.length})]}),e.jsx("div",{className:"s-lane-sheet-files",children:p.created.map(a=>e.jsx(oe,{file:a,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId,onOpen:A},a.path))})]}),p.modified.length>0&&e.jsxs("div",{className:"s-lane-sheet-filegroup",children:[e.jsxs("div",{className:"s-lane-sheet-fglabel",children:[e.jsx("span",{className:"s-lane-sheet-fgmark s-lane-sheet-fgmark--modified","aria-hidden":"true"}),"modified",e.jsx("span",{className:"s-lane-sheet-fgcount",children:p.modified.length})]}),e.jsx("div",{className:"s-lane-sheet-files",children:p.modified.map(a=>e.jsx(oe,{file:a,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId,onOpen:A},a.path))})]}),p.read.length>0&&e.jsxs("div",{className:"s-lane-sheet-filegroup",children:[e.jsxs("button",{type:"button",className:"s-lane-sheet-fglabel s-lane-sheet-fglabel--btn","aria-expanded":_,onClick:()=>Ee(a=>!a),children:[e.jsx("span",{className:`s-lane-sheet-fgcaret${_?" s-lane-sheet-fgcaret--open":""}`,"aria-hidden":"true",children:"›"}),e.jsx("span",{className:"s-lane-sheet-fgmark s-lane-sheet-fgmark--read","aria-hidden":"true"}),"read",e.jsx("span",{className:"s-lane-sheet-fgcount",children:p.read.length}),!_&&e.jsx("span",{className:"s-lane-sheet-fghint",children:"collapsed"})]}),_&&e.jsx("div",{className:"s-lane-sheet-files",children:p.read.map(a=>e.jsx(oe,{file:a,basePath:n.cwd,agentId:d.id,sessionId:n.sessionId,onOpen:A},a.path))})]})]})]}),S.length>0&&e.jsxs("section",{id:"s-lane-sheet-commands",className:"s-lane-sheet-section",children:[e.jsx(V,{label:"Commands",count:"recent",actions:e.jsx(C,{onClick:_e,children:"Copy all"})}),e.jsx("div",{className:"s-lane-sheet-cmds",children:S.map(a=>e.jsx(ys,{entry:a},a.id))})]}),e.jsxs("section",{id:"s-lane-sheet-plans",className:"s-lane-sheet-section",children:[e.jsx(V,{label:"Plans",count:D&&O.length>0?O.length:void 0}),D?O.length===0?e.jsx("div",{className:"s-lane-sheet-empty",children:"No plans matched this session yet."}):e.jsx("div",{className:"s-lane-sheet-plans",children:O.map(a=>e.jsx(Cs,{plan:a,onOpen:()=>Ce(a.id)},a.id))}):e.jsx("div",{className:"s-lane-sheet-empty",children:"Indexing plan documents…"})]}),e.jsxs("section",{id:"s-lane-sheet-docs",className:"s-lane-sheet-section",children:[e.jsx(V,{label:"Docs",count:D&&F.length>0?F.length:void 0}),D?F.length===0?e.jsx("div",{className:"s-lane-sheet-empty",children:"No related docs matched this session yet."}):e.jsx("div",{className:"s-lane-sheet-docs",children:F.map(a=>e.jsx(Ss,{document:a,expanded:Oe===a.id,onToggle:()=>Fe(h=>h===a.id?null:a.id),onOpen:()=>Ce(a.id)},a.id))}):e.jsx("div",{className:"s-lane-sheet-empty",children:"Indexing documents…"})]})]})]})}const Vs=Object.freeze(Object.defineProperty({__proto__:null,AgentLaneDetailSheet:Ls},Symbol.toStringTag,{value:"Module"}));export{Ls as A,Vs as a,Te as i};
|
package/dist/client/assets/{AgentLaneSummaryResize-Di4u6df2.js → AgentLaneSummaryResize-BBYBS3DO.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as a,j as R}from"./index-
|
|
1
|
+
import{r as a,j as R}from"./index-C8uS5szO.js";const d="openscout:agent-lanes-cockpit-height",S="openscout:agent-lanes-summary-height",m=48,i=220,_=120,h=112,T=80,C=200,H=112;function v(e){if(!e)return i;const t=e.getBoundingClientRect().height,r=Math.floor(t-H-C);return Math.max(m,Math.min(i,r))}function x(e){return e===null?"auto":e<T?"compact":e<h?"default":"stats"}function w(){try{const e=sessionStorage.getItem(d)??sessionStorage.getItem(S);if(!e||e==="auto")return null;const t=Number(e);return Number.isFinite(t)?Math.min(i,Math.max(m,t)):null}catch{return null}}function f(e){try{if(e===null){sessionStorage.setItem(d,"auto");return}sessionStorage.setItem(d,String(Math.round(e)))}catch{}}function y(e){const[t,r]=a.useState(!1),s=a.useRef({y:0,h:_,max:i}),c=a.useRef(null),L=a.useCallback((n,o)=>{n.preventDefault(),n.currentTarget.setPointerCapture(n.pointerId);const u=n.currentTarget.closest(".s-agent-lane"),l=u?.querySelector(".s-agent-lane-cockpit")?.getBoundingClientRect().height??_,p=o??l,A=v(u);s.current={y:n.clientY,h:p,max:A},c.current=p,r(!0),document.body.classList.add("s-agent-lanes--resizing-summary")},[]),E=a.useCallback(()=>{r(n=>(n&&(document.body.classList.remove("s-agent-lanes--resizing-summary"),f(c.current)),!1))},[]);a.useEffect(()=>{if(!t)return;const n=u=>{const g=u.clientY-s.current.y,l=Math.min(s.current.max,Math.max(m,s.current.h+g));c.current=l,e(l)},o=()=>E();return window.addEventListener("pointermove",n),window.addEventListener("pointerup",o),window.addEventListener("pointercancel",o),()=>{window.removeEventListener("pointermove",n),window.removeEventListener("pointerup",o),window.removeEventListener("pointercancel",o)}},[E,t,e]);const M=a.useCallback(()=>{c.current=null,e(null),f(null)},[e]);return{beginResize:L,resetSummaryHeight:M,resizing:t}}function z({cockpitHeight:e,children:t}){const r=e!==null,s=x(e);return R.jsx("div",{className:`s-agent-lane-cockpit${r?` s-agent-lane-cockpit--sized s-agent-lane-cockpit--${s}`:""}`,style:r?{height:e,maxHeight:e}:void 0,children:t})}function N({onResizeStart:e,onReset:t,active:r}){return R.jsx("div",{role:"separator","aria-orientation":"horizontal","aria-label":"Resize tools panel",title:"Drag to resize tools panel · double-click to reset","aria-valuemin":m,"aria-valuemax":i,className:`s-agent-lane-split${r?" s-agent-lane-split--active":""}`,onPointerDown:e,onDoubleClick:s=>{s.preventDefault(),s.stopPropagation(),t()}})}export{z as AgentLaneCockpitPane,N as AgentLaneSummaryResizeHandle,T as LANE_COCKPIT_COMPACT_HEIGHT,h as LANE_COCKPIT_STATS_HEIGHT,_ as LANE_SUMMARY_HEIGHT_DEFAULT,i as LANE_SUMMARY_HEIGHT_MAX,m as LANE_SUMMARY_HEIGHT_MIN,d as LANE_SUMMARY_HEIGHT_STORAGE_KEY,v as cockpitHeightMaxForLane,x as cockpitHeightTier,w as readStoredLaneSummaryHeight,y as useLaneSummaryResize,f as writeStoredLaneSummaryHeight};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as t,j as m}from"./index-C8uS5szO.js";import{u as a}from"./Provider-5Hotn7NQ.js";import{A as n}from"./AgentLanesView-aAyC7lHf.js";import{l as c,m as l}from"./router-BKiMcYa7.js";import"./api-CaROe5_H.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-v5QLsOHV.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.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"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-C5cX8dkl.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";/* empty css */import"./tail-events-DQ46QBW1.js";import"./observe-CkfOxYx_.js";import"./terminal-sessions-Ch9aYlgi.js";import"./types-B0PlfpKc.js";import"./useEmbedHeadline-BL8wQawZ.js";import"./AgentAvatar-BIwg54Tj.js";import"./SpriteAvatar-BW1JzkDt.js";import"./CrewAvatar-CJhuqTsJ.js";import"./SessionObserve-DaqDhqDI.js";import"./bash-format-BRV5C6Gv.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./lane-tool-detail-Czggx8oM.js";import"./LaneToolHoverCard-C6YehJqD.js";import"./lane-observe-BD21P8BB.js";import"./lane-ask-display-B6iCAVcd.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"./terminal-96JWDYDL.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"./wrench-BsMTSeji.js";import"./external-link-RT4Ph-6-.js";import"./AgentFloorView-l2wNKFob.js";import"./AgentAdventures-NwTKeF0F.js";import"./ReplayClock-B7JLTp8A.js";import"./SproutActionSprite-DveCzg6l.js";/* empty css */import"./CrewSprite-hgpA3SWB.js";import"./agent-lanes-model-CX0wTcnF.js";import"./context-budget-DemtXu7E.js";import"./adventure-playback-DTfkhIc0.js";import"./AdventureScenery-D548O0x4.js";import"./adventure-habitats-v1-M1lcpTJh.js";import"./AdventureReader-ClMxT0e4.js";import"./floor-preview-text-HrORUJ7D.js";/* empty css */import"./book-open-BlJnpf2U.js";import"./scroll-text-DwC8r2g6.js";import"./ReplayLog-DZTpf2CW.js";import"./AdventureEvidence-Dzz9VbuE.js";import"./agent-lane-detail-Db7KyAlf.js";/* empty css */import"./arrow-up-right-Hn754ybA.js";/* empty css */import"./flag-CqdOxVkI.js";import"./pause-DWS7YGQ3.js";import"./play-D_Pggug4.js";import"./radio-C_jtwbFP.js";import"./SharedWorkFloor-yPWFLZwX.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-character-name-CqJPOlXb.js";import"./floor-message-passes-CJh9f8Jp.js";import"./shared-work-artifacts-4IIQXQfc.js";import"./floor-memory-YMM8AlLY.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"./agent-floor-actor-3v9drnxh.js";import"./SharedFloorCharacter-CSYG_t9t.js";import"./WorldCharacter-Dn4sIXNP.js";import"./RiggedWorkerCharacter-DNe731GE.js";import"./file-code-corner-D_Aptal2.js";import"./FloorReplay-BHo79HCD.js";import"./AgentFloorWorld-BDJmXl3C.js";/* empty css */import"./agent-floor-world-layout-hfMjuoui.js";import"./coffee-C_D9zooM.js";import"./git-branch-CA3cHKCI.js";/* empty css */import"./FloorTacticalHUD-Bngao6sn.js";import"./FloorSavedWork-2tjBoy06.js";import"./pin-DWlD1BOF.js";/* empty css */import"./FloorResourcesSheet-Djrgd_ZU.js";/* empty css */import"./synthetic-agent-routing-aduMYO7P.js";/* empty css */import"./FloorContextSheet-DV-SYA0K.js";import"./lane-roster-store-DzNHP392.js";import"./message-square-NmXWtWLR.js";import"./AgentLanesPreflight-pw2vMO3Q.js";import"./AgentLaneChrome-D9uJ4QY7.js";import"./AgentLaneCard-C6YmwPxQ.js";/* empty css */import"./AgentLaneSummaryResize-BBYBS3DO.js";import"./clipboard-e3fSpeo7.js";import"./agent-lane-card-model-l0stnU9N.js";import"./agent-lane-preview-B8lsQJOQ.js";import"./AgentLaneDetailSheet-KYckCBCX.js";import"./SlidePanel-Datu7XG4.js";import"./LaneTraceDetailSheet-mAhj7MJi.js";import"./LaneTraceEventFocus-WLNZZVi_.js";function p(r){return new URLSearchParams(window.location.search).get(r)?.trim()||null}function ro(){const{agents:r,navigate:o}=a(),e=t.useMemo(()=>c(),[]),s=t.useMemo(()=>l(),[]),i=t.useMemo(()=>({harnessFilter:p("harness"),projectFilter:p("project")}),[]);return m.jsx("div",{className:"s-agent-lanes-embed","data-scout-theme":!0,children:m.jsx(n,{navigate:o,agents:r,embedded:!0,profileId:e,laneSize:s,harnessFilter:i.harnessFilter,projectFilter:i.projectFilter})})}export{ro as AgentLanesEmbedScreen};
|
package/dist/client/assets/{AgentLanesPreflight-CCGBArIb.js → AgentLanesPreflight-pw2vMO3Q.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as d,j as s}from"./index-
|
|
1
|
+
import{r as d,j as s}from"./index-C8uS5szO.js";import{t as $}from"./time-Dhsh_2EG.js";const w=3,E=12;function z(e,n){return n===0&&(e.discovery==="loading"||e.recent==="loading")}function A(e){const n=e?.trim();return n?n.slice(0,13):null}function x(e){const n=e.lastEventAt;return typeof n=="number"&&Number.isFinite(n)&&n>0?n:e.mtimeMs}function D(e){return e.sessionId?.trim()||e.transcriptPath}function _(e){const n=e.max??E;if(e.discoveryPhase==="loading")return{cells:[],blindCells:Math.min(e.blindCells??w,n),identified:!1};const i=e.discovery?.transcripts??[],a=new Set,t=[];for(const l of i.filter(c=>{if(e.matchTranscript&&!e.matchTranscript(c))return!1;const r=e.now-x(c);return r>=0?r<=e.windowMs:!0}).sort((c,r)=>x(r)-x(c))){const c=D(l);if(!a.has(c)&&(a.add(c),t.push({key:c,source:l.source,sessionLabel:A(l.sessionId),project:l.project,cwd:l.cwd,lastActiveAt:x(l)}),t.length>=n))break}return{cells:t,blindCells:0,identified:!0}}function T(e){return e.sessionLabel?`${e.source}:${e.sessionLabel}`:e.source}const I=260,P=100;function B(e,n){const[i,a]=d.useState(e),[t,l]=d.useState(!1);return d.useEffect(()=>{if(e){a(!0),l(!1);return}if(!i)return;if(n<=0){a(!1),l(!1);return}l(!0);const c=setTimeout(()=>{a(!1),l(!1)},n);return()=>clearTimeout(c)},[e,n,i]),{visible:i,exiting:t}}function R(e,n){const i=d.useRef(Date.now()),[a,t]=d.useState({discoveryMs:null,recentMs:null,deckMs:null}),[l,c]=d.useState(0);return d.useEffect(()=>{t(r=>{const o=r.discoveryMs===null&&e.discovery!=="loading"?Date.now()-i.current:r.discoveryMs,m=r.recentMs===null&&e.recent!=="loading"?Date.now()-i.current:r.recentMs;return o===r.discoveryMs&&m===r.recentMs?r:{...r,discoveryMs:o,recentMs:m}})},[e.discovery,e.recent]),d.useEffect(()=>{n&&t(r=>r.deckMs===null?{...r,deckMs:Date.now()-i.current}:r)},[n]),d.useEffect(()=>{if(a.deckMs!==null)return;const r=()=>c(Date.now()-i.current);r();const o=setInterval(r,P);return()=>clearInterval(o)},[a.deckMs]),{...a,elapsedMs:l}}function N({seed:e,rows:n}){const i=d.useMemo(()=>{const a=[68,92,54,80,61,74];return Array.from({length:n},(t,l)=>a[(e+l)%a.length])},[n,e]);return s.jsx("div",{className:"s-lane-pre-bars","aria-hidden":"true",children:i.map((a,t)=>s.jsx("span",{className:"s-lane-pre-bar",style:{width:`${a}%`,animationDelay:`${e*110+t*90}ms`}},`${t}-${a}`))})}function S({cell:e,index:n,nowMs:i,style:a}){if(!e)return s.jsxs("div",{className:"s-lane-pre s-lane-pre--blind",style:a,"aria-hidden":"true",children:[s.jsxs("div",{className:"s-lane-pre-head",children:[s.jsx("span",{className:"s-lane-pre-ghost s-lane-pre-ghost--dot"}),s.jsx("span",{className:"s-lane-pre-ghost s-lane-pre-ghost--name"}),s.jsx("span",{className:"s-lane-pre-spacer"}),s.jsx("span",{className:"s-lane-pre-ghost s-lane-pre-ghost--meta"})]}),s.jsx(N,{seed:n,rows:6})]});const t=[e.project,e.cwd].find(l=>!!l)??"—";return s.jsxs("div",{className:"s-lane-pre",style:a,children:[s.jsxs("div",{className:"s-lane-pre-head",children:[s.jsx("span",{className:"s-lane-pre-dot","aria-hidden":"true"}),s.jsx("span",{className:"s-lane-pre-title",children:T(e)}),s.jsx("span",{className:"s-lane-pre-where",title:e.cwd??t,children:t}),s.jsx("span",{className:"s-lane-pre-spacer"}),s.jsx("span",{className:"s-lane-pre-age",children:$(e.lastActiveAt,i)})]}),s.jsx(N,{seed:n,rows:5})]})}function F({discovery:e,discoveryPhase:n,windowMs:i,nowMs:a,layout:t,gridColumns:l,laneWidthPx:c,matchTranscript:r}){const o=t==="grid",m=d.useMemo(()=>_({discovery:e,discoveryPhase:n,windowMs:i,now:a,matchTranscript:r}),[e,n,r,a,i]),h=m.identified?m.cells:Array.from({length:m.blindCells},()=>null);if(t==="none"||h.length===0)return s.jsx("div",{className:"s-agent-lanes-preflight-empty","aria-hidden":"true"});const p=h.map((f,b)=>s.jsx(S,{cell:f,index:b,nowMs:a,style:o?void 0:{width:`${c}px`,flex:"none"}},f?.key??`blind-${b}`));return o?s.jsx("div",{className:"s-agent-lanes-grid s-agent-lanes-grid--preflight","data-grid-columns":l,"aria-label":"Lane deck loading",children:p}):s.jsx("div",{className:"s-agent-lanes-body",children:s.jsx("section",{className:"s-agent-lanes-zone s-agent-lanes-zone--main",children:s.jsx("div",{className:"s-agent-lanes-scroll","aria-label":"Lane deck loading",children:p})})})}function y(e){return e==="ready"?"OK":e==="error"?"WARN":"RUN"}function j(e){return`s-lane-boot-step s-lane-boot-step--${e}`}function u(e,n){return`${e.toLocaleString()} ${n}${e===1?"":"s"}`}function g(e){return e===null?"":`${Math.round(e)}ms`}function K({loadState:e,sourceCount:n,processCount:i,eventCount:a,laneCount:t,horizonLabel:l,handedOff:c,exiting:r}){const o=R(e,c),m=e.discovery!=="loading"&&e.recent!=="loading",h=e.discovery==="ready"?`${u(n,"session source")} indexed`:e.discovery==="error"?"session source scan unavailable":"scanning local transcripts and harness processes",p=e.recent==="ready"?`${u(a,"recent event")} merged`:e.recent==="error"?"history replay unavailable; live signals remain enabled":`reading turns and tool output for the ${l} view`,f=t>0?`${u(t,"lane")} composed`:e.recent==="error"?`${u(a,"live signal")} in, no history`:a>0?`${u(a,"signal")} in, waiting on replay`:"waiting on first signals",b=e.discovery==="ready"?"done":e.discovery==="error"?"warn":"running",v=e.recent==="ready"?"done":e.recent==="error"?"warn":e.discovery==="loading"?"pending":"running",L=c?"done":e.recent==="loading"?"pending":"running",M=o.deckMs!==null?g(o.deckMs):o.elapsedMs<1e3?g(o.elapsedMs):`${(o.elapsedMs/1e3).toFixed(1)}s`,k=t>0;return s.jsxs("div",{className:["s-lane-boot",k?"s-lane-boot--bare":null,r?"s-lane-boot--exiting":null].filter(Boolean).join(" "),role:"status","aria-live":"polite","aria-busy":!m,children:[s.jsx("div",{className:"s-lane-boot-veil","aria-hidden":"true"}),s.jsxs("div",{className:"s-lane-boot-sheet",children:[s.jsxs("div",{className:"s-lane-boot-head",children:[s.jsx("span",{className:`s-lane-boot-dot${m?" s-lane-boot-dot--done":""}`,"aria-hidden":"true"}),s.jsx("span",{className:"s-lane-boot-lead",children:"Starting agent tail"}),s.jsxs("span",{className:"s-lane-boot-count",children:[n.toLocaleString()," sources"]}),s.jsxs("span",{className:"s-lane-boot-count",children:[i.toLocaleString()," live"]}),s.jsxs("span",{className:"s-lane-boot-count",children:[a.toLocaleString()," events"]}),t>0?s.jsxs("span",{className:"s-lane-boot-count",children:[t.toLocaleString()," lanes"]}):null,s.jsx("span",{className:"s-lane-boot-spacer"}),s.jsxs("span",{className:"s-lane-boot-meta",children:["lookback ",l]}),s.jsx("span",{className:"s-lane-boot-elapsed","aria-hidden":"true",children:M})]}),s.jsxs("div",{className:"s-lane-boot-log",children:[s.jsxs("div",{className:j(b),children:[s.jsx("span",{className:"s-lane-boot-state",children:y(e.discovery)}),s.jsx("strong",{className:"s-lane-boot-name",children:"discover sessions"}),s.jsx("code",{className:"s-lane-boot-detail",children:h}),s.jsx("span",{className:"s-lane-boot-timing",children:g(o.discoveryMs)})]}),s.jsxs("div",{className:j(v),children:[s.jsx("span",{className:"s-lane-boot-state",children:y(e.recent)}),s.jsx("strong",{className:"s-lane-boot-name",children:"replay recent tail"}),s.jsx("code",{className:"s-lane-boot-detail",children:p}),s.jsx("span",{className:"s-lane-boot-timing",children:g(o.recentMs)})]}),s.jsxs("div",{className:j(L),children:[s.jsx("span",{className:"s-lane-boot-state",children:c?"OK":"LIVE"}),s.jsx("strong",{className:"s-lane-boot-name",children:"assemble lanes"}),s.jsx("code",{className:"s-lane-boot-detail",children:f}),s.jsx("span",{className:"s-lane-boot-timing",children:g(o.deckMs)})]})]})]})]})}const G=Object.freeze(Object.defineProperty({__proto__:null,AgentLanesLoadingSheet:K,AgentLanesPreflightDeck:F,LANE_BOOT_EXIT_MS:I,useLaneBootVisibility:B},Symbol.toStringTag,{value:"Module"}));export{F as A,I as L,K as a,G as b,z as s,B as u};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r,j as o}from"./index-C8uS5szO.js";/* empty css */import{a as cn}from"./api-CaROe5_H.js";import{u as Vn}from"./tail-events-DQ46QBW1.js";import{i as _e,o as dn}from"./surface-activity-B1rgWB1i.js";import{u as Gn}from"./observe-CkfOxYx_.js";import{f as Kn}from"./terminal-sessions-Ch9aYlgi.js";import{n as un}from"./agent-state-DDhnFEEP.js";import{S as Un}from"./Provider-5Hotn7NQ.js";import{d as qn}from"./types-B0PlfpKc.js";import{u as Yn}from"./useEmbedHeadline-BL8wQawZ.js";import{A as Zn}from"./AgentAvatar-BIwg54Tj.js";import{h as Xn,S as Jn}from"./SessionObserve-DaqDhqDI.js";import{X as Qn,Y as fn,Z as et,_ as nt,$ as tt,a0 as Qe,a1 as st,a2 as at,a3 as rt,a4 as ot,a5 as it,a6 as Ce,a7 as lt,a8 as ct,a9 as dt,aa as mn,ab as ut,ac as ft,l as hn,m as gn}from"./router-BKiMcYa7.js";import{AgentFloorView as mt}from"./AgentFloorView-l2wNKFob.js";import{u as ht,s as gt,A as pt,a as Lt,L as yt}from"./AgentLanesPreflight-pw2vMO3Q.js";import{AgentLaneChrome as bt}from"./AgentLaneChrome-D9uJ4QY7.js";import{AgentLaneCard as vt}from"./AgentLaneCard-C6YmwPxQ.js";import{a as St}from"./agent-lane-card-model-l0stnU9N.js";import{c as kt}from"./agent-lane-detail-Db7KyAlf.js";import{i as xt,A as wt}from"./AgentLaneDetailSheet-KYckCBCX.js";import{LaneTraceDetailSheet as Et}from"./LaneTraceDetailSheet-mAhj7MJi.js";import{readStoredLaneSummaryHeight as Nt,useLaneSummaryResize as Rt,AgentLaneSummaryResizeHandle as jt}from"./AgentLaneSummaryResize-BBYBS3DO.js";import{A as he,l as X,k as Ct,m as pn,n as It,e as At,g as Tt,p as _t,r as Pt,d as Ln,D as Dt,h as Mt,i as zt}from"./agent-lanes-model-CX0wTcnF.js";import{i as Ot,c as $t,n as en}from"./keyboard-nav-CXfav14z.js";import{p as nn}from"./lane-roster-store-DzNHP392.js";function Pe(e){return[e.source,e.sessionId,e.ts,e.kind,e.summary].join("\0")}function Ft(e){const n=new Set,t=[];for(const s of e){const i=Pe(s);n.has(i)||(n.add(i),t.push(s))}return t}function Wt(e,n){return e.length<=n?e:[...e].sort((t,s)=>t.ts-s.ts).slice(e.length-n)}function Ht(e,n,t){const s=Pe(n);for(const l of e)if(Pe(l)===s)return e;const i=[...e,n];return i.length>t?i.slice(i.length-t):i}function Bt(e,n,t){return Wt(Ft([...n,...e]),t)}const Vt=500;function Ie(e){return typeof e=="number"&&Number.isFinite(e)&&e>0?Math.floor(e):null}function Gt(e){return JSON.stringify([Ie(e.recentLimit),e.includeTranscriptReplay,Ie(e.recentWindowMs),e.discoveryScope??null,Ie(e.discoveryLimit)])}function Kt(e,n){return e==="error"||n==="error"}function Ut(e,n){return n?Math.min(e,Vt):e}async function qt(e){const n=await e.load(!1);if(e.publish(n,"live"),e.markReady(),!e.includeTranscriptReplay)return{replay:"not-requested"};try{return e.publish(await e.load(!0),"replay"),{replay:"loaded"}}catch{return{replay:"failed"}}}function Yt(e){return e.discovery==="error"||e.recent==="error"?e.discoveryLoaded&&e.recentLoaded?"degraded":"blank":"none"}const Zt=500,Xt=6e4;function Jt(){return{generatedAt:Date.now(),processes:[],transcripts:[],totals:{total:0,scoutManaged:0,hudsonManaged:0,unattributed:0,transcripts:0}}}async function Qt(e,n,t){const s=new URLSearchParams({limit:String(e)});return n&&s.set("transcripts","true"),typeof t=="number"&&Number.isFinite(t)&&t>0&&s.set("windowMs",String(Math.floor(t))),(await cn(`/api/tail/recent?${s.toString()}`)).events??[]}function es(e,n){const t=new URLSearchParams;e&&t.set("scope",e),typeof n=="number"&&Number.isFinite(n)&&n>0&&t.set("limit",String(Math.floor(n)));const s=t.toString();return s?`/api/tail/discover?${s}`:"/api/tail/discover"}function ns(e){const n=e?.recentLimit??Zt,t=e?.enabled??!0,s=e?.discoveryIntervalMs??Xt,i=e?.includeTranscriptReplay??!1,l=e?.discoveryScope,f=e?.discoveryLimit,b=e?.recentWindowMs,u=e?.pauseWhenHidden??!1,d=Gt({recentLimit:n,includeTranscriptReplay:i,recentWindowMs:b,discoveryScope:l,discoveryLimit:f}),[m,c]=r.useState(null),[g,p]=r.useState([]),[v,w]=r.useState({discovery:"loading",recent:"loading",discoveryLoaded:!1,recentLoaded:!1}),P=r.useRef("loading"),L=r.useRef("idle"),R=r.useRef(null),C=r.useRef(null),S=r.useRef(0);Vn(y=>{p(k=>Ht(k,y,n))},t);const D=r.useCallback((y=!1)=>{if(!t||u&&!y&&!_e())return Promise.resolve();y&&(P.current="loading",w(j=>({...j,recent:"loading"})));const k=d,x=C.current;if(x?.key===k)return x.promise;const A=++S.current;L.current=i?"loading":"ready";let z;return z=qt({includeTranscriptReplay:i,load:j=>Qt(j?n:Ut(n,i),j,b),publish:(j,H)=>{if(A!==S.current)return;const V=()=>{p(F=>Bt(F,j,n))};H==="replay"?r.startTransition(V):V()},markReady:()=>{A===S.current&&(P.current="ready",w(j=>({...j,recent:"ready",recentLoaded:!0})))}}).then(j=>{A===S.current&&(i&&(L.current=j.replay==="failed"?"error":"ready"),j.replay!=="failed"&&(R.current=d))}).catch(()=>{A===S.current&&(P.current="error",i&&(L.current="error"),w(j=>({...j,recent:"error"})))}).finally(()=>{C.current?.promise===z&&(C.current=null)}),C.current={key:k,promise:z},z},[t,d,i,u,n,b]),I=r.useCallback(async(y=!1)=>{if(t&&!(u&&!y&&!_e())){y&&w(k=>({...k,discovery:"loading"}));try{const k=await cn(es(l,f));c(k),w(x=>({...x,discovery:"ready",discoveryLoaded:!0})),Kt(P.current,L.current)&&D()}catch{c(k=>k??Jt()),w(k=>({...k,discovery:"error"}))}}},[f,l,t,u,D]),M=r.useCallback(async()=>{await Promise.all([I(!0),D(!0)])},[I,D]);return r.useEffect(()=>{if(!t)return;let y=!1,k=!0;const x=()=>{y||I(k),k=!1};x();const A=setInterval(x,s),z=u?dn(x):null;return()=>{y=!0,clearInterval(A),z?.()}},[s,t,u,I]),r.useEffect(()=>{t||(S.current+=1,C.current=null,R.current=null,L.current="idle")},[t]),r.useEffect(()=>{t&&R.current!==d&&D(!0)},[t,d,D]),{discovery:m,events:g,loadState:v,refreshDiscovery:I,retryInitialLoad:M}}function ts({lanes:e,inspectedLaneId:n,onInspect:t,onHorizonChange:s,onTogglePin:i}){const[l,f]=r.useState(-1),b=r.useRef(new Map);r.useEffect(()=>{if(l<0)return;if(l>=e.length){f(e.length-1);return}const m=e[l];if(!m)return;const c=b.current.get(m.id);c?.scrollIntoView({block:"nearest",inline:"nearest"}),c?.focus()},[l,e]),r.useEffect(()=>{n||l>=e.length&&f(e.length>0?e.length-1:-1)},[l,n,e.length]);const u=r.useCallback((m,c)=>{c?b.current.set(m,c):b.current.delete(m)},[]);r.useEffect(()=>{const m=c=>{if(!document.querySelector(".s-agent-lanes")||Ot(c.target)||$t()||n||e.length===0)return;const g=Number(c.key)-1;if(!c.metaKey&&!c.ctrlKey&&!c.altKey&&g>=0&&g<he.length){c.preventDefault(),s(he[g].key);return}if(c.key==="ArrowDown"||c.key==="j"){c.preventDefault(),f(p=>en(p,e.length,1));return}if(c.key==="ArrowUp"||c.key==="k"){c.preventDefault(),f(p=>en(p,e.length,-1));return}if(c.key==="Home"||c.key==="g"&&!c.shiftKey){c.preventDefault(),f(0);return}if(c.key==="End"||c.key==="G"){c.preventDefault(),f(e.length-1);return}if(c.key==="Enter"||c.key==="i"){const p=l<0?0:l,v=e[p];if(!v)return;c.preventDefault(),f(p),t(v);return}if(c.key.toLowerCase()==="p"&&i){const p=l<0?0:l,v=e[p];if(!v)return;c.preventDefault(),f(p),i(v)}};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[l,n,e,s,t,i]);const d=r.useCallback((m,c)=>({"data-cursor":l===m?!0:void 0,tabIndex:l===m?0:-1,ref:g=>u(c,g),onFocus:()=>f(m)}),[l,u]);return{focusedIndex:l,getLaneFocusProps:d}}function ss(e){return e.trim().replace(/\/+$/u,"").split(/[\\/]/u).filter(Boolean).pop()?.trim()||null}function me(e){return e.trim().toLowerCase().replace(/['"]/gu,"").replace(/[^a-z0-9]+/gu,"-").replace(/^-+|-+$/gu,"")}function yn(e,n){if(!n)return!0;const t=me(n);return e.some(s=>{const i=s?.trim();if(!i)return!1;const l=i.toLowerCase(),f=ss(i);return l===n||me(i)===t||!!(f&&(f.toLowerCase()===n||me(f)===t))})}function as(e,n){const t=n?.trim().toLowerCase()||null,{agent:s,facts:i,source:l}=e;return yn([s.harness,s.definitionId,i?.attribution,l],t)}function rs(e,n){const t=n?.trim().toLowerCase()||null,{agent:s,facts:i,source:l}=e;return yn([s.project,s.projectRoot,s.cwd,i?.cwd,X(s,l)],t)}function os(e){return un(e.agent.state??null,e.agent)==="needs_attention"?!0:Xn(e.observe?.events??[])}function tn(e,n,t,s){return fn(t?.width??e.laneWidths[n.id],s??e.defaultLaneWidth)}function is(e,n){switch(e.kind){case"session":return n.filter(t=>t.id===e.sessionId);case"harness":return n.filter(t=>as(t,e.harness));case"project":return n.filter(t=>rs(t,e.projectPath));case"attention":return n.filter(t=>os(t));default:return[]}}function sn(e,n,t){n.has(t.lane.id)||(n.add(t.lane.id),e.push({key:t.slot?`${t.slot.id}:${t.lane.id}`:t.lane.id,lane:t.lane,widthPx:t.widthPx,zone:t.zone,position:t.position,slotId:t.slot?.id,laneDefId:t.laneDef?.id,isPinned:t.zone!=="main"}))}function Ae(e){return[...e].sort((n,t)=>{const s=et(n.zone,t.zone);return s!==0?s:n.position!==t.position?n.position-t.position:n.lane.id.localeCompare(t.lane.id)})}function ls(e){const{autoLanes:n,deck:t,defaultWidthTier:s}=e,i=new Set,l=[],f=[],b=[],u=new Map(t.laneDefs.map(g=>[g.id,g]));for(const g of Qn(t.slots)){const p=u.get(g.laneDefId);if(!p)continue;const v=is(p,n),w=g.zone==="pinned_left"?l:g.zone==="pinned_right"?b:f;for(const P of v)sn(w,i,{lane:P,zone:g.zone,position:g.position,widthPx:tn(t,P,g,s),slot:g,laneDef:p})}if(t.showAutoLanes){let g=0;for(const p of n)i.has(p.id)||(sn(f,i,{lane:p,zone:"main",position:g,widthPx:tn(t,p,void 0,s)}),g+=1)}const d=Ae(l),m=Ae(f),c=Ae(b);return{pinnedLeft:d,main:m,pinnedRight:c,flat:[...d,...m,...c]}}function cs(e){return e.slots.some(n=>n.laneDefId===tt)}function fe(e,n){const t=`harness:${me(n)}`;return e.slots.some(s=>s.laneDefId===t)}function ds(e,n){const t=nt(n);return e.slots.some(s=>s.laneDefId===t)}function us(e,n,t){const[s,i]=r.useState(()=>Qe(e,n));r.useEffect(()=>{i(Qe(e,n))},[n,e]);const l=r.useCallback(L=>{st(L),i(L)},[]),f=r.useMemo(()=>ls({autoLanes:t,deck:s,defaultWidthTier:n}),[t,s,n]),b=r.useCallback((L,R="pinned_left")=>{l(at(s,{laneId:L.id,title:X(L.agent,L.source),zone:R,width:s.laneWidths[L.id]}))},[s,l]),u=r.useCallback(L=>{l(rt(s,L))},[s,l]),d=r.useCallback((L,R)=>{l(ot(s,L,R))},[s,l]),m=r.useCallback(L=>{l(it(s,L))},[s,l]),c=r.useCallback((L,R)=>{l(Ce(s,{kind:"harness",title:R??`${L} sessions`,harness:L,zone:"pinned_left",width:s.defaultLaneWidth}))},[s,l]),g=r.useCallback((L,R)=>{const C=L.trim();if(!C)return;const S=R?.trim()||C.split(/[\\/]/u).filter(Boolean).pop()||C;l(Ce(s,{kind:"project",title:S,projectPath:C,zone:"main",width:s.defaultLaneWidth}))},[s,l]),p=r.useCallback(()=>{l(Ce(s,{kind:"attention",title:"Needs attention",zone:"pinned_left",width:"sm"}))},[s,l]),v=r.useCallback(()=>{l(lt(s))},[s,l]),w=r.useCallback(L=>ct(s,L),[s]),P=r.useCallback(L=>dt(s,L),[s]);return{deck:s,layout:f,pinLane:b,unpinLane:u,setLaneWidth:d,setDefaultLaneWidth:m,addHarnessLane:c,addAttentionLane:p,addProjectLane:g,clearPins:v,isPinned:w,pinnedZone:P}}function fs(e){const[n,t]=r.useState(null),s=r.useRef({laneId:"",x:0,width:512}),i=r.useRef(512),l=r.useCallback((u,d,m)=>{d.preventDefault(),d.stopPropagation(),d.currentTarget.setPointerCapture(d.pointerId),s.current={laneId:u,x:d.clientX,width:m},i.current=m,t(u),document.body.classList.add("s-agent-lanes--resizing-width")},[]),f=r.useCallback(()=>{t(u=>{if(u){document.body.classList.remove("s-agent-lanes--resizing-width");const d=mn(i.current);e(s.current.laneId,d.tier??d.px)}return null})},[e]);r.useEffect(()=>{if(!n)return;const u=m=>{const c=m.clientX-s.current.x;i.current=Math.min(ut,Math.max(ft,s.current.width+c));const g=document.querySelector(`[data-lane-id="${s.current.laneId}"]`);g&&g.style.setProperty("--lane-width",`${i.current}px`)},d=()=>f();return window.addEventListener("pointermove",u),window.addEventListener("pointerup",d),window.addEventListener("pointercancel",d),()=>{window.removeEventListener("pointermove",u),window.removeEventListener("pointerup",d),window.removeEventListener("pointercancel",d)}},[f,n]);const b=r.useCallback((u,d)=>{e(u,d),document.querySelector(`[data-lane-id="${u}"]`)?.style.removeProperty("--lane-width")},[e]);return{beginResize:l,resetLaneWidth:b,resizingLaneId:n}}const an=[{key:"lanes",label:"lanes"},{key:"grid",label:"grid"},{key:"floor",label:"floor"}],ms=[{key:"auto",label:"auto"},{key:"2",label:"2"},{key:"3",label:"3"},{key:"4",label:"4"}];function hs(e,n=!1){return e==="grid"?"grid":e==="floor"?n?"lanes":"floor":"lanes"}function gs(e){return e==="2"||e==="3"||e==="4"?e:"auto"}function ps(e){return e?an.filter(n=>n.key!=="floor"):an}const bn="openscout:agent-lanes-horizon",vn="openscout:agent-lanes-layout",Sn="openscout:agent-lanes-grid-columns",kn="openscout:agent-lanes-technical-rollup",Ls=`${kn}:lane:`,ys="openscout:agent-lanes-scroll",bs=96,vs=160,Ss=6e4,ks=6e4,xs=3e4,ws=3e4,Es=3e4,Ns=12e4,Rs=["pinned-left","main","pinned-right"];function rn(){return!_e()}function xn(e,n){return`${ys}:${e}:${n}`}function js(e,n){try{const t=sessionStorage.getItem(xn(e,n)),s=t?Number.parseFloat(t):0;return Number.isFinite(s)&&s>0?s:0}catch{return 0}}function Cs(e,n,t){try{sessionStorage.setItem(xn(e,n),String(Math.max(0,Math.round(t))))}catch{}}function Is(){try{const e=sessionStorage.getItem(bn);if(e&&he.some(n=>n.key===e))return e}catch{}return Dt}function As(e){try{const n=sessionStorage.getItem(vn);return hs(n,e)}catch{}return"lanes"}function on(e){const n=As(e);return n==="floor"?"lanes":n}function Ts(){try{return gs(sessionStorage.getItem(Sn))}catch{return"auto"}}function _s(){try{const e=sessionStorage.getItem(kn);if(e==="0")return!1;if(e==="1")return!0}catch{}return null}function wn(e){return`${Ls}${encodeURIComponent(e)}`}function ln(e){try{const n=sessionStorage.getItem(wn(e));if(n==="0")return!1;if(n==="1")return!0}catch{}return _s()??!1}function Ps(e,n){try{sessionStorage.setItem(wn(e),n?"1":"0")}catch{}}function Ds(e,n){const t=r.useRef(new Map),s=r.useRef({}),i=r.useCallback((u,d=t.current.get(u))=>{if(!d)return;const m=s.current[u]??js(e,u);if(m<=0)return;const c=Math.max(0,d.scrollWidth-d.clientWidth),g=Math.min(m,c);Math.abs(d.scrollLeft-g)>1&&(d.scrollLeft=g)},[e]),l=r.useCallback(()=>{for(const u of Rs)i(u)},[i]);r.useLayoutEffect(()=>{l();const u=window.requestAnimationFrame(l);return()=>window.cancelAnimationFrame(u)},[e,l,n]);const f=r.useCallback((u,d)=>{if(!d){t.current.delete(u);return}t.current.set(u,d),i(u,d)},[i]);return{handleLaneScroll:r.useCallback((u,d)=>{const m=d.currentTarget.scrollLeft;s.current[u]=m,Cs(e,u,m)},[e]),setLaneScrollNode:f}}function Ms({issue:e}){const n=e.agentNames?.length?e.agentNames.join(", "):e.agentIds?.join(", "),t=e.transcriptPaths?.join(" · "),s=[n,t].filter(Boolean).join(" · ");return o.jsxs("li",{className:"s-agent-lanes-issues-item",children:[o.jsx("span",{className:"s-agent-lanes-issues-kind",children:e.kind.replaceAll("_"," ")}),o.jsx("span",{className:"s-agent-lanes-issues-message",children:e.message}),s?o.jsx("span",{className:"s-agent-lanes-issues-detail",children:s}):null]})}function zs({loadState:e,onRetry:n}){const t=[e.discovery==="error"?"session discovery":"",e.recent==="error"?"recent history":""].filter(Boolean).join(" and "),s=e.recent==="error"?"Recent activity could not be loaded":"Session discovery could not be completed";return o.jsx("div",{className:"s-agent-lanes-empty s-agent-lanes-empty--degraded",role:"alert",children:o.jsxs("div",{className:"s-agent-lanes-empty-card",children:[o.jsxs("div",{className:"s-agent-lanes-empty-rail","aria-hidden":"true",children:[o.jsx("span",{}),o.jsx("span",{}),o.jsx("span",{})]}),o.jsxs("div",{className:"s-agent-lanes-empty-copy",children:[o.jsx("span",{className:"s-agent-lanes-empty-kicker",children:"Tail incomplete"}),o.jsx("h2",{children:s}),o.jsxs("p",{children:["Scout could not finish ",t||"the tail scan",", so this is not being treated as a quiet interval."]}),o.jsx("p",{className:"s-agent-lanes-empty-secondary",children:"Live events can still arrive while Scout retries."})]}),o.jsx("div",{className:"s-agent-lanes-empty-actions",children:o.jsx("button",{type:"button",onClick:n,children:"Retry tail scan"})})]})})}function Os({activeFilterLabel:e,horizon:n,horizonLabel:t,showAutoLanes:s,onHorizonChange:i,onAddAttentionLane:l,onAddCodexLane:f,sourceCount:b,eventCount:u,degraded:d=!1,onRetry:m}){const c=!!e,g=c?"No matching lanes":s?`No activity in the last ${t}`:"No pinned lanes",p=c?`${e} has no activity in the last ${t}.`:s?`Scout checked ${b.toLocaleString()} session source${b===1?"":"s"} and ${u.toLocaleString()} recent tail event${u===1?"":"s"}; nothing is active in this interval.`:"Automatic lanes are off, and this deck has no pinned sessions.",v=d?"The last tail refresh failed, so this reading is from the previous scan and may be behind.":s?"Scout will keep listening. New turns and tool output will appear here automatically.":"Pin a session lane or turn automatic lanes back on to populate the deck.",w=n==="5m"?"30m":n==="24h"?null:"24h";return o.jsx("div",{className:"s-agent-lanes-empty",role:"status","aria-live":"polite",children:o.jsxs("div",{className:"s-agent-lanes-empty-card",children:[o.jsxs("div",{className:"s-agent-lanes-empty-rail","aria-hidden":"true",children:[o.jsx("span",{}),o.jsx("span",{}),o.jsx("span",{})]}),o.jsxs("div",{className:"s-agent-lanes-empty-copy",children:[o.jsx("span",{className:"s-agent-lanes-empty-kicker",children:d?"Tail refresh behind":c?"Filter checked":s?"Tail scanned":"Lane deck ready"}),o.jsx("h2",{children:g}),o.jsx("p",{children:p}),o.jsx("p",{className:"s-agent-lanes-empty-secondary",children:v})]}),o.jsxs("div",{className:"s-agent-lanes-empty-actions",children:[d&&m?o.jsx("button",{type:"button",onClick:m,children:"Retry tail scan"}):null,w?o.jsxs("button",{type:"button",onClick:()=>i(w),children:["Look back ",pn(w)]}):null,o.jsx("button",{type:"button",onClick:l,children:"Show attention"}),o.jsx("button",{type:"button",onClick:f,children:"Pin Codex sessions"})]})]})})}function $s({lane:e,widthPx:n,laneTitle:t,pinned:s,laneWidth:i,defaultWidth:l,isNew:f,nowMs:b,traceWindowMs:u,traceWindowLabel:d,summaryHeight:m,onSummaryResizeStart:c,onSummaryResizeReset:g,summaryResizing:p,onInspect:v,onTraceEventSelect:w,onTogglePin:P,onWidthChange:L,onWidthResizeStart:R,widthResizing:C,focusProps:S,operatorName:D,grid:I=!1}){const{agent:M,observe:y,source:k}=e,x=zt(y),A=!!y,z=x?" s-agent-lane--live":"",j=f?" s-agent-lane--new":"",[H,V]=r.useState(!0),[F,J]=r.useState(()=>ln(e.id)),Q=r.useRef(e.id);r.useEffect(()=>{if(Q.current!==e.id){Q.current=e.id,J(ln(e.id));return}Ps(e.id,F)},[F,e.id]);const Le=S?.ref,G=S?{"data-cursor":S["data-cursor"],tabIndex:S.tabIndex,onFocus:S.onFocus}:void 0,K=()=>o.jsx("section",{className:"s-agent-lane-trace","aria-label":`${X(M,k)} trace`,children:o.jsx("div",{className:"s-agent-lane-body",children:A?o.jsx(Jn,{data:y??void 0,agentId:e.source==="scout"?M.id:void 0,sessionId:M.harnessSessionId,showRail:!1,variant:"lane",nowMs:b,traceWindowMs:u,traceWindowLabel:d,laneCollapseTechnicalEvents:F,onLaneCollapseTechnicalEventsChange:J,laneOperatorName:D,onLaneEventSelect:W=>w(e,W)}):o.jsx("div",{className:"s-agent-lane-empty",children:"Waiting for trace activity…"})})}),O=r.useMemo(()=>St(e,{isLive:x,nowMs:b}),[e,x,b]),U=r.useMemo(K,[A,y,e.source,M.id,M.harnessSessionId,b,u,d,F,D,w,e]);return o.jsxs("article",{ref:Le,"data-lane-id":e.id,className:`s-agent-lane${I?" s-agent-lane--grid":""}${z}${j}${s?" s-agent-lane--pinned":""}${S?.["data-cursor"]?" s-agent-lane--cursor":""}`,style:I?void 0:{"--lane-width":`${n}px`},...G,children:[o.jsx(bt,{title:t,width:i,defaultWidth:l,pinned:s,onTogglePin:P,onWidthChange:L,onResizeStart:R,resizing:C,statusLabel:Ln(M,k),live:x,widthControls:!I}),o.jsx(vt,{model:O,avatar:o.jsx(Zn,{agent:M,placement:"row",size:44,presence:!1,tile:!1}),collapsed:H,cockpitHeight:H?void 0:m,onToggleCollapsed:()=>V(W=>!W),onOpen:()=>v(e)}),!H&&o.jsx(jt,{onResizeStart:c,onReset:g,active:p}),U]})}function Fs({navigate:e,agents:n,data:t,embedded:s=!1,laneSize:i="lg",profileId:l,harnessFilter:f,projectFilter:b}){Yn("Lanes",s);const u=r.useContext(Un),d=t?.agents??n??u?.agents??[],m=t?.operatorName?.trim()||u?.onboarding?.operatorName?.trim()||void 0,c=l??hn(),g=i??gn(),p=!s&&u?.route.view==="ops"&&u.route.mode==="world",[v,w]=r.useState(Date.now()),[P,L]=r.useState("4h"),[R,C]=r.useState(Is),[S,D]=r.useState(()=>p?"floor":on(s)),[I,M]=r.useState(Ts),y=p,k=!p&&S==="grid",x=y?P:R,[A,z]=r.useState(Nt),[j,H]=r.useState([]),{beginResize:V,resetSummaryHeight:F,resizing:J}=Rt(z),Q=r.useCallback(a=>V(a,A),[V,A]),Le=Mt(),G=Ct(x),K=ns({enabled:!t,includeTranscriptReplay:!0,discoveryIntervalMs:s?Ss:ks,recentLimit:Le,recentWindowMs:G,discoveryLimit:s?bs:vs,pauseWhenHidden:!0}),O=t?.discovery??K.discovery,U=t?.tailEvents??K.events,W=t?.loadState??K.loadState,De=t?.retryInitialLoad??K.retryInitialLoad,Me=t?.terminalSessions??j,En={view:"ops",mode:p?"world":"lanes"},q=pn(x),ze=s?xs:1e4,Oe=s?ws:1e4;r.useEffect(()=>{const a=setInterval(()=>{rn()||w(Date.now())},ze);return()=>clearInterval(a)},[ze]),r.useEffect(()=>{if(t)return;let a=!1;const h=async()=>{if(!rn())try{const Re=await Kn({includeDiscovered:!1});a||H(Re)}catch{a||H([])}};h();const N=setInterval(()=>{h()},Oe),_=dn(()=>{h()});return()=>{a=!0,clearInterval(N),_()}},[t,Oe]),r.useEffect(()=>{try{sessionStorage.setItem(bn,R)}catch{}},[R]),r.useEffect(()=>{D(p?"floor":a=>a==="floor"?on(s):a)},[p,s]),r.useEffect(()=>{if(S!=="floor")try{sessionStorage.setItem(vn,S)}catch{}},[S]),r.useEffect(()=>{try{sessionStorage.setItem(Sn,I)}catch{}},[I]);const Nn=r.useRef(It()),$e=r.useRef(""),[se,Fe]=r.useState(()=>new Set),[ye,We]=r.useState(null),Rn=r.useMemo(()=>d.filter(a=>At(a,v,x)),[d,v,x]),jn=Gn(Rn,{enabled:!t,activeIntervalMs:s?Es:void 0,idleIntervalMs:s?Ns:void 0,pauseWhenHidden:!0}),He=t?.observeCache??jn,Be=Yt(W),Ve=Be==="blank",Cn=Be==="degraded",Ge=O?.totals.transcripts??O?.transcripts?.length??0;r.useEffect(()=>{if(se.size===0)return;const a=setTimeout(()=>Fe(new Set),900);return()=>clearTimeout(a)},[se]);const{lanes:ae,issues:$,freshLaneIds:be}=r.useMemo(()=>{const a=Tt({transcripts:O?.transcripts??[],tailEvents:U,processes:O?.processes??[],scoutAgents:d,terminalSessions:Me,observeCache:He,now:v,workingOnly:!0,horizon:x}),h=_t(a.lanes,Nn.current),N=[...Pt(O),...a.issues];return{lanes:h.lanes,issues:N,freshLaneIds:h.newLaneIds}},[O,U,d,Me,He,v,x]);r.useEffect(()=>{const a=$.map(h=>`${h.id}\0${h.message}`).join(`
|
|
2
|
+
`);a!==$e.current&&($e.current=a,$.length!==0&&console.warn(`[agent-lanes] ${$.length} roster issue${$.length===1?"":"s"}`,$))},[$]),r.useEffect(()=>{be.length!==0&&Fe(a=>{const h=new Set(a);for(const N of be)h.add(N);return h})},[be.join("\0")]);const ee=r.useMemo(()=>ae.find(a=>a.id===ye)??null,[ye,ae]),ve=r.useMemo(()=>ae.filter(a=>Hs(a,{harnessFilter:f,projectFilter:b})),[ae,f,b]),In=r.useCallback(a=>Bs(a,{harnessFilter:f,projectFilter:b}),[f,b]),{deck:T,layout:E,pinLane:re,unpinLane:oe,setLaneWidth:Se,addHarnessLane:ne,addAttentionLane:Ke,addProjectLane:An,clearPins:Tn,isPinned:ie}=us(c,g,ve),{beginResize:Ue,resizingLaneId:qe}=fs(Se),ke=r.useMemo(()=>Vs({harnessFilter:f,projectFilter:b}),[f,b]),xe=r.useMemo(()=>ee?kt(ee):null,[ee]),_n=r.useMemo(()=>xe?ds(T,xe):!1,[T,xe]),Pn=r.useMemo(()=>[E.pinnedLeft,E.main,E.pinnedRight].map(a=>a.map(h=>`${h.key}:${h.widthPx}`).join(",")).join("/"),[E.main,E.pinnedLeft,E.pinnedRight]),{handleLaneScroll:Y,setLaneScrollNode:Z}=Ds(c,Pn),Dn=r.useCallback(a=>{Z("pinned-left",a)},[Z]),Mn=r.useCallback(a=>{Z("main",a)},[Z]),zn=r.useCallback(a=>{Z("pinned-right",a)},[Z]),On=r.useCallback(a=>{Y("pinned-left",a)},[Y]),$n=r.useCallback(a=>{Y("main",a)},[Y]),Fn=r.useCallback(a=>{Y("pinned-right",a)},[Y]),te=E.flat,we=E.pinnedLeft.length+E.pinnedRight.length,le=y?ve.length:te.length,ce=ht(gt(W,le),Ve?0:yt);r.useEffect(()=>{if(y)return;const a=te.map(h=>{const{lane:N}=h;return{id:N.id,label:X(N.agent,N.source),statusLabel:Ln(N.agent,N.source),tone:un(N.agent.state,N.agent),agentId:xt(N.agent)?void 0:N.agent.id,updatedAt:N.lastActiveAt>0?N.lastActiveAt:void 0}});nn(a)},[te,y]),r.useEffect(()=>()=>nn(null),[]);const[Ye,Ee]=r.useState(null),Ne=r.useCallback(a=>{We(a.id)},[]),Ze=r.useCallback((a,h)=>{Ee({lane:a,event:h})},[]),Wn=r.useCallback(a=>{const h=a.observe?.events.at(-1);h&&Ee({lane:a,event:h})},[]),Hn=r.useCallback(a=>{ie(a.id)?oe(a.id):re(a)},[ie,re,oe]),{getLaneFocusProps:Xe}=ts({lanes:te.map(a=>a.lane),inspectedLaneId:ye,onInspect:Ne,onHorizonChange:C,onTogglePin:Hn}),[de,B]=r.useState(!1),Je=r.useRef(null);r.useEffect(()=>{if(!de)return;const a=h=>{Je.current?.contains(h.target)||B(!1)};return window.addEventListener("pointerdown",a),()=>window.removeEventListener("pointerdown",a)},[de]);const ue=r.useCallback((a,h,N=!1)=>{const{lane:_}=a,Re=X(_.agent,_.source),Bn=T.laneWidths[_.id]??mn(a.widthPx).tier??a.widthPx;return o.jsx($s,{lane:_,widthPx:a.widthPx,laneTitle:Re,pinned:a.isPinned,laneWidth:Bn,defaultWidth:T.defaultLaneWidth,isNew:se.has(_.id),nowMs:v,traceWindowMs:G,traceWindowLabel:q,summaryHeight:A,onSummaryResizeStart:Q,onSummaryResizeReset:F,summaryResizing:J,onInspect:Ne,onTraceEventSelect:Ze,onTogglePin:()=>{ie(_.id)?oe(_.id):re(_)},onWidthChange:je=>Se(_.id,je),onWidthResizeStart:je=>Ue(_.id,je,a.widthPx),widthResizing:qe===_.id,focusProps:Xe(h,_.id),operatorName:m,grid:N},a.key)},[Ue,T.defaultLaneWidth,T.laneWidths,Xe,Q,q,Ne,Ze,ie,m,se,v,re,F,qe,Se,A,J,G,oe]);return o.jsxs("div",{className:`s-agent-lanes${s?" s-agent-lanes--embedded s-agent-lanes--low-motion":""}`,"data-lane-profile":c,"data-lane-layout":y?"floor":S,"data-lanes-deck-version":"1",children:[o.jsxs("div",{className:"s-agent-lanes-bar",children:[o.jsxs("div",{className:"s-agent-lanes-bar-leading",children:[o.jsx("div",{className:"s-agent-lanes-title",children:y?"World":"Agent Lanes"}),o.jsxs("div",{className:"s-agent-lanes-meta","aria-label":"Lane deck status",children:[o.jsxs("span",{className:"s-agent-lanes-meta-stat",children:[le," ",y?"actors":"live"]}),!y&&we>0?o.jsxs("span",{className:"s-agent-lanes-meta-stat",children:[we," pinned"]}):null,o.jsx("span",{className:"s-agent-lanes-meta-stat",children:y?`history 15m · actors ${q}`:`trace ${q}`}),ke?o.jsx("span",{className:"s-agent-lanes-meta-filter",children:ke}):null,o.jsxs("span",{className:"s-agent-lanes-meta-detail",children:["deck v1 · ",c]})]})]}),o.jsxs("div",{className:"s-agent-lanes-bar-controls",children:[o.jsx("div",{className:"s-agent-lanes-layouts",role:"group","aria-label":"Lane layout",children:ps(s).map(a=>o.jsx("button",{type:"button",className:`s-agent-lanes-horizon${S===a.key?" s-agent-lanes-horizon--on":""}`,"aria-pressed":a.key==="floor"?y:!y&&S===a.key,onClick:()=>{D(a.key),a.key==="floor"?e({view:"ops",mode:"world"}):p&&e({view:"ops",mode:"lanes"})},children:a.label},a.key))}),k?o.jsx("div",{className:"s-agent-lanes-grid-density",role:"group","aria-label":"Grid columns",children:ms.map(a=>o.jsx("button",{type:"button",className:`s-agent-lanes-horizon${I===a.key?" s-agent-lanes-horizon--on":""}`,"aria-pressed":I===a.key,title:a.key==="auto"?"Fit columns to the available width":`${a.key} columns`,onClick:()=>M(a.key),children:a.label},a.key))}):null,o.jsxs("div",{className:"s-agent-lanes-deck-menu",ref:Je,hidden:y,children:[o.jsx("button",{type:"button",className:"s-agent-lanes-deck-btn","aria-expanded":de,onClick:()=>B(a=>!a),children:"+ Lane"}),de?o.jsxs("div",{className:"s-agent-lanes-deck-popover",role:"menu",children:[o.jsx("button",{type:"button",role:"menuitem",className:"s-agent-lanes-deck-item",onClick:()=>{Ke(),B(!1)},disabled:cs(T),children:"Needs attention"}),o.jsx("button",{type:"button",role:"menuitem",className:"s-agent-lanes-deck-item",onClick:()=>{ne("codex","Codex sessions"),B(!1)},disabled:fe(T,"codex"),children:"Codex sessions"}),o.jsx("button",{type:"button",role:"menuitem",className:"s-agent-lanes-deck-item",onClick:()=>{ne("claude","Claude sessions"),B(!1)},disabled:fe(T,"claude"),children:"Claude sessions"}),o.jsx("button",{type:"button",role:"menuitem",className:"s-agent-lanes-deck-item",onClick:()=>{ne("grok","Grok sessions"),B(!1)},disabled:fe(T,"grok"),children:"Grok sessions"}),o.jsx("button",{type:"button",role:"menuitem",className:"s-agent-lanes-deck-item",onClick:()=>{ne("kimi","Kimi sessions"),B(!1)},disabled:fe(T,"kimi"),children:"Kimi sessions"}),o.jsx("button",{type:"button",role:"menuitem",className:"s-agent-lanes-deck-item s-agent-lanes-deck-item--danger",onClick:()=>{Tn(),B(!1)},disabled:we===0,children:"Clear pinned lanes"})]}):null]}),o.jsx("div",{className:"s-agent-lanes-horizons",role:"group","aria-label":y?"Map activity window":"Activity window",children:he.map((a,h)=>o.jsx("button",{type:"button",className:`s-agent-lanes-horizon${x===a.key?" s-agent-lanes-horizon--on":""}`,"aria-pressed":x===a.key,title:`${a.label} window (${h+1})`,onClick:()=>y?L(a.key):C(a.key),children:a.label},a.key))})]})]}),t==null&&$.length>0?o.jsxs("div",{className:"s-agent-lanes-issues",role:"status","aria-live":"polite",children:[o.jsxs("div",{className:"s-agent-lanes-issues-head",children:[o.jsx("span",{className:"s-agent-lanes-issues-badge",children:"Roster issues"}),o.jsxs("span",{className:"s-agent-lanes-issues-meta",children:[$.length," fleet/transcript warning",$.length===1?"":"s"," — lanes follow tail, not agent registry"]})]}),o.jsx("ul",{className:"s-agent-lanes-issues-list",children:$.map(a=>o.jsx(Ms,{issue:a},a.id))})]}):null,le===0?ce.visible?o.jsx(pt,{discovery:O,discoveryPhase:W.discovery,windowMs:G,nowMs:v,layout:y?"none":k?"grid":"scroll",gridColumns:I,laneWidthPx:fn(T.defaultLaneWidth,T.defaultLaneWidth),matchTranscript:In}):Ve?o.jsx(zs,{loadState:W,onRetry:()=>{De()}}):o.jsx(Os,{activeFilterLabel:ke,horizon:R,horizonLabel:q,showAutoLanes:T.showAutoLanes,onHorizonChange:C,onAddAttentionLane:Ke,onAddCodexLane:()=>ne("codex","Codex sessions"),sourceCount:Ge,eventCount:U.length,degraded:Cn,onRetry:()=>{De()}}):y?o.jsx(mt,{lanes:ve,now:v,onOpenTrace:Wn,railLedger:!0,operatorName:m}):k?o.jsx("div",{className:"s-agent-lanes-grid","data-grid-columns":I,role:"listbox","aria-label":"Agent lane grid",children:te.map((a,h)=>ue(a,h,!0))}):o.jsxs("div",{className:"s-agent-lanes-body",children:[E.pinnedLeft.length>0?o.jsxs("section",{className:"s-agent-lanes-zone s-agent-lanes-zone--pinned-left","aria-label":"Pinned lanes",children:[o.jsx("div",{className:"s-agent-lanes-zone-label",children:"Pinned"}),o.jsx("div",{ref:Dn,className:"s-agent-lanes-scroll",role:"listbox","aria-label":"Pinned agent lanes",onScroll:On,children:E.pinnedLeft.map((a,h)=>ue(a,h))})]}):null,E.main.length>0?o.jsxs("section",{className:"s-agent-lanes-zone s-agent-lanes-zone--main","aria-label":"Active lanes",children:[E.pinnedLeft.length>0?o.jsx("div",{className:"s-agent-lanes-zone-label",children:"Live"}):null,o.jsx("div",{ref:Mn,className:"s-agent-lanes-scroll",role:"listbox","aria-label":"Active agent lanes",onScroll:$n,children:E.main.map((a,h)=>ue(a,E.pinnedLeft.length+h))})]}):null,E.pinnedRight.length>0?o.jsxs("section",{className:"s-agent-lanes-zone s-agent-lanes-zone--pinned-right","aria-label":"Pinned right lanes",children:[o.jsx("div",{className:"s-agent-lanes-zone-label",children:"Pinned"}),o.jsx("div",{ref:zn,className:"s-agent-lanes-scroll",role:"listbox","aria-label":"Pinned right agent lanes",onScroll:Fn,children:E.pinnedRight.map((a,h)=>ue(a,E.pinnedLeft.length+E.main.length+h))})]}):null]}),ce.visible?o.jsx(Lt,{loadState:W,sourceCount:Ge,processCount:O?.processes.length??0,eventCount:U.length,laneCount:le,horizonLabel:q,handedOff:ce.exiting,exiting:ce.exiting}):null,ee&&o.jsx(wt,{lane:ee,navigate:e,returnRoute:En,navigationEnabled:t==null,onClose:()=>We(null),onPinProject:An,projectPinned:_n}),Ye&&o.jsx(Et,{target:Ye,onClose:()=>Ee(null)})]})}function ge(e){const n=e?.trim().toLowerCase();return n||null}function Te(e){return e.trim().toLowerCase().replace(/['"]/gu,"").replace(/[^a-z0-9]+/gu,"-").replace(/^-+|-+$/gu,"")}function Ws(e){return e.trim().replace(/\/+$/u,"").split(/[\\/]/u).filter(Boolean).pop()?.trim()||null}function pe(e,n){if(!n)return!0;const t=Te(n);return e.some(s=>{const i=s?.trim();if(!i)return!1;const l=i.toLowerCase(),f=Ws(i);return l===n||Te(i)===t||!!(f&&(f.toLowerCase()===n||Te(f)===t))})}function Hs(e,n){const t=ge(n.harnessFilter),s=ge(n.projectFilter),{agent:i,facts:l,source:f}=e;return pe([i.harness,i.definitionId,l?.attribution,f],t)&&pe([i.project,i.projectRoot,i.cwd,l?.cwd,X(i,f)],s)}function Bs(e,n){return pe([e.harness,e.source],ge(n.harnessFilter))&&pe([e.project,e.cwd],ge(n.projectFilter))}function Vs(e){return[e.harnessFilter?.trim()?`harness ${e.harnessFilter.trim()}`:"",e.projectFilter?.trim()?`project ${e.projectFilter.trim()}`:""].filter(Boolean).join(" · ")}const Gs=qn({id:"lanes",label:"Agent Lanes",route:{view:"ops",mode:"lanes"},webPath:"/ops/lanes",screen:"AgentLanesView",embed:{path:"/embed/agent-lanes",aliases:["/ops/lanes/embed","/embed/lanes","/embed/traces"],profile:"macos.lanes",rootClassName:"s-agent-lanes-embed",chrome:{showSecondaryNav:!1,showPageStatusBar:!1},hosts:{macos:!0},resolveEmbedProps:e=>({profileId:hn(),laneSize:gn(),harnessFilter:e.get("harness")?.trim()||null,projectFilter:e.get("project")?.trim()||null})}}),ya=Object.freeze(Object.defineProperty({__proto__:null,AgentLanesView:Fs,scoutSurface:Gs},Symbol.toStringTag,{value:"Module"}));export{Fs as A,ya as a,ls as r,ns as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as i,j as t}from"./index-C8uS5szO.js";import{n as W,d as q,e as D}from"./agent-state-DDhnFEEP.js";import{a as G}from"./api-CaROe5_H.js";import{q as M}from"./terminal-takeover-BlpxpvSp.js";import{t as S}from"./time-Dhsh_2EG.js";import{u as U}from"./Provider-5Hotn7NQ.js";import{o as N}from"./openContent-C6XO6kr5.js";import{E as F}from"./eye-CtqSV8BS.js";import{T as H}from"./terminal-96JWDYDL.js";function A(e){return e?e.length>18?`${e.slice(0,8)}...${e.slice(-6)}`:e:null}function ee({agent:e,catalog:r,navigate:I,returnTo:g,variant:m="default",className:O,onNavigate:v}){const p=U(),[L,c]=i.useState(null),[$,b]=i.useState(!1),f=I??p.navigate,h=g??p.route;i.useEffect(()=>{b(!1)},[e.id]),i.useEffect(()=>{if(r!==void 0){c(null);return}let s=!1;return G(`/api/agents/${encodeURIComponent(e.id)}/session-catalog`).then(R=>{s||c(R)}).catch(()=>{s||c(null)}),()=>{s=!0}},[e.id,r]);const a=r===void 0?L:r,d=e.terminalSurface??(e.transport==="tmux"&&e.harnessSessionId?{backend:"tmux",sessionName:e.harnessSessionId,paneId:null,socketDir:null}:null),o=a?.activeSessionId??(d?e.harnessSessionId??d.sessionName:null),T=i.useMemo(()=>a?.sessions.find(s=>s.id===o)??null,[o,a?.sessions]);W(e.state);const n=!!(d&&o),w=n||!!a?.resumeCommand,x=q(e.state,e),l=m==="compact",E=x?o?l?n?"Live terminal":"Live trace":`Live ${A(o)}`:"Working":o?l?n?"Terminal":"Trace":`${n?"Terminal":"Trace"} ${A(o)}`:D(e.state,e)?"Callable":"No live turn",j=T?.startedAt?S(T.startedAt):e.updatedAt?S(e.updatedAt):null,y=n?l?"Observe":"Observe terminal":l?"Trace":"Observe trace",k=n?"Observe the live terminal":"Open the web observe trace",u=s=>{v?.(),N(f,{view:"terminal",agentId:e.id,mode:s},{returnTo:h})},C=()=>{v?.(),N(f,{view:"agents-v2",agentId:e.id,tab:"observe"},{returnTo:h})},z=()=>{if(n){u("takeover");return}const s=a?.resumeCommand;s&&(b(!0),M({command:s,cwd:a?.resumeCwd,agentId:e.id}).then(()=>u("takeover")))},B=["agent-live-actions",`agent-live-actions--${m}`,x?"agent-live-actions--live":"",O??""].filter(Boolean).join(" ");return t.jsxs("div",{className:B,children:[t.jsxs("div",{className:"agent-live-actions-status",children:[t.jsx("span",{className:"agent-live-actions-dot"}),t.jsx("span",{className:"agent-live-actions-status-main",children:E}),j&&t.jsx("span",{className:"agent-live-actions-status-detail",children:j})]}),t.jsxs("div",{className:"agent-live-actions-buttons",children:[t.jsxs("button",{type:"button",className:"agent-live-actions-button agent-live-actions-button--primary",onClick:()=>n?u("observe"):C(),title:k,"aria-label":k,children:[t.jsx(F,{size:13,strokeWidth:1.9,"aria-hidden":"true"}),t.jsx("span",{children:y})]}),n&&t.jsx("button",{type:"button",className:"agent-live-actions-button",onClick:C,title:"Open the web observe trace",children:t.jsx("span",{children:"Trace"})}),w&&t.jsxs("button",{type:"button",className:"agent-live-actions-button",onClick:z,title:a?.resumeCommand??"Open interactive terminal takeover",children:[t.jsx(H,{size:13,strokeWidth:1.9,"aria-hidden":"true"}),t.jsx("span",{children:$?"Going...":"Takeover"})]})]})]})}export{ee as A};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as o,j as e}from"./index-C8uS5szO.js";import{A as O}from"./AgentAvatar-BIwg54Tj.js";import{H as W}from"./HarnessMark-Bt47OeHy.js";import{u as q,b as I,f as V}from"./use-fleet-active-asks-DFs_u-vM.js";import{p as z,N as K,t as U}from"./sessions-view-DzYGsKWS.js";import{t as G}from"./time-Dhsh_2EG.js";import{a as H}from"./api-CaROe5_H.js";import{u as J}from"./use-conversation-list-A_YUf8lo.js";import{u as D}from"./router-BKiMcYa7.js";import{u as Q}from"./Provider-5Hotn7NQ.js";import{CommsFlowView as X}from"./CommsFlowGraph-Czg-KTS0.js";import{mapIdentities as Y}from"./CommsFlowMap-CzBWvSa5.js";import{p as Z,f as tt,e as et,a as st}from"./comms-gesture-_aGFo6g3.js";import{u as rt,a as at}from"./use-beside-Df-F2Uvg.js";import{ConversationScreen as ot}from"./ConversationScreen-tTP6B_F-.js";import{b as it,s as nt}from"./agent-master-model-C-KdOFDK.js";/* empty css */import{P as lt}from"./panel-right-BNTJhy8M.js";import"./SpriteAvatar-BW1JzkDt.js";import"./agent-state-DDhnFEEP.js";import"./CrewAvatar-CJhuqTsJ.js";import"./colors-CFlbwC25.js";import"./sse-v5QLsOHV.js";import"./index-BWHgHrtv.js";import"./message-visibility-DwxgcgYK.js";import"./machine-scope-DJt9RZ2w.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Ch9aYlgi.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"./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";import"./CommsCanvas-DOKw3Q8i.js";import"./comms-deck-CBhsXnY-.js";import"./CommsSelection-g1twA-Lb.js";/* empty css */import"./ConversationComposer-B7RU6LKd.js";import"./zap-sKPkh4sQ.js";import"./message-markup-DgFSyb3f.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"./terminal-96JWDYDL.js";import"./operator-attention-DGR4kOog.js";import"./sessionRead-CvFz2RHv.js";import"./clipboard-e3fSpeo7.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-CCSU8uo_.js";import"./BackToPicker-Bys9ColC.js";import"./AstronautSuit-C-4I5YKi.js";import"./ConversationFeedRows-DVqnZQH0.js";import"./ConversationPanels-C9yCAoJy.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./use-reduced-motion-D7n3vK8t.js";import"./proxy-DOG46ja4.js";import"./activity-CSUhvjD0.js";import"./message-circle-CSiJj6yo.js";import"./tail-events-DQ46QBW1.js";import"./ConversationStatus-CK-YfLpi.js";import"./check-B8dMv3Is.js";import"./sparkles-BbOFw3d0.js";const mt=500;function ct(s,n){const[i,m]=o.useState([]),[f,c]=o.useState(!1),[l,d]=o.useState(null);return o.useEffect(()=>{if(m([]),!n||!s){c(!1),d(null);return}let a=!0;return c(!0),d(null),H(`/api/messages?actor=${encodeURIComponent(s)}&limit=${mt}`).then(r=>{a&&m([...r].sort((x,v)=>x.createdAt-v.createdAt))}).catch(r=>{a&&(m([]),d(r instanceof Error?r.message:"Could not load this agent's messages."))}).finally(()=>{a&&c(!1)}),()=>{a=!1}},[s,n]),{messages:i,loading:f,error:l}}const pt=[{id:"chat",label:"Chat",hint:"The conversation on the stage"},{id:"flow",label:"Flow",hint:"Who asked whom across everything this agent is in"},{id:"map",label:"Map",hint:"Who this agent exchanges work with, and on which model"},{id:"canvas",label:"Canvas",hint:"The same window laid out left to right, with nobody folded away"}];function dt(s,n){const{messages:i,loading:m,error:f}=ct(s,n),{passes:c,flights:l}=o.useMemo(()=>{const a=i.filter(r=>!!r.actorId).map(r=>({id:r.id,conversationId:r.conversationId,actorId:r.actorId,actorName:r.actorName,body:r.body,createdAt:r.createdAt,class:r.class,metadata:r.metadata??null,replyToMessageId:r.replyToMessageId??null}));return et(a)},[i]),d=o.useMemo(()=>st(c,l),[c,l]);return{passes:c,flights:l,tasks:d,loading:m,error:f,count:i.length}}function Ze({agentId:s,threadId:n,machineId:i,navigate:m}){const{agents:f}=Q(),c=D(),l=rt(),d=at(m,i),[a,r]=o.useState(()=>{if(typeof window>"u")return"chat";const t=new URLSearchParams(window.location.search).get("view");return t==="flow"||t==="map"||t==="canvas"?t:"chat"}),[x,v]=o.useState(null),b=`${s}\0${n??""}`,S=o.useRef(b);o.useEffect(()=>{S.current!==b&&(S.current=b,r("chat"),v(null))},[b]),o.useEffect(()=>v(null),[a]),o.useEffect(()=>{if(typeof window>"u")return;const t=new URL(window.location.href),h=a==="chat"?"":a;(t.searchParams.get("view")??"")!==h&&(h?t.searchParams.set("view",h):t.searchParams.delete("view"),window.history.replaceState(window.history.state,"",`${t.pathname}${t.search}${t.hash}`))},[a,c.searchStr]);const{sessions:C,loading:T}=J(),N=q(),{agent:g,memberAgentIds:E,sessions:k,master:p,threads:A}=o.useMemo(()=>it({agentId:s,threadId:n,machineId:i,agents:f,sessions:C}),[s,n,i,f,C]),$=o.useMemo(()=>I(N,E),[N,E]),u=dt(s,a!=="chat"),B=o.useMemo(()=>Y(k.flatMap(t=>t.participants??[])),[k]),w=n??p?.id??null,L=o.useMemo(()=>p?[p,...A]:A,[p,A]),_=t=>!!w&&nt(t,w),P=t=>{m({view:"messages",agentId:s,...p&&t.id===p.id?{}:{threadId:t.id},...i?{machineId:i}:{}})},y=g?.name??k[0]?.agentName??s.split(".")[0]??s,R=(()=>{const t=z(g);return t===K?null:t})(),M=ut($),F=[R,M?.label??g?.branch??null].filter(Boolean).join(" · ");return e.jsxs(e.Fragment,{children:[e.jsxs("header",{className:"amv-head",children:[e.jsx(O,{agent:g??{name:y,harness:p?.harness??null,state:null},placement:"row",size:32}),e.jsxs("div",{className:"amv-ident",children:[e.jsx("span",{className:"amv-name",children:y}),F?e.jsxs("span",{className:"amv-sub",children:[M?e.jsx("span",{className:"amv-dot","data-tone":M.tone,"aria-hidden":!0}):null,F]}):null]}),g?.harness??p?.harness?e.jsx(W,{harness:g?.harness??p?.harness??"",size:14}):null,e.jsx("div",{className:"s-thread-view-toggle",role:"group","aria-label":"View",children:pt.map(t=>e.jsx("button",{type:"button",className:`s-thread-view-option${a===t.id?" is-active":""}`,onClick:()=>r(t.id),"aria-pressed":a===t.id,title:t.hint,children:t.label},t.id))})]}),L.length>0?e.jsx("div",{className:"amv-strip",role:"list","aria-label":"Conversations",children:L.map(t=>{const h=_(t),j=l.has(t.id);return e.jsxs("div",{role:"listitem",className:`amv-card${h?" amv-card--on":""}${j?" amv-card--kept":""}`,children:[e.jsxs("button",{type:"button",className:"amv-cardMain",title:h?"On the stage":"Open on the stage · double-click to keep beside","aria-current":h?"true":void 0,...Z(()=>{r("chat"),P(t)},()=>l.add(t.id)),children:[e.jsx("span",{className:"amv-mark","data-state":ft(t,N),"aria-hidden":!0}),e.jsx("span",{className:"amv-cardTitle",children:U(t)}),e.jsx("span",{className:"amv-cardMeta",children:t.lastMessageAt?G(t.lastMessageAt):"—"})]}),e.jsx("button",{type:"button",className:"amv-cardBeside",title:j?"Close the column beside the stage":"Keep beside the stage","aria-label":j?"Close beside":"Keep beside","aria-pressed":j,onClick:()=>l.toggle(t.id),children:e.jsx(lt,{size:12,strokeWidth:2,"aria-hidden":!0})})]},t.id)})}):null,e.jsx("div",{className:"amv-feed",children:a!=="chat"?u.error?e.jsx("div",{className:"amv-empty",children:u.error}):u.loading&&u.count===0?e.jsx("div",{className:"amv-empty",children:"Loading this agent’s work…"}):u.count===0?e.jsx("div",{className:"amv-empty",children:"Nothing has passed through this agent yet."}):e.jsx(X,{passes:u.passes,flights:u.flights,rootId:tt(s),identities:B,view:a,selected:x,onSelect:v,onStage:t=>{r("chat"),d(t)},beside:l}):w?e.jsx(ot,{conversationId:w,navigate:m,embedded:!0,showBackNav:!1,beside:l},w):e.jsx("div",{className:"amv-empty",children:T?"Loading conversations…":`No conversations with ${y} yet.`})})]})}function ut(s){return s?s.status==="working"?{label:"working",tone:"working"}:s.status==="needs_attention"?{label:"needs you",tone:"attention"}:s.status==="queued"?{label:"starting",tone:"pending"}:null:null}function ht(s){return s.status==="needs_attention"?"needs_you":s.status==="working"||s.status==="queued"?"working":"quiet"}function ft(s,n){const i=V(n,s);return i?ht(i):"quiet"}export{Ze as AgentMasterScreen};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{j as s,r as p}from"./index-C8uS5szO.js";import{u as K}from"./Provider-5Hotn7NQ.js";import{o as E}from"./openContent-C6XO6kr5.js";import{a as H}from"./api-CaROe5_H.js";import{c as P}from"./clipboard-e3fSpeo7.js";import{t as D}from"./time-Dhsh_2EG.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"./agent-state-DDhnFEEP.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"./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"./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 q=30*6e4,z=/^(?:hey|hi|hello)\b[^,]{0,24},\s*|^(?:can|could|would|will)\s+(?:you|we|i)\s+(?:please\s+)?|^please\s+|^let'?s\s+/i,L={created:"+",modified:"~",read:"·"};function J(e){const a=(e.preview??"").replace(/^\[ask:[^\]]+\]\s*/i,"").replace(/\s+/g," ").replace(z,"").trim();if(a)return a.length>150?`${a.slice(0,150).replace(/\s+\S*$/,"")}…`:a;const t=e.title?.trim();return t&&t!==e.agentName?t:"Untitled session"}function R(e){if(!e)return"—";const a=e.replace(/\.jsonl$/,"").replace(/^c\./,"").replace(/^session[_:-]?/i,"");return a.length<=10?a:`${a.slice(0,8)}…${a.slice(-3)}`}function Q(e){return e.replace(/^\/(?:Users|home)\/[^/]+\/(?:dev\/|projects\/|src\/|code\/)?/,"")}function u(e){return!e||e<=0?"0":e<1e3?`${e}`:`${(e/1e3).toFixed(e<1e4?1:0).replace(/\.0$/,"")}k`}function X(e){const a=new Map;for(const t of e){if(t.kind!=="tool")continue;const l=(t.tool??"tool").toLowerCase();a.set(l,(a.get(l)??0)+1)}return[...a.entries()].map(([t,l])=>({name:t,n:l})).sort((t,l)=>l.n-t.n).slice(0,8)}function F(){const[e,a]=p.useState(!1),t=p.useRef(null),l=p.useCallback(o=>{P(o).then(r=>{r&&(a(!0),t.current&&window.clearTimeout(t.current),t.current=window.setTimeout(()=>a(!1),1200))})},[]);return p.useEffect(()=>()=>{t.current&&window.clearTimeout(t.current)},[]),[e,l]}function B({copied:e}){return s.jsx("svg",{className:"ap-sx-copyIco",width:"11",height:"11",viewBox:"0 0 12 12",fill:"none","aria-hidden":!0,children:e?s.jsx("path",{d:"M2.6 6.3 5 8.6 9.5 3.5",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"}):s.jsxs(s.Fragment,{children:[s.jsx("rect",{x:"3.6",y:"3.6",width:"6",height:"6",rx:"1.3",stroke:"currentColor",strokeWidth:"1.05"}),s.jsx("path",{d:"M7.8 3.6V2.5A1.1 1.1 0 0 0 6.7 1.4H2.5A1.1 1.1 0 0 0 1.4 2.5v4.2A1.1 1.1 0 0 0 2.5 7.8h1.1",stroke:"currentColor",strokeWidth:"1.05",strokeLinecap:"round",strokeLinejoin:"round"})]})})}function Y({value:e,display:a,title:t,className:l}){const[o,r]=F();return s.jsxs("button",{type:"button",className:l?`ap-sx-copy ${l}`:"ap-sx-copy","data-copied":o||void 0,title:o?"Copied":t??e,"aria-label":`Copy ${e}`,onClick:c=>{c.stopPropagation(),r(e)},children:[s.jsx("span",{className:"ap-sx-copyText",children:a}),s.jsx(B,{copied:o})]})}function Z({session:e,agentId:a,status:t}){const{route:l,navigate:o}=K(),[r,c]=p.useState(null),[v,d]=p.useState("loading"),h=e.harnessSessionId??e.id;p.useEffect(()=>{if(!a){d("loaded");return}let n=!1;return d("loading"),c(null),H(`/api/agents/${encodeURIComponent(a)}/observe`).then(i=>{n||(c(i),d("loaded"))}).catch(()=>{n||d("loaded")}),()=>{n=!0}},[a]);const m=r?.data??null,b=m?.metadata,x=b?.usage,g=b?.session,f=m?.files??[],k=p.useMemo(()=>X(m?.events??[]),[m?.events]),[T,O]=F(),M=g?.gitBranch?.trim()||e.currentBranch?.trim()||"—",S=g?.model?.trim()||"—",y=g?.turnCount??x?.assistantMessages??e.messageCount??null,w=g?.sessionStart??e.lastMessageAt??null,A=x?.contextInputTokens??0,C=x?.contextWindowTokens??0,j=C>0?Math.min(100,Math.round(A/C*100)):null,I=(x?.cacheReadInputTokens??0)+(x?.cacheCreationInputTokens??0),W=()=>E(o,{view:"sessions",sessionId:e.id},{returnTo:l}),U=()=>E(o,{view:"terminal",agentId:a,mode:"takeover"},{returnTo:l}),V=[["branch",M],["model",S],["started",w?D(w):"—"],["turns",y!=null?`${y}`:"—"]],_=()=>{const i=[["session",h],["agent",a||"—"],["branch",M],["model",S],["cwd",g?.cwd?.trim()||"—"],["started",w?new Date(w).toISOString():"—"],["turns",y!=null?`${y}`:"—"],["context",j!=null?`${u(A)} / ${u(C)} (${j}%)`:"—"]].map(([N,G])=>`${`${N}:`.padEnd(9)}${G}`).join(`
|
|
2
|
+
`),$=f.length?`
|
|
3
|
+
|
|
4
|
+
files touched:
|
|
5
|
+
${[...f].slice(0,24).map(N=>` ${L[N.state]} ${N.path}`).join(`
|
|
6
|
+
`)}`:"";return i+$};return v==="loading"?s.jsx("div",{className:"ap-sx-card ap-sx-loading",children:"Loading session…"}):s.jsxs("div",{className:"ap-sx-card",children:[s.jsxs("div",{className:"ap-sx-statGrid",children:[s.jsxs("div",{className:"ap-sx-stat",children:[s.jsx("span",{className:"ap-sx-statKey",children:"session"}),s.jsx(Y,{className:"ap-sx-copyStat",value:h,display:`#${R(h)}`,title:h})]}),V.map(([n,i])=>s.jsxs("div",{className:"ap-sx-stat",children:[s.jsx("span",{className:"ap-sx-statKey",children:n}),s.jsx("span",{className:"ap-sx-statVal",title:i,children:i})]},n))]}),m?s.jsxs("div",{className:"ap-sx-cols",children:[s.jsxs("div",{className:"ap-sx-block",children:[s.jsxs("div",{className:"ap-sx-head",children:[s.jsx("span",{className:"ap-sx-lbl",children:"context"}),j!=null?s.jsxs("span",{className:"ap-sx-read",children:[s.jsx("span",{className:"ap-sx-num",children:u(A)}),s.jsxs("span",{className:"ap-sx-dim",children:[" / ",u(C)]}),s.jsx("span",{className:"ap-sx-sep",children:"·"}),s.jsxs("span",{className:"ap-sx-num",children:[j,"%"]})]}):null]}),j!=null?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"ap-sx-gauge","aria-hidden":!0,children:s.jsx("span",{className:"ap-sx-gaugeFill",style:{width:`${j}%`}})}),s.jsxs("div",{className:"ap-sx-flow",children:[s.jsxs("span",{children:["↑",u(x?.inputTokens)," in"]}),s.jsxs("span",{children:["↓",u(x?.outputTokens)," out"]}),I>0?s.jsxs("span",{className:"ap-sx-faint",children:["cache ",u(I)]}):null]})]}):s.jsx("div",{className:"ap-sx-empty",children:"No usage captured."})]}),s.jsxs("div",{className:"ap-sx-block",children:[s.jsxs("div",{className:"ap-sx-head",children:[s.jsx("span",{className:"ap-sx-lbl",children:"tools"}),k.length>0?s.jsxs("span",{className:"ap-sx-meta",children:[k.reduce((n,i)=>n+i.n,0)," calls"]}):null]}),k.length>0?s.jsx("div",{className:"ap-sx-tools",children:k.map(n=>s.jsxs("span",{className:"ap-sx-tool",children:[s.jsx("span",{className:"ap-sx-toolName",children:n.name}),s.jsxs("span",{className:"ap-sx-toolN",children:["×",n.n]})]},n.name))}):s.jsx("div",{className:"ap-sx-empty",children:"No tools yet."})]})]}):s.jsx("div",{className:"ap-sx-empty ap-sx-noTrace",children:"No live trace for this session."}),f.length>0?s.jsxs("div",{className:"ap-sx-block",children:[s.jsxs("div",{className:"ap-sx-head",children:[s.jsx("span",{className:"ap-sx-lbl",children:"files touched"}),s.jsx("span",{className:"ap-sx-meta",children:f.length})]}),s.jsx("div",{className:"ap-sx-files",children:[...f].sort((n,i)=>(n.state==="read"?1:0)-(i.state==="read"?1:0)).slice(0,8).map(n=>{const i=n.state!=="read",$=n.path.replace(/\/+$/,"").split("/").pop()??n.path,N=Q(n.path.slice(0,n.path.length-$.length));return s.jsxs("div",{className:"ap-sx-fileRow","data-changed":i||void 0,children:[s.jsx("span",{className:"ap-sx-fileMark","data-state":n.state,"aria-hidden":!0,children:L[n.state]}),s.jsx("span",{className:"ap-sx-fileName",children:$}),s.jsx("span",{className:"ap-sx-fileDir",children:N}),s.jsxs("span",{className:"ap-sx-fileN",children:["×",n.touches]})]},n.path)})})]}):null,s.jsxs("div",{className:"ap-sx-actions",children:[s.jsx("button",{type:"button",className:"ap-sx-open",onClick:W,children:"Open ↗"}),s.jsx("button",{type:"button",className:"ap-sx-resume",onClick:U,children:t==="running"?"Send":"Take over"}),s.jsxs("button",{type:"button",className:"ap-sx-copyAll","data-copied":T||void 0,title:"Copy session id + metadata",onClick:()=>O(_()),children:[s.jsx(B,{copied:T}),T?"Copied":"Copy details"]})]})]})}function ss({session:e,fallbackAgentId:a}){const t=e.agentId??a,[l,o]=p.useState(!1),c=e.lastMessageAt!=null&&Date.now()-e.lastMessageAt<q?"running":"idle",v=J(e),d=e.currentBranch?.trim(),h=R(e.harnessSessionId??e.id),m=e.lastMessageAt?D(e.lastMessageAt):"—";return s.jsxs("div",{className:"ap-sx-session","data-open":l||void 0,"data-status":c,children:[s.jsxs("button",{type:"button",className:"ap-sx-row",onClick:()=>o(b=>!b),children:[s.jsx("span",{className:"ap-sx-tri","data-open":l||void 0,"aria-hidden":!0,children:"▸"}),s.jsx("span",{className:"ap-sx-dot","data-tone":c,"aria-hidden":!0}),s.jsxs("span",{className:"ap-sx-rowBody",children:[s.jsxs("span",{className:"ap-sx-line",children:[s.jsx("span",{className:"ap-sx-title",title:v,children:v}),s.jsxs("span",{className:"ap-sx-rowMeta",children:[s.jsx("span",{className:"ap-sx-badge","data-tone":c,children:c==="running"?"RUNNING":"IDLE"}),s.jsx("span",{className:"ap-sx-age",children:m})]})]}),l?null:s.jsxs("span",{className:"ap-sx-sub",children:[d?s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"ap-sx-subBranch",children:d}),s.jsx("span",{className:"ap-sx-subSep",children:"·"})]}):null,s.jsxs("span",{className:"ap-sx-subId",children:["#",h]}),e.messageCount>0?s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"ap-sx-subSep",children:"·"}),s.jsxs("span",{children:[e.messageCount," turn",e.messageCount===1?"":"s"]})]}):null]})]})]}),l?s.jsx(Z,{session:e,agentId:t,status:c}):null]})}function Hs({agentIds:e,sessions:a}){const t=e??[],l=(a??[]).filter(r=>r.agentId!=null&&t.includes(r.agentId)).slice().sort((r,c)=>(c.lastMessageAt??0)-(r.lastMessageAt??0)).slice(0,8);if(l.length===0)return null;const o=t[0]??"";return s.jsx("div",{className:"ap-sx-list",children:l.map(r=>s.jsx(ss,{session:r,fallbackAgentId:o},r.id))})}export{Hs as AgentSessions};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as u,j as s}from"./index-C8uS5szO.js";import{A as B}from"./AgentAvatar-BIwg54Tj.js";import{H as S,h as w}from"./HarnessMark-Bt47OeHy.js";import{c as P}from"./agent-state-DDhnFEEP.js";import{f as R}from"./runtime-picker-DdsttHHc.js";import{t as C}from"./time-Dhsh_2EG.js";import"./Provider-5Hotn7NQ.js";import"./router-BKiMcYa7.js";import"./api-CaROe5_H.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"./conversation-model-BGFHoxQ0.js";import"./createLucideIcon-DkjnzvcJ.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"./loader-circle-DurUYl7E.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"./scout-voice-DOQ_B77g.js";import"./fx-z37u1o2z.js";import"./chunk-HRAB3GC3-C5X-kFhb.js";import"./SpriteAvatar-BW1JzkDt.js";import"./CrewAvatar-CJhuqTsJ.js";import"./voice-levels-Dcr3jglk.js";function K(n){return n.needsYou?"needs":n.status==="in_turn"||n.status==="in_flight"?"live":"idle"}const H=[{id:"prompt",label:"System prompt",sigil:"◆"},{id:"config",label:"Config",sigil:"▤"},{id:"conversations",label:"Conversations",sigil:"◇"},{id:"context",label:"Context",sigil:"▸"}],q={prompt:"System prompt",config:"Config",conversations:"Conversations",context:"Context"};function U(n){return n?n.replace(/^\/Users\/[^/]+/,"~").replace(/^\/home\/[^/]+/,"~"):""}const k=(n,e)=>`${n} ${e}${n===1?"":"s"}`;function qs({projects:n,initialSelection:e,onEdit:a,onInterrupt:l,onResetContext:i,onOpenConversation:m,onNewAgent:o}){const d=u.useMemo(()=>n.flatMap(t=>t.agents.map(c=>[t,c])),[n]),x=d[0]?.[1],[p,A]=u.useState(e?.agentId??x?.agent.id??null),[F,E]=u.useState(e?.facet??"prompt"),[I,y]=u.useState(()=>new Set(p?[p]:[])),[M,V]=u.useState(""),g=M.trim().toLowerCase(),D=u.useMemo(()=>g?n.map(t=>({...t,agents:t.agents.filter(c=>c.agent.name.toLowerCase().includes(g)||(c.agent.harness??"").toLowerCase().includes(g)||t.slug.toLowerCase().includes(g))})).filter(t=>t.agents.length>0):n,[n,g]),v=u.useMemo(()=>{for(const[t,c]of d)if(c.agent.id===p)return{project:t,entry:c};return null},[d,p]),T=n.reduce((t,c)=>t+c.agents.length,0),_=T*H.length,z=(t,c)=>{A(t),c&&E(c),y(r=>new Set(r).add(t))},$=t=>{y(c=>{const r=new Set(c);return r.has(t)?r.delete(t):r.add(t),r}),A(t)};return s.jsxs("div",{className:"s-acon",children:[s.jsxs("div",{className:"ac-shell",children:[s.jsxs("aside",{className:"ac-tree",children:[s.jsxs("div",{className:"ac-treeHead",children:[s.jsx("span",{className:"ac-treeIco","aria-hidden":!0,children:"⌕"}),s.jsx("input",{className:"ac-treeFind",placeholder:"Filter agents…",value:M,onChange:t=>V(t.target.value)})]}),s.jsxs("div",{className:"ac-treeScroll",children:[D.map(t=>s.jsxs("div",{className:"ac-treeGroup",children:[s.jsxs("div",{className:"ac-treeProject",children:[s.jsx("span",{className:"ac-sigil",children:"/"}),t.slug,s.jsx("span",{className:"ac-treeProjectCount",children:t.agents.length})]}),t.agents.map(c=>{const r=I.has(c.agent.id),f=K(c),G=c.agent.id===p;return s.jsxs("div",{className:"ac-agentBlock",children:[s.jsxs("button",{type:"button",className:"ac-agent","data-open":r||void 0,onClick:()=>$(c.agent.id),children:[s.jsx("span",{className:"ac-agentChev","data-open":r||void 0,"aria-hidden":!0,children:"▸"}),s.jsx("span",{className:"ac-agentAvatar","aria-hidden":!0,children:s.jsx(B,{agent:{name:c.agent.name,harness:c.agent.harness,state:c.agent.state},placement:"node",size:16})}),s.jsx("span",{className:"ac-agentName","data-idle":f==="idle"||void 0,children:c.agent.name}),f==="needs"?s.jsx("span",{className:"ac-needs",children:"needs you"}):null,s.jsxs("span",{className:"ac-agentTail",children:[f!=="idle"?s.jsx("span",{className:"ac-dot","data-tone":f,"aria-hidden":!0}):null,c.agent.harness?s.jsx("span",{className:"ac-agentMark","aria-hidden":!0,children:s.jsx(S,{harness:c.agent.harness,size:11})}):null]})]}),r?s.jsx("div",{className:"ac-facets",children:H.map(j=>{const L=j.id==="conversations"?c.sessions.length:void 0,W=G&&F===j.id;return s.jsxs("button",{type:"button",className:"ac-facet","data-active":W||void 0,onClick:()=>z(c.agent.id,j.id),children:[s.jsx("span",{className:"ac-facetSigil","aria-hidden":!0,children:j.sigil}),s.jsx("span",{className:"ac-facetLabel",children:j.label}),L!=null?s.jsx("span",{className:"ac-facetCount",children:L}):null]},j.id)})}):null]},c.agent.id)})]},t.key)),o?s.jsx("button",{type:"button",className:"ac-newAgent",onClick:o,children:"+ new agent"}):null]})]}),s.jsx("main",{className:"ac-read",children:v?s.jsx(Y,{project:v.project,entry:v.entry,facet:F,onEdit:a,onInterrupt:l,onResetContext:i,onOpenConversation:m}):s.jsx("div",{className:"ac-empty",children:"No agents."})}),s.jsx("aside",{className:"ac-rail",children:v?s.jsx(ss,{entry:v.entry,onOpenConversation:m}):null})]}),s.jsxs("div",{className:"ac-foot",children:[s.jsx("span",{className:"ac-footStat",children:k(n.length,"project")}),s.jsx("span",{className:"ac-footSep",children:"·"}),s.jsx("span",{className:"ac-footStat",children:k(T,"agent")}),s.jsx("span",{className:"ac-footSep",children:"·"}),s.jsx("span",{className:"ac-footStat",children:k(_,"facet")})]})]})}function Y({project:n,entry:e,facet:a,onEdit:l,onInterrupt:i,onResetContext:m,onOpenConversation:o}){const{agent:d,config:x}=e,p=e.status==="in_turn"||e.status==="in_flight";return s.jsxs(s.Fragment,{children:[s.jsxs("header",{className:"ac-readHead",children:[s.jsxs("div",{className:"ac-crumb",children:[s.jsx("span",{className:"ac-crumbDim",children:n.slug}),s.jsx("span",{className:"ac-crumbSep",children:"/"}),s.jsxs("span",{className:"ac-crumbAgent",children:["@",d.name]}),s.jsx("span",{className:"ac-crumbSep",children:"/"}),s.jsx("span",{className:"ac-crumbFacet",children:q[a]})]}),s.jsxs("div",{className:"ac-readActions",children:[(a==="prompt"||a==="config")&&l&&x.editable?s.jsx("button",{type:"button",className:"ac-actPrimary",onClick:()=>l(d.id),children:"Edit"}):null,p&&i?s.jsx("button",{type:"button",className:"ac-act",onClick:()=>i(d.id),children:"Interrupt"}):null,a==="context"&&m?s.jsx("button",{type:"button",className:"ac-act",onClick:()=>m(d.id),children:"Reset"}):null,o?s.jsx("button",{type:"button",className:"ac-act",onClick:()=>o(d.id),children:"Open ↗"}):null]})]}),s.jsxs("div",{className:"ac-metaStrip",children:[s.jsx(b,{k:"Type",v:Q(a)}),x.model?s.jsx(b,{k:"Model",v:x.model,mono:!0}):null,s.jsx(b,{k:"Editable",v:x.editable?"yes":"read-only"}),e.lastActivityAt?s.jsx(b,{k:"Active",v:C(e.lastActivityAt)}):null]}),s.jsxs("div",{className:"ac-readBody",children:[a==="prompt"?s.jsx(J,{entry:e}):null,a==="config"?s.jsx(X,{entry:e}):null,a==="conversations"?s.jsx(Z,{entry:e,onOpenConversation:o}):null,a==="context"?s.jsx(O,{entry:e}):null]})]})}function Q(n){switch(n){case"prompt":return"Markdown · system prompt";case"config":return"Runtime config";case"conversations":return"Conversation list";case"context":return"Live context window"}}function J({entry:n}){const{agent:e,config:a}=n,l=a.systemPrompt.trim()||a.templateHint||"default template",i=!a.systemPrompt.trim();return s.jsxs("div",{className:"ac-doc",children:[s.jsxs("div",{className:"ac-docHead",children:[s.jsx("span",{className:"ac-docKey",children:"name"}),s.jsx("span",{className:"ac-docVal",children:e.name}),e.role?s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"ac-docKey",children:"role"}),s.jsx("span",{className:"ac-docVal",children:R(e.role)??e.role})]}):null,s.jsx("span",{className:"ac-docKey",children:"harness"}),s.jsx("span",{className:"ac-docVal",children:w(e.harness)}),a.model?s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"ac-docKey",children:"model"}),s.jsx("span",{className:"ac-docVal",children:a.model})]}):null]}),s.jsx("div",{className:"ac-docLabel",children:i?"Default template":"System prompt"}),s.jsx("pre",{className:"ac-prose","data-default":i||void 0,children:l})]})}function X({entry:n}){const{agent:e,config:a}=n;return s.jsxs("div",{className:"ac-config",children:[s.jsxs(N,{k:"Harness",children:[s.jsx("span",{className:"ac-inlineMark",children:s.jsx(S,{harness:e.harness,size:12})}),w(e.harness)]}),s.jsx(N,{k:"Model",children:a.model??"—"}),s.jsx(N,{k:"Permissions",children:a.permission??"default"}),s.jsx(N,{k:"Transport",children:a.runtime.transport}),s.jsx(N,{k:"Workdir",mono:!0,title:a.runtime.cwd,children:U(a.runtime.cwd)||a.runtime.cwd}),s.jsx(N,{k:"Session",mono:!0,children:a.runtime.sessionId}),a.launchArgs.length?s.jsxs("div",{className:"ac-configBlock",children:[s.jsx("div",{className:"ac-configKey",children:"Launch"}),s.jsxs("pre",{className:"ac-cmd",children:[a.runtime.harness," ",a.launchArgs.join(" ")]})]}):null,a.capabilities.length?s.jsxs("div",{className:"ac-configBlock",children:[s.jsx("div",{className:"ac-configKey",children:"Capabilities"}),s.jsx("div",{className:"ac-chips",children:a.capabilities.map(l=>s.jsx("span",{className:"ac-chip",children:l},l))})]}):null]})}function Z({entry:n,onOpenConversation:e}){return n.sessions.length?s.jsx("div",{className:"ac-convos",children:n.sessions.map(a=>s.jsxs("button",{type:"button",className:"ac-convo",disabled:!e,onClick:()=>e?.(n.agent.id,a.id),children:[s.jsx("span",{className:"ac-convoDot","aria-hidden":!0}),s.jsxs("span",{className:"ac-convoBody",children:[s.jsx("span",{className:"ac-convoTitle",children:a.title||a.preview||"Conversation"}),a.preview&&a.title?s.jsx("span",{className:"ac-convoPreview",children:a.preview}):null,s.jsxs("span",{className:"ac-convoMeta",children:[a.currentBranch?s.jsx("span",{className:"ac-convoBranch",children:a.currentBranch}):null,s.jsxs("span",{children:[a.messageCount," msgs"]}),a.lastMessageAt?s.jsx("span",{children:C(a.lastMessageAt)}):null]})]})]},a.id))}):s.jsx("div",{className:"ac-empty",children:"No conversations yet."})}function O({entry:n}){const e=n.context;if(!e)return s.jsx("div",{className:"ac-empty",children:"No live context — agent is not in an active session."});const a=e.usedPercent!=null?Math.round(e.usedPercent):null;return s.jsxs("div",{className:"ac-ctx",children:[s.jsxs("div",{className:"ac-ctxTop",children:[s.jsx("span",{className:"ac-ctxState","data-state":e.state,children:e.state}),s.jsxs("span",{className:"ac-ctxTurns",children:[e.turnCount," turns"]})]}),a!=null?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"ac-ctxGauge",children:s.jsx("span",{className:"ac-ctxFill",style:{width:`${Math.min(100,a)}%`}})}),s.jsxs("div",{className:"ac-ctxRead",children:[s.jsxs("span",{className:"ac-ctxNum",children:[a,"%"]}),s.jsx("span",{className:"ac-ctxDim",children:"of context window used"})]})]}):null,e.contextInputTokens!=null&&e.contextWindowTokens!=null?s.jsxs("div",{className:"ac-ctxTokens",children:[e.contextInputTokens.toLocaleString()," / ",e.contextWindowTokens.toLocaleString()," ","tokens"]}):null]})}function ss({entry:n,onOpenConversation:e}){const{agent:a,config:l}=n,i=K(n),m=a.ownerName||a.ownerHandle||null;return s.jsxs("div",{className:"ac-railInner",children:[s.jsxs("div",{className:"ac-railIdent",children:[s.jsx("span",{className:"ac-railAvatar","aria-hidden":!0,children:s.jsx(B,{agent:{name:a.name,harness:a.harness,state:a.state},placement:"inspector"})}),s.jsxs("div",{className:"ac-railNames",children:[s.jsxs("div",{className:"ac-railName",children:["@",a.name]}),a.role?s.jsx("div",{className:"ac-railRole",children:R(a.role)??a.role}):null]})]}),s.jsxs("div",{className:"ac-railState","data-tone":i==="idle"?void 0:i,children:[i!=="idle"?s.jsx("span",{className:"ac-dot","data-tone":i,"aria-hidden":!0}):null,s.jsx("span",{children:n.needsYou?"Needs you":P(a.state)})]}),n.activeTask?s.jsx("div",{className:"ac-railTask",children:n.activeTask}):null,s.jsxs("div",{className:"ac-railGroup",children:[s.jsx(h,{k:"Harness",v:w(a.harness),mark:a.harness}),s.jsx(h,{k:"Model",v:l.model??"—"}),m?s.jsx(h,{k:"Owner",v:m}):null,a.branch?s.jsx(h,{k:"Branch",v:a.branch,mono:!0}):null,s.jsx(h,{k:"State",v:P(a.state)}),a.updatedAt?s.jsx(h,{k:"Updated",v:C(a.updatedAt)}):null,s.jsx(h,{k:"Sessions",v:String(n.sessions.length)})]}),l.permission?s.jsxs("div",{className:"ac-railSub",children:[s.jsx("div",{className:"ac-railSubHead",children:"Permissions"}),s.jsx("span",{className:"ac-chip",children:l.permission})]}):null,l.capabilities.length?s.jsxs("div",{className:"ac-railSub",children:[s.jsxs("div",{className:"ac-railSubHead",children:["Capabilities · ",l.capabilities.length]}),s.jsx("div",{className:"ac-chips",children:l.capabilities.map(o=>s.jsx("span",{className:"ac-chip",children:o},o))})]}):null,a.conversationId&&e?s.jsx("button",{type:"button",className:"ac-railOpen",onClick:()=>e(a.id),children:"Open conversation →"}):null]})}function b({k:n,v:e,mono:a}){return s.jsxs("span",{className:"ac-metaItem",children:[s.jsx("span",{className:"ac-metaKey",children:n}),s.jsx("span",{className:"ac-metaVal","data-mono":a||void 0,children:e})]})}function N({k:n,children:e,mono:a,title:l}){return s.jsxs("div",{className:"ac-configRow",children:[s.jsx("span",{className:"ac-configKey",children:n}),s.jsx("span",{className:"ac-configVal","data-mono":a||void 0,title:l,children:e})]})}function h({k:n,v:e,mono:a,mark:l}){return s.jsxs("div",{className:"ac-railFact",children:[s.jsx("span",{className:"ac-railFactKey",children:n}),s.jsxs("span",{className:"ac-railFactVal","data-mono":a||void 0,children:[l?s.jsx("span",{className:"ac-inlineMark",children:s.jsx(S,{harness:l,size:11})}):null,e]})]})}export{qs as AgentsConsole};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e,r as d}from"./index-C8uS5szO.js";import{p as S,a as E}from"./api-CaROe5_H.js";import{b as W}from"./machine-scope-DJt9RZ2w.js";import{d as X,b as Y}from"./router-BKiMcYa7.js";import{a as J}from"./sse-v5QLsOHV.js";import{o as Q,i as C}from"./surface-activity-B1rgWB1i.js";import{u as Z}from"./Provider-5Hotn7NQ.js";/* empty css */import{AgentsSubnav as ee}from"./AgentsSubnav-BOobgtGE.js";import{AgentsLibrary as te}from"./library-DLKBVUJ6.js";import{r as se,d as oe}from"./NewChatComposer-JjLbm3W2.js";import{AgentDetailWithRail as ie,AgentProfileBar as ne}from"./profile-C3KgiZvc.js";/* empty css *//* empty css *//* empty css */import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-Ch9aYlgi.js";import"./index-BWHgHrtv.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./model-CBkMvT1w.js";import"./time-Dhsh_2EG.js";import"./DocumentFocusViewer-f12RRQpV.js";import"./createLucideIcon-DkjnzvcJ.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"./scout-voice-DOQ_B77g.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-CXfav14z.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"./search-C4VlW_0l.js";import"./compass-DTZdCpv9.js";import"./settings-TJIkkZ0P.js";import"./git-branch-CA3cHKCI.js";import"./scroll-text-DwC8r2g6.js";/* empty css */import"./SpriteAvatar-BW1JzkDt.js";import"./HarnessMark-Bt47OeHy.js";import"./AgentSessions-Cox2zS-e.js";import"./openContent-C6XO6kr5.js";import"./clipboard-e3fSpeo7.js";import"./runtime-picker-DdsttHHc.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"./chevron-down-B5eMsn5c.js";import"./AgentAvatar-BIwg54Tj.js";import"./CrewAvatar-CJhuqTsJ.js";import"./context-budget-DemtXu7E.js";import"./session-catalog-s-T_w41t.js";import"./terminal-relay-Bfx8pg80.js";import"./BackToPicker-Bys9ColC.js";import"./ConversationScreen-tTP6B_F-.js";import"./ConversationComposer-B7RU6LKd.js";import"./zap-sKPkh4sQ.js";import"./message-markup-DgFSyb3f.js";import"./mentions-Ctw1ECUC.js";import"./AgentDetailCard-CFDE8TLi.js";import"./AgentLiveActions-lYzicnNa.js";import"./terminal-takeover-BlpxpvSp.js";import"./eye-CtqSV8BS.js";import"./message-visibility-DwxgcgYK.js";import"./operator-attention-DGR4kOog.js";import"./sessionRead-CvFz2RHv.js";import"./types-B0PlfpKc.js";import"./ConversationHeader-CCSU8uo_.js";import"./AstronautSuit-C-4I5YKi.js";import"./panel-right-BNTJhy8M.js";import"./CommsFlowGraph-Czg-KTS0.js";import"./comms-gesture-_aGFo6g3.js";import"./CommsCanvas-DOKw3Q8i.js";import"./comms-deck-CBhsXnY-.js";import"./CommsFlowMap-CzBWvSa5.js";import"./CommsSelection-g1twA-Lb.js";/* empty css */import"./use-conversation-list-A_YUf8lo.js";import"./agent-master-model-C-KdOFDK.js";import"./use-beside-Df-F2Uvg.js";import"./ConversationFeedRows-DVqnZQH0.js";import"./ConversationPanels-C9yCAoJy.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./use-reduced-motion-D7n3vK8t.js";import"./proxy-DOG46ja4.js";import"./activity-CSUhvjD0.js";import"./message-circle-CSiJj6yo.js";import"./tail-events-DQ46QBW1.js";import"./ConversationStatus-CK-YfLpi.js";import"./check-B8dMv3Is.js";import"./sparkles-BbOFw3d0.js";import"./SessionObserve-DaqDhqDI.js";import"./bash-format-BRV5C6Gv.js";import"./lane-tool-detail-Czggx8oM.js";import"./LaneToolHoverCard-C6YehJqD.js";import"./lane-observe-BD21P8BB.js";import"./lane-ask-display-B6iCAVcd.js";import"./ObservedTopologyPanel-DkEkQzo-.js";import"./ObserveTextFlow-ET0dD1wO.js";import"./SessionObserveEvidence-Drv-D8Oh.js";import"./wrench-BsMTSeji.js";import"./external-link-RT4Ph-6-.js";import"./AgentDefinitionsWorkspace-CwZJ833X.js";import"./agent-specialization-CiVxQsFT.js";import"./project-overview-helpers-BQTc_Ous.js";import"./FileViewerPane-HtiDbj9N.js";/* empty css */import"./agent-essentials-8t2il7PV.js";const U=new Set(["0","false","off","no","clear","none"]),re=new Set(["1","true","on","yes"]),ae=new Set(["localhost","127.0.0.1","::1"]);function de(t){return t.startsWith("[")&&t.endsWith("]")?t.slice(1,-1):t}function M(t){const o=t?.trim().toLowerCase();return o==="before"||o==="after"?o:null}function V(t){if(!t)return null;const o=t.trim().toLowerCase();return re.has(o)?!0:U.has(o)?!1:null}function L(t,o,n=[]){const r=V(t);if(r!==null)return r;if(!t)return null;const l=o.toLowerCase(),a=new Set([l,l.replace(/-/g,""),...n.map(i=>i.trim().toLowerCase()).filter(Boolean)]),s=t.split(",").map(i=>i.trim().toLowerCase()).filter(Boolean);return s.some(i=>U.has(i))?!1:s.some(i=>a.has(i))?!0:null}function le({studyId:t,aliases:o,href:n,storedEnabled:r,storedMode:l,dev:a,defaultMode:s="after"}){const i=n?new URL(n,"http://localhost"):null,p=L(i?.searchParams.get("studio"),t,o)??L(i?.searchParams.get(`studio.${t}`),t,o)??L(i?.searchParams.get("studioInjection"),t,o),c=i?ae.has(de(i.hostname)):!1;if(!a&&!c)return{enabled:!1,mode:s};const u=p??V(r)??!1,g=M(i?.searchParams.get("studioMode"))??M(i?.searchParams.get(`studioMode.${t}`))??M(l)??s;return{enabled:u,mode:g}}const ce="openscout.studio.inject.",me="openscout.studio.mode.";function D(t){return`${ce}${t}`}function $(t){return`${me}${t}`}function I(t){if(typeof window>"u")return null;try{return window.localStorage.getItem(t)}catch{return null}}function O(t,o){if(!(typeof window>"u"))try{window.localStorage.setItem(t,o)}catch{}}function ue(){return import.meta.env?.DEV===!0}function pe(t){return t==="before"?"after":"before"}function he(t){typeof window>"u"||X({searchPatch:{studio:null,[`studio.${t}`]:null,studioInjection:null,studioMode:null,[`studioMode.${t}`]:null},replace:!0})}function fe(t,o=[]){const[n,r]=d.useState(()=>le({studyId:t,aliases:o,href:typeof window>"u"?void 0:window.location.href,storedEnabled:I(D(t)),storedMode:I($(t)),dev:ue()})),[l,a]=d.useState(!1);d.useEffect(()=>{if(!n.enabled){a(!1);return}const c=j=>{j.altKey&&a(!0)},u=j=>{j.altKey||a(!1)},g=()=>a(!1);return window.addEventListener("keydown",c),window.addEventListener("keyup",u),window.addEventListener("blur",g),()=>{window.removeEventListener("keydown",c),window.removeEventListener("keyup",u),window.removeEventListener("blur",g)}},[n.enabled]);const s=d.useCallback(c=>{O(D(t),c?"1":"0"),r(u=>({...u,enabled:c}))},[t]),i=d.useCallback(c=>{O($(t),c),r(u=>({...u,mode:c}))},[t]),p=l?pe(n.mode):n.mode;return d.useMemo(()=>({...n,renderedMode:p,peeking:p!==n.mode,setEnabled:s,setMode:i}),[p,s,i,n])}function ge({studyId:t,aliases:o,anchor:n,title:r,children:l,renderStudy:a}){const s=fe(t,o);return s.enabled?e.jsxs("div",{className:"s-studio-injection","data-studio-anchor":n,children:[e.jsxs("div",{className:"s-studio-injection-bar",children:[e.jsxs("div",{className:"s-studio-injection-label",children:[e.jsx("span",{className:"s-studio-injection-kicker",children:"Studio injection"}),e.jsx("span",{className:"s-studio-injection-title",children:r}),e.jsx("span",{className:"s-studio-injection-anchor",children:n})]}),e.jsxs("div",{className:"s-studio-injection-controls",role:"group","aria-label":`${r} mode`,children:[e.jsx("button",{type:"button",className:"s-studio-injection-mode","data-active":s.mode==="before","aria-pressed":s.mode==="before",onClick:()=>s.setMode("before"),children:"Before"}),e.jsx("button",{type:"button",className:"s-studio-injection-mode","data-active":s.mode==="after","aria-pressed":s.mode==="after",onClick:()=>s.setMode("after"),children:"After"})]}),e.jsx("span",{className:"s-studio-injection-state",children:s.peeking?`Option: ${s.renderedMode}`:s.renderedMode}),e.jsx("button",{type:"button",className:"s-studio-injection-close",onClick:()=>{he(t),s.setEnabled(!1)},children:"Close"})]}),e.jsx("div",{className:"s-studio-injection-body","data-studio-mode":s.renderedMode,children:s.renderedMode==="before"?l:a()})]}):e.jsx(e.Fragment,{children:l})}const b=[{id:"openscout",title:"openscout",root:"~/dev/openscout",signal:"Studio mode injection for agent directory",sessions:9,agents:[{id:"hudson",name:"Hudson",handle:"@hudson",state:"working",role:"web design system",branch:"feat/studio-mode",task:"Refactoring the agent directory into insertion points",last:"18s"},{id:"scout",name:"Scout",handle:"@scout",state:"attention",role:"operator assistant",branch:"main",task:"Needs placement decision",last:"1m"},{id:"quill",name:"Quill",handle:"@quill",state:"ready",role:"docs",branch:"docs/agent-view",task:"Ready to write the study summary",last:"7m"}]},{id:"hudson",title:"hudson",root:"~/dev/hudson",signal:"Slot contracts and chrome primitives",sessions:4,agents:[{id:"atlas",name:"Atlas",handle:"@atlas",state:"working",role:"framework",branch:"slots/studio-anchor",task:"Mapping chrome slots to page anchors",last:"3m"},{id:"mira",name:"Mira",handle:"@mira",state:"ready",role:"qa",branch:"main",task:"Idle",last:"12m"}]},{id:"lattices",title:"lattices",root:"~/dev/lattices",signal:"macOS web view parity pass",sessions:2,agents:[{id:"north",name:"North",handle:"@north",state:"offline",role:"native",branch:"main",task:"No active session",last:"1h"}]}],je={working:"working",ready:"ready",attention:"attention",offline:"offline"};function xe({children:t}){return e.jsx(ge,{studyId:"agent-directory",aliases:["agents","agent","agent-directory-before-after"],anchor:"agents.directory",title:"Agent Directory",renderStudy:()=>e.jsx(ve,{}),children:t})}function ve(){const t=b.flatMap(s=>s.agents),o=t.filter(s=>s.state==="working"),n=t.filter(s=>s.state==="ready"),r=t.filter(s=>s.state==="attention"),l=b.reduce((s,i)=>s+i.sessions,0),a=o[0]??t[0];return e.jsxs("section",{className:"s-agent-studio-study","aria-label":"Agent directory injected study",children:[e.jsxs("div",{className:"s-agent-studio-banner",children:[e.jsx("span",{children:"After study"}),e.jsx("strong",{children:"Injected static view inside the live Agents route"}),e.jsx("em",{children:"Fixture data · insertion-point prototype · no backend writes"})]}),e.jsxs("header",{className:"s-agent-studio-head","data-studio-anchor":"agent.directory.header",children:[e.jsxs("div",{className:"s-agent-studio-title-block",children:[e.jsx("span",{className:"s-agent-studio-kicker",children:"Studio / agents.directory / after"}),e.jsx("h1",{className:"s-agent-studio-title",children:"Project command center"}),e.jsxs("span",{className:"s-agent-studio-subtitle",children:[t.length," agents across ",b.length," projects"]})]}),e.jsxs("div",{className:"s-agent-studio-metrics","aria-label":"Agent study summary",children:[e.jsx(y,{label:"working",value:o.length,tone:"working"}),e.jsx(y,{label:"ready",value:n.length}),e.jsx(y,{label:"attention",value:r.length,tone:"attention"}),e.jsx(y,{label:"sessions",value:l})]})]}),e.jsxs("div",{className:"s-agent-studio-layout",children:[e.jsxs("div",{className:"s-agent-studio-main",children:[e.jsxs("section",{className:"s-agent-studio-pressure","data-studio-anchor":"agent.active-strip",children:[e.jsxs("div",{className:"s-agent-studio-section-head",children:[e.jsx("span",{children:"Pressure queue"}),e.jsx("strong",{children:o.length+r.length})]}),e.jsx("div",{className:"s-agent-studio-pressure-list",children:[...o,...r].map(s=>e.jsxs("article",{className:`s-agent-studio-pressure-card s-agent-studio-pressure-card--${s.state}`,children:[e.jsx("span",{className:"s-agent-studio-dot","data-state":s.state}),e.jsxs("div",{className:"s-agent-studio-pressure-copy",children:[e.jsx("strong",{children:s.name}),e.jsx("span",{children:s.task})]}),e.jsx("time",{children:s.last})]},s.id))})]}),e.jsx("section",{className:"s-agent-studio-projects","data-studio-anchor":"agent.project-board",children:b.map(s=>e.jsxs("article",{className:"s-agent-studio-project",children:[e.jsxs("div",{className:"s-agent-studio-project-main",children:[e.jsxs("div",{children:[e.jsx("span",{className:"s-agent-studio-project-root",children:s.root}),e.jsx("h2",{children:s.title})]}),e.jsxs("span",{className:"s-agent-studio-project-sessions",children:[s.sessions," sessions"]})]}),e.jsx("p",{children:s.signal}),e.jsx("div",{className:"s-agent-studio-agent-row",children:s.agents.map(i=>e.jsxs("span",{className:`s-agent-studio-agent-pill s-agent-studio-agent-pill--${i.state}`,children:[e.jsx("span",{className:"s-agent-studio-dot","data-state":i.state}),i.name]},i.id))})]},s.id))})]}),e.jsxs("aside",{className:"s-agent-studio-detail","data-studio-anchor":"agent.detail-preview",children:[e.jsx("span",{className:"s-agent-studio-kicker",children:"Pinned agent"}),e.jsx("h2",{children:a.name}),e.jsx("span",{className:`s-agent-studio-state s-agent-studio-state--${a.state}`,children:je[a.state]}),e.jsxs("dl",{children:[e.jsxs("div",{children:[e.jsx("dt",{children:"Handle"}),e.jsx("dd",{children:a.handle})]}),e.jsxs("div",{children:[e.jsx("dt",{children:"Role"}),e.jsx("dd",{children:a.role})]}),e.jsxs("div",{children:[e.jsx("dt",{children:"Branch"}),e.jsx("dd",{children:a.branch})]}),e.jsxs("div",{children:[e.jsx("dt",{children:"Current task"}),e.jsx("dd",{children:a.task})]})]})]})]})]})}function y({label:t,value:o,tone:n}){return e.jsxs("div",{className:`s-agent-studio-metric${n?` s-agent-studio-metric--${n}`:""}`,children:[e.jsx("strong",{children:o}),e.jsx("span",{children:t})]})}const R="/api/conversations",T="/api/fleet",H="/api/tail/discover",N=3e4;function $s({navigate:t,selectedAgentId:o,conversationId:n,tab:r,activeRoute:l}){const{agents:a,agentsLoaded:s,route:i}=Z(),[p,c]=d.useState(()=>S(R,N)??[]),[u,g]=d.useState(()=>S(T,N)),[j,K]=d.useState(()=>S(H,N)),[z,q]=d.useState(()=>S(R,N)===null),P=Y(i),A=d.useMemo(()=>W(a,P),[a,P]),x=d.useCallback(async()=>{const[h,f,w]=await Promise.allSettled([E(R),E(T),E(H)]);h.status==="fulfilled"&&c(h.value),f.status==="fulfilled"&&g(f.value),w.status==="fulfilled"&&K(w.value),q(!1)},[]);d.useEffect(()=>{x()},[x]),d.useEffect(()=>{const h=()=>{C()&&x()},f=window.setInterval(h,1e4),w=Q(h);return()=>{window.clearInterval(f),w()}},[x]),J(()=>!0,()=>{C()&&x()});const m=se(A,o),B=!!(o&&m&&m.id!==o),v=i.view==="agents-v2"?i.projectSlug:void 0,k=!!(v&&!r),{conversationByAgentId:_,sessionByAgentId:G}=d.useMemo(()=>oe(p),[p]);if(d.useEffect(()=>{!o||!m||!B||t({view:"agents-v2",agentId:m.id,...k&&v?{projectSlug:v}:{},...n?{conversationId:n}:{},...r?{tab:r}:{}})},[n,r,k,t,v,m,o,B]),m&&!k){const h=n??_.get(m.id)??m.conversationId??null,f=r??(n?"message":"profile");return e.jsx(F,{activeRoute:l??i,navigate:t,bar:e.jsx(ne,{agent:m,conversationId:h,activeTab:f,navigate:t}),children:e.jsx(ie,{agent:m,allAgents:A,conversationId:h,navigate:t,activeTab:f})})}return e.jsx(F,{activeRoute:l??i,navigate:t,children:e.jsx(xe,{children:e.jsx(te,{agents:A,fleet:u,sessionByAgentId:G,conversationByAgentId:_,sessions:p,discovery:j,loading:!s||z,navigate:t,selectedAgentId:m?.id??o})})})}function F({activeRoute:t,children:o,navigate:n,bar:r}){return e.jsxs("div",{className:"s-secondary-nav-shell",children:[e.jsx("div",{className:"s-secondary-nav-bar",children:r??e.jsx(ee,{activeRoute:t,navigate:n})}),e.jsx("div",{className:"s-secondary-nav-body",children:o})]})}export{$s as AgentsScreen};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as t}from"./index-C8uS5szO.js";import{S as i}from"./SecondaryNav-BkTn5tkq.js";import{A as m}from"./secondaryNavConfig-DAXIFtVd.js";import"./nav-destinations-CyXnw9kh.js";import"./createLucideIcon-DkjnzvcJ.js";import"./message-square-NmXWtWLR.js";import"./terminal-96JWDYDL.js";import"./search-C4VlW_0l.js";import"./compass-DTZdCpv9.js";import"./settings-TJIkkZ0P.js";import"./file-text-ChtICwub.js";import"./git-branch-CA3cHKCI.js";import"./code-xml-BmyLM0I2.js";import"./scroll-text-DwC8r2g6.js";function E({activeRoute:r,navigate:o}){return t.jsx(i,{ariaLabel:"Agents sections",activeRoute:r,groups:m,navigate:o})}export{E as AgentsSubnav};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as t}from"./index-
|
|
1
|
+
import{j as t}from"./index-C8uS5szO.js";function r(){return t.jsxs("svg",{className:"s-thread-participant-suit",viewBox:"0 0 42 42","aria-hidden":"true",children:[t.jsx("path",{d:"M 21 30.5 C 31 30.5 40 34.5 41.5 42 L 0.5 42 C 2 34.5 11 30.5 21 30.5 Z",fill:"var(--fp-suit)"}),t.jsx("rect",{x:"15.5",y:"26.5",width:"11",height:"4",rx:"2",fill:"var(--fp-suit-light)"}),t.jsx("path",{d:"M 8.5 15 A 13 13 0 0 1 19 5.5",fill:"none",stroke:"var(--fp-visor)",strokeWidth:"2.4",strokeLinecap:"round"})]})}export{r as AstronautSuit};
|