@inkeep/open-knowledge 0.49.0-beta.27 → 0.49.0-beta.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/{acp-harness-probe-DYSjZblH.mjs → acp-harness-probe-BlWF_ebw.mjs} +2 -2
  2. package/dist/cli.mjs +6 -6
  3. package/dist/constants-B8Wf8TeT.mjs +2 -0
  4. package/dist/index.mjs +1 -1
  5. package/dist/init-CAoYYOEj.mjs +1 -0
  6. package/dist/{init-BUIEpJX9.mjs → init-awdJPJjw.mjs} +3 -3
  7. package/dist/{launch-json-removal-DqWNMLcl.mjs → launch-json-removal-CpDow5qp.mjs} +2 -2
  8. package/dist/loader-BECd9XGJ.mjs +1 -0
  9. package/dist/{loader-CqgZy7s4.mjs → loader-BtmEQZYr.mjs} +2 -2
  10. package/dist/{preview-CW1IxLsJ.mjs → preview-D8yOTAzw.mjs} +2 -2
  11. package/dist/preview-LEJJJ5qO.mjs +1 -0
  12. package/dist/public/assets/{ChangedOutsideBadge-Cv8USc43.js → ChangedOutsideBadge-DEnLfcgW.js} +1 -1
  13. package/dist/public/assets/FeedbackForm-D6IVjKqO.js +1 -0
  14. package/dist/public/assets/SessionsHost-unW7heC4.js +2 -0
  15. package/dist/public/assets/{SettingsDialogBody-DK9ene5l.js → SettingsDialogBody-U0w5muJy.js} +2 -2
  16. package/dist/public/assets/{SkillToolbarControls-BIhmBwAB.js → SkillToolbarControls-y2FNhFQy.js} +1 -1
  17. package/dist/public/assets/{TerminalWindowApp-CJOysYRr.js → TerminalWindowApp-BP796BPz.js} +1 -1
  18. package/dist/public/assets/agent-visibility-D5jwzmFA.js +1 -0
  19. package/dist/public/assets/{auth-state-cache-rhnmn74G.js → auth-state-cache-Cx_tsdYE.js} +1 -1
  20. package/dist/public/assets/{index-Cq2BuWd2.js → index-Bx9-YQFN.js} +6 -6
  21. package/dist/public/assets/{skill-actions-DwpN3-eB.js → skill-actions-BryscMLS.js} +1 -1
  22. package/dist/public/assets/{terminal-launch-events-94aIhofY.js → terminal-launch-events-rvma4jZd.js} +1 -1
  23. package/dist/public/assets/{terminal-telemetry-C9J9jNy9.js → terminal-telemetry-DV5mcRVf.js} +1 -1
  24. package/dist/public/assets/{use-terminal-enabled-BHdXkRUU.js → use-terminal-enabled-D05DXcuw.js} +1 -1
  25. package/dist/public/index.html +7 -7
  26. package/dist/{repair-launch-json-CooRfHHf.mjs → repair-launch-json-DlYBpeyi.mjs} +2 -2
  27. package/dist/{repair-mcp-configs-9MXPCm8A.mjs → repair-mcp-configs-CCOx26Gl.mjs} +2 -2
  28. package/dist/{src-eJmU7tk9.mjs → src-BB-eJR4X.mjs} +2 -2
  29. package/dist/src-Biw24nd5.mjs +1 -0
  30. package/dist/{start-ffP2Ihoz.mjs → start-DKhdbh0o.mjs} +2 -2
  31. package/dist/start-DNx-14ge.mjs +1 -0
  32. package/package.json +4 -4
  33. package/dist/constants-BEe0tuQx.mjs +0 -2
  34. package/dist/init-Be3isy7g.mjs +0 -1
  35. package/dist/loader-C7VKSyMe.mjs +0 -1
  36. package/dist/preview-6qIUkP7f.mjs +0 -1
  37. package/dist/public/assets/FeedbackForm-D16BkoQE.js +0 -1
  38. package/dist/public/assets/SessionsHost-CQB30dyD.js +0 -2
  39. package/dist/public/assets/agent-visibility-CvZ8XtPP.js +0 -1
  40. package/dist/src-DGawJ9va.mjs +0 -1
  41. package/dist/start-C_ESEIR_.mjs +0 -1
