@wujie-shell/core 3.0.0 → 3.0.1

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 (40) 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/package.json +3 -3
@@ -1 +1 @@
1
- const _0x39b169=_0x18c1;(function(_0x542263,_0x3e23f0){const _0x3aee78=_0x18c1,_0x36bcd2=_0x542263();while(!![]){try{const _0x475242=parseInt(_0x3aee78(0x2af))/0x1+-parseInt(_0x3aee78(0x3a0))/0x2*(parseInt(_0x3aee78(0x37b))/0x3)+-parseInt(_0x3aee78(0x34f))/0x4*(parseInt(_0x3aee78(0x2ae))/0x5)+-parseInt(_0x3aee78(0x27e))/0x6+parseInt(_0x3aee78(0x2c9))/0x7+parseInt(_0x3aee78(0x36d))/0x8+-parseInt(_0x3aee78(0x238))/0x9;if(_0x475242===_0x3e23f0)break;else _0x36bcd2['push'](_0x36bcd2['shift']());}catch(_0x80450f){_0x36bcd2['push'](_0x36bcd2['shift']());}}}(_0x43ff,0xa30ab));import _0x275b0d 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';function _0x43ff(){const _0x3f86b1=['getKdocs','ximize','rename','POST','tedModel','runtimeR','oggle-ma','reate','s:delete','productN','Invalid\x20','uest-age','onnector','list','preventD','operated','unknown','dCheck','les:hide','mjs','openclaw','getStatu','in;\x20char','ationSta','uncaught','agents:d','t-messag','image/jp','sion','isArray','ot\x20compl','wujiecla','dSession','oad','ctStatus','ession','plugin\x20e','nfig','logsDir',':save-te','window:c','key','te:downl','elected-','nectSess','info','-info','agent\x20up','ype','omplete','detach','ead','isabled','openFile','ite','ith-sess','ipc\x20requ','nges','settings','agents:l','getFocus','eating','hidden','bytes','ted','trationS','l\x20reques','ItemSett','ort','e:shared','s:list','closeToT','hostname','complete','Bearer\x20','.webp','ontext','image/pn','.md','lose','remove','arch','send','\x20found:\x20','entries','message','ted-stat','video/x-','ate','mpletion','-url','enClawSk','config','toLowerC','enClawCo','ng;\x20recr','loadFile','canceled','runOnce','chat:str','torConfi','content','rControl','main','\x20failed','abort',':reorder','mport-zi','readSess','ask-user','app:syst',':loading','wBin','ocus','pServer','efault','huDocCon','csCliCon','lect-fil','quired','onnectSt','logs',':save-kd','t-stream','ell:even','Dialog','feishu_d','agents:w','stringif','l\x20prepar','push',':downloa','tabs-age','ted\x20conn','disable','ncent-do','nstall','resource','feishu','mand','tateDir','-session','onfig\x20up','Session','\x20CLI\x20wra','nnel','clawspac','l\x20first','stopped\x20','elConfig','deletedS','nConfig','defaults','openDire','quit','get','te:get-s','wujie-sh','json','eated','plugin\x20c','Terminal','runtime:','.gif','peratedM','ready','devtools','stomMode','CommandO','entExmai','inned','emoji','map','rver','ot\x20start','getVersi','aseMailC',':input','pop','level','file\x20wri','some','parseInt','rocess-g','will-qui','setSelec','-request','number','uit:\x20sto','writeSha','entDocsC','nt]','Not\x20foun','vate','tabs:nav',':diagnos','tChannel','ources','filter','saveNetE',':agent-m','maximize','[wujie-s','Version','before-i','bin','inimize','FeishuDo','saveQqbo','lt\x20model','kgroundC','agents-u','#!/bin/s','\x20is\x20requ','agent-','dev','parentSe','hell:eve','product-','match','keyDown','parse','assign',':choose','open\x20ext','d-local','app:upda','hell:ipc','filePath','uri','cron:rem','logs:wri','tLogs','ai.com/v','CliConne','cron:cre','th\x20is\x20re','deleteIm','ustom-mo','ed:\x20','ure','tatus','hideBySe','rated-fi','director','pdate','s:upsert','-context','register','nectorCo','agent-ev','logs:exp','getAppPa','nabled','patch','showSave','video/we','-restart','href','eam-even','config:c','ndows','gatewayP','HEAD','rayOnClo','initiali','ileName','title','-invalid','app:info','10975527oDFTYK','indexOf','irectory','customMo','tf-8','elSessio','agent\x20al','-exit','meta','\x20gone','isFinite','tabs:req','session-','igWriteH','activate','.ogg','limit','cle','ignore','onfig','ccept-ra','toISOStr','\x20a\x20provi',':save-di','object','app:gene','uired','Keys','alized','e\x20direct','render-p','ell\x20gate','setOpenC','models',':choose-','illEntry','method','-once','lawChann','e\x20url','cancelFe','isMaximi','saveQqMa','D,\x20OPTIO','model\x20ht','e:direct','SchemesA','dataDir','extensio','agents:c','ey\x20is\x20re','ipc_requ','tabs:ref','isDirect','logs\x20exp','default','sConnect','ies','gin','avatar','select\x20d','nt-state','chat','n\x20failed','cron','ls:list','ettings','chatChan','failed','hecks','2564322VDCBgZ','saveFeis','wechat','openAtLo','openExte','gatewayT','saveKdoc','create','lastInde','open','window:m','audio/wa','window:o','roductDa','com-chan','hide','split','keys','atus','close','replace','versions','includes','ProductR','channelI','find','child\x20pr','\x20to\x20load','roductCo','ated','text/mar','ChannelC','messages','logs\x20dir','focus','ready\x20ex','select\x20f','nel','video/mp','text','bytes\x20*/','est\x20fail','models:s','folder','Entry','lect-dir','video/qu','ged','230FWNCZS','1012683NHutWM','Unsuppor','stion','igate','resh-age','filters','defaultF','IPC\x20requ',':resize',':pin','.mp4','uit','startsWi','shared-c','.m4a','InFolder','cron:log','xOf','plugins','setName','audio/mp','ontents','ishuDocC','audio/fl','getPath','all','3254440kanAmW','setSelfO','.svg','maxEntri','cwd','\x20not\x20con','pluginId','tup:set','dated','-status','ipc','way\x20is\x20n','projectR','ory-info','orConfig','.aac','primary','range,\x20c','groups','config:i','saveTenc','e:open-d',':unpin','dels','image/bm','mail','.webm','app:tray','ot\x20initi','setImCha','et-self-','\x20process','sessions','\x20complet','then','i-window','updateOp','.jpg','lawSkill','unregist','start','ector\x20se','isFile','startFei','.mp3','s:reveal','ilConnec','kdown;\x20c','string','required','iled\x20to\x20','ell\x20boot','appId','text/pla','tabs:pos','ectory','selected','figured:','ion/octe','getURL','Observed','lConnect','error','kdocs',':rename','listImCh','-logs','ntime','agent_id','pened','-shortcu','audio/og','reorderP','app:clip','-life-cy','oken','showOpen','renderer','resize','window_f','ist','ion','app:file','-data','preferen','tory','cancelKd','meFilter','showItem','image/gi','ame','recursiv','migrateP','unhandle','annelCon','-questio','api.open','ndow','d-state','dispose','logs:rea','-port','cron:run','app.asar','stration','ions-lis','dist','#0000000','em:open-','plugin\x20d','code','ase','ngtalk-d','and-inst','openDevT','redConte','red;\x20set','ncident','lawPlugi','chrome','g_conten','unref','logs:ope','ections','ory',':gateway','\x20request','targetDi','ces.json','dled-res','reload','ap:get','ap:upser','plugins:','7876YXDLGn','app_acti','nfo','handle','skills:d','terminal','readConf','quitAndI','unmaximi','+Shift+I','ings','matroska','Config','ove','les:dele','\x20main\x20bo','tate','ngs','deleteFi','Exceptio','untimeHa','pdated','getPinne',':start','runtime\x20','omModel','d\x20comple','files:se','apiKey','before\x20q','9675168rsxcNE','ig\x20is\x20no','timeout','ocess-go','ector:\x20',':save-qq','ernal\x20ur','ell\x20conf','resolveS','h\x0aexec\x20\x22','path\x20is\x20','sessionK','agents','requestB','6IkEfFD','gateway\x20','tic',':save-ne','files:re','-token','n\x20not\x20fo','\x20shortcu','maxToken','les:upse','ctory','ternally','window-a','catch','uDocCliC','main\x20win','ile\x20read','record','pping\x20ga','ocsCliCo','der/mode','s:hide','context','isPackag','tus','pathname','now','skills:s','set','nnectSes','input','applicat','upsert','sidebar','zed','agent\x20id','elete','281716USPukL','ssion:\x20','succeede','function','leted','files:wr','d\x20failed','provider',':save','enable','msvideo','ll-close','install','d\x20is\x20req','ools','app:star','captureI','set=utf-','lConfig','ists','hell]\x20fa','writeCon','ing','headers','min','update','yed','led','nts','utf8','ot\x20faile','harset=u','index.ht','les:list','deleteCu','artifact','multiSel','skills','\x20configu','length','binary\x20f','ired','temperat','webConte','imePlugi','Custom',':run-onc','length,\x20','lawMcpSe','orted','kUserQue','em:resta','paths','isIntege','getAllWi','lized','reasonin','customNa','file\x20rea','.flac','ctron\x20ma','ackgroun','\x20failed:','range','name','stop','andledIn','setLogin','gateway-','getFeish','index.mj','ted-ever','ssion','model','fig','agentId','path','agent','ionEntry','test',':status','enClawMc','/chat/co','url','electron','shuDocCl','size','\x20excepti','chat:abo',':close','writeEve','ensureIn','ent',':create',':runtime','workspac','deleteOp','t:\x20','creating','hatChann',':get-clo','talkDocC','m-channe','-by-sess',':save-fe','promises','saveDing','.\x20Run\x20wu','controll','sync-bun','est\x20comp','ocs','\x20log','itialize','ncent-ex','et-selec','getState','ectSessi','tabs-com','enClawCh','openPath','nput-eve',':cancel','eted','markConf','sender','files','slice','.mov','before-q','download','fromWebC','darwin','updated','GET,\x20HEA','warn','trim','image/sv','.bmp','platform','prod','product\x20','model-id','isDestro','ocess\x20go','type','update-c','dRejecti','huChanne','one','oot','content-','est\x20star','toWeb','ndlers','mChannel','skills:i','ell-cli.','byteLeng','et-setti'];_0x43ff=function(){return _0x3f86b1;};return _0x43ff();}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';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';function _0x18c1(_0xa6b2c,_0x4c82cf){_0xa6b2c=_0xa6b2c-0x19d;const _0x43ffd5=_0x43ff();let _0x18c1cf=_0x43ffd5[_0xa6b2c];return _0x18c1cf;}import{createUpdateController}from'../updates/controller.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,'preload.'+_0x39b169(0x453)),{app,BrowserWindow,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x275b0d,DEVTOOLS_ACCELERATOR=_0x39b169(0x1d2)+_0x39b169(0x4a6)+_0x39b169(0x358),CLAWSPACE_PROTOCOL_SCHEME=_0x39b169(0x1bc)+'e',DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!=='producti'+'on',LOCAL_FILE_MIME_TYPES=new Map([['.txt','text/pla'+_0x39b169(0x456)+_0x39b169(0x3b1)+'8'],[_0x39b169(0x48e),_0x39b169(0x29c)+_0x39b169(0x2f8)+_0x39b169(0x3bf)+_0x39b169(0x23c)],[_0x39b169(0x2ee),_0x39b169(0x45b)+'eg'],['.jpeg',_0x39b169(0x45b)+'eg'],['.png',_0x39b169(0x48d)+'g'],[_0x39b169(0x1cd),_0x39b169(0x322)+'f'],[_0x39b169(0x42a),_0x39b169(0x2e1)+'p'],[_0x39b169(0x2cb),_0x39b169(0x429)+'g+xml'],[_0x39b169(0x48b),'image/we'+'bp'],[_0x39b169(0x2b9),_0x39b169(0x2a4)+'4'],[_0x39b169(0x420),_0x39b169(0x2ac)+'icktime'],['.avi',_0x39b169(0x497)+_0x39b169(0x3aa)],['.mkv',_0x39b169(0x497)+_0x39b169(0x35a)],[_0x39b169(0x2e3),_0x39b169(0x22a)+'bm'],[_0x39b169(0x2f5),'audio/mp'+'eg'],['.wav',_0x39b169(0x289)+'v'],[_0x39b169(0x2bd),_0x39b169(0x2c3)+'4'],[_0x39b169(0x2d8),'audio/aa'+'c'],[_0x39b169(0x247),_0x39b169(0x310)+'g'],[_0x39b169(0x3db),_0x39b169(0x2c6)+'ac']]);protocol[_0x39b169(0x222)+_0x39b169(0x266)+'sPrivile'+_0x39b169(0x2ad)]([{'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(_0x43c0f6){const _0x6c276d=_0x39b169;for(const _0x3e03fe of['gateway-'+'status',_0x6c276d(0x3e4)+'log','chat-str'+_0x6c276d(0x22d)+'t',_0x6c276d(0x244)+_0x6c276d(0x425),_0x6c276d(0x2e9)+_0x6c276d(0x236)+_0x6c276d(0x29b),_0x6c276d(0x224)+_0x6c276d(0x3fc),_0x6c276d(0x1fd)+_0x6c276d(0x364),_0x6c276d(0x4ad)+'-questio'+'n']){_0x43c0f6['on'](_0x3e03fe,_0x3f05c7=>broadcast(_0x3e03fe,_0x3f05c7));}}function ensureSessionSqliteStore(){const _0x300ec1=_0x39b169;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error(_0x300ec1(0x1c7)+_0x300ec1(0x374)+_0x300ec1(0x36e)+'t\x20initia'+_0x300ec1(0x3d7));return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController[_0x300ec1(0x375)+_0x300ec1(0x1b6)]()}),sessionSqliteStore;}function ensureGeneratedFilesStore(){const _0xb2c450=_0x39b169;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error(_0xb2c450(0x1c7)+_0xb2c450(0x374)+'ig\x20is\x20no'+'t\x20initia'+_0xb2c450(0x3d7));return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController[_0xb2c450(0x375)+_0xb2c450(0x1b6)]()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0x5aeb1e=_0x39b169;if(gatewayController)return gatewayController;if(!shellConfig||!configController)throw new Error(bootError?_0x5aeb1e(0x1c7)+_0x5aeb1e(0x2fc)+_0x5aeb1e(0x3de)+'\x20'+bootError:_0x5aeb1e(0x1c7)+_0x5aeb1e(0x257)+_0x5aeb1e(0x2d4)+_0x5aeb1e(0x2e5)+'alized');return mainLogger?.[_0x5aeb1e(0x427)]('gateway\x20'+_0x5aeb1e(0x40c)+'er\x20missi'+_0x5aeb1e(0x49f)+_0x5aeb1e(0x47d)),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x5aeb1e(0x1d9)+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController),await gatewayController[_0x5aeb1e(0x2f1)](),gatewayController;}function getMode(){const _0x39f9be=_0x39b169;return process.env.VITE_DEV_SERVER_URL?_0x39f9be(0x201):_0x39f9be(0x42c);}function isGatewayNotInitializedError(_0x48f100){const _0x13f155=_0x39b169;return _0x48f100 instanceof Error&&_0x48f100[_0x13f155(0x495)]===_0x13f155(0x1c7)+'ell\x20gate'+_0x13f155(0x2d4)+_0x13f155(0x2e5)+_0x13f155(0x254);}function revealPathInFolder(_0x370cb5){const _0x3a0d51=_0x39b169,_0x4f7306=String(_0x370cb5||'')[_0x3a0d51(0x428)]();if(!_0x4f7306)return{'ok':![],'error':_0x3a0d51(0x377)+_0x3a0d51(0x2fa)};return shell[_0x3a0d51(0x321)+_0x3a0d51(0x2be)](_0x4f7306),{'ok':!![]};}function resolveProjectRoot(){const _0x5e618b=_0x39b169;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app[_0x5e618b(0x392)+'ed']&&process[_0x5e618b(0x1b3)+'sPath'])return join(process[_0x5e618b(0x1b3)+'sPath'],_0x5e618b(0x330));return resolve(process[_0x5e618b(0x2cd)]());}function getLocalFileMimeType(_0x217f24){const _0x1622d0=_0x39b169;return LOCAL_FILE_MIME_TYPES['get'](_0x217f24[_0x1622d0(0x41f)](_0x217f24[_0x1622d0(0x286)+_0x1622d0(0x2c0)]('.'))[_0x1622d0(0x49d)+'ase']())||_0x1622d0(0x39a)+_0x1622d0(0x303)+_0x1622d0(0x1a5);}function parseSingleRangeHeader(_0x3cdc1a,_0x4bffd8){const _0x4be3d1=_0x39b169,_0x153f61=/^bytes=(\d*)-(\d*)$/i['exec'](_0x3cdc1a['trim']());if(!_0x153f61)return null;const [,_0x111968,_0x2980cf]=_0x153f61;if(!_0x111968&&!_0x2980cf)return null;if(!_0x111968){const _0x3c6405=Number['parseInt'](_0x2980cf,0xa);if(!Number[_0x4be3d1(0x242)](_0x3c6405)||_0x3c6405<=0x0)return null;const _0x41b9f1=Math['max'](_0x4bffd8-_0x3c6405,0x0);return{'start':_0x41b9f1,'end':_0x4bffd8-0x1};}const _0x267c45=Number['parseInt'](_0x111968,0xa);if(!Number[_0x4be3d1(0x242)](_0x267c45)||_0x267c45<0x0||_0x267c45>=_0x4bffd8)return null;const _0x12c350=_0x2980cf?Number[_0x4be3d1(0x1e0)](_0x2980cf,0xa):_0x4bffd8-0x1;if(!Number[_0x4be3d1(0x242)](_0x12c350)||_0x12c350<_0x267c45)return null;return{'start':_0x267c45,'end':Math[_0x4be3d1(0x3b8)](_0x12c350,_0x4bffd8-0x1)};}function decodeClawspacePath(_0x403b2e){const _0xa49a72=_0x39b169;try{const _0x49fb2e=new URL(_0x403b2e);if(_0x49fb2e['protocol']!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x49fb2e[_0xa49a72(0x488)]!=='local')return null;const _0x218f4a=decodeURIComponent(_0x49fb2e[_0xa49a72(0x394)]);if(!_0x218f4a)return null;if(/^\/[A-Za-z]:\//[_0xa49a72(0x3ef)](_0x218f4a))return _0x218f4a[_0xa49a72(0x41f)](0x1);return _0x218f4a;}catch{return null;}}function createClawspaceHeaders(_0x192e0f={}){const _0x5c6d36=_0x39b169;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':_0x5c6d36(0x426)+_0x5c6d36(0x263)+'NS','access-control-allow-headers':_0x5c6d36(0x2da)+'ontent-t'+_0x5c6d36(0x470),'access-control-expose-headers':_0x5c6d36(0x437)+_0x5c6d36(0x3cf)+_0x5c6d36(0x437)+'range,\x20a'+_0x5c6d36(0x24c)+_0x5c6d36(0x479),..._0x192e0f});}function createLocalFileResponse(_0x1a9ed,_0x56ecce){const _0x9c50ac=_0x39b169,_0x2b1038=statSync(_0x56ecce);if(!_0x2b1038[_0x9c50ac(0x2f3)]())return new Response(_0x9c50ac(0x1ea)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x9c50ac(0x2fe)+_0x9c50ac(0x456)+_0x9c50ac(0x3b1)+'8'})});const _0x33e3e1=getLocalFileMimeType(_0x56ecce),_0x57e83c=createClawspaceHeaders({'content-type':_0x33e3e1,'accept-ranges':_0x9c50ac(0x47f),'cache-control':'no-store'});if(_0x1a9ed[_0x9c50ac(0x25c)]===_0x9c50ac(0x231))return _0x57e83c[_0x9c50ac(0x397)](_0x9c50ac(0x437)+_0x9c50ac(0x3c7),String(_0x2b1038[_0x9c50ac(0x3f6)])),new Response(null,{'status':0xc8,'headers':_0x57e83c});const _0x3b1780=_0x1a9ed[_0x9c50ac(0x3b7)][_0x9c50ac(0x1c5)](_0x9c50ac(0x3df));if(!_0x3b1780)return _0x57e83c[_0x9c50ac(0x397)](_0x9c50ac(0x437)+_0x9c50ac(0x3c7),String(_0x2b1038['size'])),new Response(Readable[_0x9c50ac(0x439)](createReadStream(_0x56ecce)),{'status':0xc8,'headers':_0x57e83c});const _0x5cbc74=parseSingleRangeHeader(_0x3b1780,_0x2b1038[_0x9c50ac(0x3f6)]);if(!_0x5cbc74)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object['fromEntr'+_0x9c50ac(0x271)](_0x57e83c[_0x9c50ac(0x494)]()),'content-range':_0x9c50ac(0x2a6)+_0x2b1038['size']})});const {start:_0xde29ea,end:_0x2ae694}=_0x5cbc74,_0x5ae03c=_0x2ae694-_0xde29ea+0x1,_0x297c2f=new Headers(_0x57e83c);return _0x297c2f[_0x9c50ac(0x397)](_0x9c50ac(0x437)+'length',String(_0x5ae03c)),_0x297c2f[_0x9c50ac(0x397)](_0x9c50ac(0x437)+_0x9c50ac(0x3df),'bytes\x20'+_0xde29ea+'-'+_0x2ae694+'/'+_0x2b1038['size']),new Response(Readable[_0x9c50ac(0x439)](createReadStream(_0x56ecce,{'start':_0xde29ea,'end':_0x2ae694})),{'status':0xce,'headers':_0x297c2f});}function installClawspaceProtocolHandler(){const _0x13b063=_0x39b169;protocol[_0x13b063(0x352)](CLAWSPACE_PROTOCOL_SCHEME,_0x5f4ef2=>{const _0x87b427=_0x13b063;if(_0x5f4ef2[_0x87b427(0x25c)]==='OPTIONS')return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x216c34=decodeClawspacePath(_0x5f4ef2[_0x87b427(0x3f3)]);if(!_0x216c34)return new Response(_0x87b427(0x44a)+_0x87b427(0x1bc)+_0x87b427(0x25f),{'status':0x190,'headers':createClawspaceHeaders({'content-type':'text/pla'+_0x87b427(0x456)+_0x87b427(0x3b1)+'8'})});if(!existsSync(_0x216c34))return new Response(_0x87b427(0x1ea)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x87b427(0x2fe)+_0x87b427(0x456)+_0x87b427(0x3b1)+'8'})});return createLocalFileResponse(_0x5f4ef2,_0x216c34);});}function broadcast(_0x3656c3,_0x44e789){const _0x2c3a19=_0x39b169;DEBUG_STDOUT&&console[_0x2c3a19(0x46d)](_0x2c3a19(0x1f4)+_0x2c3a19(0x203)+_0x2c3a19(0x1e9),_0x3656c3,summarizePayload(_0x44e789,{'maxDepth':0x2}));for(const _0x511d9f of BrowserWindow['getAllWi'+_0x2c3a19(0x22f)]()){!_0x511d9f[_0x2c3a19(0x3cb)+_0x2c3a19(0x3bc)]['isDestro'+_0x2c3a19(0x3ba)]()&&_0x511d9f[_0x2c3a19(0x3cb)+_0x2c3a19(0x3bc)][_0x2c3a19(0x492)](_0x2c3a19(0x1c7)+_0x2c3a19(0x1a6)+'t',{'name':_0x3656c3,'payload':_0x44e789});}}async function loadProductRuntime(){const _0x4decd3=_0x39b169,_0x153e29=[join(shellConfig[_0x4decd3(0x2d5)+'oot'],'shell-ru'+_0x4decd3(0x30c),_0x4decd3(0x3e6)+'s'),join(app[_0x4decd3(0x226)+'th'](),'shell-ru'+_0x4decd3(0x30c),_0x4decd3(0x3e6)+'s')],_0x57e94c=_0x153e29[_0x4decd3(0x297)](_0x5a2d01=>existsSync(_0x5a2d01));if(!_0x57e94c)return mainLogger?.[_0x4decd3(0x46d)](_0x4decd3(0x42d)+_0x4decd3(0x367)+_0x4decd3(0x268)+_0x4decd3(0x381)+'und',{'runtimeCandidates':_0x153e29}),{};try{const _0x1cf4a8=await import(pathToFileURL(_0x57e94c)[_0x4decd3(0x22c)]);return mainLogger?.['info']('product\x20'+'runtime\x20'+_0x4decd3(0x268)+'n\x20loaded',{'runtimePath':_0x57e94c}),_0x1cf4a8;}catch(_0x4515f5){mainLogger?.[_0x4decd3(0x307)](_0x4decd3(0x42d)+_0x4decd3(0x367)+_0x4decd3(0x268)+_0x4decd3(0x277)+_0x4decd3(0x299),{'runtimePath':_0x57e94c,'error':summarizeError(_0x4515f5)});throw _0x4515f5;}}function openDevToolsForActiveContext(){const _0x5c4fa2=_0x39b169,_0x16bd7e=BrowserWindow[_0x5c4fa2(0x47c)+'edWindow']()||mainWindow;if(!_0x16bd7e||_0x16bd7e[_0x5c4fa2(0x42f)+_0x5c4fa2(0x3ba)]())return{'ok':![]};return _0x16bd7e[_0x5c4fa2(0x3cb)+'nts']['openDevT'+'ools']({'mode':_0x5c4fa2(0x472)}),_0x16bd7e[_0x5c4fa2(0x3cb)+_0x5c4fa2(0x3bc)][_0x5c4fa2(0x492)](_0x5c4fa2(0x1c7)+_0x5c4fa2(0x1a6)+'t',{'name':_0x5c4fa2(0x1d0)+_0x5c4fa2(0x30f)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0xc56334=_0x39b169;globalShortcut[_0xc56334(0x2f0)+'er'](DEVTOOLS_ACCELERATOR);const _0x5c117f=globalShortcut[_0xc56334(0x222)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x5c117f&&console[_0xc56334(0x427)](_0xc56334(0x1f4)+'hell]\x20fa'+_0xc56334(0x2fb)+_0xc56334(0x222)+_0xc56334(0x382)+_0xc56334(0x401)+DEVTOOLS_ACCELERATOR);}async function getRuntimeResourceStatus(){const _0x391aa9=_0x39b169;try{const _0x49a48a=await loadRuntimeInfo(shellConfig[_0x391aa9(0x2d5)+_0x391aa9(0x436)]),_0x49c34d=_0x49a48a['manifest']||{};return{'ok':!![],'runtimeRoot':_0x49a48a[_0x391aa9(0x445)+_0x391aa9(0x436)],'openclawVersion':_0x49a48a['openclaw'+_0x391aa9(0x1f5)],'generatedAt':_0x49c34d['generate'+'dAt']||null,'pluginCount':Array[_0x391aa9(0x45d)](_0x49c34d[_0x391aa9(0x2c1)])?_0x49c34d[_0x391aa9(0x2c1)][_0x391aa9(0x3c7)]:0x0,'plugins':Array[_0x391aa9(0x45d)](_0x49c34d[_0x391aa9(0x2c1)])?_0x49c34d[_0x391aa9(0x2c1)]:[],'agents':_0x49c34d['agents']||null,'skills':_0x49c34d[_0x391aa9(0x3c5)]||null,'wrapper':_0x49c34d[_0x391aa9(0x45f)+_0x391aa9(0x4b0)]||null,'product':_0x49c34d['product']||null};}catch(_0x38e779){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.[_0x391aa9(0x2d5)+_0x391aa9(0x436)]||resolveProjectRoot()),'error':_0x38e779 instanceof Error?_0x38e779[_0x391aa9(0x495)]:String(_0x38e779)};}}async function createWindow(){const _0x50bbaa=_0x39b169,_0x482c35=process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x50bbaa(0x2d5)+_0x50bbaa(0x436)],_0x50bbaa(0x333),_0x50bbaa(0x3c0)+'ml'),_0x3465d3=process[_0x50bbaa(0x42b)]==='darwin';mainLogger?.['info'](_0x50bbaa(0x402)+'\x20main\x20wi'+_0x50bbaa(0x32a),{'rendererUrl':_0x482c35,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x50bbaa(0x449)+_0x50bbaa(0x323)],'backgroundColor':_0x3465d3?_0x50bbaa(0x334)+'0':'#f8fafc','titleBarStyle':_0x3465d3?_0x50bbaa(0x47e):_0x50bbaa(0x26f),..._0x3465d3?{'titleBarOverlay':!![],'trafficLightPosition':{'x':0x10,'y':0xc}}:{},..._0x3465d3?{'vibrancy':_0x50bbaa(0x39c)}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}}),mainWindow[_0x50bbaa(0x3cb)+_0x50bbaa(0x3bc)]['on'](_0x50bbaa(0x1f6)+_0x50bbaa(0x419)+'nt',_0x1269c7=>{const _0x2419f5=_0x50bbaa,_0x1610de=_0x1269c7['input'];if(!_0x1610de||_0x1610de[_0x2419f5(0x431)]!==_0x2419f5(0x206))return;const _0x5a6ffb=String(_0x1610de['key']||'')['toLowerC'+_0x2419f5(0x338)](),_0x50daab=_0x5a6ffb==='r',_0x2b6b0d=process[_0x2419f5(0x42b)]===_0x2419f5(0x424)?_0x1610de[_0x2419f5(0x240)]===!![]:_0x1610de['control']===!![];if(!_0x50daab||!_0x2b6b0d)return;_0x1269c7['preventD'+_0x2419f5(0x19d)](),broadcast(_0x2419f5(0x416)+_0x2419f5(0x1b5),{'type':'navigati'+'on','action':_0x2419f5(0x34b)});}),mainWindow['on'](_0x50bbaa(0x2a0),()=>{const _0x566c8f=_0x50bbaa;updateController?.[_0x566c8f(0x37a)+_0x566c8f(0x3dd)+_0x566c8f(0x451)](_0x566c8f(0x318)+_0x566c8f(0x4b1));});const _0x26e9f2=process.env.VITE_DEV_SERVER_URL;_0x26e9f2?(await mainWindow['loadURL'](_0x26e9f2),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow['webConte'+'nts'][_0x50bbaa(0x33b)+_0x50bbaa(0x3ae)]({'mode':_0x50bbaa(0x472)})):await mainWindow[_0x50bbaa(0x4a0)](join(shellConfig[_0x50bbaa(0x2d5)+_0x50bbaa(0x436)],_0x50bbaa(0x333),_0x50bbaa(0x3c0)+'ml')),mainLogger?.['info'](_0x50bbaa(0x38a)+'dow\x20load'+'ed',{'rendererUrl':_0x482c35,'mode':getMode()});}async function installIpcHandlers(){const _0x4de81a=_0x39b169,_0x248b9f=(_0x1f8083,_0x23ab54)=>{const _0x42d9fa=_0x18c1;ipcMain[_0x42d9fa(0x352)](_0x1f8083,async(_0x127841,_0x4079d2)=>{const _0x401fc6=_0x42d9fa,_0x4af24d=Date[_0x401fc6(0x395)](),_0xd892ad=_0x127841['senderFr'+_0x401fc6(0x323)]?.['url']||_0x127841[_0x401fc6(0x41d)]['getURL']();ipcLogger?.[_0x401fc6(0x46d)](_0x401fc6(0x478)+_0x401fc6(0x438)+_0x401fc6(0x480),{'channel':_0x1f8083,'senderUrl':_0xd892ad,'payload':summarizePayload(_0x4079d2)});DEBUG_STDOUT&&console[_0x401fc6(0x46d)]('[wujie-s'+_0x401fc6(0x20d)+']',_0x1f8083,'started',summarizePayload(_0x4079d2));try{let _0x1ed8ca;try{_0x1ed8ca=await _0x23ab54(_0x127841,_0x4079d2);}catch(_0x2abbae){if(!isGatewayNotInitializedError(_0x2abbae))throw _0x2abbae;await ensureGatewayControllerStarted(),_0x1ed8ca=await _0x23ab54(_0x127841,_0x4079d2);}const _0x30ebae=Date['now']()-_0x4af24d;return ipcLogger?.['info']('ipc\x20requ'+_0x401fc6(0x40e)+'leted',{'channel':_0x1f8083,'durationMs':_0x30ebae,'result':summarizePayload(_0x1ed8ca,{'maxDepth':0x2})}),await userEventWriter?.['fromIpc']({'channel':_0x1f8083,'payload':_0x4079d2,'result':_0x1ed8ca,'durationMs':_0x30ebae,'status':_0x401fc6(0x3a2)+'d'}),DEBUG_STDOUT&&console[_0x401fc6(0x46d)]('[wujie-s'+'hell:ipc'+']',_0x1f8083,_0x401fc6(0x489)+'d',summarizePayload(_0x1ed8ca,{'maxDepth':0x2})),_0x1ed8ca;}catch(_0x353770){const _0x23bde2=Date[_0x401fc6(0x395)]()-_0x4af24d;ipcLogger?.[_0x401fc6(0x307)]('ipc\x20requ'+'est\x20fail'+'ed',{'channel':_0x1f8083,'durationMs':_0x23bde2,'error':summarizeError(_0x353770)}),await userEventWriter?.['fromIpc']({'channel':_0x1f8083,'payload':_0x4079d2,'error':_0x353770,'durationMs':_0x23bde2,'status':_0x401fc6(0x27c)}),await diagnosticsWriter?.['captureI'+_0x401fc6(0x33e)](diagnosticEventFromError(_0x353770,{'category':_0x401fc6(0x2d3),'event':_0x401fc6(0x26b)+'est_fail'+'ed','message':_0x401fc6(0x2b6)+_0x401fc6(0x2a7)+_0x401fc6(0x219)+_0x1f8083,'durationMs':_0x23bde2,'meta':{'channel':_0x1f8083,'senderUrl':_0xd892ad,'payload':summarizePayload(_0x4079d2)}}));DEBUG_STDOUT&&console[_0x401fc6(0x307)](_0x401fc6(0x1f4)+_0x401fc6(0x20d)+']',_0x1f8083,_0x401fc6(0x27c),summarizeError(_0x353770));throw _0x353770;}});},_0x76f3db=()=>{const _0x3c302a=_0x18c1;if(!gatewayController)throw new Error(bootError?'wujie-sh'+_0x3c302a(0x2fc)+'\x20failed:'+'\x20'+bootError:_0x3c302a(0x1c7)+'ell\x20gate'+_0x3c302a(0x2d4)+_0x3c302a(0x2e5)+_0x3c302a(0x254));return gatewayController;},_0x21b7c1=()=>{const _0x3d8625=_0x18c1;if(typeof productRuntime[_0x3d8625(0x222)+_0x3d8625(0x295)+_0x3d8625(0x363)+_0x3d8625(0x43a)]!==_0x3d8625(0x3a3))return;const _0x5792a3=productRuntime['register'+'ProductR'+_0x3d8625(0x363)+_0x3d8625(0x43a)]({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0x248b9f,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0x76f3db,'sep':sep,'openClawConfigHandlers':{'update':(..._0x15505e)=>configController['updateOp'+_0x3d8625(0x49e)+_0x3d8625(0x465)](..._0x15505e),'setPluginConfig':_0x42dc9e=>configController[_0x3d8625(0x258)+'lawPlugi'+'nConfig'](_0x42dc9e),'setChannelConfig':_0x339c85=>configController[_0x3d8625(0x258)+_0x3d8625(0x25e)+'elConfig'](_0x339c85),'deleteChannelConfig':_0x3fb42e=>configController['deleteOp'+_0x3d8625(0x417)+'annelCon'+_0x3d8625(0x3ea)](_0x3fb42e),'setSkillEntry':_0x66bedd=>configController[_0x3d8625(0x258)+_0x3d8625(0x2ef)+_0x3d8625(0x2aa)](_0x66bedd),'deleteSkillEntry':_0x565078=>configController['deleteOp'+_0x3d8625(0x49b)+_0x3d8625(0x25b)](_0x565078),'setMcpServer':_0x33523c=>configController[_0x3d8625(0x258)+'lawMcpSe'+_0x3d8625(0x1d7)](_0x33523c),'deleteMcpServer':_0x35fcfd=>configController[_0x3d8625(0x400)+_0x3d8625(0x3f1)+_0x3d8625(0x4b2)](_0x35fcfd)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x297ebb})||{};Object[_0x3d8625(0x208)](productRuntimeHooks,_0x5792a3);};_0x248b9f(_0x4de81a(0x237),async()=>({'name':shellConfig[_0x4de81a(0x449)+'ame'],'version':app[_0x4de81a(0x1d9)+'on'](),'appId':shellConfig[_0x4de81a(0x2fd)],'dataDir':shellConfig[_0x4de81a(0x267)]})),_0x248b9f('app:open'+_0x4de81a(0x49a),async(_0x39787d,_0x2835ea)=>{const _0x266801=_0x4de81a,_0x51ea20=typeof _0x2835ea==='string'?_0x2835ea:'';if(!_0x51ea20)return{'ok':![]};return filesLogger?.[_0x266801(0x46d)](_0x266801(0x20a)+_0x266801(0x373)+_0x266801(0x482)+_0x266801(0x480),{'url':summarizeText(_0x51ea20,0xa0)}),await shell[_0x266801(0x282)+'rnal'](_0x51ea20),{'ok':!![]};});const _0x297ebb=async(_0x46510c,_0x40ccf1)=>{const _0xc17578=_0x4de81a;return configController[_0xc17578(0x41c)+_0xc17578(0x245)+_0xc17578(0x3e2)+_0xc17578(0x386)](),await configController[_0xc17578(0x3b5)+'fig'](_0x46510c,_0x40ccf1),{'ok':!![]};};_0x21b7c1(),_0x248b9f('skills:i'+_0x4de81a(0x4ab)+'p',async(_0x2624b6,_0x34f38b)=>importMarketSkillZip({'payload':_0x34f38b,'importSkillZip':_0x46586c=>importSkillZip({..._0x46586c,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow['fromWebC'+_0x4de81a(0x2c4)](_0x2624b6[_0x4de81a(0x41d)])||mainWindow,'configController':configController}),'configController':configController})),_0x248b9f('skills:u'+_0x4de81a(0x21f),(_0x26ee52,_0x4a220c)=>updateManagedSkillConfig({'payload':_0x4a220c,'configController':configController})),_0x248b9f(_0x4de81a(0x353)+_0x4de81a(0x39f),(_0x388109,_0x11a2c1)=>deleteMarketSkillRegistryEntry({'payload':_0x11a2c1,'deleteManagedSkill':_0x33578a=>deleteManagedSkill({..._0x33578a,'gateway':_0x76f3db(),'configController':configController}),'configController':configController}));const _0x67e03b=ensureGeneratedFilesStore();_0x248b9f(_0x4de81a(0x251)+_0x4de81a(0x21d)+_0x4de81a(0x3c1),async()=>_0x67e03b[_0x4de81a(0x44d)]()),_0x248b9f(_0x4de81a(0x251)+_0x4de81a(0x21d)+_0x4de81a(0x384)+'rt',async(_0x2d1ed4,_0x33d3ab={})=>_0x67e03b[_0x4de81a(0x39b)](_0x33d3ab)),_0x248b9f(_0x4de81a(0x251)+'rated-fi'+'les:hide',async(_0x4168da,_0x1aadb1)=>_0x67e03b[_0x4de81a(0x28d)](String(_0x1aadb1||''))),_0x248b9f(_0x4de81a(0x251)+_0x4de81a(0x21d)+_0x4de81a(0x452)+_0x4de81a(0x407)+'ion',async(_0x26fd3a,_0x5e6f60)=>_0x67e03b[_0x4de81a(0x21c)+_0x4de81a(0x3e8)](String(_0x5e6f60||''))),_0x248b9f(_0x4de81a(0x251)+'rated-fi'+_0x4de81a(0x35d)+'te',async(_0x3ec831,_0x3818ef)=>_0x67e03b[_0x4de81a(0x361)+'le'](String(_0x3818ef||''))),_0x248b9f('app:gene'+'rated-fi'+'les:dele'+_0x4de81a(0x496)+'e',async(_0x5c57de,_0x1aca11=[])=>_0x67e03b[_0x4de81a(0x1c0)+_0x4de81a(0x35f)](_0x1aca11)),_0x248b9f(_0x4de81a(0x251)+_0x4de81a(0x21d)+'les:reve'+'al',async(_0x86f8cf,_0x1853c2)=>revealPathInFolder(_0x1853c2)),_0x248b9f('artifact'+_0x4de81a(0x486),async()=>_0x67e03b[_0x4de81a(0x44d)]()),_0x248b9f('artifact'+_0x4de81a(0x220),async(_0x3a87e9,_0x514b8c={})=>_0x67e03b[_0x4de81a(0x39b)](_0x514b8c)),_0x248b9f(_0x4de81a(0x3c3)+_0x4de81a(0x390),async(_0x3adc33,_0x5559fb={})=>_0x67e03b[_0x4de81a(0x28d)](String(_0x5559fb['id']||_0x5559fb||''))),_0x248b9f(_0x4de81a(0x3c3)+_0x4de81a(0x448),async(_0x4b33e4,_0x423298={})=>_0x67e03b[_0x4de81a(0x361)+'le'](String(_0x423298['id']||_0x423298||''))),_0x248b9f('artifact'+_0x4de81a(0x448)+_0x4de81a(0x32b),async(_0x421977,_0x37aaec={})=>_0x67e03b[_0x4de81a(0x1c0)+'tate'](_0x37aaec[_0x4de81a(0x3d4)]||_0x37aaec)),_0x248b9f(_0x4de81a(0x3c3)+_0x4de81a(0x2f6),async(_0x587435,_0xde1b49={})=>{const _0x3115ea=_0x4de81a,_0x7d0ffc=typeof _0xde1b49===_0x3115ea(0x2f9)?_0xde1b49:_0xde1b49[_0x3115ea(0x3ec)]||_0xde1b49[_0x3115ea(0x20f)];return revealPathInFolder(_0x7d0ffc);});const _0x1ee28c=createPreferencesStore({'stateDir':configController[_0x4de81a(0x375)+'tateDir'](),'storeFile':_0x4de81a(0x204)+_0x4de81a(0x31d)+_0x4de81a(0x349)});_0x248b9f(_0x4de81a(0x2e4)+_0x4de81a(0x404)+'se',async()=>_0x1ee28c['get'](_0x4de81a(0x487)+_0x4de81a(0x232)+'se',![])),_0x248b9f(_0x4de81a(0x2e4)+':set-clo'+'se',async(_0x53c8d5,_0x50cd1b)=>_0x1ee28c[_0x4de81a(0x397)]('closeToT'+_0x4de81a(0x232)+'se',_0x50cd1b===!![])),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0x248b9f,'sep':sep,'stateDir':configController[_0x4de81a(0x375)+_0x4de81a(0x1b6)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0x248b9f,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0x248b9f,'modelHandlers':{'saveCustomModel':_0xf32515=>_0x76f3db()['models']['saveCust'+_0x4de81a(0x368)](_0xf32515),'deleteCustomModel':_0x35bfef=>_0x76f3db()[_0x4de81a(0x259)][_0x4de81a(0x3c2)+_0x4de81a(0x1d1)+'l'](_0x35bfef)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x3ca415)=>configController[_0x4de81a(0x2ed)+_0x4de81a(0x49e)+'nfig'](..._0x3ca415),'setPluginConfig':_0x52566a=>configController['setOpenC'+_0x4de81a(0x33f)+_0x4de81a(0x1c1)](_0x52566a),'setChannelConfig':_0x136c7b=>configController[_0x4de81a(0x258)+'lawChann'+_0x4de81a(0x1bf)](_0x136c7b),'deleteChannelConfig':_0x63c391=>configController[_0x4de81a(0x400)+'enClawCh'+'annelCon'+_0x4de81a(0x3ea)](_0x63c391),'setSkillEntry':_0x10f91b=>configController['setOpenC'+_0x4de81a(0x2ef)+_0x4de81a(0x2aa)](_0x10f91b),'deleteSkillEntry':_0x3fc330=>configController[_0x4de81a(0x400)+_0x4de81a(0x49b)+_0x4de81a(0x25b)](_0x3fc330),'setMcpServer':_0x3d0b23=>configController[_0x4de81a(0x258)+_0x4de81a(0x3d0)+'rver'](_0x3d0b23),'deleteMcpServer':_0x398ea9=>configController[_0x4de81a(0x400)+_0x4de81a(0x3f1)+_0x4de81a(0x4b2)](_0x398ea9)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0x248b9f(_0x4de81a(0x2dc)+_0x4de81a(0x406)+_0x4de81a(0x279),async()=>connectorController[_0x4de81a(0x30a)+_0x4de81a(0x327)+'figs']()),_0x248b9f(_0x4de81a(0x2dc)+_0x4de81a(0x406)+'ls:delet'+'e',async(_0x86b740,_0x4ea546={})=>connectorController[_0x4de81a(0x217)+_0x4de81a(0x29d)+_0x4de81a(0x24b)](_0x4ea546)),_0x248b9f(_0x4de81a(0x2dc)+'m-channe'+'ls:set-e'+_0x4de81a(0x227),async(_0x5b9287,_0x3fe61f={})=>connectorController[_0x4de81a(0x2e6)+'nnelEnab'+_0x4de81a(0x3bb)](_0x3fe61f)),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+_0x4de81a(0x3a8),async(_0x48c59e,_0x3069a1={})=>{const _0x2989a4=_0x4de81a,_0x8c9d71=String(_0x3069a1[_0x2989a4(0x296)+'d']||_0x3069a1['payload']?.['channelI'+'d']||_0x3069a1['payload']?.['id']||'');if(!_0x8c9d71)throw new Error(_0x2989a4(0x296)+_0x2989a4(0x3ad)+_0x2989a4(0x252));const _0x14fbe1=_0x3069a1['payload']||_0x3069a1,_0x2174e9={'feishu':connectorController[_0x2989a4(0x27f)+_0x2989a4(0x434)+_0x2989a4(0x3b2)],'qqbot':connectorController[_0x2989a4(0x1fa)+_0x2989a4(0x1ee)+_0x2989a4(0x35b)],'wecom':connectorController['saveWeco'+_0x2989a4(0x43b)+'Config'],'qq_mail':connectorController[_0x2989a4(0x262)+_0x2989a4(0x2f7)+'torConfi'+'g'],'netease_mail':connectorController[_0x2989a4(0x1f1)+_0x2989a4(0x1da)+_0x2989a4(0x44c)+'Config'],'tencent_exmail':connectorController[_0x2989a4(0x2dd)+_0x2989a4(0x1d3)+_0x2989a4(0x306)+_0x2989a4(0x2d7)],'feishu_doc':connectorController[_0x2989a4(0x27f)+_0x2989a4(0x19e)+_0x2989a4(0x223)+_0x2989a4(0x465)],'tencent_docs':connectorController[_0x2989a4(0x2dd)+_0x2989a4(0x1e8)+'onnector'+'Config'],'kdocs':connectorController[_0x2989a4(0x284)+_0x2989a4(0x270)+_0x2989a4(0x2d7)],'dingtalk_doc':connectorController[_0x2989a4(0x40a)+'talkDocC'+_0x2989a4(0x44c)+_0x2989a4(0x35b)]},_0x317d69=_0x2174e9[_0x8c9d71];if(!_0x317d69)throw new Error(_0x2989a4(0x2b0)+_0x2989a4(0x1af)+_0x2989a4(0x371)+_0x8c9d71);return _0x317d69(_0x14fbe1);}),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+_0x4de81a(0x408)+'ishu-cha'+_0x4de81a(0x1bb),async(_0x4c1cd9,_0x4e822c={})=>connectorController[_0x4de81a(0x27f)+_0x4de81a(0x434)+'lConfig'](_0x4e822c)),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+_0x4de81a(0x372)+'bot-chan'+_0x4de81a(0x2a3),async(_0x2ff39b,_0x2df40a={})=>connectorController[_0x4de81a(0x1fa)+'tChannel'+_0x4de81a(0x35b)](_0x2df40a)),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+':save-we'+_0x4de81a(0x28c)+_0x4de81a(0x2a3),async(_0x169696,_0x837405={})=>connectorController['saveWeco'+_0x4de81a(0x43b)+_0x4de81a(0x35b)](_0x837405)),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+':save-qq'+'-mail',async(_0x2b519d,_0x22d38f={})=>connectorController[_0x4de81a(0x262)+'ilConnec'+_0x4de81a(0x4a4)+'g'](_0x22d38f)),_0x248b9f(_0x4de81a(0x22e)+'onnector'+_0x4de81a(0x37e)+'tease-ma'+'il',async(_0x23c3aa,_0x2eff53={})=>connectorController[_0x4de81a(0x1f1)+'aseMailC'+'onnector'+_0x4de81a(0x35b)](_0x2eff53)),_0x248b9f(_0x4de81a(0x22e)+'onnector'+':save-te'+_0x4de81a(0x412)+_0x4de81a(0x2e2),async(_0x1f7354,_0x5afcf6={})=>connectorController[_0x4de81a(0x2dd)+_0x4de81a(0x1d3)+_0x4de81a(0x306)+_0x4de81a(0x2d7)](_0x5afcf6)),_0x248b9f(_0x4de81a(0x22e)+'onnector'+':save-fe'+'ishu-doc',async(_0x17533c,_0x5a0b78={})=>connectorController[_0x4de81a(0x27f)+'huDocCon'+_0x4de81a(0x223)+'nfig'](_0x5a0b78)),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+_0x4de81a(0x467)+_0x4de81a(0x1b1)+'cs',async(_0x467da4,_0x10c360={})=>connectorController[_0x4de81a(0x2dd)+_0x4de81a(0x1e8)+_0x4de81a(0x44c)+_0x4de81a(0x35b)](_0x10c360)),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+_0x4de81a(0x1a4)+_0x4de81a(0x40f),async(_0xf85422,_0x5dc801={})=>connectorController[_0x4de81a(0x284)+_0x4de81a(0x270)+_0x4de81a(0x2d7)](_0x5dc801)),_0x248b9f(_0x4de81a(0x22e)+'onnector'+_0x4de81a(0x24f)+_0x4de81a(0x339)+'oc',async(_0x5daeea,_0x4deb0c={})=>connectorController[_0x4de81a(0x40a)+_0x4de81a(0x405)+_0x4de81a(0x44c)+'Config'](_0x4deb0c)),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+'-session'+_0x4de81a(0x366),async(_0x13e1d4,_0x1e3147={})=>{const _0x3d2a05=_0x4de81a,_0x2c1735=String(_0x1e3147[_0x3d2a05(0x296)+'d']||_0x1e3147[_0x3d2a05(0x431)]||'');if(_0x2c1735===_0x3d2a05(0x308))return connectorController['startKdo'+_0x3d2a05(0x19f)+_0x3d2a05(0x46c)+_0x3d2a05(0x31a)]();if(_0x2c1735===_0x3d2a05(0x1a8)+'oc')return connectorController[_0x3d2a05(0x2f4)+_0x3d2a05(0x3f5)+'iConnect'+_0x3d2a05(0x1b9)]();if(_0x2c1735===_0x3d2a05(0x1b4))return connectorController[_0x3d2a05(0x2f4)+'shuRegis'+_0x3d2a05(0x481)+_0x3d2a05(0x463)](_0x1e3147);if(_0x2c1735==='openclaw'+'-weixin'||_0x2c1735===_0x3d2a05(0x280))return connectorController['startWec'+_0x3d2a05(0x403)+_0x3d2a05(0x23d)+'n']({'gatewayPort':_0x76f3db()[_0x3d2a05(0x230)+'ort'](),'gatewayToken':_0x76f3db()[_0x3d2a05(0x283)+_0x3d2a05(0x314)]()});throw new Error(_0x3d2a05(0x2b0)+_0x3d2a05(0x1af)+_0x3d2a05(0x2f2)+_0x3d2a05(0x3a1)+(_0x2c1735||_0x3d2a05(0x450)));}),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+_0x4de81a(0x1b7)+_0x4de81a(0x3f0),async(_0x11b82c,_0x1029e7={})=>{const _0x45fcfd=_0x4de81a,_0x4fc1bf=String(_0x1029e7['channelI'+'d']||_0x1029e7[_0x45fcfd(0x431)]||'');if(_0x4fc1bf===_0x45fcfd(0x308))return connectorController[_0x45fcfd(0x440)+_0x45fcfd(0x214)+_0x45fcfd(0x462)](_0x1029e7);if(_0x4fc1bf===_0x45fcfd(0x1a8)+'oc')return connectorController[_0x45fcfd(0x3e5)+_0x45fcfd(0x389)+_0x45fcfd(0x1a2)+_0x45fcfd(0x290)](_0x1029e7);if(_0x4fc1bf===_0x45fcfd(0x1b4))return connectorController[_0x45fcfd(0x3e5)+'uRegistr'+_0x45fcfd(0x457)+_0x45fcfd(0x393)](_0x1029e7);throw new Error(_0x45fcfd(0x2b0)+'ted\x20conn'+_0x45fcfd(0x2f2)+_0x45fcfd(0x3a1)+(_0x4fc1bf||_0x45fcfd(0x450)));}),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+_0x4de81a(0x1b7)+_0x4de81a(0x41a),async(_0x3c053f,_0x3e17d1={})=>{const _0xca5e9b=_0x4de81a,_0x444ec9=String(_0x3e17d1[_0xca5e9b(0x296)+'d']||_0x3e17d1[_0xca5e9b(0x431)]||'');if(_0x444ec9===_0xca5e9b(0x308))return connectorController[_0xca5e9b(0x31f)+_0xca5e9b(0x38e)+_0xca5e9b(0x398)+_0xca5e9b(0x45c)](_0x3e17d1);if(_0x444ec9===_0xca5e9b(0x1a8)+'oc')return connectorController[_0xca5e9b(0x260)+_0xca5e9b(0x2c5)+'liConnec'+'tSession'](_0x3e17d1);if(_0x444ec9===_0xca5e9b(0x1b4))return connectorController[_0xca5e9b(0x260)+'ishuRegi'+_0xca5e9b(0x331)+_0xca5e9b(0x1b9)](_0x3e17d1);if(_0x444ec9==='openclaw'+'-weixin'||_0x444ec9==='wechat')return connectorController['cancelWe'+_0xca5e9b(0x27b)+'nelSessi'+'on']();return{'ok':!![]};}),_0x248b9f(_0x4de81a(0x22e)+_0x4de81a(0x44c)+'-session'+':complet'+'e',async(_0x790cfc,_0x16a4cd={})=>{const _0x2b4bf2=_0x4de81a,_0x5e5506=String(_0x16a4cd[_0x2b4bf2(0x296)+'d']||_0x16a4cd[_0x2b4bf2(0x431)]||'');if(_0x5e5506===_0x2b4bf2(0x1a8)+'oc')return connectorController[_0x2b4bf2(0x489)+_0x2b4bf2(0x1f9)+'cCliConn'+_0x2b4bf2(0x415)+'on'](_0x16a4cd);throw new Error(_0x2b4bf2(0x2b0)+_0x2b4bf2(0x1af)+'ector\x20se'+_0x2b4bf2(0x3a1)+(_0x5e5506||'unknown'));}),_0x248b9f('config:r'+_0x4de81a(0x473),()=>connectorController[_0x4de81a(0x355)+'igSnapsh'+'ot']());const _0x3728f8=_0x4ae784=>{const _0xddf72=_0x4de81a,_0x573aba=_0x4ae784[_0xddf72(0x379)]&&typeof _0x4ae784[_0xddf72(0x379)]===_0xddf72(0x250)?_0x4ae784[_0xddf72(0x379)]:{};return Array[_0xddf72(0x45d)](_0x573aba[_0xddf72(0x44d)])?_0x573aba[_0xddf72(0x44d)]:[];},_0x529177=_0x204c84=>{const _0x17f846=_0x4de81a,_0x399c3a=typeof _0x204c84===_0x17f846(0x2f9)?_0x204c84[_0x17f846(0x428)]():'',_0x2a63ee=_0x399c3a[_0x17f846(0x205)](/^agent:([^:]+):/);return _0x2a63ee?.[0x1]||'';},_0x4142a5=(_0x36fad5={},_0x46ea39=[])=>{const _0x4d9505=_0x4de81a,_0x4c877d=Array['isArray'](_0x36fad5[_0x4d9505(0x379)])?_0x36fad5[_0x4d9505(0x379)]:Array[_0x4d9505(0x45d)](_0x36fad5[_0x4d9505(0x44d)])?_0x36fad5[_0x4d9505(0x44d)]:[],_0x45cd9e=Array[_0x4d9505(0x45d)](_0x46ea39)?_0x46ea39:[];return _0x4c877d[_0x4d9505(0x1d6)](_0x599cfb=>{const _0x26c3b2=_0x4d9505,_0x42cfee=String(_0x599cfb?.['id']||_0x599cfb?.[_0x26c3b2(0x3eb)]||'')[_0x26c3b2(0x428)]();return{'agent':_0x599cfb,'sessions':_0x42cfee?_0x45cd9e[_0x26c3b2(0x1f0)](_0x5cac90=>{const _0x2d522a=_0x26c3b2,_0x2c9637=String(_0x5cac90?.[_0x2d522a(0x3eb)]||_0x5cac90?.[_0x2d522a(0x30d)]||_0x5cac90?.[_0x2d522a(0x3ed)]?.['id']||_0x529177(_0x5cac90?.[_0x2d522a(0x469)])||'')[_0x2d522a(0x428)]();return _0x2c9637?_0x2c9637===_0x42cfee:_0x42cfee===_0x2d522a(0x4a7);}):[]};});};_0x248b9f(_0x4de81a(0x20c)+_0x4de81a(0x1c6)+_0x4de81a(0x35f),async()=>updateController?.[_0x4de81a(0x414)]()),_0x248b9f(_0x4de81a(0x20c)+'te:check',async()=>updateController?.['checkFor'+'Updates']()),_0x248b9f(_0x4de81a(0x20c)+_0x4de81a(0x46a)+_0x4de81a(0x461),async()=>updateController?.[_0x4de81a(0x422)+'Update']()),_0x248b9f(_0x4de81a(0x20c)+'te:quit-'+_0x4de81a(0x33a)+'all',async()=>updateController?.[_0x4de81a(0x356)+'nstall']()),_0x248b9f('app:file'+_0x4de81a(0x209),async(_0x4d6117,_0xcc9e8e={})=>{const _0x240cfb=_0x4de81a,_0x3c2bd2=await dialog[_0x240cfb(0x315)+'Dialog'](BrowserWindow[_0x240cfb(0x423)+_0x240cfb(0x2c4)](_0x4d6117[_0x240cfb(0x41d)])??mainWindow,{'properties':['openFile',..._0xcc9e8e?.['limit']!==0x1?[_0x240cfb(0x3c4)+_0x240cfb(0x344)]:[]],'filters':_0xcc9e8e?.[_0x240cfb(0x3d9)+_0x240cfb(0x320)+'s']?[{'name':_0x240cfb(0x3cd),'extensions':_0xcc9e8e['customNa'+'meFilter'+'s']}]:undefined});return _0x3c2bd2[_0x240cfb(0x20e)+'s']['map'](_0x647e1e=>({'path':_0x647e1e,'name':_0x647e1e[_0x240cfb(0x28e)](/[\\/]/)[_0x240cfb(0x1dc)]()||_0x647e1e}));}),_0x248b9f(_0x4de81a(0x31b)+_0x4de81a(0x1ad)+_0x4de81a(0x20b),async(_0x44e3ca,_0x54925a={})=>{const _0x22f05e=_0x4de81a,_0xb895e0=String(_0x54925a['sourcePa'+'th']||'');if(!_0xb895e0)return{'success':![],'error':'sourcePa'+_0x22f05e(0x216)+_0x22f05e(0x1a1)};const _0x507085=await dialog[_0x22f05e(0x229)+_0x22f05e(0x1a7)](mainWindow,{'defaultPath':_0x54925a[_0x22f05e(0x2b5)+_0x22f05e(0x234)]||_0xb895e0[_0x22f05e(0x28e)](/[\\/]/)[_0x22f05e(0x1dc)]()});if(_0x507085[_0x22f05e(0x4a1)]||!_0x507085[_0x22f05e(0x20e)])return{'success':![],'canceled':!![]};const {copyFile:_0x153341}=await import('node:fs/'+_0x22f05e(0x409));return await _0x153341(_0xb895e0,_0x507085[_0x22f05e(0x20e)]),{'success':!![],'filePath':_0x507085['filePath']};}),_0x248b9f(_0x4de81a(0x312)+'board:wr'+_0x4de81a(0x476),async(_0x27e3bb,_0x141f19)=>{return clipboard['writeTex'+'t'](String(_0x141f19??'')),{'ok':!![]};}),_0x248b9f('app:syst'+_0x4de81a(0x3d3)+'rt',async()=>{return app['relaunch'](),app['quit'](),{'ok':!![]};}),_0x248b9f('window:i'+'s-maximi'+_0x4de81a(0x39d),_0x23e07a=>Boolean(BrowserWindow[_0x4de81a(0x423)+_0x4de81a(0x2c4)](_0x23e07a['sender'])?.[_0x4de81a(0x261)+'zed']())),_0x248b9f('app:star'+_0x4de81a(0x2d0),async(_0xabfa16,_0x3ab279)=>{const _0x3622ef=_0x4de81a;return app[_0x3622ef(0x3e3)+'ItemSett'+_0x3622ef(0x359)]({'openAtLogin':_0x3ab279===!![]}),{'ok':!![],'enabled':_0x3ab279===!![]};}),_0x248b9f(_0x4de81a(0x3af)+'tup:get',async()=>app['getLogin'+_0x4de81a(0x483)+_0x4de81a(0x359)]()[_0x4de81a(0x281)+_0x4de81a(0x272)]),_0x248b9f('app:file'+_0x4de81a(0x25a)+_0x4de81a(0x2a9),async _0x1e71d5=>{const _0x535015=_0x4de81a,_0x33cbfa=await dialog['showOpen'+_0x535015(0x1a7)](BrowserWindow[_0x535015(0x423)+'ontents'](_0x1e71d5[_0x535015(0x41d)])??mainWindow,{'properties':[_0x535015(0x1c3)+_0x535015(0x385)]});return _0x33cbfa[_0x535015(0x20e)+'s'][0x0]||'';}),_0x248b9f(_0x4de81a(0x4ae)+_0x4de81a(0x335)+'folder',async(_0x17137d,_0xaa04f6)=>{const _0x1e2ef1=await shell['openPath'](String(_0xaa04f6||''));return _0x1e2ef1||'';}),_0x248b9f(_0x4de81a(0x454)+_0x4de81a(0x346)+_0x4de81a(0x380),async()=>_0x76f3db()['gatewayT'+_0x4de81a(0x314)]()),_0x248b9f(_0x4de81a(0x454)+':gateway'+_0x4de81a(0x32e),async()=>_0x76f3db()['gatewayP'+_0x4de81a(0x484)]()),_0x248b9f(_0x4de81a(0x454)+_0x4de81a(0x3ce)+'e',async(_0x5c88fc,_0x55f776=[])=>{const _0x177d69=_0x4de81a,_0x18f222=await runClawOnce(shellConfig[_0x177d69(0x2d5)+'oot'],Array[_0x177d69(0x45d)](_0x55f776)?_0x55f776:[]);return{'ok':_0x18f222[_0x177d69(0x337)]===0x0,..._0x18f222};}),_0x248b9f(_0x4de81a(0x2e9)+':fork',async(_0x1d8084,_0x131113={})=>_0x76f3db()[_0x4de81a(0x2e9)]['create']({..._0x131113,'parentSessionKey':_0x131113[_0x4de81a(0x202)+'ssionKey']||_0x131113[_0x4de81a(0x378)+'ey']}));const _0x403dd9=configController['resolveS'+_0x4de81a(0x1b6)]();sessionSqliteStore=ensureSessionSqliteStore();const _0x22074f=createAgentSessionsMapStore({'stateDir':_0x403dd9});_0x248b9f(_0x4de81a(0x2e9)+_0x4de81a(0x1f2)+_0x4de81a(0x34c),async(_0x5e8387,_0x58d5ad={})=>_0x22074f[_0x4de81a(0x1c5)](_0x58d5ad)),_0x248b9f('sessions'+_0x4de81a(0x1f2)+_0x4de81a(0x34d)+'t',async(_0x1dfe83,_0x563d77={})=>_0x22074f[_0x4de81a(0x39b)](_0x563d77)),_0x248b9f(_0x4de81a(0x2e9)+':agent-m'+'ap:entry',async(_0xf6e446,_0x4c0a09={})=>{const _0x53a32c=_0x4de81a,_0x4b4d79=String(_0x4c0a09[_0x53a32c(0x378)+'ey']||'')[_0x53a32c(0x428)]();if(!_0x4b4d79)return null;return await sessionSqliteStore[_0x53a32c(0x4ac)+_0x53a32c(0x3ee)](_0x4b4d79);}),_0x248b9f(_0x4de81a(0x269)+_0x4de81a(0x447),async(_0x3cd761,_0x1a4251={})=>{const _0x460580=_0x4de81a,_0x44155a=await readMutableConfig(),_0x1541ec=_0x44155a[_0x460580(0x379)]&&typeof _0x44155a[_0x460580(0x379)]==='object'?_0x44155a[_0x460580(0x379)]:{},_0x2f0add=_0x3728f8(_0x44155a),_0xfa25c=String(_0x1a4251['id']||_0x1a4251['name']||_0x460580(0x200)+Date['now']())[_0x460580(0x428)]()[_0x460580(0x292)](/\s+/g,'-'),_0x577838={'id':_0xfa25c,'name':String(_0x1a4251[_0x460580(0x3e0)]||_0xfa25c),..._0x1a4251[_0x460580(0x3ff)+'e']?{'workspace':String(_0x1a4251[_0x460580(0x3ff)+'e'])}:{},..._0x1a4251[_0x460580(0x3e9)]?{'model':_0x1a4251[_0x460580(0x3e9)]}:{},..._0x1a4251[_0x460580(0x1d5)]?{'emoji':_0x1a4251['emoji']}:{},..._0x1a4251[_0x460580(0x273)]?{'avatar':_0x1a4251[_0x460580(0x273)]}:{},...Array['isArray'](_0x1a4251[_0x460580(0x3c5)])?{'skills':_0x1a4251['skills']}:{}};if(_0x2f0add[_0x460580(0x1df)](_0x1c22cf=>_0x1c22cf?.['id']===_0xfa25c))throw new Error(_0x460580(0x23e)+_0x460580(0x2a1)+_0x460580(0x3b3));return _0x1541ec[_0x460580(0x44d)]=[..._0x2f0add,_0x577838],_0x44155a[_0x460580(0x379)]=_0x1541ec,await _0x297ebb(_0x44155a,'agent\x20cr'+_0x460580(0x1c9)),{'ok':!![],'agent':_0x577838};}),_0x248b9f('agents:u'+_0x4de81a(0x21f),async(_0x440f5d,_0x33c332={})=>{const _0x50010a=_0x4de81a,_0x52fe08=String(_0x33c332['id']||_0x33c332['agentId']||'')[_0x50010a(0x428)]();if(!_0x52fe08)throw new Error(_0x50010a(0x39e)+_0x50010a(0x1ff)+_0x50010a(0x3c9));const _0x17d549=await readMutableConfig(),_0x27712d=_0x17d549[_0x50010a(0x379)]&&typeof _0x17d549[_0x50010a(0x379)]===_0x50010a(0x250)?_0x17d549['agents']:{},_0x1e14b5=_0x3728f8(_0x17d549),_0x3b5997=_0x1e14b5[_0x50010a(0x1d6)](_0x33eeca=>_0x33eeca?.['id']===_0x52fe08?{..._0x33eeca,..._0x33c332,'id':_0x52fe08}:_0x33eeca);return _0x27712d['list']=_0x3b5997,_0x17d549[_0x50010a(0x379)]=_0x27712d,await _0x297ebb(_0x17d549,_0x50010a(0x46f)+_0x50010a(0x2d1)),{'ok':!![],'agent':_0x3b5997[_0x50010a(0x297)](_0x1fcaf8=>_0x1fcaf8?.['id']===_0x52fe08)||null};}),_0x248b9f(_0x4de81a(0x459)+_0x4de81a(0x39f),async(_0x3bd796,_0x479747={})=>{const _0x2e3ccf=_0x4de81a,_0x5a5061=String(_0x479747['id']||_0x479747[_0x2e3ccf(0x3eb)]||'')[_0x2e3ccf(0x428)]();if(!_0x5a5061)throw new Error(_0x2e3ccf(0x39e)+_0x2e3ccf(0x1ff)+'ired');const _0x2737f8=await readMutableConfig(),_0x5ded89=_0x2737f8['agents']&&typeof _0x2737f8['agents']==='object'?_0x2737f8['agents']:{};return _0x5ded89[_0x2e3ccf(0x44d)]=_0x3728f8(_0x2737f8)[_0x2e3ccf(0x1f0)](_0x210e35=>_0x210e35?.['id']!==_0x5a5061),_0x2737f8[_0x2e3ccf(0x379)]=_0x5ded89,await _0x297ebb(_0x2737f8,'agent\x20de'+_0x2e3ccf(0x3a4)),{'ok':!![],'agentId':_0x5a5061};}),_0x248b9f(_0x4de81a(0x1a9)+_0x4de81a(0x477)+_0x4de81a(0x332)+'t',async(_0x5ed293,_0x47181d={})=>{const _0x4a6066=_0x4de81a,[_0x374e86,_0x520a41]=await Promise[_0x4a6066(0x2c8)]([_0x76f3db()[_0x4a6066(0x379)][_0x4a6066(0x44d)](),_0x76f3db()['sessions']['list'](_0x47181d)[_0x4a6066(0x388)](()=>({'sessions':[]}))]),_0x4dc0f6=Array[_0x4a6066(0x45d)](_0x520a41[_0x4a6066(0x2e9)])?_0x520a41['sessions']:[];return{..._0x374e86,'sessions':_0x4dc0f6,'groups':Array['isArray'](_0x374e86['groups'])?_0x374e86[_0x4a6066(0x2db)]:_0x4142a5(_0x374e86,_0x4dc0f6)};}),terminalManager=createTerminalManager({'cwd':join(configController[_0x4de81a(0x375)+_0x4de81a(0x1b6)](),'workspac'+'e'),'emitData':_0x2c1577=>broadcast(_0x4de81a(0x354)+_0x4de81a(0x31c),_0x2c1577),'emitExit':_0x3ee3f5=>broadcast(_0x4de81a(0x354)+_0x4de81a(0x23f),_0x3ee3f5)}),_0x248b9f(_0x4de81a(0x354)+_0x4de81a(0x3fd),async(_0x4b864a,_0x2dd0c6={})=>terminalManager[_0x4de81a(0x285)](_0x2dd0c6)),_0x248b9f(_0x4de81a(0x354)+_0x4de81a(0x1db),async(_0x50318e,_0xa57764={})=>terminalManager[_0x4de81a(0x399)](_0xa57764)),_0x248b9f(_0x4de81a(0x354)+_0x4de81a(0x2b7),async(_0x359eec,_0x201b64={})=>terminalManager[_0x4de81a(0x317)](_0x201b64)),_0x248b9f(_0x4de81a(0x354)+_0x4de81a(0x3f9),async(_0xc845f7,_0x50a3f4={})=>terminalManager[_0x4de81a(0x291)](_0x50a3f4)),_0x248b9f(_0x4de81a(0x34e)+_0x4de81a(0x44d),async()=>{const _0x4bb259=_0x4de81a,_0x4fc2cc=gatewayController?.['runtimeI'+_0x4bb259(0x351)]?.()||{};return _0x4fc2cc[_0x4bb259(0x2c1)]||[];}),_0x248b9f(_0x4de81a(0x34e)+'get-conf'+'ig',async(_0x329176,_0x3d4e34={})=>{const _0x4948dc=_0x4de81a,_0x1ab189=String(_0x3d4e34[_0x4948dc(0x2cf)]||_0x3d4e34['id']||''),_0x40f82d=await readMutableConfig(),_0x4dfb94=_0x40f82d[_0x4948dc(0x2c1)]?.[_0x4948dc(0x494)]||{};return _0x1ab189?_0x4dfb94[_0x1ab189]||null:_0x4dfb94;}),_0x248b9f('plugins:'+_0x4de81a(0x432)+_0x4de81a(0x24b),async(_0x25df73,_0x876c38={})=>{const _0x58d530=_0x4de81a,_0x5bf094=String(_0x876c38[_0x58d530(0x2cf)]||_0x876c38['id']||'');if(!_0x5bf094)throw new Error('pluginId'+_0x58d530(0x1ff)+_0x58d530(0x3c9));const _0x4e4b31=await readMutableConfig(),_0x37e209=_0x4e4b31[_0x58d530(0x2c1)]&&typeof _0x4e4b31[_0x58d530(0x2c1)]===_0x58d530(0x250)?_0x4e4b31['plugins']:{},_0x1b2d49=_0x37e209[_0x58d530(0x494)]&&typeof _0x37e209[_0x58d530(0x494)]===_0x58d530(0x250)?_0x37e209[_0x58d530(0x494)]:{};return _0x1b2d49[_0x5bf094]={..._0x1b2d49[_0x5bf094]||{},..._0x876c38[_0x58d530(0x49c)]||_0x876c38[_0x58d530(0x228)]||{}},_0x37e209['entries']=_0x1b2d49,_0x4e4b31[_0x58d530(0x2c1)]=_0x37e209,_0x297ebb(_0x4e4b31,_0x58d530(0x1ca)+_0x58d530(0x1b8)+_0x58d530(0x2d1));}),_0x248b9f(_0x4de81a(0x34e)+_0x4de81a(0x3a9),async(_0x1199ce,_0x1e0b07={})=>{const _0x59926d=_0x4de81a,_0x2e22ff=String(_0x1e0b07[_0x59926d(0x2cf)]||_0x1e0b07['id']||'');if(!_0x2e22ff)throw new Error(_0x59926d(0x2cf)+_0x59926d(0x1ff)+_0x59926d(0x3c9));const _0x488fa8=await readMutableConfig(),_0x37985c=_0x488fa8[_0x59926d(0x2c1)]&&typeof _0x488fa8[_0x59926d(0x2c1)]===_0x59926d(0x250)?_0x488fa8[_0x59926d(0x2c1)]:{},_0x352d36=_0x37985c[_0x59926d(0x494)]&&typeof _0x37985c['entries']===_0x59926d(0x250)?_0x37985c[_0x59926d(0x494)]:{};return _0x352d36[_0x2e22ff]={..._0x352d36[_0x2e22ff]||{},'enabled':!![]},_0x37985c[_0x59926d(0x494)]=_0x352d36,_0x488fa8['plugins']=_0x37985c,_0x297ebb(_0x488fa8,_0x59926d(0x464)+'nabled');}),_0x248b9f(_0x4de81a(0x34e)+_0x4de81a(0x1b0),async(_0x3961e7,_0x371ef3={})=>{const _0x43601f=_0x4de81a,_0x11f0ff=String(_0x371ef3[_0x43601f(0x2cf)]||_0x371ef3['id']||'');if(!_0x11f0ff)throw new Error(_0x43601f(0x2cf)+_0x43601f(0x1ff)+'ired');const _0x43cdef=await readMutableConfig(),_0x5152be=_0x43cdef[_0x43601f(0x2c1)]&&typeof _0x43cdef[_0x43601f(0x2c1)]==='object'?_0x43cdef['plugins']:{},_0x159db1=_0x5152be[_0x43601f(0x494)]&&typeof _0x5152be[_0x43601f(0x494)]===_0x43601f(0x250)?_0x5152be[_0x43601f(0x494)]:{};return _0x159db1[_0x11f0ff]={..._0x159db1[_0x11f0ff]||{},'enabled':![]},_0x5152be[_0x43601f(0x494)]=_0x159db1,_0x43cdef[_0x43601f(0x2c1)]=_0x5152be,_0x297ebb(_0x43cdef,_0x43601f(0x336)+_0x43601f(0x474));}),_0x248b9f('plugins:'+'status',async(_0x53913d,_0x5e077a={})=>({'plugins':await((async()=>{const _0x1bb850=_0x4de81a,_0x2605f4=gatewayController?.['runtimeI'+_0x1bb850(0x351)]?.()||{};if(!_0x5e077a?.[_0x1bb850(0x2cf)]&&!_0x5e077a?.['id'])return _0x2605f4[_0x1bb850(0x2c1)]||[];const _0x145c6c=String(_0x5e077a['pluginId']||_0x5e077a['id']||'');return(_0x2605f4[_0x1bb850(0x2c1)]||[])['filter'](_0x11159a=>_0x11159a[_0x1bb850(0x2cf)]===_0x145c6c);})())})),_0x248b9f(_0x4de81a(0x1ec)+_0x4de81a(0x2b2),async(_0x56f3d8,_0x342373)=>({'ok':!![],'payload':_0x342373})),_0x248b9f(_0x4de81a(0x2ff)+_0x4de81a(0x45a)+'e',async(_0x5c13e7,_0xaec72e)=>{const _0x504a1b=_0x4de81a;return broadcast(_0x504a1b(0x416)+_0x504a1b(0x1b5),_0xaec72e),{'ok':!![]};}),_0x248b9f(_0x4de81a(0x243)+_0x4de81a(0x44b)+_0x4de81a(0x275),async()=>{const _0x1917cd=_0x4de81a;return broadcast(_0x1917cd(0x1ae)+_0x1917cd(0x275)+_0x1917cd(0x1e4),{}),{'ok':!![]};}),_0x248b9f(_0x4de81a(0x26c)+_0x4de81a(0x2b3)+'nt-state',async(_0x4b514b,_0x1b8793={})=>{const _0x6a8ebf=_0x4de81a;return broadcast(_0x6a8ebf(0x1ae)+'nt-state'+'-refresh'+'-request',_0x1b8793),{'ok':!![]};}),_0x248b9f(_0x4de81a(0x288)+_0x4de81a(0x1f8),_0x2cc255=>{const _0x278163=_0x4de81a;return BrowserWindow[_0x278163(0x423)+_0x278163(0x2c4)](_0x2cc255[_0x278163(0x41d)])?.['minimize'](),{'ok':!![]};}),_0x248b9f('window:t'+_0x4de81a(0x446)+_0x4de81a(0x441),_0x281001=>{const _0x257405=_0x4de81a,_0x36d672=BrowserWindow['fromWebC'+_0x257405(0x2c4)](_0x281001['sender']);if(!_0x36d672)return{'isMaximized':![]};if(_0x36d672['isMaximi'+_0x257405(0x39d)]())_0x36d672[_0x257405(0x357)+'ze']();else _0x36d672[_0x257405(0x1f3)]();return{'isMaximized':_0x36d672['isMaximi'+_0x257405(0x39d)]()};}),_0x248b9f(_0x4de81a(0x468)+_0x4de81a(0x48f),_0x1cf8c4=>{const _0x472080=_0x4de81a;return BrowserWindow['fromWebC'+'ontents'](_0x1cf8c4[_0x472080(0x41d)])?.[_0x472080(0x291)](),{'ok':!![]};}),_0x248b9f(_0x4de81a(0x28a)+'pen-devt'+'ools',()=>openDevToolsForActiveContext()),_0x248b9f(_0x4de81a(0x454)+_0x4de81a(0x3fe)+_0x4de81a(0x46e),()=>_0x76f3db()['runtimeI'+'nfo']()),_0x248b9f(_0x4de81a(0x454)+_0x4de81a(0x346)+_0x4de81a(0x2d2),async()=>(await ensureGatewayControllerStarted())[_0x4de81a(0x455)+'s']()),_0x248b9f(_0x4de81a(0x454)+_0x4de81a(0x346)+_0x4de81a(0x22b),()=>_0x76f3db()['restart']('renderer'+_0x4de81a(0x347))),_0x248b9f(_0x4de81a(0x454)+_0x4de81a(0x4af)+_0x4de81a(0x313)+_0x4de81a(0x249),async()=>({'loadingLifeCycle':_0x4de81a(0x1cf),'message':'','updatedAt':new Date()[_0x4de81a(0x24d)+_0x4de81a(0x3b6)]()})),_0x248b9f(_0x4de81a(0x454)+_0x4de81a(0x346)+_0x4de81a(0x30b),(_0x241be6,_0x3bac05={})=>_0x76f3db()['getRecen'+_0x4de81a(0x212)](_0x3bac05?.[_0x4de81a(0x248)]??0xc8)),_0x248b9f(_0x4de81a(0x454)+':answer-'+_0x4de81a(0x4ad)+_0x4de81a(0x328)+'n',(_0x1d3847,_0x42e96f)=>_0x76f3db()['answerAs'+_0x4de81a(0x3d2)+_0x4de81a(0x2b1)](_0x42e96f)),_0x248b9f(_0x4de81a(0x454)+':open-cl'+_0x4de81a(0x2ec),async()=>{const _0x35ea59=_0x4de81a,_0x18fb1e=join(resolveRuntimeRoot(shellConfig[_0x35ea59(0x2d5)+_0x35ea59(0x436)]),_0x35ea59(0x1f7),_0x35ea59(0x45f)+'w');if(!existsSync(_0x18fb1e))throw new Error('openclaw'+_0x35ea59(0x1ba)+'pper\x20not'+_0x35ea59(0x493)+_0x18fb1e+(_0x35ea59(0x40b)+'jie-shel'+_0x35ea59(0x1ab)+'e\x20first.'));const _0x5cbec5=join(app[_0x35ea59(0x2c7)]('temp'),_0x35ea59(0x1c7)+_0x35ea59(0x43d)+'command');await writeFile(_0x5cbec5,_0x35ea59(0x1fe)+_0x35ea59(0x376)+_0x18fb1e[_0x35ea59(0x292)](/\\/g,'\x5c\x5c')[_0x35ea59(0x292)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x5af0a3=spawn(_0x35ea59(0x287),['-a',_0x35ea59(0x1cb),_0x5cbec5],{'detached':!![],'stdio':_0x35ea59(0x24a)});return _0x5af0a3[_0x35ea59(0x342)](),{'ok':!![],'cliPath':_0x18fb1e};}),_0x248b9f(_0x4de81a(0x47b)+_0x4de81a(0x319),()=>_0x76f3db()[_0x4de81a(0x379)]['list']()),_0x248b9f(_0x4de81a(0x396)+_0x4de81a(0x21b),(_0x4737cc,_0x52469c)=>_0x76f3db()[_0x4de81a(0x3c5)]['status'](_0x52469c)),_0x248b9f(_0x4de81a(0x2e9)+_0x4de81a(0x3fd),(_0x4454a4,_0x4f1a3b)=>_0x76f3db()[_0x4de81a(0x2e9)][_0x4de81a(0x285)](_0x4f1a3b)),_0x248b9f(_0x4de81a(0x2e9)+':list',(_0x5233b0,_0x309c03)=>_0x76f3db()[_0x4de81a(0x2e9)][_0x4de81a(0x44d)](_0x309c03)),_0x248b9f(_0x4de81a(0x2e9)+':delete',(_0x842e47,_0x50d5cd)=>_0x76f3db()[_0x4de81a(0x2e9)]['delete'](_0x50d5cd)),_0x248b9f(_0x4de81a(0x4a3)+'eam',(_0x1ddedb,_0x52859f)=>_0x76f3db()[_0x4de81a(0x276)]['stream'](_0x52859f)),_0x248b9f(_0x4de81a(0x3f8)+'rt',(_0x4b2234,_0x966e4c)=>_0x76f3db()[_0x4de81a(0x276)][_0x4de81a(0x4a9)](_0x966e4c)),_0x248b9f('chat:his'+_0x4de81a(0x31e),(_0x5b2ab3,_0x505dab)=>_0x76f3db()[_0x4de81a(0x276)]['history'](_0x505dab)),_0x248b9f(_0x4de81a(0x211)+'te',async(_0x22c438,_0x3ab75a={})=>{const _0xcdd820=_0x4de81a,_0x38d7d4=typeof _0x3ab75a[_0xcdd820(0x1dd)]===_0xcdd820(0x2f9)?_0x3ab75a[_0xcdd820(0x1dd)]:'info',_0x27dd53=typeof _0x3ab75a[_0xcdd820(0x495)]===_0xcdd820(0x2f9)?_0x3ab75a[_0xcdd820(0x495)]:_0xcdd820(0x316)+_0xcdd820(0x410),_0x32f82a=typeof _0x3ab75a[_0xcdd820(0x391)]===_0xcdd820(0x2f9)&&_0x3ab75a[_0xcdd820(0x391)][_0xcdd820(0x428)]()?'renderer'+':'+_0x3ab75a[_0xcdd820(0x391)]['trim']():_0xcdd820(0x316),_0x1278ca=_0x3ab75a[_0xcdd820(0x240)]&&typeof _0x3ab75a[_0xcdd820(0x240)]===_0xcdd820(0x250)?{...summarizePayload(_0x3ab75a[_0xcdd820(0x240)]),'context':_0x32f82a}:{'context':_0x32f82a},_0xaaaa5d=rendererLogger;if(_0xaaaa5d?.[_0x38d7d4])await _0xaaaa5d[_0x38d7d4](_0x27dd53,_0x1278ca);else await _0xaaaa5d?.['info'](_0x27dd53,_0x1278ca);if(_0x3ab75a['diagnost'+'ic']===!![]||_0x32f82a===_0xcdd820(0x316)+_0xcdd820(0x1ed)+_0xcdd820(0x37d)){const _0x28f8fc=_0x3ab75a[_0xcdd820(0x38c)]&&typeof _0x3ab75a[_0xcdd820(0x38c)]==='object'?_0x3ab75a[_0xcdd820(0x38c)]:_0x3ab75a[_0xcdd820(0x240)]?.[_0xcdd820(0x38c)]&&typeof _0x3ab75a[_0xcdd820(0x240)]['record']===_0xcdd820(0x250)?_0x3ab75a[_0xcdd820(0x240)][_0xcdd820(0x38c)]:{'level':_0x38d7d4,'category':_0xcdd820(0x316),'event':_0x32f82a,'message':_0x27dd53,'meta':_0x3ab75a[_0xcdd820(0x240)]};await diagnosticsWriter?.[_0xcdd820(0x3fa)+'nt'](_0x28f8fc,{'captureIncident':String(_0x28f8fc[_0xcdd820(0x1dd)]||_0x38d7d4)[_0xcdd820(0x49d)+'ase']()==='error'||_0x3ab75a[_0xcdd820(0x3b0)+_0xcdd820(0x33e)]===!![]});}return{'ok':!![]};}),_0x248b9f(_0x4de81a(0x225)+_0x4de81a(0x484),async(_0xe45fd2,_0x22ecb2={})=>{const _0x5a5755=_0x4de81a,_0x541a82=typeof _0x22ecb2[_0x5a5755(0x348)+'r']==='string'&&_0x22ecb2[_0x5a5755(0x348)+'r'][_0x5a5755(0x428)]()?_0x22ecb2[_0x5a5755(0x348)+'r']:undefined,_0x239e7d=await exportLogsArchive({'logsDir':configController[_0x5a5755(0x3d4)][_0x5a5755(0x466)],'targetDir':_0x541a82,'appVersion':app[_0x5a5755(0x1d9)+'on']()});return mainLogger?.[_0x5a5755(0x46d)](_0x5a5755(0x26e)+_0x5a5755(0x3d1),{'path':toHomePath(_0x239e7d[_0x5a5755(0x3ec)])}),_0x239e7d;}),_0x248b9f(_0x4de81a(0x343)+'n-direct'+_0x4de81a(0x345),async()=>{const _0x1077b9=_0x4de81a;return await shell[_0x1077b9(0x418)](configController[_0x1077b9(0x3d4)][_0x1077b9(0x466)]),mainLogger?.['info'](_0x1077b9(0x29f)+'ectory\x20o'+_0x1077b9(0x30e),{'logsDir':toHomePath(configController[_0x1077b9(0x3d4)][_0x1077b9(0x466)])}),{'ok':!![],'path':configController[_0x1077b9(0x3d4)][_0x1077b9(0x466)]};}),_0x248b9f('logs:lis'+'t',async()=>{const _0x15cc17=_0x4de81a,_0x2d0c7a=await readdir(configController['paths']['logsDir'],{'recursive':!![]})[_0x15cc17(0x388)](()=>[]);return _0x2d0c7a;}),_0x248b9f(_0x4de81a(0x32d)+'d',async(_0x1f2c5a,_0x15e532={})=>{const _0x1ca372=_0x4de81a,_0x208100=String(_0x15e532[_0x1ca372(0x3ec)]||'');if(!_0x208100)throw new Error(_0x1ca372(0x377)+_0x1ca372(0x2fa));return readFile(_0x208100,_0x1ca372(0x3bd));}),_0x248b9f('files:re'+'ad',async(_0x234731,_0x117332)=>{const _0x528ed7=_0x4de81a,_0x568795=Date['now']();try{const _0x119c21=await readFile(_0x117332,_0x528ed7(0x3bd));return filesLogger?.['info'](_0x528ed7(0x3da)+_0x528ed7(0x369)+_0x528ed7(0x480),{'path':toHomePath(_0x117332),'bytes':Buffer[_0x528ed7(0x43e)+'th'](_0x119c21),'durationMs':Date[_0x528ed7(0x395)]()-_0x568795}),_0x119c21;}catch(_0xe998a3){filesLogger?.[_0x528ed7(0x307)]('file\x20rea'+_0x528ed7(0x3a6),{'path':toHomePath(_0x117332),'durationMs':Date[_0x528ed7(0x395)]()-_0x568795,'error':summarizeError(_0xe998a3)});throw _0xe998a3;}}),_0x248b9f(_0x4de81a(0x37f)+'ad-binar'+'y',async(_0x44b5cb,_0x50f165)=>{const _0x1c30fe=_0x4de81a,_0x50729c=Date[_0x1c30fe(0x395)]();try{const _0x3893a5=await readFile(_0x50f165);return filesLogger?.[_0x1c30fe(0x46d)]('binary\x20f'+_0x1c30fe(0x38b)+_0x1c30fe(0x2ea)+'ed',{'path':toHomePath(_0x50f165),'bytes':_0x3893a5[_0x1c30fe(0x43e)+'th'],'durationMs':Date[_0x1c30fe(0x395)]()-_0x50729c}),new Uint8Array(_0x3893a5);}catch(_0x4e4196){filesLogger?.[_0x1c30fe(0x307)](_0x1c30fe(0x3c8)+_0x1c30fe(0x38b)+_0x1c30fe(0x4a8),{'path':toHomePath(_0x50f165),'durationMs':Date[_0x1c30fe(0x395)]()-_0x50729c,'error':summarizeError(_0x4e4196)});throw _0x4e4196;}}),_0x248b9f(_0x4de81a(0x3a5)+_0x4de81a(0x476),async(_0x796d05,_0x36c661={})=>{const _0x28488b=_0x4de81a,_0x39dfaf=Date[_0x28488b(0x395)]();return await writeFile(_0x36c661[_0x28488b(0x3ec)],_0x36c661[_0x28488b(0x4a5)]??'',_0x28488b(0x3bd)),filesLogger?.['info'](_0x28488b(0x1de)+'te\x20compl'+'eted',{'path':toHomePath(_0x36c661['path']),'bytes':Buffer['byteLeng'+'th'](String(_0x36c661[_0x28488b(0x4a5)]??'')),'durationMs':Date[_0x28488b(0x395)]()-_0x39dfaf}),{'ok':!![]};}),_0x248b9f(_0x4de81a(0x3a5)+'ite-bina'+'ry',async(_0x154b07,_0x5564c1={})=>{const _0x3fdf3a=_0x4de81a,_0x23299c=Date[_0x3fdf3a(0x395)]();await writeFile(_0x5564c1['path'],Buffer['from'](_0x5564c1[_0x3fdf3a(0x4a5)]??[]));const _0x1eb9ae=await stat(_0x5564c1[_0x3fdf3a(0x3ec)])[_0x3fdf3a(0x388)](()=>null);return filesLogger?.[_0x3fdf3a(0x46d)](_0x3fdf3a(0x3c8)+'ile\x20writ'+'e\x20comple'+_0x3fdf3a(0x480),{'path':toHomePath(_0x5564c1[_0x3fdf3a(0x3ec)]),'bytes':_0x1eb9ae?.[_0x3fdf3a(0x3f6)]??0x0,'durationMs':Date[_0x3fdf3a(0x395)]()-_0x23299c}),{'ok':!![]};}),_0x248b9f(_0x4de81a(0x36a)+_0x4de81a(0x1a0)+'e',async(_0x5441f9,_0x5dad84={})=>{const _0x128d97=_0x4de81a,_0x12a2bb=await dialog['showOpen'+_0x128d97(0x1a7)](BrowserWindow['fromWebC'+'ontents'](_0x5441f9[_0x128d97(0x41d)])??mainWindow,{'title':typeof _0x5dad84[_0x128d97(0x235)]===_0x128d97(0x2f9)?_0x5dad84['title']:undefined,'properties':[_0x128d97(0x475),..._0x5dad84[_0x128d97(0x3c4)+_0x128d97(0x344)]?[_0x128d97(0x3c4)+_0x128d97(0x344)]:[]],'filters':Array[_0x128d97(0x45d)](_0x5dad84[_0x128d97(0x2b4)])?_0x5dad84['filters']:undefined});return filesLogger?.[_0x128d97(0x46d)](_0x128d97(0x2a2)+'ile\x20comp'+'leted',{'canceled':_0x12a2bb[_0x128d97(0x4a1)],'count':_0x12a2bb['filePath'+'s'][_0x128d97(0x3c7)],'paths':_0x12a2bb[_0x128d97(0x20e)+'s'][_0x128d97(0x1d6)](toHomePath)}),{'canceled':_0x12a2bb[_0x128d97(0x4a1)],'paths':_0x12a2bb['filePath'+'s']};}),_0x248b9f('files:li'+'st-direc'+_0x4de81a(0x31e),async(_0x59b339,_0x27ead1={})=>{const _0x37c4af=_0x4de81a,_0x52857e=resolve(String(_0x27ead1['path']||'')),_0x130194=_0x27ead1[_0x37c4af(0x324)+'e']!==![],_0x5af32d=Array[_0x37c4af(0x45d)](_0x27ead1[_0x37c4af(0x268)+'ns'])?_0x27ead1['extensio'+'ns'][_0x37c4af(0x1d6)](_0x5c06dc=>String(_0x5c06dc)['toLowerC'+_0x37c4af(0x338)]()[_0x37c4af(0x292)](/^\./,''))[_0x37c4af(0x1f0)](Boolean):null,_0x123006=Number[_0x37c4af(0x3d5)+'r'](_0x27ead1[_0x37c4af(0x2cc)+'es'])&&_0x27ead1[_0x37c4af(0x2cc)+'es']>0x0?_0x27ead1[_0x37c4af(0x2cc)+'es']:0xc350,_0x8c6bc4=[];let _0x50ab64=![];async function _0xc74ff5(_0x2425ec){const _0x92b170=_0x37c4af;if(_0x50ab64)return;let _0x580721;try{_0x580721=await readdir(_0x2425ec,{'withFileTypes':!![]});}catch{return;}for(const _0x52de68 of _0x580721){if(_0x50ab64)return;if(_0x52de68[_0x92b170(0x3e0)][_0x92b170(0x2bb)+'th']('.'))continue;const _0x246cc0=join(_0x2425ec,_0x52de68['name']);if(_0x52de68[_0x92b170(0x26d)+_0x92b170(0x345)]()){if(_0x130194)await _0xc74ff5(_0x246cc0);continue;}if(!_0x52de68[_0x92b170(0x2f3)]())continue;if(_0x5af32d){const _0x402b7e=_0x52de68['name']['lastInde'+_0x92b170(0x2c0)]('.'),_0x5ed656=_0x402b7e>=0x0?_0x52de68['name'][_0x92b170(0x41f)](_0x402b7e+0x1)['toLowerC'+_0x92b170(0x338)]():'';if(!_0x5af32d[_0x92b170(0x294)](_0x5ed656))continue;}if(_0x8c6bc4[_0x92b170(0x3c7)]>=_0x123006){_0x50ab64=!![];return;}_0x8c6bc4[_0x92b170(0x1ac)]({'name':_0x52de68['name'],'path':_0x246cc0});}}return await _0xc74ff5(_0x52857e),{'path':_0x52857e,'entries':_0x8c6bc4,'truncated':_0x50ab64};}),_0x248b9f(_0x4de81a(0x36a)+_0x4de81a(0x2ab)+_0x4de81a(0x300),async(_0x5e270f,_0xd7b5a5={})=>{const _0x340569=_0x4de81a,_0x1b0d33=await dialog['showOpen'+'Dialog'](BrowserWindow['fromWebC'+_0x340569(0x2c4)](_0x5e270f[_0x340569(0x41d)])??mainWindow,{'title':typeof _0xd7b5a5[_0x340569(0x235)]===_0x340569(0x2f9)?_0xd7b5a5[_0x340569(0x235)]:undefined,'properties':[_0x340569(0x1c3)+_0x340569(0x385)]});return filesLogger?.[_0x340569(0x46d)](_0x340569(0x274)+_0x340569(0x23a)+_0x340569(0x2ea)+'ed',{'canceled':_0x1b0d33[_0x340569(0x4a1)],'count':_0x1b0d33[_0x340569(0x20e)+'s'][_0x340569(0x3c7)],'paths':_0x1b0d33[_0x340569(0x20e)+'s'][_0x340569(0x1d6)](toHomePath)}),{'canceled':_0x1b0d33['canceled'],'paths':_0x1b0d33[_0x340569(0x20e)+'s']};}),_0x248b9f(_0x4de81a(0x3ff)+_0x4de81a(0x265)+_0x4de81a(0x2d6),()=>_0x76f3db()[_0x4de81a(0x3ff)+'e'][_0x4de81a(0x21e)+'yInfo']()),_0x248b9f(_0x4de81a(0x3ff)+_0x4de81a(0x2de)+_0x4de81a(0x23a),async()=>{const _0x1fd127=_0x4de81a,_0xdeefc4=await _0x76f3db()['workspac'+'e']['director'+'yInfo']();return await shell[_0x1fd127(0x418)](_0xdeefc4[_0x1fd127(0x3ec)]),filesLogger?.[_0x1fd127(0x46d)](_0x1fd127(0x3ff)+_0x1fd127(0x255)+'ory\x20open'+'ed',{'path':toHomePath(_0xdeefc4[_0x1fd127(0x3ec)])}),{'ok':!![],'path':_0xdeefc4['path']};}),_0x248b9f(_0x4de81a(0x3ff)+_0x4de81a(0x485)+_0x4de81a(0x221),()=>_0x76f3db()[_0x4de81a(0x3ff)+'e']['sharedCo'+'ntext']()),_0x248b9f(_0x4de81a(0x3ff)+'e:write-'+_0x4de81a(0x2bc)+_0x4de81a(0x48c),(_0x166968,_0x572fb2)=>_0x76f3db()[_0x4de81a(0x3ff)+'e'][_0x4de81a(0x1e7)+_0x4de81a(0x33c)+'xt'](_0x572fb2)),_0x248b9f(_0x4de81a(0x2e9)+_0x4de81a(0x309),(_0x793dee,_0x2fbbb5)=>_0x76f3db()[_0x4de81a(0x2e9)][_0x4de81a(0x442)](_0x2fbbb5)),_0x248b9f('sessions'+_0x4de81a(0x2b8),async(_0x3e855a,_0x311a15={})=>{const _0xd187a2=_0x4de81a,_0x309774=String(_0x311a15[_0xd187a2(0x378)+'ey']||_0x311a15[_0xd187a2(0x469)]||'')['trim']();if(!_0x309774)throw new Error(_0xd187a2(0x378)+_0xd187a2(0x26a)+'quired');const _0x2811ff=await ensureSessionSqliteStore()[_0xd187a2(0x365)+_0xd187a2(0x460)+'Keys'](),_0x413cf1=await _0x76f3db()[_0xd187a2(0x2e9)]['reorderP'+_0xd187a2(0x1d4)]([_0x309774,..._0x2811ff['filter'](_0x12ba7b=>_0x12ba7b!==_0x309774)]);return _0x413cf1;}),_0x248b9f(_0x4de81a(0x2e9)+_0x4de81a(0x2df),async(_0x4bff79,_0x28c698={})=>{const _0x11f47d=_0x4de81a,_0x5998e9=String(_0x28c698['sessionK'+'ey']||_0x28c698[_0x11f47d(0x469)]||'')[_0x11f47d(0x428)]();if(!_0x5998e9)throw new Error('sessionK'+_0x11f47d(0x26a)+_0x11f47d(0x1a1));const _0x307af0=await ensureSessionSqliteStore()[_0x11f47d(0x365)+_0x11f47d(0x460)+_0x11f47d(0x253)]();return await _0x76f3db()['sessions'][_0x11f47d(0x311)+_0x11f47d(0x1d4)](_0x307af0['filter'](_0x387039=>_0x387039!==_0x5998e9));}),_0x248b9f(_0x4de81a(0x2e9)+_0x4de81a(0x4aa)+'-pinned',async(_0x49d4f4,_0x3e3916={})=>{const _0x2dae4d=_0x4de81a,_0x29a8c7=Array[_0x2dae4d(0x45d)](_0x3e3916[_0x2dae4d(0x28f)])?_0x3e3916[_0x2dae4d(0x28f)]:_0x3e3916;return await _0x76f3db()['sessions'][_0x2dae4d(0x311)+_0x2dae4d(0x1d4)](_0x29a8c7);}),_0x248b9f(_0x4de81a(0x43c)+_0x4de81a(0x1b2),(_0x2ba868,_0x30ce43)=>_0x76f3db()[_0x4de81a(0x3c5)][_0x4de81a(0x3ac)](_0x30ce43)),_0x248b9f('cron:lis'+'t',(_0x2b0cc1,_0x215548)=>_0x76f3db()[_0x4de81a(0x278)][_0x4de81a(0x44d)](_0x215548)),_0x248b9f(_0x4de81a(0x215)+_0x4de81a(0x498),(_0x129930,_0x58f7e9)=>_0x76f3db()[_0x4de81a(0x278)][_0x4de81a(0x285)](_0x58f7e9)),_0x248b9f('cron:upd'+_0x4de81a(0x498),(_0x2ee778,_0x4f2eee)=>_0x76f3db()['cron'][_0x4de81a(0x3b9)](_0x4f2eee)),_0x248b9f(_0x4de81a(0x210)+_0x4de81a(0x35c),(_0x534a90,_0x58514b)=>_0x76f3db()[_0x4de81a(0x278)][_0x4de81a(0x490)](_0x58514b)),_0x248b9f(_0x4de81a(0x32f)+_0x4de81a(0x25d),(_0x191e78,_0x1d6743)=>_0x76f3db()['cron'][_0x4de81a(0x4a2)](_0x1d6743)),_0x248b9f(_0x4de81a(0x2bf)+'s',(_0x256023,_0x2e8697)=>_0x76f3db()[_0x4de81a(0x278)][_0x4de81a(0x1a3)](_0x2e8697)),_0x248b9f('models:c'+_0x4de81a(0x471),async(_0x2cc46f,_0x44594a={})=>{const _0x4788fe=_0x4de81a,_0x5f5459=configController['resolveC'+'onfigPat'+'h'](),_0xfd194e=JSON[_0x4788fe(0x207)](await readFile(_0x5f5459,_0x4788fe(0x3bd))),_0x1e8c45=_0xfd194e?.['models']?.[_0x4788fe(0x3a7)+'s']&&typeof _0xfd194e['models'][_0x4788fe(0x3a7)+'s']===_0x4788fe(0x250)?_0xfd194e[_0x4788fe(0x259)][_0x4788fe(0x3a7)+'s']:{},_0x5cc550=typeof _0xfd194e?.[_0x4788fe(0x379)]?.['defaults']?.[_0x4788fe(0x3e9)]?.[_0x4788fe(0x2d9)]===_0x4788fe(0x2f9)?_0xfd194e[_0x4788fe(0x379)][_0x4788fe(0x1c2)][_0x4788fe(0x3e9)][_0x4788fe(0x2d9)]:'',_0x211940=String(_0x44594a[_0x4788fe(0x3e9)]||_0x5cc550||'');if(!_0x211940['includes']('/'))throw new Error('no\x20defau'+_0x4788fe(0x1fb)+_0x4788fe(0x3c6)+_0x4788fe(0x33d)+_0x4788fe(0x24e)+_0x4788fe(0x38f)+_0x4788fe(0x1bd));const _0x148bca=_0x211940[_0x4788fe(0x239)]('/'),_0x1c542a=_0x211940[_0x4788fe(0x41f)](0x0,_0x148bca),_0x4dbfee=_0x211940['slice'](_0x148bca+0x1),_0x28a7e9=_0x1e8c45[_0x1c542a];if(!_0x28a7e9||typeof _0x28a7e9!==_0x4788fe(0x250))throw new Error(_0x4788fe(0x3a7)+_0x4788fe(0x2ce)+_0x4788fe(0x302)+'\x20'+_0x1c542a);const _0x50112a=String(_0x28a7e9['baseUrl']||'https://'+_0x4788fe(0x329)+_0x4788fe(0x213)+'1')[_0x4788fe(0x428)]()[_0x4788fe(0x292)](/\/$/,''),_0x534ea5=await fetch(_0x50112a+(_0x4788fe(0x3f2)+_0x4788fe(0x499)+'s'),{'method':_0x4788fe(0x443),'headers':{'content-type':_0x4788fe(0x39a)+'ion/json','Authorization':_0x4788fe(0x48a)+(_0x28a7e9[_0x4788fe(0x36b)]||''),..._0x28a7e9[_0x4788fe(0x3b7)]&&typeof _0x28a7e9[_0x4788fe(0x3b7)]==='object'?_0x28a7e9['headers']:{}},'body':JSON[_0x4788fe(0x1aa)+'y']({'model':_0x4dbfee,'max_tokens':Number[_0x4788fe(0x3d5)+'r'](_0x44594a[_0x4788fe(0x383)+'s'])?_0x44594a[_0x4788fe(0x383)+'s']:0x400,'temperature':typeof _0x44594a['temperat'+_0x4788fe(0x21a)]===_0x4788fe(0x1e5)?_0x44594a[_0x4788fe(0x3ca)+_0x4788fe(0x21a)]:undefined,'messages':Array['isArray'](_0x44594a[_0x4788fe(0x29e)])?_0x44594a[_0x4788fe(0x29e)]:[]}),'signal':AbortSignal[_0x4788fe(0x36f)](Number[_0x4788fe(0x3d5)+'r'](_0x44594a['timeoutM'+'s'])?_0x44594a['timeoutM'+'s']:0x1d4c0)});if(!_0x534ea5['ok']){const _0x2a6fdc=await _0x534ea5[_0x4788fe(0x2a5)]();throw new Error(_0x4788fe(0x264)+'tp\x20'+_0x534ea5['status']+':\x20'+_0x2a6fdc[_0x4788fe(0x41f)](0x0,0x190));}const _0x2d737d=await _0x534ea5[_0x4788fe(0x1c8)](),_0x55f455=_0x2d737d?.['choices']?.[0x0]?.[_0x4788fe(0x495)]??{};return{'content':extractModelMessageContent(_0x55f455[_0x4788fe(0x4a5)]),'reasoning':typeof _0x55f455[_0x4788fe(0x3d8)+'g_conten'+'t']===_0x4788fe(0x2f9)?_0x55f455['reasonin'+_0x4788fe(0x341)+'t']:'','model':_0x2d737d?.[_0x4788fe(0x3e9)]||_0x4dbfee};}),_0x248b9f(_0x4de81a(0x2a8)+_0x4de81a(0x27a),()=>_0x76f3db()[_0x4de81a(0x259)][_0x4de81a(0x47a)]()),_0x248b9f(_0x4de81a(0x2a8)+_0x4de81a(0x43f)+_0x4de81a(0x360),(_0x5c15ed,_0x19ea79)=>_0x76f3db()[_0x4de81a(0x259)]['setSetti'+_0x4de81a(0x360)](_0x19ea79)),_0x248b9f(_0x4de81a(0x2a8)+_0x4de81a(0x413)+_0x4de81a(0x3e7)+'ywhere',(_0xcae819,_0x3f548d)=>_0x76f3db()[_0x4de81a(0x259)][_0x4de81a(0x1e3)+_0x4de81a(0x444)+'Everywhe'+'re'](_0x3f548d)),_0x248b9f(_0x4de81a(0x2a8)+_0x4de81a(0x2e7)+_0x4de81a(0x44f),(_0x55e588,_0x5a00f6)=>_0x76f3db()['models'][_0x4de81a(0x2ca)+_0x4de81a(0x1ce)+'odels'](_0x5a00f6)),_0x248b9f(_0x4de81a(0x2a8)+_0x4de81a(0x46b)+_0x4de81a(0x42e),()=>_0x76f3db()[_0x4de81a(0x259)][_0x4de81a(0x301)+'ModelId']()),_0x248b9f('models:c'+_0x4de81a(0x218)+_0x4de81a(0x2e0),()=>_0x76f3db()[_0x4de81a(0x259)][_0x4de81a(0x23b)+'dels']()),_0x248b9f('runtime:'+_0x4de81a(0x40d)+_0x4de81a(0x34a)+_0x4de81a(0x1ef),async()=>{const _0x56915f=_0x4de81a,_0x2d4a73=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController['syncRunt'+_0x56915f(0x3cc)+'ns'](),{'ok':!![],'syncedAt':new Date()[_0x56915f(0x24d)+_0x56915f(0x3b6)](),'manifest':_0x2d4a73,'status':await getRuntimeResourceStatus()};}),_0x248b9f(_0x4de81a(0x1cc)+_0x4de81a(0x1b3)+'-status',async()=>getRuntimeResourceStatus());}async function boot(){const _0x2353d6=_0x39b169;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x2353d6(0x2c2)](shellConfig[_0x2353d6(0x449)+_0x2353d6(0x323)]),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x2353d6(0x3d4)],'main'),ipcLogger=createShellLogger(configController[_0x2353d6(0x3d4)],_0x2353d6(0x2d3)),filesLogger=createShellLogger(configController['paths'],_0x2353d6(0x41e)),rendererLogger=createShellLogger(configController[_0x2353d6(0x3d4)],'renderer'),productRuntime=await loadProductRuntime();const _0x294562=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController['paths'][_0x2353d6(0x466)],'appContext':{'productName':shellConfig['productN'+_0x2353d6(0x323)],'appId':shellConfig[_0x2353d6(0x2fd)],'appVersion':app[_0x2353d6(0x1d9)+'on'](),'platform':process['platform'],'arch':process[_0x2353d6(0x491)],..._0x294562?{'apiEndpoint':_0x294562}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController[_0x2353d6(0x3d4)]['logsDir'],'diagnosticsWriter':diagnosticsWriter}),updateController=createUpdateController({'shellConfig':shellConfig,'appName':()=>app[_0x2353d6(0x3e0)],'appVersion':()=>app[_0x2353d6(0x1d9)+'on'](),'broadcast':broadcast,'logger':mainLogger}),updateController[_0x2353d6(0x233)+'ze'](),registerProcessLogHooks(),mainLogger?.[_0x2353d6(0x46d)](_0x2353d6(0x3f4)+_0x2353d6(0x35e)+_0x2353d6(0x1d8)+'ed',{'appVersion':app[_0x2353d6(0x1d9)+'on'](),'electronVersion':process[_0x2353d6(0x293)][_0x2353d6(0x3f4)],'nodeVersion':process['versions']['node'],'chromeVersion':process[_0x2353d6(0x293)][_0x2353d6(0x340)],'platform':process[_0x2353d6(0x42b)],'arch':process[_0x2353d6(0x491)],'mode':getMode(),'projectRoot':shellConfig['projectR'+'oot'],'configPath':shellConfig['configPa'+'th'],'dataDir':shellConfig[_0x2353d6(0x267)],'logsDir':configController['paths']['logsDir'],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x2353d6(0x2d5)+_0x2353d6(0x436)],_0x2353d6(0x333),_0x2353d6(0x3c0)+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app['getVersi'+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime[_0x2353d6(0x325)+_0x2353d6(0x29a)+'nfig']===_0x2353d6(0x3a3)&&await productRuntime[_0x2353d6(0x325)+_0x2353d6(0x29a)+_0x2353d6(0x465)]({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x2353d6(0x325)+_0x2353d6(0x28b)+'ta']===_0x2353d6(0x3a3)?await productRuntime[_0x2353d6(0x325)+_0x2353d6(0x28b)+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()[_0x2353d6(0x3fb)+_0x2353d6(0x411)+'d'](),attachGatewayBroadcastHandlers(gatewayController),await installIpcHandlers(),installClawspaceProtocolHandler(),registerShellShortcuts(),await createWindow(),await gatewayController['start'](),updateController['startBac'+_0x2353d6(0x1fc)+_0x2353d6(0x27d)](),mainLogger?.[_0x2353d6(0x46d)](_0x2353d6(0x3f4)+_0x2353d6(0x35e)+_0x2353d6(0x45e)+_0x2353d6(0x41b));}function registerProcessLogHooks(){const _0x30aa41=_0x39b169;if(registerProcessLogHooks['register'+'ed'])return;registerProcessLogHooks[_0x30aa41(0x222)+'ed']=!![],process['on'](_0x30aa41(0x458)+_0x30aa41(0x362)+'n',_0xc30ccf=>{const _0x36787e=_0x30aa41;mainLogger?.['error'](_0x36787e(0x458)+_0x36787e(0x3f7)+'on',summarizeError(_0xc30ccf));}),process['on']('unhandle'+_0x30aa41(0x433)+'on',_0x36e4d3=>{const _0x5ee15f=_0x30aa41;mainLogger?.['error'](_0x5ee15f(0x326)+'d\x20reject'+_0x5ee15f(0x31a),summarizeError(_0x36e4d3));}),app['on'](_0x30aa41(0x256)+_0x30aa41(0x1e1)+_0x30aa41(0x435),(_0x5db67c,_0x14f46c,_0x4fd53e)=>{const _0x44d6a8=_0x30aa41;mainLogger?.['error'](_0x44d6a8(0x316)+_0x44d6a8(0x2e8)+_0x44d6a8(0x241),{'url':_0x14f46c[_0x44d6a8(0x304)](),'details':_0x4fd53e});}),app['on']('child-pr'+_0x30aa41(0x370)+'ne',(_0x265c59,_0x17401f)=>{const _0x46053c=_0x30aa41;mainLogger?.['error'](_0x46053c(0x298)+_0x46053c(0x430)+'ne',{'details':_0x17401f});});}app['on'](_0x39b169(0x387)+_0x39b169(0x3ab)+'d',()=>{const _0x5618f6=_0x39b169;if(process[_0x5618f6(0x42b)]!==_0x5618f6(0x424))app['quit']();}),app['on'](_0x39b169(0x246),async()=>{const _0x13ac55=_0x39b169;if(isQuitting){app['quit']();return;}updateController?.['requestB'+'ackgroun'+_0x13ac55(0x451)](_0x13ac55(0x350)+_0x13ac55(0x1eb)),BrowserWindow[_0x13ac55(0x3d6)+_0x13ac55(0x22f)]()[_0x13ac55(0x3c7)]===0x0&&shellConfig&&await createWindow();}),app['on'](_0x39b169(0x421)+_0x39b169(0x2ba),_0x42c1f6=>{const _0x1a66ca=_0x39b169;isQuitting=!![],updateController?.['markQuit'+_0x1a66ca(0x305)](),terminalManager?.[_0x1a66ca(0x32c)](),terminalManager=null,productRuntimeHooks?.[_0x1a66ca(0x32c)]?.();for(const _0x1ced8d of Object[_0x1a66ca(0x28f)](productRuntimeHooks))delete productRuntimeHooks[_0x1ced8d];if(!gatewayController)return;mainLogger?.[_0x1a66ca(0x46d)](_0x1a66ca(0x36c)+_0x1a66ca(0x1e6)+_0x1a66ca(0x38d)+'teway'),_0x42c1f6[_0x1a66ca(0x44e)+_0x1a66ca(0x19d)](),void gatewayController[_0x1a66ca(0x3e1)]()['finally'](()=>{const _0x5b3911=_0x1a66ca;gatewayController=null,mainLogger?.['info'](_0x5b3911(0x37c)+_0x5b3911(0x1be)+_0x5b3911(0x36c)+_0x5b3911(0x2ba)),app[_0x5b3911(0x1c4)]();});}),app['on'](_0x39b169(0x1e2)+'t',()=>{globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);}),app['whenRead'+'y']()[_0x39b169(0x2eb)](boot)[_0x39b169(0x388)](_0x552e05=>{const _0x179efd=_0x39b169;bootError=_0x552e05 instanceof Error?_0x552e05[_0x179efd(0x495)]:String(_0x552e05),mainLogger?.[_0x179efd(0x307)](_0x179efd(0x3f4)+_0x179efd(0x35e)+_0x179efd(0x3be)+'d',summarizeError(_0x552e05)),console['error'](_0x179efd(0x1f4)+_0x179efd(0x3b4)+_0x179efd(0x2fb)+'boot\x20ele'+_0x179efd(0x3dc)+'in',_0x552e05);});
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);});