@wujie-shell/core 1.0.4 → 1.0.5
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/bin/wujie-shell.mjs +1 -1
- package/dist/src/agents/bundled-agent-skills.mjs +1 -1
- package/dist/src/agents/bundled-agents.mjs +1 -1
- package/dist/src/agents/runtime-config.mjs +1 -1
- package/dist/src/chat/media-archive.mjs +1 -1
- package/dist/src/chat/queue.mjs +1 -1
- package/dist/src/common/cron-session-key.mjs +1 -1
- package/dist/src/common/diagnostics.mjs +1 -1
- package/dist/src/common/logging.mjs +1 -1
- package/dist/src/common/runtime-logger.mjs +1 -1
- package/dist/src/common/sqlite-paths.mjs +1 -1
- package/dist/src/common/user-events.mjs +1 -1
- package/dist/src/common/utils.mjs +1 -1
- package/dist/src/config/controller.mjs +1 -1
- package/dist/src/connectors/config-utils.mjs +1 -1
- package/dist/src/connectors/constants.mjs +1 -1
- package/dist/src/connectors/controller.mjs +1 -1
- package/dist/src/connectors/kdocs-cli.mjs +1 -1
- package/dist/src/connectors/lark-cli.mjs +1 -1
- package/dist/src/electron/main.mjs +1 -1
- package/dist/src/electron/preload.mjs +1 -1
- package/dist/src/electron/protocol-url-state.mjs +1 -1
- package/dist/src/events/domain-event-journal.mjs +1 -1
- package/dist/src/files/generated-files-store.mjs +1 -1
- package/dist/src/files/handlers.mjs +1 -1
- package/dist/src/gateway/chat-delta.mjs +1 -1
- package/dist/src/gateway/controller.mjs +1 -1
- package/dist/src/gateway/request-id-title-events.mjs +1 -1
- package/dist/src/gateway/ws-client.mjs +1 -1
- package/dist/src/index.mjs +1 -1
- package/dist/src/log-reporting/handlers.mjs +1 -1
- package/dist/src/log-reporting/report-logs.mjs +1 -1
- package/dist/src/models/handlers.mjs +1 -1
- package/dist/src/preferences/store.mjs +1 -1
- package/dist/src/request-id/handlers.mjs +1 -1
- package/dist/src/request-id/runtime-bridge.mjs +1 -1
- package/dist/src/request-id/session-store.mjs +1 -1
- package/dist/src/request-id/title.mjs +1 -1
- package/dist/src/runtime/cron-missed-run-policy.mjs +1 -1
- package/dist/src/runtime/index.mjs +1 -1
- package/dist/src/runtime/patch-channel-plugin-runtime.mjs +1 -1
- package/dist/src/runtime/patch-chat-attachment-base64.mjs +1 -0
- package/dist/src/runtime/patch-chat-history-mixed-tool-content.mjs +1 -1
- package/dist/src/runtime/patch-provider-request-id-header.mjs +1 -1
- package/dist/src/runtime/patch-qqbot-outbound-session-route.mjs +1 -1
- package/dist/src/runtime/patch-request-id-title-runtime.mjs +1 -1
- package/dist/src/runtime/patch-session-store-sqlite.mjs +1 -1
- package/dist/src/runtime/patch-weixin-outbound-session-route.mjs +1 -1
- package/dist/src/runtime/plugin-sync.mjs +1 -1
- package/dist/src/sessions/agent-sessions-map-store.mjs +1 -1
- package/dist/src/sessions/runtime-bridge.mjs +1 -1
- package/dist/src/sessions/session-data-service.mjs +1 -1
- package/dist/src/sessions/session-runtime-state-service.mjs +1 -1
- package/dist/src/sessions/session-runtime-state.mjs +1 -1
- package/dist/src/sessions/session-sqlite-store.mjs +1 -1
- package/dist/src/skills/import.mjs +1 -1
- package/dist/src/skills/market.mjs +1 -1
- package/dist/src/terminal/manager.mjs +1 -1
- package/dist/src/updates/controller.mjs +1 -1
- package/dist/src/updates/loader.mjs +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x5c8109=_0x44a9;(function(_0xe9f330,_0x4b4e25){const _0x5e61a8=_0x44a9,_0x34fce9=_0xe9f330();while(!![]){try{const _0x4023c5=parseInt(_0x5e61a8(0x4be))/0x1+-parseInt(_0x5e61a8(0x27f))/0x2+-parseInt(_0x5e61a8(0x11c))/0x3*(-parseInt(_0x5e61a8(0x207))/0x4)+parseInt(_0x5e61a8(0x2dd))/0x5*(-parseInt(_0x5e61a8(0x334))/0x6)+parseInt(_0x5e61a8(0x4f0))/0x7+-parseInt(_0x5e61a8(0x1a8))/0x8+parseInt(_0x5e61a8(0x4b5))/0x9*(parseInt(_0x5e61a8(0x46f))/0xa);if(_0x4023c5===_0x4b4e25)break;else _0x34fce9['push'](_0x34fce9['shift']());}catch(_0x226407){_0x34fce9['push'](_0x34fce9['shift']());}}}(_0x1b82,0x9fa95));import _0x2b4286 from'electron';import{fileURLToPath,pathToFileURL}from'node:url';import{dirname,join,resolve,sep}from'node:path';import{createReadStream,existsSync,statSync}from'node:fs';import{readFile,readdir,stat,writeFile}from'node:fs/promises';import{spawn}from'node:child_process';import{Readable}from'node:stream';import{loadShellConfig}from'@wujie-shell/config';import{formatLogLine}from'@wujie-shell/logger';import{createConfigController}from'../config/controller.mjs';import{createGatewayController}from'../gateway/controller.mjs';import{deleteManagedSkill,importSkillZip,updateManagedSkillConfig}from'../skills/import.mjs';function _0x44a9(_0x4e8e0e,_0x47b790){_0x4e8e0e=_0x4e8e0e-0x112;const _0x1b82f8=_0x1b82();let _0x44a9ae=_0x1b82f8[_0x4e8e0e];return _0x44a9ae;}import{deleteMarketSkillRegistryEntry,importMarketSkillZip}from'../skills/market.mjs';import{createAgentSessionsMapStore}from'../sessions/agent-sessions-map-store.mjs';import{createSessionDataService}from'../sessions/session-data-service.mjs';import{createSessionSqliteStore}from'../sessions/session-sqlite-store.mjs';import{createTerminalManager}from'../terminal/manager.mjs';import{createShellLogger,exportLogsArchive,getShellLoggerLevel,setShellLoggerLevel,summarizeError,summarizePayload,summarizeText,toHomePath}from'../common/logging.mjs';import{createDiagnosticsWriter,diagnosticEventFromError}from'../common/diagnostics.mjs';function _0x1b82(){const _0x5895bb=['tabs-com','lingUpda','Level','\x20log','range','writeSha','-life-cy','figs','harset=u','now','saveFeis','gMainFra','versions','6DcFfZz','nel','file\x20wri','ith-sess','POST','audio/wa','vate','electron','chat:abo','video/qu','g_conten','n-direct','d\x20comple','bin','lawChann','nt]',':events','protocol','://','ask-user','\x20shortcu','headers',':save-ne','stomMode','preload.','-refresh','slice','index.ht','nConfig','font/wof','EventCou','enClawCh','files:se','senderFr','ngUrl','main\x20win','lue','hell:ipc','isFile','ndows','startKdo','logs','\x20failed','unknown','entModel','ory\x20open','open-url','charset=','ile\x20not\x20','update_g','d-local','\x20main\x20bo','annelCon','subscrib','dow\x20load','tory','lawPlugi','ges','cron','devtools','ontent-t','isInstal','t-stream','start','irectory','setPendi','s-maximi','prod','\x20window\x20','platform','succeede','feishu','-info','eted','ile\x20comp','ions-lis','ot\x20start','startsWi','window:t','font/otf','resolveS','Suppress','text/pla','.woff2','open\x20ext','ocess-go','ent','ndow','ead','s:upsert','aries','isDefaul','ailed','ntime','ipc_requ','info','talkDocC','attachGa','tate','activate','ectSessi','setSetti','image/jp','ssion:\x20','nges','before\x20i','enClawSk','bytes\x20','essed','sessions','split','sourceSe','stop','oggle-ma','ion','Exceptio','ng;\x20recr','creating','set=utf-','te:get-s','\x20not\x20con','meta','quitAndI',':\x20stoppi','\x20is\x20requ','canceled','togglefu','folder','nfig','queueUrl','sessionK','getKdocs','onfig','.otf','navigati','-status','upsert','HEAD','ionEvent','iled\x20to\x20','board:wr','rams','quit','.mov','cCliConn','main-fra','bot-chan','ion/java','nnectSes','wujie-sh','ssion','Not\x20foun','darwin','ate\x20inst','closeToT',':cancel','get','.css','BodyRead','ocs','warn','g+xml','shell-ru','controll','sses','audio/fl','method','app:upda','limit','getFocus','clawspac','agents','sharedCo','binary\x20f','cwd','aseMailC','ion/vnd.','Ready','getRecen','nabled','meState','logsDir','rControl','\x20a\x20provi','ndlers','saveKdoc','getPath','e:open-d','syncRunt','parseInt','ls:set-e','.eot','.jpeg','setAsDef','recordBo','product-','plugin\x20e','dCheck','restart','ure','ort','y\x20stoppe','tup:set',':snapsho','Observed','i-window','max','uit','files','e:shared','ipc','t-messag','\x20client\x20','ntext','getProce','hell]\x20fa',':close','omplete\x20','eating','entries','lose','tf-8','toString','text','customNa','ngs','uest-age','abort','nstance','ired','ontents','ory-info','model\x20ht','openclaw','nfo','id\x20title','ng\x20gatew','[wujie-s','ationSta','.png','ackgroun','input','relaunch','isLoadin','l\x20reques','est\x20comp','saveQqMa','gin','ionEntry','lConnect','omModel','.md','set','s:delete','.gif','dingUrl','content','ap:get','roductDa','ded','top_done','agents-u','app:star','.html',';\x20charse','setSelfO','catch','keyDown','les:reve','elete','focus','register','State','sPrivile','deleteFi','_body_re','generate','workspac','ion/json','rocess-g','openPath','lastInde','imePlugi','searchPa','-questio','oken','app:prot','icktime','n\x20not\x20fo','pdate','andledIn','emoji','\x20to\x20load','tIdTitle',':summary','\x20updater','avatar','enClawCo','.aac','sync-bun','isFinite','channelI','d\x20failed','finally','Invalid\x20','igate','ector\x20se','models:c','dled-res','boot\x20ele','key','-mail','ists','agent\x20id','nnel','2141610hVbQTH','video/x-','size','sConnect','product\x20','message','plugin\x20c','shuRegis','\x20excepti','models','zed','setOpenC','handle','ections','ate','image/sv','\x20configu','dRejecti','ctory','\x20url\x20flu','copy','quired','ged','sender','then','em:open-','keepUnti','wechat','ximize','-context','isMinimi','hostname','changeKi','targetDi','ed:\x20','onnector','nstance\x20','temperat','Entry','models:s','ot\x20faile','ies','isIntege','listImCh','-shortcu','roductCo','ProductR','models\x20c','nnelEnab','ModelId','lClient','\x20complet','trim','t:\x20','unmaximi','utf8','.flag','manifest','runtime\x20','ls:list','help','nectorCo','cancelFe','\x20failed:','agent_id','edWindow','win32','selectAl','app:file','temp','9FOCHWa','arch','maximize','provider','.js','projectR','red;\x20set','registra','atus','53750vWRJVs','cutoffTe','tus','tabs:ref','.webm','cron:upd','resolveC','csCliCon','acts','untimeHa','multiSel','no\x20defau','oad','isArray',':run-onc','reverse','ted-stat','-session','markConf','startWec','window','g\x20native','openDevT','ell-cli.','and-inst','Bearer\x20','et-setti','product','window:m','yed','cron:run','toWeb','updateOp','filter','https://','-weixin','-once','rver','rce','.txt','agent\x20al','reasonin','groups','Session','bytes\x20*/','getAppPa','re\x20confi','getStatu','\x20url\x20que','SchemesA','7856618mdliyb','status','failed','ued\x20for\x20','window-a','openExte','et-selec','child\x20pr','\x20entry\x20f','#!/bin/s','getRevis','hell:eve','dataDir','te:check','t=utf-8','resize','remove','rayOnClo','test','sPath','json',':gateway','-request','.mjs','dAt','parse','setRende','length,\x20','Unsuppor','logs:ope','saveQqbo','ite','Everywhe','-logs','close','replace','223647vabtbE','origin','context','ustom-mo','app:tray','fromWebC','exec','ishuDocC','te:quit-','.\x20Run\x20wu','yInfo','hecks','efault','sion','/index.h','eived','led','selected','closed','content-','ngtalk-d','logs:get','icon','.map','in;\x20char','select\x20d','eated','migrateP','ateway_s','object','bject','tewayEve','title','isMaximi','agents:u','producti','Keys','pop','skills:s','openDire','l\x20prepar','ools','detach','onfigPat','markQuit','choices','ssionKey','text/htm','messages','indexOf','url','top_star','type','operated','nstallin','patch','.webp',':process','.bmp','listSumm','ccept-ra','nput-eve','ued\x20befo','e:direct','st-direc','reorderP','rerReady','agent\x20de','text/mar','inned','g\x20update','\x20rendere','ted','odels','auth_cod','returnVa','toLowerC',':save-qq','get-conf','uired','isDirect','ove','-data','initiali','omplete','fromIpc','terminal','select\x20f','Event','model',':reorder','\x20open\x20bl','#f8fafc','startFei','checkFor','.mp4','image/pn','les:list','app:open','create','ms-fonto','diagnost','dSession','logs:rea','OPTIONS',':start','agents:l','d\x20is\x20req','app:clip','answerAs',':save','text/css','cron:lis','\x20event\x20f','Dialog','d-state','setImCha','config:c','appId','gatewayP','filePath','readSess','peratedM','runtimeI','ready','lized','-token','agent\x20cr','way\x20is\x20n','ionUsage','l\x20first','second-i','les:dele','unhide','ame','mChannel','inactive','unhandle','saveWeco','update-c','4784416poftFt','.ogg',':create','config:r','est\x20fail','applicat','send','ell:even','separato','D,\x20OPTIO','indowSou','request-','contextW',':save-fe','GET,\x20HEA','ishu-cha',':runtime','tabs:req','getMessa','code','tateDir','error','orted','productN','orConfig','count','.svg','deleteIm','saveNetE','illEntry','rogress,','ap:upser','jie-shel','wujiecla','\x20allowin','l;\x20chars','g\x20level\x20','from','s:reveal','director','tProtoco','.ico','deleteOp','isDestro','isPackag','sourcePa','script;\x20','runtimeR','app_acti','list','cle','ell\x20gate','function','ilConnec','logs:lis','cut','lt\x20model','t\x20initia','patched','s:hide','config:i','getFeish','showOpen','-by-sess',':save-di','writeCon','chatChan','maxEntri','saveDing','tp\x20','disable','s-snapsh','length','shouldLo',':artifac',':answer-','started','string','\x20open-ur','_session','before-i','pluginId','files:re','chat','-restart','node','r\x20ready','\x20main\x20wi','includes',':save-kd','payload','tatus',':unpin','skills:d','has','28eQbfik','lect-fil','ile\x20read','record','restore','.flac','stration','ternally','ileName','logs:wri','.htm','unregist','ishu-doc','pen-devt','-not-rea','path','getPinne','argv','enClawMc','und','-level','minimize','files:wr','hide','ipc\x20requ','est_fail','runtime:','onReques','stringif',':status','lawSkill','meFilter','execPath','uri','push','wBin','ncident','onChatHi','state','nectSess','customMo','liConnec','cationMe','ase','openFile','getVersi','report-r','dispose','lawMcpSe','itialize','trationS','te\x20compl','href','otAfterI','oot','tanceLoc','app:log-','shell\x20lo','-exit','toISOStr','e:write-','llscreen','match','clearPen','Config','ap:entry','mpletion',':set-clo','preferen','files:li','requestB','control','map','artifact','shellLog',':loading','file\x20rea','apiKey','Update',':fork','alized','event','huChanne','app:info','nts','ctron\x20ma','setName','skills','mport-zi','window:i','maxToken','hatChann','n\x20failed','torConfi','openAtLo','ontext','app:gene','.woff','kUserQue','eam','child-pr','resolve',':diagnos','FeishuDo','hanged','listBySe','timeout','ocol-url','error、wa','agent-ev','ile\x20writ','ot\x20initi','kdown;\x20c','getAllWi','\x20metric\x20','elSessio','mjs','app:syst','storyLoa','skills:i','1311240KsusKJ','chat-str','promises','preventD','renderer','d\x20reject','missing-','gatewayT','fig','elConfig','getURL',':delete','edCount','before\x20q','elected-','ig\x20is\x20no','ell\x20conf','captureI','keys','ey\x20is\x20re','ai.com/v','pathname','ing','ensureIn','open','nelSessi','download','tabs:pos','ll-close','undo','hideOthe','IPC\x20requ','saveTenc','leted','ishuRegi','debug','.wasm','lTs','logs\x20exp','isabled','ywhere','defaultF','ted-ever','log','Custom','rename','rated-fi','settings',':save-te','m-channe','required','changed','uDocCliC','igWriteH','entDocsC','\x20process','\x20pending','filters','les:hide','g\x20ready','ources','ItemSett','rnal','command','image/we',':downloa','huDocCon','enable','e\x20url',':agent-m','plugins','showItem','timeoutM','nt-state','deleteCu','some','cutoffRo','app\x20url','tup:get','nstall','found','ted\x20conn','find','requestS','ectory','ion-menu','\x20CLI\x20wra','agent','font/ttf','equested','ot\x20compl','defaults','\x20quit','level','22415MoWQvg','deletedS','plugins:','figured:','.m4a','Version','getState','readConf','reate','show','iConnect','logLevel','ory','paste','ocsCliCo','kdocs','e\x20comple','agent\x20up','extensio','cron:rem','em:resta','byteLeng','webConte','inimize','resource','e\x20first.','runOnce','all\x20in\x20p',':get-clo','dev','tease-ma','listSess','ocked','before-q','image/gi','loadURL','feishu_d','entExmai','name','all','assign','uncaught','uRegistr','one','ings','mand','paths','dist',':resize','utf-8','lConfig','getRunti','main','bytes','unref','local','ype','Updates','tic','delete','index.mj','CliConne','baseUrl','showSave','reload','complete','writeTex',':message','onfig\x20up','com-chan','primary','api.open','ession','app'];_0x1b82=function(){return _0x5895bb;};return _0x1b82();}import{setRuntimeLoggerLevel}from'../common/runtime-logger.mjs';import{createUserEventWriter}from'../common/user-events.mjs';import{createConnectorController}from'../connectors/controller.mjs';import{resolveRuntimeKdocsCliCommand}from'../connectors/kdocs-cli.mjs';import{createGeneratedFilesStore}from'../files/generated-files-store.mjs';import{registerFileHandlers}from'../files/handlers.mjs';import{registerProductLogHandlers}from'../log-reporting/handlers.mjs';import{resolveWujieApiEndpoint}from'../log-reporting/report-logs.mjs';import{extractModelMessageContent,registerModelHandlers}from'../models/handlers.mjs';import{createPreferencesStore}from'../preferences/store.mjs';import{registerRequestIdHandlers}from'../request-id/handlers.mjs';import{loadRuntimeInfo,prepareRuntime,resolveRuntimeRoot,getRuntimeSpawnContext,resolveRuntimeLarkCliCommand,runClawOnce}from'../runtime/index.mjs';import{loadCreateUpdateController}from'../updates/loader.mjs';import{createProtocolUrlState}from'./protocol-url-state.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,_0x5c8109(0x34c)+_0x5c8109(0x27b)),{app,BrowserWindow,Menu,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x2b4286,DEVTOOLS_ACCELERATOR='CommandO'+_0x5c8109(0x3ea)+'+Shift+I',APP_RENDERER_PROTOCOL_SCHEME=_0x5c8109(0x326),APP_RENDERER_PROTOCOL_HOST='-',APP_RENDERER_ENTRY_URL=APP_RENDERER_PROTOCOL_SCHEME+_0x5c8109(0x346)+APP_RENDERER_PROTOCOL_HOST+(_0x5c8109(0x12a)+'tml'),CLAWSPACE_PROTOCOL_SCHEME=_0x5c8109(0x3de)+'e',DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!=='producti'+'on',IPC_SLOW_REQUEST_THRESHOLD_MS=0x1f4,SHELL_LOG_LEVELS=new Set(['error',_0x5c8109(0x3d4),'info','debug']),LOCAL_FILE_MIME_TYPES=new Map([[_0x5c8109(0x43b),_0x5c8109(0x14b)+_0x5c8109(0x1cb)+'et=utf-8'],[_0x5c8109(0x211),'text/htm'+_0x5c8109(0x1cb)+'et=utf-8'],[_0x5c8109(0x4e5),_0x5c8109(0x386)+_0x5c8109(0x134)+_0x5c8109(0x3aa)+'8'],[_0x5c8109(0x42f),_0x5c8109(0x160)+_0x5c8109(0x277)+_0x5c8109(0x32f)+_0x5c8109(0x411)],[_0x5c8109(0x4b9),_0x5c8109(0x1ad)+_0x5c8109(0x3c7)+_0x5c8109(0x1d6)+_0x5c8109(0x363)+_0x5c8109(0x30e)],[_0x5c8109(0x507),'applicat'+_0x5c8109(0x3c7)+'script;\x20'+_0x5c8109(0x363)+_0x5c8109(0x30e)],[_0x5c8109(0x3d1),_0x5c8109(0x18b)+';\x20charse'+_0x5c8109(0x4fe)],['.json',_0x5c8109(0x1ad)+_0x5c8109(0x44a)+_0x5c8109(0x43c)+_0x5c8109(0x4fe)],[_0x5c8109(0x133),_0x5c8109(0x1ad)+_0x5c8109(0x44a)+_0x5c8109(0x43c)+_0x5c8109(0x4fe)],['.jpg',_0x5c8109(0x39a)+'eg'],[_0x5c8109(0x3f4),_0x5c8109(0x39a)+'eg'],[_0x5c8109(0x423),_0x5c8109(0x17c)+'g'],[_0x5c8109(0x432),_0x5c8109(0x2ff)+'f'],[_0x5c8109(0x156),'image/bm'+'p'],[_0x5c8109(0x1c2),_0x5c8109(0x47e)+_0x5c8109(0x3d5)],[_0x5c8109(0x154),_0x5c8109(0x2bf)+'bp'],[_0x5c8109(0x1d1),'image/x-'+_0x5c8109(0x132)],[_0x5c8109(0x17b),'video/mp'+'4'],[_0x5c8109(0x3c3),_0x5c8109(0x33d)+_0x5c8109(0x453)],['.avi',_0x5c8109(0x470)+'msvideo'],['.mkv',_0x5c8109(0x470)+'matroska'],[_0x5c8109(0x4c2),'video/we'+'bm'],['.mp3','audio/mp'+'eg'],['.wav',_0x5c8109(0x339)+'v'],[_0x5c8109(0x2e1),'audio/mp'+'4'],[_0x5c8109(0x45e),'audio/aa'+'c'],[_0x5c8109(0x1a9),'audio/og'+'g'],[_0x5c8109(0x20c),_0x5c8109(0x3d9)+'ac'],[_0x5c8109(0x268),_0x5c8109(0x351)+'f'],[_0x5c8109(0x387),'font/wof'+'f2'],['.ttf',_0x5c8109(0x2d7)],[_0x5c8109(0x3b9),_0x5c8109(0x383)],[_0x5c8109(0x3f3),'applicat'+_0x5c8109(0x3e4)+_0x5c8109(0x180)+_0x5c8109(0x13a)],[_0x5c8109(0x2a3),_0x5c8109(0x1ad)+'ion/wasm']]);protocol[_0x5c8109(0x443)+_0x5c8109(0x4ef)+_0x5c8109(0x445)+_0x5c8109(0x485)]([{'scheme':APP_RENDERER_PROTOCOL_SCHEME,'privileges':{'secure':!![],'standard':!![],'supportFetchAPI':!![],'corsEnabled':!![]}},{'scheme':CLAWSPACE_PROTOCOL_SCHEME,'privileges':{'secure':!![],'standard':!![],'supportFetchAPI':!![],'corsEnabled':!![]}}]);let mainWindow=null,shellConfig=null,configController=null,gatewayController=null,bootError=null,mainLogger=null,ipcLogger=null,filesLogger=null,rendererLogger=null,terminalManager=null,connectorController=null,generatedFilesStore=null,productRuntime=null,productRuntimeHooks={},requestIdHooks={},gatewayRuntimeHooks={},sessionSqliteStore=null,sessionDataService=null,diagnosticsWriter=null,userEventWriter=null,isQuitting=![],updateController=null,pendingProtocolArgs=null;const protocolUrlState=createProtocolUrlState();let createWindowPromise=null,ipcHandlersInstalled=![];const rendererSessionMetrics={'inactiveEventCount':0x0,'inactiveBodyReadSuppressedCount':0x0},RENDERER_SESSION_METRIC_LOG_INTERVAL=0x19;function isProductionMode(){const _0x25df1a=_0x5c8109;return process.env.NODE_ENV===_0x25df1a(0x13f)+'on';}function resolveDevToolsFlagPath(){const _0x329457=_0x5c8109;return shellConfig?.['dataDir']?join(shellConfig[_0x329457(0x4fc)],_0x329457(0x36f)+_0x329457(0x4a7)):'';}function isDevToolsEnabled(){if(!isProductionMode())return!![];const _0x16c92b=resolveDevToolsFlagPath();return Boolean(_0x16c92b)&&existsSync(_0x16c92b);}function attachGatewayBroadcastHandlers(_0x57745c){const _0x1a3d6c=_0x5c8109;for(const _0x2913e2 of['gateway-'+_0x1a3d6c(0x4f1),'gateway-'+_0x1a3d6c(0x2aa),_0x1a3d6c(0x280)+'eam-even'+'t',_0x1a3d6c(0x274)+_0x1a3d6c(0x38a),_0x1a3d6c(0x439)+'pdated',_0x1a3d6c(0x347)+_0x1a3d6c(0x450)+'n']){_0x57745c['on'](_0x2913e2,_0x12c355=>broadcast(_0x2913e2,_0x12c355));}}function ensureSessionSqliteStore(){const _0xfe58e1=_0x5c8109;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error(_0xfe58e1(0x3c9)+_0xfe58e1(0x28f)+_0xfe58e1(0x28e)+_0xfe58e1(0x1e1)+'lized');return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController[_0xfe58e1(0x384)+'tateDir']()}),sessionSqliteStore;}function ensureSessionDataService(){const _0x390d64=_0x5c8109;if(sessionDataService)return sessionDataService['attachGa'+_0x390d64(0x13b)+_0x390d64(0x25b)]?.(gatewayController),sessionDataService;if(!configController)throw new Error(_0x390d64(0x3c9)+_0x390d64(0x28f)+_0x390d64(0x28e)+_0x390d64(0x1e1)+'lized');return sessionDataService=createSessionDataService({'stateDir':configController[_0x390d64(0x384)+_0x390d64(0x1bc)](),'sessionSqliteStore':ensureSessionSqliteStore(),'gatewayController':gatewayController,'broadcast':broadcast,'logger':mainLogger}),sessionDataService[_0x390d64(0x369)+'eRuntime'+_0x390d64(0x444)]?.(_0x5d3e21=>{const _0x337056=_0x390d64;broadcast(_0x337056(0x3a1)+':runtime'+'-state-c'+_0x337056(0x26f),_0x5d3e21);}),sessionDataService[_0x390d64(0x395)+_0x390d64(0x13b)+_0x390d64(0x25b)]?.(),sessionDataService;}function updateRendererSessionMetrics(_0xecb078){const _0x4198b9=_0x5c8109;if(!_0xecb078||typeof _0xecb078!==_0x4198b9(0x139))return;if(_0xecb078[_0x4198b9(0x258)]!==_0x4198b9(0x1a4)+_0x4198b9(0x1f7)+_0x4198b9(0x447)+'ad_suppr'+_0x4198b9(0x3a0))return;const _0x373b87=_0xecb078[_0x4198b9(0x3ad)]&&typeof _0xecb078[_0x4198b9(0x3ad)]==='object'?_0xecb078[_0x4198b9(0x3ad)]:{},_0x151288=Number(_0x373b87[_0x4198b9(0x1c1)]);if(!Number[_0x4198b9(0x460)](_0x151288)||_0x151288<=rendererSessionMetrics[_0x4198b9(0x1a4)+_0x4198b9(0x3d2)+_0x4198b9(0x385)+'edCount'])return;rendererSessionMetrics[_0x4198b9(0x1a4)+_0x4198b9(0x3d2)+_0x4198b9(0x385)+_0x4198b9(0x28b)]=_0x151288,rendererSessionMetrics[_0x4198b9(0x1a4)+_0x4198b9(0x352)+'nt']=Math['max'](rendererSessionMetrics[_0x4198b9(0x1a4)+_0x4198b9(0x352)+'nt'],_0x151288);if(_0x151288!==0x1&&_0x151288%RENDERER_SESSION_METRIC_LOG_INTERVAL!==0x0)return;mainLogger?.[_0x4198b9(0x393)]?.('session\x20'+'renderer'+_0x4198b9(0x279)+'updated',{'metric':_0x4198b9(0x1a4)+'_session'+_0x4198b9(0x447)+'ad_suppr'+_0x4198b9(0x3a0),'inactiveEventCount':rendererSessionMetrics[_0x4198b9(0x1a4)+_0x4198b9(0x352)+'nt'],'inactiveBodyReadSuppressedCount':rendererSessionMetrics['inactive'+_0x4198b9(0x3d2)+_0x4198b9(0x385)+_0x4198b9(0x28b)],'changeKind':typeof _0x373b87[_0x4198b9(0x48f)+'nd']===_0x4198b9(0x1f5)?_0x373b87[_0x4198b9(0x48f)+'nd']:null,'origin':typeof _0x373b87[_0x4198b9(0x11d)]===_0x4198b9(0x1f5)?_0x373b87[_0x4198b9(0x11d)]:null});}function ensureGeneratedFilesStore(){const _0x260817=_0x5c8109;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error(_0x260817(0x3c9)+'ell\x20conf'+'ig\x20is\x20no'+_0x260817(0x1e1)+_0x260817(0x199));return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController[_0x260817(0x384)+_0x260817(0x1bc)]()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0x593889=_0x5c8109;if(!gatewayController&&(!shellConfig||!configController))throw new Error(bootError?_0x593889(0x3c9)+'ell\x20boot'+'\x20failed:'+'\x20'+bootError:'wujie-sh'+'ell\x20gate'+_0x593889(0x19c)+_0x593889(0x276)+_0x593889(0x257));return!gatewayController&&(mainLogger?.['warn']('gateway\x20'+_0x593889(0x3d7)+'er\x20missi'+_0x593889(0x3a8)+_0x593889(0x40e)),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x593889(0x234)+'on'](),'productRuntimeHooks':gatewayRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController),ensureSessionDataService()),await gatewayController['start'](),gatewayController;}function getMode(){const _0x3525d8=_0x5c8109;return process.env.VITE_DEV_SERVER_URL?_0x3525d8(0x2fa):_0x3525d8(0x377);}function isGatewayNotInitializedError(_0xb1ba6d){const _0x20d699=_0x5c8109;return _0xb1ba6d instanceof Error&&_0xb1ba6d['message']==='wujie-sh'+_0x20d699(0x1db)+_0x20d699(0x19c)+_0x20d699(0x276)+'alized';}function revealPathInFolder(_0x2d881a){const _0x34e191=_0x5c8109,_0x1d99fd=String(_0x2d881a||'')['trim']();if(!_0x1d99fd)return{'ok':![],'error':'path\x20is\x20'+_0x34e191(0x2b1)};return shell[_0x34e191(0x2c6)+'InFolder'](_0x1d99fd),{'ok':!![]};}function resolveProjectRoot(){const _0x360e68=_0x5c8109;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app['isPackag'+'ed']&&process['resource'+_0x360e68(0x503)])return join(process['resource'+_0x360e68(0x503)],'app.asar');return resolve(process[_0x360e68(0x3e2)]());}function resolveProtocolScheme(){const _0x302df9=_0x5c8109;return typeof shellConfig?.[_0x302df9(0x345)]===_0x302df9(0x1f5)?shellConfig[_0x302df9(0x345)][_0x302df9(0x4a3)]():'';}function summarizeProtocolUrl(_0x11bef5){const _0x33a79d=_0x5c8109,_0x54683e=typeof _0x11bef5===_0x33a79d(0x1f5)?_0x11bef5:'';if(!_0x54683e)return summarizeText('',0xa0);try{const _0x479d3a=new URL(_0x54683e);for(const _0x253105 of['authCode',_0x33a79d(0x166)+'e','code','token',_0x33a79d(0x22d)]){_0x479d3a[_0x33a79d(0x44f)+_0x33a79d(0x3c1)][_0x33a79d(0x206)](_0x253105)&&_0x479d3a[_0x33a79d(0x44f)+_0x33a79d(0x3c1)]['set'](_0x253105,'[REDACTE'+'D]');}return summarizeText(_0x479d3a[_0x33a79d(0x412)](),0xa0);}catch{return summarizeText(_0x54683e,0xa0);}}function extractProtocolUrlFromArgs(_0x34e68a=[]){const _0x32d89a=_0x5c8109,_0x43d546=resolveProtocolScheme();if(!_0x43d546)return null;return _0x34e68a[_0x32d89a(0x2d1)](_0x5d425c=>{const _0x22bab4=_0x32d89a;if(typeof _0x5d425c!==_0x22bab4(0x1f5))return![];return _0x5d425c[_0x22bab4(0x381)+'th'](_0x43d546+_0x22bab4(0x346));})||null;}function getUsableMainWindow(){const _0x272b39=_0x5c8109;if(!mainWindow)return null;if(mainWindow[_0x272b39(0x1d3)+_0x272b39(0x4db)]())return mainWindow=null,protocolUrlState[_0x272b39(0x112)+_0x272b39(0x15e)](![]),null;if(mainWindow['webConte'+_0x272b39(0x25b)]?.[_0x272b39(0x1d3)+_0x272b39(0x4db)]?.())return mainWindow=null,protocolUrlState['setRende'+'rerReady'](![]),null;return mainWindow;}async function ensureMainWindow(){const _0x5c8ea3=getUsableMainWindow();if(_0x5c8ea3)return _0x5c8ea3;if(!shellConfig||!ipcHandlersInstalled)return null;return!createWindowPromise&&(createWindowPromise=createWindow()['finally'](()=>{createWindowPromise=null;})),await createWindowPromise,getUsableMainWindow();}function restoreMainWindowForPendingProtocolUrl(){const _0x54a5c0=_0x5c8109;if(!shellConfig)return;void ensureMainWindow()[_0x54a5c0(0x43e)](_0x13c87c=>{const _0x25f391=_0x54a5c0;mainLogger?.['error'](_0x25f391(0x345)+_0x25f391(0x378)+'restore\x20'+_0x25f391(0x4f2),summarizeError(_0x13c87c));});}function queueProtocolUrl(_0x3f67b0,_0x582812,_0x5f2aac=null){const _0x2fe653=_0x5c8109,{duplicate:_0x176951}=protocolUrlState[_0x2fe653(0x3b5)](_0x3f67b0);mainLogger?.[_0x2fe653(0x3d4)](_0x2fe653(0x345)+'\x20url\x20que'+_0x2fe653(0x4f3)+_0x2fe653(0x283),{'url':summarizeProtocolUrl(_0x3f67b0),'reason':_0x582812,'duplicatePending':_0x176951,'hasWindow':Boolean(_0x5f2aac),'isLoadingMainFrame':Boolean(_0x5f2aac?.[_0x2fe653(0x2f3)+'nts'][_0x2fe653(0x427)+'gMainFra'+'me']()),'protocolRendererReady':protocolUrlState['renderer'+_0x2fe653(0x3e5)]});}function dispatchProtocolUrl(_0x5e366d){const _0x2e473a=_0x5c8109,_0x791990=resolveProtocolScheme();if(typeof _0x5e366d!==_0x2e473a(0x1f5))return;if(!_0x791990){protocolUrlState['setPendi'+_0x2e473a(0x356)](_0x5e366d),mainLogger?.[_0x2e473a(0x3d4)](_0x2e473a(0x345)+_0x2e473a(0x4ee)+_0x2e473a(0x15a)+_0x2e473a(0x4ec)+_0x2e473a(0x2ba),{'url':summarizeProtocolUrl(_0x5e366d)});return;}if(!_0x5e366d[_0x2e473a(0x381)+'th'](_0x791990+'://'))return;mainLogger?.[_0x2e473a(0x3d4)](_0x2e473a(0x345)+'\x20url\x20rec'+_0x2e473a(0x12b),{'url':summarizeProtocolUrl(_0x5e366d)});const _0x502755=getUsableMainWindow();if(!_0x502755){queueProtocolUrl(_0x5e366d,_0x2e473a(0x285)+_0x2e473a(0x4d2));if(!_0x502755)restoreMainWindowForPendingProtocolUrl();return;}if(_0x502755[_0x2e473a(0x2f3)+_0x2e473a(0x25b)]['isLoadin'+_0x2e473a(0x332)+'me']()){queueProtocolUrl(_0x5e366d,'loading-'+_0x2e473a(0x3c5)+'me',_0x502755);return;}if(!protocolUrlState[_0x2e473a(0x283)+_0x2e473a(0x3e5)]){queueProtocolUrl(_0x5e366d,_0x2e473a(0x283)+_0x2e473a(0x215)+'dy',_0x502755);return;}_0x502755[_0x2e473a(0x2e6)](),_0x502755[_0x2e473a(0x442)](),broadcast(_0x2e473a(0x452)+_0x2e473a(0x272),_0x5e366d),mainLogger?.[_0x2e473a(0x3d4)]('protocol'+'\x20url\x20dis'+_0x2e473a(0x1e2),{'url':summarizeProtocolUrl(_0x5e366d),'protocolRendererReady':protocolUrlState[_0x2e473a(0x283)+_0x2e473a(0x3e5)]});}function flushPendingProtocolUrl(){const _0x3a5446=_0x5c8109,_0x5cfc28=protocolUrlState[_0x3a5446(0x246)+_0x3a5446(0x433)]();if(!_0x5cfc28)return;mainLogger?.[_0x3a5446(0x3d4)](_0x3a5446(0x345)+_0x3a5446(0x2b7)+_0x3a5446(0x482)+'shing',{'url':summarizeProtocolUrl(_0x5cfc28)}),void dispatchProtocolUrl(_0x5cfc28);}function getLocalFileMimeType(_0x531dc2){const _0x43114a=_0x5c8109;return LOCAL_FILE_MIME_TYPES[_0x43114a(0x3d0)](_0x531dc2[_0x43114a(0x34e)](_0x531dc2[_0x43114a(0x44d)+'xOf']('.'))[_0x43114a(0x168)+'ase']())||_0x43114a(0x1ad)+'ion/octe'+_0x43114a(0x372);}function resolveRendererDistDir(){const _0x29883d=_0x5c8109;return join(shellConfig[_0x29883d(0x4ba)+_0x29883d(0x23d)],_0x29883d(0x30c));}function decodeAppRendererPath(_0x46956b){const _0xdd48df=_0x5c8109;try{const _0x2b82a5=new URL(_0x46956b);if(_0x2b82a5[_0xdd48df(0x345)]!==APP_RENDERER_PROTOCOL_SCHEME+':')return null;if(_0x2b82a5[_0xdd48df(0x48e)]!==APP_RENDERER_PROTOCOL_HOST)return null;const _0x1f7404=resolveRendererDistDir(),_0x884e20=decodeURIComponent(_0x2b82a5[_0xdd48df(0x294)]||_0xdd48df(0x12a)+'tml'),_0x3c198d=_0x884e20[_0xdd48df(0x11b)](/^\/+/,'')||_0xdd48df(0x34f)+'ml',_0x4f0a65=resolve(_0x1f7404,_0x3c198d);if(_0x4f0a65!==_0x1f7404&&!_0x4f0a65['startsWi'+'th'](''+_0x1f7404+sep))return null;return{'url':_0x2b82a5,'distDir':_0x1f7404,'filePath':_0x4f0a65};}catch{return null;}}function parseSingleRangeHeader(_0x2cd3b6,_0x297835){const _0x247999=_0x5c8109,_0x578b9b=/^bytes=(\d*)-(\d*)$/i[_0x247999(0x122)](_0x2cd3b6['trim']());if(!_0x578b9b)return null;const [,_0x230d8c,_0x327ba8]=_0x578b9b;if(!_0x230d8c&&!_0x327ba8)return null;if(!_0x230d8c){const _0x1e8de2=Number['parseInt'](_0x327ba8,0xa);if(!Number[_0x247999(0x460)](_0x1e8de2)||_0x1e8de2<=0x0)return null;const _0x41f0d8=Math[_0x247999(0x402)](_0x297835-_0x1e8de2,0x0);return{'start':_0x41f0d8,'end':_0x297835-0x1};}const _0x15ab6b=Number[_0x247999(0x3f1)](_0x230d8c,0xa);if(!Number[_0x247999(0x460)](_0x15ab6b)||_0x15ab6b<0x0||_0x15ab6b>=_0x297835)return null;const _0x354b0e=_0x327ba8?Number[_0x247999(0x3f1)](_0x327ba8,0xa):_0x297835-0x1;if(!Number[_0x247999(0x460)](_0x354b0e)||_0x354b0e<_0x15ab6b)return null;return{'start':_0x15ab6b,'end':Math['min'](_0x354b0e,_0x297835-0x1)};}function decodeClawspacePath(_0x2b14a3){const _0x367911=_0x5c8109;try{const _0x51bd51=new URL(_0x2b14a3);if(_0x51bd51[_0x367911(0x345)]!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x51bd51['hostname']!==_0x367911(0x314))return null;const _0x48ba16=decodeURIComponent(_0x51bd51['pathname']);if(!_0x48ba16)return null;if(/^\/[A-Za-z]:\//[_0x367911(0x502)](_0x48ba16))return _0x48ba16[_0x367911(0x34e)](0x1);return _0x48ba16;}catch{return null;}}function createClawspaceHeaders(_0x2e6e49={}){const _0x503365=_0x5c8109;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':_0x503365(0x1b6)+_0x503365(0x1b1)+'NS','access-control-allow-headers':'range,\x20c'+_0x503365(0x370)+_0x503365(0x315),'access-control-expose-headers':_0x503365(0x12f)+_0x503365(0x113)+'content-'+'range,\x20a'+_0x503365(0x158)+_0x503365(0x39c),..._0x2e6e49});}function createLocalFileResponse(_0x187bdc,_0x12ea45){const _0x175a2b=_0x5c8109,_0x30bbf0=statSync(_0x12ea45);if(!_0x30bbf0[_0x175a2b(0x35a)]())return new Response(_0x175a2b(0x3cb)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':'text/pla'+_0x175a2b(0x134)+_0x175a2b(0x3aa)+'8'})});const _0x1b6a2b=getLocalFileMimeType(_0x12ea45),_0x2c6597=createClawspaceHeaders({'content-type':_0x1b6a2b,'accept-ranges':_0x175a2b(0x312),'cache-control':'no-store'});if(_0x187bdc[_0x175a2b(0x3da)]===_0x175a2b(0x3bd))return _0x2c6597['set'](_0x175a2b(0x12f)+_0x175a2b(0x1f0),String(_0x30bbf0[_0x175a2b(0x471)])),new Response(null,{'status':0xc8,'headers':_0x2c6597});const _0x48d608=_0x187bdc[_0x175a2b(0x349)][_0x175a2b(0x3d0)](_0x175a2b(0x32b));if(!_0x48d608)return _0x2c6597[_0x175a2b(0x430)](_0x175a2b(0x12f)+_0x175a2b(0x1f0),String(_0x30bbf0['size'])),new Response(Readable[_0x175a2b(0x4dd)](createReadStream(_0x12ea45)),{'status':0xc8,'headers':_0x2c6597});const _0x1fa8a0=parseSingleRangeHeader(_0x48d608,_0x30bbf0[_0x175a2b(0x471)]);if(!_0x1fa8a0)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object['fromEntr'+_0x175a2b(0x498)](_0x2c6597[_0x175a2b(0x40f)]()),'content-range':_0x175a2b(0x4ea)+_0x30bbf0[_0x175a2b(0x471)]})});const {start:_0x14574a,end:_0x5b1a49}=_0x1fa8a0,_0x50e04a=_0x5b1a49-_0x14574a+0x1,_0x1b1621=new Headers(_0x2c6597);return _0x1b1621[_0x175a2b(0x430)]('content-'+_0x175a2b(0x1f0),String(_0x50e04a)),_0x1b1621[_0x175a2b(0x430)]('content-'+_0x175a2b(0x32b),_0x175a2b(0x39f)+_0x14574a+'-'+_0x5b1a49+'/'+_0x30bbf0['size']),new Response(Readable['toWeb'](createReadStream(_0x12ea45,{'start':_0x14574a,'end':_0x5b1a49})),{'status':0xce,'headers':_0x1b1621});}function installClawspaceProtocolHandler(){const _0x531cce=_0x5c8109;protocol[_0x531cce(0x47b)](CLAWSPACE_PROTOCOL_SCHEME,_0x2257e5=>{const _0x10d7db=_0x531cce;if(_0x2257e5[_0x10d7db(0x3da)]===_0x10d7db(0x184))return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x57ae12=decodeClawspacePath(_0x2257e5['url']);if(!_0x57ae12)return new Response(_0x10d7db(0x464)+_0x10d7db(0x3de)+_0x10d7db(0x2c3),{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x10d7db(0x386)+_0x10d7db(0x134)+_0x10d7db(0x3aa)+'8'})});if(!existsSync(_0x57ae12))return new Response('Not\x20foun'+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x10d7db(0x386)+'in;\x20char'+_0x10d7db(0x3aa)+'8'})});return createLocalFileResponse(_0x2257e5,_0x57ae12);});}function installAppRendererProtocolHandler(){const _0x210042=_0x5c8109;protocol[_0x210042(0x47b)](APP_RENDERER_PROTOCOL_SCHEME,_0x972c40=>{const _0x145900=_0x210042;if(_0x972c40['method']===_0x145900(0x184))return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x35c933=decodeAppRendererPath(_0x972c40[_0x145900(0x14e)]);if(!_0x35c933)return new Response(_0x145900(0x464)+_0x145900(0x2cc),{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x145900(0x386)+_0x145900(0x134)+_0x145900(0x3aa)+'8'})});const {url:_0x42a28d,distDir:_0x2ec404,filePath:_0x19b313}=_0x35c933,_0x401a8c=join(_0x2ec404,_0x145900(0x34f)+'ml'),_0x4ba355=existsSync(_0x19b313),_0x163f12=_0x4ba355?_0x19b313:_0x401a8c;if(!_0x4ba355&&_0x42a28d[_0x145900(0x294)][_0x145900(0x200)]('.'))return new Response('Not\x20foun'+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x145900(0x386)+_0x145900(0x134)+_0x145900(0x3aa)+'8'})});if(!existsSync(_0x163f12))return mainLogger?.[_0x145900(0x1bd)]('renderer'+_0x145900(0x4f8)+_0x145900(0x364)+_0x145900(0x2cf),{'requestUrl':_0x972c40[_0x145900(0x14e)],'targetPath':_0x163f12}),new Response(_0x145900(0x3cb)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x145900(0x386)+'in;\x20char'+_0x145900(0x3aa)+'8'})});return createLocalFileResponse(_0x972c40,_0x163f12);});}function broadcast(_0x58ca23,_0x12b2f2){const _0x5ed862=_0x5c8109;DEBUG_STDOUT&&console[_0x5ed862(0x393)]('[wujie-s'+_0x5ed862(0x4fb)+_0x5ed862(0x343),_0x58ca23,summarizePayload(_0x12b2f2,{'maxDepth':0x2}));for(const _0x4ddf50 of BrowserWindow[_0x5ed862(0x278)+_0x5ed862(0x35b)]()){!_0x4ddf50['webConte'+'nts']['isDestro'+_0x5ed862(0x4db)]()&&_0x4ddf50[_0x5ed862(0x2f3)+_0x5ed862(0x25b)][_0x5ed862(0x1ae)](_0x5ed862(0x3c9)+'ell:even'+'t',{'name':_0x58ca23,'payload':_0x12b2f2});}}function requestLogReportFromRenderer(_0x36d39a){const _0x88d6ef=_0x5c8109,_0x404b12=BrowserWindow['getFocus'+_0x88d6ef(0x4b0)]()||(mainWindow&&!mainWindow[_0x88d6ef(0x1d3)+'yed']()?mainWindow:null),_0x221352={'source':_0x36d39a};if(!_0x404b12||_0x404b12[_0x88d6ef(0x2f3)+_0x88d6ef(0x25b)][_0x88d6ef(0x1d3)+_0x88d6ef(0x4db)]()){broadcast(_0x88d6ef(0x23f)+_0x88d6ef(0x235)+_0x88d6ef(0x2d8),_0x221352);return;}_0x404b12[_0x88d6ef(0x48d)+_0x88d6ef(0x479)]()&&_0x404b12[_0x88d6ef(0x20b)](),_0x404b12[_0x88d6ef(0x2e6)](),_0x404b12[_0x88d6ef(0x442)](),_0x404b12[_0x88d6ef(0x2f3)+_0x88d6ef(0x25b)][_0x88d6ef(0x1ae)](_0x88d6ef(0x3c9)+_0x88d6ef(0x1af)+'t',{'name':'app:log-'+_0x88d6ef(0x235)+'equested','payload':_0x221352});}function installApplicationMenu(){const _0x58da56=_0x5c8109;if(process[_0x58da56(0x379)]!=='darwin')return;const _0x40ab42=[{'label':shellConfig?.[_0x58da56(0x1bf)+_0x58da56(0x1a2)]||app['name'],'submenu':[{'role':'about'},{'type':_0x58da56(0x1b0)+'r'},{'role':'services'},{'type':_0x58da56(0x1b0)+'r'},{'role':_0x58da56(0x21e)},{'role':_0x58da56(0x29d)+'rs'},{'role':_0x58da56(0x1a1)},{'type':_0x58da56(0x1b0)+'r'},{'role':_0x58da56(0x3c2)}]},{'label':'编辑','submenu':[{'role':_0x58da56(0x29c)},{'role':'redo'},{'type':_0x58da56(0x1b0)+'r'},{'role':_0x58da56(0x1df)},{'role':_0x58da56(0x483)},{'role':_0x58da56(0x2ea)},{'role':_0x58da56(0x4b2)+'l'}]},{'label':'显示','submenu':[{'role':_0x58da56(0x31d)},{'role':'forceRel'+_0x58da56(0x4ca)},{'type':_0x58da56(0x1b0)+'r'},{'role':_0x58da56(0x3b2)+_0x58da56(0x244)}]},{'role':'windowMe'+'nu','label':'窗口'},{'role':_0x58da56(0x4ab),'label':'帮助','submenu':[{'label':'上传日志...','click':()=>{const _0x3dc09f=_0x58da56;requestLogReportFromRenderer('applicat'+_0x3dc09f(0x2d4));}}]}];Menu['setAppli'+_0x58da56(0x231)+'nu'](Menu['buildFro'+'mTemplat'+'e'](_0x40ab42));}async function loadProductRuntime(){const _0x537eed=_0x5c8109,_0x228f36=[join(shellConfig[_0x537eed(0x4ba)+_0x537eed(0x23d)],_0x537eed(0x3d6)+_0x537eed(0x391),_0x537eed(0x319)+'s'),join(app['getAppPa'+'th'](),_0x537eed(0x3d6)+'ntime',_0x537eed(0x319)+'s')],_0x37c295=_0x228f36[_0x537eed(0x2d1)](_0x50824e=>existsSync(_0x50824e));if(!_0x37c295)return mainLogger?.['info'](_0x537eed(0x473)+_0x537eed(0x4a9)+'extensio'+_0x537eed(0x454)+_0x537eed(0x21a),{'runtimeCandidates':_0x228f36}),{};try{const _0x385296=await import(pathToFileURL(_0x37c295)[_0x537eed(0x23b)]);return mainLogger?.['info']('product\x20'+_0x537eed(0x4a9)+_0x537eed(0x2ef)+'n\x20loaded',{'runtimePath':_0x37c295}),_0x385296;}catch(_0x46f5bc){mainLogger?.[_0x537eed(0x1bd)](_0x537eed(0x473)+_0x537eed(0x4a9)+_0x537eed(0x2ef)+_0x537eed(0x263)+_0x537eed(0x458),{'runtimePath':_0x37c295,'error':summarizeError(_0x46f5bc)});throw _0x46f5bc;}}function openDevToolsForActiveContext(){const _0x4e01af=_0x5c8109;if(!isDevToolsEnabled())return mainLogger?.[_0x4e01af(0x393)](_0x4e01af(0x36f)+_0x4e01af(0x177)+_0x4e01af(0x2fd),{'mode':getMode(),'flagPath':resolveDevToolsFlagPath()}),{'ok':![]};const _0x2c39f9=BrowserWindow[_0x4e01af(0x3dd)+_0x4e01af(0x4b0)]()||mainWindow;if(!_0x2c39f9||_0x2c39f9[_0x4e01af(0x1d3)+'yed']())return{'ok':![]};return _0x2c39f9[_0x4e01af(0x2f3)+_0x4e01af(0x25b)][_0x4e01af(0x4d4)+_0x4e01af(0x145)]({'mode':_0x4e01af(0x146)}),_0x2c39f9[_0x4e01af(0x2f3)+_0x4e01af(0x25b)][_0x4e01af(0x1ae)](_0x4e01af(0x3c9)+'ell:even'+'t',{'name':_0x4e01af(0x36f)+_0x4e01af(0x49b)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x43ce7d=_0x5c8109;globalShortcut[_0x43ce7d(0x212)+'er'](DEVTOOLS_ACCELERATOR);if(!isDevToolsEnabled())return;const _0x3be6bc=globalShortcut['register'](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x3be6bc&&console[_0x43ce7d(0x3d4)]('[wujie-s'+_0x43ce7d(0x40b)+_0x43ce7d(0x3bf)+_0x43ce7d(0x443)+_0x43ce7d(0x348)+_0x43ce7d(0x4a4)+DEVTOOLS_ACCELERATOR);}async function getRuntimeResourceStatus(){const _0x144765=_0x5c8109;try{const _0x20fe70=await loadRuntimeInfo(shellConfig[_0x144765(0x4ba)+_0x144765(0x23d)]),_0x323a0f=_0x20fe70[_0x144765(0x4a8)]||{};return{'ok':!![],'runtimeRoot':_0x20fe70[_0x144765(0x1d7)+_0x144765(0x23d)],'openclawVersion':_0x20fe70[_0x144765(0x41d)+_0x144765(0x2e2)],'generatedAt':_0x323a0f[_0x144765(0x448)+_0x144765(0x508)]||null,'pluginCount':Array['isArray'](_0x323a0f[_0x144765(0x2c5)])?_0x323a0f[_0x144765(0x2c5)]['length']:0x0,'plugins':Array['isArray'](_0x323a0f[_0x144765(0x2c5)])?_0x323a0f[_0x144765(0x2c5)]:[],'agents':_0x323a0f['agents']||null,'skills':_0x323a0f[_0x144765(0x25e)]||null,'wrapper':_0x323a0f[_0x144765(0x1c9)+_0x144765(0x22a)]||null,'product':_0x323a0f[_0x144765(0x4d9)]||null};}catch(_0x2b2d66){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.[_0x144765(0x4ba)+_0x144765(0x23d)]||resolveProjectRoot()),'error':_0x2b2d66 instanceof Error?_0x2b2d66[_0x144765(0x474)]:String(_0x2b2d66)};}}async function createWindow(){const _0x4e1c7e=_0x5c8109,_0x4861a9=process.env.VITE_DEV_SERVER_URL||APP_RENDERER_ENTRY_URL,_0x2b1561=process[_0x4e1c7e(0x379)]===_0x4e1c7e(0x3cc),_0x36d6a7=process['platform']===_0x4e1c7e(0x4b1)?![]:!![],_0xe6613=isDevToolsEnabled();mainLogger?.[_0x4e1c7e(0x393)](_0x4e1c7e(0x3a9)+_0x4e1c7e(0x1ff)+_0x4e1c7e(0x38b),{'rendererUrl':_0x4861a9,'mode':getMode(),'devToolsEnabled':_0xe6613,'devToolsFlagPath':resolveDevToolsFlagPath()});const _0x3f4b12=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig['productN'+_0x4e1c7e(0x1a2)],'backgroundColor':_0x2b1561?'#ffffff':_0x4e1c7e(0x178),'autoHideMenuBar':!![],'titleBarStyle':'hidden','titleBarOverlay':_0x36d6a7,..._0x2b1561?{'trafficLightPosition':{'x':0x10,'y':0xc}}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![],'devTools':_0xe6613}});mainWindow=_0x3f4b12,protocolUrlState[_0x4e1c7e(0x112)+_0x4e1c7e(0x15e)](![]),_0x3f4b12['on'](_0x4e1c7e(0x12e),()=>{const _0xb311ed=_0x4e1c7e;if(mainWindow!==_0x3f4b12)return;mainWindow=null,protocolUrlState[_0xb311ed(0x112)+_0xb311ed(0x15e)](![]);}),_0x3f4b12['webConte'+_0x4e1c7e(0x25b)]['on'](_0x4e1c7e(0x1f8)+_0x4e1c7e(0x159)+'nt',_0x4e789d=>{const _0x29597e=_0x4e1c7e,_0x43dad5=_0x4e789d[_0x29597e(0x425)];if(!_0x43dad5||_0x43dad5[_0x29597e(0x150)]!==_0x29597e(0x43f))return;const _0x388e50=String(_0x43dad5[_0x29597e(0x46a)]||'')['toLowerC'+'ase'](),_0x2cd230=_0x388e50==='r',_0x1069a8=process[_0x29597e(0x379)]===_0x29597e(0x3cc)?_0x43dad5['meta']===!![]:_0x43dad5[_0x29597e(0x24e)]===!![];if(!_0x2cd230||!_0x1069a8)return;_0x4e789d[_0x29597e(0x282)+_0x29597e(0x128)](),broadcast(_0x29597e(0x327)+_0x29597e(0x30a),{'type':_0x29597e(0x3ba)+'on','action':_0x29597e(0x31d)});}),_0x3f4b12['on'](_0x4e1c7e(0x442),()=>{const _0x177a7d=_0x4e1c7e;updateController?.['requestB'+_0x177a7d(0x424)+_0x177a7d(0x3f9)]('window_f'+'ocus');});const _0x1f904e=process.env.VITE_DEV_SERVER_URL;_0x1f904e?(await _0x3f4b12[_0x4e1c7e(0x300)](_0x1f904e),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&_0xe6613&&_0x3f4b12[_0x4e1c7e(0x2f3)+_0x4e1c7e(0x25b)][_0x4e1c7e(0x4d4)+_0x4e1c7e(0x145)]({'mode':'detach'})):await _0x3f4b12[_0x4e1c7e(0x300)](APP_RENDERER_ENTRY_URL),mainLogger?.[_0x4e1c7e(0x393)](_0x4e1c7e(0x357)+_0x4e1c7e(0x36a)+'ed',{'rendererUrl':_0x4861a9,'mode':getMode(),'devToolsEnabled':_0xe6613});}function registerProtocolHandlers(){const _0x8e1ebe=_0x5c8109,_0x268064=resolveProtocolScheme();if(!_0x268064)return;let _0x1c0779=![];try{_0x1c0779=app[_0x8e1ebe(0x1d4)+'ed']?app[_0x8e1ebe(0x3f5)+'aultProt'+'ocolClie'+'nt'](_0x268064,process['execPath'],[app[_0x8e1ebe(0x4eb)+'th']()]):![];}catch(_0x24fb84){mainLogger?.['error'](_0x8e1ebe(0x345)+_0x8e1ebe(0x408)+_0x8e1ebe(0x4bc)+'tion\x20fai'+'led',{'protocol':_0x268064,'error':summarizeError(_0x24fb84)});}mainLogger?.['warn']('protocol'+_0x8e1ebe(0x408)+_0x8e1ebe(0x443)+'ed',{'protocol':_0x268064,'registered':_0x1c0779,'packaged':app['isPackag'+'ed'],'defaultClient':app[_0x8e1ebe(0x38f)+_0x8e1ebe(0x1d0)+_0x8e1ebe(0x4a1)](_0x268064),'execPath':toHomePath(process[_0x8e1ebe(0x227)]),'appPath':toHomePath(app['getAppPa'+'th']())});const _0x1696a8=extractProtocolUrlFromArgs(process[_0x8e1ebe(0x218)]);if(_0x1696a8)protocolUrlState[_0x8e1ebe(0x375)+_0x8e1ebe(0x356)](_0x1696a8);const _0x1bf25d=extractProtocolUrlFromArgs(pendingProtocolArgs||[]);pendingProtocolArgs=null;if(_0x1bf25d)protocolUrlState[_0x8e1ebe(0x375)+'ngUrl'](_0x1bf25d);}function normalizeRequestedLogLevel(_0x411ebd){const _0x40b64e=_0x5c8109,_0x5c69e8=typeof _0x411ebd===_0x40b64e(0x1f5)?_0x411ebd['trim']()[_0x40b64e(0x168)+'ase']():'';if(!SHELL_LOG_LEVELS[_0x40b64e(0x206)](_0x5c69e8))throw new Error('日志等级必须是\x20'+_0x40b64e(0x273)+'rn、info\x20'+'或\x20debug');return _0x5c69e8;}function writeMainAuditLog(_0xb0bf74,_0x1c71f5){return mainLogger?.['write']?.(formatLogLine({'level':'INFO','context':'main','message':_0xb0bf74,'meta':_0x1c71f5}));}async function installIpcHandlers(){const _0x1be63c=_0x5c8109,_0x5efaba=(_0x592fef,_0x3ffbd5)=>{const _0x542c0b=_0x44a9;ipcMain[_0x542c0b(0x47b)](_0x592fef,async(_0x4cc568,_0x32ca42)=>{const _0x2f7109=_0x542c0b,_0x54958e=Date[_0x2f7109(0x330)](),_0x3d93e6=_0x4cc568[_0x2f7109(0x355)+_0x2f7109(0x1a2)]?.[_0x2f7109(0x14e)]||_0x4cc568[_0x2f7109(0x486)][_0x2f7109(0x289)](),_0x1c9dfa=ipcLogger?.[_0x2f7109(0x1f1)+'g'](_0x2f7109(0x2a2));_0x1c9dfa&&ipcLogger[_0x2f7109(0x393)]('ipc\x20requ'+'est\x20star'+_0x2f7109(0x164),{'channel':_0x592fef,'senderUrl':_0x3d93e6});DEBUG_STDOUT&&_0x1c9dfa&&console['info'](_0x2f7109(0x421)+_0x2f7109(0x359)+']',_0x592fef,_0x2f7109(0x1f4));try{let _0x548751;try{_0x548751=await _0x3ffbd5(_0x4cc568,_0x32ca42);}catch(_0x1b151d){if(!isGatewayNotInitializedError(_0x1b151d))throw _0x1b151d;await ensureGatewayControllerStarted(),_0x548751=await _0x3ffbd5(_0x4cc568,_0x32ca42);}const _0x1f69d2=Date[_0x2f7109(0x330)]()-_0x54958e;return(_0x1c9dfa||_0x1f69d2>IPC_SLOW_REQUEST_THRESHOLD_MS)&&ipcLogger?.[_0x2f7109(0x393)](_0x2f7109(0x21f)+_0x2f7109(0x429)+_0x2f7109(0x2a0),{'channel':_0x592fef,'durationMs':_0x1f69d2,'status':_0x2f7109(0x37a)+'d'}),await userEventWriter?.['fromIpc']({'channel':_0x592fef,'payload':_0x32ca42,'result':_0x548751,'durationMs':_0x1f69d2,'status':_0x2f7109(0x37a)+'d'}),DEBUG_STDOUT&&_0x1c9dfa&&console[_0x2f7109(0x393)](_0x2f7109(0x421)+'hell:ipc'+']',_0x592fef,_0x2f7109(0x31e)+'d',{'durationMs':_0x1f69d2,'status':_0x2f7109(0x37a)+'d'}),_0x548751;}catch(_0x1c5e1a){const _0x2109f2=Date[_0x2f7109(0x330)]()-_0x54958e;ipcLogger?.[_0x2f7109(0x1bd)](_0x2f7109(0x21f)+_0x2f7109(0x1ac)+'ed',{'channel':_0x592fef,'durationMs':_0x2109f2,'error':summarizeError(_0x1c5e1a)}),await userEventWriter?.[_0x2f7109(0x171)]({'channel':_0x592fef,'payload':_0x32ca42,'error':_0x1c5e1a,'durationMs':_0x2109f2,'status':_0x2f7109(0x4f2)}),await diagnosticsWriter?.[_0x2f7109(0x290)+'ncident'](diagnosticEventFromError(_0x1c5e1a,{'category':'ipc','event':_0x2f7109(0x392)+_0x2f7109(0x220)+'ed','message':_0x2f7109(0x29e)+_0x2f7109(0x1ac)+_0x2f7109(0x491)+_0x592fef,'durationMs':_0x2109f2,'meta':{'channel':_0x592fef,'senderUrl':_0x3d93e6,'payload':summarizePayload(_0x32ca42)}}));DEBUG_STDOUT&&console[_0x2f7109(0x1bd)](_0x2f7109(0x421)+_0x2f7109(0x359)+']',_0x592fef,_0x2f7109(0x4f2),summarizeError(_0x1c5e1a));throw _0x1c5e1a;}});},_0x2fa75b=()=>{const _0x5a1083=_0x44a9;if(!gatewayController)throw new Error(bootError?_0x5a1083(0x3c9)+'ell\x20boot'+_0x5a1083(0x4ae)+'\x20'+bootError:_0x5a1083(0x3c9)+_0x5a1083(0x1db)+'way\x20is\x20n'+_0x5a1083(0x276)+'alized');return gatewayController;};function _0x2aab33(){const _0x14106d=_0x44a9;for(const _0x3a7382 of Object[_0x14106d(0x291)](gatewayRuntimeHooks)){delete gatewayRuntimeHooks[_0x3a7382];}Object[_0x14106d(0x305)](gatewayRuntimeHooks,productRuntimeHooks,{'onChatHistoryLoaded':async _0x3f7fd3=>{const _0x2ec9f3=_0x14106d;await requestIdHooks?.[_0x2ec9f3(0x22c)+_0x2ec9f3(0x27d)+_0x2ec9f3(0x437)]?.(_0x3f7fd3),await productRuntimeHooks?.['onChatHi'+_0x2ec9f3(0x27d)+_0x2ec9f3(0x437)]?.(_0x3f7fd3);},'onRequestIdTitleEvent':async _0x533675=>{const _0x2da1c1=_0x14106d;await requestIdHooks?.['onReques'+'tIdTitle'+_0x2da1c1(0x174)]?.(_0x533675),await productRuntimeHooks?.['onReques'+_0x2da1c1(0x459)+'Event']?.(_0x533675);}});}const _0x118015=()=>{const _0x45003b=_0x44a9;if(typeof productRuntime[_0x45003b(0x443)+_0x45003b(0x49d)+'untimeHa'+_0x45003b(0x3ec)]!==_0x45003b(0x1dc))return;const _0x457afb=productRuntime['register'+_0x45003b(0x49d)+_0x45003b(0x4c7)+_0x45003b(0x3ec)]({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0x5efaba,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0x2fa75b,'sep':sep,'openClawConfigHandlers':{'update':(..._0x444db2)=>configController[_0x45003b(0x4de)+_0x45003b(0x45d)+_0x45003b(0x3b4)](..._0x444db2),'setPluginConfig':_0x53a2b0=>configController[_0x45003b(0x47a)+_0x45003b(0x36c)+_0x45003b(0x350)](_0x53a2b0),'setChannelConfig':_0x57b46e=>configController[_0x45003b(0x47a)+_0x45003b(0x342)+_0x45003b(0x288)](_0x57b46e),'deleteChannelConfig':_0x1ccfb5=>configController[_0x45003b(0x1d2)+'enClawCh'+_0x45003b(0x368)+_0x45003b(0x287)](_0x1ccfb5),'setSkillEntry':_0x2cebcb=>configController[_0x45003b(0x47a)+'lawSkill'+_0x45003b(0x495)](_0x2cebcb),'deleteSkillEntry':_0x71c627=>configController[_0x45003b(0x1d2)+_0x45003b(0x39e)+_0x45003b(0x1c5)](_0x71c627),'setMcpServer':_0x1b6256=>configController[_0x45003b(0x47a)+'lawMcpSe'+'rver'](_0x1b6256),'deleteMcpServer':_0x164aa3=>configController[_0x45003b(0x1d2)+_0x45003b(0x219)+'pServer'](_0x164aa3)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x851aaf})||{};Object['assign'](productRuntimeHooks,_0x457afb),_0x2aab33();};ipcMain['on']('app:prot'+_0x1be63c(0x272)+'-ready',()=>{const _0x5601d1=_0x1be63c;protocolUrlState['setRende'+_0x5601d1(0x15e)](!![]),mainLogger?.[_0x5601d1(0x3d4)](_0x5601d1(0x345)+_0x5601d1(0x163)+_0x5601d1(0x1fe),{'hasPendingProtocolUrl':Boolean(protocolUrlState['pendingU'+'rl'])}),flushPendingProtocolUrl();}),_0x5efaba(_0x1be63c(0x25a),async()=>({'name':shellConfig[_0x1be63c(0x1bf)+_0x1be63c(0x1a2)],'version':app[_0x1be63c(0x234)+'on'](),'appId':shellConfig[_0x1be63c(0x192)],'dataDir':shellConfig[_0x1be63c(0x4fc)]})),_0x5efaba(_0x1be63c(0x17e)+'-url',async(_0x20e9f4,_0x29e8dc)=>{const _0x1ed661=_0x1be63c,_0x3e76ed=typeof _0x29e8dc===_0x1ed661(0x1f5)?_0x29e8dc:'';if(!_0x3e76ed)return{'ok':![]};return filesLogger?.[_0x1ed661(0x393)](_0x1ed661(0x388)+'ernal\x20ur'+_0x1ed661(0x428)+_0x1ed661(0x164),{'url':summarizeText(_0x3e76ed,0xa0)}),await shell[_0x1ed661(0x4f5)+_0x1ed661(0x2bd)](_0x3e76ed),{'ok':!![]};});const _0x851aaf=async(_0x4b0da6,_0x54209e)=>{const _0x346385=_0x1be63c;return configController[_0x346385(0x4d0)+_0x346385(0x2b4)+_0x346385(0x456)+_0x346385(0x20e)](),await configController[_0x346385(0x1e9)+'fig'](_0x4b0da6,_0x54209e),{'ok':!![]};};Object[_0x1be63c(0x305)](requestIdHooks,registerRequestIdHandlers({'configController':configController,'handle':_0x5efaba,'mainLogger':mainLogger})),_0x2aab33(),_0x118015(),_0x5efaba(_0x1be63c(0x27e)+_0x1be63c(0x25f)+'p',async(_0x4544be,_0x1cea6f)=>importMarketSkillZip({'payload':_0x1cea6f,'importSkillZip':_0x174a76=>importSkillZip({..._0x174a76,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow[_0x1be63c(0x121)+_0x1be63c(0x41a)](_0x4544be[_0x1be63c(0x486)])||mainWindow,'configController':configController}),'configController':configController})),_0x5efaba('skills:u'+'pdate',(_0x3fb8c8,_0x14b2e9)=>updateManagedSkillConfig({'payload':_0x14b2e9,'configController':configController})),_0x5efaba(_0x1be63c(0x205)+'elete',(_0x39f396,_0x1dac58)=>deleteMarketSkillRegistryEntry({'payload':_0x1dac58,'deleteManagedSkill':_0x241f73=>deleteManagedSkill({..._0x241f73,'gateway':_0x2fa75b(),'configController':configController}),'configController':configController}));const _0x5488c2=ensureGeneratedFilesStore();_0x5efaba(_0x1be63c(0x267)+'rated-fi'+'les:list',async()=>_0x5488c2[_0x1be63c(0x1d9)]()),_0x5efaba(_0x1be63c(0x267)+_0x1be63c(0x2ad)+_0x1be63c(0x17d)+_0x1be63c(0x1e7)+_0x1be63c(0x3a6),async(_0x57ee62,_0x2abd4f)=>_0x5488c2['listBySe'+_0x1be63c(0x3ca)](String(_0x2abd4f||''))),_0x5efaba(_0x1be63c(0x267)+_0x1be63c(0x2ad)+'les:upse'+'rt',async(_0x1a5007,_0x1a7938={})=>_0x5488c2[_0x1be63c(0x3bc)](_0x1a7938)),_0x5efaba('app:gene'+_0x1be63c(0x2ad)+_0x1be63c(0x2b9),async(_0x412a5b,_0x3ca748)=>_0x5488c2[_0x1be63c(0x21e)](String(_0x3ca748||''))),_0x5efaba('app:gene'+_0x1be63c(0x2ad)+_0x1be63c(0x2b9)+_0x1be63c(0x1e7)+_0x1be63c(0x3a6),async(_0x2c6c5f,_0x3b28f7)=>_0x5488c2['hideBySe'+_0x1be63c(0x3ca)](String(_0x3b28f7||''))),_0x5efaba(_0x1be63c(0x267)+_0x1be63c(0x2ad)+'les:dele'+'te',async(_0x34b996,_0x46d8e9)=>_0x5488c2['deleteFi'+'le'](String(_0x46d8e9||''))),_0x5efaba(_0x1be63c(0x267)+_0x1be63c(0x2ad)+_0x1be63c(0x1a0)+_0x1be63c(0x4ce)+'e',async(_0x3d3b59,_0x32e04d=[])=>_0x5488c2[_0x1be63c(0x2de)+_0x1be63c(0x396)](_0x32e04d)),_0x5efaba('app:gene'+'rated-fi'+_0x1be63c(0x440)+'al',async(_0x59c59f,_0x5444df)=>revealPathInFolder(_0x5444df)),_0x5efaba('artifact'+'s:list',async(_0xbc05e9,_0x4ccecb={})=>{const _0x301efb=_0x1be63c,_0xa5b50a=_0x4ccecb&&typeof _0x4ccecb==='object'&&_0x301efb(0x3b6)+'ey'in _0x4ccecb?String(_0x4ccecb[_0x301efb(0x3b6)+'ey']||''):'';return _0xa5b50a?_0x5488c2[_0x301efb(0x270)+_0x301efb(0x3ca)](_0xa5b50a):_0x5488c2[_0x301efb(0x1d9)]();}),_0x5efaba(_0x1be63c(0x250)+_0x1be63c(0x38d),async(_0x2b5e78,_0x489faa={})=>_0x5488c2[_0x1be63c(0x3bc)](_0x489faa)),_0x5efaba(_0x1be63c(0x250)+_0x1be63c(0x1e3),async(_0x2fcebd,_0x30ea9b={})=>_0x5488c2[_0x1be63c(0x21e)](String(_0x30ea9b['id']||_0x30ea9b||''))),_0x5efaba(_0x1be63c(0x250)+_0x1be63c(0x431),async(_0x230e11,_0xbbd7={})=>_0x5488c2[_0x1be63c(0x446)+'le'](String(_0xbbd7['id']||_0xbbd7||''))),_0x5efaba(_0x1be63c(0x250)+_0x1be63c(0x431)+_0x1be63c(0x18f),async(_0x3049cc,_0x4dcfab={})=>_0x5488c2['deletedS'+_0x1be63c(0x396)](_0x4dcfab[_0x1be63c(0x30b)]||_0x4dcfab)),_0x5efaba('artifact'+_0x1be63c(0x1ce),async(_0x4370d0,_0xa40087={})=>{const _0x4ec59d=_0x1be63c,_0x338a77=typeof _0xa40087===_0x4ec59d(0x1f5)?_0xa40087:_0xa40087[_0x4ec59d(0x216)]||_0xa40087[_0x4ec59d(0x228)];return revealPathInFolder(_0x338a77);});const _0x4cc67d=createPreferencesStore({'stateDir':configController[_0x1be63c(0x384)+_0x1be63c(0x1bc)](),'storeFile':_0x1be63c(0x3f7)+_0x1be63c(0x24b)+'ces.json'}),_0x371bb8=await _0x4cc67d[_0x1be63c(0x3d0)](_0x1be63c(0x251)+_0x1be63c(0x329),configController['paths']['logLevel']),_0x3dfb78=setShellLoggerLevel(_0x371bb8);setRuntimeLoggerLevel(_0x371bb8),mainLogger?.[_0x1be63c(0x393)](_0x1be63c(0x240)+_0x1be63c(0x1cc)+_0x1be63c(0x16f)+_0x1be63c(0x479),{'level':_0x3dfb78,'configuredLevel':configController[_0x1be63c(0x30b)][_0x1be63c(0x2e8)],'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)}),_0x5efaba(_0x1be63c(0x120)+_0x1be63c(0x2f9)+'se',async()=>_0x4cc67d[_0x1be63c(0x3d0)](_0x1be63c(0x3ce)+_0x1be63c(0x501)+'se',![])),_0x5efaba('app:tray'+_0x1be63c(0x24a)+'se',async(_0x180bd7,_0x1dd13a)=>_0x4cc67d[_0x1be63c(0x430)](_0x1be63c(0x3ce)+'rayOnClo'+'se',_0x1dd13a===!![])),_0x5efaba(_0x1be63c(0x131)+_0x1be63c(0x21b),async()=>({'level':getShellLoggerLevel(configController[_0x1be63c(0x30b)]),'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)})),_0x5efaba('logs:set'+_0x1be63c(0x21b),async(_0x2af879,_0x1edf99={})=>{const _0xcfb7e7=_0x1be63c,_0x4f3036=normalizeRequestedLogLevel(typeof _0x1edf99===_0xcfb7e7(0x1f5)?_0x1edf99:_0x1edf99['level']);await _0x4cc67d[_0xcfb7e7(0x430)](_0xcfb7e7(0x251)+_0xcfb7e7(0x329),_0x4f3036);const _0x4db6d0=setShellLoggerLevel(_0x4f3036);return setRuntimeLoggerLevel(_0x4f3036),await writeMainAuditLog(_0xcfb7e7(0x240)+_0xcfb7e7(0x1cc)+_0xcfb7e7(0x2b2),{'requestedLevel':_0x4f3036,'level':_0x4db6d0,'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)}),{'ok':!![],'level':_0x4db6d0,'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)};}),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0x5efaba,'sep':sep,'stateDir':configController[_0x1be63c(0x384)+_0x1be63c(0x1bc)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0x5efaba,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0x5efaba,'modelHandlers':{'saveCustomModel':_0x55232e=>_0x2fa75b()['models']['saveCust'+_0x1be63c(0x42e)](_0x55232e),'deleteCustomModel':_0x46b3c2=>_0x2fa75b()[_0x1be63c(0x478)][_0x1be63c(0x2c9)+_0x1be63c(0x34b)+'l'](_0x46b3c2)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x2bc469)=>configController['updateOp'+'enClawCo'+_0x1be63c(0x3b4)](..._0x2bc469),'setPluginConfig':_0x522e8a=>configController[_0x1be63c(0x47a)+_0x1be63c(0x36c)+_0x1be63c(0x350)](_0x522e8a),'setChannelConfig':_0x207f47=>configController['setOpenC'+_0x1be63c(0x342)+_0x1be63c(0x288)](_0x207f47),'deleteChannelConfig':_0x2e20c8=>configController[_0x1be63c(0x1d2)+_0x1be63c(0x353)+_0x1be63c(0x368)+_0x1be63c(0x287)](_0x2e20c8),'setSkillEntry':_0xb6d2b0=>configController[_0x1be63c(0x47a)+_0x1be63c(0x225)+_0x1be63c(0x495)](_0xb6d2b0),'deleteSkillEntry':_0x82c745=>configController[_0x1be63c(0x1d2)+_0x1be63c(0x39e)+_0x1be63c(0x1c5)](_0x82c745),'setMcpServer':_0x40deb1=>configController['setOpenC'+_0x1be63c(0x237)+_0x1be63c(0x4e3)](_0x40deb1),'deleteMcpServer':_0x1bd9de=>configController[_0x1be63c(0x1d2)+_0x1be63c(0x219)+'pServer'](_0x1bd9de)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0x5efaba(_0x1be63c(0x1e4)+'m-channe'+_0x1be63c(0x4aa),async()=>connectorController[_0x1be63c(0x49a)+_0x1be63c(0x368)+_0x1be63c(0x32e)]()),_0x5efaba(_0x1be63c(0x1e4)+_0x1be63c(0x2b0)+'ls:delet'+'e',async(_0x579d32,_0x2d0567={})=>connectorController[_0x1be63c(0x1c3)+'ChannelC'+'onfig'](_0x2d0567)),_0x5efaba(_0x1be63c(0x1e4)+_0x1be63c(0x2b0)+_0x1be63c(0x3f2)+'nabled',async(_0x42772b,_0x41c3ca={})=>connectorController[_0x1be63c(0x190)+_0x1be63c(0x49f)+_0x1be63c(0x12c)](_0x41c3ca)),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x18a),async(_0xd93151,_0x311fec={})=>{const _0x261b3d=_0x1be63c,_0x2cfa63=String(_0x311fec[_0x261b3d(0x461)+'d']||_0x311fec[_0x261b3d(0x202)]?.['channelI'+'d']||_0x311fec['payload']?.['id']||'');if(!_0x2cfa63)throw new Error(_0x261b3d(0x461)+_0x261b3d(0x187)+_0x261b3d(0x16b));const _0x87fb65=_0x311fec[_0x261b3d(0x202)]||_0x311fec,_0x13fa27={'feishu':connectorController[_0x261b3d(0x331)+_0x261b3d(0x259)+_0x261b3d(0x30f)],'qqbot':connectorController[_0x261b3d(0x116)+'tChannel'+'Config'],'wecom':connectorController[_0x261b3d(0x1a6)+_0x261b3d(0x1a3)+'Config'],'qq_mail':connectorController[_0x261b3d(0x42a)+_0x261b3d(0x1dd)+'torConfi'+'g'],'netease_mail':connectorController[_0x261b3d(0x1c4)+_0x261b3d(0x3e3)+_0x261b3d(0x492)+_0x261b3d(0x247)],'tencent_exmail':connectorController[_0x261b3d(0x29f)+_0x261b3d(0x302)+_0x261b3d(0x42d)+_0x261b3d(0x1c0)],'feishu_doc':connectorController[_0x261b3d(0x331)+_0x261b3d(0x2c1)+_0x261b3d(0x4ac)+_0x261b3d(0x3b4)],'tencent_docs':connectorController['saveTenc'+_0x261b3d(0x2b5)+_0x261b3d(0x492)+_0x261b3d(0x247)],'kdocs':connectorController[_0x261b3d(0x3ed)+_0x261b3d(0x472)+_0x261b3d(0x1c0)],'dingtalk_doc':connectorController[_0x261b3d(0x1ec)+_0x261b3d(0x394)+_0x261b3d(0x492)+_0x261b3d(0x247)]},_0x2e3c28=_0x13fa27[_0x2cfa63];if(!_0x2e3c28)throw new Error(_0x261b3d(0x114)+'ted\x20conn'+'ector:\x20'+_0x2cfa63);return _0x2e3c28(_0x87fb65);}),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x1b5)+_0x1be63c(0x1b7)+_0x1be63c(0x46e),async(_0x2bf2ee,_0x4b1313={})=>connectorController[_0x1be63c(0x331)+_0x1be63c(0x259)+'lConfig'](_0x4b1313)),_0x5efaba('config:c'+_0x1be63c(0x492)+_0x1be63c(0x169)+_0x1be63c(0x3c6)+_0x1be63c(0x335),async(_0x32f5a4,_0x18aa7a={})=>connectorController[_0x1be63c(0x116)+'tChannel'+_0x1be63c(0x247)](_0x18aa7a)),_0x5efaba(_0x1be63c(0x191)+'onnector'+':save-we'+_0x1be63c(0x322)+_0x1be63c(0x335),async(_0x51be02,_0x362de0={})=>connectorController[_0x1be63c(0x1a6)+_0x1be63c(0x1a3)+_0x1be63c(0x247)](_0x362de0)),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+':save-qq'+_0x1be63c(0x46b),async(_0x430f92,_0x4c245f={})=>connectorController['saveQqMa'+'ilConnec'+_0x1be63c(0x264)+'g'](_0x4c245f)),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x34a)+_0x1be63c(0x2fb)+'il',async(_0x32d509,_0x56bfa5={})=>connectorController[_0x1be63c(0x1c4)+'aseMailC'+'onnector'+_0x1be63c(0x247)](_0x56bfa5)),_0x5efaba('config:c'+_0x1be63c(0x492)+_0x1be63c(0x2af)+'ncent-ex'+'mail',async(_0xc1043c,_0x3a484e={})=>connectorController[_0x1be63c(0x29f)+_0x1be63c(0x302)+_0x1be63c(0x42d)+_0x1be63c(0x1c0)](_0x3a484e)),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x1b5)+_0x1be63c(0x213),async(_0x1ef6aa,_0x4d968c={})=>connectorController[_0x1be63c(0x331)+_0x1be63c(0x2c1)+_0x1be63c(0x4ac)+'nfig'](_0x4d968c)),_0x5efaba(_0x1be63c(0x191)+'onnector'+':save-te'+'ncent-do'+'cs',async(_0x3665cd,_0x7353fc={})=>connectorController[_0x1be63c(0x29f)+_0x1be63c(0x2b5)+_0x1be63c(0x492)+_0x1be63c(0x247)](_0x7353fc)),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x201)+_0x1be63c(0x3d3),async(_0xa91d4a,_0x197f2f={})=>connectorController[_0x1be63c(0x3ed)+'sConnect'+_0x1be63c(0x1c0)](_0x197f2f)),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x1e8)+_0x1be63c(0x130)+'oc',async(_0x293658,_0x21da86={})=>connectorController[_0x1be63c(0x1ec)+_0x1be63c(0x394)+_0x1be63c(0x492)+_0x1be63c(0x247)](_0x21da86)),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x4cf)+_0x1be63c(0x185),async(_0x52342f,_0x3b5551={})=>{const _0x5e1889=_0x1be63c,_0xdedfa7=String(_0x3b5551['channelI'+'d']||_0x3b5551[_0x5e1889(0x150)]||'');if(_0xdedfa7===_0x5e1889(0x2ec))return connectorController[_0x5e1889(0x35c)+_0x5e1889(0x4c5)+_0x5e1889(0x22e)+'ion']();if(_0xdedfa7===_0x5e1889(0x301)+'oc')return connectorController[_0x5e1889(0x179)+'shuDocCl'+_0x5e1889(0x2e7)+'Session']();if(_0xdedfa7===_0x5e1889(0x37b))return connectorController[_0x5e1889(0x179)+_0x5e1889(0x476)+_0x5e1889(0x239)+_0x5e1889(0x325)](_0x3b5551);if(_0xdedfa7==='openclaw'+_0x5e1889(0x4e1)||_0xdedfa7===_0x5e1889(0x48a))return connectorController[_0x5e1889(0x4d1)+_0x5e1889(0x262)+_0x5e1889(0x27a)+'n']({'gatewayPort':_0x2fa75b()[_0x5e1889(0x193)+_0x5e1889(0x3fc)](),'gatewayToken':_0x2fa75b()[_0x5e1889(0x286)+_0x5e1889(0x451)]()});throw new Error(_0x5e1889(0x114)+_0x5e1889(0x2d0)+'ector\x20se'+'ssion:\x20'+(_0xdedfa7||'unknown'));}),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x4cf)+_0x1be63c(0x224),async(_0x323a1b,_0x252837={})=>{const _0x30e685=_0x1be63c,_0x497828=String(_0x252837[_0x30e685(0x461)+'d']||_0x252837[_0x30e685(0x150)]||'');if(_0x497828===_0x30e685(0x2ec))return connectorController[_0x30e685(0x3b7)+_0x30e685(0x31a)+'ctStatus'](_0x252837);if(_0x497828===_0x30e685(0x301)+'oc')return connectorController[_0x30e685(0x1e5)+_0x30e685(0x2b3)+'onnectSt'+_0x30e685(0x4bd)](_0x252837);if(_0x497828===_0x30e685(0x37b))return connectorController[_0x30e685(0x1e5)+_0x30e685(0x307)+_0x30e685(0x422)+_0x30e685(0x4c0)](_0x252837);throw new Error(_0x30e685(0x114)+_0x30e685(0x2d0)+_0x30e685(0x466)+_0x30e685(0x39b)+(_0x497828||'unknown'));}),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x4cf)+_0x1be63c(0x3cf),async(_0x514cc8,_0x45be60={})=>{const _0xcd6d01=_0x1be63c,_0x3d3868=String(_0x45be60['channelI'+'d']||_0x45be60['type']||'');if(_0x3d3868===_0xcd6d01(0x2ec))return connectorController['cancelKd'+_0xcd6d01(0x2eb)+_0xcd6d01(0x3c8)+_0xcd6d01(0x129)](_0x45be60);if(_0x3d3868==='feishu_d'+'oc')return connectorController['cancelFe'+_0xcd6d01(0x123)+_0xcd6d01(0x230)+'tSession'](_0x45be60);if(_0x3d3868==='feishu')return connectorController[_0xcd6d01(0x4ad)+_0xcd6d01(0x2a1)+_0xcd6d01(0x20d)+_0xcd6d01(0x4e9)](_0x45be60);if(_0x3d3868===_0xcd6d01(0x41d)+_0xcd6d01(0x4e1)||_0x3d3868==='wechat')return connectorController['cancelWe'+_0xcd6d01(0x1ea)+_0xcd6d01(0x298)+'on']();return{'ok':!![]};}),_0x5efaba(_0x1be63c(0x191)+_0x1be63c(0x492)+_0x1be63c(0x4cf)+':complet'+'e',async(_0x2fabde,_0x2014e0={})=>{const _0x419172=_0x1be63c,_0x226868=String(_0x2014e0['channelI'+'d']||_0x2014e0[_0x419172(0x150)]||'');if(_0x226868===_0x419172(0x301)+'oc')return connectorController[_0x419172(0x31e)+_0x419172(0x26e)+_0x419172(0x3c4)+_0x419172(0x398)+'on'](_0x2014e0);throw new Error(_0x419172(0x114)+'ted\x20conn'+_0x419172(0x466)+_0x419172(0x39b)+(_0x226868||_0x419172(0x35f)));}),_0x5efaba(_0x1be63c(0x1ab)+_0x1be63c(0x38c),()=>connectorController[_0x1be63c(0x2e4)+'igSnapsh'+'ot']());const _0x241678=_0x5b7d9a=>{const _0x2d4f4c=_0x1be63c,_0x1c440b=_0x5b7d9a[_0x2d4f4c(0x3df)]&&typeof _0x5b7d9a[_0x2d4f4c(0x3df)]===_0x2d4f4c(0x139)?_0x5b7d9a[_0x2d4f4c(0x3df)]:{};return Array['isArray'](_0x1c440b[_0x2d4f4c(0x1d9)])?_0x1c440b[_0x2d4f4c(0x1d9)]:[];},_0x2d20ff=_0x508ff5=>{const _0x12d881=_0x1be63c,_0x5b3d87=typeof _0x508ff5===_0x12d881(0x1f5)?_0x508ff5[_0x12d881(0x4a3)]():'',_0x590dba=_0x5b3d87[_0x12d881(0x245)](/^agent:([^:]+):/);return _0x590dba?.[0x1]||'';},_0x8efb0c=(_0x478b68={},_0x37507e=[])=>{const _0x2eded5=_0x1be63c,_0x4987d4=Array[_0x2eded5(0x4cb)](_0x478b68[_0x2eded5(0x4e8)])?_0x478b68[_0x2eded5(0x4e8)]:[],_0x5ee579=Array[_0x2eded5(0x4cb)](_0x478b68['agents'])?_0x478b68[_0x2eded5(0x3df)]:Array['isArray'](_0x478b68[_0x2eded5(0x1d9)])?_0x478b68[_0x2eded5(0x1d9)]:_0x4987d4[_0x2eded5(0x24f)](_0x57d0f4=>_0x57d0f4?.[_0x2eded5(0x2d6)])[_0x2eded5(0x4df)](Boolean),_0x4977ea=Array['isArray'](_0x37507e)?_0x37507e:[];return _0x5ee579[_0x2eded5(0x24f)](_0x1d8a1b=>{const _0x54dc60=_0x2eded5,_0x381a35=String(_0x1d8a1b?.['id']||_0x1d8a1b?.['agentId']||'')[_0x54dc60(0x4a3)](),_0x46d399=_0x4987d4[_0x54dc60(0x2d1)](_0x33e559=>{const _0x1b3c13=_0x54dc60,_0x3b07ce=String(_0x33e559?.[_0x1b3c13(0x2d6)]?.['id']||_0x33e559?.[_0x1b3c13(0x2d6)]?.['agentId']||'')[_0x1b3c13(0x4a3)]();return _0x3b07ce===_0x381a35;});return{..._0x46d399&&typeof _0x46d399===_0x54dc60(0x139)?_0x46d399:{},'agent':_0x1d8a1b,'sessions':_0x381a35?_0x4977ea['filter'](_0x5dcb3a=>{const _0x23fafe=_0x54dc60,_0x2294cb=String(_0x5dcb3a?.['agentId']||_0x5dcb3a?.[_0x23fafe(0x4af)]||_0x5dcb3a?.[_0x23fafe(0x2d6)]?.['id']||_0x2d20ff(_0x5dcb3a?.['key'])||'')[_0x23fafe(0x4a3)]();return _0x2294cb?_0x2294cb===_0x381a35:_0x381a35===_0x23fafe(0x311);}):[]};});};_0x5efaba('app:upda'+_0x1be63c(0x3ab)+_0x1be63c(0x396),async()=>updateController?.[_0x1be63c(0x2e3)]()),_0x5efaba(_0x1be63c(0x3db)+_0x1be63c(0x4fd),async()=>updateController?.[_0x1be63c(0x17a)+_0x1be63c(0x316)]()),_0x5efaba('app:upda'+'te:downl'+_0x1be63c(0x4ca),async()=>updateController?.[_0x1be63c(0x299)+_0x1be63c(0x255)]()),_0x5efaba(_0x1be63c(0x3db)+_0x1be63c(0x124)+_0x1be63c(0x4d6)+_0x1be63c(0x304),async()=>updateController?.[_0x1be63c(0x3ae)+_0x1be63c(0x2ce)]()),_0x5efaba('app:file'+':choose',async(_0x5bc3a6,_0x54dac8={})=>{const _0x556e0a=_0x1be63c,_0xca2125=await dialog[_0x556e0a(0x1e6)+'Dialog'](BrowserWindow['fromWebC'+_0x556e0a(0x41a)](_0x5bc3a6['sender'])??mainWindow,{'properties':[_0x556e0a(0x233),..._0x54dac8?.[_0x556e0a(0x3dc)]!==0x1?['multiSel'+_0x556e0a(0x47c)]:[]],'filters':_0x54dac8?.[_0x556e0a(0x414)+_0x556e0a(0x226)+'s']?[{'name':_0x556e0a(0x2ab),'extensions':_0x54dac8['customNa'+_0x556e0a(0x226)+'s']}]:undefined});return _0xca2125[_0x556e0a(0x194)+'s'][_0x556e0a(0x24f)](_0x48328b=>({'path':_0x48328b,'name':_0x48328b[_0x556e0a(0x3a2)](/[\\/]/)['pop']()||_0x48328b}));}),_0x5efaba('app:file'+_0x1be63c(0x2c0)+_0x1be63c(0x366),async(_0x3e36cd,_0x502994={})=>{const _0xae14d=_0x1be63c,_0x1ac024=String(_0x502994[_0xae14d(0x1d5)+'th']||'');if(!_0x1ac024)return{'success':![],'error':_0xae14d(0x1d5)+'th\x20is\x20re'+_0xae14d(0x484)};const _0x168c16=await dialog[_0xae14d(0x31c)+'Dialog'](mainWindow,{'defaultPath':_0x502994[_0xae14d(0x2a8)+_0xae14d(0x20f)]||_0x1ac024[_0xae14d(0x3a2)](/[\\/]/)[_0xae14d(0x141)]()});if(_0x168c16[_0xae14d(0x3b1)]||!_0x168c16[_0xae14d(0x194)])return{'success':![],'canceled':!![]};const {copyFile:_0x531ce5}=await import('node:fs/'+_0xae14d(0x281));return await _0x531ce5(_0x1ac024,_0x168c16[_0xae14d(0x194)]),{'success':!![],'filePath':_0x168c16[_0xae14d(0x194)]};}),_0x5efaba(_0x1be63c(0x188)+_0x1be63c(0x3c0)+_0x1be63c(0x117),async(_0x4f416e,_0x3f4e6f)=>{const _0x161c0e=_0x1be63c;return clipboard[_0x161c0e(0x31f)+'t'](String(_0x3f4e6f??'')),{'ok':!![]};}),_0x5efaba(_0x1be63c(0x27c)+_0x1be63c(0x2f1)+'rt',async()=>{const _0x437aa3=_0x1be63c;return app[_0x437aa3(0x426)](),app[_0x437aa3(0x3c2)](),{'ok':!![]};}),_0x5efaba(_0x1be63c(0x260)+_0x1be63c(0x376)+_0x1be63c(0x479),_0x46cce9=>Boolean(BrowserWindow['fromWebC'+_0x1be63c(0x41a)](_0x46cce9[_0x1be63c(0x486)])?.[_0x1be63c(0x13d)+_0x1be63c(0x479)]())),_0x5efaba(_0x1be63c(0x43a)+_0x1be63c(0x3fe),async(_0x4f480e,_0x5d1aae)=>{const _0x3d132a=_0x1be63c;return app['setLogin'+_0x3d132a(0x2bc)+_0x3d132a(0x309)]({'openAtLogin':_0x5d1aae===!![]}),{'ok':!![],'enabled':_0x5d1aae===!![]};}),_0x5efaba('app:star'+_0x1be63c(0x2cd),async()=>app['getLogin'+_0x1be63c(0x2bc)+_0x1be63c(0x309)]()[_0x1be63c(0x265)+_0x1be63c(0x42b)]),_0x5efaba(_0x1be63c(0x4b3)+':choose-'+'folder',async _0x4433d6=>{const _0x577a3f=_0x1be63c,_0x4612a4=await dialog[_0x577a3f(0x1e6)+_0x577a3f(0x18e)](BrowserWindow[_0x577a3f(0x121)+'ontents'](_0x4433d6[_0x577a3f(0x486)])??mainWindow,{'properties':[_0x577a3f(0x143)+_0x577a3f(0x481)]});return _0x4612a4[_0x577a3f(0x194)+'s'][0x0]||'';}),_0x5efaba(_0x1be63c(0x27c)+_0x1be63c(0x488)+_0x1be63c(0x3b3),async(_0xf105f9,_0x695ce1)=>{const _0x379764=_0x1be63c,_0x11a957=await shell[_0x379764(0x44c)](String(_0x695ce1||''));return _0x11a957||'';}),_0x5efaba('openclaw'+_0x1be63c(0x505)+_0x1be63c(0x19a),async()=>_0x2fa75b()['gatewayT'+_0x1be63c(0x451)]()),_0x5efaba(_0x1be63c(0x41d)+_0x1be63c(0x505)+'-port',async()=>_0x2fa75b()[_0x1be63c(0x193)+_0x1be63c(0x3fc)]()),_0x5efaba(_0x1be63c(0x41d)+_0x1be63c(0x4cc)+'e',async(_0x3bd360,_0x3be346=[])=>{const _0x21106f=_0x1be63c,_0x5c5c78=await runClawOnce(shellConfig[_0x21106f(0x4ba)+_0x21106f(0x23d)],Array[_0x21106f(0x4cb)](_0x3be346)?_0x3be346:[]);return{'ok':_0x5c5c78[_0x21106f(0x1bb)]===0x0,..._0x5c5c78};});const _0x3fc355=configController[_0x1be63c(0x384)+'tateDir']();sessionSqliteStore=ensureSessionSqliteStore();const _0xe4b1d5=createAgentSessionsMapStore({'stateDir':_0x3fc355});_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x256),async(_0x138311,_0x5cccb4={})=>{const _0x3853cb=_0x1be63c,_0x2f1e91=_0x5cccb4&&typeof _0x5cccb4===_0x3853cb(0x139)?_0x5cccb4:{},_0x5ecd52=_0x2f1e91['parentSe'+'ssionKey']||_0x2f1e91[_0x3853cb(0x3b6)+'ey'],_0x2da7b9=await _0x2fa75b()['sessions']['create']({..._0x2f1e91,'parentSessionKey':_0x5ecd52}),_0x3951a3=String(_0x2da7b9?.[_0x3853cb(0x46a)]||'')[_0x3853cb(0x4a3)](),_0x151eba=String(_0x2da7b9?.['sessionI'+'d']||'')[_0x3853cb(0x4a3)]();return _0x3951a3&&_0x151eba&&await _0xe4b1d5['upsert']({'sessionKey':_0x3951a3,'sessionId':_0x151eba,'sourceSessionKey':_0x2f1e91[_0x3853cb(0x3a3)+_0x3853cb(0x14a)]||_0x5ecd52,...typeof _0x2f1e91['keepUnti'+'lTs']==='number'?{'keepUntilTs':_0x2f1e91[_0x3853cb(0x489)+_0x3853cb(0x2a4)]}:{},...typeof _0x2f1e91[_0x3853cb(0x2cb)+'le']===_0x3853cb(0x1f5)?{'cutoffRole':_0x2f1e91[_0x3853cb(0x2cb)+'le']}:{},...typeof _0x2f1e91[_0x3853cb(0x4bf)+'xt']===_0x3853cb(0x1f5)?{'cutoffText':_0x2f1e91['cutoffTe'+'xt']}:{}}),_0x2da7b9;}),_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x2c4)+_0x1be63c(0x435),async(_0x5eb0ed,_0x351302={})=>_0xe4b1d5['get'](_0x351302)),_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x2c4)+_0x1be63c(0x1c7)+'t',async(_0x40d4df,_0x389f9e={})=>_0xe4b1d5[_0x1be63c(0x3bc)](_0x389f9e)),_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x2c4)+_0x1be63c(0x248),async(_0x4b91e8,_0xf88e7b={})=>{const _0x47c6d2=_0x1be63c,_0x3f0fd5=String(_0xf88e7b[_0x47c6d2(0x3b6)+'ey']||'')[_0x47c6d2(0x4a3)]();if(!_0x3f0fd5)return null;return await sessionSqliteStore[_0x47c6d2(0x195)+_0x47c6d2(0x42c)](_0x3f0fd5);}),_0x5efaba('agents:c'+_0x1be63c(0x2e5),async(_0x7782ee,_0x99bdc0={})=>{const _0x79ca5c=_0x1be63c,_0x3252e6=await readMutableConfig(),_0x9ce879=_0x3252e6[_0x79ca5c(0x3df)]&&typeof _0x3252e6['agents']===_0x79ca5c(0x139)?_0x3252e6[_0x79ca5c(0x3df)]:{},_0x12579a=_0x241678(_0x3252e6),_0x3faaf6=String(_0x99bdc0['id']||_0x99bdc0['name']||'agent-'+Date[_0x79ca5c(0x330)]())['trim']()[_0x79ca5c(0x11b)](/\s+/g,'-'),_0x15c9b3={'id':_0x3faaf6,'name':String(_0x99bdc0[_0x79ca5c(0x303)]||_0x3faaf6),..._0x99bdc0[_0x79ca5c(0x449)+'e']?{'workspace':String(_0x99bdc0[_0x79ca5c(0x449)+'e'])}:{},..._0x99bdc0['model']?{'model':_0x99bdc0[_0x79ca5c(0x175)]}:{},..._0x99bdc0[_0x79ca5c(0x457)]?{'emoji':_0x99bdc0[_0x79ca5c(0x457)]}:{},..._0x99bdc0[_0x79ca5c(0x45c)]?{'avatar':_0x99bdc0['avatar']}:{},...Array['isArray'](_0x99bdc0[_0x79ca5c(0x25e)])?{'skills':_0x99bdc0[_0x79ca5c(0x25e)]}:{}};if(_0x12579a[_0x79ca5c(0x2ca)](_0x34fff4=>_0x34fff4?.['id']===_0x3faaf6))throw new Error(_0x79ca5c(0x4e6)+'ready\x20ex'+_0x79ca5c(0x46c));return _0x9ce879[_0x79ca5c(0x1d9)]=[..._0x12579a,_0x15c9b3],_0x3252e6[_0x79ca5c(0x3df)]=_0x9ce879,await _0x851aaf(_0x3252e6,_0x79ca5c(0x19b)+_0x79ca5c(0x136)),{'ok':!![],'agent':_0x15c9b3};}),_0x5efaba(_0x1be63c(0x13e)+_0x1be63c(0x455),async(_0x36f22c,_0x83f805={})=>{const _0x2f1df3=_0x1be63c,_0x4c968f=String(_0x83f805['id']||_0x83f805['agentId']||'')[_0x2f1df3(0x4a3)]();if(!_0x4c968f)throw new Error('agent\x20id'+_0x2f1df3(0x3b0)+_0x2f1df3(0x419));const _0x3f76ea=await readMutableConfig(),_0x28f6b2=_0x3f76ea['agents']&&typeof _0x3f76ea[_0x2f1df3(0x3df)]===_0x2f1df3(0x139)?_0x3f76ea[_0x2f1df3(0x3df)]:{},_0x2ea238=_0x241678(_0x3f76ea),_0x258d34=_0x2ea238[_0x2f1df3(0x24f)](_0x19d837=>_0x19d837?.['id']===_0x4c968f?{..._0x19d837,..._0x83f805,'id':_0x4c968f}:_0x19d837);return _0x28f6b2['list']=_0x258d34,_0x3f76ea[_0x2f1df3(0x3df)]=_0x28f6b2,await _0x851aaf(_0x3f76ea,_0x2f1df3(0x2ee)+'dated'),{'ok':!![],'agent':_0x258d34[_0x2f1df3(0x2d1)](_0x2932fd=>_0x2932fd?.['id']===_0x4c968f)||null};}),_0x5efaba('agents:d'+_0x1be63c(0x441),async(_0x516c32,_0x289b0e={})=>{const _0x52c121=_0x1be63c,_0x5e94bb=String(_0x289b0e['id']||_0x289b0e['agentId']||'')['trim']();if(!_0x5e94bb)throw new Error(_0x52c121(0x46d)+_0x52c121(0x3b0)+'ired');const _0x5834cb=await readMutableConfig(),_0x308a6b=_0x5834cb[_0x52c121(0x3df)]&&typeof _0x5834cb[_0x52c121(0x3df)]==='object'?_0x5834cb[_0x52c121(0x3df)]:{};return _0x308a6b['list']=_0x241678(_0x5834cb)[_0x52c121(0x4df)](_0x568bb7=>_0x568bb7?.['id']!==_0x5e94bb),_0x5834cb[_0x52c121(0x3df)]=_0x308a6b,await _0x851aaf(_0x5834cb,_0x52c121(0x15f)+_0x52c121(0x2a0)),{'ok':!![],'agentId':_0x5e94bb};}),_0x5efaba('agents:w'+_0x1be63c(0x337)+_0x1be63c(0x37f)+'t',async(_0x2d73f5,_0x2a264e={})=>{const _0x9a82a1=_0x1be63c,[_0x577f1b,_0x2379cb]=await Promise['all']([_0x2fa75b()[_0x9a82a1(0x3df)][_0x9a82a1(0x1d9)](),ensureSessionDataService()[_0x9a82a1(0x157)+_0x9a82a1(0x38e)](_0x2a264e)[_0x9a82a1(0x43e)](()=>({'sessions':[]}))]),_0x3efd23=Array[_0x9a82a1(0x4cb)](_0x2379cb[_0x9a82a1(0x3a1)])?_0x2379cb[_0x9a82a1(0x3a1)]:[];return{..._0x577f1b,'sessions':_0x3efd23,'groups':_0x8efb0c(_0x577f1b,_0x3efd23)};}),terminalManager=createTerminalManager({'cwd':join(configController['resolveS'+'tateDir'](),_0x1be63c(0x449)+'e'),'emitData':_0x44e336=>broadcast('terminal'+_0x1be63c(0x16e),_0x44e336),'emitExit':_0x1a9a8e=>broadcast(_0x1be63c(0x172)+_0x1be63c(0x241),_0x1a9a8e)}),_0x5efaba(_0x1be63c(0x172)+_0x1be63c(0x1aa),async(_0x13d71a,_0x210f3a={})=>terminalManager[_0x1be63c(0x17f)](_0x210f3a)),_0x5efaba(_0x1be63c(0x172)+':input',async(_0x12fed0,_0x408315={})=>terminalManager['input'](_0x408315)),_0x5efaba(_0x1be63c(0x172)+_0x1be63c(0x30d),async(_0x2a0d5f,_0x551f6f={})=>terminalManager[_0x1be63c(0x4ff)](_0x551f6f)),_0x5efaba(_0x1be63c(0x172)+_0x1be63c(0x40c),async(_0x2a1d93,_0x1591a7={})=>terminalManager[_0x1be63c(0x11a)](_0x1591a7)),_0x5efaba(_0x1be63c(0x2df)+_0x1be63c(0x1d9),async()=>{const _0x3252bf=_0x1be63c,_0x21fd3b=gatewayController?.[_0x3252bf(0x197)+_0x3252bf(0x41e)]?.()||{};return _0x21fd3b[_0x3252bf(0x2c5)]||[];}),_0x5efaba('plugins:'+_0x1be63c(0x16a)+'ig',async(_0x2aec9d,_0xd50927={})=>{const _0x1c2caa=_0x1be63c,_0x22d27d=String(_0xd50927[_0x1c2caa(0x1f9)]||_0xd50927['id']||''),_0x4040cc=await readMutableConfig(),_0x9d7626=_0x4040cc['plugins']?.[_0x1c2caa(0x40f)]||{};return _0x22d27d?_0x9d7626[_0x22d27d]||null:_0x9d7626;}),_0x5efaba(_0x1be63c(0x2df)+_0x1be63c(0x1a7)+_0x1be63c(0x3b8),async(_0x163ce2,_0x1eb37a={})=>{const _0x22f159=_0x1be63c,_0x566b1e=String(_0x1eb37a[_0x22f159(0x1f9)]||_0x1eb37a['id']||'');if(!_0x566b1e)throw new Error(_0x22f159(0x1f9)+'\x20is\x20requ'+_0x22f159(0x419));const _0x59cfc3=await readMutableConfig(),_0xb0fdb1=_0x59cfc3[_0x22f159(0x2c5)]&&typeof _0x59cfc3['plugins']===_0x22f159(0x139)?_0x59cfc3[_0x22f159(0x2c5)]:{},_0x304590=_0xb0fdb1[_0x22f159(0x40f)]&&typeof _0xb0fdb1[_0x22f159(0x40f)]===_0x22f159(0x139)?_0xb0fdb1['entries']:{};return _0x304590[_0x566b1e]={..._0x304590[_0x566b1e]||{},..._0x1eb37a['config']||_0x1eb37a[_0x22f159(0x153)]||{}},_0xb0fdb1['entries']=_0x304590,_0x59cfc3[_0x22f159(0x2c5)]=_0xb0fdb1,_0x851aaf(_0x59cfc3,_0x22f159(0x475)+_0x22f159(0x321)+'dated');}),_0x5efaba('plugins:'+_0x1be63c(0x2c2),async(_0x8d9e40,_0x38bd95={})=>{const _0x1203d0=_0x1be63c,_0xea88e6=String(_0x38bd95['pluginId']||_0x38bd95['id']||'');if(!_0xea88e6)throw new Error(_0x1203d0(0x1f9)+_0x1203d0(0x3b0)+'ired');const _0x356fbb=await readMutableConfig(),_0x56521=_0x356fbb[_0x1203d0(0x2c5)]&&typeof _0x356fbb[_0x1203d0(0x2c5)]===_0x1203d0(0x139)?_0x356fbb[_0x1203d0(0x2c5)]:{},_0x3e467a=_0x56521['entries']&&typeof _0x56521[_0x1203d0(0x40f)]===_0x1203d0(0x139)?_0x56521[_0x1203d0(0x40f)]:{};return _0x3e467a[_0xea88e6]={..._0x3e467a[_0xea88e6]||{},'enabled':!![]},_0x56521['entries']=_0x3e467a,_0x356fbb[_0x1203d0(0x2c5)]=_0x56521,_0x851aaf(_0x356fbb,_0x1203d0(0x3f8)+_0x1203d0(0x3e7));}),_0x5efaba(_0x1be63c(0x2df)+_0x1be63c(0x1ee),async(_0x2c12e8,_0x4a3a9a={})=>{const _0x1a5bcf=_0x1be63c,_0x49a694=String(_0x4a3a9a[_0x1a5bcf(0x1f9)]||_0x4a3a9a['id']||'');if(!_0x49a694)throw new Error('pluginId'+'\x20is\x20requ'+_0x1a5bcf(0x419));const _0x305fe4=await readMutableConfig(),_0x8c7420=_0x305fe4[_0x1a5bcf(0x2c5)]&&typeof _0x305fe4[_0x1a5bcf(0x2c5)]===_0x1a5bcf(0x139)?_0x305fe4['plugins']:{},_0x28b725=_0x8c7420[_0x1a5bcf(0x40f)]&&typeof _0x8c7420[_0x1a5bcf(0x40f)]===_0x1a5bcf(0x139)?_0x8c7420['entries']:{};return _0x28b725[_0x49a694]={..._0x28b725[_0x49a694]||{},'enabled':![]},_0x8c7420[_0x1a5bcf(0x40f)]=_0x28b725,_0x305fe4[_0x1a5bcf(0x2c5)]=_0x8c7420,_0x851aaf(_0x305fe4,'plugin\x20d'+_0x1a5bcf(0x2a6));}),_0x5efaba(_0x1be63c(0x2df)+_0x1be63c(0x4f1),async(_0x5ca9eb,_0xb56c81={})=>({'plugins':await((async()=>{const _0x35ac98=_0x1be63c,_0x3963d0=gatewayController?.[_0x35ac98(0x197)+_0x35ac98(0x41e)]?.()||{};if(!_0xb56c81?.[_0x35ac98(0x1f9)]&&!_0xb56c81?.['id'])return _0x3963d0[_0x35ac98(0x2c5)]||[];const _0x2fd8c9=String(_0xb56c81[_0x35ac98(0x1f9)]||_0xb56c81['id']||'');return(_0x3963d0[_0x35ac98(0x2c5)]||[])['filter'](_0x4d7d6e=>_0x4d7d6e['pluginId']===_0x2fd8c9);})())})),_0x5efaba('tabs:nav'+_0x1be63c(0x465),async(_0x586267,_0x45459f)=>({'ok':!![],'payload':_0x45459f})),_0x5efaba(_0x1be63c(0x29a)+_0x1be63c(0x407)+'e',async(_0x354242,_0x3a156f)=>{const _0x239208=_0x1be63c;return broadcast(_0x239208(0x327)+_0x239208(0x30a),_0x3a156f),{'ok':!![]};}),_0x5efaba(_0x1be63c(0x1b9)+_0x1be63c(0x416)+_0x1be63c(0x2c8),async()=>{const _0x36c5a6=_0x1be63c;return broadcast('tabs-age'+'nt-state'+_0x36c5a6(0x506),{}),{'ok':!![]};}),_0x5efaba(_0x1be63c(0x4c1)+'resh-age'+_0x1be63c(0x2c8),async(_0x56dcce,_0x24be89={})=>{const _0x243daa=_0x1be63c;return broadcast('tabs-age'+_0x243daa(0x2c8)+_0x243daa(0x34d)+_0x243daa(0x506),_0x24be89),{'ok':!![]};}),_0x5efaba(_0x1be63c(0x4da)+_0x1be63c(0x2f4),_0x309e91=>{const _0x27f18e=_0x1be63c;return BrowserWindow[_0x27f18e(0x121)+_0x27f18e(0x41a)](_0x309e91[_0x27f18e(0x486)])?.[_0x27f18e(0x21c)](),{'ok':!![]};}),_0x5efaba(_0x1be63c(0x382)+_0x1be63c(0x3a5)+_0x1be63c(0x48b),_0x5cba24=>{const _0x2a725c=_0x1be63c,_0x3cbcb6=BrowserWindow[_0x2a725c(0x121)+_0x2a725c(0x41a)](_0x5cba24[_0x2a725c(0x486)]);if(!_0x3cbcb6)return{'isMaximized':![]};if(_0x3cbcb6['isMaximi'+_0x2a725c(0x479)]())_0x3cbcb6[_0x2a725c(0x4a5)+'ze']();else _0x3cbcb6[_0x2a725c(0x4b7)]();return{'isMaximized':_0x3cbcb6[_0x2a725c(0x13d)+'zed']()};}),_0x5efaba('window:c'+_0x1be63c(0x410),_0x2634bb=>{const _0x5a3dae=_0x1be63c;return BrowserWindow[_0x5a3dae(0x121)+_0x5a3dae(0x41a)](_0x2634bb['sender'])?.[_0x5a3dae(0x11a)](),{'ok':!![]};}),_0x5efaba('window:o'+_0x1be63c(0x214)+'ools',()=>openDevToolsForActiveContext()),_0x5efaba(_0x1be63c(0x41d)+':runtime'+_0x1be63c(0x37c),()=>_0x2fa75b()[_0x1be63c(0x197)+_0x1be63c(0x41e)]()),_0x5efaba(_0x1be63c(0x41d)+_0x1be63c(0x505)+_0x1be63c(0x3bb),async()=>(await ensureGatewayControllerStarted())[_0x1be63c(0x4ed)+'s']()),ipcMain['on'](_0x1be63c(0x41d)+_0x1be63c(0x505)+'-status-'+'snapshot',_0x2d5f96=>{const _0x262ae3=_0x1be63c;_0x2d5f96[_0x262ae3(0x167)+_0x262ae3(0x358)]=gatewayController?.[_0x262ae3(0x4ed)+'s']?.()??null;}),_0x5efaba(_0x1be63c(0x41d)+_0x1be63c(0x505)+_0x1be63c(0x1fc),()=>_0x2fa75b()[_0x1be63c(0x3fa)](_0x1be63c(0x283)+'\x20request')),_0x5efaba(_0x1be63c(0x41d)+_0x1be63c(0x252)+_0x1be63c(0x32d)+_0x1be63c(0x1da),async()=>({'loadingLifeCycle':_0x1be63c(0x198),'message':'','updatedAt':new Date()[_0x1be63c(0x242)+_0x1be63c(0x295)]()})),_0x5efaba(_0x1be63c(0x41d)+_0x1be63c(0x505)+_0x1be63c(0x119),(_0x986a30,_0x3bc288={})=>_0x2fa75b()[_0x1be63c(0x3e6)+'tLogs'](_0x3bc288?.[_0x1be63c(0x3dc)]??0xc8)),_0x5efaba('openclaw'+_0x1be63c(0x1f3)+'ask-user'+'-questio'+'n',(_0x739361,_0x12be28)=>_0x2fa75b()[_0x1be63c(0x189)+_0x1be63c(0x269)+'stion'](_0x12be28)),_0x5efaba(_0x1be63c(0x41d)+':open-cl'+_0x1be63c(0x401),async()=>{const _0x539ece=_0x1be63c,_0x149733=join(resolveRuntimeRoot(shellConfig['projectR'+_0x539ece(0x23d)]),_0x539ece(0x341),_0x539ece(0x1c9)+'w');if(!existsSync(_0x149733))throw new Error(_0x539ece(0x41d)+_0x539ece(0x2d5)+'pper\x20not'+'\x20found:\x20'+_0x149733+(_0x539ece(0x125)+_0x539ece(0x1c8)+_0x539ece(0x144)+_0x539ece(0x2f6)));const _0x1061e7=join(app[_0x539ece(0x3ee)](_0x539ece(0x4b4)),_0x539ece(0x3c9)+_0x539ece(0x4d5)+_0x539ece(0x2be));await writeFile(_0x1061e7,_0x539ece(0x4f9)+'h\x0aexec\x20\x22'+_0x149733['replace'](/\\/g,'\x5c\x5c')[_0x539ece(0x11b)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x27f6f0=spawn(_0x539ece(0x297),['-a','Terminal',_0x1061e7],{'detached':!![],'stdio':'ignore'});return _0x27f6f0[_0x539ece(0x313)](),{'ok':!![],'cliPath':_0x149733};}),_0x5efaba(_0x1be63c(0x186)+'ist',()=>_0x2fa75b()[_0x1be63c(0x3df)]['list']()),_0x5efaba(_0x1be63c(0x142)+_0x1be63c(0x203),(_0xedbeb,_0x36d885)=>_0x2fa75b()[_0x1be63c(0x25e)][_0x1be63c(0x4f1)](_0x36d885)),_0x5efaba('sessions'+_0x1be63c(0x1aa),(_0x3c8b86,_0x2a2a67)=>_0x2fa75b()[_0x1be63c(0x3a1)][_0x1be63c(0x17f)](_0x2a2a67)),_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x3ff)+'t',(_0x5f276b,_0x4c03db)=>ensureSessionDataService()['listSumm'+'aries'](_0x4c03db)),_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x45a),(_0x4195a4,_0x3852e1)=>ensureSessionDataService()['getSumma'+'ry'](_0x3852e1)),_0x5efaba('sessions'+':revisio'+'n',(_0x110f64,_0x51548b)=>ensureSessionDataService()[_0x1be63c(0x4fa)+_0x1be63c(0x3a6)](_0x51548b)),_0x5efaba('sessions'+_0x1be63c(0x320)+_0x1be63c(0x1ef)+'ot',(_0x3cefdb,_0x581558)=>ensureSessionDataService()[_0x1be63c(0x1ba)+_0x1be63c(0x36d)](_0x581558)),_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x1f2)+'ts',(_0x1ed431,_0x9f7bbe)=>ensureSessionDataService()['getArtif'+_0x1be63c(0x4c6)](_0x9f7bbe)),_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x155)+'es',(_0x51b8d0,_0x1ddd6e)=>ensureSessionDataService()[_0x1be63c(0x40a)+_0x1be63c(0x3d8)](_0x1ddd6e)),_0x5efaba('sessions'+_0x1be63c(0x1b8)+'-state-s'+'napshot',(_0x22a9e7,_0x13b17b={})=>ensureSessionDataService()[_0x1be63c(0x310)+_0x1be63c(0x3e8)](String(_0x13b17b[_0x1be63c(0x3b6)+'ey']||_0x13b17b[_0x1be63c(0x46a)]||''))),_0x5efaba('sessions'+_0x1be63c(0x344),(_0x57397d,_0x4652c2={})=>ensureSessionDataService()[_0x1be63c(0x2fc)+_0x1be63c(0x3be)+'s'](_0x4652c2)),_0x5efaba('sessions'+':usage',async(_0x3b7e9a,_0x3534f3={})=>{const _0x21cd25=_0x1be63c,_0x28a581=String(_0x3534f3[_0x21cd25(0x3b6)+'ey']||_0x3534f3[_0x21cd25(0x46a)]||'')[_0x21cd25(0x4a3)](),_0x466e49=await ensureSessionSqliteStore()[_0x21cd25(0x195)+_0x21cd25(0x19d)](_0x28a581),_0x260d65=await configController['readCurr'+_0x21cd25(0x360)+'Context']();return{..._0x466e49,'contextWindowTokens':_0x260d65[_0x21cd25(0x1b4)+'indowTok'+'ens'],'contextWindowSource':_0x260d65[_0x21cd25(0x1b4)+_0x21cd25(0x1b2)+_0x21cd25(0x4e4)]};}),_0x5efaba('sessions'+_0x1be63c(0x28a),(_0x20f707,_0x389afc)=>_0x2fa75b()[_0x1be63c(0x3a1)][_0x1be63c(0x318)](_0x389afc)),_0x5efaba('chat:str'+_0x1be63c(0x26a),(_0x423951,_0x5ae13c)=>_0x2fa75b()[_0x1be63c(0x1fb)]['stream'](_0x5ae13c)),_0x5efaba(_0x1be63c(0x33c)+'rt',(_0x25e481,_0x44d8a9)=>_0x2fa75b()[_0x1be63c(0x1fb)][_0x1be63c(0x417)](_0x44d8a9)),_0x5efaba(_0x1be63c(0x210)+'te',async(_0x11800b,_0x53c74d={})=>{const _0x147bb9=_0x1be63c,_0x249858=typeof _0x53c74d[_0x147bb9(0x2dc)]===_0x147bb9(0x1f5)?_0x53c74d[_0x147bb9(0x2dc)]:'info',_0x145568=typeof _0x53c74d[_0x147bb9(0x474)]===_0x147bb9(0x1f5)?_0x53c74d[_0x147bb9(0x474)]:_0x147bb9(0x283)+_0x147bb9(0x32a),_0x55d125=typeof _0x53c74d[_0x147bb9(0x11e)]===_0x147bb9(0x1f5)&&_0x53c74d[_0x147bb9(0x11e)]['trim']()?'renderer'+':'+_0x53c74d[_0x147bb9(0x11e)]['trim']():_0x147bb9(0x283),_0x1ccf5c=_0x53c74d['meta']&&typeof _0x53c74d[_0x147bb9(0x3ad)]===_0x147bb9(0x139)?{...summarizePayload(_0x53c74d['meta']),'context':_0x55d125}:{'context':_0x55d125},_0x124e6b=rendererLogger;if(_0x124e6b?.[_0x249858])await _0x124e6b[_0x249858](_0x145568,_0x1ccf5c);else await _0x124e6b?.[_0x147bb9(0x393)](_0x145568,_0x1ccf5c);if(_0x53c74d[_0x147bb9(0x181)+'ic']===!![]||_0x55d125===_0x147bb9(0x283)+_0x147bb9(0x26d)+_0x147bb9(0x317)){const _0x5684fd=_0x53c74d[_0x147bb9(0x20a)]&&typeof _0x53c74d[_0x147bb9(0x20a)]===_0x147bb9(0x139)?_0x53c74d[_0x147bb9(0x20a)]:_0x53c74d[_0x147bb9(0x3ad)]?.[_0x147bb9(0x20a)]&&typeof _0x53c74d['meta'][_0x147bb9(0x20a)]==='object'?_0x53c74d['meta'][_0x147bb9(0x20a)]:{'level':_0x249858,'category':'renderer','event':_0x55d125,'message':_0x145568,'meta':_0x53c74d[_0x147bb9(0x3ad)]};updateRendererSessionMetrics(_0x5684fd),await diagnosticsWriter?.['writeEve'+'nt'](_0x5684fd,{'captureIncident':String(_0x5684fd['level']||_0x249858)[_0x147bb9(0x168)+_0x147bb9(0x232)]()==='error'||_0x53c74d[_0x147bb9(0x290)+_0x147bb9(0x22b)]===!![]});}return{'ok':!![]};}),_0x5efaba('logs:exp'+_0x1be63c(0x3fc),async(_0x49218f,_0x160fc7={})=>{const _0x4ce3df=_0x1be63c,_0x47a5b0=typeof _0x160fc7[_0x4ce3df(0x490)+'r']===_0x4ce3df(0x1f5)&&_0x160fc7[_0x4ce3df(0x490)+'r'][_0x4ce3df(0x4a3)]()?_0x160fc7['targetDi'+'r']:undefined,_0x4593b9=await exportLogsArchive({'logsDir':configController[_0x4ce3df(0x30b)]['logsDir'],'targetDir':_0x47a5b0,'appVersion':app['getVersi'+'on']()});return mainLogger?.[_0x4ce3df(0x393)](_0x4ce3df(0x2a5)+_0x4ce3df(0x1be),{'path':toHomePath(_0x4593b9[_0x4ce3df(0x216)])}),_0x4593b9;}),_0x5efaba(_0x1be63c(0x115)+_0x1be63c(0x33f)+'ory',async()=>{const _0x30db47=_0x1be63c;return await shell[_0x30db47(0x44c)](configController[_0x30db47(0x30b)][_0x30db47(0x3e9)]),mainLogger?.[_0x30db47(0x393)]('logs\x20dir'+'ectory\x20o'+'pened',{'logsDir':toHomePath(configController[_0x30db47(0x30b)][_0x30db47(0x3e9)])}),{'ok':!![],'path':configController[_0x30db47(0x30b)][_0x30db47(0x3e9)]};}),_0x5efaba(_0x1be63c(0x1de)+'t',async()=>{const _0x4f1f7f=_0x1be63c,_0x3779c6=await readdir(configController['paths']['logsDir'],{'recursive':!![]})[_0x4f1f7f(0x43e)](()=>[]);return _0x3779c6;}),_0x5efaba(_0x1be63c(0x183)+'d',async(_0x539a54,_0x23d53e={})=>{const _0x51b08c=_0x1be63c,_0x33c473=String(_0x23d53e[_0x51b08c(0x216)]||'');if(!_0x33c473)throw new Error('path\x20is\x20'+'required');return readFile(_0x33c473,'utf8');}),_0x5efaba(_0x1be63c(0x1fa)+'ad',async(_0x28d7da,_0x199687)=>{const _0x47c54a=_0x1be63c,_0x573618=Date[_0x47c54a(0x330)]();try{const _0x203c38=await readFile(_0x199687,_0x47c54a(0x4a6));return filesLogger?.[_0x47c54a(0x393)](_0x47c54a(0x253)+_0x47c54a(0x340)+_0x47c54a(0x164),{'path':toHomePath(_0x199687),'bytes':Buffer[_0x47c54a(0x2f2)+'th'](_0x203c38),'durationMs':Date['now']()-_0x573618}),_0x203c38;}catch(_0x386378){filesLogger?.[_0x47c54a(0x1bd)](_0x47c54a(0x253)+_0x47c54a(0x462),{'path':toHomePath(_0x199687),'durationMs':Date[_0x47c54a(0x330)]()-_0x573618,'error':summarizeError(_0x386378)});throw _0x386378;}}),_0x5efaba(_0x1be63c(0x1fa)+'ad-binar'+'y',async(_0x1cd134,_0x4c0760)=>{const _0x5b4147=_0x1be63c,_0x2216e4=Date[_0x5b4147(0x330)]();try{const _0x509a31=await readFile(_0x4c0760);return filesLogger?.[_0x5b4147(0x393)](_0x5b4147(0x3e1)+'ile\x20read'+_0x5b4147(0x4a2)+'ed',{'path':toHomePath(_0x4c0760),'bytes':_0x509a31['byteLeng'+'th'],'durationMs':Date[_0x5b4147(0x330)]()-_0x2216e4}),new Uint8Array(_0x509a31);}catch(_0x5862f3){filesLogger?.['error'](_0x5b4147(0x3e1)+_0x5b4147(0x209)+_0x5b4147(0x35e),{'path':toHomePath(_0x4c0760),'durationMs':Date[_0x5b4147(0x330)]()-_0x2216e4,'error':summarizeError(_0x5862f3)});throw _0x5862f3;}}),_0x5efaba(_0x1be63c(0x21d)+_0x1be63c(0x117),async(_0x5c55bb,_0x58084c={})=>{const _0x443f80=_0x1be63c,_0xc17f1=Date['now']();return await writeFile(_0x58084c['path'],_0x58084c[_0x443f80(0x434)]??'',_0x443f80(0x4a6)),filesLogger?.[_0x443f80(0x393)](_0x443f80(0x336)+_0x443f80(0x23a)+_0x443f80(0x37d),{'path':toHomePath(_0x58084c['path']),'bytes':Buffer[_0x443f80(0x2f2)+'th'](String(_0x58084c[_0x443f80(0x434)]??'')),'durationMs':Date['now']()-_0xc17f1}),{'ok':!![]};}),_0x5efaba(_0x1be63c(0x21d)+'ite-bina'+'ry',async(_0x5f5c20,_0x3144d6={})=>{const _0x46dac5=_0x1be63c,_0x56ae4c=Date[_0x46dac5(0x330)]();await writeFile(_0x3144d6['path'],Buffer[_0x46dac5(0x1cd)](_0x3144d6['content']??[]));const _0x2dded0=await stat(_0x3144d6[_0x46dac5(0x216)])[_0x46dac5(0x43e)](()=>null);return filesLogger?.[_0x46dac5(0x393)](_0x46dac5(0x3e1)+_0x46dac5(0x275)+_0x46dac5(0x2ed)+_0x46dac5(0x164),{'path':toHomePath(_0x3144d6[_0x46dac5(0x216)]),'bytes':_0x2dded0?.['size']??0x0,'durationMs':Date[_0x46dac5(0x330)]()-_0x56ae4c}),{'ok':!![]};}),_0x5efaba('files:se'+_0x1be63c(0x208)+'e',async(_0x18a9b1,_0x3edda3={})=>{const _0x23c760=_0x1be63c,_0x5178c0=await dialog[_0x23c760(0x1e6)+'Dialog'](BrowserWindow['fromWebC'+_0x23c760(0x41a)](_0x18a9b1[_0x23c760(0x486)])??mainWindow,{'title':typeof _0x3edda3[_0x23c760(0x13c)]===_0x23c760(0x1f5)?_0x3edda3[_0x23c760(0x13c)]:undefined,'properties':['openFile',..._0x3edda3[_0x23c760(0x4c8)+_0x23c760(0x47c)]?[_0x23c760(0x4c8)+'ections']:[]],'filters':Array[_0x23c760(0x4cb)](_0x3edda3[_0x23c760(0x2b8)])?_0x3edda3[_0x23c760(0x2b8)]:undefined});return filesLogger?.[_0x23c760(0x393)](_0x23c760(0x173)+_0x23c760(0x37e)+'leted',{'canceled':_0x5178c0[_0x23c760(0x3b1)],'count':_0x5178c0[_0x23c760(0x194)+'s'][_0x23c760(0x1f0)],'paths':_0x5178c0[_0x23c760(0x194)+'s'][_0x23c760(0x24f)](toHomePath)}),{'canceled':_0x5178c0[_0x23c760(0x3b1)],'paths':_0x5178c0[_0x23c760(0x194)+'s']};}),_0x5efaba(_0x1be63c(0x24c)+_0x1be63c(0x15c)+_0x1be63c(0x36b),async(_0x465336,_0x36c14c={})=>{const _0x3ff038=_0x1be63c,_0x54ec55=resolve(String(_0x36c14c[_0x3ff038(0x216)]||'')),_0x2c145e=_0x36c14c['recursiv'+'e']!==![],_0x52bd16=Array[_0x3ff038(0x4cb)](_0x36c14c[_0x3ff038(0x2ef)+'ns'])?_0x36c14c[_0x3ff038(0x2ef)+'ns'][_0x3ff038(0x24f)](_0xdb7067=>String(_0xdb7067)['toLowerC'+_0x3ff038(0x232)]()[_0x3ff038(0x11b)](/^\./,''))[_0x3ff038(0x4df)](Boolean):null,_0x128ad3=Number['isIntege'+'r'](_0x36c14c[_0x3ff038(0x1eb)+'es'])&&_0x36c14c['maxEntri'+'es']>0x0?_0x36c14c[_0x3ff038(0x1eb)+'es']:0xc350,_0x37c120=[];let _0x18830c=![];async function _0x3c0201(_0x52b83c){const _0x294a23=_0x3ff038;if(_0x18830c)return;let _0x3d05ab;try{_0x3d05ab=await readdir(_0x52b83c,{'withFileTypes':!![]});}catch{return;}for(const _0x227750 of _0x3d05ab){if(_0x18830c)return;if(_0x227750['name'][_0x294a23(0x381)+'th']('.'))continue;const _0x1710c8=join(_0x52b83c,_0x227750['name']);if(_0x227750[_0x294a23(0x16c)+_0x294a23(0x2e9)]()){if(_0x2c145e)await _0x3c0201(_0x1710c8);continue;}if(!_0x227750[_0x294a23(0x35a)]())continue;if(_0x52bd16){const _0x20c217=_0x227750[_0x294a23(0x303)][_0x294a23(0x44d)+'xOf']('.'),_0x18f127=_0x20c217>=0x0?_0x227750[_0x294a23(0x303)]['slice'](_0x20c217+0x1)[_0x294a23(0x168)+_0x294a23(0x232)]():'';if(!_0x52bd16[_0x294a23(0x200)](_0x18f127))continue;}if(_0x37c120['length']>=_0x128ad3){_0x18830c=!![];return;}_0x37c120[_0x294a23(0x229)]({'name':_0x227750[_0x294a23(0x303)],'path':_0x1710c8});}}return await _0x3c0201(_0x54ec55),{'path':_0x54ec55,'entries':_0x37c120,'truncated':_0x18830c};}),_0x5efaba(_0x1be63c(0x354)+'lect-dir'+_0x1be63c(0x2d3),async(_0x14223e,_0x33c81d={})=>{const _0x8757ab=_0x1be63c,_0x29649e=await dialog[_0x8757ab(0x1e6)+_0x8757ab(0x18e)](BrowserWindow[_0x8757ab(0x121)+_0x8757ab(0x41a)](_0x14223e['sender'])??mainWindow,{'title':typeof _0x33c81d[_0x8757ab(0x13c)]===_0x8757ab(0x1f5)?_0x33c81d[_0x8757ab(0x13c)]:undefined,'properties':['openDire'+_0x8757ab(0x481)]});return filesLogger?.['info'](_0x8757ab(0x135)+_0x8757ab(0x374)+_0x8757ab(0x4a2)+'ed',{'canceled':_0x29649e[_0x8757ab(0x3b1)],'count':_0x29649e[_0x8757ab(0x194)+'s']['length'],'paths':_0x29649e[_0x8757ab(0x194)+'s'][_0x8757ab(0x24f)](toHomePath)}),{'canceled':_0x29649e[_0x8757ab(0x3b1)],'paths':_0x29649e[_0x8757ab(0x194)+'s']};}),_0x5efaba(_0x1be63c(0x449)+_0x1be63c(0x15b)+_0x1be63c(0x41b),()=>_0x2fa75b()[_0x1be63c(0x449)+'e'][_0x1be63c(0x1cf)+_0x1be63c(0x126)]()),_0x5efaba(_0x1be63c(0x449)+_0x1be63c(0x3ef)+'irectory',async()=>{const _0x1c1912=_0x1be63c,_0x1507f0=await _0x2fa75b()[_0x1c1912(0x449)+'e'][_0x1c1912(0x1cf)+_0x1c1912(0x126)]();return await shell[_0x1c1912(0x44c)](_0x1507f0[_0x1c1912(0x216)]),filesLogger?.[_0x1c1912(0x393)](_0x1c1912(0x449)+'e\x20direct'+_0x1c1912(0x361)+'ed',{'path':toHomePath(_0x1507f0[_0x1c1912(0x216)])}),{'ok':!![],'path':_0x1507f0['path']};}),_0x5efaba(_0x1be63c(0x449)+_0x1be63c(0x405)+_0x1be63c(0x48c),()=>_0x2fa75b()[_0x1be63c(0x449)+'e'][_0x1be63c(0x3e0)+_0x1be63c(0x409)]()),_0x5efaba(_0x1be63c(0x449)+_0x1be63c(0x243)+'shared-c'+_0x1be63c(0x266),(_0x19387b,_0x4ee4d7)=>_0x2fa75b()[_0x1be63c(0x449)+'e'][_0x1be63c(0x32c)+'redConte'+'xt'](_0x4ee4d7)),_0x5efaba(_0x1be63c(0x3a1)+':rename',(_0x27d3b6,_0x1f5724)=>_0x2fa75b()[_0x1be63c(0x3a1)][_0x1be63c(0x2ac)](_0x1f5724)),_0x5efaba('sessions'+':pin',async(_0xa1cb9a,_0x4dd293={})=>{const _0x1ea1c8=_0x1be63c,_0x1f413c=String(_0x4dd293['sessionK'+'ey']||_0x4dd293[_0x1ea1c8(0x46a)]||'')['trim']();if(!_0x1f413c)throw new Error(_0x1ea1c8(0x3b6)+_0x1ea1c8(0x292)+_0x1ea1c8(0x484));const _0x476891=await ensureSessionSqliteStore()[_0x1ea1c8(0x217)+_0x1ea1c8(0x182)+_0x1ea1c8(0x140)](),_0x3472e5=await _0x2fa75b()[_0x1ea1c8(0x3a1)][_0x1ea1c8(0x15d)+_0x1ea1c8(0x161)]([_0x1f413c,..._0x476891[_0x1ea1c8(0x4df)](_0x5a6838=>_0x5a6838!==_0x1f413c)]);return _0x3472e5;}),_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x204),async(_0x18df44,_0x439035={})=>{const _0x25650c=_0x1be63c,_0x2cc7f4=String(_0x439035[_0x25650c(0x3b6)+'ey']||_0x439035[_0x25650c(0x46a)]||'')[_0x25650c(0x4a3)]();if(!_0x2cc7f4)throw new Error(_0x25650c(0x3b6)+_0x25650c(0x292)+_0x25650c(0x484));const _0x2a3d83=await ensureSessionSqliteStore()['getPinne'+_0x25650c(0x182)+_0x25650c(0x140)]();return await _0x2fa75b()[_0x25650c(0x3a1)]['reorderP'+_0x25650c(0x161)](_0x2a3d83['filter'](_0x3c342a=>_0x3c342a!==_0x2cc7f4));}),_0x5efaba(_0x1be63c(0x3a1)+_0x1be63c(0x176)+'-pinned',async(_0x226ac6,_0x5583f9={})=>{const _0x337974=_0x1be63c,_0x99b0c9=Array[_0x337974(0x4cb)](_0x5583f9['keys'])?_0x5583f9[_0x337974(0x291)]:_0x5583f9;return await _0x2fa75b()[_0x337974(0x3a1)][_0x337974(0x15d)+'inned'](_0x99b0c9);}),_0x5efaba(_0x1be63c(0x27e)+_0x1be63c(0x2ce),(_0x572ab7,_0x4476bc)=>_0x2fa75b()[_0x1be63c(0x25e)]['install'](_0x4476bc)),_0x5efaba(_0x1be63c(0x18c)+'t',(_0x3f689,_0x3cfbc1)=>_0x2fa75b()[_0x1be63c(0x36e)][_0x1be63c(0x1d9)](_0x3cfbc1)),_0x5efaba('cron:cre'+_0x1be63c(0x47d),(_0x508313,_0x17992f)=>_0x2fa75b()['cron'][_0x1be63c(0x17f)](_0x17992f)),_0x5efaba(_0x1be63c(0x4c3)+'ate',(_0x558a7d,_0x2bde5e)=>_0x2fa75b()[_0x1be63c(0x36e)]['update'](_0x2bde5e)),_0x5efaba(_0x1be63c(0x2f0)+_0x1be63c(0x16d),(_0x1a31f5,_0xe57785)=>_0x2fa75b()[_0x1be63c(0x36e)][_0x1be63c(0x500)](_0xe57785)),_0x5efaba(_0x1be63c(0x4dc)+_0x1be63c(0x4e2),(_0x3e85b4,_0x10130d)=>_0x2fa75b()[_0x1be63c(0x36e)][_0x1be63c(0x2f7)](_0x10130d)),_0x5efaba('cron:log'+'s',(_0x2152a4,_0x4c6c38)=>_0x2fa75b()[_0x1be63c(0x36e)][_0x1be63c(0x35d)](_0x4c6c38)),_0x5efaba(_0x1be63c(0x467)+_0x1be63c(0x170),async(_0x34927b,_0x27cc80={})=>{const _0x36a185=_0x1be63c,_0x38f482=configController[_0x36a185(0x4c4)+_0x36a185(0x147)+'h'](),_0x4b5d89=JSON[_0x36a185(0x509)](await readFile(_0x38f482,_0x36a185(0x4a6))),_0x46cdbf=_0x4b5d89?.['models']?.[_0x36a185(0x4b8)+'s']&&typeof _0x4b5d89[_0x36a185(0x478)]['provider'+'s']===_0x36a185(0x139)?_0x4b5d89[_0x36a185(0x478)][_0x36a185(0x4b8)+'s']:{},_0x4e40ea=typeof _0x4b5d89?.[_0x36a185(0x3df)]?.[_0x36a185(0x2da)]?.[_0x36a185(0x175)]?.[_0x36a185(0x323)]===_0x36a185(0x1f5)?_0x4b5d89[_0x36a185(0x3df)][_0x36a185(0x2da)]['model'][_0x36a185(0x323)]:'',_0x43319e=String(_0x27cc80[_0x36a185(0x175)]||_0x4e40ea||'');if(!_0x43319e[_0x36a185(0x200)]('/'))throw new Error(_0x36a185(0x4c9)+_0x36a185(0x1e0)+_0x36a185(0x47f)+_0x36a185(0x4bb)+_0x36a185(0x3eb)+'der/mode'+_0x36a185(0x19e));const _0x4a4770=_0x43319e[_0x36a185(0x14d)]('/'),_0x29af96=_0x43319e[_0x36a185(0x34e)](0x0,_0x4a4770),_0x5543c0=_0x43319e[_0x36a185(0x34e)](_0x4a4770+0x1),_0x12271a=_0x46cdbf[_0x29af96];if(!_0x12271a||typeof _0x12271a!==_0x36a185(0x139))throw new Error(_0x36a185(0x4b8)+_0x36a185(0x3ac)+_0x36a185(0x2e0)+'\x20'+_0x29af96);const _0x3f7a22=String(_0x12271a[_0x36a185(0x31b)]||_0x36a185(0x4e0)+_0x36a185(0x324)+_0x36a185(0x293)+'1')[_0x36a185(0x4a3)]()[_0x36a185(0x11b)](/\/$/,''),_0x4f195a=await fetch(_0x3f7a22+('/chat/co'+_0x36a185(0x249)+'s'),{'method':_0x36a185(0x338),'headers':{'content-type':_0x36a185(0x1ad)+_0x36a185(0x44a),'Authorization':_0x36a185(0x4d7)+(_0x12271a[_0x36a185(0x254)]||''),..._0x12271a[_0x36a185(0x349)]&&typeof _0x12271a[_0x36a185(0x349)]===_0x36a185(0x139)?_0x12271a['headers']:{}},'body':JSON[_0x36a185(0x223)+'y']({'model':_0x5543c0,'max_tokens':Number[_0x36a185(0x499)+'r'](_0x27cc80[_0x36a185(0x261)+'s'])?_0x27cc80[_0x36a185(0x261)+'s']:0x400,'temperature':typeof _0x27cc80[_0x36a185(0x494)+_0x36a185(0x3fb)]==='number'?_0x27cc80[_0x36a185(0x494)+'ure']:undefined,'messages':Array[_0x36a185(0x4cb)](_0x27cc80['messages'])?_0x27cc80[_0x36a185(0x14c)]:[]}),'signal':AbortSignal[_0x36a185(0x271)](Number[_0x36a185(0x499)+'r'](_0x27cc80[_0x36a185(0x2c7)+'s'])?_0x27cc80[_0x36a185(0x2c7)+'s']:0x1d4c0)});if(!_0x4f195a['ok']){const _0x3d7935=await _0x4f195a[_0x36a185(0x413)]();throw new Error(_0x36a185(0x41c)+_0x36a185(0x1ed)+_0x4f195a[_0x36a185(0x4f1)]+':\x20'+_0x3d7935[_0x36a185(0x34e)](0x0,0x190));}const _0x3ce146=_0x4f195a[_0x36a185(0x349)][_0x36a185(0x3d0)]('request-'+'id'),_0x493f54=await _0x4f195a[_0x36a185(0x504)](),_0x577da9=_0x493f54?.[_0x36a185(0x149)]?.[0x0]?.['message']??{};if(_0x3ce146){const _0x363f5d=typeof _0x27cc80[_0x36a185(0x13c)]==='string'&&_0x27cc80[_0x36a185(0x13c)][_0x36a185(0x4a3)]()?_0x27cc80[_0x36a185(0x13c)][_0x36a185(0x4a3)]():Array[_0x36a185(0x4cb)](_0x27cc80[_0x36a185(0x14c)])?String([..._0x27cc80[_0x36a185(0x14c)]][_0x36a185(0x4cd)]()[_0x36a185(0x2d1)](_0x26ae49=>_0x26ae49?.['role']==='user')?.[_0x36a185(0x434)]||'')[_0x36a185(0x4a3)]():'';_0x363f5d&&Promise[_0x36a185(0x26c)](requestIdHooks?.[_0x36a185(0x222)+_0x36a185(0x459)+'Event']?.({'requestId':_0x3ce146,'title':_0x363f5d,'source':'provider'+'_respons'+'e','model':_0x493f54?.[_0x36a185(0x175)]||_0x5543c0,'provider':_0x29af96,'timestamp':Date[_0x36a185(0x330)]()}))[_0x36a185(0x43e)](_0x10fbbf=>{const _0x11a0d6=_0x36a185;mainLogger?.[_0x11a0d6(0x3d4)]?.(_0x11a0d6(0x49e)+_0x11a0d6(0x40d)+_0x11a0d6(0x1b3)+_0x11a0d6(0x41f)+_0x11a0d6(0x18d)+_0x11a0d6(0x390),{'error':_0x10fbbf?.[_0x11a0d6(0x474)]||String(_0x10fbbf)});});}return{'content':extractModelMessageContent(_0x577da9[_0x36a185(0x434)]),'reasoning':typeof _0x577da9[_0x36a185(0x4e7)+_0x36a185(0x33e)+'t']===_0x36a185(0x1f5)?_0x577da9['reasonin'+_0x36a185(0x33e)+'t']:'','model':_0x493f54?.[_0x36a185(0x175)]||_0x5543c0};}),_0x5efaba('models:s'+'ettings',()=>_0x2fa75b()['models'][_0x1be63c(0x2ae)]()),_0x5efaba(_0x1be63c(0x496)+_0x1be63c(0x4d8)+'ngs',(_0x51a017,_0x5b6f3b)=>_0x2fa75b()['models'][_0x1be63c(0x399)+_0x1be63c(0x415)](_0x5b6f3b)),_0x5efaba('models:s'+_0x1be63c(0x4f6)+_0x1be63c(0x2a9)+_0x1be63c(0x2a7),(_0x2309c3,_0x1ff600)=>_0x2fa75b()[_0x1be63c(0x478)]['setSelec'+'tedModel'+_0x1be63c(0x118)+'re'](_0x1ff600)),_0x5efaba(_0x1be63c(0x496)+'et-self-'+_0x1be63c(0x151),(_0x186fab,_0x32303a)=>_0x2fa75b()[_0x1be63c(0x478)][_0x1be63c(0x43d)+_0x1be63c(0x196)+_0x1be63c(0x165)](_0x32303a)),_0x5efaba(_0x1be63c(0x496)+_0x1be63c(0x28d)+'model-id',()=>_0x2fa75b()[_0x1be63c(0x478)][_0x1be63c(0x12d)+_0x1be63c(0x4a0)]()),_0x5efaba(_0x1be63c(0x467)+_0x1be63c(0x11f)+'dels',()=>_0x2fa75b()[_0x1be63c(0x478)][_0x1be63c(0x22f)+'dels']()),_0x5efaba(_0x1be63c(0x221)+_0x1be63c(0x45f)+_0x1be63c(0x468)+_0x1be63c(0x2bb),async()=>{const _0x5c030=_0x1be63c,_0x189a0d=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController[_0x5c030(0x3f0)+_0x5c030(0x44e)+'ns'](),{'ok':!![],'syncedAt':new Date()['toISOStr'+'ing'](),'manifest':_0x189a0d,'status':await getRuntimeResourceStatus()};}),_0x5efaba('runtime:'+_0x1be63c(0x2f5)+_0x1be63c(0x3bb),async()=>getRuntimeResourceStatus());}async function boot(){const _0x3c4025=_0x5c8109;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x3c4025(0x25d)](shellConfig['productN'+'ame']),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x3c4025(0x30b)],_0x3c4025(0x311)),ipcLogger=createShellLogger(configController[_0x3c4025(0x30b)],_0x3c4025(0x406)),filesLogger=createShellLogger(configController[_0x3c4025(0x30b)],_0x3c4025(0x404)),rendererLogger=createShellLogger(configController[_0x3c4025(0x30b)],_0x3c4025(0x283)),productRuntime=await loadProductRuntime();const _0x5b0165=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController['paths'][_0x3c4025(0x3e9)],'appContext':{'productName':shellConfig[_0x3c4025(0x1bf)+'ame'],'appId':shellConfig[_0x3c4025(0x192)],'appVersion':app[_0x3c4025(0x234)+'on'](),'platform':process[_0x3c4025(0x379)],'arch':process[_0x3c4025(0x4b6)],..._0x5b0165?{'apiEndpoint':_0x5b0165}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController[_0x3c4025(0x30b)]['logsDir'],'diagnosticsWriter':diagnosticsWriter});const _0x1abdcd=await loadCreateUpdateController({'logger':mainLogger});updateController=_0x1abdcd({'shellConfig':shellConfig,'appName':()=>app[_0x3c4025(0x303)],'appVersion':()=>app[_0x3c4025(0x234)+'on'](),'broadcast':broadcast,'logger':mainLogger,'prepareQuitAndInstall':async()=>{const _0x1fe578=_0x3c4025;await stopGatewayBeforeQuit(_0x1fe578(0x39d)+_0x1fe578(0x152)+_0x1fe578(0x162));}}),updateController['initiali'+'ze'](),registerProcessLogHooks(),registerProtocolHandlers(),installApplicationMenu(),mainLogger?.[_0x3c4025(0x393)](_0x3c4025(0x33b)+_0x3c4025(0x367)+_0x3c4025(0x380)+'ed',{'appVersion':app[_0x3c4025(0x234)+'on'](),'electronVersion':process[_0x3c4025(0x333)][_0x3c4025(0x33b)],'nodeVersion':process['versions'][_0x3c4025(0x1fd)],'chromeVersion':process[_0x3c4025(0x333)]['chrome'],'platform':process[_0x3c4025(0x379)],'arch':process[_0x3c4025(0x4b6)],'mode':getMode(),'projectRoot':shellConfig[_0x3c4025(0x4ba)+_0x3c4025(0x23d)],'configPath':shellConfig['configPa'+'th'],'dataDir':shellConfig[_0x3c4025(0x4fc)],'devToolsEnabled':isDevToolsEnabled(),'devToolsFlagPath':resolveDevToolsFlagPath(),'logsDir':configController['paths'][_0x3c4025(0x3e9)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||APP_RENDERER_ENTRY_URL}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app['getVersi'+'on'](),'productRuntimeHooks':gatewayRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime[_0x3c4025(0x137)+'roductCo'+_0x3c4025(0x3b4)]===_0x3c4025(0x1dc)&&await productRuntime[_0x3c4025(0x137)+_0x3c4025(0x49c)+_0x3c4025(0x3b4)]({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x3c4025(0x137)+_0x3c4025(0x436)+'ta']==='function'?await productRuntime[_0x3c4025(0x137)+_0x3c4025(0x436)+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()[_0x3c4025(0x296)+_0x3c4025(0x238)+'d'](),attachGatewayBroadcastHandlers(gatewayController),ensureSessionDataService(),await installIpcHandlers(),ipcHandlersInstalled=!![],installAppRendererProtocolHandler(),installClawspaceProtocolHandler(),registerShellShortcuts(),await ensureMainWindow(),await gatewayController[_0x3c4025(0x373)](),updateController['startBac'+'kgroundC'+_0x3c4025(0x127)](),mainLogger?.['info'](_0x3c4025(0x33b)+_0x3c4025(0x367)+_0x3c4025(0x2d9)+_0x3c4025(0x37d)),updateController[_0x3c4025(0x3f6)+_0x3c4025(0x23c)+_0x3c4025(0x2ce)]?.();}function registerProcessLogHooks(){const _0x549e55=_0x5c8109;if(registerProcessLogHooks[_0x549e55(0x443)+'ed'])return;registerProcessLogHooks[_0x549e55(0x443)+'ed']=!![],process['on'](_0x549e55(0x306)+_0x549e55(0x3a7)+'n',_0x29995c=>{const _0x43e988=_0x549e55;mainLogger?.['error'](_0x43e988(0x306)+_0x43e988(0x477)+'on',summarizeError(_0x29995c));}),process['on'](_0x549e55(0x1a5)+_0x549e55(0x480)+'on',_0x218ab7=>{const _0x440609=_0x549e55;mainLogger?.['error'](_0x440609(0x1a5)+_0x440609(0x284)+_0x440609(0x3a6),summarizeError(_0x218ab7));}),app['on']('render-p'+_0x549e55(0x44b)+_0x549e55(0x308),(_0x4e05ae,_0x490373,_0x520925)=>{const _0x4fc1e5=_0x549e55;mainLogger?.[_0x4fc1e5(0x1bd)](_0x4fc1e5(0x283)+_0x4fc1e5(0x2b6)+'\x20gone',{'url':_0x490373[_0x4fc1e5(0x289)](),'details':_0x520925});}),app['on'](_0x549e55(0x26b)+_0x549e55(0x389)+'ne',(_0x5c789f,_0x26c671)=>{const _0x170b2b=_0x549e55;mainLogger?.['error'](_0x170b2b(0x4f7)+'ocess\x20go'+'ne',{'details':_0x26c671});});}async function stopGatewayBeforeQuit(_0x50e8fe){const _0x4c3820=_0x5c8109;if(!gatewayController)return;const _0x5882e3=gatewayController,_0x13887f=Date[_0x4c3820(0x330)]();mainLogger?.[_0x4c3820(0x393)](_0x50e8fe+(_0x4c3820(0x3af)+_0x4c3820(0x420)+'ay'),{'event':_0x50e8fe===_0x4c3820(0x39d)+_0x4c3820(0x152)+'g\x20update'?'update_g'+_0x4c3820(0x138)+_0x4c3820(0x14f)+'t':undefined}),await _0x5882e3[_0x4c3820(0x3a4)](),gatewayController===_0x5882e3&&(gatewayController=null),mainLogger?.[_0x4c3820(0x393)](_0x50e8fe+(':\x20gatewa'+_0x4c3820(0x3fd)+'d'),{'event':_0x50e8fe===_0x4c3820(0x39d)+'nstallin'+_0x4c3820(0x162)?_0x4c3820(0x365)+_0x4c3820(0x138)+_0x4c3820(0x438):undefined,'elapsedMs':Date['now']()-_0x13887f});}app['on'](_0x5c8109(0x4f4)+_0x5c8109(0x29b)+'d',()=>{const _0x1ba85f=_0x5c8109;if(process['platform']!==_0x1ba85f(0x3cc))app[_0x1ba85f(0x3c2)]();}),app['on'](_0x5c8109(0x362),(_0x3f5137,_0x576e93)=>{const _0xeeeb16=_0x5c8109;_0x3f5137[_0xeeeb16(0x282)+_0xeeeb16(0x128)](),mainLogger?.[_0xeeeb16(0x3d4)](_0xeeeb16(0x345)+_0xeeeb16(0x1f6)+'l\x20event',{'url':summarizeProtocolUrl(_0x576e93),'hasShellConfig':Boolean(shellConfig)}),dispatchProtocolUrl(_0x576e93);});const gotSingleInstanceLock=app[_0x5c8109(0x2d2)+'ingleIns'+_0x5c8109(0x23e)+'k']();!gotSingleInstanceLock?app[_0x5c8109(0x3c2)]():app['on'](_0x5c8109(0x19f)+_0x5c8109(0x418),(_0x169f3c,_0x22ca98)=>{const _0x2f802d=_0x5c8109,_0x2d8501=extractProtocolUrlFromArgs(_0x22ca98);mainLogger?.[_0x2f802d(0x3d4)](_0x2f802d(0x19f)+_0x2f802d(0x493)+_0x2f802d(0x258),{'argc':Array['isArray'](_0x22ca98)?_0x22ca98[_0x2f802d(0x1f0)]:0x0,'hasShellConfig':Boolean(shellConfig),'hasProtocolUrl':Boolean(_0x2d8501),'protocolUrl':_0x2d8501?summarizeProtocolUrl(_0x2d8501):undefined});if(!resolveProtocolScheme()){pendingProtocolArgs=_0x22ca98;return;}if(_0x2d8501){dispatchProtocolUrl(_0x2d8501);return;}const _0x2bd432=getUsableMainWindow();if(_0x2bd432){if(_0x2bd432[_0x2f802d(0x48d)+_0x2f802d(0x479)]())_0x2bd432[_0x2f802d(0x20b)]();_0x2bd432[_0x2f802d(0x2e6)](),_0x2bd432['focus']();}});app['on'](_0x5c8109(0x397),async()=>{const _0x55b2d7=_0x5c8109;if(isQuitting){app[_0x55b2d7(0x3c2)]();return;}updateController?.[_0x55b2d7(0x24d)+_0x55b2d7(0x424)+_0x55b2d7(0x3f9)](_0x55b2d7(0x1d8)+_0x55b2d7(0x33a)),BrowserWindow[_0x55b2d7(0x278)+_0x55b2d7(0x35b)]()[_0x55b2d7(0x1f0)]===0x0&&shellConfig&&await ensureMainWindow();}),app['on'](_0x5c8109(0x2fe)+_0x5c8109(0x403),_0x1457fc=>{const _0x89a1ec=_0x5c8109;isQuitting=!![],updateController?.[_0x89a1ec(0x148)+_0x89a1ec(0x400)](),terminalManager?.[_0x89a1ec(0x236)](),terminalManager=null,productRuntimeHooks?.['dispose']?.();for(const _0x26a6f3 of Object[_0x89a1ec(0x291)](productRuntimeHooks))delete productRuntimeHooks[_0x26a6f3];requestIdHooks?.[_0x89a1ec(0x236)]?.();for(const _0x329f4c of Object[_0x89a1ec(0x291)](requestIdHooks))delete requestIdHooks[_0x329f4c];if(updateController?.[_0x89a1ec(0x371)+_0x89a1ec(0x328)+'te']?.()){mainLogger?.[_0x89a1ec(0x393)]('before\x20q'+'uit:\x20upd'+_0x89a1ec(0x3cd)+_0x89a1ec(0x2f8)+_0x89a1ec(0x1c6)+_0x89a1ec(0x1ca)+_0x89a1ec(0x4d3)+_0x89a1ec(0x45b)+_0x89a1ec(0x2db));return;}if(!gatewayController)return;_0x1457fc[_0x89a1ec(0x282)+_0x89a1ec(0x128)](),void stopGatewayBeforeQuit(_0x89a1ec(0x28c)+_0x89a1ec(0x403))[_0x89a1ec(0x463)](()=>{const _0x2fbe16=_0x89a1ec;app[_0x2fbe16(0x3c2)]();});}),app['on']('will-qui'+'t',()=>{const _0x1841a0=_0x5c8109;globalShortcut[_0x1841a0(0x212)+'er'](DEVTOOLS_ACCELERATOR);}),app['whenRead'+'y']()[_0x5c8109(0x487)](boot)[_0x5c8109(0x43e)](_0x15d4f4=>{const _0x376f3a=_0x5c8109;bootError=_0x15d4f4 instanceof Error?_0x15d4f4[_0x376f3a(0x474)]:String(_0x15d4f4),mainLogger?.[_0x376f3a(0x1bd)](_0x376f3a(0x33b)+_0x376f3a(0x367)+_0x376f3a(0x497)+'d',summarizeError(_0x15d4f4)),console[_0x376f3a(0x1bd)](_0x376f3a(0x421)+_0x376f3a(0x40b)+_0x376f3a(0x3bf)+_0x376f3a(0x469)+_0x376f3a(0x25c)+'in',_0x15d4f4);});
|
|
1
|
+
const _0x209495=_0x1223;(function(_0x10035c,_0x1003f2){const _0x41f6df=_0x1223,_0x172210=_0x10035c();while(!![]){try{const _0xd621d4=-parseInt(_0x41f6df(0x2e4))/0x1+-parseInt(_0x41f6df(0x15c))/0x2+parseInt(_0x41f6df(0x3a4))/0x3+-parseInt(_0x41f6df(0x49a))/0x4+-parseInt(_0x41f6df(0x215))/0x5*(-parseInt(_0x41f6df(0x276))/0x6)+parseInt(_0x41f6df(0x338))/0x7*(-parseInt(_0x41f6df(0x390))/0x8)+parseInt(_0x41f6df(0x24c))/0x9;if(_0xd621d4===_0x1003f2)break;else _0x172210['push'](_0x172210['shift']());}catch(_0x52d2b5){_0x172210['push'](_0x172210['shift']());}}}(_0x1e97,0xf2289));import _0x1e84bc from'electron';import{fileURLToPath,pathToFileURL}from'node:url';import{dirname,join,resolve,sep}from'node:path';import{createReadStream,existsSync,statSync}from'node:fs';import{readFile,readdir,stat,writeFile}from'node:fs/promises';import{spawn}from'node:child_process';import{Readable}from'node:stream';import{loadShellConfig}from'@wujie-shell/config';import{formatLogLine}from'@wujie-shell/logger';import{createConfigController}from'../config/controller.mjs';import{createGatewayController}from'../gateway/controller.mjs';import{deleteManagedSkill,importSkillZip,updateManagedSkillConfig}from'../skills/import.mjs';import{deleteMarketSkillRegistryEntry,importMarketSkillZip}from'../skills/market.mjs';import{createAgentSessionsMapStore}from'../sessions/agent-sessions-map-store.mjs';import{createSessionDataService}from'../sessions/session-data-service.mjs';import{createSessionSqliteStore}from'../sessions/session-sqlite-store.mjs';import{createTerminalManager}from'../terminal/manager.mjs';import{createShellLogger,exportLogsArchive,getShellLoggerLevel,setShellLoggerLevel,summarizeError,summarizePayload,summarizeText,toHomePath}from'../common/logging.mjs';import{createDiagnosticsWriter,diagnosticEventFromError}from'../common/diagnostics.mjs';import{setRuntimeLoggerLevel}from'../common/runtime-logger.mjs';import{createUserEventWriter}from'../common/user-events.mjs';import{createConnectorController}from'../connectors/controller.mjs';import{resolveRuntimeKdocsCliCommand}from'../connectors/kdocs-cli.mjs';import{createGeneratedFilesStore}from'../files/generated-files-store.mjs';import{registerFileHandlers}from'../files/handlers.mjs';import{registerProductLogHandlers}from'../log-reporting/handlers.mjs';import{resolveWujieApiEndpoint}from'../log-reporting/report-logs.mjs';import{extractModelMessageContent,registerModelHandlers}from'../models/handlers.mjs';import{createPreferencesStore}from'../preferences/store.mjs';import{registerRequestIdHandlers}from'../request-id/handlers.mjs';import{loadRuntimeInfo,prepareRuntime,resolveRuntimeRoot,getRuntimeSpawnContext,resolveRuntimeLarkCliCommand,runClawOnce}from'../runtime/index.mjs';import{loadCreateUpdateController}from'../updates/loader.mjs';import{createProtocolUrlState}from'./protocol-url-state.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,'preload.'+_0x209495(0x2ab)),{app,BrowserWindow,Menu,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x1e84bc,DEVTOOLS_ACCELERATOR=_0x209495(0x400)+_0x209495(0x23e)+_0x209495(0x49f),APP_RENDERER_PROTOCOL_SCHEME='app',APP_RENDERER_PROTOCOL_HOST='-',APP_RENDERER_ENTRY_URL=APP_RENDERER_PROTOCOL_SCHEME+_0x209495(0x2c1)+APP_RENDERER_PROTOCOL_HOST+(_0x209495(0x1a7)+'tml'),CLAWSPACE_PROTOCOL_SCHEME=_0x209495(0x4f1)+'e',DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!==_0x209495(0x444)+'on',IPC_SLOW_REQUEST_THRESHOLD_MS=0x1f4,SHELL_LOG_LEVELS=new Set([_0x209495(0x18e),_0x209495(0x1db),'info','debug']),LOCAL_FILE_MIME_TYPES=new Map([['.html',_0x209495(0x3ea)+'l;\x20chars'+_0x209495(0x1cc)],[_0x209495(0x457),_0x209495(0x3ea)+'l;\x20chars'+_0x209495(0x1cc)],['.txt',_0x209495(0x4d7)+_0x209495(0x22b)+_0x209495(0x1ab)+'8'],['.md',_0x209495(0x363)+'kdown;\x20c'+_0x209495(0x1c1)+_0x209495(0x32a)],[_0x209495(0x1ac),_0x209495(0x439)+_0x209495(0x1c0)+'script;\x20'+_0x209495(0x3eb)+_0x209495(0x4c8)],['.mjs',_0x209495(0x439)+_0x209495(0x1c0)+_0x209495(0x2fc)+_0x209495(0x3eb)+_0x209495(0x4c8)],[_0x209495(0x2c7),_0x209495(0x3f2)+_0x209495(0x28c)+'t=utf-8'],[_0x209495(0x24b),_0x209495(0x439)+'ion/json'+_0x209495(0x28c)+'t=utf-8'],['.map',_0x209495(0x439)+'ion/json'+';\x20charse'+_0x209495(0x31a)],[_0x209495(0x327),_0x209495(0x289)+'eg'],[_0x209495(0x27b),'image/jp'+'eg'],[_0x209495(0x355),_0x209495(0x1f8)+'g'],[_0x209495(0x1d2),_0x209495(0x305)+'f'],['.bmp',_0x209495(0x493)+'p'],['.svg','image/sv'+_0x209495(0x471)],[_0x209495(0x2fe),'image/we'+'bp'],[_0x209495(0x4cf),'image/x-'+_0x209495(0x37b)],[_0x209495(0x4c6),'video/mp'+'4'],['.mov',_0x209495(0x453)+_0x209495(0x409)],[_0x209495(0x296),_0x209495(0x2ef)+_0x209495(0x199)],[_0x209495(0x210),_0x209495(0x2ef)+_0x209495(0x4bd)],[_0x209495(0x36d),_0x209495(0x2c6)+'bm'],[_0x209495(0x4b7),_0x209495(0x17b)+'eg'],[_0x209495(0x10f),_0x209495(0x1c4)+'v'],['.m4a',_0x209495(0x17b)+'4'],['.aac',_0x209495(0x24d)+'c'],[_0x209495(0x30d),_0x209495(0x2a5)+'g'],[_0x209495(0x197),_0x209495(0x2cc)+'ac'],['.woff',_0x209495(0x143)+'f'],[_0x209495(0x47a),_0x209495(0x143)+'f2'],[_0x209495(0x18a),'font/ttf'],[_0x209495(0x4ae),_0x209495(0x15f)],[_0x209495(0x4de),_0x209495(0x439)+_0x209495(0x47e)+_0x209495(0x171)+_0x209495(0x131)],[_0x209495(0x1da),_0x209495(0x439)+_0x209495(0x1bb)]]);function _0x1223(_0x5bc59c,_0x335a8a){_0x5bc59c=_0x5bc59c-0x10f;const _0x1e97aa=_0x1e97();let _0x12230b=_0x1e97aa[_0x5bc59c];return _0x12230b;}protocol['register'+_0x209495(0x490)+_0x209495(0x369)+'ged']([{'scheme':APP_RENDERER_PROTOCOL_SCHEME,'privileges':{'secure':!![],'standard':!![],'supportFetchAPI':!![],'corsEnabled':!![]}},{'scheme':CLAWSPACE_PROTOCOL_SCHEME,'privileges':{'secure':!![],'standard':!![],'supportFetchAPI':!![],'corsEnabled':!![]}}]);let mainWindow=null,shellConfig=null,configController=null,gatewayController=null,bootError=null,mainLogger=null,ipcLogger=null,filesLogger=null,rendererLogger=null,terminalManager=null,connectorController=null,generatedFilesStore=null,productRuntime=null,productRuntimeHooks={},requestIdHooks={},gatewayRuntimeHooks={},sessionSqliteStore=null,sessionDataService=null,diagnosticsWriter=null,userEventWriter=null,isQuitting=![],updateController=null,pendingProtocolArgs=null;const protocolUrlState=createProtocolUrlState();let createWindowPromise=null,ipcHandlersInstalled=![];const rendererSessionMetrics={'inactiveEventCount':0x0,'inactiveBodyReadSuppressedCount':0x0},RENDERER_SESSION_METRIC_LOG_INTERVAL=0x19;function isProductionMode(){const _0x463187=_0x209495;return process.env.NODE_ENV===_0x463187(0x444)+'on';}function resolveDevToolsFlagPath(){const _0x2f0a60=_0x209495;return shellConfig?.[_0x2f0a60(0x121)]?join(shellConfig[_0x2f0a60(0x121)],_0x2f0a60(0x21e)+_0x2f0a60(0x1fe)):'';}function isDevToolsEnabled(){if(!isProductionMode())return!![];const _0x73d405=resolveDevToolsFlagPath();return Boolean(_0x73d405)&&existsSync(_0x73d405);}function attachGatewayBroadcastHandlers(_0x69c379){const _0x4cbc82=_0x209495;for(const _0x16b415 of[_0x4cbc82(0x421)+_0x4cbc82(0x226),'gateway-'+_0x4cbc82(0x2de),_0x4cbc82(0x4f3)+_0x4cbc82(0x4bc)+'t','agent-ev'+'ent',_0x4cbc82(0x33a)+_0x4cbc82(0x45b),_0x4cbc82(0x1fa)+_0x4cbc82(0x1e2)+'n']){_0x69c379['on'](_0x16b415,_0x3db0a9=>broadcast(_0x16b415,_0x3db0a9));}}function ensureSessionSqliteStore(){const _0x4d9a36=_0x209495;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error(_0x4d9a36(0x3cb)+_0x4d9a36(0x479)+'ig\x20is\x20no'+'t\x20initia'+_0x4d9a36(0x21b));return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController['resolveS'+_0x4d9a36(0x3ca)]()}),sessionSqliteStore;}function ensureSessionDataService(){const _0x5ed8cf=_0x209495;if(sessionDataService)return sessionDataService['attachGa'+_0x5ed8cf(0x3fb)+_0x5ed8cf(0x1c7)]?.(gatewayController),sessionDataService;if(!configController)throw new Error(_0x5ed8cf(0x3cb)+_0x5ed8cf(0x479)+_0x5ed8cf(0x2cd)+_0x5ed8cf(0x38a)+_0x5ed8cf(0x21b));return sessionDataService=createSessionDataService({'stateDir':configController[_0x5ed8cf(0x137)+_0x5ed8cf(0x3ca)](),'sessionSqliteStore':ensureSessionSqliteStore(),'gatewayController':gatewayController,'broadcast':broadcast,'logger':mainLogger}),sessionDataService[_0x5ed8cf(0x14c)+_0x5ed8cf(0x3b1)+_0x5ed8cf(0x4cc)]?.(_0x24606e=>{const _0x23c04f=_0x5ed8cf;broadcast('sessions'+_0x23c04f(0x119)+_0x23c04f(0x350)+'hanged',_0x24606e);}),sessionDataService[_0x5ed8cf(0x339)+_0x5ed8cf(0x3fb)+_0x5ed8cf(0x1c7)]?.(),sessionDataService;}function updateRendererSessionMetrics(_0xd79ca1){const _0x45a603=_0x209495;if(!_0xd79ca1||typeof _0xd79ca1!==_0x45a603(0x18c))return;if(_0xd79ca1[_0x45a603(0x377)]!==_0x45a603(0x2c5)+_0x45a603(0x486)+'_body_re'+_0x45a603(0x161)+_0x45a603(0x424))return;const _0xc84fdb=_0xd79ca1[_0x45a603(0x1c5)]&&typeof _0xd79ca1['meta']===_0x45a603(0x18c)?_0xd79ca1['meta']:{},_0x199548=Number(_0xc84fdb[_0x45a603(0x315)]);if(!Number[_0x45a603(0x3aa)](_0x199548)||_0x199548<=rendererSessionMetrics[_0x45a603(0x2c5)+_0x45a603(0x284)+_0x45a603(0x2e9)+_0x45a603(0x246)])return;rendererSessionMetrics[_0x45a603(0x2c5)+'BodyRead'+_0x45a603(0x2e9)+_0x45a603(0x246)]=_0x199548,rendererSessionMetrics['inactive'+_0x45a603(0x420)+'nt']=Math['max'](rendererSessionMetrics[_0x45a603(0x2c5)+_0x45a603(0x420)+'nt'],_0x199548);if(_0x199548!==0x1&&_0x199548%RENDERER_SESSION_METRIC_LOG_INTERVAL!==0x0)return;mainLogger?.[_0x45a603(0x448)]?.(_0x45a603(0x31c)+_0x45a603(0x14b)+_0x45a603(0x3dd)+_0x45a603(0x3ff),{'metric':'inactive'+_0x45a603(0x486)+_0x45a603(0x28b)+'ad_suppr'+_0x45a603(0x424),'inactiveEventCount':rendererSessionMetrics[_0x45a603(0x2c5)+_0x45a603(0x420)+'nt'],'inactiveBodyReadSuppressedCount':rendererSessionMetrics[_0x45a603(0x2c5)+_0x45a603(0x284)+'Suppress'+'edCount'],'changeKind':typeof _0xc84fdb['changeKi'+'nd']==='string'?_0xc84fdb['changeKi'+'nd']:null,'origin':typeof _0xc84fdb['origin']===_0x45a603(0x40e)?_0xc84fdb[_0x45a603(0x324)]:null});}function ensureGeneratedFilesStore(){const _0x13701c=_0x209495;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error('wujie-sh'+_0x13701c(0x479)+_0x13701c(0x2cd)+'t\x20initia'+_0x13701c(0x21b));return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController['resolveS'+_0x13701c(0x3ca)]()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0x5bb182=_0x209495;if(!gatewayController&&(!shellConfig||!configController))throw new Error(bootError?_0x5bb182(0x3cb)+_0x5bb182(0x3a9)+'\x20failed:'+'\x20'+bootError:_0x5bb182(0x3cb)+_0x5bb182(0x4ea)+_0x5bb182(0x12b)+_0x5bb182(0x291)+'alized');return!gatewayController&&(mainLogger?.['warn'](_0x5bb182(0x231)+'controll'+_0x5bb182(0x4c5)+'ng;\x20recr'+'eating'),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x5bb182(0x172)+'on'](),'productRuntimeHooks':gatewayRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController),ensureSessionDataService()),await gatewayController['start'](),gatewayController;}function getMode(){const _0x2fc6e5=_0x209495;return process.env.VITE_DEV_SERVER_URL?_0x2fc6e5(0x2f0):'prod';}function isGatewayNotInitializedError(_0x36ee89){const _0x217ef2=_0x209495;return _0x36ee89 instanceof Error&&_0x36ee89[_0x217ef2(0x2b6)]===_0x217ef2(0x3cb)+_0x217ef2(0x4ea)+_0x217ef2(0x12b)+_0x217ef2(0x291)+_0x217ef2(0x3e8);}function revealPathInFolder(_0x34acc3){const _0x317a38=_0x209495,_0x48b97f=String(_0x34acc3||'')['trim']();if(!_0x48b97f)return{'ok':![],'error':'path\x20is\x20'+_0x317a38(0x4e0)};return shell[_0x317a38(0x4d8)+_0x317a38(0x2f7)](_0x48b97f),{'ok':!![]};}function resolveProjectRoot(){const _0x3132e7=_0x209495;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app[_0x3132e7(0x280)+'ed']&&process[_0x3132e7(0x3c3)+_0x3132e7(0x247)])return join(process[_0x3132e7(0x3c3)+_0x3132e7(0x247)],'app.asar');return resolve(process[_0x3132e7(0x4a0)]());}function resolveProtocolScheme(){const _0x489d83=_0x209495;return typeof shellConfig?.[_0x489d83(0x2e7)]==='string'?shellConfig[_0x489d83(0x2e7)]['trim']():'';}function summarizeProtocolUrl(_0x8b132b){const _0x5eb8d0=_0x209495,_0x1d0e56=typeof _0x8b132b===_0x5eb8d0(0x40e)?_0x8b132b:'';if(!_0x1d0e56)return summarizeText('',0xa0);try{const _0x21d1e0=new URL(_0x1d0e56);for(const _0x4fd16e of[_0x5eb8d0(0x1f4),_0x5eb8d0(0x2b8)+'e','code',_0x5eb8d0(0x44f),_0x5eb8d0(0x118)]){_0x21d1e0[_0x5eb8d0(0x4b9)+_0x5eb8d0(0x264)][_0x5eb8d0(0x38f)](_0x4fd16e)&&_0x21d1e0[_0x5eb8d0(0x4b9)+_0x5eb8d0(0x264)][_0x5eb8d0(0x39a)](_0x4fd16e,_0x5eb8d0(0x4e7)+'D]');}return summarizeText(_0x21d1e0['toString'](),0xa0);}catch{return summarizeText(_0x1d0e56,0xa0);}}function extractProtocolUrlFromArgs(_0x5885ee=[]){const _0x254e88=_0x209495,_0x4bd619=resolveProtocolScheme();if(!_0x4bd619)return null;return _0x5885ee[_0x254e88(0x189)](_0x4e7b51=>{const _0x40bd34=_0x254e88;if(typeof _0x4e7b51!==_0x40bd34(0x40e))return![];return _0x4e7b51[_0x40bd34(0x4a2)+'th'](_0x4bd619+_0x40bd34(0x2c1));})||null;}function getUsableMainWindow(){const _0x4c1fa8=_0x209495;if(!mainWindow)return null;if(mainWindow['isDestro'+'yed']())return mainWindow=null,protocolUrlState['setRende'+'rerReady'](![]),null;if(mainWindow[_0x4c1fa8(0x19a)+_0x4c1fa8(0x1c7)]?.[_0x4c1fa8(0x2c4)+_0x4c1fa8(0x130)]?.())return mainWindow=null,protocolUrlState['setRende'+_0x4c1fa8(0x45c)](![]),null;return mainWindow;}async function ensureMainWindow(){const _0x12a596=_0x209495,_0x3c30fa=getUsableMainWindow();if(_0x3c30fa)return _0x3c30fa;if(!shellConfig||!ipcHandlersInstalled)return null;return!createWindowPromise&&(createWindowPromise=createWindow()[_0x12a596(0x111)](()=>{createWindowPromise=null;})),await createWindowPromise,getUsableMainWindow();}function restoreMainWindowForPendingProtocolUrl(){if(!shellConfig)return;void ensureMainWindow()['catch'](_0x3ae0eb=>{const _0x334759=_0x1223;mainLogger?.[_0x334759(0x18e)]('protocol'+_0x334759(0x3ac)+_0x334759(0x1d9)+_0x334759(0x365),summarizeError(_0x3ae0eb));});}function queueProtocolUrl(_0x28a408,_0x54ee83,_0x302e22=null){const _0x5c5acc=_0x209495,{duplicate:_0x26bbde}=protocolUrlState['queueUrl'](_0x28a408);mainLogger?.[_0x5c5acc(0x1db)]('protocol'+_0x5c5acc(0x29d)+'ued\x20for\x20'+_0x5c5acc(0x14b),{'url':summarizeProtocolUrl(_0x28a408),'reason':_0x54ee83,'duplicatePending':_0x26bbde,'hasWindow':Boolean(_0x302e22),'isLoadingMainFrame':Boolean(_0x302e22?.[_0x5c5acc(0x19a)+_0x5c5acc(0x1c7)]['isLoadin'+'gMainFra'+'me']()),'protocolRendererReady':protocolUrlState[_0x5c5acc(0x14b)+'Ready']});}function dispatchProtocolUrl(_0x33661d){const _0x590677=_0x209495,_0x25bc35=resolveProtocolScheme();if(typeof _0x33661d!==_0x590677(0x40e))return;if(!_0x25bc35){protocolUrlState[_0x590677(0x3d9)+_0x590677(0x28a)](_0x33661d),mainLogger?.[_0x590677(0x1db)]('protocol'+_0x590677(0x29d)+_0x590677(0x1a6)+_0x590677(0x300)+_0x590677(0x232),{'url':summarizeProtocolUrl(_0x33661d)});return;}if(!_0x33661d[_0x590677(0x4a2)+'th'](_0x25bc35+'://'))return;mainLogger?.[_0x590677(0x1db)](_0x590677(0x2e7)+'\x20url\x20rec'+_0x590677(0x1e6),{'url':summarizeProtocolUrl(_0x33661d)});const _0x33285a=getUsableMainWindow();if(!_0x33285a){queueProtocolUrl(_0x33661d,_0x590677(0x48f)+_0x590677(0x436));if(!_0x33285a)restoreMainWindowForPendingProtocolUrl();return;}if(_0x33285a[_0x590677(0x19a)+'nts'][_0x590677(0x32c)+_0x590677(0x279)+'me']()){queueProtocolUrl(_0x33661d,_0x590677(0x13e)+'main-fra'+'me',_0x33285a);return;}if(!protocolUrlState[_0x590677(0x14b)+_0x590677(0x48e)]){queueProtocolUrl(_0x33661d,'renderer'+_0x590677(0x142)+'dy',_0x33285a);return;}_0x33285a[_0x590677(0x1a9)](),_0x33285a['focus'](),broadcast(_0x590677(0x314)+_0x590677(0x35c),_0x33661d),mainLogger?.[_0x590677(0x1db)](_0x590677(0x2e7)+_0x590677(0x4b1)+_0x590677(0x492),{'url':summarizeProtocolUrl(_0x33661d),'protocolRendererReady':protocolUrlState[_0x590677(0x14b)+'Ready']});}function flushPendingProtocolUrl(){const _0x34ffa7=_0x209495,_0x15cfc6=protocolUrlState[_0x34ffa7(0x47b)+'dingUrl']();if(!_0x15cfc6)return;mainLogger?.['warn'](_0x34ffa7(0x2e7)+_0x34ffa7(0x2ff)+_0x34ffa7(0x3c6)+'shing',{'url':summarizeProtocolUrl(_0x15cfc6)}),void dispatchProtocolUrl(_0x15cfc6);}function getLocalFileMimeType(_0x371ac8){const _0x34ca12=_0x209495;return LOCAL_FILE_MIME_TYPES[_0x34ca12(0x308)](_0x371ac8[_0x34ca12(0x347)](_0x371ac8[_0x34ca12(0x3fa)+_0x34ca12(0x2d4)]('.'))[_0x34ca12(0x469)+_0x34ca12(0x4a4)]())||_0x34ca12(0x439)+_0x34ca12(0x349)+_0x34ca12(0x312);}function resolveRendererDistDir(){const _0x447fa9=_0x209495;return join(shellConfig[_0x447fa9(0x22f)+_0x447fa9(0x326)],_0x447fa9(0x41e));}function decodeAppRendererPath(_0x5f556d){const _0xe87f25=_0x209495;try{const _0x1f5fec=new URL(_0x5f556d);if(_0x1f5fec[_0xe87f25(0x2e7)]!==APP_RENDERER_PROTOCOL_SCHEME+':')return null;if(_0x1f5fec[_0xe87f25(0x3ee)]!==APP_RENDERER_PROTOCOL_HOST)return null;const _0x170efd=resolveRendererDistDir(),_0x148129=decodeURIComponent(_0x1f5fec[_0xe87f25(0x11d)]||_0xe87f25(0x1a7)+'tml'),_0x437b4f=_0x148129[_0xe87f25(0x3b9)](/^\/+/,'')||_0xe87f25(0x38e)+'ml',_0x27477e=resolve(_0x170efd,_0x437b4f);if(_0x27477e!==_0x170efd&&!_0x27477e['startsWi'+'th'](''+_0x170efd+sep))return null;return{'url':_0x1f5fec,'distDir':_0x170efd,'filePath':_0x27477e};}catch{return null;}}function parseSingleRangeHeader(_0x31cb2c,_0x5736d0){const _0x5ebd7e=_0x209495,_0x525e08=/^bytes=(\d*)-(\d*)$/i['exec'](_0x31cb2c[_0x5ebd7e(0x36b)]());if(!_0x525e08)return null;const [,_0x448191,_0x13a4f8]=_0x525e08;if(!_0x448191&&!_0x13a4f8)return null;if(!_0x448191){const _0x2eb422=Number[_0x5ebd7e(0x290)](_0x13a4f8,0xa);if(!Number[_0x5ebd7e(0x3aa)](_0x2eb422)||_0x2eb422<=0x0)return null;const _0x45376f=Math[_0x5ebd7e(0x23d)](_0x5736d0-_0x2eb422,0x0);return{'start':_0x45376f,'end':_0x5736d0-0x1};}const _0xb9b08e=Number[_0x5ebd7e(0x290)](_0x448191,0xa);if(!Number[_0x5ebd7e(0x3aa)](_0xb9b08e)||_0xb9b08e<0x0||_0xb9b08e>=_0x5736d0)return null;const _0x3e4611=_0x13a4f8?Number[_0x5ebd7e(0x290)](_0x13a4f8,0xa):_0x5736d0-0x1;if(!Number['isFinite'](_0x3e4611)||_0x3e4611<_0xb9b08e)return null;return{'start':_0xb9b08e,'end':Math[_0x5ebd7e(0x465)](_0x3e4611,_0x5736d0-0x1)};}function decodeClawspacePath(_0x45a038){const _0x5657c6=_0x209495;try{const _0x4b236e=new URL(_0x45a038);if(_0x4b236e['protocol']!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x4b236e[_0x5657c6(0x3ee)]!==_0x5657c6(0x3ef))return null;const _0xc45d77=decodeURIComponent(_0x4b236e[_0x5657c6(0x11d)]);if(!_0xc45d77)return null;if(/^\/[A-Za-z]:\//[_0x5657c6(0x25c)](_0xc45d77))return _0xc45d77['slice'](0x1);return _0xc45d77;}catch{return null;}}function createClawspaceHeaders(_0x12ef70={}){const _0x2b7115=_0x209495;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':_0x2b7115(0x433)+_0x2b7115(0x345)+'NS','access-control-allow-headers':_0x2b7115(0x29c)+_0x2b7115(0x12f)+_0x2b7115(0x49b),'access-control-expose-headers':_0x2b7115(0x4b4)+'length,\x20'+_0x2b7115(0x4b4)+_0x2b7115(0x397)+_0x2b7115(0x176)+_0x2b7115(0x4a3),..._0x12ef70});}function createLocalFileResponse(_0x15c624,_0x22aec1){const _0x2b1c20=_0x209495,_0x49b9aa=statSync(_0x22aec1);if(!_0x49b9aa[_0x2b1c20(0x3ab)]())return new Response('Not\x20foun'+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':'text/pla'+_0x2b1c20(0x22b)+'set=utf-'+'8'})});const _0x5dea32=getLocalFileMimeType(_0x22aec1),_0x2b445a=createClawspaceHeaders({'content-type':_0x5dea32,'accept-ranges':_0x2b1c20(0x43c),'cache-control':_0x2b1c20(0x1df)});if(_0x15c624[_0x2b1c20(0x2d1)]===_0x2b1c20(0x243))return _0x2b445a[_0x2b1c20(0x39a)](_0x2b1c20(0x4b4)+_0x2b1c20(0x407),String(_0x49b9aa[_0x2b1c20(0x4a9)])),new Response(null,{'status':0xc8,'headers':_0x2b445a});const _0x104167=_0x15c624[_0x2b1c20(0x430)]['get'](_0x2b1c20(0x3ec));if(!_0x104167)return _0x2b445a[_0x2b1c20(0x39a)](_0x2b1c20(0x4b4)+_0x2b1c20(0x407),String(_0x49b9aa[_0x2b1c20(0x4a9)])),new Response(Readable[_0x2b1c20(0x336)](createReadStream(_0x22aec1)),{'status':0xc8,'headers':_0x2b445a});const _0x136402=parseSingleRangeHeader(_0x104167,_0x49b9aa[_0x2b1c20(0x4a9)]);if(!_0x136402)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object[_0x2b1c20(0x35a)+_0x2b1c20(0x4b5)](_0x2b445a[_0x2b1c20(0x3da)]()),'content-range':'bytes\x20*/'+_0x49b9aa[_0x2b1c20(0x4a9)]})});const {start:_0x25104e,end:_0x3eedd2}=_0x136402,_0x160bc8=_0x3eedd2-_0x25104e+0x1,_0xa26b81=new Headers(_0x2b445a);return _0xa26b81[_0x2b1c20(0x39a)](_0x2b1c20(0x4b4)+_0x2b1c20(0x407),String(_0x160bc8)),_0xa26b81[_0x2b1c20(0x39a)](_0x2b1c20(0x4b4)+_0x2b1c20(0x3ec),_0x2b1c20(0x3bb)+_0x25104e+'-'+_0x3eedd2+'/'+_0x49b9aa[_0x2b1c20(0x4a9)]),new Response(Readable[_0x2b1c20(0x336)](createReadStream(_0x22aec1,{'start':_0x25104e,'end':_0x3eedd2})),{'status':0xce,'headers':_0xa26b81});}function installClawspaceProtocolHandler(){protocol['handle'](CLAWSPACE_PROTOCOL_SCHEME,_0x4be8be=>{const _0x3deed0=_0x1223;if(_0x4be8be[_0x3deed0(0x2d1)]===_0x3deed0(0x15e))return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x5d4607=decodeClawspacePath(_0x4be8be[_0x3deed0(0x298)]);if(!_0x5d4607)return new Response(_0x3deed0(0x16f)+_0x3deed0(0x4f1)+_0x3deed0(0x27f),{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x3deed0(0x4d7)+'in;\x20char'+_0x3deed0(0x1ab)+'8'})});if(!existsSync(_0x5d4607))return new Response(_0x3deed0(0x459)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x3deed0(0x4d7)+_0x3deed0(0x22b)+_0x3deed0(0x1ab)+'8'})});return createLocalFileResponse(_0x4be8be,_0x5d4607);});}function installAppRendererProtocolHandler(){protocol['handle'](APP_RENDERER_PROTOCOL_SCHEME,_0x1000f4=>{const _0x59685a=_0x1223;if(_0x1000f4[_0x59685a(0x2d1)]==='OPTIONS')return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x9c00ff=decodeAppRendererPath(_0x1000f4[_0x59685a(0x298)]);if(!_0x9c00ff)return new Response(_0x59685a(0x16f)+'app\x20url',{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x59685a(0x4d7)+_0x59685a(0x22b)+_0x59685a(0x1ab)+'8'})});const {url:_0x56fc2e,distDir:_0x210943,filePath:_0x1d8e2d}=_0x9c00ff,_0x74e38b=join(_0x210943,_0x59685a(0x38e)+'ml'),_0x4bac13=existsSync(_0x1d8e2d),_0x248060=_0x4bac13?_0x1d8e2d:_0x74e38b;if(!_0x4bac13&&_0x56fc2e[_0x59685a(0x11d)][_0x59685a(0x257)]('.'))return new Response(_0x59685a(0x459)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x59685a(0x4d7)+_0x59685a(0x22b)+_0x59685a(0x1ab)+'8'})});if(!existsSync(_0x248060))return mainLogger?.[_0x59685a(0x18e)](_0x59685a(0x14b)+_0x59685a(0x2ee)+'ile\x20not\x20'+_0x59685a(0x18f),{'requestUrl':_0x1000f4['url'],'targetPath':_0x248060}),new Response('Not\x20foun'+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x59685a(0x4d7)+_0x59685a(0x22b)+_0x59685a(0x1ab)+'8'})});return createLocalFileResponse(_0x1000f4,_0x248060);});}function broadcast(_0x561d32,_0x243147){const _0x3ec12f=_0x209495;DEBUG_STDOUT&&console['info'](_0x3ec12f(0x256)+_0x3ec12f(0x33e)+_0x3ec12f(0x222),_0x561d32,summarizePayload(_0x243147,{'maxDepth':0x2}));for(const _0x23a18a of BrowserWindow[_0x3ec12f(0x1cf)+_0x3ec12f(0x3b5)]()){!_0x23a18a[_0x3ec12f(0x19a)+'nts'][_0x3ec12f(0x2c4)+_0x3ec12f(0x130)]()&&_0x23a18a[_0x3ec12f(0x19a)+_0x3ec12f(0x1c7)]['send']('wujie-sh'+_0x3ec12f(0x46e)+'t',{'name':_0x561d32,'payload':_0x243147});}}function requestLogReportFromRenderer(_0x35a36f){const _0x25bd0a=_0x209495,_0x4ae8a0=BrowserWindow[_0x25bd0a(0x4ed)+_0x25bd0a(0x495)]()||(mainWindow&&!mainWindow[_0x25bd0a(0x2c4)+'yed']()?mainWindow:null),_0x222b89={'source':_0x35a36f};if(!_0x4ae8a0||_0x4ae8a0[_0x25bd0a(0x19a)+_0x25bd0a(0x1c7)][_0x25bd0a(0x2c4)+'yed']()){broadcast(_0x25bd0a(0x277)+_0x25bd0a(0x23f)+_0x25bd0a(0x1f5),_0x222b89);return;}_0x4ae8a0[_0x25bd0a(0x3bf)+'zed']()&&_0x4ae8a0[_0x25bd0a(0x429)](),_0x4ae8a0['show'](),_0x4ae8a0[_0x25bd0a(0x3d5)](),_0x4ae8a0['webConte'+_0x25bd0a(0x1c7)][_0x25bd0a(0x356)](_0x25bd0a(0x3cb)+_0x25bd0a(0x46e)+'t',{'name':'app:log-'+_0x25bd0a(0x23f)+_0x25bd0a(0x1f5),'payload':_0x222b89});}function installApplicationMenu(){const _0x50e9d5=_0x209495;if(process[_0x50e9d5(0x443)]!=='darwin')return;const _0x112d62=[{'label':shellConfig?.[_0x50e9d5(0x2a7)+_0x50e9d5(0x3af)]||app[_0x50e9d5(0x454)],'submenu':[{'role':'about'},{'type':_0x50e9d5(0x4f7)+'r'},{'role':_0x50e9d5(0x368)},{'type':'separato'+'r'},{'role':_0x50e9d5(0x2b3)},{'role':_0x50e9d5(0x16e)+'rs'},{'role':_0x50e9d5(0x411)},{'type':_0x50e9d5(0x4f7)+'r'},{'role':_0x50e9d5(0x318)}]},{'label':'编辑','submenu':[{'role':'undo'},{'role':_0x50e9d5(0x233)},{'type':_0x50e9d5(0x4f7)+'r'},{'role':_0x50e9d5(0x20f)},{'role':_0x50e9d5(0x19b)},{'role':_0x50e9d5(0x1a3)},{'role':_0x50e9d5(0x3df)+'l'}]},{'label':'显示','submenu':[{'role':'reload'},{'role':_0x50e9d5(0x2c2)+'oad'},{'type':'separato'+'r'},{'role':_0x50e9d5(0x385)+_0x50e9d5(0x4e3)}]},{'role':'windowMe'+'nu','label':'窗口'},{'role':_0x50e9d5(0x40a),'label':'帮助','submenu':[{'label':_0x50e9d5(0x344),'click':()=>{const _0x592bd1=_0x50e9d5;requestLogReportFromRenderer(_0x592bd1(0x439)+'ion-menu');}}]}];Menu[_0x50e9d5(0x2aa)+_0x50e9d5(0x381)+'nu'](Menu[_0x50e9d5(0x22a)+_0x50e9d5(0x3be)+'e'](_0x112d62));}async function loadProductRuntime(){const _0x3cc721=_0x209495,_0x41cf0c=[join(shellConfig[_0x3cc721(0x22f)+_0x3cc721(0x326)],'shell-ru'+_0x3cc721(0x3d2),_0x3cc721(0x2e3)+'s'),join(app[_0x3cc721(0x412)+'th'](),_0x3cc721(0x364)+_0x3cc721(0x3d2),'index.mj'+'s')],_0x1fcfca=_0x41cf0c['find'](_0x63a5a8=>existsSync(_0x63a5a8));if(!_0x1fcfca)return mainLogger?.[_0x3cc721(0x448)]('product\x20'+_0x3cc721(0x120)+'extensio'+_0x3cc721(0x2dd)+_0x3cc721(0x168),{'runtimeCandidates':_0x41cf0c}),{};try{const _0x1922e7=await import(pathToFileURL(_0x1fcfca)[_0x3cc721(0x1d7)]);return mainLogger?.['info'](_0x3cc721(0x141)+_0x3cc721(0x120)+_0x3cc721(0x2a1)+_0x3cc721(0x39c),{'runtimePath':_0x1fcfca}),_0x1922e7;}catch(_0x41ebc5){mainLogger?.[_0x3cc721(0x18e)](_0x3cc721(0x141)+_0x3cc721(0x120)+_0x3cc721(0x2a1)+_0x3cc721(0x316)+_0x3cc721(0x302),{'runtimePath':_0x1fcfca,'error':summarizeError(_0x41ebc5)});throw _0x41ebc5;}}function _0x1e97(){const _0x11a3d2=['s:reveal','elected-','lastInde','tewayEve','openAtLo','app:clip','record','updated','CommandO','config:c','skills:i','keys','plugins:','get-conf','ist','length','setName','icktime','help','before\x20q','agent','ishuRegi','string',':events','uri','unhide','getAppPa','te:quit-','ted','agent_id','meState','contextW','before-q','m-channe','lawMcpSe','andledIn','lConnect','redConte','dist','models\x20c','EventCou','gateway-','select\x20f',':save-we','essed','sync-bun','all','lClient','shellLog','restore','-request','csCliCon','est_fail','showOpen','app:open','getPath','headers','s-snapsh','hatChann','GET,\x20HEA','manifest','g_conten','window','tLogs','terminal','applicat','filters','getPinne','bytes','ishuDocC','#!/bin/s','ngs','Entry','pop','uit:\x20upd','platform','producti','app:star','uncaught','title','info','ximize',':save-di','folder','markQuit','ilConnec','entModel','token','\x20request','stomMode','dispose','video/qu','name','tabs:nav','sourceSe','.htm','lawPlugi','Not\x20foun','recursiv','pdated','rerReady','FeishuDo','hell]\x20fa','all\x20in\x20p','ionUsage','saveWeco','-pinned','dCheck','isabled','min',':save-qq','cron:rem','assign','toLowerC','update','plugin\x20e','electron','logs','ell:even','hecks','abort','g+xml','trationS','setAsDef','atus','config','product-','agents:u','ateway_s','ell\x20conf','.woff2','clearPen','stion','itialize','ion/vnd.','lingUpda','cutoffRo','ens','succeede','changed','leted','d\x20failed','_session','pluginId','workspac','getState','saveTenc','start',':status','models:c','Ready','missing-','SchemesA','update_g','patched','image/bm','ndlers','edWindow','isArray',':get-clo','-level','list','659908lRvnzy','ype','selected',':unpin','s:upsert','+Shift+I','cwd','-life-cy','startsWi','nges','ase','_respons','saveQqbo','appId','agents:l','size','ignore','nectorCo','provider','path','.otf','entDocsC','ges','\x20url\x20dis','ProductR','est\x20comp','content-','ies','saveFeis','.mp3','est\x20star','searchPa','files','level','eam-even','matroska','readConf','indexOf','error、wa','agent\x20de',':rename','lawChann','resolveC','er\x20missi','.mp4','ionEvent','utf-8','openDevT','te:check','model-id','State','tup:get','les:reve','.ico','hell:ipc','g\x20native','inned','\x20client\x20','ls:set-e','ctory','Keys','text/pla','showItem','eam','tate','peratedM','app:syst','defaults','.eot',':\x20gatewa','required','ate\x20inst','register','llscreen','cancelFe','openclaw','startFei','[REDACTE','logs:get','resh-age','ell\x20gate','updateOp','-status','getFocus','lect-fil','syncRunt','dow\x20load','clawspac','top_done','chat-str','untimeHa','Session','ion','separato','models','huChanne','imePlugi','unref','.wav','agent-','finally','agents:c','nput-eve','getRevis',':save-kd','uDocCliC','ocs','state',':runtime','ocolClie',':save','tIdTitle','pathname',':diagnos','function','runtime\x20','dataDir','bot-chan','handle','e\x20first.','enClawMc','\x20CLI\x20wra','dels','enClawCo','config:r','quitAndI','way\x20is\x20n','argv','id\x20title','senderFr','ontent-t','yed','bject',':choose','runtime:','tabs-age','window:i','preventD','resolveS','cron:lis','ItemSett','ap:get',':save-fe','nelSessi','update-c','loading-','ionEntry','apiKey','product\x20','-not-rea','font/wof','shell\x20lo','and-inst','node','ad-binar','lTs',':snapsho','mand','renderer','subscrib','sses','navigati','efault','ileName','window:o','logs:ope','initiali','arch','lConfig',':gateway','files:li','node:fs/','-ready','debug','sender','2984718TRpAoj','plugin\x20c','OPTIONS','font/otf','g\x20update','ad_suppr','listSumm','gatewayP','ncent-ex',':answer-','timeout','saveKdoc','und','getStatu','messages','main','artifact','ocsCliCo','hideOthe','Invalid\x20','rayOnClo','ms-fonto','getVersi','top_star','app:tray','nfig','ccept-ra','logLevel','tup:set','\x20rendere','stringif','audio/mp','writeEve','director','tabs:pos','wujiecla','em:resta','avatar','pServer','indowTok','setSelec',':pin','getKdocs','ead','key','find','.ttf','\x20allowin','object','startWec','error','found','download','plugins','th\x20is\x20re','upsert','unknown','byteLeng','reasonin','.flac','torConfi','msvideo','webConte','copy','orted','skills:u','t-messag','logsDir','utf8','igWriteH','ll-close','paste','ssion:\x20','before-i','ued\x20befo','/index.h','diagnost','show','ith-sess','set=utf-','.js','sharedCo','onReques','saveNetE','-session','window:t','ces.json','s-maximi','iConnect','ectory\x20o','unregist','#f8fafc','kdocs','ite-bina','ipc','ion/wasm','rnal','nabled',':set-clo','ModelId','ion/java','harset=u','ready\x20ex','\x20open-ur','audio/wa','meta','te:get-s','nts','rated-fi','minimize','figs','boot\x20ele','et=utf-8','/chat/co','model','getAllWi','tion\x20fai','number','.gif','fig','#ffffff','filter','quired','href','getMessa','restore\x20','.wasm','warn','startKdo','tabs-com','enClawCh','no-store','roductDa','tatus','-questio','onnector','-url','-logs','eived','cron:cre','\x20main\x20bo','ap:upser','ector\x20se','eted','no\x20defau',':open-cl','content','close','some','ectory','requestB','cle','authCode','equested','irectory','control','image/pn','enClawSk','ask-user','d-state','agent\x20id','map','.flag','setLogin','tease-ma','uest-age','whenRead','cancelKd','loadURL','cancelWe','will-qui','logs:lis','ure','feishu_d','board:wr','customMo','before\x20i','em:open-','app:upda','cut','.mkv','ctron\x20ma','rn、info\x20','Config','uit','33330mgIrBO','ections','app:file','ishu-doc','showSave','\x20quit','lized','e\x20comple','migrateP','devtools','otAfterI',':agent-m','text','nt]','from','Dialog','chat:abo','status','openExte','shouldLo','igate','buildFro','in;\x20char','pendingU','ory-info','unmaximi','projectR','child-pr','gateway\x20','g\x20ready','redo','nstallin','ted\x20conn','models:s','ackgroun',':reorder','ession','yInfo','main\x20win','sessionK','max','rControl','report-r','ile\x20writ','-by-sess','annelCon','HEAD','gin','eated','edCount','sPath','oggle-ma',':usage','d\x20reject','.json','25725564SEHlsA','audio/aa','Version','ools',':\x20stoppi','win32','iled\x20to\x20','n-direct','ot\x20start','checkFor','[wujie-s','includes','tanceLoc','ted-ever','cutoffTe','sConnect','test','aseMailC','vate','Unsuppor','targetDi','sourcePa','unhandle','ort','rams','Terminal',':downloa','relaunch','customNa','parentSe','IPC\x20requ','maxToken','les:dele','complete','ite','stream','elSessio','setImCha','readCurr','limit','meFilter','e:open-d','444cLfUub','app:log-','storyLoa','gMainFra','setRende','.jpeg','filePath','files:re','inimize','e\x20url','isPackag','execPath','api.open','tic','BodyRead','promises','INFO','rocess-g','-shortcu','image/jp','ngUrl','_body_re',';\x20charse','ls:delet','ationSta','dSession','parseInt','ot\x20initi','isIntege','timeoutM','elConfig','\x20shortcu','.avi','roductCo','url','closeToT','s:list','ingleIns','range,\x20c','\x20url\x20que','agent\x20up','generate','ings','extensio','\x20updater','sessionI','ocess\x20go','audio/og','onnectSt','productN','ectSessi','getURL','setAppli','mjs','getLogin','ssion','ing',':resize','fromIpc','nstance','napshot','hide','huDocCon','r\x20ready','message','dated','auth_cod','ions-lis','nConfig','app:info','user','window_f','pdate','child\x20pr','tory','://','forceRel',':message','isDestro','inactive','video/we','.css','now','pen-devt','-port','markConf','audio/fl','ig\x20is\x20no','acts','\x20log','stration','method','ng\x20gatew','ey\x20is\x20re','xOf','ate','cron','skills','maxEntri','ernal\x20ur','zed','onfig','te:downl','n\x20not\x20fo','log','gatewayT','illEntry','mport-zi','oken','index.mj','208568JFRmQC','d-local','type','protocol','feishu','Suppress','sessions','json','ipc\x20requ','shuDocCl','\x20entry\x20f','video/x-','dev','push','lt\x20model','emoji','open','liConnec','startBac','InFolder','deletedS','figured:','versions','ed:\x20','script;\x20','\x20main\x20wi','.webp','\x20pending','re\x20confi','keyDown','\x20to\x20load','role','lawSkill','image/gi','runtimeI','e:shared','get','cron:log','nel','ists',':save-ne','.ogg','d\x20comple','openDire','les:upse','temperat','t-stream','Event','app:prot','count','n\x20failed','catch','quit','choices','t=utf-8','nstall','session\x20','d\x20is\x20req','deleteIm','agentId','saveQqMa','e\x20direct','-state-s','code','origin','Bearer\x20','oot','.jpg','captureI','nfo','tf-8','bin','isLoadin','l\x20prepar','reorderP','s:delete','file\x20rea','reverse','talkDocC','render-p','agents','rver','toWeb','s:hide','1827JUnBPF','attachGa','agents-u','red;\x20set','ettings','listBySe','hell:eve','ocess-go','ources','tabs:req','hideBySe','create','上传日志...','D,\x20OPTIO','runtimeR','slice','dled-res','ion/octe','agents:w','requestS','lect-dir','ternally','kUserQue','baseUrl','-state-c','Everywhe','ncident','keepUnti','agents:d','.png','send','orConfig','config:i','ted-stat','fromEntr','app:gene','ocol-url',':save-te','isInstal','或\x20debug','activate','deleteOp','mChannel','text/mar','shell-ru','failed','\x20is\x20requ','logs:set','services','sPrivile','isMaximi','trim','tp\x20','.webm','operated','onChatHi','setOpenC','ired','ipc_requ','open\x20ext','closed','select\x20d','payload','event','dRejecti','readSess',':choose-','icon',':loading','tabs:ref','canceled','binary\x20f','chat','cationMe','fromWebC','ChannelC','darwin','togglefu','ell-cli.','nt-state','logs\x20exp','request-','t\x20initia','\x20open\x20bl','getRecen','multiSel','index.ht','has','59872oZEuxn','ded','ndow','日志等级必须是\x20','window-a','wechat','mail','range,\x20a','ensureIn','ontext','set','paths','n\x20loaded','mpletion','ready','ap:entry','configPa','match','ector:\x20','h\x0aexec\x20\x22','4378287cyxmWf','command',':process','nnel','files:se','ell\x20boot','isFinite','isFile','\x20window\x20','listSess','wBin','ame','detach','eRuntime','lose','channelI',':summary','ndows',':run-onc','cron:upd','te\x20compl','replace','Updates','bytes\x20','Level','omplete','mTemplat','isMinimi','ywhere','-weixin','tSession','resource','files:wr','l\x20reques','\x20url\x20flu','Update','hidden','ontents','tateDir','wujie-sh','second-i','plugin\x20d','-exit','.\x20Run\x20wu','g\x20level\x20','window:c','ntime','openPath','chrome','focus','groups','\x20complet','nnelEnab','setPendi','entries','ls:list','restart','\x20metric\x20','toISOStr','selectAl','et-self-','t:\x20','settings','-status-','ory\x20open','ocus',':revisio','jie-shel','alized','one','text/htm','charset=','range','Observed','hostname','local','l\x20first','writeCon','text/css','elete','est\x20fail','-token','ncent-do','ory'];_0x1e97=function(){return _0x11a3d2;};return _0x1e97();}function openDevToolsForActiveContext(){const _0x540d28=_0x209495;if(!isDevToolsEnabled())return mainLogger?.[_0x540d28(0x448)](_0x540d28(0x21e)+_0x540d28(0x38b)+'ocked',{'mode':getMode(),'flagPath':resolveDevToolsFlagPath()}),{'ok':![]};const _0x369f37=BrowserWindow['getFocus'+_0x540d28(0x495)]()||mainWindow;if(!_0x369f37||_0x369f37[_0x540d28(0x2c4)+'yed']())return{'ok':![]};return _0x369f37[_0x540d28(0x19a)+_0x540d28(0x1c7)]['openDevT'+_0x540d28(0x24f)]({'mode':_0x540d28(0x3b0)}),_0x369f37[_0x540d28(0x19a)+_0x540d28(0x1c7)][_0x540d28(0x356)](_0x540d28(0x3cb)+_0x540d28(0x46e)+'t',{'name':_0x540d28(0x21e)+_0x540d28(0x288)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x42c2ec=_0x209495;globalShortcut[_0x42c2ec(0x1b6)+'er'](DEVTOOLS_ACCELERATOR);if(!isDevToolsEnabled())return;const _0x1c73b3=globalShortcut[_0x42c2ec(0x4e2)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x1c73b3&&console[_0x42c2ec(0x1db)](_0x42c2ec(0x256)+_0x42c2ec(0x45e)+'iled\x20to\x20'+'register'+_0x42c2ec(0x295)+_0x42c2ec(0x3e1)+DEVTOOLS_ACCELERATOR);}async function getRuntimeResourceStatus(){const _0x187cc6=_0x209495;try{const _0x540240=await loadRuntimeInfo(shellConfig[_0x187cc6(0x22f)+_0x187cc6(0x326)]),_0x322ffa=_0x540240[_0x187cc6(0x434)]||{};return{'ok':!![],'runtimeRoot':_0x540240[_0x187cc6(0x346)+_0x187cc6(0x326)],'openclawVersion':_0x540240['openclaw'+_0x187cc6(0x24e)],'generatedAt':_0x322ffa[_0x187cc6(0x29f)+'dAt']||null,'pluginCount':Array[_0x187cc6(0x496)](_0x322ffa[_0x187cc6(0x191)])?_0x322ffa[_0x187cc6(0x191)][_0x187cc6(0x407)]:0x0,'plugins':Array[_0x187cc6(0x496)](_0x322ffa[_0x187cc6(0x191)])?_0x322ffa[_0x187cc6(0x191)]:[],'agents':_0x322ffa[_0x187cc6(0x334)]||null,'skills':_0x322ffa[_0x187cc6(0x2d7)]||null,'wrapper':_0x322ffa[_0x187cc6(0x17f)+_0x187cc6(0x3ae)]||null,'product':_0x322ffa['product']||null};}catch(_0x22f8f7){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.[_0x187cc6(0x22f)+'oot']||resolveProjectRoot()),'error':_0x22f8f7 instanceof Error?_0x22f8f7[_0x187cc6(0x2b6)]:String(_0x22f8f7)};}}async function createWindow(){const _0x4ed4e7=_0x209495,_0x1fa179=process.env.VITE_DEV_SERVER_URL||APP_RENDERER_ENTRY_URL,_0x39b2b6=process[_0x4ed4e7(0x443)]===_0x4ed4e7(0x384),_0x420f02=process['platform']===_0x4ed4e7(0x251)?![]:!![],_0x40413b=isDevToolsEnabled();mainLogger?.[_0x4ed4e7(0x448)]('creating'+_0x4ed4e7(0x2fd)+_0x4ed4e7(0x392),{'rendererUrl':_0x1fa179,'mode':getMode(),'devToolsEnabled':_0x40413b,'devToolsFlagPath':resolveDevToolsFlagPath()});const _0x9919c4=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x4ed4e7(0x2a7)+_0x4ed4e7(0x3af)],'backgroundColor':_0x39b2b6?_0x4ed4e7(0x1d4):_0x4ed4e7(0x1b7),'autoHideMenuBar':!![],'titleBarStyle':_0x4ed4e7(0x3c8),'titleBarOverlay':_0x420f02,..._0x39b2b6?{'trafficLightPosition':{'x':0x10,'y':0xc}}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![],'devTools':_0x40413b}});mainWindow=_0x9919c4,protocolUrlState[_0x4ed4e7(0x27a)+'rerReady'](![]),_0x9919c4['on'](_0x4ed4e7(0x374),()=>{const _0x2500ab=_0x4ed4e7;if(mainWindow!==_0x9919c4)return;mainWindow=null,protocolUrlState[_0x2500ab(0x27a)+_0x2500ab(0x45c)](![]);}),_0x9919c4[_0x4ed4e7(0x19a)+_0x4ed4e7(0x1c7)]['on'](_0x4ed4e7(0x1a5)+_0x4ed4e7(0x113)+'nt',_0x4b6fce=>{const _0x2e84b9=_0x4ed4e7,_0x24ca9b=_0x4b6fce['input'];if(!_0x24ca9b||_0x24ca9b['type']!==_0x2e84b9(0x301))return;const _0x3b1960=String(_0x24ca9b[_0x2e84b9(0x188)]||'')[_0x2e84b9(0x469)+_0x2e84b9(0x4a4)](),_0x34d74e=_0x3b1960==='r',_0x227cdb=process[_0x2e84b9(0x443)]===_0x2e84b9(0x384)?_0x24ca9b['meta']===!![]:_0x24ca9b[_0x2e84b9(0x1f7)]===!![];if(!_0x34d74e||!_0x227cdb)return;_0x4b6fce[_0x2e84b9(0x136)+_0x2e84b9(0x14f)](),broadcast(_0x2e84b9(0x1dd)+_0x2e84b9(0x14a),{'type':_0x2e84b9(0x14e)+'on','action':'reload'});}),_0x9919c4['on'](_0x4ed4e7(0x3d5),()=>{const _0x1b9fcc=_0x4ed4e7;updateController?.['requestB'+'ackgroun'+_0x1b9fcc(0x463)](_0x1b9fcc(0x2bd)+_0x1b9fcc(0x3e5));});const _0x1b61c1=process.env.VITE_DEV_SERVER_URL;_0x1b61c1?(await _0x9919c4[_0x4ed4e7(0x204)](_0x1b61c1),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&_0x40413b&&_0x9919c4[_0x4ed4e7(0x19a)+_0x4ed4e7(0x1c7)][_0x4ed4e7(0x4c9)+_0x4ed4e7(0x24f)]({'mode':_0x4ed4e7(0x3b0)})):await _0x9919c4[_0x4ed4e7(0x204)](APP_RENDERER_ENTRY_URL),mainLogger?.['info'](_0x4ed4e7(0x23b)+_0x4ed4e7(0x4f0)+'ed',{'rendererUrl':_0x1fa179,'mode':getMode(),'devToolsEnabled':_0x40413b});}function registerProtocolHandlers(){const _0x564924=_0x209495,_0x109013=resolveProtocolScheme();if(!_0x109013)return;let _0x445b31=![];try{_0x445b31=app[_0x564924(0x280)+'ed']?app[_0x564924(0x473)+'aultProt'+_0x564924(0x11a)+'nt'](_0x109013,process[_0x564924(0x281)],[app[_0x564924(0x412)+'th']()]):![];}catch(_0xbdb6bc){mainLogger?.[_0x564924(0x18e)](_0x564924(0x2e7)+_0x564924(0x4d3)+'registra'+_0x564924(0x1d0)+'led',{'protocol':_0x109013,'error':summarizeError(_0xbdb6bc)});}mainLogger?.[_0x564924(0x1db)]('protocol'+_0x564924(0x4d3)+'register'+'ed',{'protocol':_0x109013,'registered':_0x445b31,'packaged':app[_0x564924(0x280)+'ed'],'defaultClient':app['isDefaul'+'tProtoco'+_0x564924(0x427)](_0x109013),'execPath':toHomePath(process[_0x564924(0x281)]),'appPath':toHomePath(app['getAppPa'+'th']())});const _0x168560=extractProtocolUrlFromArgs(process[_0x564924(0x12c)]);if(_0x168560)protocolUrlState['setPendi'+_0x564924(0x28a)](_0x168560);const _0x3cb456=extractProtocolUrlFromArgs(pendingProtocolArgs||[]);pendingProtocolArgs=null;if(_0x3cb456)protocolUrlState[_0x564924(0x3d9)+'ngUrl'](_0x3cb456);}function normalizeRequestedLogLevel(_0x225f97){const _0xdacb14=_0x209495,_0x37d042=typeof _0x225f97===_0xdacb14(0x40e)?_0x225f97[_0xdacb14(0x36b)]()[_0xdacb14(0x469)+_0xdacb14(0x4a4)]():'';if(!SHELL_LOG_LEVELS['has'](_0x37d042))throw new Error(_0xdacb14(0x393)+_0xdacb14(0x4c0)+_0xdacb14(0x212)+_0xdacb14(0x35f));return _0x37d042;}function writeMainAuditLog(_0x1e5360,_0x390ef9){const _0x13b892=_0x209495;return mainLogger?.['write']?.(formatLogLine({'level':_0x13b892(0x286),'context':'main','message':_0x1e5360,'meta':_0x390ef9}));}async function installIpcHandlers(){const _0x1eead3=_0x209495,_0x5776a7=(_0x2d5c46,_0x1f4931)=>{const _0x3111e0=_0x1223;ipcMain[_0x3111e0(0x123)](_0x2d5c46,async(_0x5cec2a,_0x3cb950)=>{const _0x269b6c=_0x3111e0,_0x15fc97=Date[_0x269b6c(0x2c8)](),_0x2ed91f=_0x5cec2a[_0x269b6c(0x12e)+_0x269b6c(0x3af)]?.[_0x269b6c(0x298)]||_0x5cec2a[_0x269b6c(0x15b)][_0x269b6c(0x2a9)](),_0x2fd7b2=ipcLogger?.[_0x269b6c(0x228)+'g'](_0x269b6c(0x15a));_0x2fd7b2&&ipcLogger[_0x269b6c(0x448)](_0x269b6c(0x2ec)+_0x269b6c(0x4b8)+'ted',{'channel':_0x2d5c46,'senderUrl':_0x2ed91f});DEBUG_STDOUT&&_0x2fd7b2&&console[_0x269b6c(0x448)](_0x269b6c(0x256)+'hell:ipc'+']',_0x2d5c46,'started');try{let _0x43064e;try{_0x43064e=await _0x1f4931(_0x5cec2a,_0x3cb950);}catch(_0x544a25){if(!isGatewayNotInitializedError(_0x544a25))throw _0x544a25;await ensureGatewayControllerStarted(),_0x43064e=await _0x1f4931(_0x5cec2a,_0x3cb950);}const _0x33df6d=Date[_0x269b6c(0x2c8)]()-_0x15fc97;return(_0x2fd7b2||_0x33df6d>IPC_SLOW_REQUEST_THRESHOLD_MS)&&ipcLogger?.[_0x269b6c(0x448)](_0x269b6c(0x2ec)+_0x269b6c(0x4b3)+'leted',{'channel':_0x2d5c46,'durationMs':_0x33df6d,'status':'succeede'+'d'}),await userEventWriter?.[_0x269b6c(0x2b0)]({'channel':_0x2d5c46,'payload':_0x3cb950,'result':_0x43064e,'durationMs':_0x33df6d,'status':_0x269b6c(0x482)+'d'}),DEBUG_STDOUT&&_0x2fd7b2&&console[_0x269b6c(0x448)]('[wujie-s'+_0x269b6c(0x4d0)+']',_0x2d5c46,_0x269b6c(0x26d)+'d',{'durationMs':_0x33df6d,'status':'succeede'+'d'}),_0x43064e;}catch(_0x3912b5){const _0x61069d=Date['now']()-_0x15fc97;ipcLogger?.[_0x269b6c(0x18e)](_0x269b6c(0x2ec)+'est\x20fail'+'ed',{'channel':_0x2d5c46,'durationMs':_0x61069d,'error':summarizeError(_0x3912b5)}),await userEventWriter?.[_0x269b6c(0x2b0)]({'channel':_0x2d5c46,'payload':_0x3cb950,'error':_0x3912b5,'durationMs':_0x61069d,'status':_0x269b6c(0x365)}),await diagnosticsWriter?.['captureI'+_0x269b6c(0x352)](diagnosticEventFromError(_0x3912b5,{'category':'ipc','event':_0x269b6c(0x372)+_0x269b6c(0x42c)+'ed','message':_0x269b6c(0x26a)+_0x269b6c(0x3f4)+_0x269b6c(0x2fb)+_0x2d5c46,'durationMs':_0x61069d,'meta':{'channel':_0x2d5c46,'senderUrl':_0x2ed91f,'payload':summarizePayload(_0x3cb950)}}));DEBUG_STDOUT&&console[_0x269b6c(0x18e)](_0x269b6c(0x256)+'hell:ipc'+']',_0x2d5c46,_0x269b6c(0x365),summarizeError(_0x3912b5));throw _0x3912b5;}});},_0xab79f1=()=>{const _0x2b5138=_0x1223;if(!gatewayController)throw new Error(bootError?_0x2b5138(0x3cb)+_0x2b5138(0x3a9)+'\x20failed:'+'\x20'+bootError:_0x2b5138(0x3cb)+_0x2b5138(0x4ea)+'way\x20is\x20n'+'ot\x20initi'+'alized');return gatewayController;};function _0x467567(){const _0x10e687=_0x1223;for(const _0xb488af of Object[_0x10e687(0x403)](gatewayRuntimeHooks)){delete gatewayRuntimeHooks[_0xb488af];}Object[_0x10e687(0x468)](gatewayRuntimeHooks,productRuntimeHooks,{'onChatHistoryLoaded':async _0x43bb5d=>{const _0x5c5379=_0x10e687;await requestIdHooks?.[_0x5c5379(0x36f)+_0x5c5379(0x278)+_0x5c5379(0x391)]?.(_0x43bb5d),await productRuntimeHooks?.[_0x5c5379(0x36f)+_0x5c5379(0x278)+_0x5c5379(0x391)]?.(_0x43bb5d);},'onRequestIdTitleEvent':async _0x63b057=>{const _0x1aabab=_0x10e687;await requestIdHooks?.[_0x1aabab(0x1ae)+_0x1aabab(0x11c)+'Event']?.(_0x63b057),await productRuntimeHooks?.[_0x1aabab(0x1ae)+_0x1aabab(0x11c)+_0x1aabab(0x313)]?.(_0x63b057);}});}const _0x1f1672=()=>{const _0x360c1b=_0x1223;if(typeof productRuntime[_0x360c1b(0x4e2)+_0x360c1b(0x4b2)+'untimeHa'+_0x360c1b(0x494)]!==_0x360c1b(0x11f))return;const _0x3a2d07=productRuntime[_0x360c1b(0x4e2)+_0x360c1b(0x4b2)+_0x360c1b(0x4f4)+_0x360c1b(0x494)]({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0x5776a7,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0xab79f1,'sep':sep,'openClawConfigHandlers':{'update':(..._0x2d9dd9)=>configController[_0x360c1b(0x4eb)+_0x360c1b(0x128)+_0x360c1b(0x175)](..._0x2d9dd9),'setPluginConfig':_0x3c4067=>configController[_0x360c1b(0x370)+_0x360c1b(0x458)+_0x360c1b(0x2ba)](_0x3c4067),'setChannelConfig':_0x2d621a=>configController[_0x360c1b(0x370)+_0x360c1b(0x4c3)+_0x360c1b(0x294)](_0x2d621a),'deleteChannelConfig':_0x2e947e=>configController[_0x360c1b(0x361)+_0x360c1b(0x1de)+'annelCon'+_0x360c1b(0x1d3)](_0x2e947e),'setSkillEntry':_0x56aa70=>configController[_0x360c1b(0x370)+_0x360c1b(0x304)+_0x360c1b(0x440)](_0x56aa70),'deleteSkillEntry':_0x11df4c=>configController['deleteOp'+_0x360c1b(0x1f9)+'illEntry'](_0x11df4c),'setMcpServer':_0x591ee9=>configController[_0x360c1b(0x370)+_0x360c1b(0x41a)+'rver'](_0x591ee9),'deleteMcpServer':_0xa5766e=>configController['deleteOp'+'enClawMc'+_0x360c1b(0x182)](_0xa5766e)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x2c1ef4})||{};Object[_0x360c1b(0x468)](productRuntimeHooks,_0x3a2d07),_0x467567();};ipcMain['on'](_0x1eead3(0x314)+_0x1eead3(0x35c)+_0x1eead3(0x159),()=>{const _0x330821=_0x1eead3;protocolUrlState[_0x330821(0x27a)+_0x330821(0x45c)](!![]),mainLogger?.[_0x330821(0x1db)](_0x330821(0x2e7)+_0x330821(0x179)+_0x330821(0x2b5),{'hasPendingProtocolUrl':Boolean(protocolUrlState[_0x330821(0x22c)+'rl'])}),flushPendingProtocolUrl();}),_0x5776a7(_0x1eead3(0x2bb),async()=>({'name':shellConfig[_0x1eead3(0x2a7)+_0x1eead3(0x3af)],'version':app['getVersi'+'on'](),'appId':shellConfig[_0x1eead3(0x4a7)],'dataDir':shellConfig[_0x1eead3(0x121)]})),_0x5776a7(_0x1eead3(0x42e)+_0x1eead3(0x1e4),async(_0x30d281,_0x2189ed)=>{const _0x1bbf65=_0x1eead3,_0x10eaa3=typeof _0x2189ed===_0x1bbf65(0x40e)?_0x2189ed:'';if(!_0x10eaa3)return{'ok':![]};return filesLogger?.[_0x1bbf65(0x448)](_0x1bbf65(0x373)+_0x1bbf65(0x2d9)+_0x1bbf65(0x3c5)+_0x1bbf65(0x414),{'url':summarizeText(_0x10eaa3,0xa0)}),await shell[_0x1bbf65(0x227)+_0x1bbf65(0x1bc)](_0x10eaa3),{'ok':!![]};});const _0x2c1ef4=async(_0x361cd3,_0x257809)=>{const _0x383f7a=_0x1eead3;return configController[_0x383f7a(0x2cb)+_0x383f7a(0x1a1)+_0x383f7a(0x41b)+_0x383f7a(0x34d)](),await configController[_0x383f7a(0x3f1)+'fig'](_0x361cd3,_0x257809),{'ok':!![]};};Object['assign'](requestIdHooks,registerRequestIdHandlers({'configController':configController,'handle':_0x5776a7,'mainLogger':mainLogger})),_0x467567(),_0x1f1672(),_0x5776a7(_0x1eead3(0x402)+_0x1eead3(0x2e1)+'p',async(_0x382d3d,_0x2c7a69)=>importMarketSkillZip({'payload':_0x2c7a69,'importSkillZip':_0x131d1b=>importSkillZip({..._0x131d1b,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow[_0x1eead3(0x382)+_0x1eead3(0x3c9)](_0x382d3d['sender'])||mainWindow,'configController':configController}),'configController':configController})),_0x5776a7(_0x1eead3(0x19d)+_0x1eead3(0x2be),(_0x5ac473,_0x1b6650)=>updateManagedSkillConfig({'payload':_0x1b6650,'configController':configController})),_0x5776a7('skills:d'+_0x1eead3(0x3f3),(_0x426b9a,_0x5d84e5)=>deleteMarketSkillRegistryEntry({'payload':_0x5d84e5,'deleteManagedSkill':_0x4a081f=>deleteManagedSkill({..._0x4a081f,'gateway':_0xab79f1(),'configController':configController}),'configController':configController}));const _0x2a7fa4=ensureGeneratedFilesStore();_0x5776a7(_0x1eead3(0x35b)+_0x1eead3(0x1c8)+'les:list',async()=>_0x2a7fa4[_0x1eead3(0x499)]()),_0x5776a7('app:gene'+'rated-fi'+'les:list'+_0x1eead3(0x241)+'ion',async(_0x49c7fe,_0x508348)=>_0x2a7fa4[_0x1eead3(0x33d)+'ssion'](String(_0x508348||''))),_0x5776a7(_0x1eead3(0x35b)+_0x1eead3(0x1c8)+_0x1eead3(0x310)+'rt',async(_0x2d2b5f,_0x3a79d8={})=>_0x2a7fa4['upsert'](_0x3a79d8)),_0x5776a7(_0x1eead3(0x35b)+'rated-fi'+'les:hide',async(_0x6f3d5b,_0xb1157a)=>_0x2a7fa4[_0x1eead3(0x2b3)](String(_0xb1157a||''))),_0x5776a7(_0x1eead3(0x35b)+'rated-fi'+'les:hide'+_0x1eead3(0x241)+_0x1eead3(0x4f6),async(_0x7e7ebe,_0x14e179)=>_0x2a7fa4[_0x1eead3(0x342)+_0x1eead3(0x2ad)](String(_0x14e179||''))),_0x5776a7(_0x1eead3(0x35b)+_0x1eead3(0x1c8)+_0x1eead3(0x26c)+'te',async(_0x22d025,_0x396a50)=>_0x2a7fa4['deleteFi'+'le'](String(_0x396a50||''))),_0x5776a7(_0x1eead3(0x35b)+_0x1eead3(0x1c8)+_0x1eead3(0x26c)+_0x1eead3(0x359)+'e',async(_0x2cf8a5,_0x5a5bf1=[])=>_0x2a7fa4[_0x1eead3(0x2f8)+'tate'](_0x5a5bf1)),_0x5776a7('app:gene'+_0x1eead3(0x1c8)+_0x1eead3(0x4ce)+'al',async(_0x25bef6,_0x2670b7)=>revealPathInFolder(_0x2670b7)),_0x5776a7('artifact'+_0x1eead3(0x29a),async(_0x5cf9eb,_0x5748d2={})=>{const _0x2f59ad=_0x1eead3,_0x2344d0=_0x5748d2&&typeof _0x5748d2===_0x2f59ad(0x18c)&&_0x2f59ad(0x23c)+'ey'in _0x5748d2?String(_0x5748d2[_0x2f59ad(0x23c)+'ey']||''):'';return _0x2344d0?_0x2a7fa4[_0x2f59ad(0x33d)+'ssion'](_0x2344d0):_0x2a7fa4[_0x2f59ad(0x499)]();}),_0x5776a7(_0x1eead3(0x16c)+_0x1eead3(0x49e),async(_0xafda46,_0x5d3d3b={})=>_0x2a7fa4[_0x1eead3(0x193)](_0x5d3d3b)),_0x5776a7('artifact'+_0x1eead3(0x337),async(_0x1a874e,_0x2f6d28={})=>_0x2a7fa4[_0x1eead3(0x2b3)](String(_0x2f6d28['id']||_0x2f6d28||''))),_0x5776a7(_0x1eead3(0x16c)+_0x1eead3(0x32f),async(_0x3c489c,_0x83d373={})=>_0x2a7fa4['deleteFi'+'le'](String(_0x83d373['id']||_0x83d373||''))),_0x5776a7(_0x1eead3(0x16c)+'s:delete'+_0x1eead3(0x1fb),async(_0x10ce14,_0x2d42bd={})=>_0x2a7fa4[_0x1eead3(0x2f8)+_0x1eead3(0x4da)](_0x2d42bd['paths']||_0x2d42bd)),_0x5776a7(_0x1eead3(0x16c)+_0x1eead3(0x3f8),async(_0x1d481d,_0x52665c={})=>{const _0x18c821=_0x1eead3,_0x561b4a=typeof _0x52665c===_0x18c821(0x40e)?_0x52665c:_0x52665c[_0x18c821(0x4ad)]||_0x52665c[_0x18c821(0x410)];return revealPathInFolder(_0x561b4a);});const _0x2b0730=createPreferencesStore({'stateDir':configController[_0x1eead3(0x137)+_0x1eead3(0x3ca)](),'storeFile':_0x1eead3(0x476)+'preferen'+_0x1eead3(0x1b2)}),_0x32d8b1=await _0x2b0730[_0x1eead3(0x308)](_0x1eead3(0x428)+_0x1eead3(0x3bc),configController['paths'][_0x1eead3(0x177)]),_0x4976dd=setShellLoggerLevel(_0x32d8b1);setRuntimeLoggerLevel(_0x32d8b1),mainLogger?.[_0x1eead3(0x448)](_0x1eead3(0x144)+'g\x20level\x20'+_0x1eead3(0x153)+'zed',{'level':_0x4976dd,'configuredLevel':configController[_0x1eead3(0x39b)]['logLevel'],'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)}),_0x5776a7(_0x1eead3(0x174)+_0x1eead3(0x497)+'se',async()=>_0x2b0730[_0x1eead3(0x308)](_0x1eead3(0x299)+_0x1eead3(0x170)+'se',![])),_0x5776a7('app:tray'+_0x1eead3(0x1be)+'se',async(_0x3e9b51,_0x395f0e)=>_0x2b0730[_0x1eead3(0x39a)](_0x1eead3(0x299)+'rayOnClo'+'se',_0x395f0e===!![])),_0x5776a7(_0x1eead3(0x4e8)+_0x1eead3(0x498),async()=>({'level':getShellLoggerLevel(configController[_0x1eead3(0x39b)]),'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)})),_0x5776a7(_0x1eead3(0x367)+_0x1eead3(0x498),async(_0x29ad32,_0x52e4fe={})=>{const _0x269f98=_0x1eead3,_0x2c3e5b=normalizeRequestedLogLevel(typeof _0x52e4fe===_0x269f98(0x40e)?_0x52e4fe:_0x52e4fe[_0x269f98(0x4bb)]);await _0x2b0730['set'](_0x269f98(0x428)+_0x269f98(0x3bc),_0x2c3e5b);const _0xf1dbc7=setShellLoggerLevel(_0x2c3e5b);return setRuntimeLoggerLevel(_0x2c3e5b),await writeMainAuditLog(_0x269f98(0x144)+_0x269f98(0x3d0)+_0x269f98(0x483),{'requestedLevel':_0x2c3e5b,'level':_0xf1dbc7,'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)}),{'ok':!![],'level':_0xf1dbc7,'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)};}),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0x5776a7,'sep':sep,'stateDir':configController[_0x1eead3(0x137)+_0x1eead3(0x3ca)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0x5776a7,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0x5776a7,'modelHandlers':{'saveCustomModel':_0xad9edb=>_0xab79f1()[_0x1eead3(0x4f8)]['saveCust'+'omModel'](_0xad9edb),'deleteCustomModel':_0x193390=>_0xab79f1()['models']['deleteCu'+_0x1eead3(0x451)+'l'](_0x193390)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x22fd44)=>configController['updateOp'+_0x1eead3(0x128)+_0x1eead3(0x175)](..._0x22fd44),'setPluginConfig':_0x91dc56=>configController[_0x1eead3(0x370)+_0x1eead3(0x458)+_0x1eead3(0x2ba)](_0x91dc56),'setChannelConfig':_0x16b2e3=>configController[_0x1eead3(0x370)+_0x1eead3(0x4c3)+_0x1eead3(0x294)](_0x16b2e3),'deleteChannelConfig':_0x5cd593=>configController[_0x1eead3(0x361)+_0x1eead3(0x1de)+_0x1eead3(0x242)+_0x1eead3(0x1d3)](_0x5cd593),'setSkillEntry':_0x34accc=>configController[_0x1eead3(0x370)+'lawSkill'+_0x1eead3(0x440)](_0x34accc),'deleteSkillEntry':_0x334413=>configController[_0x1eead3(0x361)+_0x1eead3(0x1f9)+_0x1eead3(0x2e0)](_0x334413),'setMcpServer':_0xf6453b=>configController[_0x1eead3(0x370)+'lawMcpSe'+_0x1eead3(0x335)](_0xf6453b),'deleteMcpServer':_0x48f84c=>configController[_0x1eead3(0x361)+_0x1eead3(0x125)+_0x1eead3(0x182)](_0x48f84c)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0x5776a7(_0x1eead3(0x358)+_0x1eead3(0x419)+_0x1eead3(0x3db),async()=>connectorController['listImCh'+_0x1eead3(0x242)+_0x1eead3(0x1ca)]()),_0x5776a7(_0x1eead3(0x358)+_0x1eead3(0x419)+_0x1eead3(0x28d)+'e',async(_0x403caf,_0x45b95f={})=>connectorController[_0x1eead3(0x31e)+_0x1eead3(0x383)+_0x1eead3(0x2db)](_0x45b95f)),_0x5776a7(_0x1eead3(0x358)+'m-channe'+_0x1eead3(0x4d4)+'nabled',async(_0xdf616e,_0xad12ee={})=>connectorController[_0x1eead3(0x271)+_0x1eead3(0x3d8)+'led'](_0xad12ee)),_0x5776a7('config:c'+_0x1eead3(0x1e3)+_0x1eead3(0x11b),async(_0x39c565,_0x356f4b={})=>{const _0x42a845=_0x1eead3,_0x456392=String(_0x356f4b['channelI'+'d']||_0x356f4b[_0x42a845(0x376)]?.['channelI'+'d']||_0x356f4b[_0x42a845(0x376)]?.['id']||'');if(!_0x456392)throw new Error(_0x42a845(0x3b3)+_0x42a845(0x31d)+'uired');const _0x2cbd89=_0x356f4b[_0x42a845(0x376)]||_0x356f4b,_0x13bfa9={'feishu':connectorController[_0x42a845(0x4b6)+'huChanne'+_0x42a845(0x155)],'qqbot':connectorController[_0x42a845(0x4a6)+'tChannel'+'Config'],'wecom':connectorController[_0x42a845(0x461)+_0x42a845(0x362)+_0x42a845(0x213)],'qq_mail':connectorController[_0x42a845(0x320)+_0x42a845(0x44d)+_0x42a845(0x198)+'g'],'netease_mail':connectorController[_0x42a845(0x1af)+'aseMailC'+'onnector'+_0x42a845(0x213)],'tencent_exmail':connectorController[_0x42a845(0x48a)+'entExmai'+'lConnect'+_0x42a845(0x357)],'feishu_doc':connectorController['saveFeis'+_0x42a845(0x2b4)+_0x42a845(0x4ab)+_0x42a845(0x175)],'tencent_docs':connectorController[_0x42a845(0x48a)+_0x42a845(0x4af)+_0x42a845(0x1e3)+_0x42a845(0x213)],'kdocs':connectorController[_0x42a845(0x167)+'sConnect'+_0x42a845(0x357)],'dingtalk_doc':connectorController['saveDing'+_0x42a845(0x332)+'onnector'+_0x42a845(0x213)]},_0x4c79c2=_0x13bfa9[_0x456392];if(!_0x4c79c2)throw new Error(_0x42a845(0x25f)+_0x42a845(0x235)+_0x42a845(0x3a2)+_0x456392);return _0x4c79c2(_0x2cbd89);}),_0x5776a7('config:c'+_0x1eead3(0x1e3)+_0x1eead3(0x13b)+'ishu-cha'+_0x1eead3(0x3a7),async(_0x43d9fd,_0x1aede8={})=>connectorController[_0x1eead3(0x4b6)+_0x1eead3(0x4f9)+'lConfig'](_0x1aede8)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x466)+_0x1eead3(0x122)+_0x1eead3(0x30a),async(_0x5eee67,_0x5156ce={})=>connectorController[_0x1eead3(0x4a6)+'tChannel'+'Config'](_0x5156ce)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x423)+'com-chan'+_0x1eead3(0x30a),async(_0x3cdbcc,_0x418edb={})=>connectorController[_0x1eead3(0x461)+_0x1eead3(0x362)+_0x1eead3(0x213)](_0x418edb)),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+':save-qq'+'-mail',async(_0x15f113,_0x2062b5={})=>connectorController[_0x1eead3(0x320)+_0x1eead3(0x44d)+'torConfi'+'g'](_0x2062b5)),_0x5776a7('config:c'+'onnector'+_0x1eead3(0x30c)+_0x1eead3(0x200)+'il',async(_0x161572,_0x2baf2b={})=>connectorController[_0x1eead3(0x1af)+_0x1eead3(0x25d)+_0x1eead3(0x1e3)+_0x1eead3(0x213)](_0x2baf2b)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x35d)+_0x1eead3(0x164)+_0x1eead3(0x396),async(_0x5a0dce,_0x4c7a17={})=>connectorController['saveTenc'+'entExmai'+_0x1eead3(0x41c)+_0x1eead3(0x357)](_0x4c7a17)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x13b)+_0x1eead3(0x218),async(_0x1fb9da,_0x3d4fe9={})=>connectorController[_0x1eead3(0x4b6)+_0x1eead3(0x2b4)+_0x1eead3(0x4ab)+_0x1eead3(0x175)](_0x3d4fe9)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x35d)+_0x1eead3(0x3f6)+'cs',async(_0x1d61e1,_0x1e3eef={})=>connectorController[_0x1eead3(0x48a)+_0x1eead3(0x4af)+_0x1eead3(0x1e3)+_0x1eead3(0x213)](_0x1e3eef)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x115)+_0x1eead3(0x117),async(_0x412483,_0x1e00b9={})=>connectorController[_0x1eead3(0x167)+_0x1eead3(0x25b)+_0x1eead3(0x357)](_0x1e00b9)),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+_0x1eead3(0x44a)+'ngtalk-d'+'oc',async(_0xd60e6d,_0x2c4c55={})=>connectorController['saveDing'+_0x1eead3(0x332)+_0x1eead3(0x1e3)+_0x1eead3(0x213)](_0x2c4c55)),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+'-session'+':start',async(_0x46ebb8,_0x21fb1e={})=>{const _0xea5c1b=_0x1eead3,_0x59620b=String(_0x21fb1e[_0xea5c1b(0x3b3)+'d']||_0x21fb1e['type']||'');if(_0x59620b===_0xea5c1b(0x1b8))return connectorController[_0xea5c1b(0x1dc)+_0xea5c1b(0x42b)+'nectSess'+_0xea5c1b(0x4f6)]();if(_0x59620b===_0xea5c1b(0x209)+'oc')return connectorController[_0xea5c1b(0x4e6)+_0xea5c1b(0x2ed)+_0xea5c1b(0x1b4)+_0xea5c1b(0x4f5)]();if(_0x59620b===_0xea5c1b(0x2e8))return connectorController[_0xea5c1b(0x4e6)+'shuRegis'+_0xea5c1b(0x472)+_0xea5c1b(0x239)](_0x21fb1e);if(_0x59620b==='openclaw'+_0xea5c1b(0x3c1)||_0x59620b===_0xea5c1b(0x395))return connectorController[_0xea5c1b(0x18d)+_0xea5c1b(0x432)+_0xea5c1b(0x270)+'n']({'gatewayPort':_0xab79f1()['gatewayP'+_0xea5c1b(0x263)](),'gatewayToken':_0xab79f1()[_0xea5c1b(0x2df)+_0xea5c1b(0x2e2)]()});throw new Error(_0xea5c1b(0x25f)+'ted\x20conn'+'ector\x20se'+'ssion:\x20'+(_0x59620b||_0xea5c1b(0x194)));}),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+_0x1eead3(0x1b0)+_0x1eead3(0x48c),async(_0x14356d,_0x11b6b8={})=>{const _0x4b7689=_0x1eead3,_0x288c17=String(_0x11b6b8[_0x4b7689(0x3b3)+'d']||_0x11b6b8[_0x4b7689(0x2e6)]||'');if(_0x288c17===_0x4b7689(0x1b8))return connectorController[_0x4b7689(0x186)+'CliConne'+'ctStatus'](_0x11b6b8);if(_0x288c17===_0x4b7689(0x209)+'oc')return connectorController['getFeish'+_0x4b7689(0x116)+_0x4b7689(0x2a6)+_0x4b7689(0x474)](_0x11b6b8);if(_0x288c17===_0x4b7689(0x2e8))return connectorController['getFeish'+'uRegistr'+_0x4b7689(0x28e)+'tus'](_0x11b6b8);throw new Error(_0x4b7689(0x25f)+_0x4b7689(0x235)+_0x4b7689(0x1ea)+_0x4b7689(0x1a4)+(_0x288c17||'unknown'));}),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x1b0)+':cancel',async(_0x142ca2,_0x4c7c9b={})=>{const _0x3e38ef=_0x1eead3,_0x2e7d71=String(_0x4c7c9b[_0x3e38ef(0x3b3)+'d']||_0x4c7c9b[_0x3e38ef(0x2e6)]||'');if(_0x2e7d71===_0x3e38ef(0x1b8))return connectorController[_0x3e38ef(0x203)+_0x3e38ef(0x16d)+'nnectSes'+'sion'](_0x4c7c9b);if(_0x2e7d71===_0x3e38ef(0x209)+'oc')return connectorController[_0x3e38ef(0x4e4)+_0x3e38ef(0x43d)+_0x3e38ef(0x2f5)+_0x3e38ef(0x3c2)](_0x4c7c9b);if(_0x2e7d71===_0x3e38ef(0x2e8))return connectorController[_0x3e38ef(0x4e4)+_0x3e38ef(0x40d)+_0x3e38ef(0x2d0)+_0x3e38ef(0x4f5)](_0x4c7c9b);if(_0x2e7d71===_0x3e38ef(0x4e5)+_0x3e38ef(0x3c1)||_0x2e7d71===_0x3e38ef(0x395))return connectorController[_0x3e38ef(0x205)+'chatChan'+_0x3e38ef(0x13c)+'on']();return{'ok':!![]};}),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+_0x1eead3(0x1b0)+':complet'+'e',async(_0x350f57,_0x220650={})=>{const _0x3aa236=_0x1eead3,_0x5cdb0c=String(_0x220650[_0x3aa236(0x3b3)+'d']||_0x220650[_0x3aa236(0x2e6)]||'');if(_0x5cdb0c===_0x3aa236(0x209)+'oc')return connectorController[_0x3aa236(0x26d)+_0x3aa236(0x45d)+'cCliConn'+_0x3aa236(0x2a8)+'on'](_0x220650);throw new Error('Unsuppor'+_0x3aa236(0x235)+'ector\x20se'+'ssion:\x20'+(_0x5cdb0c||'unknown'));}),_0x5776a7(_0x1eead3(0x129)+_0x1eead3(0x187),()=>connectorController[_0x1eead3(0x4be)+'igSnapsh'+'ot']());const _0xd811cf=_0x51b10f=>{const _0x3f0798=_0x1eead3,_0x952570=_0x51b10f['agents']&&typeof _0x51b10f[_0x3f0798(0x334)]==='object'?_0x51b10f[_0x3f0798(0x334)]:{};return Array['isArray'](_0x952570[_0x3f0798(0x499)])?_0x952570[_0x3f0798(0x499)]:[];},_0x2be380=_0x48a4cd=>{const _0x286382=_0x1eead3,_0x5e09c7=typeof _0x48a4cd===_0x286382(0x40e)?_0x48a4cd[_0x286382(0x36b)]():'',_0x5ded20=_0x5e09c7[_0x286382(0x3a1)](/^agent:([^:]+):/);return _0x5ded20?.[0x1]||'';},_0x8e0781=(_0xf4366b={},_0x209d5d=[])=>{const _0x391ced=_0x1eead3,_0x308259=Array[_0x391ced(0x496)](_0xf4366b[_0x391ced(0x3d6)])?_0xf4366b['groups']:[],_0x34dd50=Array[_0x391ced(0x496)](_0xf4366b['agents'])?_0xf4366b[_0x391ced(0x334)]:Array[_0x391ced(0x496)](_0xf4366b[_0x391ced(0x499)])?_0xf4366b[_0x391ced(0x499)]:_0x308259[_0x391ced(0x1fd)](_0x215b16=>_0x215b16?.[_0x391ced(0x40c)])[_0x391ced(0x1d5)](Boolean),_0x4846fd=Array[_0x391ced(0x496)](_0x209d5d)?_0x209d5d:[];return _0x34dd50['map'](_0x502178=>{const _0xddea39=_0x391ced,_0x48343f=String(_0x502178?.['id']||_0x502178?.[_0xddea39(0x31f)]||'')['trim'](),_0x336fdc=_0x308259['find'](_0x5f4330=>{const _0x2bdeaf=_0xddea39,_0x241d0e=String(_0x5f4330?.[_0x2bdeaf(0x40c)]?.['id']||_0x5f4330?.['agent']?.['agentId']||'')[_0x2bdeaf(0x36b)]();return _0x241d0e===_0x48343f;});return{..._0x336fdc&&typeof _0x336fdc===_0xddea39(0x18c)?_0x336fdc:{},'agent':_0x502178,'sessions':_0x48343f?_0x4846fd[_0xddea39(0x1d5)](_0x4abe95=>{const _0x2aa691=_0xddea39,_0x77a538=String(_0x4abe95?.[_0x2aa691(0x31f)]||_0x4abe95?.[_0x2aa691(0x415)]||_0x4abe95?.['agent']?.['id']||_0x2be380(_0x4abe95?.[_0x2aa691(0x188)])||'')[_0x2aa691(0x36b)]();return _0x77a538?_0x77a538===_0x48343f:_0x48343f==='main';}):[]};});};_0x5776a7('app:upda'+_0x1eead3(0x1c6)+_0x1eead3(0x4da),async()=>updateController?.[_0x1eead3(0x489)]()),_0x5776a7(_0x1eead3(0x20e)+_0x1eead3(0x4ca),async()=>updateController?.[_0x1eead3(0x255)+_0x1eead3(0x3ba)]()),_0x5776a7('app:upda'+_0x1eead3(0x2dc)+'oad',async()=>updateController?.[_0x1eead3(0x190)+_0x1eead3(0x3c7)]()),_0x5776a7(_0x1eead3(0x20e)+_0x1eead3(0x413)+_0x1eead3(0x145)+_0x1eead3(0x426),async()=>updateController?.[_0x1eead3(0x12a)+'nstall']()),_0x5776a7(_0x1eead3(0x217)+_0x1eead3(0x132),async(_0x182d15,_0x34f5ce={})=>{const _0x34fcdc=_0x1eead3,_0x49b782=await dialog[_0x34fcdc(0x42d)+_0x34fcdc(0x224)](BrowserWindow[_0x34fcdc(0x382)+_0x34fcdc(0x3c9)](_0x182d15['sender'])??mainWindow,{'properties':['openFile',..._0x34f5ce?.[_0x34fcdc(0x273)]!==0x1?[_0x34fcdc(0x38d)+_0x34fcdc(0x216)]:[]],'filters':_0x34f5ce?.[_0x34fcdc(0x268)+_0x34fcdc(0x274)+'s']?[{'name':'Custom','extensions':_0x34f5ce[_0x34fcdc(0x268)+_0x34fcdc(0x274)+'s']}]:undefined});return _0x49b782[_0x34fcdc(0x27c)+'s'][_0x34fcdc(0x1fd)](_0x53865a=>({'path':_0x53865a,'name':_0x53865a['split'](/[\\/]/)[_0x34fcdc(0x441)]()||_0x53865a}));}),_0x5776a7(_0x1eead3(0x217)+_0x1eead3(0x266)+_0x1eead3(0x2e5),async(_0x5e487a,_0x1e234c={})=>{const _0xc49b6e=_0x1eead3,_0x482e7c=String(_0x1e234c[_0xc49b6e(0x261)+'th']||'');if(!_0x482e7c)return{'success':![],'error':_0xc49b6e(0x261)+_0xc49b6e(0x192)+'quired'};const _0x36d8ce=await dialog[_0xc49b6e(0x219)+_0xc49b6e(0x224)](mainWindow,{'defaultPath':_0x1e234c['defaultF'+_0xc49b6e(0x150)]||_0x482e7c['split'](/[\\/]/)[_0xc49b6e(0x441)]()});if(_0x36d8ce[_0xc49b6e(0x37e)]||!_0x36d8ce[_0xc49b6e(0x27c)])return{'success':![],'canceled':!![]};const {copyFile:_0x2695fe}=await import(_0xc49b6e(0x158)+_0xc49b6e(0x285));return await _0x2695fe(_0x482e7c,_0x36d8ce[_0xc49b6e(0x27c)]),{'success':!![],'filePath':_0x36d8ce['filePath']};}),_0x5776a7(_0x1eead3(0x3fd)+_0x1eead3(0x20a)+_0x1eead3(0x26e),async(_0xd58527,_0x1681bb)=>{return clipboard['writeTex'+'t'](String(_0x1681bb??'')),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x4dc)+_0x1eead3(0x180)+'rt',async()=>{const _0x1561ac=_0x1eead3;return app[_0x1561ac(0x267)](),app[_0x1561ac(0x318)](),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x135)+_0x1eead3(0x1b3)+_0x1eead3(0x2da),_0x576756=>Boolean(BrowserWindow[_0x1eead3(0x382)+_0x1eead3(0x3c9)](_0x576756[_0x1eead3(0x15b)])?.[_0x1eead3(0x36a)+_0x1eead3(0x2da)]())),_0x5776a7(_0x1eead3(0x445)+_0x1eead3(0x178),async(_0x27e9f8,_0x29b9ad)=>{const _0x17f494=_0x1eead3;return app[_0x17f494(0x1ff)+'ItemSett'+_0x17f494(0x2a0)]({'openAtLogin':_0x29b9ad===!![]}),{'ok':!![],'enabled':_0x29b9ad===!![]};}),_0x5776a7(_0x1eead3(0x445)+_0x1eead3(0x4cd),async()=>app[_0x1eead3(0x2ac)+_0x1eead3(0x139)+'ings']()[_0x1eead3(0x3fc)+_0x1eead3(0x244)]),_0x5776a7(_0x1eead3(0x217)+_0x1eead3(0x37a)+_0x1eead3(0x44b),async _0x450590=>{const _0x4811c6=_0x1eead3,_0xd2d11e=await dialog[_0x4811c6(0x42d)+_0x4811c6(0x224)](BrowserWindow[_0x4811c6(0x382)+'ontents'](_0x450590[_0x4811c6(0x15b)])??mainWindow,{'properties':[_0x4811c6(0x30f)+_0x4811c6(0x4d5)]});return _0xd2d11e[_0x4811c6(0x27c)+'s'][0x0]||'';}),_0x5776a7('app:syst'+_0x1eead3(0x20d)+'folder',async(_0x4ead5d,_0x32300e)=>{const _0x37a026=_0x1eead3,_0x5557db=await shell[_0x37a026(0x3d3)](String(_0x32300e||''));return _0x5557db||'';}),_0x5776a7('openclaw'+_0x1eead3(0x156)+_0x1eead3(0x3f5),async()=>_0xab79f1()[_0x1eead3(0x2df)+_0x1eead3(0x2e2)]()),_0x5776a7(_0x1eead3(0x4e5)+':gateway'+_0x1eead3(0x2ca),async()=>_0xab79f1()[_0x1eead3(0x163)+_0x1eead3(0x263)]()),_0x5776a7('openclaw'+_0x1eead3(0x3b6)+'e',async(_0x403be7,_0x2a6585=[])=>{const _0x4926b3=_0x1eead3,_0x298be4=await runClawOnce(shellConfig[_0x4926b3(0x22f)+_0x4926b3(0x326)],Array[_0x4926b3(0x496)](_0x2a6585)?_0x2a6585:[]);return{'ok':_0x298be4[_0x4926b3(0x323)]===0x0,..._0x298be4};});const _0x1f74f1=configController[_0x1eead3(0x137)+_0x1eead3(0x3ca)]();sessionSqliteStore=ensureSessionSqliteStore();const _0x2696a1=createAgentSessionsMapStore({'stateDir':_0x1f74f1});_0x5776a7(_0x1eead3(0x2ea)+':fork',async(_0x3bb3a8,_0x19205b={})=>{const _0x4b5533=_0x1eead3,_0x30dd4e=_0x19205b&&typeof _0x19205b===_0x4b5533(0x18c)?_0x19205b:{},_0x1830d2=_0x30dd4e[_0x4b5533(0x269)+'ssionKey']||_0x30dd4e[_0x4b5533(0x23c)+'ey'],_0x61f736=await _0xab79f1()[_0x4b5533(0x2ea)]['create']({..._0x30dd4e,'parentSessionKey':_0x1830d2}),_0x352248=String(_0x61f736?.[_0x4b5533(0x188)]||'')[_0x4b5533(0x36b)](),_0x5e7658=String(_0x61f736?.[_0x4b5533(0x2a3)+'d']||'')['trim']();return _0x352248&&_0x5e7658&&await _0x2696a1[_0x4b5533(0x193)]({'sessionKey':_0x352248,'sessionId':_0x5e7658,'sourceSessionKey':_0x30dd4e[_0x4b5533(0x456)+'ssionKey']||_0x1830d2,...typeof _0x30dd4e[_0x4b5533(0x353)+_0x4b5533(0x148)]==='number'?{'keepUntilTs':_0x30dd4e[_0x4b5533(0x353)+_0x4b5533(0x148)]}:{},...typeof _0x30dd4e[_0x4b5533(0x480)+'le']==='string'?{'cutoffRole':_0x30dd4e[_0x4b5533(0x480)+'le']}:{},...typeof _0x30dd4e['cutoffTe'+'xt']===_0x4b5533(0x40e)?{'cutoffText':_0x30dd4e[_0x4b5533(0x25a)+'xt']}:{}}),_0x61f736;}),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x220)+_0x1eead3(0x13a),async(_0x2e766c,_0x3554dc={})=>_0x2696a1[_0x1eead3(0x308)](_0x3554dc)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x220)+_0x1eead3(0x1e9)+'t',async(_0x5a2620,_0x4a3a3b={})=>_0x2696a1[_0x1eead3(0x193)](_0x4a3a3b)),_0x5776a7(_0x1eead3(0x2ea)+':agent-m'+_0x1eead3(0x39f),async(_0xf7fd86,_0x31da2c={})=>{const _0x1d0a39=_0x1eead3,_0x53d799=String(_0x31da2c[_0x1d0a39(0x23c)+'ey']||'')[_0x1d0a39(0x36b)]();if(!_0x53d799)return null;return await sessionSqliteStore[_0x1d0a39(0x379)+_0x1d0a39(0x13f)](_0x53d799);}),_0x5776a7(_0x1eead3(0x112)+'reate',async(_0x59c241,_0x10fc89={})=>{const _0x27a868=_0x1eead3,_0x5f5d24=await readMutableConfig(),_0x230ec0=_0x5f5d24[_0x27a868(0x334)]&&typeof _0x5f5d24['agents']==='object'?_0x5f5d24[_0x27a868(0x334)]:{},_0x69b8f8=_0xd811cf(_0x5f5d24),_0x5c035a=String(_0x10fc89['id']||_0x10fc89['name']||_0x27a868(0x110)+Date['now']())['trim']()[_0x27a868(0x3b9)](/\s+/g,'-'),_0x99274c={'id':_0x5c035a,'name':String(_0x10fc89['name']||_0x5c035a),..._0x10fc89[_0x27a868(0x488)+'e']?{'workspace':String(_0x10fc89[_0x27a868(0x488)+'e'])}:{},..._0x10fc89[_0x27a868(0x1ce)]?{'model':_0x10fc89[_0x27a868(0x1ce)]}:{},..._0x10fc89[_0x27a868(0x2f3)]?{'emoji':_0x10fc89[_0x27a868(0x2f3)]}:{},..._0x10fc89[_0x27a868(0x181)]?{'avatar':_0x10fc89[_0x27a868(0x181)]}:{},...Array[_0x27a868(0x496)](_0x10fc89[_0x27a868(0x2d7)])?{'skills':_0x10fc89['skills']}:{}};if(_0x69b8f8[_0x27a868(0x1f0)](_0xe2bd05=>_0xe2bd05?.['id']===_0x5c035a))throw new Error('agent\x20al'+_0x27a868(0x1c2)+_0x27a868(0x30b));return _0x230ec0[_0x27a868(0x499)]=[..._0x69b8f8,_0x99274c],_0x5f5d24[_0x27a868(0x334)]=_0x230ec0,await _0x2c1ef4(_0x5f5d24,'agent\x20cr'+_0x27a868(0x245)),{'ok':!![],'agent':_0x99274c};}),_0x5776a7(_0x1eead3(0x477)+_0x1eead3(0x2be),async(_0x251671,_0x3b2f0a={})=>{const _0x48d7aa=_0x1eead3,_0xf07129=String(_0x3b2f0a['id']||_0x3b2f0a['agentId']||'')['trim']();if(!_0xf07129)throw new Error(_0x48d7aa(0x1fc)+_0x48d7aa(0x366)+_0x48d7aa(0x371));const _0x4647b1=await readMutableConfig(),_0x1920e0=_0x4647b1[_0x48d7aa(0x334)]&&typeof _0x4647b1['agents']===_0x48d7aa(0x18c)?_0x4647b1[_0x48d7aa(0x334)]:{},_0x96f315=_0xd811cf(_0x4647b1),_0xda53d0=_0x96f315['map'](_0x3857ac=>_0x3857ac?.['id']===_0xf07129?{..._0x3857ac,..._0x3b2f0a,'id':_0xf07129}:_0x3857ac);return _0x1920e0[_0x48d7aa(0x499)]=_0xda53d0,_0x4647b1[_0x48d7aa(0x334)]=_0x1920e0,await _0x2c1ef4(_0x4647b1,_0x48d7aa(0x29e)+_0x48d7aa(0x2b7)),{'ok':!![],'agent':_0xda53d0[_0x48d7aa(0x189)](_0x2eb85e=>_0x2eb85e?.['id']===_0xf07129)||null};}),_0x5776a7(_0x1eead3(0x354)+'elete',async(_0x65bb97,_0x2fb9d6={})=>{const _0x471bd0=_0x1eead3,_0x37bef7=String(_0x2fb9d6['id']||_0x2fb9d6[_0x471bd0(0x31f)]||'')['trim']();if(!_0x37bef7)throw new Error('agent\x20id'+'\x20is\x20requ'+_0x471bd0(0x371));const _0x3e73c2=await readMutableConfig(),_0x1d5873=_0x3e73c2[_0x471bd0(0x334)]&&typeof _0x3e73c2[_0x471bd0(0x334)]==='object'?_0x3e73c2[_0x471bd0(0x334)]:{};return _0x1d5873[_0x471bd0(0x499)]=_0xd811cf(_0x3e73c2)[_0x471bd0(0x1d5)](_0x1743a3=>_0x1743a3?.['id']!==_0x37bef7),_0x3e73c2[_0x471bd0(0x334)]=_0x1d5873,await _0x2c1ef4(_0x3e73c2,_0x471bd0(0x4c1)+_0x471bd0(0x484)),{'ok':!![],'agentId':_0x37bef7};}),_0x5776a7(_0x1eead3(0x34a)+_0x1eead3(0x1aa)+_0x1eead3(0x2b9)+'t',async(_0x27454b,_0x2fe27c={})=>{const _0x3da45d=_0x1eead3,[_0x11168a,_0x5a1242]=await Promise[_0x3da45d(0x426)]([_0xab79f1()[_0x3da45d(0x334)][_0x3da45d(0x499)](),ensureSessionDataService()[_0x3da45d(0x162)+'aries'](_0x2fe27c)[_0x3da45d(0x317)](()=>({'sessions':[]}))]),_0x262456=Array[_0x3da45d(0x496)](_0x5a1242[_0x3da45d(0x2ea)])?_0x5a1242['sessions']:[];return{..._0x11168a,'sessions':_0x262456,'groups':_0x8e0781(_0x11168a,_0x262456)};}),terminalManager=createTerminalManager({'cwd':join(configController[_0x1eead3(0x137)+'tateDir'](),_0x1eead3(0x488)+'e'),'emitData':_0x8da1f4=>broadcast(_0x1eead3(0x438)+'-data',_0x8da1f4),'emitExit':_0x30510b=>broadcast(_0x1eead3(0x438)+_0x1eead3(0x3ce),_0x30510b)}),_0x5776a7('terminal'+':create',async(_0x4e4c6c,_0x18c8d4={})=>terminalManager[_0x1eead3(0x343)](_0x18c8d4)),_0x5776a7(_0x1eead3(0x438)+':input',async(_0x16acc5,_0x38546e={})=>terminalManager['input'](_0x38546e)),_0x5776a7('terminal'+_0x1eead3(0x2af),async(_0x135d4b,_0x425907={})=>terminalManager['resize'](_0x425907)),_0x5776a7(_0x1eead3(0x438)+':close',async(_0x3997d3,_0x2d5908={})=>terminalManager[_0x1eead3(0x1ef)](_0x2d5908)),_0x5776a7('plugins:'+_0x1eead3(0x499),async()=>{const _0x396bd0=_0x1eead3,_0x4f423c=gatewayController?.['runtimeI'+'nfo']?.()||{};return _0x4f423c[_0x396bd0(0x191)]||[];}),_0x5776a7('plugins:'+_0x1eead3(0x405)+'ig',async(_0x1dfc4f,_0x53c6dc={})=>{const _0x5eacd7=String(_0x53c6dc['pluginId']||_0x53c6dc['id']||''),_0x3e3ec5=await readMutableConfig(),_0x44751b=_0x3e3ec5['plugins']?.['entries']||{};return _0x5eacd7?_0x44751b[_0x5eacd7]||null:_0x44751b;}),_0x5776a7(_0x1eead3(0x404)+_0x1eead3(0x13d)+'onfig',async(_0x105ee6,_0x278262={})=>{const _0x109e9e=_0x1eead3,_0x49b888=String(_0x278262[_0x109e9e(0x487)]||_0x278262['id']||'');if(!_0x49b888)throw new Error(_0x109e9e(0x487)+_0x109e9e(0x366)+_0x109e9e(0x371));const _0x9a1eeb=await readMutableConfig(),_0x29c6a9=_0x9a1eeb[_0x109e9e(0x191)]&&typeof _0x9a1eeb[_0x109e9e(0x191)]==='object'?_0x9a1eeb[_0x109e9e(0x191)]:{},_0x3f4a01=_0x29c6a9[_0x109e9e(0x3da)]&&typeof _0x29c6a9[_0x109e9e(0x3da)]==='object'?_0x29c6a9[_0x109e9e(0x3da)]:{};return _0x3f4a01[_0x49b888]={..._0x3f4a01[_0x49b888]||{},..._0x278262[_0x109e9e(0x475)]||_0x278262['patch']||{}},_0x29c6a9[_0x109e9e(0x3da)]=_0x3f4a01,_0x9a1eeb[_0x109e9e(0x191)]=_0x29c6a9,_0x2c1ef4(_0x9a1eeb,_0x109e9e(0x15d)+'onfig\x20up'+_0x109e9e(0x2b7));}),_0x5776a7(_0x1eead3(0x404)+'enable',async(_0x13cefd,_0x5de36d={})=>{const _0xdc7a75=_0x1eead3,_0xe456e3=String(_0x5de36d[_0xdc7a75(0x487)]||_0x5de36d['id']||'');if(!_0xe456e3)throw new Error(_0xdc7a75(0x487)+_0xdc7a75(0x366)+_0xdc7a75(0x371));const _0x5718b3=await readMutableConfig(),_0x4ba6b5=_0x5718b3[_0xdc7a75(0x191)]&&typeof _0x5718b3[_0xdc7a75(0x191)]==='object'?_0x5718b3[_0xdc7a75(0x191)]:{},_0xf034a0=_0x4ba6b5['entries']&&typeof _0x4ba6b5[_0xdc7a75(0x3da)]===_0xdc7a75(0x18c)?_0x4ba6b5[_0xdc7a75(0x3da)]:{};return _0xf034a0[_0xe456e3]={..._0xf034a0[_0xe456e3]||{},'enabled':!![]},_0x4ba6b5[_0xdc7a75(0x3da)]=_0xf034a0,_0x5718b3[_0xdc7a75(0x191)]=_0x4ba6b5,_0x2c1ef4(_0x5718b3,_0xdc7a75(0x46b)+_0xdc7a75(0x1bd));}),_0x5776a7(_0x1eead3(0x404)+'disable',async(_0x74be2,_0x6d3f89={})=>{const _0x5d517e=_0x1eead3,_0x1966ad=String(_0x6d3f89[_0x5d517e(0x487)]||_0x6d3f89['id']||'');if(!_0x1966ad)throw new Error(_0x5d517e(0x487)+'\x20is\x20requ'+_0x5d517e(0x371));const _0xe1d342=await readMutableConfig(),_0x58f03c=_0xe1d342[_0x5d517e(0x191)]&&typeof _0xe1d342[_0x5d517e(0x191)]===_0x5d517e(0x18c)?_0xe1d342[_0x5d517e(0x191)]:{},_0x307ae1=_0x58f03c['entries']&&typeof _0x58f03c[_0x5d517e(0x3da)]===_0x5d517e(0x18c)?_0x58f03c[_0x5d517e(0x3da)]:{};return _0x307ae1[_0x1966ad]={..._0x307ae1[_0x1966ad]||{},'enabled':![]},_0x58f03c[_0x5d517e(0x3da)]=_0x307ae1,_0xe1d342['plugins']=_0x58f03c,_0x2c1ef4(_0xe1d342,_0x5d517e(0x3cd)+_0x5d517e(0x464));}),_0x5776a7(_0x1eead3(0x404)+_0x1eead3(0x226),async(_0x294d4c,_0x1284c7={})=>({'plugins':await((async()=>{const _0x29eb51=_0x1eead3,_0x2b8ef4=gatewayController?.[_0x29eb51(0x306)+_0x29eb51(0x329)]?.()||{};if(!_0x1284c7?.[_0x29eb51(0x487)]&&!_0x1284c7?.['id'])return _0x2b8ef4['plugins']||[];const _0x4058c5=String(_0x1284c7[_0x29eb51(0x487)]||_0x1284c7['id']||'');return(_0x2b8ef4['plugins']||[])[_0x29eb51(0x1d5)](_0x3be427=>_0x3be427[_0x29eb51(0x487)]===_0x4058c5);})())})),_0x5776a7(_0x1eead3(0x455)+_0x1eead3(0x229),async(_0x2511ff,_0x48d121)=>({'ok':!![],'payload':_0x48d121})),_0x5776a7(_0x1eead3(0x17e)+_0x1eead3(0x19e)+'e',async(_0x160375,_0x5371c1)=>{const _0x24f7e0=_0x1eead3;return broadcast('tabs-com'+_0x24f7e0(0x14a),_0x5371c1),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x341)+_0x1eead3(0x201)+_0x1eead3(0x387),async()=>{const _0x761696=_0x1eead3;return broadcast(_0x761696(0x134)+_0x761696(0x387)+_0x761696(0x42a),{}),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x37d)+_0x1eead3(0x4e9)+_0x1eead3(0x387),async(_0x18f8a7,_0x1b6f4a={})=>{const _0x4fd566=_0x1eead3;return broadcast('tabs-age'+_0x4fd566(0x387)+'-refresh'+'-request',_0x1b6f4a),{'ok':!![]};}),_0x5776a7('window:m'+_0x1eead3(0x27e),_0x132978=>{const _0x2443cf=_0x1eead3;return BrowserWindow[_0x2443cf(0x382)+_0x2443cf(0x3c9)](_0x132978[_0x2443cf(0x15b)])?.[_0x2443cf(0x1c9)](),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x1b1)+_0x1eead3(0x248)+_0x1eead3(0x449),_0x2e16d=>{const _0x3cae52=_0x1eead3,_0x458154=BrowserWindow[_0x3cae52(0x382)+_0x3cae52(0x3c9)](_0x2e16d[_0x3cae52(0x15b)]);if(!_0x458154)return{'isMaximized':![]};if(_0x458154[_0x3cae52(0x36a)+_0x3cae52(0x2da)]())_0x458154[_0x3cae52(0x22e)+'ze']();else _0x458154['maximize']();return{'isMaximized':_0x458154[_0x3cae52(0x36a)+_0x3cae52(0x2da)]()};}),_0x5776a7(_0x1eead3(0x3d1)+_0x1eead3(0x3b2),_0xe00c3e=>{const _0x5f4217=_0x1eead3;return BrowserWindow[_0x5f4217(0x382)+'ontents'](_0xe00c3e[_0x5f4217(0x15b)])?.[_0x5f4217(0x1ef)](),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x151)+_0x1eead3(0x2c9)+_0x1eead3(0x24f),()=>openDevToolsForActiveContext()),_0x5776a7(_0x1eead3(0x4e5)+_0x1eead3(0x119)+'-info',()=>_0xab79f1()[_0x1eead3(0x306)+_0x1eead3(0x329)]()),_0x5776a7('openclaw'+_0x1eead3(0x156)+_0x1eead3(0x4ec),async()=>(await ensureGatewayControllerStarted())[_0x1eead3(0x169)+'s']()),ipcMain['on'](_0x1eead3(0x4e5)+':gateway'+_0x1eead3(0x3e3)+'snapshot',_0x5ce464=>{_0x5ce464['returnVa'+'lue']=gatewayController?.['getStatu'+'s']?.()??null;}),_0x5776a7(_0x1eead3(0x4e5)+_0x1eead3(0x156)+'-restart',()=>_0xab79f1()[_0x1eead3(0x3dc)](_0x1eead3(0x14b)+_0x1eead3(0x450))),_0x5776a7(_0x1eead3(0x4e5)+_0x1eead3(0x37c)+_0x1eead3(0x4a1)+_0x1eead3(0x1f3),async()=>({'loadingLifeCycle':_0x1eead3(0x39e),'message':'','updatedAt':new Date()[_0x1eead3(0x3de)+_0x1eead3(0x2ae)]()})),_0x5776a7(_0x1eead3(0x4e5)+':gateway'+_0x1eead3(0x1e5),(_0x31068e,_0x424329={})=>_0xab79f1()[_0x1eead3(0x38c)+_0x1eead3(0x437)](_0x424329?.[_0x1eead3(0x273)]??0xc8)),_0x5776a7(_0x1eead3(0x4e5)+_0x1eead3(0x165)+_0x1eead3(0x1fa)+_0x1eead3(0x1e2)+'n',(_0xfd1c30,_0x1389c4)=>_0xab79f1()['answerAs'+_0x1eead3(0x34e)+_0x1eead3(0x47c)](_0x1389c4)),_0x5776a7('openclaw'+_0x1eead3(0x1ed)+'i-window',async()=>{const _0x395ee3=_0x1eead3,_0x2f51af=join(resolveRuntimeRoot(shellConfig[_0x395ee3(0x22f)+_0x395ee3(0x326)]),_0x395ee3(0x32b),_0x395ee3(0x17f)+'w');if(!existsSync(_0x2f51af))throw new Error(_0x395ee3(0x4e5)+_0x395ee3(0x126)+'pper\x20not'+'\x20found:\x20'+_0x2f51af+(_0x395ee3(0x3cf)+_0x395ee3(0x3e7)+_0x395ee3(0x32d)+_0x395ee3(0x124)));const _0x129e92=join(app[_0x395ee3(0x42f)]('temp'),_0x395ee3(0x3cb)+_0x395ee3(0x386)+_0x395ee3(0x3a5));await writeFile(_0x129e92,_0x395ee3(0x43e)+_0x395ee3(0x3a3)+_0x2f51af[_0x395ee3(0x3b9)](/\\/g,'\x5c\x5c')[_0x395ee3(0x3b9)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x3bf9c3=spawn(_0x395ee3(0x2f4),['-a',_0x395ee3(0x265),_0x129e92],{'detached':!![],'stdio':_0x395ee3(0x4aa)});return _0x3bf9c3[_0x395ee3(0x4fb)](),{'ok':!![],'cliPath':_0x2f51af};}),_0x5776a7(_0x1eead3(0x4a8)+_0x1eead3(0x406),()=>_0xab79f1()[_0x1eead3(0x334)][_0x1eead3(0x499)]()),_0x5776a7('skills:s'+_0x1eead3(0x1e1),(_0x171ec3,_0x14768c)=>_0xab79f1()[_0x1eead3(0x2d7)][_0x1eead3(0x226)](_0x14768c)),_0x5776a7(_0x1eead3(0x2ea)+':create',(_0x413f11,_0x49ed36)=>_0xab79f1()[_0x1eead3(0x2ea)]['create'](_0x49ed36)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x149)+'t',(_0x4c78c2,_0x368122)=>ensureSessionDataService()[_0x1eead3(0x162)+'aries'](_0x368122)),_0x5776a7('sessions'+_0x1eead3(0x3b4),(_0x1b2b97,_0x34532f)=>ensureSessionDataService()['getSumma'+'ry'](_0x34532f)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x3e6)+'n',(_0x533f48,_0x201ced)=>ensureSessionDataService()[_0x1eead3(0x114)+_0x1eead3(0x4f6)](_0x201ced)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x2c3)+_0x1eead3(0x431)+'ot',(_0x55a4ce,_0x258617)=>ensureSessionDataService()[_0x1eead3(0x1d8)+_0x1eead3(0x4b0)](_0x258617)),_0x5776a7(_0x1eead3(0x2ea)+':artifac'+'ts',(_0xb3e417,_0x3dd64e)=>ensureSessionDataService()['getArtif'+_0x1eead3(0x2ce)](_0x3dd64e)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x3a6)+'es',(_0x1edcb8,_0x51aeca)=>ensureSessionDataService()['getProce'+_0x1eead3(0x14d)](_0x51aeca)),_0x5776a7('sessions'+':runtime'+_0x1eead3(0x322)+_0x1eead3(0x2b2),(_0x1503d1,_0x279230={})=>ensureSessionDataService()['getRunti'+_0x1eead3(0x416)](String(_0x279230[_0x1eead3(0x23c)+'ey']||_0x279230[_0x1eead3(0x188)]||''))),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x40f),(_0x4259fe,_0x299066={})=>ensureSessionDataService()[_0x1eead3(0x3ad)+_0x1eead3(0x4c7)+'s'](_0x299066)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x249),async(_0x5f073e,_0x312249={})=>{const _0x1bf17e=_0x1eead3,_0x3fe817=String(_0x312249[_0x1bf17e(0x23c)+'ey']||_0x312249['key']||'')[_0x1bf17e(0x36b)](),_0x3442ff=await ensureSessionSqliteStore()['readSess'+_0x1bf17e(0x460)](_0x3fe817),_0x453c38=await configController[_0x1bf17e(0x272)+_0x1bf17e(0x44e)+'Context']();return{..._0x3442ff,'contextWindowTokens':_0x453c38[_0x1bf17e(0x417)+_0x1bf17e(0x183)+_0x1bf17e(0x481)],'contextWindowSource':_0x453c38['contextW'+'indowSou'+'rce']};}),_0x5776a7('sessions'+':delete',(_0x33bf45,_0x3dd6bf)=>_0xab79f1()['sessions']['delete'](_0x3dd6bf)),_0x5776a7('chat:str'+_0x1eead3(0x4d9),(_0xb7ea0c,_0xb0201a)=>_0xab79f1()['chat'][_0x1eead3(0x26f)](_0xb0201a)),_0x5776a7(_0x1eead3(0x225)+'rt',(_0x1c0685,_0xfdf70d)=>_0xab79f1()[_0x1eead3(0x380)][_0x1eead3(0x470)](_0xfdf70d)),_0x5776a7('logs:wri'+'te',async(_0x5d9592,_0x1311ad={})=>{const _0x4eb53c=_0x1eead3,_0x2cac46=typeof _0x1311ad['level']===_0x4eb53c(0x40e)?_0x1311ad[_0x4eb53c(0x4bb)]:_0x4eb53c(0x448),_0x2541f4=typeof _0x1311ad[_0x4eb53c(0x2b6)]==='string'?_0x1311ad[_0x4eb53c(0x2b6)]:_0x4eb53c(0x14b)+_0x4eb53c(0x2cf),_0x1fc321=typeof _0x1311ad['context']===_0x4eb53c(0x40e)&&_0x1311ad['context'][_0x4eb53c(0x36b)]()?_0x4eb53c(0x14b)+':'+_0x1311ad['context'][_0x4eb53c(0x36b)]():_0x4eb53c(0x14b),_0x14d4d6=_0x1311ad[_0x4eb53c(0x1c5)]&&typeof _0x1311ad['meta']===_0x4eb53c(0x18c)?{...summarizePayload(_0x1311ad[_0x4eb53c(0x1c5)]),'context':_0x1fc321}:{'context':_0x1fc321},_0x551349=rendererLogger;if(_0x551349?.[_0x2cac46])await _0x551349[_0x2cac46](_0x2541f4,_0x14d4d6);else await _0x551349?.[_0x4eb53c(0x448)](_0x2541f4,_0x14d4d6);if(_0x1311ad[_0x4eb53c(0x1a8)+'ic']===!![]||_0x1fc321==='renderer'+_0x4eb53c(0x11e)+_0x4eb53c(0x283)){const _0x51b899=_0x1311ad[_0x4eb53c(0x3fe)]&&typeof _0x1311ad['record']==='object'?_0x1311ad[_0x4eb53c(0x3fe)]:_0x1311ad['meta']?.[_0x4eb53c(0x3fe)]&&typeof _0x1311ad[_0x4eb53c(0x1c5)][_0x4eb53c(0x3fe)]===_0x4eb53c(0x18c)?_0x1311ad[_0x4eb53c(0x1c5)][_0x4eb53c(0x3fe)]:{'level':_0x2cac46,'category':'renderer','event':_0x1fc321,'message':_0x2541f4,'meta':_0x1311ad[_0x4eb53c(0x1c5)]};updateRendererSessionMetrics(_0x51b899),await diagnosticsWriter?.[_0x4eb53c(0x17c)+'nt'](_0x51b899,{'captureIncident':String(_0x51b899[_0x4eb53c(0x4bb)]||_0x2cac46)[_0x4eb53c(0x469)+_0x4eb53c(0x4a4)]()===_0x4eb53c(0x18e)||_0x1311ad[_0x4eb53c(0x328)+_0x4eb53c(0x352)]===!![]});}return{'ok':!![]};}),_0x5776a7('logs:exp'+_0x1eead3(0x263),async(_0xed4890,_0x16d639={})=>{const _0x243b99=_0x1eead3,_0x1f586d=typeof _0x16d639[_0x243b99(0x260)+'r']===_0x243b99(0x40e)&&_0x16d639[_0x243b99(0x260)+'r'][_0x243b99(0x36b)]()?_0x16d639[_0x243b99(0x260)+'r']:undefined,_0x23aaba=await exportLogsArchive({'logsDir':configController[_0x243b99(0x39b)][_0x243b99(0x19f)],'targetDir':_0x1f586d,'appVersion':app[_0x243b99(0x172)+'on']()});return mainLogger?.[_0x243b99(0x448)](_0x243b99(0x388)+_0x243b99(0x19c),{'path':toHomePath(_0x23aaba[_0x243b99(0x4ad)])}),_0x23aaba;}),_0x5776a7(_0x1eead3(0x152)+_0x1eead3(0x253)+_0x1eead3(0x3f7),async()=>{const _0x3f4fc1=_0x1eead3;return await shell[_0x3f4fc1(0x3d3)](configController[_0x3f4fc1(0x39b)]['logsDir']),mainLogger?.[_0x3f4fc1(0x448)]('logs\x20dir'+_0x3f4fc1(0x1b5)+'pened',{'logsDir':toHomePath(configController[_0x3f4fc1(0x39b)][_0x3f4fc1(0x19f)])}),{'ok':!![],'path':configController['paths'][_0x3f4fc1(0x19f)]};}),_0x5776a7(_0x1eead3(0x207)+'t',async()=>{const _0x53fd27=_0x1eead3,_0x1d4168=await readdir(configController[_0x53fd27(0x39b)]['logsDir'],{'recursive':!![]})[_0x53fd27(0x317)](()=>[]);return _0x1d4168;}),_0x5776a7('logs:rea'+'d',async(_0x2b7709,_0x437409={})=>{const _0x2659d6=_0x1eead3,_0x69a904=String(_0x437409[_0x2659d6(0x4ad)]||'');if(!_0x69a904)throw new Error('path\x20is\x20'+'required');return readFile(_0x69a904,_0x2659d6(0x1a0));}),_0x5776a7('files:re'+'ad',async(_0x594eaa,_0x1af50b)=>{const _0xcaf7f9=_0x1eead3,_0x5244c2=Date[_0xcaf7f9(0x2c8)]();try{const _0x52e761=await readFile(_0x1af50b,_0xcaf7f9(0x1a0));return filesLogger?.[_0xcaf7f9(0x448)](_0xcaf7f9(0x330)+_0xcaf7f9(0x30e)+_0xcaf7f9(0x414),{'path':toHomePath(_0x1af50b),'bytes':Buffer[_0xcaf7f9(0x195)+'th'](_0x52e761),'durationMs':Date[_0xcaf7f9(0x2c8)]()-_0x5244c2}),_0x52e761;}catch(_0x574fe0){filesLogger?.[_0xcaf7f9(0x18e)]('file\x20rea'+_0xcaf7f9(0x485),{'path':toHomePath(_0x1af50b),'durationMs':Date[_0xcaf7f9(0x2c8)]()-_0x5244c2,'error':summarizeError(_0x574fe0)});throw _0x574fe0;}}),_0x5776a7(_0x1eead3(0x27d)+_0x1eead3(0x147)+'y',async(_0x2ba9bd,_0x2cbd3b)=>{const _0x4572b7=_0x1eead3,_0x1f57dc=Date['now']();try{const _0x4a15b7=await readFile(_0x2cbd3b);return filesLogger?.[_0x4572b7(0x448)](_0x4572b7(0x37f)+'ile\x20read'+_0x4572b7(0x3d7)+'ed',{'path':toHomePath(_0x2cbd3b),'bytes':_0x4a15b7[_0x4572b7(0x195)+'th'],'durationMs':Date[_0x4572b7(0x2c8)]()-_0x1f57dc}),new Uint8Array(_0x4a15b7);}catch(_0xddff96){filesLogger?.[_0x4572b7(0x18e)](_0x4572b7(0x37f)+'ile\x20read'+'\x20failed',{'path':toHomePath(_0x2cbd3b),'durationMs':Date['now']()-_0x1f57dc,'error':summarizeError(_0xddff96)});throw _0xddff96;}}),_0x5776a7(_0x1eead3(0x3c4)+_0x1eead3(0x26e),async(_0x406ecc,_0x13b0ae={})=>{const _0x49dff8=_0x1eead3,_0x1ab93e=Date[_0x49dff8(0x2c8)]();return await writeFile(_0x13b0ae[_0x49dff8(0x4ad)],_0x13b0ae['content']??'',_0x49dff8(0x1a0)),filesLogger?.[_0x49dff8(0x448)]('file\x20wri'+_0x49dff8(0x3b8)+_0x49dff8(0x1eb),{'path':toHomePath(_0x13b0ae[_0x49dff8(0x4ad)]),'bytes':Buffer[_0x49dff8(0x195)+'th'](String(_0x13b0ae[_0x49dff8(0x1ee)]??'')),'durationMs':Date[_0x49dff8(0x2c8)]()-_0x1ab93e}),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x3c4)+_0x1eead3(0x1b9)+'ry',async(_0x43f017,_0x4eb170={})=>{const _0x57380d=_0x1eead3,_0x4c1ba9=Date[_0x57380d(0x2c8)]();await writeFile(_0x4eb170[_0x57380d(0x4ad)],Buffer[_0x57380d(0x223)](_0x4eb170[_0x57380d(0x1ee)]??[]));const _0x119cea=await stat(_0x4eb170[_0x57380d(0x4ad)])[_0x57380d(0x317)](()=>null);return filesLogger?.[_0x57380d(0x448)](_0x57380d(0x37f)+_0x57380d(0x240)+_0x57380d(0x21c)+_0x57380d(0x414),{'path':toHomePath(_0x4eb170[_0x57380d(0x4ad)]),'bytes':_0x119cea?.[_0x57380d(0x4a9)]??0x0,'durationMs':Date[_0x57380d(0x2c8)]()-_0x4c1ba9}),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x3a8)+_0x1eead3(0x4ee)+'e',async(_0x379420,_0x178709={})=>{const _0x1e006b=_0x1eead3,_0x67e5b2=await dialog[_0x1e006b(0x42d)+_0x1e006b(0x224)](BrowserWindow[_0x1e006b(0x382)+_0x1e006b(0x3c9)](_0x379420[_0x1e006b(0x15b)])??mainWindow,{'title':typeof _0x178709[_0x1e006b(0x447)]===_0x1e006b(0x40e)?_0x178709['title']:undefined,'properties':['openFile',..._0x178709['multiSel'+_0x1e006b(0x216)]?[_0x1e006b(0x38d)+'ections']:[]],'filters':Array[_0x1e006b(0x496)](_0x178709[_0x1e006b(0x43a)])?_0x178709[_0x1e006b(0x43a)]:undefined});return filesLogger?.[_0x1e006b(0x448)](_0x1e006b(0x422)+'ile\x20comp'+'leted',{'canceled':_0x67e5b2[_0x1e006b(0x37e)],'count':_0x67e5b2[_0x1e006b(0x27c)+'s'][_0x1e006b(0x407)],'paths':_0x67e5b2[_0x1e006b(0x27c)+'s'][_0x1e006b(0x1fd)](toHomePath)}),{'canceled':_0x67e5b2['canceled'],'paths':_0x67e5b2['filePath'+'s']};}),_0x5776a7(_0x1eead3(0x157)+'st-direc'+_0x1eead3(0x2c0),async(_0x36a357,_0x36c245={})=>{const _0x22f071=_0x1eead3,_0x38d4f4=resolve(String(_0x36c245[_0x22f071(0x4ad)]||'')),_0x47727b=_0x36c245[_0x22f071(0x45a)+'e']!==![],_0x3ccbc7=Array['isArray'](_0x36c245[_0x22f071(0x2a1)+'ns'])?_0x36c245[_0x22f071(0x2a1)+'ns'][_0x22f071(0x1fd)](_0x31bb97=>String(_0x31bb97)[_0x22f071(0x469)+_0x22f071(0x4a4)]()['replace'](/^\./,''))['filter'](Boolean):null,_0x2abcec=Number['isIntege'+'r'](_0x36c245[_0x22f071(0x2d8)+'es'])&&_0x36c245[_0x22f071(0x2d8)+'es']>0x0?_0x36c245[_0x22f071(0x2d8)+'es']:0xc350,_0x3cacf7=[];let _0x4c7a80=![];async function _0x29a9e1(_0x4e3102){const _0x4c94c4=_0x22f071;if(_0x4c7a80)return;let _0x373aae;try{_0x373aae=await readdir(_0x4e3102,{'withFileTypes':!![]});}catch{return;}for(const _0x584f1d of _0x373aae){if(_0x4c7a80)return;if(_0x584f1d[_0x4c94c4(0x454)][_0x4c94c4(0x4a2)+'th']('.'))continue;const _0x272f67=join(_0x4e3102,_0x584f1d['name']);if(_0x584f1d['isDirect'+_0x4c94c4(0x3f7)]()){if(_0x47727b)await _0x29a9e1(_0x272f67);continue;}if(!_0x584f1d[_0x4c94c4(0x3ab)]())continue;if(_0x3ccbc7){const _0x511327=_0x584f1d['name']['lastInde'+_0x4c94c4(0x2d4)]('.'),_0x54099c=_0x511327>=0x0?_0x584f1d[_0x4c94c4(0x454)][_0x4c94c4(0x347)](_0x511327+0x1)['toLowerC'+_0x4c94c4(0x4a4)]():'';if(!_0x3ccbc7[_0x4c94c4(0x257)](_0x54099c))continue;}if(_0x3cacf7[_0x4c94c4(0x407)]>=_0x2abcec){_0x4c7a80=!![];return;}_0x3cacf7[_0x4c94c4(0x2f1)]({'name':_0x584f1d[_0x4c94c4(0x454)],'path':_0x272f67});}}return await _0x29a9e1(_0x38d4f4),{'path':_0x38d4f4,'entries':_0x3cacf7,'truncated':_0x4c7a80};}),_0x5776a7(_0x1eead3(0x3a8)+_0x1eead3(0x34c)+_0x1eead3(0x1f1),async(_0x47c9fd,_0x2e38a5={})=>{const _0x3a9b99=_0x1eead3,_0x73a677=await dialog[_0x3a9b99(0x42d)+_0x3a9b99(0x224)](BrowserWindow[_0x3a9b99(0x382)+_0x3a9b99(0x3c9)](_0x47c9fd['sender'])??mainWindow,{'title':typeof _0x2e38a5['title']===_0x3a9b99(0x40e)?_0x2e38a5[_0x3a9b99(0x447)]:undefined,'properties':[_0x3a9b99(0x30f)+_0x3a9b99(0x4d5)]});return filesLogger?.[_0x3a9b99(0x448)](_0x3a9b99(0x375)+_0x3a9b99(0x1f6)+_0x3a9b99(0x3d7)+'ed',{'canceled':_0x73a677['canceled'],'count':_0x73a677[_0x3a9b99(0x27c)+'s']['length'],'paths':_0x73a677[_0x3a9b99(0x27c)+'s'][_0x3a9b99(0x1fd)](toHomePath)}),{'canceled':_0x73a677[_0x3a9b99(0x37e)],'paths':_0x73a677['filePath'+'s']};}),_0x5776a7(_0x1eead3(0x488)+'e:direct'+_0x1eead3(0x22d),()=>_0xab79f1()[_0x1eead3(0x488)+'e'][_0x1eead3(0x17d)+_0x1eead3(0x23a)]()),_0x5776a7(_0x1eead3(0x488)+_0x1eead3(0x275)+_0x1eead3(0x1f6),async()=>{const _0x214eff=_0x1eead3,_0x54f44c=await _0xab79f1()['workspac'+'e'][_0x214eff(0x17d)+_0x214eff(0x23a)]();return await shell['openPath'](_0x54f44c['path']),filesLogger?.[_0x214eff(0x448)](_0x214eff(0x488)+_0x214eff(0x321)+_0x214eff(0x3e4)+'ed',{'path':toHomePath(_0x54f44c['path'])}),{'ok':!![],'path':_0x54f44c[_0x214eff(0x4ad)]};}),_0x5776a7('workspac'+_0x1eead3(0x307)+'-context',()=>_0xab79f1()[_0x1eead3(0x488)+'e'][_0x1eead3(0x1ad)+'ntext']()),_0x5776a7(_0x1eead3(0x488)+'e:write-'+'shared-c'+_0x1eead3(0x399),(_0x1ddf97,_0x22684d)=>_0xab79f1()[_0x1eead3(0x488)+'e']['writeSha'+_0x1eead3(0x41d)+'xt'](_0x22684d)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x4c2),(_0x36e29b,_0x1ea5fa)=>_0xab79f1()[_0x1eead3(0x2ea)]['rename'](_0x1ea5fa)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x185),async(_0x59819f,_0x3fa80c={})=>{const _0x5d13df=_0x1eead3,_0x4c328e=String(_0x3fa80c[_0x5d13df(0x23c)+'ey']||_0x3fa80c[_0x5d13df(0x188)]||'')[_0x5d13df(0x36b)]();if(!_0x4c328e)throw new Error('sessionK'+'ey\x20is\x20re'+'quired');const _0x17ae3e=await ensureSessionSqliteStore()[_0x5d13df(0x43b)+'dSession'+_0x5d13df(0x4d6)](),_0x3282a2=await _0xab79f1()[_0x5d13df(0x2ea)][_0x5d13df(0x32e)+_0x5d13df(0x4d2)]([_0x4c328e,..._0x17ae3e['filter'](_0x1b2630=>_0x1b2630!==_0x4c328e)]);return _0x3282a2;}),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x49d),async(_0x8a6709,_0x136c20={})=>{const _0x892f63=_0x1eead3,_0x4155a9=String(_0x136c20['sessionK'+'ey']||_0x136c20[_0x892f63(0x188)]||'')[_0x892f63(0x36b)]();if(!_0x4155a9)throw new Error(_0x892f63(0x23c)+_0x892f63(0x2d3)+_0x892f63(0x1d6));const _0x3f2167=await ensureSessionSqliteStore()['getPinne'+_0x892f63(0x28f)+'Keys']();return await _0xab79f1()[_0x892f63(0x2ea)][_0x892f63(0x32e)+'inned'](_0x3f2167['filter'](_0x4a9fdd=>_0x4a9fdd!==_0x4155a9));}),_0x5776a7('sessions'+_0x1eead3(0x238)+_0x1eead3(0x462),async(_0x5b2c8e,_0x1708f1={})=>{const _0x479441=_0x1eead3,_0x1cf8d3=Array['isArray'](_0x1708f1[_0x479441(0x403)])?_0x1708f1[_0x479441(0x403)]:_0x1708f1;return await _0xab79f1()[_0x479441(0x2ea)][_0x479441(0x32e)+'inned'](_0x1cf8d3);}),_0x5776a7(_0x1eead3(0x402)+_0x1eead3(0x31b),(_0x34ef8d,_0x29645e)=>_0xab79f1()[_0x1eead3(0x2d7)]['install'](_0x29645e)),_0x5776a7(_0x1eead3(0x138)+'t',(_0x31b006,_0x41b618)=>_0xab79f1()[_0x1eead3(0x2d6)]['list'](_0x41b618)),_0x5776a7(_0x1eead3(0x1e7)+'ate',(_0x5b2f76,_0x212fbf)=>_0xab79f1()[_0x1eead3(0x2d6)][_0x1eead3(0x343)](_0x212fbf)),_0x5776a7(_0x1eead3(0x3b7)+_0x1eead3(0x2d5),(_0x532f37,_0x56525f)=>_0xab79f1()[_0x1eead3(0x2d6)][_0x1eead3(0x46a)](_0x56525f)),_0x5776a7(_0x1eead3(0x467)+'ove',(_0xbf7cee,_0x1bf467)=>_0xab79f1()[_0x1eead3(0x2d6)]['remove'](_0x1bf467)),_0x5776a7('cron:run'+'-once',(_0x3712b6,_0x3a4e99)=>_0xab79f1()[_0x1eead3(0x2d6)]['runOnce'](_0x3a4e99)),_0x5776a7(_0x1eead3(0x309)+'s',(_0x19dc91,_0x4dd3d5)=>_0xab79f1()[_0x1eead3(0x2d6)][_0x1eead3(0x46d)](_0x4dd3d5)),_0x5776a7(_0x1eead3(0x48d)+_0x1eead3(0x3bd),async(_0x243864,_0x5e594f={})=>{const _0x590e22=_0x1eead3,_0x1cce23=configController[_0x590e22(0x4c4)+'onfigPat'+'h'](),_0x4ced22=JSON['parse'](await readFile(_0x1cce23,'utf8')),_0x2f23fa=_0x4ced22?.['models']?.['provider'+'s']&&typeof _0x4ced22['models']['provider'+'s']===_0x590e22(0x18c)?_0x4ced22[_0x590e22(0x4f8)][_0x590e22(0x4ac)+'s']:{},_0x2f7941=typeof _0x4ced22?.[_0x590e22(0x334)]?.[_0x590e22(0x4dd)]?.[_0x590e22(0x1ce)]?.['primary']===_0x590e22(0x40e)?_0x4ced22[_0x590e22(0x334)][_0x590e22(0x4dd)][_0x590e22(0x1ce)]['primary']:'',_0x5506ad=String(_0x5e594f['model']||_0x2f7941||'');if(!_0x5506ad[_0x590e22(0x257)]('/'))throw new Error(_0x590e22(0x1ec)+_0x590e22(0x2f2)+'\x20configu'+_0x590e22(0x33b)+'\x20a\x20provi'+'der/mode'+_0x590e22(0x3f0));const _0x1951ae=_0x5506ad[_0x590e22(0x4bf)]('/'),_0x30a5b1=_0x5506ad[_0x590e22(0x347)](0x0,_0x1951ae),_0x15ebd7=_0x5506ad[_0x590e22(0x347)](_0x1951ae+0x1),_0x52da1f=_0x2f23fa[_0x30a5b1];if(!_0x52da1f||typeof _0x52da1f!==_0x590e22(0x18c))throw new Error('provider'+'\x20not\x20con'+_0x590e22(0x2f9)+'\x20'+_0x30a5b1);const _0x3968d2=String(_0x52da1f[_0x590e22(0x34f)]||'https://'+_0x590e22(0x282)+'ai.com/v'+'1')['trim']()[_0x590e22(0x3b9)](/\/$/,''),_0x4b7124=await fetch(_0x3968d2+(_0x590e22(0x1cd)+_0x590e22(0x39d)+'s'),{'method':'POST','headers':{'content-type':'applicat'+'ion/json','Authorization':_0x590e22(0x325)+(_0x52da1f[_0x590e22(0x140)]||''),..._0x52da1f['headers']&&typeof _0x52da1f[_0x590e22(0x430)]==='object'?_0x52da1f['headers']:{}},'body':JSON[_0x590e22(0x17a)+'y']({'model':_0x15ebd7,'max_tokens':Number[_0x590e22(0x292)+'r'](_0x5e594f[_0x590e22(0x26b)+'s'])?_0x5e594f[_0x590e22(0x26b)+'s']:0x400,'temperature':typeof _0x5e594f[_0x590e22(0x311)+'ure']===_0x590e22(0x1d1)?_0x5e594f[_0x590e22(0x311)+_0x590e22(0x208)]:undefined,'messages':Array[_0x590e22(0x496)](_0x5e594f[_0x590e22(0x16a)])?_0x5e594f[_0x590e22(0x16a)]:[]}),'signal':AbortSignal[_0x590e22(0x166)](Number['isIntege'+'r'](_0x5e594f['timeoutM'+'s'])?_0x5e594f[_0x590e22(0x293)+'s']:0x1d4c0)});if(!_0x4b7124['ok']){const _0x1dd660=await _0x4b7124[_0x590e22(0x221)]();throw new Error('model\x20ht'+_0x590e22(0x36c)+_0x4b7124[_0x590e22(0x226)]+':\x20'+_0x1dd660['slice'](0x0,0x190));}const _0x44b0a1=_0x4b7124[_0x590e22(0x430)][_0x590e22(0x308)](_0x590e22(0x389)+'id'),_0xc32e9e=await _0x4b7124[_0x590e22(0x2eb)](),_0x47bbd5=_0xc32e9e?.[_0x590e22(0x319)]?.[0x0]?.[_0x590e22(0x2b6)]??{};if(_0x44b0a1){const _0x18b752=typeof _0x5e594f['title']===_0x590e22(0x40e)&&_0x5e594f[_0x590e22(0x447)][_0x590e22(0x36b)]()?_0x5e594f[_0x590e22(0x447)][_0x590e22(0x36b)]():Array[_0x590e22(0x496)](_0x5e594f[_0x590e22(0x16a)])?String([..._0x5e594f['messages']][_0x590e22(0x331)]()[_0x590e22(0x189)](_0x553a4f=>_0x553a4f?.[_0x590e22(0x303)]===_0x590e22(0x2bc))?.['content']||'')[_0x590e22(0x36b)]():'';_0x18b752&&Promise['resolve'](requestIdHooks?.[_0x590e22(0x1ae)+_0x590e22(0x11c)+_0x590e22(0x313)]?.({'requestId':_0x44b0a1,'title':_0x18b752,'source':_0x590e22(0x4ac)+_0x590e22(0x4a5)+'e','model':_0xc32e9e?.['model']||_0x15ebd7,'provider':_0x30a5b1,'timestamp':Date[_0x590e22(0x2c8)]()}))['catch'](_0x5be843=>{const _0xe54f6=_0x590e22;mainLogger?.[_0xe54f6(0x1db)]?.(_0xe54f6(0x41f)+'omplete\x20'+_0xe54f6(0x389)+_0xe54f6(0x12d)+'\x20event\x20f'+'ailed',{'error':_0x5be843?.[_0xe54f6(0x2b6)]||String(_0x5be843)});});}return{'content':extractModelMessageContent(_0x47bbd5[_0x590e22(0x1ee)]),'reasoning':typeof _0x47bbd5[_0x590e22(0x196)+_0x590e22(0x435)+'t']===_0x590e22(0x40e)?_0x47bbd5[_0x590e22(0x196)+_0x590e22(0x435)+'t']:'','model':_0xc32e9e?.[_0x590e22(0x1ce)]||_0x15ebd7};}),_0x5776a7(_0x1eead3(0x236)+_0x1eead3(0x33c),()=>_0xab79f1()[_0x1eead3(0x4f8)][_0x1eead3(0x3e2)]()),_0x5776a7(_0x1eead3(0x236)+'et-setti'+_0x1eead3(0x43f),(_0x4d5e95,_0x51c3ee)=>_0xab79f1()[_0x1eead3(0x4f8)]['setSetti'+_0x1eead3(0x43f)](_0x51c3ee)),_0x5776a7(_0x1eead3(0x236)+'et-selec'+_0x1eead3(0x259)+_0x1eead3(0x3c0),(_0x5b0f1c,_0x21c50a)=>_0xab79f1()[_0x1eead3(0x4f8)][_0x1eead3(0x184)+'tedModel'+_0x1eead3(0x351)+'re'](_0x21c50a)),_0x5776a7(_0x1eead3(0x236)+_0x1eead3(0x3e0)+_0x1eead3(0x36e),(_0x19727f,_0x1628e2)=>_0xab79f1()[_0x1eead3(0x4f8)]['setSelfO'+_0x1eead3(0x4db)+'odels'](_0x1628e2)),_0x5776a7('models:s'+_0x1eead3(0x3f9)+_0x1eead3(0x4cb),()=>_0xab79f1()[_0x1eead3(0x4f8)][_0x1eead3(0x49c)+_0x1eead3(0x1bf)]()),_0x5776a7('models:c'+'ustom-mo'+_0x1eead3(0x127),()=>_0xab79f1()[_0x1eead3(0x4f8)][_0x1eead3(0x20b)+'dels']()),_0x5776a7(_0x1eead3(0x133)+_0x1eead3(0x425)+_0x1eead3(0x348)+_0x1eead3(0x340),async()=>{const _0x3db034=_0x1eead3,_0x4215b0=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController[_0x3db034(0x4ef)+_0x3db034(0x4fa)+'ns'](),{'ok':!![],'syncedAt':new Date()[_0x3db034(0x3de)+_0x3db034(0x2ae)](),'manifest':_0x4215b0,'status':await getRuntimeResourceStatus()};}),_0x5776a7(_0x1eead3(0x133)+_0x1eead3(0x3c3)+_0x1eead3(0x4ec),async()=>getRuntimeResourceStatus());}async function boot(){const _0x13efec=_0x209495;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x13efec(0x408)](shellConfig[_0x13efec(0x2a7)+'ame']),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x13efec(0x39b)],_0x13efec(0x16b)),ipcLogger=createShellLogger(configController[_0x13efec(0x39b)],_0x13efec(0x1ba)),filesLogger=createShellLogger(configController[_0x13efec(0x39b)],_0x13efec(0x4ba)),rendererLogger=createShellLogger(configController[_0x13efec(0x39b)],_0x13efec(0x14b)),productRuntime=await loadProductRuntime();const _0x5de271=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController[_0x13efec(0x39b)][_0x13efec(0x19f)],'appContext':{'productName':shellConfig[_0x13efec(0x2a7)+_0x13efec(0x3af)],'appId':shellConfig[_0x13efec(0x4a7)],'appVersion':app[_0x13efec(0x172)+'on'](),'platform':process['platform'],'arch':process[_0x13efec(0x154)],..._0x5de271?{'apiEndpoint':_0x5de271}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController[_0x13efec(0x39b)][_0x13efec(0x19f)],'diagnosticsWriter':diagnosticsWriter});const _0x37e400=await loadCreateUpdateController({'logger':mainLogger});updateController=_0x37e400({'shellConfig':shellConfig,'appName':()=>app[_0x13efec(0x454)],'appVersion':()=>app[_0x13efec(0x172)+'on'](),'broadcast':broadcast,'logger':mainLogger,'prepareQuitAndInstall':async()=>{const _0xffd79d=_0x13efec;await stopGatewayBeforeQuit(_0xffd79d(0x20c)+_0xffd79d(0x234)+_0xffd79d(0x160));}}),updateController[_0x13efec(0x153)+'ze'](),registerProcessLogHooks(),registerProtocolHandlers(),installApplicationMenu(),mainLogger?.['info'](_0x13efec(0x46c)+_0x13efec(0x1e8)+_0x13efec(0x254)+'ed',{'appVersion':app[_0x13efec(0x172)+'on'](),'electronVersion':process[_0x13efec(0x2fa)][_0x13efec(0x46c)],'nodeVersion':process[_0x13efec(0x2fa)][_0x13efec(0x146)],'chromeVersion':process[_0x13efec(0x2fa)][_0x13efec(0x3d4)],'platform':process[_0x13efec(0x443)],'arch':process['arch'],'mode':getMode(),'projectRoot':shellConfig[_0x13efec(0x22f)+_0x13efec(0x326)],'configPath':shellConfig[_0x13efec(0x3a0)+'th'],'dataDir':shellConfig[_0x13efec(0x121)],'devToolsEnabled':isDevToolsEnabled(),'devToolsFlagPath':resolveDevToolsFlagPath(),'logsDir':configController[_0x13efec(0x39b)][_0x13efec(0x19f)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||APP_RENDERER_ENTRY_URL}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x13efec(0x172)+'on'](),'productRuntimeHooks':gatewayRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime[_0x13efec(0x21d)+'roductCo'+_0x13efec(0x175)]==='function'&&await productRuntime[_0x13efec(0x21d)+_0x13efec(0x297)+'nfig']({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x13efec(0x21d)+_0x13efec(0x1e0)+'ta']===_0x13efec(0x11f)?await productRuntime['migrateP'+_0x13efec(0x1e0)+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()[_0x13efec(0x398)+_0x13efec(0x47d)+'d'](),attachGatewayBroadcastHandlers(gatewayController),ensureSessionDataService(),await installIpcHandlers(),ipcHandlersInstalled=!![],installAppRendererProtocolHandler(),installClawspaceProtocolHandler(),registerShellShortcuts(),await ensureMainWindow(),await gatewayController[_0x13efec(0x48b)](),updateController[_0x13efec(0x2f6)+'kgroundC'+_0x13efec(0x46f)](),mainLogger?.[_0x13efec(0x448)](_0x13efec(0x46c)+_0x13efec(0x1e8)+'ot\x20compl'+_0x13efec(0x1eb)),updateController['recordBo'+_0x13efec(0x21f)+'nstall']?.();}function registerProcessLogHooks(){const _0x3b52a5=_0x209495;if(registerProcessLogHooks['register'+'ed'])return;registerProcessLogHooks[_0x3b52a5(0x4e2)+'ed']=!![],process['on'](_0x3b52a5(0x446)+'Exceptio'+'n',_0x11854f=>{const _0x5f59e2=_0x3b52a5;mainLogger?.[_0x5f59e2(0x18e)](_0x5f59e2(0x446)+'\x20excepti'+'on',summarizeError(_0x11854f));}),process['on']('unhandle'+_0x3b52a5(0x378)+'on',_0xfe1a03=>{const _0xe6960d=_0x3b52a5;mainLogger?.['error'](_0xe6960d(0x262)+_0xe6960d(0x24a)+_0xe6960d(0x4f6),summarizeError(_0xfe1a03));}),app['on'](_0x3b52a5(0x333)+_0x3b52a5(0x287)+_0x3b52a5(0x3e9),(_0x10e0b6,_0x3991cf,_0x4f6c45)=>{const _0x56942b=_0x3b52a5;mainLogger?.[_0x56942b(0x18e)]('renderer'+'\x20process'+'\x20gone',{'url':_0x3991cf[_0x56942b(0x2a9)](),'details':_0x4f6c45});}),app['on'](_0x3b52a5(0x230)+_0x3b52a5(0x33f)+'ne',(_0x42aae4,_0x32459d)=>{const _0x27809d=_0x3b52a5;mainLogger?.[_0x27809d(0x18e)](_0x27809d(0x2bf)+_0x27809d(0x2a4)+'ne',{'details':_0x32459d});});}async function stopGatewayBeforeQuit(_0x332ed8){const _0x183cba=_0x209495;if(!gatewayController)return;const _0x49a27f=gatewayController,_0x5dd76c=Date[_0x183cba(0x2c8)]();mainLogger?.[_0x183cba(0x448)](_0x332ed8+(_0x183cba(0x250)+_0x183cba(0x2d2)+'ay'),{'event':_0x332ed8===_0x183cba(0x20c)+_0x183cba(0x234)+_0x183cba(0x160)?_0x183cba(0x491)+_0x183cba(0x478)+_0x183cba(0x173)+'t':undefined}),await _0x49a27f['stop'](),gatewayController===_0x49a27f&&(gatewayController=null),mainLogger?.[_0x183cba(0x448)](_0x332ed8+(_0x183cba(0x4df)+'y\x20stoppe'+'d'),{'event':_0x332ed8==='before\x20i'+_0x183cba(0x234)+_0x183cba(0x160)?_0x183cba(0x491)+_0x183cba(0x478)+_0x183cba(0x4f2):undefined,'elapsedMs':Date[_0x183cba(0x2c8)]()-_0x5dd76c});}app['on'](_0x209495(0x394)+_0x209495(0x1a2)+'d',()=>{const _0x29932b=_0x209495;if(process[_0x29932b(0x443)]!==_0x29932b(0x384))app[_0x29932b(0x318)]();}),app['on']('open-url',(_0x3e4b67,_0x2c6686)=>{const _0x14e5ac=_0x209495;_0x3e4b67['preventD'+_0x14e5ac(0x14f)](),mainLogger?.['warn']('protocol'+_0x14e5ac(0x1c3)+'l\x20event',{'url':summarizeProtocolUrl(_0x2c6686),'hasShellConfig':Boolean(shellConfig)}),dispatchProtocolUrl(_0x2c6686);});const gotSingleInstanceLock=app[_0x209495(0x34b)+_0x209495(0x29b)+_0x209495(0x258)+'k']();!gotSingleInstanceLock?app[_0x209495(0x318)]():app['on']('second-i'+_0x209495(0x2b1),(_0x58aafe,_0x17187c)=>{const _0x4f9702=_0x209495,_0x2259ae=extractProtocolUrlFromArgs(_0x17187c);mainLogger?.[_0x4f9702(0x1db)](_0x4f9702(0x3cc)+'nstance\x20'+_0x4f9702(0x377),{'argc':Array[_0x4f9702(0x496)](_0x17187c)?_0x17187c[_0x4f9702(0x407)]:0x0,'hasShellConfig':Boolean(shellConfig),'hasProtocolUrl':Boolean(_0x2259ae),'protocolUrl':_0x2259ae?summarizeProtocolUrl(_0x2259ae):undefined});if(!resolveProtocolScheme()){pendingProtocolArgs=_0x17187c;return;}if(_0x2259ae){dispatchProtocolUrl(_0x2259ae);return;}const _0x5705bd=getUsableMainWindow();if(_0x5705bd){if(_0x5705bd[_0x4f9702(0x3bf)+_0x4f9702(0x2da)]())_0x5705bd[_0x4f9702(0x429)]();_0x5705bd[_0x4f9702(0x1a9)](),_0x5705bd[_0x4f9702(0x3d5)]();}});app['on'](_0x209495(0x360),async()=>{const _0x3bbd8f=_0x209495;if(isQuitting){app[_0x3bbd8f(0x318)]();return;}updateController?.[_0x3bbd8f(0x1f2)+_0x3bbd8f(0x237)+_0x3bbd8f(0x463)]('app_acti'+_0x3bbd8f(0x25e)),BrowserWindow[_0x3bbd8f(0x1cf)+_0x3bbd8f(0x3b5)]()[_0x3bbd8f(0x407)]===0x0&&shellConfig&&await ensureMainWindow();}),app['on'](_0x209495(0x418)+_0x209495(0x214),_0x34f4a8=>{const _0xc6529=_0x209495;isQuitting=!![],updateController?.[_0xc6529(0x44c)+_0xc6529(0x3ed)](),terminalManager?.[_0xc6529(0x452)](),terminalManager=null,productRuntimeHooks?.[_0xc6529(0x452)]?.();for(const _0x510910 of Object[_0xc6529(0x403)](productRuntimeHooks))delete productRuntimeHooks[_0x510910];requestIdHooks?.[_0xc6529(0x452)]?.();for(const _0x559fc1 of Object[_0xc6529(0x403)](requestIdHooks))delete requestIdHooks[_0x559fc1];if(updateController?.[_0xc6529(0x35e)+_0xc6529(0x47f)+'te']?.()){mainLogger?.[_0xc6529(0x448)](_0xc6529(0x40b)+_0xc6529(0x442)+_0xc6529(0x4e1)+_0xc6529(0x45f)+'rogress,'+_0xc6529(0x18b)+_0xc6529(0x4d1)+_0xc6529(0x2a2)+_0xc6529(0x21a));return;}if(!gatewayController)return;_0x34f4a8[_0xc6529(0x136)+'efault'](),void stopGatewayBeforeQuit(_0xc6529(0x40b)+'uit')[_0xc6529(0x111)](()=>{const _0x53ba6b=_0xc6529;app[_0x53ba6b(0x318)]();});}),app['on'](_0x209495(0x206)+'t',()=>{const _0x480676=_0x209495;globalShortcut[_0x480676(0x1b6)+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x209495(0x202)+'y']()['then'](boot)[_0x209495(0x317)](_0x46c488=>{const _0x105feb=_0x209495;bootError=_0x46c488 instanceof Error?_0x46c488[_0x105feb(0x2b6)]:String(_0x46c488),mainLogger?.[_0x105feb(0x18e)](_0x105feb(0x46c)+_0x105feb(0x1e8)+'ot\x20faile'+'d',summarizeError(_0x46c488)),console[_0x105feb(0x18e)](_0x105feb(0x256)+_0x105feb(0x45e)+_0x105feb(0x252)+_0x105feb(0x1cb)+_0x105feb(0x211)+'in',_0x46c488);});
|