@wujie-shell/core 1.0.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- const _0x51c199=_0x48c4;(function(_0x34fc0b,_0x219855){const _0x18f3df=_0x48c4,_0x361395=_0x34fc0b();while(!![]){try{const _0x1cece1=parseInt(_0x18f3df(0x2a3))/0x1*(-parseInt(_0x18f3df(0x263))/0x2)+-parseInt(_0x18f3df(0x293))/0x3*(parseInt(_0x18f3df(0x308))/0x4)+parseInt(_0x18f3df(0x1e0))/0x5*(-parseInt(_0x18f3df(0x282))/0x6)+-parseInt(_0x18f3df(0x2ca))/0x7+parseInt(_0x18f3df(0x2c8))/0x8+-parseInt(_0x18f3df(0x343))/0x9*(-parseInt(_0x18f3df(0x317))/0xa)+parseInt(_0x18f3df(0x213))/0xb;if(_0x1cece1===_0x219855)break;else _0x361395['push'](_0x361395['shift']());}catch(_0x3fa277){_0x361395['push'](_0x361395['shift']());}}}(_0x5bd1,0xdbb6a));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 _0x18eb35,{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=_0x51c199(0x2c9)+_0x51c199(0x33e),CLIENT_MODE=_0x51c199(0x2d8),CLIENT_DEVICE_FAMILY=_0x51c199(0x27f),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,SESSION_METADATA_FILE=_0x51c199(0x23a)+_0x51c199(0x25b)+_0x51c199(0x1f1),SHARED_CONTEXT_FILES=[_0x51c199(0x21a)+'d',_0x51c199(0x259)+_0x51c199(0x22e),'IDENTITY'+_0x51c199(0x2db),_0x51c199(0x20e)+'d',_0x51c199(0x33c),_0x51c199(0x22c),_0x51c199(0x30a)];function nowIso(){const _0x512b7c=_0x51c199;return new Date()[_0x512b7c(0x2b0)+_0x512b7c(0x28f)]();}function _0x48c4(_0x8e62e,_0x4d7bfb){_0x8e62e=_0x8e62e-0x1dd;const _0x5bd1ce=_0x5bd1();let _0x48c4e8=_0x5bd1ce[_0x8e62e];return _0x48c4e8;}function buildGatewayWsUrl(_0x18bb7f){const _0xabc703=_0x51c199;return _0xabc703(0x315)+_0xabc703(0x347)+_0x18bb7f;}function createInitialStatus(){const _0x39767e=_0x51c199;return{'lifecycle':_0x39767e(0x262),'health':_0x39767e(0x1ee),'port':null,'tokenPresent':![],'message':_0x39767e(0x2d9)+_0x39767e(0x262),'updatedAt':nowIso()};}function extractGatewayMessageText(_0xce5b0b){const _0x5a03b8=_0x51c199;if(typeof _0xce5b0b===_0x5a03b8(0x1df))return _0xce5b0b;if(!Array['isArray'](_0xce5b0b))return'';const _0x2a6688=[];for(const _0xea5c35 of _0xce5b0b){if(typeof _0xea5c35===_0x5a03b8(0x1df)){if(_0xea5c35)_0x2a6688[_0x5a03b8(0x324)](_0xea5c35);continue;}const _0x94bfb=asRecord(_0xea5c35);_0x94bfb['type']===_0x5a03b8(0x2ff)&&typeof _0x94bfb['text']==='string'&&_0x94bfb[_0x5a03b8(0x2ff)]&&_0x2a6688[_0x5a03b8(0x324)](_0x94bfb[_0x5a03b8(0x2ff)]);}return _0x2a6688[_0x5a03b8(0x2f3)]('\x0a');}function extractGatewayChatText(_0x2f5b86){const _0x25389=_0x51c199,_0x536e9b=asRecord(_0x2f5b86);if(typeof _0x536e9b[_0x25389(0x2ff)]===_0x25389(0x1df))return _0x536e9b['text'];return extractGatewayMessageText(_0x536e9b[_0x25389(0x311)]);}function guessMimeType(_0xcd7c2e){const _0x10e1ab=_0x51c199,_0x479ec0=_0xcd7c2e[_0x10e1ab(0x2de)]('.')[_0x10e1ab(0x320)]()?.[_0x10e1ab(0x2a9)+'ase']()??'',_0x44cce1={'png':_0x10e1ab(0x266)+'g','jpg':'image/jp'+'eg','jpeg':_0x10e1ab(0x28a)+'eg','webp':_0x10e1ab(0x28e)+'bp','gif':'image/gi'+'f','svg':'image/sv'+_0x10e1ab(0x1fc),'pdf':_0x10e1ab(0x1f6)+_0x10e1ab(0x284),'txt':_0x10e1ab(0x244)+'in','md':_0x10e1ab(0x321)+_0x10e1ab(0x25c),'json':_0x10e1ab(0x1f6)+'ion/json','csv':_0x10e1ab(0x271)};return _0x44cce1[_0x479ec0]||_0x10e1ab(0x1f6)+_0x10e1ab(0x1f5)+_0x10e1ab(0x2e3);}async function buildAttachments(_0x51597b=[]){const _0x187c3b=_0x51c199,_0x477d74=[];for(const _0x555f07 of _0x51597b){const _0x4d7137=getTrimmedString(_0x555f07);if(!_0x4d7137)continue;const _0x4d788=await stat(_0x4d7137);if(!_0x4d788[_0x187c3b(0x228)]())continue;if(_0x4d788[_0x187c3b(0x255)]>ATTACHMENT_MAX_BYTES)throw new Error(_0x187c3b(0x31f)+_0x187c3b(0x2b6)+'arge:\x20'+basename(_0x4d7137));const _0x13c57e=guessMimeType(_0x4d7137);_0x477d74['push']({'type':_0x13c57e['startsWi'+'th'](_0x187c3b(0x34d))?_0x187c3b(0x20c):_0x187c3b(0x2bc),'mimeType':_0x13c57e,'content':(await readFile(_0x4d7137))[_0x187c3b(0x2d7)]('base64'),'fileName':basename(_0x4d7137)});}return _0x477d74;}function buildSessionCreateRequestPayload(_0x81ab2e={}){const _0x38dce9=_0x51c199,_0x23dbd1={},_0x591764=Math[_0x38dce9(0x272)]()[_0x38dce9(0x2d7)](0x24)[_0x38dce9(0x203)](0x2,0xf),_0x333f69=getTrimmedString(_0x81ab2e[_0x38dce9(0x339)])||_0x38dce9(0x291),_0xa87d78=getTrimmedString(_0x81ab2e[_0x38dce9(0x256)])||_0x38dce9(0x218)+_0x333f69+(_0x38dce9(0x1e5)+'-')+Date['now']();_0x23dbd1[_0x38dce9(0x256)]=_0xa87d78+'-'+_0x591764,_0x23dbd1['agentId']=_0x333f69;const _0x3b1c81=getTrimmedString(_0x81ab2e['label']);if(_0x3b1c81)_0x23dbd1[_0x38dce9(0x2eb)]=_0x3b1c81+'-'+_0x591764;for(const _0x43dfb7 of[_0x38dce9(0x2a4),_0x38dce9(0x300)+'ssionKey',_0x38dce9(0x260),_0x38dce9(0x2a0)]){const _0x1a14e0=getTrimmedString(_0x81ab2e[_0x43dfb7]);if(_0x1a14e0)_0x23dbd1[_0x43dfb7]=_0x1a14e0;}return _0x23dbd1;}function parseSessionCreateResult(_0x2becfe){const _0x40651b=_0x51c199,_0x8529fc=asRecord(_0x2becfe),_0x49bc60=asRecord(_0x8529fc[_0x40651b(0x227)]);return{'ok':!![],'key':getTrimmedString(_0x8529fc[_0x40651b(0x256)])||getTrimmedString(_0x8529fc['sessionK'+'ey'])||getTrimmedString(_0x49bc60['key'])||null,'sessionId':getTrimmedString(_0x8529fc[_0x40651b(0x202)+'d'])||getTrimmedString(_0x49bc60['sessionI'+'d'])||null};}function getSessionKeyFromValue(_0x4c3f37){const _0x3c9911=_0x51c199,_0x50849b=asRecord(_0x4c3f37);return getTrimmedString(_0x50849b[_0x3c9911(0x1ed)+'ey']??_0x50849b[_0x3c9911(0x256)]??_0x50849b['id']);}function createEmptySessionMetadata(){return{'names':{},'pinnedKeys':[]};}async function readSessionMetadata(_0x3c1556){const _0x5c6974=_0x51c199;try{const _0x27c9bf=JSON[_0x5c6974(0x28d)](await readFile(join(_0x3c1556,SESSION_METADATA_FILE),'utf8')),_0x2796be=asRecord(_0x27c9bf);return{'names':asRecord(_0x2796be[_0x5c6974(0x2f4)]),'pinnedKeys':Array['isArray'](_0x2796be['pinnedKe'+'ys'])?_0x2796be[_0x5c6974(0x280)+'ys'][_0x5c6974(0x1fa)](_0x2e587d=>typeof _0x2e587d===_0x5c6974(0x1df)&&_0x2e587d[_0x5c6974(0x220)]()):[]};}catch{return createEmptySessionMetadata();}}async function writeSessionMetadata(_0x37b0dd,_0x5d537b){const _0x1affe4=_0x51c199;await mkdir(_0x37b0dd,{'recursive':!![]}),await writeFile(join(_0x37b0dd,SESSION_METADATA_FILE),JSON[_0x1affe4(0x234)+'y'](_0x5d537b,null,0x2)+'\x0a',_0x1affe4(0x2ec));}function applySessionMetadata(_0x17916b,_0x410e91){const _0x3a407b=_0x51c199,_0xfe9a0a=asRecord(_0x17916b),_0x310218=Array[_0x3a407b(0x312)](_0xfe9a0a[_0x3a407b(0x299)])?_0xfe9a0a[_0x3a407b(0x299)]:[];return{..._0xfe9a0a,'pinnedKeys':_0x410e91['pinnedKe'+'ys'],'sessions':_0x310218[_0x3a407b(0x20b)](_0x15986e=>{const _0x5cd64f=_0x3a407b,_0x49d14c=asRecord(_0x15986e),_0x404c5f=getSessionKeyFromValue(_0x49d14c);if(!_0x404c5f)return _0x15986e;const _0x3c268f=getTrimmedString(_0x410e91[_0x5cd64f(0x2f4)][_0x404c5f]),_0x4fc04b=_0x410e91[_0x5cd64f(0x280)+'ys'][_0x5cd64f(0x1ec)](_0x404c5f);return{..._0x49d14c,..._0x3c268f?{'name':_0x3c268f,'displayName':_0x3c268f,'label':_0x3c268f}:{},'pinned':_0x4fc04b};})};}function _0x5bd1(){const _0x1dba3b=['utf8','chat.his','eady','\x20request','message\x20','eys\x20upda','bundled-','join','names','agents.c','stall\x20re','ort\x20','health','unconfig','\x20failed\x20','modelNam','pinned-k','resolveS','x-ask-us','text','parentSe','provider','create\x20c','method','chat\x20fai','n\x20callba','destroy','igWriteH','4WFLruZ','started','USER.md','runId','session\x20','terminal','jobId','agents\x20e','lete\x20req','content','isArray','stdout','nexpecte','ws://127','patch','130OfNXzk','tatus\x20lo','pdated','cron.rem','close','productN','unhealth','spawn\x20re','attachme','pop','text/mar','end','n\x20reques','push','ath','gateway','unshift','readConf','bundled\x20','cron.upd','allow','skill\x20in','Bin','system','tatus','is\x20start','chat.abo','eam\x20acce','writeCon','some','t\x20connec','discover','eway]\x20bu','floor','agentId','updated','warn','SOUL.md','title','client','ase','[wujie-s','websocke','run','831618mRzgTT','agents\x20s','skills.i','then','.0.0.1:','llow-unc','\x20context','ted','ed:\x20','r-questi','image/','lifecycl','status','string','35BQvbBB','ndled\x20ag','dly','eys-upda','kill',':session','final','behavior','ion/json','has','once','now','includes','sessionK','unknown','ured','emit','.json','unauthor','ved','res','ion/octe','applicat','ties','chat','restarti','filter','stop','g+xml','agents','y\x20shortl','d\x20--toke','rt\x20reque','cron.run','sessionI','slice','eam\x20fail','tokenPre','sted','stall\x20fa','ode=','timeout','errorMes','map','image','started,','MEMORY.m','setGatew','resolveC','stderr','ginConfi','21938444cwaWVz','pinned\x20k','closed','agent-ev','nected','agent:','by\x20gatew','AGENTS.m','ove','is\x20requi','getModel','projectR','deleted','trim','data','splice','sent','skill\x20up','textLeng','openclaw','session','isFile','exited','[REDACTE','setModel','TOOLS.md','mpleted','T.md','limit','Fallback','default','tory','uested','stringif','ompleted','done','length','pted\x20by\x20','start','session-','ing,\x20ple','skills','Settings','agents-r','er-secre','pid','cron.add','markConf','aborted','text/pla','requeste','delete\x20c','agents\x20l','eam-even','keys','requestI','log','ting:\x20','-questio','equested','--allow-','answer','stack','\x20gateway','eam\x20requ','er\x20stop\x20','size','key','deny','ents\x20syn','HEARTBEA','ensureIn','metadata','kdown','starting','jobId\x20is','quired','task','127.0.0.','stopped','314aTtAff','achments','Timer','image/pn','chat\x20abo','andledIn','\x20allocat','stall\x20co','configur','onfigPat','0.1.0','\x20waiting','led','tewaySet','text/csv','random','max','token','exited\x20u','renamed','ate','request','t\x20discon','odels','connecte','ist\x20requ','startedA','ask-user','desktop','pinnedKe','ested','180288KMxnsf','clear','ion/pdf','catch','TED]\x20--p','quested','set','writeHea','image/jp','info','not\x20foun','parse','image/we','ing','ills\x20syn','main','manual\x20r','3444603QvOqGr','c\x20failed','SIGTERM','restart\x20','27.0.0.1','--token','sessions','running','agents.l','red','healthy','paths','workspac','message','ist','filePath','7457OVXSgk','model','ame','controll','eviceIde','figChang','toLowerC','tateDir','\x20write\x20r','delete','.delete','settings','chat\x20run','toISOStr','fileName','headers','ync\x20fail','exited\x20c','get','nt\x20too\x20l','ey\x20is\x20re','sage','agents.u','\x20require','anscript','file','hell:gat','ck\x20disab','/ask-use','trimEnd','deleteTr','off','values','led:\x20','installP','e\x20update','process\x20','10510328wlGAYJ','gateway-','7561323RWqMVN','setSelfO','nt\x20recei','agents-u','skills.d','null','nChange','Version','finally','chat\x20str','defaultI','skills.u','date\x20req','toString','backend','gateway\x20','oot','.md','toUpperC','ase\x20retr','split','c\x20comple','listen','nstall','delta','t-stream','port','json','itialCon','skill\x20de','fig','error','create\x20r','label'];_0x5bd1=function(){return _0x1dba3b;};return _0x5bd1();}function sanitizeSharedContextPayload(_0x503dad){const _0x203078=_0x51c199,_0x518ec3=asRecord(_0x503dad),_0x1f15ac={};for(const _0x311164 of SHARED_CONTEXT_FILES){if(typeof _0x518ec3[_0x311164]===_0x203078(0x1df))_0x1f15ac[_0x311164]=_0x518ec3[_0x311164];}return _0x1f15ac;}async function readSharedContext(_0x50495c){const _0x45e09c=_0x51c199,_0xb23626={};for(const _0x49ca39 of SHARED_CONTEXT_FILES){try{_0xb23626[_0x49ca39]=await readFile(join(_0x50495c,_0x49ca39),_0x45e09c(0x2ec));}catch{_0xb23626[_0x49ca39]='';}}return _0xb23626;}async function writeSharedContext(_0x288aed,_0x2521d2){const _0x2bc70e=_0x51c199,_0x24846d=sanitizeSharedContextPayload(_0x2521d2);await mkdir(_0x288aed,{'recursive':!![]});for(const [_0x46b50b,_0x44d12b]of Object['entries'](_0x24846d)){await writeFile(join(_0x288aed,_0x46b50b),_0x44d12b,_0x2bc70e(0x2ec));}return{'ok':!![],'files':Object[_0x2bc70e(0x249)](_0x24846d)};}function createAskUserQuestionServer({configController:_0xcaa5be,emit:_0x570954}){const _0x1acf81=new Map();let _0x95a65=null,_0x5b1e24='',_0x3e2b87='';async function _0x3c337c(){const _0x26348f=_0x48c4;if(_0x95a65)return{'callbackUrl':_0x5b1e24,'secret':_0x3e2b87};_0x3e2b87=randomUUID();const _0x7d23d8=await _0x18eb35({'port':portNumbers(0x332c,0x338f)});return _0x5b1e24='http://1'+_0x26348f(0x297)+':'+_0x7d23d8+(_0x26348f(0x2bf)+_0x26348f(0x34c)+'on'),_0x95a65=createServer(async(_0x90bf,_0x3442e0)=>{const _0x50c1f0=_0x26348f;if(_0x90bf[_0x50c1f0(0x303)]!=='POST'||_0x90bf['url']!=='/ask-use'+_0x50c1f0(0x34c)+'on'){_0x3442e0['writeHea'+'d'](0x194),_0x3442e0[_0x50c1f0(0x322)](_0x50c1f0(0x28c)+'d');return;}if(_0x90bf[_0x50c1f0(0x2b2)][_0x50c1f0(0x2fe)+_0x50c1f0(0x23f)+'t']!==_0x3e2b87){_0x3442e0[_0x50c1f0(0x289)+'d'](0x191),_0x3442e0['end'](_0x50c1f0(0x1f2)+'ized');return;}let _0x5da8cf='';_0x90bf['on'](_0x50c1f0(0x221),_0x2d4760=>{const _0xb67824=_0x50c1f0;_0x5da8cf+=_0x2d4760[_0xb67824(0x2d7)]();if(_0x5da8cf[_0xb67824(0x237)]>0x400*0x400)_0x90bf[_0xb67824(0x306)]();}),_0x90bf['on'](_0x50c1f0(0x322),()=>{const _0x362c4b=_0x50c1f0;let _0x1f056f={};try{_0x1f056f=JSON[_0x362c4b(0x28d)](_0x5da8cf||'{}');}catch{_0x3442e0[_0x362c4b(0x289)+'d'](0x190),_0x3442e0[_0x362c4b(0x322)]('invalid\x20'+_0x362c4b(0x2e5));return;}const _0x4b0a6c=randomUUID(),_0x159409=setTimeout(()=>{const _0xe51629=_0x362c4b;if(!_0x1acf81[_0xe51629(0x1e9)](_0x4b0a6c))return;_0x1acf81[_0xe51629(0x2ac)](_0x4b0a6c),_0x3442e0[_0xe51629(0x289)+'d'](0xc8,{'content-type':_0xe51629(0x1f6)+_0xe51629(0x1e8)}),_0x3442e0[_0xe51629(0x322)](JSON[_0xe51629(0x234)+'y']({'behavior':'deny'}));},0x1d4c0);_0x1acf81[_0x362c4b(0x288)](_0x4b0a6c,{'res':_0x3442e0,'timeout':_0x159409}),_0x570954('ask-user'+'-questio'+'n',{'requestId':_0x4b0a6c,...asRecord(_0x1f056f)});});}),await new Promise((_0xb23296,_0x18c780)=>{const _0x3aeb74=_0x26348f;_0x95a65[_0x3aeb74(0x1ea)](_0x3aeb74(0x2e9),_0x18c780),_0x95a65[_0x3aeb74(0x2e0)](_0x7d23d8,_0x3aeb74(0x261)+'1',()=>{const _0x596bf4=_0x3aeb74;_0x95a65[_0x596bf4(0x2c2)](_0x596bf4(0x2e9),_0x18c780),_0xb23296();});}),await _0xcaa5be['ensureAs'+'kUserQue'+'stionPlu'+_0x26348f(0x212)+'g']({'callbackUrl':_0x5b1e24,'secret':_0x3e2b87}),{'callbackUrl':_0x5b1e24,'secret':_0x3e2b87};}function _0x51ef48(_0x40a58e={}){const _0x1d7168=_0x48c4,_0x3aef67=getTrimmedString(_0x40a58e[_0x1d7168(0x24a)+'d']);if(!_0x3aef67||!_0x1acf81[_0x1d7168(0x1e9)](_0x3aef67))throw new Error(_0x1d7168(0x27e)+_0x1d7168(0x24d)+_0x1d7168(0x323)+'t\x20not\x20fo'+'und');const _0xd8c222=_0x1acf81[_0x1d7168(0x2b5)](_0x3aef67);return _0x1acf81[_0x1d7168(0x2ac)](_0x3aef67),clearTimeout(_0xd8c222[_0x1d7168(0x209)]),_0xd8c222[_0x1d7168(0x1f4)]['writeHea'+'d'](0xc8,{'content-type':'applicat'+'ion/json'}),_0xd8c222['res'][_0x1d7168(0x322)](JSON[_0x1d7168(0x234)+'y']({'behavior':_0x40a58e[_0x1d7168(0x1e7)]==='deny'?_0x1d7168(0x257):_0x1d7168(0x32b),'answers':asRecord(_0x40a58e['answers'])})),{'ok':!![]};}async function _0x207d2e(){const _0x1cb009=_0x48c4;for(const [_0x367cae,_0x438732]of _0x1acf81){_0x1acf81['delete'](_0x367cae),clearTimeout(_0x438732[_0x1cb009(0x209)]),_0x438732[_0x1cb009(0x1f4)]['writeHea'+'d'](0xc8,{'content-type':_0x1cb009(0x1f6)+_0x1cb009(0x1e8)}),_0x438732[_0x1cb009(0x1f4)][_0x1cb009(0x322)](JSON[_0x1cb009(0x234)+'y']({'behavior':_0x1cb009(0x257)}));}if(!_0x95a65)return;await new Promise(_0x5736fa=>_0x95a65[_0x1cb009(0x31b)](_0x5736fa)),_0x95a65=null;}return{'start':_0x3c337c,'answer':_0x51ef48,'stop':_0x207d2e};}export function createGatewayController({shellConfig:_0x329154,configController:_0x58b4d4,appVersion:appVersion=_0x51c199(0x26d)}){const _0xfb077b=_0x51c199,_0x5ed898=new EventEmitter(),_0x38ef07=new ClawGatewayWsClient(),_0x33149a=[],_0x3b9dc7=new Map(),_0x5dff0a=new Map(),_0x4e3a7a=createShellLogger(_0x58b4d4['paths'],_0xfb077b(0x326)),_0x4b0dab=createShellLogger(_0x58b4d4[_0xfb077b(0x29e)],_0xfb077b(0x1f8)),_0x8c119e=createShellLogger(_0x58b4d4[_0xfb077b(0x29e)],_0xfb077b(0x299)),_0x2039d2=createShellLogger(_0x58b4d4[_0xfb077b(0x29e)],'capabili'+_0xfb077b(0x1f7)),_0x22197e=createAskUserQuestionServer({'configController':_0x58b4d4,'emit':(_0x1304b6,_0x2767f5)=>_0x5ed898['emit'](_0x1304b6,_0x2767f5)});let _0x46e744=createInitialStatus(),_0x5379a3=null,_0x82e73e=null,_0x5462e5=null,_0x8223a2=![],_0xaed185=![],_0x1f0f7e=Promise['resolve'](),_0x30c334=null,_0x36149e=0x0;function _0xe8a129(_0x4f4e69,_0x45cc27){const _0x1190bd=_0xfb077b;_0x5ed898[_0x1190bd(0x1f0)](_0x4f4e69,_0x45cc27);}function _0x3a008e(_0x50c338,_0x4ef6e4){return _0x5ed898['on'](_0x50c338,_0x4ef6e4),()=>_0x5ed898['off'](_0x50c338,_0x4ef6e4);}function _0x10e84f(_0x2e9a48){const _0x198688=_0xfb077b;_0x46e744={..._0x46e744,..._0x2e9a48,'updatedAt':nowIso()},_0xe8a129('gateway-'+_0x198688(0x1de),_0x46e744);}function _0xad5f1(_0x591989,_0x3dde86,_0x1b2c8b={}){const _0x89087c=_0xfb077b;_0x10e84f({'lifecycle':_0x591989,'message':_0x3dde86,..._0x1b2c8b}),_0x3b5385(_0x89087c(0x32e),_0x591989[_0x89087c(0x2dc)+_0x89087c(0x33f)]()+'\x20'+_0x3dde86),_0x4e3a7a?.[_0x89087c(0x28b)]('gateway\x20'+'lifecycl'+_0x89087c(0x2c6)+'d',{'lifecycle':_0x591989,'message':_0x3dde86,'status':{'health':_0x46e744[_0x89087c(0x2f8)],'port':_0x46e744['port'],'tokenPresent':_0x46e744[_0x89087c(0x205)+_0x89087c(0x223)]},...summarizePayload(_0x1b2c8b)});}function _0x3b5385(_0x4745e7,_0x240e91){const _0x2b7a02=_0xfb077b,_0x2c05a2=String(_0x240e91??'')[_0x2b7a02(0x2c0)]();if(!_0x2c05a2)return;const _0x569b25={'source':_0x4745e7,'text':_0x2c05a2,'timestamp':nowIso()};_0x33149a['push'](_0x569b25);if(_0x33149a[_0x2b7a02(0x237)]>LOG_LIMIT)_0x33149a[_0x2b7a02(0x222)](0x0,_0x33149a[_0x2b7a02(0x237)]-LOG_LIMIT);_0xe8a129('gateway-'+_0x2b7a02(0x24b),_0x569b25),_0x4e3a7a?.[_0x2b7a02(0x28b)](_0x2b7a02(0x2d9)+_0x2b7a02(0x24b),{'source':_0x4745e7,'text':_0x2c05a2});}function _0x14aa06(_0x594f9e=0xc8){const _0x1cf6d8=_0xfb077b;return _0x33149a['slice'](-Math[_0x1cf6d8(0x273)](0x1,Math['floor'](_0x594f9e)));}function _0x185aa5(){const _0x5ab4da=_0xfb077b;if(!_0x5379a3||_0x46e744[_0x5ab4da(0x1dd)+'e']!==_0x5ab4da(0x29a))throw new Error(_0x5ab4da(0x2d9)+_0x5ab4da(0x330)+_0x5ab4da(0x23b)+_0x5ab4da(0x2dd)+_0x5ab4da(0x1fe)+'y');}function _0x4f4b5b(){const _0xefcd3a=_0xfb077b;return Boolean(_0x5379a3&&_0x46e744['lifecycl'+'e']===_0xefcd3a(0x29a));}function _0x5163f1(_0x828c5){const _0x4c348a=_0xfb077b;_0xe8a129('chat-str'+_0x4c348a(0x248)+'t',_0x828c5);}function _0x546c02(_0x4f589c){const _0x473d50=_0xfb077b,_0x49de0b=_0x3b9dc7[_0x473d50(0x2b5)](_0x4f589c);if(!_0x49de0b)return null;_0x3b9dc7[_0x473d50(0x2ac)](_0x4f589c);if(_0x49de0b[_0x473d50(0x30d)+_0x473d50(0x230)+_0x473d50(0x265)])clearTimeout(_0x49de0b[_0x473d50(0x30d)+_0x473d50(0x230)+_0x473d50(0x265)]);return _0x5dff0a[_0x473d50(0x2ac)](_0x49de0b[_0x473d50(0x1ed)+'ey']),_0x49de0b;}function _0x5be51f(_0x5c3bbe,_0x4ea84f,_0x33ce7d=''){const _0x1cde94=_0xfb077b,_0x2100ce=_0x546c02(_0x5c3bbe[_0x1cde94(0x30b)]);if(!_0x2100ce)return;_0x4b0dab?.[_0x1cde94(0x28b)](_0x1cde94(0x2af)+'\x20settled',{'requestId':_0x2100ce['requestI'+'d'],'runId':_0x2100ce[_0x1cde94(0x30b)],'sessionKey':_0x2100ce[_0x1cde94(0x1ed)+'ey'],'outcome':_0x4ea84f,'durationMs':Date[_0x1cde94(0x1eb)]()-_0x2100ce[_0x1cde94(0x27d)+'t'],'textLength':_0x2100ce[_0x1cde94(0x225)+'th'],..._0x33ce7d?{'message':_0x33ce7d}:{}}),_0x5163f1({'requestId':_0x2100ce[_0x1cde94(0x24a)+'d'],'sessionKey':_0x2100ce[_0x1cde94(0x1ed)+'ey'],'type':_0x4ea84f,..._0x33ce7d?{'message':_0x33ce7d}:{}});}function _0x11d05b(_0x50695b){const _0x35972f=_0xfb077b;let _0xeeff2b=null;for(const _0x802a27 of _0x3b9dc7[_0x35972f(0x2c3)]()){if(_0x802a27['sessionK'+'ey']===_0x50695b)_0xeeff2b=_0x802a27;}return _0xeeff2b;}function _0x1693f5(_0x4c0626){const _0x513827=_0xfb077b;if(!_0x4c0626)return null;for(const _0x3a08bf of _0x3b9dc7['values']()){if(_0x3a08bf[_0x513827(0x24a)+'d']===_0x4c0626)return _0x3a08bf;}return null;}function _0x85f678(_0x5e8ae0,_0x570e1b){const _0x2ee97c=_0xfb077b;if(_0x570e1b[_0x2ee97c(0x237)]<=_0x5e8ae0['textLeng'+'th'])return;const _0x5d54d8=_0x570e1b[_0x2ee97c(0x203)](_0x5e8ae0['textLeng'+'th']);_0x5e8ae0['textLeng'+'th']=_0x570e1b[_0x2ee97c(0x237)],_0x5d54d8&&_0x5163f1({'requestId':_0x5e8ae0[_0x2ee97c(0x24a)+'d'],'sessionKey':_0x5e8ae0[_0x2ee97c(0x1ed)+'ey'],'type':_0x2ee97c(0x2e2),'delta':_0x5d54d8});}function _0x97f52c(_0x553437,_0x1cda97,_0x24865d=''){const _0x466d51=_0xfb077b;if(_0x553437[_0x466d51(0x30d)+_0x466d51(0x230)+'Timer'])clearTimeout(_0x553437[_0x466d51(0x30d)+_0x466d51(0x230)+_0x466d51(0x265)]);_0x553437[_0x466d51(0x30d)+'Fallback'+_0x466d51(0x265)]=setTimeout(()=>{const _0x447a7c=_0x466d51,_0x5d8169=_0x3b9dc7['get'](_0x553437['runId']);if(!_0x5d8169)return;_0x5be51f(_0x5d8169,_0x1cda97===_0x447a7c(0x2e9)?_0x447a7c(0x2e9):_0x447a7c(0x236),_0x24865d);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x30e51a(_0x46a0b8){const _0x53070e=_0xfb077b;for(const _0x48b82b of _0x3b9dc7[_0x53070e(0x2c3)]()){_0x4b0dab?.['warn'](_0x53070e(0x2af)+_0x53070e(0x2fa)+_0x53070e(0x219)+'ay\x20state',{'requestId':_0x48b82b[_0x53070e(0x24a)+'d'],'runId':_0x48b82b[_0x53070e(0x30b)],'sessionKey':_0x48b82b['sessionK'+'ey'],'durationMs':Date['now']()-_0x48b82b[_0x53070e(0x27d)+'t'],'reason':_0x46a0b8}),_0x5163f1({'requestId':_0x48b82b['requestI'+'d'],'sessionKey':_0x48b82b[_0x53070e(0x1ed)+'ey'],'type':_0x53070e(0x2e9),'message':_0x46a0b8});if(_0x48b82b[_0x53070e(0x30d)+'Fallback'+'Timer'])clearTimeout(_0x48b82b[_0x53070e(0x30d)+_0x53070e(0x230)+_0x53070e(0x265)]);}_0x3b9dc7[_0x53070e(0x283)](),_0x5dff0a[_0x53070e(0x283)]();}function _0x4c2ac2(_0x3898ce){const _0x2babb4=_0xfb077b,_0x405886=getTrimmedString(_0x3898ce[_0x2babb4(0x30b)]),_0x53e705=getTrimmedString(_0x3898ce['state'])||_0x2babb4(0x33a),_0xf6210=getTrimmedString(_0x3898ce['sessionK'+'ey']),_0x2a2298=(_0x405886?_0x3b9dc7[_0x2babb4(0x2b5)](_0x405886):null)??(_0xf6210?_0x11d05b(_0xf6210):null);if(_0x405886&&_0xf6210)_0x5dff0a[_0x2babb4(0x288)](_0xf6210,_0x405886);if(_0xf6210)_0xe8a129('session-'+'updated',{'sessionKey':_0xf6210,'state':_0x53e705});_0x4b0dab?.[_0x2babb4(0x28b)](_0x2babb4(0x2d9)+'chat\x20eve'+_0x2babb4(0x2cc)+_0x2babb4(0x1f3),{'runId':_0x405886,'sessionKey':_0xf6210,'state':_0x53e705,'hasActiveRun':Boolean(_0x2a2298),'messageText':summarizeText(extractGatewayChatText(_0x3898ce['message']),0x78),'errorMessage':getTrimmedString(_0x3898ce[_0x2babb4(0x20a)+_0x2babb4(0x2b8)])});_0x2a2298&&(_0x53e705===_0x2babb4(0x1e6)||_0x53e705==='aborted'||_0x53e705===_0x2babb4(0x2e9))&&_0x97f52c(_0x2a2298,_0x53e705,typeof _0x3898ce[_0x2babb4(0x20a)+_0x2babb4(0x2b8)]===_0x2babb4(0x1df)?_0x3898ce[_0x2babb4(0x20a)+'sage']:_0x2babb4(0x2d9)+_0x2babb4(0x304)+_0x2babb4(0x26f));if(!_0x2a2298)return;if(_0xf6210&&_0xf6210!==_0x2a2298[_0x2babb4(0x1ed)+'ey'])return;if(_0x53e705==='delta'){_0x85f678(_0x2a2298,extractGatewayChatText(_0x3898ce[_0x2babb4(0x2a0)]));return;}if(_0x53e705==='final'||_0x53e705===_0x2babb4(0x243)){_0x85f678(_0x2a2298,extractGatewayChatText(_0x3898ce[_0x2babb4(0x2a0)])),_0x5be51f(_0x2a2298,'done');return;}_0x53e705===_0x2babb4(0x2e9)&&_0x5be51f(_0x2a2298,_0x2babb4(0x2e9),typeof _0x3898ce[_0x2babb4(0x20a)+_0x2babb4(0x2b8)]===_0x2babb4(0x1df)?_0x3898ce['errorMes'+_0x2babb4(0x2b8)]:'gateway\x20'+'chat\x20fai'+_0x2babb4(0x26f));}async function _0x4b2d0e(_0x5a93a8,_0x4de1ba){const _0x59cddc=_0xfb077b;_0x38ef07[_0x59cddc(0x26b)+'e']({'url':buildGatewayWsUrl(_0x4de1ba),'token':_0x5a93a8,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x329154[_0x59cddc(0x31c)+_0x59cddc(0x2a5)],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x58b4d4['resolveD'+_0x59cddc(0x2a7)+'ntityPat'+'h'](),'onChatEvent':_0x4c2ac2,'onAgentEvent':_0x1ff91d=>_0xe8a129(_0x59cddc(0x216)+'ent',_0x1ff91d),'onConnected':async()=>{const _0x548f21=_0x59cddc;if(!_0x5379a3||!_0x5462e5||!_0x82e73e)return;_0x4e3a7a?.['info'](_0x548f21(0x2d9)+_0x548f21(0x341)+_0x548f21(0x335)+_0x548f21(0x34a),{'port':_0x5462e5,'pid':_0x5379a3[_0x548f21(0x240)],'readyMs':_0x36149e?Date[_0x548f21(0x1eb)]()-_0x36149e:undefined}),_0xad5f1(_0x548f21(0x29a),'gateway\x20'+_0x548f21(0x27b)+'d',{'health':_0x548f21(0x29d),'port':_0x5462e5,'tokenPresent':!![]});try{await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x329154[_0x548f21(0x21e)+_0x548f21(0x2da)]))['runtimeR'+_0x548f21(0x2da)],_0x548f21(0x226),_0x548f21(0x1fd)),'stateDir':_0x58b4d4[_0x548f21(0x2fd)+_0x548f21(0x2aa)](),'listAgents':_0x46e302,'createAgent':_0x1f38e2=>_0x38ef07[_0x548f21(0x278)](_0x548f21(0x2f5)+'reate',_0x1f38e2),'updateAgent':_0x520277=>_0x38ef07['request'](_0x548f21(0x2b9)+'pdate',_0x520277),'syncSkills':async({agentIds:_0x297f69,mainWorkspace:_0x51da48})=>{const _0xf8c1af=_0x548f21;_0x2039d2?.['info']('bundled\x20'+'agent\x20sk'+'ills\x20syn'+'c\x20starte'+'d',{'agentIds':_0x297f69,'mainWorkspace':toHomePath(_0x51da48)});const _0x3a2b67=dirname(_0x51da48),_0x248fd8=await syncBundledAgentSkillsToConfig({'agentIds':_0x297f69,'resolveSkillsDir':_0x11b229=>_0x11b229===_0xf8c1af(0x291)?join(_0x51da48,_0xf8c1af(0x23c)):join(_0x3a2b67,_0xf8c1af(0x29f)+'e-'+_0x11b229,'skills'),'readConfig':()=>_0x58b4d4[_0xf8c1af(0x328)+'ig'](),'writeConfig':_0xcc9df9=>_0x58b4d4[_0xf8c1af(0x333)+_0xf8c1af(0x2e8)](_0xcc9df9),'markConfigWriteHandledInternally':()=>_0x58b4d4[_0xf8c1af(0x242)+_0xf8c1af(0x307)+_0xf8c1af(0x268)+'ternally']()});_0x30c334=_0x248fd8['discover'+'y'],_0x2039d2?.['info'](_0xf8c1af(0x329)+'agent\x20sk'+_0xf8c1af(0x290)+_0xf8c1af(0x2df)+_0xf8c1af(0x34a),{'agentCount':_0x297f69[_0xf8c1af(0x237)],'changed':_0x248fd8['changed'],'discovery':summarizePayload(_0x248fd8[_0xf8c1af(0x336)+'y'],{'maxDepth':0x3})});}}),_0x2039d2?.[_0x548f21(0x28b)](_0x548f21(0x329)+_0x548f21(0x30f)+'nsured'),_0xe8a129(_0x548f21(0x2cd)+_0x548f21(0x319),{'reason':_0x548f21(0x2f2)+_0x548f21(0x23e)+_0x548f21(0x2ee)});}catch(_0x3b153c){const _0x22e052=_0x3b153c instanceof Error?_0x3b153c[_0x548f21(0x251)]||_0x3b153c[_0x548f21(0x2a0)]:String(_0x3b153c);_0x3b5385(_0x548f21(0x32e),'bundled\x20'+_0x548f21(0x344)+_0x548f21(0x2b3)+_0x548f21(0x34b)+_0x22e052),_0x2039d2?.[_0x548f21(0x2e9)](_0x548f21(0x329)+_0x548f21(0x344)+_0x548f21(0x2b3)+'ed',{'error':summarizeError(_0x3b153c)}),console[_0x548f21(0x2e9)](_0x548f21(0x340)+_0x548f21(0x2bd)+_0x548f21(0x337)+_0x548f21(0x1e1)+_0x548f21(0x258)+_0x548f21(0x294),_0x3b153c);}},'onDisconnected':_0x50a38a=>{const _0x26a7f2=_0x59cddc;_0x4e3a7a?.[_0x26a7f2(0x33b)](_0x26a7f2(0x2d9)+_0x26a7f2(0x341)+_0x26a7f2(0x279)+_0x26a7f2(0x217),{'reason':_0x50a38a}),_0x30e51a(_0x50a38a);if(_0xaed185||!_0x5379a3)return;_0x10e84f({'health':_0x26a7f2(0x1ee),'message':'gateway\x20'+'reconnec'+_0x26a7f2(0x24c)+_0x50a38a});}});}async function _0x4a6941(_0x16f1be,_0x34079d){const _0x3c49dc=_0xfb077b;if(_0x5379a3)return;_0x36149e=Date[_0x3c49dc(0x1eb)](),_0xad5f1(_0x3c49dc(0x25d),_0x3c49dc(0x2d9)+'starting',{'health':_0x3c49dc(0x1ee),'port':_0x34079d,'tokenPresent':!![]});const _0x5db5a1=[_0x3c49dc(0x326),_0x3c49dc(0x342),_0x3c49dc(0x24f)+_0x3c49dc(0x2f9)+_0x3c49dc(0x1ef),_0x3c49dc(0x298),_0x16f1be,'--port',String(_0x34079d)];_0x3b5385(_0x3c49dc(0x32e),_0x3c49dc(0x226)+_0x3c49dc(0x252)+'\x20run\x20--a'+_0x3c49dc(0x348)+'onfigure'+_0x3c49dc(0x1ff)+'n\x20[REDAC'+_0x3c49dc(0x286)+_0x3c49dc(0x2f7)+_0x34079d),_0x4e3a7a?.[_0x3c49dc(0x28b)](_0x3c49dc(0x2d9)+_0x3c49dc(0x2c7)+_0x3c49dc(0x31e)+_0x3c49dc(0x287),{'args':[_0x3c49dc(0x326),_0x3c49dc(0x342),_0x3c49dc(0x24f)+'unconfig'+_0x3c49dc(0x1ef),_0x3c49dc(0x298),_0x3c49dc(0x22a)+'D]','--port',String(_0x34079d)],'env':{'OPENCLAW_STATE_DIR':toHomePath(_0x58b4d4[_0x3c49dc(0x2fd)+'tateDir']()),'OPENCLAW_CONFIG_PATH':toHomePath(_0x58b4d4[_0x3c49dc(0x210)+_0x3c49dc(0x26c)+'h']())}}),_0x5379a3=await spawnClaw(_0x329154[_0x3c49dc(0x21e)+_0x3c49dc(0x2da)],_0x5db5a1,{'env':{'OPENCLAW_STATE_DIR':_0x58b4d4[_0x3c49dc(0x2fd)+_0x3c49dc(0x2aa)](),'OPENCLAW_CONFIG_PATH':_0x58b4d4[_0x3c49dc(0x210)+_0x3c49dc(0x26c)+'h']()}}),_0x82e73e=_0x16f1be,_0x5462e5=_0x34079d,_0x4e3a7a?.[_0x3c49dc(0x28b)](_0x3c49dc(0x2d9)+_0x3c49dc(0x2c7)+'started',{'pid':_0x5379a3[_0x3c49dc(0x240)],'port':_0x5462e5}),_0x10e84f({'health':_0x3c49dc(0x1ee),'port':_0x5462e5,'tokenPresent':!![],'message':_0x3c49dc(0x2d9)+_0x3c49dc(0x2c7)+_0x3c49dc(0x20d)+_0x3c49dc(0x26e)+'\x20for\x20WS'}),await _0x4b2d0e(_0x16f1be,_0x34079d);const _0x45dc86=createLineBuffer({'trim':!![],'onLine':_0x80ef1b=>_0x3b5385('stdout',_0x80ef1b)}),_0x16b02b=createLineBuffer({'trim':!![],'onLine':_0xa2db98=>_0x3b5385(_0x3c49dc(0x211),_0xa2db98)});_0x5379a3[_0x3c49dc(0x313)]['on'](_0x3c49dc(0x221),_0x13f0f9=>{const _0x58236d=_0x3c49dc;_0x45dc86[_0x58236d(0x324)](_0x13f0f9[_0x58236d(0x2d7)]());}),_0x5379a3[_0x3c49dc(0x211)]['on']('data',_0x3fa00a=>{const _0x3501a9=_0x3c49dc;_0x16b02b[_0x3501a9(0x324)](_0x3fa00a['toString']());}),_0x5379a3['on'](_0x3c49dc(0x2e9),_0x269c61=>{const _0xc5fd28=_0x3c49dc;_0x4e3a7a?.[_0xc5fd28(0x2e9)]('gateway\x20'+_0xc5fd28(0x2c7)+'error',{'error':summarizeError(_0x269c61)}),_0x3b5385(_0xc5fd28(0x211),_0x269c61 instanceof Error?_0x269c61[_0xc5fd28(0x251)]||_0x269c61['message']:String(_0x269c61));}),_0x5379a3['on'](_0x3c49dc(0x31b),(_0x4b0ee6,_0xbeb1f1)=>{const _0x52aea5=_0x3c49dc;_0x45dc86['flush'](),_0x16b02b['flush'](),_0x4e3a7a?.['warn']('gateway\x20'+_0x52aea5(0x2c7)+_0x52aea5(0x215),{'pid':_0x5379a3?.[_0x52aea5(0x240)]??null,'code':_0x4b0ee6,'signal':_0xbeb1f1,'uptimeMs':_0x36149e?Date[_0x52aea5(0x1eb)]()-_0x36149e:undefined}),_0x3b5385(_0x52aea5(0x32e),'gateway\x20'+_0x52aea5(0x2b4)+_0x52aea5(0x208)+(_0x4b0ee6??_0x52aea5(0x2cf))+'\x20signal='+(_0xbeb1f1??_0x52aea5(0x2cf))),_0x5379a3=null,_0x82e73e=null,_0x5462e5=null,_0x38ef07[_0x52aea5(0x26b)+'e'](null),_0x30e51a(_0x52aea5(0x2d9)+_0x52aea5(0x2c7)+_0x52aea5(0x229));if(_0xaed185){_0xad5f1(_0x52aea5(0x262),_0x52aea5(0x2d9)+_0x52aea5(0x262),{'health':_0x52aea5(0x1ee),'port':null,'tokenPresent':![]});return;}_0xad5f1(_0x52aea5(0x2e9),_0x52aea5(0x2d9)+_0x52aea5(0x275)+_0x52aea5(0x314)+_0x52aea5(0x1e2),{'health':_0x52aea5(0x31d)+'y','port':null,'tokenPresent':![]});});}async function _0x375ad0(){const _0x4e7d1f=_0xfb077b;if(_0x5379a3)return;_0xaed185=![],_0x4e3a7a?.[_0x4e7d1f(0x28b)](_0x4e7d1f(0x2d9)+'controll'+'er\x20start'+_0x4e7d1f(0x2ef)+'ed'),await _0x22197e[_0x4e7d1f(0x239)]()[_0x4e7d1f(0x285)](_0x453fd6=>{const _0x548774=_0x4e7d1f;_0x3b5385(_0x548774(0x32e),_0x548774(0x27e)+_0x548774(0x24d)+_0x548774(0x305)+_0x548774(0x2be)+_0x548774(0x2c4)+(_0x453fd6 instanceof Error?_0x453fd6[_0x548774(0x2a0)]:String(_0x453fd6)));}),await _0x58b4d4[_0x4e7d1f(0x25a)+_0x4e7d1f(0x2e6)+_0x4e7d1f(0x2e8)](),await ensureOpenClawDoctorFixed(_0x329154,{'runtimeLogger':_0x4e3a7a}),_0x58b4d4['watchCon'+_0x4e7d1f(0x2a8)+'es'](),_0x58b4d4[_0x4e7d1f(0x20f)+'ayRestar'+'tHandler'](_0x41a404=>{void _0x2f6e01(_0x41a404);});const _0x3b6421=await _0x58b4d4['ensureGa'+_0x4e7d1f(0x270)+'tings']();_0x4e3a7a?.['info'](_0x4e7d1f(0x2d9)+_0x4e7d1f(0x2ae)+_0x4e7d1f(0x269)+'ed',{'port':_0x3b6421[_0x4e7d1f(0x2e4)],'tokenPresent':Boolean(_0x3b6421[_0x4e7d1f(0x274)])}),await _0x4a6941(_0x3b6421[_0x4e7d1f(0x274)],_0x3b6421[_0x4e7d1f(0x2e4)]);}async function _0xe443a8(){const _0x497a55=_0xfb077b;_0xaed185=!![],_0x4e3a7a?.[_0x497a55(0x28b)](_0x497a55(0x2d9)+_0x497a55(0x2a6)+_0x497a55(0x254)+_0x497a55(0x245)+'d',{'pid':_0x5379a3?.['pid']??null,'port':_0x5462e5}),_0x38ef07[_0x497a55(0x26b)+'e'](null);if(_0x5379a3){const _0x27a527=_0x5379a3;_0x5379a3=null;try{_0x27a527[_0x497a55(0x1e4)](_0x497a55(0x295));}catch{}await new Promise(_0x2186a5=>setTimeout(_0x2186a5,0x1f4));if(!_0x27a527['killed'])try{_0x27a527['kill']('SIGKILL');}catch{}}_0x82e73e=null,_0x5462e5=null,_0x30e51a(_0x497a55(0x2d9)+_0x497a55(0x262)),await _0x22197e[_0x497a55(0x1fb)](),_0x58b4d4['dispose'](),_0xad5f1(_0x497a55(0x262),_0x497a55(0x2d9)+_0x497a55(0x262),{'health':_0x497a55(0x1ee),'port':null,'tokenPresent':![]}),_0xaed185=![];}async function _0x2f6e01(_0x354fcd=_0xfb077b(0x292)+'estart'){const _0x2a3bc2=_0xfb077b;if(_0x8223a2)return{'ok':!![]};return _0x8223a2=!![],_0x4e3a7a?.[_0x2a3bc2(0x28b)]('gateway\x20'+_0x2a3bc2(0x296)+_0x2a3bc2(0x245)+'d',{'reason':_0x354fcd}),_0x1f0f7e=_0x1f0f7e[_0x2a3bc2(0x346)](async()=>{const _0x2d24db=_0x2a3bc2;_0xad5f1('restarti'+'ng',_0x2d24db(0x2d9)+_0x2d24db(0x1f9)+'ng:\x20'+_0x354fcd,{'health':_0x2d24db(0x1ee)}),await _0xe443a8(),await _0x375ad0();})[_0x2a3bc2(0x2d2)](()=>{_0x8223a2=![];}),await _0x1f0f7e,{'ok':!![]};}async function _0x50c7d6(){const _0x56245e=_0xfb077b,_0x2b8ae8=await loadRuntimeInfo(_0x329154[_0x56245e(0x21e)+_0x56245e(0x2da)]);return{'runtimeRoot':_0x2b8ae8['runtimeR'+_0x56245e(0x2da)],'openclawVersion':_0x2b8ae8[_0x56245e(0x226)+_0x56245e(0x2d1)],'openclawWorkingDir':_0x2b8ae8[_0x56245e(0x226)+'WorkingD'+'ir'],'openclawBin':_0x2b8ae8[_0x56245e(0x226)+_0x56245e(0x32d)],'plugins':_0x2b8ae8['plugins'][_0x56245e(0x20b)](_0x38e82d=>({'pluginId':_0x38e82d['pluginId'],'source':_0x38e82d['source'],'version':_0x38e82d['version'],'installPath':_0x38e82d[_0x56245e(0x2c5)+_0x56245e(0x325)]})),'configPath':_0x58b4d4['resolveC'+'onfigPat'+'h'](),'stateDir':_0x58b4d4[_0x56245e(0x2fd)+'tateDir'](),'bundledAgentSkillsDiscovery':_0x30c334};}async function _0x46e302(){const _0x7361dc=_0xfb077b;_0x2039d2?.[_0x7361dc(0x28b)](_0x7361dc(0x247)+_0x7361dc(0x27c)+'ested');const _0x544b2e=asRecord(await _0x38ef07[_0x7361dc(0x278)](_0x7361dc(0x29b)+_0x7361dc(0x2a1),{})),_0xf39d7=getTrimmedString(_0x544b2e[_0x7361dc(0x2d4)+'d'])||_0x7361dc(0x291),_0x5406f2=Array['isArray'](_0x544b2e[_0x7361dc(0x1fd)])?[..._0x544b2e[_0x7361dc(0x1fd)]]:[];return{..._0x544b2e,'defaultId':_0xf39d7,'agents':_0x5406f2};}async function _0x393c8a(){const _0x546af7=_0xfb077b;if(!_0x4f4b5b())return{'defaultId':'main','mainKey':'','scope':'','pending':!![],'agents':[{'id':_0x546af7(0x291),'name':_0x329154[_0x546af7(0x31c)+_0x546af7(0x2a5)],'workspace':join(_0x58b4d4[_0x546af7(0x2fd)+_0x546af7(0x2aa)](),_0x546af7(0x29f)+'e')}]};const _0x4a6911=await _0x46e302(),_0x266e79=getTrimmedString(_0x4a6911[_0x546af7(0x2d4)+'d'])||_0x546af7(0x291),_0x72aeb3=Array['isArray'](_0x4a6911[_0x546af7(0x1fd)])?[..._0x4a6911[_0x546af7(0x1fd)]]:[];return!_0x72aeb3[_0x546af7(0x334)](_0x856df6=>asRecord(_0x856df6)['id']==='main')&&_0x72aeb3[_0x546af7(0x327)]({'id':_0x546af7(0x291),'name':_0x329154[_0x546af7(0x31c)+_0x546af7(0x2a5)],'workspace':join(_0x58b4d4[_0x546af7(0x2fd)+'tateDir'](),'workspac'+'e')}),{..._0x4a6911,'defaultId':_0x266e79,'agents':_0x72aeb3};}async function _0x47bdf2(_0x5f16a8={}){const _0x50c8de=_0xfb077b;_0x185aa5();const _0x277f01=Date[_0x50c8de(0x1eb)]();_0x8c119e?.['info'](_0x50c8de(0x30c)+_0x50c8de(0x2ea)+_0x50c8de(0x24e),{'payload':summarizePayload(_0x5f16a8)});const _0x2b3fe9=await _0x38ef07[_0x50c8de(0x278)](_0x50c8de(0x299)+'.create',buildSessionCreateRequestPayload(_0x5f16a8)),_0x56cd83=parseSessionCreateResult(_0x2b3fe9);return _0x8c119e?.[_0x50c8de(0x28b)](_0x50c8de(0x30c)+_0x50c8de(0x302)+'ompleted',{'key':_0x56cd83['key'],'sessionId':_0x56cd83[_0x50c8de(0x202)+'d'],'durationMs':Date[_0x50c8de(0x1eb)]()-_0x277f01}),_0x56cd83;}async function _0x311a85(_0x2ee4ee={}){const _0x28b18a=_0xfb077b,_0x4b6a30=await readSessionMetadata(_0x58b4d4[_0x28b18a(0x2fd)+_0x28b18a(0x2aa)]());if(!_0x4f4b5b())return{'pending':!![],'sessions':[],'pinnedKeys':_0x4b6a30[_0x28b18a(0x280)+'ys']};const _0x1c66f4=Date['now'](),_0x3ec419=Math[_0x28b18a(0x273)](0x1,Math[_0x28b18a(0x338)](Number(_0x2ee4ee[_0x28b18a(0x22f)])||0x64)),_0x5ee104={'limit':_0x3ec419,'includeGlobal':!![],'includeUnknown':![]},_0x556b00=getTrimmedString(_0x2ee4ee[_0x28b18a(0x339)]??_0x28b18a(0x291));if(_0x556b00)_0x5ee104[_0x28b18a(0x339)]=_0x556b00;const _0xf6b069=applySessionMetadata(await _0x38ef07[_0x28b18a(0x278)]('sessions'+'.list',_0x5ee104),_0x4b6a30);return _0x8c119e?.['info']('sessions'+'\x20list\x20co'+'mpleted',{'payload':_0x5ee104,'count':Array[_0x28b18a(0x312)](_0xf6b069[_0x28b18a(0x299)])?_0xf6b069['sessions'][_0x28b18a(0x237)]:0x0,'durationMs':Date[_0x28b18a(0x1eb)]()-_0x1c66f4}),_0xf6b069;}async function _0x4f444b(_0x4624f6={}){const _0x4f5373=_0xfb077b;_0x185aa5();const _0x2b7577=getTrimmedString(_0x4624f6[_0x4f5373(0x1ed)+'ey']??_0x4624f6[_0x4f5373(0x256)]);if(!_0x2b7577)throw new Error('sessionK'+_0x4f5373(0x2b7)+_0x4f5373(0x25f));const _0x84dfa8=Date['now'](),_0x5875e9=await _0x38ef07[_0x4f5373(0x278)](_0x4f5373(0x299)+_0x4f5373(0x2ad),{'key':_0x2b7577,'deleteTranscript':_0x4624f6[_0x4f5373(0x2c1)+_0x4f5373(0x2bb)]!==![],'emitLifecycleHooks':!![]}),_0x5bb571=await readSessionMetadata(_0x58b4d4[_0x4f5373(0x2fd)+_0x4f5373(0x2aa)]());return delete _0x5bb571[_0x4f5373(0x2f4)][_0x2b7577],_0x5bb571[_0x4f5373(0x280)+'ys']=_0x5bb571['pinnedKe'+'ys'][_0x4f5373(0x1fa)](_0x3947e8=>_0x3947e8!==_0x2b7577),await writeSessionMetadata(_0x58b4d4[_0x4f5373(0x2fd)+_0x4f5373(0x2aa)](),_0x5bb571),_0xe8a129(_0x4f5373(0x23a)+'updated',{'type':_0x4f5373(0x21f),'sessionKey':_0x2b7577}),_0x8c119e?.[_0x4f5373(0x28b)](_0x4f5373(0x30c)+_0x4f5373(0x246)+_0x4f5373(0x235),{'sessionKey':_0x2b7577,'deleteTranscript':_0x4624f6[_0x4f5373(0x2c1)+_0x4f5373(0x2bb)]!==![],'durationMs':Date['now']()-_0x84dfa8}),_0x5875e9;}async function _0x44ce63(_0x4e269c={}){const _0x24607f=_0xfb077b,_0x15f1c1=getTrimmedString(_0x4e269c[_0x24607f(0x1ed)+'ey']??_0x4e269c['key']);if(!_0x15f1c1)throw new Error(_0x24607f(0x1ed)+_0x24607f(0x2b7)+_0x24607f(0x25f));const _0x43d7d5=getTrimmedString(_0x4e269c['name']??_0x4e269c[_0x24607f(0x2eb)]??_0x4e269c[_0x24607f(0x33d)]),_0x99c879=await readSessionMetadata(_0x58b4d4[_0x24607f(0x2fd)+_0x24607f(0x2aa)]());if(_0x43d7d5)_0x99c879[_0x24607f(0x2f4)][_0x15f1c1]=_0x43d7d5;else delete _0x99c879['names'][_0x15f1c1];return await writeSessionMetadata(_0x58b4d4[_0x24607f(0x2fd)+_0x24607f(0x2aa)](),_0x99c879),_0xe8a129(_0x24607f(0x23a)+_0x24607f(0x33a),{'type':_0x24607f(0x276),'sessionKey':_0x15f1c1,'name':_0x43d7d5}),_0x8c119e?.[_0x24607f(0x28b)](_0x24607f(0x30c)+'rename\x20c'+'ompleted',{'sessionKey':_0x15f1c1,'hasName':Boolean(_0x43d7d5),'name':_0x43d7d5?summarizeText(_0x43d7d5,0x50):undefined}),{'ok':!![]};}async function _0xf6b2c2(){const _0x32c613=_0xfb077b,_0x33ceb2=await readSessionMetadata(_0x58b4d4['resolveS'+_0x32c613(0x2aa)]());return _0x33ceb2[_0x32c613(0x280)+'ys'];}async function _0x548f07(_0x29234d=[]){const _0x3197ff=_0xfb077b,_0x2b1136=await readSessionMetadata(_0x58b4d4[_0x3197ff(0x2fd)+_0x3197ff(0x2aa)]());return _0x2b1136[_0x3197ff(0x280)+'ys']=Array['isArray'](_0x29234d)?[...new Set(_0x29234d[_0x3197ff(0x20b)](getTrimmedString)[_0x3197ff(0x1fa)](Boolean))]:[],await writeSessionMetadata(_0x58b4d4[_0x3197ff(0x2fd)+_0x3197ff(0x2aa)](),_0x2b1136),_0xe8a129(_0x3197ff(0x23a)+_0x3197ff(0x33a),{'type':_0x3197ff(0x2fc)+_0x3197ff(0x1e3)+_0x3197ff(0x34a),'pinnedKeys':_0x2b1136[_0x3197ff(0x280)+'ys']}),_0x8c119e?.[_0x3197ff(0x28b)](_0x3197ff(0x30c)+_0x3197ff(0x214)+_0x3197ff(0x2f1)+_0x3197ff(0x34a),{'count':_0x2b1136[_0x3197ff(0x280)+'ys']['length']}),{'ok':!![],'pinnedKeys':_0x2b1136[_0x3197ff(0x280)+'ys']};}async function _0x411e28(){const _0x220266=_0xfb077b,_0x20ae43=join(_0x58b4d4[_0x220266(0x2fd)+'tateDir'](),_0x220266(0x29f)+'e');return{'path':_0x20ae43,'exists':Boolean(await stat(_0x20ae43)[_0x220266(0x285)](()=>null))};}async function _0x452a88(){const _0x266622=_0xfb077b;return readSharedContext(join(_0x58b4d4[_0x266622(0x2fd)+_0x266622(0x2aa)](),'workspac'+'e'));}async function _0x31351d(_0x4eaa1b={}){const _0x496904=_0xfb077b;return _0x2039d2?.['info']('workspac'+'e\x20shared'+_0x496904(0x349)+_0x496904(0x2ab)+'equested',{'files':Object[_0x496904(0x249)](sanitizeSharedContextPayload(_0x4eaa1b))}),writeSharedContext(join(_0x58b4d4[_0x496904(0x2fd)+_0x496904(0x2aa)](),_0x496904(0x29f)+'e'),_0x4eaa1b);}async function _0x2d48d9(_0x238e43={}){const _0x20313f=_0xfb077b;return _0x185aa5(),await _0x38ef07[_0x20313f(0x278)]('cron.lis'+'t',_0x238e43);}async function _0x263eb8(_0x401be4={}){const _0x1c029f=_0xfb077b;return _0x185aa5(),await _0x38ef07['request'](_0x1c029f(0x241),_0x401be4);}async function _0x1d2310(_0x2c60ed={}){const _0x3cb00e=_0xfb077b;_0x185aa5();const _0x12523a=getTrimmedString(_0x2c60ed['jobId']??_0x2c60ed['id']);if(!_0x12523a)throw new Error(_0x3cb00e(0x25e)+_0x3cb00e(0x2ba)+'d');const _0x4ae8f0=asRecord(_0x2c60ed[_0x3cb00e(0x316)]),_0x605d09=Object['keys'](_0x4ae8f0)[_0x3cb00e(0x237)]>0x0?_0x4ae8f0:{..._0x2c60ed};return delete _0x605d09[_0x3cb00e(0x30e)],delete _0x605d09['id'],await _0x38ef07[_0x3cb00e(0x278)](_0x3cb00e(0x32a)+_0x3cb00e(0x277),{'jobId':_0x12523a,'patch':_0x605d09});}async function _0x47c394(_0x59540c={}){const _0x242c00=_0xfb077b;_0x185aa5();const _0x1f09f3=getTrimmedString(_0x59540c[_0x242c00(0x30e)]??_0x59540c['id']);if(!_0x1f09f3)throw new Error(_0x242c00(0x25e)+'\x20require'+'d');return await _0x38ef07['request'](_0x242c00(0x31a)+_0x242c00(0x21b),{'jobId':_0x1f09f3});}async function _0x4bdb2e(_0x2768af={}){const _0x42151e=_0xfb077b;_0x185aa5();const _0x3ead42=getTrimmedString(_0x2768af[_0x42151e(0x30e)]??_0x2768af['id']);if(!_0x3ead42)throw new Error(_0x42151e(0x25e)+_0x42151e(0x2ba)+'d');return await _0x38ef07[_0x42151e(0x278)](_0x42151e(0x201),{'jobId':_0x3ead42});}async function _0x461a15(_0x4768a4={}){const _0x5d931d=_0xfb077b;return _0x185aa5(),await _0x38ef07[_0x5d931d(0x278)]('cron.run'+'s',_0x4768a4);}async function _0x54cfe4(_0x37394c={}){const _0x32e170=_0xfb077b;_0x185aa5();const _0x9b45f3=Date[_0x32e170(0x1eb)]();_0x2039d2?.[_0x32e170(0x28b)]('skill\x20in'+_0x32e170(0x2f6)+'quested',{'payload':summarizePayload(_0x37394c)});try{const _0x4689f0=await _0x38ef07[_0x32e170(0x278)](_0x32e170(0x345)+_0x32e170(0x2e1),_0x37394c);return _0x2039d2?.[_0x32e170(0x28b)](_0x32e170(0x32c)+_0x32e170(0x26a)+_0x32e170(0x22d),{'durationMs':Date[_0x32e170(0x1eb)]()-_0x9b45f3,'result':summarizePayload(_0x4689f0,{'maxDepth':0x2})}),_0x4689f0;}catch(_0x3bedd9){_0x2039d2?.['error']('skill\x20in'+_0x32e170(0x207)+'iled',{'durationMs':Date[_0x32e170(0x1eb)]()-_0x9b45f3,'error':summarizeError(_0x3bedd9)});throw _0x3bedd9;}}async function _0x9f9827(_0x9c7158={}){const _0x1f9343=_0xfb077b;return _0x185aa5(),_0x2039d2?.[_0x1f9343(0x28b)](_0x1f9343(0x224)+_0x1f9343(0x2d6)+'uested',{'payload':summarizePayload(_0x9c7158)}),await _0x38ef07['request'](_0x1f9343(0x2d5)+'pdate',_0x9c7158);}async function _0x330ea5(_0x1dd793={}){const _0x4153d3=_0xfb077b;return _0x185aa5(),_0x2039d2?.[_0x4153d3(0x28b)](_0x4153d3(0x2e7)+_0x4153d3(0x310)+_0x4153d3(0x233),{'payload':summarizePayload(_0x1dd793)}),await _0x38ef07[_0x4153d3(0x278)](_0x4153d3(0x2ce)+'elete',_0x1dd793);}async function _0x203b97(_0xba7599={}){const _0x5b0a19=_0xfb077b;_0x185aa5();const _0xa81840=getTrimmedString(_0xba7599[_0x5b0a19(0x1ed)+'ey']),_0xa9765e=getTrimmedString(_0xba7599['message']),_0x11627b=getTrimmedString(_0xba7599[_0x5b0a19(0x24a)+'d'])||randomUUID();if(!_0xa81840)throw new Error(_0x5b0a19(0x1ed)+_0x5b0a19(0x2b7)+_0x5b0a19(0x25f));if(!_0xa9765e)throw new Error(_0x5b0a19(0x2f0)+_0x5b0a19(0x21c)+_0x5b0a19(0x29c));const _0x2ffb84=Date[_0x5b0a19(0x1eb)]();_0x4b0dab?.[_0x5b0a19(0x28b)](_0x5b0a19(0x2d3)+_0x5b0a19(0x253)+_0x5b0a19(0x281),{'requestId':_0x11627b,'sessionKey':_0xa81840,'message':summarizeText(_0xa9765e),'filePaths':summarizeFilePaths(_0xba7599['filePath'+'s'])}),_0x5163f1({'requestId':_0x11627b,'sessionKey':_0xa81840,'type':_0x5b0a19(0x309)}),_0x3b9dc7[_0x5b0a19(0x288)](_0x11627b,{'runId':_0x11627b,'requestId':_0x11627b,'sessionKey':_0xa81840,'textLength':0x0,'startedAt':_0x2ffb84}),_0x5dff0a[_0x5b0a19(0x288)](_0xa81840,_0x11627b);try{const _0x3fdac=await buildAttachments(Array['isArray'](_0xba7599[_0x5b0a19(0x2a2)+'s'])?_0xba7599[_0x5b0a19(0x2a2)+'s']:[]);_0x4b0dab?.['info']('chat\x20att'+_0x5b0a19(0x264)+'\x20prepare'+'d',{'requestId':_0x11627b,'sessionKey':_0xa81840,'attachmentCount':_0x3fdac[_0x5b0a19(0x237)],'attachments':_0x3fdac['map'](_0x116ad2=>({'type':_0x116ad2['type'],'mimeType':_0x116ad2['mimeType'],'fileName':_0x116ad2[_0x5b0a19(0x2b1)],'contentLength':_0x116ad2[_0x5b0a19(0x311)][_0x5b0a19(0x237)]}))});const _0x8177cf=asRecord(await _0x38ef07[_0x5b0a19(0x278)]('chat.sen'+'d',{'sessionKey':_0xa81840,'message':_0xa9765e,'deliver':![],'idempotencyKey':_0x11627b,..._0x3fdac[_0x5b0a19(0x237)]>0x0?{'attachments':_0x3fdac}:{}})),_0x5cbf13=getTrimmedString(_0x8177cf[_0x5b0a19(0x30b)])||_0x11627b,_0x1e6f6a=_0x3b9dc7['get'](_0x11627b);if(!_0x1e6f6a)return{'ok':!![],'requestId':_0x11627b,'runId':_0x5cbf13};return _0x5cbf13!==_0x1e6f6a[_0x5b0a19(0x30b)]&&(_0x3b9dc7[_0x5b0a19(0x2ac)](_0x1e6f6a[_0x5b0a19(0x30b)]),_0x1e6f6a[_0x5b0a19(0x30b)]=_0x5cbf13,_0x3b9dc7[_0x5b0a19(0x288)](_0x5cbf13,_0x1e6f6a)),_0x5dff0a['set'](_0xa81840,_0x5cbf13),_0x4b0dab?.[_0x5b0a19(0x28b)]('chat\x20str'+_0x5b0a19(0x332)+_0x5b0a19(0x238)+'gateway',{'requestId':_0x11627b,'runId':_0x5cbf13,'sessionKey':_0xa81840,'durationMs':Date[_0x5b0a19(0x1eb)]()-_0x2ffb84,'status':_0x8177cf['status']}),_0x8177cf[_0x5b0a19(0x1de)]===_0x5b0a19(0x2e9)&&_0x5be51f(_0x1e6f6a,_0x5b0a19(0x2e9),getTrimmedString(_0x8177cf[_0x5b0a19(0x20a)+_0x5b0a19(0x2b8)])||'gateway\x20'+_0x5b0a19(0x304)+_0x5b0a19(0x26f)),{'ok':!![],'requestId':_0x11627b,'runId':_0x5cbf13,'response':_0x8177cf};}catch(_0x730062){const _0x50e307=_0x1693f5(_0x11627b),_0x1458f1=_0x730062 instanceof Error?_0x730062[_0x5b0a19(0x2a0)]:String(_0x730062);_0x4b0dab?.[_0x5b0a19(0x2e9)](_0x5b0a19(0x2d3)+_0x5b0a19(0x204)+'ed',{'requestId':_0x11627b,'sessionKey':_0xa81840,'durationMs':Date[_0x5b0a19(0x1eb)]()-_0x2ffb84,'error':summarizeError(_0x730062)});if(_0x50e307)_0x5be51f(_0x50e307,'error',_0x1458f1);else _0x5163f1({'requestId':_0x11627b,'sessionKey':_0xa81840,'type':_0x5b0a19(0x2e9),'message':_0x1458f1});throw _0x730062;}}async function _0x3a6208(_0x5b7223={}){const _0x3e5edb=_0xfb077b;_0x185aa5();const _0x28aedd=getTrimmedString(_0x5b7223[_0x3e5edb(0x1ed)+'ey']);if(!_0x28aedd)throw new Error(_0x3e5edb(0x1ed)+_0x3e5edb(0x2b7)+_0x3e5edb(0x25f));const _0x18a329=Date[_0x3e5edb(0x1eb)](),_0x52bc42=_0x1693f5(getTrimmedString(_0x5b7223[_0x3e5edb(0x24a)+'d']))??_0x11d05b(_0x28aedd),_0x4361ec=_0x5dff0a['get'](_0x28aedd),_0x55b3cc={'sessionKey':_0x28aedd};if(_0x52bc42?.['runId'])_0x55b3cc[_0x3e5edb(0x30b)]=_0x52bc42[_0x3e5edb(0x30b)];else{if(_0x4361ec)_0x55b3cc[_0x3e5edb(0x30b)]=_0x4361ec;}const _0x1c6b0d=await _0x38ef07[_0x3e5edb(0x278)](_0x3e5edb(0x331)+'rt',_0x55b3cc);if(_0x52bc42)_0x5be51f(_0x52bc42,_0x3e5edb(0x236));return _0x4b0dab?.['info'](_0x3e5edb(0x267)+_0x3e5edb(0x200)+_0x3e5edb(0x206),{'sessionKey':_0x28aedd,'requestId':getTrimmedString(_0x5b7223[_0x3e5edb(0x24a)+'d']),'runId':_0x55b3cc[_0x3e5edb(0x30b)],'durationMs':Date[_0x3e5edb(0x1eb)]()-_0x18a329}),_0x1c6b0d;}async function _0x1278a9(_0x161dbc={}){const _0x19b3cd=_0xfb077b;_0x185aa5();const _0x3c1ea1=getTrimmedString(_0x161dbc[_0x19b3cd(0x1ed)+'ey']);if(!_0x3c1ea1)throw new Error(_0x19b3cd(0x1ed)+_0x19b3cd(0x2b7)+_0x19b3cd(0x25f));const _0x4d5229=await _0x38ef07[_0x19b3cd(0x278)](_0x19b3cd(0x2ed)+_0x19b3cd(0x232),{'sessionKey':_0x3c1ea1,'limit':Math['max'](0x1,Math['floor'](Number(_0x161dbc[_0x19b3cd(0x22f)])||0xc8))});return _0x4b0dab?.[_0x19b3cd(0x28b)]('chat\x20his'+'tory\x20loa'+'ded',{'sessionKey':_0x3c1ea1,'limit':Math[_0x19b3cd(0x273)](0x1,Math[_0x19b3cd(0x338)](Number(_0x161dbc[_0x19b3cd(0x22f)])||0xc8)),'result':summarizePayload(_0x4d5229,{'maxDepth':0x2})}),_0x4d5229;}async function _0x5c00ad(_0x3c7a39=''){const _0x29510a=_0xfb077b;if(!_0x4f4b5b())return{'pending':!![],'skills':[]};const _0x59f6ae=getTrimmedString(_0x3c7a39),_0x1b5b7c=await _0x38ef07[_0x29510a(0x278)]('skills.s'+_0x29510a(0x32f),_0x59f6ae?{'agentId':_0x59f6ae}:{}),_0x5b7312=await _0x58b4d4[_0x29510a(0x328)+'ig']()[_0x29510a(0x285)](()=>({})),_0x35cb2a=filterSkillsForAgent(_0x1b5b7c,_0x5b7312,_0x59f6ae);return _0x2039d2?.['info']('skills\x20s'+_0x29510a(0x318)+'aded',{'agentId':_0x59f6ae||_0x29510a(0x231),'result':summarizePayload(_0x35cb2a,{'maxDepth':0x2})}),_0x35cb2a;}return{'on':_0x3a008e,'start':_0x375ad0,'stop':_0xe443a8,'restart':_0x2f6e01,'runtimeInfo':_0x50c7d6,'getStatus':()=>_0x46e744,'getRecentLogs':_0x14aa06,'answerAskUserQuestion':_0xdc76e1=>_0x22197e[_0xfb077b(0x250)](_0xdc76e1),'agents':{'list':_0x393c8a},'skills':{'status':_0x5c00ad,'install':_0x54cfe4,'update':_0x9f9827,'delete':_0x330ea5},'sessions':{'create':_0x47bdf2,'list':_0x311a85,'delete':_0x4f444b,'rename':_0x44ce63,'pinnedKeys':_0xf6b2c2,'setPinnedKeys':_0x548f07},'workspace':{'directoryInfo':_0x411e28,'sharedContext':_0x452a88,'writeSharedContext':_0x31351d},'cron':{'list':_0x2d48d9,'create':_0x263eb8,'update':_0x1d2310,'remove':_0x47c394,'runOnce':_0x4bdb2e,'logs':_0x461a15},'models':{'settings':()=>_0x58b4d4['getModel'+_0xfb077b(0x23d)](),'setSettings':async(_0x2b4d6d={})=>{const _0x1b9c18=_0xfb077b,_0x52164d=_0x2b4d6d?.['restartO'+_0x1b9c18(0x2d0)]!==![];return await _0x58b4d4[_0x1b9c18(0x22b)+_0x1b9c18(0x23d)](_0x2b4d6d,{'restartOnChange':_0x52164d}),_0x58b4d4[_0x1b9c18(0x21d)+_0x1b9c18(0x23d)]();},'setSelfOperatedModels':_0x5d2e5a=>_0x58b4d4[_0xfb077b(0x2cb)+'peratedM'+_0xfb077b(0x27a)](_0x5d2e5a),'selectedModelId':async()=>{const _0x3b9b7f=_0xfb077b,_0x162891=await _0x58b4d4[_0x3b9b7f(0x21d)+_0x3b9b7f(0x23d)]();return _0x162891['provider']&&_0x162891[_0x3b9b7f(0x2fb)+'e']?_0x162891[_0x3b9b7f(0x301)]+'/'+_0x162891[_0x3b9b7f(0x2fb)+'e']:'';},'customModels':async()=>[]},'config':{'read':()=>_0x58b4d4['readConf'+'ig']()},'chat':{'stream':_0x203b97,'abort':_0x3a6208,'history':_0x1278a9}};}
1
+ const _0x3db012=_0x4ef6;(function(_0x4dec1f,_0x243b44){const _0x23b0df=_0x4ef6,_0x993a9=_0x4dec1f();while(!![]){try{const _0x296069=parseInt(_0x23b0df(0x22a))/0x1+parseInt(_0x23b0df(0x12e))/0x2*(parseInt(_0x23b0df(0xa4))/0x3)+parseInt(_0x23b0df(0x229))/0x4+parseInt(_0x23b0df(0x14d))/0x5*(parseInt(_0x23b0df(0x1b2))/0x6)+parseInt(_0x23b0df(0x20d))/0x7+-parseInt(_0x23b0df(0x1d2))/0x8+-parseInt(_0x23b0df(0x12b))/0x9*(parseInt(_0x23b0df(0x1f3))/0xa);if(_0x296069===_0x243b44)break;else _0x993a9['push'](_0x993a9['shift']());}catch(_0x5cb15e){_0x993a9['push'](_0x993a9['shift']());}}}(_0x4aee,0x9eb5d));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 _0x261f9b,{portNumbers}from'get-port';function _0x4ef6(_0x3bf146,_0xf7736b){_0x3bf146=_0x3bf146-0x81;const _0x4aee2b=_0x4aee();let _0x4ef67c=_0x4aee2b[_0x3bf146];return _0x4ef67c;}function _0x4aee(){const _0x4dcf23=['toLowerC','ted','agent-ev','deleteTr','join','includes','t-stream','customMo','descript','session_','ort\x20','er-secre','messageI','estart','Fallback','push','session-','ested','tHandler','patch','spawn\x20re','once','107649pbLRoz','message\x20','\x20for\x20WS','1718ztrFFI','ame','chat.sen','x-ask-us','quired','27.0.0.1','flush','nt\x20too\x20l','system','model','agents\x20l','split','.changed','ate','ey\x20is\x20re','eys-upda','delta','keys','sent','fig','tokenPre','resolveS','markConf','cron.run','figChang','stopped','itialCon','ved','e\x20update','sage','eway','1409180tpbanN','json','ase','workspac','ion/json','finally','cron','clear','chat\x20his','run','ntityPat','nected','end','unshift','restart\x20','done','.json','logo_url','igRaw','isArray','ay\x20state','sessionK','chat','reate','readConf','request','eviceIde','agents-u','aded','title','warn','textLeng','error','.list','agents.u','Version','status','controll','equested','then','\x20signal=','red','by\x20gatew','ing,\x20ple','session\x20','setGatew','reason','nsured','destroy','limit','filter','mimeType','\x20failed','isAskUse','ion','\x20gateway','content','chat-str','now','map','requeste','HEARTBEA','applicat','delete','ginConfi','skill\x20up','key','c\x20starte','state','gateway\x20','sted','utf8','string','ensureAs','startedA','tory','nChange','resolveC','bundled-','ills\x20syn','SOUL.md','pted\x20by\x20','\x20handled','USER.md','achments','stionPlu','sessions','rQuestio','answers','start','event\x20re','Timer','skills.s','dly','nt\x20recei','desktop','requestI','process\x20','eway:','l-core,\x20','tateDir','6YOMsWU','\x20waiting','some','SIGKILL','port','Bin','oot','cron.add','ed:\x20',':session','slice','POST','backend','skill\x20in','chat\x20att','pid','und','token','y\x20shortl','\x20context','producti','off','timeout','openclaw','agents\x20s','image/sv','sessionI','agents.c','ent','renamed','res','ath','6525016JplLNr','ove','toString','default','pdated','kUserQue','\x20require','\x20by\x20shel','ensureGa','image/','dispose','ck\x20skipp','pinnedKe','/ask-use','set','skills','resolveD','T.md','exited\x20c','ured','--allow-','AGENTS.m','configur','label','ceived','ket','ask-user','catch','ws://127','all','stringif','names','message','130tOMTzy','writeHea','t\x20connec','er\x20start','ssionKey','close','stall\x20re','text/mar','terminal','c\x20failed','ion/pdf','nabled','behavior','onfigPat','gateway','websocke','create\x20r','parse','pluginId','skills.u','log','runId','unknown','kdown','aipc-mar','ensureIn','6432790pQOJkE','iled','runtimeR','started,','Claw\x20gat','attachme','events\x20s','Settings','expr','hell:gat','agents.l','elete\x20is','deleted','ing','g+xml','stall\x20co','filePath','task','manual\x20r','splice','ized','--port','er\x20stop\x20','toUpperC','nPluginE','metadata','errorMes','name','241840ULwMtB','184695Buubzm','projectR','code','ompleted','tings','chat\x20abo','null','date\x20req','info','jobId','health','schedule','andledIn','ync\x20fail','session.','ternally','n\x20callba','chat\x20run','defaultI','changed','skillKey','stderr','image/jp','parentSe','plugins','[wujie-s','running','data','nstall','max','stack','mpleted','values','cron.lis','killed','agents','612bEjMHn','method','has','llow-unc','healthy','resolve','eam\x20fail','led','anscript','allow','arge:\x20','version','provider','--token','restarti','dels','aborted','phase','agentId','quested','productN','IDENTITY','r-questi','cron.rem','chat\x20fai','ents\x20syn','eady','started','messageS','0.1.0','MEMORY.m','t\x20not\x20fo','getModel','text/csv','n\x20reques','setModel','type','channel','stop','skills.d','is\x20start','eam\x20acce','技能安装失败:\x20','t\x20discon','final','nexpecte','ubscribe','modelNam','c\x20comple','jobId\x20is','\x20prepare','is\x20requi','entries','d\x20--toke','isFile','ndled\x20ag','agent\x20sk','deny','\x20request','-questio','in\x20disab','.subscri','uested','size','tatus\x20lo','peratedM','paths','client','bundled\x20','floor','skills.i','chat\x20eve','trimEnd','starting','tatus','rename\x20c','.delete','restartO','text','installP','\x20settled','eway]\x20bu','pdate\x20is','cron.upd','discover','chat.his','listen','http://1','get','ase\x20retr','kill','eam-even','random','rt\x20reque','unconfig','\x20list\x20co','tory\x20loa','models','connecte','main','invalid\x20','file','updated','base64','length','.0.0.1:','gateway-','ded','pinned-k','stall\x20fa','skill\x20de','unhealth','igWriteH'];_0x4aee=function(){return _0x4dcf23;};return _0x4aee();}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{readSkillMarketRegistry}from'./skill-import.mjs';import{createShellLogger,summarizeError,summarizeFilePaths,summarizePayload,summarizeText,toHomePath}from'./logging.mjs';const LOG_LIMIT=0x3e8,CLIENT_ID=_0x3db012(0x10e)+_0x3db012(0xe7),CLIENT_MODE=_0x3db012(0x1be),CLIENT_DEVICE_FAMILY=_0x3db012(0x1ac),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,SESSION_METADATA_FILE='session-'+_0x3db012(0x226)+_0x3db012(0x15d),SHARED_CONTEXT_FILES=[_0x3db012(0x1e7)+'d',_0x3db012(0x18a)+_0x3db012(0x1e3),_0x3db012(0xb9)+'.md',_0x3db012(0xc2)+'d',_0x3db012(0x19d),'TOOLS.md',_0x3db012(0x1a0)],SKILL_SOURCE_MARKET=_0x3db012(0x20b)+_0x3db012(0x1eb),DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!==_0x3db012(0x1c6)+'on';function mapMarketRegisteredSkills(_0x108986,_0x12374f){const _0x1e0a74=_0x3db012,_0x39d28e=Array['isArray'](asRecord(_0x108986)[_0x1e0a74(0x1e1)])?asRecord(_0x108986)[_0x1e0a74(0x1e1)]:[];if(_0x39d28e[_0x1e0a74(0x10c)]===0x0||Object[_0x1e0a74(0x13f)](_0x12374f)[_0x1e0a74(0x10c)]===0x0)return _0x108986;const _0x20c549=_0x39d28e[_0x1e0a74(0x188)](_0x51680e=>{const _0x1be3bd=_0x1e0a74,_0x138339=asRecord(_0x51680e),_0x148926=getTrimmedString(_0x138339[_0x1be3bd(0x94)])||getTrimmedString(_0x138339[_0x1be3bd(0x228)]);let _0x18f919=_0x148926,_0x263b56=asRecord(_0x12374f[_0x148926]);if(!Object[_0x1be3bd(0x13f)](_0x263b56)[_0x1be3bd(0x10c)])for(const [_0x21cab5,_0x5d473f]of Object[_0x1be3bd(0xd8)](_0x12374f)){const _0x35db65=asRecord(_0x5d473f);if(getTrimmedString(_0x35db65['code'])===_0x148926){_0x18f919=_0x21cab5,_0x263b56=_0x35db65;break;}}if(!Object[_0x1be3bd(0x13f)](_0x263b56)[_0x1be3bd(0x10c)])return _0x51680e;const _0x2d8053=getTrimmedString(_0x263b56[_0x1be3bd(0x82)]),_0x26d55f=getTrimmedString(_0x263b56[_0x1be3bd(0x228)]),_0x11d368=getTrimmedString(_0x263b56[_0x1be3bd(0x11d)+_0x1be3bd(0x183)]),_0x2eaa28=getTrimmedString(_0x263b56[_0x1be3bd(0x15e)]),_0x373c6a=getTrimmedString(_0x263b56[_0x1be3bd(0xaf)]);return{..._0x138339,'source':SKILL_SOURCE_MARKET,'skillKey':_0x2d8053||_0x148926,'gatewaySkillKey':_0x2d8053?_0x18f919:null,'marketInstalledVersion':_0x373c6a||null,..._0x26d55f?{'name':_0x26d55f}:{},..._0x11d368?{'description':_0x11d368}:{},..._0x2eaa28?{'logoUrl':_0x2eaa28}:{}};});return{...asRecord(_0x108986),'skills':_0x20c549};}function nowIso(){const _0x42241d=_0x3db012;return new Date()['toISOStr'+_0x42241d(0x21a)]();}function buildGatewayWsUrl(_0x89b278){const _0xb5f354=_0x3db012;return _0xb5f354(0x1ee)+_0xb5f354(0x10d)+_0x89b278;}function createInitialStatus(){const _0x213d2c=_0x3db012;return{'lifecycle':_0x213d2c(0x147),'health':'unknown','port':null,'tokenPresent':![],'initialStartupComplete':![],'message':'gateway\x20'+'stopped','updatedAt':nowIso()};}function extractGatewayMessageText(_0xf27144){const _0x4431c9=_0x3db012;if(typeof _0xf27144===_0x4431c9(0x195))return _0xf27144;if(!Array[_0x4431c9(0x160)](_0xf27144))return'';const _0xf0a6ae=[];for(const _0x642d9b of _0xf27144){if(typeof _0x642d9b===_0x4431c9(0x195)){if(_0x642d9b)_0xf0a6ae['push'](_0x642d9b);continue;}const _0x281be4=asRecord(_0x642d9b);_0x281be4[_0x4431c9(0xc8)]===_0x4431c9(0xf2)&&typeof _0x281be4[_0x4431c9(0xf2)]===_0x4431c9(0x195)&&_0x281be4['text']&&_0xf0a6ae[_0x4431c9(0x124)](_0x281be4['text']);}return _0xf0a6ae[_0x4431c9(0x119)]('\x0a');}function extractGatewayChatText(_0x31b5ab){const _0x1d612d=_0x3db012,_0x188906=asRecord(_0x31b5ab);if(typeof _0x188906['text']===_0x1d612d(0x195))return _0x188906[_0x1d612d(0xf2)];return extractGatewayMessageText(_0x188906[_0x1d612d(0x185)]);}function guessMimeType(_0x533210){const _0x161a13=_0x3db012,_0x36a535=_0x533210[_0x161a13(0x139)]('.')['pop']()?.[_0x161a13(0x115)+_0x161a13(0x14f)]()??'',_0x488498={'png':'image/pn'+'g','jpg':'image/jp'+'eg','jpeg':_0x161a13(0x96)+'eg','webp':'image/we'+'bp','gif':'image/gi'+'f','svg':_0x161a13(0x1cb)+_0x161a13(0x21b),'pdf':'applicat'+_0x161a13(0x1fd),'txt':'text/pla'+'in','md':_0x161a13(0x1fa)+_0x161a13(0x20a),'json':'applicat'+_0x161a13(0x151),'csv':_0x161a13(0xc5)};return _0x488498[_0x36a535]||'applicat'+'ion/octe'+_0x161a13(0x11b);}async function buildAttachments(_0x457cbd=[]){const _0xb8554f=_0x3db012,_0xd137c9=[];for(const _0x4806a5 of _0x457cbd){const _0x78992f=getTrimmedString(_0x4806a5);if(!_0x78992f)continue;const _0x111119=await stat(_0x78992f);if(!_0x111119[_0xb8554f(0xda)]())continue;if(_0x111119[_0xb8554f(0xe3)]>ATTACHMENT_MAX_BYTES)throw new Error(_0xb8554f(0x212)+_0xb8554f(0x135)+_0xb8554f(0xae)+basename(_0x78992f));const _0x1b86c7=guessMimeType(_0x78992f);_0xd137c9['push']({'type':_0x1b86c7['startsWi'+'th'](_0xb8554f(0x1db))?'image':_0xb8554f(0x109),'mimeType':_0x1b86c7,'content':(await readFile(_0x78992f))[_0xb8554f(0x1d4)](_0xb8554f(0x10b)),'fileName':basename(_0x78992f)});}return _0xd137c9;}function buildSessionCreateRequestPayload(_0x5d922d={}){const _0x1d6895=_0x3db012,_0x31222b={},_0x4148e2=Math[_0x1d6895(0x100)]()['toString'](0x24)[_0x1d6895(0x1bc)](0x2,0xf),_0x574ca1=getTrimmedString(_0x5d922d['agentId'])||_0x1d6895(0x107),_0x42b8fd=getTrimmedString(_0x5d922d[_0x1d6895(0x18f)])||'agent:'+_0x574ca1+(_0x1d6895(0x1bb)+'-')+Date[_0x1d6895(0x187)]();_0x31222b['key']=_0x42b8fd+'-'+_0x4148e2,_0x31222b[_0x1d6895(0xb6)]=_0x574ca1;const _0x20c62b=getTrimmedString(_0x5d922d[_0x1d6895(0x1e9)]);if(_0x20c62b)_0x31222b[_0x1d6895(0x1e9)]=_0x20c62b+'-'+_0x4148e2;for(const _0x12eccd of[_0x1d6895(0x137),_0x1d6895(0x97)+_0x1d6895(0x1f7),_0x1d6895(0x21e),_0x1d6895(0x1f2)]){const _0x5f5427=getTrimmedString(_0x5d922d[_0x12eccd]);if(_0x5f5427)_0x31222b[_0x12eccd]=_0x5f5427;}return _0x31222b;}function normalizeCronMutationParams(_0x3054f9={}){const _0x46e6c3=_0x3db012,_0x1c01c1={...asRecord(_0x3054f9)},_0x3eccf9=asRecord(_0x1c01c1[_0x46e6c3(0x8b)]);if(Object['keys'](_0x3eccf9)[_0x46e6c3(0x10c)]>0x0){const _0x176dac={..._0x3eccf9},_0x28fb5c=getTrimmedString(_0x176dac['cron']);_0x28fb5c&&!getTrimmedString(_0x176dac['expr'])&&(_0x176dac[_0x46e6c3(0x215)]=_0x28fb5c),delete _0x176dac[_0x46e6c3(0x153)],_0x1c01c1[_0x46e6c3(0x8b)]=_0x176dac;}return _0x1c01c1;}function parseSessionCreateResult(_0x5f0ff2){const _0x289cee=_0x3db012,_0x57bf39=asRecord(_0x5f0ff2),_0x5655a2=asRecord(_0x57bf39['session']);return{'ok':!![],'key':getTrimmedString(_0x57bf39[_0x289cee(0x18f)])||getTrimmedString(_0x57bf39[_0x289cee(0x162)+'ey'])||getTrimmedString(_0x5655a2[_0x289cee(0x18f)])||null,'sessionId':getTrimmedString(_0x57bf39['sessionI'+'d'])||getTrimmedString(_0x5655a2[_0x289cee(0x1cc)+'d'])||null};}function getSessionKeyFromValue(_0x232596){const _0x5cf2a2=_0x3db012,_0x178b84=asRecord(_0x232596);return getTrimmedString(_0x178b84[_0x5cf2a2(0x162)+'ey']??_0x178b84[_0x5cf2a2(0x18f)]??_0x178b84['id']);}function createEmptySessionMetadata(){return{'names':{},'pinnedKeys':[]};}async function readSessionMetadata(_0x261862){const _0x417843=_0x3db012;try{const _0x1d9981=JSON[_0x417843(0x204)](await readFile(join(_0x261862,SESSION_METADATA_FILE),_0x417843(0x194))),_0x398cc2=asRecord(_0x1d9981);return{'names':asRecord(_0x398cc2[_0x417843(0x1f1)]),'pinnedKeys':Array[_0x417843(0x160)](_0x398cc2[_0x417843(0x1de)+'ys'])?_0x398cc2[_0x417843(0x1de)+'ys']['filter'](_0x2ba282=>typeof _0x2ba282===_0x417843(0x195)&&_0x2ba282['trim']()):[]};}catch{return createEmptySessionMetadata();}}async function writeSessionMetadata(_0x214487,_0x5b42c9){const _0x5b4f70=_0x3db012;await mkdir(_0x214487,{'recursive':!![]}),await writeFile(join(_0x214487,SESSION_METADATA_FILE),JSON[_0x5b4f70(0x1f0)+'y'](_0x5b42c9,null,0x2)+'\x0a',_0x5b4f70(0x194));}function applySessionMetadata(_0x3f867b,_0x11793c){const _0x719567=_0x3db012,_0x128f45=asRecord(_0x3f867b),_0x295998=Array[_0x719567(0x160)](_0x128f45[_0x719567(0x1a3)])?_0x128f45[_0x719567(0x1a3)]:[];return{..._0x128f45,'pinnedKeys':_0x11793c[_0x719567(0x1de)+'ys'],'sessions':_0x295998['map'](_0x3e3251=>{const _0x1d110b=_0x719567,_0x3b11aa=asRecord(_0x3e3251),_0x3e7b66=getSessionKeyFromValue(_0x3b11aa);if(!_0x3e7b66)return _0x3e3251;const _0x40059e=getTrimmedString(_0x11793c[_0x1d110b(0x1f1)][_0x3e7b66]),_0x42b80f=_0x11793c[_0x1d110b(0x1de)+'ys'][_0x1d110b(0x11a)](_0x3e7b66);return{..._0x3b11aa,..._0x40059e?{'name':_0x40059e,'displayName':_0x40059e,'label':_0x40059e}:{},'pinned':_0x42b80f};})};}function sanitizeSharedContextPayload(_0x417ebc){const _0x2caadf=_0x3db012,_0x7466bb=asRecord(_0x417ebc),_0x39c31={};for(const _0x187cda of SHARED_CONTEXT_FILES){if(typeof _0x7466bb[_0x187cda]===_0x2caadf(0x195))_0x39c31[_0x187cda]=_0x7466bb[_0x187cda];}return _0x39c31;}async function readSharedContext(_0x5bdb50){const _0xfef839=_0x3db012,_0x5a8076={};for(const _0x2e70a6 of SHARED_CONTEXT_FILES){try{_0x5a8076[_0x2e70a6]=await readFile(join(_0x5bdb50,_0x2e70a6),_0xfef839(0x194));}catch{_0x5a8076[_0x2e70a6]='';}}return _0x5a8076;}async function writeSharedContext(_0x1f3add,_0x456311){const _0x4a8868=_0x3db012,_0x33342c=sanitizeSharedContextPayload(_0x456311);await mkdir(_0x1f3add,{'recursive':!![]});for(const [_0x6cd512,_0x20ee8]of Object[_0x4a8868(0xd8)](_0x33342c)){await writeFile(join(_0x1f3add,_0x6cd512),_0x20ee8,'utf8');}return{'ok':!![],'files':Object[_0x4a8868(0x13f)](_0x33342c)};}function createAskUserQuestionServer({configController:_0xcbaa2,emit:_0x1ed9c0}){const _0x4c476e=new Map();let _0x507aaf=null,_0x102c6c='',_0x4ba405='';async function _0x26e4d9(){const _0x370394=_0x4ef6;if(_0x507aaf)return{'callbackUrl':_0x102c6c,'secret':_0x4ba405};_0x4ba405=randomUUID();const _0x4a3aa7=await _0x261f9b({'port':portNumbers(0x332c,0x338f)});return _0x102c6c=_0x370394(0xfb)+_0x370394(0x133)+':'+_0x4a3aa7+('/ask-use'+'r-questi'+'on'),_0x507aaf=createServer(async(_0x28e7c3,_0x61d81)=>{const _0x3b7518=_0x370394;if(_0x28e7c3[_0x3b7518(0xa5)]!==_0x3b7518(0x1bd)||_0x28e7c3['url']!==_0x3b7518(0x1df)+_0x3b7518(0xba)+'on'){_0x61d81['writeHea'+'d'](0x194),_0x61d81[_0x3b7518(0x159)]('not\x20foun'+'d');return;}if(_0x28e7c3['headers'][_0x3b7518(0x131)+_0x3b7518(0x120)+'t']!==_0x4ba405){_0x61d81[_0x3b7518(0x1f4)+'d'](0x191),_0x61d81[_0x3b7518(0x159)]('unauthor'+_0x3b7518(0x221));return;}let _0x5a463='';_0x28e7c3['on']('data',_0x29a12c=>{const _0x175e51=_0x3b7518;_0x5a463+=_0x29a12c[_0x175e51(0x1d4)]();if(_0x5a463[_0x175e51(0x10c)]>0x400*0x400)_0x28e7c3[_0x175e51(0x17d)]();}),_0x28e7c3['on']('end',()=>{const _0x288338=_0x3b7518;let _0x346ab9={};try{_0x346ab9=JSON[_0x288338(0x204)](_0x5a463||'{}');}catch{_0x61d81[_0x288338(0x1f4)+'d'](0x190),_0x61d81[_0x288338(0x159)](_0x288338(0x108)+_0x288338(0x14e));return;}const _0x4a8bf2=randomUUID(),_0x3cdcd9=setTimeout(()=>{const _0x5f4fc0=_0x288338;if(!_0x4c476e['has'](_0x4a8bf2))return;_0x4c476e[_0x5f4fc0(0x18c)](_0x4a8bf2),_0x61d81[_0x5f4fc0(0x1f4)+'d'](0xc8,{'content-type':_0x5f4fc0(0x18b)+_0x5f4fc0(0x151)}),_0x61d81[_0x5f4fc0(0x159)](JSON[_0x5f4fc0(0x1f0)+'y']({'behavior':_0x5f4fc0(0xdd)}));},0x1d4c0);_0x4c476e[_0x288338(0x1e0)](_0x4a8bf2,{'res':_0x61d81,'timeout':_0x3cdcd9}),_0x1ed9c0(_0x288338(0x1ec)+_0x288338(0xdf)+'n',{'requestId':_0x4a8bf2,...asRecord(_0x346ab9)});});}),await new Promise((_0x1faf37,_0x4cc40f)=>{const _0x13ae27=_0x370394;_0x507aaf[_0x13ae27(0x12a)](_0x13ae27(0x16d),_0x4cc40f),_0x507aaf[_0x13ae27(0xfa)](_0x4a3aa7,'127.0.0.'+'1',()=>{const _0x811487=_0x13ae27;_0x507aaf['off'](_0x811487(0x16d),_0x4cc40f),_0x1faf37();});}),await _0xcbaa2[_0x370394(0x196)+_0x370394(0x1d7)+_0x370394(0x1a2)+_0x370394(0x18d)+'g']({'callbackUrl':_0x102c6c,'secret':_0x4ba405}),{'callbackUrl':_0x102c6c,'secret':_0x4ba405};}function _0x3586c4(_0x4a46ac={}){const _0x4fa9b3=_0x4ef6,_0x96e3f3=getTrimmedString(_0x4a46ac['requestI'+'d']);if(!_0x96e3f3||!_0x4c476e[_0x4fa9b3(0xa6)](_0x96e3f3))throw new Error('ask-user'+_0x4fa9b3(0xdf)+_0x4fa9b3(0xc6)+_0x4fa9b3(0xc3)+_0x4fa9b3(0x1c2));const _0x262215=_0x4c476e[_0x4fa9b3(0xfc)](_0x96e3f3);return _0x4c476e[_0x4fa9b3(0x18c)](_0x96e3f3),clearTimeout(_0x262215[_0x4fa9b3(0x1c8)]),_0x262215[_0x4fa9b3(0x1d0)][_0x4fa9b3(0x1f4)+'d'](0xc8,{'content-type':'applicat'+'ion/json'}),_0x262215[_0x4fa9b3(0x1d0)][_0x4fa9b3(0x159)](JSON[_0x4fa9b3(0x1f0)+'y']({'behavior':_0x4a46ac[_0x4fa9b3(0x1ff)]==='deny'?'deny':_0x4fa9b3(0xad),'answers':asRecord(_0x4a46ac[_0x4fa9b3(0x1a5)])})),{'ok':!![]};}async function _0x149218(){const _0x4d03a4=_0x4ef6;for(const [_0x46c465,_0x142b3f]of _0x4c476e){_0x4c476e[_0x4d03a4(0x18c)](_0x46c465),clearTimeout(_0x142b3f[_0x4d03a4(0x1c8)]),_0x142b3f[_0x4d03a4(0x1d0)][_0x4d03a4(0x1f4)+'d'](0xc8,{'content-type':_0x4d03a4(0x18b)+_0x4d03a4(0x151)}),_0x142b3f[_0x4d03a4(0x1d0)][_0x4d03a4(0x159)](JSON[_0x4d03a4(0x1f0)+'y']({'behavior':_0x4d03a4(0xdd)}));}if(!_0x507aaf)return;await new Promise(_0x131578=>_0x507aaf[_0x4d03a4(0x1f8)](_0x131578)),_0x507aaf=null;}return{'start':_0x26e4d9,'answer':_0x3586c4,'stop':_0x149218};}export function createGatewayController({shellConfig:_0x135086,configController:_0x2fa015,appVersion:appVersion=_0x3db012(0xc1)}){const _0x16c48e=_0x3db012,_0x2fa0d3=new EventEmitter(),_0x49bbb8=new ClawGatewayWsClient(),_0xfbdd98=[],_0x5181f6=new Map(),_0x10f80b=new Map(),_0x54dbfc=createShellLogger(_0x2fa015[_0x16c48e(0xe6)],_0x16c48e(0x201)),_0x5eec15=createShellLogger(_0x2fa015['paths'],_0x16c48e(0x163)),_0x26e90b=createShellLogger(_0x2fa015[_0x16c48e(0xe6)],'sessions'),_0x256369=createShellLogger(_0x2fa015[_0x16c48e(0xe6)],'capabili'+'ties'),_0x5af031=createAskUserQuestionServer({'configController':_0x2fa015,'emit':(_0x3d793e,_0x2753a2)=>_0x2fa0d3['emit'](_0x3d793e,_0x2753a2)});let _0x5d0417=createInitialStatus(),_0x2d122f=null,_0x52e4a4=null,_0x37fbdf=null,_0x4f410a=![],_0x27f02e=![],_0x140ee1=Promise[_0x16c48e(0xa9)](),_0x301804=null,_0x4ea7ba=0x0,_0x53360c=0x0;function _0x160eff(_0x16e808,_0x24941e){_0x2fa0d3['emit'](_0x16e808,_0x24941e);}function _0x2a7e00(_0x97a30e,_0x452290){const _0xa06af4=_0x16c48e;return _0x2fa0d3['on'](_0x97a30e,_0x452290),()=>_0x2fa0d3[_0xa06af4(0x1c7)](_0x97a30e,_0x452290);}function _0x2cf508(_0x74ea5c){const _0x507248=_0x16c48e;_0x5d0417={..._0x5d0417,..._0x74ea5c,'updatedAt':nowIso()},_0x160eff(_0x507248(0x10e)+_0x507248(0x171),_0x5d0417);}function _0x246595(_0x13d961,_0x34fa0a,_0x24bcbc={}){const _0x35ce94=_0x16c48e;_0x2cf508({'lifecycle':_0x13d961,'message':_0x34fa0a,..._0x13d961===_0x35ce94(0x9a)?{'initialStartupComplete':!![]}:{},..._0x24bcbc}),_0x20e6cf(_0x35ce94(0x136),_0x13d961[_0x35ce94(0x224)+_0x35ce94(0x14f)]()+'\x20'+_0x34fa0a),_0x54dbfc?.[_0x35ce94(0x88)](_0x35ce94(0x192)+'lifecycl'+_0x35ce94(0x14a)+'d',{'lifecycle':_0x13d961,'message':_0x34fa0a,'status':{'health':_0x5d0417[_0x35ce94(0x8a)],'port':_0x5d0417[_0x35ce94(0x1b6)],'tokenPresent':_0x5d0417[_0x35ce94(0x142)+_0x35ce94(0x140)]},...summarizePayload(_0x24bcbc)});}function _0x20e6cf(_0x31f964,_0x1ee821){const _0x16d85b=_0x16c48e,_0x208489=String(_0x1ee821??'')[_0x16d85b(0xec)]();if(!_0x208489)return;if(DEBUG_STDOUT){const _0x65363c=_0x31f964==='stderr'?console[_0x16d85b(0x16d)]:console[_0x16d85b(0x88)];_0x65363c(_0x16d85b(0x99)+_0x16d85b(0x216)+_0x16d85b(0x1af)+_0x31f964+']',_0x208489);}const _0x1705d8={'source':_0x31f964,'text':_0x208489,'timestamp':nowIso()};_0xfbdd98[_0x16d85b(0x124)](_0x1705d8);if(_0xfbdd98[_0x16d85b(0x10c)]>LOG_LIMIT)_0xfbdd98[_0x16d85b(0x220)](0x0,_0xfbdd98[_0x16d85b(0x10c)]-LOG_LIMIT);_0x160eff(_0x16d85b(0x10e)+'log',_0x1705d8),_0x54dbfc?.[_0x16d85b(0x88)](_0x16d85b(0x192)+_0x16d85b(0x207),{'source':_0x31f964,'text':_0x208489});}function _0x490a11(_0xa4e399=0xc8){const _0x28d1e1=_0x16c48e;return _0xfbdd98['slice'](-Math[_0x28d1e1(0x9d)](0x1,Math[_0x28d1e1(0xe9)](_0xa4e399)));}function _0x537db6(){const _0x9bb1df=_0x16c48e;if(!_0x2d122f||_0x5d0417['lifecycl'+'e']!=='running')throw new Error(_0x9bb1df(0x192)+_0x9bb1df(0xcc)+_0x9bb1df(0x178)+_0x9bb1df(0xfd)+_0x9bb1df(0x1c4)+'y');}async function _0x22eaed(_0x8c4788=0x3a98){const _0x4dc06d=_0x16c48e;if(_0x48a768())return!![];const _0x2d9423=Date[_0x4dc06d(0x187)]();while(Date[_0x4dc06d(0x187)]()-_0x2d9423<_0x8c4788){await new Promise(_0x5e5c24=>setTimeout(_0x5e5c24,0xfa));if(_0x48a768())return!![];}return _0x537db6(),!![];}function _0x48a768(){return Boolean(_0x2d122f&&_0x5d0417['lifecycl'+'e']==='running');}function _0x30e4ef(_0xa14e87){const _0x46ab87=_0x16c48e;_0x160eff(_0x46ab87(0x186)+_0x46ab87(0xff)+'t',_0xa14e87);}function _0x37ce43(_0x2cd091){const _0x3a1c1e=_0x16c48e,_0x2d4d86=_0x5181f6[_0x3a1c1e(0xfc)](_0x2cd091);if(!_0x2d4d86)return null;_0x5181f6[_0x3a1c1e(0x18c)](_0x2cd091);if(_0x2d4d86[_0x3a1c1e(0x1fb)+_0x3a1c1e(0x123)+_0x3a1c1e(0x1a8)])clearTimeout(_0x2d4d86['terminal'+'Fallback'+_0x3a1c1e(0x1a8)]);return _0x10f80b[_0x3a1c1e(0x18c)](_0x2d4d86[_0x3a1c1e(0x162)+'ey']),_0x2d4d86;}function _0x3c12bf(_0x18d36f,_0x341468,_0x1bd9fb=''){const _0x559768=_0x16c48e,_0x567c2f=_0x37ce43(_0x18d36f[_0x559768(0x208)]);if(!_0x567c2f)return;_0x5eec15?.[_0x559768(0x88)](_0x559768(0x91)+_0x559768(0xf4),{'requestId':_0x567c2f[_0x559768(0x1ad)+'d'],'runId':_0x567c2f[_0x559768(0x208)],'sessionKey':_0x567c2f['sessionK'+'ey'],'outcome':_0x341468,'durationMs':Date['now']()-_0x567c2f[_0x559768(0x197)+'t'],'textLength':_0x567c2f[_0x559768(0x16c)+'th'],..._0x1bd9fb?{'message':_0x1bd9fb}:{}}),_0x30e4ef({'requestId':_0x567c2f[_0x559768(0x1ad)+'d'],'sessionKey':_0x567c2f[_0x559768(0x162)+'ey'],'type':_0x341468,..._0x1bd9fb?{'message':_0x1bd9fb}:{}});}function _0x1a386b(_0x309178){const _0x2743d=_0x16c48e;let _0x348332=null;for(const _0x1ba4eb of _0x5181f6[_0x2743d(0xa0)]()){if(_0x1ba4eb[_0x2743d(0x162)+'ey']===_0x309178)_0x348332=_0x1ba4eb;}return _0x348332;}function _0x51cbfd(_0x296039){const _0x2ae692=_0x16c48e;if(!_0x296039)return null;for(const _0x91dadb of _0x5181f6[_0x2ae692(0xa0)]()){if(_0x91dadb['requestI'+'d']===_0x296039)return _0x91dadb;}return null;}function _0x429b44(_0x2176be,_0x5a8edc){const _0x910643=_0x16c48e;if(_0x5a8edc[_0x910643(0x10c)]<=_0x2176be[_0x910643(0x16c)+'th'])return;const _0x565086=_0x5a8edc[_0x910643(0x1bc)](_0x2176be[_0x910643(0x16c)+'th']);_0x2176be[_0x910643(0x16c)+'th']=_0x5a8edc[_0x910643(0x10c)],_0x565086&&_0x30e4ef({'requestId':_0x2176be[_0x910643(0x1ad)+'d'],'sessionKey':_0x2176be[_0x910643(0x162)+'ey'],'type':_0x910643(0x13e),'delta':_0x565086});}function _0x1a551e(_0xb8d23c,_0x4a8d52,_0x27d7dd=''){const _0x17e209=_0x16c48e;if(_0xb8d23c[_0x17e209(0x1fb)+'Fallback'+_0x17e209(0x1a8)])clearTimeout(_0xb8d23c[_0x17e209(0x1fb)+_0x17e209(0x123)+'Timer']);_0xb8d23c['terminal'+_0x17e209(0x123)+_0x17e209(0x1a8)]=setTimeout(()=>{const _0x544a22=_0x17e209,_0x459a54=_0x5181f6[_0x544a22(0xfc)](_0xb8d23c[_0x544a22(0x208)]);if(!_0x459a54)return;_0x3c12bf(_0x459a54,_0x4a8d52===_0x544a22(0x16d)?'error':_0x544a22(0x15c),_0x27d7dd);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x1e1e32(_0x3a68ff){const _0x548faf=_0x16c48e;for(const _0x29dfe1 of _0x5181f6[_0x548faf(0xa0)]()){_0x5eec15?.['warn']('chat\x20run'+'\x20failed\x20'+_0x548faf(0x177)+_0x548faf(0x161),{'requestId':_0x29dfe1[_0x548faf(0x1ad)+'d'],'runId':_0x29dfe1['runId'],'sessionKey':_0x29dfe1[_0x548faf(0x162)+'ey'],'durationMs':Date['now']()-_0x29dfe1[_0x548faf(0x197)+'t'],'reason':_0x3a68ff}),_0x30e4ef({'requestId':_0x29dfe1['requestI'+'d'],'sessionKey':_0x29dfe1[_0x548faf(0x162)+'ey'],'type':'error','message':_0x3a68ff});if(_0x29dfe1[_0x548faf(0x1fb)+_0x548faf(0x123)+_0x548faf(0x1a8)])clearTimeout(_0x29dfe1['terminal'+_0x548faf(0x123)+_0x548faf(0x1a8)]);}_0x5181f6[_0x548faf(0x154)](),_0x10f80b[_0x548faf(0x154)]();}function _0x8fe3e0(_0x123630){const _0x1b3cbe=_0x16c48e,_0x1d0092=getTrimmedString(_0x123630['runId']),_0x40842a=getTrimmedString(_0x123630[_0x1b3cbe(0x191)])||'updated',_0x3e2860=getTrimmedString(_0x123630['sessionK'+'ey']),_0x2bb6a1=(_0x1d0092?_0x5181f6[_0x1b3cbe(0xfc)](_0x1d0092):null)??(_0x3e2860?_0x1a386b(_0x3e2860):null);if(_0x1d0092&&_0x3e2860)_0x10f80b[_0x1b3cbe(0x1e0)](_0x3e2860,_0x1d0092);if(_0x3e2860)_0x160eff(_0x1b3cbe(0x125)+'updated',{'sessionKey':_0x3e2860,'state':_0x40842a});_0x5eec15?.['info'](_0x1b3cbe(0x192)+_0x1b3cbe(0xeb)+_0x1b3cbe(0x1ab)+_0x1b3cbe(0x149),{'runId':_0x1d0092,'sessionKey':_0x3e2860,'state':_0x40842a,'hasActiveRun':Boolean(_0x2bb6a1),'messageText':summarizeText(extractGatewayChatText(_0x123630[_0x1b3cbe(0x1f2)]),0x78),'errorMessage':getTrimmedString(_0x123630['errorMes'+_0x1b3cbe(0x14b)])});_0x2bb6a1&&(_0x40842a==='final'||_0x40842a===_0x1b3cbe(0xb4)||_0x40842a===_0x1b3cbe(0x16d))&&_0x1a551e(_0x2bb6a1,_0x40842a,typeof _0x123630[_0x1b3cbe(0x227)+'sage']==='string'?_0x123630[_0x1b3cbe(0x227)+_0x1b3cbe(0x14b)]:_0x1b3cbe(0x192)+_0x1b3cbe(0xbc)+_0x1b3cbe(0xab));if(!_0x2bb6a1)return;if(_0x3e2860&&_0x3e2860!==_0x2bb6a1[_0x1b3cbe(0x162)+'ey'])return;if(_0x40842a===_0x1b3cbe(0x13e)){_0x429b44(_0x2bb6a1,extractGatewayChatText(_0x123630[_0x1b3cbe(0x1f2)]));return;}if(_0x40842a===_0x1b3cbe(0xd0)||_0x40842a===_0x1b3cbe(0xb4)){_0x429b44(_0x2bb6a1,extractGatewayChatText(_0x123630[_0x1b3cbe(0x1f2)])),_0x3c12bf(_0x2bb6a1,'done');return;}_0x40842a===_0x1b3cbe(0x16d)&&_0x3c12bf(_0x2bb6a1,_0x1b3cbe(0x16d),typeof _0x123630['errorMes'+'sage']===_0x1b3cbe(0x195)?_0x123630[_0x1b3cbe(0x227)+'sage']:_0x1b3cbe(0x192)+'chat\x20fai'+_0x1b3cbe(0xab));}function _0x41b8f3(_0x1974d9){const _0x3b4421=_0x16c48e,_0x359545=asRecord(_0x1974d9);return getTrimmedString(_0x359545[_0x3b4421(0x162)+'ey'])||getTrimmedString(_0x359545[_0x3b4421(0x18f)])||getTrimmedString(_0x359545[_0x3b4421(0x11e)+'key']);}function _0x2d085c(_0x3c679e){const _0x567b42=_0x16c48e,_0x1d8666=asRecord(_0x3c679e),_0x20c081=_0x41b8f3(_0x1d8666),_0x1958fe=getTrimmedString(_0x1d8666[_0x567b42(0xb5)])||getTrimmedString(_0x1d8666[_0x567b42(0x191)])||getTrimmedString(_0x1d8666[_0x567b42(0x17b)])||_0x567b42(0x10a);_0x26e90b?.[_0x567b42(0x88)](_0x567b42(0x192)+'session\x20'+_0x567b42(0x1a7)+_0x567b42(0x1ea),{'event':'sessions'+_0x567b42(0x13a),'sessionKey':_0x20c081,'state':_0x1958fe,'channel':getTrimmedString(_0x1d8666[_0x567b42(0xc9)]),'agentId':getTrimmedString(_0x1d8666[_0x567b42(0xb6)]),'messageId':getTrimmedString(_0x1d8666[_0x567b42(0x121)+'d']),'runId':getTrimmedString(_0x1d8666[_0x567b42(0x208)])}),_0x160eff(_0x567b42(0x125)+_0x567b42(0x10a),{..._0x1d8666,'type':getTrimmedString(_0x1d8666[_0x567b42(0xc8)])||'changed','state':_0x1958fe,..._0x20c081?{'sessionKey':_0x20c081}:{}});}function _0x130201(_0x51415d){const _0x437da5=_0x16c48e,_0x278866=asRecord(_0x51415d),_0x1ccc5f=_0x41b8f3(_0x278866);_0x26e90b?.[_0x437da5(0x88)]('gateway\x20'+_0x437da5(0x179)+_0x437da5(0x12c)+_0x437da5(0x1a7)+_0x437da5(0x1ea),{'event':_0x437da5(0x8e)+'message','sessionKey':_0x1ccc5f,'channel':getTrimmedString(_0x278866[_0x437da5(0xc9)]),'agentId':getTrimmedString(_0x278866[_0x437da5(0xb6)]),'messageId':getTrimmedString(_0x278866[_0x437da5(0x121)+'d']),'messageSeq':_0x278866[_0x437da5(0xc0)+'eq']}),_0x160eff(_0x437da5(0x125)+_0x437da5(0x10a),{..._0x278866,'type':'message','state':_0x437da5(0x1f2),..._0x1ccc5f?{'sessionKey':_0x1ccc5f}:{}});}async function _0x4c76c5(){const _0x89ac0c=_0x16c48e;try{const _0x2ab2c5=await _0x49bbb8[_0x89ac0c(0x166)](_0x89ac0c(0x1a3)+_0x89ac0c(0xe1)+'be',{},{'timeoutMs':0x2710});_0x26e90b?.[_0x89ac0c(0x88)](_0x89ac0c(0x192)+'session\x20'+_0x89ac0c(0x213)+_0x89ac0c(0xd2)+'d',{'result':summarizePayload(_0x2ab2c5,{'maxDepth':0x2})});}catch(_0x44733a){_0x26e90b?.[_0x89ac0c(0x16b)](_0x89ac0c(0x192)+'session\x20'+_0x89ac0c(0x213)+_0x89ac0c(0xd2)+_0x89ac0c(0x181),{'error':summarizeError(_0x44733a)});}}async function _0x2a46bf(_0x7c2acb,_0x55ca1a){const _0x3d10f3=_0x16c48e;_0x49bbb8[_0x3d10f3(0x1e8)+'e']({'url':buildGatewayWsUrl(_0x55ca1a),'token':_0x7c2acb,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x135086[_0x3d10f3(0xb8)+_0x3d10f3(0x12f)],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x2fa015[_0x3d10f3(0x1e2)+_0x3d10f3(0x167)+_0x3d10f3(0x157)+'h'](),'onChatEvent':_0x8fe3e0,'onAgentEvent':_0xc12117=>_0x160eff(_0x3d10f3(0x117)+_0x3d10f3(0x1ce),_0xc12117),'onSessionEvent':_0x2d085c,'onSessionMessageEvent':_0x130201,'onConnected':async()=>{const _0xcd92c6=_0x3d10f3;if(!_0x2d122f||!_0x37fbdf||!_0x52e4a4)return;const _0x3da143=++_0x53360c,_0x15359d=()=>_0x3da143===_0x53360c&&Boolean(_0x2d122f&&_0x37fbdf&&_0x52e4a4);_0x54dbfc?.[_0xcd92c6(0x88)](_0xcd92c6(0x192)+_0xcd92c6(0x202)+_0xcd92c6(0x1f5)+_0xcd92c6(0x116),{'port':_0x37fbdf,'pid':_0x2d122f[_0xcd92c6(0x1c1)],'readyMs':_0x4ea7ba?Date[_0xcd92c6(0x187)]()-_0x4ea7ba:undefined}),_0x246595(_0xcd92c6(0x9a),'gateway\x20'+_0xcd92c6(0x106)+'d',{'health':_0xcd92c6(0xa8),'port':_0x37fbdf,'tokenPresent':!![]}),await _0x4c76c5();try{await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x135086[_0xcd92c6(0x81)+'oot']))[_0xcd92c6(0x20f)+_0xcd92c6(0x1b8)],_0xcd92c6(0x1c9),'agents'),'stateDir':_0x2fa015[_0xcd92c6(0x143)+_0xcd92c6(0x1b1)](),'listAgents':_0x1c0cb7,'shouldContinue':_0x15359d,'createAgent':_0x5a9676=>{const _0xf9c918=_0xcd92c6;if(!_0x15359d())return{'skipped':!![]};return _0x49bbb8[_0xf9c918(0x166)](_0xf9c918(0x1cd)+_0xf9c918(0x164),_0x5a9676);},'updateAgent':_0x1b41f7=>{const _0x2afe79=_0xcd92c6;if(!_0x15359d())return{'skipped':!![]};return _0x49bbb8[_0x2afe79(0x166)](_0x2afe79(0x16f)+'pdate',_0x1b41f7);},'syncSkills':async({agentIds:_0x50af7d,mainWorkspace:_0x26c445})=>{const _0x7a65ee=_0xcd92c6;if(!_0x15359d())return;_0x256369?.[_0x7a65ee(0x88)](_0x7a65ee(0xe8)+_0x7a65ee(0xdc)+_0x7a65ee(0x19c)+_0x7a65ee(0x190)+'d',{'agentIds':_0x50af7d,'mainWorkspace':toHomePath(_0x26c445)});const _0x58eddc=dirname(_0x26c445),_0x15e227=await syncBundledAgentSkillsToConfig({'agentIds':_0x50af7d,'resolveSkillsDir':_0x33c8ec=>_0x33c8ec===_0x7a65ee(0x107)?join(_0x26c445,_0x7a65ee(0x1e1)):join(_0x58eddc,_0x7a65ee(0x150)+'e-'+_0x33c8ec,'skills'),'readConfig':()=>_0x2fa015[_0x7a65ee(0x165)+'ig'](),'writeConfig':_0x5e9f72=>_0x2fa015['writeCon'+_0x7a65ee(0x141)](_0x5e9f72),'markConfigWriteHandledInternally':()=>_0x2fa015[_0x7a65ee(0x144)+_0x7a65ee(0x114)+_0x7a65ee(0x8c)+_0x7a65ee(0x8f)]()});_0x301804=_0x15e227[_0x7a65ee(0xf8)+'y'],_0x256369?.[_0x7a65ee(0x88)](_0x7a65ee(0xe8)+'agent\x20sk'+'ills\x20syn'+_0x7a65ee(0xd4)+'ted',{'agentCount':_0x50af7d[_0x7a65ee(0x10c)],'changed':_0x15e227[_0x7a65ee(0x93)],'discovery':summarizePayload(_0x15e227[_0x7a65ee(0xf8)+'y'],{'maxDepth':0x3})});}}),_0x256369?.[_0xcd92c6(0x88)](_0xcd92c6(0xe8)+'agents\x20e'+_0xcd92c6(0x17c)),_0x160eff(_0xcd92c6(0x168)+_0xcd92c6(0x1d6),{'reason':_0xcd92c6(0x19b)+'agents-r'+_0xcd92c6(0xbe)});}catch(_0x4b73cc){const _0x5618c0=_0x4b73cc instanceof Error?_0x4b73cc[_0xcd92c6(0x9e)]||_0x4b73cc[_0xcd92c6(0x1f2)]:String(_0x4b73cc);_0x20e6cf(_0xcd92c6(0x136),'bundled\x20'+_0xcd92c6(0x1ca)+_0xcd92c6(0x8d)+_0xcd92c6(0x1ba)+_0x5618c0),_0x256369?.[_0xcd92c6(0x16d)]('bundled\x20'+'agents\x20s'+'ync\x20fail'+'ed',{'error':summarizeError(_0x4b73cc)}),console[_0xcd92c6(0x16d)](_0xcd92c6(0x99)+_0xcd92c6(0x216)+_0xcd92c6(0xf5)+_0xcd92c6(0xdb)+_0xcd92c6(0xbd)+_0xcd92c6(0x1fc),_0x4b73cc);}},'onDisconnected':_0x3587d1=>{const _0x279237=_0x3d10f3;_0x54dbfc?.[_0x279237(0x16b)](_0x279237(0x192)+_0x279237(0x202)+_0x279237(0xcf)+_0x279237(0x158),{'reason':_0x3587d1}),_0x1e1e32(_0x3587d1);if(_0x27f02e||!_0x2d122f)return;_0x2cf508({'health':_0x279237(0x209),'message':_0x279237(0x192)+'reconnec'+'ting:\x20'+_0x3587d1});}});}async function _0x31a2cf(_0x17f9fe,_0x7cfb30){const _0x5aa13a=_0x16c48e;if(_0x2d122f)return;_0x4ea7ba=Date[_0x5aa13a(0x187)](),_0x246595('starting','gateway\x20'+_0x5aa13a(0xed),{'health':_0x5aa13a(0x209),'port':_0x7cfb30,'tokenPresent':!![]});const _0x3c29b2=[_0x5aa13a(0x201),_0x5aa13a(0x156),_0x5aa13a(0x1e6)+_0x5aa13a(0x102)+_0x5aa13a(0x1e5),_0x5aa13a(0xb1),_0x17f9fe,_0x5aa13a(0x222),String(_0x7cfb30)];_0x20e6cf(_0x5aa13a(0x136),_0x5aa13a(0x1c9)+_0x5aa13a(0x184)+'\x20run\x20--a'+_0x5aa13a(0xa7)+'onfigure'+_0x5aa13a(0xd9)+'n\x20[REDAC'+'TED]\x20--p'+_0x5aa13a(0x11f)+_0x7cfb30),_0x54dbfc?.[_0x5aa13a(0x88)](_0x5aa13a(0x192)+_0x5aa13a(0x1ae)+_0x5aa13a(0x129)+'quested',{'args':[_0x5aa13a(0x201),_0x5aa13a(0x156),_0x5aa13a(0x1e6)+'unconfig'+_0x5aa13a(0x1e5),_0x5aa13a(0xb1),'[REDACTE'+'D]',_0x5aa13a(0x222),String(_0x7cfb30)],'env':{'OPENCLAW_STATE_DIR':toHomePath(_0x2fa015['resolveS'+_0x5aa13a(0x1b1)]()),'OPENCLAW_CONFIG_PATH':toHomePath(_0x2fa015['resolveC'+_0x5aa13a(0x200)+'h']())}}),_0x2d122f=await spawnClaw(_0x135086['projectR'+_0x5aa13a(0x1b8)],_0x3c29b2,{'env':{'OPENCLAW_STATE_DIR':_0x2fa015[_0x5aa13a(0x143)+_0x5aa13a(0x1b1)](),'OPENCLAW_CONFIG_PATH':_0x2fa015[_0x5aa13a(0x19a)+_0x5aa13a(0x200)+'h']()}}),_0x52e4a4=_0x17f9fe,_0x37fbdf=_0x7cfb30,_0x54dbfc?.['info'](_0x5aa13a(0x192)+_0x5aa13a(0x1ae)+_0x5aa13a(0xbf),{'pid':_0x2d122f[_0x5aa13a(0x1c1)],'port':_0x37fbdf}),_0x2cf508({'health':'unknown','port':_0x37fbdf,'tokenPresent':!![],'message':_0x5aa13a(0x192)+_0x5aa13a(0x1ae)+_0x5aa13a(0x210)+_0x5aa13a(0x1b3)+_0x5aa13a(0x12d)}),await _0x2a46bf(_0x17f9fe,_0x7cfb30);const _0x23769=createLineBuffer({'trim':!![],'onLine':_0x11755f=>_0x20e6cf('stdout',_0x11755f)}),_0x297925=createLineBuffer({'trim':!![],'onLine':_0x1776a3=>_0x20e6cf(_0x5aa13a(0x95),_0x1776a3)});_0x2d122f['stdout']['on'](_0x5aa13a(0x9b),_0x54cacb=>{_0x23769['push'](_0x54cacb['toString']());}),_0x2d122f['stderr']['on'](_0x5aa13a(0x9b),_0x52510f=>{_0x297925['push'](_0x52510f['toString']());}),_0x2d122f['on']('error',_0x2652f7=>{const _0x573cd5=_0x5aa13a;_0x54dbfc?.[_0x573cd5(0x16d)](_0x573cd5(0x192)+_0x573cd5(0x1ae)+_0x573cd5(0x16d),{'error':summarizeError(_0x2652f7)}),_0x20e6cf(_0x573cd5(0x95),_0x2652f7 instanceof Error?_0x2652f7['stack']||_0x2652f7[_0x573cd5(0x1f2)]:String(_0x2652f7));}),_0x2d122f['on'](_0x5aa13a(0x1f8),(_0x585a0b,_0x4b63a2)=>{const _0x1d4b9a=_0x5aa13a;_0x23769['flush'](),_0x297925[_0x1d4b9a(0x134)](),_0x54dbfc?.[_0x1d4b9a(0x16b)](_0x1d4b9a(0x192)+_0x1d4b9a(0x1ae)+'closed',{'pid':_0x2d122f?.[_0x1d4b9a(0x1c1)]??null,'code':_0x585a0b,'signal':_0x4b63a2,'uptimeMs':_0x4ea7ba?Date['now']()-_0x4ea7ba:undefined}),_0x20e6cf(_0x1d4b9a(0x136),_0x1d4b9a(0x192)+_0x1d4b9a(0x1e4)+'ode='+(_0x585a0b??_0x1d4b9a(0x86))+_0x1d4b9a(0x175)+(_0x4b63a2??_0x1d4b9a(0x86))),_0x2d122f=null,_0x52e4a4=null,_0x37fbdf=null,_0x49bbb8[_0x1d4b9a(0x1e8)+'e'](null),_0x1e1e32(_0x1d4b9a(0x192)+_0x1d4b9a(0x1ae)+'exited');if(_0x27f02e){_0x246595(_0x1d4b9a(0x147),_0x1d4b9a(0x192)+_0x1d4b9a(0x147),{'health':'unknown','port':null,'tokenPresent':![]});return;}_0x246595('error',_0x1d4b9a(0x192)+'exited\x20u'+_0x1d4b9a(0xd1)+_0x1d4b9a(0x1aa),{'health':_0x1d4b9a(0x113)+'y','port':null,'tokenPresent':![]});});}async function _0x4eebe0(){const _0x39a799=_0x16c48e;if(_0x2d122f)return;_0x27f02e=![],_0x54dbfc?.['info']('gateway\x20'+_0x39a799(0x172)+_0x39a799(0x1f6)+_0x39a799(0xde)+'ed'),await _0x2fa015[_0x39a799(0x20c)+_0x39a799(0x148)+_0x39a799(0x141)]();const _0x1a559f=await _0x2fa015[_0x39a799(0x182)+_0x39a799(0x1a4)+_0x39a799(0x225)+_0x39a799(0x1fe)]();_0x1a559f?await _0x5af031[_0x39a799(0x1a6)]()[_0x39a799(0x1ed)](_0x530a7c=>{const _0x50d4e2=_0x39a799;_0x20e6cf(_0x50d4e2(0x136),_0x50d4e2(0x1ec)+_0x50d4e2(0xdf)+_0x50d4e2(0x90)+'ck\x20disab'+'led:\x20'+(_0x530a7c instanceof Error?_0x530a7c[_0x50d4e2(0x1f2)]:String(_0x530a7c)));}):_0x54dbfc?.[_0x39a799(0x88)](_0x39a799(0x1ec)+_0x39a799(0xdf)+_0x39a799(0x90)+_0x39a799(0x1dd)+'ed;\x20plug'+_0x39a799(0xe0)+_0x39a799(0xab));await ensureOpenClawDoctorFixed(_0x135086,{'runtimeLogger':_0x54dbfc}),_0x2fa015['watchCon'+_0x39a799(0x146)+'es'](),_0x2fa015[_0x39a799(0x17a)+'ayRestar'+_0x39a799(0x127)](_0x322b26=>{void _0x14ec05(_0x322b26);});const _0x11502b=await _0x2fa015[_0x39a799(0x1da)+'tewaySet'+_0x39a799(0x84)]();_0x54dbfc?.['info'](_0x39a799(0x192)+'settings'+'\x20allocat'+'ed',{'port':_0x11502b['port'],'tokenPresent':Boolean(_0x11502b[_0x39a799(0x1c3)])}),await _0x31a2cf(_0x11502b[_0x39a799(0x1c3)],_0x11502b[_0x39a799(0x1b6)]);}async function _0x4f6f6d(){const _0x32f502=_0x16c48e;_0x27f02e=!![],_0x53360c+=0x1,_0x54dbfc?.[_0x32f502(0x88)](_0x32f502(0x192)+_0x32f502(0x172)+_0x32f502(0x223)+_0x32f502(0x189)+'d',{'pid':_0x2d122f?.['pid']??null,'port':_0x37fbdf}),_0x49bbb8[_0x32f502(0x1e8)+'e'](null);if(_0x2d122f){const _0x15928f=_0x2d122f;_0x2d122f=null;try{_0x15928f[_0x32f502(0xfe)]('SIGTERM');}catch{}await new Promise(_0x574a61=>setTimeout(_0x574a61,0x1f4));if(!_0x15928f[_0x32f502(0xa2)])try{_0x15928f[_0x32f502(0xfe)](_0x32f502(0x1b5));}catch{}}_0x52e4a4=null,_0x37fbdf=null,_0x1e1e32(_0x32f502(0x192)+_0x32f502(0x147)),await _0x5af031[_0x32f502(0xca)](),_0x2fa015[_0x32f502(0x1dc)](),_0x246595(_0x32f502(0x147),_0x32f502(0x192)+_0x32f502(0x147),{'health':_0x32f502(0x209),'port':null,'tokenPresent':![]}),_0x27f02e=![];}async function _0x14ec05(_0x2ab337=_0x16c48e(0x21f)+_0x16c48e(0x122)){const _0x51a223=_0x16c48e;if(_0x4f410a)return{'ok':!![]};return _0x4f410a=!![],_0x54dbfc?.[_0x51a223(0x88)]('gateway\x20'+_0x51a223(0x15b)+_0x51a223(0x189)+'d',{'reason':_0x2ab337}),_0x140ee1=_0x140ee1[_0x51a223(0x174)](async()=>{const _0x5edd4d=_0x51a223;_0x246595(_0x5edd4d(0xb2)+'ng','gateway\x20'+_0x5edd4d(0xb2)+'ng:\x20'+_0x2ab337,{'health':_0x5edd4d(0x209)}),await _0x4f6f6d(),await _0x4eebe0();})[_0x51a223(0x152)](()=>{_0x4f410a=![];}),await _0x140ee1,{'ok':!![]};}async function _0x6b88f1(){const _0x519d2f=_0x16c48e,_0xcb1b45=await loadRuntimeInfo(_0x135086[_0x519d2f(0x81)+_0x519d2f(0x1b8)]);return{'runtimeRoot':_0xcb1b45[_0x519d2f(0x20f)+_0x519d2f(0x1b8)],'openclawVersion':_0xcb1b45[_0x519d2f(0x1c9)+_0x519d2f(0x170)],'openclawWorkingDir':_0xcb1b45[_0x519d2f(0x1c9)+'WorkingD'+'ir'],'openclawBin':_0xcb1b45['openclaw'+_0x519d2f(0x1b7)],'plugins':_0xcb1b45[_0x519d2f(0x98)][_0x519d2f(0x188)](_0x19ea7c=>({'pluginId':_0x19ea7c[_0x519d2f(0x205)],'source':_0x19ea7c['source'],'version':_0x19ea7c['version'],'installPath':_0x19ea7c[_0x519d2f(0xf3)+_0x519d2f(0x1d1)]})),'configPath':_0x2fa015[_0x519d2f(0x19a)+'onfigPat'+'h'](),'stateDir':_0x2fa015[_0x519d2f(0x143)+_0x519d2f(0x1b1)](),'bundledAgentSkillsDiscovery':_0x301804};}async function _0x1c0cb7(){const _0x6500b9=_0x16c48e;_0x256369?.[_0x6500b9(0x88)](_0x6500b9(0x138)+'ist\x20requ'+'ested');const _0x367c08=asRecord(await _0x49bbb8['request'](_0x6500b9(0x217)+'ist',{})),_0x3086b5=getTrimmedString(_0x367c08[_0x6500b9(0x92)+'d'])||_0x6500b9(0x107),_0x415277=Array['isArray'](_0x367c08[_0x6500b9(0xa3)])?[..._0x367c08[_0x6500b9(0xa3)]]:[];return{..._0x367c08,'defaultId':_0x3086b5,'agents':_0x415277};}async function _0x5056cc(){const _0x1e6ba1=_0x16c48e;if(!_0x48a768())return{'defaultId':_0x1e6ba1(0x107),'mainKey':'','scope':'','pending':!![],'agents':[{'id':_0x1e6ba1(0x107),'name':_0x135086[_0x1e6ba1(0xb8)+_0x1e6ba1(0x12f)],'workspace':join(_0x2fa015[_0x1e6ba1(0x143)+'tateDir'](),_0x1e6ba1(0x150)+'e')}]};const _0x4c3bd8=await _0x1c0cb7(),_0x331307=getTrimmedString(_0x4c3bd8['defaultI'+'d'])||_0x1e6ba1(0x107),_0x14e436=Array[_0x1e6ba1(0x160)](_0x4c3bd8[_0x1e6ba1(0xa3)])?[..._0x4c3bd8['agents']]:[];return!_0x14e436[_0x1e6ba1(0x1b4)](_0x433f18=>asRecord(_0x433f18)['id']==='main')&&_0x14e436[_0x1e6ba1(0x15a)]({'id':_0x1e6ba1(0x107),'name':_0x135086[_0x1e6ba1(0xb8)+_0x1e6ba1(0x12f)],'workspace':join(_0x2fa015['resolveS'+_0x1e6ba1(0x1b1)](),_0x1e6ba1(0x150)+'e')}),{..._0x4c3bd8,'defaultId':_0x331307,'agents':_0x14e436};}async function _0x4dc9b0(_0x13054c={}){const _0x1ffeeb=_0x16c48e;await _0x22eaed();const _0x39c99f=Date['now']();_0x26e90b?.[_0x1ffeeb(0x88)]('session\x20'+_0x1ffeeb(0x203)+_0x1ffeeb(0x173),{'payload':summarizePayload(_0x13054c)});const _0x38f25f=await _0x49bbb8[_0x1ffeeb(0x166)]('sessions'+'.create',buildSessionCreateRequestPayload(_0x13054c)),_0x557114=parseSessionCreateResult(_0x38f25f);return _0x26e90b?.['info'](_0x1ffeeb(0x179)+'create\x20c'+'ompleted',{'key':_0x557114[_0x1ffeeb(0x18f)],'sessionId':_0x557114['sessionI'+'d'],'durationMs':Date['now']()-_0x39c99f}),_0x557114;}async function _0x3440db(_0x586c6b={}){const _0x439700=_0x16c48e,_0x311eed=await readSessionMetadata(_0x2fa015['resolveS'+_0x439700(0x1b1)]());if(!_0x48a768())return{'pending':!![],'sessions':[],'pinnedKeys':_0x311eed['pinnedKe'+'ys']};const _0x3e0af7=Date['now'](),_0x9f6a7=Math[_0x439700(0x9d)](0x1,Math[_0x439700(0xe9)](Number(_0x586c6b[_0x439700(0x17e)])||0x64)),_0x36b314={'limit':_0x9f6a7,'includeGlobal':!![],'includeUnknown':![]},_0x4b68d0=getTrimmedString(_0x586c6b['agentId']);if(_0x4b68d0)_0x36b314[_0x439700(0xb6)]=_0x4b68d0;const _0x1b0c79=applySessionMetadata(await _0x49bbb8['request']('sessions'+_0x439700(0x16e),_0x36b314),_0x311eed);return _0x26e90b?.[_0x439700(0x88)](_0x439700(0x1a3)+_0x439700(0x103)+_0x439700(0x9f),{'payload':_0x36b314,'count':Array[_0x439700(0x160)](_0x1b0c79['sessions'])?_0x1b0c79[_0x439700(0x1a3)][_0x439700(0x10c)]:0x0,'durationMs':Date[_0x439700(0x187)]()-_0x3e0af7}),_0x1b0c79;}async function _0x2248b6(_0x3a6788={}){const _0x32fdfd=_0x16c48e;await _0x22eaed();const _0x4eab98=getTrimmedString(_0x3a6788[_0x32fdfd(0x162)+'ey']??_0x3a6788['key']);if(!_0x4eab98)throw new Error('sessionK'+_0x32fdfd(0x13c)+_0x32fdfd(0x132));const _0x207e78=Date[_0x32fdfd(0x187)](),_0x7d5aa4=await _0x49bbb8[_0x32fdfd(0x166)](_0x32fdfd(0x1a3)+_0x32fdfd(0xf0),{'key':_0x4eab98,'deleteTranscript':_0x3a6788[_0x32fdfd(0x118)+_0x32fdfd(0xac)]!==![],'emitLifecycleHooks':!![]}),_0x117965=await readSessionMetadata(_0x2fa015[_0x32fdfd(0x143)+_0x32fdfd(0x1b1)]());return delete _0x117965[_0x32fdfd(0x1f1)][_0x4eab98],_0x117965[_0x32fdfd(0x1de)+'ys']=_0x117965[_0x32fdfd(0x1de)+'ys']['filter'](_0x3a92d9=>_0x3a92d9!==_0x4eab98),await writeSessionMetadata(_0x2fa015[_0x32fdfd(0x143)+_0x32fdfd(0x1b1)](),_0x117965),_0x160eff(_0x32fdfd(0x125)+_0x32fdfd(0x10a),{'type':_0x32fdfd(0x219),'sessionKey':_0x4eab98}),_0x26e90b?.[_0x32fdfd(0x88)](_0x32fdfd(0x179)+'delete\x20c'+_0x32fdfd(0x83),{'sessionKey':_0x4eab98,'deleteTranscript':_0x3a6788[_0x32fdfd(0x118)+'anscript']!==![],'durationMs':Date[_0x32fdfd(0x187)]()-_0x207e78}),_0x7d5aa4;}async function _0x3d4ff6(_0x2ab254={}){const _0x197d0a=_0x16c48e,_0x2bf274=getTrimmedString(_0x2ab254[_0x197d0a(0x162)+'ey']??_0x2ab254[_0x197d0a(0x18f)]);if(!_0x2bf274)throw new Error(_0x197d0a(0x162)+_0x197d0a(0x13c)+'quired');const _0x4636bb=getTrimmedString(_0x2ab254[_0x197d0a(0x228)]??_0x2ab254[_0x197d0a(0x1e9)]??_0x2ab254[_0x197d0a(0x16a)]),_0x3a35bc=await readSessionMetadata(_0x2fa015[_0x197d0a(0x143)+_0x197d0a(0x1b1)]());if(_0x4636bb)_0x3a35bc[_0x197d0a(0x1f1)][_0x2bf274]=_0x4636bb;else delete _0x3a35bc[_0x197d0a(0x1f1)][_0x2bf274];return await writeSessionMetadata(_0x2fa015[_0x197d0a(0x143)+_0x197d0a(0x1b1)](),_0x3a35bc),_0x160eff(_0x197d0a(0x125)+_0x197d0a(0x10a),{'type':_0x197d0a(0x1cf),'sessionKey':_0x2bf274,'name':_0x4636bb}),_0x26e90b?.[_0x197d0a(0x88)]('session\x20'+_0x197d0a(0xef)+'ompleted',{'sessionKey':_0x2bf274,'hasName':Boolean(_0x4636bb),'name':_0x4636bb?summarizeText(_0x4636bb,0x50):undefined}),{'ok':!![]};}async function _0x55df7d(){const _0x3d7460=_0x16c48e,_0x1ecbb3=await readSessionMetadata(_0x2fa015['resolveS'+_0x3d7460(0x1b1)]());return _0x1ecbb3[_0x3d7460(0x1de)+'ys'];}async function _0x3b140e(_0x499364=[]){const _0x47b834=_0x16c48e,_0x49eb0c=await readSessionMetadata(_0x2fa015['resolveS'+_0x47b834(0x1b1)]());return _0x49eb0c[_0x47b834(0x1de)+'ys']=Array['isArray'](_0x499364)?[...new Set(_0x499364[_0x47b834(0x188)](getTrimmedString)[_0x47b834(0x17f)](Boolean))]:[],await writeSessionMetadata(_0x2fa015[_0x47b834(0x143)+_0x47b834(0x1b1)](),_0x49eb0c),_0x160eff(_0x47b834(0x125)+_0x47b834(0x10a),{'type':_0x47b834(0x110)+_0x47b834(0x13d)+_0x47b834(0x116),'pinnedKeys':_0x49eb0c[_0x47b834(0x1de)+'ys']}),_0x26e90b?.[_0x47b834(0x88)]('session\x20'+'pinned\x20k'+'eys\x20upda'+_0x47b834(0x116),{'count':_0x49eb0c[_0x47b834(0x1de)+'ys']['length']}),{'ok':!![],'pinnedKeys':_0x49eb0c[_0x47b834(0x1de)+'ys']};}async function _0x1e6e00(){const _0x4d8b73=_0x16c48e,_0x46dc0c=join(_0x2fa015['resolveS'+_0x4d8b73(0x1b1)](),_0x4d8b73(0x150)+'e');return{'path':_0x46dc0c,'exists':Boolean(await stat(_0x46dc0c)[_0x4d8b73(0x1ed)](()=>null))};}async function _0x2090aa(){const _0x5dddef=_0x16c48e;return readSharedContext(join(_0x2fa015[_0x5dddef(0x143)+'tateDir'](),_0x5dddef(0x150)+'e'));}async function _0x4d13d6(_0x534ef8={}){const _0xebc7d0=_0x16c48e;return _0x256369?.[_0xebc7d0(0x88)](_0xebc7d0(0x150)+'e\x20shared'+_0xebc7d0(0x1c5)+'\x20write\x20r'+_0xebc7d0(0x173),{'files':Object[_0xebc7d0(0x13f)](sanitizeSharedContextPayload(_0x534ef8))}),writeSharedContext(join(_0x2fa015[_0xebc7d0(0x143)+_0xebc7d0(0x1b1)](),_0xebc7d0(0x150)+'e'),_0x534ef8);}async function _0x3aa954(_0x94f538={}){const _0x391921=_0x16c48e;if(!_0x48a768())return{'pending':!![],'jobs':[],'hasMore':![],'nextOffset':0x0};return await _0x49bbb8[_0x391921(0x166)](_0x391921(0xa1)+'t',_0x94f538);}async function _0x13a84c(_0x2cfb0a={}){const _0x1fc8e7=_0x16c48e;return await _0x22eaed(),await _0x49bbb8['request'](_0x1fc8e7(0x1b9),normalizeCronMutationParams(_0x2cfb0a));}async function _0x113f18(_0x4fe84b={}){const _0x575493=_0x16c48e;await _0x22eaed();const _0x9750f6=getTrimmedString(_0x4fe84b[_0x575493(0x89)]??_0x4fe84b['id']);if(!_0x9750f6)throw new Error(_0x575493(0xd5)+_0x575493(0x1d8)+'d');const _0x2df16a=asRecord(_0x4fe84b[_0x575493(0x128)]),_0xd5d67a=Object[_0x575493(0x13f)](_0x2df16a)['length']>0x0?_0x2df16a:{..._0x4fe84b};return delete _0xd5d67a[_0x575493(0x89)],delete _0xd5d67a['id'],await _0x49bbb8[_0x575493(0x166)](_0x575493(0xf7)+_0x575493(0x13b),{'jobId':_0x9750f6,'patch':normalizeCronMutationParams(_0xd5d67a)});}async function _0x5192a4(_0x78a27e={}){const _0x17762d=_0x16c48e;await _0x22eaed();const _0x496974=getTrimmedString(_0x78a27e[_0x17762d(0x89)]??_0x78a27e['id']);if(!_0x496974)throw new Error(_0x17762d(0xd5)+_0x17762d(0x1d8)+'d');return await _0x49bbb8[_0x17762d(0x166)](_0x17762d(0xbb)+_0x17762d(0x1d3),{'jobId':_0x496974});}async function _0x56d59e(_0xfb6be9={}){const _0x3c9bfd=_0x16c48e;await _0x22eaed();const _0x17bba3=getTrimmedString(_0xfb6be9['jobId']??_0xfb6be9['id']);if(!_0x17bba3)throw new Error('jobId\x20is'+_0x3c9bfd(0x1d8)+'d');return await _0x49bbb8['request'](_0x3c9bfd(0x145),{'jobId':_0x17bba3});}async function _0x96d989(_0x570c38={}){const _0x1cedaa=_0x16c48e;return await _0x22eaed(),await _0x49bbb8[_0x1cedaa(0x166)](_0x1cedaa(0x145)+'s',_0x570c38);}async function _0x96d5d1(_0x3d3952={}){const _0x4445ba=_0x16c48e;await _0x22eaed();const _0x501793=Date[_0x4445ba(0x187)]();_0x256369?.[_0x4445ba(0x88)](_0x4445ba(0x1bf)+_0x4445ba(0x1f9)+_0x4445ba(0xb7),{'payload':summarizePayload(_0x3d3952)});try{const _0x5d172f=await _0x49bbb8[_0x4445ba(0x166)](_0x4445ba(0xea)+_0x4445ba(0x9c),_0x3d3952);return _0x256369?.[_0x4445ba(0x88)](_0x4445ba(0x1bf)+_0x4445ba(0x21c)+'mpleted',{'durationMs':Date[_0x4445ba(0x187)]()-_0x501793,'result':summarizePayload(_0x5d172f,{'maxDepth':0x2})}),_0x5d172f;}catch(_0x2b2ade){_0x256369?.[_0x4445ba(0x16d)](_0x4445ba(0x1bf)+_0x4445ba(0x111)+_0x4445ba(0x20e),{'durationMs':Date[_0x4445ba(0x187)]()-_0x501793,'error':summarizeError(_0x2b2ade)});const _0x5a4d74=_0x2b2ade instanceof Error?_0x2b2ade[_0x4445ba(0x1f2)]:String(_0x2b2ade);throw new Error(_0x4445ba(0xce)+_0x5a4d74);}}async function _0x8a1511(_0x3ff9b0={}){const _0x237127=_0x16c48e;_0x256369?.[_0x237127(0x88)](_0x237127(0x18e)+_0x237127(0x87)+_0x237127(0xe2),{'payload':summarizePayload(_0x3ff9b0)});throw new Error(_0x237127(0x206)+_0x237127(0xf6)+'\x20handled'+_0x237127(0x1d9)+_0x237127(0x1b0)+'not\x20Open'+_0x237127(0x211)+_0x237127(0x14c));}async function _0x163b5a(_0x423067={}){const _0x34eb39=_0x16c48e;_0x256369?.[_0x34eb39(0x88)](_0x34eb39(0x112)+'lete\x20req'+_0x34eb39(0xe2),{'payload':summarizePayload(_0x423067)});throw new Error(_0x34eb39(0xcb)+_0x34eb39(0x218)+_0x34eb39(0x19f)+_0x34eb39(0x1d9)+_0x34eb39(0x1b0)+'not\x20Open'+_0x34eb39(0x211)+'eway');}async function _0x3e320f(_0x32012c={}){const _0x475b80=_0x16c48e;await _0x22eaed();const _0x5e1616=getTrimmedString(_0x32012c[_0x475b80(0x162)+'ey']),_0x1951ec=getTrimmedString(_0x32012c[_0x475b80(0x1f2)]),_0x23a954=getTrimmedString(_0x32012c[_0x475b80(0x1ad)+'d'])||randomUUID();if(!_0x5e1616)throw new Error(_0x475b80(0x162)+_0x475b80(0x13c)+_0x475b80(0x132));if(!_0x1951ec)throw new Error(_0x475b80(0x12c)+_0x475b80(0xd7)+_0x475b80(0x176));const _0x4ca819=Date['now']();_0x5eec15?.[_0x475b80(0x88)]('chat\x20str'+'eam\x20requ'+_0x475b80(0x126),{'requestId':_0x23a954,'sessionKey':_0x5e1616,'message':summarizeText(_0x1951ec),'filePaths':summarizeFilePaths(_0x32012c[_0x475b80(0x21d)+'s'])}),_0x30e4ef({'requestId':_0x23a954,'sessionKey':_0x5e1616,'type':_0x475b80(0xbf)}),_0x5181f6[_0x475b80(0x1e0)](_0x23a954,{'runId':_0x23a954,'requestId':_0x23a954,'sessionKey':_0x5e1616,'textLength':0x0,'startedAt':_0x4ca819}),_0x10f80b[_0x475b80(0x1e0)](_0x5e1616,_0x23a954);try{const _0x25398e=await buildAttachments(Array[_0x475b80(0x160)](_0x32012c[_0x475b80(0x21d)+'s'])?_0x32012c[_0x475b80(0x21d)+'s']:[]);_0x5eec15?.[_0x475b80(0x88)](_0x475b80(0x1c0)+_0x475b80(0x1a1)+_0x475b80(0xd6)+'d',{'requestId':_0x23a954,'sessionKey':_0x5e1616,'attachmentCount':_0x25398e[_0x475b80(0x10c)],'attachments':_0x25398e[_0x475b80(0x188)](_0x51bc79=>({'type':_0x51bc79[_0x475b80(0xc8)],'mimeType':_0x51bc79[_0x475b80(0x180)],'fileName':_0x51bc79['fileName'],'contentLength':_0x51bc79['content'][_0x475b80(0x10c)]}))});const _0xd38004=asRecord(await _0x49bbb8[_0x475b80(0x166)](_0x475b80(0x130)+'d',{'sessionKey':_0x5e1616,'message':_0x1951ec,'deliver':![],'idempotencyKey':_0x23a954,..._0x25398e['length']>0x0?{'attachments':_0x25398e}:{}})),_0x2a9e13=getTrimmedString(_0xd38004[_0x475b80(0x208)])||_0x23a954,_0x2d984d=_0x5181f6[_0x475b80(0xfc)](_0x23a954);if(!_0x2d984d)return{'ok':!![],'requestId':_0x23a954,'runId':_0x2a9e13};return _0x2a9e13!==_0x2d984d[_0x475b80(0x208)]&&(_0x5181f6[_0x475b80(0x18c)](_0x2d984d[_0x475b80(0x208)]),_0x2d984d[_0x475b80(0x208)]=_0x2a9e13,_0x5181f6['set'](_0x2a9e13,_0x2d984d)),_0x10f80b[_0x475b80(0x1e0)](_0x5e1616,_0x2a9e13),_0x5eec15?.['info']('chat\x20str'+_0x475b80(0xcd)+_0x475b80(0x19e)+_0x475b80(0x201),{'requestId':_0x23a954,'runId':_0x2a9e13,'sessionKey':_0x5e1616,'durationMs':Date['now']()-_0x4ca819,'status':_0xd38004[_0x475b80(0x171)]}),_0xd38004['status']==='error'&&_0x3c12bf(_0x2d984d,_0x475b80(0x16d),getTrimmedString(_0xd38004['errorMes'+'sage'])||_0x475b80(0x192)+'chat\x20fai'+'led'),{'ok':!![],'requestId':_0x23a954,'runId':_0x2a9e13,'response':_0xd38004};}catch(_0x25d8f0){const _0x3a1db3=_0x51cbfd(_0x23a954),_0x164983=_0x25d8f0 instanceof Error?_0x25d8f0[_0x475b80(0x1f2)]:String(_0x25d8f0);_0x5eec15?.[_0x475b80(0x16d)]('chat\x20str'+_0x475b80(0xaa)+'ed',{'requestId':_0x23a954,'sessionKey':_0x5e1616,'durationMs':Date[_0x475b80(0x187)]()-_0x4ca819,'error':summarizeError(_0x25d8f0)});if(_0x3a1db3)_0x3c12bf(_0x3a1db3,_0x475b80(0x16d),_0x164983);else _0x30e4ef({'requestId':_0x23a954,'sessionKey':_0x5e1616,'type':_0x475b80(0x16d),'message':_0x164983});throw _0x25d8f0;}}async function _0x333a50(_0xe9541b={}){const _0x19ab56=_0x16c48e;_0x537db6();const _0x5cc281=getTrimmedString(_0xe9541b[_0x19ab56(0x162)+'ey']);if(!_0x5cc281)throw new Error('sessionK'+_0x19ab56(0x13c)+'quired');const _0x5d9b0a=Date[_0x19ab56(0x187)](),_0x361cfc=_0x51cbfd(getTrimmedString(_0xe9541b[_0x19ab56(0x1ad)+'d']))??_0x1a386b(_0x5cc281),_0x208247=_0x10f80b[_0x19ab56(0xfc)](_0x5cc281),_0x49e28b={'sessionKey':_0x5cc281};if(_0x361cfc?.[_0x19ab56(0x208)])_0x49e28b[_0x19ab56(0x208)]=_0x361cfc['runId'];else{if(_0x208247)_0x49e28b[_0x19ab56(0x208)]=_0x208247;}const _0x2e852f=await _0x49bbb8[_0x19ab56(0x166)]('chat.abo'+'rt',_0x49e28b);if(_0x361cfc)_0x3c12bf(_0x361cfc,_0x19ab56(0x15c));return _0x5eec15?.['info'](_0x19ab56(0x85)+_0x19ab56(0x101)+_0x19ab56(0x193),{'sessionKey':_0x5cc281,'requestId':getTrimmedString(_0xe9541b[_0x19ab56(0x1ad)+'d']),'runId':_0x49e28b[_0x19ab56(0x208)],'durationMs':Date[_0x19ab56(0x187)]()-_0x5d9b0a}),_0x2e852f;}async function _0x11ded7(_0x3f87a5={}){const _0x5ef6c3=_0x16c48e,_0x4c8cb8=getTrimmedString(_0x3f87a5['sessionK'+'ey']);if(!_0x4c8cb8)throw new Error(_0x5ef6c3(0x162)+_0x5ef6c3(0x13c)+_0x5ef6c3(0x132));if(!_0x48a768())return[];const _0x688f59=await _0x49bbb8[_0x5ef6c3(0x166)](_0x5ef6c3(0xf9)+_0x5ef6c3(0x198),{'sessionKey':_0x4c8cb8,'limit':Math[_0x5ef6c3(0x9d)](0x1,Math[_0x5ef6c3(0xe9)](Number(_0x3f87a5[_0x5ef6c3(0x17e)])||0xc8))});return _0x5eec15?.[_0x5ef6c3(0x88)](_0x5ef6c3(0x155)+_0x5ef6c3(0x104)+_0x5ef6c3(0x10f),{'sessionKey':_0x4c8cb8,'limit':Math[_0x5ef6c3(0x9d)](0x1,Math[_0x5ef6c3(0xe9)](Number(_0x3f87a5[_0x5ef6c3(0x17e)])||0xc8)),'result':summarizePayload(_0x688f59,{'maxDepth':0x2})}),_0x688f59;}async function _0x173e1e(_0x42bb8a=''){const _0x1841c3=_0x16c48e;if(!_0x48a768())return{'pending':!![],'skills':[]};const _0x5e4ceb=getTrimmedString(_0x42bb8a),_0xc6aa27=await _0x49bbb8[_0x1841c3(0x166)](_0x1841c3(0x1a9)+_0x1841c3(0xee),_0x5e4ceb?{'agentId':_0x5e4ceb}:{}),[_0x528bee,_0x207973]=await Promise[_0x1841c3(0x1ef)]([_0x2fa015[_0x1841c3(0x165)+'ig']()['catch'](()=>({})),readSkillMarketRegistry(_0x2fa015['resolveS'+_0x1841c3(0x1b1)]())['catch'](()=>({}))]),_0x41081e=mapMarketRegisteredSkills(_0xc6aa27,_0x207973),_0x495740=filterSkillsForAgent(_0x41081e,_0x528bee,_0x5e4ceb);return _0x256369?.[_0x1841c3(0x88)]('skills\x20s'+_0x1841c3(0xe4)+_0x1841c3(0x169),{'agentId':_0x5e4ceb||_0x1841c3(0x1d5),'result':summarizePayload(_0x495740,{'maxDepth':0x2})}),_0x495740;}return{'on':_0x2a7e00,'start':_0x4eebe0,'stop':_0x4f6f6d,'restart':_0x14ec05,'runtimeInfo':_0x6b88f1,'gatewayToken':()=>_0x52e4a4||'','gatewayPort':()=>_0x37fbdf||0x0,'getStatus':()=>_0x5d0417,'getRecentLogs':_0x490a11,'answerAskUserQuestion':_0x536a5e=>_0x5af031['answer'](_0x536a5e),'agents':{'list':_0x5056cc},'skills':{'status':_0x173e1e,'install':_0x96d5d1,'update':_0x8a1511,'delete':_0x163b5a},'sessions':{'create':_0x4dc9b0,'list':_0x3440db,'delete':_0x2248b6,'rename':_0x3d4ff6,'pinnedKeys':_0x55df7d,'setPinnedKeys':_0x3b140e},'workspace':{'directoryInfo':_0x1e6e00,'sharedContext':_0x2090aa,'writeSharedContext':_0x4d13d6},'cron':{'list':_0x3aa954,'create':_0x13a84c,'update':_0x113f18,'remove':_0x5192a4,'runOnce':_0x56d59e,'logs':_0x96d989},'models':{'settings':()=>_0x2fa015[_0x16c48e(0xc4)+_0x16c48e(0x214)](),'setSettings':async(_0x1ae552={})=>{const _0x2af3eb=_0x16c48e,_0x52c190=_0x1ae552?.[_0x2af3eb(0xf1)+_0x2af3eb(0x199)]!==![];return await _0x2fa015[_0x2af3eb(0xc7)+'Settings'](_0x1ae552,{'restartOnChange':_0x52c190}),_0x2fa015[_0x2af3eb(0xc4)+_0x2af3eb(0x214)]();},'setSelfOperatedModels':_0x47d65d=>_0x2fa015['setSelfO'+_0x16c48e(0xe5)+'odels'](_0x47d65d),'selectedModelId':async()=>{const _0xcaa390=_0x16c48e,_0x24b7ab=await _0x2fa015[_0xcaa390(0xc4)+_0xcaa390(0x214)]();return _0x24b7ab['provider']&&_0x24b7ab['modelNam'+'e']?_0x24b7ab[_0xcaa390(0xb0)]+'/'+_0x24b7ab[_0xcaa390(0xd3)+'e']:'';},'customModels':async()=>{const _0x1066be=_0x16c48e,_0x2245d8=await _0x2fa015[_0x1066be(0x165)+'igRaw'](),_0x6c39b1=asRecord(_0x2245d8[_0x1066be(0x105)]);return Array[_0x1066be(0x160)](_0x6c39b1[_0x1066be(0x11c)+'dels'])?_0x6c39b1[_0x1066be(0x11c)+_0x1066be(0xb3)]:[];}},'config':{'read':()=>_0x2fa015[_0x16c48e(0x165)+_0x16c48e(0x15f)]()},'chat':{'stream':_0x3e320f,'abort':_0x333a50,'history':_0x11ded7}};}
@@ -1 +1 @@
1
- const _0xc1f966=_0x1944;(function(_0x2bb854,_0x5e1c15){const _0x2cd25d=_0x1944,_0x29aae9=_0x2bb854();while(!![]){try{const _0x4d5502=parseInt(_0x2cd25d(0x17b))/0x1+parseInt(_0x2cd25d(0x170))/0x2*(parseInt(_0x2cd25d(0x110))/0x3)+parseInt(_0x2cd25d(0x137))/0x4+-parseInt(_0x2cd25d(0xf5))/0x5+-parseInt(_0x2cd25d(0x17f))/0x6*(parseInt(_0x2cd25d(0xfa))/0x7)+-parseInt(_0x2cd25d(0x188))/0x8+parseInt(_0x2cd25d(0x16a))/0x9;if(_0x4d5502===_0x5e1c15)break;else _0x29aae9['push'](_0x29aae9['shift']());}catch(_0x478bc8){_0x29aae9['push'](_0x29aae9['shift']());}}}(_0x4876,0xe13ef));import{Buffer}from'node:buffer';import{createHash,createPrivateKey,createPublicKey,generateKeyPairSync,randomUUID,sign}from'node:crypto';import{chmodSync,existsSync,mkdirSync,readFileSync,writeFileSync}from'node:fs';import{dirname}from'node:path';import _0x9c6169 from'ws';const ED25519_SPKI_PREFIX=Buffer[_0xc1f966(0x178)]('302a3005'+_0xc1f966(0x17d)+_0xc1f966(0x14f),_0xc1f966(0x132)),BASE64_PADDING_REGEX=/=+$/g,UPPERCASE_ASCII_REGEX=/[A-Z]/g;function isRecord(_0x547ad7){const _0x5b443f=_0xc1f966;return Boolean(_0x547ad7)&&typeof _0x547ad7===_0x5b443f(0x181)&&!Array['isArray'](_0x547ad7);}function formatUnknownError(_0x250f62){const _0x571053=_0xc1f966;if(_0x250f62 instanceof Error)return _0x250f62[_0x571053(0xe5)];return String(_0x250f62??'');}function isLocalGatewayConnRefused(_0x5164f8){const _0x380ae0=_0xc1f966,_0x3e9519=formatUnknownError(_0x5164f8);return/\bECONNREFUSED\b/i['test'](_0x3e9519)&&/127\.0\.0\.1:\d+/[_0x380ae0(0x12a)](_0x3e9519);}function base64UrlEncode(_0xc8182d){const _0x12da53=_0xc1f966;return _0xc8182d['toString']('base64')[_0x12da53(0x13d)+'ll']('+','-')[_0x12da53(0x13d)+'ll']('/','_')[_0x12da53(0x18e)](BASE64_PADDING_REGEX,'');}function derivePublicKeyRaw(_0x15009f){const _0x503f63=_0xc1f966,_0x1aa4ef=createPublicKey(_0x15009f)['export']({'type':_0x503f63(0x193),'format':_0x503f63(0xef)}),_0x404b8e=Buffer['isBuffer'](_0x1aa4ef)?_0x1aa4ef:Buffer[_0x503f63(0x178)](_0x1aa4ef),_0x137037=_0x404b8e[_0x503f63(0x121)]===ED25519_SPKI_PREFIX[_0x503f63(0x121)]+0x20&&_0x404b8e['subarray'](0x0,ED25519_SPKI_PREFIX[_0x503f63(0x121)])['equals'](ED25519_SPKI_PREFIX);return _0x137037?_0x404b8e['subarray'](ED25519_SPKI_PREFIX[_0x503f63(0x121)]):_0x404b8e;}function fingerprintPublicKey(_0x5a5427){const _0x594ca=_0xc1f966;return createHash('sha256')[_0x594ca(0x11a)](derivePublicKeyRaw(_0x5a5427))[_0x594ca(0xfd)]('hex');}function publicKeyRawBase64UrlFromPem(_0x52d615){return base64UrlEncode(derivePublicKeyRaw(_0x52d615));}function _0x1944(_0x500315,_0xbf187e){_0x500315=_0x500315-0xda;const _0x4876d3=_0x4876();let _0x19447b=_0x4876d3[_0x500315];return _0x19447b;}function signDevicePayload(_0x23e1ae,_0x5c9756){const _0x5a7513=_0xc1f966,_0xf9673e=createPrivateKey(_0x23e1ae);return base64UrlEncode(sign(null,Buffer[_0x5a7513(0x178)](_0x5c9756,_0x5a7513(0x103)),_0xf9673e));}function normalizeDeviceMetadataForAuth(_0x1f6c27){const _0x5291a0=_0xc1f966,_0xbe1e7c=typeof _0x1f6c27===_0x5291a0(0x10d)?_0x1f6c27[_0x5291a0(0xf7)]():'';if(!_0xbe1e7c)return'';return _0xbe1e7c['replace'](UPPERCASE_ASCII_REGEX,_0x196f8c=>String[_0x5291a0(0xde)+_0x5291a0(0x16c)](_0x196f8c[_0x5291a0(0x152)+'At'](0x0)+0x20));}function buildDeviceAuthPayloadV3(_0x412b03){const _0x5df333=_0xc1f966;return['v3',_0x412b03[_0x5df333(0x194)],_0x412b03[_0x5df333(0xe1)],_0x412b03['clientMo'+'de'],_0x412b03[_0x5df333(0x101)],_0x412b03['scopes'][_0x5df333(0xf2)](','),String(_0x412b03[_0x5df333(0x15c)+'Ms']),_0x412b03[_0x5df333(0x195)]??'',_0x412b03[_0x5df333(0xe3)],normalizeDeviceMetadataForAuth(_0x412b03['platform']),normalizeDeviceMetadataForAuth(_0x412b03[_0x5df333(0x171)+'mily'])]['join']('|');}function _0x4876(){const _0x37b96d=['connect.','4095640DeaQbO','ers','reconnec','ction\x20ti','lengeTim','once','replace','privateK','expectFi','failed\x20t','eyPem','spki','deviceId','token','failed','DateTime','tTimer','stringif','eadyWait','fromChar','gateway\x20','handleDi','clientId','t\x20stoppe','nonce','is\x20not\x20l','message','WS\x20hands','config','rsion','agent','nected','connecte','shouldRe','d\x20(','status','der','now','ted','join','resolveR','ting','8078970NbSavr','wujie-sh','trim','viceFami','rejectRe','77SNOTsk','removeAl','WS\x20conne','digest','Timer','ell/','nectChal','role','chat','utf8','publicKe','.approva','dentity','hallenge','request\x20','onDiscon','req','timeout','t\x20connec','string','\x20yet','resolved','2301WPAXNW','hake\x20mis','pending','eout','ct\x20faile','push','res','e\x20timeou','sing\x20non','WS\x20close','update','yPem','clearTim','WS\x20error','resolve','.read','clientDi','length','adyWaite','tBackoff','sconnect','readyWai','ble','timed\x20ou','connect','payload','test','g\x20nonce','operator','queueCon','device\x20i','o\x20send\x20g','sendConn','challeng','hex','rejectPe','request','ed25519','open','6593732QSBdXi','WS\x20disco','connect\x20','restart','nding','pkcs8','replaceA','vent','ssage','istening','lReady','type','parse','ed\x20out','ured','初始化\x20gate','onConnec','ters','hake\x20tim','.admin','.write','error','identity','nnected','70032100','t\x20restar','connectS','charCode','dentity\x20','accepted','event','clientVe','platform','ent','Options','url','t\x20config','signedAt','entries','waitUnti','splayNam','failed:\x20','close','WS\x20is\x20no','.pairing','ect','med\x20out','Format','t:\x20','toString','handleMe','21369024NssGZI','way\x20设备身份','Code','onChatEv','skipRead','Path','106XeoNaN','deviceFa','lListene','clientMo','e\x20missin','delete','locale','method','from','entity','pem','480725CRiHuG','configur','06032b65','nal','814794nvSHus','connectN','object','connectC','reject','export','WS\x20clien','stop'];_0x4876=function(){return _0x37b96d;};return _0x4876();}function writeIdentityFile(_0x331109,_0x4fdd99,_0x58d3b2){const _0x537162=_0xc1f966;mkdirSync(dirname(_0x331109),{'recursive':!![]}),writeFileSync(_0x331109,JSON[_0x537162(0xdc)+'y']({'version':0x1,..._0x4fdd99,'createdAtMs':_0x58d3b2},null,0x2)+'\x0a',{'mode':0x180});try{chmodSync(_0x331109,0x180);}catch{}}function generateDeviceIdentity(){const _0x4b29c3=_0xc1f966,{publicKey:_0x296542,privateKey:_0x13566c}=generateKeyPairSync(_0x4b29c3(0x135)),_0x4d4de5=_0x296542[_0x4b29c3(0x184)]({'type':_0x4b29c3(0x193),'format':'pem'})[_0x4b29c3(0x168)](),_0x16e0b0=_0x13566c[_0x4b29c3(0x184)]({'type':_0x4b29c3(0x13c),'format':_0x4b29c3(0x17a)})[_0x4b29c3(0x168)]();return{'deviceId':fingerprintPublicKey(_0x4d4de5),'publicKeyPem':_0x4d4de5,'privateKeyPem':_0x16e0b0};}function loadOrCreateDeviceIdentity(_0x594ad6){const _0x11a65d=_0xc1f966;if(existsSync(_0x594ad6))try{const _0x1cb133=JSON['parse'](readFileSync(_0x594ad6,_0x11a65d(0x103))),_0xdc176a=typeof _0x1cb133?.[_0x11a65d(0x104)+_0x11a65d(0x11b)]===_0x11a65d(0x10d)?_0x1cb133['publicKe'+_0x11a65d(0x11b)]:'',_0x1e0162=typeof _0x1cb133?.[_0x11a65d(0x18f)+_0x11a65d(0x192)]===_0x11a65d(0x10d)?_0x1cb133['privateK'+'eyPem']:'';if(_0xdc176a&&_0x1e0162){const _0x2efbc7={'deviceId':fingerprintPublicKey(_0xdc176a),'publicKeyPem':_0xdc176a,'privateKeyPem':_0x1e0162};return _0x1cb133?.[_0x11a65d(0x194)]!==_0x2efbc7[_0x11a65d(0x194)]&&writeIdentityFile(_0x594ad6,_0x2efbc7,Date['now']()),_0x2efbc7;}}catch{}const _0x3f8504=generateDeviceIdentity();return writeIdentityFile(_0x594ad6,_0x3f8504,Date['now']()),_0x3f8504;}export class ClawGatewayWsClient{['ws']=null;[_0xc1f966(0xe7)]=null;[_0xc1f966(0x112)]=new Map();[_0xc1f966(0x125)+_0xc1f966(0x148)]=[];[_0xc1f966(0xec)+_0xc1f966(0x128)]=![];[_0xc1f966(0x18a)+'tTimer']=null;[_0xc1f966(0x182)+_0xc1f966(0x107)+'Timer']=null;['connectN'+'once']=null;[_0xc1f966(0x151)+'ent']=![];[_0xc1f966(0xeb)+'d']=![];[_0xc1f966(0x18a)+_0xc1f966(0x123)+'Ms']=0x320;[_0xc1f966(0x194)+_0xc1f966(0x179)]=null;[_0xc1f966(0x17c)+'e'](_0x20a0bb){const _0x21edfc=_0xc1f966;if(!_0x20a0bb){this['stop']();return;}const _0x7a2898=this[_0x21edfc(0xe7)];this[_0x21edfc(0xe7)]=_0x20a0bb,this[_0x21edfc(0xec)+_0x21edfc(0x128)]=!![];try{this[_0x21edfc(0x194)+_0x21edfc(0x179)]=loadOrCreateDeviceIdentity(_0x20a0bb[_0x21edfc(0x14d)+_0x21edfc(0x16f)]);}catch(_0x17cf74){const _0x5af287=_0x17cf74 instanceof Error?_0x17cf74[_0x21edfc(0xe5)]:_0x21edfc(0x146)+_0x21edfc(0x16b)+'失败';this[_0x21edfc(0x186)](),_0x20a0bb[_0x21edfc(0x109)+_0x21edfc(0xea)](_0x5af287);return;}const _0x171870=!_0x7a2898||_0x7a2898[_0x21edfc(0x15a)]!==_0x20a0bb[_0x21edfc(0x15a)]||_0x7a2898[_0x21edfc(0x195)]!==_0x20a0bb[_0x21edfc(0x195)]||_0x7a2898[_0x21edfc(0xe1)]!==_0x20a0bb[_0x21edfc(0xe1)]||_0x7a2898['clientMo'+'de']!==_0x20a0bb[_0x21edfc(0x173)+'de']||_0x7a2898['clientVe'+'rsion']!==_0x20a0bb[_0x21edfc(0x156)+'rsion']||_0x7a2898['identity'+_0x21edfc(0x16f)]!==_0x20a0bb['identity'+_0x21edfc(0x16f)];if(_0x171870){this['restart']();return;}if(!this['ws'])this[_0x21edfc(0x128)]();}[_0xc1f966(0x186)](){const _0x2f1d5c=_0xc1f966;this[_0x2f1d5c(0xec)+_0x2f1d5c(0x128)]=![],this[_0x2f1d5c(0xeb)+'d']=![],this['connectN'+_0x2f1d5c(0x18d)]=null,this['connectS'+_0x2f1d5c(0x158)]=![],this[_0x2f1d5c(0x11c)+'ers'](),this[_0x2f1d5c(0x133)+_0x2f1d5c(0x13b)](new Error(_0x2f1d5c(0xdf)+_0x2f1d5c(0x185)+'t\x20stoppe'+'d')),this[_0x2f1d5c(0xf9)+_0x2f1d5c(0x122)+'rs'](new Error('gateway\x20'+_0x2f1d5c(0x185)+_0x2f1d5c(0xe2)+'d'));if(this['ws']){try{this['ws'][_0x2f1d5c(0x161)]();}catch{}this['ws']=null;}this[_0x2f1d5c(0x194)+_0x2f1d5c(0x179)]=null,this[_0x2f1d5c(0xe7)]=null;}async[_0xc1f966(0x134)](_0x48f5c6,_0x459847={},_0xc4e0a3={}){const _0x649665=_0xc1f966;if(!_0xc4e0a3[_0x649665(0x16e)+'yCheck'])await this[_0x649665(0x15e)+_0x649665(0x141)]();const _0x5d6cf7=this['ws'];if(!_0x5d6cf7||_0x5d6cf7['readySta'+'te']!==_0x9c6169['OPEN'])throw new Error(_0x649665(0xdf)+_0x649665(0x162)+_0x649665(0x10c)+_0x649665(0xf1));const _0x5b4c1d=randomUUID(),_0x5287ce=_0xc4e0a3['timeoutM'+'s']??0x7530;return await new Promise((_0x51433b,_0x5ac7f5)=>{const _0x513afc=_0x649665,_0x38f7a6=setTimeout(()=>{const _0xb0d4d4=_0x1944;this[_0xb0d4d4(0x112)][_0xb0d4d4(0x175)](_0x5b4c1d),_0x5ac7f5(new Error('gateway\x20'+'request\x20'+_0xb0d4d4(0x127)+_0xb0d4d4(0x167)+_0x48f5c6));},_0x5287ce);this[_0x513afc(0x112)]['set'](_0x5b4c1d,{'method':_0x48f5c6,'resolve':_0x4f233a=>{clearTimeout(_0x38f7a6),_0x51433b(_0x4f233a);},'reject':_0x3ec12c=>{clearTimeout(_0x38f7a6),_0x5ac7f5(_0x3ec12c);},'expectFinal':_0xc4e0a3[_0x513afc(0x190)+_0x513afc(0x17e)]===!![],'timeout':_0x38f7a6});try{_0x5d6cf7['send'](JSON[_0x513afc(0xdc)+'y']({'type':_0x513afc(0x10a),'id':_0x5b4c1d,'method':_0x48f5c6,'params':_0x459847}));}catch(_0x38ad24){this[_0x513afc(0x112)]['delete'](_0x5b4c1d),clearTimeout(_0x38f7a6),_0x5ac7f5(_0x38ad24 instanceof Error?_0x38ad24:new Error(_0x513afc(0x191)+_0x513afc(0x12f)+'ateway\x20r'+'equest'));}});}[_0xc1f966(0x13a)](){const _0x37e002=_0xc1f966;this[_0x37e002(0xeb)+'d']=![],this[_0x37e002(0x180)+'once']=null,this[_0x37e002(0x151)+_0x37e002(0x158)]=![],this['clearTim'+_0x37e002(0x189)](),this[_0x37e002(0x133)+_0x37e002(0x13b)](new Error(_0x37e002(0xdf)+_0x37e002(0x185)+_0x37e002(0x150)+_0x37e002(0xf4))),this['rejectRe'+'adyWaite'+'rs'](new Error(_0x37e002(0xdf)+_0x37e002(0x185)+_0x37e002(0x150)+'ting'));if(this['ws']){try{this['ws']['terminat'+'e']();}catch{}this['ws']=null;}this['connect']();}[_0xc1f966(0x128)](){const _0x43277e=_0xc1f966;if(!this['config']||this['ws'])return;const _0x3b2747=new _0x9c6169(this[_0x43277e(0xe7)]['url']);this['ws']=_0x3b2747,_0x3b2747['on'](_0x43277e(0x136),()=>this[_0x43277e(0x12d)+'nectChal'+_0x43277e(0x18c)+_0x43277e(0x113)]()),_0x3b2747['on']('message',_0x29e932=>this[_0x43277e(0x169)+_0x43277e(0x13f)](_0x29e932['toString']())),_0x3b2747['on'](_0x43277e(0x161),(_0x56d589,_0x3c5127)=>{const _0x5e92ab=_0x43277e;if(this['connecte'+'d']){const _0x43c554=_0x3c5127[_0x5e92ab(0x168)]()||'code='+_0x56d589;this['handleDi'+'sconnect'](_0x5e92ab(0xdf)+_0x5e92ab(0x119)+_0x5e92ab(0xed)+_0x43c554+')');}else this['handleDi'+_0x5e92ab(0x124)]('');}),_0x3b2747['on'](_0x43277e(0x14c),_0x40bee4=>{const _0x275d79=_0x43277e;if(isLocalGatewayConnRefused(_0x40bee4)){this[_0x275d79(0xe0)+'sconnect'](_0x275d79(0xdf)+_0x275d79(0xe4)+_0x275d79(0x140)+_0x275d79(0x10e));return;}const _0x18dbef=formatUnknownError(_0x40bee4);this['handleDi'+_0x275d79(0x124)](_0x18dbef?'gateway\x20'+'WS\x20error'+':\x20'+_0x18dbef:'gateway\x20'+_0x275d79(0x11d));});}[_0xc1f966(0x12d)+_0xc1f966(0x100)+_0xc1f966(0x18c)+'eout'](){const _0xf460bf=_0xc1f966;this['connectN'+_0xf460bf(0x18d)]=null,this[_0xf460bf(0x151)+_0xf460bf(0x158)]=![];if(this[_0xf460bf(0x182)+_0xf460bf(0x107)+_0xf460bf(0xfe)])clearTimeout(this['connectC'+_0xf460bf(0x107)+'Timer']);this[_0xf460bf(0x182)+'hallenge'+_0xf460bf(0xfe)]=setTimeout(()=>{const _0x3f732c=_0xf460bf;if(this[_0x3f732c(0x151)+_0x3f732c(0x158)]||!this['ws']||this['ws']['readySta'+'te']!==_0x9c6169['OPEN'])return;this[_0x3f732c(0xe0)+'sconnect'](_0x3f732c(0xdf)+_0x3f732c(0xe6)+_0x3f732c(0x149)+_0x3f732c(0x144)),this['ws']?.['close'](0x3f0,'connect\x20'+_0x3f732c(0x131)+_0x3f732c(0x117)+'t');},0x7d0);}async[_0xc1f966(0x130)+_0xc1f966(0x164)](){const _0x240a90=_0xc1f966,_0xfc1650=this['config'];if(!_0xfc1650||this[_0x240a90(0x151)+_0x240a90(0x158)])return;const _0x3feb1c=this['connectN'+_0x240a90(0x18d)]?.[_0x240a90(0xf7)]()??'';if(!_0x3feb1c){this[_0x240a90(0xe0)+_0x240a90(0x124)]('gateway\x20'+_0x240a90(0xe6)+'hake\x20mis'+_0x240a90(0x118)+'ce'),this['ws']?.[_0x240a90(0x161)](0x3f0,_0x240a90(0x139)+'challeng'+_0x240a90(0x174)+_0x240a90(0x12b));return;}this[_0x240a90(0x151)+_0x240a90(0x158)]=!![];this[_0x240a90(0x182)+'hallenge'+_0x240a90(0xfe)]&&(clearTimeout(this[_0x240a90(0x182)+_0x240a90(0x107)+_0x240a90(0xfe)]),this[_0x240a90(0x182)+_0x240a90(0x107)+'Timer']=null);if(!this[_0x240a90(0x194)+'entity'])try{this[_0x240a90(0x194)+_0x240a90(0x179)]=loadOrCreateDeviceIdentity(_0xfc1650['identity'+'Path']);}catch(_0x1e4608){this['handleDi'+'sconnect'](_0x1e4608 instanceof Error?_0x1e4608['message']:_0x240a90(0x191)+'o\x20load\x20g'+'ateway\x20i'+_0x240a90(0x106)),this['ws']?.['close'](0x3f0,_0x240a90(0x12e)+_0x240a90(0x153)+'unavaila'+_0x240a90(0x126));return;}const _0x1a1890=_0x240a90(0x12c),_0x2ad788=['operator'+_0x240a90(0x11f),_0x240a90(0x12c)+_0x240a90(0x14b),_0x240a90(0x12c)+_0x240a90(0x14a),_0x240a90(0x12c)+_0x240a90(0x105)+'ls',_0x240a90(0x12c)+_0x240a90(0x163)],_0x249314=_0xfc1650[_0x240a90(0x195)]['trim'](),_0x21c9eb=Date[_0x240a90(0xf0)](),_0x5f53da=buildDeviceAuthPayloadV3({'deviceId':this[_0x240a90(0x194)+'entity']['deviceId'],'clientId':_0xfc1650[_0x240a90(0xe1)],'clientMode':_0xfc1650[_0x240a90(0x173)+'de'],'role':_0x1a1890,'scopes':_0x2ad788,'signedAtMs':_0x21c9eb,'token':_0x249314||null,'nonce':_0x3feb1c,'platform':process['platform'],'deviceFamily':_0xfc1650['clientDe'+_0x240a90(0xf8)+'ly']}),_0x1bf2b1={'minProtocol':0x4,'maxProtocol':0x4,'client':{'id':_0xfc1650[_0x240a90(0xe1)],'displayName':_0xfc1650[_0x240a90(0x120)+_0x240a90(0x15f)+'e'],'version':_0xfc1650['clientVe'+'rsion'],'platform':process[_0x240a90(0x157)],'deviceFamily':_0xfc1650['clientDe'+_0x240a90(0xf8)+'ly'],'mode':_0xfc1650[_0x240a90(0x173)+'de']},'caps':[],'role':_0x1a1890,'scopes':_0x2ad788,'auth':_0x249314?{'token':_0x249314}:undefined,'device':{'id':this[_0x240a90(0x194)+_0x240a90(0x179)]['deviceId'],'publicKey':publicKeyRawBase64UrlFromPem(this[_0x240a90(0x194)+_0x240a90(0x179)][_0x240a90(0x104)+_0x240a90(0x11b)]),'signature':signDevicePayload(this[_0x240a90(0x194)+'entity'][_0x240a90(0x18f)+_0x240a90(0x192)],_0x5f53da),'signedAt':_0x21c9eb,'nonce':_0x3feb1c},'locale':Intl[_0x240a90(0xda)+_0x240a90(0x166)]()[_0x240a90(0x10f)+_0x240a90(0x159)]()[_0x240a90(0x176)],'userAgent':_0x240a90(0xf6)+_0x240a90(0xff)+_0xfc1650[_0x240a90(0x156)+_0x240a90(0xe8)]};try{await this[_0x240a90(0x134)](_0x240a90(0x128),_0x1bf2b1,{'timeoutMs':0x2710,'skipReadyCheck':!![]}),this[_0x240a90(0xeb)+'d']=!![],this['reconnec'+'tBackoff'+'Ms']=0x320,this[_0x240a90(0xf3)+_0x240a90(0xdd)+_0x240a90(0x189)](),this[_0x240a90(0xe7)]?.[_0x240a90(0x147)+'ted']?.();}catch(_0xeec697){this[_0x240a90(0xe0)+_0x240a90(0x124)](_0xeec697 instanceof Error?_0xeec697['message']:_0x240a90(0xdf)+_0x240a90(0xfc)+_0x240a90(0x114)+'d'),this['ws']?.[_0x240a90(0x161)](0x3f0,'connect\x20'+_0x240a90(0x196));}}[_0xc1f966(0x169)+_0xc1f966(0x13f)](_0x2c88ed){const _0x530697=_0xc1f966;let _0x19f4b9;try{_0x19f4b9=JSON[_0x530697(0x143)](_0x2c88ed);}catch{return;}if(!isRecord(_0x19f4b9)||typeof _0x19f4b9[_0x530697(0x142)]!==_0x530697(0x10d))return;if(_0x19f4b9['type']===_0x530697(0x155)){const _0x1a059f=typeof _0x19f4b9[_0x530697(0x155)]===_0x530697(0x10d)?_0x19f4b9[_0x530697(0x155)]:'';if(!_0x1a059f)return;const _0xd3657=isRecord(_0x19f4b9[_0x530697(0x129)])?_0x19f4b9['payload']:{};if(_0x1a059f===_0x530697(0x187)+_0x530697(0x131)+'e'){const _0xde651f=typeof _0xd3657['nonce']===_0x530697(0x10d)?_0xd3657['nonce'][_0x530697(0xf7)]():'';if(!_0xde651f){this[_0x530697(0xe0)+_0x530697(0x124)](_0x530697(0xdf)+_0x530697(0xe6)+_0x530697(0x111)+'sing\x20non'+'ce'),this['ws']?.['close'](0x3f0,_0x530697(0x139)+_0x530697(0x131)+'e\x20missin'+_0x530697(0x12b));return;}this[_0x530697(0x180)+_0x530697(0x18d)]=_0xde651f,void this['sendConn'+_0x530697(0x164)]();return;}if(_0x1a059f===_0x530697(0x102))this[_0x530697(0xe7)]?.[_0x530697(0x16d)+_0x530697(0x158)]?.(_0xd3657);if(_0x1a059f===_0x530697(0xe9))this[_0x530697(0xe7)]?.['onAgentE'+_0x530697(0x13e)]?.(_0xd3657);return;}if(_0x19f4b9[_0x530697(0x142)]!==_0x530697(0x116))return;const _0x45daeb=typeof _0x19f4b9['id']===_0x530697(0x10d)?_0x19f4b9['id']:'';if(!_0x45daeb)return;const _0x366b39=this[_0x530697(0x112)]['get'](_0x45daeb);if(!_0x366b39)return;const _0x1ab7da=isRecord(_0x19f4b9[_0x530697(0x129)])?_0x19f4b9[_0x530697(0x129)]:{},_0x2f570e=typeof _0x1ab7da[_0x530697(0xee)]===_0x530697(0x10d)?_0x1ab7da[_0x530697(0xee)]:'';if(_0x366b39[_0x530697(0x190)+'nal']&&_0x2f570e===_0x530697(0x154))return;this['pending']['delete'](_0x45daeb);_0x366b39[_0x530697(0x10b)]&&(clearTimeout(_0x366b39[_0x530697(0x10b)]),_0x366b39[_0x530697(0x10b)]=null);if(_0x19f4b9['ok']===!![]){_0x366b39[_0x530697(0x11e)](_0x19f4b9[_0x530697(0x129)]);return;}const _0x5b5a0b=isRecord(_0x19f4b9[_0x530697(0x14c)])?_0x19f4b9[_0x530697(0x14c)]:{},_0x1910e2=typeof _0x5b5a0b[_0x530697(0xe5)]===_0x530697(0x10d)?_0x5b5a0b[_0x530697(0xe5)]:_0x530697(0xdf)+_0x530697(0x108)+_0x530697(0x160)+_0x366b39[_0x530697(0x177)];_0x366b39[_0x530697(0x183)](new Error(_0x1910e2));}[_0xc1f966(0x15e)+'lReady'](_0x5dfc9c=0x2ee0){const _0x386766=_0xc1f966;if(this[_0x386766(0xeb)+'d'])return Promise[_0x386766(0x11e)]();if(!this[_0x386766(0xe7)])return Promise[_0x386766(0x183)](new Error(_0x386766(0xdf)+_0x386766(0x162)+_0x386766(0x15b)+_0x386766(0x145)));if(!this['ws'])this['connect']();return new Promise((_0x393ba,_0x4a4b6c)=>{const _0x5a395f=_0x386766,_0x237050=setTimeout(()=>{const _0x5bf346=_0x1944;this[_0x5bf346(0x125)+'ters']=this['readyWai'+_0x5bf346(0x148)]['filter'](_0x5705fb=>_0x5705fb[_0x5bf346(0x11e)]!==_0x393ba),_0x4a4b6c(new Error(_0x5bf346(0xdf)+_0x5bf346(0xfc)+_0x5bf346(0x18b)+_0x5bf346(0x165)));},_0x5dfc9c);this['readyWai'+_0x5a395f(0x148)][_0x5a395f(0x115)]({'resolve':_0x393ba,'reject':_0x4a4b6c,'timeout':_0x237050});});}[_0xc1f966(0xf3)+_0xc1f966(0xdd)+_0xc1f966(0x189)](){const _0x120965=_0xc1f966,_0x12c45b=[...this[_0x120965(0x125)+_0x120965(0x148)]];this[_0x120965(0x125)+_0x120965(0x148)]=[];for(const _0x4f6cef of _0x12c45b){clearTimeout(_0x4f6cef['timeout']),_0x4f6cef[_0x120965(0x11e)]();}}[_0xc1f966(0xf9)+_0xc1f966(0x122)+'rs'](_0x59514e){const _0x42aeaa=_0xc1f966,_0x3e4e90=[...this['readyWai'+_0x42aeaa(0x148)]];this[_0x42aeaa(0x125)+'ters']=[];for(const _0x16983b of _0x3e4e90){clearTimeout(_0x16983b[_0x42aeaa(0x10b)]),_0x16983b[_0x42aeaa(0x183)](_0x59514e);}}[_0xc1f966(0x133)+_0xc1f966(0x13b)](_0x44d3bc){const _0x329853=_0xc1f966;for(const [_0x4b9012,_0x23435f]of this['pending'][_0x329853(0x15d)]()){this['pending']['delete'](_0x4b9012),_0x23435f[_0x329853(0x10b)]&&(clearTimeout(_0x23435f[_0x329853(0x10b)]),_0x23435f[_0x329853(0x10b)]=null),_0x23435f[_0x329853(0x183)](_0x44d3bc);}}[_0xc1f966(0xe0)+_0xc1f966(0x124)](_0x26e5db){const _0x16099e=_0xc1f966;this['ws']&&(this['ws'][_0x16099e(0xfb)+_0x16099e(0x172)+'rs'](),this['ws']=null);this[_0x16099e(0xeb)+'d']=![],this[_0x16099e(0x180)+_0x16099e(0x18d)]=null,this[_0x16099e(0x151)+_0x16099e(0x158)]=![],this['rejectPe'+_0x16099e(0x13b)](new Error(_0x26e5db||_0x16099e(0xdf)+'WS\x20disco'+_0x16099e(0x14e))),this[_0x16099e(0xf9)+_0x16099e(0x122)+'rs'](new Error(_0x26e5db||_0x16099e(0xdf)+_0x16099e(0x138)+_0x16099e(0x14e))),this[_0x16099e(0x11c)+'ers']();if(_0x26e5db)this[_0x16099e(0xe7)]?.[_0x16099e(0x109)+'nected']?.(_0x26e5db);if(!this[_0x16099e(0xec)+_0x16099e(0x128)]||!this[_0x16099e(0xe7)])return;const _0x5be199=this[_0x16099e(0x18a)+_0x16099e(0x123)+'Ms'];this[_0x16099e(0x18a)+_0x16099e(0x123)+'Ms']=Math['min'](this['reconnec'+_0x16099e(0x123)+'Ms']*0x2,0x3a98),this['reconnec'+_0x16099e(0xdb)]=setTimeout(()=>{const _0x49859a=_0x16099e;this[_0x49859a(0x18a)+_0x49859a(0xdb)]=null,this[_0x49859a(0x128)]();},_0x5be199);}[_0xc1f966(0x11c)+_0xc1f966(0x189)](){const _0xf8e7f5=_0xc1f966;this['reconnec'+_0xf8e7f5(0xdb)]&&(clearTimeout(this[_0xf8e7f5(0x18a)+'tTimer']),this[_0xf8e7f5(0x18a)+_0xf8e7f5(0xdb)]=null),this[_0xf8e7f5(0x182)+_0xf8e7f5(0x107)+'Timer']&&(clearTimeout(this[_0xf8e7f5(0x182)+_0xf8e7f5(0x107)+'Timer']),this[_0xf8e7f5(0x182)+_0xf8e7f5(0x107)+_0xf8e7f5(0xfe)]=null);}}
1
+ const _0x50aee5=_0x15a5;(function(_0x36a6b5,_0x505b93){const _0x4bb032=_0x15a5,_0x35e28b=_0x36a6b5();while(!![]){try{const _0x2a5706=parseInt(_0x4bb032(0x221))/0x1*(parseInt(_0x4bb032(0x211))/0x2)+parseInt(_0x4bb032(0x1ae))/0x3*(-parseInt(_0x4bb032(0x1e3))/0x4)+parseInt(_0x4bb032(0x182))/0x5*(parseInt(_0x4bb032(0x1f5))/0x6)+parseInt(_0x4bb032(0x1d2))/0x7+-parseInt(_0x4bb032(0x18a))/0x8+-parseInt(_0x4bb032(0x1b7))/0x9*(parseInt(_0x4bb032(0x1bb))/0xa)+parseInt(_0x4bb032(0x1e8))/0xb*(-parseInt(_0x4bb032(0x205))/0xc);if(_0x2a5706===_0x505b93)break;else _0x35e28b['push'](_0x35e28b['shift']());}catch(_0x45d65e){_0x35e28b['push'](_0x35e28b['shift']());}}}(_0x3174,0x99aca));function _0x3174(){const _0x2bb1ec=['4sBqAfJ','request\x20','sconnect','WS\x20is\x20no','update','803qfnvEk','Format','now','handleMe','nected','unavaila','ed\x20out','export','accepted','open','ers','.changed','o\x20load\x20g','6XqphsE','code=','nectChal','ction\x20ti','初始化\x20gate','trim','Options','pending','string','replaceA','dentity','device\x20i','operator','chat','o\x20send\x20g','connectN','31884joMNnq','equest','e\x20timeou','join','.read','queueCon','nEvent','fromChar','terminat','way\x20设备身份','ured','timeout','162GKZMgG','splayNam','mily','parse','t:\x20','g\x20nonce','platform','skipRead','req','stringif','signedAt','adyWaite','payload','onSessio','302a3005','ell/','9999UFwzVe','is\x20not\x20l','resolveR','ct\x20faile','readySta','hallenge','stop','wujie-sh','ect','deviceFa','toString','clientVe','connect.','lReady','connectS','length','rsion','lListene','error','removeAl','config','rejectRe','onChatEv','get','failed\x20t','filter','clientMo','onAgentE','eyPem','yPem','isArray','resolve','connect\x20','nal','url','dentity\x20','ent','once','Path','der','tTimer','.approva','restart','reject','4157075RjMWAF','timed\x20ou','subarray','agent','med\x20out','Code','privateK','ateway\x20r','5432720sKiWEB','min','nding','request','WS\x20clien','from','identity','gateway\x20','spki','status','pem','ed25519','delete','entity','rejectPe','lengeTim','test','res','close','WS\x20hands','publicKe','failed','clientDi','utf8','digest','.write','entries','method','nonce','tBackoff','handleDi','token','t\x20connec','eout','clientId','t\x20config','243387cTWgRo','t\x20restar','ting','onConnec','connectC','role','nnected','WS\x20conne','readyWai','225SLXRUx','Event','configur','reconnec','80690iVaHrx','resolved','expectFi','WS\x20disco','ateway\x20i','eadyWait','hake\x20tim','object','vent','replace','06032b65','sendConn','type','connect','WS\x20error','Timer','sing\x20non','hex','event','challeng','ters','set','70032100','1008147BNDxht','DateTime','ted','message','failed:\x20','OPEN','t\x20stoppe','waitUnti','ssage','viceFami','clearTim','e\x20missin','yCheck','isBuffer','shouldRe','connecte','deviceId'];_0x3174=function(){return _0x2bb1ec;};return _0x3174();}import{Buffer}from'node:buffer';import{createHash,createPrivateKey,createPublicKey,generateKeyPairSync,randomUUID,sign}from'node:crypto';function _0x15a5(_0x1d47fa,_0x2d005e){_0x1d47fa=_0x1d47fa-0x180;const _0x3174e9=_0x3174();let _0x15a5c7=_0x3174e9[_0x1d47fa];return _0x15a5c7;}import{chmodSync,existsSync,mkdirSync,readFileSync,writeFileSync}from'node:fs';import{dirname}from'node:path';import _0x4d7afa from'ws';const ED25519_SPKI_PREFIX=Buffer['from'](_0x50aee5(0x21f)+_0x50aee5(0x1c5)+_0x50aee5(0x1d1),_0x50aee5(0x1cc)),BASE64_PADDING_REGEX=/=+$/g,UPPERCASE_ASCII_REGEX=/[A-Z]/g;function isRecord(_0x4228e9){const _0x38375e=_0x50aee5;return Boolean(_0x4228e9)&&typeof _0x4228e9===_0x38375e(0x1c2)&&!Array[_0x38375e(0x23f)](_0x4228e9);}function formatUnknownError(_0x48a0e2){if(_0x48a0e2 instanceof Error)return _0x48a0e2['message'];return String(_0x48a0e2??'');}function isLocalGatewayConnRefused(_0xe7be8b){const _0x408deb=_0x50aee5,_0xcbca53=formatUnknownError(_0xe7be8b);return/\bECONNREFUSED\b/i['test'](_0xcbca53)&&/127\.0\.0\.1:\d+/[_0x408deb(0x19a)](_0xcbca53);}function base64UrlEncode(_0x1e685c){const _0xa77c1d=_0x50aee5;return _0x1e685c[_0xa77c1d(0x22b)]('base64')['replaceA'+'ll']('+','-')[_0xa77c1d(0x1fe)+'ll']('/','_')[_0xa77c1d(0x1c4)](BASE64_PADDING_REGEX,'');}function derivePublicKeyRaw(_0x151eab){const _0x7d3344=_0x50aee5,_0x4c6381=createPublicKey(_0x151eab)['export']({'type':_0x7d3344(0x192),'format':_0x7d3344(0x248)}),_0x5e9d33=Buffer[_0x7d3344(0x1df)](_0x4c6381)?_0x4c6381:Buffer[_0x7d3344(0x18f)](_0x4c6381),_0x1e300d=_0x5e9d33[_0x7d3344(0x230)]===ED25519_SPKI_PREFIX[_0x7d3344(0x230)]+0x20&&_0x5e9d33['subarray'](0x0,ED25519_SPKI_PREFIX[_0x7d3344(0x230)])['equals'](ED25519_SPKI_PREFIX);return _0x1e300d?_0x5e9d33[_0x7d3344(0x184)](ED25519_SPKI_PREFIX['length']):_0x5e9d33;}function fingerprintPublicKey(_0x21f91e){const _0x2c453d=_0x50aee5;return createHash('sha256')[_0x2c453d(0x1e7)](derivePublicKeyRaw(_0x21f91e))[_0x2c453d(0x1a2)](_0x2c453d(0x1cc));}function publicKeyRawBase64UrlFromPem(_0x32afc5){return base64UrlEncode(derivePublicKeyRaw(_0x32afc5));}function signDevicePayload(_0x37b7e6,_0x5d4bf2){const _0x18e9f7=_0x50aee5,_0x256862=createPrivateKey(_0x37b7e6);return base64UrlEncode(sign(null,Buffer[_0x18e9f7(0x18f)](_0x5d4bf2,'utf8'),_0x256862));}function normalizeDeviceMetadataForAuth(_0x6a792c){const _0x257a1b=_0x50aee5,_0x3f1db6=typeof _0x6a792c===_0x257a1b(0x1fd)?_0x6a792c[_0x257a1b(0x1fa)]():'';if(!_0x3f1db6)return'';return _0x3f1db6[_0x257a1b(0x1c4)](UPPERCASE_ASCII_REGEX,_0x308a6a=>String[_0x257a1b(0x20c)+_0x257a1b(0x187)](_0x308a6a['charCode'+'At'](0x0)+0x20));}function buildDeviceAuthPayloadV3(_0x1ae694){const _0x202afc=_0x50aee5;return['v3',_0x1ae694[_0x202afc(0x1e2)],_0x1ae694[_0x202afc(0x1ac)],_0x1ae694[_0x202afc(0x23b)+'de'],_0x1ae694[_0x202afc(0x1b3)],_0x1ae694['scopes'][_0x202afc(0x208)](','),String(_0x1ae694[_0x202afc(0x21b)+'Ms']),_0x1ae694['token']??'',_0x1ae694[_0x202afc(0x1a6)],normalizeDeviceMetadataForAuth(_0x1ae694[_0x202afc(0x217)]),normalizeDeviceMetadataForAuth(_0x1ae694[_0x202afc(0x22a)+_0x202afc(0x213)])][_0x202afc(0x208)]('|');}function writeIdentityFile(_0x519dde,_0x54b69c,_0xf8c537){const _0x2ab542=_0x50aee5;mkdirSync(dirname(_0x519dde),{'recursive':!![]}),writeFileSync(_0x519dde,JSON[_0x2ab542(0x21a)+'y']({'version':0x1,..._0x54b69c,'createdAtMs':_0xf8c537},null,0x2)+'\x0a',{'mode':0x180});try{chmodSync(_0x519dde,0x180);}catch{}}function generateDeviceIdentity(){const _0x17267d=_0x50aee5,{publicKey:_0x487b8b,privateKey:_0x10fd0d}=generateKeyPairSync(_0x17267d(0x195)),_0x578b1a=_0x487b8b['export']({'type':'spki','format':_0x17267d(0x194)})[_0x17267d(0x22b)](),_0x38fe48=_0x10fd0d[_0x17267d(0x1ef)]({'type':'pkcs8','format':_0x17267d(0x194)})[_0x17267d(0x22b)]();return{'deviceId':fingerprintPublicKey(_0x578b1a),'publicKeyPem':_0x578b1a,'privateKeyPem':_0x38fe48};}function loadOrCreateDeviceIdentity(_0x1eaca7){const _0x2bb867=_0x50aee5;if(existsSync(_0x1eaca7))try{const _0x4e7bb7=JSON[_0x2bb867(0x214)](readFileSync(_0x1eaca7,_0x2bb867(0x1a1))),_0x597932=typeof _0x4e7bb7?.['publicKe'+_0x2bb867(0x23e)]===_0x2bb867(0x1fd)?_0x4e7bb7['publicKe'+'yPem']:'',_0x135cda=typeof _0x4e7bb7?.['privateK'+_0x2bb867(0x23d)]===_0x2bb867(0x1fd)?_0x4e7bb7[_0x2bb867(0x188)+_0x2bb867(0x23d)]:'';if(_0x597932&&_0x135cda){const _0x576e75={'deviceId':fingerprintPublicKey(_0x597932),'publicKeyPem':_0x597932,'privateKeyPem':_0x135cda};return _0x4e7bb7?.[_0x2bb867(0x1e2)]!==_0x576e75[_0x2bb867(0x1e2)]&&writeIdentityFile(_0x1eaca7,_0x576e75,Date[_0x2bb867(0x1ea)]()),_0x576e75;}}catch{}const _0x5ef7b1=generateDeviceIdentity();return writeIdentityFile(_0x1eaca7,_0x5ef7b1,Date[_0x2bb867(0x1ea)]()),_0x5ef7b1;}export class ClawGatewayWsClient{['ws']=null;['config']=null;[_0x50aee5(0x1fc)]=new Map();[_0x50aee5(0x1b6)+_0x50aee5(0x1cf)]=[];['shouldRe'+_0x50aee5(0x1c8)]=![];[_0x50aee5(0x1ba)+'tTimer']=null;[_0x50aee5(0x1b2)+'hallenge'+_0x50aee5(0x1ca)]=null;[_0x50aee5(0x204)+'once']=null;[_0x50aee5(0x22f)+_0x50aee5(0x245)]=![];['connecte'+'d']=![];[_0x50aee5(0x1ba)+'tBackoff'+'Ms']=0x320;[_0x50aee5(0x1e2)+_0x50aee5(0x197)]=null;[_0x50aee5(0x1b9)+'e'](_0x46bda4){const _0x1eff6c=_0x50aee5;if(!_0x46bda4){this[_0x1eff6c(0x227)]();return;}const _0x27751d=this[_0x1eff6c(0x235)];this[_0x1eff6c(0x235)]=_0x46bda4,this[_0x1eff6c(0x1e0)+'connect']=!![];try{this[_0x1eff6c(0x1e2)+'entity']=loadOrCreateDeviceIdentity(_0x46bda4[_0x1eff6c(0x190)+_0x1eff6c(0x247)]);}catch(_0x3bd5e8){const _0x475f42=_0x3bd5e8 instanceof Error?_0x3bd5e8[_0x1eff6c(0x1d5)]:_0x1eff6c(0x1f9)+_0x1eff6c(0x20e)+'失败';this[_0x1eff6c(0x227)](),_0x46bda4['onDiscon'+_0x1eff6c(0x1ec)](_0x475f42);return;}const _0x592205=!_0x27751d||_0x27751d['url']!==_0x46bda4[_0x1eff6c(0x243)]||_0x27751d['token']!==_0x46bda4['token']||_0x27751d[_0x1eff6c(0x1ac)]!==_0x46bda4[_0x1eff6c(0x1ac)]||_0x27751d[_0x1eff6c(0x23b)+'de']!==_0x46bda4[_0x1eff6c(0x23b)+'de']||_0x27751d[_0x1eff6c(0x22c)+_0x1eff6c(0x231)]!==_0x46bda4[_0x1eff6c(0x22c)+_0x1eff6c(0x231)]||_0x27751d[_0x1eff6c(0x190)+_0x1eff6c(0x247)]!==_0x46bda4[_0x1eff6c(0x190)+_0x1eff6c(0x247)];if(_0x592205){this[_0x1eff6c(0x180)]();return;}if(!this['ws'])this[_0x1eff6c(0x1c8)]();}['stop'](){const _0x5bb635=_0x50aee5;this[_0x5bb635(0x1e0)+_0x5bb635(0x1c8)]=![],this[_0x5bb635(0x1e1)+'d']=![],this[_0x5bb635(0x204)+_0x5bb635(0x246)]=null,this['connectS'+_0x5bb635(0x245)]=![],this['clearTim'+_0x5bb635(0x1f2)](),this[_0x5bb635(0x198)+'nding'](new Error(_0x5bb635(0x191)+_0x5bb635(0x18e)+_0x5bb635(0x1d8)+'d')),this[_0x5bb635(0x236)+_0x5bb635(0x21c)+'rs'](new Error(_0x5bb635(0x191)+'WS\x20clien'+'t\x20stoppe'+'d'));if(this['ws']){try{this['ws'][_0x5bb635(0x19c)]();}catch{}this['ws']=null;}this[_0x5bb635(0x1e2)+_0x5bb635(0x197)]=null,this['config']=null;}async[_0x50aee5(0x18d)](_0xc6b3e6,_0x798652={},_0x15ff32={}){const _0x4eef82=_0x50aee5;if(!_0x15ff32[_0x4eef82(0x218)+_0x4eef82(0x1de)])await this[_0x4eef82(0x1d9)+'lReady']();const _0x36150d=this['ws'];if(!_0x36150d||_0x36150d[_0x4eef82(0x225)+'te']!==_0x4d7afa[_0x4eef82(0x1d7)])throw new Error(_0x4eef82(0x191)+_0x4eef82(0x1e6)+_0x4eef82(0x1aa)+_0x4eef82(0x1d4));const _0x1bd603=randomUUID(),_0x16ad41=_0x15ff32['timeoutM'+'s']??0x7530;return await new Promise((_0x365ba3,_0x27a5c7)=>{const _0x291fe7=_0x4eef82,_0x42ea54=setTimeout(()=>{const _0x561ce6=_0x15a5;this['pending'][_0x561ce6(0x196)](_0x1bd603),_0x27a5c7(new Error(_0x561ce6(0x191)+_0x561ce6(0x1e4)+_0x561ce6(0x183)+_0x561ce6(0x215)+_0xc6b3e6));},_0x16ad41);this[_0x291fe7(0x1fc)][_0x291fe7(0x1d0)](_0x1bd603,{'method':_0xc6b3e6,'resolve':_0x1925e4=>{clearTimeout(_0x42ea54),_0x365ba3(_0x1925e4);},'reject':_0x3757a7=>{clearTimeout(_0x42ea54),_0x27a5c7(_0x3757a7);},'expectFinal':_0x15ff32[_0x291fe7(0x1bd)+_0x291fe7(0x242)]===!![],'timeout':_0x42ea54});try{_0x36150d['send'](JSON['stringif'+'y']({'type':_0x291fe7(0x219),'id':_0x1bd603,'method':_0xc6b3e6,'params':_0x798652}));}catch(_0x27a7a9){this[_0x291fe7(0x1fc)][_0x291fe7(0x196)](_0x1bd603),clearTimeout(_0x42ea54),_0x27a5c7(_0x27a7a9 instanceof Error?_0x27a7a9:new Error(_0x291fe7(0x239)+_0x291fe7(0x203)+_0x291fe7(0x189)+_0x291fe7(0x206)));}});}['restart'](){const _0x2b2c2e=_0x50aee5;this[_0x2b2c2e(0x1e1)+'d']=![],this[_0x2b2c2e(0x204)+'once']=null,this['connectS'+_0x2b2c2e(0x245)]=![],this[_0x2b2c2e(0x1dc)+_0x2b2c2e(0x1f2)](),this['rejectPe'+_0x2b2c2e(0x18c)](new Error('gateway\x20'+_0x2b2c2e(0x18e)+'t\x20restar'+_0x2b2c2e(0x1b0))),this[_0x2b2c2e(0x236)+_0x2b2c2e(0x21c)+'rs'](new Error(_0x2b2c2e(0x191)+_0x2b2c2e(0x18e)+_0x2b2c2e(0x1af)+'ting'));if(this['ws']){try{this['ws'][_0x2b2c2e(0x20d)+'e']();}catch{}this['ws']=null;}this[_0x2b2c2e(0x1c8)]();}[_0x50aee5(0x1c8)](){const _0x290b4a=_0x50aee5;if(!this[_0x290b4a(0x235)]||this['ws'])return;const _0x4c16c9=new _0x4d7afa(this['config'][_0x290b4a(0x243)]);this['ws']=_0x4c16c9,_0x4c16c9['on'](_0x290b4a(0x1f1),()=>this[_0x290b4a(0x20a)+_0x290b4a(0x1f7)+_0x290b4a(0x199)+_0x290b4a(0x1ab)]()),_0x4c16c9['on'](_0x290b4a(0x1d5),_0x201715=>this[_0x290b4a(0x1eb)+'ssage'](_0x201715['toString']())),_0x4c16c9['on'](_0x290b4a(0x19c),(_0x451fb3,_0x2ecad2)=>{const _0x55c81e=_0x290b4a;if(this[_0x55c81e(0x1e1)+'d']){const _0x4850ba=_0x2ecad2[_0x55c81e(0x22b)]()||_0x55c81e(0x1f6)+_0x451fb3;this[_0x55c81e(0x1a8)+_0x55c81e(0x1e5)]('gateway\x20'+'WS\x20close'+'d\x20('+_0x4850ba+')');}else this[_0x55c81e(0x1a8)+_0x55c81e(0x1e5)]('');}),_0x4c16c9['on']('error',_0x2b169c=>{const _0x2f4fd3=_0x290b4a;if(isLocalGatewayConnRefused(_0x2b169c)){this[_0x2f4fd3(0x1a8)+_0x2f4fd3(0x1e5)](_0x2f4fd3(0x191)+_0x2f4fd3(0x222)+'istening'+'\x20yet');return;}const _0x3bd1e4=formatUnknownError(_0x2b169c);this[_0x2f4fd3(0x1a8)+_0x2f4fd3(0x1e5)](_0x3bd1e4?'gateway\x20'+_0x2f4fd3(0x1c9)+':\x20'+_0x3bd1e4:_0x2f4fd3(0x191)+_0x2f4fd3(0x1c9));});}[_0x50aee5(0x20a)+_0x50aee5(0x1f7)+_0x50aee5(0x199)+_0x50aee5(0x1ab)](){const _0xb04e9d=_0x50aee5;this[_0xb04e9d(0x204)+'once']=null,this[_0xb04e9d(0x22f)+_0xb04e9d(0x245)]=![];if(this[_0xb04e9d(0x1b2)+_0xb04e9d(0x226)+_0xb04e9d(0x1ca)])clearTimeout(this[_0xb04e9d(0x1b2)+_0xb04e9d(0x226)+_0xb04e9d(0x1ca)]);this[_0xb04e9d(0x1b2)+_0xb04e9d(0x226)+_0xb04e9d(0x1ca)]=setTimeout(()=>{const _0x3a09bc=_0xb04e9d;if(this['connectS'+_0x3a09bc(0x245)]||!this['ws']||this['ws'][_0x3a09bc(0x225)+'te']!==_0x4d7afa[_0x3a09bc(0x1d7)])return;this[_0x3a09bc(0x1a8)+_0x3a09bc(0x1e5)](_0x3a09bc(0x191)+_0x3a09bc(0x19d)+_0x3a09bc(0x1c1)+_0x3a09bc(0x1ee)),this['ws']?.[_0x3a09bc(0x19c)](0x3f0,_0x3a09bc(0x241)+_0x3a09bc(0x1ce)+_0x3a09bc(0x207)+'t');},0x7d0);}async[_0x50aee5(0x1c6)+_0x50aee5(0x229)](){const _0xafbe51=_0x50aee5,_0x3f94e3=this['config'];if(!_0x3f94e3||this[_0xafbe51(0x22f)+_0xafbe51(0x245)])return;const _0x439466=this[_0xafbe51(0x204)+_0xafbe51(0x246)]?.[_0xafbe51(0x1fa)]()??'';if(!_0x439466){this[_0xafbe51(0x1a8)+_0xafbe51(0x1e5)](_0xafbe51(0x191)+_0xafbe51(0x19d)+'hake\x20mis'+_0xafbe51(0x1cb)+'ce'),this['ws']?.[_0xafbe51(0x19c)](0x3f0,_0xafbe51(0x241)+_0xafbe51(0x1ce)+_0xafbe51(0x1dd)+_0xafbe51(0x216));return;}this[_0xafbe51(0x22f)+_0xafbe51(0x245)]=!![];this['connectC'+'hallenge'+_0xafbe51(0x1ca)]&&(clearTimeout(this[_0xafbe51(0x1b2)+_0xafbe51(0x226)+_0xafbe51(0x1ca)]),this[_0xafbe51(0x1b2)+_0xafbe51(0x226)+_0xafbe51(0x1ca)]=null);if(!this[_0xafbe51(0x1e2)+_0xafbe51(0x197)])try{this[_0xafbe51(0x1e2)+_0xafbe51(0x197)]=loadOrCreateDeviceIdentity(_0x3f94e3[_0xafbe51(0x190)+_0xafbe51(0x247)]);}catch(_0x321a79){this['handleDi'+_0xafbe51(0x1e5)](_0x321a79 instanceof Error?_0x321a79[_0xafbe51(0x1d5)]:_0xafbe51(0x239)+_0xafbe51(0x1f4)+_0xafbe51(0x1bf)+_0xafbe51(0x1ff)),this['ws']?.['close'](0x3f0,_0xafbe51(0x200)+_0xafbe51(0x244)+_0xafbe51(0x1ed)+'ble');return;}const _0x445927='operator',_0x109490=[_0xafbe51(0x201)+_0xafbe51(0x209),_0xafbe51(0x201)+_0xafbe51(0x1a3),'operator'+'.admin',_0xafbe51(0x201)+_0xafbe51(0x24a)+'ls',_0xafbe51(0x201)+'.pairing'],_0x51ca3a=_0x3f94e3[_0xafbe51(0x1a9)][_0xafbe51(0x1fa)](),_0x5d9b10=Date['now'](),_0x4cde77=buildDeviceAuthPayloadV3({'deviceId':this[_0xafbe51(0x1e2)+_0xafbe51(0x197)]['deviceId'],'clientId':_0x3f94e3[_0xafbe51(0x1ac)],'clientMode':_0x3f94e3[_0xafbe51(0x23b)+'de'],'role':_0x445927,'scopes':_0x109490,'signedAtMs':_0x5d9b10,'token':_0x51ca3a||null,'nonce':_0x439466,'platform':process[_0xafbe51(0x217)],'deviceFamily':_0x3f94e3['clientDe'+_0xafbe51(0x1db)+'ly']}),_0x1f2d4b={'minProtocol':0x4,'maxProtocol':0x4,'client':{'id':_0x3f94e3['clientId'],'displayName':_0x3f94e3[_0xafbe51(0x1a0)+_0xafbe51(0x212)+'e'],'version':_0x3f94e3[_0xafbe51(0x22c)+_0xafbe51(0x231)],'platform':process[_0xafbe51(0x217)],'deviceFamily':_0x3f94e3['clientDe'+_0xafbe51(0x1db)+'ly'],'mode':_0x3f94e3[_0xafbe51(0x23b)+'de']},'caps':[],'role':_0x445927,'scopes':_0x109490,'auth':_0x51ca3a?{'token':_0x51ca3a}:undefined,'device':{'id':this[_0xafbe51(0x1e2)+_0xafbe51(0x197)][_0xafbe51(0x1e2)],'publicKey':publicKeyRawBase64UrlFromPem(this[_0xafbe51(0x1e2)+_0xafbe51(0x197)][_0xafbe51(0x19e)+_0xafbe51(0x23e)]),'signature':signDevicePayload(this[_0xafbe51(0x1e2)+_0xafbe51(0x197)][_0xafbe51(0x188)+_0xafbe51(0x23d)],_0x4cde77),'signedAt':_0x5d9b10,'nonce':_0x439466},'locale':Intl[_0xafbe51(0x1d3)+_0xafbe51(0x1e9)]()[_0xafbe51(0x1bc)+_0xafbe51(0x1fb)]()['locale'],'userAgent':_0xafbe51(0x228)+_0xafbe51(0x220)+_0x3f94e3[_0xafbe51(0x22c)+'rsion']};try{await this[_0xafbe51(0x18d)](_0xafbe51(0x1c8),_0x1f2d4b,{'timeoutMs':0x2710,'skipReadyCheck':!![]}),this[_0xafbe51(0x1e1)+'d']=!![],this['reconnec'+_0xafbe51(0x1a7)+'Ms']=0x320,this[_0xafbe51(0x223)+_0xafbe51(0x1c0)+'ers'](),this[_0xafbe51(0x235)]?.[_0xafbe51(0x1b1)+_0xafbe51(0x1d4)]?.();}catch(_0x4c2394){this[_0xafbe51(0x1a8)+_0xafbe51(0x1e5)](_0x4c2394 instanceof Error?_0x4c2394[_0xafbe51(0x1d5)]:_0xafbe51(0x191)+_0xafbe51(0x1b5)+_0xafbe51(0x224)+'d'),this['ws']?.[_0xafbe51(0x19c)](0x3f0,_0xafbe51(0x241)+_0xafbe51(0x19f));}}[_0x50aee5(0x1eb)+_0x50aee5(0x1da)](_0x31445b){const _0x2ca842=_0x50aee5;let _0x5fd060;try{_0x5fd060=JSON[_0x2ca842(0x214)](_0x31445b);}catch{return;}if(!isRecord(_0x5fd060)||typeof _0x5fd060['type']!=='string')return;if(_0x5fd060[_0x2ca842(0x1c7)]==='event'){const _0x150119=typeof _0x5fd060[_0x2ca842(0x1cd)]===_0x2ca842(0x1fd)?_0x5fd060[_0x2ca842(0x1cd)]:'';if(!_0x150119)return;const _0x4adff2=isRecord(_0x5fd060['payload'])?_0x5fd060[_0x2ca842(0x21d)]:{};if(_0x150119===_0x2ca842(0x22d)+'challeng'+'e'){const _0x506c62=typeof _0x4adff2[_0x2ca842(0x1a6)]===_0x2ca842(0x1fd)?_0x4adff2['nonce'][_0x2ca842(0x1fa)]():'';if(!_0x506c62){this[_0x2ca842(0x1a8)+'sconnect'](_0x2ca842(0x191)+'WS\x20hands'+'hake\x20mis'+'sing\x20non'+'ce'),this['ws']?.[_0x2ca842(0x19c)](0x3f0,_0x2ca842(0x241)+_0x2ca842(0x1ce)+_0x2ca842(0x1dd)+_0x2ca842(0x216));return;}this[_0x2ca842(0x204)+_0x2ca842(0x246)]=_0x506c62,void this[_0x2ca842(0x1c6)+_0x2ca842(0x229)]();return;}if(_0x150119===_0x2ca842(0x202))this[_0x2ca842(0x235)]?.[_0x2ca842(0x237)+_0x2ca842(0x245)]?.(_0x4adff2);if(_0x150119===_0x2ca842(0x185))this['config']?.[_0x2ca842(0x23c)+_0x2ca842(0x1c3)]?.(_0x4adff2);if(_0x150119==='sessions'+_0x2ca842(0x1f3))this[_0x2ca842(0x235)]?.[_0x2ca842(0x21e)+_0x2ca842(0x20b)]?.(_0x4adff2);if(_0x150119==='session.'+'message')this[_0x2ca842(0x235)]?.[_0x2ca842(0x21e)+'nMessage'+_0x2ca842(0x1b8)]?.(_0x4adff2);return;}if(_0x5fd060['type']!==_0x2ca842(0x19b))return;const _0x341abe=typeof _0x5fd060['id']===_0x2ca842(0x1fd)?_0x5fd060['id']:'';if(!_0x341abe)return;const _0x4c6960=this[_0x2ca842(0x1fc)][_0x2ca842(0x238)](_0x341abe);if(!_0x4c6960)return;const _0x569ef7=isRecord(_0x5fd060[_0x2ca842(0x21d)])?_0x5fd060[_0x2ca842(0x21d)]:{},_0x451250=typeof _0x569ef7[_0x2ca842(0x193)]===_0x2ca842(0x1fd)?_0x569ef7[_0x2ca842(0x193)]:'';if(_0x4c6960[_0x2ca842(0x1bd)+_0x2ca842(0x242)]&&_0x451250===_0x2ca842(0x1f0))return;this['pending'][_0x2ca842(0x196)](_0x341abe);_0x4c6960[_0x2ca842(0x210)]&&(clearTimeout(_0x4c6960['timeout']),_0x4c6960[_0x2ca842(0x210)]=null);if(_0x5fd060['ok']===!![]){_0x4c6960['resolve'](_0x5fd060['payload']);return;}const _0x2daaaa=isRecord(_0x5fd060[_0x2ca842(0x233)])?_0x5fd060['error']:{},_0x13e4c0=typeof _0x2daaaa[_0x2ca842(0x1d5)]===_0x2ca842(0x1fd)?_0x2daaaa[_0x2ca842(0x1d5)]:_0x2ca842(0x191)+_0x2ca842(0x1e4)+_0x2ca842(0x1d6)+_0x4c6960[_0x2ca842(0x1a5)];_0x4c6960['reject'](new Error(_0x13e4c0));}[_0x50aee5(0x1d9)+_0x50aee5(0x22e)](_0x1b86df=0x2ee0){const _0x51e878=_0x50aee5;if(this[_0x51e878(0x1e1)+'d'])return Promise['resolve']();if(!this[_0x51e878(0x235)])return Promise[_0x51e878(0x181)](new Error(_0x51e878(0x191)+_0x51e878(0x1e6)+_0x51e878(0x1ad)+_0x51e878(0x20f)));if(!this['ws'])this[_0x51e878(0x1c8)]();return new Promise((_0x654595,_0x9a55c8)=>{const _0x34fbd9=_0x51e878,_0x18e7bd=setTimeout(()=>{const _0xd0866c=_0x15a5;this[_0xd0866c(0x1b6)+_0xd0866c(0x1cf)]=this[_0xd0866c(0x1b6)+_0xd0866c(0x1cf)][_0xd0866c(0x23a)](_0x147461=>_0x147461[_0xd0866c(0x240)]!==_0x654595),_0x9a55c8(new Error(_0xd0866c(0x191)+'WS\x20conne'+_0xd0866c(0x1f8)+_0xd0866c(0x186)));},_0x1b86df);this[_0x34fbd9(0x1b6)+_0x34fbd9(0x1cf)]['push']({'resolve':_0x654595,'reject':_0x9a55c8,'timeout':_0x18e7bd});});}[_0x50aee5(0x223)+_0x50aee5(0x1c0)+_0x50aee5(0x1f2)](){const _0x4b4829=_0x50aee5,_0x1ca438=[...this[_0x4b4829(0x1b6)+_0x4b4829(0x1cf)]];this[_0x4b4829(0x1b6)+_0x4b4829(0x1cf)]=[];for(const _0x4ff4df of _0x1ca438){clearTimeout(_0x4ff4df[_0x4b4829(0x210)]),_0x4ff4df[_0x4b4829(0x240)]();}}[_0x50aee5(0x236)+_0x50aee5(0x21c)+'rs'](_0x2df723){const _0x1254be=_0x50aee5,_0x20248c=[...this[_0x1254be(0x1b6)+_0x1254be(0x1cf)]];this[_0x1254be(0x1b6)+_0x1254be(0x1cf)]=[];for(const _0x3516a0 of _0x20248c){clearTimeout(_0x3516a0[_0x1254be(0x210)]),_0x3516a0['reject'](_0x2df723);}}[_0x50aee5(0x198)+_0x50aee5(0x18c)](_0x3daa67){const _0x37bcc1=_0x50aee5;for(const [_0xbbc785,_0x383119]of this['pending'][_0x37bcc1(0x1a4)]()){this[_0x37bcc1(0x1fc)][_0x37bcc1(0x196)](_0xbbc785),_0x383119[_0x37bcc1(0x210)]&&(clearTimeout(_0x383119['timeout']),_0x383119[_0x37bcc1(0x210)]=null),_0x383119[_0x37bcc1(0x181)](_0x3daa67);}}['handleDi'+_0x50aee5(0x1e5)](_0x3d7a32){const _0x25612c=_0x50aee5;this['ws']&&(this['ws'][_0x25612c(0x234)+_0x25612c(0x232)+'rs'](),this['ws']=null);this[_0x25612c(0x1e1)+'d']=![],this['connectN'+_0x25612c(0x246)]=null,this[_0x25612c(0x22f)+_0x25612c(0x245)]=![],this[_0x25612c(0x198)+_0x25612c(0x18c)](new Error(_0x3d7a32||_0x25612c(0x191)+_0x25612c(0x1be)+_0x25612c(0x1b4))),this[_0x25612c(0x236)+_0x25612c(0x21c)+'rs'](new Error(_0x3d7a32||_0x25612c(0x191)+'WS\x20disco'+'nnected')),this[_0x25612c(0x1dc)+_0x25612c(0x1f2)]();if(_0x3d7a32)this['config']?.['onDiscon'+'nected']?.(_0x3d7a32);if(!this['shouldRe'+_0x25612c(0x1c8)]||!this[_0x25612c(0x235)])return;const _0x53bc98=this['reconnec'+_0x25612c(0x1a7)+'Ms'];this[_0x25612c(0x1ba)+'tBackoff'+'Ms']=Math[_0x25612c(0x18b)](this[_0x25612c(0x1ba)+_0x25612c(0x1a7)+'Ms']*0x2,0x3a98),this[_0x25612c(0x1ba)+'tTimer']=setTimeout(()=>{const _0x30b25a=_0x25612c;this[_0x30b25a(0x1ba)+_0x30b25a(0x249)]=null,this['connect']();},_0x53bc98);}[_0x50aee5(0x1dc)+_0x50aee5(0x1f2)](){const _0x23aa6c=_0x50aee5;this[_0x23aa6c(0x1ba)+_0x23aa6c(0x249)]&&(clearTimeout(this[_0x23aa6c(0x1ba)+_0x23aa6c(0x249)]),this[_0x23aa6c(0x1ba)+'tTimer']=null),this[_0x23aa6c(0x1b2)+_0x23aa6c(0x226)+'Timer']&&(clearTimeout(this['connectC'+'hallenge'+_0x23aa6c(0x1ca)]),this[_0x23aa6c(0x1b2)+_0x23aa6c(0x226)+_0x23aa6c(0x1ca)]=null);}}
@@ -0,0 +1 @@
1
+ const _0x4c14de=_0x15be;function _0x8cfb(){const _0x483540=['ipa','t_tool_r','yaml','document','m4a','sessionK','ase','mp4','sessionN','now','5XIMakX','toolName','message','ogg','pptx','size','toolCall','agentNam','indexedA','includes','sort','png','e://loca','trim','deletedA','d-files.','updatedA','deletedF','pkg','1197440HIBNqC','createdA','floor','15915591CZeRQI','svg','14HZbWoT','slide','exe','clawspac','join','gif','dmg','mp3','ppt','image','java','files','webm','jpg','apk','webp','doc','jsx','xls','29443898VRJvXP','yml','file','number','set','path','csv','get','assistan','agentId','replace','utf8','3500915aMAITw','video','12oYEIsg','name','flac','sheet','xlsx','10vMgfrb','odp','pathname','jpeg','map','ame','1018664cpBgko','test','messageI','rtf','328262bhOeWF','romFileC','isArray','isFinite','mov','3628260DjENEH','stringif','enter','find','filter','romDisk','esult','css','html','other','wav'];_0x8cfb=function(){return _0x483540;};return _0x8cfb();}(function(_0x4c2ead,_0x26be6c){const _0x2ada28=_0x15be,_0x4a4b8f=_0x4c2ead();while(!![]){try{const _0x4b1043=parseInt(_0x2ada28(0xdb))/0x1*(-parseInt(_0x2ada28(0xc1))/0x2)+parseInt(_0x2ada28(0xc6))/0x3+-parseInt(_0x2ada28(0xbd))/0x4+-parseInt(_0x2ada28(0xb0))/0x5*(-parseInt(_0x2ada28(0xb2))/0x6)+-parseInt(_0x2ada28(0x91))/0x7*(-parseInt(_0x2ada28(0x8c))/0x8)+parseInt(_0x2ada28(0x8f))/0x9*(parseInt(_0x2ada28(0xb7))/0xa)+-parseInt(_0x2ada28(0xa4))/0xb;if(_0x4b1043===_0x26be6c)break;else _0x4a4b8f['push'](_0x4a4b8f['shift']());}catch(_0x32ea01){_0x4a4b8f['push'](_0x4a4b8f['shift']());}}}(_0x8cfb,0xe1f42));import{existsSync}from'node:fs';import{mkdir,readFile,rm,writeFile}from'node:fs/promises';import{basename,dirname,extname,join}from'node:path';import{asRecord}from'./utils.mjs';const STORE_FILE='generate'+_0x4c14de(0x88)+'json';function storePath(_0x2a4212){return join(_0x2a4212,STORE_FILE);}async function readStore(_0x484b83){const _0x42614d=_0x4c14de;try{const _0x4d20c1=JSON['parse'](await readFile(storePath(_0x484b83),_0x42614d(0xaf)));return{'files':Array[_0x42614d(0xc3)](_0x4d20c1[_0x42614d(0x9c)])?_0x4d20c1[_0x42614d(0x9c)][_0x42614d(0xbb)](asRecord):[],'indexedAt':typeof _0x4d20c1[_0x42614d(0x81)+'t']==='number'&&Number[_0x42614d(0xc4)](_0x4d20c1[_0x42614d(0x81)+'t'])?_0x4d20c1['indexedA'+'t']:null};}catch{return{'files':[],'indexedAt':null};}}async function writeStore(_0x4e7c52,_0x2ce744){const _0xdaf26a=_0x4c14de,_0x479fd0=storePath(_0x4e7c52);await mkdir(dirname(_0x479fd0),{'recursive':!![]}),await writeFile(_0x479fd0,JSON[_0xdaf26a(0xc7)+'y'](_0x2ce744,null,0x2)+'\x0a',_0xdaf26a(0xaf));}function _0x15be(_0x2dc7d7,_0x2757d2){_0x2dc7d7=_0x2dc7d7-0x7a;const _0x8cfbc5=_0x8cfb();let _0x15beb4=_0x8cfbc5[_0x2dc7d7];return _0x15beb4;}function toLocalPath(_0x10cd61){const _0x4a5d45=_0x4c14de,_0x214bcf=String(_0x10cd61||'')['trim']();if(!_0x214bcf['startsWi'+'th'](_0x4a5d45(0x94)+_0x4a5d45(0x85)+'l'))return _0x214bcf;try{return decodeURIComponent(new URL(_0x214bcf)[_0x4a5d45(0xb9)]);}catch{return _0x214bcf;}}function normalizeTimestampMs(_0x5ca2d7){const _0x42d13d=_0x4c14de,_0x1a1d8d=Number(_0x5ca2d7);if(!Number[_0x42d13d(0xc4)](_0x1a1d8d)||_0x1a1d8d<=0x0)return Date['now']();return _0x1a1d8d>0x2540be400?Math['floor'](_0x1a1d8d):Math[_0x42d13d(0x8e)](_0x1a1d8d*0x3e8);}function classifyGeneratedFile(_0x3bed05){const _0x3d39e9=_0x4c14de;if(['md','txt','json','xml',_0x3d39e9(0xd3),_0x3d39e9(0xa5),_0x3d39e9(0xce),_0x3d39e9(0xcd),'js','ts','tsx',_0x3d39e9(0xa2),'py','go','rs',_0x3d39e9(0x9b),_0x3d39e9(0xa1),'docx','pdf',_0x3d39e9(0xc0)][_0x3d39e9(0x82)](_0x3bed05))return _0x3d39e9(0xd4);if([_0x3d39e9(0xaa),_0x3d39e9(0xb6),_0x3d39e9(0xa3),'ods']['includes'](_0x3bed05))return _0x3d39e9(0xb5);if([_0x3d39e9(0x7d),_0x3d39e9(0x99),_0x3d39e9(0xb8)][_0x3d39e9(0x82)](_0x3bed05))return _0x3d39e9(0x92);if([_0x3d39e9(0x9e),_0x3d39e9(0xba),_0x3d39e9(0x84),_0x3d39e9(0x96),_0x3d39e9(0xa0),_0x3d39e9(0x90)][_0x3d39e9(0x82)](_0x3bed05))return _0x3d39e9(0x9a);if([_0x3d39e9(0xd8),_0x3d39e9(0xc5),'avi','mkv',_0x3d39e9(0x9d)][_0x3d39e9(0x82)](_0x3bed05))return _0x3d39e9(0xb1);if([_0x3d39e9(0x98),_0x3d39e9(0xd0),'aac',_0x3d39e9(0x7c),_0x3d39e9(0xd5),_0x3d39e9(0xb4)][_0x3d39e9(0x82)](_0x3bed05))return'audio';if([_0x3d39e9(0x93),_0x3d39e9(0x97),_0x3d39e9(0x8b),_0x3d39e9(0x9f),_0x3d39e9(0xd1)][_0x3d39e9(0x82)](_0x3bed05))return'app';return _0x3d39e9(0xcf);}function normalizePreviewPath(_0x3b9fe0){const _0x180462=_0x4c14de,_0x2cb2c3=String(_0x3b9fe0||'')['trim']()[_0x180462(0xae)](/^["'`]+|["'`]+$/g,'');if(!_0x2cb2c3)return'';if(/^(?:https?:|data:|blob:|file:\/\/|clawspace:\/\/)/i['test'](_0x2cb2c3))return _0x2cb2c3;if(/^(?:\/|[A-Za-z]:[\\/])/[_0x180462(0xbe)](_0x2cb2c3)){const _0x2eb996=_0x2cb2c3[_0x180462(0xae)](/\\/g,'/'),_0x1a88f8=encodeURI(_0x2eb996['startsWi'+'th']('/')?_0x2eb996:'/'+_0x2eb996);return _0x180462(0x94)+_0x180462(0x85)+'l'+_0x1a88f8;}return _0x2cb2c3;}function normalizeInput(_0x3239bd){const _0x12aa58=_0x4c14de,_0x3ff3b1=asRecord(_0x3239bd),_0x59d6a6=toLocalPath(_0x3ff3b1[_0x12aa58(0xa9)]);if(!_0x59d6a6)return null;const _0xf9c3e8=String(_0x3ff3b1[_0x12aa58(0xb3)]||'')[_0x12aa58(0x86)]()||basename(_0x59d6a6);if(!_0xf9c3e8)return null;const _0x48bc11=extname(_0xf9c3e8||_0x59d6a6)['replace'](/^\./,'')['toLowerC'+_0x12aa58(0xd7)](),_0x6396c4=String(_0x3ff3b1[_0x12aa58(0xd6)+'ey']||''),_0x39bb9e=String(_0x3ff3b1[_0x12aa58(0x7f)+'Id']||''),_0x28f78b=normalizeTimestampMs(_0x3ff3b1[_0x12aa58(0x8d)+'t']);return{'id':[_0x6396c4,_0x39bb9e,_0x59d6a6][_0x12aa58(0x95)]('::'),'name':_0xf9c3e8,'ext':_0x48bc11,'type':classifyGeneratedFile(_0x48bc11),'path':_0x59d6a6,'previewPath':normalizePreviewPath(_0x59d6a6),...typeof _0x3ff3b1[_0x12aa58(0x7e)]===_0x12aa58(0xa7)&&Number[_0x12aa58(0xc4)](_0x3ff3b1[_0x12aa58(0x7e)])?{'size':_0x3ff3b1[_0x12aa58(0x7e)]}:{},'createdAt':_0x28f78b,'updatedAt':normalizeTimestampMs(_0x3ff3b1[_0x12aa58(0x89)+'t']||_0x3ff3b1['createdA'+'t']),..._0x3ff3b1[_0x12aa58(0xad)]?{'agentId':String(_0x3ff3b1['agentId'])}:{},..._0x3ff3b1[_0x12aa58(0x80)+'e']?{'agentName':String(_0x3ff3b1[_0x12aa58(0x80)+'e'])}:{},'sessionKey':_0x6396c4,..._0x3ff3b1['sessionN'+_0x12aa58(0xbc)]?{'sessionName':String(_0x3ff3b1[_0x12aa58(0xd9)+_0x12aa58(0xbc)])}:{},..._0x3ff3b1['messageI'+'d']?{'messageId':String(_0x3ff3b1[_0x12aa58(0xbf)+'d'])}:{},..._0x39bb9e?{'toolCallId':_0x39bb9e}:{},..._0x3ff3b1[_0x12aa58(0x7a)]?{'toolName':String(_0x3ff3b1[_0x12aa58(0x7a)])}:{},'source':String(_0x3ff3b1['source']||_0x12aa58(0xac)+_0x12aa58(0xd2)+_0x12aa58(0xcc)),'fileKind':String(_0x3ff3b1['fileKind']||_0x12aa58(0xa6))};}function sortFiles(_0x10b2bb){const _0x1be623=_0x4c14de;return _0x10b2bb[_0x1be623(0x83)]((_0x39b046,_0x203ff8)=>Number(_0x203ff8[_0x1be623(0x89)+'t']||0x0)-Number(_0x39b046[_0x1be623(0x89)+'t']||0x0));}export function createGeneratedFilesStore({stateDir:_0x406ed0}){async function _0x40e43a(){const _0x7ed371=_0x15be,_0x39c78b=await readStore(_0x406ed0);return{'files':sortFiles(_0x39c78b[_0x7ed371(0x9c)]),'indexedAt':_0x39c78b[_0x7ed371(0x81)+'t']};}async function _0xff26b3(_0x5abf05={}){const _0x1ca206=_0x15be,_0x1531fe=(Array[_0x1ca206(0xc3)](_0x5abf05[_0x1ca206(0x9c)])?_0x5abf05[_0x1ca206(0x9c)]:[])['map'](normalizeInput)[_0x1ca206(0xca)](Boolean),_0x1855ed=await readStore(_0x406ed0),_0x2342cf=new Map(_0x1855ed['files']['map'](_0x2f5975=>[_0x2f5975['id'],_0x2f5975]));let _0x163412=0x0;for(const _0x4dbc1a of _0x1531fe){const _0x127335=_0x2342cf['get'](_0x4dbc1a['id']),_0x29c9ed={..._0x127335,..._0x4dbc1a,'deletedFromFileCenter':![]};if(JSON['stringif'+'y'](_0x127335)!==JSON[_0x1ca206(0xc7)+'y'](_0x29c9ed))_0x163412+=0x1;_0x2342cf[_0x1ca206(0xa8)](_0x4dbc1a['id'],_0x29c9ed);}const _0x50112a={'files':sortFiles([..._0x2342cf['values']()]),'indexedAt':typeof _0x5abf05['indexedA'+'t']===_0x1ca206(0xa7)&&Number[_0x1ca206(0xc4)](_0x5abf05['indexedA'+'t'])?_0x5abf05[_0x1ca206(0x81)+'t']:_0x1855ed[_0x1ca206(0x81)+'t']};return await writeStore(_0x406ed0,_0x50112a),{'files':_0x1531fe,'changed':_0x163412};}async function _0x1c9488(_0x4dec1c){const _0x46bd5e=_0x15be,_0x341639=await readStore(_0x406ed0);let _0x34c073=0x0;const _0x5955f7=_0x341639[_0x46bd5e(0x9c)][_0x46bd5e(0xbb)](_0x161db5=>{const _0x5cf102=_0x46bd5e;if(_0x161db5['id']!==_0x4dec1c||_0x161db5[_0x5cf102(0x8a)+'romFileC'+_0x5cf102(0xc8)])return _0x161db5;return _0x34c073+=0x1,{..._0x161db5,'deletedFromFileCenter':!![],'deletedAt':Date[_0x5cf102(0xda)]()};});return await writeStore(_0x406ed0,{..._0x341639,'files':_0x5955f7}),{'ok':!![],'id':_0x4dec1c,'changed':_0x34c073};}async function _0x2ad25b(_0x1928ae){const _0x22c9ed=_0x15be,_0x14cb0b=await readStore(_0x406ed0);let _0x273f33=0x0;const _0x181709=_0x14cb0b[_0x22c9ed(0x9c)][_0x22c9ed(0xbb)](_0x36a671=>{const _0x50fc31=_0x22c9ed;if(_0x36a671[_0x50fc31(0xd6)+'ey']!==_0x1928ae||_0x36a671['deletedF'+_0x50fc31(0xc2)+_0x50fc31(0xc8)])return _0x36a671;return _0x273f33+=0x1,{..._0x36a671,'deletedFromFileCenter':!![],'deletedAt':Date[_0x50fc31(0xda)]()};});return await writeStore(_0x406ed0,{..._0x14cb0b,'files':_0x181709}),{'ok':!![],'sessionKey':_0x1928ae,'changed':_0x273f33};}async function _0x55164(_0x86e3e3){const _0x39d3b7=_0x15be,_0x1bf04a=await readStore(_0x406ed0),_0x634278=_0x1bf04a[_0x39d3b7(0x9c)][_0x39d3b7(0xc9)](_0x49d682=>_0x49d682['id']===_0x86e3e3);if(!_0x634278)return{'ok':![],'id':_0x86e3e3,'alreadyMissing':!![]};let _0x3e02ac=![],_0x230e7c=![];try{!existsSync(_0x634278[_0x39d3b7(0xa9)])?_0x230e7c=!![]:(await rm(_0x634278['path'],{'recursive':!![],'force':!![]}),_0x3e02ac=!![]);}catch(_0xe69fee){const _0x442c3c=_0x1bf04a['files'][_0x39d3b7(0xbb)](_0x3f3605=>_0x3f3605['id']===_0x86e3e3?{..._0x3f3605,'deletedFromFileCenter':!![],'deletedAt':Date[_0x39d3b7(0xda)]()}:_0x3f3605);return await writeStore(_0x406ed0,{..._0x1bf04a,'files':_0x442c3c}),{'ok':![],'id':_0x86e3e3,'path':_0x634278[_0x39d3b7(0xa9)],'deletedFromDisk':_0x3e02ac,'alreadyMissing':_0x230e7c,'error':_0xe69fee instanceof Error?_0xe69fee[_0x39d3b7(0x7b)]:String(_0xe69fee)};}const _0x424f37=_0x1bf04a[_0x39d3b7(0x9c)][_0x39d3b7(0xbb)](_0x28c793=>_0x28c793['id']===_0x86e3e3?{..._0x28c793,'deletedFromDisk':_0x3e02ac,'deletedFromFileCenter':!![],'deletedAt':Date['now']()}:_0x28c793);return await writeStore(_0x406ed0,{..._0x1bf04a,'files':_0x424f37}),{'ok':!![],'id':_0x86e3e3,'path':_0x634278[_0x39d3b7(0xa9)],'deletedFromDisk':_0x3e02ac,'alreadyMissing':_0x230e7c};}async function _0xec3705(_0x3e8d5e=[]){const _0x5690ba=_0x15be,_0x363f97=await readStore(_0x406ed0),_0x4fd365=new Map(_0x363f97[_0x5690ba(0x9c)][_0x5690ba(0xbb)](_0x2b1386=>[_0x2b1386[_0x5690ba(0xa9)],_0x2b1386])),_0x5e0fc4=(Array[_0x5690ba(0xc3)](_0x3e8d5e)?_0x3e8d5e:[])['map'](_0x5d4e62=>{const _0xa96b75=_0x5690ba,_0x290a03=toLocalPath(_0x5d4e62),_0x55d780=_0x4fd365[_0xa96b75(0xab)](_0x290a03);return{'path':_0x290a03,'deleted':Boolean(_0x55d780?.['deletedF'+_0xa96b75(0xc2)+_0xa96b75(0xc8)]||_0x55d780?.[_0xa96b75(0x8a)+_0xa96b75(0xcb)]||_0x290a03&&!existsSync(_0x290a03)),..._0x55d780?.['id']?{'recordId':_0x55d780['id']}:{},..._0x55d780?.[_0xa96b75(0x87)+'t']?{'deletedAt':_0x55d780[_0xa96b75(0x87)+'t']}:{}};});return{'files':_0x5e0fc4};}return{'list':_0x40e43a,'upsert':_0xff26b3,'hide':_0x1c9488,'hideBySession':_0x2ad25b,'deleteFile':_0x55164,'deletedState':_0xec3705};}
@@ -1 +1 @@
1
- function _0x5063(_0x50dedd,_0x3eafaa){_0x50dedd=_0x50dedd-0x193;var _0x393e4b=_0x393e();var _0x5063df=_0x393e4b[_0x50dedd];return _0x5063df;}(function(_0x3659b5,_0x2f90fc){var _0x36271c=_0x5063,_0x4836a5=_0x3659b5();while(!![]){try{var _0x130196=-parseInt(_0x36271c(0x194))/0x1+-parseInt(_0x36271c(0x199))/0x2+parseInt(_0x36271c(0x195))/0x3+-parseInt(_0x36271c(0x198))/0x4+parseInt(_0x36271c(0x193))/0x5+-parseInt(_0x36271c(0x197))/0x6*(parseInt(_0x36271c(0x19a))/0x7)+parseInt(_0x36271c(0x196))/0x8;if(_0x130196===_0x2f90fc)break;else _0x4836a5['push'](_0x4836a5['shift']());}catch(_0x1d8716){_0x4836a5['push'](_0x4836a5['shift']());}}}(_0x393e,0x87bb1));export{ensureOpenClawDoctorFixed,loadRuntimeInfo,prepareRuntime,runClawOnce,spawnClaw}from'./runtime.mjs';function _0x393e(){var _0x52c30c=['1547976pvFeak','329346EvAiYi','7bLpRgF','711825WPEnor','448220VmzSAd','515409WnGLEt','13955224BFSpKK','3016386CnRygs'];_0x393e=function(){return _0x52c30c;};return _0x393e();}export{createConfigController}from'./config-controller.mjs';export{createGatewayController}from'./gateway-controller.mjs';
1
+ (function(_0x4cb216,_0x245af3){var _0x2aa75d=_0x1204,_0x452f8f=_0x4cb216();while(!![]){try{var _0x1cf4dd=parseInt(_0x2aa75d(0x9d))/0x1*(-parseInt(_0x2aa75d(0x9f))/0x2)+parseInt(_0x2aa75d(0x9e))/0x3*(-parseInt(_0x2aa75d(0xa3))/0x4)+-parseInt(_0x2aa75d(0xa2))/0x5*(-parseInt(_0x2aa75d(0xa4))/0x6)+parseInt(_0x2aa75d(0x9b))/0x7*(-parseInt(_0x2aa75d(0x9a))/0x8)+-parseInt(_0x2aa75d(0xa1))/0x9+-parseInt(_0x2aa75d(0xa0))/0xa+parseInt(_0x2aa75d(0x9c))/0xb;if(_0x1cf4dd===_0x245af3)break;else _0x452f8f['push'](_0x452f8f['shift']());}catch(_0x25a297){_0x452f8f['push'](_0x452f8f['shift']());}}}(_0x310f,0x90264));export{ensureOpenClawDoctorFixed,loadRuntimeInfo,prepareRuntime,runClawOnce,spawnClaw}from'./runtime.mjs';export{createConfigController}from'./config-controller.mjs';function _0x310f(){var _0x5be707=['9300564VcxVkq','5BrXotq','132940cUxEbu','2957586Fbthup','6607184DzVXUl','7CVYWdD','39719515EvCaXv','1TDteOc','33HbnBgk','581474EHnqPj','9977440llxgIO'];_0x310f=function(){return _0x5be707;};return _0x310f();}export{createGatewayController}from'./gateway-controller.mjs';function _0x1204(_0x5a24c4,_0x26431d){_0x5a24c4=_0x5a24c4-0x9a;var _0x310fa4=_0x310f();var _0x120438=_0x310fa4[_0x5a24c4];return _0x120438;}export{normalizeOpenClawConfigShape}from'./openclaw-config-compat.mjs';
@@ -1 +1 @@
1
- (function(_0x487b37,_0x2b0fbc){const _0x517bdf=_0x8ea6,_0x59bba3=_0x487b37();while(!![]){try{const _0x1b9c57=-parseInt(_0x517bdf(0x218))/0x1+-parseInt(_0x517bdf(0x21e))/0x2*(parseInt(_0x517bdf(0x1e4))/0x3)+-parseInt(_0x517bdf(0x1ed))/0x4+-parseInt(_0x517bdf(0x225))/0x5+-parseInt(_0x517bdf(0x215))/0x6+parseInt(_0x517bdf(0x21d))/0x7*(parseInt(_0x517bdf(0x1f0))/0x8)+parseInt(_0x517bdf(0x1fe))/0x9*(parseInt(_0x517bdf(0x1f2))/0xa);if(_0x1b9c57===_0x2b0fbc)break;else _0x59bba3['push'](_0x59bba3['shift']());}catch(_0x318359){_0x59bba3['push'](_0x59bba3['shift']());}}}(_0x3cc5,0x33246));import{createHash}from'node:crypto';import{spawn}from'node:child_process';import{existsSync}from'node:fs';import{cp,mkdir,rm}from'node:fs/promises';import{homedir,tmpdir}from'node:os';import{basename,dirname,isAbsolute,join,relative,resolve}from'node:path';import{createFileLogger,redactLogValue}from'@wujie-shell/logger';const LOG_MAX_BYTES=0x2*0x400*0x400,LOG_KEEP_COUNT=0x5,loggers=new Map(),CONTENT_PREVIEW_LENGTH=0xf0;export function createShellLogger(_0x40a649,_0x2e845e,_0x1fcc81=_0x2e845e){const _0x5272b4=_0x8ea6,_0x1bcb96=_0x40a649?.[_0x5272b4(0x1fa)];if(!_0x1bcb96||!_0x2e845e)return null;const _0x1250b9=join(_0x1bcb96,_0x2e845e,_0x2e845e+'.log'),_0x380029=_0x1250b9+':'+_0x1fcc81;return!loggers[_0x5272b4(0x1ff)](_0x380029)&&loggers[_0x5272b4(0x1f1)](_0x380029,createFileLogger({'filePath':_0x1250b9,'context':_0x1fcc81,'maxBytes':LOG_MAX_BYTES,'keepCount':LOG_KEEP_COUNT})),loggers[_0x5272b4(0x210)](_0x380029);}export function toHomePath(_0x59d3a3){const _0x57c8ea=_0x8ea6,_0x20bce5=typeof _0x59d3a3===_0x57c8ea(0x1fc)?_0x59d3a3:'';if(!_0x20bce5)return'';const _0x45970d=homedir(),_0x3b4752=isAbsolute(_0x20bce5)?_0x20bce5:resolve(_0x20bce5),_0x4784b5=relative(_0x45970d,_0x3b4752);if(!_0x4784b5||!_0x4784b5[_0x57c8ea(0x20d)+'th']('..')&&!isAbsolute(_0x4784b5))return _0x4784b5?'~/'+_0x4784b5:'~';return _0x3b4752;}export function hashText(_0x144af0){const _0x669b71=_0x8ea6;return createHash(_0x669b71(0x227))['update'](String(_0x144af0))[_0x669b71(0x1eb)](_0x669b71(0x200))[_0x669b71(0x20f)](0x0,0x10);}export function truncateText(_0x3fb54a,_0x3057d0=CONTENT_PREVIEW_LENGTH){const _0x3484d=_0x8ea6,_0x21cb57=String(_0x3fb54a??'')[_0x3484d(0x1e8)](/\s+/g,'\x20')[_0x3484d(0x1e7)]();if(_0x21cb57[_0x3484d(0x203)]<=_0x3057d0)return _0x21cb57;return _0x21cb57[_0x3484d(0x20f)](0x0,_0x3057d0)+_0x3484d(0x1e5);}export function summarizeText(_0x166011,_0x4a7c0f=CONTENT_PREVIEW_LENGTH){const _0x5e3283=_0x8ea6,_0x3a07b5=String(_0x166011??'');return{'length':_0x3a07b5[_0x5e3283(0x203)],'hash':hashText(_0x3a07b5),'preview':truncateText(_0x3a07b5,_0x4a7c0f),'truncated':_0x3a07b5[_0x5e3283(0x203)]>_0x4a7c0f};}function _0x8ea6(_0x55c769,_0xbbe571){_0x55c769=_0x55c769-0x1e2;const _0x3cc5a5=_0x3cc5();let _0x8ea61f=_0x3cc5a5[_0x55c769];return _0x8ea61f;}export function summarizeError(_0x5c1d3c){const _0x5e2722=_0x8ea6;if(_0x5c1d3c instanceof Error)return{'name':_0x5c1d3c[_0x5e2722(0x219)],'message':_0x5c1d3c['message'],'stack':_0x5c1d3c[_0x5e2722(0x21c)]};return{'message':String(_0x5c1d3c)};}function summarizePathValue(_0x45b8db){const _0x41cd89=_0x8ea6;if(typeof _0x45b8db!==_0x41cd89(0x1fc))return _0x45b8db;if(_0x45b8db['includes']('/')||_0x45b8db[_0x41cd89(0x1f6)]('\x5c'))return toHomePath(_0x45b8db);return _0x45b8db;}export function summarizePayload(_0x529c4e,_0x1032d8={}){const _0x5cdefb=_0x8ea6,_0x1dd56d=_0x1032d8[_0x5cdefb(0x214)]??0x4,_0x53d7b0=new WeakSet();function _0x5c10c0(_0x163e45,_0x7173c9,_0x59d4d8=''){const _0x393d73=_0x5cdefb;if(_0x163e45==null)return _0x163e45;if(typeof _0x163e45===_0x393d73(0x1fc)){if(/message|content|prompt|text|body/i[_0x393d73(0x1ea)](_0x59d4d8))return summarizeText(_0x163e45,_0x1032d8[_0x393d73(0x1ec)+'iewLengt'+'h']);return summarizePathValue(_0x163e45);}if(typeof _0x163e45!=='object')return _0x163e45;if(_0x163e45 instanceof Error)return summarizeError(_0x163e45);if(_0x53d7b0[_0x393d73(0x1ff)](_0x163e45))return _0x393d73(0x205)+'r]';if(_0x7173c9>=_0x1dd56d)return'['+(Array['isArray'](_0x163e45)?_0x393d73(0x1fb):'Object')+']';_0x53d7b0['add'](_0x163e45);if(Array[_0x393d73(0x202)](_0x163e45))return{'type':_0x393d73(0x1f8),'length':_0x163e45['length'],'items':_0x163e45[_0x393d73(0x20f)](0x0,0x5)[_0x393d73(0x1e3)](_0x181922=>_0x5c10c0(_0x181922,_0x7173c9+0x1,_0x59d4d8)),'truncated':_0x163e45[_0x393d73(0x203)]>0x5};const _0x328435={};for(const [_0x4aafae,_0x4bb90c]of Object[_0x393d73(0x1e6)](_0x163e45)){_0x328435[_0x4aafae]=_0x5c10c0(_0x4bb90c,_0x7173c9+0x1,_0x4aafae);}return redactLogValue(_0x328435);}return _0x5c10c0(_0x529c4e,0x0);}function _0x3cc5(){const _0x3839b1=['trim','replace','error','test','digest','textPrev','334840kDnCuL','\x20-Force','$Progres','9288XtEjjM','set','10YFJcOz','base64','nce=\x27Sil','ignore','includes','filter','array','-NoProfi','logsDir','Array','string','\x20-Destin','13109958Hucdys','has','hex','ationPat','isArray','length','data','[Circula','.zip','stderr','pid','win32','powershe','\x20failed\x20','close','startsWi','catch','slice','get','toISOStr','logs\x20dir','sPrefere','maxDepth','2140680vKGPfF','env','-Encoded','145153hEzclV','name','utf16le','Command','stack','763kFPDBq','32LcMDPY','stringif','now','ll.exe','ectory\x20n','wujie-sh','ot\x20found','1944930OEyAfo','join','sha256','pipe','map','74832CrxsUZ','...','entries'];_0x3cc5=function(){return _0x3839b1;};return _0x3cc5();}export function summarizeFilePaths(_0x192f3f=[]){const _0x5505a7=_0x8ea6;return(Array[_0x5505a7(0x202)](_0x192f3f)?_0x192f3f:[])[_0x5505a7(0x1e3)](_0x55266a=>String(_0x55266a||'')[_0x5505a7(0x1e7)]())[_0x5505a7(0x1f7)](Boolean)['map'](_0x1a553e=>({'path':toHomePath(_0x1a553e),'name':basename(_0x1a553e)}));}function run(_0x212ef6,_0x5ef83f,_0x55f030={}){return new Promise((_0x5dd101,_0x149796)=>{const _0x2a2c0a=_0x8ea6,_0x3e22d9=spawn(_0x212ef6,_0x5ef83f,{'cwd':_0x55f030['cwd'],'env':{...process.env,..._0x55f030[_0x2a2c0a(0x216)]??{}},'stdio':[_0x2a2c0a(0x1f5),_0x2a2c0a(0x1e2),_0x2a2c0a(0x1e2)]});let _0x3dd83f='';_0x3e22d9[_0x2a2c0a(0x207)]?.['on'](_0x2a2c0a(0x204),_0x2dba19=>{_0x3dd83f+=_0x2dba19['toString']();}),_0x3e22d9['on'](_0x2a2c0a(0x1e9),_0x149796),_0x3e22d9['on'](_0x2a2c0a(0x20c),_0x39e339=>{const _0x4dd8bf=_0x2a2c0a;if(_0x39e339===0x0){_0x5dd101();return;}_0x149796(new Error(_0x212ef6+(_0x4dd8bf(0x20b)+'with\x20cod'+'e=')+_0x39e339+':\x20'+_0x3dd83f));});});}export async function exportLogsArchive({logsDir:_0x2f62b3,targetDir:_0x5d61a4,appVersion:appVersion='dev'}){const _0x407608=_0x8ea6;if(!_0x2f62b3||!existsSync(_0x2f62b3))throw new Error(_0x407608(0x212)+_0x407608(0x222)+_0x407608(0x224)+':\x20'+(_0x2f62b3||''));const _0x247401=String(appVersion||'dev')[_0x407608(0x1e8)](/[^A-Za-z0-9._-]/g,'_'),_0x22254c=new Date()[_0x407608(0x211)+'ing']()[_0x407608(0x1e8)](/[-:]/g,'')[_0x407608(0x1e8)](/\..+$/,''),_0x4ffdca=_0x5d61a4||tmpdir();await mkdir(_0x4ffdca,{'recursive':!![]});const _0x393d3b=join(_0x4ffdca,_0x407608(0x223)+'ell-logs'+'-'+_0x22254c+'-'+_0x247401+_0x407608(0x206));if(process['platform']===_0x407608(0x209)){const _0xa0fa1f=join(tmpdir(),_0x407608(0x223)+'ell-logs'+'-'+process[_0x407608(0x208)]+'-'+Date[_0x407608(0x220)]());await rm(_0xa0fa1f,{'recursive':!![],'force':!![]}),await cp(_0x2f62b3,_0xa0fa1f,{'recursive':!![],'force':!![]});try{const _0x56721e=[_0x407608(0x1ef)+_0x407608(0x213)+_0x407608(0x1f4)+'entlyCon'+'tinue\x27;','Compress'+'-Archive'+'\x20-Path\x20'+JSON['stringif'+'y'](join(_0xa0fa1f,'*'))+(_0x407608(0x1fd)+_0x407608(0x201)+'h\x20')+JSON[_0x407608(0x21f)+'y'](_0x393d3b)+_0x407608(0x1ee)][_0x407608(0x226)]('\x20'),_0x8a7121=Buffer['from'](_0x56721e,_0x407608(0x21a))['toString'](_0x407608(0x1f3));await run(_0x407608(0x20a)+_0x407608(0x221),[_0x407608(0x1f9)+'le',_0x407608(0x217)+_0x407608(0x21b),_0x8a7121]);}finally{await rm(_0xa0fa1f,{'recursive':!![],'force':!![]})[_0x407608(0x20e)](()=>{});}}else await run('zip',['-r',_0x393d3b,'.'],{'cwd':_0x2f62b3});return{'ok':!![],'path':_0x393d3b};}
1
+ function _0x3f3d(_0x264f57,_0x23d18c){_0x264f57=_0x264f57-0x11b;const _0x5994cf=_0x5994();let _0x3f3d16=_0x5994cf[_0x264f57];return _0x3f3d16;}const _0x41f463=_0x3f3d;(function(_0x12153e,_0x177c08){const _0x35b16f=_0x3f3d,_0x1aa0cd=_0x12153e();while(!![]){try{const _0x57133b=parseInt(_0x35b16f(0x160))/0x1+-parseInt(_0x35b16f(0x14f))/0x2*(-parseInt(_0x35b16f(0x15f))/0x3)+parseInt(_0x35b16f(0x149))/0x4*(parseInt(_0x35b16f(0x122))/0x5)+-parseInt(_0x35b16f(0x13b))/0x6*(parseInt(_0x35b16f(0x136))/0x7)+-parseInt(_0x35b16f(0x13a))/0x8+parseInt(_0x35b16f(0x146))/0x9+parseInt(_0x35b16f(0x13e))/0xa;if(_0x57133b===_0x177c08)break;else _0x1aa0cd['push'](_0x1aa0cd['shift']());}catch(_0x53bee2){_0x1aa0cd['push'](_0x1aa0cd['shift']());}}}(_0x5994,0x953d3));import{createHash}from'node:crypto';import{spawn}from'node:child_process';import{existsSync}from'node:fs';import{cp,mkdir,rm}from'node:fs/promises';import{homedir,tmpdir}from'node:os';import{basename,dirname,isAbsolute,join,relative,resolve}from'node:path';function _0x5994(){const _0x3d3e7e=['ell-logs','update','50VXBlyf','maxDepth','test','length','join','ing','sPrefere','isArray','stderr','filter','get','dev','slice','message','platform','env','38154bbYBhR','425468bxTZAR','Command','base64','[Circula','textPrev','object','.zip','entries','with\x20cod','catch','from','ll.exe','zip','900nudBCb','add','Array','ot\x20found','toISOStr','pipe','stack','-NoProfi','\x20-Force','nce=\x27Sil','logs\x20dir','entlyCon','.log','\x20-Destin','ationPat','trim','includes','string','Compress','has','1582muxToG','replace','powershe','-Archive','8742328IJGwVb','13212ILsgcz','wujie-sh','toString','3994420PvjTyr','stringif','close','hex','pid','logsDir','map','array','6706134vvizeu','cwd','name','6972HPRCTm','tinue\x27;','startsWi','set'];_0x5994=function(){return _0x3d3e7e;};return _0x5994();}import{createFileLogger,redactLogValue}from'@wujie-shell/logger';const LOG_MAX_BYTES=0x2*0x400*0x400,LOG_KEEP_COUNT=0x5,loggers=new Map(),CONTENT_PREVIEW_LENGTH=0xf0;export function createShellLogger(_0x32db14,_0x4a8513,_0x470b10=_0x4a8513){const _0x473e6e=_0x3f3d,_0x1e3c6b=_0x32db14?.[_0x473e6e(0x143)];if(!_0x1e3c6b||!_0x4a8513)return null;const _0x247dd9=join(_0x1e3c6b,_0x4a8513,_0x4a8513+_0x473e6e(0x12e)),_0x4d853f=_0x247dd9+':'+_0x470b10;return!loggers[_0x473e6e(0x135)](_0x4d853f)&&loggers[_0x473e6e(0x14c)](_0x4d853f,createFileLogger({'filePath':_0x247dd9,'context':_0x470b10,'maxBytes':LOG_MAX_BYTES,'keepCount':LOG_KEEP_COUNT})),loggers[_0x473e6e(0x159)](_0x4d853f);}export function toHomePath(_0x7f84db){const _0x155ade=_0x3f3d,_0x200148=typeof _0x7f84db===_0x155ade(0x133)?_0x7f84db:'';if(!_0x200148)return'';const _0x40569f=homedir(),_0x22cc0e=isAbsolute(_0x200148)?_0x200148:resolve(_0x200148),_0x2ca26e=relative(_0x40569f,_0x22cc0e);if(!_0x2ca26e||!_0x2ca26e[_0x155ade(0x14b)+'th']('..')&&!isAbsolute(_0x2ca26e))return _0x2ca26e?'~/'+_0x2ca26e:'~';return _0x22cc0e;}export function hashText(_0x31d04d){const _0x1a1402=_0x3f3d;return createHash('sha256')[_0x1a1402(0x14e)](String(_0x31d04d))['digest'](_0x1a1402(0x141))[_0x1a1402(0x15b)](0x0,0x10);}export function truncateText(_0x166070,_0x4889fa=CONTENT_PREVIEW_LENGTH){const _0x5d2bfc=_0x3f3d,_0x183f66=String(_0x166070??'')[_0x5d2bfc(0x137)](/\s+/g,'\x20')[_0x5d2bfc(0x131)]();if(_0x183f66['length']<=_0x4889fa)return _0x183f66;return _0x183f66[_0x5d2bfc(0x15b)](0x0,_0x4889fa)+'...';}export function summarizeText(_0x3872ab,_0x537344=CONTENT_PREVIEW_LENGTH){const _0x39ec36=_0x3f3d,_0x1fe76f=String(_0x3872ab??'');return{'length':_0x1fe76f[_0x39ec36(0x152)],'hash':hashText(_0x1fe76f),'preview':truncateText(_0x1fe76f,_0x537344),'truncated':_0x1fe76f[_0x39ec36(0x152)]>_0x537344};}export function summarizeError(_0x2ad41e){const _0x564af3=_0x3f3d;if(_0x2ad41e instanceof Error)return{'name':_0x2ad41e[_0x564af3(0x148)],'message':_0x2ad41e[_0x564af3(0x15c)],'stack':_0x2ad41e[_0x564af3(0x128)]};return{'message':String(_0x2ad41e)};}function summarizePathValue(_0x2c1ce1){const _0x4547b5=_0x3f3d;if(typeof _0x2c1ce1!==_0x4547b5(0x133))return _0x2c1ce1;if(_0x2c1ce1[_0x4547b5(0x132)]('/')||_0x2c1ce1[_0x4547b5(0x132)]('\x5c'))return toHomePath(_0x2c1ce1);return _0x2c1ce1;}export function summarizePayload(_0x41321b,_0x35585a={}){const _0x31b727=_0x3f3d,_0x20ac0e=_0x35585a[_0x31b727(0x150)]??0x4,_0x112d6f=new WeakSet();function _0x39c5e7(_0xbc0c74,_0x596d63,_0x56a321=''){const _0x3bf5ec=_0x31b727;if(_0xbc0c74==null)return _0xbc0c74;if(typeof _0xbc0c74==='string'){if(/message|content|prompt|text|body/i[_0x3bf5ec(0x151)](_0x56a321))return summarizeText(_0xbc0c74,_0x35585a[_0x3bf5ec(0x164)+'iewLengt'+'h']);return summarizePathValue(_0xbc0c74);}if(typeof _0xbc0c74!==_0x3bf5ec(0x165))return _0xbc0c74;if(_0xbc0c74 instanceof Error)return summarizeError(_0xbc0c74);if(_0x112d6f[_0x3bf5ec(0x135)](_0xbc0c74))return _0x3bf5ec(0x163)+'r]';if(_0x596d63>=_0x20ac0e)return'['+(Array[_0x3bf5ec(0x156)](_0xbc0c74)?_0x3bf5ec(0x124):'Object')+']';_0x112d6f[_0x3bf5ec(0x123)](_0xbc0c74);if(Array[_0x3bf5ec(0x156)](_0xbc0c74))return{'type':_0x3bf5ec(0x145),'length':_0xbc0c74[_0x3bf5ec(0x152)],'items':_0xbc0c74[_0x3bf5ec(0x15b)](0x0,0x5)[_0x3bf5ec(0x144)](_0x2cb0c5=>_0x39c5e7(_0x2cb0c5,_0x596d63+0x1,_0x56a321)),'truncated':_0xbc0c74['length']>0x5};const _0x33e174={};for(const [_0x152004,_0x7e4cfd]of Object[_0x3bf5ec(0x11c)](_0xbc0c74)){_0x33e174[_0x152004]=_0x39c5e7(_0x7e4cfd,_0x596d63+0x1,_0x152004);}return redactLogValue(_0x33e174);}return _0x39c5e7(_0x41321b,0x0);}export function summarizeFilePaths(_0x2df3a1=[]){const _0x113e29=_0x3f3d;return(Array[_0x113e29(0x156)](_0x2df3a1)?_0x2df3a1:[])[_0x113e29(0x144)](_0x24f115=>String(_0x24f115||'')[_0x113e29(0x131)]())[_0x113e29(0x158)](Boolean)[_0x113e29(0x144)](_0x1fe0bd=>({'path':toHomePath(_0x1fe0bd),'name':basename(_0x1fe0bd)}));}function run(_0x4ef18f,_0x4de1f1,_0x5485d1={}){return new Promise((_0x2a51f6,_0x4d5603)=>{const _0x104747=_0x3f3d,_0x3f5356=spawn(_0x4ef18f,_0x4de1f1,{'cwd':_0x5485d1[_0x104747(0x147)],'env':{...process.env,..._0x5485d1[_0x104747(0x15e)]??{}},'stdio':['ignore',_0x104747(0x127),_0x104747(0x127)]});let _0x4f3fc2='';_0x3f5356[_0x104747(0x157)]?.['on']('data',_0x50dcf5=>{const _0x157c27=_0x104747;_0x4f3fc2+=_0x50dcf5[_0x157c27(0x13d)]();}),_0x3f5356['on']('error',_0x4d5603),_0x3f5356['on'](_0x104747(0x140),_0x35a8f8=>{const _0x13f04f=_0x104747;if(_0x35a8f8===0x0){_0x2a51f6();return;}_0x4d5603(new Error(_0x4ef18f+('\x20failed\x20'+_0x13f04f(0x11d)+'e=')+_0x35a8f8+':\x20'+_0x4f3fc2));});});}export async function exportLogsArchive({logsDir:_0x54821f,targetDir:_0x4e7206,appVersion:appVersion=_0x41f463(0x15a)}){const _0x324212=_0x41f463;if(!_0x54821f||!existsSync(_0x54821f))throw new Error(_0x324212(0x12c)+'ectory\x20n'+_0x324212(0x125)+':\x20'+(_0x54821f||''));const _0x18afe7=String(appVersion||_0x324212(0x15a))['replace'](/[^A-Za-z0-9._-]/g,'_'),_0x53afd1=new Date()[_0x324212(0x126)+_0x324212(0x154)]()[_0x324212(0x137)](/[-:]/g,'')[_0x324212(0x137)](/\..+$/,''),_0x26cce7=_0x4e7206||tmpdir();await mkdir(_0x26cce7,{'recursive':!![]});const _0x3fb02d=join(_0x26cce7,_0x324212(0x13c)+'ell-logs'+'-'+_0x53afd1+'-'+_0x18afe7+_0x324212(0x11b));if(process[_0x324212(0x15d)]==='win32'){const _0x204391=join(tmpdir(),_0x324212(0x13c)+_0x324212(0x14d)+'-'+process[_0x324212(0x142)]+'-'+Date['now']());await rm(_0x204391,{'recursive':!![],'force':!![]}),await cp(_0x54821f,_0x204391,{'recursive':!![],'force':!![]});try{const _0x2fb98a=['$Progres'+_0x324212(0x155)+_0x324212(0x12b)+_0x324212(0x12d)+_0x324212(0x14a),_0x324212(0x134)+_0x324212(0x139)+'\x20-Path\x20'+JSON[_0x324212(0x13f)+'y'](join(_0x204391,'*'))+(_0x324212(0x12f)+_0x324212(0x130)+'h\x20')+JSON['stringif'+'y'](_0x3fb02d)+_0x324212(0x12a)][_0x324212(0x153)]('\x20'),_0x3ebeb7=Buffer[_0x324212(0x11f)](_0x2fb98a,'utf16le')[_0x324212(0x13d)](_0x324212(0x162));await run(_0x324212(0x138)+_0x324212(0x120),[_0x324212(0x129)+'le','-Encoded'+_0x324212(0x161),_0x3ebeb7]);}finally{await rm(_0x204391,{'recursive':!![],'force':!![]})[_0x324212(0x11e)](()=>{});}}else await run(_0x324212(0x121),['-r',_0x3fb02d,'.'],{'cwd':_0x54821f});return{'ok':!![],'path':_0x3fb02d};}
@@ -0,0 +1 @@
1
+ const _0x2ef4b6=_0x5602;(function(_0x524857,_0xd94fd2){const _0xe5ac1d=_0x5602,_0x39d668=_0x524857();while(!![]){try{const _0x5c1da1=-parseInt(_0xe5ac1d(0x1ff))/0x1+parseInt(_0xe5ac1d(0x20e))/0x2+-parseInt(_0xe5ac1d(0x202))/0x3+-parseInt(_0xe5ac1d(0x20b))/0x4+-parseInt(_0xe5ac1d(0x1f6))/0x5+-parseInt(_0xe5ac1d(0x201))/0x6+-parseInt(_0xe5ac1d(0x1fa))/0x7*(-parseInt(_0xe5ac1d(0x1f2))/0x8);if(_0x5c1da1===_0xd94fd2)break;else _0x39d668['push'](_0x39d668['shift']());}catch(_0x4063b2){_0x39d668['push'](_0x39d668['shift']());}}}(_0x1045,0x54bc0));import{asRecord}from'./utils.mjs';function _0x5602(_0x43e682,_0x1751d7){_0x43e682=_0x43e682-0x1ed;const _0x1045a2=_0x1045();let _0x5602b5=_0x1045a2[_0x43e682];return _0x5602b5;}const DEFAULT_MEMORY_FLUSH_PAIRS=[{'forceFlushTranscriptBytes':_0x2ef4b6(0x1ed),'softThresholdTokens':0x30d40},{'forceFlushTranscriptBytes':'5mb'}],CONNECTOR_DEFAULT_CONFIGS={'qq-mail-connector':{'enabled':![],'account':'','authorizationCode':'','imapHost':_0x2ef4b6(0x1fe)+_0x2ef4b6(0x20a),'imapPort':0x3e1,'smtpHost':_0x2ef4b6(0x1f0)+'com','smtpPort':0x1d1,'secure':!![],'credentialRef':'','connected':![]},'netease-mail-connector':{'enabled':![],'account':'','authorizationCode':'','imapHost':'imap.163'+_0x2ef4b6(0x205),'imapPort':0x3e1,'smtpHost':_0x2ef4b6(0x1f7)+'.com','smtpPort':0x1d1,'imapClientName':_0x2ef4b6(0x209),'imapClientVersion':_0x2ef4b6(0x1fd),'imapClientVendor':_0x2ef4b6(0x209),'imapClientSupportEmail':_0x2ef4b6(0x1f4)+'wujie.ai','secure':!![],'credentialRef':'','connected':![]},'tencent-exmail-connector':{'enabled':![],'account':'','authorizationCode':'','imapHost':_0x2ef4b6(0x212)+_0x2ef4b6(0x1f5)+'om','imapPort':0x3e1,'smtpHost':_0x2ef4b6(0x1f1)+_0x2ef4b6(0x1f5)+'om','smtpPort':0x1d1,'imapClientName':_0x2ef4b6(0x209),'imapClientVersion':_0x2ef4b6(0x1fd),'imapClientVendor':_0x2ef4b6(0x209),'imapClientSupportEmail':_0x2ef4b6(0x1f4)+_0x2ef4b6(0x215),'secure':!![],'credentialRef':'','connected':![]},'feishu-doc-connector':{'enabled':![],'authMode':_0x2ef4b6(0x211),'accountName':'','credentialRef':'','connected':![]}};export function normalizeOpenClawConfigShape(_0x2fce0b){const _0x414046=_0x2ef4b6;if(!_0x2fce0b||typeof _0x2fce0b!==_0x414046(0x1f9))return{};const _0x4aa6b4=structuredClone(_0x2fce0b);return normalizeMemoryFlush(_0x4aa6b4),removeShellOnlyConfig(_0x4aa6b4),normalizeConnectorPluginConfigs(_0x4aa6b4),_0x4aa6b4;}function normalizeMemoryFlush(_0xd52d1d){const _0x2bd174=_0x2ef4b6,_0x3dc82e=asRecord(_0xd52d1d[_0x2bd174(0x1fb)]);_0x2bd174(0x213)+'h'in _0x3dc82e&&delete _0x3dc82e[_0x2bd174(0x213)+'h'];const _0x21f78b=asRecord(asRecord(asRecord(asRecord(_0xd52d1d[_0x2bd174(0x1fc)])[_0x2bd174(0x1ef)])[_0x2bd174(0x207)+'on'])[_0x2bd174(0x210)+_0x2bd174(0x1ee)]);if(isDefaultMemoryFlush(_0x21f78b)){for(const _0x91b03c of Object[_0x2bd174(0x20c)](_0x21f78b)){delete _0x21f78b[_0x91b03c];}_0x21f78b[_0x2bd174(0x203)]=![];}}function isDefaultMemoryFlush(_0x15bcc7){const _0x33dcdc=_0x2ef4b6;if(_0x15bcc7[_0x33dcdc(0x203)]!==!![])return![];return DEFAULT_MEMORY_FLUSH_PAIRS[_0x33dcdc(0x1f8)](_0x39dadb=>Object['entries'](_0x39dadb)['every'](([_0x29186b,_0x16c9fc])=>_0x15bcc7[_0x29186b]===_0x16c9fc));}function _0x1045(){const _0x5e8085=['memoryFl','user','imap.exm','autoFlus','config','wujie.ai','256kb','ush','defaults','smtp.qq.','smtp.exm','64biwjAA','im_chann','support@','ail.qq.c','1207075wPamtc','smtp.163','some','object','2060996cICkwE','memory','agents','1.0.0','imap.qq.','529093gRYemV','imChanne','3903204BneCgj','1036521qmxFue','enabled','every','.com','entries','compacti','connecto','WujieAI','com','2086324jjRfln','keys','els','559556xtWQlH','plugins'];_0x1045=function(){return _0x5e8085;};return _0x1045();}function removeShellOnlyConfig(_0x4f64bc){const _0x1094df=_0x2ef4b6;delete _0x4f64bc[_0x1094df(0x208)+'rs'],delete _0x4f64bc[_0x1094df(0x1f3)+_0x1094df(0x20d)],delete _0x4f64bc[_0x1094df(0x200)+'ls'];}function normalizeConnectorPluginConfigs(_0x2639b5){const _0x14e8df=_0x2ef4b6,_0x33abb7=asRecord(asRecord(_0x2639b5[_0x14e8df(0x20f)])[_0x14e8df(0x206)]);for(const [_0x27f214,_0x2ae42b]of Object[_0x14e8df(0x206)](_0x33abb7)){const _0x16b170=asRecord(_0x2ae42b);if(_0x16b170[_0x14e8df(0x203)]!==![]||!_0x16b170['config'])continue;isEmptyDisabledConnectorConfig(_0x27f214,asRecord(_0x16b170[_0x14e8df(0x214)]))&&delete _0x16b170['config'];}}function isEmptyDisabledConnectorConfig(_0x287bfd,_0x329f4d){const _0x33e800=_0x2ef4b6,_0x4c1f41=CONNECTOR_DEFAULT_CONFIGS[_0x287bfd];if(!_0x4c1f41)return![];return Object[_0x33e800(0x206)](_0x329f4d)[_0x33e800(0x204)](([_0x40eec3,_0x2c1a13])=>_0x4c1f41[_0x40eec3]===_0x2c1a13);}
@@ -1 +1 @@
1
- (function(_0x8eadfc,_0x117a5d){const _0x37ea7d=_0x3662,_0x28d1cf=_0x8eadfc();while(!![]){try{const _0x11e7be=-parseInt(_0x37ea7d(0x1ce))/0x1*(-parseInt(_0x37ea7d(0x1bf))/0x2)+parseInt(_0x37ea7d(0x1c8))/0x3+-parseInt(_0x37ea7d(0x1c6))/0x4*(parseInt(_0x37ea7d(0x1cf))/0x5)+-parseInt(_0x37ea7d(0x1c4))/0x6*(-parseInt(_0x37ea7d(0x1c3))/0x7)+-parseInt(_0x37ea7d(0x1c7))/0x8+-parseInt(_0x37ea7d(0x1c9))/0x9*(parseInt(_0x37ea7d(0x1bc))/0xa)+parseInt(_0x37ea7d(0x1c2))/0xb;if(_0x11e7be===_0x117a5d)break;else _0x28d1cf['push'](_0x28d1cf['shift']());}catch(_0x126d49){_0x28d1cf['push'](_0x28d1cf['shift']());}}}(_0xa5cd,0xf3dd7));import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'./utils.mjs';function _0x3662(_0x568aa3,_0x2b1b7a){_0x568aa3=_0x568aa3-0x1bb;const _0xa5cde6=_0xa5cd();let _0x366215=_0xa5cde6[_0x568aa3];return _0x366215;}function _0xa5cd(){const _0x114d9c=['7813UmRwdg','7664505dMYatL','enabled','tPluginI','108310TPqcpf','installs','disabled','124LzQEKx','local','length','42957376GuRvlw','4529BuzSEv','7386HKnsuK','entries','4tCnjKU','13633376wErpPe','1666122WjRmjt','1251TadjyY','has','pluginId','allow','source'];_0xa5cd=function(){return _0x114d9c;};return _0xa5cd();}export function syncRuntimeManifestPlugins(_0x3ac46f,_0x339e23,_0x29dfbf={}){const _0x189da5=_0x3662,_0x4c011f=new Set(_0x29dfbf[_0x189da5(0x1be)+'ByDefaul'+_0x189da5(0x1bb)+'ds']??[]),_0x54425c={...asRecord(_0x3ac46f)},_0x23c995={...asRecord(_0x54425c[_0x189da5(0x1c5)])},_0x2d802d={...asRecord(_0x54425c[_0x189da5(0x1bd)])};let _0x5f3dae=asStringArray(_0x54425c['allow']),_0x322e65=![];for(const _0x5ab370 of _0x339e23??[]){const _0x6a71a5=getTrimmedString(_0x5ab370[_0x189da5(0x1cb)]);if(!_0x6a71a5)continue;!(_0x6a71a5 in _0x23c995)&&(_0x23c995[_0x6a71a5]={'enabled':!_0x4c011f[_0x189da5(0x1ca)](_0x6a71a5)},_0x322e65=!![]);if(asRecord(_0x23c995[_0x6a71a5])[_0x189da5(0x1d0)]!==![]){const _0x25f428=dedupeStrings([..._0x5f3dae,_0x6a71a5]);_0x25f428[_0x189da5(0x1c1)]!==_0x5f3dae[_0x189da5(0x1c1)]&&(_0x5f3dae=_0x25f428,_0x322e65=!![]);}getTrimmedString(_0x5ab370[_0x189da5(0x1cd)])===_0x189da5(0x1c0)&&_0x6a71a5 in _0x2d802d&&(delete _0x2d802d[_0x6a71a5],_0x322e65=!![]);}_0x54425c[_0x189da5(0x1c5)]=_0x23c995,_0x54425c[_0x189da5(0x1cc)]=_0x5f3dae;if(Object['keys'](_0x2d802d)[_0x189da5(0x1c1)]>0x0)_0x54425c[_0x189da5(0x1bd)]=_0x2d802d;else delete _0x54425c[_0x189da5(0x1bd)];return{'plugins':_0x54425c,'changed':_0x322e65};}
1
+ function _0x314a(){const _0x282ea9=['155997VtdByp','length','6OymoRK','556KlwRzD','local','enabled','70964GanJDM','176074yaMwwd','ByDefaul','tPluginI','99945xgSjjA','5025460DLUWit','807jXoCuF','entries','has','1501276KiatEe','allow','installs','32ydbTpF','pluginId'];_0x314a=function(){return _0x282ea9;};return _0x314a();}function _0x2811(_0x591b24,_0x2b9d7c){_0x591b24=_0x591b24-0x186;const _0x314a3f=_0x314a();let _0x28118f=_0x314a3f[_0x591b24];return _0x28118f;}(function(_0x316d6f,_0x2a428d){const _0xaa4722=_0x2811,_0x590f9e=_0x316d6f();while(!![]){try{const _0x1f18a1=-parseInt(_0xaa4722(0x195))/0x1+-parseInt(_0xaa4722(0x196))/0x2+parseInt(_0xaa4722(0x187))/0x3*(parseInt(_0xaa4722(0x192))/0x4)+parseInt(_0xaa4722(0x199))/0x5+-parseInt(_0xaa4722(0x191))/0x6*(parseInt(_0xaa4722(0x18a))/0x7)+-parseInt(_0xaa4722(0x18d))/0x8*(parseInt(_0xaa4722(0x18f))/0x9)+parseInt(_0xaa4722(0x186))/0xa;if(_0x1f18a1===_0x2a428d)break;else _0x590f9e['push'](_0x590f9e['shift']());}catch(_0x672f80){_0x590f9e['push'](_0x590f9e['shift']());}}}(_0x314a,0x1c985));import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'./utils.mjs';export function syncRuntimeManifestPlugins(_0x5427cb,_0x11d6ff,_0x42eb8d={}){const _0x17e3a2=_0x2811,_0x587593=new Set(_0x42eb8d['disabled'+_0x17e3a2(0x197)+_0x17e3a2(0x198)+'ds']??[]),_0x2ecaf2={...asRecord(_0x5427cb)},_0x6d025f={...asRecord(_0x2ecaf2['entries'])},_0x52508a={...asRecord(_0x2ecaf2[_0x17e3a2(0x18c)])};let _0x40590b=asStringArray(_0x2ecaf2[_0x17e3a2(0x18b)]),_0x3410fa=![];for(const _0x1c2a02 of _0x11d6ff??[]){const _0x14f4d3=getTrimmedString(_0x1c2a02[_0x17e3a2(0x18e)]);if(!_0x14f4d3)continue;!(_0x14f4d3 in _0x6d025f)&&(_0x6d025f[_0x14f4d3]={'enabled':!_0x587593[_0x17e3a2(0x189)](_0x14f4d3)},_0x3410fa=!![]);if(asRecord(_0x6d025f[_0x14f4d3])[_0x17e3a2(0x194)]!==![]){const _0x18d2d7=dedupeStrings([..._0x40590b,_0x14f4d3]);_0x18d2d7[_0x17e3a2(0x190)]!==_0x40590b[_0x17e3a2(0x190)]&&(_0x40590b=_0x18d2d7,_0x3410fa=!![]);}getTrimmedString(_0x1c2a02['source'])===_0x17e3a2(0x193)&&_0x14f4d3 in _0x52508a&&(delete _0x52508a[_0x14f4d3],_0x3410fa=!![]);}_0x2ecaf2[_0x17e3a2(0x188)]=_0x6d025f,_0x2ecaf2[_0x17e3a2(0x18b)]=_0x40590b;if(Object['keys'](_0x52508a)[_0x17e3a2(0x190)]>0x0)_0x2ecaf2[_0x17e3a2(0x18c)]=_0x52508a;else delete _0x2ecaf2[_0x17e3a2(0x18c)];return{'plugins':_0x2ecaf2,'changed':_0x3410fa};}