claude-code-best 1.10.8 → 1.10.11
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/dist/chunks/{AddWorkspaceDirectory-AyMy4OCD.js → AddWorkspaceDirectory-C6rqijRY.js} +3 -3
- package/dist/chunks/{App-DORYioIb.js → App-Ct9uQHIA.js} +4 -4
- package/dist/chunks/{ApproveApiKey-S_PhcDiO.js → ApproveApiKey-C7xe_ujH.js} +2 -2
- package/dist/chunks/{AssistantSessionChooser-_6CoGrsi.js → AssistantSessionChooser-B0JyDDDZ.js} +3 -3
- package/dist/chunks/{BackgroundTasksDialog-DRXUENfu.js → BackgroundTasksDialog-B5KsOVIe.js} +5 -5
- package/dist/chunks/{BypassPermissionsModeDialog-C_0P04Qi.js → BypassPermissionsModeDialog-DaeQ4xED.js} +2 -2
- package/dist/chunks/{ClaudeInChromeOnboarding-CPgxw3Jd.js → ClaudeInChromeOnboarding-B2GXIglO.js} +2 -2
- package/dist/chunks/{ClaudeMdExternalIncludesDialog-nx6BnDFO.js → ClaudeMdExternalIncludesDialog-D74yYI1i.js} +1 -1
- package/dist/chunks/{ClaudeMdExternalIncludesDialog-HW6hFwga.js → ClaudeMdExternalIncludesDialog-DWmdSx58.js} +2 -2
- package/dist/chunks/ConsoleOAuthFlow-CS4jOcte.js +3 -0
- package/dist/chunks/{DesktopHandoff-DDZW1f4B.js → DesktopHandoff-B9U9U9Tu.js} +2 -2
- package/dist/chunks/{DevChannelsDialog-BxT1gBI-.js → DevChannelsDialog-CzRbeBpk.js} +1 -1
- package/dist/chunks/{DiffDialog-C_M5fcZ1.js → DiffDialog-6AsqISNj.js} +4 -3
- package/dist/chunks/{Doctor-BeFtx51Y.js → Doctor-BxWkLXEe.js} +9 -9
- package/dist/chunks/{ExitFlow-Dol5ZTVp.js → ExitFlow-BfsgW10m.js} +2 -2
- package/dist/chunks/{Feedback-C6XXxkW_.js → Feedback-B_bPT-tv.js} +3 -3
- package/dist/chunks/{Grove-BXGgnmM2.js → Grove-C4feZVOi.js} +1 -1
- package/dist/chunks/{HybridTransport-6KE-2tdG.js → HybridTransport-PhjrDPRB.js} +3 -3
- package/dist/chunks/{ITermBackend-DU4crlJ8.js → ITermBackend-D9qkvBdK.js} +1 -1
- package/dist/chunks/{InvalidConfigDialog-COQp5wx6.js → InvalidConfigDialog-B5iw4BUB.js} +2 -2
- package/dist/chunks/{InvalidSettingsDialog-C4ZqH7ua.js → InvalidSettingsDialog-BxXjuoag.js} +2 -2
- package/dist/chunks/{MCPConnectionManager-Ci26BuqG.js → MCPConnectionManager-CEbFWjqj.js} +4 -4
- package/dist/chunks/{McpParsingWarnings-k4GVGSbD.js → McpParsingWarnings-CSMkQZXu.js} +1 -1
- package/dist/chunks/{MessageSelector-C-OCaW_O.js → MessageSelector-Dw8yVgHn.js} +10 -12
- package/dist/chunks/{Messages-B9hbb5uA.js → Messages-DATTswTy.js} +16 -16
- package/dist/chunks/{Onboarding-BDtHvYTx.js → Onboarding-DgmcqDHa.js} +8 -8
- package/dist/chunks/{OverageCreditUpsell-B4DOf4gh.js → OverageCreditUpsell-D7WHyk87.js} +3 -3
- package/dist/chunks/{PluginSettings-3R1CqSfW.js → PluginSettings-BRylpBE_.js} +13 -13
- package/dist/chunks/{PromptInputFooterSuggestions-CxqTMId_.js → PromptInputFooterSuggestions-Xy2gYy25.js} +2 -2
- package/dist/chunks/{PromptInputHelpMenu-BGgyDIkK.js → PromptInputHelpMenu-AgXLpTa-.js} +3 -3
- package/dist/chunks/{QueryEngine-ChpFG8gv.js → QueryEngine-CNS-KhzZ.js} +6 -6
- package/dist/chunks/{REPL-CG0UgVfl.js → REPL-Cnd4B1po.js} +1248 -2155
- package/dist/chunks/{RemoteCallout-B0VqS1Qt.js → RemoteCallout-CO-koWt4.js} +4 -4
- package/dist/chunks/{RemoteSessionManager-B1roy_8S.js → RemoteSessionManager-Cc5O4Iz6.js} +10 -10
- package/dist/chunks/{ResumeConversation-BWrUge-0.js → ResumeConversation-M4GjMvYr.js} +5 -5
- package/dist/chunks/{SSETransport-C2QsETHl.js → SSETransport-D8gYdijq.js} +2 -2
- package/dist/chunks/{Settings-COOyI14X.js → Settings-Cr-cVWIp.js} +15 -15
- package/dist/chunks/StructuredDiff-B6ZCMWS1.js +347 -0
- package/dist/chunks/{TeleportProgress-qSHTYfot.js → TeleportProgress-4ecw6CPX.js} +1 -1
- package/dist/chunks/{TeleportRepoMismatchDialog-CGsCO8by.js → TeleportRepoMismatchDialog-BSqD_ki7.js} +3 -3
- package/dist/chunks/{TeleportResumeWrapper-DXrpfnNe.js → TeleportResumeWrapper-3HksGDoJ.js} +3 -3
- package/dist/chunks/{ThemePicker-DimvavHs.js → ThemePicker-ChTKqsLP.js} +4 -3
- package/dist/chunks/{TmuxBackend-H0XnczhB.js → TmuxBackend-DfizVpWU.js} +1 -1
- package/dist/chunks/ToolSearchTool-DPT0W6W_.js +3 -0
- package/dist/chunks/{TrustDialog-DeSs6f0D.js → TrustDialog-txz8AgUy.js} +4 -4
- package/dist/chunks/{ValidationErrorsList-C4Km61yv.js → ValidationErrorsList-7hrGjTbU.js} +1 -1
- package/dist/chunks/{WindowsTerminalBackend-Bgv7-JUL.js → WindowsTerminalBackend-DrBBYUeT.js} +1 -1
- package/dist/chunks/{add-dir-CHNcl-5z.js → add-dir-1oTL8NCa.js} +2 -2
- package/dist/chunks/{agentDisplay-BBigvlJ5.js → agentDisplay-DdfH-rjM.js} +2 -2
- package/dist/chunks/{agents-CFvEeCnI.js → agents-CxqqgRQ4.js} +9 -9
- package/dist/chunks/{agents-Bnzh76m3.js → agents-itch4Ogn.js} +2 -2
- package/dist/chunks/{ant-DLe5klM_.js → ant-sNs2IQ4h.js} +2 -2
- package/dist/chunks/{api-Bx57yPja.js → api-B9EiITN3.js} +1 -1
- package/dist/chunks/{api-HJVu8Bgf.js → api-vMRVXAIW.js} +1 -1
- package/dist/chunks/asciicast--W1-QPVl.js +2 -0
- package/dist/chunks/{assistant-BcJ2VyZO.js → assistant-C2gseEKC.js} +4 -4
- package/dist/chunks/{assistant-DKGoLYoz.js → assistant-SUHURrLf.js} +2 -2
- package/dist/chunks/auth-BtsDqF5X.js +3 -0
- package/dist/chunks/{auth-BVoXNOdu.js → auth-CrKy_xfm.js} +1 -1
- package/dist/chunks/{autoMode-BjMFpRPS.js → autoMode-DDehnswW.js} +3 -3
- package/dist/chunks/{autonomy-B142xgn9.js → autonomy-xTW_cDaU.js} +63 -20
- package/dist/chunks/{autonomyPanel-DrItmDJf.js → autonomyPanel-BA8yF42J.js} +2 -2
- package/dist/chunks/{backgroundHousekeeping-DPSnu12B.js → backgroundHousekeeping-D0GmJKrV.js} +6 -6
- package/dist/chunks/{backgroundHousekeeping-xKDy8FkD.js → backgroundHousekeeping-Db_Petsq.js} +1 -1
- package/dist/chunks/{banner-2Io8Jttd.js → banner-C_aWUibC.js} +1 -1
- package/dist/chunks/{bg-D-cs4pwp.js → bg-AZpkHvVY.js} +1 -1
- package/dist/chunks/{bg-2DXXMI4u.js → bg-BhP-16DX.js} +5 -5
- package/dist/chunks/{branch-C70keLeV.js → branch-B9GxhFg0.js} +2 -2
- package/dist/chunks/{bridge-BggvL4iM.js → bridge-Bq6FyAgG.js} +9 -9
- package/dist/chunks/{bridgeConfig-DsVyayv1.js → bridgeConfig-CZGaWsq7.js} +1 -1
- package/dist/chunks/{bridgeConfig-BeCM9dMF.js → bridgeConfig-Dht9PC-Q.js} +1 -1
- package/dist/chunks/{bridgeEnabled-oCT5xVvX.js → bridgeEnabled-CkmoqwG5.js} +1 -1
- package/dist/chunks/{bridgeEnabled-Dj8FWS0e.js → bridgeEnabled-Cu0GsgQC.js} +2 -2
- package/dist/chunks/{bridgeMain-Cnni8EVq.js → bridgeMain-COD0BaPa.js} +36 -36
- package/dist/chunks/{bridgeMessaging-CDla4R6o.js → bridgeMessaging-CMCuOWPg.js} +2 -2
- package/dist/chunks/{btw-BzdgUzJU.js → btw-B0p-2vLR.js} +5 -5
- package/dist/chunks/{buddy-ovy_skht.js → buddy-BPDwW1oK.js} +3 -3
- package/dist/chunks/{bypassPermissionsKillswitch-BJ7iACst.js → bypassPermissionsKillswitch-MrXUBqLu.js} +1 -1
- package/dist/chunks/{caches-B5mZT9E-.js → caches-B46ynuvK.js} +1 -1
- package/dist/chunks/{caches-CBfjkIrn.js → caches-Dga-SWBx.js} +8 -8
- package/dist/chunks/{ccrClient-DKQN014H.js → ccrClient-CErUgaOa.js} +3 -3
- package/dist/chunks/changeDetector-ChRE8fAI.js +3 -0
- package/dist/chunks/{channelNotification-Dgrgm0St.js → channelNotification-CAbX7jUR.js} +2 -2
- package/dist/chunks/{channelNotification-B1HVtfcI.js → channelNotification-kgISVp-m.js} +1 -1
- package/dist/chunks/{chrome-A_IWe_cO.js → chrome-BIHJ7Tiv.js} +3 -3
- package/dist/chunks/{clear-Cv0qvLzE.js → clear-e0qXtR3o.js} +1 -1
- package/dist/chunks/{client-DEQ6taWJ.js → client-jhgOiTrR.js} +1 -1
- package/dist/chunks/{color-rH76d2GW.js → color-DpOfQ6Pe.js} +1 -1
- package/dist/chunks/{commands-BToVM-n_.js → commands-CriEIXca.js} +1 -1
- package/dist/chunks/{commitAttribution-x-Y9qiEw.js → commitAttribution-Bnu7jx7-.js} +1 -1
- package/dist/chunks/{commitAttribution--kWCfiBX.js → commitAttribution-DpIpJU2o.js} +1 -1
- package/dist/chunks/{compact-CuLy_ZmV.js → compact-Bi5Vwnbj.js} +1 -1
- package/dist/chunks/{companion-BserNxZw.js → companion-B8Dlllnk.js} +1 -1
- package/dist/chunks/{config-BbFdCtCZ.js → config-D5JMhZBX.js} +1 -1
- package/dist/chunks/{config-WGaJE2Z-.js → config-Ddbt4ajH.js} +1 -1
- package/dist/chunks/{context-WOOY0FLL.js → context-B3uI7IwH.js} +5 -5
- package/dist/chunks/{context-noninteractive-CS0-TpiN.js → context-noninteractive-DuE_GTL9.js} +4 -4
- package/dist/chunks/{conversation-DZ_UoE8s.js → conversation-DvzAWiiJ.js} +1 -1
- package/dist/chunks/{conversation-LlZkX2yV.js → conversation-gnmmmJnB.js} +4 -4
- package/dist/chunks/{copy-DCXi64ex.js → copy-DAG6O8Dh.js} +2 -2
- package/dist/chunks/{cost-CoxvFCRD.js → cost-DShLvWcl.js} +2 -2
- package/dist/chunks/{createSSHSession-CP9c1m4g.js → createSSHSession-D8Sigb7_.js} +2 -2
- package/dist/chunks/{createSession-Cm7HpHez.js → createSession-BjIarSCO.js} +17 -17
- package/dist/chunks/{cronJitterConfig-DYWTMlRv.js → cronJitterConfig-CGula0w8.js} +4 -4
- package/dist/chunks/{crossProjectResume-DeOsfSF5.js → crossProjectResume-CSxe0Rfb.js} +8 -8
- package/dist/chunks/{daemon-Ci7b5c8J.js → daemon-DLqxYYIA.js} +2 -2
- package/dist/chunks/{datadog-FNzocPlm.js → datadog-CZbjl3Mk.js} +1 -1
- package/dist/chunks/{datadog-CgRauwXn.js → datadog-GQGGjkVH.js} +1 -1
- package/dist/chunks/{desktop-B1EhowRo.js → desktop-CL8H-5XY.js} +1 -1
- package/dist/chunks/{detached-BTZLi_wz.js → detached-BFTAxA_R.js} +1 -1
- package/dist/chunks/{diff-BXAZYSAe.js → diff-CQ9EqGNw.js} +1 -1
- package/dist/chunks/{doctor-2TsPG9x4.js → doctor-DXJAY0op.js} +1 -1
- package/dist/chunks/earlyInput-Dnqlqb0h.js +2 -0
- package/dist/chunks/{effort-DxhwjDgv.js → effort-Bq5WcivT.js} +3 -3
- package/dist/chunks/{entry-B37teFKO.js → entry-DUC38qNm.js} +3 -3
- package/dist/chunks/{envLessBridgeConfig-OzRntxQ7.js → envLessBridgeConfig-zdUL4H6-.js} +2 -2
- package/dist/chunks/{exit-DXwVjHB_.js → exit-DueO_n8-.js} +3 -3
- package/dist/chunks/{export-CUxQmI8I.js → export-BVu_Gpf-.js} +2 -2
- package/dist/chunks/{exportRenderer-BXcHLusv.js → exportRenderer-CaHsMpAb.js} +3 -3
- package/dist/chunks/{extra-usage-D5F2Fab1.js → extra-usage-DVgITuJR.js} +2 -2
- package/dist/chunks/{extra-usage-core-BjMJY05D.js → extra-usage-core-DUTbGs8v.js} +4 -4
- package/dist/chunks/{extra-usage-noninteractive-C1eLncrU.js → extra-usage-noninteractive-BZ_BfWOY.js} +1 -1
- package/dist/chunks/{extraUsage-B3Z9hxVY.js → extraUsage-Mc4ASNJv.js} +3 -3
- package/dist/chunks/{fast-BPAOtiKR.js → fast-BaLftgz2.js} +1 -1
- package/dist/chunks/{fast-vmSBT3wk.js → fast-k6ZhmOIi.js} +4 -4
- package/dist/chunks/{feedback-Bd4KPsMs.js → feedback-5-IPbRVC.js} +1 -1
- package/dist/chunks/{firstPartyEventLogger-DfayOxom.js → firstPartyEventLogger-Bzn8yHDw.js} +1 -1
- package/dist/chunks/{flushGate-CEQ0eFpN.js → flushGate-rpeO-ivG.js} +4 -4
- package/dist/chunks/{fork-Cql3KSxE.js → fork-Byn4vS0q.js} +1 -1
- package/dist/chunks/{gates-CXbe08cU.js → gates-BjSnAoph.js} +1 -1
- package/dist/chunks/{gates-B6dXEO7B.js → gates-UOfj_txz.js} +1 -1
- package/dist/chunks/{gemini-Dc1L8IRS.js → gemini-BWsCIecw.js} +3 -3
- package/dist/chunks/{generateSessionName-DnnfYlVp.js → generateSessionName-L0_s6vCa.js} +3 -3
- package/dist/chunks/{githubRepoPathMapping-7sx6rtjX.js → githubRepoPathMapping-CGEOENtp.js} +1 -1
- package/dist/chunks/{grok-ZGDHie6x.js → grok-p1yEaHVd.js} +4 -4
- package/dist/chunks/{growthbook-Cjl5wOGC.js → growthbook-uhd4CUKp.js} +1 -1
- package/dist/chunks/{heapdump-BtjR8Avz.js → heapdump-D5zORJKA.js} +1 -1
- package/dist/chunks/{help-CnGuF5OL.js → help-BOoThuUb.js} +5 -5
- package/dist/chunks/{hooks-EDuZo8rZ.js → hooks-Dlb--DQI.js} +1 -1
- package/dist/chunks/{hooks-6SfXd_6y.js → hooks-UQ_JSIfy.js} +2 -2
- package/dist/chunks/{hostAdapter-CutcCk0Y.js → hostAdapter-B5yLlQDm.js} +1 -1
- package/dist/chunks/{ide-DN0eFH-I.js → ide-EFY4x5hm.js} +2 -2
- package/dist/chunks/{inboundAttachments-CTBWhskT.js → inboundAttachments-0DCFrfnN.js} +1 -1
- package/dist/chunks/{initReplBridge-BKcPvixd.js → initReplBridge-DvZC3LMj.js} +19 -19
- package/dist/chunks/{insights-BS0ZNRLw.js → insights-9RJ5Khc8.js} +4 -4
- package/dist/chunks/{install-DicMWYKx.js → install-C96be5DE.js} +2 -2
- package/dist/chunks/{install-github-app-DHSeHIaO.js → install-github-app-BzeeFaVG.js} +3 -3
- package/dist/chunks/{install-slack-app-CLHR9i9n.js → install-slack-app-CqDmNYlF.js} +1 -1
- package/dist/chunks/{instrumentation-CUTDZ6VV.js → instrumentation-Bnub8hEj.js} +3 -3
- package/dist/chunks/{job-DKQ89zqd.js → job-DVJCanuD.js} +1 -1
- package/dist/chunks/{keybindings-5wQbz4c8.js → keybindings-BswJ-Uw7.js} +2 -2
- package/dist/chunks/{lang-BTCSHBFu.js → lang-CBJJqxqL.js} +2 -2
- package/dist/chunks/{language-Hl1jowwd.js → language-jmtIakwT.js} +1 -1
- package/dist/chunks/{loadAgentsDir-9z4W5vjy.js → loadAgentsDir-C4NKNvrs.js} +1 -1
- package/dist/chunks/{loadAgentsDir-CKCr6KLl.js → loadAgentsDir-C72eo76O.js} +11619 -5116
- package/dist/chunks/loadPluginHooks-BalGe00r.js +3 -0
- package/dist/chunks/{localSearch-DL5GhpDE.js → localSearch-C7kQiXKp.js} +1 -1
- package/dist/chunks/{localSearch-C5_bOr8q.js → localSearch-CHAR3yF3.js} +1 -1
- package/dist/chunks/{login-D9BtI7Pb.js → login-DKHI8tdJ.js} +1 -1
- package/dist/chunks/{login-DgQJAdug.js → login-cPF2s2Ip.js} +5 -5
- package/dist/chunks/{logoV2Utils-fw-X-t6i.js → logoV2Utils-i9vbvaH-.js} +4 -4
- package/dist/chunks/logout-ZcPro6_H.js +3 -0
- package/dist/chunks/{magicDocs-Crhut7gV.js → magicDocs-oftze6-m.js} +2 -2
- package/dist/chunks/{main-1IxSEB11.js → main-BkjRiKwX.js} +7 -7
- package/dist/chunks/{main-vXOmPUE1.js → main-YzWw6Vi0.js} +132 -134
- package/dist/chunks/{mappers-BCSKRNTR.js → mappers-Bx-2sRzn.js} +1 -1
- package/dist/chunks/{mcp-D1IOUzE7.js → mcp-C2cIgONA.js} +6 -6
- package/dist/chunks/{mcp-Ci0gy5Wm.js → mcp-CxTUyH2v.js} +6 -6
- package/dist/chunks/{mcp-7YXd30Q0.js → mcp-DMV-30LS.js} +3 -3
- package/dist/chunks/{mcpServer-CCvSYftj.js → mcpServer-DvtC6Pl3.js} +5 -5
- package/dist/chunks/{mcpServer-BHppS1ws.js → mcpServer-bGIO5UqI.js} +6 -6
- package/dist/chunks/{memory-IVFsZGbH.js → memory-2CKXpK42.js} +5 -5
- package/dist/chunks/{mobile-DC30stZP.js → mobile-DPxJSzS7.js} +1 -1
- package/dist/chunks/{model-CoZ6jhjM.js → model-18ea6LMg.js} +1 -1
- package/dist/chunks/{model-CtTIthX3.js → model-QMjDXcud.js} +3 -3
- package/dist/chunks/{onChangeAppState-C0crWlUU.js → onChangeAppState-DGOxmmCK.js} +3 -3
- package/dist/chunks/{openai-Bq-tZzdA.js → openai-DWUh0wBx.js} +4 -4
- package/dist/chunks/{overageCreditGrant-DA6Ji27r.js → overageCreditGrant-C4YTj6TG.js} +2 -2
- package/dist/chunks/{passes-CQjMQxDF.js → passes-BGaHP3jn.js} +2 -2
- package/dist/chunks/{paths-DSkEVuBg.js → paths-DvTLULIf.js} +3 -3
- package/dist/chunks/{permissions-bgBNVZj6.js → permissions-kdn0iNwR.js} +8 -8
- package/dist/chunks/pipeTransport-B2LrKe0N.js +78 -0
- package/dist/chunks/{plan-9HtDwIeE.js → plan-tiJVm4x_.js} +3 -3
- package/dist/chunks/{plugin-C2tIIFq9.js → plugin-D1c5Ko5y.js} +1 -1
- package/dist/chunks/{pluginAutoupdate-DZc2hFxf.js → pluginAutoupdate-Dpz5qa0X.js} +4 -4
- package/dist/chunks/{pluginBlocklist-DiS_LOxs.js → pluginBlocklist-BgclgWu5.js} +3 -3
- package/dist/chunks/{pluginCliCommands-BiXap9Fy.js → pluginCliCommands-ClnvND-z.js} +3 -3
- package/dist/chunks/{pluginFlagging-q8gMbkD5.js → pluginFlagging-DoQhFkzp.js} +1 -1
- package/dist/chunks/{pluginOperations-D9ol2ssj.js → pluginOperations-D-PDcILj.js} +4 -4
- package/dist/chunks/{pluginStartupCheck-COh-DcKy.js → pluginStartupCheck-CXt2hPkU.js} +3 -3
- package/dist/chunks/{pluginStartupCheck-CG2qErc7.js → pluginStartupCheck-n-skAjJV.js} +1 -1
- package/dist/chunks/{plugins-BietcZD3.js → plugins-ERB62mGT.js} +8 -8
- package/dist/chunks/policyLimits-DG0yzIIZ.js +3 -0
- package/dist/chunks/{pollConfig-2I_nDHA7.js → pollConfig-Cc-mH8wU.js} +1 -1
- package/dist/chunks/{poor-CB5mtPXL.js → poor-BXZpqueY.js} +1 -1
- package/dist/chunks/{poorMode-BQLnZVIm.js → poorMode-6i7DZvWQ.js} +1 -1
- package/dist/chunks/{poorMode-C7Tv4gyt.js → poorMode-KlsKA4Dw.js} +1 -1
- package/dist/chunks/{print-BWjElYkB.js → print-BdfIoC9c.js} +27 -46
- package/dist/chunks/{privacy-settings-C5mvrXGG.js → privacy-settings-DFtE--Du.js} +2 -2
- package/dist/chunks/{processBashCommand-DJgkl_kf.js → processBashCommand-CR-bUr4z.js} +3 -3
- package/dist/chunks/{processSlashCommand-CvVng3uM.js → processSlashCommand-Cqb-Wbv-.js} +5 -5
- package/dist/chunks/{projectContext-CtnrRecP.js → projectContext-DM5-VTsm.js} +1 -1
- package/dist/chunks/prompt-BamUvYWM.js +3 -0
- package/dist/chunks/prompt-Ny2N2zhC.js +3 -0
- package/dist/chunks/{promptEditor-B7ChKW5Y.js → promptEditor-NuKIAbMA.js} +1 -1
- package/dist/chunks/{protocolHandler-4lEbHJxz.js → protocolHandler-CLqJicyP.js} +5 -5
- package/dist/chunks/{rate-limit-options-BYbGoNeE.js → rate-limit-options-dW_WTcCr.js} +4 -4
- package/dist/chunks/{sessionActivity-BChWrGEw.js → rcDebugLog-4yU5VWxa.js} +28 -28
- package/dist/chunks/{referral-DWjXZbQX.js → referral-D46sEC3u.js} +2 -2
- package/dist/chunks/{refresh-G0J3u5aZ.js → refresh-B354z_gb.js} +1 -1
- package/dist/chunks/{registerProtocol-BOgiAPJV.js → registerProtocol-Crk-V31l.js} +2 -2
- package/dist/chunks/registry-D1PTOuro.js +3 -0
- package/dist/chunks/{release-notes-v3zOCxeU.js → release-notes-_Luv2jq3.js} +1 -1
- package/dist/chunks/{releaseNotes-BDI58OYX.js → releaseNotes-DTsjgjRS.js} +1 -1
- package/dist/chunks/{reload-plugins-CFeA55V6.js → reload-plugins-CIC8uesK.js} +4 -4
- package/dist/chunks/{remote-env-xOJjxQep.js → remote-env-BLZg34hJ.js} +2 -2
- package/dist/chunks/{remoteBridgeCore-C09AjDw1.js → remoteBridgeCore-3nL9TR6N.js} +8 -8
- package/dist/chunks/{remoteControlServer-VNsby-E0.js → remoteControlServer-Dz74gQxU.js} +7 -7
- package/dist/chunks/{rename-DeodVT8f.js → rename-C3phFdf9.js} +4 -4
- package/dist/chunks/{resume-BkdC4Iyi.js → resume-DKjCe4Re.js} +3 -3
- package/dist/chunks/{runtimeObserver-AfLQXrqg.js → runtimeObserver-2OqaSKnL.js} +8 -8
- package/dist/chunks/{runtimeObserver-DFFDac2w.js → runtimeObserver-x4IajJ5I.js} +1 -1
- package/dist/chunks/sandbox-adapter-C86MhZid.js +3 -0
- package/dist/chunks/{sandbox-toggle-KsZ9hetn.js → sandbox-toggle-DGTGln_2.js} +2 -2
- package/dist/chunks/{session-Cl-xCJ8U.js → session-UIhHe6mk.js} +2 -2
- package/dist/chunks/{sessionDiscovery-DMnEeuJg.js → sessionDiscovery-DH7yOz-4.js} +1 -1
- package/dist/chunks/sessionFileAccessHooks-C8xNLlGI.js +3 -0
- package/dist/chunks/{sessionMemory-CVMgpniu.js → sessionMemory-BKbAkl2d.js} +4 -4
- package/dist/chunks/sessionMemoryUtils-BpiV8qzn.js +3 -0
- package/dist/chunks/{sessionObserver-Drmv4DI0.js → sessionObserver-BOmJcunJ.js} +4 -4
- package/dist/chunks/{sessionObserver-DQQGWkXf.js → sessionObserver-DKWmLlNk.js} +1 -1
- package/dist/chunks/{sessionStorage-CcdKJkyn.js → sessionStorage-LOj57lSg.js} +1 -1
- package/dist/chunks/{sessionTitle-CynC1QWH.js → sessionTitle-BiJqks0Y.js} +2 -2
- package/dist/chunks/{sessionTracing-D9s950J5.js → sessionTracing-BsNTXXLM.js} +1 -1
- package/dist/chunks/{settingsSync-CPInbcj7.js → settingsSync-CrBZf0Vo.js} +2 -2
- package/dist/chunks/{setup-oNcnnqr2.js → setup-Cyn4xPeS.js} +15 -18
- package/dist/chunks/{setup-D5on8ibP.js → setup-DIpNQXq3.js} +2 -2
- package/dist/chunks/{setup-m0qLMFD7.js → setup-r_wH3t2q.js} +2 -2
- package/dist/chunks/{shadowedRuleDetection-Drf9u-db.js → shadowedRuleDetection-BWDwVkdP.js} +1 -1
- package/dist/chunks/{sideQuestion-BFd04Hpm.js → sideQuestion-BxdxvzE5.js} +2 -2
- package/dist/chunks/{sink-EtSaBh8E.js → sink-C0qjGZQ7.js} +2 -2
- package/dist/chunks/{sink-wb0QjAm7.js → sink-CwmSKi-f.js} +1 -1
- package/dist/chunks/{sinks-C7QBA6x8.js → sinks-DP4TXrIf.js} +1 -1
- package/dist/chunks/{skill-learning-CshrpvXr.js → skill-learning-BIDUFqPF.js} +7 -7
- package/dist/chunks/{skillChangeDetector-BXcvDT4K.js → skillChangeDetector-CHSWOerw.js} +5 -5
- package/dist/chunks/{skillGapStore-Ctpnj8SE.js → skillGapStore-Qh9JLx3Y.js} +4 -4
- package/dist/chunks/{skillGapStore-B0fBE8ju.js → skillGapStore-hl0-S_zE.js} +1 -1
- package/dist/chunks/{skillGenerator-DxHhQT_d.js → skillGenerator-DcUjuneC.js} +3 -3
- package/dist/chunks/{skillLearning-BQzbxDmM.js → skillLearning-DplYUMQo.js} +9 -9
- package/dist/chunks/{skillPanel-DrqDoWdh.js → skillPanel-DdQKt1IP.js} +5 -5
- package/dist/chunks/{skillSearchPanel-UXTLla11.js → skillSearchPanel-BWLFqREg.js} +2 -2
- package/dist/chunks/{skills-CKx64w0R.js → skills-C-7Qfe0X.js} +3 -3
- package/dist/chunks/{sprites-CmcTBNjG.js → sprites-CKFItufM.js} +1 -1
- package/dist/chunks/{src-Dx8ucMgB.js → src-HVJR0Zo0.js} +2 -2
- package/dist/chunks/{startupProfiler-CommxiJO.js → startupProfiler-CazxVJNo.js} +1 -0
- package/dist/chunks/{startupProfiler-DMJO2xz5.js → startupProfiler-XOIBwlp1.js} +1 -1
- package/dist/chunks/{stats-CUJL6gf6.js → stats-BGscCMCG.js} +4 -4
- package/dist/chunks/{stats-OQSoO8AA.js → stats-CwApMedu.js} +1 -1
- package/dist/chunks/{status-C2JI09Xw.js → status-DZaq2GnB.js} +1 -1
- package/dist/chunks/{statusNoticeHelpers-BGzUypnF.js → statusNoticeHelpers-DMp-bdUR.js} +1 -1
- package/dist/chunks/{tag-D7eNyLsL.js → tag-D0uIhfwI.js} +2 -2
- package/dist/chunks/{tasks-ji7qrtQZ.js → tasks-Dntdj_he.js} +1 -1
- package/dist/chunks/{teamHelpers-wA0wc9x7.js → teamHelpers-CS6BiyXo.js} +1 -1
- package/dist/chunks/{teamHelpers-C1EYvVG8.js → teamHelpers-DZPEdPcj.js} +1 -1
- package/dist/chunks/{teammateModeSnapshot-ChmbBeGY.js → teammateModeSnapshot-DwwGZmxV.js} +1 -1
- package/dist/chunks/{teammateModeSnapshot-D1C3CvY2.js → teammateModeSnapshot-wSzHvqXU.js} +1 -1
- package/dist/chunks/teleport-BgO5XUTS.js +3 -0
- package/dist/chunks/{templateJobs-juuqs5ID.js → templateJobs-By_fIrvy.js} +1 -1
- package/dist/chunks/{terminalSetup-DkW8kzTS.js → terminalSetup-BK7LahH5.js} +1 -1
- package/dist/chunks/{terminalSetup-YfKbBHG2.js → terminalSetup-BQDyPgSq.js} +1 -1
- package/dist/chunks/{theme-BZ0g686m.js → theme-a6ztF_07.js} +1 -1
- package/dist/chunks/{thinkback-BTvAN4SG.js → thinkback-a57hw1Dz.js} +4 -4
- package/dist/chunks/{thinkback-play-BJV9UsS_.js → thinkback-play-guqTStmo.js} +2 -2
- package/dist/chunks/{tmux-b0jmod-m.js → tmux-CqbuPVsI.js} +1 -1
- package/dist/chunks/{toolEventObserver-C0lzru27.js → toolEventObserver-BIoe2MAs.js} +1 -1
- package/dist/chunks/{toolEventObserver-BCMiKOMJ.js → toolEventObserver-D45tPv3F.js} +4 -4
- package/dist/chunks/{toolPool-BFpy26rC.js → toolPool-DdxWg47z.js} +2 -2
- package/dist/chunks/toolSearch-Di3gpeC0.js +3 -0
- package/dist/chunks/{trustedDevice-NWjic61P.js → trustedDevice-CgG7rtkW.js} +1 -1
- package/dist/chunks/{trustedDevice-BwB25RSK.js → trustedDevice-DEjXAOcz.js} +1 -1
- package/dist/chunks/udsClient-C0L2vH6O.js +79 -0
- package/dist/chunks/{ultrareviewCommand-Dm_UZkUI.js → ultrareviewCommand-BmmGo2kq.js} +4 -4
- package/dist/chunks/{undercover-3UBD5GtT.js → undercover-BVICZnNj.js} +2 -2
- package/dist/chunks/{undercover-BOjOeIVa.js → undercover-DQvQQ6yo.js} +1 -1
- package/dist/chunks/{updateCCB-gqr4tTHw.js → updateCCB-CTg-iLDL.js} +1 -1
- package/dist/chunks/{upgrade-D11LGswH.js → upgrade-DD8Sw-Am.js} +2 -2
- package/dist/chunks/{upload-DdAHsTCb.js → upload-BONHB_o1.js} +1 -1
- package/dist/chunks/{usage-BfgmPd0i.js → usage-Bpx-BQ_s.js} +1 -1
- package/dist/chunks/{usage-C-03An_-.js → usage-kee9LG0z.js} +1 -1
- package/dist/chunks/{useMainLoopModel-DYfWygEv.js → useMainLoopModel-Bq3koPFq.js} +2 -2
- package/dist/chunks/{useManagePlugins-D8K7TxOS.js → useManagePlugins-DT4FB9u2.js} +3 -3
- package/dist/chunks/{useMergedTools-JQNt6cB4.js → useMergedTools-ycEaiRuO.js} +2 -2
- package/dist/chunks/{useSearchInput-naZgTeTY.js → useSearchInput-BQwt8lhC.js} +1 -1
- package/dist/chunks/{useSettingsErrors-B_ON2uhq.js → useSettingsErrors-GLYWCTHJ.js} +1 -1
- package/dist/chunks/{useVoice-DjvY6q_C.js → useVoice-BqV1DBt-.js} +5 -5
- package/dist/chunks/{util-BwTRWVrl.js → util-DZxIhLjH.js} +10 -10
- package/dist/chunks/utils-CMcoQXdj.js +3 -0
- package/dist/chunks/{validatePlugin-CMOY-08u.js → validatePlugin-C3RXMbeg.js} +2 -2
- package/dist/chunks/{vim-AaHpII0z.js → vim-C_NuIV2X.js} +1 -1
- package/dist/chunks/{voice-I_niPDYx.js → voice-7aWPe3mC.js} +7 -7
- package/dist/chunks/{voiceModeEnabled-BZsBgRyY.js → voiceModeEnabled-C8WAlYqm.js} +1 -1
- package/dist/chunks/{voiceModeEnabled-DUmAjLGG.js → voiceModeEnabled-Cbo5eLWV.js} +1 -1
- package/dist/chunks/{voiceStreamSTT-B2yBe7t0.js → voiceStreamSTT-BtsMvGHm.js} +1 -1
- package/dist/chunks/{voiceStreamSTT-D78E5v0F.js → voiceStreamSTT-DmNYqjnW.js} +1 -1
- package/dist/chunks/{workerRegistry-RMvzN7sg.js → workerRegistry-fMzqsXVQ.js} +2 -2
- package/dist/chunks/{worktree-TqvDjo2A.js → worktree-C5Z0ICmn.js} +1 -1
- package/dist/chunks/{xml-CsdP7fK7.js → xml-DbZZp8Zy.js} +1 -1
- package/dist/cli.js +33 -33
- package/package.json +1 -1
- package/dist/chunks/ConsoleOAuthFlow-C1-SrEiG.js +0 -3
- package/dist/chunks/ToolSearchTool-BeZUtcX_.js +0 -3
- package/dist/chunks/asciicast-CWc3s8cO.js +0 -2
- package/dist/chunks/attach-CoVSthQI.js +0 -98
- package/dist/chunks/auth-CIEBUWAh.js +0 -3
- package/dist/chunks/changeDetector-BCuzf3ol.js +0 -3
- package/dist/chunks/claim-main-CwcSUu_w.js +0 -58
- package/dist/chunks/detach-0h-NxV2J.js +0 -75
- package/dist/chunks/earlyInput-B_aTbrmS.js +0 -2
- package/dist/chunks/history-vud-Tm1o.js +0 -68
- package/dist/chunks/lanBeacon-B9DUbPm5.js +0 -149
- package/dist/chunks/loadPluginHooks-pUErwUEr.js +0 -3
- package/dist/chunks/logout-D0IWuAdu.js +0 -3
- package/dist/chunks/ndjsonFramer-CKtNKe0_.js +0 -62
- package/dist/chunks/peers-DYT0TJOa.js +0 -46
- package/dist/chunks/pipe-status-BJlhlq2_.js +0 -49
- package/dist/chunks/pipeRegistry-Bqvffg4X.js +0 -316
- package/dist/chunks/pipeTransport-AYEUDuAI.js +0 -405
- package/dist/chunks/pipes-tMCTxKU7.js +0 -190
- package/dist/chunks/policyLimits-lOxwJSgx.js +0 -3
- package/dist/chunks/prompt-BRO4j8aV.js +0 -3
- package/dist/chunks/prompt-BWsbofSc.js +0 -3
- package/dist/chunks/registry-Bf_DxEcr.js +0 -3
- package/dist/chunks/sandbox-adapter-DlVhDXrc.js +0 -3
- package/dist/chunks/send-CCIavh7z.js +0 -85
- package/dist/chunks/sessionFileAccessHooks-CNUVTQ1R.js +0 -3
- package/dist/chunks/sessionMemoryUtils-xpfe6Pev.js +0 -3
- package/dist/chunks/teamDiscovery-BznSf4tS.js +0 -38
- package/dist/chunks/teleport-m6LivPjb.js +0 -3
- package/dist/chunks/toolSearch-CGzGQT9G.js +0 -3
- package/dist/chunks/udsClient-B70nBxvj.js +0 -242
- package/dist/chunks/udsClient-C5ukh5VE.js +0 -3
- package/dist/chunks/udsMessaging-C5P4nSg_.js +0 -3
- package/dist/chunks/udsMessaging-CccGgVgR.js +0 -603
- package/dist/chunks/useMasterMonitor-BQ1QhrlN.js +0 -323
- package/dist/chunks/utils-CxlU_Or6.js +0 -3
- /package/dist/chunks/{Dialog-XEoAY-lo.js → Dialog-Bl_rTts3.js} +0 -0
- /package/dist/chunks/{InProcessTransport-Dq207XBp.js → InProcessTransport-BDjSp8Wo.js} +0 -0
- /package/dist/chunks/{ListItem-BLRpONzN.js → ListItem-D9LLl8Ek.js} +0 -0
- /package/dist/chunks/{PermissionDialog-CGmleW13.js → PermissionDialog-D7UNIOtc.js} +0 -0
- /package/dist/chunks/{PressEnterToContinue-B8M_HSdG.js → PressEnterToContinue-D6AN11Tb.js} +0 -0
- /package/dist/chunks/{SearchBox-iXol4xrV.js → SearchBox-EHswnASB.js} +0 -0
- /package/dist/chunks/{WelcomeV2-BrLgacxm.js → WelcomeV2-oyf_KFt6.js} +0 -0
- /package/dist/chunks/{asciicast-BcRSJueh.js → asciicast-DOtXvlJV.js} +0 -0
- /package/dist/chunks/{attributionHooks-DYfOjXs3.js → attributionHooks-BNo0gNh0.js} +0 -0
- /package/dist/chunks/{attributionTrailer-BRzn4tt-.js → attributionTrailer-CP4i-6R-.js} +0 -0
- /package/dist/chunks/{autoModeDenials-DdxIfUGy.js → autoModeDenials-DR83Ic7k.js} +0 -0
- /package/dist/chunks/{bedrockClient-a4lkLst1.js → bedrockClient-BCB39ib8.js} +0 -0
- /package/dist/chunks/{bridgePointer-D_ikNrjn.js → bridgePointer-BQxAs9Dm.js} +0 -0
- /package/dist/chunks/{capacityWake-D0JN23wy.js → capacityWake-DyITX1TI.js} +0 -0
- /package/dist/chunks/{ccshareResume-DQEqveUy.js → ccshareResume-BEQIzaku.js} +0 -0
- /package/dist/chunks/{chromeNativeHost-Q6-G2bfy.js → chromeNativeHost-PnkUYqVg.js} +0 -0
- /package/dist/chunks/{claudeDesktop-WVwxxFNt.js → claudeDesktop-OsHcw1WR.js} +0 -0
- /package/dist/chunks/{cleanup-fEkK-hKc.js → cleanup-BJtntvv2.js} +0 -0
- /package/dist/chunks/{cliLaunch-CzauAJZe.js → cliLaunch-aWiCQf9j.js} +0 -0
- /package/dist/chunks/{connectHeadless-CCqvGWfL.js → connectHeadless-DOzENfOw.js} +0 -0
- /package/dist/chunks/{controlMessageCompat-DWv-mIPh.js → controlMessageCompat-BRVmRRA9.js} +0 -0
- /package/dist/chunks/{dangerousBackend-MjbASa5S.js → dangerousBackend-BlamCaXf.js} +0 -0
- /package/dist/chunks/{directoryCompletion-B8RCZO2J.js → directoryCompletion-BU0Dlg1v.js} +0 -0
- /package/dist/chunks/{earlyInput-BsKnIDJP.js → earlyInput-CATfkVKA.js} +0 -0
- /package/dist/chunks/{eventLoopStallDetector-C2lxypdX.js → eventLoopStallDetector-PpqOz7LN.js} +0 -0
- /package/dist/chunks/{exit-Bc29hy_j.js → exit-DirA_fuf.js} +0 -0
- /package/dist/chunks/{featureCheck-B9SCC0vN.js → featureCheck-Cv993Ldm.js} +0 -0
- /package/dist/chunks/{files-0Y68WpCS.js → files-CZIxcl4l.js} +0 -0
- /package/dist/chunks/{fpsMetrics-Di0G8OGw.js → fpsMetrics-Cl8mZ9J8.js} +0 -0
- /package/dist/chunks/{fuse-Df9YUVtR.js → fuse-BhjvaeDO.js} +0 -0
- /package/dist/chunks/{instinctParser-Dez-rnKK.js → instinctParser-DCTNGiAi.js} +0 -0
- /package/dist/chunks/{jwtUtils-DgPQR3cZ.js → jwtUtils-DL8L2JPK.js} +0 -0
- /package/dist/chunks/{lib-LxJ6DoZY.js → lib-CnkuCi7e.js} +0 -0
- /package/dist/chunks/{lockfile-D65KX0SH.js → lockfile-CcfaKXD7.js} +0 -0
- /package/dist/chunks/{modalContext-D2kC2GcE.js → modalContext-7wVG_JCR.js} +0 -0
- /package/dist/chunks/{observationStore-DtE97mP4.js → observationStore-BBBlD6y4.js} +0 -0
- /package/dist/chunks/{openai-U_owM0Wc.js → openai-DlVQAfwt.js} +0 -0
- /package/dist/chunks/{operations-ChPHc8e6.js → operations-Dv3d6vA6.js} +0 -0
- /package/dist/chunks/{output-style-BXQs3dnJ.js → output-style-R8UZLOIE.js} +0 -0
- /package/dist/chunks/{parseConnectUrl-MYfoAQ1a.js → parseConnectUrl-B7utf1Ba.js} +0 -0
- /package/dist/chunks/{poller-CJzreIZS.js → poller-BuKApY06.js} +0 -0
- /package/dist/chunks/{postCommitAttribution-DmuxexP6.js → postCommitAttribution-DbNo_b3T.js} +0 -0
- /package/dist/chunks/{projectContext-CEnG2izP.js → projectContext-CWwagotk.js} +0 -0
- /package/dist/chunks/{prompt-BnKv9_mj.js → prompt-rbaI_D5u.js} +0 -0
- /package/dist/chunks/{renderOptions-CHpHxRwl.js → renderOptions-DwPtvyyC.js} +0 -0
- /package/dist/chunks/{rewind-Ddhd2R_A.js → rewind-tscYe98H.js} +0 -0
- /package/dist/chunks/{rollback-Gt4wFMPp.js → rollback-CXcDCnEi.js} +0 -0
- /package/dist/chunks/{sanitization-CYd1OuBT.js → sanitization-DECVPK2r.js} +0 -0
- /package/dist/chunks/{sdkHeapDumpMonitor-BTcjJax2.js → sdkHeapDumpMonitor-D2snXOzY.js} +0 -0
- /package/dist/chunks/{server-DBPAty_m.js → server-ig2-DfTA.js} +0 -0
- /package/dist/chunks/{serverBanner-Bq43BqnP.js → serverBanner-BHbp5t4w.js} +0 -0
- /package/dist/chunks/{serverLog-C1qKA5fJ.js → serverLog-zxAMuJ_O.js} +0 -0
- /package/dist/chunks/{sessionDataUploader-Bnnb2afa.js → sessionDataUploader-FV9CZw0s.js} +0 -0
- /package/dist/chunks/{sessionManager-CprPE_HT.js → sessionManager-CuHQQSdR.js} +0 -0
- /package/dist/chunks/{slashCommandParsing-rs-ERr7C.js → slashCommandParsing-60JH6-d_.js} +0 -0
- /package/dist/chunks/{src-2yhJaeQZ.js → src-4WLsfC8V.js} +0 -0
- /package/dist/chunks/{src-C__qTDYF.js → src-iHiSipnJ.js} +0 -0
- /package/dist/chunks/{state-BVnzrPu7.js → state-DgMvaYzj.js} +0 -0
- /package/dist/chunks/{staticRender-Dhz8mkhA.js → staticRender-BSHQcTCI.js} +0 -0
- /package/dist/chunks/{stdio-CWDcxFu0.js → stdio-CWFOXyFI.js} +0 -0
- /package/dist/chunks/{stickers-4SNqAchz.js → stickers-C_Uob58C.js} +0 -0
- /package/dist/chunks/{systemTheme-Dp21I3Xt.js → systemTheme-A-hRlw_f.js} +0 -0
- /package/dist/chunks/{types-BrlxvD1M.js → types-DsgAHfPE.js} +0 -0
- /package/dist/chunks/{up-C0eEOvrs.js → up-DrjAA1yD.js} +0 -0
- /package/dist/chunks/{upstreamproxy-DoroF8oN.js → upstreamproxy-CYkpYjQW.js} +0 -0
- /package/dist/chunks/{voice-CSkrOZl_.js → voice-CESv02rP.js} +0 -0
- /package/dist/chunks/{workSecret-CMZkIeol.js → workSecret-8KZlvhR2.js} +0 -0
|
@@ -1,405 +0,0 @@
|
|
|
1
|
-
import { i as __require, n as __esmMin, r as __exportAll } from "./chunk-CyLJMB0t.js";
|
|
2
|
-
import { n as getClaudeConfigHomeDir, s as init_envUtils } from "./envUtils-DVwWVCmJ.js";
|
|
3
|
-
import { n as init_defineProperty, t as _defineProperty } from "./defineProperty-Cq4c5J8x.js";
|
|
4
|
-
import { o as init_log, s as logError } from "./log-BtGcZqeW.js";
|
|
5
|
-
import { n as init_ndjsonFramer, t as attachNdjsonFramer } from "./ndjsonFramer-CKtNKe0_.js";
|
|
6
|
-
import { join } from "path";
|
|
7
|
-
import { mkdir, readdir, unlink, writeFile } from "fs/promises";
|
|
8
|
-
import { createConnection, createServer } from "net";
|
|
9
|
-
import { EventEmitter } from "events";
|
|
10
|
-
//#region src/utils/pipeTransport.ts
|
|
11
|
-
/**
|
|
12
|
-
* Named Pipe Transport - Unix domain socket IPC for CLI terminals
|
|
13
|
-
*
|
|
14
|
-
* Supports two modes:
|
|
15
|
-
* 1. Standalone: Two independent terminals chat via pipes
|
|
16
|
-
* 2. Master-Slave bridge: Master CLI attaches to Slave CLI, forwarding
|
|
17
|
-
* prompts and receiving streamed AI output back.
|
|
18
|
-
*
|
|
19
|
-
* Each CLI auto-creates a PipeServer at:
|
|
20
|
-
* ~/.claude/pipes/{session-short-id}.sock
|
|
21
|
-
*
|
|
22
|
-
* Protocol: newline-delimited JSON (NDJSON), one message per line.
|
|
23
|
-
*/
|
|
24
|
-
var pipeTransport_exports = /* @__PURE__ */ __exportAll({
|
|
25
|
-
PipeClient: () => PipeClient,
|
|
26
|
-
PipeServer: () => PipeServer,
|
|
27
|
-
connectToPipe: () => connectToPipe,
|
|
28
|
-
createPipeServer: () => createPipeServer,
|
|
29
|
-
getLocalIp: () => getLocalIp,
|
|
30
|
-
getPipeDisplayRole: () => getPipeDisplayRole,
|
|
31
|
-
getPipeIpc: () => getPipeIpc,
|
|
32
|
-
getPipePath: () => getPipePath,
|
|
33
|
-
getPipesDir: () => getPipesDir,
|
|
34
|
-
isPipeAlive: () => isPipeAlive,
|
|
35
|
-
isPipeControlled: () => isPipeControlled,
|
|
36
|
-
listAlivePipes: () => listAlivePipes,
|
|
37
|
-
listPipes: () => listPipes
|
|
38
|
-
});
|
|
39
|
-
function getPipesDir() {
|
|
40
|
-
return join(getClaudeConfigHomeDir(), "pipes");
|
|
41
|
-
}
|
|
42
|
-
function getPipePath(name) {
|
|
43
|
-
const safeName = name.replace(/[^a-zA-Z0-9_-]/g, "_");
|
|
44
|
-
if (process.platform === "win32") return `\\\\.\\pipe\\claude-code-${safeName}`;
|
|
45
|
-
return join(getPipesDir(), `${safeName}.sock`);
|
|
46
|
-
}
|
|
47
|
-
async function ensurePipesDir() {
|
|
48
|
-
await mkdir(getPipesDir(), { recursive: true });
|
|
49
|
-
}
|
|
50
|
-
async function createPipeServer(name, options) {
|
|
51
|
-
const server = new PipeServer(name);
|
|
52
|
-
await server.start(options);
|
|
53
|
-
return server;
|
|
54
|
-
}
|
|
55
|
-
async function connectToPipe(targetName, senderName, timeoutMs, tcpEndpoint) {
|
|
56
|
-
const client = new PipeClient(targetName, senderName, tcpEndpoint);
|
|
57
|
-
await client.connect(timeoutMs);
|
|
58
|
-
return client;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* List all registered pipe names (fast — file scan only, no network probe).
|
|
62
|
-
* Use isPipeAlive() separately to check liveness.
|
|
63
|
-
*/
|
|
64
|
-
async function listPipes() {
|
|
65
|
-
try {
|
|
66
|
-
await ensurePipesDir();
|
|
67
|
-
const files = await readdir(getPipesDir());
|
|
68
|
-
const ext = process.platform === "win32" ? ".pipe" : ".sock";
|
|
69
|
-
return files.filter((f) => f.endsWith(ext)).map((f) => f.replace(new RegExp(`\\${ext}$`), ""));
|
|
70
|
-
} catch {
|
|
71
|
-
return [];
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* List only alive pipes (probes each one — slower, use sparingly).
|
|
76
|
-
* Automatically cleans up stale registry files.
|
|
77
|
-
*/
|
|
78
|
-
async function listAlivePipes() {
|
|
79
|
-
const names = await listPipes();
|
|
80
|
-
const ext = process.platform === "win32" ? ".pipe" : ".sock";
|
|
81
|
-
const alive = [];
|
|
82
|
-
for (const name of names) if (await isPipeAlive(name, 1e3)) alive.push(name);
|
|
83
|
-
else unlink(join(getPipesDir(), `${name}${ext}`)).catch(() => {});
|
|
84
|
-
return alive;
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Probe whether a pipe server is alive by sending a ping.
|
|
88
|
-
*/
|
|
89
|
-
async function isPipeAlive(name, timeoutMs = 2e3) {
|
|
90
|
-
try {
|
|
91
|
-
const client = new PipeClient(name, "_probe");
|
|
92
|
-
await client.connect(timeoutMs);
|
|
93
|
-
return new Promise((resolve) => {
|
|
94
|
-
const timer = setTimeout(() => {
|
|
95
|
-
client.disconnect();
|
|
96
|
-
resolve(false);
|
|
97
|
-
}, timeoutMs);
|
|
98
|
-
client.onMessage((msg) => {
|
|
99
|
-
if (msg.type === "pong") {
|
|
100
|
-
clearTimeout(timer);
|
|
101
|
-
client.disconnect();
|
|
102
|
-
resolve(true);
|
|
103
|
-
}
|
|
104
|
-
});
|
|
105
|
-
client.send({ type: "ping" });
|
|
106
|
-
});
|
|
107
|
-
} catch {
|
|
108
|
-
return false;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
function isPipeControlled(pipeIpc) {
|
|
112
|
-
return Boolean(pipeIpc.attachedBy);
|
|
113
|
-
}
|
|
114
|
-
function getPipeDisplayRole(pipeIpc) {
|
|
115
|
-
if (pipeIpc.role === "master") return "master";
|
|
116
|
-
if (pipeIpc.subIndex != null) return `sub-${pipeIpc.subIndex}`;
|
|
117
|
-
return "main";
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Get the local (non-loopback) IPv4 address for registry metadata.
|
|
121
|
-
*/
|
|
122
|
-
function getLocalIp() {
|
|
123
|
-
try {
|
|
124
|
-
const { networkInterfaces } = __require("os");
|
|
125
|
-
const nets = networkInterfaces();
|
|
126
|
-
for (const name of Object.keys(nets)) for (const net of nets[name] ?? []) if (net.family === "IPv4" && !net.internal) return net.address;
|
|
127
|
-
} catch {}
|
|
128
|
-
return "127.0.0.1";
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Safely read pipeIpc from AppState, returning the default if not yet initialized.
|
|
132
|
-
* This avoids crashes when the state hasn't been extended by the PIPE_IPC bootstrap.
|
|
133
|
-
*/
|
|
134
|
-
function getPipeIpc(state) {
|
|
135
|
-
return state?.pipeIpc ?? DEFAULT_PIPE_IPC;
|
|
136
|
-
}
|
|
137
|
-
var PipeServer, PipeClient, DEFAULT_PIPE_IPC;
|
|
138
|
-
var init_pipeTransport = __esmMin((() => {
|
|
139
|
-
init_envUtils();
|
|
140
|
-
init_log();
|
|
141
|
-
init_ndjsonFramer();
|
|
142
|
-
init_defineProperty();
|
|
143
|
-
PipeServer = class extends EventEmitter {
|
|
144
|
-
constructor(name) {
|
|
145
|
-
super();
|
|
146
|
-
_defineProperty(this, "server", null);
|
|
147
|
-
_defineProperty(this, "tcpServer", null);
|
|
148
|
-
_defineProperty(this, "clients", /* @__PURE__ */ new Set());
|
|
149
|
-
_defineProperty(this, "handlers", []);
|
|
150
|
-
_defineProperty(this, "_tcpAddress", null);
|
|
151
|
-
_defineProperty(this, "name", void 0);
|
|
152
|
-
_defineProperty(this, "socketPath", void 0);
|
|
153
|
-
this.name = name;
|
|
154
|
-
this.socketPath = getPipePath(name);
|
|
155
|
-
}
|
|
156
|
-
/** TCP endpoint if TCP is enabled, null otherwise. */
|
|
157
|
-
get tcpAddress() {
|
|
158
|
-
return this._tcpAddress;
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Shared handler for both UDS and TCP sockets.
|
|
162
|
-
*/
|
|
163
|
-
setupSocket(socket) {
|
|
164
|
-
this.clients.add(socket);
|
|
165
|
-
this.emit("connection", socket);
|
|
166
|
-
attachNdjsonFramer(socket, (msg) => {
|
|
167
|
-
this.emit("message", msg);
|
|
168
|
-
const reply = (replyMsg) => {
|
|
169
|
-
replyMsg.from = replyMsg.from ?? this.name;
|
|
170
|
-
replyMsg.ts = replyMsg.ts ?? (/* @__PURE__ */ new Date()).toISOString();
|
|
171
|
-
if (!socket.destroyed) socket.write(JSON.stringify(replyMsg) + "\n");
|
|
172
|
-
};
|
|
173
|
-
for (const handler of this.handlers) handler(msg, reply);
|
|
174
|
-
});
|
|
175
|
-
socket.on("close", () => {
|
|
176
|
-
this.clients.delete(socket);
|
|
177
|
-
this.emit("disconnect", socket);
|
|
178
|
-
});
|
|
179
|
-
socket.on("error", (err) => {
|
|
180
|
-
this.clients.delete(socket);
|
|
181
|
-
logError(err);
|
|
182
|
-
});
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* Start listening for incoming connections.
|
|
186
|
-
* @param options - Optional TCP configuration for LAN mode.
|
|
187
|
-
*/
|
|
188
|
-
async start(options) {
|
|
189
|
-
await ensurePipesDir();
|
|
190
|
-
if (process.platform !== "win32") try {
|
|
191
|
-
await unlink(this.socketPath);
|
|
192
|
-
} catch {}
|
|
193
|
-
await new Promise((resolve, reject) => {
|
|
194
|
-
this.server = createServer((socket) => this.setupSocket(socket));
|
|
195
|
-
this.server.on("error", reject);
|
|
196
|
-
this.server.listen(this.socketPath, () => {
|
|
197
|
-
if (process.platform === "win32") {
|
|
198
|
-
const regFile = join(getPipesDir(), `${this.name}.pipe`);
|
|
199
|
-
const { hostname } = __require("os");
|
|
200
|
-
writeFile(regFile, JSON.stringify({
|
|
201
|
-
pid: process.pid,
|
|
202
|
-
ts: Date.now(),
|
|
203
|
-
ip: getLocalIp(),
|
|
204
|
-
hostname: hostname()
|
|
205
|
-
})).catch(() => {});
|
|
206
|
-
}
|
|
207
|
-
resolve();
|
|
208
|
-
});
|
|
209
|
-
});
|
|
210
|
-
if (options?.enableTcp) await this.startTcpServer(options.tcpPort ?? 0);
|
|
211
|
-
}
|
|
212
|
-
/**
|
|
213
|
-
* Start TCP listener for LAN peers.
|
|
214
|
-
*/
|
|
215
|
-
async startTcpServer(port) {
|
|
216
|
-
return new Promise((resolve, reject) => {
|
|
217
|
-
this.tcpServer = createServer((socket) => this.setupSocket(socket));
|
|
218
|
-
this.tcpServer.on("error", reject);
|
|
219
|
-
this.tcpServer.listen(port, "0.0.0.0", () => {
|
|
220
|
-
const addr = this.tcpServer.address();
|
|
221
|
-
if (addr && typeof addr === "object") this._tcpAddress = {
|
|
222
|
-
host: "0.0.0.0",
|
|
223
|
-
port: addr.port
|
|
224
|
-
};
|
|
225
|
-
resolve();
|
|
226
|
-
});
|
|
227
|
-
});
|
|
228
|
-
}
|
|
229
|
-
/**
|
|
230
|
-
* Register a handler for incoming messages.
|
|
231
|
-
*/
|
|
232
|
-
onMessage(handler) {
|
|
233
|
-
this.handlers.push(handler);
|
|
234
|
-
}
|
|
235
|
-
/**
|
|
236
|
-
* Broadcast a message to all connected clients.
|
|
237
|
-
*/
|
|
238
|
-
broadcast(msg) {
|
|
239
|
-
msg.from = msg.from ?? this.name;
|
|
240
|
-
msg.ts = msg.ts ?? (/* @__PURE__ */ new Date()).toISOString();
|
|
241
|
-
const line = JSON.stringify(msg) + "\n";
|
|
242
|
-
for (const client of this.clients) if (!client.destroyed) client.write(line);
|
|
243
|
-
}
|
|
244
|
-
/**
|
|
245
|
-
* Send to a specific socket (used for directed replies in attach flow).
|
|
246
|
-
*/
|
|
247
|
-
sendTo(socket, msg) {
|
|
248
|
-
msg.from = msg.from ?? this.name;
|
|
249
|
-
msg.ts = msg.ts ?? (/* @__PURE__ */ new Date()).toISOString();
|
|
250
|
-
if (!socket.destroyed) socket.write(JSON.stringify(msg) + "\n");
|
|
251
|
-
}
|
|
252
|
-
get connectionCount() {
|
|
253
|
-
return this.clients.size;
|
|
254
|
-
}
|
|
255
|
-
async close() {
|
|
256
|
-
for (const client of this.clients) client.destroy();
|
|
257
|
-
this.clients.clear();
|
|
258
|
-
if (this.tcpServer) await new Promise((resolve) => {
|
|
259
|
-
this.tcpServer.close(() => {
|
|
260
|
-
this.tcpServer = null;
|
|
261
|
-
this._tcpAddress = null;
|
|
262
|
-
resolve();
|
|
263
|
-
});
|
|
264
|
-
});
|
|
265
|
-
return new Promise((resolve) => {
|
|
266
|
-
if (!this.server) {
|
|
267
|
-
resolve();
|
|
268
|
-
return;
|
|
269
|
-
}
|
|
270
|
-
this.server.close(() => {
|
|
271
|
-
this.server = null;
|
|
272
|
-
if (process.platform === "win32") unlink(join(getPipesDir(), `${this.name}.pipe`)).catch(() => {});
|
|
273
|
-
else unlink(this.socketPath).catch(() => {});
|
|
274
|
-
resolve();
|
|
275
|
-
});
|
|
276
|
-
});
|
|
277
|
-
}
|
|
278
|
-
};
|
|
279
|
-
PipeClient = class extends EventEmitter {
|
|
280
|
-
constructor(targetName, senderName, tcpEndpoint) {
|
|
281
|
-
super();
|
|
282
|
-
_defineProperty(this, "socket", null);
|
|
283
|
-
_defineProperty(this, "handlers", []);
|
|
284
|
-
_defineProperty(this, "targetName", void 0);
|
|
285
|
-
_defineProperty(this, "senderName", void 0);
|
|
286
|
-
_defineProperty(this, "socketPath", void 0);
|
|
287
|
-
_defineProperty(this, "tcpEndpoint", void 0);
|
|
288
|
-
this.targetName = targetName;
|
|
289
|
-
this.senderName = senderName ?? `client-${process.pid}`;
|
|
290
|
-
this.socketPath = getPipePath(targetName);
|
|
291
|
-
this.tcpEndpoint = tcpEndpoint ?? null;
|
|
292
|
-
}
|
|
293
|
-
/**
|
|
294
|
-
* Connect to a pipe server (UDS or TCP).
|
|
295
|
-
* When tcpEndpoint was provided in constructor, connects over TCP.
|
|
296
|
-
* Otherwise uses UDS with retry for socket file existence.
|
|
297
|
-
*/
|
|
298
|
-
async connect(timeoutMs = 5e3) {
|
|
299
|
-
if (this.tcpEndpoint) return this.connectTcp(timeoutMs);
|
|
300
|
-
return this.connectUds(timeoutMs);
|
|
301
|
-
}
|
|
302
|
-
async connectTcp(timeoutMs) {
|
|
303
|
-
const { host, port } = this.tcpEndpoint;
|
|
304
|
-
return new Promise((resolve, reject) => {
|
|
305
|
-
const timer = setTimeout(() => {
|
|
306
|
-
reject(/* @__PURE__ */ new Error(`TCP connection to "${this.targetName}" at ${host}:${port} timed out after ${timeoutMs}ms`));
|
|
307
|
-
}, timeoutMs);
|
|
308
|
-
const socket = createConnection({
|
|
309
|
-
host,
|
|
310
|
-
port
|
|
311
|
-
}, () => {
|
|
312
|
-
clearTimeout(timer);
|
|
313
|
-
this.socket = socket;
|
|
314
|
-
this.setupSocketListeners(socket);
|
|
315
|
-
this.emit("connected");
|
|
316
|
-
resolve();
|
|
317
|
-
});
|
|
318
|
-
socket.on("error", (err) => {
|
|
319
|
-
clearTimeout(timer);
|
|
320
|
-
socket.destroy();
|
|
321
|
-
reject(err);
|
|
322
|
-
});
|
|
323
|
-
});
|
|
324
|
-
}
|
|
325
|
-
async connectUds(timeoutMs) {
|
|
326
|
-
const { access } = await import("fs/promises");
|
|
327
|
-
const deadline = Date.now() + timeoutMs;
|
|
328
|
-
const retryDelayMs = 300;
|
|
329
|
-
if (process.platform !== "win32") while (Date.now() < deadline) try {
|
|
330
|
-
await access(this.socketPath);
|
|
331
|
-
break;
|
|
332
|
-
} catch {
|
|
333
|
-
if (Date.now() + retryDelayMs >= deadline) throw new Error(`Pipe "${this.targetName}" not found at ${this.socketPath}. Is the server running?`);
|
|
334
|
-
await new Promise((r) => setTimeout(r, retryDelayMs));
|
|
335
|
-
}
|
|
336
|
-
return new Promise((resolve, reject) => {
|
|
337
|
-
const timer = setTimeout(() => {
|
|
338
|
-
reject(/* @__PURE__ */ new Error(`Connection to pipe "${this.targetName}" timed out after ${timeoutMs}ms`));
|
|
339
|
-
}, Math.max(deadline - Date.now(), 1e3));
|
|
340
|
-
const socket = createConnection({ path: this.socketPath }, () => {
|
|
341
|
-
clearTimeout(timer);
|
|
342
|
-
this.socket = socket;
|
|
343
|
-
this.setupSocketListeners(socket);
|
|
344
|
-
this.emit("connected");
|
|
345
|
-
resolve();
|
|
346
|
-
});
|
|
347
|
-
socket.on("error", (err) => {
|
|
348
|
-
clearTimeout(timer);
|
|
349
|
-
socket.destroy();
|
|
350
|
-
reject(err);
|
|
351
|
-
});
|
|
352
|
-
});
|
|
353
|
-
}
|
|
354
|
-
setupSocketListeners(socket) {
|
|
355
|
-
attachNdjsonFramer(socket, (msg) => {
|
|
356
|
-
this.emit("message", msg);
|
|
357
|
-
const reply = (replyMsg) => this.send(replyMsg);
|
|
358
|
-
for (const handler of this.handlers) handler(msg, reply);
|
|
359
|
-
});
|
|
360
|
-
socket.on("close", () => {
|
|
361
|
-
this.emit("disconnect");
|
|
362
|
-
});
|
|
363
|
-
socket.on("error", (err) => {
|
|
364
|
-
logError(err);
|
|
365
|
-
});
|
|
366
|
-
}
|
|
367
|
-
onMessage(handler) {
|
|
368
|
-
this.handlers.push(handler);
|
|
369
|
-
}
|
|
370
|
-
send(msg) {
|
|
371
|
-
if (!this.socket || this.socket.destroyed) throw new Error(`Not connected to pipe "${this.targetName}"`);
|
|
372
|
-
msg.from = msg.from ?? this.senderName;
|
|
373
|
-
msg.ts = msg.ts ?? (/* @__PURE__ */ new Date()).toISOString();
|
|
374
|
-
this.socket.write(JSON.stringify(msg) + "\n");
|
|
375
|
-
}
|
|
376
|
-
disconnect() {
|
|
377
|
-
if (this.socket) {
|
|
378
|
-
this.socket.destroy();
|
|
379
|
-
this.socket = null;
|
|
380
|
-
}
|
|
381
|
-
}
|
|
382
|
-
get connected() {
|
|
383
|
-
return this.socket !== null && !this.socket.destroyed;
|
|
384
|
-
}
|
|
385
|
-
};
|
|
386
|
-
DEFAULT_PIPE_IPC = {
|
|
387
|
-
role: "main",
|
|
388
|
-
subIndex: null,
|
|
389
|
-
displayRole: "main",
|
|
390
|
-
serverName: null,
|
|
391
|
-
attachedBy: null,
|
|
392
|
-
localIp: null,
|
|
393
|
-
hostname: null,
|
|
394
|
-
machineId: null,
|
|
395
|
-
mac: null,
|
|
396
|
-
statusVisible: false,
|
|
397
|
-
selectorOpen: false,
|
|
398
|
-
selectedPipes: [],
|
|
399
|
-
routeMode: "selected",
|
|
400
|
-
slaves: {},
|
|
401
|
-
discoveredPipes: []
|
|
402
|
-
};
|
|
403
|
-
}));
|
|
404
|
-
//#endregion
|
|
405
|
-
export { getPipeIpc as a, isPipeAlive as c, getPipeDisplayRole as i, isPipeControlled as l, createPipeServer as n, getPipesDir as o, getLocalIp as r, init_pipeTransport as s, connectToPipe as t, pipeTransport_exports as u };
|
|
@@ -1,190 +0,0 @@
|
|
|
1
|
-
import { a as __toCommonJS, n as __esmMin } from "./chunk-CyLJMB0t.js";
|
|
2
|
-
import { a as getPipeIpc, c as isPipeAlive, i as getPipeDisplayRole, l as isPipeControlled, s as init_pipeTransport } from "./pipeTransport-AYEUDuAI.js";
|
|
3
|
-
import { d as readRegistry, l as isMainMachine, n as cleanupStaleEntries, s as init_pipeRegistry, u as mergeWithLanPeers } from "./pipeRegistry-Bqvffg4X.js";
|
|
4
|
-
import { i as lanBeacon_exports, r as init_lanBeacon } from "./lanBeacon-B9DUbPm5.js";
|
|
5
|
-
//#region src/commands/pipes/pipes.ts
|
|
6
|
-
var call;
|
|
7
|
-
//#endregion
|
|
8
|
-
__esmMin((() => {
|
|
9
|
-
init_pipeTransport();
|
|
10
|
-
init_pipeRegistry();
|
|
11
|
-
call = async (_args, context) => {
|
|
12
|
-
const args = _args.trim();
|
|
13
|
-
context.setAppState((prev) => {
|
|
14
|
-
const pipeIpc = getPipeIpc(prev);
|
|
15
|
-
return {
|
|
16
|
-
...prev,
|
|
17
|
-
pipeIpc: {
|
|
18
|
-
...pipeIpc,
|
|
19
|
-
statusVisible: true,
|
|
20
|
-
selectorOpen: !pipeIpc.selectorOpen
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
});
|
|
24
|
-
if (args.startsWith("select ") || args.startsWith("sel ")) {
|
|
25
|
-
const pipeName = args.replace(/^(select|sel)\s+/, "").trim();
|
|
26
|
-
if (!pipeName) return {
|
|
27
|
-
type: "text",
|
|
28
|
-
value: "Usage: /pipes select <pipe-name>"
|
|
29
|
-
};
|
|
30
|
-
context.setAppState((prev) => {
|
|
31
|
-
const pipeIpc = getPipeIpc(prev);
|
|
32
|
-
const selected = pipeIpc.selectedPipes ?? [];
|
|
33
|
-
if (selected.includes(pipeName)) return prev;
|
|
34
|
-
return {
|
|
35
|
-
...prev,
|
|
36
|
-
pipeIpc: {
|
|
37
|
-
...pipeIpc,
|
|
38
|
-
selectedPipes: [...selected, pipeName]
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
});
|
|
42
|
-
return {
|
|
43
|
-
type: "text",
|
|
44
|
-
value: `Selected ${pipeName} — messages will be broadcast to this pipe.`
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
if (args.startsWith("deselect ") || args.startsWith("desel ") || args.startsWith("unsel ")) {
|
|
48
|
-
const pipeName = args.replace(/^(deselect|desel|unsel)\s+/, "").trim();
|
|
49
|
-
if (!pipeName) return {
|
|
50
|
-
type: "text",
|
|
51
|
-
value: "Usage: /pipes deselect <pipe-name>"
|
|
52
|
-
};
|
|
53
|
-
context.setAppState((prev) => {
|
|
54
|
-
const pipeIpc = getPipeIpc(prev);
|
|
55
|
-
const selected = (pipeIpc.selectedPipes ?? []).filter((n) => n !== pipeName);
|
|
56
|
-
return {
|
|
57
|
-
...prev,
|
|
58
|
-
pipeIpc: {
|
|
59
|
-
...pipeIpc,
|
|
60
|
-
selectedPipes: selected
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
});
|
|
64
|
-
return {
|
|
65
|
-
type: "text",
|
|
66
|
-
value: `Deselected ${pipeName}.`
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
if (args === "select-all" || args === "all") {
|
|
70
|
-
const pipeState = getPipeIpc(context.getAppState());
|
|
71
|
-
const slaveNames = Object.keys(pipeState.slaves);
|
|
72
|
-
context.setAppState((prev) => ({
|
|
73
|
-
...prev,
|
|
74
|
-
pipeIpc: {
|
|
75
|
-
...getPipeIpc(prev),
|
|
76
|
-
selectedPipes: slaveNames
|
|
77
|
-
}
|
|
78
|
-
}));
|
|
79
|
-
return {
|
|
80
|
-
type: "text",
|
|
81
|
-
value: `Selected all ${slaveNames.length} connected pipes.`
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
if (args === "deselect-all" || args === "none") {
|
|
85
|
-
context.setAppState((prev) => ({
|
|
86
|
-
...prev,
|
|
87
|
-
pipeIpc: {
|
|
88
|
-
...getPipeIpc(prev),
|
|
89
|
-
selectedPipes: []
|
|
90
|
-
}
|
|
91
|
-
}));
|
|
92
|
-
return {
|
|
93
|
-
type: "text",
|
|
94
|
-
value: "Deselected all pipes. Messages will only run locally."
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
const pipeState = getPipeIpc(context.getAppState());
|
|
98
|
-
const myName = pipeState.serverName;
|
|
99
|
-
const displayRole = getPipeDisplayRole(pipeState);
|
|
100
|
-
const selected = pipeState.selectedPipes ?? [];
|
|
101
|
-
await cleanupStaleEntries();
|
|
102
|
-
const registry = await readRegistry();
|
|
103
|
-
const lines = [];
|
|
104
|
-
lines.push(`Your pipe: ${myName ?? "(not started)"}`);
|
|
105
|
-
lines.push(`Role: ${displayRole}`);
|
|
106
|
-
if (pipeState.machineId) lines.push(`Machine ID: ${pipeState.machineId.slice(0, 8)}...`);
|
|
107
|
-
if (pipeState.localIp) lines.push(`IP: ${pipeState.localIp}`);
|
|
108
|
-
if (pipeState.hostname) lines.push(`Host: ${pipeState.hostname}`);
|
|
109
|
-
if (isPipeControlled(pipeState)) lines.push(`Controlled by: ${pipeState.attachedBy}`);
|
|
110
|
-
lines.push("");
|
|
111
|
-
if (registry.mainMachineId) {
|
|
112
|
-
const isMyMachine = isMainMachine(pipeState.machineId ?? "", registry);
|
|
113
|
-
lines.push(`Main machine: ${registry.mainMachineId.slice(0, 8)}...${isMyMachine ? " (this machine)" : ""}`);
|
|
114
|
-
}
|
|
115
|
-
if (registry.main) {
|
|
116
|
-
const m = registry.main;
|
|
117
|
-
const alive = await isPipeAlive(m.pipeName, 1e3);
|
|
118
|
-
const isSelf = m.pipeName === myName;
|
|
119
|
-
lines.push(` [main] ${m.pipeName} ${m.hostname}/${m.ip} [${alive ? "alive" : "stale"}]${isSelf ? " (you)" : ""}`);
|
|
120
|
-
}
|
|
121
|
-
const discoveredPipes = [];
|
|
122
|
-
for (const sub of registry.subs) {
|
|
123
|
-
const alive = await isPipeAlive(sub.pipeName, 1e3);
|
|
124
|
-
const isSelf = sub.pipeName === myName;
|
|
125
|
-
const checkbox = selected.includes(sub.pipeName) ? "☑" : "☐";
|
|
126
|
-
const isAttached = pipeState.slaves[sub.pipeName] ? " [connected]" : "";
|
|
127
|
-
lines.push(` ${checkbox} [sub-${sub.subIndex}] ${sub.pipeName} ${sub.hostname}/${sub.ip} [${alive ? "alive" : "stale"}]${isAttached}${isSelf ? " (you)" : ""}`);
|
|
128
|
-
if (alive) discoveredPipes.push({
|
|
129
|
-
id: sub.id,
|
|
130
|
-
pipeName: sub.pipeName,
|
|
131
|
-
role: `sub-${sub.subIndex}`,
|
|
132
|
-
machineId: sub.machineId,
|
|
133
|
-
ip: sub.ip,
|
|
134
|
-
hostname: sub.hostname,
|
|
135
|
-
alive
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
if (!registry.main && registry.subs.length === 0) lines.push("No other pipes in registry.");
|
|
139
|
-
{
|
|
140
|
-
const { getLanBeacon } = (init_lanBeacon(), __toCommonJS(lanBeacon_exports));
|
|
141
|
-
const lanBeaconRef = getLanBeacon();
|
|
142
|
-
if (lanBeaconRef) {
|
|
143
|
-
const lanOnly = mergeWithLanPeers(registry, lanBeaconRef.getPeers()).filter((e) => e.source === "lan");
|
|
144
|
-
if (lanOnly.length > 0) {
|
|
145
|
-
lines.push("");
|
|
146
|
-
lines.push("LAN Peers:");
|
|
147
|
-
for (const peer of lanOnly) {
|
|
148
|
-
const checkbox = selected.includes(peer.pipeName) ? "☑" : "☐";
|
|
149
|
-
const ep = peer.tcpEndpoint ? `tcp:${peer.tcpEndpoint.host}:${peer.tcpEndpoint.port}` : "";
|
|
150
|
-
lines.push(` ${checkbox} [${peer.role}] ${peer.pipeName} ${peer.hostname}/${peer.ip} ${ep} [LAN]`);
|
|
151
|
-
discoveredPipes.push({
|
|
152
|
-
id: peer.id,
|
|
153
|
-
pipeName: peer.pipeName,
|
|
154
|
-
role: peer.role,
|
|
155
|
-
machineId: peer.machineId,
|
|
156
|
-
ip: peer.ip,
|
|
157
|
-
hostname: peer.hostname,
|
|
158
|
-
alive: true
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
} else {
|
|
162
|
-
lines.push("");
|
|
163
|
-
lines.push("LAN Peers: (none discovered)");
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
context.setAppState((prev) => ({
|
|
168
|
-
...prev,
|
|
169
|
-
pipeIpc: {
|
|
170
|
-
...getPipeIpc(prev),
|
|
171
|
-
discoveredPipes
|
|
172
|
-
}
|
|
173
|
-
}));
|
|
174
|
-
lines.push("");
|
|
175
|
-
lines.push(`Selected: ${selected.length > 0 ? selected.join(", ") : "(none — messages run locally only)"}`);
|
|
176
|
-
lines.push("");
|
|
177
|
-
lines.push("Commands:");
|
|
178
|
-
lines.push(" /pipes select <name> — select pipe for broadcast");
|
|
179
|
-
lines.push(" /pipes deselect <name> — deselect pipe");
|
|
180
|
-
lines.push(" /pipes all — select all connected");
|
|
181
|
-
lines.push(" /pipes none — deselect all");
|
|
182
|
-
lines.push(" /send <name> <msg> — send to specific pipe");
|
|
183
|
-
lines.push(" /claim-main — claim this machine as main");
|
|
184
|
-
return {
|
|
185
|
-
type: "text",
|
|
186
|
-
value: lines.join("\n")
|
|
187
|
-
};
|
|
188
|
-
};
|
|
189
|
-
}))();
|
|
190
|
-
export { call };
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { Cd as resetBackendDetection, Sd as registerWindowsTerminalBackend, _d as init_registry, bd as registerITermBackend, dd as getBackendByType, fd as getCachedBackend, gd as getTeammateExecutor, hd as getResolvedTeammateMode, ld as detectAndGetBackend, md as getInProcessBackend, pd as getCachedDetectionResult, ud as ensureBackendsRegistered, vd as isInProcessEnabled, xd as registerTmuxBackend, yd as markInProcessFallback } from "./loadAgentsDir-CKCr6KLl.js";
|
|
2
|
-
init_registry();
|
|
3
|
-
export { detectAndGetBackend, ensureBackendsRegistered, getBackendByType, getCachedBackend, getCachedDetectionResult, getInProcessBackend, getResolvedTeammateMode, getTeammateExecutor, isInProcessEnabled, markInProcessFallback, registerITermBackend, registerTmuxBackend, registerWindowsTerminalBackend, resetBackendDetection };
|