@wujie-shell/core 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -4
- package/dist/bin/wujie-shell.mjs +1 -1
- package/dist/src/bundled-agent-skills.mjs +1 -1
- package/dist/src/bundled-agents.mjs +1 -1
- package/dist/src/config-controller.mjs +1 -1
- package/dist/src/electron/main.mjs +1 -1
- package/dist/src/electron/preload.mjs +1 -1
- package/dist/src/gateway-controller.mjs +1 -1
- package/dist/src/gateway-ws.mjs +1 -1
- package/dist/src/index.mjs +1 -1
- package/dist/src/logging.mjs +1 -1
- package/dist/src/plugin-sync.mjs +1 -1
- package/dist/src/runtime-logger.mjs +1 -1
- package/dist/src/runtime.mjs +1 -1
- package/dist/src/utils.mjs +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x1e3867=_0x54c5;(function(_0x25b6e8,_0x3e1caa){const _0xaa47de=_0x54c5,_0x15722e=_0x25b6e8();while(!![]){try{const _0x4fbbe6=-parseInt(_0xaa47de(0x1f5))/0x1+parseInt(_0xaa47de(0x2d0))/0x2*(-parseInt(_0xaa47de(0x2d1))/0x3)+-parseInt(_0xaa47de(0x224))/0x4*(-parseInt(_0xaa47de(0x251))/0x5)+-parseInt(_0xaa47de(0x233))/0x6*(parseInt(_0xaa47de(0x2a2))/0x7)+-parseInt(_0xaa47de(0x2e2))/0x8+-parseInt(_0xaa47de(0x2b8))/0x9+-parseInt(_0xaa47de(0x1f0))/0xa*(-parseInt(_0xaa47de(0x1f1))/0xb);if(_0x4fbbe6===_0x3e1caa)break;else _0x15722e['push'](_0x15722e['shift']());}catch(_0xc84f7){_0x15722e['push'](_0x15722e['shift']());}}}(_0x12c3,0xd789c));import{randomUUID}from'node:crypto';import{createServer}from'node:http';import{EventEmitter}from'node:events';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{basename,dirname,join}from'node:path';import _0x58c7af,{portNumbers}from'get-port';import{createLineBuffer}from'@wujie-shell/logger';import{asRecord,getTrimmedString}from'./utils.mjs';import{ensureOpenClawDoctorFixed,loadRuntimeInfo,spawnClaw}from'./runtime.mjs';import{ClawGatewayWsClient}from'./gateway-ws.mjs';import{ensureBundledAgents}from'./bundled-agents.mjs';import{syncBundledAgentSkillsToConfig,filterSkillsForAgent}from'./bundled-agent-skills.mjs';import{createShellLogger,summarizeError,summarizeFilePaths,summarizePayload,summarizeText,toHomePath}from'./logging.mjs';const LOG_LIMIT=0x3e8,CLIENT_ID=_0x1e3867(0x1de)+'client',CLIENT_MODE=_0x1e3867(0x1e3),CLIENT_DEVICE_FAMILY=_0x1e3867(0x26f),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,SESSION_METADATA_FILE=_0x1e3867(0x32f)+'metadata'+_0x1e3867(0x308),SHARED_CONTEXT_FILES=[_0x1e3867(0x22d)+'d',_0x1e3867(0x2ea)+_0x1e3867(0x2c6),'IDENTITY'+_0x1e3867(0x2c0),_0x1e3867(0x2d4)+'d',_0x1e3867(0x2e6),_0x1e3867(0x318),'USER.md'];function nowIso(){const _0x3dc1b8=_0x1e3867;return new Date()['toISOStr'+_0x3dc1b8(0x315)]();}function buildGatewayWsUrl(_0x416513){const _0x27eb31=_0x1e3867;return _0x27eb31(0x335)+_0x27eb31(0x2a1)+_0x416513;}function createInitialStatus(){const _0x119235=_0x1e3867;return{'lifecycle':_0x119235(0x320),'health':'unknown','port':null,'tokenPresent':![],'message':_0x119235(0x2fb)+'stopped','updatedAt':nowIso()};}function extractGatewayMessageText(_0x57e783){const _0x395ad2=_0x1e3867;if(typeof _0x57e783==='string')return _0x57e783;if(!Array[_0x395ad2(0x20e)](_0x57e783))return'';const _0x476caa=[];for(const _0x5725ca of _0x57e783){if(typeof _0x5725ca===_0x395ad2(0x265)){if(_0x5725ca)_0x476caa[_0x395ad2(0x2b4)](_0x5725ca);continue;}const _0x42b0ec=asRecord(_0x5725ca);_0x42b0ec[_0x395ad2(0x311)]==='text'&&typeof _0x42b0ec[_0x395ad2(0x2e4)]===_0x395ad2(0x265)&&_0x42b0ec[_0x395ad2(0x2e4)]&&_0x476caa['push'](_0x42b0ec['text']);}return _0x476caa[_0x395ad2(0x208)]('\x0a');}function extractGatewayChatText(_0x327cf7){const _0x23a1c5=_0x1e3867,_0x12b0b7=asRecord(_0x327cf7);if(typeof _0x12b0b7[_0x23a1c5(0x2e4)]==='string')return _0x12b0b7[_0x23a1c5(0x2e4)];return extractGatewayMessageText(_0x12b0b7[_0x23a1c5(0x212)]);}function _0x12c3(){const _0xbf0d92=['paths','changed','n\x20reques','type','terminal','Timer','kUserQue','ing','[wujie-s','setGatew','TOOLS.md','\x20context','label','message','model','map','agent\x20sk','openclaw','stopped','workspac','defaultI','stall\x20fa','er\x20start','message\x20','process\x20','plugins','kdown','ync\x20fail','led','modelNam',':session','\x20settled','mpleted','session-','websocke','res','text/pla','trim','ove','ws://127','quired','ath','lete\x20req','tHandler','filePath','agents.c','quested','productN','.list','log','image/jp','set','has','splice','unhealth','startedA','deny','agents-r','tatus\x20lo','uested','connecte','cron.run','filter','bundled\x20','nt\x20recei','image/gi','toString','get','image/sv','eys-upda','/ask-use','dly','ginConfi','chat\x20his','llow-unc','ed:\x20','now','flush','patch','gateway','x-ask-us','max','agentId','runtimeR','gateway-','Bin','cron.add','null','ded','backend','nexpecte','delete\x20c','mimeType','emit','ask-user','started','projectR','final','stack','bundled-','deleteTr','once','30YflDfv','16761096LOOUIt','skill\x20in','restartO','restart\x20','1561287DBEZmG','tateDir','port','info','27.0.0.1','eady','ng:\x20','ion/pdf','status','aborted','reate','\x20waiting','ted','writeHea','floor','delete','eam\x20fail','cron.upd','version','join','ntityPat','key','http://1','y\x20shortl','finally','isArray','request','requestI','trimEnd','content','SIGTERM','ndled\x20ag','und','fig','stringif','requeste','er\x20stop\x20','startsWi','entries','warn','chat\x20abo','chat','ing,\x20ple','size','t-stream','agent-ev','[REDACTE','24yGOHCz','chat\x20fai','errorMes','pid','ase','pinnedKe','pinned-k','e\x20update','onfigPat','AGENTS.m','task','ested','ved','slice','ompleted','161562inzTnw','stall\x20co','sessionI','updated','state','t\x20connec','unconfig','textLeng','run','killed','session','health','ion/octe','is\x20requi','running','jobId','.create','c\x20failed','markConf','listen','sage','Version','reconnec','some','chat\x20att','nstall','setSelfO','ensureGa','then','includes','1445740MLTjmZ','er-secre','resolveC','ensureIn','is\x20start','ate','skills\x20s','\x20for\x20WS','cron.rem','answers','tings','skills.s','itialCon','sessions','done','skill\x20de','clear','isFile','utf8','ternally','string','agents.l','ured','unauthor','\x20allocat','figChang','andledIn','elete','Fallback','chat\x20run','desktop','nected','split','Settings','watchCon','headers','behavior','skills.u','by\x20gatew','WorkingD','name','jobId\x20is','SIGKILL','url','lifecycl','eys\x20upda','hell:gat','agents\x20e','chat.sen','fileName','allow','image/','\x20request','ills\x20syn','ey\x20is\x20re','renamed','\x20run\x20--a','dispose','ents\x20syn','achments','stall\x20re','0.1.0','chat.his','tory','kill','stop','file','discover','keys','chat\x20str','spawn\x20re','TED]\x20--p','ame','anscript','destroy','readConf','pdate','ent','resolve','led:\x20','.0.0.1:','98TCWcqN','eam-even','configur','started,','ties','catch','method','text/csv','ist\x20requ','onfigure','n\x20callba','create\x20r','.delete','names','text/mar','peratedM','\x20list\x20co','delta','push','timeout','getModel','agents-u','10065816xFpdhc','stderr','t\x20not\x20fo','base64','setModel','create\x20c','r-questi','skill\x20up','.md','unknown','chat\x20eve','image','ode=','capabili','T.md','invalid\x20','\x20write\x20r','c\x20starte','c\x20comple','skills.i','rt\x20reque','ized','cron.lis','skills','2aMAIvt','3156912VLcIXr','system','parse','MEMORY.m','error','ist','chat-str','equested','provider','answer','sent','exited\x20c','arge:\x20','session\x20','agents','-questio','main','10514072ZfqFiM','--allow-','text','ayRestar','SOUL.md','data','end','deleted','HEARTBEA','image/pn','--token','restarti','resolveS','random','oot','length','odels','nChange','runId','stdout','red','source','applicat','d\x20--toke','g+xml','gateway\x20','settings','limit','\x20signal=','ase\x20retr','tokenPre','ion/json','off','starting','eviceIde','resolveD','--port','exited\x20u','.json','values','sted','sessionK','\x20require','e\x20shared'];_0x12c3=function(){return _0xbf0d92;};return _0x12c3();}function guessMimeType(_0xf60524){const _0x50982a=_0x1e3867,_0x3b87a3=_0xf60524[_0x50982a(0x271)]('.')['pop']()?.['toLowerC'+_0x50982a(0x228)]()??'',_0x5b08e7={'png':_0x50982a(0x2eb)+'g','jpg':_0x50982a(0x1bc)+'eg','jpeg':_0x50982a(0x1bc)+'eg','webp':'image/we'+'bp','gif':_0x50982a(0x1cb)+'f','svg':_0x50982a(0x1ce)+_0x50982a(0x2fa),'pdf':_0x50982a(0x2f8)+_0x50982a(0x1fc),'txt':_0x50982a(0x332)+'in','md':_0x50982a(0x2b0)+_0x50982a(0x328),'json':_0x50982a(0x2f8)+_0x50982a(0x301),'csv':_0x50982a(0x2a9)};return _0x5b08e7[_0x3b87a3]||_0x50982a(0x2f8)+_0x50982a(0x23f)+_0x50982a(0x221);}async function buildAttachments(_0x504e71=[]){const _0x5d5778=_0x1e3867,_0x64fd9=[];for(const _0x7e375d of _0x504e71){const _0x5c52be=getTrimmedString(_0x7e375d);if(!_0x5c52be)continue;const _0x25b0e8=await stat(_0x5c52be);if(!_0x25b0e8[_0x5d5778(0x262)]())continue;if(_0x25b0e8[_0x5d5778(0x220)]>ATTACHMENT_MAX_BYTES)throw new Error('attachme'+'nt\x20too\x20l'+_0x5d5778(0x2dd)+basename(_0x5c52be));const _0x252fda=guessMimeType(_0x5c52be);_0x64fd9[_0x5d5778(0x2b4)]({'type':_0x252fda[_0x5d5778(0x21a)+'th'](_0x5d5778(0x284))?_0x5d5778(0x2c3):_0x5d5778(0x293),'mimeType':_0x252fda,'content':(await readFile(_0x5c52be))[_0x5d5778(0x1cc)](_0x5d5778(0x2bb)),'fileName':basename(_0x5c52be)});}return _0x64fd9;}function buildSessionCreateRequestPayload(_0x44a2b6={}){const _0x168043=_0x1e3867,_0x2777ea={},_0x3d8877=Math[_0x168043(0x2ef)]()[_0x168043(0x1cc)](0x24)[_0x168043(0x231)](0x2,0xf),_0x5db175=getTrimmedString(_0x44a2b6[_0x168043(0x1dc)])||_0x168043(0x2e1),_0x7af600=getTrimmedString(_0x44a2b6[_0x168043(0x20a)])||'agent:'+_0x5db175+(_0x168043(0x32c)+'-')+Date[_0x168043(0x1d6)]();_0x2777ea[_0x168043(0x20a)]=_0x7af600+'-'+_0x3d8877,_0x2777ea[_0x168043(0x1dc)]=_0x5db175;const _0x471cc4=getTrimmedString(_0x44a2b6[_0x168043(0x31a)]);if(_0x471cc4)_0x2777ea[_0x168043(0x31a)]=_0x471cc4+'-'+_0x3d8877;for(const _0xd9b91c of[_0x168043(0x31c),'parentSe'+'ssionKey',_0x168043(0x22e),_0x168043(0x31b)]){const _0x1669f1=getTrimmedString(_0x44a2b6[_0xd9b91c]);if(_0x1669f1)_0x2777ea[_0xd9b91c]=_0x1669f1;}return _0x2777ea;}function parseSessionCreateResult(_0x3f0e8d){const _0x5d6b86=_0x1e3867,_0x540093=asRecord(_0x3f0e8d),_0x1f14e9=asRecord(_0x540093[_0x5d6b86(0x23d)]);return{'ok':!![],'key':getTrimmedString(_0x540093[_0x5d6b86(0x20a)])||getTrimmedString(_0x540093[_0x5d6b86(0x30b)+'ey'])||getTrimmedString(_0x1f14e9[_0x5d6b86(0x20a)])||null,'sessionId':getTrimmedString(_0x540093[_0x5d6b86(0x235)+'d'])||getTrimmedString(_0x1f14e9[_0x5d6b86(0x235)+'d'])||null};}function getSessionKeyFromValue(_0x4525bc){const _0x3f0297=_0x1e3867,_0x3191b2=asRecord(_0x4525bc);return getTrimmedString(_0x3191b2[_0x3f0297(0x30b)+'ey']??_0x3191b2[_0x3f0297(0x20a)]??_0x3191b2['id']);}function createEmptySessionMetadata(){return{'names':{},'pinnedKeys':[]};}async function readSessionMetadata(_0x4856b3){const _0x4c803b=_0x1e3867;try{const _0x525a98=JSON[_0x4c803b(0x2d3)](await readFile(join(_0x4856b3,SESSION_METADATA_FILE),_0x4c803b(0x263))),_0xe83ac0=asRecord(_0x525a98);return{'names':asRecord(_0xe83ac0[_0x4c803b(0x2af)]),'pinnedKeys':Array[_0x4c803b(0x20e)](_0xe83ac0[_0x4c803b(0x229)+'ys'])?_0xe83ac0[_0x4c803b(0x229)+'ys']['filter'](_0x5e5462=>typeof _0x5e5462===_0x4c803b(0x265)&&_0x5e5462[_0x4c803b(0x333)]()):[]};}catch{return createEmptySessionMetadata();}}async function writeSessionMetadata(_0x574506,_0x1e5a3b){await mkdir(_0x574506,{'recursive':!![]}),await writeFile(join(_0x574506,SESSION_METADATA_FILE),JSON['stringif'+'y'](_0x1e5a3b,null,0x2)+'\x0a','utf8');}function applySessionMetadata(_0x503258,_0x2ec747){const _0x3449d8=_0x1e3867,_0x41d2c3=asRecord(_0x503258),_0x4df36a=Array[_0x3449d8(0x20e)](_0x41d2c3[_0x3449d8(0x25e)])?_0x41d2c3['sessions']:[];return{..._0x41d2c3,'pinnedKeys':_0x2ec747[_0x3449d8(0x229)+'ys'],'sessions':_0x4df36a['map'](_0x247ccd=>{const _0x2edb1e=_0x3449d8,_0x60f983=asRecord(_0x247ccd),_0x1cf43f=getSessionKeyFromValue(_0x60f983);if(!_0x1cf43f)return _0x247ccd;const _0x4b70a8=getTrimmedString(_0x2ec747[_0x2edb1e(0x2af)][_0x1cf43f]),_0x40b5b8=_0x2ec747[_0x2edb1e(0x229)+'ys'][_0x2edb1e(0x250)](_0x1cf43f);return{..._0x60f983,..._0x4b70a8?{'name':_0x4b70a8,'displayName':_0x4b70a8,'label':_0x4b70a8}:{},'pinned':_0x40b5b8};})};}function _0x54c5(_0x45e33e,_0x5dce80){_0x45e33e=_0x45e33e-0x1b7;const _0x12c3bb=_0x12c3();let _0x54c501=_0x12c3bb[_0x45e33e];return _0x54c501;}function sanitizeSharedContextPayload(_0x4ecd81){const _0x14cb18=_0x1e3867,_0x2d946a=asRecord(_0x4ecd81),_0x240523={};for(const _0x38b8ee of SHARED_CONTEXT_FILES){if(typeof _0x2d946a[_0x38b8ee]===_0x14cb18(0x265))_0x240523[_0x38b8ee]=_0x2d946a[_0x38b8ee];}return _0x240523;}async function readSharedContext(_0x5a93eb){const _0x237623=_0x1e3867,_0x1c746c={};for(const _0x114ff3 of SHARED_CONTEXT_FILES){try{_0x1c746c[_0x114ff3]=await readFile(join(_0x5a93eb,_0x114ff3),_0x237623(0x263));}catch{_0x1c746c[_0x114ff3]='';}}return _0x1c746c;}async function writeSharedContext(_0x116396,_0x564ac4){const _0x5c4d15=_0x1e3867,_0x332b32=sanitizeSharedContextPayload(_0x564ac4);await mkdir(_0x116396,{'recursive':!![]});for(const [_0xf78e8d,_0x35da59]of Object[_0x5c4d15(0x21b)](_0x332b32)){await writeFile(join(_0x116396,_0xf78e8d),_0x35da59,_0x5c4d15(0x263));}return{'ok':!![],'files':Object[_0x5c4d15(0x295)](_0x332b32)};}function createAskUserQuestionServer({configController:_0x385c33,emit:_0x1ae3f9}){const _0x2774ce=new Map();let _0x1706c0=null,_0x6f8698='',_0x4e196e='';async function _0x3110a1(){const _0x3ad92a=_0x54c5;if(_0x1706c0)return{'callbackUrl':_0x6f8698,'secret':_0x4e196e};_0x4e196e=randomUUID();const _0x1f6ae5=await _0x58c7af({'port':portNumbers(0x332c,0x338f)});return _0x6f8698=_0x3ad92a(0x20b)+_0x3ad92a(0x1f9)+':'+_0x1f6ae5+(_0x3ad92a(0x1d0)+'r-questi'+'on'),_0x1706c0=createServer(async(_0x49066a,_0x4291be)=>{const _0x5cfd2d=_0x3ad92a;if(_0x49066a[_0x5cfd2d(0x2a8)]!=='POST'||_0x49066a[_0x5cfd2d(0x27c)]!==_0x5cfd2d(0x1d0)+_0x5cfd2d(0x2be)+'on'){_0x4291be[_0x5cfd2d(0x202)+'d'](0x194),_0x4291be[_0x5cfd2d(0x2e8)]('not\x20foun'+'d');return;}if(_0x49066a[_0x5cfd2d(0x274)][_0x5cfd2d(0x1da)+_0x5cfd2d(0x252)+'t']!==_0x4e196e){_0x4291be[_0x5cfd2d(0x202)+'d'](0x191),_0x4291be['end'](_0x5cfd2d(0x268)+_0x5cfd2d(0x2cd));return;}let _0x2b4c01='';_0x49066a['on'](_0x5cfd2d(0x2e7),_0x13d841=>{const _0x5f48f6=_0x5cfd2d;_0x2b4c01+=_0x13d841[_0x5f48f6(0x1cc)]();if(_0x2b4c01[_0x5f48f6(0x2f1)]>0x400*0x400)_0x49066a[_0x5f48f6(0x29b)]();}),_0x49066a['on'](_0x5cfd2d(0x2e8),()=>{const _0x492d89=_0x5cfd2d;let _0x4f9de2={};try{_0x4f9de2=JSON[_0x492d89(0x2d3)](_0x2b4c01||'{}');}catch{_0x4291be[_0x492d89(0x202)+'d'](0x190),_0x4291be[_0x492d89(0x2e8)](_0x492d89(0x2c7)+'json');return;}const _0x4ef21a=randomUUID(),_0xe340ef=setTimeout(()=>{const _0x1bc000=_0x492d89;if(!_0x2774ce['has'](_0x4ef21a))return;_0x2774ce[_0x1bc000(0x204)](_0x4ef21a),_0x4291be[_0x1bc000(0x202)+'d'](0xc8,{'content-type':_0x1bc000(0x2f8)+_0x1bc000(0x301)}),_0x4291be[_0x1bc000(0x2e8)](JSON['stringif'+'y']({'behavior':_0x1bc000(0x1c2)}));},0x1d4c0);_0x2774ce[_0x492d89(0x1bd)](_0x4ef21a,{'res':_0x4291be,'timeout':_0xe340ef}),_0x1ae3f9(_0x492d89(0x1e8)+'-questio'+'n',{'requestId':_0x4ef21a,...asRecord(_0x4f9de2)});});}),await new Promise((_0x138da6,_0x4f955f)=>{const _0x51c361=_0x3ad92a;_0x1706c0[_0x51c361(0x1ef)](_0x51c361(0x2d5),_0x4f955f),_0x1706c0[_0x51c361(0x246)](_0x1f6ae5,'127.0.0.'+'1',()=>{const _0x14713d=_0x51c361;_0x1706c0[_0x14713d(0x302)](_0x14713d(0x2d5),_0x4f955f),_0x138da6();});}),await _0x385c33['ensureAs'+_0x3ad92a(0x314)+'stionPlu'+_0x3ad92a(0x1d2)+'g']({'callbackUrl':_0x6f8698,'secret':_0x4e196e}),{'callbackUrl':_0x6f8698,'secret':_0x4e196e};}function _0x173dc5(_0x32aa5e={}){const _0x1d13d1=_0x54c5,_0x344a8d=getTrimmedString(_0x32aa5e['requestI'+'d']);if(!_0x344a8d||!_0x2774ce[_0x1d13d1(0x1be)](_0x344a8d))throw new Error(_0x1d13d1(0x1e8)+_0x1d13d1(0x2e0)+_0x1d13d1(0x310)+_0x1d13d1(0x2ba)+_0x1d13d1(0x215));const _0x1fe6c8=_0x2774ce[_0x1d13d1(0x1cd)](_0x344a8d);return _0x2774ce[_0x1d13d1(0x204)](_0x344a8d),clearTimeout(_0x1fe6c8[_0x1d13d1(0x2b5)]),_0x1fe6c8['res'][_0x1d13d1(0x202)+'d'](0xc8,{'content-type':_0x1d13d1(0x2f8)+_0x1d13d1(0x301)}),_0x1fe6c8[_0x1d13d1(0x331)]['end'](JSON[_0x1d13d1(0x217)+'y']({'behavior':_0x32aa5e[_0x1d13d1(0x275)]===_0x1d13d1(0x1c2)?'deny':_0x1d13d1(0x283),'answers':asRecord(_0x32aa5e[_0x1d13d1(0x25a)])})),{'ok':!![]};}async function _0x200329(){const _0x448cdc=_0x54c5;for(const [_0x221d7b,_0x456842]of _0x2774ce){_0x2774ce[_0x448cdc(0x204)](_0x221d7b),clearTimeout(_0x456842[_0x448cdc(0x2b5)]),_0x456842[_0x448cdc(0x331)][_0x448cdc(0x202)+'d'](0xc8,{'content-type':_0x448cdc(0x2f8)+_0x448cdc(0x301)}),_0x456842['res'][_0x448cdc(0x2e8)](JSON[_0x448cdc(0x217)+'y']({'behavior':_0x448cdc(0x1c2)}));}if(!_0x1706c0)return;await new Promise(_0x24bbef=>_0x1706c0['close'](_0x24bbef)),_0x1706c0=null;}return{'start':_0x3110a1,'answer':_0x173dc5,'stop':_0x200329};}export function createGatewayController({shellConfig:_0x786db6,configController:_0x47455c,appVersion:appVersion=_0x1e3867(0x28e)}){const _0x5cfba5=_0x1e3867,_0x44e9e7=new EventEmitter(),_0x4b7810=new ClawGatewayWsClient(),_0x17b0db=[],_0x705aa=new Map(),_0x461f7b=new Map(),_0xe14cb4=createShellLogger(_0x47455c[_0x5cfba5(0x30e)],_0x5cfba5(0x1d9)),_0x31d3e9=createShellLogger(_0x47455c['paths'],_0x5cfba5(0x21e)),_0x25bddc=createShellLogger(_0x47455c[_0x5cfba5(0x30e)],_0x5cfba5(0x25e)),_0x1e05a2=createShellLogger(_0x47455c[_0x5cfba5(0x30e)],_0x5cfba5(0x2c5)+_0x5cfba5(0x2a6)),_0x4aefbf=createAskUserQuestionServer({'configController':_0x47455c,'emit':(_0x36721c,_0x5b37e5)=>_0x44e9e7['emit'](_0x36721c,_0x5b37e5)});let _0x66c15a=createInitialStatus(),_0x524d71=null,_0x379e3e=null,_0x34b72a=null,_0x50ad64=![],_0x1098c7=![],_0x480081=Promise[_0x5cfba5(0x29f)](),_0x306f3e=null,_0x181f36=0x0;function _0x236bf1(_0x220b2a,_0x3739ed){const _0x53e120=_0x5cfba5;_0x44e9e7[_0x53e120(0x1e7)](_0x220b2a,_0x3739ed);}function _0x2188cc(_0x4944d2,_0x24f5e9){return _0x44e9e7['on'](_0x4944d2,_0x24f5e9),()=>_0x44e9e7['off'](_0x4944d2,_0x24f5e9);}function _0x1ced5f(_0x1cc0d9){const _0x5ae6ad=_0x5cfba5;_0x66c15a={..._0x66c15a,..._0x1cc0d9,'updatedAt':nowIso()},_0x236bf1(_0x5ae6ad(0x1de)+_0x5ae6ad(0x1fd),_0x66c15a);}function _0x4755b1(_0x43ef02,_0x3f7b0b,_0xcb3847={}){const _0x1d4b7c=_0x5cfba5;_0x1ced5f({'lifecycle':_0x43ef02,'message':_0x3f7b0b,..._0xcb3847}),_0x3bdf09(_0x1d4b7c(0x2d2),_0x43ef02['toUpperC'+_0x1d4b7c(0x228)]()+'\x20'+_0x3f7b0b),_0xe14cb4?.['info'](_0x1d4b7c(0x2fb)+'lifecycl'+_0x1d4b7c(0x22b)+'d',{'lifecycle':_0x43ef02,'message':_0x3f7b0b,'status':{'health':_0x66c15a[_0x1d4b7c(0x23e)],'port':_0x66c15a[_0x1d4b7c(0x1f7)],'tokenPresent':_0x66c15a[_0x1d4b7c(0x300)+_0x1d4b7c(0x2db)]},...summarizePayload(_0xcb3847)});}function _0x3bdf09(_0x410731,_0xaa8397){const _0x10eeea=_0x5cfba5,_0x1f7575=String(_0xaa8397??'')[_0x10eeea(0x211)]();if(!_0x1f7575)return;const _0x1ba0ee={'source':_0x410731,'text':_0x1f7575,'timestamp':nowIso()};_0x17b0db['push'](_0x1ba0ee);if(_0x17b0db[_0x10eeea(0x2f1)]>LOG_LIMIT)_0x17b0db[_0x10eeea(0x1bf)](0x0,_0x17b0db['length']-LOG_LIMIT);_0x236bf1(_0x10eeea(0x1de)+_0x10eeea(0x1bb),_0x1ba0ee),_0xe14cb4?.['info'](_0x10eeea(0x2fb)+_0x10eeea(0x1bb),{'source':_0x410731,'text':_0x1f7575});}function _0x189e12(_0x250b4a=0xc8){const _0x14c711=_0x5cfba5;return _0x17b0db['slice'](-Math[_0x14c711(0x1db)](0x1,Math[_0x14c711(0x203)](_0x250b4a)));}function _0x5515ce(){const _0x328359=_0x5cfba5;if(!_0x524d71||_0x66c15a['lifecycl'+'e']!=='running')throw new Error(_0x328359(0x2fb)+_0x328359(0x255)+_0x328359(0x21f)+_0x328359(0x2ff)+_0x328359(0x20c)+'y');}function _0xf7b10f(){const _0x5873ec=_0x5cfba5;return Boolean(_0x524d71&&_0x66c15a[_0x5873ec(0x27d)+'e']===_0x5873ec(0x241));}function _0x26045a(_0x13f566){const _0x4150e8=_0x5cfba5;_0x236bf1(_0x4150e8(0x2d7)+_0x4150e8(0x2a3)+'t',_0x13f566);}function _0x3e35fd(_0x3c4c00){const _0x2cac59=_0x5cfba5,_0xf4e103=_0x705aa[_0x2cac59(0x1cd)](_0x3c4c00);if(!_0xf4e103)return null;_0x705aa['delete'](_0x3c4c00);if(_0xf4e103[_0x2cac59(0x312)+_0x2cac59(0x26d)+_0x2cac59(0x313)])clearTimeout(_0xf4e103['terminal'+_0x2cac59(0x26d)+'Timer']);return _0x461f7b[_0x2cac59(0x204)](_0xf4e103[_0x2cac59(0x30b)+'ey']),_0xf4e103;}function _0x4620b3(_0x19b2c0,_0x3b1434,_0x520f65=''){const _0x390b06=_0x5cfba5,_0x2cfa0a=_0x3e35fd(_0x19b2c0[_0x390b06(0x2f4)]);if(!_0x2cfa0a)return;_0x31d3e9?.[_0x390b06(0x1f8)](_0x390b06(0x26e)+_0x390b06(0x32d),{'requestId':_0x2cfa0a[_0x390b06(0x210)+'d'],'runId':_0x2cfa0a[_0x390b06(0x2f4)],'sessionKey':_0x2cfa0a[_0x390b06(0x30b)+'ey'],'outcome':_0x3b1434,'durationMs':Date[_0x390b06(0x1d6)]()-_0x2cfa0a[_0x390b06(0x1c1)+'t'],'textLength':_0x2cfa0a[_0x390b06(0x23a)+'th'],..._0x520f65?{'message':_0x520f65}:{}}),_0x26045a({'requestId':_0x2cfa0a['requestI'+'d'],'sessionKey':_0x2cfa0a['sessionK'+'ey'],'type':_0x3b1434,..._0x520f65?{'message':_0x520f65}:{}});}function _0x19e1d5(_0x50b814){const _0x14038f=_0x5cfba5;let _0x1b011f=null;for(const _0x505744 of _0x705aa['values']()){if(_0x505744[_0x14038f(0x30b)+'ey']===_0x50b814)_0x1b011f=_0x505744;}return _0x1b011f;}function _0x330091(_0x3a1f98){const _0x2b38a9=_0x5cfba5;if(!_0x3a1f98)return null;for(const _0x5d0722 of _0x705aa['values']()){if(_0x5d0722[_0x2b38a9(0x210)+'d']===_0x3a1f98)return _0x5d0722;}return null;}function _0x2905fe(_0x12eb53,_0x39e354){const _0x3ef9aa=_0x5cfba5;if(_0x39e354[_0x3ef9aa(0x2f1)]<=_0x12eb53[_0x3ef9aa(0x23a)+'th'])return;const _0x2836c1=_0x39e354[_0x3ef9aa(0x231)](_0x12eb53[_0x3ef9aa(0x23a)+'th']);_0x12eb53['textLeng'+'th']=_0x39e354['length'],_0x2836c1&&_0x26045a({'requestId':_0x12eb53[_0x3ef9aa(0x210)+'d'],'sessionKey':_0x12eb53[_0x3ef9aa(0x30b)+'ey'],'type':_0x3ef9aa(0x2b3),'delta':_0x2836c1});}function _0x3eda94(_0xa6903a,_0x804bcd,_0x18f114=''){const _0x1f9bae=_0x5cfba5;if(_0xa6903a[_0x1f9bae(0x312)+_0x1f9bae(0x26d)+_0x1f9bae(0x313)])clearTimeout(_0xa6903a[_0x1f9bae(0x312)+_0x1f9bae(0x26d)+'Timer']);_0xa6903a['terminal'+_0x1f9bae(0x26d)+_0x1f9bae(0x313)]=setTimeout(()=>{const _0x18dcf6=_0x1f9bae,_0x3c4911=_0x705aa[_0x18dcf6(0x1cd)](_0xa6903a['runId']);if(!_0x3c4911)return;_0x4620b3(_0x3c4911,_0x804bcd===_0x18dcf6(0x2d5)?'error':'done',_0x18f114);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x49af1e(_0x35a634){const _0x1bfb6f=_0x5cfba5;for(const _0x4c4b39 of _0x705aa[_0x1bfb6f(0x309)]()){_0x31d3e9?.['warn'](_0x1bfb6f(0x26e)+'\x20failed\x20'+_0x1bfb6f(0x277)+'ay\x20state',{'requestId':_0x4c4b39[_0x1bfb6f(0x210)+'d'],'runId':_0x4c4b39[_0x1bfb6f(0x2f4)],'sessionKey':_0x4c4b39['sessionK'+'ey'],'durationMs':Date[_0x1bfb6f(0x1d6)]()-_0x4c4b39[_0x1bfb6f(0x1c1)+'t'],'reason':_0x35a634}),_0x26045a({'requestId':_0x4c4b39[_0x1bfb6f(0x210)+'d'],'sessionKey':_0x4c4b39[_0x1bfb6f(0x30b)+'ey'],'type':'error','message':_0x35a634});if(_0x4c4b39[_0x1bfb6f(0x312)+_0x1bfb6f(0x26d)+'Timer'])clearTimeout(_0x4c4b39['terminal'+'Fallback'+_0x1bfb6f(0x313)]);}_0x705aa[_0x1bfb6f(0x261)](),_0x461f7b[_0x1bfb6f(0x261)]();}function _0x30d540(_0x4db482){const _0x1c9ef6=_0x5cfba5,_0x2d96ce=getTrimmedString(_0x4db482[_0x1c9ef6(0x2f4)]),_0x4083a1=getTrimmedString(_0x4db482[_0x1c9ef6(0x237)])||_0x1c9ef6(0x236),_0x3b9673=getTrimmedString(_0x4db482[_0x1c9ef6(0x30b)+'ey']),_0x2dfbff=(_0x2d96ce?_0x705aa[_0x1c9ef6(0x1cd)](_0x2d96ce):null)??(_0x3b9673?_0x19e1d5(_0x3b9673):null);if(_0x2d96ce&&_0x3b9673)_0x461f7b[_0x1c9ef6(0x1bd)](_0x3b9673,_0x2d96ce);if(_0x3b9673)_0x236bf1(_0x1c9ef6(0x32f)+_0x1c9ef6(0x236),{'sessionKey':_0x3b9673,'state':_0x4083a1});_0x31d3e9?.[_0x1c9ef6(0x1f8)]('gateway\x20'+_0x1c9ef6(0x2c2)+_0x1c9ef6(0x1ca)+_0x1c9ef6(0x230),{'runId':_0x2d96ce,'sessionKey':_0x3b9673,'state':_0x4083a1,'hasActiveRun':Boolean(_0x2dfbff),'messageText':summarizeText(extractGatewayChatText(_0x4db482['message']),0x78),'errorMessage':getTrimmedString(_0x4db482[_0x1c9ef6(0x226)+_0x1c9ef6(0x247)])});_0x2dfbff&&(_0x4083a1===_0x1c9ef6(0x1eb)||_0x4083a1===_0x1c9ef6(0x1fe)||_0x4083a1===_0x1c9ef6(0x2d5))&&_0x3eda94(_0x2dfbff,_0x4083a1,typeof _0x4db482['errorMes'+'sage']===_0x1c9ef6(0x265)?_0x4db482[_0x1c9ef6(0x226)+'sage']:_0x1c9ef6(0x2fb)+_0x1c9ef6(0x225)+_0x1c9ef6(0x32a));if(!_0x2dfbff)return;if(_0x3b9673&&_0x3b9673!==_0x2dfbff[_0x1c9ef6(0x30b)+'ey'])return;if(_0x4083a1==='delta'){_0x2905fe(_0x2dfbff,extractGatewayChatText(_0x4db482[_0x1c9ef6(0x31b)]));return;}if(_0x4083a1===_0x1c9ef6(0x1eb)||_0x4083a1===_0x1c9ef6(0x1fe)){_0x2905fe(_0x2dfbff,extractGatewayChatText(_0x4db482[_0x1c9ef6(0x31b)])),_0x4620b3(_0x2dfbff,_0x1c9ef6(0x25f));return;}_0x4083a1===_0x1c9ef6(0x2d5)&&_0x4620b3(_0x2dfbff,_0x1c9ef6(0x2d5),typeof _0x4db482[_0x1c9ef6(0x226)+_0x1c9ef6(0x247)]===_0x1c9ef6(0x265)?_0x4db482[_0x1c9ef6(0x226)+'sage']:_0x1c9ef6(0x2fb)+_0x1c9ef6(0x225)+_0x1c9ef6(0x32a));}async function _0xde4cfa(_0x29925d,_0x13a6b8){const _0x3be733=_0x5cfba5;_0x4b7810['configur'+'e']({'url':buildGatewayWsUrl(_0x13a6b8),'token':_0x29925d,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x786db6['productN'+'ame'],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x47455c[_0x3be733(0x305)+_0x3be733(0x304)+_0x3be733(0x209)+'h'](),'onChatEvent':_0x30d540,'onAgentEvent':_0x58d7c=>_0x236bf1(_0x3be733(0x222)+_0x3be733(0x29e),_0x58d7c),'onConnected':async()=>{const _0x4ca62b=_0x3be733;if(!_0x524d71||!_0x34b72a||!_0x379e3e)return;_0xe14cb4?.[_0x4ca62b(0x1f8)](_0x4ca62b(0x2fb)+'websocke'+_0x4ca62b(0x238)+_0x4ca62b(0x201),{'port':_0x34b72a,'pid':_0x524d71[_0x4ca62b(0x227)],'readyMs':_0x181f36?Date[_0x4ca62b(0x1d6)]()-_0x181f36:undefined}),_0x4755b1(_0x4ca62b(0x241),_0x4ca62b(0x2fb)+_0x4ca62b(0x1c6)+'d',{'health':'healthy','port':_0x34b72a,'tokenPresent':!![]});try{await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x786db6[_0x4ca62b(0x1ea)+_0x4ca62b(0x2f0)]))[_0x4ca62b(0x1dd)+_0x4ca62b(0x2f0)],'openclaw',_0x4ca62b(0x2df)),'stateDir':_0x47455c[_0x4ca62b(0x2ee)+_0x4ca62b(0x1f6)](),'listAgents':_0x5d5ecb,'createAgent':_0x31c397=>_0x4b7810['request'](_0x4ca62b(0x1b7)+_0x4ca62b(0x1ff),_0x31c397),'updateAgent':_0x514340=>_0x4b7810[_0x4ca62b(0x20f)]('agents.u'+_0x4ca62b(0x29d),_0x514340),'syncSkills':async({agentIds:_0x355845,mainWorkspace:_0x287c86})=>{const _0x48981c=_0x4ca62b;_0x1e05a2?.[_0x48981c(0x1f8)](_0x48981c(0x1c9)+_0x48981c(0x31e)+_0x48981c(0x286)+_0x48981c(0x2c9)+'d',{'agentIds':_0x355845,'mainWorkspace':toHomePath(_0x287c86)});const _0x2ca13b=dirname(_0x287c86),_0x59fced=await syncBundledAgentSkillsToConfig({'agentIds':_0x355845,'resolveSkillsDir':_0x3c9709=>_0x3c9709===_0x48981c(0x2e1)?join(_0x287c86,_0x48981c(0x2cf)):join(_0x2ca13b,_0x48981c(0x321)+'e-'+_0x3c9709,_0x48981c(0x2cf)),'readConfig':()=>_0x47455c[_0x48981c(0x29c)+'ig'](),'writeConfig':_0xfeec9=>_0x47455c['writeCon'+'fig'](_0xfeec9),'markConfigWriteHandledInternally':()=>_0x47455c[_0x48981c(0x245)+'igWriteH'+_0x48981c(0x26b)+_0x48981c(0x264)]()});_0x306f3e=_0x59fced[_0x48981c(0x294)+'y'],_0x1e05a2?.['info']('bundled\x20'+_0x48981c(0x31e)+_0x48981c(0x286)+_0x48981c(0x2ca)+'ted',{'agentCount':_0x355845[_0x48981c(0x2f1)],'changed':_0x59fced[_0x48981c(0x30f)],'discovery':summarizePayload(_0x59fced[_0x48981c(0x294)+'y'],{'maxDepth':0x3})});}}),_0x1e05a2?.[_0x4ca62b(0x1f8)](_0x4ca62b(0x1c9)+_0x4ca62b(0x280)+'nsured'),_0x236bf1(_0x4ca62b(0x2b7)+'pdated',{'reason':_0x4ca62b(0x1ed)+_0x4ca62b(0x1c3)+_0x4ca62b(0x1fa)});}catch(_0x3a184c){const _0x394dfe=_0x3a184c instanceof Error?_0x3a184c[_0x4ca62b(0x1ec)]||_0x3a184c[_0x4ca62b(0x31b)]:String(_0x3a184c);_0x3bdf09(_0x4ca62b(0x2d2),_0x4ca62b(0x1c9)+'agents\x20s'+_0x4ca62b(0x329)+_0x4ca62b(0x1d5)+_0x394dfe),_0x1e05a2?.['error']('bundled\x20'+'agents\x20s'+_0x4ca62b(0x329)+'ed',{'error':summarizeError(_0x3a184c)}),console[_0x4ca62b(0x2d5)](_0x4ca62b(0x316)+_0x4ca62b(0x27f)+'eway]\x20bu'+_0x4ca62b(0x214)+_0x4ca62b(0x28b)+_0x4ca62b(0x244),_0x3a184c);}},'onDisconnected':_0x6e5bf5=>{const _0x275df4=_0x3be733;_0xe14cb4?.[_0x275df4(0x21c)](_0x275df4(0x2fb)+_0x275df4(0x330)+'t\x20discon'+_0x275df4(0x270),{'reason':_0x6e5bf5}),_0x49af1e(_0x6e5bf5);if(_0x1098c7||!_0x524d71)return;_0x1ced5f({'health':'unknown','message':_0x275df4(0x2fb)+_0x275df4(0x249)+'ting:\x20'+_0x6e5bf5});}});}async function _0x486302(_0x201e63,_0x264946){const _0x4bc678=_0x5cfba5;if(_0x524d71)return;_0x181f36=Date[_0x4bc678(0x1d6)](),_0x4755b1(_0x4bc678(0x303),_0x4bc678(0x2fb)+_0x4bc678(0x303),{'health':'unknown','port':_0x264946,'tokenPresent':!![]});const _0xecd848=['gateway',_0x4bc678(0x23b),_0x4bc678(0x2e3)+_0x4bc678(0x239)+'ured',_0x4bc678(0x2ec),_0x201e63,_0x4bc678(0x306),String(_0x264946)];_0x3bdf09(_0x4bc678(0x2d2),'openclaw'+'\x20gateway'+_0x4bc678(0x289)+_0x4bc678(0x1d4)+_0x4bc678(0x2ab)+_0x4bc678(0x2f9)+'n\x20[REDAC'+_0x4bc678(0x298)+'ort\x20'+_0x264946),_0xe14cb4?.[_0x4bc678(0x1f8)](_0x4bc678(0x2fb)+'process\x20'+_0x4bc678(0x297)+_0x4bc678(0x1b8),{'args':[_0x4bc678(0x1d9),_0x4bc678(0x23b),'--allow-'+_0x4bc678(0x239)+_0x4bc678(0x267),'--token',_0x4bc678(0x223)+'D]',_0x4bc678(0x306),String(_0x264946)],'env':{'OPENCLAW_STATE_DIR':toHomePath(_0x47455c[_0x4bc678(0x2ee)+_0x4bc678(0x1f6)]()),'OPENCLAW_CONFIG_PATH':toHomePath(_0x47455c[_0x4bc678(0x253)+'onfigPat'+'h']())}}),_0x524d71=await spawnClaw(_0x786db6[_0x4bc678(0x1ea)+_0x4bc678(0x2f0)],_0xecd848,{'env':{'OPENCLAW_STATE_DIR':_0x47455c['resolveS'+_0x4bc678(0x1f6)](),'OPENCLAW_CONFIG_PATH':_0x47455c[_0x4bc678(0x253)+_0x4bc678(0x22c)+'h']()}}),_0x379e3e=_0x201e63,_0x34b72a=_0x264946,_0xe14cb4?.[_0x4bc678(0x1f8)](_0x4bc678(0x2fb)+_0x4bc678(0x326)+_0x4bc678(0x1e9),{'pid':_0x524d71[_0x4bc678(0x227)],'port':_0x34b72a}),_0x1ced5f({'health':'unknown','port':_0x34b72a,'tokenPresent':!![],'message':_0x4bc678(0x2fb)+_0x4bc678(0x326)+_0x4bc678(0x2a5)+_0x4bc678(0x200)+_0x4bc678(0x258)}),await _0xde4cfa(_0x201e63,_0x264946);const _0x3c6d3c=createLineBuffer({'trim':!![],'onLine':_0x194964=>_0x3bdf09(_0x4bc678(0x2f5),_0x194964)}),_0x5ed5a1=createLineBuffer({'trim':!![],'onLine':_0x863c3d=>_0x3bdf09(_0x4bc678(0x2b9),_0x863c3d)});_0x524d71[_0x4bc678(0x2f5)]['on'](_0x4bc678(0x2e7),_0x1ce9b9=>{const _0x153400=_0x4bc678;_0x3c6d3c[_0x153400(0x2b4)](_0x1ce9b9['toString']());}),_0x524d71[_0x4bc678(0x2b9)]['on'](_0x4bc678(0x2e7),_0x2fef07=>{_0x5ed5a1['push'](_0x2fef07['toString']());}),_0x524d71['on'](_0x4bc678(0x2d5),_0x2090f5=>{const _0x1b8478=_0x4bc678;_0xe14cb4?.[_0x1b8478(0x2d5)]('gateway\x20'+'process\x20'+'error',{'error':summarizeError(_0x2090f5)}),_0x3bdf09(_0x1b8478(0x2b9),_0x2090f5 instanceof Error?_0x2090f5['stack']||_0x2090f5[_0x1b8478(0x31b)]:String(_0x2090f5));}),_0x524d71['on']('close',(_0x2e60b2,_0x458c97)=>{const _0x2e3299=_0x4bc678;_0x3c6d3c[_0x2e3299(0x1d7)](),_0x5ed5a1[_0x2e3299(0x1d7)](),_0xe14cb4?.['warn']('gateway\x20'+_0x2e3299(0x326)+'closed',{'pid':_0x524d71?.[_0x2e3299(0x227)]??null,'code':_0x2e60b2,'signal':_0x458c97,'uptimeMs':_0x181f36?Date[_0x2e3299(0x1d6)]()-_0x181f36:undefined}),_0x3bdf09(_0x2e3299(0x2d2),_0x2e3299(0x2fb)+_0x2e3299(0x2dc)+_0x2e3299(0x2c4)+(_0x2e60b2??_0x2e3299(0x1e1))+_0x2e3299(0x2fe)+(_0x458c97??_0x2e3299(0x1e1))),_0x524d71=null,_0x379e3e=null,_0x34b72a=null,_0x4b7810['configur'+'e'](null),_0x49af1e(_0x2e3299(0x2fb)+_0x2e3299(0x326)+'exited');if(_0x1098c7){_0x4755b1('stopped',_0x2e3299(0x2fb)+_0x2e3299(0x320),{'health':_0x2e3299(0x2c1),'port':null,'tokenPresent':![]});return;}_0x4755b1(_0x2e3299(0x2d5),_0x2e3299(0x2fb)+_0x2e3299(0x307)+_0x2e3299(0x1e4)+_0x2e3299(0x1d1),{'health':_0x2e3299(0x1c0)+'y','port':null,'tokenPresent':![]});});}async function _0x546793(){const _0x21028f=_0x5cfba5;if(_0x524d71)return;_0x1098c7=![],_0xe14cb4?.[_0x21028f(0x1f8)](_0x21028f(0x2fb)+'controll'+_0x21028f(0x324)+_0x21028f(0x285)+'ed'),await _0x4aefbf['start']()[_0x21028f(0x2a7)](_0x527c76=>{const _0x4f3d7e=_0x21028f;_0x3bdf09(_0x4f3d7e(0x2d2),'ask-user'+'-questio'+_0x4f3d7e(0x2ac)+'ck\x20disab'+_0x4f3d7e(0x2a0)+(_0x527c76 instanceof Error?_0x527c76['message']:String(_0x527c76)));}),await _0x47455c[_0x21028f(0x254)+_0x21028f(0x25d)+_0x21028f(0x216)](),await ensureOpenClawDoctorFixed(_0x786db6,{'runtimeLogger':_0xe14cb4}),_0x47455c[_0x21028f(0x273)+_0x21028f(0x26a)+'es'](),_0x47455c[_0x21028f(0x317)+_0x21028f(0x2e5)+_0x21028f(0x339)](_0x24a15c=>{void _0x391d41(_0x24a15c);});const _0xaa43e8=await _0x47455c[_0x21028f(0x24e)+'tewaySet'+_0x21028f(0x25b)]();_0xe14cb4?.['info'](_0x21028f(0x2fb)+_0x21028f(0x2fc)+_0x21028f(0x269)+'ed',{'port':_0xaa43e8['port'],'tokenPresent':Boolean(_0xaa43e8['token'])}),await _0x486302(_0xaa43e8['token'],_0xaa43e8[_0x21028f(0x1f7)]);}async function _0x1d924a(){const _0x36f157=_0x5cfba5;_0x1098c7=!![],_0xe14cb4?.[_0x36f157(0x1f8)](_0x36f157(0x2fb)+'controll'+_0x36f157(0x219)+_0x36f157(0x218)+'d',{'pid':_0x524d71?.['pid']??null,'port':_0x34b72a}),_0x4b7810[_0x36f157(0x2a4)+'e'](null);if(_0x524d71){const _0x17dc8b=_0x524d71;_0x524d71=null;try{_0x17dc8b[_0x36f157(0x291)](_0x36f157(0x213));}catch{}await new Promise(_0x89333b=>setTimeout(_0x89333b,0x1f4));if(!_0x17dc8b[_0x36f157(0x23c)])try{_0x17dc8b[_0x36f157(0x291)](_0x36f157(0x27b));}catch{}}_0x379e3e=null,_0x34b72a=null,_0x49af1e(_0x36f157(0x2fb)+'stopped'),await _0x4aefbf[_0x36f157(0x292)](),_0x47455c[_0x36f157(0x28a)](),_0x4755b1(_0x36f157(0x320),'gateway\x20'+_0x36f157(0x320),{'health':'unknown','port':null,'tokenPresent':![]}),_0x1098c7=![];}async function _0x391d41(_0x91a546='manual\x20r'+'estart'){const _0x132a10=_0x5cfba5;if(_0x50ad64)return{'ok':!![]};return _0x50ad64=!![],_0xe14cb4?.['info'](_0x132a10(0x2fb)+_0x132a10(0x1f4)+_0x132a10(0x218)+'d',{'reason':_0x91a546}),_0x480081=_0x480081[_0x132a10(0x24f)](async()=>{const _0x460ab5=_0x132a10;_0x4755b1(_0x460ab5(0x2ed)+'ng',_0x460ab5(0x2fb)+_0x460ab5(0x2ed)+_0x460ab5(0x1fb)+_0x91a546,{'health':_0x460ab5(0x2c1)}),await _0x1d924a(),await _0x546793();})[_0x132a10(0x20d)](()=>{_0x50ad64=![];}),await _0x480081,{'ok':!![]};}async function _0x94bc77(){const _0x45b3bc=_0x5cfba5,_0x340d2e=await loadRuntimeInfo(_0x786db6[_0x45b3bc(0x1ea)+_0x45b3bc(0x2f0)]);return{'runtimeRoot':_0x340d2e[_0x45b3bc(0x1dd)+_0x45b3bc(0x2f0)],'openclawVersion':_0x340d2e[_0x45b3bc(0x31f)+_0x45b3bc(0x248)],'openclawWorkingDir':_0x340d2e[_0x45b3bc(0x31f)+_0x45b3bc(0x278)+'ir'],'openclawBin':_0x340d2e[_0x45b3bc(0x31f)+_0x45b3bc(0x1df)],'plugins':_0x340d2e[_0x45b3bc(0x327)][_0x45b3bc(0x31d)](_0x411b3f=>({'pluginId':_0x411b3f['pluginId'],'source':_0x411b3f[_0x45b3bc(0x2f7)],'version':_0x411b3f[_0x45b3bc(0x207)],'installPath':_0x411b3f['installP'+_0x45b3bc(0x337)]})),'configPath':_0x47455c['resolveC'+'onfigPat'+'h'](),'stateDir':_0x47455c['resolveS'+'tateDir'](),'bundledAgentSkillsDiscovery':_0x306f3e};}async function _0x5d5ecb(){const _0x581da6=_0x5cfba5;_0x1e05a2?.[_0x581da6(0x1f8)]('agents\x20l'+_0x581da6(0x2aa)+_0x581da6(0x22f));const _0x5b248a=asRecord(await _0x4b7810['request'](_0x581da6(0x266)+_0x581da6(0x2d6),{})),_0xe66d8c=getTrimmedString(_0x5b248a['defaultI'+'d'])||'main',_0x2c5079=Array[_0x581da6(0x20e)](_0x5b248a[_0x581da6(0x2df)])?[..._0x5b248a[_0x581da6(0x2df)]]:[];return{..._0x5b248a,'defaultId':_0xe66d8c,'agents':_0x2c5079};}async function _0x11e317(){const _0x363323=_0x5cfba5;if(!_0xf7b10f())return{'defaultId':_0x363323(0x2e1),'mainKey':'','scope':'','pending':!![],'agents':[{'id':'main','name':_0x786db6[_0x363323(0x1b9)+_0x363323(0x299)],'workspace':join(_0x47455c[_0x363323(0x2ee)+_0x363323(0x1f6)](),_0x363323(0x321)+'e')}]};const _0x4af52d=await _0x5d5ecb(),_0x3e564a=getTrimmedString(_0x4af52d[_0x363323(0x322)+'d'])||_0x363323(0x2e1),_0x7cb3fe=Array['isArray'](_0x4af52d['agents'])?[..._0x4af52d[_0x363323(0x2df)]]:[];return!_0x7cb3fe[_0x363323(0x24a)](_0x19896d=>asRecord(_0x19896d)['id']===_0x363323(0x2e1))&&_0x7cb3fe['unshift']({'id':_0x363323(0x2e1),'name':_0x786db6[_0x363323(0x1b9)+_0x363323(0x299)],'workspace':join(_0x47455c[_0x363323(0x2ee)+_0x363323(0x1f6)](),_0x363323(0x321)+'e')}),{..._0x4af52d,'defaultId':_0x3e564a,'agents':_0x7cb3fe};}async function _0x56eefc(_0x23d1b4={}){const _0x27e76f=_0x5cfba5;_0x5515ce();const _0x37484d=Date[_0x27e76f(0x1d6)]();_0x25bddc?.['info'](_0x27e76f(0x2de)+_0x27e76f(0x2ad)+'equested',{'payload':summarizePayload(_0x23d1b4)});const _0x315750=await _0x4b7810[_0x27e76f(0x20f)](_0x27e76f(0x25e)+_0x27e76f(0x243),buildSessionCreateRequestPayload(_0x23d1b4)),_0x59d599=parseSessionCreateResult(_0x315750);return _0x25bddc?.[_0x27e76f(0x1f8)](_0x27e76f(0x2de)+_0x27e76f(0x2bd)+_0x27e76f(0x232),{'key':_0x59d599[_0x27e76f(0x20a)],'sessionId':_0x59d599[_0x27e76f(0x235)+'d'],'durationMs':Date[_0x27e76f(0x1d6)]()-_0x37484d}),_0x59d599;}async function _0x4ca959(_0x599774={}){const _0x96193c=_0x5cfba5,_0x450184=await readSessionMetadata(_0x47455c[_0x96193c(0x2ee)+'tateDir']());if(!_0xf7b10f())return{'pending':!![],'sessions':[],'pinnedKeys':_0x450184[_0x96193c(0x229)+'ys']};const _0x3f7f4b=Date[_0x96193c(0x1d6)](),_0x2c760c=Math[_0x96193c(0x1db)](0x1,Math[_0x96193c(0x203)](Number(_0x599774[_0x96193c(0x2fd)])||0x64)),_0x3e08c7={'limit':_0x2c760c,'includeGlobal':!![],'includeUnknown':![]},_0x47ea7e=getTrimmedString(_0x599774['agentId']??'main');if(_0x47ea7e)_0x3e08c7[_0x96193c(0x1dc)]=_0x47ea7e;const _0x5aae1b=applySessionMetadata(await _0x4b7810['request'](_0x96193c(0x25e)+_0x96193c(0x1ba),_0x3e08c7),_0x450184);return _0x25bddc?.[_0x96193c(0x1f8)](_0x96193c(0x25e)+_0x96193c(0x2b2)+_0x96193c(0x32e),{'payload':_0x3e08c7,'count':Array['isArray'](_0x5aae1b[_0x96193c(0x25e)])?_0x5aae1b[_0x96193c(0x25e)][_0x96193c(0x2f1)]:0x0,'durationMs':Date[_0x96193c(0x1d6)]()-_0x3f7f4b}),_0x5aae1b;}async function _0x4eade1(_0x5333af={}){const _0x1b82bb=_0x5cfba5;_0x5515ce();const _0x257bd7=getTrimmedString(_0x5333af[_0x1b82bb(0x30b)+'ey']??_0x5333af[_0x1b82bb(0x20a)]);if(!_0x257bd7)throw new Error(_0x1b82bb(0x30b)+_0x1b82bb(0x287)+_0x1b82bb(0x336));const _0x5ed786=Date['now'](),_0x59ffe4=await _0x4b7810[_0x1b82bb(0x20f)](_0x1b82bb(0x25e)+_0x1b82bb(0x2ae),{'key':_0x257bd7,'deleteTranscript':_0x5333af[_0x1b82bb(0x1ee)+'anscript']!==![],'emitLifecycleHooks':!![]}),_0x2aaa4b=await readSessionMetadata(_0x47455c['resolveS'+_0x1b82bb(0x1f6)]());return delete _0x2aaa4b[_0x1b82bb(0x2af)][_0x257bd7],_0x2aaa4b[_0x1b82bb(0x229)+'ys']=_0x2aaa4b[_0x1b82bb(0x229)+'ys'][_0x1b82bb(0x1c8)](_0x4e7254=>_0x4e7254!==_0x257bd7),await writeSessionMetadata(_0x47455c[_0x1b82bb(0x2ee)+'tateDir'](),_0x2aaa4b),_0x236bf1('session-'+_0x1b82bb(0x236),{'type':_0x1b82bb(0x2e9),'sessionKey':_0x257bd7}),_0x25bddc?.[_0x1b82bb(0x1f8)](_0x1b82bb(0x2de)+_0x1b82bb(0x1e5)+'ompleted',{'sessionKey':_0x257bd7,'deleteTranscript':_0x5333af['deleteTr'+_0x1b82bb(0x29a)]!==![],'durationMs':Date[_0x1b82bb(0x1d6)]()-_0x5ed786}),_0x59ffe4;}async function _0x13bb09(_0x45d3a7={}){const _0x4f8138=_0x5cfba5,_0x36a83c=getTrimmedString(_0x45d3a7[_0x4f8138(0x30b)+'ey']??_0x45d3a7[_0x4f8138(0x20a)]);if(!_0x36a83c)throw new Error(_0x4f8138(0x30b)+_0x4f8138(0x287)+_0x4f8138(0x336));const _0x47a85a=getTrimmedString(_0x45d3a7[_0x4f8138(0x279)]??_0x45d3a7[_0x4f8138(0x31a)]??_0x45d3a7['title']),_0x942550=await readSessionMetadata(_0x47455c['resolveS'+_0x4f8138(0x1f6)]());if(_0x47a85a)_0x942550[_0x4f8138(0x2af)][_0x36a83c]=_0x47a85a;else delete _0x942550[_0x4f8138(0x2af)][_0x36a83c];return await writeSessionMetadata(_0x47455c[_0x4f8138(0x2ee)+_0x4f8138(0x1f6)](),_0x942550),_0x236bf1(_0x4f8138(0x32f)+'updated',{'type':_0x4f8138(0x288),'sessionKey':_0x36a83c,'name':_0x47a85a}),_0x25bddc?.['info']('session\x20'+'rename\x20c'+_0x4f8138(0x232),{'sessionKey':_0x36a83c,'hasName':Boolean(_0x47a85a),'name':_0x47a85a?summarizeText(_0x47a85a,0x50):undefined}),{'ok':!![]};}async function _0x340bbd(){const _0x1b87d0=_0x5cfba5,_0x464e99=await readSessionMetadata(_0x47455c[_0x1b87d0(0x2ee)+_0x1b87d0(0x1f6)]());return _0x464e99[_0x1b87d0(0x229)+'ys'];}async function _0x559635(_0x612fef=[]){const _0xf9304f=_0x5cfba5,_0x117a9f=await readSessionMetadata(_0x47455c['resolveS'+_0xf9304f(0x1f6)]());return _0x117a9f[_0xf9304f(0x229)+'ys']=Array[_0xf9304f(0x20e)](_0x612fef)?[...new Set(_0x612fef[_0xf9304f(0x31d)](getTrimmedString)[_0xf9304f(0x1c8)](Boolean))]:[],await writeSessionMetadata(_0x47455c['resolveS'+_0xf9304f(0x1f6)](),_0x117a9f),_0x236bf1(_0xf9304f(0x32f)+'updated',{'type':_0xf9304f(0x22a)+_0xf9304f(0x1cf)+_0xf9304f(0x201),'pinnedKeys':_0x117a9f[_0xf9304f(0x229)+'ys']}),_0x25bddc?.[_0xf9304f(0x1f8)](_0xf9304f(0x2de)+'pinned\x20k'+_0xf9304f(0x27e)+'ted',{'count':_0x117a9f[_0xf9304f(0x229)+'ys'][_0xf9304f(0x2f1)]}),{'ok':!![],'pinnedKeys':_0x117a9f[_0xf9304f(0x229)+'ys']};}async function _0x58450d(){const _0x5df05d=_0x5cfba5,_0x327aba=join(_0x47455c['resolveS'+_0x5df05d(0x1f6)](),_0x5df05d(0x321)+'e');return{'path':_0x327aba,'exists':Boolean(await stat(_0x327aba)[_0x5df05d(0x2a7)](()=>null))};}async function _0x3d5e00(){const _0x5a5284=_0x5cfba5;return readSharedContext(join(_0x47455c[_0x5a5284(0x2ee)+_0x5a5284(0x1f6)](),_0x5a5284(0x321)+'e'));}async function _0x11d298(_0x5786b3={}){const _0x56716b=_0x5cfba5;return _0x1e05a2?.[_0x56716b(0x1f8)](_0x56716b(0x321)+_0x56716b(0x30d)+_0x56716b(0x319)+_0x56716b(0x2c8)+_0x56716b(0x2d8),{'files':Object[_0x56716b(0x295)](sanitizeSharedContextPayload(_0x5786b3))}),writeSharedContext(join(_0x47455c[_0x56716b(0x2ee)+'tateDir'](),'workspac'+'e'),_0x5786b3);}async function _0x239f0a(_0x5bbeab={}){const _0x3dd384=_0x5cfba5;return _0x5515ce(),await _0x4b7810[_0x3dd384(0x20f)](_0x3dd384(0x2ce)+'t',_0x5bbeab);}async function _0x55ae8e(_0x36ee0c={}){const _0xf3b983=_0x5cfba5;return _0x5515ce(),await _0x4b7810[_0xf3b983(0x20f)](_0xf3b983(0x1e0),_0x36ee0c);}async function _0x2513b3(_0x1ce035={}){const _0x4f0dcd=_0x5cfba5;_0x5515ce();const _0x154882=getTrimmedString(_0x1ce035[_0x4f0dcd(0x242)]??_0x1ce035['id']);if(!_0x154882)throw new Error(_0x4f0dcd(0x27a)+_0x4f0dcd(0x30c)+'d');const _0x9c6a50=asRecord(_0x1ce035[_0x4f0dcd(0x1d8)]),_0xaa22e1=Object['keys'](_0x9c6a50)['length']>0x0?_0x9c6a50:{..._0x1ce035};return delete _0xaa22e1[_0x4f0dcd(0x242)],delete _0xaa22e1['id'],await _0x4b7810[_0x4f0dcd(0x20f)](_0x4f0dcd(0x206)+_0x4f0dcd(0x256),{'jobId':_0x154882,'patch':_0xaa22e1});}async function _0x33b6b9(_0x26424b={}){const _0x5c4cb5=_0x5cfba5;_0x5515ce();const _0x243ff7=getTrimmedString(_0x26424b[_0x5c4cb5(0x242)]??_0x26424b['id']);if(!_0x243ff7)throw new Error(_0x5c4cb5(0x27a)+_0x5c4cb5(0x30c)+'d');return await _0x4b7810['request'](_0x5c4cb5(0x259)+_0x5c4cb5(0x334),{'jobId':_0x243ff7});}async function _0x446e9c(_0x3b619a={}){const _0x395b0e=_0x5cfba5;_0x5515ce();const _0x1dc91=getTrimmedString(_0x3b619a['jobId']??_0x3b619a['id']);if(!_0x1dc91)throw new Error(_0x395b0e(0x27a)+_0x395b0e(0x30c)+'d');return await _0x4b7810[_0x395b0e(0x20f)](_0x395b0e(0x1c7),{'jobId':_0x1dc91});}async function _0x4d74e7(_0x2d4bf9={}){const _0xd794c8=_0x5cfba5;return _0x5515ce(),await _0x4b7810[_0xd794c8(0x20f)](_0xd794c8(0x1c7)+'s',_0x2d4bf9);}async function _0x3de4af(_0x37aada={}){const _0x3f5c96=_0x5cfba5;_0x5515ce();const _0x1b2968=Date[_0x3f5c96(0x1d6)]();_0x1e05a2?.['info'](_0x3f5c96(0x1f2)+_0x3f5c96(0x28d)+_0x3f5c96(0x1b8),{'payload':summarizePayload(_0x37aada)});try{const _0x241477=await _0x4b7810[_0x3f5c96(0x20f)](_0x3f5c96(0x2cb)+_0x3f5c96(0x24c),_0x37aada);return _0x1e05a2?.['info'](_0x3f5c96(0x1f2)+_0x3f5c96(0x234)+'mpleted',{'durationMs':Date[_0x3f5c96(0x1d6)]()-_0x1b2968,'result':summarizePayload(_0x241477,{'maxDepth':0x2})}),_0x241477;}catch(_0x201396){_0x1e05a2?.[_0x3f5c96(0x2d5)](_0x3f5c96(0x1f2)+_0x3f5c96(0x323)+'iled',{'durationMs':Date[_0x3f5c96(0x1d6)]()-_0x1b2968,'error':summarizeError(_0x201396)});throw _0x201396;}}async function _0x1d0888(_0x3f0cbc={}){const _0x11a1f0=_0x5cfba5;return _0x5515ce(),_0x1e05a2?.[_0x11a1f0(0x1f8)](_0x11a1f0(0x2bf)+'date\x20req'+'uested',{'payload':summarizePayload(_0x3f0cbc)}),await _0x4b7810['request'](_0x11a1f0(0x276)+_0x11a1f0(0x29d),_0x3f0cbc);}async function _0x5b11e7(_0x24d0a6={}){const _0x581393=_0x5cfba5;return _0x5515ce(),_0x1e05a2?.[_0x581393(0x1f8)](_0x581393(0x260)+_0x581393(0x338)+_0x581393(0x1c5),{'payload':summarizePayload(_0x24d0a6)}),await _0x4b7810['request']('skills.d'+_0x581393(0x26c),_0x24d0a6);}async function _0xf38547(_0x8536cc={}){const _0x1b3cff=_0x5cfba5;_0x5515ce();const _0x151b10=getTrimmedString(_0x8536cc['sessionK'+'ey']),_0x4485ce=getTrimmedString(_0x8536cc[_0x1b3cff(0x31b)]),_0x4447b0=getTrimmedString(_0x8536cc[_0x1b3cff(0x210)+'d'])||randomUUID();if(!_0x151b10)throw new Error(_0x1b3cff(0x30b)+_0x1b3cff(0x287)+'quired');if(!_0x4485ce)throw new Error(_0x1b3cff(0x325)+_0x1b3cff(0x240)+_0x1b3cff(0x2f6));const _0x24336c=Date[_0x1b3cff(0x1d6)]();_0x31d3e9?.[_0x1b3cff(0x1f8)](_0x1b3cff(0x296)+'eam\x20requ'+_0x1b3cff(0x22f),{'requestId':_0x4447b0,'sessionKey':_0x151b10,'message':summarizeText(_0x4485ce),'filePaths':summarizeFilePaths(_0x8536cc[_0x1b3cff(0x33a)+'s'])}),_0x26045a({'requestId':_0x4447b0,'sessionKey':_0x151b10,'type':_0x1b3cff(0x1e9)}),_0x705aa[_0x1b3cff(0x1bd)](_0x4447b0,{'runId':_0x4447b0,'requestId':_0x4447b0,'sessionKey':_0x151b10,'textLength':0x0,'startedAt':_0x24336c}),_0x461f7b[_0x1b3cff(0x1bd)](_0x151b10,_0x4447b0);try{const _0x4b52bd=await buildAttachments(Array[_0x1b3cff(0x20e)](_0x8536cc[_0x1b3cff(0x33a)+'s'])?_0x8536cc[_0x1b3cff(0x33a)+'s']:[]);_0x31d3e9?.[_0x1b3cff(0x1f8)](_0x1b3cff(0x24b)+_0x1b3cff(0x28c)+'\x20prepare'+'d',{'requestId':_0x4447b0,'sessionKey':_0x151b10,'attachmentCount':_0x4b52bd[_0x1b3cff(0x2f1)],'attachments':_0x4b52bd[_0x1b3cff(0x31d)](_0x3879fd=>({'type':_0x3879fd[_0x1b3cff(0x311)],'mimeType':_0x3879fd[_0x1b3cff(0x1e6)],'fileName':_0x3879fd[_0x1b3cff(0x282)],'contentLength':_0x3879fd[_0x1b3cff(0x212)][_0x1b3cff(0x2f1)]}))});const _0x2641bc=asRecord(await _0x4b7810[_0x1b3cff(0x20f)](_0x1b3cff(0x281)+'d',{'sessionKey':_0x151b10,'message':_0x4485ce,'deliver':![],'idempotencyKey':_0x4447b0,..._0x4b52bd[_0x1b3cff(0x2f1)]>0x0?{'attachments':_0x4b52bd}:{}})),_0x29a684=getTrimmedString(_0x2641bc[_0x1b3cff(0x2f4)])||_0x4447b0,_0x383529=_0x705aa['get'](_0x4447b0);if(!_0x383529)return{'ok':!![],'requestId':_0x4447b0,'runId':_0x29a684};return _0x29a684!==_0x383529['runId']&&(_0x705aa[_0x1b3cff(0x204)](_0x383529[_0x1b3cff(0x2f4)]),_0x383529[_0x1b3cff(0x2f4)]=_0x29a684,_0x705aa[_0x1b3cff(0x1bd)](_0x29a684,_0x383529)),_0x461f7b['set'](_0x151b10,_0x29a684),_0x31d3e9?.[_0x1b3cff(0x1f8)](_0x1b3cff(0x296)+'eam\x20acce'+'pted\x20by\x20'+_0x1b3cff(0x1d9),{'requestId':_0x4447b0,'runId':_0x29a684,'sessionKey':_0x151b10,'durationMs':Date['now']()-_0x24336c,'status':_0x2641bc['status']}),_0x2641bc[_0x1b3cff(0x1fd)]===_0x1b3cff(0x2d5)&&_0x4620b3(_0x383529,_0x1b3cff(0x2d5),getTrimmedString(_0x2641bc[_0x1b3cff(0x226)+'sage'])||_0x1b3cff(0x2fb)+_0x1b3cff(0x225)+'led'),{'ok':!![],'requestId':_0x4447b0,'runId':_0x29a684,'response':_0x2641bc};}catch(_0xb43317){const _0x307b05=_0x330091(_0x4447b0),_0x2966bc=_0xb43317 instanceof Error?_0xb43317[_0x1b3cff(0x31b)]:String(_0xb43317);_0x31d3e9?.[_0x1b3cff(0x2d5)]('chat\x20str'+_0x1b3cff(0x205)+'ed',{'requestId':_0x4447b0,'sessionKey':_0x151b10,'durationMs':Date[_0x1b3cff(0x1d6)]()-_0x24336c,'error':summarizeError(_0xb43317)});if(_0x307b05)_0x4620b3(_0x307b05,_0x1b3cff(0x2d5),_0x2966bc);else _0x26045a({'requestId':_0x4447b0,'sessionKey':_0x151b10,'type':_0x1b3cff(0x2d5),'message':_0x2966bc});throw _0xb43317;}}async function _0x440a66(_0x1fd01c={}){const _0x159fa3=_0x5cfba5;_0x5515ce();const _0x5340f3=getTrimmedString(_0x1fd01c[_0x159fa3(0x30b)+'ey']);if(!_0x5340f3)throw new Error('sessionK'+'ey\x20is\x20re'+_0x159fa3(0x336));const _0x500dc4=Date[_0x159fa3(0x1d6)](),_0x258586=_0x330091(getTrimmedString(_0x1fd01c['requestI'+'d']))??_0x19e1d5(_0x5340f3),_0x3f7043=_0x461f7b[_0x159fa3(0x1cd)](_0x5340f3),_0x2aa5da={'sessionKey':_0x5340f3};if(_0x258586?.[_0x159fa3(0x2f4)])_0x2aa5da[_0x159fa3(0x2f4)]=_0x258586['runId'];else{if(_0x3f7043)_0x2aa5da[_0x159fa3(0x2f4)]=_0x3f7043;}const _0x3946cb=await _0x4b7810[_0x159fa3(0x20f)]('chat.abo'+'rt',_0x2aa5da);if(_0x258586)_0x4620b3(_0x258586,_0x159fa3(0x25f));return _0x31d3e9?.['info'](_0x159fa3(0x21d)+_0x159fa3(0x2cc)+_0x159fa3(0x30a),{'sessionKey':_0x5340f3,'requestId':getTrimmedString(_0x1fd01c[_0x159fa3(0x210)+'d']),'runId':_0x2aa5da[_0x159fa3(0x2f4)],'durationMs':Date['now']()-_0x500dc4}),_0x3946cb;}async function _0x58f487(_0x1f7ce5={}){const _0x5027d6=_0x5cfba5;_0x5515ce();const _0x2c95d0=getTrimmedString(_0x1f7ce5[_0x5027d6(0x30b)+'ey']);if(!_0x2c95d0)throw new Error(_0x5027d6(0x30b)+'ey\x20is\x20re'+_0x5027d6(0x336));const _0x31d389=await _0x4b7810[_0x5027d6(0x20f)](_0x5027d6(0x28f)+_0x5027d6(0x290),{'sessionKey':_0x2c95d0,'limit':Math[_0x5027d6(0x1db)](0x1,Math[_0x5027d6(0x203)](Number(_0x1f7ce5['limit'])||0xc8))});return _0x31d3e9?.[_0x5027d6(0x1f8)](_0x5027d6(0x1d3)+'tory\x20loa'+_0x5027d6(0x1e2),{'sessionKey':_0x2c95d0,'limit':Math[_0x5027d6(0x1db)](0x1,Math['floor'](Number(_0x1f7ce5[_0x5027d6(0x2fd)])||0xc8)),'result':summarizePayload(_0x31d389,{'maxDepth':0x2})}),_0x31d389;}async function _0x28f0f9(_0x1f5cce=''){const _0x4bab60=_0x5cfba5;if(!_0xf7b10f())return{'pending':!![],'skills':[]};const _0x29ac01=getTrimmedString(_0x1f5cce),_0x57e724=await _0x4b7810['request'](_0x4bab60(0x25c)+'tatus',_0x29ac01?{'agentId':_0x29ac01}:{}),_0x17c3dc=await _0x47455c[_0x4bab60(0x29c)+'ig']()['catch'](()=>({})),_0x58b368=filterSkillsForAgent(_0x57e724,_0x17c3dc,_0x29ac01);return _0x1e05a2?.[_0x4bab60(0x1f8)](_0x4bab60(0x257)+_0x4bab60(0x1c4)+'aded',{'agentId':_0x29ac01||'default','result':summarizePayload(_0x58b368,{'maxDepth':0x2})}),_0x58b368;}return{'on':_0x2188cc,'start':_0x546793,'stop':_0x1d924a,'restart':_0x391d41,'runtimeInfo':_0x94bc77,'getStatus':()=>_0x66c15a,'getRecentLogs':_0x189e12,'answerAskUserQuestion':_0x358ff3=>_0x4aefbf[_0x5cfba5(0x2da)](_0x358ff3),'agents':{'list':_0x11e317},'skills':{'status':_0x28f0f9,'install':_0x3de4af,'update':_0x1d0888,'delete':_0x5b11e7},'sessions':{'create':_0x56eefc,'list':_0x4ca959,'delete':_0x4eade1,'rename':_0x13bb09,'pinnedKeys':_0x340bbd,'setPinnedKeys':_0x559635},'workspace':{'directoryInfo':_0x58450d,'sharedContext':_0x3d5e00,'writeSharedContext':_0x11d298},'cron':{'list':_0x239f0a,'create':_0x55ae8e,'update':_0x2513b3,'remove':_0x33b6b9,'runOnce':_0x446e9c,'logs':_0x4d74e7},'models':{'settings':()=>_0x47455c[_0x5cfba5(0x2b6)+_0x5cfba5(0x272)](),'setSettings':async(_0x15549c={})=>{const _0x36655e=_0x5cfba5,_0x56d949=_0x15549c?.[_0x36655e(0x1f3)+_0x36655e(0x2f3)]!==![];return await _0x47455c[_0x36655e(0x2bc)+_0x36655e(0x272)](_0x15549c,{'restartOnChange':_0x56d949}),_0x47455c[_0x36655e(0x2b6)+_0x36655e(0x272)]();},'setSelfOperatedModels':_0x33aefc=>_0x47455c[_0x5cfba5(0x24d)+_0x5cfba5(0x2b1)+_0x5cfba5(0x2f2)](_0x33aefc),'selectedModelId':async()=>{const _0x28a332=_0x5cfba5,_0x5d8e48=await _0x47455c[_0x28a332(0x2b6)+_0x28a332(0x272)]();return _0x5d8e48[_0x28a332(0x2d9)]&&_0x5d8e48['modelNam'+'e']?_0x5d8e48['provider']+'/'+_0x5d8e48[_0x28a332(0x32b)+'e']:'';},'customModels':async()=>[]},'config':{'read':()=>_0x47455c['readConf'+'ig']()},'chat':{'stream':_0xf38547,'abort':_0x440a66,'history':_0x58f487}};}
|
|
1
|
+
const _0x1d3596=_0x16c8;(function(_0x30a45a,_0x468ac4){const _0x1ef0b1=_0x16c8,_0x2c8ed2=_0x30a45a();while(!![]){try{const _0x4672df=-parseInt(_0x1ef0b1(0x2d5))/0x1+parseInt(_0x1ef0b1(0x2a5))/0x2+parseInt(_0x1ef0b1(0x2c4))/0x3+parseInt(_0x1ef0b1(0x26e))/0x4+-parseInt(_0x1ef0b1(0x2d6))/0x5*(parseInt(_0x1ef0b1(0x2bf))/0x6)+parseInt(_0x1ef0b1(0x2eb))/0x7+parseInt(_0x1ef0b1(0x224))/0x8*(parseInt(_0x1ef0b1(0x1e7))/0x9);if(_0x4672df===_0x468ac4)break;else _0x2c8ed2['push'](_0x2c8ed2['shift']());}catch(_0x3b96ed){_0x2c8ed2['push'](_0x2c8ed2['shift']());}}}(_0x264c,0x31749));import{randomUUID}from'node:crypto';function _0x16c8(_0x6e758b,_0x1de765){_0x6e758b=_0x6e758b-0x19b;const _0x264c3d=_0x264c();let _0x16c861=_0x264c3d[_0x6e758b];return _0x16c861;}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 _0x2e5d8c,{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='gateway-'+_0x1d3596(0x31c),CLIENT_MODE=_0x1d3596(0x2ae),CLIENT_DEVICE_FAMILY=_0x1d3596(0x231),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,SESSION_METADATA_FILE=_0x1d3596(0x1cb)+'metadata'+_0x1d3596(0x1d7),SHARED_CONTEXT_FILES=['AGENTS.m'+'d',_0x1d3596(0x256)+_0x1d3596(0x30a),_0x1d3596(0x1b5)+'.md',_0x1d3596(0x273)+'d',_0x1d3596(0x318),_0x1d3596(0x19f),_0x1d3596(0x1ad)];function nowIso(){const _0x4fcbb5=_0x1d3596;return new Date()[_0x4fcbb5(0x25c)+_0x4fcbb5(0x216)]();}function buildGatewayWsUrl(_0x3ee863){const _0x28eef0=_0x1d3596;return _0x28eef0(0x29a)+_0x28eef0(0x22d)+_0x3ee863;}function createInitialStatus(){const _0x3c9bc1=_0x1d3596;return{'lifecycle':_0x3c9bc1(0x1ff),'health':'unknown','port':null,'tokenPresent':![],'message':_0x3c9bc1(0x2c2)+_0x3c9bc1(0x1ff),'updatedAt':nowIso()};}function extractGatewayMessageText(_0x42cc23){const _0x35adab=_0x1d3596;if(typeof _0x42cc23===_0x35adab(0x2a1))return _0x42cc23;if(!Array[_0x35adab(0x2f8)](_0x42cc23))return'';const _0x2d5cee=[];for(const _0x241c52 of _0x42cc23){if(typeof _0x241c52===_0x35adab(0x2a1)){if(_0x241c52)_0x2d5cee['push'](_0x241c52);continue;}const _0x774489=asRecord(_0x241c52);_0x774489[_0x35adab(0x2e5)]===_0x35adab(0x277)&&typeof _0x774489[_0x35adab(0x277)]==='string'&&_0x774489[_0x35adab(0x277)]&&_0x2d5cee['push'](_0x774489['text']);}return _0x2d5cee[_0x35adab(0x215)]('\x0a');}function extractGatewayChatText(_0x2edc03){const _0x5e6cad=_0x1d3596,_0x41ccda=asRecord(_0x2edc03);if(typeof _0x41ccda[_0x5e6cad(0x277)]===_0x5e6cad(0x2a1))return _0x41ccda['text'];return extractGatewayMessageText(_0x41ccda['content']);}function guessMimeType(_0x1c3860){const _0x45e89e=_0x1d3596,_0x10cf31=_0x1c3860[_0x45e89e(0x26d)]('.')['pop']()?.['toLowerC'+_0x45e89e(0x29f)]()??'',_0x4d9394={'png':_0x45e89e(0x253)+'g','jpg':'image/jp'+'eg','jpeg':_0x45e89e(0x244)+'eg','webp':_0x45e89e(0x304)+'bp','gif':_0x45e89e(0x1a2)+'f','svg':'image/sv'+_0x45e89e(0x24b),'pdf':_0x45e89e(0x211)+_0x45e89e(0x22f),'txt':_0x45e89e(0x2ca)+'in','md':_0x45e89e(0x1b2)+'kdown','json':'applicat'+_0x45e89e(0x319),'csv':_0x45e89e(0x2d3)};return _0x4d9394[_0x10cf31]||'applicat'+_0x45e89e(0x286)+_0x45e89e(0x226);}async function buildAttachments(_0x5c1561=[]){const _0x36b58f=_0x1d3596,_0x3ded5f=[];for(const _0x2b093a of _0x5c1561){const _0x2e05dd=getTrimmedString(_0x2b093a);if(!_0x2e05dd)continue;const _0x17f379=await stat(_0x2e05dd);if(!_0x17f379[_0x36b58f(0x1f7)]())continue;if(_0x17f379[_0x36b58f(0x2fe)]>ATTACHMENT_MAX_BYTES)throw new Error(_0x36b58f(0x1e2)+_0x36b58f(0x1d3)+_0x36b58f(0x206)+basename(_0x2e05dd));const _0x2573c=guessMimeType(_0x2e05dd);_0x3ded5f[_0x36b58f(0x27c)]({'type':_0x2573c[_0x36b58f(0x2c8)+'th'](_0x36b58f(0x1bd))?_0x36b58f(0x1f8):_0x36b58f(0x279),'mimeType':_0x2573c,'content':(await readFile(_0x2e05dd))[_0x36b58f(0x251)](_0x36b58f(0x2de)),'fileName':basename(_0x2e05dd)});}return _0x3ded5f;}function buildSessionCreateRequestPayload(_0x5375cb={}){const _0x4282e4=_0x1d3596,_0x237f85={},_0x5a15df=Math[_0x4282e4(0x252)]()[_0x4282e4(0x251)](0x24)[_0x4282e4(0x1bb)](0x2,0xf),_0x59341d=getTrimmedString(_0x5375cb[_0x4282e4(0x29c)])||'main',_0x35e9a9=getTrimmedString(_0x5375cb['key'])||_0x4282e4(0x242)+_0x59341d+(_0x4282e4(0x21a)+'-')+Date[_0x4282e4(0x2bc)]();_0x237f85[_0x4282e4(0x1f9)]=_0x35e9a9+'-'+_0x5a15df,_0x237f85[_0x4282e4(0x29c)]=_0x59341d;const _0x4b8426=getTrimmedString(_0x5375cb['label']);if(_0x4b8426)_0x237f85['label']=_0x4b8426+'-'+_0x5a15df;for(const _0xf36a32 of[_0x4282e4(0x2e0),'parentSe'+_0x4282e4(0x203),_0x4282e4(0x21b),'message']){const _0x2af13c=getTrimmedString(_0x5375cb[_0xf36a32]);if(_0x2af13c)_0x237f85[_0xf36a32]=_0x2af13c;}return _0x237f85;}function parseSessionCreateResult(_0x35001d){const _0xf0a447=_0x1d3596,_0x553ad5=asRecord(_0x35001d),_0x1201f6=asRecord(_0x553ad5['session']);return{'ok':!![],'key':getTrimmedString(_0x553ad5[_0xf0a447(0x1f9)])||getTrimmedString(_0x553ad5[_0xf0a447(0x219)+'ey'])||getTrimmedString(_0x1201f6[_0xf0a447(0x1f9)])||null,'sessionId':getTrimmedString(_0x553ad5['sessionI'+'d'])||getTrimmedString(_0x1201f6[_0xf0a447(0x278)+'d'])||null};}function getSessionKeyFromValue(_0x3eb707){const _0x9cf4f3=_0x1d3596,_0x40c861=asRecord(_0x3eb707);return getTrimmedString(_0x40c861[_0x9cf4f3(0x219)+'ey']??_0x40c861['key']??_0x40c861['id']);}function createEmptySessionMetadata(){return{'names':{},'pinnedKeys':[]};}async function readSessionMetadata(_0x333ee0){const _0x46dfe2=_0x1d3596;try{const _0xe37d02=JSON[_0x46dfe2(0x31a)](await readFile(join(_0x333ee0,SESSION_METADATA_FILE),'utf8')),_0x3e2f1b=asRecord(_0xe37d02);return{'names':asRecord(_0x3e2f1b[_0x46dfe2(0x30e)]),'pinnedKeys':Array[_0x46dfe2(0x2f8)](_0x3e2f1b[_0x46dfe2(0x1b4)+'ys'])?_0x3e2f1b[_0x46dfe2(0x1b4)+'ys']['filter'](_0x5e6a37=>typeof _0x5e6a37===_0x46dfe2(0x2a1)&&_0x5e6a37[_0x46dfe2(0x26a)]()):[]};}catch{return createEmptySessionMetadata();}}async function writeSessionMetadata(_0x21c0e9,_0x4f5d1d){const _0x46a674=_0x1d3596;await mkdir(_0x21c0e9,{'recursive':!![]}),await writeFile(join(_0x21c0e9,SESSION_METADATA_FILE),JSON['stringif'+'y'](_0x4f5d1d,null,0x2)+'\x0a',_0x46a674(0x21f));}function applySessionMetadata(_0x3a459d,_0x4a25ea){const _0x1beed4=_0x1d3596,_0xf34f1c=asRecord(_0x3a459d),_0x30c678=Array['isArray'](_0xf34f1c[_0x1beed4(0x1c0)])?_0xf34f1c['sessions']:[];return{..._0xf34f1c,'pinnedKeys':_0x4a25ea['pinnedKe'+'ys'],'sessions':_0x30c678[_0x1beed4(0x266)](_0x3cfd09=>{const _0x2f9f35=_0x1beed4,_0x29f246=asRecord(_0x3cfd09),_0xfb7709=getSessionKeyFromValue(_0x29f246);if(!_0xfb7709)return _0x3cfd09;const _0x3a257b=getTrimmedString(_0x4a25ea[_0x2f9f35(0x30e)][_0xfb7709]),_0x57a189=_0x4a25ea['pinnedKe'+'ys']['includes'](_0xfb7709);return{..._0x29f246,..._0x3a257b?{'name':_0x3a257b,'displayName':_0x3a257b,'label':_0x3a257b}:{},'pinned':_0x57a189};})};}function _0x264c(){const _0x466a44=['openclaw','\x20write\x20r','applicat','cron.run','ey\x20is\x20re','stringif','join','ing','ed:\x20','resolveC','sessionK',':session','task','tings','warn','destroy','utf8','lete\x20req','figChang','fileName','configur','56ROaBbz','trimEnd','t-stream','onfigPat','bundled\x20','\x20for\x20WS','nChange','eam\x20fail','entries','.0.0.1:','ndled\x20ag','ion/pdf','aborted','desktop','spawn\x20re','terminal','projectR','tatus','requestI','cron.lis','workspac','tatus\x20lo','ayRestar','websocke','nsured','chat\x20str','productN','manual\x20r','listen','connecte','agent:','c\x20comple','image/jp','runId','system','chat\x20eve','invalid\x20','ized','/ask-use','g+xml','chat\x20fai','skill\x20up','changed','max','resolveS','toString','random','image/pn','session\x20','ask-user','HEARTBEA','watchCon','-questio','deny','chat.sen','final','toISOStr','chat\x20att','sage','values','\x20waiting','unknown','then','.delete','res','n\x20[REDAC','map','allow','delete\x20c','anscript','trim','eviceIde','name','split','546932VoebLM','ode=','rt\x20reque','message\x20','title','MEMORY.m','ase\x20retr','ting:\x20','json','text','sessionI','file','method','chat','push','x-ask-us','ent','end','capabili','by\x20gatew','agents','ved','date\x20req','set','ion/octe','ync\x20fail','pinned\x20k','kill','pid','stdout','Version','.create','--allow-','behavior','deleteTr','reate','uested','d\x20--toke','cron.upd','restarti','stderr','finally','chat\x20abo','ist\x20requ','ws://127','url','agentId','c\x20starte','run','ase','data','string','SIGTERM','version','\x20gateway','622094HJKPEL','writeCon','delete','POST','t\x20discon','some','chat-str','started,','running','backend','chat.his','updated','request','controll','pted\x20by\x20','bundled-','\x20failed\x20','eys\x20upda','\x20signal=','info','ested','quested','ills\x20syn','now','.list','writeHea','2022ADoLEx','mpleted','off','gateway\x20','ist','553908McLOJK','delta','modelNam','n\x20callba','startsWi','lifecycl','text/pla','agents\x20l','headers','errorMes','eam\x20requ','healthy','ame','readConf','limit','text/csv','done','152087dOwfav','5290QVielj','unauthor','stall\x20co','has','ompleted','close','tory','ort\x20','base64','n\x20reques','model','estart','--port','paths','agents\x20s','type','filter','getModel','ded','setModel','chat.abo','266371RzsKVV','elete','clear','\x20run\x20--a','quired','get','led','floor','hell:gat','skills','restart\x20','er-secre','content','isArray','agent\x20sk','oot','cron.rem','installP','exited\x20u','size','mimeType','resolve','source','null','itialCon','image/we','not\x20foun','skill\x20de','tateDir','renamed','gateway','T.md','skills.s','Fallback','peratedM','names','timeout','startedA','dispose','defaultI','agents-r','message','starting','27.0.0.1','unhealth','SOUL.md','ion/json','parse','skills.u','client','--token','flush','keys','nstall','e\x20update','ternally','TOOLS.md','onfigure','agents\x20e','image/gi','process\x20','tory\x20loa','chat\x20his','runtimeR','skills.i','jobId\x20is','once','[REDACTE','r-questi','agents-u','USER.md','Settings','ath','sted','ntityPat','text/mar','skills.d','pinnedKe','IDENTITY','tewaySet','eys-upda','kUserQue','eam-even','ted','slice','token','image/','gateway-','jobId','sessions','settings','iled','ured','exited','is\x20requi','t\x20connec','stop','start','started','main','session-','patch','textLeng','length','provider','default','achments','exited\x20c','nt\x20too\x20l','nected','error','unshift','.json','requeste','port','create\x20c','plugins','t\x20not\x20fo','filePath','ay\x20state','splice','aded','skill\x20in','attachme','ove','log','sent','status','52371NsoLoD','ensureIn','stack','pdated','127.0.0.','answers','agents.u','ck\x20disab','andledIn','emit','red','\x20context','ginConfi','igWriteH','tHandler','chat\x20run','isFile','image','key','ate','create\x20r','ties','eway]\x20bu','cron.add','stopped','agents.c','\x20prepare','nexpecte','ssionKey','toUpperC','discover','arge:\x20','stall\x20fa','pdate','setGatew','odels','catch','\x20require','unconfig','Timer'];_0x264c=function(){return _0x466a44;};return _0x264c();}function sanitizeSharedContextPayload(_0x5e73c9){const _0x3894de=_0x1d3596,_0x321384=asRecord(_0x5e73c9),_0x501ea9={};for(const _0x22c12a of SHARED_CONTEXT_FILES){if(typeof _0x321384[_0x22c12a]===_0x3894de(0x2a1))_0x501ea9[_0x22c12a]=_0x321384[_0x22c12a];}return _0x501ea9;}async function readSharedContext(_0x2b54ab){const _0x39f28c=_0x1d3596,_0x8c5f50={};for(const _0x524bc0 of SHARED_CONTEXT_FILES){try{_0x8c5f50[_0x524bc0]=await readFile(join(_0x2b54ab,_0x524bc0),_0x39f28c(0x21f));}catch{_0x8c5f50[_0x524bc0]='';}}return _0x8c5f50;}async function writeSharedContext(_0x5c204d,_0x178c0e){const _0x364a2e=_0x1d3596,_0x4e75c5=sanitizeSharedContextPayload(_0x178c0e);await mkdir(_0x5c204d,{'recursive':!![]});for(const [_0x5ab8fc,_0x2b9655]of Object[_0x364a2e(0x22c)](_0x4e75c5)){await writeFile(join(_0x5c204d,_0x5ab8fc),_0x2b9655,_0x364a2e(0x21f));}return{'ok':!![],'files':Object[_0x364a2e(0x19b)](_0x4e75c5)};}function createAskUserQuestionServer({configController:_0x32c6d8,emit:_0xc90d68}){const _0x37abbd=new Map();let _0x8299f5=null,_0x325309='',_0x30848b='';async function _0x50f771(){const _0x298e12=_0x16c8;if(_0x8299f5)return{'callbackUrl':_0x325309,'secret':_0x30848b};_0x30848b=randomUUID();const _0x46dbbd=await _0x2e5d8c({'port':portNumbers(0x332c,0x338f)});return _0x325309='http://1'+_0x298e12(0x316)+':'+_0x46dbbd+('/ask-use'+_0x298e12(0x1ab)+'on'),_0x8299f5=createServer(async(_0x36b53d,_0x513ff8)=>{const _0x3e8a21=_0x298e12;if(_0x36b53d[_0x3e8a21(0x27a)]!==_0x3e8a21(0x2a8)||_0x36b53d[_0x3e8a21(0x29b)]!==_0x3e8a21(0x24a)+_0x3e8a21(0x1ab)+'on'){_0x513ff8[_0x3e8a21(0x2be)+'d'](0x194),_0x513ff8[_0x3e8a21(0x27f)](_0x3e8a21(0x305)+'d');return;}if(_0x36b53d[_0x3e8a21(0x2cc)][_0x3e8a21(0x27d)+_0x3e8a21(0x2f6)+'t']!==_0x30848b){_0x513ff8['writeHea'+'d'](0x191),_0x513ff8[_0x3e8a21(0x27f)](_0x3e8a21(0x2d7)+_0x3e8a21(0x249));return;}let _0x11dcf2='';_0x36b53d['on'](_0x3e8a21(0x2a0),_0xa0c507=>{const _0x1cf4bf=_0x3e8a21;_0x11dcf2+=_0xa0c507[_0x1cf4bf(0x251)]();if(_0x11dcf2['length']>0x400*0x400)_0x36b53d[_0x1cf4bf(0x21e)]();}),_0x36b53d['on'](_0x3e8a21(0x27f),()=>{const _0x339c34=_0x3e8a21;let _0x192d65={};try{_0x192d65=JSON[_0x339c34(0x31a)](_0x11dcf2||'{}');}catch{_0x513ff8['writeHea'+'d'](0x190),_0x513ff8[_0x339c34(0x27f)](_0x339c34(0x248)+_0x339c34(0x276));return;}const _0x20ff7d=randomUUID(),_0x45a076=setTimeout(()=>{const _0x363063=_0x339c34;if(!_0x37abbd[_0x363063(0x2d9)](_0x20ff7d))return;_0x37abbd[_0x363063(0x2a7)](_0x20ff7d),_0x513ff8[_0x363063(0x2be)+'d'](0xc8,{'content-type':_0x363063(0x211)+_0x363063(0x319)}),_0x513ff8[_0x363063(0x27f)](JSON['stringif'+'y']({'behavior':_0x363063(0x259)}));},0x1d4c0);_0x37abbd['set'](_0x20ff7d,{'res':_0x513ff8,'timeout':_0x45a076}),_0xc90d68(_0x339c34(0x255)+_0x339c34(0x258)+'n',{'requestId':_0x20ff7d,...asRecord(_0x192d65)});});}),await new Promise((_0x562507,_0x386961)=>{const _0x67f0b9=_0x298e12;_0x8299f5[_0x67f0b9(0x1a9)](_0x67f0b9(0x1d5),_0x386961),_0x8299f5[_0x67f0b9(0x240)](_0x46dbbd,_0x67f0b9(0x1eb)+'1',()=>{const _0x26c2d7=_0x67f0b9;_0x8299f5[_0x26c2d7(0x2c1)](_0x26c2d7(0x1d5),_0x386961),_0x562507();});}),await _0x32c6d8['ensureAs'+_0x298e12(0x1b8)+'stionPlu'+_0x298e12(0x1f3)+'g']({'callbackUrl':_0x325309,'secret':_0x30848b}),{'callbackUrl':_0x325309,'secret':_0x30848b};}function _0x46098b(_0x2a50e1={}){const _0x4e5372=_0x16c8,_0x24c6e4=getTrimmedString(_0x2a50e1[_0x4e5372(0x236)+'d']);if(!_0x24c6e4||!_0x37abbd[_0x4e5372(0x2d9)](_0x24c6e4))throw new Error(_0x4e5372(0x255)+_0x4e5372(0x258)+_0x4e5372(0x2df)+_0x4e5372(0x1dc)+'und');const _0x1942c3=_0x37abbd[_0x4e5372(0x2f0)](_0x24c6e4);return _0x37abbd['delete'](_0x24c6e4),clearTimeout(_0x1942c3[_0x4e5372(0x30f)]),_0x1942c3['res'][_0x4e5372(0x2be)+'d'](0xc8,{'content-type':'applicat'+_0x4e5372(0x319)}),_0x1942c3['res']['end'](JSON[_0x4e5372(0x214)+'y']({'behavior':_0x2a50e1[_0x4e5372(0x28f)]===_0x4e5372(0x259)?_0x4e5372(0x259):_0x4e5372(0x267),'answers':asRecord(_0x2a50e1[_0x4e5372(0x1ec)])})),{'ok':!![]};}async function _0x4085e8(){const _0x303807=_0x16c8;for(const [_0x18ca17,_0x516ec5]of _0x37abbd){_0x37abbd[_0x303807(0x2a7)](_0x18ca17),clearTimeout(_0x516ec5[_0x303807(0x30f)]),_0x516ec5['res']['writeHea'+'d'](0xc8,{'content-type':_0x303807(0x211)+'ion/json'}),_0x516ec5[_0x303807(0x264)]['end'](JSON[_0x303807(0x214)+'y']({'behavior':_0x303807(0x259)}));}if(!_0x8299f5)return;await new Promise(_0x42ca86=>_0x8299f5[_0x303807(0x2db)](_0x42ca86)),_0x8299f5=null;}return{'start':_0x50f771,'answer':_0x46098b,'stop':_0x4085e8};}export function createGatewayController({shellConfig:_0x4032cc,configController:_0x494ede,appVersion:appVersion='0.1.0'}){const _0x433b67=_0x1d3596,_0xbb395d=new EventEmitter(),_0xd74f3=new ClawGatewayWsClient(),_0x250b17=[],_0x46cf46=new Map(),_0x29cbde=new Map(),_0x405074=createShellLogger(_0x494ede['paths'],_0x433b67(0x309)),_0x574ce4=createShellLogger(_0x494ede[_0x433b67(0x2e3)],_0x433b67(0x27b)),_0x39acfb=createShellLogger(_0x494ede[_0x433b67(0x2e3)],'sessions'),_0x341b92=createShellLogger(_0x494ede[_0x433b67(0x2e3)],_0x433b67(0x280)+_0x433b67(0x1fc)),_0x485f5c=createAskUserQuestionServer({'configController':_0x494ede,'emit':(_0x5e8590,_0x4929ff)=>_0xbb395d['emit'](_0x5e8590,_0x4929ff)});let _0x3dec43=createInitialStatus(),_0x27158d=null,_0x3b8985=null,_0x44908f=null,_0x2d9bbd=![],_0x1272d3=![],_0x347c1d=Promise[_0x433b67(0x300)](),_0x1e590=null,_0x5d0cb2=0x0;function _0x596521(_0xbd871,_0x270a34){const _0x4814bb=_0x433b67;_0xbb395d[_0x4814bb(0x1f0)](_0xbd871,_0x270a34);}function _0x215313(_0x17bf3b,_0xb754db){return _0xbb395d['on'](_0x17bf3b,_0xb754db),()=>_0xbb395d['off'](_0x17bf3b,_0xb754db);}function _0x2fb248(_0x644329){const _0x5eb8da=_0x433b67;_0x3dec43={..._0x3dec43,..._0x644329,'updatedAt':nowIso()},_0x596521(_0x5eb8da(0x1be)+'status',_0x3dec43);}function _0x429804(_0x29e1b3,_0x1bb0aa,_0xb51e2d={}){const _0x28106c=_0x433b67;_0x2fb248({'lifecycle':_0x29e1b3,'message':_0x1bb0aa,..._0xb51e2d}),_0x21f2f0(_0x28106c(0x246),_0x29e1b3[_0x28106c(0x204)+'ase']()+'\x20'+_0x1bb0aa),_0x405074?.['info'](_0x28106c(0x2c2)+_0x28106c(0x2c9)+_0x28106c(0x19d)+'d',{'lifecycle':_0x29e1b3,'message':_0x1bb0aa,'status':{'health':_0x3dec43['health'],'port':_0x3dec43[_0x28106c(0x1d9)],'tokenPresent':_0x3dec43['tokenPre'+_0x28106c(0x1e5)]},...summarizePayload(_0xb51e2d)});}function _0x21f2f0(_0x24ba69,_0x5b1dda){const _0x3cac00=_0x433b67,_0x4ef4f3=String(_0x5b1dda??'')[_0x3cac00(0x225)]();if(!_0x4ef4f3)return;const _0x419636={'source':_0x24ba69,'text':_0x4ef4f3,'timestamp':nowIso()};_0x250b17['push'](_0x419636);if(_0x250b17['length']>LOG_LIMIT)_0x250b17[_0x3cac00(0x1df)](0x0,_0x250b17['length']-LOG_LIMIT);_0x596521(_0x3cac00(0x1be)+_0x3cac00(0x1e4),_0x419636),_0x405074?.['info'](_0x3cac00(0x2c2)+'log',{'source':_0x24ba69,'text':_0x4ef4f3});}function _0xdd6667(_0x1a7d3e=0xc8){const _0x2ae19c=_0x433b67;return _0x250b17['slice'](-Math['max'](0x1,Math[_0x2ae19c(0x2f2)](_0x1a7d3e)));}function _0x3ec389(){const _0x152696=_0x433b67;if(!_0x27158d||_0x3dec43['lifecycl'+'e']!==_0x152696(0x2ad))throw new Error(_0x152696(0x2c2)+'is\x20start'+'ing,\x20ple'+_0x152696(0x274)+'y\x20shortl'+'y');}function _0x41febb(){const _0x206371=_0x433b67;return Boolean(_0x27158d&&_0x3dec43[_0x206371(0x2c9)+'e']===_0x206371(0x2ad));}function _0xadb211(_0x41d862){const _0x34ea4f=_0x433b67;_0x596521(_0x34ea4f(0x2ab)+_0x34ea4f(0x1b9)+'t',_0x41d862);}function _0x2121d5(_0x430ff9){const _0x1d4a46=_0x433b67,_0xcb108e=_0x46cf46['get'](_0x430ff9);if(!_0xcb108e)return null;_0x46cf46[_0x1d4a46(0x2a7)](_0x430ff9);if(_0xcb108e[_0x1d4a46(0x233)+_0x1d4a46(0x30c)+_0x1d4a46(0x20e)])clearTimeout(_0xcb108e[_0x1d4a46(0x233)+_0x1d4a46(0x30c)+_0x1d4a46(0x20e)]);return _0x29cbde[_0x1d4a46(0x2a7)](_0xcb108e['sessionK'+'ey']),_0xcb108e;}function _0x3d2c3d(_0x3429ff,_0x28695a,_0x114c5e=''){const _0x599ae9=_0x433b67,_0xc34516=_0x2121d5(_0x3429ff['runId']);if(!_0xc34516)return;_0x574ce4?.[_0x599ae9(0x2b8)]('chat\x20run'+'\x20settled',{'requestId':_0xc34516[_0x599ae9(0x236)+'d'],'runId':_0xc34516[_0x599ae9(0x245)],'sessionKey':_0xc34516[_0x599ae9(0x219)+'ey'],'outcome':_0x28695a,'durationMs':Date[_0x599ae9(0x2bc)]()-_0xc34516[_0x599ae9(0x310)+'t'],'textLength':_0xc34516[_0x599ae9(0x1cd)+'th'],..._0x114c5e?{'message':_0x114c5e}:{}}),_0xadb211({'requestId':_0xc34516['requestI'+'d'],'sessionKey':_0xc34516['sessionK'+'ey'],'type':_0x28695a,..._0x114c5e?{'message':_0x114c5e}:{}});}function _0x4b447e(_0x36a095){const _0x4230d6=_0x433b67;let _0x54c83e=null;for(const _0x37a6c5 of _0x46cf46[_0x4230d6(0x25f)]()){if(_0x37a6c5['sessionK'+'ey']===_0x36a095)_0x54c83e=_0x37a6c5;}return _0x54c83e;}function _0x1082e6(_0x59bc76){const _0x44faf3=_0x433b67;if(!_0x59bc76)return null;for(const _0x3eb923 of _0x46cf46['values']()){if(_0x3eb923[_0x44faf3(0x236)+'d']===_0x59bc76)return _0x3eb923;}return null;}function _0x5a189b(_0x4fe298,_0x18c4c1){const _0x3e2019=_0x433b67;if(_0x18c4c1[_0x3e2019(0x1ce)]<=_0x4fe298['textLeng'+'th'])return;const _0x4c4837=_0x18c4c1['slice'](_0x4fe298[_0x3e2019(0x1cd)+'th']);_0x4fe298[_0x3e2019(0x1cd)+'th']=_0x18c4c1[_0x3e2019(0x1ce)],_0x4c4837&&_0xadb211({'requestId':_0x4fe298[_0x3e2019(0x236)+'d'],'sessionKey':_0x4fe298[_0x3e2019(0x219)+'ey'],'type':_0x3e2019(0x2c5),'delta':_0x4c4837});}function _0x596220(_0x24a7bb,_0x18d68d,_0x13b894=''){const _0x786d2f=_0x433b67;if(_0x24a7bb[_0x786d2f(0x233)+_0x786d2f(0x30c)+'Timer'])clearTimeout(_0x24a7bb[_0x786d2f(0x233)+'Fallback'+_0x786d2f(0x20e)]);_0x24a7bb[_0x786d2f(0x233)+_0x786d2f(0x30c)+_0x786d2f(0x20e)]=setTimeout(()=>{const _0x208bc9=_0x786d2f,_0x13a81d=_0x46cf46[_0x208bc9(0x2f0)](_0x24a7bb[_0x208bc9(0x245)]);if(!_0x13a81d)return;_0x3d2c3d(_0x13a81d,_0x18d68d==='error'?_0x208bc9(0x1d5):_0x208bc9(0x2d4),_0x13b894);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x3a6ef6(_0x32670f){const _0x5f0f35=_0x433b67;for(const _0x450034 of _0x46cf46[_0x5f0f35(0x25f)]()){_0x574ce4?.[_0x5f0f35(0x21d)](_0x5f0f35(0x1f6)+_0x5f0f35(0x2b5)+_0x5f0f35(0x281)+_0x5f0f35(0x1de),{'requestId':_0x450034['requestI'+'d'],'runId':_0x450034[_0x5f0f35(0x245)],'sessionKey':_0x450034[_0x5f0f35(0x219)+'ey'],'durationMs':Date[_0x5f0f35(0x2bc)]()-_0x450034[_0x5f0f35(0x310)+'t'],'reason':_0x32670f}),_0xadb211({'requestId':_0x450034[_0x5f0f35(0x236)+'d'],'sessionKey':_0x450034['sessionK'+'ey'],'type':_0x5f0f35(0x1d5),'message':_0x32670f});if(_0x450034[_0x5f0f35(0x233)+_0x5f0f35(0x30c)+'Timer'])clearTimeout(_0x450034['terminal'+_0x5f0f35(0x30c)+_0x5f0f35(0x20e)]);}_0x46cf46[_0x5f0f35(0x2ed)](),_0x29cbde[_0x5f0f35(0x2ed)]();}function _0x2d66f9(_0x5d19c9){const _0x2ad8c3=_0x433b67,_0x30f0c8=getTrimmedString(_0x5d19c9[_0x2ad8c3(0x245)]),_0x1634b4=getTrimmedString(_0x5d19c9['state'])||_0x2ad8c3(0x2b0),_0x50b9f6=getTrimmedString(_0x5d19c9[_0x2ad8c3(0x219)+'ey']),_0x336050=(_0x30f0c8?_0x46cf46[_0x2ad8c3(0x2f0)](_0x30f0c8):null)??(_0x50b9f6?_0x4b447e(_0x50b9f6):null);if(_0x30f0c8&&_0x50b9f6)_0x29cbde[_0x2ad8c3(0x285)](_0x50b9f6,_0x30f0c8);if(_0x50b9f6)_0x596521(_0x2ad8c3(0x1cb)+_0x2ad8c3(0x2b0),{'sessionKey':_0x50b9f6,'state':_0x1634b4});_0x574ce4?.['info'](_0x2ad8c3(0x2c2)+_0x2ad8c3(0x247)+'nt\x20recei'+_0x2ad8c3(0x283),{'runId':_0x30f0c8,'sessionKey':_0x50b9f6,'state':_0x1634b4,'hasActiveRun':Boolean(_0x336050),'messageText':summarizeText(extractGatewayChatText(_0x5d19c9['message']),0x78),'errorMessage':getTrimmedString(_0x5d19c9[_0x2ad8c3(0x2cd)+_0x2ad8c3(0x25e)])});_0x336050&&(_0x1634b4===_0x2ad8c3(0x25b)||_0x1634b4===_0x2ad8c3(0x230)||_0x1634b4===_0x2ad8c3(0x1d5))&&_0x596220(_0x336050,_0x1634b4,typeof _0x5d19c9[_0x2ad8c3(0x2cd)+'sage']===_0x2ad8c3(0x2a1)?_0x5d19c9['errorMes'+_0x2ad8c3(0x25e)]:'gateway\x20'+_0x2ad8c3(0x24c)+_0x2ad8c3(0x2f1));if(!_0x336050)return;if(_0x50b9f6&&_0x50b9f6!==_0x336050[_0x2ad8c3(0x219)+'ey'])return;if(_0x1634b4===_0x2ad8c3(0x2c5)){_0x5a189b(_0x336050,extractGatewayChatText(_0x5d19c9[_0x2ad8c3(0x314)]));return;}if(_0x1634b4==='final'||_0x1634b4===_0x2ad8c3(0x230)){_0x5a189b(_0x336050,extractGatewayChatText(_0x5d19c9[_0x2ad8c3(0x314)])),_0x3d2c3d(_0x336050,_0x2ad8c3(0x2d4));return;}_0x1634b4===_0x2ad8c3(0x1d5)&&_0x3d2c3d(_0x336050,_0x2ad8c3(0x1d5),typeof _0x5d19c9['errorMes'+'sage']===_0x2ad8c3(0x2a1)?_0x5d19c9[_0x2ad8c3(0x2cd)+_0x2ad8c3(0x25e)]:_0x2ad8c3(0x2c2)+'chat\x20fai'+_0x2ad8c3(0x2f1));}async function _0x331b36(_0x2aeacf,_0x21266e){const _0x5253c3=_0x433b67;_0xd74f3[_0x5253c3(0x223)+'e']({'url':buildGatewayWsUrl(_0x21266e),'token':_0x2aeacf,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x4032cc['productN'+'ame'],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x494ede['resolveD'+_0x5253c3(0x26b)+_0x5253c3(0x1b1)+'h'](),'onChatEvent':_0x2d66f9,'onAgentEvent':_0x2db436=>_0x596521('agent-ev'+_0x5253c3(0x27e),_0x2db436),'onConnected':async()=>{const _0x3c53a9=_0x5253c3;if(!_0x27158d||!_0x44908f||!_0x3b8985)return;_0x405074?.[_0x3c53a9(0x2b8)](_0x3c53a9(0x2c2)+_0x3c53a9(0x23b)+_0x3c53a9(0x1c6)+'ted',{'port':_0x44908f,'pid':_0x27158d[_0x3c53a9(0x28a)],'readyMs':_0x5d0cb2?Date[_0x3c53a9(0x2bc)]()-_0x5d0cb2:undefined}),_0x429804(_0x3c53a9(0x2ad),_0x3c53a9(0x2c2)+_0x3c53a9(0x241)+'d',{'health':_0x3c53a9(0x2cf),'port':_0x44908f,'tokenPresent':!![]});try{await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x4032cc[_0x3c53a9(0x234)+'oot']))[_0x3c53a9(0x1a6)+'oot'],_0x3c53a9(0x20f),_0x3c53a9(0x282)),'stateDir':_0x494ede[_0x3c53a9(0x250)+_0x3c53a9(0x307)](),'listAgents':_0x31a124,'createAgent':_0x2e3f4b=>_0xd74f3[_0x3c53a9(0x2b1)](_0x3c53a9(0x200)+_0x3c53a9(0x291),_0x2e3f4b),'updateAgent':_0x33398c=>_0xd74f3[_0x3c53a9(0x2b1)](_0x3c53a9(0x1ed)+_0x3c53a9(0x208),_0x33398c),'syncSkills':async({agentIds:_0x559dbf,mainWorkspace:_0x48238d})=>{const _0x35bb0e=_0x3c53a9;_0x341b92?.[_0x35bb0e(0x2b8)]('bundled\x20'+_0x35bb0e(0x2f9)+_0x35bb0e(0x2bb)+_0x35bb0e(0x29d)+'d',{'agentIds':_0x559dbf,'mainWorkspace':toHomePath(_0x48238d)});const _0x35d6b3=dirname(_0x48238d),_0x330414=await syncBundledAgentSkillsToConfig({'agentIds':_0x559dbf,'resolveSkillsDir':_0xc0b9fd=>_0xc0b9fd===_0x35bb0e(0x1ca)?join(_0x48238d,_0x35bb0e(0x2f4)):join(_0x35d6b3,_0x35bb0e(0x238)+'e-'+_0xc0b9fd,_0x35bb0e(0x2f4)),'readConfig':()=>_0x494ede['readConf'+'ig'](),'writeConfig':_0x136fbd=>_0x494ede[_0x35bb0e(0x2a6)+'fig'](_0x136fbd),'markConfigWriteHandledInternally':()=>_0x494ede['markConf'+_0x35bb0e(0x1f4)+_0x35bb0e(0x1ef)+_0x35bb0e(0x19e)]()});_0x1e590=_0x330414[_0x35bb0e(0x205)+'y'],_0x341b92?.[_0x35bb0e(0x2b8)]('bundled\x20'+_0x35bb0e(0x2f9)+_0x35bb0e(0x2bb)+_0x35bb0e(0x243)+_0x35bb0e(0x1ba),{'agentCount':_0x559dbf['length'],'changed':_0x330414[_0x35bb0e(0x24e)],'discovery':summarizePayload(_0x330414[_0x35bb0e(0x205)+'y'],{'maxDepth':0x3})});}}),_0x341b92?.[_0x3c53a9(0x2b8)](_0x3c53a9(0x228)+_0x3c53a9(0x1a1)+_0x3c53a9(0x23c)),_0x596521(_0x3c53a9(0x1ac)+_0x3c53a9(0x1ea),{'reason':_0x3c53a9(0x2b4)+_0x3c53a9(0x313)+'eady'});}catch(_0x341a88){const _0x1dcc4a=_0x341a88 instanceof Error?_0x341a88['stack']||_0x341a88[_0x3c53a9(0x314)]:String(_0x341a88);_0x21f2f0(_0x3c53a9(0x246),_0x3c53a9(0x228)+'agents\x20s'+_0x3c53a9(0x287)+_0x3c53a9(0x217)+_0x1dcc4a),_0x341b92?.['error']('bundled\x20'+_0x3c53a9(0x2e4)+_0x3c53a9(0x287)+'ed',{'error':summarizeError(_0x341a88)}),console[_0x3c53a9(0x1d5)]('[wujie-s'+_0x3c53a9(0x2f3)+_0x3c53a9(0x1fd)+_0x3c53a9(0x22e)+'ents\x20syn'+'c\x20failed',_0x341a88);}},'onDisconnected':_0x334c04=>{const _0x42342c=_0x5253c3;_0x405074?.[_0x42342c(0x21d)](_0x42342c(0x2c2)+_0x42342c(0x23b)+_0x42342c(0x2a9)+_0x42342c(0x1d4),{'reason':_0x334c04}),_0x3a6ef6(_0x334c04);if(_0x1272d3||!_0x27158d)return;_0x2fb248({'health':_0x42342c(0x261),'message':'gateway\x20'+'reconnec'+_0x42342c(0x275)+_0x334c04});}});}async function _0x2393e9(_0xadebb2,_0xdcc41f){const _0x22e0c6=_0x433b67;if(_0x27158d)return;_0x5d0cb2=Date['now'](),_0x429804(_0x22e0c6(0x315),'gateway\x20'+'starting',{'health':_0x22e0c6(0x261),'port':_0xdcc41f,'tokenPresent':!![]});const _0x5ead71=['gateway',_0x22e0c6(0x29e),_0x22e0c6(0x28e)+_0x22e0c6(0x20d)+'ured',_0x22e0c6(0x31d),_0xadebb2,_0x22e0c6(0x2e2),String(_0xdcc41f)];_0x21f2f0('system',_0x22e0c6(0x20f)+_0x22e0c6(0x2a4)+_0x22e0c6(0x2ee)+'llow-unc'+_0x22e0c6(0x1a0)+_0x22e0c6(0x293)+_0x22e0c6(0x265)+'TED]\x20--p'+_0x22e0c6(0x2dd)+_0xdcc41f),_0x405074?.[_0x22e0c6(0x2b8)](_0x22e0c6(0x2c2)+'process\x20'+_0x22e0c6(0x232)+_0x22e0c6(0x2ba),{'args':[_0x22e0c6(0x309),_0x22e0c6(0x29e),_0x22e0c6(0x28e)+_0x22e0c6(0x20d)+_0x22e0c6(0x1c3),'--token',_0x22e0c6(0x1aa)+'D]',_0x22e0c6(0x2e2),String(_0xdcc41f)],'env':{'OPENCLAW_STATE_DIR':toHomePath(_0x494ede[_0x22e0c6(0x250)+'tateDir']()),'OPENCLAW_CONFIG_PATH':toHomePath(_0x494ede[_0x22e0c6(0x218)+'onfigPat'+'h']())}}),_0x27158d=await spawnClaw(_0x4032cc['projectR'+_0x22e0c6(0x2fa)],_0x5ead71,{'env':{'OPENCLAW_STATE_DIR':_0x494ede[_0x22e0c6(0x250)+_0x22e0c6(0x307)](),'OPENCLAW_CONFIG_PATH':_0x494ede[_0x22e0c6(0x218)+_0x22e0c6(0x227)+'h']()}}),_0x3b8985=_0xadebb2,_0x44908f=_0xdcc41f,_0x405074?.[_0x22e0c6(0x2b8)](_0x22e0c6(0x2c2)+_0x22e0c6(0x1a3)+'started',{'pid':_0x27158d[_0x22e0c6(0x28a)],'port':_0x44908f}),_0x2fb248({'health':'unknown','port':_0x44908f,'tokenPresent':!![],'message':_0x22e0c6(0x2c2)+_0x22e0c6(0x1a3)+_0x22e0c6(0x2ac)+_0x22e0c6(0x260)+_0x22e0c6(0x229)}),await _0x331b36(_0xadebb2,_0xdcc41f);const _0x5ada82=createLineBuffer({'trim':!![],'onLine':_0x4ed9b7=>_0x21f2f0(_0x22e0c6(0x28b),_0x4ed9b7)}),_0x36584d=createLineBuffer({'trim':!![],'onLine':_0x28ca45=>_0x21f2f0(_0x22e0c6(0x296),_0x28ca45)});_0x27158d[_0x22e0c6(0x28b)]['on'](_0x22e0c6(0x2a0),_0x55d0ba=>{_0x5ada82['push'](_0x55d0ba['toString']());}),_0x27158d[_0x22e0c6(0x296)]['on'](_0x22e0c6(0x2a0),_0x20c3a8=>{const _0x25682f=_0x22e0c6;_0x36584d['push'](_0x20c3a8[_0x25682f(0x251)]());}),_0x27158d['on']('error',_0x962cd6=>{const _0x253d07=_0x22e0c6;_0x405074?.[_0x253d07(0x1d5)]('gateway\x20'+_0x253d07(0x1a3)+_0x253d07(0x1d5),{'error':summarizeError(_0x962cd6)}),_0x21f2f0('stderr',_0x962cd6 instanceof Error?_0x962cd6[_0x253d07(0x1e9)]||_0x962cd6[_0x253d07(0x314)]:String(_0x962cd6));}),_0x27158d['on']('close',(_0x1ca44c,_0x53f096)=>{const _0x34ebb8=_0x22e0c6;_0x5ada82['flush'](),_0x36584d[_0x34ebb8(0x31e)](),_0x405074?.[_0x34ebb8(0x21d)](_0x34ebb8(0x2c2)+'process\x20'+'closed',{'pid':_0x27158d?.[_0x34ebb8(0x28a)]??null,'code':_0x1ca44c,'signal':_0x53f096,'uptimeMs':_0x5d0cb2?Date['now']()-_0x5d0cb2:undefined}),_0x21f2f0(_0x34ebb8(0x246),_0x34ebb8(0x2c2)+_0x34ebb8(0x1d2)+_0x34ebb8(0x26f)+(_0x1ca44c??'null')+_0x34ebb8(0x2b7)+(_0x53f096??_0x34ebb8(0x302))),_0x27158d=null,_0x3b8985=null,_0x44908f=null,_0xd74f3[_0x34ebb8(0x223)+'e'](null),_0x3a6ef6('gateway\x20'+_0x34ebb8(0x1a3)+_0x34ebb8(0x1c4));if(_0x1272d3){_0x429804('stopped',_0x34ebb8(0x2c2)+'stopped',{'health':_0x34ebb8(0x261),'port':null,'tokenPresent':![]});return;}_0x429804('error',_0x34ebb8(0x2c2)+_0x34ebb8(0x2fd)+_0x34ebb8(0x202)+'dly',{'health':_0x34ebb8(0x317)+'y','port':null,'tokenPresent':![]});});}async function _0x1dddb4(){const _0x212427=_0x433b67;if(_0x27158d)return;_0x1272d3=![],_0x405074?.[_0x212427(0x2b8)]('gateway\x20'+_0x212427(0x2b2)+'er\x20start'+'\x20request'+'ed'),await _0x485f5c[_0x212427(0x1c8)]()[_0x212427(0x20b)](_0xdb2f9=>{const _0x408f2b=_0x212427;_0x21f2f0(_0x408f2b(0x246),_0x408f2b(0x255)+_0x408f2b(0x258)+_0x408f2b(0x2c7)+_0x408f2b(0x1ee)+'led:\x20'+(_0xdb2f9 instanceof Error?_0xdb2f9[_0x408f2b(0x314)]:String(_0xdb2f9)));}),await _0x494ede[_0x212427(0x1e8)+_0x212427(0x303)+'fig'](),await ensureOpenClawDoctorFixed(_0x4032cc,{'runtimeLogger':_0x405074}),_0x494ede[_0x212427(0x257)+_0x212427(0x221)+'es'](),_0x494ede[_0x212427(0x209)+_0x212427(0x23a)+_0x212427(0x1f5)](_0x324afd=>{void _0x1583d7(_0x324afd);});const _0x29ad36=await _0x494ede['ensureGa'+_0x212427(0x1b6)+_0x212427(0x21c)]();_0x405074?.[_0x212427(0x2b8)](_0x212427(0x2c2)+_0x212427(0x1c1)+'\x20allocat'+'ed',{'port':_0x29ad36[_0x212427(0x1d9)],'tokenPresent':Boolean(_0x29ad36[_0x212427(0x1bc)])}),await _0x2393e9(_0x29ad36[_0x212427(0x1bc)],_0x29ad36[_0x212427(0x1d9)]);}async function _0x110207(){const _0x570574=_0x433b67;_0x1272d3=!![],_0x405074?.[_0x570574(0x2b8)](_0x570574(0x2c2)+_0x570574(0x2b2)+'er\x20stop\x20'+_0x570574(0x1d8)+'d',{'pid':_0x27158d?.[_0x570574(0x28a)]??null,'port':_0x44908f}),_0xd74f3[_0x570574(0x223)+'e'](null);if(_0x27158d){const _0x4ad94c=_0x27158d;_0x27158d=null;try{_0x4ad94c[_0x570574(0x289)](_0x570574(0x2a2));}catch{}await new Promise(_0x5736c0=>setTimeout(_0x5736c0,0x1f4));if(!_0x4ad94c['killed'])try{_0x4ad94c[_0x570574(0x289)]('SIGKILL');}catch{}}_0x3b8985=null,_0x44908f=null,_0x3a6ef6('gateway\x20'+_0x570574(0x1ff)),await _0x485f5c[_0x570574(0x1c7)](),_0x494ede[_0x570574(0x311)](),_0x429804(_0x570574(0x1ff),_0x570574(0x2c2)+_0x570574(0x1ff),{'health':_0x570574(0x261),'port':null,'tokenPresent':![]}),_0x1272d3=![];}async function _0x1583d7(_0x132934=_0x433b67(0x23f)+_0x433b67(0x2e1)){const _0x741e4c=_0x433b67;if(_0x2d9bbd)return{'ok':!![]};return _0x2d9bbd=!![],_0x405074?.['info'](_0x741e4c(0x2c2)+_0x741e4c(0x2f5)+'requeste'+'d',{'reason':_0x132934}),_0x347c1d=_0x347c1d[_0x741e4c(0x262)](async()=>{const _0x99b5ec=_0x741e4c;_0x429804('restarti'+'ng','gateway\x20'+_0x99b5ec(0x295)+'ng:\x20'+_0x132934,{'health':'unknown'}),await _0x110207(),await _0x1dddb4();})[_0x741e4c(0x297)](()=>{_0x2d9bbd=![];}),await _0x347c1d,{'ok':!![]};}async function _0x53b88e(){const _0x12760d=_0x433b67,_0x9b7ee=await loadRuntimeInfo(_0x4032cc[_0x12760d(0x234)+_0x12760d(0x2fa)]);return{'runtimeRoot':_0x9b7ee[_0x12760d(0x1a6)+_0x12760d(0x2fa)],'openclawVersion':_0x9b7ee[_0x12760d(0x20f)+_0x12760d(0x28c)],'openclawWorkingDir':_0x9b7ee['openclaw'+'WorkingD'+'ir'],'openclawBin':_0x9b7ee[_0x12760d(0x20f)+'Bin'],'plugins':_0x9b7ee[_0x12760d(0x1db)][_0x12760d(0x266)](_0x3e6dd1=>({'pluginId':_0x3e6dd1['pluginId'],'source':_0x3e6dd1[_0x12760d(0x301)],'version':_0x3e6dd1[_0x12760d(0x2a3)],'installPath':_0x3e6dd1[_0x12760d(0x2fc)+_0x12760d(0x1af)]})),'configPath':_0x494ede['resolveC'+_0x12760d(0x227)+'h'](),'stateDir':_0x494ede[_0x12760d(0x250)+_0x12760d(0x307)](),'bundledAgentSkillsDiscovery':_0x1e590};}async function _0x31a124(){const _0x19ec6e=_0x433b67;_0x341b92?.[_0x19ec6e(0x2b8)](_0x19ec6e(0x2cb)+_0x19ec6e(0x299)+_0x19ec6e(0x2b9));const _0x40dbcf=asRecord(await _0xd74f3[_0x19ec6e(0x2b1)]('agents.l'+_0x19ec6e(0x2c3),{})),_0x1b6d80=getTrimmedString(_0x40dbcf[_0x19ec6e(0x312)+'d'])||_0x19ec6e(0x1ca),_0x14aa34=Array[_0x19ec6e(0x2f8)](_0x40dbcf[_0x19ec6e(0x282)])?[..._0x40dbcf[_0x19ec6e(0x282)]]:[];return{..._0x40dbcf,'defaultId':_0x1b6d80,'agents':_0x14aa34};}async function _0x3c863c(){const _0x309b9a=_0x433b67;if(!_0x41febb())return{'defaultId':_0x309b9a(0x1ca),'mainKey':'','scope':'','pending':!![],'agents':[{'id':_0x309b9a(0x1ca),'name':_0x4032cc[_0x309b9a(0x23e)+_0x309b9a(0x2d0)],'workspace':join(_0x494ede[_0x309b9a(0x250)+'tateDir'](),_0x309b9a(0x238)+'e')}]};const _0x2674bc=await _0x31a124(),_0x30eb29=getTrimmedString(_0x2674bc[_0x309b9a(0x312)+'d'])||_0x309b9a(0x1ca),_0x361285=Array['isArray'](_0x2674bc[_0x309b9a(0x282)])?[..._0x2674bc[_0x309b9a(0x282)]]:[];return!_0x361285[_0x309b9a(0x2aa)](_0x28d207=>asRecord(_0x28d207)['id']==='main')&&_0x361285[_0x309b9a(0x1d6)]({'id':_0x309b9a(0x1ca),'name':_0x4032cc[_0x309b9a(0x23e)+_0x309b9a(0x2d0)],'workspace':join(_0x494ede[_0x309b9a(0x250)+'tateDir'](),_0x309b9a(0x238)+'e')}),{..._0x2674bc,'defaultId':_0x30eb29,'agents':_0x361285};}async function _0x4c49d0(_0x5525a6={}){const _0x151c88=_0x433b67;_0x3ec389();const _0x202384=Date['now']();_0x39acfb?.['info'](_0x151c88(0x254)+_0x151c88(0x1fb)+'equested',{'payload':summarizePayload(_0x5525a6)});const _0x10e5cd=await _0xd74f3[_0x151c88(0x2b1)](_0x151c88(0x1c0)+_0x151c88(0x28d),buildSessionCreateRequestPayload(_0x5525a6)),_0x389649=parseSessionCreateResult(_0x10e5cd);return _0x39acfb?.[_0x151c88(0x2b8)](_0x151c88(0x254)+_0x151c88(0x1da)+_0x151c88(0x2da),{'key':_0x389649[_0x151c88(0x1f9)],'sessionId':_0x389649[_0x151c88(0x278)+'d'],'durationMs':Date[_0x151c88(0x2bc)]()-_0x202384}),_0x389649;}async function _0x55e8e4(_0x1987a5={}){const _0x56e82e=_0x433b67,_0x124270=await readSessionMetadata(_0x494ede['resolveS'+_0x56e82e(0x307)]());if(!_0x41febb())return{'pending':!![],'sessions':[],'pinnedKeys':_0x124270[_0x56e82e(0x1b4)+'ys']};const _0x5b7fd8=Date[_0x56e82e(0x2bc)](),_0xbfd2b=Math[_0x56e82e(0x24f)](0x1,Math['floor'](Number(_0x1987a5[_0x56e82e(0x2d2)])||0x64)),_0x2477da={'limit':_0xbfd2b,'includeGlobal':!![],'includeUnknown':![]},_0x25c996=getTrimmedString(_0x1987a5[_0x56e82e(0x29c)]??'main');if(_0x25c996)_0x2477da[_0x56e82e(0x29c)]=_0x25c996;const _0x3f81fe=applySessionMetadata(await _0xd74f3[_0x56e82e(0x2b1)](_0x56e82e(0x1c0)+_0x56e82e(0x2bd),_0x2477da),_0x124270);return _0x39acfb?.[_0x56e82e(0x2b8)](_0x56e82e(0x1c0)+'\x20list\x20co'+_0x56e82e(0x2c0),{'payload':_0x2477da,'count':Array[_0x56e82e(0x2f8)](_0x3f81fe[_0x56e82e(0x1c0)])?_0x3f81fe['sessions'][_0x56e82e(0x1ce)]:0x0,'durationMs':Date['now']()-_0x5b7fd8}),_0x3f81fe;}async function _0x236b32(_0x17739c={}){const _0x48a9ed=_0x433b67;_0x3ec389();const _0x22070f=getTrimmedString(_0x17739c[_0x48a9ed(0x219)+'ey']??_0x17739c[_0x48a9ed(0x1f9)]);if(!_0x22070f)throw new Error(_0x48a9ed(0x219)+'ey\x20is\x20re'+_0x48a9ed(0x2ef));const _0x2779d4=Date[_0x48a9ed(0x2bc)](),_0x319954=await _0xd74f3[_0x48a9ed(0x2b1)](_0x48a9ed(0x1c0)+_0x48a9ed(0x263),{'key':_0x22070f,'deleteTranscript':_0x17739c[_0x48a9ed(0x290)+_0x48a9ed(0x269)]!==![],'emitLifecycleHooks':!![]}),_0x52e075=await readSessionMetadata(_0x494ede[_0x48a9ed(0x250)+_0x48a9ed(0x307)]());return delete _0x52e075[_0x48a9ed(0x30e)][_0x22070f],_0x52e075[_0x48a9ed(0x1b4)+'ys']=_0x52e075[_0x48a9ed(0x1b4)+'ys']['filter'](_0x14d54b=>_0x14d54b!==_0x22070f),await writeSessionMetadata(_0x494ede[_0x48a9ed(0x250)+_0x48a9ed(0x307)](),_0x52e075),_0x596521(_0x48a9ed(0x1cb)+'updated',{'type':'deleted','sessionKey':_0x22070f}),_0x39acfb?.[_0x48a9ed(0x2b8)](_0x48a9ed(0x254)+_0x48a9ed(0x268)+_0x48a9ed(0x2da),{'sessionKey':_0x22070f,'deleteTranscript':_0x17739c[_0x48a9ed(0x290)+_0x48a9ed(0x269)]!==![],'durationMs':Date[_0x48a9ed(0x2bc)]()-_0x2779d4}),_0x319954;}async function _0x51599d(_0x58c0d9={}){const _0x5e9771=_0x433b67,_0x5c87bd=getTrimmedString(_0x58c0d9['sessionK'+'ey']??_0x58c0d9[_0x5e9771(0x1f9)]);if(!_0x5c87bd)throw new Error(_0x5e9771(0x219)+_0x5e9771(0x213)+_0x5e9771(0x2ef));const _0x3e25c2=getTrimmedString(_0x58c0d9[_0x5e9771(0x26c)]??_0x58c0d9['label']??_0x58c0d9[_0x5e9771(0x272)]),_0x3c75a9=await readSessionMetadata(_0x494ede['resolveS'+_0x5e9771(0x307)]());if(_0x3e25c2)_0x3c75a9['names'][_0x5c87bd]=_0x3e25c2;else delete _0x3c75a9[_0x5e9771(0x30e)][_0x5c87bd];return await writeSessionMetadata(_0x494ede[_0x5e9771(0x250)+_0x5e9771(0x307)](),_0x3c75a9),_0x596521(_0x5e9771(0x1cb)+_0x5e9771(0x2b0),{'type':_0x5e9771(0x308),'sessionKey':_0x5c87bd,'name':_0x3e25c2}),_0x39acfb?.[_0x5e9771(0x2b8)](_0x5e9771(0x254)+'rename\x20c'+_0x5e9771(0x2da),{'sessionKey':_0x5c87bd,'hasName':Boolean(_0x3e25c2),'name':_0x3e25c2?summarizeText(_0x3e25c2,0x50):undefined}),{'ok':!![]};}async function _0x5a67b2(){const _0x7f4f3=await readSessionMetadata(_0x494ede['resolveS'+'tateDir']());return _0x7f4f3['pinnedKe'+'ys'];}async function _0x21cd90(_0x81a76b=[]){const _0x5db5d0=_0x433b67,_0xda8cf1=await readSessionMetadata(_0x494ede[_0x5db5d0(0x250)+_0x5db5d0(0x307)]());return _0xda8cf1[_0x5db5d0(0x1b4)+'ys']=Array['isArray'](_0x81a76b)?[...new Set(_0x81a76b[_0x5db5d0(0x266)](getTrimmedString)[_0x5db5d0(0x2e6)](Boolean))]:[],await writeSessionMetadata(_0x494ede[_0x5db5d0(0x250)+_0x5db5d0(0x307)](),_0xda8cf1),_0x596521(_0x5db5d0(0x1cb)+'updated',{'type':'pinned-k'+_0x5db5d0(0x1b7)+_0x5db5d0(0x1ba),'pinnedKeys':_0xda8cf1['pinnedKe'+'ys']}),_0x39acfb?.[_0x5db5d0(0x2b8)]('session\x20'+_0x5db5d0(0x288)+_0x5db5d0(0x2b6)+_0x5db5d0(0x1ba),{'count':_0xda8cf1[_0x5db5d0(0x1b4)+'ys'][_0x5db5d0(0x1ce)]}),{'ok':!![],'pinnedKeys':_0xda8cf1['pinnedKe'+'ys']};}async function _0x18006f(){const _0x1b3559=_0x433b67,_0x221f46=join(_0x494ede[_0x1b3559(0x250)+_0x1b3559(0x307)](),'workspac'+'e');return{'path':_0x221f46,'exists':Boolean(await stat(_0x221f46)[_0x1b3559(0x20b)](()=>null))};}async function _0x2d9168(){const _0x552792=_0x433b67;return readSharedContext(join(_0x494ede[_0x552792(0x250)+_0x552792(0x307)](),_0x552792(0x238)+'e'));}async function _0x46cbc6(_0x4f622a={}){const _0x2475e9=_0x433b67;return _0x341b92?.['info'](_0x2475e9(0x238)+'e\x20shared'+_0x2475e9(0x1f2)+_0x2475e9(0x210)+'equested',{'files':Object['keys'](sanitizeSharedContextPayload(_0x4f622a))}),writeSharedContext(join(_0x494ede[_0x2475e9(0x250)+_0x2475e9(0x307)](),_0x2475e9(0x238)+'e'),_0x4f622a);}async function _0xc80d9c(_0x149b82={}){const _0x4adf81=_0x433b67;return _0x3ec389(),await _0xd74f3[_0x4adf81(0x2b1)](_0x4adf81(0x237)+'t',_0x149b82);}async function _0x88c473(_0xc712a1={}){const _0x32beab=_0x433b67;return _0x3ec389(),await _0xd74f3[_0x32beab(0x2b1)](_0x32beab(0x1fe),_0xc712a1);}async function _0x1026d7(_0x49bf4e={}){const _0x1d32e3=_0x433b67;_0x3ec389();const _0x3a3d1b=getTrimmedString(_0x49bf4e[_0x1d32e3(0x1bf)]??_0x49bf4e['id']);if(!_0x3a3d1b)throw new Error(_0x1d32e3(0x1a8)+'\x20require'+'d');const _0x5672c7=asRecord(_0x49bf4e[_0x1d32e3(0x1cc)]),_0x35bfdf=Object['keys'](_0x5672c7)[_0x1d32e3(0x1ce)]>0x0?_0x5672c7:{..._0x49bf4e};return delete _0x35bfdf[_0x1d32e3(0x1bf)],delete _0x35bfdf['id'],await _0xd74f3[_0x1d32e3(0x2b1)](_0x1d32e3(0x294)+_0x1d32e3(0x1fa),{'jobId':_0x3a3d1b,'patch':_0x35bfdf});}async function _0x1e5f56(_0x413f3f={}){const _0x12c757=_0x433b67;_0x3ec389();const _0x5826a8=getTrimmedString(_0x413f3f[_0x12c757(0x1bf)]??_0x413f3f['id']);if(!_0x5826a8)throw new Error(_0x12c757(0x1a8)+_0x12c757(0x20c)+'d');return await _0xd74f3[_0x12c757(0x2b1)](_0x12c757(0x2fb)+_0x12c757(0x1e3),{'jobId':_0x5826a8});}async function _0x4531ad(_0x3c4130={}){const _0x4e1a46=_0x433b67;_0x3ec389();const _0x3ff848=getTrimmedString(_0x3c4130[_0x4e1a46(0x1bf)]??_0x3c4130['id']);if(!_0x3ff848)throw new Error(_0x4e1a46(0x1a8)+_0x4e1a46(0x20c)+'d');return await _0xd74f3[_0x4e1a46(0x2b1)]('cron.run',{'jobId':_0x3ff848});}async function _0x57c377(_0x34cb06={}){const _0x13dfa6=_0x433b67;return _0x3ec389(),await _0xd74f3[_0x13dfa6(0x2b1)](_0x13dfa6(0x212)+'s',_0x34cb06);}async function _0x5c4a7b(_0x805152={}){const _0x283731=_0x433b67;_0x3ec389();const _0x356e1c=Date[_0x283731(0x2bc)]();_0x341b92?.[_0x283731(0x2b8)](_0x283731(0x1e1)+'stall\x20re'+_0x283731(0x2ba),{'payload':summarizePayload(_0x805152)});try{const _0x489cab=await _0xd74f3['request'](_0x283731(0x1a7)+_0x283731(0x19c),_0x805152);return _0x341b92?.['info'](_0x283731(0x1e1)+_0x283731(0x2d8)+_0x283731(0x2c0),{'durationMs':Date['now']()-_0x356e1c,'result':summarizePayload(_0x489cab,{'maxDepth':0x2})}),_0x489cab;}catch(_0x102c68){_0x341b92?.[_0x283731(0x1d5)](_0x283731(0x1e1)+_0x283731(0x207)+_0x283731(0x1c2),{'durationMs':Date[_0x283731(0x2bc)]()-_0x356e1c,'error':summarizeError(_0x102c68)});throw _0x102c68;}}async function _0xc6d5e3(_0x4230a7={}){const _0x3e783f=_0x433b67;return _0x3ec389(),_0x341b92?.['info'](_0x3e783f(0x24d)+_0x3e783f(0x284)+_0x3e783f(0x292),{'payload':summarizePayload(_0x4230a7)}),await _0xd74f3[_0x3e783f(0x2b1)](_0x3e783f(0x31b)+_0x3e783f(0x208),_0x4230a7);}async function _0x207c36(_0x54344c={}){const _0x3a52f1=_0x433b67;return _0x3ec389(),_0x341b92?.[_0x3a52f1(0x2b8)](_0x3a52f1(0x306)+_0x3a52f1(0x220)+_0x3a52f1(0x292),{'payload':summarizePayload(_0x54344c)}),await _0xd74f3[_0x3a52f1(0x2b1)](_0x3a52f1(0x1b3)+_0x3a52f1(0x2ec),_0x54344c);}async function _0x352969(_0x7e871d={}){const _0x299148=_0x433b67;_0x3ec389();const _0x258ee5=getTrimmedString(_0x7e871d[_0x299148(0x219)+'ey']),_0x38a799=getTrimmedString(_0x7e871d[_0x299148(0x314)]),_0x127a86=getTrimmedString(_0x7e871d[_0x299148(0x236)+'d'])||randomUUID();if(!_0x258ee5)throw new Error(_0x299148(0x219)+_0x299148(0x213)+_0x299148(0x2ef));if(!_0x38a799)throw new Error(_0x299148(0x271)+_0x299148(0x1c5)+_0x299148(0x1f1));const _0x5adca4=Date[_0x299148(0x2bc)]();_0x574ce4?.[_0x299148(0x2b8)](_0x299148(0x23d)+_0x299148(0x2ce)+_0x299148(0x2b9),{'requestId':_0x127a86,'sessionKey':_0x258ee5,'message':summarizeText(_0x38a799),'filePaths':summarizeFilePaths(_0x7e871d[_0x299148(0x1dd)+'s'])}),_0xadb211({'requestId':_0x127a86,'sessionKey':_0x258ee5,'type':_0x299148(0x1c9)}),_0x46cf46[_0x299148(0x285)](_0x127a86,{'runId':_0x127a86,'requestId':_0x127a86,'sessionKey':_0x258ee5,'textLength':0x0,'startedAt':_0x5adca4}),_0x29cbde[_0x299148(0x285)](_0x258ee5,_0x127a86);try{const _0x5083ab=await buildAttachments(Array[_0x299148(0x2f8)](_0x7e871d[_0x299148(0x1dd)+'s'])?_0x7e871d['filePath'+'s']:[]);_0x574ce4?.[_0x299148(0x2b8)](_0x299148(0x25d)+_0x299148(0x1d1)+_0x299148(0x201)+'d',{'requestId':_0x127a86,'sessionKey':_0x258ee5,'attachmentCount':_0x5083ab[_0x299148(0x1ce)],'attachments':_0x5083ab[_0x299148(0x266)](_0x5822b9=>({'type':_0x5822b9['type'],'mimeType':_0x5822b9[_0x299148(0x2ff)],'fileName':_0x5822b9[_0x299148(0x222)],'contentLength':_0x5822b9[_0x299148(0x2f7)][_0x299148(0x1ce)]}))});const _0xf3ff69=asRecord(await _0xd74f3['request'](_0x299148(0x25a)+'d',{'sessionKey':_0x258ee5,'message':_0x38a799,'deliver':![],'idempotencyKey':_0x127a86,..._0x5083ab[_0x299148(0x1ce)]>0x0?{'attachments':_0x5083ab}:{}})),_0xfe7ed8=getTrimmedString(_0xf3ff69[_0x299148(0x245)])||_0x127a86,_0x1330c1=_0x46cf46[_0x299148(0x2f0)](_0x127a86);if(!_0x1330c1)return{'ok':!![],'requestId':_0x127a86,'runId':_0xfe7ed8};return _0xfe7ed8!==_0x1330c1[_0x299148(0x245)]&&(_0x46cf46[_0x299148(0x2a7)](_0x1330c1[_0x299148(0x245)]),_0x1330c1[_0x299148(0x245)]=_0xfe7ed8,_0x46cf46['set'](_0xfe7ed8,_0x1330c1)),_0x29cbde[_0x299148(0x285)](_0x258ee5,_0xfe7ed8),_0x574ce4?.[_0x299148(0x2b8)](_0x299148(0x23d)+'eam\x20acce'+_0x299148(0x2b3)+'gateway',{'requestId':_0x127a86,'runId':_0xfe7ed8,'sessionKey':_0x258ee5,'durationMs':Date[_0x299148(0x2bc)]()-_0x5adca4,'status':_0xf3ff69[_0x299148(0x1e6)]}),_0xf3ff69['status']===_0x299148(0x1d5)&&_0x3d2c3d(_0x1330c1,'error',getTrimmedString(_0xf3ff69[_0x299148(0x2cd)+_0x299148(0x25e)])||_0x299148(0x2c2)+_0x299148(0x24c)+_0x299148(0x2f1)),{'ok':!![],'requestId':_0x127a86,'runId':_0xfe7ed8,'response':_0xf3ff69};}catch(_0x363198){const _0x1cedae=_0x1082e6(_0x127a86),_0x3d1fc5=_0x363198 instanceof Error?_0x363198[_0x299148(0x314)]:String(_0x363198);_0x574ce4?.[_0x299148(0x1d5)]('chat\x20str'+_0x299148(0x22b)+'ed',{'requestId':_0x127a86,'sessionKey':_0x258ee5,'durationMs':Date['now']()-_0x5adca4,'error':summarizeError(_0x363198)});if(_0x1cedae)_0x3d2c3d(_0x1cedae,_0x299148(0x1d5),_0x3d1fc5);else _0xadb211({'requestId':_0x127a86,'sessionKey':_0x258ee5,'type':_0x299148(0x1d5),'message':_0x3d1fc5});throw _0x363198;}}async function _0x380190(_0x35beab={}){const _0x1fe2b8=_0x433b67;_0x3ec389();const _0x29ddd2=getTrimmedString(_0x35beab[_0x1fe2b8(0x219)+'ey']);if(!_0x29ddd2)throw new Error(_0x1fe2b8(0x219)+_0x1fe2b8(0x213)+_0x1fe2b8(0x2ef));const _0x4bd351=Date[_0x1fe2b8(0x2bc)](),_0x17cb4c=_0x1082e6(getTrimmedString(_0x35beab[_0x1fe2b8(0x236)+'d']))??_0x4b447e(_0x29ddd2),_0x121e87=_0x29cbde[_0x1fe2b8(0x2f0)](_0x29ddd2),_0xb04312={'sessionKey':_0x29ddd2};if(_0x17cb4c?.[_0x1fe2b8(0x245)])_0xb04312[_0x1fe2b8(0x245)]=_0x17cb4c['runId'];else{if(_0x121e87)_0xb04312[_0x1fe2b8(0x245)]=_0x121e87;}const _0x15a409=await _0xd74f3[_0x1fe2b8(0x2b1)](_0x1fe2b8(0x2ea)+'rt',_0xb04312);if(_0x17cb4c)_0x3d2c3d(_0x17cb4c,'done');return _0x574ce4?.[_0x1fe2b8(0x2b8)](_0x1fe2b8(0x298)+_0x1fe2b8(0x270)+_0x1fe2b8(0x1b0),{'sessionKey':_0x29ddd2,'requestId':getTrimmedString(_0x35beab[_0x1fe2b8(0x236)+'d']),'runId':_0xb04312[_0x1fe2b8(0x245)],'durationMs':Date[_0x1fe2b8(0x2bc)]()-_0x4bd351}),_0x15a409;}async function _0x5b8021(_0x5f023={}){const _0x1edd89=_0x433b67;_0x3ec389();const _0x1fddd9=getTrimmedString(_0x5f023[_0x1edd89(0x219)+'ey']);if(!_0x1fddd9)throw new Error(_0x1edd89(0x219)+_0x1edd89(0x213)+'quired');const _0xcc5d4e=await _0xd74f3[_0x1edd89(0x2b1)](_0x1edd89(0x2af)+_0x1edd89(0x2dc),{'sessionKey':_0x1fddd9,'limit':Math['max'](0x1,Math[_0x1edd89(0x2f2)](Number(_0x5f023[_0x1edd89(0x2d2)])||0xc8))});return _0x574ce4?.[_0x1edd89(0x2b8)](_0x1edd89(0x1a5)+_0x1edd89(0x1a4)+_0x1edd89(0x2e8),{'sessionKey':_0x1fddd9,'limit':Math[_0x1edd89(0x24f)](0x1,Math[_0x1edd89(0x2f2)](Number(_0x5f023[_0x1edd89(0x2d2)])||0xc8)),'result':summarizePayload(_0xcc5d4e,{'maxDepth':0x2})}),_0xcc5d4e;}async function _0xfa5477(_0x435e7f=''){const _0x218cb0=_0x433b67;if(!_0x41febb())return{'pending':!![],'skills':[]};const _0x38fb64=getTrimmedString(_0x435e7f),_0x5e84b0=await _0xd74f3[_0x218cb0(0x2b1)](_0x218cb0(0x30b)+_0x218cb0(0x235),_0x38fb64?{'agentId':_0x38fb64}:{}),_0x2ccf50=await _0x494ede[_0x218cb0(0x2d1)+'ig']()[_0x218cb0(0x20b)](()=>({})),_0x24d8db=filterSkillsForAgent(_0x5e84b0,_0x2ccf50,_0x38fb64);return _0x341b92?.[_0x218cb0(0x2b8)]('skills\x20s'+_0x218cb0(0x239)+_0x218cb0(0x1e0),{'agentId':_0x38fb64||_0x218cb0(0x1d0),'result':summarizePayload(_0x24d8db,{'maxDepth':0x2})}),_0x24d8db;}return{'on':_0x215313,'start':_0x1dddb4,'stop':_0x110207,'restart':_0x1583d7,'runtimeInfo':_0x53b88e,'getStatus':()=>_0x3dec43,'getRecentLogs':_0xdd6667,'answerAskUserQuestion':_0x39a0f8=>_0x485f5c['answer'](_0x39a0f8),'agents':{'list':_0x3c863c},'skills':{'status':_0xfa5477,'install':_0x5c4a7b,'update':_0xc6d5e3,'delete':_0x207c36},'sessions':{'create':_0x4c49d0,'list':_0x55e8e4,'delete':_0x236b32,'rename':_0x51599d,'pinnedKeys':_0x5a67b2,'setPinnedKeys':_0x21cd90},'workspace':{'directoryInfo':_0x18006f,'sharedContext':_0x2d9168,'writeSharedContext':_0x46cbc6},'cron':{'list':_0xc80d9c,'create':_0x88c473,'update':_0x1026d7,'remove':_0x1e5f56,'runOnce':_0x4531ad,'logs':_0x57c377},'models':{'settings':()=>_0x494ede[_0x433b67(0x2e7)+_0x433b67(0x1ae)](),'setSettings':async(_0x12a1d9={})=>{const _0x545d1c=_0x433b67,_0x56a7e2=_0x12a1d9?.['restartO'+_0x545d1c(0x22a)]!==![];return await _0x494ede[_0x545d1c(0x2e9)+_0x545d1c(0x1ae)](_0x12a1d9,{'restartOnChange':_0x56a7e2}),_0x494ede[_0x545d1c(0x2e7)+_0x545d1c(0x1ae)]();},'setSelfOperatedModels':_0x5b52c9=>_0x494ede['setSelfO'+_0x433b67(0x30d)+_0x433b67(0x20a)](_0x5b52c9),'selectedModelId':async()=>{const _0x11d013=_0x433b67,_0x1300c9=await _0x494ede[_0x11d013(0x2e7)+'Settings']();return _0x1300c9[_0x11d013(0x1cf)]&&_0x1300c9['modelNam'+'e']?_0x1300c9[_0x11d013(0x1cf)]+'/'+_0x1300c9[_0x11d013(0x2c6)+'e']:'';},'customModels':async()=>[]},'config':{'read':()=>_0x494ede[_0x433b67(0x2d1)+'ig']()},'chat':{'stream':_0x352969,'abort':_0x380190,'history':_0x5b8021}};}
|
package/dist/src/gateway-ws.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x27d58d=_0x2c58;(function(_0x39228e,_0x13a89d){const _0x2f02f3=_0x2c58,_0x4e1de3=_0x39228e();while(!![]){try{const _0x245575=parseInt(_0x2f02f3(0x1d6))/0x1*(-parseInt(_0x2f02f3(0x1f6))/0x2)+-parseInt(_0x2f02f3(0x1c0))/0x3+-parseInt(_0x2f02f3(0x1b2))/0x4+parseInt(_0x2f02f3(0x1b6))/0x5+parseInt(_0x2f02f3(0x19a))/0x6*(parseInt(_0x2f02f3(0x185))/0x7)+parseInt(_0x2f02f3(0x1eb))/0x8+-parseInt(_0x2f02f3(0x1e0))/0x9;if(_0x245575===_0x13a89d)break;else _0x4e1de3['push'](_0x4e1de3['shift']());}catch(_0x3377cd){_0x4e1de3['push'](_0x4e1de3['shift']());}}}(_0x6a36,0xc7804));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 _0x1cc090 from'ws';const ED25519_SPKI_PREFIX=Buffer[_0x27d58d(0x1cc)](_0x27d58d(0x18a)+_0x27d58d(0x169)+_0x27d58d(0x1e9),_0x27d58d(0x1a3)),BASE64_PADDING_REGEX=/=+$/g,UPPERCASE_ASCII_REGEX=/[A-Z]/g;function isRecord(_0x951c40){const _0x152aad=_0x27d58d;return Boolean(_0x951c40)&&typeof _0x951c40===_0x152aad(0x19c)&&!Array[_0x152aad(0x16f)](_0x951c40);}function formatUnknownError(_0x5195fe){if(_0x5195fe instanceof Error)return _0x5195fe['message'];return String(_0x5195fe??'');}function isLocalGatewayConnRefused(_0x15768f){const _0x1542bd=_0x27d58d,_0x5032a0=formatUnknownError(_0x15768f);return/\bECONNREFUSED\b/i[_0x1542bd(0x190)](_0x5032a0)&&/127\.0\.0\.1:\d+/['test'](_0x5032a0);}function base64UrlEncode(_0x44e6a0){const _0xff3d99=_0x27d58d;return _0x44e6a0[_0xff3d99(0x1c4)](_0xff3d99(0x1f1))['replaceA'+'ll']('+','-')[_0xff3d99(0x202)+'ll']('/','_')['replace'](BASE64_PADDING_REGEX,'');}function derivePublicKeyRaw(_0x3b0773){const _0x377020=_0x27d58d,_0xbd6514=createPublicKey(_0x3b0773)[_0x377020(0x1d1)]({'type':'spki','format':_0x377020(0x151)}),_0x3f9f84=Buffer['isBuffer'](_0xbd6514)?_0xbd6514:Buffer[_0x377020(0x1cc)](_0xbd6514),_0x4d0b1f=_0x3f9f84[_0x377020(0x14c)]===ED25519_SPKI_PREFIX['length']+0x20&&_0x3f9f84[_0x377020(0x1c5)](0x0,ED25519_SPKI_PREFIX[_0x377020(0x14c)])['equals'](ED25519_SPKI_PREFIX);return _0x4d0b1f?_0x3f9f84[_0x377020(0x1c5)](ED25519_SPKI_PREFIX[_0x377020(0x14c)]):_0x3f9f84;}function fingerprintPublicKey(_0x584bc2){const _0x1dea05=_0x27d58d;return createHash(_0x1dea05(0x1c2))[_0x1dea05(0x1e5)](derivePublicKeyRaw(_0x584bc2))[_0x1dea05(0x1ab)]('hex');}function publicKeyRawBase64UrlFromPem(_0x1da6f1){return base64UrlEncode(derivePublicKeyRaw(_0x1da6f1));}function signDevicePayload(_0x27da24,_0x2d69d7){const _0x358813=_0x27d58d,_0x4e5f94=createPrivateKey(_0x27da24);return base64UrlEncode(sign(null,Buffer[_0x358813(0x1cc)](_0x2d69d7,'utf8'),_0x4e5f94));}function normalizeDeviceMetadataForAuth(_0x2dd631){const _0x12a6f8=_0x27d58d,_0x18e26c=typeof _0x2dd631==='string'?_0x2dd631[_0x12a6f8(0x17a)]():'';if(!_0x18e26c)return'';return _0x18e26c['replace'](UPPERCASE_ASCII_REGEX,_0x252f11=>String[_0x12a6f8(0x1fc)+'Code'](_0x252f11[_0x12a6f8(0x1e8)+'At'](0x0)+0x20));}function buildDeviceAuthPayloadV3(_0x68b8db){const _0x451943=_0x27d58d;return['v3',_0x68b8db[_0x451943(0x1dc)],_0x68b8db[_0x451943(0x1f3)],_0x68b8db[_0x451943(0x175)+'de'],_0x68b8db['role'],_0x68b8db[_0x451943(0x154)]['join'](','),String(_0x68b8db[_0x451943(0x168)+'Ms']),_0x68b8db[_0x451943(0x1de)]??'',_0x68b8db[_0x451943(0x152)],normalizeDeviceMetadataForAuth(_0x68b8db[_0x451943(0x1a5)]),normalizeDeviceMetadataForAuth(_0x68b8db[_0x451943(0x159)+_0x451943(0x18c)])][_0x451943(0x1bf)]('|');}function writeIdentityFile(_0x4a8e79,_0x199e89,_0x3f7294){mkdirSync(dirname(_0x4a8e79),{'recursive':!![]}),writeFileSync(_0x4a8e79,JSON['stringif'+'y']({'version':0x1,..._0x199e89,'createdAtMs':_0x3f7294},null,0x2)+'\x0a',{'mode':0x180});try{chmodSync(_0x4a8e79,0x180);}catch{}}function generateDeviceIdentity(){const _0xee9bbe=_0x27d58d,{publicKey:_0xd77365,privateKey:_0x433ce8}=generateKeyPairSync(_0xee9bbe(0x1b1)),_0x68b636=_0xd77365[_0xee9bbe(0x1d1)]({'type':'spki','format':_0xee9bbe(0x160)})[_0xee9bbe(0x1c4)](),_0x14f372=_0x433ce8[_0xee9bbe(0x1d1)]({'type':'pkcs8','format':_0xee9bbe(0x160)})[_0xee9bbe(0x1c4)]();return{'deviceId':fingerprintPublicKey(_0x68b636),'publicKeyPem':_0x68b636,'privateKeyPem':_0x14f372};}function loadOrCreateDeviceIdentity(_0x1aa680){const _0x260fbe=_0x27d58d;if(existsSync(_0x1aa680))try{const _0x67a4a7=JSON[_0x260fbe(0x17f)](readFileSync(_0x1aa680,'utf8')),_0x52c468=typeof _0x67a4a7?.[_0x260fbe(0x16b)+_0x260fbe(0x18e)]==='string'?_0x67a4a7[_0x260fbe(0x16b)+'yPem']:'',_0x7ae7e=typeof _0x67a4a7?.['privateK'+_0x260fbe(0x182)]===_0x260fbe(0x153)?_0x67a4a7['privateK'+_0x260fbe(0x182)]:'';if(_0x52c468&&_0x7ae7e){const _0x46b62d={'deviceId':fingerprintPublicKey(_0x52c468),'publicKeyPem':_0x52c468,'privateKeyPem':_0x7ae7e};return _0x67a4a7?.[_0x260fbe(0x1dc)]!==_0x46b62d[_0x260fbe(0x1dc)]&&writeIdentityFile(_0x1aa680,_0x46b62d,Date['now']()),_0x46b62d;}}catch{}const _0x25f0f8=generateDeviceIdentity();return writeIdentityFile(_0x1aa680,_0x25f0f8,Date['now']()),_0x25f0f8;}function _0x6a36(){const _0x5768aa=['set','export','get','gateway\x20','ect','readyWai','408489ilUfwi','ell/','ters','nectChal','hake\x20tim','chat','deviceId','timed\x20ou','token','rsion','6124995HsqamF','sendConn','waitUnti','t\x20restar','ent','update','lListene','clientDi','charCode','70032100','WS\x20error','9342976NPYBds','tTimer','handleDi','reject','sing\x20non','timeoutM','base64','sconnect','clientId','.write','DateTime','2tFqfIf','WS\x20disco','WS\x20close','nected','初始化\x20gate','clearTim','fromChar','entity','failed:\x20','type','ting','OPEN','replaceA','request','WS\x20hands','ssage','length','send','handleMe','Options','hallenge','der','nonce','string','scopes','way\x20设备身份','t:\x20','connect','connect\x20','deviceFa','WS\x20is\x20no','clientVe','restart','.read','privateK','agent','pem','operator','t\x20config','wujie-sh','onConnec','splayNam','expectFi','pending','signedAt','06032b65','status','publicKe','stringif','delete','close','isArray','payload','Format','ction\x20ti','url','removeAl','clientMo','connectC','med\x20out','event','lReady','trim','failed','d\x20(','ble','skipRead','parse','res','\x20yet','eyPem','eadyWait','challeng','5278rWRLwW','resolve','stop','WS\x20conne','clientDe','302a3005','yCheck','mily','onAgentE','yPem','error','test','viceFami','request\x20','rejectRe','timeout','dentity\x20','reconnec','config','g\x20nonce','adyWaite','2514IvUWAL','.approva','object','ed\x20out','ted','connecte','queueCon','shouldRe','connectN','hex','Timer','platform','e\x20missin','device\x20i','tBackoff','failed\x20t','vent','digest','resolveR','rejectPe','accepted','now','nding','ed25519','93160CtiaQu','method','lengeTim','ured','4791060zfNTmC','ers','configur','WS\x20clien','ateway\x20r','Path','o\x20send\x20g','push','equest','join','1537560jiKJTN','o\x20load\x20g','sha256','t\x20stoppe','toString','subarray','identity','hake\x20mis','code=','once','message','readySta','from','onDiscon','connectS','nnected'];_0x6a36=function(){return _0x5768aa;};return _0x6a36();}function _0x2c58(_0xd8cb2f,_0x585e85){_0xd8cb2f=_0xd8cb2f-0x14b;const _0x6a36e1=_0x6a36();let _0x2c58ec=_0x6a36e1[_0xd8cb2f];return _0x2c58ec;}export class ClawGatewayWsClient{['ws']=null;['config']=null;[_0x27d58d(0x167)]=new Map();[_0x27d58d(0x1d5)+'ters']=[];[_0x27d58d(0x1a1)+_0x27d58d(0x157)]=![];[_0x27d58d(0x196)+_0x27d58d(0x1ec)]=null;[_0x27d58d(0x176)+_0x27d58d(0x150)+_0x27d58d(0x1a4)]=null;[_0x27d58d(0x1a2)+'once']=null;[_0x27d58d(0x1ce)+'ent']=![];['connecte'+'d']=![];[_0x27d58d(0x196)+_0x27d58d(0x1a8)+'Ms']=0x320;[_0x27d58d(0x1dc)+_0x27d58d(0x1fd)]=null;[_0x27d58d(0x1b8)+'e'](_0x186103){const _0x7b055b=_0x27d58d;if(!_0x186103){this[_0x7b055b(0x187)]();return;}const _0x53e41a=this[_0x7b055b(0x197)];this[_0x7b055b(0x197)]=_0x186103,this['shouldRe'+_0x7b055b(0x157)]=!![];try{this['deviceId'+'entity']=loadOrCreateDeviceIdentity(_0x186103[_0x7b055b(0x1c6)+'Path']);}catch(_0x1d2d22){const _0x45d28d=_0x1d2d22 instanceof Error?_0x1d2d22['message']:_0x7b055b(0x1fa)+_0x7b055b(0x155)+'失败';this[_0x7b055b(0x187)](),_0x186103[_0x7b055b(0x1cd)+_0x7b055b(0x1f9)](_0x45d28d);return;}const _0x2bdada=!_0x53e41a||_0x53e41a['url']!==_0x186103[_0x7b055b(0x173)]||_0x53e41a[_0x7b055b(0x1de)]!==_0x186103['token']||_0x53e41a[_0x7b055b(0x1f3)]!==_0x186103['clientId']||_0x53e41a[_0x7b055b(0x175)+'de']!==_0x186103[_0x7b055b(0x175)+'de']||_0x53e41a[_0x7b055b(0x15b)+'rsion']!==_0x186103[_0x7b055b(0x15b)+_0x7b055b(0x1df)]||_0x53e41a[_0x7b055b(0x1c6)+_0x7b055b(0x1bb)]!==_0x186103[_0x7b055b(0x1c6)+_0x7b055b(0x1bb)];if(_0x2bdada){this['restart']();return;}if(!this['ws'])this['connect']();}[_0x27d58d(0x187)](){const _0x419eac=_0x27d58d;this[_0x419eac(0x1a1)+_0x419eac(0x157)]=![],this[_0x419eac(0x19f)+'d']=![],this[_0x419eac(0x1a2)+_0x419eac(0x1c9)]=null,this[_0x419eac(0x1ce)+_0x419eac(0x1e4)]=![],this['clearTim'+_0x419eac(0x1b7)](),this[_0x419eac(0x1ad)+_0x419eac(0x1b0)](new Error(_0x419eac(0x1d3)+_0x419eac(0x1b9)+_0x419eac(0x1c3)+'d')),this[_0x419eac(0x193)+'adyWaite'+'rs'](new Error(_0x419eac(0x1d3)+_0x419eac(0x1b9)+'t\x20stoppe'+'d'));if(this['ws']){try{this['ws'][_0x419eac(0x16e)]();}catch{}this['ws']=null;}this[_0x419eac(0x1dc)+_0x419eac(0x1fd)]=null,this[_0x419eac(0x197)]=null;}async['request'](_0x271e84,_0x4a76f0={},_0x4c8298={}){const _0x220c2a=_0x27d58d;if(!_0x4c8298[_0x220c2a(0x17e)+_0x220c2a(0x18b)])await this['waitUnti'+_0x220c2a(0x179)]();const _0xbf7711=this['ws'];if(!_0xbf7711||_0xbf7711['readySta'+'te']!==_0x1cc090['OPEN'])throw new Error(_0x220c2a(0x1d3)+'WS\x20is\x20no'+'t\x20connec'+_0x220c2a(0x19e));const _0x2e7f94=randomUUID(),_0x2aa5e2=_0x4c8298[_0x220c2a(0x1f0)+'s']??0x7530;return await new Promise((_0x4e50b3,_0x3dd612)=>{const _0x32afed=_0x220c2a,_0x372a98=setTimeout(()=>{const _0x5e8151=_0x2c58;this[_0x5e8151(0x167)][_0x5e8151(0x16d)](_0x2e7f94),_0x3dd612(new Error(_0x5e8151(0x1d3)+_0x5e8151(0x192)+_0x5e8151(0x1dd)+_0x5e8151(0x156)+_0x271e84));},_0x2aa5e2);this['pending'][_0x32afed(0x1d0)](_0x2e7f94,{'method':_0x271e84,'resolve':_0x4bee13=>{clearTimeout(_0x372a98),_0x4e50b3(_0x4bee13);},'reject':_0x198f3d=>{clearTimeout(_0x372a98),_0x3dd612(_0x198f3d);},'expectFinal':_0x4c8298[_0x32afed(0x166)+'nal']===!![],'timeout':_0x372a98});try{_0xbf7711[_0x32afed(0x14d)](JSON[_0x32afed(0x16c)+'y']({'type':'req','id':_0x2e7f94,'method':_0x271e84,'params':_0x4a76f0}));}catch(_0x33cb70){this[_0x32afed(0x167)][_0x32afed(0x16d)](_0x2e7f94),clearTimeout(_0x372a98),_0x3dd612(_0x33cb70 instanceof Error?_0x33cb70:new Error('failed\x20t'+_0x32afed(0x1bc)+_0x32afed(0x1ba)+_0x32afed(0x1be)));}});}[_0x27d58d(0x15c)](){const _0xcb3515=_0x27d58d;this[_0xcb3515(0x19f)+'d']=![],this[_0xcb3515(0x1a2)+_0xcb3515(0x1c9)]=null,this[_0xcb3515(0x1ce)+_0xcb3515(0x1e4)]=![],this[_0xcb3515(0x1fb)+_0xcb3515(0x1b7)](),this[_0xcb3515(0x1ad)+_0xcb3515(0x1b0)](new Error(_0xcb3515(0x1d3)+_0xcb3515(0x1b9)+_0xcb3515(0x1e3)+_0xcb3515(0x200))),this[_0xcb3515(0x193)+_0xcb3515(0x199)+'rs'](new Error(_0xcb3515(0x1d3)+_0xcb3515(0x1b9)+_0xcb3515(0x1e3)+_0xcb3515(0x200)));if(this['ws']){try{this['ws']['terminat'+'e']();}catch{}this['ws']=null;}this[_0xcb3515(0x157)]();}[_0x27d58d(0x157)](){const _0x355089=_0x27d58d;if(!this['config']||this['ws'])return;const _0x2237ce=new _0x1cc090(this[_0x355089(0x197)][_0x355089(0x173)]);this['ws']=_0x2237ce,_0x2237ce['on']('open',()=>this[_0x355089(0x1a0)+_0x355089(0x1d9)+_0x355089(0x1b4)+'eout']()),_0x2237ce['on']('message',_0x5a4bce=>this[_0x355089(0x14e)+_0x355089(0x14b)](_0x5a4bce[_0x355089(0x1c4)]())),_0x2237ce['on'](_0x355089(0x16e),(_0x412824,_0x3cd11a)=>{const _0x2c7a19=_0x355089;if(this[_0x2c7a19(0x19f)+'d']){const _0x18f4f3=_0x3cd11a['toString']()||_0x2c7a19(0x1c8)+_0x412824;this[_0x2c7a19(0x1ed)+'sconnect']('gateway\x20'+_0x2c7a19(0x1f8)+_0x2c7a19(0x17c)+_0x18f4f3+')');}else this[_0x2c7a19(0x1ed)+_0x2c7a19(0x1f2)]('');}),_0x2237ce['on'](_0x355089(0x18f),_0x379a37=>{const _0x5d5e5e=_0x355089;if(isLocalGatewayConnRefused(_0x379a37)){this[_0x5d5e5e(0x1ed)+_0x5d5e5e(0x1f2)](_0x5d5e5e(0x1d3)+'is\x20not\x20l'+'istening'+_0x5d5e5e(0x181));return;}const _0x51315e=formatUnknownError(_0x379a37);this['handleDi'+_0x5d5e5e(0x1f2)](_0x51315e?_0x5d5e5e(0x1d3)+_0x5d5e5e(0x1ea)+':\x20'+_0x51315e:_0x5d5e5e(0x1d3)+_0x5d5e5e(0x1ea));});}[_0x27d58d(0x1a0)+_0x27d58d(0x1d9)+'lengeTim'+'eout'](){const _0x3cefdf=_0x27d58d;this[_0x3cefdf(0x1a2)+'once']=null,this[_0x3cefdf(0x1ce)+_0x3cefdf(0x1e4)]=![];if(this[_0x3cefdf(0x176)+_0x3cefdf(0x150)+_0x3cefdf(0x1a4)])clearTimeout(this[_0x3cefdf(0x176)+_0x3cefdf(0x150)+_0x3cefdf(0x1a4)]);this[_0x3cefdf(0x176)+_0x3cefdf(0x150)+_0x3cefdf(0x1a4)]=setTimeout(()=>{const _0x15ef51=_0x3cefdf;if(this['connectS'+_0x15ef51(0x1e4)]||!this['ws']||this['ws'][_0x15ef51(0x1cb)+'te']!==_0x1cc090[_0x15ef51(0x201)])return;this[_0x15ef51(0x1ed)+_0x15ef51(0x1f2)](_0x15ef51(0x1d3)+_0x15ef51(0x204)+_0x15ef51(0x1da)+_0x15ef51(0x19d)),this['ws']?.[_0x15ef51(0x16e)](0x3f0,'connect\x20'+_0x15ef51(0x184)+'e\x20timeou'+'t');},0x7d0);}async['sendConn'+_0x27d58d(0x1d4)](){const _0xc54dc4=_0x27d58d,_0x3c9b68=this['config'];if(!_0x3c9b68||this[_0xc54dc4(0x1ce)+_0xc54dc4(0x1e4)])return;const _0x5a27a1=this[_0xc54dc4(0x1a2)+'once']?.[_0xc54dc4(0x17a)]()??'';if(!_0x5a27a1){this[_0xc54dc4(0x1ed)+_0xc54dc4(0x1f2)]('gateway\x20'+_0xc54dc4(0x204)+_0xc54dc4(0x1c7)+'sing\x20non'+'ce'),this['ws']?.['close'](0x3f0,_0xc54dc4(0x158)+_0xc54dc4(0x184)+_0xc54dc4(0x1a6)+_0xc54dc4(0x198));return;}this[_0xc54dc4(0x1ce)+'ent']=!![];this[_0xc54dc4(0x176)+'hallenge'+_0xc54dc4(0x1a4)]&&(clearTimeout(this[_0xc54dc4(0x176)+_0xc54dc4(0x150)+_0xc54dc4(0x1a4)]),this[_0xc54dc4(0x176)+_0xc54dc4(0x150)+_0xc54dc4(0x1a4)]=null);if(!this[_0xc54dc4(0x1dc)+_0xc54dc4(0x1fd)])try{this[_0xc54dc4(0x1dc)+_0xc54dc4(0x1fd)]=loadOrCreateDeviceIdentity(_0x3c9b68[_0xc54dc4(0x1c6)+_0xc54dc4(0x1bb)]);}catch(_0x399a23){this['handleDi'+'sconnect'](_0x399a23 instanceof Error?_0x399a23[_0xc54dc4(0x1ca)]:_0xc54dc4(0x1a9)+_0xc54dc4(0x1c1)+'ateway\x20i'+'dentity'),this['ws']?.[_0xc54dc4(0x16e)](0x3f0,_0xc54dc4(0x1a7)+_0xc54dc4(0x195)+'unavaila'+_0xc54dc4(0x17d));return;}const _0x66dd6e='operator',_0x1568be=[_0xc54dc4(0x161)+_0xc54dc4(0x15d),_0xc54dc4(0x161)+_0xc54dc4(0x1f4),_0xc54dc4(0x161)+'.admin',_0xc54dc4(0x161)+_0xc54dc4(0x19b)+'ls',_0xc54dc4(0x161)+'.pairing'],_0x44e2ed=_0x3c9b68['token'][_0xc54dc4(0x17a)](),_0x1aa347=Date[_0xc54dc4(0x1af)](),_0x4862c9=buildDeviceAuthPayloadV3({'deviceId':this[_0xc54dc4(0x1dc)+_0xc54dc4(0x1fd)]['deviceId'],'clientId':_0x3c9b68[_0xc54dc4(0x1f3)],'clientMode':_0x3c9b68[_0xc54dc4(0x175)+'de'],'role':_0x66dd6e,'scopes':_0x1568be,'signedAtMs':_0x1aa347,'token':_0x44e2ed||null,'nonce':_0x5a27a1,'platform':process[_0xc54dc4(0x1a5)],'deviceFamily':_0x3c9b68[_0xc54dc4(0x189)+_0xc54dc4(0x191)+'ly']}),_0xc153f7={'minProtocol':0x4,'maxProtocol':0x4,'client':{'id':_0x3c9b68[_0xc54dc4(0x1f3)],'displayName':_0x3c9b68[_0xc54dc4(0x1e7)+_0xc54dc4(0x165)+'e'],'version':_0x3c9b68[_0xc54dc4(0x15b)+_0xc54dc4(0x1df)],'platform':process[_0xc54dc4(0x1a5)],'deviceFamily':_0x3c9b68[_0xc54dc4(0x189)+'viceFami'+'ly'],'mode':_0x3c9b68[_0xc54dc4(0x175)+'de']},'caps':[],'role':_0x66dd6e,'scopes':_0x1568be,'auth':_0x44e2ed?{'token':_0x44e2ed}:undefined,'device':{'id':this[_0xc54dc4(0x1dc)+'entity'][_0xc54dc4(0x1dc)],'publicKey':publicKeyRawBase64UrlFromPem(this[_0xc54dc4(0x1dc)+'entity']['publicKe'+_0xc54dc4(0x18e)]),'signature':signDevicePayload(this[_0xc54dc4(0x1dc)+'entity'][_0xc54dc4(0x15e)+_0xc54dc4(0x182)],_0x4862c9),'signedAt':_0x1aa347,'nonce':_0x5a27a1},'locale':Intl[_0xc54dc4(0x1f5)+_0xc54dc4(0x171)]()['resolved'+_0xc54dc4(0x14f)]()['locale'],'userAgent':_0xc54dc4(0x163)+_0xc54dc4(0x1d7)+_0x3c9b68['clientVe'+_0xc54dc4(0x1df)]};try{await this[_0xc54dc4(0x203)](_0xc54dc4(0x157),_0xc153f7,{'timeoutMs':0x2710,'skipReadyCheck':!![]}),this[_0xc54dc4(0x19f)+'d']=!![],this['reconnec'+_0xc54dc4(0x1a8)+'Ms']=0x320,this[_0xc54dc4(0x1ac)+'eadyWait'+'ers'](),this[_0xc54dc4(0x197)]?.[_0xc54dc4(0x164)+_0xc54dc4(0x19e)]?.();}catch(_0x2c3f9e){this['handleDi'+_0xc54dc4(0x1f2)](_0x2c3f9e instanceof Error?_0x2c3f9e[_0xc54dc4(0x1ca)]:_0xc54dc4(0x1d3)+_0xc54dc4(0x188)+'ct\x20faile'+'d'),this['ws']?.['close'](0x3f0,_0xc54dc4(0x158)+_0xc54dc4(0x17b));}}['handleMe'+_0x27d58d(0x14b)](_0x25db3a){const _0x54d025=_0x27d58d;let _0x4f98bc;try{_0x4f98bc=JSON['parse'](_0x25db3a);}catch{return;}if(!isRecord(_0x4f98bc)||typeof _0x4f98bc[_0x54d025(0x1ff)]!==_0x54d025(0x153))return;if(_0x4f98bc['type']===_0x54d025(0x178)){const _0x514b7e=typeof _0x4f98bc[_0x54d025(0x178)]==='string'?_0x4f98bc['event']:'';if(!_0x514b7e)return;const _0x4597d6=isRecord(_0x4f98bc['payload'])?_0x4f98bc['payload']:{};if(_0x514b7e==='connect.'+_0x54d025(0x184)+'e'){const _0x1413d0=typeof _0x4597d6[_0x54d025(0x152)]===_0x54d025(0x153)?_0x4597d6[_0x54d025(0x152)]['trim']():'';if(!_0x1413d0){this[_0x54d025(0x1ed)+_0x54d025(0x1f2)]('gateway\x20'+'WS\x20hands'+_0x54d025(0x1c7)+_0x54d025(0x1ef)+'ce'),this['ws']?.[_0x54d025(0x16e)](0x3f0,'connect\x20'+_0x54d025(0x184)+_0x54d025(0x1a6)+'g\x20nonce');return;}this[_0x54d025(0x1a2)+'once']=_0x1413d0,void this[_0x54d025(0x1e1)+_0x54d025(0x1d4)]();return;}if(_0x514b7e===_0x54d025(0x1db))this[_0x54d025(0x197)]?.['onChatEv'+_0x54d025(0x1e4)]?.(_0x4597d6);if(_0x514b7e===_0x54d025(0x15f))this[_0x54d025(0x197)]?.[_0x54d025(0x18d)+_0x54d025(0x1aa)]?.(_0x4597d6);return;}if(_0x4f98bc[_0x54d025(0x1ff)]!==_0x54d025(0x180))return;const _0x153576=typeof _0x4f98bc['id']===_0x54d025(0x153)?_0x4f98bc['id']:'';if(!_0x153576)return;const _0x5862a2=this['pending'][_0x54d025(0x1d2)](_0x153576);if(!_0x5862a2)return;const _0x1a9b0b=isRecord(_0x4f98bc[_0x54d025(0x170)])?_0x4f98bc[_0x54d025(0x170)]:{},_0x2f4936=typeof _0x1a9b0b[_0x54d025(0x16a)]==='string'?_0x1a9b0b[_0x54d025(0x16a)]:'';if(_0x5862a2[_0x54d025(0x166)+'nal']&&_0x2f4936===_0x54d025(0x1ae))return;this[_0x54d025(0x167)]['delete'](_0x153576);_0x5862a2[_0x54d025(0x194)]&&(clearTimeout(_0x5862a2['timeout']),_0x5862a2[_0x54d025(0x194)]=null);if(_0x4f98bc['ok']===!![]){_0x5862a2[_0x54d025(0x186)](_0x4f98bc['payload']);return;}const _0x1367fb=isRecord(_0x4f98bc[_0x54d025(0x18f)])?_0x4f98bc[_0x54d025(0x18f)]:{},_0x19f6c7=typeof _0x1367fb[_0x54d025(0x1ca)]===_0x54d025(0x153)?_0x1367fb[_0x54d025(0x1ca)]:_0x54d025(0x1d3)+_0x54d025(0x192)+_0x54d025(0x1fe)+_0x5862a2[_0x54d025(0x1b3)];_0x5862a2['reject'](new Error(_0x19f6c7));}[_0x27d58d(0x1e2)+'lReady'](_0x43649f=0x2ee0){const _0x3f9899=_0x27d58d;if(this[_0x3f9899(0x19f)+'d'])return Promise[_0x3f9899(0x186)]();if(!this['config'])return Promise['reject'](new Error('gateway\x20'+_0x3f9899(0x15a)+_0x3f9899(0x162)+_0x3f9899(0x1b5)));if(!this['ws'])this[_0x3f9899(0x157)]();return new Promise((_0x12adcb,_0x14eeb2)=>{const _0x14a27b=_0x3f9899,_0x3fae40=setTimeout(()=>{const _0x596d5f=_0x2c58;this[_0x596d5f(0x1d5)+_0x596d5f(0x1d8)]=this[_0x596d5f(0x1d5)+_0x596d5f(0x1d8)]['filter'](_0x39f7de=>_0x39f7de[_0x596d5f(0x186)]!==_0x12adcb),_0x14eeb2(new Error(_0x596d5f(0x1d3)+'WS\x20conne'+_0x596d5f(0x172)+_0x596d5f(0x177)));},_0x43649f);this[_0x14a27b(0x1d5)+_0x14a27b(0x1d8)][_0x14a27b(0x1bd)]({'resolve':_0x12adcb,'reject':_0x14eeb2,'timeout':_0x3fae40});});}[_0x27d58d(0x1ac)+_0x27d58d(0x183)+'ers'](){const _0x478c78=_0x27d58d,_0x25ba7b=[...this['readyWai'+_0x478c78(0x1d8)]];this[_0x478c78(0x1d5)+_0x478c78(0x1d8)]=[];for(const _0x16b72e of _0x25ba7b){clearTimeout(_0x16b72e[_0x478c78(0x194)]),_0x16b72e[_0x478c78(0x186)]();}}[_0x27d58d(0x193)+_0x27d58d(0x199)+'rs'](_0x568d44){const _0x1ab20b=_0x27d58d,_0x36533a=[...this[_0x1ab20b(0x1d5)+'ters']];this[_0x1ab20b(0x1d5)+_0x1ab20b(0x1d8)]=[];for(const _0x69c004 of _0x36533a){clearTimeout(_0x69c004[_0x1ab20b(0x194)]),_0x69c004['reject'](_0x568d44);}}[_0x27d58d(0x1ad)+_0x27d58d(0x1b0)](_0x779510){const _0x332f12=_0x27d58d;for(const [_0x21862e,_0x187929]of this[_0x332f12(0x167)]['entries']()){this[_0x332f12(0x167)][_0x332f12(0x16d)](_0x21862e),_0x187929[_0x332f12(0x194)]&&(clearTimeout(_0x187929[_0x332f12(0x194)]),_0x187929[_0x332f12(0x194)]=null),_0x187929[_0x332f12(0x1ee)](_0x779510);}}[_0x27d58d(0x1ed)+_0x27d58d(0x1f2)](_0x375370){const _0x1cf9d0=_0x27d58d;this['ws']&&(this['ws'][_0x1cf9d0(0x174)+_0x1cf9d0(0x1e6)+'rs'](),this['ws']=null);this[_0x1cf9d0(0x19f)+'d']=![],this['connectN'+_0x1cf9d0(0x1c9)]=null,this[_0x1cf9d0(0x1ce)+_0x1cf9d0(0x1e4)]=![],this[_0x1cf9d0(0x1ad)+_0x1cf9d0(0x1b0)](new Error(_0x375370||_0x1cf9d0(0x1d3)+_0x1cf9d0(0x1f7)+_0x1cf9d0(0x1cf))),this[_0x1cf9d0(0x193)+_0x1cf9d0(0x199)+'rs'](new Error(_0x375370||'gateway\x20'+_0x1cf9d0(0x1f7)+'nnected')),this['clearTim'+_0x1cf9d0(0x1b7)]();if(_0x375370)this[_0x1cf9d0(0x197)]?.[_0x1cf9d0(0x1cd)+_0x1cf9d0(0x1f9)]?.(_0x375370);if(!this[_0x1cf9d0(0x1a1)+_0x1cf9d0(0x157)]||!this[_0x1cf9d0(0x197)])return;const _0x421506=this[_0x1cf9d0(0x196)+_0x1cf9d0(0x1a8)+'Ms'];this[_0x1cf9d0(0x196)+_0x1cf9d0(0x1a8)+'Ms']=Math['min'](this[_0x1cf9d0(0x196)+'tBackoff'+'Ms']*0x2,0x3a98),this['reconnec'+'tTimer']=setTimeout(()=>{const _0x2f345d=_0x1cf9d0;this[_0x2f345d(0x196)+_0x2f345d(0x1ec)]=null,this[_0x2f345d(0x157)]();},_0x421506);}[_0x27d58d(0x1fb)+_0x27d58d(0x1b7)](){const _0x1acc65=_0x27d58d;this[_0x1acc65(0x196)+_0x1acc65(0x1ec)]&&(clearTimeout(this[_0x1acc65(0x196)+'tTimer']),this['reconnec'+'tTimer']=null),this[_0x1acc65(0x176)+_0x1acc65(0x150)+_0x1acc65(0x1a4)]&&(clearTimeout(this[_0x1acc65(0x176)+_0x1acc65(0x150)+_0x1acc65(0x1a4)]),this['connectC'+_0x1acc65(0x150)+_0x1acc65(0x1a4)]=null);}}
|
|
1
|
+
const _0x5bf23f=_0x22e2;(function(_0x44b7b0,_0x3f9ea9){const _0x443659=_0x22e2,_0x3b8f31=_0x44b7b0();while(!![]){try{const _0x1ec948=-parseInt(_0x443659(0x13f))/0x1*(-parseInt(_0x443659(0x196))/0x2)+parseInt(_0x443659(0x1bd))/0x3*(-parseInt(_0x443659(0x1c0))/0x4)+-parseInt(_0x443659(0x1dd))/0x5*(parseInt(_0x443659(0x15c))/0x6)+parseInt(_0x443659(0x19f))/0x7+-parseInt(_0x443659(0x18c))/0x8*(-parseInt(_0x443659(0x1c7))/0x9)+-parseInt(_0x443659(0x192))/0xa*(-parseInt(_0x443659(0x161))/0xb)+-parseInt(_0x443659(0x19c))/0xc*(-parseInt(_0x443659(0x16a))/0xd);if(_0x1ec948===_0x3f9ea9)break;else _0x3b8f31['push'](_0x3b8f31['shift']());}catch(_0x545651){_0x3b8f31['push'](_0x3b8f31['shift']());}}}(_0x2ed8,0x81279));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 _0x1fb79a from'ws';const ED25519_SPKI_PREFIX=Buffer['from'](_0x5bf23f(0x1aa)+_0x5bf23f(0x1db)+_0x5bf23f(0x18f),'hex'),BASE64_PADDING_REGEX=/=+$/g,UPPERCASE_ASCII_REGEX=/[A-Z]/g;function isRecord(_0x1fe7ec){const _0x33a861=_0x5bf23f;return Boolean(_0x1fe7ec)&&typeof _0x1fe7ec===_0x33a861(0x17d)&&!Array[_0x33a861(0x151)](_0x1fe7ec);}function formatUnknownError(_0x2b1090){if(_0x2b1090 instanceof Error)return _0x2b1090['message'];return String(_0x2b1090??'');}function isLocalGatewayConnRefused(_0x48a4b0){const _0x28c07b=_0x5bf23f,_0x45d76d=formatUnknownError(_0x48a4b0);return/\bECONNREFUSED\b/i['test'](_0x45d76d)&&/127\.0\.0\.1:\d+/[_0x28c07b(0x159)](_0x45d76d);}function base64UrlEncode(_0x3c96c6){const _0xc20a7f=_0x5bf23f;return _0x3c96c6[_0xc20a7f(0x1ca)](_0xc20a7f(0x13c))[_0xc20a7f(0x149)+'ll']('+','-')[_0xc20a7f(0x149)+'ll']('/','_')[_0xc20a7f(0x1b4)](BASE64_PADDING_REGEX,'');}function derivePublicKeyRaw(_0x35eedb){const _0x1b3bc6=_0x5bf23f,_0x127759=createPublicKey(_0x35eedb)[_0x1b3bc6(0x1ac)]({'type':_0x1b3bc6(0x1a4),'format':_0x1b3bc6(0x195)}),_0x33ad0b=Buffer[_0x1b3bc6(0x1ab)](_0x127759)?_0x127759:Buffer[_0x1b3bc6(0x1dc)](_0x127759),_0x582afa=_0x33ad0b[_0x1b3bc6(0x199)]===ED25519_SPKI_PREFIX[_0x1b3bc6(0x199)]+0x20&&_0x33ad0b['subarray'](0x0,ED25519_SPKI_PREFIX[_0x1b3bc6(0x199)])[_0x1b3bc6(0x15d)](ED25519_SPKI_PREFIX);return _0x582afa?_0x33ad0b[_0x1b3bc6(0x177)](ED25519_SPKI_PREFIX[_0x1b3bc6(0x199)]):_0x33ad0b;}function fingerprintPublicKey(_0x218409){const _0x534f2=_0x5bf23f;return createHash(_0x534f2(0x171))[_0x534f2(0x1a3)](derivePublicKeyRaw(_0x218409))[_0x534f2(0x1f0)](_0x534f2(0x1da));}function publicKeyRawBase64UrlFromPem(_0x2e74ee){return base64UrlEncode(derivePublicKeyRaw(_0x2e74ee));}function _0x22e2(_0x5d3b8f,_0x11e862){_0x5d3b8f=_0x5d3b8f-0x131;const _0x2ed815=_0x2ed8();let _0x22e298=_0x2ed815[_0x5d3b8f];return _0x22e298;}function signDevicePayload(_0x17a41e,_0x55dc99){const _0x120013=_0x5bf23f,_0x17bf43=createPrivateKey(_0x17a41e);return base64UrlEncode(sign(null,Buffer[_0x120013(0x1dc)](_0x55dc99,_0x120013(0x156)),_0x17bf43));}function normalizeDeviceMetadataForAuth(_0x1cc05a){const _0x4bc3d5=_0x5bf23f,_0x77c333=typeof _0x1cc05a===_0x4bc3d5(0x17e)?_0x1cc05a['trim']():'';if(!_0x77c333)return'';return _0x77c333[_0x4bc3d5(0x1b4)](UPPERCASE_ASCII_REGEX,_0x275c52=>String[_0x4bc3d5(0x1cf)+_0x4bc3d5(0x153)](_0x275c52['charCode'+'At'](0x0)+0x20));}function buildDeviceAuthPayloadV3(_0x510e84){const _0x510c29=_0x5bf23f;return['v3',_0x510e84[_0x510c29(0x141)],_0x510e84[_0x510c29(0x1ba)],_0x510e84[_0x510c29(0x1df)+'de'],_0x510e84[_0x510c29(0x186)],_0x510e84[_0x510c29(0x1eb)][_0x510c29(0x1c8)](','),String(_0x510e84[_0x510c29(0x174)+'Ms']),_0x510e84[_0x510c29(0x1a2)]??'',_0x510e84[_0x510c29(0x14c)],normalizeDeviceMetadataForAuth(_0x510e84[_0x510c29(0x1b3)]),normalizeDeviceMetadataForAuth(_0x510e84['deviceFa'+_0x510c29(0x1e1)])]['join']('|');}function writeIdentityFile(_0x5924ad,_0x4d95bf,_0x73ce4a){mkdirSync(dirname(_0x5924ad),{'recursive':!![]}),writeFileSync(_0x5924ad,JSON['stringif'+'y']({'version':0x1,..._0x4d95bf,'createdAtMs':_0x73ce4a},null,0x2)+'\x0a',{'mode':0x180});try{chmodSync(_0x5924ad,0x180);}catch{}}function generateDeviceIdentity(){const _0x267e31=_0x5bf23f,{publicKey:_0x422e40,privateKey:_0x5ab3b3}=generateKeyPairSync('ed25519'),_0x4be4cd=_0x422e40['export']({'type':'spki','format':'pem'})['toString'](),_0x4a6af2=_0x5ab3b3['export']({'type':_0x267e31(0x13d),'format':_0x267e31(0x163)})[_0x267e31(0x1ca)]();return{'deviceId':fingerprintPublicKey(_0x4be4cd),'publicKeyPem':_0x4be4cd,'privateKeyPem':_0x4a6af2};}function loadOrCreateDeviceIdentity(_0x4fc109){const _0x2230e5=_0x5bf23f;if(existsSync(_0x4fc109))try{const _0x255ea8=JSON[_0x2230e5(0x1cc)](readFileSync(_0x4fc109,_0x2230e5(0x156))),_0x5f50e6=typeof _0x255ea8?.[_0x2230e5(0x16d)+_0x2230e5(0x1d3)]===_0x2230e5(0x17e)?_0x255ea8[_0x2230e5(0x16d)+_0x2230e5(0x1d3)]:'',_0x21be11=typeof _0x255ea8?.[_0x2230e5(0x140)+_0x2230e5(0x1b9)]==='string'?_0x255ea8[_0x2230e5(0x140)+_0x2230e5(0x1b9)]:'';if(_0x5f50e6&&_0x21be11){const _0x436f64={'deviceId':fingerprintPublicKey(_0x5f50e6),'publicKeyPem':_0x5f50e6,'privateKeyPem':_0x21be11};return _0x255ea8?.[_0x2230e5(0x141)]!==_0x436f64['deviceId']&&writeIdentityFile(_0x4fc109,_0x436f64,Date[_0x2230e5(0x136)]()),_0x436f64;}}catch{}const _0x2197ef=generateDeviceIdentity();return writeIdentityFile(_0x4fc109,_0x2197ef,Date[_0x2230e5(0x136)]()),_0x2197ef;}function _0x2ed8(){const _0x48e353=['3309467jPvayr','connectC','WS\x20is\x20no','token','update','spki','lReady','connect','yCheck','ell/','sendConn','302a3005','isBuffer','export','WS\x20disco','lListene','connecte','nectChal','Options','way\x20设备身份','platform','replace','timeoutM','splayNam','connectS','resolve','eyPem','clientId','code=','g\x20nonce','3RccNlK','WS\x20hands','adyWaite','3500188MRAFsM','ct\x20faile','clientDe','rejectPe','WS\x20clien','onAgentE','nnected','81783tMftHH','join','\x20yet','toString','failed\x20t','parse','is\x20not\x20l','pending','fromChar','WS\x20conne','min','handleMe','yPem','ers','t\x20restar','wujie-sh','Timer','once','queueCon','hex','06032b65','from','676600NOVfSL','vent','clientMo','trim','mily','delete','tBackoff','status','ent','unavaila','accepted','t\x20connec','ect','method','scopes','d\x20(','hallenge','o\x20load\x20g','rejectRe','digest','viceFami','failed:\x20','clientVe','handleDi','Path','restart','stringif','identity','agent','now','request\x20','.approva','url','tTimer','t\x20stoppe','base64','pkcs8','lengeTim','2670rlloyZ','privateK','deviceId','readyWai','ateway\x20i','config','operator','t:\x20','connectN','hake\x20mis','replaceA','entity','get','nonce','timeout','connect.','ured','device\x20i','isArray','error','Code','.admin','shouldRe','utf8','event','payload','test','equest','.pairing','24KEHjzs','equals','ters','e\x20timeou','DateTime','77dfQuhE','clearTim','pem','resolveR','expectFi','skipRead','onChatEv','waitUnti','request','2322814iMKalR','nected','challeng','publicKe','res','send','istening','sha256','ction\x20ti','.read','signedAt','e\x20missin','ting','subarray','hake\x20tim','message','removeAl','timed\x20ou','sconnect','object','string','ed\x20out','eout','connect\x20','WS\x20error','rsion','readySta','reconnec','role','close','gateway\x20','type','ateway\x20r','nal','608BuPWVd','dentity','sing\x20non','70032100','push','onDiscon','346890EmOnWJ','chat','stop','der','270sLZQly','Format','nding','length','filter','failed','12sMuIRu','OPEN','ted'];_0x2ed8=function(){return _0x48e353;};return _0x2ed8();}export class ClawGatewayWsClient{['ws']=null;[_0x5bf23f(0x144)]=null;[_0x5bf23f(0x1ce)]=new Map();[_0x5bf23f(0x142)+_0x5bf23f(0x15e)]=[];['shouldRe'+_0x5bf23f(0x1a6)]=![];[_0x5bf23f(0x185)+_0x5bf23f(0x13a)]=null;[_0x5bf23f(0x1a0)+_0x5bf23f(0x1ed)+_0x5bf23f(0x1d7)]=null;[_0x5bf23f(0x147)+'once']=null;[_0x5bf23f(0x1b7)+_0x5bf23f(0x1e5)]=![];['connecte'+'d']=![];[_0x5bf23f(0x185)+_0x5bf23f(0x1e3)+'Ms']=0x320;['deviceId'+'entity']=null;['configur'+'e'](_0x40744d){const _0x3234c9=_0x5bf23f;if(!_0x40744d){this[_0x3234c9(0x194)]();return;}const _0xe1eed7=this[_0x3234c9(0x144)];this['config']=_0x40744d,this['shouldRe'+_0x3234c9(0x1a6)]=!![];try{this[_0x3234c9(0x141)+_0x3234c9(0x14a)]=loadOrCreateDeviceIdentity(_0x40744d[_0x3234c9(0x134)+_0x3234c9(0x131)]);}catch(_0x3469bd){const _0x21adaf=_0x3469bd instanceof Error?_0x3469bd[_0x3234c9(0x179)]:'初始化\x20gate'+_0x3234c9(0x1b2)+'失败';this[_0x3234c9(0x194)](),_0x40744d[_0x3234c9(0x191)+'nected'](_0x21adaf);return;}const _0x11940f=!_0xe1eed7||_0xe1eed7[_0x3234c9(0x139)]!==_0x40744d[_0x3234c9(0x139)]||_0xe1eed7[_0x3234c9(0x1a2)]!==_0x40744d['token']||_0xe1eed7['clientId']!==_0x40744d[_0x3234c9(0x1ba)]||_0xe1eed7[_0x3234c9(0x1df)+'de']!==_0x40744d[_0x3234c9(0x1df)+'de']||_0xe1eed7[_0x3234c9(0x1f3)+_0x3234c9(0x183)]!==_0x40744d[_0x3234c9(0x1f3)+'rsion']||_0xe1eed7[_0x3234c9(0x134)+_0x3234c9(0x131)]!==_0x40744d[_0x3234c9(0x134)+_0x3234c9(0x131)];if(_0x11940f){this[_0x3234c9(0x132)]();return;}if(!this['ws'])this[_0x3234c9(0x1a6)]();}[_0x5bf23f(0x194)](){const _0x56a214=_0x5bf23f;this[_0x56a214(0x155)+'connect']=![],this['connecte'+'d']=![],this[_0x56a214(0x147)+'once']=null,this['connectS'+_0x56a214(0x1e5)]=![],this[_0x56a214(0x162)+_0x56a214(0x1d4)](),this['rejectPe'+_0x56a214(0x198)](new Error(_0x56a214(0x188)+_0x56a214(0x1c4)+_0x56a214(0x13b)+'d')),this[_0x56a214(0x1ef)+_0x56a214(0x1bf)+'rs'](new Error(_0x56a214(0x188)+'WS\x20clien'+_0x56a214(0x13b)+'d'));if(this['ws']){try{this['ws']['close']();}catch{}this['ws']=null;}this[_0x56a214(0x141)+_0x56a214(0x14a)]=null,this[_0x56a214(0x144)]=null;}async['request'](_0x11dfcd,_0x24ede0={},_0x195d45={}){const _0x1b8bfa=_0x5bf23f;if(!_0x195d45[_0x1b8bfa(0x166)+_0x1b8bfa(0x1a7)])await this[_0x1b8bfa(0x168)+_0x1b8bfa(0x1a5)]();const _0x450b8e=this['ws'];if(!_0x450b8e||_0x450b8e[_0x1b8bfa(0x184)+'te']!==_0x1fb79a[_0x1b8bfa(0x19d)])throw new Error(_0x1b8bfa(0x188)+_0x1b8bfa(0x1a1)+_0x1b8bfa(0x1e8)+_0x1b8bfa(0x19e));const _0x19d598=randomUUID(),_0x1f60f2=_0x195d45[_0x1b8bfa(0x1b5)+'s']??0x7530;return await new Promise((_0x479729,_0x49dba4)=>{const _0x51e7ec=_0x1b8bfa,_0x1f380f=setTimeout(()=>{const _0x4f3798=_0x22e2;this[_0x4f3798(0x1ce)][_0x4f3798(0x1e2)](_0x19d598),_0x49dba4(new Error(_0x4f3798(0x188)+_0x4f3798(0x137)+_0x4f3798(0x17b)+_0x4f3798(0x146)+_0x11dfcd));},_0x1f60f2);this[_0x51e7ec(0x1ce)]['set'](_0x19d598,{'method':_0x11dfcd,'resolve':_0x371844=>{clearTimeout(_0x1f380f),_0x479729(_0x371844);},'reject':_0x44b2a4=>{clearTimeout(_0x1f380f),_0x49dba4(_0x44b2a4);},'expectFinal':_0x195d45[_0x51e7ec(0x165)+_0x51e7ec(0x18b)]===!![],'timeout':_0x1f380f});try{_0x450b8e[_0x51e7ec(0x16f)](JSON[_0x51e7ec(0x133)+'y']({'type':'req','id':_0x19d598,'method':_0x11dfcd,'params':_0x24ede0}));}catch(_0x17fb21){this[_0x51e7ec(0x1ce)][_0x51e7ec(0x1e2)](_0x19d598),clearTimeout(_0x1f380f),_0x49dba4(_0x17fb21 instanceof Error?_0x17fb21:new Error(_0x51e7ec(0x1cb)+'o\x20send\x20g'+_0x51e7ec(0x18a)+_0x51e7ec(0x15a)));}});}[_0x5bf23f(0x132)](){const _0x508a6c=_0x5bf23f;this[_0x508a6c(0x1af)+'d']=![],this[_0x508a6c(0x147)+'once']=null,this['connectS'+_0x508a6c(0x1e5)]=![],this['clearTim'+'ers'](),this[_0x508a6c(0x1c3)+_0x508a6c(0x198)](new Error('gateway\x20'+_0x508a6c(0x1c4)+_0x508a6c(0x1d5)+_0x508a6c(0x176))),this['rejectRe'+_0x508a6c(0x1bf)+'rs'](new Error(_0x508a6c(0x188)+_0x508a6c(0x1c4)+'t\x20restar'+_0x508a6c(0x176)));if(this['ws']){try{this['ws']['terminat'+'e']();}catch{}this['ws']=null;}this[_0x508a6c(0x1a6)]();}[_0x5bf23f(0x1a6)](){const _0x33bd7d=_0x5bf23f;if(!this['config']||this['ws'])return;const _0x487927=new _0x1fb79a(this[_0x33bd7d(0x144)][_0x33bd7d(0x139)]);this['ws']=_0x487927,_0x487927['on']('open',()=>this[_0x33bd7d(0x1d9)+_0x33bd7d(0x1b0)+_0x33bd7d(0x13e)+_0x33bd7d(0x180)]()),_0x487927['on']('message',_0x28c4d1=>this[_0x33bd7d(0x1d2)+'ssage'](_0x28c4d1[_0x33bd7d(0x1ca)]())),_0x487927['on'](_0x33bd7d(0x187),(_0x1c9d2a,_0x3ffc9b)=>{const _0x369a9a=_0x33bd7d;if(this[_0x369a9a(0x1af)+'d']){const _0x21848c=_0x3ffc9b[_0x369a9a(0x1ca)]()||_0x369a9a(0x1bb)+_0x1c9d2a;this['handleDi'+_0x369a9a(0x17c)](_0x369a9a(0x188)+'WS\x20close'+_0x369a9a(0x1ec)+_0x21848c+')');}else this['handleDi'+_0x369a9a(0x17c)]('');}),_0x487927['on'](_0x33bd7d(0x152),_0x151f17=>{const _0x4e9567=_0x33bd7d;if(isLocalGatewayConnRefused(_0x151f17)){this[_0x4e9567(0x1f4)+'sconnect']('gateway\x20'+_0x4e9567(0x1cd)+_0x4e9567(0x170)+_0x4e9567(0x1c9));return;}const _0xe2454b=formatUnknownError(_0x151f17);this['handleDi'+_0x4e9567(0x17c)](_0xe2454b?_0x4e9567(0x188)+_0x4e9567(0x182)+':\x20'+_0xe2454b:'gateway\x20'+_0x4e9567(0x182));});}['queueCon'+_0x5bf23f(0x1b0)+_0x5bf23f(0x13e)+'eout'](){const _0x5e9d66=_0x5bf23f;this[_0x5e9d66(0x147)+_0x5e9d66(0x1d8)]=null,this['connectS'+_0x5e9d66(0x1e5)]=![];if(this[_0x5e9d66(0x1a0)+'hallenge'+_0x5e9d66(0x1d7)])clearTimeout(this[_0x5e9d66(0x1a0)+_0x5e9d66(0x1ed)+_0x5e9d66(0x1d7)]);this['connectC'+_0x5e9d66(0x1ed)+_0x5e9d66(0x1d7)]=setTimeout(()=>{const _0x45ef04=_0x5e9d66;if(this[_0x45ef04(0x1b7)+_0x45ef04(0x1e5)]||!this['ws']||this['ws'][_0x45ef04(0x184)+'te']!==_0x1fb79a[_0x45ef04(0x19d)])return;this[_0x45ef04(0x1f4)+_0x45ef04(0x17c)](_0x45ef04(0x188)+'WS\x20hands'+_0x45ef04(0x178)+_0x45ef04(0x17f)),this['ws']?.[_0x45ef04(0x187)](0x3f0,_0x45ef04(0x181)+_0x45ef04(0x16c)+_0x45ef04(0x15f)+'t');},0x7d0);}async[_0x5bf23f(0x1a9)+_0x5bf23f(0x1e9)](){const _0x1274e6=_0x5bf23f,_0x101bf9=this[_0x1274e6(0x144)];if(!_0x101bf9||this['connectS'+_0x1274e6(0x1e5)])return;const _0x4b09b6=this[_0x1274e6(0x147)+'once']?.[_0x1274e6(0x1e0)]()??'';if(!_0x4b09b6){this[_0x1274e6(0x1f4)+_0x1274e6(0x17c)](_0x1274e6(0x188)+_0x1274e6(0x1be)+_0x1274e6(0x148)+_0x1274e6(0x18e)+'ce'),this['ws']?.[_0x1274e6(0x187)](0x3f0,'connect\x20'+_0x1274e6(0x16c)+_0x1274e6(0x175)+_0x1274e6(0x1bc));return;}this['connectS'+_0x1274e6(0x1e5)]=!![];this[_0x1274e6(0x1a0)+_0x1274e6(0x1ed)+'Timer']&&(clearTimeout(this[_0x1274e6(0x1a0)+_0x1274e6(0x1ed)+_0x1274e6(0x1d7)]),this[_0x1274e6(0x1a0)+_0x1274e6(0x1ed)+_0x1274e6(0x1d7)]=null);if(!this[_0x1274e6(0x141)+_0x1274e6(0x14a)])try{this[_0x1274e6(0x141)+_0x1274e6(0x14a)]=loadOrCreateDeviceIdentity(_0x101bf9[_0x1274e6(0x134)+_0x1274e6(0x131)]);}catch(_0x164e0e){this[_0x1274e6(0x1f4)+_0x1274e6(0x17c)](_0x164e0e instanceof Error?_0x164e0e[_0x1274e6(0x179)]:_0x1274e6(0x1cb)+_0x1274e6(0x1ee)+_0x1274e6(0x143)+_0x1274e6(0x18d)),this['ws']?.[_0x1274e6(0x187)](0x3f0,_0x1274e6(0x150)+'dentity\x20'+_0x1274e6(0x1e6)+'ble');return;}const _0x865a94=_0x1274e6(0x145),_0x136b85=['operator'+_0x1274e6(0x173),_0x1274e6(0x145)+'.write',_0x1274e6(0x145)+_0x1274e6(0x154),_0x1274e6(0x145)+_0x1274e6(0x138)+'ls',_0x1274e6(0x145)+_0x1274e6(0x15b)],_0x1b75a3=_0x101bf9[_0x1274e6(0x1a2)][_0x1274e6(0x1e0)](),_0x578992=Date[_0x1274e6(0x136)](),_0xe58444=buildDeviceAuthPayloadV3({'deviceId':this['deviceId'+_0x1274e6(0x14a)][_0x1274e6(0x141)],'clientId':_0x101bf9[_0x1274e6(0x1ba)],'clientMode':_0x101bf9[_0x1274e6(0x1df)+'de'],'role':_0x865a94,'scopes':_0x136b85,'signedAtMs':_0x578992,'token':_0x1b75a3||null,'nonce':_0x4b09b6,'platform':process['platform'],'deviceFamily':_0x101bf9[_0x1274e6(0x1c2)+_0x1274e6(0x1f1)+'ly']}),_0x2f0df4={'minProtocol':0x4,'maxProtocol':0x4,'client':{'id':_0x101bf9['clientId'],'displayName':_0x101bf9['clientDi'+_0x1274e6(0x1b6)+'e'],'version':_0x101bf9[_0x1274e6(0x1f3)+'rsion'],'platform':process[_0x1274e6(0x1b3)],'deviceFamily':_0x101bf9[_0x1274e6(0x1c2)+_0x1274e6(0x1f1)+'ly'],'mode':_0x101bf9['clientMo'+'de']},'caps':[],'role':_0x865a94,'scopes':_0x136b85,'auth':_0x1b75a3?{'token':_0x1b75a3}:undefined,'device':{'id':this[_0x1274e6(0x141)+_0x1274e6(0x14a)]['deviceId'],'publicKey':publicKeyRawBase64UrlFromPem(this['deviceId'+_0x1274e6(0x14a)]['publicKe'+'yPem']),'signature':signDevicePayload(this[_0x1274e6(0x141)+_0x1274e6(0x14a)]['privateK'+_0x1274e6(0x1b9)],_0xe58444),'signedAt':_0x578992,'nonce':_0x4b09b6},'locale':Intl[_0x1274e6(0x160)+_0x1274e6(0x197)]()['resolved'+_0x1274e6(0x1b1)]()['locale'],'userAgent':_0x1274e6(0x1d6)+_0x1274e6(0x1a8)+_0x101bf9[_0x1274e6(0x1f3)+_0x1274e6(0x183)]};try{await this[_0x1274e6(0x169)](_0x1274e6(0x1a6),_0x2f0df4,{'timeoutMs':0x2710,'skipReadyCheck':!![]}),this[_0x1274e6(0x1af)+'d']=!![],this[_0x1274e6(0x185)+_0x1274e6(0x1e3)+'Ms']=0x320,this[_0x1274e6(0x164)+'eadyWait'+_0x1274e6(0x1d4)](),this['config']?.['onConnec'+_0x1274e6(0x19e)]?.();}catch(_0x10e282){this[_0x1274e6(0x1f4)+_0x1274e6(0x17c)](_0x10e282 instanceof Error?_0x10e282['message']:_0x1274e6(0x188)+_0x1274e6(0x1d0)+_0x1274e6(0x1c1)+'d'),this['ws']?.[_0x1274e6(0x187)](0x3f0,_0x1274e6(0x181)+_0x1274e6(0x19b));}}[_0x5bf23f(0x1d2)+'ssage'](_0x3be32f){const _0x1ba5c5=_0x5bf23f;let _0x5b8ac8;try{_0x5b8ac8=JSON[_0x1ba5c5(0x1cc)](_0x3be32f);}catch{return;}if(!isRecord(_0x5b8ac8)||typeof _0x5b8ac8[_0x1ba5c5(0x189)]!==_0x1ba5c5(0x17e))return;if(_0x5b8ac8[_0x1ba5c5(0x189)]===_0x1ba5c5(0x157)){const _0x2facc6=typeof _0x5b8ac8['event']===_0x1ba5c5(0x17e)?_0x5b8ac8['event']:'';if(!_0x2facc6)return;const _0x379439=isRecord(_0x5b8ac8[_0x1ba5c5(0x158)])?_0x5b8ac8[_0x1ba5c5(0x158)]:{};if(_0x2facc6===_0x1ba5c5(0x14e)+_0x1ba5c5(0x16c)+'e'){const _0x1acb9a=typeof _0x379439[_0x1ba5c5(0x14c)]===_0x1ba5c5(0x17e)?_0x379439[_0x1ba5c5(0x14c)][_0x1ba5c5(0x1e0)]():'';if(!_0x1acb9a){this['handleDi'+_0x1ba5c5(0x17c)](_0x1ba5c5(0x188)+_0x1ba5c5(0x1be)+_0x1ba5c5(0x148)+'sing\x20non'+'ce'),this['ws']?.['close'](0x3f0,_0x1ba5c5(0x181)+'challeng'+_0x1ba5c5(0x175)+'g\x20nonce');return;}this[_0x1ba5c5(0x147)+_0x1ba5c5(0x1d8)]=_0x1acb9a,void this['sendConn'+_0x1ba5c5(0x1e9)]();return;}if(_0x2facc6===_0x1ba5c5(0x193))this[_0x1ba5c5(0x144)]?.[_0x1ba5c5(0x167)+_0x1ba5c5(0x1e5)]?.(_0x379439);if(_0x2facc6===_0x1ba5c5(0x135))this[_0x1ba5c5(0x144)]?.[_0x1ba5c5(0x1c5)+_0x1ba5c5(0x1de)]?.(_0x379439);return;}if(_0x5b8ac8['type']!==_0x1ba5c5(0x16e))return;const _0x660931=typeof _0x5b8ac8['id']===_0x1ba5c5(0x17e)?_0x5b8ac8['id']:'';if(!_0x660931)return;const _0xcb7364=this[_0x1ba5c5(0x1ce)][_0x1ba5c5(0x14b)](_0x660931);if(!_0xcb7364)return;const _0x203df7=isRecord(_0x5b8ac8[_0x1ba5c5(0x158)])?_0x5b8ac8['payload']:{},_0x4719f8=typeof _0x203df7[_0x1ba5c5(0x1e4)]===_0x1ba5c5(0x17e)?_0x203df7[_0x1ba5c5(0x1e4)]:'';if(_0xcb7364[_0x1ba5c5(0x165)+_0x1ba5c5(0x18b)]&&_0x4719f8===_0x1ba5c5(0x1e7))return;this['pending'][_0x1ba5c5(0x1e2)](_0x660931);_0xcb7364[_0x1ba5c5(0x14d)]&&(clearTimeout(_0xcb7364[_0x1ba5c5(0x14d)]),_0xcb7364[_0x1ba5c5(0x14d)]=null);if(_0x5b8ac8['ok']===!![]){_0xcb7364[_0x1ba5c5(0x1b8)](_0x5b8ac8['payload']);return;}const _0x30803b=isRecord(_0x5b8ac8[_0x1ba5c5(0x152)])?_0x5b8ac8[_0x1ba5c5(0x152)]:{},_0x5e0b08=typeof _0x30803b['message']===_0x1ba5c5(0x17e)?_0x30803b[_0x1ba5c5(0x179)]:_0x1ba5c5(0x188)+_0x1ba5c5(0x137)+_0x1ba5c5(0x1f2)+_0xcb7364[_0x1ba5c5(0x1ea)];_0xcb7364['reject'](new Error(_0x5e0b08));}[_0x5bf23f(0x168)+_0x5bf23f(0x1a5)](_0x4238a8=0x2ee0){const _0x5dd5fc=_0x5bf23f;if(this[_0x5dd5fc(0x1af)+'d'])return Promise[_0x5dd5fc(0x1b8)]();if(!this[_0x5dd5fc(0x144)])return Promise['reject'](new Error(_0x5dd5fc(0x188)+_0x5dd5fc(0x1a1)+'t\x20config'+_0x5dd5fc(0x14f)));if(!this['ws'])this[_0x5dd5fc(0x1a6)]();return new Promise((_0x3acdd1,_0x5b6d84)=>{const _0x139589=_0x5dd5fc,_0x27500e=setTimeout(()=>{const _0x35216e=_0x22e2;this['readyWai'+_0x35216e(0x15e)]=this['readyWai'+_0x35216e(0x15e)][_0x35216e(0x19a)](_0x488b32=>_0x488b32[_0x35216e(0x1b8)]!==_0x3acdd1),_0x5b6d84(new Error(_0x35216e(0x188)+_0x35216e(0x1d0)+_0x35216e(0x172)+'med\x20out'));},_0x4238a8);this[_0x139589(0x142)+_0x139589(0x15e)][_0x139589(0x190)]({'resolve':_0x3acdd1,'reject':_0x5b6d84,'timeout':_0x27500e});});}[_0x5bf23f(0x164)+'eadyWait'+_0x5bf23f(0x1d4)](){const _0xa2521=_0x5bf23f,_0x5da11e=[...this['readyWai'+'ters']];this[_0xa2521(0x142)+_0xa2521(0x15e)]=[];for(const _0x421458 of _0x5da11e){clearTimeout(_0x421458[_0xa2521(0x14d)]),_0x421458[_0xa2521(0x1b8)]();}}[_0x5bf23f(0x1ef)+_0x5bf23f(0x1bf)+'rs'](_0x432d6a){const _0x47522e=_0x5bf23f,_0x28d1ff=[...this['readyWai'+_0x47522e(0x15e)]];this[_0x47522e(0x142)+_0x47522e(0x15e)]=[];for(const _0x258f63 of _0x28d1ff){clearTimeout(_0x258f63[_0x47522e(0x14d)]),_0x258f63['reject'](_0x432d6a);}}[_0x5bf23f(0x1c3)+_0x5bf23f(0x198)](_0x392cbb){const _0x325579=_0x5bf23f;for(const [_0x36d79f,_0xe233a9]of this[_0x325579(0x1ce)]['entries']()){this[_0x325579(0x1ce)][_0x325579(0x1e2)](_0x36d79f),_0xe233a9[_0x325579(0x14d)]&&(clearTimeout(_0xe233a9[_0x325579(0x14d)]),_0xe233a9[_0x325579(0x14d)]=null),_0xe233a9['reject'](_0x392cbb);}}[_0x5bf23f(0x1f4)+_0x5bf23f(0x17c)](_0x2a17da){const _0x3fc5d4=_0x5bf23f;this['ws']&&(this['ws'][_0x3fc5d4(0x17a)+_0x3fc5d4(0x1ae)+'rs'](),this['ws']=null);this[_0x3fc5d4(0x1af)+'d']=![],this['connectN'+_0x3fc5d4(0x1d8)]=null,this[_0x3fc5d4(0x1b7)+_0x3fc5d4(0x1e5)]=![],this[_0x3fc5d4(0x1c3)+_0x3fc5d4(0x198)](new Error(_0x2a17da||_0x3fc5d4(0x188)+_0x3fc5d4(0x1ad)+'nnected')),this['rejectRe'+'adyWaite'+'rs'](new Error(_0x2a17da||_0x3fc5d4(0x188)+_0x3fc5d4(0x1ad)+_0x3fc5d4(0x1c6))),this[_0x3fc5d4(0x162)+_0x3fc5d4(0x1d4)]();if(_0x2a17da)this['config']?.[_0x3fc5d4(0x191)+_0x3fc5d4(0x16b)]?.(_0x2a17da);if(!this[_0x3fc5d4(0x155)+_0x3fc5d4(0x1a6)]||!this[_0x3fc5d4(0x144)])return;const _0xc27d13=this[_0x3fc5d4(0x185)+'tBackoff'+'Ms'];this[_0x3fc5d4(0x185)+_0x3fc5d4(0x1e3)+'Ms']=Math[_0x3fc5d4(0x1d1)](this['reconnec'+'tBackoff'+'Ms']*0x2,0x3a98),this[_0x3fc5d4(0x185)+'tTimer']=setTimeout(()=>{const _0x4fccad=_0x3fc5d4;this['reconnec'+_0x4fccad(0x13a)]=null,this['connect']();},_0xc27d13);}[_0x5bf23f(0x162)+_0x5bf23f(0x1d4)](){const _0x27fd67=_0x5bf23f;this['reconnec'+_0x27fd67(0x13a)]&&(clearTimeout(this[_0x27fd67(0x185)+_0x27fd67(0x13a)]),this[_0x27fd67(0x185)+_0x27fd67(0x13a)]=null),this['connectC'+_0x27fd67(0x1ed)+'Timer']&&(clearTimeout(this[_0x27fd67(0x1a0)+_0x27fd67(0x1ed)+_0x27fd67(0x1d7)]),this[_0x27fd67(0x1a0)+_0x27fd67(0x1ed)+'Timer']=null);}}
|
package/dist/src/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x40b15d,_0x4249b6){var _0x3366e2=_0x587e,_0x322c36=_0x40b15d();while(!![]){try{var _0x4e876e=-parseInt(_0x3366e2(0x10d))/0x1*(-parseInt(_0x3366e2(0x107))/0x2)+-parseInt(_0x3366e2(0x10c))/0x3*(parseInt(_0x3366e2(0x10f))/0x4)+parseInt(_0x3366e2(0x109))/0x5*(-parseInt(_0x3366e2(0x110))/0x6)+parseInt(_0x3366e2(0x10e))/0x7*(parseInt(_0x3366e2(0x10a))/0x8)+-parseInt(_0x3366e2(0x10b))/0x9+-parseInt(_0x3366e2(0x108))/0xa+parseInt(_0x3366e2(0x106))/0xb;if(_0x4e876e===_0x4249b6)break;else _0x322c36['push'](_0x322c36['shift']());}catch(_0x52c58d){_0x322c36['push'](_0x322c36['shift']());}}}(_0x23d5,0x99fb6));export{ensureOpenClawDoctorFixed,loadRuntimeInfo,prepareRuntime,runClawOnce,spawnClaw}from'./runtime.mjs';function _0x587e(_0x1da05a,_0x2a77e2){_0x1da05a=_0x1da05a-0x106;var _0x23d5c8=_0x23d5();var _0x587ea7=_0x23d5c8[_0x1da05a];return _0x587ea7;}function _0x23d5(){var _0x3ca475=['9870520HWoRBQ','30OvgUQe','160itQXru','9072423vZWRjn','589497Lmyreg','82955ZIhxIb','323827ONBxCY','12hDHAjh','1109466eELhgu','25532507eclDTL','26BfBHTk'];_0x23d5=function(){return _0x3ca475;};return _0x23d5();}export{createConfigController}from'./config-controller.mjs';export{createGatewayController}from'./gateway-controller.mjs';
|
package/dist/src/logging.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const _0x39de26=_0x1491;(function(_0x588c57,_0x324036){const _0x16279f=_0x1491,_0x85bb23=_0x588c57();while(!![]){try{const _0x1e69ad=parseInt(_0x16279f(0x15d))/0x1*(-parseInt(_0x16279f(0x160))/0x2)+parseInt(_0x16279f(0x15b))/0x3+-parseInt(_0x16279f(0x164))/0x4+-parseInt(_0x16279f(0x182))/0x5+parseInt(_0x16279f(0x17e))/0x6+-parseInt(_0x16279f(0x15c))/0x7+parseInt(_0x16279f(0x153))/0x8;if(_0x1e69ad===_0x324036)break;else _0x85bb23['push'](_0x85bb23['shift']());}catch(_0x1bf3fb){_0x85bb23['push'](_0x85bb23['shift']());}}}(_0x2bc7,0x5159c));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(_0x1eb52b,_0x48319c,_0xc5f90c=_0x48319c){const _0x2afc65=_0x1491,_0x2955ff=_0x1eb52b?.['logsDir'];if(!_0x2955ff||!_0x48319c)return null;const _0x5b70f4=join(_0x2955ff,_0x48319c,_0x48319c+'.log'),_0x886f0c=_0x5b70f4+':'+_0xc5f90c;return!loggers[_0x2afc65(0x185)](_0x886f0c)&&loggers['set'](_0x886f0c,createFileLogger({'filePath':_0x5b70f4,'context':_0xc5f90c,'maxBytes':LOG_MAX_BYTES,'keepCount':LOG_KEEP_COUNT})),loggers['get'](_0x886f0c);}function _0x2bc7(){const _0xefc3c7=['ot\x20found','textPrev','...','Object','name','env','zip','add','object','[Circula','pipe','stack','error','message','wujie-sh','\x20-Destin','pid','join','digest','9132256fZHtCo','dev','win32','entlyCon','nce=\x27Sil','length','ignore','toString','911526BKrehn','1765876HOOLWJ','44322VMFUQE','sPrefere','ectory\x20n','16CuLWWo','maxDepth','powershe','platform','198516fxXfQS','-Archive','includes','ing','with\x20cod','tinue\x27;','\x20failed\x20','map','isArray','.zip','base64','startsWi','Compress','cwd','data','close','-NoProfi','slice','array','ell-logs','string','Command','\x20-Path\x20','replace','from','catch','129618RkkjnE','filter','stringif','logs\x20dir','2386460AVYBRk','Array','trim','has'];_0x2bc7=function(){return _0xefc3c7;};return _0x2bc7();}function _0x1491(_0x31c962,_0x500b2b){_0x31c962=_0x31c962-0x143;const _0x2bc71f=_0x2bc7();let _0x1491fe=_0x2bc71f[_0x31c962];return _0x1491fe;}export function toHomePath(_0x445766){const _0x4ec5c5=_0x1491,_0x6e7fa=typeof _0x445766===_0x4ec5c5(0x178)?_0x445766:'';if(!_0x6e7fa)return'';const _0x1e3bbc=homedir(),_0x58639a=isAbsolute(_0x6e7fa)?_0x6e7fa:resolve(_0x6e7fa),_0x4ab815=relative(_0x1e3bbc,_0x58639a);if(!_0x4ab815||!_0x4ab815[_0x4ec5c5(0x16f)+'th']('..')&&!isAbsolute(_0x4ab815))return _0x4ab815?'~/'+_0x4ab815:'~';return _0x58639a;}export function hashText(_0x56ad6b){const _0x26835a=_0x1491;return createHash('sha256')['update'](String(_0x56ad6b))[_0x26835a(0x152)]('hex')[_0x26835a(0x175)](0x0,0x10);}export function truncateText(_0x2497b1,_0x39dfc7=CONTENT_PREVIEW_LENGTH){const _0x4f0e49=_0x1491,_0x1fbb50=String(_0x2497b1??'')[_0x4f0e49(0x17b)](/\s+/g,'\x20')[_0x4f0e49(0x184)]();if(_0x1fbb50[_0x4f0e49(0x158)]<=_0x39dfc7)return _0x1fbb50;return _0x1fbb50['slice'](0x0,_0x39dfc7)+_0x4f0e49(0x188);}export function summarizeText(_0x33fc77,_0x4e2794=CONTENT_PREVIEW_LENGTH){const _0x6cb0f5=_0x1491,_0x354307=String(_0x33fc77??'');return{'length':_0x354307[_0x6cb0f5(0x158)],'hash':hashText(_0x354307),'preview':truncateText(_0x354307,_0x4e2794),'truncated':_0x354307['length']>_0x4e2794};}export function summarizeError(_0xde5470){const _0x5840a9=_0x1491;if(_0xde5470 instanceof Error)return{'name':_0xde5470[_0x5840a9(0x144)],'message':_0xde5470[_0x5840a9(0x14d)],'stack':_0xde5470[_0x5840a9(0x14b)]};return{'message':String(_0xde5470)};}function summarizePathValue(_0xa01860){const _0x46717d=_0x1491;if(typeof _0xa01860!==_0x46717d(0x178))return _0xa01860;if(_0xa01860[_0x46717d(0x166)]('/')||_0xa01860['includes']('\x5c'))return toHomePath(_0xa01860);return _0xa01860;}export function summarizePayload(_0x1b76a9,_0x4c3b3f={}){const _0x11c50d=_0x1491,_0x48baae=_0x4c3b3f[_0x11c50d(0x161)]??0x4,_0x21b695=new WeakSet();function _0x277c9d(_0x1bd853,_0x220f24,_0x485ac1=''){const _0x1cca67=_0x11c50d;if(_0x1bd853==null)return _0x1bd853;if(typeof _0x1bd853==='string'){if(/message|content|prompt|text|body/i['test'](_0x485ac1))return summarizeText(_0x1bd853,_0x4c3b3f[_0x1cca67(0x187)+'iewLengt'+'h']);return summarizePathValue(_0x1bd853);}if(typeof _0x1bd853!==_0x1cca67(0x148))return _0x1bd853;if(_0x1bd853 instanceof Error)return summarizeError(_0x1bd853);if(_0x21b695[_0x1cca67(0x185)](_0x1bd853))return _0x1cca67(0x149)+'r]';if(_0x220f24>=_0x48baae)return'['+(Array[_0x1cca67(0x16c)](_0x1bd853)?_0x1cca67(0x183):_0x1cca67(0x143))+']';_0x21b695[_0x1cca67(0x147)](_0x1bd853);if(Array['isArray'](_0x1bd853))return{'type':_0x1cca67(0x176),'length':_0x1bd853[_0x1cca67(0x158)],'items':_0x1bd853['slice'](0x0,0x5)[_0x1cca67(0x16b)](_0x1191f3=>_0x277c9d(_0x1191f3,_0x220f24+0x1,_0x485ac1)),'truncated':_0x1bd853[_0x1cca67(0x158)]>0x5};const _0x5a8e16={};for(const [_0x416781,_0x43f47e]of Object['entries'](_0x1bd853)){_0x5a8e16[_0x416781]=_0x277c9d(_0x43f47e,_0x220f24+0x1,_0x416781);}return redactLogValue(_0x5a8e16);}return _0x277c9d(_0x1b76a9,0x0);}export function summarizeFilePaths(_0x387867=[]){const _0x1bef66=_0x1491;return(Array[_0x1bef66(0x16c)](_0x387867)?_0x387867:[])[_0x1bef66(0x16b)](_0x1e6224=>String(_0x1e6224||'')[_0x1bef66(0x184)]())[_0x1bef66(0x17f)](Boolean)[_0x1bef66(0x16b)](_0x579b38=>({'path':toHomePath(_0x579b38),'name':basename(_0x579b38)}));}function run(_0x508292,_0x1b25dc,_0x93c194={}){return new Promise((_0x573e91,_0x4a93f6)=>{const _0x56c36f=_0x1491,_0x1963dc=spawn(_0x508292,_0x1b25dc,{'cwd':_0x93c194[_0x56c36f(0x171)],'env':{...process.env,..._0x93c194[_0x56c36f(0x145)]??{}},'stdio':[_0x56c36f(0x159),_0x56c36f(0x14a),_0x56c36f(0x14a)]});let _0x13d622='';_0x1963dc['stderr']?.['on'](_0x56c36f(0x172),_0x5d5069=>{const _0x42edfa=_0x56c36f;_0x13d622+=_0x5d5069[_0x42edfa(0x15a)]();}),_0x1963dc['on'](_0x56c36f(0x14c),_0x4a93f6),_0x1963dc['on'](_0x56c36f(0x173),_0xedf2ea=>{const _0x84c974=_0x56c36f;if(_0xedf2ea===0x0){_0x573e91();return;}_0x4a93f6(new Error(_0x508292+(_0x84c974(0x16a)+_0x84c974(0x168)+'e=')+_0xedf2ea+':\x20'+_0x13d622));});});}export async function exportLogsArchive({logsDir:_0x529f63,targetDir:_0x124bd8,appVersion:appVersion=_0x39de26(0x154)}){const _0x3d3c67=_0x39de26;if(!_0x529f63||!existsSync(_0x529f63))throw new Error(_0x3d3c67(0x181)+_0x3d3c67(0x15f)+_0x3d3c67(0x186)+':\x20'+(_0x529f63||''));const _0x5da693=String(appVersion||_0x3d3c67(0x154))['replace'](/[^A-Za-z0-9._-]/g,'_'),_0x529109=new Date()['toISOStr'+_0x3d3c67(0x167)]()[_0x3d3c67(0x17b)](/[-:]/g,'')[_0x3d3c67(0x17b)](/\..+$/,''),_0x4a5710=_0x124bd8||tmpdir();await mkdir(_0x4a5710,{'recursive':!![]});const _0x3e0b00=join(_0x4a5710,_0x3d3c67(0x14e)+_0x3d3c67(0x177)+'-'+_0x529109+'-'+_0x5da693+_0x3d3c67(0x16d));if(process[_0x3d3c67(0x163)]===_0x3d3c67(0x155)){const _0x13f7f8=join(tmpdir(),_0x3d3c67(0x14e)+'ell-logs'+'-'+process[_0x3d3c67(0x150)]+'-'+Date['now']());await rm(_0x13f7f8,{'recursive':!![],'force':!![]}),await cp(_0x529f63,_0x13f7f8,{'recursive':!![],'force':!![]});try{const _0x31cfae=['$Progres'+_0x3d3c67(0x15e)+_0x3d3c67(0x157)+_0x3d3c67(0x156)+_0x3d3c67(0x169),_0x3d3c67(0x170)+_0x3d3c67(0x165)+_0x3d3c67(0x17a)+JSON[_0x3d3c67(0x180)+'y'](join(_0x13f7f8,'*'))+(_0x3d3c67(0x14f)+'ationPat'+'h\x20')+JSON[_0x3d3c67(0x180)+'y'](_0x3e0b00)+'\x20-Force'][_0x3d3c67(0x151)]('\x20'),_0x5a9443=Buffer[_0x3d3c67(0x17c)](_0x31cfae,'utf16le')[_0x3d3c67(0x15a)](_0x3d3c67(0x16e));await run(_0x3d3c67(0x162)+'ll.exe',[_0x3d3c67(0x174)+'le','-Encoded'+_0x3d3c67(0x179),_0x5a9443]);}finally{await rm(_0x13f7f8,{'recursive':!![],'force':!![]})[_0x3d3c67(0x17d)](()=>{});}}else await run(_0x3d3c67(0x146),['-r',_0x3e0b00,'.'],{'cwd':_0x529f63});return{'ok':!![],'path':_0x3e0b00};}
|
package/dist/src/plugin-sync.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x14ef7c,_0x250906){const _0x2c95ea=_0xb00c,_0x37aa79=_0x14ef7c();while(!![]){try{const _0x5416e4=parseInt(_0x2c95ea(0x1f6))/0x1+parseInt(_0x2c95ea(0x203))/0x2*(-parseInt(_0x2c95ea(0x20a))/0x3)+parseInt(_0x2c95ea(0x206))/0x4*(parseInt(_0x2c95ea(0x1ff))/0x5)+parseInt(_0x2c95ea(0x1f5))/0x6*(-parseInt(_0x2c95ea(0x208))/0x7)+parseInt(_0x2c95ea(0x1f8))/0x8*(-parseInt(_0x2c95ea(0x1fb))/0x9)+-parseInt(_0x2c95ea(0x1fe))/0xa*(parseInt(_0x2c95ea(0x209))/0xb)+parseInt(_0x2c95ea(0x207))/0xc;if(_0x5416e4===_0x250906)break;else _0x37aa79['push'](_0x37aa79['shift']());}catch(_0x2cd728){_0x37aa79['push'](_0x37aa79['shift']());}}}(_0xa99a,0x45753));function _0xb00c(_0x564c83,_0x461582){_0x564c83=_0x564c83-0x1f4;const _0xa99a62=_0xa99a();let _0xb00c4=_0xa99a62[_0x564c83];return _0xb00c4;}function _0xa99a(){const _0x382b7c=['1803212EtRWSw','1443108spFqAS','1141HCVsMy','465289hTEeBb','670938jGiLno','keys','pluginId','2874fTndmq','227414sOyonj','length','172232sxlvLV','has','local','18TDBngZ','disabled','enabled','40VmBLxa','5cIkZnD','entries','allow','installs','2ZpGCox','source','ByDefaul'];_0xa99a=function(){return _0x382b7c;};return _0xa99a();}import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'./utils.mjs';export function syncRuntimeManifestPlugins(_0x2fcfeb,_0x37dc10,_0xcb4a8={}){const _0x26469a=_0xb00c,_0x55a762=new Set(_0xcb4a8[_0x26469a(0x1fc)+_0x26469a(0x205)+'tPluginI'+'ds']??[]),_0x33c63d={...asRecord(_0x2fcfeb)},_0x2b1135={...asRecord(_0x33c63d[_0x26469a(0x200)])},_0x26172c={...asRecord(_0x33c63d[_0x26469a(0x202)])};let _0x1f32bf=asStringArray(_0x33c63d['allow']),_0x3ae8b9=![];for(const _0x28ae72 of _0x37dc10??[]){const _0x380564=getTrimmedString(_0x28ae72[_0x26469a(0x1f4)]);if(!_0x380564)continue;!(_0x380564 in _0x2b1135)&&(_0x2b1135[_0x380564]={'enabled':!_0x55a762[_0x26469a(0x1f9)](_0x380564)},_0x3ae8b9=!![]);if(asRecord(_0x2b1135[_0x380564])[_0x26469a(0x1fd)]!==![]){const _0x1f8591=dedupeStrings([..._0x1f32bf,_0x380564]);_0x1f8591[_0x26469a(0x1f7)]!==_0x1f32bf[_0x26469a(0x1f7)]&&(_0x1f32bf=_0x1f8591,_0x3ae8b9=!![]);}getTrimmedString(_0x28ae72[_0x26469a(0x204)])===_0x26469a(0x1fa)&&_0x380564 in _0x26172c&&(delete _0x26172c[_0x380564],_0x3ae8b9=!![]);}_0x33c63d[_0x26469a(0x200)]=_0x2b1135,_0x33c63d[_0x26469a(0x201)]=_0x1f32bf;if(Object[_0x26469a(0x20b)](_0x26172c)['length']>0x0)_0x33c63d['installs']=_0x26172c;else delete _0x33c63d[_0x26469a(0x202)];return{'plugins':_0x33c63d,'changed':_0x3ae8b9};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const _0x45e34d=_0xf206;(function(_0x4b884e,_0x5968ff){const _0x32c236=_0xf206,_0x28ec2e=_0x4b884e();while(!![]){try{const _0x1c4c8f=-parseInt(_0x32c236(0x1d6))/0x1+-parseInt(_0x32c236(0x1cc))/0x2+-parseInt(_0x32c236(0x1c4))/0x3*(parseInt(_0x32c236(0x1c5))/0x4)+-parseInt(_0x32c236(0x1d0))/0x5*(-parseInt(_0x32c236(0x1d5))/0x6)+-parseInt(_0x32c236(0x1c7))/0x7*(-parseInt(_0x32c236(0x1bf))/0x8)+parseInt(_0x32c236(0x1cf))/0x9*(-parseInt(_0x32c236(0x1d2))/0xa)+parseInt(_0x32c236(0x1c2))/0xb;if(_0x1c4c8f===_0x5968ff)break;else _0x28ec2e['push'](_0x28ec2e['shift']());}catch(_0x5217a8){_0x28ec2e['push'](_0x28ec2e['shift']());}}}(_0xadcd,0xb85c9));import{join}from'node:path';import{createFileLogger}from'@wujie-shell/logger';const RUNTIME_LOG_MAX_BYTES=0x2*0x400*0x400,RUNTIME_LOG_KEEP_COUNT=0x5,runtimeLoggers=new Map();function _0xadcd(){const _0x598319=['projectR','ion','1036226HCJkyf','ecs','logsDir','198bacqYW','10xufOxi','length','571370NiPhCt','appId','runtime.','79938fnIfjN','1286822hdvHxZ','wujiecla','ath','isArray','installP','skillsDi','workflow','logger','set','resolved','get','skills','sDir','ame','plugins','dataDirN','pluginSp','nodeVers','openclaw','productN','log','2209400zXjZPh','product','wBin','52364521HhpZuB','dAt','6tnxBtw','2492276QHYkNW','has','7qgCtAc','Version','runtime'];_0xadcd=function(){return _0x598319;};return _0xadcd();}export function createRuntimeLogger(_0x358fdf,_0x4eac90=_0x45e34d(0x1c9)){const _0x1cba63=_0x45e34d,_0x41a881=_0x358fdf?.[_0x1cba63(0x1ce)];if(!_0x41a881)return null;const _0xc2bb4d=join(_0x41a881,_0x1cba63(0x1c9),_0x1cba63(0x1d4)+_0x1cba63(0x1be)),_0x2348b5=_0xc2bb4d+':'+_0x4eac90;return!runtimeLoggers[_0x1cba63(0x1c6)](_0x2348b5)&&runtimeLoggers[_0x1cba63(0x1de)](_0x2348b5,createFileLogger({'filePath':_0xc2bb4d,'context':_0x4eac90,'maxBytes':RUNTIME_LOG_MAX_BYTES,'keepCount':RUNTIME_LOG_KEEP_COUNT})),runtimeLoggers[_0x1cba63(0x1e0)](_0x2348b5);}function _0xf206(_0x2548d8,_0x412a70){_0x2548d8=_0x2548d8-0x1b9;const _0xadcdb9=_0xadcd();let _0xf206a4=_0xadcdb9[_0x2548d8];return _0xf206a4;}export function summarizeShellConfig(_0x56fa35){const _0x3cbdf0=_0x45e34d;return{'appId':_0x56fa35[_0x3cbdf0(0x1d3)],'productName':_0x56fa35[_0x3cbdf0(0x1bd)+_0x3cbdf0(0x1e3)],'projectRoot':_0x56fa35[_0x3cbdf0(0x1ca)+'oot'],'dataDir':_0x56fa35['dataDir'],'dataDirName':_0x56fa35[_0x3cbdf0(0x1b9)+_0x3cbdf0(0x1e3)],'logsDirName':_0x56fa35[_0x3cbdf0(0x1dd)]?.['logsDirN'+_0x3cbdf0(0x1e3)],'logsDir':_0x56fa35['logger']?.[_0x3cbdf0(0x1ce)],'openclawVersion':_0x56fa35[_0x3cbdf0(0x1bc)]?.[_0x3cbdf0(0x1bc)+_0x3cbdf0(0x1c8)],'nodeVersion':_0x56fa35['openclaw']?.['nodeVers'+_0x3cbdf0(0x1cb)],'pluginSpecCount':_0x56fa35[_0x3cbdf0(0x1bc)]?.[_0x3cbdf0(0x1ba)+'ecs']?.[_0x3cbdf0(0x1d1)]??0x0,'localPluginCount':_0x56fa35[_0x3cbdf0(0x1bc)]?.[_0x3cbdf0(0x1df)+'LocalPlu'+'ginPaths']?.[_0x3cbdf0(0x1d1)]??0x0,'agentsDir':_0x56fa35[_0x3cbdf0(0x1bc)]?.['agentsDi'+'r'],'skillsDir':_0x56fa35[_0x3cbdf0(0x1bc)]?.[_0x3cbdf0(0x1db)+'r'],'workflowsDir':_0x56fa35[_0x3cbdf0(0x1bc)]?.[_0x3cbdf0(0x1dc)+_0x3cbdf0(0x1e2)]};}export function summarizeRuntimeManifest(_0x3ef995){const _0x170238=_0x45e34d;return{'generatedAt':_0x3ef995?.['generate'+_0x170238(0x1c3)],'openclawVersion':_0x3ef995?.[_0x170238(0x1bc)+_0x170238(0x1c8)],'nodeVersion':_0x3ef995?.[_0x170238(0x1bb)+_0x170238(0x1cb)],'pluginCount':Array[_0x170238(0x1d9)](_0x3ef995?.[_0x170238(0x1e4)])?_0x3ef995['plugins'][_0x170238(0x1d1)]:0x0,'pluginSpecCount':Array[_0x170238(0x1d9)](_0x3ef995?.[_0x170238(0x1ba)+_0x170238(0x1cd)])?_0x3ef995[_0x170238(0x1ba)+'ecs'][_0x170238(0x1d1)]:0x0,'agentsInstallPath':_0x3ef995?.['agents']?.[_0x170238(0x1da)+_0x170238(0x1d8)],'skillsInstallPath':_0x3ef995?.[_0x170238(0x1e1)]?.[_0x170238(0x1da)+_0x170238(0x1d8)],'wujieclawBin':_0x3ef995?.[_0x170238(0x1d7)+_0x170238(0x1c1)],'product':_0x3ef995?.[_0x170238(0x1c0)]};}
|