@wujie-shell/core 3.0.1 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/bin/wujie-shell.mjs +1 -1
  2. package/dist/src/agents/bundled-agent-skills.mjs +1 -1
  3. package/dist/src/agents/bundled-agents.mjs +1 -1
  4. package/dist/src/chat/media-archive.mjs +1 -1
  5. package/dist/src/chat/queue.mjs +1 -1
  6. package/dist/src/common/diagnostics.mjs +1 -1
  7. package/dist/src/common/logging.mjs +1 -1
  8. package/dist/src/common/runtime-logger.mjs +1 -1
  9. package/dist/src/common/user-events.mjs +1 -1
  10. package/dist/src/common/utils.mjs +1 -1
  11. package/dist/src/config/controller.mjs +1 -1
  12. package/dist/src/connectors/config-utils.mjs +1 -1
  13. package/dist/src/connectors/constants.mjs +1 -1
  14. package/dist/src/connectors/controller.mjs +1 -1
  15. package/dist/src/connectors/kdocs-cli.mjs +1 -1
  16. package/dist/src/electron/main.mjs +1 -1
  17. package/dist/src/electron/preload.mjs +1 -1
  18. package/dist/src/files/generated-files-store.mjs +1 -1
  19. package/dist/src/files/handlers.mjs +1 -1
  20. package/dist/src/gateway/chat-delta.mjs +1 -1
  21. package/dist/src/gateway/controller.mjs +1 -1
  22. package/dist/src/gateway/ws-client.mjs +1 -1
  23. package/dist/src/index.mjs +1 -1
  24. package/dist/src/log-reporting/handlers.mjs +1 -1
  25. package/dist/src/log-reporting/report-logs.mjs +1 -1
  26. package/dist/src/models/handlers.mjs +1 -1
  27. package/dist/src/preferences/store.mjs +1 -1
  28. package/dist/src/runtime/index.mjs +1 -1
  29. package/dist/src/runtime/patch-channel-plugin-runtime.mjs +1 -1
  30. package/dist/src/runtime/patch-chat-history-mixed-tool-content.mjs +1 -1
  31. package/dist/src/runtime/patch-session-store-sqlite.mjs +1 -1
  32. package/dist/src/runtime/plugin-sync.mjs +1 -1
  33. package/dist/src/sessions/agent-sessions-map-store.mjs +1 -1
  34. package/dist/src/sessions/runtime-bridge.mjs +1 -1
  35. package/dist/src/sessions/session-sqlite-store.mjs +1 -1
  36. package/dist/src/skills/import.mjs +1 -1
  37. package/dist/src/skills/market.mjs +1 -1
  38. package/dist/src/terminal/manager.mjs +1 -1
  39. package/dist/src/updates/controller.mjs +1 -1
  40. package/dist/src/updates/loader.mjs +1 -0
  41. package/package.json +4 -3
