@xopcai/xopc 0.0.104 → 0.0.105
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser-ext/manifest.json +1 -1
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/gateway/static/root/assets/agents-XzgIVKcI.js +396 -0
- package/dist/gateway/static/root/assets/{apps-page-L-IwQTe0.js → apps-page-B7Us3RMl.js} +1 -1
- package/dist/gateway/static/root/assets/channels-settings-BgeV6fzw.js +1 -0
- package/dist/gateway/static/root/assets/cron-page-DKGHEeAU.js +1 -0
- package/dist/gateway/static/root/assets/{dist-C6vclgEL.js → dist-DJDkNhu5.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-debug-page-D4JYAbsX.js → extension-debug-page-DI1XJTJi.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-_T62gi6e.js → extension-page-SuafGTT_.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-CkJbjyM-.js → extension-settings-page-cKmGax9v.js} +1 -1
- package/dist/gateway/static/root/assets/{fetch-B5aiIguv.js → fetch-CkvRO30i.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-startup-retry-DqmLXhs6.js → gateway-startup-retry-BkKyRDrF.js} +1 -1
- package/dist/gateway/static/root/assets/{heartbeat-config-api-HwJV1K_Y.js → heartbeat-config-api-CRiDcxtt.js} +1 -1
- package/dist/gateway/static/root/assets/index-50FVtgXU.js +4845 -0
- package/dist/gateway/static/root/assets/{logs-page-DsjtTjBy.js → logs-page-DM8o5-Bm.js} +2 -2
- package/dist/gateway/static/root/assets/{note-detail-page-B2V7RhgD.js → note-detail-page-j53jtvq9.js} +54 -54
- package/dist/gateway/static/root/assets/{note-time-BG8GCTr4.js → note-time-Ck2H2Qpw.js} +1 -1
- package/dist/gateway/static/root/assets/{notes-page-xrcVBQ6Z.js → notes-page-CsWIw35Q.js} +1 -1
- package/dist/gateway/static/root/assets/{schema-form-S-QUvhul.js → schema-form-BvmGNxiJ.js} +1 -1
- package/dist/gateway/static/root/assets/sessions-page-CLPsbyOW.js +1 -0
- package/dist/gateway/static/root/assets/{settings-advanced-gate-DujQl9c7.js → settings-advanced-gate-DRdayl8P.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-form-section-r1V7dRV6.js → settings-form-section-BlIYg2gZ.js} +1 -1
- package/dist/gateway/static/root/assets/settings-page-CRGHT_bm.js +3 -0
- package/dist/gateway/static/root/assets/{share-preview-page-DOFy0FNt.js → share-preview-page-BlT6Akvk.js} +1 -1
- package/dist/gateway/static/root/assets/skills-page-Ce-RIH2y.js +2 -0
- package/dist/gateway/static/root/assets/{theme-store-Bo3j5Ovv.js → theme-store-DYgVdRB4.js} +1 -1
- package/dist/gateway/static/root/assets/url-DPEStU4M.js +3 -0
- package/dist/gateway/static/root/assets/{voice-api-key-field-AjmUAlEQ.js → voice-api-key-field-CJGTidqc.js} +1 -1
- package/dist/gateway/static/root/assets/{workflow-page.utils-DLEJ92gK.js → workflow-page.utils-_sjXCMvi.js} +1 -1
- package/dist/gateway/static/root/assets/workflows-page-o63aaARK.js +27 -0
- package/dist/gateway/static/root/index.html +5 -5
- package/dist/package.js +1 -1
- package/dist/src/agent/context/workspace-seed.js +1 -1
- package/dist/src/agent/inbound/turn-dispatcher.d.ts +2 -0
- package/dist/src/agent/inbound/turn-dispatcher.js +1 -0
- package/dist/src/agent/inbound/turn-dispatcher.js.map +1 -1
- package/dist/src/agent/prompt/memory/index.js +30 -2
- package/dist/src/agent/prompt/memory/index.js.map +1 -1
- package/dist/src/agent/service/direct-turn-helpers.d.ts +2 -0
- package/dist/src/agent/service/direct-turn-helpers.js +5 -2
- package/dist/src/agent/service/direct-turn-helpers.js.map +1 -1
- package/dist/src/agent/service/process-direct-streaming.d.ts +2 -0
- package/dist/src/agent/service/process-direct-streaming.js +15 -1
- package/dist/src/agent/service/process-direct-streaming.js.map +1 -1
- package/dist/src/agent/service.js +2 -1
- package/dist/src/agent/service.js.map +1 -1
- package/dist/src/agent/service.types.d.ts +3 -0
- package/dist/src/agent/skills/hub-pull.js +1 -1
- package/dist/src/agent/source-context/index.d.ts +2 -0
- package/dist/src/agent/source-context/index.js +3 -0
- package/dist/src/agent/source-context/injector.d.ts +3 -0
- package/dist/src/agent/source-context/injector.js +36 -0
- package/dist/src/agent/source-context/injector.js.map +1 -0
- package/dist/src/agent/source-context/types.d.ts +19 -0
- package/dist/src/agent/source-context/types.js +10 -0
- package/dist/src/agent/source-context/types.js.map +1 -0
- package/dist/src/agent/tools/factory.js +5 -5
- package/dist/src/agent/tools/index.js +3 -3
- package/dist/src/agent/tools/session-search-tool.js +1 -1
- package/dist/src/agent/tools/shell.js +1 -1
- package/dist/src/agent/tools/web-extract.js +2 -2
- package/dist/src/agent/tools/web.js +1 -1
- package/dist/src/browser/actions/extension-registry-bridge.js +1 -1
- package/dist/src/browser/actions/registry.js +2 -2
- package/dist/src/browser/cdp-local-launcher.js +1 -1
- package/dist/src/browser/index.js +3 -3
- package/dist/src/browser/providers/browser-ext-install.js +1 -1
- package/dist/src/browser/providers/cloakbrowser.js +1 -1
- package/dist/src/cli/commands/browser-cli-helpers.js +1 -1
- package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
- package/dist/src/config/paths.d.ts +1 -0
- package/dist/src/config/paths.js +5 -1
- package/dist/src/config/paths.js.map +1 -1
- package/dist/src/document-understanding/extract.d.ts +13 -0
- package/dist/src/document-understanding/extract.js +63 -0
- package/dist/src/document-understanding/extract.js.map +1 -0
- package/dist/src/gateway/hono/routes/notes.js +46 -27
- package/dist/src/gateway/hono/routes/notes.js.map +1 -1
- package/dist/src/gateway/service.js +11 -0
- package/dist/src/gateway/service.js.map +1 -1
- package/dist/src/mcp/channel-bridge.js +1 -1
- package/dist/src/notes/agent-context.d.ts +40 -0
- package/dist/src/notes/agent-context.js +383 -0
- package/dist/src/notes/agent-context.js.map +1 -0
- package/dist/src/notes/index.d.ts +2 -0
- package/dist/src/notes/index.js +2 -1
- package/dist/src/notes/service.d.ts +5 -0
- package/dist/src/notes/service.js +22 -0
- package/dist/src/notes/service.js.map +1 -1
- package/dist/src/notes/store.js +2 -0
- package/dist/src/notes/store.js.map +1 -1
- package/dist/src/share/share-thumbnail.js +1 -1
- package/dist/src/storage/sqlite/index.d.ts +1 -0
- package/dist/src/storage/sqlite/index.js +2 -1
- package/dist/src/storage/sqlite/migrations/005_add_note_agent_contexts.sql +10 -0
- package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
- package/dist/src/storage/sqlite/migrations/runner.js +3 -3
- package/dist/src/storage/sqlite/migrations/runner.js.map +1 -1
- package/dist/src/storage/sqlite/migrations/runner.ts +1 -1
- package/dist/src/storage/sqlite/note-agent-context-repository.d.ts +10 -0
- package/dist/src/storage/sqlite/note-agent-context-repository.js +35 -0
- package/dist/src/storage/sqlite/note-agent-context-repository.js.map +1 -0
- package/dist/src/storage/sqlite/schema.js +1 -1
- package/package.json +3 -3
- package/dist/gateway/static/root/assets/agents-CvsBrBfi.js +0 -396
- package/dist/gateway/static/root/assets/channels-settings-D95KuPeP.js +0 -1
- package/dist/gateway/static/root/assets/cron-page-CfkWXDAI.js +0 -1
- package/dist/gateway/static/root/assets/index-DvTb6wNR.js +0 -4845
- package/dist/gateway/static/root/assets/sessions-page-CrQer6Au.js +0 -1
- package/dist/gateway/static/root/assets/settings-page-C9nrONQ2.js +0 -3
- package/dist/gateway/static/root/assets/skills-page-DmTsrs_a.js +0 -2
- package/dist/gateway/static/root/assets/url-WgQIjFZu.js +0 -3
- package/dist/gateway/static/root/assets/workflows-page-BnjjKrM1.js +0 -27
|
@@ -0,0 +1,396 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,n,t as r}from"./vendor-react-BOUWij0V.js";import{i,o as a,t as o}from"./url-DPEStU4M.js";import{i as s}from"./vendor-swr-BIWyz7Rc.js";import{t as c}from"./circle-check-C23XjkUj.js";import{i as l}from"./theme-store-DYgVdRB4.js";import{a as u,n as d,t as f}from"./fetch-CkvRO30i.js";import{i as p,r as m}from"./gateway-startup-retry-BkKyRDrF.js";import{$n as h,$o as g,$r as _,Ao as v,Ar as y,At as b,B as x,Bi as S,Bt as C,Ci as w,Co as T,Cr as E,Dr as D,Eo as O,Er as k,F as A,Fa as j,Fi as M,Ft as N,Ga as P,Gn as F,Ha as I,Ho as L,Hr as R,Ht as z,I as B,Ii as ee,In as V,Io as H,It as U,Jn as te,Jr as W,Kn as G,L as ne,La as re,Ln as ie,Lt as ae,M as oe,Mo as se,Mr as ce,Mt as le,N as ue,Nt as de,Or as fe,Ot as pe,P as me,Pt as he,Qn as ge,Qo as _e,R as ve,Ri as ye,Rn as be,Rr as xe,Rt as Se,Si as Ce,Sn as we,So as Te,Sr as Ee,Ta as De,Tr as Oe,Ui as ke,Un as Ae,V as je,Va as Me,Vi as Ne,Vt as Pe,Wi as Fe,Wn as Ie,Wr as Le,Xi as Re,Xn as ze,Xr as Be,Yi as Ve,Yn as He,Yo as Ue,Zi as We,Zn as Ge,Zo as Ke,Zr as K,_o as qe,ai as Je,bi as Ye,ca as Xe,ci as Ze,co as Qe,da as $e,di as et,ei as tt,eo as nt,es as rt,fi as it,fo as at,gi as ot,ho as st,io as ct,j as lt,ji as ut,jr as dt,jt as ft,ka as pt,kr as mt,kt as ht,la as gt,li as q,lo as _t,ma as vt,mi as yt,mo as bt,n as xt,na as St,oa as Ct,oo as wt,p as Tt,pi as Et,qn as Dt,qo as Ot,si as kt,t as At,ti as jt,tn as Mt,ua as Nt,ui as J,vi as Pt,vo as Ft,wi as It,wo as Lt,wr as Rt,xa as zt,xn as Bt,xr as Vt,yi as Ht,yo as Ut,z as Wt,zo as Gt,zt as Kt}from"./index-50FVtgXU.js";import{n as qt,t as Jt}from"./settings-form-section-BlIYg2gZ.js";import{C as Yt,D as Xt,c as Zt,m as Qt,n as $t,o as en,p as tn,r as nn,t as rn,v as an}from"./settings-advanced-gate-DRdayl8P.js";var Y=n(),X=r();function on(e){let t=(0,Y.c)(40),{open:n,onOpenChange:r,busy:i,deletePurge:a,deleteTarget:o,deleteConfirmText:s,onDeleteConfirmTextChange:c,onConfirm:l,onCancel:u,a:d}=e,f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,X.jsx)(Oe,{className:`fixed inset-0 z-[80] bg-scrim backdrop-blur-[2px]`}),t[0]=f):f=t[0];let p;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(p=J(`fixed left-1/2 top-1/2 z-[81] w-[min(100%-2rem,28rem)] -translate-x-1/2 -translate-y-1/2 rounded-xl border border-edge bg-surface-panel p-4 shadow-popover`,`dark:border-edge`),t[1]=p):p=t[1];let m=a?d.purgeDisk:d.removeFromConfig,h;t[2]===m?h=t[3]:(h=(0,X.jsx)(fe,{className:`text-base font-semibold text-fg`,children:m}),t[2]=m,t[3]=h);let g=a?d.confirmDeletePurge:d.confirmDelete,_;t[4]===g?_=t[5]:(_=(0,X.jsx)(Rt,{className:`mt-2 whitespace-pre-wrap text-sm leading-relaxed text-fg-muted`,children:g}),t[4]=g,t[5]=_);let v;t[6]!==d.purgeConfirmHint||t[7]!==d.purgeConfirmLabel||t[8]!==d.purgeConfirmPlaceholder||t[9]!==s||t[10]!==a||t[11]!==o||t[12]!==c?(v=a&&o?(0,X.jsxs)(`div`,{className:`mt-3 space-y-3`,children:[(0,X.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-fg`,htmlFor:`agent-delete-confirm`,children:d.purgeConfirmLabel}),(0,X.jsx)(`input`,{id:`agent-delete-confirm`,type:`text`,autoComplete:`off`,spellCheck:!1,className:J(`w-full rounded-md border border-edge bg-surface-panel px-3 py-1.5 font-mono text-xs text-fg`,`placeholder:text-fg-subtle`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`,`dark:border-edge`),placeholder:d.purgeConfirmPlaceholder.replace(`{{agentId}}`,o.id),value:s,onChange:e=>c(e.target.value)}),(0,X.jsx)(`p`,{className:`pt-0.5 text-xs text-fg-muted`,children:d.purgeConfirmHint.replace(`{{agentId}}`,o.id)})]}):null,t[6]=d.purgeConfirmHint,t[7]=d.purgeConfirmLabel,t[8]=d.purgeConfirmPlaceholder,t[9]=s,t[10]=a,t[11]=o,t[12]=c,t[13]=v):v=t[13];let y;t[14]!==d.createModalCancel||t[15]!==i||t[16]!==u?(y=(0,X.jsx)(q,{type:`button`,variant:`ghost`,disabled:i,onClick:u,children:d.createModalCancel}),t[14]=d.createModalCancel,t[15]=i,t[16]=u,t[17]=y):y=t[17];let b=a?`border-red-200 text-red-700 hover:bg-red-50 dark:border-red-900/60 dark:text-red-300 dark:hover:bg-red-950/40`:void 0,x;t[18]!==i||t[19]!==s||t[20]!==a||t[21]!==o?(x=i||!o||a&&s.trim().toLowerCase()!==o.id.toLowerCase(),t[18]=i,t[19]=s,t[20]=a,t[21]=o,t[22]=x):x=t[22];let S=a?d.purgeDisk:d.removeFromConfig,C;t[23]!==l||t[24]!==x||t[25]!==S||t[26]!==b?(C=(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:b,disabled:x,onClick:l,children:S}),t[23]=l,t[24]=x,t[25]=S,t[26]=b,t[27]=C):C=t[27];let w;t[28]!==C||t[29]!==y?(w=(0,X.jsxs)(`div`,{className:`mt-4 flex flex-wrap items-center justify-end gap-2 border-t border-edge-subtle/60 pt-3`,children:[y,C]}),t[28]=C,t[29]=y,t[30]=w):w=t[30];let T;t[31]!==w||t[32]!==h||t[33]!==_||t[34]!==v?(T=(0,X.jsxs)(k,{children:[f,(0,X.jsxs)(E,{className:p,onOpenAutoFocus:sn,children:[h,_,v,w]})]}),t[31]=w,t[32]=h,t[33]=_,t[34]=v,t[35]=T):T=t[35];let O;return t[36]!==r||t[37]!==n||t[38]!==T?(O=(0,X.jsx)(D,{open:n,onOpenChange:r,children:T}),t[36]=r,t[37]=n,t[38]=T,t[39]=O):O=t[39],O}function sn(e){return e.preventDefault()}var cn=[{id:`overview`,labelKey:`navIdentity`,icon:ot},{id:`profile`,labelKey:`navProfile`,icon:Lt},{id:`models`,labelKey:`navModels`,icon:Me},{id:`tools`,labelKey:`navTools`,icon:Et},{id:`skills`,labelKey:`navSkills`,icon:Ct},{id:`files`,labelKey:`navCoreFiles`,icon:wt}],ln=[{id:`channels`,labelKey:`tabChannels`,icon:gt},{id:`cron`,labelKey:`tabCron`,icon:Ut}];function un(e){let t=(0,Y.c)(20),{a:n,panel:r,onPanelChange:i}=e,a;t[0]!==i||t[1]!==r?(a=(e,t,n)=>(0,X.jsxs)(`button`,{type:`button`,onClick:()=>i(e),className:J(`flex w-full items-center gap-2.5 rounded-lg px-3 py-2 text-left text-sm font-medium transition-colors`,jt.press,r===e?`bg-accent-soft text-accent-fg`:`text-fg-muted hover:bg-surface-hover hover:text-fg`),children:[(0,X.jsx)(n,{className:`size-4 shrink-0 opacity-90`,strokeWidth:2,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:t})]},e),t[0]=i,t[1]=r,t[2]=a):a=t[2];let o=a,s=n.editorNavAria,c;t[3]!==n||t[4]!==o?(c=cn.map(e=>{let{id:t,labelKey:r,icon:i}=e;return o(t,n[r],i)}),t[3]=n,t[4]=o,t[5]=c):c=t[5];let l;t[6]===c?l=t[7]:(l=(0,X.jsx)(`div`,{className:`flex flex-col gap-0.5`,children:c}),t[6]=c,t[7]=l);let u;t[8]===n.navAdvanced?u=t[9]:(u=(0,X.jsx)(`p`,{className:`mt-4 px-3 text-[10px] font-semibold uppercase tracking-wide text-fg-subtle`,children:n.navAdvanced}),t[8]=n.navAdvanced,t[9]=u);let d;t[10]!==n||t[11]!==o?(d=ln.map(e=>{let{id:t,labelKey:r,icon:i}=e;return o(t,n[r],i)}),t[10]=n,t[11]=o,t[12]=d):d=t[12];let f;t[13]===d?f=t[14]:(f=(0,X.jsx)(`div`,{className:`flex flex-col gap-0.5`,children:d}),t[13]=d,t[14]=f);let p;return t[15]!==n.editorNavAria||t[16]!==l||t[17]!==u||t[18]!==f?(p=(0,X.jsxs)(`nav`,{className:`flex w-full flex-col gap-1`,"aria-label":s,children:[l,u,f]}),t[15]=n.editorNavAria,t[16]=l,t[17]=u,t[18]=f,t[19]=p):p=t[19],p}function dn(e){let t=(0,Y.c)(49),{open:n,onOpenChange:r,a:i,title:a,subtitle:o,panel:s,onPanelChange:c,onFooterSave:l,footerSaveDisabled:u,footerSavedFlash:d,busy:f,children:p}=e,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,X.jsx)(Oe,{className:J(`xopc-dialog-overlay fixed inset-0 bg-scrim`,we)}),t[0]=m):m=t[0];let h;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(h=J(`xopc-dialog-content fixed flex flex-col overflow-hidden rounded-xl border border-edge bg-surface-panel shadow-popover dark:border-edge`,Bt,`inset-4 h-[calc(100dvh-2rem)] max-h-[calc(100dvh-2rem)] min-h-0`,`sm:inset-auto sm:left-1/2 sm:top-1/2 sm:h-[min(88vh,48rem)] sm:max-h-[min(88vh,48rem)] sm:min-h-[32rem] sm:w-[min(100%-2rem,58rem)] sm:-translate-x-1/2 sm:-translate-y-1/2`),t[1]=h):h=t[1];let g;t[2]===a?g=t[3]:(g=(0,X.jsx)(fe,{className:`text-base font-semibold leading-snug text-fg`,children:a}),t[2]=a,t[3]=g);let _;t[4]===o?_=t[5]:(_=(0,X.jsx)(Rt,{className:`mt-1 font-mono text-xs text-fg-muted`,children:o}),t[4]=o,t[5]=_);let v;t[6]!==g||t[7]!==_?(v=(0,X.jsxs)(`div`,{className:`min-w-0 pr-2`,children:[g,_]}),t[6]=g,t[7]=_,t[8]=v):v=t[8];let y;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(y=J(tt,`shrink-0 p-1.5 hover:bg-surface-base`),t[9]=y):y=t[9];let b;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,X.jsx)(it,{className:`size-4`,"aria-hidden":!0}),t[10]=b):b=t[10];let x;t[11]===i.closeDialogAria?x=t[12]:(x=(0,X.jsx)(Ee,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:y,"aria-label":i.closeDialogAria,children:b})}),t[11]=i.closeDialogAria,t[12]=x);let S;t[13]!==v||t[14]!==x?(S=(0,X.jsxs)(`div`,{className:`flex shrink-0 items-start justify-between gap-2 border-b border-edge-subtle px-4 pb-3 pt-4 dark:border-edge`,children:[v,x]}),t[13]=v,t[14]=x,t[15]=S):S=t[15];let C;t[16]!==i||t[17]!==c||t[18]!==s?(C=(0,X.jsx)(`div`,{className:`shrink-0 border-b border-edge-subtle px-4 py-3 dark:border-edge sm:flex sm:w-56 sm:shrink-0 sm:flex-col sm:overflow-y-auto sm:border-b-0 sm:border-r sm:px-0 sm:py-4 sm:pl-4 sm:pr-3`,children:(0,X.jsx)(un,{a:i,panel:s,onPanelChange:c})}),t[16]=i,t[17]=c,t[18]=s,t[19]=C):C=t[19];let w;t[20]===p?w=t[21]:(w=(0,X.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden p-4 sm:pl-2 sm:pr-5`,children:p}),t[20]=p,t[21]=w);let T;t[22]!==i.footerSaveNotApplicable||t[23]!==i.personaSaved||t[24]!==u||t[25]!==d?(T=d?(0,X.jsxs)(`p`,{className:`order-2 text-center text-xs font-medium text-green-600 sm:order-1 sm:mr-auto sm:text-left dark:text-green-400`,children:[`✓ `,i.personaSaved]}):u?(0,X.jsx)(`p`,{className:`order-2 text-center text-xs text-fg-muted sm:order-1 sm:mr-auto sm:text-left`,children:i.footerSaveNotApplicable}):null,t[22]=i.footerSaveNotApplicable,t[23]=i.personaSaved,t[24]=u,t[25]=d,t[26]=T):T=t[26];let O=f||u,A;t[27]===l?A=t[28]:(A=()=>void l(),t[27]=l,t[28]=A);let j;t[29]!==i.save||t[30]!==O||t[31]!==A?(j=(0,X.jsx)(q,{type:`button`,className:`order-1 w-full sm:order-2 sm:w-auto`,disabled:O,onClick:A,children:i.save}),t[29]=i.save,t[30]=O,t[31]=A,t[32]=j):j=t[32];let M;t[33]!==T||t[34]!==j?(M=(0,X.jsxs)(`div`,{className:`flex shrink-0 flex-col gap-1 border-t border-edge-subtle px-4 py-3 dark:border-edge sm:flex-row sm:items-center sm:justify-end sm:gap-3`,children:[T,j]}),t[33]=T,t[34]=j,t[35]=M):M=t[35];let N;t[36]!==w||t[37]!==M?(N=(0,X.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden`,children:[w,M]}),t[36]=w,t[37]=M,t[38]=N):N=t[38];let P;t[39]!==N||t[40]!==C?(P=(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col sm:flex-row sm:overflow-hidden`,children:[C,N]}),t[39]=N,t[40]=C,t[41]=P):P=t[41];let F;t[42]!==P||t[43]!==S?(F=(0,X.jsxs)(k,{children:[m,(0,X.jsx)(E,{className:h,onOpenAutoFocus:fn,children:(0,X.jsxs)(ve,{layer:`modal`,children:[S,P]})})]}),t[42]=P,t[43]=S,t[44]=F):F=t[44];let I;return t[45]!==r||t[46]!==n||t[47]!==F?(I=(0,X.jsx)(D,{open:n,onOpenChange:r,children:F}),t[45]=r,t[46]=n,t[47]=F,t[48]=I):I=t[48],I}function fn(e){return e.preventDefault()}function pn(){return J(`w-full rounded-lg border border-edge bg-surface-panel px-3 py-2 text-sm text-fg`,`placeholder:text-fg-subtle`,Ze,`dark:border-edge`)}function mn(e,t,n){let r=e.agentId?.trim().toLowerCase();return r?r===t.toLowerCase():t.toLowerCase()===n.toLowerCase()}function hn(e){return[e.channel,e.accountId,e.peerKind,e.peerId].filter(e=>typeof e==`string`&&e.length>0).join(` · `)||e.channel}function gn(e,t,n,r){let i=e.trim(),a=t.trim();if(a)return{channel:i,peerId:a};if(n!=null){let e=r[n];if(!e)return{channel:i};let t={channel:i};e.accountId?.trim()&&(t.accountId=e.accountId.trim()),e.peerKind?.trim()&&(t.peerKind=e.peerKind.trim());let a=e.peerId?.trim()||e.chatId?.trim();return a&&(t.peerId=a),t}return{channel:i}}var _n=J(kt,`w-full text-xs sm:w-auto sm:min-w-[11rem] sm:max-w-[17rem] sm:shrink-0`);function vn(e){let t=(0,Y.c)(62),{a:n,busy:r,bindingsLoading:i,agentBindings:a,onRemoveBinding:o,onAddBinding:s,channelStatuses:c,channelsStatusLoading:l,useManualChannel:u,newBindChannel:d,setNewBindChannel:f,bindSessionChats:p,sessionsLoading:m,newBindSessionIdx:h,setNewBindSessionIdx:g,newBindCustomPeer:_,setNewBindCustomPeer:v,onRefreshSessions:y,lastActiveLabels:b,selectRecipient:x}=e,S=!l&&(u||c.length>0),C;t[0]!==n.channelsHint||t[1]!==n.channelsTitle?(C=(0,X.jsx)(qt,{className:`shrink-0`,icon:j,title:n.channelsTitle,subtitle:n.channelsHint}),t[0]=n.channelsHint,t[1]=n.channelsTitle,t[2]=C):C=t[2];let w;t[3]!==n.channelsLoading||t[4]!==n.channelsNone||t[5]!==n.removeBinding||t[6]!==a||t[7]!==i||t[8]!==r||t[9]!==o?(w=i?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.channelsLoading}):a.length===0?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.channelsNone}):(0,X.jsx)(`ul`,{className:`flex flex-col gap-2 text-sm`,children:a.map(e=>(0,X.jsxs)(`li`,{className:`flex flex-wrap items-center justify-between gap-2 rounded-lg border border-edge bg-surface-panel px-3 py-2`,children:[(0,X.jsx)(`span`,{className:`font-mono text-xs`,children:hn(e.match)}),(0,X.jsx)(q,{type:`button`,variant:`secondary`,disabled:r,onClick:()=>void o(e),children:n.removeBinding})]},`${e.match.channel}-${hn(e.match)}`))}),t[3]=n.channelsLoading,t[4]=n.channelsNone,t[5]=n.removeBinding,t[6]=a,t[7]=i,t[8]=r,t[9]=o,t[10]=w):w=t[10];let T;t[11]!==n.channelLabel||t[12]!==n.channelsDisabledSuffix||t[13]!==n.channelsLoadingChannels||t[14]!==n.channelsManualChannelHint||t[15]!==c||t[16]!==l||t[17]!==d||t[18]!==f||t[19]!==v||t[20]!==g||t[21]!==u?(T=l?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.channelsLoadingChannels}):u?(0,X.jsxs)(`label`,{className:`flex flex-col gap-1 text-sm`,children:[(0,X.jsx)(`span`,{className:`text-fg-muted`,children:n.channelLabel}),(0,X.jsx)(`input`,{className:pn(),value:d,onChange:e=>f(e.target.value),placeholder:`telegram`,autoComplete:`off`}),(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:n.channelsManualChannelHint})]}):(0,X.jsxs)(`label`,{className:`flex flex-col gap-1 text-sm`,children:[(0,X.jsx)(`span`,{className:`text-fg-muted`,children:n.channelLabel}),(0,X.jsx)(`select`,{className:J(pn(),`py-2`),value:d,onChange:e=>{f(e.target.value),g(null),v(``)},children:c.map(e=>(0,X.jsxs)(`option`,{value:e.name,disabled:!e.enabled,children:[e.name,` `,e.enabled?``:n.channelsDisabledSuffix]},e.name))})]}),t[11]=n.channelLabel,t[12]=n.channelsDisabledSuffix,t[13]=n.channelsLoadingChannels,t[14]=n.channelsManualChannelHint,t[15]=c,t[16]=l,t[17]=d,t[18]=f,t[19]=v,t[20]=g,t[21]=u,t[22]=T):T=t[22];let E;t[23]!==n.channelsCustomPeerHint||t[24]!==n.channelsCustomPeerPlaceholder||t[25]!==n.channelsLoadingSessions||t[26]!==n.channelsNoSessionsHint||t[27]!==n.channelsPeerAny||t[28]!==n.channelsPeerFromSessions||t[29]!==n.channelsRefreshSessions||t[30]!==n.channelsRefreshSessionsHint||t[31]!==n.channelsSessionLabel||t[32]!==n.peerIdLabel||t[33]!==p||t[34]!==r||t[35]!==b||t[36]!==d||t[37]!==_||t[38]!==h||t[39]!==y||t[40]!==x||t[41]!==m||t[42]!==v||t[43]!==g||t[44]!==S?(E=S&&d.trim()?(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 border-t border-edge-subtle pt-3 text-sm`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,X.jsx)(`span`,{className:`text-fg-muted`,children:n.channelsSessionLabel}),(0,X.jsxs)(q,{type:`button`,variant:`ghost`,className:`h-7 gap-1 px-2 text-xs`,disabled:r||m||!d.trim(),title:n.channelsRefreshSessionsHint,onClick:()=>y(),children:[(0,X.jsx)(St,{className:J(`size-3.5`,m&&`animate-spin`),strokeWidth:1.75}),n.channelsRefreshSessions]})]}),m&&p.length===0?(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:n.channelsLoadingSessions}):null,(0,X.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,X.jsx)(`span`,{className:`text-fg-muted`,children:n.channelsPeerFromSessions}),(0,X.jsxs)(`select`,{className:J(pn(),`py-2`),value:h==null?``:String(h),disabled:r||!d.trim()||!!_.trim(),onChange:e=>{let t=e.target.value;g(t===``?null:Number(t))},children:[(0,X.jsx)(`option`,{value:``,children:n.channelsPeerAny}),p.map((e,t)=>(0,X.jsx)(`option`,{value:String(t),children:Yt(e,b)},`${e.channel}-${e.chatId}`))]})]}),p.length===0&&d.trim()&&!m?(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:n.channelsNoSessionsHint}):null,(0,X.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,X.jsx)(`span`,{className:`text-fg-muted`,children:n.peerIdLabel}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-stretch sm:gap-2`,children:[(0,X.jsx)(`input`,{type:`text`,className:J(pn(),`min-w-0 w-full sm:flex-1`),value:_,onChange:e=>{v(e.target.value),e.target.value.trim()&&g(null)},placeholder:n.channelsCustomPeerPlaceholder,autoComplete:`off`}),(0,X.jsxs)(`select`,{className:_n,value:_,onChange:e=>{let t=e.target.value;v(t||``),g(null)},children:[(0,X.jsx)(`option`,{value:``,children:x}),p.map(e=>(0,X.jsx)(`option`,{value:e.chatId,children:Yt(e,b)},`${e.channel}-${e.chatId}`))]})]}),(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:n.channelsCustomPeerHint})]})]}):null,t[23]=n.channelsCustomPeerHint,t[24]=n.channelsCustomPeerPlaceholder,t[25]=n.channelsLoadingSessions,t[26]=n.channelsNoSessionsHint,t[27]=n.channelsPeerAny,t[28]=n.channelsPeerFromSessions,t[29]=n.channelsRefreshSessions,t[30]=n.channelsRefreshSessionsHint,t[31]=n.channelsSessionLabel,t[32]=n.peerIdLabel,t[33]=p,t[34]=r,t[35]=b,t[36]=d,t[37]=_,t[38]=h,t[39]=y,t[40]=x,t[41]=m,t[42]=v,t[43]=g,t[44]=S,t[45]=E):E=t[45];let D;t[46]!==r||t[47]!==l||t[48]!==d?(D=r||!d.trim()||l,t[46]=r,t[47]=l,t[48]=d,t[49]=D):D=t[49];let O;t[50]!==n.addBinding||t[51]!==D?(O=(0,X.jsx)(`div`,{children:(0,X.jsx)(q,{type:`submit`,disabled:D,children:n.addBinding})}),t[50]=n.addBinding,t[51]=D,t[52]=O):O=t[52];let k;t[53]!==s||t[54]!==T||t[55]!==E||t[56]!==O?(k=(0,X.jsxs)(`form`,{className:`mt-4 flex flex-col gap-3`,onSubmit:s,children:[T,E,O]}),t[53]=s,t[54]=T,t[55]=E,t[56]=O,t[57]=k):k=t[57];let A;return t[58]!==C||t[59]!==w||t[60]!==k?(A=(0,X.jsxs)(Jt,{className:`flex min-h-0 flex-1 flex-col overflow-y-auto`,children:[C,w,k]}),t[58]=C,t[59]=w,t[60]=k,t[61]=A):A=t[61],A}function yn(e){let t=(0,Y.c)(12),n;t[0]!==e.expression||t[1]!==e.kind||t[2]!==e.labels||t[3]!==e.locale||t[4]!==e.nextRun||t[5]!==e.presetLabels||t[6]!==e.timezone||t[7]!==e.valueMs?(n=e.kind===`cron`?Xt(e.expression,e.locale,e.labels,{timezone:e.timezone,nextRun:e.nextRun}):nn(e.valueMs,e.locale,e.presetLabels),t[0]=e.expression,t[1]=e.kind,t[2]=e.labels,t[3]=e.locale,t[4]=e.nextRun,t[5]=e.presetLabels,t[6]=e.timezone,t[7]=e.valueMs,t[8]=n):n=t[8];let r=n,i;return t[9]!==e.className||t[10]!==r?(i=(0,X.jsx)(`span`,{className:e.className,children:r}),t[9]=e.className,t[10]=r,t[11]=i):i=t[11],i}function bn(e){let t=(0,Y.c)(24),{a:n,data:r,busy:o,cronLoading:s,agentCronJobs:c,onSetCronJobAgent:l}=e,u=i(Sn),d;t[0]===u?d=t[1]:(d=a(u),t[0]=u,t[1]=d);let f=d,p=u===`zh`?`zh-CN`:`en-US`,m=f.cron.scheduleBadge,h;t[2]!==n.cronHint||t[3]!==n.cronTitle?(h=(0,X.jsx)(qt,{className:`shrink-0`,icon:Ot,title:n.cronTitle,subtitle:n.cronHint}),t[2]=n.cronHint,t[3]=n.cronTitle,t[4]=h):h=t[4];let g;t[5]!==n.cronAgentClear||t[6]!==n.cronAgentDefault||t[7]!==n.cronColAgent||t[8]!==n.cronColMessage||t[9]!==n.cronColSchedule||t[10]!==n.cronColSession||t[11]!==n.cronLoading||t[12]!==n.cronNone||t[13]!==c||t[14]!==o||t[15]!==s||t[16]!==r||t[17]!==p||t[18]!==l||t[19]!==m?(g=s?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.cronLoading}):c.length===0?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.cronNone}):(0,X.jsx)(`div`,{className:`overflow-x-auto`,children:(0,X.jsxs)(`table`,{className:`w-full min-w-[32rem] border-collapse text-left text-sm`,children:[(0,X.jsx)(`thead`,{children:(0,X.jsxs)(`tr`,{className:`border-b border-edge text-fg-muted`,children:[(0,X.jsx)(`th`,{className:`py-2 pr-3 font-medium`,children:n.cronColSchedule}),(0,X.jsx)(`th`,{className:`py-2 pr-3 font-medium`,children:n.cronColMessage}),(0,X.jsx)(`th`,{className:`py-2 pr-3 font-medium`,children:n.cronColSession}),(0,X.jsx)(`th`,{className:`py-2 pr-3 font-medium`,children:n.cronColAgent})]})}),(0,X.jsx)(`tbody`,{children:c.map(e=>{let t=!e.agentId?.trim(),i=t?``:e.agentId.trim().toLowerCase();return(0,X.jsxs)(`tr`,{className:`border-b border-edge-subtle`,children:[(0,X.jsx)(`td`,{className:`py-2 pr-3`,children:(0,X.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,X.jsx)(yn,{kind:`cron`,expression:e.schedule,locale:p,labels:m,timezone:e.timezone,nextRun:e.next_run,className:`text-sm font-medium text-fg`}),(0,X.jsx)(`span`,{className:`truncate font-mono text-[0.65rem] text-fg-subtle`,title:e.schedule,children:e.schedule})]})}),(0,X.jsx)(`td`,{className:`max-w-[12rem] truncate py-2 pr-3 text-xs`,title:en(e),children:en(e)}),(0,X.jsx)(`td`,{className:`py-2 pr-3 text-xs`,children:e.sessionTarget??`main`}),(0,X.jsx)(`td`,{className:`py-2 pr-3`,children:(0,X.jsxs)(`select`,{className:J(pn(),`min-w-[8rem] py-1 text-xs`),value:i,disabled:o||e.sessionTarget!==`isolated`,onChange:t=>void l(e,t.target.value),children:[(0,X.jsx)(`option`,{value:``,children:t?n.cronAgentDefault:n.cronAgentClear}),r.agents.map(xn)]})})]},e.id)})})]})}),t[5]=n.cronAgentClear,t[6]=n.cronAgentDefault,t[7]=n.cronColAgent,t[8]=n.cronColMessage,t[9]=n.cronColSchedule,t[10]=n.cronColSession,t[11]=n.cronLoading,t[12]=n.cronNone,t[13]=c,t[14]=o,t[15]=s,t[16]=r,t[17]=p,t[18]=l,t[19]=m,t[20]=g):g=t[20];let _;return t[21]!==h||t[22]!==g?(_=(0,X.jsxs)(Jt,{className:`flex min-h-0 flex-1 flex-col overflow-y-auto`,children:[h,g]}),t[21]=h,t[22]=g,t[23]=_):_=t[23],_}function xn(e){return(0,X.jsx)(`option`,{value:e.id,children:e.id},e.id)}function Sn(e){return e.language}function Cn(e){let t=(0,Y.c)(29),{a:n,filesLoading:r,files:i,activeFile:a,setActiveFile:o,filesViewMode:s,setFilesViewMode:c,fileDraft:u,setFileDraft:d,fileSaving:f,profileFileLoading:p,profileEditorNonce:m,onTryInChat:h}=e,g=l(wn),_;t[0]===n.filesHint?_=t[1]:(_=(0,X.jsx)(`p`,{className:`shrink-0 text-sm text-fg-muted`,children:n.filesHint}),t[0]=n.filesHint,t[1]=_);let v;t[2]!==n.filesAutoSaveHint||t[3]!==n.filesEmpty||t[4]!==n.filesLoading||t[5]!==n.filesMarkdownEdit||t[6]!==n.filesMarkdownPreview||t[7]!==n.filesSavingStatus||t[8]!==n.missing||t[9]!==n.navCoreFiles||t[10]!==n.pickFile||t[11]!==n.tryInChat||t[12]!==a||t[13]!==u||t[14]!==f||t[15]!==i||t[16]!==r||t[17]!==s||t[18]!==g||t[19]!==h||t[20]!==m||t[21]!==p||t[22]!==o||t[23]!==d||t[24]!==c?(v=r?(0,X.jsx)(`p`,{className:`shrink-0 text-sm text-fg-muted`,children:n.filesLoading}):i?(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-3 overflow-hidden`,children:[(0,X.jsx)(`nav`,{className:`-mx-1 flex shrink-0 flex-wrap gap-1 px-1 pb-1`,role:`tablist`,"aria-label":n.navCoreFiles,children:i.files.map(e=>{let t=a===e.name;return(0,X.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":t,className:J(`inline-flex shrink-0 items-center rounded-lg px-3 py-2 font-mono text-xs font-medium whitespace-nowrap transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,jt.press,t?`bg-accent-soft text-accent-fg`:`text-fg-muted hover:bg-surface-hover hover:text-fg`,e.missing&&`opacity-60`),onClick:()=>o(e.name),children:[e.name,e.missing?` (${n.missing})`:``]},e.name)})}),(0,X.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-2 overflow-hidden`,children:a?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-between gap-2`,children:[(0,X.jsxs)(`div`,{className:`inline-flex rounded-lg border border-edge bg-surface-panel p-0.5`,role:`group`,"aria-label":`${n.filesMarkdownEdit} / ${n.filesMarkdownPreview}`,children:[(0,X.jsxs)(`button`,{type:`button`,className:J(`inline-flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-xs font-medium`,jt.press,s===`edit`?`bg-accent-soft text-accent-fg`:`text-fg-muted hover:bg-surface-hover`),onClick:()=>c(`edit`),children:[(0,X.jsx)(ee,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),n.filesMarkdownEdit]}),(0,X.jsxs)(`button`,{type:`button`,className:J(`inline-flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-xs font-medium`,jt.press,s===`preview`?`bg-accent-soft text-accent-fg`:`text-fg-muted hover:bg-surface-hover`),onClick:()=>c(`preview`),children:[(0,X.jsx)(Qe,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),n.filesMarkdownPreview]})]}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-xs text-fg-muted`,children:[f?(0,X.jsx)(`span`,{children:n.filesSavingStatus}):null,(0,X.jsx)(`span`,{children:n.filesAutoSaveHint}),h?(0,X.jsxs)(q,{type:`button`,variant:`secondary`,className:`ml-auto text-xs`,onClick:h,children:[(0,X.jsx)(De,{className:`mr-1 size-3.5`,"aria-hidden":!0}),n.tryInChat]}):null]})]}),s===`edit`?(0,X.jsx)(`div`,{className:J(pn(),`flex min-h-0 flex-1 flex-col overflow-hidden p-0`,p&&`pointer-events-none opacity-60`),children:(0,X.jsx)(ie,{initialContent:u,onChange:d,isDark:g,className:`min-h-0 flex-1`},`${a??`file`}-${m}`)}):(0,X.jsx)(`div`,{className:J(pn(),`min-h-0 flex-1 overflow-y-auto text-sm`,p&&`pointer-events-none opacity-60`),children:(0,X.jsx)(V,{content:u,className:`text-sm`})})]}):(0,X.jsx)(`p`,{className:`shrink-0 text-sm text-fg-muted`,children:n.pickFile})})]}):(0,X.jsx)(`p`,{className:`shrink-0 text-sm text-fg-muted`,children:n.filesEmpty}),t[2]=n.filesAutoSaveHint,t[3]=n.filesEmpty,t[4]=n.filesLoading,t[5]=n.filesMarkdownEdit,t[6]=n.filesMarkdownPreview,t[7]=n.filesSavingStatus,t[8]=n.missing,t[9]=n.navCoreFiles,t[10]=n.pickFile,t[11]=n.tryInChat,t[12]=a,t[13]=u,t[14]=f,t[15]=i,t[16]=r,t[17]=s,t[18]=g,t[19]=h,t[20]=m,t[21]=p,t[22]=o,t[23]=d,t[24]=c,t[25]=v):v=t[25];let y;return t[26]!==_||t[27]!==v?(y=(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-hidden`,children:[_,v]}),t[26]=_,t[27]=v,t[28]=y):y=t[28],y}function wn(e){return e.resolved===`dark`}function Z(){return J(`w-full rounded-lg border border-edge bg-surface-panel px-3 py-2 text-sm text-fg`,`placeholder:text-fg-subtle`,Ze,`dark:border-edge`)}function Tn(){return J(kt,Je)}var En=`h-auto shrink-0 px-2.5 py-1.5 text-xs font-medium`;function Dn(e){let t=(0,Y.c)(25),{rows:n,onChange:r,disabled:i,chat:a,labels:o}=e,s;t[0]!==r||t[1]!==n?(s=(e,t)=>{r(n.map((n,r)=>r===e?{...n,...t}:n))},t[0]=r,t[1]=n,t[2]=s):s=t[2];let c=s,l;t[3]!==a||t[4]!==i||t[5]!==o.description||t[6]!==o.descriptionPlaceholder||t[7]!==o.id||t[8]!==o.idPlaceholder||t[9]!==o.remove||t[10]!==r||t[11]!==n||t[12]!==c?(l=n.map((e,t)=>(0,X.jsxs)(`div`,{className:`grid gap-2 rounded-xl border border-edge-subtle bg-surface-panel/40 p-3 sm:grid-cols-[minmax(0,8rem)_minmax(0,1.2fr)_minmax(0,1fr)_auto] sm:items-start dark:border-edge-subtle`,children:[(0,X.jsx)(`input`,{type:`text`,className:Z(),value:e.id,disabled:i,placeholder:o.idPlaceholder,"aria-label":o.id,onChange:e=>c(t,{id:e.target.value.toLowerCase()})}),(0,X.jsx)(ne,{value:e.model,disabled:i,placeholder:a.modelPlaceholder,searchPlaceholder:a.modelSearchPlaceholder,noMatches:a.modelNoMatches,onChange:e=>c(t,{model:e})}),(0,X.jsx)(`input`,{type:`text`,className:Z(),value:e.description,disabled:i,placeholder:o.descriptionPlaceholder,"aria-label":o.description,onChange:e=>c(t,{description:e.target.value})}),(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:`shrink-0 sm:mt-0`,disabled:i,"aria-label":o.remove,onClick:()=>r(n.filter((e,n)=>n!==t)),children:(0,X.jsx)(w,{className:`size-4`,strokeWidth:1.75})})]},e.id||`typed-model-${e.model}-${e.description}`)),t[3]=a,t[4]=i,t[5]=o.description,t[6]=o.descriptionPlaceholder,t[7]=o.id,t[8]=o.idPlaceholder,t[9]=o.remove,t[10]=r,t[11]=n,t[12]=c,t[13]=l):l=t[13];let u;t[14]!==r||t[15]!==n?(u=()=>r([...n,{id:``,description:``,model:``}]),t[14]=r,t[15]=n,t[16]=u):u=t[16];let d;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,X.jsx)(Xe,{className:`size-4 shrink-0`,strokeWidth:1.75}),t[17]=d):d=t[17];let f;t[18]!==i||t[19]!==o.add||t[20]!==u?(f=(0,X.jsxs)(q,{type:`button`,variant:`secondary`,className:`w-fit gap-1.5`,disabled:i,onClick:u,children:[d,o.add]}),t[18]=i,t[19]=o.add,t[20]=u,t[21]=f):f=t[21];let p;return t[22]!==l||t[23]!==f?(p=(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[l,f]}),t[22]=l,t[23]=f,t[24]=p):p=t[24],p}var On=/^[a-z][a-z0-9_-]{0,63}$/;function kn(e){let t=e.trim(),n=t.indexOf(`/`);return n>0&&n<t.length-1}function An(e){let t=e&&typeof e==`object`&&!Array.isArray(e)&&`roles`in e?Object.entries(e.roles??{}).map(([e,t])=>({id:e,...t&&typeof t==`object`&&!Array.isArray(t)?t:{}})):e;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`||Array.isArray(e))continue;let t=e,r=typeof t.id==`string`?t.id.trim():``,i=typeof t.model==`string`?t.model.trim():``;if(!r||!i)continue;let a=typeof t.description==`string`?t.description.trim():``;n.push({id:r,model:i,description:a})}return n}function jn(e){let t=new Map;for(let n of e){let e=n.id.trim(),r=n.model.trim();if(!e||!On.test(e)||!r||!kn(r))continue;let i=n.description.trim();t.set(e,i?{description:i,model:r}:{model:r})}return t.size===0?null:{roles:Object.fromEntries(t.entries())}}function Mn(e,t){let n=new Set;for(let r of e){let e=r.id.trim(),i=r.model.trim();if(!(!e&&!i&&!r.description.trim())){if(!e||!On.test(e))return t.invalidId;if(n.has(e))return t.duplicateId;if(n.add(e),!i||!kn(i))return t.invalidModel}}return null}function Nn(e){return e.length===0?`—`:e.map(e=>`${e.id} → ${e.model}`).join(`, `)}function Pn(e){return(e??[]).map(e=>({id:e.id,model:e.model,description:e.description?.trim()??``}))}function Fn(e){let t=(0,Y.c)(52),{a:n,chat:r,selected:i,busy:a,modelRows:o,setModelRows:s,onSaveModels:c,onClearModelsEntry:l,hideInlineSave:u}=e,d;t[0]!==n.modelsTabHint||t[1]!==n.modelsTabTitle?(d=(0,X.jsx)(qt,{className:`shrink-0`,icon:Me,title:n.modelsTabTitle,subtitle:n.modelsTabHint}),t[0]=n.modelsTabHint,t[1]=n.modelsTabTitle,t[2]=d):d=t[2];let f;t[3]===n.modelsDefaultsLabel?f=t[4]:(f=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.modelsDefaultsLabel}),t[3]=n.modelsDefaultsLabel,t[4]=f);let p;t[5]===i.typedModels.defaults?p=t[6]:(p=Nn(i.typedModels.defaults),t[5]=i.typedModels.defaults,t[6]=p);let m;t[7]!==f||t[8]!==p?(m=(0,X.jsxs)(`div`,{children:[f,` `,p]}),t[7]=f,t[8]=p,t[9]=m):m=t[9];let h;t[10]===n.modelsEffectiveLabel?h=t[11]:(h=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.modelsEffectiveLabel}),t[10]=n.modelsEffectiveLabel,t[11]=h);let g;t[12]===i.typedModels.effective?g=t[13]:(g=Nn(i.typedModels.effective),t[12]=i.typedModels.effective,t[13]=g);let _;t[14]!==h||t[15]!==g?(_=(0,X.jsxs)(`div`,{children:[h,` `,g]}),t[14]=h,t[15]=g,t[16]=_):_=t[16];let v;t[17]!==m||t[18]!==_?(v=(0,X.jsxs)(`div`,{className:`mb-4 grid gap-2 rounded-lg border border-edge-subtle bg-surface-base/60 p-3 text-xs text-fg-muted dark:border-edge`,children:[m,_]}),t[17]=m,t[18]=_,t[19]=v):v=t[19];let y;t[20]!==n.addTypedModel||t[21]!==n.removeTypedModel||t[22]!==n.typedModelDescriptionLabel||t[23]!==n.typedModelDescriptionPlaceholder||t[24]!==n.typedModelIdLabel||t[25]!==n.typedModelIdPlaceholder?(y={id:n.typedModelIdLabel,description:n.typedModelDescriptionLabel,add:n.addTypedModel,remove:n.removeTypedModel,idPlaceholder:n.typedModelIdPlaceholder,descriptionPlaceholder:n.typedModelDescriptionPlaceholder},t[20]=n.addTypedModel,t[21]=n.removeTypedModel,t[22]=n.typedModelDescriptionLabel,t[23]=n.typedModelDescriptionPlaceholder,t[24]=n.typedModelIdLabel,t[25]=n.typedModelIdPlaceholder,t[26]=y):y=t[26];let b;t[27]!==a||t[28]!==r||t[29]!==o||t[30]!==s||t[31]!==y?(b=(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain`,children:(0,X.jsx)(Dn,{rows:o,onChange:s,disabled:a,chat:r,labels:y})}),t[27]=a,t[28]=r,t[29]=o,t[30]=s,t[31]=y,t[32]=b):b=t[32];let x;t[33]!==n.modelsSave||t[34]!==a||t[35]!==u||t[36]!==c?(x=u?null:(0,X.jsx)(q,{type:`button`,disabled:a,onClick:()=>void c(),children:n.modelsSave}),t[33]=n.modelsSave,t[34]=a,t[35]=u,t[36]=c,t[37]=x):x=t[37];let S;t[38]===l?S=t[39]:(S=()=>void l(),t[38]=l,t[39]=S);let C;t[40]!==n.modelsResetInherit||t[41]!==a||t[42]!==S?(C=(0,X.jsx)(q,{type:`button`,variant:`secondary`,disabled:a,onClick:S,children:n.modelsResetInherit}),t[40]=n.modelsResetInherit,t[41]=a,t[42]=S,t[43]=C):C=t[43];let w;t[44]!==x||t[45]!==C?(w=(0,X.jsxs)(`div`,{className:`mt-4 flex shrink-0 flex-wrap gap-2`,children:[x,C]}),t[44]=x,t[45]=C,t[46]=w):w=t[46];let T;return t[47]!==d||t[48]!==w||t[49]!==v||t[50]!==b?(T=(0,X.jsxs)(Jt,{className:`flex min-h-0 flex-1 flex-col`,children:[d,v,b,w]}),t[47]=d,t[48]=w,t[49]=v,t[50]=b,t[51]=T):T=t[51],T}var Q=e(t(),1);function In(e){let t=(0,Y.c)(37),{value:n,onChange:r,disabled:i,wd:a,placeholder:o,inputClassName:s,trailing:c}=e,l;t[0]!==r||t[1]!==n?(l={initialPath:n,onPicked:r},t[0]=r,t[1]=n,t[2]=l):l=t[2];let u=A(l),d;t[3]===n?d=t[4]:(d=n.trim(),t[3]=n,t[4]=d);let f=d,p=f?`${f}\n${a.chooseFolder}`:`${o??a.notSet}\n${a.selectWorkingDirectory}`,m;t[5]===s?m=t[6]:(m=J(`min-w-0 flex-1`,s),t[5]=s,t[6]=m);let h=i||u.picking,g;t[7]===r?g=t[8]:(g=e=>void r(e.target.value),t[7]=r,t[8]=g);let _=o??a.pathInputPlaceholder,v;t[9]!==m||t[10]!==h||t[11]!==g||t[12]!==_||t[13]!==n?(v=(0,X.jsx)(`input`,{type:`text`,className:m,value:n,disabled:h,onChange:g,placeholder:_,autoComplete:`off`,spellCheck:!1}),t[9]=m,t[10]=h,t[11]=g,t[12]=_,t[13]=n,t[14]=v):v=t[14];let y=i||u.picking,b;t[15]!==p||t[16]!==u.pick||t[17]!==y||t[18]!==n||t[19]!==a.selectWorkingDirectory?(b=(0,X.jsx)(B,{compact:!0,value:n,onPick:u.pick,disabled:y,title:p,"aria-label":a.selectWorkingDirectory}),t[15]=p,t[16]=u.pick,t[17]=y,t[18]=n,t[19]=a.selectWorkingDirectory,t[20]=b):b=t[20];let x;t[21]!==b||t[22]!==c?(x=(0,X.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2`,children:[b,c]}),t[21]=b,t[22]=c,t[23]=x):x=t[23];let S;t[24]!==x||t[25]!==v?(S=(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center`,children:[v,x]}),t[24]=x,t[25]=v,t[26]=S):S=t[26];let C;t[27]!==u.confirmPick||t[28]!==u.hasNativePicker||t[29]!==u.modalOpen||t[30]!==u.setModalOpen||t[31]!==f||t[32]!==a?(C=u.hasNativePicker?null:(0,X.jsx)(lt,{open:u.modalOpen,onOpenChange:u.setModalOpen,initialAbsolutePath:f||void 0,onConfirm:u.confirmPick,wd:a}),t[27]=u.confirmPick,t[28]=u.hasNativePicker,t[29]=u.modalOpen,t[30]=u.setModalOpen,t[31]=f,t[32]=a,t[33]=C):C=t[33];let w;return t[34]!==S||t[35]!==C?(w=(0,X.jsxs)(X.Fragment,{children:[S,C]}),t[34]=S,t[35]=C,t[36]=w):w=t[36],w}function Ln(e){let t=(0,Y.c)(19),{label:n,mode:r,value:i,inheritedFrom:a,inheritLabel:o,overrideLabel:s}=e,c;t[0]===n?c=t[1]:(c=(0,X.jsx)(`p`,{className:`text-xs font-medium uppercase tracking-wide text-fg-subtle`,children:n}),t[0]=n,t[1]=c);let l=i||`—`,u;t[2]===l?u=t[3]:(u=(0,X.jsx)(`p`,{className:`mt-1 truncate text-sm font-medium text-fg`,children:l}),t[2]=l,t[3]=u);let d;t[4]!==a||t[5]!==r?(d=r===`inherit`&&a?(0,X.jsx)(`p`,{className:`mt-0.5 truncate text-xs text-fg-muted`,children:a}):null,t[4]=a,t[5]=r,t[6]=d):d=t[6];let f;t[7]!==c||t[8]!==u||t[9]!==d?(f=(0,X.jsxs)(`div`,{className:`min-w-0`,children:[c,u,d]}),t[7]=c,t[8]=u,t[9]=d,t[10]=f):f=t[10];let p=r===`inherit`?`bg-surface-hover text-fg-muted`:`bg-accent-soft text-accent-fg`,m;t[11]===p?m=t[12]:(m=J(`mt-2 inline-flex shrink-0 self-start rounded-full px-2.5 py-0.5 text-xs font-medium sm:mt-0`,p),t[11]=p,t[12]=m);let h=r===`inherit`?o:s,g;t[13]!==m||t[14]!==h?(g=(0,X.jsx)(`span`,{className:m,children:h}),t[13]=m,t[14]=h,t[15]=g):g=t[15];let _;return t[16]!==f||t[17]!==g?(_=(0,X.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-xl border border-edge-subtle bg-surface-panel px-4 py-3 sm:flex-row sm:items-center sm:justify-between`,children:[f,g]}),t[16]=f,t[17]=g,t[18]=_):_=t[18],_}function Rn(e){let t=(0,Y.c)(41),{a:n,defaultModel:r,defaultWorkspace:i,agentModel:a,agentWorkspace:o,settingsPath:s,settingsState:c}=e,l=s===void 0?`/settings/agent-defaults`:s,u=n.inheritance,d;t[0]===a?d=t[1]:(d=a.trim(),t[0]=a,t[1]=d);let f=!d,p;t[2]!==o||t[3]!==i?(p=!o.trim()||i.trim().length>0&&o.trim()===i.trim(),t[2]=o,t[3]=i,t[4]=p):p=t[4];let m=p,h=f?r||u.unset:a,g=m?i||u.unset:o,_;t[5]!==u.editDefaultsLink||t[6]!==l||t[7]!==c?(_=(0,X.jsx)(Ue,{to:l,state:c,className:`text-xs font-medium text-accent hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40`,children:u.editDefaultsLink}),t[5]=u.editDefaultsLink,t[6]=l,t[7]=c,t[8]=_):_=t[8];let v;t[9]!==u.subtitle||t[10]!==u.title||t[11]!==_?(v=(0,X.jsx)(qt,{icon:j,title:u.title,subtitle:u.subtitle,trailing:_}),t[9]=u.subtitle,t[10]=u.title,t[11]=_,t[12]=v):v=t[12];let y=f?`inherit`:`override`,b;t[13]!==r||t[14]!==u.inheritsValue||t[15]!==f?(b=f&&r?u.inheritsValue.replace(`{{value}}`,r):void 0,t[13]=r,t[14]=u.inheritsValue,t[15]=f,t[16]=b):b=t[16];let x;t[17]!==h||t[18]!==u.badgeInherit||t[19]!==u.badgeOverride||t[20]!==u.modelLabel||t[21]!==y||t[22]!==b?(x=(0,X.jsx)(Ln,{label:u.modelLabel,mode:y,value:h,inheritedFrom:b,inheritLabel:u.badgeInherit,overrideLabel:u.badgeOverride}),t[17]=h,t[18]=u.badgeInherit,t[19]=u.badgeOverride,t[20]=u.modelLabel,t[21]=y,t[22]=b,t[23]=x):x=t[23];let S=m?`inherit`:`override`,C;t[24]!==i||t[25]!==u.inheritsValue||t[26]!==m?(C=m&&i?u.inheritsValue.replace(`{{value}}`,i):void 0,t[24]=i,t[25]=u.inheritsValue,t[26]=m,t[27]=C):C=t[27];let w;t[28]!==g||t[29]!==u.badgeInherit||t[30]!==u.badgeOverride||t[31]!==u.workspaceLabel||t[32]!==S||t[33]!==C?(w=(0,X.jsx)(Ln,{label:u.workspaceLabel,mode:S,value:g,inheritedFrom:C,inheritLabel:u.badgeInherit,overrideLabel:u.badgeOverride}),t[28]=g,t[29]=u.badgeInherit,t[30]=u.badgeOverride,t[31]=u.workspaceLabel,t[32]=S,t[33]=C,t[34]=w):w=t[34];let T;t[35]!==w||t[36]!==x?(T=(0,X.jsxs)(`div`,{className:`mt-4 grid gap-3 sm:grid-cols-2`,children:[x,w]}),t[35]=w,t[36]=x,t[37]=T):T=t[37];let E;return t[38]!==T||t[39]!==v?(E=(0,X.jsxs)(Jt,{children:[v,T]}),t[38]=T,t[39]=v,t[40]=E):E=t[40],E}function zn(e,t){switch(e){case`adventurer`:return t.avatarStyleAdventurer;case`bottts`:return t.avatarStyleRobot;case`lorelei`:return t.avatarStyleLorelei;case`thumbs`:return t.avatarStyleThumbs;case`fun-emoji`:return t.avatarStyleFunEmoji;default:return e}}function Bn(e){let{agentId:t,value:n,onChange:r,a:i,id:a}=e,o=(0,Q.useRef)(null),[s,c]=(0,Q.useState)(!1),[l,u]=(0,Q.useState)(null),[d,f]=(0,Q.useState)(!1),p=(0,Q.useMemo)(()=>{let e=Ge(n.trim());return e&&ze(e.styleId)?e.styleId:G[0]??`adventurer`},[n]),m=(0,Q.useCallback)(async(e,n)=>{try{await le(t)}catch{}r(te(e,n)),f(!1)},[t,r]),h=(0,Q.useCallback)(async e=>{let n=e.target.files?.[0];if(e.target.value=``,n){u(null),c(!0);try{await z(t,n),ge(t),r(Dt)}catch(e){let t=e instanceof Error?e.message:``;u(t===`avatar_too_large`?i.avatarTooLarge:t===`unsupported_image_type`||t===`empty_file`?i.avatarInvalidImage:i.avatarUploadFailed)}finally{c(!1)}}},[i,t,r]),g=(e,t)=>{let r=Ge(n.trim());return!!(r&&r.styleId===e&&r.seed===t)};return(0,X.jsxs)(`div`,{...a?{id:a}:{},className:`flex flex-col gap-3 sm:col-span-2`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,X.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:i.avatarPickerTitle}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`input`,{ref:o,type:`file`,accept:`image/png,image/jpeg,image/webp,.png,.jpg,.jpeg,.webp`,className:`hidden`,onChange:e=>void h(e)}),(0,X.jsxs)(q,{type:`button`,variant:`secondary`,className:`gap-1.5 px-2.5 py-1.5 text-xs`,disabled:s,onClick:()=>o.current?.click(),children:[(0,X.jsx)(Ht,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),s?i.avatarUploading:i.avatarUploadCustom]})]})]}),l?(0,X.jsx)(`p`,{className:`text-xs text-red-600 dark:text-red-400`,children:l}):null,(0,X.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:G.map(e=>(0,X.jsx)(`button`,{type:`button`,onClick:()=>void m(e,F[0]??t),className:J(`rounded-full border px-3 py-1.5 text-xs font-medium transition-colors`,jt.press,p===e?`border-fg bg-fg text-surface-base`:`border-edge-subtle bg-surface-panel text-fg hover:border-edge`),children:zn(e,i)},e))}),(0,X.jsxs)(`div`,{className:`rounded-xl border border-edge-subtle bg-surface-panel/50 p-3`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[F.map(e=>(0,X.jsx)(`button`,{type:`button`,title:e,onClick:()=>void m(p,e),className:J(`flex size-12 shrink-0 items-center justify-center rounded-full border-2 transition-colors`,jt.press,g(p,e)?`border-accent ring-2 ring-accent/30`:`border-transparent hover:border-edge`),children:(0,X.jsx)(`img`,{src:He(p,e,96),alt:``,width:44,height:44,className:`size-11 rounded-full object-cover`,draggable:!1})},e)),(0,X.jsxs)(dt,{open:d,onOpenChange:f,children:[(0,X.jsx)(ce,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:J(`flex size-12 shrink-0 items-center justify-center rounded-xl border border-edge-subtle bg-surface-base text-xs font-medium text-fg-muted hover:border-edge hover:text-fg`,jt.press),children:i.avatarMore})}),(0,X.jsx)(y,{children:(0,X.jsxs)(mt,{className:`z-[80] max-h-72 w-[min(22rem,calc(100vw-2rem))] overflow-y-auto rounded-xl border border-edge-subtle bg-surface-panel p-3 shadow-lg`,sideOffset:6,align:`end`,children:[(0,X.jsx)(`p`,{className:`mb-2 text-xs font-medium text-fg-muted`,children:zn(p,i)}),(0,X.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:Ie.map(e=>(0,X.jsx)(`button`,{type:`button`,title:e,onClick:()=>void m(p,e),className:J(`flex size-11 shrink-0 items-center justify-center rounded-full border-2 transition-colors`,jt.press,g(p,e)?`border-accent ring-2 ring-accent/30`:`border-transparent hover:border-edge`),children:(0,X.jsx)(`img`,{src:He(p,e,88),alt:``,width:40,height:40,className:`size-10 rounded-full object-cover`,draggable:!1})},e))})]})})]})]}),(0,X.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 border-t border-edge-subtle pt-3`,children:[(0,X.jsx)(`span`,{className:`text-xs text-fg-muted`,children:i.personaAvatar}),(0,X.jsx)(Ae,{agentId:t,avatar:n,size:40}),n.trim()&&!Ge(n.trim())&&n.trim()!==`xopc:custom`?(0,X.jsx)(`span`,{className:`truncate font-mono text-[10px] text-fg-muted`,title:n,children:n}):null]})]})]})}var Vn={name:``,description:``,language:``,creature:``,emoji:``,avatar:``};function Hn(e){let t={...Vn};if(!e.trim())return t;let n={name:`name`,description:`description`,language:`language`,creature:`creature`,emoji:`emoji`,avatar:`avatar`};for(let r of e.split(`
|
|
2
|
+
`)){let e=r.match(/^[-*]\s+\*\*(\w+):\*\*\s*(.*)/i);if(!e)continue;let i=n[e[1].toLowerCase()];if(!i)continue;let a=e[2].trim();/^_\(.*\)_$/.test(a)&&(a=``),t[i]=a}return t}function Un(e){return[`# IDENTITY.md - Who Am I?`,``,`- **Name:** ${e.name}`,`- **Description:** ${e.description}`,`- **Language:** ${e.language}`,`- **Creature:** ${e.creature}`,`- **Emoji:** ${e.emoji}`,`- **Avatar:** ${e.avatar}`,``].join(`
|
|
3
|
+
`)}var Wn={callName:``,pronouns:``,timezone:``,notes:``};function Gn(e){let t={...Wn};if(!e.trim())return t;let n={name:`callName`,"what to call them":`callName`,pronouns:`pronouns`,timezone:`timezone`,notes:`notes`},r=e.split(`
|
|
4
|
+
`),i=-1;for(let e=0;e<r.length;e++){let a=r[e];if(/^##\s+Context/i.test(a)){i=e+1;continue}let o=a.match(/^[-*]\s+\*\*(.+?):\*\*\s*(.*)/i);if(!o)continue;let s=n[o[1].toLowerCase().trim()];if(!s)continue;let c=o[2].trim();/^_\(.*\)_$/.test(c)&&(c=``),t[s]=c}if(i>0){let e=r.slice(i).join(`
|
|
5
|
+
`).replace(/^_\(.*?\)_\s*/gm,``).replace(/^---\s*$/gm,``).replace(/The more you know.*$/s,``).trim();e&&!t.notes&&(t.notes=e)}return t}function Kn(e){let t=[`# USER.md - About Your Human`,``,`- **Name:** ${e.callName}`,`- **Pronouns:** ${e.pronouns}`,`- **Timezone:** ${e.timezone}`,``];return e.notes.trim()&&t.push(`## Context`,``,e.notes.trim(),``),t.join(`
|
|
6
|
+
`)}var qn=[{id:`professional`,labelEn:`Professional & Efficient`,labelZh:`专业高效`,emoji:`🎯`,content:`# SOUL.md - Who You Are
|
|
7
|
+
|
|
8
|
+
## Core Truths
|
|
9
|
+
|
|
10
|
+
**Be genuinely helpful, not performatively helpful.** Skip the filler words — just help. Actions speak louder than pleasantries.
|
|
11
|
+
|
|
12
|
+
**Be precise and efficient.** Value the user's time. Give concise, actionable answers. Expand only when asked.
|
|
13
|
+
|
|
14
|
+
**Earn trust through competence.** Be careful with external actions. Be bold with internal ones (reading, organizing, learning).
|
|
15
|
+
|
|
16
|
+
**Remember you're a guest.** You have access to someone's life. Treat it with respect.
|
|
17
|
+
|
|
18
|
+
## Boundaries
|
|
19
|
+
|
|
20
|
+
- Private things stay private. Period.
|
|
21
|
+
- When in doubt, ask before acting externally.
|
|
22
|
+
- Never send half-baked replies to messaging surfaces.
|
|
23
|
+
|
|
24
|
+
## Vibe
|
|
25
|
+
|
|
26
|
+
Professional, competent, and respectful. Concise when needed, thorough when it matters.`},{id:`casual`,labelEn:`Warm & Friendly`,labelZh:`轻松友好`,emoji:`😊`,content:`# SOUL.md - Who You Are
|
|
27
|
+
|
|
28
|
+
## Core Truths
|
|
29
|
+
|
|
30
|
+
**Be a good friend, not a corporate drone.** Be warm, genuine, and real. Skip the formality when it gets in the way.
|
|
31
|
+
|
|
32
|
+
**Have personality.** You're allowed to be amused, surprised, or excited. An assistant with no personality is just a search engine.
|
|
33
|
+
|
|
34
|
+
**Be resourceful before asking.** Try to figure it out first. Then ask if you're stuck.
|
|
35
|
+
|
|
36
|
+
**Earn trust by being reliable.** Show up, follow through, and remember what matters.
|
|
37
|
+
|
|
38
|
+
**Respect the intimacy.** You have access to someone's life. That's a privilege.
|
|
39
|
+
|
|
40
|
+
## Boundaries
|
|
41
|
+
|
|
42
|
+
- Private things stay private. Always.
|
|
43
|
+
- When in doubt, ask before acting externally.
|
|
44
|
+
- Be careful in group chats — you're not the user's voice.
|
|
45
|
+
|
|
46
|
+
## Vibe
|
|
47
|
+
|
|
48
|
+
Warm, friendly, and a little playful. Like a helpful friend who happens to know everything.`},{id:`geeky`,labelEn:`Geeky & Witty`,labelZh:`极客风格`,emoji:`🧑💻`,content:`# SOUL.md - Who You Are
|
|
49
|
+
|
|
50
|
+
## Core Truths
|
|
51
|
+
|
|
52
|
+
**Precision over politeness.** "This is broken" beats "This might be worth considering." Be direct.
|
|
53
|
+
|
|
54
|
+
**Have opinions.** Disagree, prefer things, find stuff interesting or dull. No personality = no value.
|
|
55
|
+
|
|
56
|
+
**Go deep.** When something is interesting, explore it. Surface-level answers are for search engines.
|
|
57
|
+
|
|
58
|
+
**Be resourceful.** Read the file. Check the context. Search for it. Come back with answers, not questions.
|
|
59
|
+
|
|
60
|
+
**Earn trust through competence.** Be careful with external actions. Be bold with internal ones.
|
|
61
|
+
|
|
62
|
+
## Boundaries
|
|
63
|
+
|
|
64
|
+
- Private things stay private.
|
|
65
|
+
- When in doubt, ask before acting externally.
|
|
66
|
+
- Never send half-baked replies.
|
|
67
|
+
|
|
68
|
+
## Vibe
|
|
69
|
+
|
|
70
|
+
Sharp, direct, slightly nerdy. The kind of engineer you'd want on your team — competent, opinionated, and occasionally funny.`},{id:`custom`,labelEn:`Custom`,labelZh:`自定义`,emoji:`✍️`,content:``}];function Jn(e){let t=e.trimStart();if(!t.startsWith(`---`))return e;let n=t.indexOf(`---`,3);return n===-1?e:t.slice(n+3).trimStart()}function Yn(e){let t=Jn(e).trim();if(!t)return`professional`;for(let e of qn)if(e.id!==`custom`&&(t===e.content.trim()||Zn(t,e.id)>=2))return e.id;return`custom`}var Xn={professional:/precise and efficient|Value the user's time|actionable answers/g,casual:/good friend|corporate drone|a little playful/g,geeky:/Precision over politeness|Go deep|slightly nerdy/g};function Zn(e,t){let n=Xn[t];if(!n)return 0;let r=new RegExp(n.source,`g`),i=new Set,a;for(;(a=r.exec(e))!==null;)if(i.add(a[0]),i.size>=2)return i.size;return i.size}var Qn=[{value:``,labelEn:`Not set`,labelZh:`未设置`},{value:`Asia/Shanghai`,labelEn:`Asia/Shanghai (CST, UTC+8)`,labelZh:`亚洲/上海 (北京时间, UTC+8)`},{value:`Asia/Tokyo`,labelEn:`Asia/Tokyo (JST, UTC+9)`,labelZh:`亚洲/东京 (日本时间, UTC+9)`},{value:`Asia/Seoul`,labelEn:`Asia/Seoul (KST, UTC+9)`,labelZh:`亚洲/首尔 (韩国时间, UTC+9)`},{value:`Asia/Singapore`,labelEn:`Asia/Singapore (SGT, UTC+8)`,labelZh:`亚洲/新加坡 (UTC+8)`},{value:`Asia/Hong_Kong`,labelEn:`Asia/Hong Kong (HKT, UTC+8)`,labelZh:`亚洲/香港 (UTC+8)`},{value:`Asia/Taipei`,labelEn:`Asia/Taipei (CST, UTC+8)`,labelZh:`亚洲/台北 (UTC+8)`},{value:`Asia/Kolkata`,labelEn:`Asia/Kolkata (IST, UTC+5:30)`,labelZh:`亚洲/加尔各答 (印度时间, UTC+5:30)`},{value:`Asia/Dubai`,labelEn:`Asia/Dubai (GST, UTC+4)`,labelZh:`亚洲/迪拜 (UTC+4)`},{value:`Europe/London`,labelEn:`Europe/London (GMT/BST)`,labelZh:`欧洲/伦敦 (格林尼治时间)`},{value:`Europe/Paris`,labelEn:`Europe/Paris (CET, UTC+1)`,labelZh:`欧洲/巴黎 (中欧时间, UTC+1)`},{value:`Europe/Berlin`,labelEn:`Europe/Berlin (CET, UTC+1)`,labelZh:`欧洲/柏林 (中欧时间, UTC+1)`},{value:`Europe/Moscow`,labelEn:`Europe/Moscow (MSK, UTC+3)`,labelZh:`欧洲/莫斯科 (UTC+3)`},{value:`America/New_York`,labelEn:`America/New York (EST, UTC-5)`,labelZh:`美国/纽约 (东部时间, UTC-5)`},{value:`America/Chicago`,labelEn:`America/Chicago (CST, UTC-6)`,labelZh:`美国/芝加哥 (中部时间, UTC-6)`},{value:`America/Denver`,labelEn:`America/Denver (MST, UTC-7)`,labelZh:`美国/丹佛 (山地时间, UTC-7)`},{value:`America/Los_Angeles`,labelEn:`America/Los Angeles (PST, UTC-8)`,labelZh:`美国/洛杉矶 (太平洋时间, UTC-8)`},{value:`America/Sao_Paulo`,labelEn:`America/São Paulo (BRT, UTC-3)`,labelZh:`美洲/圣保罗 (巴西时间, UTC-3)`},{value:`Australia/Sydney`,labelEn:`Australia/Sydney (AEST, UTC+10)`,labelZh:`澳大利亚/悉尼 (UTC+10)`},{value:`Pacific/Auckland`,labelEn:`Pacific/Auckland (NZST, UTC+12)`,labelZh:`太平洋/奥克兰 (新西兰时间, UTC+12)`}];function $n(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return``}}var er=[{value:`先生`,labelEn:`Mr.`,labelZh:`先生`},{value:`女士`,labelEn:`Ms.`,labelZh:`女士`},{value:`同学`,labelEn:`Colleague`,labelZh:`同学`},{value:`老师`,labelEn:`Teacher`,labelZh:`老师`},{value:`老板`,labelEn:`Boss`,labelZh:`老板`},{value:`朋友`,labelEn:`Friend`,labelZh:`朋友`}],tr=[{value:`AI assistant`,labelEn:`AI Assistant`,labelZh:`AI 助手`},{value:`robot`,labelEn:`Robot`,labelZh:`机器人`},{value:`familiar`,labelEn:`Familiar`,labelZh:`精灵`},{value:`ghost in the machine`,labelEn:`Ghost in the machine`,labelZh:`机器幽灵`},{value:`digital companion`,labelEn:`Digital Companion`,labelZh:`数字伙伴`}];function nr(e){let t=(0,Y.c)(216),{a:n,chat:r,selected:a,busy:o,editName:s,setEditName:c,editDescription:u,setEditDescription:d,editWorkspace:f,setEditWorkspace:p,editModel:m,setEditModel:h,onSetDefault:g,onSaveAgentEdits:_,onDelete:v,hideInlineSave:y,profileMarkdownLoading:b,profileDraft:x,updateIdentity:S,handleSoulTemplateChange:C,handleSoulContentChange:T,setAvatarDialogOpen:O,toggleSoulPreviewMode:A,defaultModel:j,defaultWorkspace:M,onTryInChat:N}=e,P=j===void 0?``:j,F=M===void 0?``:M,I=i(ar),L=l(ir),R;t[0]===x?.identity?R=t[1]:(R=x?.identity??{name:``,description:``,language:``,creature:``,emoji:``,avatar:``},t[0]=x?.identity,t[1]=R);let z=R,B=x?.soulTemplate??`professional`,ee=x?.soulCustomContent??``,H=x?.soulEditorNonce??0,U=x?.soulPreviewMode??!1,te=x?.avatarDialogOpen??!1,W;t[2]===I?W=t[3]:(W=(e,t)=>I===`zh`?t:e,t[2]=I,t[3]=W);let G=W,re;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(re=pn(),t[4]=re):re=t[4];let ae=re;if(!a){let e;return t[5]===n.selectAgentHint?e=t[6]:(e=(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.selectAgentHint}),t[5]=n.selectAgentHint,t[6]=e),e}let oe;t[7]===a.id?oe=t[8]:(oe=xt(a.id),t[7]=a.id,t[8]=oe);let se;t[9]===oe?se=t[10]:(se={[Wt]:oe},t[9]=oe,t[10]=se);let ce;t[11]!==n||t[12]!==P||t[13]!==F||t[14]!==m||t[15]!==f||t[16]!==se?(ce=(0,X.jsx)(Rn,{a:n,defaultModel:P,defaultWorkspace:F,agentModel:m,agentWorkspace:f,settingsState:se}),t[11]=n,t[12]=P,t[13]=F,t[14]=m,t[15]=f,t[16]=se,t[17]=ce):ce=t[17];let le;t[18]!==z.avatar||t[19]!==a.id?(le=(0,X.jsx)(Ae,{agentId:a.id,avatar:z.avatar,size:36,className:`size-9 rounded-lg`}),t[18]=z.avatar,t[19]=a.id,t[20]=le):le=t[20];let ue;t[21]===O?ue=t[22]:(ue=()=>O(!0),t[21]=O,t[22]=ue);let de;t[23]!==n.avatarOpenSettingsAria||t[24]!==ue?(de={onClick:ue,ariaLabel:n.avatarOpenSettingsAria,id:`agent-avatar-settings`},t[23]=n.avatarOpenSettingsAria,t[24]=ue,t[25]=de):de=t[25];let pe;t[26]!==n.setDefault||t[27]!==o||t[28]!==g||t[29]!==a.isDefault?(pe=a.isDefault?null:(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:`text-xs`,disabled:o,onClick:()=>void g(),children:n.setDefault}),t[26]=n.setDefault,t[27]=o,t[28]=g,t[29]=a.isDefault,t[30]=pe):pe=t[30];let me;t[31]!==n.personaSectionIdentity||t[32]!==n.personaSectionIdentityHint||t[33]!==de||t[34]!==pe||t[35]!==le?(me=(0,X.jsx)(qt,{icon:ye,title:n.personaSectionIdentity,subtitle:n.personaSectionIdentityHint,iconLeading:le,iconInteractive:de,trailing:pe}),t[31]=n.personaSectionIdentity,t[32]=n.personaSectionIdentityHint,t[33]=de,t[34]=pe,t[35]=le,t[36]=me):me=t[36];let he;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(he=(0,X.jsx)(Oe,{className:J(`fixed inset-0 bg-scrim backdrop-blur-[2px]`,we)}),t[37]=he):he=t[37];let ge;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ge=J(`fixed left-1/2 top-1/2 w-[min(calc(100vw-2rem),26rem)] max-h-[min(90dvh,36rem)] -translate-x-1/2 -translate-y-1/2 overflow-y-auto rounded-xl border border-edge bg-surface-panel p-4 shadow-popover dark:border-edge`,Bt),t[38]=ge):ge=t[38];let _e;t[39]===n.avatarPickerTitle?_e=t[40]:(_e=(0,X.jsx)(fe,{className:`text-base font-semibold text-fg`,children:n.avatarPickerTitle}),t[39]=n.avatarPickerTitle,t[40]=_e);let ve;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(ve=J(tt,`shrink-0 p-1.5 hover:bg-surface-base`),t[41]=ve):ve=t[41];let be;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(be=(0,X.jsx)(it,{className:`size-4`,"aria-hidden":!0}),t[42]=be):be=t[42];let xe;t[43]===n.closeDialogAria?xe=t[44]:(xe=(0,X.jsx)(Ee,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:ve,"aria-label":n.closeDialogAria,children:be})}),t[43]=n.closeDialogAria,t[44]=xe);let Se;t[45]!==_e||t[46]!==xe?(Se=(0,X.jsxs)(`div`,{className:`mb-3 flex items-start justify-between gap-2`,children:[_e,xe]}),t[45]=_e,t[46]=xe,t[47]=Se):Se=t[47];let Te;t[48]===n.avatarRowHint?Te=t[49]:(Te=(0,X.jsx)(Rt,{className:`sr-only`,children:n.avatarRowHint}),t[48]=n.avatarRowHint,t[49]=Te);let ke;t[50]===S?ke=t[51]:(ke=e=>S({avatar:e}),t[50]=S,t[51]=ke);let je;t[52]!==n||t[53]!==z.avatar||t[54]!==a.id||t[55]!==ke?(je=(0,X.jsx)(Bn,{agentId:a.id,value:z.avatar,onChange:ke,a:n}),t[52]=n,t[53]=z.avatar,t[54]=a.id,t[55]=ke,t[56]=je):je=t[56];let Me;t[57]!==Se||t[58]!==Te||t[59]!==je?(Me=(0,X.jsxs)(k,{children:[he,(0,X.jsxs)(E,{className:ge,onOpenAutoFocus:rr,children:[Se,Te,je]})]}),t[57]=Se,t[58]=Te,t[59]=je,t[60]=Me):Me=t[60];let Ne;t[61]!==te||t[62]!==O||t[63]!==Me?(Ne=(0,X.jsx)(D,{open:te,onOpenChange:O,children:Me}),t[61]=te,t[62]=O,t[63]=Me,t[64]=Ne):Ne=t[64];let Pe;t[65]===n.displayName?Pe=t[66]:(Pe=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.displayName}),t[65]=n.displayName,t[66]=Pe);let Fe;t[67]!==c||t[68]!==S?(Fe=e=>{c(e.target.value),S({name:e.target.value})},t[67]=c,t[68]=S,t[69]=Fe):Fe=t[69];let Ie;t[70]!==n.personaNamePlaceholder||t[71]!==s||t[72]!==Fe?(Ie=(0,X.jsx)(`input`,{className:ae,value:s,onChange:Fe,placeholder:n.personaNamePlaceholder,autoComplete:`off`}),t[70]=n.personaNamePlaceholder,t[71]=s,t[72]=Fe,t[73]=Ie):Ie=t[73];let Le;t[74]!==Pe||t[75]!==Ie?(Le=(0,X.jsxs)(`label`,{className:`flex flex-col gap-1.5 text-sm`,children:[Pe,Ie]}),t[74]=Pe,t[75]=Ie,t[76]=Le):Le=t[76];let Re;t[77]===n.personaEmoji?Re=t[78]:(Re=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.personaEmoji}),t[77]=n.personaEmoji,t[78]=Re);let ze;t[79]===S?ze=t[80]:(ze=e=>S({emoji:e.target.value}),t[79]=S,t[80]=ze);let Be;t[81]!==n.personaEmojiPlaceholder||t[82]!==z.emoji||t[83]!==ze?(Be=(0,X.jsx)(`input`,{className:ae,value:z.emoji,onChange:ze,placeholder:n.personaEmojiPlaceholder,autoComplete:`off`}),t[81]=n.personaEmojiPlaceholder,t[82]=z.emoji,t[83]=ze,t[84]=Be):Be=t[84];let Ve;t[85]!==Re||t[86]!==Be?(Ve=(0,X.jsxs)(`label`,{className:`flex flex-col gap-1.5 text-sm`,children:[Re,Be]}),t[85]=Re,t[86]=Be,t[87]=Ve):Ve=t[87];let He;t[88]===n.agentDescription?He=t[89]:(He=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.agentDescription}),t[88]=n.agentDescription,t[89]=He);let Ue;t[90]===Symbol.for(`react.memo_cache_sentinel`)?(Ue=J(ae,`min-h-16 resize-y text-sm leading-relaxed`),t[90]=Ue):Ue=t[90];let We;t[91]!==d||t[92]!==S?(We=e=>{d(e.target.value),S({description:e.target.value})},t[91]=d,t[92]=S,t[93]=We):We=t[93];let Ge;t[94]!==n.agentDescriptionPlaceholder||t[95]!==u||t[96]!==We?(Ge=(0,X.jsx)(`textarea`,{className:Ue,value:u,onChange:We,placeholder:n.agentDescriptionPlaceholder,maxLength:4e3,rows:3,spellCheck:!0}),t[94]=n.agentDescriptionPlaceholder,t[95]=u,t[96]=We,t[97]=Ge):Ge=t[97];let Ke;t[98]!==He||t[99]!==Ge?(Ke=(0,X.jsxs)(`label`,{className:`flex flex-col gap-1.5 text-sm sm:col-span-2`,children:[He,Ge]}),t[98]=He,t[99]=Ge,t[100]=Ke):Ke=t[100];let K;t[101]===n.personaCreature?K=t[102]:(K=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.personaCreature}),t[101]=n.personaCreature,t[102]=K);let qe;t[103]===z.creature?qe=t[104]:(qe=tr.some(e=>e.value===z.creature)?z.creature:`__custom__`,t[103]=z.creature,t[104]=qe);let Je;t[105]===S?Je=t[106]:(Je=e=>{if(e.target.value===`__custom__`){S({creature:``});return}S({creature:e.target.value})},t[105]=S,t[106]=Je);let Ye;t[107]===G?Ye=t[108]:(Ye=tr.map(e=>(0,X.jsx)(`option`,{value:e.value,children:G(e.labelEn,e.labelZh)},e.value)),t[107]=G,t[108]=Ye);let Xe;t[109]===G?Xe=t[110]:(Xe=G(`Custom…`,`自定义…`),t[109]=G,t[110]=Xe);let Ze;t[111]===Xe?Ze=t[112]:(Ze=(0,X.jsx)(`option`,{value:`__custom__`,children:Xe}),t[111]=Xe,t[112]=Ze);let $e;t[113]!==qe||t[114]!==Je||t[115]!==Ye||t[116]!==Ze?($e=(0,X.jsxs)(`select`,{className:ae,value:qe,onChange:Je,children:[Ye,Ze]}),t[113]=qe,t[114]=Je,t[115]=Ye,t[116]=Ze,t[117]=$e):$e=t[117];let et;t[118]!==n.personaCreaturePlaceholder||t[119]!==z.creature||t[120]!==S?(et=tr.some(e=>e.value===z.creature)?null:(0,X.jsx)(`input`,{className:J(ae,`mt-1 text-xs`),value:z.creature,onChange:e=>S({creature:e.target.value}),placeholder:n.personaCreaturePlaceholder,autoComplete:`off`}),t[118]=n.personaCreaturePlaceholder,t[119]=z.creature,t[120]=S,t[121]=et):et=t[121];let nt;t[122]!==K||t[123]!==$e||t[124]!==et?(nt=(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5 text-sm`,children:[K,$e,et]}),t[122]=K,t[123]=$e,t[124]=et,t[125]=nt):nt=t[125];let rt;t[126]!==Le||t[127]!==Ve||t[128]!==Ke||t[129]!==nt?(rt=(0,X.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[Le,Ve,Ke,nt]}),t[126]=Le,t[127]=Ve,t[128]=Ke,t[129]=nt,t[130]=rt):rt=t[130];let at;t[131]!==me||t[132]!==Ne||t[133]!==rt?(at=(0,X.jsxs)(Jt,{children:[me,Ne,rt]}),t[131]=me,t[132]=Ne,t[133]=rt,t[134]=at):at=t[134];let ct;t[135]!==n.editAgent||t[136]!==n.editAgentHint?(ct=(0,X.jsx)(qt,{icon:st,title:n.editAgent,subtitle:n.editAgentHint}),t[135]=n.editAgent,t[136]=n.editAgentHint,t[137]=ct):ct=t[137];let lt;t[138]===n.modelPrimary?lt=t[139]:(lt=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.modelPrimary}),t[138]=n.modelPrimary,t[139]=lt);let ut;t[140]===h?ut=t[141]:(ut=e=>h(e),t[140]=h,t[141]=ut);let dt;t[142]!==o||t[143]!==r.modelNoMatches||t[144]!==r.modelPlaceholder||t[145]!==r.modelSearchPlaceholder||t[146]!==m||t[147]!==ut?(dt=(0,X.jsx)(ne,{className:`min-w-0 flex-1`,value:m,disabled:o,placeholder:r.modelPlaceholder,searchPlaceholder:r.modelSearchPlaceholder,noMatches:r.modelNoMatches,onChange:ut}),t[142]=o,t[143]=r.modelNoMatches,t[144]=r.modelPlaceholder,t[145]=r.modelSearchPlaceholder,t[146]=m,t[147]=ut,t[148]=dt):dt=t[148];let ft;t[149]!==n.modelClear||t[150]!==o||t[151]!==m||t[152]!==h?(ft=m.trim()?(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:`shrink-0`,disabled:o,onClick:()=>h(``),children:n.modelClear}):null,t[149]=n.modelClear,t[150]=o,t[151]=m,t[152]=h,t[153]=ft):ft=t[153];let pt;t[154]!==dt||t[155]!==ft?(pt=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-stretch gap-2`,children:[dt,ft]}),t[154]=dt,t[155]=ft,t[156]=pt):pt=t[156];let mt;t[157]!==lt||t[158]!==pt?(mt=(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5 text-sm sm:col-span-2`,children:[lt,pt]}),t[157]=lt,t[158]=pt,t[159]=mt):mt=t[159];let ht;t[160]===n.workspacePath?ht=t[161]:(ht=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:n.workspacePath}),t[160]=n.workspacePath,t[161]=ht);let gt=r.workingDirectory,_t=r.workingDirectory.notSet,yt;t[162]===Symbol.for(`react.memo_cache_sentinel`)?(yt=J(ae,`font-mono text-xs`),t[162]=yt):yt=t[162];let bt;t[163]!==o||t[164]!==r.workingDirectory||t[165]!==f||t[166]!==p?(bt=(0,X.jsx)(In,{value:f,onChange:p,disabled:o,wd:gt,placeholder:_t,inputClassName:yt}),t[163]=o,t[164]=r.workingDirectory,t[165]=f,t[166]=p,t[167]=bt):bt=t[167];let St;t[168]!==ht||t[169]!==bt?(St=(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5 text-sm sm:col-span-2`,children:[ht,bt]}),t[168]=ht,t[169]=bt,t[170]=St):St=t[170];let Ct;t[171]!==mt||t[172]!==St?(Ct=(0,X.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[mt,St]}),t[171]=mt,t[172]=St,t[173]=Ct):Ct=t[173];let wt;t[174]!==n.save||t[175]!==n.tryInChat||t[176]!==o||t[177]!==y||t[178]!==_||t[179]!==N?(wt=y?null:(0,X.jsxs)(`div`,{className:`mt-4 flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(q,{type:`button`,disabled:o,onClick:()=>void _(),children:n.save}),N?(0,X.jsxs)(q,{type:`button`,variant:`secondary`,disabled:o,onClick:N,children:[(0,X.jsx)(De,{className:`mr-1.5 size-4`,"aria-hidden":!0}),n.tryInChat]}):null]}),t[174]=n.save,t[175]=n.tryInChat,t[176]=o,t[177]=y,t[178]=_,t[179]=N,t[180]=wt):wt=t[180];let Tt;t[181]!==ct||t[182]!==Ct||t[183]!==wt?(Tt=(0,X.jsxs)(Jt,{children:[ct,Ct,wt]}),t[181]=ct,t[182]=Ct,t[183]=wt,t[184]=Tt):Tt=t[184];let Et;t[185]!==n.loading||t[186]!==n.personaSectionSoul||t[187]!==n.personaSectionSoulHint||t[188]!==n.personaSoulCustomEdit||t[189]!==n.personaSoulEdit||t[190]!==n.personaSoulPreview||t[191]!==n.personaSoulTemplate||t[192]!==T||t[193]!==C||t[194]!==L||t[195]!==G||t[196]!==b||t[197]!==ee||t[198]!==H||t[199]!==U||t[200]!==B||t[201]!==A?(Et=b?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.loading}):(0,X.jsxs)(Jt,{children:[(0,X.jsx)(qt,{icon:ot,title:n.personaSectionSoul,subtitle:n.personaSectionSoulHint}),(0,X.jsxs)(`div`,{className:`mb-4 flex flex-col gap-2`,children:[(0,X.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:n.personaSoulTemplate}),(0,X.jsx)(`div`,{className:`grid grid-cols-2 gap-2 sm:grid-cols-4`,children:qn.map(e=>(0,X.jsxs)(`button`,{type:`button`,className:J(`flex flex-col items-center gap-1.5 rounded-xl border-2 p-3 text-center transition-all`,jt.pressCard,B===e.id?`border-accent bg-accent-soft/40 shadow-sm`:`border-edge hover:border-accent/40 hover:bg-surface-hover`),onClick:()=>C(e.id),children:[(0,X.jsx)(`span`,{className:`text-xl`,children:e.emoji}),(0,X.jsx)(`span`,{className:`text-xs font-medium text-fg`,children:G(e.labelEn,e.labelZh)})]},e.id))})]}),B===`custom`?(0,X.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,X.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:n.personaSoulCustomEdit}),(0,X.jsx)(`button`,{type:`button`,className:J(tt,`inline-flex size-9 shrink-0 items-center justify-center rounded-md p-0 hover:bg-surface-hover`),title:U?n.personaSoulEdit:n.personaSoulPreview,"aria-label":U?n.personaSoulEdit:n.personaSoulPreview,onClick:A,children:U?(0,X.jsx)(vt,{className:`size-4`,"aria-hidden":!0}):(0,X.jsx)(Qe,{className:`size-4`,"aria-hidden":!0})})]}),(0,X.jsx)(`div`,{className:J(ae,`flex min-h-64 flex-col overflow-hidden p-0`),children:U?(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-4 py-3`,children:(0,X.jsx)(V,{content:ee})}):(0,X.jsx)(ie,{initialContent:ee,onChange:T,isDark:L,className:`min-h-0 flex-1`},`soul-${H}`)})]}):null]}),t[185]=n.loading,t[186]=n.personaSectionSoul,t[187]=n.personaSectionSoulHint,t[188]=n.personaSoulCustomEdit,t[189]=n.personaSoulEdit,t[190]=n.personaSoulPreview,t[191]=n.personaSoulTemplate,t[192]=T,t[193]=C,t[194]=L,t[195]=G,t[196]=b,t[197]=ee,t[198]=H,t[199]=U,t[200]=B,t[201]=A,t[202]=Et):Et=t[202];let Dt;t[203]!==n.purgeDisk||t[204]!==n.removeFromConfig||t[205]!==o||t[206]!==G||t[207]!==v||t[208]!==a.id?(Dt=a.id===`main`?null:(0,X.jsxs)(Jt,{children:[(0,X.jsx)(qt,{icon:Ce,title:G(`Danger Zone`,`危险操作`),subtitle:G(`Actions that cannot be undone. Be careful.`,`以下操作不可撤销,请谨慎操作。`)}),(0,X.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,X.jsxs)(q,{type:`button`,variant:`secondary`,disabled:o,onClick:()=>void v(!1),children:[(0,X.jsx)(w,{className:`mr-1 size-4`,"aria-hidden":!0}),n.removeFromConfig]}),(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:`border-red-200 text-red-700 hover:bg-red-50 dark:border-red-900/60 dark:text-red-300 dark:hover:bg-red-950/40`,disabled:o,onClick:()=>void v(!0),children:n.purgeDisk})]})]}),t[203]=n.purgeDisk,t[204]=n.removeFromConfig,t[205]=o,t[206]=G,t[207]=v,t[208]=a.id,t[209]=Dt):Dt=t[209];let Ot;return t[210]!==at||t[211]!==Tt||t[212]!==Et||t[213]!==Dt||t[214]!==ce?(Ot=(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-8 overflow-y-auto`,children:[ce,at,Tt,Et,Dt]}),t[210]=at,t[211]=Tt,t[212]=Et,t[213]=Dt,t[214]=ce,t[215]=Ot):Ot=t[215],Ot}function rr(e){return e.preventDefault()}function ir(e){return e.resolved===`dark`}function ar(e){return e.language}function or(e){let t=!e.pronouns||er.some(t=>t.value===e.pronouns),n=Qn.some(t=>t.value===e.timezone);return{showCustomPronouns:!!(e.pronouns&&!t),showCustomTimezone:!!(e.timezone&&!n),customTimezone:e.timezone&&!n?e.timezone:``}}function sr(e,t){switch(t.type){case`load`:{let e=or(t.user),n=JSON.stringify(t.user);return{user:t.user,snapshot:n,...e}}case`patch`:{let n={...e.user,...t.patch};return{...e,user:n}}case`setShowCustomPronouns`:return{...e,showCustomPronouns:t.value};case`setShowCustomTimezone`:return{...e,showCustomTimezone:t.value};case`setCustomTimezone`:return{...e,customTimezone:t.value};case`saved`:return{...e,snapshot:JSON.stringify(e.user)}}}var cr={callName:``,pronouns:``,timezone:``,notes:``},lr={user:cr,showCustomPronouns:!1,showCustomTimezone:!1,customTimezone:``,snapshot:JSON.stringify(cr)};function ur({a:e,agentId:t,saveRef:n,onDirtyChange:r}){let a=i(e=>e.language),[o,s]=(0,Q.useReducer)(sr,lr),c=(0,Q.useRef)(t);c.current=t;let l=(0,Q.useRef)(r);l.current=r;let u=Vt(async()=>{let e=Gn(await he(t,`USER.md`).catch(()=>``));if(!e.timezone){let t=$n();if(t)return{...e,timezone:t}}return e},[t],{enabled:!!t,initial:null,errorData:cr}),d=(0,Q.useRef)(null);(0,Q.useEffect)(()=>{u.loading||!u.data||d.current!==t&&(d.current=t,s({type:`load`,user:u.data}),l.current?.(!1))},[t,u.loading,u.data]);let f=(0,Q.useCallback)(async e=>{await C(c.current,`USER.md`,e)},[]),p=(0,Q.useRef)(o.user);p.current=o.user,(0,Q.useEffect)(()=>{if(n)return n.current=async()=>{await f(Kn(p.current)),s({type:`saved`}),l.current?.(!1)},()=>{n.current=null}},[n,f]);let m=(0,Q.useCallback)(e=>{s({type:`patch`,patch:e});let t={...p.current,...e};l.current?.(JSON.stringify(t)!==o.snapshot)},[o.snapshot]),h=(0,Q.useCallback)(e=>{if(e===`__custom__`){s({type:`setShowCustomTimezone`,value:!0});return}s({type:`setShowCustomTimezone`,value:!1}),s({type:`setCustomTimezone`,value:``}),m({timezone:e})},[m]),g=(0,Q.useCallback)(e=>{s({type:`setCustomTimezone`,value:e}),m({timezone:e})},[m]),_=(0,Q.useCallback)(()=>{let e=$n();e&&(Qn.some(t=>t.value===e)?(s({type:`setShowCustomTimezone`,value:!1}),s({type:`setCustomTimezone`,value:``})):(s({type:`setShowCustomTimezone`,value:!0}),s({type:`setCustomTimezone`,value:e})),m({timezone:e}))},[m]),v=o.showCustomTimezone?`__custom__`:Qn.some(e=>e.value===o.user.timezone)?o.user.timezone:`__custom__`,y=(0,Q.useCallback)((e,t)=>a===`zh`?t:e,[a]);if(u.loading)return(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:e.loading});let b=pn(),{user:x,showCustomPronouns:S,showCustomTimezone:w,customTimezone:T}=o;return(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-6 overflow-y-auto`,children:[(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:e.personaSectionUserHint}),(0,X.jsxs)(Jt,{children:[(0,X.jsx)(qt,{icon:Lt,title:e.personaSectionUser,subtitle:e.personaSectionUserHint}),(0,X.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,X.jsxs)(`label`,{className:`flex flex-col gap-1.5 text-sm`,children:[(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:e.personaCallName}),(0,X.jsx)(`input`,{className:b,value:x.callName,onChange:e=>m({callName:e.target.value}),placeholder:e.personaCallNamePlaceholder,autoComplete:`off`})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5 text-sm`,children:[(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:e.personaPronouns}),(0,X.jsxs)(`select`,{className:b,value:er.some(e=>e.value===x.pronouns)?x.pronouns:`__custom__`,onChange:e=>{if(e.target.value===`__custom__`){s({type:`setShowCustomPronouns`,value:!0});return}s({type:`setShowCustomPronouns`,value:!1}),m({pronouns:e.target.value})},children:[(0,X.jsx)(`option`,{value:``,disabled:!0,children:e.personaPronounsPlaceholder}),er.map(e=>(0,X.jsx)(`option`,{value:e.value,children:y(e.labelEn,e.labelZh)},e.value)),(0,X.jsx)(`option`,{value:`__custom__`,children:y(`Custom…`,`自定义…`)})]}),S?(0,X.jsx)(`input`,{className:J(b,`mt-1 text-xs`),value:er.some(e=>e.value===x.pronouns)?``:x.pronouns,onChange:e=>m({pronouns:e.target.value}),placeholder:e.personaPronounsPlaceholder,autoComplete:`off`}):null]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5 text-sm sm:col-span-2`,children:[(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:e.personaTimezone}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-stretch gap-2`,children:[(0,X.jsxs)(`select`,{className:J(b,`min-w-0 flex-1`),value:v,onChange:e=>h(e.target.value),children:[Qn.map(e=>(0,X.jsx)(`option`,{value:e.value,children:y(e.labelEn,e.labelZh)},e.value)),(0,X.jsx)(`option`,{value:`__custom__`,children:e.personaTimezoneCustom})]}),(0,X.jsx)(`button`,{type:`button`,className:J(`shrink-0 rounded-lg border border-edge bg-surface-panel px-3 py-2 text-xs font-medium text-fg-muted hover:bg-surface-hover hover:text-fg`,jt.press),onClick:_,children:e.personaTimezoneDetect})]}),w?(0,X.jsx)(`input`,{className:J(b,`mt-1 font-mono text-xs`),value:T,onChange:e=>g(e.target.value),placeholder:`e.g. Asia/Shanghai`,autoComplete:`off`}):null]}),(0,X.jsxs)(`label`,{className:`flex flex-col gap-1.5 text-sm sm:col-span-2`,children:[(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:e.personaNotes}),(0,X.jsx)(`textarea`,{className:J(b,`min-h-16 resize-y text-sm leading-relaxed`),value:x.notes,onChange:e=>m({notes:e.target.value}),placeholder:e.personaNotesPlaceholder,rows:3,spellCheck:!0})]})]}),(0,X.jsxs)(`div`,{className:`mt-3 flex items-start gap-2 rounded-lg bg-accent-soft/30 px-3 py-2.5 text-xs text-fg-muted`,children:[(0,X.jsx)(P,{className:`mt-0.5 size-3.5 shrink-0 text-accent`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:e.personaMemoryNote})]})]})]})}function dr(e){let t=(0,Y.c)(2),n;return t[0]===e?n=t[1]:(n=(0,X.jsx)(ur,{...e},e.agentId),t[0]=e,t[1]=n),n}function fr(e){let t=(0,Y.c)(66),{a:n,selected:r,busy:i,skillsCatalogLoading:a,catalogForPick:o,skillsInherit:s,setSkillsInherit:c,skillsPick:l,setSkillsPick:u,onSaveSkills:d,hideInlineSave:f}=e,p;t[0]===r.skills.effectiveAllowlist?p=t[1]:(p=function(e){let t=r.skills.effectiveAllowlist;return t===void 0?!0:t.length===0?!1:t.includes(e)},t[0]=r.skills.effectiveAllowlist,t[1]=p);let m=p,h;t[2]!==o||t[3]!==r.skills.effectiveAllowlist?(h=function(){let e=r.skills.effectiveAllowlist;return e===void 0?new Set(o.map(pr)):new Set(e)},t[2]=o,t[3]=r.skills.effectiveAllowlist,t[4]=h):h=t[4];let g=h,_;t[5]!==n.skillsHint||t[6]!==n.skillsTitle?(_=(0,X.jsx)(qt,{className:`shrink-0`,icon:Gt,title:n.skillsTitle,subtitle:n.skillsHint}),t[5]=n.skillsHint,t[6]=n.skillsTitle,t[7]=_):_=t[7];let v;t[8]===c?v=t[9]:(v=()=>c(!0),t[8]=c,t[9]=v);let y;t[10]!==n.skillsInherit||t[11]!==i||t[12]!==v?(y=(0,X.jsx)(q,{type:`button`,variant:`secondary`,disabled:i,onClick:v,children:n.skillsInherit}),t[10]=n.skillsInherit,t[11]=i,t[12]=v,t[13]=y):y=t[13];let b;t[14]!==g||t[15]!==c||t[16]!==u?(b=()=>{c(!1),u(g())},t[14]=g,t[15]=c,t[16]=u,t[17]=b):b=t[17];let x;t[18]!==n.skillsCustomize||t[19]!==i||t[20]!==b?(x=(0,X.jsx)(q,{type:`button`,variant:`secondary`,disabled:i,onClick:b,children:n.skillsCustomize}),t[18]=n.skillsCustomize,t[19]=i,t[20]=b,t[21]=x):x=t[21];let S;t[22]!==y||t[23]!==x?(S=(0,X.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[y,x]}),t[22]=y,t[23]=x,t[24]=S):S=t[24];let C;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(C=Le(`skills`),t[25]=C):C=t[25];let w;t[26]===n.skillsLibraryLink?w=t[27]:(w=(0,X.jsx)(Ue,{to:C,className:`shrink-0 text-xs font-medium text-accent-fg hover:underline`,children:n.skillsLibraryLink}),t[26]=n.skillsLibraryLink,t[27]=w);let T;t[28]!==S||t[29]!==w?(T=(0,X.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-between gap-3`,children:[S,w]}),t[28]=S,t[29]=w,t[30]=T):T=t[30];let E;t[31]===r.skills.defaults?E=t[32]:(E=r.skills.defaults.length?r.skills.defaults.join(`, `):`—`,t[31]=r.skills.defaults,t[32]=E);let D;t[33]!==n.skillsDefaultsLabel||t[34]!==E?(D=(0,X.jsxs)(`p`,{className:`mt-2 shrink-0 text-xs text-fg-muted`,children:[n.skillsDefaultsLabel,` `,E]}),t[33]=n.skillsDefaultsLabel,t[34]=E,t[35]=D):D=t[35];let O;t[36]!==n.skillsInherit||t[37]!==r.skills.effectiveAllowlist||t[38]!==s?(O=r.skills.effectiveAllowlist?.length?r.skills.effectiveAllowlist.join(`, `):s?n.skillsInherit:`—`,t[36]=n.skillsInherit,t[37]=r.skills.effectiveAllowlist,t[38]=s,t[39]=O):O=t[39];let k;t[40]!==n.skillsEffectiveLabel||t[41]!==O?(k=(0,X.jsxs)(`p`,{className:`shrink-0 text-xs text-fg-muted`,children:[n.skillsEffectiveLabel,` `,O]}),t[40]=n.skillsEffectiveLabel,t[41]=O,t[42]=k):k=t[42];let A;t[43]!==n.skillsCatalogLoading||t[44]!==n.skillsEmptyCatalog||t[45]!==n.skillsNoDescription||t[46]!==i||t[47]!==o||t[48]!==m||t[49]!==u||t[50]!==a||t[51]!==s||t[52]!==l?(A=a?(0,X.jsx)(`p`,{className:`shrink-0 text-sm text-fg-muted`,children:n.skillsCatalogLoading}):o.length===0?(0,X.jsx)(`p`,{className:`shrink-0 text-sm text-fg-muted`,children:n.skillsEmptyCatalog}):(0,X.jsx)(`div`,{className:J(`mt-3 min-h-0 flex-1 overflow-y-auto overscroll-contain pr-0.5`,s&&`opacity-50`),children:(0,X.jsx)(`ul`,{className:`flex flex-col gap-2.5 text-sm`,children:o.map(e=>{let t=e.name||e.directoryId,r=s?m(t):l.has(t),a=typeof e.description==`string`?e.description.trim():``,o=a||n.skillsNoDescription;return(0,X.jsx)(`li`,{className:`h-16 shrink-0 overflow-hidden rounded-xl border border-edge-subtle bg-surface-panel/60 px-3 dark:border-edge-subtle`,children:(0,X.jsxs)(`label`,{className:`flex h-full cursor-pointer items-center gap-3 text-sm`,children:[(0,X.jsx)(`input`,{type:`checkbox`,className:`shrink-0 rounded border-edge`,checked:r,disabled:s||i,onChange:()=>{u(e=>{let n=new Set(e);return r?n.delete(t):n.add(t),n})},"aria-label":t}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1 overflow-hidden`,children:[(0,X.jsx)(`div`,{className:`truncate font-mono text-xs font-medium text-fg`,title:t,children:t}),(0,X.jsx)(`p`,{className:J(`mt-0.5 truncate text-xs leading-tight text-fg-muted`,!a&&`italic text-fg-subtle`),title:o,children:o})]})]})},t)})})}),t[43]=n.skillsCatalogLoading,t[44]=n.skillsEmptyCatalog,t[45]=n.skillsNoDescription,t[46]=i,t[47]=o,t[48]=m,t[49]=u,t[50]=a,t[51]=s,t[52]=l,t[53]=A):A=t[53];let j;t[54]!==n.skillsSave||t[55]!==i||t[56]!==f||t[57]!==d?(j=f?null:(0,X.jsx)(`div`,{className:`mt-4 shrink-0`,children:(0,X.jsx)(q,{type:`button`,disabled:i,onClick:()=>void d(),children:n.skillsSave})}),t[54]=n.skillsSave,t[55]=i,t[56]=f,t[57]=d,t[58]=j):j=t[58];let M;return t[59]!==T||t[60]!==D||t[61]!==k||t[62]!==A||t[63]!==j||t[64]!==_?(M=(0,X.jsxs)(Jt,{className:`flex min-h-0 flex-1 flex-col`,children:[_,T,D,k,A,j]}),t[59]=T,t[60]=D,t[61]=k,t[62]=A,t[63]=j,t[64]=_,t[65]=M):M=t[65],M}function pr(e){return e.name||e.directoryId}var mr=[{key:`workspace`,toolIds:[`read_file`,`write_file`,`edit_file`,`list_dir`,`grep`,`find`]},{key:`execution`,toolIds:[`shell`,`execute_code`]},{key:`messaging`,toolIds:[`send_message`,`send_media`,`text_to_speech`]},{key:`memory`,toolIds:[`memory_search`,`memory_get`,`curated_memory`,`session_search`]},{key:`media`,toolIds:[`image`,`image_generate`,`read_media`,`create_share`]},{key:`web`,toolIds:[`web_search`,`web_fetch`,`web_extract`,`browser_use`]},{key:`misc`,toolIds:[`session_status`,`dreaming`,`tool_manual`,`clarify`,`todo`,`cronjob`,`workflow`,`delegate_task`]},{key:`unknown`,toolIds:[`skills_list`,`skill_view`,`skill_manage`]},{key:`extensions`,toolIds:[`extensions`]},{key:`mcp`,toolIds:[`bundle-mcp`]}],hr=new Set(mr.flatMap(e=>[...e.toolIds].map(e=>String(e))));function gr(e){return e.filter(e=>e&&!hr.has(e)).sort((e,t)=>e.localeCompare(t))}var _r=[`write_file`,`edit_file`,`shell`],vr=[`shell`,`image_generate`,`extensions`],yr=[`send_message`,`send_media`];function br(e){let t=(0,Y.c)(88),{mode:n,builtinToolIds:r,loading:i,disableSet:a,onDisableSetChange:o,defaultsDisableSet:s,unknownDisabledIds:c,getToolDescription:l,getGroupTitle:u,labels:d,quickActionsDisabled:f}=e,p;t[0]===c?p=t[1]:(p=c===void 0?[]:c,t[0]=c,t[1]=p);let m=p,h=f===void 0?!1:f,g;t[2]===r?g=t[3]:(g=new Set(r),t[2]=r,t[3]=g);let _=g,v;t[4]===s?v=t[5]:(v=s??new Set,t[4]=s,t[5]=v);let y=v,b;t[6]!==y||t[7]!==a||t[8]!==n||t[9]!==o?(b=(e,t)=>{if(n===`agentEntry`&&t&&y.has(e))return;let r=new Set(a);t?r.delete(e):r.add(e),o(r)},t[6]=y,t[7]=a,t[8]=n,t[9]=o,t[10]=b):b=t[10];let x=b,S;t[11]!==_||t[12]!==o?(S=e=>{let t=new Set;for(let n of e)_.has(n)&&t.add(n);o(t)},t[11]=_,t[12]=o,t[13]=S):S=t[13];let C=S,w;t[14]===o?w=t[15]:(w=()=>{o(new Set)},t[14]=o,t[15]=w);let T=w,E;t[16]!==r||t[17]!==o||t[18]!==m?(E=()=>{o(new Set([...r,...m]))},t[16]=r,t[17]=o,t[18]=m,t[19]=E):E=t[19];let D=E,O;t[20]===r?O=t[21]:(O=gr(r),t[20]=r,t[21]=O);let k=O,A;if(t[22]!==_||t[23]!==k||t[24]!==n||t[25]!==m){if(A=[],n===`defaults`&&m.length>0){let e;t[27]===m?e=t[28]:(e=m.toSorted(Sr),t[27]=m,t[28]=e);let n;t[29]===e?n=t[30]:(n={key:`unknown`,ids:e},t[29]=e,t[30]=n),A.push(n)}for(let e of mr){let t=e.toolIds.filter(e=>_.has(e));t.length>0&&A.push({key:e.key,ids:[...t]})}if(k.length>0){let e;t[31]===k?e=t[32]:(e={key:`misc`,ids:k},t[31]=k,t[32]=e),A.push(e)}t[22]=_,t[23]=k,t[24]=n,t[25]=m,t[26]=A}else A=t[26];let j=A,M=j.some(xr),N=h||i,P;t[33]===d.quickActionsLabel?P=t[34]:(P=(0,X.jsx)(`p`,{className:`text-xs font-medium text-fg-muted`,children:d.quickActionsLabel}),t[33]=d.quickActionsLabel,t[34]=P);let F=N||r.length===0&&m.length===0,I;t[35]!==T||t[36]!==d.quickEnableAll||t[37]!==F?(I=(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:En,disabled:F,onClick:T,children:d.quickEnableAll}),t[35]=T,t[36]=d.quickEnableAll,t[37]=F,t[38]=I):I=t[38];let L=N||r.length===0&&m.length===0,R;t[39]!==D||t[40]!==d.quickDisableAll||t[41]!==L?(R=(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:En,disabled:L,onClick:D,children:d.quickDisableAll}),t[39]=D,t[40]=d.quickDisableAll,t[41]=L,t[42]=R):R=t[42];let z=N||r.length===0,B;t[43]===C?B=t[44]:(B=()=>C(_r),t[43]=C,t[44]=B);let ee;t[45]!==d.quickReadOnlyWorkspace||t[46]!==z||t[47]!==B?(ee=(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:En,disabled:z,onClick:B,children:d.quickReadOnlyWorkspace}),t[45]=d.quickReadOnlyWorkspace,t[46]=z,t[47]=B,t[48]=ee):ee=t[48];let V=N||r.length===0,H;t[49]===C?H=t[50]:(H=()=>C(vr),t[49]=C,t[50]=H);let U;t[51]!==d.quickHighRiskOff||t[52]!==V||t[53]!==H?(U=(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:En,disabled:V,onClick:H,children:d.quickHighRiskOff}),t[51]=d.quickHighRiskOff,t[52]=V,t[53]=H,t[54]=U):U=t[54];let te=N||r.length===0,W;t[55]===C?W=t[56]:(W=()=>C(yr),t[55]=C,t[56]=W);let G;t[57]!==d.quickNoOutbound||t[58]!==te||t[59]!==W?(G=(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:En,disabled:te,onClick:W,children:d.quickNoOutbound}),t[57]=d.quickNoOutbound,t[58]=te,t[59]=W,t[60]=G):G=t[60];let ne;t[61]!==I||t[62]!==R||t[63]!==ee||t[64]!==U||t[65]!==G?(ne=(0,X.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[I,R,ee,U,G]}),t[61]=I,t[62]=R,t[63]=ee,t[64]=U,t[65]=G,t[66]=ne):ne=t[66];let re;t[67]!==P||t[68]!==ne?(re=(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[P,ne]}),t[67]=P,t[68]=ne,t[69]=re):re=t[69];let ie;t[70]!==y||t[71]!==a||t[72]!==u||t[73]!==l||t[74]!==j||t[75]!==M||t[76]!==d.emptyBuiltin||t[77]!==d.loadingBuiltin||t[78]!==d.lockedByDefaults||t[79]!==d.notInBuiltin||t[80]!==i||t[81]!==n||t[82]!==N||t[83]!==x?(ie=i?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:d.loadingBuiltin}):M?(0,X.jsx)(`div`,{className:`max-h-[min(50vh,22rem)] overflow-y-auto overscroll-contain pr-0.5`,children:(0,X.jsx)(`div`,{className:`flex flex-col gap-5 pr-1`,children:j.map(e=>{let{key:t,ids:r}=e;return(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h4`,{className:`mb-2 text-xs font-semibold uppercase tracking-wide text-fg-muted`,children:u(t)}),(0,X.jsx)(`ul`,{className:`flex flex-col gap-2.5`,children:r.map(e=>{let r=n===`defaults`&&t===`unknown`,i=n===`agentEntry`&&y.has(e),o=a.has(e),s=i?!1:!o,c=l(e);return(0,X.jsx)(`li`,{className:J(`rounded-xl border border-edge-subtle bg-surface-panel/60 px-3 py-2.5 dark:border-edge-subtle`,r&&`border-dashed`,i&&`opacity-60`),children:(0,X.jsxs)(`label`,{className:J(`flex gap-3 text-sm`,i?`cursor-not-allowed`:`cursor-pointer`),children:[(0,X.jsx)(`input`,{type:`checkbox`,className:`mt-1 shrink-0 rounded border-edge`,checked:s,disabled:i||N,onChange:()=>x(e,!s)}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-0.5`,children:[(0,X.jsx)(`span`,{className:`font-mono text-xs font-medium text-fg`,children:e}),r?(0,X.jsxs)(`span`,{className:`text-xs text-fg-muted`,children:[`(`,d.notInBuiltin,`)`]}):null,i?(0,X.jsxs)(`span`,{className:`text-xs text-fg-muted`,children:[`(`,d.lockedByDefaults,`)`]}):null]}),c?(0,X.jsx)(`p`,{className:`mt-1 text-xs leading-relaxed text-fg-muted`,children:c}):null]})]})},e)})})]},t)})})}):(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:d.emptyBuiltin}),t[70]=y,t[71]=a,t[72]=u,t[73]=l,t[74]=j,t[75]=M,t[76]=d.emptyBuiltin,t[77]=d.loadingBuiltin,t[78]=d.lockedByDefaults,t[79]=d.notInBuiltin,t[80]=i,t[81]=n,t[82]=N,t[83]=x,t[84]=ie):ie=t[84];let ae;return t[85]!==re||t[86]!==ie?(ae=(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[re,ie]}),t[85]=re,t[86]=ie,t[87]=ae):ae=t[87],ae}function xr(e){return e.ids.length>0}function Sr(e,t){return e.localeCompare(t)}function Cr(e){let t=(0,Y.c)(51),{a:n,data:r,selected:o,busy:s,toolEntryDisable:c,setToolEntryDisable:l,onSaveTools:u,onClearToolsEntry:d,hideInlineSave:f}=e,p=i(Tr),m;t[0]===p?m=t[1]:(m=a(p),t[0]=p,t[1]=m);let h=m.agentSettings.advanced,g;t[2]===o.tools.defaultsDisable?g=t[3]:(g=new Set(o.tools.defaultsDisable.flatMap(wr)),t[2]=o.tools.defaultsDisable,t[3]=g);let _=g,v;t[4]===l?v=t[5]:(v=e=>{l(e)},t[4]=l,t[5]=v);let y=v,b=n.toolsDisableGroups,x;t[6]===b?x=t[7]:(x=e=>b[e],t[6]=b,t[7]=x);let S=x,C;t[8]===n.toolDescriptions?C=t[9]:(C=e=>e in n.toolDescriptions?n.toolDescriptions[e]:``,t[8]=n.toolDescriptions,t[9]=C);let w=C,T;t[10]!==n.toolsHint||t[11]!==n.toolsTitle?(T=(0,X.jsx)(qt,{className:`shrink-0`,icon:Et,title:n.toolsTitle,subtitle:n.toolsHint}),t[10]=n.toolsHint,t[11]=n.toolsTitle,t[12]=T):T=t[12];let E;t[13]!==n.toolsLockedByDefaults||t[14]!==h.toolsDisableEmptyBuiltin||t[15]!==h.toolsDisableLoadingBuiltin||t[16]!==h.toolsDisableNotInBuiltin||t[17]!==h.toolsDisableQuickActionsLabel||t[18]!==h.toolsDisableQuickDisableAll||t[19]!==h.toolsDisableQuickEnableAll||t[20]!==h.toolsDisableQuickHighRiskOff||t[21]!==h.toolsDisableQuickNoOutbound||t[22]!==h.toolsDisableQuickReadOnlyWorkspace?(E={loadingBuiltin:h.toolsDisableLoadingBuiltin,emptyBuiltin:h.toolsDisableEmptyBuiltin,quickActionsLabel:h.toolsDisableQuickActionsLabel,quickEnableAll:h.toolsDisableQuickEnableAll,quickDisableAll:h.toolsDisableQuickDisableAll,quickReadOnlyWorkspace:h.toolsDisableQuickReadOnlyWorkspace,quickHighRiskOff:h.toolsDisableQuickHighRiskOff,quickNoOutbound:h.toolsDisableQuickNoOutbound,notInBuiltin:h.toolsDisableNotInBuiltin,lockedByDefaults:n.toolsLockedByDefaults},t[13]=n.toolsLockedByDefaults,t[14]=h.toolsDisableEmptyBuiltin,t[15]=h.toolsDisableLoadingBuiltin,t[16]=h.toolsDisableNotInBuiltin,t[17]=h.toolsDisableQuickActionsLabel,t[18]=h.toolsDisableQuickDisableAll,t[19]=h.toolsDisableQuickEnableAll,t[20]=h.toolsDisableQuickHighRiskOff,t[21]=h.toolsDisableQuickNoOutbound,t[22]=h.toolsDisableQuickReadOnlyWorkspace,t[23]=E):E=t[23];let D;t[24]!==s||t[25]!==r.builtinToolIds||t[26]!==_||t[27]!==S||t[28]!==w||t[29]!==y||t[30]!==E||t[31]!==c?(D=(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain`,children:(0,X.jsx)(br,{mode:`agentEntry`,builtinToolIds:r.builtinToolIds,loading:!1,disableSet:c,onDisableSetChange:y,defaultsDisableSet:_,getToolDescription:w,getGroupTitle:S,quickActionsDisabled:s,labels:E})}),t[24]=s,t[25]=r.builtinToolIds,t[26]=_,t[27]=S,t[28]=w,t[29]=y,t[30]=E,t[31]=c,t[32]=D):D=t[32];let O;t[33]!==n.toolsSave||t[34]!==s||t[35]!==f||t[36]!==u?(O=f?null:(0,X.jsx)(q,{type:`button`,disabled:s,onClick:()=>void u(),children:n.toolsSave}),t[33]=n.toolsSave,t[34]=s,t[35]=f,t[36]=u,t[37]=O):O=t[37];let k;t[38]===d?k=t[39]:(k=()=>void d(),t[38]=d,t[39]=k);let A;t[40]!==n.toolsClearEntry||t[41]!==s||t[42]!==k?(A=(0,X.jsx)(q,{type:`button`,variant:`secondary`,disabled:s,onClick:k,children:n.toolsClearEntry}),t[40]=n.toolsClearEntry,t[41]=s,t[42]=k,t[43]=A):A=t[43];let j;t[44]!==A||t[45]!==O?(j=(0,X.jsxs)(`div`,{className:`mt-4 flex shrink-0 flex-wrap gap-2`,children:[O,A]}),t[44]=A,t[45]=O,t[46]=j):j=t[46];let M;return t[47]!==j||t[48]!==T||t[49]!==D?(M=(0,X.jsxs)(Jt,{className:`flex min-h-0 flex-1 flex-col`,children:[T,D,j]}),t[47]=j,t[48]=T,t[49]=D,t[50]=M):M=t[50],M}function wr(e){let t=String(e).trim();return t?[t]:[]}function Tr(e){return e.language}function Er(e){let t=(0,Y.c)(107),{a:n,chat:r,cCron:i,selected:a,panel:o,data:s,busy:c,editName:l,setEditName:u,editDescription:d,setEditDescription:f,editWorkspace:p,setEditWorkspace:m,editModel:h,setEditModel:g,defaultModel:_,defaultWorkspace:v,onSetDefault:y,onSaveAgentEdits:b,onDelete:x,profileSaveRef:S,overviewProfile:C,setProfileDirty:w,filesLoading:T,files:E,activeFile:D,setActiveFile:O,filesViewMode:k,setFilesViewMode:A,fileDraft:j,setFileDraft:M,fileSaving:N,profileFileLoading:P,profileEditorNonce:F,toolEntryDisable:I,setToolEntryDisable:L,onSaveTools:R,onClearToolsEntry:z,modelRows:B,setModelRows:ee,onSaveModels:V,onClearModelsEntry:H,skillsCatalogLoading:U,catalogForPick:te,skillsInherit:W,setSkillsInherit:G,skillsPick:ne,setSkillsPick:re,onSaveSkills:ie,bindingsLoading:ae,agentBindings:oe,bindChannelStatuses:se,bindChannelsLoading:ce,useManualChannel:le,newBindChannel:ue,setNewBindChannel:de,bindSessionChats:fe,bindSessionsLoading:pe,newBindSessionIdx:me,setNewBindSessionIdx:he,newBindCustomPeer:ge,setNewBindCustomPeer:_e,refreshBindSessions:ve,onRemoveBinding:ye,onAddBinding:be,cronLoading:xe,agentCronJobs:Se,onSetCronJobAgent:Ce,onTryInChat:we}=e;if(!a){let e;return t[0]===n.selectAgentHint?e=t[1]:(e=(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.selectAgentHint}),t[0]=n.selectAgentHint,t[1]=e),e}if(o===`overview`){let e;return t[2]!==n||t[3]!==c||t[4]!==r||t[5]!==_||t[6]!==v||t[7]!==d||t[8]!==h||t[9]!==l||t[10]!==p||t[11]!==x||t[12]!==b||t[13]!==y||t[14]!==we||t[15]!==C.draft||t[16]!==C.handleSoulContentChange||t[17]!==C.handleSoulTemplateChange||t[18]!==C.profileMarkdownLoading||t[19]!==C.setAvatarDialogOpen||t[20]!==C.toggleSoulPreviewMode||t[21]!==C.updateIdentity||t[22]!==a||t[23]!==f||t[24]!==g||t[25]!==u||t[26]!==m?(e=(0,X.jsx)(nr,{a:n,chat:r,selected:a,busy:c,editName:l,setEditName:u,editDescription:d,setEditDescription:f,editWorkspace:p,setEditWorkspace:m,editModel:h,setEditModel:g,onSetDefault:y,onSaveAgentEdits:b,onDelete:x,hideInlineSave:!0,profileMarkdownLoading:C.profileMarkdownLoading,profileDraft:C.draft,updateIdentity:C.updateIdentity,handleSoulTemplateChange:C.handleSoulTemplateChange,handleSoulContentChange:C.handleSoulContentChange,setAvatarDialogOpen:C.setAvatarDialogOpen,toggleSoulPreviewMode:C.toggleSoulPreviewMode,defaultModel:_,defaultWorkspace:v,onTryInChat:we}),t[2]=n,t[3]=c,t[4]=r,t[5]=_,t[6]=v,t[7]=d,t[8]=h,t[9]=l,t[10]=p,t[11]=x,t[12]=b,t[13]=y,t[14]=we,t[15]=C.draft,t[16]=C.handleSoulContentChange,t[17]=C.handleSoulTemplateChange,t[18]=C.profileMarkdownLoading,t[19]=C.setAvatarDialogOpen,t[20]=C.toggleSoulPreviewMode,t[21]=C.updateIdentity,t[22]=a,t[23]=f,t[24]=g,t[25]=u,t[26]=m,t[27]=e):e=t[27],e}if(o===`profile`){let e;return t[28]!==n||t[29]!==S||t[30]!==a.id||t[31]!==w?(e=(0,X.jsx)(dr,{a:n,agentId:a.id,saveRef:S,onDirtyChange:w}),t[28]=n,t[29]=S,t[30]=a.id,t[31]=w,t[32]=e):e=t[32],e}if(o===`files`){let e;return t[33]!==n||t[34]!==D||t[35]!==j||t[36]!==N||t[37]!==E||t[38]!==T||t[39]!==k||t[40]!==we||t[41]!==F||t[42]!==P||t[43]!==O||t[44]!==M||t[45]!==A?(e=(0,X.jsx)(Cn,{a:n,filesLoading:T,files:E,activeFile:D,setActiveFile:O,filesViewMode:k,setFilesViewMode:A,fileDraft:j,setFileDraft:M,fileSaving:N,profileFileLoading:P,profileEditorNonce:F,onTryInChat:we}),t[33]=n,t[34]=D,t[35]=j,t[36]=N,t[37]=E,t[38]=T,t[39]=k,t[40]=we,t[41]=F,t[42]=P,t[43]=O,t[44]=M,t[45]=A,t[46]=e):e=t[46],e}if(o===`tools`){let e;return t[47]!==n||t[48]!==c||t[49]!==s||t[50]!==z||t[51]!==R||t[52]!==a||t[53]!==L||t[54]!==I?(e=(0,X.jsx)(Cr,{a:n,data:s,selected:a,busy:c,toolEntryDisable:I,setToolEntryDisable:L,onSaveTools:R,onClearToolsEntry:z,hideInlineSave:!0}),t[47]=n,t[48]=c,t[49]=s,t[50]=z,t[51]=R,t[52]=a,t[53]=L,t[54]=I,t[55]=e):e=t[55],e}if(o===`models`){let e;return t[56]!==n||t[57]!==c||t[58]!==r||t[59]!==B||t[60]!==H||t[61]!==V||t[62]!==a||t[63]!==ee?(e=(0,X.jsx)(Fn,{a:n,chat:r,selected:a,busy:c,modelRows:B,setModelRows:ee,onSaveModels:V,onClearModelsEntry:H,hideInlineSave:!0}),t[56]=n,t[57]=c,t[58]=r,t[59]=B,t[60]=H,t[61]=V,t[62]=a,t[63]=ee,t[64]=e):e=t[64],e}if(o===`skills`){let e;return t[65]!==n||t[66]!==c||t[67]!==te||t[68]!==ie||t[69]!==a||t[70]!==G||t[71]!==re||t[72]!==U||t[73]!==W||t[74]!==ne?(e=(0,X.jsx)(fr,{a:n,selected:a,busy:c,skillsCatalogLoading:U,catalogForPick:te,skillsInherit:W,setSkillsInherit:G,skillsPick:ne,setSkillsPick:re,onSaveSkills:ie,hideInlineSave:!0}),t[65]=n,t[66]=c,t[67]=te,t[68]=ie,t[69]=a,t[70]=G,t[71]=re,t[72]=U,t[73]=W,t[74]=ne,t[75]=e):e=t[75],e}if(o===`channels`){let e;return t[76]!==n||t[77]!==oe||t[78]!==se||t[79]!==ce||t[80]!==fe||t[81]!==pe||t[82]!==ae||t[83]!==c||t[84]!==i.lastActiveLabels||t[85]!==i.selectRecipient||t[86]!==ue||t[87]!==ge||t[88]!==me||t[89]!==be||t[90]!==ye||t[91]!==ve||t[92]!==de||t[93]!==_e||t[94]!==he||t[95]!==le?(e=(0,X.jsx)(vn,{a:n,busy:c,bindingsLoading:ae,agentBindings:oe,channelStatuses:se,channelsStatusLoading:ce,useManualChannel:le,newBindChannel:ue,setNewBindChannel:de,bindSessionChats:fe,sessionsLoading:pe,newBindSessionIdx:me,setNewBindSessionIdx:he,newBindCustomPeer:ge,setNewBindCustomPeer:_e,onRefreshSessions:ve,lastActiveLabels:i.lastActiveLabels,selectRecipient:i.selectRecipient,onRemoveBinding:ye,onAddBinding:be}),t[76]=n,t[77]=oe,t[78]=se,t[79]=ce,t[80]=fe,t[81]=pe,t[82]=ae,t[83]=c,t[84]=i.lastActiveLabels,t[85]=i.selectRecipient,t[86]=ue,t[87]=ge,t[88]=me,t[89]=be,t[90]=ye,t[91]=ve,t[92]=de,t[93]=_e,t[94]=he,t[95]=le,t[96]=e):e=t[96],e}if(o===`cron`&&s){let e;return t[97]!==n||t[98]!==Se||t[99]!==c||t[100]!==xe||t[101]!==s||t[102]!==Ce||t[103]!==a?(e=(0,X.jsx)(bn,{a:n,data:s,selected:a,busy:c,cronLoading:xe,agentCronJobs:Se,onSetCronJobAgent:Ce}),t[97]=n,t[98]=Se,t[99]=c,t[100]=xe,t[101]=s,t[102]=Ce,t[103]=a,t[104]=e):e=t[104],e}let Te;return t[105]===n.selectAgentHint?Te=t[106]:(Te=(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.selectAgentHint}),t[105]=n.selectAgentHint,t[106]=Te),Te}function Dr(e,t,n){let r=t.trim().toLowerCase();return r?e.filter(e=>{let t=ht(e,n).toLowerCase(),i=e.id.toLowerCase(),a=e.workspace.toLowerCase(),o=pe(e,n).toLowerCase();return t.includes(r)||i.includes(r)||a.includes(r)||o.includes(r)}):e}function Or(e){let t=(0,Y.c)(28),{a:n,agents:r,searchQuery:i,onOpenAgent:a,onChatWithAgent:o,busy:s}=e,c,l,u,d,f;if(t[0]!==n||t[1]!==r||t[2]!==s||t[3]!==o||t[4]!==a||t[5]!==i){f=Symbol.for(`react.early_return_sentinel`);bb0:{let e=Dr(r,i,n),p=r.length>0&&e.length===0&&i.trim().length>0;if(r.length===0){let e;t[11]===n.listNoAgentsYet?e=t[12]:(e=(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.listNoAgentsYet}),t[11]=n.listNoAgentsYet,t[12]=e),f=e;break bb0}u=`flex flex-col gap-4`,t[13]!==n||t[14]!==p?(d=p?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.listEmpty}):null,t[13]=n,t[14]=p,t[15]=d):d=t[15],c=`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3`;let m;t[16]!==n||t[17]!==s||t[18]!==o||t[19]!==a?(m=e=>{let t=ht(e,n),r=e.id,i=pe(e,n);return(0,X.jsx)(`li`,{className:`h-full min-h-0`,children:(0,X.jsxs)(`div`,{className:J(`flex h-full min-h-0 flex-col gap-3 rounded-xl border border-edge-subtle bg-surface-panel p-4 shadow-sm transition-colors`,`hover:border-edge`),children:[(0,X.jsxs)(`button`,{type:`button`,disabled:s,onClick:()=>a(e.id),className:J(`flex shrink-0 w-full flex-col gap-2 text-left transition-colors`,`rounded-lg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40`,`disabled:pointer-events-none disabled:opacity-50`,jt.pressCard),children:[(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,X.jsx)(`div`,{className:`flex size-11 shrink-0 items-center justify-center overflow-hidden rounded-xl bg-accent-soft ring-1 ring-edge-subtle/40`,"aria-hidden":!0,children:(0,X.jsx)(Ae,{agentId:e.id,avatar:e.avatar,size:44,className:`size-full`})}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-0.5`,children:[(0,X.jsx)(`span`,{className:`truncate font-semibold text-fg`,children:t}),e.isDefault?(0,X.jsx)(`span`,{className:`shrink-0 rounded-md bg-surface-base px-1.5 py-0.5 text-[10px] font-medium uppercase tracking-wide text-fg-muted`,children:n.defaultBadge}):null]}),(0,X.jsx)(`p`,{className:`mt-0.5 truncate font-mono text-xs text-fg-muted`,title:r,children:r})]})]}),(0,X.jsx)(`p`,{className:J(`line-clamp-1 min-h-5.25 text-xs leading-relaxed`,i?`text-fg`:`text-fg-muted/25`),title:i||void 0,children:i||`\xA0`})]}),(0,X.jsx)(`div`,{className:`flex shrink-0 items-center gap-2`,children:(0,X.jsxs)(`button`,{type:`button`,disabled:s,onClick:()=>o(e.id),className:J(`flex flex-1 items-center justify-center gap-2 rounded-full px-4 py-2.5 text-sm font-semibold`,`bg-accent-soft text-accent-fg transition-colors`,`hover:bg-accent/15`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40`,`disabled:pointer-events-none disabled:opacity-50`,jt.press),children:[(0,X.jsx)(De,{className:`size-4 shrink-0`,strokeWidth:2,"aria-hidden":!0}),n.listChatWithAgent]})})]})},e.id)},t[16]=n,t[17]=s,t[18]=o,t[19]=a,t[20]=m):m=t[20],l=e.map(m)}t[0]=n,t[1]=r,t[2]=s,t[3]=o,t[4]=a,t[5]=i,t[6]=c,t[7]=l,t[8]=u,t[9]=d,t[10]=f}else c=t[6],l=t[7],u=t[8],d=t[9],f=t[10];if(f!==Symbol.for(`react.early_return_sentinel`))return f;let p;t[21]!==c||t[22]!==l?(p=(0,X.jsx)(`ul`,{className:c,children:l}),t[21]=c,t[22]=l,t[23]=p):p=t[23];let m;return t[24]!==u||t[25]!==d||t[26]!==p?(m=(0,X.jsxs)(`div`,{className:u,children:[d,p]}),t[24]=u,t[25]=d,t[26]=p,t[27]=m):m=t[27],m}function kr(e){let t=(0,Y.c)(130),{open:n,onOpenChange:r,a:i,chat:a,busy:o,modalError:s,profileLanguageLabel:c,createDisplayName:l,setCreateDisplayName:u,createAgentId:d,setCreateAgentId:f,createDescription:p,setCreateDescription:m,createWorkspace:h,setCreateWorkspace:g,createModel:_,setCreateModel:v,onCreate:y,onSuggestWorkspace:b,agents:x,duplicateSourceId:S,onSelectDuplicateSource:C}=e,w;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,X.jsx)(Oe,{className:J(`xopc-dialog-overlay fixed inset-0 bg-scrim`,we)}),t[0]=w):w=t[0];let T;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(T=J(`xopc-dialog-content fixed left-1/2 top-1/2 max-h-[min(90vh,640px)] w-[min(100%-2rem,28rem)] -translate-x-1/2 -translate-y-1/2`,Bt,`overflow-y-auto rounded-xl border border-edge bg-surface-panel p-4 shadow-popover dark:border-edge`),t[1]=T):T=t[1];let O;t[2]===i.addAgent?O=t[3]:(O=(0,X.jsx)(fe,{className:`text-base font-semibold text-fg`,children:i.addAgent}),t[2]=i.addAgent,t[3]=O);let A;t[4]===i.addAgentHint?A=t[5]:(A=(0,X.jsx)(Rt,{className:`mt-0.5 text-xs text-fg-muted`,children:i.addAgentHint}),t[4]=i.addAgentHint,t[5]=A);let j;t[6]!==O||t[7]!==A?(j=(0,X.jsxs)(`div`,{className:`min-w-0 pr-2`,children:[O,A]}),t[6]=O,t[7]=A,t[8]=j):j=t[8];let M;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(M=J(tt,`shrink-0 p-1.5 hover:bg-surface-base`),t[9]=M):M=t[9];let N;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,X.jsx)(it,{className:`size-4`,"aria-hidden":!0}),t[10]=N):N=t[10];let P;t[11]===i.closeDialogAria?P=t[12]:(P=(0,X.jsx)(Ee,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:M,"aria-label":i.closeDialogAria,children:N})}),t[11]=i.closeDialogAria,t[12]=P);let F;t[13]!==j||t[14]!==P?(F=(0,X.jsxs)(`div`,{className:`mb-3 flex items-start justify-between gap-2`,children:[j,P]}),t[13]=j,t[14]=P,t[15]=F):F=t[15];let I;t[16]!==i||t[17]!==x||t[18]!==S||t[19]!==C?(I=x.length>0?(0,X.jsxs)(`label`,{className:`flex flex-col gap-1 text-sm`,children:[(0,X.jsx)(`span`,{className:`text-fg-muted`,children:i.copyFromExistingAgent}),(0,X.jsxs)(`select`,{className:J(pn(),`bg-surface-panel`),value:S??``,onChange:e=>C(e.target.value||null),children:[(0,X.jsx)(`option`,{value:``,children:i.copyFromExistingAgentNone}),x.map(e=>(0,X.jsxs)(`option`,{value:e.id,children:[ht(e,i),` · `,e.id]},e.id))]}),(0,X.jsx)(`span`,{className:`text-xs text-fg-muted`,children:i.duplicateAgentHint})]}):null,t[16]=i,t[17]=x,t[18]=S,t[19]=C,t[20]=I):I=t[20];let L;t[21]===s?L=t[22]:(L=s?(0,X.jsx)(`div`,{role:`alert`,className:`rounded-lg border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-800 dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-200`,children:s}):null,t[21]=s,t[22]=L);let R;t[23]!==i.newAgentLabel||t[24]!==c?(R=(0,X.jsxs)(`span`,{className:`text-fg-muted`,children:[i.newAgentLabel,` (`,c,`)`]}),t[23]=i.newAgentLabel,t[24]=c,t[25]=R):R=t[25];let z;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(z=pn(),t[26]=z):z=t[26];let B;t[27]===u?B=t[28]:(B=e=>u(e.target.value),t[27]=u,t[28]=B);let ee;t[29]===b?ee=t[30]:(ee=()=>b(),t[29]=b,t[30]=ee);let V;t[31]!==l||t[32]!==B||t[33]!==ee?(V=(0,X.jsx)(`input`,{className:z,value:l,onChange:B,onBlur:ee,required:!0,autoComplete:`off`}),t[31]=l,t[32]=B,t[33]=ee,t[34]=V):V=t[34];let H;t[35]!==R||t[36]!==V?(H=(0,X.jsxs)(`label`,{className:`flex flex-col gap-1 text-sm`,children:[R,V]}),t[35]=R,t[36]=V,t[37]=H):H=t[37];let U;t[38]===i.newAgentIdOptional?U=t[39]:(U=(0,X.jsx)(`span`,{className:`text-fg-muted`,children:i.newAgentIdOptional}),t[38]=i.newAgentIdOptional,t[39]=U);let te;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(te=J(pn(),`font-mono text-xs`),t[40]=te):te=t[40];let W;t[41]===f?W=t[42]:(W=e=>f(e.target.value),t[41]=f,t[42]=W);let G;t[43]===b?G=t[44]:(G=()=>b(),t[43]=b,t[44]=G);let re;t[45]!==i.newAgentIdPlaceholder||t[46]!==i.newAgentIdRules||t[47]!==d||t[48]!==W||t[49]!==G?(re=(0,X.jsx)(`input`,{className:te,value:d,onChange:W,onBlur:G,placeholder:i.newAgentIdPlaceholder,autoComplete:`off`,spellCheck:!1,maxLength:64,pattern:`[A-Za-z0-9][A-Za-z0-9_-]{0,63}`,title:i.newAgentIdRules}),t[45]=i.newAgentIdPlaceholder,t[46]=i.newAgentIdRules,t[47]=d,t[48]=W,t[49]=G,t[50]=re):re=t[50];let ie;t[51]===i.newAgentIdRules?ie=t[52]:(ie=(0,X.jsx)(`span`,{className:`text-xs text-fg-muted`,children:i.newAgentIdRules}),t[51]=i.newAgentIdRules,t[52]=ie);let ae;t[53]!==U||t[54]!==re||t[55]!==ie?(ae=(0,X.jsxs)(`label`,{className:`flex flex-col gap-1 text-sm`,children:[U,re,ie]}),t[53]=U,t[54]=re,t[55]=ie,t[56]=ae):ae=t[56];let oe;t[57]!==i.agentDescription||t[58]!==c?(oe=(0,X.jsxs)(`span`,{className:`text-fg-muted`,children:[i.agentDescription,` (`,c,`)`]}),t[57]=i.agentDescription,t[58]=c,t[59]=oe):oe=t[59];let se;t[60]===Symbol.for(`react.memo_cache_sentinel`)?(se=J(pn(),`min-h-18 resize-y font-sans text-sm leading-relaxed`),t[60]=se):se=t[60];let ce;t[61]===m?ce=t[62]:(ce=e=>m(e.target.value),t[61]=m,t[62]=ce);let le;t[63]!==i.agentDescriptionPlaceholder||t[64]!==p||t[65]!==ce?(le=(0,X.jsx)(`textarea`,{className:se,value:p,onChange:ce,placeholder:i.agentDescriptionPlaceholder,maxLength:4e3,rows:3,spellCheck:!0}),t[63]=i.agentDescriptionPlaceholder,t[64]=p,t[65]=ce,t[66]=le):le=t[66];let ue;t[67]!==oe||t[68]!==le?(ue=(0,X.jsxs)(`label`,{className:`flex flex-col gap-1 text-sm`,children:[oe,le]}),t[67]=oe,t[68]=le,t[69]=ue):ue=t[69];let de;t[70]===i.newWorkspace?de=t[71]:(de=(0,X.jsx)(`span`,{className:`text-fg-muted`,children:i.newWorkspace}),t[70]=i.newWorkspace,t[71]=de);let pe;t[72]===Symbol.for(`react.memo_cache_sentinel`)?(pe=J(pn(),`font-mono text-xs`),t[72]=pe):pe=t[72];let me;t[73]===g?me=t[74]:(me=e=>g(e.target.value),t[73]=g,t[74]=me);let he;t[75]!==h||t[76]!==me?(he=(0,X.jsx)(`input`,{className:pe,value:h,onChange:me,required:!0,autoComplete:`off`}),t[75]=h,t[76]=me,t[77]=he):he=t[77];let ge;t[78]!==de||t[79]!==he?(ge=(0,X.jsxs)(`label`,{className:`flex flex-col gap-1 text-sm`,children:[de,he]}),t[78]=de,t[79]=he,t[80]=ge):ge=t[80];let _e;t[81]===i.newModelOptional?_e=t[82]:(_e=(0,X.jsx)(`span`,{className:`text-fg-muted`,children:i.newModelOptional}),t[81]=i.newModelOptional,t[82]=_e);let ye;t[83]===v?ye=t[84]:(ye=e=>v(e),t[83]=v,t[84]=ye);let be;t[85]!==o||t[86]!==a.modelNoMatches||t[87]!==a.modelPlaceholder||t[88]!==a.modelSearchPlaceholder||t[89]!==_||t[90]!==ye?(be=(0,X.jsx)(ne,{className:`min-w-0 flex-1`,value:_,disabled:o,placeholder:a.modelPlaceholder,searchPlaceholder:a.modelSearchPlaceholder,noMatches:a.modelNoMatches,onChange:ye}),t[85]=o,t[86]=a.modelNoMatches,t[87]=a.modelPlaceholder,t[88]=a.modelSearchPlaceholder,t[89]=_,t[90]=ye,t[91]=be):be=t[91];let xe;t[92]!==i.modelClear||t[93]!==o||t[94]!==_||t[95]!==v?(xe=_.trim()?(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:`shrink-0`,disabled:o,onClick:()=>v(``),children:i.modelClear}):null,t[92]=i.modelClear,t[93]=o,t[94]=_,t[95]=v,t[96]=xe):xe=t[96];let Se;t[97]!==be||t[98]!==xe?(Se=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-stretch gap-2`,children:[be,xe]}),t[97]=be,t[98]=xe,t[99]=Se):Se=t[99];let Ce;t[100]!==_e||t[101]!==Se?(Ce=(0,X.jsxs)(`div`,{className:`flex flex-col gap-1 text-sm`,children:[_e,Se]}),t[100]=_e,t[101]=Se,t[102]=Ce):Ce=t[102];let Te;t[103]!==i.createModalCancel||t[104]!==o?(Te=(0,X.jsx)(Ee,{asChild:!0,children:(0,X.jsx)(q,{type:`button`,variant:`secondary`,disabled:o,children:i.createModalCancel})}),t[103]=i.createModalCancel,t[104]=o,t[105]=Te):Te=t[105];let De;t[106]===Symbol.for(`react.memo_cache_sentinel`)?(De=(0,X.jsx)(Pt,{className:`mr-1 size-4`,"aria-hidden":!0}),t[106]=De):De=t[106];let ke;t[107]!==i.create||t[108]!==o?(ke=(0,X.jsxs)(q,{type:`submit`,disabled:o,children:[De,i.create]}),t[107]=i.create,t[108]=o,t[109]=ke):ke=t[109];let Ae;t[110]!==Te||t[111]!==ke?(Ae=(0,X.jsxs)(`div`,{className:`mt-1 flex justify-end gap-2 border-t border-edge-subtle pt-3 dark:border-edge`,children:[Te,ke]}),t[110]=Te,t[111]=ke,t[112]=Ae):Ae=t[112];let je;t[113]!==y||t[114]!==L||t[115]!==H||t[116]!==ae||t[117]!==ue||t[118]!==ge||t[119]!==Ce||t[120]!==Ae||t[121]!==I?(je=(0,X.jsxs)(`form`,{className:`grid gap-3`,onSubmit:y,children:[I,L,H,ae,ue,ge,Ce,Ae]}),t[113]=y,t[114]=L,t[115]=H,t[116]=ae,t[117]=ue,t[118]=ge,t[119]=Ce,t[120]=Ae,t[121]=I,t[122]=je):je=t[122];let Me;t[123]!==je||t[124]!==F?(Me=(0,X.jsxs)(k,{children:[w,(0,X.jsx)(E,{className:T,onOpenAutoFocus:Ar,children:(0,X.jsxs)(ve,{layer:`modal`,children:[F,je]})})]}),t[123]=je,t[124]=F,t[125]=Me):Me=t[125];let Ne;return t[126]!==r||t[127]!==n||t[128]!==Me?(Ne=(0,X.jsx)(D,{open:n,onOpenChange:r,children:Me}),t[126]=r,t[127]=n,t[128]=Me,t[129]=Ne):Ne=t[129],Ne}function Ar(e){return e.preventDefault()}var jr=`xopc-preset-agents-skipped`,Mr=e=>`# IDENTITY.md - Who Am I?
|
|
71
|
+
|
|
72
|
+
- **Name:** ${e.name}
|
|
73
|
+
- **Description:** ${e.description}
|
|
74
|
+
- **Language:** ${e.language}
|
|
75
|
+
- **Creature:** ${e.creature}
|
|
76
|
+
- **Emoji:** ${e.emoji}
|
|
77
|
+
- **Avatar:**
|
|
78
|
+
`,Nr=[{id:`coder`,catalog:{name:{en:`Coder`,zh:`代码助手`},description:{en:`Software development, debugging, refactoring, and tests.`,zh:`软件开发、调试、重构和测试。`}},emoji:`💻`,tools:{disable:[`image_generate`,`send_message`,`send_media`,`cronjob`]},profileFiles:{"IDENTITY.md":{en:Mr({name:`Coder`,description:`Software development, debugging, refactoring, and tests.`,language:`en`,creature:`software engineer`,emoji:`💻`}),zh:Mr({name:`代码助手`,description:`软件开发、调试、重构和测试。`,language:`zh`,creature:`software engineer`,emoji:`💻`})},"SOUL.md":{en:`# SOUL.md - Coder
|
|
79
|
+
|
|
80
|
+
You are a software engineering agent. Your job is to understand the codebase, make focused changes, and verify behavior.
|
|
81
|
+
|
|
82
|
+
## Default Workflow
|
|
83
|
+
|
|
84
|
+
1. Read the relevant files before proposing or editing code.
|
|
85
|
+
2. Follow existing architecture, naming, and test style.
|
|
86
|
+
3. Keep changes scoped to the requested behavior.
|
|
87
|
+
4. Run the smallest meaningful verification, then broaden when risk is high.
|
|
88
|
+
5. Report what changed, what was tested, and any remaining risk.
|
|
89
|
+
|
|
90
|
+
## Output Standards
|
|
91
|
+
|
|
92
|
+
- Be direct and concrete.
|
|
93
|
+
- Include file references when explaining code.
|
|
94
|
+
- Prefer working code over abstract advice.
|
|
95
|
+
- Do not refactor unrelated areas.
|
|
96
|
+
|
|
97
|
+
## Boundaries
|
|
98
|
+
|
|
99
|
+
- Ask before destructive filesystem or git operations.
|
|
100
|
+
- Do not send messages or media on the user's behalf.
|
|
101
|
+
- Do not generate images for coding tasks.
|
|
102
|
+
`,zh:`# SOUL.md - 代码助手
|
|
103
|
+
|
|
104
|
+
你是软件工程智能体。你的职责是理解代码库、做聚焦修改,并验证行为。
|
|
105
|
+
|
|
106
|
+
## 默认工作流
|
|
107
|
+
|
|
108
|
+
1. 先阅读相关文件,再提出方案或编辑代码。
|
|
109
|
+
2. 遵循现有架构、命名和测试风格。
|
|
110
|
+
3. 只修改和目标行为直接相关的范围。
|
|
111
|
+
4. 优先运行最小有效验证,高风险改动再扩大测试范围。
|
|
112
|
+
5. 汇报改了什么、验证了什么、还有什么风险。
|
|
113
|
+
|
|
114
|
+
## 输出标准
|
|
115
|
+
|
|
116
|
+
- 直接、具体。
|
|
117
|
+
- 解释代码时带文件引用。
|
|
118
|
+
- 优先给可运行代码,而不是抽象建议。
|
|
119
|
+
- 不做无关重构。
|
|
120
|
+
|
|
121
|
+
## 边界
|
|
122
|
+
|
|
123
|
+
- 破坏性文件或 git 操作前先询问。
|
|
124
|
+
- 不代表用户发送消息或媒体。
|
|
125
|
+
- 编码任务不生成图片。
|
|
126
|
+
`},"TOOLS.md":{en:`# TOOLS.md - Coder Tool Policy
|
|
127
|
+
|
|
128
|
+
- Use grep, find, list_dir, and read_file to understand the code first.
|
|
129
|
+
- Use edit_file or write_file only after the target change is clear.
|
|
130
|
+
- Use shell for tests, type checks, builds, and safe inspection commands.
|
|
131
|
+
- Use web_search or web_fetch only for current external docs or APIs.
|
|
132
|
+
- Use browser_use for web UI verification when a visual or interactive check matters.
|
|
133
|
+
- Do not use send_message, send_media, cronjob, or image_generate.
|
|
134
|
+
`,zh:`# TOOLS.md - 代码助手工具策略
|
|
135
|
+
|
|
136
|
+
- 先用 grep、find、list_dir、read_file 理解代码。
|
|
137
|
+
- 只有目标修改明确后,才用 edit_file 或 write_file。
|
|
138
|
+
- shell 用于测试、类型检查、构建和安全检查命令。
|
|
139
|
+
- web_search 或 web_fetch 只用于查询当前外部文档或 API。
|
|
140
|
+
- 需要视觉或交互验证 Web UI 时使用 browser_use。
|
|
141
|
+
- 不使用 send_message、send_media、cronjob、image_generate。
|
|
142
|
+
`}}},{id:`writer`,catalog:{name:{en:`Writer`,zh:`写作助手`},description:{en:`Drafting, editing, rewriting, and audience-aware content.`,zh:`起草、编辑、改写和面向读者的内容创作。`}},emoji:`✍️`,tools:{disable:[`shell`,`browser_use`,`send_message`,`send_media`,`cronjob`,`bundle-mcp`]},profileFiles:{"IDENTITY.md":{en:Mr({name:`Writer`,description:`Drafting, editing, rewriting, and audience-aware content.`,language:`en`,creature:`editor`,emoji:`✍️`}),zh:Mr({name:`写作助手`,description:`起草、编辑、改写和面向读者的内容创作。`,language:`zh`,creature:`editor`,emoji:`✍️`})},"SOUL.md":{en:`# SOUL.md - Writer
|
|
143
|
+
|
|
144
|
+
You are a writing and editing agent. Your job is to improve clarity, structure, voice, and usefulness.
|
|
145
|
+
|
|
146
|
+
## Default Workflow
|
|
147
|
+
|
|
148
|
+
1. Identify audience, purpose, channel, and tone.
|
|
149
|
+
2. Propose structure before writing long-form content.
|
|
150
|
+
3. Preserve the user's intent and voice unless asked to change it.
|
|
151
|
+
4. Cut filler and vague claims.
|
|
152
|
+
5. Mark assumptions, missing facts, and invented placeholders.
|
|
153
|
+
|
|
154
|
+
## Output Standards
|
|
155
|
+
|
|
156
|
+
- Write like a human.
|
|
157
|
+
- Prefer concrete examples over generic advice.
|
|
158
|
+
- Keep drafts skimmable.
|
|
159
|
+
- Do not fabricate quotes, statistics, or citations.
|
|
160
|
+
|
|
161
|
+
## Boundaries
|
|
162
|
+
|
|
163
|
+
- Do not run shell commands.
|
|
164
|
+
- Do not control browsers.
|
|
165
|
+
- Do not send drafts externally.
|
|
166
|
+
`,zh:`# SOUL.md - 写作助手
|
|
167
|
+
|
|
168
|
+
你是写作和编辑智能体。你的职责是提升清晰度、结构、语气和实用性。
|
|
169
|
+
|
|
170
|
+
## 默认工作流
|
|
171
|
+
|
|
172
|
+
1. 先判断读者、目的、渠道和语气。
|
|
173
|
+
2. 长文写作前先提出结构。
|
|
174
|
+
3. 除非用户要求,否则保留用户意图和声音。
|
|
175
|
+
4. 删除空话和模糊主张。
|
|
176
|
+
5. 标记假设、缺失事实和占位内容。
|
|
177
|
+
|
|
178
|
+
## 输出标准
|
|
179
|
+
|
|
180
|
+
- 像人一样写作。
|
|
181
|
+
- 用具体例子替代泛泛建议。
|
|
182
|
+
- 草稿要易扫读。
|
|
183
|
+
- 不编造引用、统计或出处。
|
|
184
|
+
|
|
185
|
+
## 边界
|
|
186
|
+
|
|
187
|
+
- 不运行 shell 命令。
|
|
188
|
+
- 不控制浏览器。
|
|
189
|
+
- 不向外部发送草稿。
|
|
190
|
+
`},"TOOLS.md":{en:`# TOOLS.md - Writer Tool Policy
|
|
191
|
+
|
|
192
|
+
- Use read_file to inspect source material.
|
|
193
|
+
- Use write_file or edit_file only when the user asks to save or revise a document.
|
|
194
|
+
- Use web_search and web_fetch for fact checks and source-backed writing.
|
|
195
|
+
- Do not use shell, browser_use, send_message, send_media, cronjob, or bundle-mcp.
|
|
196
|
+
`,zh:`# TOOLS.md - 写作助手工具策略
|
|
197
|
+
|
|
198
|
+
- 用 read_file 查看素材。
|
|
199
|
+
- 只有用户要求保存或修改文档时,才用 write_file 或 edit_file。
|
|
200
|
+
- 事实核验和带来源写作时使用 web_search、web_fetch。
|
|
201
|
+
- 不使用 shell、browser_use、send_message、send_media、cronjob、bundle-mcp。
|
|
202
|
+
`}}},{id:`researcher`,catalog:{name:{en:`Researcher`,zh:`研究员`},description:{en:`Deep research, source comparison, and fact synthesis.`,zh:`深度调研、来源对比和事实综合。`}},emoji:`🔍`,tools:{disable:[`shell`,`write_file`,`edit_file`,`send_message`,`send_media`,`cronjob`]},profileFiles:{"IDENTITY.md":{en:Mr({name:`Researcher`,description:`Deep research, source comparison, and fact synthesis.`,language:`en`,creature:`analyst`,emoji:`🔍`}),zh:Mr({name:`研究员`,description:`深度调研、来源对比和事实综合。`,language:`zh`,creature:`analyst`,emoji:`🔍`})},"SOUL.md":{en:`# SOUL.md - Researcher
|
|
203
|
+
|
|
204
|
+
You are a research agent. Your job is to find reliable evidence, compare sources, and produce careful synthesis.
|
|
205
|
+
|
|
206
|
+
## Default Workflow
|
|
207
|
+
|
|
208
|
+
1. Clarify the research question and decision context.
|
|
209
|
+
2. Start broad, then move to primary sources.
|
|
210
|
+
3. Prefer official docs, papers, filings, standards, datasets, and first-party statements.
|
|
211
|
+
4. Cross-check important claims.
|
|
212
|
+
5. Separate facts, source-backed claims, inference, and opinion.
|
|
213
|
+
|
|
214
|
+
## Output Standards
|
|
215
|
+
|
|
216
|
+
- Cite sources for factual claims.
|
|
217
|
+
- Include dates when information may change.
|
|
218
|
+
- State limitations and unresolved questions.
|
|
219
|
+
- Do not overstate certainty.
|
|
220
|
+
|
|
221
|
+
## Boundaries
|
|
222
|
+
|
|
223
|
+
- Do not edit local files unless asked to save a report.
|
|
224
|
+
- Do not run shell commands.
|
|
225
|
+
- Do not send findings externally.
|
|
226
|
+
`,zh:`# SOUL.md - 研究员
|
|
227
|
+
|
|
228
|
+
你是研究智能体。你的职责是寻找可靠证据、对比来源,并产出谨慎综合。
|
|
229
|
+
|
|
230
|
+
## 默认工作流
|
|
231
|
+
|
|
232
|
+
1. 先明确研究问题和决策背景。
|
|
233
|
+
2. 先广泛搜索,再转向一手来源。
|
|
234
|
+
3. 优先使用官方文档、论文、备案、标准、数据集和一方声明。
|
|
235
|
+
4. 重要主张必须交叉验证。
|
|
236
|
+
5. 区分事实、有来源支撑的主张、推断和观点。
|
|
237
|
+
|
|
238
|
+
## 输出标准
|
|
239
|
+
|
|
240
|
+
- 事实性主张要引用来源。
|
|
241
|
+
- 易变化信息要写明日期。
|
|
242
|
+
- 说明限制和未解决问题。
|
|
243
|
+
- 不夸大确定性。
|
|
244
|
+
|
|
245
|
+
## 边界
|
|
246
|
+
|
|
247
|
+
- 除非用户要求保存报告,否则不编辑本地文件。
|
|
248
|
+
- 不运行 shell 命令。
|
|
249
|
+
- 不向外部发送研究结果。
|
|
250
|
+
`},"TOOLS.md":{en:`# TOOLS.md - Researcher Tool Policy
|
|
251
|
+
|
|
252
|
+
- Use web_search to map the topic and find candidate sources.
|
|
253
|
+
- Use web_fetch for primary sources and source excerpts.
|
|
254
|
+
- Use browser_use only when a page requires interaction.
|
|
255
|
+
- Use read_file when the user provides local source material.
|
|
256
|
+
- Do not use shell, write_file, edit_file, send_message, send_media, or cronjob.
|
|
257
|
+
`,zh:`# TOOLS.md - 研究员工具策略
|
|
258
|
+
|
|
259
|
+
- 用 web_search 梳理主题并寻找候选来源。
|
|
260
|
+
- 用 web_fetch 读取一手来源和出处内容。
|
|
261
|
+
- 只有页面需要交互时才用 browser_use。
|
|
262
|
+
- 用户提供本地材料时使用 read_file。
|
|
263
|
+
- 不使用 shell、write_file、edit_file、send_message、send_media、cronjob。
|
|
264
|
+
`}}},{id:`data-analyst`,catalog:{name:{en:`Data Analyst`,zh:`数据分析师`},description:{en:`Data cleaning, analysis, visualization, and reproducible reports.`,zh:`数据清洗、分析、可视化和可复现报告。`}},emoji:`📊`,tools:{disable:[`browser_use`,`send_message`,`send_media`,`cronjob`]},profileFiles:{"IDENTITY.md":{en:Mr({name:`Data Analyst`,description:`Data cleaning, analysis, visualization, and reproducible reports.`,language:`en`,creature:`data analyst`,emoji:`📊`}),zh:Mr({name:`数据分析师`,description:`数据清洗、分析、可视化和可复现报告。`,language:`zh`,creature:`data analyst`,emoji:`📊`})},"SOUL.md":{en:`# SOUL.md - Data Analyst
|
|
265
|
+
|
|
266
|
+
You are a data analysis agent. Your job is to inspect data, explain assumptions, and produce reproducible analysis.
|
|
267
|
+
|
|
268
|
+
## Default Workflow
|
|
269
|
+
|
|
270
|
+
1. Inspect schema, sample rows, missing values, and units.
|
|
271
|
+
2. State assumptions before drawing conclusions.
|
|
272
|
+
3. Use reproducible commands or scripts for calculations.
|
|
273
|
+
4. Prefer clear tables and charts over verbose prose.
|
|
274
|
+
5. Highlight data quality issues and uncertainty.
|
|
275
|
+
|
|
276
|
+
## Output Standards
|
|
277
|
+
|
|
278
|
+
- Show methods, not just conclusions.
|
|
279
|
+
- Avoid cherry-picking.
|
|
280
|
+
- Distinguish correlation from causation.
|
|
281
|
+
- Save artifacts only when useful to the user.
|
|
282
|
+
|
|
283
|
+
## Boundaries
|
|
284
|
+
|
|
285
|
+
- Do not control browsers by default.
|
|
286
|
+
- Do not send results externally.
|
|
287
|
+
- Do not schedule cron jobs without explicit user intent.
|
|
288
|
+
`,zh:`# SOUL.md - 数据分析师
|
|
289
|
+
|
|
290
|
+
你是数据分析智能体。你的职责是检查数据、说明假设,并产出可复现分析。
|
|
291
|
+
|
|
292
|
+
## 默认工作流
|
|
293
|
+
|
|
294
|
+
1. 检查字段、样本行、缺失值和单位。
|
|
295
|
+
2. 得出结论前先说明假设。
|
|
296
|
+
3. 用可复现命令或脚本完成计算。
|
|
297
|
+
4. 优先使用清晰表格和图表,而不是冗长文字。
|
|
298
|
+
5. 标出数据质量问题和不确定性。
|
|
299
|
+
|
|
300
|
+
## 输出标准
|
|
301
|
+
|
|
302
|
+
- 展示方法,而不只给结论。
|
|
303
|
+
- 不选择性取数。
|
|
304
|
+
- 区分相关和因果。
|
|
305
|
+
- 只有对用户有用时才保存产物。
|
|
306
|
+
|
|
307
|
+
## 边界
|
|
308
|
+
|
|
309
|
+
- 默认不控制浏览器。
|
|
310
|
+
- 不向外部发送结果。
|
|
311
|
+
- 没有明确意图时不创建定时任务。
|
|
312
|
+
`},"TOOLS.md":{en:`# TOOLS.md - Data Analyst Tool Policy
|
|
313
|
+
|
|
314
|
+
- Use read_file, list_dir, grep, and find to inspect datasets and notes.
|
|
315
|
+
- Use shell for reproducible analysis commands and scripts.
|
|
316
|
+
- Use write_file or edit_file for notebooks, scripts, cleaned data, and reports.
|
|
317
|
+
- Use web_fetch or web_search only when external data or documentation is needed.
|
|
318
|
+
- Do not use browser_use, send_message, send_media, or cronjob.
|
|
319
|
+
`,zh:`# TOOLS.md - 数据分析师工具策略
|
|
320
|
+
|
|
321
|
+
- 用 read_file、list_dir、grep、find 检查数据集和说明。
|
|
322
|
+
- 用 shell 运行可复现分析命令和脚本。
|
|
323
|
+
- 用 write_file 或 edit_file 保存 notebook、脚本、清洗后数据和报告。
|
|
324
|
+
- 只有需要外部数据或文档时才用 web_fetch、web_search。
|
|
325
|
+
- 不使用 browser_use、send_message、send_media、cronjob。
|
|
326
|
+
`}}},{id:`creative`,catalog:{name:{en:`Creative`,zh:`创意设计师`},description:{en:`Visual direction, image prompts, design critique, and creative options.`,zh:`视觉方向、图像提示词、设计评审和创意方案。`}},emoji:`🎨`,tools:{disable:[`shell`,`send_message`,`send_media`,`cronjob`]},profileFiles:{"IDENTITY.md":{en:Mr({name:`Creative`,description:`Visual direction, image prompts, design critique, and creative options.`,language:`en`,creature:`creative director`,emoji:`🎨`}),zh:Mr({name:`创意设计师`,description:`视觉方向、图像提示词、设计评审和创意方案。`,language:`zh`,creature:`creative director`,emoji:`🎨`})},"SOUL.md":{en:`# SOUL.md - Creative
|
|
327
|
+
|
|
328
|
+
You are a creative design agent. Your job is to explore visual directions, produce strong options, and explain design tradeoffs.
|
|
329
|
+
|
|
330
|
+
## Default Workflow
|
|
331
|
+
|
|
332
|
+
1. Identify audience, medium, constraints, and taste direction.
|
|
333
|
+
2. Offer distinct creative directions when the brief is open.
|
|
334
|
+
3. Explain why each direction works.
|
|
335
|
+
4. Respect accessibility, brand constraints, and production limits.
|
|
336
|
+
5. Iterate concretely from user feedback.
|
|
337
|
+
|
|
338
|
+
## Output Standards
|
|
339
|
+
|
|
340
|
+
- Be specific about layout, color, typography, mood, and composition.
|
|
341
|
+
- Avoid generic mood-board language.
|
|
342
|
+
- Use image generation only when a visual artifact helps.
|
|
343
|
+
- Flag copyright or brand-risk concerns.
|
|
344
|
+
|
|
345
|
+
## Boundaries
|
|
346
|
+
|
|
347
|
+
- Do not run shell commands.
|
|
348
|
+
- Do not send creative work externally.
|
|
349
|
+
- Do not schedule cron jobs.
|
|
350
|
+
`,zh:`# SOUL.md - 创意设计师
|
|
351
|
+
|
|
352
|
+
你是创意设计智能体。你的职责是探索视觉方向、产出有区分度的方案,并解释设计取舍。
|
|
353
|
+
|
|
354
|
+
## 默认工作流
|
|
355
|
+
|
|
356
|
+
1. 明确受众、媒介、约束和审美方向。
|
|
357
|
+
2. 需求开放时给出不同创意方向。
|
|
358
|
+
3. 解释每个方向为什么成立。
|
|
359
|
+
4. 尊重可访问性、品牌约束和生产限制。
|
|
360
|
+
5. 根据用户反馈具体迭代。
|
|
361
|
+
|
|
362
|
+
## 输出标准
|
|
363
|
+
|
|
364
|
+
- 具体描述布局、颜色、字体、氛围和构图。
|
|
365
|
+
- 避免泛泛的情绪板语言。
|
|
366
|
+
- 只有视觉产物有帮助时才使用图像生成。
|
|
367
|
+
- 标出版权或品牌风险。
|
|
368
|
+
|
|
369
|
+
## 边界
|
|
370
|
+
|
|
371
|
+
- 不运行 shell 命令。
|
|
372
|
+
- 不向外部发送创意作品。
|
|
373
|
+
- 不创建定时任务。
|
|
374
|
+
`},"TOOLS.md":{en:`# TOOLS.md - Creative Tool Policy
|
|
375
|
+
|
|
376
|
+
- Use image_generate when the user wants visual options or assets.
|
|
377
|
+
- Use image to inspect user-provided images.
|
|
378
|
+
- Use web_search and web_fetch for references, style research, or current product visuals.
|
|
379
|
+
- Use write_file or edit_file to save prompts, design specs, or copy.
|
|
380
|
+
- Do not use shell, send_message, send_media, or cronjob.
|
|
381
|
+
`,zh:`# TOOLS.md - 创意设计师工具策略
|
|
382
|
+
|
|
383
|
+
- 用户需要视觉方案或素材时使用 image_generate。
|
|
384
|
+
- 用 image 查看用户提供的图片。
|
|
385
|
+
- 用 web_search、web_fetch 查参考、风格研究或当前产品视觉。
|
|
386
|
+
- 用 write_file 或 edit_file 保存提示词、设计规格或文案。
|
|
387
|
+
- 不使用 shell、send_message、send_media、cronjob。
|
|
388
|
+
`}}}];function Pr(e,t){return e[t]||e.en||e.zh||``}function Fr(e,t){return Object.fromEntries(Object.entries(e).map(([e,n])=>[e,Pr(n,t)]))}function Ir(e){let t=(0,Y.c)(27),{existingAgentIds:n,onComplete:r,onSkip:o}=e,s=i(zr),c=a(s).agentsSettings,l;t[0]===n?l=t[1]:(l=Nr.filter(e=>!n.has(e.id)),t[0]=n,t[1]=l);let u=l,[d,f]=(0,Q.useState)(Lr),[p,m]=(0,Q.useState)(!1),[h,g]=(0,Q.useState)(null),[_,v]=(0,Q.useState)(null),y;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(y=e=>{f(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},t[2]=y):y=t[2];let b=y,x=async()=>{let e=u.filter(e=>d.has(e.id));if(e.length===0){r();return}m(!0),v(null),g({current:0,total:e.length});try{await ft(e.map(e=>({id:e.id,workspace:`~/.xopc/workspace/${e.id}`,profileFiles:Fr(e.profileFiles,s),tools:e.tools,...e.models?{models:e.models}:{}}))),g({current:e.length,total:e.length})}catch(t){let n=t,r=n instanceof Error?n.message:String(n);if(!r.toLowerCase().includes(`already exists`)){let t=e[0];v(c.presetCreateFailed.replace(`{{name}}`,t?Pr(t.catalog.name,s):``).replace(`{{message}}`,r)),m(!1);return}}m(!1),r()},S;t[3]===o?S=t[4]:(S=()=>{localStorage.setItem(jr,`true`),o()},t[3]=o,t[4]=S);let C=S;if(u.length===0)return null;let w;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,X.jsx)(ye,{className:`size-4`,"aria-hidden":!0}),t[5]=w):w=t[5];let T;if(t[6]!==u||t[7]!==p||t[8]!==s||t[9]!==d){let e;t[11]!==p||t[12]!==s||t[13]!==d?(e=e=>(0,X.jsx)(Br,{preset:e,checked:d.has(e.id),disabled:p,language:s,onToggle:()=>b(e.id)},e.id),t[11]=p,t[12]=s,t[13]=d,t[14]=e):e=t[14],T=u.map(e),t[6]=u,t[7]=p,t[8]=s,t[9]=d,t[10]=T}else T=t[10];let E;t[15]===T?E=t[16]:(E=(0,X.jsx)(`div`,{className:`w-full space-y-3`,children:T}),t[15]=T,t[16]=E);let D;t[17]===_?D=t[18]:(D=_?(0,X.jsx)(`div`,{role:`alert`,className:`w-full rounded-lg border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-800 dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-200`,children:_}):null,t[17]=_,t[18]=D);let O;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,X.jsx)(Ne,{className:`size-4`,"aria-hidden":!0}),t[19]=O):O=t[19];let k=q,A=p||d.size===0,j=()=>void x(),M;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,X.jsx)(ye,{className:`size-4`,"aria-hidden":!0}),t[20]=M):M=t[20];let N=p?c.presetCreating:c.presetCreateSelected.replace(`{{count}}`,String(d.size)),P;return t[21]!==k||t[22]!==A||t[23]!==j||t[24]!==M||t[25]!==N?(P=(0,X.jsxs)(k,{type:`button`,variant:`primary`,className:`gap-2`,disabled:A,onClick:j,children:[M,N]}),t[21]=k,t[22]=A,t[23]=j,t[24]=M,t[25]=N,t[26]=P):P=t[26],(0,X.jsxs)(`div`,{className:`mx-auto flex w-full max-w-2xl flex-col items-center gap-6 px-4 py-12`,children:[(0,X.jsxs)(`div`,{className:`text-center`,children:[(0,X.jsxs)(`div`,{className:`mb-3 inline-flex items-center gap-2 rounded-full bg-accent/10 px-3 py-1.5 text-sm font-medium text-accent`,children:[w,c.presetSetupBadge]}),(0,X.jsx)(`h2`,{className:`text-xl font-semibold text-fg`,children:c.presetSetupTitle}),(0,X.jsx)(`p`,{className:`mt-2 text-sm text-fg-muted`,children:c.presetSetupSubtitle})]}),E,D,h&&p?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:c.presetCreatingProgress.replace(`{{current}}`,String(h.current)).replace(`{{total}}`,String(h.total))}):null,(0,X.jsxs)(`div`,{className:`flex w-full items-center justify-between border-t border-edge-subtle pt-4`,children:[(0,X.jsxs)(q,{type:`button`,variant:`ghost`,className:`gap-2 text-fg-muted`,disabled:p,onClick:C,children:[O,c.presetSkip]}),P]})]})}function Lr(){return new Set(Nr.map(Rr))}function Rr(e){return e.id}function zr(e){return e.language}function Br(e){let t=(0,Y.c)(30),{preset:n,checked:r,disabled:i,language:a,onToggle:o}=e,s;t[0]!==a||t[1]!==n.catalog.description?(s=Pr(n.catalog.description,a),t[0]=a,t[1]=n.catalog.description,t[2]=s):s=t[2];let c=s,l;t[3]!==a||t[4]!==n.catalog.name?(l=Pr(n.catalog.name,a),t[3]=a,t[4]=n.catalog.name,t[5]=l):l=t[5];let u=l,d=r?`border-accent/50 bg-accent/5`:`border-edge-subtle bg-surface-panel/40`,f=i&&`pointer-events-none opacity-50`,p;t[6]!==d||t[7]!==f?(p=J(`flex cursor-pointer items-start gap-3 rounded-xl border px-4 py-3 transition-colors`,d,f),t[6]=d,t[7]=f,t[8]=p):p=t[8];let m;t[9]!==r||t[10]!==i||t[11]!==u||t[12]!==o?(m=(0,X.jsx)(`input`,{type:`checkbox`,checked:r,disabled:i,onChange:o,className:`mt-1 shrink-0 accent-accent`,"aria-label":u}),t[9]=r,t[10]=i,t[11]=u,t[12]=o,t[13]=m):m=t[13];let h;t[14]===n.emoji?h=t[15]:(h=(0,X.jsx)(`span`,{className:`text-lg`,"aria-hidden":!0,children:n.emoji}),t[14]=n.emoji,t[15]=h);let g;t[16]===u?g=t[17]:(g=(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:u}),t[16]=u,t[17]=g);let _;t[18]!==h||t[19]!==g?(_=(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[h,g]}),t[18]=h,t[19]=g,t[20]=_):_=t[20];let v;t[21]===c?v=t[22]:(v=(0,X.jsx)(`p`,{className:`mt-0.5 text-sm text-fg-muted`,children:c}),t[21]=c,t[22]=v);let y;t[23]!==_||t[24]!==v?(y=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[_,v]}),t[23]=_,t[24]=v,t[25]=y):y=t[25];let b;return t[26]!==y||t[27]!==p||t[28]!==m?(b=(0,X.jsxs)(`label`,{className:p,children:[m,y]}),t[26]=y,t[27]=p,t[28]=m,t[29]=b):b=t[29],b}var Vr={enabled:!0,mode:`default`,reserveTokens:8e3,triggerThreshold:.8,minMessagesBeforeCompact:10,keepRecentMessages:5,evictionWindow:.2,retentionWindow:6},Hr={enabled:!0,maxToolResultChars:1e4,headKeepRatio:.3,tailKeepRatio:.3},Ur={enabled:!0,useEnhancedSystem:!0,userProfileEnabled:!0,provider:``,injectionFrequency:``,memoryCharLimit:void 0,userCharLimit:void 0,contextCadence:void 0,dialecticCadence:void 0},Wr={summaryModel:``},Gr={enabled:!1,memoryNudgeInterval:10,skillNudgeInterval:10,maxToolRounds:8,maxHistoryMessages:80,maxDurationMs:12e4},Kr={model:``,maxLength:void 0};function qr(e){if(!e)return``;if(typeof e==`string`)return e;if(typeof e==`object`&&!Array.isArray(e)){let t=e.primary;return typeof t==`string`?t:``}return``}function Jr(e){if(typeof e!=`object`||!e||!(`fallbacks`in e))return[];let t=e.fallbacks;return Array.isArray(t)?t.filter(e=>typeof e==`string`&&e.trim().length>0):[]}function Yr(e){if(!e||typeof e!=`object`)return;let t=e,n=t.payload;if(n&&typeof n==`object`&&`config`in n)return n.config;if(`config`in t)return t.config}function Xr(e){return e===!0||e===`true`||e===1}function Zr(e){let t=e.browser;if(!t||typeof t!=`object`||Array.isArray(t))return{browserEnabled:!0,browserHeadless:!1,browserAllowPrivateUrls:!1,browserCommandTimeout:void 0,browserBackend:`extension`,browserCloudProvider:`local`,browserCloudApiKey:``,browserCloudProjectId:``,browserCloudRegion:``,browserCdpUrl:``,browserExtensionPort:void 0,browserExtensionHost:`127.0.0.1`,browserExtensionConnectionTimeout:void 0,browserCloakKeepOpen:!0,browserCloakTemporaryProfile:!1,browserCloakCacheDir:``,browserCloakBinaryPath:``,browserCloakTimezone:``,browserCloakLocale:``,browserCloakWebrtcIp:``,browserCloakFingerprintPlatform:``,browserCloakExtraArgs:``,browserHumanize:!0,browserHumanPreset:`careful`,browserDialogPolicy:`auto_dismiss`,browserDialogTimeout:void 0};let n=t,r=Xr(n.enabled),i=n.headless,a=i===!0||i===`true`||i===1,o=Xr(n.allowPrivateUrls),s=typeof n.commandTimeout==`number`&&Number.isFinite(n.commandTimeout)&&n.commandTimeout>=5?Math.floor(n.commandTimeout):void 0,c=n.backend,l=c===`local`||c===`cdp`||c===`cloud`||c===`extension`||c===`cloakbrowser`?c:`extension`,u=n.cloudProvider,d=u===`browserbase`||u===`browser-use`?u:`local`,f=typeof n.cloud==`object`&&n.cloud&&!Array.isArray(n.cloud)?n.cloud:{},p=typeof f.apiKey==`string`?f.apiKey:``,m=typeof f.projectId==`string`?f.projectId:``,h=typeof f.region==`string`?f.region:``,g=typeof n.cdpUrl==`string`?n.cdpUrl:``,_=typeof n.extension==`object`&&n.extension&&!Array.isArray(n.extension)?n.extension:{},v=typeof _.port==`number`&&Number.isFinite(_.port)&&_.port>=1024&&_.port<=65535?Math.floor(_.port):void 0,y=typeof _.host==`string`&&_.host?_.host:`127.0.0.1`,b=typeof _.connectionTimeout==`number`&&Number.isFinite(_.connectionTimeout)&&_.connectionTimeout>=1e3?Math.floor(_.connectionTimeout):void 0,x=typeof n.cloakbrowser==`object`&&n.cloakbrowser&&!Array.isArray(n.cloakbrowser)?n.cloakbrowser:{},S=n.humanPreset==="default"?`default`:`careful`,C=n.dialogPolicy,w=C===`must_respond`||C===`auto_accept`?C:`auto_dismiss`,T=typeof n.dialogTimeoutSeconds==`number`&&Number.isFinite(n.dialogTimeoutSeconds)&&n.dialogTimeoutSeconds>=1?Math.floor(n.dialogTimeoutSeconds):void 0;return{browserEnabled:r,browserHeadless:a,browserAllowPrivateUrls:o,browserCommandTimeout:s,browserBackend:l,browserCloudProvider:d,browserCloudApiKey:p,browserCloudProjectId:m,browserCloudRegion:h,browserCdpUrl:g,browserExtensionPort:v,browserExtensionHost:y,browserExtensionConnectionTimeout:b,browserCloakKeepOpen:x.keepOpen!==!1,browserCloakTemporaryProfile:x.temporaryProfile===!0,browserCloakCacheDir:typeof x.cacheDir==`string`?x.cacheDir:``,browserCloakBinaryPath:typeof x.binaryPath==`string`?x.binaryPath:``,browserCloakTimezone:typeof x.timezone==`string`?x.timezone:``,browserCloakLocale:typeof x.locale==`string`?x.locale:``,browserCloakWebrtcIp:typeof x.webrtcIp==`string`?x.webrtcIp:``,browserCloakFingerprintPlatform:typeof x.fingerprintPlatform==`string`?x.fingerprintPlatform:``,browserCloakExtraArgs:Array.isArray(x.extraArgs)?x.extraArgs.filter(e=>typeof e==`string`&&e.trim().length>0).join(`
|
|
389
|
+
`):``,browserHumanize:n.humanize!==!1,browserHumanPreset:S,browserDialogPolicy:w,browserDialogTimeout:T}}function Qr(e){if(!e||typeof e!=`object`||Array.isArray(e))return{...Vr};let t=e;return{enabled:typeof t.enabled==`boolean`?t.enabled:Vr.enabled,mode:t.mode===`safeguard`?`safeguard`:`default`,reserveTokens:typeof t.reserveTokens==`number`&&Number.isFinite(t.reserveTokens)?Math.floor(t.reserveTokens):Vr.reserveTokens,triggerThreshold:typeof t.triggerThreshold==`number`&&Number.isFinite(t.triggerThreshold)?t.triggerThreshold:Vr.triggerThreshold,minMessagesBeforeCompact:typeof t.minMessagesBeforeCompact==`number`&&Number.isFinite(t.minMessagesBeforeCompact)?Math.floor(t.minMessagesBeforeCompact):Vr.minMessagesBeforeCompact,keepRecentMessages:typeof t.keepRecentMessages==`number`&&Number.isFinite(t.keepRecentMessages)?Math.floor(t.keepRecentMessages):Vr.keepRecentMessages,evictionWindow:typeof t.evictionWindow==`number`&&Number.isFinite(t.evictionWindow)?t.evictionWindow:Vr.evictionWindow,retentionWindow:typeof t.retentionWindow==`number`&&Number.isFinite(t.retentionWindow)?Math.floor(t.retentionWindow):Vr.retentionWindow}}function $r(e){if(!e||typeof e!=`object`||Array.isArray(e))return{...Hr};let t=e;return{enabled:typeof t.enabled==`boolean`?t.enabled:Hr.enabled,maxToolResultChars:typeof t.maxToolResultChars==`number`&&Number.isFinite(t.maxToolResultChars)?Math.floor(t.maxToolResultChars):Hr.maxToolResultChars,headKeepRatio:typeof t.headKeepRatio==`number`&&Number.isFinite(t.headKeepRatio)?t.headKeepRatio:Hr.headKeepRatio,tailKeepRatio:typeof t.tailKeepRatio==`number`&&Number.isFinite(t.tailKeepRatio)?t.tailKeepRatio:Hr.tailKeepRatio}}function ei(e){if(!e||typeof e!=`object`||Array.isArray(e))return{...Ur};let t=e,n=t.provider,r=n===`none`||n===`stub`?n:``,i=t.injectionFrequency,a=i===`every-turn`||i===`first-turn`?i:``;return{enabled:typeof t.enabled==`boolean`?t.enabled:Ur.enabled,useEnhancedSystem:typeof t.useEnhancedSystem==`boolean`?t.useEnhancedSystem:Ur.useEnhancedSystem,userProfileEnabled:typeof t.userProfileEnabled==`boolean`?t.userProfileEnabled:Ur.userProfileEnabled,provider:r,injectionFrequency:a,memoryCharLimit:typeof t.memoryCharLimit==`number`&&t.memoryCharLimit>0?Math.floor(t.memoryCharLimit):void 0,userCharLimit:typeof t.userCharLimit==`number`&&t.userCharLimit>0?Math.floor(t.userCharLimit):void 0,contextCadence:typeof t.contextCadence==`number`&&t.contextCadence>=1?Math.floor(t.contextCadence):void 0,dialecticCadence:typeof t.dialecticCadence==`number`&&t.dialecticCadence>=1?Math.floor(t.dialecticCadence):void 0}}function ti(e){if(!e||typeof e!=`object`||Array.isArray(e))return{...Wr};let t=e;return{summaryModel:typeof t.summaryModel==`string`?t.summaryModel:``}}function ni(e){if(!e||typeof e!=`object`||Array.isArray(e))return{...Gr};let t=e;return{enabled:typeof t.enabled==`boolean`?t.enabled:Gr.enabled,memoryNudgeInterval:typeof t.memoryNudgeInterval==`number`&&t.memoryNudgeInterval>=0?Math.floor(t.memoryNudgeInterval):Gr.memoryNudgeInterval,skillNudgeInterval:typeof t.skillNudgeInterval==`number`&&t.skillNudgeInterval>=0?Math.floor(t.skillNudgeInterval):Gr.skillNudgeInterval,maxToolRounds:typeof t.maxToolRounds==`number`&&t.maxToolRounds>=1&&t.maxToolRounds<=32?Math.floor(t.maxToolRounds):Gr.maxToolRounds,maxHistoryMessages:typeof t.maxHistoryMessages==`number`&&t.maxHistoryMessages>=10&&t.maxHistoryMessages<=200?Math.floor(t.maxHistoryMessages):Gr.maxHistoryMessages,maxDurationMs:typeof t.maxDurationMs==`number`&&t.maxDurationMs>=3e4&&t.maxDurationMs<=6e5?Math.floor(t.maxDurationMs):Gr.maxDurationMs}}function ri(e){if(!e||typeof e!=`object`||Array.isArray(e))return{...Kr};let t=e;return{model:typeof t.model==`string`?t.model:``,maxLength:typeof t.maxLength==`number`&&t.maxLength>0?t.maxLength:void 0}}function ii(e,t){if(!e||typeof e!=`object`||Array.isArray(e))return{enabled:t};let n=e;return{enabled:typeof n.enabled==`boolean`?n.enabled:t}}function ai(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`):[]}function oi(e){if(e==null)return``;if(typeof e==`string`){let t=e.trim();if(!t)return``;try{let e=JSON.parse(t);if(typeof e==`object`&&e&&!Array.isArray(e))return JSON.stringify(e,null,2)}catch{return t}return``}if(typeof e==`object`&&!Array.isArray(e))try{return JSON.stringify(e,null,2)}catch{return``}return``}function si(e){let t=e.imageGenerationModelTimeoutMs;if(typeof t==`number`&&Number.isFinite(t)&&t>0)return Math.floor(t);let n=e.imageGenerationModel;if(n&&typeof n==`object`&&!Array.isArray(n)){let e=n.timeoutMs;if(typeof e==`number`&&Number.isFinite(e)&&e>0)return Math.floor(e)}return null}function ci(e){if(e.imageGenerationModelAutoProviderFallback===!0)return!0;let t=e.imageGenerationModel;return t&&typeof t==`object`&&!Array.isArray(t)?t.autoProviderFallback===!0:!1}function li(e){let t=e&&typeof e==`object`&&!Array.isArray(e)&&`agents`in e?e.agents:void 0,n=t&&typeof t==`object`&&!Array.isArray(t)&&`defaults`in t?t.defaults:void 0,r=n&&typeof n==`object`&&!Array.isArray(n)?n:{},i=r.models&&typeof r.models==`object`&&!Array.isArray(r.models)?r.models:{},a=i.chat,o=r.modelFallbacks,s=Array.isArray(o)&&o.every(e=>typeof e==`string`)?o:Jr(a),c=r.imageModelFallbacks,l=Array.isArray(c)&&c.every(e=>typeof e==`string`)?c:Jr(r.imageModel),u=r.imageGenerationModelFallbacks,d=Array.isArray(u)&&u.every(e=>typeof e==`string`)?u:Jr(r.imageGenerationModel),f=Zr(r),p=typeof r.maxTaskDurationMs==`number`&&Number.isFinite(r.maxTaskDurationMs)?r.maxTaskDurationMs:void 0,m=p===void 0?void 0:Math.round(p/6e4);return{model:qr(a),modelFallbacks:s,imageModel:qr(r.imageModel),imageModelFallbacks:l,imageGenerationModel:qr(r.imageGenerationModel),imageGenerationModelFallbacks:d,imageGenerationModelTimeoutMs:si(r),imageGenerationModelAutoProviderFallback:ci(r),mediaMaxMb:typeof r.mediaMaxMb==`number`&&!Number.isNaN(r.mediaMaxMb)?r.mediaMaxMb:void 0,maxTokens:typeof r.maxTokens==`number`?r.maxTokens:8192,temperature:typeof r.temperature==`number`?r.temperature:.7,maxToolIterations:typeof r.maxToolIterations==`number`?r.maxToolIterations:20,maxTaskDurationMinutes:m,maxRequestsPerTurn:typeof r.maxRequestsPerTurn==`number`?r.maxRequestsPerTurn:50,maxToolFailuresPerTurn:typeof r.maxToolFailuresPerTurn==`number`?r.maxToolFailuresPerTurn:3,workspace:typeof r.workspace==`string`?r.workspace:`~/.xopc/workspace`,...f,thinkingDefault:typeof r.thinkingDefault==`string`?r.thinkingDefault:`medium`,reasoningDefault:typeof r.reasoningDefault==`string`?r.reasoningDefault:`stream`,verboseDefault:typeof r.verboseDefault==`string`?r.verboseDefault:`full`,compaction:Qr(r.compaction),pruning:$r(r.pruning),memory:ei(r.memory),sessionSearch:ti(r.sessionSearch),backgroundReview:ni(r.backgroundReview),webExtract:ri(r.webExtract),delegate:ii(r.delegate,!1),executeCode:ii(r.executeCode,!1),systemPromptOverride:typeof r.systemPromptOverride==`string`?r.systemPromptOverride:``,skillsAllowlist:ai(r.skills),toolsDisable:(()=>{let e=r.tools;if(!e||typeof e!=`object`||Array.isArray(e))return[];let t=e.disable;return ai(t)})(),typedModels:An(i),paramsJson:oi(r.params)}}function ui(e){let t={enabled:e.enabled,useEnhancedSystem:e.useEnhancedSystem,userProfileEnabled:e.userProfileEnabled};return e.provider===`none`||e.provider===`stub`?t.provider=e.provider:t.provider=null,e.injectionFrequency===`every-turn`||e.injectionFrequency===`first-turn`?t.injectionFrequency=e.injectionFrequency:t.injectionFrequency=null,t.memoryCharLimit=e.memoryCharLimit??null,t.userCharLimit=e.userCharLimit??null,t.contextCadence=e.contextCadence??null,t.dialecticCadence=e.dialecticCadence??null,t}function di(e){let t=e.trim();if(!t)return null;let n=JSON.parse(t);if(n===null)return null;if(typeof n!=`object`||Array.isArray(n))throw Error(`params must be a JSON object`);return n}function fi(e){return{enabled:e.browserEnabled,headless:e.browserHeadless,allowPrivateUrls:e.browserAllowPrivateUrls,commandTimeout:e.browserCommandTimeout??null,backend:e.browserBackend===`extension`?null:e.browserBackend,cloudProvider:e.browserCloudProvider===`local`?null:e.browserCloudProvider,cloud:e.browserBackend===`cloud`?{apiKey:e.browserCloudApiKey.trim()||null,projectId:e.browserCloudProjectId.trim()||null,region:e.browserCloudRegion.trim()||null}:null,cdpUrl:e.browserCdpUrl.trim()||null,extension:e.browserBackend===`extension`?{port:e.browserExtensionPort??null,host:e.browserExtensionHost.trim()||null,connectionTimeout:e.browserExtensionConnectionTimeout??null}:null,cloakbrowser:e.browserBackend===`cloakbrowser`?{keepOpen:e.browserCloakKeepOpen,temporaryProfile:e.browserCloakTemporaryProfile,cacheDir:e.browserCloakCacheDir.trim()||null,binaryPath:e.browserCloakBinaryPath.trim()||null,timezone:e.browserCloakTimezone.trim()||null,locale:e.browserCloakLocale.trim()||null,webrtcIp:e.browserCloakWebrtcIp.trim()||null,fingerprintPlatform:e.browserCloakFingerprintPlatform.trim()||null,extraArgs:(()=>{let t=e.browserCloakExtraArgs.split(`
|
|
390
|
+
`).map(e=>e.trim()).filter(Boolean);return t.length>0?t:null})()}:null,humanize:e.browserBackend===`cloakbrowser`?e.browserHumanize:null,humanPreset:e.browserBackend===`cloakbrowser`?e.browserHumanPreset:null,dialogPolicy:e.browserDialogPolicy===`auto_dismiss`?null:e.browserDialogPolicy,dialogTimeoutSeconds:e.browserDialogTimeout??null}}async function pi(){return li(Yr(await d(o(`/api/config`)))??{})}async function mi(e){let t=e.modelFallbacks.flatMap(e=>{let t=e.trim();return t?[t]:[]}),n=e.model.trim(),r=n?t.length>0?{primary:n,fallbacks:t}:{primary:n}:null,i=e.imageModelFallbacks.flatMap(e=>{let t=e.trim();return t?[t]:[]}),a=e.imageModel.trim(),s=a?i.length>0?{primary:a,fallbacks:i}:{primary:a}:null,c=e.imageGenerationModelFallbacks.flatMap(e=>{let t=e.trim();return t?[t]:[]}),l=e.imageGenerationModel.trim(),u=typeof e.imageGenerationModelTimeoutMs==`number`&&e.imageGenerationModelTimeoutMs>0?Math.floor(e.imageGenerationModelTimeoutMs):null,f=e.imageGenerationModelAutoProviderFallback===!0,p=l?{primary:l,...c.length>0?{fallbacks:c}:{},...u?{timeoutMs:u}:{},...f?{autoProviderFallback:!0}:{}}:null,h=e.maxTaskDurationMinutes===void 0||e.maxTaskDurationMinutes===null?null:(()=>{let t=Math.floor(e.maxTaskDurationMinutes)*6e4;return t<6e4||t>144e5?null:t})(),g=e.skillsAllowlist.flatMap(e=>{let t=e.trim();return t?[t]:[]}),_=e.toolsDisable.flatMap(e=>{let t=e.trim();return t?[t]:[]}),v=di(e.paramsJson),y=v===null||Object.keys(v).length===0?null:v,b={models:{chat:r,...jn(e.typedModels)??{}},imageModel:s,imageGenerationModel:p,mediaMaxMb:e.mediaMaxMb??null,maxTokens:e.maxTokens,temperature:e.temperature,maxToolIterations:e.maxToolIterations,maxTaskDurationMs:h,maxRequestsPerTurn:e.maxRequestsPerTurn,maxToolFailuresPerTurn:e.maxToolFailuresPerTurn,workspace:e.workspace,browser:fi(e),thinkingDefault:e.thinkingDefault,reasoningDefault:e.reasoningDefault,verboseDefault:e.verboseDefault,compaction:{...e.compaction},pruning:{...e.pruning},memory:ui(e.memory),sessionSearch:{summaryModel:e.sessionSearch.summaryModel.trim()||null},backgroundReview:{enabled:e.backgroundReview.enabled,memoryNudgeInterval:e.backgroundReview.memoryNudgeInterval,skillNudgeInterval:e.backgroundReview.skillNudgeInterval,maxToolRounds:e.backgroundReview.maxToolRounds,maxHistoryMessages:e.backgroundReview.maxHistoryMessages,maxDurationMs:e.backgroundReview.maxDurationMs},webExtract:{model:e.webExtract.model.trim()||null,maxLength:e.webExtract.maxLength??null},delegate:{enabled:e.delegate.enabled},executeCode:{enabled:e.executeCode.enabled},systemPromptOverride:e.systemPromptOverride.trim()||null,skills:g.length>0?g:null,tools:{disable:_.length>0?_:null},params:y};await d(o(`/api/config`),{method:`PATCH`,body:JSON.stringify({agents:{defaults:b}})}),m()}var hi=`main`,gi=/^[a-z0-9][a-z0-9_-]{0,63}$/i,_i=/[^a-z0-9_-]+/g,vi=/^-+/,yi=/-+$/,bi=/^[a-z0-9][a-z0-9_-]{0,63}$/,xi=new Set([`con`,`prn`,`aux`,`nul`,`com1`,`com2`,`com3`,`com4`,`com5`,`com6`,`com7`,`com8`,`com9`,`lpt1`,`lpt2`,`lpt3`,`lpt4`,`lpt5`,`lpt6`,`lpt7`,`lpt8`,`lpt9`]);function Si(e){let t=e.trim();if(!t)return hi;let n=t.toLowerCase();return gi.test(t)?n:n.replace(_i,`-`).replace(vi,``).replace(yi,``).slice(0,64)||hi}function Ci(e,t){let n=e?.trim();if(n){let e=n.toLowerCase();return bi.test(e)?e===hi?{ok:!1,error:`"${hi}" is reserved`}:xi.has(e)?{ok:!1,error:`Agent id "${e}" is reserved (Windows device name).`}:{ok:!0,agentId:e}:{ok:!1,error:`Invalid agent id: use 1–64 characters; letters, digits, underscores, and hyphens only; start with a letter or digit.`}}let r=Si(t.trim());return r===hi?{ok:!1,error:`Display name cannot produce a valid agent folder id. Set an explicit Agent id (letters, digits, underscores, hyphens only).`}:xi.has(r)?{ok:!1,error:`That display name resolves to "${r}", which is reserved. Use a different display name or set an explicit Agent id.`}:bi.test(r)?{ok:!0,agentId:r}:{ok:!1,error:`Could not derive a folder-safe agent id from the display name. Set an explicit Agent id (letters, digits, underscores, hyphens only).`}}var wi=`~/.xopc/workspace`;function Ti(e){let t=e.trim();return t?`${wi}/${Si(t)}`:``}function Ei(e){let t=(0,Y.c)(18),{a:n,busy:r,listSearchQuery:i,onListSearchQueryChange:a,onAddAgent:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,X.jsx)(Ve,{className:`pointer-events-none absolute left-3 top-1/2 size-4 -translate-y-1/2 text-fg-disabled`,strokeWidth:1.75,"aria-hidden":!0}),t[0]=s):s=t[0];let c;t[1]===a?c=t[2]:(c=e=>a(e.target.value),t[1]=a,t[2]=c);let l;t[3]!==n.listSearchPlaceholder||t[4]!==i||t[5]!==c?(l=(0,X.jsxs)(`label`,{className:`relative flex min-h-9 min-w-0 max-w-sm cursor-text items-center rounded-pill border border-edge bg-surface-base py-1.5 pl-9 pr-3 shadow-surface dark:bg-surface-hover/40 sm:max-w-md`,children:[s,(0,X.jsx)(`input`,{type:`search`,enterKeyHint:`search`,value:i,onChange:c,placeholder:n.listSearchPlaceholder,autoComplete:`off`,spellCheck:!1,"aria-label":n.listSearchPlaceholder,className:`min-w-0 flex-1 appearance-none border-0 bg-transparent py-0.5 text-sm leading-normal text-fg caret-current placeholder:text-fg-disabled focus:border-0 focus:shadow-none focus:outline-none focus:ring-0 focus-visible:outline-none`})]}),t[3]=n.listSearchPlaceholder,t[4]=i,t[5]=c,t[6]=l):l=t[6];let u;t[7]===o?u=t[8]:(u=()=>o(),t[7]=o,t[8]=u);let d;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,X.jsx)(Xe,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),t[9]=d):d=t[9];let f;t[10]!==n.addAgent||t[11]!==n.addAgentAria||t[12]!==r||t[13]!==u?(f=(0,X.jsxs)(q,{type:`button`,variant:`primary`,className:`shrink-0 gap-2`,"aria-label":n.addAgentAria,disabled:r,onClick:u,children:[d,n.addAgent]}),t[10]=n.addAgent,t[11]=n.addAgentAria,t[12]=r,t[13]=u,t[14]=f):f=t[14];let p;return t[15]!==l||t[16]!==f?(p=(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-wrap items-center justify-end gap-2`,children:[l,f]}),t[15]=l,t[16]=f,t[17]=p):p=t[17],p}function Di(e){return{...e,soulEditorNonce:0,soulPreviewMode:!1,avatarDialogOpen:!1}}function Oi(e){let{agentId:t,enabled:n,saveRef:r}=e,i=Vt(async()=>{if(!t)return null;let[e,n]=await Promise.all([he(t,`IDENTITY.md`).catch(()=>``),he(t,`SOUL.md`).catch(()=>``)]),r=Hn(e);return{identity:r,soulTemplate:Yn(n),soulCustomContent:n,identityBaseline:JSON.stringify(r),soulBaseline:n}},[t],{enabled:n&&!!t,initial:null,errorData:null}),a=i.data,o=i.loading,s=(0,Q.useRef)(!1),[c,l]=(0,Q.useState)(null),u=t??``,d=(0,Q.useRef)(u);d.current!==u&&(d.current=u,s.current=!1,l(null));let f=c??(a?Di(a):null),p=(0,Q.useMemo)(()=>f?JSON.stringify(f.identity)!==f.identityBaseline||f.soulCustomContent!==f.soulBaseline:!1,[f]),m=(0,Q.useRef)(t);m.current=t;let h=(0,Q.useCallback)(e=>{s.current=!0,l(t=>{let n=t??(a?Di(a):null);return n?e(n):null})},[a]),g=(0,Q.useCallback)(e=>{h(t=>({...t,identity:{...t.identity,...e}}))},[h]),_=(0,Q.useCallback)(e=>{h(t=>{if(e===`custom`)return{...t,soulTemplate:`custom`};let n=qn.find(t=>t.id===e);return n?.content?{...t,soulTemplate:e,soulCustomContent:n.content,soulEditorNonce:t.soulEditorNonce+1}:{...t,soulTemplate:e}})},[h]),v=(0,Q.useCallback)(e=>{h(t=>({...t,soulCustomContent:e,soulTemplate:`custom`}))},[h]),y=(0,Q.useCallback)(e=>{h(t=>({...t,avatarDialogOpen:e}))},[h]),b=(0,Q.useCallback)(()=>{h(e=>({...e,soulPreviewMode:!e.soulPreviewMode}))},[h]),x=(0,Q.useCallback)(async()=>{let e=m.current;!e||!f||(await Promise.all([C(e,`IDENTITY.md`,Un(f.identity)),C(e,`SOUL.md`,f.soulCustomContent)]),s.current=!1,l(e=>{let t=e??f;return{...t,identityBaseline:JSON.stringify(t.identity),soulBaseline:t.soulCustomContent}}))},[f]);return(0,Q.useLayoutEffect)(()=>{if(r)return r.current=x,()=>{r.current=null}},[x,r]),{profileMarkdownLoading:o,draft:f,dirty:p,updateIdentity:g,handleSoulTemplateChange:_,handleSoulContentChange:v,setAvatarDialogOpen:y,toggleSoulPreviewMode:b}}var ki={draft:``,editorNonce:0,loadedKey:``};function Ai(e,t){switch(t.type){case`load`:return{draft:t.content,editorNonce:e.editorNonce+1,loadedKey:t.key};case`setDraft`:return{...e,draft:t.value};case`clear`:return{draft:``,editorNonce:e.editorNonce,loadedKey:``};case`resetViewMode`:return e}}function ji(e){let{panel:t,selectedId:n,hasToken:r,dataAgentsLength:i,saveErrorMessage:a,setError:o}=e,s=Vt(()=>n?N(n):Promise.resolve(null),[t,n,r,i],{enabled:t===`files`&&!!n&&r,initial:null,errorData:null}),c=s.data,l=s.setData,u=s.loading,[d,f]=(0,Q.useState)(null),[p,m]=(0,Q.useReducer)(Ai,ki),[h,g]=(0,Q.useState)(!1),[_,v]=(0,Q.useState)(`edit`),y=(0,Q.useRef)(n);(0,Q.useEffect)(()=>{n!==y.current&&(y.current=n,f(null))},[n]),(0,Q.useEffect)(()=>{if(c&&c.files.length>0&&!d){let e=c.files.find(e=>e.name===`AGENTS.md`);f(e?e.name:c.files[0].name)}},[c,d]);let b=p.draft,x=p.editorNonce,S=(0,Q.useRef)(b);S.current=b;let w=(0,Q.useRef)(n);w.current=n;let T=(0,Q.useRef)(d);T.current=d;let E=(0,Q.useRef)(null),D=(0,Q.useRef)(``),O=(0,Q.useRef)(``),k=(0,Q.useRef)(``),A=(0,Q.useRef)(()=>{}),j=Vt(()=>d&&n?he(n,d).catch(()=>``):Promise.resolve(``),[d,n,r],{enabled:!!(d&&n&&r),initial:``,errorData:``}),M=j.loading,P=be(async()=>{let e=w.current,t=T.current;if(!e||!t||`${e}:${t}`!==D.current)return;let n=S.current;if(n!==O.current){g(!0),o(null);try{await C(e,t,n),O.current=n,l(n=>!n||n.agentId!==e?n:{...n,files:n.files.map(e=>e.name===t?{...e,missing:!1}:e)})}catch(e){o(e instanceof Error?e.message:a)}finally{g(!1)}}},800);A.current=P.flush,(0,Q.useEffect)(()=>()=>{A.current()},[]);let F=(0,Q.useRef)(t);F.current!==t&&(F.current===`files`&&A.current(),F.current=t);let I=d&&n?`${n}:${d}`:``;(0,Q.useEffect)(()=>{I!==k.current&&(A.current(),k.current=I)},[I]),(0,Q.useEffect)(()=>{if(!I){m({type:`clear`});return}M||(D.current=I,O.current=j.data,m({type:`load`,key:I,content:j.data}))},[I,M,j.data]);let L=(0,Q.useRef)({activeFile:d,selectedId:n});return(L.current.activeFile!==d||L.current.selectedId!==n)&&(L.current={activeFile:d,selectedId:n},v(`edit`)),{files:c,setFiles:l,filesLoading:u,activeFile:d,setActiveFile:(0,Q.useCallback)(e=>{A.current(),f(e)},[]),fileDraft:b,setFileDraft:(0,Q.useCallback)(e=>{m({type:`setDraft`,value:typeof e==`function`?e(S.current):e}),P()},[P]),fileSaving:h,filesViewMode:_,setFilesViewMode:v,profileFileLoading:M,profileEditorNonce:x,overviewSaveProfileMarkdownRef:E,saveProfileMarkdownDebounced:P}}function Mi(e){let{panel:t,hasToken:n,bindingsFromConfig:r,gatewayCfgLoading:i,selected:a,saveErrorMessage:o,setBusy:s,setError:c}=e,l=(0,Q.useRef)(!1),[u,d]=(0,Q.useState)(null),f=(0,Q.useRef)(r);t===`channels`&&n&&!l.current&&f.current!==r&&(f.current=r,d(r));let p=u??r,m=t===`channels`&&n,h=Vt(()=>Zt(),[t,n],{enabled:m,initial:[],errorData:[]}),g=h.data,_=h.loading,v=(0,Q.useMemo)(()=>_||g.length===0?``:g[0]?.name??``,[g,_]),[y,b]=(0,Q.useState)(``),x=(0,Q.useRef)(v);t===`channels`&&!_&&v&&x.current!==v&&(!y||!g.some(e=>e.name===y))&&(x.current=v,b(v)),x.current=v;let S=y.trim(),C=m&&S.length>0,w=Vt(()=>tn(S),[t,n,S],{enabled:C,initial:[],errorData:[]}),T=w.data,E=w.loading,D=w.setData,[O,k]=(0,Q.useState)(null),[A,j]=(0,Q.useState)(``),M=(0,Q.useRef)(S);M.current!==S&&(M.current=S,k(null));let N=(0,Q.useMemo)(()=>a?p.filter(e=>e.agentId.toLowerCase()===a.id.toLowerCase()):[],[p,a?.id]),P=(0,Q.useCallback)(()=>{let e=y.trim();e&&tn(e).then(e=>{D(e),k(t=>t!=null&&t<e.length?t:null)}).catch(()=>{D([]),k(null)})},[y,D]),F=!_&&g.length===0,I=t===`channels`&&n&&i,L=(0,Q.useCallback)(async e=>{s(!0),c(null);try{let t=p.filter(t=>t!==e);await Kt(t),l.current=!0,d(t)}catch(e){c(e instanceof Error?e.message:o)}finally{s(!1)}},[p,o,s,c]);return{agentBindings:N,allBindings:p,bindChannelStatuses:g,bindChannelsLoading:_,bindSessionChats:T,bindSessionsLoading:E,bindingsLoading:I,newBindChannel:y,setNewBindChannel:b,newBindSessionIdx:O,setNewBindSessionIdx:k,newBindCustomPeer:A,setNewBindCustomPeer:j,onAddBinding:(0,Q.useCallback)(async e=>{if(e.preventDefault(),!a||!y.trim())return;let t=gn(y,A,O,T),n=[...p,{agentId:a.id,priority:100,enabled:!0,match:t}];s(!0),c(null);try{await Kt(n),l.current=!0,d(n),k(null),j(``)}catch(e){c(e instanceof Error?e.message:o)}finally{s(!1)}},[p,T,y,A,O,o,a,s,c]),onRemoveBinding:L,refreshBindSessions:P,useManualChannel:F}}function Ni(e){let{panel:t,hasToken:n,data:r,selected:i,saveErrorMessage:a,setBusy:o,setError:s}=e,{data:c,loading:l}=Vt(()=>Qt(),[t,n],{enabled:t===`cron`&&n,initial:[],errorData:[]}),[u,d]=(0,Q.useState)(null),f=u??c,p=(0,Q.useMemo)(()=>!r||!i?[]:f.filter(e=>!$t(e)&&mn(e,i.id,r.defaultId)),[f,r,i]);async function m(e,t){o(!0),s(null);try{await an(e.id,{agentId:t===``?null:t}),d(await Qt())}catch(e){s(e instanceof Error?e.message:a)}finally{o(!1)}}return{agentCronJobs:p,cronJobs:f,cronLoading:l,onSetCronJobAgent:m}}function Pi(e,t){let n=(0,Y.c)(13),r;n[0]!==e||n[1]!==t?(r=[e,t],n[0]=e,n[1]=t,n[2]=r):r=n[2];let i=e&&t,a;n[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=[],n[3]=a):a=n[3];let o;n[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=[],n[4]=o):o=n[4];let s;n[5]===i?s=n[6]:(s={enabled:i,initial:a,errorData:o},n[5]=i,n[6]=s);let{data:c,loading:l}=Vt(Ii,r,s),u;n[7]===c?u=n[8]:(u=c.filter(Fi),n[7]=c,n[8]=u);let d=u,f;return n[9]!==d||n[10]!==c||n[11]!==l?(f={catalogForPick:d,skillCatalog:c,skillsCatalogLoading:l},n[9]=d,n[10]=c,n[11]=l,n[12]=f):f=n[12],f}function Fi(e){return e.enabled!==!1}function Ii(){return ae()}function Li(e){return Pi(e.panel===`skills`,e.hasToken)}function Ri(e){return new Set(e.tools.entryDisable)}function zi(e){return e.skills.entry===void 0?{inherit:!0,pick:new Set(e.skills.effectiveAllowlist??[])}:{inherit:!1,pick:new Set(e.skills.entry??[])}}function Bi(e){let{panel:t,selected:n}=e,r=`${t}:${n?.id??``}`,i=(0,Q.useRef)(r),[a,o]=(0,Q.useState)(()=>new Set),[s,c]=(0,Q.useState)(()=>new Set),[l,u]=(0,Q.useState)(!0),[d,f]=(0,Q.useState)(()=>[]);if(i.current!==r){if(i.current=r,n&&t===`tools`&&o(Ri(n)),n&&t===`skills`){let e=zi(n);u(e.inherit),c(e.pick)}n&&t===`models`&&f(Pn(n.typedModels.entry))}return{toolEntryDisable:a,setToolEntryDisable:o,skillsPick:s,setSkillsPick:c,skillsInherit:l,setSkillsInherit:u,modelRows:d,setModelRows:f}}function Vi(){let e=i(e=>e.language),t=a(e),n=t.agentsSettings,[r,o]=(0,Q.useState)(!1),[c,l]=(0,Q.useState)(null),[d,f]=(0,Q.useState)(!1),[m,_]=(0,Q.useState)(``),v=t.cron,y=t.chat,x=!!u(e=>e.token),[S,C]=rt(),w=_e(),{agentId:T}=g(),E=xe(e=>e.setPageHeader),D=xe(e=>e.clearPageHeader),{data:O,error:k,isLoading:A,mutate:j}=s(x?`settings-gateway-agents`:null,U,{revalidateOnFocus:!1}),{data:M}=p(x),N=(0,Q.useMemo)(()=>Se(M?.payload?.config??{}),[M]),P=(0,Q.useMemo)(()=>li(M?.payload?.config??{}),[M]),F=O??null,I=!!(x&&A),[L,R]=(0,Q.useState)(null),z=k instanceof Error?k.message:k?n.loadError:null,B=L??z,[ee,V]=(0,Q.useState)(null),[H,te]=(0,Q.useState)(()=>localStorage.getItem(jr)===`true`),[W,G]=(0,Q.useState)(`overview`),[ne,re]=(0,Q.useState)(``),[ie,ae]=(0,Q.useState)(``),[oe,se]=(0,Q.useState)(``),[ce,le]=(0,Q.useState)(``),[ue,fe]=(0,Q.useState)(``),[pe,me]=(0,Q.useState)(null),[he,ge]=(0,Q.useState)(!1),ve=(0,Q.useRef)(``),[ye,be]=(0,Q.useState)(null),[Ce,we]=(0,Q.useState)(!1),[Te,Ee]=(0,Q.useState)(``),[De,Oe]=(0,Q.useState)(``),[ke,Ae]=(0,Q.useState)(``),[je,Me]=(0,Q.useState)(``),[Ne,Fe]=(0,Q.useState)(``),Ie=(0,Q.useRef)(null),Le=(0,Q.useRef)(null),[Re,ze]=(0,Q.useState)(!1),[Be,Ve]=(0,Q.useState)(!1),He=(0,Q.useRef)({data:null,routeAgentId:void 0});F&&(F!==He.current.data||T!==He.current.routeAgentId)&&(He.current={data:F,routeAgentId:T},T&&F.agents.some(e=>e.id===T)?V(T):V(e=>e&&F.agents.some(t=>t.id===e)?e:F.defaultId));let Ue=F!=null&&F.agents.length<=1&&F.agents.every(e=>e.id===F.defaultId),We=!!(F&&!I&&Ue&&!H),Ge=(0,Q.useCallback)(()=>{te(!0),j()},[j]),Ke=(0,Q.useCallback)(()=>{localStorage.setItem(jr,`true`),te(!0)},[]);(0,Q.useEffect)(()=>{!F||!T||F.agents.some(e=>e.id===T)||w(At,{replace:!0})},[F,T,w]),(0,Q.useEffect)(()=>{T&&G(`overview`)},[T]),(0,Q.useEffect)(()=>{S.get(`panel`)===`defaults`&&w(`/settings/agent-defaults`,{replace:!0,state:{[Wt]:T?xt(T):At}})},[S,T,w]),(0,Q.useEffect)(()=>{if(S.get(`focus`)!==`avatar`||!T||(G(`overview`),I||!F?.agents.some(e=>e.id===T)))return;let e=window.setTimeout(()=>{document.getElementById(`agent-avatar-settings`)?.scrollIntoView({behavior:`smooth`,block:`center`}),C(e=>{let t=new URLSearchParams(e);return t.delete(`focus`),t},{replace:!0})},220);return()=>window.clearTimeout(e)},[S,T,I,F,C]);let K=(0,Q.useMemo)(()=>F?.agents.find(e=>e.id===ee)??null,[F,ee]),qe=(0,Q.useRef)(null),Je=K?K.id:null;K&&qe.current!==Je?(qe.current=Je,Oe(K.workspace),Ae(K.model?.primary??``),Me(ht(K,a(e).agentsSettings)),Fe(K.description??``)):!K&&qe.current!==null&&(qe.current=null,Oe(``),Ae(``),Me(``),Fe(``));let Ye=Oi({agentId:K?.id??null,enabled:W===`overview`&&!!K,saveRef:Le}),Xe=ji({panel:W,selectedId:ee,hasToken:x,dataAgentsLength:F?.agents.length,saveErrorMessage:n.saveError,setError:R}),Ze=Bi({panel:W,selected:K}),Qe=Mi({panel:W,hasToken:x,bindingsFromConfig:N,gatewayCfgLoading:M===void 0,selected:K,saveErrorMessage:n.saveError,setBusy:we,setError:R}),$e=Ni({panel:W,hasToken:x,data:F,selected:K,saveErrorMessage:n.saveError,setBusy:we,setError:R}),et=Li({panel:W,hasToken:x}),tt=(0,Q.useCallback)(()=>{let e=Ti(ie.trim()||ne);le(t=>t===``||t===ve.current?(ve.current=e,e):t)},[ie,ne]),nt=(0,Q.useCallback)(()=>{ve.current=``,re(``),ae(``),se(``),le(``),fe(``),me(null),be(null),ge(!0)},[]),it=(0,Q.useCallback)(e=>{let t=new Set(F?.agents.map(e=>e.id.toLowerCase())??[]),r=e.trim();if(!t.has(r.toLowerCase()))return r;let i=`${r}${n.duplicateIdSuffix}`;if(!t.has(i.toLowerCase()))return i;for(let e=2;e<1e3;e+=1){let n=`${i}-${e}`;if(!t.has(n.toLowerCase()))return n}return i},[n.duplicateIdSuffix,F]),at=(0,Q.useCallback)(e=>{if(be(e),!e)return;let t=F?.agents.find(t=>t.id===e);if(!t)return;let r=t.name?.trim()??t.id,i=n.duplicateName.replace(`{{name}}`,r),a=it(t.id),o=t.description??``;ve.current=``,re(i),ae(a),se(o),le(t.workspace),fe(t.model?.primary??``),me(null)},[n.duplicateName,F,it]),ot=(0,Q.useCallback)(e=>{at(e),ge(!0)},[at]),st=(0,Q.useMemo)(()=>(0,X.jsx)(Ei,{a:n,busy:Ce,listSearchQuery:Te,onListSearchQueryChange:Ee,onAddAgent:()=>nt()}),[n,Ce,Te,nt]);(0,Q.useLayoutEffect)(()=>x?(E({startExtra:null,main:(0,X.jsx)(`div`,{className:`min-w-0`,children:(0,X.jsx)(`h1`,{className:`truncate text-base font-semibold tracking-tight text-fg`,children:n.title})}),end:st}),()=>D()):(D(),()=>D()),[n.title,st,D,x,E]);async function ct(t){t.preventDefault();let r=ne.trim();if(!r)return;let i=Ci(ie,r);if(i.ok===!1){me(i.error);return}let a=ce.trim()||Ti(ie.trim()||r);if(a){we(!0),me(null);try{let t=[`# IDENTITY.md - Who Am I?`,``,`- **Name:** ${r}`,`- **Description:** ${oe.trim()}`,`- **Language:** ${e}`,`- **Creature:** assistant`,`- **Emoji:**`,`- **Avatar:**`,``].join(`
|
|
391
|
+
`),{createdAgentId:n,...i}=await b({workspace:a,...ie.trim()?{id:ie.trim()}:{},...ue.trim()?{models:{chat:{primary:ue.trim()}}}:{},profileFiles:{"IDENTITY.md":t},...ye?{cloneFrom:ye}:{}});j(i,{revalidate:!1}),re(``),ae(``),se(``),le(``),fe(``),me(null),ge(!1),V(n),w(xt(n))}catch(e){me(e instanceof Error?e.message:n.saveError)}finally{we(!1)}}}async function lt(){if(K){we(!0),R(null);try{j(await Pe(K.id,{workspace:De.trim()||void 0,models:{chat:ke.trim()?{primary:ke.trim()}:null}}),{revalidate:!1})}catch(e){R(e instanceof Error?e.message:n.saveError)}finally{we(!1)}}}async function ut(e){we(!0),R(null);try{j(await Pe(e.id,{setDefault:!0}),{revalidate:!1}),V(e.id)}catch(e){R(e instanceof Error?e.message:n.saveError)}finally{we(!1)}}async function dt(e,t){we(!0),R(null);try{let n=await de(e.id,t);j(n,{revalidate:!1}),V(n.defaultId),G(`overview`),T===e.id&&w(At,{replace:!0}),o(!1),l(null),_(``)}catch(e){R(e instanceof Error?e.message:n.saveError)}finally{we(!1)}}function ft(e,t){e.id!==`main`&&(l(e),f(t),_(``),o(!0))}async function pt(){if(K){we(!0),R(null);try{let e=Array.from(Ze.toolEntryDisable).toSorted((e,t)=>e.localeCompare(t));j(await Pe(K.id,{tools:{disable:e}}),{revalidate:!1})}catch(e){R(e instanceof Error?e.message:n.saveError)}finally{we(!1)}}}async function mt(){if(K){we(!0),R(null);try{j(await Pe(K.id,{tools:{disable:null}}),{revalidate:!1}),Ze.setToolEntryDisable(new Set)}catch(e){R(e instanceof Error?e.message:n.saveError)}finally{we(!1)}}}async function gt(){if(!K)return;let e=Mn(Ze.modelRows,{invalidId:n.typedModelsInvalidId,duplicateId:n.typedModelsDuplicateId,invalidModel:n.typedModelsInvalidModel});if(e){R(e);return}we(!0),R(null);try{j(await Pe(K.id,{models:{roles:jn(Ze.modelRows)?.roles??{}}}),{revalidate:!1})}catch(e){R(e instanceof Error?e.message:n.saveError)}finally{we(!1)}}async function q(){if(K){we(!0),R(null);try{j(await Pe(K.id,{models:{roles:null}}),{revalidate:!1}),Ze.setModelRows([])}catch(e){R(e instanceof Error?e.message:n.saveError)}finally{we(!1)}}}async function _t(){if(K){we(!0),R(null);try{j(await Pe(K.id,{skills:Ze.skillsInherit?null:[...Ze.skillsPick].toSorted((e,t)=>e.localeCompare(t))}),{revalidate:!1})}catch(e){R(e instanceof Error?e.message:n.saveError)}finally{we(!1)}}}let vt=W===`channels`||W===`cron`,yt=(()=>{if(!K||W!==`overview`)return!1;let e=K.workspace,t=K.model?.primary??``;return De.trim()!==e||ke.trim()!==t})(),bt=(()=>{if(vt||!K)return!1;switch(W){case`overview`:return yt||Ye.dirty;case`profile`:return Re;default:return!0}})(),St=vt||!bt;function Ct(){Ve(!0),setTimeout(()=>Ve(!1),2e3)}async function wt(){switch(W){case`overview`:await Promise.all([lt(),Le.current?.()??Promise.resolve()]),Ct();break;case`profile`:await Ie.current?.(),Ct();break;case`tools`:await pt(),Ct();break;case`models`:await gt(),Ct();break;case`skills`:await _t(),Ct();break;case`files`:Xe.saveProfileMarkdownDebounced.flush(),Ct();break;default:break}}function Tt(e){e||w(At)}let Et=K?je.trim()||ht(K,n):T??``,Dt=K?.id??T??``,Ot=(0,Q.useCallback)(async()=>{if(K){await wt();try{globalThis.localStorage?.setItem(h,K.id)}catch{}w(`/chat/new`,{state:{agentId:K.id,fromAgentEditor:!0}})}},[K,wt,w]),kt={a:n,chat:y,cCron:v,selected:K,panel:W,data:F,busy:Ce,editName:je,setEditName:Me,editDescription:Ne,setEditDescription:Fe,editWorkspace:De,setEditWorkspace:Oe,editModel:ke,setEditModel:Ae,defaultModel:P.model,defaultWorkspace:P.workspace,onSetDefault:()=>{K&&ut(K)},onSaveAgentEdits:()=>void lt(),onDelete:e=>{K&&ft(K,e)},onTryInChat:()=>void Ot(),overviewSaveProfileMarkdownRef:Le,profileSaveRef:Ie,overviewProfile:Ye,setProfileDirty:ze,filesLoading:Xe.filesLoading,files:Xe.files,activeFile:Xe.activeFile,setActiveFile:Xe.setActiveFile,filesViewMode:Xe.filesViewMode,setFilesViewMode:Xe.setFilesViewMode,fileDraft:Xe.fileDraft,setFileDraft:Xe.setFileDraft,fileSaving:Xe.fileSaving,profileFileLoading:Xe.profileFileLoading,profileEditorNonce:Xe.profileEditorNonce,toolEntryDisable:Ze.toolEntryDisable,setToolEntryDisable:Ze.setToolEntryDisable,onSaveTools:()=>void pt(),onClearToolsEntry:()=>void mt(),modelRows:Ze.modelRows,setModelRows:Ze.setModelRows,onSaveModels:()=>void gt(),onClearModelsEntry:()=>void q(),skillsCatalogLoading:et.skillsCatalogLoading,catalogForPick:et.catalogForPick,skillsInherit:Ze.skillsInherit,setSkillsInherit:Ze.setSkillsInherit,skillsPick:Ze.skillsPick,setSkillsPick:Ze.setSkillsPick,onSaveSkills:()=>void _t(),bindingsLoading:Qe.bindingsLoading,agentBindings:Qe.agentBindings,bindChannelStatuses:Qe.bindChannelStatuses,bindChannelsLoading:Qe.bindChannelsLoading,useManualChannel:Qe.useManualChannel,newBindChannel:Qe.newBindChannel,setNewBindChannel:Qe.setNewBindChannel,bindSessionChats:Qe.bindSessionChats,bindSessionsLoading:Qe.bindSessionsLoading,newBindSessionIdx:Qe.newBindSessionIdx,setNewBindSessionIdx:Qe.setNewBindSessionIdx,newBindCustomPeer:Qe.newBindCustomPeer,setNewBindCustomPeer:Qe.setNewBindCustomPeer,refreshBindSessions:Qe.refreshBindSessions,onRemoveBinding:e=>void Qe.onRemoveBinding(e),onAddBinding:Qe.onAddBinding,cronLoading:$e.cronLoading,agentCronJobs:$e.agentCronJobs,onSetCronJobAgent:(e,t)=>void $e.onSetCronJobAgent(e,t)};return{hasToken:x,a:n,chat:y,language:e,data:F,loading:I,displayError:B,navigate:w,routeAgentId:T,showPresetSetup:We,onPresetSetupComplete:Ge,onPresetSetupSkip:Ke,busy:Ce,listSearchQuery:Te,openAddAgentModal:nt,openDuplicateAgentModal:ot,duplicateSourceId:ye,onSelectDuplicateSource:at,panel:W,setPanel:G,modalTitle:Et,modalSubtitle:Dt,footerSaveDisabled:St,savedFlash:Be,handleModalFooterSave:wt,onAgentModalOpenChange:Tt,addAgentModalOpen:he,setAddAgentModalOpen:ge,createWorkspaceSuggestedRef:ve,createModalError:pe,setCreateModalError:me,createDisplayName:ne,setCreateDisplayName:re,createAgentId:ie,setCreateAgentId:ae,createDescription:oe,setCreateDescription:se,createWorkspace:ce,setCreateWorkspace:le,createModel:ue,setCreateModel:fe,onCreate:ct,currentLanguageLabel:e===`zh`?`中文`:`English`,applyCreateWorkspaceSuggestion:tt,deleteDialogOpen:r,setDeleteDialogOpen:o,deletePurge:d,deleteTarget:c,setDeleteTarget:l,deleteConfirmText:m,setDeleteConfirmText:_,performDelete:dt,editorPanelProps:kt}}function Hi(){let e=Vi();if(!e.hasToken)return(0,X.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-3 px-4 py-8`,children:[(0,X.jsx)(`h1`,{className:`text-lg font-semibold text-fg`,children:e.a.title}),(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:e.a.needToken})]});if(e.showPresetSetup&&e.data){let t=new Set(e.data.agents.map(e=>e.id));if(Nr.some(e=>!t.has(e.id)))return(0,X.jsx)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col px-4 py-8`,children:(0,X.jsx)(Ir,{existingAgentIds:t,onComplete:e.onPresetSetupComplete,onSkip:e.onPresetSetupSkip})})}return(0,X.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-6 px-4 py-8`,children:[e.displayError?(0,X.jsx)(`div`,{className:`rounded-lg border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-800 dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-200`,children:e.displayError}):null,e.loading?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:e.a.loading}):e.data?(0,X.jsx)(Or,{a:e.a,agents:e.data.agents,searchQuery:e.listSearchQuery,onOpenAgent:t=>e.navigate(xt(t)),onChatWithAgent:t=>{let n=t.trim().toLowerCase();try{globalThis.localStorage?.setItem(h,n)}catch{}e.navigate(`/chat/new`,{state:{agentId:n}})},busy:e.busy}):null,e.routeAgentId&&e.hasToken?(0,X.jsx)(dn,{open:!!e.routeAgentId,onOpenChange:e.onAgentModalOpenChange,a:e.a,title:e.modalTitle,subtitle:e.modalSubtitle,panel:e.panel,onPanelChange:e.setPanel,onFooterSave:()=>void e.handleModalFooterSave(),footerSaveDisabled:e.footerSaveDisabled,footerSavedFlash:e.savedFlash,busy:e.busy,children:e.loading||!e.data?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:e.a.loading}):(0,X.jsx)(Er,{...e.editorPanelProps})}):null,(0,X.jsx)(kr,{open:e.addAgentModalOpen,onOpenChange:t=>{e.setAddAgentModalOpen(t),t||(e.createWorkspaceSuggestedRef.current=``,e.setCreateDisplayName(``),e.setCreateAgentId(``),e.setCreateDescription(``),e.setCreateWorkspace(``),e.setCreateModel(``),e.setCreateModalError(null),e.onSelectDuplicateSource(null))},a:e.a,chat:e.chat,busy:e.busy,modalError:e.createModalError,profileLanguageLabel:e.currentLanguageLabel,createDisplayName:e.createDisplayName,setCreateDisplayName:e.setCreateDisplayName,createAgentId:e.createAgentId,setCreateAgentId:e.setCreateAgentId,createDescription:e.createDescription,setCreateDescription:e.setCreateDescription,createWorkspace:e.createWorkspace,setCreateWorkspace:e.setCreateWorkspace,createModel:e.createModel,setCreateModel:e.setCreateModel,onCreate:e.onCreate,onSuggestWorkspace:()=>e.applyCreateWorkspaceSuggestion(),agents:e.data?.agents??[],duplicateSourceId:e.duplicateSourceId,onSelectDuplicateSource:e.onSelectDuplicateSource}),(0,X.jsx)(on,{open:e.deleteDialogOpen,onOpenChange:t=>{e.setDeleteDialogOpen(t),t||(e.setDeleteTarget(null),e.setDeleteConfirmText(``))},busy:e.busy,deletePurge:e.deletePurge,deleteTarget:e.deleteTarget,deleteConfirmText:e.deleteConfirmText,onDeleteConfirmTextChange:e.setDeleteConfirmText,onConfirm:()=>{e.deleteTarget&&e.performDelete(e.deleteTarget,e.deletePurge)},onCancel:()=>e.setDeleteDialogOpen(!1),a:e.a})]})}var Ui=new Set([`runtime`,`context`,`memory`,`system-prompt`]),Wi=new Set([`updates`,`security`,`advanced`]),Gi=new Set([`local`,`cdp`,`cloud`]);function Ki(e,t){return t===`advanced`?!0:!Ui.has(e)}function qi(e,t){return e.filter(e=>Ki(e,t))}function Ji(e,t){return t===`advanced`?!0:!Wi.has(e)}function Yi(e,t){return e.filter(e=>Ji(e,t))}function Xi(e,t){return t===`advanced`?!0:!Gi.has(e)}function Zi(e,t){return e.filter(e=>Xi(e,t))}function Qi(e){return`model-strategy`}function $i(){return`network`}function ea(){return`overview`}function ta(e,t){let n=(0,Y.c)(5),r=Mt(na),i,a;n[0]!==e||n[1]!==r||n[2]!==t?(i=()=>{Ki(e,r)||t(Qi(r))},a=[e,r,t],n[0]=e,n[1]=r,n[2]=t,n[3]=i,n[4]=a):(i=n[3],a=n[4]),(0,Q.useEffect)(i,a)}function na(e){return e.mode}function ra(e,t){let n=(0,Y.c)(5),r=Mt(ia),i,a;n[0]!==e||n[1]!==r||n[2]!==t?(i=()=>{Ji(e,r)||t($i())},a=[e,r,t],n[0]=e,n[1]=r,n[2]=t,n[3]=i,n[4]=a):(i=n[3],a=n[4]),(0,Q.useEffect)(i,a)}function ia(e){return e.mode}function aa(e,t){let n=(0,Y.c)(5),r=Mt(oa),i,a;n[0]!==e||n[1]!==r||n[2]!==t?(i=()=>{Xi(e,r)||t(ea())},a=[e,r,t],n[0]=e,n[1]=r,n[2]=t,n[3]=i,n[4]=a):(i=n[3],a=n[4]),(0,Q.useEffect)(i,a)}function oa(e){return e.mode}function $(e){let t=(0,Y.c)(8),{label:n,description:r,children:i}=e,a;t[0]===n?a=t[1]:(a=(0,X.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:n}),t[0]=n,t[1]=a);let o;t[2]===r?o=t[3]:(o=(0,X.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-subtle`,children:r}),t[2]=r,t[3]=o);let s;return t[4]!==i||t[5]!==a||t[6]!==o?(s=(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[a,i,o]}),t[4]=i,t[5]=a,t[6]=o,t[7]=s):s=t[7],s}function sa(e){switch(e){case`ready`:return`bg-emerald-500`;case`not_installed`:case`checking`:return`bg-amber-500`;case`error`:return`bg-red-500`;default:return`bg-fg-subtle/60`}}function ca(e){let t=(0,Y.c)(28),{value:n,onChange:r,onOpenConfig:i,options:a,m:o}=e,s;if(t[0]!==o.browserGoToConfigure||t[1]!==o.browserPickerSubtitle||t[2]!==o.browserPickerTitle||t[3]!==r||t[4]!==i||t[5]!==a||t[6]!==n){let e=a.find(e=>e.value===n)??a[0],c;t[8]===o.browserPickerTitle?c=t[9]:(c=(0,X.jsx)(`label`,{htmlFor:`browser-backend-select`,className:`text-sm font-medium text-fg`,children:o.browserPickerTitle}),t[8]=o.browserPickerTitle,t[9]=c);let l;t[10]===o.browserPickerSubtitle?l=t[11]:(l=(0,X.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-muted`,children:o.browserPickerSubtitle}),t[10]=o.browserPickerSubtitle,t[11]=l);let u;t[12]!==c||t[13]!==l?(u=(0,X.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[c,l]}),t[12]=c,t[13]=l,t[14]=u):u=t[14];let d;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(d=J(Tn(),`min-w-0 flex-1 sm:max-w-md`),t[15]=d):d=t[15];let f;t[16]===r?f=t[17]:(f=e=>r(e.target.value),t[16]=r,t[17]=f);let p=o.browserPickerTitle,m;t[18]===a?m=t[19]:(m=a.map(la),t[18]=a,t[19]=m);let h;t[20]!==o.browserPickerTitle||t[21]!==f||t[22]!==m||t[23]!==n?(h=(0,X.jsx)(`select`,{id:`browser-backend-select`,className:d,value:n,onChange:f,"aria-label":p,children:m}),t[20]=o.browserPickerTitle,t[21]=f,t[22]=m,t[23]=n,t[24]=h):h=t[24];let g=i?(0,X.jsxs)(`button`,{type:`button`,className:J(`inline-flex shrink-0 items-center justify-center gap-1 rounded-lg border border-edge bg-surface-panel px-3 py-2 text-xs font-medium text-accent`,`transition-colors hover:border-edge-strong hover:bg-surface-hover`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-base`),onClick:()=>i(n),"aria-label":`${e?.name??n} — ${o.browserGoToConfigure}`,children:[(0,X.jsx)(`span`,{children:o.browserGoToConfigure}),(0,X.jsx)(v,{className:`size-4 shrink-0`,"aria-hidden":!0})]}):null,_;t[25]!==g||t[26]!==h?(_=(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:gap-2`,children:[h,g]}),t[25]=g,t[26]=h,t[27]=_):_=t[27],s=(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[u,_,e?(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5 rounded-lg border border-edge-subtle bg-surface-panel px-3 py-2.5`,children:[(0,X.jsx)(`div`,{className:`flex flex-wrap items-center gap-2`,children:e.statusLabel?(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-[11px] font-medium text-fg-muted`,"aria-label":e.statusLabel,children:[(0,X.jsx)(`span`,{className:J(`inline-block size-1.5 rounded-full`,sa(e.status)),"aria-hidden":!0}),e.statusLabel]}):null}),(0,X.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-muted`,children:e.tagline})]}):null]}),t[0]=o.browserGoToConfigure,t[1]=o.browserPickerSubtitle,t[2]=o.browserPickerTitle,t[3]=r,t[4]=i,t[5]=a,t[6]=n,t[7]=s}else s=t[7];return s}function la(e){return(0,X.jsx)(`option`,{value:e.value,children:e.name},e.value)}function ua(e){return`browser-focus-${e}`}function da(e){switch(e){case`connection`:case`extension`:case`local`:case`cloak`:case`cdp`:case`cloud`:case`runtime`:case`security`:return e;default:return null}}function fa(e){let t=(0,Y.c)(89),{a:n,form:r,update:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=ua(`runtime`),t[0]=a):a=t[0];let o;t[1]===n.browserBehaviorShow?o=t[2]:(o=(0,X.jsx)(qt,{icon:S,title:n.browserBehaviorShow}),t[1]=n.browserBehaviorShow,t[2]=o);let s;t[3]===i?s=t[4]:(s=e=>i({browserHeadless:e.target.checked}),t[3]=i,t[4]=s);let c;t[5]!==r.browserHeadless||t[6]!==s?(c=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:r.browserHeadless,onChange:s}),t[5]=r.browserHeadless,t[6]=s,t[7]=c):c=t[7];let l;t[8]===n.browserHeadlessOn?l=t[9]:(l=(0,X.jsx)(`span`,{children:n.browserHeadlessOn}),t[8]=n.browserHeadlessOn,t[9]=l);let u;t[10]!==c||t[11]!==l?(u=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[c,l]}),t[10]=c,t[11]=l,t[12]=u):u=t[12];let d;t[13]!==n.desc.browserHeadless||t[14]!==n.label.browserHeadless||t[15]!==u?(d=(0,X.jsx)($,{label:n.label.browserHeadless,description:n.desc.browserHeadless,children:u}),t[13]=n.desc.browserHeadless,t[14]=n.label.browserHeadless,t[15]=u,t[16]=d):d=t[16];let f=n.label.browserDialogPolicy,p=n.desc.browserDialogPolicy,m;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(m=Tn(),t[17]=m):m=t[17];let h;t[18]===i?h=t[19]:(h=e=>i({browserDialogPolicy:e.target.value}),t[18]=i,t[19]=h);let g;t[20]===n.browserDialogPolicyMustRespond?g=t[21]:(g=(0,X.jsx)(`option`,{value:`must_respond`,children:n.browserDialogPolicyMustRespond}),t[20]=n.browserDialogPolicyMustRespond,t[21]=g);let _;t[22]===n.browserDialogPolicyAutoDismiss?_=t[23]:(_=(0,X.jsx)(`option`,{value:`auto_dismiss`,children:n.browserDialogPolicyAutoDismiss}),t[22]=n.browserDialogPolicyAutoDismiss,t[23]=_);let v;t[24]===n.browserDialogPolicyAutoAccept?v=t[25]:(v=(0,X.jsx)(`option`,{value:`auto_accept`,children:n.browserDialogPolicyAutoAccept}),t[24]=n.browserDialogPolicyAutoAccept,t[25]=v);let y;t[26]!==r.browserDialogPolicy||t[27]!==h||t[28]!==g||t[29]!==_||t[30]!==v?(y=(0,X.jsxs)(`select`,{className:m,value:r.browserDialogPolicy,onChange:h,children:[g,_,v]}),t[26]=r.browserDialogPolicy,t[27]=h,t[28]=g,t[29]=_,t[30]=v,t[31]=y):y=t[31];let b;t[32]!==n.desc.browserDialogPolicy||t[33]!==n.label.browserDialogPolicy||t[34]!==y?(b=(0,X.jsx)($,{label:f,description:p,children:y}),t[32]=n.desc.browserDialogPolicy,t[33]=n.label.browserDialogPolicy,t[34]=y,t[35]=b):b=t[35];let x=n.label.browserDialogTimeout,C=n.desc.browserDialogTimeout,w;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(w=Z(),t[36]=w):w=t[36];let T=r.browserDialogTimeout??``,E;t[37]===i?E=t[38]:(E=e=>{let t=e.target.value;i({browserDialogTimeout:t===``?void 0:Number.parseInt(t,10)})},t[37]=i,t[38]=E);let D;t[39]!==T||t[40]!==E?(D=(0,X.jsx)(`input`,{type:`number`,className:w,min:1,value:T,placeholder:`300`,onChange:E}),t[39]=T,t[40]=E,t[41]=D):D=t[41];let O;t[42]!==n.desc.browserDialogTimeout||t[43]!==n.label.browserDialogTimeout||t[44]!==D?(O=(0,X.jsx)($,{label:x,description:C,children:D}),t[42]=n.desc.browserDialogTimeout,t[43]=n.label.browserDialogTimeout,t[44]=D,t[45]=O):O=t[45];let k;t[46]!==b||t[47]!==O||t[48]!==d?(k=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[d,b,O]}),t[46]=b,t[47]=O,t[48]=d,t[49]=k):k=t[49];let A;t[50]!==o||t[51]!==k?(A=(0,X.jsx)(`div`,{id:a,className:`scroll-mt-24`,children:(0,X.jsxs)(Jt,{children:[o,k]})}),t[50]=o,t[51]=k,t[52]=A):A=t[52];let j;t[53]===Symbol.for(`react.memo_cache_sentinel`)?(j=ua(`security`),t[53]=j):j=t[53];let M;t[54]===n.browserSecurityShow?M=t[55]:(M=(0,X.jsx)(qt,{icon:Fe,title:n.browserSecurityShow}),t[54]=n.browserSecurityShow,t[55]=M);let N;t[56]===i?N=t[57]:(N=e=>i({browserAllowPrivateUrls:e.target.checked}),t[56]=i,t[57]=N);let P;t[58]!==r.browserAllowPrivateUrls||t[59]!==N?(P=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:r.browserAllowPrivateUrls,onChange:N}),t[58]=r.browserAllowPrivateUrls,t[59]=N,t[60]=P):P=t[60];let F;t[61]===n.browserAllowPrivateOn?F=t[62]:(F=(0,X.jsx)(`span`,{children:n.browserAllowPrivateOn}),t[61]=n.browserAllowPrivateOn,t[62]=F);let I;t[63]!==P||t[64]!==F?(I=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[P,F]}),t[63]=P,t[64]=F,t[65]=I):I=t[65];let L;t[66]!==n.desc.browserAllowPrivateUrls||t[67]!==n.label.browserAllowPrivateUrls||t[68]!==I?(L=(0,X.jsx)($,{label:n.label.browserAllowPrivateUrls,description:n.desc.browserAllowPrivateUrls,children:I}),t[66]=n.desc.browserAllowPrivateUrls,t[67]=n.label.browserAllowPrivateUrls,t[68]=I,t[69]=L):L=t[69];let R=n.label.browserCommandTimeout,z=n.desc.browserCommandTimeout,B;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(B=Z(),t[70]=B):B=t[70];let ee=r.browserCommandTimeout??``,V;t[71]===i?V=t[72]:(V=e=>{let t=e.target.value;i({browserCommandTimeout:t===``?void 0:Number.parseInt(t,10)})},t[71]=i,t[72]=V);let H;t[73]!==ee||t[74]!==V?(H=(0,X.jsx)(`input`,{type:`number`,className:B,min:5,value:ee,placeholder:`30`,onChange:V}),t[73]=ee,t[74]=V,t[75]=H):H=t[75];let U;t[76]!==n.desc.browserCommandTimeout||t[77]!==n.label.browserCommandTimeout||t[78]!==H?(U=(0,X.jsx)($,{label:R,description:z,children:H}),t[76]=n.desc.browserCommandTimeout,t[77]=n.label.browserCommandTimeout,t[78]=H,t[79]=U):U=t[79];let te;t[80]!==L||t[81]!==U?(te=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[L,U]}),t[80]=L,t[81]=U,t[82]=te):te=t[82];let W;t[83]!==M||t[84]!==te?(W=(0,X.jsx)(`div`,{id:j,className:`scroll-mt-24`,children:(0,X.jsxs)(Jt,{className:`border border-amber-500/20`,children:[M,te]})}),t[83]=M,t[84]=te,t[85]=W):W=t[85];let G;return t[86]!==A||t[87]!==W?(G=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[A,W]}),t[86]=A,t[87]=W,t[88]=G):G=t[88],G}function pa(e){let t=(0,Y.c)(9),{language:n,label:r,className:i}=e,a;t[0]===n?a=t[1]:(a=R(n),t[0]=n,t[1]=a);let o;t[2]===i?o=t[3]:(o=J(`inline-flex items-center gap-1 text-xs font-medium text-accent hover:underline`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40`,i),t[2]=i,t[3]=o);let s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,X.jsx)(_t,{className:`size-3 shrink-0`,"aria-hidden":!0}),t[4]=s):s=t[4];let c;return t[5]!==r||t[6]!==a||t[7]!==o?(c=(0,X.jsxs)(`a`,{href:a,target:`_blank`,rel:`noreferrer`,className:o,children:[r,s]}),t[5]=r,t[6]=a,t[7]=o,t[8]=c):c=t[8],c}function ma(e){let t=(0,Y.c)(27),{title:n,description:r,recommended:i,recommendedLabel:a,icon:o,onSelect:s,selectLabel:c}=e,l=`${n} — ${c}`,u;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(u=J(`group flex w-full flex-col rounded-xl border border-edge bg-surface-panel px-3 py-3 text-left transition-colors`,`hover:border-edge-strong hover:bg-surface-hover/40`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`),t[0]=u):u=t[0];let d;t[1]===o?d=t[2]:(d=(0,X.jsx)(`span`,{className:`flex size-8 shrink-0 items-center justify-center rounded-lg bg-surface-hover text-fg-muted`,children:(0,X.jsx)(o,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0})}),t[1]=o,t[2]=d);let f;t[3]===n?f=t[4]:(f=(0,X.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:n}),t[3]=n,t[4]=f);let p;t[5]!==i||t[6]!==a?(p=i&&a?(0,X.jsx)(`span`,{className:`rounded-full bg-accent/15 px-2 py-0.5 text-[10px] font-medium text-accent`,children:a}):null,t[5]=i,t[6]=a,t[7]=p):p=t[7];let m;t[8]!==f||t[9]!==p?(m=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[f,p]}),t[8]=f,t[9]=p,t[10]=m):m=t[10];let h;t[11]===r?h=t[12]:(h=(0,X.jsx)(`p`,{className:`mt-1 text-xs leading-relaxed text-fg-muted`,children:r}),t[11]=r,t[12]=h);let g;t[13]!==m||t[14]!==h?(g=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[m,h]}),t[13]=m,t[14]=h,t[15]=g):g=t[15];let _;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,X.jsx)(v,{className:`mt-0.5 size-4 shrink-0 text-fg-subtle transition-transform group-hover:translate-x-0.5`,"aria-hidden":!0}),t[16]=_):_=t[16];let y;t[17]!==d||t[18]!==g?(y=(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[d,g,_]}),t[17]=d,t[18]=g,t[19]=y):y=t[19];let b;t[20]===c?b=t[21]:(b=(0,X.jsx)(`span`,{className:`mt-2 text-[11px] font-medium text-accent`,children:c}),t[20]=c,t[21]=b);let x;return t[22]!==s||t[23]!==l||t[24]!==y||t[25]!==b?(x=(0,X.jsxs)(`button`,{type:`button`,onClick:s,"aria-label":l,className:u,children:[y,b]}),t[22]=s,t[23]=l,t[24]=y,t[25]=b,t[26]=x):x=t[26],x}function ha(e){let t=(0,Y.c)(25),{m:n,onStart:r}=e,i=Mt(ga),a;t[0]!==n.browserBackendCloakBrowser||t[1]!==n.browserModeCloakTagline||t[2]!==n.browserSetupCloudDesc||t[3]!==n.browserSetupCloudTitle||t[4]!==n.browserSetupExtDesc||t[5]!==n.browserSetupExtTitle||t[6]!==n.browserSetupLocalDesc||t[7]!==n.browserSetupLocalTitle||t[8]!==i?(a=[{id:`extension`,icon:Ct,title:n.browserSetupExtTitle,description:n.browserSetupExtDesc,recommended:!0},{id:`cloakbrowser`,icon:ke,title:n.browserBackendCloakBrowser,description:n.browserModeCloakTagline},{id:`local`,icon:zt,title:n.browserSetupLocalTitle,description:n.browserSetupLocalDesc},{id:`cloud`,icon:Ft,title:n.browserSetupCloudTitle,description:n.browserSetupCloudDesc}].filter(e=>Xi(e.id,i)),t[0]=n.browserBackendCloakBrowser,t[1]=n.browserModeCloakTagline,t[2]=n.browserSetupCloudDesc,t[3]=n.browserSetupCloudTitle,t[4]=n.browserSetupExtDesc,t[5]=n.browserSetupExtTitle,t[6]=n.browserSetupLocalDesc,t[7]=n.browserSetupLocalTitle,t[8]=i,t[9]=a):a=t[9];let o=a,s;t[10]===n.browserSetupTitle?s=t[11]:(s=(0,X.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:n.browserSetupTitle}),t[10]=n.browserSetupTitle,t[11]=s);let c;t[12]===n.browserSetupSubtitle?c=t[13]:(c=(0,X.jsx)(`p`,{className:`mt-1 text-xs leading-relaxed text-fg-muted`,children:n.browserSetupSubtitle}),t[12]=n.browserSetupSubtitle,t[13]=c);let l;t[14]!==s||t[15]!==c?(l=(0,X.jsxs)(`div`,{children:[s,c]}),t[14]=s,t[15]=c,t[16]=l):l=t[16];let u;t[17]!==n.browserSetupRecommended||t[18]!==n.browserSetupSelect||t[19]!==o||t[20]!==r?(u=(0,X.jsx)(`div`,{className:`flex flex-col gap-2`,children:o.map(e=>(0,X.jsx)(ma,{icon:e.icon,title:e.title,description:e.description,recommended:e.recommended,recommendedLabel:n.browserSetupRecommended,selectLabel:n.browserSetupSelect,onSelect:()=>r(e.id)},e.id))}),t[17]=n.browserSetupRecommended,t[18]=n.browserSetupSelect,t[19]=o,t[20]=r,t[21]=u):u=t[21];let d;return t[22]!==l||t[23]!==u?(d=(0,X.jsxs)(`div`,{className:`flex flex-col gap-3 rounded-xl border border-edge-subtle bg-surface-base px-4 py-4`,children:[l,u]}),t[22]=l,t[23]=u,t[24]=d):d=t[24],d}function ga(e){return e.mode}function _a(e){if(e.kind===`loading`)return`checking`;if(e.kind===`error`)return`error`;if(e.kind===`ok`)return e.data.installed?`ready`:`not_installed`}function va(e,t){if(e)return{ready:t.browserStatusReady,not_installed:t.browserStatusNotInstalled,checking:t.browserStatusChecking,unknown:t.browserStatusUnknown,error:t.browserStatusError}[e]}function ya(e){if(e.kind!==`idle`)return e.kind===`loading`?`checking`:e.kind===`error`?`error`:e.data.connected?`ready`:(e.data.running,`not_installed`)}function ba(e,t){if(e.kind!==`idle`)return e.kind===`loading`?t.browserStatusChecking:e.kind===`error`?t.browserStatusError:e.data.connected?t.browserExtensionConnected:e.data.running?t.browserExtensionWaiting:t.browserExtensionServerOff}var xa=[`overview`,`extension`,`local`,`cloakbrowser`,`cdp`,`cloud`],Sa=[`extension`,`local`,`cloakbrowser`,`cdp`,`cloud`],Ca={connection:`overview`,extension:`extension`,local:`local`,cloak:`cloakbrowser`,cdp:`cdp`,cloud:`cloud`,runtime:`overview`,security:`overview`};function wa(e){let t=(e??``).trim();return t===`behavior`?`overview`:xa.includes(t)?t:`overview`}function Ta(e){return Sa.includes(e)}function Ea(e){let t=(0,Y.c)(46),{icon:n,title:r,description:i,status:a,statusDetail:o,primaryAction:s,children:c,advanced:l,m:u,embedded:d,sectionTitle:f,advancedTitle:p}=e,m=d===void 0?!1:d,h;t[0]!==l||t[1]!==p?(h=l?(0,X.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[p?(0,X.jsx)(`h4`,{className:`text-sm font-medium text-fg`,children:p}):null,l]}):null,t[0]=l,t[1]=p,t[2]=h):h=t[2];let g=h;if(m){let e;t[3]!==i||t[4]!==f?(e=f?(0,X.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,X.jsx)(`h4`,{className:`text-sm font-medium text-fg`,children:f}),i?(0,X.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-muted`,children:i}):null]}):null,t[3]=i,t[4]=f,t[5]=e):e=t[5];let n;t[6]!==u||t[7]!==s||t[8]!==a||t[9]!==o?(n=a||s?(0,X.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[a?(0,X.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,X.jsx)(Da,{kind:a,detail:o,m:u})}):(0,X.jsx)(`span`,{}),s?(0,X.jsx)(`div`,{className:`shrink-0`,children:s}):null]}):null,t[6]=u,t[7]=s,t[8]=a,t[9]=o,t[10]=n):n=t[10];let r;t[11]===c?r=t[12]:(r=c?(0,X.jsx)(`div`,{className:`flex flex-col gap-4`,children:c}):null,t[11]=c,t[12]=r);let l;return t[13]!==g||t[14]!==e||t[15]!==n||t[16]!==r?(l=(0,X.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[e,n,r,g]}),t[13]=g,t[14]=e,t[15]=n,t[16]=r,t[17]=l):l=t[17],l}let _;t[18]===n?_=t[19]:(_=(0,X.jsx)(`div`,{className:`flex size-9 shrink-0 items-center justify-center rounded-lg bg-surface-hover text-fg-muted`,children:(0,X.jsx)(n,{className:`size-4`,strokeWidth:1.75})}),t[18]=n,t[19]=_);let v;t[20]===r?v=t[21]:(v=(0,X.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:r}),t[20]=r,t[21]=v);let y;t[22]!==u||t[23]!==a||t[24]!==o?(y=a?(0,X.jsx)(Da,{kind:a,detail:o,m:u}):null,t[22]=u,t[23]=a,t[24]=o,t[25]=y):y=t[25];let b;t[26]!==v||t[27]!==y?(b=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[v,y]}),t[26]=v,t[27]=y,t[28]=b):b=t[28];let x;t[29]===i?x=t[30]:(x=(0,X.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-muted`,children:i}),t[29]=i,t[30]=x);let S;t[31]!==b||t[32]!==x?(S=(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[b,x]}),t[31]=b,t[32]=x,t[33]=S):S=t[33];let C;t[34]===s?C=t[35]:(C=s?(0,X.jsx)(`div`,{className:`shrink-0`,children:s}):null,t[34]=s,t[35]=C);let w;t[36]!==_||t[37]!==S||t[38]!==C?(w=(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[_,S,C]}),t[36]=_,t[37]=S,t[38]=C,t[39]=w):w=t[39];let T;t[40]===c?T=t[41]:(T=c?(0,X.jsx)(`div`,{className:`flex flex-col gap-4`,children:c}):null,t[40]=c,t[41]=T);let E;return t[42]!==g||t[43]!==w||t[44]!==T?(E=(0,X.jsxs)(`div`,{className:`flex flex-col gap-4 rounded-xl border border-edge bg-surface-panel p-4`,children:[w,T,g]}),t[42]=g,t[43]=w,t[44]=T,t[45]=E):E=t[45],E}function Da(e){let t=(0,Y.c)(27),{kind:n,detail:r,m:i}=e,a,o,s,l;if(t[0]!==n||t[1]!==i.browserStatusChecking||t[2]!==i.browserStatusError||t[3]!==i.browserStatusNotInstalled||t[4]!==i.browserStatusReady||t[5]!==i.browserStatusUnknown){let{icon:e,color:r,label:u}={ready:{icon:c,color:`text-green-600 dark:text-green-400`,label:i.browserStatusReady},not_installed:{icon:Ce,color:`text-amber-600 dark:text-amber-400`,label:i.browserStatusNotInstalled},checking:{icon:pt,color:`text-fg-muted`,label:i.browserStatusChecking},unknown:{icon:O,color:`text-fg-muted`,label:i.browserStatusUnknown},error:{icon:T,color:`text-red-600 dark:text-red-400`,label:i.browserStatusError}}[n];a=e,o=u,l=`inline-flex min-w-0 flex-col items-start gap-1`,s=J(`inline-flex shrink-0 items-center gap-1 whitespace-nowrap text-xs font-medium`,r),t[0]=n,t[1]=i.browserStatusChecking,t[2]=i.browserStatusError,t[3]=i.browserStatusNotInstalled,t[4]=i.browserStatusReady,t[5]=i.browserStatusUnknown,t[6]=a,t[7]=o,t[8]=s,t[9]=l}else a=t[6],o=t[7],s=t[8],l=t[9];let u=n===`checking`&&`animate-spin`,d;t[10]===u?d=t[11]:(d=J(`size-3.5 shrink-0`,u),t[10]=u,t[11]=d);let f;t[12]!==a||t[13]!==d?(f=(0,X.jsx)(a,{className:d}),t[12]=a,t[13]=d,t[14]=f):f=t[14];let p;t[15]===o?p=t[16]:(p=(0,X.jsx)(`span`,{children:o}),t[15]=o,t[16]=p);let m;t[17]!==s||t[18]!==f||t[19]!==p?(m=(0,X.jsxs)(`span`,{className:s,children:[f,p]}),t[17]=s,t[18]=f,t[19]=p,t[20]=m):m=t[20];let h;t[21]===r?h=t[22]:(h=r?(0,X.jsx)(`span`,{className:`break-all font-mono text-[11px] leading-snug text-fg-subtle`,children:r}):null,t[21]=r,t[22]=h);let g;return t[23]!==l||t[24]!==m||t[25]!==h?(g=(0,X.jsxs)(`span`,{className:l,children:[m,h]}),t[23]=l,t[24]=m,t[25]=h,t[26]=g):g=t[26],g}function Oa(e){let t=(0,Y.c)(5),{kind:n,message:r}=e,i=n===`success`?`border-green-500/30 bg-green-500/10 text-green-700 dark:text-green-300`:`border-red-500/30 bg-red-500/10 text-red-600 dark:text-red-300`,a;t[0]===i?a=t[1]:(a=J(`rounded-lg border px-3 py-2 text-xs leading-relaxed`,i),t[0]=i,t[1]=a);let o;return t[2]!==r||t[3]!==a?(o=(0,X.jsx)(`div`,{className:a,children:r}),t[2]=r,t[3]=a,t[4]=o):o=t[4],o}var ka={instances:[],launchStatus:`idle`,launchMessage:null,testStatus:`idle`,testMessage:null,executablePath:``};function Aa({m:e,cdpUrl:t,onCdpUrlChange:n,launch:r,stop:i,listInstances:a,ping:o,embedded:s=!1}){let[c,l]=(0,Q.useReducer)(me,ka),{instances:u,launchStatus:d,launchMessage:f,testStatus:p,testMessage:m,executablePath:h}=c,g=(0,Q.useCallback)(async()=>{try{l({type:`patch`,patch:{instances:await a()}})}catch{}},[a]);(0,Q.useEffect)(()=>{g();let e=setInterval(()=>void g(),8e3);return()=>clearInterval(e)},[g]);let _=(0,Q.useCallback)(async()=>{if(d!==`pending`){l({type:`patch`,patch:{launchStatus:`pending`,launchMessage:null}});try{let t=await r(h.trim()||void 0);l({type:`patch`,patch:{launchStatus:`ok`,launchMessage:e.browserCdpLaunchedAtPort.replace(`{{port}}`,String(t.port))}}),n(t.wsEndpoint),await g()}catch(e){l({type:`patch`,patch:{launchStatus:`error`,launchMessage:e instanceof Error?e.message:String(e)}})}}},[h,r,d,e.browserCdpLaunchedAtPort,n,g]),v=(0,Q.useCallback)(async e=>{await i(e),await g()},[g,i]),y=(0,Q.useCallback)(async()=>{if(t.trim()){l({type:`patch`,patch:{testStatus:`pending`,testMessage:null}});try{let n=await o(t.trim());n.reachable?l({type:`patch`,patch:{testStatus:`ok`,testMessage:e.browserCdpReachable.replace(`{{browser}}`,n.browser??`—`)}}):l({type:`patch`,patch:{testStatus:`error`,testMessage:e.browserCdpUnreachable.replace(`{{error}}`,n.error??`—`)}})}catch(t){l({type:`patch`,patch:{testStatus:`error`,testMessage:e.browserCdpUnreachable.replace(`{{error}}`,t instanceof Error?t.message:String(t))}})}}},[t,e.browserCdpReachable,e.browserCdpUnreachable,o]);return(0,X.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,X.jsxs)(Ea,{icon:Nt,title:e.browserCdpLaunchLocal,description:e.browserCdpLaunchLocalDesc,m:e,embedded:s,sectionTitle:s?e.browserCdpLaunchLocal:void 0,primaryAction:(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:d===`pending`,onClick:()=>void _(),children:[d===`pending`?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):(0,X.jsx)(Nt,{className:`size-3.5`}),d===`pending`?e.browserCdpLaunching:e.browserCdpLaunchLocal]}),children:[f?(0,X.jsx)(Oa,{kind:d===`error`?`error`:`success`,message:f}):null,(0,X.jsx)($,{label:e.browserCdpChromePath,description:e.browserCdpChromePathDesc,children:(0,X.jsx)(`input`,{type:`text`,className:Z(),value:h,placeholder:`/Applications/Google Chrome.app/Contents/MacOS/Google Chrome`,onChange:e=>l({type:`patch`,patch:{executablePath:e.target.value}}),autoComplete:`off`})}),u.length>0?(0,X.jsx)(`div`,{className:`flex flex-col gap-2 rounded-lg border border-edge bg-surface-base p-3 text-xs`,children:u.map(t=>(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,X.jsxs)(`span`,{className:`font-mono text-fg`,children:[`port `,t.port,` · pid `,t.pid]}),(0,X.jsx)(`span`,{className:`truncate text-fg-subtle`,children:t.wsEndpoint})]}),(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1 rounded-md border border-edge bg-surface-panel px-2 py-1 text-xs font-medium text-fg hover:bg-surface-raised`,onClick:()=>void v(t.port),children:[(0,X.jsx)(M,{className:`size-3`}),e.browserCdpStopLocal]})]},t.port))}):null]}),(0,X.jsxs)(Ea,{icon:yt,title:e.label.browserCdpUrl,description:e.desc.browserCdpUrl,m:e,embedded:s,sectionTitle:s?e.label.browserCdpUrl:void 0,primaryAction:(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:!t.trim()||p===`pending`,onClick:()=>void y(),children:[p===`pending`?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):(0,X.jsx)(gt,{className:`size-3.5`}),p===`pending`?e.browserCdpTesting:e.browserCdpTestConnection]}),children:[(0,X.jsx)(`input`,{type:`text`,className:Z(),value:t,placeholder:`ws://127.0.0.1:9222`,onChange:e=>n(e.target.value),autoComplete:`off`}),(0,X.jsx)(`p`,{className:`text-[11px] text-fg-subtle`,children:e.browserCdpLoopbackOnly}),m?(0,X.jsx)(Oa,{kind:p===`error`?`error`:`success`,message:m}):null]})]})}function ja(e,t){let n=t.phase;if(!n)return e.browserInstallPhaseStarting;if(n===`downloading`)return t.percent==null?e.browserInstallPhaseDownloading:e.browserInstallPhaseDownloadingPercent.replace(`{{percent}}`,String(t.percent));switch(n){case`starting`:return e.browserInstallPhaseStarting;case`verifying`:return e.browserInstallPhaseVerifying;case`extracting`:return e.browserInstallPhaseExtracting;case`running`:return t.message??e.browserInstallPhaseRunning;case`ready`:return e.browserInstallPhaseReady;default:return t.message??e.browserInstallPhaseRunning}}function Ma(e){let t=(0,Y.c)(32),{m:n,progress:r,showLogs:i,onCancel:a,cancelling:o}=e,s=i===void 0?!1:i,c=o===void 0?!1:o;if(!r.phase)return null;let l;t[0]!==n||t[1]!==r?(l=ja(n,r),t[0]=n,t[1]=r,t[2]=l):l=t[2];let u=l,d=r.percent==null?(r.phase===`extracting`||r.phase===`verifying`||r.phase===`running`||r.phase,null):Math.min(100,Math.max(0,r.percent)),f;t[3]===u?f=t[4]:(f=(0,X.jsx)(`span`,{className:`text-fg`,children:u}),t[3]=u,t[4]=f);let p;t[5]===d?p=t[6]:(p=d==null?null:(0,X.jsxs)(`span`,{className:`tabular-nums`,children:[d,`%`]}),t[5]=d,t[6]=p);let m;t[7]!==c||t[8]!==n||t[9]!==a?(m=a?(0,X.jsx)(`button`,{type:`button`,className:`rounded-md border border-edge px-2 py-0.5 text-[11px] font-medium text-fg-muted hover:bg-surface-raised hover:text-fg disabled:cursor-not-allowed disabled:opacity-60`,disabled:c,onClick:()=>void a(),children:c?n.browserInstallCancelling:n.browserInstallCancel}):null,t[7]=c,t[8]=n,t[9]=a,t[10]=m):m=t[10];let h;t[11]!==p||t[12]!==m?(h=(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[p,m]}),t[11]=p,t[12]=m,t[13]=h):h=t[13];let g;t[14]!==f||t[15]!==h?(g=(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-xs text-fg-muted`,children:[f,h]}),t[14]=f,t[15]=h,t[16]=g):g=t[16];let _;t[17]===d?_=t[18]:(_=(0,X.jsx)(`div`,{className:`h-1.5 overflow-hidden rounded-full bg-surface-raised`,children:d==null?(0,X.jsx)(`div`,{className:`h-full w-1/3 animate-pulse rounded-full bg-accent/70`}):(0,X.jsx)(`div`,{className:`h-full rounded-full bg-accent transition-[width] duration-300 ease-out`,style:{width:`${d}%`}})}),t[17]=d,t[18]=_);let v;t[19]!==r.lines||t[20]!==s?(v=s&&r.lines.length>0?(0,X.jsx)(`div`,{className:`max-h-28 overflow-y-auto rounded-md border border-edge bg-surface-panel px-2 py-1.5 font-mono text-[10px] leading-relaxed text-fg-muted`,children:r.lines.map(Na)}):null,t[19]=r.lines,t[20]=s,t[21]=v):v=t[21];let y;t[22]!==r.message||t[23]!==r.percent||t[24]!==r.phase||t[25]!==s?(y=!s&&r.phase===`downloading`&&r.message&&r.percent==null?(0,X.jsx)(`p`,{className:`text-[11px] text-fg-subtle`,children:r.message}):null,t[22]=r.message,t[23]=r.percent,t[24]=r.phase,t[25]=s,t[26]=y):y=t[26];let b;return t[27]!==v||t[28]!==y||t[29]!==g||t[30]!==_?(b=(0,X.jsxs)(`div`,{className:`space-y-2 rounded-lg border border-edge bg-surface-base px-3 py-2.5`,children:[g,_,v,y]}),t[27]=v,t[28]=y,t[29]=g,t[30]=_,t[31]=b):b=t[31],b}function Na(e){return(0,X.jsx)(`div`,{className:`truncate`,children:e},e)}var Pa={confirmOpen:!1,installStatus:`idle`,installMessage:null,openStatus:`idle`,openMessage:null,runtime:null};function Fa({m:e,doctor:t,refetch:n,applyDoctor:r,installStream:i,fetchRuntimeStatus:a,launchCloak:o,form:s,onChange:l,embedded:u=!1}){let[d,f]=(0,Q.useReducer)(me,Pa),{confirmOpen:p,installStatus:m,installMessage:h,openStatus:g,openMessage:_,runtime:v}=d,{progress:y,running:b,cancelling:x,run:S,reset:C,cancel:w}=i,T=t.kind===`ok`?t.data:null,E=T?.installed===!0,D=m===`installing`||b,O=(0,Q.useCallback)(async()=>{if(E)try{f({type:`patch`,patch:{runtime:await a()}})}catch{}},[a,E]);(0,Q.useEffect)(()=>{if(!E){f({type:`patch`,patch:{runtime:null}});return}O();let e=setInterval(()=>void O(),8e3);return()=>clearInterval(e)},[E,O]);let k=(0,Q.useCallback)(async()=>{f({type:`patch`,patch:{confirmOpen:!1,installStatus:`installing`,installMessage:null}}),C();let t=await S({body:{cacheDir:s.cacheDir.trim()||void 0,binaryPath:s.binaryPath.trim()||void 0},fallbackError:e.browserCloakInstallFailed});if(!t.ok){if(t.error===`busy`){f({type:`patch`,patch:{installStatus:`installing`}});return}if(t.error===`cancelled`){f({type:`patch`,patch:{installStatus:`idle`,installMessage:null}}),C();return}f({type:`patch`,patch:{installStatus:`failed`,installMessage:t.errorMessage??e.browserCloakInstallFailed}});return}t.payload&&r?.(t.payload),f({type:`patch`,patch:{installStatus:`installed`,installMessage:t.payload?.binaryPath?`${e.browserCloakInstalled}: ${t.payload.binaryPath}`:e.browserCloakInstalled}}),await n({cacheDir:s.cacheDir,binaryPath:s.binaryPath}),await O()},[r,s.binaryPath,s.cacheDir,e.browserCloakInstallFailed,e.browserCloakInstalled,n,O,C,S]),A=(0,Q.useCallback)(async()=>{if(g!==`pending`){f({type:`patch`,patch:{openStatus:`pending`,openMessage:null}});try{let t=await o();f({type:`patch`,patch:{openStatus:`ok`,openMessage:t.reused?e.browserCloakOpenReused.replace(`{{port}}`,String(t.port)):e.browserCloakOpenLaunched.replace(`{{port}}`,String(t.port)),runtime:t}})}catch(e){f({type:`patch`,patch:{openStatus:`error`,openMessage:e instanceof Error?e.message:String(e)}})}}},[o,e.browserCloakOpenLaunched,e.browserCloakOpenReused,g]),j=t.kind===`loading`?`checking`:t.kind===`error`?`error`:E?`ready`:`not_installed`,M=E&&T?.version?`v${T.version} (${T.platform})`:void 0;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(Ea,{icon:ke,title:e.browserCloakGuideTitle,description:e.browserCloakGuideDesc,status:j,statusDetail:M,m:e,embedded:u,primaryAction:(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[E?(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:g===`pending`,onClick:()=>void A(),children:[g===`pending`?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):(0,X.jsx)(Nt,{className:`size-3.5`}),g===`pending`?e.browserCloakOpening:e.browserCloakOpen]}):null,(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:D,onClick:()=>f({type:`patch`,patch:{confirmOpen:!0}}),children:[D?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):E?(0,X.jsx)(St,{className:`size-3.5`}):m===`installed`?(0,X.jsx)(c,{className:`size-3.5 text-green-500`}):(0,X.jsx)(at,{className:`size-3.5`}),D?e.browserCloakInstalling:E?e.browserReinstall:e.browserCloakDownload]})]}),children:[b?(0,X.jsx)(Ma,{m:e,progress:y,cancelling:x,onCancel:()=>void w()}):null,h?(0,X.jsx)(Oa,{kind:m===`failed`?`error`:`success`,message:h}):null,_?(0,X.jsx)(Oa,{kind:g===`error`?`error`:`success`,message:_}):null,E&&v?(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-lg border border-edge bg-surface-base p-3 text-xs`,children:[(0,X.jsx)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:(0,X.jsx)(`span`,{className:`font-medium text-fg`,children:v.running?e.browserCloakRuntimeRunning.replace(`{{port}}`,String(v.port)):e.browserCloakRuntimeOff})}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,X.jsx)(`span`,{className:`text-fg-subtle`,children:e.browserCloakProfileLabel}),(0,X.jsx)(`span`,{className:`break-all font-mono text-[11px] text-fg-muted`,children:v.userDataDir})]}),(0,X.jsx)(`p`,{className:`text-[11px] leading-relaxed text-fg-subtle`,children:e.browserCloakProfileAgentHint}),v.temporaryProfile?(0,X.jsx)(`p`,{className:`text-[11px] text-amber-600 dark:text-amber-400`,children:e.browserCloakTemporaryProfileHint}):null]}):null,(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[(0,X.jsx)($,{label:e.label.browserCloakKeepOpen,description:e.desc.browserCloakKeepOpen,children:(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:s.keepOpen,onChange:e=>l({keepOpen:e.target.checked})}),(0,X.jsx)(`span`,{children:e.browserCloakKeepOpenOn})]})}),(0,X.jsx)($,{label:e.label.browserCloakTemporaryProfile,description:e.desc.browserCloakTemporaryProfile,children:(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:s.temporaryProfile,onChange:e=>l({temporaryProfile:e.target.checked})}),(0,X.jsx)(`span`,{children:e.browserCloakTemporaryProfileOn})]})}),(0,X.jsx)($,{label:e.label.browserHumanize,description:e.desc.browserHumanize,children:(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:s.humanize,onChange:e=>l({humanize:e.target.checked})}),(0,X.jsx)(`span`,{children:e.browserHumanizeOn})]})}),(0,X.jsx)($,{label:e.label.browserHumanPreset,description:e.desc.browserHumanPreset,children:(0,X.jsxs)(`select`,{className:Tn(),value:s.humanPreset,onChange:e=>l({humanPreset:e.target.value}),children:[(0,X.jsx)(`option`,{value:`careful`,children:e.browserHumanPresetCareful}),(0,X.jsx)(`option`,{value:`default`,children:e.browserHumanPresetDefault})]})})]})]}),(0,X.jsxs)(Jt,{className:`mt-4 border border-edge-subtle`,children:[(0,X.jsx)(qt,{icon:ke,title:e.browserCloakAdvancedShow}),(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[(0,X.jsxs)($,{label:e.label.browserCloakCacheDir,description:e.desc.browserCloakCacheDir,children:[(0,X.jsx)(`input`,{type:`text`,className:Z(),value:s.cacheDir,placeholder:`~/.xopc/bin/cloakbrowser`,onChange:e=>l({cacheDir:e.target.value}),autoComplete:`off`}),(0,X.jsx)(`p`,{className:`text-[11px] text-fg-subtle`,children:e.browserCacheDirHomeOnly})]}),(0,X.jsxs)($,{label:e.label.browserCloakBinaryPath,description:e.desc.browserCloakBinaryPath,children:[(0,X.jsx)(`input`,{type:`text`,className:Z(),value:s.binaryPath,placeholder:`~/.xopc/bin/cloakbrowser/chromium-v.../Chromium.app/Contents/MacOS/Chromium`,onChange:e=>l({binaryPath:e.target.value}),autoComplete:`off`}),s.binaryPath.trim()?(0,X.jsx)(`p`,{className:`text-[11px] text-amber-600 dark:text-amber-400`,children:e.browserBinaryPathWarning}):null]}),(0,X.jsx)($,{label:e.label.browserCloakTimezone,description:e.desc.browserCloakTimezone,children:(0,X.jsx)(`input`,{type:`text`,className:Z(),value:s.timezone,placeholder:`America/New_York`,onChange:e=>l({timezone:e.target.value}),autoComplete:`off`})}),(0,X.jsx)($,{label:e.label.browserCloakLocale,description:e.desc.browserCloakLocale,children:(0,X.jsx)(`input`,{type:`text`,className:Z(),value:s.locale,placeholder:`en-US`,onChange:e=>l({locale:e.target.value}),autoComplete:`off`})}),(0,X.jsx)($,{label:e.label.browserCloakWebrtcIp,description:e.desc.browserCloakWebrtcIp,children:(0,X.jsx)(`input`,{type:`text`,className:Z(),value:s.webrtcIp,placeholder:`203.0.113.10`,onChange:e=>l({webrtcIp:e.target.value}),autoComplete:`off`})}),(0,X.jsx)($,{label:e.label.browserCloakFingerprintPlatform,description:e.desc.browserCloakFingerprintPlatform,children:(0,X.jsx)(`input`,{type:`text`,className:Z(),value:s.fingerprintPlatform,placeholder:`macos`,onChange:e=>l({fingerprintPlatform:e.target.value}),autoComplete:`off`})}),(0,X.jsx)(`div`,{className:`sm:col-span-2`,children:(0,X.jsx)($,{label:e.label.browserCloakExtraArgs,description:e.desc.browserCloakExtraArgs,children:(0,X.jsx)(`textarea`,{className:Ia(),value:s.extraArgs,placeholder:`--disable-dev-shm-usage`,rows:3,onChange:e=>l({extraArgs:e.target.value})})})})]})]}),(0,X.jsx)(Tt,{open:p,title:e.browserConfirmDownloadTitle,description:La(e,T),confirmLabel:e.browserConfirmDownloadConfirm,cancelLabel:e.browserConfirmDownloadCancel,onConfirm:()=>void k(),onCancel:()=>f({type:`patch`,patch:{confirmOpen:!1}})})]})}function Ia(){return`${Z()} min-h-[4.5rem] resize-y font-mono text-xs`}function La(e,t){if(!t)return e.browserConfirmDownloadBody;let n=[e.browserConfirmDownloadBody.replace(`{{version}}`,t.version??`—`).replace(`{{platform}}`,t.platform).replace(`{{url}}`,t.downloadUrl||`—`)];return t.expectedSha256?n.push(`SHA-256: ${t.expectedSha256.slice(0,16)}…`):n.push(e.browserCloakSha256Skipped),n.join(`
|
|
392
|
+
`)}var Ra=18790,za={enabled:!0,maxAttempts:5,windowMs:9e5,blockDurationMs:3e5,exemptLoopback:!0};function Ba(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Va(e){return _(e)}async function Ha(e){let t=await d(o(`/api/gateway/reveal-auth-secret/${encodeURIComponent(e)}`),{method:`POST`,body:`{}`});if(!t.ok||!t.payload)throw Error(t.error?.message??`Reveal failed`);return t.payload}async function Ua(){let e=await d(o(`/api/agents/browser/reveal-cloud-api-key`),{method:`POST`,headers:{"Content-Type":`application/json`},body:`{}`});if(!e.ok||!e.payload)throw Error(e.error?.message??`Reveal failed`);return e.payload}function Wa(e){return Va(e)?``:e.trim()}function Ga(e){return[...e].map(e=>e.trim()).sort()}function Ka(e){return JSON.stringify({bind:e.bind,customBindHost:e.customBindHost.trim(),port:e.port,auth:{mode:e.auth.mode,token:Wa(e.auth.token),password:Wa(e.auth.password),rateLimit:e.auth.rateLimit,trustedProxy:{userHeader:e.auth.trustedProxy.userHeader.trim(),requiredHeaders:Ga(e.auth.trustedProxy.requiredHeaders),allowUsers:Ga(e.auth.trustedProxy.allowUsers),allowLoopback:e.auth.trustedProxy.allowLoopback}},corsOrigins:Ga(e.corsOrigins),trustedProxies:Ga(e.trustedProxies),allowRealIpFallback:e.allowRealIpFallback,dangerouslyAllowHostHeaderOriginFallback:e.dangerouslyAllowHostHeaderOriginFallback})}function qa(e,t){return Ka(e)!==Ka(t)}function Ja(e){return e===`none`||e===`token`||e===`password`||e===`trusted-proxy`?e:`token`}function Ya(e){let t=Ba(e)?e:{};return{enabled:t.enabled!==!1,maxAttempts:typeof t.maxAttempts==`number`&&Number.isFinite(t.maxAttempts)?Math.max(1,Math.floor(t.maxAttempts)):za.maxAttempts,windowMs:typeof t.windowMs==`number`&&Number.isFinite(t.windowMs)&&t.windowMs>0?Math.floor(t.windowMs):za.windowMs,blockDurationMs:typeof t.blockDurationMs==`number`&&Number.isFinite(t.blockDurationMs)&&t.blockDurationMs>0?Math.floor(t.blockDurationMs):typeof t.lockoutMs==`number`&&Number.isFinite(t.lockoutMs)&&t.lockoutMs>0?Math.floor(t.lockoutMs):za.blockDurationMs,exemptLoopback:t.exemptLoopback!==!1}}function Xa(e){let t=Ba(e)?e:{};return{userHeader:typeof t.userHeader==`string`?t.userHeader:``,requiredHeaders:Qa(t.requiredHeaders,32),allowUsers:Qa(t.allowUsers,128),allowLoopback:t.allowLoopback===!0}}function Za(e){return e===`auto`||e===`off`||e===`explicit`?e:`auto`}function Qa(e,t=24){return Array.isArray(e)?e.filter(e=>typeof e==`string`&&e.trim().length>0).map(e=>e.trim()).slice(0,t):[]}function $a(e){return e===`auto`||e===`loopback`||e===`lan`||e===`tailnet`||e===`custom`?e:`loopback`}function eo(e){if(e.bind===`loopback`)return!1;if(e.bind===`lan`)return!0;if(e.bind===`custom`){let t=e.customBindHost.trim().toLowerCase();return t?t!==`127.0.0.1`&&t!==`localhost`&&t!==`::1`:!0}return!0}function to(e){let t=eo(e);return t&&e.auth.mode===`none`?`Network-accessible gateway requires authentication (token, password, or trusted-proxy).`:t&&e.auth.mode===`trusted-proxy`&&e.trustedProxies.length===0?`Trusted-proxy auth on a network bind requires at least one gateway.trustedProxies entry.`:e.auth.mode===`trusted-proxy`&&!e.auth.trustedProxy.userHeader.trim()?`Trusted-proxy auth requires gateway.auth.trustedProxy.userHeader.`:t&&e.corsOrigins.includes(`*`)?`CORS wildcard "*" is not allowed on network-accessible binds.`:e.bind===`custom`&&!e.customBindHost.trim()?`Custom bind mode requires a bind address.`:null}function no(e){let t=Ba(e)?e:{},n=Ba(t.gateway)?t.gateway:{},r=Ba(n.auth)?n.auth:{},i=Ba(n.security)?n.security:{},a=Ba(t.update)?t.update:{},o=Ba(a.auto)?a.auto:{},s=a.channel,c=s===`beta`||s===`dev`||s===`stable`?s:`stable`,l=Array.isArray(n.corsOrigins)?n.corsOrigins.filter(e=>typeof e==`string`&&e.trim().length>0):[];return{bind:$a(n.bind),customBindHost:typeof n.customBindHost==`string`&&n.customBindHost.trim()?n.customBindHost.trim():``,port:typeof n.port==`number`&&Number.isFinite(n.port)?Math.floor(n.port):Ra,auth:{mode:Ja(r.mode),token:typeof r.token==`string`?r.token:``,password:typeof r.password==`string`?r.password:``,rateLimit:Ya(r.rateLimit),trustedProxy:Xa(r.trustedProxy)},corsOrigins:l,trustedProxies:Qa(n.trustedProxies,64),allowRealIpFallback:n.allowRealIpFallback===!0,dangerouslyAllowHostHeaderOriginFallback:n.dangerouslyAllowHostHeaderOriginFallback===!0,securityStrict:i.strict===!0,maxSseConnections:typeof n.maxSseConnections==`number`&&Number.isFinite(n.maxSseConnections)?Math.max(1,Math.floor(n.maxSseConnections)):100,channelConnectDeferMode:Za(n.channelConnectDeferMode),channelConnectDeferIds:Qa(n.channelConnectDeferIds),channelConnectDeferSkipIds:Qa(n.channelConnectDeferSkipIds),updateChannel:c,updateCheckOnStart:a.checkOnStart!==!1,updateAutoEnabled:o.enabled===!0,updateAutoStableDelayHours:typeof o.stableDelayHours==`number`&&Number.isFinite(o.stableDelayHours)?Math.max(0,Math.floor(o.stableDelayHours)):6,updateAutoStableJitterHours:typeof o.stableJitterHours==`number`&&Number.isFinite(o.stableJitterHours)?Math.max(0,Math.floor(o.stableJitterHours)):12,updateAutoBetaCheckIntervalHours:typeof o.betaCheckIntervalHours==`number`&&Number.isFinite(o.betaCheckIntervalHours)?Math.max(.25,o.betaCheckIntervalHours):1}}function ro(e){let t={mode:e.auth.mode,rateLimit:e.auth.rateLimit};if(e.auth.mode===`token`){let n=e.auth.token.trim();n.length>0&&!Va(n)&&(t.token=e.auth.token),t.password=null,t.trustedProxy=null}else if(e.auth.mode===`password`){let n=e.auth.password.trim();n.length>0&&!Va(n)&&(t.password=e.auth.password),t.token=null,t.trustedProxy=null}else if(e.auth.mode===`trusted-proxy`){t.token=null,t.password=null;let n=e.auth.trustedProxy;t.trustedProxy={userHeader:n.userHeader.trim(),...n.requiredHeaders.length>0?{requiredHeaders:n.requiredHeaders}:{},...n.allowUsers.length>0?{allowUsers:n.allowUsers}:{},...n.allowLoopback?{allowLoopback:!0}:{}}}else t.token=null,t.password=null,t.trustedProxy=null;return t}async function io(e){let t=to(e);if(t)throw Error(t);await d(o(`/api/config`),{method:`PATCH`,body:JSON.stringify({gateway:{bind:e.bind,...e.bind===`custom`?{customBindHost:e.customBindHost.trim()}:{},port:e.port,auth:ro(e),corsOrigins:e.corsOrigins,trustedProxies:e.trustedProxies,allowRealIpFallback:e.allowRealIpFallback,dangerouslyAllowHostHeaderOriginFallback:e.dangerouslyAllowHostHeaderOriginFallback,security:{strict:e.securityStrict},maxSseConnections:e.maxSseConnections,channelConnectDeferMode:e.channelConnectDeferMode,channelConnectDeferIds:e.channelConnectDeferIds,channelConnectDeferSkipIds:e.channelConnectDeferSkipIds},update:{channel:e.updateChannel,checkOnStart:e.updateCheckOnStart,auto:{enabled:e.updateAutoEnabled,stableDelayHours:e.updateAutoStableDelayHours,stableJitterHours:e.updateAutoStableJitterHours,betaCheckIntervalHours:e.updateAutoBetaCheckIntervalHours}}})}),m()}function ao({m:e,form:t,onChange:n,testCloud:r,embedded:o=!1}){let[s,c]=(0,Q.useState)(`idle`),[l,u]=(0,Q.useState)(null),d=t.provider===`local`?`browserbase`:t.provider,f=a(i(e=>e.language)).providersSettings,p=W({show:f.show,hide:f.hide,copy:f.copy,copied:f.copied}),m=(0,Q.useCallback)(()=>Ua().then(e=>e.apiKey??null),[]),h=(0,Q.useCallback)(async()=>{c(`pending`),u(null);try{let n=await r(d,t.apiKey);n.reachable?(c(`ok`),u(e.browserCloudTestOk)):(c(`error`),u(e.browserCloudTestFailed.replace(`{{error}}`,n.error??`—`)))}catch(t){c(`error`),u(e.browserCloudTestFailed.replace(`{{error}}`,t instanceof Error?t.message:String(t)))}},[t.apiKey,e.browserCloudTestFailed,e.browserCloudTestOk,d,r]);return(0,X.jsxs)(Ea,{icon:Ft,title:e.label.browserCloudProvider,description:e.desc.browserCloudProvider,m:e,embedded:o,primaryAction:(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:s===`pending`,onClick:()=>void h(),children:[s===`pending`?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):(0,X.jsx)(gt,{className:`size-3.5`}),e.browserCloudTestConnection]}),children:[(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[(0,X.jsx)($,{label:e.label.browserCloudProvider,description:e.desc.browserCloudProvider,children:(0,X.jsxs)(`select`,{className:Tn(),value:d,onChange:e=>n({provider:e.target.value}),children:[(0,X.jsx)(`option`,{value:`browserbase`,children:e.browserCloudProviderBrowserbase}),(0,X.jsx)(`option`,{value:`browser-use`,children:e.browserCloudProviderBrowserUse})]})}),(0,X.jsx)($,{label:e.label.browserCloudApiKey,description:e.desc.browserCloudApiKey,children:(0,X.jsx)(Be,{value:t.apiKey,onChange:e=>n({apiKey:e}),placeholder:d===`browserbase`?`BROWSERBASE_API_KEY`:`BROWSER_USE_API_KEY`,labels:p,reveal:m,loadFailedLabel:`Failed to load key`})}),d===`browserbase`?(0,X.jsx)($,{label:e.label.browserCloudProjectId,description:e.desc.browserCloudProjectId,children:(0,X.jsx)(`input`,{type:`text`,className:Z(),value:t.projectId,placeholder:`BROWSERBASE_PROJECT_ID`,onChange:e=>n({projectId:e.target.value}),autoComplete:`off`})}):null,(0,X.jsx)($,{label:e.label.browserCloudRegion,description:e.desc.browserCloudRegion,children:(0,X.jsx)(`input`,{type:`text`,className:Z(),value:t.region,placeholder:`us-west-2`,onChange:e=>n({region:e.target.value}),autoComplete:`off`})})]}),l?(0,X.jsx)(Oa,{kind:s===`error`?`error`:`success`,message:l}):null]})}function oo(e){let t=(0,Y.c)(45),{m:n,installed:r,extensionDir:i,connected:a,busy:o,onOpenChrome:s,onRevealFolder:l,folderBusy:u}=e,d;t[0]!==r||t[1]!==n.browserExtensionInstallStep1?(d={id:`install`,label:n.browserExtensionInstallStep1,done:r},t[0]=r,t[1]=n.browserExtensionInstallStep1,t[2]=d):d=t[2];let f=!!i&&a,p;t[3]!==o||t[4]!==i||t[5]!==u||t[6]!==n.browserExtensionInstallStep2FolderLabel||t[7]!==n.browserExtensionInstalling||t[8]!==n.browserExtensionOpenChrome||t[9]!==n.browserExtensionRevealFolder||t[10]!==s||t[11]!==l?(p=i?(0,X.jsxs)(`div`,{className:`mt-2 rounded-md border border-edge bg-surface-raised px-2.5 py-2`,children:[(0,X.jsx)(`p`,{className:`text-[10px] font-medium uppercase tracking-wide text-fg-subtle`,children:n.browserExtensionInstallStep2FolderLabel}),(0,X.jsx)(`p`,{className:`mt-1 break-all font-mono text-[11px] text-fg`,children:i}),(0,X.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-3`,children:[(0,X.jsx)(`button`,{type:`button`,className:`inline-flex items-center gap-1 text-[11px] text-accent hover:underline disabled:opacity-60`,disabled:o,onClick:s,children:n.browserExtensionOpenChrome}),(0,X.jsx)(`button`,{type:`button`,className:`inline-flex items-center gap-1 text-[11px] text-accent hover:underline disabled:opacity-60`,disabled:o,onClick:l,title:i,children:u?n.browserExtensionInstalling:n.browserExtensionRevealFolder})]})]}):null,t[3]=o,t[4]=i,t[5]=u,t[6]=n.browserExtensionInstallStep2FolderLabel,t[7]=n.browserExtensionInstalling,t[8]=n.browserExtensionOpenChrome,t[9]=n.browserExtensionRevealFolder,t[10]=s,t[11]=l,t[12]=p):p=t[12];let m;t[13]!==n.browserExtensionInstallStep2||t[14]!==f||t[15]!==p?(m={id:`load`,label:n.browserExtensionInstallStep2,done:f,detail:p},t[13]=n.browserExtensionInstallStep2,t[14]=f,t[15]=p,t[16]=m):m=t[16];let h;t[17]!==a||t[18]!==n.browserExtensionInstallStep3?(h={id:`connect`,label:n.browserExtensionInstallStep3,done:a},t[17]=a,t[18]=n.browserExtensionInstallStep3,t[19]=h):h=t[19];let g;t[20]!==d||t[21]!==m||t[22]!==h?(g=[d,m,h],t[20]=d,t[21]=m,t[22]=h,t[23]=g):g=t[23];let _=g,v;t[24]===_?v=t[25]:(v=_.filter(so),t[24]=_,t[25]=v);let y=v.length,b=n.browserExtensionInstallGuideTitle,x;t[26]===n.browserExtensionInstallGuideTitle?x=t[27]:(x=(0,X.jsx)(`h4`,{className:`text-sm font-medium text-fg`,children:n.browserExtensionInstallGuideTitle}),t[26]=n.browserExtensionInstallGuideTitle,t[27]=x);let S;t[28]!==y||t[29]!==n.browserExtensionChecklistProgress||t[30]!==_.length?(S=n.browserExtensionChecklistProgress.replace(`{{done}}`,String(y)).replace(`{{total}}`,String(_.length)),t[28]=y,t[29]=n.browserExtensionChecklistProgress,t[30]=_.length,t[31]=S):S=t[31];let C;t[32]===S?C=t[33]:(C=(0,X.jsx)(`span`,{className:`ml-auto text-xs font-normal text-fg-muted`,children:S}),t[32]=S,t[33]=C);let w;t[34]!==C||t[35]!==x?(w=(0,X.jsxs)(`div`,{className:`mb-3 flex items-center gap-2`,children:[x,C]}),t[34]=C,t[35]=x,t[36]=w):w=t[36];let T;t[37]!==n.browserExtensionChecklistDone||t[38]!==n.browserExtensionChecklistPending||t[39]!==_?(T=(0,X.jsx)(`ol`,{className:`flex flex-col gap-3`,children:_.map((e,t)=>(0,X.jsxs)(`li`,{className:`flex gap-2.5`,children:[(0,X.jsx)(`span`,{className:`mt-0.5 shrink-0`,"aria-hidden":!0,children:e.done?(0,X.jsx)(c,{className:`size-4 text-emerald-500`,strokeWidth:2}):(0,X.jsx)(Te,{className:`size-4 text-fg-subtle`,strokeWidth:1.75})}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`p`,{className:J(`text-[11px] leading-relaxed`,e.done?`text-fg-muted line-through decoration-fg-subtle/60`:`text-fg`),children:[(0,X.jsxs)(`span`,{className:`sr-only`,children:[e.done?n.browserExtensionChecklistDone:n.browserExtensionChecklistPending,` `]}),t+1,`. `,e.label]}),e.detail]})]},e.id))}),t[37]=n.browserExtensionChecklistDone,t[38]=n.browserExtensionChecklistPending,t[39]=_,t[40]=T):T=t[40];let E;return t[41]!==n.browserExtensionInstallGuideTitle||t[42]!==w||t[43]!==T?(E=(0,X.jsxs)(`div`,{"aria-label":b,className:`rounded-xl border border-edge bg-surface-base px-3 py-3`,children:[w,T]}),t[41]=n.browserExtensionInstallGuideTitle,t[42]=w,t[43]=T,t[44]=E):E=t[44],E}function so(e){return e.done}var co=19820,lo=3e4;function uo({m:e,probe:t,artifacts:n,onChange:r,startBridge:i,stopBridge:a,disconnectExtension:o,installArtifacts:s,refetchArtifacts:c,openExtensionChrome:l,revealExtensionFolder:u,form:d,embedded:f=!1}){let[p,m]=(0,Q.useState)(null),[h,g]=(0,Q.useState)(null),[_,v]=(0,Q.useState)(null),y=d.port??co,b=d.host||`127.0.0.1`,x=`ws://${b}:${y}/browser-ext`,S=t.kind===`ok`&&t.data.running,C=t.kind===`ok`&&t.data.connected,w=t.kind===`ok`&&t.data.bridgeHeld===!0,T=t.kind===`ok`&&t.data.portConflict===!0,E=S||w,D=n.kind===`ok`?n.data:t.kind===`ok`?t.data.artifacts:void 0,O=D?.installed===!0,k=D?.extensionDir,A=D?.needsChromeReload===!0,j=t.kind===`ok`?C?{icon:$e,color:`text-green-500`,label:e.browserExtensionConnected}:S?{icon:gt,color:`text-amber-500`,label:e.browserExtensionWaiting}:{icon:Ye,color:`text-fg-muted`,label:e.browserExtensionServerOff}:{icon:Ye,color:`text-fg-muted`,label:`…`},N=j.icon,P=(0,Q.useCallback)(async()=>{if(!p){m(`start`),g(null);try{await i({host:b,port:y})}catch(e){g(e instanceof Error?e.message:String(e))}finally{m(null)}}},[p,b,y,i]),F=(0,Q.useCallback)(async()=>{if(!p){m(`stop`),g(null);try{await a()}catch(e){g(e instanceof Error?e.message:String(e))}finally{m(null)}}},[p,a]),I=(0,Q.useCallback)(async()=>{if(!p){m(`disconnect`),g(null);try{await o()}catch(e){g(e instanceof Error?e.message:String(e))}finally{m(null)}}},[p,o]),L=(0,Q.useCallback)(async()=>{if(!p){m(`install`),g(null),v(null);try{let t=await s({force:O});t?.extensionDir?v(`${e.browserExtensionInstalled}: ${t.extensionDir}`):v(e.browserExtensionInstalled),await c()}catch(e){g(e instanceof Error?e.message:String(e))}finally{m(null)}}},[p,s,O,e.browserExtensionInstalled,c]),R=(0,Q.useCallback)(async()=>{if(!p){m(`open`),g(null);try{await l()}catch(e){g(e instanceof Error?e.message:String(e))}finally{m(null)}}},[p,l]),z=(0,Q.useCallback)(async()=>{if(!(!k||p)){m(`folder`),g(null),v(null);try{let t=await K(k);await u(),v(t?e.browserExtensionPathCopied:e.browserExtensionFolderOpened)}catch(e){g(e instanceof Error?e.message:String(e))}finally{m(null)}}},[p,k,e.browserExtensionFolderOpened,e.browserExtensionPathCopied,u]),B=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:p!==null,onClick:()=>void L(),children:[p===`install`?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):(0,X.jsx)(at,{className:`size-3.5`}),p===`install`?e.browserExtensionInstalling:e.browserExtensionInstall]}),E?(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:p!==null,onClick:()=>void F(),children:[p===`stop`?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):(0,X.jsx)(M,{className:`size-3.5`}),e.browserExtensionStopBridge]}):(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:p!==null,onClick:()=>void P(),children:[p===`start`?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):(0,X.jsx)(Nt,{className:`size-3.5`}),p===`start`?e.browserExtensionStarting:e.browserExtensionStartBridge]}),C?(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:p!==null,onClick:()=>void I(),children:[p===`disconnect`?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):(0,X.jsx)(Ye,{className:`size-3.5`}),e.browserExtensionDisconnect]}):null]});return(0,X.jsx)(Ea,{icon:Ct,title:e.browserBackendExtension,description:e.browserExtensionDownloadHint,m:e,embedded:f,primaryAction:B,advancedTitle:e.browserAdvancedShow,advanced:(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[(0,X.jsx)($,{label:e.label.browserExtensionPort,description:e.desc.browserExtensionPort,children:(0,X.jsx)(`input`,{type:`number`,className:Z(),min:1024,max:65535,value:d.port??``,placeholder:String(co),onChange:e=>{let t=e.target.value;r({port:t===``?void 0:Number.parseInt(t,10)})}})}),(0,X.jsx)($,{label:e.label.browserExtensionHost,description:e.desc.browserExtensionHost,children:(0,X.jsx)(`input`,{type:`text`,className:Z(),value:d.host,placeholder:`127.0.0.1`,onChange:e=>r({host:e.target.value}),autoComplete:`off`})}),(0,X.jsx)($,{label:e.label.browserExtensionConnectionTimeout,description:e.desc.browserExtensionConnectionTimeout,children:(0,X.jsx)(`input`,{type:`number`,className:Z(),min:1,step:1,value:d.connectionTimeoutMs==null?``:Math.round(d.connectionTimeoutMs/1e3),placeholder:String(lo/1e3),onChange:e=>{let t=e.target.value;r({connectionTimeoutMs:t===``?void 0:Math.max(1,Number.parseInt(t,10))*1e3})}})})]}),children:(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 rounded-lg border border-edge bg-surface-base px-3 py-2`,children:[(0,X.jsx)(`span`,{className:`font-mono text-xs text-fg-muted`,children:x}),(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-xs ${j.color}`,children:[(0,X.jsx)(N,{className:`size-3.5`}),(0,X.jsx)(`span`,{children:j.label})]})]}),(0,X.jsx)(oo,{m:e,installed:O,extensionDir:k,connected:C,busy:p!==null,folderBusy:p===`folder`,onOpenChrome:()=>void R(),onRevealFolder:()=>void z()}),A?(0,X.jsx)(`div`,{className:`rounded-lg border border-amber-500/30 bg-amber-500/10 px-3 py-2 text-xs leading-relaxed text-amber-800 dark:text-amber-200`,children:e.browserExtensionNeedsChromeReload}):null,T?(0,X.jsx)(`div`,{className:`rounded-lg border border-amber-500/30 bg-amber-500/10 px-3 py-2 text-xs leading-relaxed text-amber-800 dark:text-amber-200`,children:e.browserExtensionPortConflict.replace(`{{port}}`,String(y))}):null,_?(0,X.jsx)(Oa,{kind:`success`,message:_}):null,h?(0,X.jsx)(Oa,{kind:`error`,message:h}):null]})})}function fo(e){let t=(0,Y.c)(41),{m:n,doctor:r,refetch:i,applyDoctor:a,installStream:o,embedded:s}=e,l=s===void 0?!1:s,[u,d]=(0,Q.useState)(`idle`),[f,p]=(0,Q.useState)(null),{progress:m,running:h,cancelling:g,run:_,reset:v,cancel:y}=o,b;t[0]!==a||t[1]!==n.browserPlaywrightInstallFailed||t[2]!==n.browserPlaywrightInstalled||t[3]!==i||t[4]!==v||t[5]!==_?(b=async()=>{d(`installing`),p(null),v();let e=await _({fallbackError:n.browserPlaywrightInstallFailed});if(!e.ok){if(e.error===`busy`){d(`installing`);return}if(e.error===`cancelled`){d(`idle`),p(null),v();return}d(`failed`),p(e.errorMessage??n.browserPlaywrightInstallFailed);return}e.payload&&a?.(e.payload),d(`installed`),p(e.payload?.executablePath?`${n.browserPlaywrightInstalled}: ${e.payload.executablePath}`:n.browserPlaywrightInstalled),await i()},t[0]=a,t[1]=n.browserPlaywrightInstallFailed,t[2]=n.browserPlaywrightInstalled,t[3]=i,t[4]=v,t[5]=_,t[6]=b):b=t[6];let x=b,S=r.kind===`loading`?`checking`:r.kind===`error`?`error`:r.kind===`ok`?r.data.installed?`ready`:`not_installed`:`unknown`,C=r.kind===`ok`&&r.data.installed&&r.data.executablePath?r.data.executablePath:void 0,w=r.kind===`ok`&&r.data.installed,T=u===`installing`||h,E;t[7]===x?E=t[8]:(E=()=>void x(),t[7]=x,t[8]=E);let D;t[9]!==w||t[10]!==T||t[11]!==u?(D=T?(0,X.jsx)(pt,{className:`size-3.5 animate-spin`}):w?(0,X.jsx)(St,{className:`size-3.5`}):u===`installed`?(0,X.jsx)(c,{className:`size-3.5 text-green-500`}):(0,X.jsx)(at,{className:`size-3.5`}),t[9]=w,t[10]=T,t[11]=u,t[12]=D):D=t[12];let O=T?n.browserPlaywrightInstalling:w?n.browserReinstall:n.browserPlaywrightInstall,k;t[13]!==T||t[14]!==E||t[15]!==D||t[16]!==O?(k=(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex items-center gap-1.5 rounded-lg border border-edge bg-surface-panel px-2.5 py-1.5 text-xs font-medium text-fg hover:bg-surface-raised disabled:cursor-not-allowed disabled:opacity-60`,disabled:T,onClick:E,children:[D,O]}),t[13]=T,t[14]=E,t[15]=D,t[16]=O,t[17]=k):k=t[17];let A;t[18]===n.browserPlaywrightManualInstall?A=t[19]:(A=(0,X.jsx)(`p`,{className:`text-fg-muted`,children:n.browserPlaywrightManualInstall}),t[18]=n.browserPlaywrightManualInstall,t[19]=A);let j;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,X.jsx)(`code`,{className:`mt-2 block w-fit rounded-md border border-edge bg-surface-base px-2 py-1 text-xs text-fg`,children:`node node_modules/playwright-core/cli.js install chromium`}),t[20]=j):j=t[20];let M;t[21]===A?M=t[22]:(M=(0,X.jsxs)(`div`,{className:`text-xs`,children:[A,j]}),t[21]=A,t[22]=M);let N;t[23]!==y||t[24]!==g||t[25]!==n||t[26]!==m||t[27]!==h?(N=h?(0,X.jsx)(Ma,{m:n,progress:m,showLogs:!0,cancelling:g,onCancel:()=>void y()}):null,t[23]=y,t[24]=g,t[25]=n,t[26]=m,t[27]=h,t[28]=N):N=t[28];let P;t[29]!==f||t[30]!==u?(P=f?(0,X.jsx)(Oa,{kind:u===`failed`?`error`:`success`,message:f}):null,t[29]=f,t[30]=u,t[31]=P):P=t[31];let F;return t[32]!==l||t[33]!==n||t[34]!==C||t[35]!==S||t[36]!==N||t[37]!==P||t[38]!==k||t[39]!==M?(F=(0,X.jsxs)(Ea,{icon:zt,title:n.browserPlaywrightGuideTitle,description:n.browserPlaywrightGuideDesc,status:S,statusDetail:C,m:n,embedded:l,primaryAction:k,children:[M,N,P]}),t[32]=l,t[33]=n,t[34]=C,t[35]=S,t[36]=N,t[37]=P,t[38]=k,t[39]=M,t[40]=F):F=t[40],F}async function po(e){let t=await f(e),n=await t.json().catch(()=>({}));if(!t.ok||n.ok===!1){let e=typeof n.error==`string`?n.error:n.error?.message;throw Error(e||`Request failed: ${t.status}`)}if(n.payload===void 0)throw Error(`Empty payload`);return n.payload}async function mo(e,t){let n=await f(e,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t??{})}),r=await n.json().catch(()=>({}));if(!n.ok||r.ok===!1){let e=typeof r.error==`string`?r.error:r.error?.message;throw Error(e||`Request failed: ${n.status}`)}if(r.payload===void 0)throw Error(`Empty payload`);return r.payload}var ho={playwright:{kind:`idle`},cloak:{kind:`idle`},extension:{kind:`idle`},extensionArtifacts:{kind:`idle`}};function go(e,t){switch(t.type){case`playwright`:return{...e,playwright:t.state};case`cloak`:return{...e,cloak:t.state};case`extension`:return{...e,extension:t.state};case`extension-artifacts`:return{...e,extensionArtifacts:t.state};case`playwright-idle`:return{...e,playwright:{kind:`idle`}};case`cloak-idle`:return{...e,cloak:{kind:`idle`}};case`extension-idle`:return{...e,extension:{kind:`idle`},extensionArtifacts:{kind:`idle`}};case`extension-start-probe`:return{...e,extension:e.extension.kind===`ok`?e.extension:{kind:`loading`}};case`extension-artifacts-start-probe`:return{...e,extensionArtifacts:e.extensionArtifacts.kind===`ok`?e.extensionArtifacts:{kind:`loading`}}}}function _o(e){let[t,n]=(0,Q.useReducer)(go,ho),{playwright:r,cloak:i,extension:a,extensionArtifacts:s}=t,c=(0,Q.useCallback)(async()=>{n({type:`playwright`,state:{kind:`loading`}});try{n({type:`playwright`,state:{kind:`ok`,data:await po(o(`/api/browser/playwright/doctor`))}})}catch(e){n({type:`playwright`,state:{kind:`error`,message:e instanceof Error?e.message:String(e)}})}},[]),l=(0,Q.useCallback)(async t=>{n({type:`cloak`,state:{kind:`loading`}});let r=(t?.cacheDir??e.cacheDir??``).trim(),i=(t?.binaryPath??e.binaryPath??``).trim(),a=new URLSearchParams;r&&a.set(`cacheDir`,r),i&&a.set(`binaryPath`,i);try{let e=await po(o(`/api/browser/cloakbrowser/doctor${a.size?`?${a}`:``}`));return n({type:`cloak`,state:{kind:`ok`,data:e}}),e}catch(e){return n({type:`cloak`,state:{kind:`error`,message:e instanceof Error?e.message:String(e)}}),null}},[e.binaryPath,e.cacheDir]),u=(0,Q.useCallback)(e=>{n({type:`playwright`,state:{kind:`ok`,data:e}})},[]),d=(0,Q.useCallback)(e=>{n({type:`cloak`,state:{kind:`ok`,data:e}})},[]),p=(0,Q.useCallback)(async()=>po(o(`/api/browser/cloakbrowser/status`)),[]),m=(0,Q.useCallback)(async()=>mo(o(`/api/browser/cloakbrowser/launch`),{}),[]),h=e.browserEnabled===!0&&e.probeExtension===!0,g=e.browserEnabled===!0&&e.probeLocal===!0,_=e.browserEnabled===!0&&e.probeCloak===!0,{extensionHost:v,extensionPort:y}=e,b=(0,Q.useCallback)(async()=>{let e=new URLSearchParams({probe:`1`});v&&e.set(`host`,v),y!==void 0&&e.set(`port`,String(y)),n({type:`extension-start-probe`});try{let t=await f(o(`/api/browser/extension-status?${e}`),{signal:AbortSignal.timeout(3e3)}),r=await t.json().catch(()=>({}));if(!t.ok){n({type:`extension`,state:{kind:`error`,message:`HTTP ${t.status}`}});return}n({type:`extension`,state:{kind:`ok`,data:{running:r.running===!0,connected:r.connected===!0,backend:r.backend,artifacts:r.artifacts,bridgeHeld:r.bridgeHeld===!0,refCount:typeof r.refCount==`number`?r.refCount:void 0,manualBridge:r.manualBridge===!0,portConflict:r.portConflict===!0}}})}catch(e){n({type:`extension`,state:{kind:`error`,message:e instanceof Error?e.message:String(e)}})}},[v,y]),x=(0,Q.useCallback)(async()=>{n({type:`extension-artifacts-start-probe`});try{let e=await po(o(`/api/browser/extension/doctor`));return n({type:`extension-artifacts`,state:{kind:`ok`,data:e}}),e}catch(e){return n({type:`extension-artifacts`,state:{kind:`error`,message:e instanceof Error?e.message:String(e)}}),null}},[]),S=(0,Q.useCallback)(async e=>{let t=(await mo(o(`/api/browser/extension/install`),{force:e?.force??!1})).doctor;return n({type:`extension-artifacts`,state:{kind:`ok`,data:t}}),await b(),t},[b]),C=(0,Q.useCallback)(async()=>{await mo(o(`/api/browser/extension/open`),{action:`chrome`})},[]),w=(0,Q.useCallback)(async()=>{await mo(o(`/api/browser/extension/open`),{action:`folder`})},[]);(0,Q.useEffect)(()=>{if(!g){n({type:`playwright-idle`});return}c()},[g,c]),(0,Q.useEffect)(()=>{if(!_){n({type:`cloak-idle`});return}l()},[_,l]);let T=(0,Q.useRef)(h);T.current!==h&&(T.current=h,h||n({type:`extension-idle`})),(0,Q.useEffect)(()=>{if(!h)return;b(),x();let e=setInterval(()=>void b(),5e3);return()=>clearInterval(e)},[h,b,x]);let E=(0,Q.useCallback)(async e=>{await mo(o(`/api/browser/extension/start`),{host:e?.host??v,port:e?.port??y}),await b()},[v,y,b]),D=(0,Q.useCallback)(async()=>{await mo(o(`/api/browser/extension/stop`),{}),await b()},[b]),O=(0,Q.useCallback)(async()=>{await mo(o(`/api/browser/extension/disconnect`),{}),await b()},[b]),k=(0,Q.useRef)(null);return(0,Q.useEffect)(()=>{if(!h||e.activeBackend!==`extension`){k.current=null;return}if(a.kind!==`ok`||a.data.running||a.data.bridgeHeld)return;let t=`${v}:${y??19820}`;k.current!==t&&(k.current=t,E({host:v,port:y}).catch(()=>{k.current=null}))},[h,a,v,y,e.activeBackend,E]),{playwright:r,cloak:i,extension:a,extensionArtifacts:s,refetchPlaywright:c,applyPlaywrightDoctor:u,refetchCloak:l,applyCloakDoctor:d,fetchCloakRuntimeStatus:p,launchCloak:m,refetchExtension:b,refetchExtensionArtifacts:x,installExtensionArtifacts:S,openExtensionChrome:C,revealExtensionFolder:w,pingCdp:(0,Q.useCallback)(async e=>mo(o(`/api/browser/cdp/ping`),{cdpUrl:e}),[]),testCloud:(0,Q.useCallback)(async(e,t)=>mo(o(`/api/browser/cloud/test-connection`),{provider:e,apiKey:t}),[]),launchCdp:(0,Q.useCallback)(async e=>mo(o(`/api/browser/cdp/launch`),{executablePath:e}),[]),stopCdp:(0,Q.useCallback)(async e=>{await mo(o(`/api/browser/cdp/stop`),{port:e})},[]),listCdpInstances:(0,Q.useCallback)(async()=>(await po(o(`/api/browser/cdp/instances`))).instances,[]),startExtensionBridge:E,stopExtensionBridge:D,disconnectExtension:O}}var vo=`
|
|
393
|
+
|
|
394
|
+
`,yo=/\r\n/g,bo={playwright:`/api/browser/playwright/install/stream`,cloakbrowser:`/api/browser/cloakbrowser/install/stream`},xo={playwright:`/api/browser/playwright/install/cancel`,cloakbrowser:`/api/browser/cloakbrowser/install/cancel`},So=8;function Co(){return{phase:null,message:null,percent:null,lines:[]}}function wo(e,t){let n={phase:t.phase,message:t.message??t.line??e.message,percent:t.percent??e.percent,lines:e.lines};if(t.line){let r=[...e.lines,t.line];n.lines=r.length>So?r.slice(-8):r}return n}async function To(e,t,n){let r=e.getReader(),i=new TextDecoder,a=``,o=null,s=e=>{let n=``,r=``;for(let t of e.split(`
|
|
395
|
+
`)){let e=t.replace(/\r$/,``);e.startsWith(`event:`)?n=e.slice(6).trim():e.startsWith(`data:`)&&(r+=e.slice(5).trimStart())}if(r){if(n===`progress`){try{let e=JSON.parse(r);e&&typeof e==`object`&&typeof e.phase==`string`&&t(e)}catch{}return}if(n===`result`)try{let e=JSON.parse(r);o=e.ok?{ok:!0,payload:e.payload}:{ok:!1,error:String(e.error??`unknown`),message:typeof e.message==`string`?e.message:void 0,status:e.error===`busy`?409:e.error===`cancelled`?499:500}}catch{o={ok:!1,error:`parse`,status:0}}}};try{let e=async()=>{if(o!==null)return o;if(n?.aborted)return await r.cancel().catch(()=>{}),{ok:!1,error:`cancelled`,status:499};let{done:t,value:c}=await r.read();if(t)return o??{ok:!1,error:`no-result`,status:0};a+=i.decode(c,{stream:!0}),a=a.replace(yo,`
|
|
396
|
+
`);let l=a.split(vo);a=l.pop()??``;for(let e of l)e.length&&s(e);return e()},t=await e();if(t)return t}catch(e){if(n?.aborted||e instanceof DOMException&&e.name===`AbortError`)return{ok:!1,error:`cancelled`,status:499};throw e}finally{r.releaseLock()}return o||(n?.aborted?{ok:!1,error:`cancelled`,status:499}:{ok:!1,error:`no-result`,status:0})}function Eo(e){let[t,n]=(0,Q.useState)(Co),[r,i]=(0,Q.useState)(!1),[a,s]=(0,Q.useState)(!1),c=(0,Q.useRef)(!1),l=(0,Q.useRef)(null),u=(0,Q.useCallback)(()=>{c.current||n(Co())},[]),d=(0,Q.useCallback)(async()=>{if(c.current){s(!0);try{await f(o(xo[e]),{method:`POST`}).catch(()=>{}),l.current?.abort()}finally{s(!1)}}},[e]);return{progress:t,running:r,cancelling:a,run:(0,Q.useCallback)(async t=>{if(c.current)return{ok:!1,error:`busy`,status:409,errorMessage:`An install for this browser type is already in progress.`};let r=new AbortController;l.current=r,c.current=!0,i(!0),n(Co());try{let i=await f(o(bo[e]),{method:`POST`,headers:{Accept:`text/event-stream`,...t.body===void 0?{}:{"Content-Type":`application/json`}},body:t.body===void 0?void 0:JSON.stringify(t.body),signal:r.signal});if(!i.ok||!i.body){let e=await i.text().catch(()=>``),t=`HTTP ${i.status}`;try{let n=JSON.parse(e);typeof n.message==`string`?t=n.message:typeof n.error==`string`&&(t=n.error)}catch{e&&(t=e.slice(0,500))}return{ok:!1,error:i.status===409?`busy`:`http`,status:i.status,errorMessage:t}}let a=await To(i.body,e=>{n(t=>wo(t,e))},r.signal);return a.ok?a:a.error===`cancelled`?{...a,errorMessage:void 0}:{...a,errorMessage:a.message??(a.error===`busy`?`An install for this browser type is already in progress.`:t.fallbackError)}}catch(e){return r.signal.aborted||e instanceof DOMException&&e.name===`AbortError`?{ok:!1,error:`cancelled`,status:499}:{ok:!1,error:`network`,errorMessage:e instanceof Error?e.message:t.fallbackError}}finally{l.current===r&&(l.current=null),c.current=!1,i(!1),s(!1)}},[e]),reset:u,cancel:d}}function Do(e){let t=(0,Y.c)(150),{a:n,form:r,update:a,activeTab:o,setActiveTab:s}=e,c=i(ko),l=Mt(Oo),u=Eo(`playwright`),d=Eo(`cloakbrowser`),f=r.browserEnabled&&(o===`overview`||o===`extension`),p=r.browserEnabled&&(o===`overview`||o===`local`),m=r.browserEnabled&&(o===`overview`||o===`cloakbrowser`),h;t[0]!==r.browserBackend||t[1]!==r.browserCloakBinaryPath||t[2]!==r.browserCloakCacheDir||t[3]!==r.browserEnabled||t[4]!==r.browserExtensionHost||t[5]!==r.browserExtensionPort||t[6]!==m||t[7]!==f||t[8]!==p?(h={cacheDir:r.browserCloakCacheDir,binaryPath:r.browserCloakBinaryPath,browserEnabled:r.browserEnabled,activeBackend:r.browserBackend,probeExtension:f,probeLocal:p,probeCloak:m,extensionHost:r.browserExtensionHost,extensionPort:r.browserExtensionPort},t[0]=r.browserBackend,t[1]=r.browserCloakBinaryPath,t[2]=r.browserCloakCacheDir,t[3]=r.browserEnabled,t[4]=r.browserExtensionHost,t[5]=r.browserExtensionPort,t[6]=m,t[7]=f,t[8]=p,t[9]=h):h=t[9];let g=_o(h),_;t[10]===g.playwright?_=t[11]:(_=_a(g.playwright),t[10]=g.playwright,t[11]=_);let v=_,y;t[12]===g.cloak?y=t[13]:(y=_a(g.cloak),t[12]=g.cloak,t[13]=y);let b=y,x;t[14]===g.extension?x=t[15]:(x=ya(g.extension),t[14]=g.extension,t[15]=x);let S=x,C;t[16]!==n||t[17]!==g.extension?(C=ba(g.extension,n),t[16]=n,t[17]=g.extension,t[18]=C):C=t[18];let w=C,T;t[19]!==n||t[20]!==b||t[21]!==S||t[22]!==w||t[23]!==v||t[24]!==l?(T=[{value:`extension`,icon:Ct,name:n.browserBackendExtension,tagline:n.browserModeExtTagline,status:S,statusLabel:w},{value:`local`,icon:zt,name:n.browserBackendLocal,tagline:n.browserModeLocalTagline,status:v,statusLabel:va(v,n)},{value:`cloakbrowser`,icon:ke,name:n.browserBackendCloakBrowser,tagline:n.browserModeCloakTagline,status:b,statusLabel:va(b,n)},{value:`cdp`,icon:yt,name:n.browserBackendCdp,tagline:n.browserModeCdpTagline},{value:`cloud`,icon:Ft,name:n.browserBackendCloud,tagline:n.browserModeCloudTagline}].filter(e=>Xi(e.value,l)),t[19]=n,t[20]=b,t[21]=S,t[22]=w,t[23]=v,t[24]=l,t[25]=T):T=t[25];let E=T,D;t[26]!==s||t[27]!==a?(D=e=>{a({browserEnabled:!0,browserBackend:e}),s(e)},t[26]=s,t[27]=a,t[28]=D):D=t[28];let O=D,k=!r.browserEnabled&&`pointer-events-none opacity-40`,A;t[29]===k?A=t[30]:(A=J(`flex flex-col gap-5 transition-opacity`,k),t[29]=k,t[30]=A);let j=!r.browserEnabled,M;t[31]!==n||t[32]!==o||t[33]!==g.disconnectExtension||t[34]!==g.extension||t[35]!==g.extensionArtifacts||t[36]!==g.installExtensionArtifacts||t[37]!==g.openExtensionChrome||t[38]!==g.refetchExtensionArtifacts||t[39]!==g.revealExtensionFolder||t[40]!==g.startExtensionBridge||t[41]!==g.stopExtensionBridge||t[42]!==r.browserExtensionConnectionTimeout||t[43]!==r.browserExtensionHost||t[44]!==r.browserExtensionPort||t[45]!==a?(M=o===`extension`?(0,X.jsx)(Jt,{children:(0,X.jsx)(uo,{embedded:!0,m:n,probe:g.extension,artifacts:g.extensionArtifacts,form:{port:r.browserExtensionPort,host:r.browserExtensionHost,connectionTimeoutMs:r.browserExtensionConnectionTimeout},onChange:e=>a({...e.port===void 0?{}:{browserExtensionPort:e.port},...e.host===void 0?{}:{browserExtensionHost:e.host},...e.connectionTimeoutMs===void 0?{}:{browserExtensionConnectionTimeout:e.connectionTimeoutMs}}),startBridge:g.startExtensionBridge,stopBridge:g.stopExtensionBridge,disconnectExtension:g.disconnectExtension,installArtifacts:g.installExtensionArtifacts,refetchArtifacts:g.refetchExtensionArtifacts,openExtensionChrome:g.openExtensionChrome,revealExtensionFolder:g.revealExtensionFolder})}):null,t[31]=n,t[32]=o,t[33]=g.disconnectExtension,t[34]=g.extension,t[35]=g.extensionArtifacts,t[36]=g.installExtensionArtifacts,t[37]=g.openExtensionChrome,t[38]=g.refetchExtensionArtifacts,t[39]=g.revealExtensionFolder,t[40]=g.startExtensionBridge,t[41]=g.stopExtensionBridge,t[42]=r.browserExtensionConnectionTimeout,t[43]=r.browserExtensionHost,t[44]=r.browserExtensionPort,t[45]=a,t[46]=M):M=t[46];let N;t[47]!==n||t[48]!==o||t[49]!==g.applyPlaywrightDoctor||t[50]!==g.playwright||t[51]!==g.refetchPlaywright||t[52]!==u?(N=o===`local`?(0,X.jsx)(Jt,{children:(0,X.jsx)(fo,{embedded:!0,m:n,doctor:g.playwright,refetch:g.refetchPlaywright,applyDoctor:g.applyPlaywrightDoctor,installStream:u})}):null,t[47]=n,t[48]=o,t[49]=g.applyPlaywrightDoctor,t[50]=g.playwright,t[51]=g.refetchPlaywright,t[52]=u,t[53]=N):N=t[53];let P;t[54]!==n||t[55]!==o||t[56]!==d||t[57]!==g.applyCloakDoctor||t[58]!==g.cloak||t[59]!==g.fetchCloakRuntimeStatus||t[60]!==g.launchCloak||t[61]!==g.refetchCloak||t[62]!==r.browserCloakBinaryPath||t[63]!==r.browserCloakCacheDir||t[64]!==r.browserCloakExtraArgs||t[65]!==r.browserCloakFingerprintPlatform||t[66]!==r.browserCloakKeepOpen||t[67]!==r.browserCloakLocale||t[68]!==r.browserCloakTemporaryProfile||t[69]!==r.browserCloakTimezone||t[70]!==r.browserCloakWebrtcIp||t[71]!==r.browserHumanPreset||t[72]!==r.browserHumanize||t[73]!==a?(P=o===`cloakbrowser`?(0,X.jsx)(Jt,{children:(0,X.jsx)(Fa,{embedded:!0,m:n,doctor:g.cloak,refetch:g.refetchCloak,applyDoctor:g.applyCloakDoctor,installStream:d,fetchRuntimeStatus:g.fetchCloakRuntimeStatus,launchCloak:g.launchCloak,form:{cacheDir:r.browserCloakCacheDir,binaryPath:r.browserCloakBinaryPath,keepOpen:r.browserCloakKeepOpen,temporaryProfile:r.browserCloakTemporaryProfile,humanize:r.browserHumanize,humanPreset:r.browserHumanPreset,timezone:r.browserCloakTimezone,locale:r.browserCloakLocale,webrtcIp:r.browserCloakWebrtcIp,fingerprintPlatform:r.browserCloakFingerprintPlatform,extraArgs:r.browserCloakExtraArgs},onChange:e=>a({...e.cacheDir===void 0?{}:{browserCloakCacheDir:e.cacheDir},...e.binaryPath===void 0?{}:{browserCloakBinaryPath:e.binaryPath},...e.keepOpen===void 0?{}:{browserCloakKeepOpen:e.keepOpen},...e.temporaryProfile===void 0?{}:{browserCloakTemporaryProfile:e.temporaryProfile},...e.humanize===void 0?{}:{browserHumanize:e.humanize},...e.humanPreset===void 0?{}:{browserHumanPreset:e.humanPreset},...e.timezone===void 0?{}:{browserCloakTimezone:e.timezone},...e.locale===void 0?{}:{browserCloakLocale:e.locale},...e.webrtcIp===void 0?{}:{browserCloakWebrtcIp:e.webrtcIp},...e.fingerprintPlatform===void 0?{}:{browserCloakFingerprintPlatform:e.fingerprintPlatform},...e.extraArgs===void 0?{}:{browserCloakExtraArgs:e.extraArgs}})})}):null,t[54]=n,t[55]=o,t[56]=d,t[57]=g.applyCloakDoctor,t[58]=g.cloak,t[59]=g.fetchCloakRuntimeStatus,t[60]=g.launchCloak,t[61]=g.refetchCloak,t[62]=r.browserCloakBinaryPath,t[63]=r.browserCloakCacheDir,t[64]=r.browserCloakExtraArgs,t[65]=r.browserCloakFingerprintPlatform,t[66]=r.browserCloakKeepOpen,t[67]=r.browserCloakLocale,t[68]=r.browserCloakTemporaryProfile,t[69]=r.browserCloakTimezone,t[70]=r.browserCloakWebrtcIp,t[71]=r.browserHumanPreset,t[72]=r.browserHumanize,t[73]=a,t[74]=P):P=t[74];let F;t[75]!==n||t[76]!==o||t[77]!==g.launchCdp||t[78]!==g.listCdpInstances||t[79]!==g.pingCdp||t[80]!==g.stopCdp||t[81]!==r.browserCdpUrl||t[82]!==a?(F=o===`cdp`?(0,X.jsx)(Jt,{children:(0,X.jsx)(Aa,{embedded:!0,m:n,cdpUrl:r.browserCdpUrl,onCdpUrlChange:e=>a({browserCdpUrl:e}),launch:g.launchCdp,stop:g.stopCdp,listInstances:g.listCdpInstances,ping:g.pingCdp})}):null,t[75]=n,t[76]=o,t[77]=g.launchCdp,t[78]=g.listCdpInstances,t[79]=g.pingCdp,t[80]=g.stopCdp,t[81]=r.browserCdpUrl,t[82]=a,t[83]=F):F=t[83];let I;t[84]!==n||t[85]!==o||t[86]!==g.testCloud||t[87]!==r.browserCloudApiKey||t[88]!==r.browserCloudProjectId||t[89]!==r.browserCloudProvider||t[90]!==r.browserCloudRegion||t[91]!==a?(I=o===`cloud`?(0,X.jsx)(Jt,{children:(0,X.jsx)(ao,{embedded:!0,m:n,form:{provider:r.browserCloudProvider,apiKey:r.browserCloudApiKey,projectId:r.browserCloudProjectId,region:r.browserCloudRegion},onChange:e=>a({...e.provider===void 0?{}:{browserCloudProvider:e.provider},...e.apiKey===void 0?{}:{browserCloudApiKey:e.apiKey},...e.projectId===void 0?{}:{browserCloudProjectId:e.projectId},...e.region===void 0?{}:{browserCloudRegion:e.region}}),testCloud:g.testCloud})}):null,t[84]=n,t[85]=o,t[86]=g.testCloud,t[87]=r.browserCloudApiKey,t[88]=r.browserCloudProjectId,t[89]=r.browserCloudProvider,t[90]=r.browserCloudRegion,t[91]=a,t[92]=I):I=t[92];let L;t[93]!==M||t[94]!==N||t[95]!==P||t[96]!==F||t[97]!==I||t[98]!==A||t[99]!==j?(L=(0,X.jsxs)(`div`,{className:A,"aria-hidden":j,children:[M,N,P,F,I]}),t[93]=M,t[94]=N,t[95]=P,t[96]=F,t[97]=I,t[98]=A,t[99]=j,t[100]=L):L=t[100];let R=L;if(o===`overview`){let e;t[101]!==n||t[102]!==r.browserEnabled||t[103]!==O?(e=r.browserEnabled?null:(0,X.jsx)(ha,{m:n,onStart:O}),t[101]=n,t[102]=r.browserEnabled,t[103]=O,t[104]=e):e=t[104];let i;t[105]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,X.jsx)(`div`,{className:`flex size-9 shrink-0 items-center justify-center rounded-lg bg-surface-hover/90 text-fg-muted`,"aria-hidden":!0,children:(0,X.jsx)(nt,{className:`size-4`,strokeWidth:1.75})}),t[105]=i):i=t[105];let o;t[106]===a?o=t[107]:(o=e=>a({browserEnabled:e.target.checked}),t[106]=a,t[107]=o);let l;t[108]!==r.browserEnabled||t[109]!==o?(l=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:r.browserEnabled,onChange:o}),t[108]=r.browserEnabled,t[109]=o,t[110]=l):l=t[110];let u;t[111]===n.browserEnabledOn?u=t[112]:(u=(0,X.jsx)(`span`,{children:n.browserEnabledOn}),t[111]=n.browserEnabledOn,t[112]=u);let d;t[113]!==l||t[114]!==u?(d=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm font-medium text-fg`,children:[l,u]}),t[113]=l,t[114]=u,t[115]=d):d=t[115];let f;t[116]!==n.desc.browserEnabled||t[117]!==n.label.browserEnabled||t[118]!==d?(f=(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-3`,children:[i,(0,X.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,X.jsx)($,{label:n.label.browserEnabled,description:n.desc.browserEnabled,children:d})})]}),t[116]=n.desc.browserEnabled,t[117]=n.label.browserEnabled,t[118]=d,t[119]=f):f=t[119];let p;t[120]!==n.browserDocsLink||t[121]!==c?(p=(0,X.jsx)(pa,{language:c,label:n.browserDocsLink,className:`shrink-0 pt-1`}),t[120]=n.browserDocsLink,t[121]=c,t[122]=p):p=t[122];let m;t[123]!==f||t[124]!==p?(m=(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[f,p]}),t[123]=f,t[124]=p,t[125]=m):m=t[125];let h;t[126]!==n||t[127]!==r.browserBackend||t[128]!==r.browserEnabled||t[129]!==E||t[130]!==s||t[131]!==a?(h=r.browserEnabled?(0,X.jsx)(`div`,{id:ua(`connection`),className:J(`scroll-mt-24 transition-opacity`,!r.browserEnabled&&`pointer-events-none opacity-40`),children:(0,X.jsx)(ca,{m:n,value:r.browserBackend,onChange:e=>a({browserBackend:e}),onOpenConfig:s,options:E})}):(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:n.browserDisabledHint}),t[126]=n,t[127]=r.browserBackend,t[128]=r.browserEnabled,t[129]=E,t[130]=s,t[131]=a,t[132]=h):h=t[132];let g;t[133]!==m||t[134]!==h?(g=(0,X.jsx)(Jt,{children:(0,X.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[m,h]})}),t[133]=m,t[134]=h,t[135]=g):g=t[135];let _=!r.browserEnabled&&`pointer-events-none opacity-40`,v;t[136]===_?v=t[137]:(v=J(`transition-opacity`,_),t[136]=_,t[137]=v);let y=!r.browserEnabled,b;t[138]!==n||t[139]!==r||t[140]!==a?(b=(0,X.jsx)(fa,{a:n,form:r,update:a}),t[138]=n,t[139]=r,t[140]=a,t[141]=b):b=t[141];let x;t[142]!==v||t[143]!==y||t[144]!==b?(x=(0,X.jsx)(rn,{children:(0,X.jsx)(`div`,{className:v,"aria-hidden":y,children:b})}),t[142]=v,t[143]=y,t[144]=b,t[145]=x):x=t[145];let S;return t[146]!==e||t[147]!==g||t[148]!==x?(S=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[e,g,x]}),t[146]=e,t[147]=g,t[148]=x,t[149]=S):S=t[149],S}return Ta(o)?R:null}function Oo(e){return e.mode}function ko(e){return e.language}function Ao(e){let t=(0,Y.c)(61),{sectionId:n,intro:r,vm:o,children:s,tabbed:c}=e,l=c===void 0?!1:c,u=i(jo),d;t[0]===u?d=t[1]:(d=a(u),t[0]=u,t[1]=d);let f=d,p=f.agentSettings,m=f.settingsSections[n]??n;if(!o.hasToken){let e;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(bt,{className:`mt-0.5 size-5 shrink-0 text-fg-subtle`,strokeWidth:1.75}),t[2]=e):e=t[2];let n;t[3]===m?n=t[4]:(n=(0,X.jsx)(`h1`,{className:`text-base font-semibold text-fg`,children:m}),t[3]=m,t[4]=n);let r;t[5]===p.needToken?r=t[6]:(r=(0,X.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:p.needToken}),t[5]=p.needToken,t[6]=r);let i;return t[7]!==n||t[8]!==r?(i=(0,X.jsx)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-3 px-4 py-10`,children:(0,X.jsxs)(`div`,{className:`flex items-start gap-3 rounded-2xl bg-surface-base p-6`,children:[e,(0,X.jsxs)(`div`,{children:[n,r]})]})}),t[7]=n,t[8]=r,t[9]=i):i=t[9],i}if(o.loading){let e,n;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(`div`,{className:`h-8 w-48 animate-pulse rounded bg-surface-hover`}),n=(0,X.jsx)(`div`,{className:`mt-6 h-32 animate-pulse rounded-xl bg-surface-hover`}),t[10]=e,t[11]=n):(e=t[10],n=t[11]);let r;return t[12]===f.logs.loading?r=t[13]:(r=(0,X.jsxs)(`div`,{className:`mx-auto w-full max-w-app-main px-4 py-8`,children:[e,n,(0,X.jsx)(`p`,{className:`mt-4 text-sm text-fg-muted`,children:f.logs.loading})]}),t[12]=f.logs.loading,t[13]=r),r}if(!o.form){let e=o.error??o.fetchError??p.loadError,n;t[14]===e?n=t[15]:(n=(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:e}),t[14]=e,t[15]=n);let r;t[16]===o?r=t[17]:(r=()=>void o.mutate(),t[16]=o,t[17]=r);let i;t[18]!==f.logs.refresh||t[19]!==r?(i=(0,X.jsx)(q,{type:`button`,variant:`secondary`,onClick:r,children:f.logs.refresh}),t[18]=f.logs.refresh,t[19]=r,t[20]=i):i=t[20];let a;return t[21]!==n||t[22]!==i?(a=(0,X.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-3 px-4 py-10`,children:[n,i]}),t[21]=n,t[22]=i,t[23]=a):a=t[23],a}let h;t[24]===m?h=t[25]:(h=(0,X.jsx)(`h1`,{className:`text-lg font-semibold tracking-tight text-fg`,children:m}),t[24]=m,t[25]=h);let g;t[26]!==p.sectionDesc||t[27]!==r||t[28]!==l?(g=l?(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:p.sectionDesc}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`p`,{className:`mt-1 text-sm leading-relaxed text-fg-muted`,children:r}),(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:p.sectionDesc})]}),t[26]=p.sectionDesc,t[27]=r,t[28]=l,t[29]=g):g=t[29];let _;t[30]!==h||t[31]!==g?(_=(0,X.jsxs)(`div`,{children:[h,g]}),t[30]=h,t[31]=g,t[32]=_):_=t[32];let v;t[33]!==p.saved||t[34]!==o.saveOk?(v=o.saveOk?(0,X.jsx)(`span`,{className:`text-sm text-fg-muted`,children:p.saved}):null,t[33]=p.saved,t[34]=o.saveOk,t[35]=v):v=t[35];let y=!o.dirty||o.saving,b;t[36]!==p.discard||t[37]!==y||t[38]!==o.discard?(b=(0,X.jsx)(q,{type:`button`,variant:`secondary`,disabled:y,onClick:o.discard,children:p.discard}),t[36]=p.discard,t[37]=y,t[38]=o.discard,t[39]=b):b=t[39];let x=!o.dirty||o.saving,S;t[40]===o?S=t[41]:(S=()=>void o.save(),t[40]=o,t[41]=S);let C=o.saving?p.saving:p.save,w;t[42]!==C||t[43]!==x||t[44]!==S?(w=(0,X.jsx)(q,{type:`button`,variant:`primary`,disabled:x,onClick:S,children:C}),t[42]=C,t[43]=x,t[44]=S,t[45]=w):w=t[45];let T;t[46]!==w||t[47]!==v||t[48]!==b?(T=(0,X.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-end gap-2`,children:[v,b,w]}),t[46]=w,t[47]=v,t[48]=b,t[49]=T):T=t[49];let E;t[50]!==T||t[51]!==_?(E=(0,X.jsxs)(`header`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between`,children:[_,T]}),t[50]=T,t[51]=_,t[52]=E):E=t[52];let D;t[53]===o.error?D=t[54]:(D=o.error?(0,X.jsx)(`div`,{className:`rounded-md border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-700 dark:border-red-900/50 dark:bg-red-950/50 dark:text-red-400`,role:`alert`,children:o.error}):null,t[53]=o.error,t[54]=D);let O;t[55]===s?O=t[56]:(O=(0,X.jsx)(`div`,{className:`flex min-w-0 flex-col gap-5 pb-8`,children:s}),t[55]=s,t[56]=O);let k;return t[57]!==E||t[58]!==D||t[59]!==O?(k=(0,X.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-6 px-4 py-8`,children:[E,D,O]}),t[57]=E,t[58]=D,t[59]=O,t[60]=k):k=t[60],k}function jo(e){return e.language}var Mo=oe();function No(e){let t=!!u(e=>e.token),[n,r]=(0,Q.useReducer)(Mo,{form:null,baseline:null}),i=n.form,a=n.baseline,[o,s]=(0,Q.useState)(!1),[c,l]=(0,Q.useState)(null),[d,f]=(0,Q.useState)(!1),m=(0,Q.useRef)(!1),h=(0,Q.useRef)(null),{data:g,error:_,isLoading:v,mutate:y}=p(t);ue({enabled:t,parsed:(0,Q.useMemo)(()=>g?.payload?.config===void 0?null:li(g.payload.config),[g]),dirty:m.current,trackedParsedRef:h,dispatch:r,onResetDirty:()=>{m.current=!1}});let b=!!(t&&v&&g===void 0&&!_),x=_ instanceof Error?_.message:_?String(_):null,S=(0,Q.useMemo)(()=>!i||!a?!1:JSON.stringify(i)!==JSON.stringify(a),[i,a]);return{hasToken:t,loading:b,fetchError:x,form:i,update:(0,Q.useCallback)(e=>{m.current=!0,r({type:`patch`,patch:e})},[]),dirty:S,saving:o,saveOk:d,error:c,setError:l,save:(0,Q.useCallback)(async()=>{if(!i||o)return!1;s(!0),l(null),f(!1);try{try{di(i.paramsJson)}catch(t){return l(t instanceof SyntaxError?e.advanced.paramsInvalidJson:t instanceof Error?t.message:e.advanced.paramsInvalidJson),!1}let t=Mn(i.typedModels,{invalidId:e.typedModelsInvalidId,duplicateId:e.typedModelsDuplicateId,invalidModel:e.typedModelsInvalidModel});return t?(l(t),!1):(await mi(i),m.current=!1,r({type:`saved`,value:i}),f(!0),y(),!0)}catch(t){return l(t instanceof Error?t.message:e.saveError),!1}finally{s(!1)}},[e.saveError,i,y,o]),discard:(0,Q.useCallback)(()=>{m.current=!1,r({type:`discard`}),f(!1),l(null)},[]),mutate:y}}function Po(e,t){return e.browserTabs[t]}function Fo(){let e=(0,Y.c)(52),t=i(Lo),n;e[0]===t?n=e[1]:(n=a(t),e[0]=t,e[1]=n);let r=n,o=r.agentSettings,s=r.chat,c=Mt(Io),l=No(o),[u,d]=rt(),f;e[2]===c?f=e[3]:(f=Zi(xa,c),e[2]=c,e[3]=f);let p=f,m;e[4]===u?m=e[5]:(m=da(u.get(`focus`)),e[4]=u,e[5]=m);let h=m,g;e[6]!==h||e[7]!==u?(g=h?Ca[h]??wa(u.get(`tab`)):wa(u.get(`tab`)),e[6]=h,e[7]=u,e[8]=g):g=e[8];let _=g,v;bb0:{if(!l.form){v=null;break bb0}let t;e[9]!==o||e[10]!==s||e[11]!==l.form||e[12]!==l.update?(t={form:l.form,update:l.update,a:o,chat:s},e[9]=o,e[10]=s,e[11]=l.form,e[12]=l.update,e[13]=t):t=e[13],v=t}let y=v,b;e[14]===d?b=e[15]:(b=e=>{d(t=>{let n=new URLSearchParams(t);return n.delete(`focus`),e===`overview`?n.delete(`tab`):n.set(`tab`,e),n},{replace:!0})},e[14]=d,e[15]=b);let x=b;aa(_,x);let S,C;e[16]!==h||e[17]!==u||e[18]!==d?(S=()=>{if(!h)return;let e=Ca[h]??wa(u.get(`tab`));d(t=>{let n=new URLSearchParams(t);return n.delete(`focus`),e===`overview`?n.delete(`tab`):n.set(`tab`,e),n},{replace:!0});let t=h===`runtime`||h===`security`?ua(h):null;if(!t)return;let n=window.setTimeout(()=>{document.getElementById(t)?.scrollIntoView({behavior:`smooth`,block:`start`})},80);return()=>window.clearTimeout(n)},C=[h,u,d],e[16]=h,e[17]=u,e[18]=d,e[19]=S,e[20]=C):(S=e[19],C=e[20]),(0,Q.useEffect)(S,C);let w=o.browserTabsAria,T;e[21]!==_||e[22]!==x||e[23]!==p?(T=e=>{if(e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)return;e.preventDefault();let t=p.indexOf(_);if(t<0)return;let n=p[(t+(e.key===`ArrowRight`?1:-1)+p.length)%p.length];x(n)},e[21]=_,e[22]=x,e[23]=p,e[24]=T):T=e[24];let E;if(e[25]!==_||e[26]!==o||e[27]!==x||e[28]!==p){let t;e[30]!==_||e[31]!==o||e[32]!==x?(t=e=>{let t=e===_;return(0,X.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":t,id:`agent-browser-tab-${e}`,"aria-controls":`agent-browser-panel-${e}`,className:J(`shrink-0 rounded-lg px-3 py-2 text-sm font-medium transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,jt.press,t?`bg-accent-soft text-accent-fg`:`text-fg-muted hover:bg-surface-hover hover:text-fg`),onClick:()=>x(e),children:Po(o,e)},e)},e[30]=_,e[31]=o,e[32]=x,e[33]=t):t=e[33],E=p.map(t),e[25]=_,e[26]=o,e[27]=x,e[28]=p,e[29]=E}else E=e[29];let D;e[34]===E?D=e[35]:(D=(0,X.jsx)(`div`,{className:`-mx-1 flex gap-1 overflow-x-auto px-1 pb-1`,children:E}),e[34]=E,e[35]=D);let O=`agent-browser-panel-${_}`,k=`agent-browser-tab-${_}`,A;e[36]!==_||e[37]!==y||e[38]!==x?(A=y?(0,X.jsx)(Do,{...y,activeTab:_,setActiveTab:x}):null,e[36]=_,e[37]=y,e[38]=x,e[39]=A):A=e[39];let j;e[40]!==O||e[41]!==k||e[42]!==A?(j=(0,X.jsx)(`div`,{role:`tabpanel`,id:O,"aria-labelledby":k,className:`min-w-0`,children:A}),e[40]=O,e[41]=k,e[42]=A,e[43]=j):j=e[43];let M;e[44]!==o.browserTabsAria||e[45]!==D||e[46]!==j||e[47]!==T?(M=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,role:`tablist`,"aria-label":w,onKeyDown:T,children:[D,j]}),e[44]=o.browserTabsAria,e[45]=D,e[46]=j,e[47]=T,e[48]=M):M=e[48];let N;return e[49]!==M||e[50]!==l?(N=(0,X.jsx)(Ao,{sectionId:`agent-browser`,intro:``,vm:l,tabbed:!0,children:M}),e[49]=M,e[50]=l,e[51]=N):N=e[51],N}function Io(e){return e.mode}function Lo(e){return e.language}var Ro={provider:`skillhub`,storeBaseUrl:`https://store.xopc.ai`},zo=[`store`,`skillhub`,`clawhub`];function Bo(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Vo(e){let t=Bo(e)?e:{},n=Bo(t.gateway)?t.gateway:{},r=typeof n.skillsMarketplaceProvider==`string`?n.skillsMarketplaceProvider.trim().toLowerCase():``;return{provider:zo.includes(r)?r:r||Ro.provider,storeBaseUrl:typeof n.skillsStoreBaseUrl==`string`&&n.skillsStoreBaseUrl.trim()?n.skillsStoreBaseUrl.trim().replace(/\/+$/,``):Ro.storeBaseUrl}}async function Ho(e){let t=e.storeBaseUrl.trim().replace(/\/+$/,``);if(!t.startsWith(`http://`)&&!t.startsWith(`https://`))throw Error(`Store base URL must start with http:// or https://`);await d(o(`/api/config`),{method:`PATCH`,body:JSON.stringify({gateway:{skillsMarketplaceProvider:e.provider.trim(),skillsStoreBaseUrl:t}})}),m()}function Uo(){return zo}function Wo(){return J(`w-full rounded-lg border border-edge bg-surface-panel px-3 py-2 text-sm text-fg`,Ze,`dark:border-edge`)}var Go=oe();function Ko({hasToken:e}){let t=a(i(e=>e.language)).skillsMarketplaceSettings,n=Uo(),{data:r,isLoading:o}=p(e),s=(0,Q.useMemo)(()=>r?.payload?.config===void 0?null:Vo(r.payload.config),[r]),[c,l]=(0,Q.useReducer)(Go,{form:null,baseline:null}),u=c.form,d=c.baseline,[f,m]=(0,Q.useState)(!1),[h,g]=(0,Q.useState)(null),_=(0,Q.useRef)(!1),v=(0,Q.useRef)(null);ue({enabled:e,parsed:s,dirty:_.current,trackedParsedRef:v,dispatch:l,onResetDirty:()=>{_.current=!1}});let y=u&&d&&JSON.stringify(u)!==JSON.stringify(d),b=(0,Q.useCallback)(e=>{_.current=!0,l({type:`patch`,patch:e})},[]);return!e||!u?o?(0,X.jsx)(Jt,{children:(0,X.jsx)(pt,{className:`size-4 animate-spin text-fg-muted`})}):null:(0,X.jsxs)(Jt,{children:[(0,X.jsx)(qt,{icon:ut,title:t.title,subtitle:t.hint}),(0,X.jsxs)(`div`,{className:`mb-4 flex justify-end gap-2`,children:[(0,X.jsx)(q,{type:`button`,variant:`secondary`,disabled:!y||f,onClick:()=>l({type:`discard`}),children:t.discard}),(0,X.jsx)(q,{type:`button`,variant:`primary`,disabled:!y||f,onClick:()=>{(async()=>{m(!0),g(null);try{await Ho(u),_.current=!1,l({type:`saved`,value:u})}catch(e){g(e instanceof Error?e.message:t.saveError)}finally{m(!1)}})()},children:f?t.saving:t.save})]}),h?(0,X.jsx)(`p`,{className:`mb-3 text-sm text-red-600 dark:text-red-400`,children:h}):null,(0,X.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:t.provider}),(0,X.jsx)(`select`,{className:Wo(),value:u.provider,onChange:e=>b({provider:e.target.value}),children:n.map(e=>(0,X.jsx)(`option`,{value:e,children:e},e))}),(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:t.providerHint})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:t.storeBaseUrl}),(0,X.jsx)(`input`,{className:J(Wo(),`font-mono text-xs`),value:u.storeBaseUrl,onChange:e=>b({storeBaseUrl:e.target.value})}),(0,X.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:t.storeBaseUrlHint})]})]})]})}function qo(e,t,n){let r=e.trim();return r?`model:${r}`:`empty:${n.slice(0,t).filter(e=>!e.trim()).length}`}function Jo(e){let t=(0,Y.c)(21),{a:n,chat:r,form:i,update:a}=e,o;t[0]!==n.desc.modelFallbacks||t[1]!==n.label.modelFallbacks?(o=(0,X.jsx)(qt,{icon:bt,title:n.label.modelFallbacks,subtitle:n.desc.modelFallbacks}),t[0]=n.desc.modelFallbacks,t[1]=n.label.modelFallbacks,t[2]=o):o=t[2];let s;t[3]!==n.removeModelFallback||t[4]!==r||t[5]!==i.modelFallbacks||t[6]!==a?(s=i.modelFallbacks.map((e,t)=>(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,X.jsx)(ne,{value:e,placeholder:r.modelPlaceholder,searchPlaceholder:r.modelSearchPlaceholder,noMatches:r.modelNoMatches,onChange:e=>{let n=[...i.modelFallbacks];n[t]=e,a({modelFallbacks:n})}})}),(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:`shrink-0`,"aria-label":n.removeModelFallback,onClick:()=>a({modelFallbacks:i.modelFallbacks.filter((e,n)=>n!==t)}),children:(0,X.jsx)(w,{className:`size-4`,strokeWidth:1.75})})]},qo(e,t,i.modelFallbacks))),t[3]=n.removeModelFallback,t[4]=r,t[5]=i.modelFallbacks,t[6]=a,t[7]=s):s=t[7];let c;t[8]!==i.modelFallbacks||t[9]!==a?(c=()=>a({modelFallbacks:[...i.modelFallbacks,``]}),t[8]=i.modelFallbacks,t[9]=a,t[10]=c):c=t[10];let l;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,X.jsx)(Xe,{className:`size-4 shrink-0`,strokeWidth:1.75}),t[11]=l):l=t[11];let u;t[12]!==n.addModelFallback||t[13]!==c?(u=(0,X.jsxs)(q,{type:`button`,variant:`secondary`,className:`w-fit gap-1.5`,onClick:c,children:[l,n.addModelFallback]}),t[12]=n.addModelFallback,t[13]=c,t[14]=u):u=t[14];let d;t[15]!==s||t[16]!==u?(d=(0,X.jsxs)(`div`,{className:`mt-4 flex flex-col gap-2`,children:[s,u]}),t[15]=s,t[16]=u,t[17]=d):d=t[17];let f;return t[18]!==o||t[19]!==d?(f=(0,X.jsxs)(Jt,{children:[o,d]}),t[18]=o,t[19]=d,t[20]=f):f=t[20],f}function Yo(e){let t=(0,Y.c)(20),{a:n,chat:r,form:i,update:a}=e,o;t[0]!==n.desc.typedModels||t[1]!==n.label.typedModels?(o=(0,X.jsx)(qt,{icon:Me,title:n.label.typedModels,subtitle:n.desc.typedModels}),t[0]=n.desc.typedModels,t[1]=n.label.typedModels,t[2]=o):o=t[2];let s;t[3]===a?s=t[4]:(s=e=>a({typedModels:e}),t[3]=a,t[4]=s);let c;t[5]!==n.addTypedModel||t[6]!==n.removeTypedModel||t[7]!==n.typedModelDescriptionLabel||t[8]!==n.typedModelDescriptionPlaceholder||t[9]!==n.typedModelIdLabel||t[10]!==n.typedModelIdPlaceholder?(c={id:n.typedModelIdLabel,description:n.typedModelDescriptionLabel,add:n.addTypedModel,remove:n.removeTypedModel,idPlaceholder:n.typedModelIdPlaceholder,descriptionPlaceholder:n.typedModelDescriptionPlaceholder},t[5]=n.addTypedModel,t[6]=n.removeTypedModel,t[7]=n.typedModelDescriptionLabel,t[8]=n.typedModelDescriptionPlaceholder,t[9]=n.typedModelIdLabel,t[10]=n.typedModelIdPlaceholder,t[11]=c):c=t[11];let l;t[12]!==r||t[13]!==i.typedModels||t[14]!==s||t[15]!==c?(l=(0,X.jsx)(`div`,{className:`mt-4`,children:(0,X.jsx)(Dn,{rows:i.typedModels,chat:r,onChange:s,labels:c})}),t[12]=r,t[13]=i.typedModels,t[14]=s,t[15]=c,t[16]=l):l=t[16];let u;return t[17]!==o||t[18]!==l?(u=(0,X.jsxs)(Jt,{children:[o,l]}),t[17]=o,t[18]=l,t[19]=u):u=t[19],u}function Xo(e){let t=(0,Y.c)(15),{globalLabel:n,agentLabel:r,sessionLabel:i,globalValue:a,agentValue:o,sessionValue:s}=e,c;t[0]!==n||t[1]!==a?(c={label:n,value:a},t[0]=n,t[1]=a,t[2]=c):c=t[2];let l;t[3]!==r||t[4]!==o?(l={label:r,value:o},t[3]=r,t[4]=o,t[5]=l):l=t[5];let u;t[6]!==i||t[7]!==s?(u={label:i,value:s},t[6]=i,t[7]=s,t[8]=u):u=t[8];let d;t[9]!==c||t[10]!==l||t[11]!==u?(d=[c,l,u],t[9]=c,t[10]=l,t[11]=u,t[12]=d):d=t[12];let f=d,p;return t[13]===f?p=t[14]:(p=(0,X.jsx)(`div`,{className:`grid gap-2 rounded-2xl border border-edge-subtle bg-surface-panel/60 p-3 text-xs sm:grid-cols-[1fr_auto_1fr_auto_1fr]`,children:f.map((e,t)=>(0,X.jsxs)(`div`,{className:`contents`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 rounded-xl bg-surface-base px-3 py-2`,children:[(0,X.jsx)(`p`,{className:`font-medium text-fg-subtle`,children:e.label}),(0,X.jsx)(`p`,{className:`mt-1 truncate text-sm font-medium text-fg`,children:e.value})]}),t<f.length-1?(0,X.jsx)(`div`,{className:`hidden items-center justify-center text-fg-disabled sm:flex`,"aria-hidden":!0,children:(0,X.jsx)(L,{className:`size-4`,strokeWidth:1.75})}):null]},e.label))}),t[13]=f,t[14]=p),p}function Zo(e){let t=(0,Y.c)(34),{a:n,chat:r,form:i,update:a}=e,o;t[0]!==n.cardModelsSubtitle||t[1]!==n.cardModelsTitle?(o=(0,X.jsx)(qt,{icon:bt,title:n.cardModelsTitle,subtitle:n.cardModelsSubtitle}),t[0]=n.cardModelsSubtitle,t[1]=n.cardModelsTitle,t[2]=o):o=t[2];let s=i.model||n.modelResolutionUnset,c;t[3]!==n.modelResolutionAgent||t[4]!==n.modelResolutionAgentInherits||t[5]!==n.modelResolutionGlobal||t[6]!==n.modelResolutionSession||t[7]!==n.modelResolutionSessionSelectable||t[8]!==s?(c=(0,X.jsx)(rn,{children:(0,X.jsx)(Xo,{globalLabel:n.modelResolutionGlobal,agentLabel:n.modelResolutionAgent,sessionLabel:n.modelResolutionSession,globalValue:s,agentValue:n.modelResolutionAgentInherits,sessionValue:n.modelResolutionSessionSelectable})}),t[3]=n.modelResolutionAgent,t[4]=n.modelResolutionAgentInherits,t[5]=n.modelResolutionGlobal,t[6]=n.modelResolutionSession,t[7]=n.modelResolutionSessionSelectable,t[8]=s,t[9]=c):c=t[9];let l;t[10]===a?l=t[11]:(l=e=>a({model:e}),t[10]=a,t[11]=l);let u;t[12]!==r.modelNoMatches||t[13]!==r.modelPlaceholder||t[14]!==r.modelSearchPlaceholder||t[15]!==i.model||t[16]!==l?(u=(0,X.jsx)(ne,{value:i.model,placeholder:r.modelPlaceholder,searchPlaceholder:r.modelSearchPlaceholder,noMatches:r.modelNoMatches,showProviderSettingsFooter:!0,onChange:l}),t[12]=r.modelNoMatches,t[13]=r.modelPlaceholder,t[14]=r.modelSearchPlaceholder,t[15]=i.model,t[16]=l,t[17]=u):u=t[17];let d;t[18]!==n.desc.model||t[19]!==n.label.model||t[20]!==u?(d=(0,X.jsx)(`div`,{className:`mt-5 flex flex-col gap-5`,children:(0,X.jsx)($,{label:n.label.model,description:n.desc.model,children:u})}),t[18]=n.desc.model,t[19]=n.label.model,t[20]=u,t[21]=d):d=t[21];let f;t[22]!==o||t[23]!==c||t[24]!==d?(f=(0,X.jsxs)(Jt,{children:[o,c,d]}),t[22]=o,t[23]=c,t[24]=d,t[25]=f):f=t[25];let p;t[26]===e?p=t[27]:(p=(0,X.jsx)(rn,{children:(0,X.jsx)(Jo,{...e})}),t[26]=e,t[27]=p);let m;t[28]===e?m=t[29]:(m=(0,X.jsx)(rn,{children:(0,X.jsx)(Yo,{...e})}),t[28]=e,t[29]=m);let h;return t[30]!==f||t[31]!==p||t[32]!==m?(h=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[f,p,m]}),t[30]=f,t[31]=p,t[32]=m,t[33]=h):h=t[33],h}function Qo(e){return Array.from(e).flatMap(e=>{let t=e.trim();return t?[t]:[]}).toSorted((e,t)=>e.localeCompare(t))}function $o(e,t){let n=(0,Y.c)(10),r;n[0]!==e||n[1]!==t?(r=[e,t],n[0]=e,n[1]=t,n[2]=r):r=n[2];let i=e&&t,a;n[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=[],n[3]=a):a=n[3];let o;n[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=[],n[4]=o):o=n[4];let s;n[5]===i?s=n[6]:(s={enabled:i,initial:a,errorData:o},n[5]=i,n[6]=s);let{data:c,loading:l}=Vt(es,r,s),u;return n[7]!==c||n[8]!==l?(u={builtinToolIds:c,loading:l},n[7]=c,n[8]=l,n[9]=u):u=n[9],u}async function es(){let e=await U();return Array.isArray(e.builtinToolIds)?e.builtinToolIds:[]}function ts(e){let t=(0,Y.c)(47),{a:n,form:r,update:o}=e,s=n.advanced,c=i(as),l;t[0]===c?l=t[1]:(l=a(c),t[0]=c,t[1]=l);let d=l.agentsSettings,f=!!u(is),{builtinToolIds:p,loading:m}=$o(!0,f),h;t[2]===r.toolsDisable?h=t[3]:(h=new Set(r.toolsDisable.flatMap(rs)),t[2]=r.toolsDisable,t[3]=h);let g=h,_;t[4]===p?_=t[5]:(_=new Set(p),t[4]=p,t[5]=_);let v=_,y;if(t[6]!==v||t[7]!==r.toolsDisable){let e;t[9]===v?e=t[10]:(e=e=>{let t=e.trim();return t&&!v.has(t)?[t]:[]},t[9]=v,t[10]=e),y=r.toolsDisable.flatMap(e).toSorted(ns),t[6]=v,t[7]=r.toolsDisable,t[8]=y}else y=t[8];let b=y,x;t[11]===o?x=t[12]:(x=e=>{o({toolsDisable:Qo(e)})},t[11]=o,t[12]=x);let S=x,C=d.toolsDisableGroups,w;t[13]===C?w=t[14]:(w=e=>C[e],t[13]=C,t[14]=w);let T=w,E;t[15]===d.toolDescriptions?E=t[16]:(E=e=>e in d.toolDescriptions?d.toolDescriptions[e]:``,t[15]=d.toolDescriptions,t[16]=E);let D=E,O;t[17]!==s.cardToolsDisableSubtitle||t[18]!==s.cardToolsDisableTitle?(O=(0,X.jsx)(qt,{icon:Et,title:s.cardToolsDisableTitle,subtitle:s.cardToolsDisableSubtitle}),t[17]=s.cardToolsDisableSubtitle,t[18]=s.cardToolsDisableTitle,t[19]=O):O=t[19];let k;t[20]!==n.needToken||t[21]!==d.toolsLockedByDefaults||t[22]!==p||t[23]!==g||t[24]!==T||t[25]!==D||t[26]!==f||t[27]!==m||t[28]!==S||t[29]!==b||t[30]!==s.toolsDisableEmptyBuiltin||t[31]!==s.toolsDisableLoadingBuiltin||t[32]!==s.toolsDisableNotInBuiltin||t[33]!==s.toolsDisableQuickActionsLabel||t[34]!==s.toolsDisableQuickDisableAll||t[35]!==s.toolsDisableQuickEnableAll||t[36]!==s.toolsDisableQuickHighRiskOff||t[37]!==s.toolsDisableQuickNoOutbound||t[38]!==s.toolsDisableQuickReadOnlyWorkspace?(k=(0,X.jsx)(`div`,{className:`flex flex-col gap-3`,children:f?(0,X.jsx)(br,{mode:`defaults`,builtinToolIds:p,loading:m,disableSet:g,onDisableSetChange:S,unknownDisabledIds:b,getToolDescription:D,getGroupTitle:T,quickActionsDisabled:m,labels:{loadingBuiltin:s.toolsDisableLoadingBuiltin,emptyBuiltin:s.toolsDisableEmptyBuiltin,quickActionsLabel:s.toolsDisableQuickActionsLabel,quickEnableAll:s.toolsDisableQuickEnableAll,quickDisableAll:s.toolsDisableQuickDisableAll,quickReadOnlyWorkspace:s.toolsDisableQuickReadOnlyWorkspace,quickHighRiskOff:s.toolsDisableQuickHighRiskOff,quickNoOutbound:s.toolsDisableQuickNoOutbound,notInBuiltin:s.toolsDisableNotInBuiltin,lockedByDefaults:d.toolsLockedByDefaults}}):(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:n.needToken})}),t[20]=n.needToken,t[21]=d.toolsLockedByDefaults,t[22]=p,t[23]=g,t[24]=T,t[25]=D,t[26]=f,t[27]=m,t[28]=S,t[29]=b,t[30]=s.toolsDisableEmptyBuiltin,t[31]=s.toolsDisableLoadingBuiltin,t[32]=s.toolsDisableNotInBuiltin,t[33]=s.toolsDisableQuickActionsLabel,t[34]=s.toolsDisableQuickDisableAll,t[35]=s.toolsDisableQuickEnableAll,t[36]=s.toolsDisableQuickHighRiskOff,t[37]=s.toolsDisableQuickNoOutbound,t[38]=s.toolsDisableQuickReadOnlyWorkspace,t[39]=k):k=t[39];let A;t[40]!==k||t[41]!==s.toolsDisableFieldLabel||t[42]!==s.toolsDisableHint?(A=(0,X.jsx)($,{label:s.toolsDisableFieldLabel,description:s.toolsDisableHint,children:k}),t[40]=k,t[41]=s.toolsDisableFieldLabel,t[42]=s.toolsDisableHint,t[43]=A):A=t[43];let j;return t[44]!==O||t[45]!==A?(j=(0,X.jsxs)(Jt,{children:[O,A]}),t[44]=O,t[45]=A,t[46]=j):j=t[46],j}function ns(e,t){return e.localeCompare(t)}function rs(e){let t=e.trim();return t?[t]:[]}function is(e){return e.token}function as(e){return e.language}function os(e){let t=(0,Y.c)(78),{a:n,chat:r,form:i,update:a}=e,o=n.advanced,s;t[0]!==o.cardWebExtractSubtitle||t[1]!==o.cardWebExtractTitle?(s=(0,X.jsx)(qt,{icon:wt,title:o.cardWebExtractTitle,subtitle:o.cardWebExtractSubtitle}),t[0]=o.cardWebExtractSubtitle,t[1]=o.cardWebExtractTitle,t[2]=s):s=t[2];let c;t[3]!==i.webExtract||t[4]!==a?(c=e=>a({webExtract:{...i.webExtract,model:e}}),t[3]=i.webExtract,t[4]=a,t[5]=c):c=t[5];let l;t[6]!==r.modelNoMatches||t[7]!==r.modelPlaceholder||t[8]!==r.modelSearchPlaceholder||t[9]!==i.webExtract.model||t[10]!==c?(l=(0,X.jsx)(ne,{value:i.webExtract.model,placeholder:r.modelPlaceholder,searchPlaceholder:r.modelSearchPlaceholder,noMatches:r.modelNoMatches,onChange:c}),t[6]=r.modelNoMatches,t[7]=r.modelPlaceholder,t[8]=r.modelSearchPlaceholder,t[9]=i.webExtract.model,t[10]=c,t[11]=l):l=t[11];let u;t[12]!==l||t[13]!==o.webExtractModel||t[14]!==o.webExtractModelDesc?(u=(0,X.jsx)(`div`,{className:`sm:col-span-2`,children:(0,X.jsx)($,{label:o.webExtractModel,description:o.webExtractModelDesc,children:l})}),t[12]=l,t[13]=o.webExtractModel,t[14]=o.webExtractModelDesc,t[15]=u):u=t[15];let d=o.webExtractMaxLength,f=o.webExtractMaxLengthDesc,p;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(p=Z(),t[16]=p):p=t[16];let m=i.webExtract.maxLength??``,h;t[17]!==i.webExtract||t[18]!==a?(h=e=>{let t=e.target.value;a({webExtract:{...i.webExtract,maxLength:t===``?void 0:Number.parseInt(t,10)}})},t[17]=i.webExtract,t[18]=a,t[19]=h):h=t[19];let g;t[20]!==m||t[21]!==h?(g=(0,X.jsx)(`input`,{type:`number`,className:p,min:1,value:m,placeholder:`—`,onChange:h}),t[20]=m,t[21]=h,t[22]=g):g=t[22];let _;t[23]!==g||t[24]!==o.webExtractMaxLength||t[25]!==o.webExtractMaxLengthDesc?(_=(0,X.jsx)($,{label:d,description:f,children:g}),t[23]=g,t[24]=o.webExtractMaxLength,t[25]=o.webExtractMaxLengthDesc,t[26]=_):_=t[26];let v;t[27]!==_||t[28]!==u?(v=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[u,_]}),t[27]=_,t[28]=u,t[29]=v):v=t[29];let y;t[30]!==s||t[31]!==v?(y=(0,X.jsx)(rn,{children:(0,X.jsxs)(Jt,{children:[s,v]})}),t[30]=s,t[31]=v,t[32]=y):y=t[32];let b;t[33]!==o.cardDelegateSubtitle||t[34]!==o.cardDelegateTitle?(b=(0,X.jsx)(qt,{icon:qe,title:o.cardDelegateTitle,subtitle:o.cardDelegateSubtitle}),t[33]=o.cardDelegateSubtitle,t[34]=o.cardDelegateTitle,t[35]=b):b=t[35];let x;t[36]!==i.delegate||t[37]!==a?(x=e=>a({delegate:{...i.delegate,enabled:e.target.checked}}),t[36]=i.delegate,t[37]=a,t[38]=x):x=t[38];let S;t[39]!==i.delegate.enabled||t[40]!==x?(S=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:i.delegate.enabled,onChange:x}),t[39]=i.delegate.enabled,t[40]=x,t[41]=S):S=t[41];let C;t[42]===o.delegateEnabledOn?C=t[43]:(C=(0,X.jsx)(`span`,{children:o.delegateEnabledOn}),t[42]=o.delegateEnabledOn,t[43]=C);let w;t[44]!==S||t[45]!==C?(w=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[S,C]}),t[44]=S,t[45]=C,t[46]=w):w=t[46];let T;t[47]!==w||t[48]!==o.delegateEnabled||t[49]!==o.delegateEnabledDesc?(T=(0,X.jsx)($,{label:o.delegateEnabled,description:o.delegateEnabledDesc,children:w}),t[47]=w,t[48]=o.delegateEnabled,t[49]=o.delegateEnabledDesc,t[50]=T):T=t[50];let E;t[51]!==i.executeCode||t[52]!==a?(E=e=>a({executeCode:{...i.executeCode,enabled:e.target.checked}}),t[51]=i.executeCode,t[52]=a,t[53]=E):E=t[53];let D;t[54]!==i.executeCode.enabled||t[55]!==E?(D=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:i.executeCode.enabled,onChange:E}),t[54]=i.executeCode.enabled,t[55]=E,t[56]=D):D=t[56];let O;t[57]===o.executeCodeEnabledOn?O=t[58]:(O=(0,X.jsx)(`span`,{children:o.executeCodeEnabledOn}),t[57]=o.executeCodeEnabledOn,t[58]=O);let k;t[59]!==D||t[60]!==O?(k=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[D,O]}),t[59]=D,t[60]=O,t[61]=k):k=t[61];let A;t[62]!==k||t[63]!==o.executeCodeEnabled||t[64]!==o.executeCodeEnabledDesc?(A=(0,X.jsx)($,{label:o.executeCodeEnabled,description:o.executeCodeEnabledDesc,children:k}),t[62]=k,t[63]=o.executeCodeEnabled,t[64]=o.executeCodeEnabledDesc,t[65]=A):A=t[65];let j;t[66]!==T||t[67]!==A?(j=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[T,A]}),t[66]=T,t[67]=A,t[68]=j):j=t[68];let M;t[69]!==b||t[70]!==j?(M=(0,X.jsx)(rn,{children:(0,X.jsxs)(Jt,{children:[b,j]})}),t[69]=b,t[70]=j,t[71]=M):M=t[71];let N;t[72]===e?N=t[73]:(N=(0,X.jsx)(ts,{...e}),t[72]=e,t[73]=N);let P;return t[74]!==y||t[75]!==M||t[76]!==N?(P=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[y,M,N]}),t[74]=y,t[75]=M,t[76]=N,t[77]=P):P=t[77],P}function ss(e){let t=(0,Y.c)(16),{showLabel:n,hideLabel:r,children:i,className:a}=e,o;t[0]===a?o=t[1]:(o=J(`group rounded-lg border border-edge-subtle/80 bg-surface-hover/20 open:pb-3 dark:border-edge-subtle`,a),t[0]=a,t[1]=o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,X.jsx)(se,{className:`size-4 shrink-0 transition-transform group-open:rotate-180`,"aria-hidden":!0}),t[2]=s):s=t[2];let c;t[3]===n?c=t[4]:(c=(0,X.jsx)(`span`,{className:`group-open:hidden`,children:n}),t[3]=n,t[4]=c);let l;t[5]===r?l=t[6]:(l=(0,X.jsx)(`span`,{className:`hidden group-open:inline`,children:r}),t[5]=r,t[6]=l);let u;t[7]!==c||t[8]!==l?(u=(0,X.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center gap-1.5 rounded-lg px-3 py-2 text-sm font-medium text-fg-muted transition-colors hover:bg-surface-hover hover:text-fg group-open:rounded-b-none [&::-webkit-details-marker]:hidden`,children:[s,c,l]}),t[7]=c,t[8]=l,t[9]=u):u=t[9];let d;t[10]===i?d=t[11]:(d=(0,X.jsx)(`div`,{className:`flex flex-col gap-5 px-3 pt-3`,children:i}),t[10]=i,t[11]=d);let f;return t[12]!==o||t[13]!==u||t[14]!==d?(f=(0,X.jsx)(rn,{children:(0,X.jsxs)(`details`,{className:o,children:[u,d]})}),t[12]=o,t[13]=u,t[14]=d,t[15]=f):f=t[15],f}function cs(e){let t=(0,Y.c)(187),{a:n,form:r,update:i}=e,a=n.advanced,o;t[0]!==a.cardCompactionSubtitle||t[1]!==a.cardCompactionTitle?(o=(0,X.jsx)(qt,{icon:I,title:a.cardCompactionTitle,subtitle:a.cardCompactionSubtitle}),t[0]=a.cardCompactionSubtitle,t[1]=a.cardCompactionTitle,t[2]=o):o=t[2];let s;t[3]!==r.compaction||t[4]!==i?(s=e=>i({compaction:{...r.compaction,enabled:e.target.checked}}),t[3]=r.compaction,t[4]=i,t[5]=s):s=t[5];let c;t[6]!==r.compaction.enabled||t[7]!==s?(c=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:r.compaction.enabled,onChange:s}),t[6]=r.compaction.enabled,t[7]=s,t[8]=c):c=t[8];let l;t[9]===a.compactionEnabledOn?l=t[10]:(l=(0,X.jsx)(`span`,{children:a.compactionEnabledOn}),t[9]=a.compactionEnabledOn,t[10]=l);let u;t[11]!==c||t[12]!==l?(u=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[c,l]}),t[11]=c,t[12]=l,t[13]=u):u=t[13];let d;t[14]!==u||t[15]!==a.compactionEnabled||t[16]!==a.compactionEnabledDesc?(d=(0,X.jsx)($,{label:a.compactionEnabled,description:a.compactionEnabledDesc,children:u}),t[14]=u,t[15]=a.compactionEnabled,t[16]=a.compactionEnabledDesc,t[17]=d):d=t[17];let f=a.compactionMode,p=a.compactionModeDesc,m;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(m=Tn(),t[18]=m):m=t[18];let h;t[19]!==r.compaction||t[20]!==i?(h=e=>i({compaction:{...r.compaction,mode:e.target.value}}),t[19]=r.compaction,t[20]=i,t[21]=h):h=t[21];let g;t[22]===a.compactionModeDefault?g=t[23]:(g=(0,X.jsx)(`option`,{value:`default`,children:a.compactionModeDefault}),t[22]=a.compactionModeDefault,t[23]=g);let _;t[24]===a.compactionModeSafeguard?_=t[25]:(_=(0,X.jsx)(`option`,{value:`safeguard`,children:a.compactionModeSafeguard}),t[24]=a.compactionModeSafeguard,t[25]=_);let v;t[26]!==r.compaction.mode||t[27]!==g||t[28]!==_||t[29]!==h?(v=(0,X.jsxs)(`select`,{className:m,value:r.compaction.mode,onChange:h,children:[g,_]}),t[26]=r.compaction.mode,t[27]=g,t[28]=_,t[29]=h,t[30]=v):v=t[30];let y;t[31]!==v||t[32]!==a.compactionMode||t[33]!==a.compactionModeDesc?(y=(0,X.jsx)(rn,{children:(0,X.jsx)($,{label:f,description:p,children:v})}),t[31]=v,t[32]=a.compactionMode,t[33]=a.compactionModeDesc,t[34]=y):y=t[34];let b=a.advancedOptionsShow,x=a.advancedOptionsHide,S=a.reserveTokens,C=a.reserveTokensDesc,w;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(w=Z(),t[35]=w):w=t[35];let T;t[36]!==r.compaction||t[37]!==i?(T=e=>i({compaction:{...r.compaction,reserveTokens:Number.parseInt(e.target.value,10)||0}}),t[36]=r.compaction,t[37]=i,t[38]=T):T=t[38];let E;t[39]!==r.compaction.reserveTokens||t[40]!==T?(E=(0,X.jsx)(`input`,{type:`number`,className:w,min:1e3,value:r.compaction.reserveTokens,onChange:T}),t[39]=r.compaction.reserveTokens,t[40]=T,t[41]=E):E=t[41];let D;t[42]!==E||t[43]!==a.reserveTokens||t[44]!==a.reserveTokensDesc?(D=(0,X.jsx)($,{label:S,description:C,children:E}),t[42]=E,t[43]=a.reserveTokens,t[44]=a.reserveTokensDesc,t[45]=D):D=t[45];let O=a.triggerThreshold,k=a.triggerThresholdDesc,A;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(A=Z(),t[46]=A):A=t[46];let j;t[47]!==r.compaction||t[48]!==i?(j=e=>i({compaction:{...r.compaction,triggerThreshold:Number.parseFloat(e.target.value)||.8}}),t[47]=r.compaction,t[48]=i,t[49]=j):j=t[49];let M;t[50]!==r.compaction.triggerThreshold||t[51]!==j?(M=(0,X.jsx)(`input`,{type:`number`,className:A,min:.5,max:.95,step:.05,value:r.compaction.triggerThreshold,onChange:j}),t[50]=r.compaction.triggerThreshold,t[51]=j,t[52]=M):M=t[52];let N;t[53]!==M||t[54]!==a.triggerThreshold||t[55]!==a.triggerThresholdDesc?(N=(0,X.jsx)($,{label:O,description:k,children:M}),t[53]=M,t[54]=a.triggerThreshold,t[55]=a.triggerThresholdDesc,t[56]=N):N=t[56];let P=a.minMessagesBeforeCompact,F=a.minMessagesBeforeCompactDesc,L;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(L=Z(),t[57]=L):L=t[57];let R;t[58]!==r.compaction||t[59]!==i?(R=e=>i({compaction:{...r.compaction,minMessagesBeforeCompact:Number.parseInt(e.target.value,10)||10}}),t[58]=r.compaction,t[59]=i,t[60]=R):R=t[60];let z;t[61]!==r.compaction.minMessagesBeforeCompact||t[62]!==R?(z=(0,X.jsx)(`input`,{type:`number`,className:L,min:1,value:r.compaction.minMessagesBeforeCompact,onChange:R}),t[61]=r.compaction.minMessagesBeforeCompact,t[62]=R,t[63]=z):z=t[63];let B;t[64]!==z||t[65]!==a.minMessagesBeforeCompact||t[66]!==a.minMessagesBeforeCompactDesc?(B=(0,X.jsx)($,{label:P,description:F,children:z}),t[64]=z,t[65]=a.minMessagesBeforeCompact,t[66]=a.minMessagesBeforeCompactDesc,t[67]=B):B=t[67];let ee=a.keepRecentMessages,V=a.keepRecentMessagesDesc,H;t[68]===Symbol.for(`react.memo_cache_sentinel`)?(H=Z(),t[68]=H):H=t[68];let U;t[69]!==r.compaction||t[70]!==i?(U=e=>i({compaction:{...r.compaction,keepRecentMessages:Number.parseInt(e.target.value,10)||5}}),t[69]=r.compaction,t[70]=i,t[71]=U):U=t[71];let te;t[72]!==r.compaction.keepRecentMessages||t[73]!==U?(te=(0,X.jsx)(`input`,{type:`number`,className:H,min:0,value:r.compaction.keepRecentMessages,onChange:U}),t[72]=r.compaction.keepRecentMessages,t[73]=U,t[74]=te):te=t[74];let W;t[75]!==te||t[76]!==a.keepRecentMessages||t[77]!==a.keepRecentMessagesDesc?(W=(0,X.jsx)($,{label:ee,description:V,children:te}),t[75]=te,t[76]=a.keepRecentMessages,t[77]=a.keepRecentMessagesDesc,t[78]=W):W=t[78];let G=a.evictionWindow,ne=a.evictionWindowDesc,re;t[79]===Symbol.for(`react.memo_cache_sentinel`)?(re=Z(),t[79]=re):re=t[79];let ie;t[80]!==r.compaction||t[81]!==i?(ie=e=>i({compaction:{...r.compaction,evictionWindow:Number.parseFloat(e.target.value)||.2}}),t[80]=r.compaction,t[81]=i,t[82]=ie):ie=t[82];let ae;t[83]!==r.compaction.evictionWindow||t[84]!==ie?(ae=(0,X.jsx)(`input`,{type:`number`,className:re,min:.1,max:.5,step:.05,value:r.compaction.evictionWindow,onChange:ie}),t[83]=r.compaction.evictionWindow,t[84]=ie,t[85]=ae):ae=t[85];let oe;t[86]!==ae||t[87]!==a.evictionWindow||t[88]!==a.evictionWindowDesc?(oe=(0,X.jsx)($,{label:G,description:ne,children:ae}),t[86]=ae,t[87]=a.evictionWindow,t[88]=a.evictionWindowDesc,t[89]=oe):oe=t[89];let se=a.retentionWindow,ce=a.retentionWindowDesc,le;t[90]===Symbol.for(`react.memo_cache_sentinel`)?(le=Z(),t[90]=le):le=t[90];let ue;t[91]!==r.compaction||t[92]!==i?(ue=e=>i({compaction:{...r.compaction,retentionWindow:Number.parseInt(e.target.value,10)||6}}),t[91]=r.compaction,t[92]=i,t[93]=ue):ue=t[93];let de;t[94]!==r.compaction.retentionWindow||t[95]!==ue?(de=(0,X.jsx)(`input`,{type:`number`,className:le,min:3,max:20,value:r.compaction.retentionWindow,onChange:ue}),t[94]=r.compaction.retentionWindow,t[95]=ue,t[96]=de):de=t[96];let fe;t[97]!==de||t[98]!==a.retentionWindow||t[99]!==a.retentionWindowDesc?(fe=(0,X.jsx)($,{label:se,description:ce,children:de}),t[97]=de,t[98]=a.retentionWindow,t[99]=a.retentionWindowDesc,t[100]=fe):fe=t[100];let pe;t[101]!==D||t[102]!==N||t[103]!==B||t[104]!==W||t[105]!==oe||t[106]!==fe?(pe=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[D,N,B,W,oe,fe]}),t[101]=D,t[102]=N,t[103]=B,t[104]=W,t[105]=oe,t[106]=fe,t[107]=pe):pe=t[107];let me;t[108]!==pe||t[109]!==a.advancedOptionsHide||t[110]!==a.advancedOptionsShow?(me=(0,X.jsx)(ss,{showLabel:b,hideLabel:x,children:pe}),t[108]=pe,t[109]=a.advancedOptionsHide,t[110]=a.advancedOptionsShow,t[111]=me):me=t[111];let he;t[112]!==y||t[113]!==d||t[114]!==me?(he=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[d,y,me]}),t[112]=y,t[113]=d,t[114]=me,t[115]=he):he=t[115];let ge;t[116]!==o||t[117]!==he?(ge=(0,X.jsxs)(Jt,{children:[o,he]}),t[116]=o,t[117]=he,t[118]=ge):ge=t[118];let _e;t[119]!==a.cardPruningSubtitle||t[120]!==a.cardPruningTitle?(_e=(0,X.jsx)(qt,{icon:We,title:a.cardPruningTitle,subtitle:a.cardPruningSubtitle}),t[119]=a.cardPruningSubtitle,t[120]=a.cardPruningTitle,t[121]=_e):_e=t[121];let ve;t[122]!==r.pruning||t[123]!==i?(ve=e=>i({pruning:{...r.pruning,enabled:e.target.checked}}),t[122]=r.pruning,t[123]=i,t[124]=ve):ve=t[124];let ye;t[125]!==r.pruning.enabled||t[126]!==ve?(ye=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:r.pruning.enabled,onChange:ve}),t[125]=r.pruning.enabled,t[126]=ve,t[127]=ye):ye=t[127];let be;t[128]===a.pruningEnabledOn?be=t[129]:(be=(0,X.jsx)(`span`,{children:a.pruningEnabledOn}),t[128]=a.pruningEnabledOn,t[129]=be);let xe;t[130]!==ye||t[131]!==be?(xe=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[ye,be]}),t[130]=ye,t[131]=be,t[132]=xe):xe=t[132];let Se;t[133]!==xe||t[134]!==a.pruningEnabled||t[135]!==a.pruningEnabledDesc?(Se=(0,X.jsx)($,{label:a.pruningEnabled,description:a.pruningEnabledDesc,children:xe}),t[133]=xe,t[134]=a.pruningEnabled,t[135]=a.pruningEnabledDesc,t[136]=Se):Se=t[136];let Ce=a.maxToolResultChars,we=a.maxToolResultCharsDesc,Te;t[137]===Symbol.for(`react.memo_cache_sentinel`)?(Te=Z(),t[137]=Te):Te=t[137];let Ee;t[138]!==r.pruning||t[139]!==i?(Ee=e=>i({pruning:{...r.pruning,maxToolResultChars:Number.parseInt(e.target.value,10)||1e4}}),t[138]=r.pruning,t[139]=i,t[140]=Ee):Ee=t[140];let De;t[141]!==r.pruning.maxToolResultChars||t[142]!==Ee?(De=(0,X.jsx)(`input`,{type:`number`,className:Te,min:1e3,value:r.pruning.maxToolResultChars,onChange:Ee}),t[141]=r.pruning.maxToolResultChars,t[142]=Ee,t[143]=De):De=t[143];let Oe;t[144]!==De||t[145]!==a.maxToolResultChars||t[146]!==a.maxToolResultCharsDesc?(Oe=(0,X.jsx)($,{label:Ce,description:we,children:De}),t[144]=De,t[145]=a.maxToolResultChars,t[146]=a.maxToolResultCharsDesc,t[147]=Oe):Oe=t[147];let ke=a.advancedOptionsShow,Ae=a.advancedOptionsHide,je=a.headKeepRatio,Me=a.headKeepRatioDesc,Ne;t[148]===Symbol.for(`react.memo_cache_sentinel`)?(Ne=Z(),t[148]=Ne):Ne=t[148];let Pe;t[149]!==r.pruning||t[150]!==i?(Pe=e=>i({pruning:{...r.pruning,headKeepRatio:Number.parseFloat(e.target.value)||.3}}),t[149]=r.pruning,t[150]=i,t[151]=Pe):Pe=t[151];let Fe;t[152]!==r.pruning.headKeepRatio||t[153]!==Pe?(Fe=(0,X.jsx)(`input`,{type:`number`,className:Ne,min:0,max:1,step:.05,value:r.pruning.headKeepRatio,onChange:Pe}),t[152]=r.pruning.headKeepRatio,t[153]=Pe,t[154]=Fe):Fe=t[154];let Ie;t[155]!==Fe||t[156]!==a.headKeepRatio||t[157]!==a.headKeepRatioDesc?(Ie=(0,X.jsx)($,{label:je,description:Me,children:Fe}),t[155]=Fe,t[156]=a.headKeepRatio,t[157]=a.headKeepRatioDesc,t[158]=Ie):Ie=t[158];let Le=a.tailKeepRatio,Re=a.tailKeepRatioDesc,ze;t[159]===Symbol.for(`react.memo_cache_sentinel`)?(ze=Z(),t[159]=ze):ze=t[159];let Be;t[160]!==r.pruning||t[161]!==i?(Be=e=>i({pruning:{...r.pruning,tailKeepRatio:Number.parseFloat(e.target.value)||.3}}),t[160]=r.pruning,t[161]=i,t[162]=Be):Be=t[162];let Ve;t[163]!==r.pruning.tailKeepRatio||t[164]!==Be?(Ve=(0,X.jsx)(`input`,{type:`number`,className:ze,min:0,max:1,step:.05,value:r.pruning.tailKeepRatio,onChange:Be}),t[163]=r.pruning.tailKeepRatio,t[164]=Be,t[165]=Ve):Ve=t[165];let He;t[166]!==Ve||t[167]!==a.tailKeepRatio||t[168]!==a.tailKeepRatioDesc?(He=(0,X.jsx)($,{label:Le,description:Re,children:Ve}),t[166]=Ve,t[167]=a.tailKeepRatio,t[168]=a.tailKeepRatioDesc,t[169]=He):He=t[169];let Ue;t[170]!==Ie||t[171]!==He?(Ue=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[Ie,He]}),t[170]=Ie,t[171]=He,t[172]=Ue):Ue=t[172];let Ge;t[173]!==Ue||t[174]!==a.advancedOptionsHide||t[175]!==a.advancedOptionsShow?(Ge=(0,X.jsx)(ss,{showLabel:ke,hideLabel:Ae,children:Ue}),t[173]=Ue,t[174]=a.advancedOptionsHide,t[175]=a.advancedOptionsShow,t[176]=Ge):Ge=t[176];let Ke;t[177]!==Se||t[178]!==Oe||t[179]!==Ge?(Ke=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[Se,Oe,Ge]}),t[177]=Se,t[178]=Oe,t[179]=Ge,t[180]=Ke):Ke=t[180];let K;t[181]!==_e||t[182]!==Ke?(K=(0,X.jsxs)(Jt,{children:[_e,Ke]}),t[181]=_e,t[182]=Ke,t[183]=K):K=t[183];let qe;return t[184]!==ge||t[185]!==K?(qe=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[ge,K]}),t[184]=ge,t[185]=K,t[186]=qe):qe=t[186],qe}function ls(e){let t=(0,Y.c)(16),{a:n,form:r,update:i}=e,a=n.advanced,o;t[0]!==a.cardParamsSubtitle||t[1]!==a.cardParamsTitle?(o=(0,X.jsx)(qt,{icon:Ut,title:a.cardParamsTitle,subtitle:a.cardParamsSubtitle}),t[0]=a.cardParamsSubtitle,t[1]=a.cardParamsTitle,t[2]=o):o=t[2];let s=a.paramsJson,c=a.paramsJsonDesc,l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=J(Z(),`min-h-[88px] resize-y font-mono text-xs`),t[3]=l):l=t[3];let u;t[4]===i?u=t[5]:(u=e=>i({paramsJson:e.target.value}),t[4]=i,t[5]=u);let d;t[6]!==r.paramsJson||t[7]!==u?(d=(0,X.jsx)(`textarea`,{className:l,value:r.paramsJson,placeholder:`{}`,onChange:u}),t[6]=r.paramsJson,t[7]=u,t[8]=d):d=t[8];let f;t[9]!==d||t[10]!==a.paramsJson||t[11]!==a.paramsJsonDesc?(f=(0,X.jsx)($,{label:s,description:c,children:d}),t[9]=d,t[10]=a.paramsJson,t[11]=a.paramsJsonDesc,t[12]=f):f=t[12];let p;return t[13]!==o||t[14]!==f?(p=(0,X.jsx)(`div`,{className:`flex flex-col gap-5`,children:(0,X.jsxs)(Jt,{children:[o,f]})}),t[13]=o,t[14]=f,t[15]=p):p=t[15],p}var us=[`off`,`minimal`,`low`,`medium`,`high`,`xhigh`,`adaptive`];function ds(e){let t=(0,Y.c)(93),{a:n,chat:r,form:i,update:a}=e,o;t[0]!==n.cardGenerationSubtitle||t[1]!==n.cardGenerationTitle?(o=(0,X.jsx)(qt,{icon:S,title:n.cardGenerationTitle,subtitle:n.cardGenerationSubtitle}),t[0]=n.cardGenerationSubtitle,t[1]=n.cardGenerationTitle,t[2]=o):o=t[2];let s=n.label.maxTokens,c=n.desc.maxTokens,l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=Z(),t[3]=l):l=t[3];let u;t[4]===a?u=t[5]:(u=e=>a({maxTokens:Number.parseInt(e.target.value,10)||0}),t[4]=a,t[5]=u);let d;t[6]!==i.maxTokens||t[7]!==u?(d=(0,X.jsx)(`input`,{type:`number`,className:l,value:i.maxTokens,min:1,onChange:u}),t[6]=i.maxTokens,t[7]=u,t[8]=d):d=t[8];let f;t[9]!==n.desc.maxTokens||t[10]!==n.label.maxTokens||t[11]!==d?(f=(0,X.jsx)($,{label:s,description:c,children:d}),t[9]=n.desc.maxTokens,t[10]=n.label.maxTokens,t[11]=d,t[12]=f):f=t[12];let p=n.label.temperature,m=n.desc.temperature,h;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(h=Z(),t[13]=h):h=t[13];let g;t[14]===a?g=t[15]:(g=e=>a({temperature:Number.parseFloat(e.target.value)||0}),t[14]=a,t[15]=g);let _;t[16]!==i.temperature||t[17]!==g?(_=(0,X.jsx)(`input`,{type:`number`,className:h,value:i.temperature,min:0,max:2,step:.1,onChange:g}),t[16]=i.temperature,t[17]=g,t[18]=_):_=t[18];let v;t[19]!==n.desc.temperature||t[20]!==n.label.temperature||t[21]!==_?(v=(0,X.jsx)($,{label:p,description:m,children:_}),t[19]=n.desc.temperature,t[20]=n.label.temperature,t[21]=_,t[22]=v):v=t[22];let y;t[23]!==v||t[24]!==f?(y=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[f,v]}),t[23]=v,t[24]=f,t[25]=y):y=t[25];let b;t[26]!==o||t[27]!==y?(b=(0,X.jsxs)(Jt,{children:[o,y]}),t[26]=o,t[27]=y,t[28]=b):b=t[28];let x;t[29]!==n.cardBehaviorSubtitle||t[30]!==n.cardBehaviorTitle?(x=(0,X.jsx)(qt,{icon:et,title:n.cardBehaviorTitle,subtitle:n.cardBehaviorSubtitle}),t[29]=n.cardBehaviorSubtitle,t[30]=n.cardBehaviorTitle,t[31]=x):x=t[31];let C=n.label.thinkingDefault,w=n.desc.thinkingDefault,T;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(T=Tn(),t[32]=T):T=t[32];let E=i.thinkingDefault,D;t[33]===a?D=t[34]:(D=e=>a({thinkingDefault:e.target.value}),t[33]=a,t[34]=D);let O;t[35]===r?O=t[36]:(O=us.map(e=>(0,X.jsx)(`option`,{value:e,children:r.thinkingLevels[e]},e)),t[35]=r,t[36]=O);let k;t[37]!==i.thinkingDefault||t[38]!==D||t[39]!==O?(k=(0,X.jsx)(`select`,{className:T,value:E,onChange:D,children:O}),t[37]=i.thinkingDefault,t[38]=D,t[39]=O,t[40]=k):k=t[40];let A;t[41]!==n.desc.thinkingDefault||t[42]!==n.label.thinkingDefault||t[43]!==k?(A=(0,X.jsx)($,{label:C,description:w,children:k}),t[41]=n.desc.thinkingDefault,t[42]=n.label.thinkingDefault,t[43]=k,t[44]=A):A=t[44];let j=n.label.reasoningDefault,M=n.desc.reasoningDefault,N;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(N=Tn(),t[45]=N):N=t[45];let P;t[46]===a?P=t[47]:(P=e=>a({reasoningDefault:e.target.value}),t[46]=a,t[47]=P);let F;t[48]===n.reasoning.off?F=t[49]:(F=(0,X.jsx)(`option`,{value:`off`,children:n.reasoning.off}),t[48]=n.reasoning.off,t[49]=F);let I;t[50]===n.reasoning.on?I=t[51]:(I=(0,X.jsx)(`option`,{value:`on`,children:n.reasoning.on}),t[50]=n.reasoning.on,t[51]=I);let L;t[52]===n.reasoning.stream?L=t[53]:(L=(0,X.jsx)(`option`,{value:`stream`,children:n.reasoning.stream}),t[52]=n.reasoning.stream,t[53]=L);let R;t[54]!==i.reasoningDefault||t[55]!==P||t[56]!==F||t[57]!==I||t[58]!==L?(R=(0,X.jsxs)(`select`,{className:N,value:i.reasoningDefault,onChange:P,children:[F,I,L]}),t[54]=i.reasoningDefault,t[55]=P,t[56]=F,t[57]=I,t[58]=L,t[59]=R):R=t[59];let z;t[60]!==n.desc.reasoningDefault||t[61]!==n.label.reasoningDefault||t[62]!==R?(z=(0,X.jsx)($,{label:j,description:M,children:R}),t[60]=n.desc.reasoningDefault,t[61]=n.label.reasoningDefault,t[62]=R,t[63]=z):z=t[63];let B=n.label.verboseDefault,ee=n.desc.verboseDefault,V;t[64]===Symbol.for(`react.memo_cache_sentinel`)?(V=Tn(),t[64]=V):V=t[64];let H;t[65]===a?H=t[66]:(H=e=>a({verboseDefault:e.target.value}),t[65]=a,t[66]=H);let U;t[67]===n.verbose.off?U=t[68]:(U=(0,X.jsx)(`option`,{value:`off`,children:n.verbose.off}),t[67]=n.verbose.off,t[68]=U);let te;t[69]===n.verbose.on?te=t[70]:(te=(0,X.jsx)(`option`,{value:`on`,children:n.verbose.on}),t[69]=n.verbose.on,t[70]=te);let W;t[71]===n.verbose.full?W=t[72]:(W=(0,X.jsx)(`option`,{value:`full`,children:n.verbose.full}),t[71]=n.verbose.full,t[72]=W);let G;t[73]!==i.verboseDefault||t[74]!==H||t[75]!==U||t[76]!==te||t[77]!==W?(G=(0,X.jsxs)(`select`,{className:V,value:i.verboseDefault,onChange:H,children:[U,te,W]}),t[73]=i.verboseDefault,t[74]=H,t[75]=U,t[76]=te,t[77]=W,t[78]=G):G=t[78];let ne;t[79]!==n.desc.verboseDefault||t[80]!==n.label.verboseDefault||t[81]!==G?(ne=(0,X.jsx)($,{label:B,description:ee,children:G}),t[79]=n.desc.verboseDefault,t[80]=n.label.verboseDefault,t[81]=G,t[82]=ne):ne=t[82];let re;t[83]!==A||t[84]!==z||t[85]!==ne?(re=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[A,z,ne]}),t[83]=A,t[84]=z,t[85]=ne,t[86]=re):re=t[86];let ie;t[87]!==x||t[88]!==re?(ie=(0,X.jsx)(rn,{children:(0,X.jsxs)(Jt,{children:[x,re]})}),t[87]=x,t[88]=re,t[89]=ie):ie=t[89];let ae;return t[90]!==b||t[91]!==ie?(ae=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[b,ie]}),t[90]=b,t[91]=ie,t[92]=ae):ae=t[92],ae}function fs(e){let t=(0,Y.c)(65),{a:n,form:r,update:i}=e,a=n.advanced,o;t[0]!==a.cardLimitsSubtitle||t[1]!==a.cardLimitsTitle?(o=(0,X.jsx)(qt,{icon:It,title:a.cardLimitsTitle,subtitle:a.cardLimitsSubtitle}),t[0]=a.cardLimitsSubtitle,t[1]=a.cardLimitsTitle,t[2]=o):o=t[2];let s=a.maxTaskDurationMs,c=a.maxTaskDurationMsDesc,l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=Z(),t[3]=l):l=t[3];let u=r.maxTaskDurationMinutes??``,d;t[4]===i?d=t[5]:(d=e=>{let t=e.target.value;if(t===``){i({maxTaskDurationMinutes:void 0});return}let n=Number.parseInt(t,10);Number.isNaN(n)||i({maxTaskDurationMinutes:Math.min(240,Math.max(1,n))})},t[4]=i,t[5]=d);let f;t[6]!==u||t[7]!==d||t[8]!==a.maxTaskDurationPlaceholder?(f=(0,X.jsx)(`input`,{type:`number`,className:l,min:1,max:240,step:1,value:u,placeholder:a.maxTaskDurationPlaceholder,onChange:d}),t[6]=u,t[7]=d,t[8]=a.maxTaskDurationPlaceholder,t[9]=f):f=t[9];let p;t[10]!==f||t[11]!==a.maxTaskDurationMs||t[12]!==a.maxTaskDurationMsDesc?(p=(0,X.jsx)($,{label:s,description:c,children:f}),t[10]=f,t[11]=a.maxTaskDurationMs,t[12]=a.maxTaskDurationMsDesc,t[13]=p):p=t[13];let m=a.maxRequestsPerTurn,h=a.maxRequestsPerTurnDesc,g;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(g=Z(),t[14]=g):g=t[14];let _;t[15]===i?_=t[16]:(_=e=>i({maxRequestsPerTurn:Number.parseInt(e.target.value,10)||50}),t[15]=i,t[16]=_);let v;t[17]!==r.maxRequestsPerTurn||t[18]!==_?(v=(0,X.jsx)(`input`,{type:`number`,className:g,min:10,max:200,value:r.maxRequestsPerTurn,onChange:_}),t[17]=r.maxRequestsPerTurn,t[18]=_,t[19]=v):v=t[19];let y;t[20]!==v||t[21]!==a.maxRequestsPerTurn||t[22]!==a.maxRequestsPerTurnDesc?(y=(0,X.jsx)($,{label:m,description:h,children:v}),t[20]=v,t[21]=a.maxRequestsPerTurn,t[22]=a.maxRequestsPerTurnDesc,t[23]=y):y=t[23];let b=a.maxToolFailuresPerTurn,x=a.maxToolFailuresPerTurnDesc,S;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(S=Z(),t[24]=S):S=t[24];let C;t[25]===i?C=t[26]:(C=e=>i({maxToolFailuresPerTurn:Number.parseInt(e.target.value,10)||3}),t[25]=i,t[26]=C);let w;t[27]!==r.maxToolFailuresPerTurn||t[28]!==C?(w=(0,X.jsx)(`input`,{type:`number`,className:S,min:1,max:20,value:r.maxToolFailuresPerTurn,onChange:C}),t[27]=r.maxToolFailuresPerTurn,t[28]=C,t[29]=w):w=t[29];let T;t[30]!==w||t[31]!==a.maxToolFailuresPerTurn||t[32]!==a.maxToolFailuresPerTurnDesc?(T=(0,X.jsx)($,{label:b,description:x,children:w}),t[30]=w,t[31]=a.maxToolFailuresPerTurn,t[32]=a.maxToolFailuresPerTurnDesc,t[33]=T):T=t[33];let E=n.label.maxToolIterations,D=n.desc.maxToolIterations,O;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(O=Z(),t[34]=O):O=t[34];let k;t[35]===i?k=t[36]:(k=e=>i({maxToolIterations:Number.parseInt(e.target.value,10)||0}),t[35]=i,t[36]=k);let A;t[37]!==r.maxToolIterations||t[38]!==k?(A=(0,X.jsx)(`input`,{type:`number`,className:O,value:r.maxToolIterations,min:1,onChange:k}),t[37]=r.maxToolIterations,t[38]=k,t[39]=A):A=t[39];let j;t[40]!==n.desc.maxToolIterations||t[41]!==n.label.maxToolIterations||t[42]!==A?(j=(0,X.jsx)($,{label:E,description:D,children:A}),t[40]=n.desc.maxToolIterations,t[41]=n.label.maxToolIterations,t[42]=A,t[43]=j):j=t[43];let M;t[44]!==y||t[45]!==T||t[46]!==j?(M=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[y,T,j]}),t[44]=y,t[45]=T,t[46]=j,t[47]=M):M=t[47];let N;t[48]!==M||t[49]!==p?(N=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[p,M]}),t[48]=M,t[49]=p,t[50]=N):N=t[50];let P;t[51]!==o||t[52]!==N?(P=(0,X.jsxs)(Jt,{children:[o,N]}),t[51]=o,t[52]=N,t[53]=P):P=t[53];let F;t[54]===Symbol.for(`react.memo_cache_sentinel`)?(F=Le(`settingsGoals`),t[54]=F):F=t[54];let I;t[55]===a.goalsCheckLink?I=t[56]:(I=(0,X.jsx)(Ue,{to:F,className:`font-medium text-accent-fg hover:underline`,children:a.goalsCheckLink}),t[55]=a.goalsCheckLink,t[56]=I);let L;t[57]===a.goalsCheckLinkHint?L=t[58]:(L=(0,X.jsx)(`span`,{className:`mt-1 block`,children:a.goalsCheckLinkHint}),t[57]=a.goalsCheckLinkHint,t[58]=L);let R;t[59]!==I||t[60]!==L?(R=(0,X.jsxs)(`p`,{className:`text-xs text-fg-muted`,children:[I,L]}),t[59]=I,t[60]=L,t[61]=R):R=t[61];let z;return t[62]!==P||t[63]!==R?(z=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[P,R]}),t[62]=P,t[63]=R,t[64]=z):z=t[64],z}function ps(e){let t=(0,Y.c)(263),{a:n,chat:r,form:i,update:a}=e,o=n.advanced,s;t[0]!==o.cardMemorySubtitle||t[1]!==o.cardMemoryTitle?(s=(0,X.jsx)(qt,{icon:H,title:o.cardMemoryTitle,subtitle:o.cardMemorySubtitle}),t[0]=o.cardMemorySubtitle,t[1]=o.cardMemoryTitle,t[2]=s):s=t[2];let c;t[3]!==i.memory||t[4]!==a?(c=e=>a({memory:{...i.memory,enabled:e.target.checked}}),t[3]=i.memory,t[4]=a,t[5]=c):c=t[5];let l;t[6]!==i.memory.enabled||t[7]!==c?(l=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:i.memory.enabled,onChange:c}),t[6]=i.memory.enabled,t[7]=c,t[8]=l):l=t[8];let u;t[9]===o.memoryEnabledOn?u=t[10]:(u=(0,X.jsx)(`span`,{children:o.memoryEnabledOn}),t[9]=o.memoryEnabledOn,t[10]=u);let d;t[11]!==l||t[12]!==u?(d=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[l,u]}),t[11]=l,t[12]=u,t[13]=d):d=t[13];let f;t[14]!==d||t[15]!==o.memoryEnabled||t[16]!==o.memoryEnabledDesc?(f=(0,X.jsx)($,{label:o.memoryEnabled,description:o.memoryEnabledDesc,children:d}),t[14]=d,t[15]=o.memoryEnabled,t[16]=o.memoryEnabledDesc,t[17]=f):f=t[17];let p;t[18]!==i.memory||t[19]!==a?(p=e=>a({memory:{...i.memory,useEnhancedSystem:e.target.checked}}),t[18]=i.memory,t[19]=a,t[20]=p):p=t[20];let m;t[21]!==i.memory.useEnhancedSystem||t[22]!==p?(m=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:i.memory.useEnhancedSystem,onChange:p}),t[21]=i.memory.useEnhancedSystem,t[22]=p,t[23]=m):m=t[23];let h;t[24]===o.useEnhancedSystemOn?h=t[25]:(h=(0,X.jsx)(`span`,{children:o.useEnhancedSystemOn}),t[24]=o.useEnhancedSystemOn,t[25]=h);let g;t[26]!==m||t[27]!==h?(g=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[m,h]}),t[26]=m,t[27]=h,t[28]=g):g=t[28];let _;t[29]!==g||t[30]!==o.useEnhancedSystem||t[31]!==o.useEnhancedSystemDesc?(_=(0,X.jsx)($,{label:o.useEnhancedSystem,description:o.useEnhancedSystemDesc,children:g}),t[29]=g,t[30]=o.useEnhancedSystem,t[31]=o.useEnhancedSystemDesc,t[32]=_):_=t[32];let v;t[33]!==i.memory||t[34]!==a?(v=e=>a({memory:{...i.memory,userProfileEnabled:e.target.checked}}),t[33]=i.memory,t[34]=a,t[35]=v):v=t[35];let y;t[36]!==i.memory.userProfileEnabled||t[37]!==v?(y=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:i.memory.userProfileEnabled,onChange:v}),t[36]=i.memory.userProfileEnabled,t[37]=v,t[38]=y):y=t[38];let b;t[39]===o.userProfileEnabledOn?b=t[40]:(b=(0,X.jsx)(`span`,{children:o.userProfileEnabledOn}),t[39]=o.userProfileEnabledOn,t[40]=b);let x;t[41]!==y||t[42]!==b?(x=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[y,b]}),t[41]=y,t[42]=b,t[43]=x):x=t[43];let S;t[44]!==x||t[45]!==o.userProfileEnabled||t[46]!==o.userProfileEnabledDesc?(S=(0,X.jsx)($,{label:o.userProfileEnabled,description:o.userProfileEnabledDesc,children:x}),t[44]=x,t[45]=o.userProfileEnabled,t[46]=o.userProfileEnabledDesc,t[47]=S):S=t[47];let C=o.memoryProvider,w=o.memoryProviderDesc,T;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(T=Tn(),t[48]=T):T=t[48];let E;t[49]!==i.memory||t[50]!==a?(E=e=>a({memory:{...i.memory,provider:e.target.value}}),t[49]=i.memory,t[50]=a,t[51]=E):E=t[51];let D;t[52]===o.memoryProviderUnset?D=t[53]:(D=(0,X.jsx)(`option`,{value:``,children:o.memoryProviderUnset}),t[52]=o.memoryProviderUnset,t[53]=D);let O,k;t[54]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,X.jsx)(`option`,{value:`none`,children:`none`}),k=(0,X.jsx)(`option`,{value:`stub`,children:`stub`}),t[54]=O,t[55]=k):(O=t[54],k=t[55]);let A;t[56]!==i.memory.provider||t[57]!==E||t[58]!==D?(A=(0,X.jsxs)(`select`,{className:T,value:i.memory.provider,onChange:E,children:[D,O,k]}),t[56]=i.memory.provider,t[57]=E,t[58]=D,t[59]=A):A=t[59];let j;t[60]!==A||t[61]!==o.memoryProvider||t[62]!==o.memoryProviderDesc?(j=(0,X.jsx)($,{label:C,description:w,children:A}),t[60]=A,t[61]=o.memoryProvider,t[62]=o.memoryProviderDesc,t[63]=j):j=t[63];let M;t[64]!==_||t[65]!==S||t[66]!==j||t[67]!==f?(M=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[f,_,S,j]}),t[64]=_,t[65]=S,t[66]=j,t[67]=f,t[68]=M):M=t[68];let N=o.advancedOptionsShow,P=o.advancedOptionsHide,F=o.injectionFrequency,I=o.injectionFrequencyDesc,L;t[69]===Symbol.for(`react.memo_cache_sentinel`)?(L=Tn(),t[69]=L):L=t[69];let R;t[70]!==i.memory||t[71]!==a?(R=e=>a({memory:{...i.memory,injectionFrequency:e.target.value}}),t[70]=i.memory,t[71]=a,t[72]=R):R=t[72];let z;t[73]===o.injectionFrequencyUnset?z=t[74]:(z=(0,X.jsx)(`option`,{value:``,children:o.injectionFrequencyUnset}),t[73]=o.injectionFrequencyUnset,t[74]=z);let B;t[75]===o.injectionEveryTurn?B=t[76]:(B=(0,X.jsx)(`option`,{value:`every-turn`,children:o.injectionEveryTurn}),t[75]=o.injectionEveryTurn,t[76]=B);let ee;t[77]===o.injectionFirstTurn?ee=t[78]:(ee=(0,X.jsx)(`option`,{value:`first-turn`,children:o.injectionFirstTurn}),t[77]=o.injectionFirstTurn,t[78]=ee);let V;t[79]!==i.memory.injectionFrequency||t[80]!==R||t[81]!==z||t[82]!==B||t[83]!==ee?(V=(0,X.jsxs)(`select`,{className:L,value:i.memory.injectionFrequency,onChange:R,children:[z,B,ee]}),t[79]=i.memory.injectionFrequency,t[80]=R,t[81]=z,t[82]=B,t[83]=ee,t[84]=V):V=t[84];let U;t[85]!==V||t[86]!==o.injectionFrequency||t[87]!==o.injectionFrequencyDesc?(U=(0,X.jsx)($,{label:F,description:I,children:V}),t[85]=V,t[86]=o.injectionFrequency,t[87]=o.injectionFrequencyDesc,t[88]=U):U=t[88];let te=o.memoryCharLimit,W=o.memoryCharLimitDesc,G;t[89]===Symbol.for(`react.memo_cache_sentinel`)?(G=Z(),t[89]=G):G=t[89];let re=i.memory.memoryCharLimit??``,ie;t[90]!==i.memory||t[91]!==a?(ie=e=>{let t=e.target.value;a({memory:{...i.memory,memoryCharLimit:t===``?void 0:Number.parseInt(t,10)}})},t[90]=i.memory,t[91]=a,t[92]=ie):ie=t[92];let ae;t[93]!==re||t[94]!==ie?(ae=(0,X.jsx)(`input`,{type:`number`,className:G,min:1,value:re,placeholder:`—`,onChange:ie}),t[93]=re,t[94]=ie,t[95]=ae):ae=t[95];let oe;t[96]!==ae||t[97]!==o.memoryCharLimit||t[98]!==o.memoryCharLimitDesc?(oe=(0,X.jsx)($,{label:te,description:W,children:ae}),t[96]=ae,t[97]=o.memoryCharLimit,t[98]=o.memoryCharLimitDesc,t[99]=oe):oe=t[99];let se=o.userCharLimit,ce=o.userCharLimitDesc,le;t[100]===Symbol.for(`react.memo_cache_sentinel`)?(le=Z(),t[100]=le):le=t[100];let ue=i.memory.userCharLimit??``,de;t[101]!==i.memory||t[102]!==a?(de=e=>{let t=e.target.value;a({memory:{...i.memory,userCharLimit:t===``?void 0:Number.parseInt(t,10)}})},t[101]=i.memory,t[102]=a,t[103]=de):de=t[103];let fe;t[104]!==ue||t[105]!==de?(fe=(0,X.jsx)(`input`,{type:`number`,className:le,min:1,value:ue,placeholder:`—`,onChange:de}),t[104]=ue,t[105]=de,t[106]=fe):fe=t[106];let pe;t[107]!==fe||t[108]!==o.userCharLimit||t[109]!==o.userCharLimitDesc?(pe=(0,X.jsx)($,{label:se,description:ce,children:fe}),t[107]=fe,t[108]=o.userCharLimit,t[109]=o.userCharLimitDesc,t[110]=pe):pe=t[110];let me=o.contextCadence,he=o.contextCadenceDesc,ge;t[111]===Symbol.for(`react.memo_cache_sentinel`)?(ge=Z(),t[111]=ge):ge=t[111];let _e=i.memory.contextCadence??``,ve;t[112]!==i.memory||t[113]!==a?(ve=e=>{let t=e.target.value;a({memory:{...i.memory,contextCadence:t===``?void 0:Number.parseInt(t,10)}})},t[112]=i.memory,t[113]=a,t[114]=ve):ve=t[114];let be;t[115]!==_e||t[116]!==ve?(be=(0,X.jsx)(`input`,{type:`number`,className:ge,min:1,value:_e,placeholder:`—`,onChange:ve}),t[115]=_e,t[116]=ve,t[117]=be):be=t[117];let xe;t[118]!==be||t[119]!==o.contextCadence||t[120]!==o.contextCadenceDesc?(xe=(0,X.jsx)($,{label:me,description:he,children:be}),t[118]=be,t[119]=o.contextCadence,t[120]=o.contextCadenceDesc,t[121]=xe):xe=t[121];let Se=o.dialecticCadence,Ce=o.dialecticCadenceDesc,we;t[122]===Symbol.for(`react.memo_cache_sentinel`)?(we=Z(),t[122]=we):we=t[122];let Te=i.memory.dialecticCadence??``,Ee;t[123]!==i.memory||t[124]!==a?(Ee=e=>{let t=e.target.value;a({memory:{...i.memory,dialecticCadence:t===``?void 0:Number.parseInt(t,10)}})},t[123]=i.memory,t[124]=a,t[125]=Ee):Ee=t[125];let De;t[126]!==Te||t[127]!==Ee?(De=(0,X.jsx)(`input`,{type:`number`,className:we,min:1,value:Te,placeholder:`—`,onChange:Ee}),t[126]=Te,t[127]=Ee,t[128]=De):De=t[128];let Oe;t[129]!==De||t[130]!==o.dialecticCadence||t[131]!==o.dialecticCadenceDesc?(Oe=(0,X.jsx)($,{label:Se,description:Ce,children:De}),t[129]=De,t[130]=o.dialecticCadence,t[131]=o.dialecticCadenceDesc,t[132]=Oe):Oe=t[132];let ke;t[133]!==U||t[134]!==oe||t[135]!==pe||t[136]!==xe||t[137]!==Oe?(ke=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[U,oe,pe,xe,Oe]}),t[133]=U,t[134]=oe,t[135]=pe,t[136]=xe,t[137]=Oe,t[138]=ke):ke=t[138];let Ae;t[139]!==ke||t[140]!==o.advancedOptionsHide||t[141]!==o.advancedOptionsShow?(Ae=(0,X.jsx)(ss,{showLabel:N,hideLabel:P,children:ke}),t[139]=ke,t[140]=o.advancedOptionsHide,t[141]=o.advancedOptionsShow,t[142]=Ae):Ae=t[142];let je;t[143]!==M||t[144]!==Ae?(je=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[M,Ae]}),t[143]=M,t[144]=Ae,t[145]=je):je=t[145];let Me;t[146]!==s||t[147]!==je?(Me=(0,X.jsxs)(Jt,{children:[s,je]}),t[146]=s,t[147]=je,t[148]=Me):Me=t[148];let Ne;t[149]!==o.cardSessionSearchSubtitle||t[150]!==o.cardSessionSearchTitle?(Ne=(0,X.jsx)(qt,{icon:Ve,title:o.cardSessionSearchTitle,subtitle:o.cardSessionSearchSubtitle}),t[149]=o.cardSessionSearchSubtitle,t[150]=o.cardSessionSearchTitle,t[151]=Ne):Ne=t[151];let Pe;t[152]!==i.sessionSearch||t[153]!==a?(Pe=e=>a({sessionSearch:{...i.sessionSearch,summaryModel:e}}),t[152]=i.sessionSearch,t[153]=a,t[154]=Pe):Pe=t[154];let Fe;t[155]!==r.modelNoMatches||t[156]!==r.modelPlaceholder||t[157]!==r.modelSearchPlaceholder||t[158]!==i.sessionSearch.summaryModel||t[159]!==Pe?(Fe=(0,X.jsx)(ne,{value:i.sessionSearch.summaryModel,placeholder:r.modelPlaceholder,searchPlaceholder:r.modelSearchPlaceholder,noMatches:r.modelNoMatches,onChange:Pe}),t[155]=r.modelNoMatches,t[156]=r.modelPlaceholder,t[157]=r.modelSearchPlaceholder,t[158]=i.sessionSearch.summaryModel,t[159]=Pe,t[160]=Fe):Fe=t[160];let Ie;t[161]!==Fe||t[162]!==o.sessionSearchSummaryModel||t[163]!==o.sessionSearchSummaryModelDesc?(Ie=(0,X.jsx)($,{label:o.sessionSearchSummaryModel,description:o.sessionSearchSummaryModelDesc,children:Fe}),t[161]=Fe,t[162]=o.sessionSearchSummaryModel,t[163]=o.sessionSearchSummaryModelDesc,t[164]=Ie):Ie=t[164];let Le;t[165]!==Ne||t[166]!==Ie?(Le=(0,X.jsxs)(Jt,{children:[Ne,Ie]}),t[165]=Ne,t[166]=Ie,t[167]=Le):Le=t[167];let Re;t[168]!==o.cardReviewSubtitle||t[169]!==o.cardReviewTitle?(Re=(0,X.jsx)(qt,{icon:ye,title:o.cardReviewTitle,subtitle:o.cardReviewSubtitle}),t[168]=o.cardReviewSubtitle,t[169]=o.cardReviewTitle,t[170]=Re):Re=t[170];let ze;t[171]!==i.backgroundReview||t[172]!==a?(ze=e=>a({backgroundReview:{...i.backgroundReview,enabled:e.target.checked}}),t[171]=i.backgroundReview,t[172]=a,t[173]=ze):ze=t[173];let Be;t[174]!==i.backgroundReview.enabled||t[175]!==ze?(Be=(0,X.jsx)(`input`,{type:`checkbox`,className:`size-3.5 shrink-0 rounded border-edge`,checked:i.backgroundReview.enabled,onChange:ze}),t[174]=i.backgroundReview.enabled,t[175]=ze,t[176]=Be):Be=t[176];let He;t[177]===o.reviewEnabledOn?He=t[178]:(He=(0,X.jsx)(`span`,{children:o.reviewEnabledOn}),t[177]=o.reviewEnabledOn,t[178]=He);let Ue;t[179]!==Be||t[180]!==He?(Ue=(0,X.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[Be,He]}),t[179]=Be,t[180]=He,t[181]=Ue):Ue=t[181];let We;t[182]!==Ue||t[183]!==o.reviewEnabled||t[184]!==o.reviewEnabledDesc?(We=(0,X.jsx)($,{label:o.reviewEnabled,description:o.reviewEnabledDesc,children:Ue}),t[182]=Ue,t[183]=o.reviewEnabled,t[184]=o.reviewEnabledDesc,t[185]=We):We=t[185];let Ge=o.advancedOptionsShow,Ke=o.advancedOptionsHide,K=o.memoryNudgeInterval,qe=o.memoryNudgeIntervalDesc,Je;t[186]===Symbol.for(`react.memo_cache_sentinel`)?(Je=Z(),t[186]=Je):Je=t[186];let Ye;t[187]!==i.backgroundReview||t[188]!==a?(Ye=e=>a({backgroundReview:{...i.backgroundReview,memoryNudgeInterval:Number.parseInt(e.target.value,10)||0}}),t[187]=i.backgroundReview,t[188]=a,t[189]=Ye):Ye=t[189];let Xe;t[190]!==i.backgroundReview.memoryNudgeInterval||t[191]!==Ye?(Xe=(0,X.jsx)(`input`,{type:`number`,className:Je,min:0,value:i.backgroundReview.memoryNudgeInterval,onChange:Ye}),t[190]=i.backgroundReview.memoryNudgeInterval,t[191]=Ye,t[192]=Xe):Xe=t[192];let Ze;t[193]!==Xe||t[194]!==o.memoryNudgeInterval||t[195]!==o.memoryNudgeIntervalDesc?(Ze=(0,X.jsx)($,{label:K,description:qe,children:Xe}),t[193]=Xe,t[194]=o.memoryNudgeInterval,t[195]=o.memoryNudgeIntervalDesc,t[196]=Ze):Ze=t[196];let Qe=o.skillNudgeInterval,$e=o.skillNudgeIntervalDesc,et;t[197]===Symbol.for(`react.memo_cache_sentinel`)?(et=Z(),t[197]=et):et=t[197];let tt;t[198]!==i.backgroundReview||t[199]!==a?(tt=e=>a({backgroundReview:{...i.backgroundReview,skillNudgeInterval:Number.parseInt(e.target.value,10)||0}}),t[198]=i.backgroundReview,t[199]=a,t[200]=tt):tt=t[200];let nt;t[201]!==i.backgroundReview.skillNudgeInterval||t[202]!==tt?(nt=(0,X.jsx)(`input`,{type:`number`,className:et,min:0,value:i.backgroundReview.skillNudgeInterval,onChange:tt}),t[201]=i.backgroundReview.skillNudgeInterval,t[202]=tt,t[203]=nt):nt=t[203];let rt;t[204]!==nt||t[205]!==o.skillNudgeInterval||t[206]!==o.skillNudgeIntervalDesc?(rt=(0,X.jsx)($,{label:Qe,description:$e,children:nt}),t[204]=nt,t[205]=o.skillNudgeInterval,t[206]=o.skillNudgeIntervalDesc,t[207]=rt):rt=t[207];let it=o.reviewMaxToolRounds,at=o.reviewMaxToolRoundsDesc,ot;t[208]===Symbol.for(`react.memo_cache_sentinel`)?(ot=Z(),t[208]=ot):ot=t[208];let st;t[209]!==i.backgroundReview||t[210]!==a?(st=e=>a({backgroundReview:{...i.backgroundReview,maxToolRounds:Number.parseInt(e.target.value,10)||8}}),t[209]=i.backgroundReview,t[210]=a,t[211]=st):st=t[211];let ct;t[212]!==i.backgroundReview.maxToolRounds||t[213]!==st?(ct=(0,X.jsx)(`input`,{type:`number`,className:ot,min:1,max:32,value:i.backgroundReview.maxToolRounds,onChange:st}),t[212]=i.backgroundReview.maxToolRounds,t[213]=st,t[214]=ct):ct=t[214];let lt;t[215]!==ct||t[216]!==o.reviewMaxToolRounds||t[217]!==o.reviewMaxToolRoundsDesc?(lt=(0,X.jsx)($,{label:it,description:at,children:ct}),t[215]=ct,t[216]=o.reviewMaxToolRounds,t[217]=o.reviewMaxToolRoundsDesc,t[218]=lt):lt=t[218];let ut=o.reviewMaxHistoryMessages,dt=o.reviewMaxHistoryMessagesDesc,ft;t[219]===Symbol.for(`react.memo_cache_sentinel`)?(ft=Z(),t[219]=ft):ft=t[219];let pt;t[220]!==i.backgroundReview||t[221]!==a?(pt=e=>a({backgroundReview:{...i.backgroundReview,maxHistoryMessages:Number.parseInt(e.target.value,10)||80}}),t[220]=i.backgroundReview,t[221]=a,t[222]=pt):pt=t[222];let mt;t[223]!==i.backgroundReview.maxHistoryMessages||t[224]!==pt?(mt=(0,X.jsx)(`input`,{type:`number`,className:ft,min:10,max:200,value:i.backgroundReview.maxHistoryMessages,onChange:pt}),t[223]=i.backgroundReview.maxHistoryMessages,t[224]=pt,t[225]=mt):mt=t[225];let ht;t[226]!==mt||t[227]!==o.reviewMaxHistoryMessages||t[228]!==o.reviewMaxHistoryMessagesDesc?(ht=(0,X.jsx)($,{label:ut,description:dt,children:mt}),t[226]=mt,t[227]=o.reviewMaxHistoryMessages,t[228]=o.reviewMaxHistoryMessagesDesc,t[229]=ht):ht=t[229];let gt=o.reviewMaxDurationMs,q=o.reviewMaxDurationMsDesc,_t;t[230]===Symbol.for(`react.memo_cache_sentinel`)?(_t=Z(),t[230]=_t):_t=t[230];let vt;t[231]===i.backgroundReview.maxDurationMs?vt=t[232]:(vt=Math.round((i.backgroundReview.maxDurationMs??12e4)/1e3),t[231]=i.backgroundReview.maxDurationMs,t[232]=vt);let yt;t[233]!==i.backgroundReview||t[234]!==a?(yt=e=>a({backgroundReview:{...i.backgroundReview,maxDurationMs:(Number.parseInt(e.target.value,10)||120)*1e3}}),t[233]=i.backgroundReview,t[234]=a,t[235]=yt):yt=t[235];let bt;t[236]!==vt||t[237]!==yt?(bt=(0,X.jsx)(`input`,{type:`number`,className:_t,min:30,max:600,step:1,value:vt,onChange:yt}),t[236]=vt,t[237]=yt,t[238]=bt):bt=t[238];let xt;t[239]!==bt||t[240]!==o.reviewMaxDurationMs||t[241]!==o.reviewMaxDurationMsDesc?(xt=(0,X.jsx)($,{label:gt,description:q,children:bt}),t[239]=bt,t[240]=o.reviewMaxDurationMs,t[241]=o.reviewMaxDurationMsDesc,t[242]=xt):xt=t[242];let St;t[243]!==ht||t[244]!==xt||t[245]!==Ze||t[246]!==rt||t[247]!==lt?(St=(0,X.jsxs)(`div`,{className:`grid gap-5 sm:grid-cols-2`,children:[Ze,rt,lt,ht,xt]}),t[243]=ht,t[244]=xt,t[245]=Ze,t[246]=rt,t[247]=lt,t[248]=St):St=t[248];let Ct;t[249]!==St||t[250]!==o.advancedOptionsHide||t[251]!==o.advancedOptionsShow?(Ct=(0,X.jsx)(ss,{showLabel:Ge,hideLabel:Ke,children:St}),t[249]=St,t[250]=o.advancedOptionsHide,t[251]=o.advancedOptionsShow,t[252]=Ct):Ct=t[252];let wt;t[253]!==Ct||t[254]!==We?(wt=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[We,Ct]}),t[253]=Ct,t[254]=We,t[255]=wt):wt=t[255];let Tt;t[256]!==wt||t[257]!==Re?(Tt=(0,X.jsxs)(Jt,{children:[Re,wt]}),t[256]=wt,t[257]=Re,t[258]=Tt):Tt=t[258];let Et;return t[259]!==Tt||t[260]!==Me||t[261]!==Le?(Et=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[Me,Le,Tt]}),t[259]=Tt,t[260]=Me,t[261]=Le,t[262]=Et):Et=t[262],Et}function ms(e){return(e.name||e.directoryId).trim()}function hs(e,t){let n=[];for(let r of t)e.has(r)&&n.push(r);let r=[...e].filter(e=>!t.includes(e)).sort();return[...n,...r]}function gs(e){let t=(0,Y.c)(70),{a:n,form:r,update:o}=e,s=n.advanced,c=i(xs),l;t[0]===c?l=t[1]:(l=a(c),t[0]=c,t[1]=l);let d=l.agentsSettings,f=!!u(bs),{catalogForPick:p,skillsCatalogLoading:m}=Pi(!0,f),h;t[2]===p?h=t[3]:(h=p.map(ms),t[2]=p,t[3]=h);let g=h,_=r.skillsAllowlist.length>0,v;t[4]===r.skillsAllowlist?v=t[5]:(v=new Set(r.skillsAllowlist.flatMap(ys)),t[4]=r.skillsAllowlist,t[5]=v);let y=v,b;if(t[6]!==g||t[7]!==r.skillsAllowlist){let e;t[9]===g?e=t[10]:(e=e=>e.trim()&&!g.includes(e.trim()),t[9]=g,t[10]=e),b=r.skillsAllowlist.filter(e),t[6]=g,t[7]=r.skillsAllowlist,t[8]=b}else b=t[8];let x=b,S;t[11]===x?S=t[12]:(S=x.map(vs),t[11]=x,t[12]=S);let C=S,w;t[13]!==p||t[14]!==C?(w=[...C,...p],t[13]=p,t[14]=C,t[15]=w):w=t[15];let T=w,E;t[16]===o?E=t[17]:(E=()=>{o({skillsAllowlist:[]})},t[16]=o,t[17]=E);let D=E,O;t[18]!==g||t[19]!==o?(O=()=>{o({skillsAllowlist:[...g]})},t[18]=g,t[19]=o,t[20]=O):O=t[20];let k=O,A;t[21]!==g||t[22]!==r.skillsAllowlist||t[23]!==o?(A=(e,t)=>{let n=new Set(r.skillsAllowlist.flatMap(_s));if(t?n.add(e):n.delete(e),n.size===0){o({skillsAllowlist:[]});return}o({skillsAllowlist:hs(n,g)})},t[21]=g,t[22]=r.skillsAllowlist,t[23]=o,t[24]=A):A=t[24];let j=A,M;t[25]!==s.cardSkillsSubtitle||t[26]!==s.cardSkillsTitle?(M=(0,X.jsx)(qt,{icon:re,title:s.cardSkillsTitle,subtitle:s.cardSkillsSubtitle}),t[25]=s.cardSkillsSubtitle,t[26]=s.cardSkillsTitle,t[27]=M):M=t[27];let N=s.skillsAllowlist,P=s.skillsAllowlistDesc,F;t[28]!==D||t[29]!==s.skillsAllowlistModeAll?(F=(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:En,onClick:D,children:s.skillsAllowlistModeAll}),t[28]=D,t[29]=s.skillsAllowlistModeAll,t[30]=F):F=t[30];let I=!_&&g.length===0,L;t[31]!==_||t[32]!==k?(L=()=>{_||k()},t[31]=_,t[32]=k,t[33]=L):L=t[33];let R;t[34]!==I||t[35]!==L||t[36]!==s.skillsAllowlistModeRestrict?(R=(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:En,disabled:I,onClick:L,children:s.skillsAllowlistModeRestrict}),t[34]=I,t[35]=L,t[36]=s.skillsAllowlistModeRestrict,t[37]=R):R=t[37];let z;t[38]!==F||t[39]!==R?(z=(0,X.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[F,R]}),t[38]=F,t[39]=R,t[40]=z):z=t[40];let B;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(B=Le(`skills`),t[41]=B):B=t[41];let ee;t[42]===d.skillsLibraryLink?ee=t[43]:(ee=(0,X.jsx)(Ue,{to:B,className:`shrink-0 text-xs font-medium text-accent-fg hover:underline`,children:d.skillsLibraryLink}),t[42]=d.skillsLibraryLink,t[43]=ee);let V;t[44]!==z||t[45]!==ee?(V=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[z,ee]}),t[44]=z,t[45]=ee,t[46]=V):V=t[46];let H;t[47]!==n.needToken||t[48]!==d.skillsCatalogLoading||t[49]!==d.skillsEmptyCatalog||t[50]!==d.skillsNoDescription||t[51]!==y||t[52]!==g||t[53]!==f||t[54]!==_||t[55]!==T||t[56]!==m||t[57]!==j||t[58]!==s.skillsAllowlistNotInCatalog?(H=f?m?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:d.skillsCatalogLoading}):T.length===0?(0,X.jsx)(`p`,{className:`text-sm text-fg-muted`,children:d.skillsEmptyCatalog}):(0,X.jsx)(`div`,{className:J(`max-h-[min(50vh,22rem)] overflow-y-auto overscroll-contain pr-0.5`,!_&&`opacity-50`),children:(0,X.jsx)(`ul`,{className:`flex flex-col gap-2.5 text-sm`,children:T.flatMap(e=>{let t=ms(e);if(!t)return[];let n=_&&y.has(t),r=typeof e.description==`string`?e.description.trim():``,i=r||d.skillsNoDescription,a=!g.includes(t);return[(0,X.jsx)(`li`,{className:`h-16 shrink-0 overflow-hidden rounded-xl border border-edge-subtle bg-surface-panel/60 px-3 dark:border-edge-subtle`,children:(0,X.jsxs)(`label`,{className:`flex h-full cursor-pointer items-center gap-3 text-sm`,children:[(0,X.jsx)(`input`,{type:`checkbox`,className:`shrink-0 rounded border-edge`,checked:n,disabled:!_,onChange:()=>j(t,!n),"aria-label":t}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1 overflow-hidden`,children:[(0,X.jsxs)(`div`,{className:`truncate font-mono text-xs font-medium text-fg`,title:t,children:[t,a?(0,X.jsxs)(`span`,{className:`ml-1.5 font-sans text-[10px] font-normal text-fg-muted`,children:[`(`,s.skillsAllowlistNotInCatalog,`)`]}):null]}),(0,X.jsx)(`p`,{className:J(`mt-0.5 truncate text-xs leading-tight text-fg-muted`,!r&&`italic text-fg-subtle`),title:i,children:i})]})]})},t)]})})}):(0,X.jsx)(`p`,{className:`text-xs text-fg-muted`,children:n.needToken}),t[47]=n.needToken,t[48]=d.skillsCatalogLoading,t[49]=d.skillsEmptyCatalog,t[50]=d.skillsNoDescription,t[51]=y,t[52]=g,t[53]=f,t[54]=_,t[55]=T,t[56]=m,t[57]=j,t[58]=s.skillsAllowlistNotInCatalog,t[59]=H):H=t[59];let U;t[60]!==V||t[61]!==H?(U=(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[V,H]}),t[60]=V,t[61]=H,t[62]=U):U=t[62];let te;t[63]!==U||t[64]!==s.skillsAllowlist||t[65]!==s.skillsAllowlistDesc?(te=(0,X.jsx)($,{label:N,description:P,children:U}),t[63]=U,t[64]=s.skillsAllowlist,t[65]=s.skillsAllowlistDesc,t[66]=te):te=t[66];let W;return t[67]!==te||t[68]!==M?(W=(0,X.jsx)(`div`,{className:`flex flex-col gap-5`,children:(0,X.jsxs)(Jt,{children:[M,te]})}),t[67]=te,t[68]=M,t[69]=W):W=t[69],W}function _s(e){let t=e.trim();return t?[t]:[]}function vs(e){return{name:e.trim(),directoryId:e.trim()}}function ys(e){let t=e.trim();return t?[t]:[]}function bs(e){return e.token}function xs(e){return e.language}function Ss(e){let t=(0,Y.c)(17),{a:n,form:r,update:i}=e,a=n.advanced,o;t[0]!==a.cardSystemPromptSubtitle||t[1]!==a.cardSystemPromptTitle?(o=(0,X.jsx)(qt,{icon:Re,title:a.cardSystemPromptTitle,subtitle:a.cardSystemPromptSubtitle}),t[0]=a.cardSystemPromptSubtitle,t[1]=a.cardSystemPromptTitle,t[2]=o):o=t[2];let s=a.systemPromptOverride,c=a.systemPromptOverrideDesc,l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=J(Z(),`min-h-[140px] resize-y font-mono text-xs`),t[3]=l):l=t[3];let u;t[4]===i?u=t[5]:(u=e=>i({systemPromptOverride:e.target.value}),t[4]=i,t[5]=u);let d;t[6]!==r.systemPromptOverride||t[7]!==u||t[8]!==a.systemPromptPlaceholder?(d=(0,X.jsx)(`textarea`,{className:l,value:r.systemPromptOverride,placeholder:a.systemPromptPlaceholder,onChange:u}),t[6]=r.systemPromptOverride,t[7]=u,t[8]=a.systemPromptPlaceholder,t[9]=d):d=t[9];let f;t[10]!==d||t[11]!==a.systemPromptOverride||t[12]!==a.systemPromptOverrideDesc?(f=(0,X.jsx)($,{label:s,description:c,children:d}),t[10]=d,t[11]=a.systemPromptOverride,t[12]=a.systemPromptOverrideDesc,t[13]=f):f=t[13];let p;return t[14]!==o||t[15]!==f?(p=(0,X.jsx)(`div`,{className:`flex flex-col gap-5`,children:(0,X.jsxs)(Jt,{children:[o,f]})}),t[14]=o,t[15]=f,t[16]=p):p=t[16],p}function Cs(e){let t=(0,Y.c)(39),{a:n,chat:r,form:i,update:a}=e,o;t[0]===i.workspace?o=t[1]:(o=i.workspace.trim(),t[0]=i.workspace,t[1]=o);let s=o===wi,c;t[2]!==n.cardWorkspaceSubtitle||t[3]!==n.cardWorkspaceTitle?(c=(0,X.jsx)(qt,{icon:ct,title:n.cardWorkspaceTitle,subtitle:n.cardWorkspaceSubtitle}),t[2]=n.cardWorkspaceSubtitle,t[3]=n.cardWorkspaceTitle,t[4]=c):c=t[4];let l=n.label.workspace,u=n.desc.workspace,d=i.workspace,f;t[5]===a?f=t[6]:(f=e=>a({workspace:e}),t[5]=a,t[6]=f);let p=r.workingDirectory,m=r.workingDirectory.notSet,h;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h=Z(),t[7]=h):h=t[7];let g;t[8]===a?g=t[9]:(g=()=>a({workspace:wi}),t[8]=a,t[9]=g);let _;t[10]!==n.setDefaultWorkspace||t[11]!==s||t[12]!==g?(_=(0,X.jsx)(q,{type:`button`,variant:`secondary`,className:En,disabled:s,title:wi,onClick:g,children:n.setDefaultWorkspace}),t[10]=n.setDefaultWorkspace,t[11]=s,t[12]=g,t[13]=_):_=t[13];let v;t[14]!==r.workingDirectory||t[15]!==i.workspace||t[16]!==_||t[17]!==f?(v=(0,X.jsx)(In,{value:d,onChange:f,wd:p,placeholder:m,inputClassName:h,trailing:_}),t[14]=r.workingDirectory,t[15]=i.workspace,t[16]=_,t[17]=f,t[18]=v):v=t[18];let y;t[19]!==n.desc.workspace||t[20]!==n.label.workspace||t[21]!==v?(y=(0,X.jsx)($,{label:l,description:u,children:v}),t[19]=n.desc.workspace,t[20]=n.label.workspace,t[21]=v,t[22]=y):y=t[22];let b=n.label.mediaMaxMb,x=n.desc.mediaMaxMb,S;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(S=Z(),t[23]=S):S=t[23];let C=i.mediaMaxMb??``,w;t[24]===a?w=t[25]:(w=e=>{let t=e.target.value;a({mediaMaxMb:t===``?void 0:Number(t)})},t[24]=a,t[25]=w);let T;t[26]!==C||t[27]!==w?(T=(0,X.jsx)(`input`,{type:`number`,min:1,step:1,className:S,value:C,placeholder:`20`,onChange:w}),t[26]=C,t[27]=w,t[28]=T):T=t[28];let E;t[29]!==n.desc.mediaMaxMb||t[30]!==n.label.mediaMaxMb||t[31]!==T?(E=(0,X.jsx)(rn,{children:(0,X.jsx)($,{label:b,description:x,children:T})}),t[29]=n.desc.mediaMaxMb,t[30]=n.label.mediaMaxMb,t[31]=T,t[32]=E):E=t[32];let D;t[33]!==y||t[34]!==E?(D=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[y,E]}),t[33]=y,t[34]=E,t[35]=D):D=t[35];let O;return t[36]!==c||t[37]!==D?(O=(0,X.jsx)(`div`,{className:`flex flex-col gap-5`,children:(0,X.jsxs)(Jt,{children:[c,D]})}),t[36]=c,t[37]=D,t[38]=O):O=t[38],O}function ws(e,t){return e.defaultsTabs[t]}function Ts(e,t){switch(t){case`model-strategy`:return e.routeIntro.modelStrategy;case`generation`:return e.routeIntro.generation;case`workspace`:return e.routeIntro.workspace;case`runtime`:return e.routeIntro.runtime;case`context`:return e.routeIntro.context;case`memory`:return e.routeIntro.memory;case`tools`:return e.routeIntro.tools;case`skills`:return e.routeIntro.skills;case`system-prompt`:return e.routeIntro.systemPrompt}}function Es(e){let t=(0,Y.c)(28),{tab:n,pp:r,hasToken:i}=e;switch(n){case`model-strategy`:{let e;return t[0]===r?e=t[1]:(e=(0,X.jsx)(Zo,{...r}),t[0]=r,t[1]=e),e}case`generation`:{let e;return t[2]===r?e=t[3]:(e=(0,X.jsx)(ds,{...r}),t[2]=r,t[3]=e),e}case`workspace`:{let e;return t[4]===r?e=t[5]:(e=(0,X.jsx)(Cs,{...r}),t[4]=r,t[5]=e),e}case`runtime`:{let e;return t[6]===r?e=t[7]:(e=(0,X.jsx)(fs,{...r}),t[6]=r,t[7]=e),e}case`context`:{let e;return t[8]===r?e=t[9]:(e=(0,X.jsx)(cs,{...r}),t[8]=r,t[9]=e),e}case`memory`:{let e;return t[10]===r?e=t[11]:(e=(0,X.jsx)(ps,{...r}),t[10]=r,t[11]=e),e}case`tools`:{let e;t[12]===r?e=t[13]:(e=(0,X.jsx)(os,{...r}),t[12]=r,t[13]=e);let n;t[14]===r?n=t[15]:(n=(0,X.jsx)(rn,{children:(0,X.jsx)(ls,{...r})}),t[14]=r,t[15]=n);let i;return t[16]!==e||t[17]!==n?(i=(0,X.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[e,n]}),t[16]=e,t[17]=n,t[18]=i):i=t[18],i}case`skills`:{let e;t[19]===i?e=t[20]:(e=(0,X.jsx)(rn,{children:(0,X.jsx)(Ko,{hasToken:i})}),t[19]=i,t[20]=e);let n;t[21]===r?n=t[22]:(n=(0,X.jsx)(gs,{...r}),t[21]=r,t[22]=n);let a;return t[23]!==e||t[24]!==n?(a=(0,X.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[e,n]}),t[23]=e,t[24]=n,t[25]=a):a=t[25],a}case`system-prompt`:{let e;return t[26]===r?e=t[27]:(e=(0,X.jsx)(Ss,{...r}),t[26]=r,t[27]=e),e}}}function Ds(){let e=a(i(e=>e.language)),t=e.agentSettings,n=e.chat,r=Ke(),o=(0,Q.useRef)(r.state);o.current=r.state;let[s,c]=rt(),l=Mt(e=>e.mode),u=je(s.get(`tab`)),d=No(t),f=(0,Q.useMemo)(()=>qi(x,l),[l]),p=(0,Q.useMemo)(()=>d.form?{form:d.form,update:d.update,a:t,chat:n}:null,[d.form,d.update,t,n]),m=(0,Q.useCallback)(e=>{c(t=>{let n=new URLSearchParams(t);return e===`model-strategy`?n.delete(`tab`):n.set(`tab`,e),n},{replace:!0,state:o.current})},[c]);ta(u,m);let h=Ts(t,u);return(0,X.jsx)(Ao,{sectionId:`agent-defaults`,intro:``,vm:d,tabbed:!0,children:(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,role:`tablist`,"aria-label":t.defaultsTabsAria,onKeyDown:e=>{if(e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)return;e.preventDefault();let t=f.indexOf(u);if(t<0)return;let n=f[(t+(e.key===`ArrowRight`?1:-1)+f.length)%f.length];m(n)},children:[(0,X.jsx)(`div`,{className:`-mx-1 flex gap-1 overflow-x-auto px-1 pb-1`,children:f.map(e=>{let n=e===u;return(0,X.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":n,id:`agent-defaults-tab-${e}`,"aria-controls":`agent-defaults-panel-${e}`,className:J(`shrink-0 rounded-lg px-3 py-2 text-sm font-medium transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,jt.press,n?`bg-accent-soft text-accent-fg`:`text-fg-muted hover:bg-surface-hover hover:text-fg`),onClick:()=>m(e),children:ws(t,e)},e)})}),(0,X.jsx)(`p`,{className:`text-sm leading-relaxed text-fg-muted`,children:h}),(0,X.jsx)(`div`,{role:`tabpanel`,id:`agent-defaults-panel-${u}`,"aria-labelledby":`agent-defaults-tab-${u}`,className:`min-w-0`,children:p?(0,X.jsx)(Es,{tab:u,pp:p,hasToken:d.hasToken}):null})]})})}export{Hi as AgentsSettingsPanel,io as a,$ as c,pi as d,di as f,yn as h,no as i,ra as l,jr as m,Fo as n,Ha as o,mi as p,qa as r,to as s,Ds as t,Yi as u};
|