@openscout/scout 0.2.97 → 0.2.102

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (634) hide show
  1. package/NOTICE +7 -0
  2. package/README.md +0 -1
  3. package/bin/scoutd +0 -0
  4. package/dist/build-manifest.json +3 -3
  5. package/dist/client/assets/ActivityScreen-DCALiEXY.js +1 -0
  6. package/dist/client/assets/{AddProjectForm-r_1tVuWk.js → AddProjectForm-DfbjlFfy.js} +1 -1
  7. package/dist/client/assets/AdventureEvidence-Dzz9VbuE.js +5 -0
  8. package/dist/client/assets/AdventureReader-ClMxT0e4.js +4 -0
  9. package/dist/client/assets/AdventureScenery-D548O0x4.js +1 -0
  10. package/dist/client/assets/AgentAdventures-NwTKeF0F.js +1 -0
  11. package/dist/client/assets/AgentAvatar-BIwg54Tj.js +1 -0
  12. package/dist/client/assets/AgentConfigurationScreen-B2Hw0ce1.js +1 -0
  13. package/dist/client/assets/AgentDefinitionsWorkspace-CwZJ833X.js +1 -0
  14. package/dist/client/assets/AgentDetailCard-CFDE8TLi.js +1 -0
  15. package/dist/client/assets/AgentFloorView-l2wNKFob.js +1 -0
  16. package/dist/client/assets/AgentFloorWorld-BDJmXl3C.js +1 -0
  17. package/dist/client/assets/AgentInfoScreen-ClZM1wQb.js +1 -0
  18. package/dist/client/assets/{AgentLaneCard-ajZvcfdW.js → AgentLaneCard-C6YmwPxQ.js} +1 -1
  19. package/dist/client/assets/{AgentLaneChrome-CTp39syR.js → AgentLaneChrome-D9uJ4QY7.js} +1 -1
  20. package/dist/client/assets/{AgentLaneDetailSheet-DRc-TpMB.js → AgentLaneDetailSheet-KYckCBCX.js} +2 -2
  21. package/dist/client/assets/{AgentLaneSummaryResize-VMNDo7kD.js → AgentLaneSummaryResize-BBYBS3DO.js} +1 -1
  22. package/dist/client/assets/AgentLanesEmbedScreen-DqHwqY0X.js +1 -0
  23. package/dist/client/assets/{AgentLanesPreflight-CFadSaia.js → AgentLanesPreflight-pw2vMO3Q.js} +1 -1
  24. package/dist/client/assets/AgentLanesView-aAyC7lHf.js +2 -0
  25. package/dist/client/assets/AgentLiveActions-lYzicnNa.js +1 -0
  26. package/dist/client/assets/AgentMasterScreen-By6DN0jF.js +1 -0
  27. package/dist/client/assets/AgentSessions-Cox2zS-e.js +6 -0
  28. package/dist/client/assets/AgentsConsole-Dq0S_hRA.js +1 -0
  29. package/dist/client/assets/AgentsScreen-Bi9Lx47B.js +1 -0
  30. package/dist/client/assets/AgentsSubnav-BOobgtGE.js +1 -0
  31. package/dist/client/assets/{AstronautSuit-Cjjcv6yQ.js → AstronautSuit-C-4I5YKi.js} +1 -1
  32. package/dist/client/assets/AtopView-DKm-ERYC.js +1 -0
  33. package/dist/client/assets/BackToPicker-Bys9ColC.js +1 -0
  34. package/dist/client/assets/BriefingDetailScreen-sprFl4Nk.js +1 -0
  35. package/dist/client/assets/BriefingsScreen-D4Zf31Y6.js +1 -0
  36. package/dist/client/assets/{BrokerMetadataPanel-DbaCQlhw.js → BrokerMetadataPanel-1GoSl2BV.js} +1 -1
  37. package/dist/client/assets/BrokerScreen-CejzhRsB.js +8 -0
  38. package/dist/client/assets/{CastPicker-CTBHjjGw.js → CastPicker-BuwE_JQp.js} +1 -1
  39. package/dist/client/assets/CharacterFamilyPreview-BniL8sEL.css +1 -0
  40. package/dist/client/assets/CharacterFamilyPreview-CfO3j8Of.js +1 -0
  41. package/dist/client/assets/ChatCollapsedStrip-TV0j1xTB.js +1 -0
  42. package/dist/client/assets/{CodeDiffPane-QvxCUzTi.js → CodeDiffPane-DB6-mqtX.js} +1 -1
  43. package/dist/client/assets/{CodeProjectPicker-DplkpM7f.js → CodeProjectPicker-B_LNLpIK.js} +1 -1
  44. package/dist/client/assets/CodeScreen-C9H160XS.js +1 -0
  45. package/dist/client/assets/CommsCanvas-BR2YS76H.css +1 -0
  46. package/dist/client/assets/CommsCanvas-DOKw3Q8i.js +1 -0
  47. package/dist/client/assets/CommsDeck-C18JA7rK.js +1 -0
  48. package/dist/client/assets/CommsFlowGraph-Czg-KTS0.js +1 -0
  49. package/dist/client/assets/CommsFlowGraph-vQucylxF.css +1 -0
  50. package/dist/client/assets/CommsFlowMap-CzBWvSa5.js +1 -0
  51. package/dist/client/assets/CommsSelection-g1twA-Lb.js +1 -0
  52. package/dist/client/assets/ConversationComposer-B7RU6LKd.js +1 -0
  53. package/dist/client/assets/ConversationFeedRows-DVqnZQH0.js +1 -0
  54. package/dist/client/assets/ConversationHeader-CCSU8uo_.js +1 -0
  55. package/dist/client/assets/ConversationPanels-C9yCAoJy.js +6 -0
  56. package/dist/client/assets/ConversationScreen-Brfas2y0.css +1 -0
  57. package/dist/client/assets/ConversationScreen-tTP6B_F-.js +2 -0
  58. package/dist/client/assets/ConversationStatus-CK-YfLpi.js +1 -0
  59. package/dist/client/assets/{CrewAvatar-CXJHLNVM.js → CrewAvatar-CJhuqTsJ.js} +1 -1
  60. package/dist/client/assets/CrewSprite-DsQJdu3Z.css +1 -0
  61. package/dist/client/assets/CrewSprite-hgpA3SWB.js +1 -0
  62. package/dist/client/assets/CrewWorkspaces-4O8dgRUD.js +1 -0
  63. package/dist/client/assets/{DataTable-DXIlOlVu.js → DataTable-BMOZ1-z8.js} +1 -1
  64. package/dist/client/assets/DispatchAftermath-DDlwqSCY.js +1 -0
  65. package/dist/client/assets/DocumentFocusViewer-f12RRQpV.js +1 -0
  66. package/dist/client/assets/{EmbeddableSurfacesLab-DgpewB3y.js → EmbeddableSurfacesLab-DGl9EMRV.js} +1 -1
  67. package/dist/client/assets/{EmptyState-D9X16fKq.js → EmptyState-uyYN5piI.js} +1 -1
  68. package/dist/client/assets/{FileViewerPane-CY0RN78e.js → FileViewerPane-HtiDbj9N.js} +2 -2
  69. package/dist/client/assets/FlightObserveScreen-DDXfNbsw.js +1 -0
  70. package/dist/client/assets/FloorContextSheet-DV-SYA0K.js +1 -0
  71. package/dist/client/assets/FloorExchangePanel-B3TFhjLk.css +1 -0
  72. package/dist/client/assets/FloorExchangePanel-D59nvRCF.js +1 -0
  73. package/dist/client/assets/FloorMessagePasses-BCwsz9VS.js +1 -0
  74. package/dist/client/assets/FloorMessagePasses-nxwwiUom.css +1 -0
  75. package/dist/client/assets/FloorReplay-BHo79HCD.js +1 -0
  76. package/dist/client/assets/FloorResourcesSheet-Djrgd_ZU.js +1 -0
  77. package/dist/client/assets/FloorSavedWork-2tjBoy06.js +1 -0
  78. package/dist/client/assets/FloorTacticalHUD-Bngao6sn.js +1 -0
  79. package/dist/client/assets/FollowScreen-eHXOlK-u.js +1 -0
  80. package/dist/client/assets/{HarnessMark-DAaWPiT_.js → HarnessMark-Bt47OeHy.js} +1 -1
  81. package/dist/client/assets/HarnessesScreen-M84sFjWY.js +1 -0
  82. package/dist/client/assets/{HerdrSession-CYKRfBad.js → HerdrSession-CtJOUn7H.js} +3 -3
  83. package/dist/client/assets/{HomeHero-DYyd3cpz.js → HomeHero-Cvwx2H0w.js} +1 -1
  84. package/dist/client/assets/HostAdvisorView-CTJXIc1Q.js +1 -0
  85. package/dist/client/assets/KnowledgeSearchInspector-DwGMVmFL.js +1 -0
  86. package/dist/client/assets/KnowledgeSearchScreen-WC0WhFio.js +1 -0
  87. package/dist/client/assets/{LaneToolHoverCard-Bo2Zl-1a.js → LaneToolHoverCard-C6YehJqD.js} +1 -1
  88. package/dist/client/assets/LaneTraceDetailSheet-mAhj7MJi.js +1 -0
  89. package/dist/client/assets/{LaneTraceEventFocus-Cek_64zR.js → LaneTraceEventFocus-WLNZZVi_.js} +1 -1
  90. package/dist/client/assets/MeshCanvas-FDDGE69h.js +3 -0
  91. package/dist/client/assets/MeshCanvasMinimap-CGRzQCac.js +1 -0
  92. package/dist/client/assets/MeshScreen-DlfiMlaR.js +1 -0
  93. package/dist/client/assets/{MeshTopologyView-BjprutE8.js → MeshTopologyView-C2Cv_2gx.js} +2 -2
  94. package/dist/client/assets/MessagesScreen-BZ7yaGJx.js +1 -0
  95. package/dist/client/assets/MissionContextRail-CVSZJnvX.js +1 -0
  96. package/dist/client/assets/MissionControlView-DpGhxG4a.js +1 -0
  97. package/dist/client/assets/MissionFocusOverlay-B9SiuO-i.js +1 -0
  98. package/dist/client/assets/MissionLeftAgentRow-DhhRRim0.js +1 -0
  99. package/dist/client/assets/MissionLogPane-CMBiI29U.js +1 -0
  100. package/dist/client/assets/NativeAreaScreen-BQyHHRAM.js +1 -0
  101. package/dist/client/assets/NativeAreaScreen-Ditv-TYW.js +1 -0
  102. package/dist/client/assets/NativeAreaScreen-Dq3uPSEI.js +1 -0
  103. package/dist/client/assets/NewAgentModal-Cl4nsGhu.js +1 -0
  104. package/dist/client/assets/NewChatComposer-JjLbm3W2.js +19 -0
  105. package/dist/client/assets/{NewChatOrigin-D7hwp6dm.js → NewChatOrigin-CyPPWTJP.js} +1 -1
  106. package/dist/client/assets/NodeDetailPanel-BUG8rOb-.js +1 -0
  107. package/dist/client/assets/NodeMenu-Fw8ATWQA.js +1 -0
  108. package/dist/client/assets/ObserveEmbedScreen-BPiSXXvm.js +2 -0
  109. package/dist/client/assets/{ObserveTextFlow-BcrGQet8.js → ObserveTextFlow-ET0dD1wO.js} +2 -2
  110. package/dist/client/assets/{ObservedTopologyPanel-BhVsvwkh.js → ObservedTopologyPanel-DkEkQzo-.js} +1 -1
  111. package/dist/client/assets/OpenScoutAppShell-CzKbjwCA.js +22 -0
  112. package/dist/client/assets/OpsAgentsView-CZbtkcQH.js +1 -0
  113. package/dist/client/assets/OpsScreen-DJq-aBmX.js +1 -0
  114. package/dist/client/assets/OpsSubnav-9sURjajO.js +1 -0
  115. package/dist/client/assets/ProjectAgentProfile-q_1tMJIL.js +1 -0
  116. package/dist/client/assets/ProjectAgentProfileBar-C1fR65Eh.js +1 -0
  117. package/dist/client/assets/ProjectAgentProfileHero-DyEFyTFs.js +1 -0
  118. package/dist/client/assets/ProjectsInbox-Bs8I__my.js +2 -0
  119. package/dist/client/assets/ProjectsRail-Deb38OJ1.js +1 -0
  120. package/dist/client/assets/ProjectsScreen-CgLiYiss.js +1 -0
  121. package/dist/client/assets/ProjectsThreadAside-C0Yw3yIL.js +1 -0
  122. package/dist/client/assets/Provider-5Hotn7NQ.js +5 -0
  123. package/dist/client/assets/{RailRow-B0sRaJc6.css → RailRow-B25zKEub.css} +1 -1
  124. package/dist/client/assets/RailRow-BYguXNm4.js +1 -0
  125. package/dist/client/assets/RawSessionsTable-DIhmlvk-.js +1 -0
  126. package/dist/client/assets/RealtimeVoiceScreen-3oU7b7V5.js +1 -0
  127. package/dist/client/assets/RenderedWorkerSprite-CvdWO32C.js +1 -0
  128. package/dist/client/assets/RenderedWorkerSprite-qnTfkd_4.css +1 -0
  129. package/dist/client/assets/ReplayClock-B7JLTp8A.js +1 -0
  130. package/dist/client/assets/ReplayLog-DZTpf2CW.js +1 -0
  131. package/dist/client/assets/ReplayOutpost-CvWQa30T.js +1 -0
  132. package/dist/client/assets/ReplayOutpost-Y1DvZgeu.css +1 -0
  133. package/dist/client/assets/{RepoDiffEmbedScreen-CjZ5ew3y.js → RepoDiffEmbedScreen-Cbu0_PJW.js} +1 -1
  134. package/dist/client/assets/{RepoDiffPageScreen-CdTFfmbk.js → RepoDiffPageScreen-Chwm6GXL.js} +1 -1
  135. package/dist/client/assets/RepoDiffViewer-C2mb0Wj-.js +7 -0
  136. package/dist/client/assets/RepoDiffViewerLazy-BQ6ZCrsq.js +2 -0
  137. package/dist/client/assets/{ReposScreen-C8dT4bK0.js → ReposScreen-C7JZQmyh.js} +2 -2
  138. package/dist/client/assets/RiggedWorkerCharacter-BpYECnyK.css +1 -0
  139. package/dist/client/assets/RiggedWorkerCharacter-DNe731GE.js +1 -0
  140. package/dist/client/assets/SageModelStudio-768dRQr4.css +1 -0
  141. package/dist/client/assets/SageModelStudio-BR1J2D4R.js +4108 -0
  142. package/dist/client/assets/ScoutDeckSurface-flRamdvE.js +1 -0
  143. package/dist/client/assets/{ScoutSurface-DmzEtrx8.js → ScoutSurface-BpklGmDL.js} +1 -1
  144. package/dist/client/assets/{ScoutbotFxLab-DU15Plja.js → ScoutbotFxLab-DeK7ySWZ.js} +1 -1
  145. package/dist/client/assets/{SecondaryNav-BrXMtvKE.js → SecondaryNav-BkTn5tkq.js} +1 -1
  146. package/dist/client/assets/SessionEmbedScreen-CcQN6xlo.js +1 -0
  147. package/dist/client/assets/{SessionObserve-CLrHfAKZ.css → SessionObserve-BOBJSfs0.css} +1 -1
  148. package/dist/client/assets/SessionObserve-DaqDhqDI.js +12 -0
  149. package/dist/client/assets/SessionObserveEvidence-Drv-D8Oh.js +1 -0
  150. package/dist/client/assets/SessionRefScreen-BOQ1_ydg.js +1 -0
  151. package/dist/client/assets/SessionsScreen-R8QKvoey.js +1 -0
  152. package/dist/client/assets/SettingsDrawer-BDapR4E9.js +3 -0
  153. package/dist/client/assets/SettingsScreen-DirtO7Z0.js +1 -0
  154. package/dist/client/assets/SharedFloorCharacter-Bi5_md4R.css +1 -0
  155. package/dist/client/assets/SharedFloorCharacter-CSYG_t9t.js +1 -0
  156. package/dist/client/assets/SharedWorkFloor-BCmdeb3Q.css +1 -0
  157. package/dist/client/assets/SharedWorkFloor-yPWFLZwX.js +2 -0
  158. package/dist/client/assets/{ShikiPane-DPWsVNtn.js → ShikiPane-BudrOxNK.js} +1 -1
  159. package/dist/client/assets/{SlidePanel-BMRIR6bH.js → SlidePanel-Datu7XG4.js} +1 -1
  160. package/dist/client/assets/SpriteAvatar-BW1JzkDt.js +1 -0
  161. package/dist/client/assets/SproutActionSprite-DveCzg6l.js +1 -0
  162. package/dist/client/assets/{StatusPill-BcuYUgsD.js → StatusPill-MxYClPG5.js} +1 -1
  163. package/dist/client/assets/{TailView-BDy8c2VB.js → TailView-Dn7uWmPz.js} +2 -2
  164. package/dist/client/assets/Terminal-D-DsQlmV.js +4 -0
  165. package/dist/client/assets/TerminalEmbedScreen-9Gmln759.js +1 -0
  166. package/dist/client/assets/TerminalHeaderMount-DCGstkZ4.js +1 -0
  167. package/dist/client/assets/{TextDocumentSurface-BeSwe3Yl.js → TextDocumentSurface-BhYvAB0o.js} +1 -1
  168. package/dist/client/assets/{TmuxPeek-B4no_aGI.js → TmuxPeek-BhK0V9Qt.js} +1 -1
  169. package/dist/client/assets/{VoicePermissionsPanel-Bd16scwz.js → VoicePermissionsPanel-CecFWzva.js} +1 -1
  170. package/dist/client/assets/{WorkDetailScreen-DIFQufak.js → WorkDetailScreen-CwtRCm_-.js} +4 -4
  171. package/dist/client/assets/WorkFilesViewer-DJHftsH9.js +1 -0
  172. package/dist/client/assets/WorkRunView-CxwAZ2QQ.css +1 -0
  173. package/dist/client/assets/WorkRunView-x5PH1byG.js +1 -0
  174. package/dist/client/assets/WorldActorTalk-uIH2jGqA.js +1 -0
  175. package/dist/client/assets/WorldCharacter-Dn4sIXNP.js +1 -0
  176. package/dist/client/assets/WorldMinimap-Blqg0d5r.js +1 -0
  177. package/dist/client/assets/WorldSky-DV9bpvXj.js +1 -0
  178. package/dist/client/assets/{activity-CqZafWfx.js → activity-CSUhvjD0.js} +1 -1
  179. package/dist/client/assets/{addon-fit-CM6F_JRD.js → addon-fit-MR98IWES.js} +1 -1
  180. package/dist/client/assets/{addon-webgl-DRTiePFC.js → addon-webgl-CIIKXrvK.js} +1 -1
  181. package/dist/client/assets/adventure-evidence-DgQbBmfa.css +1 -0
  182. package/dist/client/assets/adventure-habitats-v1-CVMbdB_Z.png +0 -0
  183. package/dist/client/assets/adventure-habitats-v1-M1lcpTJh.js +1 -0
  184. package/dist/client/assets/adventure-playback-DTfkhIc0.js +3 -0
  185. package/dist/client/assets/adventure-reader-DM5UDDm9.css +1 -0
  186. package/dist/client/assets/agent-adventures-DZtWpj6k.css +1 -0
  187. package/dist/client/assets/agent-autocomplete-CeHQpuG9.js +10 -0
  188. package/dist/client/assets/{agent-essentials-vytdybaX.js → agent-essentials-8t2il7PV.js} +1 -1
  189. package/dist/client/assets/{agent-floor-CuJr1iK1.css → agent-floor-Dmr9hZHL.css} +1 -1
  190. package/dist/client/assets/agent-floor-actor-3v9drnxh.js +1 -0
  191. package/dist/client/assets/agent-floor-world-Bnd1AtwK.css +1 -0
  192. package/dist/client/assets/agent-floor-world-layout-hfMjuoui.js +1 -0
  193. package/dist/client/assets/agent-lane-card-model-l0stnU9N.js +1 -0
  194. package/dist/client/assets/{agent-lane-detail-ppJId6Jc.js → agent-lane-detail-Db7KyAlf.js} +1 -1
  195. package/dist/client/assets/{agent-lane-preview-BhplDYGf.js → agent-lane-preview-B8lsQJOQ.js} +1 -1
  196. package/dist/client/assets/{agent-lanes-DlqcEf0l.css → agent-lanes-DmgipV9D.css} +1 -1
  197. package/dist/client/assets/agent-lanes-model-CX0wTcnF.js +4 -0
  198. package/dist/client/assets/agent-master-THmq-1k8.css +1 -0
  199. package/dist/client/assets/agent-master-model-C-KdOFDK.js +1 -0
  200. package/dist/client/assets/agent-specialization-CiVxQsFT.js +1 -0
  201. package/dist/client/assets/agent-state-DDhnFEEP.js +1 -0
  202. package/dist/client/assets/{api-HFH8wFyb.js → api-B9_IqFKY.js} +1 -1
  203. package/dist/client/assets/api-CaROe5_H.js +1 -0
  204. package/dist/client/assets/{arc.es-Bh84oHJ7.js → arc.es-BzhWalCl.js} +1 -1
  205. package/dist/client/assets/{arrow-down-DvTsLokL.js → arrow-down-WoVlkUmg.js} +1 -1
  206. package/dist/client/assets/{arrow-left-DHfdXJVZ.js → arrow-left-PuKdO3NM.js} +1 -1
  207. package/dist/client/assets/{arrow-right-BBsrogWf.js → arrow-right-ldbfp4SZ.js} +1 -1
  208. package/dist/client/assets/{arrow-up-right-CY0Vw_67.js → arrow-up-right-Hn754ybA.js} +1 -1
  209. package/dist/client/assets/book-open-BlJnpf2U.js +1 -0
  210. package/dist/client/assets/{bot-DzkOUFBb.js → bot-CfN9PSBF.js} +1 -1
  211. package/dist/client/assets/broker-display-BkBzyvbR.js +2 -0
  212. package/dist/client/assets/{cache-CeWH_KzJ.js → cache-DEy9E34b.js} +1 -1
  213. package/dist/client/assets/{check-DbIkldnK.js → check-B8dMv3Is.js} +1 -1
  214. package/dist/client/assets/{chevron-down-C475vltS.js → chevron-down-B5eMsn5c.js} +1 -1
  215. package/dist/client/assets/{chevron-right-CnZRSd-V.js → chevron-right-C7UGFpkl.js} +1 -1
  216. package/dist/client/assets/chevron-up-BHOEgHcn.js +1 -0
  217. package/dist/client/assets/{chunk-HRAB3GC3-DLNT8aOo.js → chunk-HRAB3GC3-C5X-kFhb.js} +1 -1
  218. package/dist/client/assets/chunk-JTPDIGGW-ZC-98AHT.js +46 -0
  219. package/dist/client/assets/{chunk-T65CQEWV-BtNvicWs.js → chunk-T65CQEWV-CSVUz2rY.js} +1 -1
  220. package/dist/client/assets/chunk-YOZR3KYS-B59jqwO0.js +2 -0
  221. package/dist/client/assets/{clock-DVvENUU5.js → clock-DFcRbtrl.js} +1 -1
  222. package/dist/client/assets/{code-xml-CvKBY3KA.js → code-xml-BmyLM0I2.js} +1 -1
  223. package/dist/client/assets/coffee-C_D9zooM.js +1 -0
  224. package/dist/client/assets/colors-CFlbwC25.js +1 -0
  225. package/dist/client/assets/comms-deck-C8nVeMBh.css +1 -0
  226. package/dist/client/assets/comms-deck-CBhsXnY-.js +2 -0
  227. package/dist/client/assets/comms-gesture-_aGFo6g3.js +2 -0
  228. package/dist/client/assets/{compass-BcRI_YXo.js → compass-DTZdCpv9.js} +1 -1
  229. package/dist/client/assets/content-B5Q4pb9R.js +1 -0
  230. package/dist/client/assets/content-BK1IfOZs.js +1 -0
  231. package/dist/client/assets/content-BeEsWLEm.js +1 -0
  232. package/dist/client/assets/content-BkOwEknW.js +1 -0
  233. package/dist/client/assets/content-C32W5kAG.js +1 -0
  234. package/dist/client/assets/content-CoqyLs9v.js +1 -0
  235. package/dist/client/assets/content-CwpdIS5b.js +1 -0
  236. package/dist/client/assets/content-DS2OkJ3Q.js +1 -0
  237. package/dist/client/assets/content-DXKaPDfn.js +1 -0
  238. package/dist/client/assets/content-DZt5-dkI.js +1 -0
  239. package/dist/client/assets/content-DbQJH8L1.js +1 -0
  240. package/dist/client/assets/content-DetoiaHq.js +1 -0
  241. package/dist/client/assets/content-Dhu3wL7J.js +1 -0
  242. package/dist/client/assets/content-Dpv34iZu.js +1 -0
  243. package/dist/client/assets/content-TtQJb61D.js +1 -0
  244. package/dist/client/assets/content-ymNb2R7g.js +1 -0
  245. package/dist/client/assets/{context-budget-DX_fwUs3.js → context-budget-DemtXu7E.js} +1 -1
  246. package/dist/client/assets/{conversation-icons-CBMKBGHd.js → conversation-icons-BQ4OeOmr.js} +1 -1
  247. package/dist/client/assets/conversation-model-BGFHoxQ0.js +1 -0
  248. package/dist/client/assets/conversation-motion-features-9x8uZpwh.js +1 -0
  249. package/dist/client/assets/conversations-Cbg9h_Af.js +1 -0
  250. package/dist/client/assets/{copy-Cj-owMb-.js → copy-D9WUpQRf.js} +1 -1
  251. package/dist/client/assets/{cpu-DuD3RFX5.js → cpu-Ck_4tB_-.js} +1 -1
  252. package/dist/client/assets/{createLucideIcon-DthwWQIg.js → createLucideIcon-DkjnzvcJ.js} +1 -1
  253. package/dist/client/assets/{credentials-BTce3VP1.js → credentials-C4VXz2hr.js} +1 -1
  254. package/dist/client/assets/discover-C8IOY7_K.js +2 -0
  255. package/dist/client/assets/embed-entry-CG3CfCbm.js +2 -0
  256. package/dist/client/assets/embed-navigation-DayfkQau.js +1 -0
  257. package/dist/client/assets/{external-link-C_nxk0MJ.js → external-link-RT4Ph-6-.js} +1 -1
  258. package/dist/client/assets/{eye-FnaaPfja.js → eye-CtqSV8BS.js} +1 -1
  259. package/dist/client/assets/{file-code-corner-DDPq4Cur.js → file-code-corner-D_Aptal2.js} +1 -1
  260. package/dist/client/assets/{file-text--hfhwZH1.js → file-text-ChtICwub.js} +1 -1
  261. package/dist/client/assets/flag-CqdOxVkI.js +1 -0
  262. package/dist/client/assets/floor-character-name-CqJPOlXb.js +1 -0
  263. package/dist/client/assets/floor-context-model-DZBpo_oD.js +1 -0
  264. package/dist/client/assets/floor-context-sheet-BFnkFiY3.css +1 -0
  265. package/dist/client/assets/floor-memory-YMM8AlLY.js +1 -0
  266. package/dist/client/assets/floor-message-passes-CJh9f8Jp.js +1 -0
  267. package/dist/client/assets/floor-preview-text-HrORUJ7D.js +1 -0
  268. package/dist/client/assets/floor-replay-CccYqE-f.css +1 -0
  269. package/dist/client/assets/floor-tactical-hud-HL5Vja5Y.css +1 -0
  270. package/dist/client/assets/folder-0fWevPvQ.js +1 -0
  271. package/dist/client/assets/{gauge-BVEknshP.js → gauge-Dgtfxf_o.js} +1 -1
  272. package/dist/client/assets/{gestures-3gw5VgUS.js → gestures-BDCZ1FRG.js} +1 -1
  273. package/dist/client/assets/{git-branch-DJyvr0k-.js → git-branch-CA3cHKCI.js} +1 -1
  274. package/dist/client/assets/go-shortcuts-DKtw4qYx.js +1 -0
  275. package/dist/client/assets/home-moving-signal-B7m-ngb2.js +1 -0
  276. package/dist/client/assets/home-now-card-DduXkHRR.js +1 -0
  277. package/dist/client/assets/{home-now-card-nano-G8kMB32m.js → home-now-card-nano-D1ScGrgv.js} +1 -1
  278. package/dist/client/assets/hooks-C6VyQTQe.js +2 -0
  279. package/dist/client/assets/{hooks-D6NI15f6.css → hooks-D787lBmm.css} +1 -1
  280. package/dist/client/assets/index-C5cX8dkl.js +1 -0
  281. package/dist/client/assets/{index-BI9AljSD.js → index-C8uS5szO.js} +5 -5
  282. package/dist/client/assets/index-Ck1__1yL.css +1 -0
  283. package/dist/client/assets/index-ClOOrVG1.js +1 -0
  284. package/dist/client/assets/index-Crtgfc9I.js +1 -0
  285. package/dist/client/assets/index-CvsM3jm8.js +1 -0
  286. package/dist/client/assets/{inspector-panel-CFSArQ8Y.js → inspector-panel-BLhDODb3.js} +2 -2
  287. package/dist/client/assets/{keyboard-nav-e6yGeorb.js → keyboard-nav-CXfav14z.js} +1 -1
  288. package/dist/client/assets/knowledge-search-BNdQweGz.css +1 -0
  289. package/dist/client/assets/{lane-edit-display-C_Aujldz.js → lane-edit-display-BjdT9oZl.js} +1 -1
  290. package/dist/client/assets/{lane-observe-vfyACHi0.js → lane-observe-BD21P8BB.js} +2 -2
  291. package/dist/client/assets/lane-roster-store-DzNHP392.js +1 -0
  292. package/dist/client/assets/{lane-tool-detail-0WhMf4Vj.js → lane-tool-detail-Czggx8oM.js} +1 -1
  293. package/dist/client/assets/{layers-Dz2dKOnU.js → layers-Bolb8ejU.js} +1 -1
  294. package/dist/client/assets/{layout-grid-Bvs5fdB4.js → layout-grid-DI9tVJ2E.js} +1 -1
  295. package/dist/client/assets/left-B-_z_nqj.js +2 -0
  296. package/dist/client/assets/left-B1LY7rJc.js +1 -0
  297. package/dist/client/assets/{left-DH44V4I_.css → left-BV9yMiTL.css} +1 -1
  298. package/dist/client/assets/left-C6bdjWcG.js +2 -0
  299. package/dist/client/assets/left-CF4iuqlz.js +1 -0
  300. package/dist/client/assets/left-DLtNyZl1.js +1 -0
  301. package/dist/client/assets/left-Fpxoq-VY.js +1 -0
  302. package/dist/client/assets/left-N2wXfTlp.js +1 -0
  303. package/dist/client/assets/left-advisor-CeIjCKbd.js +1 -0
  304. package/dist/client/assets/left-agents-upjHVlOj.js +1 -0
  305. package/dist/client/assets/left-default-08gmdCtb.js +1 -0
  306. package/dist/client/assets/left-lanes-Cvsp73Hw.js +1 -0
  307. package/dist/client/assets/left-mission-DENnfshd.css +1 -0
  308. package/dist/client/assets/left-mission-W1LLaz74.js +1 -0
  309. package/dist/client/assets/library-DLKBVUJ6.js +1 -0
  310. package/dist/client/assets/{loader-circle-B2W9DPG5.js → loader-circle-DurUYl7E.js} +1 -1
  311. package/dist/client/assets/{local-agents-DKr-gIDC.js → local-agents-D9fYYRyj.js} +1 -1
  312. package/dist/client/assets/machine-children-RGS4Q0r6.js +1 -0
  313. package/dist/client/assets/machine-scope-DJt9RZ2w.js +1 -0
  314. package/dist/client/assets/mentions-Ctw1ECUC.js +1 -0
  315. package/dist/client/assets/{mesh-ops-CRR-KnCG.js → mesh-ops-CGpRk4ik.js} +1 -1
  316. package/dist/client/assets/{mesh-screen-D1Yvo8fU.css → mesh-screen-DjA4mOaN.css} +1 -1
  317. package/dist/client/assets/mesh-view-store-CliSYsmt.js +1 -0
  318. package/dist/client/assets/{message-circle-B2DoYKDO.js → message-circle-CSiJj6yo.js} +1 -1
  319. package/dist/client/assets/{message-markup-Cc_O-WdA.js → message-markup-DgFSyb3f.js} +1 -1
  320. package/dist/client/assets/{message-square-O-Hu9Mk2.js → message-square-NmXWtWLR.js} +1 -1
  321. package/dist/client/assets/{message-visibility-CGOmSSKs.js → message-visibility-DwxgcgYK.js} +1 -1
  322. package/dist/client/assets/mission-control-CsX3Yc58.css +1 -0
  323. package/dist/client/assets/mission-control-model-C30vU1Fe.js +1 -0
  324. package/dist/client/assets/mission-control-store-DZ29Mlj1.js +1 -0
  325. package/dist/client/assets/{mission-wall-CocIM1cF.js → mission-wall-DOuGOxQy.js} +1 -1
  326. package/dist/client/assets/model-CBkMvT1w.js +1 -0
  327. package/dist/client/assets/nav-destinations-CyXnw9kh.js +1 -0
  328. package/dist/client/assets/observe-CkfOxYx_.js +1 -0
  329. package/dist/client/assets/{operator-attention-RqieiSY8.js → operator-attention-DGR4kOog.js} +1 -1
  330. package/dist/client/assets/ops-screen-CxYM0VOW.css +1 -0
  331. package/dist/client/assets/page-status-CkS3SZu-.js +1 -0
  332. package/dist/client/assets/panel-right-BNTJhy8M.js +1 -0
  333. package/dist/client/assets/pause-DWS7YGQ3.js +1 -0
  334. package/dist/client/assets/{persistent-state-xJz-qAFc.js → persistent-state-xsuk6Kc-.js} +1 -1
  335. package/dist/client/assets/pin-DWlD1BOF.js +1 -0
  336. package/dist/client/assets/pip-idle-v1-Tt-CZsRG.png +0 -0
  337. package/dist/client/assets/pip-thinking-v1-BoHWSEye.png +0 -0
  338. package/dist/client/assets/pip-waiting-v1-DkuvJ-dN.png +0 -0
  339. package/dist/client/assets/pip-working-v1-wWQLRS1z.png +0 -0
  340. package/dist/client/assets/play-D_Pggug4.js +1 -0
  341. package/dist/client/assets/{plus-BJ1If8vj.js → plus-D_wLGJGT.js} +1 -1
  342. package/dist/client/assets/profile-C3KgiZvc.js +1 -0
  343. package/dist/client/assets/projects-inbox-BIW7nv-H.css +1 -0
  344. package/dist/client/assets/projects-inbox-DvbqJO3q.js +1 -0
  345. package/dist/client/assets/{proxy-1BABCaDb.js → proxy-DOG46ja4.js} +1 -1
  346. package/dist/client/assets/{radio-B5OpHrrK.js → radio-C_jtwbFP.js} +1 -1
  347. package/dist/client/assets/{refresh-cw-DmNAhaH0.js → refresh-cw-Da9DDLk2.js} +1 -1
  348. package/dist/client/assets/resolve-panes-DuowGRTk.js +1 -0
  349. package/dist/client/assets/resolve-sidebar-context-BkTbqteq.js +1 -0
  350. package/dist/client/assets/right-B9OUA6Ho.js +1 -0
  351. package/dist/client/assets/right-BDQnjetX.js +1 -0
  352. package/dist/client/assets/{right-D8id_DWQ.js → right-BLJsc2-p.js} +2 -2
  353. package/dist/client/assets/right-BUbKHmRH.js +1 -0
  354. package/dist/client/assets/right-Ci2IcD4s.js +1 -0
  355. package/dist/client/assets/right-CmCce3e5.js +1 -0
  356. package/dist/client/assets/right-D7w0zM5a.js +1 -0
  357. package/dist/client/assets/right-DIoON_bv.js +1 -0
  358. package/dist/client/assets/right-E0Jr3VN5.js +1 -0
  359. package/dist/client/assets/right-lCdAk9dW.js +1 -0
  360. package/dist/client/assets/{rocket-D3-TUJ2m.js → rocket-DyrYDo8V.js} +1 -1
  361. package/dist/client/assets/router-BKiMcYa7.js +1 -0
  362. package/dist/client/assets/{text-BYAFNLNq.css → runtime-picker-C3JwrDKP.css} +1 -1
  363. package/dist/client/assets/runtime-picker-DdsttHHc.js +1 -0
  364. package/dist/client/assets/{scope-views-CPM0sBw_.js → scope-views-B7PZGlhY.js} +1 -1
  365. package/dist/client/assets/scout-voice-DOQ_B77g.js +1 -0
  366. package/dist/client/assets/scoutbot-Bk3nyrkj.js +3 -0
  367. package/dist/client/assets/{scoutbot-markdown-CQ7Y1McC.js → scoutbot-markdown-Bz0Vbto2.js} +1 -1
  368. package/dist/client/assets/{scroll-text-kPhYbh-M.js → scroll-text-DwC8r2g6.js} +1 -1
  369. package/dist/client/assets/{search-DmFM_9jm.js → search-C4VlW_0l.js} +1 -1
  370. package/dist/client/assets/secondaryNavConfig-DAXIFtVd.js +1 -0
  371. package/dist/client/assets/{selection-bridge-Dy2mtMyi.js → selection-bridge-B5jqyMR9.js} +1 -1
  372. package/dist/client/assets/{send-horizontal-qyjNgEaV.js → send-horizontal-pOtGI7FM.js} +1 -1
  373. package/dist/client/assets/send-to-agent-session-BZGq_ycy.js +1 -0
  374. package/dist/client/assets/{server-nWqndnxu.js → server-ms1yxUYJ.js} +1 -1
  375. package/dist/client/assets/{session-catalog-BkmktBHI.js → session-catalog-s-T_w41t.js} +1 -1
  376. package/dist/client/assets/{session-table-DKSF0mrS.js → session-table-CDx_16xf.js} +1 -1
  377. package/dist/client/assets/sessions-view-DzYGsKWS.js +1 -0
  378. package/dist/client/assets/{settings-C6h9y5XX.js → settings-TJIkkZ0P.js} +1 -1
  379. package/dist/client/assets/shared-work-artifacts-4IIQXQfc.js +1 -0
  380. package/dist/client/assets/{sliders-horizontal-BhHKxsCO.js → sliders-horizontal-CHf3ntw0.js} +1 -1
  381. package/dist/client/assets/solar-system-scope-2k-stars-points-1FwHnkj0.png +0 -0
  382. package/dist/client/assets/{sparkles-Cf8gin88.js → sparkles-BbOFw3d0.js} +1 -1
  383. package/dist/client/assets/sprout-action-sprite-DZ8C0fTl.css +1 -0
  384. package/dist/client/assets/sprout-actions-proof-v1-BzUdc812.png +0 -0
  385. package/dist/client/assets/{sse-DDHEHUgz.js → sse-v5QLsOHV.js} +1 -1
  386. package/dist/client/assets/system-surfaces-redesign-DKFg4GB5.css +1 -0
  387. package/dist/client/assets/{tail-display-DcliDVkW.js → tail-display-DHSNmvor.js} +2 -2
  388. package/dist/client/assets/{tail-events-BdUrO0kb.js → tail-events-DQ46QBW1.js} +1 -1
  389. package/dist/client/assets/{terminal-C3YRPfyz.js → terminal-96JWDYDL.js} +1 -1
  390. package/dist/client/assets/{terminal-relay-BFhdIstF.js → terminal-relay-Bfx8pg80.js} +1 -1
  391. package/dist/client/assets/terminal-screen-Bpb2SZrn.css +1 -0
  392. package/dist/client/assets/{terminal-sessions-BQ6t92tJ.js → terminal-sessions-Ch9aYlgi.js} +1 -1
  393. package/dist/client/assets/{terminal-takeover-B6H4llRR.js → terminal-takeover-BlpxpvSp.js} +1 -1
  394. package/dist/client/assets/use-beside-Df-F2Uvg.js +1 -0
  395. package/dist/client/assets/use-conversation-list-A_YUf8lo.js +1 -0
  396. package/dist/client/assets/{use-fleet-active-asks-BtgNnRgK.js → use-fleet-active-asks-DFs_u-vM.js} +1 -1
  397. package/dist/client/assets/use-mesh-node-state-Ck9CYplv.js +1 -0
  398. package/dist/client/assets/{use-mesh-ops-items-N1HHhChY.js → use-mesh-ops-items-Be1WmwCg.js} +1 -1
  399. package/dist/client/assets/{use-reduced-motion-8WuxLa5l.js → use-reduced-motion-D7n3vK8t.js} +1 -1
  400. package/dist/client/assets/use-scout-dev-flags-0TXfQcG0.js +1 -0
  401. package/dist/client/assets/{useAgentHoverCard-Bkv-Uz_V.js → useAgentHoverCard-Dr-OjNFF.js} +1 -1
  402. package/dist/client/assets/useContentSecondaryNav-CGvMOVGY.js +1 -0
  403. package/dist/client/assets/useEmbedHeadline-BL8wQawZ.js +1 -0
  404. package/dist/client/assets/{usePierreRuntime-BfZHKAkI.js → usePierreRuntime-DJkRHMoe.js} +1 -1
  405. package/dist/client/assets/worker-rendered-v1-DmGVMlVi.png +0 -0
  406. package/dist/client/assets/worker-thinking-v1-ujakpzrK.png +0 -0
  407. package/dist/client/assets/worker-waiting-v1-DbTSsfJJ.png +0 -0
  408. package/dist/client/assets/worker-working-v1-BROAvJ_z.png +0 -0
  409. package/dist/client/assets/world-outposts-v1-DOt0i98W.png +0 -0
  410. package/dist/client/assets/{wrench-DkxnZRlR.js → wrench-BsMTSeji.js} +1 -1
  411. package/dist/client/assets/{x-DfRJbqrh.js → x-DI1ktCYb.js} +1 -1
  412. package/dist/client/assets/{xterm-CJw8Epxv.js → xterm-B1YBE4Gq.js} +1 -1
  413. package/dist/client/assets/{zap-CIo8msJB.js → zap-sKPkh4sQ.js} +1 -1
  414. package/dist/client/characters/sage/sage.glb +0 -0
  415. package/dist/client/crew/brik-bust.webp +0 -0
  416. package/dist/client/crew/brik-chip-id.webp +0 -0
  417. package/dist/client/crew/fenn-bust.webp +0 -0
  418. package/dist/client/crew/fenn-chip-id.webp +0 -0
  419. package/dist/client/crew/lulu-bust.webp +0 -0
  420. package/dist/client/crew/milo-bust.webp +0 -0
  421. package/dist/client/crew/milo-chip-id.webp +0 -0
  422. package/dist/client/crew/nori-bust.webp +0 -0
  423. package/dist/client/crew/pip-bust.webp +0 -0
  424. package/dist/client/crew/pip-chip-id.webp +0 -0
  425. package/dist/client/crew/sheets/eye-plate-v1/blink-half.webp +0 -0
  426. package/dist/client/crew/sheets/eye-plate-v1/blink-shut.webp +0 -0
  427. package/dist/client/crew/sheets/eye-plate-v1/look-left.webp +0 -0
  428. package/dist/client/crew/sheets/eye-plate-v1/look-right.webp +0 -0
  429. package/dist/client/crew/sheets/eye-plate-v1/look-up.webp +0 -0
  430. package/dist/client/crew/sheets/eye-plate-v1/rest.webp +0 -0
  431. package/dist/client/crew/sheets/sprout/blink-half.webp +0 -0
  432. package/dist/client/crew/sheets/sprout/blink-shut.webp +0 -0
  433. package/dist/client/crew/sheets/sprout/look-left.webp +0 -0
  434. package/dist/client/crew/sheets/sprout/look-right.webp +0 -0
  435. package/dist/client/crew/sheets/sprout/look-up.webp +0 -0
  436. package/dist/client/crew/sprout-bust.webp +0 -0
  437. package/dist/client/crew/sprout-chip-id.webp +0 -0
  438. package/dist/client/crew/tuck-bust.webp +0 -0
  439. package/dist/client/crew/tuck-chip-id.webp +0 -0
  440. package/dist/client/crew/vex-bust.webp +0 -0
  441. package/dist/client/crew/vex-chip-id.webp +0 -0
  442. package/dist/client/crew/wrench-bust.webp +0 -0
  443. package/dist/client/crew/wrench-chip-id.webp +0 -0
  444. package/dist/client/index.html +2 -2
  445. package/dist/drizzle/0017_wise_silver_sable.sql +26 -0
  446. package/dist/drizzle/0018_message_epoch_order.sql +1 -0
  447. package/dist/drizzle/meta/0017_snapshot.json +6785 -0
  448. package/dist/drizzle/meta/0018_snapshot.json +6804 -0
  449. package/dist/drizzle/meta/_journal.json +14 -0
  450. package/dist/main.mjs +33938 -36054
  451. package/dist/node/main.mjs +7126 -6317
  452. package/dist/openscout-terminal-relay.mjs +391 -9
  453. package/dist/pairing-runtime-controller.mjs +35559 -34443
  454. package/dist/runtime/base-daemon.mjs +31 -8
  455. package/dist/runtime/broker-daemon.mjs +7891 -2579
  456. package/dist/runtime/broker-process-manager.mjs +15 -3
  457. package/dist/runtime/mesh-discover.mjs +14 -3
  458. package/dist/scout-control-plane-web.mjs +43027 -39136
  459. package/dist/statusline.mjs +1021 -35
  460. package/dist/update-helper.mjs +32169 -0
  461. package/package.json +2 -5
  462. package/dist/client/assets/ActivityScreen-y-5DLleY.js +0 -1
  463. package/dist/client/assets/AgentAvatar-B7c0egdP.js +0 -1
  464. package/dist/client/assets/AgentConfigurationScreen-BD7Unt2P.js +0 -1
  465. package/dist/client/assets/AgentDefinitionsWorkspace-BbcZc9Xk.js +0 -1
  466. package/dist/client/assets/AgentDetailCard-B_KLcgsP.js +0 -1
  467. package/dist/client/assets/AgentFloorView-DMFiHs21.js +0 -1
  468. package/dist/client/assets/AgentInfoScreen-DHGLRddI.js +0 -1
  469. package/dist/client/assets/AgentLanesEmbedScreen-C5k_dDS8.js +0 -1
  470. package/dist/client/assets/AgentLanesView-u5vpLwQf.js +0 -2
  471. package/dist/client/assets/AgentLiveActions-CsQA3pu_.js +0 -1
  472. package/dist/client/assets/AgentMasterScreen-C5WlWNmk.js +0 -1
  473. package/dist/client/assets/AgentSessions-BePq5Lgc.js +0 -6
  474. package/dist/client/assets/AgentsConsole-BuiZ_bDo.js +0 -1
  475. package/dist/client/assets/AgentsScreen-CRi-hG2k.js +0 -1
  476. package/dist/client/assets/AgentsSubnav-DUsya4WK.js +0 -1
  477. package/dist/client/assets/AtopView-PxWQd-sX.js +0 -1
  478. package/dist/client/assets/BackToPicker-Cto0Ioz9.js +0 -1
  479. package/dist/client/assets/BriefingDetailScreen-C29smC5d.js +0 -1
  480. package/dist/client/assets/BriefingsScreen-DNyFBrPn.js +0 -1
  481. package/dist/client/assets/BrokerScreen-CS0s4Gm4.js +0 -5
  482. package/dist/client/assets/ChatCollapsedStrip-D4rc7wBQ.js +0 -1
  483. package/dist/client/assets/CodeScreen-CrR2JaVj.js +0 -1
  484. package/dist/client/assets/ConversationComposer-H8_hsYSc.js +0 -1
  485. package/dist/client/assets/ConversationFeedRows-hlEFlURs.js +0 -1
  486. package/dist/client/assets/ConversationHeader-B0ZBhE_E.js +0 -1
  487. package/dist/client/assets/ConversationPanels-fMo6Uy1v.js +0 -6
  488. package/dist/client/assets/ConversationScreen-CXAHQwQ3.js +0 -2
  489. package/dist/client/assets/ConversationScreen-CkWnKXt6.css +0 -1
  490. package/dist/client/assets/ConversationStatus-DI5GCiyW.js +0 -1
  491. package/dist/client/assets/CrewWorkspaces-Bz2Dcnt4.js +0 -1
  492. package/dist/client/assets/DispatchAftermath-CrELgl2e.js +0 -1
  493. package/dist/client/assets/DocumentFocusViewer-DFFE85Tq.js +0 -1
  494. package/dist/client/assets/FlightObserveScreen-qyzHzxLa.js +0 -1
  495. package/dist/client/assets/FollowScreen-wZ-z67mX.js +0 -1
  496. package/dist/client/assets/HarnessesScreen-DbKkQM4o.js +0 -1
  497. package/dist/client/assets/HostAdvisorView-NtM0bsg8.js +0 -1
  498. package/dist/client/assets/KnowledgeSearchInspector-CU6BCFcS.js +0 -1
  499. package/dist/client/assets/KnowledgeSearchScreen-DvbRRPQB.js +0 -1
  500. package/dist/client/assets/LaneTraceDetailSheet-C3C8UjXv.js +0 -1
  501. package/dist/client/assets/MeshCanvas-TvsID4fe.js +0 -3
  502. package/dist/client/assets/MeshCanvasMinimap-CxqeVVco.js +0 -1
  503. package/dist/client/assets/MeshScreen-BJ-j9YXv.js +0 -1
  504. package/dist/client/assets/MessagesScreen-CyNIZ3-X.js +0 -1
  505. package/dist/client/assets/MissionContextRail-Be0uXljQ.js +0 -1
  506. package/dist/client/assets/MissionControlView-Bj7cAbZd.js +0 -1
  507. package/dist/client/assets/MissionFocusOverlay-DvTw6ts5.js +0 -1
  508. package/dist/client/assets/MissionLeftAgentRow-B0QG7Gys.js +0 -1
  509. package/dist/client/assets/MissionLogPane-EsM_S3ro.js +0 -1
  510. package/dist/client/assets/NewAgentModal-Cqiq1CE1.js +0 -1
  511. package/dist/client/assets/NewChatComposer-C_1op4dH.js +0 -19
  512. package/dist/client/assets/ObserveEmbedScreen-CGHI_hb5.js +0 -2
  513. package/dist/client/assets/OpenScoutAppShell-BtfvMkAp.js +0 -79
  514. package/dist/client/assets/OpsAgentsView-DBYtmLnh.js +0 -1
  515. package/dist/client/assets/OpsScreen-CuYVgkC_.js +0 -1
  516. package/dist/client/assets/OpsSubnav-BEU4kKXm.js +0 -1
  517. package/dist/client/assets/ProjectAgentProfile-BhXAZEkW.js +0 -1
  518. package/dist/client/assets/ProjectAgentProfileBar-uJw9Wdfk.js +0 -1
  519. package/dist/client/assets/ProjectAgentProfileHero-CIMS4Dy_.js +0 -1
  520. package/dist/client/assets/ProjectsInbox-JgU0lrY8.js +0 -2
  521. package/dist/client/assets/ProjectsRail-p99BRBOa.js +0 -1
  522. package/dist/client/assets/ProjectsScreen-BB45DU53.js +0 -1
  523. package/dist/client/assets/ProjectsThreadAside-BHDTJWOz.js +0 -1
  524. package/dist/client/assets/Provider-Bu-C8Hxc.js +0 -1
  525. package/dist/client/assets/RailRow-ClMmtaIE.js +0 -1
  526. package/dist/client/assets/RawSessionsTable-BtKdQPiv.js +0 -1
  527. package/dist/client/assets/RealtimeVoiceScreen-KPHJgO1l.js +0 -1
  528. package/dist/client/assets/RepoDiffViewer-BFperHQg.js +0 -7
  529. package/dist/client/assets/RepoDiffViewerLazy-BkBmbi1Z.js +0 -2
  530. package/dist/client/assets/ScoutDeckSurface-BcJsm2Kq.js +0 -1
  531. package/dist/client/assets/SessionEmbedScreen-Bt4flmAx.js +0 -1
  532. package/dist/client/assets/SessionObserve-BCehTlO8.js +0 -12
  533. package/dist/client/assets/SessionObserveEvidence-Bb6U-dem.js +0 -1
  534. package/dist/client/assets/SessionRefScreen-C8BiRVPx.js +0 -1
  535. package/dist/client/assets/SessionsScreen-BNvjUflN.js +0 -1
  536. package/dist/client/assets/SettingsDrawer-BieUmb8g.js +0 -3
  537. package/dist/client/assets/SettingsScreen-3JvX1WFL.js +0 -1
  538. package/dist/client/assets/SpriteAvatar-56DTXxSV.js +0 -1
  539. package/dist/client/assets/Terminal-BlUQY9_Z.js +0 -1
  540. package/dist/client/assets/TerminalEmbedScreen-DTjxktyr.js +0 -1
  541. package/dist/client/assets/TerminalHeaderMount-Cy-uxkey.js +0 -1
  542. package/dist/client/assets/WorkFilesViewer-CT5XEFGf.js +0 -1
  543. package/dist/client/assets/agent-autocomplete-DXUBnlkN.js +0 -10
  544. package/dist/client/assets/agent-lane-card-model-CNZMPkhc.js +0 -1
  545. package/dist/client/assets/agent-lanes-model-DXqjs0OK.js +0 -2
  546. package/dist/client/assets/agent-master-I1W-5d-x.css +0 -1
  547. package/dist/client/assets/agent-master-model-DAZL92oe.js +0 -1
  548. package/dist/client/assets/agent-specialization-BtxLN4UR.js +0 -1
  549. package/dist/client/assets/agents-project-model-UYiamtrU.js +0 -1
  550. package/dist/client/assets/api-Co9aQ2Jw.js +0 -1
  551. package/dist/client/assets/broker-display-Q75fupqG.js +0 -2
  552. package/dist/client/assets/chunk-JTPDIGGW-Ci5j4vzV.js +0 -46
  553. package/dist/client/assets/chunk-YOZR3KYS-DN5EJulq.js +0 -2
  554. package/dist/client/assets/colors-BtO5_zlx.js +0 -1
  555. package/dist/client/assets/content--T3p6akp.js +0 -1
  556. package/dist/client/assets/content-4nFMLuzF.js +0 -1
  557. package/dist/client/assets/content-BJ4nHvcu.js +0 -1
  558. package/dist/client/assets/content-BNyAjpUl.js +0 -1
  559. package/dist/client/assets/content-BmGp9wNl.js +0 -1
  560. package/dist/client/assets/content-CBWhwaRo.js +0 -1
  561. package/dist/client/assets/content-CQlykFbe.js +0 -1
  562. package/dist/client/assets/content-CevL0DgF.js +0 -1
  563. package/dist/client/assets/content-Ch8pf2bj.js +0 -1
  564. package/dist/client/assets/content-Cpvdcm_l.js +0 -1
  565. package/dist/client/assets/content-DfS3vgAu.js +0 -1
  566. package/dist/client/assets/content-DpQdNePJ.js +0 -1
  567. package/dist/client/assets/content-Dqpibejl.js +0 -1
  568. package/dist/client/assets/content-TV0nd6-r.js +0 -1
  569. package/dist/client/assets/content-odbb5H4U.js +0 -1
  570. package/dist/client/assets/content-uXHLPHe0.js +0 -1
  571. package/dist/client/assets/conversation-model-QsJVfSeG.js +0 -1
  572. package/dist/client/assets/conversation-motion-features-BFLHX2eg.js +0 -1
  573. package/dist/client/assets/discover-B3uQlh5L.js +0 -2
  574. package/dist/client/assets/embed-entry-DkRcHKTh.js +0 -2
  575. package/dist/client/assets/home-moving-signal-BPqBoNSm.js +0 -1
  576. package/dist/client/assets/home-now-card-UspVW2-2.js +0 -1
  577. package/dist/client/assets/hooks-BMsQzo9j.js +0 -2
  578. package/dist/client/assets/index-C-v0Z6ZS.js +0 -1
  579. package/dist/client/assets/index-D9DzUORB.js +0 -1
  580. package/dist/client/assets/index-DfsTyYDx.js +0 -1
  581. package/dist/client/assets/index-i7TMxlwW.css +0 -1
  582. package/dist/client/assets/knowledge-search-D_bLoYtC.css +0 -1
  583. package/dist/client/assets/lane-roster-store-Q7pcblY5.js +0 -1
  584. package/dist/client/assets/left-B4Ak-Ibt.js +0 -2
  585. package/dist/client/assets/left-BMb493FZ.js +0 -1
  586. package/dist/client/assets/left-BjFLvVOC.js +0 -1
  587. package/dist/client/assets/left-CsXQ8Q3G.js +0 -1
  588. package/dist/client/assets/left-FNH7faCI.js +0 -1
  589. package/dist/client/assets/left-POkqE8gI.js +0 -2
  590. package/dist/client/assets/left-UulOTcWh.js +0 -1
  591. package/dist/client/assets/left-advisor-CJkQS2d6.js +0 -1
  592. package/dist/client/assets/left-agents-CFMxyEjT.js +0 -1
  593. package/dist/client/assets/left-default-rnX5HANc.js +0 -1
  594. package/dist/client/assets/left-lanes-BpLXT_qH.js +0 -1
  595. package/dist/client/assets/left-mission-B0bhseWw.js +0 -1
  596. package/dist/client/assets/left-mission-DSenPIyb.css +0 -1
  597. package/dist/client/assets/library-D1iXfda2.js +0 -1
  598. package/dist/client/assets/mentions-DuLQnEcn.js +0 -1
  599. package/dist/client/assets/mesh-buckets-6y3ZIibI.js +0 -1
  600. package/dist/client/assets/mesh-roster-Bc7T4b7z.js +0 -1
  601. package/dist/client/assets/mesh-view-store-CiET-yN8.js +0 -1
  602. package/dist/client/assets/mission-control-CnU7dNt1.css +0 -1
  603. package/dist/client/assets/mission-control-model-C0fByIjm.js +0 -1
  604. package/dist/client/assets/mission-control-store-DDAgWKUl.js +0 -1
  605. package/dist/client/assets/model-IGCUEsMy.js +0 -1
  606. package/dist/client/assets/observe-Da2mRAsc.js +0 -1
  607. package/dist/client/assets/ops-screen-giu3If_N.css +0 -1
  608. package/dist/client/assets/page-status-Crtgjbq3.js +0 -1
  609. package/dist/client/assets/paperclip-BudMKSyr.js +0 -1
  610. package/dist/client/assets/perf-PX8Rx0EP.js +0 -1
  611. package/dist/client/assets/profile-B3qDSbrH.js +0 -1
  612. package/dist/client/assets/projects-inbox-CLek3QaG.js +0 -1
  613. package/dist/client/assets/projects-inbox-DRBl2N85.css +0 -1
  614. package/dist/client/assets/resolve-panes-DXw-cHaj.js +0 -1
  615. package/dist/client/assets/resolve-sidebar-context-CDdbRDEa.js +0 -1
  616. package/dist/client/assets/right-BgJ4mQLf.js +0 -1
  617. package/dist/client/assets/right-Bk6h7o-Z.js +0 -1
  618. package/dist/client/assets/right-BrICCmEt.js +0 -1
  619. package/dist/client/assets/right-C1QIbqFZ.js +0 -1
  620. package/dist/client/assets/right-CfliKiHY.js +0 -1
  621. package/dist/client/assets/right-CtOLXB9s.js +0 -1
  622. package/dist/client/assets/right-DJ34yMAi.js +0 -1
  623. package/dist/client/assets/right-DiFmtw6d.js +0 -1
  624. package/dist/client/assets/right-Lx79pxpG.js +0 -1
  625. package/dist/client/assets/router-DTtux5sP.js +0 -1
  626. package/dist/client/assets/scout-voice-BZKsdquE.js +0 -1
  627. package/dist/client/assets/scoutbot-BJIamJOH.js +0 -3
  628. package/dist/client/assets/secondaryNavConfig-C9bQ9_IA.js +0 -1
  629. package/dist/client/assets/system-surfaces-redesign-QVXNeGYw.css +0 -1
  630. package/dist/client/assets/terminal-screen-BLk4PAYt.css +0 -1
  631. package/dist/client/assets/text-Faa3ZStB.js +0 -1
  632. package/dist/client/assets/use-conversation-list-DO5J8T1H.js +0 -1
  633. package/dist/client/assets/use-scout-dev-flags-B31qTy6m.js +0 -1
  634. package/dist/client/assets/useContentSecondaryNav-Bpkc8ayb.js +0 -1