@@ -1 +1 @@
1
- const _0x3bddf5=_0x40b7;(function(_0x318550,_0x5d5643){const _0x3c861d=_0x40b7,_0x286f3c=_0x318550();while(!![]){try{const _0x376e61=-parseInt(_0x3c861d(0x2bd))/0x1+parseInt(_0x3c861d(0x384))/0x2+parseInt(_0x3c861d(0x302))/0x3+-parseInt(_0x3c861d(0x1eb))/0x4+parseInt(_0x3c861d(0x327))/0x5*(parseInt(_0x3c861d(0x351))/0x6)+-parseInt(_0x3c861d(0x16e))/0x7+-parseInt(_0x3c861d(0x39b))/0x8*(-parseInt(_0x3c861d(0x128))/0x9);if(_0x376e61===_0x5d5643)break;else _0x286f3c['push'](_0x286f3c['shift']());}catch(_0x1d96e7){_0x286f3c['push'](_0x286f3c['shift']());}}}(_0x1800,0x9e85b));import _0x364a11 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{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{createSessionSqliteStore}from'../sessions/session-sqlite-store.mjs';import{createTerminalManager}from'../terminal/manager.mjs';import{createShellLogger,exportLogsArchive,summarizeError,summarizePayload,summarizeText,toHomePath}from'../common/logging.mjs';import{createDiagnosticsWriter,diagnosticEventFromError}from'../common/diagnostics.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';function _0x1800(){const _0x2095ef=['ite-bina','stomMode','readSess','payload','getVersi','temperat','avatar','skills:d','json','ession','name','\x20process','-pinned','key','874674HvvIsw','range','shell-ru','update','model\x20ht','disable','tp\x20','detach','text/pla','lized','#0000000','-invalid','.jpeg','multiSel','setOpenC','get','activate','reasonin','d-state','nstall','patch','lt\x20model','size','lose','agents:d','hidden','uncaught','.jpg','session-','ources','child-pr','loadURL','agent\x20up','agent-','ipc\x20requ','ith-sess','ile\x20read','2088670PycnTj','pper\x20not','ile\x20writ','te\x20compl','listImCh','logs\x20dir','download','type','ell:even','tus','deleteIm','huChanne','code','l\x20first','ure','ready','t-stream','ackgroun','et-setti','igate','byteLeng','m-channe','-token','getPinne','lastInde',':close','ted\x20conn','loadFile','toLowerC','node','config:c','\x20failed:','ettings','ndlers','hell]\x20fa','/chat/co','ncident','lawSkill','ishuRegi','unhandle','skills:i','msvideo','12uBuobP','\x20not\x20con','pop','peratedM','nnel','app:gene','uit:\x20sto','send','oot','elSessio','main\x20win','all','ell\x20boot','resource','logs:lis',':rename','.mkv','kdown;\x20c','headers','xOf','closeToT','models:s','nectSess','getAllWi','some','stringif','agentId','e\x20direct','saveQqMa','ncent-do','odels','config','wujie-sh','lawMcpSe','ated','harset=u','ion','igSnapsh','unknown','number','l\x20reques','rated-fi','dSession','isArray','sessions','\x20CLI\x20wra','logs:ope','\x20configu','ndows',':create','product','2014114TvkkYI','video/x-','\x20found:\x20','config:i','cron:upd','maxEntri','-life-cy','stream','app:upda','ontext','ntime','les:reve','history','Dialog','webConte','getAppPa','image/sv','sourcePa','app.asar','hostname','Keys','led','clawspac','27256fAzesr','onfig','.\x20Run\x20wu','checkFor','slice','CliConne','dataDir','create','nelSessi','video/mp','ItemSett','quired','bytes','cancelKd','Exceptio','ssionKey','lect-fil','tatus','agent\x20de',':save-te','open','stopped\x20','onnector','pened','getPath','ocsCliCo','whenRead','setSelec','captureI','illEntry','set=utf-','keys','g_conten','stion','agent','cle','onnectSt','ate','lConnect','assign','jie-shel','nabled','defaults','cron:run','te:downl','level','Update','ell\x20conf','agent\x20al','runtime:',':answer-','omModel','dled-res','ory',':get-clo','gin','ools','zed','ove','isabled','isPackag','senderFr','text','e:direct','writeSha','minimize','cron:log','.mp4','.bmp','ing','ig\x20is\x20no','prod','\x20main\x20bo','length','ot\x20faile','openDire','content','inned','i-window','ywhere','ey\x20is\x20re','kdocs','terminal','log','devtools','openclaw','now','sessionK','lawPlugi','navigati','s:hide','Everywhe','ontents','finally','e:shared','elected-','ngs','product\x20','ot\x20initi','ocess-go','ionEntry','complete','keyDown','feishu_d','unregist','ontent-t','length,\x20','agents:w','darwin','enable','render-p','binary\x20f','runtimeI','-shortcu','openDevT','-by-sess','initiali',':choose-','temp','warn','meFilter','customNa','tSession','ishuDocC','ectory','Custom','gateway-',':fork','ask-user','select\x20d','startFei','ipc_requ','dAt','resize','\x20request','restart','channelI','bin','dev','e\x20comple',':save-fe','close','CommandO','torConfi','est\x20fail','d-local','tChannel','ilConnec','mChannel','itialize','rayOnClo','\x20to\x20load','path',':complet','Updates','map','provider','ired','chrome','.webm','versions','tory','2979MpGHkf','canceled','\x20excepti','set','mpletion','filters','ocess\x20go','est\x20star','maximize','n\x20failed','shuRegis','agents','ions-lis','deleteOp','chat','abort','range,\x20a','filter','eam','sPrivile','et-self-','setImCha','rnal','before-q','efault','teway','FeishuDo','hell:ipc','nConfig','feishu','ls:set-e','startKdo','method','-session','isMaximi','models','quitAndI','uRegistr','hideBySe','logsDir','annelCon','info','ite','ections','utf8','ell\x20gate','iConnect','saveNetE','timeout','cron:cre','local','les:dele','rename','get-conf',':save-ne','tf-8','toWeb','configPa','getStatu','parseInt','agents-u','ings','d\x20failed','Version',':resize','elConfig','error','rControl','uDocCliC','-mail','3346511WbfYmT','pping\x20ga','nt]','content-','th\x20is\x20re','\x20complet','handle','ead','showItem','files','api.open','SchemesA','way\x20is\x20n','tup:set','no-store','matroska','.avi',':set-clo','before\x20q','ndow','min','iled\x20to\x20','list','extensio','ame','huDocCon','settings',':status','dels','ted-ever','parse','tate','href','saveFeis','s:list','replace','model-id',':agent-m','.png','models:c','oad','emoji','ad-binar','delete','preload.','ion/json','upsert',':reorder','electron','sPath','dispose','preventD','logs:exp','control','split','files:se','ng;\x20recr','leted','ectory\x20o','targetDi','.svg','logs','getRecen','function','ype','-request','D,\x20OPTIO','ged','oken','ximize','unmaximi','migrateP','n-direct','saveTenc','showSave','ocs','st-direc','.flac','operated','resolveS','lConfig','saveDing','-context','agents:c','saveWeco','tateDir',':loading','nts','logs:wri','director','imePlugi','startWec','ot\x20start','ChannelC','enClawCh','from','saveCust','skills:u','chat:his','.webp','nput-eve','openAtLo','nfig','mand','fromWebC','runtimeR','requestB','et-selec','entDocsC','startsWi','start',':start','tabs:pos','s:reveal','text/mar','InFolder','fromEntr','-status','l\x20prepar','ignore','[wujie-s','.aac','trim','manifest','window-a','4603192itjVPF','main','no\x20defau','enClawCo','video/we','onfig\x20up','dow\x20load','select\x20f','apiKey','.txt','Unsuppor','test','ocus','ent','cancelFe','d\x20is\x20req','dCheck','maxToken',':save-we','chat-str','yInfo',':open-cl','title','paths','isFinite','getURL','openPath','path\x20is\x20','entries','ted-stat','ase','plugins','eated','plugins:','\x20is\x20requ','enClawMc','ntext','choices','-info','model','agents:l','diagnost','logs\x20exp','image/jp','ileName','agent-ev','before-i','POST','tabs:req','app:clip','.ogg','string','lawChann','g+xml','uired','ationSta','reorderP','writeEve','message','les:hide','app:open','IPC\x20requ','cwd','figs','nfo',':save-di','eted','sion','skills:s','Bearer\x20','red;\x20set','.md','\x20gone','hecks','uri','\x20main\x20wi','failed','open\x20ext','install','-logs','producti','sender','filePath','context','liConnec','indexOf','rver','answerAs','nges','will-qui','ProductR','applicat','ted','fromIpc','Config',':diagnos','reload','syncRunt','Terminal','then','runtime\x20','ls:delet','platform','files:wr','Session','artifact','nel','fig','ishu-cha','gateway\x20','mjs','orConfig','remove','ncent-ex','nnectSes','sync-bun','d\x20comple','status','-once','object','projectR','icktime','arch','pluginId','product-',':unpin','OPTIONS','ies','workspac','unref','ternally','ory-info','required','isIntege','ort','defaultF','ai.com/v','\x20shortcu','gatewayT','-url','tabs-age','ipc','productN','tabs-com','agent\x20cr','openExte','app:tray','\x20log','command','one','isDirect','skills','updateOp','redConte',':save-qq','folder','isFile','sConnect','ctStatus','file\x20wri','uit','t-messag','enClawSk','agent_id','ory\x20open','recursiv','window:o','meta','app:syst','app:file','plugin\x20d','resh-age','aseMailC','pServer','inimize','messages','ll-close','controll','default','t\x20initia','ector\x20se','readConf','sidebar','wujiecla','catch','quit','deletedS','writeCon','figured:','tLogs','isDestro','dRejecti','hide','mail','ces.json','te:quit-','pdate','Not\x20foun','openFile','index.mj','csCliCon','boot\x20ele','includes','image/we','baseUrl','groups','setName','nectorCo','register','cron','983622TUVNCj','deleteFi','wechat','renderer','cancelWe','kgroundC','#f8fafc','ls:list','roductDa','input','generate','file\x20rea','s-maximi','markConf','.mov','plugin\x20e','ssion:\x20',':gateway','ccept-ra','irectory','getLogin','alized','board:wr','getFocus','index.ht','url','app:star','config:r','entExmai','dist','limit','selected','timeoutM','getKdocs','max','startBac','window:c','saveQqbo','showOpen','plugin\x20c',':choose','ap:upser','talkDocC','toISOStr','updated','ists','getFeish','find','-refresh','\x20failed','customMo','nt-state',':input','record','in;\x20char'];_0x1800=function(){return _0x2095ef;};return _0x1800();}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{loadRuntimeInfo,prepareRuntime,resolveRuntimeRoot,getRuntimeSpawnContext,resolveRuntimeLarkCliCommand,runClawOnce}from'../runtime/index.mjs';import{createUpdateController}from'../updates/controller.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,_0x3bddf5(0x19a)+_0x3bddf5(0x259)),{app,BrowserWindow,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x364a11,DEVTOOLS_ACCELERATOR=_0x3bddf5(0x429)+_0x3bddf5(0x16b)+'+Shift+I',CLAWSPACE_PROTOCOL_SCHEME=_0x3bddf5(0x39a)+'e',DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!==_0x3bddf5(0x23b)+'on',LOCAL_FILE_MIME_TYPES=new Map([[_0x3bddf5(0x1f4),'text/pla'+_0x3bddf5(0x2f3)+_0x3bddf5(0x3b9)+'8'],[_0x3bddf5(0x232),_0x3bddf5(0x1e0)+_0x3bddf5(0x362)+_0x3bddf5(0x374)+_0x3bddf5(0x15f)],[_0x3bddf5(0x31d),_0x3bddf5(0x216)+'eg'],[_0x3bddf5(0x30e),_0x3bddf5(0x216)+'eg'],[_0x3bddf5(0x194),'image/pn'+'g'],['.gif','image/gi'+'f'],[_0x3bddf5(0x3df),'image/bm'+'p'],[_0x3bddf5(0x1aa),_0x3bddf5(0x394)+_0x3bddf5(0x220)],[_0x3bddf5(0x1d1),_0x3bddf5(0x2b6)+'bp'],[_0x3bddf5(0x3de),_0x3bddf5(0x3a4)+'4'],[_0x3bddf5(0x2cb),'video/qu'+_0x3bddf5(0x264)],[_0x3bddf5(0x17e),_0x3bddf5(0x385)+_0x3bddf5(0x350)],[_0x3bddf5(0x361),_0x3bddf5(0x385)+_0x3bddf5(0x17d)],[_0x3bddf5(0x125),_0x3bddf5(0x1ef)+'bm'],['.mp3','audio/mp'+'eg'],['.wav','audio/wa'+'v'],['.m4a','audio/mp'+'4'],[_0x3bddf5(0x1e7),'audio/aa'+'c'],[_0x3bddf5(0x21d),'audio/og'+'g'],[_0x3bddf5(0x1bb),'audio/fl'+'ac']]);protocol[_0x3bddf5(0x2bb)+_0x3bddf5(0x179)+_0x3bddf5(0x13b)+_0x3bddf5(0x1b1)]([{'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={},sessionSqliteStore=null,diagnosticsWriter=null,userEventWriter=null,isQuitting=![],updateController=null;function attachGatewayBroadcastHandlers(_0x2b15cf){const _0xf92bc1=_0x3bddf5;for(const _0xfb23ec of['gateway-'+_0xf92bc1(0x260),_0xf92bc1(0x419)+_0xf92bc1(0x3ee),_0xf92bc1(0x1fe)+'eam-even'+'t',_0xf92bc1(0x31e)+_0xf92bc1(0x2e9),_0xf92bc1(0x37d)+_0xf92bc1(0x30d)+_0xf92bc1(0x373),_0xf92bc1(0x218)+_0xf92bc1(0x1f8),_0xf92bc1(0x164)+'pdated',_0xf92bc1(0x41b)+'-questio'+'n']){_0x2b15cf['on'](_0xfb23ec,_0x41b1e4=>broadcast(_0xfb23ec,_0x41b1e4));}}function ensureSessionSqliteStore(){const _0x4a7094=_0x3bddf5;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error(_0x4a7094(0x371)+_0x4a7094(0x3ca)+_0x4a7094(0x3e1)+_0x4a7094(0x29e)+'lized');return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController['resolveS'+'tateDir']()}),sessionSqliteStore;}function ensureGeneratedFilesStore(){const _0x509184=_0x3bddf5;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error(_0x509184(0x371)+'ell\x20conf'+'ig\x20is\x20no'+_0x509184(0x29e)+_0x509184(0x30b));return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController['resolveS'+_0x509184(0x1c3)]()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0x58c236=_0x3bddf5;if(gatewayController)return gatewayController;if(!shellConfig||!configController)throw new Error(bootError?_0x58c236(0x371)+_0x58c236(0x35d)+_0x58c236(0x346)+'\x20'+bootError:_0x58c236(0x371)+_0x58c236(0x155)+_0x58c236(0x17a)+_0x58c236(0x3fd)+_0x58c236(0x2d2));return mainLogger?.[_0x58c236(0x412)](_0x58c236(0x258)+_0x58c236(0x29c)+'er\x20missi'+_0x58c236(0x1a6)+'eating'),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x58c236(0x2f8)+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController),await gatewayController[_0x58c236(0x1dc)](),gatewayController;}function _0x40b7(_0x1b1f7f,_0x1bfabb){_0x1b1f7f=_0x1b1f7f-0x11b;const _0x1800db=_0x1800();let _0x40b740=_0x1800db[_0x1b1f7f];return _0x40b740;}function getMode(){const _0x2f0526=_0x3bddf5;return process.env.VITE_DEV_SERVER_URL?_0x2f0526(0x425):_0x2f0526(0x3e2);}function isGatewayNotInitializedError(_0x26af8f){const _0xb71499=_0x3bddf5;return _0x26af8f instanceof Error&&_0x26af8f['message']==='wujie-sh'+'ell\x20gate'+_0xb71499(0x17a)+_0xb71499(0x3fd)+_0xb71499(0x2d2);}function revealPathInFolder(_0x543453){const _0x2f9eec=_0x3bddf5,_0x2be804=String(_0x543453||'')[_0x2f9eec(0x1e8)]();if(!_0x2be804)return{'ok':![],'error':_0x2f9eec(0x206)+_0x2f9eec(0x26f)};return shell[_0x2f9eec(0x176)+_0x2f9eec(0x1e1)](_0x2be804),{'ok':!![]};}function resolveProjectRoot(){const _0x51efa9=_0x3bddf5;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app[_0x51efa9(0x3d7)+'ed']&&process[_0x51efa9(0x35e)+_0x51efa9(0x19f)])return join(process['resource'+_0x51efa9(0x19f)],_0x51efa9(0x396));return resolve(process[_0x51efa9(0x229)]());}function getLocalFileMimeType(_0x17bd4b){const _0x3be6e0=_0x3bddf5;return LOCAL_FILE_MIME_TYPES[_0x3be6e0(0x311)](_0x17bd4b[_0x3be6e0(0x39f)](_0x17bd4b['lastInde'+'xOf']('.'))[_0x3be6e0(0x343)+'ase']())||'applicat'+'ion/octe'+_0x3be6e0(0x337);}function parseSingleRangeHeader(_0x50c612,_0x38b338){const _0x5cf3d0=_0x3bddf5,_0x8ba656=/^bytes=(\d*)-(\d*)$/i['exec'](_0x50c612['trim']());if(!_0x8ba656)return null;const [,_0xf58ae3,_0x255c53]=_0x8ba656;if(!_0xf58ae3&&!_0x255c53)return null;if(!_0xf58ae3){const _0x149c97=Number[_0x5cf3d0(0x163)](_0x255c53,0xa);if(!Number[_0x5cf3d0(0x203)](_0x149c97)||_0x149c97<=0x0)return null;const _0x322f71=Math[_0x5cf3d0(0x2df)](_0x38b338-_0x149c97,0x0);return{'start':_0x322f71,'end':_0x38b338-0x1};}const _0x393194=Number[_0x5cf3d0(0x163)](_0xf58ae3,0xa);if(!Number[_0x5cf3d0(0x203)](_0x393194)||_0x393194<0x0||_0x393194>=_0x38b338)return null;const _0x548038=_0x255c53?Number[_0x5cf3d0(0x163)](_0x255c53,0xa):_0x38b338-0x1;if(!Number[_0x5cf3d0(0x203)](_0x548038)||_0x548038<_0x393194)return null;return{'start':_0x393194,'end':Math[_0x5cf3d0(0x182)](_0x548038,_0x38b338-0x1)};}function decodeClawspacePath(_0x8f279e){const _0xfb257f=_0x3bddf5;try{const _0x53378c=new URL(_0x8f279e);if(_0x53378c['protocol']!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x53378c[_0xfb257f(0x397)]!==_0xfb257f(0x15a))return null;const _0x1ce1bf=decodeURIComponent(_0x53378c['pathname']);if(!_0x1ce1bf)return null;if(/^\/[A-Za-z]:\//[_0xfb257f(0x1f6)](_0x1ce1bf))return _0x1ce1bf[_0xfb257f(0x39f)](0x1);return _0x1ce1bf;}catch{return null;}}function createClawspaceHeaders(_0x1b7d9b={}){const _0x31f014=_0x3bddf5;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':'GET,\x20HEA'+_0x31f014(0x1b0)+'NS','access-control-allow-headers':'range,\x20c'+_0x31f014(0x404)+_0x31f014(0x1ae),'access-control-expose-headers':_0x31f014(0x171)+_0x31f014(0x405)+_0x31f014(0x171)+_0x31f014(0x138)+_0x31f014(0x2cf)+_0x31f014(0x243),..._0x1b7d9b});}function createLocalFileResponse(_0x5e788a,_0x228629){const _0x3598ff=_0x3bddf5,_0x1d3ee3=statSync(_0x228629);if(!_0x1d3ee3[_0x3598ff(0x287)]())return new Response(_0x3598ff(0x2b0)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x3598ff(0x30a)+_0x3598ff(0x2f3)+_0x3598ff(0x3b9)+'8'})});const _0x307c79=getLocalFileMimeType(_0x228629),_0x16624=createClawspaceHeaders({'content-type':_0x307c79,'accept-ranges':_0x3598ff(0x3a7),'cache-control':_0x3598ff(0x17c)});if(_0x5e788a['method']==='HEAD')return _0x16624['set'](_0x3598ff(0x171)+_0x3598ff(0x3e4),String(_0x1d3ee3[_0x3598ff(0x318)])),new Response(null,{'status':0xc8,'headers':_0x16624});const _0x2109dd=_0x5e788a[_0x3598ff(0x363)][_0x3598ff(0x311)]('range');if(!_0x2109dd)return _0x16624[_0x3598ff(0x12b)](_0x3598ff(0x171)+_0x3598ff(0x3e4),String(_0x1d3ee3[_0x3598ff(0x318)])),new Response(Readable[_0x3598ff(0x160)](createReadStream(_0x228629)),{'status':0xc8,'headers':_0x16624});const _0x24dc63=parseSingleRangeHeader(_0x2109dd,_0x1d3ee3[_0x3598ff(0x318)]);if(!_0x24dc63)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object[_0x3598ff(0x1e2)+_0x3598ff(0x26a)](_0x16624['entries']()),'content-range':'bytes\x20*/'+_0x1d3ee3[_0x3598ff(0x318)]})});const {start:_0x51c98b,end:_0xa21304}=_0x24dc63,_0x54a5c0=_0xa21304-_0x51c98b+0x1,_0x78bafd=new Headers(_0x16624);return _0x78bafd['set'](_0x3598ff(0x171)+_0x3598ff(0x3e4),String(_0x54a5c0)),_0x78bafd[_0x3598ff(0x12b)](_0x3598ff(0x171)+_0x3598ff(0x303),'bytes\x20'+_0x51c98b+'-'+_0xa21304+'/'+_0x1d3ee3[_0x3598ff(0x318)]),new Response(Readable[_0x3598ff(0x160)](createReadStream(_0x228629,{'start':_0x51c98b,'end':_0xa21304})),{'status':0xce,'headers':_0x78bafd});}function installClawspaceProtocolHandler(){const _0xabfef8=_0x3bddf5;protocol[_0xabfef8(0x174)](CLAWSPACE_PROTOCOL_SCHEME,_0x10d280=>{const _0x3ed33a=_0xabfef8;if(_0x10d280[_0x3ed33a(0x148)]===_0x3ed33a(0x269))return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x147ae5=decodeClawspacePath(_0x10d280[_0x3ed33a(0x2d6)]);if(!_0x147ae5)return new Response('Invalid\x20'+_0x3ed33a(0x39a)+'e\x20url',{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x3ed33a(0x30a)+'in;\x20char'+_0x3ed33a(0x3b9)+'8'})});if(!existsSync(_0x147ae5))return new Response(_0x3ed33a(0x2b0)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x3ed33a(0x30a)+_0x3ed33a(0x2f3)+'set=utf-'+'8'})});return createLocalFileResponse(_0x10d280,_0x147ae5);});}function broadcast(_0x184a93,_0x435121){const _0x4705b2=_0x3bddf5;DEBUG_STDOUT&&console['info'](_0x4705b2(0x1e6)+'hell:eve'+_0x4705b2(0x170),_0x184a93,summarizePayload(_0x435121,{'maxDepth':0x2}));for(const _0xd0259c of BrowserWindow[_0x4705b2(0x368)+_0x4705b2(0x381)]()){!_0xd0259c[_0x4705b2(0x392)+_0x4705b2(0x1c5)][_0x4705b2(0x2a9)+'yed']()&&_0xd0259c['webConte'+_0x4705b2(0x1c5)][_0x4705b2(0x358)](_0x4705b2(0x371)+_0x4705b2(0x32f)+'t',{'name':_0x184a93,'payload':_0x435121});}}async function loadProductRuntime(){const _0x2e899a=_0x3bddf5,_0x2b6df1=[join(shellConfig[_0x2e899a(0x263)+'oot'],_0x2e899a(0x304)+_0x2e899a(0x38e),_0x2e899a(0x2b2)+'s'),join(app[_0x2e899a(0x393)+'th'](),_0x2e899a(0x304)+'ntime',_0x2e899a(0x2b2)+'s')],_0x423263=_0x2b6df1[_0x2e899a(0x2ec)](_0x4b3e3a=>existsSync(_0x4b3e3a));if(!_0x423263)return mainLogger?.[_0x2e899a(0x151)](_0x2e899a(0x3fc)+'runtime\x20'+_0x2e899a(0x185)+'n\x20not\x20fo'+'und',{'runtimeCandidates':_0x2b6df1}),{};try{const _0x5636b4=await import(pathToFileURL(_0x423263)[_0x2e899a(0x18e)]);return mainLogger?.['info'](_0x2e899a(0x3fc)+_0x2e899a(0x24f)+_0x2e899a(0x185)+'n\x20loaded',{'runtimePath':_0x423263}),_0x5636b4;}catch(_0x5c3bb2){mainLogger?.[_0x2e899a(0x16a)](_0x2e899a(0x3fc)+_0x2e899a(0x24f)+'extensio'+_0x2e899a(0x131)+_0x2e899a(0x11d),{'runtimePath':_0x423263,'error':summarizeError(_0x5c3bb2)});throw _0x5c3bb2;}}function openDevToolsForActiveContext(){const _0x479517=_0x3bddf5,_0x10445a=BrowserWindow[_0x479517(0x2d4)+'edWindow']()||mainWindow;if(!_0x10445a||_0x10445a['isDestro'+'yed']())return{'ok':![]};return _0x10445a[_0x479517(0x392)+'nts'][_0x479517(0x40d)+_0x479517(0x3d3)]({'mode':_0x479517(0x309)}),_0x10445a[_0x479517(0x392)+_0x479517(0x1c5)]['send'](_0x479517(0x371)+_0x479517(0x32f)+'t',{'name':_0x479517(0x3ef)+_0x479517(0x40c)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x418d02=_0x3bddf5;globalShortcut[_0x418d02(0x403)+'er'](DEVTOOLS_ACCELERATOR);const _0x1ba142=globalShortcut[_0x418d02(0x2bb)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x1ba142&&console[_0x418d02(0x412)](_0x418d02(0x1e6)+'hell]\x20fa'+_0x418d02(0x183)+_0x418d02(0x2bb)+_0x418d02(0x274)+'t:\x20'+DEVTOOLS_ACCELERATOR);}async function getRuntimeResourceStatus(){const _0x12543d=_0x3bddf5;try{const _0x23e28b=await loadRuntimeInfo(shellConfig[_0x12543d(0x263)+'oot']),_0x58e4c8=_0x23e28b[_0x12543d(0x1e9)]||{};return{'ok':!![],'runtimeRoot':_0x23e28b[_0x12543d(0x1d7)+_0x12543d(0x359)],'openclawVersion':_0x23e28b[_0x12543d(0x3f0)+_0x12543d(0x167)],'generatedAt':_0x58e4c8[_0x12543d(0x2c7)+_0x12543d(0x41f)]||null,'pluginCount':Array[_0x12543d(0x37c)](_0x58e4c8[_0x12543d(0x20a)])?_0x58e4c8[_0x12543d(0x20a)]['length']:0x0,'plugins':Array[_0x12543d(0x37c)](_0x58e4c8[_0x12543d(0x20a)])?_0x58e4c8[_0x12543d(0x20a)]:[],'agents':_0x58e4c8[_0x12543d(0x133)]||null,'skills':_0x58e4c8[_0x12543d(0x282)]||null,'wrapper':_0x58e4c8['wujiecla'+'wBin']||null,'product':_0x58e4c8[_0x12543d(0x383)]||null};}catch(_0x5db7c4){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.[_0x12543d(0x263)+_0x12543d(0x359)]||resolveProjectRoot()),'error':_0x5db7c4 instanceof Error?_0x5db7c4[_0x12543d(0x225)]:String(_0x5db7c4)};}}async function createWindow(){const _0x50e9ca=_0x3bddf5,_0x35e7ff=process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x50e9ca(0x263)+_0x50e9ca(0x359)],_0x50e9ca(0x2da),_0x50e9ca(0x2d5)+'ml'),_0x1a0885=process[_0x50e9ca(0x251)]===_0x50e9ca(0x407);mainLogger?.[_0x50e9ca(0x151)]('creating'+_0x50e9ca(0x236)+_0x50e9ca(0x181),{'rendererUrl':_0x35e7ff,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x50e9ca(0x279)+_0x50e9ca(0x186)],'backgroundColor':_0x1a0885?_0x50e9ca(0x30c)+'0':_0x50e9ca(0x2c3),'titleBarStyle':_0x1a0885?_0x50e9ca(0x31b):_0x50e9ca(0x29d),..._0x1a0885?{'titleBarOverlay':!![],'trafficLightPosition':{'x':0x10,'y':0xc}}:{},..._0x1a0885?{'vibrancy':_0x50e9ca(0x2a1)}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}}),mainWindow['webConte'+_0x50e9ca(0x1c5)]['on'](_0x50e9ca(0x219)+_0x50e9ca(0x1d2)+'nt',_0x2f5837=>{const _0x1f3e46=_0x50e9ca,_0x41ce8b=_0x2f5837[_0x1f3e46(0x2c6)];if(!_0x41ce8b||_0x41ce8b['type']!==_0x1f3e46(0x401))return;const _0xf88f01=String(_0x41ce8b['key']||'')['toLowerC'+_0x1f3e46(0x209)](),_0x116ea1=_0xf88f01==='r',_0x18338c=process[_0x1f3e46(0x251)]===_0x1f3e46(0x407)?_0x41ce8b[_0x1f3e46(0x292)]===!![]:_0x41ce8b[_0x1f3e46(0x1a3)]===!![];if(!_0x116ea1||!_0x18338c)return;_0x2f5837[_0x1f3e46(0x1a1)+_0x1f3e46(0x140)](),broadcast(_0x1f3e46(0x27a)+'mand',{'type':_0x1f3e46(0x3f4)+'on','action':_0x1f3e46(0x24b)});}),mainWindow['on']('focus',()=>{const _0x204988=_0x50e9ca;updateController?.[_0x204988(0x1d8)+'ackgroun'+_0x204988(0x1fb)]('window_f'+_0x204988(0x1f7));});const _0xef43ef=process.env.VITE_DEV_SERVER_URL;_0xef43ef?(await mainWindow[_0x50e9ca(0x321)](_0xef43ef),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow[_0x50e9ca(0x392)+_0x50e9ca(0x1c5)][_0x50e9ca(0x40d)+_0x50e9ca(0x3d3)]({'mode':_0x50e9ca(0x309)})):await mainWindow[_0x50e9ca(0x342)](join(shellConfig['projectR'+_0x50e9ca(0x359)],_0x50e9ca(0x2da),'index.ht'+'ml')),mainLogger?.[_0x50e9ca(0x151)](_0x50e9ca(0x35b)+_0x50e9ca(0x1f1)+'ed',{'rendererUrl':_0x35e7ff,'mode':getMode()});}async function installIpcHandlers(){const _0x28ef4f=_0x3bddf5,_0x45571c=(_0x33678c,_0x30a3da)=>{const _0x4b7e30=_0x40b7;ipcMain[_0x4b7e30(0x174)](_0x33678c,async(_0x5866c4,_0x16ee97)=>{const _0x335a55=_0x4b7e30,_0x2f05c5=Date[_0x335a55(0x3f1)](),_0x3e16e8=_0x5866c4[_0x335a55(0x3d8)+_0x335a55(0x186)]?.['url']||_0x5866c4[_0x335a55(0x23c)][_0x335a55(0x204)]();ipcLogger?.[_0x335a55(0x151)](_0x335a55(0x324)+_0x335a55(0x12f)+'ted',{'channel':_0x33678c,'senderUrl':_0x3e16e8,'payload':summarizePayload(_0x16ee97)});DEBUG_STDOUT&&console['info'](_0x335a55(0x1e6)+_0x335a55(0x143)+']',_0x33678c,'started',summarizePayload(_0x16ee97));try{let _0x2092cf;try{_0x2092cf=await _0x30a3da(_0x5866c4,_0x16ee97);}catch(_0x25bb55){if(!isGatewayNotInitializedError(_0x25bb55))throw _0x25bb55;await ensureGatewayControllerStarted(),_0x2092cf=await _0x30a3da(_0x5866c4,_0x16ee97);}const _0x1fadb6=Date['now']()-_0x2f05c5;return ipcLogger?.['info'](_0x335a55(0x324)+'est\x20comp'+_0x335a55(0x1a7),{'channel':_0x33678c,'durationMs':_0x1fadb6,'result':summarizePayload(_0x2092cf,{'maxDepth':0x2})}),await userEventWriter?.[_0x335a55(0x248)]({'channel':_0x33678c,'payload':_0x16ee97,'result':_0x2092cf,'durationMs':_0x1fadb6,'status':'succeede'+'d'}),DEBUG_STDOUT&&console[_0x335a55(0x151)](_0x335a55(0x1e6)+'hell:ipc'+']',_0x33678c,_0x335a55(0x400)+'d',summarizePayload(_0x2092cf,{'maxDepth':0x2})),_0x2092cf;}catch(_0x296594){const _0x5a7753=Date[_0x335a55(0x3f1)]()-_0x2f05c5;ipcLogger?.[_0x335a55(0x16a)](_0x335a55(0x324)+'est\x20fail'+'ed',{'channel':_0x33678c,'durationMs':_0x5a7753,'error':summarizeError(_0x296594)}),await userEventWriter?.[_0x335a55(0x248)]({'channel':_0x33678c,'payload':_0x16ee97,'error':_0x296594,'durationMs':_0x5a7753,'status':_0x335a55(0x237)}),await diagnosticsWriter?.[_0x335a55(0x3b7)+_0x335a55(0x34b)](diagnosticEventFromError(_0x296594,{'category':_0x335a55(0x278),'event':_0x335a55(0x41e)+'est_fail'+'ed','message':_0x335a55(0x228)+_0x335a55(0x42b)+'ed:\x20'+_0x33678c,'durationMs':_0x5a7753,'meta':{'channel':_0x33678c,'senderUrl':_0x3e16e8,'payload':summarizePayload(_0x16ee97)}}));DEBUG_STDOUT&&console[_0x335a55(0x16a)](_0x335a55(0x1e6)+_0x335a55(0x143)+']',_0x33678c,_0x335a55(0x237),summarizeError(_0x296594));throw _0x296594;}});},_0x766744=()=>{const _0x3d5b30=_0x40b7;if(!gatewayController)throw new Error(bootError?_0x3d5b30(0x371)+_0x3d5b30(0x35d)+_0x3d5b30(0x346)+'\x20'+bootError:'wujie-sh'+_0x3d5b30(0x155)+_0x3d5b30(0x17a)+_0x3d5b30(0x3fd)+_0x3d5b30(0x2d2));return gatewayController;},_0x2e7d86=()=>{const _0x3fea2c=_0x40b7;if(typeof productRuntime[_0x3fea2c(0x2bb)+_0x3fea2c(0x245)+'untimeHa'+_0x3fea2c(0x348)]!==_0x3fea2c(0x1ad))return;const _0x3fec09=productRuntime[_0x3fea2c(0x2bb)+_0x3fea2c(0x245)+'untimeHa'+'ndlers']({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0x45571c,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0x766744,'sep':sep,'openClawConfigHandlers':{'update':(..._0x210d11)=>configController[_0x3fea2c(0x283)+_0x3fea2c(0x1ee)+_0x3fea2c(0x1d4)](..._0x210d11),'setPluginConfig':_0x41b251=>configController['setOpenC'+'lawPlugi'+_0x3fea2c(0x144)](_0x41b251),'setChannelConfig':_0x5ac031=>configController[_0x3fea2c(0x310)+_0x3fea2c(0x21f)+_0x3fea2c(0x169)](_0x5ac031),'deleteChannelConfig':_0x541382=>configController['deleteOp'+_0x3fea2c(0x1cc)+_0x3fea2c(0x150)+_0x3fea2c(0x256)](_0x541382),'setSkillEntry':_0x5ab880=>configController[_0x3fea2c(0x310)+_0x3fea2c(0x34c)+'Entry'](_0x5ab880),'deleteSkillEntry':_0x11df25=>configController[_0x3fea2c(0x135)+_0x3fea2c(0x28d)+_0x3fea2c(0x3b8)](_0x11df25),'setMcpServer':_0x921799=>configController['setOpenC'+_0x3fea2c(0x372)+_0x3fea2c(0x241)](_0x921799),'deleteMcpServer':_0xdbcaac=>configController[_0x3fea2c(0x135)+_0x3fea2c(0x20e)+_0x3fea2c(0x298)](_0xdbcaac)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x3dc86e})||{};Object[_0x3fea2c(0x3c2)](productRuntimeHooks,_0x3fec09);};_0x45571c('app:info',async()=>({'name':shellConfig[_0x28ef4f(0x279)+_0x28ef4f(0x186)],'version':app['getVersi'+'on'](),'appId':shellConfig['appId'],'dataDir':shellConfig['dataDir']})),_0x45571c(_0x28ef4f(0x227)+_0x28ef4f(0x276),async(_0x3f3061,_0x71a3ac)=>{const _0x365134=_0x28ef4f,_0x3259b5=typeof _0x71a3ac===_0x365134(0x21e)?_0x71a3ac:'';if(!_0x3259b5)return{'ok':![]};return filesLogger?.[_0x365134(0x151)](_0x365134(0x238)+'ernal\x20ur'+_0x365134(0x379)+_0x365134(0x247),{'url':summarizeText(_0x3259b5,0xa0)}),await shell[_0x365134(0x27c)+_0x365134(0x13e)](_0x3259b5),{'ok':!![]};});const _0x3dc86e=async(_0x160f41,_0x3d9988)=>{const _0x4de86c=_0x28ef4f;return configController[_0x4de86c(0x2ca)+'igWriteH'+'andledIn'+_0x4de86c(0x26d)](),await configController[_0x4de86c(0x2a6)+'fig'](_0x160f41,_0x3d9988),{'ok':!![]};};_0x2e7d86(),_0x45571c(_0x28ef4f(0x34f)+'mport-zi'+'p',async(_0x2f7656,_0x47a5fd)=>importMarketSkillZip({'payload':_0x47a5fd,'importSkillZip':_0xaefd99=>importSkillZip({..._0xaefd99,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow['fromWebC'+_0x28ef4f(0x3f7)](_0x2f7656['sender'])||mainWindow,'configController':configController}),'configController':configController})),_0x45571c(_0x28ef4f(0x1cf)+'pdate',(_0x2c90f6,_0x2d13b3)=>updateManagedSkillConfig({'payload':_0x2d13b3,'configController':configController})),_0x45571c(_0x28ef4f(0x2fb)+'elete',(_0x47b997,_0x26d02f)=>deleteMarketSkillRegistryEntry({'payload':_0x26d02f,'deleteManagedSkill':_0x136d72=>deleteManagedSkill({..._0x136d72,'gateway':_0x766744(),'configController':configController}),'configController':configController}));const _0x1c9b44=ensureGeneratedFilesStore();_0x45571c(_0x28ef4f(0x356)+_0x28ef4f(0x37a)+'les:list',async()=>_0x1c9b44[_0x28ef4f(0x184)]()),_0x45571c('app:gene'+_0x28ef4f(0x37a)+'les:upse'+'rt',async(_0x59fd57,_0x5171e9={})=>_0x1c9b44[_0x28ef4f(0x19c)](_0x5171e9)),_0x45571c(_0x28ef4f(0x356)+_0x28ef4f(0x37a)+_0x28ef4f(0x226),async(_0x33b2d1,_0x5971eb)=>_0x1c9b44['hide'](String(_0x5971eb||''))),_0x45571c('app:gene'+'rated-fi'+_0x28ef4f(0x226)+_0x28ef4f(0x40e)+'ion',async(_0x482e51,_0x2ccb59)=>_0x1c9b44[_0x28ef4f(0x14e)+'ssion'](String(_0x2ccb59||''))),_0x45571c('app:gene'+_0x28ef4f(0x37a)+_0x28ef4f(0x15b)+'te',async(_0x4ca7c7,_0x1e4e32)=>_0x1c9b44['deleteFi'+'le'](String(_0x1e4e32||''))),_0x45571c('app:gene'+_0x28ef4f(0x37a)+'les:dele'+_0x28ef4f(0x208)+'e',async(_0x44ad3e,_0x581cb0=[])=>_0x1c9b44[_0x28ef4f(0x2a5)+'tate'](_0x581cb0)),_0x45571c(_0x28ef4f(0x356)+_0x28ef4f(0x37a)+_0x28ef4f(0x38f)+'al',async(_0x1d224a,_0x342099)=>revealPathInFolder(_0x342099)),_0x45571c(_0x28ef4f(0x254)+_0x28ef4f(0x190),async()=>_0x1c9b44['list']()),_0x45571c('artifact'+'s:upsert',async(_0x2aabf4,_0x30044d={})=>_0x1c9b44[_0x28ef4f(0x19c)](_0x30044d)),_0x45571c('artifact'+_0x28ef4f(0x3f5),async(_0xfd1fdb,_0x341cfe={})=>_0x1c9b44[_0x28ef4f(0x2ab)](String(_0x341cfe['id']||_0x341cfe||''))),_0x45571c(_0x28ef4f(0x254)+'s:delete',async(_0x1782a4,_0x2df07f={})=>_0x1c9b44[_0x28ef4f(0x2be)+'le'](String(_0x2df07f['id']||_0x2df07f||''))),_0x45571c(_0x28ef4f(0x254)+'s:delete'+_0x28ef4f(0x314),async(_0x4316ac,_0x138bea={})=>_0x1c9b44[_0x28ef4f(0x2a5)+_0x28ef4f(0x18d)](_0x138bea[_0x28ef4f(0x202)]||_0x138bea)),_0x45571c(_0x28ef4f(0x254)+_0x28ef4f(0x1df),async(_0x28b01c,_0x2a33a1={})=>{const _0x160148=_0x28ef4f,_0x415b2a=typeof _0x2a33a1===_0x160148(0x21e)?_0x2a33a1:_0x2a33a1[_0x160148(0x11e)]||_0x2a33a1[_0x160148(0x235)];return revealPathInFolder(_0x415b2a);});const _0x281880=createPreferencesStore({'stateDir':configController['resolveS'+_0x28ef4f(0x1c3)](),'storeFile':_0x28ef4f(0x267)+'preferen'+_0x28ef4f(0x2ad)});_0x45571c('app:tray'+_0x28ef4f(0x3d1)+'se',async()=>_0x281880[_0x28ef4f(0x311)](_0x28ef4f(0x365)+_0x28ef4f(0x11c)+'se',![])),_0x45571c(_0x28ef4f(0x27d)+_0x28ef4f(0x17f)+'se',async(_0x525d87,_0x52abfd)=>_0x281880['set'](_0x28ef4f(0x365)+_0x28ef4f(0x11c)+'se',_0x52abfd===!![])),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0x45571c,'sep':sep,'stateDir':configController[_0x28ef4f(0x1bd)+_0x28ef4f(0x1c3)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0x45571c,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0x45571c,'modelHandlers':{'saveCustomModel':_0x144286=>_0x766744()[_0x28ef4f(0x14b)][_0x28ef4f(0x1ce)+_0x28ef4f(0x3ce)](_0x144286),'deleteCustomModel':_0x48fa42=>_0x766744()[_0x28ef4f(0x14b)]['deleteCu'+_0x28ef4f(0x2f5)+'l'](_0x48fa42)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x1437d8)=>configController['updateOp'+_0x28ef4f(0x1ee)+_0x28ef4f(0x1d4)](..._0x1437d8),'setPluginConfig':_0x226c33=>configController[_0x28ef4f(0x310)+_0x28ef4f(0x3f3)+_0x28ef4f(0x144)](_0x226c33),'setChannelConfig':_0xb61679=>configController[_0x28ef4f(0x310)+'lawChann'+_0x28ef4f(0x169)](_0xb61679),'deleteChannelConfig':_0x415721=>configController[_0x28ef4f(0x135)+_0x28ef4f(0x1cc)+_0x28ef4f(0x150)+_0x28ef4f(0x256)](_0x415721),'setSkillEntry':_0x11fea1=>configController[_0x28ef4f(0x310)+_0x28ef4f(0x34c)+'Entry'](_0x11fea1),'deleteSkillEntry':_0x715f0b=>configController[_0x28ef4f(0x135)+'enClawSk'+_0x28ef4f(0x3b8)](_0x715f0b),'setMcpServer':_0x11a504=>configController[_0x28ef4f(0x310)+'lawMcpSe'+_0x28ef4f(0x241)](_0x11a504),'deleteMcpServer':_0x2d48b2=>configController[_0x28ef4f(0x135)+_0x28ef4f(0x20e)+_0x28ef4f(0x298)](_0x2d48b2)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0x45571c(_0x28ef4f(0x387)+_0x28ef4f(0x33c)+_0x28ef4f(0x2c4),async()=>connectorController[_0x28ef4f(0x32b)+_0x28ef4f(0x150)+_0x28ef4f(0x22a)]()),_0x45571c(_0x28ef4f(0x387)+_0x28ef4f(0x33c)+_0x28ef4f(0x250)+'e',async(_0x405fac,_0xd1c33b={})=>connectorController[_0x28ef4f(0x331)+_0x28ef4f(0x1cb)+_0x28ef4f(0x39c)](_0xd1c33b)),_0x45571c(_0x28ef4f(0x387)+'m-channe'+_0x28ef4f(0x146)+_0x28ef4f(0x3c4),async(_0x30474d,_0x2edd4d={})=>connectorController[_0x28ef4f(0x13d)+'nnelEnab'+_0x28ef4f(0x399)](_0x2edd4d)),_0x45571c('config:c'+'onnector'+':save',async(_0x560164,_0x4cac6b={})=>{const _0x5a0772=_0x28ef4f,_0x2987a2=String(_0x4cac6b[_0x5a0772(0x423)+'d']||_0x4cac6b[_0x5a0772(0x2f7)]?.['channelI'+'d']||_0x4cac6b[_0x5a0772(0x2f7)]?.['id']||'');if(!_0x2987a2)throw new Error('channelI'+_0x5a0772(0x1fa)+_0x5a0772(0x221));const _0x24cbab=_0x4cac6b[_0x5a0772(0x2f7)]||_0x4cac6b,_0x1a6b28={'feishu':connectorController[_0x5a0772(0x18f)+_0x5a0772(0x332)+_0x5a0772(0x1be)],'qqbot':connectorController[_0x5a0772(0x2e2)+_0x5a0772(0x42d)+_0x5a0772(0x249)],'wecom':connectorController[_0x5a0772(0x1c2)+_0x5a0772(0x42f)+_0x5a0772(0x249)],'qq_mail':connectorController['saveQqMa'+_0x5a0772(0x42e)+_0x5a0772(0x42a)+'g'],'netease_mail':connectorController[_0x5a0772(0x157)+_0x5a0772(0x297)+'onnector'+_0x5a0772(0x249)],'tencent_exmail':connectorController[_0x5a0772(0x1b7)+'entExmai'+_0x5a0772(0x3c1)+_0x5a0772(0x25a)],'feishu_doc':connectorController[_0x5a0772(0x18f)+_0x5a0772(0x187)+_0x5a0772(0x2ba)+_0x5a0772(0x1d4)],'tencent_docs':connectorController[_0x5a0772(0x1b7)+_0x5a0772(0x1da)+_0x5a0772(0x3b1)+_0x5a0772(0x249)],'kdocs':connectorController['saveKdoc'+_0x5a0772(0x288)+_0x5a0772(0x25a)],'dingtalk_doc':connectorController[_0x5a0772(0x1bf)+'talkDocC'+_0x5a0772(0x3b1)+_0x5a0772(0x249)]},_0x501f94=_0x1a6b28[_0x2987a2];if(!_0x501f94)throw new Error(_0x5a0772(0x1f5)+'ted\x20conn'+'ector:\x20'+_0x2987a2);return _0x501f94(_0x24cbab);}),_0x45571c('config:c'+'onnector'+_0x28ef4f(0x427)+_0x28ef4f(0x257)+_0x28ef4f(0x355),async(_0x5d3356,_0x4a57d7={})=>connectorController[_0x28ef4f(0x18f)+_0x28ef4f(0x332)+_0x28ef4f(0x1be)](_0x4a57d7)),_0x45571c('config:c'+'onnector'+_0x28ef4f(0x285)+'bot-chan'+_0x28ef4f(0x255),async(_0x4c37d4,_0x4f2d92={})=>connectorController[_0x28ef4f(0x2e2)+_0x28ef4f(0x42d)+_0x28ef4f(0x249)](_0x4f2d92)),_0x45571c(_0x28ef4f(0x345)+_0x28ef4f(0x3b1)+_0x28ef4f(0x1fd)+'com-chan'+_0x28ef4f(0x255),async(_0x50e973,_0xc19ae3={})=>connectorController['saveWeco'+_0x28ef4f(0x42f)+_0x28ef4f(0x249)](_0xc19ae3)),_0x45571c('config:c'+_0x28ef4f(0x3b1)+_0x28ef4f(0x285)+_0x28ef4f(0x16d),async(_0x2605f5,_0x482798={})=>connectorController[_0x28ef4f(0x36d)+_0x28ef4f(0x42e)+_0x28ef4f(0x42a)+'g'](_0x482798)),_0x45571c(_0x28ef4f(0x345)+'onnector'+_0x28ef4f(0x15e)+'tease-ma'+'il',async(_0x5cd75a,_0x206306={})=>connectorController[_0x28ef4f(0x157)+_0x28ef4f(0x297)+_0x28ef4f(0x3b1)+_0x28ef4f(0x249)](_0x206306)),_0x45571c('config:c'+'onnector'+_0x28ef4f(0x3ae)+_0x28ef4f(0x25c)+_0x28ef4f(0x2ac),async(_0x4ca813,_0x499ed7={})=>connectorController[_0x28ef4f(0x1b7)+_0x28ef4f(0x2d9)+'lConnect'+_0x28ef4f(0x25a)](_0x499ed7)),_0x45571c(_0x28ef4f(0x345)+'onnector'+':save-fe'+'ishu-doc',async(_0x45309f,_0x2e4bcf={})=>connectorController[_0x28ef4f(0x18f)+_0x28ef4f(0x187)+_0x28ef4f(0x2ba)+_0x28ef4f(0x1d4)](_0x2e4bcf)),_0x45571c('config:c'+'onnector'+_0x28ef4f(0x3ae)+_0x28ef4f(0x36e)+'cs',async(_0x4da88a,_0x26e5e4={})=>connectorController['saveTenc'+'entDocsC'+_0x28ef4f(0x3b1)+'Config'](_0x26e5e4)),_0x45571c('config:c'+_0x28ef4f(0x3b1)+':save-kd'+_0x28ef4f(0x1b9),async(_0x5f3822,_0x478dff={})=>connectorController['saveKdoc'+_0x28ef4f(0x288)+_0x28ef4f(0x25a)](_0x478dff)),_0x45571c('config:c'+'onnector'+_0x28ef4f(0x22c)+'ngtalk-d'+'oc',async(_0x5cbf6d,_0x511484={})=>connectorController[_0x28ef4f(0x1bf)+_0x28ef4f(0x2e7)+_0x28ef4f(0x3b1)+'Config'](_0x511484)),_0x45571c(_0x28ef4f(0x345)+_0x28ef4f(0x3b1)+_0x28ef4f(0x149)+_0x28ef4f(0x1dd),async(_0x14f0ae,_0x2ae5e2={})=>{const _0x124daf=_0x28ef4f,_0x51c3f1=String(_0x2ae5e2[_0x124daf(0x423)+'d']||_0x2ae5e2[_0x124daf(0x32e)]||'');if(_0x51c3f1===_0x124daf(0x3ec))return connectorController[_0x124daf(0x147)+_0x124daf(0x2b3)+_0x124daf(0x367)+_0x124daf(0x375)]();if(_0x51c3f1===_0x124daf(0x402)+'oc')return connectorController['startFei'+'shuDocCl'+_0x124daf(0x156)+_0x124daf(0x253)]();if(_0x51c3f1==='feishu')return connectorController[_0x124daf(0x41d)+_0x124daf(0x132)+'trationS'+_0x124daf(0x2fd)](_0x2ae5e2);if(_0x51c3f1===_0x124daf(0x3f0)+'-weixin'||_0x51c3f1===_0x124daf(0x2bf))return connectorController[_0x124daf(0x1c9)+'hatChann'+_0x124daf(0x35a)+'n']({'gatewayPort':_0x766744()['gatewayP'+_0x124daf(0x271)](),'gatewayToken':_0x766744()[_0x124daf(0x275)+_0x124daf(0x1b2)]()});throw new Error(_0x124daf(0x1f5)+_0x124daf(0x341)+_0x124daf(0x29f)+_0x124daf(0x2cd)+(_0x51c3f1||_0x124daf(0x377)));}),_0x45571c(_0x28ef4f(0x345)+'onnector'+'-session'+_0x28ef4f(0x189),async(_0x58891d,_0x3753f1={})=>{const _0x1ab532=_0x28ef4f,_0x2afa5d=String(_0x3753f1[_0x1ab532(0x423)+'d']||_0x3753f1[_0x1ab532(0x32e)]||'');if(_0x2afa5d==='kdocs')return connectorController[_0x1ab532(0x2de)+_0x1ab532(0x3a0)+_0x1ab532(0x289)](_0x3753f1);if(_0x2afa5d===_0x1ab532(0x402)+'oc')return connectorController[_0x1ab532(0x2eb)+_0x1ab532(0x16c)+_0x1ab532(0x3bf)+'atus'](_0x3753f1);if(_0x2afa5d===_0x1ab532(0x145))return connectorController[_0x1ab532(0x2eb)+_0x1ab532(0x14d)+_0x1ab532(0x222)+_0x1ab532(0x330)](_0x3753f1);throw new Error(_0x1ab532(0x1f5)+_0x1ab532(0x341)+_0x1ab532(0x29f)+'ssion:\x20'+(_0x2afa5d||_0x1ab532(0x377)));}),_0x45571c(_0x28ef4f(0x345)+'onnector'+_0x28ef4f(0x149)+':cancel',async(_0x24ee4f,_0x118015={})=>{const _0x4d639f=_0x28ef4f,_0x275366=String(_0x118015['channelI'+'d']||_0x118015[_0x4d639f(0x32e)]||'');if(_0x275366===_0x4d639f(0x3ec))return connectorController[_0x4d639f(0x3a8)+_0x4d639f(0x3b4)+_0x4d639f(0x25d)+_0x4d639f(0x22e)](_0x118015);if(_0x275366===_0x4d639f(0x402)+'oc')return connectorController[_0x4d639f(0x1f9)+_0x4d639f(0x416)+_0x4d639f(0x23f)+_0x4d639f(0x415)](_0x118015);if(_0x275366===_0x4d639f(0x145))return connectorController[_0x4d639f(0x1f9)+_0x4d639f(0x34d)+'stration'+'Session'](_0x118015);if(_0x275366===_0x4d639f(0x3f0)+'-weixin'||_0x275366===_0x4d639f(0x2bf))return connectorController[_0x4d639f(0x2c1)+'chatChan'+_0x4d639f(0x3a3)+'on']();return{'ok':!![]};}),_0x45571c('config:c'+_0x28ef4f(0x3b1)+_0x28ef4f(0x149)+_0x28ef4f(0x11f)+'e',async(_0x18c8f8,_0x1a9370={})=>{const _0xbc2fec=_0x28ef4f,_0xe77e81=String(_0x1a9370[_0xbc2fec(0x423)+'d']||_0x1a9370[_0xbc2fec(0x32e)]||'');if(_0xe77e81===_0xbc2fec(0x402)+'oc')return connectorController['complete'+_0xbc2fec(0x142)+'cCliConn'+'ectSessi'+'on'](_0x1a9370);throw new Error('Unsuppor'+'ted\x20conn'+_0xbc2fec(0x29f)+_0xbc2fec(0x2cd)+(_0xe77e81||_0xbc2fec(0x377)));}),_0x45571c(_0x28ef4f(0x2d8)+_0x28ef4f(0x175),()=>connectorController[_0x28ef4f(0x2a0)+_0x28ef4f(0x376)+'ot']());const _0x14a9bf=_0x3d36ef=>{const _0x22075a=_0x28ef4f,_0x480a2e=_0x3d36ef[_0x22075a(0x133)]&&typeof _0x3d36ef[_0x22075a(0x133)]===_0x22075a(0x262)?_0x3d36ef[_0x22075a(0x133)]:{};return Array[_0x22075a(0x37c)](_0x480a2e[_0x22075a(0x184)])?_0x480a2e[_0x22075a(0x184)]:[];},_0x2778d5=_0x514e6a=>{const _0x4fcce9=_0x28ef4f,_0x1cc706=typeof _0x514e6a===_0x4fcce9(0x21e)?_0x514e6a['trim']():'',_0x30c77b=_0x1cc706['match'](/^agent:([^:]+):/);return _0x30c77b?.[0x1]||'';},_0x335b42=(_0x4cc201={},_0x1b2ffb=[])=>{const _0x1e2697=_0x28ef4f,_0x47653a=Array['isArray'](_0x4cc201['agents'])?_0x4cc201[_0x1e2697(0x133)]:Array[_0x1e2697(0x37c)](_0x4cc201['list'])?_0x4cc201[_0x1e2697(0x184)]:[],_0x438a5e=Array['isArray'](_0x1b2ffb)?_0x1b2ffb:[];return _0x47653a[_0x1e2697(0x121)](_0x15e618=>{const _0xecca33=_0x1e2697,_0x3a4b04=String(_0x15e618?.['id']||_0x15e618?.[_0xecca33(0x36b)]||'')[_0xecca33(0x1e8)]();return{'agent':_0x15e618,'sessions':_0x3a4b04?_0x438a5e['filter'](_0x1d6a05=>{const _0xe27526=_0xecca33,_0x283fc6=String(_0x1d6a05?.[_0xe27526(0x36b)]||_0x1d6a05?.[_0xe27526(0x28e)]||_0x1d6a05?.[_0xe27526(0x3bd)]?.['id']||_0x2778d5(_0x1d6a05?.[_0xe27526(0x301)])||'')[_0xe27526(0x1e8)]();return _0x283fc6?_0x283fc6===_0x3a4b04:_0x3a4b04===_0xe27526(0x1ec);}):[]};});};_0x45571c(_0x28ef4f(0x38c)+'te:get-s'+_0x28ef4f(0x18d),async()=>updateController?.['getState']()),_0x45571c('app:upda'+'te:check',async()=>updateController?.[_0x28ef4f(0x39e)+_0x28ef4f(0x120)]()),_0x45571c(_0x28ef4f(0x38c)+_0x28ef4f(0x3c7)+_0x28ef4f(0x196),async()=>updateController?.[_0x28ef4f(0x32d)+_0x28ef4f(0x3c9)]()),_0x45571c(_0x28ef4f(0x38c)+_0x28ef4f(0x2ae)+'and-inst'+'all',async()=>updateController?.[_0x28ef4f(0x14c)+_0x28ef4f(0x315)]()),_0x45571c(_0x28ef4f(0x294)+_0x28ef4f(0x2e5),async(_0x257c06,_0x1f65db={})=>{const _0x5d0e0d=_0x28ef4f,_0x2398df=await dialog[_0x5d0e0d(0x2e3)+_0x5d0e0d(0x391)](BrowserWindow[_0x5d0e0d(0x1d6)+'ontents'](_0x257c06['sender'])??mainWindow,{'properties':[_0x5d0e0d(0x2b1),..._0x1f65db?.[_0x5d0e0d(0x2db)]!==0x1?[_0x5d0e0d(0x30f)+_0x5d0e0d(0x153)]:[]],'filters':_0x1f65db?.[_0x5d0e0d(0x414)+_0x5d0e0d(0x413)+'s']?[{'name':_0x5d0e0d(0x418),'extensions':_0x1f65db[_0x5d0e0d(0x414)+_0x5d0e0d(0x413)+'s']}]:undefined});return _0x2398df[_0x5d0e0d(0x23d)+'s']['map'](_0x2b68d1=>({'path':_0x2b68d1,'name':_0x2b68d1[_0x5d0e0d(0x1a4)](/[\\/]/)[_0x5d0e0d(0x353)]()||_0x2b68d1}));}),_0x45571c('app:file'+':downloa'+_0x28ef4f(0x42c),async(_0x92945f,_0x2005be={})=>{const _0x41f868=_0x28ef4f,_0x11673e=String(_0x2005be['sourcePa'+'th']||'');if(!_0x11673e)return{'success':![],'error':_0x41f868(0x395)+_0x41f868(0x172)+_0x41f868(0x3a6)};const _0x59d6d7=await dialog[_0x41f868(0x1b8)+_0x41f868(0x391)](mainWindow,{'defaultPath':_0x2005be[_0x41f868(0x272)+_0x41f868(0x217)]||_0x11673e[_0x41f868(0x1a4)](/[\\/]/)[_0x41f868(0x353)]()});if(_0x59d6d7[_0x41f868(0x129)]||!_0x59d6d7['filePath'])return{'success':![],'canceled':!![]};const {copyFile:_0xb2a44f}=await import('node:fs/'+'promises');return await _0xb2a44f(_0x11673e,_0x59d6d7[_0x41f868(0x23d)]),{'success':!![],'filePath':_0x59d6d7['filePath']};}),_0x45571c(_0x28ef4f(0x21c)+_0x28ef4f(0x2d3)+_0x28ef4f(0x152),async(_0x169274,_0x159d5f)=>{return clipboard['writeTex'+'t'](String(_0x159d5f??'')),{'ok':!![]};}),_0x45571c('app:syst'+'em:resta'+'rt',async()=>{const _0x957ff1=_0x28ef4f;return app['relaunch'](),app[_0x957ff1(0x2a4)](),{'ok':!![]};}),_0x45571c('window:i'+_0x28ef4f(0x2c9)+'zed',_0x29cd4c=>Boolean(BrowserWindow[_0x28ef4f(0x1d6)+_0x28ef4f(0x3f7)](_0x29cd4c[_0x28ef4f(0x23c)])?.[_0x28ef4f(0x14a)+'zed']())),_0x45571c(_0x28ef4f(0x2d7)+_0x28ef4f(0x17b),async(_0x2ae4b5,_0x505737)=>{const _0x4d8029=_0x28ef4f;return app['setLogin'+_0x4d8029(0x3a5)+_0x4d8029(0x165)]({'openAtLogin':_0x505737===!![]}),{'ok':!![],'enabled':_0x505737===!![]};}),_0x45571c(_0x28ef4f(0x2d7)+'tup:get',async()=>app[_0x28ef4f(0x2d1)+_0x28ef4f(0x3a5)+_0x28ef4f(0x165)]()[_0x28ef4f(0x1d3)+_0x28ef4f(0x3d2)]),_0x45571c(_0x28ef4f(0x294)+_0x28ef4f(0x410)+_0x28ef4f(0x286),async _0xcaa8b3=>{const _0xb8a867=_0x28ef4f,_0x208f78=await dialog['showOpen'+'Dialog'](BrowserWindow[_0xb8a867(0x1d6)+'ontents'](_0xcaa8b3[_0xb8a867(0x23c)])??mainWindow,{'properties':['openDire'+'ctory']});return _0x208f78[_0xb8a867(0x23d)+'s'][0x0]||'';}),_0x45571c(_0x28ef4f(0x293)+'em:open-'+_0x28ef4f(0x286),async(_0x3ae563,_0x100dac)=>{const _0x46ea83=_0x28ef4f,_0x42a78e=await shell[_0x46ea83(0x205)](String(_0x100dac||''));return _0x42a78e||'';}),_0x45571c('openclaw'+_0x28ef4f(0x2ce)+_0x28ef4f(0x33d),async()=>_0x766744()[_0x28ef4f(0x275)+_0x28ef4f(0x1b2)]()),_0x45571c(_0x28ef4f(0x3f0)+_0x28ef4f(0x2ce)+'-port',async()=>_0x766744()['gatewayP'+_0x28ef4f(0x271)]()),_0x45571c(_0x28ef4f(0x3f0)+':run-onc'+'e',async(_0x226fca,_0x257af1=[])=>{const _0x19d816=_0x28ef4f,_0x36b148=await runClawOnce(shellConfig[_0x19d816(0x263)+'oot'],Array[_0x19d816(0x37c)](_0x257af1)?_0x257af1:[]);return{'ok':_0x36b148[_0x19d816(0x333)]===0x0,..._0x36b148};}),_0x45571c(_0x28ef4f(0x37d)+_0x28ef4f(0x41a),async(_0x51c9e7,_0x2f47cb={})=>_0x766744()[_0x28ef4f(0x37d)][_0x28ef4f(0x3a2)]({..._0x2f47cb,'parentSessionKey':_0x2f47cb['parentSe'+_0x28ef4f(0x3aa)]||_0x2f47cb[_0x28ef4f(0x3f2)+'ey']}));const _0x3889ca=configController['resolveS'+_0x28ef4f(0x1c3)]();sessionSqliteStore=ensureSessionSqliteStore();const _0x140da1=createAgentSessionsMapStore({'stateDir':_0x3889ca});_0x45571c(_0x28ef4f(0x37d)+':agent-m'+'ap:get',async(_0x1f511a,_0x3abc36={})=>_0x140da1[_0x28ef4f(0x311)](_0x3abc36)),_0x45571c(_0x28ef4f(0x37d)+_0x28ef4f(0x193)+_0x28ef4f(0x2e6)+'t',async(_0x38d72b,_0x36fb45={})=>_0x140da1[_0x28ef4f(0x19c)](_0x36fb45)),_0x45571c(_0x28ef4f(0x37d)+_0x28ef4f(0x193)+'ap:entry',async(_0x16f012,_0x2a7a70={})=>{const _0x2e99f1=_0x28ef4f,_0x51c7ba=String(_0x2a7a70[_0x2e99f1(0x3f2)+'ey']||'')[_0x2e99f1(0x1e8)]();if(!_0x51c7ba)return null;return await sessionSqliteStore[_0x2e99f1(0x2f6)+_0x2e99f1(0x3ff)](_0x51c7ba);}),_0x45571c(_0x28ef4f(0x1c1)+'reate',async(_0x403165,_0x2ca45e={})=>{const _0x317cfd=_0x28ef4f,_0x1bf499=await readMutableConfig(),_0x8b8a8e=_0x1bf499[_0x317cfd(0x133)]&&typeof _0x1bf499[_0x317cfd(0x133)]===_0x317cfd(0x262)?_0x1bf499[_0x317cfd(0x133)]:{},_0x245f8c=_0x14a9bf(_0x1bf499),_0x710d5=String(_0x2ca45e['id']||_0x2ca45e['name']||_0x317cfd(0x323)+Date[_0x317cfd(0x3f1)]())[_0x317cfd(0x1e8)]()[_0x317cfd(0x191)](/\s+/g,'-'),_0x34465c={'id':_0x710d5,'name':String(_0x2ca45e[_0x317cfd(0x2fe)]||_0x710d5),..._0x2ca45e[_0x317cfd(0x26b)+'e']?{'workspace':String(_0x2ca45e[_0x317cfd(0x26b)+'e'])}:{},..._0x2ca45e[_0x317cfd(0x212)]?{'model':_0x2ca45e[_0x317cfd(0x212)]}:{},..._0x2ca45e[_0x317cfd(0x197)]?{'emoji':_0x2ca45e[_0x317cfd(0x197)]}:{},..._0x2ca45e[_0x317cfd(0x2fa)]?{'avatar':_0x2ca45e[_0x317cfd(0x2fa)]}:{},...Array[_0x317cfd(0x37c)](_0x2ca45e[_0x317cfd(0x282)])?{'skills':_0x2ca45e[_0x317cfd(0x282)]}:{}};if(_0x245f8c[_0x317cfd(0x369)](_0x55ddac=>_0x55ddac?.['id']===_0x710d5))throw new Error(_0x317cfd(0x3cb)+'ready\x20ex'+_0x317cfd(0x2ea));return _0x8b8a8e['list']=[..._0x245f8c,_0x34465c],_0x1bf499[_0x317cfd(0x133)]=_0x8b8a8e,await _0x3dc86e(_0x1bf499,_0x317cfd(0x27b)+_0x317cfd(0x20b)),{'ok':!![],'agent':_0x34465c};}),_0x45571c('agents:u'+_0x28ef4f(0x2af),async(_0x4fd42d,_0x516012={})=>{const _0x383b37=_0x28ef4f,_0xf102cb=String(_0x516012['id']||_0x516012['agentId']||'')[_0x383b37(0x1e8)]();if(!_0xf102cb)throw new Error('agent\x20id'+_0x383b37(0x20d)+_0x383b37(0x123));const _0x402e87=await readMutableConfig(),_0xe198a5=_0x402e87['agents']&&typeof _0x402e87[_0x383b37(0x133)]===_0x383b37(0x262)?_0x402e87[_0x383b37(0x133)]:{},_0x332592=_0x14a9bf(_0x402e87),_0x472204=_0x332592[_0x383b37(0x121)](_0x1e53e6=>_0x1e53e6?.['id']===_0xf102cb?{..._0x1e53e6,..._0x516012,'id':_0xf102cb}:_0x1e53e6);return _0xe198a5['list']=_0x472204,_0x402e87[_0x383b37(0x133)]=_0xe198a5,await _0x3dc86e(_0x402e87,_0x383b37(0x322)+'dated'),{'ok':!![],'agent':_0x472204[_0x383b37(0x2ec)](_0x3692f0=>_0x3692f0?.['id']===_0xf102cb)||null};}),_0x45571c(_0x28ef4f(0x31a)+'elete',async(_0x4e49b6,_0xa6922d={})=>{const _0x3b54af=_0x28ef4f,_0x1ea5c5=String(_0xa6922d['id']||_0xa6922d['agentId']||'')[_0x3b54af(0x1e8)]();if(!_0x1ea5c5)throw new Error('agent\x20id'+'\x20is\x20requ'+_0x3b54af(0x123));const _0x1406e3=await readMutableConfig(),_0x37e09a=_0x1406e3[_0x3b54af(0x133)]&&typeof _0x1406e3[_0x3b54af(0x133)]==='object'?_0x1406e3['agents']:{};return _0x37e09a[_0x3b54af(0x184)]=_0x14a9bf(_0x1406e3)[_0x3b54af(0x139)](_0xc703c7=>_0xc703c7?.['id']!==_0x1ea5c5),_0x1406e3[_0x3b54af(0x133)]=_0x37e09a,await _0x3dc86e(_0x1406e3,_0x3b54af(0x3ad)+_0x3b54af(0x1a7)),{'ok':!![],'agentId':_0x1ea5c5};}),_0x45571c(_0x28ef4f(0x406)+_0x28ef4f(0x325)+_0x28ef4f(0x134)+'t',async(_0x42c5bf,_0x54cd4a={})=>{const _0x506e5a=_0x28ef4f,[_0x444399,_0x286650]=await Promise[_0x506e5a(0x35c)]([_0x766744()['agents'][_0x506e5a(0x184)](),_0x766744()[_0x506e5a(0x37d)][_0x506e5a(0x184)](_0x54cd4a)['catch'](()=>({'sessions':[]}))]),_0x28c193=Array['isArray'](_0x286650[_0x506e5a(0x37d)])?_0x286650[_0x506e5a(0x37d)]:[];return{..._0x444399,'sessions':_0x28c193,'groups':Array[_0x506e5a(0x37c)](_0x444399['groups'])?_0x444399[_0x506e5a(0x2b8)]:_0x335b42(_0x444399,_0x28c193)};}),terminalManager=createTerminalManager({'cwd':join(configController[_0x28ef4f(0x1bd)+'tateDir'](),_0x28ef4f(0x26b)+'e'),'emitData':_0x46a30d=>broadcast(_0x28ef4f(0x3ed)+'-data',_0x46a30d),'emitExit':_0x32ca97=>broadcast(_0x28ef4f(0x3ed)+'-exit',_0x32ca97)}),_0x45571c(_0x28ef4f(0x3ed)+':create',async(_0x157085,_0x4d86af={})=>terminalManager['create'](_0x4d86af)),_0x45571c(_0x28ef4f(0x3ed)+_0x28ef4f(0x2f1),async(_0x55daf8,_0x1cb4d7={})=>terminalManager['input'](_0x1cb4d7)),_0x45571c(_0x28ef4f(0x3ed)+_0x28ef4f(0x168),async(_0x2d9acc,_0x539bcb={})=>terminalManager[_0x28ef4f(0x420)](_0x539bcb)),_0x45571c(_0x28ef4f(0x3ed)+_0x28ef4f(0x340),async(_0x459d71,_0x3b3276={})=>terminalManager[_0x28ef4f(0x428)](_0x3b3276)),_0x45571c(_0x28ef4f(0x20c)+_0x28ef4f(0x184),async()=>{const _0x4d3d27=_0x28ef4f,_0x429cd7=gatewayController?.[_0x4d3d27(0x40b)+_0x4d3d27(0x22b)]?.()||{};return _0x429cd7[_0x4d3d27(0x20a)]||[];}),_0x45571c(_0x28ef4f(0x20c)+_0x28ef4f(0x15d)+'ig',async(_0x3d5a60,_0xbdd2fb={})=>{const _0x3e4a57=_0x28ef4f,_0x5d8914=String(_0xbdd2fb['pluginId']||_0xbdd2fb['id']||''),_0xf7eaa6=await readMutableConfig(),_0x4c8c9d=_0xf7eaa6['plugins']?.[_0x3e4a57(0x207)]||{};return _0x5d8914?_0x4c8c9d[_0x5d8914]||null:_0x4c8c9d;}),_0x45571c('plugins:'+'update-c'+'onfig',async(_0xd79263,_0x438283={})=>{const _0x478b0e=_0x28ef4f,_0x3eea10=String(_0x438283[_0x478b0e(0x266)]||_0x438283['id']||'');if(!_0x3eea10)throw new Error('pluginId'+_0x478b0e(0x20d)+_0x478b0e(0x123));const _0x3ab129=await readMutableConfig(),_0x3bf4ca=_0x3ab129[_0x478b0e(0x20a)]&&typeof _0x3ab129[_0x478b0e(0x20a)]===_0x478b0e(0x262)?_0x3ab129[_0x478b0e(0x20a)]:{},_0x3b71f7=_0x3bf4ca['entries']&&typeof _0x3bf4ca['entries']==='object'?_0x3bf4ca[_0x478b0e(0x207)]:{};return _0x3b71f7[_0x3eea10]={..._0x3b71f7[_0x3eea10]||{},..._0x438283[_0x478b0e(0x370)]||_0x438283[_0x478b0e(0x316)]||{}},_0x3bf4ca[_0x478b0e(0x207)]=_0x3b71f7,_0x3ab129[_0x478b0e(0x20a)]=_0x3bf4ca,_0x3dc86e(_0x3ab129,_0x478b0e(0x2e4)+_0x478b0e(0x1f0)+'dated');}),_0x45571c(_0x28ef4f(0x20c)+_0x28ef4f(0x408),async(_0x188b77,_0x15ae32={})=>{const _0x1051a4=_0x28ef4f,_0x173114=String(_0x15ae32[_0x1051a4(0x266)]||_0x15ae32['id']||'');if(!_0x173114)throw new Error(_0x1051a4(0x266)+'\x20is\x20requ'+'ired');const _0x1a6cec=await readMutableConfig(),_0x518a59=_0x1a6cec[_0x1051a4(0x20a)]&&typeof _0x1a6cec[_0x1051a4(0x20a)]===_0x1051a4(0x262)?_0x1a6cec[_0x1051a4(0x20a)]:{},_0xf3a19b=_0x518a59[_0x1051a4(0x207)]&&typeof _0x518a59[_0x1051a4(0x207)]===_0x1051a4(0x262)?_0x518a59[_0x1051a4(0x207)]:{};return _0xf3a19b[_0x173114]={..._0xf3a19b[_0x173114]||{},'enabled':!![]},_0x518a59['entries']=_0xf3a19b,_0x1a6cec[_0x1051a4(0x20a)]=_0x518a59,_0x3dc86e(_0x1a6cec,_0x1051a4(0x2cc)+_0x1051a4(0x3c4));}),_0x45571c(_0x28ef4f(0x20c)+_0x28ef4f(0x307),async(_0x2a844f,_0x4920e5={})=>{const _0x2344bd=_0x28ef4f,_0x4f3c54=String(_0x4920e5['pluginId']||_0x4920e5['id']||'');if(!_0x4f3c54)throw new Error('pluginId'+_0x2344bd(0x20d)+_0x2344bd(0x123));const _0x535b00=await readMutableConfig(),_0x2c7c9f=_0x535b00[_0x2344bd(0x20a)]&&typeof _0x535b00[_0x2344bd(0x20a)]==='object'?_0x535b00['plugins']:{},_0x352568=_0x2c7c9f[_0x2344bd(0x207)]&&typeof _0x2c7c9f['entries']===_0x2344bd(0x262)?_0x2c7c9f[_0x2344bd(0x207)]:{};return _0x352568[_0x4f3c54]={..._0x352568[_0x4f3c54]||{},'enabled':![]},_0x2c7c9f['entries']=_0x352568,_0x535b00[_0x2344bd(0x20a)]=_0x2c7c9f,_0x3dc86e(_0x535b00,_0x2344bd(0x295)+_0x2344bd(0x3d6));}),_0x45571c(_0x28ef4f(0x20c)+'status',async(_0xbcdc0d,_0x26a982={})=>({'plugins':await((async()=>{const _0x5e7881=_0x28ef4f,_0x137d07=gatewayController?.[_0x5e7881(0x40b)+'nfo']?.()||{};if(!_0x26a982?.[_0x5e7881(0x266)]&&!_0x26a982?.['id'])return _0x137d07['plugins']||[];const _0x44c743=String(_0x26a982[_0x5e7881(0x266)]||_0x26a982['id']||'');return(_0x137d07[_0x5e7881(0x20a)]||[])[_0x5e7881(0x139)](_0x54d96f=>_0x54d96f[_0x5e7881(0x266)]===_0x44c743);})())})),_0x45571c('tabs:nav'+_0x28ef4f(0x33a),async(_0x188350,_0x3658a7)=>({'ok':!![],'payload':_0x3658a7})),_0x45571c(_0x28ef4f(0x1de)+_0x28ef4f(0x28c)+'e',async(_0x9aed38,_0x309be2)=>{const _0x3317b3=_0x28ef4f;return broadcast(_0x3317b3(0x27a)+_0x3317b3(0x1d5),_0x309be2),{'ok':!![]};}),_0x45571c(_0x28ef4f(0x21b)+'uest-age'+_0x28ef4f(0x2f0),async()=>{const _0x359b06=_0x28ef4f;return broadcast(_0x359b06(0x277)+'nt-state'+'-request',{}),{'ok':!![]};}),_0x45571c('tabs:ref'+_0x28ef4f(0x296)+_0x28ef4f(0x2f0),async(_0x1fec71,_0x50b746={})=>{const _0x5db515=_0x28ef4f;return broadcast(_0x5db515(0x277)+_0x5db515(0x2f0)+_0x5db515(0x2ed)+_0x5db515(0x1af),_0x50b746),{'ok':!![]};}),_0x45571c('window:m'+_0x28ef4f(0x299),_0xa0af70=>{const _0x5f43e2=_0x28ef4f;return BrowserWindow[_0x5f43e2(0x1d6)+_0x5f43e2(0x3f7)](_0xa0af70['sender'])?.[_0x5f43e2(0x3dc)](),{'ok':!![]};}),_0x45571c('window:t'+'oggle-ma'+_0x28ef4f(0x1b3),_0x5e1bd7=>{const _0x5a231a=_0x28ef4f,_0xf7f87b=BrowserWindow[_0x5a231a(0x1d6)+_0x5a231a(0x3f7)](_0x5e1bd7[_0x5a231a(0x23c)]);if(!_0xf7f87b)return{'isMaximized':![]};if(_0xf7f87b[_0x5a231a(0x14a)+_0x5a231a(0x3d4)]())_0xf7f87b[_0x5a231a(0x1b4)+'ze']();else _0xf7f87b[_0x5a231a(0x130)]();return{'isMaximized':_0xf7f87b[_0x5a231a(0x14a)+_0x5a231a(0x3d4)]()};}),_0x45571c(_0x28ef4f(0x2e1)+_0x28ef4f(0x319),_0x2efa5b=>{const _0x11bf92=_0x28ef4f;return BrowserWindow[_0x11bf92(0x1d6)+_0x11bf92(0x3f7)](_0x2efa5b[_0x11bf92(0x23c)])?.[_0x11bf92(0x428)](),{'ok':!![]};}),_0x45571c(_0x28ef4f(0x291)+'pen-devt'+'ools',()=>openDevToolsForActiveContext()),_0x45571c(_0x28ef4f(0x3f0)+':runtime'+_0x28ef4f(0x211),()=>_0x766744()['runtimeI'+'nfo']()),_0x45571c(_0x28ef4f(0x3f0)+_0x28ef4f(0x2ce)+_0x28ef4f(0x1e3),async()=>(await ensureGatewayControllerStarted())[_0x28ef4f(0x162)+'s']()),_0x45571c('openclaw'+':gateway'+'-restart',()=>_0x766744()[_0x28ef4f(0x422)](_0x28ef4f(0x2c0)+_0x28ef4f(0x421))),_0x45571c(_0x28ef4f(0x3f0)+_0x28ef4f(0x1c4)+_0x28ef4f(0x38a)+_0x28ef4f(0x3be),async()=>({'loadingLifeCycle':_0x28ef4f(0x336),'message':'','updatedAt':new Date()[_0x28ef4f(0x2e8)+_0x28ef4f(0x3e0)]()})),_0x45571c(_0x28ef4f(0x3f0)+':gateway'+_0x28ef4f(0x23a),(_0x59d6fc,_0x52108e={})=>_0x766744()[_0x28ef4f(0x1ac)+_0x28ef4f(0x2a8)](_0x52108e?.[_0x28ef4f(0x2db)]??0xc8)),_0x45571c('openclaw'+_0x28ef4f(0x3cd)+_0x28ef4f(0x41b)+'-questio'+'n',(_0x4b07c4,_0x2bd085)=>_0x766744()[_0x28ef4f(0x242)+'kUserQue'+_0x28ef4f(0x3bc)](_0x2bd085)),_0x45571c(_0x28ef4f(0x3f0)+_0x28ef4f(0x200)+_0x28ef4f(0x3e9),async()=>{const _0x2d7585=_0x28ef4f,_0x31ae6c=join(resolveRuntimeRoot(shellConfig['projectR'+_0x2d7585(0x359)]),_0x2d7585(0x424),_0x2d7585(0x2a2)+'w');if(!existsSync(_0x31ae6c))throw new Error(_0x2d7585(0x3f0)+_0x2d7585(0x37e)+_0x2d7585(0x328)+_0x2d7585(0x386)+_0x31ae6c+(_0x2d7585(0x39d)+_0x2d7585(0x3c3)+_0x2d7585(0x1e4)+'e\x20first.'));const _0x1c2bc3=join(app[_0x2d7585(0x3b3)](_0x2d7585(0x411)),_0x2d7585(0x371)+'ell-cli.'+_0x2d7585(0x27f));await writeFile(_0x1c2bc3,'#!/bin/s'+'h\x0aexec\x20\x22'+_0x31ae6c[_0x2d7585(0x191)](/\\/g,'\x5c\x5c')[_0x2d7585(0x191)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x3b2b91=spawn(_0x2d7585(0x3af),['-a',_0x2d7585(0x24d),_0x1c2bc3],{'detached':!![],'stdio':_0x2d7585(0x1e5)});return _0x3b2b91[_0x2d7585(0x26c)](),{'ok':!![],'cliPath':_0x31ae6c};}),_0x45571c(_0x28ef4f(0x213)+'ist',()=>_0x766744()['agents'][_0x28ef4f(0x184)]()),_0x45571c(_0x28ef4f(0x22f)+_0x28ef4f(0x3ac),(_0x38daa6,_0x585161)=>_0x766744()[_0x28ef4f(0x282)]['status'](_0x585161)),_0x45571c('sessions'+_0x28ef4f(0x382),(_0x37a9c5,_0x4e7358)=>_0x766744()[_0x28ef4f(0x37d)][_0x28ef4f(0x3a2)](_0x4e7358)),_0x45571c('sessions'+':list',(_0x23a13c,_0xa3de0b)=>_0x766744()[_0x28ef4f(0x37d)][_0x28ef4f(0x184)](_0xa3de0b)),_0x45571c(_0x28ef4f(0x37d)+':delete',(_0x542d9c,_0x411768)=>_0x766744()[_0x28ef4f(0x37d)][_0x28ef4f(0x199)](_0x411768)),_0x45571c('chat:str'+_0x28ef4f(0x13a),(_0x2dd176,_0x2fda3d)=>_0x766744()[_0x28ef4f(0x136)][_0x28ef4f(0x38b)](_0x2fda3d)),_0x45571c('chat:abo'+'rt',(_0x53cca6,_0x16695a)=>_0x766744()[_0x28ef4f(0x136)][_0x28ef4f(0x137)](_0x16695a)),_0x45571c(_0x28ef4f(0x1d0)+_0x28ef4f(0x127),(_0x1aa410,_0x288716)=>_0x766744()[_0x28ef4f(0x136)][_0x28ef4f(0x390)](_0x288716)),_0x45571c(_0x28ef4f(0x1c6)+'te',async(_0x15eb5c,_0x130453={})=>{const _0x5261a1=_0x28ef4f,_0x41a1ed=typeof _0x130453[_0x5261a1(0x3c8)]===_0x5261a1(0x21e)?_0x130453[_0x5261a1(0x3c8)]:_0x5261a1(0x151),_0x5a9904=typeof _0x130453['message']===_0x5261a1(0x21e)?_0x130453[_0x5261a1(0x225)]:_0x5261a1(0x2c0)+_0x5261a1(0x27e),_0x19bf9c=typeof _0x130453['context']==='string'&&_0x130453[_0x5261a1(0x23e)]['trim']()?_0x5261a1(0x2c0)+':'+_0x130453[_0x5261a1(0x23e)][_0x5261a1(0x1e8)]():_0x5261a1(0x2c0),_0x52a418=_0x130453[_0x5261a1(0x292)]&&typeof _0x130453[_0x5261a1(0x292)]===_0x5261a1(0x262)?{...summarizePayload(_0x130453[_0x5261a1(0x292)]),'context':_0x19bf9c}:{'context':_0x19bf9c},_0x20ed4e=rendererLogger;if(_0x20ed4e?.[_0x41a1ed])await _0x20ed4e[_0x41a1ed](_0x5a9904,_0x52a418);else await _0x20ed4e?.[_0x5261a1(0x151)](_0x5a9904,_0x52a418);if(_0x130453[_0x5261a1(0x214)+'ic']===!![]||_0x19bf9c===_0x5261a1(0x2c0)+_0x5261a1(0x24a)+'tic'){const _0x4b0700=_0x130453[_0x5261a1(0x2f2)]&&typeof _0x130453[_0x5261a1(0x2f2)]==='object'?_0x130453[_0x5261a1(0x2f2)]:_0x130453[_0x5261a1(0x292)]?.[_0x5261a1(0x2f2)]&&typeof _0x130453[_0x5261a1(0x292)][_0x5261a1(0x2f2)]===_0x5261a1(0x262)?_0x130453['meta'][_0x5261a1(0x2f2)]:{'level':_0x41a1ed,'category':'renderer','event':_0x19bf9c,'message':_0x5a9904,'meta':_0x130453[_0x5261a1(0x292)]};await diagnosticsWriter?.[_0x5261a1(0x224)+'nt'](_0x4b0700,{'captureIncident':String(_0x4b0700['level']||_0x41a1ed)[_0x5261a1(0x343)+_0x5261a1(0x209)]()===_0x5261a1(0x16a)||_0x130453[_0x5261a1(0x3b7)+_0x5261a1(0x34b)]===!![]});}return{'ok':!![]};}),_0x45571c(_0x28ef4f(0x1a2)+_0x28ef4f(0x271),async(_0x2581ed,_0x4bcca5={})=>{const _0x15b63c=_0x28ef4f,_0x5a23cf=typeof _0x4bcca5[_0x15b63c(0x1a9)+'r']===_0x15b63c(0x21e)&&_0x4bcca5[_0x15b63c(0x1a9)+'r']['trim']()?_0x4bcca5[_0x15b63c(0x1a9)+'r']:undefined,_0x1ab484=await exportLogsArchive({'logsDir':configController[_0x15b63c(0x202)][_0x15b63c(0x14f)],'targetDir':_0x5a23cf,'appVersion':app[_0x15b63c(0x2f8)+'on']()});return mainLogger?.[_0x15b63c(0x151)](_0x15b63c(0x215)+'orted',{'path':toHomePath(_0x1ab484[_0x15b63c(0x11e)])}),_0x1ab484;}),_0x45571c(_0x28ef4f(0x37f)+_0x28ef4f(0x1b6)+'ory',async()=>{const _0x1db53c=_0x28ef4f;return await shell['openPath'](configController['paths'][_0x1db53c(0x14f)]),mainLogger?.[_0x1db53c(0x151)](_0x1db53c(0x32c)+_0x1db53c(0x1a8)+_0x1db53c(0x3b2),{'logsDir':toHomePath(configController[_0x1db53c(0x202)][_0x1db53c(0x14f)])}),{'ok':!![],'path':configController['paths']['logsDir']};}),_0x45571c(_0x28ef4f(0x35f)+'t',async()=>{const _0x2b5288=_0x28ef4f,_0x2fe362=await readdir(configController[_0x2b5288(0x202)][_0x2b5288(0x14f)],{'recursive':!![]})[_0x2b5288(0x2a3)](()=>[]);return _0x2fe362;}),_0x45571c('logs:rea'+'d',async(_0x35cb3b,_0x287c7f={})=>{const _0x444d1b=_0x28ef4f,_0x26a3da=String(_0x287c7f[_0x444d1b(0x11e)]||'');if(!_0x26a3da)throw new Error('path\x20is\x20'+_0x444d1b(0x26f));return readFile(_0x26a3da,'utf8');}),_0x45571c('files:re'+'ad',async(_0xd36e68,_0x4df9c3)=>{const _0x9b2291=_0x28ef4f,_0x5f4b4a=Date['now']();try{const _0x2a309c=await readFile(_0x4df9c3,_0x9b2291(0x154));return filesLogger?.[_0x9b2291(0x151)](_0x9b2291(0x2c8)+_0x9b2291(0x25f)+_0x9b2291(0x247),{'path':toHomePath(_0x4df9c3),'bytes':Buffer[_0x9b2291(0x33b)+'th'](_0x2a309c),'durationMs':Date[_0x9b2291(0x3f1)]()-_0x5f4b4a}),_0x2a309c;}catch(_0x29a11a){filesLogger?.[_0x9b2291(0x16a)](_0x9b2291(0x2c8)+_0x9b2291(0x166),{'path':toHomePath(_0x4df9c3),'durationMs':Date[_0x9b2291(0x3f1)]()-_0x5f4b4a,'error':summarizeError(_0x29a11a)});throw _0x29a11a;}}),_0x45571c('files:re'+_0x28ef4f(0x198)+'y',async(_0x431808,_0x109c77)=>{const _0x2e0ecf=_0x28ef4f,_0x168e0b=Date[_0x2e0ecf(0x3f1)]();try{const _0x3c5bad=await readFile(_0x109c77);return filesLogger?.[_0x2e0ecf(0x151)]('binary\x20f'+_0x2e0ecf(0x326)+_0x2e0ecf(0x173)+'ed',{'path':toHomePath(_0x109c77),'bytes':_0x3c5bad['byteLeng'+'th'],'durationMs':Date[_0x2e0ecf(0x3f1)]()-_0x168e0b}),new Uint8Array(_0x3c5bad);}catch(_0x5d5755){filesLogger?.[_0x2e0ecf(0x16a)](_0x2e0ecf(0x40a)+_0x2e0ecf(0x326)+_0x2e0ecf(0x2ee),{'path':toHomePath(_0x109c77),'durationMs':Date['now']()-_0x168e0b,'error':summarizeError(_0x5d5755)});throw _0x5d5755;}}),_0x45571c('files:wr'+_0x28ef4f(0x152),async(_0x287dfb,_0x28c5b7={})=>{const _0x2bffd1=_0x28ef4f,_0x16eb95=Date['now']();return await writeFile(_0x28c5b7['path'],_0x28c5b7[_0x2bffd1(0x3e7)]??'',_0x2bffd1(0x154)),filesLogger?.[_0x2bffd1(0x151)](_0x2bffd1(0x28a)+_0x2bffd1(0x32a)+'eted',{'path':toHomePath(_0x28c5b7[_0x2bffd1(0x11e)]),'bytes':Buffer[_0x2bffd1(0x33b)+'th'](String(_0x28c5b7[_0x2bffd1(0x3e7)]??'')),'durationMs':Date[_0x2bffd1(0x3f1)]()-_0x16eb95}),{'ok':!![]};}),_0x45571c(_0x28ef4f(0x252)+_0x28ef4f(0x2f4)+'ry',async(_0x116b79,_0x5b5367={})=>{const _0x3e87eb=_0x28ef4f,_0x227b9f=Date[_0x3e87eb(0x3f1)]();await writeFile(_0x5b5367[_0x3e87eb(0x11e)],Buffer[_0x3e87eb(0x1cd)](_0x5b5367['content']??[]));const _0x507935=await stat(_0x5b5367['path'])[_0x3e87eb(0x2a3)](()=>null);return filesLogger?.['info'](_0x3e87eb(0x40a)+_0x3e87eb(0x329)+_0x3e87eb(0x426)+'ted',{'path':toHomePath(_0x5b5367['path']),'bytes':_0x507935?.[_0x3e87eb(0x318)]??0x0,'durationMs':Date[_0x3e87eb(0x3f1)]()-_0x227b9f}),{'ok':!![]};}),_0x45571c(_0x28ef4f(0x1a5)+_0x28ef4f(0x3ab)+'e',async(_0x344319,_0x45cfeb={})=>{const _0x3725af=_0x28ef4f,_0x29437b=await dialog['showOpen'+'Dialog'](BrowserWindow[_0x3725af(0x1d6)+_0x3725af(0x3f7)](_0x344319[_0x3725af(0x23c)])??mainWindow,{'title':typeof _0x45cfeb['title']==='string'?_0x45cfeb['title']:undefined,'properties':[_0x3725af(0x2b1),..._0x45cfeb[_0x3725af(0x30f)+_0x3725af(0x153)]?[_0x3725af(0x30f)+_0x3725af(0x153)]:[]],'filters':Array[_0x3725af(0x37c)](_0x45cfeb[_0x3725af(0x12d)])?_0x45cfeb[_0x3725af(0x12d)]:undefined});return filesLogger?.[_0x3725af(0x151)](_0x3725af(0x1f2)+'ile\x20comp'+_0x3725af(0x1a7),{'canceled':_0x29437b[_0x3725af(0x129)],'count':_0x29437b[_0x3725af(0x23d)+'s'][_0x3725af(0x3e4)],'paths':_0x29437b[_0x3725af(0x23d)+'s'][_0x3725af(0x121)](toHomePath)}),{'canceled':_0x29437b[_0x3725af(0x129)],'paths':_0x29437b[_0x3725af(0x23d)+'s']};}),_0x45571c('files:li'+_0x28ef4f(0x1ba)+'tory',async(_0x327637,_0x5aa16b={})=>{const _0x14827a=_0x28ef4f,_0x331bc5=resolve(String(_0x5aa16b['path']||'')),_0x49c57d=_0x5aa16b[_0x14827a(0x290)+'e']!==![],_0x57b83a=Array['isArray'](_0x5aa16b[_0x14827a(0x185)+'ns'])?_0x5aa16b[_0x14827a(0x185)+'ns']['map'](_0x2404d7=>String(_0x2404d7)[_0x14827a(0x343)+'ase']()[_0x14827a(0x191)](/^\./,''))[_0x14827a(0x139)](Boolean):null,_0x67f7c7=Number[_0x14827a(0x270)+'r'](_0x5aa16b[_0x14827a(0x389)+'es'])&&_0x5aa16b['maxEntri'+'es']>0x0?_0x5aa16b[_0x14827a(0x389)+'es']:0xc350,_0x1336a7=[];let _0x5d9fb2=![];async function _0x57cac6(_0x4d8e63){const _0x2209f3=_0x14827a;if(_0x5d9fb2)return;let _0x508c7a;try{_0x508c7a=await readdir(_0x4d8e63,{'withFileTypes':!![]});}catch{return;}for(const _0x360a37 of _0x508c7a){if(_0x5d9fb2)return;if(_0x360a37['name'][_0x2209f3(0x1db)+'th']('.'))continue;const _0xf0348d=join(_0x4d8e63,_0x360a37[_0x2209f3(0x2fe)]);if(_0x360a37[_0x2209f3(0x281)+_0x2209f3(0x3d0)]()){if(_0x49c57d)await _0x57cac6(_0xf0348d);continue;}if(!_0x360a37[_0x2209f3(0x287)]())continue;if(_0x57b83a){const _0x4ae74c=_0x360a37[_0x2209f3(0x2fe)][_0x2209f3(0x33f)+_0x2209f3(0x364)]('.'),_0x7a9ff6=_0x4ae74c>=0x0?_0x360a37[_0x2209f3(0x2fe)][_0x2209f3(0x39f)](_0x4ae74c+0x1)[_0x2209f3(0x343)+_0x2209f3(0x209)]():'';if(!_0x57b83a[_0x2209f3(0x2b5)](_0x7a9ff6))continue;}if(_0x1336a7['length']>=_0x67f7c7){_0x5d9fb2=!![];return;}_0x1336a7['push']({'name':_0x360a37[_0x2209f3(0x2fe)],'path':_0xf0348d});}}return await _0x57cac6(_0x331bc5),{'path':_0x331bc5,'entries':_0x1336a7,'truncated':_0x5d9fb2};}),_0x45571c('files:se'+'lect-dir'+_0x28ef4f(0x417),async(_0xfa29d6,_0x7a0a86={})=>{const _0x5402b9=_0x28ef4f,_0x43b3a9=await dialog['showOpen'+_0x5402b9(0x391)](BrowserWindow[_0x5402b9(0x1d6)+_0x5402b9(0x3f7)](_0xfa29d6['sender'])??mainWindow,{'title':typeof _0x7a0a86[_0x5402b9(0x201)]===_0x5402b9(0x21e)?_0x7a0a86[_0x5402b9(0x201)]:undefined,'properties':[_0x5402b9(0x3e6)+'ctory']});return filesLogger?.[_0x5402b9(0x151)](_0x5402b9(0x41c)+_0x5402b9(0x2d0)+_0x5402b9(0x173)+'ed',{'canceled':_0x43b3a9['canceled'],'count':_0x43b3a9[_0x5402b9(0x23d)+'s']['length'],'paths':_0x43b3a9[_0x5402b9(0x23d)+'s'][_0x5402b9(0x121)](toHomePath)}),{'canceled':_0x43b3a9[_0x5402b9(0x129)],'paths':_0x43b3a9[_0x5402b9(0x23d)+'s']};}),_0x45571c(_0x28ef4f(0x26b)+_0x28ef4f(0x3da)+_0x28ef4f(0x26e),()=>_0x766744()['workspac'+'e']['director'+'yInfo']()),_0x45571c(_0x28ef4f(0x26b)+'e:open-d'+_0x28ef4f(0x2d0),async()=>{const _0x1c1050=_0x28ef4f,_0x1a8c21=await _0x766744()[_0x1c1050(0x26b)+'e'][_0x1c1050(0x1c7)+_0x1c1050(0x1ff)]();return await shell[_0x1c1050(0x205)](_0x1a8c21[_0x1c1050(0x11e)]),filesLogger?.[_0x1c1050(0x151)](_0x1c1050(0x26b)+_0x1c1050(0x36c)+_0x1c1050(0x28f)+'ed',{'path':toHomePath(_0x1a8c21['path'])}),{'ok':!![],'path':_0x1a8c21[_0x1c1050(0x11e)]};}),_0x45571c('workspac'+_0x28ef4f(0x3f9)+_0x28ef4f(0x1c0),()=>_0x766744()[_0x28ef4f(0x26b)+'e']['sharedCo'+_0x28ef4f(0x20f)]()),_0x45571c('workspac'+'e:write-'+'shared-c'+_0x28ef4f(0x38d),(_0x3b98ca,_0x3140fa)=>_0x766744()[_0x28ef4f(0x26b)+'e'][_0x28ef4f(0x3db)+_0x28ef4f(0x284)+'xt'](_0x3140fa)),_0x45571c(_0x28ef4f(0x37d)+_0x28ef4f(0x360),(_0x484c23,_0x3845a5)=>_0x766744()['sessions'][_0x28ef4f(0x15c)](_0x3845a5)),_0x45571c(_0x28ef4f(0x37d)+':pin',async(_0x3f6768,_0x3cdff1={})=>{const _0xfcd901=_0x28ef4f,_0x2c9302=String(_0x3cdff1[_0xfcd901(0x3f2)+'ey']||_0x3cdff1['key']||'')[_0xfcd901(0x1e8)]();if(!_0x2c9302)throw new Error(_0xfcd901(0x3f2)+'ey\x20is\x20re'+'quired');const _0x4948a5=await ensureSessionSqliteStore()[_0xfcd901(0x33e)+'dSession'+_0xfcd901(0x398)](),_0x23517c=await _0x766744()[_0xfcd901(0x37d)]['reorderP'+'inned']([_0x2c9302,..._0x4948a5[_0xfcd901(0x139)](_0x174383=>_0x174383!==_0x2c9302)]);return _0x23517c;}),_0x45571c(_0x28ef4f(0x37d)+_0x28ef4f(0x268),async(_0x37430a,_0x3f5836={})=>{const _0x11bf7e=_0x28ef4f,_0x4f9cf2=String(_0x3f5836[_0x11bf7e(0x3f2)+'ey']||_0x3f5836[_0x11bf7e(0x301)]||'')['trim']();if(!_0x4f9cf2)throw new Error(_0x11bf7e(0x3f2)+_0x11bf7e(0x3eb)+'quired');const _0x5863fe=await ensureSessionSqliteStore()[_0x11bf7e(0x33e)+_0x11bf7e(0x37b)+'Keys']();return await _0x766744()['sessions'][_0x11bf7e(0x223)+_0x11bf7e(0x3e8)](_0x5863fe['filter'](_0x5e4f69=>_0x5e4f69!==_0x4f9cf2));}),_0x45571c(_0x28ef4f(0x37d)+_0x28ef4f(0x19d)+_0x28ef4f(0x300),async(_0x554ae1,_0x5399b8={})=>{const _0x4465ce=_0x28ef4f,_0x55c703=Array['isArray'](_0x5399b8[_0x4465ce(0x3ba)])?_0x5399b8[_0x4465ce(0x3ba)]:_0x5399b8;return await _0x766744()[_0x4465ce(0x37d)][_0x4465ce(0x223)+_0x4465ce(0x3e8)](_0x55c703);}),_0x45571c(_0x28ef4f(0x34f)+_0x28ef4f(0x315),(_0xece50d,_0x4d5752)=>_0x766744()['skills'][_0x28ef4f(0x239)](_0x4d5752)),_0x45571c('cron:lis'+'t',(_0x9fae8a,_0x38267a)=>_0x766744()['cron'][_0x28ef4f(0x184)](_0x38267a)),_0x45571c(_0x28ef4f(0x159)+_0x28ef4f(0x3c0),(_0xaf7ba5,_0x10a1c2)=>_0x766744()[_0x28ef4f(0x2bc)][_0x28ef4f(0x3a2)](_0x10a1c2)),_0x45571c(_0x28ef4f(0x388)+'ate',(_0x54ca84,_0x3e3837)=>_0x766744()[_0x28ef4f(0x2bc)][_0x28ef4f(0x305)](_0x3e3837)),_0x45571c('cron:rem'+_0x28ef4f(0x3d5),(_0x5953af,_0x53939f)=>_0x766744()[_0x28ef4f(0x2bc)][_0x28ef4f(0x25b)](_0x53939f)),_0x45571c(_0x28ef4f(0x3c6)+_0x28ef4f(0x261),(_0x452b5,_0x593703)=>_0x766744()['cron']['runOnce'](_0x593703)),_0x45571c(_0x28ef4f(0x3dd)+'s',(_0xc82a42,_0x5d654e)=>_0x766744()[_0x28ef4f(0x2bc)][_0x28ef4f(0x1ab)](_0x5d654e)),_0x45571c(_0x28ef4f(0x195)+'omplete',async(_0x5f2a01,_0x4ef6cc={})=>{const _0xb2b690=_0x28ef4f,_0x3b7d7f=configController['resolveC'+'onfigPat'+'h'](),_0xb0d70d=JSON[_0xb2b690(0x18c)](await readFile(_0x3b7d7f,_0xb2b690(0x154))),_0x51268a=_0xb0d70d?.[_0xb2b690(0x14b)]?.[_0xb2b690(0x122)+'s']&&typeof _0xb0d70d[_0xb2b690(0x14b)]['provider'+'s']===_0xb2b690(0x262)?_0xb0d70d[_0xb2b690(0x14b)][_0xb2b690(0x122)+'s']:{},_0x588ca6=typeof _0xb0d70d?.['agents']?.[_0xb2b690(0x3c5)]?.['model']?.['primary']===_0xb2b690(0x21e)?_0xb0d70d[_0xb2b690(0x133)][_0xb2b690(0x3c5)]['model']['primary']:'',_0x22475f=String(_0x4ef6cc['model']||_0x588ca6||'');if(!_0x22475f[_0xb2b690(0x2b5)]('/'))throw new Error(_0xb2b690(0x1ed)+_0xb2b690(0x317)+_0xb2b690(0x380)+_0xb2b690(0x231)+'\x20a\x20provi'+'der/mode'+_0xb2b690(0x334));const _0x410a23=_0x22475f[_0xb2b690(0x240)]('/'),_0xa55677=_0x22475f[_0xb2b690(0x39f)](0x0,_0x410a23),_0x4bd549=_0x22475f[_0xb2b690(0x39f)](_0x410a23+0x1),_0x254bd0=_0x51268a[_0xa55677];if(!_0x254bd0||typeof _0x254bd0!==_0xb2b690(0x262))throw new Error(_0xb2b690(0x122)+_0xb2b690(0x352)+_0xb2b690(0x2a7)+'\x20'+_0xa55677);const _0x22eb87=String(_0x254bd0[_0xb2b690(0x2b7)]||'https://'+_0xb2b690(0x178)+_0xb2b690(0x273)+'1')[_0xb2b690(0x1e8)]()[_0xb2b690(0x191)](/\/$/,''),_0x56a217=await fetch(_0x22eb87+(_0xb2b690(0x34a)+_0xb2b690(0x12c)+'s'),{'method':_0xb2b690(0x21a),'headers':{'content-type':_0xb2b690(0x246)+_0xb2b690(0x19b),'Authorization':_0xb2b690(0x230)+(_0x254bd0[_0xb2b690(0x1f3)]||''),..._0x254bd0[_0xb2b690(0x363)]&&typeof _0x254bd0['headers']===_0xb2b690(0x262)?_0x254bd0[_0xb2b690(0x363)]:{}},'body':JSON[_0xb2b690(0x36a)+'y']({'model':_0x4bd549,'max_tokens':Number[_0xb2b690(0x270)+'r'](_0x4ef6cc['maxToken'+'s'])?_0x4ef6cc[_0xb2b690(0x1fc)+'s']:0x400,'temperature':typeof _0x4ef6cc[_0xb2b690(0x2f9)+_0xb2b690(0x335)]===_0xb2b690(0x378)?_0x4ef6cc[_0xb2b690(0x2f9)+'ure']:undefined,'messages':Array[_0xb2b690(0x37c)](_0x4ef6cc[_0xb2b690(0x29a)])?_0x4ef6cc[_0xb2b690(0x29a)]:[]}),'signal':AbortSignal[_0xb2b690(0x158)](Number[_0xb2b690(0x270)+'r'](_0x4ef6cc['timeoutM'+'s'])?_0x4ef6cc[_0xb2b690(0x2dd)+'s']:0x1d4c0)});if(!_0x56a217['ok']){const _0x5e9273=await _0x56a217[_0xb2b690(0x3d9)]();throw new Error(_0xb2b690(0x306)+_0xb2b690(0x308)+_0x56a217[_0xb2b690(0x260)]+':\x20'+_0x5e9273['slice'](0x0,0x190));}const _0x3aa17d=await _0x56a217[_0xb2b690(0x2fc)](),_0x221bf9=_0x3aa17d?.[_0xb2b690(0x210)]?.[0x0]?.[_0xb2b690(0x225)]??{};return{'content':extractModelMessageContent(_0x221bf9[_0xb2b690(0x3e7)]),'reasoning':typeof _0x221bf9[_0xb2b690(0x313)+'g_conten'+'t']==='string'?_0x221bf9['reasonin'+_0xb2b690(0x3bb)+'t']:'','model':_0x3aa17d?.['model']||_0x4bd549};}),_0x45571c(_0x28ef4f(0x366)+_0x28ef4f(0x347),()=>_0x766744()['models'][_0x28ef4f(0x188)]()),_0x45571c(_0x28ef4f(0x366)+_0x28ef4f(0x339)+_0x28ef4f(0x3fb),(_0x44ae0f,_0x4442e0)=>_0x766744()[_0x28ef4f(0x14b)]['setSetti'+_0x28ef4f(0x3fb)](_0x4442e0)),_0x45571c(_0x28ef4f(0x366)+_0x28ef4f(0x1d9)+_0x28ef4f(0x18b)+_0x28ef4f(0x3ea),(_0x42a612,_0x5cb048)=>_0x766744()[_0x28ef4f(0x14b)][_0x28ef4f(0x3b6)+'tedModel'+_0x28ef4f(0x3f6)+'re'](_0x5cb048)),_0x45571c(_0x28ef4f(0x366)+_0x28ef4f(0x13c)+_0x28ef4f(0x1bc),(_0x50077,_0x271a4b)=>_0x766744()['models']['setSelfO'+_0x28ef4f(0x354)+_0x28ef4f(0x36f)](_0x271a4b)),_0x45571c(_0x28ef4f(0x366)+_0x28ef4f(0x3fa)+_0x28ef4f(0x192),()=>_0x766744()[_0x28ef4f(0x14b)][_0x28ef4f(0x2dc)+'ModelId']()),_0x45571c(_0x28ef4f(0x195)+'ustom-mo'+_0x28ef4f(0x18a),()=>_0x766744()[_0x28ef4f(0x14b)][_0x28ef4f(0x2ef)+_0x28ef4f(0x18a)]()),_0x45571c(_0x28ef4f(0x3cc)+_0x28ef4f(0x25e)+_0x28ef4f(0x3cf)+_0x28ef4f(0x31f),async()=>{const _0x2d385d=_0x28ef4f,_0x15381d=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController[_0x2d385d(0x24c)+_0x2d385d(0x1c8)+'ns'](),{'ok':!![],'syncedAt':new Date()[_0x2d385d(0x2e8)+_0x2d385d(0x3e0)](),'manifest':_0x15381d,'status':await getRuntimeResourceStatus()};}),_0x45571c(_0x28ef4f(0x3cc)+_0x28ef4f(0x35e)+_0x28ef4f(0x1e3),async()=>getRuntimeResourceStatus());}async function boot(){const _0x56f49a=_0x3bddf5;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x56f49a(0x2b9)](shellConfig['productN'+_0x56f49a(0x186)]),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x56f49a(0x202)],_0x56f49a(0x1ec)),ipcLogger=createShellLogger(configController[_0x56f49a(0x202)],_0x56f49a(0x278)),filesLogger=createShellLogger(configController[_0x56f49a(0x202)],_0x56f49a(0x177)),rendererLogger=createShellLogger(configController['paths'],'renderer'),productRuntime=await loadProductRuntime();const _0x12e67d=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController[_0x56f49a(0x202)][_0x56f49a(0x14f)],'appContext':{'productName':shellConfig[_0x56f49a(0x279)+_0x56f49a(0x186)],'appId':shellConfig['appId'],'appVersion':app[_0x56f49a(0x2f8)+'on'](),'platform':process[_0x56f49a(0x251)],'arch':process[_0x56f49a(0x265)],..._0x12e67d?{'apiEndpoint':_0x12e67d}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController['paths'][_0x56f49a(0x14f)],'diagnosticsWriter':diagnosticsWriter}),updateController=createUpdateController({'shellConfig':shellConfig,'appName':()=>app['name'],'appVersion':()=>app[_0x56f49a(0x2f8)+'on'](),'broadcast':broadcast,'logger':mainLogger}),updateController[_0x56f49a(0x40f)+'ze'](),registerProcessLogHooks(),mainLogger?.['info']('electron'+_0x56f49a(0x3e3)+_0x56f49a(0x1ca)+'ed',{'appVersion':app[_0x56f49a(0x2f8)+'on'](),'electronVersion':process[_0x56f49a(0x126)]['electron'],'nodeVersion':process[_0x56f49a(0x126)][_0x56f49a(0x344)],'chromeVersion':process[_0x56f49a(0x126)][_0x56f49a(0x124)],'platform':process[_0x56f49a(0x251)],'arch':process[_0x56f49a(0x265)],'mode':getMode(),'projectRoot':shellConfig[_0x56f49a(0x263)+_0x56f49a(0x359)],'configPath':shellConfig[_0x56f49a(0x161)+'th'],'dataDir':shellConfig[_0x56f49a(0x3a1)],'logsDir':configController[_0x56f49a(0x202)][_0x56f49a(0x14f)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig['projectR'+_0x56f49a(0x359)],_0x56f49a(0x2da),_0x56f49a(0x2d5)+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app['getVersi'+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime[_0x56f49a(0x1b5)+'roductCo'+_0x56f49a(0x1d4)]===_0x56f49a(0x1ad)&&await productRuntime[_0x56f49a(0x1b5)+'roductCo'+'nfig']({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x56f49a(0x1b5)+_0x56f49a(0x2c5)+'ta']===_0x56f49a(0x1ad)?await productRuntime[_0x56f49a(0x1b5)+_0x56f49a(0x2c5)+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()['ensureIn'+_0x56f49a(0x11b)+'d'](),attachGatewayBroadcastHandlers(gatewayController),await installIpcHandlers(),installClawspaceProtocolHandler(),registerShellShortcuts(),await createWindow(),await gatewayController['start'](),updateController[_0x56f49a(0x2e0)+_0x56f49a(0x2c2)+_0x56f49a(0x234)](),mainLogger?.['info'](_0x56f49a(0x19e)+_0x56f49a(0x3e3)+'ot\x20compl'+_0x56f49a(0x22d));}function registerProcessLogHooks(){const _0x36786f=_0x3bddf5;if(registerProcessLogHooks['register'+'ed'])return;registerProcessLogHooks['register'+'ed']=!![],process['on']('uncaught'+_0x36786f(0x3a9)+'n',_0x1a94a4=>{const _0x30d5c4=_0x36786f;mainLogger?.[_0x30d5c4(0x16a)](_0x30d5c4(0x31c)+_0x30d5c4(0x12a)+'on',summarizeError(_0x1a94a4));}),process['on'](_0x36786f(0x34e)+_0x36786f(0x2aa)+'on',_0x224760=>{const _0x346641=_0x36786f;mainLogger?.['error'](_0x346641(0x34e)+'d\x20reject'+_0x346641(0x375),summarizeError(_0x224760));}),app['on'](_0x36786f(0x409)+'rocess-g'+_0x36786f(0x280),(_0x4074f8,_0x65170b,_0xc42886)=>{const _0x10817b=_0x36786f;mainLogger?.['error'](_0x10817b(0x2c0)+_0x10817b(0x2ff)+_0x10817b(0x233),{'url':_0x65170b[_0x10817b(0x204)](),'details':_0xc42886});}),app['on'](_0x36786f(0x320)+_0x36786f(0x3fe)+'ne',(_0x3218db,_0x1bf05a)=>{const _0x431693=_0x36786f;mainLogger?.[_0x431693(0x16a)]('child\x20pr'+_0x431693(0x12e)+'ne',{'details':_0x1bf05a});});}app['on'](_0x3bddf5(0x1ea)+_0x3bddf5(0x29b)+'d',()=>{const _0x2ad7a5=_0x3bddf5;if(process['platform']!==_0x2ad7a5(0x407))app[_0x2ad7a5(0x2a4)]();}),app['on'](_0x3bddf5(0x312),async()=>{const _0x2d97e1=_0x3bddf5;if(isQuitting){app[_0x2d97e1(0x2a4)]();return;}updateController?.[_0x2d97e1(0x1d8)+_0x2d97e1(0x338)+_0x2d97e1(0x1fb)]('app_acti'+'vate'),BrowserWindow[_0x2d97e1(0x368)+_0x2d97e1(0x381)]()[_0x2d97e1(0x3e4)]===0x0&&shellConfig&&await createWindow();}),app['on'](_0x3bddf5(0x13f)+_0x3bddf5(0x28b),_0x5db692=>{const _0x206313=_0x3bddf5;isQuitting=!![],updateController?.['markQuit'+'Observed'](),terminalManager?.[_0x206313(0x1a0)](),terminalManager=null,productRuntimeHooks?.[_0x206313(0x1a0)]?.();for(const _0x49872f of Object[_0x206313(0x3ba)](productRuntimeHooks))delete productRuntimeHooks[_0x49872f];if(!gatewayController)return;mainLogger?.[_0x206313(0x151)](_0x206313(0x180)+_0x206313(0x357)+_0x206313(0x16f)+_0x206313(0x141)),_0x5db692['preventD'+_0x206313(0x140)](),void gatewayController['stop']()[_0x206313(0x3f8)](()=>{const _0x17bd4a=_0x206313;gatewayController=null,mainLogger?.['info'](_0x17bd4a(0x258)+_0x17bd4a(0x3b0)+_0x17bd4a(0x180)+_0x17bd4a(0x28b)),app[_0x17bd4a(0x2a4)]();});}),app['on'](_0x3bddf5(0x244)+'t',()=>{globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x3bddf5(0x3b5)+'y']()[_0x3bddf5(0x24e)](boot)['catch'](_0x23e809=>{const _0x20023f=_0x3bddf5;bootError=_0x23e809 instanceof Error?_0x23e809[_0x20023f(0x225)]:String(_0x23e809),mainLogger?.[_0x20023f(0x16a)]('electron'+_0x20023f(0x3e3)+_0x20023f(0x3e5)+'d',summarizeError(_0x23e809)),console[_0x20023f(0x16a)](_0x20023f(0x1e6)+_0x20023f(0x349)+_0x20023f(0x183)+_0x20023f(0x2b4)+'ctron\x20ma'+'in',_0x23e809);});
1
+ const _0x548820=_0x5f40;(function(_0xa51dbe,_0x2316da){const _0x58d04c=_0x5f40,_0x18e54c=_0xa51dbe();while(!![]){try{const _0x27203e=-parseInt(_0x58d04c(0x394))/0x1*(parseInt(_0x58d04c(0x2ce))/0x2)+-parseInt(_0x58d04c(0x332))/0x3+-parseInt(_0x58d04c(0x3de))/0x4*(parseInt(_0x58d04c(0x325))/0x5)+parseInt(_0x58d04c(0x419))/0x6*(-parseInt(_0x58d04c(0x450))/0x7)+parseInt(_0x58d04c(0x1d2))/0x8*(-parseInt(_0x58d04c(0x348))/0x9)+-parseInt(_0x58d04c(0x2e0))/0xa*(parseInt(_0x58d04c(0x3cf))/0xb)+parseInt(_0x58d04c(0x24a))/0xc*(parseInt(_0x58d04c(0x31f))/0xd);if(_0x27203e===_0x2316da)break;else _0x18e54c['push'](_0x18e54c['shift']());}catch(_0x5609fd){_0x18e54c['push'](_0x18e54c['shift']());}}}(_0x23e7,0x6023f));import _0x77a00c 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';function _0x5f40(_0x47d4d5,_0x4ce366){_0x47d4d5=_0x47d4d5-0x15a;const _0x23e77c=_0x23e7();let _0x5f409f=_0x23e77c[_0x47d4d5];return _0x5f409f;}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{createSessionSqliteStore}from'../sessions/session-sqlite-store.mjs';import{createTerminalManager}from'../terminal/manager.mjs';import{createShellLogger,exportLogsArchive,summarizeError,summarizePayload,summarizeText,toHomePath}from'../common/logging.mjs';import{createDiagnosticsWriter,diagnosticEventFromError}from'../common/diagnostics.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{loadRuntimeInfo,prepareRuntime,resolveRuntimeRoot,getRuntimeSpawnContext,resolveRuntimeLarkCliCommand,runClawOnce}from'../runtime/index.mjs';import{loadCreateUpdateController}from'../updates/loader.mjs';function _0x23e7(){const _0x5b53b4=['\x20failed:','cron','disable','shell-ru','.avi',':choose-','nnelEnab','window:c','setSelec','audio/og','install','led','update','loadFile','ap:entry','dCheck','resource','send','closeToT','chat:abo','edWindow','e\x20direct','d-state',':cancel','sPrivile','\x20excepti','ig\x20is\x20no','\x20complet','getState','payload','code','ask-user','set','357005BgyFZp','ed:\x20','les:reve','resolveS','fromEntr','captureI','er\x20missi','wujie-sh','lect-fil','paths','image/jp','models:s','aseMailC','bin','patch','116128lAKGkD','ame','ory','ItemSett','\x20main\x20bo','hatChann',':downloa','efault','.jpg','uri','red;\x20set','ustom-mo','generate','agentId','ot\x20faile','image/bm','appId','\x20configu','saveDing','started','pper\x20not','stration','les:dele','split','pping\x20ga','deleteOp',':reorder','ishu-cha','wBin','channelI','agent\x20id','configPa','skills:s','agent\x20al','.aac','hell:eve','ated','quitAndI','quit','maxToken','tabs-age','temperat','agent-ev','.gif','logs:exp','dist','mChannel','defaults','-mail','then','baseUrl','ure','lConfig','setOpenC','skills',':set-clo','director','kgroundC','est\x20fail','42486oiEQtc','enClawSk','isFinite','binary\x20f','saveWeco','Not\x20foun','type','file\x20wri','ocs','nelSessi','darwin','\x20main\x20wi','initiali','ad-binar','ocsCliCo','text/mar','syncRunt','enClawCh','Observed','tic',':run-onc','boot\x20ele','.m4a','markQuit','requestB','plugins','cancelFe','getFeish','igate','from','title','nel','limit','lized','skills:u','yInfo','get','max','e:open-d','ey\x20is\x20re','t-stream',':rename',':agent-m','imePlugi','fromWebC','way\x20is\x20n','ort','cron:upd','ishuRegi','default','-life-cy','ationSta','text','model-id','updated','287BzXoQm','ccept-ra','isFile','pServer','d\x20failed','chat-str','runtimeR','th\x20is\x20re','bot-chan','yed','activate','required','toLowerC','now','app:file','agents','hideBySe','entExmai','ilConnec','pluginId','setLogin','number','gatewayT','remove','hell:ipc','e:write-','saveQqbo','senderFr','orConfig','openAtLo','cancelKd','trim','mport-zi','deletedS','openDevT',':complet','e\x20comple','window:i','-pinned','fig','recursiv','dev','meta','logs\x20exp','Dialog',':list','tedModel','files','method','-logs','ing','dow\x20load','maxEntri','oot','peratedM','ontents','tp\x20','Update','get-conf','nectSess','key','tup:get','shuDocCl','tory','chat:str','model','.mov','g+xml','ist','sender','oken','getPinne','info','s:hide','\x20process','torConfi','replace','ted-stat',':gateway','[wujie-s','agents-u','onnector',':save-di','leted','utf8','focus','length,\x20','ired','readSess','ChannelC','unregist','video/we','et-selec','ipc','mpletion','feishu_d','t\x20initia','igWriteH',':save-qq','files:wr','ell\x20boot','local','odels','board:wr','showItem','ndlers','select\x20f','n\x20failed','ternally','startBac','isDestro','quired','ings','folder',':choose','ession','main','ile\x20comp','ector:\x20','push','multiSel','unref','api.open','s-maximi','nts','no\x20defau','dispose','ectory\x20o','will-qui','igSnapsh','-token','webConte','les:upse','node','customNa','agent','listImCh','files:re','gateway\x20','ile\x20read','settings','skills:d','avatar','feishu','showOpen','ists','meFilter','sConnect','e\x20first.','entDocsC','parse','ory-info','loadURL','preload.','ngs','.mp4',':runtime','preferen','s:upsert',':fork','Invalid\x20','ls:delet','uit','Config','rnal','s:reveal','ces.json','reate','window:o','SchemesA','open\x20ext','orted','\x20is\x20requ','input','mand','and-inst','preventD','nt-state','902152ObJUtW','app:syst','saveTenc','ishu-doc','logs:ope','itialize','ap:upser','der/mode','migrateP','chat','app:upda','getFocus','.bmp',':open-cl','gin','lastInde','cCliConn','getVersi','.svg','openExte','config:c','lawSkill','uncaught','onfig\x20up','product\x20','-status','nectorCo','audio/aa','tup:set','provider','window-a','models:c','saveFeis','em:resta','Updates','uired','dataDir',':diagnos','logs\x20dir','upsert','logs:lis','product-','hell]\x20fa','wechat','deleteFi','ell-cli.','text/pla','isArray','command','close','in;\x20char','alized','writeTex','ies','sharedCo','reasonin','und','promises','sion','ocess\x20go','/chat/co','log','select\x20d','.webp','.flac','toISOStr','ai.com/v','devtools','answerAs','agents:u','control','oggle-ma','isPackag','whenRead','app_acti','dels','getStatu','getAllWi','agents:c','download','isMaximi','applicat','ssion','pop','ent','inned','one','pened','saveKdoc','catch','pdate','ot\x20initi',':save-we','image/pn','est\x20comp','startFei','nabled','controll','ted\x20conn','logsDir','l\x20first','.txt','electron','.\x20Run\x20wu','mail','-context','runtimeI','ted-ever','lt\x20model','find','files:li','rControl','-weixin','gatewayP','ncident','assign','before-i','tus','url','message','29660700WZPEeT','setSelfO','groups','delete','path','st-direc','register','.md','icktime',':resize','stop','toWeb','openFile','selected','getKdocs','function','csCliCon','ell\x20conf','app:tray','href','.ogg','window:t','plugins:','nges',':delete','onfig','dSession','ector\x20se','wujiecla','slice','te:downl','D,\x20OPTIO','iConnect','writeEve','uest-age','json','onnectSt','handle','.webm','illEntry','ell\x20gate','setImCha','et-self-','roductDa','manifest','file\x20rea','markConf','plugin\x20e','GET,\x20HEA','enable','shuRegis','agent\x20up','video/mp','#!/bin/s','ove','image/sv','pathname','agent-','runtime:','rayOnClo','ontext','dated','relaunch','uit:\x20sto','agents:w','ted','content-','l\x20prepar','ernal\x20ur','zed','nstall','restart','ections','platform','onfigPat','gateway-','logs:wri','maximize','Unsuppor','d\x20reject','video/x-','ources','before-q','content','session-','saveNetE','talkDocC','image/we','chatChan','-invalid','est_fail','app:gene','liConnec','failed','create','unmaximi','Terminal','deleteIm','https://','stream','range,\x20a','before\x20q','ocess-go','customMo','\x20shortcu','s:list','ignore','config:i','ipc\x20requ','nfo','getPath','renderer','kUserQue','lawPlugi','tabs:req','plugin\x20c','huChanne','resolveC',':answer-','unknown',':create','openDire','reorderP','cwd','indexOf','includes','ndows','tease-ma','kdown;\x20c','getLogin','versions','tateDir','33122IpLqNY','productN','skills:i','openclaw','ngtalk-d','uRegistr','writeSha','keys','figs',':status','runOnce','logs','com-chan','ate','audio/wa','untimeHa','msvideo','abort','20uVwHxm','-questio','ready','level','\x20a\x20provi','ntime','list','app.asar','index.ht','start','lawMcpSe','artifact','diagnost','-session','eted','omplete','te\x20compl','stopped\x20','byteLeng',':unpin','ools','annelCon','oad','ctory','tatus','app:clip','ase','Keys','logs:rea','finally','error','index.mj','minimize','elete','l\x20reques','ntext','keyDown','string','Custom','producti','render-p','ap:get','emoji','ileName','context','hostname','i-window','models','nConfig','terminal','readConf','nfig','ell:even','lawChann','pdated','plugin\x20d','saveQqMa','app:info','product','deleteCu','filePath','dAt','bytes\x20','13dkteyv','entries','unhandle',':loading','tate','agents:l','115rabHsV','eating',':save-te','test','ectory','g_conten','projectR','hide','open','showSave','headers','teway','canceled','1882617JTZbcw','roductCo','tf-8','audio/fl','succeede','workspac','.mkv','ocus','omModel','.jpeg','sPath','filters','ready\x20ex','image/gi','updateOp','size','CommandO','timeout','runtime\x20','les:hide','protocol','agent\x20cr','9fxorFs','-by-sess','path\x20is\x20','fromIpc','ndow','\x20not\x20con','matroska','setSetti','model\x20ht','extensio','set=utf-','files:se','ywhere','ite-bina','iled\x20to\x20','ncent-ex','ls:list','m-channe','shared-c','warn','name','enClawMc','clawspac','tLogs','all','-restart','-shortcu','getRecen','range,\x20c','detach','lConnect','length','rated-fi','checkFor','figured:','ximize','ype','Version','filter','status','em:open-','IPC\x20requ','parseInt','xOf','ssion:\x20','record','audio/mp','range','-data','video/qu','nnectSes','h\x0aexec\x20\x22','andledIn','update-c','ion','targetDi','ite','ensureIn','uDocCliC','-once','app:open','min','ot\x20compl','sessionK','kdocs','complete','s:delete',':save-fe','elConfig','.png','prod',':save-kd','atus','primary','sessions','ls:set-e','19WbdibP','bytes','ith-sess','saveCust','ged','getURL','hidden','timeoutM','agent\x20de','isIntege','map','-request','-port','arch','temp','ions-lis','jie-shel','object','choices','Session','tabs:ref','cancelWe','navigati','cron:run','config','Entry'];_0x23e7=function(){return _0x5b53b4;};return _0x23e7();}const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,_0x548820(0x1b9)+'mjs'),{app,BrowserWindow,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x77a00c,DEVTOOLS_ACCELERATOR=_0x548820(0x342)+_0x548820(0x241)+'+Shift+I',CLAWSPACE_PROTOCOL_SCHEME=_0x548820(0x35e)+'e',DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!==_0x548820(0x307)+'on',LOCAL_FILE_MIME_TYPES=new Map([[_0x548820(0x237),_0x548820(0x200)+'in;\x20char'+'set=utf-'+'8'],[_0x548820(0x251),_0x548820(0x428)+_0x548820(0x2ca)+'harset=u'+_0x548820(0x334)],[_0x548820(0x3e6),_0x548820(0x3d9)+'eg'],[_0x548820(0x33b),_0x548820(0x3d9)+'eg'],[_0x548820(0x38d),_0x548820(0x22f)+'g'],[_0x548820(0x409),_0x548820(0x33f)+'f'],[_0x548820(0x1de),_0x548820(0x3ed)+'p'],[_0x548820(0x1e4),_0x548820(0x281)+_0x548820(0x163)],[_0x548820(0x211),_0x548820(0x2a1)+'bp'],[_0x548820(0x1bb),_0x548820(0x27e)+'4'],[_0x548820(0x162),_0x548820(0x379)+_0x548820(0x252)],[_0x548820(0x3b2),_0x548820(0x29a)+_0x548820(0x2de)],[_0x548820(0x338),_0x548820(0x29a)+_0x548820(0x34e)],[_0x548820(0x270),_0x548820(0x17b)+'bm'],['.mp3',_0x548820(0x376)+'eg'],['.wav',_0x548820(0x2dc)+'v'],[_0x548820(0x42f),_0x548820(0x376)+'4'],[_0x548820(0x400),_0x548820(0x1ed)+'c'],[_0x548820(0x25e),_0x548820(0x3b7)+'g'],[_0x548820(0x212),_0x548820(0x335)+'ac']]);protocol['register'+_0x548820(0x1c9)+_0x548820(0x3c6)+_0x548820(0x398)]([{'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={},sessionSqliteStore=null,diagnosticsWriter=null,userEventWriter=null,isQuitting=![],updateController=null;function attachGatewayBroadcastHandlers(_0x1071e3){const _0x486002=_0x548820;for(const _0x4900a7 of[_0x486002(0x295)+_0x486002(0x36f),_0x486002(0x295)+_0x486002(0x20f),_0x486002(0x455)+'eam-even'+'t',_0x486002(0x29e)+_0x486002(0x44f),_0x486002(0x392)+_0x486002(0x2a3)+_0x486002(0x402),_0x486002(0x408)+_0x486002(0x226),_0x486002(0x170)+_0x486002(0x316),'ask-user'+_0x486002(0x2e1)+'n']){_0x1071e3['on'](_0x4900a7,_0x52bbdb=>broadcast(_0x4900a7,_0x52bbdb));}}function ensureSessionSqliteStore(){const _0x390ab0=_0x548820;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error('wujie-sh'+_0x390ab0(0x25b)+_0x390ab0(0x3c8)+_0x390ab0(0x180)+_0x390ab0(0x43a));return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController[_0x390ab0(0x3d2)+'tateDir']()}),sessionSqliteStore;}function ensureGeneratedFilesStore(){const _0xcaffb9=_0x548820;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error(_0xcaffb9(0x3d6)+_0xcaffb9(0x25b)+_0xcaffb9(0x3c8)+_0xcaffb9(0x180)+_0xcaffb9(0x43a));return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController['resolveS'+_0xcaffb9(0x2cd)]()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0x1dd21e=_0x548820;if(gatewayController)return gatewayController;if(!shellConfig||!configController)throw new Error(bootError?_0x1dd21e(0x3d6)+_0x1dd21e(0x184)+_0x1dd21e(0x3ae)+'\x20'+bootError:_0x1dd21e(0x3d6)+_0x1dd21e(0x272)+_0x1dd21e(0x446)+_0x1dd21e(0x22d)+_0x1dd21e(0x205));return mainLogger?.['warn'](_0x1dd21e(0x1aa)+_0x1dd21e(0x233)+_0x1dd21e(0x3d5)+'ng;\x20recr'+_0x1dd21e(0x326)),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x1dd21e(0x1e3)+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController),await gatewayController[_0x1dd21e(0x2e9)](),gatewayController;}function getMode(){const _0x3c8902=_0x548820;return process.env.VITE_DEV_SERVER_URL?_0x3c8902(0x479):_0x3c8902(0x38e);}function isGatewayNotInitializedError(_0x1ac9a9){const _0x2c1f24=_0x548820;return _0x1ac9a9 instanceof Error&&_0x1ac9a9[_0x2c1f24(0x249)]===_0x2c1f24(0x3d6)+_0x2c1f24(0x272)+'way\x20is\x20n'+_0x2c1f24(0x22d)+_0x2c1f24(0x205);}function revealPathInFolder(_0x59e7f2){const _0x107e4c=_0x548820,_0x2ae556=String(_0x59e7f2||'')[_0x107e4c(0x46f)]();if(!_0x2ae556)return{'ok':![],'error':_0x107e4c(0x34a)+_0x107e4c(0x45b)};return shell[_0x107e4c(0x188)+'InFolder'](_0x2ae556),{'ok':!![]};}function resolveProjectRoot(){const _0x3f9a8f=_0x548820;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app[_0x3f9a8f(0x21a)+'ed']&&process[_0x3f9a8f(0x3be)+_0x3f9a8f(0x33c)])return join(process['resource'+'sPath'],_0x3f9a8f(0x2e7));return resolve(process[_0x3f9a8f(0x2c5)]());}function getLocalFileMimeType(_0x3c8810){const _0x165e23=_0x548820;return LOCAL_FILE_MIME_TYPES[_0x165e23(0x43d)](_0x3c8810[_0x165e23(0x267)](_0x3c8810[_0x165e23(0x1e1)+'xOf']('.'))[_0x165e23(0x45c)+_0x165e23(0x2fa)]())||_0x165e23(0x223)+'ion/octe'+_0x165e23(0x441);}function parseSingleRangeHeader(_0x1ba739,_0x5ee8a5){const _0x50a67e=_0x548820,_0x497fd1=/^bytes=(\d*)-(\d*)$/i['exec'](_0x1ba739['trim']());if(!_0x497fd1)return null;const [,_0x443419,_0x40c0a9]=_0x497fd1;if(!_0x443419&&!_0x40c0a9)return null;if(!_0x443419){const _0x5b8acd=Number[_0x50a67e(0x372)](_0x40c0a9,0xa);if(!Number[_0x50a67e(0x41b)](_0x5b8acd)||_0x5b8acd<=0x0)return null;const _0x35d795=Math[_0x50a67e(0x43e)](_0x5ee8a5-_0x5b8acd,0x0);return{'start':_0x35d795,'end':_0x5ee8a5-0x1};}const _0x14284e=Number['parseInt'](_0x443419,0xa);if(!Number['isFinite'](_0x14284e)||_0x14284e<0x0||_0x14284e>=_0x5ee8a5)return null;const _0x1a8e85=_0x40c0a9?Number[_0x50a67e(0x372)](_0x40c0a9,0xa):_0x5ee8a5-0x1;if(!Number[_0x50a67e(0x41b)](_0x1a8e85)||_0x1a8e85<_0x14284e)return null;return{'start':_0x14284e,'end':Math[_0x50a67e(0x385)](_0x1a8e85,_0x5ee8a5-0x1)};}function decodeClawspacePath(_0x54d16d){const _0x499e87=_0x548820;try{const _0x12a55c=new URL(_0x54d16d);if(_0x12a55c[_0x499e87(0x346)]!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x12a55c[_0x499e87(0x30d)]!==_0x499e87(0x185))return null;const _0x1217bc=decodeURIComponent(_0x12a55c[_0x499e87(0x282)]);if(!_0x1217bc)return null;if(/^\/[A-Za-z]:\//[_0x499e87(0x328)](_0x1217bc))return _0x1217bc[_0x499e87(0x267)](0x1);return _0x1217bc;}catch{return null;}}function createClawspaceHeaders(_0x53bd1e={}){const _0x1430b4=_0x548820;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':_0x1430b4(0x27a)+_0x1430b4(0x269)+'NS','access-control-allow-headers':_0x1430b4(0x364)+'ontent-t'+_0x1430b4(0x36c),'access-control-expose-headers':_0x1430b4(0x28c)+_0x1430b4(0x176)+_0x1430b4(0x28c)+_0x1430b4(0x2ae)+_0x1430b4(0x451)+_0x1430b4(0x261),..._0x53bd1e});}function createLocalFileResponse(_0x20b0a8,_0x32be8d){const _0x1afe3f=_0x548820,_0x4fdd47=statSync(_0x32be8d);if(!_0x4fdd47[_0x1afe3f(0x452)]())return new Response(_0x1afe3f(0x41e)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x1afe3f(0x200)+_0x1afe3f(0x204)+_0x1afe3f(0x352)+'8'})});const _0x37da39=getLocalFileMimeType(_0x32be8d),_0x42fe7b=createClawspaceHeaders({'content-type':_0x37da39,'accept-ranges':_0x1afe3f(0x395),'cache-control':'no-store'});if(_0x20b0a8['method']==='HEAD')return _0x42fe7b[_0x1afe3f(0x3ce)](_0x1afe3f(0x28c)+_0x1afe3f(0x367),String(_0x4fdd47['size'])),new Response(null,{'status':0xc8,'headers':_0x42fe7b});const _0x44cd36=_0x20b0a8['headers'][_0x1afe3f(0x43d)]('range');if(!_0x44cd36)return _0x42fe7b[_0x1afe3f(0x3ce)](_0x1afe3f(0x28c)+'length',String(_0x4fdd47[_0x1afe3f(0x341)])),new Response(Readable[_0x1afe3f(0x255)](createReadStream(_0x32be8d)),{'status':0xc8,'headers':_0x42fe7b});const _0x158336=parseSingleRangeHeader(_0x44cd36,_0x4fdd47[_0x1afe3f(0x341)]);if(!_0x158336)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object[_0x1afe3f(0x3d3)+_0x1afe3f(0x207)](_0x42fe7b[_0x1afe3f(0x320)]()),'content-range':'bytes\x20*/'+_0x4fdd47[_0x1afe3f(0x341)]})});const {start:_0x58c21e,end:_0x38899f}=_0x158336,_0x16e6ae=_0x38899f-_0x58c21e+0x1,_0x3e377e=new Headers(_0x42fe7b);return _0x3e377e[_0x1afe3f(0x3ce)](_0x1afe3f(0x28c)+_0x1afe3f(0x367),String(_0x16e6ae)),_0x3e377e[_0x1afe3f(0x3ce)](_0x1afe3f(0x28c)+_0x1afe3f(0x377),_0x1afe3f(0x31e)+_0x58c21e+'-'+_0x38899f+'/'+_0x4fdd47[_0x1afe3f(0x341)]),new Response(Readable[_0x1afe3f(0x255)](createReadStream(_0x32be8d,{'start':_0x58c21e,'end':_0x38899f})),{'status':0xce,'headers':_0x3e377e});}function installClawspaceProtocolHandler(){const _0x689e4d=_0x548820;protocol[_0x689e4d(0x26f)](CLAWSPACE_PROTOCOL_SCHEME,_0x3c3826=>{const _0x3fe651=_0x689e4d;if(_0x3c3826[_0x3fe651(0x480)]==='OPTIONS')return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x5d3eea=decodeClawspacePath(_0x3c3826[_0x3fe651(0x248)]);if(!_0x5d3eea)return new Response(_0x3fe651(0x1c0)+_0x3fe651(0x35e)+'e\x20url',{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x3fe651(0x200)+'in;\x20char'+_0x3fe651(0x352)+'8'})});if(!existsSync(_0x5d3eea))return new Response(_0x3fe651(0x41e)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x3fe651(0x200)+'in;\x20char'+_0x3fe651(0x352)+'8'})});return createLocalFileResponse(_0x3c3826,_0x5d3eea);});}function broadcast(_0x1dfa07,_0x43f279){const _0x479aab=_0x548820;DEBUG_STDOUT&&console[_0x479aab(0x168)](_0x479aab(0x16f)+_0x479aab(0x401)+'nt]',_0x1dfa07,summarizePayload(_0x43f279,{'maxDepth':0x2}));for(const _0x1399bd of BrowserWindow[_0x479aab(0x21f)+_0x479aab(0x2c8)]()){!_0x1399bd[_0x479aab(0x1a3)+_0x479aab(0x19c)][_0x479aab(0x18e)+_0x479aab(0x459)]()&&_0x1399bd[_0x479aab(0x1a3)+'nts'][_0x479aab(0x3bf)](_0x479aab(0x3d6)+_0x479aab(0x314)+'t',{'name':_0x1dfa07,'payload':_0x43f279});}}async function loadProductRuntime(){const _0x325cb9=_0x548820,_0x4db085=[join(shellConfig[_0x325cb9(0x32b)+_0x325cb9(0x485)],_0x325cb9(0x3b1)+'ntime',_0x325cb9(0x2ff)+'s'),join(app['getAppPa'+'th'](),_0x325cb9(0x3b1)+_0x325cb9(0x2e5),_0x325cb9(0x2ff)+'s')],_0x4cdc68=_0x4db085[_0x325cb9(0x23f)](_0x3d594e=>existsSync(_0x3d594e));if(!_0x4cdc68)return mainLogger?.['info'](_0x325cb9(0x1ea)+'runtime\x20'+_0x325cb9(0x351)+'n\x20not\x20fo'+_0x325cb9(0x20a),{'runtimeCandidates':_0x4db085}),{};try{const _0x17d5d0=await import(pathToFileURL(_0x4cdc68)[_0x325cb9(0x25d)]);return mainLogger?.['info'](_0x325cb9(0x1ea)+_0x325cb9(0x344)+'extensio'+'n\x20loaded',{'runtimePath':_0x4cdc68}),_0x17d5d0;}catch(_0x17c7d4){mainLogger?.[_0x325cb9(0x2fe)](_0x325cb9(0x1ea)+_0x325cb9(0x344)+_0x325cb9(0x351)+_0x325cb9(0x18b)+'\x20to\x20load',{'runtimePath':_0x4cdc68,'error':summarizeError(_0x17c7d4)});throw _0x17c7d4;}}function openDevToolsForActiveContext(){const _0x539d10=_0x548820,_0x4e1524=BrowserWindow[_0x539d10(0x1dd)+_0x539d10(0x3c2)]()||mainWindow;if(!_0x4e1524||_0x4e1524[_0x539d10(0x18e)+_0x539d10(0x459)]())return{'ok':![]};return _0x4e1524[_0x539d10(0x1a3)+_0x539d10(0x19c)][_0x539d10(0x472)+_0x539d10(0x2f4)]({'mode':'detach'}),_0x4e1524[_0x539d10(0x1a3)+_0x539d10(0x19c)][_0x539d10(0x3bf)](_0x539d10(0x3d6)+_0x539d10(0x314)+'t',{'name':_0x539d10(0x215)+_0x539d10(0x362)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x265ded=_0x548820;globalShortcut[_0x265ded(0x17a)+'er'](DEVTOOLS_ACCELERATOR);const _0x3e7466=globalShortcut['register'](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x3e7466&&console[_0x265ded(0x35b)](_0x265ded(0x16f)+_0x265ded(0x1fc)+_0x265ded(0x356)+_0x265ded(0x250)+_0x265ded(0x2b2)+'t:\x20'+DEVTOOLS_ACCELERATOR);}async function getRuntimeResourceStatus(){const _0x4c2561=_0x548820;try{const _0x2d2874=await loadRuntimeInfo(shellConfig[_0x4c2561(0x32b)+_0x4c2561(0x485)]),_0x5c1645=_0x2d2874[_0x4c2561(0x276)]||{};return{'ok':!![],'runtimeRoot':_0x2d2874[_0x4c2561(0x456)+'oot'],'openclawVersion':_0x2d2874[_0x4c2561(0x2d1)+_0x4c2561(0x36d)],'generatedAt':_0x5c1645[_0x4c2561(0x3ea)+_0x4c2561(0x31d)]||null,'pluginCount':Array[_0x4c2561(0x201)](_0x5c1645[_0x4c2561(0x432)])?_0x5c1645[_0x4c2561(0x432)][_0x4c2561(0x367)]:0x0,'plugins':Array[_0x4c2561(0x201)](_0x5c1645[_0x4c2561(0x432)])?_0x5c1645[_0x4c2561(0x432)]:[],'agents':_0x5c1645[_0x4c2561(0x45f)]||null,'skills':_0x5c1645[_0x4c2561(0x414)]||null,'wrapper':_0x5c1645[_0x4c2561(0x266)+_0x4c2561(0x3fa)]||null,'product':_0x5c1645[_0x4c2561(0x31a)]||null};}catch(_0x23d82a){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.[_0x4c2561(0x32b)+_0x4c2561(0x485)]||resolveProjectRoot()),'error':_0x23d82a instanceof Error?_0x23d82a[_0x4c2561(0x249)]:String(_0x23d82a)};}}async function createWindow(){const _0x11c76d=_0x548820,_0x2fa102=process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x11c76d(0x32b)+_0x11c76d(0x485)],_0x11c76d(0x40b),'index.ht'+'ml'),_0x39fd8f=process[_0x11c76d(0x293)]===_0x11c76d(0x423);mainLogger?.[_0x11c76d(0x168)]('creating'+_0x11c76d(0x424)+_0x11c76d(0x34c),{'rendererUrl':_0x2fa102,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x11c76d(0x2cf)+_0x11c76d(0x3df)],'backgroundColor':_0x39fd8f?'#0000000'+'0':'#f8fafc','titleBarStyle':_0x39fd8f?_0x11c76d(0x39a):_0x11c76d(0x44a),..._0x39fd8f?{'titleBarOverlay':!![],'trafficLightPosition':{'x':0x10,'y':0xc}}:{},..._0x39fd8f?{'vibrancy':'sidebar'}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}}),mainWindow[_0x11c76d(0x1a3)+'nts']['on'](_0x11c76d(0x246)+'nput-eve'+'nt',_0x18f744=>{const _0x1d2a64=_0x11c76d,_0x4595c2=_0x18f744[_0x1d2a64(0x1cd)];if(!_0x4595c2||_0x4595c2[_0x1d2a64(0x41f)]!==_0x1d2a64(0x304))return;const _0x100edd=String(_0x4595c2[_0x1d2a64(0x15c)]||'')[_0x1d2a64(0x45c)+_0x1d2a64(0x2fa)](),_0x423194=_0x100edd==='r',_0x241d72=process[_0x1d2a64(0x293)]==='darwin'?_0x4595c2[_0x1d2a64(0x47a)]===!![]:_0x4595c2[_0x1d2a64(0x218)]===!![];if(!_0x423194||!_0x241d72)return;_0x18f744[_0x1d2a64(0x1d0)+_0x1d2a64(0x3e5)](),broadcast('tabs-com'+_0x1d2a64(0x1ce),{'type':_0x1d2a64(0x3aa)+'on','action':'reload'});}),mainWindow['on'](_0x11c76d(0x175),()=>{const _0x35fe0d=_0x11c76d;updateController?.['requestB'+'ackgroun'+'dCheck']('window_f'+_0x35fe0d(0x339));});const _0x31db16=process.env.VITE_DEV_SERVER_URL;_0x31db16?(await mainWindow[_0x11c76d(0x1b8)](_0x31db16),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow[_0x11c76d(0x1a3)+_0x11c76d(0x19c)][_0x11c76d(0x472)+_0x11c76d(0x2f4)]({'mode':_0x11c76d(0x365)})):await mainWindow[_0x11c76d(0x3bb)](join(shellConfig[_0x11c76d(0x32b)+_0x11c76d(0x485)],_0x11c76d(0x40b),_0x11c76d(0x2e8)+'ml')),mainLogger?.['info']('main\x20win'+_0x11c76d(0x483)+'ed',{'rendererUrl':_0x2fa102,'mode':getMode()});}async function installIpcHandlers(){const _0x1e5349=_0x548820,_0x24e5da=(_0x28d84c,_0x525e6b)=>{const _0x197f09=_0x5f40;ipcMain[_0x197f09(0x26f)](_0x28d84c,async(_0xc4891f,_0x466e6d)=>{const _0x34151b=_0x197f09,_0x217218=Date[_0x34151b(0x45d)](),_0x14f08f=_0xc4891f[_0x34151b(0x46b)+_0x34151b(0x3df)]?.['url']||_0xc4891f[_0x34151b(0x165)][_0x34151b(0x399)]();ipcLogger?.[_0x34151b(0x168)](_0x34151b(0x2b6)+'est\x20star'+_0x34151b(0x28b),{'channel':_0x28d84c,'senderUrl':_0x14f08f,'payload':summarizePayload(_0x466e6d)});DEBUG_STDOUT&&console[_0x34151b(0x168)](_0x34151b(0x16f)+_0x34151b(0x468)+']',_0x28d84c,_0x34151b(0x3f1),summarizePayload(_0x466e6d));try{let _0x312232;try{_0x312232=await _0x525e6b(_0xc4891f,_0x466e6d);}catch(_0x2b59a9){if(!isGatewayNotInitializedError(_0x2b59a9))throw _0x2b59a9;await ensureGatewayControllerStarted(),_0x312232=await _0x525e6b(_0xc4891f,_0x466e6d);}const _0x469062=Date[_0x34151b(0x45d)]()-_0x217218;return ipcLogger?.['info'](_0x34151b(0x2b6)+_0x34151b(0x230)+_0x34151b(0x173),{'channel':_0x28d84c,'durationMs':_0x469062,'result':summarizePayload(_0x312232,{'maxDepth':0x2})}),await userEventWriter?.['fromIpc']({'channel':_0x28d84c,'payload':_0x466e6d,'result':_0x312232,'durationMs':_0x469062,'status':_0x34151b(0x336)+'d'}),DEBUG_STDOUT&&console[_0x34151b(0x168)](_0x34151b(0x16f)+_0x34151b(0x468)+']',_0x28d84c,'complete'+'d',summarizePayload(_0x312232,{'maxDepth':0x2})),_0x312232;}catch(_0x1f8a35){const _0x348d66=Date[_0x34151b(0x45d)]()-_0x217218;ipcLogger?.[_0x34151b(0x2fe)](_0x34151b(0x2b6)+'est\x20fail'+'ed',{'channel':_0x28d84c,'durationMs':_0x348d66,'error':summarizeError(_0x1f8a35)}),await userEventWriter?.[_0x34151b(0x34b)]({'channel':_0x28d84c,'payload':_0x466e6d,'error':_0x1f8a35,'durationMs':_0x348d66,'status':_0x34151b(0x2a7)}),await diagnosticsWriter?.['captureI'+'ncident'](diagnosticEventFromError(_0x1f8a35,{'category':_0x34151b(0x17d),'event':'ipc_requ'+_0x34151b(0x2a4)+'ed','message':_0x34151b(0x371)+_0x34151b(0x418)+_0x34151b(0x3d0)+_0x28d84c,'durationMs':_0x348d66,'meta':{'channel':_0x28d84c,'senderUrl':_0x14f08f,'payload':summarizePayload(_0x466e6d)}}));DEBUG_STDOUT&&console[_0x34151b(0x2fe)]('[wujie-s'+_0x34151b(0x468)+']',_0x28d84c,_0x34151b(0x2a7),summarizeError(_0x1f8a35));throw _0x1f8a35;}});},_0x6c6bcd=()=>{const _0x543dac=_0x5f40;if(!gatewayController)throw new Error(bootError?_0x543dac(0x3d6)+_0x543dac(0x184)+_0x543dac(0x3ae)+'\x20'+bootError:_0x543dac(0x3d6)+_0x543dac(0x272)+_0x543dac(0x446)+_0x543dac(0x22d)+'alized');return gatewayController;},_0x2c3f8d=()=>{const _0x2aafc3=_0x5f40;if(typeof productRuntime['register'+'ProductR'+_0x2aafc3(0x2dd)+_0x2aafc3(0x189)]!==_0x2aafc3(0x259))return;const _0x50c53a=productRuntime[_0x2aafc3(0x250)+'ProductR'+'untimeHa'+_0x2aafc3(0x189)]({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0x24e5da,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0x6c6bcd,'sep':sep,'openClawConfigHandlers':{'update':(..._0xc8fda8)=>configController['updateOp'+'enClawCo'+'nfig'](..._0xc8fda8),'setPluginConfig':_0x23f673=>configController[_0x2aafc3(0x413)+_0x2aafc3(0x2bb)+_0x2aafc3(0x310)](_0x23f673),'setChannelConfig':_0x97137c=>configController['setOpenC'+'lawChann'+'elConfig'](_0x97137c),'deleteChannelConfig':_0x593e98=>configController['deleteOp'+'enClawCh'+_0x2aafc3(0x2f5)+_0x2aafc3(0x477)](_0x593e98),'setSkillEntry':_0x4ffddc=>configController[_0x2aafc3(0x413)+_0x2aafc3(0x1e7)+_0x2aafc3(0x3ad)](_0x4ffddc),'deleteSkillEntry':_0x246568=>configController[_0x2aafc3(0x3f7)+_0x2aafc3(0x41a)+_0x2aafc3(0x271)](_0x246568),'setMcpServer':_0x375a8f=>configController[_0x2aafc3(0x413)+'lawMcpSe'+'rver'](_0x375a8f),'deleteMcpServer':_0xb8600c=>configController[_0x2aafc3(0x3f7)+'enClawMc'+_0x2aafc3(0x453)](_0xb8600c)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x531f4a})||{};Object[_0x2aafc3(0x245)](productRuntimeHooks,_0x50c53a);};_0x24e5da(_0x1e5349(0x319),async()=>({'name':shellConfig[_0x1e5349(0x2cf)+'ame'],'version':app[_0x1e5349(0x1e3)+'on'](),'appId':shellConfig[_0x1e5349(0x3ee)],'dataDir':shellConfig[_0x1e5349(0x1f6)]})),_0x24e5da(_0x1e5349(0x384)+'-url',async(_0x5f31ea,_0x284423)=>{const _0x59e5b0=_0x1e5349,_0x29ad8b=typeof _0x284423===_0x59e5b0(0x305)?_0x284423:'';if(!_0x29ad8b)return{'ok':![]};return filesLogger?.['info'](_0x59e5b0(0x1ca)+_0x59e5b0(0x28e)+_0x59e5b0(0x302)+'ted',{'url':summarizeText(_0x29ad8b,0xa0)}),await shell[_0x59e5b0(0x1e5)+_0x59e5b0(0x1c4)](_0x29ad8b),{'ok':!![]};});const _0x531f4a=async(_0x252dd0,_0x31e07e)=>{const _0x121a14=_0x1e5349;return configController[_0x121a14(0x278)+_0x121a14(0x181)+_0x121a14(0x37c)+_0x121a14(0x18c)](),await configController['writeCon'+_0x121a14(0x477)](_0x252dd0,_0x31e07e),{'ok':!![]};};_0x2c3f8d(),_0x24e5da('skills:i'+_0x1e5349(0x470)+'p',async(_0x1ad0c9,_0xa77440)=>importMarketSkillZip({'payload':_0xa77440,'importSkillZip':_0x2fb36d=>importSkillZip({..._0x2fb36d,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow['fromWebC'+_0x1e5349(0x487)](_0x1ad0c9[_0x1e5349(0x165)])||mainWindow,'configController':configController}),'configController':configController})),_0x24e5da(_0x1e5349(0x43b)+_0x1e5349(0x22c),(_0x393d22,_0x2c81d1)=>updateManagedSkillConfig({'payload':_0x2c81d1,'configController':configController})),_0x24e5da(_0x1e5349(0x1ad)+_0x1e5349(0x301),(_0x1a74ba,_0x1cdfc9)=>deleteMarketSkillRegistryEntry({'payload':_0x1cdfc9,'deleteManagedSkill':_0x3bf386=>deleteManagedSkill({..._0x3bf386,'gateway':_0x6c6bcd(),'configController':configController}),'configController':configController}));const _0x3db4f3=ensureGeneratedFilesStore();_0x24e5da(_0x1e5349(0x2a5)+_0x1e5349(0x368)+'les:list',async()=>_0x3db4f3[_0x1e5349(0x2e6)]()),_0x24e5da(_0x1e5349(0x2a5)+_0x1e5349(0x368)+_0x1e5349(0x1a4)+'rt',async(_0x35e1a5,_0x226f91={})=>_0x3db4f3['upsert'](_0x226f91)),_0x24e5da(_0x1e5349(0x2a5)+_0x1e5349(0x368)+_0x1e5349(0x345),async(_0x1864f8,_0x53d43d)=>_0x3db4f3[_0x1e5349(0x32c)](String(_0x53d43d||''))),_0x24e5da(_0x1e5349(0x2a5)+'rated-fi'+_0x1e5349(0x345)+_0x1e5349(0x349)+'ion',async(_0x3ba1c2,_0x1592f9)=>_0x3db4f3[_0x1e5349(0x460)+_0x1e5349(0x224)](String(_0x1592f9||''))),_0x24e5da(_0x1e5349(0x2a5)+_0x1e5349(0x368)+_0x1e5349(0x3f4)+'te',async(_0x2b8156,_0x104914)=>_0x3db4f3['deleteFi'+'le'](String(_0x104914||''))),_0x24e5da(_0x1e5349(0x2a5)+'rated-fi'+'les:dele'+_0x1e5349(0x16d)+'e',async(_0x2e1273,_0x52190a=[])=>_0x3db4f3[_0x1e5349(0x471)+_0x1e5349(0x323)](_0x52190a)),_0x24e5da(_0x1e5349(0x2a5)+_0x1e5349(0x368)+_0x1e5349(0x3d1)+'al',async(_0x5007b8,_0x30f4f1)=>revealPathInFolder(_0x30f4f1)),_0x24e5da(_0x1e5349(0x2eb)+_0x1e5349(0x2b3),async()=>_0x3db4f3['list']()),_0x24e5da('artifact'+_0x1e5349(0x1be),async(_0x7663cf,_0xe9a1b7={})=>_0x3db4f3[_0x1e5349(0x1f9)](_0xe9a1b7)),_0x24e5da(_0x1e5349(0x2eb)+_0x1e5349(0x169),async(_0x39556d,_0x5ed0b6={})=>_0x3db4f3['hide'](String(_0x5ed0b6['id']||_0x5ed0b6||''))),_0x24e5da('artifact'+_0x1e5349(0x38a),async(_0x45329d,_0x16695f={})=>_0x3db4f3[_0x1e5349(0x1fe)+'le'](String(_0x16695f['id']||_0x16695f||''))),_0x24e5da(_0x1e5349(0x2eb)+'s:delete'+_0x1e5349(0x3c4),async(_0x27093e,_0x2e8895={})=>_0x3db4f3[_0x1e5349(0x471)+_0x1e5349(0x323)](_0x2e8895['paths']||_0x2e8895)),_0x24e5da(_0x1e5349(0x2eb)+_0x1e5349(0x1c5),async(_0x56c6cb,_0x100ab2={})=>{const _0x192e36=_0x1e5349,_0x5e98a6=typeof _0x100ab2===_0x192e36(0x305)?_0x100ab2:_0x100ab2[_0x192e36(0x24e)]||_0x100ab2[_0x192e36(0x3e7)];return revealPathInFolder(_0x5e98a6);});const _0x4d6610=createPreferencesStore({'stateDir':configController['resolveS'+_0x1e5349(0x2cd)](),'storeFile':_0x1e5349(0x1fb)+_0x1e5349(0x1bd)+_0x1e5349(0x1c6)});_0x24e5da(_0x1e5349(0x25c)+':get-clo'+'se',async()=>_0x4d6610['get'](_0x1e5349(0x3c0)+'rayOnClo'+'se',![])),_0x24e5da(_0x1e5349(0x25c)+_0x1e5349(0x415)+'se',async(_0x2c6735,_0x4933c1)=>_0x4d6610[_0x1e5349(0x3ce)](_0x1e5349(0x3c0)+_0x1e5349(0x285)+'se',_0x4933c1===!![])),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0x24e5da,'sep':sep,'stateDir':configController[_0x1e5349(0x3d2)+_0x1e5349(0x2cd)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0x24e5da,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0x24e5da,'modelHandlers':{'saveCustomModel':_0x2bb1c3=>_0x6c6bcd()[_0x1e5349(0x30f)][_0x1e5349(0x397)+_0x1e5349(0x33a)](_0x2bb1c3),'deleteCustomModel':_0x214c29=>_0x6c6bcd()['models'][_0x1e5349(0x31b)+'stomMode'+'l'](_0x214c29)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x3d8ffa)=>configController[_0x1e5349(0x340)+'enClawCo'+_0x1e5349(0x313)](..._0x3d8ffa),'setPluginConfig':_0x4ea436=>configController[_0x1e5349(0x413)+_0x1e5349(0x2bb)+'nConfig'](_0x4ea436),'setChannelConfig':_0x3cb67a=>configController['setOpenC'+_0x1e5349(0x315)+_0x1e5349(0x38c)](_0x3cb67a),'deleteChannelConfig':_0x1fcc47=>configController[_0x1e5349(0x3f7)+_0x1e5349(0x42a)+_0x1e5349(0x2f5)+_0x1e5349(0x477)](_0x1fcc47),'setSkillEntry':_0x3a3465=>configController['setOpenC'+_0x1e5349(0x1e7)+_0x1e5349(0x3ad)](_0x3a3465),'deleteSkillEntry':_0x1ff2b0=>configController['deleteOp'+'enClawSk'+_0x1e5349(0x271)](_0x1ff2b0),'setMcpServer':_0x29147a=>configController['setOpenC'+_0x1e5349(0x2ea)+'rver'](_0x29147a),'deleteMcpServer':_0x39d317=>configController['deleteOp'+_0x1e5349(0x35d)+_0x1e5349(0x453)](_0x39d317)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0x24e5da(_0x1e5349(0x2b5)+'m-channe'+_0x1e5349(0x358),async()=>connectorController[_0x1e5349(0x1a8)+_0x1e5349(0x2f5)+_0x1e5349(0x2d6)]()),_0x24e5da(_0x1e5349(0x2b5)+'m-channe'+_0x1e5349(0x1c1)+'e',async(_0x254017,_0xf8124f={})=>connectorController[_0x1e5349(0x2ab)+_0x1e5349(0x179)+_0x1e5349(0x263)](_0xf8124f)),_0x24e5da(_0x1e5349(0x2b5)+_0x1e5349(0x359)+_0x1e5349(0x393)+'nabled',async(_0x3a538c,_0x26bccf={})=>connectorController[_0x1e5349(0x273)+_0x1e5349(0x3b4)+_0x1e5349(0x3b9)](_0x26bccf)),_0x24e5da('config:c'+'onnector'+':save',async(_0x2c70a0,_0x6df5c7={})=>{const _0x5369d4=_0x1e5349,_0x334740=String(_0x6df5c7['channelI'+'d']||_0x6df5c7['payload']?.[_0x5369d4(0x3fb)+'d']||_0x6df5c7[_0x5369d4(0x3cb)]?.['id']||'');if(!_0x334740)throw new Error(_0x5369d4(0x3fb)+'d\x20is\x20req'+_0x5369d4(0x1f5));const _0x3b07fa=_0x6df5c7['payload']||_0x6df5c7,_0x1d0d97={'feishu':connectorController[_0x5369d4(0x1f2)+_0x5369d4(0x2be)+'lConfig'],'qqbot':connectorController[_0x5369d4(0x46a)+'tChannel'+'Config'],'wecom':connectorController[_0x5369d4(0x41d)+_0x5369d4(0x40c)+_0x5369d4(0x1c3)],'qq_mail':connectorController[_0x5369d4(0x318)+_0x5369d4(0x462)+_0x5369d4(0x16b)+'g'],'netease_mail':connectorController[_0x5369d4(0x29f)+_0x5369d4(0x3db)+_0x5369d4(0x171)+'Config'],'tencent_exmail':connectorController[_0x5369d4(0x1d4)+_0x5369d4(0x461)+_0x5369d4(0x366)+_0x5369d4(0x46c)],'feishu_doc':connectorController['saveFeis'+'huDocCon'+'nectorCo'+_0x5369d4(0x313)],'tencent_docs':connectorController[_0x5369d4(0x1d4)+_0x5369d4(0x1b5)+_0x5369d4(0x171)+_0x5369d4(0x1c3)],'kdocs':connectorController[_0x5369d4(0x22a)+'sConnect'+_0x5369d4(0x46c)],'dingtalk_doc':connectorController[_0x5369d4(0x3f0)+_0x5369d4(0x2a0)+'onnector'+_0x5369d4(0x1c3)]},_0x197cbb=_0x1d0d97[_0x334740];if(!_0x197cbb)throw new Error(_0x5369d4(0x298)+'ted\x20conn'+_0x5369d4(0x196)+_0x334740);return _0x197cbb(_0x3b07fa);}),_0x24e5da(_0x1e5349(0x1e6)+'onnector'+_0x1e5349(0x38b)+_0x1e5349(0x3f9)+'nnel',async(_0x20e6c2,_0x120515={})=>connectorController[_0x1e5349(0x1f2)+_0x1e5349(0x2be)+_0x1e5349(0x412)](_0x120515)),_0x24e5da('config:c'+_0x1e5349(0x171)+':save-qq'+_0x1e5349(0x458)+'nel',async(_0x45542c,_0x3660de={})=>connectorController[_0x1e5349(0x46a)+'tChannel'+_0x1e5349(0x1c3)](_0x3660de)),_0x24e5da('config:c'+_0x1e5349(0x171)+_0x1e5349(0x22e)+_0x1e5349(0x2da)+_0x1e5349(0x438),async(_0x1478ec,_0x103999={})=>connectorController[_0x1e5349(0x41d)+_0x1e5349(0x40c)+_0x1e5349(0x1c3)](_0x103999)),_0x24e5da('config:c'+_0x1e5349(0x171)+_0x1e5349(0x182)+_0x1e5349(0x40e),async(_0x1046f1,_0x1d9f87={})=>connectorController['saveQqMa'+_0x1e5349(0x462)+_0x1e5349(0x16b)+'g'](_0x1d9f87)),_0x24e5da('config:c'+'onnector'+':save-ne'+_0x1e5349(0x2c9)+'il',async(_0x1dff57,_0x2dbb53={})=>connectorController[_0x1e5349(0x29f)+'aseMailC'+_0x1e5349(0x171)+_0x1e5349(0x1c3)](_0x2dbb53)),_0x24e5da(_0x1e5349(0x1e6)+_0x1e5349(0x171)+_0x1e5349(0x327)+_0x1e5349(0x357)+_0x1e5349(0x23a),async(_0x4030d4,_0x4c2203={})=>connectorController['saveTenc'+_0x1e5349(0x461)+_0x1e5349(0x366)+_0x1e5349(0x46c)](_0x4c2203)),_0x24e5da('config:c'+'onnector'+':save-fe'+_0x1e5349(0x1d5),async(_0x1aadb4,_0x4030b8={})=>connectorController[_0x1e5349(0x1f2)+'huDocCon'+_0x1e5349(0x1ec)+_0x1e5349(0x313)](_0x4030b8)),_0x24e5da(_0x1e5349(0x1e6)+'onnector'+_0x1e5349(0x327)+'ncent-do'+'cs',async(_0x2f3daa,_0x5f0ca5={})=>connectorController[_0x1e5349(0x1d4)+_0x1e5349(0x1b5)+_0x1e5349(0x171)+'Config'](_0x5f0ca5)),_0x24e5da(_0x1e5349(0x1e6)+_0x1e5349(0x171)+_0x1e5349(0x38f)+_0x1e5349(0x421),async(_0x587812,_0x43aa91={})=>connectorController[_0x1e5349(0x22a)+_0x1e5349(0x1b3)+_0x1e5349(0x46c)](_0x43aa91)),_0x24e5da(_0x1e5349(0x1e6)+_0x1e5349(0x171)+_0x1e5349(0x172)+_0x1e5349(0x2d2)+'oc',async(_0x2a4fad,_0x470786={})=>connectorController[_0x1e5349(0x3f0)+_0x1e5349(0x2a0)+'onnector'+_0x1e5349(0x1c3)](_0x470786)),_0x24e5da(_0x1e5349(0x1e6)+'onnector'+_0x1e5349(0x2ed)+':start',async(_0x19e7c,_0x250666={})=>{const _0xf775e6=_0x1e5349,_0x1cd12a=String(_0x250666[_0xf775e6(0x3fb)+'d']||_0x250666[_0xf775e6(0x41f)]||'');if(_0x1cd12a===_0xf775e6(0x388))return connectorController['startKdo'+_0xf775e6(0x25a)+_0xf775e6(0x15b)+_0xf775e6(0x37e)]();if(_0x1cd12a===_0xf775e6(0x17f)+'oc')return connectorController[_0xf775e6(0x231)+_0xf775e6(0x15e)+_0xf775e6(0x26a)+_0xf775e6(0x3a7)]();if(_0x1cd12a==='feishu')return connectorController[_0xf775e6(0x231)+_0xf775e6(0x27c)+'trationS'+_0xf775e6(0x193)](_0x250666);if(_0x1cd12a===_0xf775e6(0x2d1)+_0xf775e6(0x242)||_0x1cd12a===_0xf775e6(0x1fd))return connectorController['startWec'+_0xf775e6(0x3e3)+'elSessio'+'n']({'gatewayPort':_0x6c6bcd()[_0xf775e6(0x243)+_0xf775e6(0x447)](),'gatewayToken':_0x6c6bcd()[_0xf775e6(0x466)+_0xf775e6(0x166)]()});throw new Error(_0xf775e6(0x298)+'ted\x20conn'+_0xf775e6(0x265)+'ssion:\x20'+(_0x1cd12a||'unknown'));}),_0x24e5da(_0x1e5349(0x1e6)+_0x1e5349(0x171)+'-session'+_0x1e5349(0x2d7),async(_0x20f0ab,_0x45bcd1={})=>{const _0x1b2cbb=_0x1e5349,_0x45d004=String(_0x45bcd1[_0x1b2cbb(0x3fb)+'d']||_0x45bcd1[_0x1b2cbb(0x41f)]||'');if(_0x45d004==='kdocs')return connectorController[_0x1b2cbb(0x258)+'CliConne'+'ctStatus'](_0x45bcd1);if(_0x45d004==='feishu_d'+'oc')return connectorController[_0x1b2cbb(0x434)+_0x1b2cbb(0x382)+_0x1b2cbb(0x26e)+_0x1b2cbb(0x390)](_0x45bcd1);if(_0x45d004===_0x1b2cbb(0x1af))return connectorController[_0x1b2cbb(0x434)+_0x1b2cbb(0x2d3)+_0x1b2cbb(0x44c)+_0x1b2cbb(0x247)](_0x45bcd1);throw new Error(_0x1b2cbb(0x298)+_0x1b2cbb(0x234)+'ector\x20se'+'ssion:\x20'+(_0x45d004||_0x1b2cbb(0x2c1)));}),_0x24e5da(_0x1e5349(0x1e6)+_0x1e5349(0x171)+_0x1e5349(0x2ed)+_0x1e5349(0x3c5),async(_0x5b59f4,_0x456875={})=>{const _0x23ad3b=_0x1e5349,_0x594b9a=String(_0x456875['channelI'+'d']||_0x456875[_0x23ad3b(0x41f)]||'');if(_0x594b9a==='kdocs')return connectorController[_0x23ad3b(0x46e)+_0x23ad3b(0x427)+_0x23ad3b(0x37a)+_0x23ad3b(0x20c)](_0x456875);if(_0x594b9a===_0x23ad3b(0x17f)+'oc')return connectorController[_0x23ad3b(0x433)+'ishuDocC'+_0x23ad3b(0x2a6)+'tSession'](_0x456875);if(_0x594b9a===_0x23ad3b(0x1af))return connectorController[_0x23ad3b(0x433)+_0x23ad3b(0x449)+_0x23ad3b(0x3f3)+_0x23ad3b(0x3a7)](_0x456875);if(_0x594b9a==='openclaw'+_0x23ad3b(0x242)||_0x594b9a==='wechat')return connectorController[_0x23ad3b(0x3a9)+_0x23ad3b(0x2a2)+_0x23ad3b(0x422)+'on']();return{'ok':!![]};}),_0x24e5da(_0x1e5349(0x1e6)+_0x1e5349(0x171)+_0x1e5349(0x2ed)+_0x1e5349(0x473)+'e',async(_0x2c176c,_0x1181e0={})=>{const _0x215f61=_0x1e5349,_0x26492b=String(_0x1181e0[_0x215f61(0x3fb)+'d']||_0x1181e0['type']||'');if(_0x26492b===_0x215f61(0x17f)+'oc')return connectorController[_0x215f61(0x389)+'FeishuDo'+_0x215f61(0x1e2)+'ectSessi'+'on'](_0x1181e0);throw new Error('Unsuppor'+'ted\x20conn'+'ector\x20se'+_0x215f61(0x374)+(_0x26492b||_0x215f61(0x2c1)));}),_0x24e5da('config:r'+'ead',()=>connectorController[_0x1e5349(0x312)+_0x1e5349(0x1a1)+'ot']());const _0x226cb5=_0x3e8085=>{const _0x22449a=_0x1e5349,_0x46eaba=_0x3e8085['agents']&&typeof _0x3e8085['agents']===_0x22449a(0x3a5)?_0x3e8085[_0x22449a(0x45f)]:{};return Array[_0x22449a(0x201)](_0x46eaba[_0x22449a(0x2e6)])?_0x46eaba[_0x22449a(0x2e6)]:[];},_0x4923ed=_0x243380=>{const _0x38a4f4=_0x1e5349,_0x3ebc55=typeof _0x243380===_0x38a4f4(0x305)?_0x243380['trim']():'',_0xa6d67a=_0x3ebc55['match'](/^agent:([^:]+):/);return _0xa6d67a?.[0x1]||'';},_0x5286b7=(_0x3aa1ed={},_0x36e63c=[])=>{const _0x30d55b=_0x1e5349,_0x5a3464=Array[_0x30d55b(0x201)](_0x3aa1ed[_0x30d55b(0x45f)])?_0x3aa1ed['agents']:Array[_0x30d55b(0x201)](_0x3aa1ed[_0x30d55b(0x2e6)])?_0x3aa1ed['list']:[],_0x1d9666=Array[_0x30d55b(0x201)](_0x36e63c)?_0x36e63c:[];return _0x5a3464[_0x30d55b(0x39e)](_0x3c4ecd=>{const _0x30d2c2=_0x30d55b,_0x5c0766=String(_0x3c4ecd?.['id']||_0x3c4ecd?.[_0x30d2c2(0x3eb)]||'')[_0x30d2c2(0x46f)]();return{'agent':_0x3c4ecd,'sessions':_0x5c0766?_0x1d9666[_0x30d2c2(0x36e)](_0x27f6c3=>{const _0x4748a9=_0x30d2c2,_0x15dd90=String(_0x27f6c3?.[_0x4748a9(0x3eb)]||_0x27f6c3?.['agent_id']||_0x27f6c3?.[_0x4748a9(0x1a7)]?.['id']||_0x4923ed(_0x27f6c3?.[_0x4748a9(0x15c)])||'')[_0x4748a9(0x46f)]();return _0x15dd90?_0x15dd90===_0x5c0766:_0x5c0766===_0x4748a9(0x194);}):[]};});};_0x24e5da('app:upda'+'te:get-s'+'tate',async()=>updateController?.[_0x1e5349(0x3ca)]()),_0x24e5da(_0x1e5349(0x1dc)+'te:check',async()=>updateController?.[_0x1e5349(0x369)+_0x1e5349(0x1f4)]()),_0x24e5da(_0x1e5349(0x1dc)+_0x1e5349(0x268)+_0x1e5349(0x2f6),async()=>updateController?.[_0x1e5349(0x221)+_0x1e5349(0x489)]()),_0x24e5da(_0x1e5349(0x1dc)+'te:quit-'+_0x1e5349(0x1cf)+'all',async()=>updateController?.[_0x1e5349(0x403)+'nstall']()),_0x24e5da(_0x1e5349(0x45e)+_0x1e5349(0x192),async(_0x49bfaa,_0x1437b0={})=>{const _0xce904a=_0x1e5349,_0x415589=await dialog['showOpen'+_0xce904a(0x47c)](BrowserWindow[_0xce904a(0x445)+_0xce904a(0x487)](_0x49bfaa[_0xce904a(0x165)])??mainWindow,{'properties':['openFile',..._0x1437b0?.[_0xce904a(0x439)]!==0x1?[_0xce904a(0x198)+_0xce904a(0x292)]:[]],'filters':_0x1437b0?.[_0xce904a(0x1a6)+_0xce904a(0x1b2)+'s']?[{'name':_0xce904a(0x306),'extensions':_0x1437b0[_0xce904a(0x1a6)+_0xce904a(0x1b2)+'s']}]:undefined});return _0x415589[_0xce904a(0x31c)+'s']['map'](_0x260fad=>({'path':_0x260fad,'name':_0x260fad[_0xce904a(0x3f5)](/[\\/]/)[_0xce904a(0x225)]()||_0x260fad}));}),_0x24e5da(_0x1e5349(0x45e)+_0x1e5349(0x3e4)+'d-local',async(_0x46c6e6,_0x25d21b={})=>{const _0xf53900=_0x1e5349,_0x30c224=String(_0x25d21b['sourcePa'+'th']||'');if(!_0x30c224)return{'success':![],'error':'sourcePa'+_0xf53900(0x457)+_0xf53900(0x18f)};const _0x4e882b=await dialog[_0xf53900(0x32e)+_0xf53900(0x47c)](mainWindow,{'defaultPath':_0x25d21b['defaultF'+_0xf53900(0x30b)]||_0x30c224[_0xf53900(0x3f5)](/[\\/]/)[_0xf53900(0x225)]()});if(_0x4e882b['canceled']||!_0x4e882b[_0xf53900(0x31c)])return{'success':![],'canceled':!![]};const {copyFile:_0x5ee2d7}=await import('node:fs/'+_0xf53900(0x20b));return await _0x5ee2d7(_0x30c224,_0x4e882b[_0xf53900(0x31c)]),{'success':!![],'filePath':_0x4e882b[_0xf53900(0x31c)]};}),_0x24e5da(_0x1e5349(0x2f9)+_0x1e5349(0x187)+'ite',async(_0x4ed26a,_0x2c5dcb)=>{const _0x5426e4=_0x1e5349;return clipboard[_0x5426e4(0x206)+'t'](String(_0x2c5dcb??'')),{'ok':!![]};}),_0x24e5da(_0x1e5349(0x1d3)+_0x1e5349(0x1f3)+'rt',async()=>{const _0x12fe7f=_0x1e5349;return app[_0x12fe7f(0x288)](),app[_0x12fe7f(0x404)](),{'ok':!![]};}),_0x24e5da(_0x1e5349(0x475)+_0x1e5349(0x19b)+_0x1e5349(0x28f),_0x32cf18=>Boolean(BrowserWindow['fromWebC'+'ontents'](_0x32cf18[_0x1e5349(0x165)])?.[_0x1e5349(0x222)+_0x1e5349(0x28f)]())),_0x24e5da('app:star'+_0x1e5349(0x1ee),async(_0x21006d,_0x55c327)=>{const _0x51d826=_0x1e5349;return app[_0x51d826(0x464)+_0x51d826(0x3e1)+_0x51d826(0x190)]({'openAtLogin':_0x55c327===!![]}),{'ok':!![],'enabled':_0x55c327===!![]};}),_0x24e5da('app:star'+_0x1e5349(0x15d),async()=>app[_0x1e5349(0x2cb)+_0x1e5349(0x3e1)+_0x1e5349(0x190)]()[_0x1e5349(0x46d)+_0x1e5349(0x1e0)]),_0x24e5da(_0x1e5349(0x45e)+_0x1e5349(0x3b3)+'folder',async _0x4af765=>{const _0x5c6976=_0x1e5349,_0x50107a=await dialog['showOpen'+'Dialog'](BrowserWindow[_0x5c6976(0x445)+_0x5c6976(0x487)](_0x4af765[_0x5c6976(0x165)])??mainWindow,{'properties':[_0x5c6976(0x2c3)+_0x5c6976(0x2f7)]});return _0x50107a[_0x5c6976(0x31c)+'s'][0x0]||'';}),_0x24e5da(_0x1e5349(0x1d3)+_0x1e5349(0x370)+_0x1e5349(0x191),async(_0xa24293,_0x37cb25)=>{const _0x35e2b9=await shell['openPath'](String(_0x37cb25||''));return _0x35e2b9||'';}),_0x24e5da(_0x1e5349(0x2d1)+_0x1e5349(0x16e)+_0x1e5349(0x1a2),async()=>_0x6c6bcd()[_0x1e5349(0x466)+'oken']()),_0x24e5da(_0x1e5349(0x2d1)+':gateway'+_0x1e5349(0x3a0),async()=>_0x6c6bcd()['gatewayP'+_0x1e5349(0x447)]()),_0x24e5da('openclaw'+_0x1e5349(0x42d)+'e',async(_0x1adf57,_0x45d814=[])=>{const _0x3ede08=_0x1e5349,_0x3c07ef=await runClawOnce(shellConfig[_0x3ede08(0x32b)+_0x3ede08(0x485)],Array[_0x3ede08(0x201)](_0x45d814)?_0x45d814:[]);return{'ok':_0x3c07ef[_0x3ede08(0x3cc)]===0x0,..._0x3c07ef};}),_0x24e5da(_0x1e5349(0x392)+_0x1e5349(0x1bf),async(_0x34f8bc,_0xf05a70={})=>_0x6c6bcd()['sessions'][_0x1e5349(0x2a8)]({..._0xf05a70,'parentSessionKey':_0xf05a70['parentSe'+'ssionKey']||_0xf05a70['sessionK'+'ey']}));const _0x25a3b8=configController[_0x1e5349(0x3d2)+_0x1e5349(0x2cd)]();sessionSqliteStore=ensureSessionSqliteStore();const _0x3cfe82=createAgentSessionsMapStore({'stateDir':_0x25a3b8});_0x24e5da(_0x1e5349(0x392)+':agent-m'+_0x1e5349(0x309),async(_0x6033f5,_0x54aec7={})=>_0x3cfe82[_0x1e5349(0x43d)](_0x54aec7)),_0x24e5da('sessions'+_0x1e5349(0x443)+_0x1e5349(0x1d8)+'t',async(_0x4c15db,_0x2954c2={})=>_0x3cfe82['upsert'](_0x2954c2)),_0x24e5da(_0x1e5349(0x392)+_0x1e5349(0x443)+_0x1e5349(0x3bc),async(_0x4923fe,_0x3be65b={})=>{const _0x53a152=_0x1e5349,_0x3c3c6f=String(_0x3be65b[_0x53a152(0x387)+'ey']||'')[_0x53a152(0x46f)]();if(!_0x3c3c6f)return null;return await sessionSqliteStore[_0x53a152(0x178)+'ionEntry'](_0x3c3c6f);}),_0x24e5da(_0x1e5349(0x220)+_0x1e5349(0x1c7),async(_0x33c7e6,_0x3141d5={})=>{const _0x371221=_0x1e5349,_0x65fa51=await readMutableConfig(),_0xf6f9f5=_0x65fa51[_0x371221(0x45f)]&&typeof _0x65fa51[_0x371221(0x45f)]===_0x371221(0x3a5)?_0x65fa51[_0x371221(0x45f)]:{},_0x220c60=_0x226cb5(_0x65fa51),_0x1a12bd=String(_0x3141d5['id']||_0x3141d5[_0x371221(0x35c)]||_0x371221(0x283)+Date[_0x371221(0x45d)]())['trim']()[_0x371221(0x16c)](/\s+/g,'-'),_0x4ded26={'id':_0x1a12bd,'name':String(_0x3141d5[_0x371221(0x35c)]||_0x1a12bd),..._0x3141d5[_0x371221(0x337)+'e']?{'workspace':String(_0x3141d5[_0x371221(0x337)+'e'])}:{},..._0x3141d5[_0x371221(0x161)]?{'model':_0x3141d5[_0x371221(0x161)]}:{},..._0x3141d5[_0x371221(0x30a)]?{'emoji':_0x3141d5[_0x371221(0x30a)]}:{},..._0x3141d5['avatar']?{'avatar':_0x3141d5[_0x371221(0x1ae)]}:{},...Array[_0x371221(0x201)](_0x3141d5['skills'])?{'skills':_0x3141d5[_0x371221(0x414)]}:{}};if(_0x220c60['some'](_0x15158c=>_0x15158c?.['id']===_0x1a12bd))throw new Error(_0x371221(0x3ff)+_0x371221(0x33e)+_0x371221(0x1b1));return _0xf6f9f5[_0x371221(0x2e6)]=[..._0x220c60,_0x4ded26],_0x65fa51[_0x371221(0x45f)]=_0xf6f9f5,await _0x531f4a(_0x65fa51,_0x371221(0x347)+'eated'),{'ok':!![],'agent':_0x4ded26};}),_0x24e5da(_0x1e5349(0x217)+'pdate',async(_0x2aea8b,_0x31b6c0={})=>{const _0xeaf8ca=_0x1e5349,_0x4e742a=String(_0x31b6c0['id']||_0x31b6c0[_0xeaf8ca(0x3eb)]||'')['trim']();if(!_0x4e742a)throw new Error(_0xeaf8ca(0x3fc)+_0xeaf8ca(0x1cc)+_0xeaf8ca(0x177));const _0x1286b9=await readMutableConfig(),_0x675c64=_0x1286b9[_0xeaf8ca(0x45f)]&&typeof _0x1286b9[_0xeaf8ca(0x45f)]==='object'?_0x1286b9[_0xeaf8ca(0x45f)]:{},_0x2b7b83=_0x226cb5(_0x1286b9),_0xf79b9d=_0x2b7b83['map'](_0x2fa730=>_0x2fa730?.['id']===_0x4e742a?{..._0x2fa730,..._0x31b6c0,'id':_0x4e742a}:_0x2fa730);return _0x675c64[_0xeaf8ca(0x2e6)]=_0xf79b9d,_0x1286b9[_0xeaf8ca(0x45f)]=_0x675c64,await _0x531f4a(_0x1286b9,_0xeaf8ca(0x27d)+_0xeaf8ca(0x287)),{'ok':!![],'agent':_0xf79b9d['find'](_0x1a8547=>_0x1a8547?.['id']===_0x4e742a)||null};}),_0x24e5da('agents:d'+_0x1e5349(0x301),async(_0x529da7,_0x5bd39f={})=>{const _0x254bb1=_0x1e5349,_0x11f488=String(_0x5bd39f['id']||_0x5bd39f[_0x254bb1(0x3eb)]||'')[_0x254bb1(0x46f)]();if(!_0x11f488)throw new Error(_0x254bb1(0x3fc)+_0x254bb1(0x1cc)+'ired');const _0x35557f=await readMutableConfig(),_0x25b935=_0x35557f['agents']&&typeof _0x35557f[_0x254bb1(0x45f)]==='object'?_0x35557f[_0x254bb1(0x45f)]:{};return _0x25b935['list']=_0x226cb5(_0x35557f)[_0x254bb1(0x36e)](_0xc21942=>_0xc21942?.['id']!==_0x11f488),_0x35557f['agents']=_0x25b935,await _0x531f4a(_0x35557f,_0x254bb1(0x39c)+_0x254bb1(0x173)),{'ok':!![],'agentId':_0x11f488};}),_0x24e5da(_0x1e5349(0x28a)+_0x1e5349(0x396)+_0x1e5349(0x3a3)+'t',async(_0x316290,_0x19881c={})=>{const _0x3bdc24=_0x1e5349,[_0x1370e5,_0x352921]=await Promise[_0x3bdc24(0x360)]([_0x6c6bcd()['agents'][_0x3bdc24(0x2e6)](),_0x6c6bcd()['sessions'][_0x3bdc24(0x2e6)](_0x19881c)[_0x3bdc24(0x22b)](()=>({'sessions':[]}))]),_0x119dad=Array[_0x3bdc24(0x201)](_0x352921['sessions'])?_0x352921[_0x3bdc24(0x392)]:[];return{..._0x1370e5,'sessions':_0x119dad,'groups':Array[_0x3bdc24(0x201)](_0x1370e5['groups'])?_0x1370e5[_0x3bdc24(0x24c)]:_0x5286b7(_0x1370e5,_0x119dad)};}),terminalManager=createTerminalManager({'cwd':join(configController['resolveS'+_0x1e5349(0x2cd)](),_0x1e5349(0x337)+'e'),'emitData':_0x2e233e=>broadcast('terminal'+_0x1e5349(0x378),_0x2e233e),'emitExit':_0x3f05e1=>broadcast(_0x1e5349(0x311)+'-exit',_0x3f05e1)}),_0x24e5da(_0x1e5349(0x311)+_0x1e5349(0x2c2),async(_0x2a0377,_0x5a66a6={})=>terminalManager['create'](_0x5a66a6)),_0x24e5da('terminal'+':input',async(_0x3f4825,_0x58068e={})=>terminalManager[_0x1e5349(0x1cd)](_0x58068e)),_0x24e5da('terminal'+_0x1e5349(0x253),async(_0x5f228a,_0x54f955={})=>terminalManager['resize'](_0x54f955)),_0x24e5da('terminal'+':close',async(_0x4e03ff,_0x4906b9={})=>terminalManager[_0x1e5349(0x203)](_0x4906b9)),_0x24e5da(_0x1e5349(0x260)+'list',async()=>{const _0x49ec63=_0x1e5349,_0x61fcf0=gatewayController?.[_0x49ec63(0x23c)+_0x49ec63(0x2b7)]?.()||{};return _0x61fcf0[_0x49ec63(0x432)]||[];}),_0x24e5da(_0x1e5349(0x260)+_0x1e5349(0x15a)+'ig',async(_0x4715d0,_0x4fb6d4={})=>{const _0x5488ec=_0x1e5349,_0x3e9646=String(_0x4fb6d4[_0x5488ec(0x463)]||_0x4fb6d4['id']||''),_0x5413d9=await readMutableConfig(),_0x2915d2=_0x5413d9[_0x5488ec(0x432)]?.[_0x5488ec(0x320)]||{};return _0x3e9646?_0x2915d2[_0x3e9646]||null:_0x2915d2;}),_0x24e5da(_0x1e5349(0x260)+_0x1e5349(0x37d)+_0x1e5349(0x263),async(_0x5078a4,_0x2e7078={})=>{const _0x2bddab=_0x1e5349,_0x540091=String(_0x2e7078[_0x2bddab(0x463)]||_0x2e7078['id']||'');if(!_0x540091)throw new Error(_0x2bddab(0x463)+_0x2bddab(0x1cc)+'ired');const _0x2a806b=await readMutableConfig(),_0x73efdc=_0x2a806b['plugins']&&typeof _0x2a806b['plugins']===_0x2bddab(0x3a5)?_0x2a806b['plugins']:{},_0x231b72=_0x73efdc[_0x2bddab(0x320)]&&typeof _0x73efdc['entries']==='object'?_0x73efdc[_0x2bddab(0x320)]:{};return _0x231b72[_0x540091]={..._0x231b72[_0x540091]||{},..._0x2e7078[_0x2bddab(0x3ac)]||_0x2e7078[_0x2bddab(0x3dd)]||{}},_0x73efdc[_0x2bddab(0x320)]=_0x231b72,_0x2a806b['plugins']=_0x73efdc,_0x531f4a(_0x2a806b,_0x2bddab(0x2bd)+_0x2bddab(0x1e9)+_0x2bddab(0x287));}),_0x24e5da('plugins:'+_0x1e5349(0x27b),async(_0x135333,_0x2d1da2={})=>{const _0x55651b=_0x1e5349,_0x21be92=String(_0x2d1da2[_0x55651b(0x463)]||_0x2d1da2['id']||'');if(!_0x21be92)throw new Error(_0x55651b(0x463)+'\x20is\x20requ'+'ired');const _0x511361=await readMutableConfig(),_0x470988=_0x511361[_0x55651b(0x432)]&&typeof _0x511361[_0x55651b(0x432)]===_0x55651b(0x3a5)?_0x511361['plugins']:{},_0x1ea78f=_0x470988[_0x55651b(0x320)]&&typeof _0x470988['entries']==='object'?_0x470988[_0x55651b(0x320)]:{};return _0x1ea78f[_0x21be92]={..._0x1ea78f[_0x21be92]||{},'enabled':!![]},_0x470988[_0x55651b(0x320)]=_0x1ea78f,_0x511361[_0x55651b(0x432)]=_0x470988,_0x531f4a(_0x511361,_0x55651b(0x279)+_0x55651b(0x232));}),_0x24e5da('plugins:'+_0x1e5349(0x3b0),async(_0x52b353,_0x1aeee9={})=>{const _0xfef7ab=_0x1e5349,_0x15ec77=String(_0x1aeee9[_0xfef7ab(0x463)]||_0x1aeee9['id']||'');if(!_0x15ec77)throw new Error(_0xfef7ab(0x463)+_0xfef7ab(0x1cc)+_0xfef7ab(0x177));const _0x3717de=await readMutableConfig(),_0x3e8998=_0x3717de[_0xfef7ab(0x432)]&&typeof _0x3717de[_0xfef7ab(0x432)]===_0xfef7ab(0x3a5)?_0x3717de[_0xfef7ab(0x432)]:{},_0x43e925=_0x3e8998[_0xfef7ab(0x320)]&&typeof _0x3e8998['entries']===_0xfef7ab(0x3a5)?_0x3e8998[_0xfef7ab(0x320)]:{};return _0x43e925[_0x15ec77]={..._0x43e925[_0x15ec77]||{},'enabled':![]},_0x3e8998[_0xfef7ab(0x320)]=_0x43e925,_0x3717de[_0xfef7ab(0x432)]=_0x3e8998,_0x531f4a(_0x3717de,_0xfef7ab(0x317)+'isabled');}),_0x24e5da(_0x1e5349(0x260)+'status',async(_0x33ff8e,_0x29cb9f={})=>({'plugins':await((async()=>{const _0x5564c1=_0x1e5349,_0x43f9b0=gatewayController?.[_0x5564c1(0x23c)+_0x5564c1(0x2b7)]?.()||{};if(!_0x29cb9f?.[_0x5564c1(0x463)]&&!_0x29cb9f?.['id'])return _0x43f9b0['plugins']||[];const _0xf537f4=String(_0x29cb9f[_0x5564c1(0x463)]||_0x29cb9f['id']||'');return(_0x43f9b0[_0x5564c1(0x432)]||[])[_0x5564c1(0x36e)](_0xaf559e=>_0xaf559e[_0x5564c1(0x463)]===_0xf537f4);})())})),_0x24e5da('tabs:nav'+_0x1e5349(0x435),async(_0x54ba65,_0x19e28f)=>({'ok':!![],'payload':_0x19e28f})),_0x24e5da('tabs:pos'+'t-messag'+'e',async(_0x343959,_0x49e6ed)=>{return broadcast('tabs-com'+'mand',_0x49e6ed),{'ok':!![]};}),_0x24e5da(_0x1e5349(0x2bc)+_0x1e5349(0x26c)+_0x1e5349(0x1d1),async()=>{const _0x58eed5=_0x1e5349;return broadcast(_0x58eed5(0x406)+_0x58eed5(0x1d1)+_0x58eed5(0x39f),{}),{'ok':!![]};}),_0x24e5da(_0x1e5349(0x3a8)+'resh-age'+_0x1e5349(0x1d1),async(_0x57781f,_0x54ecf4={})=>{const _0x34e565=_0x1e5349;return broadcast(_0x34e565(0x406)+_0x34e565(0x1d1)+'-refresh'+_0x34e565(0x39f),_0x54ecf4),{'ok':!![]};}),_0x24e5da('window:m'+'inimize',_0xe28626=>{const _0x56a16b=_0x1e5349;return BrowserWindow['fromWebC'+_0x56a16b(0x487)](_0xe28626['sender'])?.[_0x56a16b(0x300)](),{'ok':!![]};}),_0x24e5da(_0x1e5349(0x25f)+_0x1e5349(0x219)+_0x1e5349(0x36b),_0x2420df=>{const _0x50fb69=_0x1e5349,_0x481cdd=BrowserWindow[_0x50fb69(0x445)+_0x50fb69(0x487)](_0x2420df[_0x50fb69(0x165)]);if(!_0x481cdd)return{'isMaximized':![]};if(_0x481cdd['isMaximi'+_0x50fb69(0x28f)]())_0x481cdd[_0x50fb69(0x2a9)+'ze']();else _0x481cdd[_0x50fb69(0x297)]();return{'isMaximized':_0x481cdd[_0x50fb69(0x222)+_0x50fb69(0x28f)]()};}),_0x24e5da(_0x1e5349(0x3b5)+'lose',_0x336153=>{const _0xdcf7c4=_0x1e5349;return BrowserWindow[_0xdcf7c4(0x445)+'ontents'](_0x336153[_0xdcf7c4(0x165)])?.[_0xdcf7c4(0x203)](),{'ok':!![]};}),_0x24e5da(_0x1e5349(0x1c8)+'pen-devt'+_0x1e5349(0x2f4),()=>openDevToolsForActiveContext()),_0x24e5da(_0x1e5349(0x2d1)+_0x1e5349(0x1bc)+'-info',()=>_0x6c6bcd()[_0x1e5349(0x23c)+_0x1e5349(0x2b7)]()),_0x24e5da(_0x1e5349(0x2d1)+_0x1e5349(0x16e)+_0x1e5349(0x1eb),async()=>(await ensureGatewayControllerStarted())[_0x1e5349(0x21e)+'s']()),_0x24e5da(_0x1e5349(0x2d1)+_0x1e5349(0x16e)+_0x1e5349(0x361),()=>_0x6c6bcd()[_0x1e5349(0x291)](_0x1e5349(0x2b9)+'\x20request')),_0x24e5da(_0x1e5349(0x2d1)+_0x1e5349(0x322)+_0x1e5349(0x44b)+'cle',async()=>({'loadingLifeCycle':_0x1e5349(0x2e2),'message':'','updatedAt':new Date()[_0x1e5349(0x213)+_0x1e5349(0x482)]()})),_0x24e5da('openclaw'+_0x1e5349(0x16e)+_0x1e5349(0x481),(_0x43c0b8,_0x37432a={})=>_0x6c6bcd()[_0x1e5349(0x363)+_0x1e5349(0x35f)](_0x37432a?.[_0x1e5349(0x439)]??0xc8)),_0x24e5da(_0x1e5349(0x2d1)+_0x1e5349(0x2c0)+_0x1e5349(0x3cd)+_0x1e5349(0x2e1)+'n',(_0x419f17,_0x1a990f)=>_0x6c6bcd()[_0x1e5349(0x216)+_0x1e5349(0x2ba)+'stion'](_0x1a990f)),_0x24e5da(_0x1e5349(0x2d1)+_0x1e5349(0x1df)+_0x1e5349(0x30e),async()=>{const _0x59b08e=_0x1e5349,_0x15f355=join(resolveRuntimeRoot(shellConfig[_0x59b08e(0x32b)+_0x59b08e(0x485)]),_0x59b08e(0x3dc),_0x59b08e(0x266)+'w');if(!existsSync(_0x15f355))throw new Error(_0x59b08e(0x2d1)+'\x20CLI\x20wra'+_0x59b08e(0x3f2)+'\x20found:\x20'+_0x15f355+(_0x59b08e(0x239)+_0x59b08e(0x3a4)+_0x59b08e(0x28d)+_0x59b08e(0x1b4)));const _0x5a95fa=join(app[_0x59b08e(0x2b8)](_0x59b08e(0x3a2)),_0x59b08e(0x3d6)+_0x59b08e(0x1ff)+_0x59b08e(0x202));await writeFile(_0x5a95fa,_0x59b08e(0x27f)+_0x59b08e(0x37b)+_0x15f355[_0x59b08e(0x16c)](/\\/g,'\x5c\x5c')['replace'](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x3488=spawn(_0x59b08e(0x32d),['-a',_0x59b08e(0x2aa),_0x5a95fa],{'detached':!![],'stdio':_0x59b08e(0x2b4)});return _0x3488[_0x59b08e(0x199)](),{'ok':!![],'cliPath':_0x15f355};}),_0x24e5da(_0x1e5349(0x324)+_0x1e5349(0x164),()=>_0x6c6bcd()[_0x1e5349(0x45f)][_0x1e5349(0x2e6)]()),_0x24e5da(_0x1e5349(0x3fe)+_0x1e5349(0x2f8),(_0x134b11,_0x4cc96b)=>_0x6c6bcd()[_0x1e5349(0x414)][_0x1e5349(0x36f)](_0x4cc96b)),_0x24e5da('sessions'+_0x1e5349(0x2c2),(_0x5d9767,_0xcb8788)=>_0x6c6bcd()[_0x1e5349(0x392)][_0x1e5349(0x2a8)](_0xcb8788)),_0x24e5da(_0x1e5349(0x392)+_0x1e5349(0x47d),(_0x47436d,_0x39406e)=>_0x6c6bcd()['sessions'][_0x1e5349(0x2e6)](_0x39406e)),_0x24e5da(_0x1e5349(0x392)+_0x1e5349(0x262),(_0x4b0311,_0x45f846)=>_0x6c6bcd()['sessions'][_0x1e5349(0x24d)](_0x45f846)),_0x24e5da(_0x1e5349(0x160)+'eam',(_0x2cb6fb,_0x57028f)=>_0x6c6bcd()[_0x1e5349(0x1db)][_0x1e5349(0x2ad)](_0x57028f)),_0x24e5da(_0x1e5349(0x3c1)+'rt',(_0x5548b8,_0x4ee2e8)=>_0x6c6bcd()['chat'][_0x1e5349(0x2df)](_0x4ee2e8)),_0x24e5da('chat:his'+_0x1e5349(0x15f),(_0x5dd5e0,_0x57371f)=>_0x6c6bcd()[_0x1e5349(0x1db)]['history'](_0x57371f)),_0x24e5da(_0x1e5349(0x296)+'te',async(_0x2e14d2,_0x137aa5={})=>{const _0x45f07b=_0x1e5349,_0x21f1b2=typeof _0x137aa5[_0x45f07b(0x2e3)]===_0x45f07b(0x305)?_0x137aa5[_0x45f07b(0x2e3)]:_0x45f07b(0x168),_0x512fea=typeof _0x137aa5['message']===_0x45f07b(0x305)?_0x137aa5[_0x45f07b(0x249)]:_0x45f07b(0x2b9)+'\x20log',_0x46fc3f=typeof _0x137aa5[_0x45f07b(0x30c)]===_0x45f07b(0x305)&&_0x137aa5[_0x45f07b(0x30c)]['trim']()?_0x45f07b(0x2b9)+':'+_0x137aa5[_0x45f07b(0x30c)]['trim']():_0x45f07b(0x2b9),_0x5f2b2b=_0x137aa5['meta']&&typeof _0x137aa5[_0x45f07b(0x47a)]==='object'?{...summarizePayload(_0x137aa5['meta']),'context':_0x46fc3f}:{'context':_0x46fc3f},_0x2658ac=rendererLogger;if(_0x2658ac?.[_0x21f1b2])await _0x2658ac[_0x21f1b2](_0x512fea,_0x5f2b2b);else await _0x2658ac?.[_0x45f07b(0x168)](_0x512fea,_0x5f2b2b);if(_0x137aa5[_0x45f07b(0x2ec)+'ic']===!![]||_0x46fc3f===_0x45f07b(0x2b9)+_0x45f07b(0x1f7)+_0x45f07b(0x42c)){const _0xd11e5=_0x137aa5[_0x45f07b(0x375)]&&typeof _0x137aa5['record']==='object'?_0x137aa5[_0x45f07b(0x375)]:_0x137aa5[_0x45f07b(0x47a)]?.[_0x45f07b(0x375)]&&typeof _0x137aa5['meta'][_0x45f07b(0x375)]===_0x45f07b(0x3a5)?_0x137aa5[_0x45f07b(0x47a)]['record']:{'level':_0x21f1b2,'category':'renderer','event':_0x46fc3f,'message':_0x512fea,'meta':_0x137aa5[_0x45f07b(0x47a)]};await diagnosticsWriter?.[_0x45f07b(0x26b)+'nt'](_0xd11e5,{'captureIncident':String(_0xd11e5[_0x45f07b(0x2e3)]||_0x21f1b2)[_0x45f07b(0x45c)+_0x45f07b(0x2fa)]()===_0x45f07b(0x2fe)||_0x137aa5[_0x45f07b(0x3d4)+_0x45f07b(0x244)]===!![]});}return{'ok':!![]};}),_0x24e5da(_0x1e5349(0x40a)+_0x1e5349(0x447),async(_0x2c2790,_0x287c66={})=>{const _0x3b2731=_0x1e5349,_0x14dd53=typeof _0x287c66[_0x3b2731(0x37f)+'r']==='string'&&_0x287c66[_0x3b2731(0x37f)+'r'][_0x3b2731(0x46f)]()?_0x287c66[_0x3b2731(0x37f)+'r']:undefined,_0xf171b3=await exportLogsArchive({'logsDir':configController[_0x3b2731(0x3d8)][_0x3b2731(0x235)],'targetDir':_0x14dd53,'appVersion':app[_0x3b2731(0x1e3)+'on']()});return mainLogger?.[_0x3b2731(0x168)](_0x3b2731(0x47b)+_0x3b2731(0x1cb),{'path':toHomePath(_0xf171b3[_0x3b2731(0x24e)])}),_0xf171b3;}),_0x24e5da(_0x1e5349(0x1d6)+'n-direct'+_0x1e5349(0x3e0),async()=>{const _0x32b29d=_0x1e5349;return await shell['openPath'](configController[_0x32b29d(0x3d8)][_0x32b29d(0x235)]),mainLogger?.['info'](_0x32b29d(0x1f8)+_0x32b29d(0x19f)+_0x32b29d(0x229),{'logsDir':toHomePath(configController[_0x32b29d(0x3d8)][_0x32b29d(0x235)])}),{'ok':!![],'path':configController[_0x32b29d(0x3d8)][_0x32b29d(0x235)]};}),_0x24e5da(_0x1e5349(0x1fa)+'t',async()=>{const _0x3b6cc4=await readdir(configController['paths']['logsDir'],{'recursive':!![]})['catch'](()=>[]);return _0x3b6cc4;}),_0x24e5da(_0x1e5349(0x2fc)+'d',async(_0x2ec4bc,_0x419d2a={})=>{const _0x263801=_0x1e5349,_0x5580de=String(_0x419d2a['path']||'');if(!_0x5580de)throw new Error(_0x263801(0x34a)+_0x263801(0x45b));return readFile(_0x5580de,'utf8');}),_0x24e5da(_0x1e5349(0x1a9)+'ad',async(_0x39b7b8,_0x4ae3ec)=>{const _0x5a8410=_0x1e5349,_0x2969cf=Date[_0x5a8410(0x45d)]();try{const _0x3944db=await readFile(_0x4ae3ec,'utf8');return filesLogger?.[_0x5a8410(0x168)]('file\x20rea'+'d\x20comple'+'ted',{'path':toHomePath(_0x4ae3ec),'bytes':Buffer[_0x5a8410(0x2f2)+'th'](_0x3944db),'durationMs':Date[_0x5a8410(0x45d)]()-_0x2969cf}),_0x3944db;}catch(_0x7bd0dd){filesLogger?.[_0x5a8410(0x2fe)](_0x5a8410(0x277)+_0x5a8410(0x454),{'path':toHomePath(_0x4ae3ec),'durationMs':Date[_0x5a8410(0x45d)]()-_0x2969cf,'error':summarizeError(_0x7bd0dd)});throw _0x7bd0dd;}}),_0x24e5da(_0x1e5349(0x1a9)+_0x1e5349(0x426)+'y',async(_0x2a50ae,_0x207116)=>{const _0x49f805=_0x1e5349,_0xb55add=Date[_0x49f805(0x45d)]();try{const _0x2a8e45=await readFile(_0x207116);return filesLogger?.[_0x49f805(0x168)](_0x49f805(0x41c)+_0x49f805(0x1ab)+_0x49f805(0x3c9)+'ed',{'path':toHomePath(_0x207116),'bytes':_0x2a8e45[_0x49f805(0x2f2)+'th'],'durationMs':Date[_0x49f805(0x45d)]()-_0xb55add}),new Uint8Array(_0x2a8e45);}catch(_0xecc24c){filesLogger?.[_0x49f805(0x2fe)](_0x49f805(0x41c)+_0x49f805(0x1ab)+'\x20failed',{'path':toHomePath(_0x207116),'durationMs':Date[_0x49f805(0x45d)]()-_0xb55add,'error':summarizeError(_0xecc24c)});throw _0xecc24c;}}),_0x24e5da('files:wr'+_0x1e5349(0x380),async(_0x352227,_0x5095ed={})=>{const _0x9e1bf0=_0x1e5349,_0x58c5b9=Date[_0x9e1bf0(0x45d)]();return await writeFile(_0x5095ed[_0x9e1bf0(0x24e)],_0x5095ed[_0x9e1bf0(0x29d)]??'','utf8'),filesLogger?.[_0x9e1bf0(0x168)](_0x9e1bf0(0x420)+_0x9e1bf0(0x2f0)+_0x9e1bf0(0x2ee),{'path':toHomePath(_0x5095ed[_0x9e1bf0(0x24e)]),'bytes':Buffer[_0x9e1bf0(0x2f2)+'th'](String(_0x5095ed[_0x9e1bf0(0x29d)]??'')),'durationMs':Date['now']()-_0x58c5b9}),{'ok':!![]};}),_0x24e5da(_0x1e5349(0x183)+_0x1e5349(0x355)+'ry',async(_0x19f585,_0x5f4e9b={})=>{const _0x41e854=_0x1e5349,_0x551e50=Date[_0x41e854(0x45d)]();await writeFile(_0x5f4e9b[_0x41e854(0x24e)],Buffer[_0x41e854(0x436)](_0x5f4e9b['content']??[]));const _0x2e5c32=await stat(_0x5f4e9b['path'])[_0x41e854(0x22b)](()=>null);return filesLogger?.[_0x41e854(0x168)](_0x41e854(0x41c)+'ile\x20writ'+_0x41e854(0x474)+_0x41e854(0x28b),{'path':toHomePath(_0x5f4e9b[_0x41e854(0x24e)]),'bytes':_0x2e5c32?.['size']??0x0,'durationMs':Date[_0x41e854(0x45d)]()-_0x551e50}),{'ok':!![]};}),_0x24e5da(_0x1e5349(0x353)+_0x1e5349(0x3d7)+'e',async(_0x1e369c,_0x2edb69={})=>{const _0x4705b1=_0x1e5349,_0x47fd7c=await dialog['showOpen'+_0x4705b1(0x47c)](BrowserWindow['fromWebC'+_0x4705b1(0x487)](_0x1e369c[_0x4705b1(0x165)])??mainWindow,{'title':typeof _0x2edb69['title']===_0x4705b1(0x305)?_0x2edb69['title']:undefined,'properties':[_0x4705b1(0x256),..._0x2edb69[_0x4705b1(0x198)+_0x4705b1(0x292)]?[_0x4705b1(0x198)+_0x4705b1(0x292)]:[]],'filters':Array[_0x4705b1(0x201)](_0x2edb69[_0x4705b1(0x33d)])?_0x2edb69[_0x4705b1(0x33d)]:undefined});return filesLogger?.[_0x4705b1(0x168)](_0x4705b1(0x18a)+_0x4705b1(0x195)+_0x4705b1(0x173),{'canceled':_0x47fd7c[_0x4705b1(0x331)],'count':_0x47fd7c['filePath'+'s'][_0x4705b1(0x367)],'paths':_0x47fd7c[_0x4705b1(0x31c)+'s'][_0x4705b1(0x39e)](toHomePath)}),{'canceled':_0x47fd7c['canceled'],'paths':_0x47fd7c['filePath'+'s']};}),_0x24e5da(_0x1e5349(0x240)+_0x1e5349(0x24f)+_0x1e5349(0x15f),async(_0x4dc0fe,_0x2d4d5a={})=>{const _0x3ed602=_0x1e5349,_0x1a2e7f=resolve(String(_0x2d4d5a['path']||'')),_0x280633=_0x2d4d5a[_0x3ed602(0x478)+'e']!==![],_0x2789aa=Array[_0x3ed602(0x201)](_0x2d4d5a[_0x3ed602(0x351)+'ns'])?_0x2d4d5a['extensio'+'ns'][_0x3ed602(0x39e)](_0x30f052=>String(_0x30f052)[_0x3ed602(0x45c)+_0x3ed602(0x2fa)]()[_0x3ed602(0x16c)](/^\./,''))[_0x3ed602(0x36e)](Boolean):null,_0x1b05dc=Number[_0x3ed602(0x39d)+'r'](_0x2d4d5a['maxEntri'+'es'])&&_0x2d4d5a[_0x3ed602(0x484)+'es']>0x0?_0x2d4d5a[_0x3ed602(0x484)+'es']:0xc350,_0x35096f=[];let _0x55575d=![];async function _0x51e55f(_0x3e346b){const _0x38b773=_0x3ed602;if(_0x55575d)return;let _0x565c9c;try{_0x565c9c=await readdir(_0x3e346b,{'withFileTypes':!![]});}catch{return;}for(const _0x131ea6 of _0x565c9c){if(_0x55575d)return;if(_0x131ea6[_0x38b773(0x35c)]['startsWi'+'th']('.'))continue;const _0x2de93d=join(_0x3e346b,_0x131ea6[_0x38b773(0x35c)]);if(_0x131ea6['isDirect'+_0x38b773(0x3e0)]()){if(_0x280633)await _0x51e55f(_0x2de93d);continue;}if(!_0x131ea6[_0x38b773(0x452)]())continue;if(_0x2789aa){const _0x9f452a=_0x131ea6[_0x38b773(0x35c)][_0x38b773(0x1e1)+_0x38b773(0x373)]('.'),_0x7fba37=_0x9f452a>=0x0?_0x131ea6[_0x38b773(0x35c)][_0x38b773(0x267)](_0x9f452a+0x1)[_0x38b773(0x45c)+_0x38b773(0x2fa)]():'';if(!_0x2789aa[_0x38b773(0x2c7)](_0x7fba37))continue;}if(_0x35096f['length']>=_0x1b05dc){_0x55575d=!![];return;}_0x35096f[_0x38b773(0x197)]({'name':_0x131ea6[_0x38b773(0x35c)],'path':_0x2de93d});}}return await _0x51e55f(_0x1a2e7f),{'path':_0x1a2e7f,'entries':_0x35096f,'truncated':_0x55575d};}),_0x24e5da(_0x1e5349(0x353)+'lect-dir'+_0x1e5349(0x329),async(_0x3bd72c,_0xf5da50={})=>{const _0x467995=_0x1e5349,_0xfded0=await dialog[_0x467995(0x1b0)+_0x467995(0x47c)](BrowserWindow['fromWebC'+_0x467995(0x487)](_0x3bd72c[_0x467995(0x165)])??mainWindow,{'title':typeof _0xf5da50[_0x467995(0x437)]===_0x467995(0x305)?_0xf5da50[_0x467995(0x437)]:undefined,'properties':[_0x467995(0x2c3)+'ctory']});return filesLogger?.[_0x467995(0x168)](_0x467995(0x210)+'irectory'+_0x467995(0x3c9)+'ed',{'canceled':_0xfded0[_0x467995(0x331)],'count':_0xfded0['filePath'+'s'][_0x467995(0x367)],'paths':_0xfded0[_0x467995(0x31c)+'s'][_0x467995(0x39e)](toHomePath)}),{'canceled':_0xfded0[_0x467995(0x331)],'paths':_0xfded0[_0x467995(0x31c)+'s']};}),_0x24e5da(_0x1e5349(0x337)+'e:direct'+_0x1e5349(0x1b7),()=>_0x6c6bcd()[_0x1e5349(0x337)+'e']['director'+_0x1e5349(0x43c)]()),_0x24e5da(_0x1e5349(0x337)+_0x1e5349(0x43f)+'irectory',async()=>{const _0x2f5350=_0x1e5349,_0x47ba30=await _0x6c6bcd()[_0x2f5350(0x337)+'e'][_0x2f5350(0x416)+'yInfo']();return await shell['openPath'](_0x47ba30['path']),filesLogger?.[_0x2f5350(0x168)]('workspac'+_0x2f5350(0x3c3)+'ory\x20open'+'ed',{'path':toHomePath(_0x47ba30[_0x2f5350(0x24e)])}),{'ok':!![],'path':_0x47ba30['path']};}),_0x24e5da(_0x1e5349(0x337)+'e:shared'+_0x1e5349(0x23b),()=>_0x6c6bcd()['workspac'+'e'][_0x1e5349(0x208)+_0x1e5349(0x303)]()),_0x24e5da(_0x1e5349(0x337)+_0x1e5349(0x469)+_0x1e5349(0x35a)+_0x1e5349(0x286),(_0xe20037,_0xd90bcc)=>_0x6c6bcd()[_0x1e5349(0x337)+'e'][_0x1e5349(0x2d4)+'redConte'+'xt'](_0xd90bcc)),_0x24e5da('sessions'+_0x1e5349(0x442),(_0x1a4ab1,_0x50bf0)=>_0x6c6bcd()[_0x1e5349(0x392)]['rename'](_0x50bf0)),_0x24e5da('sessions'+':pin',async(_0xed68f5,_0x18f639={})=>{const _0x5d9898=_0x1e5349,_0x568e6e=String(_0x18f639[_0x5d9898(0x387)+'ey']||_0x18f639['key']||'')[_0x5d9898(0x46f)]();if(!_0x568e6e)throw new Error('sessionK'+'ey\x20is\x20re'+_0x5d9898(0x18f));const _0x340590=await ensureSessionSqliteStore()['getPinne'+_0x5d9898(0x264)+'Keys'](),_0xd3bfe7=await _0x6c6bcd()[_0x5d9898(0x392)][_0x5d9898(0x2c4)+_0x5d9898(0x227)]([_0x568e6e,..._0x340590[_0x5d9898(0x36e)](_0x592e2b=>_0x592e2b!==_0x568e6e)]);return _0xd3bfe7;}),_0x24e5da('sessions'+_0x1e5349(0x2f3),async(_0x5a43db,_0x593d54={})=>{const _0x4175c4=_0x1e5349,_0xc51690=String(_0x593d54[_0x4175c4(0x387)+'ey']||_0x593d54[_0x4175c4(0x15c)]||'')[_0x4175c4(0x46f)]();if(!_0xc51690)throw new Error(_0x4175c4(0x387)+_0x4175c4(0x440)+_0x4175c4(0x18f));const _0x57e386=await ensureSessionSqliteStore()[_0x4175c4(0x167)+_0x4175c4(0x264)+_0x4175c4(0x2fb)]();return await _0x6c6bcd()[_0x4175c4(0x392)][_0x4175c4(0x2c4)+_0x4175c4(0x227)](_0x57e386[_0x4175c4(0x36e)](_0x234344=>_0x234344!==_0xc51690));}),_0x24e5da(_0x1e5349(0x392)+_0x1e5349(0x3f8)+_0x1e5349(0x476),async(_0x4b63a4,_0x261f46={})=>{const _0x2bf71f=_0x1e5349,_0x300cbd=Array['isArray'](_0x261f46[_0x2bf71f(0x2d5)])?_0x261f46[_0x2bf71f(0x2d5)]:_0x261f46;return await _0x6c6bcd()['sessions'][_0x2bf71f(0x2c4)+_0x2bf71f(0x227)](_0x300cbd);}),_0x24e5da(_0x1e5349(0x2d0)+_0x1e5349(0x290),(_0x1e5e5e,_0xd6c9d7)=>_0x6c6bcd()[_0x1e5349(0x414)][_0x1e5349(0x3b8)](_0xd6c9d7)),_0x24e5da('cron:lis'+'t',(_0x147d2b,_0x2680d1)=>_0x6c6bcd()[_0x1e5349(0x3af)]['list'](_0x2680d1)),_0x24e5da('cron:cre'+_0x1e5349(0x2db),(_0x5c8173,_0x4aa500)=>_0x6c6bcd()['cron'][_0x1e5349(0x2a8)](_0x4aa500)),_0x24e5da(_0x1e5349(0x448)+_0x1e5349(0x2db),(_0x36e40d,_0x79fe5d)=>_0x6c6bcd()['cron'][_0x1e5349(0x3ba)](_0x79fe5d)),_0x24e5da('cron:rem'+_0x1e5349(0x280),(_0x166497,_0x148eda)=>_0x6c6bcd()[_0x1e5349(0x3af)][_0x1e5349(0x467)](_0x148eda)),_0x24e5da(_0x1e5349(0x3ab)+_0x1e5349(0x383),(_0x3b9920,_0x1eb166)=>_0x6c6bcd()[_0x1e5349(0x3af)][_0x1e5349(0x2d8)](_0x1eb166)),_0x24e5da('cron:log'+'s',(_0x552d9c,_0x3e6864)=>_0x6c6bcd()[_0x1e5349(0x3af)][_0x1e5349(0x2d9)](_0x3e6864)),_0x24e5da(_0x1e5349(0x1f1)+_0x1e5349(0x2ef),async(_0x3737af,_0x1ad4ba={})=>{const _0x5db4a0=_0x1e5349,_0x39b559=configController[_0x5db4a0(0x2bf)+_0x5db4a0(0x294)+'h'](),_0xb45339=JSON[_0x5db4a0(0x1b6)](await readFile(_0x39b559,_0x5db4a0(0x174))),_0x32e777=_0xb45339?.[_0x5db4a0(0x30f)]?.['provider'+'s']&&typeof _0xb45339['models']['provider'+'s']===_0x5db4a0(0x3a5)?_0xb45339[_0x5db4a0(0x30f)][_0x5db4a0(0x1ef)+'s']:{},_0x4c4a73=typeof _0xb45339?.[_0x5db4a0(0x45f)]?.[_0x5db4a0(0x40d)]?.['model']?.[_0x5db4a0(0x391)]===_0x5db4a0(0x305)?_0xb45339[_0x5db4a0(0x45f)][_0x5db4a0(0x40d)][_0x5db4a0(0x161)][_0x5db4a0(0x391)]:'',_0xe78fc4=String(_0x1ad4ba[_0x5db4a0(0x161)]||_0x4c4a73||'');if(!_0xe78fc4['includes']('/'))throw new Error(_0x5db4a0(0x19d)+_0x5db4a0(0x23e)+_0x5db4a0(0x3ef)+_0x5db4a0(0x3e8)+_0x5db4a0(0x2e4)+_0x5db4a0(0x1d9)+_0x5db4a0(0x236));const _0xb94ae2=_0xe78fc4[_0x5db4a0(0x2c6)]('/'),_0x50fdfa=_0xe78fc4['slice'](0x0,_0xb94ae2),_0x145ef5=_0xe78fc4[_0x5db4a0(0x267)](_0xb94ae2+0x1),_0x4175ba=_0x32e777[_0x50fdfa];if(!_0x4175ba||typeof _0x4175ba!==_0x5db4a0(0x3a5))throw new Error(_0x5db4a0(0x1ef)+_0x5db4a0(0x34d)+_0x5db4a0(0x36a)+'\x20'+_0x50fdfa);const _0x4cab4b=String(_0x4175ba[_0x5db4a0(0x410)]||_0x5db4a0(0x2ac)+_0x5db4a0(0x19a)+_0x5db4a0(0x214)+'1')[_0x5db4a0(0x46f)]()[_0x5db4a0(0x16c)](/\/$/,''),_0x523ed7=await fetch(_0x4cab4b+(_0x5db4a0(0x20e)+_0x5db4a0(0x17e)+'s'),{'method':'POST','headers':{'content-type':_0x5db4a0(0x223)+'ion/json','Authorization':'Bearer\x20'+(_0x4175ba['apiKey']||''),..._0x4175ba['headers']&&typeof _0x4175ba['headers']===_0x5db4a0(0x3a5)?_0x4175ba[_0x5db4a0(0x32f)]:{}},'body':JSON['stringif'+'y']({'model':_0x145ef5,'max_tokens':Number['isIntege'+'r'](_0x1ad4ba['maxToken'+'s'])?_0x1ad4ba[_0x5db4a0(0x405)+'s']:0x400,'temperature':typeof _0x1ad4ba[_0x5db4a0(0x407)+_0x5db4a0(0x411)]===_0x5db4a0(0x465)?_0x1ad4ba[_0x5db4a0(0x407)+'ure']:undefined,'messages':Array['isArray'](_0x1ad4ba['messages'])?_0x1ad4ba['messages']:[]}),'signal':AbortSignal[_0x5db4a0(0x343)](Number['isIntege'+'r'](_0x1ad4ba[_0x5db4a0(0x39b)+'s'])?_0x1ad4ba[_0x5db4a0(0x39b)+'s']:0x1d4c0)});if(!_0x523ed7['ok']){const _0x2532f1=await _0x523ed7[_0x5db4a0(0x44d)]();throw new Error(_0x5db4a0(0x350)+_0x5db4a0(0x488)+_0x523ed7[_0x5db4a0(0x36f)]+':\x20'+_0x2532f1[_0x5db4a0(0x267)](0x0,0x190));}const _0x36ff9a=await _0x523ed7[_0x5db4a0(0x26d)](),_0x356c86=_0x36ff9a?.[_0x5db4a0(0x3a6)]?.[0x0]?.[_0x5db4a0(0x249)]??{};return{'content':extractModelMessageContent(_0x356c86['content']),'reasoning':typeof _0x356c86['reasonin'+'g_conten'+'t']===_0x5db4a0(0x305)?_0x356c86[_0x5db4a0(0x209)+_0x5db4a0(0x32a)+'t']:'','model':_0x36ff9a?.[_0x5db4a0(0x161)]||_0x145ef5};}),_0x24e5da(_0x1e5349(0x3da)+'ettings',()=>_0x6c6bcd()[_0x1e5349(0x30f)][_0x1e5349(0x1ac)]()),_0x24e5da(_0x1e5349(0x3da)+'et-setti'+'ngs',(_0x5ed671,_0x23a819)=>_0x6c6bcd()[_0x1e5349(0x30f)][_0x1e5349(0x34f)+_0x1e5349(0x1ba)](_0x23a819)),_0x24e5da(_0x1e5349(0x3da)+_0x1e5349(0x17c)+_0x1e5349(0x23d)+_0x1e5349(0x354),(_0x204c0b,_0x5a2962)=>_0x6c6bcd()[_0x1e5349(0x30f)][_0x1e5349(0x3b6)+_0x1e5349(0x47e)+'Everywhe'+'re'](_0x5a2962)),_0x24e5da('models:s'+_0x1e5349(0x274)+'operated',(_0x16b718,_0x4f4736)=>_0x6c6bcd()[_0x1e5349(0x30f)][_0x1e5349(0x24b)+_0x1e5349(0x486)+_0x1e5349(0x186)](_0x4f4736)),_0x24e5da(_0x1e5349(0x3da)+'elected-'+_0x1e5349(0x44e),()=>_0x6c6bcd()[_0x1e5349(0x30f)][_0x1e5349(0x257)+'ModelId']()),_0x24e5da(_0x1e5349(0x1f1)+_0x1e5349(0x3e9)+_0x1e5349(0x21d),()=>_0x6c6bcd()[_0x1e5349(0x30f)][_0x1e5349(0x2b1)+_0x1e5349(0x21d)]()),_0x24e5da(_0x1e5349(0x284)+'sync-bun'+'dled-res'+_0x1e5349(0x29b),async()=>{const _0x62dcde=_0x1e5349,_0x4328e9=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController[_0x62dcde(0x429)+_0x62dcde(0x444)+'ns'](),{'ok':!![],'syncedAt':new Date()[_0x62dcde(0x213)+_0x62dcde(0x482)](),'manifest':_0x4328e9,'status':await getRuntimeResourceStatus()};}),_0x24e5da(_0x1e5349(0x284)+_0x1e5349(0x3be)+'-status',async()=>getRuntimeResourceStatus());}async function boot(){const _0x33554c=_0x548820;shellConfig=await loadShellConfig(resolveProjectRoot()),app['setName'](shellConfig[_0x33554c(0x2cf)+_0x33554c(0x3df)]),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x33554c(0x3d8)],_0x33554c(0x194)),ipcLogger=createShellLogger(configController[_0x33554c(0x3d8)],_0x33554c(0x17d)),filesLogger=createShellLogger(configController[_0x33554c(0x3d8)],_0x33554c(0x47f)),rendererLogger=createShellLogger(configController['paths'],_0x33554c(0x2b9)),productRuntime=await loadProductRuntime();const _0x575e4f=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController['paths']['logsDir'],'appContext':{'productName':shellConfig[_0x33554c(0x2cf)+'ame'],'appId':shellConfig[_0x33554c(0x3ee)],'appVersion':app['getVersi'+'on'](),'platform':process['platform'],'arch':process[_0x33554c(0x3a1)],..._0x575e4f?{'apiEndpoint':_0x575e4f}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController['paths'][_0x33554c(0x235)],'diagnosticsWriter':diagnosticsWriter});const _0x48199e=await loadCreateUpdateController({'logger':mainLogger});updateController=_0x48199e({'shellConfig':shellConfig,'appName':()=>app[_0x33554c(0x35c)],'appVersion':()=>app[_0x33554c(0x1e3)+'on'](),'broadcast':broadcast,'logger':mainLogger}),updateController[_0x33554c(0x425)+'ze'](),registerProcessLogHooks(),mainLogger?.[_0x33554c(0x168)](_0x33554c(0x238)+_0x33554c(0x3e2)+'ot\x20start'+'ed',{'appVersion':app[_0x33554c(0x1e3)+'on'](),'electronVersion':process[_0x33554c(0x2cc)][_0x33554c(0x238)],'nodeVersion':process['versions'][_0x33554c(0x1a5)],'chromeVersion':process[_0x33554c(0x2cc)]['chrome'],'platform':process['platform'],'arch':process[_0x33554c(0x3a1)],'mode':getMode(),'projectRoot':shellConfig[_0x33554c(0x32b)+_0x33554c(0x485)],'configPath':shellConfig[_0x33554c(0x3fd)+'th'],'dataDir':shellConfig[_0x33554c(0x1f6)],'logsDir':configController[_0x33554c(0x3d8)][_0x33554c(0x235)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x33554c(0x32b)+_0x33554c(0x485)],_0x33554c(0x40b),_0x33554c(0x2e8)+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app['getVersi'+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime['migrateP'+_0x33554c(0x333)+_0x33554c(0x313)]===_0x33554c(0x259)&&await productRuntime[_0x33554c(0x1da)+_0x33554c(0x333)+_0x33554c(0x313)]({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x33554c(0x1da)+_0x33554c(0x275)+'ta']==='function'?await productRuntime['migrateP'+_0x33554c(0x275)+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()[_0x33554c(0x381)+_0x33554c(0x1d7)+'d'](),attachGatewayBroadcastHandlers(gatewayController),await installIpcHandlers(),installClawspaceProtocolHandler(),registerShellShortcuts(),await createWindow(),await gatewayController[_0x33554c(0x2e9)](),updateController[_0x33554c(0x18d)+_0x33554c(0x417)+'hecks'](),mainLogger?.[_0x33554c(0x168)](_0x33554c(0x238)+_0x33554c(0x3e2)+_0x33554c(0x386)+_0x33554c(0x2ee));}function registerProcessLogHooks(){const _0x144dc4=_0x548820;if(registerProcessLogHooks[_0x144dc4(0x250)+'ed'])return;registerProcessLogHooks[_0x144dc4(0x250)+'ed']=!![],process['on'](_0x144dc4(0x1e8)+'Exceptio'+'n',_0x47c0d1=>{const _0xcadcca=_0x144dc4;mainLogger?.[_0xcadcca(0x2fe)](_0xcadcca(0x1e8)+_0xcadcca(0x3c7)+'on',summarizeError(_0x47c0d1));}),process['on'](_0x144dc4(0x321)+'dRejecti'+'on',_0x21d286=>{const _0x4604a0=_0x144dc4;mainLogger?.[_0x4604a0(0x2fe)](_0x4604a0(0x321)+_0x4604a0(0x299)+_0x4604a0(0x37e),summarizeError(_0x21d286));}),app['on'](_0x144dc4(0x308)+'rocess-g'+_0x144dc4(0x228),(_0x9447b0,_0x4f8992,_0x52d223)=>{const _0x2d419d=_0x144dc4;mainLogger?.[_0x2d419d(0x2fe)](_0x2d419d(0x2b9)+_0x2d419d(0x16a)+'\x20gone',{'url':_0x4f8992['getURL'](),'details':_0x52d223});}),app['on']('child-pr'+_0x144dc4(0x2b0)+'ne',(_0x543aa3,_0x249e14)=>{const _0x2000dc=_0x144dc4;mainLogger?.[_0x2000dc(0x2fe)]('child\x20pr'+_0x2000dc(0x20d)+'ne',{'details':_0x249e14});});}app['on'](_0x548820(0x1f0)+'ll-close'+'d',()=>{const _0x4b629f=_0x548820;if(process[_0x4b629f(0x293)]!=='darwin')app[_0x4b629f(0x404)]();}),app['on'](_0x548820(0x45a),async()=>{const _0xd89772=_0x548820;if(isQuitting){app['quit']();return;}updateController?.[_0xd89772(0x431)+'ackgroun'+_0xd89772(0x3bd)](_0xd89772(0x21c)+'vate'),BrowserWindow[_0xd89772(0x21f)+_0xd89772(0x2c8)]()[_0xd89772(0x367)]===0x0&&shellConfig&&await createWindow();}),app['on'](_0x548820(0x29c)+_0x548820(0x1c2),_0x466ded=>{const _0x300b92=_0x548820;isQuitting=!![],updateController?.[_0x300b92(0x430)+_0x300b92(0x42b)](),terminalManager?.[_0x300b92(0x19e)](),terminalManager=null,productRuntimeHooks?.[_0x300b92(0x19e)]?.();for(const _0x116e8a of Object['keys'](productRuntimeHooks))delete productRuntimeHooks[_0x116e8a];if(!gatewayController)return;mainLogger?.['info']('before\x20q'+_0x300b92(0x289)+_0x300b92(0x3f6)+_0x300b92(0x330)),_0x466ded[_0x300b92(0x1d0)+_0x300b92(0x3e5)](),void gatewayController[_0x300b92(0x254)]()[_0x300b92(0x2fd)](()=>{const _0x33ac0b=_0x300b92;gatewayController=null,mainLogger?.[_0x33ac0b(0x168)](_0x33ac0b(0x1aa)+_0x33ac0b(0x2f1)+_0x33ac0b(0x2af)+_0x33ac0b(0x1c2)),app['quit']();});}),app['on'](_0x548820(0x1a0)+'t',()=>{const _0x2cd292=_0x548820;globalShortcut[_0x2cd292(0x17a)+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x548820(0x21b)+'y']()[_0x548820(0x40f)](boot)[_0x548820(0x22b)](_0x3f1a52=>{const _0x37a38e=_0x548820;bootError=_0x3f1a52 instanceof Error?_0x3f1a52[_0x37a38e(0x249)]:String(_0x3f1a52),mainLogger?.[_0x37a38e(0x2fe)](_0x37a38e(0x238)+_0x37a38e(0x3e2)+_0x37a38e(0x3ec)+'d',summarizeError(_0x3f1a52)),console[_0x37a38e(0x2fe)](_0x37a38e(0x16f)+'hell]\x20fa'+_0x37a38e(0x356)+_0x37a38e(0x42e)+'ctron\x20ma'+'in',_0x3f1a52);});