@wujie-shell/core 4.0.1 → 4.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/bin/wujie-shell.mjs +1 -1
  2. package/dist/src/agents/bundled-agent-skills.mjs +1 -1
  3. package/dist/src/agents/bundled-agents.mjs +1 -1
  4. package/dist/src/chat/media-archive.mjs +1 -1
  5. package/dist/src/chat/queue.mjs +1 -1
  6. package/dist/src/common/diagnostics.mjs +1 -1
  7. package/dist/src/common/logging.mjs +1 -1
  8. package/dist/src/common/runtime-logger.mjs +1 -1
  9. package/dist/src/common/user-events.mjs +1 -1
  10. package/dist/src/common/utils.mjs +1 -1
  11. package/dist/src/config/controller.mjs +1 -1
  12. package/dist/src/connectors/config-utils.mjs +1 -1
  13. package/dist/src/connectors/constants.mjs +1 -1
  14. package/dist/src/connectors/controller.mjs +1 -1
  15. package/dist/src/connectors/kdocs-cli.mjs +1 -1
  16. package/dist/src/electron/main.mjs +1 -1
  17. package/dist/src/electron/preload.mjs +1 -1
  18. package/dist/src/files/generated-files-store.mjs +1 -1
  19. package/dist/src/files/handlers.mjs +1 -1
  20. package/dist/src/gateway/chat-delta.mjs +1 -1
  21. package/dist/src/gateway/controller.mjs +1 -1
  22. package/dist/src/gateway/ws-client.mjs +1 -1
  23. package/dist/src/index.mjs +1 -1
  24. package/dist/src/log-reporting/handlers.mjs +1 -1
  25. package/dist/src/log-reporting/report-logs.mjs +1 -1
  26. package/dist/src/models/handlers.mjs +1 -1
  27. package/dist/src/preferences/store.mjs +1 -1
  28. package/dist/src/runtime/index.mjs +1 -1
  29. package/dist/src/runtime/patch-channel-plugin-runtime.mjs +1 -1
  30. package/dist/src/runtime/patch-chat-history-mixed-tool-content.mjs +1 -1
  31. package/dist/src/runtime/patch-session-store-sqlite.mjs +1 -1
  32. package/dist/src/runtime/plugin-sync.mjs +1 -1
  33. package/dist/src/sessions/agent-sessions-map-store.mjs +1 -1
  34. package/dist/src/sessions/runtime-bridge.mjs +1 -1
  35. package/dist/src/sessions/session-sqlite-store.mjs +1 -1
  36. package/dist/src/skills/import.mjs +1 -1
  37. package/dist/src/skills/market.mjs +1 -1
  38. package/dist/src/terminal/manager.mjs +1 -1
  39. package/dist/src/updates/controller.mjs +1 -1
  40. package/dist/src/updates/loader.mjs +1 -1
  41. package/package.json +3 -3
@@ -1 +1 @@
1
- const _0x3081d0=_0x5b27;(function(_0x21cb25,_0x476024){const _0x5e7172=_0x5b27,_0x3063cc=_0x21cb25();while(!![]){try{const _0xa4f77f=parseInt(_0x5e7172(0x3f2))/0x1*(-parseInt(_0x5e7172(0x341))/0x2)+-parseInt(_0x5e7172(0x2c5))/0x3+-parseInt(_0x5e7172(0x3a3))/0x4*(parseInt(_0x5e7172(0x343))/0x5)+-parseInt(_0x5e7172(0x36e))/0x6+parseInt(_0x5e7172(0x2e0))/0x7+-parseInt(_0x5e7172(0x1ed))/0x8*(parseInt(_0x5e7172(0x29d))/0x9)+parseInt(_0x5e7172(0x2bd))/0xa;if(_0xa4f77f===_0x476024)break;else _0x3063cc['push'](_0x3063cc['shift']());}catch(_0x42ea0a){_0x3063cc['push'](_0x3063cc['shift']());}}}(_0x2975,0x290a6));import{createHash,randomUUID}from'node:crypto';import{createServer}from'node:http';import{EventEmitter}from'node:events';import{readFile,stat,writeFile}from'node:fs/promises';import{basename,dirname,join}from'node:path';import _0xc20d82,{portNumbers}from'get-port';import{createLineBuffer}from'@wujie-shell/logger';import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'../common/utils.mjs';import{ensureOpenClawDoctorFixed,loadRuntimeInfo,spawnClaw}from'../runtime/index.mjs';import{ClawGatewayWsClient}from'./ws-client.mjs';import{ensureBundledAgents}from'../agents/bundled-agents.mjs';import{archiveChatAttachmentForHistory}from'../chat/media-archive.mjs';import{syncBundledAgentSkillsToConfig,filterSkillsForAgent}from'../agents/bundled-agent-skills.mjs';import{syncManagedSkillsToConfig}from'../skills/import.mjs';import{createMarketSkillRuntime}from'../skills/market.mjs';import{createShellLogger,summarizeError,summarizeFilePaths,summarizePayload,summarizeText,toHomePath}from'../common/logging.mjs';import{summarizeUserEventAttachments}from'../common/user-events.mjs';import{createGatewayChatQueue}from'../chat/queue.mjs';import{resolveGatewayChatDelta}from'./chat-delta.mjs';import{createSessionSqliteStore}from'../sessions/session-sqlite-store.mjs';const LOG_LIMIT=0x3e8,CLIENT_ID=_0x3081d0(0x386)+_0x3081d0(0x261),CLIENT_MODE=_0x3081d0(0x2de),CLIENT_DEVICE_FAMILY=_0x3081d0(0x2ea),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,AGENT_EVENT_SESSION_INVALIDATION_DEBOUNCE_MS=0x320,SHARED_CONTEXT_FILES=['AGENTS.m'+'d',_0x3081d0(0x282)+'T.md',_0x3081d0(0x3c9)+'.md',_0x3081d0(0x2f6)+'d','SOUL.md',_0x3081d0(0x31d),'USER.md'],DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!=='producti'+'on',IS_PACKAGED_RUNTIME=!process.env.VITE_DEV_SERVER_URL&&process.env.NODE_ENV===_0x3081d0(0x3e5)+'on',BACKGROUND_CHAT_HISTORY_SOURCES=new Set(['agent-ev'+_0x3081d0(0x388),_0x3081d0(0x243)+_0x3081d0(0x22c),_0x3081d0(0x1fc)+'hydratio'+'n','gateway-'+'ready',_0x3081d0(0x34d)+_0x3081d0(0x247)+_0x3081d0(0x392),'generate'+'d-files-'+_0x3081d0(0x212)+_0x3081d0(0x286),'session-'+'updated']);function hashForDiagnostic(_0x1dc85b){const _0x3865b7=_0x3081d0;return createHash(_0x3865b7(0x294))[_0x3865b7(0x3bf)](String(_0x1dc85b??''))[_0x3865b7(0x376)](_0x3865b7(0x244))['slice'](0x0,0xc);}function createEmptyChatHistoryResult(_0xd03099){return{'messages':[],'limit':_0xd03099,'hasMore':![],'nextCursor':null};}function _0x5b27(_0x451ea8,_0x38b228){_0x451ea8=_0x451ea8-0x1e2;const _0x297556=_0x2975();let _0x5b276a=_0x297556[_0x451ea8];return _0x5b276a;}function isChatHistoryNotFoundError(_0x358d77){const _0x5d7a4e=_0x3081d0;return _0x358d77 instanceof Error&&/\bHTTP 404\b/[_0x5d7a4e(0x20a)](_0x358d77[_0x5d7a4e(0x278)]);}function isCronRunSessionKey(_0x180a32){const _0x446694=_0x3081d0;return/^agent:[^:]+:cron:automation-[^:]+:run:[^:]+$/[_0x446694(0x20a)](String(_0x180a32??''));}function normalizeCronRunSessionKey(_0x5f9db3){const _0x143fd0=_0x3081d0,_0x51a3e6=getTrimmedString(_0x5f9db3);if(!isCronRunSessionKey(_0x51a3e6))return _0x51a3e6;return _0x51a3e6[_0x143fd0(0x289)](0x0,_0x51a3e6[_0x143fd0(0x3af)](_0x143fd0(0x3a0)));}export function syncBundledAgentRuntimeConfig(_0x57daae,_0x437a8d=[]){const _0x2124f0=_0x3081d0,_0x313aae=_0x437a8d[_0x2124f0(0x29e)](_0x1898fd=>{const _0x25a288=_0x2124f0,_0x40d3ad=asRecord(_0x1898fd);return asStringArray(_0x40d3ad[_0x25a288(0x1f7)+'y'])[_0x25a288(0x2fe)]>0x0||Object[_0x25a288(0x30a)](asRecord(_0x40d3ad[_0x25a288(0x1f6)+'rs']))[_0x25a288(0x2fe)]>0x0;});if(_0x313aae[_0x2124f0(0x2fe)]===0x0)return{'config':_0x57daae,'changed':![]};let _0x3275b9=![];const _0x405f1c={...asRecord(_0x57daae)},_0x178fbb={...asRecord(_0x405f1c[_0x2124f0(0x269)])},_0xb55446=Array['isArray'](_0x178fbb[_0x2124f0(0x2c4)])?_0x178fbb[_0x2124f0(0x2c4)]:[],_0x3300bb=_0xb55446[_0x2124f0(0x37b)](_0x24248f=>_0x24248f&&typeof _0x24248f===_0x2124f0(0x223)?{..._0x24248f}:_0x24248f),_0x19a43a={...asRecord(_0x405f1c[_0x2124f0(0x2f7)])};let _0x31e02f=asStringArray(_0x19a43a[_0x2124f0(0x320)]);const _0x10661d={...asRecord(_0x405f1c[_0x2124f0(0x2e5)])},_0x1ac449={...asRecord(_0x10661d[_0x2124f0(0x399)]??_0x405f1c[_0x2124f0(0x1f6)+'rs'])};for(const _0x7d7635 of _0x313aae){const _0x52d440=getTrimmedString(_0x7d7635[_0x2124f0(0x1f2)]);if(!_0x52d440)continue;const _0x276d80=_0x52d440==='main'?null:_0x3300bb[_0x2124f0(0x3cd)](_0x200868=>getTrimmedString(asRecord(_0x200868)['id'])===_0x52d440),_0x2feffd=asStringArray(_0x7d7635[_0x2124f0(0x1f7)+'y']);if(_0x276d80&&_0x2feffd['length']>0x0){_0x2124f0(0x1f7)+'y'in _0x276d80&&(delete _0x276d80[_0x2124f0(0x1f7)+'y'],_0x3275b9=!![]);const _0x1f5a8b=dedupeStrings([..._0x31e02f,..._0x2feffd]);JSON[_0x2124f0(0x3e0)+'y'](_0x1f5a8b)!==JSON['stringif'+'y'](_0x31e02f)&&(_0x31e02f=_0x1f5a8b,_0x3275b9=!![]);}const _0x139802=asRecord(_0x7d7635['mcpServe'+'rs']);if(Object[_0x2124f0(0x30a)](_0x139802)['length']>0x0){_0x276d80&&(_0x2124f0(0x1f6)+'rs'in _0x276d80&&(delete _0x276d80['mcpServe'+'rs'],_0x3275b9=!![]));for(const [_0x2e775b,_0xcab5ee]of Object[_0x2124f0(0x235)](_0x139802)){if(JSON[_0x2124f0(0x3e0)+'y'](_0x1ac449[_0x2e775b])===JSON[_0x2124f0(0x3e0)+'y'](_0xcab5ee))continue;_0x1ac449[_0x2e775b]=_0xcab5ee,_0x3275b9=!![];}}}return _0x3275b9&&(_0x178fbb['list']=_0x3300bb,_0x405f1c[_0x2124f0(0x269)]=_0x178fbb,Object[_0x2124f0(0x30a)](_0x1ac449)['length']>0x0&&(_0x10661d[_0x2124f0(0x399)]=_0x1ac449,_0x405f1c[_0x2124f0(0x2e5)]=_0x10661d),_0x31e02f[_0x2124f0(0x2fe)]>0x0&&(_0x19a43a[_0x2124f0(0x320)]=_0x31e02f,_0x405f1c[_0x2124f0(0x2f7)]=_0x19a43a)),{'config':_0x405f1c,'changed':_0x3275b9};}function nowIso(){const _0x3ef2ae=_0x3081d0;return new Date()[_0x3ef2ae(0x32a)+_0x3ef2ae(0x380)]();}function waitForChildExit(_0x826d60,_0x3af82c=0x1388){const _0x1dcb95=_0x3081d0;if(!_0x826d60||_0x826d60[_0x1dcb95(0x2ba)]!==null||_0x826d60[_0x1dcb95(0x3d7)+'de'])return Promise[_0x1dcb95(0x2a1)](!![]);return new Promise(_0x27843e=>{const _0x3c2388=_0x1dcb95;let _0x26f87a=![];const _0xfb4877=_0x4a5b09=>{const _0x5148ff=_0x5b27;if(_0x26f87a)return;_0x26f87a=!![],clearTimeout(_0x5725f9),_0x826d60[_0x5148ff(0x29b)]('exit',_0x206236),_0x826d60['off'](_0x5148ff(0x295),_0x206236),_0x27843e(_0x4a5b09);},_0x206236=()=>_0xfb4877(!![]),_0x5725f9=setTimeout(()=>_0xfb4877(![]),_0x3af82c);_0x826d60[_0x3c2388(0x25e)](_0x3c2388(0x2ee),_0x206236),_0x826d60['once'](_0x3c2388(0x295),_0x206236);});}function buildGatewayWsUrl(_0x17eb0a){const _0x2ca9fc=_0x3081d0;return _0x2ca9fc(0x3f9)+_0x2ca9fc(0x3ea)+_0x17eb0a;}function createInitialStatus(){const _0x4aa7af=_0x3081d0;return{'lifecycle':'stopped','health':_0x4aa7af(0x3ca),'port':null,'tokenPresent':![],'initialStartupComplete':![],'message':_0x4aa7af(0x335)+_0x4aa7af(0x394),'updatedAt':nowIso()};}export function createMainAgentFallback(_0x3b0d59){const _0x5eed48=_0x3081d0;return{'id':_0x5eed48(0x379),'name':'通用','workspace':join(_0x3b0d59['resolveS'+'tateDir'](),_0x5eed48(0x38c)+'e')};}export async function readConfiguredAgentsForPendingList(_0x451a84){const _0x659d0b=_0x3081d0;try{const _0x30496e=await _0x451a84[_0x659d0b(0x20f)+_0x659d0b(0x2d8)](),_0x4b6ad2=asRecord(_0x30496e['agents']);return Array['isArray'](_0x4b6ad2['list'])?_0x4b6ad2['list']:[];}catch{return[];}}export function orderAgentsByConfiguredList(_0x1aa74a,_0x173fec){const _0x5dcc74=_0x3081d0,_0x446387=Array[_0x5dcc74(0x23b)](_0x1aa74a)?_0x1aa74a:[],_0x3ab0f3=Array[_0x5dcc74(0x23b)](_0x173fec)?_0x173fec:[];if(_0x3ab0f3[_0x5dcc74(0x2fe)]===0x0)return[..._0x446387];const _0x467997=new Map();for(const _0xd697a8 of _0x446387){const _0x44450f=getTrimmedString(asRecord(_0xd697a8)['id']);if(_0x44450f&&!_0x467997[_0x5dcc74(0x2e1)](_0x44450f))_0x467997[_0x5dcc74(0x34c)](_0x44450f,_0xd697a8);}const _0x4ce71d=new Set(),_0x1bb39c=[];for(const _0x21de15 of _0x3ab0f3){const _0x5570da=getTrimmedString(asRecord(_0x21de15)['id']);if(!_0x5570da||_0x4ce71d[_0x5dcc74(0x2e1)](_0x5570da))continue;const _0x64af12=_0x467997[_0x5dcc74(0x3bd)](_0x5570da);_0x1bb39c[_0x5dcc74(0x2b3)](_0x64af12?{..._0x21de15,..._0x64af12}:_0x21de15),_0x4ce71d['add'](_0x5570da);}for(const _0x209350 of _0x446387){const _0x1435aa=getTrimmedString(asRecord(_0x209350)['id']);if(!_0x1435aa||_0x4ce71d[_0x5dcc74(0x2e1)](_0x1435aa))continue;_0x1bb39c[_0x5dcc74(0x2b3)](_0x209350),_0x4ce71d[_0x5dcc74(0x203)](_0x1435aa);}return _0x1bb39c;}function extractGatewayMessageText(_0x150692){const _0x238e66=_0x3081d0;if(typeof _0x150692===_0x238e66(0x2dd))return _0x150692;if(!Array['isArray'](_0x150692))return'';const _0x11e714=[];for(const _0x139ae4 of _0x150692){if(typeof _0x139ae4===_0x238e66(0x2dd)){if(_0x139ae4)_0x11e714[_0x238e66(0x2b3)](_0x139ae4);continue;}const _0x1f5585=asRecord(_0x139ae4);_0x1f5585[_0x238e66(0x3c0)]===_0x238e66(0x3e2)&&typeof _0x1f5585['text']===_0x238e66(0x2dd)&&_0x1f5585[_0x238e66(0x3e2)]&&_0x11e714[_0x238e66(0x2b3)](_0x1f5585[_0x238e66(0x3e2)]);}return _0x11e714['join']('\x0a');}function _0x2975(){const _0x53937c=['event\x20re','backgrou','hex','run','achments','d-files-','new-sess','ey\x20is\x20re','key','listen','resolved','bundled\x20','custom\x20m','chat\x20att','t\x20connec','odel\x20set','ceived','agents\x20l','null','call','Version','data','ord','skills\x20s','process\x20','delete\x20c','limit','unhealth','once','not_foun','split','client','achment\x20','mimeType','efaultMo','attachme','led','eam\x20fail','cron.rem','agents','write','provider','agents.l','er\x20stop\x20','ucceeded','/ask-use','version','eway','image/jp','red','nPluginE','allow','ession\x20i','\x20failed\x20','message','enabled',':session','saveCust','modelNam','then','andledIn','ck\x20skipp','t\x20output','ck\x20disab','HEARTBEA','arge:\x20','-questio','\x20handled','sync','\x20signal=','http://1','slice','ded','remove','catch','d\x20active','SIGTERM','notifyGa','\x20context','p\x20timing','connecte','artFallb','sha256','close','agents-u','reate','writeHea','eam.fail','text/pla','off','pted\x20by\x20','3501UriuwC','filter','session\x20','enqueue','resolve','ssionRec','ayRestar','ndled\x20ag','igWriteH','Keys','e\x20shared','join','done','\x20waiting','warn','Claw\x20gat','uested','settings','ested','closed','succeede','eviceIde','push','skills\x20c','skills.u','ase\x20retr','applicat','kdown','chat.sen','exitCode','changed','ist','11909000vXgBhP','default','nts.prep','source','by\x20gatew','patch','r-questi','list','609555zPBFsx','jobId','sted','eam\x20requ','restart','\x20by\x20shel','not\x20Open','ed;\x20plug','nected','answer','peratedM','image/gi','getPinne','tings','bundled-','eded','delete','skill\x20de','ared','igRaw','end','hell:gat','toString','next-mes','string','backend','und','363713xuBGaq','has','nc\x20compl','chat\x20run','archive\x20','mcp','parentSe','sessions','emit','ask-user','desktop','message\x20','wujieai.','requeste','exit','stdout','setSelfO','system','rt\x20reque','exited','chat\x20abo','chat\x20eve','MEMORY.m','tools','\x20run\x20--a','ensureGa','resolveS','Fallback','startedA','toLowerC','length','log','paths','pluginId','terminal','eam.acce','ut\x20recei','chat\x20his','WorkingD','jobId\x20is','agentRun','\x20prepare','keys','text/mar','ion/json','openclaw','orphan\x20s','agents\x20s','sessionK','vider','setGatew','chat','controll','tatus\x20lo','tewaySet','t\x20discon','unconfig','sionLoca','assistan','utf8','oot','TOOLS.md','restartO','delta','deny','nstall','schedule','.patch','tings\x20up','label','c\x20starte','rename.s','function','itialCon','toISOStr','spawn\x20re','request','setSessi','[media\x20a','.list','\x20request','updatedA','lete\x20req','llow-unc','pted','gateway\x20','isFile','ted','cron.run','ssionKey','modelRef','--token','ion','anscript','t\x20not\x20fo','isAskUse','n\x20reques','542rFWjSC','nt\x20too\x20l','432275MzyPZW','runId','ginConfi','\x20gateway','parse','omModel','ties','[REDACTE','writeCon','set','generate','ills\x20syn','ensureIn','agent_id','tatus','defaultI','phase','x-ask-us','er\x20start','ion/octe','TED]\x20--p','timeout','skillKey','SIGKILL','quested','agentId','--allow-','ist\x20requ','agent\x20sk','some','onfigPat','created','trimEnd','Timer','.create','delSetti','ubscribe','create\x20r','nChange','equested','ay\x20state','elete\x20is','deleted','1075206LRwTjD','sent','gateway','requestI','tHandler','.failed','expr','configur','digest','stack','values','main','plugins','map','gatewayS','eted','\x20failed','running','ing','productN','settled','mModels','configFi','n\x20callba','gateway-','size','ent','applySes','.subscri','not\x20foun','workspac','flush','resolveC','markConf','reconnec','pinnedKe','rebuild','ed:\x20','stopped','127.0.0.','c\x20comple','ing,\x20ple','ternally','servers','messageI','prototyp','restarti','channel','json','sessionI',':run:','started,','nfig\x20syn','12tCxzgL','uired','invalid\x20','ured','websocke','onOrphan','updated','onfig\x20sy','capabili','ut.recei','stateDir','stall\x20fa','indexOf','runtimeR','failed','tateDir','state','pinned\x20k','errorMes','projectR','config','ode=','text/csv','killKey','renamed','exited\x20c','get','starting','update','type','lifecycl','eys\x20upda','delete.s','session_','ion/pdf','date\x20req','pid','c\x20failed','IDENTITY','unknown','iled','kUserQue','find','splice','installP','\x20list\x20co','Settings','lMetadat','eway:','chat_str','cron-cha','error','signalCo','Bin','skills.d','user\x20inp','quired','unshift','unauthor','user','model','stringif','max','text','rQuestio','time','producti','now','setModel','eway]\x20bu','ated','.0.0.1:','ced','ompleted','fig','gnored','ensureAs','onfigure','ntityPat','471jyknNY','chat\x20fai','floor','startsWi','aToList','aded','ync\x20fail','ws://127','resolveD','aborted','ting:\x20','0.1.0','odels','stderr','updated_','deleteCu','led:\x20','e\x20update','cron','answers','--port','t_output','exited\x20u','skill\x20up','sage','toUpperC','session.','6280MmPIfy','skills','fileName','token','final','name','dSession','res','health','mcpServe','toolsDen','skills.i','modelPro','nged','clear','channel-','start','port','discover','getModel','manual\x20r','ewayRest','add','deleteTr','.delete','method','tory','operty','pdate','test','eys-upda','boolean','mpleted','stop','readConf','deleteSe','ame','session-','estart','ate','skill\x20in','session','outputTe','stall\x20co','info','leName','rename\x20c','nabled','managed\x20','image/we','user_inp','dly','ized','image','object','hasOwnPr','cursor','ase','tokenPre','content','eam\x20queu','status','getCusto','nd-poll','ved','setPinne','\x20run','\x20settled','random','models','allowGat','equired','entries','started','image/pn','chat\x20str','history_','kill','isArray','events\x20s','Session','mapSkill','t-stream','-invalid','filePath'];_0x2975=function(){return _0x53937c;};return _0x2975();}function extractGatewayChatText(_0x36c5f8){const _0x42cd5e=_0x3081d0,_0x551e4f=asRecord(_0x36c5f8);if(typeof _0x551e4f[_0x42cd5e(0x3e2)]===_0x42cd5e(0x2dd))return _0x551e4f[_0x42cd5e(0x3e2)];return extractGatewayMessageText(_0x551e4f['content']);}function applySkillConfigStateToStatus(_0x714374,_0x48bd21){const _0x4b1342=_0x3081d0,_0x19630f=asRecord(_0x714374),_0x3339ad=Array[_0x4b1342(0x23b)](_0x19630f[_0x4b1342(0x1ee)])?_0x19630f['skills']:[];if(_0x3339ad[_0x4b1342(0x2fe)]===0x0)return _0x714374;const _0xb4f70f=asRecord(asRecord(asRecord(_0x48bd21)[_0x4b1342(0x1ee)])[_0x4b1342(0x235)]);if(Object[_0x4b1342(0x30a)](_0xb4f70f)[_0x4b1342(0x2fe)]===0x0)return _0x714374;const _0x1456c6=_0x3339ad[_0x4b1342(0x37b)](_0x2c5b77=>{const _0x431943=_0x4b1342,_0x5e1ae8=asRecord(_0x2c5b77),_0x2862ea=[getTrimmedString(_0x5e1ae8[_0x431943(0x37c)+_0x431943(0x3ba)]),getTrimmedString(_0x5e1ae8[_0x431943(0x359)]),getTrimmedString(_0x5e1ae8['name'])]['filter'](Boolean),_0xe61150=_0x2862ea['find'](_0x4ff2cb=>Object[_0x431943(0x39b)+'e'][_0x431943(0x224)+_0x431943(0x208)][_0x431943(0x255)](_0xb4f70f,_0x4ff2cb));if(!_0xe61150)return _0x2c5b77;const _0x4852dc=asRecord(_0xb4f70f[_0xe61150]);if(typeof _0x4852dc[_0x431943(0x279)]!==_0x431943(0x20c))return _0x2c5b77;return{..._0x5e1ae8,'disabled':_0x4852dc[_0x431943(0x279)]===![]};});return{..._0x19630f,'skills':_0x1456c6};}function guessMimeType(_0x27214c){const _0x2dc378=_0x3081d0,_0x256768=_0x27214c[_0x2dc378(0x260)]('.')['pop']()?.[_0x2dc378(0x2fd)+_0x2dc378(0x226)]()??'',_0x14f100={'png':_0x2dc378(0x237)+'g','jpg':_0x2dc378(0x272)+'eg','jpeg':_0x2dc378(0x272)+'eg','webp':_0x2dc378(0x21e)+'bp','gif':_0x2dc378(0x2d0)+'f','svg':'image/sv'+'g+xml','pdf':_0x2dc378(0x2b7)+_0x2dc378(0x3c5),'txt':_0x2dc378(0x29a)+'in','md':_0x2dc378(0x30b)+_0x2dc378(0x2b8),'json':_0x2dc378(0x2b7)+_0x2dc378(0x30c),'csv':_0x2dc378(0x3b9)};return _0x14f100[_0x256768]||_0x2dc378(0x2b7)+_0x2dc378(0x356)+_0x2dc378(0x23f);}async function buildAttachments(_0x2410fb=[],_0xf85ba9={}){const _0x22f0d3=_0x3081d0,_0x16cee2=[],_0x310888=[];for(const _0x4129c1 of _0x2410fb){const _0x48bd4d=getTrimmedString(_0x4129c1);if(!_0x48bd4d)continue;const _0x32585a=await stat(_0x48bd4d);if(!_0x32585a[_0x22f0d3(0x336)]())continue;if(_0x32585a[_0x22f0d3(0x387)]>ATTACHMENT_MAX_BYTES)throw new Error(_0x22f0d3(0x265)+_0x22f0d3(0x342)+_0x22f0d3(0x283)+basename(_0x48bd4d));const _0x5df250=guessMimeType(_0x48bd4d);_0x16cee2[_0x22f0d3(0x2b3)]({'type':_0x5df250[_0x22f0d3(0x3f5)+'th']('image/')?_0x22f0d3(0x222):'file','mimeType':_0x5df250,'content':(await readFile(_0x48bd4d))['toString']('base64'),'fileName':basename(_0x48bd4d)});if(_0xf85ba9[_0x22f0d3(0x310)+'ey']&&_0xf85ba9['stateDir']){const _0x28809e=await archiveChatAttachmentForHistory({'mediaPath':_0x48bd4d,'sessionKey':_0xf85ba9[_0x22f0d3(0x310)+'ey'],'stateDir':_0xf85ba9[_0x22f0d3(0x3ad)],'onWarn':_0x982cac=>_0xf85ba9['onWarn']?.(_0x982cac)});_0x310888[_0x22f0d3(0x2b3)](_0x22f0d3(0x32e)+'ttached:'+'\x20'+_0x28809e+'\x20('+_0x5df250+')]');}}return{'attachments':_0x16cee2,'historyMediaLines':_0x310888};}function buildSessionCreateRequestPayload(_0xbbae88={}){const _0x4017e9=_0x3081d0,_0x25d671={},_0x35eb17=Math[_0x4017e9(0x231)]()[_0x4017e9(0x2db)](0x24)['slice'](0x2,0xf),_0x47f3e4=getTrimmedString(_0xbbae88['agentId'])||_0x4017e9(0x379),_0x56ab7c=getTrimmedString(_0xbbae88[_0x4017e9(0x24a)])||'agent:'+_0x47f3e4+(_0x4017e9(0x27a)+'-')+Date[_0x4017e9(0x3e6)]();_0x25d671[_0x4017e9(0x24a)]=_0x56ab7c+'-'+_0x35eb17,_0x25d671[_0x4017e9(0x35c)]=_0x47f3e4;const _0x511ea4=getTrimmedString(_0xbbae88['label']);if(_0x511ea4)_0x25d671[_0x4017e9(0x325)]=_0x511ea4+'-'+_0x35eb17;for(const _0x5c2a95 of[_0x4017e9(0x3df),_0x4017e9(0x2e6)+_0x4017e9(0x339),'task',_0x4017e9(0x278)]){const _0x2b39ca=getTrimmedString(_0xbbae88[_0x5c2a95]);if(_0x2b39ca)_0x25d671[_0x5c2a95]=_0x2b39ca;}return _0x25d671;}function normalizeCronMutationParams(_0x472874={}){const _0x5a8261=_0x3081d0,_0x53c275={...asRecord(_0x472874)},_0x16f2d8=asRecord(_0x53c275[_0x5a8261(0x322)]);if(Object['keys'](_0x16f2d8)[_0x5a8261(0x2fe)]>0x0){const _0x420252={..._0x16f2d8},_0x278ff8=getTrimmedString(_0x420252[_0x5a8261(0x1e4)]);_0x278ff8&&!getTrimmedString(_0x420252[_0x5a8261(0x374)])&&(_0x420252[_0x5a8261(0x374)]=_0x278ff8),delete _0x420252[_0x5a8261(0x1e4)],_0x53c275[_0x5a8261(0x322)]=_0x420252;}return _0x53c275;}function parseSessionCreateResult(_0x20723d){const _0xf5b927=_0x3081d0,_0x276bb5=asRecord(_0x20723d),_0x2e13a2=asRecord(_0x276bb5[_0xf5b927(0x216)]);return{'ok':!![],'key':getTrimmedString(_0x276bb5['key'])||getTrimmedString(_0x276bb5['sessionK'+'ey'])||getTrimmedString(_0x2e13a2[_0xf5b927(0x24a)])||null,'sessionId':getTrimmedString(_0x276bb5[_0xf5b927(0x39f)+'d'])||getTrimmedString(_0x2e13a2[_0xf5b927(0x39f)+'d'])||null};}function getSessionKeyFromValue(_0x1dbbc2){const _0x1df8b9=_0x3081d0,_0x46be77=asRecord(_0x1dbbc2);return getTrimmedString(_0x46be77['sessionK'+'ey']??_0x46be77[_0x1df8b9(0x24a)]??_0x46be77['id']);}function filterValidSessionList(_0x22e61e,_0x1da11b={}){const _0x5f1251=_0x3081d0,_0x284192=asRecord(_0x22e61e),_0x466c7c=Array[_0x5f1251(0x23b)](_0x284192[_0x5f1251(0x2e7)])?_0x284192[_0x5f1251(0x2e7)]:[],_0x32c11f=typeof _0x1da11b[_0x5f1251(0x3a8)+_0x5f1251(0x23d)]===_0x5f1251(0x328)?_0x1da11b['onOrphan'+_0x5f1251(0x23d)]:null;return{..._0x284192,'sessions':_0x466c7c[_0x5f1251(0x37b)](_0x144bf6=>{const _0x37fd7e=_0x5f1251,_0x3a77fd=asRecord(_0x144bf6),_0xcea16a=getSessionKeyFromValue(_0x3a77fd);if(!_0xcea16a)return _0x144bf6;const _0x5a19f1=getTrimmedString(_0x3a77fd[_0x37fd7e(0x39f)+'d'])||getTrimmedString(_0x3a77fd['session_'+'id']);if(!_0x5a19f1)return _0x32c11f?.(_0xcea16a,{'updatedAt':_0x3a77fd[_0x37fd7e(0x331)+'t']??_0x3a77fd[_0x37fd7e(0x400)+'at']??null,'agentId':getTrimmedString(_0x3a77fd[_0x37fd7e(0x35c)]??_0x3a77fd[_0x37fd7e(0x350)])}),null;return _0x3a77fd;})[_0x5f1251(0x29e)](Boolean)};}function sanitizeSharedContextPayload(_0x59e4d1){const _0x51cc9a=_0x3081d0,_0x5cf54d=asRecord(_0x59e4d1),_0x59079a={};for(const _0x1d1af4 of SHARED_CONTEXT_FILES){if(typeof _0x5cf54d[_0x1d1af4]===_0x51cc9a(0x2dd))_0x59079a[_0x1d1af4]=_0x5cf54d[_0x1d1af4];}return _0x59079a;}async function readSharedContext(_0x3f4088){const _0x3ad22e=_0x3081d0,_0x5df6c4={};for(const _0x1a49fd of SHARED_CONTEXT_FILES){try{_0x5df6c4[_0x1a49fd]=await readFile(join(_0x3f4088,_0x1a49fd),_0x3ad22e(0x31b));}catch{_0x5df6c4[_0x1a49fd]='';}}return _0x5df6c4;}async function writeSharedContext(_0x5b5ead,_0x7b034a){const _0x33964f=_0x3081d0,_0x5bc8ec=sanitizeSharedContextPayload(_0x7b034a);await mkdir(_0x5b5ead,{'recursive':!![]});for(const [_0xf5ce05,_0x2b22e1]of Object[_0x33964f(0x235)](_0x5bc8ec)){await writeFile(join(_0x5b5ead,_0xf5ce05),_0x2b22e1,_0x33964f(0x31b));}return{'ok':!![],'files':Object['keys'](_0x5bc8ec)};}function createAskUserQuestionServer({configController:_0x3a6f2a,emit:_0x42f70a}){const _0x531268=new Map();let _0x599f09=null,_0x442db1='',_0xc9ac7d='';async function _0x3c1759(){const _0x257338=_0x5b27;if(_0x599f09)return{'callbackUrl':_0x442db1,'secret':_0xc9ac7d};_0xc9ac7d=randomUUID();const _0x308083=await _0xc20d82({'port':portNumbers(0x332c,0x338f)});return _0x442db1=_0x257338(0x288)+'27.0.0.1'+':'+_0x308083+(_0x257338(0x26f)+_0x257338(0x2c3)+'on'),_0x599f09=createServer(async(_0x171ac9,_0x4b80a3)=>{const _0x452727=_0x257338;if(_0x171ac9[_0x452727(0x206)]!=='POST'||_0x171ac9['url']!==_0x452727(0x26f)+_0x452727(0x2c3)+'on'){_0x4b80a3['writeHea'+'d'](0x194),_0x4b80a3[_0x452727(0x2d9)](_0x452727(0x38b)+'d');return;}if(_0x171ac9['headers'][_0x452727(0x354)+'er-secre'+'t']!==_0xc9ac7d){_0x4b80a3[_0x452727(0x298)+'d'](0x191),_0x4b80a3[_0x452727(0x2d9)](_0x452727(0x3dd)+_0x452727(0x221));return;}let _0x2dace6='';_0x171ac9['on'](_0x452727(0x257),_0x240ecc=>{const _0x16539a=_0x452727;_0x2dace6+=_0x240ecc[_0x16539a(0x2db)]();if(_0x2dace6[_0x16539a(0x2fe)]>0x400*0x400)_0x171ac9['destroy']();}),_0x171ac9['on'](_0x452727(0x2d9),()=>{const _0x1df810=_0x452727;let _0x29944d={};try{_0x29944d=JSON[_0x1df810(0x347)](_0x2dace6||'{}');}catch{_0x4b80a3['writeHea'+'d'](0x190),_0x4b80a3[_0x1df810(0x2d9)](_0x1df810(0x3a5)+'json');return;}const _0x1a008d=randomUUID(),_0x1e9960=setTimeout(()=>{const _0x2c6614=_0x1df810;if(!_0x531268[_0x2c6614(0x2e1)](_0x1a008d))return;_0x531268['delete'](_0x1a008d),_0x4b80a3[_0x2c6614(0x298)+'d'](0xc8,{'content-type':_0x2c6614(0x2b7)+_0x2c6614(0x30c)}),_0x4b80a3[_0x2c6614(0x2d9)](JSON[_0x2c6614(0x3e0)+'y']({'behavior':_0x2c6614(0x320)}));},0x1d4c0);_0x531268['set'](_0x1a008d,{'res':_0x4b80a3,'timeout':_0x1e9960}),_0x42f70a(_0x1df810(0x2e9)+_0x1df810(0x284)+'n',{'requestId':_0x1a008d,...asRecord(_0x29944d)});});}),await new Promise((_0x4ce1cb,_0x21c499)=>{const _0x221aa6=_0x257338;_0x599f09['once'](_0x221aa6(0x3d6),_0x21c499),_0x599f09[_0x221aa6(0x24b)](_0x308083,_0x221aa6(0x395)+'1',()=>{const _0x4f6a0c=_0x221aa6;_0x599f09[_0x4f6a0c(0x29b)](_0x4f6a0c(0x3d6),_0x21c499),_0x4ce1cb();});}),await _0x3a6f2a[_0x257338(0x3ef)+_0x257338(0x3cc)+'stionPlu'+_0x257338(0x345)+'g']({'callbackUrl':_0x442db1,'secret':_0xc9ac7d}),{'callbackUrl':_0x442db1,'secret':_0xc9ac7d};}function _0x499408(_0x435390={}){const _0xdf3c12=_0x5b27,_0x5d0889=getTrimmedString(_0x435390[_0xdf3c12(0x371)+'d']);if(!_0x5d0889||!_0x531268['has'](_0x5d0889))throw new Error(_0xdf3c12(0x2e9)+_0xdf3c12(0x284)+_0xdf3c12(0x340)+_0xdf3c12(0x33e)+_0xdf3c12(0x2df));const _0x47e5ef=_0x531268[_0xdf3c12(0x3bd)](_0x5d0889);return _0x531268[_0xdf3c12(0x2d5)](_0x5d0889),clearTimeout(_0x47e5ef[_0xdf3c12(0x358)]),_0x47e5ef[_0xdf3c12(0x1f4)][_0xdf3c12(0x298)+'d'](0xc8,{'content-type':'applicat'+_0xdf3c12(0x30c)}),_0x47e5ef[_0xdf3c12(0x1f4)][_0xdf3c12(0x2d9)](JSON[_0xdf3c12(0x3e0)+'y']({'behavior':_0x435390['behavior']==='deny'?_0xdf3c12(0x320):_0xdf3c12(0x275),'answers':asRecord(_0x435390[_0xdf3c12(0x1e5)])})),{'ok':!![]};}async function _0x8a9a28(){const _0xe4bc58=_0x5b27;for(const [_0x15b2d3,_0x22e0ac]of _0x531268){_0x531268[_0xe4bc58(0x2d5)](_0x15b2d3),clearTimeout(_0x22e0ac[_0xe4bc58(0x358)]),_0x22e0ac[_0xe4bc58(0x1f4)]['writeHea'+'d'](0xc8,{'content-type':_0xe4bc58(0x2b7)+_0xe4bc58(0x30c)}),_0x22e0ac['res'][_0xe4bc58(0x2d9)](JSON['stringif'+'y']({'behavior':_0xe4bc58(0x320)}));}if(!_0x599f09)return;await new Promise(_0x19d341=>_0x599f09[_0xe4bc58(0x295)](_0x19d341)),_0x599f09=null;}return{'start':_0x3c1759,'answer':_0x499408,'stop':_0x8a9a28};}export function createGatewayController({shellConfig:_0x43f2dc,configController:_0x35d3c5,appVersion:appVersion=_0x3081d0(0x3fd),productRuntimeHooks:productRuntimeHooks={},userEventWriter:userEventWriter=null,sessionSqliteStore:sessionSqliteStore=null}){const _0x169de5=_0x3081d0,_0x3833d9=new EventEmitter(),_0x50cdb0=new ClawGatewayWsClient(),_0x486a8d=[],_0x2a8ecb=new Map(),_0x54de33=createGatewayChatQueue(),_0x2114cd=new Map(),_0x52ff43=new Set();let _0xc093ef=null,_0x5b2bb8='';const _0x2db430=createShellLogger(_0x35d3c5[_0x169de5(0x300)],_0x169de5(0x370)),_0x9c7e34=createShellLogger(_0x35d3c5[_0x169de5(0x300)],_0x169de5(0x313)),_0x24e925=createShellLogger(_0x35d3c5['paths'],_0x169de5(0x2e7)),_0x98ef73=createShellLogger(_0x35d3c5['paths'],_0x169de5(0x3ab)+_0x169de5(0x349)),_0x5bd7a5=sessionSqliteStore||createSessionSqliteStore({'stateDir':_0x35d3c5[_0x169de5(0x2fa)+_0x169de5(0x3b2)]()}),_0x278c22=createMarketSkillRuntime({'configController':_0x35d3c5}),_0x3ef396=createAskUserQuestionServer({'configController':_0x35d3c5,'emit':(_0x2350fb,_0x2cc9f2)=>_0x3833d9[_0x169de5(0x2e8)](_0x2350fb,_0x2cc9f2)});let _0x3f1ab9=createInitialStatus(),_0x43220f=null,_0x30d8f1=null,_0x2c089d=null,_0x5bafb2=![],_0x2de186=![],_0x3fa653=![],_0x1a5d8d=null,_0x51a87a=Promise['resolve'](),_0x3a9aab=null,_0x11338b=0x0,_0x46646e=0x0;function _0xe59f0f(_0x537e31,_0x2ad7a6){const _0x4da88c=_0x169de5;_0x3833d9[_0x4da88c(0x2e8)](_0x537e31,_0x2ad7a6);}function _0x44e0e3(_0x1be0c1,_0x44f985){const _0x33af91=_0x169de5;return _0x3833d9['on'](_0x1be0c1,_0x44f985),()=>_0x3833d9[_0x33af91(0x29b)](_0x1be0c1,_0x44f985);}function _0xccc98e(_0x4dda70){const _0x16b46e=_0x169de5;userEventWriter?.[_0x16b46e(0x26a)](_0x4dda70)?.[_0x16b46e(0x28c)](()=>{});}function _0x33a78d(_0x4280de){const _0x1e5495=_0x169de5;_0x3f1ab9={..._0x3f1ab9,..._0x4280de,'updatedAt':nowIso()},_0xe59f0f(_0x1e5495(0x386)+_0x1e5495(0x22a),_0x3f1ab9);}function _0x5f3712(_0x1d5500,_0x38d72c,_0xe89969={}){const _0x543c67=_0x169de5;_0x33a78d({'lifecycle':_0x1d5500,'message':_0x38d72c,..._0x1d5500===_0x543c67(0x37f)?{'initialStartupComplete':!![]}:{},..._0xe89969}),_0xc66337(_0x543c67(0x2f1),_0x1d5500[_0x543c67(0x1eb)+_0x543c67(0x226)]()+'\x20'+_0x38d72c),_0x2db430?.[_0x543c67(0x219)](_0x543c67(0x335)+'lifecycl'+_0x543c67(0x1e3)+'d',{'lifecycle':_0x1d5500,'message':_0x38d72c,'status':{'health':_0x3f1ab9[_0x543c67(0x1f5)],'port':_0x3f1ab9['port'],'tokenPresent':_0x3f1ab9[_0x543c67(0x227)+_0x543c67(0x36f)]},...summarizePayload(_0xe89969)});}function _0xc66337(_0x42afed,_0x42f3da){const _0x33fbea=_0x169de5,_0x574472=String(_0x42f3da??'')[_0x33fbea(0x363)]();if(!_0x574472)return;if(DEBUG_STDOUT){const _0x2ddb31=_0x42afed===_0x33fbea(0x3ff)?console[_0x33fbea(0x3d6)]:console[_0x33fbea(0x219)];_0x2ddb31('[wujie-s'+_0x33fbea(0x2da)+_0x33fbea(0x3d3)+_0x42afed+']',_0x574472);}const _0x535e46={'source':_0x42afed,'text':_0x574472,'timestamp':nowIso()};_0x486a8d[_0x33fbea(0x2b3)](_0x535e46);if(_0x486a8d[_0x33fbea(0x2fe)]>LOG_LIMIT)_0x486a8d[_0x33fbea(0x3ce)](0x0,_0x486a8d[_0x33fbea(0x2fe)]-LOG_LIMIT);_0xe59f0f(_0x33fbea(0x386)+_0x33fbea(0x2ff),_0x535e46),/\[gateway\]\s+ready\b/['test'](_0x574472)&&_0x50cdb0[_0x33fbea(0x28f)+'tewayRea'+'dy'](),_0x2db430?.[_0x33fbea(0x219)](_0x33fbea(0x335)+_0x33fbea(0x2ff),{'source':_0x42afed,'text':_0x574472});}function _0xe9ce06(_0x40a523,_0x326005,_0x42d0b9={}){const _0x2a508a=_0x169de5,_0x2cbfd3=_0x326005+':'+_0x40a523;if(_0x52ff43[_0x2a508a(0x2e1)](_0x2cbfd3))return;_0x52ff43[_0x2a508a(0x203)](_0x2cbfd3),_0x24e925?.[_0x2a508a(0x2ab)](_0x2a508a(0x30e)+_0x2a508a(0x276)+_0x2a508a(0x3ee),{'reason':_0x326005,'sessionKeyHash':hashForDiagnostic(_0x40a523),..._0x42d0b9});}function _0x9090d4(_0xd22482=0xc8){const _0xb5ad4e=_0x169de5;return _0x486a8d[_0xb5ad4e(0x289)](-Math[_0xb5ad4e(0x3e1)](0x1,Math[_0xb5ad4e(0x3f4)](_0xd22482)));}function _0x1b05c2(){const _0x345cd1=_0x169de5;if(!_0x43220f||_0x3f1ab9['lifecycl'+'e']!=='running')throw new Error('gateway\x20'+'is\x20start'+_0x345cd1(0x397)+_0x345cd1(0x2b6)+'y\x20shortl'+'y');}async function _0xdf8e7d(_0x30df02=0x3a98){const _0x769826=_0x169de5;if(_0x23b5ea())return!![];const _0x2df12e=Date[_0x769826(0x3e6)]();while(Date[_0x769826(0x3e6)]()-_0x2df12e<_0x30df02){await new Promise(_0x3b7fe1=>setTimeout(_0x3b7fe1,0xfa));if(_0x23b5ea())return!![];}return _0x1b05c2(),!![];}function _0x23b5ea(){const _0x4150d2=_0x169de5;return Boolean(_0x43220f&&_0x3f1ab9[_0x4150d2(0x3c1)+'e']===_0x4150d2(0x37f));}function _0x469f5f(_0x2c617a){_0xe59f0f('chat-str'+'eam-even'+'t',_0x2c617a);}function _0x20df08(){let _0x5d2017=![],_0x5828e9=()=>{};const _0x16413f=new Promise(_0x345dd4=>{_0x5828e9=()=>{if(_0x5d2017)return;_0x5d2017=!![],_0x345dd4();};});return{'settled':_0x16413f,'resolveSettled':_0x5828e9};}function _0x302ead(_0xae5349){const _0x53e333=_0x169de5,_0x26d065=_0x2a8ecb[_0x53e333(0x3bd)](_0xae5349);if(!_0x26d065)return null;_0x2a8ecb[_0x53e333(0x2d5)](_0xae5349);if(_0x26d065[_0x53e333(0x302)+_0x53e333(0x2fb)+'Timer'])clearTimeout(_0x26d065[_0x53e333(0x302)+_0x53e333(0x2fb)+_0x53e333(0x364)]);_0x54de33[_0x53e333(0x28b)](_0x26d065),_0x26d065['resolveS'+'ettled']?.();const _0x4f6091=_0x2114cd['get'](_0x26d065['sessionK'+'ey']);return(_0x4f6091===_0x26d065['runId']||_0x4f6091===_0x26d065[_0x53e333(0x371)+'d'])&&_0x2114cd[_0x53e333(0x2d5)](_0x26d065[_0x53e333(0x310)+'ey']),_0x26d065;}function _0x1182f9(_0x590d63,_0x300e48,_0x3db12c=''){const _0x44f166=_0x169de5,_0xc3a85c=_0x302ead(_0x590d63[_0x44f166(0x344)]);if(!_0xc3a85c)return;const _0x3cde85=Date['now']()-_0xc3a85c[_0x44f166(0x2fc)+'t'];_0x9c7e34?.[_0x44f166(0x219)](_0x44f166(0x2e3)+_0x44f166(0x230),{'requestId':_0xc3a85c[_0x44f166(0x371)+'d'],'runId':_0xc3a85c['runId'],'sessionKey':_0xc3a85c[_0x44f166(0x310)+'ey'],'outcome':_0x300e48,'durationMs':_0x3cde85,'textLength':_0xc3a85c['outputTe'+'xt'][_0x44f166(0x2fe)],..._0x3db12c?{'message':_0x3db12c}:{}}),_0xccc98e({'priority':'P0','category':'chat','event':_0x300e48===_0x44f166(0x3d6)?_0x44f166(0x31a)+_0x44f166(0x1e7)+_0x44f166(0x373):_0x44f166(0x31a)+'t_output'+'.succeed'+'ed','status':_0x300e48==='error'?_0x44f166(0x3b1):_0x300e48,'level':_0x300e48===_0x44f166(0x3d6)?_0x44f166(0x3d6):_0x44f166(0x219),'message':_0x300e48===_0x44f166(0x3d6)?_0x44f166(0x31a)+_0x44f166(0x280)+_0x44f166(0x37e):_0x44f166(0x31a)+_0x44f166(0x280)+'\x20complet'+'ed','sessionKey':_0xc3a85c[_0x44f166(0x310)+'ey'],'runId':_0xc3a85c[_0x44f166(0x344)],'agentId':_0xc3a85c[_0x44f166(0x35c)],'outputSummary':{'length':_0xc3a85c['outputTe'+'xt'][_0x44f166(0x2fe)],'preview':'','truncated':![]},'visibleError':_0x300e48===_0x44f166(0x3d6)?_0x3db12c:undefined,'durationMs':_0x3cde85,'captureIncident':_0x300e48==='error','meta':{'requestId':_0xc3a85c[_0x44f166(0x371)+'d'],'outcome':_0x300e48}}),_0x469f5f({'requestId':_0xc3a85c[_0x44f166(0x371)+'d'],'sessionKey':_0xc3a85c[_0x44f166(0x310)+'ey'],'type':_0x300e48,..._0x3db12c?{'message':_0x3db12c}:{}});}function _0x164297(_0x5180cd){const _0x4d6d3d=_0x169de5;let _0x23c3a0=null,_0x3f7b7c=null;for(const _0x5e12ad of _0x2a8ecb['values']()){if(_0x5e12ad[_0x4d6d3d(0x310)+'ey']===_0x5180cd){_0x23c3a0=_0x5e12ad;if(_0x5e12ad[_0x4d6d3d(0x236)])_0x3f7b7c=_0x5e12ad;}}return _0x3f7b7c??_0x23c3a0;}function _0x3caee8(_0x4c2c66){const _0x171e2c=_0x169de5;let _0x2962f4=null;for(const _0xec6621 of _0x2a8ecb['values']()){_0xec6621[_0x171e2c(0x310)+'ey']===_0x4c2c66&&_0xec6621[_0x171e2c(0x236)]&&(_0x2962f4=_0xec6621);}return _0x2962f4;}function _0x49873c(_0x1770fa){const _0x2fe2b1=_0x169de5;if(!_0x1770fa)return null;for(const _0x510a75 of _0x2a8ecb[_0x2fe2b1(0x378)]()){if(_0x510a75['requestI'+'d']===_0x1770fa)return _0x510a75;}return null;}function _0x2e11f5(_0x493b6a,_0x46e49b){const _0x3ea07d=_0x169de5,{nextText:_0x38f388,delta:_0x564206}=resolveGatewayChatDelta(_0x493b6a[_0x3ea07d(0x217)+'xt'],_0x46e49b);_0x493b6a[_0x3ea07d(0x217)+'xt']=_0x38f388,_0x564206&&_0x469f5f({'requestId':_0x493b6a['requestI'+'d'],'sessionKey':_0x493b6a['sessionK'+'ey'],'type':_0x3ea07d(0x31f),'delta':_0x564206});}function _0x2d1a22(_0x18a4c6,_0x4378c4,_0x45e3af=''){const _0x1fb7ae=_0x169de5;if(_0x18a4c6[_0x1fb7ae(0x302)+'Fallback'+_0x1fb7ae(0x364)])clearTimeout(_0x18a4c6[_0x1fb7ae(0x302)+'Fallback'+_0x1fb7ae(0x364)]);_0x18a4c6[_0x1fb7ae(0x302)+_0x1fb7ae(0x2fb)+_0x1fb7ae(0x364)]=setTimeout(()=>{const _0x9c5e21=_0x1fb7ae,_0x39bd14=_0x2a8ecb[_0x9c5e21(0x3bd)](_0x18a4c6['runId']);if(!_0x39bd14)return;_0x1182f9(_0x39bd14,_0x4378c4===_0x9c5e21(0x3d6)?_0x9c5e21(0x3d6):_0x9c5e21(0x2a9),_0x45e3af);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x807e40(_0x184499){const _0x4e6093=_0x169de5;for(const _0x2d8c88 of[..._0x2a8ecb[_0x4e6093(0x378)]()]){_0x9c7e34?.[_0x4e6093(0x2ab)](_0x4e6093(0x2e3)+_0x4e6093(0x277)+_0x4e6093(0x2c1)+_0x4e6093(0x36b),{'requestId':_0x2d8c88[_0x4e6093(0x371)+'d'],'runId':_0x2d8c88[_0x4e6093(0x344)],'sessionKey':_0x2d8c88[_0x4e6093(0x310)+'ey'],'durationMs':Date[_0x4e6093(0x3e6)]()-_0x2d8c88[_0x4e6093(0x2fc)+'t'],'reason':_0x184499}),_0x469f5f({'requestId':_0x2d8c88['requestI'+'d'],'sessionKey':_0x2d8c88['sessionK'+'ey'],'type':_0x4e6093(0x3d6),'message':_0x184499}),_0x302ead(_0x2d8c88[_0x4e6093(0x344)]);}_0x54de33[_0x4e6093(0x1fb)](),_0x2114cd['clear'](),_0xc093ef&&(clearTimeout(_0xc093ef),_0xc093ef=null),_0x5b2bb8='';}function _0x1a7519(_0x23b69e){const _0x59e2f8=_0x169de5;_0xe59f0f('sessions'+_0x59e2f8(0x240)+_0x59e2f8(0x3e9),_0x23b69e);}function _0xfab4dd(_0x3c17d4=''){if(_0x3c17d4)_0x5b2bb8=_0x3c17d4;_0xc093ef&&clearTimeout(_0xc093ef),_0xc093ef=setTimeout(()=>{const _0x161516=_0x5b27;_0xc093ef=null,_0x1a7519({'reason':'agent-ev'+_0x161516(0x388),..._0x5b2bb8?{'sessionKey':_0x5b2bb8}:{}}),_0x5b2bb8='';},AGENT_EVENT_SESSION_INVALIDATION_DEBOUNCE_MS);}function _0x4f0275(_0x39f06d){const _0x52a184=_0x169de5,_0x4264c0=getTrimmedString(_0x39f06d?.[_0x52a184(0x310)+'ey']),_0x101161=normalizeCronRunSessionKey(_0x4264c0),_0xeae501=_0x39f06d?.[_0x52a184(0x3c0)]===_0x52a184(0x36d)?_0x52a184(0x212)+_0x52a184(0x36d):_0x52a184(0x212)+_0x52a184(0x3a9),_0x2c5195=_0x4264c0&&_0x4264c0!==_0x101161?{..._0x39f06d,'sessionKey':_0x101161,'sourceSessionKey':_0x4264c0}:_0x39f06d;_0x1a7519({'reason':_0xeae501,..._0x101161?{'sessionKey':_0x101161}:{},..._0x4264c0&&_0x4264c0!==_0x101161?{'sourceSessionKey':_0x4264c0}:{}}),_0xe59f0f(_0x52a184(0x212)+_0x52a184(0x3a9),_0x2c5195);}function _0x37ba78(_0x2dc054){const _0xfab8d2=_0x169de5,_0x3bc353=getTrimmedString(_0x2dc054[_0xfab8d2(0x344)]),_0x1928b7=getTrimmedString(_0x2dc054[_0xfab8d2(0x3b3)])||_0xfab8d2(0x3a9),_0x4527de=getTrimmedString(_0x2dc054[_0xfab8d2(0x310)+'ey']),_0x9cc46b=(_0x3bc353?_0x2a8ecb['get'](_0x3bc353):null)??(_0x4527de?_0x3caee8(_0x4527de):null);if(_0x3bc353&&_0x4527de)_0x2114cd[_0xfab8d2(0x34c)](_0x4527de,_0x3bc353);if(_0x4527de)_0x4f0275({'sessionKey':_0x4527de,'state':_0x1928b7});_0x9c7e34?.[_0xfab8d2(0x219)](_0xfab8d2(0x335)+_0xfab8d2(0x2f5)+'nt\x20recei'+_0xfab8d2(0x22d),{'runId':_0x3bc353,'sessionKey':_0x4527de,'state':_0x1928b7,'hasActiveRun':Boolean(_0x9cc46b),'messageText':summarizeText(extractGatewayChatText(_0x2dc054[_0xfab8d2(0x278)]),0x78),'errorMessage':getTrimmedString(_0x2dc054[_0xfab8d2(0x3b5)+_0xfab8d2(0x1ea)])});_0x9cc46b&&(_0x1928b7==='final'||_0x1928b7===_0xfab8d2(0x3fb)||_0x1928b7===_0xfab8d2(0x3d6))&&_0x2d1a22(_0x9cc46b,_0x1928b7,typeof _0x2dc054[_0xfab8d2(0x3b5)+_0xfab8d2(0x1ea)]===_0xfab8d2(0x2dd)?_0x2dc054[_0xfab8d2(0x3b5)+_0xfab8d2(0x1ea)]:_0xfab8d2(0x335)+_0xfab8d2(0x3f3)+_0xfab8d2(0x266));if(!_0x9cc46b)return;if(_0x4527de&&_0x4527de!==_0x9cc46b[_0xfab8d2(0x310)+'ey'])return;if(_0x1928b7===_0xfab8d2(0x31f)){_0x2e11f5(_0x9cc46b,extractGatewayChatText(_0x2dc054[_0xfab8d2(0x278)]));return;}if(_0x1928b7===_0xfab8d2(0x1f1)||_0x1928b7===_0xfab8d2(0x3fb)){_0x2e11f5(_0x9cc46b,extractGatewayChatText(_0x2dc054[_0xfab8d2(0x278)])),_0x1182f9(_0x9cc46b,_0xfab8d2(0x2a9));return;}_0x1928b7==='error'&&_0x1182f9(_0x9cc46b,_0xfab8d2(0x3d6),typeof _0x2dc054[_0xfab8d2(0x3b5)+'sage']===_0xfab8d2(0x2dd)?_0x2dc054[_0xfab8d2(0x3b5)+'sage']:_0xfab8d2(0x335)+_0xfab8d2(0x3f3)+'led');}function _0x132df6(_0x5191c0){const _0x192177=_0x169de5,_0x3b03c0=asRecord(_0x5191c0);return getTrimmedString(_0x3b03c0[_0x192177(0x310)+'ey'])||getTrimmedString(_0x3b03c0[_0x192177(0x24a)])||getTrimmedString(_0x3b03c0[_0x192177(0x3c4)+_0x192177(0x24a)]);}function _0x45274c(_0x408f8d){const _0x542649=_0x169de5,_0x3cfabf=asRecord(_0x408f8d),_0x4d080d=_0x132df6(_0x3cfabf),_0x69fc82=getTrimmedString(_0x3cfabf[_0x542649(0x353)])||getTrimmedString(_0x3cfabf[_0x542649(0x3b3)])||getTrimmedString(_0x3cfabf['reason'])||'updated';_0x24e925?.[_0x542649(0x219)](_0x542649(0x335)+'session\x20'+_0x542649(0x242)+_0x542649(0x252),{'event':'sessions'+'.changed','sessionKey':_0x4d080d,'state':_0x69fc82,'channel':getTrimmedString(_0x3cfabf[_0x542649(0x39d)]),'agentId':getTrimmedString(_0x3cfabf[_0x542649(0x35c)]),'messageId':getTrimmedString(_0x3cfabf[_0x542649(0x39a)+'d']),'runId':getTrimmedString(_0x3cfabf['runId'])}),_0x4f0275({..._0x3cfabf,'type':getTrimmedString(_0x3cfabf[_0x542649(0x3c0)])||_0x542649(0x2bb),'state':_0x69fc82,..._0x4d080d?{'sessionKey':_0x4d080d}:{}});}function _0x122656(_0x5c8e9a){const _0x342a29=_0x169de5,_0x132159=asRecord(_0x5c8e9a),_0x4fe5c3=_0x132df6(_0x132159);_0x24e925?.['info']('gateway\x20'+_0x342a29(0x29f)+_0x342a29(0x2eb)+_0x342a29(0x242)+_0x342a29(0x252),{'event':_0x342a29(0x1ec)+'message','sessionKey':_0x4fe5c3,'channel':getTrimmedString(_0x132159[_0x342a29(0x39d)]),'agentId':getTrimmedString(_0x132159['agentId']),'messageId':getTrimmedString(_0x132159[_0x342a29(0x39a)+'d']),'messageSeq':_0x132159['messageS'+'eq']}),_0x4f0275({..._0x132159,'type':'message','state':_0x342a29(0x278),..._0x4fe5c3?{'sessionKey':_0x4fe5c3}:{}});}async function _0xc9addb(){const _0x34d785=_0x169de5;try{const _0x3b114a=await _0x50cdb0[_0x34d785(0x32c)](_0x34d785(0x2e7)+_0x34d785(0x38a)+'be',{},{'timeoutMs':0x2710});_0x24e925?.[_0x34d785(0x219)](_0x34d785(0x335)+_0x34d785(0x29f)+_0x34d785(0x23c)+_0x34d785(0x367)+'d',{'result':summarizePayload(_0x3b114a,{'maxDepth':0x2})});}catch(_0x4f3256){_0x24e925?.[_0x34d785(0x2ab)](_0x34d785(0x335)+_0x34d785(0x29f)+_0x34d785(0x23c)+_0x34d785(0x367)+_0x34d785(0x37e),{'error':summarizeError(_0x4f3256)});}}async function _0x45a24b(_0x2a6841,_0x986fc3){const _0x4007e4=_0x169de5;_0x50cdb0[_0x4007e4(0x375)+'e']({'url':buildGatewayWsUrl(_0x986fc3),'token':_0x2a6841,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x43f2dc[_0x4007e4(0x381)+_0x4007e4(0x211)],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x35d3c5[_0x4007e4(0x3fa)+_0x4007e4(0x2b2)+_0x4007e4(0x3f1)+'h'](),'onChatEvent':_0x37ba78,'onAgentEvent':_0x4243f3=>{const _0x463e05=_0x4007e4,_0x7ec1a8=asRecord(_0x4243f3),_0x2a25d2=getTrimmedString(_0x7ec1a8[_0x463e05(0x344)]),_0x5f455d=getTrimmedString(_0x7ec1a8[_0x463e05(0x310)+'ey']),_0x36a219=_0x2a25d2?_0x2a8ecb[_0x463e05(0x3bd)](_0x2a25d2):null;if(_0x5f455d&&!_0x36a219)_0xfab4dd(_0x5f455d);_0xe59f0f('agent-ev'+_0x463e05(0x388),_0x4243f3);},'onSessionEvent':_0x45274c,'onSessionMessageEvent':_0x122656,'onStartupTiming':(_0xed35de,_0x198023={})=>{const _0x38767b=_0x4007e4;_0x2db430?.['debug'](_0x38767b(0x335)+'websocke'+'t\x20startu'+_0x38767b(0x291),{'label':_0xed35de,..._0x198023});},'onConnected':async()=>{const _0x20fe39=_0x4007e4;if(!_0x43220f||!_0x2c089d||!_0x30d8f1)return;const _0x6dfec1=++_0x46646e,_0x7cbbc1=()=>_0x6dfec1===_0x46646e&&Boolean(_0x43220f&&_0x2c089d&&_0x30d8f1);_0x2db430?.[_0x20fe39(0x219)]('gateway\x20'+_0x20fe39(0x3a7)+_0x20fe39(0x250)+_0x20fe39(0x337),{'port':_0x2c089d,'pid':_0x43220f[_0x20fe39(0x3c7)],'readyMs':_0x11338b?Date[_0x20fe39(0x3e6)]()-_0x11338b:undefined}),_0x5f3712(_0x20fe39(0x37f),'gateway\x20'+_0x20fe39(0x292)+'d',{'health':'healthy','port':_0x2c089d,'tokenPresent':!![]}),await _0xc9addb();try{const _0x2e2b0a=await syncManagedSkillsToConfig(_0x35d3c5);_0x98ef73?.['info'](_0x20fe39(0x21d)+_0x20fe39(0x2b4)+_0x20fe39(0x3aa)+_0x20fe39(0x2e2)+_0x20fe39(0x37d),{'skillCount':_0x2e2b0a['skillKey'+'s'][_0x20fe39(0x2fe)],'skillKeys':_0x2e2b0a[_0x20fe39(0x359)+'s']}),await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x43f2dc['projectR'+_0x20fe39(0x31c)]))[_0x20fe39(0x3b0)+_0x20fe39(0x31c)],_0x20fe39(0x30d),_0x20fe39(0x269)),'stateDir':_0x35d3c5[_0x20fe39(0x2fa)+_0x20fe39(0x3b2)](),'isPackaged':IS_PACKAGED_RUNTIME,'listAgents':_0x499cdd,'shouldContinue':_0x7cbbc1,'createAgent':_0x1ac623=>{const _0x40aaf0=_0x20fe39;if(!_0x7cbbc1())return{'skipped':!![]};return _0x50cdb0[_0x40aaf0(0x32c)]('agents.c'+_0x40aaf0(0x297),_0x1ac623);},'updateAgent':_0x1e81d6=>{const _0x46468f=_0x20fe39;if(!_0x7cbbc1())return{'skipped':!![]};return _0x50cdb0[_0x46468f(0x32c)]('agents.u'+_0x46468f(0x209),_0x1e81d6);},'syncSkills':async({agentIds:_0x3f6f9a,mainWorkspace:_0x5b497e})=>{const _0x163eab=_0x20fe39;if(!_0x7cbbc1())return;_0x98ef73?.[_0x163eab(0x219)]('bundled\x20'+_0x163eab(0x35f)+'ills\x20syn'+_0x163eab(0x326)+'d',{'agentIds':_0x3f6f9a,'mainWorkspace':toHomePath(_0x5b497e)});const _0x2b27e3=dirname(_0x5b497e),_0xb588dd=await syncBundledAgentSkillsToConfig({'agentIds':_0x3f6f9a,'resolveSkillsDir':_0x261d7a=>_0x261d7a==='main'?join(_0x5b497e,_0x163eab(0x1ee)):join(_0x2b27e3,_0x163eab(0x38c)+'e-'+_0x261d7a,_0x163eab(0x1ee)),'readConfig':()=>_0x35d3c5[_0x163eab(0x20f)+'ig'](),'writeConfig':_0x4b5318=>_0x35d3c5[_0x163eab(0x34b)+_0x163eab(0x3ed)](_0x4b5318),'markConfigWriteHandledInternally':()=>_0x35d3c5[_0x163eab(0x38f)+_0x163eab(0x2a5)+_0x163eab(0x27e)+_0x163eab(0x398)]()});_0x3a9aab=_0xb588dd[_0x163eab(0x1ff)+'y'],_0x98ef73?.[_0x163eab(0x219)](_0x163eab(0x24d)+_0x163eab(0x35f)+_0x163eab(0x34e)+_0x163eab(0x396)+'ted',{'agentCount':_0x3f6f9a[_0x163eab(0x2fe)],'changed':_0xb588dd[_0x163eab(0x2bb)],'discovery':summarizePayload(_0xb588dd[_0x163eab(0x1ff)+'y'],{'maxDepth':0x3})});},'syncConfig':async({bundledAgents:_0x48f80a})=>{const _0xf29096=_0x20fe39;if(!_0x7cbbc1())return;const _0x291a27=await _0x35d3c5['readConf'+'ig'](),_0x4172f9=syncBundledAgentRuntimeConfig(_0x291a27,_0x48f80a);if(!_0x4172f9[_0xf29096(0x2bb)])return;_0x35d3c5[_0xf29096(0x38f)+_0xf29096(0x2a5)+'andledIn'+'ternally'](),await _0x35d3c5['writeCon'+'fig'](_0x4172f9[_0xf29096(0x3b7)],_0xf29096(0x24d)+'agent\x20ru'+'ntime\x20co'+_0xf29096(0x3a2)+_0xf29096(0x3eb)),_0x98ef73?.[_0xf29096(0x219)](_0xf29096(0x24d)+'agent\x20ru'+'ntime\x20co'+_0xf29096(0x3a2)+_0xf29096(0x3eb),{'agentCount':_0x48f80a[_0xf29096(0x2fe)]});}}),_0x98ef73?.[_0x20fe39(0x219)](_0x20fe39(0x24d)+'agents\x20e'+'nsured'),_0xe59f0f(_0x20fe39(0x296)+'pdated',{'reason':_0x20fe39(0x2d3)+'agents-r'+'eady'});}catch(_0x51914c){const _0x5d7e34=_0x51914c instanceof Error?_0x51914c['stack']||_0x51914c[_0x20fe39(0x278)]:String(_0x51914c);_0xc66337('system',_0x20fe39(0x24d)+'agents\x20s'+'ync\x20fail'+_0x20fe39(0x393)+_0x5d7e34),_0x98ef73?.[_0x20fe39(0x3d6)]('bundled\x20'+_0x20fe39(0x30f)+_0x20fe39(0x3f8)+'ed',{'error':summarizeError(_0x51914c)}),console['error']('[wujie-s'+_0x20fe39(0x2da)+_0x20fe39(0x3e8)+_0x20fe39(0x2a4)+'ents\x20syn'+_0x20fe39(0x3c8),_0x51914c);}},'onDisconnected':_0x290bd8=>{const _0x352f95=_0x4007e4;_0x2db430?.[_0x352f95(0x2ab)](_0x352f95(0x335)+_0x352f95(0x3a7)+_0x352f95(0x317)+_0x352f95(0x2cd),{'reason':_0x290bd8}),_0x807e40(_0x290bd8);if(_0x3fa653||!_0x43220f)return;_0x33a78d({'health':_0x352f95(0x3ca),'message':_0x352f95(0x335)+_0x352f95(0x390)+_0x352f95(0x3fc)+_0x290bd8});}});}async function _0x5cc8d9(_0x24b81e,_0xc44348){const _0x497a79=_0x169de5;if(_0x43220f)return;_0x11338b=Date[_0x497a79(0x3e6)](),_0x5f3712(_0x497a79(0x3be),'gateway\x20'+_0x497a79(0x3be),{'health':_0x497a79(0x3ca),'port':_0xc44348,'tokenPresent':!![]});const _0x2b5210=[_0x497a79(0x370),_0x497a79(0x245),_0x497a79(0x35d)+_0x497a79(0x318)+_0x497a79(0x3a6),'--token',_0x24b81e,'--port',String(_0xc44348)];_0xc66337('system',_0x497a79(0x30d)+_0x497a79(0x346)+_0x497a79(0x2f8)+_0x497a79(0x333)+_0x497a79(0x3f0)+'d\x20--toke'+'n\x20[REDAC'+_0x497a79(0x357)+'ort\x20'+_0xc44348),_0x2db430?.[_0x497a79(0x219)](_0x497a79(0x335)+_0x497a79(0x25a)+_0x497a79(0x32b)+_0x497a79(0x35b),{'args':[_0x497a79(0x370),_0x497a79(0x245),'--allow-'+_0x497a79(0x318)+_0x497a79(0x3a6),_0x497a79(0x33b),_0x497a79(0x34a)+'D]',_0x497a79(0x1e6),String(_0xc44348)],'env':{'OPENCLAW_STATE_DIR':toHomePath(_0x35d3c5['resolveS'+_0x497a79(0x3b2)]()),'OPENCLAW_CONFIG_PATH':toHomePath(_0x35d3c5[_0x497a79(0x38e)+_0x497a79(0x361)+'h']()),'OPENCLAW_CONFIG_FILE_NAME':_0x43f2dc[_0x497a79(0x30d)]?.[_0x497a79(0x384)+_0x497a79(0x21a)]??_0x497a79(0x2ec)+_0x497a79(0x39e)}}),_0x43220f=await spawnClaw(_0x43f2dc[_0x497a79(0x3b6)+_0x497a79(0x31c)],_0x2b5210,{'env':{'OPENCLAW_STATE_DIR':_0x35d3c5[_0x497a79(0x2fa)+_0x497a79(0x3b2)](),'OPENCLAW_CONFIG_PATH':_0x35d3c5[_0x497a79(0x38e)+'onfigPat'+'h'](),'OPENCLAW_CONFIG_FILE_NAME':_0x43f2dc[_0x497a79(0x30d)]?.[_0x497a79(0x384)+_0x497a79(0x21a)]??_0x497a79(0x2ec)+_0x497a79(0x39e)}}),_0x30d8f1=_0x24b81e,_0x2c089d=_0xc44348,_0x2db430?.[_0x497a79(0x219)](_0x497a79(0x335)+'process\x20'+_0x497a79(0x236),{'pid':_0x43220f[_0x497a79(0x3c7)],'port':_0x2c089d}),_0x33a78d({'health':_0x497a79(0x3ca),'port':_0x2c089d,'tokenPresent':!![],'message':_0x497a79(0x335)+_0x497a79(0x25a)+_0x497a79(0x3a1)+_0x497a79(0x2aa)+'\x20for\x20WS'}),await _0x45a24b(_0x24b81e,_0xc44348);const _0x2a14c7=createLineBuffer({'trim':!![],'onLine':_0x25f75a=>_0xc66337(_0x497a79(0x2ef),_0x25f75a)}),_0x108bb6=createLineBuffer({'trim':!![],'onLine':_0x59671d=>_0xc66337(_0x497a79(0x3ff),_0x59671d)});_0x43220f[_0x497a79(0x2ef)]['on'](_0x497a79(0x257),_0x14064f=>{const _0x220ec5=_0x497a79;_0x2a14c7[_0x220ec5(0x2b3)](_0x14064f['toString']());}),_0x43220f[_0x497a79(0x3ff)]['on'](_0x497a79(0x257),_0x23c6a3=>{const _0x37c619=_0x497a79;_0x108bb6[_0x37c619(0x2b3)](_0x23c6a3[_0x37c619(0x2db)]());}),_0x43220f['on'](_0x497a79(0x3d6),_0x194c63=>{const _0x14f1d5=_0x497a79;_0x2db430?.[_0x14f1d5(0x3d6)](_0x14f1d5(0x335)+_0x14f1d5(0x25a)+_0x14f1d5(0x3d6),{'error':summarizeError(_0x194c63)}),_0xc66337('stderr',_0x194c63 instanceof Error?_0x194c63[_0x14f1d5(0x377)]||_0x194c63['message']:String(_0x194c63));}),_0x43220f['on'](_0x497a79(0x295),(_0x253255,_0x5bfa7a)=>{const _0x4e9271=_0x497a79;_0x2a14c7[_0x4e9271(0x38d)](),_0x108bb6[_0x4e9271(0x38d)](),_0x2db430?.['warn'](_0x4e9271(0x335)+_0x4e9271(0x25a)+_0x4e9271(0x2b0),{'pid':_0x43220f?.[_0x4e9271(0x3c7)]??null,'code':_0x253255,'signal':_0x5bfa7a,'uptimeMs':_0x11338b?Date[_0x4e9271(0x3e6)]()-_0x11338b:undefined}),_0xc66337('system','gateway\x20'+_0x4e9271(0x3bc)+_0x4e9271(0x3b8)+(_0x253255??_0x4e9271(0x254))+_0x4e9271(0x287)+(_0x5bfa7a??_0x4e9271(0x254))),_0x43220f=null,_0x30d8f1=null,_0x2c089d=null,_0x50cdb0[_0x4e9271(0x375)+'e'](null),_0x807e40(_0x4e9271(0x335)+_0x4e9271(0x25a)+_0x4e9271(0x2f3));if(_0x3fa653){_0x5f3712(_0x4e9271(0x394),_0x4e9271(0x335)+_0x4e9271(0x394),{'health':_0x4e9271(0x3ca),'port':null,'tokenPresent':![]});return;}if(_0x2de186){_0x5f3712(_0x4e9271(0x39c)+'ng','gateway\x20'+_0x4e9271(0x39c)+'ng',{'health':_0x4e9271(0x3ca),'port':null,'tokenPresent':![]});return;}_0x5f3712('error','gateway\x20'+_0x4e9271(0x1e8)+'nexpecte'+_0x4e9271(0x220),{'health':_0x4e9271(0x25d)+'y','port':null,'tokenPresent':![]});});}async function _0x5d7687(){if(_0x43220f)return;if(_0x1a5d8d)return await _0x1a5d8d;_0x1a5d8d=((async()=>{const _0x2e01a7=_0x5b27;if(_0x43220f)return;_0x3fa653=![],_0x2db430?.[_0x2e01a7(0x219)]('gateway\x20'+_0x2e01a7(0x314)+_0x2e01a7(0x355)+_0x2e01a7(0x330)+'ed'),await _0x35d3c5[_0x2e01a7(0x34f)+_0x2e01a7(0x329)+_0x2e01a7(0x3ed)]();const _0x23a617=await _0x35d3c5[_0x2e01a7(0x33f)+_0x2e01a7(0x3e3)+_0x2e01a7(0x274)+_0x2e01a7(0x21c)]();_0x23a617?await _0x3ef396[_0x2e01a7(0x1fd)]()[_0x2e01a7(0x28c)](_0x25f153=>{const _0x3ed6e0=_0x2e01a7;_0xc66337(_0x3ed6e0(0x2f1),'ask-user'+_0x3ed6e0(0x284)+_0x3ed6e0(0x385)+_0x3ed6e0(0x281)+_0x3ed6e0(0x1e2)+(_0x25f153 instanceof Error?_0x25f153[_0x3ed6e0(0x278)]:String(_0x25f153)));}):_0x2db430?.['info'](_0x2e01a7(0x2e9)+_0x2e01a7(0x284)+'n\x20callba'+_0x2e01a7(0x27f)+_0x2e01a7(0x2cc)+'in\x20disab'+_0x2e01a7(0x266));await ensureOpenClawDoctorFixed(_0x43f2dc,{'runtimeLogger':_0x2db430}),_0x35d3c5['watchCon'+'figChang'+'es'](),_0x35d3c5[_0x2e01a7(0x312)+_0x2e01a7(0x2a3)+_0x2e01a7(0x372)](_0x1f0e3c=>{void _0x1c089f(_0x1f0e3c);});const _0x25b20f=await _0x35d3c5[_0x2e01a7(0x2f9)+_0x2e01a7(0x316)+_0x2e01a7(0x2d2)]();_0x2db430?.['info'](_0x2e01a7(0x335)+_0x2e01a7(0x2ae)+'\x20allocat'+'ed',{'port':_0x25b20f[_0x2e01a7(0x1fe)],'tokenPresent':Boolean(_0x25b20f['token'])}),await _0x5cc8d9(_0x25b20f[_0x2e01a7(0x1f0)],_0x25b20f[_0x2e01a7(0x1fe)]);})());try{await _0x1a5d8d;}finally{_0x1a5d8d=null;}}async function _0x144059(){const _0x323463=_0x169de5;_0x3fa653=!![],_0x46646e+=0x1,_0x2db430?.[_0x323463(0x219)](_0x323463(0x335)+_0x323463(0x314)+_0x323463(0x26d)+_0x323463(0x2ed)+'d',{'pid':_0x43220f?.[_0x323463(0x3c7)]??null,'port':_0x2c089d}),_0x50cdb0[_0x323463(0x375)+'e'](null);if(_0x43220f){const _0x40d60e=_0x43220f;_0x43220f=null;try{_0x40d60e[_0x323463(0x23a)](_0x323463(0x28e));}catch{}const _0x1f3906=await waitForChildExit(_0x40d60e,0x1388);if(!_0x1f3906){try{_0x40d60e[_0x323463(0x23a)](_0x323463(0x35a));}catch{}await waitForChildExit(_0x40d60e,0x7d0);}}_0x30d8f1=null,_0x2c089d=null,_0x807e40(_0x323463(0x335)+_0x323463(0x394)),await _0x3ef396[_0x323463(0x20e)](),_0x35d3c5['dispose'](),_0x5f3712(_0x323463(0x394),_0x323463(0x335)+'stopped',{'health':_0x323463(0x3ca),'port':null,'tokenPresent':![]}),_0x3fa653=![];}async function _0x1c089f(_0x68cd7c=_0x169de5(0x201)+_0x169de5(0x213)){const _0x79368b=_0x169de5;if(_0x5bafb2)return{'ok':!![]};return _0x5bafb2=!![],_0x2de186=!![],_0x2db430?.[_0x79368b(0x219)](_0x79368b(0x335)+'restart\x20'+_0x79368b(0x2ed)+'d',{'reason':_0x68cd7c}),_0x51a87a=_0x51a87a[_0x79368b(0x27d)](async()=>{const _0x47e22e=_0x79368b;_0x5f3712(_0x47e22e(0x39c)+'ng',_0x47e22e(0x335)+_0x47e22e(0x39c)+'ng:\x20'+_0x68cd7c,{'health':'unknown'}),await _0x144059(),await _0x5d7687();})['finally'](()=>{_0x2de186=![],_0x5bafb2=![];}),await _0x51a87a,{'ok':!![]};}async function _0x52247a(){const _0x1bbe8b=_0x169de5,_0x20aa26=await loadRuntimeInfo(_0x43f2dc['projectR'+'oot']);return{'runtimeRoot':_0x20aa26[_0x1bbe8b(0x3b0)+'oot'],'openclawVersion':_0x20aa26[_0x1bbe8b(0x30d)+_0x1bbe8b(0x256)],'openclawWorkingDir':_0x20aa26['openclaw'+_0x1bbe8b(0x306)+'ir'],'openclawBin':_0x20aa26[_0x1bbe8b(0x30d)+_0x1bbe8b(0x3d8)],'plugins':_0x20aa26[_0x1bbe8b(0x37a)][_0x1bbe8b(0x37b)](_0x28a247=>({'pluginId':_0x28a247[_0x1bbe8b(0x301)],'source':_0x28a247[_0x1bbe8b(0x2c0)],'version':_0x28a247[_0x1bbe8b(0x270)],'installPath':_0x28a247[_0x1bbe8b(0x3cf)+'ath']})),'configPath':_0x35d3c5[_0x1bbe8b(0x38e)+'onfigPat'+'h'](),'stateDir':_0x35d3c5[_0x1bbe8b(0x2fa)+_0x1bbe8b(0x3b2)](),'bundledAgentSkillsDiscovery':_0x3a9aab};}async function _0x499cdd(){const _0x23cfee=_0x169de5;_0x98ef73?.['info'](_0x23cfee(0x253)+_0x23cfee(0x35e)+_0x23cfee(0x2af));const _0x38550f=asRecord(await _0x50cdb0[_0x23cfee(0x32c)](_0x23cfee(0x26c)+_0x23cfee(0x2bc),{})),_0x390cae=getTrimmedString(_0x38550f[_0x23cfee(0x352)+'d'])||_0x23cfee(0x379),_0x58aa5a=Array[_0x23cfee(0x23b)](_0x38550f[_0x23cfee(0x269)])?[..._0x38550f[_0x23cfee(0x269)]]:[];return{..._0x38550f,'defaultId':_0x390cae,'agents':_0x58aa5a};}async function _0x4319fc(){const _0x5aac00=_0x169de5;if(!_0x23b5ea()){const _0x807192=await readConfiguredAgentsForPendingList(_0x35d3c5);return{'defaultId':_0x5aac00(0x379),'mainKey':'','scope':'','pending':!![],'agents':_0x807192['length']>0x0?_0x807192:[createMainAgentFallback(_0x35d3c5)]};}const _0x1cda55=await _0x499cdd(),_0x4d53a7=getTrimmedString(_0x1cda55['defaultI'+'d'])||_0x5aac00(0x379),_0x3e2125=await readConfiguredAgentsForPendingList(_0x35d3c5),_0x29bc67=orderAgentsByConfiguredList(_0x1cda55['agents'],_0x3e2125);return!_0x29bc67[_0x5aac00(0x360)](_0x41d943=>asRecord(_0x41d943)['id']==='main')&&_0x29bc67[_0x5aac00(0x3dc)](createMainAgentFallback(_0x35d3c5)),{..._0x1cda55,'defaultId':_0x4d53a7,'agents':_0x29bc67};}async function _0x1a3db7(_0x33a862={}){const _0x55c7ed=_0x169de5;await _0xdf8e7d();const _0x2a602d=Date['now']();_0x24e925?.[_0x55c7ed(0x219)]('session\x20'+_0x55c7ed(0x368)+_0x55c7ed(0x36a),{'payload':summarizePayload(_0x33a862)});const _0x4555d1=await _0x50cdb0['request'](_0x55c7ed(0x2e7)+_0x55c7ed(0x365),buildSessionCreateRequestPayload(_0x33a862)),_0x467d59=parseSessionCreateResult(_0x4555d1);return _0x24e925?.['info'](_0x55c7ed(0x29f)+'create\x20c'+_0x55c7ed(0x3ec),{'key':_0x467d59[_0x55c7ed(0x24a)],'sessionId':_0x467d59['sessionI'+'d'],'durationMs':Date[_0x55c7ed(0x3e6)]()-_0x2a602d}),_0xccc98e({'priority':'P0','category':_0x55c7ed(0x216),'event':_0x55c7ed(0x3c4)+'create.s'+_0x55c7ed(0x26e),'status':'succeede'+'d','message':'session\x20'+_0x55c7ed(0x362),'sessionKey':_0x467d59['key'],'durationMs':Date[_0x55c7ed(0x3e6)]()-_0x2a602d,'meta':{'sessionId':_0x467d59[_0x55c7ed(0x39f)+'d'],'request':summarizePayload(_0x33a862,{'maxDepth':0x2})}}),_0x467d59;}async function _0x4a6bc4(_0x2bf0ca={}){const _0x383d6a=_0x169de5;if(!_0x23b5ea())return{'pending':!![],'sessions':[],'pinnedKeys':await _0x5bd7a5[_0x383d6a(0x2d1)+_0x383d6a(0x1f3)+_0x383d6a(0x2a6)]()};const _0x59f4ee=Date[_0x383d6a(0x3e6)](),_0x2dca80=Math[_0x383d6a(0x3e1)](0x1,Math[_0x383d6a(0x3f4)](Number(_0x2bf0ca[_0x383d6a(0x25c)])||0x64)),_0x516fea={'limit':_0x2dca80,'includeGlobal':!![],'includeUnknown':![]},_0x5321ad=getTrimmedString(_0x2bf0ca['agentId']);if(_0x5321ad)_0x516fea[_0x383d6a(0x35c)]=_0x5321ad;const _0x1588fe=await _0x5bd7a5[_0x383d6a(0x389)+_0x383d6a(0x319)+_0x383d6a(0x3d2)+_0x383d6a(0x3f6)](filterValidSessionList(await _0x50cdb0[_0x383d6a(0x32c)](_0x383d6a(0x2e7)+_0x383d6a(0x32f),_0x516fea),{'onOrphanSession':(_0xe43dd6,_0x547581)=>_0xe9ce06(_0xe43dd6,'missing_'+_0x383d6a(0x3c4)+'id',{..._0x547581,'agentId':_0x5321ad||_0x547581[_0x383d6a(0x35c)]||null})}));return _0x24e925?.[_0x383d6a(0x219)](_0x383d6a(0x2e7)+_0x383d6a(0x3d0)+_0x383d6a(0x20d),{'payload':_0x516fea,'count':Array['isArray'](_0x1588fe['sessions'])?_0x1588fe[_0x383d6a(0x2e7)][_0x383d6a(0x2fe)]:0x0,'durationMs':Date[_0x383d6a(0x3e6)]()-_0x59f4ee}),_0x1588fe;}async function _0x4448d9(_0x3304b2={}){const _0x554291=_0x169de5;await _0xdf8e7d();const _0x4e8c77=getTrimmedString(_0x3304b2[_0x554291(0x310)+'ey']??_0x3304b2[_0x554291(0x24a)]);if(!_0x4e8c77)throw new Error(_0x554291(0x310)+_0x554291(0x249)+_0x554291(0x3db));const _0x10da23=Date[_0x554291(0x3e6)](),_0x236c26=await _0x50cdb0[_0x554291(0x32c)](_0x554291(0x2e7)+_0x554291(0x205),{'key':_0x4e8c77,'deleteTranscript':_0x3304b2[_0x554291(0x204)+'anscript']!==![],'emitLifecycleHooks':!![]});return await _0x5bd7a5[_0x554291(0x210)+_0x554291(0x2a2)+_0x554291(0x258)](_0x4e8c77),_0x4f0275({'type':_0x554291(0x36d),'sessionKey':_0x4e8c77}),_0x24e925?.[_0x554291(0x219)](_0x554291(0x29f)+_0x554291(0x25b)+_0x554291(0x3ec),{'sessionKey':_0x4e8c77,'deleteTranscript':_0x3304b2[_0x554291(0x204)+'anscript']!==![],'durationMs':Date[_0x554291(0x3e6)]()-_0x10da23}),_0xccc98e({'priority':'P0','category':_0x554291(0x216),'event':'session_'+_0x554291(0x3c3)+_0x554291(0x26e),'status':'succeede'+'d','message':'session\x20'+_0x554291(0x36d),'sessionKey':_0x4e8c77,'durationMs':Date['now']()-_0x10da23,'meta':{'deleteTranscript':_0x3304b2[_0x554291(0x204)+_0x554291(0x33d)]!==![]}}),_0x236c26;}async function _0x209cd7(_0xdff304={}){const _0x30f688=_0x169de5,_0x12181f=getTrimmedString(_0xdff304[_0x30f688(0x310)+'ey']??_0xdff304[_0x30f688(0x24a)]);if(!_0x12181f)throw new Error(_0x30f688(0x310)+_0x30f688(0x249)+_0x30f688(0x3db));const _0x11ca82=getTrimmedString(_0xdff304['name']??_0xdff304[_0x30f688(0x325)]??_0xdff304['title']);return await _0x5bd7a5[_0x30f688(0x32d)+'onCustom'+'Name'](_0x12181f,_0x11ca82),_0x4f0275({'type':_0x30f688(0x3bb),'sessionKey':_0x12181f,'name':_0x11ca82}),_0x24e925?.['info'](_0x30f688(0x29f)+_0x30f688(0x21b)+_0x30f688(0x3ec),{'sessionKey':_0x12181f,'hasName':Boolean(_0x11ca82),'name':_0x11ca82?summarizeText(_0x11ca82,0x50):undefined}),_0xccc98e({'priority':'P0','category':_0x30f688(0x216),'event':'session_'+_0x30f688(0x327)+_0x30f688(0x26e),'status':'succeede'+'d','message':'session\x20'+'renamed','sessionKey':_0x12181f,'inputSummary':_0x11ca82?summarizeText(_0x11ca82,0x50):undefined,'meta':{'hasName':Boolean(_0x11ca82)}}),{'ok':!![]};}async function _0x5396d6(_0x346556,_0x4d750a){const _0x307688=_0x169de5;await _0xdf8e7d();const _0x4e095f=getTrimmedString(_0x346556),_0x59b315=getTrimmedString(_0x4d750a);if(!_0x4e095f)throw new Error(_0x307688(0x29f)+'key\x20is\x20r'+_0x307688(0x234));if(!_0x59b315)throw new Error('model\x20re'+'f\x20is\x20req'+_0x307688(0x3a4));const _0x43ce2d=asRecord(await _0x50cdb0[_0x307688(0x32c)](_0x307688(0x2e7)+_0x307688(0x323),{'key':_0x4e095f,'model':_0x59b315})),_0x1527cf=asRecord(_0x43ce2d[_0x307688(0x24c)]);return{'ok':!![],'key':getTrimmedString(_0x43ce2d[_0x307688(0x24a)])||_0x4e095f,'modelRef':_0x59b315,'resolved':{'modelProvider':getTrimmedString(_0x1527cf[_0x307688(0x1f9)+_0x307688(0x311)])||null,'model':getTrimmedString(_0x1527cf['model'])||null,'agentRuntime':_0x1527cf[_0x307688(0x308)+_0x307688(0x3e4)]}};}async function _0x2b63b1(_0x2b192a=[]){const _0x1d2668=_0x169de5,_0x124bec=await _0x5bd7a5[_0x1d2668(0x22e)+_0x1d2668(0x1f3)+_0x1d2668(0x2a6)](Array[_0x1d2668(0x23b)](_0x2b192a)?_0x2b192a['map'](getTrimmedString)['filter'](Boolean):[]);return _0x4f0275({'type':'pinned-k'+_0x1d2668(0x20b)+'ted','pinnedKeys':_0x124bec[_0x1d2668(0x391)+'ys']}),_0x24e925?.[_0x1d2668(0x219)](_0x1d2668(0x29f)+_0x1d2668(0x3b4)+'eys\x20upda'+_0x1d2668(0x337),{'count':_0x124bec[_0x1d2668(0x391)+'ys'][_0x1d2668(0x2fe)]}),_0xccc98e({'priority':'P0','category':_0x1d2668(0x216),'event':_0x1d2668(0x3c4)+'pin_upda'+'te.succe'+_0x1d2668(0x2d4),'status':_0x1d2668(0x2b1)+'d','message':_0x1d2668(0x29f)+_0x1d2668(0x3b4)+_0x1d2668(0x3c2)+_0x1d2668(0x337),'meta':{'count':_0x124bec['pinnedKe'+'ys'][_0x1d2668(0x2fe)]}}),_0x124bec;}async function _0x384368(){const _0xd2d019=_0x169de5,_0x49c0b6=join(_0x35d3c5[_0xd2d019(0x2fa)+_0xd2d019(0x3b2)](),_0xd2d019(0x38c)+'e');return{'path':_0x49c0b6,'exists':Boolean(await stat(_0x49c0b6)['catch'](()=>null))};}async function _0x1f89e4(){const _0x5406c0=_0x169de5;return readSharedContext(join(_0x35d3c5[_0x5406c0(0x2fa)+'tateDir'](),_0x5406c0(0x38c)+'e'));}async function _0x2ea876(_0x5e41ad={}){const _0x20b7d8=_0x169de5;return _0x98ef73?.[_0x20b7d8(0x219)](_0x20b7d8(0x38c)+_0x20b7d8(0x2a7)+_0x20b7d8(0x290)+'\x20write\x20r'+_0x20b7d8(0x36a),{'files':Object[_0x20b7d8(0x30a)](sanitizeSharedContextPayload(_0x5e41ad))}),writeSharedContext(join(_0x35d3c5[_0x20b7d8(0x2fa)+'tateDir'](),'workspac'+'e'),_0x5e41ad);}async function _0x23c15d(_0x231ddc={}){const _0xc57532=_0x169de5;if(!_0x23b5ea())return{'pending':!![],'jobs':[],'hasMore':![],'nextOffset':0x0};return await _0x50cdb0[_0xc57532(0x32c)]('cron.lis'+'t',_0x231ddc);}async function _0xe81006(_0x14cca4={}){const _0x20540b=_0x169de5;await _0xdf8e7d();const _0x3aa6a1=await _0x50cdb0[_0x20540b(0x32c)]('cron.add',normalizeCronMutationParams(_0x14cca4));return _0x1a7519({'reason':_0x20540b(0x3d5)+_0x20540b(0x1fa)}),_0x3aa6a1;}async function _0x2d75f6(_0x5df70d={}){const _0x5eccde=_0x169de5;await _0xdf8e7d();const _0x4ca07b=getTrimmedString(_0x5df70d[_0x5eccde(0x2c6)]??_0x5df70d['id']);if(!_0x4ca07b)throw new Error(_0x5eccde(0x307)+'\x20require'+'d');const _0x1f306e=asRecord(_0x5df70d[_0x5eccde(0x2c2)]),_0x140bc2=Object[_0x5eccde(0x30a)](_0x1f306e)['length']>0x0?_0x1f306e:{..._0x5df70d};delete _0x140bc2[_0x5eccde(0x2c6)],delete _0x140bc2['id'];const _0x4386c2=await _0x50cdb0['request']('cron.upd'+_0x5eccde(0x214),{'jobId':_0x4ca07b,'patch':normalizeCronMutationParams(_0x140bc2)});return _0x1a7519({'reason':'cron-cha'+_0x5eccde(0x1fa)}),_0x4386c2;}async function _0x334671(_0x519065={}){const _0x37c312=_0x169de5;await _0xdf8e7d();const _0x3a9264=getTrimmedString(_0x519065[_0x37c312(0x2c6)]??_0x519065['id']);if(!_0x3a9264)throw new Error(_0x37c312(0x307)+'\x20require'+'d');const _0x26c18b=await _0x50cdb0['request'](_0x37c312(0x268)+'ove',{'jobId':_0x3a9264});return _0x1a7519({'reason':_0x37c312(0x3d5)+_0x37c312(0x1fa)}),_0x26c18b;}async function _0x47fd76(_0x1d4674={}){const _0x54401c=_0x169de5;await _0xdf8e7d();const _0x3d80ca=getTrimmedString(_0x1d4674[_0x54401c(0x2c6)]??_0x1d4674['id']);if(!_0x3d80ca)throw new Error(_0x54401c(0x307)+'\x20require'+'d');const _0x2a9019=await _0x50cdb0[_0x54401c(0x32c)]('cron.run',{'jobId':_0x3d80ca}),_0x77cf2b=getTrimmedString(asRecord(_0x2a9019)['sessionK'+'ey']);if(_0x77cf2b)_0x4f0275({'sessionKey':_0x77cf2b,'state':_0x54401c(0x1f1)});else _0x1a7519({'reason':'cron-run'});return _0x2a9019;}async function _0x211c11(_0x5c5800={}){const _0x57f112=_0x169de5;return await _0xdf8e7d(),await _0x50cdb0[_0x57f112(0x32c)](_0x57f112(0x338)+'s',_0x5c5800);}async function _0x2c693a(_0x4808b9={}){const _0x5421ad=_0x169de5;await _0xdf8e7d();const _0x292e23=Date[_0x5421ad(0x3e6)]();_0x98ef73?.[_0x5421ad(0x219)](_0x5421ad(0x215)+'stall\x20re'+_0x5421ad(0x35b),{'payload':summarizePayload(_0x4808b9)});try{const _0x3e18d3=await _0x50cdb0[_0x5421ad(0x32c)](_0x5421ad(0x1f8)+_0x5421ad(0x321),_0x4808b9);return _0x98ef73?.[_0x5421ad(0x219)](_0x5421ad(0x215)+_0x5421ad(0x218)+_0x5421ad(0x20d),{'durationMs':Date[_0x5421ad(0x3e6)]()-_0x292e23,'result':summarizePayload(_0x3e18d3,{'maxDepth':0x2})}),_0x3e18d3;}catch(_0x586bd1){_0x98ef73?.[_0x5421ad(0x3d6)]('skill\x20in'+_0x5421ad(0x3ae)+_0x5421ad(0x3cb),{'durationMs':Date['now']()-_0x292e23,'error':summarizeError(_0x586bd1)});const _0x139d82=_0x586bd1 instanceof Error?_0x586bd1['message']:String(_0x586bd1);throw new Error('技能安装失败:\x20'+_0x139d82);}}async function _0x6918ae(_0x4184a5={}){const _0x4580f=_0x169de5;_0x98ef73?.[_0x4580f(0x219)](_0x4580f(0x1e9)+_0x4580f(0x3c6)+'uested',{'payload':summarizePayload(_0x4184a5)});throw new Error(_0x4580f(0x2b5)+'pdate\x20is'+_0x4580f(0x285)+_0x4580f(0x2ca)+'l-core,\x20'+_0x4580f(0x2cb)+_0x4580f(0x2ac)+'eway');}async function _0x223fd7(_0x7cd7f8={}){const _0x19bbb3=_0x169de5;_0x98ef73?.[_0x19bbb3(0x219)](_0x19bbb3(0x2d6)+_0x19bbb3(0x332)+_0x19bbb3(0x2ad),{'payload':summarizePayload(_0x7cd7f8)});throw new Error(_0x19bbb3(0x3d9)+_0x19bbb3(0x36c)+'\x20handled'+_0x19bbb3(0x2ca)+'l-core,\x20'+_0x19bbb3(0x2cb)+_0x19bbb3(0x2ac)+_0x19bbb3(0x271));}async function _0x22afd6(_0x132515={}){const _0x29c674=_0x169de5;await _0xdf8e7d();const _0xccd9d8=getTrimmedString(_0x132515[_0x29c674(0x310)+'ey']),_0x470b22=getTrimmedString(_0x132515[_0x29c674(0x278)]),_0x217769=getTrimmedString(_0x132515[_0x29c674(0x371)+'d'])||randomUUID();if(!_0xccd9d8)throw new Error('sessionK'+_0x29c674(0x249)+_0x29c674(0x3db));if(!_0x470b22)throw new Error(_0x29c674(0x2eb)+'is\x20requi'+_0x29c674(0x273));const _0x1f69c6=Date[_0x29c674(0x3e6)]();_0x9c7e34?.[_0x29c674(0x219)](_0x29c674(0x238)+_0x29c674(0x2c8)+_0x29c674(0x2af),{'requestId':_0x217769,'sessionKey':_0xccd9d8,'message':summarizeText(_0x470b22),'filePaths':summarizeFilePaths(_0x132515[_0x29c674(0x241)+'s'])}),_0xccc98e({'priority':'P0','category':_0x29c674(0x313),'event':_0x29c674(0x21f)+_0x29c674(0x3ac)+'ved','status':'requeste'+'d','message':_0x29c674(0x3da)+_0x29c674(0x304)+_0x29c674(0x22d),'sessionKey':_0xccd9d8,'runId':_0x217769,'agentId':getTrimmedString(_0x132515[_0x29c674(0x35c)]),'inputSummary':summarizeText(_0x470b22,0xc8),'attachments':summarizeUserEventAttachments(_0x132515),'meta':{'requestId':_0x217769,'source':getTrimmedString(_0x132515['source'])||_0x29c674(0x3de)}});const _0x5265d8=_0x20df08(),_0x1d1dd4={'runId':_0x217769,'requestId':_0x217769,'sessionKey':_0xccd9d8,'outputText':'','startedAt':_0x1f69c6,'started':![],'agentId':getTrimmedString(_0x132515[_0x29c674(0x35c)]),..._0x5265d8};_0x2a8ecb[_0x29c674(0x34c)](_0x217769,_0x1d1dd4);const _0x4dba12=_0x54de33[_0x29c674(0x2a0)](_0x1d1dd4);try{if(_0x4dba12){_0x9c7e34?.[_0x29c674(0x219)](_0x29c674(0x238)+_0x29c674(0x229)+'ed\x20behin'+_0x29c674(0x28d)+_0x29c674(0x22f),{'requestId':_0x217769,'sessionKey':_0xccd9d8,'previousRequestId':_0x4dba12['requestI'+'d'],'previousRunId':_0x4dba12[_0x29c674(0x344)]}),await _0x4dba12[_0x29c674(0x382)];if(!_0x2a8ecb[_0x29c674(0x2e1)](_0x217769))return{'ok':!![],'requestId':_0x217769};}const {attachments:_0x39c260,historyMediaLines:_0x226e95}=await buildAttachments(Array[_0x29c674(0x23b)](_0x132515[_0x29c674(0x241)+'s'])?_0x132515['filePath'+'s']:[],{'sessionKey':_0xccd9d8,'stateDir':_0x35d3c5[_0x29c674(0x2fa)+'tateDir'](),'onWarn':_0x1c0e74=>_0x9c7e34?.['warn'](_0x29c674(0x24f)+_0x29c674(0x262)+_0x29c674(0x2e4)+'warning',{'requestId':_0x217769,'sessionKey':_0xccd9d8,'warning':_0x1c0e74})}),_0x40e65e=_0x226e95['length']>0x0?_0x470b22+'\x0a'+_0x226e95[_0x29c674(0x2a8)]('\x0a'):_0x470b22;_0x9c7e34?.[_0x29c674(0x219)](_0x29c674(0x24f)+'achments'+_0x29c674(0x309)+'d',{'requestId':_0x217769,'sessionKey':_0xccd9d8,'attachmentCount':_0x39c260[_0x29c674(0x2fe)],'historyMediaLineCount':_0x226e95[_0x29c674(0x2fe)],'attachments':_0x39c260[_0x29c674(0x37b)](_0x2875db=>({'type':_0x2875db[_0x29c674(0x3c0)],'mimeType':_0x2875db[_0x29c674(0x263)],'fileName':_0x2875db['fileName'],'contentLength':_0x2875db[_0x29c674(0x228)]['length']}))}),_0xccc98e({'priority':'P0','category':_0x29c674(0x313),'event':_0x29c674(0x265)+_0x29c674(0x2bf)+_0x29c674(0x2d7),'status':_0x29c674(0x2b1)+'d','message':'chat\x20att'+_0x29c674(0x246)+_0x29c674(0x309)+'d','sessionKey':_0xccd9d8,'runId':_0x217769,'agentId':getTrimmedString(_0x132515[_0x29c674(0x35c)]),'attachments':{'count':_0x39c260[_0x29c674(0x2fe)],'types':[...new Set(_0x39c260[_0x29c674(0x37b)](_0x9134c8=>_0x9134c8[_0x29c674(0x263)]||_0x9134c8[_0x29c674(0x3c0)])['filter'](Boolean))],'files':_0x39c260['slice'](0x0,0xa)[_0x29c674(0x37b)](_0xdf8d96=>({'type':_0xdf8d96['type'],'mimeType':_0xdf8d96[_0x29c674(0x263)],'fileName':_0xdf8d96[_0x29c674(0x1ef)],'contentLength':_0xdf8d96['content']['length']})),'truncated':_0x39c260[_0x29c674(0x2fe)]>0xa},'meta':{'historyMediaLineCount':_0x226e95['length'],'requestId':_0x217769}});const _0x570d63=asRecord(await _0x50cdb0[_0x29c674(0x32c)](_0x29c674(0x2b9)+'d',{'sessionKey':_0xccd9d8,'message':_0x40e65e,'deliver':![],'idempotencyKey':_0x217769,..._0x39c260['length']>0x0?{'attachments':_0x39c260}:{}})),_0x552257=getTrimmedString(_0x570d63[_0x29c674(0x344)])||_0x217769,_0x349599=_0x2a8ecb[_0x29c674(0x3bd)](_0x217769);if(!_0x349599)return{'ok':!![],'requestId':_0x217769,'runId':_0x552257};return _0x349599[_0x29c674(0x236)]=!![],_0x552257!==_0x349599['runId']&&(_0x2a8ecb[_0x29c674(0x2d5)](_0x349599[_0x29c674(0x344)]),_0x349599['runId']=_0x552257,_0x2a8ecb[_0x29c674(0x34c)](_0x552257,_0x349599)),_0x2114cd['set'](_0xccd9d8,_0x552257),_0x469f5f({'requestId':_0x217769,'sessionKey':_0xccd9d8,'type':_0x29c674(0x236)}),_0x9c7e34?.[_0x29c674(0x219)](_0x29c674(0x238)+'eam\x20acce'+_0x29c674(0x29c)+'gateway',{'requestId':_0x217769,'runId':_0x552257,'sessionKey':_0xccd9d8,'durationMs':Date[_0x29c674(0x3e6)]()-_0x1f69c6,'status':_0x570d63[_0x29c674(0x22a)]}),_0xccc98e({'priority':'P0','category':_0x29c674(0x313),'event':_0x29c674(0x3d4)+_0x29c674(0x303)+_0x29c674(0x334),'status':_0x570d63[_0x29c674(0x22a)]===_0x29c674(0x3d6)?_0x29c674(0x3b1):'accepted','level':_0x570d63['status']===_0x29c674(0x3d6)?_0x29c674(0x3d6):_0x29c674(0x219),'message':_0x29c674(0x238)+'eam\x20acce'+'pted\x20by\x20'+_0x29c674(0x370),'sessionKey':_0xccd9d8,'runId':_0x552257,'agentId':getTrimmedString(_0x132515[_0x29c674(0x35c)]),'visibleError':_0x570d63[_0x29c674(0x22a)]===_0x29c674(0x3d6)?getTrimmedString(_0x570d63[_0x29c674(0x3b5)+_0x29c674(0x1ea)])||'gateway\x20'+_0x29c674(0x3f3)+_0x29c674(0x266):undefined,'durationMs':Date[_0x29c674(0x3e6)]()-_0x1f69c6,'captureIncident':_0x570d63[_0x29c674(0x22a)]===_0x29c674(0x3d6),'meta':{'requestId':_0x217769,'gatewayStatus':_0x570d63[_0x29c674(0x22a)]}}),_0x570d63[_0x29c674(0x22a)]==='error'&&_0x1182f9(_0x349599,_0x29c674(0x3d6),getTrimmedString(_0x570d63[_0x29c674(0x3b5)+'sage'])||_0x29c674(0x335)+_0x29c674(0x3f3)+_0x29c674(0x266)),{'ok':!![],'requestId':_0x217769,'runId':_0x552257,'response':_0x570d63};}catch(_0x1c5f9e){const _0x55b1ab=_0x49873c(_0x217769),_0x24acd8=_0x1c5f9e instanceof Error?_0x1c5f9e['message']:String(_0x1c5f9e);_0x9c7e34?.[_0x29c674(0x3d6)](_0x29c674(0x238)+_0x29c674(0x267)+'ed',{'requestId':_0x217769,'sessionKey':_0xccd9d8,'durationMs':Date[_0x29c674(0x3e6)]()-_0x1f69c6,'error':summarizeError(_0x1c5f9e)}),_0xccc98e({'priority':'P0','category':_0x29c674(0x313),'event':_0x29c674(0x3d4)+_0x29c674(0x299)+'ed','status':_0x29c674(0x3b1),'level':_0x29c674(0x3d6),'message':_0x29c674(0x238)+_0x29c674(0x267)+'ed','sessionKey':_0xccd9d8,'runId':_0x55b1ab?.[_0x29c674(0x344)]||_0x217769,'agentId':getTrimmedString(_0x132515[_0x29c674(0x35c)]),'inputSummary':summarizeText(_0x470b22,0xc8),'attachments':summarizeUserEventAttachments(_0x132515),'visibleError':_0x24acd8,'durationMs':Date[_0x29c674(0x3e6)]()-_0x1f69c6,'captureIncident':!![],'meta':{'requestId':_0x217769,'error':summarizeError(_0x1c5f9e)}});if(_0x55b1ab)_0x1182f9(_0x55b1ab,'error',_0x24acd8);else _0x469f5f({'requestId':_0x217769,'sessionKey':_0xccd9d8,'type':_0x29c674(0x3d6),'message':_0x24acd8});throw _0x1c5f9e;}}async function _0x236c82(_0x39fe1b={}){const _0x2a1817=_0x169de5;_0x1b05c2();const _0x202ea9=getTrimmedString(_0x39fe1b['sessionK'+'ey']);if(!_0x202ea9)throw new Error(_0x2a1817(0x310)+_0x2a1817(0x249)+_0x2a1817(0x3db));const _0x241038=Date['now'](),_0x502f6e=_0x49873c(getTrimmedString(_0x39fe1b[_0x2a1817(0x371)+'d']))??_0x164297(_0x202ea9),_0x349b1b=_0x2114cd[_0x2a1817(0x3bd)](_0x202ea9),_0x589ad2={'sessionKey':_0x202ea9};if(_0x502f6e?.[_0x2a1817(0x344)])_0x589ad2[_0x2a1817(0x344)]=_0x502f6e[_0x2a1817(0x344)];else{if(_0x349b1b)_0x589ad2[_0x2a1817(0x344)]=_0x349b1b;}const _0x7f0e7c=await _0x50cdb0[_0x2a1817(0x32c)]('chat.abo'+'rt',_0x589ad2);if(_0x502f6e)_0x1182f9(_0x502f6e,_0x2a1817(0x2a9));return _0x9c7e34?.['info'](_0x2a1817(0x2f4)+_0x2a1817(0x2f2)+_0x2a1817(0x2c7),{'sessionKey':_0x202ea9,'requestId':getTrimmedString(_0x39fe1b[_0x2a1817(0x371)+'d']),'runId':_0x589ad2[_0x2a1817(0x344)],'durationMs':Date[_0x2a1817(0x3e6)]()-_0x241038}),_0x7f0e7c;}async function _0x4dd6e3(_0x21d83f={}){const _0x45c8a6=_0x169de5,_0x5694a6=getTrimmedString(_0x21d83f[_0x45c8a6(0x310)+'ey']);if(!_0x5694a6)throw new Error('sessionK'+'ey\x20is\x20re'+'quired');const _0x20d5c5=Math['max'](0x1,Math[_0x45c8a6(0x3f4)](Number(_0x21d83f[_0x45c8a6(0x25c)])||0xc8)),_0x211dae=getTrimmedString(_0x21d83f['cursor'])||null;if(!_0x23b5ea())return{'messages':[],'limit':_0x20d5c5,'hasMore':![],'nextCursor':null};const _0x5f1744={'sessionKey':_0x5694a6,'limit':_0x20d5c5};if(_0x211dae)_0x5f1744[_0x45c8a6(0x225)]=_0x211dae;let _0x227a06;try{_0x227a06=await _0x50cdb0[_0x45c8a6(0x32c)]('chat.his'+_0x45c8a6(0x207),_0x5f1744);}catch(_0x5f5a10){if(isChatHistoryNotFoundError(_0x5f5a10)){_0xe9ce06(_0x5694a6,_0x45c8a6(0x239)+_0x45c8a6(0x25f)+'d',{'cursorPresent':Boolean(_0x211dae),'limit':_0x20d5c5,'source':getTrimmedString(_0x21d83f[_0x45c8a6(0x2c0)])||null});if(BACKGROUND_CHAT_HISTORY_SOURCES[_0x45c8a6(0x2e1)](getTrimmedString(_0x21d83f['source'])))return createEmptyChatHistoryResult(_0x20d5c5);}throw _0x5f5a10;}return _0x9c7e34?.[_0x45c8a6(0x219)](_0x45c8a6(0x305)+'tory\x20loa'+_0x45c8a6(0x28a),{'sessionKey':_0x5694a6,'limit':_0x20d5c5,'cursorPresent':Boolean(_0x211dae),'result':summarizePayload(_0x227a06,{'maxDepth':0x2})}),_0x227a06;}async function _0x36e8ac(_0x565dfc=''){const _0x29cb08=_0x169de5;if(!_0x23b5ea())return{'pending':!![],'skills':[]};const _0x17ac45=getTrimmedString(_0x565dfc),_0x8d77e0=await _0x50cdb0['request']('skills.s'+_0x29cb08(0x351),_0x17ac45?{'agentId':_0x17ac45}:{}),_0x28f342=await _0x35d3c5[_0x29cb08(0x20f)+'ig']()[_0x29cb08(0x28c)](()=>({})),_0xd8f48a=await _0x278c22[_0x29cb08(0x23e)+'sStatus'](_0x8d77e0),_0x598637=applySkillConfigStateToStatus(_0xd8f48a,_0x28f342),_0x50fc49=filterSkillsForAgent(_0x598637,_0x28f342,_0x17ac45,_0x3a9aab);return _0x98ef73?.[_0x29cb08(0x219)](_0x29cb08(0x259)+_0x29cb08(0x315)+_0x29cb08(0x3f7),{'agentId':_0x17ac45||_0x29cb08(0x2be),'result':summarizePayload(_0x50fc49,{'maxDepth':0x2})}),_0x50fc49;}return{'on':_0x44e0e3,'start':_0x5d7687,'stop':_0x144059,'restart':_0x1c089f,'runtimeInfo':_0x52247a,'gatewayToken':()=>_0x30d8f1||'','gatewayPort':()=>_0x2c089d||0x0,'getStatus':()=>_0x3f1ab9,'getRecentLogs':_0x9090d4,'answerAskUserQuestion':_0x5645f0=>_0x3ef396[_0x169de5(0x2ce)](_0x5645f0),'agents':{'list':_0x4319fc},'skills':{'status':_0x36e8ac,'install':_0x2c693a,'update':_0x6918ae,'delete':_0x223fd7},'sessions':{'create':_0x1a3db7,'list':_0x4a6bc4,'delete':_0x4448d9,'rename':_0x209cd7,'patchModel':_0x5396d6,'reorderPinned':_0x2b63b1},'workspace':{'directoryInfo':_0x384368,'sharedContext':_0x1f89e4,'writeSharedContext':_0x2ea876},'cron':{'list':_0x23c15d,'create':_0xe81006,'update':_0x2d75f6,'remove':_0x334671,'runOnce':_0x47fd76,'logs':_0x211c11},'models':{'settings':()=>_0x35d3c5[_0x169de5(0x200)+_0x169de5(0x3d1)](),'setSettings':async(_0x4821b7={})=>{const _0x1a2fdc=_0x169de5,_0x307b0=_0x4821b7?.[_0x1a2fdc(0x31e)+_0x1a2fdc(0x369)]!==![];return await _0x35d3c5[_0x1a2fdc(0x3e7)+_0x1a2fdc(0x3d1)](_0x4821b7,{'restartOnChange':_0x307b0}),_0x35d3c5[_0x1a2fdc(0x200)+_0x1a2fdc(0x3d1)]();},'setSelectedModelEverywhere':async(_0xecafb7={})=>{const _0x881a3=_0x169de5,_0x53fb9b=await _0x35d3c5['persistD'+_0x881a3(0x264)+_0x881a3(0x366)+'ngs'](_0xecafb7),_0x5707e3=getTrimmedString(_0xecafb7[_0x881a3(0x310)+'ey']);if(!_0x5707e3)return{'ok':!![],'modelRef':_0x53fb9b[_0x881a3(0x33a)],'defaultPersisted':!![],'currentSessionApplied':![],'effectiveFrom':_0x881a3(0x248)+_0x881a3(0x33c),'sessionKey':null};try{const _0x34ab9e=await _0x5396d6(_0x5707e3,_0x53fb9b[_0x881a3(0x33a)]);return{'ok':!![],'modelRef':_0x53fb9b['modelRef'],'defaultPersisted':!![],'currentSessionApplied':!![],'effectiveFrom':_0x881a3(0x2dc)+_0x881a3(0x1ea),'sessionKey':_0x34ab9e[_0x881a3(0x24a)]};}catch(_0x174e7){if(_0xecafb7[_0x881a3(0x233)+_0x881a3(0x202)+_0x881a3(0x293)+'ack'])return void _0x1c089f(_0x881a3(0x24e)+_0x881a3(0x251)+_0x881a3(0x324)+'dated'),{'ok':!![],'modelRef':_0x53fb9b['modelRef'],'defaultPersisted':!![],'currentSessionApplied':![],'effectiveFrom':_0x881a3(0x386)+_0x881a3(0x2c9),'sessionKey':_0x5707e3,'sessionPatchError':_0x174e7 instanceof Error?_0x174e7[_0x881a3(0x278)]:String(_0x174e7),'gatewayRestartRequested':!![]};return{'ok':!![],'modelRef':_0x53fb9b[_0x881a3(0x33a)],'defaultPersisted':!![],'currentSessionApplied':![],'effectiveFrom':_0x881a3(0x248)+'ion','sessionKey':_0x5707e3,'sessionPatchError':_0x174e7 instanceof Error?_0x174e7[_0x881a3(0x278)]:String(_0x174e7)};}},'setSelfOperatedModels':_0x486428=>_0x35d3c5[_0x169de5(0x2f0)+_0x169de5(0x2cf)+_0x169de5(0x3fe)](_0x486428),'selectedModelId':async()=>{const _0x37f864=_0x169de5,_0x1f6296=await _0x35d3c5['getModel'+_0x37f864(0x3d1)]();return _0x1f6296[_0x37f864(0x26b)]&&_0x1f6296['modelNam'+'e']?_0x1f6296[_0x37f864(0x26b)]+'/'+_0x1f6296[_0x37f864(0x27c)+'e']:'';},'customModels':async()=>{const _0x215bb7=_0x169de5;return _0x35d3c5[_0x215bb7(0x22b)+_0x215bb7(0x383)]();},'saveCustomModel':async _0x3da3e6=>{const _0x3ec67a=_0x169de5;return _0x35d3c5[_0x3ec67a(0x27b)+_0x3ec67a(0x348)](_0x3da3e6);},'deleteCustomModel':async(_0x595133={})=>{const _0x30e740=_0x169de5,_0x2eaaf5=typeof _0x595133===_0x30e740(0x2dd)?{'id':_0x595133}:asRecord(_0x595133),_0x581195=await _0x35d3c5[_0x30e740(0x401)+'stomMode'+'l'](_0x2eaaf5),_0xecdbcc=getTrimmedString(_0x2eaaf5['sessionK'+'ey']);if(!_0x581195[_0x30e740(0x33a)]||!_0xecdbcc)return{'ok':!![],'id':_0x581195['id'],'models':_0x581195[_0x30e740(0x232)],'modelRef':_0x581195[_0x30e740(0x33a)],'currentSessionApplied':![],'effectiveFrom':'new-sess'+_0x30e740(0x33c),'sessionKey':_0xecdbcc||null};try{const _0x5f0f80=await _0x5396d6(_0xecdbcc,_0x581195[_0x30e740(0x33a)]);return{'ok':!![],'id':_0x581195['id'],'models':_0x581195[_0x30e740(0x232)],'modelRef':_0x581195['modelRef'],'currentSessionApplied':!![],'effectiveFrom':_0x30e740(0x2dc)+_0x30e740(0x1ea),'sessionKey':_0x5f0f80[_0x30e740(0x24a)]};}catch(_0x5788c1){return{'ok':!![],'id':_0x581195['id'],'models':_0x581195[_0x30e740(0x232)],'modelRef':_0x581195[_0x30e740(0x33a)],'currentSessionApplied':![],'effectiveFrom':'new-sess'+'ion','sessionKey':_0xecdbcc,'sessionPatchError':_0x5788c1 instanceof Error?_0x5788c1['message']:String(_0x5788c1)};}}},'config':{'read':()=>_0x35d3c5['readConf'+'igRaw']()},'chat':{'stream':_0x22afd6,'abort':_0x236c82,'history':_0x4dd6e3}};}
1
+ const _0x3b6891=_0x3c63;(function(_0x79b33f,_0x5f4e9b){const _0x5ec5cd=_0x3c63,_0x1946c8=_0x79b33f();while(!![]){try{const _0x5806df=parseInt(_0x5ec5cd(0x244))/0x1+-parseInt(_0x5ec5cd(0x1ba))/0x2+-parseInt(_0x5ec5cd(0x141))/0x3*(parseInt(_0x5ec5cd(0x349))/0x4)+parseInt(_0x5ec5cd(0x15d))/0x5+parseInt(_0x5ec5cd(0x2c7))/0x6+parseInt(_0x5ec5cd(0x2b7))/0x7*(parseInt(_0x5ec5cd(0x172))/0x8)+-parseInt(_0x5ec5cd(0x278))/0x9;if(_0x5806df===_0x5f4e9b)break;else _0x1946c8['push'](_0x1946c8['shift']());}catch(_0x2a45d7){_0x1946c8['push'](_0x1946c8['shift']());}}}(_0x2e0e,0xa5c45));import{createHash,randomUUID}from'node:crypto';import{createServer}from'node:http';import{EventEmitter}from'node:events';import{readFile,stat,writeFile}from'node:fs/promises';import{basename,dirname,join}from'node:path';import _0x169627,{portNumbers}from'get-port';import{createLineBuffer}from'@wujie-shell/logger';function _0x2e0e(){const _0x450cc5=['te.succe','slice','T.md','unauthor','delta','ompleted','\x20require','size','http://1','nc\x20compl','dSession','n\x20callba','skills.s','fileName','error','ase\x20retr','Bin','random','t\x20output','getModel','figChang','updated','set','is\x20requi','\x20run','rt\x20reque','skills\x20c','started,','p\x20timing','debug','split','952902LmTjoT','kUserQue','operty','equested','renamed','model\x20re','ode=','reason','agents\x20e','chat.abo','omModel','process\x20','flush','accepted','notifyGa','json','stateDir','event\x20re','workspac','bundled\x20','ready','onOrphan','hasOwnPr','ing','some','llow-unc','saveCust','main','sionLoca','channel-','parentSe','starting','jobId','mcpServe','--port','provider','eys-upda','tewayRea',':run:','kdown','\x20list\x20co','gateway','eway','pted\x20by\x20','text/pla','ized','version','ate','mpleted','agent-ev','r-questi','nabled','nsured','[wujie-s','agents.l','toolsDen','text','chat','red','channel','eys\x20upda','pinnedKe','writeCon','settings','\x20for\x20WS','USER.md','created','modelPro','skill\x20in','map','agents-r','f\x20is\x20req','getCusto','pid','ask-user','openclaw','ame','applicat','agent\x20sk','ed;\x20plug','ntityPat','oot','chat\x20abo','name','splice','new-sess','eady','eam\x20fail','tHandler','d\x20active','errorMes','join','t\x20startu','hell:gat','MEMORY.m','model','isArray','healthy','health','utf8','modelRef','run','/ask-use','cron-cha','create\x20r','Fallback','unshift','base64','chat.sen','stomMode','skill\x20de','setModel','installP','estart','agents.u','gateway-','mimeType','limit','bundled-','allow','.0.0.1:','-invalid','done','messageI','AGENTS.m','ewayRest','POST','exited\x20u','stdout','behavior','isFile','--allow-','patch','content','tory','[media\x20a','\x20gateway','aded','532517dWeCPm','sha256','achment\x20','ensureAs','hex','warning','setSessi','session_','session\x20','stall\x20fa','session-','nected','floor','emit','entries','uested','delete\x20c','events\x20s','status','eam-even','indexOf','warn','cron','onfig\x20sy','leName','delete.s','t-stream','chat\x20str','t_output','session','nged','startedA','find','ove','eway:','onfigure','closed','sessionK','not\x20Open','invalid\x20','label','agents\x20s','ync\x20fail','chat-str','client','achments','ssionRec','image/','Keys','requestI','ath','create\x20c','5092209mWQWiZ','defaultI','off','\x20context','rebuild','dispose','.subscri','-questio','skills','manual\x20r','clear','configFi','ist\x20requ','ills\x20syn','missing_','failed','schedule','pdated','rename\x20c','tatus\x20lo','skills.i','toLowerC','deleted','iled','t\x20discon','runId','arge:\x20','TED]\x20--p','delete','ents\x20syn','restartO','pin_upda','length','\x20failed','rQuestio','igRaw','ties','x-ask-us','lMetadat','spawn\x20re','user_inp','\x20by\x20shel','string','ucceeded','onCustom','signalCo','data','type','values','sessionI','ng:\x20','t\x20not\x20fo','agents.c','stringif','restart','led:\x20','quested','eviceIde','create.s','deleteTr','Settings','finally','\x20signal=','14SuTiPh','delSetti','.create','SIGTERM','onWarn','tateDir','start','orphan\x20s','once','g+xml','ase','end','succeede','final','efaultMo','started','58908rriENH','url','\x20settled','c\x20comple','elete\x20is','managed\x20','object','gateway\x20','deny','reconnec','stop','tewaySet','resolveS','file','timeout','stderr','stall\x20re','ack','close','tings\x20up','ensureGa','.failed','max','mcp','generate','.changed','agent_id','custom\x20m','listen','\x20request','ternally','res','dly','n\x20[REDAC','Timer','projectR','deleteSe','image/sv','Version','led','remove','SIGKILL','cron.add','toString','nfig\x20syn','.patch','not_foun','\x20failed\x20','chat_str','sage','ured','stopped','wujieai.','markConf','sessions','headers','token','info','y\x20shortl','agents-u','message\x20','ession\x20i','ated','settled','answer','agentRun','[REDACTE','agents','controll','\x20waiting','method','andledIn','chat\x20att','agent\x20ru','agentId','skills\x20s','toUpperC','lifecycl','websocke','ayRestar','desktop','.succeed','updatedA','key','text/mar','\x20allocat','setSelfO','expr','test','ndled\x20ag','sent','servers','message','startsWi','sted','ested','ey\x20is\x20re','cron.lis','state','uired','date\x20req','odel\x20set','log','push','pdate\x20is','resolveC','setPinne','assistan','readConf','ing,\x20ple','get','unhealth','n\x20reques','resolveD','key\x20is\x20r','has','configur','models','system','null','chat\x20fai','ded','e\x20update','ion','unconfig','tools','toISOStr','stionPlu','update','\x20write\x20r','7164OqXDEt','mapSkill','IDENTITY','127.0.0.','unknown','archive\x20','fig','reate','ted','Name','call','agent:','pdate','image/pn','0.1.0','eam\x20queu','watchCon','deleteCu','SOUL.md','paths','1161ZOwdqt','enqueue','HEARTBEA','pted','\x20handled','destroy','terminal','list','filePath','skillKey','ubscribe','cursor','writeHea','modelNam','changed','ved','ord','e\x20shared','aborted','chat.his','port','skills.d','allowGat','stack','image/jp','skill\x20up','updated_','phase','3835635aXsTcI','nstall','image/gi','user\x20inp','agents\x20l','chat\x20run','image/we','kill','27.0.0.1','nexpecte','und','time','ion/json','quired','boolean','running','filter','ntime\x20co','stall\x20co','.delete','source','4419552NyRGtu','Claw\x20gat','--token','pop','resolve','discover','history_','.md','ngs','enabled','ced','\x20run\x20--a','\x20prepare','setGatew','artFallb','sync','d-files-','next-mes','producti','cron-run','jobId\x20is','backgrou','request','requeste','ion/pdf','onfigPat','keys','outputTe','restarti','add','anscript','catch','ent','cron.upd','eway]\x20bu','WorkingD','image','now','eam\x20acce','eded','nChange'];_0x2e0e=function(){return _0x450cc5;};return _0x2e0e();}import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'../common/utils.mjs';import{ensureOpenClawDoctorFixed,loadRuntimeInfo,spawnClaw}from'../runtime/index.mjs';import{ClawGatewayWsClient}from'./ws-client.mjs';import{ensureBundledAgents}from'../agents/bundled-agents.mjs';import{archiveChatAttachmentForHistory}from'../chat/media-archive.mjs';import{syncBundledAgentSkillsToConfig,filterSkillsForAgent}from'../agents/bundled-agent-skills.mjs';function _0x3c63(_0x51654f,_0x2aa59b){_0x51654f=_0x51654f-0x12f;const _0x2e0e54=_0x2e0e();let _0x3c63b0=_0x2e0e54[_0x51654f];return _0x3c63b0;}import{syncManagedSkillsToConfig}from'../skills/import.mjs';import{createMarketSkillRuntime}from'../skills/market.mjs';import{createShellLogger,summarizeError,summarizeFilePaths,summarizePayload,summarizeText,toHomePath}from'../common/logging.mjs';import{summarizeUserEventAttachments}from'../common/user-events.mjs';import{createGatewayChatQueue}from'../chat/queue.mjs';import{resolveGatewayChatDelta}from'./chat-delta.mjs';import{createSessionSqliteStore}from'../sessions/session-sqlite-store.mjs';const LOG_LIMIT=0x3e8,CLIENT_ID=_0x3b6891(0x22d)+_0x3b6891(0x270),CLIENT_MODE='backend',CLIENT_DEVICE_FAMILY=_0x3b6891(0x317),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,AGENT_EVENT_SESSION_INVALIDATION_DEBOUNCE_MS=0x320,SHARED_CONTEXT_FILES=[_0x3b6891(0x236)+'d',_0x3b6891(0x143)+_0x3b6891(0x19d),_0x3b6891(0x12f)+_0x3b6891(0x179),_0x3b6891(0x218)+'d',_0x3b6891(0x13f),'TOOLS.md',_0x3b6891(0x1fb)],DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!=='producti'+'on',IS_PACKAGED_RUNTIME=!process.env.VITE_DEV_SERVER_URL&&process.env.NODE_ENV===_0x3b6891(0x184)+'on',BACKGROUND_CHAT_HISTORY_SOURCES=new Set([_0x3b6891(0x1eb)+_0x3b6891(0x192),_0x3b6891(0x187)+'nd-poll',_0x3b6891(0x1d7)+'hydratio'+'n','gateway-'+_0x3b6891(0x1ce),_0x3b6891(0x2df)+_0x3b6891(0x182)+_0x3b6891(0x27c),_0x3b6891(0x2df)+_0x3b6891(0x182)+'session-'+_0x3b6891(0x181),_0x3b6891(0x24e)+'updated']);function hashForDiagnostic(_0x211a19){const _0x489a52=_0x3b6891;return createHash(_0x489a52(0x245))[_0x489a52(0x347)](String(_0x211a19??''))['digest'](_0x489a52(0x248))[_0x489a52(0x19c)](0x0,0xc);}function createEmptyChatHistoryResult(_0x56507e){return{'messages':[],'limit':_0x56507e,'hasMore':![],'nextCursor':null};}function isChatHistoryNotFoundError(_0x381fc5){const _0x404da5=_0x3b6891;return _0x381fc5 instanceof Error&&/\bHTTP 404\b/[_0x404da5(0x31f)](_0x381fc5[_0x404da5(0x323)]);}function isCronRunSessionKey(_0x2865e3){return/^agent:[^:]+:cron:automation-[^:]+:run:[^:]+$/['test'](String(_0x2865e3??''));}function normalizeCronRunSessionKey(_0x5bff22){const _0x12ee4d=_0x3b6891,_0x4847d8=getTrimmedString(_0x5bff22);if(!isCronRunSessionKey(_0x4847d8))return _0x4847d8;return _0x4847d8[_0x12ee4d(0x19c)](0x0,_0x4847d8[_0x12ee4d(0x258)](_0x12ee4d(0x1e0)));}export function syncBundledAgentRuntimeConfig(_0x39c949,_0x3bd89d=[]){const _0x1f1826=_0x3b6891,_0x423982=_0x3bd89d[_0x1f1826(0x16d)](_0x416ab3=>{const _0x24ca45=_0x1f1826,_0x54c656=asRecord(_0x416ab3);return asStringArray(_0x54c656[_0x24ca45(0x1f1)+'y'])[_0x24ca45(0x298)]>0x0||Object['keys'](asRecord(_0x54c656['mcpServe'+'rs']))['length']>0x0;});if(_0x423982[_0x1f1826(0x298)]===0x0)return{'config':_0x39c949,'changed':![]};let _0x2da5b1=![];const _0x11549c={...asRecord(_0x39c949)},_0x4ab214={...asRecord(_0x11549c['agents'])},_0x447be1=Array[_0x1f1826(0x21a)](_0x4ab214[_0x1f1826(0x148)])?_0x4ab214['list']:[],_0x15c9da=_0x447be1[_0x1f1826(0x1ff)](_0x240d77=>_0x240d77&&typeof _0x240d77===_0x1f1826(0x2cd)?{..._0x240d77}:_0x240d77),_0x420e3e={...asRecord(_0x11549c[_0x1f1826(0x344)])};let _0x11f1ef=asStringArray(_0x420e3e[_0x1f1826(0x2cf)]);const _0x1b77b3={...asRecord(_0x11549c[_0x1f1826(0x2de)])},_0x54a056={...asRecord(_0x1b77b3[_0x1f1826(0x322)]??_0x11549c[_0x1f1826(0x1db)+'rs'])};for(const _0x1bb4cb of _0x423982){const _0x588f29=getTrimmedString(_0x1bb4cb[_0x1f1826(0x20d)]);if(!_0x588f29)continue;const _0x1232ed=_0x588f29==='main'?null:_0x15c9da[_0x1f1826(0x264)](_0x19715c=>getTrimmedString(asRecord(_0x19715c)['id'])===_0x588f29),_0x565bb7=asStringArray(_0x1bb4cb['toolsDen'+'y']);if(_0x1232ed&&_0x565bb7[_0x1f1826(0x298)]>0x0){'toolsDen'+'y'in _0x1232ed&&(delete _0x1232ed['toolsDen'+'y'],_0x2da5b1=!![]);const _0x4d6de4=dedupeStrings([..._0x11f1ef,..._0x565bb7]);JSON[_0x1f1826(0x2ad)+'y'](_0x4d6de4)!==JSON['stringif'+'y'](_0x11f1ef)&&(_0x11f1ef=_0x4d6de4,_0x2da5b1=!![]);}const _0x834e23=asRecord(_0x1bb4cb[_0x1f1826(0x1db)+'rs']);if(Object['keys'](_0x834e23)[_0x1f1826(0x298)]>0x0){_0x1232ed&&(_0x1f1826(0x1db)+'rs'in _0x1232ed&&(delete _0x1232ed[_0x1f1826(0x1db)+'rs'],_0x2da5b1=!![]));for(const [_0x5cf5a0,_0x289fb7]of Object[_0x1f1826(0x252)](_0x834e23)){if(JSON[_0x1f1826(0x2ad)+'y'](_0x54a056[_0x5cf5a0])===JSON[_0x1f1826(0x2ad)+'y'](_0x289fb7))continue;_0x54a056[_0x5cf5a0]=_0x289fb7,_0x2da5b1=!![];}}}return _0x2da5b1&&(_0x4ab214[_0x1f1826(0x148)]=_0x15c9da,_0x11549c[_0x1f1826(0x30a)]=_0x4ab214,Object[_0x1f1826(0x18c)](_0x54a056)['length']>0x0&&(_0x1b77b3[_0x1f1826(0x322)]=_0x54a056,_0x11549c['mcp']=_0x1b77b3),_0x11f1ef[_0x1f1826(0x298)]>0x0&&(_0x420e3e[_0x1f1826(0x2cf)]=_0x11f1ef,_0x11549c[_0x1f1826(0x344)]=_0x420e3e)),{'config':_0x11549c,'changed':_0x2da5b1};}function nowIso(){const _0x5a1b5a=_0x3b6891;return new Date()[_0x5a1b5a(0x345)+_0x5a1b5a(0x1d1)]();}function waitForChildExit(_0x963f49,_0x3b1968=0x1388){const _0x5baff4=_0x3b6891;if(!_0x963f49||_0x963f49['exitCode']!==null||_0x963f49[_0x5baff4(0x2a5)+'de'])return Promise[_0x5baff4(0x176)](!![]);return new Promise(_0x5aca44=>{const _0xad6d6f=_0x5baff4;let _0x16f643=![];const _0x1409bb=_0x25d97a=>{const _0x11c279=_0x3c63;if(_0x16f643)return;_0x16f643=!![],clearTimeout(_0x1da0f1),_0x963f49['off']('exit',_0x4a8062),_0x963f49[_0x11c279(0x27a)](_0x11c279(0x2d9),_0x4a8062),_0x5aca44(_0x25d97a);},_0x4a8062=()=>_0x1409bb(!![]),_0x1da0f1=setTimeout(()=>_0x1409bb(![]),_0x3b1968);_0x963f49['once']('exit',_0x4a8062),_0x963f49[_0xad6d6f(0x2bf)](_0xad6d6f(0x2d9),_0x4a8062);});}function buildGatewayWsUrl(_0x564b85){const _0x730c27=_0x3b6891;return'ws://127'+_0x730c27(0x232)+_0x564b85;}function createInitialStatus(){const _0x248b34=_0x3b6891;return{'lifecycle':_0x248b34(0x2fa),'health':_0x248b34(0x131),'port':null,'tokenPresent':![],'initialStartupComplete':![],'message':_0x248b34(0x2ce)+_0x248b34(0x2fa),'updatedAt':nowIso()};}export function createMainAgentFallback(_0x268b86){const _0x3eda00=_0x3b6891;return{'id':_0x3eda00(0x1d5),'name':'通用','workspace':join(_0x268b86[_0x3eda00(0x2d3)+'tateDir'](),_0x3eda00(0x1cc)+'e')};}export async function readConfiguredAgentsForPendingList(_0x2ddbd1){const _0x146e1a=_0x3b6891;try{const _0x534c3c=await _0x2ddbd1[_0x146e1a(0x333)+_0x146e1a(0x29b)](),_0x9a8479=asRecord(_0x534c3c[_0x146e1a(0x30a)]);return Array[_0x146e1a(0x21a)](_0x9a8479[_0x146e1a(0x148)])?_0x9a8479[_0x146e1a(0x148)]:[];}catch{return[];}}export function orderAgentsByConfiguredList(_0x560aba,_0x2b0e14){const _0x36c52e=_0x3b6891,_0xb98737=Array[_0x36c52e(0x21a)](_0x560aba)?_0x560aba:[],_0x5c2898=Array[_0x36c52e(0x21a)](_0x2b0e14)?_0x2b0e14:[];if(_0x5c2898[_0x36c52e(0x298)]===0x0)return[..._0xb98737];const _0x4bee20=new Map();for(const _0x1a8aba of _0xb98737){const _0x20c247=getTrimmedString(asRecord(_0x1a8aba)['id']);if(_0x20c247&&!_0x4bee20[_0x36c52e(0x33a)](_0x20c247))_0x4bee20[_0x36c52e(0x1b1)](_0x20c247,_0x1a8aba);}const _0x3481d9=new Set(),_0x1eb54b=[];for(const _0x4afee2 of _0x5c2898){const _0x38134e=getTrimmedString(asRecord(_0x4afee2)['id']);if(!_0x38134e||_0x3481d9[_0x36c52e(0x33a)](_0x38134e))continue;const _0x3848d1=_0x4bee20[_0x36c52e(0x335)](_0x38134e);_0x1eb54b[_0x36c52e(0x32e)](_0x3848d1?{..._0x4afee2,..._0x3848d1}:_0x4afee2),_0x3481d9[_0x36c52e(0x18f)](_0x38134e);}for(const _0x524124 of _0xb98737){const _0x4281f1=getTrimmedString(asRecord(_0x524124)['id']);if(!_0x4281f1||_0x3481d9[_0x36c52e(0x33a)](_0x4281f1))continue;_0x1eb54b[_0x36c52e(0x32e)](_0x524124),_0x3481d9[_0x36c52e(0x18f)](_0x4281f1);}return _0x1eb54b;}function extractGatewayMessageText(_0x530981){const _0x3614f3=_0x3b6891;if(typeof _0x530981===_0x3614f3(0x2a2))return _0x530981;if(!Array['isArray'](_0x530981))return'';const _0x44c159=[];for(const _0x2f6222 of _0x530981){if(typeof _0x2f6222===_0x3614f3(0x2a2)){if(_0x2f6222)_0x44c159[_0x3614f3(0x32e)](_0x2f6222);continue;}const _0x542e38=asRecord(_0x2f6222);_0x542e38[_0x3614f3(0x2a7)]===_0x3614f3(0x1f2)&&typeof _0x542e38[_0x3614f3(0x1f2)]===_0x3614f3(0x2a2)&&_0x542e38[_0x3614f3(0x1f2)]&&_0x44c159['push'](_0x542e38[_0x3614f3(0x1f2)]);}return _0x44c159[_0x3614f3(0x215)]('\x0a');}function extractGatewayChatText(_0x54123f){const _0xba2897=_0x3b6891,_0x3f06e2=asRecord(_0x54123f);if(typeof _0x3f06e2[_0xba2897(0x1f2)]===_0xba2897(0x2a2))return _0x3f06e2[_0xba2897(0x1f2)];return extractGatewayMessageText(_0x3f06e2[_0xba2897(0x23f)]);}function applySkillConfigStateToStatus(_0x23e0af,_0x26debe){const _0x4b4433=_0x3b6891,_0x47f301=asRecord(_0x23e0af),_0x37a12e=Array['isArray'](_0x47f301[_0x4b4433(0x280)])?_0x47f301['skills']:[];if(_0x37a12e['length']===0x0)return _0x23e0af;const _0x5e107a=asRecord(asRecord(asRecord(_0x26debe)['skills'])[_0x4b4433(0x252)]);if(Object['keys'](_0x5e107a)[_0x4b4433(0x298)]===0x0)return _0x23e0af;const _0x325921=_0x37a12e['map'](_0x17805c=>{const _0x2db268=_0x4b4433,_0x30c4de=asRecord(_0x17805c),_0x5c79f9=[getTrimmedString(_0x30c4de['gatewayS'+'killKey']),getTrimmedString(_0x30c4de[_0x2db268(0x14a)]),getTrimmedString(_0x30c4de[_0x2db268(0x20d)])][_0x2db268(0x16d)](Boolean),_0x251e1b=_0x5c79f9[_0x2db268(0x264)](_0x400e70=>Object['prototyp'+'e'][_0x2db268(0x1d0)+_0x2db268(0x1bc)][_0x2db268(0x137)](_0x5e107a,_0x400e70));if(!_0x251e1b)return _0x17805c;const _0x2386f6=asRecord(_0x5e107a[_0x251e1b]);if(typeof _0x2386f6[_0x2db268(0x17b)]!==_0x2db268(0x16b))return _0x17805c;return{..._0x30c4de,'disabled':_0x2386f6[_0x2db268(0x17b)]===![]};});return{..._0x47f301,'skills':_0x325921};}function guessMimeType(_0x20d4f4){const _0x571af2=_0x3b6891,_0xff75e8=_0x20d4f4[_0x571af2(0x1b9)]('.')[_0x571af2(0x175)]()?.[_0x571af2(0x28d)+_0x571af2(0x2c1)]()??'',_0x3f63d1={'png':_0x571af2(0x13a)+'g','jpg':_0x571af2(0x159)+'eg','jpeg':'image/jp'+'eg','webp':_0x571af2(0x163)+'bp','gif':_0x571af2(0x15f)+'f','svg':_0x571af2(0x2ec)+_0x571af2(0x2c0),'pdf':_0x571af2(0x207)+_0x571af2(0x18a),'txt':_0x571af2(0x1e6)+'in','md':_0x571af2(0x31b)+_0x571af2(0x1e1),'json':_0x571af2(0x207)+_0x571af2(0x169),'csv':'text/csv'};return _0x3f63d1[_0xff75e8]||'applicat'+'ion/octe'+_0x571af2(0x25e);}async function buildAttachments(_0x271d59=[],_0x574cc6={}){const _0x70f654=_0x3b6891,_0x56ed2a=[],_0x10bc9f=[];for(const _0x4b23de of _0x271d59){const _0x4a6fb1=getTrimmedString(_0x4b23de);if(!_0x4a6fb1)continue;const _0x148508=await stat(_0x4a6fb1);if(!_0x148508[_0x70f654(0x23c)]())continue;if(_0x148508[_0x70f654(0x1a2)]>ATTACHMENT_MAX_BYTES)throw new Error('attachme'+'nt\x20too\x20l'+_0x70f654(0x292)+basename(_0x4a6fb1));const _0x401f49=guessMimeType(_0x4a6fb1);_0x56ed2a[_0x70f654(0x32e)]({'type':_0x401f49[_0x70f654(0x324)+'th'](_0x70f654(0x273))?_0x70f654(0x196):_0x70f654(0x2d4),'mimeType':_0x401f49,'content':(await readFile(_0x4a6fb1))['toString'](_0x70f654(0x225)),'fileName':basename(_0x4a6fb1)});if(_0x574cc6[_0x70f654(0x269)+'ey']&&_0x574cc6[_0x70f654(0x1ca)]){const _0xa1b805=await archiveChatAttachmentForHistory({'mediaPath':_0x4a6fb1,'sessionKey':_0x574cc6[_0x70f654(0x269)+'ey'],'stateDir':_0x574cc6[_0x70f654(0x1ca)],'onWarn':_0xdc2676=>_0x574cc6[_0x70f654(0x2bb)]?.(_0xdc2676)});_0x10bc9f[_0x70f654(0x32e)](_0x70f654(0x241)+'ttached:'+'\x20'+_0xa1b805+'\x20('+_0x401f49+')]');}}return{'attachments':_0x56ed2a,'historyMediaLines':_0x10bc9f};}function buildSessionCreateRequestPayload(_0x4a3a43={}){const _0x5acce9=_0x3b6891,_0x155072={},_0x181653=Math[_0x5acce9(0x1ac)]()['toString'](0x24)['slice'](0x2,0xf),_0x4c2b81=getTrimmedString(_0x4a3a43[_0x5acce9(0x311)])||'main',_0xc856a5=getTrimmedString(_0x4a3a43[_0x5acce9(0x31a)])||_0x5acce9(0x138)+_0x4c2b81+(':session'+'-')+Date['now']();_0x155072[_0x5acce9(0x31a)]=_0xc856a5+'-'+_0x181653,_0x155072[_0x5acce9(0x311)]=_0x4c2b81;const _0x3ddaa9=getTrimmedString(_0x4a3a43[_0x5acce9(0x26c)]);if(_0x3ddaa9)_0x155072['label']=_0x3ddaa9+'-'+_0x181653;for(const _0x47f42c of[_0x5acce9(0x219),_0x5acce9(0x1d8)+'ssionKey','task','message']){const _0x404095=getTrimmedString(_0x4a3a43[_0x47f42c]);if(_0x404095)_0x155072[_0x47f42c]=_0x404095;}return _0x155072;}function normalizeCronMutationParams(_0xa90a76={}){const _0x39800d=_0x3b6891,_0x1e417d={...asRecord(_0xa90a76)},_0x47cb5a=asRecord(_0x1e417d[_0x39800d(0x288)]);if(Object[_0x39800d(0x18c)](_0x47cb5a)['length']>0x0){const _0x4da8ab={..._0x47cb5a},_0x3341bd=getTrimmedString(_0x4da8ab[_0x39800d(0x25a)]);_0x3341bd&&!getTrimmedString(_0x4da8ab[_0x39800d(0x31e)])&&(_0x4da8ab['expr']=_0x3341bd),delete _0x4da8ab['cron'],_0x1e417d['schedule']=_0x4da8ab;}return _0x1e417d;}function parseSessionCreateResult(_0x2b9cc7){const _0x114510=_0x3b6891,_0xb296a5=asRecord(_0x2b9cc7),_0x383cea=asRecord(_0xb296a5[_0x114510(0x261)]);return{'ok':!![],'key':getTrimmedString(_0xb296a5['key'])||getTrimmedString(_0xb296a5[_0x114510(0x269)+'ey'])||getTrimmedString(_0x383cea[_0x114510(0x31a)])||null,'sessionId':getTrimmedString(_0xb296a5[_0x114510(0x2a9)+'d'])||getTrimmedString(_0x383cea[_0x114510(0x2a9)+'d'])||null};}function getSessionKeyFromValue(_0x474656){const _0x26baf0=_0x3b6891,_0x1508eb=asRecord(_0x474656);return getTrimmedString(_0x1508eb[_0x26baf0(0x269)+'ey']??_0x1508eb[_0x26baf0(0x31a)]??_0x1508eb['id']);}function filterValidSessionList(_0x4871ab,_0xee0f22={}){const _0x14e059=_0x3b6891,_0x783dde=asRecord(_0x4871ab),_0x13764b=Array[_0x14e059(0x21a)](_0x783dde['sessions'])?_0x783dde[_0x14e059(0x2fd)]:[],_0x34d4d4=typeof _0xee0f22[_0x14e059(0x1cf)+'Session']==='function'?_0xee0f22[_0x14e059(0x1cf)+'Session']:null;return{..._0x783dde,'sessions':_0x13764b[_0x14e059(0x1ff)](_0xd58be4=>{const _0x9858b8=_0x14e059,_0x2fe6de=asRecord(_0xd58be4),_0x42f552=getSessionKeyFromValue(_0x2fe6de);if(!_0x42f552)return _0xd58be4;const _0x4c3fa0=getTrimmedString(_0x2fe6de[_0x9858b8(0x2a9)+'d'])||getTrimmedString(_0x2fe6de[_0x9858b8(0x24b)+'id']);if(!_0x4c3fa0)return _0x34d4d4?.(_0x42f552,{'updatedAt':_0x2fe6de[_0x9858b8(0x319)+'t']??_0x2fe6de[_0x9858b8(0x15b)+'at']??null,'agentId':getTrimmedString(_0x2fe6de[_0x9858b8(0x311)]??_0x2fe6de[_0x9858b8(0x2e1)])}),null;return _0x2fe6de;})[_0x14e059(0x16d)](Boolean)};}function sanitizeSharedContextPayload(_0x19e9fd){const _0xf91d65=_0x3b6891,_0x12d21d=asRecord(_0x19e9fd),_0x39d1ef={};for(const _0x395b64 of SHARED_CONTEXT_FILES){if(typeof _0x12d21d[_0x395b64]===_0xf91d65(0x2a2))_0x39d1ef[_0x395b64]=_0x12d21d[_0x395b64];}return _0x39d1ef;}async function readSharedContext(_0xf52121){const _0x3dbfee=_0x3b6891,_0x51e91e={};for(const _0x28c848 of SHARED_CONTEXT_FILES){try{_0x51e91e[_0x28c848]=await readFile(join(_0xf52121,_0x28c848),_0x3dbfee(0x21d));}catch{_0x51e91e[_0x28c848]='';}}return _0x51e91e;}async function writeSharedContext(_0x56f2c7,_0x3d1015){const _0x315322=_0x3b6891,_0x92cf32=sanitizeSharedContextPayload(_0x3d1015);await mkdir(_0x56f2c7,{'recursive':!![]});for(const [_0x328c61,_0x392c38]of Object['entries'](_0x92cf32)){await writeFile(join(_0x56f2c7,_0x328c61),_0x392c38,_0x315322(0x21d));}return{'ok':!![],'files':Object[_0x315322(0x18c)](_0x92cf32)};}function createAskUserQuestionServer({configController:_0x3f949e,emit:_0x3d74a8}){const _0x31564e=new Map();let _0x435e7d=null,_0x6ec326='',_0x21f770='';async function _0x73c1a7(){const _0x40a7e1=_0x3c63;if(_0x435e7d)return{'callbackUrl':_0x6ec326,'secret':_0x21f770};_0x21f770=randomUUID();const _0x5192c0=await _0x169627({'port':portNumbers(0x332c,0x338f)});return _0x6ec326=_0x40a7e1(0x1a3)+_0x40a7e1(0x165)+':'+_0x5192c0+(_0x40a7e1(0x220)+_0x40a7e1(0x1ec)+'on'),_0x435e7d=createServer(async(_0x5b1f81,_0x45a035)=>{const _0x21cc0f=_0x40a7e1;if(_0x5b1f81[_0x21cc0f(0x30d)]!==_0x21cc0f(0x238)||_0x5b1f81[_0x21cc0f(0x2c8)]!=='/ask-use'+_0x21cc0f(0x1ec)+'on'){_0x45a035[_0x21cc0f(0x14d)+'d'](0x194),_0x45a035[_0x21cc0f(0x2c2)]('not\x20foun'+'d');return;}if(_0x5b1f81[_0x21cc0f(0x2fe)][_0x21cc0f(0x29d)+'er-secre'+'t']!==_0x21f770){_0x45a035[_0x21cc0f(0x14d)+'d'](0x191),_0x45a035[_0x21cc0f(0x2c2)](_0x21cc0f(0x19e)+_0x21cc0f(0x1e7));return;}let _0x4c46d9='';_0x5b1f81['on'](_0x21cc0f(0x2a6),_0x289b19=>{const _0xd047b=_0x21cc0f;_0x4c46d9+=_0x289b19['toString']();if(_0x4c46d9['length']>0x400*0x400)_0x5b1f81[_0xd047b(0x146)]();}),_0x5b1f81['on']('end',()=>{const _0x5b969d=_0x21cc0f;let _0x502416={};try{_0x502416=JSON['parse'](_0x4c46d9||'{}');}catch{_0x45a035[_0x5b969d(0x14d)+'d'](0x190),_0x45a035[_0x5b969d(0x2c2)](_0x5b969d(0x26b)+'json');return;}const _0x286f1b=randomUUID(),_0xfdf077=setTimeout(()=>{const _0x166173=_0x5b969d;if(!_0x31564e[_0x166173(0x33a)](_0x286f1b))return;_0x31564e['delete'](_0x286f1b),_0x45a035[_0x166173(0x14d)+'d'](0xc8,{'content-type':_0x166173(0x207)+_0x166173(0x169)}),_0x45a035[_0x166173(0x2c2)](JSON[_0x166173(0x2ad)+'y']({'behavior':_0x166173(0x2cf)}));},0x1d4c0);_0x31564e['set'](_0x286f1b,{'res':_0x45a035,'timeout':_0xfdf077}),_0x3d74a8('ask-user'+'-questio'+'n',{'requestId':_0x286f1b,...asRecord(_0x502416)});});}),await new Promise((_0x16c712,_0x3ebceb)=>{const _0x35b910=_0x40a7e1;_0x435e7d[_0x35b910(0x2bf)](_0x35b910(0x1a9),_0x3ebceb),_0x435e7d[_0x35b910(0x2e3)](_0x5192c0,_0x35b910(0x130)+'1',()=>{const _0x18de8c=_0x35b910;_0x435e7d[_0x18de8c(0x27a)]('error',_0x3ebceb),_0x16c712();});}),await _0x3f949e[_0x40a7e1(0x247)+_0x40a7e1(0x1bb)+_0x40a7e1(0x346)+'ginConfi'+'g']({'callbackUrl':_0x6ec326,'secret':_0x21f770}),{'callbackUrl':_0x6ec326,'secret':_0x21f770};}function _0x2ace3a(_0x38d734={}){const _0xa57bc0=_0x3c63,_0x255b6d=getTrimmedString(_0x38d734['requestI'+'d']);if(!_0x255b6d||!_0x31564e[_0xa57bc0(0x33a)](_0x255b6d))throw new Error(_0xa57bc0(0x204)+'-questio'+_0xa57bc0(0x337)+_0xa57bc0(0x2ab)+_0xa57bc0(0x167));const _0x66e4a4=_0x31564e[_0xa57bc0(0x335)](_0x255b6d);return _0x31564e[_0xa57bc0(0x294)](_0x255b6d),clearTimeout(_0x66e4a4[_0xa57bc0(0x2d5)]),_0x66e4a4[_0xa57bc0(0x2e6)][_0xa57bc0(0x14d)+'d'](0xc8,{'content-type':_0xa57bc0(0x207)+_0xa57bc0(0x169)}),_0x66e4a4[_0xa57bc0(0x2e6)][_0xa57bc0(0x2c2)](JSON[_0xa57bc0(0x2ad)+'y']({'behavior':_0x38d734[_0xa57bc0(0x23b)]===_0xa57bc0(0x2cf)?_0xa57bc0(0x2cf):_0xa57bc0(0x231),'answers':asRecord(_0x38d734['answers'])})),{'ok':!![]};}async function _0x5a0ea5(){const _0x45ad00=_0x3c63;for(const [_0x320ff1,_0x32d669]of _0x31564e){_0x31564e[_0x45ad00(0x294)](_0x320ff1),clearTimeout(_0x32d669[_0x45ad00(0x2d5)]),_0x32d669[_0x45ad00(0x2e6)]['writeHea'+'d'](0xc8,{'content-type':'applicat'+_0x45ad00(0x169)}),_0x32d669[_0x45ad00(0x2e6)][_0x45ad00(0x2c2)](JSON[_0x45ad00(0x2ad)+'y']({'behavior':'deny'}));}if(!_0x435e7d)return;await new Promise(_0x3b63b4=>_0x435e7d[_0x45ad00(0x2d9)](_0x3b63b4)),_0x435e7d=null;}return{'start':_0x73c1a7,'answer':_0x2ace3a,'stop':_0x5a0ea5};}export function createGatewayController({shellConfig:_0x10accd,configController:_0x260f5c,appVersion:appVersion=_0x3b6891(0x13b),productRuntimeHooks:productRuntimeHooks={},userEventWriter:userEventWriter=null,sessionSqliteStore:sessionSqliteStore=null}){const _0x491b5c=_0x3b6891,_0x270cf3=new EventEmitter(),_0xcbf205=new ClawGatewayWsClient(),_0x48e7ca=[],_0x418df4=new Map(),_0x5794a5=createGatewayChatQueue(),_0x3ac011=new Map(),_0xfd3145=new Set();let _0x1ad2b9=null,_0x4011a7='';const _0x437d0c=createShellLogger(_0x260f5c[_0x491b5c(0x140)],_0x491b5c(0x1e3)),_0x39d148=createShellLogger(_0x260f5c[_0x491b5c(0x140)],_0x491b5c(0x1f3)),_0x3a246b=createShellLogger(_0x260f5c[_0x491b5c(0x140)],'sessions'),_0x5eebf8=createShellLogger(_0x260f5c['paths'],'capabili'+_0x491b5c(0x29c)),_0x373c0b=sessionSqliteStore||createSessionSqliteStore({'stateDir':_0x260f5c[_0x491b5c(0x2d3)+_0x491b5c(0x2bc)]()}),_0x672ea3=createMarketSkillRuntime({'configController':_0x260f5c}),_0x60a2fd=createAskUserQuestionServer({'configController':_0x260f5c,'emit':(_0x1db0d2,_0x5d3946)=>_0x270cf3[_0x491b5c(0x251)](_0x1db0d2,_0x5d3946)});let _0x32c9bc=createInitialStatus(),_0x2b432e=null,_0x4415f0=null,_0x105cdc=null,_0x5dc36c=![],_0x57cd8f=![],_0x23e15e=![],_0x2a62a1=null,_0x10e5bf=Promise[_0x491b5c(0x176)](),_0x194b30=null,_0x22b944=0x0,_0x1cc569=0x0;function _0x503b52(_0x4ce47d,_0x58e594){const _0xbf6337=_0x491b5c;_0x270cf3[_0xbf6337(0x251)](_0x4ce47d,_0x58e594);}function _0x567ea6(_0x3a32bd,_0x57031a){const _0x1e1110=_0x491b5c;return _0x270cf3['on'](_0x3a32bd,_0x57031a),()=>_0x270cf3[_0x1e1110(0x27a)](_0x3a32bd,_0x57031a);}function _0x108d59(_0x115ceb){const _0x260c9f=_0x491b5c;userEventWriter?.['write'](_0x115ceb)?.[_0x260c9f(0x191)](()=>{});}function _0xfb115a(_0x7e2f84){const _0x3fccbf=_0x491b5c;_0x32c9bc={..._0x32c9bc,..._0x7e2f84,'updatedAt':nowIso()},_0x503b52('gateway-'+_0x3fccbf(0x256),_0x32c9bc);}function _0x47157d(_0x5556f5,_0x12fa08,_0x12df1f={}){const _0x24ce92=_0x491b5c;_0xfb115a({'lifecycle':_0x5556f5,'message':_0x12fa08,..._0x5556f5===_0x24ce92(0x16c)?{'initialStartupComplete':!![]}:{},..._0x12df1f}),_0x4b6f43(_0x24ce92(0x33d),_0x5556f5[_0x24ce92(0x313)+'ase']()+'\x20'+_0x12fa08),_0x437d0c?.[_0x24ce92(0x300)]('gateway\x20'+_0x24ce92(0x314)+_0x24ce92(0x341)+'d',{'lifecycle':_0x5556f5,'message':_0x12fa08,'status':{'health':_0x32c9bc[_0x24ce92(0x21c)],'port':_0x32c9bc[_0x24ce92(0x155)],'tokenPresent':_0x32c9bc['tokenPre'+_0x24ce92(0x321)]},...summarizePayload(_0x12df1f)});}function _0x4b6f43(_0x698328,_0x4dcdea){const _0x1dd623=_0x491b5c,_0x53f32a=String(_0x4dcdea??'')['trimEnd']();if(!_0x53f32a)return;if(DEBUG_STDOUT){const _0x2254e6=_0x698328==='stderr'?console[_0x1dd623(0x1a9)]:console[_0x1dd623(0x300)];_0x2254e6(_0x1dd623(0x1ef)+_0x1dd623(0x217)+_0x1dd623(0x266)+_0x698328+']',_0x53f32a);}const _0x477d98={'source':_0x698328,'text':_0x53f32a,'timestamp':nowIso()};_0x48e7ca[_0x1dd623(0x32e)](_0x477d98);if(_0x48e7ca['length']>LOG_LIMIT)_0x48e7ca[_0x1dd623(0x20e)](0x0,_0x48e7ca['length']-LOG_LIMIT);_0x503b52('gateway-'+_0x1dd623(0x32d),_0x477d98),/\[gateway\]\s+ready\b/['test'](_0x53f32a)&&_0xcbf205[_0x1dd623(0x1c8)+_0x1dd623(0x1df)+'dy'](),_0x437d0c?.['info'](_0x1dd623(0x2ce)+_0x1dd623(0x32d),{'source':_0x698328,'text':_0x53f32a});}function _0x4aa0ef(_0x48f493,_0x5badb4,_0x2cdf09={}){const _0x5bc0bb=_0x491b5c,_0x28baaf=_0x5badb4+':'+_0x48f493;if(_0xfd3145[_0x5bc0bb(0x33a)](_0x28baaf))return;_0xfd3145[_0x5bc0bb(0x18f)](_0x28baaf),_0x3a246b?.[_0x5bc0bb(0x259)](_0x5bc0bb(0x2be)+_0x5bc0bb(0x304)+'gnored',{'reason':_0x5badb4,'sessionKeyHash':hashForDiagnostic(_0x48f493),..._0x2cdf09});}function _0x107620(_0x2984bc=0xc8){const _0x962e81=_0x491b5c;return _0x48e7ca['slice'](-Math[_0x962e81(0x2dd)](0x1,Math[_0x962e81(0x250)](_0x2984bc)));}function _0x4a824d(){const _0x1de68a=_0x491b5c;if(!_0x2b432e||_0x32c9bc['lifecycl'+'e']!==_0x1de68a(0x16c))throw new Error(_0x1de68a(0x2ce)+'is\x20start'+_0x1de68a(0x334)+_0x1de68a(0x1aa)+_0x1de68a(0x301)+'y');}async function _0x4f8154(_0x1b9a7b=0x3a98){const _0x420031=_0x491b5c;if(_0x1212a6())return!![];const _0x1b2d07=Date[_0x420031(0x197)]();while(Date['now']()-_0x1b2d07<_0x1b9a7b){await new Promise(_0x41348e=>setTimeout(_0x41348e,0xfa));if(_0x1212a6())return!![];}return _0x4a824d(),!![];}function _0x1212a6(){const _0x5192c5=_0x491b5c;return Boolean(_0x2b432e&&_0x32c9bc[_0x5192c5(0x314)+'e']===_0x5192c5(0x16c));}function _0xce76fd(_0x1c8db1){const _0x58ae29=_0x491b5c;_0x503b52(_0x58ae29(0x26f)+_0x58ae29(0x257)+'t',_0x1c8db1);}function _0x211a9b(){let _0x43b15b=![],_0x2b8feb=()=>{};const _0x55359=new Promise(_0x38c201=>{_0x2b8feb=()=>{if(_0x43b15b)return;_0x43b15b=!![],_0x38c201();};});return{'settled':_0x55359,'resolveSettled':_0x2b8feb};}function _0x302807(_0x480ef1){const _0xb5448e=_0x491b5c,_0x5cf699=_0x418df4[_0xb5448e(0x335)](_0x480ef1);if(!_0x5cf699)return null;_0x418df4[_0xb5448e(0x294)](_0x480ef1);if(_0x5cf699[_0xb5448e(0x147)+_0xb5448e(0x223)+_0xb5448e(0x2e9)])clearTimeout(_0x5cf699[_0xb5448e(0x147)+_0xb5448e(0x223)+_0xb5448e(0x2e9)]);_0x5794a5[_0xb5448e(0x2ef)](_0x5cf699),_0x5cf699[_0xb5448e(0x2d3)+'ettled']?.();const _0x5d4566=_0x3ac011['get'](_0x5cf699[_0xb5448e(0x269)+'ey']);return(_0x5d4566===_0x5cf699[_0xb5448e(0x291)]||_0x5d4566===_0x5cf699['requestI'+'d'])&&_0x3ac011['delete'](_0x5cf699['sessionK'+'ey']),_0x5cf699;}function _0x45235c(_0x4ee508,_0x196745,_0xc65d0=''){const _0x407b17=_0x491b5c,_0x125f54=_0x302807(_0x4ee508[_0x407b17(0x291)]);if(!_0x125f54)return;const _0x427fb9=Date[_0x407b17(0x197)]()-_0x125f54[_0x407b17(0x263)+'t'];_0x39d148?.[_0x407b17(0x300)](_0x407b17(0x162)+_0x407b17(0x2c9),{'requestId':_0x125f54[_0x407b17(0x275)+'d'],'runId':_0x125f54['runId'],'sessionKey':_0x125f54[_0x407b17(0x269)+'ey'],'outcome':_0x196745,'durationMs':_0x427fb9,'textLength':_0x125f54[_0x407b17(0x18d)+'xt'][_0x407b17(0x298)],..._0xc65d0?{'message':_0xc65d0}:{}}),_0x108d59({'priority':'P0','category':_0x407b17(0x1f3),'event':_0x196745===_0x407b17(0x1a9)?_0x407b17(0x332)+_0x407b17(0x260)+_0x407b17(0x2dc):_0x407b17(0x332)+_0x407b17(0x260)+_0x407b17(0x318)+'ed','status':_0x196745===_0x407b17(0x1a9)?_0x407b17(0x287):_0x196745,'level':_0x196745===_0x407b17(0x1a9)?_0x407b17(0x1a9):_0x407b17(0x300),'message':_0x196745==='error'?_0x407b17(0x332)+_0x407b17(0x1ad)+'\x20failed':_0x407b17(0x332)+_0x407b17(0x1ad)+'\x20complet'+'ed','sessionKey':_0x125f54[_0x407b17(0x269)+'ey'],'runId':_0x125f54['runId'],'agentId':_0x125f54[_0x407b17(0x311)],'outputSummary':{'length':_0x125f54['outputTe'+'xt'][_0x407b17(0x298)],'preview':'','truncated':![]},'visibleError':_0x196745===_0x407b17(0x1a9)?_0xc65d0:undefined,'durationMs':_0x427fb9,'captureIncident':_0x196745==='error','meta':{'requestId':_0x125f54[_0x407b17(0x275)+'d'],'outcome':_0x196745}}),_0xce76fd({'requestId':_0x125f54[_0x407b17(0x275)+'d'],'sessionKey':_0x125f54['sessionK'+'ey'],'type':_0x196745,..._0xc65d0?{'message':_0xc65d0}:{}});}function _0x2f5515(_0x440905){const _0x4d29ad=_0x491b5c;let _0x6dbfd2=null,_0x4cc10a=null;for(const _0x420cd5 of _0x418df4[_0x4d29ad(0x2a8)]()){if(_0x420cd5[_0x4d29ad(0x269)+'ey']===_0x440905){_0x6dbfd2=_0x420cd5;if(_0x420cd5['started'])_0x4cc10a=_0x420cd5;}}return _0x4cc10a??_0x6dbfd2;}function _0x491dd2(_0x225aad){const _0x12a2e0=_0x491b5c;let _0x3dbfe1=null;for(const _0xdf23d1 of _0x418df4[_0x12a2e0(0x2a8)]()){_0xdf23d1['sessionK'+'ey']===_0x225aad&&_0xdf23d1[_0x12a2e0(0x2c6)]&&(_0x3dbfe1=_0xdf23d1);}return _0x3dbfe1;}function _0x394188(_0x793d02){const _0x2d780c=_0x491b5c;if(!_0x793d02)return null;for(const _0x5efe79 of _0x418df4[_0x2d780c(0x2a8)]()){if(_0x5efe79[_0x2d780c(0x275)+'d']===_0x793d02)return _0x5efe79;}return null;}function _0x2afd7c(_0x55581f,_0x4043b3){const _0x318224=_0x491b5c,{nextText:_0x22ee8d,delta:_0x4e3f36}=resolveGatewayChatDelta(_0x55581f[_0x318224(0x18d)+'xt'],_0x4043b3);_0x55581f[_0x318224(0x18d)+'xt']=_0x22ee8d,_0x4e3f36&&_0xce76fd({'requestId':_0x55581f[_0x318224(0x275)+'d'],'sessionKey':_0x55581f['sessionK'+'ey'],'type':_0x318224(0x19f),'delta':_0x4e3f36});}function _0x528c92(_0x693e08,_0x365b76,_0x546f9b=''){const _0x23eb30=_0x491b5c;if(_0x693e08[_0x23eb30(0x147)+_0x23eb30(0x223)+_0x23eb30(0x2e9)])clearTimeout(_0x693e08['terminal'+_0x23eb30(0x223)+_0x23eb30(0x2e9)]);_0x693e08[_0x23eb30(0x147)+_0x23eb30(0x223)+_0x23eb30(0x2e9)]=setTimeout(()=>{const _0x5ba046=_0x23eb30,_0x3e81f8=_0x418df4[_0x5ba046(0x335)](_0x693e08['runId']);if(!_0x3e81f8)return;_0x45235c(_0x3e81f8,_0x365b76===_0x5ba046(0x1a9)?_0x5ba046(0x1a9):'done',_0x546f9b);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x3d2945(_0x38ab4d){const _0x21113f=_0x491b5c;for(const _0x2604be of[..._0x418df4[_0x21113f(0x2a8)]()]){_0x39d148?.[_0x21113f(0x259)](_0x21113f(0x162)+_0x21113f(0x2f6)+'by\x20gatew'+'ay\x20state',{'requestId':_0x2604be[_0x21113f(0x275)+'d'],'runId':_0x2604be[_0x21113f(0x291)],'sessionKey':_0x2604be['sessionK'+'ey'],'durationMs':Date[_0x21113f(0x197)]()-_0x2604be[_0x21113f(0x263)+'t'],'reason':_0x38ab4d}),_0xce76fd({'requestId':_0x2604be[_0x21113f(0x275)+'d'],'sessionKey':_0x2604be[_0x21113f(0x269)+'ey'],'type':_0x21113f(0x1a9),'message':_0x38ab4d}),_0x302807(_0x2604be['runId']);}_0x5794a5[_0x21113f(0x282)](),_0x3ac011['clear'](),_0x1ad2b9&&(clearTimeout(_0x1ad2b9),_0x1ad2b9=null),_0x4011a7='';}function _0x2ee54b(_0x16d832){const _0x3de3e5=_0x491b5c;_0x503b52(_0x3de3e5(0x2fd)+_0x3de3e5(0x233)+_0x3de3e5(0x305),_0x16d832);}function _0x37bc03(_0x3e099b=''){if(_0x3e099b)_0x4011a7=_0x3e099b;_0x1ad2b9&&clearTimeout(_0x1ad2b9),_0x1ad2b9=setTimeout(()=>{const _0xa73880=_0x3c63;_0x1ad2b9=null,_0x2ee54b({'reason':_0xa73880(0x1eb)+_0xa73880(0x192),..._0x4011a7?{'sessionKey':_0x4011a7}:{}}),_0x4011a7='';},AGENT_EVENT_SESSION_INVALIDATION_DEBOUNCE_MS);}function _0x1592cf(_0x610bb5){const _0x242448=_0x491b5c,_0x2220ba=getTrimmedString(_0x610bb5?.[_0x242448(0x269)+'ey']),_0x2a3610=normalizeCronRunSessionKey(_0x2220ba),_0x6b067d=_0x610bb5?.[_0x242448(0x2a7)]==='deleted'?_0x242448(0x24e)+_0x242448(0x28e):'session-'+_0x242448(0x1b0),_0x20027d=_0x2220ba&&_0x2220ba!==_0x2a3610?{..._0x610bb5,'sessionKey':_0x2a3610,'sourceSessionKey':_0x2220ba}:_0x610bb5;_0x2ee54b({'reason':_0x6b067d,..._0x2a3610?{'sessionKey':_0x2a3610}:{},..._0x2220ba&&_0x2220ba!==_0x2a3610?{'sourceSessionKey':_0x2220ba}:{}}),_0x503b52(_0x242448(0x24e)+_0x242448(0x1b0),_0x20027d);}function _0x41c5c9(_0x2a1442){const _0x473a0c=_0x491b5c,_0x418e8c=getTrimmedString(_0x2a1442['runId']),_0x38af97=getTrimmedString(_0x2a1442[_0x473a0c(0x329)])||_0x473a0c(0x1b0),_0x2d777f=getTrimmedString(_0x2a1442[_0x473a0c(0x269)+'ey']),_0x146a42=(_0x418e8c?_0x418df4[_0x473a0c(0x335)](_0x418e8c):null)??(_0x2d777f?_0x491dd2(_0x2d777f):null);if(_0x418e8c&&_0x2d777f)_0x3ac011[_0x473a0c(0x1b1)](_0x2d777f,_0x418e8c);if(_0x2d777f)_0x1592cf({'sessionKey':_0x2d777f,'state':_0x38af97});_0x39d148?.[_0x473a0c(0x300)]('gateway\x20'+'chat\x20eve'+'nt\x20recei'+_0x473a0c(0x150),{'runId':_0x418e8c,'sessionKey':_0x2d777f,'state':_0x38af97,'hasActiveRun':Boolean(_0x146a42),'messageText':summarizeText(extractGatewayChatText(_0x2a1442[_0x473a0c(0x323)]),0x78),'errorMessage':getTrimmedString(_0x2a1442[_0x473a0c(0x214)+_0x473a0c(0x2f8)])});_0x146a42&&(_0x38af97===_0x473a0c(0x2c4)||_0x38af97==='aborted'||_0x38af97===_0x473a0c(0x1a9))&&_0x528c92(_0x146a42,_0x38af97,typeof _0x2a1442[_0x473a0c(0x214)+'sage']===_0x473a0c(0x2a2)?_0x2a1442[_0x473a0c(0x214)+_0x473a0c(0x2f8)]:'gateway\x20'+_0x473a0c(0x33f)+'led');if(!_0x146a42)return;if(_0x2d777f&&_0x2d777f!==_0x146a42['sessionK'+'ey'])return;if(_0x38af97===_0x473a0c(0x19f)){_0x2afd7c(_0x146a42,extractGatewayChatText(_0x2a1442['message']));return;}if(_0x38af97==='final'||_0x38af97===_0x473a0c(0x153)){_0x2afd7c(_0x146a42,extractGatewayChatText(_0x2a1442[_0x473a0c(0x323)])),_0x45235c(_0x146a42,_0x473a0c(0x234));return;}_0x38af97===_0x473a0c(0x1a9)&&_0x45235c(_0x146a42,'error',typeof _0x2a1442[_0x473a0c(0x214)+_0x473a0c(0x2f8)]===_0x473a0c(0x2a2)?_0x2a1442['errorMes'+_0x473a0c(0x2f8)]:'gateway\x20'+_0x473a0c(0x33f)+_0x473a0c(0x2ee));}function _0x3b49fe(_0x149943){const _0x5371b1=_0x491b5c,_0x33a6f0=asRecord(_0x149943);return getTrimmedString(_0x33a6f0[_0x5371b1(0x269)+'ey'])||getTrimmedString(_0x33a6f0[_0x5371b1(0x31a)])||getTrimmedString(_0x33a6f0['session_'+_0x5371b1(0x31a)]);}function _0x3ea4aa(_0x9d4fff){const _0x5618d7=_0x491b5c,_0x39b4ae=asRecord(_0x9d4fff),_0xc3420a=_0x3b49fe(_0x39b4ae),_0xa30c08=getTrimmedString(_0x39b4ae[_0x5618d7(0x15c)])||getTrimmedString(_0x39b4ae[_0x5618d7(0x329)])||getTrimmedString(_0x39b4ae[_0x5618d7(0x1c1)])||_0x5618d7(0x1b0);_0x3a246b?.[_0x5618d7(0x300)](_0x5618d7(0x2ce)+'session\x20'+_0x5618d7(0x1cb)+'ceived',{'event':_0x5618d7(0x2fd)+_0x5618d7(0x2e0),'sessionKey':_0xc3420a,'state':_0xa30c08,'channel':getTrimmedString(_0x39b4ae[_0x5618d7(0x1f5)]),'agentId':getTrimmedString(_0x39b4ae[_0x5618d7(0x311)]),'messageId':getTrimmedString(_0x39b4ae['messageI'+'d']),'runId':getTrimmedString(_0x39b4ae[_0x5618d7(0x291)])}),_0x1592cf({..._0x39b4ae,'type':getTrimmedString(_0x39b4ae[_0x5618d7(0x2a7)])||_0x5618d7(0x14f),'state':_0xa30c08,..._0xc3420a?{'sessionKey':_0xc3420a}:{}});}function _0x17c3f5(_0x454658){const _0x1a2073=_0x491b5c,_0x164398=asRecord(_0x454658),_0x4428de=_0x3b49fe(_0x164398);_0x3a246b?.[_0x1a2073(0x300)](_0x1a2073(0x2ce)+'session\x20'+'message\x20'+'event\x20re'+'ceived',{'event':'session.'+_0x1a2073(0x323),'sessionKey':_0x4428de,'channel':getTrimmedString(_0x164398['channel']),'agentId':getTrimmedString(_0x164398['agentId']),'messageId':getTrimmedString(_0x164398[_0x1a2073(0x235)+'d']),'messageSeq':_0x164398['messageS'+'eq']}),_0x1592cf({..._0x164398,'type':_0x1a2073(0x323),'state':'message',..._0x4428de?{'sessionKey':_0x4428de}:{}});}async function _0xf90f6d(){const _0x549f66=_0x491b5c;try{const _0x1291b1=await _0xcbf205[_0x549f66(0x188)](_0x549f66(0x2fd)+_0x549f66(0x27e)+'be',{},{'timeoutMs':0x2710});_0x3a246b?.[_0x549f66(0x300)](_0x549f66(0x2ce)+'session\x20'+_0x549f66(0x255)+'ubscribe'+'d',{'result':summarizePayload(_0x1291b1,{'maxDepth':0x2})});}catch(_0x25d93a){_0x3a246b?.[_0x549f66(0x259)](_0x549f66(0x2ce)+'session\x20'+_0x549f66(0x255)+_0x549f66(0x14b)+_0x549f66(0x299),{'error':summarizeError(_0x25d93a)});}}async function _0x3e9066(_0x20f629,_0x3d8cc5){const _0x28e934=_0x491b5c;_0xcbf205['configur'+'e']({'url':buildGatewayWsUrl(_0x3d8cc5),'token':_0x20f629,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x10accd['productN'+_0x28e934(0x206)],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x260f5c[_0x28e934(0x338)+_0x28e934(0x2b1)+_0x28e934(0x20a)+'h'](),'onChatEvent':_0x41c5c9,'onAgentEvent':_0x229083=>{const _0xd8f4dd=_0x28e934,_0x22e596=asRecord(_0x229083),_0xd4571f=getTrimmedString(_0x22e596['runId']),_0x41bb9c=getTrimmedString(_0x22e596[_0xd8f4dd(0x269)+'ey']),_0x4b1b9a=_0xd4571f?_0x418df4[_0xd8f4dd(0x335)](_0xd4571f):null;if(_0x41bb9c&&!_0x4b1b9a)_0x37bc03(_0x41bb9c);_0x503b52('agent-ev'+_0xd8f4dd(0x192),_0x229083);},'onSessionEvent':_0x3ea4aa,'onSessionMessageEvent':_0x17c3f5,'onStartupTiming':(_0x835d8,_0x53f687={})=>{const _0x41cef6=_0x28e934;_0x437d0c?.[_0x41cef6(0x1b8)](_0x41cef6(0x2ce)+_0x41cef6(0x315)+_0x41cef6(0x216)+_0x41cef6(0x1b7),{'label':_0x835d8,..._0x53f687});},'onConnected':async()=>{const _0x1bd240=_0x28e934;if(!_0x2b432e||!_0x105cdc||!_0x4415f0)return;const _0x52fcee=++_0x1cc569,_0x7d0e95=()=>_0x52fcee===_0x1cc569&&Boolean(_0x2b432e&&_0x105cdc&&_0x4415f0);_0x437d0c?.[_0x1bd240(0x300)](_0x1bd240(0x2ce)+_0x1bd240(0x315)+'t\x20connec'+_0x1bd240(0x135),{'port':_0x105cdc,'pid':_0x2b432e['pid'],'readyMs':_0x22b944?Date[_0x1bd240(0x197)]()-_0x22b944:undefined}),_0x47157d(_0x1bd240(0x16c),_0x1bd240(0x2ce)+'connecte'+'d',{'health':_0x1bd240(0x21b),'port':_0x105cdc,'tokenPresent':!![]}),await _0xf90f6d();try{const _0x299467=await syncManagedSkillsToConfig(_0x260f5c);_0x5eebf8?.[_0x1bd240(0x300)](_0x1bd240(0x2cc)+_0x1bd240(0x1b5)+_0x1bd240(0x25b)+_0x1bd240(0x1a4)+'eted',{'skillCount':_0x299467[_0x1bd240(0x14a)+'s'][_0x1bd240(0x298)],'skillKeys':_0x299467[_0x1bd240(0x14a)+'s']}),await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x10accd[_0x1bd240(0x2ea)+_0x1bd240(0x20b)]))['runtimeR'+_0x1bd240(0x20b)],_0x1bd240(0x205),_0x1bd240(0x30a)),'stateDir':_0x260f5c[_0x1bd240(0x2d3)+_0x1bd240(0x2bc)](),'isPackaged':IS_PACKAGED_RUNTIME,'listAgents':_0x1c4048,'shouldContinue':_0x7d0e95,'createAgent':_0x2a1546=>{const _0x954971=_0x1bd240;if(!_0x7d0e95())return{'skipped':!![]};return _0xcbf205[_0x954971(0x188)](_0x954971(0x2ac)+_0x954971(0x134),_0x2a1546);},'updateAgent':_0x11175a=>{const _0x221ca8=_0x1bd240;if(!_0x7d0e95())return{'skipped':!![]};return _0xcbf205[_0x221ca8(0x188)](_0x221ca8(0x22c)+_0x221ca8(0x139),_0x11175a);},'syncSkills':async({agentIds:_0x1b9c20,mainWorkspace:_0x156244})=>{const _0x341729=_0x1bd240;if(!_0x7d0e95())return;_0x5eebf8?.[_0x341729(0x300)]('bundled\x20'+_0x341729(0x208)+_0x341729(0x285)+'c\x20starte'+'d',{'agentIds':_0x1b9c20,'mainWorkspace':toHomePath(_0x156244)});const _0x382579=dirname(_0x156244),_0x35b2d2=await syncBundledAgentSkillsToConfig({'agentIds':_0x1b9c20,'resolveSkillsDir':_0x52a1d4=>_0x52a1d4==='main'?join(_0x156244,_0x341729(0x280)):join(_0x382579,'workspac'+'e-'+_0x52a1d4,_0x341729(0x280)),'readConfig':()=>_0x260f5c[_0x341729(0x333)+'ig'](),'writeConfig':_0x155048=>_0x260f5c['writeCon'+_0x341729(0x133)](_0x155048),'markConfigWriteHandledInternally':()=>_0x260f5c[_0x341729(0x2fc)+'igWriteH'+_0x341729(0x30e)+'ternally']()});_0x194b30=_0x35b2d2[_0x341729(0x177)+'y'],_0x5eebf8?.[_0x341729(0x300)](_0x341729(0x1cd)+_0x341729(0x208)+_0x341729(0x285)+_0x341729(0x2ca)+_0x341729(0x135),{'agentCount':_0x1b9c20[_0x341729(0x298)],'changed':_0x35b2d2[_0x341729(0x14f)],'discovery':summarizePayload(_0x35b2d2[_0x341729(0x177)+'y'],{'maxDepth':0x3})});},'syncConfig':async({bundledAgents:_0x1e9ef7})=>{const _0x10a0a8=_0x1bd240;if(!_0x7d0e95())return;const _0x212019=await _0x260f5c[_0x10a0a8(0x333)+'ig'](),_0x589d2e=syncBundledAgentRuntimeConfig(_0x212019,_0x1e9ef7);if(!_0x589d2e[_0x10a0a8(0x14f)])return;_0x260f5c['markConf'+'igWriteH'+_0x10a0a8(0x30e)+_0x10a0a8(0x2e5)](),await _0x260f5c[_0x10a0a8(0x1f8)+'fig'](_0x589d2e['config'],_0x10a0a8(0x1cd)+_0x10a0a8(0x310)+_0x10a0a8(0x16e)+_0x10a0a8(0x2f3)+_0x10a0a8(0x17c)),_0x5eebf8?.[_0x10a0a8(0x300)](_0x10a0a8(0x1cd)+_0x10a0a8(0x310)+_0x10a0a8(0x16e)+'nfig\x20syn'+_0x10a0a8(0x17c),{'agentCount':_0x1e9ef7[_0x10a0a8(0x298)]});}}),_0x5eebf8?.[_0x1bd240(0x300)]('bundled\x20'+_0x1bd240(0x1c2)+_0x1bd240(0x1ee)),_0x503b52(_0x1bd240(0x302)+_0x1bd240(0x289),{'reason':_0x1bd240(0x230)+_0x1bd240(0x200)+_0x1bd240(0x210)});}catch(_0x32eb86){const _0xebf9ad=_0x32eb86 instanceof Error?_0x32eb86[_0x1bd240(0x158)]||_0x32eb86[_0x1bd240(0x323)]:String(_0x32eb86);_0x4b6f43(_0x1bd240(0x33d),_0x1bd240(0x1cd)+_0x1bd240(0x26d)+_0x1bd240(0x26e)+'ed:\x20'+_0xebf9ad),_0x5eebf8?.[_0x1bd240(0x1a9)]('bundled\x20'+'agents\x20s'+_0x1bd240(0x26e)+'ed',{'error':summarizeError(_0x32eb86)}),console[_0x1bd240(0x1a9)](_0x1bd240(0x1ef)+_0x1bd240(0x217)+_0x1bd240(0x194)+_0x1bd240(0x320)+_0x1bd240(0x295)+'c\x20failed',_0x32eb86);}},'onDisconnected':_0x36a4bb=>{const _0x525d65=_0x28e934;_0x437d0c?.['warn']('gateway\x20'+_0x525d65(0x315)+_0x525d65(0x290)+_0x525d65(0x24f),{'reason':_0x36a4bb}),_0x3d2945(_0x36a4bb);if(_0x23e15e||!_0x2b432e)return;_0xfb115a({'health':_0x525d65(0x131),'message':'gateway\x20'+_0x525d65(0x2d0)+'ting:\x20'+_0x36a4bb});}});}async function _0x46a68b(_0x13a31d,_0x5e0ab9){const _0xa88bea=_0x491b5c;if(_0x2b432e)return;_0x22b944=Date['now'](),_0x47157d(_0xa88bea(0x1d9),'gateway\x20'+_0xa88bea(0x1d9),{'health':_0xa88bea(0x131),'port':_0x5e0ab9,'tokenPresent':!![]});const _0x4fe37b=['gateway',_0xa88bea(0x21f),'--allow-'+_0xa88bea(0x343)+_0xa88bea(0x2f9),'--token',_0x13a31d,'--port',String(_0x5e0ab9)];_0x4b6f43(_0xa88bea(0x33d),_0xa88bea(0x205)+_0xa88bea(0x242)+_0xa88bea(0x17d)+_0xa88bea(0x1d3)+_0xa88bea(0x267)+'d\x20--toke'+_0xa88bea(0x2e8)+_0xa88bea(0x293)+'ort\x20'+_0x5e0ab9),_0x437d0c?.[_0xa88bea(0x300)](_0xa88bea(0x2ce)+_0xa88bea(0x1c5)+_0xa88bea(0x29f)+'quested',{'args':[_0xa88bea(0x1e3),_0xa88bea(0x21f),_0xa88bea(0x23d)+_0xa88bea(0x343)+_0xa88bea(0x2f9),_0xa88bea(0x174),_0xa88bea(0x309)+'D]',_0xa88bea(0x1dc),String(_0x5e0ab9)],'env':{'OPENCLAW_STATE_DIR':toHomePath(_0x260f5c['resolveS'+_0xa88bea(0x2bc)]()),'OPENCLAW_CONFIG_PATH':toHomePath(_0x260f5c['resolveC'+_0xa88bea(0x18b)+'h']()),'OPENCLAW_CONFIG_FILE_NAME':_0x10accd['openclaw']?.['configFi'+'leName']??'wujieai.'+_0xa88bea(0x1c9)}}),_0x2b432e=await spawnClaw(_0x10accd['projectR'+_0xa88bea(0x20b)],_0x4fe37b,{'env':{'OPENCLAW_STATE_DIR':_0x260f5c[_0xa88bea(0x2d3)+_0xa88bea(0x2bc)](),'OPENCLAW_CONFIG_PATH':_0x260f5c['resolveC'+_0xa88bea(0x18b)+'h'](),'OPENCLAW_CONFIG_FILE_NAME':_0x10accd[_0xa88bea(0x205)]?.[_0xa88bea(0x283)+_0xa88bea(0x25c)]??_0xa88bea(0x2fb)+_0xa88bea(0x1c9)}}),_0x4415f0=_0x13a31d,_0x105cdc=_0x5e0ab9,_0x437d0c?.['info'](_0xa88bea(0x2ce)+_0xa88bea(0x1c5)+_0xa88bea(0x2c6),{'pid':_0x2b432e[_0xa88bea(0x203)],'port':_0x105cdc}),_0xfb115a({'health':'unknown','port':_0x105cdc,'tokenPresent':!![],'message':'gateway\x20'+_0xa88bea(0x1c5)+_0xa88bea(0x1b6)+_0xa88bea(0x30c)+_0xa88bea(0x1fa)}),await _0x3e9066(_0x13a31d,_0x5e0ab9);const _0x1765d2=createLineBuffer({'trim':!![],'onLine':_0x36fadb=>_0x4b6f43(_0xa88bea(0x23a),_0x36fadb)}),_0x5c502e=createLineBuffer({'trim':!![],'onLine':_0x4e2ffa=>_0x4b6f43(_0xa88bea(0x2d6),_0x4e2ffa)});_0x2b432e[_0xa88bea(0x23a)]['on'](_0xa88bea(0x2a6),_0x1e65e9=>{const _0x5077b6=_0xa88bea;_0x1765d2[_0x5077b6(0x32e)](_0x1e65e9['toString']());}),_0x2b432e[_0xa88bea(0x2d6)]['on'](_0xa88bea(0x2a6),_0x17db04=>{const _0x5b42dc=_0xa88bea;_0x5c502e[_0x5b42dc(0x32e)](_0x17db04[_0x5b42dc(0x2f2)]());}),_0x2b432e['on'](_0xa88bea(0x1a9),_0x41926e=>{const _0x4bb9a5=_0xa88bea;_0x437d0c?.['error'](_0x4bb9a5(0x2ce)+'process\x20'+_0x4bb9a5(0x1a9),{'error':summarizeError(_0x41926e)}),_0x4b6f43('stderr',_0x41926e instanceof Error?_0x41926e[_0x4bb9a5(0x158)]||_0x41926e['message']:String(_0x41926e));}),_0x2b432e['on'](_0xa88bea(0x2d9),(_0x28e817,_0x5c765a)=>{const _0x53c923=_0xa88bea;_0x1765d2[_0x53c923(0x1c6)](),_0x5c502e[_0x53c923(0x1c6)](),_0x437d0c?.[_0x53c923(0x259)](_0x53c923(0x2ce)+'process\x20'+_0x53c923(0x268),{'pid':_0x2b432e?.[_0x53c923(0x203)]??null,'code':_0x28e817,'signal':_0x5c765a,'uptimeMs':_0x22b944?Date['now']()-_0x22b944:undefined}),_0x4b6f43(_0x53c923(0x33d),_0x53c923(0x2ce)+'exited\x20c'+_0x53c923(0x1c0)+(_0x28e817??_0x53c923(0x33e))+_0x53c923(0x2b6)+(_0x5c765a??_0x53c923(0x33e))),_0x2b432e=null,_0x4415f0=null,_0x105cdc=null,_0xcbf205[_0x53c923(0x33b)+'e'](null),_0x3d2945(_0x53c923(0x2ce)+_0x53c923(0x1c5)+'exited');if(_0x23e15e){_0x47157d(_0x53c923(0x2fa),'gateway\x20'+_0x53c923(0x2fa),{'health':_0x53c923(0x131),'port':null,'tokenPresent':![]});return;}if(_0x57cd8f){_0x47157d('restarti'+'ng',_0x53c923(0x2ce)+'restarti'+'ng',{'health':_0x53c923(0x131),'port':null,'tokenPresent':![]});return;}_0x47157d(_0x53c923(0x1a9),_0x53c923(0x2ce)+_0x53c923(0x239)+_0x53c923(0x166)+_0x53c923(0x2e7),{'health':_0x53c923(0x336)+'y','port':null,'tokenPresent':![]});});}async function _0x3e8086(){if(_0x2b432e)return;if(_0x2a62a1)return await _0x2a62a1;_0x2a62a1=((async()=>{const _0xbd1ae7=_0x3c63;if(_0x2b432e)return;_0x23e15e=![],_0x437d0c?.[_0xbd1ae7(0x300)](_0xbd1ae7(0x2ce)+'controll'+'er\x20start'+_0xbd1ae7(0x2e4)+'ed'),await _0x260f5c['ensureIn'+'itialCon'+'fig']();const _0x23c98f=await _0x260f5c['isAskUse'+_0xbd1ae7(0x29a)+'nPluginE'+_0xbd1ae7(0x1ed)]();_0x23c98f?await _0x60a2fd[_0xbd1ae7(0x2bd)]()[_0xbd1ae7(0x191)](_0x456629=>{const _0x510303=_0xbd1ae7;_0x4b6f43(_0x510303(0x33d),_0x510303(0x204)+_0x510303(0x27f)+_0x510303(0x1a6)+'ck\x20disab'+_0x510303(0x2af)+(_0x456629 instanceof Error?_0x456629[_0x510303(0x323)]:String(_0x456629)));}):_0x437d0c?.[_0xbd1ae7(0x300)](_0xbd1ae7(0x204)+_0xbd1ae7(0x27f)+'n\x20callba'+'ck\x20skipp'+_0xbd1ae7(0x209)+'in\x20disab'+_0xbd1ae7(0x2ee));_0x260f5c[_0xbd1ae7(0x13d)+_0xbd1ae7(0x1af)+'es'](),_0x260f5c[_0xbd1ae7(0x17f)+_0xbd1ae7(0x316)+_0xbd1ae7(0x212)](_0x20cfa9=>{void _0x693eaa(_0x20cfa9);});const _0x1d9641=await _0x260f5c[_0xbd1ae7(0x2db)+_0xbd1ae7(0x2d2)+'tings']();_0x437d0c?.[_0xbd1ae7(0x300)](_0xbd1ae7(0x2ce)+_0xbd1ae7(0x1f9)+_0xbd1ae7(0x31c)+'ed',{'port':_0x1d9641[_0xbd1ae7(0x155)],'tokenPresent':Boolean(_0x1d9641['token'])}),await _0x46a68b(_0x1d9641[_0xbd1ae7(0x2ff)],_0x1d9641['port']);})());try{await _0x2a62a1;}finally{_0x2a62a1=null;}}async function _0x39c207(){const _0x592d55=_0x491b5c;_0x23e15e=!![],_0x1cc569+=0x1,_0x437d0c?.['info']('gateway\x20'+_0x592d55(0x30b)+'er\x20stop\x20'+_0x592d55(0x189)+'d',{'pid':_0x2b432e?.[_0x592d55(0x203)]??null,'port':_0x105cdc}),_0xcbf205['configur'+'e'](null);if(_0x2b432e){const _0x353683=_0x2b432e;_0x2b432e=null;try{_0x353683['kill'](_0x592d55(0x2ba));}catch{}const _0xf8ceec=await waitForChildExit(_0x353683,0x1388);if(!_0xf8ceec){try{_0x353683[_0x592d55(0x164)](_0x592d55(0x2f0));}catch{}await waitForChildExit(_0x353683,0x7d0);}}_0x4415f0=null,_0x105cdc=null,_0x3d2945(_0x592d55(0x2ce)+_0x592d55(0x2fa)),await _0x60a2fd[_0x592d55(0x2d1)](),_0x260f5c[_0x592d55(0x27d)](),_0x47157d('stopped',_0x592d55(0x2ce)+'stopped',{'health':_0x592d55(0x131),'port':null,'tokenPresent':![]}),_0x23e15e=![];}async function _0x693eaa(_0x341bd4=_0x491b5c(0x281)+_0x491b5c(0x22b)){const _0x335fd0=_0x491b5c;if(_0x5dc36c)return{'ok':!![]};return _0x5dc36c=!![],_0x57cd8f=!![],_0x437d0c?.[_0x335fd0(0x300)](_0x335fd0(0x2ce)+'restart\x20'+_0x335fd0(0x189)+'d',{'reason':_0x341bd4}),_0x10e5bf=_0x10e5bf['then'](async()=>{const _0x18d188=_0x335fd0;_0x47157d(_0x18d188(0x18e)+'ng',_0x18d188(0x2ce)+_0x18d188(0x18e)+_0x18d188(0x2aa)+_0x341bd4,{'health':'unknown'}),await _0x39c207(),await _0x3e8086();})[_0x335fd0(0x2b5)](()=>{_0x57cd8f=![],_0x5dc36c=![];}),await _0x10e5bf,{'ok':!![]};}async function _0xe3753e(){const _0x492c21=_0x491b5c,_0x3dce9e=await loadRuntimeInfo(_0x10accd[_0x492c21(0x2ea)+'oot']);return{'runtimeRoot':_0x3dce9e['runtimeR'+_0x492c21(0x20b)],'openclawVersion':_0x3dce9e[_0x492c21(0x205)+_0x492c21(0x2ed)],'openclawWorkingDir':_0x3dce9e[_0x492c21(0x205)+_0x492c21(0x195)+'ir'],'openclawBin':_0x3dce9e[_0x492c21(0x205)+_0x492c21(0x1ab)],'plugins':_0x3dce9e['plugins'][_0x492c21(0x1ff)](_0x4eec02=>({'pluginId':_0x4eec02['pluginId'],'source':_0x4eec02[_0x492c21(0x171)],'version':_0x4eec02[_0x492c21(0x1e8)],'installPath':_0x4eec02[_0x492c21(0x22a)+_0x492c21(0x276)]})),'configPath':_0x260f5c[_0x492c21(0x330)+_0x492c21(0x18b)+'h'](),'stateDir':_0x260f5c['resolveS'+'tateDir'](),'bundledAgentSkillsDiscovery':_0x194b30};}async function _0x1c4048(){const _0x5b59a4=_0x491b5c;_0x5eebf8?.[_0x5b59a4(0x300)](_0x5b59a4(0x161)+_0x5b59a4(0x284)+_0x5b59a4(0x326));const _0x25a235=asRecord(await _0xcbf205[_0x5b59a4(0x188)](_0x5b59a4(0x1f0)+'ist',{})),_0x51d543=getTrimmedString(_0x25a235[_0x5b59a4(0x279)+'d'])||_0x5b59a4(0x1d5),_0x47886d=Array[_0x5b59a4(0x21a)](_0x25a235[_0x5b59a4(0x30a)])?[..._0x25a235[_0x5b59a4(0x30a)]]:[];return{..._0x25a235,'defaultId':_0x51d543,'agents':_0x47886d};}async function _0x361559(){const _0x376f16=_0x491b5c;if(!_0x1212a6()){const _0x40ff8c=await readConfiguredAgentsForPendingList(_0x260f5c);return{'defaultId':_0x376f16(0x1d5),'mainKey':'','scope':'','pending':!![],'agents':_0x40ff8c[_0x376f16(0x298)]>0x0?_0x40ff8c:[createMainAgentFallback(_0x260f5c)]};}const _0x203c57=await _0x1c4048(),_0x3f2f86=getTrimmedString(_0x203c57[_0x376f16(0x279)+'d'])||_0x376f16(0x1d5),_0x4c0b17=await readConfiguredAgentsForPendingList(_0x260f5c),_0x5d9001=orderAgentsByConfiguredList(_0x203c57[_0x376f16(0x30a)],_0x4c0b17);return!_0x5d9001[_0x376f16(0x1d2)](_0xf6dfaf=>asRecord(_0xf6dfaf)['id']===_0x376f16(0x1d5))&&_0x5d9001[_0x376f16(0x224)](createMainAgentFallback(_0x260f5c)),{..._0x203c57,'defaultId':_0x3f2f86,'agents':_0x5d9001};}async function _0x3e8d71(_0x2a45af={}){const _0x222ae3=_0x491b5c;await _0x4f8154();const _0xf729b8=Date[_0x222ae3(0x197)]();_0x3a246b?.[_0x222ae3(0x300)]('session\x20'+_0x222ae3(0x222)+'equested',{'payload':summarizePayload(_0x2a45af)});const _0x56914d=await _0xcbf205[_0x222ae3(0x188)](_0x222ae3(0x2fd)+_0x222ae3(0x2b9),buildSessionCreateRequestPayload(_0x2a45af)),_0x5d9314=parseSessionCreateResult(_0x56914d);return _0x3a246b?.['info'](_0x222ae3(0x24c)+_0x222ae3(0x277)+'ompleted',{'key':_0x5d9314[_0x222ae3(0x31a)],'sessionId':_0x5d9314[_0x222ae3(0x2a9)+'d'],'durationMs':Date['now']()-_0xf729b8}),_0x108d59({'priority':'P0','category':'session','event':_0x222ae3(0x24b)+_0x222ae3(0x2b2)+_0x222ae3(0x2a3),'status':_0x222ae3(0x2c3)+'d','message':_0x222ae3(0x24c)+_0x222ae3(0x1fc),'sessionKey':_0x5d9314[_0x222ae3(0x31a)],'durationMs':Date[_0x222ae3(0x197)]()-_0xf729b8,'meta':{'sessionId':_0x5d9314[_0x222ae3(0x2a9)+'d'],'request':summarizePayload(_0x2a45af,{'maxDepth':0x2})}}),_0x5d9314;}async function _0x23b64e(_0x14fda4={}){const _0x1d4767=_0x491b5c;if(!_0x1212a6())return{'pending':!![],'sessions':[],'pinnedKeys':await _0x373c0b['getPinne'+_0x1d4767(0x1a5)+_0x1d4767(0x274)]()};const _0xf92905=Date[_0x1d4767(0x197)](),_0x394b30=Math['max'](0x1,Math['floor'](Number(_0x14fda4[_0x1d4767(0x22f)])||0x64)),_0x5484c2={'limit':_0x394b30,'includeGlobal':!![],'includeUnknown':![]},_0x58d0fc=getTrimmedString(_0x14fda4[_0x1d4767(0x311)]);if(_0x58d0fc)_0x5484c2['agentId']=_0x58d0fc;const _0x3063b6=await _0x373c0b['applySes'+_0x1d4767(0x1d6)+_0x1d4767(0x29e)+'aToList'](filterValidSessionList(await _0xcbf205[_0x1d4767(0x188)](_0x1d4767(0x2fd)+'.list',_0x5484c2),{'onOrphanSession':(_0x4bad71,_0x53257c)=>_0x4aa0ef(_0x4bad71,_0x1d4767(0x286)+_0x1d4767(0x24b)+'id',{..._0x53257c,'agentId':_0x58d0fc||_0x53257c[_0x1d4767(0x311)]||null})}));return _0x3a246b?.[_0x1d4767(0x300)](_0x1d4767(0x2fd)+_0x1d4767(0x1e2)+_0x1d4767(0x1ea),{'payload':_0x5484c2,'count':Array[_0x1d4767(0x21a)](_0x3063b6[_0x1d4767(0x2fd)])?_0x3063b6['sessions'][_0x1d4767(0x298)]:0x0,'durationMs':Date[_0x1d4767(0x197)]()-_0xf92905}),_0x3063b6;}async function _0x49a441(_0x429b34={}){const _0x4c2866=_0x491b5c;await _0x4f8154();const _0x5c583b=getTrimmedString(_0x429b34['sessionK'+'ey']??_0x429b34['key']);if(!_0x5c583b)throw new Error(_0x4c2866(0x269)+_0x4c2866(0x327)+_0x4c2866(0x16a));const _0x5db346=Date[_0x4c2866(0x197)](),_0x4c16c2=await _0xcbf205[_0x4c2866(0x188)](_0x4c2866(0x2fd)+_0x4c2866(0x170),{'key':_0x5c583b,'deleteTranscript':_0x429b34['deleteTr'+_0x4c2866(0x190)]!==![],'emitLifecycleHooks':!![]});return await _0x373c0b[_0x4c2866(0x2eb)+_0x4c2866(0x272)+_0x4c2866(0x151)](_0x5c583b),_0x1592cf({'type':_0x4c2866(0x28e),'sessionKey':_0x5c583b}),_0x3a246b?.[_0x4c2866(0x300)]('session\x20'+_0x4c2866(0x254)+'ompleted',{'sessionKey':_0x5c583b,'deleteTranscript':_0x429b34[_0x4c2866(0x2b3)+_0x4c2866(0x190)]!==![],'durationMs':Date[_0x4c2866(0x197)]()-_0x5db346}),_0x108d59({'priority':'P0','category':_0x4c2866(0x261),'event':'session_'+_0x4c2866(0x25d)+_0x4c2866(0x2a3),'status':'succeede'+'d','message':'session\x20'+_0x4c2866(0x28e),'sessionKey':_0x5c583b,'durationMs':Date[_0x4c2866(0x197)]()-_0x5db346,'meta':{'deleteTranscript':_0x429b34['deleteTr'+_0x4c2866(0x190)]!==![]}}),_0x4c16c2;}async function _0x20e665(_0x370584={}){const _0x3df1ea=_0x491b5c,_0x27c065=getTrimmedString(_0x370584[_0x3df1ea(0x269)+'ey']??_0x370584[_0x3df1ea(0x31a)]);if(!_0x27c065)throw new Error('sessionK'+_0x3df1ea(0x327)+_0x3df1ea(0x16a));const _0x4c9fa9=getTrimmedString(_0x370584[_0x3df1ea(0x20d)]??_0x370584[_0x3df1ea(0x26c)]??_0x370584['title']);return await _0x373c0b[_0x3df1ea(0x24a)+_0x3df1ea(0x2a4)+_0x3df1ea(0x136)](_0x27c065,_0x4c9fa9),_0x1592cf({'type':_0x3df1ea(0x1be),'sessionKey':_0x27c065,'name':_0x4c9fa9}),_0x3a246b?.[_0x3df1ea(0x300)](_0x3df1ea(0x24c)+_0x3df1ea(0x28a)+_0x3df1ea(0x1a0),{'sessionKey':_0x27c065,'hasName':Boolean(_0x4c9fa9),'name':_0x4c9fa9?summarizeText(_0x4c9fa9,0x50):undefined}),_0x108d59({'priority':'P0','category':'session','event':_0x3df1ea(0x24b)+'rename.s'+_0x3df1ea(0x2a3),'status':_0x3df1ea(0x2c3)+'d','message':_0x3df1ea(0x24c)+_0x3df1ea(0x1be),'sessionKey':_0x27c065,'inputSummary':_0x4c9fa9?summarizeText(_0x4c9fa9,0x50):undefined,'meta':{'hasName':Boolean(_0x4c9fa9)}}),{'ok':!![]};}async function _0x5ca806(_0x6cc6cc,_0x52a3c1){const _0x2312f5=_0x491b5c;await _0x4f8154();const _0x213aba=getTrimmedString(_0x6cc6cc),_0x717e84=getTrimmedString(_0x52a3c1);if(!_0x213aba)throw new Error(_0x2312f5(0x24c)+_0x2312f5(0x339)+'equired');if(!_0x717e84)throw new Error(_0x2312f5(0x1bf)+_0x2312f5(0x201)+_0x2312f5(0x32a));const _0x21e1b8=asRecord(await _0xcbf205[_0x2312f5(0x188)]('sessions'+_0x2312f5(0x2f4),{'key':_0x213aba,'model':_0x717e84})),_0x536591=asRecord(_0x21e1b8['resolved']);return{'ok':!![],'key':getTrimmedString(_0x21e1b8[_0x2312f5(0x31a)])||_0x213aba,'modelRef':_0x717e84,'resolved':{'modelProvider':getTrimmedString(_0x536591[_0x2312f5(0x1fd)+'vider'])||null,'model':getTrimmedString(_0x536591[_0x2312f5(0x219)])||null,'agentRuntime':_0x536591[_0x2312f5(0x308)+_0x2312f5(0x168)]}};}async function _0x487291(_0x4c196e=[]){const _0x19940d=_0x491b5c,_0x1d79aa=await _0x373c0b[_0x19940d(0x331)+'dSession'+_0x19940d(0x274)](Array[_0x19940d(0x21a)](_0x4c196e)?_0x4c196e['map'](getTrimmedString)[_0x19940d(0x16d)](Boolean):[]);return _0x1592cf({'type':'pinned-k'+_0x19940d(0x1de)+_0x19940d(0x135),'pinnedKeys':_0x1d79aa[_0x19940d(0x1f7)+'ys']}),_0x3a246b?.[_0x19940d(0x300)](_0x19940d(0x24c)+'pinned\x20k'+_0x19940d(0x1f6)+_0x19940d(0x135),{'count':_0x1d79aa[_0x19940d(0x1f7)+'ys'][_0x19940d(0x298)]}),_0x108d59({'priority':'P0','category':'session','event':_0x19940d(0x24b)+_0x19940d(0x297)+_0x19940d(0x19b)+_0x19940d(0x199),'status':'succeede'+'d','message':_0x19940d(0x24c)+'pinned\x20k'+_0x19940d(0x1f6)+'ted','meta':{'count':_0x1d79aa[_0x19940d(0x1f7)+'ys']['length']}}),_0x1d79aa;}async function _0x15be9c(){const _0x240d2d=_0x491b5c,_0x3ba0d5=join(_0x260f5c[_0x240d2d(0x2d3)+_0x240d2d(0x2bc)](),_0x240d2d(0x1cc)+'e');return{'path':_0x3ba0d5,'exists':Boolean(await stat(_0x3ba0d5)[_0x240d2d(0x191)](()=>null))};}async function _0x59db68(){const _0x13ac00=_0x491b5c;return readSharedContext(join(_0x260f5c[_0x13ac00(0x2d3)+_0x13ac00(0x2bc)](),'workspac'+'e'));}async function _0x40a9f9(_0x149fe8={}){const _0x548f6c=_0x491b5c;return _0x5eebf8?.['info'](_0x548f6c(0x1cc)+_0x548f6c(0x152)+_0x548f6c(0x27b)+_0x548f6c(0x348)+_0x548f6c(0x1bd),{'files':Object[_0x548f6c(0x18c)](sanitizeSharedContextPayload(_0x149fe8))}),writeSharedContext(join(_0x260f5c[_0x548f6c(0x2d3)+_0x548f6c(0x2bc)](),_0x548f6c(0x1cc)+'e'),_0x149fe8);}async function _0x25bac0(_0x542162={}){const _0x2ae443=_0x491b5c;if(!_0x1212a6())return{'pending':!![],'jobs':[],'hasMore':![],'nextOffset':0x0};return await _0xcbf205[_0x2ae443(0x188)](_0x2ae443(0x328)+'t',_0x542162);}async function _0x3bf04a(_0x26d0e1={}){const _0x4185a9=_0x491b5c;await _0x4f8154();const _0x11650e=await _0xcbf205[_0x4185a9(0x188)](_0x4185a9(0x2f1),normalizeCronMutationParams(_0x26d0e1));return _0x2ee54b({'reason':_0x4185a9(0x221)+'nged'}),_0x11650e;}async function _0x4f792f(_0x11fe9c={}){const _0x5858dd=_0x491b5c;await _0x4f8154();const _0x372299=getTrimmedString(_0x11fe9c['jobId']??_0x11fe9c['id']);if(!_0x372299)throw new Error('jobId\x20is'+_0x5858dd(0x1a1)+'d');const _0x5c7fc3=asRecord(_0x11fe9c[_0x5858dd(0x23e)]),_0x5b0d82=Object['keys'](_0x5c7fc3)[_0x5858dd(0x298)]>0x0?_0x5c7fc3:{..._0x11fe9c};delete _0x5b0d82[_0x5858dd(0x1da)],delete _0x5b0d82['id'];const _0xbf57e9=await _0xcbf205[_0x5858dd(0x188)](_0x5858dd(0x193)+_0x5858dd(0x1e9),{'jobId':_0x372299,'patch':normalizeCronMutationParams(_0x5b0d82)});return _0x2ee54b({'reason':_0x5858dd(0x221)+'nged'}),_0xbf57e9;}async function _0x473941(_0x5336f8={}){const _0x2bff02=_0x491b5c;await _0x4f8154();const _0x25ba5d=getTrimmedString(_0x5336f8[_0x2bff02(0x1da)]??_0x5336f8['id']);if(!_0x25ba5d)throw new Error(_0x2bff02(0x186)+_0x2bff02(0x1a1)+'d');const _0x12e697=await _0xcbf205['request']('cron.rem'+_0x2bff02(0x265),{'jobId':_0x25ba5d});return _0x2ee54b({'reason':_0x2bff02(0x221)+_0x2bff02(0x262)}),_0x12e697;}async function _0xf38b94(_0x56f10f={}){const _0x2fc1dd=_0x491b5c;await _0x4f8154();const _0x59a686=getTrimmedString(_0x56f10f['jobId']??_0x56f10f['id']);if(!_0x59a686)throw new Error(_0x2fc1dd(0x186)+_0x2fc1dd(0x1a1)+'d');const _0x51321b=await _0xcbf205['request']('cron.run',{'jobId':_0x59a686}),_0x3639e3=getTrimmedString(asRecord(_0x51321b)['sessionK'+'ey']);if(_0x3639e3)_0x1592cf({'sessionKey':_0x3639e3,'state':_0x2fc1dd(0x2c4)});else _0x2ee54b({'reason':_0x2fc1dd(0x185)});return _0x51321b;}async function _0x1ed806(_0x280f33={}){return await _0x4f8154(),await _0xcbf205['request']('cron.run'+'s',_0x280f33);}async function _0x157df4(_0x5a2aeb={}){const _0x1119f0=_0x491b5c;await _0x4f8154();const _0x41726c=Date['now']();_0x5eebf8?.[_0x1119f0(0x300)](_0x1119f0(0x1fe)+_0x1119f0(0x2d7)+_0x1119f0(0x2b0),{'payload':summarizePayload(_0x5a2aeb)});try{const _0x3f5998=await _0xcbf205[_0x1119f0(0x188)](_0x1119f0(0x28c)+_0x1119f0(0x15e),_0x5a2aeb);return _0x5eebf8?.[_0x1119f0(0x300)](_0x1119f0(0x1fe)+_0x1119f0(0x16f)+_0x1119f0(0x1ea),{'durationMs':Date[_0x1119f0(0x197)]()-_0x41726c,'result':summarizePayload(_0x3f5998,{'maxDepth':0x2})}),_0x3f5998;}catch(_0x39c121){_0x5eebf8?.[_0x1119f0(0x1a9)](_0x1119f0(0x1fe)+_0x1119f0(0x24d)+_0x1119f0(0x28f),{'durationMs':Date[_0x1119f0(0x197)]()-_0x41726c,'error':summarizeError(_0x39c121)});const _0x2f1a4d=_0x39c121 instanceof Error?_0x39c121[_0x1119f0(0x323)]:String(_0x39c121);throw new Error('技能安装失败:\x20'+_0x2f1a4d);}}async function _0x59f6df(_0x1e75ae={}){const _0x1b85e7=_0x491b5c;_0x5eebf8?.[_0x1b85e7(0x300)](_0x1b85e7(0x15a)+_0x1b85e7(0x32b)+'uested',{'payload':summarizePayload(_0x1e75ae)});throw new Error('skills.u'+_0x1b85e7(0x32f)+_0x1b85e7(0x145)+_0x1b85e7(0x2a1)+'l-core,\x20'+_0x1b85e7(0x26a)+_0x1b85e7(0x173)+'eway');}async function _0x1b7865(_0x432dd9={}){const _0x3e8d27=_0x491b5c;_0x5eebf8?.[_0x3e8d27(0x300)](_0x3e8d27(0x228)+'lete\x20req'+_0x3e8d27(0x253),{'payload':summarizePayload(_0x432dd9)});throw new Error(_0x3e8d27(0x156)+_0x3e8d27(0x2cb)+'\x20handled'+'\x20by\x20shel'+'l-core,\x20'+_0x3e8d27(0x26a)+_0x3e8d27(0x173)+_0x3e8d27(0x1e4));}async function _0x1d198d(_0xe1c8be={}){const _0x22f827=_0x491b5c;await _0x4f8154();const _0x72edfb=getTrimmedString(_0xe1c8be[_0x22f827(0x269)+'ey']),_0x4de328=getTrimmedString(_0xe1c8be['message']),_0x169097=getTrimmedString(_0xe1c8be[_0x22f827(0x275)+'d'])||randomUUID();if(!_0x72edfb)throw new Error(_0x22f827(0x269)+'ey\x20is\x20re'+_0x22f827(0x16a));if(!_0x4de328)throw new Error(_0x22f827(0x303)+_0x22f827(0x1b2)+_0x22f827(0x1f4));const _0x302334=Date[_0x22f827(0x197)]();_0x39d148?.[_0x22f827(0x300)]('chat\x20str'+'eam\x20requ'+_0x22f827(0x326),{'requestId':_0x169097,'sessionKey':_0x72edfb,'message':summarizeText(_0x4de328),'filePaths':summarizeFilePaths(_0xe1c8be[_0x22f827(0x149)+'s'])}),_0x108d59({'priority':'P0','category':_0x22f827(0x1f3),'event':_0x22f827(0x2a0)+'ut.recei'+_0x22f827(0x150),'status':'requeste'+'d','message':_0x22f827(0x160)+'ut\x20recei'+_0x22f827(0x150),'sessionKey':_0x72edfb,'runId':_0x169097,'agentId':getTrimmedString(_0xe1c8be[_0x22f827(0x311)]),'inputSummary':summarizeText(_0x4de328,0xc8),'attachments':summarizeUserEventAttachments(_0xe1c8be),'meta':{'requestId':_0x169097,'source':getTrimmedString(_0xe1c8be['source'])||'user'}});const _0x1a659f=_0x211a9b(),_0x3b21b5={'runId':_0x169097,'requestId':_0x169097,'sessionKey':_0x72edfb,'outputText':'','startedAt':_0x302334,'started':![],'agentId':getTrimmedString(_0xe1c8be['agentId']),..._0x1a659f};_0x418df4[_0x22f827(0x1b1)](_0x169097,_0x3b21b5);const _0x1c7839=_0x5794a5[_0x22f827(0x142)](_0x3b21b5);try{if(_0x1c7839){_0x39d148?.['info'](_0x22f827(0x25f)+_0x22f827(0x13c)+'ed\x20behin'+_0x22f827(0x213)+_0x22f827(0x1b3),{'requestId':_0x169097,'sessionKey':_0x72edfb,'previousRequestId':_0x1c7839['requestI'+'d'],'previousRunId':_0x1c7839[_0x22f827(0x291)]}),await _0x1c7839[_0x22f827(0x306)];if(!_0x418df4[_0x22f827(0x33a)](_0x169097))return{'ok':!![],'requestId':_0x169097};}const {attachments:_0x2cf205,historyMediaLines:_0x1080a7}=await buildAttachments(Array[_0x22f827(0x21a)](_0xe1c8be[_0x22f827(0x149)+'s'])?_0xe1c8be[_0x22f827(0x149)+'s']:[],{'sessionKey':_0x72edfb,'stateDir':_0x260f5c['resolveS'+_0x22f827(0x2bc)](),'onWarn':_0x411f15=>_0x39d148?.['warn'](_0x22f827(0x30f)+_0x22f827(0x246)+_0x22f827(0x132)+_0x22f827(0x249),{'requestId':_0x169097,'sessionKey':_0x72edfb,'warning':_0x411f15})}),_0x398c29=_0x1080a7['length']>0x0?_0x4de328+'\x0a'+_0x1080a7[_0x22f827(0x215)]('\x0a'):_0x4de328;_0x39d148?.[_0x22f827(0x300)](_0x22f827(0x30f)+_0x22f827(0x271)+_0x22f827(0x17e)+'d',{'requestId':_0x169097,'sessionKey':_0x72edfb,'attachmentCount':_0x2cf205[_0x22f827(0x298)],'historyMediaLineCount':_0x1080a7[_0x22f827(0x298)],'attachments':_0x2cf205[_0x22f827(0x1ff)](_0x5575a6=>({'type':_0x5575a6['type'],'mimeType':_0x5575a6[_0x22f827(0x22e)],'fileName':_0x5575a6['fileName'],'contentLength':_0x5575a6['content'][_0x22f827(0x298)]}))}),_0x108d59({'priority':'P0','category':'chat','event':'attachme'+'nts.prep'+'ared','status':_0x22f827(0x2c3)+'d','message':_0x22f827(0x30f)+_0x22f827(0x271)+_0x22f827(0x17e)+'d','sessionKey':_0x72edfb,'runId':_0x169097,'agentId':getTrimmedString(_0xe1c8be[_0x22f827(0x311)]),'attachments':{'count':_0x2cf205[_0x22f827(0x298)],'types':[...new Set(_0x2cf205[_0x22f827(0x1ff)](_0xa48f=>_0xa48f[_0x22f827(0x22e)]||_0xa48f['type'])[_0x22f827(0x16d)](Boolean))],'files':_0x2cf205[_0x22f827(0x19c)](0x0,0xa)[_0x22f827(0x1ff)](_0x4c1ba0=>({'type':_0x4c1ba0[_0x22f827(0x2a7)],'mimeType':_0x4c1ba0[_0x22f827(0x22e)],'fileName':_0x4c1ba0[_0x22f827(0x1a8)],'contentLength':_0x4c1ba0[_0x22f827(0x23f)][_0x22f827(0x298)]})),'truncated':_0x2cf205[_0x22f827(0x298)]>0xa},'meta':{'historyMediaLineCount':_0x1080a7[_0x22f827(0x298)],'requestId':_0x169097}});const _0x46500c=asRecord(await _0xcbf205['request'](_0x22f827(0x226)+'d',{'sessionKey':_0x72edfb,'message':_0x398c29,'deliver':![],'idempotencyKey':_0x169097,..._0x2cf205['length']>0x0?{'attachments':_0x2cf205}:{}})),_0x5a9684=getTrimmedString(_0x46500c[_0x22f827(0x291)])||_0x169097,_0x52a25a=_0x418df4['get'](_0x169097);if(!_0x52a25a)return{'ok':!![],'requestId':_0x169097,'runId':_0x5a9684};return _0x52a25a[_0x22f827(0x2c6)]=!![],_0x5a9684!==_0x52a25a[_0x22f827(0x291)]&&(_0x418df4[_0x22f827(0x294)](_0x52a25a['runId']),_0x52a25a[_0x22f827(0x291)]=_0x5a9684,_0x418df4[_0x22f827(0x1b1)](_0x5a9684,_0x52a25a)),_0x3ac011['set'](_0x72edfb,_0x5a9684),_0xce76fd({'requestId':_0x169097,'sessionKey':_0x72edfb,'type':_0x22f827(0x2c6)}),_0x39d148?.[_0x22f827(0x300)](_0x22f827(0x25f)+_0x22f827(0x198)+_0x22f827(0x1e5)+_0x22f827(0x1e3),{'requestId':_0x169097,'runId':_0x5a9684,'sessionKey':_0x72edfb,'durationMs':Date[_0x22f827(0x197)]()-_0x302334,'status':_0x46500c[_0x22f827(0x256)]}),_0x108d59({'priority':'P0','category':_0x22f827(0x1f3),'event':_0x22f827(0x2f7)+'eam.acce'+_0x22f827(0x144),'status':_0x46500c['status']===_0x22f827(0x1a9)?'failed':_0x22f827(0x1c7),'level':_0x46500c[_0x22f827(0x256)]===_0x22f827(0x1a9)?'error':'info','message':_0x22f827(0x25f)+_0x22f827(0x198)+_0x22f827(0x1e5)+'gateway','sessionKey':_0x72edfb,'runId':_0x5a9684,'agentId':getTrimmedString(_0xe1c8be[_0x22f827(0x311)]),'visibleError':_0x46500c[_0x22f827(0x256)]==='error'?getTrimmedString(_0x46500c[_0x22f827(0x214)+_0x22f827(0x2f8)])||_0x22f827(0x2ce)+_0x22f827(0x33f)+_0x22f827(0x2ee):undefined,'durationMs':Date[_0x22f827(0x197)]()-_0x302334,'captureIncident':_0x46500c['status']===_0x22f827(0x1a9),'meta':{'requestId':_0x169097,'gatewayStatus':_0x46500c[_0x22f827(0x256)]}}),_0x46500c[_0x22f827(0x256)]===_0x22f827(0x1a9)&&_0x45235c(_0x52a25a,'error',getTrimmedString(_0x46500c['errorMes'+_0x22f827(0x2f8)])||'gateway\x20'+_0x22f827(0x33f)+_0x22f827(0x2ee)),{'ok':!![],'requestId':_0x169097,'runId':_0x5a9684,'response':_0x46500c};}catch(_0x23e2af){const _0x5d2907=_0x394188(_0x169097),_0x548e82=_0x23e2af instanceof Error?_0x23e2af[_0x22f827(0x323)]:String(_0x23e2af);_0x39d148?.[_0x22f827(0x1a9)](_0x22f827(0x25f)+'eam\x20fail'+'ed',{'requestId':_0x169097,'sessionKey':_0x72edfb,'durationMs':Date[_0x22f827(0x197)]()-_0x302334,'error':summarizeError(_0x23e2af)}),_0x108d59({'priority':'P0','category':_0x22f827(0x1f3),'event':_0x22f827(0x2f7)+'eam.fail'+'ed','status':_0x22f827(0x287),'level':_0x22f827(0x1a9),'message':_0x22f827(0x25f)+_0x22f827(0x211)+'ed','sessionKey':_0x72edfb,'runId':_0x5d2907?.[_0x22f827(0x291)]||_0x169097,'agentId':getTrimmedString(_0xe1c8be[_0x22f827(0x311)]),'inputSummary':summarizeText(_0x4de328,0xc8),'attachments':summarizeUserEventAttachments(_0xe1c8be),'visibleError':_0x548e82,'durationMs':Date['now']()-_0x302334,'captureIncident':!![],'meta':{'requestId':_0x169097,'error':summarizeError(_0x23e2af)}});if(_0x5d2907)_0x45235c(_0x5d2907,'error',_0x548e82);else _0xce76fd({'requestId':_0x169097,'sessionKey':_0x72edfb,'type':_0x22f827(0x1a9),'message':_0x548e82});throw _0x23e2af;}}async function _0x52ddc1(_0x240d79={}){const _0x4dbd03=_0x491b5c;_0x4a824d();const _0xb83a86=getTrimmedString(_0x240d79[_0x4dbd03(0x269)+'ey']);if(!_0xb83a86)throw new Error(_0x4dbd03(0x269)+_0x4dbd03(0x327)+_0x4dbd03(0x16a));const _0x2ecee3=Date[_0x4dbd03(0x197)](),_0x3c1856=_0x394188(getTrimmedString(_0x240d79[_0x4dbd03(0x275)+'d']))??_0x2f5515(_0xb83a86),_0x44d770=_0x3ac011[_0x4dbd03(0x335)](_0xb83a86),_0x32ec0a={'sessionKey':_0xb83a86};if(_0x3c1856?.['runId'])_0x32ec0a['runId']=_0x3c1856['runId'];else{if(_0x44d770)_0x32ec0a[_0x4dbd03(0x291)]=_0x44d770;}const _0x2df58d=await _0xcbf205[_0x4dbd03(0x188)](_0x4dbd03(0x1c3)+'rt',_0x32ec0a);if(_0x3c1856)_0x45235c(_0x3c1856,'done');return _0x39d148?.[_0x4dbd03(0x300)](_0x4dbd03(0x20c)+_0x4dbd03(0x1b4)+_0x4dbd03(0x325),{'sessionKey':_0xb83a86,'requestId':getTrimmedString(_0x240d79[_0x4dbd03(0x275)+'d']),'runId':_0x32ec0a[_0x4dbd03(0x291)],'durationMs':Date[_0x4dbd03(0x197)]()-_0x2ecee3}),_0x2df58d;}async function _0x221c50(_0xfb62d9={}){const _0x79325b=_0x491b5c,_0x16c948=getTrimmedString(_0xfb62d9[_0x79325b(0x269)+'ey']);if(!_0x16c948)throw new Error(_0x79325b(0x269)+'ey\x20is\x20re'+_0x79325b(0x16a));const _0xec216=Math[_0x79325b(0x2dd)](0x1,Math[_0x79325b(0x250)](Number(_0xfb62d9[_0x79325b(0x22f)])||0xc8)),_0x50ec67=getTrimmedString(_0xfb62d9[_0x79325b(0x14c)])||null;if(!_0x1212a6())return{'messages':[],'limit':_0xec216,'hasMore':![],'nextCursor':null};const _0x17e808={'sessionKey':_0x16c948,'limit':_0xec216};if(_0x50ec67)_0x17e808[_0x79325b(0x14c)]=_0x50ec67;let _0x292c34;try{_0x292c34=await _0xcbf205[_0x79325b(0x188)](_0x79325b(0x154)+_0x79325b(0x240),_0x17e808);}catch(_0x44d40e){if(isChatHistoryNotFoundError(_0x44d40e)){_0x4aa0ef(_0x16c948,_0x79325b(0x178)+_0x79325b(0x2f5)+'d',{'cursorPresent':Boolean(_0x50ec67),'limit':_0xec216,'source':getTrimmedString(_0xfb62d9[_0x79325b(0x171)])||null});if(BACKGROUND_CHAT_HISTORY_SOURCES['has'](getTrimmedString(_0xfb62d9[_0x79325b(0x171)])))return createEmptyChatHistoryResult(_0xec216);}throw _0x44d40e;}return _0x39d148?.[_0x79325b(0x300)]('chat\x20his'+'tory\x20loa'+_0x79325b(0x340),{'sessionKey':_0x16c948,'limit':_0xec216,'cursorPresent':Boolean(_0x50ec67),'result':summarizePayload(_0x292c34,{'maxDepth':0x2})}),_0x292c34;}async function _0x4a3d61(_0x16779b=''){const _0x458553=_0x491b5c;if(!_0x1212a6())return{'pending':!![],'skills':[]};const _0x2616f5=getTrimmedString(_0x16779b),_0x27daef=await _0xcbf205[_0x458553(0x188)](_0x458553(0x1a7)+'tatus',_0x2616f5?{'agentId':_0x2616f5}:{}),_0x1349b5=await _0x260f5c[_0x458553(0x333)+'ig']()[_0x458553(0x191)](()=>({})),_0x2aa57f=await _0x672ea3[_0x458553(0x34a)+'sStatus'](_0x27daef),_0x4d54c3=applySkillConfigStateToStatus(_0x2aa57f,_0x1349b5),_0x169450=filterSkillsForAgent(_0x4d54c3,_0x1349b5,_0x2616f5,_0x194b30);return _0x5eebf8?.['info'](_0x458553(0x312)+_0x458553(0x28b)+_0x458553(0x243),{'agentId':_0x2616f5||'default','result':summarizePayload(_0x169450,{'maxDepth':0x2})}),_0x169450;}return{'on':_0x567ea6,'start':_0x3e8086,'stop':_0x39c207,'restart':_0x693eaa,'runtimeInfo':_0xe3753e,'gatewayToken':()=>_0x4415f0||'','gatewayPort':()=>_0x105cdc||0x0,'getStatus':()=>_0x32c9bc,'getRecentLogs':_0x107620,'answerAskUserQuestion':_0x2053e9=>_0x60a2fd[_0x491b5c(0x307)](_0x2053e9),'agents':{'list':_0x361559},'skills':{'status':_0x4a3d61,'install':_0x157df4,'update':_0x59f6df,'delete':_0x1b7865},'sessions':{'create':_0x3e8d71,'list':_0x23b64e,'delete':_0x49a441,'rename':_0x20e665,'patchModel':_0x5ca806,'reorderPinned':_0x487291},'workspace':{'directoryInfo':_0x15be9c,'sharedContext':_0x59db68,'writeSharedContext':_0x40a9f9},'cron':{'list':_0x25bac0,'create':_0x3bf04a,'update':_0x4f792f,'remove':_0x473941,'runOnce':_0xf38b94,'logs':_0x1ed806},'models':{'settings':()=>_0x260f5c[_0x491b5c(0x1ae)+_0x491b5c(0x2b4)](),'setSettings':async(_0x5064d6={})=>{const _0x535b96=_0x491b5c,_0x5b5658=_0x5064d6?.[_0x535b96(0x296)+_0x535b96(0x19a)]!==![];return await _0x260f5c[_0x535b96(0x229)+_0x535b96(0x2b4)](_0x5064d6,{'restartOnChange':_0x5b5658}),_0x260f5c[_0x535b96(0x1ae)+_0x535b96(0x2b4)]();},'setSelectedModelEverywhere':async(_0x52808c={})=>{const _0x2805f3=_0x491b5c,_0x3255ce=await _0x260f5c['persistD'+_0x2805f3(0x2c5)+_0x2805f3(0x2b8)+_0x2805f3(0x17a)](_0x52808c),_0x132654=getTrimmedString(_0x52808c[_0x2805f3(0x269)+'ey']);if(!_0x132654)return{'ok':!![],'modelRef':_0x3255ce[_0x2805f3(0x21e)],'defaultPersisted':!![],'currentSessionApplied':![],'effectiveFrom':_0x2805f3(0x20f)+_0x2805f3(0x342),'sessionKey':null};try{const _0x64d37e=await _0x5ca806(_0x132654,_0x3255ce[_0x2805f3(0x21e)]);return{'ok':!![],'modelRef':_0x3255ce[_0x2805f3(0x21e)],'defaultPersisted':!![],'currentSessionApplied':!![],'effectiveFrom':'next-mes'+_0x2805f3(0x2f8),'sessionKey':_0x64d37e[_0x2805f3(0x31a)]};}catch(_0x2910b1){if(_0x52808c[_0x2805f3(0x157)+_0x2805f3(0x237)+_0x2805f3(0x180)+_0x2805f3(0x2d8)])return void _0x693eaa(_0x2805f3(0x2e2)+_0x2805f3(0x32c)+_0x2805f3(0x2da)+'dated'),{'ok':!![],'modelRef':_0x3255ce[_0x2805f3(0x21e)],'defaultPersisted':!![],'currentSessionApplied':![],'effectiveFrom':_0x2805f3(0x22d)+_0x2805f3(0x2ae),'sessionKey':_0x132654,'sessionPatchError':_0x2910b1 instanceof Error?_0x2910b1[_0x2805f3(0x323)]:String(_0x2910b1),'gatewayRestartRequested':!![]};return{'ok':!![],'modelRef':_0x3255ce['modelRef'],'defaultPersisted':!![],'currentSessionApplied':![],'effectiveFrom':_0x2805f3(0x20f)+_0x2805f3(0x342),'sessionKey':_0x132654,'sessionPatchError':_0x2910b1 instanceof Error?_0x2910b1[_0x2805f3(0x323)]:String(_0x2910b1)};}},'setSelfOperatedModels':_0x2e8867=>_0x260f5c[_0x491b5c(0x31d)+'peratedM'+'odels'](_0x2e8867),'selectedModelId':async()=>{const _0x20494c=_0x491b5c,_0x4ab95e=await _0x260f5c[_0x20494c(0x1ae)+_0x20494c(0x2b4)]();return _0x4ab95e[_0x20494c(0x1dd)]&&_0x4ab95e[_0x20494c(0x14e)+'e']?_0x4ab95e[_0x20494c(0x1dd)]+'/'+_0x4ab95e['modelNam'+'e']:'';},'customModels':async()=>{const _0xe16f4=_0x491b5c;return _0x260f5c[_0xe16f4(0x202)+'mModels']();},'saveCustomModel':async _0x49bc93=>{const _0x4b74a3=_0x491b5c;return _0x260f5c[_0x4b74a3(0x1d4)+_0x4b74a3(0x1c4)](_0x49bc93);},'deleteCustomModel':async(_0x199796={})=>{const _0xb0402f=_0x491b5c,_0x5ba29f=typeof _0x199796===_0xb0402f(0x2a2)?{'id':_0x199796}:asRecord(_0x199796),_0x269c5a=await _0x260f5c[_0xb0402f(0x13e)+_0xb0402f(0x227)+'l'](_0x5ba29f),_0x553787=getTrimmedString(_0x5ba29f[_0xb0402f(0x269)+'ey']);if(!_0x269c5a['modelRef']||!_0x553787)return{'ok':!![],'id':_0x269c5a['id'],'models':_0x269c5a[_0xb0402f(0x33c)],'modelRef':_0x269c5a[_0xb0402f(0x21e)],'currentSessionApplied':![],'effectiveFrom':_0xb0402f(0x20f)+_0xb0402f(0x342),'sessionKey':_0x553787||null};try{const _0x1fa824=await _0x5ca806(_0x553787,_0x269c5a[_0xb0402f(0x21e)]);return{'ok':!![],'id':_0x269c5a['id'],'models':_0x269c5a[_0xb0402f(0x33c)],'modelRef':_0x269c5a[_0xb0402f(0x21e)],'currentSessionApplied':!![],'effectiveFrom':_0xb0402f(0x183)+_0xb0402f(0x2f8),'sessionKey':_0x1fa824[_0xb0402f(0x31a)]};}catch(_0x273440){return{'ok':!![],'id':_0x269c5a['id'],'models':_0x269c5a[_0xb0402f(0x33c)],'modelRef':_0x269c5a[_0xb0402f(0x21e)],'currentSessionApplied':![],'effectiveFrom':'new-sess'+_0xb0402f(0x342),'sessionKey':_0x553787,'sessionPatchError':_0x273440 instanceof Error?_0x273440[_0xb0402f(0x323)]:String(_0x273440)};}}},'config':{'read':()=>_0x260f5c['readConf'+_0x491b5c(0x29b)]()},'chat':{'stream':_0x1d198d,'abort':_0x52ddc1,'history':_0x221c50}};}
@@ -1 +1 @@
1
- const _0x33d9b6=_0xeb7d;(function(_0x3dbdf9,_0x5340dd){const _0x2c2a72=_0xeb7d,_0x5dc2a0=_0x3dbdf9();while(!![]){try{const _0x30736a=parseInt(_0x2c2a72(0x99))/0x1+parseInt(_0x2c2a72(0xbd))/0x2*(parseInt(_0x2c2a72(0xb5))/0x3)+parseInt(_0x2c2a72(0x9b))/0x4+-parseInt(_0x2c2a72(0x116))/0x5*(-parseInt(_0x2c2a72(0x8a))/0x6)+parseInt(_0x2c2a72(0xfa))/0x7+parseInt(_0x2c2a72(0xe3))/0x8+-parseInt(_0x2c2a72(0xf5))/0x9;if(_0x30736a===_0x5340dd)break;else _0x5dc2a0['push'](_0x5dc2a0['shift']());}catch(_0x3d885c){_0x5dc2a0['push'](_0x5dc2a0['shift']());}}}(_0x464c,0x9dfbb));import{Buffer}from'node:buffer';import{createHash,createPrivateKey,createPublicKey,generateKeyPairSync,randomUUID,sign}from'node:crypto';function _0x464c(){const _0x9ee0a3=['string','sing\x20non','failed\x20t','rejectPe','connect','nectChal','min','.write','nding','1680849oJsjOS','update','operator','ssage','config','ed\x20out','failed','open','2XuRmhV','handleMe','.read','tewayRea','ting','hex','publicKe','onChatEv','shouldRe','ers','stop','export','now','accepted','token','message','o\x20send\x20g','close','equals','ted','event','replaceA','t:\x20','06032b65','entries','DateTime','deviceId','onSessio','clientVe','y_schedu','hake\x20mis','digest','wujie-sh','ell/','OPEN','nected','clearTim','get','8436672JjbxdE','pkcs8','method','ters','challeng','dentity\x20','splayNam','socket_c','tTimer','istening','nonce','onStartu','connectC','t\x20config','timeout','ct_attem','dentity','role','32812362xnAnQe','handleDi','trim','slice','mer','6314077ewshCd','yCheck','\x20yet','ws_gatew','connectS','t\x20connec','once','led','type','adyWaite','Event','lengeTim','is\x20not\x20l','nnected','restart','ws_conne','skipRead','ateway\x20i','ay_ready','nal','yPem','test','ured','o\x20load\x20g','status','hallenge','初始化\x20gate','artedAt','4517645hceSla','resolveR','WS\x20error','WS\x20is\x20no','.changed','WS\x20clien','clearRec','reconnec','WS\x20disco','expectFi','rsion','ttemptSt','ction\x20ti','req','rejectRe','tBackoff','replace','length','locale','pTiming','.approva','gateway\x20','_schedul','Format','ready','platform','unavaila','onDiscon','spki','Code','onnectTi','waitUnti','code=','connecte','timed\x20ou','fromChar','nMessage','ateway\x20r','connectA','terminat','t\x20restar','base64','resolve','queueCon','e\x20missin','isBuffer','reject','entity','pt_start','connect.','lReady','der','clientDi','utf8','losed_be','d\x20(','object','ble','readyWai','device\x20i','e\x20timeou','sconnect','toString','identity','url','eyPem','sessions','mily','t\x20stoppe','set','privateK','g\x20nonce','fore_rea','request','302a3005','error','pending','lListene','connectN','pem','connect\x20','ent','viceFami','6cyYAoj','charCode','configur','sendConn','chat','clientDe','WS\x20conne','ect','send','parse','readySta','ttempt','join','way\x20设备身份','Path','317208hvemYV','clientMo','2221208RGKtqg','from','filter','stringif','WS\x20hands','.pairing','ws_start','WS\x20close','onConnec','payload','delete','subarray','request\x20','notifyGa','Timer','clientId','ed25519'];_0x464c=function(){return _0x9ee0a3;};return _0x464c();}import{chmodSync,existsSync,mkdirSync,readFileSync,writeFileSync}from'node:fs';import{dirname}from'node:path';function _0xeb7d(_0x4426d1,_0x1e93eb){_0x4426d1=_0x4426d1-0x86;const _0x464cb4=_0x464c();let _0xeb7da6=_0x464cb4[_0x4426d1];return _0xeb7da6;}import _0x149f05 from'ws';const ED25519_SPKI_PREFIX=Buffer['from'](_0x33d9b6(0x160)+_0x33d9b6(0xd4)+'70032100',_0x33d9b6(0xc2)),BASE64_PADDING_REGEX=/=+$/g,UPPERCASE_ASCII_REGEX=/[A-Z]/g,INITIAL_RECONNECT_BACKOFF_MS=0x320,MAX_RECONNECT_BACKOFF_MS=0x3a98,GATEWAY_STARTING_RETRY_DELAY_MS=0x12c;function isRecord(_0x5a3bbf){const _0x3b6399=_0x33d9b6;return Boolean(_0x5a3bbf)&&typeof _0x5a3bbf===_0x3b6399(0x14e)&&!Array['isArray'](_0x5a3bbf);}function formatUnknownError(_0x59cb75){const _0x3753ac=_0x33d9b6;if(_0x59cb75 instanceof Error)return _0x59cb75[_0x3753ac(0xcc)];return String(_0x59cb75??'');}function isLocalGatewayConnRefused(_0x1acba1){const _0x280e4c=_0x33d9b6,_0x5a1721=formatUnknownError(_0x1acba1);return/\bECONNREFUSED\b/i[_0x280e4c(0x10f)](_0x5a1721)&&/127\.0\.0\.1:\d+/[_0x280e4c(0x10f)](_0x5a1721);}function isGatewayStartingRetryReason(_0x4c2981){const _0x543e07=_0x33d9b6;return/\bgateway starting;\s*retry shortly\b/i[_0x543e07(0x10f)](_0x4c2981);}function base64UrlEncode(_0x8152d4){const _0x547d5b=_0x33d9b6;return _0x8152d4['toString'](_0x547d5b(0x13f))[_0x547d5b(0xd2)+'ll']('+','-')[_0x547d5b(0xd2)+'ll']('/','_')[_0x547d5b(0x126)](BASE64_PADDING_REGEX,'');}function derivePublicKeyRaw(_0x34a49b){const _0x26a485=_0x33d9b6,_0xf49b9a=createPublicKey(_0x34a49b)[_0x26a485(0xc8)]({'type':_0x26a485(0x132),'format':_0x26a485(0x149)}),_0x52f9cd=Buffer[_0x26a485(0x143)](_0xf49b9a)?_0xf49b9a:Buffer[_0x26a485(0x9c)](_0xf49b9a),_0x1ec366=_0x52f9cd[_0x26a485(0x127)]===ED25519_SPKI_PREFIX[_0x26a485(0x127)]+0x20&&_0x52f9cd['subarray'](0x0,ED25519_SPKI_PREFIX['length'])[_0x26a485(0xcf)](ED25519_SPKI_PREFIX);return _0x1ec366?_0x52f9cd[_0x26a485(0xa6)](ED25519_SPKI_PREFIX[_0x26a485(0x127)]):_0x52f9cd;}function fingerprintPublicKey(_0x1df43f){const _0x5d9ae6=_0x33d9b6;return createHash('sha256')[_0x5d9ae6(0xb6)](derivePublicKeyRaw(_0x1df43f))[_0x5d9ae6(0xdc)](_0x5d9ae6(0xc2));}function publicKeyRawBase64UrlFromPem(_0x40cff1){return base64UrlEncode(derivePublicKeyRaw(_0x40cff1));}function signDevicePayload(_0x282a62,_0x4906a7){const _0x637838=_0x33d9b6,_0xb62d06=createPrivateKey(_0x282a62);return base64UrlEncode(sign(null,Buffer[_0x637838(0x9c)](_0x4906a7,_0x637838(0x14b)),_0xb62d06));}function normalizeDeviceMetadataForAuth(_0x552c1e){const _0xc16ea4=_0x33d9b6,_0x3e9486=typeof _0x552c1e===_0xc16ea4(0xac)?_0x552c1e['trim']():'';if(!_0x3e9486)return'';return _0x3e9486['replace'](UPPERCASE_ASCII_REGEX,_0x1a50e3=>String[_0xc16ea4(0x139)+_0xc16ea4(0x133)](_0x1a50e3[_0xc16ea4(0x8b)+'At'](0x0)+0x20));}function buildDeviceAuthPayloadV3(_0xc75643){const _0x376a81=_0x33d9b6;return['v3',_0xc75643[_0x376a81(0xd7)],_0xc75643[_0x376a81(0xaa)],_0xc75643['clientMo'+'de'],_0xc75643[_0x376a81(0xf4)],_0xc75643['scopes'][_0x376a81(0x96)](','),String(_0xc75643['signedAt'+'Ms']),_0xc75643['token']??'',_0xc75643['nonce'],normalizeDeviceMetadataForAuth(_0xc75643[_0x376a81(0x12f)]),normalizeDeviceMetadataForAuth(_0xc75643['deviceFa'+_0x376a81(0x159)])][_0x376a81(0x96)]('|');}function writeIdentityFile(_0x232d24,_0x18d4a0,_0x141f10){mkdirSync(dirname(_0x232d24),{'recursive':!![]}),writeFileSync(_0x232d24,JSON['stringif'+'y']({'version':0x1,..._0x18d4a0,'createdAtMs':_0x141f10},null,0x2)+'\x0a',{'mode':0x180});try{chmodSync(_0x232d24,0x180);}catch{}}function generateDeviceIdentity(){const _0x4747f6=_0x33d9b6,{publicKey:_0x56dfd6,privateKey:_0x349439}=generateKeyPairSync(_0x4747f6(0xab)),_0x3f9919=_0x56dfd6[_0x4747f6(0xc8)]({'type':_0x4747f6(0x132),'format':_0x4747f6(0x86)})['toString'](),_0x3c1ab8=_0x349439[_0x4747f6(0xc8)]({'type':_0x4747f6(0xe4),'format':'pem'})['toString']();return{'deviceId':fingerprintPublicKey(_0x3f9919),'publicKeyPem':_0x3f9919,'privateKeyPem':_0x3c1ab8};}function loadOrCreateDeviceIdentity(_0x83d669){const _0x446c8a=_0x33d9b6;if(existsSync(_0x83d669))try{const _0x40d208=JSON[_0x446c8a(0x93)](readFileSync(_0x83d669,'utf8')),_0x44b3ee=typeof _0x40d208?.[_0x446c8a(0xc3)+_0x446c8a(0x10e)]===_0x446c8a(0xac)?_0x40d208[_0x446c8a(0xc3)+_0x446c8a(0x10e)]:'',_0xe30e5f=typeof _0x40d208?.[_0x446c8a(0x15c)+_0x446c8a(0x157)]===_0x446c8a(0xac)?_0x40d208['privateK'+_0x446c8a(0x157)]:'';if(_0x44b3ee&&_0xe30e5f){const _0xaaa330={'deviceId':fingerprintPublicKey(_0x44b3ee),'publicKeyPem':_0x44b3ee,'privateKeyPem':_0xe30e5f};return _0x40d208?.[_0x446c8a(0xd7)]!==_0xaaa330[_0x446c8a(0xd7)]&&writeIdentityFile(_0x83d669,_0xaaa330,Date[_0x446c8a(0xc9)]()),_0xaaa330;}}catch{}const _0xe2029b=generateDeviceIdentity();return writeIdentityFile(_0x83d669,_0xe2029b,Date[_0x446c8a(0xc9)]()),_0xe2029b;}export class ClawGatewayWsClient{['ws']=null;[_0x33d9b6(0xb9)]=null;[_0x33d9b6(0x162)]=new Map();[_0x33d9b6(0x150)+_0x33d9b6(0xe6)]=[];[_0x33d9b6(0xc5)+'connect']=![];[_0x33d9b6(0x11d)+'tTimer']=null;['connectC'+_0x33d9b6(0x113)+_0x33d9b6(0xa9)]=null;['connectN'+_0x33d9b6(0x100)]=null;[_0x33d9b6(0xfe)+_0x33d9b6(0x88)]=![];[_0x33d9b6(0x137)+'d']=![];[_0x33d9b6(0x11d)+_0x33d9b6(0x125)+'Ms']=INITIAL_RECONNECT_BACKOFF_MS;['deviceId'+_0x33d9b6(0x145)]=null;[_0x33d9b6(0x13c)+_0x33d9b6(0x95)]=0x0;[_0x33d9b6(0x13c)+'ttemptSt'+_0x33d9b6(0x115)]=0x0;[_0x33d9b6(0x8c)+'e'](_0x22a036){const _0x3d841d=_0x33d9b6;if(!_0x22a036){this[_0x3d841d(0xc7)]();return;}const _0x322f4d=this[_0x3d841d(0xb9)];this[_0x3d841d(0xb9)]=_0x22a036,this[_0x3d841d(0xc5)+_0x3d841d(0xb0)]=!![];try{this[_0x3d841d(0xd7)+'entity']=loadOrCreateDeviceIdentity(_0x22a036['identity'+_0x3d841d(0x98)]);}catch(_0xfe154e){const _0x4f5b33=_0xfe154e instanceof Error?_0xfe154e[_0x3d841d(0xcc)]:_0x3d841d(0x114)+_0x3d841d(0x97)+'失败';this[_0x3d841d(0xc7)](),_0x22a036[_0x3d841d(0x131)+_0x3d841d(0xe0)](_0x4f5b33);return;}const _0x3eec02=!_0x322f4d||_0x322f4d['url']!==_0x22a036[_0x3d841d(0x156)]||_0x322f4d[_0x3d841d(0xcb)]!==_0x22a036[_0x3d841d(0xcb)]||_0x322f4d['clientId']!==_0x22a036[_0x3d841d(0xaa)]||_0x322f4d[_0x3d841d(0x9a)+'de']!==_0x22a036[_0x3d841d(0x9a)+'de']||_0x322f4d[_0x3d841d(0xd9)+_0x3d841d(0x120)]!==_0x22a036['clientVe'+_0x3d841d(0x120)]||_0x322f4d[_0x3d841d(0x155)+_0x3d841d(0x98)]!==_0x22a036['identity'+'Path'];if(_0x3eec02){this[_0x3d841d(0x108)]();return;}if(!this['ws'])this[_0x3d841d(0xb0)]();}['stop'](){const _0x9506f1=_0x33d9b6;this[_0x9506f1(0xc5)+_0x9506f1(0xb0)]=![],this[_0x9506f1(0x137)+'d']=![],this[_0x9506f1(0x164)+_0x9506f1(0x100)]=null,this[_0x9506f1(0xfe)+_0x9506f1(0x88)]=![],this[_0x9506f1(0xe1)+_0x9506f1(0xc6)](),this['rejectPe'+'nding'](new Error(_0x9506f1(0x12b)+_0x9506f1(0x11b)+_0x9506f1(0x15a)+'d')),this[_0x9506f1(0x124)+_0x9506f1(0x103)+'rs'](new Error(_0x9506f1(0x12b)+'WS\x20clien'+_0x9506f1(0x15a)+'d'));if(this['ws']){try{this['ws'][_0x9506f1(0xce)]();}catch{}this['ws']=null;}this[_0x9506f1(0xd7)+_0x9506f1(0x145)]=null,this[_0x9506f1(0xb9)]=null;}async[_0x33d9b6(0x15f)](_0x22a263,_0x4ea764={},_0x37f2f7={}){const _0x1b155e=_0x33d9b6;if(!_0x37f2f7[_0x1b155e(0x10a)+_0x1b155e(0xfb)])await this[_0x1b155e(0x135)+_0x1b155e(0x148)]();const _0x10bbd4=this['ws'];if(!_0x10bbd4||_0x10bbd4[_0x1b155e(0x94)+'te']!==_0x149f05['OPEN'])throw new Error(_0x1b155e(0x12b)+_0x1b155e(0x119)+_0x1b155e(0xff)+'ted');const _0x27da38=randomUUID(),_0x3c081d=_0x37f2f7['timeoutM'+'s']??0x7530;return await new Promise((_0x513812,_0x48c1e6)=>{const _0x1a4470=_0x1b155e,_0x43df44=setTimeout(()=>{const _0x3f3ebf=_0xeb7d;this[_0x3f3ebf(0x162)][_0x3f3ebf(0xa5)](_0x27da38),_0x48c1e6(new Error(_0x3f3ebf(0x12b)+'request\x20'+_0x3f3ebf(0x138)+_0x3f3ebf(0xd3)+_0x22a263));},_0x3c081d);this[_0x1a4470(0x162)][_0x1a4470(0x15b)](_0x27da38,{'method':_0x22a263,'resolve':_0x181635=>{clearTimeout(_0x43df44),_0x513812(_0x181635);},'reject':_0x4db8b9=>{clearTimeout(_0x43df44),_0x48c1e6(_0x4db8b9);},'expectFinal':_0x37f2f7['expectFi'+_0x1a4470(0x10d)]===!![],'timeout':_0x43df44});try{_0x10bbd4[_0x1a4470(0x92)](JSON[_0x1a4470(0x9e)+'y']({'type':_0x1a4470(0x123),'id':_0x27da38,'method':_0x22a263,'params':_0x4ea764}));}catch(_0x29c889){this[_0x1a4470(0x162)][_0x1a4470(0xa5)](_0x27da38),clearTimeout(_0x43df44),_0x48c1e6(_0x29c889 instanceof Error?_0x29c889:new Error(_0x1a4470(0xae)+_0x1a4470(0xcd)+_0x1a4470(0x13b)+'equest'));}});}['restart'](){const _0x46c450=_0x33d9b6;this[_0x46c450(0x137)+'d']=![],this[_0x46c450(0x164)+_0x46c450(0x100)]=null,this[_0x46c450(0xfe)+_0x46c450(0x88)]=![],this[_0x46c450(0xe1)+_0x46c450(0xc6)](),this[_0x46c450(0xaf)+'nding'](new Error(_0x46c450(0x12b)+_0x46c450(0x11b)+_0x46c450(0x13e)+_0x46c450(0xc1))),this[_0x46c450(0x124)+_0x46c450(0x103)+'rs'](new Error(_0x46c450(0x12b)+_0x46c450(0x11b)+'t\x20restar'+_0x46c450(0xc1)));if(this['ws']){try{this['ws'][_0x46c450(0x13d)+'e']();}catch{}this['ws']=null;}this[_0x46c450(0xb0)]();}[_0x33d9b6(0xa8)+_0x33d9b6(0xc0)+'dy'](){const _0x22d857=_0x33d9b6;if(this[_0x22d857(0x137)+'d']||!this[_0x22d857(0xc5)+_0x22d857(0xb0)]||!this[_0x22d857(0xb9)])return;if(!this[_0x22d857(0x11d)+_0x22d857(0xeb)])return;this[_0x22d857(0x11c)+_0x22d857(0x134)+_0x22d857(0xf9)](),this[_0x22d857(0xb9)][_0x22d857(0xee)+_0x22d857(0x129)]?.(_0x22d857(0xfd)+_0x22d857(0x10c)+'_retry_n'+'ow',{'attempt':this[_0x22d857(0x13c)+_0x22d857(0x95)],'reason':'gateway_'+_0x22d857(0x12e)}),this[_0x22d857(0xb0)]();}[_0x33d9b6(0xb0)](){const _0x40eecd=_0x33d9b6;if(!this[_0x40eecd(0xb9)]||this['ws'])return;this['connectA'+_0x40eecd(0x95)]+=0x1,this['connectA'+_0x40eecd(0x121)+_0x40eecd(0x115)]=Date['now'](),this[_0x40eecd(0xb9)][_0x40eecd(0xee)+_0x40eecd(0x129)]?.('ws_conne'+'ct_attem'+_0x40eecd(0x146),{'attempt':this[_0x40eecd(0x13c)+_0x40eecd(0x95)]});const _0x4d8f36=new _0x149f05(this[_0x40eecd(0xb9)][_0x40eecd(0x156)]);this['ws']=_0x4d8f36,_0x4d8f36['on'](_0x40eecd(0xbc),()=>this[_0x40eecd(0x141)+_0x40eecd(0xb1)+'lengeTim'+'eout']()),_0x4d8f36['on'](_0x40eecd(0xcc),_0x40995f=>this[_0x40eecd(0xbe)+'ssage'](_0x40995f[_0x40eecd(0x154)]())),_0x4d8f36['on']('close',(_0x338221,_0x22b7d4)=>{const _0x350179=_0x40eecd;if(this[_0x350179(0x137)+'d']){const _0x2dc1b8=_0x22b7d4[_0x350179(0x154)]()||_0x350179(0x136)+_0x338221;this[_0x350179(0xf6)+'sconnect']('gateway\x20'+_0x350179(0xa2)+_0x350179(0x14d)+_0x2dc1b8+')');}else this['handleDi'+_0x350179(0x153)]('');}),_0x4d8f36['on'](_0x40eecd(0x161),_0x3b7248=>{const _0x545941=_0x40eecd;if(isLocalGatewayConnRefused(_0x3b7248)){this[_0x545941(0xf6)+_0x545941(0x153)](_0x545941(0x12b)+_0x545941(0x106)+_0x545941(0xec)+_0x545941(0xfc));return;}const _0x576936=formatUnknownError(_0x3b7248);this[_0x545941(0xf6)+_0x545941(0x153)](_0x576936?_0x545941(0x12b)+_0x545941(0x118)+':\x20'+_0x576936:_0x545941(0x12b)+_0x545941(0x118));});}[_0x33d9b6(0x141)+'nectChal'+_0x33d9b6(0x105)+'eout'](){const _0x111723=_0x33d9b6;this[_0x111723(0x164)+_0x111723(0x100)]=null,this['connectS'+'ent']=![];if(this[_0x111723(0xef)+_0x111723(0x113)+_0x111723(0xa9)])clearTimeout(this[_0x111723(0xef)+_0x111723(0x113)+_0x111723(0xa9)]);this[_0x111723(0xef)+_0x111723(0x113)+_0x111723(0xa9)]=setTimeout(()=>{const _0x200c42=_0x111723;if(this[_0x200c42(0xfe)+'ent']||!this['ws']||this['ws']['readySta'+'te']!==_0x149f05[_0x200c42(0xdf)])return;this['handleDi'+_0x200c42(0x153)]('gateway\x20'+_0x200c42(0x9f)+'hake\x20tim'+_0x200c42(0xba)),this['ws']?.[_0x200c42(0xce)](0x3f0,_0x200c42(0x87)+_0x200c42(0xe7)+_0x200c42(0x152)+'t');},0x7d0);}async['sendConn'+'ect'](){const _0x52eff6=_0x33d9b6,_0x5db53b=this[_0x52eff6(0xb9)];if(!_0x5db53b||this[_0x52eff6(0xfe)+'ent'])return;const _0x1e500c=this[_0x52eff6(0x164)+'once']?.[_0x52eff6(0xf7)]()??'';if(!_0x1e500c){this[_0x52eff6(0xf6)+_0x52eff6(0x153)](_0x52eff6(0x12b)+_0x52eff6(0x9f)+_0x52eff6(0xdb)+_0x52eff6(0xad)+'ce'),this['ws']?.['close'](0x3f0,_0x52eff6(0x87)+_0x52eff6(0xe7)+_0x52eff6(0x142)+_0x52eff6(0x15d));return;}this['connectS'+_0x52eff6(0x88)]=!![];this[_0x52eff6(0xef)+_0x52eff6(0x113)+'Timer']&&(clearTimeout(this['connectC'+'hallenge'+_0x52eff6(0xa9)]),this[_0x52eff6(0xef)+'hallenge'+_0x52eff6(0xa9)]=null);if(!this['deviceId'+_0x52eff6(0x145)])try{this['deviceId'+_0x52eff6(0x145)]=loadOrCreateDeviceIdentity(_0x5db53b[_0x52eff6(0x155)+'Path']);}catch(_0xefe5c6){this[_0x52eff6(0xf6)+_0x52eff6(0x153)](_0xefe5c6 instanceof Error?_0xefe5c6[_0x52eff6(0xcc)]:_0x52eff6(0xae)+_0x52eff6(0x111)+_0x52eff6(0x10b)+_0x52eff6(0xf3)),this['ws']?.[_0x52eff6(0xce)](0x3f0,_0x52eff6(0x151)+_0x52eff6(0xe8)+_0x52eff6(0x130)+_0x52eff6(0x14f));return;}const _0x4632b7=_0x52eff6(0xb7),_0x6443a8=[_0x52eff6(0xb7)+_0x52eff6(0xbf),_0x52eff6(0xb7)+_0x52eff6(0xb3),_0x52eff6(0xb7)+'.admin','operator'+_0x52eff6(0x12a)+'ls',_0x52eff6(0xb7)+_0x52eff6(0xa0)],_0x9f12f8=_0x5db53b['token'][_0x52eff6(0xf7)](),_0x5b7bdd=Date['now'](),_0x1aed65=buildDeviceAuthPayloadV3({'deviceId':this[_0x52eff6(0xd7)+'entity'][_0x52eff6(0xd7)],'clientId':_0x5db53b[_0x52eff6(0xaa)],'clientMode':_0x5db53b['clientMo'+'de'],'role':_0x4632b7,'scopes':_0x6443a8,'signedAtMs':_0x5b7bdd,'token':_0x9f12f8||null,'nonce':_0x1e500c,'platform':process[_0x52eff6(0x12f)],'deviceFamily':_0x5db53b[_0x52eff6(0x8f)+_0x52eff6(0x89)+'ly']}),_0x53a0b1={'minProtocol':0x4,'maxProtocol':0x4,'client':{'id':_0x5db53b[_0x52eff6(0xaa)],'displayName':_0x5db53b[_0x52eff6(0x14a)+_0x52eff6(0xe9)+'e'],'version':_0x5db53b[_0x52eff6(0xd9)+_0x52eff6(0x120)],'platform':process[_0x52eff6(0x12f)],'deviceFamily':_0x5db53b[_0x52eff6(0x8f)+_0x52eff6(0x89)+'ly'],'mode':_0x5db53b[_0x52eff6(0x9a)+'de']},'caps':[],'role':_0x4632b7,'scopes':_0x6443a8,'auth':_0x9f12f8?{'token':_0x9f12f8}:undefined,'device':{'id':this[_0x52eff6(0xd7)+_0x52eff6(0x145)][_0x52eff6(0xd7)],'publicKey':publicKeyRawBase64UrlFromPem(this['deviceId'+_0x52eff6(0x145)]['publicKe'+_0x52eff6(0x10e)]),'signature':signDevicePayload(this[_0x52eff6(0xd7)+_0x52eff6(0x145)]['privateK'+_0x52eff6(0x157)],_0x1aed65),'signedAt':_0x5b7bdd,'nonce':_0x1e500c},'locale':Intl[_0x52eff6(0xd6)+_0x52eff6(0x12d)]()['resolved'+'Options']()[_0x52eff6(0x128)],'userAgent':_0x52eff6(0xdd)+_0x52eff6(0xde)+_0x5db53b['clientVe'+_0x52eff6(0x120)]};try{await this[_0x52eff6(0x15f)]('connect',_0x53a0b1,{'timeoutMs':0x2710,'skipReadyCheck':!![]}),this['connecte'+'d']=!![],this['reconnec'+_0x52eff6(0x125)+'Ms']=INITIAL_RECONNECT_BACKOFF_MS,this[_0x52eff6(0xb9)]?.[_0x52eff6(0xee)+_0x52eff6(0x129)]?.('ws_conne'+'cted',{'attempt':this['connectA'+'ttempt'],'phaseElapsedMs':this['connectA'+_0x52eff6(0x121)+'artedAt']?Date[_0x52eff6(0xc9)]()-this[_0x52eff6(0x13c)+'ttemptSt'+_0x52eff6(0x115)]:0x0}),this['resolveR'+'eadyWait'+'ers'](),this[_0x52eff6(0xb9)]?.[_0x52eff6(0xa3)+_0x52eff6(0xd0)]?.();}catch(_0x16aff8){this[_0x52eff6(0xf6)+_0x52eff6(0x153)](_0x16aff8 instanceof Error?_0x16aff8[_0x52eff6(0xcc)]:_0x52eff6(0x12b)+_0x52eff6(0x90)+'ct\x20faile'+'d'),this['ws']?.['close'](0x3f0,_0x52eff6(0x87)+_0x52eff6(0xbb));}}[_0x33d9b6(0xbe)+_0x33d9b6(0xb8)](_0x5c0dc1){const _0x23f0a0=_0x33d9b6;let _0x437ec9;try{_0x437ec9=JSON['parse'](_0x5c0dc1);}catch{return;}if(!isRecord(_0x437ec9)||typeof _0x437ec9['type']!==_0x23f0a0(0xac))return;if(_0x437ec9[_0x23f0a0(0x102)]===_0x23f0a0(0xd1)){const _0x5cb2ac=typeof _0x437ec9['event']===_0x23f0a0(0xac)?_0x437ec9[_0x23f0a0(0xd1)]:'';if(!_0x5cb2ac)return;const _0x3b7bc2=isRecord(_0x437ec9['payload'])?_0x437ec9[_0x23f0a0(0xa4)]:{};if(_0x5cb2ac===_0x23f0a0(0x147)+_0x23f0a0(0xe7)+'e'){const _0x432622=typeof _0x3b7bc2[_0x23f0a0(0xed)]===_0x23f0a0(0xac)?_0x3b7bc2[_0x23f0a0(0xed)][_0x23f0a0(0xf7)]():'';if(!_0x432622){this[_0x23f0a0(0xf6)+_0x23f0a0(0x153)](_0x23f0a0(0x12b)+_0x23f0a0(0x9f)+_0x23f0a0(0xdb)+'sing\x20non'+'ce'),this['ws']?.['close'](0x3f0,_0x23f0a0(0x87)+_0x23f0a0(0xe7)+_0x23f0a0(0x142)+'g\x20nonce');return;}this[_0x23f0a0(0x164)+'once']=_0x432622,void this[_0x23f0a0(0x8d)+_0x23f0a0(0x91)]();return;}if(_0x5cb2ac===_0x23f0a0(0x8e))this[_0x23f0a0(0xb9)]?.[_0x23f0a0(0xc4)+_0x23f0a0(0x88)]?.(_0x3b7bc2);if(_0x5cb2ac==='agent')this[_0x23f0a0(0xb9)]?.['onAgentE'+'vent']?.(_0x3b7bc2);if(_0x5cb2ac===_0x23f0a0(0x158)+_0x23f0a0(0x11a))this[_0x23f0a0(0xb9)]?.['onSessio'+'nEvent']?.(_0x3b7bc2);if(_0x5cb2ac==='session.'+_0x23f0a0(0xcc))this['config']?.[_0x23f0a0(0xd8)+_0x23f0a0(0x13a)+_0x23f0a0(0x104)]?.(_0x3b7bc2);return;}if(_0x437ec9['type']!=='res')return;const _0x3d848f=typeof _0x437ec9['id']===_0x23f0a0(0xac)?_0x437ec9['id']:'';if(!_0x3d848f)return;const _0x5e84f8=this[_0x23f0a0(0x162)][_0x23f0a0(0xe2)](_0x3d848f);if(!_0x5e84f8)return;const _0x35c95d=isRecord(_0x437ec9[_0x23f0a0(0xa4)])?_0x437ec9['payload']:{},_0x3fd3a5=typeof _0x35c95d[_0x23f0a0(0x112)]===_0x23f0a0(0xac)?_0x35c95d[_0x23f0a0(0x112)]:'';if(_0x5e84f8[_0x23f0a0(0x11f)+_0x23f0a0(0x10d)]&&_0x3fd3a5===_0x23f0a0(0xca))return;this[_0x23f0a0(0x162)][_0x23f0a0(0xa5)](_0x3d848f);_0x5e84f8[_0x23f0a0(0xf1)]&&(clearTimeout(_0x5e84f8[_0x23f0a0(0xf1)]),_0x5e84f8[_0x23f0a0(0xf1)]=null);if(_0x437ec9['ok']===!![]){_0x5e84f8[_0x23f0a0(0x140)](_0x437ec9[_0x23f0a0(0xa4)]);return;}const _0x3726b9=isRecord(_0x437ec9[_0x23f0a0(0x161)])?_0x437ec9[_0x23f0a0(0x161)]:{},_0x426ba=typeof _0x3726b9[_0x23f0a0(0xcc)]===_0x23f0a0(0xac)?_0x3726b9['message']:_0x23f0a0(0x12b)+_0x23f0a0(0xa7)+'failed:\x20'+_0x5e84f8[_0x23f0a0(0xe5)];_0x5e84f8[_0x23f0a0(0x144)](new Error(_0x426ba));}[_0x33d9b6(0x135)+'lReady'](_0x9182ad=0x2ee0){const _0x4607c4=_0x33d9b6;if(this[_0x4607c4(0x137)+'d'])return Promise[_0x4607c4(0x140)]();if(!this[_0x4607c4(0xb9)])return Promise[_0x4607c4(0x144)](new Error('gateway\x20'+_0x4607c4(0x119)+_0x4607c4(0xf0)+_0x4607c4(0x110)));if(!this['ws'])this[_0x4607c4(0xb0)]();return new Promise((_0x29042e,_0x25e26c)=>{const _0x522e59=_0x4607c4,_0xfba344=setTimeout(()=>{const _0x2eed1d=_0xeb7d;this[_0x2eed1d(0x150)+_0x2eed1d(0xe6)]=this[_0x2eed1d(0x150)+_0x2eed1d(0xe6)][_0x2eed1d(0x9d)](_0x27ffe0=>_0x27ffe0[_0x2eed1d(0x140)]!==_0x29042e),_0x25e26c(new Error(_0x2eed1d(0x12b)+_0x2eed1d(0x90)+_0x2eed1d(0x122)+'med\x20out'));},_0x9182ad);this[_0x522e59(0x150)+_0x522e59(0xe6)]['push']({'resolve':_0x29042e,'reject':_0x25e26c,'timeout':_0xfba344});});}[_0x33d9b6(0x117)+'eadyWait'+_0x33d9b6(0xc6)](){const _0x3f47d1=_0x33d9b6,_0x4c9590=[...this[_0x3f47d1(0x150)+_0x3f47d1(0xe6)]];this[_0x3f47d1(0x150)+_0x3f47d1(0xe6)]=[];for(const _0x5cb55c of _0x4c9590){clearTimeout(_0x5cb55c['timeout']),_0x5cb55c['resolve']();}}[_0x33d9b6(0x124)+_0x33d9b6(0x103)+'rs'](_0x48c8ce){const _0x44833a=_0x33d9b6,_0x3dd9cf=[...this[_0x44833a(0x150)+'ters']];this[_0x44833a(0x150)+_0x44833a(0xe6)]=[];for(const _0x45d311 of _0x3dd9cf){clearTimeout(_0x45d311[_0x44833a(0xf1)]),_0x45d311[_0x44833a(0x144)](_0x48c8ce);}}['rejectPe'+_0x33d9b6(0xb4)](_0x188b30){const _0x2f3cf1=_0x33d9b6;for(const [_0x3ec1df,_0x2ba7ba]of this['pending'][_0x2f3cf1(0xd5)]()){this[_0x2f3cf1(0x162)][_0x2f3cf1(0xa5)](_0x3ec1df),_0x2ba7ba[_0x2f3cf1(0xf1)]&&(clearTimeout(_0x2ba7ba['timeout']),_0x2ba7ba[_0x2f3cf1(0xf1)]=null),_0x2ba7ba[_0x2f3cf1(0x144)](_0x188b30);}}['handleDi'+_0x33d9b6(0x153)](_0x45f0c1){const _0x5a76eb=_0x33d9b6,_0x3b1b7d=this[_0x5a76eb(0x137)+'d'],_0xcd7476=this['connectA'+'ttempt'],_0x10fdca=this['connectA'+_0x5a76eb(0x121)+_0x5a76eb(0x115)]?Date[_0x5a76eb(0xc9)]()-this[_0x5a76eb(0x13c)+_0x5a76eb(0x121)+_0x5a76eb(0x115)]:0x0;this['ws']&&(this['ws']['removeAl'+_0x5a76eb(0x163)+'rs'](),this['ws']=null);this['connecte'+'d']=![],this[_0x5a76eb(0x164)+_0x5a76eb(0x100)]=null,this[_0x5a76eb(0xfe)+_0x5a76eb(0x88)]=![],this[_0x5a76eb(0xaf)+_0x5a76eb(0xb4)](new Error(_0x45f0c1||'gateway\x20'+_0x5a76eb(0x11e)+_0x5a76eb(0x107))),this[_0x5a76eb(0x124)+_0x5a76eb(0x103)+'rs'](new Error(_0x45f0c1||_0x5a76eb(0x12b)+_0x5a76eb(0x11e)+_0x5a76eb(0x107))),this['clearTim'+_0x5a76eb(0xc6)]();!_0x3b1b7d&&this[_0x5a76eb(0xb9)]?.[_0x5a76eb(0xee)+_0x5a76eb(0x129)]?.(_0x5a76eb(0x109)+_0x5a76eb(0xf2)+'pt_faile'+'d',{'attempt':_0xcd7476,'phaseElapsedMs':_0x10fdca,'reason':_0x45f0c1?_0x45f0c1[_0x5a76eb(0xf8)](0x0,0xa0):_0x5a76eb(0xea)+_0x5a76eb(0x14c)+_0x5a76eb(0x15e)+'dy'});if(_0x45f0c1)this[_0x5a76eb(0xb9)]?.[_0x5a76eb(0x131)+_0x5a76eb(0xe0)]?.(_0x45f0c1);if(!this[_0x5a76eb(0xc5)+'connect']||!this[_0x5a76eb(0xb9)])return;const _0x59c7ca=isGatewayStartingRetryReason(_0x45f0c1),_0x4c047b=_0x59c7ca?GATEWAY_STARTING_RETRY_DELAY_MS:this['reconnec'+_0x5a76eb(0x125)+'Ms'];!_0x59c7ca&&(this[_0x5a76eb(0x11d)+'tBackoff'+'Ms']=Math[_0x5a76eb(0xb2)](this[_0x5a76eb(0x11d)+_0x5a76eb(0x125)+'Ms']*0x2,MAX_RECONNECT_BACKOFF_MS)),this[_0x5a76eb(0xb9)]['onStartu'+_0x5a76eb(0x129)]?.(_0x59c7ca?_0x5a76eb(0xa1)+'ing_retr'+_0x5a76eb(0xda)+_0x5a76eb(0x101):'ws_conne'+'ct_retry'+_0x5a76eb(0x12c)+'ed',{'attempt':_0xcd7476,'delayMs':_0x4c047b,'nextDelayMs':this[_0x5a76eb(0x11d)+'tBackoff'+'Ms'],'reason':_0x45f0c1?_0x45f0c1['slice'](0x0,0xa0):_0x5a76eb(0xea)+_0x5a76eb(0x14c)+_0x5a76eb(0x15e)+'dy'}),this[_0x5a76eb(0x11d)+_0x5a76eb(0xeb)]=setTimeout(()=>{const _0x97b6db=_0x5a76eb;this[_0x97b6db(0x11d)+'tTimer']=null,this['connect']();},_0x4c047b);}[_0x33d9b6(0x11c)+'onnectTi'+_0x33d9b6(0xf9)](){const _0x2f19bf=_0x33d9b6;this[_0x2f19bf(0x11d)+'tTimer']&&(clearTimeout(this[_0x2f19bf(0x11d)+'tTimer']),this['reconnec'+_0x2f19bf(0xeb)]=null);}[_0x33d9b6(0xe1)+_0x33d9b6(0xc6)](){const _0x56281d=_0x33d9b6;this[_0x56281d(0x11c)+'onnectTi'+_0x56281d(0xf9)](),this[_0x56281d(0xef)+_0x56281d(0x113)+_0x56281d(0xa9)]&&(clearTimeout(this[_0x56281d(0xef)+_0x56281d(0x113)+_0x56281d(0xa9)]),this['connectC'+_0x56281d(0x113)+'Timer']=null);}}
1
+ const _0x4f67e7=_0x315e;(function(_0x12afd6,_0x3a1e48){const _0x3a0343=_0x315e,_0x1bcf99=_0x12afd6();while(!![]){try{const _0x241e0a=parseInt(_0x3a0343(0x1b5))/0x1+-parseInt(_0x3a0343(0x1d6))/0x2+parseInt(_0x3a0343(0x1c1))/0x3*(-parseInt(_0x3a0343(0x170))/0x4)+parseInt(_0x3a0343(0x1ba))/0x5*(parseInt(_0x3a0343(0x23e))/0x6)+-parseInt(_0x3a0343(0x173))/0x7*(-parseInt(_0x3a0343(0x1b8))/0x8)+parseInt(_0x3a0343(0x1a9))/0x9*(-parseInt(_0x3a0343(0x1bc))/0xa)+parseInt(_0x3a0343(0x19d))/0xb;if(_0x241e0a===_0x3a1e48)break;else _0x1bcf99['push'](_0x1bcf99['shift']());}catch(_0x51b4d6){_0x1bcf99['push'](_0x1bcf99['shift']());}}}(_0x41aa,0x4941e));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 _0x1dbea6 from'ws';const ED25519_SPKI_PREFIX=Buffer[_0x4f67e7(0x187)]('302a3005'+_0x4f67e7(0x1a0)+_0x4f67e7(0x1a6),_0x4f67e7(0x236)),BASE64_PADDING_REGEX=/=+$/g,UPPERCASE_ASCII_REGEX=/[A-Z]/g,INITIAL_RECONNECT_BACKOFF_MS=0x320,MAX_RECONNECT_BACKOFF_MS=0x3a98,GATEWAY_STARTING_RETRY_DELAY_MS=0x12c;function isRecord(_0x35cfba){const _0x81965e=_0x4f67e7;return Boolean(_0x35cfba)&&typeof _0x35cfba==='object'&&!Array[_0x81965e(0x1ec)](_0x35cfba);}function formatUnknownError(_0x26f13b){const _0x1738f8=_0x4f67e7;if(_0x26f13b instanceof Error)return _0x26f13b[_0x1738f8(0x230)];return String(_0x26f13b??'');}function isLocalGatewayConnRefused(_0x2e73d9){const _0x5bd86f=_0x4f67e7,_0x5b4a34=formatUnknownError(_0x2e73d9);return/\bECONNREFUSED\b/i[_0x5bd86f(0x17b)](_0x5b4a34)&&/127\.0\.0\.1:\d+/[_0x5bd86f(0x17b)](_0x5b4a34);}function isGatewayStartingRetryReason(_0x4bd6d5){return/\bgateway starting;\s*retry shortly\b/i['test'](_0x4bd6d5);}function base64UrlEncode(_0x363b9c){const _0x4a1e38=_0x4f67e7;return _0x363b9c[_0x4a1e38(0x198)](_0x4a1e38(0x1d3))[_0x4a1e38(0x1d9)+'ll']('+','-')[_0x4a1e38(0x1d9)+'ll']('/','_')[_0x4a1e38(0x1f4)](BASE64_PADDING_REGEX,'');}function derivePublicKeyRaw(_0xf11c65){const _0x115d06=_0x4f67e7,_0x8e612d=createPublicKey(_0xf11c65)[_0x115d06(0x1ea)]({'type':_0x115d06(0x1ca),'format':_0x115d06(0x1f6)}),_0x4b7d59=Buffer['isBuffer'](_0x8e612d)?_0x8e612d:Buffer[_0x115d06(0x187)](_0x8e612d),_0x12c2f6=_0x4b7d59[_0x115d06(0x19e)]===ED25519_SPKI_PREFIX[_0x115d06(0x19e)]+0x20&&_0x4b7d59[_0x115d06(0x1c9)](0x0,ED25519_SPKI_PREFIX[_0x115d06(0x19e)])[_0x115d06(0x199)](ED25519_SPKI_PREFIX);return _0x12c2f6?_0x4b7d59[_0x115d06(0x1c9)](ED25519_SPKI_PREFIX[_0x115d06(0x19e)]):_0x4b7d59;}function fingerprintPublicKey(_0x320c23){const _0x2ae2ac=_0x4f67e7;return createHash(_0x2ae2ac(0x177))['update'](derivePublicKeyRaw(_0x320c23))[_0x2ae2ac(0x1e6)](_0x2ae2ac(0x236));}function publicKeyRawBase64UrlFromPem(_0x47b62a){return base64UrlEncode(derivePublicKeyRaw(_0x47b62a));}function signDevicePayload(_0x4746b4,_0x3ea2be){const _0x2177e1=_0x4f67e7,_0x5318d6=createPrivateKey(_0x4746b4);return base64UrlEncode(sign(null,Buffer['from'](_0x3ea2be,_0x2177e1(0x1aa)),_0x5318d6));}function normalizeDeviceMetadataForAuth(_0xe8f67d){const _0x224e22=_0x4f67e7,_0x32eec6=typeof _0xe8f67d===_0x224e22(0x201)?_0xe8f67d[_0x224e22(0x197)]():'';if(!_0x32eec6)return'';return _0x32eec6[_0x224e22(0x1f4)](UPPERCASE_ASCII_REGEX,_0x32e8ca=>String['fromChar'+'Code'](_0x32e8ca[_0x224e22(0x1ef)+'At'](0x0)+0x20));}function buildDeviceAuthPayloadV3(_0x1e85f7){const _0x1205e2=_0x4f67e7;return['v3',_0x1e85f7[_0x1205e2(0x1a2)],_0x1e85f7['clientId'],_0x1e85f7[_0x1205e2(0x231)+'de'],_0x1e85f7[_0x1205e2(0x21d)],_0x1e85f7[_0x1205e2(0x17a)][_0x1205e2(0x195)](','),String(_0x1e85f7[_0x1205e2(0x18d)+'Ms']),_0x1e85f7[_0x1205e2(0x237)]??'',_0x1e85f7[_0x1205e2(0x21c)],normalizeDeviceMetadataForAuth(_0x1e85f7[_0x1205e2(0x1cd)]),normalizeDeviceMetadataForAuth(_0x1e85f7[_0x1205e2(0x233)+_0x1205e2(0x243)])]['join']('|');}function _0x41aa(){const _0x475787=['connectS','request\x20','nonce','role','failed\x20t','resolve','connecte','onAgentE','pTiming','handleDi','hake\x20mis','get','e\x20missin','nected','failed:\x20','reject','operator','stop','parse','clientDi','ed25519','now','message','clientMo','t\x20connec','deviceFa','locale','eadyWait','hex','token','losed_be','onDiscon','clientId','t\x20restar','ting','slice','12Mgttcv','ttempt','tBackoff','tTimer','WS\x20error','mily','.changed','readyWai','dentity','clientDe','d\x20(','12RTiUge','delete','ateway\x20i','7BDRvap','clientVe','ttemptSt','Path','sha256','onChatEv','ers','scopes','test','nding','gateway\x20','event','pt_start','onSessio','初始化\x20gate','error','dentity\x20','clearTim','resolveR','payload','from','o\x20load\x20g','yPem','OPEN','wujie-sh','hallenge','signedAt','shouldRe','tewayRea','ent','notifyGa','ws_gatew','rejectPe','close','join','Options','trim','toString','equals','ateway\x20r','onStartu','identity','3591720DGXllN','length','clearRec','06032b65','connectN','deviceId','set','ction\x20ti','pending','70032100','waitUnti','gateway_','9hdEmIQ','utf8','ed\x20out','onConnec','config','sessions','\x20yet','t\x20stoppe','lListene','queueCon','rejectRe','t:\x20','502361jKnIHV','y_schedu','open','2474168rRtHxK','timed\x20ou','602465JSIuAp','sing\x20non','3670890kDnPLT','ters','url','Format','equest','597273DChPyp','ws_start','.admin','send','configur','Event','connect\x20','connectC','subarray','spki','nnected','ay_ready','platform','sendConn','reconnec','connect','Timer','.read','base64','sconnect','nMessage','229428UxncNn','lReady','onnectTi','replaceA','WS\x20close','eout','method','agent','terminat','WS\x20clien','WS\x20disco','WS\x20hands','ct_retry','lengeTim','artedAt','push','digest','fore_rea','ssage','min','export','mer','isArray','nectChal','chat','charCode','accepted','.approva','connectA','_schedul','replace','rsion','der','istening','.pairing','WS\x20is\x20no','ws_conne','type','timeout','challeng','DateTime','privateK','entries','string','eyPem','g\x20nonce','failed','viceFami','ct_attem','ble','readySta','entity','pem','ect','ing_retr','once','ted','e\x20timeou','t\x20config','handleMe','publicKe','request','session.','adyWaite','restart','stringif','unavaila','connect.'];_0x41aa=function(){return _0x475787;};return _0x41aa();}function writeIdentityFile(_0x20ce7b,_0x10e333,_0x39c223){const _0xe7e16c=_0x4f67e7;mkdirSync(dirname(_0x20ce7b),{'recursive':!![]}),writeFileSync(_0x20ce7b,JSON[_0xe7e16c(0x217)+'y']({'version':0x1,..._0x10e333,'createdAtMs':_0x39c223},null,0x2)+'\x0a',{'mode':0x180});try{chmodSync(_0x20ce7b,0x180);}catch{}}function _0x315e(_0x1418bc,_0x31f410){_0x1418bc=_0x1418bc-0x16d;const _0x41aa66=_0x41aa();let _0x315e6e=_0x41aa66[_0x1418bc];return _0x315e6e;}function generateDeviceIdentity(){const _0x210c1f=_0x4f67e7,{publicKey:_0x2b57d0,privateKey:_0x5a4e61}=generateKeyPairSync(_0x210c1f(0x22e)),_0x502d75=_0x2b57d0[_0x210c1f(0x1ea)]({'type':_0x210c1f(0x1ca),'format':_0x210c1f(0x20a)})[_0x210c1f(0x198)](),_0x5bb94b=_0x5a4e61[_0x210c1f(0x1ea)]({'type':'pkcs8','format':_0x210c1f(0x20a)})[_0x210c1f(0x198)]();return{'deviceId':fingerprintPublicKey(_0x502d75),'publicKeyPem':_0x502d75,'privateKeyPem':_0x5bb94b};}function loadOrCreateDeviceIdentity(_0x3843a7){const _0x5e8005=_0x4f67e7;if(existsSync(_0x3843a7))try{const _0x2a1ff3=JSON[_0x5e8005(0x22c)](readFileSync(_0x3843a7,_0x5e8005(0x1aa))),_0x59a58c=typeof _0x2a1ff3?.[_0x5e8005(0x212)+_0x5e8005(0x189)]===_0x5e8005(0x201)?_0x2a1ff3[_0x5e8005(0x212)+_0x5e8005(0x189)]:'',_0x11dd12=typeof _0x2a1ff3?.['privateK'+_0x5e8005(0x202)]===_0x5e8005(0x201)?_0x2a1ff3[_0x5e8005(0x1ff)+_0x5e8005(0x202)]:'';if(_0x59a58c&&_0x11dd12){const _0x5b2c37={'deviceId':fingerprintPublicKey(_0x59a58c),'publicKeyPem':_0x59a58c,'privateKeyPem':_0x11dd12};return _0x2a1ff3?.[_0x5e8005(0x1a2)]!==_0x5b2c37[_0x5e8005(0x1a2)]&&writeIdentityFile(_0x3843a7,_0x5b2c37,Date['now']()),_0x5b2c37;}}catch{}const _0x1423a8=generateDeviceIdentity();return writeIdentityFile(_0x3843a7,_0x1423a8,Date['now']()),_0x1423a8;}export class ClawGatewayWsClient{['ws']=null;[_0x4f67e7(0x1ad)]=null;['pending']=new Map();[_0x4f67e7(0x245)+_0x4f67e7(0x1bd)]=[];['shouldRe'+'connect']=![];['reconnec'+_0x4f67e7(0x241)]=null;[_0x4f67e7(0x1c8)+_0x4f67e7(0x18c)+_0x4f67e7(0x1d1)]=null;[_0x4f67e7(0x1a1)+_0x4f67e7(0x20d)]=null;[_0x4f67e7(0x21a)+_0x4f67e7(0x190)]=![];['connecte'+'d']=![];[_0x4f67e7(0x1cf)+_0x4f67e7(0x240)+'Ms']=INITIAL_RECONNECT_BACKOFF_MS;['deviceId'+'entity']=null;['connectA'+_0x4f67e7(0x23f)]=0x0;['connectA'+_0x4f67e7(0x175)+_0x4f67e7(0x1e4)]=0x0;[_0x4f67e7(0x1c5)+'e'](_0x21198f){const _0x475f5b=_0x4f67e7;if(!_0x21198f){this[_0x475f5b(0x22b)]();return;}const _0x3734ae=this['config'];this[_0x475f5b(0x1ad)]=_0x21198f,this['shouldRe'+_0x475f5b(0x1d0)]=!![];try{this['deviceId'+_0x475f5b(0x209)]=loadOrCreateDeviceIdentity(_0x21198f[_0x475f5b(0x19c)+_0x475f5b(0x176)]);}catch(_0x562069){const _0x1b159e=_0x562069 instanceof Error?_0x562069['message']:_0x475f5b(0x181)+'way\x20设备身份'+'失败';this['stop'](),_0x21198f['onDiscon'+_0x475f5b(0x227)](_0x1b159e);return;}const _0x718a53=!_0x3734ae||_0x3734ae[_0x475f5b(0x1be)]!==_0x21198f[_0x475f5b(0x1be)]||_0x3734ae[_0x475f5b(0x237)]!==_0x21198f['token']||_0x3734ae[_0x475f5b(0x23a)]!==_0x21198f[_0x475f5b(0x23a)]||_0x3734ae[_0x475f5b(0x231)+'de']!==_0x21198f[_0x475f5b(0x231)+'de']||_0x3734ae[_0x475f5b(0x174)+'rsion']!==_0x21198f[_0x475f5b(0x174)+_0x475f5b(0x1f5)]||_0x3734ae['identity'+_0x475f5b(0x176)]!==_0x21198f[_0x475f5b(0x19c)+_0x475f5b(0x176)];if(_0x718a53){this[_0x475f5b(0x216)]();return;}if(!this['ws'])this[_0x475f5b(0x1d0)]();}[_0x4f67e7(0x22b)](){const _0x23cef9=_0x4f67e7;this['shouldRe'+'connect']=![],this[_0x23cef9(0x220)+'d']=![],this['connectN'+_0x23cef9(0x20d)]=null,this['connectS'+_0x23cef9(0x190)]=![],this['clearTim'+_0x23cef9(0x179)](),this[_0x23cef9(0x193)+_0x23cef9(0x17c)](new Error(_0x23cef9(0x17d)+_0x23cef9(0x1df)+'t\x20stoppe'+'d')),this[_0x23cef9(0x1b3)+'adyWaite'+'rs'](new Error(_0x23cef9(0x17d)+_0x23cef9(0x1df)+_0x23cef9(0x1b0)+'d'));if(this['ws']){try{this['ws'][_0x23cef9(0x194)]();}catch{}this['ws']=null;}this[_0x23cef9(0x1a2)+'entity']=null,this[_0x23cef9(0x1ad)]=null;}async[_0x4f67e7(0x213)](_0x723f96,_0x320530={},_0x55ea0e={}){const _0x5ef1f2=_0x4f67e7;if(!_0x55ea0e['skipRead'+'yCheck'])await this[_0x5ef1f2(0x1a7)+_0x5ef1f2(0x1d7)]();const _0x82ea71=this['ws'];if(!_0x82ea71||_0x82ea71['readySta'+'te']!==_0x1dbea6[_0x5ef1f2(0x18a)])throw new Error(_0x5ef1f2(0x17d)+_0x5ef1f2(0x1f9)+_0x5ef1f2(0x232)+_0x5ef1f2(0x20e));const _0x421773=randomUUID(),_0x4bfaa7=_0x55ea0e['timeoutM'+'s']??0x7530;return await new Promise((_0x4ab6a8,_0x4c1b3c)=>{const _0x24ce26=_0x5ef1f2,_0x118b37=setTimeout(()=>{const _0x13779e=_0x315e;this[_0x13779e(0x1a5)][_0x13779e(0x171)](_0x421773),_0x4c1b3c(new Error('gateway\x20'+_0x13779e(0x21b)+_0x13779e(0x1b9)+_0x13779e(0x1b4)+_0x723f96));},_0x4bfaa7);this[_0x24ce26(0x1a5)][_0x24ce26(0x1a3)](_0x421773,{'method':_0x723f96,'resolve':_0x3a58b5=>{clearTimeout(_0x118b37),_0x4ab6a8(_0x3a58b5);},'reject':_0x22d79a=>{clearTimeout(_0x118b37),_0x4c1b3c(_0x22d79a);},'expectFinal':_0x55ea0e['expectFi'+'nal']===!![],'timeout':_0x118b37});try{_0x82ea71[_0x24ce26(0x1c4)](JSON['stringif'+'y']({'type':'req','id':_0x421773,'method':_0x723f96,'params':_0x320530}));}catch(_0x5253c2){this[_0x24ce26(0x1a5)][_0x24ce26(0x171)](_0x421773),clearTimeout(_0x118b37),_0x4c1b3c(_0x5253c2 instanceof Error?_0x5253c2:new Error(_0x24ce26(0x21e)+'o\x20send\x20g'+_0x24ce26(0x19a)+_0x24ce26(0x1c0)));}});}[_0x4f67e7(0x216)](){const _0x205e89=_0x4f67e7;this['connecte'+'d']=![],this[_0x205e89(0x1a1)+_0x205e89(0x20d)]=null,this['connectS'+_0x205e89(0x190)]=![],this[_0x205e89(0x184)+_0x205e89(0x179)](),this['rejectPe'+_0x205e89(0x17c)](new Error('gateway\x20'+_0x205e89(0x1df)+_0x205e89(0x23b)+'ting')),this[_0x205e89(0x1b3)+_0x205e89(0x215)+'rs'](new Error('gateway\x20'+_0x205e89(0x1df)+_0x205e89(0x23b)+_0x205e89(0x23c)));if(this['ws']){try{this['ws'][_0x205e89(0x1de)+'e']();}catch{}this['ws']=null;}this['connect']();}[_0x4f67e7(0x191)+_0x4f67e7(0x18f)+'dy'](){const _0x5d3683=_0x4f67e7;if(this[_0x5d3683(0x220)+'d']||!this[_0x5d3683(0x18e)+_0x5d3683(0x1d0)]||!this['config'])return;if(!this[_0x5d3683(0x1cf)+_0x5d3683(0x241)])return;this['clearRec'+_0x5d3683(0x1d8)+_0x5d3683(0x1eb)](),this['config'][_0x5d3683(0x19b)+'pTiming']?.(_0x5d3683(0x192)+_0x5d3683(0x1cc)+'_retry_n'+'ow',{'attempt':this['connectA'+_0x5d3683(0x23f)],'reason':_0x5d3683(0x1a8)+'ready'}),this[_0x5d3683(0x1d0)]();}[_0x4f67e7(0x1d0)](){const _0x187013=_0x4f67e7;if(!this[_0x187013(0x1ad)]||this['ws'])return;this[_0x187013(0x1f2)+_0x187013(0x23f)]+=0x1,this[_0x187013(0x1f2)+_0x187013(0x175)+_0x187013(0x1e4)]=Date[_0x187013(0x22f)](),this[_0x187013(0x1ad)][_0x187013(0x19b)+_0x187013(0x222)]?.(_0x187013(0x1fa)+_0x187013(0x206)+_0x187013(0x17f),{'attempt':this[_0x187013(0x1f2)+_0x187013(0x23f)]});const _0x970344=new _0x1dbea6(this[_0x187013(0x1ad)][_0x187013(0x1be)]);this['ws']=_0x970344,_0x970344['on'](_0x187013(0x1b7),()=>this[_0x187013(0x1b2)+_0x187013(0x1ed)+_0x187013(0x1e3)+_0x187013(0x1db)]()),_0x970344['on']('message',_0x560822=>this['handleMe'+_0x187013(0x1e8)](_0x560822['toString']())),_0x970344['on']('close',(_0x105194,_0x4d689f)=>{const _0x4de3c4=_0x187013;if(this['connecte'+'d']){const _0x3b0847=_0x4d689f[_0x4de3c4(0x198)]()||'code='+_0x105194;this['handleDi'+_0x4de3c4(0x1d4)](_0x4de3c4(0x17d)+_0x4de3c4(0x1da)+_0x4de3c4(0x16f)+_0x3b0847+')');}else this['handleDi'+'sconnect']('');}),_0x970344['on'](_0x187013(0x182),_0x50374e=>{const _0x3fcc01=_0x187013;if(isLocalGatewayConnRefused(_0x50374e)){this['handleDi'+'sconnect'](_0x3fcc01(0x17d)+'is\x20not\x20l'+_0x3fcc01(0x1f7)+_0x3fcc01(0x1af));return;}const _0x83fe80=formatUnknownError(_0x50374e);this[_0x3fcc01(0x223)+'sconnect'](_0x83fe80?_0x3fcc01(0x17d)+_0x3fcc01(0x242)+':\x20'+_0x83fe80:_0x3fcc01(0x17d)+_0x3fcc01(0x242));});}[_0x4f67e7(0x1b2)+_0x4f67e7(0x1ed)+_0x4f67e7(0x1e3)+'eout'](){const _0x5a0a33=_0x4f67e7;this[_0x5a0a33(0x1a1)+'once']=null,this[_0x5a0a33(0x21a)+_0x5a0a33(0x190)]=![];if(this[_0x5a0a33(0x1c8)+_0x5a0a33(0x18c)+_0x5a0a33(0x1d1)])clearTimeout(this['connectC'+_0x5a0a33(0x18c)+_0x5a0a33(0x1d1)]);this[_0x5a0a33(0x1c8)+'hallenge'+_0x5a0a33(0x1d1)]=setTimeout(()=>{const _0x16ecc3=_0x5a0a33;if(this[_0x16ecc3(0x21a)+'ent']||!this['ws']||this['ws'][_0x16ecc3(0x208)+'te']!==_0x1dbea6[_0x16ecc3(0x18a)])return;this[_0x16ecc3(0x223)+_0x16ecc3(0x1d4)](_0x16ecc3(0x17d)+_0x16ecc3(0x1e1)+'hake\x20tim'+_0x16ecc3(0x1ab)),this['ws']?.[_0x16ecc3(0x194)](0x3f0,_0x16ecc3(0x1c7)+_0x16ecc3(0x1fd)+_0x16ecc3(0x20f)+'t');},0x7d0);}async[_0x4f67e7(0x1ce)+_0x4f67e7(0x20b)](){const _0x18b4dc=_0x4f67e7,_0x467a7b=this['config'];if(!_0x467a7b||this[_0x18b4dc(0x21a)+'ent'])return;const _0x3d33f3=this[_0x18b4dc(0x1a1)+'once']?.[_0x18b4dc(0x197)]()??'';if(!_0x3d33f3){this['handleDi'+_0x18b4dc(0x1d4)](_0x18b4dc(0x17d)+_0x18b4dc(0x1e1)+'hake\x20mis'+_0x18b4dc(0x1bb)+'ce'),this['ws']?.[_0x18b4dc(0x194)](0x3f0,_0x18b4dc(0x1c7)+_0x18b4dc(0x1fd)+'e\x20missin'+'g\x20nonce');return;}this[_0x18b4dc(0x21a)+_0x18b4dc(0x190)]=!![];this[_0x18b4dc(0x1c8)+_0x18b4dc(0x18c)+_0x18b4dc(0x1d1)]&&(clearTimeout(this['connectC'+_0x18b4dc(0x18c)+_0x18b4dc(0x1d1)]),this[_0x18b4dc(0x1c8)+_0x18b4dc(0x18c)+_0x18b4dc(0x1d1)]=null);if(!this['deviceId'+_0x18b4dc(0x209)])try{this[_0x18b4dc(0x1a2)+_0x18b4dc(0x209)]=loadOrCreateDeviceIdentity(_0x467a7b['identity'+_0x18b4dc(0x176)]);}catch(_0x2f0681){this[_0x18b4dc(0x223)+_0x18b4dc(0x1d4)](_0x2f0681 instanceof Error?_0x2f0681[_0x18b4dc(0x230)]:'failed\x20t'+_0x18b4dc(0x188)+_0x18b4dc(0x172)+_0x18b4dc(0x16d)),this['ws']?.[_0x18b4dc(0x194)](0x3f0,'device\x20i'+_0x18b4dc(0x183)+_0x18b4dc(0x218)+_0x18b4dc(0x207));return;}const _0x3ad0c2='operator',_0x2245ef=[_0x18b4dc(0x22a)+_0x18b4dc(0x1d2),_0x18b4dc(0x22a)+'.write',_0x18b4dc(0x22a)+_0x18b4dc(0x1c3),_0x18b4dc(0x22a)+_0x18b4dc(0x1f1)+'ls','operator'+_0x18b4dc(0x1f8)],_0x3c6965=_0x467a7b[_0x18b4dc(0x237)][_0x18b4dc(0x197)](),_0x50f34e=Date[_0x18b4dc(0x22f)](),_0x5b50ef=buildDeviceAuthPayloadV3({'deviceId':this[_0x18b4dc(0x1a2)+_0x18b4dc(0x209)][_0x18b4dc(0x1a2)],'clientId':_0x467a7b[_0x18b4dc(0x23a)],'clientMode':_0x467a7b['clientMo'+'de'],'role':_0x3ad0c2,'scopes':_0x2245ef,'signedAtMs':_0x50f34e,'token':_0x3c6965||null,'nonce':_0x3d33f3,'platform':process[_0x18b4dc(0x1cd)],'deviceFamily':_0x467a7b[_0x18b4dc(0x16e)+'viceFami'+'ly']}),_0x3a79f3={'minProtocol':0x4,'maxProtocol':0x4,'client':{'id':_0x467a7b[_0x18b4dc(0x23a)],'displayName':_0x467a7b[_0x18b4dc(0x22d)+'splayNam'+'e'],'version':_0x467a7b['clientVe'+_0x18b4dc(0x1f5)],'platform':process[_0x18b4dc(0x1cd)],'deviceFamily':_0x467a7b[_0x18b4dc(0x16e)+_0x18b4dc(0x205)+'ly'],'mode':_0x467a7b['clientMo'+'de']},'caps':[],'role':_0x3ad0c2,'scopes':_0x2245ef,'auth':_0x3c6965?{'token':_0x3c6965}:undefined,'device':{'id':this[_0x18b4dc(0x1a2)+_0x18b4dc(0x209)][_0x18b4dc(0x1a2)],'publicKey':publicKeyRawBase64UrlFromPem(this['deviceId'+'entity']['publicKe'+_0x18b4dc(0x189)]),'signature':signDevicePayload(this[_0x18b4dc(0x1a2)+'entity'][_0x18b4dc(0x1ff)+_0x18b4dc(0x202)],_0x5b50ef),'signedAt':_0x50f34e,'nonce':_0x3d33f3},'locale':Intl[_0x18b4dc(0x1fe)+_0x18b4dc(0x1bf)]()['resolved'+_0x18b4dc(0x196)]()[_0x18b4dc(0x234)],'userAgent':_0x18b4dc(0x18b)+'ell/'+_0x467a7b[_0x18b4dc(0x174)+'rsion']};try{await this['request'](_0x18b4dc(0x1d0),_0x3a79f3,{'timeoutMs':0x2710,'skipReadyCheck':!![]}),this[_0x18b4dc(0x220)+'d']=!![],this[_0x18b4dc(0x1cf)+_0x18b4dc(0x240)+'Ms']=INITIAL_RECONNECT_BACKOFF_MS,this['config']?.['onStartu'+'pTiming']?.('ws_conne'+'cted',{'attempt':this[_0x18b4dc(0x1f2)+_0x18b4dc(0x23f)],'phaseElapsedMs':this[_0x18b4dc(0x1f2)+'ttemptSt'+_0x18b4dc(0x1e4)]?Date[_0x18b4dc(0x22f)]()-this[_0x18b4dc(0x1f2)+'ttemptSt'+_0x18b4dc(0x1e4)]:0x0}),this[_0x18b4dc(0x185)+_0x18b4dc(0x235)+'ers'](),this[_0x18b4dc(0x1ad)]?.[_0x18b4dc(0x1ac)+_0x18b4dc(0x20e)]?.();}catch(_0x4e50a3){this[_0x18b4dc(0x223)+_0x18b4dc(0x1d4)](_0x4e50a3 instanceof Error?_0x4e50a3[_0x18b4dc(0x230)]:_0x18b4dc(0x17d)+'WS\x20conne'+'ct\x20faile'+'d'),this['ws']?.['close'](0x3f0,'connect\x20'+_0x18b4dc(0x204));}}[_0x4f67e7(0x211)+_0x4f67e7(0x1e8)](_0x51b468){const _0xe2c99e=_0x4f67e7;let _0x960e16;try{_0x960e16=JSON[_0xe2c99e(0x22c)](_0x51b468);}catch{return;}if(!isRecord(_0x960e16)||typeof _0x960e16[_0xe2c99e(0x1fb)]!==_0xe2c99e(0x201))return;if(_0x960e16['type']===_0xe2c99e(0x17e)){const _0x549437=typeof _0x960e16[_0xe2c99e(0x17e)]==='string'?_0x960e16[_0xe2c99e(0x17e)]:'';if(!_0x549437)return;const _0x45c671=isRecord(_0x960e16[_0xe2c99e(0x186)])?_0x960e16[_0xe2c99e(0x186)]:{};if(_0x549437===_0xe2c99e(0x219)+'challeng'+'e'){const _0x28e30d=typeof _0x45c671[_0xe2c99e(0x21c)]===_0xe2c99e(0x201)?_0x45c671[_0xe2c99e(0x21c)]['trim']():'';if(!_0x28e30d){this[_0xe2c99e(0x223)+_0xe2c99e(0x1d4)]('gateway\x20'+_0xe2c99e(0x1e1)+_0xe2c99e(0x224)+_0xe2c99e(0x1bb)+'ce'),this['ws']?.['close'](0x3f0,_0xe2c99e(0x1c7)+_0xe2c99e(0x1fd)+_0xe2c99e(0x226)+_0xe2c99e(0x203));return;}this[_0xe2c99e(0x1a1)+_0xe2c99e(0x20d)]=_0x28e30d,void this[_0xe2c99e(0x1ce)+_0xe2c99e(0x20b)]();return;}if(_0x549437===_0xe2c99e(0x1ee))this['config']?.[_0xe2c99e(0x178)+_0xe2c99e(0x190)]?.(_0x45c671);if(_0x549437===_0xe2c99e(0x1dd))this[_0xe2c99e(0x1ad)]?.[_0xe2c99e(0x221)+'vent']?.(_0x45c671);if(_0x549437===_0xe2c99e(0x1ae)+_0xe2c99e(0x244))this[_0xe2c99e(0x1ad)]?.[_0xe2c99e(0x180)+'nEvent']?.(_0x45c671);if(_0x549437===_0xe2c99e(0x214)+_0xe2c99e(0x230))this['config']?.[_0xe2c99e(0x180)+_0xe2c99e(0x1d5)+_0xe2c99e(0x1c6)]?.(_0x45c671);return;}if(_0x960e16[_0xe2c99e(0x1fb)]!=='res')return;const _0x2d529c=typeof _0x960e16['id']==='string'?_0x960e16['id']:'';if(!_0x2d529c)return;const _0x4b6d73=this[_0xe2c99e(0x1a5)][_0xe2c99e(0x225)](_0x2d529c);if(!_0x4b6d73)return;const _0x2fab5d=isRecord(_0x960e16[_0xe2c99e(0x186)])?_0x960e16[_0xe2c99e(0x186)]:{},_0xe199f7=typeof _0x2fab5d['status']===_0xe2c99e(0x201)?_0x2fab5d['status']:'';if(_0x4b6d73['expectFi'+'nal']&&_0xe199f7===_0xe2c99e(0x1f0))return;this[_0xe2c99e(0x1a5)][_0xe2c99e(0x171)](_0x2d529c);_0x4b6d73['timeout']&&(clearTimeout(_0x4b6d73['timeout']),_0x4b6d73[_0xe2c99e(0x1fc)]=null);if(_0x960e16['ok']===!![]){_0x4b6d73[_0xe2c99e(0x21f)](_0x960e16[_0xe2c99e(0x186)]);return;}const _0x25b58a=isRecord(_0x960e16[_0xe2c99e(0x182)])?_0x960e16[_0xe2c99e(0x182)]:{},_0xf375c6=typeof _0x25b58a[_0xe2c99e(0x230)]===_0xe2c99e(0x201)?_0x25b58a[_0xe2c99e(0x230)]:'gateway\x20'+_0xe2c99e(0x21b)+_0xe2c99e(0x228)+_0x4b6d73[_0xe2c99e(0x1dc)];_0x4b6d73['reject'](new Error(_0xf375c6));}['waitUnti'+_0x4f67e7(0x1d7)](_0x410d4a=0x2ee0){const _0x369cea=_0x4f67e7;if(this[_0x369cea(0x220)+'d'])return Promise[_0x369cea(0x21f)]();if(!this[_0x369cea(0x1ad)])return Promise[_0x369cea(0x229)](new Error('gateway\x20'+_0x369cea(0x1f9)+_0x369cea(0x210)+'ured'));if(!this['ws'])this[_0x369cea(0x1d0)]();return new Promise((_0x8a1905,_0x54faa7)=>{const _0xd42b5=_0x369cea,_0x204118=setTimeout(()=>{const _0x3b002b=_0x315e;this[_0x3b002b(0x245)+_0x3b002b(0x1bd)]=this[_0x3b002b(0x245)+'ters']['filter'](_0x5e9e9f=>_0x5e9e9f[_0x3b002b(0x21f)]!==_0x8a1905),_0x54faa7(new Error('gateway\x20'+'WS\x20conne'+_0x3b002b(0x1a4)+'med\x20out'));},_0x410d4a);this[_0xd42b5(0x245)+'ters'][_0xd42b5(0x1e5)]({'resolve':_0x8a1905,'reject':_0x54faa7,'timeout':_0x204118});});}[_0x4f67e7(0x185)+_0x4f67e7(0x235)+_0x4f67e7(0x179)](){const _0x42e4c0=_0x4f67e7,_0x4a5de5=[...this[_0x42e4c0(0x245)+_0x42e4c0(0x1bd)]];this[_0x42e4c0(0x245)+_0x42e4c0(0x1bd)]=[];for(const _0x2d8317 of _0x4a5de5){clearTimeout(_0x2d8317['timeout']),_0x2d8317[_0x42e4c0(0x21f)]();}}[_0x4f67e7(0x1b3)+'adyWaite'+'rs'](_0x2d3410){const _0x1f7e86=_0x4f67e7,_0x24bd33=[...this[_0x1f7e86(0x245)+_0x1f7e86(0x1bd)]];this[_0x1f7e86(0x245)+_0x1f7e86(0x1bd)]=[];for(const _0xbd9883 of _0x24bd33){clearTimeout(_0xbd9883[_0x1f7e86(0x1fc)]),_0xbd9883[_0x1f7e86(0x229)](_0x2d3410);}}['rejectPe'+_0x4f67e7(0x17c)](_0x2de00a){const _0x3b17c2=_0x4f67e7;for(const [_0x2ac20b,_0x5765fb]of this[_0x3b17c2(0x1a5)][_0x3b17c2(0x200)]()){this[_0x3b17c2(0x1a5)][_0x3b17c2(0x171)](_0x2ac20b),_0x5765fb[_0x3b17c2(0x1fc)]&&(clearTimeout(_0x5765fb['timeout']),_0x5765fb['timeout']=null),_0x5765fb[_0x3b17c2(0x229)](_0x2de00a);}}[_0x4f67e7(0x223)+_0x4f67e7(0x1d4)](_0x1681f0){const _0x8a84e1=_0x4f67e7,_0x2ffb4e=this[_0x8a84e1(0x220)+'d'],_0x3c2367=this['connectA'+_0x8a84e1(0x23f)],_0x36e383=this[_0x8a84e1(0x1f2)+_0x8a84e1(0x175)+_0x8a84e1(0x1e4)]?Date['now']()-this['connectA'+'ttemptSt'+_0x8a84e1(0x1e4)]:0x0;this['ws']&&(this['ws']['removeAl'+_0x8a84e1(0x1b1)+'rs'](),this['ws']=null);this[_0x8a84e1(0x220)+'d']=![],this[_0x8a84e1(0x1a1)+_0x8a84e1(0x20d)]=null,this[_0x8a84e1(0x21a)+'ent']=![],this[_0x8a84e1(0x193)+'nding'](new Error(_0x1681f0||_0x8a84e1(0x17d)+_0x8a84e1(0x1e0)+_0x8a84e1(0x1cb))),this[_0x8a84e1(0x1b3)+'adyWaite'+'rs'](new Error(_0x1681f0||'gateway\x20'+_0x8a84e1(0x1e0)+_0x8a84e1(0x1cb))),this['clearTim'+'ers']();!_0x2ffb4e&&this[_0x8a84e1(0x1ad)]?.[_0x8a84e1(0x19b)+_0x8a84e1(0x222)]?.('ws_conne'+'ct_attem'+'pt_faile'+'d',{'attempt':_0x3c2367,'phaseElapsedMs':_0x36e383,'reason':_0x1681f0?_0x1681f0[_0x8a84e1(0x23d)](0x0,0xa0):'socket_c'+_0x8a84e1(0x238)+_0x8a84e1(0x1e7)+'dy'});if(_0x1681f0)this[_0x8a84e1(0x1ad)]?.[_0x8a84e1(0x239)+_0x8a84e1(0x227)]?.(_0x1681f0);if(!this[_0x8a84e1(0x18e)+_0x8a84e1(0x1d0)]||!this[_0x8a84e1(0x1ad)])return;const _0x3afebb=isGatewayStartingRetryReason(_0x1681f0),_0x40b44e=_0x3afebb?GATEWAY_STARTING_RETRY_DELAY_MS:this[_0x8a84e1(0x1cf)+_0x8a84e1(0x240)+'Ms'];!_0x3afebb&&(this[_0x8a84e1(0x1cf)+'tBackoff'+'Ms']=Math[_0x8a84e1(0x1e9)](this['reconnec'+'tBackoff'+'Ms']*0x2,MAX_RECONNECT_BACKOFF_MS)),this['config'][_0x8a84e1(0x19b)+'pTiming']?.(_0x3afebb?_0x8a84e1(0x1c2)+_0x8a84e1(0x20c)+_0x8a84e1(0x1b6)+'led':_0x8a84e1(0x1fa)+_0x8a84e1(0x1e2)+_0x8a84e1(0x1f3)+'ed',{'attempt':_0x3c2367,'delayMs':_0x40b44e,'nextDelayMs':this[_0x8a84e1(0x1cf)+_0x8a84e1(0x240)+'Ms'],'reason':_0x1681f0?_0x1681f0[_0x8a84e1(0x23d)](0x0,0xa0):'socket_c'+_0x8a84e1(0x238)+_0x8a84e1(0x1e7)+'dy'}),this['reconnec'+'tTimer']=setTimeout(()=>{const _0x26981e=_0x8a84e1;this['reconnec'+_0x26981e(0x241)]=null,this[_0x26981e(0x1d0)]();},_0x40b44e);}['clearRec'+_0x4f67e7(0x1d8)+_0x4f67e7(0x1eb)](){const _0x390c38=_0x4f67e7;this[_0x390c38(0x1cf)+_0x390c38(0x241)]&&(clearTimeout(this[_0x390c38(0x1cf)+_0x390c38(0x241)]),this[_0x390c38(0x1cf)+_0x390c38(0x241)]=null);}['clearTim'+_0x4f67e7(0x179)](){const _0x207765=_0x4f67e7;this[_0x207765(0x19f)+'onnectTi'+'mer'](),this[_0x207765(0x1c8)+_0x207765(0x18c)+_0x207765(0x1d1)]&&(clearTimeout(this['connectC'+_0x207765(0x18c)+_0x207765(0x1d1)]),this['connectC'+_0x207765(0x18c)+_0x207765(0x1d1)]=null);}}