sliccy 6.96.4 → 6.96.6
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/node-server/bridge-security.js +6 -0
- package/dist/node-server/fetch-proxy-headers.d.ts +18 -2
- package/dist/node-server/fetch-proxy-headers.js +39 -4
- package/dist/node-server/routes/fetch-proxy.js +12 -1
- package/dist/ui/.vite/manifest.json +132 -132
- package/dist/ui/assets/SKILL-BCDMrL-b.js +1 -0
- package/dist/ui/assets/{account-store-CCKUJ4ge.js → account-store-DRj2SDg8.js} +1 -1
- package/dist/ui/assets/{account-store-DNHiaFJE.js → account-store-f_5Y3loE.js} +1 -1
- package/dist/ui/assets/{adobe-ChIBeQy8.js → adobe-BaKxV1Cm.js} +1 -1
- package/dist/ui/assets/{adobe-D9gzgSMY.js → adobe-DPqPVXTP.js} +1 -1
- package/dist/ui/assets/{apply-layout-BYNMmQ2A.js → apply-layout-Sl4iOs_f.js} +1 -1
- package/dist/ui/assets/{apps-BTXuGdF5.js → apps-BRfZSCY-.js} +1 -1
- package/dist/ui/assets/{azure-openai-BOCtD00s.js → azure-openai-BDGu5Z5A.js} +1 -1
- package/dist/ui/assets/{azure-openai-D6mfW32f.js → azure-openai-D6hCRHFS.js} +1 -1
- package/dist/ui/assets/{cerebras-9vVsMtpx.js → cerebras-BNuGY5Ld.js} +1 -1
- package/dist/ui/assets/{cerebras-xACPHJt5.js → cerebras-DEmdsUe4.js} +1 -1
- package/dist/ui/assets/{connect-surface-iUF4mFkU.js → connect-surface-C1tEQKLv.js} +1 -1
- package/dist/ui/assets/{fs-p11iQ-3k.js → fs-CfQp9efi.js} +2 -2
- package/dist/ui/assets/{fs-BOhjDrbI.js → fs-ChobgFEy.js} +1 -1
- package/dist/ui/assets/{github-ChJr1NBx.js → github-DUTugm3d.js} +1 -1
- package/dist/ui/assets/{github-copilot-Dz9cMkle.js → github-copilot-C101PYye.js} +1 -1
- package/dist/ui/assets/{github-copilot-CugymeLI.js → github-copilot-iVypX4UI.js} +1 -1
- package/dist/ui/assets/{github-install-Bnv462s_.js → github-install-BrTBTu2h.js} +1 -1
- package/dist/ui/assets/{github-CeKa_YoJ.js → github-n1RJGQHw.js} +2 -2
- package/dist/ui/assets/{github-zip-BmdjNKOq.js → github-zip-Ch3k6-sU.js} +1 -1
- package/dist/ui/assets/{js-realm-worker-BgF1E62V.js → js-realm-worker-CSuRptA4.js} +1 -1
- package/dist/ui/assets/{kernel-worker-BM4k_Mq_.js → kernel-worker-DA5hRJup.js} +30 -30
- package/dist/ui/assets/{local-llm-DWKa_3BZ.js → local-llm-Bp0r9Ihd.js} +1 -1
- package/dist/ui/assets/{local-llm-DP54TeOF.js → local-llm-DV5e3ywb.js} +1 -1
- package/dist/ui/assets/{main-CfMjfj4c.js → main-C6rR0w1B.js} +3 -3
- package/dist/ui/assets/{mount-B7OZ-qqc.js → mount-CApaXxHd.js} +2 -2
- package/dist/ui/assets/{mount-hjgE1SBL.js → mount-DuGV4gCw.js} +1 -1
- package/dist/ui/assets/{mount-recovery-BI-fVIQh.js → mount-recovery-CniXIkTB.js} +1 -1
- package/dist/ui/assets/{new-session-BYOnwOXr.js → new-session-CMaZ3GOC.js} +2 -2
- package/dist/ui/assets/{oauth-bootstrap-BJGdx242.js → oauth-bootstrap-k6EdFR1N.js} +2 -2
- package/dist/ui/assets/{openai-codex-bsR-NUrt.js → openai-codex-DXTTx20O.js} +1 -1
- package/dist/ui/assets/{openai-codex-BmtQpGAy.js → openai-codex-LPnPLUIv.js} +1 -1
- package/dist/ui/assets/{openrouter-BIGJTAft.js → openrouter-CmmwIHPt.js} +1 -1
- package/dist/ui/assets/{openrouter-3jV1AeTR.js → openrouter-DyEZMa_B.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-BifFmgDz.js → openrouter-oauth-C5YDWZza.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-BjZyQkXX.js → openrouter-oauth-CtAjoPMF.js} +1 -1
- package/dist/ui/assets/{panel-rpc-handlers-DvIejPh8.js → panel-rpc-handlers-D25baSPS.js} +2 -2
- package/dist/ui/assets/{panelize-shell-C2n0OG-k.js → panelize-shell-COz1Z7LB.js} +1 -1
- package/dist/ui/assets/{provider-Dse-s6lF.js → provider-Cy1-3xDc.js} +2 -2
- package/dist/ui/assets/{provider-CAkXxgvX.js → provider-lR4XaVo1.js} +1 -1
- package/dist/ui/assets/{provider-settings-DmMxRhIP.js → provider-settings-B_Av8-kE.js} +1 -1
- package/dist/ui/assets/{provider-settings-CnqPrGj-.js → provider-settings-DvBcrGSB.js} +1 -1
- package/dist/ui/assets/provider-store-access-BYG_vWXq.js +1 -0
- package/dist/ui/assets/{provider-store-access-RCssR_-b.js → provider-store-access-Dm9fer4P.js} +2 -2
- package/dist/ui/assets/{providers-Lvr_kwE3.js → providers-DMRr-d6b.js} +1 -1
- package/dist/ui/assets/{providers-hAtFQPTZ.js → providers-De4bg3HH.js} +2 -2
- package/dist/ui/assets/{quick-llm-BnASRrSi.js → quick-llm-DMWkcwCn.js} +1 -1
- package/dist/ui/assets/{recovery-screen-CMJdkCU-.js → recovery-screen-B33brCeF.js} +1 -1
- package/dist/ui/assets/{redirect-uri-B_tPO0rL.js → redirect-uri-DAG9cXSm.js} +1 -1
- package/dist/ui/assets/{session-freezer-oBR8W8ed.js → session-freezer-BxNDkAZg.js} +3 -3
- package/dist/ui/assets/{setup-feature-flags-remote-Bt8QE81j.js → setup-feature-flags-remote-BGZFr89t.js} +1 -1
- package/dist/ui/assets/{setup-standalone-prelude-MfnCRaqV.js → setup-standalone-prelude-DEhT6zS-.js} +1 -1
- package/dist/ui/assets/{setup-sudo-B17RSZcJ.js → setup-sudo-BD3B0lOG.js} +2 -2
- package/dist/ui/assets/{skills-DH5JJQCz.js → skills-BIpfkJWi.js} +1 -1
- package/dist/ui/assets/slicc-version-Ak3sAJAN.js +1 -0
- package/dist/ui/assets/{src-Bw7lN3n5.js → src-CG9Sp0SZ.js} +80 -76
- package/dist/ui/assets/{store-Bll-_FQw.js → store-Dl7CDFTf.js} +1 -1
- package/dist/ui/assets/{store-Yo1YLTQ2.js → store-pShZ-44M.js} +1 -1
- package/dist/ui/assets/{sudo-Cd1lq7Ra.js → sudo-CQOJDuEr.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-D5v0RaIF.js → upgrade-detection-o_fxk_9R.js} +1 -1
- package/dist/ui/assets/{wc-attach-CtIH1DsM.js → wc-attach-BbEnzTrf.js} +2 -2
- package/dist/ui/assets/{wc-extension-B-i04xyf.js → wc-extension-iLGxpkq2.js} +2 -2
- package/dist/ui/assets/{wc-float-label-Bj-0-MZA.js → wc-float-label-BATxvSb5.js} +1 -1
- package/dist/ui/assets/{wc-floatbar-online-Do-_H9l4.js → wc-floatbar-online-Dogbrrqe.js} +1 -1
- package/dist/ui/assets/{wc-follower-ZYKc5Ngx.js → wc-follower-ouRFKSCy.js} +3 -3
- package/dist/ui/assets/{wc-live-BZ6K2oFF.js → wc-live-ClwxmXsg.js} +4 -4
- package/dist/ui/assets/{wc-nav-Dx9PQgcL.js → wc-nav-Ck57tmuN.js} +2 -2
- package/dist/ui/assets/{wc-onboarding-CMR8g6kB.js → wc-onboarding-CCJ1abTB.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-CSxAzoAY.js → wc-placeholder-Du-3aOoc.js} +2 -2
- package/dist/ui/assets/{wc-settings--E4BUh2C.js → wc-settings-B9elNpIP.js} +2 -2
- package/dist/ui/assets/{wc-shell-BMEagEUk.js → wc-shell-DcossCvn.js} +3 -3
- package/dist/ui/assets/{wc-sprinkles-CgSplLen.js → wc-sprinkles-CGBq_Unu.js} +2 -2
- package/dist/ui/assets/{wc-tray-D7hcyDlz.js → wc-tray-BSghTy-9.js} +2 -2
- package/dist/ui/assets/{xai-grok-CJOfI1UD.js → xai-grok-BqZBRbDW.js} +1 -1
- package/dist/ui/assets/{xai-grok-C3BzCcaL.js → xai-grok-CAWad06z.js} +1 -1
- package/dist/ui/index.html +6 -6
- package/dist/ui/packages/webapp/index.html +6 -6
- package/package.json +1 -1
- package/dist/ui/assets/SKILL-DhKtVqb-.js +0 -1
- package/dist/ui/assets/provider-store-access-BOwZ1eu6.js +0 -1
- package/dist/ui/assets/slicc-version-CUg0SEkq.js +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-
|
|
2
|
-
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{Q as t,X as n,Z as r}from"./account-store-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-DMWkcwCn.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-DRj2SDg8.js","assets/preload-helper-Czpn1I53.js","assets/claude-model-version-DoVrYsKi.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-gbjkpjE_.js","assets/libesm-BI4UHVqp.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-BGeNrvQ4.js","assets/base64-DpPqYZJF.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-GRCyib6X.js","assets/float-topology-DiK91BlA.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-0AWfFTh5.js","assets/secrets-bridge-client-DCQ44RyR.js","assets/port-bridge-client-BhmNRlRv.js","assets/image-markers-BXtVm4og.js","assets/tool-ui-DfXu6quJ.js","assets/providers-De4bg3HH.js","assets/panel-rpc-B3MSVImO.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-ZLR7gmJ4.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{Q as t,X as n,Z as r}from"./account-store-DRj2SDg8.js";import{t as i}from"./preload-helper-Czpn1I53.js";import{o as a}from"./claude-model-version-DoVrYsKi.js";import{t as o}from"./logger-DDBAeTLF.js";import{t as s}from"./attachments-CByeG2Ru.js";import{t as c}from"./types-idfTVsM8.js";import{t as l}from"./icons-ZLR7gmJ4.js";import{c as u,l as d,n as f,r as ee,t as p,u as te}from"./record-C0lt6kKE.js";import{a as ne}from"./dictation-priming-CNllGgNq.js";import"./agent-message-to-chat-_cvF5A5g.js";var re=`---
|
|
3
3
|
writablePaths:
|
|
4
4
|
- /workspace/CLAUDE.md
|
|
5
5
|
visiblePaths:
|
|
@@ -152,7 +152,7 @@ ${n}
|
|
|
152
152
|
`}${s}\n`}async function xe(e){if(!e.model||!e.apiKey)return{restructured:!1,reason:`no-llm`};let t=e.memoryPath??me,n=``;try{let r=await e.vfs.readFile(t,{encoding:`utf-8`});n=typeof r==`string`?r:new TextDecoder().decode(r)}catch{return{restructured:!1,reason:`missing-file`}}let r=await b(e.vfs),i=y(r),a=i*pe;if(n.length<=a)return{restructured:!1,reason:`under-threshold`};v.info(`Cone memory over threshold — restructuring`,{size:n.length,budget:i,threshold:a,sessionCount:r});try{let r=await be({currentContent:n,budget:i,model:e.model,apiKey:e.apiKey,headers:e.headers,signal:e.signal});return await e.vfs.writeFile(t,r),v.info(`Cone memory restructured`,{before:n.length,after:r.length}),{restructured:!0}}catch(e){return v.warn(`Cone memory restructure failed — leaving appended content in place`,{error:e instanceof Error?e.message:String(e)}),{restructured:!1,reason:`error`}}}var x=o(`agentic-memory`),Se=`/shared/MEMORY.md`,Ce=1200,we=e=>[e.memoryPath],Te=e=>[`/sessions/`,`/shared/`,...oe(e)],Ee=`awk.cat.cp.cut.date.diff.du.echo.file.find.grep.head.jq.ls.mkdir.mount.mv.nl.od.printf.readlink.sed.sort.stat.tail.touch.tr.uniq.upskill.wc.xxd`.split(`.`),De=new Set([`writablePaths`,`visiblePaths`,`allowedCommands`]),Oe=new Set([`model`,`timeoutSeconds`,`thinkingLevel`]),ke=`medium`,S=3e4;function C(e){return e===`cone`?`memory-curator`:`memory-curator-${e}`}function w(e){let t=C(e);return Ae.test(t)?t:C(p)}var Ae=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/;function T(e){return`/scoops/agent-${w(e)}`}var E=T(p);function je(e){return h({parentJid:null,folder:e?.folder??`cone`})}function D(e,t){if(t.root===g.root)return e;if(e===g.memoryPath)return t.memoryPath;if(e===`/workspace/skills`||e.startsWith(`/workspace/skills/`))return e;let n=`${g.root}/`;return e===g.root?t.root:e.startsWith(n)?`${t.root}/${e.slice(n.length)}`:e}function Me(e,t){let n=`${m}/`,r=e=>e.some(e=>n.startsWith(e.endsWith(`/`)?e:`${e}/`)),i=e.map(e=>D(e,t));return r(e)&&!r(i)&&i.push(n),i}async function Ne(e){try{if(e.signal?.aborted)return{ok:!1,reason:`aborted`,legacyFallbackSafe:!1};let t=je(e.cone),n=T(e.cone?.folder??`cone`),r=await Pe(e.vfs,t),i=F(e.sessionArchivePath);try{await Ue(e.vfs,t.memoryPath,e.sessionArchivePath)}catch(e){return{ok:!1,reason:`snapshot: ${I(e)}`,legacyFallbackSafe:!0}}let a=Ge(r,Ke(qe(r.promptTemplate,{MEMORY_PATH:i,SESSION_ARCHIVE_PATH:e.sessionArchivePath,SESSION_COUNT:String(e.sessionCount),BUDGET_CHARS:String(y(e.sessionCount)),SCRATCH_DIR:n,TODAY:e.today??new Date().toISOString().slice(0,10)}),n),e.sessionArchivePath,t,e.cone);e.signal&&(a.signal=e.signal);let o=await Je(Promise.resolve().then(()=>e.spawn(a)),r.timeoutSeconds*1e3+S,e.signal);if(o.type===`timeout`)return x.warn(`Agentic memory wait timed out past the in-run bound + grace`,{timeoutSeconds:r.timeoutSeconds,graceMs:S}),{ok:!1,reason:`timeout`,legacyFallbackSafe:!1};if(o.type===`aborted`)return{ok:!1,reason:`aborted`,legacyFallbackSafe:!1};if(o.type===`error`)return{ok:!1,reason:I(o.error),legacyFallbackSafe:!0};if(o.result.exitCode!==0){let e=(o.result.finalText??``).startsWith(ue);return{ok:!1,reason:o.result.finalText||`exit-${o.result.exitCode}`,legacyFallbackSafe:!e}}return{ok:!0,report:o.result.finalText}}catch(e){return x.warn(`Agentic memory pass failed`,{error:I(e)}),{ok:!1,reason:I(e),legacyFallbackSafe:!1}}}async function Pe(e,t=g){try{let n=await e.readFile(Se,{encoding:`utf-8`});return O(typeof n==`string`?n:new TextDecoder().decode(n),t)}catch(e){return x.warn(`Could not load valid MEMORY.md; using built-in default`,{error:I(e)}),O(re,t)}}function O(e,t=g){let n=e.replace(/^\uFEFF/,``).replace(/\r\n?/g,`
|
|
153
153
|
`).match(/^---\s*\n([\s\S]*?)\n---\s*\n([\s\S]*)$/);if(!n?.[2].trim())throw Error(`MEMORY.md requires frontmatter and a prompt`);let r=Ie(n[1]),i=A(r,`writablePaths`,we(t));if(i.length===0)throw Error(`writablePaths must not be empty`);j(i,`writablePaths`);let a=A(r,`visiblePaths`,Te(t));j(a,`visiblePaths`);let o=Ve(r.timeoutSeconds),s=Be(r.model,`model`);return{writablePaths:i.map(e=>D(e,t)),visiblePaths:Me(a,t),allowedCommands:[...new Set([...Ee,...A(r,`allowedCommands`,[])])],...s?{model:s}:{},thinkingLevel:Fe(r.thinkingLevel),timeoutSeconds:o,promptTemplate:n[2].trim()}}function Fe(e){if(e===void 0)return ke;if(typeof e!=`string`||!le(e))throw Error(`thinkingLevel must be one of ${_.join(`, `)}`);return e}function Ie(e){let t={},n=e.split(`
|
|
154
154
|
`);for(let e=0;e<n.length;e+=1){let r=n[e];if(!r.trim()||r.trimStart().startsWith(`#`))continue;let i=r.match(/^([A-Za-z][A-Za-z0-9]*):\s*(.*)$/);if(!i)throw Error(`Invalid frontmatter line: ${r}`);let[,a,o]=i;if(De.has(a)){let r=Le(n,e,o);t[a]=r.value,e=r.lastIndex}else if(Oe.has(a)&&o.trim())t[a]=k(o);else throw Error(`Unsupported or empty frontmatter field: ${a}`)}return t}function Le(e,t,n){if(n.trim()){let e=n.trim();if(!e.startsWith(`[`)||!e.endsWith(`]`))throw Error(`Expected an array`);let r=e.slice(1,-1).trim();return{value:r?Re(r):[],lastIndex:t}}let r=[],i=t;for(let n=t+1;n<e.length;n+=1){let t=e[n].match(/^\s+-\s+(.+)$/);if(!t)break;r.push(k(ze(t[1]))),i=n}return{value:r,lastIndex:i}}function Re(e){let t=[],n=0,r;for(let i=0;i<e.length;i+=1){let a=e[i];a===`"`||a===`'`?r=r===a?void 0:r??a:a===`,`&&!r&&(t.push(k(e.slice(n,i))),n=i+1)}if(r)throw Error(`Unclosed quoted value`);return t.push(k(e.slice(n))),t}function ze(e){let t;for(let n=0;n<e.length;n+=1){let r=e[n];if(r===`"`||r===`'`)t=t===r?void 0:t??r;else if(r===`#`&&!t&&(n===0||/\s/.test(e[n-1])))return e.slice(0,n).trimEnd()}return e}function k(e){let t=e.trim();if(!t)throw Error(`Empty frontmatter value`);let n=t[0];if((n===`"`||n===`'`)&&t.at(-1)===n)return t.slice(1,-1);if(n===`"`||n===`'`)throw Error(`Unclosed quoted value`);return t}function A(e,t,n){let r=e[t];if(r===void 0)return[...n];if(!Array.isArray(r)||r.some(e=>!e))throw Error(`${t} is invalid`);return[...r]}function Be(e,t){if(e!==void 0){if(typeof e!=`string`||!e)throw Error(`${t} is invalid`);return e}}function Ve(e){if(e===void 0)return 600;if(typeof e!=`string`)throw Error(`timeoutSeconds is invalid`);let t=Number(e);if(!Number.isFinite(t)||t<=0)throw Error(`timeoutSeconds must be positive`);return Math.min(t,Ce)}function j(e,t){if(e.some(e=>!e.startsWith(`/`)||e.includes(`\0`)||t===`writablePaths`&&e===`/`))throw Error(`${t} must contain absolute VFS paths`)}function M(e){return`/sessions/.curated/${e.slice(e.lastIndexOf(`/`)+1)}`}function N(e){return`/sessions/.curation/${e.slice(e.lastIndexOf(`/`)+1)}`}function P(e){return`${N(e)}/base.md`}function F(e){return`${N(e)}/draft.md`}function He(e){return`${N(e)}/status.json`}async function Ue(e,t,n){let r=``;try{let n=await e.readFile(t,{encoding:`utf-8`});r=typeof n==`string`?n:new TextDecoder().decode(n)}catch{}await e.mkdir(N(n),{recursive:!0}),await e.writeFile(P(n),r),await e.writeFile(F(n),r)}function We(e,t,n){let r=e.map(e=>e===t?n:e);return r.includes(n)?r:[...r,n]}function Ge(e,t,n,r,i){let a=e.model===`parent`||e.model===`cone`,o=P(n),s=F(n);return{cwd:r.root,writablePaths:We(e.writablePaths,r.memoryPath,s),visiblePaths:[...e.visiblePaths,`${N(n)}/`],allowedCommands:e.allowedCommands,prompt:t,thinkingLevel:e.thinkingLevel,persistSession:!0,name:w(i?.folder??`cone`),...i?.jid?{parentJid:i.jid}:{},notifyOnComplete:!0,successReceiptPath:M(n),mergeOnSuccess:{targetPath:r.memoryPath,basePath:o,draftPath:s},outcomeReceiptPath:He(n),maxWallClockMs:e.timeoutSeconds*1e3,...!a&&e.model?{modelId:e.model}:{}}}function Ke(e,t){return t===E?e:e.replaceAll(E,t)}function qe(e,t){let n=e;for(let[e,r]of Object.entries(t))n=n.replaceAll(`{{${e}}}`,r);return n}function Je(e,t,n){return new Promise(r=>{let i=!1,a=e=>{i||(i=!0,clearTimeout(s),n?.removeEventListener(`abort`,o),r(e))},o=()=>a({type:`aborted`}),s=setTimeout(()=>a({type:`timeout`}),t);n?.addEventListener(`abort`,o,{once:!0}),e.then(e=>a({type:`result`,result:e}),e=>a({type:`error`,error:e}))})}function I(e){return e instanceof Error?e.message:String(e)}var L=`/sessions`,R=`/sessions/index.json`;async function z(e){try{let t=await e.readFile(R,{encoding:`utf-8`}),n=typeof t==`string`?t:new TextDecoder().decode(t),r=JSON.parse(n);return Array.isArray(r)?r:[]}catch{return[]}}function B(e){return`${L}/${e.filename}`}function V(e){let t=e,n=`Untitled`,r={},i=t.match(/^---\n([\s\S]*?)\n---\n+/);if(i){t=t.slice(i[0].length);let e=U(i[1],`cost`),a=U(i[1],`models`);e&&(r.cost=e),a&&(r.models=a);let o=i[1].match(/^cone:\s*(.+?)\s*$/m)?.[1];o&&(r.cone=o);let s=i[1].match(/^coneLabel:\s*(.+?)\s*$/m)?.[1];s&&(r.coneLabel=H(s)),/^memorySkipped:\s*true\s*$/m.test(i[1])&&(r.memorySkipped=!0);let c=i[1].match(/^title:\s*(.+?)\s*$/m);c&&(n=H(c[1]))}let a=t.match(/<!-- slicc:session-data\n([\s\S]*?)\n-->\n*/);if(a){try{let e=a[1].replace(/-- >/g,`-->`),t=JSON.parse(e);if(Array.isArray(t))return{title:n,messages:t,...r}}catch{}t=t.replace(/<!-- slicc:session-data\n[\s\S]*?\n-->\n*/,``)}return t=t.replace(/^#\s+[^\n]*\n+/,``),{title:n,messages:Ye(t),...r}}function H(e){let t=e.trim();if(!t.startsWith(`"`))return t;try{let e=JSON.parse(t);if(typeof e==`string`)return e}catch{}return t.replace(/^"|"$/g,``)}function U(e,t){let n=RegExp(`^${t}:\\s*(.+?)\\s*$`,`m`).exec(e)?.[1];if(n)try{return JSON.parse(n)}catch{return}}function Ye(e){let t=[],n=/^## (User|Assistant)\s*\n/gm,r=[],i;for(;(i=n.exec(e))!==null;)r.push({role:i[1]===`User`?`user`:`assistant`,start:i.index,bodyStart:i.index+i[0].length});for(let n=0;n<r.length;n++){let i=n+1<r.length?r[n+1].start:e.length,a=e.slice(r[n].bodyStart,i).trim();t.push({id:`frozen-${n}`,role:r[n].role,content:a,timestamp:0})}return t}function W(e){let t=``;for(let n of e){let e=n.role===`user`?`User`:`Assistant`,r=n.role===`user`?ne(n.content):n.content;if(t+=`## ${e}\n${r}\n\n`,n.attachments?.length&&(t+=`Attachments:\n${n.attachments.map(e=>`- ${s(e)}`).join(`
|
|
155
|
-
`)}\n\n`),n.toolCalls)for(let e of n.toolCalls)t+=`### Tool: ${e.name}\nInput: ${JSON.stringify(e.input,null,2)}\nResult: ${e.result??``}\n\n`}return t}var Xe=e({PENDING_SESSION_ATTEMPT_LIMIT:()=>3,SESSIONS_INDEX_PATH:()=>R,curateFrozenSessionMemories:()=>et,enrichPendingSession:()=>Q,freezeConeSession:()=>$e,listPendingEnrichments:()=>Ot,markSnapshotUnavailable:()=>Kt,processPendingSessions:()=>kt,readSessionsIndex:()=>z}),G=o(`session-freezer`),Ze=4,K=2048,q=40,Qe=`${L}/attachments`;async function $e(e){let t=await gt(e.sessionStore,J(e));if(!t||t.messages.length<Ze)return G.info(`Skipping freeze: session below threshold or missing`,{messageCount:t?.messages.length??0}),null;let n=Y(t.messages),r=e.mode??`full`,i=r===`full`&&!!(e.apiKey&&e.model);!e.agenticMemorySpawn&&e.memory!==`skip`&&await rt(e,n,i);let a=await it(e,n,i)||St(t.messages);return await at(e,t,a,r,i?await tt(e,a):void 0,!!e.agenticMemorySpawn&&e.memory!==`skip`)}async function et(e,t){let n=Y(t.archive.messages),r;try{r=await Ne({spawn:e.agenticMemorySpawn,vfs:e.vfs,sessionArchivePath:B(t),sessionCount:await b(e.vfs),...e.cone?{cone:e.cone}:{}})}catch(e){r={ok:!1,reason:e instanceof Error?e.message:String(e),legacyFallbackSafe:!1}}if(r.ok){let n=await Vt(e.vfs,t.filename);return await Mt(e.vfs,t.filename),n?(delete t.memoryPending,G.info(`Agentic memory pass completed`,{filename:t.filename}),n):(G.info(`Agentic memory pass completed; index entry already gone`,{filename:t.filename}),null)}return await Ut(e.vfs,t.filename,r.reason),r.legacyFallbackSafe?(G.warn(`Agentic memory pass failed after finishing — falling back to legacy extraction`,{filename:t.filename,reason:r.reason}),await rt(e,n,!0),null):(G.warn(`Agentic memory pass unfinished — entry stays pending for boot catch-up`,{filename:t.filename,reason:r.reason,attemptLimit:3}),null)}async function tt(e,t){try{return nt(await(e.pickIcon??(await i(async()=>{let{pickLucideIcon:e}=await import(`./quick-llm-
|
|
155
|
+
`)}\n\n`),n.toolCalls)for(let e of n.toolCalls)t+=`### Tool: ${e.name}\nInput: ${JSON.stringify(e.input,null,2)}\nResult: ${e.result??``}\n\n`}return t}var Xe=e({PENDING_SESSION_ATTEMPT_LIMIT:()=>3,SESSIONS_INDEX_PATH:()=>R,curateFrozenSessionMemories:()=>et,enrichPendingSession:()=>Q,freezeConeSession:()=>$e,listPendingEnrichments:()=>Ot,markSnapshotUnavailable:()=>Kt,processPendingSessions:()=>kt,readSessionsIndex:()=>z}),G=o(`session-freezer`),Ze=4,K=2048,q=40,Qe=`${L}/attachments`;async function $e(e){let t=await gt(e.sessionStore,J(e));if(!t||t.messages.length<Ze)return G.info(`Skipping freeze: session below threshold or missing`,{messageCount:t?.messages.length??0}),null;let n=Y(t.messages),r=e.mode??`full`,i=r===`full`&&!!(e.apiKey&&e.model);!e.agenticMemorySpawn&&e.memory!==`skip`&&await rt(e,n,i);let a=await it(e,n,i)||St(t.messages);return await at(e,t,a,r,i?await tt(e,a):void 0,!!e.agenticMemorySpawn&&e.memory!==`skip`)}async function et(e,t){let n=Y(t.archive.messages),r;try{r=await Ne({spawn:e.agenticMemorySpawn,vfs:e.vfs,sessionArchivePath:B(t),sessionCount:await b(e.vfs),...e.cone?{cone:e.cone}:{}})}catch(e){r={ok:!1,reason:e instanceof Error?e.message:String(e),legacyFallbackSafe:!1}}if(r.ok){let n=await Vt(e.vfs,t.filename);return await Mt(e.vfs,t.filename),n?(delete t.memoryPending,G.info(`Agentic memory pass completed`,{filename:t.filename}),n):(G.info(`Agentic memory pass completed; index entry already gone`,{filename:t.filename}),null)}return await Ut(e.vfs,t.filename,r.reason),r.legacyFallbackSafe?(G.warn(`Agentic memory pass failed after finishing — falling back to legacy extraction`,{filename:t.filename,reason:r.reason}),await rt(e,n,!0),null):(G.warn(`Agentic memory pass unfinished — entry stays pending for boot catch-up`,{filename:t.filename,reason:r.reason,attemptLimit:3}),null)}async function tt(e,t){try{return nt(await(e.pickIcon??(await i(async()=>{let{pickLucideIcon:e}=await import(`./quick-llm-DMWkcwCn.js`).then(e=>e.n);return{pickLucideIcon:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29]))).pickLucideIcon)({subject:`"${t}" — an archived chat session`})??void 0)}catch(e){G.warn(`Icon pick failed (freeze still proceeds)`,{error:e instanceof Error?e.message:String(e)});return}}function nt(e){if(e)return l(e)?e:void 0}async function rt(e,r,i){if(!i){G.info(`LLM unavailable — skipping memory extraction; freezing anyway`);return}let a=``;try{a=await t({messages:r,instruction:n,model:e.model,apiKey:e.apiKey,maxTokens:K,headers:e.headers})}catch(e){G.warn(`Memory extraction call failed (freeze still proceeds)`,{error:e instanceof Error?e.message:String(e)});return}if(!a.trim()||a.trim()===`NONE`){G.info(`Memory extraction returned no durable memories`);return}try{await Et(e.vfs,ht(J(e)),a.trim(),`new-session`,{model:e.model,apiKey:e.apiKey,headers:e.headers}),G.info(`Memory extracted and appended on new-session`)}catch(e){G.warn(`Memory append failed`,{error:e instanceof Error?e.message:String(e)})}}async function it(e,n,i){if(!i)return``;try{return xt(await t({messages:n,instruction:r,model:e.model,apiKey:e.apiKey,maxTokens:q,headers:e.headers}))}catch(e){return G.warn(`Title generation call failed (using heuristic)`,{error:e instanceof Error?e.message:String(e)}),``}}async function at(e,t,n,r,i,a=!1){let o=new Date().toISOString(),s=crypto.randomUUID(),c=r===`quick`?`pending-${wt()}.md`:`${o.replace(/[:.]/g,`-`)}-${Ct(n)}.md`,l=ot(t.messages),u=J(e),d={cone:u,...u!==`cone`&&e.cone?.label?{coneLabel:e.cone.label}:{}},f={filename:c,sessionId:s,title:n,frozenAt:o,messageCount:t.messages.length,...l??{},...d,...i?{icon:i}:{},...r===`quick`?{pendingEnrichment:!0}:{},...a?{memoryPending:!0}:{},...e.memory===`skip`?{memorySkipped:!0}:{}};try{await X(e.vfs,L);let r=await lt(e.vfs,t.messages,c.replace(/\.md$/,``)),i={id:t.id,title:n,frozenAt:o,createdAt:t.createdAt,updatedAt:t.updatedAt,messageCount:t.messages.length,messages:r,...l??{},...d,...e.memory===`skip`?{memorySkipped:!0}:{}},a=bt(i);return await e.vfs.writeFile(`${L}/${c}`,a),await Dt(e.vfs,f),await e.vfs.flush(),G.info(`Cone session frozen`,{filename:c,title:n,cone:u,messageCount:t.messages.length}),{...f,archive:i}}catch(e){return G.warn(`Failed to write frozen session to VFS`,{error:e instanceof Error?e.message:String(e)}),null}}function ot(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||!ct(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 st(e){return typeof e==`number`&&Number.isFinite(e)}function ct(e){let{cost:t}=e;return[e.input,e.output,e.cacheRead,e.cacheWrite].every(st)&&[t.input,t.output,t.cacheRead,t.cacheWrite,t.total].every(st)}async function lt(e,t,n){let r={vfs:e,archiveDir:`${Qe}/${n}`,copiedPaths:new Map,fileIndex:0},i=[];for(let e of t){if(!e.attachments?.some(ft)){i.push(e);continue}let t=[];for(let n of e.attachments)t.push(await ut(r,n));i.push({...e,attachments:t})}return i}async function ut(e,t){if(!ft(t))return t;let n=e.copiedPaths.get(t.path);if(n)return{...t,path:n};let r=await dt(e.vfs,t.path);if(!r)return mt(t);let i=t.name.replace(/[^A-Za-z0-9._-]+/g,`_`)||`attachment`,a=`${e.archiveDir}/${e.fileIndex++}-${i}`;return await X(e.vfs,e.archiveDir),await e.vfs.writeFile(a,r),e.copiedPaths.set(t.path,a),{...t,path:a}}async function dt(e,t){try{if(!await pt(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 ft(e){return typeof e.path==`string`&&e.path.startsWith(`/tmp/`)&&e.data===void 0&&e.text===void 0}async function pt(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 mt(e){let{path:t,...n}=e;return{...n,error:e.error??`Archived attachment file is missing or unsafe to preserve.`}}function J(e){return e.cone?.folder||`cone`}function ht(e){return h({parentJid:null,folder:e}).memoryPath}async function gt(e,t){let n=f({folder:t});try{return await e.load(n)}catch(e){return G.warn(`Failed to load cone chat session`,{sessionId:n,error:e instanceof Error?e.message:String(e)}),null}}function Y(e){return e.map(e=>({role:e.role,content:[{type:`text`,text:e.content}],timestamp:e.timestamp}))}var _t=`<!-- slicc:session-data
|
|
156
156
|
`,vt=`
|
|
157
157
|
-->`;function yt(e){return e.map(e=>{let t={id:e.id,role:e.role,content:e.content,timestamp:e.timestamp};return e.attachments?.length&&(t.attachments=e.attachments),e.toolCalls?.length&&(t.toolCalls=e.toolCalls.map(e=>({id:e.id,name:e.name,input:e.input,...e.result===void 0?{}:{result:e.result},...e.isError?{isError:e.isError}:{}}))),e.source&&(t.source=e.source),e.channel&&(t.channel=e.channel),t})}function bt(e){let t=(e.cost?`cost: ${JSON.stringify(e.cost)}\n`:``)+(e.models?`models: ${JSON.stringify(e.models)}\n`:``),n=(e.cone?`cone: ${e.cone}\n`:``)+(e.coneLabel?`coneLabel: ${JSON.stringify(e.coneLabel)}\n`:``)+(e.memorySkipped?`memorySkipped: true
|
|
158
158
|
`:``),r=`---\nid: ${e.id}\ntitle: ${JSON.stringify(e.title)}\nfrozenAt: ${e.frozenAt}\ncreatedAt: ${e.createdAt}\nupdatedAt: ${e.updatedAt}\nmessageCount: ${e.messageCount}\n`+t+n+`---
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./feature-flags-ByMXaIc4.js";import{h as t,n,t as r}from"./tray-runtime-config-D7cmCcHJ.js";import{n as i,r as a}from"./main-
|
|
1
|
+
import{n as e}from"./feature-flags-ByMXaIc4.js";import{h as t,n,t as r}from"./tray-runtime-config-D7cmCcHJ.js";import{n as i,r as a}from"./main-C6rR0w1B.js";var o=3e3;async function s(t,n){let r=i(n.storage);try{let i=new URL(`/api/flags`,`${n.workerBaseUrl.replace(/\/+$/,``)}/`);i.searchParams.set(`float`,t);let s=await c(i.toString(),n.fetchImpl??fetch,n.timeoutMs??o);if(!s)return;a(r,t,s),e(t,s)}catch{}}async function c(e,t,n){let r=new AbortController,i;try{let a=new Promise(e=>{i=setTimeout(()=>{r.abort(),e(null)},n)}),o=t(e,{cache:`no-store`,headers:{Accept:`application/json`},signal:r.signal}).then(async e=>e.ok?l(await e.json()):null).catch(()=>null);return await Promise.race([o,a])}catch{return null}finally{i!==void 0&&clearTimeout(i)}}function l(e){return!u(e)||!u(e.flags)||Object.values(e.flags).some(e=>typeof e!=`string`)?null:e.flags}function u(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function d(e,t){return s(e,{workerBaseUrl:f(t),storage:t.storage})}function f(e){let i=p(e.storage),a=t(e.envBaseUrl??null);if(i)return i;if(a)return a;if(!e.isDev)try{let t=new URL(e.locationHref);if(t.protocol===`http:`||t.protocol===`https:`)return t.origin}catch{}return e.isDev?n:r}function p(e){try{return t(e?.getItem(`slicc.trayWorkerBaseUrl`)??null)}catch{return null}}export{d as refreshFeatureFlagsForPage};
|
package/dist/ui/assets/{setup-standalone-prelude-MfnCRaqV.js → setup-standalone-prelude-DEhT6zS-.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/extension-bridge-transport-D3PItLFo.js","assets/logger-DDBAeTLF.js","assets/pending-request-table-Dgn6qYdL.js","assets/lick-ws-bridge-yklVm5en.js","assets/logger-BoSvu4mW.js","assets/tray-leader-iVJTGwuf.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/proxied-fetch-BGeNrvQ4.js","assets/preload-helper-Czpn1I53.js","assets/base64-DpPqYZJF.js","assets/src-CAWTvdAa.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-GRCyib6X.js","assets/runtime-env-CgsZ7LTp.js","assets/runtime-env-E-i2SW1s.js","assets/tray-runtime-config-D7cmCcHJ.js","assets/messages-BD4p8GuF.js","assets/db-cKsBsMMN.js","assets/cdp-BAGGi_P9.js","assets/navigation-watcher-CcKsLKw9.js","assets/handoff-link-BM4ctkE8.js","assets/remote-cdp-transport-CgOXLjZ8.js","assets/tray-sync-protocol-BZ5yhJH9.js","assets/main-cherry-L2scWl6W.js","assets/synthetic-cdp-transport-Ds83IPjw.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{t as e}from"./preload-helper-Czpn1I53.js";import{t}from"./logger-DDBAeTLF.js";import{c as n,o as r,s as i}from"./src-CAWTvdAa.js";import"./proxied-fetch-BGeNrvQ4.js";import{t as a}from"./runtime-env-Dlaokqg1.js";import{a as o,o as s,s as c}from"./api-endpoint-GRCyib6X.js";import"./runtime-env-CgsZ7LTp.js";import"./messages-BD4p8GuF.js";import{d as l,s as u,t as d,u as f}from"./tray-runtime-config-D7cmCcHJ.js";import{t as p}from"./setup-sudo-
|
|
2
|
+
import{t as e}from"./preload-helper-Czpn1I53.js";import{t}from"./logger-DDBAeTLF.js";import{c as n,o as r,s as i}from"./src-CAWTvdAa.js";import"./proxied-fetch-BGeNrvQ4.js";import{t as a}from"./runtime-env-Dlaokqg1.js";import{a as o,o as s,s as c}from"./api-endpoint-GRCyib6X.js";import"./runtime-env-CgsZ7LTp.js";import"./messages-BD4p8GuF.js";import{d as l,s as u,t as d,u as f}from"./tray-runtime-config-D7cmCcHJ.js";import{t as p}from"./setup-sudo-BD3B0lOG.js";var m=`role`;function h(e){try{let t=new URL(e);return`${t.protocol===`wss:`?`https:`:`http:`}//${t.host}`}catch{return null}}function g(e){try{let t=new URL(e);return`${t.protocol}//${t.host}/licks-ws`}catch{return null}}function _(e){let t;try{t=new URLSearchParams(e)}catch{return null}let a=t.get(n),o=t.get(i);if(!a||!o||!/^wss?:\/\//.test(a))return null;let s=t.get(m),c=s===`leader`||s===`follower`?s:null;return{url:a,subprotocol:`${r}${o}`,token:o,apiBaseUrl:h(a),lickWsUrl:g(a),role:c}}function v(e,t,n){if(t){try{if(new URL(e).searchParams.has(`detached`))return`extension-detached`}catch{}return`extension`}try{let t=new URL(e);if(t.searchParams.get(`connect`)===`1`)return`connect`;if(t.searchParams.get(`runtime`)===`hosted-leader`)return`hosted-leader`;if(t.searchParams.get(`cherry`)===`1`)return`cherry`;let r=n===void 0?typeof window<`u`?window.localStorage:null:n;return f(e,r)?`follower`:b(t)?`electron-overlay`:`standalone`}catch{return`standalone`}}function y(e,t){return e===`electron-overlay`||e===`hosted-leader`||e===`standalone`&&t}function b(e){return e.pathname===`/electron`||e.pathname===`/electron/`||e.searchParams.get(`runtime`)===`electron-overlay`}t(`stale-asset`);var x=`slicc-stale-asset-reload`;function S(e,t){if(typeof BroadcastChannel!=`function`)return()=>{};let n=new BroadcastChannel(x),r=n=>{let r=n.data;r?.type===`stale-asset-reload`&&r.instanceId===e&&t(r.replayTurn===!0)};return n.addEventListener(`message`,r),()=>{n.removeEventListener(`message`,r),n.close()}}var C=`slicc:stale-asset-reloaded-at`,w=6e4,T=`slicc:stale-asset-replay`;function E(e=window.sessionStorage){try{e.setItem(T,`1`)}catch{}}function D(e=window.sessionStorage){try{return e.getItem(T)===`1`&&(e.removeItem(T),!0)}catch{return!1}}function O(){return{reload:()=>window.location.reload(),storage:window.sessionStorage,now:()=>Date.now(),windowMs:w,storageKey:C}}function k(e,t,n){return e===null||t-e>=n}function A(e=O()){let t;try{t=e.storage.getItem(e.storageKey)}catch{return!1}let n=t===null?null:Number(t),r=n!==null&&Number.isFinite(n)?n:null,i=e.now();if(!k(r,i,e.windowMs))return!1;try{e.storage.setItem(e.storageKey,String(i))}catch{return!1}return e.reload(),!0}var j=null,M=null;function N(e){j||(M={...O(),...e},j=e=>{A(M)&&e.preventDefault()},window.addEventListener(`vite:preloadError`,j))}var P=null;function F(e){return P||(P=S(e,e=>{e&&E(),A(M??void 0)}),P)}var I=`slicc-cdp-superseded-banner`;function L(e){if(e.getElementById(I))return;let t=e.createElement(`div`);t.id=I,t.setAttribute(`role`,`alert`),t.textContent=`Another SLICC tab or window has taken control of this browser instance. Only one tab can drive the browser per instance — close the other tabs, then reload this page to resume.`,t.style.cssText=[`position:fixed`,`top:0`,`left:0`,`right:0`,`z-index:2147483647`,`padding:10px 16px`,`background:#b3261e`,`color:#fff`,`font:13px/1.4 system-ui,sans-serif`,`text-align:center`,`box-shadow:0 1px 4px rgba(0,0,0,0.3)`].join(`;`),e.body.appendChild(t)}function R(){return typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID():`slicc-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function z(e){let t;try{t=new URLSearchParams(e)}catch{return null}if(t.get(`slicc`)!==`leader`)return null;let n=t.get(`ext`);return n?{extensionId:n}:null}var B=[100,200,400,800,1600];async function V(e,t,n,r=B,i=e=>new Promise(t=>setTimeout(t,e))){let a=r.length+1,o=null;for(let s=0;s<a;s++)try{await e.connect(t),s>0&&n.info(`CDP bridge connect succeeded after retry`,{attempt:s+1});return}catch(e){o=e,s<r.length&&await i(r[s]??0)}n.warn(`Initial CDP connect failed after retries; worker-forwarded commands will retry on demand`,o instanceof Error?o.message:String(o))}async function H(t,n,r){let{ExtensionBridgeTransport:i}=await e(async()=>{let{ExtensionBridgeTransport:e}=await import(`./extension-bridge-transport-D3PItLFo.js`);return{ExtensionBridgeTransport:e}},__vite__mapDeps([0,1,2])),{mapDiscoveryPayloadToLickEvent:a,mapNavigatePayloadToLickEvent:o}=await e(async()=>{let{mapDiscoveryPayloadToLickEvent:e,mapNavigatePayloadToLickEvent:t}=await import(`./lick-ws-bridge-yklVm5en.js`);return{mapDiscoveryPayloadToLickEvent:e,mapNavigatePayloadToLickEvent:t}},__vite__mapDeps([3,1,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18])),s=null,c=[],l=!1,u=e=>{s=e;for(let t of c)e.sendForwardedLick(t);c.length=0},d=e=>{if(e){if(s){s.sendForwardedLick(e);return}c.length>=50&&(c.shift(),l||(l=!0,r.warn(`extension-bridge lick buffer overflow (cap 50); dropping oldest pending licks until the kernel client attaches`))),c.push(e)}},f=new t(new i({extensionId:n,onLick:e=>{d(o(e))},onDiscovery:e=>{d(a(e))},onOpenSettings:()=>{globalThis.dispatchEvent(new CustomEvent(`slicc:open-settings-from-panel`))}}));return await V(f,void 0,r),{browser:f,attachLickForwardingClient:u}}async function U(t){let{runtimeMode:n,envBaseUrl:r,window:i,log:f}=t,m=n===`electron-overlay`;f.info(`setting up standalone page runtime (BrowserAPI + CDP)`,{runtimeMode:n});let{BrowserAPI:h}=await e(async()=>{let{BrowserAPI:e}=await import(`./cdp-BAGGi_P9.js`);return{BrowserAPI:e}},__vite__mapDeps([19,1,2,4,20,21,10,22,23]));await p({log:f});let g,v,b,x=null,S=null,C=null,w=null,T,E=n===`cherry`?null:z(i.location.search),D=!!E&&a(),O=n===`cherry`||D?null:_(i.location.search);O?.apiBaseUrl&&(x=O.apiBaseUrl,c(O.apiBaseUrl),S=O.token,o(O.token)),O?.lickWsUrl&&(C=O.lickWsUrl);let k=n===`cherry`||D||O!==null,A=await u(),j=y(n,A!==null)?d:null;if(await l({locationHref:i.location.href,storage:i.localStorage,envBaseUrl:r,defaultWorkerBaseUrl:j,runtimeConfigFetcher:async()=>A}),n===`cherry`){let{setupCherryFollower:t}=await e(async()=>{let{setupCherryFollower:e}=await import(`./main-cherry-L2scWl6W.js`);return{setupCherryFollower:e}},__vite__mapDeps([24,1,10,2,19,4,20,21,22,23,25])),n=await t();g=n.browser,v=n.joinUrl,b=n.transport}else if(E&&a()){f.info(`Routing CDP through the extension bridge (leader tab)`);let e=await H(h,E.extensionId,f);g=e.browser,T=e.attachLickForwardingClient,w=E.extensionId,s(E.extensionId)}else{g=new h,O&&f.info(`Routing CDP through local standalone bridge`,{url:O.url,role:O.role??`(unset)`});let e=O?{url:O.url,protocols:O.subprotocol}:void 0;O?.role===`follower`?(f.info(`Skipping CDP connect for follower overlay tab`),g.primeConnectOptions(e)):(await V(g,e,f),g.setCdpSupersededHandler(()=>L(i.document)))}let M=g.getTransport();return globalThis.__slicc_browser=g,{browser:g,realCdpTransport:M,hasLocalCdpSurface:k,cherryJoinUrl:v,cherryTransport:b,instanceId:R(),isElectronOverlay:m,localApiBaseUrl:x,bridgeToken:S,localLickWsUrl:C,extensionDelegateId:w,attachLickForwardingClient:T}}export{F as a,_ as c,A as i,U as n,N as o,D as r,v as s,z as t};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sudo-
|
|
2
|
-
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-Czpn1I53.js";var n=e({setupSudoExtension:()=>i,setupSudoStandalone:()=>r});async function r(e){let{installSudoTestHook:n}=await t(async()=>{let{installSudoTestHook:e}=await import(`./sudo-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sudo-CQOJDuEr.js","assets/preload-helper-Czpn1I53.js","assets/logger-DDBAeTLF.js","assets/proxied-fetch-BGeNrvQ4.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/base64-DpPqYZJF.js","assets/src-CAWTvdAa.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-GRCyib6X.js","assets/runtime-env-CgsZ7LTp.js","assets/runtime-env-E-i2SW1s.js","assets/quick-llm-DMWkcwCn.js","assets/account-store-DRj2SDg8.js","assets/claude-model-version-DoVrYsKi.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-gbjkpjE_.js","assets/libesm-BI4UHVqp.js","assets/float-topology-DiK91BlA.js","assets/secret-topology-0AWfFTh5.js","assets/secrets-bridge-client-DCQ44RyR.js","assets/port-bridge-client-BhmNRlRv.js","assets/image-markers-BXtVm4og.js","assets/tool-ui-DfXu6quJ.js","assets/providers-De4bg3HH.js","assets/panel-rpc-B3MSVImO.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-ZLR7gmJ4.js","assets/page-approval-service-BsXoPdFJ.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-Czpn1I53.js";var n=e({setupSudoExtension:()=>i,setupSudoStandalone:()=>r});async function r(e){let{installSudoTestHook:n}=await t(async()=>{let{installSudoTestHook:e}=await import(`./sudo-CQOJDuEr.js`);return{installSudoTestHook:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32]));n()}async function i(e){let{installPanelSudoResponder:n}=await t(async()=>{let{installPanelSudoResponder:e}=await import(`./sudo-CQOJDuEr.js`);return{installPanelSudoResponder:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32]));n()}export{n,r as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./logger-LESFN7Hj.js";import{n,r}from"./path-utils-DNJG-zQf.js";import{t as i}from"./types-idfTVsM8.js";import{i as a}from"./fs-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./logger-LESFN7Hj.js";import{n,r}from"./path-utils-DNJG-zQf.js";import{t as i}from"./types-idfTVsM8.js";import{i as a}from"./fs-ChobgFEy.js";const o=t(`sudo:sudoers`),s=`/etc/sudoers`,c=`/etc/sudoers.d`,l=/^\/scoops\/[^/]+\/etc\/sudoers$/;function u(e){return`/scoops/${e}/etc/sudoers`}function d(e,t){return e===`no-match`?t===`require-approval`?`require-approval`:`no-match`:e}function f(){return{cmnd:[],read:[],write:[],export:[]}}function p(e){return`.+^$()[]|\\{}`.includes(e)?`\\${e}`:e}function m(e){let t=``,n=0;for(;n<e.length;){let r=e[n];r===`*`?(t+=`.*`,n+=e[n+1]===`*`?2:1):r===`?`?(t+=`.`,n+=1):(t+=p(r),n+=1)}return RegExp(`^${t}$`,`s`)}function h(e){return e.split(/\r?\n/,1)[0]?.trim()??``}const g=new Set([`Cmnd`,`Read`,`Write`,`Export`]);function _(e){switch(e){case`read`:return`Read`;case`write`:return`Write`;case`export`:return`Export`;default:return`Cmnd`}}function v(e){let t=e.trim(),n=!1,r=t.search(/\s/);(r===-1?t:t.slice(0,r))===`NOPASSWD`&&(n=!0,t=r===-1?``:t.slice(r).trimStart());let i=t.search(/\s/),a=i===-1?t:t.slice(0,i);if(!g.has(a))return null;let o=i===-1?``:t.slice(i).trim();return o?{directive:a,nopasswd:n,pattern:o}:null}function y(e){let t=f();try{if(typeof e!=`string`)return t;for(let n of e.split(`
|
|
2
2
|
`)){let e=n.trim();if(!e||e.startsWith(`#`))continue;let i=v(e);if(!i){o.warn(`Skipping unrecognized sudoers line`,{line:e});continue}let a=i.directive===`Cmnd`||i.directive===`Export`?m:r,s={pattern:i.pattern,nopasswd:i.nopasswd,regex:a(i.pattern)};i.directive===`Cmnd`?t.cmnd.push(s):i.directive===`Read`?t.read.push(s):i.directive===`Export`?t.export.push(s):t.write.push(s)}return t}catch(e){return o.error(`Failed to parse sudoers; falling back to self-protection only`,{err:e}),f()}}const ee=[`NOPASSWD Read /tmp`,`NOPASSWD Read /tmp/**`,`NOPASSWD Write /tmp`,`NOPASSWD Write /tmp/**`].join(`
|
|
3
3
|
`);let b=null;function te(){return b??=y(ee),b}function x(...e){let t=f();for(let n of e)n&&(t.cmnd.push(...n.cmnd),t.read.push(...n.read),t.write.push(...n.write),t.export.push(...n.export??[]));return t}function S(e,t){let n=!1;for(let r of e)if(r.regex.test(t)){if(r.nopasswd)return`nopasswd-allow`;n=!0}return n?`require-approval`:`no-match`}function ne(e,t){return S(e.export??[],t)===`nopasswd-allow`?`nopasswd-allow`:`require-approval`}function re(e,t){return S(e.cmnd,t.trim())}function ie(e){return e===`/etc/sudoers`||e===`/etc/sudoers.d`||e.startsWith(`/etc/sudoers.d/`)||l.test(e)||e===`/etc/slicc/layouts`||e.startsWith(`/etc/slicc/layouts/`)}function C(e,t,r,i){let o=n(r);if(t===`write`){if(ie(o))return`require-approval`;if(i?.isContentWrite&&a(o))return`nopasswd-allow`}return S(t===`read`?e.read:e.write,o)}const w=t(`sudo:timeout`),T={"user-timeout":`no response from the user within 5 minutes. This is a TIMEOUT, not a denial — the user was not there to answer. Do not retry this action; report that the approval request went unanswered and wait for the user before trying again.`,"cone-timeout":`no response from the cone agent within 5 minutes. This is a TIMEOUT, not a denial — no human was ever prompted, the cone simply never resolved the request. Do not retry this action; report that the escalation went unanswered and continue with work that does not need it.`};function E(e){return T[e]}function D(e=`user-timeout`){return{decision:`deny`,reason:e}}function O(e,t){let n=t.decision===`deny`?t.reason:void 0;return n?`${e}: approval request timed out — ${E(n)}`:`${e}: approval denied`}function ae(e,t={}){let n=t.timeoutMs??3e5;if(!Number.isFinite(n)||n<=0)return e;let r=t.setTimer??((e,t)=>setTimeout(e,t)),i=t.clearTimer??(e=>clearTimeout(e));return{requestApproval(t,a){return new Promise(o=>{let s=new AbortController,c=()=>s.abort();a?.signal?.addEventListener(`abort`,c,{once:!0});let l=!1,u=e=>{l=!0,a?.signal?.removeEventListener(`abort`,c),o(e)},d=r(()=>{l||(w.warn(`sudo approval timed out — failing closed`,{kind:t.kind,detail:t.detail,timeoutMs:n}),s.abort(),u(D(`user-timeout`)))},n),f=e=>{if(l){w.warn(`sudo decision arrived after timeout — discarded`,{kind:t.kind,detail:t.detail,decision:e.decision});return}i(d),u(e)};e.requestApproval(t,{signal:s.signal}).then(f,e=>{w.warn(`sudo broker threw — denying`,{error:e instanceof Error?e.message:String(e)}),f({decision:`deny`})})})}}}const oe=t(`sudo:fs`),k=Symbol.for(`slicc.fs.monkeypatchUnsafe`),A=`${c}/granted`;function j(e){return O(`sudo`,e)}const M=[`readFile`,`readTextFile`,`readDir`,`exists`,`stat`],N=[`writeFile`],P=[`mkdir`,`rm`];async function F(e,t,n,a){let o=h(a);if(!o)return;let s=t(),l={pattern:o,nopasswd:!0,regex:r(o)};(n===`read`?s.read:s.write).push(l);let u=`NOPASSWD ${n===`read`?`Read`:`Write`} ${o}\n`;try{await e.mkdir(c,{recursive:!0});let t=``;try{t=await e.readFile(A,{encoding:`utf-8`})}catch(e){if(!(e instanceof i&&e.code===`ENOENT`))throw e}let n=t.length>0&&!t.endsWith(`
|
|
4
4
|
`)?`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(){return{version:`6.96.6`,releasedAt:`2026-08-26T07:25:29Z`,buildId:`6.96.6-mt9rrmcm`}}let t=null;function n(e){t=e}function r(){return t}export{e as n,n as r,r as t};
|