@@ -3,7 +3,7 @@ import { createServer } from "node:http";
3
3
  import { mkdir, writeFile } from "node:fs/promises";
4
4
  import { randomUUID } from "node:crypto";
5
5
  import { join as join7 } from "node:path";
6
- import { createRequire as createRequire2 } from "node:module";
6
+ import { createRequire as createRequire3 } from "node:module";
7
7
 
8
8
  // packages/web/server/relay.ts
9
9
  import { basename, join } from "node:path";
@@ -31,7 +31,7 @@ function startProcessParentWatchdog(expectedParentPidRaw, options = {}) {
31
31
  }
32
32
 
33
33
  // packages/web/server/terminal-relay-session.ts
34
- import { createRequire } from "module";
34
+ import { createRequire as createRequire2 } from "module";
35
35
 
36
36
  // packages/runtime/dist/system-probes/registry.js
37
37
  var DEFAULT_MIN_MAX_STALE_MS = 2 * 60000;
@@ -1056,12 +1056,14 @@ class ProbeCommandError extends Error {
1056
1056
  code;
1057
1057
  exitCode;
1058
1058
  signal;
1059
+ stderr;
1059
1060
  constructor(message, options) {
1060
1061
  super(message);
1061
1062
  this.name = "ProbeCommandError";
1062
1063
  this.code = options.code;
1063
1064
  this.exitCode = options.exitCode;
1064
1065
  this.signal = options.signal;
1066
+ this.stderr = options.stderr;
1065
1067
  }
1066
1068
  }
