@whalent/agent 0.3.128 → 0.3.129

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- 'use strict';const a0_0x53174a=a0_0x41ec;(function(_0x3fdff0,_0x2b5a29){const _0x51f7e0=a0_0x41ec,_0x25639a=_0x3fdff0();while(!![]){try{const _0x29b59f=-parseInt(_0x51f7e0(0x185))/0x1+parseInt(_0x51f7e0(0x160))/0x2+parseInt(_0x51f7e0(0xe2))/0x3+-parseInt(_0x51f7e0(0x115))/0x4*(-parseInt(_0x51f7e0(0xbf))/0x5)+parseInt(_0x51f7e0(0x16a))/0x6+parseInt(_0x51f7e0(0x171))/0x7+-parseInt(_0x51f7e0(0xb8))/0x8;if(_0x29b59f===_0x2b5a29)break;else _0x25639a['push'](_0x25639a['shift']());}catch(_0xb1b8e2){_0x25639a['push'](_0x25639a['shift']());}}}(a0_0xacee,0x21af6));var __create=Object[a0_0x53174a(0x1c2)],__defProp=Object['defineProperty'],__getOwnPropDesc=Object['getOwnPropertyDescri'+'ptor'],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object[a0_0x53174a(0xc3)][a0_0x53174a(0xd0)],__copyProps=(_0xa60011,_0x4f3458,_0x3d5a40,_0xdd6b2)=>{const _0x53ebc0=a0_0x53174a;if(_0x4f3458&&typeof _0x4f3458===_0x53ebc0(0xdb)||typeof _0x4f3458==='function'){for(let _0x16ec0b of __getOwnPropNames(_0x4f3458))if(!__hasOwnProp['call'](_0xa60011,_0x16ec0b)&&_0x16ec0b!==_0x3d5a40)__defProp(_0xa60011,_0x16ec0b,{'get':()=>_0x4f3458[_0x16ec0b],'enumerable':!(_0xdd6b2=__getOwnPropDesc(_0x4f3458,_0x16ec0b))||_0xdd6b2['enumerable']});}return _0xa60011;},__toESM=(_0x178234,_0x3ff662,_0x57ebf8)=>(_0x57ebf8=_0x178234!=null?__create(__getProtoOf(_0x178234)):{},__copyProps(_0x3ff662||!_0x178234||!_0x178234[a0_0x53174a(0x11c)]?__defProp(_0x57ebf8,'default',{'value':_0x178234,'enumerable':!![]}):_0x57ebf8,_0x178234)),import_child_process3=require('child_process'),fs3=__toESM(require('fs'),0x1),import_module=require(a0_0x53174a(0x1b0)),path3=__toESM(require(a0_0x53174a(0x1b5)),0x1),import_child_process2=require('child_process'),import_fs=require('fs'),import_path=require('path'),import_child_process=require(a0_0x53174a(0xdd)),DEFAULT_NPM_REGISTRY=a0_0x53174a(0x17c)+a0_0x53174a(0x19f),CHINA_NPM_REGISTRY=a0_0x53174a(0x17c)+'mirror.com',REGISTRY_PROBE_TIMEOUT_MS=0xbb8,REGISTRY_CACHE_TTL_MS=0xa*0x3c*0x3e8,selectedRegistryCache=null;function preferredNpmRegistry(){const _0x1c1e95=a0_0x53174a,_0x51a609=explicitNpmRegistry();if(_0x51a609)return _0x51a609;if(selectedRegistryCache&&Date[_0x1c1e95(0x1bb)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x1c1e95(0xf2)];return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryCandidates(_0x39cac0=preferredNpmRegistry()){const _0x495818=a0_0x53174a,_0x13de53=explicitNpmRegistry();if(_0x13de53)return[_0x13de53];const _0x3103c4=normalizeRegistry(_0x39cac0)||DEFAULT_NPM_REGISTRY,_0x2f0d3a=_0x3103c4===CHINA_NPM_REGISTRY?DEFAULT_NPM_REGISTRY:CHINA_NPM_REGISTRY;return Array[_0x495818(0x1bd)](new Set([_0x3103c4,_0x2f0d3a]));}async function selectFastNpmRegistry(_0x32454f=REGISTRY_PROBE_TIMEOUT_MS){const _0x4cf6c0=a0_0x53174a,_0x34f1d2=explicitNpmRegistry();if(_0x34f1d2)return rememberNpmRegistry(_0x34f1d2),_0x34f1d2;if(selectedRegistryCache&&Date[_0x4cf6c0(0x1bb)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x4cf6c0(0xf2)];const _0xca3bc8=npmRegistryCandidates(isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY),_0x646392=_0xca3bc8['map'](()=>new AbortController());let _0x20734a=-0x1;const _0x4e6c51=_0xca3bc8[_0x4cf6c0(0x1ae)]((_0x5c77b5,_0xf11271)=>probeRegistry200(_0x5c77b5,_0x32454f,_0x646392[_0xf11271][_0x4cf6c0(0x17e)])[_0x4cf6c0(0xfa)](()=>({'registry':_0x5c77b5,'index':_0xf11271})));try{const _0x9cb76e=await Promise[_0x4cf6c0(0x14c)](_0x4e6c51);_0x20734a=_0x9cb76e[_0x4cf6c0(0x104)];const _0x3430b2=_0x9cb76e['registry'];return rememberNpmRegistry(_0x3430b2),_0x3430b2;}catch{const _0x141cd1=_0xca3bc8[0x0]||DEFAULT_NPM_REGISTRY;return rememberNpmRegistry(_0x141cd1),_0x141cd1;}finally{_0x646392['forEach']((_0x2492dc,_0xe34675)=>{if(_0xe34675!==_0x20734a)_0x2492dc['abort']();});}}function rememberNpmRegistry(_0x892d58){const _0x529946=normalizeRegistry(_0x892d58);if(_0x529946)selectedRegistryCache={'registry':_0x529946,'ts':Date['now']()};}function npmRegistryArg(_0x31ea96=preferredNpmRegistry()){return'--registry='+(normalizeRegistry(_0x31ea96)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x14f1a9,_0x4cf071=preferredNpmRegistry()){const _0x3baa5f=a0_0x53174a;return _0x3baa5f(0x107)+_0x14f1a9+'\x20'+npmRegistryArg(_0x4cf071);}function isChineseLocale(){const _0x40e35e=a0_0x53174a,_0x55bc60=[process.env.LC_ALL,process.env.LC_MESSAGES,process.env.LANG,process.env.LANGUAGE][_0x40e35e(0x127)](Boolean)[_0x40e35e(0x1b3)]('\x20');if(/(^|[_.-])zh([_.-]|$)|chinese|china|cn\b/i['test'](_0x55bc60))return!![];try{const _0x37042f=Intl['DateTimeFormat']()['resolvedOptions']()[_0x40e35e(0x1a7)]||'';return/(^|-)zh($|-)|-CN\b/i[_0x40e35e(0xdc)](_0x37042f);}catch{return![];}}function explicitNpmRegistry(){return normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');}function normalizeRegistry(_0x2fb11c){const _0x4a10db=a0_0x53174a;return String(_0x2fb11c||'')['trim']()[_0x4a10db(0x129)](/\/+$/,'');}function probeRegistry200(_0x54321e,_0x1a13a8,_0x28fa40){return new Promise((_0xeed5b9,_0x8b7e33)=>{const _0x50c1aa=a0_0x41ec;let _0x5d3e57=![];const _0x1bed41=_0x30a16e=>{const _0x3a1c9=a0_0x41ec;if(_0x5d3e57)return;_0x5d3e57=!![],clearTimeout(_0x390014),_0x28fa40?.['removeEventListener'](_0x3a1c9(0x17b),_0x4a6a42);if(!_0x2e22f6['killed'])try{_0x2e22f6['kill']('SIGTERM');}catch{}if(_0x30a16e)_0x8b7e33(_0x30a16e);else _0xeed5b9();},_0x4a6a42=()=>{_0x1bed41(new Error('registry\x20probe\x20abort'+'ed'));},_0x390014=setTimeout(()=>{const _0x1b61ed=a0_0x41ec;_0x1bed41(new Error(_0x1b61ed(0x105)+_0x1b61ed(0x108)));},_0x1a13a8);_0x390014['unref']?.();const _0x2e22f6=(0x0,import_child_process['spawn'])(process[_0x50c1aa(0x14f)],['-e',REGISTRY_PROBE_SCRIPT,normalizeRegistry(_0x54321e)||DEFAULT_NPM_REGISTRY,String(_0x1a13a8)],{'stdio':'ignore','shell':![],'windowsHide':!![]});_0x2e22f6['on'](_0x50c1aa(0x1ac),_0x1bed41),_0x2e22f6['on']('exit',_0x5dcddb=>{const _0x5a77ad=_0x50c1aa;if(_0x5dcddb===0x0)_0x1bed41();else _0x1bed41(new Error('registry\x20probe\x20faile'+_0x5a77ad(0xe8)+(_0x5dcddb??'signal')));}),_0x28fa40?.[_0x50c1aa(0x172)](_0x50c1aa(0x17b),_0x4a6a42,{'once':!![]});if(_0x28fa40?.['aborted']){_0x4a6a42();return;}});}var REGISTRY_PROBE_SCRIPT=a0_0x53174a(0xe1)+a0_0x53174a(0x163)+a0_0x53174a(0x10c)+a0_0x53174a(0x1b2)+a0_0x53174a(0x1b7)+'1]\x20||\x20\x27\x27).replace(/\x5c'+a0_0x53174a(0x157)+a0_0x53174a(0x10e)+a0_0x53174a(0x106)+'\x20||\x203000;\x0aconst\x20url\x20'+'=\x20new\x20URL(\x27/-/ping\x27,'+a0_0x53174a(0xbb)+a0_0x53174a(0xc2)+a0_0x53174a(0x111)+'tps\x20:\x20http;\x0alet\x20done'+'\x20=\x20false;\x0aconst\x20fini'+'sh\x20=\x20(code)\x20=>\x20{\x0a\x20\x20i'+a0_0x53174a(0xb4)+a0_0x53174a(0x139)+'imeout(timer);\x0a\x20\x20try'+a0_0x53174a(0x159)+'catch\x20{}\x0a\x20\x20process.e'+a0_0x53174a(0x1ab)+a0_0x53174a(0x169)+')\x20=>\x20finish(3),\x20time'+'outMs);\x0aconst\x20req\x20=\x20'+'mod.request(url,\x20{\x0a\x20'+'\x20method:\x20\x27GET\x27,\x0a\x20\x20ti'+'meout:\x20timeoutMs,\x0a\x20\x20'+a0_0x53174a(0x100)+'ers:\x20{\x20\x27User-Agent\x27:'+a0_0x53174a(0xc4)+'stry-probe\x27,\x20Accept:'+a0_0x53174a(0x18e)+a0_0x53174a(0x1c9)+a0_0x53174a(0x13a)+a0_0x53174a(0x1ad)+'d\x27,\x20()\x20=>\x20finish(res'+a0_0x53174a(0x16c)+a0_0x53174a(0x133)+a0_0x53174a(0x149)+a0_0x53174a(0x1a0)+a0_0x53174a(0x11d)+'h(3));\x0areq.on(\x27error'+'\x27,\x20()\x20=>\x20finish(4));'+'\x0areq.end();\x0a',INSTALL_HINT={'codex':a0_0x53174a(0x134)+'ai/codex','claude':'npm\x20install\x20-g\x20@anth'+a0_0x53174a(0xc6),'opencode':a0_0x53174a(0x12e)+'ode-ai','whalent':npmInstallCommand(a0_0x53174a(0x1aa))+a0_0x53174a(0x109)};function isWindowsCmdFile(_0x36d720){const _0x4a46a4=a0_0x53174a;return process['platform']==='win32'&&/\.(cmd|bat)$/i[_0x4a46a4(0xdc)](_0x36d720||'');}function quoteCmdArg(_0x3e460d){const _0x14847b=String(_0x3e460d??'');if(_0x14847b&&!/[\s"&|<>^%]/['test'](_0x14847b))return _0x14847b;return'\x22'+_0x14847b['replace'](/(["^&|<>%])/g,'^$1')+'\x22';}function cmdFallbackArgs(_0x188eb5,_0x1c484b){return['/d','/s','/c',[quoteCmdArg(_0x188eb5),..._0x1c484b['map'](quoteCmdArg)]['join']('\x20')];}function resolveExecutablePath(_0x32ec78){const _0x1eabb7=a0_0x53174a;if(!_0x32ec78)return null;if(_0x32ec78[_0x1eabb7(0xce)]('/')||_0x32ec78[_0x1eabb7(0xce)]('\x5c')||/\.[A-Za-z0-9]{1,5}$/['test'](_0x32ec78))return(0x0,import_fs['existsSync'])(_0x32ec78)?_0x32ec78:_0x32ec78;const _0x86762a=process['platform']==='win32',_0x122c6a=_0x86762a?_0x1eabb7(0xf9):'which';try{const _0x2d21c0=(0x0,import_child_process2['spawnSync'])(_0x122c6a,[_0x32ec78],{'encoding':'utf-8','timeout':0xbb8,'shell':![]});if(_0x2d21c0[_0x1eabb7(0x113)]===0x0){const _0x5346b7=(_0x2d21c0[_0x1eabb7(0x117)]||'')[_0x1eabb7(0xcd)]()['split'](/\r?\n/)['filter'](Boolean);if(_0x5346b7['length']===0x0)return null;if(_0x86762a)for(const _0x5ccb59 of[_0x1eabb7(0x10b),'.cmd',_0x1eabb7(0x153),'.ps1']){const _0x3c2378=_0x5346b7['find'](_0xea5114=>_0xea5114['toLowerCase']()[_0x1eabb7(0x18d)](_0x5ccb59));if(_0x3c2378)return _0x3c2378;}return _0x5346b7[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x2e7364){const _0x545ade=a0_0x53174a;if(process['platform']!=='win32')return null;if(!/\.(cmd|bat)$/i['test'](_0x2e7364))return null;let _0x2c7875;try{_0x2c7875=(0x0,import_fs['readFileSync'])(_0x2e7364,_0x545ade(0x141));}catch{return null;}const _0xcb4656=_0x2c7875['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0xcb4656){const _0x11a8bf=(0x0,import_path[_0x545ade(0x191)])((0x0,import_path[_0x545ade(0x1bc)])(_0x2e7364),_0xcb4656[0x2]);if((0x0,import_fs[_0x545ade(0x116)])(_0x11a8bf))return{'type':'node','path':_0x11a8bf};}const _0x3b8315=_0x2c7875['match'](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x3b8315){const _0x34c165=(0x0,import_path[_0x545ade(0x191)])((0x0,import_path[_0x545ade(0x1bc)])(_0x2e7364),_0x3b8315[0x2]);if((0x0,import_fs[_0x545ade(0x116)])(_0x34c165))return{'type':'exe','path':_0x34c165};}return null;}function safeSpawnSync(_0xd802ae,_0x398f24,_0x13e939={}){const _0xc8d91=a0_0x53174a,_0x27393e=unwrapWindowsCmdShim(_0xd802ae);if(_0x27393e?.['type']===_0xc8d91(0x148))return(0x0,import_child_process2['spawnSync'])(process['execPath'],[_0x27393e[_0xc8d91(0x1b5)],..._0x398f24],_0x13e939);if(_0x27393e?.[_0xc8d91(0x192)]===_0xc8d91(0xbe))return(0x0,import_child_process2[_0xc8d91(0x137)])(_0x27393e[_0xc8d91(0x1b5)],_0x398f24,_0x13e939);if(isWindowsCmdFile(_0xd802ae))return(0x0,import_child_process2[_0xc8d91(0x137)])(process.env.ComSpec||_0xc8d91(0x19b),cmdFallbackArgs(_0xd802ae,_0x398f24),_0x13e939);return(0x0,import_child_process2['spawnSync'])(_0xd802ae,_0x398f24,_0x13e939);}var fs2=__toESM(require('fs'),0x1),path2=__toESM(require('path'),0x1),os2=__toESM(require('os'),0x1),fs=__toESM(require('fs'),0x1),os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x53174a(0x1b5)),0x1),import_crypto=require(a0_0x53174a(0x120)),PROFILE_ROOT=path['join'](os[a0_0x53174a(0x168)](),'.whalent-agent',a0_0x53174a(0x178)),WHALENT_AGENT_DEFAULT_HOME=path['join'](os['homedir'](),'.whalent-agent'),WHALENT_PROFILE_ROOT=PROFILE_ROOT;function argValue(_0x2344c2,_0x1c2907){const _0x365838=a0_0x53174a;for(let _0x42ad87=0x0;_0x42ad87<_0x2344c2[_0x365838(0x10f)];_0x42ad87++){const _0x34e792=_0x2344c2[_0x42ad87]||'';if(_0x34e792===_0x1c2907)return _0x2344c2[_0x42ad87+0x1]||'';if(_0x34e792['startsWith'](_0x1c2907+'='))return _0x34e792['slice'](_0x1c2907['length']+0x1);}return'';}function expandHome(_0x37940d){const _0x578b1e=a0_0x53174a,_0x3acaab=String(_0x37940d||'')['trim']();if(_0x3acaab==='~')return os[_0x578b1e(0x168)]();if(_0x3acaab[_0x578b1e(0xba)]('~/')||_0x3acaab[_0x578b1e(0xba)]('~\x5c'))return path['join'](os['homedir'](),_0x3acaab['slice'](0x2));return _0x3acaab;}function sanitizeProfileName(_0x5f119d){const _0x2c6265=a0_0x53174a;return String(_0x5f119d||'')[_0x2c6265(0xcd)]()['replace'](/[^a-zA-Z0-9._-]+/g,'-')[_0x2c6265(0x129)](/^-+|-+$/g,'')||_0x2c6265(0xe0);}function whalentTokenFingerprint(_0x1aed74){const _0x4e59c4=a0_0x53174a,_0x537888=String(_0x1aed74||'')['trim']();if(!_0x537888)return'';return(0x0,import_crypto[_0x4e59c4(0x136)])('sha256')['update'](_0x537888)['digest'](_0x4e59c4(0xb3))[_0x4e59c4(0x16b)](0x0,0x10);}function startupToken(_0x49092d,_0xc6681e){const _0xb2a1cd=a0_0x53174a;return argValue(_0x49092d,'--token')||_0xc6681e[_0xb2a1cd(0xe5)]||_0xc6681e[_0xb2a1cd(0x1ba)]||_0xc6681e[_0xb2a1cd(0x15a)]||'';}function whalentProfileHome(_0x269f99){return path['join'](PROFILE_ROOT,sanitizeProfileName(_0x269f99));}function findProfileHomeByTokenFp(_0x3833af){const _0x4b61ed=a0_0x53174a,_0x4c862e=String(_0x3833af||'')[_0x4b61ed(0xcd)]();if(!_0x4c862e)return'';let _0x2ecb01;try{_0x2ecb01=fs['readdirSync'](PROFILE_ROOT,{'withFileTypes':!![]});}catch{return'';}for(const _0x28e0da of _0x2ecb01){if(!_0x28e0da[_0x4b61ed(0x18c)]())continue;const _0x50058d=path[_0x4b61ed(0x1b3)](PROFILE_ROOT,_0x28e0da[_0x4b61ed(0x14d)]),_0x539e3=path['join'](_0x50058d,'profile-identity.jso'+'n');let _0x1bbfe8='',_0x263713=[];try{const _0x33b6a1=JSON['parse'](fs[_0x4b61ed(0x122)](_0x539e3,_0x4b61ed(0x141)));_0x1bbfe8=String(_0x33b6a1?.[_0x4b61ed(0x188)]||'')['trim'](),Array['isArray'](_0x33b6a1?.['known_token_fps'])&&(_0x263713=_0x33b6a1[_0x4b61ed(0x130)][_0x4b61ed(0x1ae)](_0x11a2b4=>String(_0x11a2b4||'')['trim']())[_0x4b61ed(0x127)](Boolean));}catch{continue;}if(_0x1bbfe8===_0x4c862e)return _0x50058d;if(_0x263713[_0x4b61ed(0xce)](_0x4c862e))return _0x50058d;}return'';}function resolveWhalentAgentHome(_0x1f99cd=process[a0_0x53174a(0x16d)]['slice'](0x2),_0x1ef5da=process.env){const _0x3c6089=a0_0x53174a,_0xbb147b=String(_0x1ef5da[_0x3c6089(0x1a1)]||'')['trim']();if(_0xbb147b)return path['resolve'](expandHome(_0xbb147b));const _0x5ff066=argValue(_0x1f99cd,_0x3c6089(0xf5))||_0x1ef5da['WHALENT_AGENT_PROFIL'+'E']||_0x1ef5da[_0x3c6089(0x176)]||'';if(String(_0x5ff066||'')['trim']())return whalentProfileHome(_0x5ff066);const _0x2fd6c0=whalentTokenFingerprint(startupToken(_0x1f99cd,_0x1ef5da));if(_0x2fd6c0){const _0x2709e0=findProfileHomeByTokenFp(_0x2fd6c0);if(_0x2709e0)return _0x2709e0;return whalentProfileHome(_0x3c6089(0x189)+_0x2fd6c0);}return WHALENT_AGENT_DEFAULT_HOME;}var WHALENT_AGENT_HOME=resolveWhalentAgentHome(),LEGACY_MOVE_ITEMS=['credentials',a0_0x53174a(0xc8),'messages','sessions',a0_0x53174a(0x194),'config.yaml','core-upgrade.json',a0_0x53174a(0x154),'profile-identity.jso'+'n','workspace-checkpoint'+a0_0x53174a(0x1af)],UNKNOWN_AGENTS_DIR=path2[a0_0x53174a(0x1b3)](WHALENT_AGENT_DEFAULT_HOME,'unknown','agents'),LEGACY_DELETE_ITEMS=['cache','components','helpers','daemon.pid',a0_0x53174a(0xca)],LEGACY_LOG_RE=/^agent-\d{4}-\d{2}-\d{2}\.log$/,SENTINEL_NAME='legacy-migration.jso'+'n';function safeReadlink(_0xa7f83a){try{return fs2['readlinkSync'](_0xa7f83a);}catch{return'';}}function isSamePath(_0x546887,_0x5cbf3a){const _0x3d7853=a0_0x53174a;if(!_0x546887||!_0x5cbf3a)return![];try{return path2[_0x3d7853(0x191)](_0x546887)===path2[_0x3d7853(0x191)](_0x5cbf3a);}catch{return _0x546887===_0x5cbf3a;}}function pidIsAlive(_0xf321e6){const _0x245a31=a0_0x53174a;if(!Number[_0x245a31(0x142)](_0xf321e6)||_0xf321e6<=0x1)return![];try{return process['kill'](_0xf321e6,0x0),!![];}catch(_0x479be2){return _0x479be2?.[_0x245a31(0x110)]==='EPERM';}}function legacyDaemonAlive(_0x4d2642){const _0x48d0dd=a0_0x53174a;try{const _0x152c65=path2['join'](_0x4d2642,_0x48d0dd(0x174));if(!fs2['existsSync'](_0x152c65))return{'alive':![],'pid':0x0};const _0x2ea006=fs2[_0x48d0dd(0x122)](_0x152c65,'utf-8')['trim']();let _0x10a8c4=0x0;if(_0x2ea006['startsWith']('{'))try{_0x10a8c4=Number(JSON['parse'](_0x2ea006)[_0x48d0dd(0x15d)]||0x0);}catch{_0x10a8c4=0x0;}else _0x10a8c4=Number(_0x2ea006)||0x0;return{'alive':pidIsAlive(_0x10a8c4),'pid':_0x10a8c4};}catch{return{'alive':![],'pid':0x0};}}function listLegacyEntries(_0x41fc55){const _0x28eb96=a0_0x53174a;let _0x19a48a;try{_0x19a48a=fs2[_0x28eb96(0x14e)](_0x41fc55,{'withFileTypes':!![]});}catch{return{'toMove':[],'toDelete':[]};}const _0x267ab3=[],_0x3d2a67=[];for(const _0x4fc5f8 of _0x19a48a){const _0x25cf01=_0x4fc5f8[_0x28eb96(0x14d)];if(_0x25cf01===_0x28eb96(0x178))continue;if(_0x25cf01===SENTINEL_NAME)continue;if(LEGACY_DELETE_ITEMS['includes'](_0x25cf01)){_0x3d2a67['push'](_0x25cf01);continue;}if(LEGACY_MOVE_ITEMS[_0x28eb96(0xce)](_0x25cf01)){_0x267ab3['push'](_0x25cf01);continue;}if(_0x4fc5f8['isFile']()&&LEGACY_LOG_RE['test'](_0x25cf01)){_0x267ab3['push'](_0x25cf01);continue;}}return{'toMove':_0x267ab3,'toDelete':_0x3d2a67};}function relocateLegacyAgentsDir(_0x1bf443,_0x1c1b91){const _0x5543c3=a0_0x53174a,_0x58f6f8=path2['join'](_0x1bf443,'agents');let _0x3c07e6;try{_0x3c07e6=fs2['readdirSync'](_0x58f6f8,{'withFileTypes':!![]});}catch{return 0x0;}if(_0x3c07e6[_0x5543c3(0x10f)]===0x0){try{fs2['rmdirSync'](_0x58f6f8);}catch{}return 0x0;}try{fs2['mkdirSync'](UNKNOWN_AGENTS_DIR,{'recursive':!![],'mode':0x1c0});}catch{}let _0x1fdd72=0x0;for(const _0x7b15b5 of _0x3c07e6){if(!_0x7b15b5[_0x5543c3(0x18c)]())continue;const _0x177121=path2['join'](_0x58f6f8,_0x7b15b5[_0x5543c3(0x14d)]),_0x329605=path2['join'](UNKNOWN_AGENTS_DIR,_0x7b15b5['name']);try{if(fs2['existsSync'](_0x329605)){fs2['rmSync'](_0x177121,{'recursive':!![],'force':!![]}),_0x1c1b91('[legacy-migration]\x20d'+'ropped\x20duplicate\x20age'+_0x5543c3(0xb2)+_0x7b15b5[_0x5543c3(0x14d)]+('\x20(already\x20in\x20unknown'+'/)'));continue;}try{fs2['renameSync'](_0x177121,_0x329605);}catch(_0x472eea){if(_0x472eea?.[_0x5543c3(0x110)]===_0x5543c3(0x13f))fs2['cpSync'](_0x177121,_0x329605,{'recursive':!![],'force':![],'errorOnExist':!![]}),fs2[_0x5543c3(0xb5)](_0x177121,{'recursive':!![],'force':!![]});else throw _0x472eea;}_0x1fdd72+=0x1;}catch(_0x4c67e6){_0x1c1b91(_0x5543c3(0x1c3)+'ailed\x20to\x20quarantine\x20'+_0x5543c3(0x124)+_0x7b15b5[_0x5543c3(0x14d)]+':\x20'+(_0x4c67e6?.['message']||String(_0x4c67e6)));}}try{const _0x458021=fs2['readdirSync'](_0x58f6f8,{'withFileTypes':!![]});for(const _0x2dc2ff of _0x458021){try{fs2[_0x5543c3(0xb5)](path2['join'](_0x58f6f8,_0x2dc2ff[_0x5543c3(0x14d)]),{'recursive':!![],'force':!![]});}catch{}}fs2['rmdirSync'](_0x58f6f8);}catch{}return _0x1fdd72;}function a0_0xacee(){const _0xecc0cb=['w21Pz3jHDguTBgvNywn5xsbuAgu','Bw92zwq','y3jLyxrLuMvXDwLYzq','BM9Kzq','j2vYCM9YjYWGkcKGpt4GzMLUAxm','w3DYyxbWzxjDihn0yxj0Aw5Nigm','igjLzM9YzsbZDgfYDgLUzYbJB3i','yw55','BMfTzq','CMvHzgrPCLn5BMm','zxHLy1bHDgG','Aw5ZDgfSBa','ywDLBNq','zs4UlG','lMjHDa','BgfZDc1JCMfZAc5QC29U','igLUia','Esb3AwXSigjLihjLy2XHAw1Lzca','lYSKlYWGjYCPoWPJB25ZDcb0Aw0','BwvZC2fNzq','ihSGCMvXlMrLC3rYB3KOktSGFsa','q0Xbvurfx0fhru5ux1rps0vo','w2XLz2fJEs1TAwDYyxrLxsbsDw4','ls12zxjZAw9U','CgLK','w3DYyxbWzxjDignVCMuGDxbNCMe','CMvUyw1Lu3LUyW','mJqWndeWrgTcBNz5','w2DHDgv3yxLDienVBM5Ly3rLza','ls1OzwXW','zsGNAhr0CcCPoWPJB25ZDcbODhq','Ahr0Chm6lY9Tzw1VCNKUD2HHBgu','qhDOywXLBNqVywDLBNqTy29Yzq','ChvZAa','EwvZ','Ag9TzwrPCG','DgLTzxiGpsbZzxruAw1LB3v0kcG','ody1nJq0BxDrte9X','C2XPy2u','lNn0yxr1C0nVzguGpt09idiWmca','yxjNDG','C2vUDgLUzwXqyxrO','BNbT','BxrPBwu','odqXodKWvKTkrMfx','ywrKrxzLBNrmAxn0zw5LCG','y2fUzgLKyxrL','zgfLBw9UlNbPza','yxrLoIa','v0Hbtevovf9quK9gsuXf','BM9Kzs1WDhK','ChjVzMLSzxm','DwX0oIa','ls1MB3jJzq','ywjVCNq','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','Aw5ZDgfSBgvKx3zLCNnPB24','C2LNBMfS','w3DYyxbWzxjDig5LDYbJB3jLigq','CM9SBgjHy2TFzMfPBgvK','AwXHyMXLoIa','CZSGz2L2Aw5NihvWlIbdCMfZAca','DxrMoa','w3DYyxbWzxjDiezHDgfSigvYCM8','mtyWmtaYC2D4vw54','ywrK','BNqUy29Tl3b0','Dg9Rzw5FzNa','Dg9Rlq','y2f0y2G','yxjJAa','AxneAxjLy3rVCNK','zw5KC1DPDgG','icDHChbSAwnHDgLVBI9QC29Ulhq','y29Yzs5JANm','DgfYz2v0x2v4Axn0CW','CMvZB2X2zq','DhLWzq','y29UzMLNlNLHBwW','DgvYBwLUywXZ','Dg9nB3zL','AgfZ','zM9Yy2u','w3DYyxbWzxjDihDYyxbWzxiGDxa','ChjLyNvPBgrZ','A2LWicaGia','y21KlMv4zq','w2XLz2fJEs1TAwDYyxrLxsbeywu','A2LSBgvK','BwLNCMf0zwq','ANmUB3jN','AcG0ksK7cN0PoWPYzxeUB24Oj3q','v0Hbtevovf9br0vovf9it01f','zgf0zwqGDg8G','ywnR','BwLU','C3rKzxjY','EhqGDgLTzsb0AguGBwf0y2HPBMC','Bg9JywXL','C2vUDgLUzwWTChjLC2vUDa','Bhn0yxrtEw5J','qhDOywXLBNqVywDLBNq','EgL0kgnVzguPoWP9oWPJB25ZDca','zxjYB3i','C3vTzsGPoWOGihjLCY5VBIGNzw4','BwfW','CY5QC29U','Bw9KDwXL','w3DYyxbWzxjDie1HBNvHBcb1Cgq','ktSky29UC3qGCMvNAxn0CNKGpsa','AM9PBG','y29UC3rHBNrZ','Cgf0Aa','mc4WlJa','u3rYAw5NkhbYB2nLC3mUyxjNDLS','qgXHDgvZDa','l2f1DgGVDg9Rzw4TBg9NAw4','q09ervHFquDftLrFve9lru4','BM93','zgLYBMfTzq','zNjVBq','w2XLz2fJEs1TAwDYyxrLxsaGiha','ywXPDMu','Aw5NihDPDgGG','B3iGCMvIDwLSzcbaD2HHBgvUDc8','y3jLyxrL','w2XLz2fJEs1TAwDYyxrPB25Digy','D3nZoI8VBwvTB3j5lNDOywXLBNq','oIbYDw4GD2L0AcaTlwzVCMnLige','B3jLoIa','zcbJB2rLpq','zwqU','zxH0l3bSywLUlcOVkICGFsWkFsW','CM91BMq','w21Pz3jHDguTBgvNywn5xsbYzxm','BNrZlW','Agv4','zIaOzg9UzsKGCMv0DxjUoWOGigq','CM1tEw5J','zxjYB3i6','D2fYBG','mZiYnda0mg1gEfbHDW','C3bHD24','C3rHCNrZv2L0Aa','ihjLz2LZDhj5icSGjY8NktSky28','zgf0yq','ls1QC29U','zxHL','nJbcwe15wKG','ls10B2TLBG','ywn5ycb0BYbTAwDYyxrLlG','BNn0ig1Vzca9ihvYBc5WCM90B2m','ChjVDg90ExbL','icD3AgfSzw50lwfNzw50lxjLz2K','DMvYC2LVBG','CM9WAwmTywKVy2XHDwrLlwnVzgu','l3b0','Aw5ZDgfUy2vZ','r2f0zxDHEtOGy29UBMvJDgvK','zgfLBw9Ulxn0yxr1CY5QC29U','CM9VDa','y2HTB2rtEw5J','DhjPBq','Aw5JBhvKzxm','w2XLz2fJEs1TAwDYyxrLxsaGihm','AgfZt3DUuhjVCgvYDhK','AwqGBM90igjLy29TzsbOzwfSDgG','C3rYAw5NAwz5','w3DYyxbWzxjDihjVBgXPBMCGyMe','igfJy291BNqGBg9NCYbPBI4','DMLLDW','BM93BI9Hz2vUDhmVlG','C3LTBgLUA1n5BMm','Dg9ezwXLDgu','B3v0Chv0','BNvHBgX5igfMDgvYihrOzsb1BMq','B2jQzwn0','DgvZDa','y2HPBgrFChjVy2vZCW','w2XLz2fJEs1TAwDYyxrLxsaGigy','y3jLyxrLzf9HDa','zgvMyxvSDa','cMnVBNn0igH0DhaGpsbYzxf1Axi','nZKWmZa4sgHKChjT','AxnbCNjHEq','yxrPBwu','v0Hbtevovf9ut0TftG','B3zLzcaGia','y29YzsbUB3qGAw5ZDgfSBgvK','zdOGzxHPDd0','C2vW','CMfU','C3bSAxq','wf9psW','CMfUDgLUAw5NigXLz2fJEsbHz2u','BwTKAxjtEw5J','w21Pz3jHDguTBgvNywn5xsbdB3u','w21Pz3jHDguTBgvNywn5xsbuAxa','Bwf4','CMvNAxn0CNK','CJOG','DgfYz2v0lw91DhnPzguTChjVzMK','ls1WCM9MAwXL','CMvUyw1L','Aw5OzxjPDa','BM8TBgvNywn5lwHVBwu','D2HLCMuUzxHL','DgHLBG','yxrPB24GAxmGzgvMzxjYzwqU','lMnVBs9NDY9ZzgSVD3m','igb3AgfSzw50lwfNzw50igrHzw0','C2HPzNq','Bwf0y2G','ywDLBNq6igzHBhnLlaOGigHLywq','zgLZDa','w21Pz3jHDguTBgvNywn5xsboBYa','D3jPDgvgAwXLu3LUyW','Aw5KzxG','CMvNAxn0CNKGChjVyMuGDgLTzwq','zxnZlMfYz3zBmL0GFhWGmZaWmcK','BNbTigLUC3rHBgWGlwCG','ig91Da','ic0TChjLzMvYlw9UBgLUzq','zguGAgvHBhrOEtOG','lMv4zq','ChmGpsbYzxf1AxjLkcDODhrWCYC','D2HHBgvUDc1Hz2vUDc13CMfWCgu','zw91De1Zid0GtNvTyMvYkhbYB2m','BgvUz3rO','y29Kzq','B2WGpt09icDODhrWCZONid8GAhq','CgfYC2vjBNq','C3rHDhvZ','Dhj1zq','mtC2mZjeB2XKqNy','zxHPC3rZu3LUyW','C3rKB3v0','yxbWBgLJyxrPB24VANnVBG','zMLUz2vYChjPBNqUiefIB3j0Aw4','ywnOAw5L','CgvUzgLUzW','x19LC01VzhvSzq','Aw1LB3v0jYWGkcKGpt4GzMLUAxm','Dg9mB3DLCKnHC2u','zNrLCIbGD2HHBgvUDc1Hz2vUDca','y3j5ChrV','Bg9N','CMvHzezPBgvtEw5J','Bw9Kzq','ywDLBNrZlW','ChjLDMLVDxmGy29Yzsb2zxjZAw8','igzYB20G','zMLSDgvY','w3DYyxbWzxjDifj1BIb0AgLZig8','CMvWBgfJzq','D3jHChbLCIa','CgXHDgzVCM0','CxvHCMfUDgLUzwrbz2vUDhm','w3DYyxbWzxjDigXLz2fJEsbTAwC','BNbTigLUC3rHBgWGlwCGB3bLBMm','ywDLBNrZ','A25VD25FDg9Rzw5FzNbZ','Aw5KzxGUy2PZ','w21Pz3jHDguTBgvNywn5xsa','pYaWidOGmIKPoWOGihjLCY5VBIG','BNbTigLUC3rHBgWGlwCGqg9Wzw4','D2HHBgvUDc1Hz2vUDca','y3jLyxrLsgfZAa','C3bHD25tEw5J','BM8TBgvNywn5lwvUDhjPzxm','B25Lid0GDhj1ztSkicbJBgvHCLq','icHYzxmPid0+ihSkicbYzxmUCMu','BwLNCMf0zs1SzwDHy3K','AxntEw1IB2XPy0XPBMS','y2SGy29Yzsb0BYa','icbJAg1VzcaREcaIjeHftfbfuIi','rvHervy','igfNzw50khmPihbHCMTLzcbPBIa','DxrMltG','AxnjBNrLz2vY','zxHPDa','CgfYC2u'];a0_0xacee=function(){return _0xecc0cb;};return a0_0xacee();}function writeSentinel(_0x3abd2d,_0x551d79){const _0x33ff23=a0_0x53174a,_0x2554cc=path2[_0x33ff23(0x1b3)](_0x3abd2d,SENTINEL_NAME);try{fs2[_0x33ff23(0xee)](_0x3abd2d,{'recursive':!![],'mode':0x1c0}),fs2[_0x33ff23(0x103)](_0x2554cc,JSON['stringify'](_0x551d79,null,0x2),_0x33ff23(0x141));}catch{}return _0x2554cc;}function moveEntry(_0x543427,_0x4df1e8,_0x580dd0){const _0x566bb6=a0_0x53174a,_0x5d02ee=path2['join'](_0x543427,_0x580dd0),_0x55e8ed=path2[_0x566bb6(0x1b3)](_0x4df1e8,_0x580dd0);try{if(fs2['existsSync'](_0x55e8ed))return{'ok':![],'reason':_0x566bb6(0x190)};fs2['mkdirSync'](_0x4df1e8,{'recursive':!![],'mode':0x1c0});try{return fs2[_0x566bb6(0x15f)](_0x5d02ee,_0x55e8ed),{'ok':!![],'reason':_0x566bb6(0xf6)};}catch(_0x3c5ab7){if(_0x3c5ab7?.['code']!=='EXDEV')throw _0x3c5ab7;return copyRecursive(_0x5d02ee,_0x55e8ed),fs2[_0x566bb6(0xb5)](_0x5d02ee,{'recursive':!![],'force':!![]}),{'ok':!![],'reason':'cross-device-copy'};}}catch(_0x4ae464){return{'ok':![],'reason':_0x566bb6(0xb6)+(_0x4ae464?.[_0x566bb6(0x158)]||String(_0x4ae464))};}}function copyRecursive(_0x2351ac,_0x5445af){const _0x3c07f8=a0_0x53174a,_0x3462e4=fs2[_0x3c07f8(0x1a9)](_0x2351ac);if(_0x3462e4[_0x3c07f8(0x13c)]()){fs2[_0x3c07f8(0xd7)](safeReadlink(_0x2351ac),_0x5445af);return;}if(_0x3462e4[_0x3c07f8(0x18c)]()){fs2[_0x3c07f8(0xee)](_0x5445af,{'recursive':!![],'mode':_0x3462e4['mode']&0x1ff});for(const _0x48f5b1 of fs2['readdirSync'](_0x2351ac)){copyRecursive(path2[_0x3c07f8(0x1b3)](_0x2351ac,_0x48f5b1),path2['join'](_0x5445af,_0x48f5b1));}try{fs2['utimesSync'](_0x5445af,_0x3462e4['atime'],_0x3462e4[_0x3c07f8(0x170)]);}catch{}return;}if(_0x3462e4['isFile']()){fs2['copyFileSync'](_0x2351ac,_0x5445af);try{fs2[_0x3c07f8(0xcc)](_0x5445af,_0x3462e4[_0x3c07f8(0x123)]&0x1ff);}catch{}try{fs2['utimesSync'](_0x5445af,_0x3462e4[_0x3c07f8(0xe4)],_0x3462e4['mtime']);}catch{}return;}}function migrateLegacyHome(_0x44c0d5){const _0x43b4ea=a0_0x53174a,_0x1f8998=_0x44c0d5['log']||(_0x4875d4=>console[_0x43b4ea(0x121)](_0x4875d4)),_0x30887a=path2['resolve'](_0x44c0d5['targetHome']),_0xd54b01=WHALENT_AGENT_DEFAULT_HOME,_0x4df9c8={'ran':![],'reason':'','moved':[],'deleted':[],'quarantinedAgents':0x0,'skipped':[],'sourceHome':_0xd54b01,'targetHome':_0x30887a,'sentinelPath':path2['join'](_0x30887a,SENTINEL_NAME)};if(isSamePath(_0xd54b01,_0x30887a))return{..._0x4df9c8,'reason':'target-equals-defaul'+'t-home'};if(!_0x30887a['startsWith'](WHALENT_PROFILE_ROOT+path2[_0x43b4ea(0xe9)])&&!isSamePath(_0x30887a,WHALENT_PROFILE_ROOT))return{..._0x4df9c8,'reason':_0x43b4ea(0xf4)+'le-root'};if(fs2[_0x43b4ea(0x116)](_0x4df9c8[_0x43b4ea(0x16e)]))return{..._0x4df9c8,'reason':_0x43b4ea(0x1a8)};if(!fs2[_0x43b4ea(0x116)](_0xd54b01))return{..._0x4df9c8,'reason':_0x43b4ea(0xf8)};const _0x9a9d06=listLegacyEntries(_0xd54b01),_0x130361=path2['join'](_0xd54b01,_0x43b4ea(0x12f)),_0x39ceec=fs2[_0x43b4ea(0x116)](_0x130361),_0xd1adc7=_0x9a9d06['toMove'][_0x43b4ea(0x10f)]+_0x9a9d06[_0x43b4ea(0xd8)]['length']+(_0x39ceec?0x1:0x0);if(_0xd1adc7===0x0)return writeSentinel(_0x30887a,{'version':0x1,'reason':_0x43b4ea(0x138),'migrated_at':Date['now'](),'source_home':_0xd54b01,'target_home':_0x30887a}),{..._0x4df9c8,'ran':!![],'reason':_0x43b4ea(0x138)};if(!_0x44c0d5[_0x43b4ea(0x197)]){const _0x47e8a9=legacyDaemonAlive(_0xd54b01);if(_0x47e8a9[_0x43b4ea(0x1bf)])return _0x1f8998(_0x43b4ea(0x19c)+'mon\x20(pid='+_0x47e8a9['pid']+')\x20is\x20running\x20at\x20'+_0xd54b01+(';\x20deferred\x20migration'+'.')),_0x1f8998(_0x43b4ea(0x15b)+_0x43b4ea(0xfd)+'on\x20stop`\x20then\x20`whale'+'nt-agent\x20migrate-leg'+_0x43b4ea(0xc1)),{..._0x4df9c8,'reason':'daemon-running'};}_0x1f8998('[legacy-migrate]\x20Mig'+'rating\x20'+_0x9a9d06[_0x43b4ea(0x195)][_0x43b4ea(0x10f)]+'\x20item(s),\x20purging\x20'+_0x9a9d06[_0x43b4ea(0xd8)][_0x43b4ea(0x10f)]+'\x20obsolete\x20item(s)');if(_0x39ceec)_0x1f8998('[legacy-migrate]\x20Qua'+_0x43b4ea(0xed)+'nts/\x20to\x20unknown/agen'+'ts/\x20(per-login\x20recla'+'im)');_0x1f8998(_0x43b4ea(0xde)+'rom:\x20'+_0xd54b01),_0x1f8998('[legacy-migrate]\x20\x20\x20\x20'+'\x20to:\x20'+_0x30887a);let _0xf84b04=0x0;if(_0x39ceec){_0xf84b04=relocateLegacyAgentsDir(_0xd54b01,_0x1f8998);if(_0xf84b04>0x0)_0x1f8998(_0x43b4ea(0x1be)+'arked\x20\x20'+_0xf84b04+('\x20agent(s)\x20→\x20unknown/'+_0x43b4ea(0x124)));}const _0x2bf1c6=[],_0x4a256f=[];for(const _0x3feea9 of _0x9a9d06['toMove']){const _0x258e74=moveEntry(_0xd54b01,_0x30887a,_0x3feea9);_0x258e74['ok']?(_0x2bf1c6['push'](_0x3feea9),_0x1f8998('[legacy-migrate]\x20\x20\x20m'+_0x43b4ea(0xe6)+_0x3feea9)):(_0x4a256f[_0x43b4ea(0x166)]({'name':_0x3feea9,'reason':_0x258e74['reason']}),_0x1f8998('[legacy-migrate]\x20\x20\x20s'+_0x43b4ea(0x19a)+_0x3feea9+'\x20('+_0x258e74['reason']+')'));}const _0x1afae0=[];for(const _0x4ecdff of _0x9a9d06[_0x43b4ea(0xd8)]){try{fs2[_0x43b4ea(0xb5)](path2[_0x43b4ea(0x1b3)](_0xd54b01,_0x4ecdff),{'recursive':!![],'force':!![]}),_0x1afae0['push'](_0x4ecdff),_0x1f8998(_0x43b4ea(0x1be)+'urged\x20\x20'+_0x4ecdff);}catch(_0x24c3b5){_0x4a256f[_0x43b4ea(0x166)]({'name':_0x4ecdff,'reason':'delete:'+(_0x24c3b5?.[_0x43b4ea(0x158)]||String(_0x24c3b5))}),_0x1f8998(_0x43b4ea(0xcf)+'kip\x20\x20\x20\x20'+_0x4ecdff+'\x20(delete\x20failed:\x20'+(_0x24c3b5?.['message']||_0x24c3b5)+')');}}return writeSentinel(_0x30887a,{'version':0x1,'reason':'migrated','migrated_at':Date[_0x43b4ea(0x1bb)](),'source_home':_0xd54b01,'target_home':_0x30887a,'moved':_0x2bf1c6,'deleted':_0x1afae0,'skipped':_0x4a256f,'quarantined_agents':_0xf84b04,'node_version':process[_0x43b4ea(0xc5)],'platform':os2[_0x43b4ea(0x12b)]()+'-'+os2[_0x43b4ea(0x18b)]()}),{..._0x4df9c8,'ran':!![],'reason':_0x4a256f['length']?'migrated-with-skips('+_0x4a256f['length']+')':_0x43b4ea(0x19e),'moved':_0x2bf1c6,'deleted':_0x1afae0,'quarantinedAgents':_0xf84b04,'skipped':_0x4a256f};}var WRAPPER_PKG_NAME=a0_0x53174a(0x1aa),CORE_PKG_NAME=a0_0x53174a(0x165),SUPERVISED_RESTART_CODE=0x4b,NPM_VIEW_TIMEOUT_MS=0x3a98,HEALTH_TIMEOUT_MS=0xafc8,MIN_RESTART_DELAY_MS=0x3e8,MAX_RESTART_DELAY_MS=0xea60,MAX_CRASHES_IN_WINDOW=0x3,CRASH_WINDOW_MS=0x3*0x3c*0x3e8,NPM_INSTALL_TIMEOUT_MS=0xa*0x3c*0x3e8,NPM_INSTALL_MAX_BUFFER=0x20*0x400*0x400,FATAL_PATTERN=/\[(?:agent|daemon|wrapper)\][^\n]*\bFatal error:[^\n]+|\[daemon\] Failed to start:[^\n]+|Error:[^\n]+/,WRAPPER_VERSION=readWrapperVersion(),CHECKED_PTY_HELPERS=new Set();function wrapperBaseDir(){return __dirname;}function configDir(){const _0x1879a6=a0_0x53174a;return resolveWhalentAgentHome(process['argv'][_0x1879a6(0x16b)](0x2),process.env);}function upgradeStatePath(){const _0x5e79e3=a0_0x53174a;return path3[_0x5e79e3(0x1b3)](configDir(),'core-upgrade.json');}function lastCrashFilePath(){const _0x8635ed=a0_0x53174a;return path3[_0x8635ed(0x1b3)](configDir(),_0x8635ed(0x154));}function writeLastCrash(_0x381976){const _0x3d5740=a0_0x53174a;try{fs3[_0x3d5740(0xee)](configDir(),{'recursive':!![]});const _0x37bbf5={..._0x381976,'reported':![]};fs3['writeFileSync'](lastCrashFilePath(),JSON['stringify'](_0x37bbf5,null,0x2),'utf-8');}catch{}}function readWrapperVersion(){const _0x5d2ca4=a0_0x53174a;try{const _0x110cca=JSON['parse'](fs3[_0x5d2ca4(0x122)](path3[_0x5d2ca4(0x1b3)](wrapperBaseDir(),'..','package.json'),'utf-8'));return String(_0x110cca[_0x5d2ca4(0xc5)]||'0.0.0');}catch{return _0x5d2ca4(0x1b6);}}function readUpgradeState(){const _0x2db1fd=a0_0x53174a;try{return JSON['parse'](fs3[_0x2db1fd(0x122)](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0x3610fc){const _0x5cd615=a0_0x53174a;try{fs3['mkdirSync'](configDir(),{'recursive':!![]}),fs3['writeFileSync'](upgradeStatePath(),JSON['stringify']({..._0x3610fc,'updated_at':Date[_0x5cd615(0x1bb)]()},null,0x2),_0x5cd615(0x141));}catch{}}function run(_0x5f1182,_0x29a197,_0x5e3a19=process.env){const _0x54370c=a0_0x53174a;return safeSpawnSync(_0x5f1182,_0x29a197,{'encoding':_0x54370c(0x183),'timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x5e3a19,'shell':![]});}function a0_0x41ec(_0x4a49b8,_0x27dbb3){_0x4a49b8=_0x4a49b8-0xb2;const _0xacee3f=a0_0xacee();let _0x41ec93=_0xacee3f[_0x4a49b8];if(a0_0x41ec['TDyWkR']===undefined){var _0x187230=function(_0x53ca27){const _0x40af58='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa60011='',_0x4f3458='';for(let _0x3d5a40=0x0,_0xdd6b2,_0x16ec0b,_0x178234=0x0;_0x16ec0b=_0x53ca27['charAt'](_0x178234++);~_0x16ec0b&&(_0xdd6b2=_0x3d5a40%0x4?_0xdd6b2*0x40+_0x16ec0b:_0x16ec0b,_0x3d5a40++%0x4)?_0xa60011+=String['fromCharCode'](0xff&_0xdd6b2>>(-0x2*_0x3d5a40&0x6)):0x0){_0x16ec0b=_0x40af58['indexOf'](_0x16ec0b);}for(let _0x3ff662=0x0,_0x57ebf8=_0xa60011['length'];_0x3ff662<_0x57ebf8;_0x3ff662++){_0x4f3458+='%'+('00'+_0xa60011['charCodeAt'](_0x3ff662)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4f3458);};a0_0x41ec['WciOyD']=_0x187230,a0_0x41ec['LTzWdX']={},a0_0x41ec['TDyWkR']=!![];}const _0x331fcb=_0xacee3f[0x0],_0x2ad689=_0x4a49b8+_0x331fcb,_0x4c67f4=a0_0x41ec['LTzWdX'][_0x2ad689];return!_0x4c67f4?(_0x41ec93=a0_0x41ec['WciOyD'](_0x41ec93),a0_0x41ec['LTzWdX'][_0x2ad689]=_0x41ec93):_0x41ec93=_0x4c67f4,_0x41ec93;}function runNpmView(_0x1243bc){const _0x5bd236=a0_0x53174a,_0x18b691=resolveExecutablePath(_0x5bd236(0x16f));if(!_0x18b691)return{'status':0x7f,'stdout':'','stderr':'npm\x20not\x20found','error':new Error('npm\x20not\x20found')};return safeSpawnSync(_0x18b691,_0x1243bc,{'encoding':_0x5bd236(0x183),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x1a73ce=a0_0x53174a,_0x2c07ee=resolveExecutablePath('npm');if(!_0x2c07ee)return'';const _0x16bebe=run(_0x2c07ee,[_0x1a73ce(0xcb),'-g']);if(_0x16bebe[_0x1a73ce(0x113)]!==0x0)return'';return String(_0x16bebe['stdout']||'')[_0x1a73ce(0xcd)]();}function compareSemver(_0x11ff48,_0x1b93ed){const _0x3ef688=a0_0x53174a,_0x5ab486=String(_0x11ff48||'')['replace'](/^v/,'')[_0x3ef688(0xeb)](/[.-]/)['map'](_0x20a3c8=>Number['parseInt'](_0x20a3c8,0xa)||0x0),_0x5ce070=String(_0x1b93ed||'')[_0x3ef688(0x129)](/^v/,'')['split'](/[.-]/)['map'](_0x5d5076=>Number[_0x3ef688(0x112)](_0x5d5076,0xa)||0x0);for(let _0x137720=0x0;_0x137720<Math[_0x3ef688(0xf1)](_0x5ab486['length'],_0x5ce070['length'],0x3);_0x137720++){const _0x26db2f=_0x5ab486[_0x137720]||0x0,_0x5a9f7a=_0x5ce070[_0x137720]||0x0;if(_0x26db2f>_0x5a9f7a)return 0x1;if(_0x26db2f<_0x5a9f7a)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x24d998=a0_0x53174a,_0x259498=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')['trim']()[_0x24d998(0x11e)]();return _0x259498==='1'||_0x259498===_0x24d998(0x114)||_0x259498==='yes'||_0x259498==='on';}function latestWrapperVersion(_0x436b35){const _0x1e5b61=a0_0x53174a,_0x5edba6=runNpmView([_0x1e5b61(0xd5),WRAPPER_PKG_NAME+_0x1e5b61(0x1b8),_0x1e5b61(0xc5),npmRegistryArg(_0x436b35)]);if(_0x5edba6[_0x1e5b61(0x113)]!==0x0)return'';return String(_0x5edba6['stdout']||'')[_0x1e5b61(0xcd)]()['split'](/\r?\n/)['filter'](Boolean)['pop']()||'';}function installWrapperVersion(_0xfd7cb3,_0xe26b08){const _0x393163=a0_0x53174a,_0xed3c3e=resolveExecutablePath('npm');if(!_0xed3c3e)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x5bef07=run(_0xed3c3e,[_0x393163(0x150),'-g',WRAPPER_PKG_NAME+'@'+_0xfd7cb3,npmRegistryArg(_0xe26b08)]),_0x347cae=((_0x5bef07[_0x393163(0x117)]||'')+'\x0a'+(_0x5bef07['stderr']||''))['trim']();return{'ok':_0x5bef07['status']===0x0,'output':_0x347cae};}async function maybeUpdateWrapper(_0x2f2080,_0x2d50f3){const _0x3cc8fa=a0_0x53174a;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x2e6f15=latestWrapperVersion(_0x2d50f3);if(!_0x2e6f15||compareSemver(_0x2e6f15,WRAPPER_VERSION)<=0x0)return![];console['warn']('[wrapper]\x20update\x20ava'+_0x3cc8fa(0x181)+WRAPPER_VERSION+'\x20->\x20'+_0x2e6f15),console['warn']('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0x2e6f15+_0x3cc8fa(0x126)+_0x2d50f3+(_0x3cc8fa(0x14b)+_0x3cc8fa(0x152)));const _0x41abf9=installWrapperVersion(_0x2e6f15,_0x2d50f3);if(!_0x41abf9['ok']){console[_0x3cc8fa(0xb7)](_0x3cc8fa(0x198)+'date\x20failed;\x20continu'+_0x3cc8fa(0x1c0)+WRAPPER_VERSION);if(_0x41abf9[_0x3cc8fa(0xd9)])console[_0x3cc8fa(0xb7)](_0x41abf9['output'][_0x3cc8fa(0xeb)](/\r?\n/)[_0x3cc8fa(0x16b)](-0xc)[_0x3cc8fa(0x1b3)]('\x0a'));return console['warn'](_0x3cc8fa(0x1b1)+_0x3cc8fa(0x175)+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0x2e6f15,_0x2d50f3)),![];}console['warn'](_0x3cc8fa(0x198)+_0x3cc8fa(0x1a2)+_0x2e6f15+';\x20restarting\x20wrapper');const _0x45b045=process['argv'][0x1],_0x237a54=(0x0,import_child_process3['spawnSync'])(process[_0x3cc8fa(0x14f)],[_0x45b045,..._0x2f2080],{'stdio':_0x3cc8fa(0xf7),'env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x2e6f15},'shell':![]});process[_0x3cc8fa(0x143)](_0x237a54[_0x3cc8fa(0x113)]??0x0);}function findCoreScript(){const _0x3b29bc=a0_0x53174a,_0x1fbeae=String(process.env.WHALENT_CORE_ENTRY||'')[_0x3b29bc(0xcd)](),_0x54a84b=['1',_0x3b29bc(0x114),_0x3b29bc(0x167),'on'][_0x3b29bc(0xce)](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()[_0x3b29bc(0x11e)]());if(_0x1fbeae&&_0x54a84b&&fs3['existsSync'](_0x1fbeae))return _0x1fbeae;const _0x2946b6=[],_0x13e0ff=_0x93fc0a=>{const _0x346027=_0x3b29bc;if(fs3[_0x346027(0x116)](_0x93fc0a)&&!_0x2946b6['includes'](_0x93fc0a))_0x2946b6[_0x346027(0x166)](_0x93fc0a);};if(_0x1fbeae)_0x13e0ff(_0x1fbeae);const _0x3ba78f=npmRootGlobal();if(_0x3ba78f){const _0x826131=path3['join'](_0x3ba78f,'@whalent','agent-core',_0x3b29bc(0x101),_0x3b29bc(0x131));_0x13e0ff(_0x826131);}const _0x5e296d=path3['join'](wrapperBaseDir(),_0x3b29bc(0x18f));_0x13e0ff(_0x5e296d);const _0x1b9bff=path3[_0x3b29bc(0x1b3)](wrapperBaseDir(),'..','packages','core',_0x3b29bc(0x101),_0x3b29bc(0x131));_0x13e0ff(_0x1b9bff);if(_0x2946b6[_0x3b29bc(0x10f)]>0x0)return _0x2946b6['map']((_0x268e8d,_0x1818b1)=>({'candidate':_0x268e8d,'index':_0x1818b1,'version':coreVersion(_0x268e8d)}))['sort']((_0x117c67,_0x3123c6)=>{const _0x1be961=_0x3b29bc,_0x2bdea4=compareSemver(_0x3123c6[_0x1be961(0xc5)],_0x117c67[_0x1be961(0xc5)]);if(_0x2bdea4!==0x0)return _0x2bdea4;return _0x3123c6['index']-_0x117c67[_0x1be961(0x104)];})[0x0][_0x3b29bc(0x173)];throw new Error('whalent\x20core\x20runtime'+'\x20not\x20found;\x20install\x20'+'@whalent/agent-core\x20'+_0x3b29bc(0x1c1)+_0x3b29bc(0x151));}function coreVersion(_0x76518c=findCoreScript()){const _0x3b33c8=a0_0x53174a,_0x16d951=(0x0,import_child_process3['spawnSync'])(process['execPath'],[_0x76518c,_0x3b33c8(0x15c)],{'encoding':'utf8','timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x55be08=(_0x16d951[_0x3b33c8(0x117)]||'')+'\x0a'+(_0x16d951['stderr']||'');return _0x55be08[_0x3b33c8(0xff)](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x4b381c){const _0xf9ea5e=a0_0x53174a;try{return fs3['accessSync'](_0x4b381c,fs3[_0xf9ea5e(0x1b4)][_0xf9ea5e(0xec)]),!![];}catch{return![];}}function shellQuote(_0x36f329){return'\x27'+_0x36f329['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';}function coreNodePtySpawnHelperPath(_0x1698d3){const _0x558595=a0_0x53174a;if(process['platform']!=='darwin')return'';try{const _0x240059=(0x0,import_module[_0x558595(0x147)])(_0x1698d3),_0x3b5c4a=_0x240059['resolve'](_0x558595(0x177)),_0x3c0580=path3[_0x558595(0x191)](path3[_0x558595(0x1bc)](_0x3b5c4a),'..');return path3[_0x558595(0x1b3)](_0x3c0580,_0x558595(0x199),'darwin-'+process['arch'],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0xbb4dc9){const _0x1ecfec=a0_0x53174a,_0x373e69=coreNodePtySpawnHelperPath(_0xbb4dc9);if(!_0x373e69||CHECKED_PTY_HELPERS[_0x1ecfec(0x196)](_0x373e69))return;CHECKED_PTY_HELPERS[_0x1ecfec(0x186)](_0x373e69);if(!fs3['existsSync'](_0x373e69)){console['warn']('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20no'+'t\x20found:\x20'+_0x373e69);return;}if(isExecutable(_0x373e69))return;try{const _0x1a420f=fs3['statSync'](_0x373e69)['mode'];fs3['chmodSync'](_0x373e69,_0x1a420f|0x1ed);}catch{}if(isExecutable(_0x373e69)){console[_0x1ecfec(0xb7)]('[wrapper]\x20fixed\x20macO'+'S\x20node-pty\x20spawn-hel'+'per\x20executable\x20bit:\x20'+_0x373e69);return;}console[_0x1ecfec(0xb7)]('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20is'+'\x20not\x20executable:\x20'+_0x373e69),console['warn'](_0x1ecfec(0x128)+'nce\x20to\x20fix\x20terminal/'+'PTY\x20startup:'),console['warn']('\x20\x20HELPER='+shellQuote(_0x373e69)),console[_0x1ecfec(0xb7)]('\x20\x20ls\x20-l\x20\x22$HELPER\x22'),console[_0x1ecfec(0xb7)](_0x1ecfec(0x13e));}function printVersion(){const _0x244569=a0_0x53174a;let _0x1b0304='';try{_0x1b0304=coreVersion();}catch{}console[_0x244569(0x121)](_0x244569(0x135)+WRAPPER_VERSION),console['log']('wrapper\x20'+WRAPPER_VERSION),console[_0x244569(0x121)]('core\x20'+(_0x1b0304||'not\x20installed'));}function getArgValue(_0xe69124,_0xa6b689){const _0x57935c=a0_0x53174a;for(let _0x158108=0x0;_0x158108<_0xe69124[_0x57935c(0x10f)];_0x158108++){const _0x12628c=_0xe69124[_0x158108]||'';if(_0x12628c===_0xa6b689)return _0xe69124[_0x158108+0x1]||'';if(_0x12628c[_0x57935c(0xba)](_0xa6b689+'='))return _0x12628c[_0x57935c(0x16b)](_0xa6b689['length']+0x1);}return'';}function platformUrlFromGateway(_0x47cdd9){const _0x2ce55c=a0_0x53174a;try{const _0x460887=new URL(_0x47cdd9);return(_0x460887['protocol']==='wss:'?'https:':'http:')+'//'+_0x460887['host']+_0x2ce55c(0xc7);}catch{return _0x2ce55c(0x164)+_0x2ce55c(0x187);}}function hasExplicitProfile(_0xa562f6){const _0x5699c5=a0_0x53174a;return!!String(process.env.WHALENT_AGENT_HOME||'')[_0x5699c5(0xcd)]()||!!String(getArgValue(_0xa562f6,_0x5699c5(0xf5))||process.env.WHALENT_AGENT_PROFILE||process.env.WHALENT_PROFILE||'')['trim']();}function writeProfileIdentity(_0x5017a2,_0x3ca2e4){const _0xe6e121=a0_0x53174a;try{fs3[_0xe6e121(0xee)](_0x5017a2,{'recursive':!![],'mode':0x1c0});const _0x4d9106=path3[_0xe6e121(0x1b3)](_0x5017a2,'profile-identity.jso'+'n');let _0x592c37={};if(fs3['existsSync'](_0x4d9106))try{_0x592c37=JSON[_0xe6e121(0x144)](fs3['readFileSync'](_0x4d9106,'utf-8'))||{};}catch{}const _0x5a8dd6=Date['now'](),_0x125b2a=new Set();if(Array[_0xe6e121(0xe3)](_0x592c37[_0xe6e121(0x130)]))for(const _0x80502a of _0x592c37[_0xe6e121(0x130)]){const _0x18dbe0=String(_0x80502a||'')['trim']();if(_0x18dbe0)_0x125b2a[_0xe6e121(0x186)](_0x18dbe0);}const _0x56d1e7=String(_0x592c37[_0xe6e121(0x188)]||'')[_0xe6e121(0xcd)]();if(_0x56d1e7)_0x125b2a[_0xe6e121(0x186)](_0x56d1e7);const _0x1fe2b9=String(_0x3ca2e4[_0xe6e121(0x188)]||'')[_0xe6e121(0xcd)]();if(_0x1fe2b9)_0x125b2a[_0xe6e121(0x186)](_0x1fe2b9);const _0x57e7ae=[..._0x125b2a];fs3['writeFileSync'](_0x4d9106,JSON[_0xe6e121(0xd2)]({'version':0x1,..._0x592c37,..._0x3ca2e4,'known_token_fps':_0x57e7ae,'profile_home':_0x5017a2,'created_at':Number(_0x592c37[_0xe6e121(0xdf)]||0x0)||_0x5a8dd6,'updated_at':_0x5a8dd6},null,0x2),{'mode':0x180});try{fs3[_0xe6e121(0xcc)](_0x4d9106,0x180);}catch{}}catch{}}function readLegacyConfigToken(){const _0xd3375d=a0_0x53174a;try{const _0xe0e135=path3['join'](WHALENT_AGENT_DEFAULT_HOME,_0xd3375d(0x193));if(!fs3['existsSync'](_0xe0e135))return'';const _0x6f1958=fs3['readFileSync'](_0xe0e135,'utf-8'),_0x246c69=_0x6f1958['split'](/\r?\n/);let _0x2bfbe5=![];for(const _0x48854a of _0x246c69){const _0x2787d3=_0x48854a['replace'](/#.*$/,'');if(/^[^\s].*:\s*$/['test'](_0x2787d3)){_0x2bfbe5=/^gateway\s*:\s*$/['test'](_0x2787d3);continue;}if(!_0x2bfbe5)continue;const _0x4c0fe8=/^\s+token\s*:\s*(.+?)\s*$/['exec'](_0x2787d3);if(_0x4c0fe8){const _0x1f3513=_0x4c0fe8[0x1]['trim']()[_0xd3375d(0x129)](/^["']|["']$/g,'');if(_0x1f3513)return _0x1f3513;}}}catch{}return'';}async function maybeBootstrapAccountProfile(_0x3dd96f){const _0x56fc63=a0_0x53174a;if(hasExplicitProfile(_0x3dd96f))return;const _0x23fb84=getArgValue(_0x3dd96f,'--token')||process.env.WHALENT_TOKEN||process.env.CODEX_AGENT_TOKEN||process.env.CLAUDE_AGENT_TOKEN||readLegacyConfigToken();if(!_0x23fb84)return;const _0x54b583=getArgValue(_0x3dd96f,'--gateway')||process.env.WHALENT_GATEWAY||process.env.CODEX_AGENT_GATEWAY||process.env.CLAUDE_AGENT_GATEWAY||_0x56fc63(0x1c4)+_0x56fc63(0xfc),_0x30c184=getArgValue(_0x3dd96f,'--platform-url')||process.env.WHALENT_PLATFORM_URL||platformUrlFromGateway(_0x54b583),_0x48c70c=new AbortController(),_0xc02a8=setTimeout(()=>_0x48c70c['abort'](),0xbb8);try{const _0x4f0279=await fetch(_0x30c184['replace'](/\/$/,'')+_0x56fc63(0x1b9),{'method':'POST','headers':{'Content-Type':_0x56fc63(0x118),'User-Agent':_0x56fc63(0x10d)+'r/'+WRAPPER_VERSION},'body':JSON['stringify']({'token':_0x23fb84,'source':_0x56fc63(0x151)}),'signal':_0x48c70c['signal']});if(!_0x4f0279['ok'])return;const _0x3588d5=await _0x4f0279['json'](),_0x283e0e=String(_0x3588d5['agent_profile_id']||'')['trim']();if(!_0x283e0e)return;const _0x4bdf7f=whalentProfileHome(_0x283e0e);process.env.WHALENT_AGENT_HOME=_0x4bdf7f,process.env.WHALENT_AGENT_PROFILE_ID=_0x283e0e,writeProfileIdentity(_0x4bdf7f,{'agent_profile_id':_0x283e0e,'token_fp':whalentTokenFingerprint(_0x23fb84),'app_id':_0x3588d5['app_id']||'','token_name':_0x3588d5['token_name']||''});}catch{}finally{clearTimeout(_0xc02a8);}}function directCore(_0x4d91bf){const _0x135577=a0_0x53174a,_0xf8b4e9=findCoreScript();checkMacNodePtySpawnHelper(_0xf8b4e9);const _0x4baefb=(0x0,import_child_process3['spawnSync'])(process[_0x135577(0x14f)],[_0xf8b4e9,..._0x4d91bf],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0xf8b4e9,'WHALENT_AGENT_HOME':configDir()},'shell':![]});process[_0x135577(0x143)](_0x4baefb[_0x135577(0x113)]??0x0);}function shouldSupervise(_0x4d5c4b){const _0x3e069b=a0_0x53174a;if(_0x4d5c4b[_0x3e069b(0xce)]('--agent-id'))return![];if(_0x4d5c4b[_0x3e069b(0xce)]('--resume')||_0x4d5c4b[0x0]==='resume')return![];const _0x14342a=_0x4d5c4b[0x0]||'';if(_0x14342a==='ls'||_0x14342a==='status'||_0x14342a==='ps')return![];if(_0x14342a==='mcp'||_0x14342a==='daemon-mcp')return![];if(_0x4d5c4b[_0x3e069b(0xce)](_0x3e069b(0x162))||_0x4d5c4b[_0x3e069b(0xce)]('-h'))return![];return!![];}function installCoreVersion(_0x2200af){const _0x195bc8=a0_0x53174a,_0x394623=resolveExecutablePath(_0x195bc8(0x16f));if(!_0x394623)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x320e46=CORE_PKG_NAME+'@'+_0x2200af,_0x18cb24=run(_0x394623,['install','-g',_0x320e46,npmRegistryArg()]),_0x3d6a55=((_0x18cb24[_0x195bc8(0x117)]||'')+'\x0a'+(_0x18cb24['stderr']||''))['trim']();return{'ok':_0x18cb24['status']===0x0,'output':_0x3d6a55};}async function superviseCore(_0x2b6272){const _0x3d0ec9=a0_0x53174a;let _0x2fdf3b=![],_0x3db604=null;const _0x317c30=[];let _0x533adc=MIN_RESTART_DELAY_MS;const _0x149229=()=>{const _0x2f4f94=a0_0x41ec;_0x2fdf3b=!![];if(_0x3db604&&!_0x3db604[_0x2f4f94(0x19d)])try{_0x3db604['kill']('SIGTERM');}catch{}else process[_0x2f4f94(0x143)](0x0);};process['on']('SIGINT',_0x149229),process['on']('SIGTERM',_0x149229);while(!![]){const _0x52b216=findCoreScript();checkMacNodePtySpawnHelper(_0x52b216);const _0x4b1582={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x52b216,'WHALENT_AGENT_HOME':configDir()},_0x5ba7f5=readUpgradeState(),_0x397b66=!!_0x5ba7f5?.[_0x3d0ec9(0x11b)];let _0x47b0de=![],_0x444132=null,_0x5381e1='';const _0x3a75b2=[],_0x5cb463=0xc;console['log'](_0x3d0ec9(0x14a)+_0x3d0ec9(0x1c6)+_0x52b216),_0x3db604=(0x0,import_child_process3[_0x3d0ec9(0xb9)])(process[_0x3d0ec9(0x14f)],[_0x52b216,..._0x2b6272],{'env':_0x4b1582,'stdio':['inherit','pipe','pipe']});const _0x38f477=()=>{const _0x1fa93b=_0x3d0ec9;if(_0x47b0de)return;_0x47b0de=!![];if(_0x444132)clearTimeout(_0x444132);_0x317c30['length']=0x0,_0x533adc=MIN_RESTART_DELAY_MS;const _0x41ca02=readUpgradeState();_0x41ca02?.['pending']&&(writeUpgradeState({..._0x41ca02,'pending':![],'rollback':![],'health_status':'healthy'}),console['log'](_0x1fa93b(0x15e)+_0x1fa93b(0x10a)+(_0x41ca02[_0x1fa93b(0x17d)]||_0x41ca02['target_version']||'')));},_0x3ef1ea=(_0x4c43f7,_0x332026=![])=>{const _0x4ad8c4=_0x3d0ec9,_0x1e036b=_0x4c43f7['toString']();(_0x332026?process[_0x4ad8c4(0x1a5)]:process['stdout'])['write'](_0x1e036b);if(_0x332026)for(const _0x3b825c of _0x1e036b[_0x4ad8c4(0xeb)](/\r?\n/)){if(!_0x3b825c[_0x4ad8c4(0xcd)]())continue;_0x3a75b2[_0x4ad8c4(0x166)](_0x3b825c);if(_0x3a75b2['length']>_0x5cb463)_0x3a75b2[_0x4ad8c4(0xfe)]();const _0xb85df=_0x3b825c[_0x4ad8c4(0xff)](FATAL_PATTERN);if(_0xb85df)_0x5381e1=_0xb85df[0x0];}(_0x1e036b['includes'](_0x4ad8c4(0x161))||_0x1e036b[_0x4ad8c4(0xce)]('Gateway\x20registered\x20m'+_0x4ad8c4(0x11a))||_0x1e036b[_0x4ad8c4(0xce)](_0x4ad8c4(0xc9)))&&_0x38f477();};_0x3db604[_0x3d0ec9(0x117)]?.['on'](_0x3d0ec9(0xbc),_0x103475=>_0x3ef1ea(_0x103475,![])),_0x3db604['stderr']?.['on']('data',_0x16a0ed=>_0x3ef1ea(_0x16a0ed,!![]));_0x397b66&&(_0x444132=setTimeout(()=>{const _0x3761d4=_0x3d0ec9;if(_0x47b0de||!_0x3db604||_0x3db604[_0x3761d4(0x19d)])return;console[_0x3761d4(0x1ac)](_0x3761d4(0x17f)+_0x3761d4(0xd1)+'y\x20in\x20time;\x20rolling\x20b'+_0x3761d4(0x1a3));try{_0x3db604['kill']('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x33d156=await new Promise(_0x5bd088=>{_0x3db604['once']('exit',(_0x399594,_0x4a3417)=>_0x5bd088({'code':_0x399594,'signal':_0x4a3417}));});if(_0x444132)clearTimeout(_0x444132);_0x3db604=null;if(_0x2fdf3b)process[_0x3d0ec9(0x143)](_0x33d156[_0x3d0ec9(0x110)]??0x0);const _0x1f1e56=readUpgradeState();if(_0x1f1e56?.['pending']&&!_0x47b0de){const _0x70f7c1=String(_0x1f1e56['previous_core_versio'+'n']||'')[_0x3d0ec9(0xcd)]();if(_0x70f7c1){console[_0x3d0ec9(0x1ac)](_0x3d0ec9(0xd3)+_0x3d0ec9(0x13d)+_0x70f7c1);const _0x3a7a9f=installCoreVersion(_0x70f7c1);writeUpgradeState({..._0x1f1e56,'pending':![],'rollback':!![],'health_status':_0x3a7a9f['ok']?'rolled_back':_0x3d0ec9(0x180),'error':_0x3a7a9f['ok']?'':_0x3a7a9f[_0x3d0ec9(0xd9)]});}else writeUpgradeState({..._0x1f1e56,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':_0x3d0ec9(0x125)+'n\x20unknown'});}const _0x38308=_0x33d156['code']===SUPERVISED_RESTART_CODE||_0x1f1e56?.[_0x3d0ec9(0x11b)];if(!_0x38308&&_0x33d156['code']===0x0)process[_0x3d0ec9(0x143)](0x0);const _0x227f82=Date['now']();_0x317c30[_0x3d0ec9(0x166)](_0x227f82);while(_0x317c30['length']>0x0&&_0x227f82-_0x317c30[0x0]>CRASH_WINDOW_MS){_0x317c30['shift']();}const _0x4e1148=_0x317c30['length'];writeLastCrash({'timestamp':_0x227f82,'exit_code':_0x33d156['code'],'exit_signal':_0x33d156[_0x3d0ec9(0x17e)]||null,'fatal_line':_0x5381e1,'raw_tail':_0x3a75b2[_0x3d0ec9(0x1b3)]('\x0a'),'consecutive_crashes':_0x4e1148}),console[_0x3d0ec9(0x121)]('[wrapper]\x20core\x20exite'+_0x3d0ec9(0x1c7)+(_0x33d156['code']??'')+(_0x33d156['signal']?'\x20signal='+_0x33d156['signal']:'')+'\x20('+_0x4e1148+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math[_0x3d0ec9(0x1ca)](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x5381e1)console['log']('[wrapper]\x20last\x20fatal'+':\x20'+_0x5381e1);_0x4e1148>=MAX_CRASHES_IN_WINDOW&&(console[_0x3d0ec9(0x1ac)]('[wrapper]\x20core\x20faile'+'d\x20'+_0x4e1148+'\x20times\x20within\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+(_0x3d0ec9(0x182)+'record:\x20')+lastCrashFilePath()+('.\x20Restart\x20wrapper\x20ma'+_0x3d0ec9(0xda)+'erlying\x20issue\x20is\x20fix'+_0x3d0ec9(0x1c8))),process['exit'](0x1)),console['log']('[wrapper]\x20restarting'+_0x3d0ec9(0x155)+_0x533adc+'ms'),await new Promise(_0x2cc4e9=>setTimeout(_0x2cc4e9,_0x533adc)),_0x533adc=Math[_0x3d0ec9(0x1a4)](_0x533adc*0x2,MAX_RESTART_DELAY_MS);}}function maybeMigrateLegacyHome(){const _0x580c9e=a0_0x53174a,_0x33252e=String(process.env.WHALENT_AGENT_HOME||'')['trim']();if(!_0x33252e)return null;if(path3[_0x580c9e(0x191)](_0x33252e)===path3['resolve'](WHALENT_AGENT_DEFAULT_HOME))return null;try{return migrateLegacyHome({'targetHome':_0x33252e});}catch(_0x2534ee){return console['error'](_0x580c9e(0x12d)+'ration\x20error:\x20'+(_0x2534ee?.[_0x580c9e(0x158)]||String(_0x2534ee))),null;}}function handleMigrateLegacyCommand(_0x6009ac){const _0x36db34=a0_0x53174a,_0x2e236c=_0x6009ac[_0x36db34(0xce)](_0x36db34(0x17a))||_0x6009ac['includes']('-f');let _0x5f3007=String(process.env.WHALENT_AGENT_HOME||'')['trim']();if(!_0x5f3007){const _0x3aba74=getArgValue(_0x6009ac,_0x36db34(0xf5))||process.env.WHALENT_AGENT_PROFILE||process.env.WHALENT_PROFILE||'';if(_0x3aba74)_0x5f3007=whalentProfileHome(_0x3aba74);else{const _0x140803=getArgValue(_0x6009ac,_0x36db34(0xc0))||process.env.WHALENT_TOKEN||readLegacyConfigToken();!_0x140803&&(console['error'](_0x36db34(0x102)+'--profile\x20/\x20--token\x20'+'and\x20config.yaml\x20has\x20'+'no\x20token.\x20Aborting.'),process['exit'](0x2));const _0x46ef4e=whalentTokenFingerprint(_0x140803);!_0x46ef4e&&(console[_0x36db34(0x1ac)](_0x36db34(0xef)+'ld\x20not\x20derive\x20token\x20'+_0x36db34(0x119)+'g.'),process[_0x36db34(0x143)](0x2)),_0x5f3007=whalentProfileHome('tok-'+_0x46ef4e),console['log']('[migrate-legacy]\x20Usi'+'ng\x20token-fingerprint'+'\x20profile\x20(target='+_0x5f3007+').'),console['log'](_0x36db34(0xf0)+_0x36db34(0x1c5)+_0x36db34(0x11f)+'daemon\x20stop`\x20if\x20migr'+_0x36db34(0xfb));}}const _0x4009ef=migrateLegacyHome({'targetHome':_0x5f3007,'force':_0x2e236c});console['log'](_0x36db34(0x1cb)+_0x36db34(0x179)+JSON[_0x36db34(0xd2)]({'ran':_0x4009ef[_0x36db34(0xea)],'reason':_0x4009ef['reason'],'moved':_0x4009ef[_0x36db34(0x146)]['length'],'deleted':_0x4009ef['deleted'][_0x36db34(0x10f)],'quarantined_agents':_0x4009ef['quarantinedAgents'],'skipped':_0x4009ef['skipped'][_0x36db34(0x10f)],'target':_0x4009ef['targetHome']},null,0x2)),_0x4009ef['quarantinedAgents']>0x0&&(console[_0x36db34(0x121)](_0x36db34(0x132)+_0x4009ef[_0x36db34(0x12c)]+(_0x36db34(0x140)+'~/.whalent-agent/unk'+_0x36db34(0xd6))),console[_0x36db34(0x121)](_0x36db34(0x145)+_0x36db34(0x156)+'automatically\x20the\x20ne'+_0x36db34(0x1a6)+_0x36db34(0xd4))),process[_0x36db34(0x143)](_0x4009ef[_0x36db34(0xea)]?0x0:_0x4009ef['reason']==='sentinel-present'||_0x4009ef['reason']==='no-legacy-entries'?0x0:0x1);}async function main(){const _0x51b25d=a0_0x53174a,_0x3330b2=process[_0x51b25d(0x16d)][_0x51b25d(0x16b)](0x2);if(_0x3330b2[0x0]==='--version'||_0x3330b2[0x0]==='-v'||_0x3330b2[0x0]===_0x51b25d(0xc5)){printVersion();return;}_0x3330b2[0x0]===_0x51b25d(0x13b)&&handleMigrateLegacyCommand(_0x3330b2[_0x51b25d(0x16b)](0x1));if((_0x3330b2[0x0]===_0x51b25d(0x113)||_0x3330b2[0x0]==='ls'||_0x3330b2[0x0]==='ps')&&!_0x3330b2['includes'](_0x51b25d(0xbd))){console[_0x51b25d(0x121)](_0x51b25d(0x12a)+WRAPPER_VERSION);try{console[_0x51b25d(0x121)]('core\x20'+(coreVersion()||'not\x20installed'));}catch{console[_0x51b25d(0x121)](_0x51b25d(0xe7));}}await maybeBootstrapAccountProfile(_0x3330b2),maybeMigrateLegacyHome();const _0x2192c8=await selectFastNpmRegistry();await maybeUpdateWrapper(_0x3330b2,_0x2192c8);if(!shouldSupervise(_0x3330b2))directCore(_0x3330b2);await superviseCore(_0x3330b2);}main()[a0_0x53174a(0x18a)](_0x492487=>{const _0x5acaa4=a0_0x53174a;console[_0x5acaa4(0x1ac)](_0x5acaa4(0x184)+_0x5acaa4(0xf3)+(_0x492487?.['message']||String(_0x492487))),process['exit'](0x1);});
2
+ 'use strict';const a0_0x519ead=a0_0x541d;(function(_0x445fb2,_0x106c55){const _0x1248cd=a0_0x541d,_0xf77718=_0x445fb2();while(!![]){try{const _0x4ad208=-parseInt(_0x1248cd(0x211))/0x1+-parseInt(_0x1248cd(0x254))/0x2+-parseInt(_0x1248cd(0x1aa))/0x3*(-parseInt(_0x1248cd(0x25b))/0x4)+-parseInt(_0x1248cd(0x21f))/0x5+parseInt(_0x1248cd(0x204))/0x6+-parseInt(_0x1248cd(0x232))/0x7*(parseInt(_0x1248cd(0x1ff))/0x8)+parseInt(_0x1248cd(0x1ac))/0x9*(parseInt(_0x1248cd(0x214))/0xa);if(_0x4ad208===_0x106c55)break;else _0xf77718['push'](_0xf77718['shift']());}catch(_0x450f55){_0xf77718['push'](_0xf77718['shift']());}}}(a0_0x5141,0x8f8de));var __create=Object['create'],__defProp=Object[a0_0x519ead(0x24c)],__getOwnPropDesc=Object['getOwnPropertyDescri'+a0_0x519ead(0x242)],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object['prototype'][a0_0x519ead(0x1f2)],__copyProps=(_0x54ced3,_0x119b9d,_0x28af14,_0x4b6bcc)=>{const _0x31ca6f=a0_0x519ead;if(_0x119b9d&&typeof _0x119b9d==='object'||typeof _0x119b9d==='function'){for(let _0x3d7c5a of __getOwnPropNames(_0x119b9d))if(!__hasOwnProp[_0x31ca6f(0x1be)](_0x54ced3,_0x3d7c5a)&&_0x3d7c5a!==_0x28af14)__defProp(_0x54ced3,_0x3d7c5a,{'get':()=>_0x119b9d[_0x3d7c5a],'enumerable':!(_0x4b6bcc=__getOwnPropDesc(_0x119b9d,_0x3d7c5a))||_0x4b6bcc['enumerable']});}return _0x54ced3;},__toESM=(_0x4ca81c,_0x3cbaf6,_0x573356)=>(_0x573356=_0x4ca81c!=null?__create(__getProtoOf(_0x4ca81c)):{},__copyProps(_0x3cbaf6||!_0x4ca81c||!_0x4ca81c['__esModule']?__defProp(_0x573356,a0_0x519ead(0x1ed),{'value':_0x4ca81c,'enumerable':!![]}):_0x573356,_0x4ca81c)),import_child_process3=require(a0_0x519ead(0x217)),fs=__toESM(require('fs'),0x1),import_module=require(a0_0x519ead(0x212)),path2=__toESM(require('path'),0x1),import_child_process2=require('child_process'),import_fs=require('fs'),import_path=require('path'),import_child_process=require('child_process'),DEFAULT_NPM_REGISTRY='https://registry.npm'+'js.org',CHINA_NPM_REGISTRY='https://registry.npm'+'mirror.com',REGISTRY_PROBE_TIMEOUT_MS=0xbb8,REGISTRY_CACHE_TTL_MS=0xa*0x3c*0x3e8,selectedRegistryCache=null;function a0_0x5141(){const _0x5d2028=['ChjLyNvPBgrZ','zwqU','Aw1LB3v0jYWGkcKGpt4GzMLUAxm','id0GzMfSC2u7cMnVBNn0igzPBMK','Ag9TzwrPCG','ihSGCMvXlMrLC3rYB3KOktSGFsa','C2GGpsaOy29KzsKGpt4GEWOGigK','zgvMyxvSDa','CM9SBgjHy2TFzMfPBgvK','yxjJAa','qhDOywXLBNqVywDLBNqTy29Yzsa','BwTKAxjtEw5J','AgfZt3DUuhjVCgvYDhK','AwDUB3jL','w3DYyxbWzxjDihjLC3rHCNrPBMC','Aw5KzxGUy2PZ','EgL0kgnVzguPoWP9oWPJB25ZDca','rgf0zvrPBwvgB3jTyxq','C2HPzNq','D3jPDgvgAwXLu3LUyW','B3v0txmPoWPJB25ZDcbYzxeGpsa','zgLZDa','zgfYD2LUlq','BNvHBgX5igfMDgvYihrOzsb1BMq','CgvYigv4zwn1DgfIBguGyML0oIa','nJy3ndaWmezly3nwwq','CMvJB3jKoIa','ChvZAa','C3rKzxjY','zxHPDa','ndG5mtK2ohLZzxzHrW','BM9Kzq','ywjVCNq','lIbszxn0yxj0ihDYyxbWzxiGBwe','BNbTig5VDcbMB3vUzcbVBIbqqvq','zguGAgvHBhrOEtOG','jYWGkcKGpt4GzMLUAxnOkdqPktS','icD3AgfSzw50lwfNzw50lxjLz2K','CMvHzezPBgvtEw5J','ic0TChjLzMvYlw9UBgLUzq','ktSky29UC3qGCMvNAxn0CNKGpsa','ihX8idmWmda7cMnVBNn0ihvYBca','icbJAg1VzcaREcaIjeHftfbfuIi','odK5ote2zKPSzxfx','Bw9KDwXL','Cgf0Aa','mJa1oduWqNHlD3nN','Dhj1zq','B3iGCMvIDwLSzcbaD2HHBgvUDc8','y2HPBgrFChjVy2vZCW','w3DYyxbWzxjDig1Hy09tig5Vzgu','icDHChbSAwnHDgLVBI9QC29Ulhq','Dw5Yzwy','D2LUmZi','Aw5ZDgfSBa','AcG0ksK7cN0PoWPYzxeUB24Oj3q','ywnR','mJi3mZa2nxDfvfLSta','C3bHD24TAgvSCgvY','mv0GFhWGjYCPlNjLCgXHy2uOl1W','igjLzM9YzsbZDgfYDgLUzYbJB3i','ywrKrxzLBNrmAxn0zw5LCG','D3jPDgu','C3rHDhvZ','w3DYyxbWzxjDiezHDgfSigvYCM8','B2WGpt09icDODhrWCZONid8GAhq','CMvZB2X2zwrpChrPB25Z','yxrLoIa','u0Lhvevstq','mc4WlJa','D2fYBG','CMvZB2X2zq','C3bHD25tEw5J','CMvNAxn0CNK','DMLLDW','zcCSicGPid0+igzPBMLZAcHYzxm','n1nNy1bmqG','lNbZmq','zMLUza','D2HPy2G','lMv4zq','lxb0EsbZCgf3BI1OzwXWzxiGBM8','igzYB20G','CgfJA2fNzxm','zgLYBMfTzq','ufrzihn0yxj0Dxa6','yxjNDG','zxjYB3i','zxHPC3rZu3LUyW','zxnZlMfYz3zBmL0GFhWGmZaWmcK','A2LSBgvK','zxHL','ChrVCG','zgfYD2LU','DcbMB3vUzdOG','Bg9N','CgXHDgzVCM0','BM90igLUC3rHBgXLza','ls1QC29U','BwfW','D2HHBgvUDcbJB3jLihj1BNrPBwu','y2HTB2rtEw5J','zgvMAw5LuhjVCgvYDhK','BNn0ig1Vzca9ihvYBc5WCM90B2m','lNDOywXLBNqTywDLBNq','lMjHDa','psbUzxCGvvjmkcCVls9WAw5NjYW','CMvZDw1L','DxrMltG','B25Jzq','nZC5ndi2DhDdEhvA','Aw5OzxjPDa','qhDOywXLBNqVywDLBNq','Aw5KzxG','ihjLz2LZDhj5icSGjY8NktSky28','DhjPBq','w3DYyxbWzxjDihn0yxj0Aw5Nigm','ntG4zxPZtNjt','CM91BMq','Aw5JBhvKzxm','Cg9W','BNbTigLUC3rHBgWGlwCGqgfUDgG','CM9VDa','Bw9Kzq','BgvUz3rO','pYaWidOGmIKPoWOGihjLCY5VBIG','zNjVBq','CgvUzgLUzW','ywKVy29KzxG','BMnLihrVigzPEcb0zxjTAw5HBc8','BNbT','BM93','w3DYyxbWzxjDignVCMuGzMfPBgu','nZiZm2XmDwXyua','B3v0Chv0','odCZrwjYy2H2','BwnW','y3jLyxrLuMvXDwLYzq','ksa9pIbMAw5PC2GOmYKSihrPBwu','Bw9KlNjLCxvLC3qODxjSlcb7cIa','zxjSEwLUzYbPC3n1zsbPCYbMAxG','ChjVzMLSzxm','C3rYAw5NAwz5','D2HLCMuUzxHL','ChjLDMLVDxnFy29Yzv92zxjZAw8','CMvNAxn0CNKGChjVyMuGDgLTzwq','zgfLBw9Ulw1JCa','ls1OzwXW','C3rKB3v0','CMvWBgfJzq','ls12zxjZAw9U','icbiruXqrvi9','y29Yzsa','y2fSBa','C3bSAxq','CMvNAxn0CNKGChjVyMuGywjVCNq','AM9PBG','ic0+ia','ywDLBNqTy29Yzq','C29YDa','w3DYyxbWzxjDigzPEgvKig1Hy08','w3DYyxbWzxjDig5LDYbJB3jLigq','ihnPz25HBd0','w3DYyxbWzxjDihDYyxbWzxiGDxa','AcGZksK7cNjLCs5VBIGNzxjYB3i','C2LNBMfS','zMLSDgvY','y21KlMv4zq','y2f0y2GGE30kicbWCM9JzxnZlMu','Aw1LB3v0khrPBwvYktSkicb0CNK','Bwf0y2G','lMnTza','DMvYC2LVBG','DgHLBG','y29Kzq','DxrMoa','w3DYyxbWzxjDihjVBgXPBMCGyMe','lYSKlYWGjYCPoWPJB25ZDcb0Aw0','AwqGBM90igjLy29TzsbOzwfSDgG','zgf0zwqGDg8G','EwvZ','ls1Hz2vUDc1Pza','zxHLy1bHDgG','B25Lid0GDhj1ztSkicbJBgvHCLq','BNbTigLUC3rHBgWGlwCGqg9Wzw4','uYbUB2rLlxb0EsbZCgf3BI1OzwW','zgf0yq','BwvZC2fNzq','w3DYyxbWzxjDifj1BIb0AgLZig8','Dg9mB3DLCKnHC2u','ig5VDcbMB3vUzdSGAw5ZDgfSBca','zdOGzxHPDd0','igLUia'];a0_0x5141=function(){return _0x5d2028;};return a0_0x5141();}function preferredNpmRegistry(){const _0x29cd35=a0_0x519ead,_0x550483=explicitNpmRegistry();if(_0x550483)return _0x550483;if(selectedRegistryCache&&Date[_0x29cd35(0x1a8)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x29cd35(0x22f)];return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryCandidates(_0x3c1d77=preferredNpmRegistry()){const _0x2e51e7=a0_0x519ead,_0x1ca502=explicitNpmRegistry();if(_0x1ca502)return[_0x1ca502];const _0x6786b=normalizeRegistry(_0x3c1d77)||DEFAULT_NPM_REGISTRY,_0x5c62bc=_0x6786b===CHINA_NPM_REGISTRY?DEFAULT_NPM_REGISTRY:CHINA_NPM_REGISTRY;return Array[_0x2e51e7(0x264)](new Set([_0x6786b,_0x5c62bc]));}async function selectFastNpmRegistry(_0x126cea=REGISTRY_PROBE_TIMEOUT_MS){const _0x39b25d=a0_0x519ead,_0xb2f0c4=explicitNpmRegistry();if(_0xb2f0c4)return rememberNpmRegistry(_0xb2f0c4),_0xb2f0c4;if(selectedRegistryCache&&Date[_0x39b25d(0x1a8)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache['registry'];const _0x8ee85e=npmRegistryCandidates(isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY),_0x2c7f9a=_0x8ee85e[_0x39b25d(0x249)](()=>new AbortController());let _0x412940=-0x1;const _0x1a037d=_0x8ee85e[_0x39b25d(0x249)]((_0x4d3b80,_0x159ec4)=>probeRegistry200(_0x4d3b80,_0x126cea,_0x2c7f9a[_0x159ec4][_0x39b25d(0x1ca)])[_0x39b25d(0x1d2)](()=>({'registry':_0x4d3b80,'index':_0x159ec4})));try{const _0x144cb1=await Promise['any'](_0x1a037d);_0x412940=_0x144cb1[_0x39b25d(0x257)];const _0x5d1d79=_0x144cb1['registry'];return rememberNpmRegistry(_0x5d1d79),_0x5d1d79;}catch{const _0x408200=_0x8ee85e[0x0]||DEFAULT_NPM_REGISTRY;return rememberNpmRegistry(_0x408200),_0x408200;}finally{_0x2c7f9a['forEach']((_0x5800af,_0x34b95f)=>{const _0x19c7fa=_0x39b25d;if(_0x34b95f!==_0x412940)_0x5800af[_0x19c7fa(0x206)]();});}}function rememberNpmRegistry(_0x18c979){const _0x3acc39=normalizeRegistry(_0x18c979);if(_0x3acc39)selectedRegistryCache={'registry':_0x3acc39,'ts':Date['now']()};}function npmRegistryArg(_0x17e9d5=preferredNpmRegistry()){return'--registry='+(normalizeRegistry(_0x17e9d5)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x25eadb,_0x40421a=preferredNpmRegistry()){return'npm\x20install\x20-g\x20'+_0x25eadb+'\x20'+npmRegistryArg(_0x40421a);}function isChineseLocale(){const _0xea46ff=a0_0x519ead,_0x31e434=[process.env.LC_ALL,process.env.LC_MESSAGES,process.env.LANG,process.env.LANGUAGE]['filter'](Boolean)[_0xea46ff(0x1c1)]('\x20');if(/(^|[_.-])zh([_.-]|$)|chinese|china|cn\b/i['test'](_0x31e434))return!![];try{const _0x3f86f9=Intl[_0xea46ff(0x1f7)]()[_0xea46ff(0x228)]()['locale']||'';return/(^|-)zh($|-)|-CN\b/i['test'](_0x3f86f9);}catch{return![];}}function explicitNpmRegistry(){return normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');}function normalizeRegistry(_0x3efc06){const _0x1d97a8=a0_0x519ead;return String(_0x3efc06||'')['trim']()[_0x1d97a8(0x1ba)](/\/+$/,'');}function probeRegistry200(_0x2d4e32,_0x5e1f4d,_0x4f368f){return new Promise((_0x242bbb,_0x13ece2)=>{const _0x168c48=a0_0x541d;let _0x55d58e=![];const _0x384264=_0x44188a=>{const _0x54b693=a0_0x541d;if(_0x55d58e)return;_0x55d58e=!![],clearTimeout(_0x3ab5b9),_0x4f368f?.['removeEventListener'](_0x54b693(0x206),_0x32ed4e);if(!_0x5d5278['killed'])try{_0x5d5278['kill'](_0x54b693(0x22a));}catch{}if(_0x44188a)_0x13ece2(_0x44188a);else _0x242bbb();},_0x32ed4e=()=>{const _0x28130a=a0_0x541d;_0x384264(new Error(_0x28130a(0x1c0)+'ed'));},_0x3ab5b9=setTimeout(()=>{const _0x1c33f2=a0_0x541d;_0x384264(new Error(_0x1c33f2(0x1b6)+'\x20out'));},_0x5e1f4d);_0x3ab5b9[_0x168c48(0x21a)]?.();const _0x5d5278=(0x0,import_child_process['spawn'])(process['execPath'],['-e',REGISTRY_PROBE_SCRIPT,normalizeRegistry(_0x2d4e32)||DEFAULT_NPM_REGISTRY,String(_0x5e1f4d)],{'stdio':_0x168c48(0x1f3),'shell':![],'windowsHide':!![]});_0x5d5278['on'](_0x168c48(0x23d),_0x384264),_0x5d5278['on'](_0x168c48(0x203),_0x4c4f4f=>{const _0xaf6075=_0x168c48;if(_0x4c4f4f===0x0)_0x384264();else _0x384264(new Error('registry\x20probe\x20faile'+_0xaf6075(0x1e4)+(_0x4c4f4f??'signal')));}),_0x4f368f?.[_0x168c48(0x223)](_0x168c48(0x206),_0x32ed4e,{'once':!![]});if(_0x4f368f?.['aborted']){_0x32ed4e();return;}});}var REGISTRY_PROBE_SCRIPT='\x0aconst\x20http\x20=\x20requir'+'e(\x27http\x27);\x0aconst\x20htt'+'ps\x20=\x20require(\x27https\x27'+a0_0x519ead(0x20e)+'String(process.argv['+a0_0x519ead(0x221)+a0_0x519ead(0x1d6)+'eoutMs\x20=\x20Number(proc'+a0_0x519ead(0x23f)+a0_0x519ead(0x20f)+a0_0x519ead(0x250)+a0_0x519ead(0x258)+a0_0x519ead(0x24d)+a0_0x519ead(0x227)+'tps\x20:\x20http;\x0alet\x20done'+a0_0x519ead(0x1e9)+a0_0x519ead(0x1ec)+'f\x20(done)\x20return;\x0a\x20\x20d'+a0_0x519ead(0x1dc)+a0_0x519ead(0x1ce)+a0_0x519ead(0x1eb)+a0_0x519ead(0x1cd)+a0_0x519ead(0x1f6)+'timer\x20=\x20setTimeout(('+a0_0x519ead(0x1af)+a0_0x519ead(0x1fa)+a0_0x519ead(0x1b0)+'\x20method:\x20\x27GET\x27,\x0a\x20\x20ti'+'meout:\x20timeoutMs,\x0a\x20\x20'+'agent:\x20false,\x0a\x20\x20head'+'ers:\x20{\x20\x27User-Agent\x27:'+a0_0x519ead(0x20b)+'stry-probe\x27,\x20Accept:'+a0_0x519ead(0x219)+'ext/plain,*/*\x27\x20},\x0a},'+'\x20(res)\x20=>\x20{\x0a\x20\x20res.re'+'sume();\x0a\x20\x20res.on(\x27en'+a0_0x519ead(0x231)+'.statusCode\x20===\x20200\x20'+a0_0x519ead(0x263)+'\x27error\x27,\x20()\x20=>\x20finis'+a0_0x519ead(0x21d)+a0_0x519ead(0x1e8)+a0_0x519ead(0x1c9)+a0_0x519ead(0x20a)+'\x0areq.end();\x0a',INSTALL_HINT={'codex':a0_0x519ead(0x1dd)+a0_0x519ead(0x266),'claude':a0_0x519ead(0x25f)+'ropic-ai/claude-code','opencode':'npm\x20install\x20-g\x20openc'+'ode-ai','whalent':npmInstallCommand('@whalent/agent')+a0_0x519ead(0x20d)};function isWindowsCmdFile(_0x2a33ed){const _0x261224=a0_0x519ead;return process[_0x261224(0x246)]==='win32'&&/\.(cmd|bat)$/i['test'](_0x2a33ed||'');}function a0_0x541d(_0x46f1d5,_0x4e7233){_0x46f1d5=_0x46f1d5-0x1a8;const _0x5141d8=a0_0x5141();let _0x541daa=_0x5141d8[_0x46f1d5];if(a0_0x541d['OQOKBW']===undefined){var _0x298d88=function(_0x12a01f){const _0xa4af4b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x54ced3='',_0x119b9d='';for(let _0x28af14=0x0,_0x4b6bcc,_0x3d7c5a,_0x4ca81c=0x0;_0x3d7c5a=_0x12a01f['charAt'](_0x4ca81c++);~_0x3d7c5a&&(_0x4b6bcc=_0x28af14%0x4?_0x4b6bcc*0x40+_0x3d7c5a:_0x3d7c5a,_0x28af14++%0x4)?_0x54ced3+=String['fromCharCode'](0xff&_0x4b6bcc>>(-0x2*_0x28af14&0x6)):0x0){_0x3d7c5a=_0xa4af4b['indexOf'](_0x3d7c5a);}for(let _0x3cbaf6=0x0,_0x573356=_0x54ced3['length'];_0x3cbaf6<_0x573356;_0x3cbaf6++){_0x119b9d+='%'+('00'+_0x54ced3['charCodeAt'](_0x3cbaf6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x119b9d);};a0_0x541d['SPftNF']=_0x298d88,a0_0x541d['aBypLS']={},a0_0x541d['OQOKBW']=!![];}const _0x26b648=_0x5141d8[0x0],_0x2f6de5=_0x46f1d5+_0x26b648,_0x5bf155=a0_0x541d['aBypLS'][_0x2f6de5];return!_0x5bf155?(_0x541daa=a0_0x541d['SPftNF'](_0x541daa),a0_0x541d['aBypLS'][_0x2f6de5]=_0x541daa):_0x541daa=_0x5bf155,_0x541daa;}function quoteCmdArg(_0x3aac9a){const _0x139727=a0_0x519ead,_0x31e3a2=String(_0x3aac9a??'');if(_0x31e3a2&&!/[\s"&|<>^%]/['test'](_0x31e3a2))return _0x31e3a2;return'\x22'+_0x31e3a2[_0x139727(0x1ba)](/(["^&|<>%])/g,'^$1')+'\x22';}function cmdFallbackArgs(_0x4de9ff,_0x23a98b){return['/d','/s','/c',[quoteCmdArg(_0x4de9ff),..._0x23a98b['map'](quoteCmdArg)]['join']('\x20')];}function resolveExecutablePath(_0x5e7ce7){const _0xa9ee59=a0_0x519ead;if(!_0x5e7ce7)return null;if(_0x5e7ce7[_0xa9ee59(0x25d)]('/')||_0x5e7ce7[_0xa9ee59(0x25d)]('\x5c')||/\.[A-Za-z0-9]{1,5}$/['test'](_0x5e7ce7))return(0x0,import_fs['existsSync'])(_0x5e7ce7)?_0x5e7ce7:_0x5e7ce7;const _0x1ff875=process[_0xa9ee59(0x246)]==='win32',_0x43c6e2=_0x1ff875?_0xa9ee59(0x1b4):_0xa9ee59(0x235);try{const _0x2ce9bf=(0x0,import_child_process2[_0xa9ee59(0x22e)])(_0x43c6e2,[_0x5e7ce7],{'encoding':_0xa9ee59(0x252),'timeout':0xbb8,'shell':![]});if(_0x2ce9bf['status']===0x0){const _0x83122a=(_0x2ce9bf[_0xa9ee59(0x1b9)]||'')['trim']()[_0xa9ee59(0x1bf)](/\r?\n/)[_0xa9ee59(0x1cb)](Boolean);if(_0x83122a['length']===0x0)return null;if(_0x1ff875)for(const _0x1b4e6a of[_0xa9ee59(0x236),_0xa9ee59(0x1d0),_0xa9ee59(0x24f),_0xa9ee59(0x233)]){const _0xc0a7ae=_0x83122a[_0xa9ee59(0x234)](_0x1f52f8=>_0x1f52f8['toLowerCase']()['endsWith'](_0x1b4e6a));if(_0xc0a7ae)return _0xc0a7ae;}return _0x83122a[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x2d30e6){const _0x4f4caa=a0_0x519ead;if(process[_0x4f4caa(0x246)]!==_0x4f4caa(0x21b))return null;if(!/\.(cmd|bat)$/i['test'](_0x2d30e6))return null;let _0x208b2b;try{_0x208b2b=(0x0,import_fs[_0x4f4caa(0x20c)])(_0x2d30e6,'utf-8');}catch{return null;}const _0x391a49=_0x208b2b[_0x4f4caa(0x1cf)](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x391a49){const _0x366adc=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x2d30e6),_0x391a49[0x2]);if((0x0,import_fs['existsSync'])(_0x366adc))return{'type':_0x4f4caa(0x205),'path':_0x366adc};}const _0x1e7102=_0x208b2b['match'](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x1e7102){const _0x37c226=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x2d30e6),_0x1e7102[0x2]);if((0x0,import_fs['existsSync'])(_0x37c226))return{'type':_0x4f4caa(0x241),'path':_0x37c226};}return null;}function safeSpawnSync(_0x568a6a,_0x12927b,_0x292090={}){const _0x8a670=a0_0x519ead,_0x5bd4f7=unwrapWindowsCmdShim(_0x568a6a);if(_0x5bd4f7?.['type']==='node')return(0x0,import_child_process2['spawnSync'])(process[_0x8a670(0x1db)],[_0x5bd4f7['path'],..._0x12927b],_0x292090);if(_0x5bd4f7?.['type']===_0x8a670(0x241))return(0x0,import_child_process2['spawnSync'])(_0x5bd4f7['path'],_0x12927b,_0x292090);if(isWindowsCmdFile(_0x568a6a))return(0x0,import_child_process2[_0x8a670(0x22e)])(process.env.ComSpec||_0x8a670(0x1cc),cmdFallbackArgs(_0x568a6a,_0x12927b),_0x292090);return(0x0,import_child_process2['spawnSync'])(_0x568a6a,_0x12927b,_0x292090);}var os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x519ead(0x213)),0x1),PROFILE_ROOT=path[a0_0x519ead(0x1c1)](os[a0_0x519ead(0x1ea)](),'.whalent-agent',a0_0x519ead(0x1b2)),WHALENT_AGENT_DEFAULT_HOME=path['join'](os['homedir'](),a0_0x519ead(0x24e)),WRAPPER_PKG_NAME=a0_0x519ead(0x256),CORE_PKG_NAME='@whalent/agent-core',SUPERVISED_RESTART_CODE=0x4b,NPM_VIEW_TIMEOUT_MS=0x3a98,HEALTH_TIMEOUT_MS=0xafc8,MIN_RESTART_DELAY_MS=0x3e8,MAX_RESTART_DELAY_MS=0xea60,MAX_CRASHES_IN_WINDOW=0x3,CRASH_WINDOW_MS=0x3*0x3c*0x3e8,NPM_INSTALL_TIMEOUT_MS=0xa*0x3c*0x3e8,NPM_INSTALL_MAX_BUFFER=0x20*0x400*0x400,FATAL_PATTERN=/\[(?:agent|daemon|wrapper)\][^\n]*\bFatal error:[^\n]+|\[daemon\] Failed to start:[^\n]+|Error:[^\n]+/,WRAPPER_VERSION=readWrapperVersion(),CHECKED_PTY_HELPERS=new Set();function wrapperBaseDir(){return __dirname;}function configDir(){return WHALENT_AGENT_DEFAULT_HOME;}function upgradeStatePath(){const _0x56456a=a0_0x519ead;return path2[_0x56456a(0x1c1)](configDir(),'core-upgrade.json');}function lastCrashFilePath(){return path2['join'](configDir(),'last-crash.json');}function writeLastCrash(_0x3d7ba8){const _0x3b96c0=a0_0x519ead;try{fs['mkdirSync'](configDir(),{'recursive':!![]});const _0x1b03e5={..._0x3d7ba8,'reported':![]};fs[_0x3b96c0(0x1f9)](lastCrashFilePath(),JSON[_0x3b96c0(0x1b3)](_0x1b03e5,null,0x2),'utf-8');}catch{}}function readWrapperVersion(){const _0x5a7f80=a0_0x519ead;try{const _0x4932f3=JSON['parse'](fs[_0x5a7f80(0x20c)](path2['join'](wrapperBaseDir(),'..','package.json'),_0x5a7f80(0x252)));return String(_0x4932f3[_0x5a7f80(0x1d1)]||'0.0.0');}catch{return _0x5a7f80(0x22b);}}function readUpgradeState(){try{return JSON['parse'](fs['readFileSync'](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0x32abb9){const _0x3155f2=a0_0x519ead;try{fs[_0x3155f2(0x1f1)](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON[_0x3155f2(0x1b3)]({..._0x32abb9,'updated_at':Date['now']()},null,0x2),'utf-8');}catch{}}function run(_0x12e88e,_0xcb5061,_0x59ff61=process.env){return safeSpawnSync(_0x12e88e,_0xcb5061,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x59ff61,'shell':![]});}function runNpmView(_0x2010a1){const _0x40a4f1=resolveExecutablePath('npm');if(!_0x40a4f1)return{'status':0x7f,'stdout':'','stderr':'npm\x20not\x20found','error':new Error('npm\x20not\x20found')};return safeSpawnSync(_0x40a4f1,_0x2010a1,{'encoding':'utf8','timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x454355=a0_0x519ead,_0x219fa1=resolveExecutablePath(_0x454355(0x268));if(!_0x219fa1)return'';const _0x51f1f1=run(_0x219fa1,[_0x454355(0x260),'-g']);if(_0x51f1f1[_0x454355(0x225)]!==0x0)return'';return String(_0x51f1f1[_0x454355(0x1b9)]||'')[_0x454355(0x259)]();}function compareSemver(_0x4771f5,_0x4d53a0){const _0x1ee723=a0_0x519ead,_0x7605bb=String(_0x4771f5||'')['replace'](/^v/,'')[_0x1ee723(0x1bf)](/[.-]/)['map'](_0x2761f8=>Number['parseInt'](_0x2761f8,0xa)||0x0),_0x5f578c=String(_0x4d53a0||'')[_0x1ee723(0x1ba)](/^v/,'')['split'](/[.-]/)[_0x1ee723(0x249)](_0x1be131=>Number['parseInt'](_0x1be131,0xa)||0x0);for(let _0x1d873b=0x0;_0x1d873b<Math['max'](_0x7605bb[_0x1ee723(0x262)],_0x5f578c[_0x1ee723(0x262)],0x3);_0x1d873b++){const _0x492d36=_0x7605bb[_0x1d873b]||0x0,_0x4085fd=_0x5f578c[_0x1d873b]||0x0;if(_0x492d36>_0x4085fd)return 0x1;if(_0x492d36<_0x4085fd)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x5bad41=a0_0x519ead,_0x52a6e4=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x5bad41(0x259)]()[_0x5bad41(0x1e2)]();return _0x52a6e4==='1'||_0x52a6e4===_0x5bad41(0x215)||_0x52a6e4===_0x5bad41(0x1d9)||_0x52a6e4==='on';}function latestWrapperVersion(_0x4d3562){const _0xaabf43=a0_0x519ead,_0x42290c=runNpmView([_0xaabf43(0x230),WRAPPER_PKG_NAME+'@latest',_0xaabf43(0x1d1),npmRegistryArg(_0x4d3562)]);if(_0x42290c['status']!==0x0)return'';return String(_0x42290c[_0xaabf43(0x1b9)]||'')[_0xaabf43(0x259)]()[_0xaabf43(0x1bf)](/\r?\n/)['filter'](Boolean)[_0xaabf43(0x25e)]()||'';}function installWrapperVersion(_0x16a630,_0x8d2169){const _0x21da4a=a0_0x519ead,_0xb7ecb9=resolveExecutablePath('npm');if(!_0xb7ecb9)return{'ok':![],'output':_0x21da4a(0x208)+'H'};const _0x3ca6e2=run(_0xb7ecb9,[_0x21da4a(0x21c),'-g',WRAPPER_PKG_NAME+'@'+_0x16a630,npmRegistryArg(_0x8d2169)]),_0x4e8c76=((_0x3ca6e2[_0x21da4a(0x1b9)]||'')+'\x0a'+(_0x3ca6e2[_0x21da4a(0x202)]||''))['trim']();return{'ok':_0x3ca6e2[_0x21da4a(0x225)]===0x0,'output':_0x4e8c76};}async function maybeUpdateWrapper(_0x358394,_0x2169d9){const _0x147952=a0_0x519ead;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0xbfc7dc=latestWrapperVersion(_0x2169d9);if(!_0xbfc7dc||compareSemver(_0xbfc7dc,WRAPPER_VERSION)<=0x0)return![];console['warn']('[wrapper]\x20update\x20ava'+'ilable:\x20'+WRAPPER_VERSION+_0x147952(0x1c2)+_0xbfc7dc),console['warn']('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0xbfc7dc+_0x147952(0x238)+_0x2169d9+(_0x147952(0x222)+'e...'));const _0x3dd190=installWrapperVersion(_0xbfc7dc,_0x2169d9);if(!_0x3dd190['ok']){console['warn']('[wrapper]\x20wrapper\x20up'+'date\x20failed;\x20continu'+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x3dd190[_0x147952(0x1ab)])console[_0x147952(0x22c)](_0x3dd190[_0x147952(0x1ab)]['split'](/\r?\n/)['slice'](-0xc)[_0x147952(0x1c1)]('\x0a'));return console[_0x147952(0x22c)]('[wrapper]\x20Manual\x20upd'+_0x147952(0x229)+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0xbfc7dc,_0x2169d9)),![];}console[_0x147952(0x22c)](_0x147952(0x1c8)+_0x147952(0x1d8)+_0xbfc7dc+';\x20restarting\x20wrapper');const _0xa844a5=process[_0x147952(0x23c)][0x1],_0x28c9b8=(0x0,import_child_process3['spawnSync'])(process[_0x147952(0x1db)],[_0xa844a5,..._0x358394],{'stdio':_0x147952(0x255),'env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0xbfc7dc},'shell':![]});process[_0x147952(0x203)](_0x28c9b8[_0x147952(0x225)]??0x0);}function findCoreScript(){const _0x396439=a0_0x519ead,_0x32a578=String(process.env.WHALENT_CORE_ENTRY||'')[_0x396439(0x259)](),_0x2022af=['1',_0x396439(0x215),_0x396439(0x1d9),'on']['includes'](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()[_0x396439(0x1e2)]());if(_0x32a578&&_0x2022af&&fs['existsSync'](_0x32a578))return _0x32a578;const _0xa4c612=[],_0x4c06f7=_0x205da8=>{const _0x385dca=_0x396439;if(fs[_0x385dca(0x23e)](_0x205da8)&&!_0xa4c612['includes'](_0x205da8))_0xa4c612[_0x385dca(0x201)](_0x205da8);};if(_0x32a578)_0x4c06f7(_0x32a578);const _0x3b79d3=npmRootGlobal();if(_0x3b79d3){const _0x1ad239=path2['join'](_0x3b79d3,'@whalent',_0x396439(0x1c3),_0x396439(0x1fb),_0x396439(0x1f5));_0x4c06f7(_0x1ad239);}const _0x4b4245=path2[_0x396439(0x1c1)](wrapperBaseDir(),'core.cjs');_0x4c06f7(_0x4b4245);const _0x4289a7=path2['join'](wrapperBaseDir(),'..',_0x396439(0x239),'core',_0x396439(0x1fb),_0x396439(0x1f5));_0x4c06f7(_0x4289a7);if(_0xa4c612['length']>0x0)return _0xa4c612[_0x396439(0x249)]((_0x27777e,_0x4fb854)=>({'candidate':_0x27777e,'index':_0x4fb854,'version':coreVersion(_0x27777e)}))[_0x396439(0x1c4)]((_0x2f49e1,_0x716587)=>{const _0x5b7a06=_0x396439,_0x16e7e8=compareSemver(_0x716587['version'],_0x2f49e1[_0x5b7a06(0x1d1)]);if(_0x16e7e8!==0x0)return _0x16e7e8;return _0x716587[_0x5b7a06(0x257)]-_0x2f49e1[_0x5b7a06(0x257)];})[0x0]['candidate'];throw new Error(_0x396439(0x24a)+_0x396439(0x1e3)+_0x396439(0x1f0)+_0x396439(0x216)+'agent');}function coreVersion(_0x58d7c3=findCoreScript()){const _0x198018=a0_0x519ead,_0x4fd5ef=(0x0,import_child_process3[_0x198018(0x22e)])(process[_0x198018(0x1db)],[_0x58d7c3,_0x198018(0x1bb)],{'encoding':_0x198018(0x1d4),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x320268=(_0x4fd5ef[_0x198018(0x1b9)]||'')+'\x0a'+(_0x4fd5ef[_0x198018(0x202)]||'');return _0x320268['match'](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x39dfd9){try{return fs['accessSync'](_0x39dfd9,fs['constants']['X_OK']),!![];}catch{return![];}}function shellQuote(_0x595804){const _0x49b331=a0_0x519ead;return'\x27'+_0x595804[_0x49b331(0x1ba)](/'/g,'\x27\x5c\x27\x27')+'\x27';}function coreNodePtySpawnHelperPath(_0x24a467){const _0x55cedd=a0_0x519ead;if(process['platform']!==_0x55cedd(0x243))return'';try{const _0x3a3db8=(0x0,import_module[_0x55cedd(0x1ae)])(_0x24a467),_0x3ae275=_0x3a3db8[_0x55cedd(0x22d)]('node-pty'),_0x3c4f02=path2['resolve'](path2[_0x55cedd(0x23a)](_0x3ae275),'..');return path2['join'](_0x3c4f02,_0x55cedd(0x1e6),_0x55cedd(0x1fc)+process[_0x55cedd(0x1ef)],_0x55cedd(0x220));}catch{return'';}}function checkMacNodePtySpawnHelper(_0x35c024){const _0x3c6cb4=a0_0x519ead,_0x5db2e7=coreNodePtySpawnHelperPath(_0x35c024);if(!_0x5db2e7||CHECKED_PTY_HELPERS['has'](_0x5db2e7))return;CHECKED_PTY_HELPERS['add'](_0x5db2e7);if(!fs['existsSync'](_0x5db2e7)){console[_0x3c6cb4(0x22c)](_0x3c6cb4(0x218)+_0x3c6cb4(0x237)+_0x3c6cb4(0x244)+_0x5db2e7);return;}if(isExecutable(_0x5db2e7))return;try{const _0x40cb98=fs['statSync'](_0x5db2e7)[_0x3c6cb4(0x261)];fs[_0x3c6cb4(0x24b)](_0x5db2e7,_0x40cb98|0x1ed);}catch{}if(isExecutable(_0x5db2e7)){console[_0x3c6cb4(0x22c)](_0x3c6cb4(0x1c5)+_0x3c6cb4(0x1de)+_0x3c6cb4(0x1fe)+_0x5db2e7);return;}console[_0x3c6cb4(0x22c)]('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20is'+'\x20not\x20executable:\x20'+_0x5db2e7),console['warn'](_0x3c6cb4(0x1e1)+_0x3c6cb4(0x267)+_0x3c6cb4(0x23b)),console['warn'](_0x3c6cb4(0x1bc)+shellQuote(_0x5db2e7)),console[_0x3c6cb4(0x22c)]('\x20\x20ls\x20-l\x20\x22$HELPER\x22'),console['warn'](_0x3c6cb4(0x210));}function printVersion(){const _0x225edb=a0_0x519ead;let _0x1bac9f='';try{_0x1bac9f=coreVersion();}catch{}console['log']('whalent-agent\x20'+WRAPPER_VERSION),console['log']('wrapper\x20'+WRAPPER_VERSION),console[_0x225edb(0x245)](_0x225edb(0x1bd)+(_0x1bac9f||_0x225edb(0x247)));}function directCore(_0x35e772){const _0x179104=a0_0x519ead,_0x2d24e1=findCoreScript();checkMacNodePtySpawnHelper(_0x2d24e1);const _0x3baa74=(0x0,import_child_process3[_0x179104(0x22e)])(process[_0x179104(0x1db)],[_0x2d24e1,..._0x35e772],{'stdio':_0x179104(0x255),'env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x2d24e1},'shell':![]});process[_0x179104(0x203)](_0x3baa74[_0x179104(0x225)]??0x0);}function shouldSupervise(_0x24741f){const _0x2dab39=a0_0x519ead;if(_0x24741f['includes'](_0x2dab39(0x1da)))return![];if(_0x24741f[_0x2dab39(0x25d)]('--resume')||_0x24741f[0x0]===_0x2dab39(0x251))return![];const _0x30fa11=_0x24741f[0x0]||'';if(_0x30fa11==='ls'||_0x30fa11===_0x2dab39(0x225)||_0x30fa11==='ps')return![];if(_0x30fa11===_0x2dab39(0x1ad)||_0x30fa11===_0x2dab39(0x1b7))return![];if(_0x24741f['includes'](_0x2dab39(0x1b8))||_0x24741f['includes']('-h'))return![];return!![];}function installCoreVersion(_0x240e14){const _0x468d10=a0_0x519ead,_0x1a37b6=resolveExecutablePath(_0x468d10(0x268));if(!_0x1a37b6)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x268b57=CORE_PKG_NAME+'@'+_0x240e14,_0x52e367=run(_0x1a37b6,[_0x468d10(0x21c),'-g',_0x268b57,npmRegistryArg()]),_0x454f2b=((_0x52e367['stdout']||'')+'\x0a'+(_0x52e367[_0x468d10(0x202)]||''))[_0x468d10(0x259)]();return{'ok':_0x52e367[_0x468d10(0x225)]===0x0,'output':_0x454f2b};}async function superviseCore(_0x25b03c){const _0x39cae7=a0_0x519ead;let _0x5cfaf3=![],_0x4f5495=null;const _0x5c16aa=[];let _0x31d24b=MIN_RESTART_DELAY_MS;const _0x1b1652=()=>{const _0x61d08d=a0_0x541d;_0x5cfaf3=!![];if(_0x4f5495&&!_0x4f5495[_0x61d08d(0x240)])try{_0x4f5495['kill'](_0x61d08d(0x22a));}catch{}else process[_0x61d08d(0x203)](0x0);};process['on']('SIGINT',_0x1b1652),process['on']('SIGTERM',_0x1b1652);while(!![]){const _0x3cce67=findCoreScript();checkMacNodePtySpawnHelper(_0x3cce67);const _0x3abf47={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x3cce67},_0x51faa1=readUpgradeState(),_0x142a4e=!!_0x51faa1?.['pending'];let _0x5c4dda=![],_0x537e4b=null,_0x406373='';const _0x5090d8=[],_0x53938f=0xc;console['log'](_0x39cae7(0x25a)+'ore:\x20'+_0x3cce67),_0x4f5495=(0x0,import_child_process3['spawn'])(process[_0x39cae7(0x1db)],[_0x3cce67,..._0x25b03c],{'env':_0x3abf47,'stdio':['inherit','pipe','pipe']});const _0x5b3dd2=()=>{const _0x134908=_0x39cae7;if(_0x5c4dda)return;_0x5c4dda=!![];if(_0x537e4b)clearTimeout(_0x537e4b);_0x5c16aa['length']=0x0,_0x31d24b=MIN_RESTART_DELAY_MS;const _0x47c1d1=readUpgradeState();_0x47c1d1?.[_0x134908(0x265)]&&(writeUpgradeState({..._0x47c1d1,'pending':![],'rollback':![],'health_status':'healthy'}),console[_0x134908(0x245)]('[wrapper]\x20core\x20upgra'+_0x134908(0x209)+(_0x47c1d1['installed_version']||_0x47c1d1['target_version']||'')));},_0x2ef67c=(_0x2c022b,_0xab31af=![])=>{const _0x2683fd=_0x39cae7,_0x8b453c=_0x2c022b['toString']();(_0xab31af?process['stderr']:process['stdout'])[_0x2683fd(0x224)](_0x8b453c);if(_0xab31af)for(const _0x206bef of _0x8b453c['split'](/\r?\n/)){if(!_0x206bef[_0x2683fd(0x259)]())continue;_0x5090d8['push'](_0x206bef);if(_0x5090d8['length']>_0x53938f)_0x5090d8[_0x2683fd(0x1f8)]();const _0x4f486c=_0x206bef[_0x2683fd(0x1cf)](FATAL_PATTERN);if(_0x4f486c)_0x406373=_0x4f486c[0x0];}(_0x8b453c[_0x2683fd(0x25d)]('[gateway]\x20Connected')||_0x8b453c[_0x2683fd(0x25d)]('Gateway\x20registered\x20m'+'achine')||_0x8b453c['includes']('Gateway:\x20connected'))&&_0x5b3dd2();};_0x4f5495[_0x39cae7(0x1b9)]?.['on'](_0x39cae7(0x1df),_0x6636d1=>_0x2ef67c(_0x6636d1,![])),_0x4f5495['stderr']?.['on']('data',_0x58b898=>_0x2ef67c(_0x58b898,!![]));_0x142a4e&&(_0x537e4b=setTimeout(()=>{const _0xc0176a=_0x39cae7;if(_0x5c4dda||!_0x4f5495||_0x4f5495[_0xc0176a(0x240)])return;console['error'](_0xc0176a(0x1c6)+_0xc0176a(0x1d7)+'y\x20in\x20time;\x20rolling\x20b'+_0xc0176a(0x21e));try{_0x4f5495['kill']('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x2634d7=await new Promise(_0x2794d6=>{const _0x4a3521=_0x39cae7;_0x4f5495[_0x4a3521(0x253)](_0x4a3521(0x203),(_0x3fbe7b,_0x340882)=>_0x2794d6({'code':_0x3fbe7b,'signal':_0x340882}));});if(_0x537e4b)clearTimeout(_0x537e4b);_0x4f5495=null;if(_0x5cfaf3)process['exit'](_0x2634d7[_0x39cae7(0x1d3)]??0x0);const _0xe8b936=readUpgradeState();if(_0xe8b936?.['pending']&&!_0x5c4dda){const _0x5ec03b=String(_0xe8b936[_0x39cae7(0x1b5)+'n']||'')['trim']();if(_0x5ec03b){console['error'](_0x39cae7(0x1d5)+'ck\x20core\x20to\x20'+_0x5ec03b);const _0x2c6736=installCoreVersion(_0x5ec03b);writeUpgradeState({..._0xe8b936,'pending':![],'rollback':!![],'health_status':_0x2c6736['ok']?'rolled_back':_0x39cae7(0x1ee),'error':_0x2c6736['ok']?'':_0x2c6736['output']});}else writeUpgradeState({..._0xe8b936,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':'previous\x20core\x20versio'+'n\x20unknown'});}const _0x59c8ce=_0x2634d7[_0x39cae7(0x1d3)]===SUPERVISED_RESTART_CODE||_0xe8b936?.['pending'];if(!_0x59c8ce&&_0x2634d7[_0x39cae7(0x1d3)]===0x0)process['exit'](0x0);const _0x1e5fc9=Date[_0x39cae7(0x1a8)]();_0x5c16aa['push'](_0x1e5fc9);while(_0x5c16aa[_0x39cae7(0x262)]>0x0&&_0x1e5fc9-_0x5c16aa[0x0]>CRASH_WINDOW_MS){_0x5c16aa[_0x39cae7(0x1f8)]();}const _0x4e0114=_0x5c16aa['length'];writeLastCrash({'timestamp':_0x1e5fc9,'exit_code':_0x2634d7['code'],'exit_signal':_0x2634d7['signal']||null,'fatal_line':_0x406373,'raw_tail':_0x5090d8['join']('\x0a'),'consecutive_crashes':_0x4e0114}),console['log']('[wrapper]\x20core\x20exite'+'d\x20code='+(_0x2634d7[_0x39cae7(0x1d3)]??'')+(_0x2634d7[_0x39cae7(0x1ca)]?_0x39cae7(0x1c7)+_0x2634d7[_0x39cae7(0x1ca)]:'')+'\x20('+_0x4e0114+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math[_0x39cae7(0x25c)](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x406373)console[_0x39cae7(0x245)]('[wrapper]\x20last\x20fatal'+':\x20'+_0x406373);_0x4e0114>=MAX_CRASHES_IN_WINDOW&&(console[_0x39cae7(0x23d)](_0x39cae7(0x1a9)+'d\x20'+_0x4e0114+'\x20times\x20within\x20'+Math[_0x39cae7(0x25c)](CRASH_WINDOW_MS/0x3e8)+('s;\x20giving\x20up.\x20Crash\x20'+_0x39cae7(0x200))+lastCrashFilePath()+(_0x39cae7(0x207)+_0x39cae7(0x1fd)+_0x39cae7(0x1b1)+_0x39cae7(0x1e7))),process[_0x39cae7(0x203)](0x1)),console[_0x39cae7(0x245)](_0x39cae7(0x1f4)+_0x39cae7(0x1e5)+_0x31d24b+'ms'),await new Promise(_0x236e8f=>setTimeout(_0x236e8f,_0x31d24b)),_0x31d24b=Math['min'](_0x31d24b*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x760f3e=a0_0x519ead,_0x2f5196=process[_0x760f3e(0x23c)]['slice'](0x2);if(_0x2f5196[0x0]==='--version'||_0x2f5196[0x0]==='-v'||_0x2f5196[0x0]===_0x760f3e(0x1d1)){printVersion();return;}if((_0x2f5196[0x0]==='status'||_0x2f5196[0x0]==='ls'||_0x2f5196[0x0]==='ps')&&!_0x2f5196['includes'](_0x760f3e(0x248))){console[_0x760f3e(0x245)]('wrapper\x20'+WRAPPER_VERSION);try{console[_0x760f3e(0x245)]('core\x20'+(coreVersion()||'not\x20installed'));}catch{console[_0x760f3e(0x245)]('core\x20not\x20installed');}}const _0x414a64=await selectFastNpmRegistry();await maybeUpdateWrapper(_0x2f5196,_0x414a64);if(!shouldSupervise(_0x2f5196))directCore(_0x2f5196);await superviseCore(_0x2f5196);}main()['catch'](_0x3dba10=>{const _0x27ddf6=a0_0x519ead;console[_0x27ddf6(0x23d)](_0x27ddf6(0x226)+'r:\x20'+(_0x3dba10?.[_0x27ddf6(0x1e0)]||String(_0x3dba10))),process[_0x27ddf6(0x203)](0x1);});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whalent/agent",
3
- "version": "0.3.128",
3
+ "version": "0.3.129",
4
4
  "description": "Stable wrapper for Whalent Agent core runtime",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -43,7 +43,7 @@
43
43
  "yaml": "^2.4.0"
44
44
  },
45
45
  "optionalDependencies": {
46
- "@whalent/agent-core": "0.3.128",
46
+ "@whalent/agent-core": "0.3.129",
47
47
  "node-pty": "^1.1.0"
48
48
  },
49
49
  "devDependencies": {