sliccy 6.256.11 → 6.256.13
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/ui/.vite/manifest.json +261 -261
- package/dist/ui/assets/{account-store-Bbt6ripl.js → account-store-BL_8ChTq.js} +1 -1
- package/dist/ui/assets/{account-store-Dfc_0bGo.js → account-store-CRulNb41.js} +1 -1
- package/dist/ui/assets/{adobe-DbMkFxDj.js → adobe-253xKg67.js} +1 -1
- package/dist/ui/assets/{adobe-f6engEYJ.js → adobe-DnEnb36b.js} +1 -1
- package/dist/ui/assets/agent-message-to-chat-CGO6oI4A.js +7 -0
- package/dist/ui/assets/{agent-panels-DfLRYlFo.js → agent-panels-wW9dyBKG.js} +1 -1
- package/dist/ui/assets/agent-session-archive-CZN0w-ke.js +2 -0
- package/dist/ui/assets/{almost-bash-shell-headless-DiHESiIG.js → almost-bash-shell-headless-BU19g3qu.js} +15 -15
- package/dist/ui/assets/{apply-layout-BHVfwynq.js → apply-layout-CKNWtXfd.js} +1 -1
- package/dist/ui/assets/{azure-openai-D-RsvRJ3.js → azure-openai-BDBxTYAw.js} +1 -1
- package/dist/ui/assets/{azure-openai-bImr093U.js → azure-openai-BvYzMIj9.js} +1 -1
- package/dist/ui/assets/{bunny-probe-DKhPxZeZ.js → bunny-probe-DpXkdbYB.js} +1 -1
- package/dist/ui/assets/{bunny-run-DwKL9l6t.js → bunny-run-rzX0F1nl.js} +1 -1
- package/dist/ui/assets/{cdp-HJcsKsa2.js → cdp-Dsm1GADb.js} +1 -1
- package/dist/ui/assets/{cerebras-BeeJHrlo.js → cerebras-BXxGJuif.js} +1 -1
- package/dist/ui/assets/{cerebras-Dup5xYwh.js → cerebras-BcMNzJi3.js} +1 -1
- package/dist/ui/assets/{composer-speech-AIb_ShWb.js → composer-speech-Bs3FbM-i.js} +1 -1
- package/dist/ui/assets/{connect-surface-CF2jwB8N.js → connect-surface-Ba3Ke5aM.js} +1 -1
- package/dist/ui/assets/{directed-approval-CVl4dZHS.js → directed-approval-C5W3WJVa.js} +1 -1
- package/dist/ui/assets/{emscripten-vfs-hook-DfWVjeHD.js → emscripten-vfs-hook-CtwAEh72.js} +1 -1
- package/dist/ui/assets/{export-spool-BM-FG26Y.js → export-spool-twZZWurf.js} +1 -1
- package/dist/ui/assets/{exporter-deps-DEd_7AYZ.js → exporter-deps-xnNr83vG.js} +2 -2
- package/dist/ui/assets/{fast-path-D86NfZfu.js → fast-path-6ekMOXSI.js} +1 -1
- package/dist/ui/assets/frozen-archive-writer-EZsuL49i.js +8 -0
- package/dist/ui/assets/frozen-archive-writer-qYFDiThA.js +8 -0
- package/dist/ui/assets/{frozen-session-delete-DVH5vOJB.js → frozen-session-delete-CVNvI90e.js} +1 -1
- package/dist/ui/assets/{frozen-session-identity-DK7V_wXH.js → frozen-session-identity-B8lRRYtw.js} +1 -1
- package/dist/ui/assets/{frozen-session-identity-CVGqg_js.js → frozen-session-identity-CLil11AR.js} +1 -1
- package/dist/ui/assets/{gelatiere-unit-D6qTJ6wE.js → gelatiere-unit-CwQ4Z-8u.js} +1 -1
- package/dist/ui/assets/{github-wfu1bqz1.js → github-CZUj50jg.js} +1 -1
- package/dist/ui/assets/{github-copilot-CSOXtb9i.js → github-copilot-CRmSA8Li.js} +1 -1
- package/dist/ui/assets/{github-copilot-BKJsut95.js → github-copilot-DkvpLiRx.js} +1 -1
- package/dist/ui/assets/{github-8w-iHnnY.js → github-jLSAxETr.js} +1 -1
- package/dist/ui/assets/{hear-BA5C-q61.js → hear-_yh9fTlw.js} +1 -1
- package/dist/ui/assets/{js-realm-worker-C9vn1zs1.js → js-realm-worker-J9nx5Q-j.js} +2 -2
- package/dist/ui/assets/{jsh-executor-Cl9G72tP.js → jsh-executor-mI9O-wx4.js} +3 -3
- package/dist/ui/assets/{kernel-worker-DHiFoUSZ.js → kernel-worker-BQddJN6m.js} +73 -80
- package/dist/ui/assets/{lick-ws-bridge-GkwM5Q5a.js → lick-ws-bridge-CXIyIC0_.js} +1 -1
- package/dist/ui/assets/{lick-ws-bridge-B64Szi3A.js → lick-ws-bridge-CuBkByJW.js} +1 -1
- package/dist/ui/assets/live-session-curation-Bhnb6z_B.js +15 -0
- package/dist/ui/assets/{live-session-curation-d4Vo8lCe.js → live-session-curation-DoZ7BwQd.js} +1 -1
- package/dist/ui/assets/live-session-snapshot-Cilj3zqK.js +1 -0
- package/dist/ui/assets/{local-llm-CffI-ve2.js → local-llm-B3dSUNOb.js} +1 -1
- package/dist/ui/assets/{local-llm-DfYnxbGr.js → local-llm-BcuXGox2.js} +1 -1
- package/dist/ui/assets/{main-CiBxDanA.js → main-B9uLwabk.js} +3 -3
- package/dist/ui/assets/{main-cherry-D249dvdZ.js → main-cherry-CpbKxiZK.js} +1 -1
- package/dist/ui/assets/{mcp-command-DI69eT5n.js → mcp-command-JNxmsQLt.js} +10 -10
- package/dist/ui/assets/{memory-curation-seam-BUUnH66S.js → memory-curation-seam-ByUA3cmh.js} +1 -1
- package/dist/ui/assets/{memory-health-Bed2xrOb.js → memory-health-wNnvD0kB.js} +1 -1
- package/dist/ui/assets/{memory-write-execute-BwznofYt.js → memory-write-execute-DrvvvhKi.js} +1 -1
- package/dist/ui/assets/{merge-folded-cost-into-frozen-vAHFCYLv.js → merge-folded-cost-into-frozen-BGSL3jVL.js} +1 -1
- package/dist/ui/assets/{migration-s8QYUSWA.js → migration-DZenEQ01.js} +1 -1
- package/dist/ui/assets/{new-session-BHywxROi.js → new-session-BPCfvA6j.js} +2 -2
- package/dist/ui/assets/{oauth-bootstrap-rLdGGhiL.js → oauth-bootstrap-DF2A9FNH.js} +2 -2
- package/dist/ui/assets/{onboarding-orchestrator-BbyOemvV.js → onboarding-orchestrator-Du1IyfmQ.js} +1 -1
- package/dist/ui/assets/{openai-codex-G--Qt_0u.js → openai-codex-C2c3eydK.js} +1 -1
- package/dist/ui/assets/{openai-codex-CRCkJ3Gq.js → openai-codex-DmWHPdvs.js} +1 -1
- package/dist/ui/assets/{openrouter-ew-RULzK.js → openrouter-BCX02Yk7.js} +1 -1
- package/dist/ui/assets/{openrouter-CHO0K9BS.js → openrouter-XC9tgI9x.js} +1 -1
- package/dist/ui/assets/{openrouter-free-Bq5Kc_JP.js → openrouter-free-1asghv4A.js} +1 -1
- package/dist/ui/assets/{openrouter-free-DHVggkFB.js → openrouter-free-BQMEmEP2.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-Cuy30sSx.js → openrouter-oauth-CZNb6ySK.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-Cdu8JWRx.js → openrouter-oauth-CyATq8lK.js} +1 -1
- package/dist/ui/assets/{panel-rpc-handlers-BMfphFWR.js → panel-rpc-handlers-Z_PY6nKh.js} +2 -2
- package/dist/ui/assets/{panelize-shell-8cCP_UY4.js → panelize-shell-CNPJupm7.js} +1 -1
- package/dist/ui/assets/{pi-edit-execution-Dm-IaPA9.js → pi-edit-execution-aPxQmnfw.js} +1 -1
- package/dist/ui/assets/{profile-directory-opfs-CwWHZ1mI.js → profile-directory-opfs-DfDAT732.js} +1 -1
- package/dist/ui/assets/{profile-export-ArlQAdGa.js → profile-export-BdEdJ251.js} +2 -2
- package/dist/ui/assets/{profile-export-deps-BildqbH-.js → profile-export-deps-DpT8pwWG.js} +2 -2
- package/dist/ui/assets/{provider-D3aaS8zI.js → provider-B2ILr1Oc.js} +1 -1
- package/dist/ui/assets/{provider-CNPkdjuB.js → provider-C7-ZDo9_.js} +1 -1
- package/dist/ui/assets/{provider-settings-BAV4pDYI.js → provider-settings-HeCMxfPA.js} +1 -1
- package/dist/ui/assets/provider-store-access-BYN-eNh6.js +1 -0
- package/dist/ui/assets/provider-store-access-BfpNwGx-.js +1 -0
- package/dist/ui/assets/{providers-CGU-DA5P.js → providers-B6bwctI0.js} +2 -2
- package/dist/ui/assets/{providers-CTprgbNj.js → providers-DqI0wt99.js} +1 -1
- package/dist/ui/assets/{quick-llm-CGD6yIFK.js → quick-llm-Bhg1Qsvk.js} +1 -1
- package/dist/ui/assets/{realm-inprocess-PeLPE8yY.js → realm-inprocess-DR9gVLt3.js} +2 -2
- package/dist/ui/assets/{realm-unhandled-rejections-BK15-Am7.js → realm-unhandled-rejections-BZJxRO8M.js} +1 -1
- package/dist/ui/assets/{realm-unhandled-rejections-D-sYk3L5.js → realm-unhandled-rejections-Bb1RQBWs.js} +1 -1
- package/dist/ui/assets/{remote-terminal-view-CLjsOpGM.js → remote-terminal-view-DLgfQYzJ.js} +2 -2
- package/dist/ui/assets/{restore-xRYCGEJa.js → restore-BLWYXa-O.js} +1 -1
- package/dist/ui/assets/{run-BMxmR5kl.js → run-BJVRJfry.js} +1 -1
- package/dist/ui/assets/{run-Bi_CtYdz.js → run-BiN6qTlm.js} +2 -2
- package/dist/ui/assets/{run-BVATr7Xg.js → run-CHGn5R2p.js} +2 -2
- package/dist/ui/assets/{run-BzYN60zI.js → run-CncM0gvM.js} +1 -1
- package/dist/ui/assets/{run-8v2eJDLE.js → run-DDKWaVLJ.js} +2 -2
- package/dist/ui/assets/{run-kDywGyI_.js → run-DYK7RuK3.js} +2 -2
- package/dist/ui/assets/{run-YyW5Bd1z.js → run-DvLcUCCT.js} +1 -1
- package/dist/ui/assets/{serve-command-B5muwyZ_.js → serve-command-DvTFPR-H.js} +2 -2
- package/dist/ui/assets/{serve-runtime-BvZ5pZEU.js → serve-runtime-Dc11AJBu.js} +1 -1
- package/dist/ui/assets/{session-command-memory-CSLmKMBk.js → session-command-memory-2JOGo6yD.js} +2 -2
- package/dist/ui/assets/{session-jsonl-DxqOvcwM.js → session-jsonl-Du5hJR-Y.js} +1 -1
- package/dist/ui/assets/{session-jsonl-VIrDPkzT.js → session-jsonl-ZG0juWbu.js} +1 -1
- package/dist/ui/assets/{session-search-index-B0YIOpWr.js → session-search-index-QQ1sxRWT.js} +2 -2
- package/dist/ui/assets/{sessions-C9JcENTo.js → sessions-DWl_wZV3.js} +1 -1
- package/dist/ui/assets/{setup-feature-flags-remote-B8cB7Oq8.js → setup-feature-flags-remote-CZb8ym_6.js} +1 -1
- package/dist/ui/assets/{setup-model-catalog-CktPLHfh.js → setup-model-catalog-DHrO2Kfp.js} +1 -1
- package/dist/ui/assets/{silent-renew-backoff-C1264yFk.js → silent-renew-backoff-nrppuh6T.js} +1 -1
- package/dist/ui/assets/slicc-version-D0nsefc_.js +1 -0
- package/dist/ui/assets/{snapshot-store-Cxzssf1H.js → snapshot-store-DCt_qbAe.js} +2 -2
- package/dist/ui/assets/{soundscape-BApfy-L6.js → soundscape-B2yoSkQB.js} +1 -1
- package/dist/ui/assets/{speak-BbeItZwT.js → speak-DZwNiIko.js} +1 -1
- package/dist/ui/assets/{sprinkle-manager-DBapmUlV.js → sprinkle-manager-DxyX3NbF.js} +1 -1
- package/dist/ui/assets/{sprinkle-renderer-DiEVud40.js → sprinkle-renderer-DKpjowk6.js} +1 -1
- package/dist/ui/assets/src-DBlBYTvU.js +582 -0
- package/dist/ui/assets/{ssh-QXOZ_9C5.js → ssh-BeqALvgX.js} +1 -1
- package/dist/ui/assets/{sudo-C0_6FMm9.js → sudo-GkFEMFPC.js} +1 -1
- package/dist/ui/assets/{supervisor-DVxVAOGw.js → supervisor-C73lAuSe.js} +1 -1
- package/dist/ui/assets/{sync-dialog-BDqhBmfj.js → sync-dialog-BnOTTgci.js} +1 -1
- package/dist/ui/assets/{transformers-env-BWJMxWgQ.js → transformers-env-B-1kLQRQ.js} +1 -1
- package/dist/ui/assets/{tray-leader-D6T3kZL6.js → tray-leader-DmmGAndB.js} +1 -1
- package/dist/ui/assets/{tray-leave-runtime-aYi97LF8.js → tray-leave-runtime-BDzrqGlh.js} +1 -1
- package/dist/ui/assets/{tray-sidecar-CaliGCRe.js → tray-sidecar-CbjBYp0n.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-Bv2YHRaV.js → upgrade-detection-_GX3hzxQ.js} +1 -1
- package/dist/ui/assets/{upgrade-to-seven-CtOLoIOn.js → upgrade-to-seven-BqcS19nh.js} +2 -2
- package/dist/ui/assets/{voice-reply-CKIuZ9Dk.js → voice-reply-BnKAiPTl.js} +1 -1
- package/dist/ui/assets/{wc-attach-DV4k0eaX.js → wc-attach-BqpBnkA0.js} +2 -2
- package/dist/ui/assets/{wc-browser-CwQVBvz4.js → wc-browser-CF0O-Ri0.js} +1 -1
- package/dist/ui/assets/{wc-computers-CASkX8DP.js → wc-computers-BX8DYCQq.js} +1 -1
- package/dist/ui/assets/{wc-detached-57K6VKSv.js → wc-detached-C0OfGsMQ.js} +1 -1
- package/dist/ui/assets/{wc-extension-Dhe5xsR6.js → wc-extension-BMQL0I9I.js} +2 -2
- package/dist/ui/assets/{wc-follower-5LMaN79G.js → wc-follower-Co4brJFi.js} +3 -3
- package/dist/ui/assets/{wc-follower-oauth-CwVfocxx.js → wc-follower-oauth-Pzit-Xte.js} +2 -2
- package/dist/ui/assets/{wc-gelatiere-C2fCHIZa.js → wc-gelatiere-Cb7NYNC8.js} +1 -1
- package/dist/ui/assets/wc-live-oqKW7QrK.js +248 -0
- package/dist/ui/assets/{wc-nav-Jy-L5ljh.js → wc-nav-CxPbGD5_.js} +2 -2
- package/dist/ui/assets/{wc-onboarding-BCGjMZMg.js → wc-onboarding-DYltx5C7.js} +2 -2
- package/dist/ui/assets/{wc-permissions-oNWetQ88.js → wc-permissions-X7QRMVtU.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-BJZNCWC7.js → wc-placeholder-DLt-co6P.js} +2 -2
- package/dist/ui/assets/{wc-profile-export-Cc1nFXlL.js → wc-profile-export-DaY7L-Io.js} +3 -3
- package/dist/ui/assets/{wc-secret-request-gjwVYJoY.js → wc-secret-request-B5OTif8D.js} +1 -1
- package/dist/ui/assets/{wc-settings-B9KuxV7H.js → wc-settings-CH3Oe1cT.js} +3 -3
- package/dist/ui/assets/{wc-shell-sK_ZzgMP.js → wc-shell-B6egqVH1.js} +3 -3
- package/dist/ui/assets/{wc-shortcut-config-0N09rbUr.js → wc-shortcut-config-CEc1903E.js} +1 -1
- package/dist/ui/assets/{wc-sprinkles-C6r2BgND.js → wc-sprinkles-BHIC0rGC.js} +2 -2
- package/dist/ui/assets/{wc-transcript-export-DFagRenA.js → wc-transcript-export-BduFFwnK.js} +2 -2
- package/dist/ui/assets/{wc-tray-De5OZEVk.js → wc-tray-C7h0Rxkp.js} +4 -4
- package/dist/ui/assets/{wc-unit-context-kfFcXXnc.js → wc-unit-context-BpAIa5HN.js} +1 -1
- package/dist/ui/assets/welcome-detection-C4QBcXlF.js +1 -0
- package/dist/ui/assets/{whisper-session-BgGlbdOF.js → whisper-session-DAFwIDHy.js} +2 -2
- package/dist/ui/assets/{xai-grok-CHijHc-6.js → xai-grok-BTQg_O4T.js} +1 -1
- package/dist/ui/assets/{xai-grok-Ng_c25l4.js → xai-grok-DNR48o_C.js} +1 -1
- package/dist/ui/assets/zip-stream-iQd4PFgh.js +1 -0
- package/dist/ui/index.html +3 -3
- package/dist/ui/packages/webapp/index.html +3 -3
- package/dist/ui/packages/webapp/upgrade-to-seven.html +3 -3
- package/dist/ui/upgrade-to-seven.html +3 -3
- package/package.json +1 -1
- package/dist/ui/assets/archive-redaction-Bi6veJCs.js +0 -1
- package/dist/ui/assets/frozen-archive-writer-DAiOXYfi.js +0 -8
- package/dist/ui/assets/frozen-archive-writer-DEBCxy3Y.js +0 -8
- package/dist/ui/assets/live-session-curation-BuIeKYrr.js +0 -15
- package/dist/ui/assets/live-session-snapshot-Dbk92d26.js +0 -1
- package/dist/ui/assets/provider-store-access-DBVSVGeb.js +0 -1
- package/dist/ui/assets/provider-store-access-Dy8i3Dnl.js +0 -1
- package/dist/ui/assets/slicc-version-BzhewwWy.js +0 -1
- package/dist/ui/assets/src-BQREyqyX.js +0 -582
- package/dist/ui/assets/wc-live-BBAsZXQW.js +0 -248
- package/dist/ui/assets/welcome-detection-CHDvqZzv.js +0 -1
- package/dist/ui/assets/zip-stream-Ca3Bq_Cz.js +0 -1
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mount-picker-popup-DE6OgmCv.js","assets/logger-dqckiMJt.js","assets/picker-popup-DioAkr8b.js","assets/api-endpoint-CNqFa-M3.js","assets/usb-picker-Dl5JWkcW.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/serial-picker-fazP7oMX.js","assets/hid-picker-CBnnaoh4.js","assets/usb-device-registry--JwKRTYp.js","assets/serial-port-registry-CCqklAEr.js","assets/hid-device-registry-B2R-0rNt.js","assets/quick-llm-CGD6yIFK.js","assets/core-BXRpM6QF.js","assets/preload-helper-BLdHbfdN.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/feature-flags-DDJdMcuw.js","assets/proxied-fetch-2sdz8vNB.js","assets/base64-ELzoYfwP.js","assets/secret-topology-BuXN_6_0.js","assets/secrets-bridge-client-BD4AHTxg.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/image-markers-4eaAm9QS.js","assets/account-store-Dfc_0bGo.js","assets/stored-accounts-CdMZdZUa.js","assets/providers-CGU-DA5P.js","assets/renamed-providers-d0bAaa0l.js","assets/bedrock-camp-compat-D6dUCn_T.js","assets/bedrock-camp-extra-models-COVvjLB5.js","assets/claude-model-version-3MWQoaco.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-3Rdl9zWU.js","assets/session-jsonl-VIrDPkzT.js","assets/zip-stream-Ca3Bq_Cz.js","assets/transcript-export-DTRO8k03.js","assets/types-D8gIX-W-.js","assets/frozen-archive-writer-DEBCxy3Y.js","assets/dictation-priming-BHJC0hch.js","assets/wc-shell-sK_ZzgMP.js","assets/mime-types-D0xZwlMO.js","assets/bridge-protocol-C52CnDIj.js","assets/sha256-DynDhwRL.js","assets/telemetry-kqkj0A7x.js","assets/GELATIERE-CLK_MA5a.js","assets/same-file-identity-DuEcSmPX.js","assets/message-envelope-BPSSjJbW.js","assets/agent-message-to-chat-BiZHDYFR.js","assets/wc-shell-WkeczD9x.css","assets/main-CiBxDanA.js","assets/tray-follower-status-BAjnN7Ar.js","assets/clipboard-eqmn97SP.js","assets/sessions-C9JcENTo.js","assets/types-CFfBWsH5.js","assets/store-DP4F8FwF.js","assets/entries-ChYQ3OMf.js","assets/wc-placeholder-BJZNCWC7.js","assets/wc-attach-DV4k0eaX.js","assets/permissions-surface-registry-CilCRwhh.js","assets/frozen-session-delete-DVH5vOJB.js","assets/frozen-session-identity-CVGqg_js.js","assets/snapshot-store-Cxzssf1H.js","assets/live-session-curation-BuIeKYrr.js","assets/MEMORY-B9cGngY_.js","assets/thinking-level-DCJktR5U.js","assets/wc-gelatiere-C2fCHIZa.js","assets/new-session-BHywxROi.js","assets/db-CIXZItfi.js","assets/mount-table-store-dY2IfQ5S.js","assets/legacy-styles-CGcVbQni.js","assets/soundscape-BApfy-L6.js","assets/voice-reply-CKIuZ9Dk.js","assets/speak-BbeItZwT.js","assets/speech-assets-bridge-DtbOauCq.js","assets/transformers-env-BWJMxWgQ.js","assets/shared-DSEuryGJ.js","assets/remote-vfs-client-Cs1yUtQm.js","assets/writable-vfs-client-CQe6oZ75.js","assets/wc-onboarding-BCGjMZMg.js","assets/wc-browser-CwQVBvz4.js","assets/slicc-app-url-BKHBBuTR.js","assets/tab-teleport-D2HEqVTq.js","assets/teleport-storage-vNIjArpc.js","assets/wc-computers-CASkX8DP.js","assets/scale-DGaWcXnU.js","assets/remote-terminal-view-CLjsOpGM.js","assets/browser-OXhgs9Cl.js","assets/usb-operations-Dx9QXlZ0.js","assets/terminal-session-client-DmE-iBjP.js","assets/secret-env-B5BchABJ.js","assets/wc-permissions-oNWetQ88.js","assets/wc-permissions-providers-DvV2aZfl.js","assets/wc-secret-request-gjwVYJoY.js","assets/secret-request-registry-DrOMKR1H.js","assets/secret-backends-BVrvI2vY.js","assets/wc-profile-export-Cc1nFXlL.js","assets/wc-seven-banner-BitWulyq.js","assets/theme-CmogKzdP.js","assets/theme-engine-CwaY1aIr.js","assets/warm-wterm-snqvCS0-.js","assets/panelize-shell-8cCP_UY4.js","assets/sudoers-BkuPh2_Q.js","assets/virtual-device-paths-D45tpPP6.js","assets/layout-apply-registry-Cw730jao.js","assets/wc-shortcut-config-0N09rbUr.js","assets/keys-BMebW-sj.js","assets/remote-sprinkle-vfs-UzNBy5VJ.js","assets/bounded-walk-BjxKWNqp.js","assets/path-utils-DNJG-zQf.js","assets/wc-sprinkles-C6r2BgND.js","assets/lick-target-match-mT46VVD2.js","assets/wc-unit-context-kfFcXXnc.js","assets/agent-panels-DfLRYlFo.js","assets/apply-layout-BHVfwynq.js","assets/dock-tree-spec-D-vXUz3b.js","assets/wc-tray-De5OZEVk.js","assets/wc-follower-oauth-CwVfocxx.js","assets/sprinkle-renderer-DiEVud40.js","assets/hid-operations-C97SZtrY.js","assets/pending-request-table-k-D7ZZsL.js","assets/export-spool-BM-FG26Y.js","assets/panel-rpc-sLZo8PD-.js","assets/tray-leader-D6T3kZL6.js","assets/types-DSxCdZw6.js","assets/synthetic-cdp-transport-OUVdC4zy.js","assets/sprinkle-instances-B8n7h-oP.js","assets/wc-transcript-export-DFagRenA.js","assets/wc-nav-Jy-L5ljh.js","assets/composer-speech-AIb_ShWb.js","assets/whisper-session-BgGlbdOF.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./logger-dqckiMJt.js";import{d as n,f as r,m as i,p as a,t as o}from"./core-BXRpM6QF.js";import{t as s}from"./preload-helper-BLdHbfdN.js";import{a as c,n as l,t as u}from"./dictation-priming-BHJC0hch.js";import{a as d,s as f}from"./feature-flags-DDJdMcuw.js";import{r as p,t as m}from"./base64-ELzoYfwP.js";import"./proxied-fetch-2sdz8vNB.js";import{a as h,c as g,d as _,f as v,l as y,n as b,o as x,s as S,u as ee}from"./sprinkle-renderer-DiEVud40.js";import{C,H as w,T as te,V as ne,u as re}from"./account-store-Dfc_0bGo.js";import{d as ie,o as ae,p as oe,s as se,t as ce}from"./api-endpoint-CNqFa-M3.js";import{A as le,C as ue,F as T,M as de,N as fe,O as pe,P as E,R as me,S as he,T as ge,_ as _e,d as ve,f as ye,j as be,k as xe,l as D,m as O,p as Se,u as k,x as Ce,y as we}from"./zip-stream-Ca3Bq_Cz.js";import{n as Te}from"./transcript-export-DTRO8k03.js";import{r as Ee}from"./secret-topology-BuXN_6_0.js";import{t as De}from"./secrets-bridge-client-BD4AHTxg.js";import{a as Oe,c as ke,l as Ae,n as je,p as Me,r as Ne}from"./telemetry-kqkj0A7x.js";import{l as Pe}from"./renamed-providers-d0bAaa0l.js";import{a as Fe,i as Ie,t as Le}from"./tray-follower-status-BAjnN7Ar.js";import{C as Re,D as ze,d as Be,g as Ve,i as He,k as Ue,l as We,u as Ge,x as Ke}from"./main-CiBxDanA.js";import{n as A,r as j,t as qe}from"./provider-budget-LCzMPlKv.js";import{t as Je}from"./permissions-surface-registry-CilCRwhh.js";import{t as Ye}from"./types-D8gIX-W-.js";import{$ as Xe,A as Ze,C as Qe,D as $e,E as et,I as tt,O as nt,P as rt,S as it,T as at,a as ot,b as st,c as ct,d as lt,i as ut,k as dt,l as ft,n as pt,nt as mt,o as ht,r as gt,t as _t,u as vt,v as yt,w as bt,x as xt,y as St}from"./wc-shell-sK_ZzgMP.js";import{n as Ct,r as wt}from"./hid-device-registry-B2R-0rNt.js";import"./browser-OXhgs9Cl.js";import{a as Tt,i as Et}from"./serial-port-registry-CCqklAEr.js";import{c as Dt,d as Ot,g as kt,i as At,l as jt,m as Mt,n as Nt,o as Pt,p as Ft,r as It,t as Lt,u as Rt}from"./hid-operations-C97SZtrY.js";import{a as zt,t as Bt}from"./icons-3Rdl9zWU.js";import{a as Vt,i as Ht}from"./usb-device-registry--JwKRTYp.js";import{f as Ut,i as Wt,l as Gt,s as Kt,u as qt}from"./usb-operations-Dx9QXlZ0.js";import{a as Jt}from"./message-envelope-BPSSjJbW.js";import{a as Yt,i as Xt,r as Zt}from"./tray-leader-D6T3kZL6.js";import{t as Qt}from"./sessions-C9JcENTo.js";import{t as $t}from"./store-DP4F8FwF.js";import"./shared-DSEuryGJ.js";import{a as en,c as M,f as tn,i as nn,l as rn,m as an,n as on,o as sn,s as cn,t as ln,u as un}from"./frozen-archive-writer-DEBCxy3Y.js";import{r as dn}from"./frozen-session-identity-CVGqg_js.js";import{a as fn,n as pn,r as mn,t as hn}from"./session-jsonl-VIrDPkzT.js";import{a as gn,n as _n,t as vn}from"./snapshot-store-Cxzssf1H.js";import{a as yn,n as bn,r as xn}from"./theme-CmogKzdP.js";import{a as Sn,c as Cn,d as wn,i as Tn,l as En,n as Dn,r as On,s as kn,u as An}from"./live-session-curation-BuIeKYrr.js";import{n as jn,t as Mn}from"./profile-export-deps-BildqbH-.js";import{_ as Nn,a as Pn,d as Fn,f as In,g as Ln,h as Rn,i as zn,l as Bn,n as Vn,o as Hn,p as Un,r as Wn,u as Gn}from"./wc-unit-context-kfFcXXnc.js";var Kn=e({getTranscriptExportService:()=>Jn,registerTranscriptExportService:()=>qn}),N=null;function qn(e){return N=e,()=>{N===e&&(N=null)}}function Jn(){if(!N)throw new Te(`session-not-found`);return N}var Yn=e({broadcastToDips:()=>pr,disposeDips:()=>z,handleDipPickerAction:()=>Rr,hydrateDips:()=>Lr,mountDip:()=>R,setDipExecHandler:()=>hr}),Xn=oe();s(()=>import(`./screen-share-approval-live-D388fVD9.js`).then(e=>{e.listenScreenShareApprovalChannel()}),[]);function Zn(e){if(typeof e!=`object`||!e||Array.isArray(e))return[];let t=e.filters;return Array.isArray(t)?t:[]}async function Qn(e,t){if(t?.aborted)throw new DOMException(`aborted`,`AbortError`);let n=await tr(e,!0,t);if(t?.aborted)throw new DOMException(`aborted`,`AbortError`);if(n===null)throw Error(`VFS read failed: ${e}`);return typeof n==`string`?n:new TextDecoder().decode(n)}var $n=null;function er(){if($n)return $n;if(typeof BroadcastChannel>`u`)return null;try{$n=new BroadcastChannel(`preview-vfs`)}catch{return null}return $n}async function tr(e,t,n){let r=er();if(!r)return null;let i=`dip-${Date.now()}-${Math.random().toString(36).slice(2)}`;return new Promise(a=>{let o=!1,s=()=>{r.removeEventListener(`message`,c),n?.removeEventListener(`abort`,l)},c=e=>{if(!o&&e.data?.type===`preview-vfs-response`&&e.data.id===i){if(o=!0,s(),e.data.error){a(null);return}a(e.data.content??null)}},l=()=>{o||(o=!0,s(),a(null))};r.addEventListener(`message`,c),n?.addEventListener(`abort`,l),setTimeout(()=>{o||(o=!0,s(),a(null))},5e3),r.postMessage({type:`preview-vfs-read`,id:i,path:e,asText:t})})}var nr=[`/shared/sprinkles/`,`/workspace/skills/sprinkles/`,`/workspace/sprinkles/`],rr=[`/shared/`,`/workspace/skills/sprinkles/`,`/workspace/sprinkles/`];function ir(e){return nr.some(t=>e.startsWith(t))}function ar(e){return typeof e!=`string`||!e.startsWith(`/`)||e.includes(`..`)?!1:rr.some(t=>e.startsWith(t))}var P=new WeakSet,or=`,
|
|
3
|
-
exec: Object.assign(function(cmd) {
|
|
4
|
-
return _vfsCall('dip-exec', { cmd: cmd }, function(m) { return m.result; });
|
|
5
|
-
}, { spawn: function(argv) {
|
|
6
|
-
return _vfsCall('dip-jsh', { op: 'spawn', args: [argv] }, function(m) { return m.result; });
|
|
7
|
-
} }),
|
|
8
|
-
agent: function(prompt, opts) {
|
|
9
|
-
return _vfsCall('dip-agent', { prompt: prompt, opts: opts || null },
|
|
10
|
-
function(m) { return m.result; });
|
|
11
|
-
}`,sr=`,
|
|
12
|
-
fetch: function(url, init) {
|
|
13
|
-
return _vfsCall('dip-jsh', { op: 'fetch', args: [url, init || null] }, function(m) { return m.result; });
|
|
14
|
-
},
|
|
15
|
-
http: { client: function(cfg) {
|
|
16
|
-
function mk(method) { return function(path, opts) { return _vfsCall('dip-jsh', { op: 'http', args: [cfg, method, path, opts || null] }, function(m) { return m.result; }); }; }
|
|
17
|
-
return { get: mk('get'), post: mk('post'), put: mk('put'), patch: mk('patch'), 'delete': mk('delete') };
|
|
18
|
-
} },
|
|
19
|
-
browser: {
|
|
20
|
-
findTab: function(q) { return _vfsCall('dip-jsh', { op: 'browser', args: ['findTab', q] }, function(m) { return m.result; }); },
|
|
21
|
-
ensureTab: function(url, options) { return _vfsCall('dip-jsh', { op: 'browser', args: ['ensureTab', url, options || {}] }, function(m) { return m.result; }); },
|
|
22
|
-
eval: function(tab, code) { return _vfsCall('dip-jsh', { op: 'browser', args: ['eval', tab, code] }, function(m) { return m.result; }); },
|
|
23
|
-
evalAsync: function(tab, code) { return _vfsCall('dip-jsh', { op: 'browser', args: ['evalAsync', tab, code] }, function(m) { return m.result; }); },
|
|
24
|
-
cookie: function(tab, name) { return _vfsCall('dip-jsh', { op: 'browser', args: ['cookie', tab, name] }, function(m) { return m.result; }); },
|
|
25
|
-
localStorage: function(tab, key) { return _vfsCall('dip-jsh', { op: 'browser', args: ['localStorage', tab, key] }, function(m) { return m.result; }); },
|
|
26
|
-
fetch: function(tab, url, opts) { return _vfsCall('dip-jsh', { op: 'browser', args: ['fetch', tab, url, opts || {}] }, function(m) { return m.result; }); }
|
|
27
|
-
},
|
|
28
|
-
fetchToFile: function(url, path) {
|
|
29
|
-
return _vfsCall('dip-jsh', { op: 'fetchToFile', args: [url, path] }, function(m) { return m.result; });
|
|
30
|
-
}`,cr=`,
|
|
31
|
-
_device: function(channel, op, args) {
|
|
32
|
-
return _vfsCall('dip-device-op',
|
|
33
|
-
{ channel: channel, op: op, args: args || [] },
|
|
34
|
-
function(m) { return m.result; });
|
|
35
|
-
},
|
|
36
|
-
hid: {
|
|
37
|
-
list: function() { return _vfsCall('dip-device-op', { channel: 'hid', op: 'list', args: [] }, function(m) { return m.result; }); },
|
|
38
|
-
request: function(filters) { return _vfsCall('dip-device-op', { channel: 'hid', op: 'request', args: [filters || []] }, function(m) { return m.result; }); },
|
|
39
|
-
open: function(handle) { return _vfsCall('dip-device-op', { channel: 'hid', op: 'open', args: [handle] }, function(m) { return m.result; }).then(function() {}); },
|
|
40
|
-
close: function(handle) { return _vfsCall('dip-device-op', { channel: 'hid', op: 'close', args: [handle] }, function(m) { return m.result; }).then(function() {}); },
|
|
41
|
-
sendReport: function(handle, reportId, data) { return _vfsCall('dip-device-op', { channel: 'hid', op: 'sendReport', args: [handle, reportId, data] }, function(m) { return m.result; }).then(function() {}); },
|
|
42
|
-
on: function(event, cb) { if (event === 'inputreport') _hidInputReportListeners.add(cb); },
|
|
43
|
-
off: function(event, cb) { if (event === 'inputreport') _hidInputReportListeners.delete(cb); }
|
|
44
|
-
},
|
|
45
|
-
serial: {
|
|
46
|
-
list: function() { return _vfsCall('dip-device-op', { channel: 'serial', op: 'list', args: [] }, function(m) { return m.result; }); },
|
|
47
|
-
request: function(filters) { return _vfsCall('dip-device-op', { channel: 'serial', op: 'request', args: [filters || []] }, function(m) { return m.result; }); },
|
|
48
|
-
open: function(handle, options) { return _vfsCall('dip-device-op', { channel: 'serial', op: 'open', args: [handle, options] }, function(m) { return m.result; }).then(function() {}); },
|
|
49
|
-
close: function(handle) { return _vfsCall('dip-device-op', { channel: 'serial', op: 'close', args: [handle] }, function(m) { return m.result; }).then(function() {}); }
|
|
50
|
-
},
|
|
51
|
-
usb: {
|
|
52
|
-
list: function() { return _vfsCall('dip-device-op', { channel: 'usb', op: 'list', args: [] }, function(m) { return m.result; }); },
|
|
53
|
-
request: function(filters) { return _vfsCall('dip-device-op', { channel: 'usb', op: 'request', args: [filters || []] }, function(m) { return m.result; }); },
|
|
54
|
-
open: function(handle) { return _vfsCall('dip-device-op', { channel: 'usb', op: 'open', args: [handle] }, function(m) { return m.result; }).then(function() {}); },
|
|
55
|
-
close: function(handle) { return _vfsCall('dip-device-op', { channel: 'usb', op: 'close', args: [handle] }, function(m) { return m.result; }).then(function() {}); }
|
|
56
|
-
}`;function lr(e){return`(function() {
|
|
57
|
-
var _cbId = 0;
|
|
58
|
-
var _callbacks = {};
|
|
59
|
-
var _hidInputReportListeners = new Set();
|
|
60
|
-
|
|
61
|
-
function _vfsCall(type, params, extractResult) {
|
|
62
|
-
return new Promise(function(resolve, reject) {
|
|
63
|
-
var id = ++_cbId;
|
|
64
|
-
_callbacks[id] = function(msg) {
|
|
65
|
-
if (msg.error) reject(new Error(msg.error));
|
|
66
|
-
else resolve(extractResult ? extractResult(msg) : undefined);
|
|
67
|
-
};
|
|
68
|
-
var m = { type: type, id: id };
|
|
69
|
-
if (params) { for (var k in params) m[k] = params[k]; }
|
|
70
|
-
parent.postMessage(m, '*');
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
window.slicc = window.bridge = {
|
|
75
|
-
lick: function(event) {
|
|
76
|
-
var action = typeof event === 'string' ? event : event.action;
|
|
77
|
-
var data = typeof event === 'string' ? undefined : ('data' in event ? event.data : event);
|
|
78
|
-
parent.postMessage({ type: 'dip-lick', action: action, data: data }, '*');
|
|
79
|
-
},
|
|
80
|
-
/* Read-only VFS access. Mirrors the sprinkle bridge so dips can
|
|
81
|
-
check onboarding markers, profiles, etc. without a parent-side
|
|
82
|
-
handshake. */
|
|
83
|
-
readFile: function(path) {
|
|
84
|
-
return _vfsCall('dip-readfile', { path: path }, function(m) { return m.content; });
|
|
85
|
-
},
|
|
86
|
-
exists: function(path) {
|
|
87
|
-
return _vfsCall('dip-exists', { path: path }, function(m) { return m.exists; });
|
|
88
|
-
},
|
|
89
|
-
stat: function(path) {
|
|
90
|
-
return _vfsCall('dip-stat', { path: path }, function(m) { return m.stat; });
|
|
91
|
-
}${e?or:``}${e?sr:``}${e?cr:``}
|
|
92
|
-
};
|
|
93
|
-
function reportHeight() {
|
|
94
|
-
parent.postMessage({ type: 'dip-height',
|
|
95
|
-
height: document.documentElement.scrollHeight }, '*');
|
|
96
|
-
}
|
|
97
|
-
${ee}
|
|
98
|
-
${y}
|
|
99
|
-
window.addEventListener('message', function(e) {
|
|
100
|
-
if (!e.data || typeof e.data.type !== 'string') return;
|
|
101
|
-
if (e.data.type === 'slicc-theme') {
|
|
102
|
-
applyIframeTheme(e);
|
|
103
|
-
return;
|
|
104
|
-
}
|
|
105
|
-
/* Pushed device events (currently 'hid:inputreport'). The host
|
|
106
|
-
attaches the underlying listener on slicc.hid.open(handle) for
|
|
107
|
-
this dip; teardown happens automatically on dispose. */
|
|
108
|
-
if (e.data.type === 'dip-device-event' && e.data.channel === 'hid:inputreport') {
|
|
109
|
-
_hidInputReportListeners.forEach(function(cb) {
|
|
110
|
-
try { cb(e.data.payload); } catch(ex) {}
|
|
111
|
-
});
|
|
112
|
-
return;
|
|
113
|
-
}
|
|
114
|
-
/* VFS callback responses target the originating call by id. */
|
|
115
|
-
if (e.data.id && _callbacks[e.data.id]) {
|
|
116
|
-
var cb = _callbacks[e.data.id];
|
|
117
|
-
delete _callbacks[e.data.id];
|
|
118
|
-
cb(e.data);
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
/* Forward any other slicc-* message to in-page listeners via a
|
|
122
|
-
CustomEvent. Dips can opt in with
|
|
123
|
-
window.addEventListener('slicc-message', (ev) => ev.detail). */
|
|
124
|
-
if (e.data.type.indexOf('slicc-') === 0) {
|
|
125
|
-
try {
|
|
126
|
-
document.dispatchEvent(new CustomEvent('slicc-message', { detail: e.data }));
|
|
127
|
-
} catch (ex) {}
|
|
128
|
-
}
|
|
129
|
-
});
|
|
130
|
-
window.addEventListener('load', function() {
|
|
131
|
-
reportHeight();
|
|
132
|
-
new ResizeObserver(reportHeight).observe(document.body);
|
|
133
|
-
});
|
|
134
|
-
/* Support data-action attributes (Tool UI compat) — auto-lick on click.
|
|
135
|
-
Also intercept <a href> clicks and relay to the parent so links open
|
|
136
|
-
despite the iframe sandbox blocking top-level navigation. */
|
|
137
|
-
document.addEventListener('click', function(e) {
|
|
138
|
-
var el = e.target;
|
|
139
|
-
while (el && el !== document.body) {
|
|
140
|
-
if (el.dataset && el.dataset.action) {
|
|
141
|
-
var actionData = el.dataset.actionData;
|
|
142
|
-
if (actionData) { try { actionData = JSON.parse(actionData); } catch(ex) {} }
|
|
143
|
-
/* Picker hint (e.g. data-picker="directory") needs the parent to
|
|
144
|
-
run File System Access API on the click activation chain.
|
|
145
|
-
Forward as a separate message so the parent can run
|
|
146
|
-
showDirectoryPicker, stash the handle in IDB, then dispatch
|
|
147
|
-
the lick with the IDB key. */
|
|
148
|
-
var picker = el.dataset.picker;
|
|
149
|
-
if (picker) {
|
|
150
|
-
parent.postMessage({
|
|
151
|
-
type: 'dip-picker-action',
|
|
152
|
-
action: el.dataset.action,
|
|
153
|
-
data: actionData || null,
|
|
154
|
-
picker: picker,
|
|
155
|
-
}, '*');
|
|
156
|
-
} else {
|
|
157
|
-
window.slicc.lick({ action: el.dataset.action, data: actionData || null });
|
|
158
|
-
}
|
|
159
|
-
e.preventDefault();
|
|
160
|
-
e.stopPropagation();
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
if (el.tagName === 'A' && el.getAttribute('href')) {
|
|
164
|
-
var href = el.getAttribute('href');
|
|
165
|
-
/* Allow in-iframe anchor navigation (#foo). Skip javascript: for safety. */
|
|
166
|
-
if (href.charAt(0) === '#') return;
|
|
167
|
-
if (/^javascript:/i.test(href)) { e.preventDefault(); return; }
|
|
168
|
-
/* Resolve relative URLs against the iframe's base. */
|
|
169
|
-
var resolved;
|
|
170
|
-
try { resolved = new URL(href, document.baseURI).href; } catch(ex) { resolved = href; }
|
|
171
|
-
parent.postMessage({ type: 'dip-open-link', url: resolved }, '*');
|
|
172
|
-
e.preventDefault();
|
|
173
|
-
e.stopPropagation();
|
|
174
|
-
return;
|
|
175
|
-
}
|
|
176
|
-
el = el.parentElement;
|
|
177
|
-
}
|
|
178
|
-
});
|
|
179
|
-
})();`}var ur=`html,body{margin:0;padding:0;overflow:hidden;background:transparent;box-sizing:border-box}
|
|
180
|
-
*,*::before,*::after{box-sizing:inherit}
|
|
181
|
-
/* Vertical breathing room around dip content. Horizontal padding is owned
|
|
182
|
-
by the dip's own content (e.g. .sprinkle-action-card__body) so shtml
|
|
183
|
-
widgets that already pad themselves don't end up double-indented. The
|
|
184
|
-
ResizeObserver on document.body reports the post-padding scrollHeight
|
|
185
|
-
correctly, so auto-height continues to work. The .sprinkle-inline rule
|
|
186
|
-
(set on the iframe body) carries 2px of horizontal padding so the 1px
|
|
187
|
-
focus ring (box-shadow:0 0 0 1px on inputs/select below) doesn't get
|
|
188
|
-
clipped at the iframe paint boundary. */
|
|
189
|
-
body{padding:12px 0;font-family:var(--s2-font-family, sans-serif);font-size:13px;color:var(--s2-content-default)}
|
|
190
|
-
.sprinkle-inline{padding:var(--s2-spacing-100) 2px}
|
|
191
|
-
.sprinkle-inline .sprinkle-btn{padding:4px 12px;font-size:12px;height:28px;box-shadow:none}
|
|
192
|
-
.sprinkle-inline .sprinkle-btn:not([class*="sprinkle-btn--"]){background:var(--s2-bg-elevated)}
|
|
193
|
-
.sprinkle-inline .sprinkle-card{box-shadow:none;margin:0}
|
|
194
|
-
.sprinkle-inline .sprinkle-action-card{margin:0;width:100%}
|
|
195
|
-
/* Stacked action cards in one dip need breathing room between them. The
|
|
196
|
-
margin:0 above zeroes the single-card case (iframe padding owns that
|
|
197
|
-
spacing); this adjacent-sibling rule outranks a plain authored class,
|
|
198
|
-
so multiple .sprinkle-action-card in one message no longer touch edge
|
|
199
|
-
to edge. See vfs-root/workspace/skills/dips/SKILL.md. */
|
|
200
|
-
.sprinkle-inline .sprinkle-action-card + .sprinkle-action-card{margin-top:12px}
|
|
201
|
-
.sprinkle-inline .sprinkle-action-card .sprinkle-table{width:100%}
|
|
202
|
-
.sprinkle-inline .sprinkle-grid{width:100%}
|
|
203
|
-
input[type="range"]{width:100%;height:4px;-webkit-appearance:none;appearance:none;background:var(--s2-gray-300);border-radius:2px;outline:none;cursor:default}
|
|
204
|
-
input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--s2-accent);cursor:default;border:2px solid var(--s2-bg-base)}
|
|
205
|
-
input[type="range"]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--s2-accent);cursor:default;border:2px solid var(--s2-bg-base)}
|
|
206
|
-
input[type="text"],input[type="number"],textarea{width:100%;padding:7px 12px;font-size:13px;font-family:var(--s2-font-family,sans-serif);color:var(--s2-content-default);background:var(--s2-bg-layer-2);border:1px solid var(--s2-border-subtle,var(--s2-gray-300));border-radius:8px;outline:none;box-sizing:border-box}
|
|
207
|
-
input[type="text"]:focus,input[type="number"]:focus,textarea:focus{border-color:var(--s2-accent);box-shadow:0 0 0 1px var(--s2-accent)}
|
|
208
|
-
input[type="text"]::placeholder,textarea::placeholder{color:var(--s2-content-disabled,var(--s2-gray-400))}
|
|
209
|
-
select{padding:6px 12px;font-size:13px;font-family:var(--s2-font-family,sans-serif);color:var(--s2-content-default);background:var(--s2-bg-layer-2);border:1px solid var(--s2-border-subtle,var(--s2-gray-300));border-radius:8px;outline:none;cursor:default}
|
|
210
|
-
select:focus{border-color:var(--s2-accent);box-shadow:0 0 0 1px var(--s2-accent)}
|
|
211
|
-
button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:28px;padding:4px 12px;border:1px solid var(--s2-border-default,var(--s2-gray-300));border-radius:9999px;background:transparent;color:var(--s2-content-default);font-size:12px;font-weight:700;font-family:var(--s2-font-family,sans-serif);cursor:default;transition:background 130ms ease}
|
|
212
|
-
button:hover{background:color-mix(in srgb,var(--s2-content-default) 6%,transparent)}
|
|
213
|
-
button:disabled{opacity:0.4;pointer-events:none}
|
|
214
|
-
canvas{display:block;width:100%;border-radius:8px}
|
|
215
|
-
mark{background:color-mix(in srgb,var(--s2-accent) 25%,transparent);color:inherit;border-radius:2px;padding:0 2px}
|
|
216
|
-
.c-purple{background:#3C3489;color:#EEEDFE}.c-teal{background:#085041;color:#E1F5EE}
|
|
217
|
-
.c-coral{background:#712B13;color:#FAECE7}.c-pink{background:#72243E;color:#FBEAF0}
|
|
218
|
-
.c-gray{background:#444441;color:#F1EFE8}.c-blue{background:#0C447C;color:#E6F1FB}
|
|
219
|
-
.c-amber{background:#633806;color:#FAEEDA}.c-red{background:#791F1F;color:#FCEBEB}
|
|
220
|
-
.c-green{background:#27500A;color:#EAF3DE}`,dr=`(function(){
|
|
221
|
-
window.addEventListener('message', function(e){
|
|
222
|
-
if (!e.data || e.data.type !== 'dip-draft-update') return;
|
|
223
|
-
var content = typeof e.data.content === 'string' ? e.data.content : '';
|
|
224
|
-
document.body.innerHTML = content;
|
|
225
|
-
if (window.lucide && typeof window.lucide.createIcons === 'function') {
|
|
226
|
-
try { window.lucide.createIcons(); } catch(ex){}
|
|
227
|
-
}
|
|
228
|
-
});
|
|
229
|
-
})();`;function fr(e,t,n=!1){let r=b(),i=bn()?` class="theme-light"`:``,a=t||e.includes(`<slicc-editor`),o=t||e.includes(`<slicc-diff`),s=t?`<script>${dr}<\/script>`:``;return`<!DOCTYPE html>
|
|
230
|
-
<html${i}><head>
|
|
231
|
-
<meta charset="utf-8">
|
|
232
|
-
<style>${r}</style>
|
|
233
|
-
<style>${ur}</style>
|
|
234
|
-
<script>${lr(n&&!t)}<\/script>
|
|
235
|
-
${s}
|
|
236
|
-
${a?`<script src="/slicc-editor.js"><\/script>`:``}
|
|
237
|
-
${o?`<script src="/slicc-diff.js"><\/script>`:``}
|
|
238
|
-
<script src="/lucide-icons.js"><\/script>
|
|
239
|
-
</head>
|
|
240
|
-
<body class="sprinkle-inline">${e}</body></html>`}var F=new Set;function pr(e){if(typeof e?.type!=`string`||e.type.indexOf(`slicc-`)!==0)throw Error(`broadcastToDips: payload.type must start with 'slicc-'`);for(let t of F)try{t.postMessage(e,`*`)}catch{}}var mr;function hr(e){mr=e}function I(e){return e.length===0?`''`:`'${e.replace(/'/g,`'\\''`)}'`}function gr(e,t){let n=t?.cwd??`.`,r=t?.allowedCommands??`*`,i=[`agent`];return t?.model&&i.push(`--model`,I(t.model)),t?.thinking&&i.push(`--thinking`,I(t.thinking)),t?.readOnly&&i.push(`--read-only`,I(t.readOnly)),i.push(I(n),I(r),I(e)),i.join(` `)}async function _r(e){if(!mr)return{stdout:``,stderr:`exec: shell bridge not available
|
|
241
|
-
`,exitCode:127};try{return await mr(e)}catch(e){return{stdout:``,stderr:`exec: ${e instanceof Error?e.message:String(e)}\n`,exitCode:1}}}async function vr(e,t){let n=await _r(gr(e,t));return{stdout:n.stdout||n.stderr,exitCode:n.exitCode}}async function yr(e,t){let n=await h(_r,e,t);if(e===`fetch`){let e=n,t=atob(e.bodyBase64),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return{...e,body:new TextDecoder(`utf-8`).decode(r)}}return n}var L=new WeakMap;function br(e,t){try{e.postMessage({type:`dip-device-event`,channel:`hid:inputreport`,payload:t},`*`)}catch{}}async function xr(e,t){let n=L.get(e);if(n||(n=new Map,L.set(e,n)),n.has(t))return;let r=await jt(wt(),t,n=>{let r=n.bytes instanceof Uint8Array?n.bytes:new Uint8Array(n.bytes);br(e,{handle:t,reportId:n.reportId,data:r})});n.set(t,r)}async function Sr(e,t){let n=L.get(e);if(!n)return;let r=n.get(t);if(r){n.delete(t);try{await Promise.resolve(r())}catch{}}n.size===0&&L.delete(e)}function Cr(e){let t=L.get(e);if(t){for(let e of t.values())try{Promise.resolve(e()).catch(()=>{})}catch{}L.delete(e)}}function wr(e){if(e instanceof Uint8Array)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e)){let t=e;return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}if(Array.isArray(e))return new Uint8Array(e);throw Error(`expected Uint8Array, ArrayBuffer, or number[]`)}async function Tr(e,t,n){let r=wt();switch(t){case`list`:{let e=Ct();if(!e)throw Error(`WebHID is unavailable in this browser`);return It(r,e)}case`request`:{let e=Ct();if(!e)throw Error(`WebHID is unavailable in this browser`);return Pt(r,x(e),n[0]??[])}case`info`:return Nt(r,n[0]);case`open`:{let t=n[0];return await At(r,t),await xr(e,t),{ok:!0}}case`close`:{let t=n[0];return await Sr(e,t),await Lt(r,t),{ok:!0}}case`sendReport`:{let e=n[0],t=n[1],i=wr(n[2]),a=i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength);return await Dt(r,e,t,a),{ok:!0}}default:throw Error(`hid: unknown op '${t}'`)}}async function Er(e,t){let n=Tt();switch(e){case`list`:{let e=Et();if(!e)throw Error(`Web Serial is unavailable in this browser`);return Ft(n,e)}case`request`:{let e=Et();if(!e)throw Error(`Web Serial is unavailable in this browser`);return kt(n,S(e),t[0]??[])}case`info`:return Ot(n,t[0]);case`open`:{let e=t[0],r=t[1]??{baudRate:9600};return await Mt(n,e,r),{ok:!0}}case`close`:return await Rt(n,t[0]),{ok:!0};default:throw Error(`serial: unknown op '${e}'`)}}async function Dr(e,t){let n=Vt();switch(e){case`list`:{let e=Ht();if(!e)throw Error(`WebUSB is unavailable in this browser`);return Gt(n,e)}case`request`:{let e=Ht();if(!e)throw Error(`WebUSB is unavailable in this browser`);return Ut(n,g(e),t[0]??[])}case`info`:return Kt(n,t[0]);case`open`:return await qt(n,t[0]),{ok:!0};case`close`:return await Wt(n,t[0]),{ok:!0};default:throw Error(`usb: unknown op '${e}'`)}}async function Or(e,t,n,r){switch(t){case`hid`:return Tr(e,n,r);case`serial`:return Er(n,r);case`usb`:return Dr(n,r);default:throw Error(`unknown device channel '${t}'`)}}async function kr(e,t){if(!e||typeof t.id!=`number`)return!1;let n=n=>{try{e.postMessage({...n,id:t.id},`*`)}catch{}};if(!P.has(e))return n({type:`dip-device-op-response`,error:`device access not allowed for this dip`}),!0;let r=t.channel;if(r!==`hid`&&r!==`serial`&&r!==`usb`)return n({type:`dip-device-op-response`,error:`unknown device channel '${r}'`}),!0;try{n({type:`dip-device-op-response`,result:await Or(e,r,typeof t.op==`string`?t.op:``,Array.isArray(t.args)?t.args:[])})}catch(e){n({type:`dip-device-op-response`,error:e instanceof Error?e.message:String(e)})}return!0}async function Ar(e,t){if(!e||typeof t.id!=`number`)return!1;let n=n=>{try{e.postMessage({...n,id:t.id},`*`)}catch{}};if(!P.has(e))return n({type:`${t.type}-response`,error:`exec not allowed for this dip`}),!0;if(t.type===`dip-exec`)return n({type:`dip-exec-response`,result:await _r(typeof t.cmd==`string`?t.cmd:``)}),!0;if(t.type===`dip-agent`)return n({type:`dip-agent-response`,result:await vr(typeof t.prompt==`string`?t.prompt:``,t.opts)}),!0;if(t.type===`dip-jsh`){try{n({type:`dip-jsh-response`,result:await yr(typeof t.op==`string`?t.op:``,Array.isArray(t.args)?t.args:[])})}catch(e){n({type:`dip-jsh-response`,error:e instanceof Error?e.message:String(e)})}return!0}return!1}function R(e,t,n,r=!1){let i=fr(t,!1,r);if(Xn)return Gr(e,i,n,r);let a=document.createElement(`iframe`);a.setAttribute(`sandbox`,`allow-scripts allow-same-origin`),a.style.cssText=`width:100%;border:none;overflow:hidden;display:block;`,a.srcdoc=i,e.appendChild(a),a.contentWindow&&(xn(a.contentWindow),F.add(a.contentWindow),r&&P.add(a.contentWindow)),a.addEventListener(`load`,()=>{xn(a.contentWindow),a.contentWindow&&(F.add(a.contentWindow),r&&P.add(a.contentWindow)),_()&&v(a)},{once:!0});let o=e=>{if(e.source!==a.contentWindow)return;let t=e.data;t?.type&&(t.type===`dip-lick`?n(t.action,t.data):t.type===`dip-height`?a.style.height=t.height+`px`:t.type===`dip-open-link`?Mr(t.url):t.type===`dip-picker-action`?Rr(t,n):t.type===`dip-readfile`||t.type===`dip-exists`||t.type===`dip-stat`?jr(a.contentWindow,t):t.type===`dip-exec`||t.type===`dip-agent`||t.type===`dip-jsh`?Ar(a.contentWindow,t):t.type===`dip-device-op`&&kr(a.contentWindow,t))};window.addEventListener(`message`,o);let s=null;if(_()&&typeof IntersectionObserver<`u`){let e=!1,t=new IntersectionObserver(n=>{if(n[n.length-1].isIntersecting){if(e){e=!1;return}t.unobserve(a),v(a,()=>{e=!0,t.observe(a)})}});s=t,t.observe(a)}return{dispose(){s?.disconnect(),window.removeEventListener(`message`,o),yn(a.contentWindow),a.contentWindow&&(F.delete(a.contentWindow),P.delete(a.contentWindow),Cr(a.contentWindow)),a.remove()}}}async function jr(e,t){if(!e||typeof t.id!=`number`)return!1;let n=typeof t.path==`string`?t.path:``,r=n=>{try{e.postMessage({...n,id:t.id},`*`)}catch{}};if(!P.has(e))return r({type:`${t.type}-response`,error:`VFS access not allowed for this dip`}),!0;if(!ar(n))return r({type:`${t.type}-response`,error:`VFS path not allowed: ${n}`}),!0;if(t.type===`dip-readfile`){let e=await tr(n,!0);return e===null?(r({type:`dip-readfile-response`,error:`Read failed`}),!0):(r({type:`dip-readfile-response`,content:typeof e==`string`?e:new TextDecoder().decode(e)}),!0)}if(t.type===`dip-exists`)return r({type:`dip-exists-response`,exists:await tr(n,!0)!==null}),!0;if(t.type===`dip-stat`){let e=await tr(n,!1);return e===null?(r({type:`dip-stat-response`,error:`Stat failed`}),!0):(r({type:`dip-stat-response`,stat:{isFile:!0,isDirectory:!1,size:typeof e==`string`?e.length:e.byteLength,mtimeMs:0}}),!0)}return!1}function Mr(e){if(typeof e==`string`&&e&&/^(https?:|mailto:)/i.test(e))try{window.open(e,`_blank`,`noopener,noreferrer`)}catch{}}var Nr=new WeakMap;function Pr(){return typeof Element.prototype.moveBefore==`function`}function Fr(e,t,n){let r=e.findIndex(e=>{let n=Nr.get(e);return n?.key===t&&n.wrapper.isConnected}),i=e[r],a=i&&Nr.get(i);if(!a)return null;try{n.parentNode.moveBefore(a.wrapper,n)}catch{return null}return n.remove(),e.splice(r,1),i}function Ir(e,t,n){return Nr.set(e,{key:t,wrapper:n}),e}function Lr(e,t,n={}){let r=[],i=[...n.previous??[]],a=Pr(),o=n.streaming===!0&&!a,s=e.querySelectorAll(`pre > code.language-shtml`);for(let e of s){let n=e.parentElement,s=e.textContent??``,c=`shtml:${s}`;if(o){n.replaceWith(n.ownerDocument.createRange().createContextualFragment(Xe));continue}let l=a?Fr(i,c,n):null;if(l){r.push(l);continue}let u=document.createElement(`div`);u.className=`msg__dip`,n.replaceWith(u),r.push(Ir(R(u,s,t,!1),c,u))}let c=e.querySelectorAll(`img[src$=".shtml"]`);for(let e of c){let n=e.getAttribute(`src`);if(!n||o)continue;let s=`img:${n}`,c=a?Fr(i,s,e):null;if(c){r.push(c);continue}let l=document.createElement(`div`);l.className=`msg__dip`,e.alt&&l.setAttribute(`title`,e.alt),e.replaceWith(l);let u=new AbortController,d=null,f=!1;r.push(Ir({dispose(){f=!0,u.abort(),d&&=(d.dispose(),null)}},s,l));let p=n.startsWith(`/`),m=typeof navigator<`u`&&!!navigator.serviceWorker?.controller,h=p?`/preview${n}`:n,g=async()=>{if(p&&!m)return Qn(n,u.signal);let e;try{e=await fetch(h,{signal:u.signal})}catch(e){if(e?.name===`AbortError`)throw e;if(p)return Qn(n,u.signal);throw e}if(e.ok)return e.text();if(p)return Qn(n,u.signal);throw Error(`HTTP ${e.status}`)},_=p&&ir(n);g().then(e=>{!f&&l.isConnected&&(d=R(l,e,t,_))}).catch(e=>{f||e?.name===`AbortError`||(l.textContent=`Failed to load dip: ${n}`,l.style.cssText=`padding:8px;font-size:12px;color:var(--s2-negative);font-family:var(--s2-font-mono)`)})}return z(i),r}function z(e){for(let t of e)try{t.dispose()}catch{}e.length=0}async function Rr(e,t){let n=Zn(e.data);if(e.picker===`screenshare`){await Br(e.action,t);return}if(Xn){await zr(e.picker,e.action,n,t);return}switch(e.picker){case`directory`:await Vr(e.action,t);return;case`usb-device`:await Hr(e.action,n,t);return;case`serial-port`:await Ur(e.action,n,t);return;case`hid-device`:await Wr(e.action,n,t);return;default:t(e.action,e.data);return}}async function zr(e,t,n,r){try{switch(e){case`directory`:{let{openMountPickerPopup:e}=await s(async()=>{let{openMountPickerPopup:e}=await import(`./mount-picker-popup-DE6OgmCv.js`);return{openMountPickerPopup:e}},__vite__mapDeps([0,1,2,3])),n=await e();n.cancelled?r(t,{cancelled:!0}):n.error?r(t,{error:n.error}):n.idbKey?r(t,{handleInIdb:!0,idbKey:n.idbKey,dirName:n.dirName??``}):r(t,{error:`mount picker returned no handle key`});return}case`usb-device`:{let{openUsbPickerPopup:e}=await s(async()=>{let{openUsbPickerPopup:e}=await import(`./usb-picker-Dl5JWkcW.js`).then(e=>e.t);return{openUsbPickerPopup:e}},__vite__mapDeps([4,5,2,3])),i=await e(n);`cancelled`in i?r(t,{cancelled:!0}):`error`in i?r(t,{error:i.error}):r(t,{granted:!0,info:i.info});return}case`serial-port`:{let{openSerialPickerPopup:e}=await s(async()=>{let{openSerialPickerPopup:e}=await import(`./serial-picker-fazP7oMX.js`);return{openSerialPickerPopup:e}},__vite__mapDeps([6,2,3])),i=await e(n);`cancelled`in i?r(t,{cancelled:!0}):`error`in i?r(t,{error:i.error}):r(t,{granted:!0,info:i.info});return}case`hid-device`:{let{openHidPickerPopup:e}=await s(async()=>{let{openHidPickerPopup:e}=await import(`./hid-picker-CBnnaoh4.js`);return{openHidPickerPopup:e}},__vite__mapDeps([7,2,3])),i=await e(n);`cancelled`in i?r(t,{cancelled:!0}):`error`in i?r(t,{error:i.error}):r(t,{granted:!0,info:i.info});return}default:r(t,{error:`unknown picker kind: ${e??`(none)`}`});return}}catch(e){r(t,{error:e instanceof Error?e.message:String(e)})}}async function B(e,t){let n=Je();if(!n)return null;let r={current:null},i=t=>{let n=t.detail;n.kind===e&&(r.current=n)};n.addEventListener(`slicc-permission-deny`,i);try{let i=await n.request(e,t);if(i)return{ok:!0,grant:i};let a=r.current;return{ok:!1,reason:a?.reason??`error`,...a?.message?{message:a.message}:{}}}finally{n.removeEventListener(`slicc-permission-deny`,i)}}function V(e,t,n,r){if(t.reason===`cancelled`){r(e,{cancelled:!0});return}if(t.reason===`unavailable`){r(e,{error:n});return}r(e,{error:t.message??`unknown error`})}async function Br(e,t){let n=await B(`screenshare`,{constraints:{video:!0}});if(!n){t(e,{error:`screen capture is not available`});return}if(!n.ok){V(e,n,`screen capture is not available`,t);return}let r=n.grant,{adoptDisplayStream:i,displaySessions:a}=await s(async()=>{let{adoptDisplayStream:e,displaySessions:t}=await import(`./screencapture-media-BxRLHqjA.js`);return{adoptDisplayStream:e,displaySessions:t}},[]);try{let n=await i(r.stream);if(!n.handle){t(e,{error:`screen share produced no handle`});return}let{keepAdoptedScreenShare:o}=await s(async()=>{let{keepAdoptedScreenShare:e}=await import(`./screen-share-approval-live-D388fVD9.js`);return{keepAdoptedScreenShare:e}},[]);if(!o(n.handle,e=>a.stop(e))){t(e,{cancelled:!0});return}t(e,{granted:!0,handle:n.handle})}catch(n){t(e,{error:n instanceof Error?n.message:String(n)})}}async function Vr(e,t){let n=await B(`filesystem`);if(!n){t(e,{error:`File System Access API not available`});return}if(!n.ok){V(e,n,`File System Access API not available`,t);return}let r=n.grant.handle,i=`pendingMount:dip-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`;try{let{storePendingHandle:e}=await s(async()=>{let{storePendingHandle:e}=await import(`./mount-picker-popup-DE6OgmCv.js`);return{storePendingHandle:e}},__vite__mapDeps([0,1,2,3]));await e(i,r)}catch(n){t(e,{error:`failed to store directory handle: ${n instanceof Error?n.message:String(n)}`});return}t(e,{handleInIdb:!0,idbKey:i,dirName:r.name})}async function Hr(e,t,n){let r=await B(`usb`,{filters:t});if(!r){n(e,{error:`WebUSB is not available`});return}if(!r.ok){V(e,r,`WebUSB is not available`,n);return}let i=r.grant,{getSharedUsbRegistry:a,deviceToInfo:o}=await s(async()=>{let{getSharedUsbRegistry:e,deviceToInfo:t}=await import(`./usb-device-registry--JwKRTYp.js`).then(e=>e.c);return{getSharedUsbRegistry:e,deviceToInfo:t}},__vite__mapDeps([8,5])),c=a().register(i.device);n(e,{granted:!0,handle:c,info:o(c,i.device)})}async function Ur(e,t,n){let r=await B(`serial`,t.length?{filters:t}:void 0);if(!r){n(e,{error:`Web Serial is not available`});return}if(!r.ok){V(e,r,`Web Serial is not available`,n);return}let i=r.grant,a=await s(()=>import(`./serial-port-registry-CCqklAEr.js`).then(e=>e.o),__vite__mapDeps([9,5])),o=a.getSharedSerialRegistry(),c=o.register(i.port),l=o.get(c);n(e,{granted:!0,handle:c,info:l?a.deviceToInfo(c,l):{handle:c}})}async function Wr(e,t,n){let r=await B(`hid`,{filters:t});if(!r){n(e,{error:`WebHID is not available`});return}if(!r.ok){V(e,r,`WebHID is not available`,n);return}let i=r.grant,{getSharedHidRegistry:a,hidDeviceToInfo:o}=await s(async()=>{let{getSharedHidRegistry:e,hidDeviceToInfo:t}=await import(`./hid-device-registry-B2R-0rNt.js`).then(e=>e.a);return{getSharedHidRegistry:e,hidDeviceToInfo:t}},__vite__mapDeps([10,5])),c=a(),l=i.devices.map(e=>{let t=c.register(e);return o(t,e)}),u=l[0];n(e,{granted:!0,handle:u.handle,info:u,devices:l})}function Gr(e,t,n,r=!1){let i=document.createElement(`iframe`);i.src=chrome.runtime.getURL(`sprinkle-sandbox.html`),i.style.cssText=`width:100%;border:none;overflow:hidden;display:block;`,e.appendChild(i);let a=e=>{if(e.source!==i.contentWindow)return;let t=e.data;t?.type&&(t.type===`dip-lick`?n(t.action,t.data):t.type===`dip-height`?i.style.height=t.height+`px`:t.type===`dip-open-link`?Mr(t.url):t.type===`dip-readfile`||t.type===`dip-exists`||t.type===`dip-stat`?jr(i.contentWindow,t):t.type===`dip-exec`||t.type===`dip-agent`||t.type===`dip-jsh`?Ar(i.contentWindow,t):t.type===`dip-device-op`?kr(i.contentWindow,t):t.type===`dip-picker-action`&&Rr(t,n))};return window.addEventListener(`message`,a),i.addEventListener(`load`,()=>{xn(i.contentWindow),i.contentWindow&&(F.add(i.contentWindow),r&&P.add(i.contentWindow)),i.contentWindow?.postMessage({type:`dip-render`,srcdoc:t,isLight:bn()},`*`)},{once:!0}),{dispose(){window.removeEventListener(`message`,a),yn(i.contentWindow),i.contentWindow&&(F.delete(i.contentWindow),P.delete(i.contentWindow),Cr(i.contentWindow)),i.remove()}}}var Kr=e({PENDING_SESSION_ATTEMPT_LIMIT:()=>3,SESSIONS_INDEX_PATH:()=>k,curateFrozenSessionMemories:()=>Qr,enrichPendingSession:()=>Ci,freezeConeSession:()=>Zr,listPendingEnrichments:()=>bi,markSnapshotUnavailable:()=>qi,processPendingSessions:()=>xi,readSessionsIndex:()=>O}),H=t(`session-freezer`),qr=4,Jr=2048,Yr=40,Xr=`${D}/attachments`;async function Zr(e){let t=await gi(e.sessionStore,mi(e));if(!t||t.messages.length<qr)return H.info(`Skipping freeze: session below threshold or missing`,{messageCount:t?.messages.length??0}),null;let n=U(t.messages),r=e.mode??`full`,i=r===`full`&&!!(e.apiKey&&e.model);!e.agenticMemorySpawn&&e.memory!==`skip`&&await ni(e,n,i);let a=await ri(e,n,i)||nn(t.messages);return await ii(e,t,a,r,i?await ei(e,a):void 0,!!e.agenticMemorySpawn&&e.memory!==`skip`)}async function Qr(e,t){let n=await On(e.vfs,{sessionId:t.sessionId||t.filename.replace(/\.md$/i,``),filename:t.filename,title:t.title,frozenAt:t.frozenAt,cone:t.cone,coneLabel:t.coneLabel,curatedThrough:t.curatedThrough,messages:t.archive.messages});if(n.kind===`covered`)return $r(e,t,null);let r=n.kind===`delta`?n.path:ye(t),i=n.kind===`delta`?n.messages:t.archive.messages,a;try{a=await En({spawn:e.agenticMemorySpawn,vfs:e.vfs,sessionArchivePath:r,sessionCount:await wn(e.vfs),...e.cone?{cone:e.cone}:{}})}catch(e){a={ok:!1,reason:e instanceof Error?e.message:String(e),legacyFallbackSafe:!1}}return a.ok?(n.kind===`delta`&&await Dn(e.vfs,t.filename,n.through),$r(e,t,r)):(await zi(e.vfs,t.filename,a.reason),a.legacyFallbackSafe?(H.warn(`Agentic memory pass failed after finishing — falling back to legacy extraction`,{filename:t.filename,reason:a.reason}),await ni(e,U(i),!0),null):(H.warn(`Agentic memory pass unfinished — entry stays pending for boot catch-up`,{filename:t.filename,reason:a.reason,attemptLimit:3}),null))}async function $r(e,t,n){let r=await Li(e.vfs,t.filename);if(n){let t=n.slice(n.lastIndexOf(`/`)+1);await Ei(e.vfs,t)}return r?(delete t.memoryPending,H.info(`Agentic memory pass completed`,{filename:t.filename}),r):(H.info(`Agentic memory pass completed; index entry already gone`,{filename:t.filename}),null)}async function ei(e,t){try{return ti(await(e.pickIcon??(await s(async()=>{let{pickLucideIcon:e}=await import(`./quick-llm-CGD6yIFK.js`).then(e=>e.n);return{pickLucideIcon:e}},__vite__mapDeps([11,5,1,12,13,14,15,16,17,18,3,19,20,21,22,23,24,25,26,27,28,29,30,31]))).pickLucideIcon)({subject:`"${t}" — an archived chat session`})??void 0)}catch(e){H.warn(`Icon pick failed (freeze still proceeds)`,{error:e instanceof Error?e.message:String(e)});return}}function ti(e){if(e)return Bt(e)?e:void 0}async function ni(e,t,r){if(!r){H.info(`LLM unavailable — skipping memory extraction; freezing anyway`);return}let i=``;try{i=await a({messages:t,instruction:n,model:e.model,apiKey:e.apiKey,maxTokens:Jr,headers:e.headers})}catch(e){H.warn(`Memory extraction call failed (freeze still proceeds)`,{error:e instanceof Error?e.message:String(e)});return}if(!i.trim()||i.trim()===`NONE`){H.info(`Memory extraction returned no durable memories`);return}try{await yi(e.vfs,hi(mi(e)),i.trim(),`new-session`,{model:e.model,apiKey:e.apiKey,headers:e.headers}),H.info(`Memory extracted and appended on new-session`)}catch(e){H.warn(`Memory append failed`,{error:e instanceof Error?e.message:String(e)})}}async function ri(e,t,n){if(!n)return``;try{return vi(await a({messages:t,instruction:r,model:e.model,apiKey:e.apiKey,maxTokens:Yr,headers:e.headers}))}catch(e){return H.warn(`Title generation call failed (using heuristic)`,{error:e instanceof Error?e.message:String(e)}),``}}async function ii(e,t,n,r,i,a=!1){let o=new Date().toISOString(),c=mi(e),l=await _i(e.vfs,c),u=l?.sessionId??crypto.randomUUID(),f=l?.filename??(r===`quick`?`pending-${rn()}.md`:`${o.replace(/[:.]/g,`-`)}-${un(n)}.md`),p=ai(t.messages),m={cone:c,...c!==`cone`&&e.cone?.label?{coneLabel:e.cone.label}:{}},h={filename:f,sessionId:u,title:n,frozenAt:o,messageCount:t.messages.length,...p??{},...m,...i?{icon:i}:{},...r===`quick`||l?{pendingEnrichment:!0}:{},...a?{memoryPending:!0}:{},...ve(l),...e.memory===`skip`?{memorySkipped:!0}:{}};try{await W(e.vfs,D);let r=f.replace(/\.md$/,``),i=await ci(e.vfs,t.messages,r),a={id:t.id,sessionId:u,attachmentsKey:r,title:n,frozenAt:o,createdAt:t.createdAt,updatedAt:t.updatedAt,messageCount:t.messages.length,messages:i,...p??{},...m,...e.memory===`skip`?{memorySkipped:!0}:{},...l?.curatedThrough?{curatedThrough:l.curatedThrough}:{}};if(d(`memory-v2`)){let{writeArchiveBundle:t}=await s(async()=>{let{writeArchiveBundle:e}=await import(`./session-jsonl-VIrDPkzT.js`).then(e=>e.i);return{writeArchiveBundle:e}},__vite__mapDeps([32,5,33,34,26,1,35,36,37]));await t(e.vfs,f,a)}else await e.vfs.writeFile(`${D}/${f}`,on(a));return await tn(e.vfs,h),await e.vfs.flush(),H.info(`Cone session frozen`,{filename:f,title:n,cone:c,messageCount:t.messages.length,completedLiveSnapshot:!!l}),{...h,archive:a}}catch(e){return H.warn(`Failed to write frozen session to VFS`,{error:e instanceof Error?e.message:String(e)}),null}}function ai(e){let t={total:0,input:0,output:0,cacheRead:0,cacheWrite:0},n=new Map,r=!1;for(let i of e){if(i.role!==`assistant`)continue;let{model:e,usage:a}=i;if(!e||!a||!si(a))return null;let o=a.cost;r=!0,t.total+=o.total,t.input+=o.input,t.output+=o.output,t.cacheRead+=o.cacheRead,t.cacheWrite+=o.cacheWrite;let s=n.get(e)??{model:e,cost:0,turns:0,tokens:0};s.cost+=o.total,s.turns+=1,s.tokens+=a.input+a.output+a.cacheRead+a.cacheWrite,n.set(e,s)}return r?{cost:t,models:[...n.values()].sort((e,t)=>t.cost-e.cost)}:null}function oi(e){return typeof e==`number`&&Number.isFinite(e)}function si(e){let{cost:t}=e;return[e.input,e.output,e.cacheRead,e.cacheWrite].every(oi)&&[t.input,t.output,t.cacheRead,t.cacheWrite,t.total].every(oi)}async function ci(e,t,n){let r={vfs:e,archiveDir:`${Xr}/${n}`,copiedPaths:new Map,fileIndex:0},i=[];for(let e of t){if(!e.attachments?.some(di)){i.push(e);continue}let t=[];for(let n of e.attachments)t.push(await li(r,n));i.push({...e,attachments:t})}return i}async function li(e,t){if(!di(t))return t;let n=e.copiedPaths.get(t.path);if(n)return{...t,path:n};let r=await ui(e.vfs,t.path);if(!r)return pi(t);let i=t.name.replace(/[^A-Za-z0-9._-]+/g,`_`)||`attachment`,a=`${e.archiveDir}/${e.fileIndex++}-${i}`;return await W(e.vfs,e.archiveDir),await e.vfs.writeFile(a,r),e.copiedPaths.set(t.path,a),{...t,path:a}}async function ui(e,t){try{if(!await fi(e,t))return null;let n=await e.readFile(t,{encoding:`binary`});if(!(n instanceof Uint8Array))throw Error(`Expected binary attachment content at ${t}`);return n}catch{return null}}function di(e){return typeof e.path==`string`&&e.path.startsWith(`/tmp/`)&&e.data===void 0&&e.text===void 0}async function fi(e,t){let n=t.split(`/`).slice(1);if(n.length<2||n[0]!==`tmp`||n.some(e=>!e||e===`.`||e===`..`))return!1;let r=`/`;for(let t=0;t<n.length;t+=1){let i=(await e.readDir(r)).find(e=>e.name===n[t]);if(!i)return!1;if(t===n.length-1)return i.type===`file`;if(i.type!==`directory`)return!1;r=r===`/`?`/${n[t]}`:`${r}/${n[t]}`}return!1}function pi(e){let{path:t,...n}=e;return{...n,error:e.error??`Archived attachment file is missing or unsafe to preserve.`}}function mi(e){return e.cone?.folder||`cone`}function hi(e){return ue({parentJid:null,folder:e}).memoryPath}async function gi(e,t){let n=ge({folder:t});try{return await e.load(n)}catch(e){return H.warn(`Failed to load cone chat session`,{sessionId:n,error:e instanceof Error?e.message:String(e)}),null}}async function _i(e,t){try{return ln(await sn(e),t)}catch(e){H.warn(`Sessions index unreadable while looking for a live snapshot`,{error:e instanceof Error?e.message:String(e)});return}}function U(e){return e.map(e=>({role:e.role,content:[{type:`text`,text:e.content}],timestamp:e.timestamp}))}function vi(e){let t=e.trim();return t=t.replace(/^["'`]+|["'`]+$/g,``).trim(),t=t.replace(/\s+/g,` `),t.length>80&&(t=t.slice(0,80).trimEnd()),t}async function W(e,t){try{await e.mkdir(t,{recursive:!0})}catch{}}async function yi(e,t,n,r,i){let a=t,o=``;try{let t=await e.readFile(a,{encoding:`utf-8`});o=typeof t==`string`?t:new TextDecoder().decode(t)}catch(t){if(!(t instanceof Ye)||t.code!==`ENOENT`)throw t;await W(e,a.slice(0,a.lastIndexOf(`/`)))}let s=`## Auto-extracted (${new Date().toISOString().slice(0,10)}, ${r})`,c=`${o.length===0||o.endsWith(`
|
|
242
|
-
`)?``:`
|
|
243
|
-
`}\n${s}\n\n${n}\n`;await e.writeFile(a,o+c);try{await An({vfs:e,memoryPath:a,model:i?.model,apiKey:i?.apiKey,headers:i?.headers,signal:i?.signal})}catch(e){H.warn(`Cone memory budget step threw (append already committed)`,{error:e instanceof Error?e.message:String(e)})}}async function bi(e){return(await O(e)).filter(e=>(e.pendingEnrichment===!0||e.memoryPending===!0)&&Si(e)<3)}async function xi(e){let t={attempted:0,completed:0};if(!e.model||!e.apiKey)return t;try{for(let t of await O(e.vfs))t.memoryPending===!0&&t.memoryFailed===void 0&&Si(t)>=3&&await zi(e.vfs,t.filename,`catch-up retries exhausted (3)`);let n=await bi(e.vfs);for(let r of n)try{let n=await Ri(e.vfs,r.filename);if(!n)continue;t.attempted+=1,await Ci(e.vfs,n,{model:e.model,apiKey:e.apiKey,headers:e.headers})&&(t.completed+=1)}catch(e){H.warn(`Pending session catch-up attempt failed`,{filename:r.filename,error:e instanceof Error?e.message:String(e)})}}catch(e){H.warn(`Pending session catch-up failed`,{error:e instanceof Error?e.message:String(e)})}return t}function Si(e){let t=e.pendingAttemptCount;return typeof t==`number`&&Number.isInteger(t)&&t>0?t:0}async function Ci(e,t,n){if(!t.pendingEnrichment&&!t.memoryPending)return null;let r=await Oi(e,t);if(r===null)return null;let i=await ki(e,t,r);if(i===null)return null;let{agentMessages:a}=i,o=await Ai(e,t,i.chatMessages,n),s=o.curatorAlreadyRan,c=s||t.memorySkipped===!0?{...n,skipMemory:!0}:n,l=await Mi(t,a,c,o.memoryMessages);if(l===null)return null;let u=await Di(c,l.newTitle);await Ni(e,t,l.bullets,c);let d=await Fi(e,t,r,l.newTitle,u,n.skipMemory===!0,c.skipMemory!==!0);return d&&s&&(await Ei(e,t.filename),await Bi(e,d.filename),await wi(e,t.filename)),d}async function wi(e,t){for(let n of[Sn(`/sessions/${t}`),kn(`/sessions/${t}`)])try{await e.rm(n)}catch{}}async function Ti(e,t){try{return await e.stat(Cn(`/sessions/${t.filename}`)),!0}catch{return!1}}async function Ei(e,t){try{await e.rm(Cn(`/sessions/${t}`))}catch{}}async function Di(e,t){if(e.pickIcon)try{return await ti(await e.pickIcon({subject:`"${t}" — an archived chat session`})??void 0)}catch(e){H.warn(`Enrichment icon pick failed (continuing without icon)`,{error:e instanceof Error?e.message:String(e)});return}}async function Oi(e,t){try{let n=await e.readFile(ye(t),{encoding:`utf-8`});return typeof n==`string`?n:new TextDecoder().decode(n)}catch(e){return e?.code===`ENOENT`?H.info(`Pending archive missing — treating as already enriched`,{filename:t.filename}):H.warn(`Failed to read pending archive (entry stays pending)`,{filename:t.filename,error:e instanceof Error?e.message:String(e)}),null}}async function ki(e,t,n){let r;try{r=(await pn(e,n,t.filename)).messages}catch(e){return H.warn(`Failed to parse pending archive — leaving entry intact`,{filename:t.filename,error:e instanceof Error?e.message:String(e)}),null}return r.length===0?(H.info(`Pending archive has no messages — skipping enrichment`,{filename:t.filename}),null):{agentMessages:U(r),chatMessages:r}}async function Ai(e,t,n,r){let i=U([...n]);if(r.skipMemory===!0||t.memoryPending!==!0)return{curatorAlreadyRan:!1,memoryMessages:i};if(await Ti(e,t))return{curatorAlreadyRan:!0,memoryMessages:i};let a=await Tn(e,t,n);return a.caughtUp?{curatorAlreadyRan:!0,memoryMessages:i}:a.through>0?{curatorAlreadyRan:!1,memoryMessages:i.filter(e=>ji(e)>a.through)}:{curatorAlreadyRan:!1,memoryMessages:i}}function ji(e){let t=e.timestamp;return typeof t==`number`?t:0}async function Mi(e,t,i,o=t){let s=``;if(!i.skipMemory)try{s=await a({messages:o,instruction:n,model:i.model,apiKey:i.apiKey,maxTokens:Jr,headers:i.headers})}catch(t){return H.warn(`Enrichment memory call failed (entry stays pending)`,{filename:e.filename,error:t instanceof Error?t.message:String(t)}),null}let c=``;try{c=vi(await a({messages:t,instruction:r,model:i.model,apiKey:i.apiKey,maxTokens:Yr,headers:i.headers}))}catch(t){return H.warn(`Enrichment title call failed (entry stays pending)`,{filename:e.filename,error:t instanceof Error?t.message:String(t)}),null}return c?{bullets:s,newTitle:c}:(H.info(`Enrichment title call returned empty — entry stays pending`,{filename:e.filename}),null)}async function Ni(e,t,n,r){let i=n.trim();if(i&&i!==`NONE`)try{await yi(e,hi(t.cone||`cone`),i,`pending-enrichment`,{model:r.model,apiKey:r.apiKey,headers:r.headers})}catch(e){H.warn(`Enrichment memory append failed (continuing with title rewrite)`,{filename:t.filename,error:e instanceof Error?e.message:String(e)})}}function Pi(e,t,n,r,i,a){let o=r??e.icon;return{filename:t,title:n,frozenAt:e.frozenAt,messageCount:e.messageCount,...e.cost?{cost:e.cost}:{},...e.models?{models:e.models}:{},...e.cone?{cone:e.cone}:{},...e.coneLabel?{coneLabel:e.coneLabel}:{},...e.sessionId?{sessionId:e.sessionId}:{},...ve(e,{dropFailure:a}),...o?{icon:o}:{},...e.completeSnapshotUnavailable?{completeSnapshotUnavailable:!0}:{},...i&&e.memoryPending?{memoryPending:!0}:{}}}async function Fi(e,t,n,r,i,a=!1,o=!1){let s=ye(t),c=en(t.filename),l=c?r:t.title,u=c?`${t.frozenAt.replace(/[:.]/g,`-`)}-${un(r)}.md`:t.filename,d=`${D}/${u}`;if(c)try{await W(e,D);let r=Ii(n,l),i=fn(t.filename),a=fn(u),o=cn(r,s,d);if(o=cn(o,i,a),i!==a){let e=i.slice(i.lastIndexOf(`/`)+1),t=a.slice(a.lastIndexOf(`/`)+1);o=o.split(`sidecar: ${e}`).join(`sidecar: ${t}`)}await e.writeFile(d,o),await hn(e,t.filename,u)}catch(e){return H.warn(`Enrichment write failed (entry stays pending)`,{filename:t.filename,error:e instanceof Error?e.message:String(e)}),null}let f=Pi(t,u,l,i,a,o);if(!await Ki(e,t,f))return null;if(d!==s){try{await e.rm(s)}catch(e){H.info(`Stale pending archive cleanup failed (harmless)`,{oldPath:s,error:e instanceof Error?e.message:String(e)})}try{await mn(e,t.filename)}catch(e){H.info(`Stale pending sidecar cleanup failed (harmless)`,{filename:t.filename,error:e instanceof Error?e.message:String(e)})}}try{await e.flush()}catch{}return H.info(`Pending session enriched`,{oldFilename:t.filename,newFilename:u,title:l}),f}function Ii(e,t){let n=e.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/);if(!n)return e;let r=n[1].replace(/^title:\s*.+$/m,`title: ${JSON.stringify(t)}`),i=n[2];return i=i.replace(/^#\s+[^\n]*$/m,`# ${t}`),`---\n${r}\n---\n${i}`}async function Li(e,t){let n=null,r=M(async()=>{let r=await O(e),i=r.findIndex(e=>e.filename===t);if(i===-1)return;let{memoryPending:a,pendingEnrichment:o,pendingAttemptCount:s,memoryFailed:c,...l}=r[i],u={...l,memoryCuratedAt:new Date().toISOString()},d=r.slice();d[i]=u,await e.writeFile(k,JSON.stringify(d,null,2)),await e.flush(),n=u});try{await r}catch(e){H.warn(`Failed to clear agentic memory pending marker`,{filename:t,error:e instanceof Error?e.message:String(e)})}return n}async function Ri(e,t){let n=null;return await M(async()=>{let r=await O(e),i=r.findIndex(e=>e.filename===t);if(i===-1)return;let a=r[i];if(!a.pendingEnrichment&&!a.memoryPending)return;let o=Si(a);if(o>=3)return;n={...a,pendingAttemptCount:o+1};let s=r.slice();s[i]=n,await e.writeFile(k,JSON.stringify(s,null,2)),await e.flush()}),n}async function zi(e,t,n){let r=M(async()=>{let r=await O(e),i=r.findIndex(e=>e.filename===t);if(i===-1)return;let a=r.slice();a[i]={...r[i],memoryFailed:n.slice(0,300)},await e.writeFile(k,JSON.stringify(a,null,2)),await e.flush()});try{await r}catch(e){H.warn(`Failed to record curator failure in sessions index`,{filename:t,error:e instanceof Error?e.message:String(e)})}}async function Bi(e,t){let n=M(async()=>{let n=await O(e),r=n.findIndex(e=>e.filename===t);if(r===-1)return;let{memoryFailed:i,...a}=n[r],o=n.slice();o[r]={...a,memoryCuratedAt:new Date().toISOString()},await e.writeFile(k,JSON.stringify(o,null,2)),await e.flush()});try{await n}catch(e){H.warn(`Failed to record curator completion in sessions index`,{filename:t,error:e instanceof Error?e.message:String(e)})}}async function Vi(e,t,n){return M(async()=>{let r=await Hi(e),i=r.findIndex(e=>e.filename===t);if(i!==-1){let t=r.slice();t[i]=n;let a=t.filter((e,t)=>t===i||e.filename!==n.filename);return await e.writeFile(k,JSON.stringify(a,null,2)),`replaced`}let a=await Ui(e,r,t,n);if(a===`prepended`){let t=[n,...r.filter(e=>e.filename!==n.filename)];await e.writeFile(k,JSON.stringify(t,null,2))}else if(a===`replaced`){let t=r.map(e=>e.filename===n.filename?n:e);await e.writeFile(k,JSON.stringify(t,null,2))}else await Gi(e,r,t,n.filename);return a})}async function Hi(e){try{let t=await e.readFile(k,{encoding:`utf-8`}),n=JSON.parse(typeof t==`string`?t:new TextDecoder().decode(t));return Array.isArray(n)?n:[]}catch(e){if(!(e instanceof Ye)||e.code!==`ENOENT`)throw e;return[]}}async function Ui(e,t,n,r){if(t.some(e=>e.filename===r.filename))return`replaced`;let i=r.sessionId;return(i&&!dn(i)?t.filter(e=>e.sessionId===i):[]).length===1?`superseded`:await Wi(e,`/sessions/${n}`)?`prepended`:`deleted`}async function Wi(e,t){try{return await e.stat(t),!0}catch(e){return e?.code!==`ENOENT`}}async function Gi(e,t,n,r){if(r===n||t.some(e=>e.filename===r))return;let i=`${D}/${r}`;try{await e.rm(i)}catch(e){e?.code!==`ENOENT`&&H.warn(`Enrichment could not drop its renamed copy`,{path:i,error:e})}let a=fn(r);try{await mn(e,r)}catch(e){e?.code!==`ENOENT`&&H.warn(`Enrichment could not drop its renamed copy`,{path:a,error:e})}}async function Ki(e,t,n){let r;try{r=await Vi(e,t.filename,n)}catch(e){return H.warn(`Enrichment index update failed (entry may stay pending)`,{filename:t.filename,error:e instanceof Error?e.message:String(e)}),!1}return r===`superseded`||r===`deleted`?(H.info(`Enrichment dropped — the session changed during the pass`,{filename:t.filename,outcome:r}),!1):!0}async function qi(e,t){return M(async()=>{let n=[];try{let t=await e.readFile(k,{encoding:`utf-8`}),r=typeof t==`string`?t:new TextDecoder().decode(t),i=JSON.parse(r);Array.isArray(i)&&(n=i)}catch(e){if(!(e instanceof Ye)||e.code!==`ENOENT`)throw e;return}if(!n.find(e=>e.filename===t))return;let r=n.map(e=>e.filename===t?{...e,completeSnapshotUnavailable:!0}:e);await e.writeFile(k,JSON.stringify(r,null,2))})}var Ji=`slicc:followers-changed`;function Yi(e){let t=e.replace(/^follower-/,``);return t.length>12?`${t.slice(0,8)}…`:t}function Xi(e){return e.floatType===`ios`?`iOS`:e.floatType===`electron`?`Electron`:e.floatType===`extension`?`Extension`:e.floatType===`standalone`?`Standalone`:e.runtime?.includes(`cli`)?`CLI`:`Follower`}function Zi(e){return e.floatType===`ios`?`smartphone`:e.floatType===`electron`||e.floatType===`standalone`?`monitor`:e.floatType===`extension`?`blocks`:e.runtime?.includes(`cli`)?`terminal`:`radio`}function Qi(e,t=Date.now()){if(!e)return null;let n=new Date(e).getTime();if(!Number.isFinite(n))return null;let r=Math.max(0,Math.floor((t-n)/1e3));return r<60?`${r}s`:r<3600?`${Math.floor(r/60)}m`:r<86400?`${Math.floor(r/3600)}h`:`${Math.floor(r/86400)}d`}function G(e){return e.health===`stalled`?`warn`:e.peerState===`connecting`?`idle`:e.peerState===`connected`&&e.health===`live`?`active`:`idle`}function $i(e,t=Date.now()){let n=e.health===`stalled`?`stalled`:e.peerState===`connecting`?`connecting`:`connected`,r=Qi(e.connectedAt,t);return r?`${n} ${r}`:n}function ea(e){let t=[];return e.exec&&t.push(`can run commands`),e.computer&&t.push(`native screen`),e.cdp&&t.push(`hosts tabs`),t}function ta(e){return`${Xi(e)} · ${Yi(e.runtimeId)}`}function na(e){return e.motd??e.runtime??void 0}function ra(e,t=Date.now()){return e.map(e=>({id:e.runtimeId,icon:Zi(e),title:ta(e),detail:na(e),state:G(e),stateText:$i(e,t),chips:ea(e)}))}function ia(e){return e.length>=8&&e[0]===137&&e[1]===80&&e[2]===78?`image/png`:e.length>=3&&e[0]===255&&e[1]===216&&e[2]===255?`image/jpeg`:null}function aa(e){if(e instanceof Uint8Array){let t=new Uint8Array(e.byteLength);return t.set(e),t}if(e instanceof ArrayBuffer)return new Uint8Array(e.slice(0));if(ArrayBuffer.isView(e)){let t=e;return new Uint8Array(t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength))}return Array.isArray(e)?Uint8Array.from(e):e&&typeof e==`object`?sa(e):new Uint8Array}function oa(e){if(typeof e.byteLength==`number`)return e.byteLength;if(typeof e.length==`number`)return e.length;let t=-1;for(let n of Object.keys(e)){if(!/^\d+$/.test(n))continue;let e=Number(n);e>t&&(t=e)}return t+1}function sa(e){let t=oa(e),n=new Uint8Array(t);for(let r=0;r<t;r++){let t=e[r];typeof t==`number`&&(n[r]=t&255)}return n}var ca=2,la=768,ua=class{computers=[];frames=new Map;listListeners=new Set;frameListeners=new Set;invocationListeners=new Set;sender=null;watchSubs=new Map;kernelWatch=new Map;nextWatchToken=1;invocations=new Map;list(){return this.computers.slice()}get(e){return this.computers.find(t=>t.id===e)??null}lastFrame(e){return this.frames.get(e)??null}onList(e){return this.listListeners.add(e),()=>this.listListeners.delete(e)}onFrame(e){return this.frameListeners.add(e),()=>this.frameListeners.delete(e)}onInvocations(e){return this.invocationListeners.add(e),()=>this.invocationListeners.delete(e)}setSender(e){this.sender=e}isWatching(e){return(this.watchSubs.get(e)?.length??0)>0}watchRefCount(e){return this.watchSubs.get(e)?.length??0}watch(e,t=ca,n=la){if(!this.sender)throw Error(`computers store has no kernel sender`);let r=this.nextWatchToken++,i=this.watchSubs.get(e)??[];return i.push({token:r,fps:t,maxWidth:n}),this.watchSubs.set(e,i),this.syncKernelWatch(e),r}unwatch(e,t){if(!this.sender)throw Error(`computers store has no kernel sender`);let n=this.watchSubs.get(e);if(!n?.length)return;let r=t===void 0?n.length-1:n.findIndex(e=>e.token===t);if(!(r<0)){if(n.splice(r,1),n.length===0){this.watchSubs.delete(e),this.kernelWatch.delete(e),this.sender({type:`computer-unwatch`,id:e});return}this.syncKernelWatch(e)}}syncKernelWatch(e){let t=this.watchSubs.get(e);if(!t?.length||!this.sender)return;let n=Math.max(...t.map(e=>e.fps)),r=Math.max(...t.map(e=>e.maxWidth)),i=this.kernelWatch.get(e);i&&i.fps===n&&i.maxWidth===r||(this.kernelWatch.set(e,{fps:n,maxWidth:r}),this.sender({type:`computer-watch`,id:e,fps:n,maxWidth:r}))}input(e,t){if(!this.sender)throw Error(`computers store has no kernel sender`);this.sender({type:`computer-input`,id:e,events:t})}recordInvocation(e,t){this.invocations.set(e,t);for(let e of[...this.invocationListeners])e()}newestInvocation(e){return this.invocations.get(e)??null}applyList(e){this.computers=e.computers.slice();let t=new Set(this.computers.map(e=>e.id));for(let e of[...this.invocations.keys()])t.has(e)||this.invocations.delete(e);for(let e of[...this.frames.keys()])t.has(e)||this.frames.delete(e);for(let e of[...this.listListeners])e(this.computers)}applyFrame(e){let t=this.frames.get(e.id);if(t&&t.seq>e.seq)return;let n={seq:e.seq,mime:e.mime,width:e.width,height:e.height,bytes:aa(e.bytes),...e.overCap?{overCap:!0}:{}};this.frames.set(e.id,n);for(let t of[...this.frameListeners])t(e.id,n)}},da=null;function fa(){return da||=new ua,da}var pa=`__slicc_binary__`,ma=`b64`;function ha(e){if(!e||typeof e!=`object`)return!1;let t=e;return t[pa]===ma&&typeof t.data==`string`}function ga(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&!(e instanceof Uint8Array)}function _a(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&!(e instanceof Uint8Array)&&!ha(e)}function va(e){if(e instanceof Uint8Array)return{[pa]:ma,data:p(e)};if(Array.isArray(e))return e.map(va);if(ga(e)){let t={};for(let[n,r]of Object.entries(e))t[n]=va(r);return t}return e}function ya(e){if(ha(e))return m(e.data);if(Array.isArray(e))return e.map(ya);if(_a(e)){let t={};for(let[n,r]of Object.entries(e))t[n]=ya(r);return t}return e}var ba=t(`panel-transport`);function xa(e){return typeof e==`object`&&!!e&&`source`in e&&`payload`in e}function Sa(){return{onMessage:e=>{let t=(t,n,r)=>(xa(t)&&e(ya(t)),!1);return chrome.runtime.onMessage.addListener(t),()=>chrome.runtime.onMessage.removeListener(t)},send:(e,t)=>{let n=va(e);chrome.runtime.sendMessage({source:`panel`,payload:n}).catch(e=>{ba.error(`failed to send to offscreen`,{error:e instanceof Error?e.message:String(e)})})}}}var Ca={summarizing:`summarizing`,fallback:`fallback`,cancelled:`discarded`,idle:`summarized`},wa=class{mintId;open=new Map;settled=new Map;constructor(e){this.mintId=e}apply(e,t,n,r){if(t===`extracting-memory`)return null;let i=this.open.get(e)??this.lateRetraction(e,t,n)??r;if(t!==`summarizing`&&!i)return null;t!==`summarizing`&&(this.open.delete(e),this.settled.delete(e));let a=i??this.mintId(e);if(t===`summarizing`&&this.open.set(e,a),(t===`idle`||t===`fallback`)&&n.roundId&&this.settled.set(e,{messageId:a,roundId:n.roundId}),t===`cancelled`)return{kind:`retract`,messageId:a};let o={trigger:n.trigger,state:Ca[t],...n.transcriptPath?{transcriptPath:n.transcriptPath}:{}};return t===`summarizing`?{kind:`open`,messageId:a,marker:o}:{kind:`settle`,messageId:a,marker:o}}forget(e){this.open.delete(e),this.settled.delete(e)}lateRetraction(e,t,n){if(t!==`cancelled`||!n.roundId)return;let r=this.settled.get(e);return r?.roundId===n.roundId?r.messageId:void 0}},Ta=2e3,Ea=5e3,K=t(`offscreen-client`),Da=class{eventListeners=new Set;backgroundEventListeners=new Set;backgroundMessageId=new Map;callbacks;scoops=[];scoopStatuses=new Map;currentMessageId=new Map;compactionRows=new wa(e=>`compaction-${e}-${q()}`);toolDepth=new Map;ready=!1;stateRetryTimer=null;localFs=null;pendingClearAcks=new Map;pendingWebhookDeliveries=new Map;pendingAgentSpawnRequests=new Map;pendingThinkingAcks=new Map;streamThinkingByUnit=new Map;pendingModelAcks=new Map;pendingUserMessageAcks=new Map;pendingTranscriptRequests=new Map;pendingChatMessagesRequests=new Map;pendingStatsRequests=new Map;pendingSudoRequests=new Map;transport;_selectedScoopJid=null;get selectedScoopJid(){return this._selectedScoopJid}scoopSelectedListeners=new Set;onScoopSelected(e){return this.scoopSelectedListeners.add(e),()=>{this.scoopSelectedListeners.delete(e)}}setSelectedScoopJid(e){if(this._selectedScoopJid!==e&&(this.handOverOpenMessages(this._selectedScoopJid,e),this._selectedScoopJid=e,e!==null))for(let t of this.scoopSelectedListeners)try{t(e)}catch(e){K.error(`onScoopSelected handler threw`,{error:e instanceof Error?e.message:String(e)})}}locked=!1;constructor(e,t){this.callbacks=e,this.transport=t??Sa(),this.setupMessageListener(),fa().setSender(e=>this.send(e))}setLocalFS(e){this.localFs=e}getTransport(){return this.transport}emitAgentError(e){this.emitToUI({type:`error`,error:e})}createAgentHandle(){return{sendMessage:(e,t,n,r)=>{if(!this.selectedScoopJid){this.emitToUI({type:`error`,error:`No scoop selected`});return}this.send({type:`user-message`,scoopJid:this.selectedScoopJid,text:e,attachments:n,messageId:t??`msg-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,...r?.steer?{steer:!0}:{},...r?.guestGate?{guestGate:r.guestGate}:{}})},onEvent:e=>(this.eventListeners.add(e),()=>this.eventListeners.delete(e)),stop:()=>{this.selectedScoopJid&&this.send({type:`abort`,scoopJid:this.selectedScoopJid})}}}sendUserMessage(e){if(this.locked)return Promise.reject(Error(`This window is detached. Close it and use the detached tab.`));let t=`um-${q()}`,n=new Promise((e,n)=>{this.pendingUserMessageAcks.set(t,{resolve:e,reject:n})});this.send({type:`user-message`,requestId:t,scoopJid:e.scoopJid,text:e.text,messageId:e.messageId,...e.attachments?{attachments:[...e.attachments]}:{},...e.steer?{steer:!0}:{},...e.guestGate?{guestGate:e.guestGate}:{}});let r,i=new Promise((e,t)=>{r=setTimeout(()=>t(Error(`the kernel did not answer in time`)),Ea)});return Promise.race([n,i]).finally(()=>{r!==void 0&&clearTimeout(r),this.pendingUserMessageAcks.delete(t)})}getScoops(){return this.scoops}getScoop(e){return this.scoops.find(t=>t.jid===e)}isProcessing(e){return this.scoopStatuses.get(e)===`processing`}async registerScoop(e,t={}){if(!E(e))throw Error(`OffscreenClient.registerScoop is cone-only; use scoop_scoop for non-cone scoops`);this.scoops.find(t=>t.name===e.name)||(this.scoops.push(e),this.scoopStatuses.set(e.jid,`initializing`)),this.send({type:`cone-create`,name:e.name,...t.description?{description:t.description}:{},...t.prompt?{prompt:t.prompt}:{},...e.model?{model:e.model}:{}})}async unregisterScoop(e){let t=this.scoops.find(t=>t.jid===e);if(t&&E(t)&&T(this.scoops).length<=1)throw Error(`Cannot remove the last cone`);this.send({type:`scoop-drop`,scoopJid:e}),this.scoops=this.scoops.filter(t=>t.jid!==e),this.scoopStatuses.delete(e)}createScoopTab(e){}async getGlobalMemory(){if(!this.localFs)return``;try{let e=await this.localFs.readFile(`/shared/CLAUDE.md`,{encoding:`utf-8`});return typeof e==`string`?e:new TextDecoder().decode(e)}catch{return``}}getScoopContext(e){if(this.localFs)return{getFS:()=>this.localFs}}getSharedFS(){return this.localFs}stopScoop(e){this.send({type:`abort`,scoopJid:e})}async clearQueuedMessages(e){}async deleteQueuedMessage(e,t){this.send({type:`delete-queued-message`,scoopJid:e,messageId:t})}updateModel(){this.send({type:`refresh-model`})}reloadSkills(){this.send({type:`reload-skills`})}setScoopModel(e,t){let n=`model-${q()}`,r=new Promise(e=>{this.pendingModelAcks.set(n,e)});return this.send({type:`set-scoop-model`,requestId:n,scoopJid:e,model:t}),Promise.race([r,new Promise(e=>setTimeout(()=>e(!1),5e3))]).finally(()=>this.pendingModelAcks.delete(n))}setLocked(e){this.locked=e}setScoopThinkingLevel(e,t,n){let r=`thinking-${q()}`,i=new Promise(e=>{this.pendingThinkingAcks.set(r,e)});return this.send({type:`set-thinking-level`,requestId:r,scoopJid:e,level:t,effortOverride:n}),Promise.race([i,new Promise(e=>setTimeout(()=>e(!1),5e3))]).finally(()=>this.pendingThinkingAcks.delete(r))}async clearAllMessages(e,t={}){let n=`clear-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,r=new Promise(e=>{this.pendingClearAcks.set(n,e)});this.send({type:`clear-chat`,requestId:n,...e?{scoopJid:e}:{},...t.discardLiveSnapshot?{discardLiveSnapshot:!0}:{}}),await Promise.race([r,new Promise(e=>setTimeout(e,5e3))]),this.pendingClearAcks.delete(n)}spawnAgent(e){let t=`agent-${q()}`,n=new Promise((e,n)=>{this.pendingAgentSpawnRequests.set(t,{resolve:e,reject:n})}),{signal:r,...i}=e;return this.send({type:`agent-spawn-request`,requestId:t,options:i}),r&&(r.aborted?this.send({type:`agent-spawn-abort`,requestId:t}):r.addEventListener(`abort`,()=>this.send({type:`agent-spawn-abort`,requestId:t}),{once:!0})),n}clearFilesystem(){this.send({type:`clear-filesystem`})}requestScoopMessages(e){this.send({type:`request-scoop-messages`,scoopJid:e})}async getScoopTranscript(e){let t=`tr-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,n=new Promise(e=>{this.pendingTranscriptRequests.set(t,e)});this.send({type:`request-scoop-transcript`,requestId:t,scoopJid:e});let r=await Promise.race([n,new Promise(e=>setTimeout(()=>e(``),5e3))]);return this.pendingTranscriptRequests.delete(t),r}async getMessagesForScoop(e){let t=`cm-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,n=new Promise(e=>{this.pendingChatMessagesRequests.set(t,e)});this.send({type:`request-scoop-chat-messages`,requestId:t,scoopJid:e});let r=!1,i=await Promise.race([n,new Promise(e=>setTimeout(()=>{r=!0,e([])},5e3))]);return this.pendingChatMessagesRequests.delete(t),r&&K.warn(`getMessagesForScoop timed out`,{scoopJid:e}),i}async requestSudoApproval(e,t=6e5){let n=`sudo-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,r=new Promise(e=>{this.pendingSudoRequests.set(n,e)});this.send({type:`request-sudo-approval`,requestId:n,request:e});let i=await Promise.race([r,new Promise(e=>setTimeout(()=>e({decision:`deny`,reason:`unavailable`}),t))]);return this.pendingSudoRequests.delete(n),i}async getSessionStats(){let e=`st-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,t=new Promise(t=>{this.pendingStatsRequests.set(e,t)});this.send({type:`request-session-stats`,requestId:e});let n=await Promise.race([t,new Promise(e=>setTimeout(()=>e(null),5e3))]);return this.pendingStatsRequests.delete(e),n}requestState(){this.send({type:`request-state`});let e=0;this.stateRetryTimer=setInterval(()=>{if(e++,this.ready||e>20){this.stateRetryTimer&&=(clearInterval(this.stateRetryTimer),null);return}K.debug(`Retrying request-state`,{attempt:e}),this.send({type:`request-state`})},500)}isReady(){return this.ready}sprinkleOpHandler=null;forwardLickHandler=null;sendSprinkleLick(e,t,n,r){this.send({type:`sprinkle-lick`,sprinkleName:e,body:t,targetScoop:n,origin:r})}sendToolUiAction(e,t,n){this.send({type:`tool-ui-action`,requestId:e,action:t,data:n})}async sendWebhookEvent(e,t,n){let r=`wh-${q()}`,i=new Promise(e=>{this.pendingWebhookDeliveries.set(r,e)});this.send({type:`lick-webhook-event`,webhookId:e,headers:t,body:n,requestId:r});try{return await Promise.race([i,new Promise(e=>setTimeout(()=>e(null),Ta))])}finally{this.pendingWebhookDeliveries.delete(r)}}sendSetFollowerForwarding(e){this.send({type:`set-follower-forwarding`,enabled:e})}sendForwardedLick(e){this.send({type:`inject-forwarded-lick`,event:e})}setForwardLickHandler(e){this.forwardLickHandler=e}sendCherryHostEvent(e,t,n){this.send({type:`lick-cherry-host-event`,cherryRuntimeId:e,name:t,detail:n})}sendPreviewLick(e){this.send({type:`lick-preview`,event:e})}setSprinkleOpHandler(e){this.sprinkleOpHandler=e}sendRaw(e){this.send(e)}setupMessageListener(){this.transport.onMessage(e=>{if(e.source!==`offscreen`)return;let t=e.payload;t?.type===`sprinkle-op`&&this.sprinkleOpHandler?this.sprinkleOpHandler(t):this.handleOffscreenMessage(e.payload)})}handleOffscreenMessage(e){if(!this.applySurfacePush(e))switch(e.type){case`offscreen-ready`:this.ready?(K.warn(`Offscreen restarted — re-requesting state`),this.ready=!1):K.info(`Offscreen engine ready`),this.send({type:`request-state`});break;case`agent-event`:this.handleAgentEvent(e);break;case`scoop-status`:this.handleScoopStatus(e);break;case`compaction-state`:this.handleCompactionState(e);break;case`clear-chat-ack`:{let t=this.pendingClearAcks.get(e.requestId);t&&(this.pendingClearAcks.delete(e.requestId),t());break}case`lick-webhook-delivery`:{let t=this.pendingWebhookDeliveries.get(e.requestId);t&&(this.pendingWebhookDeliveries.delete(e.requestId),t(e.disposition));break}case`agent-spawn-result`:this.handleAgentSpawnResult(e);break;case`set-scoop-model-ack`:this.handleScoopModelAck(e);break;case`set-thinking-level-ack`:this.handleThinkingLevelAck(e);break;case`user-message-ack`:this.handleUserMessageAck(e);break;case`scoop-created`:this.handleScoopCreated(e);break;case`scoop-list`:this.handleScoopList(e);break;case`state-snapshot`:this.handleStateSnapshot(e);break;case`error`:this.handleError(e);break;case`lick-backpressure`:this.callbacks.onLickBackpressure?.(e.scoopJid,{count:e.count,waitingMs:e.waitingMs});break;case`incoming-message`:this.handleIncomingMessage(e);break;case`message-updated`:this.handleMessageUpdated(e);break;case`scoop-messages-replaced`:{let t=e;this.resyncStreamPointer(t.scoopJid,t.messages),this.callbacks.onScoopMessagesReplaced?.(t.scoopJid,t.messages,t.queuedIds);break}case`scoop-transcript`:{let t=e,n=this.pendingTranscriptRequests.get(t.requestId);n&&(this.pendingTranscriptRequests.delete(t.requestId),n(t.transcript));break}case`scoop-chat-messages`:{let t=e,n=this.pendingChatMessagesRequests.get(t.requestId);n&&(this.pendingChatMessagesRequests.delete(t.requestId),n(t.messages));break}case`sudo-approval`:{let t=e,n=this.pendingSudoRequests.get(t.requestId);n&&(this.pendingSudoRequests.delete(t.requestId),n(t.decision));break}case`session-stats`:{let t=e,n=this.pendingStatsRequests.get(t.requestId);n&&(this.pendingStatsRequests.delete(t.requestId),n({totalCost:t.totalCost,burnRate:t.burnRate,fills:t.fills,models:t.models??[],scoops:t.scoops??[],...t.budget?{budget:t.budget}:{}}));break}case`tray-runtime-status`:{let t=e;Oa(t.leader,t.follower);break}case`forward-lick`:this.forwardLickHandler?.(e.event)}}applySurfacePush(e){if(e.type===`computers`)return fa().applyList(e),!0;if(e.type===`computer-frame`)return fa().applyFrame(e),!0;switch(e.type){case`terminal-status`:case`terminal-output`:case`terminal-media-preview`:case`terminal-exit`:case`terminal-cleared`:case`terminal-mode`:for(let t of this.terminalEventListeners)try{t(e)}catch(e){K.error(`terminal event listener error`,{error:e instanceof Error?e.message:String(e)})}return!0;default:return!1}}handleAgentSpawnResult(e){let t=this.pendingAgentSpawnRequests.get(e.requestId);t&&(this.pendingAgentSpawnRequests.delete(e.requestId),e.ok?t.resolve(e.result):t.reject(Error(e.error)))}terminalEventListeners=new Set;onTerminalEvent(e){return this.terminalEventListeners.add(e),()=>this.terminalEventListeners.delete(e)}resyncStreamPointer(e,t){let n;for(let e=t.length-1;e>=0;e--){let r=t[e];if(r.role===`assistant`&&r.isStreaming){n=r.id;break}}n===void 0?this.currentMessageId.delete(e):this.currentMessageId.set(e,n)}trackToolPhase(e,t){let n=this.toolDepth.get(e)??0,r=t===null?0:Math.max(0,n+t);r===0?this.toolDepth.delete(e):this.toolDepth.set(e,r),n>0!=r>0&&this.callbacks.onScoopPhaseChange?.(e,r>0?`tool`:`thinking`)}handleToolUiAgentEvent(e){if(e.displayScoopJid){let t=`tool-ui-${e.requestId??``}`;e.eventType===`tool_ui`?this.emitToUI({type:`tool_ui`,messageId:t,toolName:e.toolName??``,requestId:e.requestId??``,html:e.html??``}):e.eventType===`tool_ui_done`&&this.emitToUI({type:`tool_ui_done`,messageId:t,requestId:e.requestId??``});return}if(e.eventType===`tool_ui`){let t=this.currentMessageId.get(e.scoopJid);t||(t=`scoop-${e.scoopJid}-${q()}`,this.currentMessageId.set(e.scoopJid,t),this.emitToUI({type:`message_start`,messageId:t})),this.emitToUI({type:`tool_ui`,messageId:t,toolName:e.toolName??``,requestId:e.requestId??``,html:e.html??``});return}let t=this.currentMessageId.get(e.scoopJid);t&&(e.eventType===`tool_ui_done`?this.emitToUI({type:`tool_ui_done`,messageId:t,requestId:e.requestId??``}):e.progress&&this.emitToUI({type:`tool_progress`,messageId:t,toolName:e.toolName??``,progress:e.progress,toolCallId:e.toolCallId}))}handleAgentEvent(e){switch(e.eventType){case`text_delta`:case`tool_start`:case`tool_ui`:case`turn_end`:this.callbacks.onScoopActivity?.(e.scoopJid)}switch(e.eventType){case`tool_start`:this.trackToolPhase(e.scoopJid,1);break;case`tool_end`:this.trackToolPhase(e.scoopJid,-1);break;case`turn_end`:this.trackToolPhase(e.scoopJid,null)}if((e.displayScoopJid??e.scoopJid)!==this.selectedScoopJid){this.translateTranscriptEvent(e,this.backgroundMessageId,t=>this.emitBackground(e.scoopJid,t));return}switch(e.eventType){case`tool_ui`:case`tool_ui_done`:case`tool_progress`:this.handleToolUiAgentEvent(e);break;default:this.translateTranscriptEvent(e,this.currentMessageId,e=>this.emitToUI(e))}}translateTranscriptEvent(e,t,n){let r=()=>{let r=t.get(e.scoopJid);return r||(r=`scoop-${e.scoopJid}-${q()}`,t.set(e.scoopJid,r),n({type:`message_start`,messageId:r})),r};switch(e.eventType){case`text_delta`:n({type:`content_delta`,messageId:r(),text:e.text??``});break;case`tool_start`:n({type:`tool_use_start`,messageId:r(),toolName:e.toolName??``,toolInput:e.toolInput,toolCallId:e.toolCallId});break;case`tool_end`:{let r=t.get(e.scoopJid);r&&n({type:`tool_result`,messageId:r,toolName:e.toolName??``,result:e.toolResult??``,isError:e.isError,toolCallId:e.toolCallId});break}case`response_done`:{let r=t.get(e.scoopJid);r&&(n({type:`content_done`,messageId:r,model:e.model,usage:e.usage}),t.delete(e.scoopJid));break}case`turn_end`:{let r=t.get(e.scoopJid)??`done-${e.scoopJid}-${q()}`;t.delete(e.scoopJid),n({type:`turn_end`,messageId:r});break}}}handOverOpenMessages(e,t){let n=(e,t)=>{t&&this.emitBackground(e,{type:`content_done`,messageId:t})};e&&n(e,this.currentMessageId.get(e)),t&&(n(t,this.backgroundMessageId.get(t)),this.backgroundMessageId.delete(t))}onBackgroundUnitEvent(e){return this.backgroundEventListeners.add(e),()=>this.backgroundEventListeners.delete(e)}emitBackground(e,t){for(let n of this.backgroundEventListeners)try{n(e,t)}catch(e){K.error(`Background listener error`,{error:e instanceof Error?e.message:String(e)})}}renderCompactionNotice(e,t,n,r){let i=this.compactionRows.apply(e,t,n,r);i&&e===this.selectedScoopJid&&this.emitToUI({type:`compaction_notice`,messageId:i.messageId,marker:i.kind===`retract`?{trigger:n.trigger,state:`discarded`}:i.marker})}handleCompactionState(e){let t={trigger:e.trigger??`threshold`,...e.transcriptPath?{transcriptPath:e.transcriptPath}:{},...e.failure?{failure:e.failure}:{},...e.roundId?{roundId:e.roundId}:{}};this.callbacks.onCompactionStateChange?.(e.scoopJid,e.state,t),this.renderCompactionNotice(e.scoopJid,e.state,t,e.rowId)}handleScoopStatus(e){let t=this.scoopStatuses.get(e.scoopJid);this.scoopStatuses.set(e.scoopJid,e.status),t!==e.status&&this.trackToolPhase(e.scoopJid,null),this.callbacks.onStatusChange(e.scoopJid,e.status)}handleScoopCreated(e){let t=this.msgScoopToRegistered(e.scoop);this.scoops=this.scoops.filter(e=>e.name!==t.name||e.jid===t.jid),this.scoops.find(e=>e.jid===t.jid)||this.scoops.push(t),this.scoopStatuses.set(t.jid,e.scoop.status),this.callbacks.onScoopCreated(t)}wireScoops(){return this.scoops.map(e=>{let t=pe(e),n=fe(e),r={...e.config,...t?{modelId:t.id,modelProviderId:t.provider}:{},...n.level?{thinkingLevel:n.level}:{},...n.effortOverride?{effortOverride:n.effortOverride}:{}};return{jid:e.jid,name:e.name,folder:e.folder,parentId:e.parentJid,assistantLabel:e.assistantLabel,status:this.scoopStatuses.get(e.jid)??`ready`,...Object.keys(r).length>0?{config:r}:{}}})}handleScoopModelAck(e){if(e.applied){let t=this.getScoop(e.scoopJid);t&&(t.model=e.model?{...e.model}:void 0,this.callbacks.onScoopListUpdate(this.wireScoops()))}this.pendingModelAcks.get(e.requestId)?.(e.applied)}getStreamThinking(e){return this.streamThinkingByUnit.get(e)}handleThinkingLevelAck(e){if(e.applied){let t=this.getScoop(e.scoopJid);t&&de(t,e.level===void 0?void 0:{level:e.level,effortOverride:e.effortOverride}),e.resolvedLevel&&this.streamThinkingByUnit.set(e.scoopJid,{level:e.resolvedLevel===`max`?`xhigh`:e.resolvedLevel,...e.resolvedEffortOverride?{effortOverride:e.resolvedEffortOverride}:{}})}this.pendingThinkingAcks.get(e.requestId)?.(e.applied)}handleUserMessageAck(e){let t=this.pendingUserMessageAcks.get(e.requestId);t&&(e.ok?t.resolve():t.reject(Error(e.error?.trim()||`the kernel refused the message`)))}handleScoopList(e){this.scoops=e.scoops.map(e=>this.msgScoopToRegistered(e));for(let t of e.scoops)this.scoopStatuses.set(t.jid,t.status);this.callbacks.onScoopListUpdate(e.scoops)}handleStateSnapshot(e){K.info(`Received state snapshot`,{scoopCount:e.scoops.length}),this.scoops=e.scoops.map(e=>this.msgScoopToRegistered(e));for(let t of e.scoops)this.scoopStatuses.set(t.jid,t.status);e.trayRuntimeStatus&&Oa(e.trayRuntimeStatus.leader,e.trayRuntimeStatus.follower);let t=!this.ready;t&&(this.ready=!0,this.stateRetryTimer&&=(clearInterval(this.stateRetryTimer),null)),this.callbacks.onScoopListUpdate(e.scoops),t&&this.callbacks.onReady?.()}handleError(e){let t={type:`error`,error:e.error,...e.endTurn===!1?{endTurn:!1}:{}};e.scoopJid===this.selectedScoopJid?this.emitToUI(t):e.scoopJid&&this.emitBackground(e.scoopJid,t)}handleIncomingMessage(e){this.callbacks.onIncomingMessage(e.scoopJid,e.message)}handleMessageUpdated(e){this.callbacks.onMessageUpdate?.(e.scoopJid,{messageId:e.messageId,lickId:e.lickId,lickState:e.lickState})}msgScoopToRegistered(e){return xe({jid:e.jid,name:e.name,folder:e.folder,parentJid:e.parentId,requiresTrigger:e.parentId!==null,assistantLabel:e.assistantLabel,addedAt:new Date().toISOString(),...e.config?{config:{...e.config}}:{}})}emitToUI(e){for(let t of this.eventListeners)try{t(e)}catch(e){K.error(`Listener error`,{error:e instanceof Error?e.message:String(e)})}}send(e){if(this.locked){this.emitToUI({type:`error`,error:`This window is detached. Close it and use the detached tab.`});return}this.transport.send(e)}};function q(){return Date.now().toString(36)+Math.random().toString(36).slice(2,8)}function Oa(e,t){Xt({state:e.state,error:e.error,reconnectAttempts:e.reconnectAttempts,session:e.session?{...e.session}:null}),Ie({state:t.state,joinUrl:t.joinUrl,trayId:t.trayId,error:t.error,lastError:t.lastError,reconnectAttempts:t.reconnectAttempts,attachAttempts:t.attachAttempts,lastAttachCode:t.lastAttachCode,connectingSince:t.connectingSince,lastPingTime:t.lastPingTime})}function ka(e){let t=e.createAgentHandle(),n=null,r=null;return{onAgentEvent:e=>t.onEvent(e),sendSprinkleLick:(t,n,r,i)=>e.sendSprinkleLick(t,n,r,i?{unitJid:i}:void 0),sendToolUiAction:(t,n,r)=>e.sendToolUiAction(t,n,r),deleteQueuedMessage:(t,n)=>e.deleteQueuedMessage(t,n),emitAgentError:t=>e.emitAgentError(t),getRecord:t=>e.getScoops().find(e=>e.jid===t),speaksReplies:!0,takeAttachments:()=>n?.(),onTurnIdle:()=>r?.(),welcome:{intercept:null},setAttachmentSource:e=>{n=e},setTurnIdleHook:e=>{r=e}}}var Aa={onAgentEvent:()=>()=>void 0,sendSprinkleLick:()=>void 0,sendToolUiAction:()=>void 0,deleteQueuedMessage:()=>Promise.resolve(),emitAgentError:()=>void 0},ja=`A follower cannot cancel the leader’s queued message`;function Ma(e){return{onAgentEvent:e.onAgentEvent,sendSprinkleLick:(t,n,r)=>e.getSync()?.sendSprinkleLick(t,n,r),sendToolUiAction:()=>void 0,deleteQueuedMessage:()=>Promise.reject(Error(ja)),emitAgentError:e.onAgentError,readOnlyToolUi:!0}}function J(e){return!e.includes(`\0`)}function Na(e){if(typeof window>`u`||window.localStorage===void 0)return()=>void 0;let t=window.localStorage,n=typeof Storage<`u`&&t instanceof Storage,r=n?Storage.prototype.setItem:t.setItem.bind(t),i=n?Storage.prototype.removeItem:t.removeItem.bind(t),a=n?Storage.prototype.clear:t.clear.bind(t);if(n){let n=Storage.prototype;n.setItem=function(n,i){if(r.call(this,n,i),this===t){if(!J(n)){console.warn(`[page-storage-sync] dropping localStorage write with NUL in key`,n);return}e.send({type:`local-storage-set`,key:n,value:i})}},n.removeItem=function(n){if(i.call(this,n),this===t){if(!J(n)){console.warn(`[page-storage-sync] dropping localStorage remove with NUL in key`,n);return}e.send({type:`local-storage-remove`,key:n})}},n.clear=function(){a.call(this),this===t&&e.send({type:`local-storage-clear`})}}else{let n=(e,n)=>{Object.defineProperty(t,e,{value:n,writable:!0,configurable:!0,enumerable:!1})};n(`setItem`,(t,n)=>{if(r(t,n),!J(t)){console.warn(`[page-storage-sync] dropping localStorage write with NUL in key`,t);return}e.send({type:`local-storage-set`,key:t,value:n})}),n(`removeItem`,t=>{if(i(t),!J(t)){console.warn(`[page-storage-sync] dropping localStorage remove with NUL in key`,t);return}e.send({type:`local-storage-remove`,key:t})}),n(`clear`,()=>{a(),e.send({type:`local-storage-clear`})})}let o=n=>{if(n.storageArea===t){if(n.key===null){e.send({type:`local-storage-clear`});return}if(J(n.key)){if(n.newValue===null){e.send({type:`local-storage-remove`,key:n.key});return}e.send({type:`local-storage-set`,key:n.key,value:n.newValue})}}};return window.addEventListener(`storage`,o),()=>{if(n)Storage.prototype.setItem=r,Storage.prototype.removeItem=i,Storage.prototype.clear=a;else{let e=(e,n)=>{Object.defineProperty(t,e,{value:n,writable:!0,configurable:!0,enumerable:!1})};e(`setItem`,r),e(`removeItem`,i),e(`clear`,a)}window.removeEventListener(`storage`,o)}}function Pa(e){let t=!1,n=()=>{t||(t=!0,typeof e.start==`function`&&e.start())};return{onMessage:t=>{let r=e=>{t(e.data)};return e.addEventListener(`message`,r),n(),()=>{e.removeEventListener(`message`,r)}},send:(t,n)=>{n&&n.length>0?e.postMessage(t,n):e.postMessage(t)}}}function Fa(e){let t=Pa(e);return{onMessage:e=>t.onMessage(e),send:(e,n)=>{t.send({source:`panel`,payload:e},n)}}}async function Ia(e,t,n,r,i,a){let o=e;if(o?.type){if(o.type===`cdp-cmd`){let r=e;if((r.gen??a())<a()){n.send({type:`cdp-response`,id:r.id,error:`dropped: command crossed a CDP connection reset in flight`});return}try{i&&t.state!==`connected`&&t.superseded!==!0&&await i();let e=await t.send(r.method,r.params,r.sessionId);n.send({type:`cdp-response`,id:r.id,result:e})}catch(e){n.send({type:`cdp-response`,id:r.id,error:e instanceof Error?e.message:String(e)})}return}if(o.type===`cdp-subscribe`){let i=e;if(r.has(i.event))return;let a=e=>{n.send({type:`cdp-event`,method:i.event,params:e})};r.set(i.event,a),t.on(i.event,a);return}if(o.type===`cdp-unsubscribe`){let n=e,i=r.get(n.event);if(!i)return;r.delete(n.event),t.off(n.event,i)}}}function La(e,t){for(let[n,r]of t)e.off(n,r),e.on(n,r)}var Ra=1e4;function za(e){return new Promise((t,n)=>{let r=!1,i=null,a=null,o=e=>{r||(r=!0,clearTimeout(s),a&&clearInterval(a),i?.(),e?n(e):t())},s=setTimeout(()=>o(Error(`page CDP client is still connecting`)),Ra),c=e=>{e===`connected`?o():e===`disconnected`&&o(Error(`page CDP client failed to reconnect`))};e.onStateChange?i=e.onStateChange(e=>c(e)):a=setInterval(()=>c(e.state),50),c(e.state)})}function Ba(e,t,n={}){let r=Pa(e),i=null,a=n.reconnect?()=>(i||=(t.state===`connecting`?za(t):n.reconnect()).finally(()=>{i=null}),i):null,o=new Map,s=r.onMessage(e=>{Ia(e,t,r,o,a,()=>l)}),c=t.state,l=0,u=t.onStateChange?.((e,n)=>{if(e!==c){if(c=e,e===`disconnected`){l+=1,r.send({type:`cdp-reset`,reason:n??`page CDP client disconnected`});return}e===`connected`&&(La(t,o),r.send({type:`cdp-ready`}))}});return()=>{s(),u?.();for(let[e,n]of o)t.off(e,n);o.clear()}}function Va(){let e={};if(typeof localStorage>`u`)return e;for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);if(n===null)continue;let r=localStorage.getItem(n);r!==null&&(e[n]=r)}return e}var Ha=5e3;function Ua(e){let t=null,n=!1,r=!1,i=!1,a=0,o=Date.now(),s,c=()=>{t!==null&&(clearTimeout(t),t=null)},l=()=>{c(),!(n||r||i)&&(t=setTimeout(()=>{if(n||r||i)return;if(a+=1,a<e.readyStallLimit){e.onReadyStall?.({elapsedMs:Date.now()-o,stalls:a,stage:s}),l();return}i=!0,c();let t=e.readyTimeoutMs*e.readyStallLimit,u=s?` (last progress: ${s})`:``;e.onExhausted(`Kernel worker did not signal ready within ${t}ms${u}`)},e.readyTimeoutMs))};return{pause(){r||i||(n=!0,c())},restart(){r||i||(n=!1,a=0,o=Date.now(),l())},arm:l,clear(){r=!0,c()},noteProgress(t){r||i||(t&&(s=t,e.onBootProgress?.(t)),!n&&(a=0,l()))},timedOut:()=>i}}function Wa(e,t,n){let r=()=>{},i=()=>{},a=()=>{};return{ready:new Promise((o,s)=>{let c=null,l=Ua({readyTimeoutMs:n,readyStallLimit:Math.max(1,t.readyStallLimit??(t.onReadyStall?3:1)),onReadyStall:t.onReadyStall,onBootProgress:t.onBootProgress,onExhausted:e=>{t.onLateReady||r(),s(Error(e))}});i=()=>l.pause(),a=()=>l.restart(),r=()=>{c!==null&&(e.removeEventListener(`message`,c),c=null),l.clear()},c=e=>{let n=e.data;if(n?.type===`kernel-worker-boot-progress`){l.noteProgress(n.stage);return}if(n?.type===`kernel-worker-ready`){if(r(),l.timedOut()){t.onLateReady?.();return}o();return}if(n?.type===`kernel-worker-boot-error`){r();let e=n.message??`unknown error`,t=n.code,i=Error(`Kernel worker boot failed: ${e}`);t&&(i.code=t),s(i)}},e.addEventListener(`message`,c),l.arm()}),cleanup:()=>r(),pauseReadyDeadline:()=>i(),restartReadyDeadline:()=>a()}}function Ga(e){let{worker:t,realCdpTransport:n}=e,r=e.readyTimeoutMs??3e4,i=e.localStorageSeed??{},a=new MessageChannel,o=new MessageChannel,s=Fa(a.port1),c=e.makeClient(s);e.onWorkerScriptError&&e.worker.addEventListener?.(`error`,()=>e.onWorkerScriptError());let l=Ba(o.port1,n,{...e.reconnectCdp?{reconnect:e.reconnectCdp}:{}}),{ready:u,cleanup:d,pauseReadyDeadline:f,restartReadyDeadline:p}=Wa(a.port1,e,r),m={type:`kernel-worker-init`,kernelPort:a.port2,cdpPort:o.port2,localStorageSeed:i,instanceId:e.instanceId,localApiBaseUrl:e.localApiBaseUrl??null,bridgeToken:e.bridgeToken??null,syncFsBridgeEnabled:e.syncFsBridgeEnabled??!1,syncFsChannelNonce:e.syncFsChannelNonce??null,localLickWsUrl:e.localLickWsUrl??null,extensionDelegateId:e.extensionDelegateId??null,pageBuildId:`6.256.11-mvqzre5b`,pageLoadedAt:globalThis.performance?.timeOrigin??Date.now(),flagFloat:e.flagFloat??null,appPageUrl:globalThis.location?.href??null};t.postMessage(m,[a.port2,o.port2]);let h=!1,g={client:c,ready:u,pauseReadyDeadline:f,restartReadyDeadline:p,drain:(e=Ha)=>Ka(t,e,h).then(e=>(g.dispose(),e)),dispose(){if(!h){h=!0,d(),l();try{t.postMessage({type:`kernel-worker-shutdown`})}catch{}t.terminate(),a.port1.close(),o.port1.close()}}};return g}function Ka(e,t,n){if(n)return Promise.resolve(!0);if(typeof MessageChannel!=`function`)return Promise.resolve(!1);let r=new MessageChannel;return new Promise(n=>{let i=e=>{clearTimeout(a),r.port1.close(),n(e)},a=setTimeout(()=>i(!1),t);r.port1.onmessage=e=>{let t=e.data;t?.type===`kernel-worker-drained`&&i(t.ok===!0)};try{e.postMessage({type:`kernel-worker-drain`},[r.port2])}catch{i(!1)}})}function qa(e){return Ga({worker:e.workerUrl?new Worker(e.workerUrl,{type:`module`}):new Worker(new URL(`/assets/kernel-worker-DHiFoUSZ.js`,``+import.meta.url),{type:`module`}),realCdpTransport:e.realCdpTransport,reconnectCdp:e.reconnectCdp,makeClient:e.makeClient,readyTimeoutMs:e.readyTimeoutMs,localStorageSeed:e.localStorageSeed??Va(),instanceId:e.instanceId,localApiBaseUrl:e.localApiBaseUrl,bridgeToken:e.bridgeToken,syncFsBridgeEnabled:e.syncFsBridgeEnabled,syncFsChannelNonce:e.syncFsChannelNonce,localLickWsUrl:e.localLickWsUrl,extensionDelegateId:e.extensionDelegateId,flagFloat:e.flagFloat,onWorkerScriptError:e.onWorkerScriptError,onReadyStall:e.onReadyStall,readyStallLimit:e.readyStallLimit,onLateReady:e.onLateReady,onBootProgress:e.onBootProgress})}var Y=null;function Ja(e){return Y=e,()=>{Y===e&&(Y=null)}}function Ya(){if(!Y)throw Error(`Export for SLICC 7 is only available in the SLICC 6 leader tab.`);return Y()}var Xa=null;function Za(e){return Xa=e,()=>{Xa===e&&(Xa=null)}}function Qa(e){return`error`in e}function X(){throw new Te(`redaction-unavailable`)}function $a(e,t){return(typeof e!=`object`||!e||!Array.isArray(e.texts)||e.texts.length!==t)&&X(),e.texts}function eo(){return{async redact(e){let t;try{t=await fetch(se(`/api/secrets/redact-export`),{method:`POST`,headers:ce({"content-type":`application/json`}),body:JSON.stringify({texts:e})})}catch{X()}t.ok||X();let n;try{n=await t.json()}catch{X()}return $a(n,e.length)}}}function to(){return{async redact(e){let t;try{t=await new Promise(t=>{chrome.runtime.sendMessage({type:`secrets.redact-export`,texts:e},e=>{chrome.runtime.lastError,t(e??null)})})}catch{X()}return typeof t==`object`&&t&&Qa(t)&&X(),$a(t,e.length)}}}function no(){return{async redact(e){let t;try{t=await De(`secrets.redact-export`,{texts:e})}catch{X()}return t??X(),typeof t==`object`&&t&&Qa(t)&&X(),$a(t,e.length)}}}function ro(){return{async redact(e){X()}}}function io(){let e=Ee();return e===`connect`?ro():e===`extension-direct`?to():e===`extension-delegate`?no():eo()}var ao=`Restoring session…`,oo=`slicc-restoring-session`;function so(e){let t=e.querySelector(`:scope > .slicc-thread__inner`)??e;for(let e of t.children)if(!e.classList.contains(oo))return!1;return!0}function co(e,t){let n=e.querySelector(`:scope > .slicc-thread__inner`)??e,r=n.querySelector(`:scope > .${oo}`);if(!t){r?.remove();return}if(r)return;let i=e.ownerDocument.createElement(`p`);i.className=oo,i.textContent=ao,n.append(i)}function Z(e){switch(e){case`processing`:return`working`;case`error`:return`broken`;case`initializing`:return`initializing`;default:return`idle`}}function lo(e,t={}){let n=Z(t.status),r=pe(e);return{id:e.jid,parentId:e.parentJid,role:E(e)?`primary`:`child`,name:e.name,folder:e.folder,assistantLabel:e.assistantLabel,state:n,...n===`working`&&t.phase?{phase:t.phase}:{},...n===`idle`&&t.awaiting?{awaiting:!0}:{},fill:typeof t.fill==`number`?Math.round(t.fill*100):0,...typeof t.turns==`number`?{turns:t.turns}:{},...r?{model:r}:{},...e.trigger?{trigger:e.trigger}:{},...e.addedAt?{addedAt:e.addedAt}:{}}}function uo(e,t=Date.now){let n=e.parentId===null,r=e.folder??e.name,i=n?e.config:fo(e,r),a={jid:e.id??(n?`cone_${t()}`:`scoop_${r}_${t()}`),name:e.name,folder:r,requiresTrigger:!n,assistantLabel:n?`sliccy`:r,addedAt:new Date(t()).toISOString(),parentJid:e.parentId,...i?{config:i,configSchemaVersion:3}:{},...e.notifyOnComplete===!1?{notifyOnComplete:!1}:{},...!n&&e.onParentClose===`detach`?{onParentClose:`detach`}:{}};return n||(a.trigger=`@${r}`),a}function fo(e,t){let n=me(e.workspace?.mode??e.config?.workspaceMode),r=e.workspace?.from??`/workspace`,i=we(n,t,{root:r},e.workspace?.from),a=e.config;return{...a,workspaceMode:n,visiblePaths:a?.visiblePaths===void 0?i.visiblePaths:a.visiblePaths,writablePaths:a?.writablePaths===void 0?i.writablePaths:a.writablePaths}}var po=`padding:0.5rem 1.25rem;border-radius:0.375rem;cursor:pointer;font:inherit;font-size:0.875rem;`,mo=`${po}border:none;background:var(--s2-accent-color,#0265dc);color:#fff;`,ho=`${po}border:none;background:#d23;color:#fff;`,go=`${po}background:transparent;border:1px solid var(--s2-border-color,#e0e0e0);color:inherit;`;function _o(e,t,n){return{...uo({parentId:null,name:e,folder:`cone-pending-${t.length+1}`}),assistantLabel:e,...n?{model:n}:{}}}function vo(e,t){let n=e.createElement(`slicc-dialog`);n.setAttribute(`heading`,t.heading),n.append(t.body);for(let r of t.actions){let t=e.createElement(`button`);t.setAttribute(`slot`,`footer`),t.type=`button`,t.dataset.coneAction=r.data,t.textContent=r.text,t.style.cssText=r.style,t.addEventListener(`click`,r.onClick),n.append(t)}return n.addEventListener(`slicc-dialog-close`,()=>t.onDismiss(n)),n}function yo(e,t){let n=e.createElement(`form`);n.style.cssText=`display:flex;flex-direction:column;gap:0.5rem;padding:0.25rem 0;`;let r=`font-size:0.9375rem;padding:0.5rem 0.625rem;border:1px solid var(--s2-border-color,#e0e0e0);border-radius:0.375rem;background:transparent;color:inherit;font-family:inherit;`,i=e.createElement(`input`);i.type=`text`,i.name=`name`,i.placeholder=`Name`,i.setAttribute(`aria-label`,`Cone name`),i.maxLength=40,i.autocomplete=`off`,i.required=!0,i.style.cssText=r;let a=e.createElement(`textarea`);a.name=`brief`,a.placeholder=`What should it work on? (optional)`,a.setAttribute(`aria-label`,`What the cone should work on`),a.rows=3,a.style.cssText=`${r}resize:vertical;`,n.append(i,a);let o=()=>({name:i.value.trim(),brief:a.value.trim()});return n.addEventListener(`submit`,e=>{e.preventDefault(),t(o())}),a.addEventListener(`keydown`,e=>{e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),t(o()))}),n.readDraft=o,n}function bo(e){let{freezer:t,client:n,log:r}=e,i=t.ownerDocument,a=null,o=!1,s=null,c=()=>t.querySelector(`slicc-freezer-new`),l=()=>Hn(e.getUnits(),e.getSelected()),u=t=>e.getUnits().find(e=>e.id===t.jid)??lo(t),d=()=>{if(!s)return;let e=s;s=null,e.hide?.(),e.remove()},f=e=>{d();let t=vo(i,{...e,onDismiss:e=>{s===e&&(s=null),e.remove()}});s=t,i.body.append(t),t.show?.()},p=t=>{if(!t.name)return;d();let i=l(),o=_o(t.name,n.getScoops(),Ln(e.getUnits(),i?.id));a=t.name,n.registerScoop(o,t.brief?{description:t.brief,prompt:t.brief}:{}).catch(e=>r.warn(`WC cone create failed`,e)),_()},m=()=>{let e=yo(i,p);f({heading:`New cone`,body:e,actions:[{text:`Create`,style:mo,data:`create`,onClick:()=>p(e.readDraft())},{text:`Cancel`,style:go,data:`cancel`,onClick:d}]}),queueMicrotask(()=>e.querySelector(`input`)?.focus())},h=t=>{d();let i=T(n.getScoops()),a=i.find(e=>e.jid===t);if(!a||i.length<=1||o){_();return}o=!0,_(),(async()=>{try{await e.freezeCone(a)}catch(e){r.warn(`WC cone freeze before drop failed`,e)}let t=l()?.id===a.jid;try{await n.unregisterScoop(a.jid)}catch(e){r.warn(`WC cone drop failed`,e)}if(t){let t=T(n.getScoops()).find(e=>e.jid!==a.jid);t&&e.selectScoop(u(t))}o=!1,_()})()},g=e=>{let t=Bn(e),n=i.createElement(`p`);n.textContent=`Its chat goes to the Freezer.`,n.style.cssText=`font-size:0.875rem;margin:0;`,f({heading:`Drop ${t}?`,body:n,actions:[{text:`Drop`,style:ho,data:`drop`,onClick:()=>h(e.id)},{text:`Cancel`,style:go,data:`cancel`,onClick:d}]})},_=()=>{let t=T(n.getScoops());if(a!==null){let n=t.find(e=>e.name===a&&!e.folder.startsWith(`cone-pending-`));n&&(a=null,e.getSelected()?.id!==n.jid&&e.selectScoop(u(n)))}let r=c();r?.setAttribute(`cones`,String(t.length)),r?.toggleAttribute(`busy`,o)};return t.addEventListener(`new-cone`,m),t.addEventListener(`drop-cone`,()=>{let e=l();!e||T(n.getScoops()).length<=1||o||g(e)}),_(),{refresh:_,dialog:()=>s}}var xo={"gelatiere-dismiss":{consume:!0,mode:`dismiss`},"gelatiere-install":{consume:!1,mode:`take`},"gelatiere-try":{consume:!1,mode:`take`}};function So(e){return t=>{if(t.type!==`sprinkle`||t.sprinkleName!==`welcome`&&t.sprinkleName!==`inline`&&t.sprinkleName!==`suggestions`)return!1;let n=t.body,r=xo[typeof n?.action==`string`?n.action:``];if(!r)return!1;let i=n?.data,a=typeof i?.id==`string`&&i.id?i.id:null;return a&&e.openVfs().then(async e=>{let t=await s(()=>import(`./wc-shell-sK_ZzgMP.js`).then(e=>e.rt),__vite__mapDeps([38,5,1,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47]));return r.mode===`dismiss`?t.dismissGelatiereSuggestion(e,a):t.takeGelatiereSuggestion(e,a)}).catch(t=>e.log.warn(`gelatiere card settlement failed`,t)),r.consume}}var Co=5e3,wo=class{deps;listListeners=new Set;unitListeners=new Map;lastSnapshots=new Map;orphanedReplays=new Map;retriedSnapshots=new Set;pendingSnapshots=new Map;constructor(e){this.deps=e}toSummary(e){return lo(e,{awaiting:this.deps.getAwaiting?.()===e.jid,fill:this.deps.fills.get(e.jid),phase:this.deps.phases.get(e.jid),status:this.deps.statuses.get(e.jid),turns:this.deps.turns?.get(e.jid)})}snapshotFor(e,t,n){let r=this.deps.getClient()?.getScoops().find(t=>t.jid===e);return r?{summary:this.toSummary(r),messages:t,...n?{queuedIds:n}:{}}:null}currentUnits(){return(this.deps.getClient()?.getScoops()??[]).map(e=>this.toSummary(e))}publishSnapshot(e,t){this.retriedSnapshots.delete(e),this.lastSnapshots.set(e,t),this.emit(e,{snapshot:t,type:`snapshot`});let n=this.pendingSnapshots.get(e);if(n){this.pendingSnapshots.delete(e);for(let e of n)e(t)}}drainOrphanedReplays(){for(let[e,t]of this.orphanedReplays){let n=this.snapshotFor(e,t.messages,t.queuedIds);n&&(this.orphanedReplays.delete(e),this.publishSnapshot(e,n))}}recoverUnanswered(e){if(this.unitListeners.has(e)){if(this.retriedSnapshots.has(e)){this.publishRecovery(e);return}this.retriedSnapshots.add(e),this.deps.getClient()?.requestScoopMessages(e),setTimeout(()=>{this.retriedSnapshots.has(e)&&this.publishRecovery(e)},Co)}}publishRecovery(e){if(!this.unitListeners.has(e))return;let t=this.lastSnapshots.get(e),n=this.deps.getClient()?.getScoops().find(t=>t.jid===e);this.emit(e,{snapshot:{messages:t?.messages??[],...n?{summary:this.toSummary(n)}:{}},type:`snapshot`})}forgetWaiter(e,t){let n=this.pendingSnapshots.get(e);n&&(n.delete(t),n.size===0&&this.pendingSnapshots.delete(e))}emitList(){if(this.drainOrphanedReplays(),this.listListeners.size===0)return;let e=this.currentUnits();for(let t of this.listListeners)t(e)}emit(e,t){let n=this.unitListeners.get(e);if(n)for(let e of n)e(t)}wrapCallbacks(e){return{...e,onStatusChange:(t,n)=>{e.onStatusChange(t,n),this.emit(t,{state:Z(n),type:`status`}),this.emitList()},onScoopCreated:t=>{e.onScoopCreated(t),this.emitList()},onScoopListUpdate:t=>{e.onScoopListUpdate(t),this.emitList()},onScoopPhaseChange:(t,n)=>{e.onScoopPhaseChange?.(t,n),this.emitList()},onIncomingMessage:(t,n)=>{e.onIncomingMessage(t,n),this.emit(t,{message:n,type:`message`})},onScoopMessagesReplaced:(t,n,r)=>{e.onScoopMessagesReplaced?.(t,n,r);let i=n,a=this.snapshotFor(t,i,r);a?this.publishSnapshot(t,a):this.orphanedReplays.set(t,{messages:i,queuedIds:r})}}}list(){return Promise.resolve(this.currentUnits())}subscribeList(e){return this.listListeners.add(e),e(this.currentUnits()),()=>{this.listListeners.delete(e)}}subscribe(e,t){let n=this.unitListeners.get(e)??new Set;n.add(t),this.unitListeners.set(e,n);let r=this.lastSnapshots.get(e);return this.pendingSnapshots.has(e)||(r?t({snapshot:r,type:`snapshot`}):this.deps.getClient()?.requestScoopMessages(e)),()=>{n.delete(t),n.size===0&&this.unitListeners.delete(e)}}takeArrivedReplay(e){let t=this.orphanedReplays.get(e);if(!t)return null;let n=this.snapshotFor(e,t.messages,t.queuedIds);return n?(this.orphanedReplays.delete(e),this.lastSnapshots.set(e,n),n):null}snapshot(e){let t=this.deps.getClient();if(!t)return Promise.reject(Error(`kernel client not attached`));let n=this.takeArrivedReplay(e);if(n)return t.setSelectedScoopJid(e),Promise.resolve(n);let r=this.pendingSnapshots.get(e)??new Set;this.pendingSnapshots.set(e,r);let i=()=>{},a=new Promise(e=>{i=e,r.add(e)});t.setSelectedScoopJid(e),t.requestScoopMessages(e);let o,s=new Promise(t=>{o=setTimeout(()=>{o=void 0;let n=this.pendingSnapshots.get(e)?.has(i)===!0;this.forgetWaiter(e,i),n&&this.recoverUnanswered(e),t(this.snapshotFor(e,[],void 0))},Co)});return Promise.race([a.then(e=>(o!==void 0&&(clearTimeout(o),o=void 0),e)),s]).then(t=>{if(!t)throw Error(`unknown work unit: ${e}`);return t})}send(e,t){let n=this.deps.getClient();if(!n)return Promise.reject(Error(`kernel client not attached`));let r=t.messageId??`msg-${Date.now()}-${Math.random().toString(36).slice(2,8)}`;return n.sendUserMessage({scoopJid:e,text:t.text,messageId:r,...t.attachments?{attachments:t.attachments}:{},...t.steer?{steer:!0}:{},...t.guestGate?{guestGate:t.guestGate}:{}})}setModel(e,t){let n=this.deps.getClient();return n?n.setScoopModel(e,t):Promise.reject(Error(`kernel client not attached`))}signal(e,t){if(t!==`stop`)return Promise.resolve();let n=this.deps.getClient();return n?(n.stopScoop(e),Promise.resolve()):Promise.reject(Error(`kernel client not attached`))}};function Q(e){return e.workUnits??=new wo({fills:e.fills,getAwaiting:()=>e.awaitingInput,getClient:()=>e.getClient(),phases:e.phases,statuses:e.statuses,turns:e.turns}),e.workUnits}function To(e){let t=Q(e),n=()=>e.refreshScoops?.(),r=()=>(e.refs.thread.getAttribute(`context`)??``).startsWith(`freezer:`),a=()=>{if(e.getSelected()||r())return;let n=t.currentUnits(),i=e.pendingUrlContext;if(i?.startsWith(`freezer:`))return;if(i?.startsWith(`scoop:`)||i?.startsWith(`cone:`)){let t=Fn(n,i);if(t){e.pendingUrlContext=null,e.selectScoop(t);return}}let a=Vn(n);a&&(e.pendingUrlContext=null,e.selectScoop(a))};return t.wrapCallbacks({onStatusChange:(t,r)=>{let i=e.statuses.get(t),a=r;e.statuses.set(t,a),i!==a&&e.notifyUnitStatus?.(t,a),a!==`ready`&&e.awaitingInput===t&&(e.awaitingInput=null),Z(i)===`working`&&Z(a)!==`working`&&e.turns.set(t,(e.turns.get(t)??0)+1),Z(i)!==Z(a)&&(n(),e.notifyScoopStateChanged?.()),e.getSelected()?.id===t&&e.getController()?.setProcessing(r===`processing`)},onScoopCreated:t=>{n(),!e.getSelected()&&!r()&&!e.pendingUrlContext&&e.selectScoop(lo(t,{fill:e.fills.get(t.jid),phase:e.phases.get(t.jid),status:e.statuses.get(t.jid)}))},onScoopListUpdate:t=>{let r=new Set(t.map(e=>e.jid));for(let t of e.lickBackpressure.keys())r.has(t)||e.lickBackpressure.delete(t);for(let t of e.turns.keys())r.has(t)||e.turns.delete(t);n(),a()},onScoopActivity:t=>{e.refs.switcher.setAttribute(`attention`,t)},onScoopPhaseChange:(t,r)=>{e.phases.set(t,r),n(),e.notifyScoopStateChanged?.()},onIncomingMessage:(t,n)=>{e.refs.switcher.setAttribute(`attention`,t),e.lastActivity.set(t,i(String(n.content??``),600)),e.getSelected()?.id===t&&n.channel!==`web`&&Jt(n.channel)&&e.getController()?.addLickMessage(n.id,n.content,n.channel,new Date(n.timestamp).getTime(),n.lickId)},onLickBackpressure:(t,n)=>{n.count<=0?e.lickBackpressure.delete(t):e.lickBackpressure.set(t,n);let r=e.getSelected();if(r?.id!==t)return;let i=Un(r);e.getController()?.setLickBackpressure(n.count,n.waitingMs,i)},onMessageUpdate:(t,n)=>{e.getSelected()?.id===t&&n.lickId&&n.lickState&&e.getController()?.updateLickState(n.lickId,n.lickState)},onReady:()=>{n(),a(),e.notifyReady?.()}})}var Eo=`slicc:leader-local-model-state-changed`;function Do(e=window){e.dispatchEvent(new Event(Eo))}var Oo=`slicc:leader-model-catalog-changed`;function ko(e=window){e.dispatchEvent(new Event(Oo))}var Ao={off:`off`,low:`low`,medium:`medium`,high:`high`,xhigh:`xhigh`,max:`xhigh`},jo={off:`off`,minimal:`low`,low:`low`,medium:`medium`,high:`high`,xhigh:`xhigh`};function Mo(e){return e?Ao[e]:void 0}function No(e){return e===`max`?`max`:void 0}function Po(e,t){return t===`max`?`max`:(e&&jo[e])??`off`}var Fo=2e3,Io=1e4,Lo=12e4;function Ro(e){let t=[],n=null,r=new Map,i=e.modelPickerEnabled!==!1,a=e.catalogRetryDelayMs??Fo,o=e.catalogRetryMaxDelayMs??Io,s=e.catalogRetryWindowMs??Lo,c=0,l=null,u=null,d=()=>{if(!i||u!==null)return;let t=Date.now();if(l===null&&(l=t+s),t>=l)return;let n=Ue({attempt:c,baseMs:a,capMs:o});u=setTimeout(()=>{u=null;let t=e.getSync();t?.requestModels&&(c+=1,t.requestModels())},n)},f=()=>{u!==null&&clearTimeout(u),u=null,c=0,l=null},p=e=>{if(e.length===0)return;let t=new Set(e.map(e=>e.id));for(let e of r.keys())t.has(e)||r.delete(e)},m=()=>{let t=e.getSelectedScoopJid(),i=e.getUnits();if(p(i),n&&(i.length===0||!t))return n.activeModelId;if(n&&t&&n.scoopJid===t){let e=le(n.activeModelId);return e&&r.set(t,e),n.activeModelId}let a=Ln(i,t,t?r.get(t):void 0);return t&&a&&r.set(t,a),a?be(a):void 0},h=()=>{let r=m(),a=r?t.find(e=>e.modelId===r):void 0;if(!i||!n||!a){e.composerMeta.style.display=`none`,d();return}e.composerMeta.model=a.modelName,e.composerMeta.setAttribute(`thinking`,Po(n.thinkingLevel,n.effortOverride)),e.composerMeta.toggleAttribute(`no-thinking`,!a.reasoning),e.composerMeta.style.removeProperty(`display`),f()},g=t=>{e.interceptLocalHandlers&&t.stopImmediatePropagation()},_=t=>{let i=e.getSync();if(!i)return;g(t);let a=t.detail?.id,o=e.getSelectedScoopJid()??n?.scoopJid,s=a?le(a):null;s&&o?(r.set(o,s),e.setModel(o,s)):a&&i.selectModel(a,o??void 0),h()};e.composerMeta.addEventListener(`model-change`,_,{capture:e.interceptLocalHandlers});let v=t=>{let r=e.getSync();if(!r)return;if(g(t),e.getLockedEffortLevel?.()){h();return}let i=t.detail?.thinking,a=Mo(i),o=e.getSelectedScoopJid()??n?.scoopJid;o&&a&&a!==`max`&&r.setThinkingLevel(o,a,No(i)),h()};e.composerMeta.addEventListener(`thinking-change`,v,{capture:e.interceptLocalHandlers});let y=()=>{t=[],n=null,r.clear(),f(),e.composerMeta.models=[],e.composerMeta.style.display=`none`};return y(),{onModelsList(n){t=n,e.composerMeta.models=n.map(e=>({id:e.modelId,name:e.modelName,provider:e.providerName})),h()},onModelState(e){n=e,h()},onShownUnitChanged(){h()},reset:y,dispose(){e.composerMeta.removeEventListener(`model-change`,_,{capture:e.interceptLocalHandlers}),e.composerMeta.removeEventListener(`thinking-change`,v,{capture:e.interceptLocalHandlers}),y(),e.composerMeta.style.removeProperty(`display`)}}}async function zo(e,t,n,r,i=Do){let a=await e.setScoopThinkingLevel(t,n,r);return a&&i(),a}function Bo(e,t){return zn(e)===null||new URL(t.location.href).searchParams.get(`cherry`)===`1`||Ve(t.localStorage)}async function Vo(e,t,n,r,i){let a=In(t),o=Wn(a);e.thread.setAttribute(`context`,Gn(t));let c=Rn(t),l=Ze({isRoot:c,name:t.name});e.thread.setAttribute(`accent`,l),e.switcher.setAttribute(`active`,t.id),gt(e,c?{kind:`cone`}:{kind:`scoop`,accent:l}),pt(e,o);let u=localStorage.getItem(`slicc_locked_effort_level`),d=r?.(t.id);if(d||u){let t=d?fe(d):{};e.composerMeta.setAttribute(`thinking`,Po(u??t.level,t.effortOverride))}if(!i?.skipModelPill)try{let{resolveCurrentModel:r,resolveModelById:i}=await s(async()=>{let{resolveCurrentModel:e,resolveModelById:t}=await import(`./main-CiBxDanA.js`).then(e=>e.t);return{resolveCurrentModel:e,resolveModelById:t}},__vite__mapDeps([48,5,1,12,13,14,15,16,17,18,3,19,20,21,22,40,24,23,25,26,27,28,29,42,49,50])),a=Ln(n,t.id),o=a?i(a.id,a.provider):r();e.composerMeta.setAttribute(`model`,o.name??o.id),e.composerMeta.toggleAttribute(`no-thinking`,o.reasoning!==!0||!!u)}catch{}}async function Ho(e){if(Bo(e.pendingUrlContext,e.win))return;let t=zn(e.pendingUrlContext);if(t===null)return;let[{CanonicalSessionReader:n},{WorkUnitConversationStore:r}]=await Promise.all([s(()=>import(`./sessions-C9JcENTo.js`).then(e=>e.n),__vite__mapDeps([51,5,13,33,34,26,1,52])),s(()=>import(`./store-DP4F8FwF.js`).then(e=>e.n),__vite__mapDeps([53,5,1,12,13,14,15,16,17,18,3,19,20,21,22,52,54,45]))]),i=await new n(new r).loadRootChatSession(t);i&&i.messages.length>0&&!e.hasSelection()&&(e.loadMessages(i.messages),e.onHydrated())}function Uo(e){let{boot:t,client:n,openReader:r,log:i}=e,{refs:a}=t;s(async()=>{let{createPlaceholderRefresher:e}=await import(`./wc-placeholder-BJZNCWC7.js`);return{createPlaceholderRefresher:e}},__vite__mapDeps([55,12,5,1,13,14,15,16,17,18,3,19,20,21,22,37])).then(({createPlaceholderRefresher:n})=>{e.setRefreshPlaceholder(n({inputCard:a.inputCard,getMessages:()=>t.getController()?.getMessages()??[],defaultPlaceholder:a.inputCard.getAttribute(`placeholder`)??`Ask sliccy, or describe a change…`}))}),Ho({pendingUrlContext:t.wiring.pendingUrlContext,win:window,hasSelection:()=>!!t.getSelected(),loadMessages:e=>t.getController()?.loadMessages(e),onHydrated:e.triggerPlaceholder}).catch(e=>i.warn(`WC session hydration failed`,e));let o=null;return s(async()=>{let{wireWcAttach:e}=await import(`./wc-attach-DV4k0eaX.js`);return{wireWcAttach:e}},__vite__mapDeps([56,13,18,57])).then(({wireWcAttach:t})=>{o=t({inputCard:a.inputCard,freezer:a.freezer,composer:a.composer,openReader:r,openWriter:e.openWriter,secretEntry:!0,listConversations:async()=>{let{readSessionsIndex:e}=await s(async()=>{let{readSessionsIndex:e}=await Promise.resolve().then(()=>Kr);return{readSessionsIndex:e}},void 0);return(await e(await r())).map(e=>({id:e.filename,label:e.title,sub:`${e.messageCount} turns`}))},log:i})}).catch(e=>i.error(`WC add-menu wiring failed`,e)),s(async()=>{let{wireWcHistoryNav:e}=await import(`./wc-history-nav-C5w8ianG.js`);return{wireWcHistoryNav:e}},[]).then(({wireWcHistoryNav:e})=>e({thread:a.thread,inputCard:a.inputCard})).catch(e=>i.error(`WC history nav wiring failed`,e)),a.composerMeta.addEventListener(`thinking-change`,e=>{if(localStorage.getItem(`slicc_locked_effort_level`))return;let r=e.detail?.thinking,a=Mo(r),o=No(r),s=t.getSelected();s&&a&&zo(n,s.id,a,o).catch(e=>i.warn(`local thinking update failed`,e))}),{getAttachStage:()=>o}}var Wo=`slicc:leader-run-new-session`,Go=`slicc:leader-broadcast-snapshot`;function Ko(e){if(e.cone&&e.cone!==`cone`)return e.coneLabel||e.cone.replace(/^cone-/,``)}function qo(e){let t=`${new Date(e.frozenAt).toLocaleDateString(void 0,{month:`short`,day:`numeric`})} · ${e.messageCount} turns`;return e.live?`${t} · in progress`:t}function Jo(e,t={}){let n=document.createElement(`slicc-freezer-card`);return n.setAttribute(`title`,e.title),n.setAttribute(`meta`,qo(e)),n.setAttribute(`slug`,e.filename),e.icon&&n.setAttribute(`icon`,e.icon),t.deletable&&!e.live&&n.setAttribute(`deletable`,``),n}async function Yo(e){let t=new Map;for(let n of e.entries){if(n.icon||n.pendingEnrichment)continue;let r=await e.pickIcon(`"${n.title}" — an archived chat session`);r&&t.set(n.filename,r)}if(t.size!==0&&await M(async()=>{let n=await Xo(e.reader);if(n===null||n.length===0)return!1;let r=n.map(e=>{let n=!e.icon&&t.has(e.filename)?t.get(e.filename):void 0;return n?{...e,icon:n}:e});return await e.writer.writeFile(`/sessions/index.json`,JSON.stringify(r,null,2)),!0}))for(let n of e.freezer.querySelectorAll(`slicc-freezer-card`)){let e=t.get(n.getAttribute(`slug`)??``);e&&!n.hasAttribute(`icon`)&&n.setAttribute(`icon`,e)}}async function Xo(e){let t=await Zo(e);return t.kind===`ok`?t.entries:t.kind===`missing`?[]:null}async function Zo(e){let t;try{let n=await e.readFile(k,{encoding:`utf-8`});t=typeof n==`string`?n:new TextDecoder().decode(n)}catch(e){return e?.code===`ENOENT`?{kind:`missing`}:{kind:`fault`}}try{let e=JSON.parse(t);return Array.isArray(e)?{kind:`ok`,entries:e}:{kind:`corrupt`}}catch{return{kind:`corrupt`}}}async function Qo(e){let t;try{t=(await e.readDir(`/sessions`)).filter(e=>e.type===`file`&&e.name.endsWith(`.md`)).map(e=>e.name)}catch{return[]}let n=[];for(let r of t)try{let t=await e.readFile(`/sessions/${r}`,{encoding:`utf-8`}),i=typeof t==`string`?t:new TextDecoder().decode(t);n.push(es(r,i))}catch{}return n.sort((e,t)=>t.frozenAt.localeCompare(e.frozenAt)),n}function $o(e,t){return M(async()=>{let n=await Zo(e);if(n.kind===`ok`)return n.entries;if(n.kind!==`corrupt`)return null;let r=await Qo(e);return r.length===0?null:(await t.writeFile(k,JSON.stringify(r,null,2)),r)})}function es(e,t){let n=t.slice(0,2e3),r=/^title:\s*"?(.*?)"?\s*$/m.exec(n)?.[1]??e,i=/^frozenAt:\s*"?(.*?)"?\s*$/m.exec(n)?.[1]??new Date(0).toISOString(),a=Number(/^messageCount:\s*(\d+)\s*$/m.exec(n)?.[1]??0),o=Se(t),s=e.startsWith(`pending-`)||e.startsWith(`live-`)&&!o.live;return{filename:e,title:r,frozenAt:i,messageCount:a,...o.cost?{cost:o.cost}:{},...o.models?{models:o.models}:{},...o.cone?{cone:o.cone}:{},...o.coneLabel?{coneLabel:o.coneLabel}:{},...o.memorySkipped?{memorySkipped:!0}:{},...o.live?{live:!0}:{},...o.live&&o.liveThrough?{liveThrough:o.liveThrough}:{},...o.live&&o.compactions?{compactions:o.compactions}:{},...o.curatedThrough?{curatedThrough:o.curatedThrough}:{},...o.sessionId?{sessionId:o.sessionId}:{},...s?{pendingEnrichment:!0}:{}}}function ts(e,t,n={}){for(let t of Array.from(e.querySelectorAll(`slicc-freezer-card`)))t.remove();e.append(...t.map(e=>Jo(e,n)))}async function ns(e,t){let n=await e.readFile(ye(t),{encoding:`utf-8`}),r=typeof n==`string`?n:new TextDecoder().decode(n),i=await pn(e,r,t.filename);return{title:i.title||t.title,messages:i.messages}}var rs=`Couldn't delete everything — try again.`;function is(e,t){let n=e.createElement(`p`);return n.textContent=`“${t}” and its transcript will be deleted. Memories already learned from it are kept.`,n.style.cssText=`font-size:0.875rem;margin:0;`,n}function as(e){let t=e.parentElement?.querySelector(`[data-freezer-delete-error]`);t||(t=e.ownerDocument.createElement(`p`),t.setAttribute(`data-freezer-delete-error`,``),t.setAttribute(`role`,`alert`),t.style.cssText=`font-size:0.8125rem;margin:0.5rem 0 0;color:var(--s2-negative-color, #d23);`,e.after(t)),t.textContent=rs}function os(e,t){let n=e.ownerDocument;n.activeElement&&n.activeElement!==n.body||Array.from(e.querySelectorAll(`slicc-freezer-card`)).find(e=>e.getAttribute(`slug`)===t)?.querySelector(`.slicc-fzcard__delete`)?.focus()}function ss(e){return e.sessionId?{filename:e.filename,sessionId:e.sessionId}:{filename:e.filename}}function cs(e){let t=e.freezer.ownerDocument,n=null,r=new Set,i=()=>{if(!n)return;let{slug:t,dialog:r}=n;n=null,r.hide?.(),r.remove(),os(e.freezer,t)},a=async(t,a,o)=>{let c=Array.from(a.querySelectorAll(`button[slot="footer"]`));for(let e of c)e.disabled=!0;r.add(t.filename);try{let{writer:r}=await e.openVfs(),{deleteFrozenSession:o}=await s(async()=>{let{deleteFrozenSession:e}=await import(`./frozen-session-delete-DVH5vOJB.js`);return{deleteFrozenSession:e}},__vite__mapDeps([58,1,33,5,34,26,36,37,35,59,32,60,13,41,61,12,14,15,16,17,18,3,19,20,21,22,23,24,25,27,28,29,62,38,39,40,42,43,44,31,45,46,47,63])),c=await o(r,ss(t));if(c.status===`failed`)throw Error(c.errors.join(`; `));c.status===`deleted`?e.isViewing(t)&&e.leaveViewed(t):e.log.warn(`WC frozen chat delete skipped`,{filename:t.filename,...c}),n?.dialog===a&&i(),e.refreshFreezer()}catch(t){e.log.error(`WC frozen chat delete failed`,t),as(o);for(let e of c)e.disabled=!1}finally{r.delete(t.filename)}},o=o=>{if(n?.slug===o||r.has(o))return;let s=e.getEntries().find(e=>e.filename===o);if(!s||s.live)return;i();let c=is(t,s.title),l=vo(t,{heading:`Delete frozen chat?`,body:c,actions:[{text:`Delete`,style:ho,data:`delete`,onClick:()=>void a(s,l,c)},{text:`Cancel`,style:go,data:`cancel`,onClick:i}],onDismiss:t=>{n?.dialog===t&&(n=null),t.remove(),os(e.freezer,o)}});n={slug:o,dialog:l},t.body.append(l),l.show?.()};return e.freezer.addEventListener(`freezer-card-delete`,e=>{let t=e.detail?.slug;t&&o(t)}),{dialog:()=>n?.dialog??null}}async function ls(e,t,n){let{getTranscriptExportService:r}=await s(async()=>{let{getTranscriptExportService:e}=await Promise.resolve().then(()=>Kn);return{getTranscriptExportService:e}},void 0);await r().captureFrozen({sessionId:t.sessionId??t.archive.sessionId??t.filename.replace(/\.md$/i,``),title:t.archive.title,frozenAt:t.archive.frozenAt,createdAt:t.archive.createdAt,updatedAt:t.archive.updatedAt,...e?{rootJid:e.jid}:{}},n)}function us(e,t){if(t)return e.getScoops().find(e=>e.jid===t.id)}function ds(e){return{folder:e.folder,label:Bn({assistantLabel:e.assistantLabel,name:e.name,role:E(e)?`primary`:`child`}),jid:e.jid}}async function fs(e){let{root:t}=e,n=t?ds(t):void 0,r=(e,n)=>ls(t,e,n),i=t=>{try{e.client.reloadSkills()}catch(t){e.log.warn(`post-settle prompt reload failed`,t)}s(async()=>{let{notifyGelatiereOfSessionEnd:e}=await import(`./wc-gelatiere-C2fCHIZa.js`);return{notifyGelatiereOfSessionEnd:e}},__vite__mapDeps([64,16,38,5,1,13,37,39,18,40,23,12,14,15,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47])).then(({notifyGelatiereOfSessionEnd:r})=>r({client:e.client,vfs:e.writer,log:e.log,cone:n,archive:t?.filename})).catch(t=>e.log.warn(`gelatiere notification failed to load`,t))};if(e.action!==`save`){await e.runNewSessionFreezeQuick({vfs:e.writer,cone:n,captureCompleteSnapshot:r,onSessionSettled:i});return}await e.runNewSessionFreeze({vfs:e.writer,cone:n,agenticMemorySpawn:t=>e.client.spawnAgent(t),captureCompleteSnapshot:r,onSessionSettled:i,onProgress:t=>{let n=e.freezerNew();n&&(t===null?n.removeAttribute(`progress`):n.setAttribute(`progress`,String(t)))},onBackgroundEnriched:e.refreshFreezer})}async function ps(e,t){e!==`erase`&&await fs({...t,action:e})}async function ms(e){try{await e.resetNewSessionTmp(e.writer,e.tmpDir)}catch(t){e.log.warn(`WC new session /tmp reset failed — clearing anyway`,t)}await e.client.clearAllMessages(e.root?.jid,e.discardLiveSnapshot?{discardLiveSnapshot:!0}:{}),e.getController()?.loadMessages([]),window.dispatchEvent(new CustomEvent(Go)),s(async()=>{let{resetDictationPriming:e}=await import(`./dictation-priming-BHJC0hch.js`).then(e=>e.r);return{resetDictationPriming:e}},__vite__mapDeps([37,5])).then(({resetDictationPriming:e})=>e()).catch(()=>void 0)}function hs(e,t){(e.thread.inner??e.thread).prepend(gs(e.thread.ownerDocument,t)),e.thread.setAttribute(`accent`,_t),gt(e,{kind:`freezer`}),e.inputCard.setAttribute(`disabled`,``),e.switcher.removeAttribute(`active`)}function gs(e,t){let n=t?Ko(t):void 0,r=e.createElement(`slicc-day-separator`);return r.setAttribute(`label`,n?`Frozen chat · from cone ${n}`:`Frozen chat`),r.setAttribute(`data-frozen-provenance`,n??``),r}async function _s(e,t,n){let r=await Xo(e);return r===null?(await Zo(e)).kind===`corrupt`?(n.warn(`WC freezer index corrupt — rebuilding from archives`),$o(e,t)):null:r}function vs(e,t,n){!e.busy&&n.some(e=>!e.icon&&!e.pendingEnrichment)&&(e.busy=!0,s(async()=>{let{pickLucideIcon:e}=await import(`./quick-llm-CGD6yIFK.js`).then(e=>e.n);return{pickLucideIcon:e}},__vite__mapDeps([11,5,1,12,13,14,15,16,17,18,3,19,20,21,22,23,24,25,26,27,28,29,30,31])).then(({pickLucideIcon:e})=>Yo({reader:t.reader,writer:t.writer,freezer:t.freezer,entries:n,pickIcon:t=>e({subject:t})})).catch(e=>t.log.warn(`WC freezer icon enrichment failed`,e)).finally(()=>{e.busy=!1}))}function ys(e,t,n){let r=e.getAttribute(`context`)??``;return r===`freezer:${t.filename}`||r.startsWith(`freezer:`)&&!!t.sessionId&&!dn(t.sessionId)&&n===t.sessionId}function bs(e){let{refs:t,openVfs:n,client:r,getController:i,getSelected:a,clearSelection:o,log:c}=e,l=[],u=null,f=t=>{u=null,e.selectScoop(t)},p=0,m={busy:!1},h=()=>{let e=++p;n().then(async({reader:n,writer:r})=>{let i=await _s(n,r,c);i!==null&&e===p&&(l=i,ts(t.freezer,i,{deletable:!0}),vs(m,{reader:n,writer:r,freezer:t.freezer,log:c},i))}).catch(e=>c.error(`WC freezer refresh failed`,e))},g=!1,_=()=>t.freezer.querySelector(`slicc-freezer-new`),v=t=>{g||(g=!0,_()?.setAttribute(`busy`,``),(async()=>{let o=us(r,Hn(e.getUnits(),a()));try{let{writer:a}=await n(),{resetNewSessionTmp:l,runNewSessionFreeze:u,runNewSessionFreezeQuick:d}=await s(async()=>{let{resetNewSessionTmp:e,runNewSessionFreeze:t,runNewSessionFreezeQuick:n}=await import(`./new-session-BHywxROi.js`);return{resetNewSessionTmp:e,runNewSessionFreeze:t,runNewSessionFreezeQuick:n}},__vite__mapDeps([65,1,13,16,23,12,5,14,15,17,18,3,19,20,21,22,24,25,26,27,28,29,48,40,42,49,50,30,51,33,34,52,53,54,45,58,36,37,35,59,32,60,41,61,62,38,39,43,44,31,46,47,63]));await ps(t,{writer:a,root:o,client:r,freezerNew:_,refreshFreezer:h,runNewSessionFreeze:u,runNewSessionFreezeQuick:d,log:c}),await ms({writer:a,root:o,client:r,getController:i,log:c,resetNewSessionTmp:l,tmpDir:he(r.getScoops(),o),discardLiveSnapshot:t===`erase`}),h();let p=e.getUnits().find(e=>e.id===o?.jid)??Vn(e.getUnits());p&&f(p)}catch(e){c.error(`WC new session failed`,e)}finally{g=!1;let e=_();e?.removeAttribute(`busy`),e?.removeAttribute(`progress`)}})())};for(let e of[`save`,`skip`,`erase`])t.freezer.addEventListener(`new-chat-${e}`,()=>v(e));let y=async e=>{let{writer:t}=await n(),{runNewSessionArchiveOnly:r}=await s(async()=>{let{runNewSessionArchiveOnly:e}=await import(`./new-session-BHywxROi.js`);return{runNewSessionArchiveOnly:e}},__vite__mapDeps([65,1,13,16,23,12,5,14,15,17,18,3,19,20,21,22,24,25,26,27,28,29,48,40,42,49,50,30,51,33,34,52,53,54,45,58,36,37,35,59,32,60,41,61,62,38,39,43,44,31,46,47,63]));await r({vfs:t,cone:ds(e),captureCompleteSnapshot:(t,n)=>ls(e,t,n)}),h()};d(`agentic-memory`)&&_()?.setAttribute(`no-skip`,``),window.addEventListener(Wo,e=>{let t=e.detail?.action;(t===`save`||t===`skip`||t===`erase`)&&v(t)});let b=async r=>{let s=l.find(e=>e.filename===r);try{let{reader:a}=await n();s||=(await Xo(a)??[]).find(e=>e.filename===r);let{messages:c}=await ns(a,s??{filename:r,title:r,frozenAt:``,messageCount:0});t.thread.setAttribute(`context`,`freezer:${s?.filename??r}`),u=s?.sessionId??s?.filename??null,e.holdQueuedPile(),i()?.loadMessages(c),hs(t,s),o()}catch(t){if(c.error(`WC thaw failed`,t),!a()){let t=Pn(e.getUnits(),s?.cone);t&&f(t)}}};return t.freezer.addEventListener(`freezer-card-select`,e=>{let t=e.detail?.slug;t&&b(t)}),cs({freezer:t.freezer,openVfs:n,getEntries:()=>l,isViewing:e=>ys(t.thread,e,u),leaveViewed:t=>{i()?.loadMessages([]),u=null;let n=Pn(e.getUnits(),t.cone);n&&f(n)},refreshFreezer:h,log:c}),{refreshFreezer:h,openFrozen:b,getViewedFrozenSessionId:()=>u,freezeCone:y}}t(`scoops.tray-leave`),t(`scoops.tray-join`);var xs=null;function Ss(e){xs=e}function Cs(){return xs?.()??[]}var ws=null;function Ts(e){ws=e}function Es(){return ws??void 0}var Ds=`slicc.leaderTrayFollowers`;function Os(){return ks()}function ks(){if(xs)return xs();try{let e=globalThis.localStorage?.getItem(Ds);if(e)return JSON.parse(e)}catch{}return[]}function As(e,t=globalThis.localStorage){try{t?.setItem(Ds,JSON.stringify(e))}catch{}}function js(e){try{let t=JSON.parse(e);return{processes:(t.processes??[]).filter(e=>e.status===`running`||e.status===`pending`).map(e=>({pid:Number(e.pid??0),argv:String(e.argv??``),status:String(e.status??`unknown`)})),terminated:Number(t.stats?.terminated??0)}}catch{return{processes:[],terminated:0}}}function Ms(e){let t=Le();if(t.state!==`inactive`)return{role:`follower`,state:t.state,joinUrl:t.joinUrl,sessionId:t.trayId,workerBaseUrl:Ke(t.joinUrl)?.workerBaseUrl??null,stalled:t.stalled};let n=Zt();if(n.state!==`inactive`)return{role:`leader`,state:n.state,joinUrl:n.session?.joinUrl,sessionId:n.session?.trayId,workerBaseUrl:n.session?.workerBaseUrl};let r=null;try{r=ze(e.getItem(Re))}catch{}return{role:`standalone`,state:`inactive`,workerBaseUrl:r}}function Ns(e){let{client:t,openReader:n,storage:r}=e;return{getScoops:()=>t.getScoops(),isProcessing:e=>t.isProcessing(e),getCronTasks:async()=>{let{getAllCronTasks:e}=await s(async()=>{let{getAllCronTasks:e}=await import(`./db-CIXZItfi.js`).then(e=>e.n);return{getAllCronTasks:e}},__vite__mapDeps([66,5]));return e()},getWebhooks:async()=>{let{getAllWebhooks:e}=await s(async()=>{let{getAllWebhooks:e}=await import(`./db-CIXZItfi.js`).then(e=>e.n);return{getAllWebhooks:e}},__vite__mapDeps([66,5]));return e()},getMounts:async()=>{let{getAllMountEntries:e,loadMountHandle:t}=await s(async()=>{let{getAllMountEntries:e,loadMountHandle:t}=await import(`./mount-table-store-dY2IfQ5S.js`).then(e=>e.r);return{getAllMountEntries:e,loadMountHandle:t}},__vite__mapDeps([67,5])),n=await e();return Promise.all(n.map(async e=>{if(e.descriptor.kind!==`local`)return e;try{let n=await(await t(e.descriptor.idbHandleKey))?.queryPermission?.({mode:`readwrite`});return{...e,valid:n===`granted`}}catch{return{...e,valid:!1}}}))},getMcpServers:async()=>{try{let e=await(await n()).readFile(`/workspace/.mcp/servers.json`,{encoding:`utf-8`});return JSON.parse(typeof e==`string`?e:new TextDecoder().decode(e)).servers??{}}catch{return{}}},getOAuthProviders:()=>{try{let e=new Set,t=[];for(let n of re()){if(e.has(n.providerId))continue;if(e.add(n.providerId),!te(n.providerId)?.isOAuth){t.push({providerId:n.providerId});continue}let r=C(n.providerId),i=n.loggedOut?!1:r?!r.expired:!1;t.push({providerId:n.providerId,valid:i})}return t}catch{return[]}},getSessionStats:async()=>t.getSessionStats?.()??null,getProcesses:async()=>{try{let e=await(await n()).readFile(`/proc/table`,{encoding:`utf-8`});return js(typeof e==`string`?e:new TextDecoder().decode(e))}catch{return{processes:[],terminated:0}}},getTrayInfo:()=>Ms(r),getConnectedFollowers:Cs}}var Ps=`sync-fs-nonce`;function Fs(e={}){let t=e.navigator??(typeof navigator<`u`?navigator:void 0),n=e.document??(typeof document<`u`?document:void 0),r=e.window??(typeof window<`u`?window:void 0),i=e.randomUUID??(()=>crypto.randomUUID()),a=!!t?.serviceWorker?.controller,o=a?i():void 0;if(!o||!t?.serviceWorker)return{syncFsBridgeEnabled:a,syncFsChannelNonce:o};let s=t.serviceWorker,c={type:Ps,nonce:o},l=()=>s.controller?.postMessage(c);return l(),s.addEventListener(`controllerchange`,l),s.addEventListener(`message`,e=>{e.data?.type===`sync-fs-need-nonce`&&l()}),n?.addEventListener(`visibilitychange`,()=>{n.visibilityState===`visible`&&l()}),r?.addEventListener(`focus`,l),{syncFsBridgeEnabled:a,syncFsChannelNonce:o}}var Is=class{#e=new Map;#t=new Map;#n=new Map;sync(e,t){let n=new Set;for(let r of e){if(!Rn(r))continue;n.add(r.id);let e=this.#r(r);e>0&&r.id!==t&&this.#e.set(r.id,(this.#e.get(r.id)??0)+e)}t&&this.#e.delete(t);for(let e of[...this.#e.keys()])n.has(e)||this.#e.delete(e);for(let e of[...this.#t.keys()])n.has(e)||this.#t.delete(e);for(let e of[...this.#n.keys()])n.has(e)||this.#n.delete(e);return this.counts()}#r(e){let t=this.#t.get(e.id),n=this.#t.has(e.id);if(this.#t.set(e.id,e.state),typeof e.turns==`number`&&Number.isFinite(e.turns)){let t=this.#n.get(e.id)??(n?0:void 0);return this.#n.set(e.id,e.turns),t===void 0?0:e.turns>t?Math.floor(e.turns-t):0}return this.#n.delete(e.id),n&&t===`working`&&e.state!==`working`?1:0}counts(){return new Map(this.#e)}};function Ls(e,t){let n=e=>{t.onError?.(e instanceof Error?e.message:String(e))};return{sendMessage:(r,i,a,o)=>{let s=t.getSelectedId();if(!s){t.onError?.(`No scoop selected`);return}e.send(s,{text:r,...i?{messageId:i}:{},...a?{attachments:a}:{},...o?.steer?{steer:!0}:{},...o?.guestGate?{guestGate:o.guestGate}:{}}).catch(n)},onEvent:e=>t.onEvent(e),stop:()=>{let r=t.getSelectedId();r&&e.signal(r,`stop`).catch(n)}}}var Rs=`question`;function zs(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone||void 0}catch{return}}function Bs(e,t,n){let r=e=>{let r=e.detail;if(!r||typeof r.answer!=`string`)return;let{question:i,kind:a,answer:o}=r,s=a===`datetime`||a===`date`?zs():void 0;t(Rs,{action:`answer`,data:{question:i,kind:a,answer:o,...s?{timeZone:s}:{}}},void 0,n()??void 0)};return e.addEventListener(ft,r),()=>e.removeEventListener(ft,r)}var Vs=`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg>`;function Hs(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n.role===`assistant`&&!n.isStreaming&&!n.queued)return n.content}for(let t=e.length-1;t>=0;t--)if(e[t].role===`assistant`)return e[t].content;return null}function Us(e){let t=e.writeText??(e=>navigator.clipboard.writeText(e)),n=document.createElement(`div`);n.className=`wc-copy-row`,n.style.cssText=`display:flex;justify-content:flex-start;margin:-8px 0 14px;`;let r=document.createElement(`slicc-press-button`);r.setAttribute(`tooltip`,`Copy last response · hold to copy chat`),r.setAttribute(`label`,`Copy last response — hold to copy entire chat`),r.setAttribute(`disable-double-click`,``),r.style.cssText=`color:var(--txt-3);cursor:pointer;display:inline-flex;`;let i=document.createRange();r.append(i.createContextualFragment(Vs));let a=()=>{r.style.color=`var(--green)`,setTimeout(()=>{r.style.color=`var(--txt-3)`},1500)};return r.addEventListener(`short-click`,()=>{(async()=>{let n=Hs(e.getMessages());await t(n??an([...e.getMessages()])),a()})()}),r.addEventListener(`long-press`,()=>{(async()=>{let n=an([...e.getMessages()]);n&&(await t(n),a())})()}),n.append(r),n}function $(){return`msg-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}function Ws(e){try{let t=new DOMParser().parseFromString(e,`text/html`).querySelector(`.sprinkle-action-card__header`);if(t){t.querySelector(`.sprinkle-badge`)?.remove(),t.querySelector(`.sprinkle-action-card__meta`)?.remove();let e=t.textContent?.trim();if(e)return e}}catch{}return`Approval requested`}function Gs(e){return`
|
|
244
|
-
<div class="sprinkle-action-card">
|
|
245
|
-
<div class="sprinkle-action-card__header">${zt(Ws(e))} <span class="sprinkle-badge sprinkle-badge--informative">pending</span></div>
|
|
246
|
-
<div class="sprinkle-action-card__body">Waiting for approval on the leader…</div>
|
|
247
|
-
</div>
|
|
248
|
-
`}function Ks(e){let t={id:e.id,text:e.content};return e.attachments?.length&&(t.attachments=e.attachments.length),t}var qs=class e{#e;#t;#n;#r;#i;#a=null;#o;#s;#c;#l;#u;#d;#f;#p;#m;#h;#g;#_;#v;#y=[];#b=[];#x=null;#S=new Map;#C=null;#w=null;#T=``;#E=null;#D=null;#O=!1;#k=`thinking`;#A=0;#j=null;#M=new Set;#N=new Map;#P=new Map;#F=new Set;#I=!1;#L=null;constructor(e){this.#e=e.thread,this.#t=e.agent,this.#n=e.onProcessingChange,this.#r=e.onBusyPhaseChange,this.#i=e.onToolProgressChange,this.#o=e.onMessageRendered,this.#s=e.onMessageDisposed,this.#c=e.onTurnComplete,this.#l=e.resolveTelemetryContext,this.#u=e.onQueuedChange,this.#d=e.onLickBackpressureChange,this.#f=e.onQueuedCancel,this.#p=e.onToolUiAction,this.#m=e.readOnlyToolUi??!1,this.#h=e.agent.onEvent(e=>this.#J(e)),this.#v=e=>this.#ge(e),this.#e.addEventListener(`slicc-error-retry`,this.#v)}dispose(){this.#h(),this.#e.removeEventListener(`slicc-error-retry`,this.#v);for(let e of[...this.#N.keys()])this.#he(e);this.#P.clear(),this.#F.clear(),this.#me()}setReadOnly(e){if(this.#I!==e&&(this.#I=e,e))for(let e of[...this.#N.keys()])this.#he(e)}get readOnly(){return this.#I}get processing(){return this.#O}getMessages(){return this.#y.map(e=>({...e}))}setAgent(e){this.#h(),this.#t=e,this.#h=e.onEvent(e=>this.#J(e))}setOnLocalUserMessage(e){this.#g=e}setOnLocalProcessingChange(e){this.#_=e}addUserMessage(e,t,n){this.#ye({id:$(),role:`user`,content:e,timestamp:Date.now(),...n?{source:n}:{}})}getQueuedMessages(){return this.#b.map(Ks)}removeQueuedMessage(e){let t=this.#b.filter(t=>t.id!==e);t.length!==this.#b.length&&(this.#b=t,this.#B())}stashQueued(){let e=this.#L??[];this.#L=null;let t=this.#b;return t.length===0?e:(this.#b=[],this.#B(),[...e,...t])}restoreQueued(e){this.#L=e.length>0?[...e]:null}heldBackendPendingIds(e){if(!this.#L||!e?.length)return new Set;let t=new Set(e);return new Set(this.#L.filter(e=>t.has(e.id)).map(e=>e.id))}#R(e,t){if(!this.#L)return;let n=this.heldBackendPendingIds(t),r=new Set(e.map(e=>e.id)),i=this.#L.filter(e=>!r.has(e.id)||n.has(e.id));if(this.#L=null,i.length===0)return;if(!t){this.#b=i,this.#B();return}let a=new Map(t.map((e,t)=>[e,t])),o=i.filter(e=>a.has(e.id)).sort((e,t)=>(a.get(e.id)??0)-(a.get(t.id)??0)),s=i.filter(e=>!a.has(e.id));if(this.#b=this.#O?o:[...o,...s],this.#B(),this.#O)for(let e of s)this.#ye(e)}#z(){if(this.#b.length===0)return;let e=this.#b;this.#b=[];for(let t of e)this.#ye(t);this.#B()}#B(){this.#u?.(this.#b.map(Ks))}#V(){this.#d?.(this.#x)}setLickBackpressure(e,t,n){if(e<=0){if(!this.#x)return;this.#x=null,this.#V();return}this.#x={text:`${e} events waiting for the current turn`},this.#V();try{Oe(n,t)}catch{}}addAssistantMessage(e){this.#ye({id:$(),role:`assistant`,content:e,timestamp:Date.now()})}loadMessages(e,t){for(let e of this.#S.keys())this.#s?.(e);for(let e of[...this.#N.keys()])this.#he(e);this.#P.clear(),this.#F.clear(),this.#me();let n=this.#b.length>0;if(this.#b.length>0){if(this.#f)for(let e of this.#b)try{this.#f(e.id)}catch(e){console.error(`onQueuedCancel hook threw`,e)}this.#b=[]}n&&this.#B();let r=this.heldBackendPendingIds(t),i=r.size>0?e.filter(e=>!r.has(e.id)):e;this.#y=xt(i);let a=[...this.#y].reverse().find(e=>e.isStreaming);this.#C=a?.id??null,a&&(this.#w=a.id),this.#Q(),this.#S.clear();let o=[],s=``;for(let e of this.#y){let t=new Date(e.timestamp).toDateString();t!==s&&(o.push(it(e.timestamp)),s=t);let n=this.#ve(e);this.#S.set(e.id,n),o.push(...n)}let c=this.#e;typeof c.replaceContent==`function`?c.replaceContent(...o):c.replaceChildren(...o),this.#Ce();for(let e of this.#y)this.#o?.(e,this.#S.get(e.id)??[]);this.#q(),this.#Te(),this.#H(),this.#R(e,t)}#H(){if(this.#e.getAttribute(`context`)!==`cone`||this.#y.length===0||!We()||this.#O)return;let e=this.#y[this.#y.length-1];e.role!==`user`||e.source===`lick`||e.source===`delegation`||e.queued||this.#ge(new Event(`slicc-error-retry`))}sendUserMessage(e,t,n){let r=e.trim();if(!r&&!t?.length)return;let i=n?.dictation?this.#U(r):r,a={id:$(),role:`user`,content:i,timestamp:Date.now(),attachments:t?.length?t:void 0};this.#O&&!n?.steer?(this.#b.push(a),this.#B()):this.#ye(a),n?.steer?this.#t.sendMessage(i,a.id,a.attachments,{steer:!0}):this.#t.sendMessage(i,a.id,a.attachments),this.#W();try{let e=n?.dictation?c(i):i;this.#g?.(e,a.id,a.attachments)}catch(e){console.error(`onLocalUserMessage hook threw`,e)}}#U(e){return u(e,l())}#W(){if(this.#l)try{let e=this.#l();if(!e)return;je(e.scoopName,e.model)}catch{}}addLickMessage(e,t,n,r,i){let a=this.#y[this.#y.length-1];if(!(i||a?.lickId)&&a&&a.source===`lick`&&a.channel===n){a.lickParts=[...a.lickParts??[a.content],t],a.lickCount=a.lickParts.length,a.content+=`\n\n${t}`,this.#be(a);return}this.#ye({id:e,role:`user`,content:t,timestamp:r,source:`lick`,channel:n,lickId:i,lickState:i?`pending`:void 0,queued:this.#O?!0:void 0})}updateLickState(e,t){let n=this.#y.find(t=>t.lickId===e);n&&(n.lickState=t,this.#be(n))}setProcessing(e){if(this.#O!==e){this.#O=e,e&&(this.#w=null),e&&(this.#A=0,this.#G(`thinking`)),e&&this.#z(),e||(this.#x&&(this.#x=null,this.#V()),this.#q()),this.#n?.(e);try{this.#_?.(e)}catch(e){console.error(`onLocalProcessingChange hook threw`,e)}e||this.#K()}}#G(e){this.#k!==e&&(this.#k=e,this.#r?.(e))}#K(){let e=this.#w;if(this.#w=null,!this.#c)return;let t=e?this.#_e(e):null;this.#c(t?{...t}:null)}#q(){let e=this.#y[this.#y.length-1];if(e?.role!==`assistant`||e.isStreaming){this.#j?.remove();return}this.#j??=Us({getMessages:()=>this.getMessages()}),(this.#e.inner??this.#e).append(this.#j)}#J(e){switch(e.type){case`message_start`:this.#Y(e.messageId);break;case`content_delta`:this.#X(e.messageId,e.text);break;case`content_done`:this.#$(e.messageId,e.model,e.usage);break;case`tool_use_start`:this.#te(e.messageId,e.toolName,e.toolInput,e.toolCallId);break;case`tool_result`:this.#re(e.messageId,e.toolName,e.result,e.isError,e.toolCallId);break;case`tool_ui`:this.#le(e.messageId,e.requestId,e.html);break;case`tool_ui_done`:this.#ue(e.requestId);break;case`tool_progress`:this.#de(e.messageId,e.toolName,e.progress,e.toolCallId);break;case`turn_end`:this.#oe(e.messageId);break;case`compaction_notice`:this.#ie(e.messageId,e.marker);break;case`error`:this.#se(e.error,e.endTurn!==!1)}}#Y(e){this.setProcessing(!0),this.#C=e,this.#w=e,this.#ye({id:e,role:`assistant`,content:``,timestamp:Date.now(),isStreaming:!0,toolCalls:[]})}#X(e,t){this.#_e(e)&&(this.#E!==e&&this.#Z(),this.#E=e,this.#T+=t,this.#D??=requestAnimationFrame(()=>this.#Z()))}#Z(){let e=this.#E,t=this.#T;this.#Q();let n=t&&e?this.#_e(e):void 0;n&&(n.content+=t,this.#be(n))}#Q(){this.#D!==null&&cancelAnimationFrame(this.#D),this.#D=null,this.#T=``,this.#E=null}#$(e,t,n){let r=this.#_e(e);r&&(t&&(r.model=t),n&&(r.usage=n),this.#E===e&&(r.content+=this.#T,this.#Q()),r.isStreaming=!1,this.#be(r))}static#ee(e,t){return`${e}:${t}`}#te(t,n,r,i){let a=this.#_e(t);if(!a)return;a.toolCalls=a.toolCalls??[];let o=i?e.#ee(t,i):$();this.#F.add(o),a.toolCalls.push({id:o,name:n,input:r}),this.#A+=1,this.#G(`tool`),this.#be(a)}#ne(t,n,r){let i=t?.toolCalls??[];if(r){let n=t?e.#ee(t.id,r):void 0;return i.find(e=>e.id===n)??i.find(e=>e.id===r)}return[...i].reverse().find(e=>e.name===n&&e.result===void 0)}#re(e,t,n,r,i){let a=this.#_e(e),o=this.#ne(a,t,i);a&&o&&(o.result=n,o.isError=r,o.id&&(this.#P.delete(o.id),this.#me()),this.#A=Math.max(0,this.#A-1),this.#A===0&&this.#G(`thinking`),this.#be(a))}#ie(e,t){let n=this.#_e(e);if(t.state===`discarded`){n&&this.#ae(n);return}if(n){n.compaction=t,this.#be(n);return}this.#ye({id:e,role:`assistant`,content:``,timestamp:Date.now(),compaction:t})}#ae(e){this.#Se(),this.#s?.(e.id);for(let t of this.#S.get(e.id)??[])t.remove();this.#S.delete(e.id),this.#y=this.#y.filter(t=>t!==e),this.#Ce(),this.#pe()}#oe(e){let t=this.#_e(e);t?.isStreaming&&(t.isStreaming=!1,this.#be(t)),this.#C=null,this.setProcessing(!1)}#se(e,t=!0){t&&this.setProcessing(!1),this.#ye({id:$(),role:`assistant`,content:typeof e==`string`?e:Ae(e)??``,timestamp:Date.now(),error:!0}),this.#ce(e)}#ce(e){try{let t=typeof e==`string`?e:ke(e);if(typeof t==`string`&&Me(t))return;Ne(`error-card`,e)}catch{}}#le(e,t,n){if(this.#I)return;this.#he(t);let r=document.createElement(`div`);if(r.className=`msg__dip`,r.setAttribute(`data-tool-ui-request`,t),(this.#e.inner??this.#e).append(r),this.#m){let e=R(r,Gs(n),()=>{},!1);this.#N.set(t,{instance:e,container:r});return}let i=R(r,n,(e,n)=>{this.#p?.(t,e,n)},!1);this.#N.set(t,{instance:i,container:r}),this.#p?.(t,o,void 0)}#ue(e){this.#he(e)}#de(e,t,n,r){let i=this.#_e(e),a=this.#ne(i,t,r);a?.id&&(n.phase===`end`?this.#P.delete(a.id):this.#P.set(a.id,n),this.#fe(a.id),this.#me())}#fe(e){let t=this.#e.querySelector(`slicc-action-row[data-tool-id="${CSS.escape(e)}"]`);t&&st(t,this.#P.get(e)??null),this.#pe()}#pe(){let e=this.#e.querySelectorAll(`slicc-tool-cluster`);for(let t of e){let e=[...t.querySelectorAll(`slicc-action-row[data-tool-id]`)].filter(e=>e.dataset.toolId&&this.#F.has(e.dataset.toolId)).map(e=>{let t=e.dataset.toolId,n=e.getAttribute(`result`);return{done:n!==null&&n!==`…`,fraction:this.#P.get(t)?.fraction}});St(t,yt(e))}}#me(){let e=null,t=[...this.#P.values()];t.length>0&&t.every(e=>typeof e.fraction==`number`)&&(e=t.reduce((e,t)=>e+t.fraction,0)/t.length),e!==this.#a&&(this.#a=e,this.#i?.(e))}#he(e){let t=this.#N.get(e);if(t){this.#N.delete(e);try{t.instance.dispose()}catch{}t.container.remove()}}#ge(e){if(this.#O)return;let t=e.detail?.messageId??null,n=this.#y.length;if(t){let e=this.#y.findIndex(e=>e.id===t);e>=0&&(n=e)}let r=n>0?this.#y[n-1]:void 0;if(r&&r.source===`lick`&&!r.queued){this.#t.sendMessage(r.content,$(),r.attachments);return}let i;for(let e=n-1;e>=0;e--){let t=this.#y[e];if(t.role===`user`&&t.source!==`lick`&&t.source!==`delegation`&&!t.queued){i=t;break}}i&&this.#t.sendMessage(i.content,$(),i.attachments)}#_e(e){return this.#y.find(t=>t.id===e)}#ve(e){try{return Qe(e,{readOnly:this.#I})}catch(t){console.error(`[wc-chat] message render failed — degrading to plain bubble`,t);let n=document.createElement(e.role===`assistant`?`slicc-agent-message`:`slicc-user-message`);return n.setAttribute(`text`,String(e.content??``)),[n]}}#ye(e){this.#Se(),this.#y.push(e);let t=this.#ve(e);this.#S.set(e.id,t),this.#e.append(...t),this.#Ce(),this.#o?.(e,t),e.role===`user`?this.#Te():this.#Ee()}#be(e){this.#Se();let t=this.#S.get(e.id)??[],n=this.#ve(e),r=t[0]??null,i=r?.parentNode;if(i)for(let e of n)i.insertBefore(e,r);else this.#e.append(...n);this.#S.set(e.id,n),this.#o?.(e,n);for(let e of t)e.remove();for(let t of e.toolCalls??[])t.id&&this.#P.has(t.id)&&this.#fe(t.id);this.#Ce(),this.#pe(),this.#Ee()}#xe(){return this.#e.inner??this.#e}#Se(){at(this.#xe(),this.#M)}#Ce(){bt(this.#xe(),{openClusterAnchors:this.#M,toolCallLookup:(e,t)=>this.#we(e,t)})}#we(e,t){return this.#y.find(t=>t.id===e)?.toolCalls?.find(e=>e.id===t)}#Te(){this.#e.scrollTop=this.#e.scrollHeight}#Ee(){let e=this.#e;typeof e.requestFollow==`function`?e.requestFollow():this.#Te()}};function Js(e,t,n,r,i,a){let o=new Map;s(async()=>{let{loadDipStyles:e}=await import(`./legacy-styles-CGcVbQni.js`);return{loadDipStyles:e}},__vite__mapDeps([68,13])).then(({loadDipStyles:e})=>e()).catch(()=>void 0);let c=[];n.subscribeList(e=>{c=e});let l=()=>t.addressableUnitId?t.addressableUnitId():r()?.id??null,u=Ls(n,{getSelectedId:l,onError:e=>t.emitAgentError(e),onEvent:e=>t.onAgentEvent(e)});u.onEvent(t=>{(t.type===`tool_use_start`||t.type===`tool_result`)&&(t.type===`tool_result`&&t.isError&&e.switcher.glower(),s(async()=>{let{playCue:e}=await import(`./soundscape-BApfy-L6.js`);return{playCue:e}},__vite__mapDeps([69,1,38,5,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47])).then(({playCue:e})=>e(t.type===`tool_use_start`?`tool-start`:`tool-finish`)).catch(()=>void 0))});let d=new qs({thread:e.thread,agent:u,resolveTelemetryContext:()=>{let e=r();if(!e)return null;let t=Un(e);try{let n=Ln(c,e.id);return{scoopName:t,model:(n?w(n.id,n.provider):ne()).id}}catch{return{scoopName:t,model:``}}},onTurnComplete:e=>{t.speaksReplies&&s(async()=>{let{consumeVoiceSubmission:e,speakReplyMarkdown:t}=await import(`./voice-reply-CKIuZ9Dk.js`);return{consumeVoiceSubmission:e,speakReplyMarkdown:t}},__vite__mapDeps([70,1,37,5,71,13,3,72,73,17,18,38,39,40,23,12,14,15,16,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,74])).then(async({consumeVoiceSubmission:t,speakReplyMarkdown:n})=>{if(!t())return;let{endVoiceTurn:r,setTtsActive:i}=await s(async()=>{let{endVoiceTurn:e,setTtsActive:t}=await import(`./soundscape-BApfy-L6.js`);return{endVoiceTurn:e,setTtsActive:t}},__vite__mapDeps([69,1,38,5,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47]));try{if(e?.content){i(!0);try{await n(e.content)}finally{i(!1)}}}finally{r()}}).catch(()=>void 0)},onProcessingChange:t=>{e.frame.toggleAttribute(`data-processing`,t),e.inputCard.querySelector(`slicc-send-button`)?.toggleAttribute(`busy`,t),t||i?.()},onBusyPhaseChange:t=>{e.inputCard.querySelector(`slicc-send-button`)?.setAttribute(`phase`,t)},onToolProgressChange:t=>{let n=e.inputCard.querySelector(`slicc-send-button`);n&&(t===null?n.removeAttribute(`progress`):n.setAttribute(`progress`,t.toFixed(3)))},onMessageDisposed:e=>{let t=o.get(e);t&&(z(t),o.delete(e))},onMessageRendered:(e,n)=>{let r=o.get(e.id),i=n[0];if(!i){r&&z(r),o.delete(e.id);return}t.onMessageRendered?.(i);let s=l()??void 0;o.set(e.id,Lr(i,(e,n)=>{let r={type:`sprinkle`,sprinkleName:`inline`,timestamp:new Date().toISOString(),body:{action:e,data:n}};a?.intercept?.(r)||t.sendSprinkleLick(`inline`,{action:e,data:n},void 0,s)},{previous:r,streaming:e.isStreaming===!0}))},onQueuedChange:t=>e.queuedStack.setMessages(t),onLickBackpressureChange:t=>{e.lickBackpressureNotice.textContent=t?.text??``,e.lickBackpressureNotice.toggleAttribute(`hidden`,t===null)},onToolUiAction:(e,n,r)=>{t.sendToolUiAction(e,n,r)},onQueuedCancel:e=>{let n=r()?.id;n&&t.deleteQueuedMessage(n,e).catch(()=>void 0)},...t.readOnlyToolUi?{readOnlyToolUi:!0}:{}});return e.queuedStack.addEventListener(`slicc-queued-remove`,e=>{let n=e.detail?.id;if(!n)return;d.removeQueuedMessage(n);let i=r()?.id;i&&t.deleteQueuedMessage(i,n).catch(()=>void 0)}),Bs(e.thread,(e,n,r,i)=>t.sendSprinkleLick(e,n,r,i),l),{controller:d,agentHandle:u}}function Ys(e,t){let n=new Is,r=()=>{let r=t.currentUnits(),i=e.getSelected()?.id;e.refs.switcher.scoops=Nn(r,i,Ze,n.sync(r,i)),e.refreshConeActions?.()};return e.refreshScoops=r,t.subscribeList(()=>r()),r}function Xs(e,t,n){let{refs:r}=e;e.setChatTransport(t,n);let{controller:a,agentHandle:o}=Js(r,n,t,()=>e.getSelected(),n.onTurnIdle,n.welcome);e.setController(a);let c=Ys(e.wiring,t);return r.switcher.addEventListener(`slicc-scoop-select`,n=>{let r=n.detail?.key,i=t.currentUnits().find(e=>e.id===r);i&&i.id!==e.getSelected()?.id&&e.selectScoop(i)}),r.switcher.setAttribute(`gaze-target`,`slicc-input-card`),r.inputCard.addEventListener(`input`,()=>{r.switcher.scrutinize(),r.switcher.wake()}),r.inputCard.addEventListener(`submit`,t=>{let o=ht(t),c=n.takeAttachments?.();if(!o&&!c?.length)return;e.wiring.awaitingInput=null,e.wiring.refreshScoops?.(),e.wiring.notifyScoopStateChanged?.();let l=t.detail?.source===`dictation`;l&&n.speaksReplies&&(s(async()=>{let{markVoiceSubmission:e}=await import(`./voice-reply-CKIuZ9Dk.js`);return{markVoiceSubmission:e}},__vite__mapDeps([70,1,37,5,71,13,3,72,73,17,18,38,39,40,23,12,14,15,16,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,74])).then(({markVoiceSubmission:e})=>e()).catch(()=>void 0),s(async()=>{let{beginVoiceTurn:e,playCue:t}=await import(`./soundscape-BApfy-L6.js`);return{beginVoiceTurn:e,playCue:t}},__vite__mapDeps([69,1,38,5,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47])).then(({beginVoiceTurn:e,playCue:t})=>{e(),t(`sent`)}).catch(()=>void 0)),a.sendUserMessage(o??``,c,{dictation:l,steer:ot(t)}),r.inputCard.clear?.();let u=e.getSelected()?.id;u&&(r.switcher.setAttribute(`attention`,u),e.wiring.lastActivity.set(u,i(o??``,600)))}),r.inputCard.addEventListener(`stop`,()=>{e.getController()?.processing&&o.stop()}),{agentHandle:o,controller:a,publishStrip:c}}var Zs=e({floatKindForRuntimeMode:()=>ec,floatLabelForKind:()=>$s,resolveStandaloneFloatKind:()=>tc}),Qs={"slicc-server":`sliccstart`,"slicc-node-server":`npx`};function $s(e){return rt(e)}function ec(e){switch(e){case`extension`:case`extension-detached`:return`extension`;case`cherry`:return`cherry`;case`hosted-leader`:return`hosted`;case`electron-overlay`:return`electron`;case`follower`:return`standalone`;default:return`standalone`}}async function tc(e){let t=e?.fetchFn??fetch,n=e?.timeoutMs??1500;try{let e=new AbortController,r=setTimeout(()=>e.abort(),n),i=await t(se(`/api/status`),{cache:`no-store`,signal:e.signal,headers:ce()}).finally(()=>clearTimeout(r));if(await ie(i),!i.ok)return`standalone`;let a=await i.json();return(a.service?Qs[a.service]:void 0)??`standalone`}catch(e){if(ae(e))throw e;return`standalone`}}function nc(e,t){let n=t.label??$s(t.floatKind);e.setAttribute(`label`,n),e.setAttribute(`float-kind`,t.floatKind);let r=Zt(),i=Le(),a=()=>{let t=rc(r,i);e.setAttribute(`connection`,t.connection),t.trayRole===`none`?e.removeAttribute(`tray-role`):e.setAttribute(`tray-role`,t.trayRole)},o=Yt(e=>{r=e,a()}),s=Fe(e=>{i=e,a()});return a(),()=>{o(),s()}}function rc(e,t){return e.state===`inactive`?t.state===`inactive`?{connection:`offline`,trayRole:`none`}:{connection:ac(t),trayRole:`follower`}:{connection:ic(e),trayRole:`leader`}}function ic(e){switch(e.state){case`connecting`:return`connecting`;case`leader`:return`live`;case`reconnecting`:return`reconnecting`;case`error`:return`error`;default:return`offline`}}function ac(e){if(e.stalled)return`stalled`;switch(e.state){case`connecting`:return`connecting`;case`connected`:return`live`;case`reconnecting`:return`reconnecting`;case`error`:return`error`;default:return`offline`}}async function oc(e,t,n){let r=n.floatLabel??$s(n.floatKind),i=wl(e,r);nc(i.refs.floatbar,{floatKind:n.floatKind,label:r});let a=await n.connect(i),o=Xs(i,a.client,a.host);return await a.workbench?.(i,o),t.info(`WC shell mounted`,{floatKind:n.floatKind}),{boot:i,chat:o}}var sc=36e5,cc=2e3,lc=class{#e=[];#t;#n;constructor(e=sc,t=cc){this.#t=Math.max(1,Math.floor(e)),this.#n=Math.max(2,Math.floor(t))}get windowMs(){return this.#t}push(e){this.#e.push(e);let t=e.at-this.#t;for(;this.#e.length>0&&this.#e[0].at<t;)this.#e.shift();for(;this.#e.length>this.#n;)this.#e.shift()}get size(){return this.#e.length}series(e){if(!(this.#e.length<2))return{points:this.#e.map(t=>({at:t.at,value:t[e]})),windowMs:this.#t}}peak(e){return this.#e.length===0?null:this.#e.reduce((t,n)=>Math.max(t,n[e]),-1/0)}windowLabel(){if(this.#e.length<2)return null;let e=this.#e[this.#e.length-1].at-this.#e[0].at,t=Math.max(1,Math.round(e/1e3));if(t<90)return`last ${t}s`;let n=Math.round(t/60);return n<90?`last ${n}m`:`last ${Math.round(n/60)}h`}};function uc(e){return tt(e,et)}async function dc(e,t=_e.memoryPath){let n=``;try{let r=await e.readFile(t,{encoding:`utf-8`});n=typeof r==`string`?r:new TextDecoder().decode(r)}catch{n=``}return uc(n)}function fc(e){let t=e.filter(e=>e.health===`stalled`).length,n=e.filter(e=>e.health!==`stalled`&&e.peerState===`connecting`).length,r=e.length-t-n,i=[r>0?`${r} connected`:``,n>0?`${n} connecting`:``,t>0?`${t} stalled`:``].filter(Boolean);return{id:`followers`,label:`Followers`,icon:`radio`,count:e.filter(e=>e.peerState===`connected`).length,meta:i.join(` · `)||`none paired`,accent:`cyan`,emptyText:`No followers connected yet. Pair a phone, tablet, or CLI follower to this tray.`,rows:e.map(e=>{let t=e.motd??e.runtime??`Connected follower`,n=e.hostOrigin?`${t} · ${e.hostOrigin}`:t,r=[e.exec?`ssh`:``,e.cdp?`playwright`:``].filter(Boolean);return{name:ta(e),sublabel:n,meta:$i(e),icon:Zi(e),badges:r,status:G(e)}})}}function pc(e){return e.stalled||e.state===`reconnecting`?`warn`:e.state===`error`?`error`:e.state===`leader`||e.state===`connected`?`active`:`idle`}function mc(e){return e.stalled?`stalled`:e.state===`leader`?`connected`:e.state}function hc(e){let t=mc(e),n=e.sessionId?`Session ${Yi(e.sessionId)}`:null,r=e.workerBaseUrl?`Worker · ${e.workerBaseUrl}`:null;return{id:`tray`,label:`Tray`,icon:e.role===`follower`?`radio`:`cloud`,count:1,meta:`${e.role} · ${t}`,accent:`waffle`,status:pc(e),rows:[{name:e.role[0].toUpperCase()+e.role.slice(1),sublabel:[n,r].filter(Boolean).join(` · `)||`No tray session`,meta:t,icon:e.role===`follower`?`radio`:`cloud`,badges:e.joinUrl?[`join URL`]:[],status:pc(e)}]}}function gc(e,t){let n=e.filter(e=>E(e)),r=t=>e.filter(e=>!E(e)&&e.parentJid===t),i=(e,n)=>{let r=t(e.jid);return{name:E(e)?`${e.name||`sliccy`} (cone)`:e.name,meta:r?`working`:`idle`,active:r,depth:n}},a=n.flatMap(e=>[i(e,0),...r(e.jid).map(e=>i(e,1))]),o=new Set(a.map(e=>e.name));for(let t of e){let e=i(t,0);o.has(e.name)||a.push(e)}let s=e.filter(e=>t(e.jid)).length;return{id:`scoops`,label:`Scoops`,icon:`bot`,count:e.length,meta:`${e.length} · ${s} working`,accent:`violet`,status:`active`,emptyText:`Delegate a focused task and its scoop will show up here.`,rows:a}}function _c(e){let t=e.filter(e=>e.valid===!1).length;return{id:`mounts`,label:`Mounts`,icon:`hard-drive`,count:e.length,meta:t>0?`${e.length} · ${t} need${t===1?`s`:``} re-grant`:`${e.length} · all granted`,status:t>0?`warn`:`active`,emptyText:`Mount a folder to give the workspace access to files on disk.`,rows:e.map(e=>({name:e.targetPath,meta:e.valid===!1?`permission lost`:e.descriptor.kind,status:e.valid===!0?`active`:e.valid===!1?`warn`:`idle`}))}}function vc(e,t){let n=t.filter(e=>e.valid===!1).length,r=e.reduce((e,[,t])=>e+(t.tools?.length??0),0),i=[`${e.length} server${e.length===1?``:`s`}`,`${r} tool${r===1?``:`s`}`,n>0?`${n} account expired`:`${t.length} accounts valid`].join(` · `);return{id:`integrations`,label:`Integrations`,icon:`blocks`,count:e.length+t.length,meta:i,accent:`waffle`,status:n>0?`error`:`active`,emptyText:`Connect an MCP server or a provider account to extend the workspace.`,rows:[...e.map(([e,t])=>{let n=t.tools?.length??0;return{name:e,meta:`MCP · ${n} tool${n===1?``:`s`}`,status:`active`}}),...t.map(e=>({name:e.providerId,meta:e.valid===!1?`session expired`:`account`,status:e.valid===!0?`active`:e.valid===!1?`error`:`idle`}))]}}function yc(e,t){let n=[`${t.length} webhook${t.length===1?``:`s`}`,e.length>0?`${e.length} cron task${e.length===1?``:`s`}`:`no cron tasks`].join(` · `);return{id:`automations`,label:`Automations`,icon:`calendar-clock`,count:e.length+t.length,meta:n,accent:`amber`,emptyText:`Scheduled tasks and webhook-driven licks will appear here.`,rows:[...e.map(e=>({name:e.name,meta:e.cron,status:e.status===`active`?`active`:`idle`})),...t.map(e=>({name:e.name,meta:e.scoop?`→ ${e.scoop}`:`→ cone`,status:`idle`}))]}}function bc(e){let t=qe({percent:e.percent,status:e.status});return t===`critical`?`error`:t===`warn`?`warn`:`active`}function xc(e,t){let n=`${A(e.percent)}% used`,r=j(e.resetsAt,t);return{name:`${e.window[0]?.toUpperCase()??``}${e.window.slice(1)} budget`,sublabel:e.providerId?`${e.providerId} · rolling window`:`rolling window`,meta:e.status===`rate-limited`?`rate-limited · ${n}`:n,badges:r?[r]:void 0,status:bc(e)}}function Sc(e,t){let n=e?.budget,r=e?.models??[],i=e?`$${e.totalCost.toFixed(2)} across ${r.length} models`:``,a=n?[n.status===`rate-limited`?`rate-limited`:``,`${A(n.percent)}% of ${n.window} budget`,i].filter(Boolean).join(` · `):e?i:`no spend yet`;return{id:`cost`,label:`Cost`,icon:`receipt`,count:r.length,meta:a,accent:`rose`,status:n?bc(n):void 0,emptyText:`Model usage will be summarized after the first turn.`,rows:[...n?[xc(n,t)]:[],...r.map(e=>({name:e.model,meta:`$${e.cost.toFixed(4)}`,status:`idle`}))]}}function Cc(e){let t=[],n=wc(e.budget,e.now??Date.now());n&&t.push(n);for(let n of e.oauthProviders)n.valid===!1&&t.push({id:`oauth:${n.providerId}`,severity:`error`,icon:`key-round`,title:`${n.providerId} session expired`,detail:`Tool calls through this provider will fail until it is signed in again.`});let r=pc(e.tray);(r===`error`||r===`warn`)&&t.push({id:`tray`,severity:r===`error`?`error`:`warn`,icon:`cloud-off`,title:`Tray ${mc(e.tray)}`,detail:e.tray.workerBaseUrl?`Worker · ${e.tray.workerBaseUrl}`:`No tray session is established.`});for(let n of e.followers)G(n)===`warn`&&t.push({id:`follower:${n.runtimeId}`,severity:`warn`,icon:`radio`,title:`${ta(n)} stopped answering`,detail:n.motd??n.runtime??`No heartbeat from this follower.`,age:$i(n)});for(let n of e.mounts)n.valid===!1&&t.push({id:`mount:${n.targetPath}`,severity:`warn`,icon:`folder-lock`,title:`${n.targetPath} needs re-grant`,detail:`File System Access permission is no longer granted for this handle.`});return t.sort((e,t)=>e.severity===t.severity?0:e.severity===`error`?-1:1)}function wc(e,t){if(!e||qe({percent:e.percent,status:e.status})===`ok`)return null;let n=j(e.resetsAt,t),r=`${A(e.percent)}%`;if(e.status===`rate-limited`)return{id:`budget:rate-limited`,severity:`error`,icon:`octagon-alert`,title:`${e.window} budget is rate-limited`,detail:`The provider is refusing calls until the window resets. ${r} of the allowance is used.`,age:n};let i=e.percent>=95;return{id:`budget:near-limit`,severity:i?`error`:`warn`,icon:`gauge`,title:`${r} of the ${e.window} budget used`,detail:i?`Past 95% of the allowance — calls may start being refused.`:`Past 80% of the allowance. Long runs may not finish before it resets.`,age:n}}function Tc(e){return e>=100?`$${Math.round(e)}`:`$${e.toFixed(2)}`}function Ec(e){let{stats:t,workingUnits:n,totalUnits:r,liveProcesses:i,terminated:a,history:o}=e,s=o?.windowLabel(),c=t?.burnRate??0,l=t?.fills??[],u=l.reduce((e,t)=>Math.max(e,t.fill),0),d=t?.budget,f=[{id:`burn`,label:`Burn rate`,value:Tc(c),unit:`/hour`,hero:!d,accent:d?`rose`:void 0,series:o?.series(`burnRate`),foot:[t?`$${t.totalCost.toFixed(2)} this session`:`no spend yet`,s].filter(Boolean).join(` · `)},{id:`load`,label:`Agent load`,value:String(n),unit:`of ${r} working`,accent:`violet`,series:o?.series(`workingUnits`),foot:s??void 0}];return d||f.push({id:`processes`,label:`Live processes`,value:String(i),unit:i===1?`process`:`processes`,accent:`cyan`,series:o?.series(`liveProcesses`),foot:a>0?`${a.toLocaleString()} exited this session`:s??void 0}),l.length>0&&f.push({id:`context`,label:`Context fill`,value:String(Math.round(u*100)),unit:`%`,ratio:u,markers:Oc(l,e.units??[]),accent:u>=.9?`rose`:u>=.7?`amber`:`green`,foot:`fullest of ${l.length} context window${l.length===1?``:`s`}`}),d?[Dc(d,t,e.now??Date.now()),...f]:f}function Dc(e,t,n){let r=qe({percent:e.percent,status:e.status});return{id:`budget`,label:`${e.window[0]?.toUpperCase()??``}${e.window.slice(1)} budget`,value:A(e.percent),unit:`% used`,hero:!0,ratio:Math.min(1,Math.max(0,e.percent/100)),accent:r===`critical`?`rose`:r===`warn`?`amber`:`green`,foot:[e.status===`rate-limited`?`rate-limited`:``,j(e.resetsAt,n)??``,t?`$${t.totalCost.toFixed(2)} this session`:``].filter(Boolean).join(` · `)}}function Oc(e,t){let n=new Map(t.map(e=>[e.jid,e]));return e.map(({jid:e,fill:t})=>{let r=n.get(e),i=r?E(r):!1,a=r?.name||(r?`sliccy`:e);return{id:e,ratio:t,color:Ze({isRoot:i,name:a}),label:`${i?`${a} (cone)`:a} — ${Math.round(t*100)}% full`}})}var kc={running:`R`,pending:`S`,exited:`Z`,killed:`K`};function Ac(e,t){if(!e)return;let n=Math.max(0,Math.round((t-e)/1e3));if(n<60)return`${n}s`;let r=Math.floor(n/60);return r<60?`${r}m ${n%60}s`:`${Math.floor(r/60)}h ${r%60}m`}function jc(e,t){return{pid:e.pid,ppid:e.ppid,state:kc[e.status]??`?`,status:e.status,command:e.argv,scoop:e.scoop,started:e.startedAt?new Date(e.startedAt).toTimeString().slice(0,5):void 0,elapsed:Ac(e.startedAt,t)}}async function Mc(e,t){let n=e.getScoops(),r=e.getTrayInfo(),i=e.getConnectedFollowers(),[a,o,s,c,l,u]=await Promise.all([e.getCronTasks().catch(()=>[]),e.getWebhooks().catch(()=>[]),e.getMounts().catch(()=>[]),e.getMcpServers().catch(()=>({})),e.getSessionStats().catch(()=>null),e.getProcesses().catch(()=>({processes:[],terminated:0}))]),{processes:d,terminated:f}=u,p=e.getOAuthProviders(),m=Object.entries(c),h=n.filter(t=>e.isProcessing(t.jid)).length,g=Date.now();return t?.push({at:g,burnRate:l?.burnRate??0,workingUnits:h,liveProcesses:d.length}),{updated:`Streaming · updated just now`,vitals:Ec({stats:l,workingUnits:h,totalUnits:n.length,liveProcesses:d.length,terminated:f,history:t,units:n,now:g}),alerts:Cc({tray:r,followers:i,mounts:s,oauthProviders:p,budget:l?.budget,now:g}),sections:[hc(r),fc(i),gc(n,t=>e.isProcessing(t)),_c(s),vc(m,p),yc(a,o),Sc(l,g)],processes:{rows:d.map(e=>jc(e,g)),terminated:f}}}var Nc=`/shared`,Pc=3,Fc=200;async function Ic(e,t,n){let r;try{r=await e.readDir(t)}catch{return[]}let i=r.filter(e=>e.type===`directory`).sort((e,t)=>e.name.localeCompare(t.name)),a=r.filter(e=>e.type===`file`).sort((e,t)=>e.name.localeCompare(t.name)),o=[...i,...a].slice(0,Fc),s=new Map,c=[];for(let e of o){if(e.type!==`file`)continue;let n=`${t}/${e.name}`;e.size===void 0?c.push(n):s.set(n,e.size)}let l=await Promise.allSettled(c.map(t=>e.stat(t)));c.forEach((e,t)=>{let n=l[t];n?.status===`fulfilled`&&s.set(e,n.value.size)});let u=[];for(let r of o){let i=`${t}/${r.name}`;if(r.type===`directory`)u.push({kind:`dir`,id:i,label:r.name,children:n<Pc?await Ic(e,i,n+1):[]});else{let e=s.get(i);u.push({kind:`file`,id:i,label:r.name,path:i,size:e})}}return u}async function Lc(e,t=_e.root){let n=[];for(let r of[t,Nc])n.push({kind:`dir`,id:r,label:r.replace(/^\/(cones\/)?/,``),open:!0,children:await Ic(e,r,1)});return n}var Rc=200,zc=1e3,Bc=3e3,Vc=45e3;function Hc(e){let t=null,n=!1,r=!1,i=!1,a=0,o=0,s=null,c=null,l=0,u=()=>{let t=++o;e.openFs().then(async n=>{let i=await Lc(n,e.getWorkspace().root);t===o&&(e.fileTree.items=i,r||(r=!0,lt({fileTree:e.fileTree,openFs:e.openFs,openWriter:e.openWriter,insertReference:e.insertReference,toPreviewUrl:mt,log:e.log})))}).catch(t=>e.log.error(`WC file tree refresh failed`,t))},d=()=>{if(!i)return;let e=Date.now();if(c==null)l=e;else if(e-l>=zc){clearTimeout(c),c=null,u();return}c!=null&&clearTimeout(c),c=setTimeout(()=>{c=null,u()},Rc)},f=()=>{t??=setInterval(u,Bc)},p=()=>{let t=++a;s?.(),s=null;let n=[e.getWorkspace().root,Nc];e.openFs().then(async e=>{if(!e.watch){t===a&&i&&f();return}let r=await e.watch(n,d);if(t!==a||!i){r();return}s=r}).catch(n=>{e.log.error(`WC file tree watch failed — falling back to polling`,n),t===a&&i&&f()})},m=()=>{n=!1,i=!1,a++,s?.(),s=null,c!=null&&(clearTimeout(c),c=null),t!=null&&(clearInterval(t),t=null)};return{open(){m(),i=!0,n=!0,e.onKernelReady(()=>{n&&(n=!1,u(),p())})},close:m,repoint(){i&&!n&&(u(),p())}}}function Uc(e){let t=!1,n=!1,r=!1,i=0,a=null,o=new lc,s=Hc(e),c=()=>{a!=null&&(clearInterval(a),a=null)},l=()=>{let t=++i;e.openFs().then(async n=>{let r=await dc(n,e.getWorkspace().memoryPath);t===i&&(e.memoryHost.setRows?e.memoryHost.setRows(r):e.memoryHost.replaceChildren(...r))}).catch(t=>e.log.error(`WC memory refresh failed`,t))},u=()=>{(async()=>{try{e.monitor.model=await Mc(e.getMonitorDeps(),o)}catch(t){e.log.error(`WC monitor refresh failed`,t)}})()};return e.monitor.addEventListener(`slicc-monitor-refresh`,u),{activate(i){if(i===`files`){s.open();return}if(i===`memory`){r=!0,l();return}if(i===`monitor`){c(),u(),a=setInterval(u,5e3);return}if(i===`term`&&!t){t=!0;let r=!1,i=n?null:setTimeout(()=>{r||(n=!0,t=!1,e.log.error(`WC terminal mount did not settle within ${Vc}ms; re-arming so the next term activation retries`))},Vc);e.mountTerminal(e.termSurface).catch(n=>{t=!1,e.log.error(`WC terminal mount failed`,n)}).finally(()=>{r=!0,i&&clearTimeout(i)})}},deactivate(e){e===`files`?s.close():e===`monitor`?c():e===`memory`&&(r=!1)},refreshMemory(){r&&l()},refreshFiles(){s.repoint()}}}var Wc=[`/workspace`,`/shared`,`/memory`,`/scoops`,`/mnt`],Gc=new Set([`node_modules`,`.git`,`dist`,`build`,`out`,`coverage`,`.cache`,`.venv`,`venv`,`__pycache__`,`target`,`vendor`,`.next`,`.turbo`,`python_wheels`]),Kc=2e4,qc=12,Jc=3e4;function Yc(e){let t=e.trim();for(;t.startsWith(`./`)||t.startsWith(`../`);)t=t.slice(t.startsWith(`./`)?2:3);return t.startsWith(`~/`)&&(t=t.slice(2)),t.replace(/\/{2,}/g,`/`)}function Xc(e){return e.slice(e.lastIndexOf(`/`)+1)}function Zc(e,t){return e===t?!0:e.endsWith(t)?e[e.length-t.length-1]===`/`:!1}function Qc(e,t){let n=Yc(e);return t.includes(`/`)?Zc(n,t):Xc(n)===t}function $c(e,t){let n=[],r=new Set;for(let i=t.length-1;i>=0;--i){let a=t[i];if(!(a===void 0||r.has(a))&&Qc(a,e)&&(r.add(a),n.push(Yc(a)),n.length>=el))break}return n}var el=4,tl=class{#e;#t;#n;#r;#i;#a;#o=0;#s=null;#c=null;#l=new Map;#u=new Map;constructor(e,t={}){this.#e=e,this.#t=t.roots??Wc,this.#n=t.ignoredDirs??Gc,this.#r=t.maxEntries??Kc,this.#i=t.maxDepth??qc,this.#a=t.ttlMs??Jc}resolve(e,t=[]){this.#g();let n=Yc(e),r=this.#d(n),i=$c(n,t);return i.length===0?r:this.#f(n,r,i)}resolveAll(e,t=[]){return Promise.all(e.map(e=>this.resolve(e,t)))}invalidate(){this.#s=null,this.#c=null,this.#l.clear(),this.#u.clear()}#d(e){let t=this.#l.get(e);if(t!=null)return t;let n=this.#m(e).catch(()=>({query:e,matches:[]}));return this.#l.set(e,n),n}async#f(e,t,n){let{matches:r}=await t,i=new Set(r),a=[];for(let e of n)e.startsWith(`/`)&&!i.has(e)&&await this.#p(e)&&a.push(e);let o=e=>n.findIndex(t=>Zc(e,t)),s=r.filter(e=>o(e)>=0).sort((e,t)=>o(e)-o(t)),c=new Set(s),l=r.filter(e=>!c.has(e));return{query:e,matches:[...a,...s,...l]}}#p(e){let t=this.#u.get(e);if(t!=null)return t;let n=this.#h(e);return this.#u.set(e,n),n}async#m(e){if(e.startsWith(`/`))return{query:e,matches:await this.#h(e)?[e]:[]};let t=(await this.#_()).get(Xc(e))??[];return e.includes(`/`)?{query:e,matches:t.filter(t=>Zc(t,e)).sort(nl)}:{query:e,matches:[...t].sort(nl)}}async#h(e){try{return(await this.#e.stat(e)).type===`file`}catch{return!1}}#g(){this.#s&&this.#a!==1/0&&(Date.now()-this.#o<this.#a||this.invalidate())}#_(){return this.#s?Promise.resolve(this.#s):(this.#c??=this.#v().then(e=>(this.#s=e,this.#o=Date.now(),e)),this.#c)}async#v(){let e=new Map,t={left:this.#r};for(let n of this.#t){if(t.left<=0)break;await this.#y(n,0,e,t)}return e}async#y(e,t,n,r){if(r.left<=0||t>this.#i)return;let i;try{i=await this.#e.readDir(e)}catch{return}let a=this.#b(e,i,n,r);for(let e of a){if(r.left<=0)break;await this.#y(e,t+1,n,r)}}#b(e,t,n,r){let i=[];for(let a of t){if(r.left<=0)break;let t=e===`/`?`/${a.name}`:`${e}/${a.name}`;if(a.type===`directory`){this.#n.has(a.name)||i.push(t);continue}let o=n.get(a.name);o?o.push(t):n.set(a.name,[t]),--r.left}return i}};function nl(e,t){let n=e.split(`/`).length,r=t.split(`/`).length;return n===r?e.localeCompare(t):n-r}var rl=`file-mention`,il=`data-file-mentions`;function al(e){return`${e.childNodes.length}:${e.textContent?.length??0}`}var ol=new Set([`A`,`PRE`,`SCRIPT`,`STYLE`,`TEXTAREA`]),sl=`file-mention-open`;async function cl(e,t,n=[]){let r=al(e);if(e.getAttribute(il)===r)return;let i=ll(e);if(i.length===0){e.setAttribute(il,r);return}let a=[],o=new Set;for(let e of i){let t=dt(e.data);if(t.length!==0){a.push({node:e,mentions:t});for(let e of t)o.add(e.path)}}if(a.length===0){e.setAttribute(il,r);return}let s=[...o],c=await t.resolveAll(s,n),l=new Map(s.map((e,t)=>[e,c[t]?.matches??[]]));for(let{node:e,mentions:t}of a){if(!e.isConnected)continue;let n=t.filter(e=>(l.get(e.path)?.length??0)>0);n.length!==0&&ul(e,n,l)}e.setAttribute(il,al(e))}function ll(e){let t=e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_TEXT,{acceptNode(t){if(!t.nodeValue||t.nodeValue.trim().length===0)return NodeFilter.FILTER_REJECT;for(let n=t.parentElement;n&&n!==e;n=n.parentElement)if(ol.has(n.tagName)||n.classList.contains(`file-mention`))return NodeFilter.FILTER_REJECT;return NodeFilter.FILTER_ACCEPT}}),n=[];for(let e=t.nextNode();e!==null;e=t.nextNode())n.push(e);return n}function ul(e,t,n){let r=e.ownerDocument,i=e.data,a=r.createDocumentFragment(),o=0;for(let e of t){let t=n.get(e.path)??[],s=t[0];s&&(e.start>o&&a.appendChild(r.createTextNode(i.slice(o,e.start))),a.appendChild(dl(r,i.slice(e.start,e.end),s,t,e.line)),o=e.end)}o<i.length&&a.appendChild(r.createTextNode(i.slice(o))),e.parentNode?.replaceChild(a,e)}function dl(e,t,n,r,i){let a=e.createElement(`a`);return a.className=rl,a.textContent=t,a.href=`#${n}`,a.dataset.path=n,i!==void 0&&(a.dataset.line=String(i)),a.title=r.length>1?`${n}\n(+${r.length-1} other match${r.length>2?`es`:``})`:n,a.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation();let t={path:n,alternatives:r,...i===void 0?{}:{line:i}};a.dispatchEvent(new CustomEvent(sl,{detail:t,bubbles:!0,composed:!0}))}),a}var fl=`slicc-agent-message`,pl=`slicc-action-row[${$e}]`;function ml(e,t){let n=[],r=e.querySelectorAll(pl);for(let e of r){if(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING)break;n.push(e.getAttribute(`data-file-paths`)??``)}return n.slice(-40).flatMap(e=>nt(e))}function hl(e){let t=globalThis.requestIdleCallback;typeof t==`function`?t(e):setTimeout(e,0)}function gl(e){try{return _l(e)}catch(t){return e.log.error(`File mention wiring failed; continuing without it`,t),()=>{}}}function _l(e){let{thread:t,openFs:n,log:r}=e;if(!(t instanceof Node))return()=>{};let i=null,a=()=>(i??=n().then(e=>new tl(e)),i),o=e=>{if(!(e instanceof HTMLElement)||e.hasAttribute(`streaming`))return;let n=e.querySelector(`.body`)??e;dt(n.textContent??``).length!==0&&hl(()=>{let i=ml(t,e);a().then(e=>cl(n,e,i)).catch(e=>r.error(`File mention linking failed`,e))})},s=e=>{for(let t of e.querySelectorAll(fl))o(t)};s(t);let c=new MutationObserver(e=>{for(let t of e){if(t.type===`attributes`){t.target instanceof HTMLElement&&o(t.target);continue}for(let e of t.addedNodes)e instanceof HTMLElement&&(e.tagName.toLowerCase()===fl?o(e):s(e));let e=t.target?.closest?.(fl);e&&o(e)}});c.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`streaming`]});let l=e=>{let{path:t,line:i}=e.detail;n().then(e=>vt(e,t,i===void 0?{}:{line:i})).catch(e=>r.error(`File mention preview failed`,e))};return t.addEventListener(sl,l),()=>{c.disconnect(),t.removeEventListener(sl,l)}}var vl=e({DEFAULT_DOCK_TREE_ON_BOOT:()=>Ll,DOCK_TREE_STORAGE_KEY:()=>Il,attachWcWorkbench:()=>Hl,bootLeaderFloat:()=>Wl,makeSprinkleAttachImage:()=>Vl,mountSevenBannerInShell:()=>zl,prepareWcShell:()=>wl,wireDockTreePersistence:()=>Bl,wireWcChipTips:()=>jl,workspaceForSelection:()=>Sl});function yl(e){let{controller:t,held:n,jid:r,roster:i}=e,a=t?.stashQueued()??[];if(a.length===0)return;let o=i.find(e=>e.id===r),s=o?Hn(i,o)?.id??o.id:r;n.set(s,[...n.get(s)??[],...a])}function bl(e){let{controller:t,destination:n,held:r,previousJid:i,roster:a}=e;if(i&&i!==n&&yl({controller:t,held:r,jid:i,roster:a}),a.some(e=>e.id===n))for(let e of[...r.keys()])a.some(t=>t.id===e)||r.delete(e);let o=r.get(n);o&&(r.delete(n),t?.restoreQueued(o))}function xl(e,t){let n=null,r=null;return{shownUnitId:()=>r,watch:i=>{r===i&&n||(n?.(),r=i,n=e().subscribe(i,e=>{e.type===`snapshot`&&r===i&&t(e.snapshot.messages,e.snapshot.queuedIds)}))}}}function Sl(e){let{client:t,selectedId:n}=e,r=n===void 0?void 0:t.getScoop(n);return n!==void 0&&!r&&e.clearSelection(),Ce(t.getScoops(),r)}function Cl(e){let{refs:t}=e,n=null,r=new Map;return{clear:()=>{n=null},getSelected:()=>n,holdQueue:()=>{let t=n?.id;t&&yl({controller:e.controller(),held:r,jid:t,roster:e.client().currentUnits()})},selectScoop:i=>{let a=n?.id??null;n=i;let o=Wn(In(i)),s=e.host();bl({controller:e.controller(),destination:i.id,held:r,previousJid:a,roster:e.client().currentUnits()});let c=e.lickBackpressure.get(i.id);e.controller()?.setLickBackpressure(c?.count??0,c?.waitingMs??0,Un(i)),e.controller()?.setReadOnly(o),o||t.inputCard.removeAttribute(`disabled`),Vo(t,i,e.client().currentUnits(),s.getRecord?.bind(s),{skipModelPill:s.ownsModelPill===!0}),e.client().snapshot(i.id).catch(()=>void 0),e.watchUnit(i.id),e.controller()?.setProcessing(e.client().currentUnits().find(e=>e.id===i.id)?.state===`working`),t.switcher.hasAttribute(`attention`)||t.switcher.setAttribute(`attention`,i.id),e.wiring().refreshScoops?.(),e.workbench()?.refreshMemory(),e.workbench()?.refreshFiles(),s.onSelectionApplied?.()}}}function wl(e,t){let n=ut(e,{messages:[],scoops:[],floatLabel:t,placeholder:`Ask sliccy, or describe a change…`,urlState:!0}),r=null,i=null,a=Aa,o=null,s=()=>o??Q(g),c=new Map,l=!1,u=null,d=!1,f=new Set,p=xl(()=>s(),(e,t)=>{r?.loadMessages(e,t),co(n.thread,e.length===0&&d),a.onSnapshotRendered?.(e)}).watch,m=Cl({client:s,controller:()=>r,host:()=>a,lickBackpressure:c,refs:n,watchUnit:p,wiring:()=>g,workbench:()=>u}),h=m.selectScoop,g={refs:n,statuses:new Map,fills:new Map,phases:new Map,turns:new Map,lickBackpressure:c,lastActivity:new Map,pendingUrlContext:n.thread.urlContext??null,getController:()=>r,getClient:()=>i,getSelected:()=>m.getSelected(),selectScoop:h,notifyReady:()=>{l=!0;for(let e of f)e()}};return{refs:n,wiring:g,setClient:e=>{i=e},setChatTransport:(e,t)=>{o=e,a=t},getChatHost:()=>a,selectScoop:h,getSelected:()=>m.getSelected(),clearSelection:()=>m.clear(),holdQueuedPile:()=>m.holdQueue(),watchUnit:p,getController:()=>r,setController:e=>{r=e},setActivateSurface:e=>{u=e;let t=new Set(n.dockTree.getSurfaceIds());for(let n of[`files`,`term`,`memory`,`monitor`])t.has(n)&&(l?e.activate(n):f.add(()=>e.activate(n)))},onClientReady:e=>{f.add(e),l&&e()},setRestoringSessions:e=>{d=e,co(n.thread,e&&so(n.thread))}}}function Tl(e){let t=null;return()=>(t??=(async()=>{let[{createRemoteVfsClient:t},{createRemoteWritableVfsClient:n}]=await Promise.all([s(()=>import(`./remote-vfs-client-Cs1yUtQm.js`),__vite__mapDeps([75,35])),s(()=>import(`./writable-vfs-client-CQe6oZ75.js`),__vite__mapDeps([76,35]))]);return{reader:t({transport:e.getTransport()}),writer:n({transport:e.getTransport()})}})(),t)}function El(e,t,n,r,i){e.onClientReady(()=>{r.intercept||s(async()=>{let{wireWcOnboarding:e}=await import(`./wc-onboarding-BCGjMZMg.js`);return{wireWcOnboarding:e}},__vite__mapDeps([77,1,13,33,5,34,26,48,12,14,15,16,17,18,3,19,20,21,22,40,24,23,25,27,28,29,42,49,50,51,52,53,54,45])).then(({wireWcOnboarding:r})=>r({client:t,getController:()=>e.getController(),openVfs:n,log:i})).then(e=>{r.intercept=e.interceptWelcomeLick}).catch(e=>i.error(`WC onboarding wiring failed`,e))})}function Dl(e,t){let n=()=>{t.getSessionStats?.().then(t=>{if(!t)return;e.refs.floatbar.setAttribute(`spent`,t.totalCost.toFixed(2)),typeof t.burnRate==`number`&&Number.isFinite(t.burnRate)?e.refs.floatbar.setAttribute(`rate`,t.burnRate.toFixed(2)):e.refs.floatbar.removeAttribute(`rate`);let n=e.refs.floatbar;t.models&&(n.costModels=t.models),t.scoops&&(n.costScoops=t.scoops),n.budget=t.budget?{percent:t.budget.percent,status:t.budget.status,window:t.budget.window,resets:j(t.budget.resetsAt)}:null,e.fills.clear();for(let n of t.fills)e.fills.set(n.jid,n.fill);e.refreshScoops?.()})};return setInterval(n,15e3),n}function Ol(e,t,n){let r=t.standalone;r&&s(async()=>{let{wireWcBrowser:e}=await import(`./wc-browser-CwQVBvz4.js`);return{wireWcBrowser:e}},__vite__mapDeps([78,79,40,80,1,81,82,18,22,38,5,13,37,39,23,12,14,15,16,17,3,19,20,21,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,83])).then(({wireWcBrowser:t})=>t({refs:e.refs,browser:r.browser,log:n})).catch(e=>n.error(`WC browser overlay wiring failed`,e))}function kl(e){return{assistantLabel:e.assistantLabel,name:e.name,role:E(e)?`primary`:`child`}}function Al(e){return()=>{e.triggerPlaceholder();let t=e.boot.getSelected()?.id;if(e.boot.wiring.awaitingInput=t??null,e.boot.wiring.refreshScoops?.(),e.boot.wiring.notifyScoopStateChanged?.(),e.refreshStats(),!t)return;e.boot.refs.switcher.setAttribute(`attention`,t);let n=e.boot.getController()?.getMessages().filter(e=>e.role===`assistant`).at(-1);n&&e.boot.wiring.lastActivity.set(t,i(String(n.content??``),600))}}function jl(e){let t=new Map,n=new Set;e.switcher.addEventListener(`pointerover`,r=>{let i=r.target?.closest?.(`.slicc-agent-tabs__segment`);if(!i||!e.switcher.contains(i))return;let a=i.dataset.k??``,o=e.getScoops().find(e=>e.jid===a);if(!o)return;let c=e.lastActivity.get(a)??``,l=t.get(a);if(l&&l.activity===c){i.title=l.tip;return}i.title||=Bn(kl(o)),c&&!n.has(a)&&(n.add(a),(async()=>{try{let n=await(e.labelFn??(await s(async()=>{let{quickLabel:e}=await import(`./quick-llm-CGD6yIFK.js`).then(e=>e.n);return{quickLabel:e}},__vite__mapDeps([11,5,1,12,13,14,15,16,17,18,3,19,20,21,22,23,24,25,26,27,28,29,30,31]))).quickLabel)({system:`One line for a hover tooltip: at most 14 words, present tense, no quotes, no trailing period.`,prompt:`Summarize what this agent has been doing.\nAgent: ${E(o)?`${Bn(kl(o))} (a main agent)`:o.name}\nMost recent activity:\n${c}`,maxTokens:40});n&&(t.set(a,{activity:c,tip:n}),i.title=n)}finally{n.delete(a)}})())})}async function Ml(e,t,n,r){let{RemoteTerminalView:i}=await s(async()=>{let{RemoteTerminalView:e}=await import(`./remote-terminal-view-CLjsOpGM.js`);return{RemoteTerminalView:e}},__vite__mapDeps([84,12,5,1,13,14,15,16,17,18,3,19,20,21,22,57,0,2,10,85,9,8,86,87])),{fetchSecretEnvVars:a}=await s(async()=>{let{fetchSecretEnvVars:e}=await import(`./secret-env-B5BchABJ.js`);return{fetchSecretEnvVars:e}},__vite__mapDeps([88,1,12,5,13,14,15,16,17,18,3,19,20,21,22])),o=await a(),c=new i({client:t,cwd:`/`,env:Object.keys(o).length>0?o:void 0});if(await new Promise(t=>e.onClientReady(t)),await c.mount(n),globalThis.__slicc_terminal_view=c,window.addEventListener(`beforeunload`,()=>c.dispose(),{once:!0}),new URLSearchParams(location.search).has(`wterm-image-demo`)){let e=await fetch(`/logos/sliccy-color-10scoops-128x128.png`);if(!e.ok)throw Error(`wterm demo image: HTTP ${e.status}`);let t=new Uint8Array(await e.arrayBuffer());await(await r()).writeFile(`/tmp/wterm-graphics-demo.png`,t);let n=await c.executeCommandInTerminal(`imgcat /tmp/wterm-graphics-demo.png`);if(n.exitCode!==0)throw Error(`wterm demo image: ${n.stderr}`)}}function Nl(e,t,n){let r=t=>{if(t.startsWith(`freezer:`)){n(t.slice(8));return}let r=Fn(Q(e.wiring).currentUnits(),t);r&&r.id!==e.getSelected()?.id&&e.selectScoop(r)};e.refs.thread.addEventListener(`slicc-url-context`,e=>{let t=e.detail?.context;t&&r(t)});let i=e.wiring.pendingUrlContext;i?.startsWith(`freezer:`)&&e.onClientReady(()=>{e.wiring.pendingUrlContext===i&&(e.wiring.pendingUrlContext=null,r(i))})}function Pl(e,t,n,r){s(async()=>{let{installLeaderPermissionsSurface:e,installMountPendingConsumer:t}=await import(`./wc-permissions-oNWetQ88.js`);return{installLeaderPermissionsSurface:e,installMountPendingConsumer:t}},__vite__mapDeps([89,1,13,57])).then(async({installLeaderPermissionsSurface:r,installMountPendingConsumer:i})=>{let a=n.standalone?.runtimeMode??`standalone`,{buildLeaderPermissionProviders:o,isExtensionRuntime:c}=await s(async()=>{let{buildLeaderPermissionProviders:e,isExtensionRuntime:t}=await import(`./wc-permissions-providers-DvV2aZfl.js`);return{buildLeaderPermissionProviders:e,isExtensionRuntime:t}},__vite__mapDeps([90,13,3]));r({runtimeMode:a,providers:await o(c()||a===`extension`||a===`extension-detached`)}),i({runShell:Fl(e,t)})}).catch(e=>r.warn(`WC permissions surface wiring failed`,e)),(n.standalone?.runtimeMode??`standalone`)!==`cherry`&&s(async()=>{let{installSecretRequestSurface:e}=await import(`./wc-secret-request-gjwVYJoY.js`);return{installSecretRequestSurface:e}},__vite__mapDeps([91,1,23,12,5,13,14,15,16,17,18,3,19,20,21,22,24,25,26,27,28,29,38,37,39,40,41,42,43,35,44,31,45,46,47,92,93])).then(({installSecretRequestSurface:e})=>e()).catch(e=>r.warn(`WC secret request surface wiring failed`,e))}function Fl(e,t){let n=null,r=()=>(n||=(async()=>{await new Promise(t=>e.onClientReady(t));let{TerminalSessionClient:n}=await s(async()=>{let{TerminalSessionClient:e}=await import(`./terminal-session-client-DmE-iBjP.js`).then(e=>e.n);return{TerminalSessionClient:e}},__vite__mapDeps([87,5])),r=new n({client:t,sid:`mount-drop-${Date.now()}`});return await r.open({cwd:`/workspace`}),r})().catch(e=>{throw n=null,e}),n);return async e=>(await r()).exec(e)}var Il=`slicc-dock-tree:default`,Ll={zones:{top:null,left:{type:`leaf`,surfaceId:`chat`},middle:null,right:null,bottom:null},rowFr:{top:1,center:1,bottom:1},colFr:{left:3,middle:1,right:1}};function Rl(e){s(async()=>{let{showProfileExportDialog:e}=await import(`./wc-profile-export-Cc1nFXlL.js`);return{showProfileExportDialog:e}},__vite__mapDeps([94,13])).then(({showProfileExportDialog:e})=>e()).catch(t=>e.error(`Export for SLICC 7 dialog failed`,t))}function zl(e){let t,n=()=>{if(!d(`seven-banner`)){t&&document.getElementById(t.SEVEN_BANNER_ID)?.remove();return}s(()=>import(`./wc-seven-banner-BitWulyq.js`).then(n=>{t=n;let r=document.querySelector(`.wcui-appcol`);r&&d(`seven-banner`)&&n.mountSevenBanner(document,r,r.querySelector(`:scope > slicc-shell`),{onExport:()=>Rl(e),moveHref:n.sevenInPlaceHref(location.origin)})}),__vite__mapDeps([95,40])).catch(t=>e.error(`SLICC 7 banner failed`,t))};return n(),f(n)}function Bl(e,t){let n=e.dockTree,r=e.dockTree,i=e=>{try{localStorage.setItem(Il,JSON.stringify(e))}catch{}};n.addEventListener(`dock-tree-change`,e=>{i(e.detail?.tree)}),n.addEventListener(`dock-tree-resize`,e=>{i(e.detail?.tree)});try{let e=localStorage.getItem(Il);r.setTree(e?JSON.parse(e):Ll)}catch(e){t.warn(`WC dock-tree restore failed — seeding the default layout`,e),r.setTree(Ll)}}function Vl(e,t){return(n,r,i)=>{let a=e.getAttachStage();if(!a){t.warn(`sprinkle attachImage dropped: composer stage not ready yet`);return}let o=n.match(/^data:(image\/[^;]+);base64,([A-Za-z0-9+/=]+)$/),s=o?o[2]:n,c=o?o[1]:i??`image/png`,l=c.split(`/`)[1]?.replace(`jpeg`,`jpg`).replace(`svg+xml`,`svg`)??`png`,u=r??`annotation-${Date.now()}.${l}`;a.add({id:`att-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,name:u,mimeType:c,size:Math.floor(s.length*3/4),kind:`image`,data:s})}}function Hl(e,t,n,r,i,a={}){s(async()=>{let{initTimestampPreference:e}=await import(`./wc-shell-sK_ZzgMP.js`).then(e=>e.Q);return{initTimestampPreference:e}},__vite__mapDeps([38,5,1,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47])).then(({initTimestampPreference:e})=>e()).catch(()=>void 0);let{refs:o}=e;e.setClient(t),s(async()=>{let{watchSprinkleThemeBroadcast:e}=await import(`./theme-CmogKzdP.js`).then(e=>e.i);return{watchSprinkleThemeBroadcast:e}},__vite__mapDeps([96,5,97,1])).then(({watchSprinkleThemeBroadcast:e})=>e()).catch(()=>void 0),s(async()=>{let{applyThemeOverrides:e}=await import(`./theme-engine-CwaY1aIr.js`).then(e=>e._);return{applyThemeOverrides:e}},__vite__mapDeps([97,5,1])).then(({applyThemeOverrides:e})=>e()).catch(()=>void 0);let c=d(`panel-layouts`);o.dockTree.tilesMovable=c,c||Bl(o,i);let l=null,u=Dl(e.wiring,t),f=()=>l?.(),p=r.welcome??{intercept:null},m=Q(e.wiring),{agentHandle:h}=n;e.onClientReady(u);let g=Tl(t),_=async()=>(await g()).reader;a.standalone?.runtimeMode!==`cherry`&&a.standalone?.runtimeMode!==`hosted-leader`?El(e,t,g,p,i):p.intercept=So({openVfs:async()=>(await g()).writer,log:i});let v=Uo({boot:e,client:t,setRefreshPlaceholder:e=>{l=e},triggerPlaceholder:f,openReader:_,openWriter:async()=>(await g()).writer,log:i});r.setAttachmentSource(()=>v.getAttachStage()?.take()),r.setTurnIdleHook(Al({boot:e,triggerPlaceholder:f,refreshStats:u})),jl({switcher:o.switcher,getScoops:()=>t.getScoops(),lastActivity:e.wiring.lastActivity}),Ol(e,a,i),s(async()=>{let{installWcComputers:e}=await import(`./wc-computers-CASkX8DP.js`);return{installWcComputers:e}},__vite__mapDeps([82,18,22,38,5,1,13,37,39,40,23,12,14,15,16,17,3,19,20,21,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,83])).then(({installWcComputers:e})=>e({openFs:_,log:i})).catch(e=>i.error(`WC computers wiring failed`,e)),Pl(e,t,a,i);let y=Uc({fileTree:o.fileTree,termSurface:o.termSurface,memoryHost:o.memoryHost,monitor:o.monitor,openFs:_,openWriter:async()=>(await g()).writer,onKernelReady:t=>e.onClientReady(t),getMonitorDeps:()=>Ns({client:t,openReader:_,storage:window.localStorage}),getWorkspace:()=>Sl({client:t,clearSelection:e.clearSelection,selectedId:e.getSelected()?.id}),mountTerminal:n=>Ml(e,t,n,async()=>(await g()).writer),insertReference:e=>{let t=o.inputCard,n=t.value.trim();t.value=n?`${n} @${e}`:`@${e}`,t.focus()},log:i});e.setActivateSurface(y),e.onClientReady(()=>{window.setTimeout(()=>{s(async()=>{let{warmWterm:e}=await import(`./warm-wterm-snqvCS0-.js`);return{warmWterm:e}},__vite__mapDeps([98,13])).then(({warmWterm:e})=>e()).catch(e=>i.warn(`wterm WASM warm-up failed`,e))},2500)}),c&&s(async()=>{let{panelizeShell:e}=await import(`./panelize-shell-8cCP_UY4.js`);return{panelizeShell:e}},__vite__mapDeps([99,1,38,5,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,100,101,102])).then(({panelizeShell:e})=>e(o,void 0,void 0,{onToolPanelActivate:e=>y.activate(e),onToolPanelDeactivate:e=>y.deactivate(e)})).catch(e=>i.error(`panelize failed — keeping the classic shell`,e)),gl({thread:o.thread,openFs:_,log:i}),ct(o.thread,_),o.floatbar.addEventListener(`click`,()=>{let e=o.dock;e.active===`monitor`?e.collapse():e.selectItem(`monitor`)});let b=bs({refs:o,openVfs:g,client:t,getUnits:()=>m.currentUnits(),getController:()=>e.getController(),getSelected:()=>e.getSelected(),selectScoop:e.selectScoop,clearSelection:e.clearSelection,holdQueuedPile:e.holdQueuedPile,log:i}),{refreshFreezer:x,openFrozen:S,getViewedFrozenSessionId:ee}=b;if(x(),e.onClientReady(x),d(`multiple-cones`)){let n=bo({freezer:o.freezer,client:t,getSelected:()=>e.getSelected(),getUnits:()=>m.currentUnits(),selectScoop:e.selectScoop,freezeCone:b.freezeCone,log:i});e.wiring.refreshConeActions=n.refresh,e.onClientReady(n.refresh)}Nl(e,t,S),e.onClientReady(()=>{g().then(async({reader:e,writer:t})=>{let{loadShortcutConfig:n}=await s(async()=>{let{loadShortcutConfig:e}=await import(`./wc-shortcut-config-0N09rbUr.js`);return{loadShortcutConfig:e}},__vite__mapDeps([103,1,104,38,5,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47]));await n({reader:e,writer:t,apply:({keymap:e,trigger:t})=>{o.shortcuts.setKeymap(e),o.shortcuts.setTrigger(t)}})}).catch(e=>i.warn(`WC shortcut config load failed`,e))}),g().then(async({reader:e})=>{let{installPreviewVfsResponder:t}=await s(async()=>{let{installPreviewVfsResponder:e}=await import(`./preview-vfs-responder-Vn6wxJvK.js`);return{installPreviewVfsResponder:e}},[]);t({channel:new BroadcastChannel(`preview-vfs`),getReader:()=>e,logger:i})}).catch(e=>i.warn(`WC page-VFS support wiring failed`,e)),g().then(async({reader:n,writer:r})=>{let{createRemoteSprinkleVfs:c}=await s(async()=>{let{createRemoteSprinkleVfs:e}=await import(`./remote-sprinkle-vfs-UzNBy5VJ.js`);return{createRemoteSprinkleVfs:e}},__vite__mapDeps([105,35,106,107])),l=(await s(async()=>{let{getPanelizedShell:e}=await import(`./panelize-shell-8cCP_UY4.js`);return{getPanelizedShell:e}},__vite__mapDeps([99,1,38,5,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,100,101,102]))).getPanelizedShell(),{wireWcSprinkles:u}=await s(async()=>{let{wireWcSprinkles:e}=await import(`./wc-sprinkles-C6r2BgND.js`);return{wireWcSprinkles:e}},__vite__mapDeps([108,13,3,109,38,5,1,37,39,18,40,23,12,14,15,16,17,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,110,33,34])),d=await u({refs:o,client:t,getUnits:()=>m.currentUnits(),getSelected:()=>e.getSelected(),selectScoop:t=>e.selectScoop(t),interceptWelcomeLick:e=>p.intercept?.(e)??!1,fs:c({reader:n,writer:r}),instanceId:a.instanceId,onAttachImage:Vl(v,i),onToolPanelActivate:e=>y.activate(e),onToolPanelDeactivate:e=>y.deactivate(e),hostSprinkleSurface:l?(e,t)=>l.hostSprinkleSurface(e,t):void 0,removeSprinkleSurface:l?e=>l.removeSprinkleSurface(e):void 0,log:i});e.onClientReady(()=>void d.resync());let{getPanelizedShell:f}=await s(async()=>{let{getPanelizedShell:e}=await import(`./panelize-shell-8cCP_UY4.js`);return{getPanelizedShell:e}},__vite__mapDeps([99,1,38,5,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,100,101,102])),b=f();if(b){let e=c({reader:n,writer:r});b.attachFs(e);let{registerAgentPanels:t}=await s(async()=>{let{registerAgentPanels:e}=await import(`./agent-panels-DfLRYlFo.js`);return{registerAgentPanels:e}},__vite__mapDeps([111,1,38,5,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47]));await t(e).catch(e=>i.warn(`agent panel discovery failed`,e))}else{let{setLayoutApplier:e}=await s(async()=>{let{setLayoutApplier:e}=await import(`./layout-apply-registry-Cw730jao.js`);return{setLayoutApplier:e}},[]),{applyLayout:t}=await s(async()=>{let{applyLayout:e}=await import(`./apply-layout-BHVfwynq.js`);return{applyLayout:e}},__vite__mapDeps([112,113,108,13,3,109,38,5,1,37,39,18,40,23,12,14,15,16,17,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,110,33,34]));e(e=>t(d.zone,e))}if(a.standalone&&a.instanceId){let{wireWcTray:n}=await s(async()=>{let{wireWcTray:e}=await import(`./wc-tray-De5OZEVk.js`);return{wireWcTray:e}},__vite__mapDeps([114,1,12,5,13,14,15,16,17,18,3,19,20,21,22,37,40,23,24,25,26,27,28,29,41,79,33,34,115,116,57,38,39,42,43,35,44,31,45,46,47,10,9,117,8,86,74,96,97,49,118,119,120,48,50,107,87,121,66,81,122,63,123,124,110])),r=d.zone.callbacks(),c=await n({refs:o,client:t,browser:a.standalone.browser,realCdpTransport:a.standalone.realCdpTransport,instanceId:a.instanceId,runtimeMode:a.standalone.runtimeMode,sprinkleManager:d.manager,addSprinkle:(e,t,n)=>r.addSprinkle(e,t,n),removeSprinkle:e=>r.removeSprinkle(e),getController:()=>e.getController(),getSelectedJid:()=>e.getSelected()?.id??`cone`,agentHandle:h,workUnits:m,restoreLocalChrome:()=>{e.wiring.refreshScoops?.();let n=e.getSelected();n&&Vo(o,n,m.currentUnits(),e=>t.getScoop(e))},openFs:_,openWriter:async()=>(await g()).writer,window,log:i,kernelReadyDeadline:a.kernelReadyDeadline});e.wiring.notifyScoopStateChanged=()=>c.scheduleScoopsListBroadcast(),e.wiring.notifyUnitStatus=(e,t)=>c.broadcastUnitStatus(e,t===`processing`?`processing`:`ready`)}}).catch(e=>i.error(`WC sprinkle/tray wiring failed`,e));{let n=new Qt(new $t),r={collection:{listScoops:()=>t.getScoops(),isProcessing:e=>t.isProcessing(e),getAgentMessages:()=>null,loadPersistedSessions:()=>n.loadAgentSessions(),loadUiChatSessions:()=>n.loadChatSessions(),wait:e=>new Promise(t=>setTimeout(t,e))},knownSecrets:io(),snapshotStore:{read:async e=>{let{reader:t}=await g();return _n(t,e)},write:async(e,t,n)=>{let{writer:r}=await g();return gn(r,e,t,n)},discardIfUnindexed:async e=>{let{writer:t}=await g();return vn(t,e)}},vfs:{readFile:async(e,t)=>(await g()).reader.readFile(e,t),readDir:async e=>(await g()).reader.readDir(e),stat:async e=>(await g()).reader.stat(e)},getActiveSessionInfo:()=>{let t=Vn(Q(e.wiring).currentUnits());return{id:t?.id??`session-${Date.now()}`,title:t?.name??`Active Session`}},version:`6.256.11`},a=qn(new jn(r));window.addEventListener(`unload`,a,{once:!0});let o=Ja(()=>Mn({serviceDeps:r,listUnits:()=>t.getScoops(),version:`6.256.11`})),c=Za(async e=>{let{runProfileExportHeadless:t}=await s(async()=>{let{runProfileExportHeadless:e}=await import(`./wc-profile-export-Cc1nFXlL.js`);return{runProfileExportHeadless:e}},__vite__mapDeps([94,13]));return t(e)});window.addEventListener(`unload`,o,{once:!0}),window.addEventListener(`unload`,c,{once:!0}),window.addEventListener(`unload`,zl(i),{once:!0})}let C=!1,w=()=>C?Promise.resolve():(C=!0,(async()=>{try{let[{getTranscriptExportService:e},{transcriptZipToBlob:t,downloadTranscriptBlob:n}]=await Promise.all([s(()=>Promise.resolve().then(()=>Kn),void 0),s(()=>import(`./wc-transcript-export-DFagRenA.js`),__vite__mapDeps([125,13,34,119,33,5,26,1]))]),r=ee(),i=r==null?{kind:`active`}:{kind:`frozen`,sessionId:r},a=await e().export(i,{}),{filename:o}=a;await n(await t(a),o)}catch(e){i.error(`Transcript export failed`,e),s(async()=>{let{showTranscriptExportFailure:e}=await import(`./wc-transcript-export-DFagRenA.js`);return{showTranscriptExportFailure:e}},__vite__mapDeps([125,13,34,119,33,5,26,1])).then(({showTranscriptExportFailure:t})=>t(e)).catch(e=>i.error(`Transcript export notice failed`,e))}finally{C=!1}})());if(s(async()=>{let{wireWcNav:e}=await import(`./wc-nav-Jy-L5ljh.js`);return{wireWcNav:e}},__vite__mapDeps([126,13,16,3,33,5,34,26,1,49,50,48,12,14,15,17,18,19,20,21,22,40,24,23,25,27,28,29,42,121,66,110])).then(({wireWcNav:e})=>e({refs:o,client:t,workUnits:m,getUnits:()=>m.currentUnits(),log:i,onExportTranscript:w,shortcuts:o.shortcuts,persistKeyboardTrigger:async e=>{let{writer:t,reader:n}=await g(),{writeShortcutTrigger:r}=await s(async()=>{let{writeShortcutTrigger:e}=await import(`./wc-shortcut-config-0N09rbUr.js`);return{writeShortcutTrigger:e}},__vite__mapDeps([103,1,104,38,5,13,37,39,18,40,23,12,14,15,16,17,3,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47]));await r({reader:n,writer:t},e)}})).catch(e=>i.error(`WC nav wiring failed`,e)),s(async()=>{let{getComposerSpeech:e,setComposerSpeechInstanceId:t}=await import(`./composer-speech-AIb_ShWb.js`);return{getComposerSpeech:e,setComposerSpeechInstanceId:t}},__vite__mapDeps([127,1,3,57,38,5,13,37,39,18,40,23,12,14,15,16,17,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,72,73,74,128])).then(({getComposerSpeech:e,setComposerSpeechInstanceId:t})=>{let n=o.composer;t(a.instanceId),n.speech=e(),n.setAttribute(`ptt`,``)}).catch(e=>i.error(`WC push-to-talk wiring failed`,e)),s(async()=>{let{setSpeakAssetsInstanceId:e}=await import(`./speak-BbeItZwT.js`);return{setSpeakAssetsInstanceId:e}},__vite__mapDeps([71,1,13,3,72,73,17,5,18,38,37,39,40,23,12,14,15,16,19,20,21,22,24,25,26,27,28,29,41,42,43,35,44,31,45,46,47,74])).then(({setSpeakAssetsInstanceId:e})=>e(a.instanceId)).catch(e=>i.error(`WC say warmup wiring failed`,e)),a.standalone)return()=>{s(async()=>{let{schedulePendingSessionCatchup:e}=await import(`./new-session-BHywxROi.js`);return{schedulePendingSessionCatchup:e}},__vite__mapDeps([65,1,13,16,23,12,5,14,15,17,18,3,19,20,21,22,24,25,26,27,28,29,48,40,42,49,50,30,51,33,34,52,53,54,45,58,36,37,35,59,32,60,41,61,62,38,39,43,44,31,46,47,63])).then(({schedulePendingSessionCatchup:e})=>e({openVfs:async()=>(await g()).writer,onComplete:e=>{x(),e.attempted>0&&t.reloadSkills()}})).catch(e=>i.warn(`Pending session catch-up scheduling failed`,e))}}function Ul(e){let t=!1,n=()=>s(()=>import(`./boot-stall-overlay-Cs-FNlf8.js`),[]);return{onBootProgress:r=>{t=!0,n().then(t=>t.showBootStage(e,r))},onReadyStall:r=>{t=!0,n().then(t=>t.showBootStallOverlay(e,r))},dismiss:()=>{t&&n().then(t=>{t.removeBootStallOverlay(e),t.removeBootStage(e)})}}}async function Wl(e,t,n=`standalone`){let{browser:r,realCdpTransport:i,instanceId:a,localApiBaseUrl:o,bridgeToken:c,localLickWsUrl:l,extensionDelegateId:u,attachLickForwardingClient:d}=await He({runtimeMode:n,envBaseUrl:null,window,log:t}),{floatKindForRuntimeMode:f,floatLabelForKind:p,resolveStandaloneFloatKind:m}=await s(async()=>{let{floatKindForRuntimeMode:e,floatLabelForKind:t,resolveStandaloneFloatKind:n}=await Promise.resolve().then(()=>Zs);return{floatKindForRuntimeMode:e,floatLabelForKind:t,resolveStandaloneFloatKind:n}},void 0),h=n===`standalone`?await m():f(n),g=p(h);a&&Be(a);let{syncFsBridgeEnabled:_,syncFsChannelNonce:v}=Fs(),y=Ul(document),b,x,{boot:S}=await oc(e,t,{floatKind:h,floatLabel:g,connect:e=>{b=qa({realCdpTransport:i,reconnectCdp:()=>r.reconnectIfNeeded(),instanceId:a,makeClient:t=>new Da(To(e.wiring),t),localApiBaseUrl:o,bridgeToken:c,syncFsBridgeEnabled:_,syncFsChannelNonce:v,localLickWsUrl:l,extensionDelegateId:u,flagFloat:n,onWorkerScriptError:()=>{Ge()},onBootProgress:y.onBootProgress,onReadyStall:y.onReadyStall,onLateReady:()=>{Ge()}}),Pe({drain:()=>b.drain(),terminate:()=>b.dispose()}),Na({send:e=>b.client.sendRaw(e)}),d?.(b.client);let s=ka(b.client);return{client:Q(e.wiring),host:s,workbench:(e,o)=>{x=Hl(e,b.client,o,s,t,{instanceId:a,standalone:{browser:r,floatKind:h,realCdpTransport:i,runtimeMode:n},kernelReadyDeadline:{pause:()=>b.pauseReadyDeadline(),restart:()=>b.restartReadyDeadline()}})}}}});S.setRestoringSessions(!0);let{setupSudoStandalone:ee}=await s(async()=>{let{setupSudoStandalone:e}=await import(`./main-CiBxDanA.js`).then(e=>e.a);return{setupSudoStandalone:e}},__vite__mapDeps([48,5,1,12,13,14,15,16,17,18,3,19,20,21,22,40,24,23,25,26,27,28,29,42,49,50]));await ee({log:t});try{await b.ready}finally{y.dismiss()}S.wiring.notifyReady?.(),S.setRestoringSessions(!1),globalThis.__slicc_kernel_ready=!0,t.info(`WC live shell ready`,{scoops:b.client.getScoops().length}),x?.();let{consumeAutoPrompt:C}=await s(async()=>{let{consumeAutoPrompt:e}=await import(`./auto-prompt-Mj-vUQeB.js`);return{consumeAutoPrompt:e}},[]),w=C(window.location.search);w&&(S.getController()?.sendUserMessage(w),t.info(`Auto-prompt submitted`,{length:w.length}))}export{na as A,xi as B,ka as C,ia as D,aa as E,ra as F,Yn as H,Qr as I,Ci as L,$i as M,G as N,Ji as O,ta as P,Zr as R,Ma as S,fa as T,Kn as U,pr as V,Do as _,Is as a,Q as b,Es as c,As as d,Go as f,Oo as g,Eo as h,Ls as i,Zi as j,ea as k,Ss as l,Ro as m,vl as n,Cs as o,Wo as p,oc as r,Os as s,Hl as t,Ts as u,ko as v,Da as w,Ya as x,To as y,qi as z};
|