1067
1069
  var DEFAULT_STDOUT_CAP_BYTES = 1024 * 1024;
@@ -1182,7 +1184,7 @@ async function execProbeFile(ctx, file, args, options = {}) {
1182
1184
  resolve({ stdout, stderr, exitCode });
1183
1185
  return;
1184
1186
  }
1185
- reject(new ProbeCommandError(`${file} exited with ${exitCode ?? signal ?? "unknown status"}`, { code: "exit", exitCode, signal }));
1187
+ reject(new ProbeCommandError(`${file} exited with ${exitCode ?? signal ?? "unknown status"}`, { code: "exit", exitCode, signal, stderr }));
1186
1188
  });
1187
1189
  });
1188
1190
  }
@@ -2807,6 +2809,42 @@ async function readZellijSessionExists(sessionName, options = {}) {
2807
2809
  }
2808
2810
  // packages/runtime/dist/system-probes/herdr.js
2809
2811
  import { homedir as homedir3 } from "node:os";
2812
+
2813
+ // packages/protocol/dist/machines.js
2814
+ var MACHINE_LAN_SERVICE_TYPES = [
2815
+ "_openscout._tcp",
2816
+ "_oscout-pair._tcp",
2817
+ "_ssh._tcp",
2818
+ "_workstation._tcp",
2819
+ "_rfb._tcp",
2820
+ "_smb._tcp"
2821
+ ];
2822
+ var NON_IDENTIFYING_HOST_NAMES = new Set(["localhost", "ip6-localhost", "unknown", "android"]);
2823
+ function normalizeMacAddress(value) {
2824
+ const raw = (value ?? "").trim().toLowerCase();
2825
+ if (!raw)
2826
+ return "";
2827
+ const groups = raw.split(/[:-]/);
2828
+ const octets = groups.length === 6 ? groups.map((group) => /^[0-9a-f]{1,2}$/.test(group) ? group.padStart(2, "0") : "") : raw.replace(/[^0-9a-f]/g, "").match(/.{2}/g) ?? [];
2829
+ if (octets.length !== 6 || octets.some((octet) => !/^[0-9a-f]{2}$/.test(octet)))
2830
+ return "";
2831
+ const joined = octets.join(":");
2832
+ if (joined === "00:00:00:00:00:00")
2833
+ return "";
2834
+ if ((Number.parseInt(octets[0] ?? "0", 16) & 1) === 1)
2835
+ return "";
2836
+ return joined;
2837
+ }
2838
+ function normalizeMachineAddress(value) {
2839
+ const raw = (value ?? "").trim().toLowerCase();
2840
+ if (!raw)
2841
+ return "";
2842
+ return raw.replace(/^\[/, "").replace(/\]$/, "").replace(/%.*$/, "");
2843
+ }
2844
+ var MACHINE_ONLINE_WINDOW_MS = 2 * 60000;
2845
+ var MACHINE_RECENT_WINDOW_MS = 60 * 60000;
2846
+
2847
+ // packages/runtime/dist/system-probes/herdr.js
2810
2848
  var HERDR_TTL_MS = 5000;
