@openscout/scout 0.2.105 → 0.2.107
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/README.md +26 -0
- package/bin/scoutd +0 -0
- package/dist/build-manifest.json +3 -3
- package/dist/chat.mjs +23 -1
- package/dist/client/assets/ActivityScreen-CZmGwQ2U.js +1 -0
- package/dist/client/assets/{AddProjectForm-CHNJ4NnS.js → AddProjectForm-CusDRiVO.js} +1 -1
- package/dist/client/assets/{AdventureEvidence-B4mEvXeD.js → AdventureEvidence-CyegKk1V.js} +1 -1
- package/dist/client/assets/{AdventureReader-ZsBDQITY.js → AdventureReader-X-hbTOi0.js} +1 -1
- package/dist/client/assets/{AdventureScenery-DSxDlqG1.js → AdventureScenery-LPXSVP67.js} +1 -1
- package/dist/client/assets/AgentAdventures-BAgxdOF8.js +1 -0
- package/dist/client/assets/AgentAvatar-CrP1eXxk.js +1 -0
- package/dist/client/assets/AgentConfigurationScreen-1L0IQm2w.js +1 -0
- package/dist/client/assets/AgentDefinitionsWorkspace-DguGs7jZ.js +1 -0
- package/dist/client/assets/{AgentDetailCard-MIEBKw_S.js → AgentDetailCard-DtHT3sCo.js} +1 -1
- package/dist/client/assets/AgentFloorView-DH4jiDgw.js +1 -0
- package/dist/client/assets/{AgentFloorWorld-BTqwmK5G.js → AgentFloorWorld-CjoIa6jA.js} +1 -1
- package/dist/client/assets/AgentInfoScreen-DYtmKkeE.js +1 -0
- package/dist/client/assets/{AgentLaneCard-C4rKLLdT.js → AgentLaneCard-BaZ2g-f8.js} +1 -1
- package/dist/client/assets/{AgentLaneChrome-fGC-ZrJS.js → AgentLaneChrome-TF1SlJSc.js} +1 -1
- package/dist/client/assets/{AgentLaneDetailSheet-BTF4_th9.js → AgentLaneDetailSheet-EzEPsn3g.js} +1 -1
- package/dist/client/assets/{AgentLaneSummaryResize-DgSeA_vS.js → AgentLaneSummaryResize-dpp7YvrX.js} +1 -1
- package/dist/client/assets/AgentLanesEmbedScreen-BlSof_6S.js +1 -0
- package/dist/client/assets/{AgentLanesPreflight-CcS23wij.js → AgentLanesPreflight-Ry-aqDTr.js} +1 -1
- package/dist/client/assets/AgentLanesView-BJi9xXz6.js +2 -0
- package/dist/client/assets/{AgentLiveActions-6Kfr1uOT.js → AgentLiveActions-CfTupTEl.js} +1 -1
- package/dist/client/assets/AgentMasterScreen-EJhmuKgl.js +1 -0
- package/dist/client/assets/AgentSessions-B1gOhDBf.js +6 -0
- package/dist/client/assets/AgentsConsole-RXGqRvcb.js +1 -0
- package/dist/client/assets/AgentsScreen-ChwMBs11.js +1 -0
- package/dist/client/assets/AgentsSubnav-DwNX4yy0.js +1 -0
- package/dist/client/assets/{AstronautSuit-D67fIBdR.js → AstronautSuit-Cchnc4Ug.js} +1 -1
- package/dist/client/assets/{AtopView-Ck30FbzG.js → AtopView-gkEp4y__.js} +1 -1
- package/dist/client/assets/{BackToPicker-CkBhGRlD.js → BackToPicker-CUkjnoVk.js} +1 -1
- package/dist/client/assets/BriefingDetailScreen-DrlC3qkm.js +1 -0
- package/dist/client/assets/{BriefingsScreen-DTxYMr3a.js → BriefingsScreen-B1HlBMGZ.js} +1 -1
- package/dist/client/assets/{BrokerMetadataPanel-crirZCdo.js → BrokerMetadataPanel-Dk242Yh_.js} +1 -1
- package/dist/client/assets/BrokerScreen-DwOF6bMA.js +8 -0
- package/dist/client/assets/{Canvas-CRP0KjKb.js → Canvas-X9pVSkw3.js} +1 -1
- package/dist/client/assets/{CastPicker-ZPomvOf-.js → CastPicker-BXUtPAGC.js} +1 -1
- package/dist/client/assets/ChannelComposer-DoK7IDGa.js +1 -0
- package/dist/client/assets/ChannelSidebar-e9DOPulb.js +1 -0
- package/dist/client/assets/{CharacterFamilyPreview-ckVkecDO.js → CharacterFamilyPreview-DMfw7UM_.js} +1 -1
- package/dist/client/assets/{ChatAvatar-DKBsbOqk.js → ChatAvatar-C3a_o5Hj.js} +1 -1
- package/dist/client/assets/ChatBits-CsvxbToF.js +1 -0
- package/dist/client/assets/{ChatCollapsedStrip-Co0NmqOO.js → ChatCollapsedStrip-FEmQ_G9J.js} +1 -1
- package/dist/client/assets/ChatRichInput-DhtwFxQE.js +31 -0
- package/dist/client/assets/ChatRightPanel-C1h_aIkn.js +1 -0
- package/dist/client/assets/ChatSpaceSurface-BXyLYKHn.js +1 -0
- package/dist/client/assets/ChatSpaceTheme-3wLZGsvT.css +1 -0
- package/dist/client/assets/ChatSpaceTheme-CUH8bTZc.js +1 -0
- package/dist/client/assets/{CodeDiffPane-D-iv28LJ.js → CodeDiffPane-DuQRwpgK.js} +1 -1
- package/dist/client/assets/{CodeProjectPicker-CZ3gDdiT.js → CodeProjectPicker-ZQ6gSBpg.js} +1 -1
- package/dist/client/assets/{CodeScreen-CSC-zbP9.js → CodeScreen-BXyKeL5T.js} +1 -1
- package/dist/client/assets/{CommsCanvas-DdNAwjGW.js → CommsCanvas-THp0r_U8.js} +1 -1
- package/dist/client/assets/{CommsDeck-mGWY7Ivi.js → CommsDeck-BVmSMV2V.js} +1 -1
- package/dist/client/assets/{CommsFlowGraph-voDD9M5R.js → CommsFlowGraph-DxoOaLF_.js} +1 -1
- package/dist/client/assets/{CommsFlowMap-C33sgD48.js → CommsFlowMap-Vi8ziCPg.js} +1 -1
- package/dist/client/assets/{CommsSelection-BL8aYD7z.js → CommsSelection-BUoRbu9o.js} +1 -1
- package/dist/client/assets/ComposerAttachments-DW0AIb8k.js +1 -0
- package/dist/client/assets/ConversationComposer-CUQyArlk.js +1 -0
- package/dist/client/assets/ConversationFeedRows-DWiOfT-y.js +1 -0
- package/dist/client/assets/ConversationHeader-C-ZWscKj.js +1 -0
- package/dist/client/assets/{ConversationPanels-6pprBpmq.js → ConversationPanels-D9oC0xG5.js} +2 -2
- package/dist/client/assets/ConversationScreen-9MlMnEo4.css +1 -0
- package/dist/client/assets/ConversationScreen-CUfsQ4MR.js +2 -0
- package/dist/client/assets/ConversationStatus--IPm2nGh.js +1 -0
- package/dist/client/assets/{CrewAvatar-D0c9z5Qr.css → CrewAvatar-BnIPIn_Z.css} +1 -1
- package/dist/client/assets/CrewAvatar-kTznzqcO.js +1 -0
- package/dist/client/assets/{CrewSprite-Dp9KBBGY.js → CrewSprite-Dhryjx2c.js} +1 -1
- package/dist/client/assets/CrewStage-vdO0qm3D.js +1 -0
- package/dist/client/assets/CrewWorkspaces-DCBzAAS4.js +1 -0
- package/dist/client/assets/{DataTable-av71ehJV.js → DataTable-aH-jCyDq.js} +1 -1
- package/dist/client/assets/{DispatchAftermath-CcYGUB10.js → DispatchAftermath-66uQAorV.js} +1 -1
- package/dist/client/assets/{DocumentFocusViewer-DlMiEALb.js → DocumentFocusViewer-DJr0v0D_.js} +1 -1
- package/dist/client/assets/{EmbeddableSurfacesLab-CTkO_tQR.js → EmbeddableSurfacesLab-BBa70EhJ.js} +1 -1
- package/dist/client/assets/{EmptyState-CYUwYyAW.js → EmptyState-CZlrHXy-.js} +1 -1
- package/dist/client/assets/{FileViewerPane-Cxhixtks.js → FileViewerPane-BAO6mtjD.js} +1 -1
- package/dist/client/assets/FleetRollCallHud-C5q2567n.js +1 -0
- package/dist/client/assets/FlightObserveScreen-DZ2mrw91.js +1 -0
- package/dist/client/assets/{FloorContextSheet-Vj_wVZq1.js → FloorContextSheet-2_NVPQor.js} +1 -1
- package/dist/client/assets/{FloorExchangePanel-CjHSDXad.js → FloorExchangePanel-BU1pPu8K.js} +1 -1
- package/dist/client/assets/{FloorMessagePasses-BG4ebnX5.js → FloorMessagePasses-cLW2UGNP.js} +1 -1
- package/dist/client/assets/{FloorReplay-BoYaGY9t.js → FloorReplay-VFzA6Kxc.js} +1 -1
- package/dist/client/assets/FloorResourcesSheet-C-kQ6Ren.js +1 -0
- package/dist/client/assets/{FloorSavedWork-jbtRs-YE.js → FloorSavedWork-BeHDejWz.js} +1 -1
- package/dist/client/assets/FloorTacticalHUD-CO-iiFpb.js +1 -0
- package/dist/client/assets/{FollowScreen-CupyOgt4.js → FollowScreen-CFfkIbc6.js} +1 -1
- package/dist/client/assets/HarnessMark-C4naWc16.js +1 -0
- package/dist/client/assets/HarnessesScreen-DX3NLcDG.js +1 -0
- package/dist/client/assets/{HerdrSession-Dcm3vf9U.js → HerdrSession-_t7yM8vX.js} +2 -2
- package/dist/client/assets/{HomeHero-pIZtE1cC.js → HomeHero-DouPyNmz.js} +1 -1
- package/dist/client/assets/{HostAdvisorView-Dv5meXo2.js → HostAdvisorView-CnM1i8hW.js} +1 -1
- package/dist/client/assets/InviteLandingScreen-CEjG2E34.js +1 -0
- package/dist/client/assets/InviteSheet-CwxZtWCl.js +1 -0
- package/dist/client/assets/{JumpPalette-BmiSOEmp.js → JumpPalette-O1aJE9gR.js} +1 -1
- package/dist/client/assets/{KnowledgeSearchInspector-B8yiM524.js → KnowledgeSearchInspector-32n9baT-.js} +1 -1
- package/dist/client/assets/KnowledgeSearchScreen-Dd6jrQ0A.js +1 -0
- package/dist/client/assets/{LaneToolHoverCard-D2cnTeUd.js → LaneToolHoverCard-CJa110yk.js} +1 -1
- package/dist/client/assets/LaneTraceDetailSheet-DYrd0BIf.js +1 -0
- package/dist/client/assets/{LaneTraceEventFocus-BLhVHwff.js → LaneTraceEventFocus-TbrNHRj_.js} +1 -1
- package/dist/client/assets/{MeshCanvas-BR25OBTJ.js → MeshCanvas-DWZHYh1A.js} +2 -2
- package/dist/client/assets/{MeshCanvasMinimap-ClVolr4-.js → MeshCanvasMinimap-iswYFpIb.js} +1 -1
- package/dist/client/assets/MeshScreen-8nAzQVbm.js +1 -0
- package/dist/client/assets/{MeshTopologyView-BT3ke2D1.js → MeshTopologyView-BVvtqI8q.js} +2 -2
- package/dist/client/assets/MessageEmbeds-ksPazAKH.js +1 -0
- package/dist/client/assets/MessagesScreen-C3WB4T21.js +1 -0
- package/dist/client/assets/{MissionContextRail-CafjuseK.js → MissionContextRail-D62-Wis8.js} +1 -1
- package/dist/client/assets/MissionControlView-B9cNPXvl.js +1 -0
- package/dist/client/assets/{MissionFocusOverlay-nhy3hkxQ.js → MissionFocusOverlay-C1zys3Jv.js} +1 -1
- package/dist/client/assets/MissionLeftAgentRow-vycMV77n.js +1 -0
- package/dist/client/assets/{MissionLogPane-DiUf3vWW.js → MissionLogPane-B19lYSY9.js} +1 -1
- package/dist/client/assets/NativeAreaScreen-B1RLa85C.js +1 -0
- package/dist/client/assets/NativeAreaScreen-CV0OhGra.js +1 -0
- package/dist/client/assets/NativeAreaScreen-CzuZt6o1.js +1 -0
- package/dist/client/assets/{NewAgentModal-BQ2wQ5gp.js → NewAgentModal-Bh-L-emz.js} +1 -1
- package/dist/client/assets/NewChatComposer-C97-iTMK.js +19 -0
- package/dist/client/assets/{NewChatOrigin-C8ROO4ps.js → NewChatOrigin-DFbF_XvR.js} +1 -1
- package/dist/client/assets/{NodeDetailPanel-BNTqYC7m.js → NodeDetailPanel-CElOEpCh.js} +1 -1
- package/dist/client/assets/{NodeMenu-CcOeFRCB.js → NodeMenu-B-jjHf1c.js} +1 -1
- package/dist/client/assets/ObserveEmbedScreen-B7Qt69Ms.js +2 -0
- package/dist/client/assets/{ObserveTextFlow-CC5mnngm.js → ObserveTextFlow-PFnG_10h.js} +2 -2
- package/dist/client/assets/{ObservedTopologyPanel-DF6tRZL_.js → ObservedTopologyPanel-CUTIoLZJ.js} +1 -1
- package/dist/client/assets/OpenScoutAppShell-37PDFfA4.js +31 -0
- package/dist/client/assets/OpsAgentsView-DajlX8LO.js +1 -0
- package/dist/client/assets/OpsScreen-jVcaBKGi.js +1 -0
- package/dist/client/assets/OpsSubnav-BOOYShHE.js +1 -0
- package/dist/client/assets/ProjectAgentProfile-D_wlW4sQ.js +1 -0
- package/dist/client/assets/{ProjectAgentProfileBar-C8z22pJ2.js → ProjectAgentProfileBar-DHuMKJj-.js} +1 -1
- package/dist/client/assets/ProjectAgentProfileHero-Dbebtug1.js +1 -0
- package/dist/client/assets/ProjectsInbox-B8zYE4vP.css +1 -0
- package/dist/client/assets/ProjectsInbox-Cgu7B4--.js +2 -0
- package/dist/client/assets/ProjectsRail-CDWocin_.js +1 -0
- package/dist/client/assets/ProjectsScreen-B_CJycqW.js +1 -0
- package/dist/client/assets/ProjectsThreadAside-1MMl_qUD.js +1 -0
- package/dist/client/assets/Provider-C35yu29I.js +5 -0
- package/dist/client/assets/{RailRow-DUPqXMZh.js → RailRow-BjmWK420.js} +1 -1
- package/dist/client/assets/RawSessionsTable-DzT90hWu.js +1 -0
- package/dist/client/assets/RealtimeVoiceScreen-B6ylX3WQ.js +16 -0
- package/dist/client/assets/{RenderedWorkerSprite-C8fxndAh.js → RenderedWorkerSprite-Dhlyg89J.js} +1 -1
- package/dist/client/assets/{ReplayClock-DUVJjrIu.js → ReplayClock-348f17bW.js} +1 -1
- package/dist/client/assets/{ReplayLog-Bek1Vc4W.js → ReplayLog-CBnAM3ui.js} +1 -1
- package/dist/client/assets/{ReplayOutpost-DlRg3172.js → ReplayOutpost-DyRPfNFx.js} +1 -1
- package/dist/client/assets/{RepoDiffEmbedScreen-CVUMnt6A.js → RepoDiffEmbedScreen-BWxvRDrS.js} +1 -1
- package/dist/client/assets/{RepoDiffPageScreen-D9-s5PyB.js → RepoDiffPageScreen-DN94irmY.js} +1 -1
- package/dist/client/assets/{RepoDiffViewer-D7FN-oyY.js → RepoDiffViewer-_4JVXBIW.js} +1 -1
- package/dist/client/assets/RepoDiffViewerLazy-XGVC3WXv.js +2 -0
- package/dist/client/assets/{ReposScreen-BQ7HO1om.js → ReposScreen-uMCpt0e9.js} +2 -2
- package/dist/client/assets/{RiggedWorkerCharacter-CJMWlvV-.js → RiggedWorkerCharacter-q6QRc7_o.js} +1 -1
- package/dist/client/assets/{SageModelStudio-B526NSnw.js → SageModelStudio-CNDhZhgD.js} +1 -1
- package/dist/client/assets/{ScoutDeckSurface-ChkvGyEW.js → ScoutDeckSurface-CUaU4R6T.js} +1 -1
- package/dist/client/assets/{ScoutSurface-6g1f5chk.js → ScoutSurface-3_25USO_.js} +1 -1
- package/dist/client/assets/{ScoutbotFxLab-BuwBdnPf.js → ScoutbotFxLab-CRqhYe0a.js} +1 -1
- package/dist/client/assets/{SecondaryNav-Bs-_VwTC.js → SecondaryNav-D7dbV2qo.js} +1 -1
- package/dist/client/assets/SessionContextStrip-CXfs9hUD.js +1 -0
- package/dist/client/assets/SessionContextStrip-DAIXwtHd.css +1 -0
- package/dist/client/assets/{SessionEmbedScreen-C2wf35-P.js → SessionEmbedScreen-D0zFmou-.js} +1 -1
- package/dist/client/assets/SessionHopMenu-E6VJZrE0.js +1 -0
- package/dist/client/assets/{SessionObserve-B64YsYhy.js → SessionObserve-DXxBvejJ.js} +9 -9
- package/dist/client/assets/SessionObserveEvidence-Cuj_KHxR.js +1 -0
- package/dist/client/assets/SessionRefScreen-DqLSUlCE.js +1 -0
- package/dist/client/assets/SessionsScreen-BLIRkohT.js +1 -0
- package/dist/client/assets/SettingsDrawer-juCpnbH6.js +3 -0
- package/dist/client/assets/SettingsScreen-BtGzE2-O.js +1 -0
- package/dist/client/assets/{SharedFloorCharacter-V04kD5T9.js → SharedFloorCharacter-DNEiaOUh.js} +1 -1
- package/dist/client/assets/SharedWorkFloor-0rqtdF-n.css +1 -0
- package/dist/client/assets/SharedWorkFloor-D9mf9KSg.js +2 -0
- package/dist/client/assets/{ShikiPane-XwFI-pCp.js → ShikiPane-CRtTYkMj.js} +1 -1
- package/dist/client/assets/{SlidePanel-BMpkXai_.js → SlidePanel-_CHAQdOa.js} +1 -1
- package/dist/client/assets/SpaceSwitcher-BLgSCf_T.js +1 -0
- package/dist/client/assets/{SpriteAvatar-aHeF4ZQZ.js → SpriteAvatar-CpZWf54-.js} +1 -1
- package/dist/client/assets/{SproutActionSprite-DI5N3gOj.js → SproutActionSprite-BSiTS4en.js} +1 -1
- package/dist/client/assets/{StatusPill-Dw4LP7wu.js → StatusPill-2gCP6H7A.js} +1 -1
- package/dist/client/assets/{TailView-BofjmUMJ.js → TailView-CYSijNTy.js} +2 -2
- package/dist/client/assets/Terminal-Bi97yb5s.js +4 -0
- package/dist/client/assets/TerminalEmbedScreen-Bqop67Bq.js +1 -0
- package/dist/client/assets/{TerminalHeaderMount-CwbQhXcI.js → TerminalHeaderMount-Cq4OD_xN.js} +1 -1
- package/dist/client/assets/{TerminalRelay--qOBwnbR.js → TerminalRelay-DrikpUSJ.js} +3 -3
- package/dist/client/assets/{TextDocumentSurface-BK6Qy41F.js → TextDocumentSurface-D52m7Vd8.js} +1 -1
- package/dist/client/assets/{TmuxPeek-DpUT9Tpc.js → TmuxPeek-CXFeweMg.js} +1 -1
- package/dist/client/assets/VoiceControlWell-DF3bjcYA.js +1 -0
- package/dist/client/assets/VoicePathDiagram-CmpHWfO-.js +1 -0
- package/dist/client/assets/{VoicePermissionsPanel-D35fOnQj.js → VoicePermissionsPanel-Ok2nfxHw.js} +1 -1
- package/dist/client/assets/VoiceTurnDetails-wAByRaNB.js +8 -0
- package/dist/client/assets/VoiceTurnStage-edoJalLV.js +1 -0
- package/dist/client/assets/VoiceTurnView-D-8g5E4r.js +1 -0
- package/dist/client/assets/WorkDetailScreen-zQkNVy2F.js +5 -0
- package/dist/client/assets/{WorkFilesViewer-t8AEyx3Q.js → WorkFilesViewer-vNt01sDd.js} +1 -1
- package/dist/client/assets/{WorkRunView-_mhG_FR2.js → WorkRunView-BDkR7Edq.js} +1 -1
- package/dist/client/assets/WorldActorTalk-BvSg_b1y.js +1 -0
- package/dist/client/assets/{WorldCharacter-BRrj3MQN.js → WorldCharacter-CIIlutQq.js} +1 -1
- package/dist/client/assets/WorldMinimap-B6HNgcDe.js +1 -0
- package/dist/client/assets/{WorldSky-D-RJzSa6.js → WorldSky-Jm2Z6dfW.js} +1 -1
- package/dist/client/assets/{activity-BJqFrZyB.js → activity-CIlFrfPJ.js} +1 -1
- package/dist/client/assets/{addon-fit-CHohcvS3.js → addon-fit-dFpj9Kfq.js} +1 -1
- package/dist/client/assets/{addon-webgl-CaRy2x2b.js → addon-webgl-BFCGRtGh.js} +1 -1
- package/dist/client/assets/{agent-essentials-bKWYOZaH.js → agent-essentials-BGGvT5G6.js} +1 -1
- package/dist/client/assets/{agent-master-model-C-KdOFDK.js → agent-master-model-Bk_yuUXJ.js} +1 -1
- package/dist/client/assets/{agent-specialization-BplZUa_0.js → agent-specialization-DDc7mLCW.js} +1 -1
- package/dist/client/assets/agents-screen-BYakbO50.css +1 -0
- package/dist/client/assets/{arc.es-CubLvQ4W.js → arc.es-C1SQHJ3k.js} +1 -1
- package/dist/client/assets/{arrow-left-DFfKAq0d.js → arrow-left-MVUKauwQ.js} +1 -1
- package/dist/client/assets/{arrow-right-DmAWnyAH.js → arrow-right-Bp-FpE5V.js} +1 -1
- package/dist/client/assets/{arrow-up-right-B0aLKiyF.js → arrow-up-right-BPedAgxO.js} +1 -1
- package/dist/client/assets/{book-open-BL9qvhEI.js → book-open-CV98WMSp.js} +1 -1
- package/dist/client/assets/{bot-BhAVbcCA.js → bot-B4zLQ4IN.js} +1 -1
- package/dist/client/assets/chat-api-DSJMBYoT.js +2 -0
- package/dist/client/assets/chat-message-markup-91DIry6R.js +1 -0
- package/dist/client/assets/chat-space-model-aW3Fd8_U.js +4 -0
- package/dist/client/assets/chat-transport-DNS5CB2I.js +1 -0
- package/dist/client/assets/{check-g7D7-c1J.js → check-lrJ3a73a.js} +1 -1
- package/dist/client/assets/{chevron-down-CDzRQQGl.js → chevron-down-l1mrh5S9.js} +1 -1
- package/dist/client/assets/{chevron-right-DKGTLiqc.js → chevron-right-DrfqcerI.js} +1 -1
- package/dist/client/assets/{chevron-up-DX7R6KY2.js → chevron-up-CETZJzjV.js} +1 -1
- package/dist/client/assets/{chunk-HRAB3GC3-Dvk_QpRq.js → chunk-HRAB3GC3-DbVLgbWX.js} +1 -1
- package/dist/client/assets/{clock-CQb4FeMf.js → clock-BV1aqPkK.js} +1 -1
- package/dist/client/assets/{code-xml-Cmadr3pQ.js → code-xml-BhcNbLWU.js} +1 -1
- package/dist/client/assets/{coffee-ljG1_krY.js → coffee-D7EAOdCk.js} +1 -1
- package/dist/client/assets/{compass-CvzkzkIh.js → compass-63TUaz5_.js} +1 -1
- package/dist/client/assets/content-B1lgE8qr.js +1 -0
- package/dist/client/assets/content-B5l11YyQ.js +1 -0
- package/dist/client/assets/content-BNZOZEpX.js +1 -0
- package/dist/client/assets/content-BRIxP155.js +1 -0
- package/dist/client/assets/content-BWd8gt8L.js +1 -0
- package/dist/client/assets/content-BfwS2jAK.js +1 -0
- package/dist/client/assets/content-C4p43_eT.js +1 -0
- package/dist/client/assets/content-CdYfaoDV.js +1 -0
- package/dist/client/assets/content-CzldLxw0.js +1 -0
- package/dist/client/assets/content-D-olnc4U.js +1 -0
- package/dist/client/assets/content-DTioimq4.js +1 -0
- package/dist/client/assets/content-LOebm3_d.js +1 -0
- package/dist/client/assets/{content-CKJ9zb7Z.js → content-nGlEZhUI.js} +1 -1
- package/dist/client/assets/{content-D1Ze_FG9.js → content-oyzDM-LK.js} +1 -1
- package/dist/client/assets/content-x1PHxED7.js +1 -0
- package/dist/client/assets/content-zX3ZY3T9.js +1 -0
- package/dist/client/assets/{conversation-icons-CIRaxmid.js → conversation-icons-Tqba2d56.js} +1 -1
- package/dist/client/assets/conversation-model-FxDeWlle.js +1 -0
- package/dist/client/assets/conversation-motion-features-C5zjuNwE.js +1 -0
- package/dist/client/assets/conversations-DoAAO6kA.js +1 -0
- package/dist/client/assets/{copy-BGOC1tJB.js → copy-xKeM5ZtU.js} +1 -1
- package/dist/client/assets/{cpu-Q6nrHFTN.js → cpu-BOTa_WLr.js} +1 -1
- package/dist/client/assets/{createLucideIcon-ChvMq-zl.js → createLucideIcon-zZ8Hx7er.js} +1 -1
- package/dist/client/assets/ctx-panel-BC8fpcWJ.css +1 -0
- package/dist/client/assets/direct-voice-BbLPuJ04.js +2 -0
- package/dist/client/assets/direct-voice-DbO7CSv_.css +1 -0
- package/dist/client/assets/discover-DJFxyV1k.js +2 -0
- package/dist/client/assets/embed-entry-Lyvu0Kfc.js +2 -0
- package/dist/client/assets/{external-link-BVccgH0n.js → external-link-CUObqmgX.js} +1 -1
- package/dist/client/assets/{eye-CsGfEVR6.js → eye-LrO-cXQt.js} +1 -1
- package/dist/client/assets/{file-code-corner-Be6da5l3.js → file-code-corner-CsU7jJpu.js} +1 -1
- package/dist/client/assets/{file-text-DP6txVW-.js → file-text-CnISiiw6.js} +1 -1
- package/dist/client/assets/{flag-DAFE2wZ5.js → flag-C4wl8z2-.js} +1 -1
- package/dist/client/assets/fleet-roll-call-BUgf7w-V.css +1 -0
- package/dist/client/assets/{folder-B_S7gBVr.js → folder-D5prSkzz.js} +1 -1
- package/dist/client/assets/{gauge-DQCGlE3o.js → gauge-D9_5iJEm.js} +1 -1
- package/dist/client/assets/{gestures-CofqY4Km.js → gestures-QZub3Ot9.js} +1 -1
- package/dist/client/assets/{git-branch-DcUCsWdJ.js → git-branch-B0_fPLO7.js} +1 -1
- package/dist/client/assets/{go-shortcuts-KQy-ZOpV.js → go-shortcuts-DicR7sUf.js} +1 -1
- package/dist/client/assets/home-moving-signal-rpMhsOJB.js +1 -0
- package/dist/client/assets/home-now-card-ByE6Umcx.js +1 -0
- package/dist/client/assets/{home-now-card-nano-CvU8B61b.js → home-now-card-nano-B5Dv3-pb.js} +1 -1
- package/dist/client/assets/hooks-_eCZZPsR.js +2 -0
- package/dist/client/assets/index-724SdE6r.js +1 -0
- package/dist/client/assets/{index-kkXUq-zf.js → index-CHD0qcfL.js} +1 -1
- package/dist/client/assets/index-CN4rBB_s.css +1 -0
- package/dist/client/assets/index-D1d98iYf.js +1 -0
- package/dist/client/assets/{index-DReVb7jZ.js → index-EsrkGBcv.js} +8 -8
- package/dist/client/assets/index-gGHPA-By.js +1 -0
- package/dist/client/assets/{inspector-panel-CLU7wjnT.js → inspector-panel-BkgUDn6G.js} +2 -2
- package/dist/client/assets/{keyboard-nav-CJXPaHXj.js → keyboard-nav-DDHegDbx.js} +1 -1
- package/dist/client/assets/{lane-roster-store-Ch9t6lb0.js → lane-roster-store-D-RSWjb-.js} +1 -1
- package/dist/client/assets/{layers-BOwyWodP.js → layers-C8PDiMul.js} +1 -1
- package/dist/client/assets/{layout-grid-B36Qsh0y.js → layout-grid-Cor2frzj.js} +1 -1
- package/dist/client/assets/left-Bn5X7x2o.js +2 -0
- package/dist/client/assets/left-BqS0fYX1.js +1 -0
- package/dist/client/assets/left-CTCeeeD3.js +1 -0
- package/dist/client/assets/left-DhtVPVux.js +1 -0
- package/dist/client/assets/left-K39b-Wvx.js +2 -0
- package/dist/client/assets/left-KGmueNPt.js +1 -0
- package/dist/client/assets/left-P_GOYB-s.js +1 -0
- package/dist/client/assets/left-advisor-B0N47De2.js +1 -0
- package/dist/client/assets/left-agents-CsSNc51Y.js +1 -0
- package/dist/client/assets/left-default-BlO5LP2T.js +1 -0
- package/dist/client/assets/left-lanes-C4PhaJE6.js +1 -0
- package/dist/client/assets/left-mission-BjTE5vPa.js +1 -0
- package/dist/client/assets/library-CkWNPHRp.js +1 -0
- package/dist/client/assets/{loader-circle-DNUsuPWz.js → loader-circle-OvccU82H.js} +1 -1
- package/dist/client/assets/{local-agents-I40PawYA.js → local-agents-BqnoxJrq.js} +1 -1
- package/dist/client/assets/log-in-7SnYqW5w.js +1 -0
- package/dist/client/assets/{machine-children-CdhNzDF0.js → machine-children-DxcqCLmd.js} +1 -1
- package/dist/client/assets/media-blobs-Bi8pxr1u.js +1 -0
- package/dist/client/assets/{mentions-Ck_Vjnyp.js → mentions-ByUvhS-v.js} +1 -1
- package/dist/client/assets/{mesh-ops-DSlvHp-D.js → mesh-ops-CiZ8xSAx.js} +1 -1
- package/dist/client/assets/{mesh-view-store-C1-mdP3P.js → mesh-view-store-DZvJC4KU.js} +1 -1
- package/dist/client/assets/{message-circle-cI5_A5mj.js → message-circle-CxRVKNE-.js} +1 -1
- package/dist/client/assets/message-markup-BQW5jdJw.js +15 -0
- package/dist/client/assets/message-markup-Zwo3t4cI.js +1 -0
- package/dist/client/assets/{message-square-CJW4WRlo.js → message-square-BxesYglW.js} +1 -1
- package/dist/client/assets/mission-control-model-BpJHDV5D.js +1 -0
- package/dist/client/assets/{mission-control-store-p_cboAm4.js → mission-control-store-elEEsIvb.js} +1 -1
- package/dist/client/assets/{mission-wall-DOuGOxQy.js → mission-wall-CAo4BKfa.js} +1 -1
- package/dist/client/assets/{monitor-C7_cHlkC.js → monitor-DTTYEb73.js} +1 -1
- package/dist/client/assets/{nav-destinations-CU_euC-Q.js → nav-destinations-uorRqFxf.js} +1 -1
- package/dist/client/assets/{observe-CtS0l3zu.js → observe-BJqERJVj.js} +1 -1
- package/dist/client/assets/{page-status-DwFR4wSw.js → page-status-BswZLqvA.js} +1 -1
- package/dist/client/assets/{panel-right-qP17MwMl.js → panel-right-Bv7sP_fc.js} +1 -1
- package/dist/client/assets/paperclip-BjcuP_Hx.js +1 -0
- package/dist/client/assets/{pause-B_hliKuR.js → pause-C2XTlkjs.js} +1 -1
- package/dist/client/assets/{persistent-state-BUsTTZFE.js → persistent-state-KRk_yb0q.js} +1 -1
- package/dist/client/assets/{pin-Oi4qHR6M.js → pin-C2mFOV1l.js} +1 -1
- package/dist/client/assets/{play-CVeRmqLH.js → play-FT6K3It1.js} +1 -1
- package/dist/client/assets/{plus-D5NLH_fM.js → plus-DFDDeGKu.js} +1 -1
- package/dist/client/assets/profile-DTmzN16I.js +1 -0
- package/dist/client/assets/{projects-inbox-CfwxCTdN.js → projects-inbox-C0FUCv_p.js} +1 -1
- package/dist/client/assets/projects-inbox-ColX6lpx.css +1 -0
- package/dist/client/assets/{provider-DwmCoSlc.js → provider-Dojd8quC.js} +1 -1
- package/dist/client/assets/{proxy-DgzP27W8.js → proxy-AJsmwA6h.js} +1 -1
- package/dist/client/assets/{radio-Cas2qg1D.js → radio-DRoOZsws.js} +1 -1
- package/dist/client/assets/{refresh-cw-IcD2lPoT.js → refresh-cw-BmVr7sCD.js} +1 -1
- package/dist/client/assets/resolve-panes-pbY1fCWi.js +1 -0
- package/dist/client/assets/resolve-sidebar-context-YWkZTq1t.js +1 -0
- package/dist/client/assets/right-49kO-6nD.js +1 -0
- package/dist/client/assets/right-APtItA8A.js +1 -0
- package/dist/client/assets/right-BJwhPqtn.js +1 -0
- package/dist/client/assets/right-BPqrf4ek.js +1 -0
- package/dist/client/assets/right-D7djOy6K.js +1 -0
- package/dist/client/assets/right-DKOUCRob.js +1 -0
- package/dist/client/assets/right-DMNrVzg7.js +1 -0
- package/dist/client/assets/{right-cjPTwPXS.js → right-DWPVB-nK.js} +1 -1
- package/dist/client/assets/right-DppeMCy4.js +1 -0
- package/dist/client/assets/right-GAL5Mw1v.js +1 -0
- package/dist/client/assets/{rocket-DAqYvu8I.js → rocket-CGl4RTV7.js} +1 -1
- package/dist/client/assets/router-DCtl8wqb.js +1 -0
- package/dist/client/assets/runtime-picker-DXu2bOTh.js +1 -0
- package/dist/client/assets/{scope-views-Dl3ml9OZ.js → scope-views-RUWwCVAr.js} +1 -1
- package/dist/client/assets/scout-voice-CZx60X6E.js +1 -0
- package/dist/client/assets/{scoutbot-markdown-DwvGQOWo.js → scoutbot-markdown-BKEBSbG0.js} +1 -1
- package/dist/client/assets/{scroll-text-B0tKI9Sg.js → scroll-text-DNjxhyO2.js} +1 -1
- package/dist/client/assets/{search-UsM-9-_W.js → search-DT42oyRW.js} +1 -1
- package/dist/client/assets/secondaryNavConfig-CS1svh6n.js +1 -0
- package/dist/client/assets/{selection-bridge-OTS2iFkt.js → selection-bridge-x3wFUjxj.js} +1 -1
- package/dist/client/assets/{send-horizontal-BlQsRK6C.js → send-horizontal-CH0-fbZE.js} +1 -1
- package/dist/client/assets/{send-to-agent-session-C1mgqdow.js → send-to-agent-session-DoKCDBJ4.js} +1 -1
- package/dist/client/assets/{server-DBlPW0Mp.js → server-QfsgMLk1.js} +1 -1
- package/dist/client/assets/{session-catalog-CnpZMB7C.js → session-catalog-CvSdPHPe.js} +1 -1
- package/dist/client/assets/session-recap-lanes-D-eVJnpY.js +1 -0
- package/dist/client/assets/session-recap-queue-41l2XVkI.js +1 -0
- package/dist/client/assets/{session-table-CGkfG5Yd.js → session-table-L-pns6Zl.js} +1 -1
- package/dist/client/assets/{sessions-view-Bge4XZ4I.js → sessions-view-Dc-QAa7O.js} +1 -1
- package/dist/client/assets/{settings-C69Zjrpq.js → settings-BVh7kldq.js} +1 -1
- package/dist/client/assets/{sliders-horizontal-6bzeod7c.js → sliders-horizontal-782VC_yy.js} +1 -1
- package/dist/client/assets/{sparkles-Cc5lPZRv.js → sparkles-BjHq_DNK.js} +1 -1
- package/dist/client/assets/{sse-A8AyLH0g.js → sse-BCPRocpq.js} +1 -1
- package/dist/client/assets/system-surfaces-redesign-q2BmCB7e.css +1 -0
- package/dist/client/assets/{tail-events-C4WdhVeK.js → tail-events-d0yAYxR0.js} +1 -1
- package/dist/client/assets/{terminal-DMZjX1es.js → terminal-hQKQygcf.js} +1 -1
- package/dist/client/assets/{terminal-relay-mO89dX-Y.js → terminal-relay-Bxs1hp-j.js} +1 -1
- package/dist/client/assets/{terminal-takeover-CZZsnPzj.js → terminal-takeover-Ay5C2c-M.js} +1 -1
- package/dist/client/assets/theme-vars-DNK0nn3k.js +1 -0
- package/dist/client/assets/triangle-alert-CHoRGdVO.js +1 -0
- package/dist/client/assets/{use-beside-D3cJpA5p.js → use-beside-DoRC1nt0.js} +1 -1
- package/dist/client/assets/{use-conversation-list-D5EnpVba.js → use-conversation-list-CY4JciOV.js} +1 -1
- package/dist/client/assets/{use-fleet-active-asks-D_QOmjg5.js → use-fleet-active-asks-CymmXWH4.js} +1 -1
- package/dist/client/assets/{use-mesh-node-state-3V3ADQ-G.js → use-mesh-node-state-BvaqtODo.js} +1 -1
- package/dist/client/assets/{use-mesh-ops-items-DI9GKWlF.js → use-mesh-ops-items-BSYaqH_0.js} +1 -1
- package/dist/client/assets/{use-reduced-motion-CiaZHMnk.js → use-reduced-motion-3gMYZNIp.js} +1 -1
- package/dist/client/assets/{use-scout-dev-flags-CkdAHlDR.js → use-scout-dev-flags-DS_pYYQd.js} +1 -1
- package/dist/client/assets/{useAgentHoverCard-A3QGXqIy.js → useAgentHoverCard-BANmpjMh.js} +1 -1
- package/dist/client/assets/useContentSecondaryNav-C6OBu-3_.js +1 -0
- package/dist/client/assets/{useEmbedHeadline-atkQVfGw.js → useEmbedHeadline-D6pJRxUg.js} +1 -1
- package/dist/client/assets/usePersistentState-B8lP7TRb.js +1 -0
- package/dist/client/assets/{usePierreRuntime-DTvcwISe.js → usePierreRuntime-BAQdiN0L.js} +1 -1
- package/dist/client/assets/useSidebarCollapse-OL_8J5cL.js +1 -0
- package/dist/client/assets/{users-RLK3P5U4.js → users-BUjx36gx.js} +1 -1
- package/dist/client/assets/voice-paths-CJUuBPh3.css +1 -0
- package/dist/client/assets/voice-turn-DftA0iIb.css +1 -0
- package/dist/client/assets/voice-turn-ledger-BMZxlSjg.js +1 -0
- package/dist/client/assets/{wrench-B4maQJai.js → wrench-DR0i5BU7.js} +1 -1
- package/dist/client/assets/{x-rlMdRqJF.js → x-DAehov0E.js} +1 -1
- package/dist/client/assets/{xterm-B1zHHOLQ.js → xterm-BXQiLVnI.js} +1 -1
- package/dist/client/assets/{zap-B4X0OrEw.js → zap-CEjZNZbI.js} +1 -1
- package/dist/client/crew/sheets/eye-plate-v1/look-down-left.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/look-down-right.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/look-down.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/look-up-left.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/look-up-right.webp +0 -0
- package/dist/client/crew/sheets/eye-plate-v1/look-up.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-down-left.webp +0 -0
- package/dist/client/crew/sheets/sprout/look-down-right.webp +0 -0
- package/dist/client/crew/sheets/sprout/look-down.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-left.webp +0 -0
- package/dist/client/crew/sheets/sprout/look-up-right.webp +0 -0
- package/dist/client/crew/sheets/sprout/look-up.webp +0 -0
- package/dist/client/index.html +2 -2
- package/dist/drizzle/0020_message_reactions.sql +11 -0
- package/dist/drizzle/meta/_journal.json +7 -0
- package/dist/main.mjs +542 -150
- package/dist/node/main.mjs +131 -17
- package/dist/pairing-runtime-controller.mjs +375 -78
- package/dist/runtime/base-daemon.mjs +98 -5
- package/dist/runtime/broker-daemon.mjs +1879 -1198
- package/dist/runtime/broker-process-manager.mjs +96 -3
- package/dist/runtime/mesh-discover.mjs +96 -3
- package/dist/scout-control-plane-web.mjs +4817 -1616
- package/dist/update-helper.mjs +211 -39
- package/package.json +5 -3
- package/server.json +31 -0
- package/dist/client/assets/ActivityScreen-CcDdQTBK.js +0 -1
- package/dist/client/assets/AgentAdventures-BxrYq_2v.js +0 -1
- package/dist/client/assets/AgentAvatar-NZOqcsB2.js +0 -1
- package/dist/client/assets/AgentConfigurationScreen-BhD1PEAM.js +0 -1
- package/dist/client/assets/AgentDefinitionsWorkspace-BqS6MXqF.js +0 -1
- package/dist/client/assets/AgentFloorView-A0dDRlRV.js +0 -1
- package/dist/client/assets/AgentInfoScreen-DuaN0sgE.js +0 -1
- package/dist/client/assets/AgentLanesEmbedScreen-CeNiaZ9_.js +0 -1
- package/dist/client/assets/AgentLanesView-WZhEDBFE.js +0 -2
- package/dist/client/assets/AgentMasterScreen-DUDUTAnU.js +0 -1
- package/dist/client/assets/AgentSessions-CO1WGa8Z.js +0 -6
- package/dist/client/assets/AgentsConsole-BQOWkj35.js +0 -1
- package/dist/client/assets/AgentsScreen-BMNAj1PH.js +0 -1
- package/dist/client/assets/AgentsSubnav-CeHhuzyM.js +0 -1
- package/dist/client/assets/BriefingDetailScreen-yZG8_m4h.js +0 -1
- package/dist/client/assets/BrokerScreen-CT37VQiL.js +0 -8
- package/dist/client/assets/ChannelComposer-BVItWlEz.js +0 -1
- package/dist/client/assets/ChannelSidebar-B-2spawY.js +0 -1
- package/dist/client/assets/ChatBits-CLJ71hTY.js +0 -1
- package/dist/client/assets/ChatRightPanel-pKQtkAgl.js +0 -1
- package/dist/client/assets/ChatSpaceSurface-NrLwdPkE.js +0 -1
- package/dist/client/assets/ChatSpaceTheme-BPMgPdVK.css +0 -1
- package/dist/client/assets/ChatSpaceTheme-D37Jk7bl.js +0 -1
- package/dist/client/assets/ConversationComposer-DNcn5U6D.js +0 -1
- package/dist/client/assets/ConversationFeedRows-RnYSa7Io.js +0 -1
- package/dist/client/assets/ConversationHeader-Y9TEJxP_.js +0 -1
- package/dist/client/assets/ConversationScreen-Brfas2y0.css +0 -1
- package/dist/client/assets/ConversationScreen-tpj4cqWs.js +0 -2
- package/dist/client/assets/ConversationStatus-Cv-7hErW.js +0 -1
- package/dist/client/assets/CrewAvatar-zgzC3cbU.js +0 -1
- package/dist/client/assets/CrewWorkspaces-K2jcyLec.js +0 -1
- package/dist/client/assets/FlightObserveScreen-CvzhzuWc.js +0 -1
- package/dist/client/assets/FloorResourcesSheet-_Iy5UqgY.js +0 -1
- package/dist/client/assets/FloorTacticalHUD-BhyOqlL5.js +0 -1
- package/dist/client/assets/HarnessMark-DSvM_H7H.js +0 -1
- package/dist/client/assets/HarnessesScreen-DyjqbZ4k.js +0 -1
- package/dist/client/assets/InviteLandingScreen-xZQ2na1z.js +0 -1
- package/dist/client/assets/InviteSheet--5Zjct25.js +0 -1
- package/dist/client/assets/KnowledgeSearchScreen-BPqAjHnH.js +0 -1
- package/dist/client/assets/LaneTraceDetailSheet-jl4XQmEx.js +0 -1
- package/dist/client/assets/MeshScreen-BW1dMFWF.js +0 -1
- package/dist/client/assets/MessagesScreen-CtNMfIvC.js +0 -1
- package/dist/client/assets/MissionControlView-BjPOViGY.js +0 -1
- package/dist/client/assets/MissionLeftAgentRow-Dms0DBjO.js +0 -1
- package/dist/client/assets/NativeAreaScreen-BQSTo8As.js +0 -1
- package/dist/client/assets/NativeAreaScreen-Brix6xDB.js +0 -1
- package/dist/client/assets/NativeAreaScreen-D7HyQNlM.js +0 -1
- package/dist/client/assets/NewChatComposer-BEXS8vV6.js +0 -19
- package/dist/client/assets/ObserveEmbedScreen-Dh30EjAQ.js +0 -2
- package/dist/client/assets/OpenScoutAppShell-D9pgw36i.js +0 -31
- package/dist/client/assets/OpsAgentsView-D3rM0udq.js +0 -1
- package/dist/client/assets/OpsScreen-DySeNQ1V.js +0 -1
- package/dist/client/assets/OpsSubnav-C9E0r3GZ.js +0 -1
- package/dist/client/assets/ProjectAgentProfile-FUav75j2.js +0 -1
- package/dist/client/assets/ProjectAgentProfileHero-BLK0EwMg.js +0 -1
- package/dist/client/assets/ProjectsInbox-DfCXReZK.js +0 -2
- package/dist/client/assets/ProjectsRail-CELVubfJ.js +0 -1
- package/dist/client/assets/ProjectsScreen-DMw4TLKy.js +0 -1
- package/dist/client/assets/ProjectsThreadAside-D1Sh4fnX.js +0 -1
- package/dist/client/assets/Provider-CNZluAZb.js +0 -5
- package/dist/client/assets/RailToggle-BwmY70B8.js +0 -1
- package/dist/client/assets/RawSessionsTable-6OVJq0JZ.js +0 -1
- package/dist/client/assets/RealtimeVoiceScreen-D41TYY0x.js +0 -9
- package/dist/client/assets/RepoDiffViewerLazy-BpMR7tlx.js +0 -2
- package/dist/client/assets/SessionObserveEvidence-CS1aQBpQ.js +0 -1
- package/dist/client/assets/SessionRefScreen-DURV0MpF.js +0 -1
- package/dist/client/assets/SessionsScreen-D71ZR-8t.js +0 -1
- package/dist/client/assets/SettingsDrawer-Nz98oBVl.js +0 -3
- package/dist/client/assets/SettingsScreen-CYBHal6y.js +0 -1
- package/dist/client/assets/SharedWorkFloor-BCmdeb3Q.css +0 -1
- package/dist/client/assets/SharedWorkFloor-C0xxW4SN.js +0 -2
- package/dist/client/assets/SpaceSwitcher-BfeIf-ad.js +0 -1
- package/dist/client/assets/Terminal-jIqnIZZ6.js +0 -4
- package/dist/client/assets/TerminalEmbedScreen-3XsjuySR.js +0 -1
- package/dist/client/assets/WorkDetailScreen-Bcf_yHhU.js +0 -5
- package/dist/client/assets/WorldActorTalk-CKerDikx.js +0 -1
- package/dist/client/assets/WorldMinimap-DOptgrc4.js +0 -1
- package/dist/client/assets/agent-autocomplete-C7xwIcwd.css +0 -1
- package/dist/client/assets/agent-autocomplete-_u9o5EZu.js +0 -2
- package/dist/client/assets/agents-screen-BMu6PpRY.css +0 -1
- package/dist/client/assets/at-sign-DM7xeppo.js +0 -1
- package/dist/client/assets/chat-api-BPVC0asu.js +0 -1
- package/dist/client/assets/chat-space-model-B6Jg2CY4.js +0 -4
- package/dist/client/assets/content-0AXa0klu.js +0 -1
- package/dist/client/assets/content-BEyJ19Lx.js +0 -1
- package/dist/client/assets/content-BN5weWKW.js +0 -1
- package/dist/client/assets/content-BNokkm7C.js +0 -1
- package/dist/client/assets/content-BV4PUM9q.js +0 -1
- package/dist/client/assets/content-BxUPlcx5.js +0 -1
- package/dist/client/assets/content-CIC5sku8.js +0 -1
- package/dist/client/assets/content-CdkTyxqk.js +0 -1
- package/dist/client/assets/content-CnhhSCZq.js +0 -1
- package/dist/client/assets/content-DY3F9Vfr.js +0 -1
- package/dist/client/assets/content-DrKBYpcb.js +0 -1
- package/dist/client/assets/content-LSStQYj5.js +0 -1
- package/dist/client/assets/content-YvU-D0hF.js +0 -1
- package/dist/client/assets/content-oKQMyVnH.js +0 -1
- package/dist/client/assets/conversation-model-m8HhzroS.js +0 -1
- package/dist/client/assets/conversation-motion-features-D9PxLoDt.js +0 -1
- package/dist/client/assets/conversations-Cbg9h_Af.js +0 -1
- package/dist/client/assets/ctx-panel-F05jXK4Q.css +0 -1
- package/dist/client/assets/discover-DlwbftpC.js +0 -2
- package/dist/client/assets/embed-entry-c0lwtjBG.js +0 -2
- package/dist/client/assets/home-moving-signal-BIHUGNfI.js +0 -1
- package/dist/client/assets/home-now-card-CaLgZze2.js +0 -1
- package/dist/client/assets/hooks-DaUOREpP.js +0 -2
- package/dist/client/assets/index-CGbs0SBm.css +0 -1
- package/dist/client/assets/index-CbqBwfIW.js +0 -1
- package/dist/client/assets/index-CyPMl7Up.js +0 -1
- package/dist/client/assets/index-PQpJveGO.js +0 -1
- package/dist/client/assets/left-0vBrvrBG.js +0 -2
- package/dist/client/assets/left-C6SyaqlJ.js +0 -1
- package/dist/client/assets/left-CTuXysZR.js +0 -2
- package/dist/client/assets/left-Cc6s4DT2.js +0 -1
- package/dist/client/assets/left-DF5caiyh.js +0 -1
- package/dist/client/assets/left-DgT4tWCx.js +0 -1
- package/dist/client/assets/left-R0wppTTr.js +0 -1
- package/dist/client/assets/left-advisor-C-kt8V28.js +0 -1
- package/dist/client/assets/left-agents-thnBO156.js +0 -1
- package/dist/client/assets/left-default-CT42fnpF.js +0 -1
- package/dist/client/assets/left-lanes-CSmZgciK.js +0 -1
- package/dist/client/assets/left-mission-C86x6i9h.js +0 -1
- package/dist/client/assets/library-DdhYL_9v.js +0 -1
- package/dist/client/assets/message-markup-6Tgo4qFJ.js +0 -15
- package/dist/client/assets/mission-control-model-C30vU1Fe.js +0 -1
- package/dist/client/assets/profile-BegEUmB7.js +0 -1
- package/dist/client/assets/projects-inbox-CKPLZN8s.css +0 -1
- package/dist/client/assets/resolve-panes-pfZTezKo.js +0 -1
- package/dist/client/assets/resolve-sidebar-context-D5ksvrb_.js +0 -1
- package/dist/client/assets/right-BDaCJ0CF.js +0 -1
- package/dist/client/assets/right-BP6lXRFS.js +0 -1
- package/dist/client/assets/right-Cb1VCrdj.js +0 -1
- package/dist/client/assets/right-CeFaxfBo.js +0 -1
- package/dist/client/assets/right-Ck2SrYCj.js +0 -1
- package/dist/client/assets/right-D-uv5YfF.js +0 -1
- package/dist/client/assets/right-DJMSICky.js +0 -1
- package/dist/client/assets/right-Dnljs8ah.js +0 -1
- package/dist/client/assets/right-SdCSF8PP.js +0 -1
- package/dist/client/assets/router-C-MF5-mb.js +0 -1
- package/dist/client/assets/runtime-picker-C_AVYF63.js +0 -1
- package/dist/client/assets/scout-voice-CqAyfblr.js +0 -1
- package/dist/client/assets/secondaryNavConfig-DzNHk6IH.js +0 -1
- package/dist/client/assets/system-surfaces-redesign-DKFg4GB5.css +0 -1
- package/dist/client/assets/useContentSecondaryNav-DrL_nkCZ.js +0 -1
- package/dist/client/assets/usePersistentState-Y8XwSTg-.js +0 -1
- package/dist/drizzle/meta/0000_snapshot.json +0 -4575
- package/dist/drizzle/meta/0001_snapshot.json +0 -4624
- package/dist/drizzle/meta/0002_snapshot.json +0 -4631
- package/dist/drizzle/meta/0003_snapshot.json +0 -4952
- package/dist/drizzle/meta/0004_snapshot.json +0 -5235
- package/dist/drizzle/meta/0005_snapshot.json +0 -5599
- package/dist/drizzle/meta/0006_snapshot.json +0 -5606
- package/dist/drizzle/meta/0007_snapshot.json +0 -5767
- package/dist/drizzle/meta/0008_snapshot.json +0 -5774
- package/dist/drizzle/meta/0009_snapshot.json +0 -6262
- package/dist/drizzle/meta/0010_snapshot.json +0 -6286
- package/dist/drizzle/meta/0011_snapshot.json +0 -6337
- package/dist/drizzle/meta/0012_snapshot.json +0 -6458
- package/dist/drizzle/meta/0013_snapshot.json +0 -6465
- package/dist/drizzle/meta/0014_snapshot.json +0 -6503
- package/dist/drizzle/meta/0015_snapshot.json +0 -6596
- package/dist/drizzle/meta/0016_snapshot.json +0 -6611
- package/dist/drizzle/meta/0017_snapshot.json +0 -6785
- package/dist/drizzle/meta/0018_snapshot.json +0 -6804
- package/dist/drizzle/meta/0019_snapshot.json +0 -6804
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as r}from"./index-DReVb7jZ.js";var a=r();export{a as r};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{u as q,a as ie,s as Pe,S as Oe}from"./scope-views-Dl3ml9OZ.js";import{b as qc,i as Yc,c as Zc,d as Jc}from"./scope-views-Dl3ml9OZ.js";import{ae as pe,af as Me,a2 as $e,a3 as Fe,a4 as Be,a5 as We,a6 as me,a7 as Ke,a8 as ze,a9 as Ge,ag as He,aa as Ue,ah as Ve,f as qe,U as Ye,T as Ze,u as Je}from"./router-C-MF5-mb.js";import{ai as Xc,aj as ep,ak as tp,al as sp,am as op,an as rp,ao as np,ap,aq as ip,ar as lp,V as cp,as as pp,at as mp,au as dp,R as up}from"./router-C-MF5-mb.js";import{r as m,j as n,a3 as le,O as Qe}from"./index-DReVb7jZ.js";import{K as hp,Y as gp,U as _p,a4 as Sp,W as vp,a5 as bp,a1 as xp,V as Lp,a0 as wp,N as Np,a6 as yp,a7 as jp}from"./index-DReVb7jZ.js";import{u as Se}from"./Provider-CNZluAZb.js";import{S as Xe}from"./ScoutSurface-6g1f5chk.js";import{resolveContentPane as et}from"./resolve-panes-pfZTezKo.js";import{i as tt}from"./model-CBkMvT1w.js";import{t as st}from"./bash-format-BRV5C6Gv.js";import{t as ve}from"./time-Dhsh_2EG.js";import{i as ot,l as be,k as rt,m as nt,n as at,e as it,g as lt,p as ct,r as pt,A as H,D as mt,h as dt}from"./agent-lanes-model-DMAdqCmK.js";import{S as ut}from"./SlidePanel-BMpkXai_.js";import{H as ft}from"./HarnessMark-DSvM_H7H.js";import{o as ht,f as gt,a as _t}from"./lane-observe-CteDwdD-.js";import{S as xe}from"./SessionObserve-B64YsYhy.js";import{LaneTraceEventFocus as St}from"./LaneTraceEventFocus-BLhVHwff.js";import{b as vt}from"./agent-lane-detail-Ti3trpfH.js";import{r as bt,u as xt}from"./AgentLanesView-WZhEDBFE.js";import{u as Lt}from"./observe-CtS0l3zu.js";import{f as wt}from"./terminal-sessions-3RfJpen8.js";import{o as Nt,i as yt}from"./surface-activity-B1rgWB1i.js";import{AgentFloorView as jt}from"./AgentFloorView-A0dDRlRV.js";import{i as kt,c as Ct,n as de}from"./keyboard-nav-CJXPaHXj.js";import{a as Et}from"./api-DSqpVKC7.js";import{RawSessionsTable as At}from"./RawSessionsTable-6OVJq0JZ.js";import{SessionRefScreen as It}from"./SessionRefScreen-DURV0MpF.js";import{TailView as Tt}from"./TailView-BofjmUMJ.js";import{a as Le}from"./provider-DwmCoSlc.js";import{c as Rt,b as Dt,u as Pt,r as Ot}from"./hooks-DaUOREpP.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./NewChatOrigin-C8ROO4ps.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./content-BN5weWKW.js";import"./ActivityScreen-CcDdQTBK.js";import"./clipboard-e3fSpeo7.js";import"./mentions-Ck_Vjnyp.js";import"./AgentDetailCard-MIEBKw_S.js";import"./AgentLiveActions-6Kfr1uOT.js";import"./terminal-takeover-CZZsnPzj.js";import"./openContent-C6XO6kr5.js";import"./eye-CsGfEVR6.js";import"./terminal-DMZjX1es.js";import"./EmptyState-CYUwYyAW.js";/* empty css */import"./left-C6SyaqlJ.js";/* empty css */import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";import"./content-YvU-D0hF.js";import"./AgentInfoScreen-DuaN0sgE.js";/* empty css */import"./BackToPicker-CkBhGRlD.js";import"./ObservedTopologyPanel-DF6tRZL_.js";import"./AgentsScreen-BMNAj1PH.js";/* empty css */import"./AgentsSubnav-CeHhuzyM.js";import"./SecondaryNav-Bs-_VwTC.js";import"./secondaryNavConfig-DzNHk6IH.js";import"./nav-destinations-CU_euC-Q.js";import"./message-square-CJW4WRlo.js";import"./compass-CvzkzkIh.js";import"./settings-C69Zjrpq.js";import"./git-branch-DcUCsWdJ.js";import"./scroll-text-B0tKI9Sg.js";import"./library-DdhYL_9v.js";/* empty css */import"./AgentSessions-CO1WGa8Z.js";import"./profile-BegEUmB7.js";import"./context-budget-8qFKqM-j.js";import"./session-catalog-CnpZMB7C.js";import"./terminal-relay-mO89dX-Y.js";import"./ConversationScreen-tpj4cqWs.js";import"./ConversationComposer-DNcn5U6D.js";import"./zap-B4X0OrEw.js";import"./message-markup-6Tgo4qFJ.js";import"./message-visibility-DwxgcgYK.js";import"./operator-attention-DBaRg5ep.js";import"./sessionRead-CvFz2RHv.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-Y9TEJxP_.js";import"./AstronautSuit-D67fIBdR.js";import"./panel-right-qP17MwMl.js";import"./CommsFlowGraph-voDD9M5R.js";import"./comms-gesture-_aGFo6g3.js";import"./CommsCanvas-DdNAwjGW.js";import"./comms-deck-CBhsXnY-.js";import"./CommsFlowMap-C33sgD48.js";import"./CommsSelection-BL8aYD7z.js";/* empty css */import"./use-conversation-list-D5EnpVba.js";import"./agent-master-model-C-KdOFDK.js";import"./use-beside-D3cJpA5p.js";import"./ConversationFeedRows-RnYSa7Io.js";import"./ConversationPanels-6pprBpmq.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./use-reduced-motion-CiaZHMnk.js";import"./proxy-DgzP27W8.js";import"./activity-BJqFrZyB.js";import"./message-circle-cI5_A5mj.js";import"./tail-events-C4WdhVeK.js";import"./ConversationStatus-Cv-7hErW.js";import"./check-g7D7-c1J.js";import"./sparkles-Cc5lPZRv.js";import"./AgentDefinitionsWorkspace-BqS6MXqF.js";import"./agent-specialization-BplZUa_0.js";import"./project-overview-helpers-BQTc_Ous.js";import"./FileViewerPane-Cxhixtks.js";/* empty css */import"./agent-essentials-bKWYOZaH.js";import"./lane-tool-detail-Czggx8oM.js";import"./LaneToolHoverCard-D2cnTeUd.js";import"./lane-ask-display-BTVSakyo.js";import"./ObserveTextFlow-CC5mnngm.js";import"./SessionObserveEvidence-CS1aQBpQ.js";import"./wrench-B4maQJai.js";import"./external-link-BVccgH0n.js";/* empty css *//* empty css */import"./right-BDaCJ0CF.js";import"./openAgent-Dbv5wfuL.js";import"./TmuxPeek-DpUT9Tpc.js";import"./refresh-cw-IcD2lPoT.js";import"./ProjectsRail-CELVubfJ.js";import"./AddProjectForm-CHNJ4NnS.js";import"./projects-inbox-CfwxCTdN.js";import"./ProjectsScreen-DMw4TLKy.js";import"./ProjectsInbox-DfCXReZK.js";import"./ui-LM8pS8qE.js";import"./CrewWorkspaces-K2jcyLec.js";import"./plus-D5NLH_fM.js";import"./useEmbedHeadline-atkQVfGw.js";import"./api-BQYTwoz6.js";import"./cache-DGBo3vIf.js";import"./arrow-up-right-B0aLKiyF.js";import"./session-ref-lookup-state-SATH_jAP.js";/* empty css */import"./ProjectAgentProfile-FUav75j2.js";import"./ProjectAgentProfileBar-C8z22pJ2.js";import"./ProjectsThreadAside-D1Sh4fnX.js";import"./content-BxUPlcx5.js";import"./BriefingDetailScreen-yZG8_m4h.js";import"./scoutbot-markdown-DwvGQOWo.js";/* empty css */import"./BriefingsScreen-DTxYMr3a.js";import"./content-oKQMyVnH.js";import"./BrokerScreen-CT37VQiL.js";import"./status-tone-BM_zuRy1.js";import"./broker-display-BkBzyvbR.js";import"./BrokerMetadataPanel-crirZCdo.js";import"./DispatchAftermath-CcYGUB10.js";import"./follow-route-BvcGtBIL.js";import"./ShikiPane-XwFI-pCp.js";import"./send-horizontal-BlQsRK6C.js";import"./copy-BGOC1tJB.js";import"./at-sign-DM7xeppo.js";import"./radio-Cas2qg1D.js";import"./left-0vBrvrBG.js";import"./conversation-prefs-DNre-Lcx.js";import"./use-fleet-active-asks-D_QOmjg5.js";import"./sessions-view-Bge4XZ4I.js";import"./RailRow-DUPqXMZh.js";/* empty css */import"./content-CIC5sku8.js";import"./MessagesScreen-CtNMfIvC.js";import"./AgentMasterScreen-DUDUTAnU.js";/* empty css */import"./CommsDeck-mGWY7Ivi.js";import"./right-D-uv5YfF.js";import"./CodeScreen-CSC-zbP9.js";import"./CodeDiffPane-D-iv28LJ.js";import"./usePierreRuntime-DTvcwISe.js";/* empty css */import"./CodeProjectPicker-CZ3gDdiT.js";/* empty css */import"./content-CKJ9zb7Z.js";import"./FollowScreen-CupyOgt4.js";import"./content-LSStQYj5.js";import"./HarnessesScreen-DyjqbZ4k.js";import"./useContentSecondaryNav-DrL_nkCZ.js";import"./OpsSubnav-C9E0r3GZ.js";/* empty css */import"./left-CTuXysZR.js";import"./content-DrKBYpcb.js";import"./HomeHero-pIZtE1cC.js";import"./persistent-state-BUsTTZFE.js";import"./home-moving-signal-BIHUGNfI.js";import"./home-live-action-BkqGLVRY.js";import"./cpu-Q6nrHFTN.js";import"./file-code-corner-Be6da5l3.js";import"./right-Cb1VCrdj.js";import"./left-Cc6s4DT2.js";import"./mesh-view-store-C1-mdP3P.js";import"./machine-children-CdhNzDF0.js";import"./use-mesh-node-state-3V3ADQ-G.js";import"./NodeMenu-CcOeFRCB.js";import"./content-CnhhSCZq.js";import"./MeshScreen-BW1dMFWF.js";import"./MeshCanvas-BR25OBTJ.js";import"./Canvas-CRP0KjKb.js";import"./useAgentHoverCard-A3QGXqIy.js";import"./local-agents-I40PawYA.js";/* empty css */import"./right-CeFaxfBo.js";import"./NodeDetailPanel-BNTqYC7m.js";import"./left-DgT4tWCx.js";import"./mesh-ops-DSlvHp-D.js";import"./use-mesh-ops-items-DI9GKWlF.js";import"./content-D1Ze_FG9.js";import"./use-scout-dev-flags-CkdAHlDR.js";import"./right-BP6lXRFS.js";import"./left-R0wppTTr.js";import"./left-agents-thnBO156.js";import"./left-default-CT42fnpF.js";import"./left-lanes-CSmZgciK.js";import"./lane-roster-store-Ch9t6lb0.js";import"./left-mission-C86x6i9h.js";import"./mission-control-store-p_cboAm4.js";import"./MissionLeftAgentRow-Dms0DBjO.js";import"./page-status-DwFR4wSw.js";import"./left-advisor-C-kt8V28.js";import"./server-DBlPW0Mp.js";import"./layers-BOwyWodP.js";import"./gauge-DQCGlE3o.js";import"./content-DY3F9Vfr.js";import"./OpsScreen-DySeNQ1V.js";/* empty css */import"./MissionControlView-BjPOViGY.js";import"./send-to-agent-session-C1mgqdow.js";/* empty css */import"./MissionContextRail-CafjuseK.js";import"./agent-lane-preview-Dpa3DuOn.js";import"./mission-wall-DOuGOxQy.js";import"./mission-control-model-C30vU1Fe.js";import"./MissionFocusOverlay-nhy3hkxQ.js";import"./MissionLogPane-DiUf3vWW.js";import"./OpsAgentsView-D3rM0udq.js";/* empty css */import"./DataTable-av71ehJV.js";/* empty css */import"./sliders-horizontal-6bzeod7c.js";import"./HostAdvisorView-Dv5meXo2.js";/* empty css */import"./layout-grid-B36Qsh0y.js";import"./AtopView-Ck30FbzG.js";/* empty css */import"./AgentAdventures-BxrYq_2v.js";import"./ReplayClock-DUVJjrIu.js";import"./SproutActionSprite-DI5N3gOj.js";/* empty css */import"./CrewSprite-Dp9KBBGY.js";import"./adventure-playback-DTfkhIc0.js";import"./AdventureScenery-DSxDlqG1.js";import"./adventure-habitats-v1-M1lcpTJh.js";import"./AdventureReader-ZsBDQITY.js";import"./floor-preview-text-HrORUJ7D.js";/* empty css */import"./book-open-BL9qvhEI.js";import"./ReplayLog-Bek1Vc4W.js";import"./AdventureEvidence-B4mEvXeD.js";/* empty css *//* empty css */import"./flag-DAFE2wZ5.js";import"./pause-B_hliKuR.js";import"./play-CVeRmqLH.js";import"./SharedWorkFloor-C0xxW4SN.js";import"./WorldMinimap-DOptgrc4.js";import"./WorldSky-D-RJzSa6.js";import"./WorldActorTalk-CKerDikx.js";import"./FloorExchangePanel-CjHSDXad.js";import"./floor-character-name-CqJPOlXb.js";import"./floor-message-passes-CO3Ix_wR.js";import"./shared-work-artifacts-DfNl9KTo.js";import"./floor-memory-YMM8AlLY.js";import"./CharacterFamilyPreview-ckVkecDO.js";import"./RenderedWorkerSprite-C8fxndAh.js";import"./FloorMessagePasses-BG4ebnX5.js";import"./WorkRunView-_mhG_FR2.js";import"./floor-context-model-rWKqaKmV.js";import"./agent-floor-actor-DW8zLht0.js";import"./SharedFloorCharacter-V04kD5T9.js";import"./WorldCharacter-BRrj3MQN.js";import"./RiggedWorkerCharacter-CJMWlvV-.js";import"./FloorReplay-BoYaGY9t.js";import"./AgentFloorWorld-BTqwmK5G.js";/* empty css */import"./agent-floor-world-layout-hfMjuoui.js";import"./coffee-ljG1_krY.js";/* empty css */import"./FloorTacticalHUD-BhyOqlL5.js";import"./FloorSavedWork-jbtRs-YE.js";import"./pin-Oi4qHR6M.js";/* empty css */import"./FloorResourcesSheet-_Iy5UqgY.js";/* empty css *//* empty css */import"./FloorContextSheet-Vj_wVZq1.js";import"./AgentLanesPreflight-CcS23wij.js";import"./AgentLaneChrome-fGC-ZrJS.js";import"./AgentLaneCard-C4rKLLdT.js";/* empty css */import"./AgentLaneSummaryResize-DgSeA_vS.js";import"./agent-lane-card-model-CeqQGp-8.js";import"./AgentLaneDetailSheet-BTF4_th9.js";import"./LaneTraceDetailSheet-jl4XQmEx.js";import"./content-BNokkm7C.js";import"./RepoDiffPageScreen-D9-s5PyB.js";import"./RepoDiffViewerLazy-BpMR7tlx.js";import"./ReposScreen-BQ7HO1om.js";/* empty css */import"./selection-bridge-OTS2iFkt.js";import"./right-cjPTwPXS.js";import"./content-BV4PUM9q.js";import"./KnowledgeSearchScreen-BPqAjHnH.js";/* empty css */import"./clock-CQb4FeMf.js";import"./KnowledgeSearchInspector-B8yiM524.js";import"./content-0AXa0klu.js";import"./SessionsScreen-D71ZR-8t.js";import"./FlightObserveScreen-CvzhzuWc.js";/* empty css */import"./right-Ck2SrYCj.js";import"./content-BEyJ19Lx.js";import"./SettingsScreen-CYBHal6y.js";import"./StatusPill-Dw4LP7wu.js";import"./AgentConfigurationScreen-BhD1PEAM.js";import"./CastPicker-ZPomvOf-.js";import"./bot-BhAVbcCA.js";import"./SettingsDrawer-Nz98oBVl.js";import"./credentials-OeoF-VKJ.js";import"./VoicePermissionsPanel-D35fOnQj.js";import"./monitor-C7_cHlkC.js";import"./left-DF5caiyh.js";import"./usePersistentState-Y8XwSTg-.js";import"./session-table-CGkfG5Yd.js";import"./Terminal-jIqnIZZ6.js";/* empty css */import"./HerdrSession-Dcm3vf9U.js";import"./TerminalRelay--qOBwnbR.js";import"./TerminalHeaderMount-CwbQhXcI.js";import"./right-Dnljs8ah.js";import"./content-CdkTyxqk.js";import"./WorkDetailScreen-Bcf_yHhU.js";import"./WorkFilesViewer-t8AEyx3Q.js";import"./right-SdCSF8PP.js";import"./RealtimeVoiceScreen-D41TYY0x.js";import"./agent-autocomplete-_u9o5EZu.js";import"./gestures-CofqY4Km.js";import"./rocket-DAqYvu8I.js";function Mt(e){return e?`${e[0]?.toUpperCase()}${e.slice(1)}`:"local"}function $t(e){const t=st(e.trim()),s=t.replace(/\/+$/u,"").split(/[\\/]/u).filter(Boolean);return s.length===0?t:s.slice(-2).join("/")}function Ft(e){const t=e?.trim();return t?t.replace(/\.jsonl$/u,"").slice(0,8):"—"}function F(e,t=Date.now()){const{agent:s,source:o,observe:r,lastActiveAt:l}=e,c=s.harness?.trim()||o,p=ot(r),i=$t(s.cwd||s.project||s.projectRoot||"—"),a=p?`${c} · live`:`${c} · ${ve(l??t)}`;return{source:Mt(c),sessionRef:Ft(s.harnessSessionId),path:i,statusLine:a,live:p}}const Bt={think:"Thought",tool:"Tool",ask:"Request",message:"Message",note:"Note",system:"System",boot:"Boot"};function Wt({lane:e,event:t,nowMs:s=Date.now()}){const{agent:o,observe:r,source:l,lastActiveAt:c}=e,p=m.useMemo(()=>vt(e),[e]),i=F(e,s),a=t??r?.events?.at(-1),f=a?Bt[a.kind]??a.kind:null,g=r?.metadata?.session?.sessionStart,_=a?ht(a,g):null,h=_!=null?gt(_,c):void 0,u=_!=null?_t(_):void 0,d=a?.kind==="tool"||a?.kind==="ask"?a:void 0;return n.jsxs("div",{className:"scope-lane-detail",children:[n.jsxs("header",{className:"scope-lane-detail__head",children:[n.jsxs("div",{className:"scope-lane-detail__copy",children:[n.jsx("span",{className:"scope-lane-detail__kicker",children:"Lane trace"}),n.jsxs("h2",{className:"scope-lane-detail__title",children:[i.source,n.jsxs("span",{className:"scope-lane-detail__ref",children:[" · ",i.sessionRef]})]}),n.jsxs("div",{className:"scope-lane-detail__sub",children:[i.path,f?` · ${f}`:"",c?` · ${ve(c)}`:""]})]}),n.jsx(ft,{harness:o.harness??p.harness,size:18,className:"scope-lane-detail__hmark"})]}),n.jsxs("dl",{className:"scope-lane-detail__meta","aria-label":"Session stats",children:[n.jsxs("div",{className:"scope-lane-detail__stat",children:[n.jsx("dt",{children:"events"}),n.jsx("dd",{children:p.events})]}),n.jsxs("div",{className:"scope-lane-detail__stat",children:[n.jsx("dt",{children:"tools"}),n.jsx("dd",{children:p.tools})]}),n.jsxs("div",{className:"scope-lane-detail__stat",children:[n.jsx("dt",{children:"files"}),n.jsx("dd",{children:p.files})]}),n.jsxs("div",{className:"scope-lane-detail__stat",children:[n.jsx("dt",{children:"model"}),n.jsx("dd",{children:p.model??"—"})]}),n.jsxs("div",{className:"scope-lane-detail__stat",children:[n.jsx("dt",{children:"branch"}),n.jsx("dd",{children:p.branch??"—"})]}),n.jsxs("div",{className:"scope-lane-detail__stat",children:[n.jsx("dt",{children:"status"}),n.jsx("dd",{children:i.statusLine})]})]}),n.jsx("div",{className:"scope-lane-detail__trace",children:n.jsx(xe,{data:r??void 0,agentId:l==="scout"?o.id:void 0,sessionId:o.harnessSessionId??p.sessionId,showRail:!1,variant:"default",surface:"scope",initialCursorT:a?.t,focusEventId:a?.id,inlineFocusEventId:d?.id,inlineFocusContent:d?n.jsx(St,{event:d,wallLabel:h,wallTitle:u,variant:"inline"}):void 0})})]})}function we({target:e,onClose:t}){const{lane:s,event:o}=e,r=F(s);return n.jsxs(ut,{open:!0,onClose:t,side:"right",owner:"scope.lane-trace",layer:"elevated",resizable:!0,defaultSize:980,minSize:560,maxSize:1280,scrollLock:!0,ariaLabel:`${r.source} ${r.sessionRef} trace`,className:"scope-lane-trace-sheet","data-scope-presentation":!0,children:[n.jsx("div",{className:"scope-lane-trace-sheet__toolbar",children:n.jsx("button",{type:"button",className:"scope-lane-trace-sheet__close",onClick:t,"aria-label":"Close",children:"×"})}),n.jsx(Wt,{lane:s,event:o})]})}function Kt(e,t){const[s,o]=m.useState(()=>pe(e));m.useEffect(()=>{o(pe(e))},[e]);const r=m.useCallback(d=>{Me(d),o(d)},[]),l=m.useMemo(()=>bt({autoLanes:t,deck:s,defaultWidthTier:e}),[t,s,e]),c=m.useCallback((d,S="pinned_left")=>{r($e(s,{laneId:d.id,title:be(d.agent,d.source),zone:S,width:s.laneWidths[d.id]}))},[s,r]),p=m.useCallback(d=>{r(Fe(s,d))},[s,r]),i=m.useCallback((d,S)=>{r(Be(s,d,S))},[s,r]),a=m.useCallback(d=>{r(We(s,d))},[s,r]),f=m.useCallback((d,S)=>{r(me(s,{kind:"harness",title:S??`${d} sessions`,harness:d,zone:"pinned_left",width:s.defaultLaneWidth}))},[s,r]),g=m.useCallback(()=>{r(me(s,{kind:"attention",title:"Needs attention",zone:"pinned_left",width:"sm"}))},[s,r]),_=m.useCallback(()=>{r(Ke(s))},[s,r]),h=m.useCallback(d=>ze(s,d),[s]),u=m.useCallback(d=>Ge(s,d),[s]);return{deck:s,layout:l,pinLane:c,unpinLane:p,setLaneWidth:i,setDefaultLaneWidth:a,addHarnessLane:f,addAttentionLane:g,clearPins:_,isPinned:h,pinnedZone:u}}const Ne=le("lanes-horizon"),zt=6e4,Gt=160;function Ht(){try{const e=sessionStorage.getItem(Ne);if(e&&H.some(t=>t.key===e))return e}catch{}return mt}function ye({scoutAgents:e,defaultWidthTier:t="md",harnessFilter:s,projectFilter:o,horizonOverride:r}){const[l,c]=m.useState(Date.now()),[p,i]=m.useState(Ht),a=r??p,[f,g]=m.useState([]),[_,h]=m.useState(()=>new Set),u=dt(),d=rt(a),S=nt(a),{discovery:v,events:b,loadState:k}=xt({includeTranscriptReplay:!0,discoveryIntervalMs:zt,discoveryLimit:Gt,recentLimit:u,recentWindowMs:d,pauseWhenHidden:!0});m.useEffect(()=>{const x=setInterval(()=>c(Date.now()),1e4);return()=>clearInterval(x)},[]),m.useEffect(()=>{let x=!1;const N=async()=>{if(yt())try{const ee=await wt({includeDiscovered:!1});x||g(ee)}catch{x||g([])}};N();const I=setInterval(()=>{N()},1e4),X=Nt(()=>{N()});return()=>{x=!0,clearInterval(I),X()}},[]),m.useEffect(()=>{try{sessionStorage.setItem(Ne,p)}catch{}},[p]);const y=m.useRef(at()),T=m.useMemo(()=>e.filter(x=>it(x,l,a)),[e,l,a]),E=Lt(T,{pauseWhenHidden:!0}),R=k.discovery==="loading"||k.recent==="loading";m.useEffect(()=>{if(_.size===0)return;const x=setTimeout(()=>h(new Set),900);return()=>clearTimeout(x)},[_]);const{lanes:w,issues:A,freshLaneIds:D}=m.useMemo(()=>{const x=lt({transcripts:v?.transcripts??[],tailEvents:b,processes:v?.processes??[],scoutAgents:e,terminalSessions:f,observeCache:E,now:l,workingOnly:!0,horizon:a}),N=ct(x.lanes,y.current),I=[...pt(v),...x.issues];return{lanes:N.lanes,issues:I,freshLaneIds:N.newLaneIds}},[v,b,e,f,E,l,a]);m.useEffect(()=>{if(A.length!==0)for(const x of A)console.warn(`[agent-lanes] ${x.message}`,x)},[A]),m.useEffect(()=>{D.length!==0&&h(x=>{const N=new Set(x);for(const I of D)N.add(I);return N})},[D.join("\0")]);const O=m.useMemo(()=>w.filter(x=>Vt(x,{harnessFilter:s,projectFilter:o})),[w,s,o]),{deck:W,layout:Z,setLaneWidth:J,setDefaultLaneWidth:Q}=Kt(t,O);return{profileId:He,now:l,horizon:a,setHorizon:i,horizonLabel:S,traceWindowMs:d,lanes:O,issues:A,newLaneIds:_,tailLoading:R,deck:W,layout:Z,setLaneWidth:J,setDefaultLaneWidth:Q,activeFilterLabel:qt({harnessFilter:s,projectFilter:o})}}function ue(e){const t=e?.trim().toLowerCase();return t||null}function se(e){return e.trim().toLowerCase().replace(/['"]/gu,"").replace(/[^a-z0-9]+/gu,"-").replace(/^-+|-+$/gu,"")}function Ut(e){return e.trim().replace(/\/+$/u,"").split(/[\\/]/u).filter(Boolean).pop()?.trim()||null}function fe(e,t){if(!t)return!0;const s=se(t);return e.some(o=>{const r=o?.trim();if(!r)return!1;const l=r.toLowerCase(),c=Ut(r);return l===t||se(r)===s||!!(c&&(c.toLowerCase()===t||se(c)===s))})}function Vt(e,t){const s=ue(t.harnessFilter),o=ue(t.projectFilter),{agent:r,facts:l,source:c}=e;return fe([r.harness,r.definitionId,l?.attribution,c],s)&&fe([r.project,r.projectRoot,r.cwd,l?.cwd],o)}function qt(e){return[e.harnessFilter?.trim()?`harness ${e.harnessFilter.trim()}`:"",e.projectFilter?.trim()?`project ${e.projectFilter.trim()}`:""].filter(Boolean).join(" · ")}function Yt(e){return e?`${e[0]?.toUpperCase()}${e.slice(1)}`:"local"}function Zt(e){const t=new Map;for(const s of e){const o=s.agent.harness?.trim()||s.source,r=t.get(o)??[];r.push(s),t.set(o,r)}return[...t.entries()].map(([s,o])=>{const r=[...o].sort((c,p)=>(p.lastActiveAt??0)-(c.lastActiveAt??0)),l=r.filter(c=>F(c).live).length;return{harness:s,label:Yt(s),lanes:r,liveCount:l}}).sort((s,o)=>o.lanes.length-s.lanes.length)}function Jt({lane:e,nowMs:t,onOpen:s}){const o=F(e,t),r=e.observe?.events?.length??0,l=c=>{(c.key==="Enter"||c.key===" ")&&(c.preventDefault(),s(e))};return n.jsxs("div",{className:`scope-dir__row${o.live?" is-live":""}`,role:"button",tabIndex:0,onClick:()=>s(e),onKeyDown:l,"aria-label":`${o.source} ${o.sessionRef}`,children:[n.jsx("span",{className:`scope-dir__dot${o.live?" is-live":""}`,"aria-hidden":!0}),n.jsx("span",{className:"scope-dir__ref",children:o.sessionRef}),n.jsx("span",{className:"scope-dir__path",title:e.agent.cwd??e.agent.project??void 0,children:o.path}),n.jsxs("span",{className:"scope-dir__events",children:[r,n.jsx("span",{className:"scope-dir__unit",children:"ev"})]}),n.jsx("span",{className:"scope-dir__status",children:o.statusLine})]})}function Qt({navigate:e,agents:t}){const s=q(),{now:o,horizonLabel:r,lanes:l,tailLoading:c}=ye({scoutAgents:t,defaultWidthTier:"md"}),p=m.useMemo(()=>Zt(l),[l]),[i,a]=m.useState(null),f=m.useCallback(h=>{const u=h.observe?.events?.at(-1);u&&a({lane:h,event:u})},[]),g=l.length,_=p.reduce((h,u)=>h+u.liveCount,0);return n.jsxs("div",{className:"scope-dir","data-scope-presentation":!0,...s,children:[n.jsx("header",{className:"scope-dir__bar",children:n.jsxs("div",{className:"scope-dir__summary",children:[n.jsxs("span",{className:"scope-dir__count",children:[g," instance",g===1?"":"s"]}),_>0?n.jsxs("span",{className:"scope-dir__live",children:[_," live"]}):null,n.jsxs("span",{className:"scope-dir__window",children:["window ",r]})]})}),p.length===0?n.jsx("div",{className:"scope-dir__empty",children:c?"Discovering sessions…":"No sessions discovered for this workspace."}):n.jsx("div",{className:"scope-dir__body",children:p.map(h=>n.jsxs("section",{className:"scope-dir__group",children:[n.jsxs("header",{className:"scope-dir__group-head",children:[n.jsx("span",{className:"scope-dir__group-name",children:h.label}),n.jsx("span",{className:"scope-dir__group-kind",children:"runtime"}),n.jsxs("span",{className:"scope-dir__group-counts",children:[h.lanes.length," ",h.lanes.length===1?"instance":"instances",h.liveCount?` · ${h.liveCount} live`:""]})]}),n.jsx("div",{className:"scope-dir__list",role:"list",children:h.lanes.map(u=>n.jsx(Jt,{lane:u,nowMs:o,onOpen:f},u.id))})]},h.harness))}),i?n.jsx(we,{target:i,onClose:()=>a(null)}):null]})}function Xt({laneId:e,grabbed:t,onKeyMove:s,onDragStart:o,onDragEnd:r}){const l=i=>{if(!(!i.altKey||!s)){if(i.key==="ArrowLeft"||i.key==="ArrowUp"){i.preventDefault(),i.stopPropagation(),s("before");return}(i.key==="ArrowRight"||i.key==="ArrowDown")&&(i.preventDefault(),i.stopPropagation(),s("after"))}},c=i=>{i.stopPropagation();const a=i.dataTransfer;if(!a)return;a.setData("text/plain",e),a.effectAllowed="move";const f=i.currentTarget.closest("[data-lane-id]");f instanceof HTMLElement&&(a.setDragImage(f,Math.min(48,f.clientWidth/2),18),f.classList.add("is-dragging")),o?.(e)},p=i=>{i.currentTarget.closest("[data-lane-id]")?.classList.remove("is-dragging"),r?.()};return n.jsx("span",{className:"scope-lane__drag",role:"button",tabIndex:0,draggable:!0,"aria-grabbed":t?"true":"false","aria-keyshortcuts":"Alt+ArrowLeft Alt+ArrowRight Alt+ArrowUp Alt+ArrowDown","aria-label":"Drag to reorder lane. Drop in a gutter for a new column. Alt+arrow keys also move.",title:"Drag to reorder · drop in gutters for a new column",onClick:i=>i.stopPropagation(),onKeyDown:l,onDragStart:c,onDragEnd:p,children:"⠿"})}const es=["sm","md","lg"],ts={sm:"¼",md:"½",lg:"full"},ss={sm:"Quarter row",md:"Half row",lg:"Full row"};function je({value:e,defaultValue:t,onChange:s,compact:o=!1,label:r="Lane width",variant:l="tier"}){const c=typeof e=="string"?e:t,p=l==="grid";return n.jsx("div",{className:`scope-lane-width${o?" is-compact":""}${p?" is-grid":""}`,role:"group","aria-label":r,onClick:i=>i.stopPropagation(),onKeyDown:i=>i.stopPropagation(),children:es.map(i=>n.jsx("button",{type:"button",className:`scope-lane-width__btn${c===i?" is-on":""}`,"aria-pressed":c===i,title:p?ss[i]:`${i.toUpperCase()} column width`,onClick:()=>s(i),children:p?ts[i]:i},i))})}function os({lane:e,layoutMode:t,compact:s,laneWidth:o,defaultLaneWidth:r,onLaneWidthChange:l,nowMs:c,traceWindowMs:p,traceWindowLabel:i,onOpenTrace:a,onTraceEventSelect:f,onDragStart:g,onDragEnd:_,onDragKeyMove:h,focusProps:u}){const{agent:d,observe:S,source:v}=e,b=F(e,c),k=!!(S&&S.events.length>0),y=u?.ref,T=u?{"data-cursor":u["data-cursor"],tabIndex:u.tabIndex,onFocus:u.onFocus}:void 0,E=()=>{const w=S?.events?.at(-1);a(e,w)},R=w=>{(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),E())};return n.jsxs("article",{ref:y,"data-lane-id":e.id,className:["scope-lane",b.live?"is-live":"",u?.["data-cursor"]?"is-cursor":"",s?"is-stack-compact":"",t==="grid"?"is-grid":""].filter(Boolean).join(" "),...T,children:[n.jsxs("header",{className:`scope-lane__head${s?" is-compact":""}`,role:"button",tabIndex:0,onClick:w=>{w.target instanceof HTMLElement&&w.target.closest(".scope-lane__drag")||E()},onKeyDown:R,"aria-label":`${b.source} ${b.sessionRef}`,children:[n.jsx(Xt,{laneId:e.id,onKeyMove:h,onDragStart:g,onDragEnd:_}),n.jsx("span",{className:"scope-lane__live","aria-hidden":"true"}),n.jsxs("div",{className:"scope-lane__meta",children:[n.jsxs("span",{className:"scope-lane__source",children:[b.source,n.jsxs("span",{className:"scope-lane__ref",children:[" · ",b.sessionRef]})]}),n.jsx("span",{className:"scope-lane__path",title:d.cwd??d.project??void 0,children:b.path}),s?null:n.jsx("span",{className:"scope-lane__status",children:b.statusLine}),l&&(t==="grid"||!s)?n.jsx(je,{value:o,defaultValue:r,onChange:l,compact:!0,label:`${b.sessionRef} width`,variant:t==="grid"?"grid":"tier"}):null]})]}),n.jsx("section",{className:"scope-lane__trace","aria-label":`${be(d,v)} trace · ${i}`,children:k?n.jsx(xe,{data:S??void 0,agentId:v==="scout"?d.id:void 0,sessionId:d.harnessSessionId,showRail:!1,variant:"lane",surface:"scope",nowMs:c,traceWindowMs:p,traceWindowLabel:i,onLaneEventSelect:w=>f(e,w)}):n.jsx("div",{className:"scope-lane__empty",children:"waiting for events"})})]})}function rs({space:e,layoutMode:t,widthPx:s,gridSpan:o,children:r}){const l=t==="swim"?{"--scope-lane-width":`${s}px`}:t==="grid"&&o?{gridColumn:`span ${o}`}:void 0;return n.jsx("div",{className:`scope-lane-space${t==="grid"?" is-grid":""}`,style:l,"data-split":e.ids.length,"data-orient":e.orient,"data-grid-span":t==="grid"?o:void 0,children:n.jsx("div",{className:"scope-lane-space__lanes",children:r})})}const ns=[{key:"swim",label:"swim"},{key:"grid",label:"grid"},{key:"floor",label:"floor"}];function as({liveCount:e,horizon:t,horizonLabel:s,layoutMode:o,laneWidth:r,onHorizonChange:l,onLayoutChange:c,onLaneWidthChange:p}){const i=o==="floor";return n.jsxs("header",{className:"scope-lanes-bar",children:[n.jsxs("div",{className:"scope-lanes-bar__summary",children:[n.jsxs("span",{className:"scope-lanes-bar__count",children:[e," lane",e===1?"":"s"]}),n.jsx("span",{className:"scope-lanes-bar__window",children:i?"past 30m · lanes 4h":`window ${s}`})]}),n.jsxs("div",{className:"scope-lanes-bar__controls",children:[n.jsx("div",{className:"scope-lanes-bar__layouts",role:"group","aria-label":"Lane layout",children:ns.map(a=>n.jsx("button",{type:"button",className:`scope-lanes-bar__layout${o===a.key?" is-on":""}`,"aria-pressed":o===a.key,onClick:()=>c(a.key),children:a.label},a.key))}),i?null:n.jsxs(n.Fragment,{children:[n.jsx(je,{value:r,defaultValue:r,onChange:p,label:"Default column width",variant:o==="grid"?"grid":"tier"}),n.jsx("div",{className:"scope-lanes-bar__horizons",role:"group","aria-label":"Activity window",children:H.map(a=>n.jsx("button",{type:"button",className:`scope-lanes-bar__horizon${t===a.key?" is-on":""}`,"aria-pressed":t===a.key,onClick:()=>l(a.key),children:a.label},a.key))})]})]})]})}const U=.22,ce=.46,$=14,V=12,oe={mode:null,before:!0,slotIndex:-1,stackBand:0,targetAgentId:null};function z(e,t){return[...t.querySelectorAll(".scope-lane-space")].indexOf(e)}function is(e){return[...e.querySelectorAll("[data-lane-id]")].map(t=>t.getAttribute("data-lane-id")).filter(t=>!!t)}function K(e){return e?.querySelector("[data-lane-id]")??null}function ke(e,t){const s=e.filter(r=>{const l=r.getBoundingClientRect();return t>=l.top-$&&t<=l.bottom+$});if(!s.length)return[];const o=s[0].getBoundingClientRect().top;return e.filter(r=>Math.abs(r.getBoundingClientRect().top-o)<=$)}function C(e){return{before:!1,stackBand:0,targetAgentId:null,label:"",previewColumn:!1,col:null,...e}}function ls(e,t,s){const o=[...e.querySelectorAll(".scope-lane-space")];if(!o.length)return null;const r=ke(o,s);if(!r.length)return null;const l=r[0].getBoundingClientRect().top,c=Math.max(...r.map(f=>f.getBoundingClientRect().bottom));if(s<l-$||s>c+$)return null;const p=r[0].getBoundingClientRect(),i=z(r[0],e),a=Math.max(V*3,p.width*U);if(t<=p.left+a)return C({mode:"reorder",before:!0,slotIndex:i,slot:r[0],col:K(r[0]),label:"new column",previewColumn:!0});for(let f=0;f<r.length;f+=1){const g=r[f],_=g.getBoundingClientRect(),h=z(g,e),u=r[f+1],d=Math.max(V*3,_.width*U);if(u){const S=u.getBoundingClientRect(),v=_.right-d*.4,b=S.left+d*.4;if(t>=v&&t<=b){const k=(_.right+S.left)/2;if(t<k)return C({mode:"reorder",before:!1,slotIndex:h,slot:g,col:K(g),label:"new column",previewColumn:!0});const y=z(u,e);return C({mode:"reorder",before:!0,slotIndex:y,slot:u,col:K(u),label:"new column",previewColumn:!0})}continue}if(t>=_.right-d)return C({mode:"reorder",before:!1,slotIndex:h,slot:g,col:K(g),label:"new column",previewColumn:!0})}return null}function cs(e,t,s,o,r,l){const c=s.closest(".scope-lane-space");if(!c)return null;const p=s.getBoundingClientRect(),i=c.getBoundingClientRect(),a=z(c,o),f=is(c),g=(t-p.top)/p.height,_=(e-p.left)/p.width,h=(e-i.left)/i.width;if(g<ce){if(h<U)return C({mode:"reorder",before:!0,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0});if(h>1-U)return C({mode:"reorder",before:!1,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0});const S=_<.5;return C({mode:"reorder",before:S,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0})}const u=c.dataset.orient||"row";if(l<=1){const S=_<.5;return C({mode:"reorder",before:S,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0})}if(u==="column"&&f.length>=l&&!f.includes(r)){const S=_<.5;return C({mode:"reorder",before:S,slotIndex:a,slot:c,col:s,label:"new column",previewColumn:!0})}const d=ps(c,t);return C({mode:"stack",stackBand:d.band,targetAgentId:s.getAttribute("data-lane-id"),slotIndex:a,slot:c,col:s,label:d.label,stackPreview:d.preview})}function G(e){const t=e.top+e.height*ce;return{top:t,left:e.left,width:e.width,height:Math.max(24,e.bottom-t)}}function he(e,t){return t<=1?e>=1:e>=t}function ps(e,t){const s=e.getBoundingClientRect(),o=[...e.querySelectorAll("[data-lane-id]")];if(!o.length)return{band:0,label:"stack",preview:G(s)};if(o.length===1){const p=o[0].getBoundingClientRect(),i=p.top+p.height*ce,a=p.top+p.height*.5,f=t<a?0:1,g=f===0?{top:i,left:s.left,width:s.width,height:Math.max(18,a-i)}:G(s);return{band:f,label:f===0?"stack above":"stack below",preview:g}}let r=o.length;for(let p=0;p<o.length;p+=1){const i=o[p].getBoundingClientRect();if(t<i.top+i.height/2){r=p;break}}let l;if(he(r,o.length))l=G(s);else if(r===0){const p=o[0].getBoundingClientRect();l={top:p.top,left:s.left,width:s.width,height:Math.max(18,p.height*.5)}}else{const p=o[r-1].getBoundingClientRect(),i=o[r].getBoundingClientRect();l={top:(p.bottom+i.top)/2-10,left:s.left,width:s.width,height:20}}const c=r===0?"stack top":he(r,o.length)?"stack bottom":"stack between";return{band:r,label:c,preview:l}}function ms(e,t,s,o,r){const l=document.elementFromPoint(e,t);if(l&&s.contains(l)){const c=l.closest("[data-lane-id]"),p=c?.getAttribute("data-lane-id");if(c&&p&&p!==o&&!c.classList.contains("is-dragging"))return cs(e,t,c,s,o,r)}return ls(s,e,t)}function ds(e){return e.querySelector(".scope-lane-space")?.getBoundingClientRect().width||360}function us(e){return[e.mode,e.slotIndex,e.before,e.stackBand,e.targetAgentId,e.label,e.previewColumn,e.col?.getAttribute("data-lane-id")].join("|")}function fs(e,t,s,o){const r=t.getBoundingClientRect(),l=s.slot.getBoundingClientRect();if(s.mode==="stack"){const g=s.stackPreview??G(l),_=s.label==="stack below"||s.label==="stack bottom";e.hidden=!1,e.className=`scope-lane-drop is-band${_?" is-bottom-stack":""}`,e.dataset.mode="stack",e.dataset.label=s.label||"",e.style.transform=`translate(${g.left-r.left+t.scrollLeft}px, ${g.top-r.top+t.scrollTop}px)`,e.style.width=`${g.width}px`,e.style.height=`${g.height}px`;return}if(s.previewColumn){const g=ds(t),_=[...t.querySelectorAll(".scope-lane-space")],h=ke(_,l.top+l.height/2),u=(h.length?h:[s.slot]).map(b=>b.getBoundingClientRect()),d=Math.max(...u.map(b=>b.height),l.height),S=Math.min(...u.map(b=>b.top)),v=Math.max(0,s.before?l.left-r.left+t.scrollLeft-g-V/2:l.right-r.left+t.scrollLeft+V/2);e.hidden=!1,e.className="scope-lane-drop is-column",e.dataset.mode="column",e.dataset.label=s.label||"",e.style.transform=`translate(${v}px, ${S-r.top+t.scrollTop}px)`,e.style.width=`${g}px`,e.style.height=`${d}px`;return}const c=s.slot.dataset.orient||"row";let p,i,a,f;c==="column"?(p=l.left-r.left+t.scrollLeft,i=(s.before?l.top:l.bottom)-r.top+t.scrollTop-2,a=l.width,f=3):(p=(s.before?l.left:l.right)-r.left+t.scrollLeft-2,i=l.top-r.top+t.scrollTop,a=3,f=l.height),e.hidden=!1,e.className="scope-lane-drop is-line",e.dataset.mode="reorder",e.dataset.label=s.label||"",e.style.transform=`translate(${p}px, ${i}px)`,e.style.width=`${a}px`,e.style.height=`${f}px`}function re(e,t,s={}){!s.keepIndicator&&t&&(t.hidden=!0,t.className="scope-lane-drop",delete t.dataset.label,delete t.dataset.mode,t.style.transform="",t.style.width="",t.style.height=""),e&&(e.querySelectorAll(".scope-lane-space").forEach(o=>{delete o.dataset.dropZone}),e.querySelectorAll("[data-lane-id].is-drop-target").forEach(o=>{o.classList.remove("is-drop-target"),delete o.dataset.dropZone,delete o.dataset.dropLabel}))}function hs({stackMax:e,onReorder:t,onStack:s,indicatorRef:o}){const r=m.useRef(null),l=m.useRef(null),c=m.useRef(oe),p=m.useRef(""),i=m.useCallback(h=>{r.current?.closest(".scope-lanes")?.classList.toggle("is-dragging",h)},[]),a=m.useCallback(h=>{l.current=h,p.current="",c.current=oe,i(!0)},[i]),f=m.useCallback(()=>{l.current=null,p.current="",c.current=oe,re(r.current,o.current),i(!1)},[o,i]),g=m.useCallback(h=>{const u=l.current;if(!u)return;h.preventDefault(),h.dataTransfer.dropEffect="move";const d=r.current,S=o.current;if(!d||!S)return;const v=ms(h.clientX,h.clientY,d,u,e);if(!v){p.current&&(p.current="",re(d,S));return}const b=us(v);if(b===p.current)return;const k=!!(p.current&&v.mode==="reorder");p.current=b,c.current={mode:v.mode,before:v.before,slotIndex:v.slotIndex,stackBand:v.stackBand??0,targetAgentId:v.targetAgentId??null},re(d,S,{keepIndicator:k}),v.col&&(v.col.classList.add("is-drop-target"),v.col.dataset.dropZone=v.mode,v.label&&(v.col.dataset.dropLabel=v.label)),v.slot.dataset.dropZone=v.mode,fs(S,d,v)},[o,e]),_=m.useCallback(h=>{h.preventDefault();const u=h.dataTransfer.getData("text/plain")||l.current,d=c.current;if(!u||d.slotIndex<0||!d.mode){f();return}d.mode==="stack"?s(u,d.slotIndex,d.stackBand):t(u,d.slotIndex,d.before),f()},[f,t,s]);return m.useEffect(()=>{const h=u=>{u.key!=="Escape"||!l.current||f()};return window.addEventListener("keydown",h),()=>window.removeEventListener("keydown",h)},[f]),{scrollRef:r,onDragStart:a,onDragEnd:f,scrollDragProps:{onDragEnter:h=>{l.current&&h.preventDefault()},onDragOver:g,onDrop:_}}}const ne=le("lane-spaces"),gs=2,_s=6,B=4;function Ss(e){const t=Number(e);return Number.isFinite(t)?Math.min(_s,Math.max(gs,Math.round(t))):B}function Y(e){if(Array.isArray(e))return{ids:e.filter(s=>typeof s=="string"),orient:"row"};if(e&&typeof e=="object"&&Array.isArray(e.ids)){const t=e;return{ids:t.ids.filter(o=>typeof o=="string"),orient:t.orient==="column"?"column":"row"}}return{ids:[],orient:"row"}}function vs(e,t,s=B){const o=new Set(t),r=new Set,l=[];for(const c of e){const p=Y(c),i=p.ids.filter(g=>o.has(g)&&!r.has(g));if(i.forEach(g=>r.add(g)),!i.length)continue;const a=i.length===1?"row":p.orient,f=a==="column"?s:4;l.push({ids:i.slice(0,f),orient:a})}for(const c of t)r.has(c)||(l.push({ids:[c],orient:"row"}),r.add(c));return l}function ge(e,t,s=B){return t.length?vs(t,e,s):e.map(o=>({ids:[o],orient:"row"}))}function Ce(e,t){return e.map(s=>{const o=Y(s),r=o.ids.filter(l=>l!==t);return r.length?{ids:r,orient:r.length===1?"row":o.orient}:null}).filter(s=>s!==null)}function bs(e,t,s,o){const r=Ce(e,t),l=Math.min(o?s:s+1,r.length);return r.splice(l,0,{ids:[t],orient:"row"}),r}function xs(e,t,s,o,r=B){const l=Ce(e,t),p=[...Y(l[s]??{ids:[],orient:"row"}).ids],i=Math.min(Math.max(0,o),p.length);p.splice(i,0,t);const a=p.slice(0,r);return l[s]={ids:a,orient:a.length>1?"column":"row"},l}function Ls(){try{const e=sessionStorage.getItem(ne);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.map(Y).filter(s=>s.ids.length>0):[]}catch{return[]}}function ws(e){try{if(!e.length){sessionStorage.removeItem(ne);return}sessionStorage.setItem(ne,JSON.stringify(e))}catch{}}function Ns(e,t=B){const s=m.useMemo(()=>e.map(u=>u.lane.id),[e]),o=m.useMemo(()=>new Map(e.map(u=>[u.lane.id,u])),[e]),[r,l]=m.useState(()=>Ls()),[c,p]=m.useState(()=>r.length>0),i=m.useMemo(()=>c?ge(s,r,t):ge(s,[],t),[s,c,t,r]);m.useEffect(()=>{c&&ws(i)},[c,i]);const a=m.useCallback(u=>{p(!0),l(u)},[]),f=m.useCallback((u,d,S)=>{a(bs(i,u,d,S))},[a,i]),g=m.useCallback((u,d,S,v=t)=>{a(xs(i,u,d,S,v))},[a,i,t]),_=m.useMemo(()=>i.map(u=>({space:u,columns:u.ids.map(d=>o.get(d)).filter(d=>d!==void 0)})).filter(u=>u.columns.length>0),[o,i]),h=m.useMemo(()=>_.flatMap(u=>u.columns),[_]);return{spaces:i,resolvedSpaces:_,flatColumns:h,reorderLane:f,stackLane:g,stackMax:Ss(t)}}function ys({lanes:e,onOpenTrace:t,onHorizonChange:s}){const[o,r]=m.useState(-1),l=m.useRef(new Map);m.useEffect(()=>{if(o<0)return;if(o>=e.length){r(e.length-1);return}const i=e[o];if(!i)return;const a=l.current.get(i.id);a?.scrollIntoView({block:"nearest",inline:"nearest"}),a?.focus()},[o,e]);const c=m.useCallback((i,a)=>{a?l.current.set(i,a):l.current.delete(i)},[]);m.useEffect(()=>{const i=a=>{if(!document.querySelector(".scope-lanes")||kt(a.target)||Ct()||e.length===0)return;const f=Number(a.key)-1;if(!a.metaKey&&!a.ctrlKey&&!a.altKey&&f>=0&&f<H.length){a.preventDefault(),s(H[f].key);return}if(a.key==="ArrowRight"||a.key==="ArrowDown"||a.key==="j"){a.preventDefault(),r(g=>de(g,e.length,1));return}if(a.key==="ArrowLeft"||a.key==="ArrowUp"||a.key==="k"){a.preventDefault(),r(g=>de(g,e.length,-1));return}if(a.key==="Home"||a.key==="g"&&!a.shiftKey){a.preventDefault(),r(0);return}if(a.key==="End"||a.key==="G"){a.preventDefault(),r(e.length-1);return}if(a.key==="Enter"||a.key===" "){const g=o<0?0:o,_=e[g];if(!_)return;a.preventDefault(),r(g),t(_,_.observe?.events?.at(-1))}};return window.addEventListener("keydown",i),()=>window.removeEventListener("keydown",i)},[o,e,s,t]);const p=m.useCallback((i,a)=>({"data-cursor":o===i?!0:void 0,tabIndex:o===i?0:-1,ref:f=>c(a,f),onFocus:()=>r(i)}),[o,c]);return{focusedIndex:o,getLaneFocusProps:p}}const Ee=4;function Ae(e){switch(e){case"sm":return 1;case"md":return 2;case"lg":return Ee}}function js(e,t){if(e==="sm"||e==="md"||e==="lg")return e;if(typeof e=="number"&&Number.isFinite(e)){const{tier:s,px:o}=Ue(e);if(s)return s;let r=t,l=Number.POSITIVE_INFINITY;for(const[c,p]of Object.entries(Ve)){const i=Math.abs(p-o);i<l&&(l=i,r=c)}return r}return t}function ks(e,t){return Ae(js(e,t))}function Cs(e,t){return e.length?Math.max(...e.map(s=>ks(s,t))):Ae(t)}const ae=le("lanes-layout");function Ie(e){return e==="swim"||e==="grid"||e==="floor"}function Es(){try{const e=sessionStorage.getItem(ae);if(Ie(e))return e}catch{}return"swim"}function _e(){if(typeof window>"u")return null;const e=new URLSearchParams(window.location.search).get("layout")?.trim().toLowerCase();return Ie(e)?e:null}function As(){const[e,t]=m.useState(()=>_e()??Es()),s=m.useCallback(o=>{t(o);try{sessionStorage.setItem(ae,o)}catch{}typeof window>"u"||qe({searchPatch:{layout:o==="swim"?null:o},replace:!0})},[]);return m.useEffect(()=>{const o=_e();if(o&&o!==e){t(o);try{sessionStorage.setItem(ae,o)}catch{}}},[e]),{layoutMode:e,setLayoutMode:s}}function Is({message:e}){return n.jsx("li",{className:"scope-lanes__issue",children:n.jsx("span",{className:"scope-lanes__issue-msg",children:e})})}function Ts({navigate:e,agents:t}){const s=q(),{layoutMode:o,setLayoutMode:r}=As(),l=o==="floor",{now:c,horizon:p,setHorizon:i,horizonLabel:a,traceWindowMs:f,lanes:g,layout:_,deck:h,setLaneWidth:u,setDefaultLaneWidth:d,activeFilterLabel:S,issues:v,tailLoading:b}=ye({scoutAgents:t,defaultWidthTier:"md",horizonOverride:l?"4h":void 0}),{resolvedSpaces:k,flatColumns:y,reorderLane:T,stackLane:E,stackMax:R}=Ns(_.flat),w=o==="grid",[A,D]=m.useState(null),O=m.useRef(null),{scrollRef:W,onDragStart:Z,onDragEnd:J,scrollDragProps:Q}=hs({stackMax:R,onReorder:T,onStack:E,indicatorRef:O}),x=m.useCallback(L=>{W.current=L},[W]),N=m.useCallback((L,M)=>{const P=M??L.observe?.events?.at(-1);P&&D({lane:L,event:P})},[]),I=m.useMemo(()=>{const L=new Map;return y.forEach((M,P)=>L.set(M.lane.id,P)),L},[y]),{getLaneFocusProps:X}=ys({lanes:y.map(L=>L.lane),onOpenTrace:N,onHorizonChange:i}),ee=m.useMemo(()=>b?"Loading sessions…":S?`No lanes match ${S} in the last ${a}.`:`No sessions with recent work in the last ${a}.`,[S,a,b]);return n.jsxs("div",{className:`scope-lanes${o==="grid"?" is-grid":""}`,"data-scope-presentation":!0,"data-scope-view":"lanes","data-scope-layout":o,"data-grid-cols":w?Ee:void 0,style:{"--scope-lane-stack-max":String(R)},...s,children:[n.jsx(as,{liveCount:l?g.length:y.length,horizon:p,horizonLabel:a,layoutMode:o,laneWidth:h.defaultLaneWidth,onHorizonChange:i,onLayoutChange:r,onLaneWidthChange:d}),v.length>0?n.jsx("div",{className:"scope-lanes__issues",role:"status","aria-live":"polite",children:n.jsx("ul",{className:"scope-lanes__issues-list",children:v.map(L=>n.jsx(Is,{message:L.message},L.id))})}):null,(l?g.length:y.length)===0?n.jsx("div",{className:"scope-lanes__empty",children:ee}):l?n.jsx(jt,{lanes:g,now:c,onOpenTrace:N}):n.jsx("div",{className:"scope-lanes__canvas",role:"listbox","aria-label":"Session lanes",children:n.jsxs("div",{ref:x,className:`scope-lanes__scroll${o==="grid"?" is-grid":""}`,...Q,children:[k.map((L,M)=>{const P=L.space.orient==="column"&&L.columns.length>1,Te=Math.max(...L.columns.map(j=>j.widthPx)),Re=w?Cs(L.columns.map(j=>h.laneWidths[j.lane.id]??h.defaultLaneWidth),h.defaultLaneWidth):void 0;return n.jsx(rs,{space:L.space,layoutMode:o,widthPx:Te,gridSpan:Re,children:L.columns.map(j=>{const De=I.get(j.lane.id)??0;return n.jsx(os,{lane:j.lane,layoutMode:o,compact:P,laneWidth:h.laneWidths[j.lane.id]??h.defaultLaneWidth,defaultLaneWidth:h.defaultLaneWidth,onLaneWidthChange:te=>u(j.lane.id,te),nowMs:c,traceWindowMs:f,traceWindowLabel:a,onOpenTrace:N,onTraceEventSelect:N,onDragStart:Z,onDragEnd:J,onDragKeyMove:te=>{T(j.lane.id,M,te==="before")},focusProps:X(De,j.lane.id)},j.key)})},L.space.ids.join(":"))}),n.jsx("div",{ref:O,className:"scope-lane-drop","aria-hidden":"true",hidden:!0})]})}),A?n.jsx(we,{target:A,onClose:()=>D(null)}):null]})}const Rs=1e4;function Ds({route:e,navigate:t}){const s=q(),[o,r]=m.useState(null),[l,c]=m.useState(null),p=m.useCallback(async()=>{c(null);try{r(await Et("/api/tail/discover"))}catch(f){c(f instanceof Error?f.message:String(f))}},[]);m.useEffect(()=>{p();const f=setInterval(()=>{p()},Rs);return()=>clearInterval(f)},[p]);const i=o?.transcripts?.length??0,a=o?.processes?.length??0;return e.sessionId?n.jsx("div",{className:"scope-sessions-route","data-scope-view":"sessions",...s,children:n.jsx(It,{sessionRef:e.sessionId,navigate:t})}):n.jsx("div",{className:"scope-sessions-route","data-scope-view":"sessions",...s,children:n.jsxs("div",{className:"scope-sessions",children:[n.jsx("header",{className:"scope-sessions__bar",children:n.jsxs("div",{className:"scope-sessions__summary",children:[n.jsxs("span",{className:"scope-sessions__count",children:[i," session",i===1?"":"s"]}),a>0?n.jsxs("span",{className:"scope-sessions__live",children:[a," active"]}):null,l?n.jsx("span",{className:"scope-sessions__warn",children:"discovery error"}):null]})}),n.jsx("div",{className:"scope-sessions__body",children:n.jsx("div",{className:"scope-sessions__atop",children:n.jsx(At,{navigate:t})})})]})})}function Ps({navigate:e,tailQuery:t}){const s=q();return n.jsx("div",{className:"scope-tail-route","data-scope-view":"tail",...s,children:n.jsxs("div",{className:"scope-tail",children:[n.jsx("header",{className:"scope-tail__bar",children:n.jsxs("div",{className:"scope-tail__summary",children:[n.jsx("span",{className:"scope-tail__count",children:"tail"}),n.jsx("span",{className:"scope-tail__hint",children:"live event stream"}),t?n.jsxs("span",{className:"scope-tail__query",title:t,children:["q=",t]}):null]})}),n.jsx("div",{className:"scope-tail__body",children:n.jsx("div",{className:"scope-tail__stream",children:n.jsx(Tt,{navigate:e,initialFilter:t,variant:"tail",chrome:"embedded"})})})]})})}function Os(e,t,s,o){if(!Ye(o))return null;const r=Ze(e);if(!r)return null;switch(r){case"lanes":return n.jsx(Ts,{navigate:t,agents:s});case"tail":return e.view!=="ops"||e.mode!=="tail"?null:n.jsx(Ps,{navigate:t,tailQuery:e.tailQuery});case"sessions":return e.view!=="sessions"?null:n.jsx(Ds,{route:e,navigate:t});case"agents":return e.view!=="agents-v2"||tt(e)?null:n.jsx(Qt,{navigate:t,agents:s});default:return null}}function Ms(){const{route:e,navigate:t,agents:s}=Se(),{pathname:o}=Je(),r=Os(e,t,s,o);return n.jsx(Xe,{children:r??et(e,t,s)})}function $s(){const{route:e,navigate:t}=Se();return Ot({className:"scout-nav-tabs scout-nav-tabs--scope",brandTag:Qe,items:Oe,activeKey:Pe(e),navigate:t})}function Fs(){const e=ie(),t=Rt(),s=$s();return Le("nav.sidebar",!1)?null:e?s:t}function Bs(){const e=ie(),t=Dt();return Le("nav.sidebar",!1)?null:e?m.createElement("div",{className:"scout-nav-actions"}):t}function Ws(){const e=ie(),t=Pt();return e?{active:!1,dismissible:!0}:t}function Hc(e){e.slots.Content=Ms,e.hooks.useNavCenter=Fs,e.hooks.useNavActions=Bs,e.hooks.useTakeover=Ws}export{Qe as SCOPE_BRAND_LABEL,qc as SCOPE_ENABLE_HINTS,hp as SCOPE_FLAG_BUNDLE,gp as SCOPE_FLAG_BUNDLE_ALIASES,_p as SCOPE_FLAG_KEY,Xc as SCOPE_FLAG_REGISTRY_KEY,ep as SCOPE_LANE_DECK_DEFAULTS,He as SCOPE_LANE_DECK_PROFILE,Sp as SCOPE_LEGACY_FLAG_BUNDLE,vp as SCOPE_LEGACY_FLAG_KEY,bp as SCOPE_LEGACY_PATH_PREFIX,xp as SCOPE_LEGACY_PATH_SEGMENT,Lp as SCOPE_PATH_PREFIX,wp as SCOPE_PATH_SEGMENT,Np as SCOPE_ROUTE_SEGMENTS,yp as SCOPE_STORAGE_PREFIX,Oe as SCOPE_TOP_NAV_ITEMS,Ms as ScopeAppContent,Qt as ScopeDirView,os as ScopeLaneColumn,Wt as ScopeLaneDetailView,we as ScopeLaneTraceSheet,as as ScopeLanesBar,Ts as ScopeLanesView,tp as buildScopePath,sp as buildScopeRoutePath,jp as canonicalizeScopePathname,Yc as isScopeOnboardingExempt,Ye as isScopePath,op as isScopePresentation,rp as parseScopeRouteFromUrl,np as preserveLocationSearch,Os as resolveScopeContentPane,ap as routeBelongsInScopeNamespace,Ze as routeToScopeSegment,ip as scopeInstrumentBundleLayer,lp as scopeLaneDeckProfileId,cp as scopePresentationAttrs,Zc as scopePresentationTitle,pp as scopeRoutePath,le as scopeStorageKey,mp as scopeSurfaceFlagDefinition,Pe as scopeTopNavKeyForRoute,dp as scopeViewSegment,up as segmentToRoute,ie as useScopePresentation,q as useScopePresentationAttrs,Jc as useScopeShellChrome,Hc as wireScopeOntoScout};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as t,r as n,P as K,Q as V,p as Q,R as X}from"./index-DReVb7jZ.js";import{u as v,h as Z}from"./Provider-CNZluAZb.js";import{resolveContentPane as tt,resolveRightPane as et,resolveLeftPane as ot}from"./resolve-panes-pfZTezKo.js";import{S as rt}from"./ScoutSurface-6g1f5chk.js";import{a as $}from"./provider-DwmCoSlc.js";import{S as W}from"./RealtimeVoiceScreen-D41TYY0x.js";import{BrokerRight as it}from"./right-DJMSICky.js";import{OpsInspectorPanel as nt}from"./inspector-panel-CLU7wjnT.js";import{b as st,u as at}from"./persistent-state-BUsTTZFE.js";import{M as pt}from"./MeshCanvasMinimap-ClVolr4-.js";import{e as mt}from"./nav-destinations-CU_euC-Q.js";import{u as ct}from"./Terminal-jIqnIZZ6.js";import{T as lt}from"./TerminalRelay--qOBwnbR.js";import{a as E}from"./api-DSqpVKC7.js";import{i as dt,f as U}from"./machine-scope-DJt9RZ2w.js";import{u as ut,a as gt,b as ht,c as ft,d as yt,e as vt}from"./hooks-DaUOREpP.js";import{T as bt}from"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./content-BN5weWKW.js";import"./ActivityScreen-CcDdQTBK.js";import"./clipboard-e3fSpeo7.js";import"./mentions-Ck_Vjnyp.js";import"./AgentDetailCard-MIEBKw_S.js";import"./AgentLiveActions-6Kfr1uOT.js";import"./terminal-takeover-CZZsnPzj.js";import"./openContent-C6XO6kr5.js";import"./eye-CsGfEVR6.js";import"./terminal-DMZjX1es.js";import"./EmptyState-CYUwYyAW.js";/* empty css */import"./left-C6SyaqlJ.js";/* empty css */import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";import"./content-YvU-D0hF.js";import"./AgentInfoScreen-DuaN0sgE.js";/* empty css */import"./BackToPicker-CkBhGRlD.js";import"./ObservedTopologyPanel-DF6tRZL_.js";import"./AgentsScreen-BMNAj1PH.js";/* empty css */import"./AgentsSubnav-CeHhuzyM.js";import"./SecondaryNav-Bs-_VwTC.js";import"./secondaryNavConfig-DzNHk6IH.js";import"./message-square-CJW4WRlo.js";import"./compass-CvzkzkIh.js";import"./settings-C69Zjrpq.js";import"./git-branch-DcUCsWdJ.js";import"./scroll-text-B0tKI9Sg.js";import"./library-DdhYL_9v.js";/* empty css */import"./AgentSessions-CO1WGa8Z.js";import"./profile-BegEUmB7.js";import"./context-budget-8qFKqM-j.js";import"./session-catalog-CnpZMB7C.js";import"./terminal-relay-mO89dX-Y.js";import"./ConversationScreen-tpj4cqWs.js";import"./ConversationComposer-DNcn5U6D.js";import"./zap-B4X0OrEw.js";import"./message-markup-6Tgo4qFJ.js";import"./message-visibility-DwxgcgYK.js";import"./operator-attention-DBaRg5ep.js";import"./sessionRead-CvFz2RHv.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-Y9TEJxP_.js";import"./AstronautSuit-D67fIBdR.js";import"./panel-right-qP17MwMl.js";import"./CommsFlowGraph-voDD9M5R.js";import"./comms-gesture-_aGFo6g3.js";import"./CommsCanvas-DdNAwjGW.js";import"./comms-deck-CBhsXnY-.js";import"./CommsFlowMap-C33sgD48.js";import"./CommsSelection-BL8aYD7z.js";/* empty css */import"./use-conversation-list-D5EnpVba.js";import"./agent-master-model-C-KdOFDK.js";import"./use-beside-D3cJpA5p.js";import"./ConversationFeedRows-RnYSa7Io.js";import"./ConversationPanels-6pprBpmq.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./use-reduced-motion-CiaZHMnk.js";import"./proxy-DgzP27W8.js";import"./activity-BJqFrZyB.js";import"./message-circle-cI5_A5mj.js";import"./tail-events-C4WdhVeK.js";import"./ConversationStatus-Cv-7hErW.js";import"./check-g7D7-c1J.js";import"./sparkles-Cc5lPZRv.js";import"./SessionObserve-B64YsYhy.js";import"./bash-format-BRV5C6Gv.js";import"./lane-tool-detail-Czggx8oM.js";import"./LaneToolHoverCard-D2cnTeUd.js";import"./lane-observe-CteDwdD-.js";import"./lane-ask-display-BTVSakyo.js";import"./ObserveTextFlow-CC5mnngm.js";import"./SessionObserveEvidence-CS1aQBpQ.js";import"./wrench-B4maQJai.js";import"./external-link-BVccgH0n.js";import"./AgentDefinitionsWorkspace-BqS6MXqF.js";import"./agent-specialization-BplZUa_0.js";import"./project-overview-helpers-BQTc_Ous.js";import"./FileViewerPane-Cxhixtks.js";/* empty css */import"./agent-essentials-bKWYOZaH.js";/* empty css *//* empty css */import"./right-BDaCJ0CF.js";import"./openAgent-Dbv5wfuL.js";import"./TmuxPeek-DpUT9Tpc.js";import"./refresh-cw-IcD2lPoT.js";import"./ProjectsRail-CELVubfJ.js";import"./AddProjectForm-CHNJ4NnS.js";import"./projects-inbox-CfwxCTdN.js";import"./ProjectsScreen-DMw4TLKy.js";import"./ProjectsInbox-DfCXReZK.js";import"./ui-LM8pS8qE.js";import"./SessionRefScreen-DURV0MpF.js";import"./session-ref-lookup-state-SATH_jAP.js";/* empty css */import"./CrewWorkspaces-K2jcyLec.js";import"./plus-D5NLH_fM.js";import"./useEmbedHeadline-atkQVfGw.js";import"./api-BQYTwoz6.js";import"./cache-DGBo3vIf.js";import"./arrow-up-right-B0aLKiyF.js";import"./ProjectAgentProfile-FUav75j2.js";import"./ProjectAgentProfileBar-C8z22pJ2.js";import"./ProjectsThreadAside-D1Sh4fnX.js";import"./content-BxUPlcx5.js";import"./BriefingDetailScreen-yZG8_m4h.js";import"./scoutbot-markdown-DwvGQOWo.js";/* empty css */import"./BriefingsScreen-DTxYMr3a.js";import"./content-oKQMyVnH.js";import"./BrokerScreen-CT37VQiL.js";import"./status-tone-BM_zuRy1.js";import"./broker-display-BkBzyvbR.js";import"./BrokerMetadataPanel-crirZCdo.js";import"./DispatchAftermath-CcYGUB10.js";import"./follow-route-BvcGtBIL.js";import"./ShikiPane-XwFI-pCp.js";import"./send-horizontal-BlQsRK6C.js";import"./copy-BGOC1tJB.js";import"./at-sign-DM7xeppo.js";import"./radio-Cas2qg1D.js";import"./left-0vBrvrBG.js";import"./conversation-prefs-DNre-Lcx.js";import"./use-fleet-active-asks-D_QOmjg5.js";import"./sessions-view-Bge4XZ4I.js";import"./RailRow-DUPqXMZh.js";/* empty css */import"./content-CIC5sku8.js";import"./MessagesScreen-CtNMfIvC.js";import"./AgentMasterScreen-DUDUTAnU.js";/* empty css */import"./CommsDeck-mGWY7Ivi.js";import"./right-D-uv5YfF.js";import"./CodeScreen-CSC-zbP9.js";import"./CodeDiffPane-D-iv28LJ.js";import"./usePierreRuntime-DTvcwISe.js";/* empty css */import"./CodeProjectPicker-CZ3gDdiT.js";/* empty css */import"./content-CKJ9zb7Z.js";import"./FollowScreen-CupyOgt4.js";import"./content-LSStQYj5.js";import"./HarnessesScreen-DyjqbZ4k.js";import"./useContentSecondaryNav-DrL_nkCZ.js";import"./OpsSubnav-C9E0r3GZ.js";/* empty css */import"./left-CTuXysZR.js";import"./content-DrKBYpcb.js";import"./HomeHero-pIZtE1cC.js";import"./TailView-BofjmUMJ.js";import"./SlidePanel-BMpkXai_.js";import"./observe-CtS0l3zu.js";import"./agent-lanes-model-DMAdqCmK.js";import"./home-moving-signal-BIHUGNfI.js";import"./home-live-action-BkqGLVRY.js";import"./cpu-Q6nrHFTN.js";import"./file-code-corner-Be6da5l3.js";import"./right-Cb1VCrdj.js";import"./left-Cc6s4DT2.js";import"./mesh-view-store-C1-mdP3P.js";import"./machine-children-CdhNzDF0.js";import"./use-mesh-node-state-3V3ADQ-G.js";import"./NodeMenu-CcOeFRCB.js";import"./content-CnhhSCZq.js";import"./MeshScreen-BW1dMFWF.js";import"./MeshCanvas-BR25OBTJ.js";import"./Canvas-CRP0KjKb.js";import"./useAgentHoverCard-A3QGXqIy.js";import"./local-agents-I40PawYA.js";/* empty css */import"./right-CeFaxfBo.js";import"./NodeDetailPanel-BNTqYC7m.js";import"./left-DgT4tWCx.js";import"./mesh-ops-DSlvHp-D.js";import"./use-mesh-ops-items-DI9GKWlF.js";import"./content-D1Ze_FG9.js";import"./use-scout-dev-flags-CkdAHlDR.js";import"./right-BP6lXRFS.js";import"./left-R0wppTTr.js";import"./left-agents-thnBO156.js";import"./left-default-CT42fnpF.js";import"./left-lanes-CSmZgciK.js";import"./lane-roster-store-Ch9t6lb0.js";import"./left-mission-C86x6i9h.js";import"./mission-control-store-p_cboAm4.js";import"./MissionLeftAgentRow-Dms0DBjO.js";import"./page-status-DwFR4wSw.js";import"./left-advisor-C-kt8V28.js";import"./server-DBlPW0Mp.js";import"./layers-BOwyWodP.js";import"./gauge-DQCGlE3o.js";import"./content-DY3F9Vfr.js";import"./OpsScreen-DySeNQ1V.js";/* empty css */import"./AgentLanesView-WZhEDBFE.js";/* empty css */import"./AgentFloorView-A0dDRlRV.js";import"./AgentAdventures-BxrYq_2v.js";import"./ReplayClock-DUVJjrIu.js";import"./SproutActionSprite-DI5N3gOj.js";/* empty css */import"./CrewSprite-Dp9KBBGY.js";import"./adventure-playback-DTfkhIc0.js";import"./AdventureScenery-DSxDlqG1.js";import"./adventure-habitats-v1-M1lcpTJh.js";import"./AdventureReader-ZsBDQITY.js";import"./floor-preview-text-HrORUJ7D.js";/* empty css */import"./book-open-BL9qvhEI.js";import"./ReplayLog-Bek1Vc4W.js";import"./AdventureEvidence-B4mEvXeD.js";import"./agent-lane-detail-Ti3trpfH.js";/* empty css *//* empty css */import"./flag-DAFE2wZ5.js";import"./pause-B_hliKuR.js";import"./play-CVeRmqLH.js";import"./SharedWorkFloor-C0xxW4SN.js";import"./WorldMinimap-DOptgrc4.js";import"./WorldSky-D-RJzSa6.js";import"./WorldActorTalk-CKerDikx.js";import"./send-to-agent-session-C1mgqdow.js";import"./FloorExchangePanel-CjHSDXad.js";import"./floor-character-name-CqJPOlXb.js";import"./floor-message-passes-CO3Ix_wR.js";import"./shared-work-artifacts-DfNl9KTo.js";import"./floor-memory-YMM8AlLY.js";import"./CharacterFamilyPreview-ckVkecDO.js";import"./RenderedWorkerSprite-C8fxndAh.js";import"./FloorMessagePasses-BG4ebnX5.js";import"./WorkRunView-_mhG_FR2.js";import"./floor-context-model-rWKqaKmV.js";import"./agent-floor-actor-DW8zLht0.js";import"./SharedFloorCharacter-V04kD5T9.js";import"./WorldCharacter-BRrj3MQN.js";import"./RiggedWorkerCharacter-CJMWlvV-.js";import"./FloorReplay-BoYaGY9t.js";import"./AgentFloorWorld-BTqwmK5G.js";/* empty css */import"./agent-floor-world-layout-hfMjuoui.js";import"./coffee-ljG1_krY.js";/* empty css */import"./FloorTacticalHUD-BhyOqlL5.js";import"./FloorSavedWork-jbtRs-YE.js";import"./pin-Oi4qHR6M.js";/* empty css */import"./FloorResourcesSheet-_Iy5UqgY.js";/* empty css *//* empty css */import"./FloorContextSheet-Vj_wVZq1.js";import"./AgentLanesPreflight-CcS23wij.js";import"./AgentLaneChrome-fGC-ZrJS.js";import"./AgentLaneCard-C4rKLLdT.js";/* empty css */import"./AgentLaneSummaryResize-DgSeA_vS.js";import"./agent-lane-card-model-CeqQGp-8.js";import"./agent-lane-preview-Dpa3DuOn.js";import"./AgentLaneDetailSheet-BTF4_th9.js";import"./LaneTraceDetailSheet-jl4XQmEx.js";import"./LaneTraceEventFocus-BLhVHwff.js";import"./MissionControlView-BjPOViGY.js";/* empty css */import"./MissionContextRail-CafjuseK.js";import"./mission-wall-DOuGOxQy.js";import"./mission-control-model-C30vU1Fe.js";import"./MissionFocusOverlay-nhy3hkxQ.js";import"./MissionLogPane-DiUf3vWW.js";import"./OpsAgentsView-D3rM0udq.js";/* empty css */import"./DataTable-av71ehJV.js";/* empty css */import"./sliders-horizontal-6bzeod7c.js";import"./HostAdvisorView-Dv5meXo2.js";/* empty css */import"./layout-grid-B36Qsh0y.js";import"./AtopView-Ck30FbzG.js";import"./content-BNokkm7C.js";import"./RepoDiffPageScreen-D9-s5PyB.js";import"./RepoDiffViewerLazy-BpMR7tlx.js";import"./ReposScreen-BQ7HO1om.js";/* empty css */import"./selection-bridge-OTS2iFkt.js";import"./right-cjPTwPXS.js";import"./content-BV4PUM9q.js";import"./KnowledgeSearchScreen-BPqAjHnH.js";/* empty css */import"./clock-CQb4FeMf.js";import"./KnowledgeSearchInspector-B8yiM524.js";import"./content-0AXa0klu.js";import"./SessionsScreen-D71ZR-8t.js";import"./RawSessionsTable-6OVJq0JZ.js";import"./FlightObserveScreen-CvzhzuWc.js";/* empty css */import"./right-Ck2SrYCj.js";import"./content-BEyJ19Lx.js";import"./SettingsScreen-CYBHal6y.js";import"./StatusPill-Dw4LP7wu.js";import"./AgentConfigurationScreen-BhD1PEAM.js";import"./CastPicker-ZPomvOf-.js";import"./bot-BhAVbcCA.js";import"./SettingsDrawer-Nz98oBVl.js";import"./credentials-OeoF-VKJ.js";import"./VoicePermissionsPanel-D35fOnQj.js";import"./monitor-C7_cHlkC.js";import"./left-DF5caiyh.js";import"./usePersistentState-Y8XwSTg-.js";import"./session-table-CGkfG5Yd.js";import"./right-Dnljs8ah.js";import"./content-CdkTyxqk.js";import"./WorkDetailScreen-Bcf_yHhU.js";import"./WorkFilesViewer-t8AEyx3Q.js";import"./right-SdCSF8PP.js";/* empty css */import"./HerdrSession-Dcm3vf9U.js";import"./TerminalHeaderMount-CwbQhXcI.js";import"./agent-autocomplete-_u9o5EZu.js";import"./gestures-CofqY4Km.js";import"./rocket-DAqYvu8I.js";function xt(){const{route:o,navigate:e,agents:r}=v();return t.jsx(rt,{children:tt(o,e,r)})}function jt({onResizeStart:o}){const e=n.useCallback(r=>{r.preventDefault(),o(r)},[o]);return t.jsxs("div",{role:"separator","aria-orientation":"horizontal",onMouseDown:e,className:"group relative flex h-[7px] shrink-0 cursor-ns-resize items-center justify-center",children:[t.jsx("div",{className:"absolute inset-x-0 top-0 h-px bg-[var(--scout-chrome-border-soft)] transition-colors group-hover:bg-[var(--scout-chrome-ink-faint)]"}),t.jsxs("div",{className:"flex flex-row gap-[3px] opacity-0 transition-opacity group-hover:opacity-100",children:[t.jsx("div",{className:"h-[3px] w-[3px] rounded-full bg-[var(--scout-chrome-ink-faint)]"}),t.jsx("div",{className:"h-[3px] w-[3px] rounded-full bg-[var(--scout-chrome-ink-faint)]"}),t.jsx("div",{className:"h-[3px] w-[3px] rounded-full bg-[var(--scout-chrome-ink-faint)]"})]})]})}const _=260,St=.7,kt=260;function H(o,e){const r=Math.max(_,Math.floor(e*St));return Math.min(r,Math.max(_,Math.round(o)))}function wt(){const o=$("surface.scoutbot",!0),{route:e,navigate:r,agents:i,selectedBrokerAttempt:s,clearBrokerAttempt:m}=v(),[a]=st("openscout.scoutbot.collapsed",!0),[l,d]=at("openscout.scoutbot.height",kt),g=n.useRef(null),[u,h]=n.useState(0);n.useLayoutEffect(()=>{const y=g.current;if(!y)return;h(y.getBoundingClientRect().height);const S=new ResizeObserver(p=>{const c=p[0];c&&h(c.contentRect.height)});return S.observe(y),()=>S.disconnect()},[]),n.useEffect(()=>{if(u<=0)return;const y=H(l,u);y!==l&&d(y)},[u,l,d]);const j=n.useCallback(y=>{const S=y.clientY,p=l,c=g.current?.getBoundingClientRect().height??u,f=z=>{const J=z.clientY-S;d(H(p-J,c))},k=()=>{document.removeEventListener("mousemove",f),document.removeEventListener("mouseup",k),document.body.style.removeProperty("cursor"),document.body.style.removeProperty("user-select")};document.body.style.cursor="ns-resize",document.body.style.userSelect="none",document.addEventListener("mousemove",f),document.addEventListener("mouseup",k)},[u,l,d]);let b=null;const x=o&&e.view==="ops"&&e.mode==="lanes";if(x)b=t.jsx(W,{forceExpanded:!0,fill:!0});else switch(e.view){case"ops":b=t.jsx(nt,{mode:e.mode??"mission",agents:i,navigate:r,returnRoute:e});break;case"broker":b=t.jsx(it,{selectedAttempt:s,navigate:r,onClose:m});break;default:b=et(e,r)}const A=u>0?H(l,u):l,R=o&&e.view!=="broker"&&e.view!=="voice";return t.jsxs("div",{ref:g,className:"flex h-full flex-col overflow-hidden",children:[t.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:b}),R&&!x&&!a&&t.jsx(jt,{onResizeStart:j}),R&&!x&&t.jsx(W,{height:a?void 0:A})]})}const Y="openscout.globalJumpDock.mode.v1";function Ct(){if(typeof window>"u")return null;try{const o=window.localStorage.getItem(Y);return o==="jump"||o==="minimap"?o:null}catch{return null}}function Rt(o){try{window.localStorage.setItem(Y,o)}catch{}}function Tt(){const{route:o,navigate:e}=v(),r=o.view==="mesh",[i,s]=n.useState(()=>{const a=Ct();return a==="minimap"&&r?"minimap":a==="jump"?"jump":r?"minimap":"jump"});n.useEffect(()=>{i==="minimap"&&!r&&s("jump")},[i,r]);const m=a=>{s(a),Rt(a)};return t.jsxs("div",{className:"gjd",children:[t.jsxs("div",{className:"gjd-head",children:[t.jsx("span",{className:"gjd-ear","aria-hidden":!0}),t.jsxs("div",{className:"gjd-mode",role:"group","aria-label":"Bottom dock mode",children:[t.jsx("button",{type:"button",className:`gjd-mode-btn${i==="jump"?" gjd-mode-btn--active":""}`,onClick:()=>m("jump"),"aria-pressed":i==="jump",children:"jump"}),r&&t.jsx("button",{type:"button",className:`gjd-mode-btn${i==="minimap"?" gjd-mode-btn--active":""}`,onClick:()=>m("minimap"),"aria-pressed":i==="minimap",children:"minimap"})]}),t.jsx("span",{className:"gjd-ear","aria-hidden":!0})]}),t.jsx("div",{className:"gjd-body",children:i==="minimap"&&r?t.jsx(pt,{}):t.jsx(Et,{navigate:e})})]})}const Ot=mt();function Et({navigate:o}){const e=$("ops.control",!0),r=Ot.filter(i=>!i.opsGated||e);return t.jsx("div",{className:"gjd-jumps",children:r.map(i=>{const s=i.icon;return t.jsxs("button",{type:"button",className:"gjd-jump",onClick:()=>o(i.route),children:[t.jsx("span",{className:"gjd-jump-icon",children:n.createElement(s,{size:13,strokeWidth:1.6})}),t.jsx("span",{className:"gjd-jump-label",children:i.label})]},i.id)})})}function Nt(){const{route:o,navigate:e}=v();return t.jsxs("div",{className:"scout-left-shell",children:[t.jsx("div",{className:"scout-left-shell-rail",children:ot(o,e)}),t.jsx(Tt,{})]})}function It(){const o=K(),e=V(),r=ct({url:o,healthUrl:e,autoConnect:!0,sessionKey:"scout-terminal"});return t.jsx("div",{style:{height:"100%",background:"#0d0d0d",overflow:"hidden"},children:t.jsx(lt,{relay:r,fontSize:13,configItems:[{label:"ws",value:o},{label:"health",value:e}]})})}const Pt="Scout's local server isn't responding. It may still be starting up — wait a moment and try again.",Mt="Scout couldn't start its background service. Restart Scout from the menu bar icon, then try again.",At="The broker isn't running yet. Start Scout's services from the menu bar icon, then run setup again.",zt="Starting the broker took too long. Try again — if it keeps happening, restart Scout.",Ht="Scout couldn't write its settings in your home folder (~/.openscout). Check the folder's permissions and try again.",Bt="That folder doesn't exist on this Mac. Double-check the path — for example /Users/you/dev.";function C(o,e){const r=e instanceof Error?e.message:String(e);return dt(U(e))?Pt:/Unable to locate scoutd|Unable to locate Bun/i.test(r)?Mt:/openscout-runtime broker/i.test(r)?At:/timed out/i.test(r)?zt:/EACCES|EPERM|EROFS/i.test(r)?Ht:o==="project"&&/ENOENT|does not exist|doesn'?t exist/i.test(r)?/does not exist|doesn'?t exist/i.test(r)&&/[/~]/.test(r)?r:Bt:U(e)}const N=4;function Dt(){const{onboarding:o}=v();return o?o.hasLocalConfig?o.hasOperatorName?o.hasProjectConfig?o.needed===!0&&(!o.brokerReachable||!o.hasReadyRuntime)?t.jsx(T,{children:t.jsx(Ut,{step:4})}):null:t.jsx(T,{children:t.jsx(Wt,{step:3})}):t.jsx(T,{children:t.jsx(Ft,{step:2})}):t.jsx(T,{children:t.jsx(Lt,{step:1})}):null}function T({children:o}){return t.jsx("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",overflow:"auto",background:"var(--bg)",color:"var(--ink)"},children:t.jsx("div",{style:{width:"100%",maxWidth:720,padding:"80px 72px",display:"flex",flexDirection:"column",gap:40},children:o})})}function I({eyebrow:o,title:e,description:r}){return t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[t.jsx("div",{style:_t,children:o}),t.jsx("div",{style:Gt,children:e}),t.jsx("div",{style:$t,children:r})]})}function P({primary:o,onPrimary:e,primaryDisabled:r,busy:i}){const{skipOnboarding:s}=v();return t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10,paddingTop:8},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:24},children:[t.jsx("button",{type:"button",onClick:e,disabled:r||i,style:{...Yt,opacity:r||i?.5:1,cursor:r||i?"default":"pointer"},children:i?"Working…":o}),t.jsx("button",{type:"button",onClick:s,style:qt,onMouseEnter:m=>{m.currentTarget.style.color="rgba(255,255,255,0.8)"},onMouseLeave:m=>{m.currentTarget.style.color="rgba(255,255,255,0.45)"},children:"Set up later"})]}),t.jsx("div",{style:{fontSize:11,color:"rgba(255,255,255,0.35)",lineHeight:1.5},children:"Scout stays limited until setup finishes."})]})}function M({message:o}){return o?t.jsx("div",{style:{borderRadius:8,border:"1px solid rgba(239,68,68,0.35)",backgroundColor:"rgba(239,68,68,0.08)",color:"rgba(252,165,165,0.95)",padding:"12px 16px",fontSize:12,lineHeight:1.5},children:o}):null}function Lt({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),[i,s]=n.useState(!1),[m,a]=n.useState(null),l=async()=>{s(!0),a(null);try{await E("/api/onboarding/init",{method:"POST",body:"{}"}),await r()}catch(d){a(C("init",d))}finally{s(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(I,{eyebrow:`First-run setup · Step ${o} of ${N}`,title:"Welcome to Scout",description:t.jsxs(t.Fragment,{children:["Scout needs a local config before it can talk to the broker, the web app, and paired devices. This writes"," ",t.jsx("code",{style:F,children:"~/.openscout/config.json"})," with sensible defaults — you can edit it any time."]})}),t.jsxs("ul",{style:q,children:[t.jsx(w,{label:"Local config (~/.openscout/config.json)",done:!1,hint:"missing"}),t.jsx(w,{label:".openscout/project.json in a repo",done:!!e?.hasProjectConfig,hint:e?.hasProjectConfig?e.projectRoot??void 0:"checked after setup"})]}),t.jsx(M,{message:m}),t.jsx(P,{primary:"Initialize Scout",onPrimary:()=>{l()},busy:i})]})}function Ft({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),i=e?.operatorNameSuggestion??"",[s,m]=n.useState(i),[a,l]=n.useState(!1),[d,g]=n.useState(null);n.useEffect(()=>{!s&&i&&m(i)},[i,s]);const u=async()=>{const h=s.trim();if(!h){g("Name is required.");return}l(!0),g(null);try{await E("/api/user",{method:"POST",body:JSON.stringify({name:h})}),await r()}catch(j){g(C("identity",j))}finally{l(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(I,{eyebrow:`Identity · Step ${o} of ${N}`,title:"What should we call you?",description:"Your name shows up on messages you send and in any agent that speaks for you. You can change it later in Settings."}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[t.jsx("label",{style:O,children:"Your name"}),t.jsx("input",{autoFocus:!0,value:s,onChange:h=>{m(h.target.value),g(null)},onKeyDown:h=>{h.key==="Enter"&&u()},placeholder:i||"Operator",style:L}),i?t.jsx("div",{style:{fontSize:11,color:"rgba(255,255,255,0.4)",fontFamily:"var(--hud-font-mono)"},children:"Prefilled from your machine."}):null]}),t.jsx(M,{message:d}),t.jsx(P,{primary:"Continue",onPrimary:()=>{u()},busy:a,primaryDisabled:!s.trim()})]})}function Wt({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),i=e?.currentDirectory??"",s=i||"~/dev",[m,a]=n.useState([s]),[l,d]=n.useState(i),[g,u]=n.useState("claude"),[h,j]=n.useState(!1),[b,x]=n.useState(null),A=(p,c)=>{a(f=>f.map((k,z)=>z===p?c:k))},R=()=>a(p=>[...p,""]),y=p=>a(c=>c.filter((f,k)=>k!==p)),S=async()=>{const p=m.map(f=>f.trim()).filter(Boolean),c=l.trim();if(!c){x("Pick where Scout should anchor this context.");return}j(!0),x(null);try{await E("/api/onboarding/project",{method:"POST",body:JSON.stringify({contextRoot:c,sourceRoots:p,defaultHarness:g})}),await r()}catch(f){x(C("project",f))}finally{j(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(I,{eyebrow:`Project · Step ${o} of ${N}`,title:"Where do your repos live?",description:t.jsxs(t.Fragment,{children:["Scout scans these folders for projects and anchors this context at"," ",t.jsx("code",{style:F,children:"<context>/.openscout/project.json"}),"."]})}),t.jsxs("div",{style:B,children:[t.jsx("label",{style:O,children:"Scan folders"}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[m.map((p,c)=>t.jsxs("div",{style:{display:"flex",gap:8},children:[t.jsx("input",{value:p,onChange:f=>A(c,f.target.value),placeholder:c===0?s:"Add another folder",style:{...L,flex:1}}),t.jsx("button",{type:"button",onClick:()=>y(c),disabled:m.length<=1,style:{...G,opacity:m.length<=1?.4:1,cursor:m.length<=1?"default":"pointer"},"aria-label":`Remove folder ${c+1}`,children:"−"})]},c)),t.jsx("button",{type:"button",onClick:R,style:{...G,alignSelf:"flex-start"},children:"+ Add folder"})]})]}),t.jsxs("div",{style:B,children:[t.jsx("label",{style:O,children:"Context root"}),t.jsx("input",{value:l,onChange:p=>d(p.target.value),placeholder:s,style:L}),t.jsxs("div",{style:D,children:["Scout writes ",t.jsx("code",{style:F,children:".openscout/project.json"})," ","inside this folder."]}),t.jsx("div",{style:D,children:"Tip: ~ expands to your home folder."})]}),t.jsxs("div",{style:B,children:[t.jsx("label",{style:O,children:"Default harness"}),t.jsx("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:["claude","codex"].map(p=>{const c=g===p;return t.jsxs("button",{type:"button",onClick:()=>u(p),style:{...Jt,borderColor:c?"var(--accent, #2dd4bf)":"rgba(255,255,255,0.12)",backgroundColor:c?"rgba(45,212,191,0.08)":"rgba(255,255,255,0.02)"},children:[t.jsx("div",{style:{fontSize:15,fontWeight:600,textTransform:"capitalize"},children:p}),t.jsx("div",{style:{fontSize:12,color:"rgba(255,255,255,0.55)",marginTop:6,lineHeight:1.5},children:p==="claude"?"Anthropic Claude Code — local CLI agent.":"OpenAI Codex — cloud agentic sandbox."}),t.jsx("div",{style:{fontSize:11,fontFamily:"var(--hud-font-mono)",color:"rgba(255,255,255,0.4)",marginTop:8,lineHeight:1.5},children:p==="claude"?"Requires the Claude Code CLI, installed and signed in.":"Requires the Codex CLI, installed and signed in."})]},p)})}),t.jsx("div",{style:D,children:"Not installed yet? Pick one anyway — the final step checks and tells you what's missing."})]}),t.jsx(M,{message:b}),t.jsx(P,{primary:"Create project",onPrimary:()=>{S()},busy:h,primaryDisabled:!l.trim()})]})}function Ut({step:o}){const{onboarding:e,refreshOnboarding:r}=v(),[i,s]=n.useState(!1),[m,a]=n.useState(null),l=async()=>{s(!0),a(null);try{const d=await E("/api/onboarding/setup",{method:"POST",body:"{}"});await r(),d.brokerWarning?a(C("setup",d.brokerWarning)):d.hasReadyRuntime===!1&&a("Setup finished, but Scout didn't find a ready agent runtime. Install or sign in to a supported runtime, then choose Run setup again.")}catch(d){a(C("setup",d))}finally{s(!1)}};return t.jsxs(t.Fragment,{children:[t.jsx(I,{eyebrow:`Setup · Step ${o} of ${N}`,title:"Finish setup",description:"Scout will install its harness skills, start the local broker, refresh discovery, and check for a ready agent runtime."}),t.jsxs("ul",{style:q,children:[t.jsx(w,{label:".openscout/project.json",done:!!e?.hasProjectConfig,hint:e?.projectConfigPath??e?.projectRoot??void 0}),t.jsx(w,{label:"Broker reachable",done:!!e?.brokerReachable,hint:e?.brokerReachable?"connected":"starts when you run setup"}),t.jsx(w,{label:"Agent runtime",done:!!e?.hasReadyRuntime,hint:e?.hasReadyRuntime?"ready":"install or sign in to a supported runtime"})]}),t.jsx(M,{message:m}),t.jsx(P,{primary:"Run setup",onPrimary:()=>{l()},busy:i})]})}function w({label:o,done:e,hint:r}){return t.jsxs("li",{style:{display:"flex",alignItems:"flex-start",gap:16},children:[t.jsx("span",{style:{marginTop:2,width:20,height:20,borderRadius:999,display:"flex",alignItems:"center",justifyContent:"center",fontSize:11,fontWeight:700,flexShrink:0,backgroundColor:e?"rgba(34,197,94,0.15)":"rgba(255,255,255,0.07)",color:e?"#4ade80":"rgba(255,255,255,0.5)"},children:e?"✓":"•"}),t.jsxs("div",{style:{minWidth:0},children:[t.jsx("div",{style:{fontSize:13,lineHeight:1.5,color:e?"rgba(255,255,255,0.75)":"rgba(255,255,255,0.9)"},children:o}),r?t.jsx("div",{style:{fontSize:11,fontFamily:"var(--hud-font-mono)",color:"rgba(255,255,255,0.35)",marginTop:4,wordBreak:"break-all"},children:r}):null]})]})}const _t={fontSize:11,fontFamily:"var(--hud-font-mono)",textTransform:"uppercase",letterSpacing:"0.18em",color:"rgba(255,255,255,0.4)"},Gt={fontSize:36,fontWeight:600,letterSpacing:"-0.01em",lineHeight:1.15},$t={fontSize:15,lineHeight:1.75,color:"rgba(255,255,255,0.6)",maxWidth:580},B={display:"flex",flexDirection:"column",gap:10},O={fontSize:11,fontFamily:"var(--hud-font-mono)",textTransform:"uppercase",letterSpacing:"0.15em",color:"rgba(255,255,255,0.5)"},L={width:"100%",padding:"10px 14px",fontSize:14,fontFamily:"var(--hud-font-mono)",color:"rgba(255,255,255,0.92)",backgroundColor:"rgba(255,255,255,0.04)",border:"1px solid rgba(255,255,255,0.12)",borderRadius:8,outline:"none",boxSizing:"border-box"},D={fontSize:12,color:"rgba(255,255,255,0.45)",lineHeight:1.6},F={fontFamily:"var(--hud-font-mono)",fontSize:12,padding:"2px 6px",borderRadius:4,backgroundColor:"rgba(255,255,255,0.06)"},Yt={fontSize:13,fontWeight:600,padding:"12px 24px",borderRadius:10,backgroundColor:"var(--accent, #2dd4bf)",color:"#0b0d12",border:"none",transition:"opacity 0.15s ease"},G={fontSize:13,fontWeight:500,padding:"10px 14px",borderRadius:8,backgroundColor:"rgba(255,255,255,0.04)",border:"1px solid rgba(255,255,255,0.12)",color:"rgba(255,255,255,0.85)",transition:"all 0.15s ease"},qt={fontSize:12,color:"rgba(255,255,255,0.45)",textDecoration:"underline dotted rgba(255,255,255,0.25)",textUnderlineOffset:4,background:"none",border:"none",cursor:"pointer",padding:"4px 2px",transition:"color 0.15s ease"},q={display:"flex",flexDirection:"column",gap:20,margin:0,padding:0,listStyle:"none"},Jt={textAlign:"left",padding:"16px 18px",borderRadius:12,borderWidth:1,borderStyle:"solid",borderColor:"rgba(255,255,255,0.12)",color:"rgba(255,255,255,0.9)",cursor:"pointer",transition:"all 0.15s ease"},Kt=[{commandId:"nav:home",title:"Go to Home",description:"Navigate to the home overview showing queue, threads, signal, and activity",category:"navigation",keywords:["home","inbox","dashboard"],shortcut:"Cmd+1"},{commandId:"nav:agents",title:"Go to Agents",description:"Navigate to the agents roster showing all registered agents",category:"navigation",keywords:["agents","roster","list"],shortcut:"Cmd+2"},{commandId:"nav:messages",title:"Go to Chat",description:"Navigate to the unified chat surface backed by the normalized conversations service",category:"navigation",keywords:["conversations","comms","chat","threads","channels","channel","group","broadcast"],shortcut:"Cmd+3"},{commandId:"nav:sessions",title:"Open Sessions",description:"Navigate to the sessions list showing all active conversations",category:"navigation",keywords:["sessions","conversations","threads"]},{commandId:"nav:search",title:"Go to Search",description:"Navigate to the session knowledge search surface for extraction, search, and raw-log drilldown planning",category:"navigation",keywords:["search","knowledge","qmd","history"],shortcut:"Cmd+4"},{commandId:"nav:activity",title:"Open Activity",description:"Navigate to the activity feed showing recent events",category:"navigation",keywords:["activity","feed","events","log"]},{commandId:"nav:mesh",title:"Open Network",description:"Navigate to the mesh network view showing nodes and topology",category:"navigation",keywords:["mesh","network","nodes","peers","topology"]},{commandId:"nav:dispatch",title:"Open Dispatch",description:"Navigate to the dispatch ledger for routing, delivery attempts, and failed queries",category:"navigation",keywords:["dispatch","broker","routing","delivery","messages"]},{commandId:"nav:repos",title:"Open Repositories",description:"Navigate to the repos view for branches, diffs, and working-tree state",category:"navigation",keywords:["repos","repositories","git","branches","diffs"]},{commandId:"nav:harnesses",title:"Open Providers",description:"Open the central view for providers, harnesses, observed topology, and budget feeds",category:"navigation",keywords:["provider","providers","harness","harnesses","claude","codex","budget","usage","topology"]},{commandId:"nav:ops",title:"Go to Ops",description:"Navigate to the operator workspace for dispatch, mesh, tail, runtime, alerts, and agent operations",category:"navigation",keywords:["ops","operator","control","tail","runtime","services","atop","dispatch","mesh"],shortcut:"Cmd+5"},{commandId:"nav:ops-atop",title:"Open Runtime",description:"Open the live agent/process view with observed harness families",category:"navigation",keywords:["runtime","services","atop","process","session","agent","topology"]},{commandId:"nav:settings",title:"Open Settings",description:"Open the settings screen for pairing, identity, and relay config",category:"settings",keywords:["settings","preferences","config","pair"],shortcut:"Cmd+,"},{commandId:"nav:agent-config",title:"Open Agent Configuration",description:"Open the unified agent configuration surface for runtimes, agents, tools, delivery, and broker state",category:"settings",keywords:["agent config","runtimes","providers","mcp","tools"]},{commandId:"nav:pair",title:"Pair Device",description:"Open the device pairing flow to connect a mobile device",category:"settings",keywords:["pair","qr","device","phone","mobile"]},{commandId:"scout:reload",title:"Reload Agents",description:"Refresh the agent list and message state from the broker",category:"workspace",keywords:["reload","refresh","sync"]},{commandId:"scout:open:*",title:"Open Agent",description:"Open the agent's view (runtime, sessions, inspector) for one specific agent.",category:"navigation",keywords:["open","agent","view","inspect"],params:[{name:"agentId",description:"The agent identifier to open",type:"string"}]},{commandId:"scout:message:*",title:"Message Agent",description:"Open the DM conversation for one specific agent to message them. One agent maps to a DM; group work belongs in an explicit channel and broadcasts belong in the shared channel.",category:"workspace",keywords:["message","chat","conversation","dm","tell","ask","reply"],params:[{name:"agentId",description:"The agent identifier to message",type:"string"}]}];function Vt(o={}){const{initialTheme:e="dark"}=o,r=Q();return{id:"openscout",name:"Scout",description:"All your agents, one message away. Scout is a control plane for managing coding agents: Send posts into a Chat, direct agent messages create or steer Runs, and shared work stays in explicit channels.",mode:"panel",icon:n.createElement("svg",{width:14,height:14,viewBox:"0 0 20 20",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":!0},n.createElement("polygon",{points:"10,4.3 14.8,7.1 14.8,12.9 10,15.7 5.2,12.9 5.2,7.1",strokeWidth:1.9}),n.createElement("polygon",{points:"10,7 12.4,8.4 12.4,10.6 10,12 7.6,10.6 7.6,8.4",strokeWidth:1.32,opacity:.74})),Provider:({children:i})=>n.createElement(bt,{defaultTheme:e,defaultTemplate:r,storageKey:X,children:n.createElement(Z,{initialTheme:e,children:i})}),leftPanel:{title:"Navigation"},rightPanel:{title:"Context"},slots:{Content:xt,LeftPanel:Nt,Inspector:wt,Takeover:Dt,Terminal:It},intents:Kt,hooks:{useCommands:vt,useStatus:yt,useNavCenter:ft,useNavActions:ht,useLayoutMode:gt,useTakeover:ut}}}Vt();export{Vt as createScoutApp};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as d,j as i}from"./index-DReVb7jZ.js";import{u as wt,l as xt}from"./use-conversation-list-D5EnpVba.js";import{a as It}from"./api-DSqpVKC7.js";/* empty css */import{m as Ct,c as yt,i as jt}from"./machine-scope-DJt9RZ2w.js";import{a as At,b as Rt,m as St,r as ze}from"./keyboard-nav-CJXPaHXj.js";import{n as we,f as Ge}from"./agent-state-DDhnFEEP.js";import{e as kt,c as F,i as _e,d as Me,a as Xe,f as Mt}from"./conversations-Cbg9h_Af.js";import{l as Nt,i as K,a as _,p as Fe,t as $t,b as Lt}from"./conversation-prefs-DNre-Lcx.js";import{i as Pt,l as Bt,s as De}from"./sessionRead-CvFz2RHv.js";import{u as Tt,f as be,b as Ot}from"./use-fleet-active-asks-D_QOmjg5.js";import{p as Et,N as Ke,g as Ut,t as Gt}from"./sessions-view-Bge4XZ4I.js";import{u as _t,a as Ft}from"./Provider-CNZluAZb.js";import{u as Dt}from"./use-beside-D3cJpA5p.js";import{t as re}from"./time-Dhsh_2EG.js";import{d as Kt}from"./router-C-MF5-mb.js";import{c as Ze}from"./message-visibility-DwxgcgYK.js";import{R as Ne}from"./RailRow-DUPqXMZh.js";import{a as Ve,c as qe}from"./agent-master-model-C-KdOFDK.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./provider-DwmCoSlc.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./comms-deck-CBhsXnY-.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";function ve(e){const n=e.split("/").filter(Boolean);return n[n.length-1]??e}function et(e){const n=e.replace(/\/+$/,"").split("/");return n[n.length-1]??e}function Vt(e,n){const s=ve(n).toLowerCase(),r=e.filter(m=>!!m.projectRoot),u=r.filter(m=>et(m.projectRoot).toLowerCase()===s),c=u.length>0?u:r,a=qt(c);return a?{label:(u.length>0?c.find(m=>m.projectRoot===a):[...c].sort((m,f)=>f.lastActivityAt-m.lastActivityAt)[0])?.project??ve(n),canonicalRoot:a}:{label:ve(n),canonicalRoot:null}}function qt(e){const n=new Map;for(const c of e){const a=n.get(c.projectRoot)??{count:0,latest:0};a.count+=1,a.latest=Math.max(a.latest,c.lastActivityAt),n.set(c.projectRoot,a)}let s=null,r=-1,u=-1;for(const[c,a]of n)(a.count>r||a.count===r&&a.latest>u)&&(s=c,r=a.count,u=a.latest);return s}function Qt(e,n,s,r){const u=new Map;for(const a of e){const v=kt(a),m=a.agentId?n.get(a.agentId):void 0,f=m?.repoKey??null,g=m?.project??null,N=(a.agentName??F(a)).trim(),b=v?`channel:${a.id}`:f?`repo:${f.toLowerCase()}`:g?`project:${g.toLowerCase()}`:N?`name:${N.toLowerCase()}`:`dm:${a.id}`,j=v?F(a):f?ve(f):g??N??F(a);let w=u.get(b);if(w||(w={key:b,label:j,isChannel:v,conversations:[],bestState:"blocked",latestUpdate:0,unreadCount:0,canonicalRoot:null},u.set(b,w)),w.conversations.push(a),w.latestUpdate=Math.max(w.latestUpdate,a.lastMessageAt??0),Pt(a.lastMessageAt,a.id,s)&&(w.unreadCount+=1),!v&&m){const S=we(m.state);Ge(S)<Ge(w.bestState)&&(w.bestState=S)}}for(const a of u.values()){if(a.key.startsWith("repo:")){const v=a.conversations.map(f=>{const g=f.agentId?n.get(f.agentId):void 0;return{project:g?.project??null,projectRoot:g?.projectRoot??null,lastActivityAt:f.lastMessageAt??0}}),m=Vt(v,a.key.slice(5));a.label=m.label,a.canonicalRoot=m.canonicalRoot}a.conversations.sort((v,m)=>(m.lastMessageAt??0)-(v.lastMessageAt??0))}const c=Array.from(u.values());return c.sort((a,v)=>v.latestUpdate-a.latestUpdate),c}const tt="scout:messages:rail:v2",ge={view:"sessions",groupBy:"recent"};let Se=null;function Ht(e){return e==="agents"||e==="sessions"}function Jt(e){return e==="recent"||e==="project"||e==="agent"||e==="day"||e==="state"}function Yt(){if(Se)return Se;try{const e=window.localStorage.getItem(tt);if(!e)return{...ge};const n=JSON.parse(e);return{view:Ht(n.view)?n.view:ge.view,groupBy:Jt(n.groupBy)?n.groupBy:ge.groupBy}}catch{return{...ge}}}function Qe(e){try{window.localStorage.setItem(tt,JSON.stringify(e))}catch{Se=e}return e}const Wt=12,zt=[["recent","Recent"],["project","Project"],["agent","Agent"],["day","Day"],["state","State"]];function co(){const{route:e,navigate:n,agents:s,apiConnection:r}=_t(),{sessions:u,loading:c,loadError:a,reload:v}=wt(),[m,f]=d.useState(()=>Bt()),[g,N]=d.useState(()=>Nt()),[b,j]=d.useState(""),[w,S]=d.useState(()=>new Set),[V,l]=d.useState(!1),[x,q]=d.useState(!1),[X,Z]=d.useState(!1),[B,Q]=d.useState(()=>Yt()),C=B.view,H=d.useCallback(t=>{Q(o=>Qe({...o,view:t}))},[]),it=d.useCallback(t=>{Q(o=>Qe({...o,groupBy:t}))},[]),M=Tt(),A=Kt(e),ee=d.useMemo(()=>Ct(s,A),[s,A]),R=d.useMemo(()=>{const t=new Map,o=ee?s.filter(p=>ee.has(p.id)):s;for(const p of o)t.set(p.id,p);return t},[s,ee]),xe=e.view==="messages"||e.view==="conversation"||e.view==="agent-info"||e.view==="agents-v2"?e.conversationId:void 0,te=e.view==="messages"?e.agentId:void 0;d.useEffect(()=>{q(!1)},[b]);const ne=d.useMemo(()=>yt(u,ee,A),[u,ee,A]),Ie=d.useMemo(()=>b?ne.filter(t=>He(t,b)):ne,[ne,b]),oe=d.useMemo(()=>{const t=o=>be(M,o)?.updatedAt??0;return ne.filter(o=>K(o.id,g)||!_e(o)?!1:be(M,o)?.status==="needs_attention").sort((o,p)=>t(p)-t(o))},[ne,g,M]),se=d.useMemo(()=>b?oe.filter(t=>He(t,b)):oe,[oe,b]),I=d.useMemo(()=>{const t=Ie.filter(k=>!K(k.id,g)),o=he(Ie.filter(k=>K(k.id,g))),p=t.filter(k=>_(k.id,g)).sort((k,z)=>Fe(z.id,g)-Fe(k.id,g)||(z.lastMessageAt??0)-(k.lastMessageAt??0)),W=t.filter(k=>!_(k.id,g)),h=W.filter(Me),y=W.filter(_e),L=W.filter(Xe);return{pinned:p,channels:he(h),dms:he(y),observed:he(L),archived:o}},[Ie,R,m,g]),$=d.useMemo(()=>{const t=new Map,o=[];for(const h of I.dms){if(!h.agentId){o.push(h);continue}const y=R.get(h.agentId),L=Ve(y,h.agentId),k=y?[...R.values()].filter(E=>Ve(E,E.id)===L):[],z=qe(k)??y,ft=z?.name??h.agentName??h.agentId.split(".")[0]??h.agentId,P=t.get(L);if(P){P.count+=1,P.memberAgentIds.includes(h.agentId)||P.memberAgentIds.push(h.agentId);const E=qe([P.agent,y].filter(bt=>!!bt));P.agent=E,P.agentId=E?.id??[...P.memberAgentIds].sort()[0],P.name=E?.name??P.name;continue}t.set(L,{agentId:z?.id??h.agentId,agent:z,name:ft,memberAgentIds:k.length>0?k.map(E=>E.id).sort():[h.agentId],latest:h,count:1})}const p=new Map;for(const h of t.values()){const y=Et(h.agent),L=p.get(y);L?L.push(h):p.set(y,[h])}for(const h of p.values())h.sort((y,L)=>y.name.localeCompare(L.name));return{projects:[...p.keys()].sort((h,y)=>h===Ke?1:y===Ke?-1:h.localeCompare(y)).map(h=>({label:h,entries:p.get(h)})),unassigned:o}},[I.dms,R]),J=C==="sessions"&&B.groupBy==="recent",ce=d.useMemo(()=>J?[]:I.channels,[J,I.channels]),Y=d.useMemo(()=>J?[]:Qt(I.observed,R,m),[J,I.observed,R,m]),le=d.useMemo(()=>{if(C!=="sessions")return[];const t=J?[...I.dms,...I.channels,...I.observed]:I.dms;return Ut(t,B.groupBy,R,M,Date.now())},[C,J,I.dms,I.channels,I.observed,B.groupBy,R,M]),Le=Ft(),de=d.useCallback(t=>{N(o=>$t(t,o))},[]),ue=d.useCallback(t=>{N(o=>Lt(t,o))},[]),Ce=Xt(),ae=Dt(),T=d.useCallback(t=>{f(De(t.id)),n({view:"messages",conversationId:t.id,...A?{machineId:A}:{}})},[n,A]),rt=d.useCallback(t=>{n({view:"messages",agentId:t,...A?{machineId:A}:{}})},[n,A]),ct=d.useCallback(t=>{if(f(De(t.id)),t.agentId){n({view:"messages",agentId:t.agentId,threadId:t.id,...A?{machineId:A}:{}});return}n({view:"messages",conversationId:t.id,...A?{machineId:A}:{}})},[n,A]),D=d.useCallback((t,o)=>{const p=_(o.id,g),W=K(o.id,g),h=F(o),y=[{kind:"action",label:"Open",onSelect:()=>T(o)},{kind:"action",label:ae.has(o.id)?"Close beside the stage":"Open beside the stage",onSelect:()=>ae.toggle(o.id)},{kind:"separator"},{kind:"action",label:p?"Unpin":"Pin to top",onSelect:()=>de(o.id)},{kind:"action",label:W?"Unarchive":"Archive",onSelect:()=>ue(o.id)},{kind:"separator"},{kind:"action",label:"Rename…",onSelect:()=>Ce.begin(o.id)},{kind:"action",label:"Copy name",onSelect:()=>{navigator.clipboard?.writeText(h).catch(()=>{})}}];Le(t,y)},[g,T,de,ue,Le,Ce,ae]),lt=t=>{S(o=>{const p=new Set(o);return p.has(t)?p.delete(t):p.add(t),p})},dt=r.status==="offline"||jt(a),Pe=d.useRef(null),Be=d.useRef(null),ut=At(),pt=St(()=>Pe.current);Rt(d.useCallback(()=>Be.current,[]));const ye=I.pinned.length,je=ce.length,mt=C==="agents"?$.projects.reduce((t,o)=>t+o.entries.length,0)+$.unassigned.length:le.reduce((t,o)=>t+o.sessions.length,0),Ae=Y.reduce((t,o)=>t+o.conversations.length,0),pe=I.archived.length,Te=ye+je+mt+Ae+pe,gt=V||!!b,Re=d.useMemo(()=>{const t=[];for(const o of se)t.push({rowId:`ny-${o.id}`,id:o.id});for(const o of I.pinned)t.push({rowId:`pin-${o.id}`,id:o.id});if(C==="agents"){for(const o of $.projects)for(const p of o.entries)t.push({rowId:`agent-${p.agentId}`,id:`agent-${p.agentId}`});for(const o of $.unassigned)t.push({rowId:o.id,id:o.id})}else for(const o of le)for(const p of o.sessions)t.push({rowId:p.id,id:p.id});for(const o of ce)t.push({rowId:o.id,id:o.id});for(const o of Y)for(const p of o.conversations)t.push({rowId:p.id,id:p.id});for(const o of I.archived)t.push({rowId:`arch-${o.id}`,id:o.id});return t},[se,I,C,$,le,ce,Y]),ht=e.view==="messages"?e.threadId:void 0,Oe=d.useMemo(()=>{if(te){for(const t of $.projects)for(const o of t.entries)if(o.agentId===te||o.memberAgentIds.includes(te))return o.agentId;return te}},[te,$]),me=xe??(C==="sessions"?ht:void 0)??(Oe?`agent-${Oe}`:void 0),O=d.useMemo(()=>({activeId:me,activeRowId:me?Re.find(t=>t.id===me)?.rowId:void 0,firstRowId:Re[0]?.rowId}),[me,Re]),Ee=x||b?Y:Y.slice(0,Wt),Ue=Math.max(0,Y.length-Ee.length),vt=t=>!!(b||w.has(t.key)||xe&&t.conversations.some(o=>o.id===xe)),ie=t=>i.jsx(ke,{pinned:_(t.id,g),archived:K(t.id,g),beside:ae.has(t.id),onTogglePin:()=>de(t.id),onToggleArchive:()=>ue(t.id),onToggleBeside:()=>ae.toggle(t.id)});return i.jsx(nt.Provider,{value:Ce,children:i.jsxs("div",{className:"ctx-panel",children:[i.jsxs("div",{className:"ctx-panel-toolbar",children:[i.jsx("input",{ref:Be,type:"text",className:"ctx-panel-search-input",placeholder:"Filter… (/)",value:b,onChange:t=>j(t.target.value),onKeyDown:pt}),oe.length>0&&i.jsx("span",{className:"ctx-panel-rail-stat",title:"Asks waiting on your reply",children:nn(oe.length)})]}),i.jsxs("div",{className:"ctx-panel-viewtoggle",role:"tablist","aria-label":"Rail view",children:[i.jsx("button",{type:"button",role:"tab","aria-selected":C==="agents",className:`ctx-panel-viewtab${C==="agents"?" ctx-panel-viewtab--on":""}`,onClick:()=>H("agents"),children:"Agents"}),i.jsx("button",{type:"button",role:"tab","aria-selected":C==="sessions",className:`ctx-panel-viewtab${C==="sessions"?" ctx-panel-viewtab--on":""}`,onClick:()=>H("sessions"),children:"Sessions"})]}),i.jsx("div",{ref:Pe,className:["ctx-panel-list","ctx-panel-list--scroll",Te===0&&"ctx-panel-list--empty"].filter(Boolean).join(" "),onKeyDown:ut,children:Te===0?i.jsx(tn,{query:b,loading:c,error:a,apiOffline:dt,onRetry:()=>{v(!0)}}):i.jsxs(i.Fragment,{children:[se.length>0&&i.jsx(U,{label:"Needs you",count:se.length,hint:"Asks waiting on your reply",children:se.map(t=>i.jsx(G,{rowId:`ny-${t.id}`,session:t,nav:O,agentById:R,asksByAgent:M,onSelect:T,onContextMenu:D},`ny-${t.id}`))}),ye>0&&i.jsx(U,{label:"Pinned",count:ye,hint:"Pinned conversations",children:I.pinned.map(t=>i.jsx(G,{rowId:`pin-${t.id}`,session:t,nav:O,agentById:R,asksByAgent:M,pinned:!0,actions:ie(t),onSelect:T,onContextMenu:D},`pin-${t.id}`))}),C==="agents"&&$.projects.map(t=>i.jsx(U,{label:t.label,count:t.entries.length,children:t.entries.map(o=>i.jsx(Zt,{entry:o,nav:O,ask:Ot(M,o.memberAgentIds),onSelect:rt},o.agentId))},t.label)),C==="agents"&&$.unassigned.length>0&&i.jsx(U,{label:"Direct",count:$.unassigned.length,hint:"Conversations without a resolved agent",children:$.unassigned.map(t=>i.jsx(G,{rowId:t.id,session:t,nav:O,agentById:R,asksByAgent:M,actions:ie(t),onSelect:T,onContextMenu:D},t.id))}),C==="sessions"&&i.jsxs("div",{className:"ctx-panel-groupbar",role:"radiogroup","aria-label":"Order the queue by",children:[i.jsx("span",{className:"ctx-panel-groupbar-label",children:"Order"}),zt.map(([t,o])=>i.jsx("button",{type:"button",role:"radio","aria-checked":B.groupBy===t,className:`ctx-panel-groupchip${B.groupBy===t?" ctx-panel-groupchip--on":""}`,onClick:()=>it(t),children:o},t))]}),C==="sessions"&&le.map(t=>i.jsx(U,{label:t.label,count:t.sessions.length,children:t.sessions.map(o=>i.jsx(G,{rowId:o.id,session:o,nav:O,agentById:R,asksByAgent:M,taskTitled:!0,actions:ie(o),onSelect:ct,onContextMenu:D},o.id))},t.label)),je>0&&i.jsx(U,{label:"Channels",count:je,children:ce.map(t=>i.jsx(G,{rowId:t.id,session:t,nav:O,agentById:R,asksByAgent:M,actions:ie(t),onSelect:T,onContextMenu:D},t.id))}),Ae>0&&i.jsxs(U,{label:"Observed",count:Ae,hint:"Agent conversations you’re not in",open:gt,onToggle:()=>l(t=>!t),children:[Ee.map(t=>i.jsx(en,{group:t,isOpen:vt(t),nav:O,agentById:R,asksByAgent:M,prefs:g,observed:!0,onToggle:()=>lt(t.key),onSelect:T,onTogglePin:de,onToggleArchive:ue,onContextMenu:D},t.key)),Ue>0?i.jsxs("button",{type:"button",className:"ctx-panel-more",onClick:()=>q(!0),children:["+ ",Ue," more observed"]}):null]}),pe>0&&i.jsxs(U,{label:"Archived",count:pe,hint:"Hidden from the main rail",children:[i.jsx("button",{type:"button",className:"ctx-panel-more",onClick:()=>Z(t=>!t),children:X?"▾ hide archived":`› show ${pe} archived`}),X?I.archived.map(t=>i.jsx(G,{rowId:`arch-${t.id}`,session:t,nav:O,agentById:R,asksByAgent:M,actions:ie(t),onSelect:T,onContextMenu:D},`arch-${t.id}`)):null]})]})})]})})}const nt=d.createContext(null);function Xt(){const[e,n]=d.useState(null),[s,r]=d.useState({}),u=d.useCallback((c,a)=>{n(null);const v=a.trim();r(m=>({...m,[c]:v})),It(`/api/conversations/${encodeURIComponent(c)}/title`,{method:"POST",body:JSON.stringify({title:v})}).then(()=>xt({force:!0})).catch(()=>{}).then(()=>{r(m=>{const{[c]:f,...g}=m;return g})})},[]);return{editingId:e,renamed:s,begin:d.useCallback(c=>n(c),[]),commit:u,cancel:d.useCallback(()=>n(null),[])}}function U({label:e,count:n,hint:s,open:r,onToggle:u,children:c}){return u?i.jsxs("section",{className:"ctx-panel-rail-section","aria-label":e,children:[i.jsxs("button",{type:"button",className:"ctx-panel-section-label ctx-panel-section-toggle",title:s,"aria-expanded":!!r,onClick:u,children:[i.jsxs("span",{className:"ctx-panel-section-toggle-label",children:[i.jsx("span",{className:"ctx-panel-section-chevron","aria-hidden":!0,children:r?"▾":"▸"}),e]}),i.jsx("span",{className:"ctx-panel-count",children:n})]}),r?i.jsx("div",{className:"ctx-panel-rail-section-body",children:c}):null]}):i.jsxs("section",{className:"ctx-panel-rail-section","aria-label":e,children:[i.jsxs("div",{className:"ctx-panel-section-label",title:s,children:[i.jsx("span",{children:e}),i.jsx("span",{className:"ctx-panel-count",children:n})]}),i.jsx("div",{className:"ctx-panel-rail-section-body",children:c})]})}function ke({pinned:e,archived:n,beside:s,onTogglePin:r,onToggleArchive:u,onToggleBeside:c}){return i.jsxs(i.Fragment,{children:[c?i.jsx("button",{type:"button",className:["rr-row-action",s&&"rr-row-action--on"].filter(Boolean).join(" "),title:s?"Close the column beside the stage":"Keep this conversation beside the stage","aria-label":s?"Close beside":"Open beside","aria-pressed":s,onClick:a=>{a.stopPropagation(),c()},children:"Beside"}):null,i.jsx("button",{type:"button",className:["rr-row-action",e&&"rr-row-action--on"].filter(Boolean).join(" "),title:e?"Unpin":"Pin to top","aria-label":e?"Unpin":"Pin",onClick:a=>{a.stopPropagation(),r()},children:e?"Unpin":"Pin"}),i.jsx("button",{type:"button",className:["rr-row-action",n&&"rr-row-action--on"].filter(Boolean).join(" "),title:n?"Unarchive":"Archive","aria-label":n?"Unarchive":"Archive",onClick:a=>{a.stopPropagation(),u()},children:n?"Restore":"Archive"})]})}function G({session:e,rowId:n,nav:s,agentById:r,asksByAgent:u,pinned:c,depth:a,actions:v,worktreeLabel:m,taskTitled:f,onSelect:g,onContextMenu:N}){const b=e.id===s.activeId,j=d.useContext(nt),w=j?.renamed[e.id]??(f?Gt(e):F(e)),S=Me(e),V=Xe(e),l=e.agentId?r.get(e.agentId):void 0,x=be(u,e),q=!S&&!V&&x?.status==="needs_attention",X=Ye(e,l),Z=l?.name??e.agentName??void 0,B=S?`${e.participantCount??e.participantIds.length} members`:f?Z?.toLowerCase()===w.toLowerCase()?void 0:Z:X.toLowerCase()===w.toLowerCase()?void 0:X,Q=!S&&!f&&x?at(e,l,x):B,C=V?Q?`watching · ${Q}`:"watching":Q;return i.jsx(Ne,{depth:a,name:a===1?Je(e,l,x):w,sub:a===1?Ye(e,l):C,meta:x?re(x.updatedAt):e.lastMessageAt?re(e.lastMessageAt):void 0,tone:S?"channel":x?st(l,x):l?we(l.state):"dm",agent:S?void 0:l,avatarName:a===1?l?.name??Je(e,l,x):f?Z??w:w,avatarKind:S?"channel":"user",active:b,unread:q,pinned:c,activityLabel:x?$e(x):void 0,activityTone:x?ot(x):void 0,worktreeLabel:m??void 0,title:a===1?on(e,l,x):void 0,actions:j?.editingId===e.id?void 0:v,editing:j&&j.editingId===e.id?{value:w,onCommit:H=>j.commit(e.id,H),onCancel:j.cancel}:void 0,tabIndex:ze(n===s.activeRowId,s.activeRowId!==void 0,n===s.firstRowId),onClick:()=>g(e),onContextMenu:N?H=>N(H,e):void 0})}function Zt({entry:e,nav:n,ask:s,onSelect:r}){const u=`agent-${e.agentId}`,c=e.agent,a=s?re(s.updatedAt):e.latest.lastMessageAt?re(e.latest.lastMessageAt):void 0;return i.jsx(Ne,{name:e.name,sub:s?at(e.latest,c,s):void 0,meta:e.count>1?a?`${e.count} · ${a}`:`${e.count}`:a,tone:s?st(c,s):c?we(c.state):"dm",agent:c,avatarName:e.name,avatarKind:"user",active:u===n.activeId,unread:s?.status==="needs_attention",activityLabel:s?$e(s):void 0,activityTone:s?ot(s):void 0,tabIndex:ze(u===n.activeRowId,n.activeRowId!==void 0,u===n.firstRowId),onClick:()=>r(e.agentId)})}function en({group:e,isOpen:n,nav:s,agentById:r,asksByAgent:u,prefs:c,observed:a,onToggle:v,onSelect:m,onTogglePin:f,onToggleArchive:g,onContextMenu:N}){if(e.conversations.length===1){const l=e.conversations[0];return i.jsx(G,{rowId:l.id,session:l,nav:s,agentById:r,asksByAgent:u,pinned:_(l.id,c),actions:i.jsx(ke,{pinned:_(l.id,c),archived:K(l.id,c),onTogglePin:()=>f(l.id),onToggleArchive:()=>g(l.id)}),onSelect:m,onContextMenu:N})}const b=e.conversations.map(l=>be(u,l)).filter(l=>!!l),j=b.length,w=b.filter(l=>l.status==="working").length,S=b.filter(l=>l.status==="needs_attention").length,V=e.conversations.some(l=>l.id===s.activeId);return i.jsxs("div",{children:[i.jsx(Ne,{name:e.label,meta:j>0?`${j} active · ${We(e)}`:We(e),tone:w>0?"in_turn":e.bestState,caret:n?"open":"closed",active:V&&!n,unread:!a&&S>0&&!n,activityLabel:j>0?`${j} active`:void 0,activityTone:S>0?"attention":w>0?"working":"pending",onClick:v}),n&&e.conversations.map(l=>{const x=l.agentId?r.get(l.agentId):void 0,q=e.canonicalRoot&&x?.projectRoot&&x.projectRoot!==e.canonicalRoot?et(x.projectRoot):null;return i.jsx(G,{rowId:l.id,session:l,depth:1,nav:s,agentById:r,asksByAgent:u,pinned:_(l.id,c),worktreeLabel:q,actions:i.jsx(ke,{pinned:_(l.id,c),archived:K(l.id,c),onTogglePin:()=>f(l.id),onToggleArchive:()=>g(l.id)}),onSelect:m,onContextMenu:N},l.id)})]},e.key)}function tn({query:e,loading:n,error:s,apiOffline:r,onRetry:u}){const c=e.trim().length>0,a=n?"Loading conversations":r?"Scout server offline":s?"Couldn't load conversations":c?"No matching conversations":"No conversations yet",v=n?"Checking the broker for your conversations, channels, and observed threads.":r?"Start or restart Scout services, then retry.":s||(c?"Try a shorter filter.":"Your conversations, channels, and observed agent threads will show here.");return i.jsxs("div",{className:"ctx-panel-empty-card","data-tone":r||s?"error":"neutral",children:[i.jsx("div",{className:"ctx-panel-empty-card-title",children:a}),i.jsx("div",{className:"ctx-panel-empty-card-detail",children:v}),(r||s)&&i.jsx("button",{type:"button",className:"ctx-panel-empty-card-action",onClick:u,children:"Retry"})]})}function He(e,n){const s=n.toLowerCase();return F(e).toLowerCase().includes(s)||e.id.toLowerCase().includes(s)||(e.preview??"").toLowerCase().includes(s)||(e.agentName??"").toLowerCase().includes(s)}function nn(e){return e===1?"1 needs a reply":`${e} need a reply`}function $e(e){return e.status==="queued"?"Starting":e.status==="working"?"Working":e.status==="needs_attention"?"Needs you":e.statusLabel||e.status}function ot(e){return e.status==="queued"?"pending":e.status==="needs_attention"?"attention":"working"}function st(e,n){return n.status==="working"?"in_turn":e?we(e.state):"dm"}function at(e,n,s){const r=$e(s),u=fe(s.task)??fe(s.summary)??fe(e.preview)??e.currentBranch??n?.branch??"";return u?`${r} · ${u}`:r}function he(e){return[...e].sort((n,s)=>(s.lastMessageAt??0)-(n.lastMessageAt??0))}function Je(e,n,s){const r=s?.task??fe(e.preview)??e.currentBranch??n?.branch??"",u=n?.name??e.agentName??F(e);return r?`${u} · ${r}`:u}function on(e,n,s){const r=[];return s&&r.push(`task: ${s.task}`),e.preview&&r.push(`preview: ${Ze(e.preview)}`),(e.currentBranch??n?.branch)&&r.push(`branch: ${e.currentBranch??n?.branch}`),n?.harness&&r.push(`harness: ${n.harness}`),r.length>0?r.join(`
|
|
2
|
-
`):void 0}function Ye(e,n){if(Me(e))return Mt(e);const s=n?.handle?.trim().replace(/^@+/,"");return s||(e.agentId?e.agentId.split(".")[0]??e.agentId:F(e))}function fe(e){if(!e)return null;const n=Ze(e).replace(/\s+/g," ").trim();return n?n.length>60?`${n.slice(0,57)}…`:n:null}function We(e){const n=e.latestUpdate?re(e.latestUpdate):"",s=`${e.conversations.length}`;return n?`${s} · ${n}`:s}export{co as ChatLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r,j as t}from"./index-DReVb7jZ.js";/* empty css */import{d as w,c as S,e as y,f as M,g as A,i as N}from"./NewChatComposer-BEXS8vV6.js";import{u as k}from"./Provider-CNZluAZb.js";import{A as b}from"./AgentAvatar-NZOqcsB2.js";import{a as g}from"./api-DSqpVKC7.js";import{b as I}from"./machine-scope-DJt9RZ2w.js";import{d as C}from"./router-C-MF5-mb.js";import{a as B}from"./sse-A8AyLH0g.js";import{o as P,i as j}from"./surface-activity-B1rgWB1i.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./agent-state-DDhnFEEP.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./provider-DwmCoSlc.js";import"./scoutbot-Bk3nyrkj.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./index-BWHgHrtv.js";function W(){const{agents:n,route:d}=k(),m=C(d),l=r.useMemo(()=>I(n,m),[n,m]),[p,f]=r.useState([]),[v,s]=r.useState(null),[a,u]=r.useState(null),c=r.useCallback(async()=>{const[e,i,o]=await Promise.allSettled([g("/api/conversations"),g("/api/fleet"),g("/api/tail/discover")]);e.status==="fulfilled"&&f(e.value),i.status==="fulfilled"&&s(i.value),o.status==="fulfilled"&&u(o.value)},[]);r.useEffect(()=>{c()},[c]),r.useEffect(()=>{const e=()=>{j()&&c()},i=window.setInterval(e,1e4),o=P(e);return()=>{window.clearInterval(i),o()}},[c]),B(()=>!0,()=>{j()&&c()});const x=r.useMemo(()=>{const e=new Map;for(const i of v?.activeAsks??[]){const o=e.get(i.agentId)??[];o.push(i),e.set(i.agentId,o)}return e},[v?.activeAsks]);return{projects:r.useMemo(()=>{const{sessionByAgentId:e}=w(p),i=l.map(h=>S(h,e.get(h.id)??null,x.get(h.id)??[])),o=y(a,Date.now());return M(i,p,o)},[l,p,x,a])}}function Bt(){const{route:n,navigate:d,openContextCapture:m}=k(),{projects:l}=W(),p=n.view==="agents-v2"?n.projectSlug:void 0,f=n.view==="agents-v2"?n.agentId:void 0,v=p??l[0]?.slice.slug;return t.jsxs("div",{className:"ctx-panel s-agents-rail",children:[t.jsx("div",{className:"s-agents-recent s-rail-projects",children:l.length===0?t.jsx("div",{className:"ctx-panel-empty",children:"No projects yet"}):l.map(s=>{const a=A(s),u=N(s),c=s.slice.slug===v&&!f;return t.jsxs("button",{type:"button",className:"s-rail-proj","data-selected":c||void 0,"data-live":a>0||void 0,"data-needs":u||void 0,title:s.slice.root??void 0,onClick:()=>d({view:"agents-v2",projectSlug:s.slice.slug}),children:[t.jsx(b,{name:s.slice.title,size:22,tile:!0,presence:!1}),t.jsxs("span",{className:"s-rail-proj-name","data-idle":a===0||void 0,children:[t.jsx("span",{"aria-hidden":!0,style:{opacity:.4},children:"/"}),s.slice.title]}),a>0?t.jsx("span",{className:"s-rail-proj-count","data-needs":u||void 0,title:u?"needs you":void 0,children:a}):null]},s.slice.key)})}),t.jsxs("div",{className:"s-agents-foot s-rail-foot-icons",children:[t.jsx("button",{type:"button",className:"s-rail-icon",title:"Search","aria-label":"Search",onClick:()=>d({view:"search"}),children:t.jsx(E,{})}),t.jsx("button",{type:"button",className:"s-rail-icon",title:"New chat (⌘⌥N)","aria-label":"New chat",onClick:()=>m(),children:t.jsx(L,{})}),t.jsx("button",{type:"button",className:"s-rail-icon s-rail-icon--end",title:"Settings","aria-label":"Settings",onClick:()=>d({view:"settings"}),children:t.jsx(D,{})})]})]})}function E(){return t.jsxs("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,children:[t.jsx("circle",{cx:"7",cy:"7",r:"4.25",stroke:"currentColor",strokeWidth:"1.4"}),t.jsx("path",{d:"M10.5 10.5 14 14",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})]})}function L(){return t.jsx("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,children:t.jsx("path",{d:"M8 3v10M3 8h10",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})})}function D(){return t.jsxs("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,children:[t.jsx("circle",{cx:"8",cy:"8",r:"2.25",stroke:"currentColor",strokeWidth:"1.3"}),t.jsx("path",{d:"M8 1.5v1.6M8 12.9v1.6M14.5 8h-1.6M3.1 8H1.5M12.6 3.4l-1.1 1.1M4.5 11.5l-1.1 1.1M12.6 12.6l-1.1-1.1M4.5 4.5 3.4 3.4",stroke:"currentColor",strokeWidth:"1.3",strokeLinecap:"round"})]})}export{Bt as AgentsLeft};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r,j as e}from"./index-DReVb7jZ.js";/* empty css */import{n as k}from"./agent-state-DDhnFEEP.js";import{p as C,a as L}from"./api-DSqpVKC7.js";import{m as F,b as $,d as D}from"./machine-scope-DJt9RZ2w.js";import{d as H}from"./router-C-MF5-mb.js";import{d as O,r as B}from"./operator-attention-DBaRg5ep.js";import{u as G}from"./sse-A8AyLH0g.js";import{t as f}from"./time-Dhsh_2EG.js";import{u as K}from"./Provider-CNZluAZb.js";import{o as P}from"./openAgent-Dbv5wfuL.js";import{R as g}from"./RailRow-DUPqXMZh.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./index-BWHgHrtv.js";import"./provider-DwmCoSlc.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./openContent-C6XO6kr5.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";const U=new Set(["message.posted","flight.updated","collaboration.event.appended","agent.updated"]),V=4,z=4,X=3,N="/api/fleet",Y=3e4;function Wt({prepend:t}){const{agents:o,agentsLoaded:a,navigate:c,route:n}=K(),[i]=r.useState(()=>C(N,Y)),[l,y]=r.useState(i),[A,T]=r.useState(i!==null),[j,b]=r.useState(()=>new Set),p=H(n),S=r.useMemo(()=>F(o,p),[o,p]),u=r.useMemo(()=>$(o,p),[o,p]),m=r.useMemo(()=>D(l,S),[l,S]),d=r.useCallback(async()=>{try{y(await L(N))}catch{}finally{T(!0)}},[]);r.useEffect(()=>{d()},[d]),G(s=>{U.has(s.kind)&&d()});const w=r.useMemo(()=>Z(u).slice(0,V),[u]),R=r.useMemo(()=>(m?.activity??[]).slice(0,z),[m]),_=r.useMemo(()=>(m?.needsAttention??[]).filter(s=>!j.has(s.recordId)).slice(0,X),[m,j]),M=r.useCallback(async s=>{b(h=>new Set(h).add(s.recordId));try{await O({recordKind:s.kind,recordId:s.recordId,itemUpdatedAt:s.updatedAt})}catch{b(h=>{const I=new Set(h);return I.delete(s.recordId),I});return}d()},[d]);return e.jsxs("div",{className:"ctx-panel base-rail",children:[t?e.jsx("div",{className:"base-rail-prepend",children:t}):null,e.jsx(q,{agents:w,totalCount:u.length,loading:!a,onSelect:s=>P(c,s,{returnTo:n}),onSeeAll:()=>c({view:"agents-v2"})}),e.jsx(Q,{items:R,loading:!A,onSelect:s=>c(tt(s)),onSeeAll:()=>c({view:"activity"})}),e.jsx(W,{items:_,loading:!A,onSelect:s=>c(B(s)),onDismiss:s=>{M(s)}})]})}function q({agents:t,totalCount:o,loading:a,onSelect:c,onSeeAll:n}){return e.jsxs("section",{className:"ctx-panel-section base-rail-section",children:[e.jsx(x,{title:"Recent agents",onSeeAll:o>0?n:void 0}),a?e.jsx(v,{}):t.length===0?e.jsx("div",{className:"ctx-panel-empty",children:"No agents yet"}):t.map(i=>e.jsx(g,{name:i.name||i.id,meta:i.updatedAt?f(i.updatedAt):void 0,tone:k(i.state),title:J(i),onClick:()=>c(i)},i.id))]})}function J(t){const o=[];return t.project&&o.push(`project: ${t.project}`),t.branch&&o.push(`branch: ${t.branch}`),t.harness&&o.push(`harness: ${t.harness}`),o.join(`
|
|
2
|
-
`)}function Q({items:t,loading:o,onSelect:a,onSeeAll:c}){return e.jsxs("section",{className:"ctx-panel-section base-rail-section",children:[e.jsx(x,{title:"Recent Scout coordination",meta:(t.length>0,void 0),onSeeAll:t.length>0?c:void 0}),o?e.jsx(v,{}):t.length===0?e.jsx("div",{className:"ctx-panel-empty",children:"No recent Scout messages or dispatches"}):t.map(n=>{const i=n.actorName??n.agentName??n.agentId??"system",l=n.title??n.summary??E(n.kind);return e.jsx(g,{name:l,meta:n.ts?f(n.ts):void 0,tone:"neutral",title:`${i} · ${E(n.kind)}`,onClick:()=>a(n)},n.id)})]})}function W({items:t,loading:o,onSelect:a,onDismiss:c}){return!o&&t.length===0?null:e.jsxs("section",{className:"ctx-panel-section base-rail-section",children:[e.jsx(x,{title:"Needs attention",meta:t.length>0?`${t.length}`:void 0}),o?e.jsx(v,{rows:2}):t.map(n=>{const i=n.agentName??n.agentId??"operator";return e.jsx(g,{name:n.title,meta:f(n.updatedAt),tone:"in_turn",unread:!0,title:`${i} · ${n.kind}`,onClick:()=>a(n),actions:e.jsx("button",{type:"button",className:"rr-row-action",title:"Dismiss — stop asking until this changes","aria-label":"Dismiss",onClick:l=>{l.stopPropagation(),c(n)},children:"Dismiss"})},n.recordId)})]})}function v({rows:t=3}){return e.jsx("div",{className:"base-rail-loading",role:"status","aria-label":"Loading",children:Array.from({length:t},(o,a)=>e.jsx("span",{"aria-hidden":"true"},a))})}function x({title:t,meta:o,onSeeAll:a}){return e.jsxs("div",{className:"ctx-panel-section-label base-rail-section-label",children:[e.jsx("span",{children:t}),e.jsxs("span",{className:"base-rail-section-trailing",children:[o?e.jsx("span",{className:"ctx-panel-count",children:o}):null,a?e.jsx("button",{type:"button",className:"base-rail-see-all",onClick:a,children:"all"}):null]})]})}function Z(t){return[...t].sort((o,a)=>(a.updatedAt??0)-(o.updatedAt??0))}function E(t){switch(t){case"message":return"Message";case"invocation":return"Invocation";case"flight":return"Flight update";case"collaboration":return"Collaboration";default:return t.replace(/_/g," ")}}function tt(t){return t.conversationId?{view:"conversation",conversationId:t.conversationId}:t.agentId?{view:"agents-v2",agentId:t.agentId}:{view:"activity"}}export{Wt as HomeLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as n,r as y}from"./index-DReVb7jZ.js";import{u as L,j as _,l as F,e as T,m as E,a as b,r as C,f as $,d as P,t as R}from"./mesh-view-store-C1-mdP3P.js";import{u as B}from"./Provider-CNZluAZb.js";import{n as z}from"./agent-state-DDhnFEEP.js";import{a as H,b as O,d as U,m as q}from"./machine-children-CdhNzDF0.js";import{u as K,h as V}from"./use-fleet-active-asks-D_QOmjg5.js";import{R as I}from"./RailRow-DUPqXMZh.js";import{nodeMenuRowProps as G,NodeMenu as Q}from"./NodeMenu-CcOeFRCB.js";import{u as D,l as J,r as W}from"./use-mesh-node-state-3V3ADQ-G.js";import{o as X}from"./openAgent-Dbv5wfuL.js";/* empty css */import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./api-DSqpVKC7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";import"./openContent-C6XO6kr5.js";function Y({value:t,onChange:l,placeholder:a="Search…",onKeyDown:s}){return n.jsx("input",{type:"search",className:"fleet-search",placeholder:a,value:t,onChange:m=>l(m.target.value),onKeyDown:s,spellCheck:!1,autoCorrect:"off",autoCapitalize:"off"})}const Z=["needs_attention","in_turn","in_flight","callable","blocked"],ee={in_turn:"in turn",in_flight:"in flight",needs_attention:"needs attention",callable:"callable",blocked:"blocked"},te={in_turn:"working",in_flight:"working",needs_attention:"working",callable:"available",blocked:"offline"};function ne({active:t,onToggle:l}){return n.jsx("div",{className:"fleet-pills",role:"group","aria-label":"State filters",children:Z.map(a=>{const s=t.has(a);return n.jsx("button",{type:"button",className:`fleet-pill fleet-pill--${te[a]}${s?" fleet-pill--on":""}`,onClick:()=>l(a),"aria-pressed":s,children:ee[a]},a)})})}const k=10;function oe(t){return z(t.state)}function ae({bucket:t,active:l,hidden:a,anyHidden:s,positioned:m,full:c,selectedId:v,selectedType:h,activeAsks:A,onSelect:N,onFocus:w,onSelectAgent:p,onToggleFull:x}){const d=y.useRef(null),u=D(t.machineId),M=u?.view??null,g=O({machineId:t.machineId,machineLabel:t.machineLabel,nodeId:t.node?.nodeId??null,brokerUrl:t.node?.brokerUrl??M?.node?.brokerUrl??null,hidden:a,anyHidden:s,positioned:m,canCopy:typeof navigator<"u"&&!!navigator.clipboard,checking:u?.loading??!1,on:{select:e=>N(e),refresh:e=>{W(e)},focus:e=>w(e),toggleHidden:e=>R(e),showAll:()=>T(),clearPosition:e=>P(e),copy:e=>{navigator.clipboard?.writeText(e)}}}),r=U(t,M),S=c?r:r.slice(0,k),f=r.length-S.length;return n.jsxs("div",{className:"mesh-nav-machine",children:[n.jsx(I,{name:t.machineLabel,meta:q(t,M,u?.loading??!1),tone:"neutral",active:l,onClick:()=>N(t.machineId),onPointerEnter:()=>{u||J(t.machineId,{deep:!1})},title:`${t.machineLabel} — click to see what is running here`,actions:n.jsx(Q,{ref:d,machineLabel:t.machineLabel,actions:g,className:"mesh-nav-menu-btn"}),...G(d)}),S.map(e=>n.jsx(I,{name:e.name,meta:e.meta,tone:e.tone,depth:1,active:v===e.selectId&&h==="agent",unread:e.agent?V(A,e.agent.id):!1,onClick:e.agent?()=>p(e.agent):void 0,title:e.title},e.key)),!c&&f>0&&n.jsx(I,{name:`see ${f} more`,depth:1,tone:"neutral",onClick:()=>x(t.machineId),title:"Show all agents on this machine"}),c&&r.length>k&&n.jsx(I,{name:"see less",depth:1,tone:"neutral",onClick:()=>x(t.machineId),title:"Show recent agents only"})]})}function rt(){const{agents:t,navigate:l}=B(),{meshSnapshot:a,selectedId:s,selectedType:m,query:c,agentStateFilters:v,hiddenMachineIds:h,treeFullMachineIds:A,machinePositions:N}=L(),w=K(),p=y.useMemo(()=>a?H(t,a):[],[t,a]),x=y.useMemo(()=>{const e=c.trim().toLowerCase();return p.filter(o=>!h.has(o.machineId)).map(o=>{const i=o.agents.filter(j=>v.has(oe(j))?e?`${j.name??""} ${j.project??""} ${j.branch??""} ${j.harness??""}`.toLowerCase().includes(e):!0:!1);return{...o,agents:i}})},[p,c,v,h]),d=y.useMemo(()=>{const e=new Map([["this",[]],["peer",[]],["tailnet",[]]]);for(const o of x){const i=o.reachability==="this"?"this":o.reachability==="peer"?"peer":"tailnet";e.get(i)?.push(o)}return e},[x]);if(!a)return n.jsx("div",{className:"ctx-panel ctx-panel--empty",children:n.jsx("div",{className:"ctx-panel-empty-state",children:n.jsx("div",{className:"ctx-panel-empty-hint",children:"Loading mesh…"})})});const u=e=>{b(e,"node"),C(e)},M=e=>{$(e,p.map(o=>o.machineId)),b(e,"node"),C(e)},g=h.size,r=p.length,S=e=>{b(e.id,"agent");const o=e.authorityNodeId??e.homeNodeId;o&&C(o),X(l,e,{returnTo:{view:"mesh"}})},f=(e,o)=>o.length===0?null:n.jsxs("section",{className:"mesh-nav-group",children:[n.jsx("div",{className:"mesh-nav-group-label",children:e}),o.map(i=>n.jsx(ae,{bucket:i,active:s===i.machineId&&m==="node",hidden:h.has(i.machineId),anyHidden:g>0,positioned:i.machineId in N,full:A.has(i.machineId),selectedId:s,selectedType:m,activeAsks:w,onSelect:u,onFocus:M,onSelectAgent:S,onToggleFull:E},i.machineId))]},e);return n.jsxs("div",{className:"ctx-panel mesh-nav",children:[n.jsxs("div",{className:"mesh-nav-head",children:[n.jsx(Y,{value:c,onChange:_,placeholder:"Find machines or agents…"}),n.jsx(ne,{active:v,onToggle:F}),g>0&&g<r&&n.jsxs("button",{type:"button",className:"mesh-nav-focus-chip",onClick:T,title:"Show all machines",children:[n.jsxs("span",{className:"mesh-nav-focus-chip-label",children:["focused · ",r-g,"/",r]}),n.jsx("span",{className:"mesh-nav-focus-chip-clear","aria-hidden":!0,children:"×"})]})]}),n.jsxs("div",{className:"mesh-nav-tree",children:[f("this host",d.get("this")??[]),f("peers",d.get("peer")??[]),f("tailnet",d.get("tailnet")??[])]})]})}export{rt as MeshLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as m,j as t}from"./index-DReVb7jZ.js";import{u as ee,L as F}from"./usePersistentState-Y8XwSTg-.js";import{b as te,f as ae,a as ne,c as se,d as ie,s as re}from"./terminal-sessions-3RfJpen8.js";import{a as le,r as K,i as oe}from"./keyboard-nav-CJXPaHXj.js";import{u as ce}from"./Provider-CNZluAZb.js";import{c as me}from"./agent-state-DDhnFEEP.js";import{r as D,c as de}from"./terminal-relay-mO89dX-Y.js";import{t as ue,a as G,s as ve,b as j,P as pe}from"./session-table-CGkfG5Yd.js";/* empty css */import{R as he}from"./refresh-cw-IcD2lPoT.js";import{A as fe}from"./activity-BJqFrZyB.js";import{C as be}from"./clock-CQb4FeMf.js";import{F as xe}from"./folder-B_S7gBVr.js";import{L as ye}from"./layers-BOwyWodP.js";import{C as ge}from"./chevron-right-DKGTLiqc.js";import{E as B}from"./eye-CsGfEVR6.js";import{T as je}from"./terminal-DMZjX1es.js";import"./createLucideIcon-ChvMq-zl.js";import"./api-DSqpVKC7.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";const ke=[{id:"fleet",label:"Fleet",title:"Group by fleet: herdr, tmux, background"},{id:"places",label:"Places",title:"Group by project"},{id:"time",label:"Time",title:"Group by last activity"},{id:"attention",label:"Attention",title:"Group by attention state: attached, live, detached, exited"}],Ne=[{id:"herdr",label:"Herdr"},{id:"tmux-named",label:"Tmux"},{id:"tmux-auto",label:"Tmux · auto"},{id:"external",label:"Background"}],we=900*1e3,Se=1440*60*1e3,Ae=10080*60*1e3,W=[{key:"now",label:"Now",maxAgeMs:we},{key:"today",label:"Today",maxAgeMs:Se},{key:"week",label:"This week",maxAgeMs:Ae},{key:"older",label:"Older",maxAgeMs:null},{key:"unknown",label:"Unknown",maxAgeMs:null}],Ee=[{key:"attached",label:"Attached",rank:3},{key:"live",label:"Live",rank:2},{key:"detached",label:"Detached",rank:1},{key:"exited",label:"Exited",rank:0}];function Ie(n){return Ne.map(s=>({key:s.id,label:s.label,items:n.filter(o=>te(o)===s.id)})).filter(s=>s.items.length>0)}function Te(n){const s=new Map;for(const i of n){const l=s.get(i.project);l?l.push(i):s.set(i.project,[i])}const o=new Set(["backend-only","unscoped"]),r=[...s.entries()].map(([i,l])=>({key:`project:${i}`,label:i,items:l,latestActivity:Math.max(...l.map(u=>G(u)??0)),isCatchAll:o.has(i)}));return r.sort((i,l)=>i.isCatchAll!==l.isCatchAll?i.isCatchAll?1:-1:i.latestActivity!==l.latestActivity?l.latestActivity-i.latestActivity:i.label.localeCompare(l.label,void 0,{numeric:!0,sensitivity:"base"})),r.map(({key:i,label:l,items:u})=>({key:i,label:l,items:u}))}function Ce(n,s){const o=r=>{const i=G(r);if(i===null)return"unknown";const l=Math.max(0,s-i);for(const u of W)if(u.maxAgeMs!==null&&l<u.maxAgeMs)return u.key;return"older"};return W.map(r=>({key:r.key,label:r.label,items:n.filter(i=>o(i)===r.key)})).filter(r=>r.items.length>0)}function Re(n){return Ee.map(s=>({key:s.key,label:s.label,items:n.filter(o=>ue(o)===s.rank)})).filter(s=>s.items.length>0)}function Me(n,s,o=Date.now()){switch(s){case"fleet":return Ie(n);case"places":return Te(n);case"time":return Ce(n,o);case"attention":return Re(n)}}const Le=8e3,$e=[{id:"recent",label:"Recent"},{id:"name",label:"A–Z"}],_e={fleet:ye,places:xe,time:be,attention:fe};function Ft(){const{route:n,navigate:s,agents:o}=ce(),[r,i]=m.useState({state:"loading",sessions:[]}),[l,u]=m.useState("recent"),[k,P]=ee("terminal-nav-mode","fleet"),[U,V]=m.useState(!1),[q,I]=m.useState(null),[T,C]=m.useState(null),H=m.useRef(null),Y=le();m.useEffect(()=>{const e=a=>{if(a.key!=="/"||a.metaKey||a.ctrlKey||a.altKey||oe(a.target))return;const c=()=>{const d=document.querySelector("[data-terminal-find]");return d?(d.focus(),d.select(),!0):!1};if(c()){a.preventDefault();return}a.preventDefault(),s({view:"terminal"}),requestAnimationFrame(()=>{c()||requestAnimationFrame(c)})};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[s]);const h=m.useCallback((e={})=>{e.silent||i(a=>({state:"loading",sessions:a.sessions})),ae({includeDiscovered:!0}).then(a=>{i({state:"ready",sessions:a})}).catch(a=>{e.silent||i(c=>({state:"failed",sessions:c.sessions,error:a instanceof Error?a.message:String(a)}))})},[]);m.useEffect(()=>{h()},[h]),m.useEffect(()=>{const e=()=>{document.visibilityState==="visible"&&h({silent:!0})},a=window.setInterval(e,Le);return window.addEventListener("focus",e),document.addEventListener("visibilitychange",e),()=>{window.clearInterval(a),window.removeEventListener("focus",e),document.removeEventListener("visibilitychange",e)}},[h]);const b=m.useMemo(()=>ne(r.sessions),[r.sessions]),f=m.useMemo(()=>ve(se(b),l==="recent"?{column:"activity",direction:"desc"}:{column:"name",direction:"asc"}),[l,b]),R=m.useMemo(()=>Oe(o,l).filter(e=>{const a=D(e);return a?!b.some(c=>c.surface.backend===a.backend&&c.surface.sessionName===a.sessionName&&(a.paneId==null||c.surface.paneId===a.paneId)):!0}),[o,b,l]),x=f.filter(e=>j(e)==="current"),Z=Me(x,k),y=f.filter(e=>j(e)==="inactive"),v=f.filter(e=>j(e)==="review"),M=y.length+v.length,L=v.length,g=U,p=R,J=n.view==="terminal"?n.terminalSurfaceKey??null:null,$=n.view==="terminal"?n.terminalSessionId??null:null,N=e=>ie(e.key,J)&&(!$||e.session.id===$),w=n.view==="terminal"&&n.agentId?`agent:${n.agentId}`:null,_=!!(x.some(N)||g&&[...y,...v].some(N)||w!=null&&p.some(e=>`agent:${e.id}`===w)),O=x[0]?.id??(g?y[0]?.id??v[0]?.id:void 0)??(p[0]?`agent:${p[0].id}`:void 0),Q=r.state==="loading"?"Syncing":`${f.length+R.length} targets`,S=(e,a)=>({view:"terminal",terminalSessionId:e.session.id,terminalSurfaceKey:re(e.surface),...a?{mode:a}:{}}),A=(e,a="takeover")=>({view:"terminal",agentId:e.id,mode:a}),X=async e=>{if(e.surface.backend==="tmux"&&window.confirm(`Release inactive terminal ${e.surface.sessionName}? The tmux surface will stop, but any associated Scout agent remains available and can be started again.`)){I(e.id),C(null);try{await de({backend:"tmux",sessionName:e.surface.sessionName,paneId:e.surface.paneId??null,socketDir:e.surface.socketDir??null},"release"),h({silent:!0})}catch(a){C(a instanceof Error?a.message:String(a))}finally{I(null)}}},E=e=>{const a=N(e),c=j(e),d=q===e.id;return t.jsxs("div",{className:`terminal-nav-row${a?" terminal-nav-row--active":""}${c==="review"?" terminal-nav-row--review":""}`,title:e.surface.sessionName,children:[t.jsxs("button",{type:"button","data-list-primary":!0,className:"terminal-nav-row-select",tabIndex:K(a,_,e.id===O),onClick:()=>s(S(e)),children:[t.jsx(je,{className:"terminal-nav-row-icon",size:14,strokeWidth:1.7}),t.jsxs("span",{className:"terminal-nav-row-main",children:[t.jsx("span",{className:"terminal-nav-row-title",children:t.jsx("span",{children:e.title})}),t.jsx("span",{className:"terminal-nav-row-detail",children:e.detail||e.session.sourceSessionId})]}),t.jsxs("span",{className:"terminal-nav-badges",children:[t.jsx("span",{className:"terminal-nav-badge terminal-nav-badge--backend",children:e.surface.backend}),t.jsx("span",{className:`terminal-nav-badge${c==="review"?" terminal-nav-badge--review":""}`,children:c==="current"?e.condition:c})]})]}),t.jsxs("div",{className:"terminal-nav-row-actions",children:[t.jsxs("button",{type:"button",className:`terminal-nav-action${n.view==="terminal"&&a&&n.mode==="takeover"?" terminal-nav-action--selected":""}`,onClick:()=>s(S(e,"takeover")),title:"Enter this terminal","aria-label":"Enter this terminal",children:[t.jsx(F,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Enter"})]}),t.jsxs("button",{type:"button",className:`terminal-nav-action${n.view==="terminal"&&a&&n.mode==="observe"?" terminal-nav-action--selected":""}`,onClick:()=>s(S(e,"observe")),title:"Observe this terminal read-only","aria-label":"Observe this terminal read-only",children:[t.jsx(B,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Observe"})]}),c==="review"&&e.surface.backend==="tmux"&&t.jsxs("button",{type:"button",className:"terminal-nav-action terminal-nav-action--release",onClick:()=>{X(e)},disabled:d,title:"Release this inactive tmux surface; keep the agent","aria-label":"Release this inactive tmux surface; keep the agent",children:[t.jsx(pe,{size:12,strokeWidth:1.8}),t.jsx("span",{children:d?"Releasing":"Release"})]})]})]},e.id)};return t.jsxs("div",{className:"ctx-panel terminal-nav",children:[t.jsxs("div",{className:"terminal-nav-head",children:[t.jsxs("div",{children:[t.jsx("div",{className:"terminal-nav-title",children:"Terminals"}),t.jsx("div",{className:"terminal-nav-summary",children:Q})]}),t.jsx("button",{type:"button",className:"terminal-nav-refresh",onClick:()=>h(),disabled:r.state==="loading",title:"Refresh terminals","aria-label":"Refresh terminals",children:t.jsx(he,{size:14,strokeWidth:1.8})})]}),t.jsx("div",{className:"terminal-nav-modes",role:"group","aria-label":"Group terminals",children:ke.map(e=>{const a=_e[e.id];return t.jsx("button",{type:"button",title:e.title,"aria-label":e.title,"aria-pressed":k===e.id,className:`terminal-nav-mode${k===e.id?" terminal-nav-mode--active":""}`,onClick:()=>P(e.id),children:t.jsx(a,{size:13,strokeWidth:1.8})},e.id)})}),t.jsx("div",{className:"ctx-panel-toolbar terminal-nav-toolbar",children:t.jsx("div",{className:"ctx-panel-sort",role:"group","aria-label":"Sort terminals",children:$e.map(e=>t.jsx("button",{type:"button",title:e.id==="recent"?"Sort by most recent":"Sort alphabetically","aria-pressed":l===e.id,className:`ctx-panel-sort-option${l===e.id?" ctx-panel-sort-option--active":""}`,onClick:()=>u(e.id),children:e.label},e.id))})}),r.state==="failed"&&t.jsx("div",{className:"terminal-nav-error",children:r.error}),T&&t.jsx("div",{className:"terminal-nav-error",children:T}),t.jsx("div",{ref:H,className:"terminal-nav-list",onKeyDown:Y,children:f.length===0&&p.length===0&&r.state!=="loading"?t.jsx("div",{className:"ctx-panel-empty",children:"No terminal targets"}):t.jsxs(t.Fragment,{children:[Z.map(e=>e.items.length===0?null:t.jsxs("div",{className:"terminal-nav-section",children:[t.jsxs("div",{className:"terminal-nav-section-title",children:[t.jsx("span",{children:e.label}),t.jsx("span",{children:e.items.length})]}),e.items.map(a=>E(a))]},e.key)),x.length===0&&r.state!=="loading"&&t.jsx("div",{className:"terminal-nav-empty",children:"No sessions"}),M>0&&t.jsxs("div",{className:"terminal-nav-section terminal-nav-section--inactive",children:[t.jsxs("button",{type:"button",className:"terminal-nav-inactive-toggle","aria-expanded":g,onClick:()=>V(e=>!e),children:[t.jsx(ge,{size:13,strokeWidth:1.8}),t.jsx("span",{children:"Inactive"}),t.jsx("span",{children:M}),L>0&&t.jsxs("span",{className:"terminal-nav-review-count",children:[L," review"]})]}),g&&t.jsxs(t.Fragment,{children:[y.map(e=>E(e)),v.length>0&&t.jsxs("div",{className:"terminal-nav-section-title terminal-nav-section-title--review",children:[t.jsx("span",{children:"Review after 30 days"}),t.jsx("span",{children:v.length})]}),v.map(e=>E(e))]})]}),t.jsxs("div",{className:"terminal-nav-section",children:[t.jsxs("div",{className:"terminal-nav-section-title",children:[t.jsx("span",{children:"Available agents"}),t.jsx("span",{children:p.length})]}),p.map(e=>{const a=`agent:${e.id}`,c=a===w,d=D(e);return t.jsxs("div",{className:`terminal-nav-row terminal-nav-row--agent${c?" terminal-nav-row--active":""}`,title:e.name,children:[t.jsxs("button",{type:"button","data-list-primary":!0,className:"terminal-nav-row-select",tabIndex:K(c,_,a===O),onClick:()=>s(A(e)),children:[t.jsx("span",{className:`terminal-nav-agent-dot${d?" terminal-nav-agent-dot--bound":""}`,"aria-hidden":!0}),t.jsxs("span",{className:"terminal-nav-row-main",children:[t.jsx("span",{className:"terminal-nav-row-title",children:t.jsx("span",{children:e.name})}),t.jsx("span",{className:"terminal-nav-row-detail",children:Fe(e)})]}),t.jsxs("span",{className:"terminal-nav-badges",children:[t.jsx("span",{className:"terminal-nav-badge terminal-nav-badge--backend",children:d?.backend??e.harness??"agent"}),t.jsx("span",{className:"terminal-nav-badge",children:d?"bound":me(e.state)})]})]}),t.jsxs("div",{className:"terminal-nav-row-actions",children:[t.jsxs("button",{type:"button",className:`terminal-nav-action${n.view==="terminal"&&c&&n.mode==="takeover"?" terminal-nav-action--selected":""}`,onClick:()=>s(A(e,"takeover")),title:"Enter this agent terminal","aria-label":"Enter this agent terminal",children:[t.jsx(F,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Enter"})]}),d&&t.jsxs("button",{type:"button",className:`terminal-nav-action${n.view==="terminal"&&c&&n.mode==="observe"?" terminal-nav-action--selected":""}`,onClick:()=>s(A(e,"observe")),title:"Observe this agent terminal read-only","aria-label":"Observe this agent terminal read-only",children:[t.jsx(B,{size:12,strokeWidth:1.8}),t.jsx("span",{children:"Observe"})]})]})]},e.id)}),p.length===0&&t.jsx("div",{className:"terminal-nav-empty",children:"No agents"})]})]})})]})}function Oe(n,s){return[...n].filter(o=>!o.retiredFromFleet&&!o.staleLocalRegistration).sort((o,r)=>{const i=o.name.localeCompare(r.name,void 0,{numeric:!0,sensitivity:"base"});return s==="name"?i||o.id.localeCompare(r.id):(r.updatedAt??0)-(o.updatedAt??0)||i||o.id.localeCompare(r.id)})}function Fe(n){const s=n.project??z(n.cwd)??z(n.projectRoot)??n.definitionId;return[n.handle?`@${n.handle}`:null,n.harness,s,n.branch].filter(Boolean).join(" · ")}function z(n){const s=n?.trim().replace(/\/+$/u,"");return s?s.split("/").pop()||s:null}export{Ft as TerminalLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as N,j as e}from"./index-DReVb7jZ.js";import{a as I}from"./api-DSqpVKC7.js";import{d as L,e as j,s as R}from"./router-C-MF5-mb.js";import{u as $,r as y,s as b,i as C}from"./mesh-ops-DSlvHp-D.js";import{u as E,s as T}from"./mesh-view-store-C1-mdP3P.js";import{u as A}from"./Provider-CNZluAZb.js";import{R as h}from"./RailRow-DUPqXMZh.js";import{u as U}from"./use-mesh-ops-items-DI9GKWlF.js";/* empty css */import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./provider-DwmCoSlc.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";function S(s){return s.hostName?.split(".")[0]??s.name??s.id.slice(0,12)}function Tt(){const{route:s,navigate:u}=A(),l=L(s),{items:i,unattributedOnly:m,lab:M,refreshToken:g}=$(),{meshSnapshot:r}=E();U(l);const[w]=N.useState(()=>y());N.useEffect(()=>{let t=!1;return I("/api/mesh").then(o=>{t||T(o)}).catch(()=>{}),()=>{t=!0}},[g]);const c=t=>{b(!1),u(t?R(s,t):j(s))},O=()=>{u(j(s)),b(!0)},p=r?.localNode??null,d=r?Object.values(r.nodes).filter(t=>t.id!==p?.id):[],a=t=>M.lastLook?t.filter(o=>C(o,w)).length:0,x=i.filter(t=>t.hostNodeId===null),f=t=>{const o=i.filter(k=>k.hostNodeId===t.id),n=a(o),v=l===t.id;return e.jsx(h,{name:S(t),meta:o.length>0?`${n>0?`${n}·`:""}${o.length}`:"—",tone:n>0?"needs_attention":"neutral",active:v,unread:n>0,onClick:()=>c(v?null:t.id),title:`Scope the list to ${S(t)}`},t.id)};return e.jsxs("div",{className:"ctx-panel mesh-ops-rail",children:[e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Mesh"}),e.jsx(h,{name:"everywhere",meta:`${a(i)>0?`${a(i)}·`:""}${i.length}`,tone:a(i)>0?"needs_attention":"neutral",active:l===null&&!m,onClick:()=>c(null),title:"Show items across all hosts"})]}),p&&e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"This host"}),f(p)]}),d.length>0&&e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"Peers"}),d.map(t=>f(t))]}),e.jsxs("div",{className:"ctx-panel-section",children:[e.jsx("div",{className:"ctx-panel-section-label",children:"No venue"}),e.jsx(h,{name:"unattributed",meta:x.length>0?String(x.length):"—",tone:"neutral",active:m,onClick:()=>m?c(null):O(),title:"Items with no venue host"})]}),!r&&e.jsx("div",{className:"ctx-panel-empty",children:"Loading mesh…"})]})}export{Tt as MeshOpsLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as r}from"./index-DReVb7jZ.js";import{u as o}from"./Provider-CNZluAZb.js";import{OpsAgentsLeft as i}from"./left-agents-thnBO156.js";import{OpsDefaultLeft as m}from"./left-default-CT42fnpF.js";import{OpsLanesLeft as p}from"./left-lanes-CSmZgciK.js";import{OpsMissionLeft as s}from"./left-mission-C86x6i9h.js";import{OpsAdvisorLeft as e}from"./left-advisor-C-kt8V28.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./api-DSqpVKC7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";/* empty css */import"./use-fleet-active-asks-D_QOmjg5.js";import"./RailRow-DUPqXMZh.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";import"./operator-attention-DBaRg5ep.js";import"./openContent-C6XO6kr5.js";import"./agent-lanes-model-DMAdqCmK.js";import"./lane-ask-display-BTVSakyo.js";import"./context-budget-8qFKqM-j.js";import"./lane-observe-CteDwdD-.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";import"./lane-roster-store-Ch9t6lb0.js";import"./mission-control-store-p_cboAm4.js";import"./MissionLeftAgentRow-Dms0DBjO.js";import"./page-status-DwFR4wSw.js";import"./server-DBlPW0Mp.js";import"./layers-BOwyWodP.js";import"./sparkles-Cc5lPZRv.js";import"./activity-BJqFrZyB.js";import"./cpu-Q6nrHFTN.js";import"./gauge-DQCGlE3o.js";import"./terminal-DMZjX1es.js";function Rr(){const{route:t}=o();if(t.view!=="ops")return null;switch(t.mode){case"mission":return r.jsx(s,{});case"agents":return r.jsx(i,{});case"advisor":return r.jsx(e,{});case"lanes":case"world":return r.jsx(p,{});default:return r.jsx(m,{})}}export{Rr as OpsLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as i,j as s}from"./index-DReVb7jZ.js";/* empty css */import{a as c}from"./api-DSqpVKC7.js";import{u as h}from"./sse-A8AyLH0g.js";import{u as v}from"./Provider-CNZluAZb.js";import{S as u}from"./server-DBlPW0Mp.js";import{L as j}from"./layers-BOwyWodP.js";import{S as b}from"./sparkles-Cc5lPZRv.js";import{A as N}from"./activity-BJqFrZyB.js";import{C as f}from"./cpu-Q6nrHFTN.js";import{G as g,D as k}from"./gauge-DQCGlE3o.js";import{T as y}from"./terminal-DMZjX1es.js";import"./index-BWHgHrtv.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";function ks(){const{agents:l,navigate:t}=v(),[m,p]=i.useState(null),[r,x]=i.useState([]),a=i.useCallback(async()=>{const[e,o]=await Promise.allSettled([c("/api/tail/discover"),c("/api/service-budgets")]);e.status==="fulfilled"&&p(e.value),o.status==="fulfilled"&&o.value?.gauges&&x(o.value.gauges)},[]);i.useEffect(()=>{a()},[a]),h(()=>{a()});const d=m?.processes??[],n=r.length>0?Math.round(Math.max(...r.map(e=>e.fill??0))*100):100;return s.jsxs("div",{className:"s-advisor-left-nav",children:[s.jsxs("div",{className:"s-ctx-panel-section",children:[s.jsxs("div",{className:"s-ctx-panel-head",children:[s.jsx(u,{size:14,className:"s-ctx-icon"}),s.jsx("span",{className:"label-xs",children:"HOST TELEMETRY"})]}),s.jsxs("div",{className:"s-ctx-stat-list",children:[s.jsxs("div",{className:"s-ctx-stat-item",children:[s.jsx("span",{className:"label-xs s-ctx-stat-label",children:"Agents Connected"}),s.jsx("span",{className:"chip chip--sm chip--mono",children:l.length})]}),s.jsxs("div",{className:"s-ctx-stat-item",children:[s.jsx("span",{className:"label-xs s-ctx-stat-label",children:"Active Processes"}),s.jsx("span",{className:"chip chip--sm chip--working chip--mono",children:d.length})]}),s.jsxs("div",{className:"s-ctx-stat-item",children:[s.jsx("span",{className:"label-xs s-ctx-stat-label",children:"Peak Quota"}),s.jsxs("span",{className:`chip chip--sm chip--mono ${n>80?"chip--warning":"chip--working"}`,children:[n,"%"]})]})]})]}),s.jsxs("div",{className:"s-ctx-panel-section",children:[s.jsxs("div",{className:"s-ctx-panel-head",children:[s.jsx(j,{size:14,className:"s-ctx-icon"}),s.jsx("span",{className:"label-xs",children:"OPERATIONS SURFACES"})]}),s.jsxs("div",{className:"s-ctx-nav-list",children:[s.jsxs("button",{type:"button",className:"s-ctx-nav-btn s-ctx-nav-btn--active",onClick:()=>t({view:"ops",mode:"advisor"}),children:[s.jsx(b,{size:13}),s.jsx("span",{children:"Host Advisor"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"ops",mode:"mission"}),children:[s.jsx(N,{size:13}),s.jsx("span",{children:"Mission Control"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"ops",mode:"lanes"}),children:[s.jsx(f,{size:13}),s.jsx("span",{children:"Agent Lanes"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"harnesses"}),children:[s.jsx(g,{size:13}),s.jsx("span",{children:"Agent Providers & Quotas"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"terminal"}),children:[s.jsx(y,{size:13}),s.jsx("span",{children:"Terminal Relays"})]}),s.jsxs("button",{type:"button",className:"s-ctx-nav-btn",onClick:()=>t({view:"search"}),children:[s.jsx(k,{size:13}),s.jsx("span",{children:"Knowledge Indexer"})]})]})]})]})}export{ks as OpsAdvisorLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r,j as o}from"./index-DReVb7jZ.js";/* empty css */import{a as j}from"./api-DSqpVKC7.js";import{a as v}from"./sse-A8AyLH0g.js";import{u as N}from"./Provider-CNZluAZb.js";import{u as g}from"./use-fleet-active-asks-D_QOmjg5.js";import{i as w}from"./agent-state-DDhnFEEP.js";import{R as a}from"./RailRow-DUPqXMZh.js";import"./index-BWHgHrtv.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";const $=new Set(["message.posted","conversation.upserted","agent.updated"]);function k(e){const n=x(e.cwd),m=x(e.projectRoot);return e.authorityNodeName??e.homeNodeName??e.authorityNodeId??e.homeNodeId??e.transport??n??m??"local"}function R(e){return e.project??e.role??e.agentClass??"Unassigned"}function x(e){if(!e)return null;const n=e.split("/").filter(Boolean);return n[n.length-1]??null}function gt(){const{agents:e,navigate:n}=N(),[m,f]=r.useState([]),p=g(),c=r.useCallback(async()=>{const t=await j("/api/conversations").catch(()=>[]);f(t)},[]);r.useEffect(()=>{c()},[c]),v(t=>$.has(t.kind),()=>{c()});const h=r.useMemo(()=>e.filter(t=>w(t.state)).length,[e]),l=r.useMemo(()=>{let t=0;for(const s of p.asks)(s.status==="failed"||s.status==="needs_attention")&&(t+=1);return t},[p]),u=r.useMemo(()=>{const t=new Map;for(const s of e){const i=R(s);t.set(i,(t.get(i)??0)+1)}return[...t.entries()].sort((s,i)=>i[1]-s[1]).slice(0,8)},[e]),d=r.useMemo(()=>{const t=new Map;for(const s of e){const i=k(s);t.set(i,(t.get(i)??0)+1)}return[...t.entries()].sort((s,i)=>i[1]-s[1]).slice(0,8)},[e]);return o.jsxs("div",{className:"ctx-panel",children:[o.jsxs("section",{className:"ctx-panel-section",children:[o.jsx("div",{className:"ctx-panel-section-label",children:"Agents"}),o.jsx(a,{name:"Overview",meta:`${e.length}`,tone:"neutral",onClick:()=>n({view:"inbox"})}),o.jsx(a,{name:"Agents",meta:`${h}`,tone:"callable",active:!0,onClick:()=>n({view:"ops",mode:"agents"})}),o.jsx(a,{name:"Sessions",meta:`${m.length}`,tone:"neutral",onClick:()=>n({view:"sessions"})}),o.jsx(a,{name:"Alerts",meta:`${l}`,tone:l>0?"in_turn":"neutral",unread:l>0,onClick:()=>n({view:"activity"})})]}),o.jsxs("section",{className:"ctx-panel-section",children:[o.jsx("div",{className:"ctx-panel-section-label",children:"Projects"}),u.length===0?o.jsx("div",{className:"ctx-panel-empty",children:"No projects"}):u.map(([t,s])=>o.jsx(a,{name:t,meta:`${s}`,tone:"neutral",title:`${s} agent${s===1?"":"s"} on ${t}`},t))]}),o.jsxs("section",{className:"ctx-panel-section",children:[o.jsx("div",{className:"ctx-panel-section-label",children:"Machines"}),d.length===0?o.jsx("div",{className:"ctx-panel-empty",children:"No machines"}):d.map(([t,s])=>o.jsx(a,{name:t,meta:`${s}`,tone:"neutral",title:`${s} agent${s===1?"":"s"} on ${t}`},t))]})]})}export{gt as OpsAgentsLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as s,j as o}from"./index-DReVb7jZ.js";/* empty css */import{a as h}from"./api-DSqpVKC7.js";import{n as f}from"./agent-state-DDhnFEEP.js";import{r as g,a as j}from"./operator-attention-DBaRg5ep.js";import{u as N}from"./sse-A8AyLH0g.js";import{t as c}from"./time-Dhsh_2EG.js";import{u as w}from"./Provider-CNZluAZb.js";import{o as l}from"./openContent-C6XO6kr5.js";import{R as m}from"./RailRow-DUPqXMZh.js";import"./index-BWHgHrtv.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";const A=[{name:"Control",route:{view:"ops",mode:"mission"},active:e=>e.view==="ops"&&(e.mode===void 0||e.mode==="mission")},{name:"Dispatch",route:{view:"broker"},active:e=>e.view==="broker"},{name:"Network",route:{view:"mesh"},active:e=>e.view==="mesh"},{name:"Tail",route:{view:"ops",mode:"tail"},active:e=>e.view==="ops"&&e.mode==="tail"},{name:"Runtime",route:{view:"ops",mode:"atop"},active:e=>e.view==="ops"&&e.mode==="atop"}];function jt(){const{navigate:e,route:n}=w(),[p,d]=s.useState(null),r=s.useCallback(async()=>{const t=await h("/api/fleet").catch(()=>null);d(t)},[]);s.useEffect(()=>{r()},[r]),N(t=>{(t.kind==="message.posted"||t.kind==="flight.updated"||t.kind==="collaboration.event.appended")&&r()});const i=p?.needsAttention??[],a=(p?.activeAsks??[]).filter(t=>t.status!=="needs_attention"),u=t=>{l(e,g(t),{returnTo:n})},v=t=>{l(e,j(t),{returnTo:n})};return o.jsxs("div",{className:"ctx-panel ctx-panel--ops",children:[o.jsxs("section",{className:"ctx-panel-section",children:[o.jsx("div",{className:"ctx-panel-section-label",children:"Surfaces"}),A.map(t=>o.jsx(m,{name:t.name,tone:"neutral",active:t.active(n),onClick:()=>e(t.route)},t.name))]}),o.jsxs("section",{className:"ctx-panel-section",children:[o.jsxs("div",{className:"ctx-panel-section-label",children:["Needs you",i.length>0&&o.jsx("span",{className:"ctx-panel-count",children:i.length})]}),i.length===0?o.jsx("div",{className:"ctx-panel-empty",children:"All clear"}):i.slice(0,4).map(t=>{const x=t.agentName??t.agentId??"operator";return o.jsx(m,{name:t.title,meta:c(t.updatedAt),tone:"in_turn",unread:!0,title:`${x} · ${t.kind}`,onClick:()=>u(t)},t.recordId)})]}),o.jsxs("section",{className:"ctx-panel-section",children:[o.jsxs("div",{className:"ctx-panel-section-label",children:["Active",a.length>0&&o.jsx("span",{className:"ctx-panel-count",children:a.length})]}),a.length===0?o.jsx("div",{className:"ctx-panel-empty",children:"No active requests"}):a.slice(0,10).map(t=>o.jsx(m,{name:t.task,meta:c(t.updatedAt),tone:f(t.agentState),title:`${t.agentName??t.agentId} · ${t.statusLabel}`,onClick:()=>v(t)},t.invocationId))]})]})}export{jt as OpsDefaultLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as f,j as t}from"./index-DReVb7jZ.js";/* empty css */import{t as x}from"./time-Dhsh_2EG.js";import{u as g}from"./Provider-CNZluAZb.js";import{R as b}from"./RailRow-DUPqXMZh.js";import{H as h}from"./HarnessMark-DSvM_H7H.js";import{n as j}from"./agent-state-DDhnFEEP.js";import{b as v,c as L,l as m,d as _}from"./agent-lanes-model-DMAdqCmK.js";import{u as N,b as A,g as p}from"./lane-roster-store-Ch9t6lb0.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./api-DSqpVKC7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./NewChatOrigin-C8ROO4ps.js";import"./keyboard-nav-CJXPaHXj.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";import"./lane-ask-display-BTVSakyo.js";import"./context-budget-8qFKqM-j.js";import"./lane-observe-CteDwdD-.js";import"./tail-display-DHSNmvor.js";import"./lane-edit-display-BjdT9oZl.js";function c(s,e,i){const r=`[data-lane-id="${s.replace(/["\\]/g,"\\$&")}"]`,a=typeof document<"u"?document.querySelector(r):null;if(a){a.scrollIntoView({behavior:"smooth",inline:"center",block:"nearest"}),a.focus();return}e&&i({view:"agents-v2",agentId:e,tab:"profile"})}function R(s){return s.filter(e=>!v(e)&&L(e)).sort((e,i)=>{const r=(i.updatedAt??0)-(e.updatedAt??0);return r!==0?r:m(e,"scout").localeCompare(m(i,"scout"))}).map(e=>({id:e.id,label:m(e,"scout"),statusLabel:_(e,"scout"),tone:j(e.state,e),agentId:e.id,updatedAt:e.updatedAt??void 0}))}function wo(){const{agents:s,navigate:e}=g(),i=N(),r=A(),a=f.useMemo(()=>R(s),[s]),l=i??a,d=l.some(o=>o.floor);return t.jsx("div",{className:"ctx-panel ctx-panel--ops",children:t.jsxs("section",{className:"ctx-panel-section",children:[t.jsxs("div",{className:"ctx-panel-section-label",children:[d?"Fleet":"Lanes",l.length>0&&t.jsx("span",{className:"ctx-panel-count",children:l.length})]}),l.length===0?t.jsx("div",{className:"ctx-panel-empty",children:"No active lanes"}):l.map(o=>o.floor?t.jsxs("button",{type:"button",className:`agent-floor__ledger-row is-rail${r===o.id?" is-focus":""}`,onClick:()=>{const n=p();n?n.onSelect(o.id):c(o.id,o.agentId,e)},onPointerEnter:()=>p()?.onHover(o.id),onPointerLeave:()=>p()?.onHover(null),children:[t.jsxs("span",{className:"agent-floor__ledger-id",children:[t.jsx(h,{harness:o.floor.harness,size:15,title:null}),t.jsxs("span",{className:"agent-floor__ledger-lines",children:[t.jsx("span",{className:"agent-floor__ledger-name",children:o.floor.identity}),o.floor.project?t.jsx("span",{className:"agent-floor__ledger-where",children:o.floor.project}):null]}),t.jsx("span",{className:`agent-floor__card-dot${o.floor.live?" is-live":""}`})]}),t.jsx("span",{className:"agent-floor__ledger-strip",children:o.floor.strip.slice(-6).map((n,u)=>t.jsx("span",{className:`agent-floor__ledger-cell is-${n}`},u))})]},o.id):t.jsx(b,{name:o.label,sub:o.statusLabel||void 0,meta:o.updatedAt?x(o.updatedAt):void 0,tone:o.tone,title:o.statusLabel,onClick:()=>c(o.id,o.agentId,e)},o.id))]})})}export{wo as OpsLanesLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r,j as s}from"./index-DReVb7jZ.js";/* empty css */import{n as S}from"./agent-state-DDhnFEEP.js";import{u as M,m as I,s as w,a as u,M as k,b as A,c as C,d as E,r as F,t as R}from"./mission-control-store-p_cboAm4.js";import{u as T}from"./Provider-CNZluAZb.js";import{a as K,b as q,r as L,m as B}from"./keyboard-nav-CJXPaHXj.js";import{MissionLeftAgentRow as D}from"./MissionLeftAgentRow-Dms0DBjO.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./api-DSqpVKC7.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-Bk3nyrkj.js";import"./NewChatComposer-BEXS8vV6.js";import"./runtime-picker-C_AVYF63.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./createLucideIcon-ChvMq-zl.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./time-Dhsh_2EG.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./HarnessMark-DSvM_H7H.js";import"./NewChatOrigin-C8ROO4ps.js";import"./x-rlMdRqJF.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";import"./file-text-DP6txVW-.js";import"./model-CBkMvT1w.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./page-status-DwFR4wSw.js";import"./RailRow-DUPqXMZh.js";import"./AgentAvatar-NZOqcsB2.js";import"./SpriteAvatar-aHeF4ZQZ.js";import"./CrewAvatar-zgzC3cbU.js";function Le(){const{navigate:a}=T(),i=M(),l=i.visibleAgents,m=r.useRef(null),p=r.useRef(null),h=K(),x=B(()=>m.current);q(r.useCallback(()=>p.current,[]));const[d,v]=r.useState(null),j=I(i),c=i.selectedIds.length,b=e=>{v(t=>t===e?null:e)},N=()=>{if(c===0)return;const t=l.filter(o=>i.selectedIds.includes(o.id)).map(o=>o.handle??o.name).filter(Boolean).join("|");t&&a({view:"ops",mode:"tail",tailQuery:t})};return s.jsxs("div",{className:"ctx-panel ml-panel",children:[s.jsxs("div",{className:"ml-section",children:[s.jsx("div",{className:"ml-section-label",children:"Source"}),s.jsx("div",{className:"ml-chips ml-chips--primary",children:["all","scout","native"].map(e=>s.jsx("button",{type:"button",className:["ml-chip",i.sourceFilter===e&&"ml-chip--active"].filter(Boolean).join(" "),onClick:()=>w(e),children:e==="all"?"All":e==="scout"?"Scout":"Native"},e))})]}),s.jsx("div",{className:"ctx-panel-search",children:s.jsx("input",{ref:p,type:"text",className:"ctx-panel-search-input",placeholder:"Filter agents… (press /)",value:i.query,onChange:e=>u(e.target.value),onKeyDown:e=>{x(e),e.key==="Escape"&&i.query&&u("")}})}),s.jsx("div",{className:"ml-section ml-section--secondary",children:s.jsxs("div",{className:"ml-chips ml-chips--secondary",role:"group","aria-label":"Show logs active within",children:[s.jsx("span",{className:"ml-section-label ml-section-label--inline",children:"Within"}),k.map(e=>{const t=j===e.id;return s.jsx("button",{type:"button",className:["ml-chip ml-chip--ghost",t&&"ml-chip--ghost-active"].filter(Boolean).join(" "),"aria-pressed":t,onClick:()=>A(e.id),children:e.label},e.id)})]})}),s.jsxs("div",{className:"ml-section ml-section--grouping",children:[s.jsx("div",{className:"ml-section-label",children:"Order by"}),s.jsx("div",{className:"ml-chips ml-chips--grouping",children:[["activity","Activity"],["workspace","Project"],["harness","Harness"],["state","Status"],["source","Source"]].map(([e,t])=>s.jsx("button",{type:"button",className:["ml-chip","ml-chip--group",i.groupMode===e&&"ml-chip--group-active"].filter(Boolean).join(" "),"aria-pressed":i.groupMode===e,onClick:()=>C(e),children:t},e))})]}),c>0?s.jsxs("div",{className:"ml-selection",children:[s.jsxs("span",{className:"ml-selection-label",children:[c," selected"]}),s.jsxs("div",{className:"ml-selection-actions",children:[s.jsx("button",{type:"button",className:"ml-selection-btn ml-selection-btn--primary",onClick:N,children:"Tail ↗"}),s.jsx("button",{type:"button",className:"ml-selection-btn",onClick:E,children:"Clear"})]})]}):s.jsxs("div",{className:"ml-count",children:[l.length," visible",s.jsx("span",{className:"ml-count-hint",children:"⌘-click · ⌘A all"})]}),s.jsx("div",{ref:m,className:"ctx-panel-list ctx-panel-list--scroll",onKeyDown:h,children:l.length===0?s.jsx("div",{className:"ctx-panel-empty",children:i.query?"No match":"Nothing visible"}):l.map((e,t)=>{const o=e.id===d,y=l.some(n=>n.id===d),g=i.selectedIds.includes(e.id),f=S(e.state);return s.jsx(D,{agent:e,state:f,isExpanded:o,isSelected:g,tabIndex:L(o,y,t===0),onToggle:n=>{n.metaKey||n.ctrlKey||n.shiftKey?R(e.id):b(e.id)},onReveal:()=>F(e.id),onOpen:()=>a({view:"agents-v2",agentId:e.id})},e.id)})})]})}export{Le as OpsMissionLeft};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as l,j as e}from"./index-DReVb7jZ.js";/* empty css */import{t as O}from"./time-Dhsh_2EG.js";import{u as H,a as $}from"./Provider-CNZluAZb.js";import{S as G}from"./SpriteAvatar-aHeF4ZQZ.js";import{H as R}from"./HarnessMark-DSvM_H7H.js";import{AgentSessions as J}from"./AgentSessions-CO1WGa8Z.js";import{a as T}from"./api-DSqpVKC7.js";import{g as q,p as V,b as _}from"./model-CBkMvT1w.js";import{c as Q,e as X,f as Y,g as Z}from"./NewChatComposer-BEXS8vV6.js";import"./provider-DwmCoSlc.js";import"./router-C-MF5-mb.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-3RfJpen8.js";import"./machine-scope-DJt9RZ2w.js";import"./sse-A8AyLH0g.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./agent-state-DDhnFEEP.js";import"./scoutbot-Bk3nyrkj.js";import"./DocumentFocusViewer-DlMiEALb.js";import"./createLucideIcon-ChvMq-zl.js";import"./TextDocumentSurface-BK6Qy41F.js";import"./file-text-DP6txVW-.js";import"./x-rlMdRqJF.js";import"./index-kkXUq-zf.js";import"./chevron-right-DKGTLiqc.js";import"./folder-B_S7gBVr.js";import"./chevron-up-DX7R6KY2.js";import"./code-xml-Cmadr3pQ.js";import"./arrow-left-DFfKAq0d.js";import"./arrow-right-DmAWnyAH.js";import"./scout-voice-CqAyfblr.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-CJXPaHXj.js";import"./chunk-HRAB3GC3-Dvk_QpRq.js";import"./openContent-C6XO6kr5.js";import"./clipboard-e3fSpeo7.js";import"./runtime-picker-C_AVYF63.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DNUsuPWz.js";import"./conversation-model-m8HhzroS.js";import"./colors-CFlbwC25.js";import"./conversations-Cbg9h_Af.js";import"./index-CbqBwfIW.js";import"./NewChatOrigin-C8ROO4ps.js";import"./chevron-down-CDzRQQGl.js";import"./search-UsM-9-_W.js";const ee=30*6e4,D=a=>a==="pi"?"grok":a,K=a=>a?a.replace(/^claude-/,"").replace(/-\d{8}$/,""):null;function Ze({agents:a,fleet:d,sessionByAgentId:c,sessions:A,discovery:k,loading:C,navigate:N,selectedAgentId:S}){const{route:u,reload:p,openContextCapture:j}=H(),m=u.view==="agents-v2"?u.projectSlug:void 0,v=l.useMemo(()=>{const n=new Map;for(const b of d?.activeAsks??[]){const i=n.get(b.agentId)??[];i.push(b),n.set(b.agentId,i)}return n},[d?.activeAsks]),f=l.useMemo(()=>a.map(n=>Q(n,c.get(n.id)??null,v.get(n.id)??[])),[v,a,c]),g=l.useMemo(()=>X(k,Date.now()),[k]),h=l.useMemo(()=>Y(f,A,g),[f,A,g]),w=l.useMemo(()=>h.find(n=>n.slice.slug===m)??h[0]??null,[h,m]),r=w?.slice.slug,M={selectAgent:n=>N({view:"agents-v2",agentId:n.agent.id,...r?{projectSlug:r}:{}}),openAgentPage:n=>N({view:"agents-v2",agentId:n.agent.id,tab:"profile"}),startSession:n=>j({intent:"new-task",projectPath:n.agent.projectRoot??n.agent.cwd??void 0}),openSession:n=>N(n),configureAgent:n=>N({view:"agents-v2",agentId:n.agent.id,tab:"config"}),restartAgent:n=>{T(`/api/agents/${encodeURIComponent(n.agent.id)}/config`,{method:"POST",body:JSON.stringify({restart:!0})}).catch(()=>{})},stopAgent:n=>{T(`/api/agents/${encodeURIComponent(n.agent.id)}/interrupt`,{method:"POST",body:JSON.stringify({})}).catch(()=>{})},archiveAgent:n=>{T(`/api/agents/${encodeURIComponent(n.agent.id)}/archive`,{method:"POST",body:JSON.stringify({archived:!0})}).then(()=>p()).catch(()=>{})}};return!w&&C?e.jsx("div",{className:"s-aproj","aria-busy":"true",children:e.jsx("div",{className:"ap-loading",role:"status","aria-label":"Loading agents",children:Array.from({length:7},(n,b)=>e.jsx("span",{"aria-hidden":"true"},b))})}):w?e.jsx("div",{className:"s-aproj",children:e.jsx(te,{project:w,selectedAgentId:S,gestures:M,sessions:A})}):e.jsx("div",{className:"s-aproj",children:e.jsx("div",{className:"ap-empty",children:"No agents discovered yet — they appear here as harnesses register and work."})})}function se(){return e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,children:[e.jsx("circle",{cx:"7",cy:"7",r:"4.2",stroke:"currentColor",strokeWidth:"1.3"}),e.jsx("path",{d:"m10.5 10.5 3 3",stroke:"currentColor",strokeWidth:"1.3",strokeLinecap:"round"})]})}function ae({tone:a}){return a==="idle"?null:e.jsx("span",{className:"ap-dot","data-tone":a,"aria-hidden":!0})}function ne({g:a,gestures:d,sessions:c,selected:A,cursor:k,rowRef:C}){const N=$(),S=Date.now()-a.lastActivityAt<ee,u=a.needs?"needs":S?"live":"idle",p=a.nodes[0];if(!p)return null;const j=p.row.agent.handle?.trim()||a.name,m=a.branches.length>0?a.branches:["main"],v=m.length>1,f=v?`${m.length} branches`:m[0],g=[...new Set(a.nodes.map(r=>r.row.agent.model).filter(r=>!!r))],h=g.length>1,w=[{kind:"action",label:"Configure…",onSelect:()=>d.configureAgent(p.row)},{kind:"action",label:"Restart",onSelect:()=>d.restartAgent(p.row)},{kind:"separator"},{kind:"action",label:"Stop",onSelect:()=>d.stopAgent(p.row)},{kind:"action",label:"Archive",onSelect:()=>d.archiveAgent(p.row)}];return e.jsxs("div",{ref:C,tabIndex:-1,className:"ap-row","data-tone":u,"data-selected":A||void 0,"data-cursor":k||void 0,children:[e.jsxs("div",{className:"ap-rowMain",onClick:()=>d.selectAgent(p.row),children:[e.jsxs("div",{className:"ap-rowBody",children:[e.jsxs("div",{className:"ap-rowTop",children:[e.jsx(ae,{tone:u}),e.jsx("span",{className:"ap-rowMark","data-idle":u==="idle"||void 0,"aria-hidden":!0,children:e.jsx(R,{harness:D(a.harness),size:11})}),e.jsxs("span",{className:"ap-rowName","data-idle":u==="idle"||void 0,children:[e.jsx("span",{className:"ap-sigil","aria-hidden":!0,children:"@"}),j]}),a.needs?e.jsx("span",{className:"ap-needsWord",children:"needs you"}):u==="live"?e.jsx("span",{className:"ap-rowState",children:"working"}):null]}),e.jsxs("div",{className:"ap-rowMeta",children:[e.jsx("span",{className:"ap-rowBranch","data-dim":!0,title:v?m.join(" · "):void 0,children:f}),h?e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"ap-rowDivider","aria-hidden":!0}),e.jsxs("span",{className:"ap-rowDim",title:g.join(" · "),children:[g.length," models"]})]}):null,a.sessionCount?e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"ap-rowDivider","aria-hidden":!0}),e.jsxs("span",{className:"ap-rowDim",children:[a.sessionCount," session",a.sessionCount===1?"":"s"]})]}):null]})]}),e.jsxs("div",{className:"ap-rowTailWrap",children:[e.jsxs("div",{className:"ap-rowTail",children:[e.jsxs("div",{className:"ap-tailMeta","aria-hidden":u==="needs"||void 0,children:[e.jsx("span",{className:"ap-rowAgo",children:a.lastActivityAt?O(a.lastActivityAt):"—"}),!h&&K(a.model)?e.jsx("span",{className:"ap-rowModel",children:K(a.model)}):null]}),e.jsxs("div",{className:"ap-rowActions",children:[e.jsx("button",{type:"button",className:"ap-act ap-actPrimary",onClick:r=>{r.stopPropagation(),d.openAgentPage(p.row)},children:"Open ↗"}),e.jsx("button",{type:"button",className:"ap-act",onClick:r=>{r.stopPropagation(),d.startSession(p.row)},children:"+ Session"})]})]}),e.jsx("button",{type:"button",className:"ap-rowMore","aria-label":"Agent actions",title:"Configure · restart · stop",onClick:r=>{r.stopPropagation(),N(r,w)},children:"⋯"})]})]}),e.jsx(J,{agentIds:a.nodes.map(r=>r.row.agent.id),sessions:c})]})}function te({project:a,selectedAgentId:d,gestures:c,sessions:A}){const[k,C]=l.useState(""),[N,S]=l.useState(null),[u,p]=l.useState(!1),[j,m]=l.useState(-1),v=l.useRef(null),f=l.useRef(new Map),g=l.useMemo(()=>q(a),[a]),{primary:h,ephemeral:w}=l.useMemo(()=>V(g),[g]),r=l.useMemo(()=>_(a),[a]),M=l.useMemo(()=>[...new Set(h.map(s=>D(s.harness)))],[h]),n=k.trim().toLowerCase(),b=s=>(!N||D(s.harness)===N)&&(!n||s.name.toLowerCase().includes(n)||s.branches.some(t=>t.toLowerCase().includes(n))||s.harness.includes(n)),i=h.filter(b),I=w.filter(b),E=!!(n||N),o=i.find(s=>s.needs)??i[0],U=i.some(s=>s.needs),B=h.length<=1;Z(a);const W=g.reduce((s,t)=>s+t.sessionCount,0),z=s=>!!(d&&s.nodes.some(t=>t.row.agent.id===d));return l.useEffect(()=>{function s(t){const y=document.activeElement,L=!!y&&(y.tagName==="INPUT"||y.tagName==="TEXTAREA"||y.isContentEditable);if(t.key.toLowerCase()==="k"&&(t.metaKey||t.ctrlKey)||t.key==="/"&&!L){t.preventDefault(),v.current?.focus(),v.current?.select();return}if(t.key==="Escape"){L&&y?.blur();return}if(L)return;const F=i.length;if(F){if(t.key==="ArrowDown"||t.key==="j")t.preventDefault(),m(x=>x<0?0:Math.min(F-1,x+1));else if(t.key==="ArrowUp"||t.key==="k")t.preventDefault(),m(x=>x<0?0:Math.max(0,x-1));else if(t.key==="Enter"&&(t.metaKey||t.ctrlKey)){const x=i.find(P=>P.needs)??i[0];x&&(t.preventDefault(),m(i.indexOf(x)),c.selectAgent(x.nodes[0].row))}else if(t.key==="Enter"){const x=j<0?0:j,P=i[x];P&&(t.preventDefault(),m(x),c.selectAgent(P.nodes[0].row))}}}return document.addEventListener("keydown",s),()=>document.removeEventListener("keydown",s)},[i,j,c]),l.useEffect(()=>{if(!(j<0)){if(j>=i.length){m(i.length-1);return}f.current.get(i[j]?.name??"")?.scrollIntoView({block:"nearest"})}},[j,i]),e.jsx("div",{className:"ap-view",children:e.jsxs("div",{className:"ap-content",children:[e.jsxs("header",{className:"ap-head",children:[e.jsx(G,{name:a.slice.title,size:56,tile:!0}),e.jsxs("div",{className:"ap-headIdent",children:[e.jsx("div",{className:"ap-headTop",children:e.jsxs("h1",{className:"ap-headName",children:[e.jsx("span",{className:"ap-sigil","aria-hidden":!0,children:"/"}),a.slice.title]})}),a.slice.root?e.jsx("span",{className:"ap-headRoot",children:a.slice.root}):null]}),e.jsx("div",{className:"ap-headActions",children:e.jsx("button",{type:"button",className:"ap-headCta",disabled:!o,onClick:()=>o&&c.startSession(o.nodes[0].row),children:"+ New agent"})})]}),e.jsxs("div",{className:"ap-digest",children:[e.jsxs("span",{className:"ap-stat",children:[e.jsx("span",{className:"ap-statNum",children:h.length}),e.jsx("span",{className:"ap-statLbl",children:h.length===1?"agent":"agents"})]}),e.jsxs("span",{className:"ap-stat",children:[e.jsx("span",{className:"ap-statNum",children:W}),e.jsx("span",{className:"ap-statLbl",children:W===1?"session":"sessions"})]}),r.length>0?e.jsxs("span",{className:"ap-stat",children:[e.jsx("span",{className:"ap-statNum",children:r.length}),e.jsx("span",{className:"ap-statLbl",children:"in flight"})]}):null,e.jsx("span",{className:"ap-statMarks",children:M.map(s=>e.jsx("span",{title:s,"aria-hidden":!0,children:e.jsx(R,{harness:s,size:12})},s))})]}),o&&!E&&!B?e.jsxs("div",{className:"ap-resume","data-tone":o.needs?"needs":"live","aria-live":"polite",children:[e.jsx("span",{className:"ap-dot","data-tone":o.needs?"needs":"live","aria-hidden":!0}),e.jsx("span",{className:"ap-resumeLbl",children:o.needs?"Waiting on you":"Most recent"}),e.jsxs("span",{className:"ap-resumeWho",children:[e.jsx("span",{className:"ap-sigil","aria-hidden":!0,children:"@"}),o.nodes[0].row.agent.handle?.trim()||o.name]}),e.jsxs("span",{className:"ap-resumeMeta",children:[o.branches[0]??"main"," · ",o.lastActivityAt?O(o.lastActivityAt):"—"]}),e.jsxs("span",{className:"ap-resumeActions",children:[e.jsx("button",{type:"button",className:"ap-linkAccent",onClick:()=>c.selectAgent(o.nodes[0].row),children:o.needs?"Continue":"Resume"}),e.jsx("button",{type:"button",className:"ap-link",onClick:()=>c.openAgentPage(o.nodes[0].row),children:"Open ↗"})]})]}):null,B?null:e.jsxs("div",{className:"ap-find",children:[e.jsx("span",{className:"ap-findIco","aria-hidden":!0,children:e.jsx(se,{})}),e.jsx("input",{ref:v,className:"ap-findInput",placeholder:"Find an agent, branch, or harness… (⌘K)",value:k,onChange:s=>C(s.target.value)}),e.jsx("div",{className:"ap-findFilters",children:M.map(s=>e.jsxs("button",{type:"button",className:"ap-filter","data-on":N===s||void 0,onClick:()=>S(t=>t===s?null:s),children:[e.jsx(R,{harness:s,size:11}),s.charAt(0).toUpperCase()+s.slice(1)]},s))})]}),e.jsxs("div",{className:"ap-main",children:[e.jsxs("div",{className:"ap-sectionHead",children:[e.jsx("span",{className:"ap-sectionTitle",children:"Agents"}),e.jsxs("span",{className:"ap-sectionMeta",children:[i.length," shown",E?" · filtered":""]}),e.jsxs("span",{className:"ap-kbdHint","aria-hidden":!0,children:["↑↓ move · ↵ open",U?" · ⌘↵ needs":""]})]}),e.jsxs("div",{className:"ap-roster",children:[i.map((s,t)=>e.jsx(ne,{g:s,gestures:c,sessions:A,selected:z(s),cursor:j===t,rowRef:y=>{y?f.current.set(s.name,y):f.current.delete(s.name)}},s.name)),i.length===0?e.jsx("div",{className:"ap-empty",children:E?"No agents match.":I.length?"No primary agents — workflow & clone agents are in the fold below.":"No agents in this project yet."}):null]}),I.length?e.jsxs("div",{className:"ap-ephBlock",children:[e.jsxs("button",{type:"button",className:"ap-ephToggle",onClick:()=>p(s=>!s),children:[e.jsx("span",{className:"ap-ephCount",children:I.length})," ephemeral · workflow & clone agents",e.jsx("span",{className:"ap-ephCaret",children:u?"▴":"▾"})]}),u?e.jsx("div",{className:"ap-ephList",children:I.map(s=>e.jsxs("button",{type:"button",className:"ap-ephRow",onClick:()=>c.openAgentPage(s.nodes[0].row),children:[e.jsx("span",{className:"ap-ephMark","aria-hidden":!0,children:e.jsx(R,{harness:D(s.harness),size:10})}),e.jsx("span",{className:"ap-ephName",children:s.name}),e.jsx("span",{className:"ap-ephBranch",children:s.branches[0]??"main"}),e.jsx("span",{className:"ap-ephAgo",children:s.lastActivityAt?O(s.lastActivityAt):"—"})]},s.name))}):null]}):null,e.jsx("button",{type:"button",className:"ap-newAgent",disabled:!o,onClick:()=>o&&c.startSession(o.nodes[0].row),children:"+ New agent on this project"})]})]})})}export{Ze as AgentsLibrary};
|