@wujie-shell/core 0.1.3 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- const _0x11c6d2=_0x157e;(function(_0x6b399f,_0x5b7512){const _0x3e7b3b=_0x157e,_0x50c757=_0x6b399f();while(!![]){try{const _0x24c241=-parseInt(_0x3e7b3b(0x17f))/0x1*(parseInt(_0x3e7b3b(0x13c))/0x2)+-parseInt(_0x3e7b3b(0x15f))/0x3+parseInt(_0x3e7b3b(0x141))/0x4*(-parseInt(_0x3e7b3b(0x149))/0x5)+parseInt(_0x3e7b3b(0xc5))/0x6*(parseInt(_0x3e7b3b(0x1bc))/0x7)+parseInt(_0x3e7b3b(0x18a))/0x8*(parseInt(_0x3e7b3b(0x142))/0x9)+parseInt(_0x3e7b3b(0x18c))/0xa*(-parseInt(_0x3e7b3b(0x129))/0xb)+parseInt(_0x3e7b3b(0x1ac))/0xc;if(_0x24c241===_0x5b7512)break;else _0x50c757['push'](_0x50c757['shift']());}catch(_0x10dc71){_0x50c757['push'](_0x50c757['shift']());}}}(_0x5628,0x2614b));import _0x5b0c5b from'electron';import{fileURLToPath}from'node:url';import{dirname,join,resolve}from'node:path';import{readFile,stat,writeFile}from'node:fs/promises';import{loadShellConfig}from'@wujie-shell/config';import{createConfigController}from'../config-controller.mjs';import{createGatewayController}from'../gateway-controller.mjs';import{createShellLogger,exportLogsArchive,summarizeError,summarizePayload,summarizeText,toHomePath}from'../logging.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,'preload.'+_0x11c6d2(0x11c)),{app,BrowserWindow,dialog,globalShortcut,ipcMain,shell}=_0x5b0c5b,DEVTOOLS_ACCELERATOR=_0x11c6d2(0x160)+_0x11c6d2(0xe8)+'+Shift+I';let mainWindow=null,shellConfig=null,configController=null,gatewayController=null,bootError=null,mainLogger=null,ipcLogger=null,filesLogger=null,rendererLogger=null;function getMode(){const _0x1ddf78=_0x11c6d2;return process.env.VITE_DEV_SERVER_URL?'dev':_0x1ddf78(0x18b);}function resolveProjectRoot(){const _0x393f68=_0x11c6d2;return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT||process[_0x393f68(0xbf)]());}function broadcast(_0x46d8f9,_0x2658c9){const _0x7978f6=_0x11c6d2;for(const _0x3a12ee of BrowserWindow['getAllWi'+'ndows']()){!_0x3a12ee[_0x7978f6(0x17b)+'nts'][_0x7978f6(0x1b1)+_0x7978f6(0xfa)]()&&_0x3a12ee[_0x7978f6(0x17b)+_0x7978f6(0xb4)][_0x7978f6(0x139)]('wujie-sh'+_0x7978f6(0xbd)+'t',{'name':_0x46d8f9,'payload':_0x2658c9});}}function openDevToolsForActiveContext(){const _0xd2dffc=_0x11c6d2,_0x48530c=BrowserWindow['getFocus'+'edWindow']()||mainWindow;if(!_0x48530c||_0x48530c[_0xd2dffc(0x1b1)+_0xd2dffc(0xfa)]())return{'ok':![]};return _0x48530c[_0xd2dffc(0x17b)+'nts']['openDevT'+_0xd2dffc(0x1ba)]({'mode':_0xd2dffc(0x119)}),_0x48530c[_0xd2dffc(0x17b)+'nts'][_0xd2dffc(0x139)](_0xd2dffc(0x192)+_0xd2dffc(0xbd)+'t',{'name':_0xd2dffc(0x177)+_0xd2dffc(0x175)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0xbdfed1=_0x11c6d2;globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);const _0x57a558=globalShortcut[_0xbdfed1(0xee)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x57a558&&console['warn'](_0xbdfed1(0x12f)+_0xbdfed1(0xf2)+_0xbdfed1(0x1c2)+_0xbdfed1(0xee)+'\x20shortcu'+_0xbdfed1(0x1a6)+DEVTOOLS_ACCELERATOR);}function _0x5628(){const _0x384f69=['isDestro','setName','default','file\x20rea','\x20main\x20bo','logs:ope','openExte',':delete','workspac','ools','info','28tivHVk','files:re','platform','ned-keys','window:m','elected-','iled\x20to\x20','logs',':runtime','title','window-a','sessions','leted','dKeys','uncaught','chat','level','before\x20q','ModelId','select\x20d','ot\x20compl','operated','nts','cron:lis','\x20gone','l\x20reques','pdate','utf8','est\x20star','ipc\x20requ','filePath','ell:even','boot\x20ele','cwd','session-','Dialog','pdated','dels','shared-c','397932GKBbmq','main','catch','create','ctory','-once','settings','ontext','projectR','delete','openDevT','skills','darwin','canceled','models','dRejecti','set','ontents','files:se','then','context','peratedM','fromWebC','ate','logs\x20dir','ot\x20initi',':pinned-','map','e:write-','rocess-g','-logs','ory\x20open','file\x20wri','n-direct','yInfo','rControl','chat:his','getStatu','tatus','stop','minimize','register','ite','skills:s','getVersi','hell]\x20fa','-info','senderFr','keys',':gateway','paths','url','openclaw','yed','showOpen','openFile','main\x20win','pened','ocess-go','from','ent','e\x20comple','d\x20reject','renderer','ile\x20read','config:r','\x20complet','child-pr','status','stopped\x20','chrome','versions','close','ist','size','loadFile','cron','ipc','app:open','ell\x20gate','ask-user','eam-even','meta','preventD','detach','unhandle','trim','mjs','dow\x20load','ll-close','ndows','filters','et-self-','director','uit:\x20sto','dist','ted','gateway\x20','model-id','abort','143AKGSoj','files:wr','uit','cron:run','sender','efault','[wujie-s','ectory\x20o','\x20request','ell\x20boot','-context','ectory','ngs','handle','isArray','#f8fafc','send','restart','length','22UxrwHp','dataDir','string','error','ite-bina','4RulORQ','14031gqPDDH','rename','object','ile\x20comp','getRecen','setPinne','chat-str','501305seInHw','chat:abo','ile\x20writ','log','limit','answerAs','node','app:info','one','quit','open\x20ext','cron:upd','\x20failed:','nstall','logs:wri','orted',':answer-','byteLeng','-questio','finally','message','logs\x20exp','442539Dhpduu','CommandO','binary\x20f','nfo','writeSha','electron','sharedCo','runOnce','agents:l','now',':rename','agents','productN',':create','targetDi','whenRead','d\x20failed','kUserQue','\x20process','update','index.ht','ame','-shortcu','d\x20comple','devtools','logs:exp','ocess\x20go','ections','webConte','content','-status','irectory','12057YTlZmT','ot\x20faile','logsDir','runtimeI','path','alized','unmaximi','models:s','ximize','\x20main\x20wi','ory-info','536wpPyiX','prod','26790CTrjgo','skills:u','oggle-ma','cron:log','zed','ot\x20start','wujie-sh','eted','rnal','oot','pen-devt','will-qui','ndow','ustom-mo','est\x20fail','Exceptio','lect-dir','agent-ev','multiSel','ad-binar','setSetti','list','configPa','skills:i','arch','activate','t:\x20','openPath','gateway-','\x20excepti','isMaximi','e:open-d','2417592OomniL','est\x20comp','pinnedKe','setSelfO','ernal\x20ur'];_0x5628=function(){return _0x384f69;};return _0x5628();}function _0x157e(_0x403492,_0x9bc099){_0x403492=_0x403492-0xad;const _0x56284f=_0x5628();let _0x157ec4=_0x56284f[_0x403492];return _0x157ec4;}async function createWindow(){const _0x50a997=_0x11c6d2,_0x4249d1=process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x50a997(0xcd)+_0x50a997(0x195)],_0x50a997(0x124),_0x50a997(0x173)+'ml');mainLogger?.['info']('creating'+_0x50a997(0x188)+_0x50a997(0x198),{'rendererUrl':_0x4249d1,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x50a997(0x16b)+_0x50a997(0x174)],'backgroundColor':_0x50a997(0x138),'titleBarStyle':process[_0x50a997(0x1be)]===_0x50a997(0xd1)?'hiddenIn'+_0x50a997(0xd5):_0x50a997(0x1b3),'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}});const _0x481148=process.env.VITE_DEV_SERVER_URL;_0x481148?(await mainWindow['loadURL'](_0x481148),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow[_0x50a997(0x17b)+_0x50a997(0xb4)][_0x50a997(0xcf)+_0x50a997(0x1ba)]({'mode':_0x50a997(0x119)})):await mainWindow[_0x50a997(0x110)](join(shellConfig[_0x50a997(0xcd)+_0x50a997(0x195)],'dist','index.ht'+'ml')),mainLogger?.['info'](_0x50a997(0xfd)+_0x50a997(0x11d)+'ed',{'rendererUrl':_0x4249d1,'mode':getMode()});}function installIpcHandlers(){const _0xeea2b7=_0x11c6d2,_0x289766=(_0x2c745e,_0x5b1410)=>{const _0x33d20e=_0x157e;ipcMain[_0x33d20e(0x136)](_0x2c745e,async(_0x1555af,_0x401e0a)=>{const _0x1c45fb=_0x33d20e,_0x3969d3=Date[_0x1c45fb(0x168)](),_0x571c21=_0x1555af[_0x1c45fb(0xf4)+_0x1c45fb(0x174)]?.[_0x1c45fb(0xf8)]||_0x1555af[_0x1c45fb(0x12d)]['getURL']();ipcLogger?.[_0x1c45fb(0x1bb)](_0x1c45fb(0xbb)+_0x1c45fb(0xba)+_0x1c45fb(0x125),{'channel':_0x2c745e,'senderUrl':_0x571c21,'payload':summarizePayload(_0x401e0a)});try{const _0x57c1d4=await _0x5b1410(_0x1555af,_0x401e0a);return ipcLogger?.[_0x1c45fb(0x1bb)](_0x1c45fb(0xbb)+_0x1c45fb(0x1ad)+'leted',{'channel':_0x2c745e,'durationMs':Date[_0x1c45fb(0x168)]()-_0x3969d3,'result':summarizePayload(_0x57c1d4,{'maxDepth':0x2})}),_0x57c1d4;}catch(_0x171def){ipcLogger?.[_0x1c45fb(0x13f)]('ipc\x20requ'+_0x1c45fb(0x19a)+'ed',{'channel':_0x2c745e,'durationMs':Date[_0x1c45fb(0x168)]()-_0x3969d3,'error':summarizeError(_0x171def)});throw _0x171def;}});},_0x241966=()=>{const _0x53bcd1=_0x157e;if(!gatewayController)throw new Error(bootError?_0x53bcd1(0x192)+_0x53bcd1(0x132)+_0x53bcd1(0x155)+'\x20'+bootError:'wujie-sh'+_0x53bcd1(0x114)+'way\x20is\x20n'+_0x53bcd1(0xde)+_0x53bcd1(0x184));return gatewayController;};_0x289766(_0xeea2b7(0x150),async()=>({'name':shellConfig[_0xeea2b7(0x16b)+_0xeea2b7(0x174)],'version':app[_0xeea2b7(0xf1)+'on'](),'appId':shellConfig['appId'],'dataDir':shellConfig[_0xeea2b7(0x13d)]})),_0x289766(_0xeea2b7(0x113)+'-url',async(_0x8e03b0,_0x8da761)=>{const _0x3e7cb9=_0xeea2b7,_0x2a8738=typeof _0x8da761===_0x3e7cb9(0x13e)?_0x8da761:'';if(!_0x2a8738)return{'ok':![]};return filesLogger?.['info'](_0x3e7cb9(0x153)+_0x3e7cb9(0x1b0)+_0x3e7cb9(0xb7)+_0x3e7cb9(0x125),{'url':summarizeText(_0x2a8738,0xa0)}),await shell[_0x3e7cb9(0x1b7)+_0x3e7cb9(0x194)](_0x2a8738),{'ok':!![]};}),_0x289766(_0xeea2b7(0x1c0)+'inimize',_0x52b5e6=>{const _0x275c39=_0xeea2b7;return BrowserWindow[_0x275c39(0xdb)+_0x275c39(0xd6)](_0x52b5e6[_0x275c39(0x12d)])?.[_0x275c39(0xed)](),{'ok':!![]};}),_0x289766('window:t'+_0xeea2b7(0x18e)+_0xeea2b7(0x187),_0x55394e=>{const _0x55bc97=_0xeea2b7,_0x2751b4=BrowserWindow[_0x55bc97(0xdb)+'ontents'](_0x55394e['sender']);if(!_0x2751b4)return{'isMaximized':![]};if(_0x2751b4[_0x55bc97(0x1aa)+_0x55bc97(0x190)]())_0x2751b4[_0x55bc97(0x185)+'ze']();else _0x2751b4['maximize']();return{'isMaximized':_0x2751b4[_0x55bc97(0x1aa)+'zed']()};}),_0x289766('window:c'+'lose',_0x1a9b5a=>{const _0x2b8aeb=_0xeea2b7;return BrowserWindow[_0x2b8aeb(0xdb)+'ontents'](_0x1a9b5a[_0x2b8aeb(0x12d)])?.[_0x2b8aeb(0x10d)](),{'ok':!![]};}),_0x289766('window:o'+_0xeea2b7(0x196)+_0xeea2b7(0x1ba),()=>openDevToolsForActiveContext()),_0x289766(_0xeea2b7(0xf9)+_0xeea2b7(0x1c4)+_0xeea2b7(0xf3),()=>_0x241966()[_0xeea2b7(0x182)+_0xeea2b7(0x162)]()),_0x289766('openclaw'+_0xeea2b7(0xf6)+_0xeea2b7(0x17d),()=>_0x241966()[_0xeea2b7(0xea)+'s']()),_0x289766(_0xeea2b7(0xf9)+_0xeea2b7(0xf6)+'-restart',()=>_0x241966()[_0xeea2b7(0x13a)](_0xeea2b7(0x104)+_0xeea2b7(0x131))),_0x289766(_0xeea2b7(0xf9)+_0xeea2b7(0xf6)+_0xeea2b7(0xe3),(_0x4eb199,_0x39d804={})=>_0x241966()[_0xeea2b7(0x146)+'tLogs'](_0x39d804?.[_0xeea2b7(0x14d)]??0xc8)),_0x289766('openclaw'+_0xeea2b7(0x159)+_0xeea2b7(0x115)+_0xeea2b7(0x15b)+'n',(_0x4e33ea,_0x7a48a8)=>_0x241966()[_0xeea2b7(0x14e)+_0xeea2b7(0x170)+'stion'](_0x7a48a8)),_0x289766(_0xeea2b7(0x167)+_0xeea2b7(0x10e),()=>_0x241966()[_0xeea2b7(0x16a)][_0xeea2b7(0x1a1)]()),_0x289766(_0xeea2b7(0xf0)+_0xeea2b7(0xeb),(_0x4a6ea9,_0xf28179)=>_0x241966()[_0xeea2b7(0xd0)][_0xeea2b7(0x109)](_0xf28179)),_0x289766(_0xeea2b7(0x1c7)+_0xeea2b7(0x16c),(_0x2c30b2,_0x841407)=>_0x241966()[_0xeea2b7(0x1c7)]['create'](_0x841407)),_0x289766(_0xeea2b7(0x1c7)+':list',(_0x232374,_0x24fe31)=>_0x241966()[_0xeea2b7(0x1c7)][_0xeea2b7(0x1a1)](_0x24fe31)),_0x289766(_0xeea2b7(0x1c7)+_0xeea2b7(0x1b8),(_0x5ef2ea,_0x37e87d)=>_0x241966()[_0xeea2b7(0x1c7)][_0xeea2b7(0xce)](_0x37e87d)),_0x289766('chat:str'+'eam',(_0x5a181b,_0x1befb1)=>_0x241966()[_0xeea2b7(0xad)]['stream'](_0x1befb1)),_0x289766(_0xeea2b7(0x14a)+'rt',(_0x55f8c7,_0x57c65f)=>_0x241966()[_0xeea2b7(0xad)][_0xeea2b7(0x128)](_0x57c65f)),_0x289766(_0xeea2b7(0xe9)+'tory',(_0x19fb18,_0x34af9c)=>_0x241966()[_0xeea2b7(0xad)]['history'](_0x34af9c)),_0x289766(_0xeea2b7(0x157)+'te',async(_0x262478,_0x395a19={})=>{const _0x4e586e=_0xeea2b7,_0x40c664=typeof _0x395a19[_0x4e586e(0xae)]===_0x4e586e(0x13e)?_0x395a19[_0x4e586e(0xae)]:_0x4e586e(0x1bb),_0x1261c4=typeof _0x395a19[_0x4e586e(0x15d)]===_0x4e586e(0x13e)?_0x395a19[_0x4e586e(0x15d)]:_0x4e586e(0x104)+'\x20log',_0x1e6dba=typeof _0x395a19[_0x4e586e(0xd9)]===_0x4e586e(0x13e)&&_0x395a19['context']['trim']()?_0x4e586e(0x104)+':'+_0x395a19[_0x4e586e(0xd9)][_0x4e586e(0x11b)]():'renderer',_0x5db850=_0x395a19[_0x4e586e(0x117)]&&typeof _0x395a19[_0x4e586e(0x117)]===_0x4e586e(0x144)?summarizePayload(_0x395a19[_0x4e586e(0x117)]):undefined,_0x1fb61a=rendererLogger;if(_0x1fb61a?.[_0x40c664])await _0x1fb61a[_0x40c664](_0x1261c4,_0x5db850);else await _0x1fb61a?.[_0x4e586e(0x1bb)](_0x1261c4,_0x5db850);return{'ok':!![]};}),_0x289766(_0xeea2b7(0x178)+'ort',async(_0x584a40,_0x32837e={})=>{const _0x478f16=_0xeea2b7,_0x313bef=typeof _0x32837e[_0x478f16(0x16d)+'r']===_0x478f16(0x13e)&&_0x32837e['targetDi'+'r']['trim']()?_0x32837e[_0x478f16(0x16d)+'r']:undefined,_0x309805=await exportLogsArchive({'logsDir':configController[_0x478f16(0xf7)][_0x478f16(0x181)],'targetDir':_0x313bef,'appVersion':app[_0x478f16(0xf1)+'on']()});return mainLogger?.[_0x478f16(0x1bb)](_0x478f16(0x15e)+_0x478f16(0x158),{'path':toHomePath(_0x309805['path'])}),_0x309805;}),_0x289766(_0xeea2b7(0x1b6)+_0xeea2b7(0xe6)+'ory',async()=>{const _0x1e6032=_0xeea2b7;return await shell[_0x1e6032(0x1a7)](configController[_0x1e6032(0xf7)][_0x1e6032(0x181)]),mainLogger?.[_0x1e6032(0x1bb)](_0x1e6032(0xdd)+_0x1e6032(0x130)+_0x1e6032(0xfe),{'logsDir':toHomePath(configController[_0x1e6032(0xf7)][_0x1e6032(0x181)])}),{'ok':!![],'path':configController[_0x1e6032(0xf7)][_0x1e6032(0x181)]};}),_0x289766('files:re'+'ad',async(_0x4cfa3e,_0x57f842)=>{const _0x50e621=_0xeea2b7,_0x4b38cb=Date[_0x50e621(0x168)]();try{const _0x2a8ddb=await readFile(_0x57f842,_0x50e621(0xb9));return filesLogger?.[_0x50e621(0x1bb)](_0x50e621(0x1b4)+_0x50e621(0x176)+_0x50e621(0x125),{'path':toHomePath(_0x57f842),'bytes':Buffer[_0x50e621(0x15a)+'th'](_0x2a8ddb),'durationMs':Date['now']()-_0x4b38cb}),_0x2a8ddb;}catch(_0x38d1c4){filesLogger?.[_0x50e621(0x13f)](_0x50e621(0x1b4)+_0x50e621(0x16f),{'path':toHomePath(_0x57f842),'durationMs':Date[_0x50e621(0x168)]()-_0x4b38cb,'error':summarizeError(_0x38d1c4)});throw _0x38d1c4;}}),_0x289766(_0xeea2b7(0x1bd)+_0xeea2b7(0x19f)+'y',async(_0x3478fd,_0x3914f5)=>{const _0x1c323e=_0xeea2b7,_0xfc3132=Date['now']();try{const _0x4f0518=await readFile(_0x3914f5);return filesLogger?.['info']('binary\x20f'+_0x1c323e(0x105)+_0x1c323e(0x107)+'ed',{'path':toHomePath(_0x3914f5),'bytes':_0x4f0518[_0x1c323e(0x15a)+'th'],'durationMs':Date[_0x1c323e(0x168)]()-_0xfc3132}),new Uint8Array(_0x4f0518);}catch(_0x29275d){filesLogger?.[_0x1c323e(0x13f)](_0x1c323e(0x161)+_0x1c323e(0x105)+'\x20failed',{'path':toHomePath(_0x3914f5),'durationMs':Date[_0x1c323e(0x168)]()-_0xfc3132,'error':summarizeError(_0x29275d)});throw _0x29275d;}}),_0x289766(_0xeea2b7(0x12a)+_0xeea2b7(0xef),async(_0x225937,_0x465dc1={})=>{const _0x381b96=_0xeea2b7,_0x26594f=Date[_0x381b96(0x168)]();return await writeFile(_0x465dc1[_0x381b96(0x183)],_0x465dc1[_0x381b96(0x17c)]??'',_0x381b96(0xb9)),filesLogger?.[_0x381b96(0x1bb)](_0x381b96(0xe5)+'te\x20compl'+_0x381b96(0x193),{'path':toHomePath(_0x465dc1[_0x381b96(0x183)]),'bytes':Buffer[_0x381b96(0x15a)+'th'](String(_0x465dc1[_0x381b96(0x17c)]??'')),'durationMs':Date['now']()-_0x26594f}),{'ok':!![]};}),_0x289766('files:wr'+_0xeea2b7(0x140)+'ry',async(_0x334130,_0x251f0b={})=>{const _0x12304b=_0xeea2b7,_0x482926=Date[_0x12304b(0x168)]();await writeFile(_0x251f0b['path'],Buffer[_0x12304b(0x100)](_0x251f0b[_0x12304b(0x17c)]??[]));const _0x1abe47=await stat(_0x251f0b[_0x12304b(0x183)])[_0x12304b(0xc7)](()=>null);return filesLogger?.[_0x12304b(0x1bb)](_0x12304b(0x161)+_0x12304b(0x14b)+_0x12304b(0x102)+'ted',{'path':toHomePath(_0x251f0b['path']),'bytes':_0x1abe47?.[_0x12304b(0x10f)]??0x0,'durationMs':Date[_0x12304b(0x168)]()-_0x482926}),{'ok':!![]};}),_0x289766(_0xeea2b7(0xd7)+'lect-fil'+'e',async(_0xab2e14,_0x379bcc={})=>{const _0x12c5b5=_0xeea2b7,_0x3e895a=await dialog[_0x12c5b5(0xfb)+_0x12c5b5(0xc1)](BrowserWindow[_0x12c5b5(0xdb)+'ontents'](_0xab2e14[_0x12c5b5(0x12d)])??mainWindow,{'title':typeof _0x379bcc[_0x12c5b5(0x1c5)]===_0x12c5b5(0x13e)?_0x379bcc['title']:undefined,'properties':[_0x12c5b5(0xfc),..._0x379bcc[_0x12c5b5(0x19e)+_0x12c5b5(0x17a)]?[_0x12c5b5(0x19e)+_0x12c5b5(0x17a)]:[]],'filters':Array[_0x12c5b5(0x137)](_0x379bcc[_0x12c5b5(0x120)])?_0x379bcc[_0x12c5b5(0x120)]:undefined});return filesLogger?.[_0x12c5b5(0x1bb)]('select\x20f'+_0x12c5b5(0x145)+_0x12c5b5(0x1c8),{'canceled':_0x3e895a[_0x12c5b5(0xd2)],'count':_0x3e895a[_0x12c5b5(0xbc)+'s'][_0x12c5b5(0x13b)],'paths':_0x3e895a[_0x12c5b5(0xbc)+'s'][_0x12c5b5(0xe0)](toHomePath)}),{'canceled':_0x3e895a[_0x12c5b5(0xd2)],'paths':_0x3e895a[_0x12c5b5(0xbc)+'s']};}),_0x289766(_0xeea2b7(0xd7)+_0xeea2b7(0x19c)+_0xeea2b7(0x134),async(_0x1834f6,_0x1d0c8b={})=>{const _0x27bc78=_0xeea2b7,_0x419c4d=await dialog[_0x27bc78(0xfb)+_0x27bc78(0xc1)](BrowserWindow['fromWebC'+_0x27bc78(0xd6)](_0x1834f6[_0x27bc78(0x12d)])??mainWindow,{'title':typeof _0x1d0c8b['title']===_0x27bc78(0x13e)?_0x1d0c8b[_0x27bc78(0x1c5)]:undefined,'properties':['openDire'+_0x27bc78(0xc9)]});return filesLogger?.['info'](_0x27bc78(0xb1)+_0x27bc78(0x17e)+_0x27bc78(0x107)+'ed',{'canceled':_0x419c4d[_0x27bc78(0xd2)],'count':_0x419c4d['filePath'+'s'][_0x27bc78(0x13b)],'paths':_0x419c4d[_0x27bc78(0xbc)+'s'][_0x27bc78(0xe0)](toHomePath)}),{'canceled':_0x419c4d[_0x27bc78(0xd2)],'paths':_0x419c4d[_0x27bc78(0xbc)+'s']};}),_0x289766(_0xeea2b7(0x1b9)+'e:direct'+_0xeea2b7(0x189),()=>_0x241966()[_0xeea2b7(0x1b9)+'e'][_0xeea2b7(0x122)+_0xeea2b7(0xe7)]()),_0x289766(_0xeea2b7(0x1b9)+_0xeea2b7(0x1ab)+_0xeea2b7(0x17e),async()=>{const _0x1759ce=_0xeea2b7,_0x5e5432=await _0x241966()[_0x1759ce(0x1b9)+'e']['director'+'yInfo']();return await shell[_0x1759ce(0x1a7)](_0x5e5432[_0x1759ce(0x183)]),filesLogger?.['info'](_0x1759ce(0x1b9)+'e\x20direct'+_0x1759ce(0xe4)+'ed',{'path':toHomePath(_0x5e5432[_0x1759ce(0x183)])}),{'ok':!![],'path':_0x5e5432[_0x1759ce(0x183)]};}),_0x289766(_0xeea2b7(0x1b9)+'e:shared'+_0xeea2b7(0x133),()=>_0x241966()['workspac'+'e'][_0xeea2b7(0x165)+'ntext']()),_0x289766(_0xeea2b7(0x1b9)+_0xeea2b7(0xe1)+_0xeea2b7(0xc4)+_0xeea2b7(0xcc),(_0x5833f1,_0xb60b36)=>_0x241966()['workspac'+'e'][_0xeea2b7(0x163)+'redConte'+'xt'](_0xb60b36)),_0x289766(_0xeea2b7(0x1c7)+_0xeea2b7(0x169),(_0x3fba6f,_0xffcfd6)=>_0x241966()[_0xeea2b7(0x1c7)][_0xeea2b7(0x143)](_0xffcfd6)),_0x289766(_0xeea2b7(0x1c7)+_0xeea2b7(0xdf)+_0xeea2b7(0xf5),()=>_0x241966()[_0xeea2b7(0x1c7)][_0xeea2b7(0x1ae)+'ys']()),_0x289766('sessions'+':set-pin'+_0xeea2b7(0x1bf),(_0x29680a,_0x4e5f54)=>_0x241966()[_0xeea2b7(0x1c7)][_0xeea2b7(0x147)+_0xeea2b7(0x1c9)](_0x4e5f54)),_0x289766(_0xeea2b7(0x1a3)+_0xeea2b7(0x156),(_0x575c9e,_0x1860bd)=>_0x241966()[_0xeea2b7(0xd0)]['install'](_0x1860bd)),_0x289766(_0xeea2b7(0x18d)+_0xeea2b7(0xb8),(_0x4851b5,_0x1feb10)=>_0x241966()[_0xeea2b7(0xd0)][_0xeea2b7(0x172)](_0x1feb10)),_0x289766('skills:d'+'elete',(_0x4bbd4c,_0x11d24b)=>_0x241966()[_0xeea2b7(0xd0)][_0xeea2b7(0xce)](_0x11d24b)),_0x289766(_0xeea2b7(0xb5)+'t',(_0x1749a0,_0x44e72a)=>_0x241966()[_0xeea2b7(0x111)][_0xeea2b7(0x1a1)](_0x44e72a)),_0x289766('cron:cre'+_0xeea2b7(0xdc),(_0x146705,_0x5bd50d)=>_0x241966()['cron'][_0xeea2b7(0xc8)](_0x5bd50d)),_0x289766(_0xeea2b7(0x154)+_0xeea2b7(0xdc),(_0xe60de7,_0x268961)=>_0x241966()[_0xeea2b7(0x111)][_0xeea2b7(0x172)](_0x268961)),_0x289766('cron:rem'+'ove',(_0x256ab2,_0x68f696)=>_0x241966()[_0xeea2b7(0x111)]['remove'](_0x68f696)),_0x289766(_0xeea2b7(0x12c)+_0xeea2b7(0xca),(_0x56f932,_0x5f1aec)=>_0x241966()[_0xeea2b7(0x111)][_0xeea2b7(0x166)](_0x5f1aec)),_0x289766(_0xeea2b7(0x18f)+'s',(_0x52a1bc,_0x1e5b60)=>_0x241966()[_0xeea2b7(0x111)][_0xeea2b7(0x1c3)](_0x1e5b60)),_0x289766(_0xeea2b7(0x186)+'ettings',()=>_0x241966()['models'][_0xeea2b7(0xcb)]()),_0x289766(_0xeea2b7(0x186)+'et-setti'+_0xeea2b7(0x135),(_0x11c3e5,_0x3edaeb)=>_0x241966()[_0xeea2b7(0xd3)][_0xeea2b7(0x1a0)+_0xeea2b7(0x135)](_0x3edaeb)),_0x289766(_0xeea2b7(0x186)+_0xeea2b7(0x121)+_0xeea2b7(0xb3),(_0x555e2a,_0x459754)=>_0x241966()[_0xeea2b7(0xd3)][_0xeea2b7(0x1af)+_0xeea2b7(0xda)+'odels'](_0x459754)),_0x289766(_0xeea2b7(0x186)+_0xeea2b7(0x1c1)+_0xeea2b7(0x127),()=>_0x241966()['models']['selected'+_0xeea2b7(0xb0)]()),_0x289766('models:c'+_0xeea2b7(0x199)+_0xeea2b7(0xc3),()=>_0x241966()['models']['customMo'+_0xeea2b7(0xc3)]()),_0x289766(_0xeea2b7(0x106)+'ead',()=>_0x241966()['config']['read']());}async function boot(){const _0x216875=_0x11c6d2;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x216875(0x1b2)](shellConfig[_0x216875(0x16b)+_0x216875(0x174)]),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x216875(0xf7)],_0x216875(0xc6)),ipcLogger=createShellLogger(configController['paths'],_0x216875(0x112)),filesLogger=createShellLogger(configController['paths'],'files'),rendererLogger=createShellLogger(configController[_0x216875(0xf7)],_0x216875(0x104)),registerProcessLogHooks(),mainLogger?.[_0x216875(0x1bb)](_0x216875(0x164)+_0x216875(0x1b5)+_0x216875(0x191)+'ed',{'appVersion':app['getVersi'+'on'](),'electronVersion':process[_0x216875(0x10c)][_0x216875(0x164)],'nodeVersion':process[_0x216875(0x10c)][_0x216875(0x14f)],'chromeVersion':process[_0x216875(0x10c)][_0x216875(0x10b)],'platform':process[_0x216875(0x1be)],'arch':process[_0x216875(0x1a4)],'mode':getMode(),'projectRoot':shellConfig[_0x216875(0xcd)+'oot'],'configPath':shellConfig[_0x216875(0x1a2)+'th'],'dataDir':shellConfig['dataDir'],'logsDir':configController[_0x216875(0xf7)]['logsDir'],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x216875(0xcd)+_0x216875(0x195)],_0x216875(0x124),_0x216875(0x173)+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x216875(0xf1)+'on']()});for(const _0x37919c of[_0x216875(0x1a8)+_0x216875(0x109),'gateway-'+_0x216875(0x14c),_0x216875(0x148)+_0x216875(0x116)+'t',_0x216875(0xc0)+'updated',_0x216875(0x19d)+_0x216875(0x101),'agents-u'+_0x216875(0xc2),_0x216875(0x115)+_0x216875(0x15b)+'n']){gatewayController['on'](_0x37919c,_0x970612=>broadcast(_0x37919c,_0x970612));}installIpcHandlers(),registerShellShortcuts(),await createWindow(),await gatewayController['start'](),mainLogger?.['info'](_0x216875(0x164)+_0x216875(0x1b5)+_0x216875(0xb2)+_0x216875(0x193));}function registerProcessLogHooks(){const _0x149ae9=_0x11c6d2;if(registerProcessLogHooks[_0x149ae9(0xee)+'ed'])return;registerProcessLogHooks[_0x149ae9(0xee)+'ed']=!![],process['on'](_0x149ae9(0x1ca)+_0x149ae9(0x19b)+'n',_0x43183c=>{const _0x47349b=_0x149ae9;mainLogger?.['error'](_0x47349b(0x1ca)+_0x47349b(0x1a9)+'on',summarizeError(_0x43183c));}),process['on'](_0x149ae9(0x11a)+_0x149ae9(0xd4)+'on',_0x2b8899=>{const _0x4a22e5=_0x149ae9;mainLogger?.[_0x4a22e5(0x13f)](_0x4a22e5(0x11a)+_0x4a22e5(0x103)+'ion',summarizeError(_0x2b8899));}),app['on']('render-p'+_0x149ae9(0xe2)+_0x149ae9(0x151),(_0x516930,_0x3ace5e,_0xafc4d6)=>{const _0x27e8c3=_0x149ae9;mainLogger?.[_0x27e8c3(0x13f)]('renderer'+_0x27e8c3(0x171)+_0x27e8c3(0xb6),{'url':_0x3ace5e['getURL'](),'details':_0xafc4d6});}),app['on'](_0x149ae9(0x108)+_0x149ae9(0xff)+'ne',(_0x5ab3aa,_0x40d681)=>{const _0x30d606=_0x149ae9;mainLogger?.[_0x30d606(0x13f)]('child\x20pr'+_0x30d606(0x179)+'ne',{'details':_0x40d681});});}app['on'](_0x11c6d2(0x1c6)+_0x11c6d2(0x11e)+'d',()=>{const _0x48975c=_0x11c6d2;if(process[_0x48975c(0x1be)]!==_0x48975c(0xd1))app[_0x48975c(0x152)]();}),app['on'](_0x11c6d2(0x1a5),async()=>{const _0x432bd4=_0x11c6d2;BrowserWindow['getAllWi'+_0x432bd4(0x11f)]()[_0x432bd4(0x13b)]===0x0&&shellConfig&&await createWindow();}),app['on']('before-q'+'uit',_0x1cf8c3=>{const _0x573541=_0x11c6d2;if(!gatewayController)return;mainLogger?.[_0x573541(0x1bb)](_0x573541(0xaf)+_0x573541(0x123)+'pping\x20ga'+'teway'),_0x1cf8c3[_0x573541(0x118)+_0x573541(0x12e)](),void gatewayController[_0x573541(0xec)]()[_0x573541(0x15c)](()=>{const _0x289a02=_0x573541;gatewayController=null,mainLogger?.['info'](_0x289a02(0x126)+_0x289a02(0x10a)+_0x289a02(0xaf)+_0x289a02(0x12b)),app[_0x289a02(0x152)]();});}),app['on'](_0x11c6d2(0x197)+'t',()=>{globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x11c6d2(0x16e)+'y']()[_0x11c6d2(0xd8)](boot)[_0x11c6d2(0xc7)](_0x46122e=>{const _0x13fd42=_0x11c6d2;bootError=_0x46122e instanceof Error?_0x46122e['message']:String(_0x46122e),mainLogger?.['error'](_0x13fd42(0x164)+_0x13fd42(0x1b5)+_0x13fd42(0x180)+'d',summarizeError(_0x46122e)),console[_0x13fd42(0x13f)](_0x13fd42(0x12f)+_0x13fd42(0xf2)+_0x13fd42(0x1c2)+_0x13fd42(0xbe)+'ctron\x20ma'+'in',_0x46122e);});
1
+ const _0x4723b7=_0x4a72;(function(_0x436912,_0x366c18){const _0x3175f2=_0x4a72,_0x216284=_0x436912();while(!![]){try{const _0xc9cdd6=-parseInt(_0x3175f2(0x1c8))/0x1*(-parseInt(_0x3175f2(0x1e0))/0x2)+parseInt(_0x3175f2(0x119))/0x3*(parseInt(_0x3175f2(0x204))/0x4)+-parseInt(_0x3175f2(0xf1))/0x5*(-parseInt(_0x3175f2(0x21c))/0x6)+parseInt(_0x3175f2(0x229))/0x7*(-parseInt(_0x3175f2(0x112))/0x8)+parseInt(_0x3175f2(0x183))/0x9+parseInt(_0x3175f2(0x149))/0xa+-parseInt(_0x3175f2(0x11f))/0xb;if(_0xc9cdd6===_0x366c18)break;else _0x216284['push'](_0x216284['shift']());}catch(_0x40a63f){_0x216284['push'](_0x216284['shift']());}}}(_0x4a12,0xf3229));import _0x169d1d from'electron';import{fileURLToPath}from'node:url';import{dirname,join,resolve}from'node:path';import{existsSync}from'node:fs';import{readFile,readdir,stat,writeFile}from'node:fs/promises';import{spawn}from'node:child_process';import{loadShellConfig}from'@wujie-shell/config';import{createConfigController}from'../config-controller.mjs';import{createGatewayController}from'../gateway-controller.mjs';import{createShellLogger,exportLogsArchive,summarizeError,summarizePayload,summarizeText,toHomePath}from'../logging.mjs';import{resolveRuntimeRoot}from'../runtime.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,_0x4723b7(0x128)+_0x4723b7(0x21e)),{app,BrowserWindow,dialog,globalShortcut,ipcMain,shell}=_0x169d1d,DEVTOOLS_ACCELERATOR=_0x4723b7(0x108)+_0x4723b7(0xd9)+_0x4723b7(0x13f);let mainWindow=null,shellConfig=null,configController=null,gatewayController=null,bootError=null,mainLogger=null,ipcLogger=null,filesLogger=null,rendererLogger=null;function getMode(){const _0x53f7e2=_0x4723b7;return process.env.VITE_DEV_SERVER_URL?_0x53f7e2(0x21a):_0x53f7e2(0x13a);}function resolveProjectRoot(){return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT||process['cwd']());}function broadcast(_0x410a2f,_0x2ee768){const _0x522375=_0x4723b7;for(const _0xc4b04 of BrowserWindow[_0x522375(0x1ed)+'ndows']()){!_0xc4b04['webConte'+_0x522375(0x1e1)][_0x522375(0x1a8)+_0x522375(0x1ab)]()&&_0xc4b04['webConte'+_0x522375(0x1e1)][_0x522375(0x1f3)]('wujie-sh'+'ell:even'+'t',{'name':_0x410a2f,'payload':_0x2ee768});}}function openDevToolsForActiveContext(){const _0x2586ce=_0x4723b7,_0x5d50d4=BrowserWindow['getFocus'+_0x2586ce(0x251)]()||mainWindow;if(!_0x5d50d4||_0x5d50d4[_0x2586ce(0x1a8)+_0x2586ce(0x1ab)]())return{'ok':![]};return _0x5d50d4[_0x2586ce(0x131)+_0x2586ce(0x1e1)][_0x2586ce(0x105)+'ools']({'mode':_0x2586ce(0x1f7)}),_0x5d50d4[_0x2586ce(0x131)+_0x2586ce(0x1e1)]['send'](_0x2586ce(0x15d)+_0x2586ce(0xde)+'t',{'name':_0x2586ce(0x221)+_0x2586ce(0x168)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x15bd12=_0x4723b7;globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);const _0x266039=globalShortcut[_0x15bd12(0x1ff)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x266039&&console[_0x15bd12(0x22f)](_0x15bd12(0x20a)+'hell]\x20fa'+_0x15bd12(0x1b1)+_0x15bd12(0x1ff)+'\x20shortcu'+'t:\x20'+DEVTOOLS_ACCELERATOR);}async function createWindow(){const _0x31c2c0=_0x4723b7,_0x4fa422=process.env.VITE_DEV_SERVER_URL||join(shellConfig['projectR'+_0x31c2c0(0x23c)],_0x31c2c0(0x1e8),'index.ht'+'ml'),_0x1093ab=process[_0x31c2c0(0xf5)]===_0x31c2c0(0x15a);mainLogger?.[_0x31c2c0(0xf3)](_0x31c2c0(0xe4)+_0x31c2c0(0x202)+_0x31c2c0(0x226),{'rendererUrl':_0x4fa422,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x31c2c0(0x1e6)+_0x31c2c0(0x114)],'backgroundColor':_0x1093ab?_0x31c2c0(0x1d4)+'0':_0x31c2c0(0x14b),'titleBarStyle':_0x1093ab?'hiddenIn'+'set':_0x31c2c0(0xdf),..._0x1093ab?{'trafficLightPosition':{'x':0x12,'y':0x16}}:{},..._0x1093ab?{'vibrancy':_0x31c2c0(0xfe)}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}});const _0x257c26=process.env.VITE_DEV_SERVER_URL;_0x257c26?(await mainWindow[_0x31c2c0(0x22e)](_0x257c26),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow['webConte'+_0x31c2c0(0x1e1)][_0x31c2c0(0x105)+_0x31c2c0(0xdb)]({'mode':'detach'})):await mainWindow[_0x31c2c0(0x14c)](join(shellConfig[_0x31c2c0(0x122)+_0x31c2c0(0x23c)],'dist','index.ht'+'ml')),mainLogger?.[_0x31c2c0(0xf3)](_0x31c2c0(0x1ee)+_0x31c2c0(0x20d)+'ed',{'rendererUrl':_0x4fa422,'mode':getMode()});}function installIpcHandlers(){const _0x3f09d7=_0x4723b7,_0x5a0d83=(_0x50ece4,_0x320c78)=>{const _0x2159b4=_0x4a72;ipcMain[_0x2159b4(0x247)](_0x50ece4,async(_0x39c96e,_0x38235c)=>{const _0xee4533=_0x2159b4,_0x541e9c=Date[_0xee4533(0x24f)](),_0x190cbd=_0x39c96e['senderFr'+_0xee4533(0x114)]?.[_0xee4533(0x127)]||_0x39c96e[_0xee4533(0x22c)]['getURL']();ipcLogger?.[_0xee4533(0xf3)]('ipc\x20requ'+_0xee4533(0xf2)+_0xee4533(0x23d),{'channel':_0x50ece4,'senderUrl':_0x190cbd,'payload':summarizePayload(_0x38235c)});try{const _0x4738c5=await _0x320c78(_0x39c96e,_0x38235c);return ipcLogger?.[_0xee4533(0xf3)](_0xee4533(0x113)+'est\x20comp'+_0xee4533(0x228),{'channel':_0x50ece4,'durationMs':Date['now']()-_0x541e9c,'result':summarizePayload(_0x4738c5,{'maxDepth':0x2})}),_0x4738c5;}catch(_0x40f9be){ipcLogger?.['error'](_0xee4533(0x113)+_0xee4533(0x140)+'ed',{'channel':_0x50ece4,'durationMs':Date[_0xee4533(0x24f)]()-_0x541e9c,'error':summarizeError(_0x40f9be)});throw _0x40f9be;}});},_0x5951dc=()=>{const _0x41a3d6=_0x4a72;if(!gatewayController)throw new Error(bootError?_0x41a3d6(0x15d)+_0x41a3d6(0x185)+_0x41a3d6(0x14a)+'\x20'+bootError:_0x41a3d6(0x15d)+_0x41a3d6(0x1f2)+'way\x20is\x20n'+_0x41a3d6(0x1a9)+_0x41a3d6(0x178));return gatewayController;};_0x5a0d83(_0x3f09d7(0x206),async()=>({'name':shellConfig['productN'+_0x3f09d7(0x114)],'version':app[_0x3f09d7(0x1d2)+'on'](),'appId':shellConfig['appId'],'dataDir':shellConfig[_0x3f09d7(0xe7)]})),_0x5a0d83(_0x3f09d7(0x100)+_0x3f09d7(0x1aa),async(_0x3987fa,_0xf63413)=>{const _0x3ead8c=_0x3f09d7,_0x427256=typeof _0xf63413===_0x3ead8c(0x20b)?_0xf63413:'';if(!_0x427256)return{'ok':![]};return filesLogger?.['info'](_0x3ead8c(0x106)+_0x3ead8c(0x1bc)+_0x3ead8c(0x215)+_0x3ead8c(0x23d),{'url':summarizeText(_0x427256,0xa0)}),await shell[_0x3ead8c(0x1a4)+_0x3ead8c(0xee)](_0x427256),{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0xe0)+_0x3f09d7(0x10a),_0x6708ed=>{const _0x1859c7=_0x3f09d7;return BrowserWindow['fromWebC'+_0x1859c7(0x22b)](_0x6708ed['sender'])?.['minimize'](),{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0xea)+_0x3f09d7(0x1dc)+_0x3f09d7(0x150),_0x1cfb3b=>{const _0x4568c9=_0x3f09d7,_0x24cf15=BrowserWindow[_0x4568c9(0x1b2)+_0x4568c9(0x22b)](_0x1cfb3b[_0x4568c9(0x22c)]);if(!_0x24cf15)return{'isMaximized':![]};if(_0x24cf15['isMaximi'+_0x4568c9(0x152)]())_0x24cf15[_0x4568c9(0x22d)+'ze']();else _0x24cf15[_0x4568c9(0xe8)]();return{'isMaximized':_0x24cf15[_0x4568c9(0x1de)+_0x4568c9(0x152)]()};}),_0x5a0d83(_0x3f09d7(0x1b6)+_0x3f09d7(0x11d),_0x42ff48=>{const _0x1ef947=_0x3f09d7;return BrowserWindow[_0x1ef947(0x1b2)+_0x1ef947(0x22b)](_0x42ff48[_0x1ef947(0x22c)])?.[_0x1ef947(0x18a)](),{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0x1f8)+_0x3f09d7(0x197)+_0x3f09d7(0xdb),()=>openDevToolsForActiveContext()),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0xf0)+'-info',()=>_0x5951dc()[_0x3f09d7(0x16b)+_0x3f09d7(0x16e)]()),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0xd6)+_0x3f09d7(0x1e5),()=>_0x5951dc()[_0x3f09d7(0x1c2)+'s']()),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0xd6)+_0x3f09d7(0x24d),()=>_0x5951dc()['restart'](_0x3f09d7(0x165)+'\x20request')),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0xd6)+'-logs',(_0x2c5491,_0x73001b={})=>_0x5951dc()[_0x3f09d7(0x243)+_0x3f09d7(0x151)](_0x73001b?.[_0x3f09d7(0x17e)]??0xc8)),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0x171)+_0x3f09d7(0x23f)+_0x3f09d7(0x1a7)+'n',(_0x332859,_0x3ac52a)=>_0x5951dc()['answerAs'+_0x3f09d7(0x24b)+_0x3f09d7(0x103)](_0x3ac52a)),_0x5a0d83('openclaw'+_0x3f09d7(0x12d)+'i-window',async()=>{const _0x56b84f=_0x3f09d7,_0x5cafca=join(resolveRuntimeRoot(shellConfig[_0x56b84f(0x122)+'oot']),_0x56b84f(0x18e),_0x56b84f(0x242)+'w');if(!existsSync(_0x5cafca))throw new Error(_0x56b84f(0x1d6)+'\x20CLI\x20wra'+_0x56b84f(0x13c)+_0x56b84f(0x209)+_0x5cafca+(_0x56b84f(0x1a5)+_0x56b84f(0x249)+_0x56b84f(0x1c5)+_0x56b84f(0x15f)));const _0x4155ac=join(app[_0x56b84f(0x154)](_0x56b84f(0x1e4)),_0x56b84f(0x15d)+_0x56b84f(0x19a)+_0x56b84f(0x20e));await writeFile(_0x4155ac,_0x56b84f(0x179)+_0x56b84f(0x10e)+_0x5cafca[_0x56b84f(0x143)](/\\/g,'\x5c\x5c')[_0x56b84f(0x143)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x19a5c4=spawn(_0x56b84f(0x1b5),['-a',_0x56b84f(0x1c9),_0x4155ac],{'detached':!![],'stdio':_0x56b84f(0x1f5)});return _0x19a5c4[_0x56b84f(0x110)](),{'ok':!![],'cliPath':_0x5cafca};}),_0x5a0d83(_0x3f09d7(0x174)+_0x3f09d7(0x144),()=>_0x5951dc()[_0x3f09d7(0x123)]['list']()),_0x5a0d83(_0x3f09d7(0xd7)+_0x3f09d7(0x1a2),(_0x204511,_0x23f283)=>_0x5951dc()[_0x3f09d7(0x1ba)][_0x3f09d7(0x241)](_0x23f283)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x101),(_0x3340e7,_0x5c83c4)=>_0x5951dc()['sessions'][_0x3f09d7(0x191)](_0x5c83c4)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x23a),(_0x483636,_0xde449a)=>_0x5951dc()[_0x3f09d7(0x227)][_0x3f09d7(0x1b4)](_0xde449a)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x177),(_0x2a25cd,_0x4ef436)=>_0x5951dc()['sessions'][_0x3f09d7(0x240)](_0x4ef436)),_0x5a0d83(_0x3f09d7(0x1fb)+'eam',(_0x90269d,_0x3b249b)=>_0x5951dc()[_0x3f09d7(0x245)][_0x3f09d7(0x13d)](_0x3b249b)),_0x5a0d83(_0x3f09d7(0x14d)+'rt',(_0x4ed5b2,_0x3fffdb)=>_0x5951dc()['chat'][_0x3f09d7(0x1fd)](_0x3fffdb)),_0x5a0d83(_0x3f09d7(0x1b9)+_0x3f09d7(0x220),(_0x7140b,_0x1e4649)=>_0x5951dc()[_0x3f09d7(0x245)][_0x3f09d7(0xfb)](_0x1e4649)),_0x5a0d83(_0x3f09d7(0x233)+'te',async(_0x1b7170,_0x4e605a={})=>{const _0x101152=_0x3f09d7,_0x1736b0=typeof _0x4e605a[_0x101152(0x216)]===_0x101152(0x20b)?_0x4e605a['level']:_0x101152(0xf3),_0x5b8ab6=typeof _0x4e605a[_0x101152(0x192)]===_0x101152(0x20b)?_0x4e605a[_0x101152(0x192)]:'renderer'+'\x20log',_0x129ea9=typeof _0x4e605a['context']===_0x101152(0x20b)&&_0x4e605a[_0x101152(0x1c1)][_0x101152(0x16d)]()?'renderer'+':'+_0x4e605a[_0x101152(0x1c1)][_0x101152(0x16d)]():_0x101152(0x165),_0x670b90=_0x4e605a[_0x101152(0x1ad)]&&typeof _0x4e605a[_0x101152(0x1ad)]===_0x101152(0x1cf)?summarizePayload(_0x4e605a['meta']):undefined,_0x5c7d63=rendererLogger;if(_0x5c7d63?.[_0x1736b0])await _0x5c7d63[_0x1736b0](_0x5b8ab6,_0x670b90);else await _0x5c7d63?.['info'](_0x5b8ab6,_0x670b90);return{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0x109)+_0x3f09d7(0x1fe),async(_0xaa770a,_0x3d1210={})=>{const _0x412928=_0x3f09d7,_0x57b909=typeof _0x3d1210[_0x412928(0x1ef)+'r']===_0x412928(0x20b)&&_0x3d1210[_0x412928(0x1ef)+'r'][_0x412928(0x16d)]()?_0x3d1210[_0x412928(0x1ef)+'r']:undefined,_0x23698f=await exportLogsArchive({'logsDir':configController[_0x412928(0x159)][_0x412928(0x230)],'targetDir':_0x57b909,'appVersion':app['getVersi'+'on']()});return mainLogger?.[_0x412928(0xf3)](_0x412928(0xf6)+'orted',{'path':toHomePath(_0x23698f[_0x412928(0x115)])}),_0x23698f;}),_0x5a0d83(_0x3f09d7(0xe9)+'n-direct'+'ory',async()=>{const _0xb9cd3e=_0x3f09d7;return await shell[_0xb9cd3e(0x11e)](configController[_0xb9cd3e(0x159)][_0xb9cd3e(0x230)]),mainLogger?.[_0xb9cd3e(0xf3)](_0xb9cd3e(0x11b)+_0xb9cd3e(0x1e2)+'pened',{'logsDir':toHomePath(configController[_0xb9cd3e(0x159)][_0xb9cd3e(0x230)])}),{'ok':!![],'path':configController[_0xb9cd3e(0x159)][_0xb9cd3e(0x230)]};}),_0x5a0d83(_0x3f09d7(0x102)+'ad',async(_0x52c1ae,_0x39719d)=>{const _0x47720f=_0x3f09d7,_0x493e96=Date[_0x47720f(0x24f)]();try{const _0x4285df=await readFile(_0x39719d,_0x47720f(0x162));return filesLogger?.[_0x47720f(0xf3)](_0x47720f(0xf7)+_0x47720f(0x196)+_0x47720f(0x23d),{'path':toHomePath(_0x39719d),'bytes':Buffer[_0x47720f(0x1c4)+'th'](_0x4285df),'durationMs':Date[_0x47720f(0x24f)]()-_0x493e96}),_0x4285df;}catch(_0x82c413){filesLogger?.[_0x47720f(0x1d5)](_0x47720f(0xf7)+_0x47720f(0x182),{'path':toHomePath(_0x39719d),'durationMs':Date[_0x47720f(0x24f)]()-_0x493e96,'error':summarizeError(_0x82c413)});throw _0x82c413;}}),_0x5a0d83('files:re'+_0x3f09d7(0x12e)+'y',async(_0x398792,_0x5c459c)=>{const _0x4ab393=_0x3f09d7,_0x361860=Date[_0x4ab393(0x24f)]();try{const _0x2cc034=await readFile(_0x5c459c);return filesLogger?.[_0x4ab393(0xf3)](_0x4ab393(0x175)+'ile\x20read'+'\x20complet'+'ed',{'path':toHomePath(_0x5c459c),'bytes':_0x2cc034[_0x4ab393(0x1c4)+'th'],'durationMs':Date['now']()-_0x361860}),new Uint8Array(_0x2cc034);}catch(_0x4591b8){filesLogger?.[_0x4ab393(0x1d5)]('binary\x20f'+'ile\x20read'+_0x4ab393(0x141),{'path':toHomePath(_0x5c459c),'durationMs':Date[_0x4ab393(0x24f)]()-_0x361860,'error':summarizeError(_0x4591b8)});throw _0x4591b8;}}),_0x5a0d83('files:wr'+_0x3f09d7(0x1ce),async(_0x1575b1,_0x184d3e={})=>{const _0x45bb3a=_0x3f09d7,_0x1d0775=Date['now']();return await writeFile(_0x184d3e[_0x45bb3a(0x115)],_0x184d3e['content']??'','utf8'),filesLogger?.[_0x45bb3a(0xf3)](_0x45bb3a(0x133)+_0x45bb3a(0x24c)+'eted',{'path':toHomePath(_0x184d3e[_0x45bb3a(0x115)]),'bytes':Buffer['byteLeng'+'th'](String(_0x184d3e[_0x45bb3a(0x1b3)]??'')),'durationMs':Date[_0x45bb3a(0x24f)]()-_0x1d0775}),{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0xdc)+_0x3f09d7(0xf4)+'ry',async(_0x21b5f2,_0x54c319={})=>{const _0xf2cee4=_0x3f09d7,_0xbaf394=Date[_0xf2cee4(0x24f)]();await writeFile(_0x54c319[_0xf2cee4(0x115)],Buffer[_0xf2cee4(0x1cc)](_0x54c319[_0xf2cee4(0x1b3)]??[]));const _0x3fcda0=await stat(_0x54c319[_0xf2cee4(0x115)])[_0xf2cee4(0x24e)](()=>null);return filesLogger?.['info'](_0xf2cee4(0x175)+_0xf2cee4(0x1a0)+'e\x20comple'+_0xf2cee4(0x23d),{'path':toHomePath(_0x54c319[_0xf2cee4(0x115)]),'bytes':_0x3fcda0?.[_0xf2cee4(0x246)]??0x0,'durationMs':Date[_0xf2cee4(0x24f)]()-_0xbaf394}),{'ok':!![]};}),_0x5a0d83('files:se'+_0x3f09d7(0x142)+'e',async(_0x254223,_0x125a83={})=>{const _0x36dd01=_0x3f09d7,_0x583c50=await dialog['showOpen'+'Dialog'](BrowserWindow[_0x36dd01(0x1b2)+'ontents'](_0x254223[_0x36dd01(0x22c)])??mainWindow,{'title':typeof _0x125a83[_0x36dd01(0xd5)]===_0x36dd01(0x20b)?_0x125a83[_0x36dd01(0xd5)]:undefined,'properties':[_0x36dd01(0xe6),..._0x125a83[_0x36dd01(0x1a1)+_0x36dd01(0x1c0)]?[_0x36dd01(0x1a1)+_0x36dd01(0x1c0)]:[]],'filters':Array[_0x36dd01(0x16a)](_0x125a83[_0x36dd01(0x218)])?_0x125a83[_0x36dd01(0x218)]:undefined});return filesLogger?.[_0x36dd01(0xf3)]('select\x20f'+'ile\x20comp'+_0x36dd01(0x228),{'canceled':_0x583c50['canceled'],'count':_0x583c50[_0x36dd01(0xe5)+'s'][_0x36dd01(0x145)],'paths':_0x583c50[_0x36dd01(0xe5)+'s'][_0x36dd01(0x1c7)](toHomePath)}),{'canceled':_0x583c50[_0x36dd01(0x1db)],'paths':_0x583c50[_0x36dd01(0xe5)+'s']};}),_0x5a0d83(_0x3f09d7(0x188)+'st-direc'+_0x3f09d7(0x220),async(_0x23bee0,_0x1ed275={})=>{const _0x3f170b=_0x3f09d7,_0x317980=resolve(String(_0x1ed275[_0x3f170b(0x115)]||'')),_0x5a9daa=_0x1ed275[_0x3f170b(0x189)+'e']!==![],_0x1a6e25=Array['isArray'](_0x1ed275[_0x3f170b(0x158)+'ns'])?_0x1ed275[_0x3f170b(0x158)+'ns'][_0x3f170b(0x1c7)](_0x57dfb1=>String(_0x57dfb1)[_0x3f170b(0x20c)+_0x3f170b(0x181)]()[_0x3f170b(0x143)](/^\./,''))[_0x3f170b(0x10f)](Boolean):null,_0x300f5c=Number[_0x3f170b(0x1f0)+'r'](_0x1ed275[_0x3f170b(0x198)+'es'])&&_0x1ed275['maxEntri'+'es']>0x0?_0x1ed275[_0x3f170b(0x198)+'es']:0xc350,_0x5dc662=[];let _0x4dbcf5=![];async function _0x5e478a(_0x35e3bc){const _0x2113f6=_0x3f170b;if(_0x4dbcf5)return;let _0x1d1c74;try{_0x1d1c74=await readdir(_0x35e3bc,{'withFileTypes':!![]});}catch{return;}for(const _0x4716ae of _0x1d1c74){if(_0x4dbcf5)return;if(_0x4716ae['name']['startsWi'+'th']('.'))continue;const _0x3e7f57=join(_0x35e3bc,_0x4716ae[_0x2113f6(0x217)]);if(_0x4716ae[_0x2113f6(0xe1)+'ory']()){if(_0x5a9daa)await _0x5e478a(_0x3e7f57);continue;}if(!_0x4716ae[_0x2113f6(0x132)]())continue;if(_0x1a6e25){const _0x4a284f=_0x4716ae[_0x2113f6(0x217)][_0x2113f6(0x19d)+'xOf']('.'),_0x2f62a3=_0x4a284f>=0x0?_0x4716ae[_0x2113f6(0x217)][_0x2113f6(0x1b8)](_0x4a284f+0x1)[_0x2113f6(0x20c)+'ase']():'';if(!_0x1a6e25['includes'](_0x2f62a3))continue;}if(_0x5dc662['length']>=_0x300f5c){_0x4dbcf5=!![];return;}_0x5dc662[_0x2113f6(0x21d)]({'name':_0x4716ae[_0x2113f6(0x217)],'path':_0x3e7f57});}}return await _0x5e478a(_0x317980),{'path':_0x317980,'entries':_0x5dc662,'truncated':_0x4dbcf5};}),_0x5a0d83(_0x3f09d7(0x1cd)+_0x3f09d7(0x166)+_0x3f09d7(0x118),async(_0x3877e2,_0x3800c5={})=>{const _0x562409=_0x3f09d7,_0x4db3d4=await dialog[_0x562409(0x1c6)+_0x562409(0x12b)](BrowserWindow[_0x562409(0x1b2)+_0x562409(0x22b)](_0x3877e2[_0x562409(0x22c)])??mainWindow,{'title':typeof _0x3800c5[_0x562409(0xd5)]===_0x562409(0x20b)?_0x3800c5['title']:undefined,'properties':[_0x562409(0x11c)+'ctory']});return filesLogger?.['info']('select\x20d'+'irectory'+_0x562409(0x194)+'ed',{'canceled':_0x4db3d4[_0x562409(0x1db)],'count':_0x4db3d4['filePath'+'s'][_0x562409(0x145)],'paths':_0x4db3d4[_0x562409(0xe5)+'s'][_0x562409(0x1c7)](toHomePath)}),{'canceled':_0x4db3d4[_0x562409(0x1db)],'paths':_0x4db3d4[_0x562409(0xe5)+'s']};}),_0x5a0d83(_0x3f09d7(0xd8)+_0x3f09d7(0x187)+'ory-info',()=>_0x5951dc()[_0x3f09d7(0xd8)+'e'][_0x3f09d7(0x223)+_0x3f09d7(0xf9)]()),_0x5a0d83(_0x3f09d7(0xd8)+'e:open-d'+_0x3f09d7(0x199),async()=>{const _0x4c8134=_0x3f09d7,_0x3712e6=await _0x5951dc()[_0x4c8134(0xd8)+'e']['director'+_0x4c8134(0xf9)]();return await shell[_0x4c8134(0x11e)](_0x3712e6[_0x4c8134(0x115)]),filesLogger?.[_0x4c8134(0xf3)](_0x4c8134(0xd8)+_0x4c8134(0x203)+_0x4c8134(0x20f)+'ed',{'path':toHomePath(_0x3712e6[_0x4c8134(0x115)])}),{'ok':!![],'path':_0x3712e6['path']};}),_0x5a0d83('workspac'+_0x3f09d7(0x10c)+'-context',()=>_0x5951dc()[_0x3f09d7(0xd8)+'e'][_0x3f09d7(0x250)+'ntext']()),_0x5a0d83(_0x3f09d7(0xd8)+_0x3f09d7(0x125)+_0x3f09d7(0x18d)+_0x3f09d7(0x211),(_0x398400,_0x24a29c)=>_0x5951dc()['workspac'+'e']['writeSha'+_0x3f09d7(0xe3)+'xt'](_0x24a29c)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x170),(_0x2e6cf7,_0x19ff99)=>_0x5951dc()[_0x3f09d7(0x227)][_0x3f09d7(0x148)](_0x19ff99)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x161)+_0x3f09d7(0x1bd),()=>_0x5951dc()[_0x3f09d7(0x227)][_0x3f09d7(0x193)+'ys']()),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x134)+_0x3f09d7(0x1b0),(_0x3f332b,_0x1bd94c)=>_0x5951dc()[_0x3f09d7(0x227)][_0x3f09d7(0x136)+_0x3f09d7(0x222)](_0x1bd94c)),_0x5a0d83(_0x3f09d7(0x10b)+_0x3f09d7(0x120),(_0x1137be,_0xca585a)=>_0x5951dc()[_0x3f09d7(0x1ba)]['install'](_0xca585a)),_0x5a0d83(_0x3f09d7(0xeb)+_0x3f09d7(0x126),(_0x1872f7,_0x2927b5)=>_0x5951dc()['skills']['update'](_0x2927b5)),_0x5a0d83(_0x3f09d7(0x21b)+_0x3f09d7(0x248),(_0x277ba2,_0x3b556f)=>_0x5951dc()[_0x3f09d7(0x1ba)][_0x3f09d7(0x240)](_0x3b556f)),_0x5a0d83(_0x3f09d7(0x107)+'t',(_0x1a93d2,_0x41ca2c)=>_0x5951dc()[_0x3f09d7(0x200)][_0x3f09d7(0x1b4)](_0x41ca2c)),_0x5a0d83(_0x3f09d7(0x12c)+_0x3f09d7(0x147),(_0x49cd35,_0xadb792)=>_0x5951dc()[_0x3f09d7(0x200)][_0x3f09d7(0x191)](_0xadb792)),_0x5a0d83(_0x3f09d7(0x173)+_0x3f09d7(0x147),(_0x3dedc7,_0x199a46)=>_0x5951dc()[_0x3f09d7(0x200)][_0x3f09d7(0x1d3)](_0x199a46)),_0x5a0d83(_0x3f09d7(0x1ec)+_0x3f09d7(0x124),(_0x43e34e,_0x2ce4bc)=>_0x5951dc()[_0x3f09d7(0x200)][_0x3f09d7(0x11a)](_0x2ce4bc)),_0x5a0d83(_0x3f09d7(0x19f)+_0x3f09d7(0x236),(_0x2e5f86,_0x24d09a)=>_0x5951dc()[_0x3f09d7(0x200)]['runOnce'](_0x24d09a)),_0x5a0d83('cron:log'+'s',(_0x458385,_0x144c38)=>_0x5951dc()['cron'][_0x3f09d7(0x17d)](_0x144c38)),_0x5a0d83(_0x3f09d7(0x212)+_0x3f09d7(0x1ea),async(_0x30f4fd,_0x51dae5={})=>{const _0xc9b7a=_0x3f09d7,_0x2551d3=configController[_0xc9b7a(0x207)+_0xc9b7a(0x1d7)+'h'](),_0x57b60e=JSON[_0xc9b7a(0x12a)](await readFile(_0x2551d3,_0xc9b7a(0x162))),_0x5639a5=_0x57b60e?.[_0xc9b7a(0x1be)]?.[_0xc9b7a(0x231)+'s']&&typeof _0x57b60e[_0xc9b7a(0x1be)]['provider'+'s']===_0xc9b7a(0x1cf)?_0x57b60e['models']['provider'+'s']:{},_0x3ab0b2=typeof _0x57b60e?.[_0xc9b7a(0x123)]?.['defaults']?.[_0xc9b7a(0x186)]?.[_0xc9b7a(0x1fc)]==='string'?_0x57b60e[_0xc9b7a(0x123)][_0xc9b7a(0x210)][_0xc9b7a(0x186)][_0xc9b7a(0x1fc)]:'',_0x36a207=String(_0x51dae5[_0xc9b7a(0x186)]||_0x3ab0b2||'');if(!_0x36a207[_0xc9b7a(0x130)]('/'))throw new Error(_0xc9b7a(0xfc)+'lt\x20model'+_0xc9b7a(0x1bf)+_0xc9b7a(0x116)+'\x20a\x20provi'+_0xc9b7a(0x18c)+_0xc9b7a(0x1e3));const _0x1a7eda=_0x36a207['indexOf']('/'),_0x531b6f=_0x36a207[_0xc9b7a(0x1b8)](0x0,_0x1a7eda),_0x5277a8=_0x36a207[_0xc9b7a(0x1b8)](_0x1a7eda+0x1),_0x33f003=_0x5639a5[_0x531b6f];if(!_0x33f003||typeof _0x33f003!==_0xc9b7a(0x1cf))throw new Error(_0xc9b7a(0x231)+'\x20not\x20con'+_0xc9b7a(0x12f)+'\x20'+_0x531b6f);const _0x25cca3=String(_0x33f003['baseUrl']||_0xc9b7a(0xfa)+_0xc9b7a(0x104)+_0xc9b7a(0x13b)+'1')[_0xc9b7a(0x16d)]()[_0xc9b7a(0x143)](/\/$/,''),_0x5b2a47=await fetch(_0x25cca3+(_0xc9b7a(0x19c)+_0xc9b7a(0x21f)+'s'),{'method':_0xc9b7a(0x164),'headers':{'content-type':_0xc9b7a(0x167)+_0xc9b7a(0xda),'Authorization':_0xc9b7a(0xfd)+(_0x33f003[_0xc9b7a(0x1f1)]||''),..._0x33f003[_0xc9b7a(0x18f)]&&typeof _0x33f003['headers']===_0xc9b7a(0x1cf)?_0x33f003['headers']:{}},'body':JSON['stringif'+'y']({'model':_0x5277a8,'max_tokens':Number[_0xc9b7a(0x1f0)+'r'](_0x51dae5[_0xc9b7a(0x17a)+'s'])?_0x51dae5[_0xc9b7a(0x17a)+'s']:0x400,'temperature':typeof _0x51dae5[_0xc9b7a(0x146)+_0xc9b7a(0x18b)]===_0xc9b7a(0x238)?_0x51dae5[_0xc9b7a(0x146)+_0xc9b7a(0x18b)]:undefined,'messages':Array[_0xc9b7a(0x16a)](_0x51dae5[_0xc9b7a(0x244)])?_0x51dae5[_0xc9b7a(0x244)]:[]}),'signal':AbortSignal[_0xc9b7a(0xec)](Number[_0xc9b7a(0x1f0)+'r'](_0x51dae5[_0xc9b7a(0x15e)+'s'])?_0x51dae5[_0xc9b7a(0x15e)+'s']:0x1d4c0)});if(!_0x5b2a47['ok']){const _0xd1924c=await _0x5b2a47[_0xc9b7a(0x19b)]();throw new Error(_0xc9b7a(0x1f9)+_0xc9b7a(0x135)+_0x5b2a47[_0xc9b7a(0x241)]+':\x20'+_0xd1924c[_0xc9b7a(0x1b8)](0x0,0x190));}const _0x21f600=await _0x5b2a47['json'](),_0x2320a6=_0x21f600?.[_0xc9b7a(0x129)]?.[0x0]?.[_0xc9b7a(0x192)]??{};return{'content':typeof _0x2320a6[_0xc9b7a(0x1b3)]===_0xc9b7a(0x20b)?_0x2320a6[_0xc9b7a(0x1b3)]:'','reasoning':typeof _0x2320a6[_0xc9b7a(0x1dd)+_0xc9b7a(0x14f)+'t']===_0xc9b7a(0x20b)?_0x2320a6[_0xc9b7a(0x1dd)+_0xc9b7a(0x14f)+'t']:'','model':_0x21f600?.[_0xc9b7a(0x186)]||_0x5277a8};}),_0x5a0d83(_0x3f09d7(0x138)+_0x3f09d7(0x208),()=>_0x5951dc()[_0x3f09d7(0x1be)][_0x3f09d7(0x1b7)]()),_0x5a0d83(_0x3f09d7(0x138)+'et-setti'+_0x3f09d7(0x14e),(_0x4fa768,_0x4a17ac)=>_0x5951dc()[_0x3f09d7(0x1be)]['setSetti'+'ngs'](_0x4a17ac)),_0x5a0d83(_0x3f09d7(0x138)+_0x3f09d7(0x232)+_0x3f09d7(0x1ca),(_0x403c46,_0x1447e5)=>_0x5951dc()[_0x3f09d7(0x1be)][_0x3f09d7(0x24a)+_0x3f09d7(0x156)+_0x3f09d7(0x157)](_0x1447e5)),_0x5a0d83(_0x3f09d7(0x138)+_0x3f09d7(0x1e7)+_0x3f09d7(0x224),()=>_0x5951dc()[_0x3f09d7(0x1be)][_0x3f09d7(0x139)+_0x3f09d7(0x163)]()),_0x5a0d83(_0x3f09d7(0x212)+_0x3f09d7(0xdd)+_0x3f09d7(0x15b),()=>_0x5951dc()[_0x3f09d7(0x1be)][_0x3f09d7(0x15c)+_0x3f09d7(0x15b)]()),_0x5a0d83(_0x3f09d7(0x155)+_0x3f09d7(0x205),()=>_0x5951dc()[_0x3f09d7(0x234)][_0x3f09d7(0x22a)]());}function _0x4a72(_0x233ffc,_0x4009c3){_0x233ffc=_0x233ffc-0xd5;const _0x4a12c9=_0x4a12();let _0x4a72ed=_0x4a12c9[_0x233ffc];return _0x4a72ed;}function _0x4a12(){const _0x590f1a=['mjs','mpletion','tory','devtools','dKeys','director','model-id','d\x20reject','ndow','sessions','leted','13233213BPXQgc','read','ontents','sender','unmaximi','loadURL','warn','logsDir','provider','et-self-','logs:wri','config','unhandle','-once','ocess-go','number','one',':list','ctron\x20ma','oot','ted','uit:\x20sto','ask-user','delete','status','wujiecla','getRecen','messages','chat','size','handle','elete','jie-shel','setSelfO','kUserQue','te\x20compl','-restart','catch','now','sharedCo','edWindow','title',':gateway','skills:s','workspac','rControl','ion/json','ools','files:wr','ustom-mo','ell:even','default','window:m','isDirect','files','redConte','creating','filePath','openFile','dataDir','maximize','logs:ope','window:t','skills:u','timeout','ipc','rnal','log',':runtime','15MEWEWd','est\x20star','info','ite-bina','platform','logs\x20exp','file\x20rea','pping\x20ga','yInfo','https://','history','no\x20defau','Bearer\x20','sidebar','\x20main\x20bo','app:open',':create','files:re','stion','api.open','openDevT','open\x20ext','cron:lis','CommandO','logs:exp','inimize','skills:i','e:shared','chrome','h\x0aexec\x20\x22','filter','unref','before-q','8gWVsgR','ipc\x20requ','ame','path','red;\x20set','agent-ev','ectory','35481OARLJm','remove','logs\x20dir','openDire','lose','openPath','13685991ZAWEqd','nstall','ocess\x20go','projectR','agents','ove','e:write-','pdate','url','preload.','choices','parse','Dialog','cron:cre',':open-cl','ad-binar','figured:','includes','webConte','isFile','file\x20wri',':set-pin','tp\x20','setPinne','uit','models:s','selected','prod','ai.com/v','pper\x20not','stream','rocess-g','+Shift+I','est\x20fail','\x20failed','lect-fil','replace','ist','length','temperat','ate','rename','11930940kzwPBi','\x20failed:','#f8fafc','loadFile','chat:abo','ngs','g_conten','ximize','tLogs','zed','session-','getPath','config:r','peratedM','odels','extensio','paths','darwin','dels','customMo','wujie-sh','timeoutM','e\x20first.','\x20process',':pinned-','utf8','ModelId','POST','renderer','lect-dir','applicat','-shortcu','will-qui','isArray','runtimeI','gateway-','trim','nfo','getURL',':rename',':answer-','arch','cron:upd','agents:l','binary\x20f','main',':delete','alized','#!/bin/s','maxToken','then','finally','logs','limit','ot\x20start','eam-even','ase','d\x20failed','9938601waXLdD','start','ell\x20boot','model','e:direct','files:li','recursiv','close','ure','der/mode','shared-c','bin','headers','ll-close','create','message','pinnedKe','\x20complet','Exceptio','d\x20comple','pen-devt','maxEntri','irectory','ell-cli.','text','/chat/co','lastInde','agents-u','cron:run','ile\x20writ','multiSel','tatus','stop','openExte','.\x20Run\x20wu','updated','-questio','isDestro','ot\x20initi','-url','yed','activate','meta','configPa','versions','ned-keys','iled\x20to\x20','fromWebC','content','list','open','window:c','settings','slice','chat:his','skills','\x20excepti','ernal\x20ur','keys','models','\x20configu','ections','context','getStatu','node','byteLeng','l\x20prepar','showOpen','map','34393CqtSdy','Terminal','operated','ion','from','files:se','ite','object','chat-str','uncaught','getVersi','update','#0000000','error','openclaw','onfigPat','efault','ot\x20faile','dRejecti','canceled','oggle-ma','reasonin','isMaximi','boot\x20ele','74DVXGoJ','nts','ectory\x20o','l\x20first','temp','-status','productN','elected-','dist','eted','omplete','stopped\x20','cron:rem','getAllWi','main\x20win','targetDi','isIntege','apiKey','ell\x20gate','send','quit','ignore','render-p','detach','window:o','model\x20ht','index.ht','chat:str','primary','abort','ort','register','cron','window-a','\x20main\x20wi','e\x20direct','56CcygUl','ead','app:info','resolveC','ettings','\x20found:\x20','[wujie-s','string','toLowerC','dow\x20load','command','ory\x20open','defaults','ontext','models:c','electron','hell]\x20fa','l\x20reques','level','name','filters','ndows','dev','skills:d','790038Ugjpar','push'];_0x4a12=function(){return _0x590f1a;};return _0x4a12();}async function boot(){const _0x59370c=_0x4723b7;shellConfig=await loadShellConfig(resolveProjectRoot()),app['setName'](shellConfig[_0x59370c(0x1e6)+_0x59370c(0x114)]),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x59370c(0x159)],_0x59370c(0x176)),ipcLogger=createShellLogger(configController[_0x59370c(0x159)],_0x59370c(0xed)),filesLogger=createShellLogger(configController[_0x59370c(0x159)],_0x59370c(0xe2)),rendererLogger=createShellLogger(configController['paths'],'renderer'),registerProcessLogHooks(),mainLogger?.[_0x59370c(0xf3)]('electron'+_0x59370c(0xff)+_0x59370c(0x17f)+'ed',{'appVersion':app['getVersi'+'on'](),'electronVersion':process[_0x59370c(0x1af)]['electron'],'nodeVersion':process['versions'][_0x59370c(0x1c3)],'chromeVersion':process[_0x59370c(0x1af)][_0x59370c(0x10d)],'platform':process['platform'],'arch':process[_0x59370c(0x172)],'mode':getMode(),'projectRoot':shellConfig[_0x59370c(0x122)+_0x59370c(0x23c)],'configPath':shellConfig[_0x59370c(0x1ae)+'th'],'dataDir':shellConfig['dataDir'],'logsDir':configController[_0x59370c(0x159)][_0x59370c(0x230)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x59370c(0x122)+_0x59370c(0x23c)],_0x59370c(0x1e8),_0x59370c(0x1fa)+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app['getVersi'+'on']()});for(const _0xd24566 of[_0x59370c(0x16c)+'status',_0x59370c(0x16c)+_0x59370c(0xef),_0x59370c(0x1d0)+_0x59370c(0x180)+'t',_0x59370c(0x153)+_0x59370c(0x1a6),_0x59370c(0x117)+'ent',_0x59370c(0x19e)+'pdated',_0x59370c(0x23f)+_0x59370c(0x1a7)+'n']){gatewayController['on'](_0xd24566,_0xd55483=>broadcast(_0xd24566,_0xd55483));}installIpcHandlers(),registerShellShortcuts(),await createWindow(),await gatewayController[_0x59370c(0x184)](),mainLogger?.[_0x59370c(0xf3)](_0x59370c(0x213)+_0x59370c(0xff)+'ot\x20compl'+_0x59370c(0x1e9));}function registerProcessLogHooks(){const _0x1ce4c0=_0x4723b7;if(registerProcessLogHooks[_0x1ce4c0(0x1ff)+'ed'])return;registerProcessLogHooks['register'+'ed']=!![],process['on'](_0x1ce4c0(0x1d1)+_0x1ce4c0(0x195)+'n',_0x3c7b0b=>{const _0x3c39d1=_0x1ce4c0;mainLogger?.[_0x3c39d1(0x1d5)](_0x3c39d1(0x1d1)+_0x3c39d1(0x1bb)+'on',summarizeError(_0x3c7b0b));}),process['on'](_0x1ce4c0(0x235)+_0x1ce4c0(0x1da)+'on',_0x346fe2=>{const _0x8e83d1=_0x1ce4c0;mainLogger?.[_0x8e83d1(0x1d5)](_0x8e83d1(0x235)+_0x8e83d1(0x225)+_0x8e83d1(0x1cb),summarizeError(_0x346fe2));}),app['on'](_0x1ce4c0(0x1f6)+_0x1ce4c0(0x13e)+_0x1ce4c0(0x239),(_0x4a0bb0,_0x2c795e,_0x4e6f8d)=>{const _0xaa238a=_0x1ce4c0;mainLogger?.[_0xaa238a(0x1d5)](_0xaa238a(0x165)+_0xaa238a(0x160)+'\x20gone',{'url':_0x2c795e[_0xaa238a(0x16f)](),'details':_0x4e6f8d});}),app['on']('child-pr'+_0x1ce4c0(0x237)+'ne',(_0x19a188,_0x55d62b)=>{const _0x5604c4=_0x1ce4c0;mainLogger?.[_0x5604c4(0x1d5)]('child\x20pr'+_0x5604c4(0x121)+'ne',{'details':_0x55d62b});});}app['on'](_0x4723b7(0x201)+_0x4723b7(0x190)+'d',()=>{const _0x5638a8=_0x4723b7;if(process['platform']!==_0x5638a8(0x15a))app[_0x5638a8(0x1f4)]();}),app['on'](_0x4723b7(0x1ac),async()=>{const _0x25bec4=_0x4723b7;BrowserWindow[_0x25bec4(0x1ed)+_0x25bec4(0x219)]()['length']===0x0&&shellConfig&&await createWindow();}),app['on'](_0x4723b7(0x111)+_0x4723b7(0x137),_0x3e2813=>{const _0x492742=_0x4723b7;if(!gatewayController)return;mainLogger?.['info']('before\x20q'+_0x492742(0x23e)+_0x492742(0xf8)+'teway'),_0x3e2813['preventD'+_0x492742(0x1d8)](),void gatewayController[_0x492742(0x1a3)]()[_0x492742(0x17c)](()=>{const _0x5dddd2=_0x492742;gatewayController=null,mainLogger?.['info']('gateway\x20'+_0x5dddd2(0x1eb)+'before\x20q'+_0x5dddd2(0x137)),app[_0x5dddd2(0x1f4)]();});}),app['on'](_0x4723b7(0x169)+'t',()=>{globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);}),app['whenRead'+'y']()[_0x4723b7(0x17b)](boot)[_0x4723b7(0x24e)](_0x14c204=>{const _0x52235b=_0x4723b7;bootError=_0x14c204 instanceof Error?_0x14c204[_0x52235b(0x192)]:String(_0x14c204),mainLogger?.['error'](_0x52235b(0x213)+'\x20main\x20bo'+_0x52235b(0x1d9)+'d',summarizeError(_0x14c204)),console[_0x52235b(0x1d5)]('[wujie-s'+_0x52235b(0x214)+_0x52235b(0x1b1)+_0x52235b(0x1df)+_0x52235b(0x23b)+'in',_0x14c204);});
@@ -1 +1 @@
1
- const _0x5938a5=_0x3e14;function _0x1d03(){const _0x5e5d7e=['window:o','ist','ustom-mo','et-setti','skills:s','invoke','files:wr','862970hnUqYY','-once','ory-info','chat-str','wujieShe','2wURudw','models:c',':create','elected-','skills:d',':gateway','app:open','4792502DlLgRM','irectory','status','e:shared','app:info','skills:u','24fnfMQf','ove','dels','-shortcu','ory','pdate','sessions','function','elete','files:se','ools','-questio','-restart','cron:cre','models:s','logs:exp','keys','cron:log','lect-dir','ask-user','window:t','openclaw','cron:run','ent','ite','devtools','oggle-ma','413112ihwGxw','e:direct','workspac','ximize','cron:rem','ate','session-','delete','wujie-sh','ell:even',':delete',':set-pin','-status','40bnAaLt','tatus','eam-even','6901164TLHlFa','skills:i','chat:str','-info','chat:his','cron:lis','lect-fil','30RYHKLZ','310548Lniuug','pen-devt','agents:l','4157541uyAonr','chat:abo','window:c','shared-c','MainWorl','lose','logs:ope','model-id','exposeIn','443668qTGgKG','gateway-','cron:upd','ngs','ned-keys','tory'];_0x1d03=function(){return _0x5e5d7e;};return _0x1d03();}(function(_0x131073,_0x2bf427){const _0xbff2e9=_0x3e14,_0xd327bd=_0x131073();while(!![]){try{const _0x3bb1ad=-parseInt(_0xbff2e9(0xc3))/0x1*(-parseInt(_0xbff2e9(0xd5))/0x2)+-parseInt(_0xbff2e9(0xb7))/0x3+-parseInt(_0xbff2e9(0xaf))/0x4+parseInt(_0xbff2e9(0xd0))/0x5*(parseInt(_0xbff2e9(0xb6))/0x6)+-parseInt(_0xbff2e9(0xfd))/0x7*(-parseInt(_0xbff2e9(0xe2))/0x8)+-parseInt(_0xbff2e9(0xba))/0x9+parseInt(_0xbff2e9(0xac))/0xa*(parseInt(_0xbff2e9(0xdc))/0xb);if(_0x3bb1ad===_0x2bf427)break;else _0xd327bd['push'](_0xd327bd['shift']());}catch(_0x12f1d4){_0xd327bd['push'](_0xd327bd['shift']());}}}(_0x1d03,0xe46ea));import _0x2a612b from'electron';const {contextBridge,ipcRenderer}=_0x2a612b,eventListeners=new Map();function invoke(_0x1af506,_0x59e2e8){const _0x341fbb=_0x3e14;return ipcRenderer[_0x341fbb(0xce)](_0x1af506,_0x59e2e8);}function _0x3e14(_0x303c89,_0x3d22c3){_0x303c89=_0x303c89-0xa5;const _0x1d03de=_0x1d03();let _0x3e14fd=_0x1d03de[_0x303c89];return _0x3e14fd;}function subscribe(_0x25864f,_0x2ff527){const _0x207d76=_0x3e14;if(typeof _0x2ff527!==_0x207d76(0xe9))return()=>{};const _0x405f7e=(_0x2016de,_0x13e0da)=>{if(_0x13e0da?.['name']===_0x25864f)_0x2ff527(_0x13e0da['payload']);};return ipcRenderer['on']('wujie-sh'+_0x207d76(0xa8)+'t',_0x405f7e),eventListeners['set'](_0x2ff527,_0x405f7e),()=>{const _0x387ebb=_0x207d76,_0x25d3d9=eventListeners['get'](_0x2ff527)||_0x405f7e;ipcRenderer['off'](_0x387ebb(0xa7)+_0x387ebb(0xa8)+'t',_0x25d3d9),eventListeners[_0x387ebb(0xa6)](_0x2ff527);};}contextBridge[_0x5938a5(0xc2)+_0x5938a5(0xbe)+'d'](_0x5938a5(0xd4)+'ll',{'app':{'info':()=>invoke(_0x5938a5(0xe0)),'openUrl':_0x23ae13=>invoke(_0x5938a5(0xdb)+'-url',_0x23ae13)},'window':{'minimize':()=>invoke('window:m'+'inimize'),'toggleMaximize':()=>invoke(_0x5938a5(0xf6)+_0x5938a5(0xfc)+_0x5938a5(0x100)),'close':()=>invoke(_0x5938a5(0xbc)+_0x5938a5(0xbf)),'openDevTools':()=>invoke(_0x5938a5(0xc9)+_0x5938a5(0xb8)+_0x5938a5(0xec)),'onDevToolsShortcut':_0x5cc263=>subscribe(_0x5938a5(0xfb)+_0x5938a5(0xe5)+'t',_0x5cc263)},'files':{'read':_0xf08295=>invoke('files:re'+'ad',_0xf08295),'readBinary':_0x29d238=>invoke('files:re'+'ad-binar'+'y',_0x29d238),'write':(_0x373962,_0x42de86)=>invoke(_0x5938a5(0xcf)+_0x5938a5(0xfa),{'path':_0x373962,'content':_0x42de86}),'writeBinary':(_0xa4bafa,_0x5baba1)=>invoke(_0x5938a5(0xcf)+'ite-bina'+'ry',{'path':_0xa4bafa,'content':_0x5baba1}),'selectFile':_0x510272=>invoke(_0x5938a5(0xeb)+_0x5938a5(0xb5)+'e',_0x510272),'selectDirectory':_0x3287be=>invoke(_0x5938a5(0xeb)+_0x5938a5(0xf4)+'ectory',_0x3287be)},'workspace':{'directoryInfo':()=>invoke('workspac'+_0x5938a5(0xfe)+_0x5938a5(0xd2)),'openDirectory':()=>invoke(_0x5938a5(0xff)+'e:open-d'+_0x5938a5(0xdd)),'sharedContext':()=>invoke(_0x5938a5(0xff)+_0x5938a5(0xdf)+'-context'),'writeSharedContext':_0x1a88e0=>invoke(_0x5938a5(0xff)+'e:write-'+_0x5938a5(0xbd)+'ontext',_0x1a88e0)},'openclaw':{'runtimeInfo':()=>invoke(_0x5938a5(0xf7)+':runtime'+_0x5938a5(0xb2)),'gatewayStatus':()=>invoke(_0x5938a5(0xf7)+_0x5938a5(0xda)+_0x5938a5(0xab)),'gatewayRestart':()=>invoke(_0x5938a5(0xf7)+_0x5938a5(0xda)+_0x5938a5(0xee)),'gatewayLogs':_0x5051b7=>invoke('openclaw'+_0x5938a5(0xda)+'-logs',_0x5051b7),'onGatewayStatus':_0x1b1130=>subscribe(_0x5938a5(0xc4)+_0x5938a5(0xde),_0x1b1130),'onGatewayLog':_0x58ed2b=>subscribe('gateway-'+'log',_0x58ed2b),'onAgentEvent':_0xaa67aa=>subscribe('agent-ev'+_0x5938a5(0xf9),_0xaa67aa),'onAgentsUpdated':_0x90b9c=>subscribe('agents-u'+'pdated',_0x90b9c),'onAskUserQuestion':_0xa516bc=>subscribe(_0x5938a5(0xf5)+_0x5938a5(0xed)+'n',_0xa516bc),'answerAskUserQuestion':_0x19dcd4=>invoke(_0x5938a5(0xf7)+':answer-'+_0x5938a5(0xf5)+_0x5938a5(0xed)+'n',_0x19dcd4)},'agents':{'list':()=>invoke(_0x5938a5(0xb9)+_0x5938a5(0xca))},'skills':{'status':_0x41aa4b=>invoke(_0x5938a5(0xcd)+_0x5938a5(0xad),_0x41aa4b),'install':_0x27fec2=>invoke(_0x5938a5(0xb0)+'nstall',_0x27fec2),'update':_0x3a6b8c=>invoke(_0x5938a5(0xe1)+_0x5938a5(0xe7),_0x3a6b8c),'delete':_0x43eafb=>invoke(_0x5938a5(0xd9)+_0x5938a5(0xea),_0x43eafb)},'sessions':{'create':_0x21dd1a=>invoke(_0x5938a5(0xe8)+_0x5938a5(0xd7),_0x21dd1a),'list':_0x237577=>invoke('sessions'+':list',_0x237577),'delete':_0x4d55b5=>invoke(_0x5938a5(0xe8)+_0x5938a5(0xa9),_0x4d55b5),'rename':_0x3a4f48=>invoke(_0x5938a5(0xe8)+':rename',_0x3a4f48),'pinnedKeys':()=>invoke(_0x5938a5(0xe8)+':pinned-'+_0x5938a5(0xf2)),'setPinnedKeys':_0x5a037d=>invoke(_0x5938a5(0xe8)+_0x5938a5(0xaa)+_0x5938a5(0xc7),_0x5a037d),'onUpdated':_0x405a2c=>subscribe(_0x5938a5(0xa5)+'updated',_0x405a2c)},'cron':{'list':_0x3af3cc=>invoke(_0x5938a5(0xb4)+'t',_0x3af3cc),'create':_0x237fd8=>invoke(_0x5938a5(0xef)+_0x5938a5(0x102),_0x237fd8),'update':_0x2807bb=>invoke(_0x5938a5(0xc5)+_0x5938a5(0x102),_0x2807bb),'remove':_0x55bcdb=>invoke(_0x5938a5(0x101)+_0x5938a5(0xe3),_0x55bcdb),'runOnce':_0x2d366a=>invoke(_0x5938a5(0xf8)+_0x5938a5(0xd1),_0x2d366a),'logs':_0x240b41=>invoke(_0x5938a5(0xf3)+'s',_0x240b41)},'models':{'settings':()=>invoke('models:s'+'ettings'),'setSettings':_0x2f44ac=>invoke(_0x5938a5(0xf0)+_0x5938a5(0xcc)+_0x5938a5(0xc6),_0x2f44ac),'setSelfOperatedModels':_0x50383d=>invoke('models:s'+'et-self-'+'operated',_0x50383d),'selectedModelId':()=>invoke('models:s'+_0x5938a5(0xd8)+_0x5938a5(0xc1)),'customModels':()=>invoke(_0x5938a5(0xd6)+_0x5938a5(0xcb)+_0x5938a5(0xe4))},'config':{'read':()=>invoke('config:r'+'ead')},'logs':{'write':_0x15b359=>invoke('logs:wri'+'te',_0x15b359),'export':_0x229d36=>invoke(_0x5938a5(0xf1)+'ort',_0x229d36),'openDirectory':()=>invoke(_0x5938a5(0xc0)+'n-direct'+_0x5938a5(0xe6))},'chat':{'stream':_0x5b83ba=>invoke(_0x5938a5(0xb1)+'eam',_0x5b83ba),'abort':_0x1b5e1f=>invoke(_0x5938a5(0xbb)+'rt',_0x1b5e1f),'history':_0x528bb5=>invoke(_0x5938a5(0xb3)+_0x5938a5(0xc8),_0x528bb5),'onStreamEvent':_0x3b35fb=>subscribe(_0x5938a5(0xd3)+_0x5938a5(0xae)+'t',_0x3b35fb)}});
1
+ const _0x2bf983=_0x3700;(function(_0x45dfca,_0x55176d){const _0xdbff60=_0x3700,_0x256d47=_0x45dfca();while(!![]){try{const _0x257343=parseInt(_0xdbff60(0x12d))/0x1+parseInt(_0xdbff60(0x121))/0x2+parseInt(_0xdbff60(0x106))/0x3*(-parseInt(_0xdbff60(0x155))/0x4)+parseInt(_0xdbff60(0x146))/0x5*(-parseInt(_0xdbff60(0x153))/0x6)+-parseInt(_0xdbff60(0x158))/0x7+-parseInt(_0xdbff60(0x10d))/0x8+parseInt(_0xdbff60(0x118))/0x9;if(_0x257343===_0x55176d)break;else _0x256d47['push'](_0x256d47['shift']());}catch(_0x200659){_0x256d47['push'](_0x256d47['shift']());}}}(_0x4984,0x44bf3));import _0x37fc5f from'electron';function _0x4984(){const _0x533840=['devtools','ad-binar','-url','ite-bina','logs:exp','ead','name','lose','e:open-d','et-setti','cron:run','-restart','MainWorl','lect-fil','cron:log','cron:upd','delete','log','elete','-questio','-context','agent-ev','173335oMubsP',':answer-','nstall','exposeIn','window:m','pdate','ove','-info','workspac','wujie-sh','ngs','sessions','e:shared','48epHuGY',':delete','1748200HDjxjd','app:info','skills:i','3019548Rtuqys','e:write-','tatus','ent','ustom-mo','cron:cre','wujieShe','skills:s','irectory','st-direc','ist','openclaw','elected-','tory','files:wr','cron:rem','chat-str','ate','-status','get','models:s','-once','ools','-logs','ort','3MkwfDg','ell:even',':open-cl','payload','logs:ope','keys','status','3611856VvAfrT',':gateway','skills:u','function','invoke','gateway-','model-id',':runtime','ontext','set','ask-user','14277069GCHoLn','ned-keys','config:r','models:c','chat:str','eam','ximize','lect-dir','off','52284ktlGdO','-shortcu','app:open','shared-c','session-','files:re','files:se','pen-devt',':pinned-','omplete','logs:wri','pdated','266336ssCWft','operated',':rename'];_0x4984=function(){return _0x533840;};return _0x4984();}const {contextBridge,ipcRenderer}=_0x37fc5f,eventListeners=new Map();function invoke(_0x515e23,_0xb7ed3f){const _0x466167=_0x3700;return ipcRenderer[_0x466167(0x111)](_0x515e23,_0xb7ed3f);}function _0x3700(_0x43b708,_0x148722){_0x43b708=_0x43b708-0xfa;const _0x498490=_0x4984();let _0x370098=_0x498490[_0x43b708];return _0x370098;}function subscribe(_0x4f460c,_0x2116ce){const _0x524680=_0x3700;if(typeof _0x2116ce!==_0x524680(0x110))return()=>{};const _0x118374=(_0x4cbebc,_0x1ce250)=>{const _0xea64d7=_0x524680;if(_0x1ce250?.[_0xea64d7(0x136)]===_0x4f460c)_0x2116ce(_0x1ce250[_0xea64d7(0x109)]);};return ipcRenderer['on'](_0x524680(0x14f)+_0x524680(0x107)+'t',_0x118374),eventListeners[_0x524680(0x116)](_0x2116ce,_0x118374),()=>{const _0x4f70e0=_0x524680,_0x4c1ae0=eventListeners[_0x4f70e0(0x100)](_0x2116ce)||_0x118374;ipcRenderer[_0x4f70e0(0x120)](_0x4f70e0(0x14f)+'ell:even'+'t',_0x4c1ae0),eventListeners[_0x4f70e0(0x140)](_0x2116ce);};}contextBridge[_0x2bf983(0x149)+_0x2bf983(0x13c)+'d'](_0x2bf983(0x15e)+'ll',{'app':{'info':()=>invoke(_0x2bf983(0x156)),'openUrl':_0x3b74f9=>invoke(_0x2bf983(0x123)+_0x2bf983(0x132),_0x3b74f9)},'window':{'minimize':()=>invoke(_0x2bf983(0x14a)+'inimize'),'toggleMaximize':()=>invoke('window:t'+'oggle-ma'+_0x2bf983(0x11e)),'close':()=>invoke('window:c'+_0x2bf983(0x137)),'openDevTools':()=>invoke('window:o'+_0x2bf983(0x128)+_0x2bf983(0x103)),'onDevToolsShortcut':_0x3f7400=>subscribe(_0x2bf983(0x130)+_0x2bf983(0x122)+'t',_0x3f7400)},'files':{'read':_0x4c92d8=>invoke(_0x2bf983(0x126)+'ad',_0x4c92d8),'readBinary':_0x4669ea=>invoke('files:re'+_0x2bf983(0x131)+'y',_0x4669ea),'write':(_0x1e21b6,_0x54a569)=>invoke(_0x2bf983(0xfb)+'ite',{'path':_0x1e21b6,'content':_0x54a569}),'writeBinary':(_0x2a1e36,_0x129fd5)=>invoke(_0x2bf983(0xfb)+_0x2bf983(0x133)+'ry',{'path':_0x2a1e36,'content':_0x129fd5}),'selectFile':_0x4fd3fb=>invoke(_0x2bf983(0x127)+_0x2bf983(0x13d)+'e',_0x4fd3fb),'selectDirectory':_0x36dea3=>invoke('files:se'+_0x2bf983(0x11f)+'ectory',_0x36dea3),'listDirectory':_0x2906d1=>invoke('files:li'+_0x2bf983(0x161)+_0x2bf983(0xfa),_0x2906d1)},'workspace':{'directoryInfo':()=>invoke('workspac'+'e:direct'+'ory-info'),'openDirectory':()=>invoke('workspac'+_0x2bf983(0x138)+_0x2bf983(0x160)),'sharedContext':()=>invoke(_0x2bf983(0x14e)+_0x2bf983(0x152)+_0x2bf983(0x144)),'writeSharedContext':_0x4678f8=>invoke(_0x2bf983(0x14e)+_0x2bf983(0x159)+_0x2bf983(0x124)+_0x2bf983(0x115),_0x4678f8)},'openclaw':{'runtimeInfo':()=>invoke(_0x2bf983(0x163)+_0x2bf983(0x114)+_0x2bf983(0x14d)),'gatewayStatus':()=>invoke(_0x2bf983(0x163)+':gateway'+_0x2bf983(0xff)),'gatewayRestart':()=>invoke(_0x2bf983(0x163)+_0x2bf983(0x10e)+_0x2bf983(0x13b)),'gatewayLogs':_0x262d6c=>invoke(_0x2bf983(0x163)+_0x2bf983(0x10e)+_0x2bf983(0x104),_0x262d6c),'onGatewayStatus':_0x31a080=>subscribe(_0x2bf983(0x112)+_0x2bf983(0x10c),_0x31a080),'onGatewayLog':_0x1338ae=>subscribe(_0x2bf983(0x112)+_0x2bf983(0x141),_0x1338ae),'onAgentEvent':_0x41ef65=>subscribe(_0x2bf983(0x145)+_0x2bf983(0x15b),_0x41ef65),'onAgentsUpdated':_0x383eb9=>subscribe('agents-u'+_0x2bf983(0x12c),_0x383eb9),'onAskUserQuestion':_0x3f96f7=>subscribe('ask-user'+_0x2bf983(0x143)+'n',_0x3f96f7),'answerAskUserQuestion':_0x5a9040=>invoke(_0x2bf983(0x163)+_0x2bf983(0x147)+_0x2bf983(0x117)+_0x2bf983(0x143)+'n',_0x5a9040),'openCliWindow':()=>invoke(_0x2bf983(0x163)+_0x2bf983(0x108)+'i-window')},'agents':{'list':()=>invoke('agents:l'+_0x2bf983(0x162))},'skills':{'status':_0x3347c1=>invoke(_0x2bf983(0x15f)+_0x2bf983(0x15a),_0x3347c1),'install':_0x1c3216=>invoke(_0x2bf983(0x157)+_0x2bf983(0x148),_0x1c3216),'update':_0x36d5f4=>invoke(_0x2bf983(0x10f)+_0x2bf983(0x14b),_0x36d5f4),'delete':_0x289216=>invoke('skills:d'+_0x2bf983(0x142),_0x289216)},'sessions':{'create':_0x5f611d=>invoke(_0x2bf983(0x151)+':create',_0x5f611d),'list':_0x44fe4a=>invoke(_0x2bf983(0x151)+':list',_0x44fe4a),'delete':_0x6652fa=>invoke(_0x2bf983(0x151)+_0x2bf983(0x154),_0x6652fa),'rename':_0x5efd74=>invoke(_0x2bf983(0x151)+_0x2bf983(0x12f),_0x5efd74),'pinnedKeys':()=>invoke(_0x2bf983(0x151)+_0x2bf983(0x129)+_0x2bf983(0x10b)),'setPinnedKeys':_0x361ec6=>invoke(_0x2bf983(0x151)+':set-pin'+_0x2bf983(0x119),_0x361ec6),'onUpdated':_0x49a549=>subscribe(_0x2bf983(0x125)+'updated',_0x49a549)},'cron':{'list':_0x1ad8d1=>invoke('cron:lis'+'t',_0x1ad8d1),'create':_0x16ed43=>invoke(_0x2bf983(0x15d)+_0x2bf983(0xfe),_0x16ed43),'update':_0x4cf0f0=>invoke(_0x2bf983(0x13f)+_0x2bf983(0xfe),_0x4cf0f0),'remove':_0x3c949e=>invoke(_0x2bf983(0xfc)+_0x2bf983(0x14c),_0x3c949e),'runOnce':_0xc11693=>invoke(_0x2bf983(0x13a)+_0x2bf983(0x102),_0xc11693),'logs':_0x41cb53=>invoke(_0x2bf983(0x13e)+'s',_0x41cb53)},'models':{'complete':_0x3d3206=>invoke(_0x2bf983(0x11b)+_0x2bf983(0x12a),_0x3d3206),'settings':()=>invoke(_0x2bf983(0x101)+'ettings'),'setSettings':_0x4ea1fc=>invoke(_0x2bf983(0x101)+_0x2bf983(0x139)+_0x2bf983(0x150),_0x4ea1fc),'setSelfOperatedModels':_0x4aa4dd=>invoke(_0x2bf983(0x101)+'et-self-'+_0x2bf983(0x12e),_0x4aa4dd),'selectedModelId':()=>invoke(_0x2bf983(0x101)+_0x2bf983(0x164)+_0x2bf983(0x113)),'customModels':()=>invoke(_0x2bf983(0x11b)+_0x2bf983(0x15c)+'dels')},'config':{'read':()=>invoke(_0x2bf983(0x11a)+_0x2bf983(0x135))},'logs':{'write':_0x1cdfd9=>invoke(_0x2bf983(0x12b)+'te',_0x1cdfd9),'export':_0x3cfd97=>invoke(_0x2bf983(0x134)+_0x2bf983(0x105),_0x3cfd97),'openDirectory':()=>invoke(_0x2bf983(0x10a)+'n-direct'+'ory')},'chat':{'stream':_0x28b73a=>invoke(_0x2bf983(0x11c)+_0x2bf983(0x11d),_0x28b73a),'abort':_0x42e2af=>invoke('chat:abo'+'rt',_0x42e2af),'history':_0x534df9=>invoke('chat:his'+_0x2bf983(0xfa),_0x534df9),'onStreamEvent':_0xacf9c8=>subscribe(_0x2bf983(0xfd)+'eam-even'+'t',_0xacf9c8)}});
@@ -1 +1 @@
1
- const _0x1e3867=_0x54c5;(function(_0x25b6e8,_0x3e1caa){const _0xaa47de=_0x54c5,_0x15722e=_0x25b6e8();while(!![]){try{const _0x4fbbe6=-parseInt(_0xaa47de(0x1f5))/0x1+parseInt(_0xaa47de(0x2d0))/0x2*(-parseInt(_0xaa47de(0x2d1))/0x3)+-parseInt(_0xaa47de(0x224))/0x4*(-parseInt(_0xaa47de(0x251))/0x5)+-parseInt(_0xaa47de(0x233))/0x6*(parseInt(_0xaa47de(0x2a2))/0x7)+-parseInt(_0xaa47de(0x2e2))/0x8+-parseInt(_0xaa47de(0x2b8))/0x9+-parseInt(_0xaa47de(0x1f0))/0xa*(-parseInt(_0xaa47de(0x1f1))/0xb);if(_0x4fbbe6===_0x3e1caa)break;else _0x15722e['push'](_0x15722e['shift']());}catch(_0xc84f7){_0x15722e['push'](_0x15722e['shift']());}}}(_0x12c3,0xd789c));import{randomUUID}from'node:crypto';import{createServer}from'node:http';import{EventEmitter}from'node:events';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{basename,dirname,join}from'node:path';import _0x58c7af,{portNumbers}from'get-port';import{createLineBuffer}from'@wujie-shell/logger';import{asRecord,getTrimmedString}from'./utils.mjs';import{ensureOpenClawDoctorFixed,loadRuntimeInfo,spawnClaw}from'./runtime.mjs';import{ClawGatewayWsClient}from'./gateway-ws.mjs';import{ensureBundledAgents}from'./bundled-agents.mjs';import{syncBundledAgentSkillsToConfig,filterSkillsForAgent}from'./bundled-agent-skills.mjs';import{createShellLogger,summarizeError,summarizeFilePaths,summarizePayload,summarizeText,toHomePath}from'./logging.mjs';const LOG_LIMIT=0x3e8,CLIENT_ID=_0x1e3867(0x1de)+'client',CLIENT_MODE=_0x1e3867(0x1e3),CLIENT_DEVICE_FAMILY=_0x1e3867(0x26f),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,SESSION_METADATA_FILE=_0x1e3867(0x32f)+'metadata'+_0x1e3867(0x308),SHARED_CONTEXT_FILES=[_0x1e3867(0x22d)+'d',_0x1e3867(0x2ea)+_0x1e3867(0x2c6),'IDENTITY'+_0x1e3867(0x2c0),_0x1e3867(0x2d4)+'d',_0x1e3867(0x2e6),_0x1e3867(0x318),'USER.md'];function nowIso(){const _0x3dc1b8=_0x1e3867;return new Date()['toISOStr'+_0x3dc1b8(0x315)]();}function buildGatewayWsUrl(_0x416513){const _0x27eb31=_0x1e3867;return _0x27eb31(0x335)+_0x27eb31(0x2a1)+_0x416513;}function createInitialStatus(){const _0x119235=_0x1e3867;return{'lifecycle':_0x119235(0x320),'health':'unknown','port':null,'tokenPresent':![],'message':_0x119235(0x2fb)+'stopped','updatedAt':nowIso()};}function extractGatewayMessageText(_0x57e783){const _0x395ad2=_0x1e3867;if(typeof _0x57e783==='string')return _0x57e783;if(!Array[_0x395ad2(0x20e)](_0x57e783))return'';const _0x476caa=[];for(const _0x5725ca of _0x57e783){if(typeof _0x5725ca===_0x395ad2(0x265)){if(_0x5725ca)_0x476caa[_0x395ad2(0x2b4)](_0x5725ca);continue;}const _0x42b0ec=asRecord(_0x5725ca);_0x42b0ec[_0x395ad2(0x311)]==='text'&&typeof _0x42b0ec[_0x395ad2(0x2e4)]===_0x395ad2(0x265)&&_0x42b0ec[_0x395ad2(0x2e4)]&&_0x476caa['push'](_0x42b0ec['text']);}return _0x476caa[_0x395ad2(0x208)]('\x0a');}function extractGatewayChatText(_0x327cf7){const _0x23a1c5=_0x1e3867,_0x12b0b7=asRecord(_0x327cf7);if(typeof _0x12b0b7[_0x23a1c5(0x2e4)]==='string')return _0x12b0b7[_0x23a1c5(0x2e4)];return extractGatewayMessageText(_0x12b0b7[_0x23a1c5(0x212)]);}function _0x12c3(){const _0xbf0d92=['paths','changed','n\x20reques','type','terminal','Timer','kUserQue','ing','[wujie-s','setGatew','TOOLS.md','\x20context','label','message','model','map','agent\x20sk','openclaw','stopped','workspac','defaultI','stall\x20fa','er\x20start','message\x20','process\x20','plugins','kdown','ync\x20fail','led','modelNam',':session','\x20settled','mpleted','session-','websocke','res','text/pla','trim','ove','ws://127','quired','ath','lete\x20req','tHandler','filePath','agents.c','quested','productN','.list','log','image/jp','set','has','splice','unhealth','startedA','deny','agents-r','tatus\x20lo','uested','connecte','cron.run','filter','bundled\x20','nt\x20recei','image/gi','toString','get','image/sv','eys-upda','/ask-use','dly','ginConfi','chat\x20his','llow-unc','ed:\x20','now','flush','patch','gateway','x-ask-us','max','agentId','runtimeR','gateway-','Bin','cron.add','null','ded','backend','nexpecte','delete\x20c','mimeType','emit','ask-user','started','projectR','final','stack','bundled-','deleteTr','once','30YflDfv','16761096LOOUIt','skill\x20in','restartO','restart\x20','1561287DBEZmG','tateDir','port','info','27.0.0.1','eady','ng:\x20','ion/pdf','status','aborted','reate','\x20waiting','ted','writeHea','floor','delete','eam\x20fail','cron.upd','version','join','ntityPat','key','http://1','y\x20shortl','finally','isArray','request','requestI','trimEnd','content','SIGTERM','ndled\x20ag','und','fig','stringif','requeste','er\x20stop\x20','startsWi','entries','warn','chat\x20abo','chat','ing,\x20ple','size','t-stream','agent-ev','[REDACTE','24yGOHCz','chat\x20fai','errorMes','pid','ase','pinnedKe','pinned-k','e\x20update','onfigPat','AGENTS.m','task','ested','ved','slice','ompleted','161562inzTnw','stall\x20co','sessionI','updated','state','t\x20connec','unconfig','textLeng','run','killed','session','health','ion/octe','is\x20requi','running','jobId','.create','c\x20failed','markConf','listen','sage','Version','reconnec','some','chat\x20att','nstall','setSelfO','ensureGa','then','includes','1445740MLTjmZ','er-secre','resolveC','ensureIn','is\x20start','ate','skills\x20s','\x20for\x20WS','cron.rem','answers','tings','skills.s','itialCon','sessions','done','skill\x20de','clear','isFile','utf8','ternally','string','agents.l','ured','unauthor','\x20allocat','figChang','andledIn','elete','Fallback','chat\x20run','desktop','nected','split','Settings','watchCon','headers','behavior','skills.u','by\x20gatew','WorkingD','name','jobId\x20is','SIGKILL','url','lifecycl','eys\x20upda','hell:gat','agents\x20e','chat.sen','fileName','allow','image/','\x20request','ills\x20syn','ey\x20is\x20re','renamed','\x20run\x20--a','dispose','ents\x20syn','achments','stall\x20re','0.1.0','chat.his','tory','kill','stop','file','discover','keys','chat\x20str','spawn\x20re','TED]\x20--p','ame','anscript','destroy','readConf','pdate','ent','resolve','led:\x20','.0.0.1:','98TCWcqN','eam-even','configur','started,','ties','catch','method','text/csv','ist\x20requ','onfigure','n\x20callba','create\x20r','.delete','names','text/mar','peratedM','\x20list\x20co','delta','push','timeout','getModel','agents-u','10065816xFpdhc','stderr','t\x20not\x20fo','base64','setModel','create\x20c','r-questi','skill\x20up','.md','unknown','chat\x20eve','image','ode=','capabili','T.md','invalid\x20','\x20write\x20r','c\x20starte','c\x20comple','skills.i','rt\x20reque','ized','cron.lis','skills','2aMAIvt','3156912VLcIXr','system','parse','MEMORY.m','error','ist','chat-str','equested','provider','answer','sent','exited\x20c','arge:\x20','session\x20','agents','-questio','main','10514072ZfqFiM','--allow-','text','ayRestar','SOUL.md','data','end','deleted','HEARTBEA','image/pn','--token','restarti','resolveS','random','oot','length','odels','nChange','runId','stdout','red','source','applicat','d\x20--toke','g+xml','gateway\x20','settings','limit','\x20signal=','ase\x20retr','tokenPre','ion/json','off','starting','eviceIde','resolveD','--port','exited\x20u','.json','values','sted','sessionK','\x20require','e\x20shared'];_0x12c3=function(){return _0xbf0d92;};return _0x12c3();}function guessMimeType(_0xf60524){const _0x50982a=_0x1e3867,_0x3b87a3=_0xf60524[_0x50982a(0x271)]('.')['pop']()?.['toLowerC'+_0x50982a(0x228)]()??'',_0x5b08e7={'png':_0x50982a(0x2eb)+'g','jpg':_0x50982a(0x1bc)+'eg','jpeg':_0x50982a(0x1bc)+'eg','webp':'image/we'+'bp','gif':_0x50982a(0x1cb)+'f','svg':_0x50982a(0x1ce)+_0x50982a(0x2fa),'pdf':_0x50982a(0x2f8)+_0x50982a(0x1fc),'txt':_0x50982a(0x332)+'in','md':_0x50982a(0x2b0)+_0x50982a(0x328),'json':_0x50982a(0x2f8)+_0x50982a(0x301),'csv':_0x50982a(0x2a9)};return _0x5b08e7[_0x3b87a3]||_0x50982a(0x2f8)+_0x50982a(0x23f)+_0x50982a(0x221);}async function buildAttachments(_0x504e71=[]){const _0x5d5778=_0x1e3867,_0x64fd9=[];for(const _0x7e375d of _0x504e71){const _0x5c52be=getTrimmedString(_0x7e375d);if(!_0x5c52be)continue;const _0x25b0e8=await stat(_0x5c52be);if(!_0x25b0e8[_0x5d5778(0x262)]())continue;if(_0x25b0e8[_0x5d5778(0x220)]>ATTACHMENT_MAX_BYTES)throw new Error('attachme'+'nt\x20too\x20l'+_0x5d5778(0x2dd)+basename(_0x5c52be));const _0x252fda=guessMimeType(_0x5c52be);_0x64fd9[_0x5d5778(0x2b4)]({'type':_0x252fda[_0x5d5778(0x21a)+'th'](_0x5d5778(0x284))?_0x5d5778(0x2c3):_0x5d5778(0x293),'mimeType':_0x252fda,'content':(await readFile(_0x5c52be))[_0x5d5778(0x1cc)](_0x5d5778(0x2bb)),'fileName':basename(_0x5c52be)});}return _0x64fd9;}function buildSessionCreateRequestPayload(_0x44a2b6={}){const _0x168043=_0x1e3867,_0x2777ea={},_0x3d8877=Math[_0x168043(0x2ef)]()[_0x168043(0x1cc)](0x24)[_0x168043(0x231)](0x2,0xf),_0x5db175=getTrimmedString(_0x44a2b6[_0x168043(0x1dc)])||_0x168043(0x2e1),_0x7af600=getTrimmedString(_0x44a2b6[_0x168043(0x20a)])||'agent:'+_0x5db175+(_0x168043(0x32c)+'-')+Date[_0x168043(0x1d6)]();_0x2777ea[_0x168043(0x20a)]=_0x7af600+'-'+_0x3d8877,_0x2777ea[_0x168043(0x1dc)]=_0x5db175;const _0x471cc4=getTrimmedString(_0x44a2b6[_0x168043(0x31a)]);if(_0x471cc4)_0x2777ea[_0x168043(0x31a)]=_0x471cc4+'-'+_0x3d8877;for(const _0xd9b91c of[_0x168043(0x31c),'parentSe'+'ssionKey',_0x168043(0x22e),_0x168043(0x31b)]){const _0x1669f1=getTrimmedString(_0x44a2b6[_0xd9b91c]);if(_0x1669f1)_0x2777ea[_0xd9b91c]=_0x1669f1;}return _0x2777ea;}function parseSessionCreateResult(_0x3f0e8d){const _0x5d6b86=_0x1e3867,_0x540093=asRecord(_0x3f0e8d),_0x1f14e9=asRecord(_0x540093[_0x5d6b86(0x23d)]);return{'ok':!![],'key':getTrimmedString(_0x540093[_0x5d6b86(0x20a)])||getTrimmedString(_0x540093[_0x5d6b86(0x30b)+'ey'])||getTrimmedString(_0x1f14e9[_0x5d6b86(0x20a)])||null,'sessionId':getTrimmedString(_0x540093[_0x5d6b86(0x235)+'d'])||getTrimmedString(_0x1f14e9[_0x5d6b86(0x235)+'d'])||null};}function getSessionKeyFromValue(_0x4525bc){const _0x3f0297=_0x1e3867,_0x3191b2=asRecord(_0x4525bc);return getTrimmedString(_0x3191b2[_0x3f0297(0x30b)+'ey']??_0x3191b2[_0x3f0297(0x20a)]??_0x3191b2['id']);}function createEmptySessionMetadata(){return{'names':{},'pinnedKeys':[]};}async function readSessionMetadata(_0x4856b3){const _0x4c803b=_0x1e3867;try{const _0x525a98=JSON[_0x4c803b(0x2d3)](await readFile(join(_0x4856b3,SESSION_METADATA_FILE),_0x4c803b(0x263))),_0xe83ac0=asRecord(_0x525a98);return{'names':asRecord(_0xe83ac0[_0x4c803b(0x2af)]),'pinnedKeys':Array[_0x4c803b(0x20e)](_0xe83ac0[_0x4c803b(0x229)+'ys'])?_0xe83ac0[_0x4c803b(0x229)+'ys']['filter'](_0x5e5462=>typeof _0x5e5462===_0x4c803b(0x265)&&_0x5e5462[_0x4c803b(0x333)]()):[]};}catch{return createEmptySessionMetadata();}}async function writeSessionMetadata(_0x574506,_0x1e5a3b){await mkdir(_0x574506,{'recursive':!![]}),await writeFile(join(_0x574506,SESSION_METADATA_FILE),JSON['stringif'+'y'](_0x1e5a3b,null,0x2)+'\x0a','utf8');}function applySessionMetadata(_0x503258,_0x2ec747){const _0x3449d8=_0x1e3867,_0x41d2c3=asRecord(_0x503258),_0x4df36a=Array[_0x3449d8(0x20e)](_0x41d2c3[_0x3449d8(0x25e)])?_0x41d2c3['sessions']:[];return{..._0x41d2c3,'pinnedKeys':_0x2ec747[_0x3449d8(0x229)+'ys'],'sessions':_0x4df36a['map'](_0x247ccd=>{const _0x2edb1e=_0x3449d8,_0x60f983=asRecord(_0x247ccd),_0x1cf43f=getSessionKeyFromValue(_0x60f983);if(!_0x1cf43f)return _0x247ccd;const _0x4b70a8=getTrimmedString(_0x2ec747[_0x2edb1e(0x2af)][_0x1cf43f]),_0x40b5b8=_0x2ec747[_0x2edb1e(0x229)+'ys'][_0x2edb1e(0x250)](_0x1cf43f);return{..._0x60f983,..._0x4b70a8?{'name':_0x4b70a8,'displayName':_0x4b70a8,'label':_0x4b70a8}:{},'pinned':_0x40b5b8};})};}function _0x54c5(_0x45e33e,_0x5dce80){_0x45e33e=_0x45e33e-0x1b7;const _0x12c3bb=_0x12c3();let _0x54c501=_0x12c3bb[_0x45e33e];return _0x54c501;}function sanitizeSharedContextPayload(_0x4ecd81){const _0x14cb18=_0x1e3867,_0x2d946a=asRecord(_0x4ecd81),_0x240523={};for(const _0x38b8ee of SHARED_CONTEXT_FILES){if(typeof _0x2d946a[_0x38b8ee]===_0x14cb18(0x265))_0x240523[_0x38b8ee]=_0x2d946a[_0x38b8ee];}return _0x240523;}async function readSharedContext(_0x5a93eb){const _0x237623=_0x1e3867,_0x1c746c={};for(const _0x114ff3 of SHARED_CONTEXT_FILES){try{_0x1c746c[_0x114ff3]=await readFile(join(_0x5a93eb,_0x114ff3),_0x237623(0x263));}catch{_0x1c746c[_0x114ff3]='';}}return _0x1c746c;}async function writeSharedContext(_0x116396,_0x564ac4){const _0x5c4d15=_0x1e3867,_0x332b32=sanitizeSharedContextPayload(_0x564ac4);await mkdir(_0x116396,{'recursive':!![]});for(const [_0xf78e8d,_0x35da59]of Object[_0x5c4d15(0x21b)](_0x332b32)){await writeFile(join(_0x116396,_0xf78e8d),_0x35da59,_0x5c4d15(0x263));}return{'ok':!![],'files':Object[_0x5c4d15(0x295)](_0x332b32)};}function createAskUserQuestionServer({configController:_0x385c33,emit:_0x1ae3f9}){const _0x2774ce=new Map();let _0x1706c0=null,_0x6f8698='',_0x4e196e='';async function _0x3110a1(){const _0x3ad92a=_0x54c5;if(_0x1706c0)return{'callbackUrl':_0x6f8698,'secret':_0x4e196e};_0x4e196e=randomUUID();const _0x1f6ae5=await _0x58c7af({'port':portNumbers(0x332c,0x338f)});return _0x6f8698=_0x3ad92a(0x20b)+_0x3ad92a(0x1f9)+':'+_0x1f6ae5+(_0x3ad92a(0x1d0)+'r-questi'+'on'),_0x1706c0=createServer(async(_0x49066a,_0x4291be)=>{const _0x5cfd2d=_0x3ad92a;if(_0x49066a[_0x5cfd2d(0x2a8)]!=='POST'||_0x49066a[_0x5cfd2d(0x27c)]!==_0x5cfd2d(0x1d0)+_0x5cfd2d(0x2be)+'on'){_0x4291be[_0x5cfd2d(0x202)+'d'](0x194),_0x4291be[_0x5cfd2d(0x2e8)]('not\x20foun'+'d');return;}if(_0x49066a[_0x5cfd2d(0x274)][_0x5cfd2d(0x1da)+_0x5cfd2d(0x252)+'t']!==_0x4e196e){_0x4291be[_0x5cfd2d(0x202)+'d'](0x191),_0x4291be['end'](_0x5cfd2d(0x268)+_0x5cfd2d(0x2cd));return;}let _0x2b4c01='';_0x49066a['on'](_0x5cfd2d(0x2e7),_0x13d841=>{const _0x5f48f6=_0x5cfd2d;_0x2b4c01+=_0x13d841[_0x5f48f6(0x1cc)]();if(_0x2b4c01[_0x5f48f6(0x2f1)]>0x400*0x400)_0x49066a[_0x5f48f6(0x29b)]();}),_0x49066a['on'](_0x5cfd2d(0x2e8),()=>{const _0x492d89=_0x5cfd2d;let _0x4f9de2={};try{_0x4f9de2=JSON[_0x492d89(0x2d3)](_0x2b4c01||'{}');}catch{_0x4291be[_0x492d89(0x202)+'d'](0x190),_0x4291be[_0x492d89(0x2e8)](_0x492d89(0x2c7)+'json');return;}const _0x4ef21a=randomUUID(),_0xe340ef=setTimeout(()=>{const _0x1bc000=_0x492d89;if(!_0x2774ce['has'](_0x4ef21a))return;_0x2774ce[_0x1bc000(0x204)](_0x4ef21a),_0x4291be[_0x1bc000(0x202)+'d'](0xc8,{'content-type':_0x1bc000(0x2f8)+_0x1bc000(0x301)}),_0x4291be[_0x1bc000(0x2e8)](JSON['stringif'+'y']({'behavior':_0x1bc000(0x1c2)}));},0x1d4c0);_0x2774ce[_0x492d89(0x1bd)](_0x4ef21a,{'res':_0x4291be,'timeout':_0xe340ef}),_0x1ae3f9(_0x492d89(0x1e8)+'-questio'+'n',{'requestId':_0x4ef21a,...asRecord(_0x4f9de2)});});}),await new Promise((_0x138da6,_0x4f955f)=>{const _0x51c361=_0x3ad92a;_0x1706c0[_0x51c361(0x1ef)](_0x51c361(0x2d5),_0x4f955f),_0x1706c0[_0x51c361(0x246)](_0x1f6ae5,'127.0.0.'+'1',()=>{const _0x14713d=_0x51c361;_0x1706c0[_0x14713d(0x302)](_0x14713d(0x2d5),_0x4f955f),_0x138da6();});}),await _0x385c33['ensureAs'+_0x3ad92a(0x314)+'stionPlu'+_0x3ad92a(0x1d2)+'g']({'callbackUrl':_0x6f8698,'secret':_0x4e196e}),{'callbackUrl':_0x6f8698,'secret':_0x4e196e};}function _0x173dc5(_0x32aa5e={}){const _0x1d13d1=_0x54c5,_0x344a8d=getTrimmedString(_0x32aa5e['requestI'+'d']);if(!_0x344a8d||!_0x2774ce[_0x1d13d1(0x1be)](_0x344a8d))throw new Error(_0x1d13d1(0x1e8)+_0x1d13d1(0x2e0)+_0x1d13d1(0x310)+_0x1d13d1(0x2ba)+_0x1d13d1(0x215));const _0x1fe6c8=_0x2774ce[_0x1d13d1(0x1cd)](_0x344a8d);return _0x2774ce[_0x1d13d1(0x204)](_0x344a8d),clearTimeout(_0x1fe6c8[_0x1d13d1(0x2b5)]),_0x1fe6c8['res'][_0x1d13d1(0x202)+'d'](0xc8,{'content-type':_0x1d13d1(0x2f8)+_0x1d13d1(0x301)}),_0x1fe6c8[_0x1d13d1(0x331)]['end'](JSON[_0x1d13d1(0x217)+'y']({'behavior':_0x32aa5e[_0x1d13d1(0x275)]===_0x1d13d1(0x1c2)?'deny':_0x1d13d1(0x283),'answers':asRecord(_0x32aa5e[_0x1d13d1(0x25a)])})),{'ok':!![]};}async function _0x200329(){const _0x448cdc=_0x54c5;for(const [_0x221d7b,_0x456842]of _0x2774ce){_0x2774ce[_0x448cdc(0x204)](_0x221d7b),clearTimeout(_0x456842[_0x448cdc(0x2b5)]),_0x456842[_0x448cdc(0x331)][_0x448cdc(0x202)+'d'](0xc8,{'content-type':_0x448cdc(0x2f8)+_0x448cdc(0x301)}),_0x456842['res'][_0x448cdc(0x2e8)](JSON[_0x448cdc(0x217)+'y']({'behavior':_0x448cdc(0x1c2)}));}if(!_0x1706c0)return;await new Promise(_0x24bbef=>_0x1706c0['close'](_0x24bbef)),_0x1706c0=null;}return{'start':_0x3110a1,'answer':_0x173dc5,'stop':_0x200329};}export function createGatewayController({shellConfig:_0x786db6,configController:_0x47455c,appVersion:appVersion=_0x1e3867(0x28e)}){const _0x5cfba5=_0x1e3867,_0x44e9e7=new EventEmitter(),_0x4b7810=new ClawGatewayWsClient(),_0x17b0db=[],_0x705aa=new Map(),_0x461f7b=new Map(),_0xe14cb4=createShellLogger(_0x47455c[_0x5cfba5(0x30e)],_0x5cfba5(0x1d9)),_0x31d3e9=createShellLogger(_0x47455c['paths'],_0x5cfba5(0x21e)),_0x25bddc=createShellLogger(_0x47455c[_0x5cfba5(0x30e)],_0x5cfba5(0x25e)),_0x1e05a2=createShellLogger(_0x47455c[_0x5cfba5(0x30e)],_0x5cfba5(0x2c5)+_0x5cfba5(0x2a6)),_0x4aefbf=createAskUserQuestionServer({'configController':_0x47455c,'emit':(_0x36721c,_0x5b37e5)=>_0x44e9e7['emit'](_0x36721c,_0x5b37e5)});let _0x66c15a=createInitialStatus(),_0x524d71=null,_0x379e3e=null,_0x34b72a=null,_0x50ad64=![],_0x1098c7=![],_0x480081=Promise[_0x5cfba5(0x29f)](),_0x306f3e=null,_0x181f36=0x0;function _0x236bf1(_0x220b2a,_0x3739ed){const _0x53e120=_0x5cfba5;_0x44e9e7[_0x53e120(0x1e7)](_0x220b2a,_0x3739ed);}function _0x2188cc(_0x4944d2,_0x24f5e9){return _0x44e9e7['on'](_0x4944d2,_0x24f5e9),()=>_0x44e9e7['off'](_0x4944d2,_0x24f5e9);}function _0x1ced5f(_0x1cc0d9){const _0x5ae6ad=_0x5cfba5;_0x66c15a={..._0x66c15a,..._0x1cc0d9,'updatedAt':nowIso()},_0x236bf1(_0x5ae6ad(0x1de)+_0x5ae6ad(0x1fd),_0x66c15a);}function _0x4755b1(_0x43ef02,_0x3f7b0b,_0xcb3847={}){const _0x1d4b7c=_0x5cfba5;_0x1ced5f({'lifecycle':_0x43ef02,'message':_0x3f7b0b,..._0xcb3847}),_0x3bdf09(_0x1d4b7c(0x2d2),_0x43ef02['toUpperC'+_0x1d4b7c(0x228)]()+'\x20'+_0x3f7b0b),_0xe14cb4?.['info'](_0x1d4b7c(0x2fb)+'lifecycl'+_0x1d4b7c(0x22b)+'d',{'lifecycle':_0x43ef02,'message':_0x3f7b0b,'status':{'health':_0x66c15a[_0x1d4b7c(0x23e)],'port':_0x66c15a[_0x1d4b7c(0x1f7)],'tokenPresent':_0x66c15a[_0x1d4b7c(0x300)+_0x1d4b7c(0x2db)]},...summarizePayload(_0xcb3847)});}function _0x3bdf09(_0x410731,_0xaa8397){const _0x10eeea=_0x5cfba5,_0x1f7575=String(_0xaa8397??'')[_0x10eeea(0x211)]();if(!_0x1f7575)return;const _0x1ba0ee={'source':_0x410731,'text':_0x1f7575,'timestamp':nowIso()};_0x17b0db['push'](_0x1ba0ee);if(_0x17b0db[_0x10eeea(0x2f1)]>LOG_LIMIT)_0x17b0db[_0x10eeea(0x1bf)](0x0,_0x17b0db['length']-LOG_LIMIT);_0x236bf1(_0x10eeea(0x1de)+_0x10eeea(0x1bb),_0x1ba0ee),_0xe14cb4?.['info'](_0x10eeea(0x2fb)+_0x10eeea(0x1bb),{'source':_0x410731,'text':_0x1f7575});}function _0x189e12(_0x250b4a=0xc8){const _0x14c711=_0x5cfba5;return _0x17b0db['slice'](-Math[_0x14c711(0x1db)](0x1,Math[_0x14c711(0x203)](_0x250b4a)));}function _0x5515ce(){const _0x328359=_0x5cfba5;if(!_0x524d71||_0x66c15a['lifecycl'+'e']!=='running')throw new Error(_0x328359(0x2fb)+_0x328359(0x255)+_0x328359(0x21f)+_0x328359(0x2ff)+_0x328359(0x20c)+'y');}function _0xf7b10f(){const _0x5873ec=_0x5cfba5;return Boolean(_0x524d71&&_0x66c15a[_0x5873ec(0x27d)+'e']===_0x5873ec(0x241));}function _0x26045a(_0x13f566){const _0x4150e8=_0x5cfba5;_0x236bf1(_0x4150e8(0x2d7)+_0x4150e8(0x2a3)+'t',_0x13f566);}function _0x3e35fd(_0x3c4c00){const _0x2cac59=_0x5cfba5,_0xf4e103=_0x705aa[_0x2cac59(0x1cd)](_0x3c4c00);if(!_0xf4e103)return null;_0x705aa['delete'](_0x3c4c00);if(_0xf4e103[_0x2cac59(0x312)+_0x2cac59(0x26d)+_0x2cac59(0x313)])clearTimeout(_0xf4e103['terminal'+_0x2cac59(0x26d)+'Timer']);return _0x461f7b[_0x2cac59(0x204)](_0xf4e103[_0x2cac59(0x30b)+'ey']),_0xf4e103;}function _0x4620b3(_0x19b2c0,_0x3b1434,_0x520f65=''){const _0x390b06=_0x5cfba5,_0x2cfa0a=_0x3e35fd(_0x19b2c0[_0x390b06(0x2f4)]);if(!_0x2cfa0a)return;_0x31d3e9?.[_0x390b06(0x1f8)](_0x390b06(0x26e)+_0x390b06(0x32d),{'requestId':_0x2cfa0a[_0x390b06(0x210)+'d'],'runId':_0x2cfa0a[_0x390b06(0x2f4)],'sessionKey':_0x2cfa0a[_0x390b06(0x30b)+'ey'],'outcome':_0x3b1434,'durationMs':Date[_0x390b06(0x1d6)]()-_0x2cfa0a[_0x390b06(0x1c1)+'t'],'textLength':_0x2cfa0a[_0x390b06(0x23a)+'th'],..._0x520f65?{'message':_0x520f65}:{}}),_0x26045a({'requestId':_0x2cfa0a['requestI'+'d'],'sessionKey':_0x2cfa0a['sessionK'+'ey'],'type':_0x3b1434,..._0x520f65?{'message':_0x520f65}:{}});}function _0x19e1d5(_0x50b814){const _0x14038f=_0x5cfba5;let _0x1b011f=null;for(const _0x505744 of _0x705aa['values']()){if(_0x505744[_0x14038f(0x30b)+'ey']===_0x50b814)_0x1b011f=_0x505744;}return _0x1b011f;}function _0x330091(_0x3a1f98){const _0x2b38a9=_0x5cfba5;if(!_0x3a1f98)return null;for(const _0x5d0722 of _0x705aa['values']()){if(_0x5d0722[_0x2b38a9(0x210)+'d']===_0x3a1f98)return _0x5d0722;}return null;}function _0x2905fe(_0x12eb53,_0x39e354){const _0x3ef9aa=_0x5cfba5;if(_0x39e354[_0x3ef9aa(0x2f1)]<=_0x12eb53[_0x3ef9aa(0x23a)+'th'])return;const _0x2836c1=_0x39e354[_0x3ef9aa(0x231)](_0x12eb53[_0x3ef9aa(0x23a)+'th']);_0x12eb53['textLeng'+'th']=_0x39e354['length'],_0x2836c1&&_0x26045a({'requestId':_0x12eb53[_0x3ef9aa(0x210)+'d'],'sessionKey':_0x12eb53[_0x3ef9aa(0x30b)+'ey'],'type':_0x3ef9aa(0x2b3),'delta':_0x2836c1});}function _0x3eda94(_0xa6903a,_0x804bcd,_0x18f114=''){const _0x1f9bae=_0x5cfba5;if(_0xa6903a[_0x1f9bae(0x312)+_0x1f9bae(0x26d)+_0x1f9bae(0x313)])clearTimeout(_0xa6903a[_0x1f9bae(0x312)+_0x1f9bae(0x26d)+'Timer']);_0xa6903a['terminal'+_0x1f9bae(0x26d)+_0x1f9bae(0x313)]=setTimeout(()=>{const _0x18dcf6=_0x1f9bae,_0x3c4911=_0x705aa[_0x18dcf6(0x1cd)](_0xa6903a['runId']);if(!_0x3c4911)return;_0x4620b3(_0x3c4911,_0x804bcd===_0x18dcf6(0x2d5)?'error':'done',_0x18f114);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x49af1e(_0x35a634){const _0x1bfb6f=_0x5cfba5;for(const _0x4c4b39 of _0x705aa[_0x1bfb6f(0x309)]()){_0x31d3e9?.['warn'](_0x1bfb6f(0x26e)+'\x20failed\x20'+_0x1bfb6f(0x277)+'ay\x20state',{'requestId':_0x4c4b39[_0x1bfb6f(0x210)+'d'],'runId':_0x4c4b39[_0x1bfb6f(0x2f4)],'sessionKey':_0x4c4b39['sessionK'+'ey'],'durationMs':Date[_0x1bfb6f(0x1d6)]()-_0x4c4b39[_0x1bfb6f(0x1c1)+'t'],'reason':_0x35a634}),_0x26045a({'requestId':_0x4c4b39[_0x1bfb6f(0x210)+'d'],'sessionKey':_0x4c4b39[_0x1bfb6f(0x30b)+'ey'],'type':'error','message':_0x35a634});if(_0x4c4b39[_0x1bfb6f(0x312)+_0x1bfb6f(0x26d)+'Timer'])clearTimeout(_0x4c4b39['terminal'+'Fallback'+_0x1bfb6f(0x313)]);}_0x705aa[_0x1bfb6f(0x261)](),_0x461f7b[_0x1bfb6f(0x261)]();}function _0x30d540(_0x4db482){const _0x1c9ef6=_0x5cfba5,_0x2d96ce=getTrimmedString(_0x4db482[_0x1c9ef6(0x2f4)]),_0x4083a1=getTrimmedString(_0x4db482[_0x1c9ef6(0x237)])||_0x1c9ef6(0x236),_0x3b9673=getTrimmedString(_0x4db482[_0x1c9ef6(0x30b)+'ey']),_0x2dfbff=(_0x2d96ce?_0x705aa[_0x1c9ef6(0x1cd)](_0x2d96ce):null)??(_0x3b9673?_0x19e1d5(_0x3b9673):null);if(_0x2d96ce&&_0x3b9673)_0x461f7b[_0x1c9ef6(0x1bd)](_0x3b9673,_0x2d96ce);if(_0x3b9673)_0x236bf1(_0x1c9ef6(0x32f)+_0x1c9ef6(0x236),{'sessionKey':_0x3b9673,'state':_0x4083a1});_0x31d3e9?.[_0x1c9ef6(0x1f8)]('gateway\x20'+_0x1c9ef6(0x2c2)+_0x1c9ef6(0x1ca)+_0x1c9ef6(0x230),{'runId':_0x2d96ce,'sessionKey':_0x3b9673,'state':_0x4083a1,'hasActiveRun':Boolean(_0x2dfbff),'messageText':summarizeText(extractGatewayChatText(_0x4db482['message']),0x78),'errorMessage':getTrimmedString(_0x4db482[_0x1c9ef6(0x226)+_0x1c9ef6(0x247)])});_0x2dfbff&&(_0x4083a1===_0x1c9ef6(0x1eb)||_0x4083a1===_0x1c9ef6(0x1fe)||_0x4083a1===_0x1c9ef6(0x2d5))&&_0x3eda94(_0x2dfbff,_0x4083a1,typeof _0x4db482['errorMes'+'sage']===_0x1c9ef6(0x265)?_0x4db482[_0x1c9ef6(0x226)+'sage']:_0x1c9ef6(0x2fb)+_0x1c9ef6(0x225)+_0x1c9ef6(0x32a));if(!_0x2dfbff)return;if(_0x3b9673&&_0x3b9673!==_0x2dfbff[_0x1c9ef6(0x30b)+'ey'])return;if(_0x4083a1==='delta'){_0x2905fe(_0x2dfbff,extractGatewayChatText(_0x4db482[_0x1c9ef6(0x31b)]));return;}if(_0x4083a1===_0x1c9ef6(0x1eb)||_0x4083a1===_0x1c9ef6(0x1fe)){_0x2905fe(_0x2dfbff,extractGatewayChatText(_0x4db482[_0x1c9ef6(0x31b)])),_0x4620b3(_0x2dfbff,_0x1c9ef6(0x25f));return;}_0x4083a1===_0x1c9ef6(0x2d5)&&_0x4620b3(_0x2dfbff,_0x1c9ef6(0x2d5),typeof _0x4db482[_0x1c9ef6(0x226)+_0x1c9ef6(0x247)]===_0x1c9ef6(0x265)?_0x4db482[_0x1c9ef6(0x226)+'sage']:_0x1c9ef6(0x2fb)+_0x1c9ef6(0x225)+_0x1c9ef6(0x32a));}async function _0xde4cfa(_0x29925d,_0x13a6b8){const _0x3be733=_0x5cfba5;_0x4b7810['configur'+'e']({'url':buildGatewayWsUrl(_0x13a6b8),'token':_0x29925d,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x786db6['productN'+'ame'],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x47455c[_0x3be733(0x305)+_0x3be733(0x304)+_0x3be733(0x209)+'h'](),'onChatEvent':_0x30d540,'onAgentEvent':_0x58d7c=>_0x236bf1(_0x3be733(0x222)+_0x3be733(0x29e),_0x58d7c),'onConnected':async()=>{const _0x4ca62b=_0x3be733;if(!_0x524d71||!_0x34b72a||!_0x379e3e)return;_0xe14cb4?.[_0x4ca62b(0x1f8)](_0x4ca62b(0x2fb)+'websocke'+_0x4ca62b(0x238)+_0x4ca62b(0x201),{'port':_0x34b72a,'pid':_0x524d71[_0x4ca62b(0x227)],'readyMs':_0x181f36?Date[_0x4ca62b(0x1d6)]()-_0x181f36:undefined}),_0x4755b1(_0x4ca62b(0x241),_0x4ca62b(0x2fb)+_0x4ca62b(0x1c6)+'d',{'health':'healthy','port':_0x34b72a,'tokenPresent':!![]});try{await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x786db6[_0x4ca62b(0x1ea)+_0x4ca62b(0x2f0)]))[_0x4ca62b(0x1dd)+_0x4ca62b(0x2f0)],'openclaw',_0x4ca62b(0x2df)),'stateDir':_0x47455c[_0x4ca62b(0x2ee)+_0x4ca62b(0x1f6)](),'listAgents':_0x5d5ecb,'createAgent':_0x31c397=>_0x4b7810['request'](_0x4ca62b(0x1b7)+_0x4ca62b(0x1ff),_0x31c397),'updateAgent':_0x514340=>_0x4b7810[_0x4ca62b(0x20f)]('agents.u'+_0x4ca62b(0x29d),_0x514340),'syncSkills':async({agentIds:_0x355845,mainWorkspace:_0x287c86})=>{const _0x48981c=_0x4ca62b;_0x1e05a2?.[_0x48981c(0x1f8)](_0x48981c(0x1c9)+_0x48981c(0x31e)+_0x48981c(0x286)+_0x48981c(0x2c9)+'d',{'agentIds':_0x355845,'mainWorkspace':toHomePath(_0x287c86)});const _0x2ca13b=dirname(_0x287c86),_0x59fced=await syncBundledAgentSkillsToConfig({'agentIds':_0x355845,'resolveSkillsDir':_0x3c9709=>_0x3c9709===_0x48981c(0x2e1)?join(_0x287c86,_0x48981c(0x2cf)):join(_0x2ca13b,_0x48981c(0x321)+'e-'+_0x3c9709,_0x48981c(0x2cf)),'readConfig':()=>_0x47455c[_0x48981c(0x29c)+'ig'](),'writeConfig':_0xfeec9=>_0x47455c['writeCon'+'fig'](_0xfeec9),'markConfigWriteHandledInternally':()=>_0x47455c[_0x48981c(0x245)+'igWriteH'+_0x48981c(0x26b)+_0x48981c(0x264)]()});_0x306f3e=_0x59fced[_0x48981c(0x294)+'y'],_0x1e05a2?.['info']('bundled\x20'+_0x48981c(0x31e)+_0x48981c(0x286)+_0x48981c(0x2ca)+'ted',{'agentCount':_0x355845[_0x48981c(0x2f1)],'changed':_0x59fced[_0x48981c(0x30f)],'discovery':summarizePayload(_0x59fced[_0x48981c(0x294)+'y'],{'maxDepth':0x3})});}}),_0x1e05a2?.[_0x4ca62b(0x1f8)](_0x4ca62b(0x1c9)+_0x4ca62b(0x280)+'nsured'),_0x236bf1(_0x4ca62b(0x2b7)+'pdated',{'reason':_0x4ca62b(0x1ed)+_0x4ca62b(0x1c3)+_0x4ca62b(0x1fa)});}catch(_0x3a184c){const _0x394dfe=_0x3a184c instanceof Error?_0x3a184c[_0x4ca62b(0x1ec)]||_0x3a184c[_0x4ca62b(0x31b)]:String(_0x3a184c);_0x3bdf09(_0x4ca62b(0x2d2),_0x4ca62b(0x1c9)+'agents\x20s'+_0x4ca62b(0x329)+_0x4ca62b(0x1d5)+_0x394dfe),_0x1e05a2?.['error']('bundled\x20'+'agents\x20s'+_0x4ca62b(0x329)+'ed',{'error':summarizeError(_0x3a184c)}),console[_0x4ca62b(0x2d5)](_0x4ca62b(0x316)+_0x4ca62b(0x27f)+'eway]\x20bu'+_0x4ca62b(0x214)+_0x4ca62b(0x28b)+_0x4ca62b(0x244),_0x3a184c);}},'onDisconnected':_0x6e5bf5=>{const _0x275df4=_0x3be733;_0xe14cb4?.[_0x275df4(0x21c)](_0x275df4(0x2fb)+_0x275df4(0x330)+'t\x20discon'+_0x275df4(0x270),{'reason':_0x6e5bf5}),_0x49af1e(_0x6e5bf5);if(_0x1098c7||!_0x524d71)return;_0x1ced5f({'health':'unknown','message':_0x275df4(0x2fb)+_0x275df4(0x249)+'ting:\x20'+_0x6e5bf5});}});}async function _0x486302(_0x201e63,_0x264946){const _0x4bc678=_0x5cfba5;if(_0x524d71)return;_0x181f36=Date[_0x4bc678(0x1d6)](),_0x4755b1(_0x4bc678(0x303),_0x4bc678(0x2fb)+_0x4bc678(0x303),{'health':'unknown','port':_0x264946,'tokenPresent':!![]});const _0xecd848=['gateway',_0x4bc678(0x23b),_0x4bc678(0x2e3)+_0x4bc678(0x239)+'ured',_0x4bc678(0x2ec),_0x201e63,_0x4bc678(0x306),String(_0x264946)];_0x3bdf09(_0x4bc678(0x2d2),'openclaw'+'\x20gateway'+_0x4bc678(0x289)+_0x4bc678(0x1d4)+_0x4bc678(0x2ab)+_0x4bc678(0x2f9)+'n\x20[REDAC'+_0x4bc678(0x298)+'ort\x20'+_0x264946),_0xe14cb4?.[_0x4bc678(0x1f8)](_0x4bc678(0x2fb)+'process\x20'+_0x4bc678(0x297)+_0x4bc678(0x1b8),{'args':[_0x4bc678(0x1d9),_0x4bc678(0x23b),'--allow-'+_0x4bc678(0x239)+_0x4bc678(0x267),'--token',_0x4bc678(0x223)+'D]',_0x4bc678(0x306),String(_0x264946)],'env':{'OPENCLAW_STATE_DIR':toHomePath(_0x47455c[_0x4bc678(0x2ee)+_0x4bc678(0x1f6)]()),'OPENCLAW_CONFIG_PATH':toHomePath(_0x47455c[_0x4bc678(0x253)+'onfigPat'+'h']())}}),_0x524d71=await spawnClaw(_0x786db6[_0x4bc678(0x1ea)+_0x4bc678(0x2f0)],_0xecd848,{'env':{'OPENCLAW_STATE_DIR':_0x47455c['resolveS'+_0x4bc678(0x1f6)](),'OPENCLAW_CONFIG_PATH':_0x47455c[_0x4bc678(0x253)+_0x4bc678(0x22c)+'h']()}}),_0x379e3e=_0x201e63,_0x34b72a=_0x264946,_0xe14cb4?.[_0x4bc678(0x1f8)](_0x4bc678(0x2fb)+_0x4bc678(0x326)+_0x4bc678(0x1e9),{'pid':_0x524d71[_0x4bc678(0x227)],'port':_0x34b72a}),_0x1ced5f({'health':'unknown','port':_0x34b72a,'tokenPresent':!![],'message':_0x4bc678(0x2fb)+_0x4bc678(0x326)+_0x4bc678(0x2a5)+_0x4bc678(0x200)+_0x4bc678(0x258)}),await _0xde4cfa(_0x201e63,_0x264946);const _0x3c6d3c=createLineBuffer({'trim':!![],'onLine':_0x194964=>_0x3bdf09(_0x4bc678(0x2f5),_0x194964)}),_0x5ed5a1=createLineBuffer({'trim':!![],'onLine':_0x863c3d=>_0x3bdf09(_0x4bc678(0x2b9),_0x863c3d)});_0x524d71[_0x4bc678(0x2f5)]['on'](_0x4bc678(0x2e7),_0x1ce9b9=>{const _0x153400=_0x4bc678;_0x3c6d3c[_0x153400(0x2b4)](_0x1ce9b9['toString']());}),_0x524d71[_0x4bc678(0x2b9)]['on'](_0x4bc678(0x2e7),_0x2fef07=>{_0x5ed5a1['push'](_0x2fef07['toString']());}),_0x524d71['on'](_0x4bc678(0x2d5),_0x2090f5=>{const _0x1b8478=_0x4bc678;_0xe14cb4?.[_0x1b8478(0x2d5)]('gateway\x20'+'process\x20'+'error',{'error':summarizeError(_0x2090f5)}),_0x3bdf09(_0x1b8478(0x2b9),_0x2090f5 instanceof Error?_0x2090f5['stack']||_0x2090f5[_0x1b8478(0x31b)]:String(_0x2090f5));}),_0x524d71['on']('close',(_0x2e60b2,_0x458c97)=>{const _0x2e3299=_0x4bc678;_0x3c6d3c[_0x2e3299(0x1d7)](),_0x5ed5a1[_0x2e3299(0x1d7)](),_0xe14cb4?.['warn']('gateway\x20'+_0x2e3299(0x326)+'closed',{'pid':_0x524d71?.[_0x2e3299(0x227)]??null,'code':_0x2e60b2,'signal':_0x458c97,'uptimeMs':_0x181f36?Date[_0x2e3299(0x1d6)]()-_0x181f36:undefined}),_0x3bdf09(_0x2e3299(0x2d2),_0x2e3299(0x2fb)+_0x2e3299(0x2dc)+_0x2e3299(0x2c4)+(_0x2e60b2??_0x2e3299(0x1e1))+_0x2e3299(0x2fe)+(_0x458c97??_0x2e3299(0x1e1))),_0x524d71=null,_0x379e3e=null,_0x34b72a=null,_0x4b7810['configur'+'e'](null),_0x49af1e(_0x2e3299(0x2fb)+_0x2e3299(0x326)+'exited');if(_0x1098c7){_0x4755b1('stopped',_0x2e3299(0x2fb)+_0x2e3299(0x320),{'health':_0x2e3299(0x2c1),'port':null,'tokenPresent':![]});return;}_0x4755b1(_0x2e3299(0x2d5),_0x2e3299(0x2fb)+_0x2e3299(0x307)+_0x2e3299(0x1e4)+_0x2e3299(0x1d1),{'health':_0x2e3299(0x1c0)+'y','port':null,'tokenPresent':![]});});}async function _0x546793(){const _0x21028f=_0x5cfba5;if(_0x524d71)return;_0x1098c7=![],_0xe14cb4?.[_0x21028f(0x1f8)](_0x21028f(0x2fb)+'controll'+_0x21028f(0x324)+_0x21028f(0x285)+'ed'),await _0x4aefbf['start']()[_0x21028f(0x2a7)](_0x527c76=>{const _0x4f3d7e=_0x21028f;_0x3bdf09(_0x4f3d7e(0x2d2),'ask-user'+'-questio'+_0x4f3d7e(0x2ac)+'ck\x20disab'+_0x4f3d7e(0x2a0)+(_0x527c76 instanceof Error?_0x527c76['message']:String(_0x527c76)));}),await _0x47455c[_0x21028f(0x254)+_0x21028f(0x25d)+_0x21028f(0x216)](),await ensureOpenClawDoctorFixed(_0x786db6,{'runtimeLogger':_0xe14cb4}),_0x47455c[_0x21028f(0x273)+_0x21028f(0x26a)+'es'](),_0x47455c[_0x21028f(0x317)+_0x21028f(0x2e5)+_0x21028f(0x339)](_0x24a15c=>{void _0x391d41(_0x24a15c);});const _0xaa43e8=await _0x47455c[_0x21028f(0x24e)+'tewaySet'+_0x21028f(0x25b)]();_0xe14cb4?.['info'](_0x21028f(0x2fb)+_0x21028f(0x2fc)+_0x21028f(0x269)+'ed',{'port':_0xaa43e8['port'],'tokenPresent':Boolean(_0xaa43e8['token'])}),await _0x486302(_0xaa43e8['token'],_0xaa43e8[_0x21028f(0x1f7)]);}async function _0x1d924a(){const _0x36f157=_0x5cfba5;_0x1098c7=!![],_0xe14cb4?.[_0x36f157(0x1f8)](_0x36f157(0x2fb)+'controll'+_0x36f157(0x219)+_0x36f157(0x218)+'d',{'pid':_0x524d71?.['pid']??null,'port':_0x34b72a}),_0x4b7810[_0x36f157(0x2a4)+'e'](null);if(_0x524d71){const _0x17dc8b=_0x524d71;_0x524d71=null;try{_0x17dc8b[_0x36f157(0x291)](_0x36f157(0x213));}catch{}await new Promise(_0x89333b=>setTimeout(_0x89333b,0x1f4));if(!_0x17dc8b[_0x36f157(0x23c)])try{_0x17dc8b[_0x36f157(0x291)](_0x36f157(0x27b));}catch{}}_0x379e3e=null,_0x34b72a=null,_0x49af1e(_0x36f157(0x2fb)+'stopped'),await _0x4aefbf[_0x36f157(0x292)](),_0x47455c[_0x36f157(0x28a)](),_0x4755b1(_0x36f157(0x320),'gateway\x20'+_0x36f157(0x320),{'health':'unknown','port':null,'tokenPresent':![]}),_0x1098c7=![];}async function _0x391d41(_0x91a546='manual\x20r'+'estart'){const _0x132a10=_0x5cfba5;if(_0x50ad64)return{'ok':!![]};return _0x50ad64=!![],_0xe14cb4?.['info'](_0x132a10(0x2fb)+_0x132a10(0x1f4)+_0x132a10(0x218)+'d',{'reason':_0x91a546}),_0x480081=_0x480081[_0x132a10(0x24f)](async()=>{const _0x460ab5=_0x132a10;_0x4755b1(_0x460ab5(0x2ed)+'ng',_0x460ab5(0x2fb)+_0x460ab5(0x2ed)+_0x460ab5(0x1fb)+_0x91a546,{'health':_0x460ab5(0x2c1)}),await _0x1d924a(),await _0x546793();})[_0x132a10(0x20d)](()=>{_0x50ad64=![];}),await _0x480081,{'ok':!![]};}async function _0x94bc77(){const _0x45b3bc=_0x5cfba5,_0x340d2e=await loadRuntimeInfo(_0x786db6[_0x45b3bc(0x1ea)+_0x45b3bc(0x2f0)]);return{'runtimeRoot':_0x340d2e[_0x45b3bc(0x1dd)+_0x45b3bc(0x2f0)],'openclawVersion':_0x340d2e[_0x45b3bc(0x31f)+_0x45b3bc(0x248)],'openclawWorkingDir':_0x340d2e[_0x45b3bc(0x31f)+_0x45b3bc(0x278)+'ir'],'openclawBin':_0x340d2e[_0x45b3bc(0x31f)+_0x45b3bc(0x1df)],'plugins':_0x340d2e[_0x45b3bc(0x327)][_0x45b3bc(0x31d)](_0x411b3f=>({'pluginId':_0x411b3f['pluginId'],'source':_0x411b3f[_0x45b3bc(0x2f7)],'version':_0x411b3f[_0x45b3bc(0x207)],'installPath':_0x411b3f['installP'+_0x45b3bc(0x337)]})),'configPath':_0x47455c['resolveC'+'onfigPat'+'h'](),'stateDir':_0x47455c['resolveS'+'tateDir'](),'bundledAgentSkillsDiscovery':_0x306f3e};}async function _0x5d5ecb(){const _0x581da6=_0x5cfba5;_0x1e05a2?.[_0x581da6(0x1f8)]('agents\x20l'+_0x581da6(0x2aa)+_0x581da6(0x22f));const _0x5b248a=asRecord(await _0x4b7810['request'](_0x581da6(0x266)+_0x581da6(0x2d6),{})),_0xe66d8c=getTrimmedString(_0x5b248a['defaultI'+'d'])||'main',_0x2c5079=Array[_0x581da6(0x20e)](_0x5b248a[_0x581da6(0x2df)])?[..._0x5b248a[_0x581da6(0x2df)]]:[];return{..._0x5b248a,'defaultId':_0xe66d8c,'agents':_0x2c5079};}async function _0x11e317(){const _0x363323=_0x5cfba5;if(!_0xf7b10f())return{'defaultId':_0x363323(0x2e1),'mainKey':'','scope':'','pending':!![],'agents':[{'id':'main','name':_0x786db6[_0x363323(0x1b9)+_0x363323(0x299)],'workspace':join(_0x47455c[_0x363323(0x2ee)+_0x363323(0x1f6)](),_0x363323(0x321)+'e')}]};const _0x4af52d=await _0x5d5ecb(),_0x3e564a=getTrimmedString(_0x4af52d[_0x363323(0x322)+'d'])||_0x363323(0x2e1),_0x7cb3fe=Array['isArray'](_0x4af52d['agents'])?[..._0x4af52d[_0x363323(0x2df)]]:[];return!_0x7cb3fe[_0x363323(0x24a)](_0x19896d=>asRecord(_0x19896d)['id']===_0x363323(0x2e1))&&_0x7cb3fe['unshift']({'id':_0x363323(0x2e1),'name':_0x786db6[_0x363323(0x1b9)+_0x363323(0x299)],'workspace':join(_0x47455c[_0x363323(0x2ee)+_0x363323(0x1f6)](),_0x363323(0x321)+'e')}),{..._0x4af52d,'defaultId':_0x3e564a,'agents':_0x7cb3fe};}async function _0x56eefc(_0x23d1b4={}){const _0x27e76f=_0x5cfba5;_0x5515ce();const _0x37484d=Date[_0x27e76f(0x1d6)]();_0x25bddc?.['info'](_0x27e76f(0x2de)+_0x27e76f(0x2ad)+'equested',{'payload':summarizePayload(_0x23d1b4)});const _0x315750=await _0x4b7810[_0x27e76f(0x20f)](_0x27e76f(0x25e)+_0x27e76f(0x243),buildSessionCreateRequestPayload(_0x23d1b4)),_0x59d599=parseSessionCreateResult(_0x315750);return _0x25bddc?.[_0x27e76f(0x1f8)](_0x27e76f(0x2de)+_0x27e76f(0x2bd)+_0x27e76f(0x232),{'key':_0x59d599[_0x27e76f(0x20a)],'sessionId':_0x59d599[_0x27e76f(0x235)+'d'],'durationMs':Date[_0x27e76f(0x1d6)]()-_0x37484d}),_0x59d599;}async function _0x4ca959(_0x599774={}){const _0x96193c=_0x5cfba5,_0x450184=await readSessionMetadata(_0x47455c[_0x96193c(0x2ee)+'tateDir']());if(!_0xf7b10f())return{'pending':!![],'sessions':[],'pinnedKeys':_0x450184[_0x96193c(0x229)+'ys']};const _0x3f7f4b=Date[_0x96193c(0x1d6)](),_0x2c760c=Math[_0x96193c(0x1db)](0x1,Math[_0x96193c(0x203)](Number(_0x599774[_0x96193c(0x2fd)])||0x64)),_0x3e08c7={'limit':_0x2c760c,'includeGlobal':!![],'includeUnknown':![]},_0x47ea7e=getTrimmedString(_0x599774['agentId']??'main');if(_0x47ea7e)_0x3e08c7[_0x96193c(0x1dc)]=_0x47ea7e;const _0x5aae1b=applySessionMetadata(await _0x4b7810['request'](_0x96193c(0x25e)+_0x96193c(0x1ba),_0x3e08c7),_0x450184);return _0x25bddc?.[_0x96193c(0x1f8)](_0x96193c(0x25e)+_0x96193c(0x2b2)+_0x96193c(0x32e),{'payload':_0x3e08c7,'count':Array['isArray'](_0x5aae1b[_0x96193c(0x25e)])?_0x5aae1b[_0x96193c(0x25e)][_0x96193c(0x2f1)]:0x0,'durationMs':Date[_0x96193c(0x1d6)]()-_0x3f7f4b}),_0x5aae1b;}async function _0x4eade1(_0x5333af={}){const _0x1b82bb=_0x5cfba5;_0x5515ce();const _0x257bd7=getTrimmedString(_0x5333af[_0x1b82bb(0x30b)+'ey']??_0x5333af[_0x1b82bb(0x20a)]);if(!_0x257bd7)throw new Error(_0x1b82bb(0x30b)+_0x1b82bb(0x287)+_0x1b82bb(0x336));const _0x5ed786=Date['now'](),_0x59ffe4=await _0x4b7810[_0x1b82bb(0x20f)](_0x1b82bb(0x25e)+_0x1b82bb(0x2ae),{'key':_0x257bd7,'deleteTranscript':_0x5333af[_0x1b82bb(0x1ee)+'anscript']!==![],'emitLifecycleHooks':!![]}),_0x2aaa4b=await readSessionMetadata(_0x47455c['resolveS'+_0x1b82bb(0x1f6)]());return delete _0x2aaa4b[_0x1b82bb(0x2af)][_0x257bd7],_0x2aaa4b[_0x1b82bb(0x229)+'ys']=_0x2aaa4b[_0x1b82bb(0x229)+'ys'][_0x1b82bb(0x1c8)](_0x4e7254=>_0x4e7254!==_0x257bd7),await writeSessionMetadata(_0x47455c[_0x1b82bb(0x2ee)+'tateDir'](),_0x2aaa4b),_0x236bf1('session-'+_0x1b82bb(0x236),{'type':_0x1b82bb(0x2e9),'sessionKey':_0x257bd7}),_0x25bddc?.[_0x1b82bb(0x1f8)](_0x1b82bb(0x2de)+_0x1b82bb(0x1e5)+'ompleted',{'sessionKey':_0x257bd7,'deleteTranscript':_0x5333af['deleteTr'+_0x1b82bb(0x29a)]!==![],'durationMs':Date[_0x1b82bb(0x1d6)]()-_0x5ed786}),_0x59ffe4;}async function _0x13bb09(_0x45d3a7={}){const _0x4f8138=_0x5cfba5,_0x36a83c=getTrimmedString(_0x45d3a7[_0x4f8138(0x30b)+'ey']??_0x45d3a7[_0x4f8138(0x20a)]);if(!_0x36a83c)throw new Error(_0x4f8138(0x30b)+_0x4f8138(0x287)+_0x4f8138(0x336));const _0x47a85a=getTrimmedString(_0x45d3a7[_0x4f8138(0x279)]??_0x45d3a7[_0x4f8138(0x31a)]??_0x45d3a7['title']),_0x942550=await readSessionMetadata(_0x47455c['resolveS'+_0x4f8138(0x1f6)]());if(_0x47a85a)_0x942550[_0x4f8138(0x2af)][_0x36a83c]=_0x47a85a;else delete _0x942550[_0x4f8138(0x2af)][_0x36a83c];return await writeSessionMetadata(_0x47455c[_0x4f8138(0x2ee)+_0x4f8138(0x1f6)](),_0x942550),_0x236bf1(_0x4f8138(0x32f)+'updated',{'type':_0x4f8138(0x288),'sessionKey':_0x36a83c,'name':_0x47a85a}),_0x25bddc?.['info']('session\x20'+'rename\x20c'+_0x4f8138(0x232),{'sessionKey':_0x36a83c,'hasName':Boolean(_0x47a85a),'name':_0x47a85a?summarizeText(_0x47a85a,0x50):undefined}),{'ok':!![]};}async function _0x340bbd(){const _0x1b87d0=_0x5cfba5,_0x464e99=await readSessionMetadata(_0x47455c[_0x1b87d0(0x2ee)+_0x1b87d0(0x1f6)]());return _0x464e99[_0x1b87d0(0x229)+'ys'];}async function _0x559635(_0x612fef=[]){const _0xf9304f=_0x5cfba5,_0x117a9f=await readSessionMetadata(_0x47455c['resolveS'+_0xf9304f(0x1f6)]());return _0x117a9f[_0xf9304f(0x229)+'ys']=Array[_0xf9304f(0x20e)](_0x612fef)?[...new Set(_0x612fef[_0xf9304f(0x31d)](getTrimmedString)[_0xf9304f(0x1c8)](Boolean))]:[],await writeSessionMetadata(_0x47455c['resolveS'+_0xf9304f(0x1f6)](),_0x117a9f),_0x236bf1(_0xf9304f(0x32f)+'updated',{'type':_0xf9304f(0x22a)+_0xf9304f(0x1cf)+_0xf9304f(0x201),'pinnedKeys':_0x117a9f[_0xf9304f(0x229)+'ys']}),_0x25bddc?.[_0xf9304f(0x1f8)](_0xf9304f(0x2de)+'pinned\x20k'+_0xf9304f(0x27e)+'ted',{'count':_0x117a9f[_0xf9304f(0x229)+'ys'][_0xf9304f(0x2f1)]}),{'ok':!![],'pinnedKeys':_0x117a9f[_0xf9304f(0x229)+'ys']};}async function _0x58450d(){const _0x5df05d=_0x5cfba5,_0x327aba=join(_0x47455c['resolveS'+_0x5df05d(0x1f6)](),_0x5df05d(0x321)+'e');return{'path':_0x327aba,'exists':Boolean(await stat(_0x327aba)[_0x5df05d(0x2a7)](()=>null))};}async function _0x3d5e00(){const _0x5a5284=_0x5cfba5;return readSharedContext(join(_0x47455c[_0x5a5284(0x2ee)+_0x5a5284(0x1f6)](),_0x5a5284(0x321)+'e'));}async function _0x11d298(_0x5786b3={}){const _0x56716b=_0x5cfba5;return _0x1e05a2?.[_0x56716b(0x1f8)](_0x56716b(0x321)+_0x56716b(0x30d)+_0x56716b(0x319)+_0x56716b(0x2c8)+_0x56716b(0x2d8),{'files':Object[_0x56716b(0x295)](sanitizeSharedContextPayload(_0x5786b3))}),writeSharedContext(join(_0x47455c[_0x56716b(0x2ee)+'tateDir'](),'workspac'+'e'),_0x5786b3);}async function _0x239f0a(_0x5bbeab={}){const _0x3dd384=_0x5cfba5;return _0x5515ce(),await _0x4b7810[_0x3dd384(0x20f)](_0x3dd384(0x2ce)+'t',_0x5bbeab);}async function _0x55ae8e(_0x36ee0c={}){const _0xf3b983=_0x5cfba5;return _0x5515ce(),await _0x4b7810[_0xf3b983(0x20f)](_0xf3b983(0x1e0),_0x36ee0c);}async function _0x2513b3(_0x1ce035={}){const _0x4f0dcd=_0x5cfba5;_0x5515ce();const _0x154882=getTrimmedString(_0x1ce035[_0x4f0dcd(0x242)]??_0x1ce035['id']);if(!_0x154882)throw new Error(_0x4f0dcd(0x27a)+_0x4f0dcd(0x30c)+'d');const _0x9c6a50=asRecord(_0x1ce035[_0x4f0dcd(0x1d8)]),_0xaa22e1=Object['keys'](_0x9c6a50)['length']>0x0?_0x9c6a50:{..._0x1ce035};return delete _0xaa22e1[_0x4f0dcd(0x242)],delete _0xaa22e1['id'],await _0x4b7810[_0x4f0dcd(0x20f)](_0x4f0dcd(0x206)+_0x4f0dcd(0x256),{'jobId':_0x154882,'patch':_0xaa22e1});}async function _0x33b6b9(_0x26424b={}){const _0x5c4cb5=_0x5cfba5;_0x5515ce();const _0x243ff7=getTrimmedString(_0x26424b[_0x5c4cb5(0x242)]??_0x26424b['id']);if(!_0x243ff7)throw new Error(_0x5c4cb5(0x27a)+_0x5c4cb5(0x30c)+'d');return await _0x4b7810['request'](_0x5c4cb5(0x259)+_0x5c4cb5(0x334),{'jobId':_0x243ff7});}async function _0x446e9c(_0x3b619a={}){const _0x395b0e=_0x5cfba5;_0x5515ce();const _0x1dc91=getTrimmedString(_0x3b619a['jobId']??_0x3b619a['id']);if(!_0x1dc91)throw new Error(_0x395b0e(0x27a)+_0x395b0e(0x30c)+'d');return await _0x4b7810[_0x395b0e(0x20f)](_0x395b0e(0x1c7),{'jobId':_0x1dc91});}async function _0x4d74e7(_0x2d4bf9={}){const _0xd794c8=_0x5cfba5;return _0x5515ce(),await _0x4b7810[_0xd794c8(0x20f)](_0xd794c8(0x1c7)+'s',_0x2d4bf9);}async function _0x3de4af(_0x37aada={}){const _0x3f5c96=_0x5cfba5;_0x5515ce();const _0x1b2968=Date[_0x3f5c96(0x1d6)]();_0x1e05a2?.['info'](_0x3f5c96(0x1f2)+_0x3f5c96(0x28d)+_0x3f5c96(0x1b8),{'payload':summarizePayload(_0x37aada)});try{const _0x241477=await _0x4b7810[_0x3f5c96(0x20f)](_0x3f5c96(0x2cb)+_0x3f5c96(0x24c),_0x37aada);return _0x1e05a2?.['info'](_0x3f5c96(0x1f2)+_0x3f5c96(0x234)+'mpleted',{'durationMs':Date[_0x3f5c96(0x1d6)]()-_0x1b2968,'result':summarizePayload(_0x241477,{'maxDepth':0x2})}),_0x241477;}catch(_0x201396){_0x1e05a2?.[_0x3f5c96(0x2d5)](_0x3f5c96(0x1f2)+_0x3f5c96(0x323)+'iled',{'durationMs':Date[_0x3f5c96(0x1d6)]()-_0x1b2968,'error':summarizeError(_0x201396)});throw _0x201396;}}async function _0x1d0888(_0x3f0cbc={}){const _0x11a1f0=_0x5cfba5;return _0x5515ce(),_0x1e05a2?.[_0x11a1f0(0x1f8)](_0x11a1f0(0x2bf)+'date\x20req'+'uested',{'payload':summarizePayload(_0x3f0cbc)}),await _0x4b7810['request'](_0x11a1f0(0x276)+_0x11a1f0(0x29d),_0x3f0cbc);}async function _0x5b11e7(_0x24d0a6={}){const _0x581393=_0x5cfba5;return _0x5515ce(),_0x1e05a2?.[_0x581393(0x1f8)](_0x581393(0x260)+_0x581393(0x338)+_0x581393(0x1c5),{'payload':summarizePayload(_0x24d0a6)}),await _0x4b7810['request']('skills.d'+_0x581393(0x26c),_0x24d0a6);}async function _0xf38547(_0x8536cc={}){const _0x1b3cff=_0x5cfba5;_0x5515ce();const _0x151b10=getTrimmedString(_0x8536cc['sessionK'+'ey']),_0x4485ce=getTrimmedString(_0x8536cc[_0x1b3cff(0x31b)]),_0x4447b0=getTrimmedString(_0x8536cc[_0x1b3cff(0x210)+'d'])||randomUUID();if(!_0x151b10)throw new Error(_0x1b3cff(0x30b)+_0x1b3cff(0x287)+'quired');if(!_0x4485ce)throw new Error(_0x1b3cff(0x325)+_0x1b3cff(0x240)+_0x1b3cff(0x2f6));const _0x24336c=Date[_0x1b3cff(0x1d6)]();_0x31d3e9?.[_0x1b3cff(0x1f8)](_0x1b3cff(0x296)+'eam\x20requ'+_0x1b3cff(0x22f),{'requestId':_0x4447b0,'sessionKey':_0x151b10,'message':summarizeText(_0x4485ce),'filePaths':summarizeFilePaths(_0x8536cc[_0x1b3cff(0x33a)+'s'])}),_0x26045a({'requestId':_0x4447b0,'sessionKey':_0x151b10,'type':_0x1b3cff(0x1e9)}),_0x705aa[_0x1b3cff(0x1bd)](_0x4447b0,{'runId':_0x4447b0,'requestId':_0x4447b0,'sessionKey':_0x151b10,'textLength':0x0,'startedAt':_0x24336c}),_0x461f7b[_0x1b3cff(0x1bd)](_0x151b10,_0x4447b0);try{const _0x4b52bd=await buildAttachments(Array[_0x1b3cff(0x20e)](_0x8536cc[_0x1b3cff(0x33a)+'s'])?_0x8536cc[_0x1b3cff(0x33a)+'s']:[]);_0x31d3e9?.[_0x1b3cff(0x1f8)](_0x1b3cff(0x24b)+_0x1b3cff(0x28c)+'\x20prepare'+'d',{'requestId':_0x4447b0,'sessionKey':_0x151b10,'attachmentCount':_0x4b52bd[_0x1b3cff(0x2f1)],'attachments':_0x4b52bd[_0x1b3cff(0x31d)](_0x3879fd=>({'type':_0x3879fd[_0x1b3cff(0x311)],'mimeType':_0x3879fd[_0x1b3cff(0x1e6)],'fileName':_0x3879fd[_0x1b3cff(0x282)],'contentLength':_0x3879fd[_0x1b3cff(0x212)][_0x1b3cff(0x2f1)]}))});const _0x2641bc=asRecord(await _0x4b7810[_0x1b3cff(0x20f)](_0x1b3cff(0x281)+'d',{'sessionKey':_0x151b10,'message':_0x4485ce,'deliver':![],'idempotencyKey':_0x4447b0,..._0x4b52bd[_0x1b3cff(0x2f1)]>0x0?{'attachments':_0x4b52bd}:{}})),_0x29a684=getTrimmedString(_0x2641bc[_0x1b3cff(0x2f4)])||_0x4447b0,_0x383529=_0x705aa['get'](_0x4447b0);if(!_0x383529)return{'ok':!![],'requestId':_0x4447b0,'runId':_0x29a684};return _0x29a684!==_0x383529['runId']&&(_0x705aa[_0x1b3cff(0x204)](_0x383529[_0x1b3cff(0x2f4)]),_0x383529[_0x1b3cff(0x2f4)]=_0x29a684,_0x705aa[_0x1b3cff(0x1bd)](_0x29a684,_0x383529)),_0x461f7b['set'](_0x151b10,_0x29a684),_0x31d3e9?.[_0x1b3cff(0x1f8)](_0x1b3cff(0x296)+'eam\x20acce'+'pted\x20by\x20'+_0x1b3cff(0x1d9),{'requestId':_0x4447b0,'runId':_0x29a684,'sessionKey':_0x151b10,'durationMs':Date['now']()-_0x24336c,'status':_0x2641bc['status']}),_0x2641bc[_0x1b3cff(0x1fd)]===_0x1b3cff(0x2d5)&&_0x4620b3(_0x383529,_0x1b3cff(0x2d5),getTrimmedString(_0x2641bc[_0x1b3cff(0x226)+'sage'])||_0x1b3cff(0x2fb)+_0x1b3cff(0x225)+'led'),{'ok':!![],'requestId':_0x4447b0,'runId':_0x29a684,'response':_0x2641bc};}catch(_0xb43317){const _0x307b05=_0x330091(_0x4447b0),_0x2966bc=_0xb43317 instanceof Error?_0xb43317[_0x1b3cff(0x31b)]:String(_0xb43317);_0x31d3e9?.[_0x1b3cff(0x2d5)]('chat\x20str'+_0x1b3cff(0x205)+'ed',{'requestId':_0x4447b0,'sessionKey':_0x151b10,'durationMs':Date[_0x1b3cff(0x1d6)]()-_0x24336c,'error':summarizeError(_0xb43317)});if(_0x307b05)_0x4620b3(_0x307b05,_0x1b3cff(0x2d5),_0x2966bc);else _0x26045a({'requestId':_0x4447b0,'sessionKey':_0x151b10,'type':_0x1b3cff(0x2d5),'message':_0x2966bc});throw _0xb43317;}}async function _0x440a66(_0x1fd01c={}){const _0x159fa3=_0x5cfba5;_0x5515ce();const _0x5340f3=getTrimmedString(_0x1fd01c[_0x159fa3(0x30b)+'ey']);if(!_0x5340f3)throw new Error('sessionK'+'ey\x20is\x20re'+_0x159fa3(0x336));const _0x500dc4=Date[_0x159fa3(0x1d6)](),_0x258586=_0x330091(getTrimmedString(_0x1fd01c['requestI'+'d']))??_0x19e1d5(_0x5340f3),_0x3f7043=_0x461f7b[_0x159fa3(0x1cd)](_0x5340f3),_0x2aa5da={'sessionKey':_0x5340f3};if(_0x258586?.[_0x159fa3(0x2f4)])_0x2aa5da[_0x159fa3(0x2f4)]=_0x258586['runId'];else{if(_0x3f7043)_0x2aa5da[_0x159fa3(0x2f4)]=_0x3f7043;}const _0x3946cb=await _0x4b7810[_0x159fa3(0x20f)]('chat.abo'+'rt',_0x2aa5da);if(_0x258586)_0x4620b3(_0x258586,_0x159fa3(0x25f));return _0x31d3e9?.['info'](_0x159fa3(0x21d)+_0x159fa3(0x2cc)+_0x159fa3(0x30a),{'sessionKey':_0x5340f3,'requestId':getTrimmedString(_0x1fd01c[_0x159fa3(0x210)+'d']),'runId':_0x2aa5da[_0x159fa3(0x2f4)],'durationMs':Date['now']()-_0x500dc4}),_0x3946cb;}async function _0x58f487(_0x1f7ce5={}){const _0x5027d6=_0x5cfba5;_0x5515ce();const _0x2c95d0=getTrimmedString(_0x1f7ce5[_0x5027d6(0x30b)+'ey']);if(!_0x2c95d0)throw new Error(_0x5027d6(0x30b)+'ey\x20is\x20re'+_0x5027d6(0x336));const _0x31d389=await _0x4b7810[_0x5027d6(0x20f)](_0x5027d6(0x28f)+_0x5027d6(0x290),{'sessionKey':_0x2c95d0,'limit':Math[_0x5027d6(0x1db)](0x1,Math[_0x5027d6(0x203)](Number(_0x1f7ce5['limit'])||0xc8))});return _0x31d3e9?.[_0x5027d6(0x1f8)](_0x5027d6(0x1d3)+'tory\x20loa'+_0x5027d6(0x1e2),{'sessionKey':_0x2c95d0,'limit':Math[_0x5027d6(0x1db)](0x1,Math['floor'](Number(_0x1f7ce5[_0x5027d6(0x2fd)])||0xc8)),'result':summarizePayload(_0x31d389,{'maxDepth':0x2})}),_0x31d389;}async function _0x28f0f9(_0x1f5cce=''){const _0x4bab60=_0x5cfba5;if(!_0xf7b10f())return{'pending':!![],'skills':[]};const _0x29ac01=getTrimmedString(_0x1f5cce),_0x57e724=await _0x4b7810['request'](_0x4bab60(0x25c)+'tatus',_0x29ac01?{'agentId':_0x29ac01}:{}),_0x17c3dc=await _0x47455c[_0x4bab60(0x29c)+'ig']()['catch'](()=>({})),_0x58b368=filterSkillsForAgent(_0x57e724,_0x17c3dc,_0x29ac01);return _0x1e05a2?.[_0x4bab60(0x1f8)](_0x4bab60(0x257)+_0x4bab60(0x1c4)+'aded',{'agentId':_0x29ac01||'default','result':summarizePayload(_0x58b368,{'maxDepth':0x2})}),_0x58b368;}return{'on':_0x2188cc,'start':_0x546793,'stop':_0x1d924a,'restart':_0x391d41,'runtimeInfo':_0x94bc77,'getStatus':()=>_0x66c15a,'getRecentLogs':_0x189e12,'answerAskUserQuestion':_0x358ff3=>_0x4aefbf[_0x5cfba5(0x2da)](_0x358ff3),'agents':{'list':_0x11e317},'skills':{'status':_0x28f0f9,'install':_0x3de4af,'update':_0x1d0888,'delete':_0x5b11e7},'sessions':{'create':_0x56eefc,'list':_0x4ca959,'delete':_0x4eade1,'rename':_0x13bb09,'pinnedKeys':_0x340bbd,'setPinnedKeys':_0x559635},'workspace':{'directoryInfo':_0x58450d,'sharedContext':_0x3d5e00,'writeSharedContext':_0x11d298},'cron':{'list':_0x239f0a,'create':_0x55ae8e,'update':_0x2513b3,'remove':_0x33b6b9,'runOnce':_0x446e9c,'logs':_0x4d74e7},'models':{'settings':()=>_0x47455c[_0x5cfba5(0x2b6)+_0x5cfba5(0x272)](),'setSettings':async(_0x15549c={})=>{const _0x36655e=_0x5cfba5,_0x56d949=_0x15549c?.[_0x36655e(0x1f3)+_0x36655e(0x2f3)]!==![];return await _0x47455c[_0x36655e(0x2bc)+_0x36655e(0x272)](_0x15549c,{'restartOnChange':_0x56d949}),_0x47455c[_0x36655e(0x2b6)+_0x36655e(0x272)]();},'setSelfOperatedModels':_0x33aefc=>_0x47455c[_0x5cfba5(0x24d)+_0x5cfba5(0x2b1)+_0x5cfba5(0x2f2)](_0x33aefc),'selectedModelId':async()=>{const _0x28a332=_0x5cfba5,_0x5d8e48=await _0x47455c[_0x28a332(0x2b6)+_0x28a332(0x272)]();return _0x5d8e48[_0x28a332(0x2d9)]&&_0x5d8e48['modelNam'+'e']?_0x5d8e48['provider']+'/'+_0x5d8e48[_0x28a332(0x32b)+'e']:'';},'customModels':async()=>[]},'config':{'read':()=>_0x47455c['readConf'+'ig']()},'chat':{'stream':_0xf38547,'abort':_0x440a66,'history':_0x58f487}};}
1
+ const _0x44db42=_0x113e;function _0x113e(_0xe3652b,_0x21daea){_0xe3652b=_0xe3652b-0xc1;const _0x442a31=_0x442a();let _0x113eb4=_0x442a31[_0xe3652b];return _0x113eb4;}(function(_0x2cdc4f,_0x51c258){const _0x3b13f6=_0x113e,_0x5d1996=_0x2cdc4f();while(!![]){try{const _0x66d712=parseInt(_0x3b13f6(0x145))/0x1+parseInt(_0x3b13f6(0x148))/0x2*(parseInt(_0x3b13f6(0x1e3))/0x3)+-parseInt(_0x3b13f6(0x163))/0x4*(parseInt(_0x3b13f6(0xed))/0x5)+-parseInt(_0x3b13f6(0x116))/0x6+parseInt(_0x3b13f6(0x11b))/0x7*(parseInt(_0x3b13f6(0x14b))/0x8)+-parseInt(_0x3b13f6(0xeb))/0x9*(-parseInt(_0x3b13f6(0xd4))/0xa)+-parseInt(_0x3b13f6(0x21d))/0xb;if(_0x66d712===_0x51c258)break;else _0x5d1996['push'](_0x5d1996['shift']());}catch(_0x1b5c7c){_0x5d1996['push'](_0x5d1996['shift']());}}}(_0x442a,0xe782e));import{randomUUID}from'node:crypto';import{createServer}from'node:http';import{EventEmitter}from'node:events';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{basename,dirname,join}from'node:path';import _0x27f52f,{portNumbers}from'get-port';import{createLineBuffer}from'@wujie-shell/logger';import{asRecord,getTrimmedString}from'./utils.mjs';function _0x442a(){const _0x37de98=['agents.l','terminal','aborted','sessionI','join','skill\x20in','Settings','exited\x20u','stdout','startedA','token','timeout','er\x20start','pluginId','mimeType','c\x20failed','ents\x20syn','process\x20','text/mar','\x20prepare','done','isArray','ensureGa','sessionK','fileName','skills\x20s','deny','SIGTERM','image','isFile','names','toString','er-secre','by\x20gatew','t\x20discon','getModel','und','agents.u','error','ame','achments','ay\x20state','request','\x20signal=','ting:\x20','parse','agents','chat.abo','restartO','kUserQue','3043113TRGNDp','deleted','igWriteH','end','run','stderr','plugins','system','errorMes','WorkingD','final','n\x20reques','unhealth','ey\x20is\x20re','started','peratedM','lifecycl','running','eam\x20acce','Version','patch','create\x20r','skills.i','andledIn','chat\x20abo','chat.sen','eviceIde','SOUL.md','Fallback','nstall','data','filePath','\x20request','manual\x20r','chat.his','installP','readConf','0.1.0','renamed','message\x20','er\x20stop\x20','modelNam','parentSe','POST','session-','filter','eady','ndled\x20ag','runId','cron.run','keys','reate','unconfig','warn','answer','bundled-','ayRestar','pdated','12498970uOthJA','toISOStr','ove','message','writeHea','ase','chat\x20str','some','chat\x20att','\x20waiting','image/we','lete\x20req','--token','port','backend','answers','slice','mpleted','SIGKILL','closed','[wujie-s','stopped','fig','allow','.json','res','nexpecte','resolveC','clear','delete\x20c','off','nected','agent\x20sk','aded','size','-questio','ssionKey','started,','ills\x20syn','stop','tory','image/pn','ntityPat','client','toUpperC','startsWi','nsured','info','ase\x20retr','status','--allow-','eys\x20upda','245330bRaySM','chat\x20eve','ties','restart\x20','get','agents.c','deleteTr','content','has','jobId','stringif','.delete','d\x20--toke','trim','default','Timer','paths','label','onfigPat','stall\x20co','ded','requestI','ensureIn','549qSLdaV','\x20require','44710psFznl','\x20gateway','version','destroy','entries','healthy','ternally','updated','base64','image/','resolveS','e\x20shared','chat\x20fai','ion/pdf','unknown','skills.d','sessions','arge:\x20','red','invalid\x20','skill\x20up','itialCon','metadata','led','limit','eway]\x20bu','source','now','cron.lis','utf8','tokenPre','projectR','capabili','rename\x20c','image/gi','textLeng','agent-ev','session\x20','agents-u','estart','delete','11078898AbSKnd','desktop','markConf','flush','kill','315lAlHvP','agents\x20l','skills.s','rt\x20reque','y\x20shortl','websocke','requeste','model','pted\x20by\x20','ion/json','tory\x20loa','x-ask-us','close','map','quired','ing,\x20ple','agents\x20e','health','defaultI','provider','floor','discover','url','skills','text','sent','ent','elete','productN','max','set','log','\x20list\x20co','writeCon','\x20failed\x20','ed:\x20','exited\x20c','r-questi','gateway-','unauthor','text/csv','c\x20comple','1246770vTuQkd','controll','pop','2peraVZ','nChange','anscript','281992ZTiejf','equested','dispose','pinnedKe','date\x20req','configur','finally','starting','name','ompleted','delta','ync\x20fail','skill\x20de','ath','\x20for\x20WS','ck\x20disab','string','once','includes','agents\x20s','pid',':session','ion/octe','iled','632RnmCSM','main','.create','ist\x20requ','n\x20[REDAC','nt\x20too\x20l','ist','HEARTBEA','dly','ested','kdown','emit','is\x20requi','\x20allocat','listen','agentId','oot','127.0.0.','killed','sage','chat\x20run','agent:','trimEnd','ng:\x20','setGatew','json','resolveD','/ask-use','openclaw','setModel','push','title','toLowerC','--port','jobId\x20is','tewaySet','T.md','text/pla','gateway','ved','chat\x20his','tatus','pinned-k','eam\x20requ','bundled\x20','applicat','length','method','TED]\x20--p','ted','ask-user','is\x20start','restarti','stall\x20re','file','\x20context','image/jp','then','pdate','hell:gat','catch','changed','tings','ized','state','stall\x20fa','key','t\x20not\x20fo','cron.rem','figChang','workspac','tateDir','led:\x20','unshift','attachme','behavior','uested','gateway\x20'];_0x442a=function(){return _0x37de98;};return _0x442a();}import{ensureOpenClawDoctorFixed,loadRuntimeInfo,spawnClaw}from'./runtime.mjs';import{ClawGatewayWsClient}from'./gateway-ws.mjs';import{ensureBundledAgents}from'./bundled-agents.mjs';import{syncBundledAgentSkillsToConfig,filterSkillsForAgent}from'./bundled-agent-skills.mjs';import{createShellLogger,summarizeError,summarizeFilePaths,summarizePayload,summarizeText,toHomePath}from'./logging.mjs';const LOG_LIMIT=0x3e8,CLIENT_ID='gateway-'+_0x44db42(0xcb),CLIENT_MODE=_0x44db42(0x22b),CLIENT_DEVICE_FAMILY=_0x44db42(0x117),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,SESSION_METADATA_FILE=_0x44db42(0x20f)+_0x44db42(0x103)+_0x44db42(0x235),SHARED_CONTEXT_FILES=['AGENTS.m'+'d',_0x44db42(0x16a)+_0x44db42(0x187),'IDENTITY'+'.md','MEMORY.m'+'d',_0x44db42(0x1fe),'TOOLS.md','USER.md'];function nowIso(){const _0x458847=_0x44db42;return new Date()[_0x458847(0x21e)+'ing']();}function buildGatewayWsUrl(_0x2c2448){return'ws://127'+'.0.0.1:'+_0x2c2448;}function createInitialStatus(){const _0x2bb78f=_0x44db42;return{'lifecycle':_0x2bb78f(0x232),'health':_0x2bb78f(0xfb),'port':null,'tokenPresent':![],'message':_0x2bb78f(0x1b0)+'stopped','updatedAt':nowIso()};}function extractGatewayMessageText(_0x15f0aa){const _0x43fbef=_0x44db42;if(typeof _0x15f0aa==='string')return _0x15f0aa;if(!Array['isArray'](_0x15f0aa))return'';const _0x272f2f=[];for(const _0x8a847 of _0x15f0aa){if(typeof _0x8a847==='string'){if(_0x8a847)_0x272f2f[_0x43fbef(0x181)](_0x8a847);continue;}const _0x90c11e=asRecord(_0x8a847);_0x90c11e['type']===_0x43fbef(0x133)&&typeof _0x90c11e['text']===_0x43fbef(0x15b)&&_0x90c11e['text']&&_0x272f2f[_0x43fbef(0x181)](_0x90c11e[_0x43fbef(0x133)]);}return _0x272f2f[_0x43fbef(0x1b5)]('\x0a');}function extractGatewayChatText(_0x1aaaa2){const _0x546917=_0x44db42,_0x2561b3=asRecord(_0x1aaaa2);if(typeof _0x2561b3['text']===_0x546917(0x15b))return _0x2561b3[_0x546917(0x133)];return extractGatewayMessageText(_0x2561b3[_0x546917(0xdb)]);}function guessMimeType(_0x1e4d91){const _0x52ca32=_0x44db42,_0x2ea4f5=_0x1e4d91['split']('.')[_0x52ca32(0x147)]()?.[_0x52ca32(0x183)+_0x52ca32(0x222)]()??'',_0x21eda6={'png':_0x52ca32(0xc9)+'g','jpg':_0x52ca32(0x19b)+'eg','jpeg':'image/jp'+'eg','webp':_0x52ca32(0x227)+'bp','gif':_0x52ca32(0x10f)+'f','svg':'image/sv'+'g+xml','pdf':_0x52ca32(0x190)+_0x52ca32(0xfa),'txt':_0x52ca32(0x188)+'in','md':_0x52ca32(0x1c3)+_0x52ca32(0x16d),'json':_0x52ca32(0x190)+'ion/json','csv':_0x52ca32(0x143)};return _0x21eda6[_0x2ea4f5]||_0x52ca32(0x190)+_0x52ca32(0x161)+'t-stream';}async function buildAttachments(_0x2b35e2=[]){const _0xd029c4=_0x44db42,_0x38325d=[];for(const _0xe67009 of _0x2b35e2){const _0x4c8a76=getTrimmedString(_0xe67009);if(!_0x4c8a76)continue;const _0x15b31a=await stat(_0x4c8a76);if(!_0x15b31a[_0xd029c4(0x1ce)]())continue;if(_0x15b31a[_0xd029c4(0xc2)]>ATTACHMENT_MAX_BYTES)throw new Error(_0xd029c4(0x1ad)+_0xd029c4(0x168)+_0xd029c4(0xfe)+basename(_0x4c8a76));const _0x3919b5=guessMimeType(_0x4c8a76);_0x38325d['push']({'type':_0x3919b5[_0xd029c4(0xcd)+'th'](_0xd029c4(0xf6))?_0xd029c4(0x1cd):_0xd029c4(0x199),'mimeType':_0x3919b5,'content':(await readFile(_0x4c8a76))[_0xd029c4(0x1d0)](_0xd029c4(0xf5)),'fileName':basename(_0x4c8a76)});}return _0x38325d;}function buildSessionCreateRequestPayload(_0x37010f={}){const _0x42793f=_0x44db42,_0x26e4b6={},_0x4c922e=Math['random']()[_0x42793f(0x1d0)](0x24)[_0x42793f(0x22d)](0x2,0xf),_0x51f3b5=getTrimmedString(_0x37010f[_0x42793f(0x172)])||_0x42793f(0x164),_0x4fb5a6=getTrimmedString(_0x37010f['key'])||_0x42793f(0x178)+_0x51f3b5+(_0x42793f(0x160)+'-')+Date['now']();_0x26e4b6[_0x42793f(0x1a5)]=_0x4fb5a6+'-'+_0x4c922e,_0x26e4b6[_0x42793f(0x172)]=_0x51f3b5;const _0x1b4c9b=getTrimmedString(_0x37010f['label']);if(_0x1b4c9b)_0x26e4b6['label']=_0x1b4c9b+'-'+_0x4c922e;for(const _0x425dd7 of[_0x42793f(0x122),_0x42793f(0x20d)+_0x42793f(0xc4),'task',_0x42793f(0x220)]){const _0x2a5fb4=getTrimmedString(_0x37010f[_0x425dd7]);if(_0x2a5fb4)_0x26e4b6[_0x425dd7]=_0x2a5fb4;}return _0x26e4b6;}function parseSessionCreateResult(_0x4359fe){const _0x3be61d=_0x44db42,_0x152b42=asRecord(_0x4359fe),_0x234fb5=asRecord(_0x152b42['session']);return{'ok':!![],'key':getTrimmedString(_0x152b42[_0x3be61d(0x1a5)])||getTrimmedString(_0x152b42['sessionK'+'ey'])||getTrimmedString(_0x234fb5['key'])||null,'sessionId':getTrimmedString(_0x152b42[_0x3be61d(0x1b4)+'d'])||getTrimmedString(_0x234fb5['sessionI'+'d'])||null};}function getSessionKeyFromValue(_0xff2013){const _0x50be68=_0x44db42,_0x1e857f=asRecord(_0xff2013);return getTrimmedString(_0x1e857f[_0x50be68(0x1c8)+'ey']??_0x1e857f[_0x50be68(0x1a5)]??_0x1e857f['id']);}function createEmptySessionMetadata(){return{'names':{},'pinnedKeys':[]};}async function readSessionMetadata(_0x226c3d){const _0x3c3da1=_0x44db42;try{const _0x54335c=JSON[_0x3c3da1(0x1de)](await readFile(join(_0x226c3d,SESSION_METADATA_FILE),_0x3c3da1(0x10a))),_0x2a4bef=asRecord(_0x54335c);return{'names':asRecord(_0x2a4bef['names']),'pinnedKeys':Array[_0x3c3da1(0x1c6)](_0x2a4bef['pinnedKe'+'ys'])?_0x2a4bef[_0x3c3da1(0x14e)+'ys'][_0x3c3da1(0x210)](_0x3dbf16=>typeof _0x3dbf16===_0x3c3da1(0x15b)&&_0x3dbf16[_0x3c3da1(0xe1)]()):[]};}catch{return createEmptySessionMetadata();}}async function writeSessionMetadata(_0xd7311e,_0x2a541f){const _0xe97d12=_0x44db42;await mkdir(_0xd7311e,{'recursive':!![]}),await writeFile(join(_0xd7311e,SESSION_METADATA_FILE),JSON[_0xe97d12(0xde)+'y'](_0x2a541f,null,0x2)+'\x0a',_0xe97d12(0x10a));}function applySessionMetadata(_0x580033,_0x363619){const _0xc38a0a=_0x44db42,_0x8e59e0=asRecord(_0x580033),_0x809f13=Array[_0xc38a0a(0x1c6)](_0x8e59e0[_0xc38a0a(0xfd)])?_0x8e59e0[_0xc38a0a(0xfd)]:[];return{..._0x8e59e0,'pinnedKeys':_0x363619[_0xc38a0a(0x14e)+'ys'],'sessions':_0x809f13[_0xc38a0a(0x128)](_0x1ebe1c=>{const _0x41019e=_0xc38a0a,_0x184a25=asRecord(_0x1ebe1c),_0x4b8558=getSessionKeyFromValue(_0x184a25);if(!_0x4b8558)return _0x1ebe1c;const _0x5b4555=getTrimmedString(_0x363619[_0x41019e(0x1cf)][_0x4b8558]),_0x44d3b1=_0x363619[_0x41019e(0x14e)+'ys'][_0x41019e(0x15d)](_0x4b8558);return{..._0x184a25,..._0x5b4555?{'name':_0x5b4555,'displayName':_0x5b4555,'label':_0x5b4555}:{},'pinned':_0x44d3b1};})};}function sanitizeSharedContextPayload(_0x4ba48a){const _0x46a2c0=asRecord(_0x4ba48a),_0x40e270={};for(const _0x4b3490 of SHARED_CONTEXT_FILES){if(typeof _0x46a2c0[_0x4b3490]==='string')_0x40e270[_0x4b3490]=_0x46a2c0[_0x4b3490];}return _0x40e270;}async function readSharedContext(_0x46c69b){const _0x598de5=_0x44db42,_0x4934e5={};for(const _0x6491d2 of SHARED_CONTEXT_FILES){try{_0x4934e5[_0x6491d2]=await readFile(join(_0x46c69b,_0x6491d2),_0x598de5(0x10a));}catch{_0x4934e5[_0x6491d2]='';}}return _0x4934e5;}async function writeSharedContext(_0x4003a6,_0x4d7f11){const _0x40f8e5=_0x44db42,_0x3c5b38=sanitizeSharedContextPayload(_0x4d7f11);await mkdir(_0x4003a6,{'recursive':!![]});for(const [_0x159d8d,_0x45a5d9]of Object[_0x40f8e5(0xf1)](_0x3c5b38)){await writeFile(join(_0x4003a6,_0x159d8d),_0x45a5d9,_0x40f8e5(0x10a));}return{'ok':!![],'files':Object['keys'](_0x3c5b38)};}function createAskUserQuestionServer({configController:_0x7576f2,emit:_0x657fbe}){const _0x3cde2a=new Map();let _0x2ed9f3=null,_0x19f84c='',_0x7fe0b5='';async function _0x5e6c6b(){const _0x2e0c84=_0x113e;if(_0x2ed9f3)return{'callbackUrl':_0x19f84c,'secret':_0x7fe0b5};_0x7fe0b5=randomUUID();const _0x1765ea=await _0x27f52f({'port':portNumbers(0x332c,0x338f)});return _0x19f84c='http://1'+'27.0.0.1'+':'+_0x1765ea+(_0x2e0c84(0x17e)+_0x2e0c84(0x140)+'on'),_0x2ed9f3=createServer(async(_0x4d67c1,_0x4d356e)=>{const _0x39036d=_0x2e0c84;if(_0x4d67c1[_0x39036d(0x192)]!==_0x39036d(0x20e)||_0x4d67c1[_0x39036d(0x131)]!=='/ask-use'+'r-questi'+'on'){_0x4d356e[_0x39036d(0x221)+'d'](0x194),_0x4d356e['end']('not\x20foun'+'d');return;}if(_0x4d67c1['headers'][_0x39036d(0x126)+_0x39036d(0x1d1)+'t']!==_0x7fe0b5){_0x4d356e['writeHea'+'d'](0x191),_0x4d356e[_0x39036d(0x1e6)](_0x39036d(0x142)+_0x39036d(0x1a2));return;}let _0x25bdab='';_0x4d67c1['on'](_0x39036d(0x201),_0x3d9765=>{const _0x5be683=_0x39036d;_0x25bdab+=_0x3d9765['toString']();if(_0x25bdab[_0x5be683(0x191)]>0x400*0x400)_0x4d67c1[_0x5be683(0xf0)]();}),_0x4d67c1['on'](_0x39036d(0x1e6),()=>{const _0x2756b6=_0x39036d;let _0x1393a0={};try{_0x1393a0=JSON[_0x2756b6(0x1de)](_0x25bdab||'{}');}catch{_0x4d356e[_0x2756b6(0x221)+'d'](0x190),_0x4d356e[_0x2756b6(0x1e6)](_0x2756b6(0x100)+_0x2756b6(0x17c));return;}const _0x27516d=randomUUID(),_0x4e7512=setTimeout(()=>{const _0x76ab99=_0x2756b6;if(!_0x3cde2a[_0x76ab99(0xdc)](_0x27516d))return;_0x3cde2a[_0x76ab99(0x115)](_0x27516d),_0x4d356e[_0x76ab99(0x221)+'d'](0xc8,{'content-type':_0x76ab99(0x190)+_0x76ab99(0x124)}),_0x4d356e[_0x76ab99(0x1e6)](JSON[_0x76ab99(0xde)+'y']({'behavior':'deny'}));},0x1d4c0);_0x3cde2a[_0x2756b6(0x139)](_0x27516d,{'res':_0x4d356e,'timeout':_0x4e7512}),_0x657fbe(_0x2756b6(0x195)+'-questio'+'n',{'requestId':_0x27516d,...asRecord(_0x1393a0)});});}),await new Promise((_0x3b2c56,_0x530748)=>{const _0x30488d=_0x2e0c84;_0x2ed9f3[_0x30488d(0x15c)](_0x30488d(0x1d7),_0x530748),_0x2ed9f3[_0x30488d(0x171)](_0x1765ea,_0x30488d(0x174)+'1',()=>{const _0x50915f=_0x30488d;_0x2ed9f3['off'](_0x50915f(0x1d7),_0x530748),_0x3b2c56();});}),await _0x7576f2['ensureAs'+_0x2e0c84(0x1e2)+'stionPlu'+'ginConfi'+'g']({'callbackUrl':_0x19f84c,'secret':_0x7fe0b5}),{'callbackUrl':_0x19f84c,'secret':_0x7fe0b5};}function _0x2cd044(_0x2e2e11={}){const _0x4ce2a0=_0x113e,_0x358d37=getTrimmedString(_0x2e2e11[_0x4ce2a0(0xe9)+'d']);if(!_0x358d37||!_0x3cde2a[_0x4ce2a0(0xdc)](_0x358d37))throw new Error(_0x4ce2a0(0x195)+_0x4ce2a0(0xc3)+_0x4ce2a0(0x1ee)+_0x4ce2a0(0x1a6)+_0x4ce2a0(0x1d5));const _0x4068b8=_0x3cde2a['get'](_0x358d37);return _0x3cde2a[_0x4ce2a0(0x115)](_0x358d37),clearTimeout(_0x4068b8['timeout']),_0x4068b8['res'][_0x4ce2a0(0x221)+'d'](0xc8,{'content-type':_0x4ce2a0(0x190)+_0x4ce2a0(0x124)}),_0x4068b8[_0x4ce2a0(0x236)]['end'](JSON['stringif'+'y']({'behavior':_0x2e2e11[_0x4ce2a0(0x1ae)]==='deny'?'deny':_0x4ce2a0(0x234),'answers':asRecord(_0x2e2e11[_0x4ce2a0(0x22c)])})),{'ok':!![]};}async function _0x4962df(){const _0x24f265=_0x113e;for(const [_0x17b075,_0x5bb315]of _0x3cde2a){_0x3cde2a[_0x24f265(0x115)](_0x17b075),clearTimeout(_0x5bb315[_0x24f265(0x1bc)]),_0x5bb315[_0x24f265(0x236)][_0x24f265(0x221)+'d'](0xc8,{'content-type':'applicat'+'ion/json'}),_0x5bb315['res'][_0x24f265(0x1e6)](JSON['stringif'+'y']({'behavior':_0x24f265(0x1cb)}));}if(!_0x2ed9f3)return;await new Promise(_0x376fa6=>_0x2ed9f3['close'](_0x376fa6)),_0x2ed9f3=null;}return{'start':_0x5e6c6b,'answer':_0x2cd044,'stop':_0x4962df};}export function createGatewayController({shellConfig:_0x4e329f,configController:_0x43e743,appVersion:appVersion=_0x44db42(0x208)}){const _0x4d8366=_0x44db42,_0x512dac=new EventEmitter(),_0x55b070=new ClawGatewayWsClient(),_0x1dda32=[],_0xe9e03a=new Map(),_0x31aa5c=new Map(),_0x407d97=createShellLogger(_0x43e743[_0x4d8366(0xe4)],_0x4d8366(0x189)),_0x3f9c59=createShellLogger(_0x43e743[_0x4d8366(0xe4)],'chat'),_0x1de0f7=createShellLogger(_0x43e743['paths'],_0x4d8366(0xfd)),_0x19e45f=createShellLogger(_0x43e743['paths'],_0x4d8366(0x10d)+_0x4d8366(0xd6)),_0x455473=createAskUserQuestionServer({'configController':_0x43e743,'emit':(_0x5a3b15,_0x3bec26)=>_0x512dac[_0x4d8366(0x16e)](_0x5a3b15,_0x3bec26)});let _0x5ae230=createInitialStatus(),_0x3b2004=null,_0x5e7dcc=null,_0x463959=null,_0x5ec07e=![],_0x55b3b6=![],_0x805750=Promise['resolve'](),_0x4cbc36=null,_0x1d30ec=0x0;function _0x5c1381(_0x55697a,_0x5520b5){const _0x387a1f=_0x4d8366;_0x512dac[_0x387a1f(0x16e)](_0x55697a,_0x5520b5);}function _0xa33f86(_0x2171bf,_0xa0c62c){const _0x19187e=_0x4d8366;return _0x512dac['on'](_0x2171bf,_0xa0c62c),()=>_0x512dac[_0x19187e(0x23b)](_0x2171bf,_0xa0c62c);}function _0x29d5d8(_0x588dd3){const _0x292bc3=_0x4d8366;_0x5ae230={..._0x5ae230,..._0x588dd3,'updatedAt':nowIso()},_0x5c1381(_0x292bc3(0x141)+_0x292bc3(0xd1),_0x5ae230);}function _0x1c671d(_0xb82e8b,_0x436217,_0x10e846={}){const _0x5ab111=_0x4d8366;_0x29d5d8({'lifecycle':_0xb82e8b,'message':_0x436217,..._0x10e846}),_0x5eec34(_0x5ab111(0x1ea),_0xb82e8b[_0x5ab111(0xcc)+_0x5ab111(0x222)]()+'\x20'+_0x436217),_0x407d97?.['info'](_0x5ab111(0x1b0)+'lifecycl'+'e\x20update'+'d',{'lifecycle':_0xb82e8b,'message':_0x436217,'status':{'health':_0x5ae230[_0x5ab111(0x12c)],'port':_0x5ae230[_0x5ab111(0x22a)],'tokenPresent':_0x5ae230[_0x5ab111(0x10b)+_0x5ab111(0x134)]},...summarizePayload(_0x10e846)});}function _0x5eec34(_0x16c9aa,_0x30a907){const _0x5a8f05=_0x4d8366,_0x1547ef=String(_0x30a907??'')[_0x5a8f05(0x179)]();if(!_0x1547ef)return;const _0x47835c={'source':_0x16c9aa,'text':_0x1547ef,'timestamp':nowIso()};_0x1dda32[_0x5a8f05(0x181)](_0x47835c);if(_0x1dda32['length']>LOG_LIMIT)_0x1dda32['splice'](0x0,_0x1dda32[_0x5a8f05(0x191)]-LOG_LIMIT);_0x5c1381(_0x5a8f05(0x141)+_0x5a8f05(0x13a),_0x47835c),_0x407d97?.[_0x5a8f05(0xcf)](_0x5a8f05(0x1b0)+_0x5a8f05(0x13a),{'source':_0x16c9aa,'text':_0x1547ef});}function _0x2e57e3(_0x3cc4d9=0xc8){const _0xa9716=_0x4d8366;return _0x1dda32[_0xa9716(0x22d)](-Math['max'](0x1,Math[_0xa9716(0x12f)](_0x3cc4d9)));}function _0x52dddc(){const _0x50a264=_0x4d8366;if(!_0x3b2004||_0x5ae230[_0x50a264(0x1f3)+'e']!==_0x50a264(0x1f4))throw new Error('gateway\x20'+_0x50a264(0x196)+_0x50a264(0x12a)+_0x50a264(0xd0)+_0x50a264(0x11f)+'y');}function _0x31ac71(){const _0x127046=_0x4d8366;return Boolean(_0x3b2004&&_0x5ae230[_0x127046(0x1f3)+'e']==='running');}function _0x404848(_0x2b8ff9){_0x5c1381('chat-str'+'eam-even'+'t',_0x2b8ff9);}function _0x1c6d83(_0x4d96c4){const _0x323823=_0x4d8366,_0xa2768=_0xe9e03a[_0x323823(0xd8)](_0x4d96c4);if(!_0xa2768)return null;_0xe9e03a[_0x323823(0x115)](_0x4d96c4);if(_0xa2768[_0x323823(0x1b2)+_0x323823(0x1ff)+_0x323823(0xe3)])clearTimeout(_0xa2768[_0x323823(0x1b2)+_0x323823(0x1ff)+_0x323823(0xe3)]);return _0x31aa5c['delete'](_0xa2768['sessionK'+'ey']),_0xa2768;}function _0x539689(_0x2192cd,_0x485510,_0x4f44b2=''){const _0x2cdac3=_0x4d8366,_0x1809c1=_0x1c6d83(_0x2192cd[_0x2cdac3(0x213)]);if(!_0x1809c1)return;_0x3f9c59?.[_0x2cdac3(0xcf)](_0x2cdac3(0x177)+'\x20settled',{'requestId':_0x1809c1[_0x2cdac3(0xe9)+'d'],'runId':_0x1809c1['runId'],'sessionKey':_0x1809c1['sessionK'+'ey'],'outcome':_0x485510,'durationMs':Date[_0x2cdac3(0x108)]()-_0x1809c1[_0x2cdac3(0x1ba)+'t'],'textLength':_0x1809c1[_0x2cdac3(0x110)+'th'],..._0x4f44b2?{'message':_0x4f44b2}:{}}),_0x404848({'requestId':_0x1809c1[_0x2cdac3(0xe9)+'d'],'sessionKey':_0x1809c1[_0x2cdac3(0x1c8)+'ey'],'type':_0x485510,..._0x4f44b2?{'message':_0x4f44b2}:{}});}function _0x242ae9(_0x1c4145){const _0x5eef44=_0x4d8366;let _0x2c4365=null;for(const _0x2def5f of _0xe9e03a['values']()){if(_0x2def5f[_0x5eef44(0x1c8)+'ey']===_0x1c4145)_0x2c4365=_0x2def5f;}return _0x2c4365;}function _0x2e03d1(_0x1eb98f){const _0x244e1c=_0x4d8366;if(!_0x1eb98f)return null;for(const _0x3b8a2b of _0xe9e03a['values']()){if(_0x3b8a2b[_0x244e1c(0xe9)+'d']===_0x1eb98f)return _0x3b8a2b;}return null;}function _0xb53d03(_0x396ef1,_0x2d0a17){const _0x13dcae=_0x4d8366;if(_0x2d0a17[_0x13dcae(0x191)]<=_0x396ef1[_0x13dcae(0x110)+'th'])return;const _0xdc8fa2=_0x2d0a17[_0x13dcae(0x22d)](_0x396ef1[_0x13dcae(0x110)+'th']);_0x396ef1['textLeng'+'th']=_0x2d0a17[_0x13dcae(0x191)],_0xdc8fa2&&_0x404848({'requestId':_0x396ef1['requestI'+'d'],'sessionKey':_0x396ef1[_0x13dcae(0x1c8)+'ey'],'type':_0x13dcae(0x155),'delta':_0xdc8fa2});}function _0x6ba867(_0x448e21,_0x32e791,_0x399f14=''){const _0x3d60f3=_0x4d8366;if(_0x448e21[_0x3d60f3(0x1b2)+_0x3d60f3(0x1ff)+_0x3d60f3(0xe3)])clearTimeout(_0x448e21['terminal'+_0x3d60f3(0x1ff)+'Timer']);_0x448e21[_0x3d60f3(0x1b2)+_0x3d60f3(0x1ff)+_0x3d60f3(0xe3)]=setTimeout(()=>{const _0x32dd03=_0x3d60f3,_0x5e1822=_0xe9e03a[_0x32dd03(0xd8)](_0x448e21['runId']);if(!_0x5e1822)return;_0x539689(_0x5e1822,_0x32e791===_0x32dd03(0x1d7)?_0x32dd03(0x1d7):_0x32dd03(0x1c5),_0x399f14);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x4b13e7(_0x5cd06a){const _0x376c45=_0x4d8366;for(const _0x57dd6b of _0xe9e03a['values']()){_0x3f9c59?.[_0x376c45(0x218)]('chat\x20run'+_0x376c45(0x13d)+_0x376c45(0x1d2)+_0x376c45(0x1da),{'requestId':_0x57dd6b['requestI'+'d'],'runId':_0x57dd6b[_0x376c45(0x213)],'sessionKey':_0x57dd6b['sessionK'+'ey'],'durationMs':Date[_0x376c45(0x108)]()-_0x57dd6b['startedA'+'t'],'reason':_0x5cd06a}),_0x404848({'requestId':_0x57dd6b[_0x376c45(0xe9)+'d'],'sessionKey':_0x57dd6b['sessionK'+'ey'],'type':'error','message':_0x5cd06a});if(_0x57dd6b[_0x376c45(0x1b2)+_0x376c45(0x1ff)+'Timer'])clearTimeout(_0x57dd6b['terminal'+'Fallback'+_0x376c45(0xe3)]);}_0xe9e03a['clear'](),_0x31aa5c[_0x376c45(0x239)]();}function _0x532065(_0x12d683){const _0x16e1dd=_0x4d8366,_0x30671b=getTrimmedString(_0x12d683[_0x16e1dd(0x213)]),_0x39203f=getTrimmedString(_0x12d683[_0x16e1dd(0x1a3)])||_0x16e1dd(0xf4),_0x3da9c4=getTrimmedString(_0x12d683['sessionK'+'ey']),_0x76d7e0=(_0x30671b?_0xe9e03a[_0x16e1dd(0xd8)](_0x30671b):null)??(_0x3da9c4?_0x242ae9(_0x3da9c4):null);if(_0x30671b&&_0x3da9c4)_0x31aa5c[_0x16e1dd(0x139)](_0x3da9c4,_0x30671b);if(_0x3da9c4)_0x5c1381(_0x16e1dd(0x20f)+_0x16e1dd(0xf4),{'sessionKey':_0x3da9c4,'state':_0x39203f});_0x3f9c59?.[_0x16e1dd(0xcf)](_0x16e1dd(0x1b0)+_0x16e1dd(0xd5)+'nt\x20recei'+_0x16e1dd(0x18a),{'runId':_0x30671b,'sessionKey':_0x3da9c4,'state':_0x39203f,'hasActiveRun':Boolean(_0x76d7e0),'messageText':summarizeText(extractGatewayChatText(_0x12d683[_0x16e1dd(0x220)]),0x78),'errorMessage':getTrimmedString(_0x12d683[_0x16e1dd(0x1eb)+_0x16e1dd(0x176)])});_0x76d7e0&&(_0x39203f==='final'||_0x39203f===_0x16e1dd(0x1b3)||_0x39203f===_0x16e1dd(0x1d7))&&_0x6ba867(_0x76d7e0,_0x39203f,typeof _0x12d683[_0x16e1dd(0x1eb)+_0x16e1dd(0x176)]===_0x16e1dd(0x15b)?_0x12d683[_0x16e1dd(0x1eb)+_0x16e1dd(0x176)]:_0x16e1dd(0x1b0)+_0x16e1dd(0xf9)+_0x16e1dd(0x104));if(!_0x76d7e0)return;if(_0x3da9c4&&_0x3da9c4!==_0x76d7e0[_0x16e1dd(0x1c8)+'ey'])return;if(_0x39203f===_0x16e1dd(0x155)){_0xb53d03(_0x76d7e0,extractGatewayChatText(_0x12d683[_0x16e1dd(0x220)]));return;}if(_0x39203f===_0x16e1dd(0x1ed)||_0x39203f==='aborted'){_0xb53d03(_0x76d7e0,extractGatewayChatText(_0x12d683['message'])),_0x539689(_0x76d7e0,_0x16e1dd(0x1c5));return;}_0x39203f===_0x16e1dd(0x1d7)&&_0x539689(_0x76d7e0,'error',typeof _0x12d683[_0x16e1dd(0x1eb)+_0x16e1dd(0x176)]===_0x16e1dd(0x15b)?_0x12d683[_0x16e1dd(0x1eb)+'sage']:_0x16e1dd(0x1b0)+_0x16e1dd(0xf9)+'led');}async function _0x5d9c6f(_0x193a2c,_0x55fa3c){const _0x432620=_0x4d8366;_0x55b070[_0x432620(0x150)+'e']({'url':buildGatewayWsUrl(_0x55fa3c),'token':_0x193a2c,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x4e329f[_0x432620(0x137)+'ame'],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x43e743[_0x432620(0x17d)+_0x432620(0x1fd)+_0x432620(0xca)+'h'](),'onChatEvent':_0x532065,'onAgentEvent':_0x504df1=>_0x5c1381(_0x432620(0x111)+_0x432620(0x135),_0x504df1),'onConnected':async()=>{const _0x5eee8f=_0x432620;if(!_0x3b2004||!_0x463959||!_0x5e7dcc)return;_0x407d97?.[_0x5eee8f(0xcf)](_0x5eee8f(0x1b0)+_0x5eee8f(0x120)+'t\x20connec'+_0x5eee8f(0x194),{'port':_0x463959,'pid':_0x3b2004['pid'],'readyMs':_0x1d30ec?Date[_0x5eee8f(0x108)]()-_0x1d30ec:undefined}),_0x1c671d('running',_0x5eee8f(0x1b0)+'connecte'+'d',{'health':_0x5eee8f(0xf2),'port':_0x463959,'tokenPresent':!![]});try{await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x4e329f['projectR'+'oot']))['runtimeR'+_0x5eee8f(0x173)],_0x5eee8f(0x17f),'agents'),'stateDir':_0x43e743[_0x5eee8f(0xf7)+_0x5eee8f(0x1aa)](),'listAgents':_0x59d933,'createAgent':_0x515cad=>_0x55b070[_0x5eee8f(0x1db)](_0x5eee8f(0xd9)+_0x5eee8f(0x216),_0x515cad),'updateAgent':_0x4cce66=>_0x55b070['request'](_0x5eee8f(0x1d6)+_0x5eee8f(0x19d),_0x4cce66),'syncSkills':async({agentIds:_0x1d9dd8,mainWorkspace:_0x2f42c2})=>{const _0x14b8a9=_0x5eee8f;_0x19e45f?.[_0x14b8a9(0xcf)](_0x14b8a9(0x18f)+_0x14b8a9(0x23d)+_0x14b8a9(0xc6)+'c\x20starte'+'d',{'agentIds':_0x1d9dd8,'mainWorkspace':toHomePath(_0x2f42c2)});const _0x2a97ff=dirname(_0x2f42c2),_0x2d3046=await syncBundledAgentSkillsToConfig({'agentIds':_0x1d9dd8,'resolveSkillsDir':_0x51a38f=>_0x51a38f===_0x14b8a9(0x164)?join(_0x2f42c2,_0x14b8a9(0x132)):join(_0x2a97ff,_0x14b8a9(0x1a9)+'e-'+_0x51a38f,_0x14b8a9(0x132)),'readConfig':()=>_0x43e743[_0x14b8a9(0x207)+'ig'](),'writeConfig':_0x279a62=>_0x43e743[_0x14b8a9(0x13c)+_0x14b8a9(0x233)](_0x279a62),'markConfigWriteHandledInternally':()=>_0x43e743[_0x14b8a9(0x118)+_0x14b8a9(0x1e5)+_0x14b8a9(0x1fa)+_0x14b8a9(0xf3)]()});_0x4cbc36=_0x2d3046[_0x14b8a9(0x130)+'y'],_0x19e45f?.[_0x14b8a9(0xcf)](_0x14b8a9(0x18f)+_0x14b8a9(0x23d)+'ills\x20syn'+_0x14b8a9(0x144)+_0x14b8a9(0x194),{'agentCount':_0x1d9dd8[_0x14b8a9(0x191)],'changed':_0x2d3046[_0x14b8a9(0x1a0)],'discovery':summarizePayload(_0x2d3046['discover'+'y'],{'maxDepth':0x3})});}}),_0x19e45f?.['info'](_0x5eee8f(0x18f)+_0x5eee8f(0x12b)+_0x5eee8f(0xce)),_0x5c1381(_0x5eee8f(0x113)+_0x5eee8f(0x21c),{'reason':_0x5eee8f(0x21a)+'agents-r'+_0x5eee8f(0x211)});}catch(_0x5a98ab){const _0x2abfa5=_0x5a98ab instanceof Error?_0x5a98ab['stack']||_0x5a98ab[_0x5eee8f(0x220)]:String(_0x5a98ab);_0x5eec34('system','bundled\x20'+'agents\x20s'+_0x5eee8f(0x156)+_0x5eee8f(0x13e)+_0x2abfa5),_0x19e45f?.[_0x5eee8f(0x1d7)](_0x5eee8f(0x18f)+_0x5eee8f(0x15e)+'ync\x20fail'+'ed',{'error':summarizeError(_0x5a98ab)}),console[_0x5eee8f(0x1d7)](_0x5eee8f(0x231)+_0x5eee8f(0x19e)+_0x5eee8f(0x106)+_0x5eee8f(0x212)+_0x5eee8f(0x1c1)+_0x5eee8f(0x1c0),_0x5a98ab);}},'onDisconnected':_0x1d05ab=>{const _0x239c07=_0x432620;_0x407d97?.[_0x239c07(0x218)](_0x239c07(0x1b0)+'websocke'+_0x239c07(0x1d3)+_0x239c07(0x23c),{'reason':_0x1d05ab}),_0x4b13e7(_0x1d05ab);if(_0x55b3b6||!_0x3b2004)return;_0x29d5d8({'health':_0x239c07(0xfb),'message':_0x239c07(0x1b0)+'reconnec'+_0x239c07(0x1dd)+_0x1d05ab});}});}async function _0x785948(_0x3bb652,_0x3e9d3c){const _0x488907=_0x4d8366;if(_0x3b2004)return;_0x1d30ec=Date[_0x488907(0x108)](),_0x1c671d(_0x488907(0x152),'gateway\x20'+'starting',{'health':_0x488907(0xfb),'port':_0x3e9d3c,'tokenPresent':!![]});const _0x4f4718=[_0x488907(0x189),_0x488907(0x1e7),_0x488907(0xd2)+'unconfig'+'ured',_0x488907(0x229),_0x3bb652,_0x488907(0x184),String(_0x3e9d3c)];_0x5eec34(_0x488907(0x1ea),_0x488907(0x17f)+_0x488907(0xee)+'\x20run\x20--a'+'llow-unc'+'onfigure'+_0x488907(0xe0)+_0x488907(0x167)+_0x488907(0x193)+'ort\x20'+_0x3e9d3c),_0x407d97?.[_0x488907(0xcf)](_0x488907(0x1b0)+_0x488907(0x1c2)+'spawn\x20re'+'quested',{'args':[_0x488907(0x189),_0x488907(0x1e7),_0x488907(0xd2)+_0x488907(0x217)+'ured',_0x488907(0x229),'[REDACTE'+'D]',_0x488907(0x184),String(_0x3e9d3c)],'env':{'OPENCLAW_STATE_DIR':toHomePath(_0x43e743[_0x488907(0xf7)+'tateDir']()),'OPENCLAW_CONFIG_PATH':toHomePath(_0x43e743[_0x488907(0x238)+_0x488907(0xe6)+'h']())}}),_0x3b2004=await spawnClaw(_0x4e329f['projectR'+_0x488907(0x173)],_0x4f4718,{'env':{'OPENCLAW_STATE_DIR':_0x43e743['resolveS'+'tateDir'](),'OPENCLAW_CONFIG_PATH':_0x43e743[_0x488907(0x238)+_0x488907(0xe6)+'h']()}}),_0x5e7dcc=_0x3bb652,_0x463959=_0x3e9d3c,_0x407d97?.[_0x488907(0xcf)](_0x488907(0x1b0)+_0x488907(0x1c2)+_0x488907(0x1f1),{'pid':_0x3b2004[_0x488907(0x15f)],'port':_0x463959}),_0x29d5d8({'health':_0x488907(0xfb),'port':_0x463959,'tokenPresent':!![],'message':'gateway\x20'+'process\x20'+_0x488907(0xc5)+_0x488907(0x226)+_0x488907(0x159)}),await _0x5d9c6f(_0x3bb652,_0x3e9d3c);const _0x3d4267=createLineBuffer({'trim':!![],'onLine':_0x265872=>_0x5eec34('stdout',_0x265872)}),_0x442fea=createLineBuffer({'trim':!![],'onLine':_0x219cf1=>_0x5eec34('stderr',_0x219cf1)});_0x3b2004[_0x488907(0x1b9)]['on'](_0x488907(0x201),_0x14feea=>{const _0x7c287=_0x488907;_0x3d4267['push'](_0x14feea[_0x7c287(0x1d0)]());}),_0x3b2004[_0x488907(0x1e8)]['on'](_0x488907(0x201),_0x214fc6=>{const _0x4f71e3=_0x488907;_0x442fea[_0x4f71e3(0x181)](_0x214fc6[_0x4f71e3(0x1d0)]());}),_0x3b2004['on'](_0x488907(0x1d7),_0x580103=>{const _0x58f00c=_0x488907;_0x407d97?.[_0x58f00c(0x1d7)](_0x58f00c(0x1b0)+_0x58f00c(0x1c2)+'error',{'error':summarizeError(_0x580103)}),_0x5eec34(_0x58f00c(0x1e8),_0x580103 instanceof Error?_0x580103['stack']||_0x580103[_0x58f00c(0x220)]:String(_0x580103));}),_0x3b2004['on'](_0x488907(0x127),(_0x1f38fd,_0x1c7428)=>{const _0x227a16=_0x488907;_0x3d4267[_0x227a16(0x119)](),_0x442fea[_0x227a16(0x119)](),_0x407d97?.['warn'](_0x227a16(0x1b0)+_0x227a16(0x1c2)+_0x227a16(0x230),{'pid':_0x3b2004?.[_0x227a16(0x15f)]??null,'code':_0x1f38fd,'signal':_0x1c7428,'uptimeMs':_0x1d30ec?Date[_0x227a16(0x108)]()-_0x1d30ec:undefined}),_0x5eec34(_0x227a16(0x1ea),_0x227a16(0x1b0)+_0x227a16(0x13f)+'ode='+(_0x1f38fd??'null')+_0x227a16(0x1dc)+(_0x1c7428??'null')),_0x3b2004=null,_0x5e7dcc=null,_0x463959=null,_0x55b070[_0x227a16(0x150)+'e'](null),_0x4b13e7(_0x227a16(0x1b0)+_0x227a16(0x1c2)+'exited');if(_0x55b3b6){_0x1c671d('stopped','gateway\x20'+'stopped',{'health':_0x227a16(0xfb),'port':null,'tokenPresent':![]});return;}_0x1c671d(_0x227a16(0x1d7),'gateway\x20'+_0x227a16(0x1b8)+_0x227a16(0x237)+_0x227a16(0x16b),{'health':_0x227a16(0x1ef)+'y','port':null,'tokenPresent':![]});});}async function _0x1ab846(){const _0x1d23ad=_0x4d8366;if(_0x3b2004)return;_0x55b3b6=![],_0x407d97?.['info'](_0x1d23ad(0x1b0)+_0x1d23ad(0x146)+_0x1d23ad(0x1bd)+_0x1d23ad(0x203)+'ed'),await _0x455473['start']()['catch'](_0x59d29d=>{const _0x4f0dbe=_0x1d23ad;_0x5eec34('system',_0x4f0dbe(0x195)+_0x4f0dbe(0xc3)+'n\x20callba'+_0x4f0dbe(0x15a)+_0x4f0dbe(0x1ab)+(_0x59d29d instanceof Error?_0x59d29d[_0x4f0dbe(0x220)]:String(_0x59d29d)));}),await _0x43e743[_0x1d23ad(0xea)+_0x1d23ad(0x102)+'fig'](),await ensureOpenClawDoctorFixed(_0x4e329f,{'runtimeLogger':_0x407d97}),_0x43e743['watchCon'+_0x1d23ad(0x1a8)+'es'](),_0x43e743[_0x1d23ad(0x17b)+_0x1d23ad(0x21b)+'tHandler'](_0x3a012a=>{void _0x345ee8(_0x3a012a);});const _0x223d44=await _0x43e743[_0x1d23ad(0x1c7)+_0x1d23ad(0x186)+_0x1d23ad(0x1a1)]();_0x407d97?.['info'](_0x1d23ad(0x1b0)+'settings'+_0x1d23ad(0x170)+'ed',{'port':_0x223d44['port'],'tokenPresent':Boolean(_0x223d44[_0x1d23ad(0x1bb)])}),await _0x785948(_0x223d44[_0x1d23ad(0x1bb)],_0x223d44[_0x1d23ad(0x22a)]);}async function _0x54d905(){const _0x5a943f=_0x4d8366;_0x55b3b6=!![],_0x407d97?.[_0x5a943f(0xcf)]('gateway\x20'+_0x5a943f(0x146)+_0x5a943f(0x20b)+'requeste'+'d',{'pid':_0x3b2004?.[_0x5a943f(0x15f)]??null,'port':_0x463959}),_0x55b070['configur'+'e'](null);if(_0x3b2004){const _0x541308=_0x3b2004;_0x3b2004=null;try{_0x541308[_0x5a943f(0x11a)](_0x5a943f(0x1cc));}catch{}await new Promise(_0x18f04f=>setTimeout(_0x18f04f,0x1f4));if(!_0x541308[_0x5a943f(0x175)])try{_0x541308[_0x5a943f(0x11a)](_0x5a943f(0x22f));}catch{}}_0x5e7dcc=null,_0x463959=null,_0x4b13e7('gateway\x20'+_0x5a943f(0x232)),await _0x455473[_0x5a943f(0xc7)](),_0x43e743[_0x5a943f(0x14d)](),_0x1c671d(_0x5a943f(0x232),_0x5a943f(0x1b0)+_0x5a943f(0x232),{'health':_0x5a943f(0xfb),'port':null,'tokenPresent':![]}),_0x55b3b6=![];}async function _0x345ee8(_0x45bf5d=_0x4d8366(0x204)+_0x4d8366(0x114)){const _0x1d71d6=_0x4d8366;if(_0x5ec07e)return{'ok':!![]};return _0x5ec07e=!![],_0x407d97?.[_0x1d71d6(0xcf)](_0x1d71d6(0x1b0)+_0x1d71d6(0xd7)+_0x1d71d6(0x121)+'d',{'reason':_0x45bf5d}),_0x805750=_0x805750[_0x1d71d6(0x19c)](async()=>{const _0x24024f=_0x1d71d6;_0x1c671d(_0x24024f(0x197)+'ng',_0x24024f(0x1b0)+_0x24024f(0x197)+_0x24024f(0x17a)+_0x45bf5d,{'health':'unknown'}),await _0x54d905(),await _0x1ab846();})[_0x1d71d6(0x151)](()=>{_0x5ec07e=![];}),await _0x805750,{'ok':!![]};}async function _0x35bcb7(){const _0x34afbe=_0x4d8366,_0x78de0e=await loadRuntimeInfo(_0x4e329f[_0x34afbe(0x10c)+_0x34afbe(0x173)]);return{'runtimeRoot':_0x78de0e['runtimeR'+_0x34afbe(0x173)],'openclawVersion':_0x78de0e[_0x34afbe(0x17f)+_0x34afbe(0x1f6)],'openclawWorkingDir':_0x78de0e['openclaw'+_0x34afbe(0x1ec)+'ir'],'openclawBin':_0x78de0e[_0x34afbe(0x17f)+'Bin'],'plugins':_0x78de0e[_0x34afbe(0x1e9)][_0x34afbe(0x128)](_0x2600b4=>({'pluginId':_0x2600b4[_0x34afbe(0x1be)],'source':_0x2600b4[_0x34afbe(0x107)],'version':_0x2600b4[_0x34afbe(0xef)],'installPath':_0x2600b4[_0x34afbe(0x206)+_0x34afbe(0x158)]})),'configPath':_0x43e743['resolveC'+_0x34afbe(0xe6)+'h'](),'stateDir':_0x43e743[_0x34afbe(0xf7)+_0x34afbe(0x1aa)](),'bundledAgentSkillsDiscovery':_0x4cbc36};}async function _0x59d933(){const _0x1c1988=_0x4d8366;_0x19e45f?.['info'](_0x1c1988(0x11c)+_0x1c1988(0x166)+_0x1c1988(0x16c));const _0x454c16=asRecord(await _0x55b070[_0x1c1988(0x1db)](_0x1c1988(0x1b1)+_0x1c1988(0x169),{})),_0x435ae4=getTrimmedString(_0x454c16[_0x1c1988(0x12d)+'d'])||'main',_0x2c9193=Array[_0x1c1988(0x1c6)](_0x454c16['agents'])?[..._0x454c16[_0x1c1988(0x1df)]]:[];return{..._0x454c16,'defaultId':_0x435ae4,'agents':_0x2c9193};}async function _0x2439e(){const _0x47f4e9=_0x4d8366;if(!_0x31ac71())return{'defaultId':_0x47f4e9(0x164),'mainKey':'','scope':'','pending':!![],'agents':[{'id':_0x47f4e9(0x164),'name':_0x4e329f[_0x47f4e9(0x137)+_0x47f4e9(0x1d8)],'workspace':join(_0x43e743['resolveS'+_0x47f4e9(0x1aa)](),_0x47f4e9(0x1a9)+'e')}]};const _0x329724=await _0x59d933(),_0x24973a=getTrimmedString(_0x329724['defaultI'+'d'])||'main',_0x43f180=Array[_0x47f4e9(0x1c6)](_0x329724[_0x47f4e9(0x1df)])?[..._0x329724[_0x47f4e9(0x1df)]]:[];return!_0x43f180[_0x47f4e9(0x224)](_0x24053e=>asRecord(_0x24053e)['id']===_0x47f4e9(0x164))&&_0x43f180[_0x47f4e9(0x1ac)]({'id':'main','name':_0x4e329f[_0x47f4e9(0x137)+'ame'],'workspace':join(_0x43e743['resolveS'+_0x47f4e9(0x1aa)](),_0x47f4e9(0x1a9)+'e')}),{..._0x329724,'defaultId':_0x24973a,'agents':_0x43f180};}async function _0x23ceb6(_0x29fa29={}){const _0x3c14cf=_0x4d8366;_0x52dddc();const _0xf0179f=Date[_0x3c14cf(0x108)]();_0x1de0f7?.[_0x3c14cf(0xcf)]('session\x20'+_0x3c14cf(0x1f8)+_0x3c14cf(0x14c),{'payload':summarizePayload(_0x29fa29)});const _0x386d82=await _0x55b070[_0x3c14cf(0x1db)](_0x3c14cf(0xfd)+_0x3c14cf(0x165),buildSessionCreateRequestPayload(_0x29fa29)),_0x20c918=parseSessionCreateResult(_0x386d82);return _0x1de0f7?.[_0x3c14cf(0xcf)](_0x3c14cf(0x112)+'create\x20c'+_0x3c14cf(0x154),{'key':_0x20c918['key'],'sessionId':_0x20c918[_0x3c14cf(0x1b4)+'d'],'durationMs':Date['now']()-_0xf0179f}),_0x20c918;}async function _0x45fb50(_0x39cf18={}){const _0x2b6f07=_0x4d8366,_0x48ae89=await readSessionMetadata(_0x43e743[_0x2b6f07(0xf7)+_0x2b6f07(0x1aa)]());if(!_0x31ac71())return{'pending':!![],'sessions':[],'pinnedKeys':_0x48ae89[_0x2b6f07(0x14e)+'ys']};const _0x9b1d29=Date['now'](),_0x4942f4=Math[_0x2b6f07(0x138)](0x1,Math[_0x2b6f07(0x12f)](Number(_0x39cf18[_0x2b6f07(0x105)])||0x64)),_0x550d53={'limit':_0x4942f4,'includeGlobal':!![],'includeUnknown':![]},_0x15fd5c=getTrimmedString(_0x39cf18[_0x2b6f07(0x172)]??_0x2b6f07(0x164));if(_0x15fd5c)_0x550d53['agentId']=_0x15fd5c;const _0x5130ab=applySessionMetadata(await _0x55b070['request']('sessions'+'.list',_0x550d53),_0x48ae89);return _0x1de0f7?.[_0x2b6f07(0xcf)]('sessions'+_0x2b6f07(0x13b)+'mpleted',{'payload':_0x550d53,'count':Array[_0x2b6f07(0x1c6)](_0x5130ab[_0x2b6f07(0xfd)])?_0x5130ab[_0x2b6f07(0xfd)][_0x2b6f07(0x191)]:0x0,'durationMs':Date[_0x2b6f07(0x108)]()-_0x9b1d29}),_0x5130ab;}async function _0x596675(_0x36af8f={}){const _0xba59ed=_0x4d8366;_0x52dddc();const _0xffa41f=getTrimmedString(_0x36af8f['sessionK'+'ey']??_0x36af8f['key']);if(!_0xffa41f)throw new Error(_0xba59ed(0x1c8)+_0xba59ed(0x1f0)+_0xba59ed(0x129));const _0x4e1e20=Date[_0xba59ed(0x108)](),_0x5aeb52=await _0x55b070[_0xba59ed(0x1db)]('sessions'+_0xba59ed(0xdf),{'key':_0xffa41f,'deleteTranscript':_0x36af8f[_0xba59ed(0xda)+_0xba59ed(0x14a)]!==![],'emitLifecycleHooks':!![]}),_0x53d67f=await readSessionMetadata(_0x43e743['resolveS'+_0xba59ed(0x1aa)]());return delete _0x53d67f[_0xba59ed(0x1cf)][_0xffa41f],_0x53d67f[_0xba59ed(0x14e)+'ys']=_0x53d67f[_0xba59ed(0x14e)+'ys'][_0xba59ed(0x210)](_0x3f92f0=>_0x3f92f0!==_0xffa41f),await writeSessionMetadata(_0x43e743['resolveS'+_0xba59ed(0x1aa)](),_0x53d67f),_0x5c1381('session-'+_0xba59ed(0xf4),{'type':_0xba59ed(0x1e4),'sessionKey':_0xffa41f}),_0x1de0f7?.[_0xba59ed(0xcf)](_0xba59ed(0x112)+_0xba59ed(0x23a)+_0xba59ed(0x154),{'sessionKey':_0xffa41f,'deleteTranscript':_0x36af8f[_0xba59ed(0xda)+_0xba59ed(0x14a)]!==![],'durationMs':Date[_0xba59ed(0x108)]()-_0x4e1e20}),_0x5aeb52;}async function _0x360757(_0x30087a={}){const _0x5244ae=_0x4d8366,_0x277c3e=getTrimmedString(_0x30087a['sessionK'+'ey']??_0x30087a[_0x5244ae(0x1a5)]);if(!_0x277c3e)throw new Error('sessionK'+'ey\x20is\x20re'+_0x5244ae(0x129));const _0x9b2dd9=getTrimmedString(_0x30087a[_0x5244ae(0x153)]??_0x30087a[_0x5244ae(0xe5)]??_0x30087a[_0x5244ae(0x182)]),_0x34ee14=await readSessionMetadata(_0x43e743[_0x5244ae(0xf7)+'tateDir']());if(_0x9b2dd9)_0x34ee14[_0x5244ae(0x1cf)][_0x277c3e]=_0x9b2dd9;else delete _0x34ee14[_0x5244ae(0x1cf)][_0x277c3e];return await writeSessionMetadata(_0x43e743['resolveS'+'tateDir'](),_0x34ee14),_0x5c1381('session-'+'updated',{'type':_0x5244ae(0x209),'sessionKey':_0x277c3e,'name':_0x9b2dd9}),_0x1de0f7?.[_0x5244ae(0xcf)](_0x5244ae(0x112)+_0x5244ae(0x10e)+_0x5244ae(0x154),{'sessionKey':_0x277c3e,'hasName':Boolean(_0x9b2dd9),'name':_0x9b2dd9?summarizeText(_0x9b2dd9,0x50):undefined}),{'ok':!![]};}async function _0x3cd019(){const _0x1efabc=_0x4d8366,_0x255f8e=await readSessionMetadata(_0x43e743[_0x1efabc(0xf7)+_0x1efabc(0x1aa)]());return _0x255f8e[_0x1efabc(0x14e)+'ys'];}async function _0x49b25a(_0x50683a=[]){const _0x31b752=_0x4d8366,_0x442614=await readSessionMetadata(_0x43e743[_0x31b752(0xf7)+'tateDir']());return _0x442614[_0x31b752(0x14e)+'ys']=Array[_0x31b752(0x1c6)](_0x50683a)?[...new Set(_0x50683a[_0x31b752(0x128)](getTrimmedString)[_0x31b752(0x210)](Boolean))]:[],await writeSessionMetadata(_0x43e743[_0x31b752(0xf7)+_0x31b752(0x1aa)](),_0x442614),_0x5c1381('session-'+_0x31b752(0xf4),{'type':_0x31b752(0x18d)+'eys-upda'+_0x31b752(0x194),'pinnedKeys':_0x442614[_0x31b752(0x14e)+'ys']}),_0x1de0f7?.['info'](_0x31b752(0x112)+'pinned\x20k'+_0x31b752(0xd3)+_0x31b752(0x194),{'count':_0x442614['pinnedKe'+'ys'][_0x31b752(0x191)]}),{'ok':!![],'pinnedKeys':_0x442614[_0x31b752(0x14e)+'ys']};}async function _0x587156(){const _0x21c712=_0x4d8366,_0x4e3c29=join(_0x43e743[_0x21c712(0xf7)+'tateDir'](),_0x21c712(0x1a9)+'e');return{'path':_0x4e3c29,'exists':Boolean(await stat(_0x4e3c29)['catch'](()=>null))};}async function _0x39d553(){const _0x16880b=_0x4d8366;return readSharedContext(join(_0x43e743[_0x16880b(0xf7)+'tateDir'](),'workspac'+'e'));}async function _0x207908(_0x5b4b7e={}){const _0x36e152=_0x4d8366;return _0x19e45f?.[_0x36e152(0xcf)]('workspac'+_0x36e152(0xf8)+_0x36e152(0x19a)+'\x20write\x20r'+_0x36e152(0x14c),{'files':Object[_0x36e152(0x215)](sanitizeSharedContextPayload(_0x5b4b7e))}),writeSharedContext(join(_0x43e743[_0x36e152(0xf7)+_0x36e152(0x1aa)](),_0x36e152(0x1a9)+'e'),_0x5b4b7e);}async function _0x54e0e7(_0xb44d98={}){const _0x11e349=_0x4d8366;return _0x52dddc(),await _0x55b070[_0x11e349(0x1db)](_0x11e349(0x109)+'t',_0xb44d98);}async function _0x4f9b4e(_0x18b5c5={}){const _0x227a4a=_0x4d8366;return _0x52dddc(),await _0x55b070[_0x227a4a(0x1db)]('cron.add',_0x18b5c5);}async function _0x3f6098(_0x40108f={}){const _0x29cf05=_0x4d8366;_0x52dddc();const _0x1bfb42=getTrimmedString(_0x40108f[_0x29cf05(0xdd)]??_0x40108f['id']);if(!_0x1bfb42)throw new Error(_0x29cf05(0x185)+'\x20require'+'d');const _0x5111eb=asRecord(_0x40108f[_0x29cf05(0x1f7)]),_0x326abf=Object[_0x29cf05(0x215)](_0x5111eb)[_0x29cf05(0x191)]>0x0?_0x5111eb:{..._0x40108f};return delete _0x326abf['jobId'],delete _0x326abf['id'],await _0x55b070[_0x29cf05(0x1db)]('cron.upd'+'ate',{'jobId':_0x1bfb42,'patch':_0x326abf});}async function _0x4e91ae(_0x286e63={}){const _0x172eb2=_0x4d8366;_0x52dddc();const _0x4243c5=getTrimmedString(_0x286e63[_0x172eb2(0xdd)]??_0x286e63['id']);if(!_0x4243c5)throw new Error('jobId\x20is'+_0x172eb2(0xec)+'d');return await _0x55b070[_0x172eb2(0x1db)](_0x172eb2(0x1a7)+_0x172eb2(0x21f),{'jobId':_0x4243c5});}async function _0x12270a(_0x32f60d={}){const _0x2a5953=_0x4d8366;_0x52dddc();const _0x47835f=getTrimmedString(_0x32f60d[_0x2a5953(0xdd)]??_0x32f60d['id']);if(!_0x47835f)throw new Error('jobId\x20is'+_0x2a5953(0xec)+'d');return await _0x55b070['request'](_0x2a5953(0x214),{'jobId':_0x47835f});}async function _0x39cc02(_0x4b4928={}){const _0x3165c2=_0x4d8366;return _0x52dddc(),await _0x55b070[_0x3165c2(0x1db)]('cron.run'+'s',_0x4b4928);}async function _0x1b9ba4(_0x46aa95={}){const _0x26c34d=_0x4d8366;_0x52dddc();const _0x34ce70=Date[_0x26c34d(0x108)]();_0x19e45f?.[_0x26c34d(0xcf)](_0x26c34d(0x1b6)+_0x26c34d(0x198)+'quested',{'payload':summarizePayload(_0x46aa95)});try{const _0x128408=await _0x55b070[_0x26c34d(0x1db)](_0x26c34d(0x1f9)+_0x26c34d(0x200),_0x46aa95);return _0x19e45f?.[_0x26c34d(0xcf)](_0x26c34d(0x1b6)+_0x26c34d(0xe7)+_0x26c34d(0x22e),{'durationMs':Date[_0x26c34d(0x108)]()-_0x34ce70,'result':summarizePayload(_0x128408,{'maxDepth':0x2})}),_0x128408;}catch(_0x439a1c){_0x19e45f?.[_0x26c34d(0x1d7)](_0x26c34d(0x1b6)+_0x26c34d(0x1a4)+_0x26c34d(0x162),{'durationMs':Date[_0x26c34d(0x108)]()-_0x34ce70,'error':summarizeError(_0x439a1c)});throw _0x439a1c;}}async function _0x585e94(_0x4b3c4f={}){const _0x3b9a3a=_0x4d8366;return _0x52dddc(),_0x19e45f?.[_0x3b9a3a(0xcf)](_0x3b9a3a(0x101)+_0x3b9a3a(0x14f)+_0x3b9a3a(0x1af),{'payload':summarizePayload(_0x4b3c4f)}),await _0x55b070[_0x3b9a3a(0x1db)]('skills.u'+_0x3b9a3a(0x19d),_0x4b3c4f);}async function _0x2f60ff(_0x18f7de={}){const _0x539608=_0x4d8366;return _0x52dddc(),_0x19e45f?.['info'](_0x539608(0x157)+_0x539608(0x228)+_0x539608(0x1af),{'payload':summarizePayload(_0x18f7de)}),await _0x55b070[_0x539608(0x1db)](_0x539608(0xfc)+_0x539608(0x136),_0x18f7de);}async function _0x11aef5(_0x51ae5e={}){const _0x4ea5a3=_0x4d8366;_0x52dddc();const _0x4034de=getTrimmedString(_0x51ae5e[_0x4ea5a3(0x1c8)+'ey']),_0x29ed26=getTrimmedString(_0x51ae5e['message']),_0x42ee44=getTrimmedString(_0x51ae5e['requestI'+'d'])||randomUUID();if(!_0x4034de)throw new Error(_0x4ea5a3(0x1c8)+_0x4ea5a3(0x1f0)+_0x4ea5a3(0x129));if(!_0x29ed26)throw new Error(_0x4ea5a3(0x20a)+_0x4ea5a3(0x16f)+_0x4ea5a3(0xff));const _0x54bfd5=Date[_0x4ea5a3(0x108)]();_0x3f9c59?.[_0x4ea5a3(0xcf)](_0x4ea5a3(0x223)+_0x4ea5a3(0x18e)+_0x4ea5a3(0x16c),{'requestId':_0x42ee44,'sessionKey':_0x4034de,'message':summarizeText(_0x29ed26),'filePaths':summarizeFilePaths(_0x51ae5e[_0x4ea5a3(0x202)+'s'])}),_0x404848({'requestId':_0x42ee44,'sessionKey':_0x4034de,'type':_0x4ea5a3(0x1f1)}),_0xe9e03a[_0x4ea5a3(0x139)](_0x42ee44,{'runId':_0x42ee44,'requestId':_0x42ee44,'sessionKey':_0x4034de,'textLength':0x0,'startedAt':_0x54bfd5}),_0x31aa5c[_0x4ea5a3(0x139)](_0x4034de,_0x42ee44);try{const _0x1e7ff6=await buildAttachments(Array[_0x4ea5a3(0x1c6)](_0x51ae5e['filePath'+'s'])?_0x51ae5e['filePath'+'s']:[]);_0x3f9c59?.['info'](_0x4ea5a3(0x225)+_0x4ea5a3(0x1d9)+_0x4ea5a3(0x1c4)+'d',{'requestId':_0x42ee44,'sessionKey':_0x4034de,'attachmentCount':_0x1e7ff6[_0x4ea5a3(0x191)],'attachments':_0x1e7ff6[_0x4ea5a3(0x128)](_0xe29e89=>({'type':_0xe29e89['type'],'mimeType':_0xe29e89[_0x4ea5a3(0x1bf)],'fileName':_0xe29e89[_0x4ea5a3(0x1c9)],'contentLength':_0xe29e89[_0x4ea5a3(0xdb)]['length']}))});const _0x43d7ea=asRecord(await _0x55b070[_0x4ea5a3(0x1db)](_0x4ea5a3(0x1fc)+'d',{'sessionKey':_0x4034de,'message':_0x29ed26,'deliver':![],'idempotencyKey':_0x42ee44,..._0x1e7ff6[_0x4ea5a3(0x191)]>0x0?{'attachments':_0x1e7ff6}:{}})),_0x568e3a=getTrimmedString(_0x43d7ea['runId'])||_0x42ee44,_0x1012d7=_0xe9e03a['get'](_0x42ee44);if(!_0x1012d7)return{'ok':!![],'requestId':_0x42ee44,'runId':_0x568e3a};return _0x568e3a!==_0x1012d7[_0x4ea5a3(0x213)]&&(_0xe9e03a[_0x4ea5a3(0x115)](_0x1012d7[_0x4ea5a3(0x213)]),_0x1012d7['runId']=_0x568e3a,_0xe9e03a[_0x4ea5a3(0x139)](_0x568e3a,_0x1012d7)),_0x31aa5c['set'](_0x4034de,_0x568e3a),_0x3f9c59?.[_0x4ea5a3(0xcf)](_0x4ea5a3(0x223)+_0x4ea5a3(0x1f5)+_0x4ea5a3(0x123)+_0x4ea5a3(0x189),{'requestId':_0x42ee44,'runId':_0x568e3a,'sessionKey':_0x4034de,'durationMs':Date[_0x4ea5a3(0x108)]()-_0x54bfd5,'status':_0x43d7ea['status']}),_0x43d7ea[_0x4ea5a3(0xd1)]===_0x4ea5a3(0x1d7)&&_0x539689(_0x1012d7,'error',getTrimmedString(_0x43d7ea['errorMes'+_0x4ea5a3(0x176)])||_0x4ea5a3(0x1b0)+_0x4ea5a3(0xf9)+_0x4ea5a3(0x104)),{'ok':!![],'requestId':_0x42ee44,'runId':_0x568e3a,'response':_0x43d7ea};}catch(_0x41724b){const _0x258bb7=_0x2e03d1(_0x42ee44),_0x69ddb5=_0x41724b instanceof Error?_0x41724b[_0x4ea5a3(0x220)]:String(_0x41724b);_0x3f9c59?.['error'](_0x4ea5a3(0x223)+'eam\x20fail'+'ed',{'requestId':_0x42ee44,'sessionKey':_0x4034de,'durationMs':Date[_0x4ea5a3(0x108)]()-_0x54bfd5,'error':summarizeError(_0x41724b)});if(_0x258bb7)_0x539689(_0x258bb7,'error',_0x69ddb5);else _0x404848({'requestId':_0x42ee44,'sessionKey':_0x4034de,'type':'error','message':_0x69ddb5});throw _0x41724b;}}async function _0x4607da(_0x1757c7={}){const _0x266879=_0x4d8366;_0x52dddc();const _0x4e2572=getTrimmedString(_0x1757c7[_0x266879(0x1c8)+'ey']);if(!_0x4e2572)throw new Error(_0x266879(0x1c8)+'ey\x20is\x20re'+_0x266879(0x129));const _0x2d6b66=Date[_0x266879(0x108)](),_0x3b8d3c=_0x2e03d1(getTrimmedString(_0x1757c7['requestI'+'d']))??_0x242ae9(_0x4e2572),_0x444f35=_0x31aa5c[_0x266879(0xd8)](_0x4e2572),_0x4245f9={'sessionKey':_0x4e2572};if(_0x3b8d3c?.[_0x266879(0x213)])_0x4245f9[_0x266879(0x213)]=_0x3b8d3c[_0x266879(0x213)];else{if(_0x444f35)_0x4245f9[_0x266879(0x213)]=_0x444f35;}const _0x17b1f7=await _0x55b070['request'](_0x266879(0x1e0)+'rt',_0x4245f9);if(_0x3b8d3c)_0x539689(_0x3b8d3c,_0x266879(0x1c5));return _0x3f9c59?.['info'](_0x266879(0x1fb)+_0x266879(0x11e)+'sted',{'sessionKey':_0x4e2572,'requestId':getTrimmedString(_0x1757c7[_0x266879(0xe9)+'d']),'runId':_0x4245f9[_0x266879(0x213)],'durationMs':Date[_0x266879(0x108)]()-_0x2d6b66}),_0x17b1f7;}async function _0x5de723(_0x56200f={}){const _0x160ac5=_0x4d8366;_0x52dddc();const _0x561c61=getTrimmedString(_0x56200f['sessionK'+'ey']);if(!_0x561c61)throw new Error(_0x160ac5(0x1c8)+_0x160ac5(0x1f0)+_0x160ac5(0x129));const _0x1faf42=await _0x55b070['request'](_0x160ac5(0x205)+_0x160ac5(0xc8),{'sessionKey':_0x561c61,'limit':Math[_0x160ac5(0x138)](0x1,Math[_0x160ac5(0x12f)](Number(_0x56200f[_0x160ac5(0x105)])||0xc8))});return _0x3f9c59?.[_0x160ac5(0xcf)](_0x160ac5(0x18b)+_0x160ac5(0x125)+_0x160ac5(0xe8),{'sessionKey':_0x561c61,'limit':Math['max'](0x1,Math[_0x160ac5(0x12f)](Number(_0x56200f['limit'])||0xc8)),'result':summarizePayload(_0x1faf42,{'maxDepth':0x2})}),_0x1faf42;}async function _0x4ae46f(_0x5354ec=''){const _0x120c3d=_0x4d8366;if(!_0x31ac71())return{'pending':!![],'skills':[]};const _0x8c563=getTrimmedString(_0x5354ec),_0x57fc63=await _0x55b070[_0x120c3d(0x1db)](_0x120c3d(0x11d)+_0x120c3d(0x18c),_0x8c563?{'agentId':_0x8c563}:{}),_0x512c48=await _0x43e743[_0x120c3d(0x207)+'ig']()[_0x120c3d(0x19f)](()=>({})),_0x4385c8=filterSkillsForAgent(_0x57fc63,_0x512c48,_0x8c563);return _0x19e45f?.[_0x120c3d(0xcf)](_0x120c3d(0x1ca)+'tatus\x20lo'+_0x120c3d(0xc1),{'agentId':_0x8c563||_0x120c3d(0xe2),'result':summarizePayload(_0x4385c8,{'maxDepth':0x2})}),_0x4385c8;}return{'on':_0xa33f86,'start':_0x1ab846,'stop':_0x54d905,'restart':_0x345ee8,'runtimeInfo':_0x35bcb7,'getStatus':()=>_0x5ae230,'getRecentLogs':_0x2e57e3,'answerAskUserQuestion':_0x426961=>_0x455473[_0x4d8366(0x219)](_0x426961),'agents':{'list':_0x2439e},'skills':{'status':_0x4ae46f,'install':_0x1b9ba4,'update':_0x585e94,'delete':_0x2f60ff},'sessions':{'create':_0x23ceb6,'list':_0x45fb50,'delete':_0x596675,'rename':_0x360757,'pinnedKeys':_0x3cd019,'setPinnedKeys':_0x49b25a},'workspace':{'directoryInfo':_0x587156,'sharedContext':_0x39d553,'writeSharedContext':_0x207908},'cron':{'list':_0x54e0e7,'create':_0x4f9b4e,'update':_0x3f6098,'remove':_0x4e91ae,'runOnce':_0x12270a,'logs':_0x39cc02},'models':{'settings':()=>_0x43e743[_0x4d8366(0x1d4)+_0x4d8366(0x1b7)](),'setSettings':async(_0x9405e={})=>{const _0x14c8f8=_0x4d8366,_0x340af9=_0x9405e?.[_0x14c8f8(0x1e1)+_0x14c8f8(0x149)]!==![];return await _0x43e743[_0x14c8f8(0x180)+_0x14c8f8(0x1b7)](_0x9405e,{'restartOnChange':_0x340af9}),_0x43e743[_0x14c8f8(0x1d4)+_0x14c8f8(0x1b7)]();},'setSelfOperatedModels':_0x2727c7=>_0x43e743['setSelfO'+_0x4d8366(0x1f2)+'odels'](_0x2727c7),'selectedModelId':async()=>{const _0x24b16e=_0x4d8366,_0x4a3405=await _0x43e743[_0x24b16e(0x1d4)+_0x24b16e(0x1b7)]();return _0x4a3405['provider']&&_0x4a3405[_0x24b16e(0x20c)+'e']?_0x4a3405[_0x24b16e(0x12e)]+'/'+_0x4a3405[_0x24b16e(0x20c)+'e']:'';},'customModels':async()=>[]},'config':{'read':()=>_0x43e743[_0x4d8366(0x207)+'ig']()},'chat':{'stream':_0x11aef5,'abort':_0x4607da,'history':_0x5de723}};}