2811
2849
  var HERDR_TIMEOUT_MS = 2000;
2812
2850
  function herdrBin(env = process.env) {
@@ -3179,6 +3217,333 @@ var certStatusProbe = defineProbeFamily({
3179
3217
  };
3180
3218
  }
3181
3219
  });
3220
+ // packages/runtime/dist/system-probes/lan-scan.js
3221
+ import { spawn as spawn2 } from "node:child_process";
3222
+ import { createRequire } from "node:module";
3223
+ var require2 = createRequire(import.meta.url);
3224
+ var DEFAULT_BROWSE_MS = 2500;
3225
+ var LAN_SCAN_TTL_MS = 60000;
3226
+ var LAN_SCAN_TIMEOUT_MS = 1e4;
3227
+ var EMPTY_LAN_SCAN = {
3228
+ services: [],
3229
+ neighbors: [],
3230
+ browsedTypes: [],
3231
+ mdnsEnabled: false,
3232
+ scannedAt: 0
3233
+ };
3234
+ var OUI_VENDORS = {
3235
+ "00:03:93": "Apple",
3236
+ "00:05:02": "Apple",
3237
+ "00:0a:27": "Apple",
3238
+ "00:0a:95": "Apple",
3239
+ "00:17:f2": "Apple",
3240
+ "00:1b:63": "Apple",
3241
+ "00:1e:c2": "Apple",
3242
+ "00:25:00": "Apple",
3243
+ "00:26:bb": "Apple",
3244
+ "3c:22:fb": "Apple",
3245
+ "40:6c:8f": "Apple",
3246
+ "5c:f9:38": "Apple",
3247
+ "6c:40:08": "Apple",
3248
+ "7c:d1:c3": "Apple",
3249
+ "88:66:5a": "Apple",
3250
+ "a4:83:e7": "Apple",
3251
+ "ac:de:48": "Apple",
3252
+ "b8:e8:56": "Apple",
3253
+ "f0:18:98": "Apple",
3254
+ "f4:d4:88": "Apple",
3255
+ "b8:27:eb": "Raspberry Pi",
3256
+ "dc:a6:32": "Raspberry Pi",
3257
+ "e4:5f:01": "Raspberry Pi",
3258
+ "d8:3a:dd": "Raspberry Pi",
3259
+ "00:1b:21": "Intel",
3260
+ "00:1e:67": "Intel",
3261
+ "3c:fd:fe": "Intel",
3262
+ "a0:36:9f": "Intel",
3263
+ "24:0a:c4": "Espressif",
3264
+ "7c:9e:bd": "Espressif",
3265
+ "24:5a:4c": "Ubiquiti",
3266
+ "78:8a:20": "Ubiquiti",
3267
+ "fc:ec:da": "Ubiquiti",
3268
+ "00:11:32": "Synology",
3269
+ "00:1d:0f": "TP-Link",
3270
+ "00:50:56": "VMware",
3271
+ "08:00:27": "VirtualBox",
3272
+ "52:54:00": "QEMU/KVM",
3273
+ "00:16:3e": "Xen"
3274
+ };
3275
+ function lookupOuiVendor(macAddress) {
3276
+ const normalized = normalizeMacAddress(macAddress);
3277
+ if (!normalized)
3278
+ return null;
3279
+ return OUI_VENDORS[normalized.slice(0, 8)] ?? null;
3280
+ }
3281
+ function parseArpTable(stdout) {
3282
+ const neighbors = [];
3283
+ const seen = new Set;
3284
+ for (const line of stdout.split(`
3285
+ `)) {
3286
+ const match = line.match(/\(([^)]+)\)\s+at\s+([^\s]+)/);
3287
+ if (!match)
3288
+ continue;
3289
+ const address = normalizeMachineAddress(match[1]);
3290
+ const macAddress = normalizeMacAddress(match[2]);
3291
+ if (!address || !macAddress)
3292
+ continue;
3293
+ const key = `${address}|${macAddress}`;
3294
+ if (seen.has(key))
3295
+ continue;
3296
+ seen.add(key);
3297
+ const interfaceMatch = line.match(/\bon\s+([a-z0-9._-]+)/i);
3298
+ neighbors.push({
3299
+ address,
3300
+ macAddress,
3301
+ interfaceName: interfaceMatch?.[1] ?? null,
3302
+ vendor: lookupOuiVendor(macAddress)
3303
+ });
3304
+ }
3305
+ return neighbors;
3306
+ }
3307
+ function arpBin(env = process.env) {
3308
+ return env.OPENSCOUT_ARP_BIN?.trim() || "arp";
3309
+ }
3310
+ function isUnavailable7(error) {
3311
+ return error instanceof ProbeCommandError && (error.code === "ENOENT" || error.code === "spawn" || error.code === "exit");
3312
+ }
3313
+ async function readArpNeighbors(ctx, env) {
3314
+ try {
3315
+ const { stdout } = await execProbeFile(ctx, arpBin(env), ["-an"], {
3316
+ maxStdoutBytes: 512 * 1024,
3317
+ maxStderrBytes: 32 * 1024
3318
+ });
3319
+ return parseArpTable(stdout);
3320
+ } catch (error) {
3321
+ if (isUnavailable7(error))
3322
+ return [];
3323
+ throw error;
3324
+ }
3325
+ }
3326
+ var DNS_SD_BIN = "/usr/bin/dns-sd";
3327
+ function unescapeDnsSdLabel(value) {
3328
+ return value.replace(/\\(\d{3}|.)/g, (_match, escape) => /^\d{3}$/.test(escape) ? String.fromCharCode(Number.parseInt(escape, 10)) : escape);
3329
+ }
3330
+ function parseDnsSdZoneDump(stdout, serviceType) {
3331
+ const suffix = `.${serviceType.replace(/^_?/, "_")}`;
3332
+ const byInstance = new Map;
3333
+ const advertFor = (rawName) => {
3334
+ if (!rawName.endsWith(suffix))
3335
+ return null;
3336
+ const instanceName = unescapeDnsSdLabel(rawName.slice(0, -suffix.length));
3337
+ if (!instanceName)
3338
+ return null;
3339
+ const existing = byInstance.get(instanceName);
3340
+ if (existing)
3341
+ return existing;
3342
+ const created = {
3343
+ serviceType,
3344
+ instanceName,
3345
+ host: null,
3346
+ addresses: [],
3347
+ port: null,
3348
+ txt: {}
3349
+ };
3350
+ byInstance.set(instanceName, created);
3351
+ return created;
3352
+ };
3353
+ for (const line of stdout.split(`
3354
+ `)) {
3355
+ const match = line.match(/^(\S+)\s+(SRV|TXT)\s+(.*)$/);
3356
+ if (!match)
3357
+ continue;
3358
+ const advert = advertFor(match[1] ?? "");
3359
+ if (!advert)
3360
+ continue;
3361
+ if (match[2] === "SRV") {
3362
+ const parts = (match[3] ?? "").split(";")[0].trim().split(/\s+/);
3363
+ const port = Number.parseInt(parts[2] ?? "", 10);
3364
+ const target = (parts[3] ?? "").replace(/\.$/, "");
3365
+ if (Number.isFinite(port) && port > 0)
3366
+ advert.port = port;
3367
+ if (target)
3368
+ advert.host = target;
3369
+ continue;
3370
+ }
3371
+ for (const pair of (match[3] ?? "").matchAll(/"([^"]*)"/g)) {
3372
+ const entry = pair[1] ?? "";
3373
+ const equals = entry.indexOf("=");
3374
+ if (equals <= 0)
3375
+ continue;
3376
+ advert.txt[entry.slice(0, equals)] = entry.slice(equals + 1);
3377
+ }
3378
+ }
3379
+ return [...byInstance.values()];
3380
+ }
3381
+ function runBoundedBrowse(file, args, windowMs, signal) {
3382
+ return new Promise((resolve4, reject) => {
3383
+ let child;
3384
+ try {
3385
+ child = spawn2(file, [...args], { stdio: ["ignore", "pipe", "ignore"], windowsHide: true });
3386
+ } catch (error) {
3387
+ reject(error);
3388
+ return;
3389
+ }
3390
+ let stdout = "";
3391
+ let settled = false;
3392
+ const finish = () => {
3393
+ if (settled)
3394
+ return;
3395
+ settled = true;
3396
+ clearTimeout(timer);
3397
+ signal?.removeEventListener("abort", finish);
3398
+ if (!child.killed)
3399
+ child.kill("SIGTERM");
3400
+ resolve4(stdout);
3401
+ };
3402
+ const timer = setTimeout(finish, windowMs);
3403
+ signal?.addEventListener("abort", finish, { once: true });
3404
+ child.stdout?.on("data", (chunk) => {
3405
+ stdout = `${stdout}${chunk}`;
3406
+ if (stdout.length > 512 * 1024)
3407
+ finish();
3408
+ });
3409
+ child.once("error", (error) => {
3410
+ if (settled)
3411
+ return;
3412
+ settled = true;
3413
+ clearTimeout(timer);
3414
+ signal?.removeEventListener("abort", finish);
3415
+ reject(error);
3416
+ });
3417
+ child.once("exit", finish);
3418
+ });
3419
+ }
3420
+ async function browseLanServicesViaDnsSd(options = {}) {
3421
+ const serviceTypes = options.serviceTypes ?? MACHINE_LAN_SERVICE_TYPES;
3422
+ const browseMs = options.browseMs ?? DEFAULT_BROWSE_MS;
3423
+ const bin = options.bin ?? DNS_SD_BIN;
3424
+ const dumps = await Promise.all(serviceTypes.map((serviceType) => runBoundedBrowse(bin, ["-Z", serviceType, "local"], browseMs, options.signal).then((stdout) => parseDnsSdZoneDump(stdout, serviceType)).catch(() => [])));
3425
+ return dumps.flat();
3426
+ }
3427
+ function normalizeServiceAdvert(serviceType, advertisement) {
3428
+ const txt = {};
3429
+ for (const [key, value] of Object.entries(advertisement.txt ?? {})) {
3430
+ if (typeof value === "string")
3431
+ txt[key] = value;
3432
+ else if (typeof value === "number" || typeof value === "boolean")
3433
+ txt[key] = String(value);
3434
+ else if (value instanceof Uint8Array)
3435
+ txt[key] = Buffer.from(value).toString("utf8");
3436
+ }
3437
+ const addresses = [];
3438
+ for (const address of advertisement.addresses ?? []) {
3439
+ const normalized = normalizeMachineAddress(address);
3440
+ if (normalized && !normalized.startsWith("fe80:") && !addresses.includes(normalized)) {
3441
+ addresses.push(normalized);
3442
+ }
3443
+ }
3444
+ return {
3445
+ serviceType,
3446
+ instanceName: advertisement.name ?? "",
3447
+ host: advertisement.host ?? null,
3448
+ addresses,
3449
+ port: typeof advertisement.port === "number" ? advertisement.port : null,
3450
+ txt
3451
+ };
3452
+ }
3453
+ function defaultResponderFactory() {
3454
+ const Bonjour = require2("bonjour-service");
3455
+ return new Bonjour;
3456
+ }
3457
+ async function browseLanServices(options = {}) {
3458
+ const serviceTypes = options.serviceTypes ?? MACHINE_LAN_SERVICE_TYPES;
3459
+ const browseMs = options.browseMs ?? DEFAULT_BROWSE_MS;
3460
+ const responder = (options.responderFactory ?? defaultResponderFactory)();
3461
+ const found = new Map;
3462
+ const browsers = [];
3463
+ try {
3464
+ for (const serviceType of serviceTypes) {
3465
+ const parsed = serviceType.match(/^_?([^.]+)\._(tcp|udp)$/);
3466
+ if (!parsed)
3467
+ continue;
3468
+ const browser = responder.find({ type: parsed[1], protocol: parsed[2] }, (advertisement) => {
3469
+ const advert = normalizeServiceAdvert(serviceType, advertisement);
3470
+ const key = `${serviceType}|${advert.instanceName}|${advert.host ?? ""}`;
3471
+ const existing = found.get(key);
3472
+ if (!existing || advert.addresses.length >= existing.addresses.length) {
3473
+ found.set(key, advert);
3474
+ }
3475
+ });
3476
+ browsers.push(browser);
3477
+ }
3478
+ await new Promise((resolve4) => {
3479
+ const timer = setTimeout(finish, browseMs);
3480
+ function finish() {
3481
+ clearTimeout(timer);
3482
+ options.signal?.removeEventListener("abort", finish);
3483
+ resolve4();
3484
+ }
3485
+ options.signal?.addEventListener("abort", finish, { once: true });
3486
+ });
3487
+ } finally {
3488
+ for (const browser of browsers) {
3489
+ try {
3490
+ browser.stop();
3491
+ } catch {}
3492
+ }
3493
+ try {
3494
+ responder.destroy();
3495
+ } catch {}
3496
+ }
3497
+ return [...found.values()].sort((a, b) => a.serviceType.localeCompare(b.serviceType) || a.instanceName.localeCompare(b.instanceName));
3498
+ }
3499
+ function isOff(value) {
3500
+ const raw = (value ?? "").trim().toLowerCase();
3501
+ return raw === "0" || raw === "false" || raw === "off";
3502
+ }
3503
+ function lanScanEnabled(env = process.env) {
3504
+ return !isOff(env.OPENSCOUT_LAN_SCAN_ENABLED);
3505
+ }
3506
+ function lanMdnsBrowseEnabled(env = process.env) {
3507
+ return !isOff(env.OPENSCOUT_MDNS_ENABLED);
3508
+ }
3509
+ function browseLanServicesForPlatform(platform, options = {}) {
3510
+ if (platform === "darwin" && !options.responderFactory) {
3511
+ return browseLanServicesViaDnsSd({
3512
+ ...options.serviceTypes ? { serviceTypes: options.serviceTypes } : {},
3513
+ ...options.browseMs !== undefined ? { browseMs: options.browseMs } : {},
3514
+ ...options.signal ? { signal: options.signal } : {}
3515
+ });
3516
+ }
3517
+ return browseLanServices(options);
3518
+ }
3519
+ async function readLanScan(ctx, env = process.env, responderFactory, platform = process.platform) {
3520
+ if (!lanScanEnabled(env)) {
3521
+ return { ...EMPTY_LAN_SCAN, scannedAt: Date.now() };
3522
+ }
3523
+ const mdnsOn = lanMdnsBrowseEnabled(env);
3524
+ const browseMs = Number.parseInt(env.OPENSCOUT_LAN_SCAN_BROWSE_MS ?? "", 10);
3525
+ const [neighbors, services] = await Promise.all([
3526
+ readArpNeighbors(ctx, env),
3527
+ mdnsOn ? browseLanServicesForPlatform(platform, {
3528
+ browseMs: Number.isFinite(browseMs) && browseMs > 0 ? browseMs : DEFAULT_BROWSE_MS,
3529
+ responderFactory,
3530
+ signal: ctx.signal
3531
+ }).catch(() => []) : Promise.resolve([])
3532
+ ]);
3533
+ return {
3534
+ services,
3535
+ neighbors,
3536
+ browsedTypes: mdnsOn ? [...MACHINE_LAN_SERVICE_TYPES] : [],
3537
+ mdnsEnabled: mdnsOn,
3538
+ scannedAt: Date.now()
3539
+ };
3540
+ }
3541
+ var lanScanProbe = defineProbe({
3542
+ id: "lan.scan",
3543
+ ttlMs: LAN_SCAN_TTL_MS,
3544
+ timeoutMs: LAN_SCAN_TIMEOUT_MS,
3545
+ run: (ctx) => readLanScan(ctx)
3546
+ });
3182
3547
  // packages/runtime/dist/terminal-environment.js
