@whalent/agent 0.3.130 → 0.3.132
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/core.cjs +7 -7
- package/dist/index.cjs +1 -1
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
'use strict';const a0_0x430b45=a0_0x3e6c;(function(_0x3c31f6,_0x21ad6f){const _0x166123=a0_0x3e6c,_0x519434=_0x3c31f6();while(!![]){try{const _0x1afb4e=-parseInt(_0x166123(0x26f))/0x1+parseInt(_0x166123(0x273))/0x2*(-parseInt(_0x166123(0x23f))/0x3)+-parseInt(_0x166123(0x24c))/0x4*(-parseInt(_0x166123(0x212))/0x5)+parseInt(_0x166123(0x288))/0x6*(parseInt(_0x166123(0x21d))/0x7)+-parseInt(_0x166123(0x25e))/0x8+parseInt(_0x166123(0x1f8))/0x9+parseInt(_0x166123(0x22b))/0xa;if(_0x1afb4e===_0x21ad6f)break;else _0x519434['push'](_0x519434['shift']());}catch(_0x27e9a2){_0x519434['push'](_0x519434['shift']());}}}(a0_0x13d2,0x3654d));var __create=Object[a0_0x430b45(0x23b)],__defProp=Object['defineProperty'],__getOwnPropDesc=Object['getOwnPropertyDescri'+'ptor'],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object[a0_0x430b45(0x22c)][a0_0x430b45(0x20b)],__copyProps=(_0x68ce6,_0x538917,_0x25cbf5,_0x57bf7c)=>{const _0x232b1b=a0_0x430b45;if(_0x538917&&typeof _0x538917===_0x232b1b(0x263)||typeof _0x538917==='function'){for(let _0x344d9c of __getOwnPropNames(_0x538917))if(!__hasOwnProp[_0x232b1b(0x266)](_0x68ce6,_0x344d9c)&&_0x344d9c!==_0x25cbf5)__defProp(_0x68ce6,_0x344d9c,{'get':()=>_0x538917[_0x344d9c],'enumerable':!(_0x57bf7c=__getOwnPropDesc(_0x538917,_0x344d9c))||_0x57bf7c['enumerable']});}return _0x68ce6;},__toESM=(_0x21b5e1,_0x4d0c8a,_0x317420)=>(_0x317420=_0x21b5e1!=null?__create(__getProtoOf(_0x21b5e1)):{},__copyProps(_0x4d0c8a||!_0x21b5e1||!_0x21b5e1['__esModule']?__defProp(_0x317420,'default',{'value':_0x21b5e1,'enumerable':!![]}):_0x317420,_0x21b5e1)),import_child_process3=require('child_process'),fs=__toESM(require('fs'),0x1),import_module=require('module'),path2=__toESM(require('path'),0x1),import_child_process2=require(a0_0x430b45(0x230)),import_fs=require('fs'),import_path=require('path'),import_child_process=require('child_process'),DEFAULT_NPM_REGISTRY='https://registry.npm'+a0_0x430b45(0x1f2),CHINA_NPM_REGISTRY='https://registry.npm'+'mirror.com',REGISTRY_PROBE_TIMEOUT_MS=0xbb8,REGISTRY_CACHE_TTL_MS=0xa*0x3c*0x3e8,selectedRegistryCache=null;function preferredNpmRegistry(){const _0x2cd03d=a0_0x430b45,_0x5092ad=explicitNpmRegistry();if(_0x5092ad)return _0x5092ad;if(selectedRegistryCache&&Date[_0x2cd03d(0x25d)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache['registry'];return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryCandidates(_0x35d5f4=preferredNpmRegistry()){const _0x39d9ca=a0_0x430b45,_0x1d2554=explicitNpmRegistry();if(_0x1d2554)return[_0x1d2554];const _0x258c04=normalizeRegistry(_0x35d5f4)||DEFAULT_NPM_REGISTRY,_0x5a72=_0x258c04===CHINA_NPM_REGISTRY?DEFAULT_NPM_REGISTRY:CHINA_NPM_REGISTRY;return Array[_0x39d9ca(0x1f1)](new Set([_0x258c04,_0x5a72]));}async function selectFastNpmRegistry(_0x585ed=REGISTRY_PROBE_TIMEOUT_MS){const _0x1555ed=a0_0x430b45,_0x2e4a90=explicitNpmRegistry();if(_0x2e4a90)return rememberNpmRegistry(_0x2e4a90),_0x2e4a90;if(selectedRegistryCache&&Date[_0x1555ed(0x25d)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x1555ed(0x214)];const _0x54cbfb=npmRegistryCandidates(isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY),_0x2e3d73=_0x54cbfb[_0x1555ed(0x226)](()=>new AbortController());let _0x3abb78=-0x1;const _0x5411c5=_0x54cbfb['map']((_0x412bca,_0x4dc8c3)=>probeRegistry200(_0x412bca,_0x585ed,_0x2e3d73[_0x4dc8c3]['signal'])[_0x1555ed(0x258)](()=>({'registry':_0x412bca,'index':_0x4dc8c3})));try{const _0xede908=await Promise[_0x1555ed(0x298)](_0x5411c5);_0x3abb78=_0xede908[_0x1555ed(0x25b)];const _0x1b1d32=_0xede908[_0x1555ed(0x214)];return rememberNpmRegistry(_0x1b1d32),_0x1b1d32;}catch{const _0x1bc592=_0x54cbfb[0x0]||DEFAULT_NPM_REGISTRY;return rememberNpmRegistry(_0x1bc592),_0x1bc592;}finally{_0x2e3d73['forEach']((_0x10ec1e,_0x1464db)=>{const _0x47fc47=_0x1555ed;if(_0x1464db!==_0x3abb78)_0x10ec1e[_0x47fc47(0x299)]();});}}function rememberNpmRegistry(_0x1d7b89){const _0x32ad2d=a0_0x430b45,_0x38edce=normalizeRegistry(_0x1d7b89);if(_0x38edce)selectedRegistryCache={'registry':_0x38edce,'ts':Date[_0x32ad2d(0x25d)]()};}function npmRegistryArg(_0x5d1dac=preferredNpmRegistry()){const _0x4f8523=a0_0x430b45;return _0x4f8523(0x238)+(normalizeRegistry(_0x5d1dac)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x288694,_0x1c0f18=preferredNpmRegistry()){const _0x5cada6=a0_0x430b45;return _0x5cada6(0x237)+_0x288694+'\x20'+npmRegistryArg(_0x1c0f18);}function isChineseLocale(){const _0x5f30ff=a0_0x430b45,_0x3a47a2=[process.env.LC_ALL,process.env.LC_MESSAGES,process.env.LANG,process.env.LANGUAGE][_0x5f30ff(0x240)](Boolean)[_0x5f30ff(0x28a)]('\x20');if(/(^|[_.-])zh([_.-]|$)|chinese|china|cn\b/i[_0x5f30ff(0x22e)](_0x3a47a2))return!![];try{const _0x27b764=Intl[_0x5f30ff(0x20a)]()['resolvedOptions']()['locale']||'';return/(^|-)zh($|-)|-CN\b/i[_0x5f30ff(0x22e)](_0x27b764);}catch{return![];}}function explicitNpmRegistry(){return normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');}function normalizeRegistry(_0x85b48c){const _0x4da3be=a0_0x430b45;return String(_0x85b48c||'')[_0x4da3be(0x250)]()['replace'](/\/+$/,'');}function probeRegistry200(_0x25b03c,_0x22caf6,_0x153019){return new Promise((_0x22c4f9,_0x18445b)=>{const _0x23d3e1=a0_0x3e6c;let _0x5f145a=![];const _0x10d6ee=_0x3a1dd4=>{const _0x3f7412=a0_0x3e6c;if(_0x5f145a)return;_0x5f145a=!![],clearTimeout(_0x3424d8),_0x153019?.[_0x3f7412(0x22d)]('abort',_0x1cbfb8);if(!_0x44d878[_0x3f7412(0x239)])try{_0x44d878[_0x3f7412(0x27f)]('SIGTERM');}catch{}if(_0x3a1dd4)_0x18445b(_0x3a1dd4);else _0x22c4f9();},_0x1cbfb8=()=>{_0x10d6ee(new Error('registry\x20probe\x20abort'+'ed'));},_0x3424d8=setTimeout(()=>{const _0x1b5ed5=a0_0x3e6c;_0x10d6ee(new Error(_0x1b5ed5(0x1f7)+_0x1b5ed5(0x254)));},_0x22caf6);_0x3424d8['unref']?.();const _0x44d878=(0x0,import_child_process[_0x23d3e1(0x227)])(process['execPath'],['-e',REGISTRY_PROBE_SCRIPT,normalizeRegistry(_0x25b03c)||DEFAULT_NPM_REGISTRY,String(_0x22caf6)],{'stdio':'ignore','shell':![],'windowsHide':!![]});_0x44d878['on'](_0x23d3e1(0x218),_0x10d6ee),_0x44d878['on'](_0x23d3e1(0x252),_0x35dc92=>{const _0xadc1c0=_0x23d3e1;if(_0x35dc92===0x0)_0x10d6ee();else _0x10d6ee(new Error(_0xadc1c0(0x204)+'d:\x20exit='+(_0x35dc92??_0xadc1c0(0x293))));}),_0x153019?.[_0x23d3e1(0x272)]('abort',_0x1cbfb8,{'once':!![]});if(_0x153019?.[_0x23d3e1(0x1ef)]){_0x1cbfb8();return;}});}var REGISTRY_PROBE_SCRIPT=a0_0x430b45(0x290)+a0_0x430b45(0x28d)+a0_0x430b45(0x291)+');\x0aconst\x20registry\x20=\x20'+'String(process.argv['+'1]\x20||\x20\x27\x27).replace(/\x5c'+'/+$/,\x20\x27\x27);\x0aconst\x20tim'+a0_0x430b45(0x220)+'ess.argv[2]\x20||\x203000)'+'\x20||\x203000;\x0aconst\x20url\x20'+'=\x20new\x20URL(\x27/-/ping\x27,'+a0_0x430b45(0x29a)+a0_0x430b45(0x22a)+'ol\x20===\x20\x27https:\x27\x20?\x20ht'+a0_0x430b45(0x228)+'\x20=\x20false;\x0aconst\x20fini'+a0_0x430b45(0x282)+a0_0x430b45(0x26a)+a0_0x430b45(0x1f3)+a0_0x430b45(0x281)+'\x20{\x20req.destroy();\x20}\x20'+a0_0x430b45(0x1f5)+a0_0x430b45(0x264)+a0_0x430b45(0x294)+')\x20=>\x20finish(3),\x20time'+a0_0x430b45(0x26c)+'mod.request(url,\x20{\x0a\x20'+'\x20method:\x20\x27GET\x27,\x0a\x20\x20ti'+'meout:\x20timeoutMs,\x0a\x20\x20'+a0_0x430b45(0x1ff)+a0_0x430b45(0x1fb)+'\x20\x27whalent-agent-regi'+'stry-probe\x27,\x20Accept:'+'\x20\x27application/json,t'+a0_0x430b45(0x1fc)+a0_0x430b45(0x26b)+'sume();\x0a\x20\x20res.on(\x27en'+a0_0x430b45(0x296)+'.statusCode\x20===\x20200\x20'+'?\x200\x20:\x202));\x0a\x20\x20res.on('+a0_0x430b45(0x243)+a0_0x430b45(0x27d)+a0_0x430b45(0x261)+a0_0x430b45(0x246)+a0_0x430b45(0x287)+'\x0areq.end();\x0a',INSTALL_HINT={'codex':'npm\x20install\x20-g\x20@open'+a0_0x430b45(0x24a),'claude':a0_0x430b45(0x248)+'ropic-ai/claude-code','opencode':'npm\x20install\x20-g\x20openc'+'ode-ai','whalent':npmInstallCommand(a0_0x430b45(0x208))+'\x20--prefer-online'};function isWindowsCmdFile(_0x3af3fb){const _0x5af1da=a0_0x430b45;return process[_0x5af1da(0x292)]==='win32'&&/\.(cmd|bat)$/i['test'](_0x3af3fb||'');}function quoteCmdArg(_0x1e81ce){const _0x296029=a0_0x430b45,_0x55cfaa=String(_0x1e81ce??'');if(_0x55cfaa&&!/[\s"&|<>^%]/[_0x296029(0x22e)](_0x55cfaa))return _0x55cfaa;return'\x22'+_0x55cfaa[_0x296029(0x222)](/(["^&|<>%])/g,_0x296029(0x21c))+'\x22';}function cmdFallbackArgs(_0x556500,_0x535a2e){const _0x35aea2=a0_0x430b45;return['/d','/s','/c',[quoteCmdArg(_0x556500),..._0x535a2e['map'](quoteCmdArg)][_0x35aea2(0x28a)]('\x20')];}function resolveExecutablePath(_0x4a6f78){const _0x16b472=a0_0x430b45;if(!_0x4a6f78)return null;if(_0x4a6f78['includes']('/')||_0x4a6f78['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/['test'](_0x4a6f78))return(0x0,import_fs['existsSync'])(_0x4a6f78)?_0x4a6f78:_0x4a6f78;const _0x222afa=process[_0x16b472(0x292)]==='win32',_0x96acfb=_0x222afa?_0x16b472(0x23c):'which';try{const _0xb73d8f=(0x0,import_child_process2[_0x16b472(0x24b)])(_0x96acfb,[_0x4a6f78],{'encoding':'utf-8','timeout':0xbb8,'shell':![]});if(_0xb73d8f[_0x16b472(0x21e)]===0x0){const _0x18efc3=(_0xb73d8f[_0x16b472(0x275)]||'')['trim']()[_0x16b472(0x22f)](/\r?\n/)['filter'](Boolean);if(_0x18efc3['length']===0x0)return null;if(_0x222afa)for(const _0x3e468d of['.exe',_0x16b472(0x215),'.bat','.ps1']){const _0x268be0=_0x18efc3[_0x16b472(0x242)](_0x51275d=>_0x51275d[_0x16b472(0x255)]()['endsWith'](_0x3e468d));if(_0x268be0)return _0x268be0;}return _0x18efc3[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x49d031){const _0x5814d1=a0_0x430b45;if(process['platform']!=='win32')return null;if(!/\.(cmd|bat)$/i['test'](_0x49d031))return null;let _0x573646;try{_0x573646=(0x0,import_fs['readFileSync'])(_0x49d031,_0x5814d1(0x262));}catch{return null;}const _0x3bba3e=_0x573646['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x3bba3e){const _0x5262eb=(0x0,import_path['resolve'])((0x0,import_path[_0x5814d1(0x249)])(_0x49d031),_0x3bba3e[0x2]);if((0x0,import_fs[_0x5814d1(0x280)])(_0x5262eb))return{'type':'node','path':_0x5262eb};}const _0x1303b4=_0x573646[_0x5814d1(0x247)](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x1303b4){const _0x5308f0=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x49d031),_0x1303b4[0x2]);if((0x0,import_fs[_0x5814d1(0x280)])(_0x5308f0))return{'type':'exe','path':_0x5308f0};}return null;}function safeSpawnSync(_0x1d04e9,_0x460efa,_0x4e4748={}){const _0x230a1e=a0_0x430b45,_0x4bc0fc=unwrapWindowsCmdShim(_0x1d04e9);if(_0x4bc0fc?.['type']==='node')return(0x0,import_child_process2['spawnSync'])(process['execPath'],[_0x4bc0fc[_0x230a1e(0x276)],..._0x460efa],_0x4e4748);if(_0x4bc0fc?.[_0x230a1e(0x219)]==='exe')return(0x0,import_child_process2[_0x230a1e(0x24b)])(_0x4bc0fc[_0x230a1e(0x276)],_0x460efa,_0x4e4748);if(isWindowsCmdFile(_0x1d04e9))return(0x0,import_child_process2['spawnSync'])(process.env.ComSpec||_0x230a1e(0x297),cmdFallbackArgs(_0x1d04e9,_0x460efa),_0x4e4748);return(0x0,import_child_process2[_0x230a1e(0x24b)])(_0x1d04e9,_0x460efa,_0x4e4748);}var os=__toESM(require('os'),0x1),path=__toESM(require('path'),0x1),PROFILE_ROOT=path['join'](os['homedir'](),a0_0x430b45(0x270),a0_0x430b45(0x205)),WHALENT_AGENT_DEFAULT_HOME=path['join'](os[a0_0x430b45(0x21a)](),'.whalent-agent'),WRAPPER_PKG_NAME='@whalent/agent',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 _0x4f0b94=a0_0x430b45;return path2[_0x4f0b94(0x28a)](configDir(),_0x4f0b94(0x235));}function lastCrashFilePath(){const _0x4b1404=a0_0x430b45;return path2[_0x4b1404(0x28a)](configDir(),_0x4b1404(0x251));}function writeLastCrash(_0x55ac7e){const _0x3005ea=a0_0x430b45;try{fs[_0x3005ea(0x233)](configDir(),{'recursive':!![]});const _0x3d009e={..._0x55ac7e,'reported':![]};fs['writeFileSync'](lastCrashFilePath(),JSON[_0x3005ea(0x23e)](_0x3d009e,null,0x2),_0x3005ea(0x262));}catch{}}function readWrapperVersion(){const _0x1955cb=a0_0x430b45;try{const _0x2dd78c=JSON[_0x1955cb(0x28f)](fs['readFileSync'](path2[_0x1955cb(0x28a)](wrapperBaseDir(),'..','package.json'),_0x1955cb(0x262)));return String(_0x2dd78c[_0x1955cb(0x234)]||'0.0.0');}catch{return'0.0.0';}}function readUpgradeState(){const _0x11165d=a0_0x430b45;try{return JSON[_0x11165d(0x28f)](fs[_0x11165d(0x1f9)](upgradeStatePath(),_0x11165d(0x262)));}catch{return null;}}function writeUpgradeState(_0x3bad2d){const _0x4e278f=a0_0x430b45;try{fs[_0x4e278f(0x233)](configDir(),{'recursive':!![]}),fs[_0x4e278f(0x28e)](upgradeStatePath(),JSON['stringify']({..._0x3bad2d,'updated_at':Date[_0x4e278f(0x25d)]()},null,0x2),_0x4e278f(0x262));}catch{}}function run(_0x409954,_0x282933,_0x31751f=process.env){return safeSpawnSync(_0x409954,_0x282933,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x31751f,'shell':![]});}function runNpmView(_0x30fe94){const _0x4047e3=a0_0x430b45,_0x294488=resolveExecutablePath('npm');if(!_0x294488)return{'status':0x7f,'stdout':'','stderr':_0x4047e3(0x265),'error':new Error(_0x4047e3(0x265))};return safeSpawnSync(_0x294488,_0x30fe94,{'encoding':'utf8','timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x6692e8=a0_0x430b45,_0x3e0d30=resolveExecutablePath(_0x6692e8(0x27c));if(!_0x3e0d30)return'';const _0x58dea4=run(_0x3e0d30,['root','-g']);if(_0x58dea4['status']!==0x0)return'';return String(_0x58dea4[_0x6692e8(0x275)]||'')[_0x6692e8(0x250)]();}function compareSemver(_0x516901,_0x353496){const _0x32cf6f=a0_0x430b45,_0x2af860=String(_0x516901||'')['replace'](/^v/,'')['split'](/[.-]/)[_0x32cf6f(0x226)](_0x1c3b65=>Number['parseInt'](_0x1c3b65,0xa)||0x0),_0x3726ce=String(_0x353496||'')[_0x32cf6f(0x222)](/^v/,'')['split'](/[.-]/)[_0x32cf6f(0x226)](_0x51fe40=>Number[_0x32cf6f(0x289)](_0x51fe40,0xa)||0x0);for(let _0x18c3a3=0x0;_0x18c3a3<Math[_0x32cf6f(0x245)](_0x2af860[_0x32cf6f(0x256)],_0x3726ce[_0x32cf6f(0x256)],0x3);_0x18c3a3++){const _0x4b5a8e=_0x2af860[_0x18c3a3]||0x0,_0x257b56=_0x3726ce[_0x18c3a3]||0x0;if(_0x4b5a8e>_0x257b56)return 0x1;if(_0x4b5a8e<_0x257b56)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x3b3fab=a0_0x430b45,_0x2d24c5=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')['trim']()[_0x3b3fab(0x255)]();return _0x2d24c5==='1'||_0x2d24c5===_0x3b3fab(0x27e)||_0x2d24c5==='yes'||_0x2d24c5==='on';}function latestWrapperVersion(_0xa7cde8){const _0x1b8ca5=a0_0x430b45,_0x31261c=runNpmView(['view',WRAPPER_PKG_NAME+_0x1b8ca5(0x278),'version',npmRegistryArg(_0xa7cde8)]);if(_0x31261c['status']!==0x0)return'';return String(_0x31261c['stdout']||'')['trim']()[_0x1b8ca5(0x22f)](/\r?\n/)[_0x1b8ca5(0x240)](Boolean)['pop']()||'';}function installWrapperVersion(_0x26de22,_0x5f1df8){const _0x3ea764=a0_0x430b45,_0x4f857b=resolveExecutablePath('npm');if(!_0x4f857b)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x3aea0c=run(_0x4f857b,['install','-g',WRAPPER_PKG_NAME+'@'+_0x26de22,npmRegistryArg(_0x5f1df8)]),_0x122560=((_0x3aea0c['stdout']||'')+'\x0a'+(_0x3aea0c['stderr']||''))[_0x3ea764(0x250)]();return{'ok':_0x3aea0c['status']===0x0,'output':_0x122560};}function a0_0x13d2(){const _0x519ddf=['BNbTig5VDcbMB3vUza','y2fSBa','w3DYyxbWzxjDig5LDYbJB3jLigq','y2fUzgLKyxrL','BNvHBgX5igfMDgvYihrOzsb1BMq','zIaOzg9UzsKGCMv0DxjUoWOGigq','icHYzxmPid0+ihSkicbYzxmUCMu','B3v0txmPoWPJB25ZDcbYzxeGpsa','zguGAgvHBhrOEtOG','ywDLBNqTy29Yzq','mZy2odK1A2THyxvv','lNDOywXLBNqTywDLBNq','oYbYzxn0yxj0Aw5NihDYyxbWzxi','ywrKrxzLBNrmAxn0zw5LCG','mZG1ndK4s2nsAunJ','Aw5OzxjPDa','C3rKB3v0','Cgf0Aa','C2XPy2u','qgXHDgvZDa','zxHLy1bHDgG','Bw9Kzq','w3DYyxbWzxjDifj1BIb0AgLZig8','BNbT','AcG0ksK7cN0PoWPYzxeUB24Oj3q','Dhj1zq','A2LSBa','zxHPC3rZu3LUyW','Aw1LB3v0khrPBwvYktSkicb0CNK','C2GGpsaOy29KzsKGpt4GEWOGigK','zgf0yq','DcbMB3vUzdOG','CM9SBgvKx2jHy2S','B3v0Chv0','jYWGkcKGpt4GzMLUAxnOkdqPktS','nJCZmdH4r1fAB0W','CgfYC2vjBNq','AM9PBG','CgfJA2fNzxm','CgLWzq','zsGNAhr0CcCPoWPJB25ZDcbODhq','D3jPDgvgAwXLu3LUyW','CgfYC2u','cMnVBNn0igH0DhaGpsbYzxf1Axi','ChmGpsbYzxf1AxjLkcDODhrWCYC','CgXHDgzVCM0','C2LNBMfS','DgLTzxiGpsbZzxruAw1LB3v0kcG','CM9SBgjHy2TFDw5HDMfPBgfIBgu','zcCSicGPid0+igzPBMLZAcHYzxm','y21KlMv4zq','yw55','ywjVCNq','ihjLz2LZDhj5icSGjY8NktSky28','Aw5KzxGUy2PZ','CMvZB2X2zq','ywjVCNrLza','BNbTig5VDcbMB3vUzcbVBIbqqvq','zNjVBq','ANmUB3jN','B25Lid0GDhj1ztSkicbJBgvHCLq','Bg9N','y2f0y2GGE30kicbWCM9JzxnZlMu','w3DYyxbWzxjDie1HBNvHBcb1Cgq','CMvNAxn0CNKGChjVyMuGDgLTzwq','mJyXmJmXm09hAejrza','CMvHzezPBgvtEw5J','wf9psW','zxjZoIb7icDvC2vYlufNzw50jZO','zxH0l3bSywLUlcOVkICGFsWkFsW','yxjNDG','D2fYBG','ywDLBNq6igzHBhnLlaOGigHLywq','y29Kzq','w3DYyxbWzxjDig1Hy09tig5Vzgu','ls1Hz2vUDc1Pza','ufrzihn0yxj0Dxa6','CMvNAxn0CNKGChjVyMuGzMfPBgu','ChjVzMLSzxm','BwnW','ls1Yzxn1Bwu','qhDOywXLBNqVywDLBNq','zgfYD2LU','rgf0zvrPBwvgB3jTyxq','AgfZt3DUuhjVCgvYDhK','Aw5JBhvKzxm','w3DYyxbWzxjDihvWzgf0zsbHDMe','CMvJB3jKoIa','r2f0zxDHEsbYzwDPC3rLCMvKig0','lxb0EsbZCgf3BI1OzwXWzxiGBM8','CM91BMq','mtbxqxLXt0i','icbiruXqrvi9','CMvNAxn0CNK','lMnTza','Aw5ZDgfSBgvKx3zLCNnPB24','zgfLBw9Ulw1JCa','zxjYB3i','DhLWzq','Ag9TzwrPCG','y29Yzs5JANm','xIqX','odroq1DKswO','C3rHDhvZ','C3rKzxjY','zw91De1Zid0GtNvTyMvYkhbYB2m','AgfZ','CMvWBgfJzq','igjLzM9YzsbZDgfYDgLUzYbJB3i','ic0+ia','zs4UlG','BwfW','C3bHD24','DhbZidOGAhr0CdSkBgv0igrVBMu','yxjJAa','BNn0ig1Vzca9ihvYBc5WCM90B2m','ntmXode1mgjJDNLwEq','ChjVDg90ExbL','CMvTB3zLrxzLBNrmAxn0zw5LCG','DgvZDa','C3bSAxq','y2HPBgrFChjVy2vZCW','AwqGBM90igjLy29TzsbOzwfSDgG','ig5VDcbLEgvJDxrHyMXLoIa','BwTKAxjtEw5J','DMvYC2LVBG','y29Yzs11CgDYywrLlMPZB24','w2DHDgv3yxLDienVBM5Ly3rLza','BNbTigLUC3rHBgWGlwCG','ls1YzwDPC3rYEt0','A2LSBgvK','lIbszxn0yxj0ihDYyxbWzxiGBwe','y3jLyxrL','D2HLCMuUzxHL','C29YDa','C3rYAw5NAwz5','m0zQvwfOtq','zMLSDgvY','zcbJB2rLpq','zMLUza','j2vYCM9YjYWGkcKGpt4GzMLUAxm','ls12zxjZAw9U','Bwf4','AcGZksK7cNjLCs5VBIGNzxjYB3i','Bwf0y2G','BNbTigLUC3rHBgWGlwCGqgfUDgG','zgLYBMfTzq','ywKVy29KzxG','C3bHD25tEw5J','nZi0otzushzOwuK','qhDOywXLBNq','u0Lhvevstq','EsbPBIb0Aw1LoYbYB2XSAw5Nigi','DhjPBq','BgfZDc1JCMfZAc5QC29U','zxHPDa','ig5VDcbMB3vUzdSGAw5ZDgfSBca','ig91Da','Dg9mB3DLCKnHC2u','BgvUz3rO','CMvZDw1L','DgHLBG','y2f0y2G','icbJAg1VzcaREcaIjeHftfbfuIi','Aw5KzxG','BM90igLUC3rHBgXLza','BM93','mty4nJaWohboEKr1AW','w3DYyxbWzxjDihDYyxbWzxiGDxa','BMnLihrVigzPEcb0zxjTAw5HBc8','Aw1LB3v0jYWGkcKGpt4GzMLUAxm','DxrMltG','B2jQzwn0','EgL0kgnVzguPoWP9oWPJB25ZDca'];a0_0x13d2=function(){return _0x519ddf;};return a0_0x13d2();}async function maybeUpdateWrapper(_0x32589a,_0x2e7ed0){const _0x177de5=a0_0x430b45;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x231fdc=latestWrapperVersion(_0x2e7ed0);if(!_0x231fdc||compareSemver(_0x231fdc,WRAPPER_VERSION)<=0x0)return![];console[_0x177de5(0x1fe)](_0x177de5(0x20d)+'ilable:\x20'+WRAPPER_VERSION+_0x177de5(0x224)+_0x231fdc),console[_0x177de5(0x1fe)]('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0x231fdc+'\x20from\x20'+_0x2e7ed0+(_0x177de5(0x223)+_0x177de5(0x225)));const _0x1054fe=installWrapperVersion(_0x231fdc,_0x2e7ed0);if(!_0x1054fe['ok']){console['warn'](_0x177de5(0x25f)+'date\x20failed;\x20continu'+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x1054fe[_0x177de5(0x286)])console[_0x177de5(0x1fe)](_0x1054fe['output'][_0x177de5(0x22f)](/\r?\n/)['slice'](-0xc)[_0x177de5(0x28a)]('\x0a'));return console['warn'](_0x177de5(0x1f6)+'ate:\x20'+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0x231fdc,_0x2e7ed0)),![];}console['warn']('[wrapper]\x20wrapper\x20up'+'dated\x20to\x20'+_0x231fdc+_0x177de5(0x271));const _0x1f554c=process['argv'][0x1],_0x339e1d=(0x0,import_child_process3['spawnSync'])(process['execPath'],[_0x1f554c,..._0x32589a],{'stdio':_0x177de5(0x274),'env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x231fdc},'shell':![]});process[_0x177de5(0x252)](_0x339e1d['status']??0x0);}function findCoreScript(){const _0x46fc3a=a0_0x430b45,_0x47b6c2=String(process.env.WHALENT_CORE_ENTRY||'')['trim'](),_0x482f23=['1',_0x46fc3a(0x27e),'yes','on'][_0x46fc3a(0x20c)](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')[_0x46fc3a(0x250)]()[_0x46fc3a(0x255)]());if(_0x47b6c2&&_0x482f23&&fs[_0x46fc3a(0x280)](_0x47b6c2))return _0x47b6c2;const _0x3df470=[],_0x2f53e3=_0x2fd0dd=>{const _0x2aac9a=_0x46fc3a;if(fs[_0x2aac9a(0x280)](_0x2fd0dd)&&!_0x3df470['includes'](_0x2fd0dd))_0x3df470['push'](_0x2fd0dd);};if(_0x47b6c2)_0x2f53e3(_0x47b6c2);const _0x5efffa=npmRootGlobal();if(_0x5efffa){const _0x3c3ba1=path2[_0x46fc3a(0x28a)](_0x5efffa,_0x46fc3a(0x24d),_0x46fc3a(0x26e),'dist','index.cjs');_0x2f53e3(_0x3c3ba1);}const _0x593fd6=path2['join'](wrapperBaseDir(),_0x46fc3a(0x21b));_0x2f53e3(_0x593fd6);const _0xa76d8=path2[_0x46fc3a(0x28a)](wrapperBaseDir(),'..',_0x46fc3a(0x28b),'core','dist',_0x46fc3a(0x29b));_0x2f53e3(_0xa76d8);if(_0x3df470['length']>0x0)return _0x3df470[_0x46fc3a(0x226)]((_0x4e3f4a,_0xbf8ecf)=>({'candidate':_0x4e3f4a,'index':_0xbf8ecf,'version':coreVersion(_0x4e3f4a)}))[_0x46fc3a(0x23d)]((_0x2642bb,_0x282c29)=>{const _0x57d55a=_0x46fc3a,_0x4e488b=compareSemver(_0x282c29[_0x57d55a(0x234)],_0x2642bb[_0x57d55a(0x234)]);if(_0x4e488b!==0x0)return _0x4e488b;return _0x282c29[_0x57d55a(0x25b)]-_0x2642bb['index'];})[0x0][_0x46fc3a(0x268)];throw new Error('whalent\x20core\x20runtime'+_0x46fc3a(0x253)+'@whalent/agent-core\x20'+'or\x20rebuild\x20@whalent/'+'agent');}function coreVersion(_0x47f95d=findCoreScript()){const _0x133bfc=a0_0x430b45,_0x4673cf=(0x0,import_child_process3[_0x133bfc(0x24b)])(process[_0x133bfc(0x279)],[_0x47f95d,_0x133bfc(0x244)],{'encoding':'utf8','timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x19bf42=(_0x4673cf[_0x133bfc(0x275)]||'')+'\x0a'+(_0x4673cf[_0x133bfc(0x21f)]||'');return _0x19bf42[_0x133bfc(0x247)](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x116880){const _0x1ad6a9=a0_0x430b45;try{return fs['accessSync'](_0x116880,fs['constants'][_0x1ad6a9(0x1fa)]),!![];}catch{return![];}}function shellQuote(_0x570356){return'\x27'+_0x570356['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';}function coreNodePtySpawnHelperPath(_0x4ed613){const _0x3d6ff1=a0_0x430b45;if(process[_0x3d6ff1(0x292)]!==_0x3d6ff1(0x209))return'';try{const _0xd5be15=(0x0,import_module['createRequire'])(_0x4ed613),_0x33f655=_0xd5be15[_0x3d6ff1(0x29c)]('node-pty'),_0x57e6df=path2['resolve'](path2[_0x3d6ff1(0x249)](_0x33f655),'..');return path2['join'](_0x57e6df,'prebuilds','darwin-'+process[_0x3d6ff1(0x229)],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x1b7db5){const _0x229a2f=a0_0x430b45,_0x3b92ee=coreNodePtySpawnHelperPath(_0x1b7db5);if(!_0x3b92ee||CHECKED_PTY_HELPERS[_0x229a2f(0x221)](_0x3b92ee))return;CHECKED_PTY_HELPERS['add'](_0x3b92ee);if(!fs['existsSync'](_0x3b92ee)){console['warn'](_0x229a2f(0x201)+_0x229a2f(0x210)+_0x229a2f(0x284)+_0x3b92ee);return;}if(isExecutable(_0x3b92ee))return;try{const _0x2464b9=fs['statSync'](_0x3b92ee)[_0x229a2f(0x27a)];fs['chmodSync'](_0x3b92ee,_0x2464b9|0x1ed);}catch{}if(isExecutable(_0x3b92ee)){console[_0x229a2f(0x1fe)]('[wrapper]\x20fixed\x20macO'+'S\x20node-pty\x20spawn-hel'+'per\x20executable\x20bit:\x20'+_0x3b92ee);return;}console['warn']('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20is'+_0x229a2f(0x232)+_0x3b92ee),console[_0x229a2f(0x1fe)](_0x229a2f(0x27b)+_0x229a2f(0x260)+_0x229a2f(0x203)),console[_0x229a2f(0x1fe)](_0x229a2f(0x213)+shellQuote(_0x3b92ee)),console[_0x229a2f(0x1fe)]('\x20\x20ls\x20-l\x20\x22$HELPER\x22'),console[_0x229a2f(0x1fe)](_0x229a2f(0x25a));}function printVersion(){const _0x4bfcf6=a0_0x430b45;let _0x352fd9='';try{_0x352fd9=coreVersion();}catch{}console[_0x4bfcf6(0x1f4)]('whalent-agent\x20'+WRAPPER_VERSION),console[_0x4bfcf6(0x1f4)]('wrapper\x20'+WRAPPER_VERSION),console[_0x4bfcf6(0x1f4)]('core\x20'+(_0x352fd9||'not\x20installed'));}function directCore(_0x58fbd8){const _0x33f315=a0_0x430b45,_0x1db4a7=findCoreScript();checkMacNodePtySpawnHelper(_0x1db4a7);const _0x1d45b1=(0x0,import_child_process3[_0x33f315(0x24b)])(process['execPath'],[_0x1db4a7,..._0x58fbd8],{'stdio':_0x33f315(0x274),'env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x1db4a7},'shell':![]});process['exit'](_0x1d45b1['status']??0x0);}function shouldSupervise(_0x203096){const _0x214b59=a0_0x430b45;if(_0x203096[_0x214b59(0x20c)](_0x214b59(0x202)))return![];if(_0x203096[_0x214b59(0x20c)](_0x214b59(0x207))||_0x203096[0x0]===_0x214b59(0x257))return![];const _0x437ed6=_0x203096[0x0]||'';if(_0x437ed6==='ls'||_0x437ed6==='status'||_0x437ed6==='ps')return![];if(_0x437ed6===_0x214b59(0x206)||_0x437ed6===_0x214b59(0x217))return![];if(_0x203096['includes']('--help')||_0x203096['includes']('-h'))return![];return!![];}function installCoreVersion(_0x26dbf7){const _0x52295e=a0_0x430b45,_0x250edb=resolveExecutablePath('npm');if(!_0x250edb)return{'ok':![],'output':_0x52295e(0x1f0)+'H'};const _0x2fdd27=CORE_PKG_NAME+'@'+_0x26dbf7,_0x465a6d=run(_0x250edb,['install','-g',_0x2fdd27,npmRegistryArg()]),_0x40dc67=((_0x465a6d[_0x52295e(0x275)]||'')+'\x0a'+(_0x465a6d['stderr']||''))[_0x52295e(0x250)]();return{'ok':_0x465a6d['status']===0x0,'output':_0x40dc67};}async function superviseCore(_0x5d34a0){const _0x3fbe78=a0_0x430b45;let _0x2c9fad=![],_0x5b4f20=null;const _0x5199ab=[];let _0x38de87=MIN_RESTART_DELAY_MS;const _0x22b341=()=>{const _0xcb1d2e=a0_0x3e6c;_0x2c9fad=!![];if(_0x5b4f20&&!_0x5b4f20['killed'])try{_0x5b4f20['kill'](_0xcb1d2e(0x24e));}catch{}else process[_0xcb1d2e(0x252)](0x0);};process['on']('SIGINT',_0x22b341),process['on'](_0x3fbe78(0x24e),_0x22b341);while(!![]){const _0x3ff7f4=findCoreScript();checkMacNodePtySpawnHelper(_0x3ff7f4);const _0x4674c6={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x3ff7f4},_0x371db9=readUpgradeState(),_0x740dcd=!!_0x371db9?.['pending'];let _0x2e4357=![],_0x530058=null,_0x148cd5='';const _0xa3e47=[],_0xb9f42a=0xc;console['log']('[wrapper]\x20starting\x20c'+'ore:\x20'+_0x3ff7f4),_0x5b4f20=(0x0,import_child_process3[_0x3fbe78(0x227)])(process[_0x3fbe78(0x279)],[_0x3ff7f4,..._0x5d34a0],{'env':_0x4674c6,'stdio':[_0x3fbe78(0x274),'pipe',_0x3fbe78(0x28c)]});const _0x60320a=()=>{const _0x33ceb3=_0x3fbe78;if(_0x2e4357)return;_0x2e4357=!![];if(_0x530058)clearTimeout(_0x530058);_0x5199ab[_0x33ceb3(0x256)]=0x0,_0x38de87=MIN_RESTART_DELAY_MS;const _0x5d7b68=readUpgradeState();_0x5d7b68?.['pending']&&(writeUpgradeState({..._0x5d7b68,'pending':![],'rollback':![],'health_status':'healthy'}),console[_0x33ceb3(0x1f4)]('[wrapper]\x20core\x20upgra'+_0x33ceb3(0x26d)+(_0x5d7b68[_0x33ceb3(0x216)]||_0x5d7b68['target_version']||'')));},_0x22c360=(_0xe230a3,_0x4ab2b4=![])=>{const _0x51a9ab=_0x3fbe78,_0x41c17c=_0xe230a3['toString']();(_0x4ab2b4?process['stderr']:process[_0x51a9ab(0x275)])['write'](_0x41c17c);if(_0x4ab2b4)for(const _0x93402c of _0x41c17c['split'](/\r?\n/)){if(!_0x93402c['trim']())continue;_0xa3e47['push'](_0x93402c);if(_0xa3e47['length']>_0xb9f42a)_0xa3e47['shift']();const _0x42f7a3=_0x93402c['match'](FATAL_PATTERN);if(_0x42f7a3)_0x148cd5=_0x42f7a3[0x0];}(_0x41c17c['includes'](_0x51a9ab(0x236))||_0x41c17c[_0x51a9ab(0x20c)](_0x51a9ab(0x20f)+'achine')||_0x41c17c[_0x51a9ab(0x20c)]('Gateway:\x20connected'))&&_0x60320a();};_0x5b4f20[_0x3fbe78(0x275)]?.['on'](_0x3fbe78(0x283),_0x19e298=>_0x22c360(_0x19e298,![])),_0x5b4f20[_0x3fbe78(0x21f)]?.['on'](_0x3fbe78(0x283),_0x342091=>_0x22c360(_0x342091,!![]));_0x740dcd&&(_0x530058=setTimeout(()=>{const _0x450244=_0x3fbe78;if(_0x2e4357||!_0x5b4f20||_0x5b4f20['killed'])return;console['error'](_0x450244(0x267)+_0x450244(0x231)+_0x450244(0x24f)+'ack');try{_0x5b4f20[_0x450244(0x27f)](_0x450244(0x24e));}catch{}},HEALTH_TIMEOUT_MS));const _0x149c56=await new Promise(_0x5ef3dd=>{const _0x59cddd=_0x3fbe78;_0x5b4f20['once'](_0x59cddd(0x252),(_0xdff442,_0x49cd34)=>_0x5ef3dd({'code':_0xdff442,'signal':_0x49cd34}));});if(_0x530058)clearTimeout(_0x530058);_0x5b4f20=null;if(_0x2c9fad)process[_0x3fbe78(0x252)](_0x149c56['code']??0x0);const _0x5c2a7d=readUpgradeState();if(_0x5c2a7d?.['pending']&&!_0x2e4357){const _0x49b2c5=String(_0x5c2a7d['previous_core_versio'+'n']||'')[_0x3fbe78(0x250)]();if(_0x49b2c5){console['error']('[wrapper]\x20rolling\x20ba'+'ck\x20core\x20to\x20'+_0x49b2c5);const _0x3c7d26=installCoreVersion(_0x49b2c5);writeUpgradeState({..._0x5c2a7d,'pending':![],'rollback':!![],'health_status':_0x3c7d26['ok']?_0x3fbe78(0x285):'rollback_failed','error':_0x3c7d26['ok']?'':_0x3c7d26['output']});}else writeUpgradeState({..._0x5c2a7d,'pending':![],'rollback':!![],'health_status':_0x3fbe78(0x295),'error':'previous\x20core\x20versio'+'n\x20unknown'});}const _0x1a95ad=_0x149c56['code']===SUPERVISED_RESTART_CODE||_0x5c2a7d?.['pending'];if(!_0x1a95ad&&_0x149c56[_0x3fbe78(0x200)]===0x0)process['exit'](0x0);const _0x376596=Date[_0x3fbe78(0x25d)]();_0x5199ab['push'](_0x376596);while(_0x5199ab['length']>0x0&&_0x376596-_0x5199ab[0x0]>CRASH_WINDOW_MS){_0x5199ab['shift']();}const _0x33cdfe=_0x5199ab[_0x3fbe78(0x256)];writeLastCrash({'timestamp':_0x376596,'exit_code':_0x149c56[_0x3fbe78(0x200)],'exit_signal':_0x149c56[_0x3fbe78(0x293)]||null,'fatal_line':_0x148cd5,'raw_tail':_0xa3e47['join']('\x0a'),'consecutive_crashes':_0x33cdfe}),console['log']('[wrapper]\x20core\x20exite'+_0x3fbe78(0x241)+(_0x149c56[_0x3fbe78(0x200)]??'')+(_0x149c56['signal']?'\x20signal='+_0x149c56[_0x3fbe78(0x293)]:'')+'\x20('+_0x33cdfe+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x148cd5)console[_0x3fbe78(0x1f4)]('[wrapper]\x20last\x20fatal'+':\x20'+_0x148cd5);_0x33cdfe>=MAX_CRASHES_IN_WINDOW&&(console['error']('[wrapper]\x20core\x20faile'+'d\x20'+_0x33cdfe+'\x20times\x20within\x20'+Math[_0x3fbe78(0x211)](CRASH_WINDOW_MS/0x3e8)+('s;\x20giving\x20up.\x20Crash\x20'+_0x3fbe78(0x20e))+lastCrashFilePath()+(_0x3fbe78(0x23a)+_0x3fbe78(0x269)+'erlying\x20issue\x20is\x20fix'+'ed.')),process['exit'](0x1)),console['log']('[wrapper]\x20restarting'+'\x20in\x20'+_0x38de87+'ms'),await new Promise(_0x2bae7b=>setTimeout(_0x2bae7b,_0x38de87)),_0x38de87=Math['min'](_0x38de87*0x2,MAX_RESTART_DELAY_MS);}}function a0_0x3e6c(_0x14994b,_0x290bd3){_0x14994b=_0x14994b-0x1ef;const _0x13d280=a0_0x13d2();let _0x3e6c2a=_0x13d280[_0x14994b];if(a0_0x3e6c['BdIpyr']===undefined){var _0x9cbe84=function(_0x2e8bdf){const _0x9cf320='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x68ce6='',_0x538917='';for(let _0x25cbf5=0x0,_0x57bf7c,_0x344d9c,_0x21b5e1=0x0;_0x344d9c=_0x2e8bdf['charAt'](_0x21b5e1++);~_0x344d9c&&(_0x57bf7c=_0x25cbf5%0x4?_0x57bf7c*0x40+_0x344d9c:_0x344d9c,_0x25cbf5++%0x4)?_0x68ce6+=String['fromCharCode'](0xff&_0x57bf7c>>(-0x2*_0x25cbf5&0x6)):0x0){_0x344d9c=_0x9cf320['indexOf'](_0x344d9c);}for(let _0x4d0c8a=0x0,_0x317420=_0x68ce6['length'];_0x4d0c8a<_0x317420;_0x4d0c8a++){_0x538917+='%'+('00'+_0x68ce6['charCodeAt'](_0x4d0c8a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x538917);};a0_0x3e6c['ATTuSF']=_0x9cbe84,a0_0x3e6c['LHMobk']={},a0_0x3e6c['BdIpyr']=!![];}const _0x484cc2=_0x13d280[0x0],_0x21802a=_0x14994b+_0x484cc2,_0x46ac0d=a0_0x3e6c['LHMobk'][_0x21802a];return!_0x46ac0d?(_0x3e6c2a=a0_0x3e6c['ATTuSF'](_0x3e6c2a),a0_0x3e6c['LHMobk'][_0x21802a]=_0x3e6c2a):_0x3e6c2a=_0x46ac0d,_0x3e6c2a;}async function main(){const _0x568d71=a0_0x430b45,_0x18e361=process[_0x568d71(0x1fd)][_0x568d71(0x277)](0x2);if(_0x18e361[0x0]===_0x568d71(0x244)||_0x18e361[0x0]==='-v'||_0x18e361[0x0]==='version'){printVersion();return;}if((_0x18e361[0x0]===_0x568d71(0x21e)||_0x18e361[0x0]==='ls'||_0x18e361[0x0]==='ps')&&!_0x18e361[_0x568d71(0x20c)]('--json')){console[_0x568d71(0x1f4)]('wrapper\x20'+WRAPPER_VERSION);try{console['log']('core\x20'+(coreVersion()||_0x568d71(0x25c)));}catch{console['log']('core\x20not\x20installed');}}const _0x4c44cc=await selectFastNpmRegistry();await maybeUpdateWrapper(_0x18e361,_0x4c44cc);if(!shouldSupervise(_0x18e361))directCore(_0x18e361);await superviseCore(_0x18e361);}main()[a0_0x430b45(0x259)](_0x50a4f0=>{const _0x31c61e=a0_0x430b45;console[_0x31c61e(0x218)]('[wrapper]\x20Fatal\x20erro'+'r:\x20'+(_0x50a4f0?.['message']||String(_0x50a4f0))),process[_0x31c61e(0x252)](0x1);});
|
|
2
|
+
'use strict';const a0_0x2d5ed8=a0_0x269b;(function(_0x8c5890,_0x5b5c75){const _0xd6cc45=a0_0x269b,_0x11d322=_0x8c5890();while(!![]){try{const _0x36a5bb=-parseInt(_0xd6cc45(0x137))/0x1+-parseInt(_0xd6cc45(0xf1))/0x2+parseInt(_0xd6cc45(0x130))/0x3+-parseInt(_0xd6cc45(0x144))/0x4+-parseInt(_0xd6cc45(0x172))/0x5*(parseInt(_0xd6cc45(0x1a8))/0x6)+parseInt(_0xd6cc45(0x164))/0x7+parseInt(_0xd6cc45(0x11b))/0x8;if(_0x36a5bb===_0x5b5c75)break;else _0x11d322['push'](_0x11d322['shift']());}catch(_0x50bb14){_0x11d322['push'](_0x11d322['shift']());}}}(a0_0xba04,0xdaa42));var __create=Object['create'],__defProp=Object['defineProperty'],__getOwnPropDesc=Object[a0_0x2d5ed8(0xea)+a0_0x2d5ed8(0x16a)],__getOwnPropNames=Object[a0_0x2d5ed8(0xfb)],__getProtoOf=Object[a0_0x2d5ed8(0x197)],__hasOwnProp=Object['prototype'][a0_0x2d5ed8(0x198)],__copyProps=(_0x55abe1,_0x447e3f,_0x2e35c8,_0x4551ce)=>{const _0x4c6b5a=a0_0x2d5ed8;if(_0x447e3f&&typeof _0x447e3f==='object'||typeof _0x447e3f===_0x4c6b5a(0x15c)){for(let _0x448f52 of __getOwnPropNames(_0x447e3f))if(!__hasOwnProp['call'](_0x55abe1,_0x448f52)&&_0x448f52!==_0x2e35c8)__defProp(_0x55abe1,_0x448f52,{'get':()=>_0x447e3f[_0x448f52],'enumerable':!(_0x4551ce=__getOwnPropDesc(_0x447e3f,_0x448f52))||_0x4551ce[_0x4c6b5a(0xd9)]});}return _0x55abe1;},__toESM=(_0x3e6140,_0x2cfc04,_0x174b22)=>(_0x174b22=_0x3e6140!=null?__create(__getProtoOf(_0x3e6140)):{},__copyProps(_0x2cfc04||!_0x3e6140||!_0x3e6140[a0_0x2d5ed8(0x193)]?__defProp(_0x174b22,'default',{'value':_0x3e6140,'enumerable':!![]}):_0x174b22,_0x3e6140)),import_child_process3=require('child_process'),fs=__toESM(require('fs'),0x1),import_module=require(a0_0x2d5ed8(0x134)),path2=__toESM(require('path'),0x1),readline=__toESM(require('readline'),0x1),import_child_process2=require(a0_0x2d5ed8(0x19d)),import_fs=require('fs'),import_path=require(a0_0x2d5ed8(0x174)),import_child_process=require(a0_0x2d5ed8(0x19d)),DEFAULT_NPM_REGISTRY=a0_0x2d5ed8(0x12e)+a0_0x2d5ed8(0x1b2),CHINA_NPM_REGISTRY='https://registry.npm'+'mirror.com',REGISTRY_PROBE_TIMEOUT_MS=0xbb8,REGISTRY_CACHE_TTL_MS=0xa*0x3c*0x3e8,selectedRegistryCache=null;function preferredNpmRegistry(){const _0x25f2e7=a0_0x2d5ed8,_0xdd9b2=explicitNpmRegistry();if(_0xdd9b2)return _0xdd9b2;if(selectedRegistryCache&&Date['now']()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x25f2e7(0x1a1)];return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryCandidates(_0x459846=preferredNpmRegistry()){const _0x340918=explicitNpmRegistry();if(_0x340918)return[_0x340918];const _0x22c2d5=normalizeRegistry(_0x459846)||DEFAULT_NPM_REGISTRY,_0x57d679=_0x22c2d5===CHINA_NPM_REGISTRY?DEFAULT_NPM_REGISTRY:CHINA_NPM_REGISTRY;return Array['from'](new Set([_0x22c2d5,_0x57d679]));}async function selectFastNpmRegistry(_0x3fd142=REGISTRY_PROBE_TIMEOUT_MS){const _0xd5bf16=a0_0x2d5ed8,_0xd17cb8=explicitNpmRegistry();if(_0xd17cb8)return rememberNpmRegistry(_0xd17cb8),_0xd17cb8;if(selectedRegistryCache&&Date['now']()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache['registry'];const _0x59d007=npmRegistryCandidates(isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY),_0x489227=_0x59d007['map'](()=>new AbortController());let _0x523ed7=-0x1;const _0x16dbf2=_0x59d007[_0xd5bf16(0x1ac)]((_0x140520,_0x16e73e)=>probeRegistry200(_0x140520,_0x3fd142,_0x489227[_0x16e73e][_0xd5bf16(0x148)])[_0xd5bf16(0x160)](()=>({'registry':_0x140520,'index':_0x16e73e})));try{const _0x2da501=await Promise[_0xd5bf16(0xfa)](_0x16dbf2);_0x523ed7=_0x2da501[_0xd5bf16(0x16d)];const _0x1c7030=_0x2da501[_0xd5bf16(0x1a1)];return rememberNpmRegistry(_0x1c7030),_0x1c7030;}catch{const _0x1385ef=_0x59d007[0x0]||DEFAULT_NPM_REGISTRY;return rememberNpmRegistry(_0x1385ef),_0x1385ef;}finally{_0x489227['forEach']((_0x422d7e,_0x4d9527)=>{if(_0x4d9527!==_0x523ed7)_0x422d7e['abort']();});}}function rememberNpmRegistry(_0x3bec09){const _0x3d7151=a0_0x2d5ed8,_0xa9f54e=normalizeRegistry(_0x3bec09);if(_0xa9f54e)selectedRegistryCache={'registry':_0xa9f54e,'ts':Date[_0x3d7151(0x13b)]()};}function npmRegistryArg(_0x406b63=preferredNpmRegistry()){return'--registry='+(normalizeRegistry(_0x406b63)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x21f7f6,_0x8206b9=preferredNpmRegistry()){return'npm\x20install\x20-g\x20'+_0x21f7f6+'\x20'+npmRegistryArg(_0x8206b9);}function isChineseLocale(){const _0x220f1e=a0_0x2d5ed8,_0x567664=[process.env.LC_ALL,process.env.LC_MESSAGES,process.env.LANG,process.env.LANGUAGE][_0x220f1e(0x11c)](Boolean)[_0x220f1e(0x146)]('\x20');if(/(^|[_.-])zh([_.-]|$)|chinese|china|cn\b/i[_0x220f1e(0x108)](_0x567664))return!![];try{const _0x43ebb9=Intl['DateTimeFormat']()[_0x220f1e(0x1a2)]()['locale']||'';return/(^|-)zh($|-)|-CN\b/i['test'](_0x43ebb9);}catch{return![];}}function explicitNpmRegistry(){return normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');}function normalizeRegistry(_0x4cbd1e){const _0x5b11be=a0_0x2d5ed8;return String(_0x4cbd1e||'')[_0x5b11be(0xee)]()['replace'](/\/+$/,'');}function probeRegistry200(_0x1d494f,_0x210641,_0x5aa41c){return new Promise((_0x1c3a0c,_0x2bb5ab)=>{const _0xdf48a3=a0_0x269b;let _0x5eae94=![];const _0x40f99a=_0x143592=>{const _0x56eac2=a0_0x269b;if(_0x5eae94)return;_0x5eae94=!![],clearTimeout(_0x35bd34),_0x5aa41c?.['removeEventListener'](_0x56eac2(0x112),_0xb3b039);if(!_0x3b6f36['killed'])try{_0x3b6f36[_0x56eac2(0x126)](_0x56eac2(0x121));}catch{}if(_0x143592)_0x2bb5ab(_0x143592);else _0x1c3a0c();},_0xb3b039=()=>{const _0x20f43c=a0_0x269b;_0x40f99a(new Error(_0x20f43c(0x100)+'ed'));},_0x35bd34=setTimeout(()=>{const _0x46e9f9=a0_0x269b;_0x40f99a(new Error(_0x46e9f9(0xf9)+'\x20out'));},_0x210641);_0x35bd34[_0xdf48a3(0x12c)]?.();const _0x3b6f36=(0x0,import_child_process['spawn'])(process[_0xdf48a3(0xe8)],['-e',REGISTRY_PROBE_SCRIPT,normalizeRegistry(_0x1d494f)||DEFAULT_NPM_REGISTRY,String(_0x210641)],{'stdio':'ignore','shell':![],'windowsHide':!![]});_0x3b6f36['on']('error',_0x40f99a),_0x3b6f36['on'](_0xdf48a3(0xe4),_0xd6e068=>{const _0x204c81=_0xdf48a3;if(_0xd6e068===0x0)_0x40f99a();else _0x40f99a(new Error('registry\x20probe\x20faile'+_0x204c81(0x152)+(_0xd6e068??_0x204c81(0x148))));}),_0x5aa41c?.['addEventListener']('abort',_0xb3b039,{'once':!![]});if(_0x5aa41c?.[_0xdf48a3(0x14c)]){_0xb3b039();return;}});}var REGISTRY_PROBE_SCRIPT=a0_0x2d5ed8(0x199)+a0_0x2d5ed8(0x195)+'ps\x20=\x20require(\x27https\x27'+');\x0aconst\x20registry\x20=\x20'+a0_0x2d5ed8(0x116)+a0_0x2d5ed8(0x124)+'/+$/,\x20\x27\x27);\x0aconst\x20tim'+a0_0x2d5ed8(0x175)+'ess.argv[2]\x20||\x203000)'+a0_0x2d5ed8(0x1ad)+'=\x20new\x20URL(\x27/-/ping\x27,'+'\x20registry\x20+\x20\x27/\x27);\x0aco'+'nst\x20mod\x20=\x20url.protoc'+'ol\x20===\x20\x27https:\x27\x20?\x20ht'+'tps\x20:\x20http;\x0alet\x20done'+'\x20=\x20false;\x0aconst\x20fini'+'sh\x20=\x20(code)\x20=>\x20{\x0a\x20\x20i'+a0_0x2d5ed8(0x122)+'one\x20=\x20true;\x0a\x20\x20clearT'+'imeout(timer);\x0a\x20\x20try'+a0_0x2d5ed8(0x157)+a0_0x2d5ed8(0x118)+'xit(code);\x0a};\x0aconst\x20'+'timer\x20=\x20setTimeout(('+a0_0x2d5ed8(0x18a)+a0_0x2d5ed8(0x162)+a0_0x2d5ed8(0x101)+a0_0x2d5ed8(0x12f)+'meout:\x20timeoutMs,\x0a\x20\x20'+a0_0x2d5ed8(0x120)+a0_0x2d5ed8(0x15a)+a0_0x2d5ed8(0x183)+'stry-probe\x27,\x20Accept:'+a0_0x2d5ed8(0x11f)+a0_0x2d5ed8(0x182)+'\x20(res)\x20=>\x20{\x0a\x20\x20res.re'+a0_0x2d5ed8(0x154)+a0_0x2d5ed8(0x16b)+a0_0x2d5ed8(0x102)+a0_0x2d5ed8(0x106)+a0_0x2d5ed8(0x173)+a0_0x2d5ed8(0x176)+'imeout\x27,\x20()\x20=>\x20finis'+a0_0x2d5ed8(0x14a)+a0_0x2d5ed8(0x13d)+a0_0x2d5ed8(0x1b5),INSTALL_HINT={'codex':'npm\x20install\x20-g\x20@open'+'ai/codex','claude':'npm\x20install\x20-g\x20@anth'+'ropic-ai/claude-code','opencode':'npm\x20install\x20-g\x20openc'+a0_0x2d5ed8(0x125),'whalent':npmInstallCommand(a0_0x2d5ed8(0x155))+'\x20--prefer-online'};function isWindowsCmdFile(_0x437c44){const _0x1f7bae=a0_0x2d5ed8;return process['platform']===_0x1f7bae(0x180)&&/\.(cmd|bat)$/i[_0x1f7bae(0x108)](_0x437c44||'');}function quoteCmdArg(_0x40c531){const _0xa22a79=a0_0x2d5ed8,_0x592b22=String(_0x40c531??'');if(_0x592b22&&!/[\s"&|<>^%]/[_0xa22a79(0x108)](_0x592b22))return _0x592b22;return'\x22'+_0x592b22['replace'](/(["^&|<>%])/g,_0xa22a79(0x165))+'\x22';}function cmdFallbackArgs(_0x9536aa,_0x5be880){const _0x206059=a0_0x2d5ed8;return['/d','/s','/c',[quoteCmdArg(_0x9536aa),..._0x5be880['map'](quoteCmdArg)][_0x206059(0x146)]('\x20')];}function resolveExecutablePath(_0x5a1a79){const _0x36bdf9=a0_0x2d5ed8;if(!_0x5a1a79)return null;if(_0x5a1a79[_0x36bdf9(0x1b1)]('/')||_0x5a1a79['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/['test'](_0x5a1a79))return(0x0,import_fs['existsSync'])(_0x5a1a79)?_0x5a1a79:_0x5a1a79;const _0x4f5b91=process['platform']==='win32',_0x50f169=_0x4f5b91?_0x36bdf9(0xe5):'which';try{const _0x47b515=(0x0,import_child_process2['spawnSync'])(_0x50f169,[_0x5a1a79],{'encoding':_0x36bdf9(0xda),'timeout':0xbb8,'shell':![]});if(_0x47b515['status']===0x0){const _0x5cc509=(_0x47b515['stdout']||'')[_0x36bdf9(0xee)]()[_0x36bdf9(0xf3)](/\r?\n/)['filter'](Boolean);if(_0x5cc509['length']===0x0)return null;if(_0x4f5b91)for(const _0x16c305 of[_0x36bdf9(0x150),'.cmd','.bat',_0x36bdf9(0xdf)]){const _0x61c4c6=_0x5cc509['find'](_0x454946=>_0x454946['toLowerCase']()[_0x36bdf9(0x16c)](_0x16c305));if(_0x61c4c6)return _0x61c4c6;}return _0x5cc509[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x35b46c){const _0x3bc436=a0_0x2d5ed8;if(process[_0x3bc436(0x171)]!==_0x3bc436(0x180))return null;if(!/\.(cmd|bat)$/i['test'](_0x35b46c))return null;let _0x48e846;try{_0x48e846=(0x0,import_fs['readFileSync'])(_0x35b46c,_0x3bc436(0xda));}catch{return null;}const _0x290d20=_0x48e846[_0x3bc436(0x161)](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x290d20){const _0x686084=(0x0,import_path[_0x3bc436(0x187)])((0x0,import_path[_0x3bc436(0xf6)])(_0x35b46c),_0x290d20[0x2]);if((0x0,import_fs[_0x3bc436(0x110)])(_0x686084))return{'type':'node','path':_0x686084};}const _0x1c82c9=_0x48e846[_0x3bc436(0x161)](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x1c82c9){const _0x449db3=(0x0,import_path[_0x3bc436(0x187)])((0x0,import_path['dirname'])(_0x35b46c),_0x1c82c9[0x2]);if((0x0,import_fs[_0x3bc436(0x110)])(_0x449db3))return{'type':'exe','path':_0x449db3};}return null;}function safeSpawnSync(_0x3adecf,_0x11b605,_0x448e15={}){const _0x4ca417=a0_0x2d5ed8,_0x414d10=unwrapWindowsCmdShim(_0x3adecf);if(_0x414d10?.['type']===_0x4ca417(0xfd))return(0x0,import_child_process2[_0x4ca417(0x11d)])(process[_0x4ca417(0xe8)],[_0x414d10['path'],..._0x11b605],_0x448e15);if(_0x414d10?.[_0x4ca417(0x151)]===_0x4ca417(0x11a))return(0x0,import_child_process2['spawnSync'])(_0x414d10['path'],_0x11b605,_0x448e15);if(isWindowsCmdFile(_0x3adecf))return(0x0,import_child_process2['spawnSync'])(process.env.ComSpec||_0x4ca417(0x105),cmdFallbackArgs(_0x3adecf,_0x11b605),_0x448e15);return(0x0,import_child_process2['spawnSync'])(_0x3adecf,_0x11b605,_0x448e15);}var os=__toESM(require('os'),0x1),path=__toESM(require('path'),0x1),PROFILE_ROOT=path['join'](os['homedir'](),'.whalent-agent','profiles'),WHALENT_AGENT_DEFAULT_HOME=path['join'](os['homedir'](),a0_0x2d5ed8(0xf8)),WRAPPER_PKG_NAME=a0_0x2d5ed8(0x155),CORE_PKG_NAME=a0_0x2d5ed8(0x10e),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 _0x17772d=a0_0x2d5ed8;return path2[_0x17772d(0x146)](configDir(),_0x17772d(0x1b3));}function lastCrashFilePath(){return path2['join'](configDir(),'last-crash.json');}function writeLastCrash(_0x19206e){try{fs['mkdirSync'](configDir(),{'recursive':!![]});const _0x278090={..._0x19206e,'reported':![]};fs['writeFileSync'](lastCrashFilePath(),JSON['stringify'](_0x278090,null,0x2),'utf-8');}catch{}}function readWrapperVersion(){const _0x59f90d=a0_0x2d5ed8;try{const _0x36ffa8=JSON['parse'](fs['readFileSync'](path2[_0x59f90d(0x146)](wrapperBaseDir(),'..','package.json'),_0x59f90d(0xda)));return String(_0x36ffa8['version']||'0.0.0');}catch{return'0.0.0';}}function readUpgradeState(){const _0x49a39d=a0_0x2d5ed8;try{return JSON['parse'](fs[_0x49a39d(0x143)](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0x575993){try{fs['mkdirSync'](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON['stringify']({..._0x575993,'updated_at':Date['now']()},null,0x2),'utf-8');}catch{}}function run(_0xb475e2,_0x121ce7,_0x4b194a=process.env){const _0x5dae2b=a0_0x2d5ed8;return safeSpawnSync(_0xb475e2,_0x121ce7,{'encoding':_0x5dae2b(0x115),'timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x4b194a,'shell':![]});}function runNpmView(_0x49f1aa){const _0x1663e0=a0_0x2d5ed8,_0x390708=resolveExecutablePath('npm');if(!_0x390708)return{'status':0x7f,'stdout':'','stderr':'npm\x20not\x20found','error':new Error(_0x1663e0(0x18c))};return safeSpawnSync(_0x390708,_0x49f1aa,{'encoding':_0x1663e0(0x115),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x2a09ba=a0_0x2d5ed8,_0x1b360e=resolveExecutablePath(_0x2a09ba(0xfe));if(!_0x1b360e)return'';const _0x1a44e4=run(_0x1b360e,[_0x2a09ba(0x1a9),'-g']);if(_0x1a44e4[_0x2a09ba(0xf5)]!==0x0)return'';return String(_0x1a44e4['stdout']||'')['trim']();}function compareSemver(_0x4fb9ca,_0xae0125){const _0x42d1d4=a0_0x2d5ed8,_0x297890=String(_0x4fb9ca||'')[_0x42d1d4(0x12a)](/^v/,'')['split'](/[.-]/)['map'](_0x146d76=>Number['parseInt'](_0x146d76,0xa)||0x0),_0x48ff37=String(_0xae0125||'')[_0x42d1d4(0x12a)](/^v/,'')[_0x42d1d4(0xf3)](/[.-]/)[_0x42d1d4(0x1ac)](_0x6b8eea=>Number['parseInt'](_0x6b8eea,0xa)||0x0);for(let _0x1a8380=0x0;_0x1a8380<Math[_0x42d1d4(0x18b)](_0x297890[_0x42d1d4(0x158)],_0x48ff37['length'],0x3);_0x1a8380++){const _0x2c9c55=_0x297890[_0x1a8380]||0x0,_0x681041=_0x48ff37[_0x1a8380]||0x0;if(_0x2c9c55>_0x681041)return 0x1;if(_0x2c9c55<_0x681041)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0xf5a053=a0_0x2d5ed8,_0x223829=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0xf5a053(0xee)]()['toLowerCase']();return _0x223829==='1'||_0x223829===_0xf5a053(0x196)||_0x223829===_0xf5a053(0xf0)||_0x223829==='on';}function latestWrapperVersion(_0x4157de){const _0x5d904b=a0_0x2d5ed8,_0x588f27=runNpmView(['view',WRAPPER_PKG_NAME+'@latest','version',npmRegistryArg(_0x4157de)]);if(_0x588f27[_0x5d904b(0xf5)]!==0x0)return'';return String(_0x588f27['stdout']||'')['trim']()[_0x5d904b(0xf3)](/\r?\n/)['filter'](Boolean)['pop']()||'';}function installWrapperVersion(_0x258338,_0x426053){const _0xc61c0b=a0_0x2d5ed8,_0x4e4635=resolveExecutablePath(_0xc61c0b(0xfe));if(!_0x4e4635)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x5a41ba=run(_0x4e4635,['install','-g',WRAPPER_PKG_NAME+'@'+_0x258338,npmRegistryArg(_0x426053)]),_0x327237=((_0x5a41ba['stdout']||'')+'\x0a'+(_0x5a41ba[_0xc61c0b(0x177)]||''))['trim']();return{'ok':_0x5a41ba[_0xc61c0b(0xf5)]===0x0,'output':_0x327237};}async function maybeUpdateWrapper(_0x46441d,_0x38562e){const _0x106046=a0_0x2d5ed8;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x2a72fa=latestWrapperVersion(_0x38562e);if(!_0x2a72fa||compareSemver(_0x2a72fa,WRAPPER_VERSION)<=0x0)return![];console[_0x106046(0x14f)]('[wrapper]\x20update\x20ava'+'ilable:\x20'+WRAPPER_VERSION+'\x20->\x20'+_0x2a72fa),console[_0x106046(0x14f)](_0x106046(0x159)+'\x20'+WRAPPER_PKG_NAME+'@'+_0x2a72fa+_0x106046(0x132)+_0x38562e+(_0x106046(0x188)+_0x106046(0x19c)));const _0xf22023=installWrapperVersion(_0x2a72fa,_0x38562e);if(!_0xf22023['ok']){console[_0x106046(0x14f)](_0x106046(0x1a5)+_0x106046(0x123)+_0x106046(0x10b)+WRAPPER_VERSION);if(_0xf22023['output'])console[_0x106046(0x14f)](_0xf22023['output']['split'](/\r?\n/)[_0x106046(0x19a)](-0xc)['join']('\x0a'));return console['warn']('[wrapper]\x20Manual\x20upd'+'ate:\x20'+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0x2a72fa,_0x38562e)),![];}console['warn']('[wrapper]\x20wrapper\x20up'+'dated\x20to\x20'+_0x2a72fa+_0x106046(0x1ab));const _0x50538e=process[_0x106046(0x145)][0x1],_0xd3c35e=(0x0,import_child_process3[_0x106046(0x11d)])(process['execPath'],[_0x50538e,..._0x46441d],{'stdio':_0x106046(0x13c),'env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x2a72fa},'shell':![]});process['exit'](_0xd3c35e[_0x106046(0xf5)]??0x0);}function findCoreScript(){const _0x218a72=a0_0x2d5ed8,_0x29cb49=String(process.env.WHALENT_CORE_ENTRY||'')[_0x218a72(0xee)](),_0x43fc5d=['1',_0x218a72(0x196),'yes','on']['includes'](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()[_0x218a72(0x104)]());if(_0x29cb49&&_0x43fc5d&&fs[_0x218a72(0x110)](_0x29cb49))return _0x29cb49;const _0x570588=[],_0x311847=_0x1217a6=>{const _0x381af7=_0x218a72;if(fs[_0x381af7(0x110)](_0x1217a6)&&!_0x570588['includes'](_0x1217a6))_0x570588[_0x381af7(0x166)](_0x1217a6);};if(_0x29cb49)_0x311847(_0x29cb49);const _0x5685f4=npmRootGlobal();if(_0x5685f4){const _0x65f786=path2['join'](_0x5685f4,_0x218a72(0x1a3),'agent-core','dist','index.cjs');_0x311847(_0x65f786);}const _0x38bb78=path2['join'](wrapperBaseDir(),_0x218a72(0xe6));_0x311847(_0x38bb78);const _0x510d4b=path2['join'](wrapperBaseDir(),'..','packages','core','dist',_0x218a72(0x15b));_0x311847(_0x510d4b);if(_0x570588[_0x218a72(0x158)]>0x0)return _0x570588['map']((_0xf6f8b4,_0x22f761)=>({'candidate':_0xf6f8b4,'index':_0x22f761,'version':coreVersion(_0xf6f8b4)}))[_0x218a72(0x140)]((_0x56cdb8,_0x49498b)=>{const _0x43c2ff=_0x218a72,_0x2e04c3=compareSemver(_0x49498b[_0x43c2ff(0x13f)],_0x56cdb8[_0x43c2ff(0x13f)]);if(_0x2e04c3!==0x0)return _0x2e04c3;return _0x49498b[_0x43c2ff(0x16d)]-_0x56cdb8['index'];})[0x0][_0x218a72(0x13e)];throw new Error(_0x218a72(0x156)+_0x218a72(0xde)+_0x218a72(0x135)+'or\x20rebuild\x20@whalent/'+'agent');}function coreVersion(_0x3cbc93=findCoreScript()){const _0x52593f=a0_0x2d5ed8,_0x45af8d=(0x0,import_child_process3['spawnSync'])(process[_0x52593f(0xe8)],[_0x3cbc93,_0x52593f(0x1af)],{'encoding':_0x52593f(0x115),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x15117b=(_0x45af8d['stdout']||'')+'\x0a'+(_0x45af8d['stderr']||'');return _0x15117b[_0x52593f(0x161)](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x2eff0e){const _0x27c5d9=a0_0x2d5ed8;try{return fs['accessSync'](_0x2eff0e,fs[_0x27c5d9(0x15d)][_0x27c5d9(0x167)]),!![];}catch{return![];}}function shellQuote(_0x20e13e){const _0x28ae2a=a0_0x2d5ed8;return'\x27'+_0x20e13e[_0x28ae2a(0x12a)](/'/g,_0x28ae2a(0x194))+'\x27';}function coreNodePtySpawnHelperPath(_0x336e42){const _0x200429=a0_0x2d5ed8;if(process['platform']!=='darwin')return'';try{const _0x2bf0eb=(0x0,import_module['createRequire'])(_0x336e42),_0x33e1cc=_0x2bf0eb['resolve']('node-pty'),_0x1de680=path2[_0x200429(0x187)](path2[_0x200429(0xf6)](_0x33e1cc),'..');return path2[_0x200429(0x146)](_0x1de680,_0x200429(0x128),'darwin-'+process['arch'],_0x200429(0xd7));}catch{return'';}}function checkMacNodePtySpawnHelper(_0x300f61){const _0xb8c972=a0_0x2d5ed8,_0x2e0f6a=coreNodePtySpawnHelperPath(_0x300f61);if(!_0x2e0f6a||CHECKED_PTY_HELPERS['has'](_0x2e0f6a))return;CHECKED_PTY_HELPERS['add'](_0x2e0f6a);if(!fs['existsSync'](_0x2e0f6a)){console['warn'](_0xb8c972(0x179)+_0xb8c972(0x17c)+_0xb8c972(0xfc)+_0x2e0f6a);return;}if(isExecutable(_0x2e0f6a))return;try{const _0x28892f=fs[_0xb8c972(0x14d)](_0x2e0f6a)[_0xb8c972(0x1a6)];fs[_0xb8c972(0xdc)](_0x2e0f6a,_0x28892f|0x1ed);}catch{}if(isExecutable(_0x2e0f6a)){console[_0xb8c972(0x14f)]('[wrapper]\x20fixed\x20macO'+'S\x20node-pty\x20spawn-hel'+'per\x20executable\x20bit:\x20'+_0x2e0f6a);return;}console['warn']('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20is'+_0xb8c972(0x1a7)+_0x2e0f6a),console[_0xb8c972(0x14f)]('[wrapper]\x20Run\x20this\x20o'+_0xb8c972(0x190)+'PTY\x20startup:'),console[_0xb8c972(0x14f)]('\x20\x20HELPER='+shellQuote(_0x2e0f6a)),console['warn']('\x20\x20ls\x20-l\x20\x22$HELPER\x22'),console['warn'](_0xb8c972(0x185));}function a0_0x269b(_0x8b2ba8,_0x5a8674){_0x8b2ba8=_0x8b2ba8-0xd7;const _0xba04d1=a0_0xba04();let _0x269b19=_0xba04d1[_0x8b2ba8];if(a0_0x269b['fxQvmU']===undefined){var _0x221db9=function(_0x1af8d7){const _0x207384='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55abe1='',_0x447e3f='';for(let _0x2e35c8=0x0,_0x4551ce,_0x448f52,_0x3e6140=0x0;_0x448f52=_0x1af8d7['charAt'](_0x3e6140++);~_0x448f52&&(_0x4551ce=_0x2e35c8%0x4?_0x4551ce*0x40+_0x448f52:_0x448f52,_0x2e35c8++%0x4)?_0x55abe1+=String['fromCharCode'](0xff&_0x4551ce>>(-0x2*_0x2e35c8&0x6)):0x0){_0x448f52=_0x207384['indexOf'](_0x448f52);}for(let _0x2cfc04=0x0,_0x174b22=_0x55abe1['length'];_0x2cfc04<_0x174b22;_0x2cfc04++){_0x447e3f+='%'+('00'+_0x55abe1['charCodeAt'](_0x2cfc04)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x447e3f);};a0_0x269b['KijpqE']=_0x221db9,a0_0x269b['EnTrnO']={},a0_0x269b['fxQvmU']=!![];}const _0x5ef04d=_0xba04d1[0x0],_0x415e05=_0x8b2ba8+_0x5ef04d,_0x391f18=a0_0x269b['EnTrnO'][_0x415e05];return!_0x391f18?(_0x269b19=a0_0x269b['KijpqE'](_0x269b19),a0_0x269b['EnTrnO'][_0x415e05]=_0x269b19):_0x269b19=_0x391f18,_0x269b19;}function printVersion(){const _0x51f2fa=a0_0x2d5ed8;let _0x3ea45f='';try{_0x3ea45f=coreVersion();}catch{}console[_0x51f2fa(0xf7)]('whalent-agent\x20'+WRAPPER_VERSION),console['log']('wrapper\x20'+WRAPPER_VERSION),console[_0x51f2fa(0xf7)]('core\x20'+(_0x3ea45f||_0x51f2fa(0xff)));}function detectPersistenceContext(){const _0x19fbf2=a0_0x2d5ed8;let _0x492eb1='';if(process.env.STY)_0x492eb1='screen';else{if(process.env.TMUX)_0x492eb1='tmux';else{if(process.env.INVOCATION_ID||process.env.SYSTEMD_EXEC_PID)_0x492eb1=_0x19fbf2(0x149);else{if(process.env.PM2_HOME)_0x492eb1=_0x19fbf2(0x17a);else process[_0x19fbf2(0x171)]!==_0x19fbf2(0x180)&&typeof process[_0x19fbf2(0x127)]===_0x19fbf2(0x10c)&&process['ppid']===0x1&&(_0x492eb1='systemd');}}}return{'inSession':_0x492eb1,'hasScreen':process['platform']===_0x19fbf2(0x180)?![]:!!resolveExecutablePath('screen'),'hasTmux':process['platform']==='win32'?![]:!!resolveExecutablePath(_0x19fbf2(0x153))};}function persistenceCheckSkipped(){const _0x7067fa=a0_0x2d5ed8,_0x1c042e=String(process.env.WHALENT_SKIP_PERSISTENCE_CHECK||process.env.WHALENT_NO_PERSISTENCE_CHECK||'')[_0x7067fa(0xee)]()['toLowerCase']();return _0x1c042e==='1'||_0x1c042e==='true'||_0x1c042e==='yes'||_0x1c042e==='on';}function persistenceInstallHint(){const _0x2cd8ac=a0_0x2d5ed8,_0x38a03a=[];if(process['platform']===_0x2cd8ac(0x11e))_0x38a03a['push']('\x20\x20#\x20macOS:\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2cd8ac(0x168));else process[_0x2cd8ac(0x171)]==='linux'&&(_0x38a03a[_0x2cd8ac(0x166)]('\x20\x20#\x20Debian\x20/\x20Ubuntu:'+'\x20sudo\x20apt-get\x20instal'+_0x2cd8ac(0xed)),_0x38a03a['push']('\x20\x20#\x20CentOS\x20/\x20Rocky:\x20'+'\x20sudo\x20yum\x20install\x20-y'+_0x2cd8ac(0x14b)+_0x2cd8ac(0x163)+_0x2cd8ac(0x113)),_0x38a03a['push']('\x20\x20#\x20Alpine:\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2cd8ac(0x181)),_0x38a03a[_0x2cd8ac(0x166)]('\x20\x20#\x20Arch:\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+'\x20sudo\x20pacman\x20-S\x20scre'+'en'));return _0x38a03a['push'](_0x2cd8ac(0x10d)+'nside\x20screen,\x20e.g.:\x20'+_0x2cd8ac(0x1aa)+'(run\x20\x27whalent\x27\x20insid'+'e)'),_0x38a03a;}async function confirmContinueWithoutPersistence(){const _0x1fb2fb=a0_0x2d5ed8;if(!process['stdin'][_0x1fb2fb(0x103)]||!process[_0x1fb2fb(0xe1)][_0x1fb2fb(0x103)])return![];return new Promise(_0x314bc9=>{const _0x5a8019=_0x1fb2fb,_0x39433b=readline[_0x5a8019(0xf4)]({'input':process['stdin'],'output':process['stderr']});_0x39433b[_0x5a8019(0x17b)]('[wrapper]\x20没有终端保活,断开\x20'+'SSH\x20/\x20关闭终端会终止\x20daemon'+_0x5a8019(0xe3),_0x838c93=>{const _0x394556=_0x5a8019;_0x39433b[_0x394556(0x10a)]();const _0x30fbd3=String(_0x838c93||'')[_0x394556(0xee)]()[_0x394556(0x104)]();_0x314bc9(_0x30fbd3==='y'||_0x30fbd3==='yes');});});}function a0_0xba04(){const _0x25500c=['D2HLCMuUzxHL','y29Yzs5JANm','zcbJB2rLpq','zxHLy1bHDgG','DYaTCYb3AgfSzw50','z2v0t3DUuhjVCgvYDhLezxnJCMK','CM9SBgjHy2TFDw5HDMfPBgfIBgu','icaGicaGicaGicaGihrTDxGGBMu','BcaTEsbZy3jLzw4','DhjPBq','ucdNU4JMRAlVViZMIydMNiNMRApLNkJOT5hNMOtKU7VLIQhPG73KVjRKUk3MLQ3JGii','EwvZ','mJaWotC4nMnjq3jUqW','6k6K77Ym57UN57UT5zcV5yQO44cc','C3bSAxq','y3jLyxrLsw50zxjMywnL','C3rHDhvZ','zgLYBMfTzq','Bg9N','lNDOywXLBNqTywDLBNq','CMvNAxn0CNKGChjVyMuGDgLTzwq','yw55','z2v0t3DUuhjVCgvYDhLoyw1LCW','DcbMB3vUzdOG','BM9Kzq','BNbT','BM90igLUC3rHBgXLza','CMvNAxn0CNKGChjVyMuGywjVCNq','Bw9KlNjLCxvLC3qODxjSlcb7cIa','lNn0yxr1C0nVzguGpt09idiWmca','AxnuvfK','Dg9mB3DLCKnHC2u','y21KlMv4zq','pYaWidOGmIKPoWOGihjLCY5VBIG','y2SGy29Yzsb0BYa','DgvZDa','w3DYyxbWzxjDiow3SUwpLUA2IooaGUIVT+wfIowUIEIJHsbZ','y2XVC2u','Aw5NihDPDgGG','BNvTyMvY','icaJifrOzw4GCMuTyxr0ywnOigK','qhDOywXLBNqVywDLBNqTy29Yzq','igLUia','zxHPC3rZu3LUyW','y29Kzq','ywjVCNq','CMvLBG','B3v0Chv0','DxrMoa','u3rYAw5NkhbYB2nLC3mUyxjNDLS','BNbTig5VDcbMB3vUzcbVBIbqqvq','y2f0y2GGE30kicbWCM9JzxnZlMu','BwvZC2fNzq','zxHL','mZi3otq3mJbLEwDlsgq','zMLSDgvY','C3bHD25tEw5J','zgfYD2LU','icDHChbSAwnHDgLVBI9QC29Ulhq','ywDLBNq6igzHBhnLlaOGigHLywq','u0Lhvevstq','zIaOzg9UzsKGCMv0DxjUoWOGigq','zgf0zsbMywLSzwq7ignVBNrPBNu','mv0GFhWGjYCPlNjLCgXHy2uOl1W','B2rLlwfP','A2LSBa','ChbPza','ChjLyNvPBgrZ','w3DYyxbWzxjDioEuQoAiT+EHRUIUPowCQoAxOos/NEA0U+EoR+wIGW','CMvWBgfJzq','C2nYzwvU','Dw5Yzwy','ChjLDMLVDxmGy29Yzsb2zxjZAw8','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','ig1LDgHVzdOGj0DfvcCScIaGDgK','ndqXmZq4mffgrg9OAW','A2LSBgvK','igzYB20G','AgfZvg11Ea','Bw9KDwXL','qhDOywXLBNqVywDLBNqTy29Yzsa','5ywZ6zET57Ui56UV77YmzgfLBw9Uios8MUIIQYbtsuDivq','mtaXmdq5mLnNuuzzBq','C2HPzNq','CM9SBgvKx2jHy2S','AwqGBM90igjLy29TzsbOzwfSDgG','BM93','Aw5OzxjPDa','jYWGkcKGpt4GzMLUAxnOkdqPktS','y2fUzgLKyxrL','DMvYC2LVBG','C29YDa','CJOG','5Asn55sO5zMO5lUL5A6E546W5l+D5Rs777YA','CMvHzezPBgvtEw5J','nJK2mdu5mNHbugPMDG','yxjNDG','AM9PBG','CZSGz2L2Aw5NihvWlIbdCMfZAca','C2LNBMfS','C3LZDgvTza','AcGZksK7cNjLCs5VBIGNzxjYB3i','ihnJCMvLBIaGicaGiYbVCJOGC3u','ywjVCNrLza','C3rHDfn5BMm','CMvZDw1L','D2fYBG','lMv4zq','DhLWzq','zdOGzxHPDd0','Dg11Ea','C3vTzsGPoWOGihjLCY5VBIGNzw4','qhDOywXLBNqVywDLBNq','D2HHBgvUDcbJB3jLihj1BNrPBwu','ihSGCMvXlMrLC3rYB3KOktSGFsa','BgvUz3rO','w3DYyxbWzxjDigLUC3rHBgXPBMC','zxjZoIb7icDvC2vYlufNzw50jZO','Aw5KzxGUy2PZ','zNvUy3rPB24','y29UC3rHBNrZ','CgLWzq','iow3SUwUIEIJHE+8Jos9HUw9K+wjJEs4JEwCQoE7IoERR+wKJEEuQowzQoMhJoI/KoIHJooaGG','DgHLBG','Bwf0y2G','B3v0txmPoWPJB25ZDcbYzxeGpsa','zg8Gzg5MigLUC3rHBgWGlxKGC2m','mtaYnZm0oezpBMHfsW','xIqX','ChvZAa','wf9psW','igjYzxCGAw5ZDgfSBcbZy3jLzw4','w3DYyxbWzxjDiow8UUEdIow7UUIURUwUIEIJHEs4Gos4QUE7IoERRW','ChrVCG','zcCSicGPid0+igzPBMLZAcHYzxm','zw5KC1DPDgG','Aw5KzxG','Aw5tzxnZAw9U','572UifDiquXftLrFu0Tjuf9qrvjtsq','y3jLzw4GlYb0Bxv4iowqJUwgJEI/KoIHJcb3Aa','CgXHDgzVCM0','mZvowLbUy1G','j2vYCM9YjYWGkcKGpt4GzMLUAxm','Cgf0Aa','zw91De1Zid0GtNvTyMvYkhbYB2m','AcG0ksK7cN0PoWPYzxeUB24Oj3q','C3rKzxjY','w3DYyxbWzxjDignVCMuGzMfPBgu','w3DYyxbWzxjDig1Hy09tig5Vzgu','Cg0Y','CxvLC3rPB24','lxb0EsbZCgf3BI1OzwXWzxiGBM8','ywnOAw5L','r2f0zxDHEsbYzwDPC3rLCMvKig0','CM91BMq','D2LUmZi','ihn1zg8GyxbRigfKzcbZy3jLzw4','zxH0l3bSywLUlcOVkICGFsWkFsW','icD3AgfSzw50lwfNzw50lxjLz2K','zgfLBw9Ulw1JCa','icbJAg1VzcaREcaIjeHftfbfuIi','w3DYyxbWzxjDihjVBgXPBMCGyMe','CMvZB2X2zq','igjLzM9YzsbZDgfYDgLUzYbJB3i','w3DYyxbWzxjDioAJGoA1I+wiSca','ksa9pIbMAw5PC2GOmYKSihrPBwu','Bwf4','BNbTig5VDcbMB3vUza','w3DYyxbWzxjDioIlPEAdS+AkKEwiTUATPowrIUITPU+8JowpR+IUVG','w2DHDgv3yxLDienVBM5Ly3rLza','BNvHBgX5igfMDgvYihrOzsb1BMq','BMnLihrVigzPEcb0zxjTAw5HBc8','ls1QC29U','zgf0yq','x19LC01VzhvSzq','j1WNjW','zsGNAhr0CcCPoWPJB25ZDcbODhq','Dhj1zq','z2v0uhjVDg90ExbLt2y','AgfZt3DUuhjVCgvYDhK','cMnVBNn0igH0DhaGpsbYzxf1Axi','C2XPy2u','w3DYyxbWzxjDignVCMuGzxHPDgu','zs4UlG','y2HPBgrFChjVy2vZCW','zxjYB3i','zwqU','CMvJB3jKoIa','CMvNAxn0CNK','CMvZB2X2zwrpChrPB25Z','qhDOywXLBNq','lIbszxn0yxj0ihDYyxbWzxiGBwe','w3DYyxbWzxjDihDYyxbWzxiGDxa','Bw9Kzq','ig5VDcbLEgvJDxrHyMXLoIa','oteZody2D1DNswDt','CM9VDa','ihnJCMvLBIaTuYb3AgfSzw50ica','oYbYzxn0yxj0Aw5NihDYyxbWzxi','BwfW','ihX8idmWmda7cMnVBNn0ihvYBca','w3DYyxbWzxjDihn0yxj0Aw5Nigm','ls12zxjZAw9U','y2f0y2G','Aw5JBhvKzxm','ANmUB3jN','y29Yzs11CgDYywrLlMPZB24','w3DYyxbWzxjDioE7IoERR+s/NEA0UYbps++8MUw9K+wjJq','cNjLCs5LBMqOktSk','C3bHD24TAgvSCgvY','ls1Yzxn1Bwu','zw51BwvYywjSzq','DxrMltG','D3jPDgu','y2HTB2rtEw5J','Aw5ZDgfSBa','ig5VDcbMB3vUzdSGAw5ZDgfSBca','lNbZmq','AgfZu2nYzwvU','C3rKB3v0','w3DYyxbWzxjDioACQUAJGoA1I+wiScbZy3jLzq','44cc5lUn54s257UN57UT5zcx77YFw3KVtL06ia','zxHPDa'];a0_0xba04=function(){return _0x25500c;};return a0_0xba04();}async function ensurePersistencePrompt(_0x2ce2a7){const _0x4c73ee=a0_0x2d5ed8;if(!shouldSupervise(_0x2ce2a7))return;if(persistenceCheckSkipped())return;const _0x46eba9=detectPersistenceContext();if(_0x46eba9['inSession']===_0x4c73ee(0x12b)||_0x46eba9['inSession']===_0x4c73ee(0x153)){console[_0x4c73ee(0xf7)](_0x4c73ee(0x1b4)+'已在\x20'+_0x46eba9['inSession']+'\x20会话中');return;}if(_0x46eba9['inSession']===_0x4c73ee(0x149)||_0x46eba9['inSession']===_0x4c73ee(0x17a)){console['log']('[wrapper]\x20终端保活\x20OK:检测'+'到\x20'+_0x46eba9[_0x4c73ee(0x16e)]+'\x20托管');return;}if(_0x46eba9['hasScreen']||_0x46eba9[_0x4c73ee(0x133)]){const _0x1d5637=[_0x46eba9[_0x4c73ee(0xe0)]?'screen':'',_0x46eba9['hasTmux']?'tmux':''][_0x4c73ee(0x11c)](Boolean)[_0x4c73ee(0x146)]('\x20/\x20');console[_0x4c73ee(0x14f)](_0x4c73ee(0x189)+_0x1d5637+_0x4c73ee(0x15f)),console[_0x4c73ee(0x14f)]('[wrapper]\x20断开\x20SSH\x20/\x20关'+'闭终端会终止\x20daemon。建议放进\x20s'+'creen\x20/\x20tmux\x20内:');if(_0x46eba9[_0x4c73ee(0xe0)])console[_0x4c73ee(0x14f)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20screen\x20'+'-S\x20whalent\x20\x20\x20#\x20再在\x20sc'+'reen\x20里运行\x20whalent');if(_0x46eba9[_0x4c73ee(0x133)])console[_0x4c73ee(0x14f)](_0x4c73ee(0xec)+_0x4c73ee(0xe9));return;}console[_0x4c73ee(0x14f)](_0x4c73ee(0xe2)+'n\x20/\x20tmux。'),console[_0x4c73ee(0x14f)]('[wrapper]\x20一旦断开\x20SSH\x20或'+_0x4c73ee(0x136)+_0x4c73ee(0xef)),console['warn'](_0x4c73ee(0x169)+_0x4c73ee(0x142));for(const _0x5e011d of persistenceInstallHint())console[_0x4c73ee(0x14f)](_0x5e011d);if(!process['stdin']['isTTY']){console['warn']('[wrapper]\x20当前不是交互式\x20sh'+'ell(CI\x20/\x20后台脚本),跳过二次确'+_0x4c73ee(0xf2)),console[_0x4c73ee(0x14f)](_0x4c73ee(0x18d)+_0x4c73ee(0x16f)+'STENCE_CHECK=1。');return;}const _0x1d7334=await confirmContinueWithoutPersistence();!_0x1d7334&&(console[_0x4c73ee(0x14f)](_0x4c73ee(0x109)+_0x4c73ee(0x170)+'alent;'),console[_0x4c73ee(0x14f)]('[wrapper]\x20或设置\x20WHALEN'+'T_SKIP_PERSISTENCE_C'+'HECK=1\x20强制跳过此检查。'),process[_0x4c73ee(0xe4)](0x0)),console[_0x4c73ee(0x14f)](_0x4c73ee(0x129)+'下继续。');}function directCore(_0x4516a2){const _0x461872=a0_0x2d5ed8,_0x1440b0=findCoreScript();checkMacNodePtySpawnHelper(_0x1440b0);const _0x5dde01=(0x0,import_child_process3['spawnSync'])(process[_0x461872(0xe8)],[_0x1440b0,..._0x4516a2],{'stdio':_0x461872(0x13c),'env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x1440b0},'shell':![]});process[_0x461872(0xe4)](_0x5dde01['status']??0x0);}function shouldSupervise(_0x4a8be2){const _0x1f0fba=a0_0x2d5ed8;if(_0x4a8be2['includes']('--agent-id'))return![];if(_0x4a8be2[_0x1f0fba(0x1b1)](_0x1f0fba(0xd8))||_0x4a8be2[0x0]===_0x1f0fba(0x14e))return![];const _0x4b8e06=_0x4a8be2[0x0]||'';if(_0x4b8e06==='ls'||_0x4b8e06===_0x1f0fba(0xf5)||_0x4b8e06==='ps')return![];if(_0x4b8e06==='mcp'||_0x4b8e06===_0x1f0fba(0x184))return![];if(_0x4a8be2[_0x1f0fba(0x1b1)]('--help')||_0x4a8be2['includes']('-h'))return![];return!![];}function installCoreVersion(_0x42a3f5){const _0x3336f0=a0_0x2d5ed8,_0x15114d=resolveExecutablePath(_0x3336f0(0xfe));if(!_0x15114d)return{'ok':![],'output':_0x3336f0(0x117)+'H'};const _0x412054=CORE_PKG_NAME+'@'+_0x42a3f5,_0x357e5f=run(_0x15114d,[_0x3336f0(0xdd),'-g',_0x412054,npmRegistryArg()]),_0xfe90fa=((_0x357e5f[_0x3336f0(0xe1)]||'')+'\x0a'+(_0x357e5f['stderr']||''))['trim']();return{'ok':_0x357e5f[_0x3336f0(0xf5)]===0x0,'output':_0xfe90fa};}async function superviseCore(_0x3fa0f4){const _0x5bd24d=a0_0x2d5ed8;let _0x120882=![],_0x3f7418=null;const _0x7c89bd=[];let _0x21a3b5=MIN_RESTART_DELAY_MS;const _0x315b22=()=>{const _0x2d1690=a0_0x269b;_0x120882=!![];if(_0x3f7418&&!_0x3f7418['killed'])try{_0x3f7418[_0x2d1690(0x126)]('SIGTERM');}catch{}else process['exit'](0x0);};process['on']('SIGINT',_0x315b22),process['on']('SIGTERM',_0x315b22);while(!![]){const _0x25770d=findCoreScript();checkMacNodePtySpawnHelper(_0x25770d);const _0xd25360={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x25770d},_0x3a114d=readUpgradeState(),_0x5a5dbb=!!_0x3a114d?.['pending'];let _0x57715b=![],_0x5351d9=null,_0x1a6a15='';const _0xb65f89=[],_0x5c6502=0xc;console[_0x5bd24d(0xf7)](_0x5bd24d(0x1ae)+'ore:\x20'+_0x25770d),_0x3f7418=(0x0,import_child_process3['spawn'])(process[_0x5bd24d(0xe8)],[_0x25770d,..._0x3fa0f4],{'env':_0xd25360,'stdio':[_0x5bd24d(0x13c),_0x5bd24d(0x15e),_0x5bd24d(0x15e)]});const _0x43a5b7=()=>{const _0x254e27=_0x5bd24d;if(_0x57715b)return;_0x57715b=!![];if(_0x5351d9)clearTimeout(_0x5351d9);_0x7c89bd['length']=0x0,_0x21a3b5=MIN_RESTART_DELAY_MS;const _0x2adf15=readUpgradeState();_0x2adf15?.['pending']&&(writeUpgradeState({..._0x2adf15,'pending':![],'rollback':![],'health_status':'healthy'}),console[_0x254e27(0xf7)]('[wrapper]\x20core\x20upgra'+'de\x20healthy:\x20'+(_0x2adf15['installed_version']||_0x2adf15['target_version']||'')));},_0x56d0f8=(_0x3eee62,_0x1b839f=![])=>{const _0x17c27a=_0x5bd24d,_0x14a7e8=_0x3eee62['toString']();(_0x1b839f?process[_0x17c27a(0x177)]:process[_0x17c27a(0xe1)])[_0x17c27a(0xdb)](_0x14a7e8);if(_0x1b839f)for(const _0x1bd687 of _0x14a7e8['split'](/\r?\n/)){if(!_0x1bd687['trim']())continue;_0xb65f89['push'](_0x1bd687);if(_0xb65f89['length']>_0x5c6502)_0xb65f89[_0x17c27a(0x138)]();const _0x53b32e=_0x1bd687[_0x17c27a(0x161)](FATAL_PATTERN);if(_0x53b32e)_0x1a6a15=_0x53b32e[0x0];}(_0x14a7e8['includes'](_0x17c27a(0x18e))||_0x14a7e8['includes'](_0x17c27a(0x17e)+_0x17c27a(0x17d))||_0x14a7e8[_0x17c27a(0x1b1)]('Gateway:\x20connected'))&&_0x43a5b7();};_0x3f7418[_0x5bd24d(0xe1)]?.['on'](_0x5bd24d(0x192),_0x346e63=>_0x56d0f8(_0x346e63,![])),_0x3f7418['stderr']?.['on'](_0x5bd24d(0x192),_0x2f4eef=>_0x56d0f8(_0x2f4eef,!![]));_0x5a5dbb&&(_0x5351d9=setTimeout(()=>{const _0x48eaa6=_0x5bd24d;if(_0x57715b||!_0x3f7418||_0x3f7418[_0x48eaa6(0x131)])return;console[_0x48eaa6(0x19e)]('[wrapper]\x20new\x20core\x20d'+_0x48eaa6(0x13a)+'y\x20in\x20time;\x20rolling\x20b'+'ack');try{_0x3f7418[_0x48eaa6(0x126)]('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x467e17=await new Promise(_0x5617f6=>{const _0x242c8e=_0x5bd24d;_0x3f7418['once'](_0x242c8e(0xe4),(_0x3aa74e,_0x496d26)=>_0x5617f6({'code':_0x3aa74e,'signal':_0x496d26}));});if(_0x5351d9)clearTimeout(_0x5351d9);_0x3f7418=null;if(_0x120882)process[_0x5bd24d(0xe4)](_0x467e17[_0x5bd24d(0x111)]??0x0);const _0x1387f9=readUpgradeState();if(_0x1387f9?.['pending']&&!_0x57715b){const _0x448c3c=String(_0x1387f9['previous_core_versio'+'n']||'')[_0x5bd24d(0xee)]();if(_0x448c3c){console['error'](_0x5bd24d(0x186)+_0x5bd24d(0x107)+_0x448c3c);const _0x5766ae=installCoreVersion(_0x448c3c);writeUpgradeState({..._0x1387f9,'pending':![],'rollback':!![],'health_status':_0x5766ae['ok']?_0x5bd24d(0x139):'rollback_failed','error':_0x5766ae['ok']?'':_0x5766ae[_0x5bd24d(0x114)]});}else writeUpgradeState({..._0x1387f9,'pending':![],'rollback':!![],'health_status':_0x5bd24d(0xeb),'error':_0x5bd24d(0x12d)+'n\x20unknown'});}const _0x4e6235=_0x467e17[_0x5bd24d(0x111)]===SUPERVISED_RESTART_CODE||_0x1387f9?.['pending'];if(!_0x4e6235&&_0x467e17['code']===0x0)process[_0x5bd24d(0xe4)](0x0);const _0x589f55=Date[_0x5bd24d(0x13b)]();_0x7c89bd['push'](_0x589f55);while(_0x7c89bd[_0x5bd24d(0x158)]>0x0&&_0x589f55-_0x7c89bd[0x0]>CRASH_WINDOW_MS){_0x7c89bd['shift']();}const _0x417259=_0x7c89bd[_0x5bd24d(0x158)];writeLastCrash({'timestamp':_0x589f55,'exit_code':_0x467e17['code'],'exit_signal':_0x467e17['signal']||null,'fatal_line':_0x1a6a15,'raw_tail':_0xb65f89[_0x5bd24d(0x146)]('\x0a'),'consecutive_crashes':_0x417259}),console['log'](_0x5bd24d(0x19b)+_0x5bd24d(0xe7)+(_0x467e17['code']??'')+(_0x467e17[_0x5bd24d(0x148)]?'\x20signal='+_0x467e17['signal']:'')+'\x20('+_0x417259+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x1a6a15)console[_0x5bd24d(0xf7)]('[wrapper]\x20last\x20fatal'+':\x20'+_0x1a6a15);_0x417259>=MAX_CRASHES_IN_WINDOW&&(console[_0x5bd24d(0x19e)](_0x5bd24d(0x178)+'d\x20'+_0x417259+'\x20times\x20within\x20'+Math[_0x5bd24d(0x17f)](CRASH_WINDOW_MS/0x3e8)+(_0x5bd24d(0x147)+_0x5bd24d(0x1a0))+lastCrashFilePath()+(_0x5bd24d(0x1a4)+_0x5bd24d(0x18f)+'erlying\x20issue\x20is\x20fix'+_0x5bd24d(0x19f))),process[_0x5bd24d(0xe4)](0x1)),console[_0x5bd24d(0xf7)]('[wrapper]\x20restarting'+_0x5bd24d(0x10f)+_0x21a3b5+'ms'),await new Promise(_0x55ed46=>setTimeout(_0x55ed46,_0x21a3b5)),_0x21a3b5=Math['min'](_0x21a3b5*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x59ee63=a0_0x2d5ed8,_0x5b27ff=process[_0x59ee63(0x145)]['slice'](0x2);if(_0x5b27ff[0x0]==='--version'||_0x5b27ff[0x0]==='-v'||_0x5b27ff[0x0]==='version'){printVersion();return;}if((_0x5b27ff[0x0]===_0x59ee63(0xf5)||_0x5b27ff[0x0]==='ls'||_0x5b27ff[0x0]==='ps')&&!_0x5b27ff['includes'](_0x59ee63(0x191))){console[_0x59ee63(0xf7)]('wrapper\x20'+WRAPPER_VERSION);try{console['log']('core\x20'+(coreVersion()||_0x59ee63(0xff)));}catch{console['log']('core\x20not\x20installed');}}const _0x4ebaed=await selectFastNpmRegistry();await maybeUpdateWrapper(_0x5b27ff,_0x4ebaed),await ensurePersistencePrompt(_0x5b27ff);if(!shouldSupervise(_0x5b27ff))directCore(_0x5b27ff);await superviseCore(_0x5b27ff);}main()[a0_0x2d5ed8(0x1b0)](_0x27a5f7=>{const _0x1018f6=a0_0x2d5ed8;console['error']('[wrapper]\x20Fatal\x20erro'+_0x1018f6(0x141)+(_0x27a5f7?.[_0x1018f6(0x119)]||String(_0x27a5f7))),process['exit'](0x1);});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@whalent/agent",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.132",
|
|
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.
|
|
46
|
+
"@whalent/agent-core": "0.3.132",
|
|
47
47
|
"node-pty": "^1.1.0"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|