@@ -1,4 +1,4 @@
1
- import{Q as e,Y as t}from"./src-TKCctdpc.mjs";import{En as n,Jr as r,a as i,ri as a}from"./src-DfRHrkSZ.mjs";import{v as o,y as s}from"./write-project-skill-D38t_B_r.mjs";import{a as c,n as l,t as u}from"./acp-harness-probe-DYSjZblH.mjs";import{n as d}from"./constants-BEe0tuQx.mjs";import{spawn as f}from"node:child_process";import{basename as p,join as m,posix as h,resolve as g,win32 as _}from"node:path";import{closeSync as v,existsSync as y,mkdirSync as b,openSync as x,statSync as S}from"node:fs";import{homedir as C}from"node:os";import{rm as w}from"node:fs/promises";import{setTimeout as T}from"node:timers/promises";function E(e){let t={...e};return delete t.ELECTRON_RUN_AS_NODE,t}function D(e,t,n={}){let i=(n.spawn??f)(e,[...t],r({detached:!0,stdio:`ignore`,env:E(n.env??process.env)}));return i.unref(),i}const O=`OpenKnowledge.app`,k=`/Applications/${O}`;function A(){return{platform:process.platform,env:process.env,execPath:process.execPath,isTTY:process.stdout.isTTY,statSync:e=>{try{return S(e,{throwIfNoEntry:!1})??null}catch{return null}}}}function j(e){if(e.env.ELECTRON_RUN_AS_NODE===`1`){let t=/(.+?\.app)\/Contents\/MacOS\//.exec(e.execPath);if(t?.[1])return t[1]}if(M(e,k))return k;let t=m(e.homeDir??C(),`Applications`,O);return M(e,t)?t:null}function M(e,t){return N(e,m(t,`Contents`,`MacOS`,`OpenKnowledge`))}function N(e,t){try{let n=e.statSync(t);return n&&typeof n.isFile==`function`?n.isFile():!1}catch{return!1}}const ee=[`@inkeepopen-knowledge-desktop`,`OpenKnowledge`];function P(e){if(e.env.ELECTRON_RUN_AS_NODE===`1`&&/\\OpenKnowledge\.exe$/i.test(e.execPath))return e.execPath;let t=e.env.LOCALAPPDATA;if(t)for(let n of ee){let r=_.join(t,`Programs`,n,`OpenKnowledge.exe`);if(N(e,r))return r}return null}function F(e){if(e.env.ELECTRON_RUN_AS_NODE===`1`&&e.execPath.endsWith(`/openknowledge`))return e.execPath;let t=`/opt/OpenKnowledge/openknowledge`;return N(e,t)?t:null}function I(e){if(e.env.OK_FORCE_BROWSER===`1`)return{available:!1,reason:`force-browser`};if(e.platform!==`darwin`&&e.platform!==`win32`&&e.platform!==`linux`)return{available:!1,reason:`unsupported-platform`};let t;try{t=e.platform===`darwin`?j(e):e.platform===`win32`?P(e):F(e)}catch{return{available:!1,reason:`stat-error`}}return t?e.env.OK_FORCE_DESKTOP===`1`?{available:!0,reason:`available`,bundlePath:t}:!(e.isTTY===!0||e.platform===`win32`&&e.isTTY===void 0&&!e.env.CI)||e.env.SSH_CONNECTION||e.env.SSH_TTY||e.platform===`linux`&&!e.env.DISPLAY&&!e.env.WAYLAND_DISPLAY?{available:!1,reason:`headless`,bundlePath:t}:{available:!0,reason:`available`,bundlePath:t}:{available:!1,reason:`no-bundle`}}function L(e,t){let n=e.log??(e=>console.error(e)),r=e.platform??process.platform;if(n("Launching OpenKnowledge desktop (use `ok start` for the browser server, or `OK_FORCE_BROWSER=1` to always skip)"),r===`darwin`){D(`open`,[`-b`,`com.inkeep.open-knowledge`],{spawn:e.spawn});return}let i=t?.bundlePath;if(!i){n(`Desktop launch skipped: no resolved desktop executable (caller bug).`);return}D(i,[],{spawn:e.spawn})}function R(e=`no-bundle`){switch(e){case`no-bundle`:return`Desktop app not found (checked the standard install locations for this OS). Install it, or omit --mode for browser mode.`;case`darwin-only`:case`unsupported-platform`:return`Desktop app is not available on this platform. Use --mode=browser, or omit --mode for the server fallback.`;case`headless`:return`Desktop launch is gated in headless contexts (CI, SSH, non-TTY stdout). Set OK_FORCE_DESKTOP=1 to override, or use --mode=browser.`;case`force-browser`:return`OK_FORCE_BROWSER=1 is set — desktop dispatch is disabled. Unset it to use --mode=app.`;case`stat-error`:return`Failed to inspect the desktop install (filesystem error). Check permissions or use --mode=browser.`;case`available`:return`Desktop app appears available but launch dispatch did not fire (caller bug).`}}function z(e){return h.join(h.dirname(e),`..`,`Frameworks`,`OpenKnowledge Server.app`,`Contents`,`MacOS`,`OpenKnowledge Helper`)}const te=/\/[^/]+\.app\/Contents\/MacOS\/[^/]+$/;function ne(e){if(e.platform!==`darwin`||!te.test(e.execPath))return null;let t=z(e.execPath);return e.exists(t)?t:null}function B(e={}){let t=e.execPath??process.execPath,n=e.platform??process.platform,r=e.argv??process.argv,i=e.exists??y,a=r[1];return a?{command:ne({execPath:t,platform:n,exists:i})??t,prefixArgs:[a]}:(console.warn(`[self-spawn] process.argv[1] is empty — falling back to \`npx -y @inkeep/open-knowledge@latest\`. This re-introduces the registry-fetch surface that re-exec was fixing. Observed argv: ${JSON.stringify(r)}`),{command:`npx`,prefixArgs:[`-y`,`@inkeep/open-knowledge@latest`]})}function V(e,t){return e.host??t.HOST??`127.0.0.1`}function H(e,t){return t&&(e===`::`||e===`::1`||e===`[::1]`||e===`localhost`||e===`0.0.0.0`)?{host:`127.0.0.1`,coerced:!0}:{host:e,coerced:!1}}function U(e){let t=p(e).replace(/[^\x20-\x7E]/g,``).trim().slice(0,64);return`open-knowledge-server ${t.length>0?t:`unknown`}`}var W=class extends Error{cwd;constructor(e){super("This directory isn't set up yet. Run `ok init` first, then `ok start` again."),this.name=`OkDirMissingError`,this.cwd=e}};function G(e){return e.uiLock?e.isAlive(e.uiLock.pid)?{action:`skip`,reason:`alive`,pid:e.uiLock.pid,port:e.uiLock.port}:{action:`spawn`,reason:`stale`,stalePid:e.uiLock.pid}:{action:`spawn`,reason:`absent`}}function K(t){y(t.lockDir)||b(t.lockDir,{recursive:!0});let n=x(m(t.lockDir,e),`w`),r=t.spawn??f,{PORT:i,...a}=process.env,o=B();try{let e=r(o.command,[...o.prefixArgs,...t.args??[`ui`]],{detached:!0,stdio:[`ignore`,`ignore`,n],windowsHide:!0,cwd:t.cwd,env:{...a,ELECTRON_RUN_AS_NODE:`1`}});return e.unref(),e}finally{try{v(n)}catch{}}}function q(e,t,n,r=!1){return e??(n!==void 0||r?void 0:t)}function J(e,t){return e!==void 0&&t!==null&&t.port>0&&t.draining!==!0}function Y(e,t,n){return e??+(t!=null&&!n)}async function X(e){let t=e.spawn??f,n=B(),{PORT:r,...i}=process.env,a=t(n.command,[...n.prefixArgs,`ui`,`--port`,String(e.uiPort)],{cwd:e.cwd,stdio:`inherit`,windowsHide:!0,env:{...i,ELECTRON_RUN_AS_NODE:`1`}}),o=!1,s=e=>{o=!0;try{a.kill(e)}catch{}},c=()=>s(`SIGINT`),l=()=>s(`SIGTERM`);process.once(`SIGINT`,c),process.once(`SIGTERM`,l),await new Promise(e=>{a.on(`exit`,(t,n)=>{process.exitCode=Y(t,n,o),e()}),a.on(`error`,t=>{console.error(`[start] connect fallback: failed to spawn ok ui — ${t instanceof Error?t.message:String(t)}`),process.exitCode=1,e()})}),process.removeListener(`SIGINT`,c),process.removeListener(`SIGTERM`,l)}async function Z(e){let t=e.now()+e.timeoutMs;for(;e.now()<t;){let t=e.readUiLock();if(t&&t.port>0)return t.port;await e.sleep(e.pollIntervalMs)}let n=e.readUiLock();return n&&n.port>0?n.port:null}const re=t;function ie(e,t,n=e=>w(e,{recursive:!0,force:!0})){return async()=>{try{await e()}finally{try{await n(t)}catch(e){process.stderr.write(`[start] ephemeral temp dir reap failed for ${t}: ${e instanceof Error?e.message:String(e)}\n`)}}}}function ae(e,t={}){let n=t.exit??(e=>process.exit(e)),r=t.getActiveHandles??(()=>{let e=process._getActiveHandles;return e?e.call(process):null});return async()=>{let i=!1;try{await e()}catch(e){i=!0,t.log?.error({err:e},`idle-shutdown: destroy failed — exiting anyway`)}finally{let e=null;try{let t=r();if(t!==null){e={};for(let n of t){let t=n?.constructor?.name??`unknown`;e[t]=(e[t]??0)+1}}}catch{e=null}t.log?.info({event:`idle-shutdown-exit`,exitCode:+!!i,openHandles:e??{},handlesAvailable:e!==null},`idle-shutdown: teardown finished — exiting process`),n(+!!i)}}}async function Q(e){let t=e.sigtermGraceMs??re,n=e.sigtermPollIntervalMs??200,r=e.sleep??(e=>T(e)),i=e.reason??`teardown`;try{let a=e.readUiLock(),o=e.spawnedUiPid();if(a&&e.isAlive(a.pid)&&a.pid!==o)e.log?.info({pid:a.pid,port:a.port,spawnedUiPid:o},`${i}: ui.lock holder is not our spawned sibling — leaving it alone`);else if(a&&e.isAlive(a.pid))try{e.killPid(a.pid,`SIGTERM`),e.log?.info({pid:a.pid,port:a.port},`${i}: SIGTERM UI sibling`);let o=Date.now()+t;for(;Date.now()<o&&e.isAlive(a.pid);)await r(n);if(e.isAlive(a.pid))try{e.killPid(a.pid,`SIGKILL`),e.log?.warn({pid:a.pid,graceMs:t},`${i}: SIGTERM grace expired — escalated to SIGKILL`)}catch(t){e.log?.error({pid:a.pid,err:t},`${i}: SIGKILL failed`)}}catch(t){e.log?.warn({pid:a.pid,err:t},`${i}: failed to SIGTERM UI sibling`)}}catch(t){e.log?.warn({err:t},`${i}: UI lookup failed; proceeding`)}}function oe(e){let{destroy:t,...n}=e;return async()=>{await Q({...n,reason:`idle-shutdown`}),await t()}}async function se(e){let{config:t,cwd:r,host:o}=e,s=e.skipAutoInit??!1,d=e.skipUiAutoSpawn??!1,f=e.idleThresholdMs??18e5,{existsSync:p,mkdirSync:m}=await import(`node:fs`),{basename:h,dirname:g}=await import(`node:path`),{bootServer:_,getLogger:v,isProcessAlive:y,readUiLock:b,resolveContentDir:x,resolveLockDir:S,waitForServerLockDrain:C}=await import(`./src-B_Esv3oA.mjs`),w=e.log??v(`start`),E=e.singleFile!==void 0,D=e.projectDir??r,O=E?i(e.singleFile).canonicalFilePath:void 0,k=O?g(O):void 0,A=O?h(O):void 0;if(!E){if(!s&&!n(r))throw new W(r);let t=process.env.OK_RECLAIM_DISABLE??null,i=e=>{let t=typeof e.event==`string`?e.event:``;(t.endsWith(`-failed`)||t.endsWith(`-error`)||t.endsWith(`-missing`))&&w.warn({event:e},`[start] reclaim sweep reported a problem`)};try{(e.repairMcpConfigsFn??(await import(`./repair-mcp-configs-9MXPCm8A.mjs`)).repairMcpConfigs)({projectDir:r,reclaimDisableEnv:t,logger:i})}catch(e){w.warn({err:e},`[start] mcp-config repair sweep failed; continuing`)}try{(e.repairLaunchJsonFn??(await import(`./repair-launch-json-CooRfHHf.mjs`)).repairLaunchJson)({projectDir:r,reclaimDisableEnv:t,logger:i})}catch(e){w.warn({err:e},`[start] launch.json repair sweep failed; continuing`)}try{await(e.repairSkillsFn??(await import(`./repair-skills-CrwlZDaN.mjs`)).repairSkills)({projectDir:r,reclaimDisableEnv:t,logger:i})}catch(e){w.warn({err:e},`[start] skill repair sweep failed; continuing`)}}let j=k??x(t,r);!E&&!p(j)&&(m(j,{recursive:!0}),w.info({contentDir:j},`Created content directory`));let M=null,N=null,ee=async({lockDir:t})=>{if(M=G({uiLock:b(t),isAlive:y}),M.action===`spawn`&&!d)try{let n=e.uiPort===void 0?void 0:[`ui`,`--port`,String(e.uiPort)];N=K({lockDir:t,cwd:r,spawn:e.spawn,args:n}).pid??null,w.info({reason:M.reason,uiPort:e.uiPort},`[start] auto-spawned ok ui sibling`)}catch(e){console.warn(`[start] failed to auto-spawn ok ui: ${e instanceof Error?e.message:String(e)}`)}else M.action===`skip`&&w.info({port:M.port,pid:M.pid},`UI already running at port ${M.port}`)},P=e.reactShellDistDir===void 0,F=c(),I=a();{let e=S(E?D:r),t=Date.now(),n=await C(e);n!==`no-drain`&&w.info({event:`start-waited-for-draining-predecessor`,outcome:n,waitedMs:Date.now()-t,drainLockDir:e},n===`released`?`[start] predecessor server finished draining — proceeding`:`[start] predecessor server still draining after wait — proceeding to collide`)}let L=await _({config:t,contentDir:j,projectDir:E?D:r,contentRoot:E?void 0:t.content.dir,port:e.port,host:o,...e.enableRemote===!0?{enableRemote:!0}:{},quiet:!1,detectGh:l,tokenStore:F,embeddingsKeyStore:I,...E?{ephemeral:!0,singleDocRelPath:A,gitEnabled:!1,gitPreflight:()=>({ok:!0,version:`0.0.0`,resolvedPath:`git`,source:`PATH`})}:{},localOpCliArgs:[process.execPath,process.argv[1]],probeHarnessManagedMcpEntry:(e,t)=>u(e,t),attachUiSibling:P,idleShutdownMs:f,skipAutoInit:!0,...P?{spawnUiSiblingFn:ee}:{},idleShutdownHandler:t=>{let n=oe({readUiLock:()=>b(L.lockDir),spawnedUiPid:()=>N,isAlive:y,killPid:(e,t)=>{process.kill(e,t)},destroy:t,log:w});return ae(E?ie(n,D):n,{log:w,exit:e.idleExit})},log:w,...e.serveContentAssets===void 0?{}:{serveContentAssets:e.serveContentAssets},...e.reactShellDistDir?{reactShellDistDir:e.reactShellDistDir}:{}});M||={action:`skip`,reason:`alive`,pid:0,port:0};let R=M,z=null;if(R.action===`skip`)z=R.port>0?R.port:null;else if(!d){let t=e.uiBindTimeoutMs??3e3;z=await Z({readUiLock:()=>b(L.lockDir),now:Date.now,sleep:e=>T(e),timeoutMs:t,pollIntervalMs:50}),z===null&&w.warn({timeoutMs:t},`[start] ok ui did not bind within timeout — banner falls back to API URL`)}return{httpServer:L.httpServer,destroy:L.destroy,lockDir:L.lockDir,contentDir:j,port:L.port,ready:L.ready,degraded:L.degraded,uiSpawnDecision:M,spawnedUiPid:N,resolvedUiPort:z}}function ce(e){if(e===`browser`||e===`app`)return e;throw new s(`--mode must be 'browser' or 'app'`)}function le(e){let t=Number.parseInt(e,10);if(Number.isNaN(t)||t<1||t>65535)throw new s(`--ui-port must be a port number between 1 and 65535`);return t}function ue(e){return e.OK_CONSOLE_LEVEL!==void 0||e.LOG_LEVEL!==void 0?null:`warn`}function $(e){let t=[`Stopping OpenKnowledge…`,`Saving pending changes and releasing the server lock — this can take a few seconds.`];return e===`SIGINT`&&t.push(`Press Ctrl+C again to force quit.`),t}async function de(e,t){let n=ue(process.env);n!==null&&(process.env.OK_CONSOLE_LEVEL=n);let{renderBanner:r}=await import(`./banner-Be20aAVc.mjs`),{accent:i,dim:a,error:o,warning:s}=await import(`./colors-MGDi6UGf.mjs`),c=process.cwd(),l=t.remote!==void 0&&t.remote!==!1,u=typeof t.remote==`string`?t.remote:void 0,f=u===void 0?e:{...e,remote:{...e.remote,url:u}};process.title=U(c),l&&(typeof f.remote?.url!=`string`||f.remote.url===``)&&(console.error(o("--remote requires a public tunnel URL — pass it (`ok start --remote https://<your-tunnel-host>`) or set remote.url in .ok/config.yml.")),process.exit(78)),l&&console.warn(s([``,`⚠ REMOTE ACCESS ENABLED — no server-side authentication.`,` Anyone who can reach ${f.remote?.url} has FULL control of this`,` knowledge base, including sync, publishing, credentials, and local operations.`,` Restrict who can reach it at the tunnel: ngrok OAuth, Cloudflare Access,`,` Tailscale ACLs, or equivalent edge auth.`,``].join(`
1
+ import{Q as e,Y as t}from"./src-TKCctdpc.mjs";import{En as n,Jr as r,a as i,ri as a}from"./src-DfRHrkSZ.mjs";import{v as o,y as s}from"./write-project-skill-D38t_B_r.mjs";import{a as c,n as l,t as u}from"./acp-harness-probe-BlWF_ebw.mjs";import{n as d}from"./constants-B8Wf8TeT.mjs";import{spawn as f}from"node:child_process";import{basename as p,join as m,posix as h,resolve as g,win32 as _}from"node:path";import{closeSync as v,existsSync as y,mkdirSync as b,openSync as x,statSync as S}from"node:fs";import{homedir as C}from"node:os";import{rm as w}from"node:fs/promises";import{setTimeout as T}from"node:timers/promises";function E(e){let t={...e};return delete t.ELECTRON_RUN_AS_NODE,t}function D(e,t,n={}){let i=(n.spawn??f)(e,[...t],r({detached:!0,stdio:`ignore`,env:E(n.env??process.env)}));return i.unref(),i}const O=`OpenKnowledge.app`,k=`/Applications/${O}`;function A(){return{platform:process.platform,env:process.env,execPath:process.execPath,isTTY:process.stdout.isTTY,statSync:e=>{try{return S(e,{throwIfNoEntry:!1})??null}catch{return null}}}}function j(e){if(e.env.ELECTRON_RUN_AS_NODE===`1`){let t=/(.+?\.app)\/Contents\/MacOS\//.exec(e.execPath);if(t?.[1])return t[1]}if(M(e,k))return k;let t=m(e.homeDir??C(),`Applications`,O);return M(e,t)?t:null}function M(e,t){return N(e,m(t,`Contents`,`MacOS`,`OpenKnowledge`))}function N(e,t){try{let n=e.statSync(t);return n&&typeof n.isFile==`function`?n.isFile():!1}catch{return!1}}const ee=[`@inkeepopen-knowledge-desktop`,`OpenKnowledge`];function P(e){if(e.env.ELECTRON_RUN_AS_NODE===`1`&&/\\OpenKnowledge\.exe$/i.test(e.execPath))return e.execPath;let t=e.env.LOCALAPPDATA;if(t)for(let n of ee){let r=_.join(t,`Programs`,n,`OpenKnowledge.exe`);if(N(e,r))return r}return null}function F(e){if(e.env.ELECTRON_RUN_AS_NODE===`1`&&e.execPath.endsWith(`/openknowledge`))return e.execPath;let t=`/opt/OpenKnowledge/openknowledge`;return N(e,t)?t:null}function I(e){if(e.env.OK_FORCE_BROWSER===`1`)return{available:!1,reason:`force-browser`};if(e.platform!==`darwin`&&e.platform!==`win32`&&e.platform!==`linux`)return{available:!1,reason:`unsupported-platform`};let t;try{t=e.platform===`darwin`?j(e):e.platform===`win32`?P(e):F(e)}catch{return{available:!1,reason:`stat-error`}}return t?e.env.OK_FORCE_DESKTOP===`1`?{available:!0,reason:`available`,bundlePath:t}:!(e.isTTY===!0||e.platform===`win32`&&e.isTTY===void 0&&!e.env.CI)||e.env.SSH_CONNECTION||e.env.SSH_TTY||e.platform===`linux`&&!e.env.DISPLAY&&!e.env.WAYLAND_DISPLAY?{available:!1,reason:`headless`,bundlePath:t}:{available:!0,reason:`available`,bundlePath:t}:{available:!1,reason:`no-bundle`}}function L(e,t){let n=e.log??(e=>console.error(e)),r=e.platform??process.platform;if(n("Launching OpenKnowledge desktop (use `ok start` for the browser server, or `OK_FORCE_BROWSER=1` to always skip)"),r===`darwin`){D(`open`,[`-b`,`com.inkeep.open-knowledge`],{spawn:e.spawn});return}let i=t?.bundlePath;if(!i){n(`Desktop launch skipped: no resolved desktop executable (caller bug).`);return}D(i,[],{spawn:e.spawn})}function R(e=`no-bundle`){switch(e){case`no-bundle`:return`Desktop app not found (checked the standard install locations for this OS). Install it, or omit --mode for browser mode.`;case`darwin-only`:case`unsupported-platform`:return`Desktop app is not available on this platform. Use --mode=browser, or omit --mode for the server fallback.`;case`headless`:return`Desktop launch is gated in headless contexts (CI, SSH, non-TTY stdout). Set OK_FORCE_DESKTOP=1 to override, or use --mode=browser.`;case`force-browser`:return`OK_FORCE_BROWSER=1 is set — desktop dispatch is disabled. Unset it to use --mode=app.`;case`stat-error`:return`Failed to inspect the desktop install (filesystem error). Check permissions or use --mode=browser.`;case`available`:return`Desktop app appears available but launch dispatch did not fire (caller bug).`}}function z(e){return h.join(h.dirname(e),`..`,`Frameworks`,`OpenKnowledge Server.app`,`Contents`,`MacOS`,`OpenKnowledge Helper`)}const te=/\/[^/]+\.app\/Contents\/MacOS\/[^/]+$/;function ne(e){if(e.platform!==`darwin`||!te.test(e.execPath))return null;let t=z(e.execPath);return e.exists(t)?t:null}function B(e={}){let t=e.execPath??process.execPath,n=e.platform??process.platform,r=e.argv??process.argv,i=e.exists??y,a=r[1];return a?{command:ne({execPath:t,platform:n,exists:i})??t,prefixArgs:[a]}:(console.warn(`[self-spawn] process.argv[1] is empty — falling back to \`npx -y @inkeep/open-knowledge@latest\`. This re-introduces the registry-fetch surface that re-exec was fixing. Observed argv: ${JSON.stringify(r)}`),{command:`npx`,prefixArgs:[`-y`,`@inkeep/open-knowledge@latest`]})}function V(e,t){return e.host??t.HOST??`127.0.0.1`}function H(e,t){return t&&(e===`::`||e===`::1`||e===`[::1]`||e===`localhost`||e===`0.0.0.0`)?{host:`127.0.0.1`,coerced:!0}:{host:e,coerced:!1}}function U(e){let t=p(e).replace(/[^\x20-\x7E]/g,``).trim().slice(0,64);return`open-knowledge-server ${t.length>0?t:`unknown`}`}var W=class extends Error{cwd;constructor(e){super("This directory isn't set up yet. Run `ok init` first, then `ok start` again."),this.name=`OkDirMissingError`,this.cwd=e}};function G(e){return e.uiLock?e.isAlive(e.uiLock.pid)?{action:`skip`,reason:`alive`,pid:e.uiLock.pid,port:e.uiLock.port}:{action:`spawn`,reason:`stale`,stalePid:e.uiLock.pid}:{action:`spawn`,reason:`absent`}}function K(t){y(t.lockDir)||b(t.lockDir,{recursive:!0});let n=x(m(t.lockDir,e),`w`),r=t.spawn??f,{PORT:i,...a}=process.env,o=B();try{let e=r(o.command,[...o.prefixArgs,...t.args??[`ui`]],{detached:!0,stdio:[`ignore`,`ignore`,n],windowsHide:!0,cwd:t.cwd,env:{...a,ELECTRON_RUN_AS_NODE:`1`}});return e.unref(),e}finally{try{v(n)}catch{}}}function q(e,t,n,r=!1){return e??(n!==void 0||r?void 0:t)}function J(e,t){return e!==void 0&&t!==null&&t.port>0&&t.draining!==!0}function Y(e,t,n){return e??+(t!=null&&!n)}async function X(e){let t=e.spawn??f,n=B(),{PORT:r,...i}=process.env,a=t(n.command,[...n.prefixArgs,`ui`,`--port`,String(e.uiPort)],{cwd:e.cwd,stdio:`inherit`,windowsHide:!0,env:{...i,ELECTRON_RUN_AS_NODE:`1`}}),o=!1,s=e=>{o=!0;try{a.kill(e)}catch{}},c=()=>s(`SIGINT`),l=()=>s(`SIGTERM`);process.once(`SIGINT`,c),process.once(`SIGTERM`,l),await new Promise(e=>{a.on(`exit`,(t,n)=>{process.exitCode=Y(t,n,o),e()}),a.on(`error`,t=>{console.error(`[start] connect fallback: failed to spawn ok ui — ${t instanceof Error?t.message:String(t)}`),process.exitCode=1,e()})}),process.removeListener(`SIGINT`,c),process.removeListener(`SIGTERM`,l)}async function Z(e){let t=e.now()+e.timeoutMs;for(;e.now()<t;){let t=e.readUiLock();if(t&&t.port>0)return t.port;await e.sleep(e.pollIntervalMs)}let n=e.readUiLock();return n&&n.port>0?n.port:null}const re=t;function ie(e,t,n=e=>w(e,{recursive:!0,force:!0})){return async()=>{try{await e()}finally{try{await n(t)}catch(e){process.stderr.write(`[start] ephemeral temp dir reap failed for ${t}: ${e instanceof Error?e.message:String(e)}\n`)}}}}function ae(e,t={}){let n=t.exit??(e=>process.exit(e)),r=t.getActiveHandles??(()=>{let e=process._getActiveHandles;return e?e.call(process):null});return async()=>{let i=!1;try{await e()}catch(e){i=!0,t.log?.error({err:e},`idle-shutdown: destroy failed — exiting anyway`)}finally{let e=null;try{let t=r();if(t!==null){e={};for(let n of t){let t=n?.constructor?.name??`unknown`;e[t]=(e[t]??0)+1}}}catch{e=null}t.log?.info({event:`idle-shutdown-exit`,exitCode:+!!i,openHandles:e??{},handlesAvailable:e!==null},`idle-shutdown: teardown finished — exiting process`),n(+!!i)}}}async function Q(e){let t=e.sigtermGraceMs??re,n=e.sigtermPollIntervalMs??200,r=e.sleep??(e=>T(e)),i=e.reason??`teardown`;try{let a=e.readUiLock(),o=e.spawnedUiPid();if(a&&e.isAlive(a.pid)&&a.pid!==o)e.log?.info({pid:a.pid,port:a.port,spawnedUiPid:o},`${i}: ui.lock holder is not our spawned sibling — leaving it alone`);else if(a&&e.isAlive(a.pid))try{e.killPid(a.pid,`SIGTERM`),e.log?.info({pid:a.pid,port:a.port},`${i}: SIGTERM UI sibling`);let o=Date.now()+t;for(;Date.now()<o&&e.isAlive(a.pid);)await r(n);if(e.isAlive(a.pid))try{e.killPid(a.pid,`SIGKILL`),e.log?.warn({pid:a.pid,graceMs:t},`${i}: SIGTERM grace expired — escalated to SIGKILL`)}catch(t){e.log?.error({pid:a.pid,err:t},`${i}: SIGKILL failed`)}}catch(t){e.log?.warn({pid:a.pid,err:t},`${i}: failed to SIGTERM UI sibling`)}}catch(t){e.log?.warn({err:t},`${i}: UI lookup failed; proceeding`)}}function oe(e){let{destroy:t,...n}=e;return async()=>{await Q({...n,reason:`idle-shutdown`}),await t()}}async function se(e){let{config:t,cwd:r,host:o}=e,s=e.skipAutoInit??!1,d=e.skipUiAutoSpawn??!1,f=e.idleThresholdMs??18e5,{existsSync:p,mkdirSync:m}=await import(`node:fs`),{basename:h,dirname:g}=await import(`node:path`),{bootServer:_,getLogger:v,isProcessAlive:y,readUiLock:b,resolveContentDir:x,resolveLockDir:S,waitForServerLockDrain:C}=await import(`./src-B_Esv3oA.mjs`),w=e.log??v(`start`),E=e.singleFile!==void 0,D=e.projectDir??r,O=E?i(e.singleFile).canonicalFilePath:void 0,k=O?g(O):void 0,A=O?h(O):void 0;if(!E){if(!s&&!n(r))throw new W(r);let t=process.env.OK_RECLAIM_DISABLE??null,i=e=>{let t=typeof e.event==`string`?e.event:``;(t.endsWith(`-failed`)||t.endsWith(`-error`)||t.endsWith(`-missing`))&&w.warn({event:e},`[start] reclaim sweep reported a problem`)};try{(e.repairMcpConfigsFn??(await import(`./repair-mcp-configs-CCOx26Gl.mjs`)).repairMcpConfigs)({projectDir:r,reclaimDisableEnv:t,logger:i})}catch(e){w.warn({err:e},`[start] mcp-config repair sweep failed; continuing`)}try{(e.repairLaunchJsonFn??(await import(`./repair-launch-json-DlYBpeyi.mjs`)).repairLaunchJson)({projectDir:r,reclaimDisableEnv:t,logger:i})}catch(e){w.warn({err:e},`[start] launch.json repair sweep failed; continuing`)}try{await(e.repairSkillsFn??(await import(`./repair-skills-CrwlZDaN.mjs`)).repairSkills)({projectDir:r,reclaimDisableEnv:t,logger:i})}catch(e){w.warn({err:e},`[start] skill repair sweep failed; continuing`)}}let j=k??x(t,r);!E&&!p(j)&&(m(j,{recursive:!0}),w.info({contentDir:j},`Created content directory`));let M=null,N=null,ee=async({lockDir:t})=>{if(M=G({uiLock:b(t),isAlive:y}),M.action===`spawn`&&!d)try{let n=e.uiPort===void 0?void 0:[`ui`,`--port`,String(e.uiPort)];N=K({lockDir:t,cwd:r,spawn:e.spawn,args:n}).pid??null,w.info({reason:M.reason,uiPort:e.uiPort},`[start] auto-spawned ok ui sibling`)}catch(e){console.warn(`[start] failed to auto-spawn ok ui: ${e instanceof Error?e.message:String(e)}`)}else M.action===`skip`&&w.info({port:M.port,pid:M.pid},`UI already running at port ${M.port}`)},P=e.reactShellDistDir===void 0,F=c(),I=a();{let e=S(E?D:r),t=Date.now(),n=await C(e);n!==`no-drain`&&w.info({event:`start-waited-for-draining-predecessor`,outcome:n,waitedMs:Date.now()-t,drainLockDir:e},n===`released`?`[start] predecessor server finished draining — proceeding`:`[start] predecessor server still draining after wait — proceeding to collide`)}let L=await _({config:t,contentDir:j,projectDir:E?D:r,contentRoot:E?void 0:t.content.dir,port:e.port,host:o,...e.enableRemote===!0?{enableRemote:!0}:{},quiet:!1,detectGh:l,tokenStore:F,embeddingsKeyStore:I,...E?{ephemeral:!0,singleDocRelPath:A,gitEnabled:!1,gitPreflight:()=>({ok:!0,version:`0.0.0`,resolvedPath:`git`,source:`PATH`})}:{},localOpCliArgs:[process.execPath,process.argv[1]],probeHarnessManagedMcpEntry:(e,t)=>u(e,t),attachUiSibling:P,idleShutdownMs:f,skipAutoInit:!0,...P?{spawnUiSiblingFn:ee}:{},idleShutdownHandler:t=>{let n=oe({readUiLock:()=>b(L.lockDir),spawnedUiPid:()=>N,isAlive:y,killPid:(e,t)=>{process.kill(e,t)},destroy:t,log:w});return ae(E?ie(n,D):n,{log:w,exit:e.idleExit})},log:w,...e.serveContentAssets===void 0?{}:{serveContentAssets:e.serveContentAssets},...e.reactShellDistDir?{reactShellDistDir:e.reactShellDistDir}:{}});M||={action:`skip`,reason:`alive`,pid:0,port:0};let R=M,z=null;if(R.action===`skip`)z=R.port>0?R.port:null;else if(!d){let t=e.uiBindTimeoutMs??3e3;z=await Z({readUiLock:()=>b(L.lockDir),now:Date.now,sleep:e=>T(e),timeoutMs:t,pollIntervalMs:50}),z===null&&w.warn({timeoutMs:t},`[start] ok ui did not bind within timeout — banner falls back to API URL`)}return{httpServer:L.httpServer,destroy:L.destroy,lockDir:L.lockDir,contentDir:j,port:L.port,ready:L.ready,degraded:L.degraded,uiSpawnDecision:M,spawnedUiPid:N,resolvedUiPort:z}}function ce(e){if(e===`browser`||e===`app`)return e;throw new s(`--mode must be 'browser' or 'app'`)}function le(e){let t=Number.parseInt(e,10);if(Number.isNaN(t)||t<1||t>65535)throw new s(`--ui-port must be a port number between 1 and 65535`);return t}function ue(e){return e.OK_CONSOLE_LEVEL!==void 0||e.LOG_LEVEL!==void 0?null:`warn`}function $(e){let t=[`Stopping OpenKnowledge…`,`Saving pending changes and releasing the server lock — this can take a few seconds.`];return e===`SIGINT`&&t.push(`Press Ctrl+C again to force quit.`),t}async function de(e,t){let n=ue(process.env);n!==null&&(process.env.OK_CONSOLE_LEVEL=n);let{renderBanner:r}=await import(`./banner-Be20aAVc.mjs`),{accent:i,dim:a,error:o,warning:s}=await import(`./colors-MGDi6UGf.mjs`),c=process.cwd(),l=t.remote!==void 0&&t.remote!==!1,u=typeof t.remote==`string`?t.remote:void 0,f=u===void 0?e:{...e,remote:{...e.remote,url:u}};process.title=U(c),l&&(typeof f.remote?.url!=`string`||f.remote.url===``)&&(console.error(o("--remote requires a public tunnel URL — pass it (`ok start --remote https://<your-tunnel-host>`) or set remote.url in .ok/config.yml.")),process.exit(78)),l&&console.warn(s([``,`⚠ REMOTE ACCESS ENABLED — no server-side authentication.`,` Anyone who can reach ${f.remote?.url} has FULL control of this`,` knowledge base, including sync, publishing, credentials, and local operations.`,` Restrict who can reach it at the tunnel: ngrok OAuth, Cloudflare Access,`,` Tailscale ACLs, or equivalent edge auth.`,``].join(`
2
2
  `)));let p=V(t,process.env),m=H(p,l);m.coerced&&console.warn(`remote access is enabled and ${p} is not an IPv4 loopback bind — tunnels proxy to 127.0.0.1, so binding ${p} would leave the tunnel dialing a dead port. Using 127.0.0.1.`);let h=m.host,_=t.port===void 0?void 0:Number(t.port),v=process.env.PORT?Number(process.env.PORT):void 0,b=t.uiPort===void 0?void 0:Number(t.uiPort);l&&_===void 0&&v!==void 0&&console.warn(`remote access is enabled — ignoring env PORT=${process.env.PORT}; the tunnel's port mapping targets the stable remote port (${f.remote?.port}). Pass --port to override deliberately.`);let x=q(_,v,b,l)??(l?f.remote?.port:void 0);if(b!==void 0){let{readServerLock:e,resolveLockDir:t}=await import(`./src-B_Esv3oA.mjs`);if(J(b,e(t(c)))){await X({cwd:c,uiPort:b});return}}let S=t.reactShellDistDir;if(l&&S===void 0){let e=import.meta.dirname??new URL(`.`,import.meta.url).pathname;S=[g(e,`public`),g(e,`../../app/dist`),g(e,`../../../app/dist`)].find(e=>y(e)),S===void 0&&console.warn(`remote access: bundled web UI not found — serving /mcp and /api only over the tunnel.`)}let C;try{C=await se({config:f,cwd:c,host:h,port:x,...b===void 0?{}:{uiPort:b},...t.serveContentAssets===void 0?{}:{serveContentAssets:t.serveContentAssets},...S?{reactShellDistDir:S}:{},...t.singleFile?{singleFile:t.singleFile}:{},...t.projectDir?{projectDir:t.projectDir}:{},...l?{enableRemote:!0}:{}})}catch(e){e instanceof W&&(console.error(o(e.message)),process.exit(1));let t=await import(`./src-B_Esv3oA.mjs`);if((e instanceof t.GitNotAvailableError||e instanceof t.GitTooOldError)&&process.exit(78),e instanceof t.RemoteConfigError&&(console.error(o(e.message)),process.exit(78)),(e instanceof t.SingleFileNotFoundError||e instanceof t.SingleFileNotAFileError||e instanceof t.SingleFileNotMarkdownError)&&(console.error(o(e.message)),process.exit(1)),b!==void 0&&fe(e,t)){await X({cwd:c,uiPort:b});return}let n=pe(e,c,t);n!==null&&(console.error(o(n)),process.exit(1)),console.error(`${o(`Failed to start:`)} ${e instanceof Error?e.stack??e.message:String(e)}`),process.exit(1)}let w=!1,T=async e=>{if(w)return;w=!0;let[t,...n]=$(e);console.log(i(`\n${t}`));for(let e of n)console.log(a(` ${e}`));if(C.spawnedUiPid!==null)try{let{getLogger:e,isProcessAlive:t,readUiLock:n}=await import(`./src-B_Esv3oA.mjs`);await Q({readUiLock:()=>n(C.lockDir),spawnedUiPid:()=>C.spawnedUiPid,isAlive:t,killPid:(e,t)=>process.kill(e,t),log:e(`start`),reason:`shutdown`})}catch(e){console.error(`${o(`ui sibling teardown failed:`)} ${e instanceof Error?e.stack??e.message:String(e)}`)}try{await C.destroy()}catch(e){console.error(`${o(`destroy() failed:`)} ${e instanceof Error?e.stack??e.message:String(e)}`),process.exitCode=1}process.exit(process.exitCode??0)};process.once(`SIGINT`,()=>{T(`SIGINT`)}),process.once(`SIGTERM`,()=>{T(`SIGTERM`)});let E=`http://${h}:${C.port}`,D=h===`0.0.0.0`||h===`::`?`http://0.0.0.0:${C.port}`:void 0,O=C.resolvedUiPort,k=O!==null&&O>0?`http://${h}:${O}`:E;console.log(r({name:`open-knowledge`,version:d,localUrl:k,apiUrl:k===E?void 0:E,networkUrl:D,nextSteps:[`Open the Editor URL in your browser to start editing.`]}));let A={"shadow-repo":`Version history and branch-switch safety unavailable`,"file-watcher":`External file changes will not sync to the editor`,"head-watcher":`Git branch switches may cause document inconsistency`};C.ready.then(async()=>{if(C.degraded.length>0){console.log();for(let e of C.degraded){let t=A[e]??`${e} (check server logs for details)`;console.warn(` ${s(`⚠`)} ${s(e)}: ${a(t)}`)}console.log()}if(t.open){let{openBrowser:e}=await import(`./open-browser-iTSXc4_G.mjs`);e(k)}}).catch(e=>{console.error(` ${o(`Server initialization failed:`)} ${e instanceof Error?e.message:String(e)}`)})}function fe(e,t){let n=t.ServerLockCollisionError;return n!==void 0&&e instanceof n}function pe(e,t,n){let r=n.ServerLockCollisionError;if(r===void 0||!(e instanceof r))return null;try{let e=m(t,`.ok`),r=n.readServerLock(e);return r?r.kind===`interactive`?`OpenKnowledge desktop is currently running on this project. Quit it or use --cwd to point elsewhere.`:r.kind===`mcp-spawned`?"An MCP-spawned server holds this lock; it should release on idle-shutdown (~30 min). Or run `ok stop`.":"OpenKnowledge server is already running on this project — check `ok status` or `ok stop`.":"OpenKnowledge server is already running on this project — check `ok status` or `ok stop`."}catch{return null}}function me(e){return new o(`start`).description(`Start the knowledge base collab server`).option(`-p, --port <port>`,`Server port`,void 0).option(`--ui-port <port>`,`Pin the ok ui sibling to <port> and connect (not exit) if a server already runs here — the worktree-preview recipe path`,le).option(`-H, --host <host>`,`Server host`,void 0).option(`--open`,`Open browser after start`).option(`--mode <mode>`,`Force dispatch mode: 'browser' or 'app'`,ce).option(`--serve-content-assets`,`Serve content assets from this server (now the default; kept for compatibility)`).option(`--react-shell-dist-dir <path>`,`Serve React shell from <path> (suppresses ok ui sibling)`).option(`--single-file <path>`,`No-project ephemeral single-file mode: scope the server to one markdown file (git + MCP off)`).option(`--project-dir <dir>`,`Throwaway project root for --single-file (where ephemeral .ok/ state lives)`).option(`--remote [url]`,`Serve through a tunnel: admit requests carrying the tunnel Host with NO server-side auth (anyone who can reach the URL has full control — restrict access at the tunnel with edge auth). Bare --remote uses remote.url from .ok/config.yml; --remote <url> supplies it for this run.`).action(async t=>{let n=e();if(t.mode===`app`){t.open&&(process.stderr.write(`error: option '--mode=app' cannot be combined with '--open' (--open opens a browser tab against the local server, which app mode does not boot)
3
3
  `),process.exit(2));let e=[];if(t.port!==void 0&&e.push(`--port`),t.uiPort!==void 0&&e.push(`--ui-port`),t.host!==void 0&&e.push(`--host`),e.length>0){let t=process.env.OK_LOG_LEVEL??`info`;(t===`debug`||t===`trace`)&&console.error(`--mode=app: ignoring ${e.join(`, `)}`)}let n=I(A());if(n.available){L({spawn:f},n);return}console.error(R(n.reason)),process.exit(1)}await de(n,t)})}export{B as C,D,L as E,ae as S,I as T,K as _,H as a,pe as b,G as c,fe as d,q as f,J as g,de as h,oe as i,U as l,ue as m,Z as n,Y as o,V as p,se as r,X as s,W as t,$ as u,me as v,A as w,ie as x,Q as y};
4
- //# sourceMappingURL=start-ffP2Ihoz.mjs.map
4
+ //# sourceMappingURL=start-DKhdbh0o.mjs.map
@@ -0,0 +1 @@
1
+ import{p as e,r as t,v as n}from"./start-DKhdbh0o.mjs";export{t as bootStartServer,e as resolveHost,n as startCommand};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inkeep/open-knowledge",
3
- "version": "0.49.0-beta.27",
3
+ "version": "0.49.0-beta.28",
4
4
  "license": "GPL-3.0-or-later",
5
5
  "private": false,
6
6
  "type": "module",
@@ -62,10 +62,10 @@
62
62
  "ajv-formats": "^3.0.1",
63
63
  "tsdown": "^0.21.7",
64
64
  "typescript": "^5.9.3",
65
- "@inkeep/open-knowledge-app": "0.49.0-beta.27",
65
+ "@inkeep/open-knowledge-app": "0.49.0-beta.28",
66
66
  "@inkeep/open-knowledge-native-config": "0.0.0",
67
- "@inkeep/open-knowledge-server": "0.49.0-beta.27",
68
- "@inkeep/open-knowledge-core": "0.49.0-beta.27"
67
+ "@inkeep/open-knowledge-core": "0.49.0-beta.28",
68
+ "@inkeep/open-knowledge-server": "0.49.0-beta.28"
69
69
  },
70
70
  "scripts": {
71
71
  "build:cli": "rm -rf dist && tsdown",
@@ -1,2 +0,0 @@
1
- import"./src-TKCctdpc.mjs";var e=`0.49.0-beta.27`;const t=`config.yml`,n=e;export{n,t};
2
- //# sourceMappingURL=constants-BEe0tuQx.mjs.map
@@ -1 +0,0 @@
1
- import{g as e}from"./init-BUIEpJX9.mjs";export{e as runInit};
@@ -1 +0,0 @@
1
- import{n as e}from"./loader-CqgZy7s4.mjs";export{e as loadConfig};
@@ -1 +0,0 @@
1
- import{n as e,t}from"./preview-CW1IxLsJ.mjs";export{t as formatPreviewBlock,e as previewContent};
@@ -1 +0,0 @@
1
- import{t as e}from"./index-Cq2BuWd2.js";export{e as FeedbackForm};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./TerminalPanel-BAOlww8F.js","./chunk-CYidjpOJ.js","./dist-CQI6-1xM2.js","./preload-helper-Chd9yIcd.js","./trace-api-DH580DYm.js","./lib-DcrRfjuF.js","./html-void-elements-Bkr32DGT.js","./lib-BHGXbMkc.js","./markdownit-CIgVFnWs.js","./w3c-keyname-hgmz1BF7.js","./dist-Nvb76hAm.js","./jsx-runtime-BUgB2tll.js","./react-f2sANaYj.js","./button-RQ5o7P7w.js","./dist-DUWYPul7.js","./bundle-mjs-SHeFpKGC.js","./compiler-runtime-BfE3aGVn.js","./utils-CPqDy6Hr.js","./x-COTyTduF.js","./createLucideIcon-BbftclCc.js","./dist-PQ5KMVDh.js","./dist-CEwo98ia.js","./react-dom-DPxgxlDT.js","./file-tree-adapter-NC64LhE5.js","./file-tree-rename-validation-CEz8MVWM.js","./file-tree-utils-CBnjZ8_a.js","./navigation-targets-D-iDEja4.js","./doc-paths-D1ML_anF.js","./skill-scope-78Suy4sY.js","./terminal-command-events-BBYZtptJ.js","./use-live-xterm-theme-CcaaVudK.js","./config-context-Dqp-CwnJ.js","./TerminalPanel-BrP-ENHg.css","./ThreadView-DeyKw79l.js","./dist-C7IFraT6.js","./checkbox-V0IoPAe3.js","./dist-Bi80hc1t.js","./dist-CIv09IXf.js","./dist-CR6aO28t.js","./check-BLuQ2zvV.js","./minus-DPAjfzCa.js","./dropdown-menu-BhMtMvZp.js","./dist-G89kioZo.js","./dist-DpaqLIPT.js","./floating-ui.dom-C0wusa09.js","./dist-By2lAhKX.js","./dist-DY-494HN.js","./es2015-B2hWAwcf.js","./dist-DMj9iIHH.js","./chevron-right-BU8AeJST.js","./local-menu-action-bus-DLozq_c4.js","./separator-k0mwGcaM.js","./switch-0kSGDL9E.js","./tooltip-x7BNUa3s.js","./DocumentContext-nOyI-2M0.js","./cm-theme-BJSRL90r.js","./dist-BlH6jxEE.js","./dist-DndwauQ3.js","./dist-BCM06z1D.js","./dist-DJ3iQH0N.js","./dist-ClczuKkQ.js","./dist-DvtYFuZI.js","./dist-BDJLSjo2.js","./dist--4AcVRue.js","./dist-yYRRvtMr.js","./stex-CyLY7DTo.js","./config-provider-CA7jSjm6.js","./client-version-CyKndMN4.js","./i18n-CYjCal_m.js","./messages-CzRXVtjz.js","./propagation-api-DSg7UKuw.js","./select-CRztynyQ.js","./chevron-down-DrpHBSgH.js","./chevron-up-CsH_dTwv.js","./collapsible-OhEmjTXw.js","./dialog-eak3pI7G.js","./CodeMirrorPropInput-9fhI0VAh.js","./folder-open-DoQalFip.js","./trash-2-BSr7FcE8.js","./asset-dispatch-Dst62kKY.js","./external-link-BkNoUOYg.js","./documents-fetch-BTUkzxjd.js","./git-branch-BWBPTGqT.js","./Mermaid-Cr48L9fH.js","./triangle-alert-DNTyNeem.js","./CopyButton-DysciFW5.js","./prop-types-DyYLLIQb.js","./documents-events-CU1SZlDl.js","./parse-api-error-Cyn4P6OR.js","./startup-marks-BzFN1cqP.js","./eye-DYUvwA0Z.js","./hash-BZXl_HqD.js","./info-Jj1j2YxC.js","./loader-circle-Coob8S41.js","./paperclip-9gdTBktj.js","./badge-B89o8Vy9.js","./input-BKUcczSW.js","./use-collab-url-CxpQAoZ0.js","./skills-api-Dx4VSQB1.js","./DocumentContext-B0sQn39F.css","./libesm-DLjHMG6S.js","./chunk-BO2N2NFS-XrP3H1kD.js","./RegisteredAgentIcon-Cdt1gfjt.js","./cursor-Df-vt--2.js","./download-Bq4sKAdj.js","./history-BNEST2Cx.js","./list-plus-IYEFhKGU.js","./comment-chips-DTSyL-J1.js","./follow-file-w7JbrzZs.js","./square-pen-D3oI-YUs.js","./terminal-mGTI25Qq.js","./wrench-BPXVnAE5.js","./mascot-outline-CtS592mc.js","./skeleton-ColtBPsg.js","./textarea-C5-cm3M6.js","./thread-client-DSDduEdo.js","./thread-draft-staging-DZhf3sQU.js","./agent-presence-DntZZFlY.js","./use-workspace-C2xbCdck.js"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./chunk-CYidjpOJ.js";import{t}from"./preload-helper-Chd9yIcd.js";import{t as n}from"./jsx-runtime-BUgB2tll.js";import{t as r}from"./react-f2sANaYj.js";import{n as i,r as a}from"./dist-Nvb76hAm.js";import{t as o}from"./useQuery-ZeEDLtxh.js";import{t as s}from"./react-dom-DPxgxlDT.js";import{t as c}from"./compiler-runtime-BfE3aGVn.js";import{a as l,c as u,l as d,n as f,o as p,r as m,s as h}from"./local-menu-action-bus-DLozq_c4.js";import{t as g}from"./utils-CPqDy6Hr.js";import{t as _}from"./button-RQ5o7P7w.js";import{i as v,n as y,t as b}from"./tooltip-x7BNUa3s.js";import{a as x,i as S,m as C,o as w,r as T,t as E,u as D}from"./dropdown-menu-BhMtMvZp.js";import{i as O,n as ee,r as k,t as A}from"./tabs-CjOEhhKP.js";import{C as j,S as M,a as N,b as te,f as P,g as F,i as I,n as ne,o as L,s as re,v as ie}from"./agent-visibility-CvZ8XtPP.js";import{i as ae}from"./terminal-telemetry-C9J9jNy9.js";import{Pt as oe}from"./dist-CQI6-1xM2.js";import{n as se,t as ce}from"./RegisteredAgentIcon-Cdt1gfjt.js";import{t as R}from"./check-BLuQ2zvV.js";import{t as le}from"./chevron-down-DrpHBSgH.js";import{t as z}from"./chevron-right-BU8AeJST.js";import{t as B}from"./history-BNEST2Cx.js";import{t as ue}from"./loader-circle-Coob8S41.js";import{D as de,E as V,I as H,M as fe,O as pe,P as U,S as W,T as me,_ as G,a as he,f as K,i as ge,j as _e,k as ve,s as ye,t as be,x as xe,y as Se}from"./terminal-launch-events-94aIhofY.js";import{t as q}from"./trash-2-BSr7FcE8.js";import{t as Ce}from"./x-COTyTduF.js";import{n as we}from"./dist-CEwo98ia.js";import{t as Te}from"./dist-C7IFraT6.js";import{i as Ee}from"./use-settings-route-DMLcMwjw.js";import{t as De}from"./overlay-layers-BqWhClsR.js";import{a as Oe,d as ke,g as Ae,h as je,n as J,r as Me,s as Ne,t as Pe}from"./sortable.esm-DlAqBM0z.js";import{r as Fe,t as Ie}from"./input-group-H-ZoGiXT.js";import{c as Le,l as Re,o as ze,r as Be,t as Ve}from"./thread-client-DSDduEdo.js";import{t as He}from"./thread-draft-staging-DZhf3sQU.js";import{n as Ue,t as We}from"./use-terminal-enabled-BHdXkRUU.js";var Ge=e(s(),1),Y=c(),X=e(r(),1),Z=n();function Ke(e){let t=(0,Y.c)(26),{archived:n,openThreadIds:r,onOpenThread:i}=e,{_:o}=a(),s=Be(),[c,u]=(0,X.useState)(!1),[d,f]=(0,X.useState)(null),[h,x]=(0,X.useState)(0),S=(0,X.useId)(),C;t[0]===o?C=t[1]:(C=o({id:`V0mbgd`}),t[0]=o,t[1]=C);let w=C,T=m,E;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(E=e=>{u(e),e?x(Date.now()):f(null)},t[2]=E):E=t[2];let D;t[3]===o?D=t[4]:(D=o({id:`6FCixu`}),t[3]=o,t[4]=D);let O;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,Z.jsx)(B,{"aria-hidden":`true`}),t[5]=O):O=t[5];let ee;t[6]===D?ee=t[7]:(ee=(0,Z.jsx)(v,{asChild:!0,children:(0,Z.jsx)(p,{asChild:!0,children:(0,Z.jsx)(_,{type:`button`,variant:`ghost`,size:`icon-xs`,className:`shrink-0 cursor-pointer text-muted-foreground hover:text-foreground`,"aria-label":D,"data-testid":`agent-thread-history`,children:O})})}),t[6]=D,t[7]=ee);let k;t[8]===o?k=t[9]:(k=o({id:`6FCixu`}),t[8]=o,t[9]=k);let A;t[10]===k?A=t[11]:(A=(0,Z.jsx)(y,{side:`bottom`,sideOffset:8,children:k}),t[10]=k,t[11]=A);let j;t[12]!==ee||t[13]!==A?(j=(0,Z.jsxs)(b,{children:[ee,A]}),t[12]=ee,t[13]=A,t[14]=j):j=t[14];let M=l,N=n.map(e=>{let t=r.has(e.threadId);if(d===e.threadId&&!t)return(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 rounded-md bg-destructive/5 px-2 py-1`,"data-testid":`agent-thread-history-confirm`,children:[(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs`,children:o({id:`kVgQUA`})}),(0,Z.jsx)(_,{type:`button`,size:`sm`,variant:`destructive`,className:`h-6 px-2 text-xs`,onClick:()=>{s.deleteThread(e.threadId),f(null)},"data-testid":`agent-thread-history-confirm-delete`,children:o({id:`cnGeoo`})}),(0,Z.jsx)(_,{type:`button`,size:`sm`,variant:`ghost`,className:`h-6 px-2 text-xs`,onClick:()=>f(null),children:o({id:`dEgA5A`})})]},e.threadId);let n=`${S}-${e.threadId}`;return(0,Z.jsxs)(`div`,{className:`group flex items-center gap-0.5`,children:[(0,Z.jsxs)(_,{type:`button`,variant:`ghost`,className:`h-auto min-w-0 flex-1 justify-start gap-2 px-2 py-1.5`,onClick:()=>{i(e.threadId),u(!1)},"data-testid":`agent-thread-history-open-${e.threadId}`,children:[(0,Z.jsx)(ce,{agentId:e.agent.id,iconUrl:e.agent.iconUrl,className:`size-4 shrink-0`}),(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-left text-xs`,children:e.title}),(0,Z.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground`,children:Je(e.lastActivityAt,h)})]}),(0,Z.jsxs)(b,{children:[(0,Z.jsx)(v,{asChild:!0,children:(0,Z.jsxs)(`span`,{className:g(`inline-flex`,t&&`cursor-not-allowed`),children:[(0,Z.jsx)(_,{type:`button`,variant:`ghost`,size:`icon-xs`,"aria-label":o({id:`Y2tU6I`,values:{0:e.title}}),"aria-disabled":t||void 0,"aria-describedby":t?n:void 0,className:g(`opacity-0 transition-opacity focus-visible:opacity-100 group-hover:opacity-100`,t?`cursor-not-allowed text-muted-foreground/50`:`text-muted-foreground hover:text-destructive`),onClick:()=>{t||f(e.threadId)},"data-testid":`agent-thread-history-delete-${e.threadId}`,children:(0,Z.jsx)(q,{className:`size-3`,"aria-hidden":`true`})}),t?(0,Z.jsx)(`span`,{id:n,className:`sr-only`,children:w}):null]})}),(0,Z.jsx)(y,{side:`bottom`,sideOffset:8,children:t?w:o({id:`Y2tU6I`,values:{0:e.title}})})]})]},e.threadId)}),te;t[15]===N?te=t[16]:(te=(0,Z.jsx)(`div`,{className:`max-h-80 overflow-y-auto`,children:N}),t[15]=N,t[16]=te);let P;t[17]!==M||t[18]!==te?(P=(0,Z.jsx)(M,{align:`end`,className:`w-72 p-1`,children:te}),t[17]=M,t[18]=te,t[19]=P):P=t[19];let F;return t[20]!==T||t[21]!==c||t[22]!==P||t[23]!==E||t[24]!==j?(F=(0,Z.jsxs)(T,{open:c,onOpenChange:E,children:[j,P]}),t[20]=T,t[21]=c,t[22]=P,t[23]=E,t[24]=j,t[25]=F):F=t[25],F}function qe(e){let t=(0,Y.c)(18),{archived:n,onOpen:r}=e,{_:i}=a(),[o,s]=(0,X.useState)(0),c,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{s(Date.now())},l=[],t[0]=c,t[1]=l):(c=t[0],l=t[1]),(0,X.useEffect)(c,l);let u;t[2]===i?u=t[3]:(u=i({id:`Tq9kNX`}),t[2]=i,t[3]=u);let d;t[4]===u?d=t[5]:(d=(0,Z.jsx)(`p`,{className:`px-1 text-muted-foreground text-xs`,children:u}),t[4]=u,t[5]=d);let f;if(t[6]!==n||t[7]!==o||t[8]!==r){let e;t[10]!==o||t[11]!==r?(e=e=>(0,Z.jsxs)(_,{type:`button`,variant:`ghost`,className:`h-auto w-full min-w-0 justify-start gap-2 px-2 py-1.5`,onClick:()=>r(e.threadId),"data-testid":`agent-thread-empty-open-${e.threadId}`,children:[(0,Z.jsx)(ce,{agentId:e.agent.id,iconUrl:e.agent.iconUrl,className:`size-4 shrink-0`}),(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-left text-xs`,children:e.title}),(0,Z.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground`,children:Je(e.lastActivityAt,o)})]},e.threadId),t[10]=o,t[11]=r,t[12]=e):e=t[12],f=n.map(e),t[6]=n,t[7]=o,t[8]=r,t[9]=f}else f=t[9];let p;t[13]===f?p=t[14]:(p=(0,Z.jsx)(`div`,{className:`flex flex-col gap-0.5`,children:f}),t[13]=f,t[14]=p);let m;return t[15]!==d||t[16]!==p?(m=(0,Z.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-2 overflow-y-auto p-3`,"data-testid":`agent-thread-empty-chooser`,children:[d,p]}),t[15]=d,t[16]=p,t[17]=m):m=t[17],m}function Je(e,t){let n=Math.max(0,t-e);if(n<6e4)return Te._({id:`xOTzt5`});if(n<36e5){let e=Math.round(n/6e4);return Te._({id:`_rP3HI`,values:{minutes:e}})}if(n<864e5){let e=Math.round(n/36e5);return Te._({id:`nYeBmY`,values:{hours:e}})}let r=Math.round(n/864e5);return Te._({id:`LPAv9E`,values:{days:r}})}var Q=new Set;function Ye(e,t,n,r,i){let a=`${e.source}:${e.id}`;Q.has(a)||(Q.add(a),Be().createThread({agent:e,prompt:t??void 0,docName:n??void 0,titleHint:r??void 0}).then(e=>{if(i!=null)try{He(e.threadId,i)}catch(t){console.error(`[agent-threads] draft staging failed for`,e.threadId,t)}}).catch(e=>{console.error(`[agent-threads] launch failed:`,e),we.error(e instanceof Ve?Te._({id:`aaI6cN`}):Te._({id:`2rLM8r`}))}).finally(()=>{Q.delete(a)}))}var $={terminal:`ok-dock-session-order-v1`,agents:`ok-agent-session-order-v1`};function Xe(e){return{order:Array.isArray(e.order)?e.order.filter(e=>typeof e==`string`):[],activeKey:typeof e.activeKey==`string`?e.activeKey:null}}function Ze(e){if(typeof window>`u`)return null;try{let t=window.localStorage.getItem($[e]);return t===null?null:Xe(JSON.parse(t))}catch{return null}}function Qe(e,t){if(!(typeof window>`u`))try{window.localStorage.setItem($[e],JSON.stringify(t))}catch{}}function $e(e,t){return typeof e?.terminal?.getDockState==`function`?e.terminal.getDockState().then(e=>{let n=e[t];if(n==null)return null;let{order:r,activeKey:i}=Xe(n);return r.length===0&&i===null?null:{order:r,activeKey:i}}).catch(e=>(console.warn(`[dock-session-persistence] getDockState failed; cold-starting:`,e),null)):Promise.resolve(Ze(t))}function et(e,t,n){if(typeof e?.terminal?.setDockState==`function`){e.terminal.setDockState({surface:t,order:[...n.order],activeKey:n.activeKey});return}Qe(t,n)}var tt=`ok-terminal-new-tab-bare-v1`;function nt(e){try{return(e??localStorage).getItem(tt)===`1`}catch{return!1}}function rt(e,t){try{let n=t??localStorage;e?n.setItem(tt,`1`):n.removeItem(tt)}catch{}for(let e of it)e()}var it=new Set;function at(){return lt()}function ot(){for(let e of it)e()}typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`storage`,e=>{(e.key===`ok-terminal-new-tab-bare-v1`||e.key===null)&&ot()});function st(e){return it.add(e),()=>it.delete(e)}function ct(){return(0,X.useSyncExternalStore)(st,at,at)}function lt(){try{return typeof localStorage>`u`?!1:nt()}catch{return!1}}var ut=(0,X.lazy)(()=>t(()=>import(`./TerminalPanel-BAOlww8F.js`).then(e=>({default:e.TerminalPanel})),__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]),import.meta.url));function dt(e){let t=(0,Y.c)(15),{bridge:n,onClose:r,onTitleChange:i,launch:o,commandId:s,adoptPtyId:c,onPtyId:l}=e,u=o===void 0?null:o,f=s===void 0?null:s,p=c===void 0?null:c,{enabled:m,synced:h}=We(),g=Ue(),{_}=a(),v=h&&m===!1,y;t[0]!==_||t[1]!==g?(y=function(){if(g===null){we.error(_({id:`V_6bJ4`}));return}let e=g(!0);e.ok||we.error(_({id:`jKd3AP`,values:{0:e.error}}))},t[0]=_,t[1]=g,t[2]=y):y=t[2];let b=y;if(h&&!v){let e;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(`div`,{className:`h-full w-full bg-background`,"aria-hidden":`true`}),t[3]=e):e=t[3];let a;return t[4]!==p||t[5]!==n||t[6]!==f||t[7]!==u||t[8]!==r||t[9]!==l||t[10]!==i?(a=(0,Z.jsx)(d,{fallbackRender:pt,onError:ft,children:(0,Z.jsx)(X.Suspense,{fallback:e,children:(0,Z.jsx)(ut,{bridge:n,className:`h-full`,onClose:r,onTitleChange:i,launch:u,commandId:f,adoptPtyId:p,onPtyId:l})})}),t[4]=p,t[5]=n,t[6]=f,t[7]=u,t[8]=r,t[9]=l,t[10]=i,t[11]=a):a=t[11],a}let x;return t[12]!==b||t[13]!==v?(x=v?(0,Z.jsx)(gt,{onEnable:b}):(0,Z.jsx)(`div`,{className:`h-full w-full bg-background`,"aria-hidden":`true`}),t[12]=b,t[13]=v,t[14]=x):x=t[14],x}function ft(e,t){console.error(`[TerminalGate] rendered fallback for the terminal panel`,e,t.componentStack)}function pt(e){return(0,Z.jsx)(mt,{...e})}function mt(e){let t=(0,Y.c)(15),{error:n}=e,{_:r}=a(),i;t[0]!==r||t[1]!==n?(i=n instanceof Error&&/dynamically imported module|Failed to fetch/i.test(n.message)?r({id:`Y8ViJx`}):r({id:`fbsiBw`}),t[0]=r,t[1]=n,t[2]=i):i=t[2];let o=i,s;t[3]===r?s=t[4]:(s=r({id:`6MnZEC`}),t[3]=r,t[4]=s);let c;t[5]===o?c=t[6]:(c=(0,Z.jsx)(`p`,{className:`max-w-sm text-sm text-foreground`,children:o}),t[5]=o,t[6]=c);let l;t[7]===r?l=t[8]:(l=r({id:`HpK_8d`}),t[7]=r,t[8]=l);let u;t[9]===l?u=t[10]:(u=(0,Z.jsx)(_,{onClick:ht,children:l}),t[9]=l,t[10]=u);let d;return t[11]!==s||t[12]!==c||t[13]!==u?(d=(0,Z.jsxs)(`section`,{"aria-label":s,className:`flex h-full w-full flex-col items-center justify-center gap-3 bg-background p-6 text-center`,role:`alert`,children:[c,u]}),t[11]=s,t[12]=c,t[13]=u,t[14]=d):d=t[14],d}function ht(){return window.location.reload()}function gt(e){let t=(0,Y.c)(20),{onEnable:n}=e,{_:r}=a(),i;t[0]===r?i=t[1]:(i=r({id:`_XWY2J`}),t[0]=r,t[1]=i);let o;t[2]===r?o=t[3]:(o=r({id:`oYepHb`}),t[2]=r,t[3]=o);let s;t[4]===o?s=t[5]:(s=(0,Z.jsx)(`p`,{className:`max-w-sm text-sm text-foreground`,children:o}),t[4]=o,t[5]=s);let c;t[6]===r?c=t[7]:(c=r({id:`v2ZW0K`}),t[6]=r,t[7]=c);let l;t[8]!==n||t[9]!==c?(l=(0,Z.jsx)(_,{onClick:n,children:c}),t[8]=n,t[9]=c,t[10]=l):l=t[10];let u;t[11]===r?u=t[12]:(u=r({id:`ICoNYz`}),t[11]=r,t[12]=u);let d;t[13]===u?d=t[14]:(d=(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:u}),t[13]=u,t[14]=d);let f;return t[15]!==i||t[16]!==s||t[17]!==l||t[18]!==d?(f=(0,Z.jsxs)(`section`,{"aria-label":i,className:`flex h-full w-full flex-col items-center justify-center gap-3 bg-background p-6 text-center`,children:[s,l,d]}),t[15]=i,t[16]=s,t[17]=l,t[18]=d,t[19]=f):f=t[19],f}function _t(e){let t=(0,Y.c)(67),{selected:n,onLaunchSelected:r,showAgents:s,registeredAgents:c,onPickAgent:l,onOpenSettings:d,liveThreadCount:f,showClis:p,onPickCli:m,onPickTerminal:O,visibleClis:ee,className:k}=e,A=ee===void 0?I:ee,{_:j}=a(),[M,te]=(0,X.useState)(!1),P;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(P=[`acp-catalog`],t[0]=P):P=t[0];let F=M&&s,ne;t[1]===F?ne=t[2]:(ne={queryKey:P,queryFn:vt,enabled:F,staleTime:3e5},t[1]=F,t[2]=ne);let ie=f>=(o(ne).data?.maxThreads??8),ae=s||p,se;t[3]!==j||t[4]!==n.agent||t[5]!==n.cli||t[6]!==n.kind?(se=n.kind===`terminal`?j({id:`AB4qw9`}):n.kind===`cli`?j({id:`nP-KFo`,values:{0:oe[n.cli].displayName}}):n.agent===null?j({id:`G7bn_N`}):j({id:`nP-KFo`,values:{0:n.agent.name}}),t[3]=j,t[4]=n.agent,t[5]=n.cli,t[6]=n.kind,t[7]=se):se=t[7];let z=se,B;t[8]===k?B=t[9]:(B=g(`flex shrink-0 items-center`,k),t[8]=k,t[9]=B);let ue=ae&&`rounded-r-none`,de;t[10]===ue?de=t[11]:(de=g(`cursor-pointer gap-0.5 px-1.5 text-muted-foreground hover:text-foreground`,ue),t[10]=ue,t[11]=de);let V;t[12]===n?V=t[13]:(V=n.kind===`terminal`?null:(0,Z.jsx)(yt,{selected:n,className:`size-3.5`}),t[12]=n,t[13]=V);let fe;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(fe=(0,Z.jsx)(u,{"aria-hidden":`true`,className:`size-3`}),t[14]=fe):fe=t[14];let pe;t[15]!==r||t[16]!==z||t[17]!==de||t[18]!==V?(pe=(0,Z.jsx)(v,{asChild:!0,children:(0,Z.jsxs)(_,{type:`button`,variant:`ghost`,size:`xs`,"aria-label":z,"data-testid":`terminal-new-chat`,className:de,onClick:r,children:[V,fe]})}),t[15]=r,t[16]=z,t[17]=de,t[18]=V,t[19]=pe):pe=t[19];let U;t[20]===z?U=t[21]:(U=(0,Z.jsx)(y,{side:`bottom`,sideOffset:8,children:z}),t[20]=z,t[21]=U);let W;t[22]!==pe||t[23]!==U?(W=(0,Z.jsxs)(b,{children:[pe,U]}),t[22]=pe,t[23]=U,t[24]=W):W=t[24];let me;t[25]!==j||t[26]!==ae?(me=ae?(0,Z.jsx)(C,{asChild:!0,children:(0,Z.jsx)(_,{type:`button`,variant:`ghost`,size:`icon-xs`,"aria-label":j({id:`l87Deg`}),"data-testid":`terminal-new-chat-menu`,className:`cursor-pointer rounded-l-none text-muted-foreground hover:text-foreground`,children:(0,Z.jsx)(le,{"aria-hidden":`true`,className:`size-3`})})}):null,t[25]=j,t[26]=ae,t[27]=me):me=t[27];let G;t[28]!==j||t[29]!==ie||t[30]!==l||t[31]!==c||t[32]!==n.agent?.id||t[33]!==n.agent?.source||t[34]!==n.kind||t[35]!==s?(G=s&&c.length>0?(0,Z.jsxs)(S,{"aria-label":j({id:`vPKX2i`}),children:[(0,Z.jsxs)(w,{className:`flex items-center gap-1.5`,children:[(0,Z.jsx)(i,{id:`RXEbZy`}),(0,Z.jsx)(re,{})]}),c.map(e=>{let t=n.kind===`agent`&&n.agent?.source===e.source&&n.agent?.id===e.id;return(0,Z.jsxs)(x,{onSelect:()=>l(e),disabled:ie,"data-testid":`terminal-new-chat-agent-${e.id}`,"aria-current":t?`true`:void 0,children:[(0,Z.jsx)(ce,{agentId:e.id,iconUrl:e.iconUrl,className:`size-4`}),(0,Z.jsx)(`span`,{className:`flex-1 truncate`,children:e.name}),t?(0,Z.jsx)(R,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}):null]},`${e.source}:${e.id}`)}),ie?(0,Z.jsx)(w,{className:`py-1 font-normal text-muted-foreground text-xs`,"data-testid":`terminal-new-chat-cap`,children:(0,Z.jsx)(i,{id:`0QVrvp`})}):null]}):null,t[28]=j,t[29]=ie,t[30]=l,t[31]=c,t[32]=n.agent?.id,t[33]=n.agent?.source,t[34]=n.kind,t[35]=s,t[36]=G):G=t[36];let he;t[37]!==c||t[38]!==s||t[39]!==p?(he=s&&c.length>0&&p?(0,Z.jsx)(D,{}):null,t[37]=c,t[38]=s,t[39]=p,t[40]=he):he=t[40];let K;t[41]!==j||t[42]!==m||t[43]!==O||t[44]!==n.cli||t[45]!==n.kind||t[46]!==p||t[47]!==A?(K=p?(0,Z.jsxs)(S,{"aria-label":j({id:`ALhMYW`}),children:[(0,Z.jsx)(w,{children:(0,Z.jsx)(i,{id:`ALhMYW`})}),A.map(e=>{let{displayName:t}=oe[e],r=n.kind===`cli`&&n.cli===e;return(0,Z.jsxs)(x,{onSelect:()=>m(e),"data-testid":`terminal-new-chat-cli-${e}`,"aria-label":j({id:`9mEZeD`,values:{name:t}}),"aria-current":r?`true`:void 0,children:[(0,Z.jsx)(L,{id:N(e),className:`size-4`,"aria-hidden":`true`}),(0,Z.jsx)(`span`,{className:`flex-1`,children:t}),r?(0,Z.jsx)(R,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}):null]},e)}),(0,Z.jsxs)(x,{onSelect:O,"data-testid":`terminal-new-chat-terminal`,"aria-current":n.kind===`terminal`?`true`:void 0,children:[(0,Z.jsx)(H,{"aria-hidden":`true`,className:`size-4`}),(0,Z.jsx)(`span`,{className:`flex-1`,children:(0,Z.jsx)(i,{id:`ALhMYW`})}),n.kind===`terminal`?(0,Z.jsx)(R,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}):null]})]}):null,t[41]=j,t[42]=m,t[43]=O,t[44]=n.cli,t[45]=n.kind,t[46]=p,t[47]=A,t[48]=K):K=t[48];let ge;t[49]!==d||t[50]!==c||t[51]!==s||t[52]!==p?(ge=s?(0,Z.jsxs)(Z.Fragment,{children:[c.length>0||p?(0,Z.jsx)(D,{}):null,(0,Z.jsxs)(x,{onSelect:d,"data-testid":`terminal-new-chat-settings`,children:[(0,Z.jsx)(h,{"aria-hidden":`true`,className:`size-4 text-muted-foreground`}),(0,Z.jsx)(`span`,{className:`flex-1`,children:(0,Z.jsx)(i,{id:`jRAGrQ`})})]})]}):null,t[49]=d,t[50]=c,t[51]=s,t[52]=p,t[53]=ge):ge=t[53];let _e;t[54]!==G||t[55]!==he||t[56]!==K||t[57]!==ge?(_e=(0,Z.jsxs)(T,{align:`start`,className:`max-h-80 min-w-[200px]`,children:[G,he,K,ge]}),t[54]=G,t[55]=he,t[56]=K,t[57]=ge,t[58]=_e):_e=t[58];let ve;t[59]!==M||t[60]!==me||t[61]!==_e?(ve=(0,Z.jsxs)(E,{open:M,onOpenChange:te,children:[me,_e]}),t[59]=M,t[60]=me,t[61]=_e,t[62]=ve):ve=t[62];let ye;return t[63]!==W||t[64]!==ve||t[65]!==B?(ye=(0,Z.jsxs)(`div`,{className:B,children:[W,ve]}),t[63]=W,t[64]=ve,t[65]=B,t[66]=ye):ye=t[66],ye}function vt(e){let{signal:t}=e;return ae(t)}function yt(e){let t=(0,Y.c)(13),{selected:n,className:r}=e;if(n.kind===`terminal`){let e;return t[0]===r?e=t[1]:(e=(0,Z.jsx)(H,{"aria-hidden":`true`,className:r}),t[0]=r,t[1]=e),e}if(n.kind===`cli`){let e;t[2]===n.cli?e=t[3]:(e=N(n.cli),t[2]=n.cli,t[3]=e);let i;return t[4]!==r||t[5]!==e?(i=(0,Z.jsx)(L,{id:e,className:r,"aria-hidden":`true`}),t[4]=r,t[5]=e,t[6]=i):i=t[6],i}if(n.agent!==null){let e;return t[7]!==r||t[8]!==n.agent.iconUrl||t[9]!==n.agent.id?(e=(0,Z.jsx)(ce,{agentId:n.agent.id,iconUrl:n.agent.iconUrl,className:r}),t[7]=r,t[8]=n.agent.iconUrl,t[9]=n.agent.id,t[10]=e):e=t[10],e}let i;return t[11]===r?i=t[12]:(i=(0,Z.jsx)(se,{"aria-hidden":`true`,className:r}),t[11]=r,t[12]=i),i}var bt=`[data-terminal-tab-sortable]`;function xt(e){let t=(0,Y.c)(17),{id:n,disabled:r,isActive:i,children:a}=e,o;t[0]!==r||t[1]!==n?(o={id:n,disabled:r},t[0]=r,t[1]=n,t[2]=o):o=t[2];let{setNodeRef:s,listeners:c,rect:l,transform:u,transition:d,isDragging:f}=Oe(o),p=l.current?.width,m;t[3]!==f||t[4]!==p||t[5]!==u||t[6]!==d?(m=K({activeWidth:p,isDragging:f,transform:u,transition:d}),t[3]=f,t[4]=p,t[5]=u,t[6]=d,t[7]=m):m=t[7];let h=m,_=i?`bg-muted`:`hover:bg-muted/50`,v=f&&`z-10`,y;t[8]!==_||t[9]!==v?(y=g(`group flex shrink-0 cursor-default items-center rounded-md pr-0.5 transition-colors`,_,v),t[8]=_,t[9]=v,t[10]=y):y=t[10];let b;return t[11]!==a||t[12]!==c||t[13]!==s||t[14]!==h||t[15]!==y?(b=(0,Z.jsx)(`div`,{ref:s,"data-terminal-tab-sortable":``,style:h,className:y,...c,children:a}),t[11]=a,t[12]=c,t[13]=s,t[14]=h,t[15]=y,t[16]=b):b=t[16],b}function St(e){let t=(0,Y.c)(86),{sessions:n,activeSessionId:r,onSelect:o,onTabActivate:s,newButton:c,trailingControls:l,onClose:u,onRename:d,onReorder:f,onDragActiveChange:p,edge:m,onCollapse:h,children:x,className:S,draggable:C}=e,{_:w}=a(),T=m===`right`,[E,D]=(0,X.useState)(null),[ee,j]=(0,X.useState)(``),M=(0,X.useRef)(null),N=(0,X.useRef)(!1),te=d!=null,P,F;t[0]===E?(P=t[1],F=t[2]):(P=()=>{E!=null&&(M.current?.focus(),M.current?.select())},F=[E],t[0]=E,t[1]=P,t[2]=F),(0,X.useEffect)(P,F);let I,ne;t[3]!==E||t[4]!==n?(I=()=>{E!=null&&!n.some(e=>e.id===E)&&(N.current=!1,D(null),j(``))},ne=[n,E],t[3]=E,t[4]=n,t[5]=I,t[6]=ne):(I=t[5],ne=t[6]),(0,X.useEffect)(I,ne);let L=function(e){te&&(N.current=!1,D(e.id),j(e.label))},re;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(re=function(e){let t=typeof CSS<`u`&&CSS.escape?CSS.escape(e):e;queueMicrotask(()=>{document.querySelector(`[role="tab"][data-tab-id="${t}"]`)?.focus()})},t[7]=re):re=t[7];let ie=re,ae=function(e){N.current||d?.(e,ee.trim()),N.current=!1,D(null),j(``),ie(e)},oe=(0,X.useRef)(null),se=(0,X.useRef)(null),[ce,R]=(0,X.useState)(null),B;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(B={activationConstraint:{distance:8}},t[8]=B):B=t[8];let ue=Ae(je(ke,B)),de=f!=null,V;t[9]===ce?V=t[10]:(V=ye(ce),t[9]=ce,t[10]=V);let H;t[11]===V?H=t[12]:(H=[V],t[11]=V,t[12]=H);let fe=H,pe;t[13]!==r||t[14]!==n?(pe=r===``?null:`${r}\u0000${n.map(Tt).join(`\0`)}`,t[13]=r,t[14]=n,t[15]=pe):pe=t[15];let U=pe,W,me;t[16]===U?(W=t[17],me=t[18]):(W=()=>{if(U===null)return;let[e]=U.split(`\0`,1),t=typeof CSS<`u`&&CSS.escape?CSS.escape(e):e;se.current?.querySelector(`[data-tab-id="${t}"]`)?.scrollIntoView({block:`nearest`,inline:`nearest`})},me=[U],t[16]=U,t[17]=W,t[18]=me),(0,X.useEffect)(W,me);let K;t[19]===p?K=t[20]:(K=function(){R(G(oe.current,bt)),p?.(!0)},t[19]=p,t[20]=K);let ge=K,_e;t[21]!==p||t[22]!==f||t[23]!==n?(_e=function(e){R(null),p?.(!1);let t=String(e.active.id),r=e.over?String(e.over.id):null;if(!r||t===r)return;let i=n.map(wt),a=i.indexOf(t),o=i.indexOf(r);a<0||o<0||a===o||f?.(J(i,a,o))},t[21]=p,t[22]=f,t[23]=n,t[24]=_e):_e=t[24];let ve=_e,be;t[25]===p?be=t[26]:(be=function(){R(null),p?.(!1)},t[25]=p,t[26]=be);let xe=be,q=A,we;t[27]===S?we=t[28]:(we=g(`flex min-h-0 min-w-0 flex-1 flex-col`,S),t[27]=S,t[28]=we);let Te=C?``:void 0,Ee=C&&`h-[62px] [-webkit-app-region:drag] pr-[22px] pl-[calc(var(--ok-titlebar-reserve-left,1rem)+0.75rem)]`,De;t[29]===Ee?De=t[30]:(De=g(`flex shrink-0 flex-row items-center gap-1 px-1.5 py-1`,Ee),t[29]=Ee,t[30]=De);let Oe=k,Le;t[31]!==w||t[32]!==T?(Le=w(T?{id:`GjsGAu`}:{id:`1MGRQl`}),t[31]=w,t[32]=T,t[33]=Le):Le=t[33];let Re=he,ze=C&&`[-webkit-app-region:no-drag]`,Be;t[34]===ze?Be=t[35]:(Be=g(`flex h-auto min-w-0 items-center justify-start gap-0.5 overflow-x-auto overflow-y-hidden bg-transparent p-0 [scrollbar-width:none] scroll-fade-mask-x`,ze),t[34]=ze,t[35]=Be);let Ve=Ne,He=Se,Ue;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(Ue={container:typeof document<`u`?document.body:void 0},t[36]=Ue):Ue=t[36];let We=Pe,Ge;t[37]===n?Ge=t[38]:(Ge=n.map(Ct),t[37]=n,t[38]=Ge);let Ke=Me,qe=n.map(e=>{let t=e.id===r;return(0,Z.jsx)(xt,{id:e.id,disabled:!de||E!=null,isActive:t,children:E===e.id?(0,Z.jsx)(Ie,{className:g(`h-7 w-40 rounded-md border-0 bg-transparent dark:bg-transparent`,C&&`[-webkit-app-region:no-drag]`),children:(0,Z.jsx)(Fe,{ref:M,value:ee,"aria-label":w({id:`0TnCvC`,values:{0:e.label}}),"data-testid":`terminal-tab-rename-input`,className:`h-7 px-2 text-xs`,onChange:e=>j(e.target.value),onKeyDown:e=>{e.key===`Enter`?(e.preventDefault(),M.current?.blur()):e.key===`Escape`&&(e.preventDefault(),N.current=!0,M.current?.blur())},onBlur:()=>ae(e.id)})}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(b,{children:[(0,Z.jsx)(v,{asChild:!0,children:(0,Z.jsxs)(O,{value:e.id,"data-tab-id":e.id,onClick:t=>{t.detail>=2||s?.(e.id)},onDoubleClick:()=>L(e),onKeyDown:t=>{t.key===`F2`&&(t.preventDefault(),L(e))},className:g(`h-7 flex-none gap-1.5 rounded-md px-2 text-xs`,C&&`[-webkit-app-region:no-drag]`),children:[e.icon,(0,Z.jsx)(`span`,{className:`max-w-40 truncate`,children:e.label})]})}),(0,Z.jsx)(y,{side:`bottom`,sideOffset:8,children:e.label})]}),(0,Z.jsx)(_,{type:`button`,variant:`ghost`,size:`icon-xs`,"aria-label":w({id:`nzHlj8`,values:{0:e.label}}),tabIndex:t?0:-1,className:g(`text-muted-foreground opacity-0 transition-opacity hover:text-foreground group-hover:opacity-100 group-focus-within:opacity-100`,t&&`opacity-100`,C&&`[-webkit-app-region:no-drag]`),onClick:t=>{t.stopPropagation(),u(e.id)},children:(0,Z.jsx)(Ce,{"aria-hidden":`true`})})]})},e.id)}),Je;t[39]!==We||t[40]!==Ge||t[41]!==Ke||t[42]!==qe?(Je=(0,Z.jsx)(We,{items:Ge,strategy:Ke,children:qe}),t[39]=We,t[40]=Ge,t[41]=Ke,t[42]=qe,t[43]=Je):Je=t[43];let Q;t[44]!==Ve||t[45]!==xe||t[46]!==ve||t[47]!==ge||t[48]!==fe||t[49]!==ue||t[50]!==!1||t[51]!==He||t[52]!==Ue||t[53]!==Je?(Q=(0,Z.jsx)(Ve,{sensors:ue,autoScroll:!1,collisionDetection:He,modifiers:fe,onDragStart:ge,onDragEnd:ve,onDragCancel:xe,accessibility:Ue,children:Je}),t[44]=Ve,t[45]=xe,t[46]=ve,t[47]=ge,t[48]=fe,t[49]=ue,t[50]=!1,t[51]=He,t[52]=Ue,t[53]=Je,t[54]=Q):Q=t[54];let Ye;t[55]!==Oe||t[56]!==Le||t[57]!==Re||t[58]!==Be||t[59]!==Q?(Ye=(0,Z.jsx)(Oe,{ref:se,variant:`line`,"aria-label":Le,onWheel:Re,className:Be,children:Q}),t[55]=Oe,t[56]=Le,t[57]=Re,t[58]=Be,t[59]=Q,t[60]=Ye):Ye=t[60];let $;t[61]!==C||t[62]!==c?($=c==null?null:(0,Z.jsx)(`div`,{className:g(`shrink-0`,C&&`[-webkit-app-region:no-drag]`),children:c}),t[61]=C,t[62]=c,t[63]=$):$=t[63];let Xe;t[64]===Symbol.for(`react.memo_cache_sentinel`)?(Xe=(0,Z.jsx)(`div`,{className:`flex-1`}),t[64]=Xe):Xe=t[64];let Ze;t[65]!==C||t[66]!==l?(Ze=l==null?null:(0,Z.jsx)(`div`,{className:g(`shrink-0`,C&&`[-webkit-app-region:no-drag]`),children:l}),t[65]=C,t[66]=l,t[67]=Ze):Ze=t[67];let Qe;t[68]!==w||t[69]!==h||t[70]!==T?(Qe=h==null?null:(0,Z.jsxs)(b,{children:[(0,Z.jsx)(v,{asChild:!0,children:(0,Z.jsx)(_,{type:`button`,variant:`ghost`,size:`icon-xs`,"aria-label":w({id:`o5jB-D`}),className:`shrink-0 cursor-pointer text-muted-foreground hover:text-foreground`,onClick:h,children:T?(0,Z.jsx)(z,{"aria-hidden":`true`}):(0,Z.jsx)(le,{"aria-hidden":`true`})})}),(0,Z.jsx)(y,{side:`bottom`,sideOffset:8,children:(0,Z.jsx)(i,{id:`o5jB-D`})})]}),t[68]=w,t[69]=h,t[70]=T,t[71]=Qe):Qe=t[71];let $e;t[72]!==Te||t[73]!==De||t[74]!==Ye||t[75]!==$||t[76]!==Ze||t[77]!==Qe?($e=(0,Z.jsxs)(`div`,{ref:oe,"data-electron-drag":Te,className:De,children:[Ye,$,Xe,Ze,Qe]}),t[72]=Te,t[73]=De,t[74]=Ye,t[75]=$,t[76]=Ze,t[77]=Qe,t[78]=$e):$e=t[78];let et;return t[79]!==q||t[80]!==r||t[81]!==x||t[82]!==o||t[83]!==we||t[84]!==$e?(et=(0,Z.jsxs)(q,{value:r,onValueChange:o,className:we,children:[$e,x]}),t[79]=q,t[80]=r,t[81]=x,t[82]=o,t[83]=we,t[84]=$e,t[85]=et):et=t[85],et}function Ct(e){return e.id}function wt(e){return e.id}function Tt(e){return e.id}var Et=(0,X.lazy)(()=>t(()=>import(`./ThreadView-DeyKw79l.js`).then(e=>({default:e.ThreadView})),__vite__mapDeps([33,1,3,2,4,5,6,7,8,9,34,10,11,12,35,36,14,22,37,38,39,19,40,16,17,15,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,20,21,67,31,68,69,70,71,72,73,74,75,13,18,76,77,78,26,25,27,28,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,24,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118]),import.meta.url));function Dt(e){return`terminal-session-${e}`}function Ot(e){return typeof CSS<`u`&&CSS.escape?CSS.escape(e):e}function kt(e){e!==``&&document.querySelector(`[data-terminal-session="${Ot(e)}"] .xterm-helper-textarea`)?.focus()}function At(e){e!==``&&document.querySelector(`[data-session-id="${Ot(e)}"] [data-testid="agent-thread-composer"]`)?.focus()}function jt(e){e.kind===`terminal`?kt(e.id):At(e.id)}function Mt(e){return e?.contains(document.activeElement)??!1}function Nt(e,t){return t||Mt(e)}function Pt(e){switch(e){case`running`:return`bg-amber-500 animate-pulse`;case`installing`:case`spawning`:return`bg-sky-500 animate-pulse`;case`auth_required`:case`awaiting_permission`:return`bg-amber-500`;case`ready`:return`bg-emerald-500`;case`error`:return`bg-red-500`;default:return`bg-muted-foreground`}}function Ft(){return(0,Z.jsx)(H,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":`true`})}function It(e){return(0,Z.jsxs)(`span`,{className:`relative inline-flex shrink-0`,children:[(0,Z.jsx)(ce,{agentId:e?.agent.id??``,iconUrl:e?.agent.iconUrl,className:`size-3.5`}),e==null?null:(0,Z.jsx)(`span`,{className:g(`-right-0.5 -bottom-0.5 absolute size-1.5 rounded-full ring-1 ring-background`,Pt(e.status)),"aria-hidden":`true`})]})}var Lt={cli:!0,terminal:!0,desktop:!0};function Rt(e){let t=(0,Y.c)(135),{bridge:n,terminalCapable:r,surface:i,visible:o,onVisibleChange:s,launch:c,commandLaunch:l,threadLaunch:u,installedClis:d,container:p,isShowing:m,onRequestEditorFocus:h}=e,_=r===void 0?!1:r,v=c===void 0?null:c,y=l===void 0?null:l,b=u===void 0?null:u,{_:x}=a(),S=i===`terminal-window`,C=i===`agents-panel`,w=!C,T=w&&_&&n?.terminal!=null,E=C?`right`:`bottom`,D=C?`agents`:`terminal`,O=!S,[k]=(0,X.useState)(on),A,N;t[0]!==p||t[1]!==k?(A=()=>{k==null||p==null||k.parentElement!==p&&p.appendChild(k)},N=[k,p],t[0]=p,t[1]=k,t[2]=A,t[3]=N):(A=t[2],N=t[3]),(0,X.useLayoutEffect)(A,N);let I=w&&typeof n?.terminal?.list==`function`,L=!I&&T&&o,re;t[4]!==n?.terminal?.getDockState||t[5]!==I||t[6]!==L||t[7]!==D||t[8]!==O?(re=()=>I||!O||L||typeof n?.terminal?.getDockState==`function`?null:Ze(D),t[4]=n?.terminal?.getDockState,t[5]=I,t[6]=L,t[7]=D,t[8]=O,t[9]=re):re=t[9];let[ae]=(0,X.useState)(re),se;t[10]===ae?.order?se=t[11]:(se=ae?.order??[],t[10]=ae?.order,t[11]=se);let ce=(0,X.useRef)(se),R=(0,X.useRef)(ae?.activeKey??null),le;t[12]!==L||t[13]!==v?(le=()=>L?[{kind:`terminal`,id:Dt(1),launch:v,commandId:null,title:null,customLabel:null,ordinal:1,adoptPtyId:null}]:[],t[12]=L,t[13]=v,t[14]=le):le=t[14];let[z,B]=(0,X.useState)(le),ue;t[15]===L?ue=t[16]:(ue=()=>L?Dt(1):``,t[15]=L,t[16]=ue);let[H,G]=(0,X.useState)(ue),[he,K]=(0,X.useState)(!I),ye=(0,X.useRef)(!1),Se=(0,X.useRef)(H),q=(0,X.useRef)(z),Ce=(0,X.useRef)(+!!L),we=(0,X.useRef)(L&&v?v.nonce:null),Te=(0,X.useRef)(null),Oe=(0,X.useRef)(null),ke=(0,X.useRef)(S?!1:o),Ae=(0,X.useRef)(new Map),je=(0,X.useRef)(0),J=Re(),Me=Le(),Ne=ze(),Pe=Ne===`connecting`||Ne===`closed`,Fe=j(),Ie=P(),Ve;t[17]===Ie?Ve=t[18]:(Ve=e=>ne(Ie,e.source,e.id,!0,e.supported),t[17]=Ie,t[18]=Ve);let Ue=Fe.filter(Ve),We=ie(Ue,M()),Je;t[19]===J?Je=t[20]:(Je=J.filter(an),t[19]=J,t[20]=Je);let Q=Je.length,$=new Map(J.map(rn)),Xe=new Set($.keys()),Qe;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(Qe=function(e){Be().openArchivedThread(e)},t[21]=Qe):Qe=t[21];let tt=Qe,nt=function(){if(!O)return;let e=Ae.current,t=q.current.map(t=>un(t,e)).filter(nn),r=q.current.find(e=>e.id===Se.current);et(n,D,{order:t,activeKey:r==null?null:un(r,e)})},it=function(e,t){if(t===null){Ae.current.delete(e),Pt(q.current,Se.current);return}Ae.current.set(e,t),Pt(q.current,Se.current);let r=q.current.find(t=>t.id===e);r!=null&&r.kind===`terminal`&&n?.terminal?.setMeta?.(t,{ordinal:r.ordinal,customLabel:r.customLabel}),nt()},at=function(e,t){let n=t===void 0?null:t;R.current=null,Ce.current+=1;let r=Dt(Ce.current);B(t=>[...t,{kind:`terminal`,id:r,launch:e,commandId:n,title:null,customLabel:null,ordinal:Ce.current,adoptPtyId:null}]),G(r)},ot=ve(),st=ct(),lt;t[22]===d?lt=t[23]:(lt=d??{},t[22]=d,t[23]=lt);let ut;t[24]===d?ut=t[25]:(ut=d??{},t[24]=d,t[25]=ut);let ft=W({sticky:ot,effectiveThreadAgent:We,enabledClis:xe(Ie,lt),enabledDesktopTargets:[],installedClis:ut,terminalAvailable:T,threadsAvailable:C,desktopSelectable:!1,preferBareTerminal:st,bareTerminalFallback:!0}),pt=me(ot),mt=ft.kind===`thread`?{kind:`agent`,agent:ft.agent}:ft.kind===`cli`?ft.cli===pt?{kind:`cli`,cli:ft.cli}:{kind:`terminal`}:ft.kind===`terminal`?{kind:`terminal`}:{kind:`agent`,agent:null},ht=function(e){je.current+=1,at({prompt:null,cli:e,nonce:je.current})},gt=function(){mt.kind===`terminal`?at(null):mt.kind===`cli`?ht(mt.cli):mt.kind===`agent`&&mt.agent!=null?Ye({source:mt.agent.source,id:mt.agent.id},null,null,null):Ee()},vt=function(){w&&(mt.kind===`terminal`?at(null):mt.kind===`cli`&&ht(mt.cli))},yt;t[26]===d?yt=t[27]:(yt=d??{},t[26]=d,t[27]=yt);let bt;t[28]===d?bt=t[29]:(bt=d??{},t[28]=d,t[29]=bt);let xt=W({sticky:ot,effectiveThreadAgent:We,enabledClis:xe(Ie,yt),enabledDesktopTargets:[],installedClis:bt,terminalAvailable:_,threadsAvailable:!S,desktopSelectable:!1,preferBareTerminal:!1,bareTerminalFallback:!1}),Ct;t[30]===d?Ct=t[31]:(Ct=d??{},t[30]=d,t[31]=Ct);let wt;t[32]===d?wt=t[33]:(wt=d??{},t[32]=d,t[33]=wt);let Tt=W({sticky:ot,effectiveThreadAgent:We,enabledClis:xe(Ie,Ct),enabledDesktopTargets:[],installedClis:wt,terminalAvailable:_,threadsAvailable:!S,desktopSelectable:!1,preferBareTerminal:st,bareTerminalFallback:!0}),Et;t[34]!==C||t[35]!==S?(Et=function(e){return S?!0:C?e===`thread`||e===`none`:e in Lt},t[34]=C,t[35]=S,t[36]=Et):Et=t[36];let Ot=Et;function Pt(e,t){let r=e.find(e=>e.id===t);if(r==null){fe(null);return}if(r.kind===`thread`){let e=$.get(r.threadId);fe({id:r.id,kind:`thread`,label:e?.agent.name??x({id:`bcm0pR`}),agentId:e?.agent.id??``,iconUrl:e?.agent.iconUrl});return}let i=Ae.current.get(r.id),a=r.launch?.cli;if(i==null||n?.terminal==null||a==null){fe(null);return}fe({id:r.id,kind:`terminal`,label:oe[a].displayName,cli:a})}let Rt;t[37]!==H||t[38]!==J||t[39]!==z?(Rt=[H,z,J],t[37]=H,t[38]=J,t[39]=z,t[40]=Rt):Rt=t[40],(0,X.useEffect)(()=>{Pt(z,H)},Rt);let cn;t[41]!==s||t[42]!==o?(cn=function(){o||s(!0)},t[41]=s,t[42]=o,t[43]=cn):cn=t[43];let fn=cn,pn=function(e){let{text:t,newTab:r,submit:i}=e;if(!Ot(xt.kind))return;o||s(!0);let a=Se.current,c=q.current.find(e=>e.id===a);if(!r&&c!=null){if(c.kind===`thread`){He(c.threadId,t),fn(),queueMicrotask(()=>jt(c));return}let e=Ae.current.get(c.id),r=n?.terminal;if(e!=null&&r!=null&&c.launch?.cli!=null){r.input(e,t),fn(),queueMicrotask(()=>kt(a));return}}if(xt.kind===`thread`){let e={source:xt.agent.source,id:xt.agent.id};i?Ye(e,t,null,null,null):Ye(e,null,null,null,t)}else xt.kind===`cli`?be(t,xt.cli,{stage:!i}):Ee()},mn=function(e){rt(!1),V(de(e)),ht(e)},hn=function(){rt(!0),at(null)},gn;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(gn=function(e){te(e),rt(!1),V(pe(e)),Ye({source:e.source,id:e.id},null,null,null)},t[44]=gn):gn=t[44];let _n=gn,vn;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(vn=function(e,t){let n=t.trim()===``?null:t.trim();B(t=>t.some(t=>t.id===e&&t.kind===`terminal`&&t.title!==n)?t.map(t=>t.id===e&&t.kind===`terminal`?{...t,title:n}:t):t)},t[45]=vn):vn=t[45];let yn=vn,bn=function(e,t){let r=q.current.find(t=>t.id===e);if(r==null)return;if(r.kind===`thread`){Be().renameThread(r.threadId,t);return}let i=t.trim()===``?null:t.trim();B(t=>t.some(t=>t.id===e&&t.kind===`terminal`&&t.customLabel!==i)?t.map(t=>t.id===e&&t.kind===`terminal`?{...t,customLabel:i}:t):t);let a=Ae.current.get(e);a!=null&&n?.terminal?.setMeta?.(a,{customLabel:i})},xn=function(e){return e.kind===`terminal`?e.customLabel??e.title??x({id:`OVjNeX`,values:{0:e.ordinal}}):$.get(e.threadId)?.title??x({id:`iEQQyu`})},Sn=(0,X.useRef)(!1),Cn=(0,X.useRef)(null),wn=(0,X.useRef)(null),Tn=function(e){B(t=>{if(e.length!==t.length)return t;let n=new Map(t.map(tn)),r=[];for(let i of e){let e=n.get(i);if(e==null)return t;r.push(e)}return r.every((e,n)=>e===t[n])?t:r});let t=e.map(e=>Ae.current.get(e)).filter(en);t.length>0&&n?.terminal?.setOrder?.(t)},En=function(e){let t=q.current,n=t.findIndex(e=>e.id===Se.current);if(n<0)return null;let r=n+e;if(r<0||r>=t.length)return null;let i=t.map($t),[a]=i.splice(n,1);return i.splice(r,0,a),Tn(i),{label:xn(t[n]),position:r+1,total:t.length}},Dn=function(){Ot(Tt.kind)&&(o||s(!0),gt())},On=(0,X.useRef)(En),kn=(0,X.useRef)(at),An=(0,X.useRef)(vt),jn=(0,X.useRef)(pn),Mn=(0,X.useRef)(Dn),Nn=function(e){let t=q.current,n=t.findIndex(t=>t.id===e);if(n===-1)return;let r=t[n],i=t.length===1;if(R.current=null,e===Se.current){let e=t[n-1]??t[n+1];G(e?.id??``),e!=null&&queueMicrotask(()=>jt(e))}r.kind===`thread`?Be().closeThread(r.threadId):B(t.filter(t=>t.id!==e)),i&&(s(!1),h())},Pn=(0,X.useRef)(Qt);(0,X.useEffect)(()=>{kn.current=at,An.current=vt,jn.current=pn,Mn.current=Dn,On.current=En,Se.current=H,q.current=z,Pn.current=()=>{let e=q.current.find(e=>e.id===Se.current);if(e?.kind===`terminal`){Nn(e.id);return}let t=[...q.current].reverse().find(Zt);t!=null&&Nn(t.id)}});let Fn;t[46]!==H||t[47]!==n||t[48]!==D||t[49]!==O||t[50]!==z?(Fn=[z,H,O,D,n],t[46]=H,t[47]=n,t[48]=D,t[49]=O,t[50]=z,t[51]=Fn):Fn=t[51],(0,X.useEffect)(()=>{if(!O)return;let e=Ae.current,t=z.map(t=>un(t,e)).filter(Xt),r=z.find(e=>e.id===H);et(n,D,{order:t,activeKey:r==null?null:un(r,e)})},Fn);let In;t[52]!==C||t[53]!==J?(In=[J,C],t[52]=C,t[53]=J,t[54]=In):In=t[54],(0,X.useEffect)(()=>{if(!C)return;let e=new Set(J.map(Yt)),t=q.current,n=new Set(t.filter(Jt).map(qt)),r=[];for(let e of J)n.has(e.threadId)||(Ce.current+=1,r.push({kind:`thread`,id:e.threadId,threadId:e.threadId,ordinal:Ce.current}));let i=t.some(t=>t.kind===`thread`&&!e.has(t.threadId));r.length===0&&!i||B(t=>{let n=t.filter(t=>t.kind!==`thread`||e.has(t.threadId)),i=new Set(n.filter(Kt).map(Gt)),a=r.filter(e=>!i.has(e.threadId)),o=Ae.current,s=a.length>0?dn(n,a,ce.current,e=>un(e,o)):n;return s.length===t.length&&s.every((e,n)=>e===t[n])?t:s})},In);let Ln;t[55]===Symbol.for(`react.memo_cache_sentinel`)?(Ln=[],t[55]=Ln):Ln=t[55];let Rn=(0,X.useRef)(Ln),zn,Bn;t[56]!==C||t[57]!==J?(zn=()=>{if(!C)return;let e=J.map(Wt),t=Rn.current;if(Rn.current=e,R.current!=null)return;let n=e.filter(e=>!t.includes(e)),r=n[n.length-1];r!=null&&(G(r),queueMicrotask(()=>At(r)))},Bn=[J,C],t[56]=C,t[57]=J,t[58]=zn,t[59]=Bn):(zn=t[58],Bn=t[59]),(0,X.useEffect)(zn,Bn);let Vn=(0,X.useRef)(Q),Hn,Un;t[60]!==C||t[61]!==Q||t[62]!==s||t[63]!==o?(Hn=()=>{if(!C)return;let e=Vn.current;Vn.current=Q,Q>e&&!o&&s(!0)},Un=[Q,o,C,s],t[60]=C,t[61]=Q,t[62]=s,t[63]=o,t[64]=Hn,t[65]=Un):(Hn=t[64],Un=t[65]),(0,X.useEffect)(Hn,Un);let Wn;t[66]!==H||t[67]!==z?(Wn=[z,H],t[66]=H,t[67]=z,t[68]=Wn):Wn=t[68],(0,X.useEffect)(()=>{let e=R.current;if(e!=null){let t=Ae.current,n=z.find(n=>un(n,t)===e);if(n!=null){R.current=null,G(n.id);return}if(z.some(e=>e.id===H))return}if(!(H!==``&&z.some(e=>e.id===H))){if(z.length===0){H!==``&&G(``);return}G(z[z.length-1].id)}},Wn);let Gn;t[69]!==y||t[70]!==C||t[71]!==v||t[72]!==he||t[73]!==z.length||t[74]!==b||t[75]!==o?(Gn=[o,v,y,b,z.length,he,C],t[69]=y,t[70]=C,t[71]=v,t[72]=he,t[73]=z.length,t[74]=b,t[75]=o,t[76]=Gn):Gn=t[76],(0,X.useEffect)(()=>{if(!he)return;let e=ke.current;if(ke.current=o,v!=null&&v.nonce!==we.current){we.current=v.nonce,kn.current(v);return}if(y!=null&&y.nonce!==Oe.current){Oe.current=y.nonce,kn.current(null,y.id);return}let t=C&&b!=null&&b.nonce!==Te.current;o&&!e&&z.length===0&&!t&&An.current()},Gn);let Kn,qn;t[77]!==C||t[78]!==b?(Kn=()=>{if(!C||b==null||b.nonce===Te.current)return;Te.current=b.nonce;let e=b.agentId===``?null:{source:b.agentSource,id:b.agentId};if(e===null){let t=F();t!==null&&(e={source:t.source,id:t.id})}if(e===null){Ee();return}Ye(e,b.prompt,b.docName,b.titleHint)},qn=[b,C],t[77]=C,t[78]=b,t[79]=Kn,t[80]=qn):(Kn=t[79],qn=t[80]),(0,X.useEffect)(Kn,qn);let Jn;t[81]!==n||t[82]!==w||t[83]!==D?(Jn=[n,w,D],t[81]=n,t[82]=w,t[83]=D,t[84]=Jn):Jn=t[84],(0,X.useEffect)(()=>{if(!w||typeof n?.terminal?.list!=`function`||ye.current)return;ye.current=!0;let e=!1;return(async()=>{let t=await $e(n,D).catch(Ut);!e&&t!=null&&(ce.current=t.order,R.current=t.activeKey);let r;try{r=await n.terminal.list()??[]}catch(e){console.error(`[terminal] reload session list() failed; cold-starting:`,e),r=[]}if(!e){if(r.length>0){let e=ce.current,t=t=>{let n=e.indexOf(t);return n===-1?1/0:n},n=r.map(Ht).sort((e,n)=>{let r=t(e.adoptPtyId),i=t(n.adoptPtyId);return r===i?0:r-i});Ce.current=Math.max(n.length,...n.map(Vt)),B(n)}K(!0),window.setTimeout(()=>{e||(R.current=null)},9e3)}})(),()=>{e=!0,ye.current=!1}},Jn);let Yn,Xn;t[85]!==n||t[86]!==I||t[87]!==D||t[88]!==O?(Yn=()=>{if(I||!O||typeof n?.terminal?.getDockState!=`function`)return;let e=!1;return $e(n,D).then(t=>{e||t==null||(ce.current=t.order,R.current===null&&(R.current=t.activeKey))}),()=>{e=!0}},Xn=[n,I,O,D],t[85]=n,t[86]=I,t[87]=D,t[88]=O,t[89]=Yn,t[90]=Xn):(Yn=t[89],Xn=t[90]),(0,X.useEffect)(Yn,Xn);let Zn,Qn;t[91]===I?(Zn=t[92],Qn=t[93]):(Zn=()=>{if(I)return;let e=window.setTimeout(()=>{R.current=null},9e3);return()=>window.clearTimeout(e)},Qn=[I],t[91]=I,t[92]=Zn,t[93]=Qn),(0,X.useEffect)(Zn,Qn);let $n;t[94]!==C||t[95]!==T?($n=[T,C],t[94]=C,t[95]=T,t[96]=$n):$n=t[96],(0,X.useEffect)(()=>{if(!(!T&&!C))return _e(e=>jn.current(e))},$n);let er;t[97]===Symbol.for(`react.memo_cache_sentinel`)?(er=[],t[97]=er):er=t[97],(0,X.useEffect)(()=>ge(()=>Mn.current()),er);let tr;t[98]!==w||t[99]!==S||t[100]!==T?(tr=[S,w,T],t[98]=w,t[99]=S,t[100]=T,t[101]=tr):tr=t[101],(0,X.useEffect)(()=>{if(w)return f(e=>{e===`new-terminal`?T&&kn.current(null):(e===`kill-terminal`||e===`close-active-tab-or-window`&&S)&&Pn.current()})},tr);let nr;t[102]!==k||t[103]!==S?(nr=[k,S],t[102]=k,t[103]=S,t[104]=nr):nr=t[104],(0,X.useEffect)(()=>{let e=function(e){if(!e.metaKey||e.ctrlKey||e.altKey||e.shiftKey||!/^[1-9]$/.test(e.key)||!Nt(k,S)||De())return;let t=q.current[Number(e.key)-1];t!=null&&(e.preventDefault(),e.stopPropagation(),G(t.id),queueMicrotask(()=>jt(t)))};return window.addEventListener(`keydown`,e,{capture:!0}),()=>window.removeEventListener(`keydown`,e,{capture:!0})},nr);let rr;t[105]!==x||t[106]!==k||t[107]!==S?(rr=[k,S,x],t[105]=x,t[106]=k,t[107]=S,t[108]=rr):rr=t[108],(0,X.useEffect)(()=>{let e=function(e){if(!e.metaKey||!e.shiftKey||e.ctrlKey||e.altKey)return;let t=e.key===`ArrowLeft`?-1:+(e.key===`ArrowRight`);if(t===0||!Nt(k,S)||De()||Sn.current)return;let n=e.target;if(n?.tagName===`INPUT`||n?.isContentEditable)return;let r=On.current(t);if(r==null)return;e.preventDefault(),e.stopPropagation();let i=Se.current,a=q.current.find(e=>e.id===i);a!=null&&queueMicrotask(()=>jt(a));let o=x({id:`CoHvYd`,values:{0:r.label,1:r.position,2:r.total}});wn.current!=null&&window.clearTimeout(wn.current),wn.current=window.setTimeout(()=>{wn.current=null,Cn.current!=null&&(Cn.current.textContent=o)},60)};return window.addEventListener(`keydown`,e,{capture:!0}),()=>{window.removeEventListener(`keydown`,e,{capture:!0}),wn.current!=null&&(window.clearTimeout(wn.current),wn.current=null)}},rr);let ir;t[109]!==n?.editor||t[110]!==w||t[111]!==z?(ir=()=>{if(!w)return;let e=z.some(Bt);U({terminalLive:e}),n?.editor.notifyViewMenuStateChanged({terminalLive:e})},t[109]=n?.editor,t[110]=w,t[111]=z,t[112]=ir):ir=t[112];let ar;t[113]!==n||t[114]!==w||t[115]!==z?(ar=[n,z,w],t[113]=n,t[114]=w,t[115]=z,t[116]=ar):ar=t[116],(0,X.useEffect)(ir,ar);let or,sr;t[117]!==k||t[118]!==m||t[119]!==h||t[120]!==o?(or=()=>{m||o||Mt(k)&&h()},sr=[m,o,k,h],t[117]=k,t[118]=m,t[119]=h,t[120]=o,t[121]=or,t[122]=sr):(or=t[121],sr=t[122]),(0,X.useLayoutEffect)(or,sr);let cr;t[123]===m?cr=t[124]:(cr=[m],t[123]=m,t[124]=cr),(0,X.useEffect)(()=>{if(!m)return;let e=q.current.find(e=>e.id===Se.current);e!=null&&jt(e)},cr);let lr=z.map(e=>({id:e.id,label:xn(e),icon:e.kind===`terminal`?Ft():It($.get(e.threadId))})),ur=[...z].sort(zt),dr;t[125]===d?dr=t[126]:(dr=d??{},t[125]=d,t[126]=dr);let fr;t[127]!==Ie||t[128]!==dr?(fr=xe(Ie,dr),t[127]=Ie,t[128]=dr,t[129]=fr):fr=t[129];let pr=(0,Z.jsx)(_t,{selected:mt,onLaunchSelected:gt,showAgents:C,registeredAgents:Ue,onPickAgent:_n,onOpenSettings:Ee,liveThreadCount:Q,showClis:T,onPickCli:mn,onPickTerminal:hn,visibleClis:fr}),mr=C&&Me.length>0?(0,Z.jsx)(Ke,{archived:Me,openThreadIds:Xe,onOpenThread:tt}):null,hr=z.length>0||o&&!S?(0,Z.jsx)(St,{sessions:lr,activeSessionId:H,onSelect:e=>{R.current=null,G(e)},onTabActivate:e=>{let t=q.current.find(t=>t.id===e);t!=null&&queueMicrotask(()=>jt(t))},newButton:pr,trailingControls:mr,onClose:Nn,onRename:bn,onReorder:Tn,onDragActiveChange:e=>{Sn.current=e},edge:E,onCollapse:S?void 0:()=>s(!1),draggable:S,className:`h-full`,children:z.length===0?T?null:C&&Me.length>0?(0,Z.jsx)(qe,{archived:Me,onOpen:tt}):(0,Z.jsx)(ln,{}):ur.map(e=>(0,Z.jsx)(ee,{value:e.id,forceMount:!0,"data-session-id":e.id,...e.kind===`terminal`?{"data-terminal-session":e.id}:{},className:g(`m-0 flex min-h-0 flex-1 flex-col overflow-hidden data-[state=inactive]:hidden`,S&&`px-[22px] pb-[22px]`),children:e.kind===`terminal`?n!=null&&T?(0,Z.jsx)(dt,{bridge:n,launch:e.launch,commandId:e.commandId,adoptPtyId:e.adoptPtyId,onPtyId:t=>it(e.id,t),onTitleChange:t=>yn(e.id,t),onClose:()=>Nn(e.id)}):null:(0,Z.jsx)(sn,{threadId:e.threadId,info:$.get(e.threadId),showConnectionBanner:Pe&&e.id===H,active:o&&e.id===H})},e.id))}):null,gr;t[130]!==k||t[131]!==hr?(gr=k==null?null:(0,Ge.createPortal)((0,Z.jsxs)(Z.Fragment,{children:[hr,(0,Z.jsx)(`span`,{ref:Cn,"aria-live":`polite`,"aria-atomic":`true`,className:`sr-only`,"data-testid":`terminal-reorder-announcer`})]}),k),t[130]=k,t[131]=hr,t[132]=gr):gr=t[132];let _r;return t[133]===gr?_r=t[134]:(_r=(0,Z.jsx)(Z.Fragment,{children:gr}),t[133]=gr,t[134]=_r),_r}function zt(e,t){return e.ordinal-t.ordinal}function Bt(e){return e.kind===`terminal`}function Vt(e){return e.ordinal}function Ht(e,t){return{kind:`terminal`,commandId:null,id:Dt(t+1),launch:null,title:null,customLabel:e.customLabel??null,ordinal:e.ordinal??t+1,adoptPtyId:e.ptyId}}function Ut(){return null}function Wt(e){return e.threadId}function Gt(e){return e.threadId}function Kt(e){return e.kind===`thread`}function qt(e){return e.threadId}function Jt(e){return e.kind===`thread`}function Yt(e){return e.threadId}function Xt(e){return e!=null}function Zt(e){return e.kind===`terminal`}function Qt(){}function $t(e){return e.id}function en(e){return e!=null}function tn(e){return[e.id,e]}function nn(e){return e!=null}function rn(e){return[e.threadId,e]}function an(e){return e.archived!==!0}function on(){if(typeof document>`u`)return null;let e=document.createElement(`div`);return e.className=`flex min-h-0 flex-1 flex-col overflow-hidden`,e}function sn(e){let t=(0,Y.c)(10),{threadId:n,info:r,showConnectionBanner:i,active:a}=e;if(r===void 0)return null;let o;t[0]===i?o=t[1]:(o=i?(0,Z.jsx)(cn,{}):null,t[0]=i,t[1]=o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Z.jsx)(`div`,{role:`status`,"aria-busy":`true`,className:`flex min-h-0 flex-1 items-center justify-center text-muted-foreground`,children:(0,Z.jsx)(ue,{className:`size-5 animate-spin`,"aria-hidden":`true`})}),t[2]=s):s=t[2];let c;t[3]!==a||t[4]!==r||t[5]!==n?(c=(0,Z.jsx)(X.Suspense,{fallback:s,children:(0,Z.jsx)(Et,{info:r,active:a},n)}),t[3]=a,t[4]=r,t[5]=n,t[6]=c):c=t[6];let l;return t[7]!==o||t[8]!==c?(l=(0,Z.jsxs)(Z.Fragment,{children:[o,c]}),t[7]=o,t[8]=c,t[9]=l):l=t[9],l}function cn(){let e=(0,Y.c)(4),{_:t}=a(),n;e[0]===t?n=e[1]:(n=t({id:`k0dL2I`}),e[0]=t,e[1]=n);let r;return e[2]===n?r=e[3]:(r=(0,Z.jsx)(`div`,{className:`shrink-0 border-amber-500/30 border-b bg-amber-500/5 px-3 py-1 text-amber-700 text-xs dark:text-amber-400`,"data-testid":`agent-thread-reconnecting`,children:n}),e[2]=n,e[3]=r),r}function ln(){let e=(0,Y.c)(4),{_:t}=a(),n;e[0]===t?n=e[1]:(n=t({id:`-l6jM7`}),e[0]=t,e[1]=n);let r;return e[2]===n?r=e[3]:(r=(0,Z.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center px-6 text-center text-muted-foreground text-sm`,"data-testid":`sessions-dock-empty`,children:n}),e[2]=n,e[3]=r),r}function un(e,t){return e.kind===`thread`?e.threadId:e.adoptPtyId??t.get(e.id)??null}function dn(e,t,n,r){let i=e=>{let t=r(e);if(t==null)return 1/0;let i=n.indexOf(t);return i===-1?1/0:i},a=[...e];for(let e of t){let t=i(e);if(t===1/0){a.push(e);continue}let n=a.length;for(let e=0;e<a.length;e++)if(i(a[e])>t){n=e;break}a.splice(n,0,e)}return a}export{Rt as SessionsHost};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-CYidjpOJ.js";import{t}from"./jsx-runtime-BUgB2tll.js";import{t as n}from"./react-f2sANaYj.js";import{n as r}from"./dist-Nvb76hAm.js";import{n as i}from"./dist-PQ5KMVDh.js";import{t as a}from"./compiler-runtime-BfE3aGVn.js";import{t as o}from"./utils-CPqDy6Hr.js";import"./dropdown-menu-BhMtMvZp.js";import{Ft as s,Pt as c,n as l,t as ee}from"./dist-CQI6-1xM2.js";import{t as u}from"./badge-B89o8Vy9.js";import{i as d,n as f,t as p}from"./cursor-Df-vt--2.js";import{t as te}from"./copilot-qpaFt06v.js";var m=e(n(),1),h=`ok-acp-registered-agents-v1`,g={agents:[],defaultKey:null};function _(e){return`${e.source}:${e.id}`}function v(e){if(typeof e!=`object`||!e)return!1;let t=e;return(t.source===`registry`||t.source===`custom`)&&typeof t.id==`string`&&t.id!==``&&typeof t.name==`string`&&t.name!==``&&(t.iconUrl===void 0||typeof t.iconUrl==`string`)&&(t.lastUsedAt===void 0||typeof t.lastUsedAt==`number`)}function y(){let e;try{e=localStorage.getItem(h)}catch{return g}if(e===null)return g;try{let t=JSON.parse(e),n=Array.isArray(t.agents)?t.agents.filter(v):[];return{agents:n,defaultKey:typeof t.defaultKey==`string`&&n.some(e=>_(e)===t.defaultKey)?t.defaultKey:null}}catch(e){return console.warn(`[registered-agents] discarding corrupt localStorage payload`,e),g}}function b(e){try{localStorage.setItem(h,JSON.stringify(e))}catch(e){console.warn(`[registered-agents] failed to persist registration`,e)}}var x=null,S=[],C=null,w=new Set;function T(){return x===null&&(x=y()),x}function E(e){x=e,C=N(e.agents,S);for(let e of w)e()}function D(){E(y())}typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`storage`,e=>{(e.key===h||e.key===null)&&D()});function O(e){return w.add(e),()=>w.delete(e)}var k=()=>(C===null&&(C=N(T().agents,S)),C),A=()=>{let{agents:e,defaultKey:t}=T();return t===null?null:e.find(e=>_(e)===t)??null};function j(e,t={}){let{makeDefault:n=!0}=t,r=_(e),i=T();if(!n){let t={agents:i.agents.some(e=>_(e)===r)?i.agents.map(t=>_(t)===r?{...e,...t.lastUsedAt===void 0?{}:{lastUsedAt:t.lastUsedAt}}:t):[...i.agents,e],defaultKey:i.defaultKey};b(t),E(t);return}let a=i.agents.filter(e=>_(e)!==r),o={agents:[{...e,lastUsedAt:Date.now()},...a],defaultKey:r};b(o),E(o)}function M(e,t){let n=e.lastUsedAt??0,r=t.lastUsedAt??0;return n===r?e.name.localeCompare(t.name,void 0,{numeric:!0,sensitivity:`base`}):r-n}function N(e,t){let n=new Set(e.map(_));return[...e,...t.filter(e=>!n.has(_(e)))].sort(M)}function P(e){S=[...e],C=N(T().agents,S);for(let e of w)e()}function ne(){return A()}function re(e,t){let n=T();if(n.defaultKey!==e)return;let r=n.agents.find(n=>_(n)!==e&&t(n))??null,i={agents:n.agents,defaultKey:r?_(r):null};b(i),E(i)}function ie(e,t){return t!==null&&e.some(e=>e.source===t.source&&e.id===t.id)?t:e[0]??null}function ae(e){let t=new Map(e.map(e=>[_(e),e])),n=T(),r=!1,i=n.agents.map(e=>{let n=t.get(_(e));if(n===void 0)return e;let i=n.name??e.name,a=n.iconUrl??e.iconUrl,o=n.supported??e.supported;return i===e.name&&a===e.iconUrl&&o===e.supported?e:(r=!0,{...e,name:i,...a===void 0?{}:{iconUrl:a},...o===void 0?{}:{supported:o}})});if(!r)return;let a={agents:i,defaultKey:n.defaultKey};b(a),E(a)}function oe(){return(0,m.useSyncExternalStore)(O,k,k)}function se(){return(0,m.useSyncExternalStore)(O,A,A)}var F=[{id:`claude-cowork`,displayName:`Claude Cowork`,appBrandName:`Claude Desktop`,schemes:[`claude:`],installUrl:`https://claude.com/download`,tagline:`Conversational pairing in Claude Desktop's Cowork tab.`},{id:`claude-code`,displayName:`Claude`,appBrandName:`Claude Desktop`,schemes:[`claude:`],installUrl:`https://claude.com/download`,tagline:`Agentic coding in Claude Desktop's Code tab.`},{id:`codex`,displayName:`Codex`,appBrandName:`Codex Desktop`,schemes:[`codex:`],installUrl:`https://openai.com/codex`,tagline:`OpenAI's coding agent, terminal-native.`},{id:`cursor`,displayName:`Cursor`,schemes:[`cursor:`],installUrl:`https://cursor.com/`,tagline:`AI-first VS Code fork with multi-file edits.`},{id:`copilot`,displayName:`GitHub Copilot`,schemes:[],installUrl:`https://docs.github.com/en/copilot/how-tos/copilot-cli/cli-getting-started`,tagline:`GitHub's terminal-native coding agent.`},{id:`opencode`,displayName:`OpenCode`,schemes:[],installUrl:`https://opencode.ai`,tagline:`Open-source terminal coding agent; bring any local model.`},{id:`pi`,displayName:`Pi`,schemes:[],installUrl:`https://pi.dev`,tagline:`Minimal open-source terminal coding agent, extensible in TypeScript.`},{id:`antigravity`,displayName:`Antigravity`,schemes:[],installUrl:`https://antigravity.google`,tagline:"Google's agentic IDE + `agy` terminal agent."},{id:`openclaw`,displayName:`OpenClaw`,schemes:[],installUrl:`https://openclaw.ai`,tagline:`Open-source agent gateway; runs agents against your MCP servers.`},{id:`hermes`,displayName:`Hermes`,schemes:[],installUrl:`https://hermes-agent.nousresearch.com`,tagline:`Nous Research's terminal coding agent.`}],ce=F.filter(e=>e.id!==`claude-cowork`&&e.id!==`copilot`&&e.id!==`opencode`&&e.id!==`pi`&&e.id!==`antigravity`&&e.id!==`openclaw`&&e.id!==`hermes`),I=t(),L=a();async function R(e,t={}){let n=t.okDesktop??(typeof window<`u`?window.okDesktop:void 0);if(n?.shell?.openExternal)try{return await n.shell.openExternal(e),{ok:!0}}catch(e){return{ok:!1,reason:`dispatch-error`,detail:z(e)}}let r=t.doc??(typeof document<`u`?document:void 0);if(!r)return{ok:!1,reason:`dispatch-error`,detail:`no DOM available`};try{let t=r.createElement(`a`);return t.href=e,t.rel=`noopener noreferrer`,/^https?:/i.test(e)&&(t.target=`_blank`),r.body.appendChild(t),t.click(),t.remove(),{ok:!0}}catch(e){return{ok:!1,reason:`dispatch-error`,detail:z(e)}}}function z(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}var B=`ok-acp-enabled-agents-v1`,V={};function H(e,t){return`in-app:${e}:${t}`}function U(e){return`terminal:${e}`}function W(e){return`desktop:${e}`}function G(e,t){return e??t}function K(){let e;try{e=localStorage.getItem(B)}catch(e){return console.warn(`[enabled-agents] localStorage unavailable; treating overrides as empty`,e),V}if(e===null)return V;try{let t=JSON.parse(e);if(typeof t!=`object`||!t)return V;let n={};for(let[e,r]of Object.entries(t))typeof r==`boolean`&&(n[e]=r);return n}catch(e){return console.warn(`[enabled-agents] discarding corrupt localStorage payload`,e),V}}function q(e){try{localStorage.setItem(B,JSON.stringify(e))}catch(e){console.warn(`[enabled-agents] failed to persist override`,e)}}var J=null,Y=new Set;function X(){return J===null&&(J=K()),J}function Z(e){J=e;for(let e of Y)e()}function le(){Z(K())}typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`storage`,e=>{(e.key===B||e.key===null)&&le()});function ue(e){return Y.add(e),()=>Y.delete(e)}var Q=()=>X();function de(e,t){let n=X();if(t===void 0){if(!(e in n))return;let{[e]:t,...r}=n;q(r),Z(r);return}if(n[e]===t)return;let r={...n,[e]:t};q(r),Z(r)}function fe(){return(0,m.useSyncExternalStore)(ue,Q,Q)}function pe(e){let t=(0,L.c)(5),{className:n}=e,i;t[0]===n?i=t[1]:(i=o(`h-4 px-1 text-[10px]`,n),t[0]=n,t[1]=i);let a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,I.jsx)(r,{id:`YBt9YP`}),t[2]=a):a=t[2];let s;return t[3]===i?s=t[4]:(s=(0,I.jsx)(u,{variant:`gray`,className:i,children:a}),t[3]=i,t[4]=s),s}function me(e){let t=(0,L.c)(5),n,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,I.jsx)(`title`,{children:`Antigravity icon`}),r=(0,I.jsx)(`path`,{fill:`currentColor`,fillRule:`evenodd`,clipRule:`evenodd`,d:`M12 2.5a1.5 1.5 0 0 1 1.28.72l8.5 14A1.5 1.5 0 0 1 20.5 19.5h-17a1.5 1.5 0 0 1-1.28-2.28l8.5-14A1.5 1.5 0 0 1 12 2.5Zm0 4.42L5.83 17h12.34L12 6.92Z`}),i=(0,I.jsx)(`path`,{fill:`currentColor`,d:`M12 9.6 15.6 17h-7.2L12 9.6Z`}),t[0]=n,t[1]=r,t[2]=i):(n=t[0],r=t[1],i=t[2]);let a;return t[3]===e?a=t[4]:(a=(0,I.jsxs)(`svg`,{role:`img`,"aria-label":`Antigravity icon`,xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,fill:`none`,viewBox:`0 0 24 24`,...e,children:[n,r,i]}),t[3]=e,t[4]=a),a}function he(e){let t=(0,L.c)(6),n,r,i,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,I.jsx)(`title`,{children:`Hermes icon`}),r=(0,I.jsx)(`path`,{d:`M5.938 12.835c.127-.039.285.02.373.143.028.038.036.092.046.14.003.014-.02.033-.04.05-.124-.098-.24-.194-.354-.291-.011-.01-.016-.027-.025-.042zM8.396 9.412c.195-.032.39-.06.588-.05a.54.54 0 01.148.026c.202.071.402.147.601.224.028.01.05.036.075.055l-.013.027a9.203 9.203 0 01-.26-.089c-.115-.038-.213-.077-.315-.098-.25-.05-.25-.046-.292-.014l.574.144c.275.139.55.276.823.417.042.022.09.057.107.098.026.06.063.076.117.072.066-.006.132-.017.213-.027l-.04.086c.051.08.142.02.216.064-.074.13-.247.09-.334.199l.061.074-.12.087c0 .106-.038.168-.306.243l.026.085-.196.042.07.124h-.25l-.007.137c-.081-.01-.161-.018-.244-.027l-.053.123c-.027-.008-.052-.011-.073-.023-.067-.038-.128-.056-.195.006-.019.017-.063.014-.093.008-.026-.006-.05-.029-.07-.042-.11.095-.11.095-.208.003-.057.046-.12.074-.186.011-.063.027-.123-.02-.178-.014-.07.007-.097-.035-.133-.07l-.13.033c-.013-.236-.194-.19-.34-.203.005-.072.05-.092.095-.094a.474.474 0 01.159.022c.164.05.32.12.496.138.203.021.405.029.601-.015.265-.059.52-.149.707-.365.049-.056.083-.127.117-.195.019-.038.02-.084-.02-.116a1.397 1.397 0 00-.382-.217c.024.12-.031.182-.115.221 0 .014-.004.025 0 .03.08.115.084.16-.007.267a1.39 1.39 0 01-.218.211.477.477 0 01-.641-.05 1.36 1.36 0 01-.133-.152c-.078-.107-.076-.108-.033-.236-.165-.08-.128-.226-.104-.364.008-.05.028-.096.049-.163-.04.014-.067.017-.087.032a.897.897 0 00-.316.357c-.007.016-.01.034-.02.047-.012.015-.034.038-.045.035-.02-.006-.037-.027-.05-.045-.008-.012-.007-.032-.012-.057h-.126l.053-.172a14.82 14.82 0 00-.039-.049l.11-.284c-.06.026-.091.044-.124.051-.03.007-.064 0-.095 0 0-.031-.01-.07.004-.092.149-.22.305-.428.593-.476z`}),i=(0,I.jsx)(`path`,{d:`M8.06 10.788c-.003-.038-.004-.075.037-.062.016.006.034.048.028.067-.01.04-.038.032-.064-.005z`}),a=(0,I.jsx)(`path`,{clipRule:`evenodd`,d:`M11.981.009c.226-.012.453-.011.679 0 .247.01.495.024.74.062.401.064.798.157 1.19.273.463.138.92.299 1.356.511a7.31 7.31 0 012.948 2.642c.292.469.536.963.739 1.479.219.556.446 1.11.623 1.683.204.654.329 1.326.458 1.997.097.504.182 1.01.29 1.511.156.722.329 1.44.494 2.16.186.812.4 1.615.63 2.415.102.355.193.713.282 1.072.11.436.202.876.254 1.323.031.278.066.557.073.837a7.56 7.56 0 01-.017.88c-.037.413-.1.818-.226 1.212a5.017 5.017 0 01-.915 1.649l-.13.156.018.023c.043-.023.088-.041.127-.068.2-.138.373-.307.531-.49.4-.46.721-.973.975-1.529a3.59 3.59 0 00.325-1.72c-.024-.424-.097-.834-.3-1.213-.013-.027-.015-.06-.03-.121.05.035.082.048.101.072.107.13.22.258.315.398.33.494.46 1.052.486 1.64a3.75 3.75 0 01-.47 1.97c-.36.655-.887 1.14-1.526 1.506-.193.111-.394.21-.595.308-.157.078-.248.211-.318.365a.522.522 0 00-.033.406.359.359 0 01.013.139c-.005.077-.077.155-.14.162-.054.006-.125-.043-.15-.116a1.206 1.206 0 01-.06-.233c-.04-.314-.155-.6-.308-.87a3.906 3.906 0 00-.73-.91 2.129 2.129 0 00-.897-.524 4.093 4.093 0 00-.692-.131c-.075-.008-.15-.04-.22.01.18.06.363.11.538.18.434.173.82.43 1.18.728.308.255.58.543.794.884.098.155.186.315.227.496.027.123.042.25.067.375.013.062-.002.109-.053.144-.047.033-.122.034-.163-.01a.455.455 0 01-.08-.14c-.03-.073-.038-.159-.078-.225a7.314 7.314 0 00-1.423-1.664c-.16-.137-.329-.26-.537-.323-.376-.114-.753-.203-1.15-.154-.213.025-.427.032-.64.053a1.6 1.6 0 00-.736.278 5.14 5.14 0 00-.834.72c-.329.342-.642.699-.955 1.055-.136.155-.264.319-.314.531a5.227 5.227 0 00-.012.051.096.096 0 01-.09.076h-.31c-.046 0-.082-.048-.072-.094.023-.108.045-.216.07-.324.075-.325.19-.635.368-.917.024-.039.04-.088.104-.08l.01.049.027.077c.28-.435.571-.834.996-1.135.283-.204.584-.378.89-.55a.196.196 0 00-.098-.002c-.162.043-.325.084-.485.134-.402.124-.764.33-1.11.566-.147.1-.298.193-.414.333a7.314 7.314 0 00-1.07 1.767.845.845 0 00-.04.12.075.075 0 01-.072.056h-.494c-.04 0-.062-.051-.036-.082.123-.14.246-.282.377-.415.275-.281.58-.532.777-.884.027-.048.063-.09.095-.135.238-.333.54-.607.818-.902.082-.086.175-.16.26-.24.029-.027.053-.057.079-.085l-.018-.025-.135.041c-.034.017-.07.031-.102.05-.248.144-.494.292-.743.433-.408.23-.825.439-1.209.711-.281.2-.591.358-.889.533-.02.012-.044.015-.08.028-.015-.135.143-.201.108-.336-.033.014-.064.02-.085.038-.111.096-.227.19-.328.296-.148.157-.284.325-.425.488-.125.143-.25.286-.373.431A.153.153 0 019.89 24H8.762a.316.316 0 00.016-.042c.028-.09.085-.172.083-.28-.091-.018-.162.001-.212.077a4.45 4.45 0 00-.136.215c-.01.016-.024.03-.042.03h-.093c-.019 0-.029-.022-.017-.037.071-.088.14-.178.209-.268.001-.002-.006-.012-.012-.024-.014.004-.03.006-.045.013-.176.09-.352.181-.527.274a.363.363 0 01-.168.042H5.202c-.026 0-.039-.036-.019-.053.21-.178.402-.374.558-.605.335-.496.538-1.047.667-1.629.004-.02-.003-.043-.006-.091-.037.048-.059.072-.076.1a1.943 1.943 0 01-.334.415c-.28.258-.59.448-.983.464-.297.012-.588 0-.865-.127-.46-.21-.722-.57-.794-1.072-.025-.17-.017-.171-.182-.219A3.513 3.513 0 011.97 20.6a2.286 2.286 0 01-.808-1.13 3.569 3.569 0 01-.16-1.245c.002-.034.016-.067.024-.1.032.023.046.043.05.066.033.153.059.308.096.46.086.355.257.664.516.92.258.256.571.419.91.532.358.118.717.138 1.07-.016a1.89 1.89 0 00.621-.452c.328-.348.533-.76.648-1.223.009-.034.005-.071.007-.11-.015.006-.026.006-.03.011-.031.05-.064.1-.093.152-.284.502-.679.887-1.196 1.135-.351.17-.718.255-1.11.159a1.607 1.607 0 01-.971-.64 2.006 2.006 0 01-.368-.924 2.903 2.903 0 01.02-.886c.05-.439.466-1.17.742-1.271-.02.063-.035.112-.053.16-.043.116-.097.227-.13.345a1.901 1.901 0 00-.05.82c.033.212.09.416.204.6.147.236.346.407.62.465.11.023.225.014.338.018a.576.576 0 00.386-.131c.164-.128.282-.292.366-.481.168-.375.24-.777.309-1.179.05-.296.093-.594.133-.893.039-.281.071-.563.104-.845.026-.232.048-.464.074-.696.024-.228.052-.455.076-.683.024-.227.047-.455.069-.683.013-.14.022-.28.034-.42l.037-.417c.022-.25.041-.5.065-.748.008-.082-.02-.132-.09-.177a2.46 2.46 0 01-.492-.418c-.1-.109-.188-.228-.282-.342-.035-.042-.056-.097-.116-.118a2.084 2.084 0 00.275.597c.06.092.131.176.196.265.063.086.182.115.234.226-.028.003-.046.01-.06.006a4.74 4.74 0 01-.22-.057 2.71 2.71 0 01-1.287-.819c-.435-.487-.656-1.076-.71-1.723a5.206 5.206 0 01.014-1.06c.072-.602.22-1.186.45-1.745.155-.376.338-.741.526-1.102.205-.393.466-.75.765-1.076.512-.559 1.104-1.024 1.726-1.448.717-.49 1.478-.898 2.277-1.233C8.244.828 8.767.632 9.31.494c.655-.166 1.31-.33 1.982-.415.229-.03.458-.058.688-.07zm-1.847 22.82c-.07.06-.147.111-.207.18-.238.27-.464.549-.668.869l-.044.108a.177.177 0 00.093-.057c.174-.19.351-.378.519-.574.104-.122.195-.255.288-.386.024-.034.03-.08.046-.12l-.027-.02zm1.65-3.695a5.51 5.51 0 00-.653.593l-.37.386a.963.963 0 01-.377.25 1.372 1.372 0 01-.467.09c-.044 0-.087.006-.151.012.028.058.043.097.064.131.15.242.301.482.45.724.136.22.276.438.399.666.068.125.105.267.156.404.077.027.14-.018.202-.048.29-.135.579-.274.867-.412.213-.101.437-.186.636-.31.347-.215.68-.455 1.018-.685.015-.01.026-.028.042-.046-.023-.019-.038-.037-.056-.044-.287-.111-.527-.3-.77-.482a5.319 5.319 0 01-.506-.42 1.757 1.757 0 01-.41-.653c-.019-.049-.045-.095-.075-.156zm-5.847.264c-.06.096-.097.194-.132.293a3.38 3.38 0 01-.555 1.01c-.2.25-.455.412-.762.493-.23.06-.464.076-.7.07-.048-.002-.097.002-.158.005.016.04.021.066.035.085.1.145.23.246.4.295.157.046.316.034.498.023.181-.037.343-.115.485-.234.238-.199.402-.454.536-.732.175-.363.264-.751.342-1.144.01-.053.008-.11.011-.164zm14.945-4.586c.008.029.016.057.027.107.024.155.051.31.072.464.03.219.067.437.078.657.017.344.027.689-.014 1.033-.037.315-.063.633-.116.946a6.153 6.153 0 01-.46 1.518c-.008.018-.01.039-.02.082.047-.03.077-.042.098-.064.085-.083.17-.167.248-.255.271-.305.458-.66.596-1.043.18-.498.228-1.011.145-1.531-.103-.65-.33-1.263-.597-1.881a9.055 9.055 0 00-.024-.055l-.033.022zM5.797 8.29a.26.26 0 00.018.153c.124.251.25.501.379.75.025.049.066.09.03.163-.284.06-.578.119-.88.255.059.038.097.06.132.087.042.032.112.058.09.12-.01.033-.075.048-.117.072.017.01.043.021.067.036.166.102.33.207.447.368.138.192.229.404.188.644-.079.469-.306.85-.69 1.132-.054.04-.106.083-.161.122a.243.243 0 00-.103.245.77.77 0 00.055.195c.083.196.22.35.375.492.083.076.159.164.222.257a.37.37 0 01.025.377c-.023.05-.05.099-.076.148-.03.06-.028.111.022.162.041.042.08.089.112.138.038.058.078.079.147.05a.486.486 0 01.333-.006c.16.046.302.126.444.21.13.077.264.149.4.219.067.035.14.05.219.026.071-.022.124.01.145.076.02.064-.003.108-.074.139-.07.03-.137.063-.209.088-.1.035-.201.073-.314.077-.013-.107.11-.088.127-.159-.206-.126-.643-.145-.801-.034.063.112.035.21-.096.313-.13-.1-.025-.202.002-.3a.209.209 0 00-.249.17c-.015.101.067.216.178.224.108.007.218-.005.326-.012.06-.005.12-.027.199 0-.103.123-.248.127-.357.19.002.05.07.086.019.131-.053.048-.095-.001-.132-.03-.08-.063-.16-.126-.231-.197a.474.474 0 01-.157-.311.52.52 0 00-.043-.172c-.032-.074-.032-.137.033-.19-.018-.03-.028-.053-.045-.072a1.222 1.222 0 01-.196-.369c-.053-.137-.046-.264.048-.381.024-.03.05-.06.064-.095a.664.664 0 00.047-.168c.017-.165-.064-.287-.182-.387-.186-.156-.36-.322-.46-.551-.005-.011-.024-.017-.037-.026-.011.017-.024.027-.025.038-.019.185-.045.37-.052.557-.014.377.058.743.162 1.104.118.41.289.798.488 1.173.267.502.537 1.002.812 1.5.055.098.13.189.208.27.198.202.452.272.724.273.202 0 .404-.006.605-.026.295-.03.59-.073.884-.113.183-.025.365-.057.548-.08.21-.026.38.073.522.21.16.156.305.327.447.5.22.265.397.56.554.867.05.098.07.1.147.03.13-.121.26-.242.394-.36.067-.059.088-.12.067-.213a3.535 3.535 0 01-.085-.796c.002-.157.006-.314.018-.471.015-.224.03-.45.06-.672a59.114 59.114 0 01.362-2.298c.087-.493.182-.984.268-1.477.06-.347.118-.694.162-1.043.034-.273.055-.55.063-.825.011-.332.003-.665.002-.998 0-.077.004-.155-.01-.23-.028-.142-.01-.155-.162-.19a5.826 5.826 0 00-.607-.107c-.146-.018-.207-.053-.221-.19-.006-.049-.025-.098-.041-.146-.009-.025-.024-.048-.046-.09l-.025.264c-.009.096-.029.116-.127.115-.055 0-.11-.008-.164-.008-.476 0-.952-.008-1.426.032-.095.008-.173-.015-.226-.103-.04-.066-.088-.126-.134-.186-.063-.084-.086-.093-.182-.06-.195.068-.388.138-.582.21a2.71 2.71 0 00-.675.394.986.986 0 01-.323.168c-.033.01-.07.008-.127.013.02-.066.024-.114.047-.15.064-.105.135-.205.205-.306.023-.033.049-.063.073-.095l-.015-.023-.201.037c-.146.04-.296.07-.437.122-.148.053-.266.023-.386-.072a3.623 3.623 0 01-.733-.786l-.093-.132zm8.592 8.963l-.147.09c-.22.134-.44.266-.659.402-.093.058-.184.12-.27.188-.085.07-.124.161-.072.272.047.1.093.2.147.294.047.08.124.138.213.147.11.01.228.012.336-.012.217-.05.372-.205.528-.357a.291.291 0 00.087-.308c-.046-.18-.079-.365-.118-.547-.011-.052-.027-.103-.045-.169zm-.257-2.409c-.12.291-.205.597-.325.91-.151.433-.294.87-.435 1.323.036-.01.054-.01.067-.018.261-.16.522-.324.785-.484.054-.033.071-.078.065-.138-.012-.13-.024-.262-.034-.393l-.068-.886c-.008-.103-.02-.206-.029-.31-.009 0-.017-.002-.026-.004zm3.081-8.13l.099.285c.08.231.159.463.24.714l.58 1.952c.187.63.372 1.262.558 1.893.114.382.235.762.343 1.146.072.257.126.519.186.799.044.206.087.413.127.64.034.106.023.226.077.325l.025-.006-.068-.362c-.038-.206-.077-.412-.113-.638-.015-.07-.029-.141-.046-.211-.095-.396-.177-.796-.29-1.187-.196-.685-.413-1.364-.618-2.046-.165-.549-.322-1.1-.488-1.648-.069-.227-.15-.45-.226-.695l-.117-.336c-.037-.107-.075-.216-.115-.322-.04-.106-.084-.21-.127-.314a7.558 7.558 0 01-.027.01zM6.225 14.304c-.063-.001-.115.014-.134.083a.35.35 0 00.41.012 4.533 4.533 0 00-.276-.095zM5.23 11.98c-.026-.027-.057-.048-.075.002-.012.032-.007.07-.01.113.082-.037.082-.037.085-.115zm.062-1.189a.135.135 0 00-.088.056.197.197 0 00-.025.11c.005.152.01.306.026.457a.751.751 0 00.066.218c.061.136.157.167.288.101.055-.027.06-.054.025-.11a4.52 4.52 0 01-.129-.211c-.015-.068-.066-.131-.033-.207.04-.09-.076-.116-.074-.19V10.874c-.003-.038-.006-.087-.056-.083zm-.017-.968a.867.867 0 00-.467.127c-.076.045-.084.07-.05.158.034.087.07.173.115.254.064.117.09.125.21.077a.657.657 0 01.336-.053c.202.022.357.136.504.264l.092.077c.007-.006.014-.013.022-.018-.019-.105-.035-.226-.149-.264-.157-.053-.324-.075-.508-.117l-.24-.005c.24-.169.452-.044.687.009-.063-.115-.153-.147-.23-.193-.082-.05-.17-.092-.25-.144-.06-.037-.12-.08-.072-.172zm10.233.325c-.23-.01-.427.08-.608.211-.034.026-.06.065-.105.117.087.026.15.046.232.065.044-.015.088-.03.13-.046.306-.114.61-.115.904.031.126.063.237.04.366-.005-.02-.031-.03-.054-.045-.071a.986.986 0 00-.448-.273c-.14-.044-.284-.024-.426-.03zM7.99 6.483a.308.308 0 00.002.133c.08.321.156.643.242.962.104.387.27.75.456 1.103.02.037.061.08.098.087a.404.404 0 00.253-.051l-.472-.84c-.23-.448-.405-.92-.579-1.394zM10.397.497c-.2-.008-.405.004-.603.034-.236.035-.47.087-.7.152-.287.08-.569.18-.852.273-.04.013-.074.038-.11.058.028.014.05.018.07.014.287-.068.58-.085.873-.09.134-.002.269.009.402.025.19.024.382.048.57.09.456.104.874.3 1.265.556.464.306.888.66 1.257 1.078.205.232.395.475.56.739.17.274.315.561.449.856.273.601.456 1.232.6 1.876.04.173.07.348.1.524.017.104.065.167.17.19.122.028.2.105.22.251-.003.102-.06.174-.129.24a1.065 1.065 0 00-.268.358.164.164 0 00.083-.039c.08-.086.162-.172.235-.265a.56.56 0 00.13-.333c.009-.05.022-.1.024-.15.007-.124-.017-.15-.143-.168-.025-.004-.049-.014-.073-.015-.082-.007-.125-.063-.137-.131-.033-.198-.004-.355.247-.408.086-.018.174-.03.26-.042.158-.023.315-.053.473-.067.14-.012.19.033.226.167.008.029.018.057.021.087.019.179-.008.225-.141.288-.027.013-.055.024-.078.042a.148.148 0 00-.051.067c-.039.144.073.382.206.445l.673.32c.023.011.05.015.075.023l.018-.026c-.015-.008-.032-.013-.044-.024a2.27 2.27 0 00-.544-.32 4.898 4.898 0 00-.173-.075.203.203 0 01-.126-.191c-.003-.085.045-.154.128-.187l.059-.025c.099-.044.118-.076.112-.187a.384.384 0 00-.008-.063c-.067-.294-.123-.59-.205-.88a9.478 9.478 0 00-.826-2.036 7.465 7.465 0 00-1.39-1.805 4.536 4.536 0 00-1.177-.824 3.656 3.656 0 00-1.016-.328 6.155 6.155 0 00-.712-.074zm6.719 5.955c.01.014.018.028.038.034l-.022-.044-.016.01zM4.103 3.917a.062.062 0 01-.03.012.455.455 0 01-.04.039c-.01.01-.02.02-.045.04l-.363.354c-.088.085-.17.178-.266.253-.284.22-.425.53-.544.855a.132.132 0 00-.007.071c.013.055.033.108.052.168l.074.026c-.017.056-.03.105-.047.152-.058.164-.118.327-.175.491-.005.015.008.036.019.077.08-.175.158-.33.225-.489.228-.544.484-1.074.819-1.561.09-.133.182-.266.283-.401.004-.006.007-.013.022-.03.001-.016.003-.032.015-.04l.008-.017zm12.976 2.408a.023.023 0 01.009.019.073.073 0 00-.006.01.188.188 0 00.007.02l.018.022c.002-.007.007-.016.005-.021-.003-.01-.012-.018-.02-.038a1.331 1.331 0 01-.013-.012zM4.199 4.48c-.003.004-.008.008-.027.014-.005.013-.011.025-.031.047a2.085 2.085 0 01-.124.167c-.048.07-.116.055-.181.041-.134-.028-.228.016-.287.143-.089.187-.187.37-.273.56-.049.108-.11.216-.118.36.081.003.154.007.228.008h.228a2.563 2.563 0 01-.079.264c-.01.052-.022.103-.033.155l.02.004c.018-.046.037-.092.067-.153.066-.142.13-.285.2-.426.02-.04.034-.1.116-.092 0 .043.004.084 0 .124-.005.045-.017.09-.028.143.141.043.086.174.115.269.102-.022.104-.195.248-.144v.205l.017.002.439-1.059c-.13 0-.246-.02-.358.033-.024.011-.058-.001-.108-.004.075-.15.139-.278.211-.417a.128.128 0 01.025-.036c0-.015-.001-.03.008-.038l.006-.02c-.005.006-.01.011-.028.017-.004.012-.009.024-.026.045a.085.085 0 01-.032.033c-.123.157-.09.164-.258.106-.079-.027-.078-.028-.047-.144.028-.046.056-.093.098-.15 0-.016-.001-.032.007-.042L4.2 4.48zm2.073-.67c-.003.006-.007.011-.027.016-.094.125-.194.246-.28.377-.155.238-.301.481-.451.723-.14.224-.345.368-.575.481-.017.008-.04.006-.079.011.012-.059.016-.109.033-.153a6.076 6.076 0 01.229-.518l-.007-.02a.138.138 0 01-.035.025c-.028.05-.055.1-.093.164-.26.424-.443.817-.442.95.024.004.048.011.073.013.177.013.188.007.26-.165.03-.07.077-.12.147-.15l.175-.07c.044-.018.085-.057.146-.032.003.05-.01.11.014.145.042.062.044.125.047.193.002.049.017.098.026.147.029-.034.039-.065.05-.097.142-.39.277-.782.428-1.17.1-.256.22-.504.33-.756.013-.03.013-.067.03-.092V3.81zm3.987-.34c0 .045.01.084.021.123.042.16.094.318.124.48.024.133.023.27.028.406 0 .033-.019.067-.032.11-.094-.058-.047-.158-.106-.215h-.125c-.015.072-.01.152-.046.2-.066.085-.155.154-.236.227-.043.038-.078.018-.103-.025l-.046-.087c-.065.035-.117.069-.172.093-.116.051-.235.095-.35.147-.085.038-.09.053-.07.147.014.075.034.148.047.223.013.072.05.109.123.124.233.05.462.115.657.265.058-.102.058-.102.168-.151.03-.014.06-.03.092-.042.08-.03.115-.017.15.06.023.048.041.098.066.158.06-.14-.042-.267.017-.416.157.18.24.39.375.567a.235.235 0 00.022-.098c.002-.124 0-.247.002-.371 0-.034.013-.067.02-.1l.032-.003c.11.155.13.354.226.52a3.036 3.036 0 00-.01-.392c-.004-.045 0-.074.05-.088.08.036.116.14.215.158-.03-.275-.423-1.137-.798-1.635-.114-.127-.2-.28-.34-.386zm-2.667.696c-.019.034-.03.05-.037.067-.061.185-.125.37-.18.556-.031.105-.087.169-.195.19-.09.019-.178.052-.268.073-.038.009-.089.015-.118-.003-.024-.016-.025-.069-.036-.106-.064.076-.082.087-.17.047-.133-.062-.262-.135-.393-.201-.048-.025-.093-.063-.17-.03-.043.12-.091.25-.137.382-.099.28-.087.242.095.453.046.048.102.03.154.023.054-.009.106-.03.16-.036.13-.013.26-.08.367-.015.204-.064.387-.122.571-.178.05-.015.089.005.114.054.022.042.034.093.082.121.038-.056-.013-.128.063-.178l.14.241-.042-1.46zm.278.358c-.096-.01-.107.01-.11.108-.002.038-.003.078.002.115.03.2.099.386.174.57.002.006.012.01.022.015l.078-.05c.052.036.081.088.153.088.205-.002.41.014.616.012.099-.001.158.042.205.12.018.03.024.077.088.066l-.08-.394c-.05-.195-.085-.395-.172-.589-.057.057-.114.068-.18.046a.72.72 0 00-.135-.028c-.22-.028-.44-.059-.66-.08zm10.254-1.727c.089.163.155.316.139.491-.016.168.026.342-.044.516-.047-.033-.088-.082-.112-.075-.117.035-.164-.057-.227-.115a4.772 4.772 0 01-.286-.29l-.104-.113a4.856 4.856 0 01-.023.019c.035.046.07.093.11.156.04.064.084.127.122.193.034.058.065.118.031.205-.082-.01-.164-.019-.246-.032-.06-.01-.101 0-.124.07-.031.098-.037.096-.15.09.02.042.036.08.057.116.041.074.03.138-.03.196-.06.06-.118.122-.178.181a.175.175 0 01-.185.046c-.222-.061-.447-.113-.67-.174-.032-.009-.063-.04-.086-.068-.03-.04-.052-.087-.08-.13-.044-.07-.09-.138-.136-.207a.18.18 0 00-.014.105c.012.127.03.253.035.38.005.1-.024.12-.121.104-.104-.017-.206-.04-.31-.058-.064-.012-.131-.028-.202.03l.081.208c.09 0 .166-.01.237.002a.819.819 0 01.458.251c.078.083.154.168.241.26l.018-.005c-.004-.006-.008-.013-.01-.04.014-.056-.062-.118.018-.178.031.03.064.057.088.09.058.078.111.159.169.257l.089.141.024-.013a2093.819 2093.819 0 01-.427-.934c.055.007.083.007.108.016.193.07.385.142.577.216.074.028.147.06.219.094.062.028.112.018.157-.033.05-.056.102-.112.154-.167.05-.051.095-.046.132.014.016.025.026.053.04.08.071.138.143.277.217.433l.159.308.025-.011c-.044-.106-.07-.218-.138-.334-.057-.182-.168-.346-.206-.545.136.034.362.326.567.732l.057.074.018-.011a1.563 1.563 0 01-.052-.127c-.046-.145-.097-.29-.136-.436-.022-.083-.036-.173.022-.26l.109.058-.026-.207.027-.016c.022.02.05.036.065.06.073.108.143.22.215.33.01.016.029.029.043.043-.036-.217-.2-.38-.229-.626l.155.112c.014-.166.012-.319.042-.465.032-.158-.023-.297-.063-.445.024.004.036.006.055.025.092.124.183.249.277.371.02.027.05.047.069.087l.04.063.019-.015a.293.293 0 01-.053-.082 27.922 27.922 0 01-.332-.49c-.221-.311-.363-.467-.485-.521zm-6.57.327c-.003.161.092.275.069.415l-.368.087c.09.139.032.237-.052.331-.05.057-.092.122-.143.178-.037.04-.046.078-.018.126l.16.275c.029.048.072.066.128.064.076-.003.152 0 .228-.001.116-.003.216.022.275.137.006.014.02.024.044.052.004-.059-.003-.098.01-.13.016-.04.04-.099.072-.108.084-.023.173-.024.26-.03.013-.001.027.018.04.029l.071.065c.019-.11-.082-.198-.024-.31l.126.04c-.026-.123-.07-.245-.071-.366 0-.123.051-.243.115-.36.107.062.16.156.234.253.183.265.36.533.494.834.165-.078.27.068.407.088-.003-.106-.133-.441-.197-.492a.142.142 0 00-.102-.028c-.06.011-.119.039-.191.063-.025-.039-.056-.078-.077-.122a3.936 3.936 0 00-.473-.783c-.076-.094-.16-.182-.228-.26l-.391.285c-.049.035-.094.03-.132-.017l-.169-.207c-.025-.03-.053-.059-.097-.108z`}),t[0]=n,t[1]=r,t[2]=i,t[3]=a):(n=t[0],r=t[1],i=t[2],a=t[3]);let o;return t[4]===e?o=t[5]:(o=(0,I.jsxs)(`svg`,{role:`img`,"aria-label":`Hermes icon`,xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,fill:`currentColor`,fillRule:`evenodd`,viewBox:`0 0 24 24`,...e,children:[n,r,i,a]}),t[4]=e,t[5]=o),o}function ge(e){let t=(0,L.c)(7),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,I.jsx)(`title`,{children:`OpenClaw icon`}),t[0]=n):n=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,I.jsxs)(`mask`,{id:`openclaw-eyes`,maskUnits:`userSpaceOnUse`,x:0,y:0,width:120,height:120,children:[(0,I.jsx)(`rect`,{width:120,height:120,fill:`white`}),(0,I.jsx)(`circle`,{cx:45,cy:35,r:6,fill:`black`}),(0,I.jsx)(`circle`,{cx:75,cy:35,r:6,fill:`black`})]}),t[1]=r):r=t[1];let i,a,o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,I.jsxs)(`g`,{fill:`currentColor`,mask:`url(#openclaw-eyes)`,children:[(0,I.jsx)(`path`,{d:`M60 10 C30 10 15 35 15 55 C15 75 30 95 45 100 L45 110 L55 110 L55 100 C55 100 60 102 65 100 L65 110 L75 110 L75 100 C90 95 105 75 105 55 C105 35 90 10 60 10Z`}),(0,I.jsx)(`path`,{d:`M20 45 C5 40 0 50 5 60 C10 70 20 65 25 55 C28 48 25 45 20 45Z`}),(0,I.jsx)(`path`,{d:`M100 45 C115 40 120 50 115 60 C110 70 100 65 95 55 C92 48 95 45 100 45Z`})]}),a=(0,I.jsx)(`path`,{d:`M45 15 Q35 5 30 8`,fill:`none`,stroke:`currentColor`,strokeWidth:3,strokeLinecap:`round`}),o=(0,I.jsx)(`path`,{d:`M75 15 Q85 5 90 8`,fill:`none`,stroke:`currentColor`,strokeWidth:3,strokeLinecap:`round`}),t[2]=i,t[3]=a,t[4]=o):(i=t[2],a=t[3],o=t[4]);let s;return t[5]===e?s=t[6]:(s=(0,I.jsxs)(`svg`,{role:`img`,"aria-label":`OpenClaw icon`,xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,fill:`none`,viewBox:`0 0 120 120`,...e,children:[n,r,i,a,o]}),t[5]=e,t[6]=s),s}function $(e){let t=(0,L.c)(5),n,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,I.jsx)(`title`,{children:`OpenCode icon`}),r=(0,I.jsx)(`path`,{fill:`currentColor`,fillRule:`evenodd`,clipRule:`evenodd`,d:`M384 416H128V96H384V416ZM320 160H192V352H320V160Z`}),i=(0,I.jsx)(`path`,{fill:`currentColor`,fillOpacity:.55,d:`M320 224V352H192V224H320Z`}),t[0]=n,t[1]=r,t[2]=i):(n=t[0],r=t[1],i=t[2]);let a;return t[3]===e?a=t[4]:(a=(0,I.jsxs)(`svg`,{role:`img`,"aria-label":`OpenCode icon`,xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,fill:`none`,viewBox:`0 0 512 512`,...e,children:[n,r,i]}),t[3]=e,t[4]=a),a}function _e(e){let t=(0,L.c)(5),n,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,I.jsx)(`title`,{children:`Pi icon`}),r=(0,I.jsx)(`path`,{fill:`currentColor`,fillRule:`evenodd`,clipRule:`evenodd`,d:`M165.29 165.29H517.36V400H400V517.36H282.65V634.72H165.29ZM282.65 282.65V400H400V282.65Z`}),i=(0,I.jsx)(`path`,{fill:`currentColor`,d:`M517.36 400H634.72V634.72H517.36Z`}),t[0]=n,t[1]=r,t[2]=i):(n=t[0],r=t[1],i=t[2]);let a;return t[3]===e?a=t[4]:(a=(0,I.jsxs)(`svg`,{role:`img`,"aria-label":`Pi icon`,xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,fill:`none`,viewBox:`0 0 800 800`,...e,children:[n,r,i]}),t[3]=e,t[4]=a),a}var ve={"claude-cowork":`claude`,"claude-code":`claude`,codex:`openai`,cursor:`cursor`,copilot:`github`,opencode:`opencode`,pi:`pi`,antigravity:`antigravity`,openclaw:`openclaw`,hermes:`hermes`};function ye(e){let t=(0,L.c)(47),n,r,a,s;t[0]===e?(n=t[1],r=t[2],a=t[3],s=t[4]):({id:r,style:s,className:n,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=a,t[4]=s);let{resolvedTheme:c}=i(),u=ve[r],m=u?(c===`dark`?l[u]:void 0)??ee[u]:void 0,h;t[5]!==m||t[6]!==s?(h=m?{...s,"--ok-brand-color":m}:s,t[5]=m,t[6]=s,t[7]=h):h=t[7];let g=h,_=m&&`[&_*]:![color:var(--ok-brand-color)]`,v;t[8]!==n||t[9]!==_?(v=o(_,n),t[8]=n,t[9]=_,t[10]=v):v=t[10];let y=v;if(r===`claude-cowork`||r===`claude-code`){let e;return t[11]!==y||t[12]!==g||t[13]!==a?(e=(0,I.jsx)(d,{style:g,className:y,...a}),t[11]=y,t[12]=g,t[13]=a,t[14]=e):e=t[14],e}if(r===`codex`){let e;return t[15]!==y||t[16]!==g||t[17]!==a?(e=(0,I.jsx)(f,{style:g,className:y,...a}),t[15]=y,t[16]=g,t[17]=a,t[18]=e):e=t[18],e}if(r===`cursor`){let e;return t[19]!==y||t[20]!==g||t[21]!==a?(e=(0,I.jsx)(p,{style:g,className:y,...a}),t[19]=y,t[20]=g,t[21]=a,t[22]=e):e=t[22],e}if(r===`copilot`){let e;return t[23]!==y||t[24]!==g||t[25]!==a?(e=(0,I.jsx)(te,{style:g,className:y,...a}),t[23]=y,t[24]=g,t[25]=a,t[26]=e):e=t[26],e}if(r===`opencode`){let e;return t[27]!==y||t[28]!==g||t[29]!==a?(e=(0,I.jsx)($,{style:g,className:y,...a}),t[27]=y,t[28]=g,t[29]=a,t[30]=e):e=t[30],e}if(r===`pi`){let e;return t[31]!==y||t[32]!==g||t[33]!==a?(e=(0,I.jsx)(_e,{style:g,className:y,...a}),t[31]=y,t[32]=g,t[33]=a,t[34]=e):e=t[34],e}if(r===`antigravity`){let e;return t[35]!==y||t[36]!==g||t[37]!==a?(e=(0,I.jsx)(me,{style:g,className:y,...a}),t[35]=y,t[36]=g,t[37]=a,t[38]=e):e=t[38],e}if(r===`openclaw`){let e;return t[39]!==y||t[40]!==g||t[41]!==a?(e=(0,I.jsx)(ge,{style:g,className:y,...a}),t[39]=y,t[40]=g,t[41]=a,t[42]=e):e=t[42],e}if(r===`hermes`){let e;return t[43]!==y||t[44]!==g||t[45]!==a?(e=(0,I.jsx)(he,{style:g,className:y,...a}),t[43]=y,t[44]=g,t[45]=a,t[46]=e):e=t[46],e}return null}var be=s;function xe(e){return c[e].handoffTarget}function Se(e,t,n,r,i){return i===!1?!1:G(e[H(t,n)],r)}function Ce(e,t,n){return G(e[U(t)],n[t]!==!1)}function we(e,t){return G(e[W(t)],!1)}export{oe as C,se as S,ae as _,xe as a,j as b,W as c,U as d,fe as f,ne as g,ce as h,be as i,H as l,F as m,Se as n,ye as o,R as p,Ce as r,pe as s,we as t,de as u,ie as v,P as x,re as y};
@@ -1 +0,0 @@
1
- import"./src-TKCctdpc.mjs";import"./write-project-skill-D38t_B_r.mjs";import"./src-eJmU7tk9.mjs";import"./acp-harness-probe-DYSjZblH.mjs";import"./init-BUIEpJX9.mjs";import{n as e}from"./loader-CqgZy7s4.mjs";import"./skill-teardown-CjZ8Zkmo.mjs";import"./preview-CW1IxLsJ.mjs";import"./mcp-migrate-event-B1gJf6bG.mjs";export{e as loadConfig};
@@ -1 +0,0 @@
1
- import{p as e,r as t,v as n}from"./start-ffP2Ihoz.mjs";export{t as bootStartServer,e as resolveHost,n as startCommand};