3183
3548
  var INHERITED_CLAUDE_SESSION_ENV_KEYS = [
3184
3549
  "CLAUDECODE",
@@ -3189,6 +3554,23 @@ var INHERITED_CLAUDE_SESSION_ENV_KEYS = [
3189
3554
  "CLAUDE_CODE_REMOTE_SESSION_ID",
3190
3555
  "CLAUDE_PID"
3191
3556
  ];
3557
+ var INHERITED_MULTIPLEXER_PANE_ENV_KEYS = [
3558
+ "HERDR_ENV",
3559
+ "HERDR_PANE_ID",
3560
+ "HERDR_TAB_ID",
3561
+ "HERDR_WORKSPACE_ID",
3562
+ "HERDR_SOCKET_PATH",
3563
+ "HERDR_STARTUP_CWD",
3564
+ "TMUX",
3565
+ "TMUX_PANE",
3566
+ "ZELLIJ",
3567
+ "ZELLIJ_SESSION_NAME",
3568
+ "ZELLIJ_PANE_ID"
3569
+ ];
3570
+ var INHERITED_TERMINAL_IDENTITY_ENV_KEYS = [
3571
+ ...INHERITED_CLAUDE_SESSION_ENV_KEYS,
3572
+ ...INHERITED_MULTIPLEXER_PANE_ENV_KEYS
3573
+ ];
3192
3574
  function buildInteractiveTerminalEnvironment(base = process.env, overrides = {}) {
3193
3575
  const env = {
3194
3576
  ...base,
@@ -3197,7 +3579,7 @@ function buildInteractiveTerminalEnvironment(base = process.env, overrides = {})
3197
3579
  FORCE_COLOR: overrides.FORCE_COLOR || base.FORCE_COLOR || "1"
3198
3580
  };
3199
3581
  delete env.NO_COLOR;
3200
- for (const key of INHERITED_CLAUDE_SESSION_ENV_KEYS) {
3582
+ for (const key of INHERITED_TERMINAL_IDENTITY_ENV_KEYS) {
3201
3583
  delete env[key];
3202
3584
  }
3203
3585
  return env;
@@ -3530,12 +3912,12 @@ function resolveCodexExecutableInventory(env = process.env) {
3530
3912
  }
3531
3913
 
3532
3914
  // packages/web/server/terminal-relay-session.ts
3533
- var require2 = createRequire(import.meta.url);
3915
+ var require3 = createRequire2(import.meta.url);
3534
3916
  var pty = (() => {
3535
3917
  try {
3536
- return require2("@lydell/node-pty");
3918
+ return require3("@lydell/node-pty");
3537
3919
  } catch {
3538
- return require2("node-pty");
3920
+ return require3("node-pty");
3539
3921
  }
3540
3922
  })();
3541
3923
  var DEFAULT_ORPHAN_TTL_MS = 30 * 60 * 1000;
@@ -4240,8 +4622,8 @@ function markMuxSessionDetached(backend, name, now = Date.now()) {
4240
4622
 
4241
4623
  // packages/web/server/terminal-relay-node.ts
4242
4624
  process.title = "scout-relay";
4243
- var require3 = createRequire2(import.meta.url);
4244
- var { WebSocketServer } = require3("ws");
4625
+ var require4 = createRequire3(import.meta.url);
4626
+ var { WebSocketServer } = require4("ws");
4245
4627
  var hostname = process.env.OPENSCOUT_WEB_TERMINAL_RELAY_HOST?.trim() || "127.0.0.1";
4246
4628
  var port = Number.parseInt(process.env.OPENSCOUT_WEB_TERMINAL_RELAY_PORT?.trim() || "3201", 10);
4247
4629
  var parentWatchdog = startProcessParentWatchdog(process.env.OPENSCOUT_WEB_RELAY_PARENT_PID);