@wujie-shell/core 4.0.1 → 4.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/wujie-shell.mjs +1 -1
- package/dist/src/agents/bundled-agent-skills.mjs +1 -1
- package/dist/src/agents/bundled-agents.mjs +1 -1
- package/dist/src/chat/media-archive.mjs +1 -1
- package/dist/src/chat/queue.mjs +1 -1
- package/dist/src/common/diagnostics.mjs +1 -1
- package/dist/src/common/logging.mjs +1 -1
- package/dist/src/common/runtime-logger.mjs +1 -1
- package/dist/src/common/user-events.mjs +1 -1
- package/dist/src/common/utils.mjs +1 -1
- package/dist/src/config/controller.mjs +1 -1
- package/dist/src/connectors/config-utils.mjs +1 -1
- package/dist/src/connectors/constants.mjs +1 -1
- package/dist/src/connectors/controller.mjs +1 -1
- package/dist/src/connectors/kdocs-cli.mjs +1 -1
- package/dist/src/electron/main.mjs +1 -1
- package/dist/src/electron/preload.mjs +1 -1
- package/dist/src/files/generated-files-store.mjs +1 -1
- package/dist/src/files/handlers.mjs +1 -1
- package/dist/src/gateway/chat-delta.mjs +1 -1
- package/dist/src/gateway/controller.mjs +1 -1
- package/dist/src/gateway/ws-client.mjs +1 -1
- package/dist/src/index.mjs +1 -1
- package/dist/src/log-reporting/handlers.mjs +1 -1
- package/dist/src/log-reporting/report-logs.mjs +1 -1
- package/dist/src/models/handlers.mjs +1 -1
- package/dist/src/preferences/store.mjs +1 -1
- package/dist/src/runtime/index.mjs +1 -1
- package/dist/src/runtime/patch-channel-plugin-runtime.mjs +1 -1
- package/dist/src/runtime/patch-chat-history-mixed-tool-content.mjs +1 -1
- package/dist/src/runtime/patch-session-store-sqlite.mjs +1 -1
- package/dist/src/runtime/plugin-sync.mjs +1 -1
- package/dist/src/sessions/agent-sessions-map-store.mjs +1 -1
- package/dist/src/sessions/runtime-bridge.mjs +1 -1
- package/dist/src/sessions/session-sqlite-store.mjs +1 -1
- package/dist/src/skills/import.mjs +1 -1
- package/dist/src/skills/market.mjs +1 -1
- package/dist/src/terminal/manager.mjs +1 -1
- package/dist/src/updates/controller.mjs +1 -1
- package/dist/src/updates/loader.mjs +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x320a6b=_0x26f3;(function(_0x1994c7,_0x54246c){const _0x280f12=_0x26f3,_0x5a8851=_0x1994c7();while(!![]){try{const _0x41ad7f=-parseInt(_0x280f12(0x10b))/0x1+parseInt(_0x280f12(0x168))/0x2+-parseInt(_0x280f12(0x251))/0x3+parseInt(_0x280f12(0x81))/0x4*(-parseInt(_0x280f12(0x290))/0x5)+-parseInt(_0x280f12(0x2fc))/0x6+-parseInt(_0x280f12(0x1e6))/0x7+parseInt(_0x280f12(0x348))/0x8;if(_0x41ad7f===_0x54246c)break;else _0x5a8851['push'](_0x5a8851['shift']());}catch(_0x376bf3){_0x5a8851['push'](_0x5a8851['shift']());}}}(_0x3850,0x7d810));import _0x160cbb 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';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';function _0x26f3(_0x18d925,_0x50b2b9){_0x18d925=_0x18d925-0x7e;const _0x3850d6=_0x3850();let _0x26f350=_0x3850d6[_0x18d925];return _0x26f350;}import{loadRuntimeInfo,prepareRuntime,resolveRuntimeRoot,getRuntimeSpawnContext,resolveRuntimeLarkCliCommand,runClawOnce}from'../runtime/index.mjs';import{loadCreateUpdateController}from'../updates/loader.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,'preload.'+'mjs'),{app,BrowserWindow,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x160cbb,DEVTOOLS_ACCELERATOR=_0x320a6b(0x30c)+_0x320a6b(0x2a6)+'+Shift+I',CLAWSPACE_PROTOCOL_SCHEME=_0x320a6b(0xcc)+'e',DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!==_0x320a6b(0x29c)+'on',LOCAL_FILE_MIME_TYPES=new Map([[_0x320a6b(0x1c8),_0x320a6b(0x1e7)+_0x320a6b(0x80)+_0x320a6b(0x2b7)+'8'],[_0x320a6b(0x19d),_0x320a6b(0x241)+_0x320a6b(0x136)+_0x320a6b(0x15f)+'tf-8'],[_0x320a6b(0x99),'image/jp'+'eg'],[_0x320a6b(0x1f7),_0x320a6b(0xd0)+'eg'],['.png','image/pn'+'g'],[_0x320a6b(0x246),_0x320a6b(0x214)+'f'],[_0x320a6b(0x2f7),_0x320a6b(0x38f)+'p'],[_0x320a6b(0x329),_0x320a6b(0x327)+'g+xml'],['.webp',_0x320a6b(0x203)+'bp'],['.mp4',_0x320a6b(0xf2)+'4'],[_0x320a6b(0x341),_0x320a6b(0x179)+'icktime'],[_0x320a6b(0x272),_0x320a6b(0x1ed)+'msvideo'],[_0x320a6b(0x20c),_0x320a6b(0x1ed)+_0x320a6b(0x114)],[_0x320a6b(0x30f),_0x320a6b(0x13c)+'bm'],['.mp3','audio/mp'+'eg'],[_0x320a6b(0x29b),_0x320a6b(0x18e)+'v'],[_0x320a6b(0x2c7),'audio/mp'+'4'],[_0x320a6b(0xba),_0x320a6b(0x319)+'c'],[_0x320a6b(0x1ee),_0x320a6b(0x2d2)+'g'],['.flac',_0x320a6b(0x14b)+'ac']]);protocol[_0x320a6b(0x388)+_0x320a6b(0x1be)+_0x320a6b(0x1e9)+_0x320a6b(0x86)]([{'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(_0x284c5b){const _0x51cb4c=_0x320a6b;for(const _0x45665e of[_0x51cb4c(0x1e5)+'status',_0x51cb4c(0x1e5)+_0x51cb4c(0x127),_0x51cb4c(0x317)+'eam-even'+'t',_0x51cb4c(0x187)+_0x51cb4c(0x281),_0x51cb4c(0x1b8)+_0x51cb4c(0x11d)+_0x51cb4c(0x245),_0x51cb4c(0xf0)+_0x51cb4c(0x1d6),'agents-u'+_0x51cb4c(0x31b),_0x51cb4c(0x143)+'-questio'+'n']){_0x284c5b['on'](_0x45665e,_0x3db899=>broadcast(_0x45665e,_0x3db899));}}function ensureSessionSqliteStore(){const _0x7ba5aa=_0x320a6b;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error(_0x7ba5aa(0x106)+_0x7ba5aa(0x25c)+_0x7ba5aa(0x1ab)+'t\x20initia'+_0x7ba5aa(0x181));return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController[_0x7ba5aa(0x11c)+_0x7ba5aa(0x22c)]()}),sessionSqliteStore;}function ensureGeneratedFilesStore(){const _0x1320f5=_0x320a6b;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error(_0x1320f5(0x106)+_0x1320f5(0x25c)+_0x1320f5(0x1ab)+_0x1320f5(0x2d3)+_0x1320f5(0x181));return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController[_0x1320f5(0x11c)+_0x1320f5(0x22c)]()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0x1db233=_0x320a6b;if(!gatewayController&&(!shellConfig||!configController))throw new Error(bootError?_0x1db233(0x106)+_0x1db233(0x337)+_0x1db233(0x29a)+'\x20'+bootError:_0x1db233(0x106)+_0x1db233(0x2ae)+_0x1db233(0xe9)+_0x1db233(0x38a)+'alized');return!gatewayController&&(mainLogger?.['warn'](_0x1db233(0x224)+_0x1db233(0xd3)+_0x1db233(0x2b9)+_0x1db233(0x346)+_0x1db233(0xa1)),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x1db233(0x334)+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController)),await gatewayController[_0x1db233(0x14d)](),gatewayController;}function getMode(){const _0xe6293c=_0x320a6b;return process.env.VITE_DEV_SERVER_URL?'dev':_0xe6293c(0x101);}function isGatewayNotInitializedError(_0x191aeb){const _0x1dbff6=_0x320a6b;return _0x191aeb instanceof Error&&_0x191aeb['message']===_0x1dbff6(0x106)+_0x1dbff6(0x2ae)+_0x1dbff6(0xe9)+_0x1dbff6(0x38a)+'alized';}function _0x3850(){const _0x562f05=['cwd','HEAD','audio/og','t\x20initia','Custom','ready','logs\x20dir','channelI','openDire','temp','eted','rocess-g','filePath','Everywhe','d-state','record','ntime','dRejecti','models:s','sConnect','ssionKey','keyDown','saveFeis','emoji','alized','chat:abo','eated','isMaximi','mand','command','update','dist','runtime:','abort','api.open','D,\x20OPTIO','nabled','der/mode','chat:his','.bmp','range','ywhere','shared-c','context','4854420KbmeWd',':run-onc','com-chan','ession','file\x20wri','minimize','cle','multiSel','send','closeToT','inimize','object','nel','plugin\x20c','replace','maxEntri','CommandO','path\x20is\x20','meta','.webm','now','getPinne','cancelFe','string','succeede','dels','les:reve','chat-str','cCliConn','audio/aa','app:file','pdated','nnectSes','platform','teway','resource','e\x20url','liConnec','ocs','oot','saveWeco','logs:exp',':diagnos','image/sv',':rename','.svg','ntext','openExte','ChannelC','reorderP','ximize','shuDocCl',':list','hatChann','lawChann','gatewayP','getVersi','ssion','catch','ell\x20boot','st-direc','app:tray','filters',':save-fe','\x20shortcu','folder','maxToken','-exit','logsDir','.mov','node','dated','webConte','-pinned','ng;\x20recr','rated-fi','22364600XyLMEs','before-i','Keys','\x20configu','stration','em:resta',':resize','onnector','ate','orConfig','ncident','ad-binar','ls:delet','get','entDocsC','untimeHa','binary\x20f','-weixin','efault','et-self-','before-q','est_fail','chatChan','-request','logs','\x20to\x20load','no\x20defau','g_conten','illEntry','\x20complet','s:hide','setName','pping\x20ga','showOpen','select\x20d','product\x20','readSess','cancelWe','cron:run','parse','create','ead','pened',':save-kd',':complet','oken','Config','e\x20comple','isabled','min','model','les:dele','window_f','feishu_d','cron','nectSess','xOf','Updates','shell-ru','chat:str','lose','edWindow','files:se','nput-eve','register','toLowerC','ot\x20initi','updateOp','ey\x20is\x20re','uit','unmaximi','image/bm','trationS','title','mChannel','ocsCliCo','method','les:hide','stomMode','[wujie-s','isIntege','in;\x20char','252utAzWm','select\x20f','then','parentSe','devtools','ged','includes','Entry','n\x20not\x20fo','close',':save-we','parseInt','tabs-com','saveTenc','agent\x20cr','getAllWi','ion/json','ype','ources','toISOStr','name','wBin','window:t','boot\x20ele','.jpg','keys','info','openDevT','remove','nt]','GET,\x20HEA','defaultF','eating','complete',':get-clo','all','app:upda','\x20main\x20bo','ndlers','-port','ame','child-pr','model-id','relaunch','models:c','enable','upsert','ationSta','some','t-stream','ector:\x20','red;\x20set','Dialog','stringif','control','ell:even','avatar','.aac','runtime\x20','detach','file\x20rea','pluginId','tup:get','exec','inned','markQuit','manifest','app_acti','agent\x20al','failed','yInfo','cron:lis','agents:u','lConfig','ready\x20ex','clawspac','ile\x20comp','et-selec','plugins','image/jp','type','nts','controll','productN','orted','m-channe','ocess-go','showSave','Unsuppor','reate',':open-cl','temperat','ap:entry','from','uired','Update','ctStatus','unknown','-data','skills:s',':cancel','nstall','enClawCo','product-','way\x20is\x20n','board:wr','ort','nConfig','ontents','ls:list','te:downl','agent-ev','ls:set-e','video/mp','canceled','agents:w','ngtalk-d','fromEntr','l\x20prepar','Observed','getAppPa','ase',':agent-m','quit','s:reveal','imePlugi','hecks','ackgroun','prod','huChanne',':runtime','ndows','hell:ipc','wujie-sh','ite','igWriteH','ap:upser','s:list','468244NOOBVQ','entExmai','resh-age','preventD','andledIn','e:write-','openPath','itialize','ustom-mo','matroska',':downloa','nnel','agent\x20id','-refresh','ted\x20conn','defaults','tic','resolveS','-invalid','/chat/co','onfig\x20up','syncRunt','disable','oggle-ma','pServer','ctory','shuRegis','applicat','log','handle','set','ies','IPC\x20requ','elConfig',':save-te','deletedS','atus','startsWi','nfo','utf8','uRegistr','-questio','ile\x20writ','kdown;\x20c','n-direct','app:clip','deleteOp','lawPlugi','ap:get','video/we','local','ot\x20compl','ilConnec','Version','rename','ion','ask-user','ists','agent','choices','warn','omModel','logs\x20exp','pen-devt','audio/fl','ipc\x20requ','start','omplete','s:delete','lastInde','ontent-t','feishu','ncent-do','saveNetE',':save-di','fig','hell]\x20fa','lect-fil','tabs:req','content-','t-messag','files:li','-life-cy','onfig','harset=u','em:open-','tabs:ref','artifact','ired','dCheck','talkDocC','ipc_requ','rver','1843818YcQdBh','app.asar','wechat','\x20log','\x20is\x20requ','ted','https://','window:c','n\x20loaded','est\x20star','range,\x20c','deleteFi','tSession','d\x20comple','tup:set','e:direct','entries','video/qu','n\x20failed','versions','nges','h\x0aexec\x20\x22','lect-dir','ile\x20read','startBac','lized','\x20main\x20wi','settings','focus','nt-state','function','session-','ove','app:syst','nelSessi','payload','stop','download','audio/wa','promises','est\x20fail','-by-sess','oad','dSession','maximize','main','Bearer\x20','ectory\x20o','ssion:\x20','ectSessi','mpletion','path','loadURL','.md','preferen','app:star','status','setOpenC','initiali','loadFile','ipc','skills:u','number','terminal','ishu-doc','index.mj','meFilter','ig\x20is\x20no','elected-','kdocs','chat','indexOf','figured:','tabs:nav','InFolder','gatewayT','igSnapsh','plugins:','ccept-ra','-session','sessions','stion','aseMailC','hide','config:c','tease-ma','SchemesA','error','e:open-d','apiKey','dispose','\x20CLI\x20wra','enClawSk','ted-ever','map','enClawMc','.txt','ll-close','-once','message','getURL','jie-shel','creating','migrateP','nfig','#!/bin/s','ngs','tChannel','ItemSett','limit','ent','ileName','content','size','runtimeI','ettings','diagnost','sender','Invalid\x20','slice','ot\x20faile','ishu-cha','\x20a\x20provi','required','workspac','gateway-','7018172LZzDKg','text/pla','isArray','sPrivile','get-conf','l\x20reques','configPa','video/x-','.ogg','primary','files:re',':input','window:i','extensio','kgroundC','ections','deleteCu','.jpeg','generate','files','dow\x20load','provider','paths','quitAndI','dataDir','app:open','skills:i','level','\x20not\x20con','image/we','iConnect','messages','product','#0000000','setSetti','POST','ModelId','getRecen','.mkv','key','leted','lawSkill','activate','tLogs','wujiecla','roductDa','image/gi',':fork','getKdocs','headers','enClawCh','renderer','torConfi','ions-lis','list','child\x20pr','und','rayOnClo','unregist','tus','models','-logs','gateway\x20','cron:cre','toWeb','peratedM','ory\x20open','targetDi','e\x20direct','annelCon','tateDir',':create','-status','elSessio','delete','protocol','OPTIONS','started',':save-qq','getPath',':choose','startFei','sion','-shortcu','open\x20ext','openAtLo','sPath','d-local','ot\x20start','groups','openclaw','text/mar','skills:d','unhandle','deleteIm','ated','.gif','-context','elete','d\x20is\x20req','filter','ools','bytes\x20','main\x20win','ionEntry','ings','quired','1094667IZlNaT','director','agent-','sessionK','trim','CliConne','app:gene',':save-ne','uit:\x20sto','\x20process','input','ell\x20conf','byteLeng','ory','fromWebC','tory','isFinite','tatus','finally','l\x20first','hideBySe','ProductR','index.ht','saveQqMa','Not\x20foun','skills','ector\x20se','runOnce','nectorCo','th\x20is\x20re','ing','uest-age','recursiv','.avi','#f8fafc','-info','getStatu','agentId','ocess\x20go','getFeish',':pin','tabs-age','rnal','te:get-s','dled-res','writeEve','iled\x20to\x20','bot-chan','updated','render-p','saveKdoc','baseUrl','roductCo','electron','e:shared','\x20request','zed','range,\x20a','irectory','runtimeR','nnelEnab','uncaught','gin','44335ySLsUF','openFile','split','sharedCo','length','isFile','model\x20ht','pathname','plugin\x20e','-restart','\x20failed:','.wav','producti','stopped\x20','projectR','whenRead','yed','find',':status','ctron\x20ma','ai.com/v','ure','rControl','ectory','darwin','timeoutM','agents','kUserQue','huDocCon','requestB','ell\x20gate','before\x20q','les:list','captureI','eam',':unpin','lConnect','resize','ndow','set=utf-',':start','er\x20missi','files:wr','cancelKd','href','t:\x20','fromIpc','selected','pdate','ishuDocC','tate','-mail','agent\x20de','text','ion/octe','.m4a','config:i','FeishuDo',':gateway','uDocCliC','navigati','logs:wri','readConf','timeout'];_0x3850=function(){return _0x562f05;};return _0x3850();}function revealPathInFolder(_0x319604){const _0x338fb4=_0x320a6b,_0xff139f=String(_0x319604||'')['trim']();if(!_0xff139f)return{'ok':![],'error':'path\x20is\x20'+_0x338fb4(0x1e3)};return shell['showItem'+_0x338fb4(0x1b2)](_0xff139f),{'ok':!![]};}function resolveProjectRoot(){const _0xf1d091=_0x320a6b;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app['isPackag'+'ed']&&process[_0xf1d091(0x31f)+_0xf1d091(0x23c)])return join(process[_0xf1d091(0x31f)+'sPath'],_0xf1d091(0x169));return resolve(process[_0xf1d091(0x2d0)]());}function getLocalFileMimeType(_0x3ff2c5){const _0x3a6b0e=_0x320a6b;return LOCAL_FILE_MIME_TYPES[_0x3a6b0e(0x355)](_0x3ff2c5['slice'](_0x3ff2c5['lastInde'+'xOf']('.'))['toLowerC'+'ase']())||_0x3a6b0e(0x126)+_0x3a6b0e(0x2c6)+_0x3a6b0e(0xb2);}function parseSingleRangeHeader(_0x49e5bf,_0x3f5212){const _0x43b5ef=_0x320a6b,_0x53856f=/^bytes=(\d*)-(\d*)$/i[_0x43b5ef(0xc0)](_0x49e5bf[_0x43b5ef(0x255)]());if(!_0x53856f)return null;const [,_0xe6e555,_0xe1126a]=_0x53856f;if(!_0xe6e555&&!_0xe1126a)return null;if(!_0xe6e555){const _0x589580=Number['parseInt'](_0xe1126a,0xa);if(!Number[_0x43b5ef(0x261)](_0x589580)||_0x589580<=0x0)return null;const _0xde8fb=Math['max'](_0x3f5212-_0x589580,0x0);return{'start':_0xde8fb,'end':_0x3f5212-0x1};}const _0x37ca3d=Number['parseInt'](_0xe6e555,0xa);if(!Number['isFinite'](_0x37ca3d)||_0x37ca3d<0x0||_0x37ca3d>=_0x3f5212)return null;const _0x1f4e53=_0xe1126a?Number[_0x43b5ef(0x8c)](_0xe1126a,0xa):_0x3f5212-0x1;if(!Number[_0x43b5ef(0x261)](_0x1f4e53)||_0x1f4e53<_0x37ca3d)return null;return{'start':_0x37ca3d,'end':Math[_0x43b5ef(0x379)](_0x1f4e53,_0x3f5212-0x1)};}function decodeClawspacePath(_0x59ff81){const _0x5ca4c9=_0x320a6b;try{const _0x42cb29=new URL(_0x59ff81);if(_0x42cb29[_0x5ca4c9(0x231)]!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x42cb29['hostname']!==_0x5ca4c9(0x13d))return null;const _0x21dad1=decodeURIComponent(_0x42cb29[_0x5ca4c9(0x297)]);if(!_0x21dad1)return null;if(/^\/[A-Za-z]:\//['test'](_0x21dad1))return _0x21dad1['slice'](0x1);return _0x21dad1;}catch{return null;}}function createClawspaceHeaders(_0x3048a0={}){const _0x1e991b=_0x320a6b;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':_0x1e991b(0x9f)+_0x1e991b(0x2f3)+'NS','access-control-allow-headers':_0x1e991b(0x172)+_0x1e991b(0x151)+_0x1e991b(0x92),'access-control-expose-headers':_0x1e991b(0x15a)+'length,\x20'+_0x1e991b(0x15a)+_0x1e991b(0x28a)+_0x1e991b(0x1b6)+_0x1e991b(0x17c),..._0x3048a0});}function createLocalFileResponse(_0x2ab36a,_0x3f20af){const _0x3129d2=_0x320a6b,_0x42e21a=statSync(_0x3f20af);if(!_0x42e21a[_0x3129d2(0x295)]())return new Response('Not\x20foun'+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x3129d2(0x1e7)+'in;\x20char'+_0x3129d2(0x2b7)+'8'})});const _0x4f8cb3=getLocalFileMimeType(_0x3f20af),_0x3009a1=createClawspaceHeaders({'content-type':_0x4f8cb3,'accept-ranges':'bytes','cache-control':'no-store'});if(_0x2ab36a[_0x3129d2(0x394)]===_0x3129d2(0x2d1))return _0x3009a1[_0x3129d2(0x129)](_0x3129d2(0x15a)+_0x3129d2(0x294),String(_0x42e21a[_0x3129d2(0x1d9)])),new Response(null,{'status':0xc8,'headers':_0x3009a1});const _0x46b57=_0x2ab36a[_0x3129d2(0x217)]['get'](_0x3129d2(0x2f8));if(!_0x46b57)return _0x3009a1[_0x3129d2(0x129)](_0x3129d2(0x15a)+'length',String(_0x42e21a[_0x3129d2(0x1d9)])),new Response(Readable[_0x3129d2(0x226)](createReadStream(_0x3f20af)),{'status':0xc8,'headers':_0x3009a1});const _0x2d3aad=parseSingleRangeHeader(_0x46b57,_0x42e21a[_0x3129d2(0x1d9)]);if(!_0x2d3aad)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object[_0x3129d2(0xf6)+_0x3129d2(0x12a)](_0x3009a1['entries']()),'content-range':'bytes\x20*/'+_0x42e21a[_0x3129d2(0x1d9)]})});const {start:_0x2551c6,end:_0x356b2b}=_0x2d3aad,_0x527006=_0x356b2b-_0x2551c6+0x1,_0xd8f8ed=new Headers(_0x3009a1);return _0xd8f8ed['set'](_0x3129d2(0x15a)+_0x3129d2(0x294),String(_0x527006)),_0xd8f8ed[_0x3129d2(0x129)](_0x3129d2(0x15a)+_0x3129d2(0x2f8),_0x3129d2(0x24c)+_0x2551c6+'-'+_0x356b2b+'/'+_0x42e21a[_0x3129d2(0x1d9)]),new Response(Readable[_0x3129d2(0x226)](createReadStream(_0x3f20af,{'start':_0x2551c6,'end':_0x356b2b})),{'status':0xce,'headers':_0xd8f8ed});}function installClawspaceProtocolHandler(){const _0x2c6cee=_0x320a6b;protocol[_0x2c6cee(0x128)](CLAWSPACE_PROTOCOL_SCHEME,_0x3c8491=>{const _0x4c62e5=_0x2c6cee;if(_0x3c8491[_0x4c62e5(0x394)]===_0x4c62e5(0x232))return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x3d4a07=decodeClawspacePath(_0x3c8491['url']);if(!_0x3d4a07)return new Response(_0x4c62e5(0x1de)+'clawspac'+_0x4c62e5(0x320),{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x4c62e5(0x1e7)+_0x4c62e5(0x80)+'set=utf-'+'8'})});if(!existsSync(_0x3d4a07))return new Response(_0x4c62e5(0x269)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x4c62e5(0x1e7)+_0x4c62e5(0x80)+'set=utf-'+'8'})});return createLocalFileResponse(_0x3c8491,_0x3d4a07);});}function broadcast(_0x51a9ad,_0x13d39f){const _0x1502d7=_0x320a6b;DEBUG_STDOUT&&console['info'](_0x1502d7(0x7e)+'hell:eve'+_0x1502d7(0x9e),_0x51a9ad,summarizePayload(_0x13d39f,{'maxDepth':0x2}));for(const _0x2a175f of BrowserWindow[_0x1502d7(0x90)+_0x1502d7(0x104)]()){!_0x2a175f[_0x1502d7(0x344)+_0x1502d7(0xd2)]['isDestro'+'yed']()&&_0x2a175f[_0x1502d7(0x344)+_0x1502d7(0xd2)][_0x1502d7(0x304)](_0x1502d7(0x106)+'ell:even'+'t',{'name':_0x51a9ad,'payload':_0x13d39f});}}async function loadProductRuntime(){const _0x331fcf=_0x320a6b,_0x319092=[join(shellConfig['projectR'+'oot'],_0x331fcf(0x382)+_0x331fcf(0x2e0),_0x331fcf(0x1a9)+'s'),join(app[_0x331fcf(0xf9)+'th'](),_0x331fcf(0x382)+_0x331fcf(0x2e0),'index.mj'+'s')],_0x5a185f=_0x319092['find'](_0x428167=>existsSync(_0x428167));if(!_0x5a185f)return mainLogger?.[_0x331fcf(0x9b)]('product\x20'+_0x331fcf(0xbb)+_0x331fcf(0x1f3)+_0x331fcf(0x89)+_0x331fcf(0x21e),{'runtimeCandidates':_0x319092}),{};try{const _0x45cacc=await import(pathToFileURL(_0x5a185f)[_0x331fcf(0x2bc)]);return mainLogger?.[_0x331fcf(0x9b)]('product\x20'+_0x331fcf(0xbb)+'extensio'+_0x331fcf(0x170),{'runtimePath':_0x5a185f}),_0x45cacc;}catch(_0x4c6c70){mainLogger?.[_0x331fcf(0x1bf)](_0x331fcf(0x36b)+'runtime\x20'+'extensio'+_0x331fcf(0x17a)+_0x331fcf(0x361),{'runtimePath':_0x5a185f,'error':summarizeError(_0x4c6c70)});throw _0x4c6c70;}}function openDevToolsForActiveContext(){const _0x39d56f=_0x320a6b,_0x52fe5a=BrowserWindow['getFocus'+_0x39d56f(0x385)]()||mainWindow;if(!_0x52fe5a||_0x52fe5a['isDestro'+_0x39d56f(0x2a0)]())return{'ok':![]};return _0x52fe5a[_0x39d56f(0x344)+_0x39d56f(0xd2)][_0x39d56f(0x9c)+'ools']({'mode':_0x39d56f(0xbc)}),_0x52fe5a['webConte'+_0x39d56f(0xd2)][_0x39d56f(0x304)](_0x39d56f(0x106)+_0x39d56f(0xb8)+'t',{'name':_0x39d56f(0x85)+_0x39d56f(0x239)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x8854d4=_0x320a6b;globalShortcut[_0x8854d4(0x220)+'er'](DEVTOOLS_ACCELERATOR);const _0x41d228=globalShortcut['register'](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x41d228&&console[_0x8854d4(0x147)](_0x8854d4(0x7e)+'hell]\x20fa'+_0x8854d4(0x27f)+_0x8854d4(0x388)+_0x8854d4(0x33c)+_0x8854d4(0x2bd)+DEVTOOLS_ACCELERATOR);}async function getRuntimeResourceStatus(){const _0x5424d5=_0x320a6b;try{const _0x40e85d=await loadRuntimeInfo(shellConfig[_0x5424d5(0x29e)+_0x5424d5(0x323)]),_0x9c144b=_0x40e85d[_0x5424d5(0xc3)]||{};return{'ok':!![],'runtimeRoot':_0x40e85d[_0x5424d5(0x28c)+_0x5424d5(0x323)],'openclawVersion':_0x40e85d[_0x5424d5(0x240)+_0x5424d5(0x140)],'generatedAt':_0x9c144b[_0x5424d5(0x1f8)+'dAt']||null,'pluginCount':Array[_0x5424d5(0x1e8)](_0x9c144b[_0x5424d5(0xcf)])?_0x9c144b[_0x5424d5(0xcf)][_0x5424d5(0x294)]:0x0,'plugins':Array[_0x5424d5(0x1e8)](_0x9c144b['plugins'])?_0x9c144b[_0x5424d5(0xcf)]:[],'agents':_0x9c144b['agents']||null,'skills':_0x9c144b['skills']||null,'wrapper':_0x9c144b[_0x5424d5(0x212)+_0x5424d5(0x96)]||null,'product':_0x9c144b[_0x5424d5(0x206)]||null};}catch(_0x4bda00){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.[_0x5424d5(0x29e)+'oot']||resolveProjectRoot()),'error':_0x4bda00 instanceof Error?_0x4bda00[_0x5424d5(0x1cb)]:String(_0x4bda00)};}}async function createWindow(){const _0x596186=_0x320a6b,_0x2f5ace=process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x596186(0x29e)+'oot'],_0x596186(0x2ef),'index.ht'+'ml'),_0x53cca3=process[_0x596186(0x31d)]==='darwin';mainLogger?.[_0x596186(0x9b)](_0x596186(0x1ce)+_0x596186(0x182)+_0x596186(0x2b6),{'rendererUrl':_0x2f5ace,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x596186(0xd4)+'ame'],'backgroundColor':_0x53cca3?_0x596186(0x207)+'0':_0x596186(0x273),'titleBarStyle':_0x53cca3?'hidden':'default',..._0x53cca3?{'titleBarOverlay':!![],'trafficLightPosition':{'x':0x10,'y':0xc}}:{},..._0x53cca3?{'vibrancy':'sidebar'}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}}),mainWindow[_0x596186(0x344)+_0x596186(0xd2)]['on'](_0x596186(0x349)+_0x596186(0x387)+'nt',_0x267573=>{const _0x3b73d0=_0x596186,_0x298ad7=_0x267573[_0x3b73d0(0x25b)];if(!_0x298ad7||_0x298ad7['type']!==_0x3b73d0(0x2e5))return;const _0x1f67ad=String(_0x298ad7[_0x3b73d0(0x20d)]||'')[_0x3b73d0(0x389)+_0x3b73d0(0xfa)](),_0x3cb1f8=_0x1f67ad==='r',_0x149174=process[_0x3b73d0(0x31d)]===_0x3b73d0(0x2a8)?_0x298ad7['meta']===!![]:_0x298ad7[_0x3b73d0(0xb7)]===!![];if(!_0x3cb1f8||!_0x149174)return;_0x267573[_0x3b73d0(0x10e)+'efault'](),broadcast(_0x3b73d0(0x8d)+_0x3b73d0(0x2ec),{'type':_0x3b73d0(0x2cc)+'on','action':'reload'});}),mainWindow['on'](_0x596186(0x184),()=>{const _0x53f73e=_0x596186;updateController?.[_0x53f73e(0x2ad)+'ackgroun'+_0x53f73e(0x164)](_0x53f73e(0x37c)+'ocus');});const _0x310a5d=process.env.VITE_DEV_SERVER_URL;_0x310a5d?(await mainWindow[_0x596186(0x19c)](_0x310a5d),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow[_0x596186(0x344)+_0x596186(0xd2)]['openDevT'+_0x596186(0x24b)]({'mode':_0x596186(0xbc)})):await mainWindow[_0x596186(0x1a3)](join(shellConfig[_0x596186(0x29e)+_0x596186(0x323)],'dist',_0x596186(0x267)+'ml')),mainLogger?.[_0x596186(0x9b)](_0x596186(0x24d)+_0x596186(0x1fa)+'ed',{'rendererUrl':_0x2f5ace,'mode':getMode()});}async function installIpcHandlers(){const _0x1ad4e7=_0x320a6b,_0x1a14b8=(_0x2aee45,_0x399283)=>{const _0x4ae786=_0x26f3;ipcMain[_0x4ae786(0x128)](_0x2aee45,async(_0x49eaa8,_0x104490)=>{const _0x112d8c=_0x4ae786,_0x448062=Date[_0x112d8c(0x310)](),_0x3b30d2=_0x49eaa8['senderFr'+'ame']?.['url']||_0x49eaa8[_0x112d8c(0x1dd)]['getURL']();ipcLogger?.[_0x112d8c(0x9b)](_0x112d8c(0x14c)+_0x112d8c(0x171)+_0x112d8c(0x16d),{'channel':_0x2aee45,'senderUrl':_0x3b30d2,'payload':summarizePayload(_0x104490)});DEBUG_STDOUT&&console[_0x112d8c(0x9b)](_0x112d8c(0x7e)+'hell:ipc'+']',_0x2aee45,_0x112d8c(0x233),summarizePayload(_0x104490));try{let _0x35a798;try{_0x35a798=await _0x399283(_0x49eaa8,_0x104490);}catch(_0x21a89e){if(!isGatewayNotInitializedError(_0x21a89e))throw _0x21a89e;await ensureGatewayControllerStarted(),_0x35a798=await _0x399283(_0x49eaa8,_0x104490);}const _0x3f518f=Date['now']()-_0x448062;return ipcLogger?.[_0x112d8c(0x9b)](_0x112d8c(0x14c)+'est\x20comp'+_0x112d8c(0x20e),{'channel':_0x2aee45,'durationMs':_0x3f518f,'result':summarizePayload(_0x35a798,{'maxDepth':0x2})}),await userEventWriter?.[_0x112d8c(0x2be)]({'channel':_0x2aee45,'payload':_0x104490,'result':_0x35a798,'durationMs':_0x3f518f,'status':_0x112d8c(0x314)+'d'}),DEBUG_STDOUT&&console[_0x112d8c(0x9b)]('[wujie-s'+'hell:ipc'+']',_0x2aee45,_0x112d8c(0xa2)+'d',summarizePayload(_0x35a798,{'maxDepth':0x2})),_0x35a798;}catch(_0xb91428){const _0xee856f=Date['now']()-_0x448062;ipcLogger?.[_0x112d8c(0x1bf)](_0x112d8c(0x14c)+'est\x20fail'+'ed',{'channel':_0x2aee45,'durationMs':_0xee856f,'error':summarizeError(_0xb91428)}),await userEventWriter?.[_0x112d8c(0x2be)]({'channel':_0x2aee45,'payload':_0x104490,'error':_0xb91428,'durationMs':_0xee856f,'status':_0x112d8c(0xc6)}),await diagnosticsWriter?.[_0x112d8c(0x2b1)+_0x112d8c(0x352)](diagnosticEventFromError(_0xb91428,{'category':_0x112d8c(0x1a4),'event':_0x112d8c(0x166)+_0x112d8c(0x35d)+'ed','message':_0x112d8c(0x12b)+_0x112d8c(0x190)+'ed:\x20'+_0x2aee45,'durationMs':_0xee856f,'meta':{'channel':_0x2aee45,'senderUrl':_0x3b30d2,'payload':summarizePayload(_0x104490)}}));DEBUG_STDOUT&&console[_0x112d8c(0x1bf)](_0x112d8c(0x7e)+_0x112d8c(0x105)+']',_0x2aee45,_0x112d8c(0xc6),summarizeError(_0xb91428));throw _0xb91428;}});},_0x1edaf4=()=>{const _0x324322=_0x26f3;if(!gatewayController)throw new Error(bootError?_0x324322(0x106)+_0x324322(0x337)+_0x324322(0x29a)+'\x20'+bootError:_0x324322(0x106)+_0x324322(0x2ae)+_0x324322(0xe9)+_0x324322(0x38a)+_0x324322(0x2e8));return gatewayController;},_0x416fb3=()=>{const _0x1e4f59=_0x26f3;if(typeof productRuntime[_0x1e4f59(0x388)+_0x1e4f59(0x266)+_0x1e4f59(0x357)+_0x1e4f59(0xa7)]!==_0x1e4f59(0x186))return;const _0x2a5ee6=productRuntime['register'+'ProductR'+_0x1e4f59(0x357)+_0x1e4f59(0xa7)]({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0x1a14b8,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0x1edaf4,'sep':sep,'openClawConfigHandlers':{'update':(..._0x4bdeb4)=>configController[_0x1e4f59(0x38b)+_0x1e4f59(0xe7)+_0x1e4f59(0x1d0)](..._0x4bdeb4),'setPluginConfig':_0x53183b=>configController['setOpenC'+_0x1e4f59(0x13a)+_0x1e4f59(0xec)](_0x53183b),'setChannelConfig':_0x265b64=>configController[_0x1e4f59(0x1a1)+'lawChann'+_0x1e4f59(0x12c)](_0x265b64),'deleteChannelConfig':_0x413b2b=>configController['deleteOp'+_0x1e4f59(0x218)+_0x1e4f59(0x22b)+_0x1e4f59(0x156)](_0x413b2b),'setSkillEntry':_0x18d61f=>configController[_0x1e4f59(0x1a1)+_0x1e4f59(0x20f)+_0x1e4f59(0x88)](_0x18d61f),'deleteSkillEntry':_0x598ae5=>configController[_0x1e4f59(0x139)+_0x1e4f59(0x1c4)+_0x1e4f59(0x364)](_0x598ae5),'setMcpServer':_0x16c293=>configController[_0x1e4f59(0x1a1)+'lawMcpSe'+_0x1e4f59(0x167)](_0x16c293),'deleteMcpServer':_0x4e88df=>configController[_0x1e4f59(0x139)+'enClawMc'+_0x1e4f59(0x123)](_0x4e88df)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x3e806d})||{};Object['assign'](productRuntimeHooks,_0x2a5ee6);};_0x1a14b8('app:info',async()=>({'name':shellConfig['productN'+_0x1ad4e7(0xa9)],'version':app[_0x1ad4e7(0x334)+'on'](),'appId':shellConfig['appId'],'dataDir':shellConfig[_0x1ad4e7(0x1fe)]})),_0x1a14b8(_0x1ad4e7(0x1ff)+'-url',async(_0x2069d,_0x15be80)=>{const _0x41aa34=_0x1ad4e7,_0x59eb96=typeof _0x15be80===_0x41aa34(0x313)?_0x15be80:'';if(!_0x59eb96)return{'ok':![]};return filesLogger?.[_0x41aa34(0x9b)](_0x41aa34(0x23a)+'ernal\x20ur'+_0x41aa34(0x1eb)+'ted',{'url':summarizeText(_0x59eb96,0xa0)}),await shell[_0x41aa34(0x32b)+_0x41aa34(0x27b)](_0x59eb96),{'ok':!![]};});const _0x3e806d=async(_0x14f853,_0xe5135d)=>{const _0x3088b2=_0x1ad4e7;return configController['markConf'+_0x3088b2(0x108)+_0x3088b2(0x10f)+'ternally'](),await configController['writeCon'+_0x3088b2(0x156)](_0x14f853,_0xe5135d),{'ok':!![]};};_0x416fb3(),_0x1a14b8(_0x1ad4e7(0x200)+'mport-zi'+'p',async(_0x174e63,_0x1b019a)=>importMarketSkillZip({'payload':_0x1b019a,'importSkillZip':_0xd1450b=>importSkillZip({..._0xd1450b,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow['fromWebC'+_0x1ad4e7(0xed)](_0x174e63[_0x1ad4e7(0x1dd)])||mainWindow,'configController':configController}),'configController':configController})),_0x1a14b8(_0x1ad4e7(0x1a5)+_0x1ad4e7(0x2c0),(_0x2cb240,_0x5c8015)=>updateManagedSkillConfig({'payload':_0x5c8015,'configController':configController})),_0x1a14b8(_0x1ad4e7(0x242)+_0x1ad4e7(0x248),(_0x287845,_0x58d32a)=>deleteMarketSkillRegistryEntry({'payload':_0x58d32a,'deleteManagedSkill':_0x3a03c4=>deleteManagedSkill({..._0x3a03c4,'gateway':_0x1edaf4(),'configController':configController}),'configController':configController}));const _0x596ac6=ensureGeneratedFilesStore();_0x1a14b8(_0x1ad4e7(0x257)+_0x1ad4e7(0x347)+_0x1ad4e7(0x2b0),async()=>_0x596ac6[_0x1ad4e7(0x21c)]()),_0x1a14b8(_0x1ad4e7(0x257)+'rated-fi'+'les:upse'+'rt',async(_0x407d5a,_0x546a4c={})=>_0x596ac6[_0x1ad4e7(0xaf)](_0x546a4c)),_0x1a14b8(_0x1ad4e7(0x257)+_0x1ad4e7(0x347)+_0x1ad4e7(0x395),async(_0x22738b,_0x3c8f1d)=>_0x596ac6['hide'](String(_0x3c8f1d||''))),_0x1a14b8(_0x1ad4e7(0x257)+_0x1ad4e7(0x347)+_0x1ad4e7(0x395)+_0x1ad4e7(0x191)+_0x1ad4e7(0x142),async(_0x32446b,_0x24a6e5)=>_0x596ac6[_0x1ad4e7(0x265)+_0x1ad4e7(0x335)](String(_0x24a6e5||''))),_0x1a14b8(_0x1ad4e7(0x257)+_0x1ad4e7(0x347)+_0x1ad4e7(0x37b)+'te',async(_0x398f55,_0x131870)=>_0x596ac6[_0x1ad4e7(0x173)+'le'](String(_0x131870||''))),_0x1a14b8(_0x1ad4e7(0x257)+_0x1ad4e7(0x347)+'les:dele'+'ted-stat'+'e',async(_0x161e74,_0x40e5c1=[])=>_0x596ac6[_0x1ad4e7(0x12e)+_0x1ad4e7(0x2c2)](_0x40e5c1)),_0x1a14b8(_0x1ad4e7(0x257)+_0x1ad4e7(0x347)+_0x1ad4e7(0x316)+'al',async(_0x12fc40,_0x648d9f)=>revealPathInFolder(_0x648d9f)),_0x1a14b8(_0x1ad4e7(0x162)+_0x1ad4e7(0x10a),async()=>_0x596ac6[_0x1ad4e7(0x21c)]()),_0x1a14b8(_0x1ad4e7(0x162)+'s:upsert',async(_0x2aa3c2,_0x52b93b={})=>_0x596ac6[_0x1ad4e7(0xaf)](_0x52b93b)),_0x1a14b8(_0x1ad4e7(0x162)+_0x1ad4e7(0x366),async(_0x1131a2,_0x291924={})=>_0x596ac6[_0x1ad4e7(0x1bb)](String(_0x291924['id']||_0x291924||''))),_0x1a14b8('artifact'+_0x1ad4e7(0x14f),async(_0x26ca9a,_0x2a8ece={})=>_0x596ac6[_0x1ad4e7(0x173)+'le'](String(_0x2a8ece['id']||_0x2a8ece||''))),_0x1a14b8(_0x1ad4e7(0x162)+_0x1ad4e7(0x14f)+_0x1ad4e7(0x2de),async(_0xf95c3d,_0x25298c={})=>_0x596ac6[_0x1ad4e7(0x12e)+_0x1ad4e7(0x2c2)](_0x25298c['paths']||_0x25298c)),_0x1a14b8('artifact'+_0x1ad4e7(0xfd),async(_0x5272c4,_0x26c145={})=>{const _0x51369d=_0x1ad4e7,_0x157c44=typeof _0x26c145===_0x51369d(0x313)?_0x26c145:_0x26c145['path']||_0x26c145['uri'];return revealPathInFolder(_0x157c44);});const _0x34d815=createPreferencesStore({'stateDir':configController['resolveS'+_0x1ad4e7(0x22c)](),'storeFile':_0x1ad4e7(0xe8)+_0x1ad4e7(0x19e)+'ces.json'});_0x1a14b8(_0x1ad4e7(0x339)+_0x1ad4e7(0xa3)+'se',async()=>_0x34d815[_0x1ad4e7(0x355)](_0x1ad4e7(0x305)+'rayOnClo'+'se',![])),_0x1a14b8(_0x1ad4e7(0x339)+':set-clo'+'se',async(_0x206e72,_0x1de37b)=>_0x34d815[_0x1ad4e7(0x129)]('closeToT'+_0x1ad4e7(0x21f)+'se',_0x1de37b===!![])),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0x1a14b8,'sep':sep,'stateDir':configController['resolveS'+_0x1ad4e7(0x22c)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0x1a14b8,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0x1a14b8,'modelHandlers':{'saveCustomModel':_0x3f6550=>_0x1edaf4()[_0x1ad4e7(0x222)]['saveCust'+_0x1ad4e7(0x148)](_0x3f6550),'deleteCustomModel':_0x5aff5f=>_0x1edaf4()['models'][_0x1ad4e7(0x1f6)+_0x1ad4e7(0x396)+'l'](_0x5aff5f)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x1afe4f)=>configController['updateOp'+_0x1ad4e7(0xe7)+_0x1ad4e7(0x1d0)](..._0x1afe4f),'setPluginConfig':_0xdcf063=>configController[_0x1ad4e7(0x1a1)+_0x1ad4e7(0x13a)+_0x1ad4e7(0xec)](_0xdcf063),'setChannelConfig':_0x3b738c=>configController[_0x1ad4e7(0x1a1)+_0x1ad4e7(0x332)+_0x1ad4e7(0x12c)](_0x3b738c),'deleteChannelConfig':_0x2fd2da=>configController['deleteOp'+'enClawCh'+_0x1ad4e7(0x22b)+_0x1ad4e7(0x156)](_0x2fd2da),'setSkillEntry':_0x8c6111=>configController[_0x1ad4e7(0x1a1)+'lawSkill'+_0x1ad4e7(0x88)](_0x8c6111),'deleteSkillEntry':_0x27a7b9=>configController[_0x1ad4e7(0x139)+_0x1ad4e7(0x1c4)+_0x1ad4e7(0x364)](_0x27a7b9),'setMcpServer':_0x4904fe=>configController[_0x1ad4e7(0x1a1)+'lawMcpSe'+_0x1ad4e7(0x167)](_0x4904fe),'deleteMcpServer':_0x548f90=>configController[_0x1ad4e7(0x139)+_0x1ad4e7(0x1c7)+_0x1ad4e7(0x123)](_0x548f90)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0x1a14b8('config:i'+_0x1ad4e7(0xd6)+_0x1ad4e7(0xee),async()=>connectorController['listImCh'+_0x1ad4e7(0x22b)+'figs']()),_0x1a14b8(_0x1ad4e7(0x2c8)+_0x1ad4e7(0xd6)+_0x1ad4e7(0x354)+'e',async(_0x15ee84,_0x21e1bc={})=>connectorController[_0x1ad4e7(0x244)+_0x1ad4e7(0x32c)+_0x1ad4e7(0x15e)](_0x21e1bc)),_0x1a14b8('config:i'+_0x1ad4e7(0xd6)+_0x1ad4e7(0xf1)+_0x1ad4e7(0x2f4),async(_0x571153,_0xcba7df={})=>connectorController['setImCha'+_0x1ad4e7(0x28d)+'led'](_0xcba7df)),_0x1a14b8(_0x1ad4e7(0x1bc)+_0x1ad4e7(0x34f)+':save',async(_0x39ea09,_0x3e45a0={})=>{const _0x3ae74b=_0x1ad4e7,_0x1d31b1=String(_0x3e45a0['channelI'+'d']||_0x3e45a0['payload']?.['channelI'+'d']||_0x3e45a0[_0x3ae74b(0x18b)]?.['id']||'');if(!_0x1d31b1)throw new Error(_0x3ae74b(0x2d7)+_0x3ae74b(0x249)+_0x3ae74b(0xdf));const _0x246c94=_0x3e45a0['payload']||_0x3e45a0,_0x25f3cd={'feishu':connectorController[_0x3ae74b(0x2e6)+_0x3ae74b(0x102)+'lConfig'],'qqbot':connectorController['saveQqbo'+_0x3ae74b(0x1d3)+_0x3ae74b(0x376)],'wecom':connectorController[_0x3ae74b(0x324)+_0x3ae74b(0x392)+'Config'],'qq_mail':connectorController[_0x3ae74b(0x268)+_0x3ae74b(0x13f)+'torConfi'+'g'],'netease_mail':connectorController[_0x3ae74b(0x154)+_0x3ae74b(0x1ba)+_0x3ae74b(0x34f)+_0x3ae74b(0x376)],'tencent_exmail':connectorController[_0x3ae74b(0x8e)+_0x3ae74b(0x10c)+_0x3ae74b(0x2b4)+_0x3ae74b(0x351)],'feishu_doc':connectorController[_0x3ae74b(0x2e6)+_0x3ae74b(0x2ac)+'nectorCo'+_0x3ae74b(0x1d0)],'tencent_docs':connectorController[_0x3ae74b(0x8e)+_0x3ae74b(0x356)+'onnector'+_0x3ae74b(0x376)],'kdocs':connectorController[_0x3ae74b(0x283)+_0x3ae74b(0x2e3)+_0x3ae74b(0x351)],'dingtalk_doc':connectorController['saveDing'+_0x3ae74b(0x165)+'onnector'+_0x3ae74b(0x376)]},_0xe6fb22=_0x25f3cd[_0x1d31b1];if(!_0xe6fb22)throw new Error(_0x3ae74b(0xd9)+'ted\x20conn'+_0x3ae74b(0xb3)+_0x1d31b1);return _0xe6fb22(_0x246c94);}),_0x1a14b8(_0x1ad4e7(0x1bc)+_0x1ad4e7(0x34f)+_0x1ad4e7(0x33b)+_0x1ad4e7(0x1e1)+_0x1ad4e7(0x116),async(_0x58586b,_0x47738d={})=>connectorController[_0x1ad4e7(0x2e6)+_0x1ad4e7(0x102)+_0x1ad4e7(0xca)](_0x47738d)),_0x1a14b8(_0x1ad4e7(0x1bc)+_0x1ad4e7(0x34f)+':save-qq'+_0x1ad4e7(0x280)+_0x1ad4e7(0x308),async(_0x28ef71,_0x537984={})=>connectorController['saveQqbo'+_0x1ad4e7(0x1d3)+_0x1ad4e7(0x376)](_0x537984)),_0x1a14b8('config:c'+_0x1ad4e7(0x34f)+_0x1ad4e7(0x8b)+_0x1ad4e7(0x2fe)+_0x1ad4e7(0x308),async(_0x426e99,_0x5ebfd0={})=>connectorController['saveWeco'+_0x1ad4e7(0x392)+'Config'](_0x5ebfd0)),_0x1a14b8(_0x1ad4e7(0x1bc)+_0x1ad4e7(0x34f)+_0x1ad4e7(0x234)+_0x1ad4e7(0x2c3),async(_0x5efcfe,_0x369815={})=>connectorController[_0x1ad4e7(0x268)+'ilConnec'+_0x1ad4e7(0x21a)+'g'](_0x369815)),_0x1a14b8(_0x1ad4e7(0x1bc)+'onnector'+_0x1ad4e7(0x258)+_0x1ad4e7(0x1bd)+'il',async(_0x4a6e09,_0x17001a={})=>connectorController[_0x1ad4e7(0x154)+'aseMailC'+_0x1ad4e7(0x34f)+_0x1ad4e7(0x376)](_0x17001a)),_0x1a14b8('config:c'+_0x1ad4e7(0x34f)+_0x1ad4e7(0x12d)+'ncent-ex'+'mail',async(_0x39bdbb,_0x2b070b={})=>connectorController[_0x1ad4e7(0x8e)+_0x1ad4e7(0x10c)+'lConnect'+_0x1ad4e7(0x351)](_0x2b070b)),_0x1a14b8(_0x1ad4e7(0x1bc)+_0x1ad4e7(0x34f)+':save-fe'+_0x1ad4e7(0x1a8),async(_0x5b4ceb,_0x24e9db={})=>connectorController[_0x1ad4e7(0x2e6)+_0x1ad4e7(0x2ac)+_0x1ad4e7(0x26d)+_0x1ad4e7(0x1d0)](_0x24e9db)),_0x1a14b8(_0x1ad4e7(0x1bc)+_0x1ad4e7(0x34f)+_0x1ad4e7(0x12d)+_0x1ad4e7(0x153)+'cs',async(_0xa8b6f8,_0x36f14e={})=>connectorController[_0x1ad4e7(0x8e)+_0x1ad4e7(0x356)+_0x1ad4e7(0x34f)+'Config'](_0x36f14e)),_0x1a14b8('config:c'+_0x1ad4e7(0x34f)+_0x1ad4e7(0x373)+_0x1ad4e7(0x322),async(_0x2b2b38,_0x32c1ca={})=>connectorController[_0x1ad4e7(0x283)+_0x1ad4e7(0x2e3)+'orConfig'](_0x32c1ca)),_0x1a14b8(_0x1ad4e7(0x1bc)+_0x1ad4e7(0x34f)+_0x1ad4e7(0x155)+_0x1ad4e7(0xf5)+'oc',async(_0x2a1a2e,_0x32cb1a={})=>connectorController['saveDing'+'talkDocC'+_0x1ad4e7(0x34f)+'Config'](_0x32cb1a)),_0x1a14b8('config:c'+_0x1ad4e7(0x34f)+'-session'+_0x1ad4e7(0x2b8),async(_0x3c0b94,_0x344999={})=>{const _0x344a6e=_0x1ad4e7,_0x2f36b4=String(_0x344999['channelI'+'d']||_0x344999['type']||'');if(_0x2f36b4===_0x344a6e(0x1ad))return connectorController['startKdo'+'csCliCon'+_0x344a6e(0x37f)+'ion']();if(_0x2f36b4===_0x344a6e(0x37d)+'oc')return connectorController[_0x344a6e(0x237)+_0x344a6e(0x32f)+_0x344a6e(0x204)+'Session']();if(_0x2f36b4===_0x344a6e(0x152))return connectorController['startFei'+_0x344a6e(0x125)+_0x344a6e(0x390)+_0x344a6e(0x2ff)](_0x344999);if(_0x2f36b4===_0x344a6e(0x240)+'-weixin'||_0x2f36b4===_0x344a6e(0x16a))return connectorController['startWec'+_0x344a6e(0x331)+_0x344a6e(0x22f)+'n']({'gatewayPort':_0x1edaf4()['gatewayP'+_0x344a6e(0xeb)](),'gatewayToken':_0x1edaf4()[_0x344a6e(0x1b3)+'oken']()});throw new Error(_0x344a6e(0xd9)+_0x344a6e(0x119)+'ector\x20se'+'ssion:\x20'+(_0x2f36b4||_0x344a6e(0xe2)));}),_0x1a14b8(_0x1ad4e7(0x1bc)+_0x1ad4e7(0x34f)+'-session'+_0x1ad4e7(0x2a2),async(_0x2d10b5,_0x5e4719={})=>{const _0x3a3847=_0x1ad4e7,_0xabe2ac=String(_0x5e4719[_0x3a3847(0x2d7)+'d']||_0x5e4719[_0x3a3847(0xd1)]||'');if(_0xabe2ac===_0x3a3847(0x1ad))return connectorController[_0x3a3847(0x216)+_0x3a3847(0x256)+_0x3a3847(0xe1)](_0x5e4719);if(_0xabe2ac===_0x3a3847(0x37d)+'oc')return connectorController['getFeish'+_0x3a3847(0x2cb)+'onnectSt'+_0x3a3847(0x12f)](_0x5e4719);if(_0xabe2ac===_0x3a3847(0x152))return connectorController[_0x3a3847(0x278)+_0x3a3847(0x133)+_0x3a3847(0xb0)+_0x3a3847(0x221)](_0x5e4719);throw new Error(_0x3a3847(0xd9)+_0x3a3847(0x119)+_0x3a3847(0x26b)+_0x3a3847(0x198)+(_0xabe2ac||'unknown'));}),_0x1a14b8(_0x1ad4e7(0x1bc)+_0x1ad4e7(0x34f)+_0x1ad4e7(0x1b7)+_0x1ad4e7(0xe5),async(_0x51b5eb,_0x10128c={})=>{const _0x2796d7=_0x1ad4e7,_0x31edd5=String(_0x10128c['channelI'+'d']||_0x10128c[_0x2796d7(0xd1)]||'');if(_0x31edd5===_0x2796d7(0x1ad))return connectorController[_0x2796d7(0x2bb)+_0x2796d7(0x393)+_0x2796d7(0x31c)+_0x2796d7(0x238)](_0x10128c);if(_0x31edd5==='feishu_d'+'oc')return connectorController[_0x2796d7(0x312)+_0x2796d7(0x2c1)+_0x2796d7(0x321)+_0x2796d7(0x174)](_0x10128c);if(_0x31edd5===_0x2796d7(0x152))return connectorController['cancelFe'+'ishuRegi'+_0x2796d7(0x34c)+'Session'](_0x10128c);if(_0x31edd5===_0x2796d7(0x240)+_0x2796d7(0x359)||_0x31edd5===_0x2796d7(0x16a))return connectorController[_0x2796d7(0x36d)+_0x2796d7(0x35e)+_0x2796d7(0x18a)+'on']();return{'ok':!![]};}),_0x1a14b8('config:c'+'onnector'+_0x1ad4e7(0x1b7)+_0x1ad4e7(0x374)+'e',async(_0x5f2c2e,_0x2993b4={})=>{const _0x778f71=_0x1ad4e7,_0x1d9122=String(_0x2993b4[_0x778f71(0x2d7)+'d']||_0x2993b4[_0x778f71(0xd1)]||'');if(_0x1d9122===_0x778f71(0x37d)+'oc')return connectorController['complete'+_0x778f71(0x2c9)+_0x778f71(0x318)+_0x778f71(0x199)+'on'](_0x2993b4);throw new Error(_0x778f71(0xd9)+'ted\x20conn'+'ector\x20se'+_0x778f71(0x198)+(_0x1d9122||'unknown'));}),_0x1a14b8('config:r'+_0x1ad4e7(0x371),()=>connectorController[_0x1ad4e7(0x2ce)+_0x1ad4e7(0x1b4)+'ot']());const _0x16e912=_0x3f7036=>{const _0xae995b=_0x1ad4e7,_0x5284a5=_0x3f7036[_0xae995b(0x2aa)]&&typeof _0x3f7036[_0xae995b(0x2aa)]===_0xae995b(0x307)?_0x3f7036['agents']:{};return Array[_0xae995b(0x1e8)](_0x5284a5[_0xae995b(0x21c)])?_0x5284a5[_0xae995b(0x21c)]:[];},_0x49662d=_0x2f4eb4=>{const _0x372c1a=_0x1ad4e7,_0x4e5aa8=typeof _0x2f4eb4===_0x372c1a(0x313)?_0x2f4eb4['trim']():'',_0x353817=_0x4e5aa8['match'](/^agent:([^:]+):/);return _0x353817?.[0x1]||'';},_0x305a17=(_0x100858={},_0x3094e2=[])=>{const _0x41332f=_0x1ad4e7,_0x2e86f4=Array[_0x41332f(0x1e8)](_0x100858[_0x41332f(0x2aa)])?_0x100858[_0x41332f(0x2aa)]:Array['isArray'](_0x100858['list'])?_0x100858[_0x41332f(0x21c)]:[],_0x1a481b=Array[_0x41332f(0x1e8)](_0x3094e2)?_0x3094e2:[];return _0x2e86f4[_0x41332f(0x1c6)](_0x48944b=>{const _0x3bcd0f=_0x41332f,_0x54918b=String(_0x48944b?.['id']||_0x48944b?.[_0x3bcd0f(0x276)]||'')[_0x3bcd0f(0x255)]();return{'agent':_0x48944b,'sessions':_0x54918b?_0x1a481b['filter'](_0x18fa1f=>{const _0x1a7a15=_0x3bcd0f,_0x3443d0=String(_0x18fa1f?.[_0x1a7a15(0x276)]||_0x18fa1f?.['agent_id']||_0x18fa1f?.[_0x1a7a15(0x145)]?.['id']||_0x49662d(_0x18fa1f?.[_0x1a7a15(0x20d)])||'')['trim']();return _0x3443d0?_0x3443d0===_0x54918b:_0x54918b===_0x1a7a15(0x195);}):[]};});};_0x1a14b8(_0x1ad4e7(0xa5)+_0x1ad4e7(0x27c)+_0x1ad4e7(0x2c2),async()=>updateController?.['getState']()),_0x1a14b8('app:upda'+'te:check',async()=>updateController?.['checkFor'+_0x1ad4e7(0x381)]()),_0x1a14b8('app:upda'+_0x1ad4e7(0xef)+_0x1ad4e7(0x192),async()=>updateController?.[_0x1ad4e7(0x18d)+_0x1ad4e7(0xe0)]()),_0x1a14b8(_0x1ad4e7(0xa5)+'te:quit-'+'and-inst'+'all',async()=>updateController?.[_0x1ad4e7(0x1fd)+_0x1ad4e7(0xe6)]()),_0x1a14b8(_0x1ad4e7(0x31a)+_0x1ad4e7(0x236),async(_0x15c25a,_0x29586f={})=>{const _0x249593=_0x1ad4e7,_0xa113b0=await dialog[_0x249593(0x369)+'Dialog'](BrowserWindow[_0x249593(0x25f)+_0x249593(0xed)](_0x15c25a[_0x249593(0x1dd)])??mainWindow,{'properties':[_0x249593(0x291),..._0x29586f?.[_0x249593(0x1d5)]!==0x1?['multiSel'+_0x249593(0x1f5)]:[]],'filters':_0x29586f?.['customNa'+'meFilter'+'s']?[{'name':_0x249593(0x2d4),'extensions':_0x29586f['customNa'+_0x249593(0x1aa)+'s']}]:undefined});return _0xa113b0[_0x249593(0x2dc)+'s'][_0x249593(0x1c6)](_0x4fb019=>({'path':_0x4fb019,'name':_0x4fb019[_0x249593(0x292)](/[\\/]/)['pop']()||_0x4fb019}));}),_0x1a14b8(_0x1ad4e7(0x31a)+_0x1ad4e7(0x115)+_0x1ad4e7(0x23d),async(_0x4ae71a,_0x3df581={})=>{const _0x1725dc=_0x1ad4e7,_0x27231d=String(_0x3df581['sourcePa'+'th']||'');if(!_0x27231d)return{'success':![],'error':'sourcePa'+_0x1725dc(0x26e)+_0x1725dc(0x250)};const _0x227cea=await dialog[_0x1725dc(0xd8)+'Dialog'](mainWindow,{'defaultPath':_0x3df581[_0x1725dc(0xa0)+_0x1725dc(0x1d7)]||_0x27231d['split'](/[\\/]/)['pop']()});if(_0x227cea[_0x1725dc(0xf3)]||!_0x227cea[_0x1725dc(0x2dc)])return{'success':![],'canceled':!![]};const {copyFile:_0x4fc2d5}=await import('node:fs/'+_0x1725dc(0x18f));return await _0x4fc2d5(_0x27231d,_0x227cea['filePath']),{'success':!![],'filePath':_0x227cea[_0x1725dc(0x2dc)]};}),_0x1a14b8(_0x1ad4e7(0x138)+_0x1ad4e7(0xea)+'ite',async(_0x803145,_0x289478)=>{return clipboard['writeTex'+'t'](String(_0x289478??'')),{'ok':!![]};}),_0x1a14b8('app:syst'+_0x1ad4e7(0x34d)+'rt',async()=>{const _0x3cfad9=_0x1ad4e7;return app[_0x3cfad9(0xac)](),app[_0x3cfad9(0xfc)](),{'ok':!![]};}),_0x1a14b8(_0x1ad4e7(0x1f2)+'s-maximi'+_0x1ad4e7(0x289),_0x2cf646=>Boolean(BrowserWindow['fromWebC'+_0x1ad4e7(0xed)](_0x2cf646[_0x1ad4e7(0x1dd)])?.[_0x1ad4e7(0x2eb)+'zed']())),_0x1a14b8(_0x1ad4e7(0x19f)+_0x1ad4e7(0x176),async(_0x3025a4,_0x1a68cd)=>{const _0x590f2d=_0x1ad4e7;return app['setLogin'+_0x590f2d(0x1d4)+'ings']({'openAtLogin':_0x1a68cd===!![]}),{'ok':!![],'enabled':_0x1a68cd===!![]};}),_0x1a14b8(_0x1ad4e7(0x19f)+_0x1ad4e7(0xbf),async()=>app['getLogin'+_0x1ad4e7(0x1d4)+_0x1ad4e7(0x24f)]()[_0x1ad4e7(0x23b)+_0x1ad4e7(0x28f)]),_0x1a14b8(_0x1ad4e7(0x31a)+':choose-'+_0x1ad4e7(0x33d),async _0x500cf2=>{const _0x41272b=_0x1ad4e7,_0x398604=await dialog[_0x41272b(0x369)+_0x41272b(0xb5)](BrowserWindow[_0x41272b(0x25f)+_0x41272b(0xed)](_0x500cf2[_0x41272b(0x1dd)])??mainWindow,{'properties':[_0x41272b(0x2d8)+_0x41272b(0x124)]});return _0x398604[_0x41272b(0x2dc)+'s'][0x0]||'';}),_0x1a14b8(_0x1ad4e7(0x189)+_0x1ad4e7(0x160)+_0x1ad4e7(0x33d),async(_0x3f6805,_0x128a67)=>{const _0x18c9a1=_0x1ad4e7,_0x4613b3=await shell[_0x18c9a1(0x111)](String(_0x128a67||''));return _0x4613b3||'';}),_0x1a14b8('openclaw'+':gateway'+'-token',async()=>_0x1edaf4()['gatewayT'+_0x1ad4e7(0x375)]()),_0x1a14b8(_0x1ad4e7(0x240)+_0x1ad4e7(0x2ca)+_0x1ad4e7(0xa8),async()=>_0x1edaf4()[_0x1ad4e7(0x333)+_0x1ad4e7(0xeb)]()),_0x1a14b8('openclaw'+_0x1ad4e7(0x2fd)+'e',async(_0x494b7e,_0x320785=[])=>{const _0x415e61=_0x1ad4e7,_0x5e7446=await runClawOnce(shellConfig[_0x415e61(0x29e)+_0x415e61(0x323)],Array[_0x415e61(0x1e8)](_0x320785)?_0x320785:[]);return{'ok':_0x5e7446['code']===0x0,..._0x5e7446};}),_0x1a14b8(_0x1ad4e7(0x1b8)+_0x1ad4e7(0x215),async(_0x16c0ea,_0x49b357={})=>_0x1edaf4()['sessions']['create']({..._0x49b357,'parentSessionKey':_0x49b357[_0x1ad4e7(0x84)+_0x1ad4e7(0x2e4)]||_0x49b357[_0x1ad4e7(0x254)+'ey']}));const _0x4ba1c3=configController['resolveS'+_0x1ad4e7(0x22c)]();sessionSqliteStore=ensureSessionSqliteStore();const _0x3e46cb=createAgentSessionsMapStore({'stateDir':_0x4ba1c3});_0x1a14b8('sessions'+':agent-m'+_0x1ad4e7(0x13b),async(_0x1e3789,_0x19b9f3={})=>_0x3e46cb[_0x1ad4e7(0x355)](_0x19b9f3)),_0x1a14b8(_0x1ad4e7(0x1b8)+_0x1ad4e7(0xfb)+_0x1ad4e7(0x109)+'t',async(_0x42fe1f,_0x369bb6={})=>_0x3e46cb['upsert'](_0x369bb6)),_0x1a14b8('sessions'+':agent-m'+_0x1ad4e7(0xdd),async(_0x1cfa15,_0xd44415={})=>{const _0x27324a=_0x1ad4e7,_0x168edb=String(_0xd44415[_0x27324a(0x254)+'ey']||'')['trim']();if(!_0x168edb)return null;return await sessionSqliteStore[_0x27324a(0x36c)+_0x27324a(0x24e)](_0x168edb);}),_0x1a14b8('agents:c'+_0x1ad4e7(0xda),async(_0xb86107,_0x3c45e4={})=>{const _0x3a8a75=_0x1ad4e7,_0x23e7f3=await readMutableConfig(),_0x52c77f=_0x23e7f3[_0x3a8a75(0x2aa)]&&typeof _0x23e7f3[_0x3a8a75(0x2aa)]===_0x3a8a75(0x307)?_0x23e7f3[_0x3a8a75(0x2aa)]:{},_0x1d3f34=_0x16e912(_0x23e7f3),_0x2156a3=String(_0x3c45e4['id']||_0x3c45e4[_0x3a8a75(0x95)]||_0x3a8a75(0x253)+Date[_0x3a8a75(0x310)]())[_0x3a8a75(0x255)]()[_0x3a8a75(0x30a)](/\s+/g,'-'),_0x557971={'id':_0x2156a3,'name':String(_0x3c45e4['name']||_0x2156a3),..._0x3c45e4[_0x3a8a75(0x1e4)+'e']?{'workspace':String(_0x3c45e4[_0x3a8a75(0x1e4)+'e'])}:{},..._0x3c45e4['model']?{'model':_0x3c45e4[_0x3a8a75(0x37a)]}:{},..._0x3c45e4['emoji']?{'emoji':_0x3c45e4[_0x3a8a75(0x2e7)]}:{},..._0x3c45e4[_0x3a8a75(0xb9)]?{'avatar':_0x3c45e4[_0x3a8a75(0xb9)]}:{},...Array[_0x3a8a75(0x1e8)](_0x3c45e4['skills'])?{'skills':_0x3c45e4[_0x3a8a75(0x26a)]}:{}};if(_0x1d3f34[_0x3a8a75(0xb1)](_0x3abd2c=>_0x3abd2c?.['id']===_0x2156a3))throw new Error(_0x3a8a75(0xc5)+_0x3a8a75(0xcb)+_0x3a8a75(0x144));return _0x52c77f[_0x3a8a75(0x21c)]=[..._0x1d3f34,_0x557971],_0x23e7f3[_0x3a8a75(0x2aa)]=_0x52c77f,await _0x3e806d(_0x23e7f3,_0x3a8a75(0x8f)+_0x3a8a75(0x2ea)),{'ok':!![],'agent':_0x557971};}),_0x1a14b8(_0x1ad4e7(0xc9)+_0x1ad4e7(0x2c0),async(_0x39cd9e,_0x7e62e5={})=>{const _0x2ee1e9=_0x1ad4e7,_0x15124a=String(_0x7e62e5['id']||_0x7e62e5[_0x2ee1e9(0x276)]||'')['trim']();if(!_0x15124a)throw new Error(_0x2ee1e9(0x117)+_0x2ee1e9(0x16c)+'ired');const _0x5bcbfb=await readMutableConfig(),_0x9c2c63=_0x5bcbfb[_0x2ee1e9(0x2aa)]&&typeof _0x5bcbfb[_0x2ee1e9(0x2aa)]===_0x2ee1e9(0x307)?_0x5bcbfb[_0x2ee1e9(0x2aa)]:{},_0x6e00df=_0x16e912(_0x5bcbfb),_0x5c155c=_0x6e00df[_0x2ee1e9(0x1c6)](_0x3590fd=>_0x3590fd?.['id']===_0x15124a?{..._0x3590fd,..._0x7e62e5,'id':_0x15124a}:_0x3590fd);return _0x9c2c63[_0x2ee1e9(0x21c)]=_0x5c155c,_0x5bcbfb[_0x2ee1e9(0x2aa)]=_0x9c2c63,await _0x3e806d(_0x5bcbfb,'agent\x20up'+_0x2ee1e9(0x343)),{'ok':!![],'agent':_0x5c155c[_0x2ee1e9(0x2a1)](_0x1b6bef=>_0x1b6bef?.['id']===_0x15124a)||null};}),_0x1a14b8('agents:d'+_0x1ad4e7(0x248),async(_0x4f7b17,_0x44076e={})=>{const _0x48bb81=_0x1ad4e7,_0x3e4bec=String(_0x44076e['id']||_0x44076e[_0x48bb81(0x276)]||'')['trim']();if(!_0x3e4bec)throw new Error(_0x48bb81(0x117)+_0x48bb81(0x16c)+_0x48bb81(0x163));const _0x33111a=await readMutableConfig(),_0x266674=_0x33111a[_0x48bb81(0x2aa)]&&typeof _0x33111a[_0x48bb81(0x2aa)]===_0x48bb81(0x307)?_0x33111a['agents']:{};return _0x266674[_0x48bb81(0x21c)]=_0x16e912(_0x33111a)['filter'](_0x5b5233=>_0x5b5233?.['id']!==_0x3e4bec),_0x33111a[_0x48bb81(0x2aa)]=_0x266674,await _0x3e806d(_0x33111a,_0x48bb81(0x2c4)+_0x48bb81(0x20e)),{'ok':!![],'agentId':_0x3e4bec};}),_0x1a14b8(_0x1ad4e7(0xf4)+'ith-sess'+_0x1ad4e7(0x21b)+'t',async(_0x5f4eae,_0x36599e={})=>{const _0x21f939=_0x1ad4e7,[_0x2a8233,_0x13deb7]=await Promise[_0x21f939(0xa4)]([_0x1edaf4()['agents'][_0x21f939(0x21c)](),_0x1edaf4()[_0x21f939(0x1b8)][_0x21f939(0x21c)](_0x36599e)[_0x21f939(0x336)](()=>({'sessions':[]}))]),_0x4fa813=Array[_0x21f939(0x1e8)](_0x13deb7[_0x21f939(0x1b8)])?_0x13deb7[_0x21f939(0x1b8)]:[];return{..._0x2a8233,'sessions':_0x4fa813,'groups':Array[_0x21f939(0x1e8)](_0x2a8233[_0x21f939(0x23f)])?_0x2a8233[_0x21f939(0x23f)]:_0x305a17(_0x2a8233,_0x4fa813)};}),terminalManager=createTerminalManager({'cwd':join(configController['resolveS'+_0x1ad4e7(0x22c)](),_0x1ad4e7(0x1e4)+'e'),'emitData':_0x22562b=>broadcast(_0x1ad4e7(0x1a7)+_0x1ad4e7(0xe3),_0x22562b),'emitExit':_0xf5cc81=>broadcast(_0x1ad4e7(0x1a7)+_0x1ad4e7(0x33f),_0xf5cc81)}),_0x1a14b8('terminal'+_0x1ad4e7(0x22d),async(_0x24775e,_0x5ee7d8={})=>terminalManager[_0x1ad4e7(0x370)](_0x5ee7d8)),_0x1a14b8(_0x1ad4e7(0x1a7)+_0x1ad4e7(0x1f1),async(_0x5ad84d,_0xc8f5d4={})=>terminalManager[_0x1ad4e7(0x25b)](_0xc8f5d4)),_0x1a14b8(_0x1ad4e7(0x1a7)+_0x1ad4e7(0x34e),async(_0x43fa2b,_0x4ff997={})=>terminalManager[_0x1ad4e7(0x2b5)](_0x4ff997)),_0x1a14b8(_0x1ad4e7(0x1a7)+':close',async(_0x100900,_0x4882e3={})=>terminalManager[_0x1ad4e7(0x8a)](_0x4882e3)),_0x1a14b8(_0x1ad4e7(0x1b5)+_0x1ad4e7(0x21c),async()=>{const _0x2676f6=_0x1ad4e7,_0x5b693b=gatewayController?.[_0x2676f6(0x1da)+'nfo']?.()||{};return _0x5b693b[_0x2676f6(0xcf)]||[];}),_0x1a14b8(_0x1ad4e7(0x1b5)+_0x1ad4e7(0x1ea)+'ig',async(_0x55ac17,_0x4f9048={})=>{const _0x4d2bbf=_0x1ad4e7,_0x4772c1=String(_0x4f9048[_0x4d2bbf(0xbe)]||_0x4f9048['id']||''),_0x5c2386=await readMutableConfig(),_0x1b1dc3=_0x5c2386[_0x4d2bbf(0xcf)]?.['entries']||{};return _0x4772c1?_0x1b1dc3[_0x4772c1]||null:_0x1b1dc3;}),_0x1a14b8('plugins:'+'update-c'+'onfig',async(_0x5a6f5f,_0x3ac3fc={})=>{const _0x45f1cc=_0x1ad4e7,_0x1c78d9=String(_0x3ac3fc[_0x45f1cc(0xbe)]||_0x3ac3fc['id']||'');if(!_0x1c78d9)throw new Error(_0x45f1cc(0xbe)+_0x45f1cc(0x16c)+_0x45f1cc(0x163));const _0x396440=await readMutableConfig(),_0xc4c0cd=_0x396440[_0x45f1cc(0xcf)]&&typeof _0x396440[_0x45f1cc(0xcf)]===_0x45f1cc(0x307)?_0x396440[_0x45f1cc(0xcf)]:{},_0x53d255=_0xc4c0cd[_0x45f1cc(0x178)]&&typeof _0xc4c0cd[_0x45f1cc(0x178)]==='object'?_0xc4c0cd[_0x45f1cc(0x178)]:{};return _0x53d255[_0x1c78d9]={..._0x53d255[_0x1c78d9]||{},..._0x3ac3fc['config']||_0x3ac3fc['patch']||{}},_0xc4c0cd[_0x45f1cc(0x178)]=_0x53d255,_0x396440[_0x45f1cc(0xcf)]=_0xc4c0cd,_0x3e806d(_0x396440,_0x45f1cc(0x309)+_0x45f1cc(0x11f)+_0x45f1cc(0x343));}),_0x1a14b8(_0x1ad4e7(0x1b5)+_0x1ad4e7(0xae),async(_0x567893,_0x4e12e4={})=>{const _0x343cb7=_0x1ad4e7,_0x159b5e=String(_0x4e12e4[_0x343cb7(0xbe)]||_0x4e12e4['id']||'');if(!_0x159b5e)throw new Error(_0x343cb7(0xbe)+_0x343cb7(0x16c)+_0x343cb7(0x163));const _0x1f53e7=await readMutableConfig(),_0x208864=_0x1f53e7[_0x343cb7(0xcf)]&&typeof _0x1f53e7['plugins']===_0x343cb7(0x307)?_0x1f53e7[_0x343cb7(0xcf)]:{},_0xd9f820=_0x208864['entries']&&typeof _0x208864[_0x343cb7(0x178)]===_0x343cb7(0x307)?_0x208864['entries']:{};return _0xd9f820[_0x159b5e]={..._0xd9f820[_0x159b5e]||{},'enabled':!![]},_0x208864['entries']=_0xd9f820,_0x1f53e7[_0x343cb7(0xcf)]=_0x208864,_0x3e806d(_0x1f53e7,_0x343cb7(0x298)+_0x343cb7(0x2f4));}),_0x1a14b8(_0x1ad4e7(0x1b5)+_0x1ad4e7(0x121),async(_0x145ed9,_0x3ca224={})=>{const _0xb9897f=_0x1ad4e7,_0x4c6556=String(_0x3ca224['pluginId']||_0x3ca224['id']||'');if(!_0x4c6556)throw new Error(_0xb9897f(0xbe)+_0xb9897f(0x16c)+_0xb9897f(0x163));const _0x4da65a=await readMutableConfig(),_0x4664f5=_0x4da65a[_0xb9897f(0xcf)]&&typeof _0x4da65a[_0xb9897f(0xcf)]===_0xb9897f(0x307)?_0x4da65a[_0xb9897f(0xcf)]:{},_0x40e1c4=_0x4664f5['entries']&&typeof _0x4664f5[_0xb9897f(0x178)]===_0xb9897f(0x307)?_0x4664f5[_0xb9897f(0x178)]:{};return _0x40e1c4[_0x4c6556]={..._0x40e1c4[_0x4c6556]||{},'enabled':![]},_0x4664f5[_0xb9897f(0x178)]=_0x40e1c4,_0x4da65a[_0xb9897f(0xcf)]=_0x4664f5,_0x3e806d(_0x4da65a,'plugin\x20d'+_0xb9897f(0x378));}),_0x1a14b8(_0x1ad4e7(0x1b5)+_0x1ad4e7(0x1a0),async(_0x17d214,_0x4994fe={})=>({'plugins':await((async()=>{const _0xaeb43a=_0x1ad4e7,_0x2b2c65=gatewayController?.[_0xaeb43a(0x1da)+_0xaeb43a(0x131)]?.()||{};if(!_0x4994fe?.[_0xaeb43a(0xbe)]&&!_0x4994fe?.['id'])return _0x2b2c65[_0xaeb43a(0xcf)]||[];const _0x3052c1=String(_0x4994fe[_0xaeb43a(0xbe)]||_0x4994fe['id']||'');return(_0x2b2c65[_0xaeb43a(0xcf)]||[])['filter'](_0x4f590a=>_0x4f590a[_0xaeb43a(0xbe)]===_0x3052c1);})())})),_0x1a14b8(_0x1ad4e7(0x1b1)+'igate',async(_0x2d7a2c,_0x2f53f9)=>({'ok':!![],'payload':_0x2f53f9})),_0x1a14b8('tabs:pos'+_0x1ad4e7(0x15b)+'e',async(_0x4e0d9d,_0x531eff)=>{const _0xa27a6e=_0x1ad4e7;return broadcast(_0xa27a6e(0x8d)+_0xa27a6e(0x2ec),_0x531eff),{'ok':!![]};}),_0x1a14b8(_0x1ad4e7(0x159)+_0x1ad4e7(0x270)+'nt-state',async()=>{const _0x3a7b55=_0x1ad4e7;return broadcast('tabs-age'+_0x3a7b55(0x185)+_0x3a7b55(0x35f),{}),{'ok':!![]};}),_0x1a14b8(_0x1ad4e7(0x161)+_0x1ad4e7(0x10d)+'nt-state',async(_0x211345,_0x4e61c0={})=>{const _0x5d9323=_0x1ad4e7;return broadcast(_0x5d9323(0x27a)+_0x5d9323(0x185)+_0x5d9323(0x118)+_0x5d9323(0x35f),_0x4e61c0),{'ok':!![]};}),_0x1a14b8('window:m'+_0x1ad4e7(0x306),_0x561203=>{const _0x1dc765=_0x1ad4e7;return BrowserWindow[_0x1dc765(0x25f)+_0x1dc765(0xed)](_0x561203[_0x1dc765(0x1dd)])?.[_0x1dc765(0x301)](),{'ok':!![]};}),_0x1a14b8(_0x1ad4e7(0x97)+_0x1ad4e7(0x122)+_0x1ad4e7(0x32e),_0x251984=>{const _0x1afdc2=_0x1ad4e7,_0x4911e5=BrowserWindow[_0x1afdc2(0x25f)+_0x1afdc2(0xed)](_0x251984['sender']);if(!_0x4911e5)return{'isMaximized':![]};if(_0x4911e5[_0x1afdc2(0x2eb)+'zed']())_0x4911e5[_0x1afdc2(0x38e)+'ze']();else _0x4911e5[_0x1afdc2(0x194)]();return{'isMaximized':_0x4911e5[_0x1afdc2(0x2eb)+'zed']()};}),_0x1a14b8(_0x1ad4e7(0x16f)+_0x1ad4e7(0x384),_0x2ac8dc=>{const _0x39968d=_0x1ad4e7;return BrowserWindow['fromWebC'+'ontents'](_0x2ac8dc[_0x39968d(0x1dd)])?.[_0x39968d(0x8a)](),{'ok':!![]};}),_0x1a14b8('window:o'+_0x1ad4e7(0x14a)+'ools',()=>openDevToolsForActiveContext()),_0x1a14b8(_0x1ad4e7(0x240)+_0x1ad4e7(0x103)+_0x1ad4e7(0x274),()=>_0x1edaf4()['runtimeI'+_0x1ad4e7(0x131)]()),_0x1a14b8('openclaw'+_0x1ad4e7(0x2ca)+_0x1ad4e7(0x22e),async()=>(await ensureGatewayControllerStarted())[_0x1ad4e7(0x275)+'s']()),_0x1a14b8('openclaw'+':gateway'+_0x1ad4e7(0x299),()=>_0x1edaf4()['restart'](_0x1ad4e7(0x219)+_0x1ad4e7(0x288))),_0x1a14b8(_0x1ad4e7(0x240)+':loading'+_0x1ad4e7(0x15d)+_0x1ad4e7(0x302),async()=>({'loadingLifeCycle':_0x1ad4e7(0x2d5),'message':'','updatedAt':new Date()[_0x1ad4e7(0x94)+_0x1ad4e7(0x26f)]()})),_0x1a14b8(_0x1ad4e7(0x240)+_0x1ad4e7(0x2ca)+_0x1ad4e7(0x223),(_0x58e530,_0x5f1848={})=>_0x1edaf4()[_0x1ad4e7(0x20b)+_0x1ad4e7(0x211)](_0x5f1848?.[_0x1ad4e7(0x1d5)]??0xc8)),_0x1a14b8(_0x1ad4e7(0x240)+':answer-'+'ask-user'+_0x1ad4e7(0x134)+'n',(_0x12ceb9,_0x287497)=>_0x1edaf4()['answerAs'+_0x1ad4e7(0x2ab)+_0x1ad4e7(0x1b9)](_0x287497)),_0x1a14b8(_0x1ad4e7(0x240)+_0x1ad4e7(0xdb)+'i-window',async()=>{const _0xb2a025=_0x1ad4e7,_0x2f25cc=join(resolveRuntimeRoot(shellConfig[_0xb2a025(0x29e)+_0xb2a025(0x323)]),'bin',_0xb2a025(0x212)+'w');if(!existsSync(_0x2f25cc))throw new Error(_0xb2a025(0x240)+_0xb2a025(0x1c3)+'pper\x20not'+'\x20found:\x20'+_0x2f25cc+('.\x20Run\x20wu'+_0xb2a025(0x1cd)+_0xb2a025(0xf7)+'e\x20first.'));const _0x4ab5ba=join(app[_0xb2a025(0x235)](_0xb2a025(0x2d9)),'wujie-sh'+'ell-cli.'+_0xb2a025(0x2ed));await writeFile(_0x4ab5ba,_0xb2a025(0x1d1)+_0xb2a025(0x17d)+_0x2f25cc[_0xb2a025(0x30a)](/\\/g,'\x5c\x5c')[_0xb2a025(0x30a)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x3557f6=spawn('open',['-a','Terminal',_0x4ab5ba],{'detached':!![],'stdio':'ignore'});return _0x3557f6['unref'](),{'ok':!![],'cliPath':_0x2f25cc};}),_0x1a14b8('agents:l'+'ist',()=>_0x1edaf4()[_0x1ad4e7(0x2aa)][_0x1ad4e7(0x21c)]()),_0x1a14b8(_0x1ad4e7(0xe4)+_0x1ad4e7(0x262),(_0x4c2845,_0x1cc13f)=>_0x1edaf4()[_0x1ad4e7(0x26a)][_0x1ad4e7(0x1a0)](_0x1cc13f)),_0x1a14b8('sessions'+_0x1ad4e7(0x22d),(_0x1e97de,_0x2f66b8)=>_0x1edaf4()[_0x1ad4e7(0x1b8)][_0x1ad4e7(0x370)](_0x2f66b8)),_0x1a14b8('sessions'+_0x1ad4e7(0x330),(_0x1a0c30,_0x1bb0fe)=>_0x1edaf4()['sessions']['list'](_0x1bb0fe)),_0x1a14b8(_0x1ad4e7(0x1b8)+':delete',(_0x42482a,_0x3c285f)=>_0x1edaf4()[_0x1ad4e7(0x1b8)][_0x1ad4e7(0x230)](_0x3c285f)),_0x1a14b8(_0x1ad4e7(0x383)+_0x1ad4e7(0x2b2),(_0xc957f6,_0x25806b)=>_0x1edaf4()[_0x1ad4e7(0x1ae)]['stream'](_0x25806b)),_0x1a14b8(_0x1ad4e7(0x2e9)+'rt',(_0x3b3970,_0x1762d3)=>_0x1edaf4()[_0x1ad4e7(0x1ae)][_0x1ad4e7(0x2f1)](_0x1762d3)),_0x1a14b8(_0x1ad4e7(0x2f6)+_0x1ad4e7(0x260),(_0x1ce81d,_0x4be0a8)=>_0x1edaf4()[_0x1ad4e7(0x1ae)]['history'](_0x4be0a8)),_0x1a14b8(_0x1ad4e7(0x2cd)+'te',async(_0x544235,_0x3380d1={})=>{const _0x4586fd=_0x1ad4e7,_0x1544ff=typeof _0x3380d1[_0x4586fd(0x201)]==='string'?_0x3380d1['level']:_0x4586fd(0x9b),_0x2de134=typeof _0x3380d1['message']===_0x4586fd(0x313)?_0x3380d1[_0x4586fd(0x1cb)]:_0x4586fd(0x219)+_0x4586fd(0x16b),_0xf5e608=typeof _0x3380d1[_0x4586fd(0x2fb)]===_0x4586fd(0x313)&&_0x3380d1[_0x4586fd(0x2fb)][_0x4586fd(0x255)]()?_0x4586fd(0x219)+':'+_0x3380d1[_0x4586fd(0x2fb)][_0x4586fd(0x255)]():_0x4586fd(0x219),_0x23991e=_0x3380d1[_0x4586fd(0x30e)]&&typeof _0x3380d1[_0x4586fd(0x30e)]===_0x4586fd(0x307)?{...summarizePayload(_0x3380d1[_0x4586fd(0x30e)]),'context':_0xf5e608}:{'context':_0xf5e608},_0x4c5d70=rendererLogger;if(_0x4c5d70?.[_0x1544ff])await _0x4c5d70[_0x1544ff](_0x2de134,_0x23991e);else await _0x4c5d70?.[_0x4586fd(0x9b)](_0x2de134,_0x23991e);if(_0x3380d1[_0x4586fd(0x1dc)+'ic']===!![]||_0xf5e608===_0x4586fd(0x219)+_0x4586fd(0x326)+_0x4586fd(0x11b)){const _0x3ecf71=_0x3380d1['record']&&typeof _0x3380d1[_0x4586fd(0x2df)]===_0x4586fd(0x307)?_0x3380d1[_0x4586fd(0x2df)]:_0x3380d1['meta']?.[_0x4586fd(0x2df)]&&typeof _0x3380d1[_0x4586fd(0x30e)][_0x4586fd(0x2df)]===_0x4586fd(0x307)?_0x3380d1[_0x4586fd(0x30e)][_0x4586fd(0x2df)]:{'level':_0x1544ff,'category':_0x4586fd(0x219),'event':_0xf5e608,'message':_0x2de134,'meta':_0x3380d1[_0x4586fd(0x30e)]};await diagnosticsWriter?.[_0x4586fd(0x27e)+'nt'](_0x3ecf71,{'captureIncident':String(_0x3ecf71[_0x4586fd(0x201)]||_0x1544ff)['toLowerC'+_0x4586fd(0xfa)]()===_0x4586fd(0x1bf)||_0x3380d1['captureI'+_0x4586fd(0x352)]===!![]});}return{'ok':!![]};}),_0x1a14b8(_0x1ad4e7(0x325)+_0x1ad4e7(0xeb),async(_0x5b95ac,_0x49ad65={})=>{const _0x3f44d5=_0x1ad4e7,_0x33af5f=typeof _0x49ad65[_0x3f44d5(0x229)+'r']===_0x3f44d5(0x313)&&_0x49ad65[_0x3f44d5(0x229)+'r'][_0x3f44d5(0x255)]()?_0x49ad65[_0x3f44d5(0x229)+'r']:undefined,_0x565d00=await exportLogsArchive({'logsDir':configController['paths']['logsDir'],'targetDir':_0x33af5f,'appVersion':app[_0x3f44d5(0x334)+'on']()});return mainLogger?.[_0x3f44d5(0x9b)](_0x3f44d5(0x149)+_0x3f44d5(0xd5),{'path':toHomePath(_0x565d00[_0x3f44d5(0x19b)])}),_0x565d00;}),_0x1a14b8('logs:ope'+_0x1ad4e7(0x137)+'ory',async()=>{const _0x24c565=_0x1ad4e7;return await shell['openPath'](configController[_0x24c565(0x1fc)]['logsDir']),mainLogger?.['info'](_0x24c565(0x2d6)+_0x24c565(0x197)+_0x24c565(0x372),{'logsDir':toHomePath(configController['paths'][_0x24c565(0x340)])}),{'ok':!![],'path':configController[_0x24c565(0x1fc)][_0x24c565(0x340)]};}),_0x1a14b8('logs:lis'+'t',async()=>{const _0x2b5b84=_0x1ad4e7,_0x20b2f9=await readdir(configController[_0x2b5b84(0x1fc)]['logsDir'],{'recursive':!![]})['catch'](()=>[]);return _0x20b2f9;}),_0x1a14b8('logs:rea'+'d',async(_0x209eb1,_0x1b4cbd={})=>{const _0x1e2970=_0x1ad4e7,_0x2a5133=String(_0x1b4cbd[_0x1e2970(0x19b)]||'');if(!_0x2a5133)throw new Error(_0x1e2970(0x30d)+'required');return readFile(_0x2a5133,'utf8');}),_0x1a14b8(_0x1ad4e7(0x1f0)+'ad',async(_0x19950c,_0x30044a)=>{const _0x17c1f1=_0x1ad4e7,_0x209395=Date[_0x17c1f1(0x310)]();try{const _0x203fc9=await readFile(_0x30044a,_0x17c1f1(0x132));return filesLogger?.[_0x17c1f1(0x9b)](_0x17c1f1(0xbd)+_0x17c1f1(0x175)+_0x17c1f1(0x16d),{'path':toHomePath(_0x30044a),'bytes':Buffer[_0x17c1f1(0x25d)+'th'](_0x203fc9),'durationMs':Date[_0x17c1f1(0x310)]()-_0x209395}),_0x203fc9;}catch(_0x28603e){filesLogger?.[_0x17c1f1(0x1bf)](_0x17c1f1(0xbd)+'d\x20failed',{'path':toHomePath(_0x30044a),'durationMs':Date[_0x17c1f1(0x310)]()-_0x209395,'error':summarizeError(_0x28603e)});throw _0x28603e;}}),_0x1a14b8(_0x1ad4e7(0x1f0)+_0x1ad4e7(0x353)+'y',async(_0x346c75,_0x12c006)=>{const _0x2ecda8=_0x1ad4e7,_0x37fb71=Date[_0x2ecda8(0x310)]();try{const _0x4fd7c2=await readFile(_0x12c006);return filesLogger?.['info'](_0x2ecda8(0x358)+_0x2ecda8(0x17f)+_0x2ecda8(0x365)+'ed',{'path':toHomePath(_0x12c006),'bytes':_0x4fd7c2[_0x2ecda8(0x25d)+'th'],'durationMs':Date[_0x2ecda8(0x310)]()-_0x37fb71}),new Uint8Array(_0x4fd7c2);}catch(_0x380cc5){filesLogger?.[_0x2ecda8(0x1bf)](_0x2ecda8(0x358)+_0x2ecda8(0x17f)+'\x20failed',{'path':toHomePath(_0x12c006),'durationMs':Date[_0x2ecda8(0x310)]()-_0x37fb71,'error':summarizeError(_0x380cc5)});throw _0x380cc5;}}),_0x1a14b8(_0x1ad4e7(0x2ba)+_0x1ad4e7(0x107),async(_0x7068b7,_0x25775e={})=>{const _0x1bd38d=_0x1ad4e7,_0x599220=Date[_0x1bd38d(0x310)]();return await writeFile(_0x25775e[_0x1bd38d(0x19b)],_0x25775e[_0x1bd38d(0x1d8)]??'',_0x1bd38d(0x132)),filesLogger?.['info'](_0x1bd38d(0x300)+'te\x20compl'+'eted',{'path':toHomePath(_0x25775e[_0x1bd38d(0x19b)]),'bytes':Buffer[_0x1bd38d(0x25d)+'th'](String(_0x25775e[_0x1bd38d(0x1d8)]??'')),'durationMs':Date['now']()-_0x599220}),{'ok':!![]};}),_0x1a14b8(_0x1ad4e7(0x2ba)+'ite-bina'+'ry',async(_0x42ca1f,_0x282fdf={})=>{const _0x2abdd9=_0x1ad4e7,_0x2c9b3d=Date['now']();await writeFile(_0x282fdf['path'],Buffer[_0x2abdd9(0xde)](_0x282fdf[_0x2abdd9(0x1d8)]??[]));const _0x140f70=await stat(_0x282fdf[_0x2abdd9(0x19b)])[_0x2abdd9(0x336)](()=>null);return filesLogger?.[_0x2abdd9(0x9b)](_0x2abdd9(0x358)+_0x2abdd9(0x135)+_0x2abdd9(0x377)+'ted',{'path':toHomePath(_0x282fdf[_0x2abdd9(0x19b)]),'bytes':_0x140f70?.[_0x2abdd9(0x1d9)]??0x0,'durationMs':Date[_0x2abdd9(0x310)]()-_0x2c9b3d}),{'ok':!![]};}),_0x1a14b8(_0x1ad4e7(0x386)+_0x1ad4e7(0x158)+'e',async(_0x479458,_0x1982d6={})=>{const _0x119808=_0x1ad4e7,_0x525370=await dialog['showOpen'+_0x119808(0xb5)](BrowserWindow[_0x119808(0x25f)+_0x119808(0xed)](_0x479458[_0x119808(0x1dd)])??mainWindow,{'title':typeof _0x1982d6[_0x119808(0x391)]===_0x119808(0x313)?_0x1982d6['title']:undefined,'properties':[_0x119808(0x291),..._0x1982d6[_0x119808(0x303)+_0x119808(0x1f5)]?['multiSel'+_0x119808(0x1f5)]:[]],'filters':Array[_0x119808(0x1e8)](_0x1982d6[_0x119808(0x33a)])?_0x1982d6[_0x119808(0x33a)]:undefined});return filesLogger?.[_0x119808(0x9b)](_0x119808(0x82)+_0x119808(0xcd)+_0x119808(0x20e),{'canceled':_0x525370[_0x119808(0xf3)],'count':_0x525370[_0x119808(0x2dc)+'s'][_0x119808(0x294)],'paths':_0x525370['filePath'+'s'][_0x119808(0x1c6)](toHomePath)}),{'canceled':_0x525370[_0x119808(0xf3)],'paths':_0x525370[_0x119808(0x2dc)+'s']};}),_0x1a14b8(_0x1ad4e7(0x15c)+_0x1ad4e7(0x338)+_0x1ad4e7(0x260),async(_0x47c3f6,_0x5230a2={})=>{const _0x2f68cc=_0x1ad4e7,_0x1ee78b=resolve(String(_0x5230a2['path']||'')),_0x2eca73=_0x5230a2[_0x2f68cc(0x271)+'e']!==![],_0x315f66=Array[_0x2f68cc(0x1e8)](_0x5230a2['extensio'+'ns'])?_0x5230a2[_0x2f68cc(0x1f3)+'ns'][_0x2f68cc(0x1c6)](_0xc1d04b=>String(_0xc1d04b)['toLowerC'+_0x2f68cc(0xfa)]()[_0x2f68cc(0x30a)](/^\./,''))[_0x2f68cc(0x24a)](Boolean):null,_0x2f54ba=Number[_0x2f68cc(0x7f)+'r'](_0x5230a2[_0x2f68cc(0x30b)+'es'])&&_0x5230a2[_0x2f68cc(0x30b)+'es']>0x0?_0x5230a2[_0x2f68cc(0x30b)+'es']:0xc350,_0x4385d5=[];let _0xdd0b41=![];async function _0x412eab(_0x527e69){const _0x3212ab=_0x2f68cc;if(_0xdd0b41)return;let _0x2c7a30;try{_0x2c7a30=await readdir(_0x527e69,{'withFileTypes':!![]});}catch{return;}for(const _0xc130bc of _0x2c7a30){if(_0xdd0b41)return;if(_0xc130bc[_0x3212ab(0x95)][_0x3212ab(0x130)+'th']('.'))continue;const _0x58f389=join(_0x527e69,_0xc130bc[_0x3212ab(0x95)]);if(_0xc130bc['isDirect'+_0x3212ab(0x25e)]()){if(_0x2eca73)await _0x412eab(_0x58f389);continue;}if(!_0xc130bc[_0x3212ab(0x295)]())continue;if(_0x315f66){const _0x1dba9b=_0xc130bc[_0x3212ab(0x95)][_0x3212ab(0x150)+_0x3212ab(0x380)]('.'),_0x292ecd=_0x1dba9b>=0x0?_0xc130bc[_0x3212ab(0x95)][_0x3212ab(0x1df)](_0x1dba9b+0x1)[_0x3212ab(0x389)+_0x3212ab(0xfa)]():'';if(!_0x315f66['includes'](_0x292ecd))continue;}if(_0x4385d5[_0x3212ab(0x294)]>=_0x2f54ba){_0xdd0b41=!![];return;}_0x4385d5['push']({'name':_0xc130bc[_0x3212ab(0x95)],'path':_0x58f389});}}return await _0x412eab(_0x1ee78b),{'path':_0x1ee78b,'entries':_0x4385d5,'truncated':_0xdd0b41};}),_0x1a14b8(_0x1ad4e7(0x386)+_0x1ad4e7(0x17e)+_0x1ad4e7(0x2a7),async(_0xdcf5d4,_0x53ec25={})=>{const _0x259ded=_0x1ad4e7,_0x2bccfd=await dialog[_0x259ded(0x369)+_0x259ded(0xb5)](BrowserWindow[_0x259ded(0x25f)+_0x259ded(0xed)](_0xdcf5d4[_0x259ded(0x1dd)])??mainWindow,{'title':typeof _0x53ec25['title']===_0x259ded(0x313)?_0x53ec25['title']:undefined,'properties':[_0x259ded(0x2d8)+_0x259ded(0x124)]});return filesLogger?.[_0x259ded(0x9b)](_0x259ded(0x36a)+_0x259ded(0x28b)+_0x259ded(0x365)+'ed',{'canceled':_0x2bccfd[_0x259ded(0xf3)],'count':_0x2bccfd[_0x259ded(0x2dc)+'s'][_0x259ded(0x294)],'paths':_0x2bccfd[_0x259ded(0x2dc)+'s'][_0x259ded(0x1c6)](toHomePath)}),{'canceled':_0x2bccfd['canceled'],'paths':_0x2bccfd['filePath'+'s']};}),_0x1a14b8(_0x1ad4e7(0x1e4)+_0x1ad4e7(0x177)+'ory-info',()=>_0x1edaf4()[_0x1ad4e7(0x1e4)+'e'][_0x1ad4e7(0x252)+_0x1ad4e7(0xc7)]()),_0x1a14b8(_0x1ad4e7(0x1e4)+_0x1ad4e7(0x1c0)+_0x1ad4e7(0x28b),async()=>{const _0x40e62d=_0x1ad4e7,_0x542977=await _0x1edaf4()[_0x40e62d(0x1e4)+'e'][_0x40e62d(0x252)+'yInfo']();return await shell[_0x40e62d(0x111)](_0x542977[_0x40e62d(0x19b)]),filesLogger?.[_0x40e62d(0x9b)](_0x40e62d(0x1e4)+_0x40e62d(0x22a)+_0x40e62d(0x228)+'ed',{'path':toHomePath(_0x542977[_0x40e62d(0x19b)])}),{'ok':!![],'path':_0x542977[_0x40e62d(0x19b)]};}),_0x1a14b8(_0x1ad4e7(0x1e4)+_0x1ad4e7(0x287)+_0x1ad4e7(0x247),()=>_0x1edaf4()[_0x1ad4e7(0x1e4)+'e'][_0x1ad4e7(0x293)+_0x1ad4e7(0x32a)]()),_0x1a14b8('workspac'+_0x1ad4e7(0x110)+_0x1ad4e7(0x2fa)+'ontext',(_0x2fe2d8,_0x53aec5)=>_0x1edaf4()[_0x1ad4e7(0x1e4)+'e']['writeSha'+'redConte'+'xt'](_0x53aec5)),_0x1a14b8(_0x1ad4e7(0x1b8)+_0x1ad4e7(0x328),(_0x5e6c14,_0x4021f6)=>_0x1edaf4()[_0x1ad4e7(0x1b8)][_0x1ad4e7(0x141)](_0x4021f6)),_0x1a14b8(_0x1ad4e7(0x1b8)+_0x1ad4e7(0x279),async(_0x5ac7ed,_0x1ee58c={})=>{const _0x402685=_0x1ad4e7,_0x52fe95=String(_0x1ee58c[_0x402685(0x254)+'ey']||_0x1ee58c['key']||'')['trim']();if(!_0x52fe95)throw new Error(_0x402685(0x254)+_0x402685(0x38c)+'quired');const _0x403aaf=await ensureSessionSqliteStore()[_0x402685(0x311)+'dSession'+_0x402685(0x34a)](),_0x49dd59=await _0x1edaf4()[_0x402685(0x1b8)][_0x402685(0x32d)+_0x402685(0xc1)]([_0x52fe95,..._0x403aaf[_0x402685(0x24a)](_0x495e45=>_0x495e45!==_0x52fe95)]);return _0x49dd59;}),_0x1a14b8(_0x1ad4e7(0x1b8)+_0x1ad4e7(0x2b3),async(_0x5a51d4,_0x5c3380={})=>{const _0x1ede26=_0x1ad4e7,_0xed400d=String(_0x5c3380[_0x1ede26(0x254)+'ey']||_0x5c3380['key']||'')[_0x1ede26(0x255)]();if(!_0xed400d)throw new Error(_0x1ede26(0x254)+_0x1ede26(0x38c)+_0x1ede26(0x250));const _0x2d21fc=await ensureSessionSqliteStore()[_0x1ede26(0x311)+_0x1ede26(0x193)+_0x1ede26(0x34a)]();return await _0x1edaf4()[_0x1ede26(0x1b8)]['reorderP'+_0x1ede26(0xc1)](_0x2d21fc[_0x1ede26(0x24a)](_0x1d3229=>_0x1d3229!==_0xed400d));}),_0x1a14b8(_0x1ad4e7(0x1b8)+':reorder'+_0x1ad4e7(0x345),async(_0x223b00,_0x3aa1ba={})=>{const _0x5782f9=_0x1ad4e7,_0x4a9e26=Array[_0x5782f9(0x1e8)](_0x3aa1ba['keys'])?_0x3aa1ba[_0x5782f9(0x9a)]:_0x3aa1ba;return await _0x1edaf4()[_0x5782f9(0x1b8)]['reorderP'+_0x5782f9(0xc1)](_0x4a9e26);}),_0x1a14b8(_0x1ad4e7(0x200)+_0x1ad4e7(0xe6),(_0x48a8e5,_0x25962d)=>_0x1edaf4()[_0x1ad4e7(0x26a)]['install'](_0x25962d)),_0x1a14b8(_0x1ad4e7(0xc8)+'t',(_0x453bf5,_0x25fd41)=>_0x1edaf4()[_0x1ad4e7(0x37e)][_0x1ad4e7(0x21c)](_0x25fd41)),_0x1a14b8(_0x1ad4e7(0x225)+_0x1ad4e7(0x350),(_0x53d3f2,_0x479e8)=>_0x1edaf4()[_0x1ad4e7(0x37e)][_0x1ad4e7(0x370)](_0x479e8)),_0x1a14b8('cron:upd'+_0x1ad4e7(0x350),(_0x51bd52,_0x1d9fef)=>_0x1edaf4()[_0x1ad4e7(0x37e)][_0x1ad4e7(0x2ee)](_0x1d9fef)),_0x1a14b8('cron:rem'+_0x1ad4e7(0x188),(_0x3b6a3d,_0x1392e3)=>_0x1edaf4()[_0x1ad4e7(0x37e)][_0x1ad4e7(0x9d)](_0x1392e3)),_0x1a14b8(_0x1ad4e7(0x36e)+_0x1ad4e7(0x1ca),(_0x53715f,_0x220289)=>_0x1edaf4()[_0x1ad4e7(0x37e)][_0x1ad4e7(0x26c)](_0x220289)),_0x1a14b8('cron:log'+'s',(_0x2b6a25,_0x48d768)=>_0x1edaf4()['cron'][_0x1ad4e7(0x360)](_0x48d768)),_0x1a14b8('models:c'+_0x1ad4e7(0x14e),async(_0x58be0e,_0x1c823d={})=>{const _0x6df3d6=_0x1ad4e7,_0x5cfbac=configController['resolveC'+'onfigPat'+'h'](),_0x3b048d=JSON[_0x6df3d6(0x36f)](await readFile(_0x5cfbac,_0x6df3d6(0x132))),_0x4e1dcc=_0x3b048d?.[_0x6df3d6(0x222)]?.[_0x6df3d6(0x1fb)+'s']&&typeof _0x3b048d[_0x6df3d6(0x222)]['provider'+'s']==='object'?_0x3b048d[_0x6df3d6(0x222)][_0x6df3d6(0x1fb)+'s']:{},_0x51f816=typeof _0x3b048d?.[_0x6df3d6(0x2aa)]?.['defaults']?.[_0x6df3d6(0x37a)]?.[_0x6df3d6(0x1ef)]==='string'?_0x3b048d[_0x6df3d6(0x2aa)][_0x6df3d6(0x11a)][_0x6df3d6(0x37a)][_0x6df3d6(0x1ef)]:'',_0x2ff807=String(_0x1c823d[_0x6df3d6(0x37a)]||_0x51f816||'');if(!_0x2ff807[_0x6df3d6(0x87)]('/'))throw new Error(_0x6df3d6(0x362)+'lt\x20model'+_0x6df3d6(0x34b)+_0x6df3d6(0xb4)+_0x6df3d6(0x1e2)+_0x6df3d6(0x2f5)+_0x6df3d6(0x264));const _0x4e22c6=_0x2ff807[_0x6df3d6(0x1af)]('/'),_0xad68ac=_0x2ff807['slice'](0x0,_0x4e22c6),_0x3c0176=_0x2ff807[_0x6df3d6(0x1df)](_0x4e22c6+0x1),_0x1d3e54=_0x4e1dcc[_0xad68ac];if(!_0x1d3e54||typeof _0x1d3e54!==_0x6df3d6(0x307))throw new Error('provider'+_0x6df3d6(0x202)+_0x6df3d6(0x1b0)+'\x20'+_0xad68ac);const _0x5303c8=String(_0x1d3e54[_0x6df3d6(0x284)]||_0x6df3d6(0x16e)+_0x6df3d6(0x2f2)+_0x6df3d6(0x2a4)+'1')[_0x6df3d6(0x255)]()[_0x6df3d6(0x30a)](/\/$/,''),_0x2f134b=await fetch(_0x5303c8+(_0x6df3d6(0x11e)+_0x6df3d6(0x19a)+'s'),{'method':_0x6df3d6(0x209),'headers':{'content-type':_0x6df3d6(0x126)+_0x6df3d6(0x91),'Authorization':_0x6df3d6(0x196)+(_0x1d3e54[_0x6df3d6(0x1c1)]||''),..._0x1d3e54[_0x6df3d6(0x217)]&&typeof _0x1d3e54[_0x6df3d6(0x217)]===_0x6df3d6(0x307)?_0x1d3e54[_0x6df3d6(0x217)]:{}},'body':JSON[_0x6df3d6(0xb6)+'y']({'model':_0x3c0176,'max_tokens':Number[_0x6df3d6(0x7f)+'r'](_0x1c823d[_0x6df3d6(0x33e)+'s'])?_0x1c823d['maxToken'+'s']:0x400,'temperature':typeof _0x1c823d[_0x6df3d6(0xdc)+'ure']===_0x6df3d6(0x1a6)?_0x1c823d[_0x6df3d6(0xdc)+_0x6df3d6(0x2a5)]:undefined,'messages':Array['isArray'](_0x1c823d[_0x6df3d6(0x205)])?_0x1c823d[_0x6df3d6(0x205)]:[]}),'signal':AbortSignal[_0x6df3d6(0x2cf)](Number[_0x6df3d6(0x7f)+'r'](_0x1c823d['timeoutM'+'s'])?_0x1c823d[_0x6df3d6(0x2a9)+'s']:0x1d4c0)});if(!_0x2f134b['ok']){const _0x321e90=await _0x2f134b[_0x6df3d6(0x2c5)]();throw new Error(_0x6df3d6(0x296)+'tp\x20'+_0x2f134b['status']+':\x20'+_0x321e90[_0x6df3d6(0x1df)](0x0,0x190));}const _0x820605=await _0x2f134b['json'](),_0x572507=_0x820605?.[_0x6df3d6(0x146)]?.[0x0]?.[_0x6df3d6(0x1cb)]??{};return{'content':extractModelMessageContent(_0x572507[_0x6df3d6(0x1d8)]),'reasoning':typeof _0x572507['reasonin'+'g_conten'+'t']===_0x6df3d6(0x313)?_0x572507['reasonin'+_0x6df3d6(0x363)+'t']:'','model':_0x820605?.[_0x6df3d6(0x37a)]||_0x3c0176};}),_0x1a14b8('models:s'+_0x1ad4e7(0x1db),()=>_0x1edaf4()[_0x1ad4e7(0x222)][_0x1ad4e7(0x183)]()),_0x1a14b8(_0x1ad4e7(0x2e2)+'et-setti'+_0x1ad4e7(0x1d2),(_0x2c14c8,_0x50e250)=>_0x1edaf4()['models'][_0x1ad4e7(0x208)+_0x1ad4e7(0x1d2)](_0x50e250)),_0x1a14b8('models:s'+_0x1ad4e7(0xce)+_0x1ad4e7(0x1c5)+_0x1ad4e7(0x2f9),(_0x2bc26b,_0x52e3a7)=>_0x1edaf4()[_0x1ad4e7(0x222)]['setSelec'+'tedModel'+_0x1ad4e7(0x2dd)+'re'](_0x52e3a7)),_0x1a14b8(_0x1ad4e7(0x2e2)+_0x1ad4e7(0x35b)+'operated',(_0x49e13c,_0x55f076)=>_0x1edaf4()[_0x1ad4e7(0x222)]['setSelfO'+_0x1ad4e7(0x227)+'odels'](_0x55f076)),_0x1a14b8(_0x1ad4e7(0x2e2)+_0x1ad4e7(0x1ac)+_0x1ad4e7(0xab),()=>_0x1edaf4()[_0x1ad4e7(0x222)][_0x1ad4e7(0x2bf)+_0x1ad4e7(0x20a)]()),_0x1a14b8(_0x1ad4e7(0xad)+_0x1ad4e7(0x113)+'dels',()=>_0x1edaf4()[_0x1ad4e7(0x222)]['customMo'+_0x1ad4e7(0x315)]()),_0x1a14b8(_0x1ad4e7(0x2f0)+'sync-bun'+_0x1ad4e7(0x27d)+_0x1ad4e7(0x93),async()=>{const _0x486509=_0x1ad4e7,_0x4c83c6=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController[_0x486509(0x120)+_0x486509(0xfe)+'ns'](),{'ok':!![],'syncedAt':new Date()[_0x486509(0x94)+_0x486509(0x26f)](),'manifest':_0x4c83c6,'status':await getRuntimeResourceStatus()};}),_0x1a14b8('runtime:'+_0x1ad4e7(0x31f)+'-status',async()=>getRuntimeResourceStatus());}async function boot(){const _0x5e0f6c=_0x320a6b;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x5e0f6c(0x367)](shellConfig[_0x5e0f6c(0xd4)+'ame']),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x5e0f6c(0x1fc)],_0x5e0f6c(0x195)),ipcLogger=createShellLogger(configController['paths'],_0x5e0f6c(0x1a4)),filesLogger=createShellLogger(configController[_0x5e0f6c(0x1fc)],_0x5e0f6c(0x1f9)),rendererLogger=createShellLogger(configController['paths'],'renderer'),productRuntime=await loadProductRuntime();const _0x4f05d5=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController[_0x5e0f6c(0x1fc)][_0x5e0f6c(0x340)],'appContext':{'productName':shellConfig[_0x5e0f6c(0xd4)+_0x5e0f6c(0xa9)],'appId':shellConfig['appId'],'appVersion':app[_0x5e0f6c(0x334)+'on'](),'platform':process['platform'],'arch':process['arch'],..._0x4f05d5?{'apiEndpoint':_0x4f05d5}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController[_0x5e0f6c(0x1fc)]['logsDir'],'diagnosticsWriter':diagnosticsWriter});const _0x52307a=await loadCreateUpdateController({'logger':mainLogger});updateController=_0x52307a({'shellConfig':shellConfig,'appName':()=>app[_0x5e0f6c(0x95)],'appVersion':()=>app[_0x5e0f6c(0x334)+'on'](),'broadcast':broadcast,'logger':mainLogger}),updateController[_0x5e0f6c(0x1a2)+'ze'](),registerProcessLogHooks(),mainLogger?.[_0x5e0f6c(0x9b)](_0x5e0f6c(0x286)+_0x5e0f6c(0xa6)+_0x5e0f6c(0x23e)+'ed',{'appVersion':app[_0x5e0f6c(0x334)+'on'](),'electronVersion':process['versions'][_0x5e0f6c(0x286)],'nodeVersion':process[_0x5e0f6c(0x17b)][_0x5e0f6c(0x342)],'chromeVersion':process['versions']['chrome'],'platform':process['platform'],'arch':process['arch'],'mode':getMode(),'projectRoot':shellConfig['projectR'+'oot'],'configPath':shellConfig[_0x5e0f6c(0x1ec)+'th'],'dataDir':shellConfig[_0x5e0f6c(0x1fe)],'logsDir':configController[_0x5e0f6c(0x1fc)][_0x5e0f6c(0x340)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x5e0f6c(0x29e)+_0x5e0f6c(0x323)],'dist',_0x5e0f6c(0x267)+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x5e0f6c(0x334)+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime[_0x5e0f6c(0x1cf)+_0x5e0f6c(0x285)+'nfig']===_0x5e0f6c(0x186)&&await productRuntime[_0x5e0f6c(0x1cf)+_0x5e0f6c(0x285)+_0x5e0f6c(0x1d0)]({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x5e0f6c(0x1cf)+_0x5e0f6c(0x213)+'ta']===_0x5e0f6c(0x186)?await productRuntime[_0x5e0f6c(0x1cf)+_0x5e0f6c(0x213)+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()['ensureIn'+_0x5e0f6c(0x112)+'d'](),attachGatewayBroadcastHandlers(gatewayController),await installIpcHandlers(),installClawspaceProtocolHandler(),registerShellShortcuts(),await createWindow(),await gatewayController[_0x5e0f6c(0x14d)](),updateController[_0x5e0f6c(0x180)+_0x5e0f6c(0x1f4)+_0x5e0f6c(0xff)](),mainLogger?.[_0x5e0f6c(0x9b)](_0x5e0f6c(0x286)+_0x5e0f6c(0xa6)+_0x5e0f6c(0x13e)+_0x5e0f6c(0x2da));}function registerProcessLogHooks(){const _0x227fda=_0x320a6b;if(registerProcessLogHooks[_0x227fda(0x388)+'ed'])return;registerProcessLogHooks[_0x227fda(0x388)+'ed']=!![],process['on'](_0x227fda(0x28e)+'Exceptio'+'n',_0x28217a=>{const _0x302843=_0x227fda;mainLogger?.['error'](_0x302843(0x28e)+'\x20excepti'+'on',summarizeError(_0x28217a));}),process['on']('unhandle'+_0x227fda(0x2e1)+'on',_0x19992b=>{const _0x4fd2e2=_0x227fda;mainLogger?.[_0x4fd2e2(0x1bf)](_0x4fd2e2(0x243)+'d\x20reject'+_0x4fd2e2(0x142),summarizeError(_0x19992b));}),app['on'](_0x227fda(0x282)+_0x227fda(0x2db)+'one',(_0x33d700,_0x176c6f,_0x27703f)=>{const _0xd90a0f=_0x227fda;mainLogger?.[_0xd90a0f(0x1bf)](_0xd90a0f(0x219)+_0xd90a0f(0x25a)+'\x20gone',{'url':_0x176c6f[_0xd90a0f(0x1cc)](),'details':_0x27703f});}),app['on'](_0x227fda(0xaa)+_0x227fda(0xd7)+'ne',(_0x2973d5,_0x1f771c)=>{const _0x46e138=_0x227fda;mainLogger?.[_0x46e138(0x1bf)](_0x46e138(0x21d)+_0x46e138(0x277)+'ne',{'details':_0x1f771c});});}app['on']('window-a'+_0x320a6b(0x1c9)+'d',()=>{const _0x1b6de8=_0x320a6b;if(process[_0x1b6de8(0x31d)]!=='darwin')app['quit']();}),app['on'](_0x320a6b(0x210),async()=>{const _0x2d9fdf=_0x320a6b;if(isQuitting){app['quit']();return;}updateController?.[_0x2d9fdf(0x2ad)+_0x2d9fdf(0x100)+_0x2d9fdf(0x164)](_0x2d9fdf(0xc4)+'vate'),BrowserWindow['getAllWi'+_0x2d9fdf(0x104)]()[_0x2d9fdf(0x294)]===0x0&&shellConfig&&await createWindow();}),app['on'](_0x320a6b(0x35c)+_0x320a6b(0x38d),_0x365877=>{const _0x22f490=_0x320a6b;isQuitting=!![],updateController?.[_0x22f490(0xc2)+_0x22f490(0xf8)](),terminalManager?.[_0x22f490(0x1c2)](),terminalManager=null,productRuntimeHooks?.[_0x22f490(0x1c2)]?.();for(const _0x36e6af of Object['keys'](productRuntimeHooks))delete productRuntimeHooks[_0x36e6af];if(!gatewayController)return;mainLogger?.['info'](_0x22f490(0x2af)+_0x22f490(0x259)+_0x22f490(0x368)+_0x22f490(0x31e)),_0x365877[_0x22f490(0x10e)+_0x22f490(0x35a)](),void gatewayController[_0x22f490(0x18c)]()[_0x22f490(0x263)](()=>{const _0x54f6c1=_0x22f490;gatewayController=null,mainLogger?.['info'](_0x54f6c1(0x224)+_0x54f6c1(0x29d)+_0x54f6c1(0x2af)+_0x54f6c1(0x38d)),app['quit']();});}),app['on']('will-qui'+'t',()=>{const _0x25804a=_0x320a6b;globalShortcut[_0x25804a(0x220)+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x320a6b(0x29f)+'y']()[_0x320a6b(0x83)](boot)['catch'](_0xe6ec4a=>{const _0x18dfe0=_0x320a6b;bootError=_0xe6ec4a instanceof Error?_0xe6ec4a[_0x18dfe0(0x1cb)]:String(_0xe6ec4a),mainLogger?.[_0x18dfe0(0x1bf)]('electron'+_0x18dfe0(0xa6)+_0x18dfe0(0x1e0)+'d',summarizeError(_0xe6ec4a)),console[_0x18dfe0(0x1bf)](_0x18dfe0(0x7e)+_0x18dfe0(0x157)+_0x18dfe0(0x27f)+_0x18dfe0(0x98)+_0x18dfe0(0x2a3)+'in',_0xe6ec4a);});
|
|
1
|
+
const _0x509663=_0x3a93;(function(_0x192c65,_0x2cbd61){const _0x577817=_0x3a93,_0x515361=_0x192c65();while(!![]){try{const _0x2a921b=parseInt(_0x577817(0x199))/0x1*(parseInt(_0x577817(0x13c))/0x2)+parseInt(_0x577817(0x103))/0x3+parseInt(_0x577817(0x23f))/0x4+-parseInt(_0x577817(0x3bc))/0x5*(-parseInt(_0x577817(0x141))/0x6)+parseInt(_0x577817(0x3d6))/0x7+parseInt(_0x577817(0x15f))/0x8+-parseInt(_0x577817(0x18f))/0x9;if(_0x2a921b===_0x2cbd61)break;else _0x515361['push'](_0x515361['shift']());}catch(_0x435c54){_0x515361['push'](_0x515361['shift']());}}}(_0xb432,0xf289e));import _0x4427bf 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';import{registerFileHandlers}from'../files/handlers.mjs';import{registerProductLogHandlers}from'../log-reporting/handlers.mjs';import{resolveWujieApiEndpoint}from'../log-reporting/report-logs.mjs';import{extractModelMessageContent,registerModelHandlers}from'../models/handlers.mjs';import{createPreferencesStore}from'../preferences/store.mjs';import{loadRuntimeInfo,prepareRuntime,resolveRuntimeRoot,getRuntimeSpawnContext,resolveRuntimeLarkCliCommand,runClawOnce}from'../runtime/index.mjs';import{loadCreateUpdateController}from'../updates/loader.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,_0x509663(0x30a)+'mjs'),{app,BrowserWindow,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x4427bf,DEVTOOLS_ACCELERATOR='CommandO'+_0x509663(0x2f5)+'+Shift+I',CLAWSPACE_PROTOCOL_SCHEME=_0x509663(0x10e)+'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',_0x509663(0x38c)+_0x509663(0x198)+_0x509663(0x2da)+'8'],[_0x509663(0x322),_0x509663(0x167)+_0x509663(0x1cf)+_0x509663(0x11f)+'tf-8'],['.jpg',_0x509663(0x3e6)+'eg'],['.jpeg','image/jp'+'eg'],['.png',_0x509663(0x329)+'g'],[_0x509663(0x282),_0x509663(0x328)+'f'],[_0x509663(0x162),_0x509663(0x1ca)+'p'],[_0x509663(0x1f3),_0x509663(0x2ad)+_0x509663(0x2ed)],['.webp',_0x509663(0x161)+'bp'],[_0x509663(0x3a8),'video/mp'+'4'],[_0x509663(0x352),_0x509663(0x399)+_0x509663(0x2fa)],[_0x509663(0x14a),'video/x-'+'msvideo'],[_0x509663(0x273),_0x509663(0x107)+_0x509663(0x361)],['.webm',_0x509663(0x336)+'bm'],['.mp3','audio/mp'+'eg'],['.wav',_0x509663(0x1ab)+'v'],['.m4a',_0x509663(0x3db)+'4'],[_0x509663(0x372),_0x509663(0x10f)+'c'],[_0x509663(0x355),'audio/og'+'g'],[_0x509663(0x288),'audio/fl'+'ac']]);function _0x3a93(_0x1cefe9,_0x28de96){_0x1cefe9=_0x1cefe9-0xf5;const _0xb432f1=_0xb432();let _0x3a9356=_0xb432f1[_0x1cefe9];return _0x3a9356;}protocol[_0x509663(0x407)+_0x509663(0x10a)+_0x509663(0x330)+_0x509663(0x235)]([{'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(_0x32141c){const _0x551b76=_0x509663;for(const _0x4833f7 of[_0x551b76(0x3ce)+_0x551b76(0x28e),_0x551b76(0x3ce)+_0x551b76(0x38d),'chat-str'+_0x551b76(0x3c3)+'t','session-'+'updated',_0x551b76(0x2f2)+'-invalid'+_0x551b76(0x3c8),'agent-ev'+_0x551b76(0x401),_0x551b76(0x28d)+_0x551b76(0x20a),'ask-user'+_0x551b76(0x30e)+'n']){_0x32141c['on'](_0x4833f7,_0x3f5f84=>broadcast(_0x4833f7,_0x3f5f84));}}function ensureSessionSqliteStore(){const _0x2babeb=_0x509663;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error(_0x2babeb(0x1ec)+_0x2babeb(0x101)+_0x2babeb(0x1e1)+_0x2babeb(0x250)+'lized');return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController['resolveS'+_0x2babeb(0x3b9)]()}),sessionSqliteStore;}function ensureGeneratedFilesStore(){const _0x580fdd=_0x509663;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error(_0x580fdd(0x1ec)+_0x580fdd(0x101)+_0x580fdd(0x1e1)+_0x580fdd(0x250)+'lized');return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController['resolveS'+'tateDir']()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0xdbfbc4=_0x509663;if(!gatewayController&&(!shellConfig||!configController))throw new Error(bootError?'wujie-sh'+_0xdbfbc4(0x1bb)+_0xdbfbc4(0x2b2)+'\x20'+bootError:_0xdbfbc4(0x1ec)+_0xdbfbc4(0x17d)+_0xdbfbc4(0x293)+_0xdbfbc4(0x224)+_0xdbfbc4(0x397));return!gatewayController&&(mainLogger?.[_0xdbfbc4(0x39b)](_0xdbfbc4(0x40a)+_0xdbfbc4(0x152)+'er\x20missi'+'ng;\x20recr'+_0xdbfbc4(0x149)),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0xdbfbc4(0x248)+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController)),await gatewayController['start'](),gatewayController;}function getMode(){const _0x479d85=_0x509663;return process.env.VITE_DEV_SERVER_URL?_0x479d85(0x172):'prod';}function isGatewayNotInitializedError(_0x5b8911){const _0x465ac9=_0x509663;return _0x5b8911 instanceof Error&&_0x5b8911[_0x465ac9(0x13e)]===_0x465ac9(0x1ec)+_0x465ac9(0x17d)+'way\x20is\x20n'+_0x465ac9(0x224)+'alized';}function revealPathInFolder(_0x244270){const _0x419d3e=_0x509663,_0x1ca68b=String(_0x244270||'')['trim']();if(!_0x1ca68b)return{'ok':![],'error':_0x419d3e(0x118)+_0x419d3e(0x2a9)};return shell['showItem'+_0x419d3e(0x113)](_0x1ca68b),{'ok':!![]};}function resolveProjectRoot(){const _0x35dab0=_0x509663;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app[_0x35dab0(0x21b)+'ed']&&process[_0x35dab0(0xf7)+_0x35dab0(0x369)])return join(process[_0x35dab0(0xf7)+_0x35dab0(0x369)],_0x35dab0(0x279));return resolve(process[_0x35dab0(0x2c8)]());}function getLocalFileMimeType(_0x586d50){const _0xeb6ba5=_0x509663;return LOCAL_FILE_MIME_TYPES[_0xeb6ba5(0x2b0)](_0x586d50[_0xeb6ba5(0x190)](_0x586d50[_0xeb6ba5(0x2d4)+_0xeb6ba5(0x245)]('.'))[_0xeb6ba5(0x312)+_0xeb6ba5(0x38e)]())||_0xeb6ba5(0x214)+_0xeb6ba5(0x3f5)+_0xeb6ba5(0x39d);}function parseSingleRangeHeader(_0x2f2f9e,_0x2fea87){const _0x577211=_0x509663,_0x2807bb=/^bytes=(\d*)-(\d*)$/i[_0x577211(0x151)](_0x2f2f9e['trim']());if(!_0x2807bb)return null;const [,_0x9caa36,_0x327327]=_0x2807bb;if(!_0x9caa36&&!_0x327327)return null;if(!_0x9caa36){const _0x3d1687=Number[_0x577211(0x2f0)](_0x327327,0xa);if(!Number[_0x577211(0x33b)](_0x3d1687)||_0x3d1687<=0x0)return null;const _0xce4f8=Math[_0x577211(0x12a)](_0x2fea87-_0x3d1687,0x0);return{'start':_0xce4f8,'end':_0x2fea87-0x1};}const _0x50690a=Number[_0x577211(0x2f0)](_0x9caa36,0xa);if(!Number[_0x577211(0x33b)](_0x50690a)||_0x50690a<0x0||_0x50690a>=_0x2fea87)return null;const _0x1d7a48=_0x327327?Number[_0x577211(0x2f0)](_0x327327,0xa):_0x2fea87-0x1;if(!Number[_0x577211(0x33b)](_0x1d7a48)||_0x1d7a48<_0x50690a)return null;return{'start':_0x50690a,'end':Math[_0x577211(0x28a)](_0x1d7a48,_0x2fea87-0x1)};}function decodeClawspacePath(_0x3daca0){const _0x2c5ed5=_0x509663;try{const _0x598c2d=new URL(_0x3daca0);if(_0x598c2d[_0x2c5ed5(0x1ba)]!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x598c2d['hostname']!==_0x2c5ed5(0x252))return null;const _0x45e9e8=decodeURIComponent(_0x598c2d[_0x2c5ed5(0x3e1)]);if(!_0x45e9e8)return null;if(/^\/[A-Za-z]:\//[_0x2c5ed5(0x3df)](_0x45e9e8))return _0x45e9e8[_0x2c5ed5(0x190)](0x1);return _0x45e9e8;}catch{return null;}}function createClawspaceHeaders(_0x590258={}){const _0x38be8d=_0x509663;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':_0x38be8d(0x25e)+'D,\x20OPTIO'+'NS','access-control-allow-headers':_0x38be8d(0x29f)+_0x38be8d(0x2de)+_0x38be8d(0x3ea),'access-control-expose-headers':_0x38be8d(0x183)+_0x38be8d(0x3d0)+'content-'+_0x38be8d(0x32e)+_0x38be8d(0x1a1)+_0x38be8d(0x20c),..._0x590258});}function createLocalFileResponse(_0x537afd,_0xc86ab){const _0x19ac85=_0x509663,_0x1a1a6e=statSync(_0xc86ab);if(!_0x1a1a6e['isFile']())return new Response(_0x19ac85(0xff)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x19ac85(0x38c)+_0x19ac85(0x198)+_0x19ac85(0x2da)+'8'})});const _0x3237d7=getLocalFileMimeType(_0xc86ab),_0x20dc72=createClawspaceHeaders({'content-type':_0x3237d7,'accept-ranges':_0x19ac85(0x217),'cache-control':_0x19ac85(0x1c2)});if(_0x537afd[_0x19ac85(0x10d)]===_0x19ac85(0x138))return _0x20dc72[_0x19ac85(0x1e3)](_0x19ac85(0x183)+'length',String(_0x1a1a6e[_0x19ac85(0x1f8)])),new Response(null,{'status':0xc8,'headers':_0x20dc72});const _0x52a8ae=_0x537afd[_0x19ac85(0x2b6)]['get'](_0x19ac85(0x27d));if(!_0x52a8ae)return _0x20dc72[_0x19ac85(0x1e3)](_0x19ac85(0x183)+_0x19ac85(0x19e),String(_0x1a1a6e[_0x19ac85(0x1f8)])),new Response(Readable[_0x19ac85(0x412)](createReadStream(_0xc86ab)),{'status':0xc8,'headers':_0x20dc72});const _0x2f5f94=parseSingleRangeHeader(_0x52a8ae,_0x1a1a6e['size']);if(!_0x2f5f94)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object['fromEntr'+_0x19ac85(0x2ca)](_0x20dc72[_0x19ac85(0x3e5)]()),'content-range':_0x19ac85(0x155)+_0x1a1a6e[_0x19ac85(0x1f8)]})});const {start:_0x4586b2,end:_0x1212bf}=_0x2f5f94,_0x5d940e=_0x1212bf-_0x4586b2+0x1,_0x4abbb0=new Headers(_0x20dc72);return _0x4abbb0['set'](_0x19ac85(0x183)+'length',String(_0x5d940e)),_0x4abbb0[_0x19ac85(0x1e3)](_0x19ac85(0x183)+_0x19ac85(0x27d),_0x19ac85(0xf6)+_0x4586b2+'-'+_0x1212bf+'/'+_0x1a1a6e[_0x19ac85(0x1f8)]),new Response(Readable['toWeb'](createReadStream(_0xc86ab,{'start':_0x4586b2,'end':_0x1212bf})),{'status':0xce,'headers':_0x4abbb0});}function installClawspaceProtocolHandler(){const _0x40445f=_0x509663;protocol[_0x40445f(0x120)](CLAWSPACE_PROTOCOL_SCHEME,_0xf10163=>{const _0x266069=_0x40445f;if(_0xf10163['method']===_0x266069(0x1f0))return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x4727aa=decodeClawspacePath(_0xf10163[_0x266069(0x1b3)]);if(!_0x4727aa)return new Response('Invalid\x20'+_0x266069(0x10e)+_0x266069(0x3c9),{'status':0x190,'headers':createClawspaceHeaders({'content-type':'text/pla'+_0x266069(0x198)+_0x266069(0x2da)+'8'})});if(!existsSync(_0x4727aa))return new Response('Not\x20foun'+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x266069(0x38c)+_0x266069(0x198)+_0x266069(0x2da)+'8'})});return createLocalFileResponse(_0xf10163,_0x4727aa);});}function broadcast(_0x4cd703,_0x3e3ecb){const _0x5e0a8d=_0x509663;DEBUG_STDOUT&&console[_0x5e0a8d(0x1be)](_0x5e0a8d(0x3c2)+_0x5e0a8d(0x3da)+_0x5e0a8d(0x2c0),_0x4cd703,summarizePayload(_0x3e3ecb,{'maxDepth':0x2}));for(const _0x3a2a3c of BrowserWindow['getAllWi'+'ndows']()){!_0x3a2a3c[_0x5e0a8d(0x2db)+_0x5e0a8d(0x1a5)][_0x5e0a8d(0x3a1)+_0x5e0a8d(0x38f)]()&&_0x3a2a3c['webConte'+_0x5e0a8d(0x1a5)]['send'](_0x5e0a8d(0x1ec)+_0x5e0a8d(0x280)+'t',{'name':_0x4cd703,'payload':_0x3e3ecb});}}async function loadProductRuntime(){const _0x2e6c23=_0x509663,_0x1bf1e8=[join(shellConfig[_0x2e6c23(0x3b3)+_0x2e6c23(0x126)],_0x2e6c23(0x3eb)+'ntime',_0x2e6c23(0x159)+'s'),join(app[_0x2e6c23(0x278)+'th'](),_0x2e6c23(0x3eb)+_0x2e6c23(0x102),_0x2e6c23(0x159)+'s')],_0x294849=_0x1bf1e8[_0x2e6c23(0x105)](_0x3b1a1f=>existsSync(_0x3b1a1f));if(!_0x294849)return mainLogger?.[_0x2e6c23(0x1be)](_0x2e6c23(0x299)+'runtime\x20'+_0x2e6c23(0x25b)+_0x2e6c23(0x305)+_0x2e6c23(0x319),{'runtimeCandidates':_0x1bf1e8}),{};try{const _0x4158ee=await import(pathToFileURL(_0x294849)[_0x2e6c23(0x367)]);return mainLogger?.[_0x2e6c23(0x1be)](_0x2e6c23(0x299)+'runtime\x20'+_0x2e6c23(0x25b)+_0x2e6c23(0x3be),{'runtimePath':_0x294849}),_0x4158ee;}catch(_0x249107){mainLogger?.[_0x2e6c23(0x3f8)](_0x2e6c23(0x299)+'runtime\x20'+'extensio'+_0x2e6c23(0x26c)+_0x2e6c23(0x18e),{'runtimePath':_0x294849,'error':summarizeError(_0x249107)});throw _0x249107;}}function openDevToolsForActiveContext(){const _0x563226=_0x509663,_0x142b39=BrowserWindow['getFocus'+'edWindow']()||mainWindow;if(!_0x142b39||_0x142b39[_0x563226(0x3a1)+_0x563226(0x38f)]())return{'ok':![]};return _0x142b39[_0x563226(0x2db)+_0x563226(0x1a5)][_0x563226(0x127)+_0x563226(0x10b)]({'mode':_0x563226(0x315)}),_0x142b39['webConte'+'nts'][_0x563226(0x206)](_0x563226(0x1ec)+_0x563226(0x280)+'t',{'name':_0x563226(0x1e5)+'-shortcu'+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x23e1df=_0x509663;globalShortcut[_0x23e1df(0x132)+'er'](DEVTOOLS_ACCELERATOR);const _0x5b3574=globalShortcut[_0x23e1df(0x407)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x5b3574&&console['warn'](_0x23e1df(0x3c2)+'hell]\x20fa'+_0x23e1df(0x366)+_0x23e1df(0x407)+'\x20shortcu'+_0x23e1df(0x225)+DEVTOOLS_ACCELERATOR);}function _0xb432(){const _0x5908c8=[':complet','te:check','n\x20failed','saveNetE','gatewayP','efault','ettings','logsDir','\x20log','.mkv','byteLeng','Dialog','untimeHa','promises','getAppPa','app.asar','deletedS','nfig','est\x20fail','range','agent\x20de','ipc\x20requ','ell:even','function','.gif','chat:abo','startsWi','ocus','ort','whenRead','.flac','ssionKey','min','redConte','setName','agents-u','status','timeoutM','ot\x20start','getLogin','window:t','way\x20is\x20n','annelCon',':resize','torConfi','nt-state','ame','product\x20','ipc','ctStatus','ile\x20comp','skills:s','dRejecti','range,\x20c','enable','aseMailC','requestB','tup:set','tabs:req','child\x20pr','pop','payload','ensureIn','required','huChanne',':fork','name','image/sv','feishu','type','get','lect-dir','\x20failed:','tease-ma','activate','models:s','headers','includes','e:shared','one','saveCust','boot\x20ele','ing','inned','lose','resh-age','nt]','channelI','startWec','ile\x20writ','tedModel','tic','ationSta','nnel','cwd','odels','ies','ProductR','updateOp','ll-close','emoji','reasonin','ion','kUserQue','markConf','render-p','lastInde','CliConne','create','-life-cy','relaunch','ItemSett','set=utf-','webConte','provider','sharedCo','ontent-t','ontents','versions','ocsCliCo','lawChann','Config','split','targetDi','-status','startKdo','skills','ession',':runtime',':start','ssion','g+xml','index.ht','ources','parseInt','cancelFe','sessions','ion/json','les:hide','rControl','fromWebC','oggle-ma','setImCha','l\x20reques','icktime','lect-fil','getPath','remove','pServer','ximize','startFei','unknown','d-local','app:info','openExte','n\x20not\x20fo','est\x20comp','lConfig','pened',':gateway','preload.','isDirect','uri','before-q','-questio','ile\x20read',':list','d\x20reject','toLowerC','multiSel','uRegistr','detach','Session','getStatu','pping\x20ga','und','ectory\x20o','-session','map','quired','cron','logs','openclaw','saveTenc','.md','eted','getURL','\x20main\x20wi','et-setti','bin','image/gi','image/pn','ntext',':set-clo','workspac','der/mode','range,\x20a','succeede','sPrivile','will-qui','model','messages','agents:w',':loading','video/we','tabs-com','huDocCon','Keys','openFile','isFinite','elected-','ngs','#!/bin/s','node','ory','artifact','ite','lawPlugi','start','ncident','ndow','agents:l','leted','listImCh','ishuDocC','ted\x20conn','app_acti','tabs:nav','dated','catch','elete','uncaught','.mov','ngtalk-d','agents:d','.ogg','syncRunt','appId','ectSessi','m-channe','tChannel','ndlers','avatar','\x20main\x20bo','deleteCu','arch','customNa','matroska','-weixin','reorderP','stream',':open-cl','iled\x20to\x20','href','models','sPath','runtimeI','defaults','record','groups','resolveC','agents','eam','binary\x20f','.aac','director','baseUrl','chat:his','senderFr','tate','failed','filePath','getState','paths','enClawSk','some','replace','ipc_requ','ctory','product','mail','-once','ap:entry','ey\x20is\x20re','meta','nectorCo',':save-qq','update-c','migrateP','roductCo','text/pla','log','ase','yed','sessionK','context','setOpenC',':run-onc','ileName','input','fig','alized','nfo','video/qu','resolveS','warn','Everywhe','t-stream','ted-stat','logs:wri','s:reveal','isDestro','code','select\x20d','files','mport-zi','ell-cli.','path','.mp4','enClawCo','-url','csCliCon','files:re','no\x20defau','filters','dataDir','saveWeco','skills:d','ings','projectR','\x20found:\x20','nabled','Update','utf8','agentId','tateDir','window:i',':downloa','30qDbSFq','lawSkill','n\x20loaded','mpletion','preventD',':diagnos','[wujie-s','eam-even','config','e:direct','dSession','main\x20win','ated','e\x20url','app:tray','renderer','les:list','skills:u','gateway-','parentSe','length,\x20','dCheck','tabs-age','ackgroun','talkDocC','quit','1940960xoMyRr','\x20is\x20requ','ls:delet','dist','hell:eve','audio/mp','now','delete','cancelKd','test','hideBySe','pathname','main','chat','models:c','entries','image/jp','writeSha','stomMode','app:gene','ype','shell-ru','ap:upser','gatewayT',':save-fe','#f8fafc','les:upse','agent-','plugin\x20e','runtime:','ocess-go','ion/octe','agent\x20cr','writeEve','error','te:get-s','g_conten','elConfig','agent\x20al','window:c','sourcePa','ctron\x20ma','pluginId','ent','rayOnClo','uit','wechat','reate','setSetti','register','ate','logs:rea','gateway\x20','ove','skills:i','patch','title','onfig\x20up','rated-fi','ishu-doc','toWeb','match','isabled','bytes\x20','resource',':status','dled-res','getFeish','model\x20ht','defaultF','board:wr','showSave','Not\x20foun','readConf','ell\x20conf','ntime','745749wrxebh','em:resta','find',':input','video/x-','peratedM','recursiv','SchemesA','ools','nel','method','clawspac','audio/aa','list','tus','irectory','InFolder','upsert','atus','chat:str','uit:\x20sto','path\x20is\x20','agent_id','isArray',':save-ne','child-pr','agents:u','sidebar','harset=u','handle','tup:get','feishu_d','all','ready\x20ex','gin','oot','openDevT','ndows','hide','max','Updates','les:reve','window_f','igWriteH','IPC\x20requ','install','vate','unregist','ls:list','\x20excepti','#0000000','deleteIm','e:open-d','HEAD','s-maximi','ernal\x20ur','node:fs/','74542GILafX','level','message','d\x20is\x20req','openAtLo','1061634oDXmVZ',':delete','window:m','unhandle','orConfig','restart','filter','-pinned','eating','.avi','ocs','toISOStr','openDire','markQuit','shuDocCl','ector:\x20','exec','controll',':agent-m','https://','bytes\x20*/','files:se','e\x20comple','keys','index.mj','config:c',':close','creating','object','productN','9484584lRPDRp','key','image/we','.bmp','ed:\x20','setLogin','bot-chan','ontext','text/mar','file\x20rea','l\x20first','dispose',':get-clo','app:syst','inimize','dels','d\x20failed','ections','download','dev','rnal','-mail','Observed','mChannel','push','-info',':save-di','pen-devt','deleteOp','stringif','ell\x20gate','trim','Exceptio','-by-sess','plugin\x20d','string','content-','showOpen','-port','app:file','cron:log','ai.com/v','\x20gone','enClawCh','complete','cancelWe','agent\x20id','\x20to\x20load','18167778isDyuq','slice','oken','dAt','maxToken','s:hide','lawMcpSe','unmaximi','hidden','in;\x20char','1PgodQv','sender','rver',':save-we','config:i','length','ModelId','isMaximi','ccept-ra','ired','kgroundC','et-self-','nts','initiali','focus','pper\x20not','writeTex','indexOf','audio/wa','maximize','ternally','enClawMc','ectory','openPath','l\x20prepar',':save-te','url','stop','resize',':choose-','Unsuppor','logs:exp','igate','protocol','ell\x20boot','-restart','navigati','info','red;\x20set','started','tSession','no-store','entDocsC',':reorder','ists','POST','imePlugi','temperat','lt\x20model','image/bm','Bearer\x20','wujiecla','writeCon','Entry','kdown;\x20c','andledIn','n-direct','reload','\x20request','hell:ipc',':cancel',':rename','rocess-g','\x20not\x20con','stration','tp\x20','tory',':unpin',':create','est_fail','wBin','electron','ig\x20is\x20no','pdate','set','get-conf','devtools','control','cron:rem','loadURL','nectSess','tLogs','logs:ope','wujie-sh','ChannelC','nnectSes','cron:lis','OPTIONS','tabs:pos','app:clip','.svg','ap:get','cle','parse','hatChann','size','app:open','/chat/co','e\x20direct','plugins:','primary','i-window','platform','jie-shel','les:dele','et-selec','app:star','getKdocs','te:downl','send','roductDa','onfig','ad-binar','pdated','hecks','nges','finally','window:o','onnectSt','-exit','cron:upd','\x20a\x20provi','setSelfO','applicat','tatus','\x20complet','bytes','mand','uDocCliC','kdocs','isPackag','nConfig','-data','-token','generate','isFile','folder','ncent-do','yInfo','ot\x20initi','t:\x20','select\x20f','timeout','ted','isIntege','eated','ces.json','th\x20is\x20re','canceled','ilConnec','-request','before\x20q','closeToT','customMo','dow\x20load','ory-info','ged','ocess\x20go','saveFeis','product-','plugins','before-i','getAllWi','saveQqbo','history','app:upda','806956YGXnLQ','getPinne','chatChan','te\x20compl','FeishuDo','ted-ever','xOf','files:wr','h\x0aexec\x20\x22','getVersi','files:li','onnector',':choose','captureI','answerAs','config:r','maxEntri','t\x20initia','te:quit-','local','ssion:\x20','lConnect','saveQqMa','zed','illEntry','entExmai','ishuRegi','ory\x20open','extensio','file\x20wri','darwin','GET,\x20HEA','content','default','apiKey','limit','fromIpc','t-messag','close','command','s:list','terminal','saveKdoc'];_0xb432=function(){return _0x5908c8;};return _0xb432();}async function getRuntimeResourceStatus(){const _0x4d21db=_0x509663;try{const _0x9c8590=await loadRuntimeInfo(shellConfig[_0x4d21db(0x3b3)+_0x4d21db(0x126)]),_0x167279=_0x9c8590['manifest']||{};return{'ok':!![],'runtimeRoot':_0x9c8590['runtimeR'+_0x4d21db(0x126)],'openclawVersion':_0x9c8590[_0x4d21db(0x320)+'Version'],'generatedAt':_0x167279[_0x4d21db(0x21f)+_0x4d21db(0x192)]||null,'pluginCount':Array[_0x4d21db(0x11a)](_0x167279['plugins'])?_0x167279['plugins'][_0x4d21db(0x19e)]:0x0,'plugins':Array[_0x4d21db(0x11a)](_0x167279[_0x4d21db(0x239)])?_0x167279[_0x4d21db(0x239)]:[],'agents':_0x167279[_0x4d21db(0x36f)]||null,'skills':_0x167279[_0x4d21db(0x2e8)]||null,'wrapper':_0x167279[_0x4d21db(0x1cc)+_0x4d21db(0x1df)]||null,'product':_0x167279[_0x4d21db(0x381)]||null};}catch(_0x39732b){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.[_0x4d21db(0x3b3)+_0x4d21db(0x126)]||resolveProjectRoot()),'error':_0x39732b instanceof Error?_0x39732b[_0x4d21db(0x13e)]:String(_0x39732b)};}}async function createWindow(){const _0x3d7698=_0x509663,_0x597794=process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x3d7698(0x3b3)+_0x3d7698(0x126)],_0x3d7698(0x3d9),'index.ht'+'ml'),_0x3b9a37=process[_0x3d7698(0x1ff)]===_0x3d7698(0x25d);mainLogger?.[_0x3d7698(0x1be)](_0x3d7698(0x15c)+_0x3d7698(0x325)+_0x3d7698(0x346),{'rendererUrl':_0x597794,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x3d7698(0x15e)+'ame'],'backgroundColor':_0x3b9a37?_0x3d7698(0x135)+'0':_0x3d7698(0x3ef),'titleBarStyle':_0x3b9a37?_0x3d7698(0x197):_0x3d7698(0x260),..._0x3b9a37?{'titleBarOverlay':!![],'trafficLightPosition':{'x':0x10,'y':0xc}}:{},..._0x3b9a37?{'vibrancy':_0x3d7698(0x11e)}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}}),mainWindow[_0x3d7698(0x2db)+_0x3d7698(0x1a5)]['on'](_0x3d7698(0x23a)+'nput-eve'+'nt',_0x17ff7b=>{const _0x5e947f=_0x3d7698,_0x471b00=_0x17ff7b[_0x5e947f(0x395)];if(!_0x471b00||_0x471b00[_0x5e947f(0x2af)]!=='keyDown')return;const _0x4dd47e=String(_0x471b00[_0x5e947f(0x160)]||'')['toLowerC'+_0x5e947f(0x38e)](),_0x3b339e=_0x4dd47e==='r',_0x4f6218=process[_0x5e947f(0x1ff)]===_0x5e947f(0x25d)?_0x471b00[_0x5e947f(0x386)]===!![]:_0x471b00[_0x5e947f(0x1e6)]===!![];if(!_0x3b339e||!_0x4f6218)return;_0x17ff7b[_0x5e947f(0x3c0)+'efault'](),broadcast(_0x5e947f(0x337)+_0x5e947f(0x218),{'type':_0x5e947f(0x1bd)+'on','action':_0x5e947f(0x1d2)});}),mainWindow['on'](_0x3d7698(0x1a7),()=>{const _0x25bcd6=_0x3d7698;updateController?.[_0x25bcd6(0x2a2)+_0x25bcd6(0x3d3)+_0x25bcd6(0x3d1)](_0x25bcd6(0x12d)+_0x25bcd6(0x285));});const _0x1b06b2=process.env.VITE_DEV_SERVER_URL;_0x1b06b2?(await mainWindow[_0x3d7698(0x1e8)](_0x1b06b2),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow[_0x3d7698(0x2db)+'nts'][_0x3d7698(0x127)+'ools']({'mode':_0x3d7698(0x315)})):await mainWindow['loadFile'](join(shellConfig['projectR'+_0x3d7698(0x126)],'dist','index.ht'+'ml')),mainLogger?.[_0x3d7698(0x1be)](_0x3d7698(0x3c7)+_0x3d7698(0x233)+'ed',{'rendererUrl':_0x597794,'mode':getMode()});}async function installIpcHandlers(){const _0x30a030=_0x509663,_0x320b99=(_0x2f66fb,_0x346916)=>{ipcMain['handle'](_0x2f66fb,async(_0x1bfba1,_0x52bdf6)=>{const _0x165108=_0x3a93,_0x41a03e=Date[_0x165108(0x3dc)](),_0x310421=_0x1bfba1[_0x165108(0x376)+_0x165108(0x298)]?.[_0x165108(0x1b3)]||_0x1bfba1[_0x165108(0x19a)][_0x165108(0x324)]();ipcLogger?.[_0x165108(0x1be)]('ipc\x20requ'+'est\x20star'+_0x165108(0x228),{'channel':_0x2f66fb,'senderUrl':_0x310421,'payload':summarizePayload(_0x52bdf6)});DEBUG_STDOUT&&console[_0x165108(0x1be)](_0x165108(0x3c2)+'hell:ipc'+']',_0x2f66fb,_0x165108(0x1c0),summarizePayload(_0x52bdf6));try{let _0x2d46af;try{_0x2d46af=await _0x346916(_0x1bfba1,_0x52bdf6);}catch(_0x45a284){if(!isGatewayNotInitializedError(_0x45a284))throw _0x45a284;await ensureGatewayControllerStarted(),_0x2d46af=await _0x346916(_0x1bfba1,_0x52bdf6);}const _0xe31f20=Date[_0x165108(0x3dc)]()-_0x41a03e;return ipcLogger?.[_0x165108(0x1be)](_0x165108(0x27f)+_0x165108(0x306)+'leted',{'channel':_0x2f66fb,'durationMs':_0xe31f20,'result':summarizePayload(_0x2d46af,{'maxDepth':0x2})}),await userEventWriter?.[_0x165108(0x263)]({'channel':_0x2f66fb,'payload':_0x52bdf6,'result':_0x2d46af,'durationMs':_0xe31f20,'status':_0x165108(0x32f)+'d'}),DEBUG_STDOUT&&console[_0x165108(0x1be)](_0x165108(0x3c2)+_0x165108(0x1d4)+']',_0x2f66fb,'complete'+'d',summarizePayload(_0x2d46af,{'maxDepth':0x2})),_0x2d46af;}catch(_0x4c7fca){const _0xd80c41=Date[_0x165108(0x3dc)]()-_0x41a03e;ipcLogger?.[_0x165108(0x3f8)](_0x165108(0x27f)+_0x165108(0x27c)+'ed',{'channel':_0x2f66fb,'durationMs':_0xd80c41,'error':summarizeError(_0x4c7fca)}),await userEventWriter?.[_0x165108(0x263)]({'channel':_0x2f66fb,'payload':_0x52bdf6,'error':_0x4c7fca,'durationMs':_0xd80c41,'status':_0x165108(0x378)}),await diagnosticsWriter?.[_0x165108(0x24c)+_0x165108(0x345)](diagnosticEventFromError(_0x4c7fca,{'category':_0x165108(0x29a),'event':_0x165108(0x37f)+_0x165108(0x1de)+'ed','message':_0x165108(0x12f)+_0x165108(0x27c)+_0x165108(0x163)+_0x2f66fb,'durationMs':_0xd80c41,'meta':{'channel':_0x2f66fb,'senderUrl':_0x310421,'payload':summarizePayload(_0x52bdf6)}}));DEBUG_STDOUT&&console[_0x165108(0x3f8)](_0x165108(0x3c2)+_0x165108(0x1d4)+']',_0x2f66fb,_0x165108(0x378),summarizeError(_0x4c7fca));throw _0x4c7fca;}});},_0x3f9542=()=>{const _0x42733e=_0x3a93;if(!gatewayController)throw new Error(bootError?_0x42733e(0x1ec)+_0x42733e(0x1bb)+_0x42733e(0x2b2)+'\x20'+bootError:'wujie-sh'+'ell\x20gate'+_0x42733e(0x293)+_0x42733e(0x224)+_0x42733e(0x397));return gatewayController;},_0x4bef26=()=>{const _0x52a766=_0x3a93;if(typeof productRuntime[_0x52a766(0x407)+_0x52a766(0x2cb)+'untimeHa'+_0x52a766(0x35b)]!==_0x52a766(0x281))return;const _0x5cb95f=productRuntime[_0x52a766(0x407)+'ProductR'+_0x52a766(0x276)+_0x52a766(0x35b)]({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0x320b99,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0x3f9542,'sep':sep,'openClawConfigHandlers':{'update':(..._0x12f3ba)=>configController[_0x52a766(0x2cc)+'enClawCo'+_0x52a766(0x27b)](..._0x12f3ba),'setPluginConfig':_0x29549a=>configController[_0x52a766(0x392)+_0x52a766(0x343)+_0x52a766(0x21c)](_0x29549a),'setChannelConfig':_0x31fbb6=>configController[_0x52a766(0x392)+_0x52a766(0x2e2)+_0x52a766(0x3fb)](_0x31fbb6),'deleteChannelConfig':_0x33a38d=>configController[_0x52a766(0x17b)+_0x52a766(0x18a)+'annelCon'+'fig'](_0x33a38d),'setSkillEntry':_0x2b16bb=>configController['setOpenC'+_0x52a766(0x3bd)+_0x52a766(0x1ce)](_0x2b16bb),'deleteSkillEntry':_0x31ca73=>configController[_0x52a766(0x17b)+'enClawSk'+_0x52a766(0x257)](_0x31ca73),'setMcpServer':_0x5f087c=>configController[_0x52a766(0x392)+'lawMcpSe'+_0x52a766(0x19b)](_0x5f087c),'deleteMcpServer':_0x578b88=>configController[_0x52a766(0x17b)+'enClawMc'+_0x52a766(0x2fe)](_0x578b88)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x4774eb})||{};Object['assign'](productRuntimeHooks,_0x5cb95f);};_0x320b99(_0x30a030(0x303),async()=>({'name':shellConfig[_0x30a030(0x15e)+_0x30a030(0x298)],'version':app[_0x30a030(0x248)+'on'](),'appId':shellConfig['appId'],'dataDir':shellConfig[_0x30a030(0x3af)]})),_0x320b99(_0x30a030(0x1f9)+_0x30a030(0x3aa),async(_0x455791,_0x420f6b)=>{const _0x3e0f78=_0x30a030,_0x462c96=typeof _0x420f6b==='string'?_0x420f6b:'';if(!_0x462c96)return{'ok':![]};return filesLogger?.[_0x3e0f78(0x1be)]('open\x20ext'+_0x3e0f78(0x13a)+_0x3e0f78(0x2f9)+_0x3e0f78(0x228),{'url':summarizeText(_0x462c96,0xa0)}),await shell[_0x3e0f78(0x304)+_0x3e0f78(0x173)](_0x462c96),{'ok':!![]};});const _0x4774eb=async(_0x4dd337,_0x3c9700)=>{const _0x4d8c93=_0x30a030;return configController[_0x4d8c93(0x2d2)+_0x4d8c93(0x12e)+_0x4d8c93(0x1d0)+_0x4d8c93(0x1ad)](),await configController[_0x4d8c93(0x1cd)+_0x4d8c93(0x396)](_0x4dd337,_0x3c9700),{'ok':!![]};};_0x4bef26(),_0x320b99(_0x30a030(0x40c)+_0x30a030(0x3a5)+'p',async(_0x571bde,_0x2cef7e)=>importMarketSkillZip({'payload':_0x2cef7e,'importSkillZip':_0x3ecee4=>importSkillZip({..._0x3ecee4,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow[_0x30a030(0x2f6)+_0x30a030(0x2df)](_0x571bde[_0x30a030(0x19a)])||mainWindow,'configController':configController}),'configController':configController})),_0x320b99(_0x30a030(0x3cd)+_0x30a030(0x1e2),(_0x1f1fe1,_0x227873)=>updateManagedSkillConfig({'payload':_0x227873,'configController':configController})),_0x320b99(_0x30a030(0x3b1)+_0x30a030(0x350),(_0x4f08d9,_0x45c168)=>deleteMarketSkillRegistryEntry({'payload':_0x45c168,'deleteManagedSkill':_0x4466ee=>deleteManagedSkill({..._0x4466ee,'gateway':_0x3f9542(),'configController':configController}),'configController':configController}));const _0x5e10f6=ensureGeneratedFilesStore();_0x320b99('app:gene'+_0x30a030(0x410)+_0x30a030(0x3cc),async()=>_0x5e10f6[_0x30a030(0x110)]()),_0x320b99('app:gene'+_0x30a030(0x410)+_0x30a030(0x3f0)+'rt',async(_0x3b589f,_0x54d1d5={})=>_0x5e10f6[_0x30a030(0x114)](_0x54d1d5)),_0x320b99('app:gene'+_0x30a030(0x410)+_0x30a030(0x2f4),async(_0x76c7a,_0x5c3369)=>_0x5e10f6[_0x30a030(0x129)](String(_0x5c3369||''))),_0x320b99(_0x30a030(0x3e9)+_0x30a030(0x410)+'les:hide'+_0x30a030(0x180)+_0x30a030(0x2d0),async(_0x236623,_0x274ca7)=>_0x5e10f6[_0x30a030(0x3e0)+_0x30a030(0x2ec)](String(_0x274ca7||''))),_0x320b99('app:gene'+_0x30a030(0x410)+_0x30a030(0x201)+'te',async(_0x5395e7,_0x492f85)=>_0x5e10f6['deleteFi'+'le'](String(_0x492f85||''))),_0x320b99(_0x30a030(0x3e9)+_0x30a030(0x410)+_0x30a030(0x201)+_0x30a030(0x39e)+'e',async(_0x66de6d,_0x2e123b=[])=>_0x5e10f6[_0x30a030(0x27a)+_0x30a030(0x377)](_0x2e123b)),_0x320b99(_0x30a030(0x3e9)+'rated-fi'+_0x30a030(0x12c)+'al',async(_0x35c43c,_0xe27f56)=>revealPathInFolder(_0xe27f56)),_0x320b99(_0x30a030(0x341)+_0x30a030(0x267),async()=>_0x5e10f6[_0x30a030(0x110)]()),_0x320b99(_0x30a030(0x341)+'s:upsert',async(_0xa1d06d,_0x55c3de={})=>_0x5e10f6['upsert'](_0x55c3de)),_0x320b99(_0x30a030(0x341)+_0x30a030(0x194),async(_0x2401cf,_0xdf4176={})=>_0x5e10f6[_0x30a030(0x129)](String(_0xdf4176['id']||_0xdf4176||''))),_0x320b99(_0x30a030(0x341)+'s:delete',async(_0x2c8e6c,_0x26bb22={})=>_0x5e10f6['deleteFi'+'le'](String(_0x26bb22['id']||_0x26bb22||''))),_0x320b99('artifact'+'s:delete'+'d-state',async(_0x51e69b,_0x389f6c={})=>_0x5e10f6['deletedS'+_0x30a030(0x377)](_0x389f6c['paths']||_0x389f6c)),_0x320b99(_0x30a030(0x341)+_0x30a030(0x3a0),async(_0x48fd55,_0x516479={})=>{const _0xcad3f7=_0x30a030,_0x35cd41=typeof _0x516479===_0xcad3f7(0x182)?_0x516479:_0x516479[_0xcad3f7(0x3a7)]||_0x516479[_0xcad3f7(0x30c)];return revealPathInFolder(_0x35cd41);});const _0x4f7099=createPreferencesStore({'stateDir':configController[_0x30a030(0x39a)+_0x30a030(0x3b9)](),'storeFile':_0x30a030(0x238)+'preferen'+_0x30a030(0x22b)});_0x320b99('app:tray'+_0x30a030(0x16b)+'se',async()=>_0x4f7099[_0x30a030(0x2b0)](_0x30a030(0x231)+_0x30a030(0x402)+'se',![])),_0x320b99(_0x30a030(0x3ca)+_0x30a030(0x32b)+'se',async(_0x1fc12c,_0x4ebc2d)=>_0x4f7099[_0x30a030(0x1e3)](_0x30a030(0x231)+'rayOnClo'+'se',_0x4ebc2d===!![])),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0x320b99,'sep':sep,'stateDir':configController[_0x30a030(0x39a)+_0x30a030(0x3b9)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0x320b99,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0x320b99,'modelHandlers':{'saveCustomModel':_0x4926a4=>_0x3f9542()['models'][_0x30a030(0x2ba)+'omModel'](_0x4926a4),'deleteCustomModel':_0x35f537=>_0x3f9542()['models'][_0x30a030(0x35e)+_0x30a030(0x3e8)+'l'](_0x35f537)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x5810f9)=>configController['updateOp'+_0x30a030(0x3a9)+_0x30a030(0x27b)](..._0x5810f9),'setPluginConfig':_0xfd209b=>configController[_0x30a030(0x392)+'lawPlugi'+_0x30a030(0x21c)](_0xfd209b),'setChannelConfig':_0x45e6a0=>configController[_0x30a030(0x392)+_0x30a030(0x2e2)+_0x30a030(0x3fb)](_0x45e6a0),'deleteChannelConfig':_0x4b8ba1=>configController[_0x30a030(0x17b)+_0x30a030(0x18a)+_0x30a030(0x294)+'fig'](_0x4b8ba1),'setSkillEntry':_0x144571=>configController['setOpenC'+_0x30a030(0x3bd)+'Entry'](_0x144571),'deleteSkillEntry':_0x64feef=>configController[_0x30a030(0x17b)+_0x30a030(0x37c)+_0x30a030(0x257)](_0x64feef),'setMcpServer':_0x2b58dd=>configController[_0x30a030(0x392)+_0x30a030(0x195)+_0x30a030(0x19b)](_0x2b58dd),'deleteMcpServer':_0x5efe1a=>configController['deleteOp'+_0x30a030(0x1ae)+'pServer'](_0x5efe1a)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0x320b99(_0x30a030(0x19d)+_0x30a030(0x359)+_0x30a030(0x133),async()=>connectorController[_0x30a030(0x349)+_0x30a030(0x294)+'figs']()),_0x320b99('config:i'+'m-channe'+_0x30a030(0x3d8)+'e',async(_0x1d7a07,_0x267600={})=>connectorController[_0x30a030(0x136)+_0x30a030(0x1ed)+_0x30a030(0x208)](_0x267600)),_0x320b99(_0x30a030(0x19d)+_0x30a030(0x359)+'ls:set-e'+_0x30a030(0x3b5),async(_0x2ae5f5,_0x257c84={})=>connectorController[_0x30a030(0x2f8)+'nnelEnab'+'led'](_0x257c84)),_0x320b99('config:c'+_0x30a030(0x24a)+':save',async(_0x3b5043,_0x2ab2f1={})=>{const _0x26e58a=_0x30a030,_0x3f9d51=String(_0x2ab2f1[_0x26e58a(0x2c1)+'d']||_0x2ab2f1[_0x26e58a(0x2a7)]?.['channelI'+'d']||_0x2ab2f1[_0x26e58a(0x2a7)]?.['id']||'');if(!_0x3f9d51)throw new Error(_0x26e58a(0x2c1)+_0x26e58a(0x13f)+'uired');const _0x381911=_0x2ab2f1[_0x26e58a(0x2a7)]||_0x2ab2f1,_0x5dd83e={'feishu':connectorController[_0x26e58a(0x237)+_0x26e58a(0x2aa)+_0x26e58a(0x307)],'qqbot':connectorController[_0x26e58a(0x23c)+'tChannel'+_0x26e58a(0x2e3)],'wecom':connectorController[_0x26e58a(0x3b0)+_0x26e58a(0x176)+_0x26e58a(0x2e3)],'qq_mail':connectorController['saveQqMa'+'ilConnec'+'torConfi'+'g'],'netease_mail':connectorController[_0x26e58a(0x26d)+_0x26e58a(0x2a1)+'onnector'+_0x26e58a(0x2e3)],'tencent_exmail':connectorController[_0x26e58a(0x321)+_0x26e58a(0x258)+_0x26e58a(0x254)+_0x26e58a(0x145)],'feishu_doc':connectorController['saveFeis'+_0x26e58a(0x338)+_0x26e58a(0x387)+_0x26e58a(0x27b)],'tencent_docs':connectorController['saveTenc'+_0x26e58a(0x1c3)+_0x26e58a(0x24a)+_0x26e58a(0x2e3)],'kdocs':connectorController[_0x26e58a(0x269)+'sConnect'+_0x26e58a(0x145)],'dingtalk_doc':connectorController['saveDing'+_0x26e58a(0x3d4)+_0x26e58a(0x24a)+_0x26e58a(0x2e3)]},_0x52caa5=_0x5dd83e[_0x3f9d51];if(!_0x52caa5)throw new Error(_0x26e58a(0x1b7)+_0x26e58a(0x34b)+_0x26e58a(0x150)+_0x3f9d51);return _0x52caa5(_0x381911);}),_0x320b99(_0x30a030(0x15a)+_0x30a030(0x24a)+':save-fe'+'ishu-cha'+_0x30a030(0x2c7),async(_0x283d70,_0x301cf5={})=>connectorController['saveFeis'+_0x30a030(0x2aa)+_0x30a030(0x307)](_0x301cf5)),_0x320b99('config:c'+_0x30a030(0x24a)+':save-qq'+_0x30a030(0x165)+'nel',async(_0x193143,_0x5de695={})=>connectorController[_0x30a030(0x23c)+_0x30a030(0x35a)+_0x30a030(0x2e3)](_0x5de695)),_0x320b99('config:c'+'onnector'+_0x30a030(0x19c)+'com-chan'+_0x30a030(0x10c),async(_0x13be91,_0x57dec6={})=>connectorController['saveWeco'+_0x30a030(0x176)+'Config'](_0x57dec6)),_0x320b99(_0x30a030(0x15a)+'onnector'+_0x30a030(0x388)+_0x30a030(0x174),async(_0x56dced,_0x107de6={})=>connectorController[_0x30a030(0x255)+_0x30a030(0x22e)+_0x30a030(0x296)+'g'](_0x107de6)),_0x320b99(_0x30a030(0x15a)+_0x30a030(0x24a)+_0x30a030(0x11b)+_0x30a030(0x2b3)+'il',async(_0x12f702,_0x15407c={})=>connectorController[_0x30a030(0x26d)+_0x30a030(0x2a1)+_0x30a030(0x24a)+'Config'](_0x15407c)),_0x320b99(_0x30a030(0x15a)+_0x30a030(0x24a)+':save-te'+'ncent-ex'+_0x30a030(0x382),async(_0x2f43dd,_0xb2e68b={})=>connectorController[_0x30a030(0x321)+'entExmai'+'lConnect'+_0x30a030(0x145)](_0xb2e68b)),_0x320b99(_0x30a030(0x15a)+_0x30a030(0x24a)+_0x30a030(0x3ee)+_0x30a030(0x411),async(_0x1f6094,_0x18df55={})=>connectorController['saveFeis'+_0x30a030(0x338)+'nectorCo'+_0x30a030(0x27b)](_0x18df55)),_0x320b99('config:c'+_0x30a030(0x24a)+_0x30a030(0x1b2)+_0x30a030(0x222)+'cs',async(_0x40d8f2,_0x19b1b6={})=>connectorController[_0x30a030(0x321)+'entDocsC'+'onnector'+_0x30a030(0x2e3)](_0x19b1b6)),_0x320b99(_0x30a030(0x15a)+_0x30a030(0x24a)+':save-kd'+_0x30a030(0x14b),async(_0x943a5b,_0x164f52={})=>connectorController[_0x30a030(0x269)+'sConnect'+_0x30a030(0x145)](_0x164f52)),_0x320b99(_0x30a030(0x15a)+_0x30a030(0x24a)+_0x30a030(0x179)+_0x30a030(0x353)+'oc',async(_0x3c4d3c,_0x35ecb0={})=>connectorController['saveDing'+'talkDocC'+'onnector'+_0x30a030(0x2e3)](_0x35ecb0)),_0x320b99(_0x30a030(0x15a)+'onnector'+_0x30a030(0x31b)+_0x30a030(0x2eb),async(_0x385d62,_0x309997={})=>{const _0x427065=_0x30a030,_0x58d305=String(_0x309997['channelI'+'d']||_0x309997[_0x427065(0x2af)]||'');if(_0x58d305==='kdocs')return connectorController[_0x427065(0x2e7)+_0x427065(0x3ab)+_0x427065(0x1e9)+_0x427065(0x2d0)]();if(_0x58d305==='feishu_d'+'oc')return connectorController[_0x427065(0x300)+_0x427065(0x14f)+'iConnect'+_0x427065(0x316)]();if(_0x58d305===_0x427065(0x2ae))return connectorController['startFei'+'shuRegis'+'trationS'+_0x427065(0x2e9)](_0x309997);if(_0x58d305==='openclaw'+_0x427065(0x362)||_0x58d305===_0x427065(0x404))return connectorController[_0x427065(0x2c2)+_0x427065(0x1f7)+'elSessio'+'n']({'gatewayPort':_0x3f9542()['gatewayP'+_0x427065(0x286)](),'gatewayToken':_0x3f9542()[_0x427065(0x3ed)+'oken']()});throw new Error('Unsuppor'+'ted\x20conn'+'ector\x20se'+'ssion:\x20'+(_0x58d305||'unknown'));}),_0x320b99(_0x30a030(0x15a)+_0x30a030(0x24a)+_0x30a030(0x31b)+_0x30a030(0xf8),async(_0xf21ff9,_0x1d0b5d={})=>{const _0x3ae85b=_0x30a030,_0x4273cd=String(_0x1d0b5d[_0x3ae85b(0x2c1)+'d']||_0x1d0b5d[_0x3ae85b(0x2af)]||'');if(_0x4273cd==='kdocs')return connectorController[_0x3ae85b(0x204)+_0x3ae85b(0x2d5)+_0x3ae85b(0x29b)](_0x1d0b5d);if(_0x4273cd===_0x3ae85b(0x122)+'oc')return connectorController[_0x3ae85b(0xfa)+_0x3ae85b(0x219)+_0x3ae85b(0x20f)+_0x3ae85b(0x115)](_0x1d0b5d);if(_0x4273cd===_0x3ae85b(0x2ae))return connectorController[_0x3ae85b(0xfa)+_0x3ae85b(0x314)+_0x3ae85b(0x2c6)+_0x3ae85b(0x111)](_0x1d0b5d);throw new Error(_0x3ae85b(0x1b7)+_0x3ae85b(0x34b)+'ector\x20se'+_0x3ae85b(0x253)+(_0x4273cd||'unknown'));}),_0x320b99(_0x30a030(0x15a)+'onnector'+'-session'+_0x30a030(0x1d5),async(_0x29ceca,_0x14c0d8={})=>{const _0x27fc30=_0x30a030,_0x3ae47f=String(_0x14c0d8[_0x27fc30(0x2c1)+'d']||_0x14c0d8['type']||'');if(_0x3ae47f===_0x27fc30(0x21a))return connectorController[_0x27fc30(0x3de)+_0x27fc30(0x2e1)+_0x27fc30(0x1ee)+'sion'](_0x14c0d8);if(_0x3ae47f===_0x27fc30(0x122)+'oc')return connectorController[_0x27fc30(0x2f1)+_0x27fc30(0x34a)+'liConnec'+_0x27fc30(0x1c1)](_0x14c0d8);if(_0x3ae47f==='feishu')return connectorController['cancelFe'+_0x27fc30(0x259)+_0x27fc30(0x1d9)+'Session'](_0x14c0d8);if(_0x3ae47f===_0x27fc30(0x320)+_0x27fc30(0x362)||_0x3ae47f===_0x27fc30(0x404))return connectorController[_0x27fc30(0x18c)+_0x27fc30(0x241)+'nelSessi'+'on']();return{'ok':!![]};}),_0x320b99(_0x30a030(0x15a)+_0x30a030(0x24a)+_0x30a030(0x31b)+_0x30a030(0x26a)+'e',async(_0x5c9045,_0xd6c56e={})=>{const _0x37f3fd=_0x30a030,_0x4bb235=String(_0xd6c56e[_0x37f3fd(0x2c1)+'d']||_0xd6c56e[_0x37f3fd(0x2af)]||'');if(_0x4bb235==='feishu_d'+'oc')return connectorController[_0x37f3fd(0x18b)+_0x37f3fd(0x243)+'cCliConn'+_0x37f3fd(0x358)+'on'](_0xd6c56e);throw new Error(_0x37f3fd(0x1b7)+_0x37f3fd(0x34b)+'ector\x20se'+_0x37f3fd(0x253)+(_0x4bb235||_0x37f3fd(0x301)));}),_0x320b99(_0x30a030(0x24e)+'ead',()=>connectorController[_0x30a030(0x100)+'igSnapsh'+'ot']());const _0x577f5e=_0x251150=>{const _0x3079c9=_0x30a030,_0x35b003=_0x251150[_0x3079c9(0x36f)]&&typeof _0x251150[_0x3079c9(0x36f)]===_0x3079c9(0x15d)?_0x251150[_0x3079c9(0x36f)]:{};return Array[_0x3079c9(0x11a)](_0x35b003[_0x3079c9(0x110)])?_0x35b003[_0x3079c9(0x110)]:[];},_0x19f894=_0x4a9227=>{const _0x49f621=_0x30a030,_0x53a0b9=typeof _0x4a9227==='string'?_0x4a9227[_0x49f621(0x17e)]():'',_0x3f6eee=_0x53a0b9[_0x49f621(0x413)](/^agent:([^:]+):/);return _0x3f6eee?.[0x1]||'';},_0x450b73=(_0x33568b={},_0x18a6c4=[])=>{const _0x4f509e=_0x30a030,_0x44a1fb=Array['isArray'](_0x33568b['agents'])?_0x33568b[_0x4f509e(0x36f)]:Array[_0x4f509e(0x11a)](_0x33568b['list'])?_0x33568b[_0x4f509e(0x110)]:[],_0x5b87be=Array[_0x4f509e(0x11a)](_0x18a6c4)?_0x18a6c4:[];return _0x44a1fb[_0x4f509e(0x31c)](_0x219ceb=>{const _0x219af5=_0x4f509e,_0x4a0c48=String(_0x219ceb?.['id']||_0x219ceb?.[_0x219af5(0x3b8)]||'')[_0x219af5(0x17e)]();return{'agent':_0x219ceb,'sessions':_0x4a0c48?_0x5b87be[_0x219af5(0x147)](_0x5bc925=>{const _0xa574de=_0x219af5,_0x214b7d=String(_0x5bc925?.[_0xa574de(0x3b8)]||_0x5bc925?.[_0xa574de(0x119)]||_0x5bc925?.['agent']?.['id']||_0x19f894(_0x5bc925?.[_0xa574de(0x160)])||'')['trim']();return _0x214b7d?_0x214b7d===_0x4a0c48:_0x4a0c48===_0xa574de(0x3e2);}):[]};});};_0x320b99(_0x30a030(0x23e)+_0x30a030(0x3f9)+_0x30a030(0x377),async()=>updateController?.[_0x30a030(0x37a)]()),_0x320b99(_0x30a030(0x23e)+_0x30a030(0x26b),async()=>updateController?.['checkFor'+_0x30a030(0x12b)]()),_0x320b99(_0x30a030(0x23e)+_0x30a030(0x205)+'oad',async()=>updateController?.[_0x30a030(0x171)+_0x30a030(0x3b6)]()),_0x320b99(_0x30a030(0x23e)+_0x30a030(0x251)+'and-inst'+_0x30a030(0x123),async()=>updateController?.['quitAndI'+'nstall']()),_0x320b99(_0x30a030(0x186)+_0x30a030(0x24b),async(_0x28f43e,_0x34936a={})=>{const _0x1f3736=_0x30a030,_0x326a45=await dialog['showOpen'+_0x1f3736(0x275)](BrowserWindow[_0x1f3736(0x2f6)+'ontents'](_0x28f43e[_0x1f3736(0x19a)])??mainWindow,{'properties':[_0x1f3736(0x33a),..._0x34936a?.['limit']!==0x1?['multiSel'+_0x1f3736(0x170)]:[]],'filters':_0x34936a?.[_0x1f3736(0x360)+'meFilter'+'s']?[{'name':'Custom','extensions':_0x34936a[_0x1f3736(0x360)+'meFilter'+'s']}]:undefined});return _0x326a45[_0x1f3736(0x379)+'s'][_0x1f3736(0x31c)](_0x302cd5=>({'path':_0x302cd5,'name':_0x302cd5['split'](/[\\/]/)[_0x1f3736(0x2a6)]()||_0x302cd5}));}),_0x320b99(_0x30a030(0x186)+_0x30a030(0x3bb)+_0x30a030(0x302),async(_0x580be9,_0x2a6468={})=>{const _0xc1d572=_0x30a030,_0x2fa69a=String(_0x2a6468['sourcePa'+'th']||'');if(!_0x2fa69a)return{'success':![],'error':_0xc1d572(0x3fe)+_0xc1d572(0x22c)+_0xc1d572(0x31d)};const _0x12bc25=await dialog[_0xc1d572(0xfe)+_0xc1d572(0x275)](mainWindow,{'defaultPath':_0x2a6468[_0xc1d572(0xfc)+_0xc1d572(0x394)]||_0x2fa69a[_0xc1d572(0x2e4)](/[\\/]/)[_0xc1d572(0x2a6)]()});if(_0x12bc25[_0xc1d572(0x22d)]||!_0x12bc25['filePath'])return{'success':![],'canceled':!![]};const {copyFile:_0x3277fe}=await import(_0xc1d572(0x13b)+_0xc1d572(0x277));return await _0x3277fe(_0x2fa69a,_0x12bc25[_0xc1d572(0x379)]),{'success':!![],'filePath':_0x12bc25[_0xc1d572(0x379)]};}),_0x320b99(_0x30a030(0x1f2)+_0x30a030(0xfd)+_0x30a030(0x342),async(_0x2d6f55,_0x4d38a9)=>{const _0x2f8705=_0x30a030;return clipboard[_0x2f8705(0x1a9)+'t'](String(_0x4d38a9??'')),{'ok':!![]};}),_0x320b99(_0x30a030(0x16c)+_0x30a030(0x104)+'rt',async()=>{const _0x5525d5=_0x30a030;return app[_0x5525d5(0x2d8)](),app[_0x5525d5(0x3d5)](),{'ok':!![]};}),_0x320b99(_0x30a030(0x3ba)+_0x30a030(0x139)+_0x30a030(0x256),_0x146a16=>Boolean(BrowserWindow['fromWebC'+'ontents'](_0x146a16[_0x30a030(0x19a)])?.[_0x30a030(0x1a0)+_0x30a030(0x256)]())),_0x320b99(_0x30a030(0x203)+_0x30a030(0x2a3),async(_0x53389a,_0x333826)=>{const _0x50e1a0=_0x30a030;return app[_0x50e1a0(0x164)+_0x50e1a0(0x2d9)+_0x50e1a0(0x3b2)]({'openAtLogin':_0x333826===!![]}),{'ok':!![],'enabled':_0x333826===!![]};}),_0x320b99('app:star'+_0x30a030(0x121),async()=>app[_0x30a030(0x291)+'ItemSett'+'ings']()[_0x30a030(0x140)+_0x30a030(0x125)]),_0x320b99(_0x30a030(0x186)+_0x30a030(0x1b6)+_0x30a030(0x221),async _0x5b6a86=>{const _0x302c94=_0x30a030,_0x1e448c=await dialog[_0x302c94(0x184)+_0x302c94(0x275)](BrowserWindow[_0x302c94(0x2f6)+_0x302c94(0x2df)](_0x5b6a86[_0x302c94(0x19a)])??mainWindow,{'properties':[_0x302c94(0x14d)+_0x302c94(0x380)]});return _0x1e448c[_0x302c94(0x379)+'s'][0x0]||'';}),_0x320b99(_0x30a030(0x16c)+'em:open-'+_0x30a030(0x221),async(_0x390748,_0x217a55)=>{const _0x158d20=_0x30a030,_0x5dbb0e=await shell[_0x158d20(0x1b0)](String(_0x217a55||''));return _0x5dbb0e||'';}),_0x320b99(_0x30a030(0x320)+_0x30a030(0x309)+_0x30a030(0x21e),async()=>_0x3f9542()[_0x30a030(0x3ed)+_0x30a030(0x191)]()),_0x320b99('openclaw'+_0x30a030(0x309)+_0x30a030(0x185),async()=>_0x3f9542()[_0x30a030(0x26e)+'ort']()),_0x320b99('openclaw'+_0x30a030(0x393)+'e',async(_0x2cef8e,_0x46b009=[])=>{const _0x2193bf=_0x30a030,_0xfa750d=await runClawOnce(shellConfig['projectR'+_0x2193bf(0x126)],Array[_0x2193bf(0x11a)](_0x46b009)?_0x46b009:[]);return{'ok':_0xfa750d[_0x2193bf(0x3a2)]===0x0,..._0xfa750d};}),_0x320b99('sessions'+_0x30a030(0x2ab),async(_0x2c4cd6,_0x4d2840={})=>_0x3f9542()[_0x30a030(0x2f2)][_0x30a030(0x2d6)]({..._0x4d2840,'parentSessionKey':_0x4d2840[_0x30a030(0x3cf)+_0x30a030(0x289)]||_0x4d2840['sessionK'+'ey']}));const _0x170d63=configController['resolveS'+_0x30a030(0x3b9)]();sessionSqliteStore=ensureSessionSqliteStore();const _0x32f902=createAgentSessionsMapStore({'stateDir':_0x170d63});_0x320b99(_0x30a030(0x2f2)+_0x30a030(0x153)+_0x30a030(0x1f4),async(_0x225c4a,_0x2d891b={})=>_0x32f902[_0x30a030(0x2b0)](_0x2d891b)),_0x320b99(_0x30a030(0x2f2)+_0x30a030(0x153)+_0x30a030(0x3ec)+'t',async(_0x23f80f,_0x648731={})=>_0x32f902[_0x30a030(0x114)](_0x648731)),_0x320b99(_0x30a030(0x2f2)+_0x30a030(0x153)+_0x30a030(0x384),async(_0x31c1ba,_0xded4dd={})=>{const _0x4744c2=_0x30a030,_0x422adf=String(_0xded4dd[_0x4744c2(0x390)+'ey']||'')[_0x4744c2(0x17e)]();if(!_0x422adf)return null;return await sessionSqliteStore['readSess'+'ionEntry'](_0x422adf);}),_0x320b99('agents:c'+_0x30a030(0x405),async(_0x2e7421,_0x43c9dd={})=>{const _0x55d3a1=_0x30a030,_0x1f4939=await readMutableConfig(),_0x45ee12=_0x1f4939[_0x55d3a1(0x36f)]&&typeof _0x1f4939['agents']==='object'?_0x1f4939[_0x55d3a1(0x36f)]:{},_0x1556f3=_0x577f5e(_0x1f4939),_0x3c6516=String(_0x43c9dd['id']||_0x43c9dd[_0x55d3a1(0x2ac)]||_0x55d3a1(0x3f1)+Date[_0x55d3a1(0x3dc)]())[_0x55d3a1(0x17e)]()[_0x55d3a1(0x37e)](/\s+/g,'-'),_0x3eaa0e={'id':_0x3c6516,'name':String(_0x43c9dd[_0x55d3a1(0x2ac)]||_0x3c6516),..._0x43c9dd[_0x55d3a1(0x32c)+'e']?{'workspace':String(_0x43c9dd[_0x55d3a1(0x32c)+'e'])}:{},..._0x43c9dd[_0x55d3a1(0x332)]?{'model':_0x43c9dd[_0x55d3a1(0x332)]}:{},..._0x43c9dd[_0x55d3a1(0x2ce)]?{'emoji':_0x43c9dd[_0x55d3a1(0x2ce)]}:{},..._0x43c9dd['avatar']?{'avatar':_0x43c9dd[_0x55d3a1(0x35c)]}:{},...Array[_0x55d3a1(0x11a)](_0x43c9dd[_0x55d3a1(0x2e8)])?{'skills':_0x43c9dd[_0x55d3a1(0x2e8)]}:{}};if(_0x1556f3[_0x55d3a1(0x37d)](_0x4ec6d6=>_0x4ec6d6?.['id']===_0x3c6516))throw new Error(_0x55d3a1(0x3fc)+_0x55d3a1(0x124)+_0x55d3a1(0x1c5));return _0x45ee12[_0x55d3a1(0x110)]=[..._0x1556f3,_0x3eaa0e],_0x1f4939[_0x55d3a1(0x36f)]=_0x45ee12,await _0x4774eb(_0x1f4939,_0x55d3a1(0x3f6)+_0x55d3a1(0x22a)),{'ok':!![],'agent':_0x3eaa0e};}),_0x320b99(_0x30a030(0x11d)+_0x30a030(0x1e2),async(_0x1b617f,_0x3f3449={})=>{const _0xe1729b=_0x30a030,_0x3199d5=String(_0x3f3449['id']||_0x3f3449['agentId']||'')[_0xe1729b(0x17e)]();if(!_0x3199d5)throw new Error(_0xe1729b(0x18d)+_0xe1729b(0x3d7)+_0xe1729b(0x1a2));const _0x375ce9=await readMutableConfig(),_0x55afce=_0x375ce9[_0xe1729b(0x36f)]&&typeof _0x375ce9[_0xe1729b(0x36f)]===_0xe1729b(0x15d)?_0x375ce9[_0xe1729b(0x36f)]:{},_0x4ed1f1=_0x577f5e(_0x375ce9),_0x199bfc=_0x4ed1f1['map'](_0xe733d6=>_0xe733d6?.['id']===_0x3199d5?{..._0xe733d6,..._0x3f3449,'id':_0x3199d5}:_0xe733d6);return _0x55afce[_0xe1729b(0x110)]=_0x199bfc,_0x375ce9[_0xe1729b(0x36f)]=_0x55afce,await _0x4774eb(_0x375ce9,'agent\x20up'+_0xe1729b(0x34e)),{'ok':!![],'agent':_0x199bfc['find'](_0x707910=>_0x707910?.['id']===_0x3199d5)||null};}),_0x320b99(_0x30a030(0x354)+_0x30a030(0x350),async(_0x34a333,_0x32a6ce={})=>{const _0xc7777d=_0x30a030,_0x4d0d74=String(_0x32a6ce['id']||_0x32a6ce[_0xc7777d(0x3b8)]||'')[_0xc7777d(0x17e)]();if(!_0x4d0d74)throw new Error(_0xc7777d(0x18d)+_0xc7777d(0x3d7)+'ired');const _0x2e30bb=await readMutableConfig(),_0x57809d=_0x2e30bb[_0xc7777d(0x36f)]&&typeof _0x2e30bb['agents']==='object'?_0x2e30bb[_0xc7777d(0x36f)]:{};return _0x57809d['list']=_0x577f5e(_0x2e30bb)[_0xc7777d(0x147)](_0x4713e4=>_0x4713e4?.['id']!==_0x4d0d74),_0x2e30bb[_0xc7777d(0x36f)]=_0x57809d,await _0x4774eb(_0x2e30bb,_0xc7777d(0x27e)+_0xc7777d(0x348)),{'ok':!![],'agentId':_0x4d0d74};}),_0x320b99(_0x30a030(0x334)+'ith-sess'+'ions-lis'+'t',async(_0x490b4e,_0x38e9ba={})=>{const _0x1b9b25=_0x30a030,[_0x26d868,_0x44b396]=await Promise[_0x1b9b25(0x123)]([_0x3f9542()[_0x1b9b25(0x36f)][_0x1b9b25(0x110)](),_0x3f9542()[_0x1b9b25(0x2f2)][_0x1b9b25(0x110)](_0x38e9ba)['catch'](()=>({'sessions':[]}))]),_0x44d03a=Array[_0x1b9b25(0x11a)](_0x44b396[_0x1b9b25(0x2f2)])?_0x44b396[_0x1b9b25(0x2f2)]:[];return{..._0x26d868,'sessions':_0x44d03a,'groups':Array['isArray'](_0x26d868[_0x1b9b25(0x36d)])?_0x26d868[_0x1b9b25(0x36d)]:_0x450b73(_0x26d868,_0x44d03a)};}),terminalManager=createTerminalManager({'cwd':join(configController[_0x30a030(0x39a)+_0x30a030(0x3b9)](),'workspac'+'e'),'emitData':_0x42c343=>broadcast(_0x30a030(0x268)+_0x30a030(0x21d),_0x42c343),'emitExit':_0x5e56e6=>broadcast(_0x30a030(0x268)+_0x30a030(0x210),_0x5e56e6)}),_0x320b99(_0x30a030(0x268)+_0x30a030(0x1dd),async(_0x35f000,_0x2bbe20={})=>terminalManager['create'](_0x2bbe20)),_0x320b99(_0x30a030(0x268)+_0x30a030(0x106),async(_0x3402d2,_0x451d92={})=>terminalManager[_0x30a030(0x395)](_0x451d92)),_0x320b99(_0x30a030(0x268)+_0x30a030(0x295),async(_0x14e0fc,_0x7d2296={})=>terminalManager[_0x30a030(0x1b5)](_0x7d2296)),_0x320b99('terminal'+_0x30a030(0x15b),async(_0x49b369,_0x2daf56={})=>terminalManager[_0x30a030(0x265)](_0x2daf56)),_0x320b99(_0x30a030(0x1fc)+'list',async()=>{const _0x4da8d3=_0x30a030,_0x353034=gatewayController?.[_0x4da8d3(0x36a)+_0x4da8d3(0x398)]?.()||{};return _0x353034[_0x4da8d3(0x239)]||[];}),_0x320b99('plugins:'+_0x30a030(0x1e4)+'ig',async(_0x20956b,_0x48f673={})=>{const _0x334576=_0x30a030,_0x5bffb2=String(_0x48f673[_0x334576(0x400)]||_0x48f673['id']||''),_0x18fe1b=await readMutableConfig(),_0x268e2d=_0x18fe1b[_0x334576(0x239)]?.[_0x334576(0x3e5)]||{};return _0x5bffb2?_0x268e2d[_0x5bffb2]||null:_0x268e2d;}),_0x320b99('plugins:'+_0x30a030(0x389)+_0x30a030(0x208),async(_0x2d3cda,_0x386f08={})=>{const _0x13109b=_0x30a030,_0x37fa6a=String(_0x386f08[_0x13109b(0x400)]||_0x386f08['id']||'');if(!_0x37fa6a)throw new Error(_0x13109b(0x400)+'\x20is\x20requ'+'ired');const _0x5707e2=await readMutableConfig(),_0x3fa1c9=_0x5707e2['plugins']&&typeof _0x5707e2[_0x13109b(0x239)]===_0x13109b(0x15d)?_0x5707e2['plugins']:{},_0x26baa5=_0x3fa1c9[_0x13109b(0x3e5)]&&typeof _0x3fa1c9[_0x13109b(0x3e5)]===_0x13109b(0x15d)?_0x3fa1c9[_0x13109b(0x3e5)]:{};return _0x26baa5[_0x37fa6a]={..._0x26baa5[_0x37fa6a]||{},..._0x386f08[_0x13109b(0x3c4)]||_0x386f08[_0x13109b(0x40d)]||{}},_0x3fa1c9[_0x13109b(0x3e5)]=_0x26baa5,_0x5707e2[_0x13109b(0x239)]=_0x3fa1c9,_0x4774eb(_0x5707e2,'plugin\x20c'+_0x13109b(0x40f)+_0x13109b(0x34e));}),_0x320b99(_0x30a030(0x1fc)+_0x30a030(0x2a0),async(_0x5e0bec,_0x2a0989={})=>{const _0x4a3d6d=_0x30a030,_0x220738=String(_0x2a0989[_0x4a3d6d(0x400)]||_0x2a0989['id']||'');if(!_0x220738)throw new Error('pluginId'+_0x4a3d6d(0x3d7)+_0x4a3d6d(0x1a2));const _0x27b13e=await readMutableConfig(),_0xd718ff=_0x27b13e[_0x4a3d6d(0x239)]&&typeof _0x27b13e[_0x4a3d6d(0x239)]==='object'?_0x27b13e[_0x4a3d6d(0x239)]:{},_0x30ed06=_0xd718ff[_0x4a3d6d(0x3e5)]&&typeof _0xd718ff[_0x4a3d6d(0x3e5)]===_0x4a3d6d(0x15d)?_0xd718ff[_0x4a3d6d(0x3e5)]:{};return _0x30ed06[_0x220738]={..._0x30ed06[_0x220738]||{},'enabled':!![]},_0xd718ff['entries']=_0x30ed06,_0x27b13e[_0x4a3d6d(0x239)]=_0xd718ff,_0x4774eb(_0x27b13e,_0x4a3d6d(0x3f2)+_0x4a3d6d(0x3b5));}),_0x320b99('plugins:'+'disable',async(_0x96eb26,_0x33c354={})=>{const _0x2bcc5a=_0x30a030,_0x510ea2=String(_0x33c354[_0x2bcc5a(0x400)]||_0x33c354['id']||'');if(!_0x510ea2)throw new Error(_0x2bcc5a(0x400)+_0x2bcc5a(0x3d7)+_0x2bcc5a(0x1a2));const _0x271b62=await readMutableConfig(),_0x5d626a=_0x271b62[_0x2bcc5a(0x239)]&&typeof _0x271b62[_0x2bcc5a(0x239)]===_0x2bcc5a(0x15d)?_0x271b62[_0x2bcc5a(0x239)]:{},_0x27ebac=_0x5d626a[_0x2bcc5a(0x3e5)]&&typeof _0x5d626a[_0x2bcc5a(0x3e5)]===_0x2bcc5a(0x15d)?_0x5d626a[_0x2bcc5a(0x3e5)]:{};return _0x27ebac[_0x510ea2]={..._0x27ebac[_0x510ea2]||{},'enabled':![]},_0x5d626a[_0x2bcc5a(0x3e5)]=_0x27ebac,_0x271b62[_0x2bcc5a(0x239)]=_0x5d626a,_0x4774eb(_0x271b62,_0x2bcc5a(0x181)+_0x2bcc5a(0xf5));}),_0x320b99('plugins:'+_0x30a030(0x28e),async(_0x28bf01,_0x5495bb={})=>({'plugins':await((async()=>{const _0x5914a7=_0x30a030,_0x32bf6a=gatewayController?.['runtimeI'+_0x5914a7(0x398)]?.()||{};if(!_0x5495bb?.['pluginId']&&!_0x5495bb?.['id'])return _0x32bf6a[_0x5914a7(0x239)]||[];const _0x181450=String(_0x5495bb['pluginId']||_0x5495bb['id']||'');return(_0x32bf6a['plugins']||[])[_0x5914a7(0x147)](_0x26e56d=>_0x26e56d[_0x5914a7(0x400)]===_0x181450);})())})),_0x320b99(_0x30a030(0x34d)+_0x30a030(0x1b9),async(_0x4a30d2,_0x593bbf)=>({'ok':!![],'payload':_0x593bbf})),_0x320b99(_0x30a030(0x1f1)+_0x30a030(0x264)+'e',async(_0x10cdc0,_0x11c3ef)=>{const _0x5d4786=_0x30a030;return broadcast(_0x5d4786(0x337)+_0x5d4786(0x218),_0x11c3ef),{'ok':!![]};}),_0x320b99(_0x30a030(0x2a4)+'uest-age'+_0x30a030(0x297),async()=>{const _0x115250=_0x30a030;return broadcast('tabs-age'+'nt-state'+_0x115250(0x22f),{}),{'ok':!![]};}),_0x320b99('tabs:ref'+_0x30a030(0x2bf)+_0x30a030(0x297),async(_0x9d3e58,_0x263f44={})=>{const _0x113524=_0x30a030;return broadcast(_0x113524(0x3d2)+_0x113524(0x297)+'-refresh'+_0x113524(0x22f),_0x263f44),{'ok':!![]};}),_0x320b99(_0x30a030(0x143)+_0x30a030(0x16d),_0x5479e7=>{const _0x35be81=_0x30a030;return BrowserWindow[_0x35be81(0x2f6)+'ontents'](_0x5479e7[_0x35be81(0x19a)])?.['minimize'](),{'ok':!![]};}),_0x320b99(_0x30a030(0x292)+_0x30a030(0x2f7)+_0x30a030(0x2ff),_0x43cb2e=>{const _0x589d60=_0x30a030,_0x4ba300=BrowserWindow[_0x589d60(0x2f6)+_0x589d60(0x2df)](_0x43cb2e['sender']);if(!_0x4ba300)return{'isMaximized':![]};if(_0x4ba300[_0x589d60(0x1a0)+_0x589d60(0x256)]())_0x4ba300[_0x589d60(0x196)+'ze']();else _0x4ba300[_0x589d60(0x1ac)]();return{'isMaximized':_0x4ba300[_0x589d60(0x1a0)+_0x589d60(0x256)]()};}),_0x320b99(_0x30a030(0x3fd)+_0x30a030(0x2be),_0x3fae6f=>{const _0x3a5d1f=_0x30a030;return BrowserWindow[_0x3a5d1f(0x2f6)+'ontents'](_0x3fae6f['sender'])?.['close'](),{'ok':!![]};}),_0x320b99(_0x30a030(0x20e)+_0x30a030(0x17a)+_0x30a030(0x10b),()=>openDevToolsForActiveContext()),_0x320b99(_0x30a030(0x320)+_0x30a030(0x2ea)+_0x30a030(0x178),()=>_0x3f9542()[_0x30a030(0x36a)+_0x30a030(0x398)]()),_0x320b99('openclaw'+_0x30a030(0x309)+_0x30a030(0x2e6),async()=>(await ensureGatewayControllerStarted())[_0x30a030(0x317)+'s']()),_0x320b99(_0x30a030(0x320)+_0x30a030(0x309)+_0x30a030(0x1bc),()=>_0x3f9542()[_0x30a030(0x146)](_0x30a030(0x3cb)+_0x30a030(0x1d3))),_0x320b99('openclaw'+_0x30a030(0x335)+_0x30a030(0x2d7)+_0x30a030(0x1f5),async()=>({'loadingLifeCycle':'ready','message':'','updatedAt':new Date()['toISOStr'+_0x30a030(0x2bc)]()})),_0x320b99(_0x30a030(0x320)+_0x30a030(0x309)+'-logs',(_0x2762dc,_0x21efea={})=>_0x3f9542()['getRecen'+_0x30a030(0x1ea)](_0x21efea?.[_0x30a030(0x262)]??0xc8)),_0x320b99('openclaw'+':answer-'+'ask-user'+'-questio'+'n',(_0x1671b8,_0x20586f)=>_0x3f9542()[_0x30a030(0x24d)+_0x30a030(0x2d1)+'stion'](_0x20586f)),_0x320b99(_0x30a030(0x320)+_0x30a030(0x365)+_0x30a030(0x1fe),async()=>{const _0x494b9a=_0x30a030,_0x3f6758=join(resolveRuntimeRoot(shellConfig[_0x494b9a(0x3b3)+_0x494b9a(0x126)]),_0x494b9a(0x327),'wujiecla'+'w');if(!existsSync(_0x3f6758))throw new Error('openclaw'+'\x20CLI\x20wra'+_0x494b9a(0x1a8)+_0x494b9a(0x3b4)+_0x3f6758+('.\x20Run\x20wu'+_0x494b9a(0x200)+_0x494b9a(0x1b1)+'e\x20first.'));const _0x3439fa=join(app[_0x494b9a(0x2fc)]('temp'),_0x494b9a(0x1ec)+_0x494b9a(0x3a6)+_0x494b9a(0x266));await writeFile(_0x3439fa,_0x494b9a(0x33e)+_0x494b9a(0x247)+_0x3f6758[_0x494b9a(0x37e)](/\\/g,'\x5c\x5c')['replace'](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x95bff9=spawn('open',['-a','Terminal',_0x3439fa],{'detached':!![],'stdio':'ignore'});return _0x95bff9['unref'](),{'ok':!![],'cliPath':_0x3f6758};}),_0x320b99(_0x30a030(0x347)+'ist',()=>_0x3f9542()[_0x30a030(0x36f)]['list']()),_0x320b99(_0x30a030(0x29d)+_0x30a030(0x215),(_0x4262d3,_0x8e1c35)=>_0x3f9542()[_0x30a030(0x2e8)]['status'](_0x8e1c35)),_0x320b99('sessions'+_0x30a030(0x1dd),(_0x2c8e96,_0x65cbaa)=>_0x3f9542()[_0x30a030(0x2f2)][_0x30a030(0x2d6)](_0x65cbaa)),_0x320b99(_0x30a030(0x2f2)+_0x30a030(0x310),(_0x22a6ce,_0x297dec)=>_0x3f9542()[_0x30a030(0x2f2)]['list'](_0x297dec)),_0x320b99(_0x30a030(0x2f2)+_0x30a030(0x142),(_0x25d02d,_0x473b62)=>_0x3f9542()[_0x30a030(0x2f2)][_0x30a030(0x3dd)](_0x473b62)),_0x320b99(_0x30a030(0x116)+_0x30a030(0x370),(_0x54a318,_0x3a53be)=>_0x3f9542()[_0x30a030(0x3e3)][_0x30a030(0x364)](_0x3a53be)),_0x320b99(_0x30a030(0x283)+'rt',(_0x23b3c2,_0xf3d0d5)=>_0x3f9542()[_0x30a030(0x3e3)]['abort'](_0xf3d0d5)),_0x320b99(_0x30a030(0x375)+_0x30a030(0x1db),(_0x44d795,_0x2f6a55)=>_0x3f9542()['chat'][_0x30a030(0x23d)](_0x2f6a55)),_0x320b99(_0x30a030(0x39f)+'te',async(_0x25c764,_0x325b27={})=>{const _0x40be62=_0x30a030,_0x18a293=typeof _0x325b27[_0x40be62(0x13d)]===_0x40be62(0x182)?_0x325b27['level']:'info',_0x4d9cf9=typeof _0x325b27[_0x40be62(0x13e)]===_0x40be62(0x182)?_0x325b27[_0x40be62(0x13e)]:_0x40be62(0x3cb)+_0x40be62(0x272),_0x497d81=typeof _0x325b27[_0x40be62(0x391)]===_0x40be62(0x182)&&_0x325b27[_0x40be62(0x391)]['trim']()?'renderer'+':'+_0x325b27[_0x40be62(0x391)]['trim']():_0x40be62(0x3cb),_0x4370c7=_0x325b27[_0x40be62(0x386)]&&typeof _0x325b27[_0x40be62(0x386)]===_0x40be62(0x15d)?{...summarizePayload(_0x325b27[_0x40be62(0x386)]),'context':_0x497d81}:{'context':_0x497d81},_0x14374a=rendererLogger;if(_0x14374a?.[_0x18a293])await _0x14374a[_0x18a293](_0x4d9cf9,_0x4370c7);else await _0x14374a?.[_0x40be62(0x1be)](_0x4d9cf9,_0x4370c7);if(_0x325b27['diagnost'+'ic']===!![]||_0x497d81===_0x40be62(0x3cb)+_0x40be62(0x3c1)+_0x40be62(0x2c5)){const _0x2607b5=_0x325b27[_0x40be62(0x36c)]&&typeof _0x325b27[_0x40be62(0x36c)]===_0x40be62(0x15d)?_0x325b27['record']:_0x325b27[_0x40be62(0x386)]?.['record']&&typeof _0x325b27[_0x40be62(0x386)]['record']===_0x40be62(0x15d)?_0x325b27[_0x40be62(0x386)][_0x40be62(0x36c)]:{'level':_0x18a293,'category':'renderer','event':_0x497d81,'message':_0x4d9cf9,'meta':_0x325b27[_0x40be62(0x386)]};await diagnosticsWriter?.[_0x40be62(0x3f7)+'nt'](_0x2607b5,{'captureIncident':String(_0x2607b5[_0x40be62(0x13d)]||_0x18a293)['toLowerC'+_0x40be62(0x38e)]()===_0x40be62(0x3f8)||_0x325b27['captureI'+_0x40be62(0x345)]===!![]});}return{'ok':!![]};}),_0x320b99(_0x30a030(0x1b8)+_0x30a030(0x286),async(_0xe4f600,_0x29d6ea={})=>{const _0x3de4fa=_0x30a030,_0x3fadbd=typeof _0x29d6ea[_0x3de4fa(0x2e5)+'r']===_0x3de4fa(0x182)&&_0x29d6ea[_0x3de4fa(0x2e5)+'r'][_0x3de4fa(0x17e)]()?_0x29d6ea[_0x3de4fa(0x2e5)+'r']:undefined,_0x278a0b=await exportLogsArchive({'logsDir':configController[_0x3de4fa(0x37b)][_0x3de4fa(0x271)],'targetDir':_0x3fadbd,'appVersion':app['getVersi'+'on']()});return mainLogger?.[_0x3de4fa(0x1be)]('logs\x20exp'+'orted',{'path':toHomePath(_0x278a0b['path'])}),_0x278a0b;}),_0x320b99(_0x30a030(0x1eb)+_0x30a030(0x1d1)+'ory',async()=>{const _0xa4415a=_0x30a030;return await shell['openPath'](configController['paths'][_0xa4415a(0x271)]),mainLogger?.[_0xa4415a(0x1be)]('logs\x20dir'+_0xa4415a(0x31a)+_0xa4415a(0x308),{'logsDir':toHomePath(configController[_0xa4415a(0x37b)][_0xa4415a(0x271)])}),{'ok':!![],'path':configController['paths'][_0xa4415a(0x271)]};}),_0x320b99('logs:lis'+'t',async()=>{const _0x35eaca=_0x30a030,_0x245744=await readdir(configController[_0x35eaca(0x37b)][_0x35eaca(0x271)],{'recursive':!![]})[_0x35eaca(0x34f)](()=>[]);return _0x245744;}),_0x320b99(_0x30a030(0x409)+'d',async(_0x24de7f,_0x53b77f={})=>{const _0x3b9c9b=_0x30a030,_0x3543ca=String(_0x53b77f[_0x3b9c9b(0x3a7)]||'');if(!_0x3543ca)throw new Error(_0x3b9c9b(0x118)+_0x3b9c9b(0x2a9));return readFile(_0x3543ca,_0x3b9c9b(0x3b7));}),_0x320b99(_0x30a030(0x3ac)+'ad',async(_0x3d27d4,_0x4f1033)=>{const _0x53c09c=_0x30a030,_0x511938=Date[_0x53c09c(0x3dc)]();try{const _0x322294=await readFile(_0x4f1033,'utf8');return filesLogger?.['info'](_0x53c09c(0x168)+'d\x20comple'+_0x53c09c(0x228),{'path':toHomePath(_0x4f1033),'bytes':Buffer['byteLeng'+'th'](_0x322294),'durationMs':Date[_0x53c09c(0x3dc)]()-_0x511938}),_0x322294;}catch(_0x3811a6){filesLogger?.['error']('file\x20rea'+_0x53c09c(0x16f),{'path':toHomePath(_0x4f1033),'durationMs':Date[_0x53c09c(0x3dc)]()-_0x511938,'error':summarizeError(_0x3811a6)});throw _0x3811a6;}}),_0x320b99('files:re'+_0x30a030(0x209)+'y',async(_0x4f7d42,_0x4e3cf2)=>{const _0x2ccbd4=_0x30a030,_0x42dc5b=Date['now']();try{const _0x435f29=await readFile(_0x4e3cf2);return filesLogger?.[_0x2ccbd4(0x1be)]('binary\x20f'+_0x2ccbd4(0x30f)+_0x2ccbd4(0x216)+'ed',{'path':toHomePath(_0x4e3cf2),'bytes':_0x435f29[_0x2ccbd4(0x274)+'th'],'durationMs':Date[_0x2ccbd4(0x3dc)]()-_0x42dc5b}),new Uint8Array(_0x435f29);}catch(_0x4ec540){filesLogger?.[_0x2ccbd4(0x3f8)](_0x2ccbd4(0x371)+_0x2ccbd4(0x30f)+'\x20failed',{'path':toHomePath(_0x4e3cf2),'durationMs':Date[_0x2ccbd4(0x3dc)]()-_0x42dc5b,'error':summarizeError(_0x4ec540)});throw _0x4ec540;}}),_0x320b99(_0x30a030(0x246)+'ite',async(_0xd98c34,_0x1eff71={})=>{const _0x233f30=_0x30a030,_0x336aee=Date['now']();return await writeFile(_0x1eff71[_0x233f30(0x3a7)],_0x1eff71[_0x233f30(0x25f)]??'','utf8'),filesLogger?.[_0x233f30(0x1be)](_0x233f30(0x25c)+_0x233f30(0x242)+_0x233f30(0x323),{'path':toHomePath(_0x1eff71[_0x233f30(0x3a7)]),'bytes':Buffer[_0x233f30(0x274)+'th'](String(_0x1eff71[_0x233f30(0x25f)]??'')),'durationMs':Date[_0x233f30(0x3dc)]()-_0x336aee}),{'ok':!![]};}),_0x320b99(_0x30a030(0x246)+'ite-bina'+'ry',async(_0x1d8e78,_0x387259={})=>{const _0x12f35b=_0x30a030,_0x5d3ee3=Date[_0x12f35b(0x3dc)]();await writeFile(_0x387259[_0x12f35b(0x3a7)],Buffer['from'](_0x387259['content']??[]));const _0x471375=await stat(_0x387259[_0x12f35b(0x3a7)])[_0x12f35b(0x34f)](()=>null);return filesLogger?.[_0x12f35b(0x1be)](_0x12f35b(0x371)+_0x12f35b(0x2c3)+_0x12f35b(0x157)+_0x12f35b(0x228),{'path':toHomePath(_0x387259[_0x12f35b(0x3a7)]),'bytes':_0x471375?.[_0x12f35b(0x1f8)]??0x0,'durationMs':Date[_0x12f35b(0x3dc)]()-_0x5d3ee3}),{'ok':!![]};}),_0x320b99(_0x30a030(0x156)+_0x30a030(0x2fb)+'e',async(_0x18e367,_0x49deea={})=>{const _0x58d238=_0x30a030,_0x204b5b=await dialog[_0x58d238(0x184)+'Dialog'](BrowserWindow[_0x58d238(0x2f6)+_0x58d238(0x2df)](_0x18e367['sender'])??mainWindow,{'title':typeof _0x49deea[_0x58d238(0x40e)]===_0x58d238(0x182)?_0x49deea['title']:undefined,'properties':[_0x58d238(0x33a),..._0x49deea[_0x58d238(0x313)+_0x58d238(0x170)]?[_0x58d238(0x313)+_0x58d238(0x170)]:[]],'filters':Array['isArray'](_0x49deea['filters'])?_0x49deea[_0x58d238(0x3ae)]:undefined});return filesLogger?.['info'](_0x58d238(0x226)+_0x58d238(0x29c)+_0x58d238(0x348),{'canceled':_0x204b5b[_0x58d238(0x22d)],'count':_0x204b5b[_0x58d238(0x379)+'s'][_0x58d238(0x19e)],'paths':_0x204b5b[_0x58d238(0x379)+'s'][_0x58d238(0x31c)](toHomePath)}),{'canceled':_0x204b5b[_0x58d238(0x22d)],'paths':_0x204b5b[_0x58d238(0x379)+'s']};}),_0x320b99(_0x30a030(0x249)+'st-direc'+'tory',async(_0x4c23d9,_0x10ca40={})=>{const _0x21e402=_0x30a030,_0x368775=resolve(String(_0x10ca40[_0x21e402(0x3a7)]||'')),_0x553d00=_0x10ca40[_0x21e402(0x109)+'e']!==![],_0x202e77=Array[_0x21e402(0x11a)](_0x10ca40[_0x21e402(0x25b)+'ns'])?_0x10ca40['extensio'+'ns'][_0x21e402(0x31c)](_0x3b1cf4=>String(_0x3b1cf4)[_0x21e402(0x312)+'ase']()[_0x21e402(0x37e)](/^\./,''))[_0x21e402(0x147)](Boolean):null,_0x29ae3e=Number[_0x21e402(0x229)+'r'](_0x10ca40[_0x21e402(0x24f)+'es'])&&_0x10ca40[_0x21e402(0x24f)+'es']>0x0?_0x10ca40[_0x21e402(0x24f)+'es']:0xc350,_0x4e9a25=[];let _0xeacd46=![];async function _0x25a59b(_0xa8e81e){const _0x2eefbc=_0x21e402;if(_0xeacd46)return;let _0x3007d2;try{_0x3007d2=await readdir(_0xa8e81e,{'withFileTypes':!![]});}catch{return;}for(const _0x4b4d81 of _0x3007d2){if(_0xeacd46)return;if(_0x4b4d81[_0x2eefbc(0x2ac)][_0x2eefbc(0x284)+'th']('.'))continue;const _0x429d85=join(_0xa8e81e,_0x4b4d81['name']);if(_0x4b4d81[_0x2eefbc(0x30b)+_0x2eefbc(0x340)]()){if(_0x553d00)await _0x25a59b(_0x429d85);continue;}if(!_0x4b4d81[_0x2eefbc(0x220)]())continue;if(_0x202e77){const _0x2a9c85=_0x4b4d81['name'][_0x2eefbc(0x2d4)+'xOf']('.'),_0x4b0007=_0x2a9c85>=0x0?_0x4b4d81[_0x2eefbc(0x2ac)][_0x2eefbc(0x190)](_0x2a9c85+0x1)[_0x2eefbc(0x312)+_0x2eefbc(0x38e)]():'';if(!_0x202e77[_0x2eefbc(0x2b7)](_0x4b0007))continue;}if(_0x4e9a25['length']>=_0x29ae3e){_0xeacd46=!![];return;}_0x4e9a25[_0x2eefbc(0x177)]({'name':_0x4b4d81[_0x2eefbc(0x2ac)],'path':_0x429d85});}}return await _0x25a59b(_0x368775),{'path':_0x368775,'entries':_0x4e9a25,'truncated':_0xeacd46};}),_0x320b99(_0x30a030(0x156)+_0x30a030(0x2b1)+_0x30a030(0x1af),async(_0x5bdf13,_0x5eaf24={})=>{const _0x438c43=_0x30a030,_0x5ea2f1=await dialog[_0x438c43(0x184)+_0x438c43(0x275)](BrowserWindow[_0x438c43(0x2f6)+_0x438c43(0x2df)](_0x5bdf13[_0x438c43(0x19a)])??mainWindow,{'title':typeof _0x5eaf24['title']==='string'?_0x5eaf24['title']:undefined,'properties':['openDire'+_0x438c43(0x380)]});return filesLogger?.[_0x438c43(0x1be)](_0x438c43(0x3a3)+_0x438c43(0x112)+'\x20complet'+'ed',{'canceled':_0x5ea2f1[_0x438c43(0x22d)],'count':_0x5ea2f1['filePath'+'s'][_0x438c43(0x19e)],'paths':_0x5ea2f1['filePath'+'s']['map'](toHomePath)}),{'canceled':_0x5ea2f1[_0x438c43(0x22d)],'paths':_0x5ea2f1[_0x438c43(0x379)+'s']};}),_0x320b99(_0x30a030(0x32c)+_0x30a030(0x3c5)+_0x30a030(0x234),()=>_0x3f9542()['workspac'+'e'][_0x30a030(0x373)+_0x30a030(0x223)]()),_0x320b99(_0x30a030(0x32c)+_0x30a030(0x137)+_0x30a030(0x112),async()=>{const _0x3c52cd=_0x30a030,_0x261c37=await _0x3f9542()[_0x3c52cd(0x32c)+'e']['director'+_0x3c52cd(0x223)]();return await shell[_0x3c52cd(0x1b0)](_0x261c37['path']),filesLogger?.[_0x3c52cd(0x1be)](_0x3c52cd(0x32c)+_0x3c52cd(0x1fb)+_0x3c52cd(0x25a)+'ed',{'path':toHomePath(_0x261c37[_0x3c52cd(0x3a7)])}),{'ok':!![],'path':_0x261c37[_0x3c52cd(0x3a7)]};}),_0x320b99('workspac'+_0x30a030(0x2b8)+'-context',()=>_0x3f9542()[_0x30a030(0x32c)+'e'][_0x30a030(0x2dd)+_0x30a030(0x32a)]()),_0x320b99(_0x30a030(0x32c)+'e:write-'+'shared-c'+_0x30a030(0x166),(_0x357ca8,_0x4ba91a)=>_0x3f9542()['workspac'+'e'][_0x30a030(0x3e7)+_0x30a030(0x28b)+'xt'](_0x4ba91a)),_0x320b99(_0x30a030(0x2f2)+_0x30a030(0x1d6),(_0x5c30ed,_0xa0ccd)=>_0x3f9542()[_0x30a030(0x2f2)]['rename'](_0xa0ccd)),_0x320b99(_0x30a030(0x2f2)+':pin',async(_0x406ce4,_0x641feb={})=>{const _0x3da148=_0x30a030,_0x44011a=String(_0x641feb[_0x3da148(0x390)+'ey']||_0x641feb[_0x3da148(0x160)]||'')['trim']();if(!_0x44011a)throw new Error('sessionK'+_0x3da148(0x385)+_0x3da148(0x31d));const _0x2fc9d6=await ensureSessionSqliteStore()[_0x3da148(0x240)+'dSession'+'Keys'](),_0x54877c=await _0x3f9542()[_0x3da148(0x2f2)][_0x3da148(0x363)+_0x3da148(0x2bd)]([_0x44011a,..._0x2fc9d6[_0x3da148(0x147)](_0x56d8d7=>_0x56d8d7!==_0x44011a)]);return _0x54877c;}),_0x320b99('sessions'+_0x30a030(0x1dc),async(_0xa222a2,_0x248f64={})=>{const _0x262a90=_0x30a030,_0x30fa07=String(_0x248f64[_0x262a90(0x390)+'ey']||_0x248f64['key']||'')[_0x262a90(0x17e)]();if(!_0x30fa07)throw new Error(_0x262a90(0x390)+_0x262a90(0x385)+_0x262a90(0x31d));const _0x51f46f=await ensureSessionSqliteStore()['getPinne'+_0x262a90(0x3c6)+_0x262a90(0x339)]();return await _0x3f9542()['sessions'][_0x262a90(0x363)+'inned'](_0x51f46f[_0x262a90(0x147)](_0x4c9b98=>_0x4c9b98!==_0x30fa07));}),_0x320b99('sessions'+_0x30a030(0x1c4)+_0x30a030(0x148),async(_0x2951cc,_0x164b4e={})=>{const _0x584f00=_0x30a030,_0x42b6cf=Array[_0x584f00(0x11a)](_0x164b4e[_0x584f00(0x158)])?_0x164b4e[_0x584f00(0x158)]:_0x164b4e;return await _0x3f9542()[_0x584f00(0x2f2)][_0x584f00(0x363)+'inned'](_0x42b6cf);}),_0x320b99(_0x30a030(0x40c)+'nstall',(_0x11dea0,_0x5a9a2e)=>_0x3f9542()['skills'][_0x30a030(0x130)](_0x5a9a2e)),_0x320b99(_0x30a030(0x1ef)+'t',(_0x463040,_0x125eeb)=>_0x3f9542()[_0x30a030(0x31e)]['list'](_0x125eeb)),_0x320b99('cron:cre'+_0x30a030(0x408),(_0x469545,_0x4fcae5)=>_0x3f9542()[_0x30a030(0x31e)][_0x30a030(0x2d6)](_0x4fcae5)),_0x320b99(_0x30a030(0x211)+_0x30a030(0x408),(_0x22c5c2,_0x4e2907)=>_0x3f9542()[_0x30a030(0x31e)]['update'](_0x4e2907)),_0x320b99(_0x30a030(0x1e7)+_0x30a030(0x40b),(_0x5b8b5a,_0x2495f8)=>_0x3f9542()['cron'][_0x30a030(0x2fd)](_0x2495f8)),_0x320b99('cron:run'+_0x30a030(0x383),(_0x23cb38,_0x36867f)=>_0x3f9542()['cron']['runOnce'](_0x36867f)),_0x320b99(_0x30a030(0x187)+'s',(_0x30659b,_0x5dcd9c)=>_0x3f9542()[_0x30a030(0x31e)][_0x30a030(0x31f)](_0x5dcd9c)),_0x320b99('models:c'+'omplete',async(_0x59f6b3,_0x3ca8ae={})=>{const _0x57a02a=_0x30a030,_0x2c5758=configController[_0x57a02a(0x36e)+'onfigPat'+'h'](),_0x11ff00=JSON[_0x57a02a(0x1f6)](await readFile(_0x2c5758,_0x57a02a(0x3b7))),_0x522f3a=_0x11ff00?.['models']?.[_0x57a02a(0x2dc)+'s']&&typeof _0x11ff00['models'][_0x57a02a(0x2dc)+'s']===_0x57a02a(0x15d)?_0x11ff00[_0x57a02a(0x368)][_0x57a02a(0x2dc)+'s']:{},_0x17d1e6=typeof _0x11ff00?.[_0x57a02a(0x36f)]?.[_0x57a02a(0x36b)]?.[_0x57a02a(0x332)]?.[_0x57a02a(0x1fd)]===_0x57a02a(0x182)?_0x11ff00[_0x57a02a(0x36f)][_0x57a02a(0x36b)][_0x57a02a(0x332)][_0x57a02a(0x1fd)]:'',_0x1e0aa1=String(_0x3ca8ae[_0x57a02a(0x332)]||_0x17d1e6||'');if(!_0x1e0aa1[_0x57a02a(0x2b7)]('/'))throw new Error(_0x57a02a(0x3ad)+_0x57a02a(0x1c9)+'\x20configu'+_0x57a02a(0x1bf)+_0x57a02a(0x212)+_0x57a02a(0x32d)+_0x57a02a(0x169));const _0x1d649c=_0x1e0aa1[_0x57a02a(0x1aa)]('/'),_0x4dc4e2=_0x1e0aa1['slice'](0x0,_0x1d649c),_0x2b9a1e=_0x1e0aa1['slice'](_0x1d649c+0x1),_0x23c732=_0x522f3a[_0x4dc4e2];if(!_0x23c732||typeof _0x23c732!==_0x57a02a(0x15d))throw new Error(_0x57a02a(0x2dc)+_0x57a02a(0x1d8)+'figured:'+'\x20'+_0x4dc4e2);const _0x502cbe=String(_0x23c732[_0x57a02a(0x374)]||_0x57a02a(0x154)+'api.open'+_0x57a02a(0x188)+'1')[_0x57a02a(0x17e)]()[_0x57a02a(0x37e)](/\/$/,''),_0x34362f=await fetch(_0x502cbe+(_0x57a02a(0x1fa)+_0x57a02a(0x3bf)+'s'),{'method':_0x57a02a(0x1c6),'headers':{'content-type':_0x57a02a(0x214)+_0x57a02a(0x2f3),'Authorization':_0x57a02a(0x1cb)+(_0x23c732[_0x57a02a(0x261)]||''),..._0x23c732['headers']&&typeof _0x23c732[_0x57a02a(0x2b6)]==='object'?_0x23c732[_0x57a02a(0x2b6)]:{}},'body':JSON[_0x57a02a(0x17c)+'y']({'model':_0x2b9a1e,'max_tokens':Number['isIntege'+'r'](_0x3ca8ae[_0x57a02a(0x193)+'s'])?_0x3ca8ae['maxToken'+'s']:0x400,'temperature':typeof _0x3ca8ae[_0x57a02a(0x1c8)+'ure']==='number'?_0x3ca8ae['temperat'+'ure']:undefined,'messages':Array[_0x57a02a(0x11a)](_0x3ca8ae[_0x57a02a(0x333)])?_0x3ca8ae[_0x57a02a(0x333)]:[]}),'signal':AbortSignal[_0x57a02a(0x227)](Number[_0x57a02a(0x229)+'r'](_0x3ca8ae[_0x57a02a(0x28f)+'s'])?_0x3ca8ae['timeoutM'+'s']:0x1d4c0)});if(!_0x34362f['ok']){const _0x32090d=await _0x34362f['text']();throw new Error(_0x57a02a(0xfb)+_0x57a02a(0x1da)+_0x34362f[_0x57a02a(0x28e)]+':\x20'+_0x32090d[_0x57a02a(0x190)](0x0,0x190));}const _0x9661c3=await _0x34362f['json'](),_0x4c56e4=_0x9661c3?.['choices']?.[0x0]?.[_0x57a02a(0x13e)]??{};return{'content':extractModelMessageContent(_0x4c56e4[_0x57a02a(0x25f)]),'reasoning':typeof _0x4c56e4[_0x57a02a(0x2cf)+_0x57a02a(0x3fa)+'t']==='string'?_0x4c56e4[_0x57a02a(0x2cf)+_0x57a02a(0x3fa)+'t']:'','model':_0x9661c3?.[_0x57a02a(0x332)]||_0x2b9a1e};}),_0x320b99(_0x30a030(0x2b5)+_0x30a030(0x270),()=>_0x3f9542()['models']['settings']()),_0x320b99(_0x30a030(0x2b5)+_0x30a030(0x326)+_0x30a030(0x33d),(_0x1030b8,_0x169298)=>_0x3f9542()[_0x30a030(0x368)][_0x30a030(0x406)+_0x30a030(0x33d)](_0x169298)),_0x320b99(_0x30a030(0x2b5)+_0x30a030(0x202)+_0x30a030(0x244)+'ywhere',(_0x5112e6,_0x4e093f)=>_0x3f9542()['models']['setSelec'+_0x30a030(0x2c4)+_0x30a030(0x39c)+'re'](_0x4e093f)),_0x320b99(_0x30a030(0x2b5)+_0x30a030(0x1a4)+'operated',(_0x167df2,_0x28877a)=>_0x3f9542()[_0x30a030(0x368)][_0x30a030(0x213)+_0x30a030(0x108)+_0x30a030(0x2c9)](_0x28877a)),_0x320b99(_0x30a030(0x2b5)+_0x30a030(0x33c)+'model-id',()=>_0x3f9542()[_0x30a030(0x368)]['selected'+_0x30a030(0x19f)]()),_0x320b99(_0x30a030(0x3e4)+'ustom-mo'+_0x30a030(0x16e),()=>_0x3f9542()[_0x30a030(0x368)][_0x30a030(0x232)+_0x30a030(0x16e)]()),_0x320b99(_0x30a030(0x3f3)+'sync-bun'+_0x30a030(0xf9)+_0x30a030(0x2ef),async()=>{const _0x12f3e7=_0x30a030,_0x602a32=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController[_0x12f3e7(0x356)+_0x12f3e7(0x1c7)+'ns'](),{'ok':!![],'syncedAt':new Date()[_0x12f3e7(0x14c)+_0x12f3e7(0x2bc)](),'manifest':_0x602a32,'status':await getRuntimeResourceStatus()};}),_0x320b99('runtime:'+_0x30a030(0xf7)+'-status',async()=>getRuntimeResourceStatus());}async function boot(){const _0x1e40f0=_0x509663;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x1e40f0(0x28c)](shellConfig['productN'+'ame']),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x1e40f0(0x37b)],'main'),ipcLogger=createShellLogger(configController['paths'],_0x1e40f0(0x29a)),filesLogger=createShellLogger(configController['paths'],_0x1e40f0(0x3a4)),rendererLogger=createShellLogger(configController[_0x1e40f0(0x37b)],_0x1e40f0(0x3cb)),productRuntime=await loadProductRuntime();const _0xe6e5bd=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController[_0x1e40f0(0x37b)]['logsDir'],'appContext':{'productName':shellConfig[_0x1e40f0(0x15e)+_0x1e40f0(0x298)],'appId':shellConfig[_0x1e40f0(0x357)],'appVersion':app[_0x1e40f0(0x248)+'on'](),'platform':process['platform'],'arch':process[_0x1e40f0(0x35f)],..._0xe6e5bd?{'apiEndpoint':_0xe6e5bd}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController[_0x1e40f0(0x37b)][_0x1e40f0(0x271)],'diagnosticsWriter':diagnosticsWriter});const _0x2f29a8=await loadCreateUpdateController({'logger':mainLogger});updateController=_0x2f29a8({'shellConfig':shellConfig,'appName':()=>app[_0x1e40f0(0x2ac)],'appVersion':()=>app[_0x1e40f0(0x248)+'on'](),'broadcast':broadcast,'logger':mainLogger}),updateController[_0x1e40f0(0x1a6)+'ze'](),registerProcessLogHooks(),mainLogger?.[_0x1e40f0(0x1be)](_0x1e40f0(0x1e0)+_0x1e40f0(0x35d)+_0x1e40f0(0x290)+'ed',{'appVersion':app['getVersi'+'on'](),'electronVersion':process[_0x1e40f0(0x2e0)][_0x1e40f0(0x1e0)],'nodeVersion':process[_0x1e40f0(0x2e0)][_0x1e40f0(0x33f)],'chromeVersion':process[_0x1e40f0(0x2e0)]['chrome'],'platform':process['platform'],'arch':process[_0x1e40f0(0x35f)],'mode':getMode(),'projectRoot':shellConfig[_0x1e40f0(0x3b3)+_0x1e40f0(0x126)],'configPath':shellConfig['configPa'+'th'],'dataDir':shellConfig[_0x1e40f0(0x3af)],'logsDir':configController[_0x1e40f0(0x37b)]['logsDir'],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x1e40f0(0x3b3)+_0x1e40f0(0x126)],_0x1e40f0(0x3d9),_0x1e40f0(0x2ee)+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app['getVersi'+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime[_0x1e40f0(0x38a)+'roductCo'+_0x1e40f0(0x27b)]===_0x1e40f0(0x281)&&await productRuntime[_0x1e40f0(0x38a)+_0x1e40f0(0x38b)+_0x1e40f0(0x27b)]({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x1e40f0(0x38a)+_0x1e40f0(0x207)+'ta']===_0x1e40f0(0x281)?await productRuntime[_0x1e40f0(0x38a)+_0x1e40f0(0x207)+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()[_0x1e40f0(0x2a8)+'itialize'+'d'](),attachGatewayBroadcastHandlers(gatewayController),await installIpcHandlers(),installClawspaceProtocolHandler(),registerShellShortcuts(),await createWindow(),await gatewayController[_0x1e40f0(0x344)](),updateController['startBac'+_0x1e40f0(0x1a3)+_0x1e40f0(0x20b)](),mainLogger?.[_0x1e40f0(0x1be)]('electron'+'\x20main\x20bo'+'ot\x20compl'+'eted');}function registerProcessLogHooks(){const _0x1df664=_0x509663;if(registerProcessLogHooks[_0x1df664(0x407)+'ed'])return;registerProcessLogHooks[_0x1df664(0x407)+'ed']=!![],process['on'](_0x1df664(0x351)+_0x1df664(0x17f)+'n',_0x31bea3=>{const _0x336966=_0x1df664;mainLogger?.[_0x336966(0x3f8)](_0x336966(0x351)+_0x336966(0x134)+'on',summarizeError(_0x31bea3));}),process['on'](_0x1df664(0x144)+_0x1df664(0x29e)+'on',_0x21628a=>{const _0x1aaa58=_0x1df664;mainLogger?.[_0x1aaa58(0x3f8)]('unhandle'+_0x1aaa58(0x311)+_0x1aaa58(0x2d0),summarizeError(_0x21628a));}),app['on'](_0x1df664(0x2d3)+_0x1df664(0x1d7)+_0x1df664(0x2b9),(_0x476893,_0x3ebc82,_0x255777)=>{const _0x358cbd=_0x1df664;mainLogger?.[_0x358cbd(0x3f8)](_0x358cbd(0x3cb)+'\x20process'+_0x358cbd(0x189),{'url':_0x3ebc82[_0x358cbd(0x324)](),'details':_0x255777});}),app['on'](_0x1df664(0x11c)+_0x1df664(0x3f4)+'ne',(_0x1feaf7,_0x26d518)=>{const _0x325894=_0x1df664;mainLogger?.[_0x325894(0x3f8)](_0x325894(0x2a5)+_0x325894(0x236)+'ne',{'details':_0x26d518});});}app['on']('window-a'+_0x509663(0x2cd)+'d',()=>{const _0x33db30=_0x509663;if(process[_0x33db30(0x1ff)]!==_0x33db30(0x25d))app[_0x33db30(0x3d5)]();}),app['on'](_0x509663(0x2b4),async()=>{const _0x31b62e=_0x509663;if(isQuitting){app[_0x31b62e(0x3d5)]();return;}updateController?.[_0x31b62e(0x2a2)+'ackgroun'+_0x31b62e(0x3d1)](_0x31b62e(0x34c)+_0x31b62e(0x131)),BrowserWindow[_0x31b62e(0x23b)+_0x31b62e(0x128)]()[_0x31b62e(0x19e)]===0x0&&shellConfig&&await createWindow();}),app['on'](_0x509663(0x30d)+_0x509663(0x403),_0x396295=>{const _0x5cded5=_0x509663;isQuitting=!![],updateController?.[_0x5cded5(0x14e)+_0x5cded5(0x175)](),terminalManager?.[_0x5cded5(0x16a)](),terminalManager=null,productRuntimeHooks?.[_0x5cded5(0x16a)]?.();for(const _0x17a26a of Object[_0x5cded5(0x158)](productRuntimeHooks))delete productRuntimeHooks[_0x17a26a];if(!gatewayController)return;mainLogger?.[_0x5cded5(0x1be)](_0x5cded5(0x230)+_0x5cded5(0x117)+_0x5cded5(0x318)+'teway'),_0x396295[_0x5cded5(0x3c0)+_0x5cded5(0x26f)](),void gatewayController[_0x5cded5(0x1b4)]()[_0x5cded5(0x20d)](()=>{const _0xf6aff9=_0x5cded5;gatewayController=null,mainLogger?.[_0xf6aff9(0x1be)](_0xf6aff9(0x40a)+'stopped\x20'+_0xf6aff9(0x230)+'uit'),app['quit']();});}),app['on'](_0x509663(0x331)+'t',()=>{const _0x182d45=_0x509663;globalShortcut[_0x182d45(0x132)+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x509663(0x287)+'y']()['then'](boot)[_0x509663(0x34f)](_0x157652=>{const _0xf9dec8=_0x509663;bootError=_0x157652 instanceof Error?_0x157652[_0xf9dec8(0x13e)]:String(_0x157652),mainLogger?.[_0xf9dec8(0x3f8)]('electron'+_0xf9dec8(0x35d)+'ot\x20faile'+'d',summarizeError(_0x157652)),console['error'](_0xf9dec8(0x3c2)+'hell]\x20fa'+'iled\x20to\x20'+_0xf9dec8(0x2bb)+_0xf9dec8(0x3ff)+'in',_0x157652);});
|