@whalent/agent 0.3.108 → 0.3.110

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_0x537d0c=a0_0x2b30;(function(_0x2ba68e,_0x42a7c6){const _0x4d2fe5=a0_0x2b30,_0x1944c8=_0x2ba68e();while(!![]){try{const _0x583c47=parseInt(_0x4d2fe5(0xbd))/0x1+-parseInt(_0x4d2fe5(0xeb))/0x2+-parseInt(_0x4d2fe5(0xbc))/0x3*(-parseInt(_0x4d2fe5(0xee))/0x4)+-parseInt(_0x4d2fe5(0xb9))/0x5+parseInt(_0x4d2fe5(0x90))/0x6+parseInt(_0x4d2fe5(0xf1))/0x7*(parseInt(_0x4d2fe5(0xe7))/0x8)+-parseInt(_0x4d2fe5(0xa4))/0x9;if(_0x583c47===_0x42a7c6)break;else _0x1944c8['push'](_0x1944c8['shift']());}catch(_0xdf8b64){_0x1944c8['push'](_0x1944c8['shift']());}}}(a0_0x483c,0xe92e4));var __create=Object[a0_0x537d0c(0x6f)],__defProp=Object[a0_0x537d0c(0xc8)],__getOwnPropDesc=Object['getOwnPropertyDescri'+a0_0x537d0c(0xc0)],__getOwnPropNames=Object[a0_0x537d0c(0x9f)],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object['prototype'][a0_0x537d0c(0xc1)],__copyProps=(_0x2ca944,_0x4ca854,_0x1cf4bc,_0x1b63d3)=>{const _0x3d2115=a0_0x537d0c;if(_0x4ca854&&typeof _0x4ca854==='object'||typeof _0x4ca854===_0x3d2115(0xb6)){for(let _0x346899 of __getOwnPropNames(_0x4ca854))if(!__hasOwnProp['call'](_0x2ca944,_0x346899)&&_0x346899!==_0x1cf4bc)__defProp(_0x2ca944,_0x346899,{'get':()=>_0x4ca854[_0x346899],'enumerable':!(_0x1b63d3=__getOwnPropDesc(_0x4ca854,_0x346899))||_0x1b63d3['enumerable']});}return _0x2ca944;},__toESM=(_0x484ec7,_0x5bd9a4,_0x7bc2a9)=>(_0x7bc2a9=_0x484ec7!=null?__create(__getProtoOf(_0x484ec7)):{},__copyProps(_0x5bd9a4||!_0x484ec7||!_0x484ec7[a0_0x537d0c(0xb8)]?__defProp(_0x7bc2a9,'default',{'value':_0x484ec7,'enumerable':!![]}):_0x7bc2a9,_0x484ec7)),import_child_process2=require('child_process'),fs=__toESM(require('fs'),0x1),import_module=require(a0_0x537d0c(0x9b)),os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x537d0c(0x86)),0x1),import_child_process=require('child_process'),import_fs=require('fs'),import_path=require('path'),DEFAULT_NPM_REGISTRY='https://registry.npm'+a0_0x537d0c(0xec),CHINA_NPM_REGISTRY='https://registry.npm'+'mirror.com';function preferredNpmRegistry(){const _0x450751=normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');if(_0x450751)return _0x450751;return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryArg(_0x53c269=preferredNpmRegistry()){const _0x3e8d4d=a0_0x537d0c;return _0x3e8d4d(0x6c)+(normalizeRegistry(_0x53c269)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x23b6b4,_0x49cb7a=preferredNpmRegistry()){return'npm\x20install\x20-g\x20'+_0x23b6b4+'\x20'+npmRegistryArg(_0x49cb7a);}function isChineseLocale(){const _0x461ea1=a0_0x537d0c,_0x61f05d=[process.env.LC_ALL,process.env.LC_MESSAGES,process.env.LANG,process.env.LANGUAGE]['filter'](Boolean)['join']('\x20');if(/(^|[_.-])zh([_.-]|$)|chinese|china|cn\b/i[_0x461ea1(0xa3)](_0x61f05d))return!![];try{const _0x1deb60=Intl['DateTimeFormat']()['resolvedOptions']()[_0x461ea1(0x8b)]||'';return/(^|-)zh($|-)|-CN\b/i[_0x461ea1(0xa3)](_0x1deb60);}catch{return![];}}function normalizeRegistry(_0x396cbc){const _0x39ebdc=a0_0x537d0c;return String(_0x396cbc||'')[_0x39ebdc(0x8d)]()[_0x39ebdc(0xd5)](/\/+$/,'');}var INSTALL_HINT={'codex':a0_0x537d0c(0x8f)+a0_0x537d0c(0xc2),'claude':a0_0x537d0c(0xf4)+'ropic-ai/claude-code','opencode':a0_0x537d0c(0xb2)+'ode-ai','whalent':npmInstallCommand(a0_0x537d0c(0xa9))+a0_0x537d0c(0x74)};function isWindowsCmdFile(_0x394251){const _0x5e6615=a0_0x537d0c;return process[_0x5e6615(0x6a)]==='win32'&&/\.(cmd|bat)$/i['test'](_0x394251||'');}function a0_0x2b30(_0x4e4bbe,_0x28eb10){_0x4e4bbe=_0x4e4bbe-0x66;const _0x483c2e=a0_0x483c();let _0x2b304d=_0x483c2e[_0x4e4bbe];if(a0_0x2b30['mtlGaN']===undefined){var _0x353717=function(_0x4725b2){const _0x2c4dbd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2ca944='',_0x4ca854='';for(let _0x1cf4bc=0x0,_0x1b63d3,_0x346899,_0x484ec7=0x0;_0x346899=_0x4725b2['charAt'](_0x484ec7++);~_0x346899&&(_0x1b63d3=_0x1cf4bc%0x4?_0x1b63d3*0x40+_0x346899:_0x346899,_0x1cf4bc++%0x4)?_0x2ca944+=String['fromCharCode'](0xff&_0x1b63d3>>(-0x2*_0x1cf4bc&0x6)):0x0){_0x346899=_0x2c4dbd['indexOf'](_0x346899);}for(let _0x5bd9a4=0x0,_0x7bc2a9=_0x2ca944['length'];_0x5bd9a4<_0x7bc2a9;_0x5bd9a4++){_0x4ca854+='%'+('00'+_0x2ca944['charCodeAt'](_0x5bd9a4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ca854);};a0_0x2b30['iYJMIT']=_0x353717,a0_0x2b30['OfzSbY']={},a0_0x2b30['mtlGaN']=!![];}const _0x4cfad0=_0x483c2e[0x0],_0x53b328=_0x4e4bbe+_0x4cfad0,_0x33b55d=a0_0x2b30['OfzSbY'][_0x53b328];return!_0x33b55d?(_0x2b304d=a0_0x2b30['iYJMIT'](_0x2b304d),a0_0x2b30['OfzSbY'][_0x53b328]=_0x2b304d):_0x2b304d=_0x33b55d,_0x2b304d;}function quoteCmdArg(_0x183204){const _0x34d764=a0_0x537d0c,_0x5e525a=String(_0x183204??'');if(_0x5e525a&&!/[\s"&|<>^%]/['test'](_0x5e525a))return _0x5e525a;return'\x22'+_0x5e525a[_0x34d764(0xd5)](/(["^&|<>%])/g,'^$1')+'\x22';}function a0_0x483c(){const _0x2517a7=['zgfLBw9Ulw1JCa','y2fUzgLKyxrL','w3DYyxbWzxjDignVCMuGzMfPBgu','ywDLBNq','DcbMB3vUzdOG','y29Yzq','CMvZDw1L','oeXrr1vdDq','C2XPy2u','yxjNDG','Bwf0y2G','mtq4nJCWmNDotu56zW','ANmUB3jN','zguGAgvHBhrOEtOG','nffttfPJra','ChjLyNvPBgrZ','DxrMltG','mtmWnJeXodfbzNP2yLu','C3rHDhvZ','zxHLy1bHDgG','BNbTigLUC3rHBgWGlwCGqgfUDgG','y29Kzq','C2LNBMfS','Bwf4','j1WNjW','ls1Hz2vUDc1Pza','CgXHDgzVCM0','ls12zxjZAw9U','ls1YzwDPC3rYEt0','C3bSAxq','Dg9mB3DLCKnHC2u','y3jLyxrL','zgLZDa','ic0+ia','C3bHD25tEw5J','zxjYB3i','ic0TChjLzMvYlw9UBgLUzq','Aw5ZDgfSBa','w3DYyxbWzxjDihDYyxbWzxiGDxa','D3jPDgvgAwXLu3LUyW','y3jLyxrLuMvXDwLYzq','igjLzM9YzsbZDgfYDgLUzYbJB3i','AM9PBG','DxrMoa','EwvZ','y21KlMv4zq','Bg9N','Dg9tDhjPBMC','CM91BMq','ls1Yzxn1Bwu','zgLYBMfTzq','CMvZB2X2zq','Cg9W','BNbT','Cgf0Aa','BNvHBgX5igfMDgvYihrOzsb1BMq','oYbYzxn0yxj0Aw5NihDYyxbWzxi','Aw5KzxG','zgf0zwqGDg8G','Bg9JywXL','zw5KC1DPDgG','DhjPBq','zxjSEwLUzYbPC3n1zsbPCYbMAxG','BNbTigLUC3rHBgWGlwCGqg9Wzw4','mJK4nJKZoeL6y0rQsa','y29Yzsa','BM9Kzq','CgvYigv4zwn1DgfIBguGyML0oIa','Aw5KzxGUy2PZ','CM9SBgvKx2jHy2S','zMLSDgvY','ywnR','C3rKzxjY','CgfJA2fNzs5QC29U','D3jHChbLCIa','Bw9KDwXL','Ag9TzwrPCG','CM9SBgjHy2TFzMfPBgvK','u0Lhsu5u','z2v0t3DUuhjVCgvYDhLoyw1LCW','BwLU','BwTKAxjtEw5J','AgfZ','DgvZDa','mtiWntG2mZjeENngBhK','D2HPy2G','CgLWzq','w3DYyxbWzxjDihjVBgXPBMCGyMe','lMnTza','qhDOywXLBNqVywDLBNq','r2f0zxDHEtOGy29UBMvJDgvK','BwnW','zxHPDa','zxHPC3rZu3LUyW','CM9VDa','y2SGy29Yzsb0BYa','zgfYD2LUlq','B25Jzq','BNbTigLUC3rHBgWGlwCGB3bLBMm','CZSGz2L2Aw5NihvWlIbdCMfZAca','BM90igLUC3rHBgXLza','zxHL','zNvUy3rPB24','DMvYC2LVBG','x19LC01VzhvSzq','mJC3nJqWmfvdsu12rW','BNbTig5VDcbMB3vUzcbVBIbqqvq','BwfW','mZuWnZuZnhz3rLfkzq','nJa3mdnJBNHpvMW','Dhj1zq','BNbTig5VDcbMB3vUza','ChrVCG','AgfZt3DUuhjVCgvYDhK','ywKVy29KzxG','lNDOywXLBNqTywDLBNq','w3DYyxbWzxjDig1Hy09tig5Vzgu','Aw5OzxjPDa','Aw5JBhvKzxm','w3DYyxbWzxjDiezHDgfSigvYCM8','zgvMAw5LuhjVCgvYDhK','DhLWzq','CgvUzgLUzW','zgf0yq','BM93','y29YzsbUB3qGAw5ZDgfSBgvK','Aw5ZDgfSBgvKx3zLCNnPB24','wf9psW','w3DYyxbWzxjDihvWzgf0zsbHDMe','zgfYD2LU','w3DYyxbWzxjDignVCMuGDxbNCMe','D2fYBG','w3DYyxbWzxjDifj1BIb0AgLZig8','CMvWBgfJzq','C29YDa','CJOG','C3rKB3v0','ihrPBwvZihDPDgHPBIa','Bw9Kzq','ls1QC29U','mc4WlJa','y2f0y2G','BgvUz3rO','w3DYyxbWzxjDig5LDYbJB3jLigq'];a0_0x483c=function(){return _0x2517a7;};return a0_0x483c();}function cmdFallbackArgs(_0xd7f7af,_0x5a0565){return['/d','/s','/c',[quoteCmdArg(_0xd7f7af),..._0x5a0565['map'](quoteCmdArg)]['join']('\x20')];}function resolveExecutablePath(_0x284f37){const _0x55983b=a0_0x537d0c;if(!_0x284f37)return null;if(_0x284f37[_0x55983b(0xc6)]('/')||_0x284f37['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/['test'](_0x284f37))return(0x0,import_fs['existsSync'])(_0x284f37)?_0x284f37:_0x284f37;const _0x1a0c90=process[_0x55983b(0x6a)]==='win32',_0x244526=_0x1a0c90?'where.exe':_0x55983b(0xa5);try{const _0x34b364=(0x0,import_child_process[_0x55983b(0x72)])(_0x244526,[_0x284f37],{'encoding':_0x55983b(0xf0),'timeout':0xbb8,'shell':![]});if(_0x34b364['status']===0x0){const _0x3ad043=(_0x34b364['stdout']||'')['trim']()[_0x55983b(0x6d)](/\r?\n/)[_0x55983b(0x96)](Boolean);if(_0x3ad043[_0x55983b(0xde)]===0x0)return null;if(_0x1a0c90)for(const _0x19fc2e of['.exe',_0x55983b(0xa8),'.bat','.ps1']){const _0x1bf397=_0x3ad043['find'](_0x2e027b=>_0x2e027b['toLowerCase']()[_0x55983b(0x8c)](_0x19fc2e));if(_0x1bf397)return _0x1bf397;}return _0x3ad043[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x1cf2b3){const _0x32ec6c=a0_0x537d0c;if(process['platform']!=='win32')return null;if(!/\.(cmd|bat)$/i['test'](_0x1cf2b3))return null;let _0x34610c;try{_0x34610c=(0x0,import_fs['readFileSync'])(_0x1cf2b3,'utf-8');}catch{return null;}const _0xba903f=_0x34610c['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0xba903f){const _0x5e8dc6=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x1cf2b3),_0xba903f[0x2]);if((0x0,import_fs[_0x32ec6c(0xad)])(_0x5e8dc6))return{'type':'node','path':_0x5e8dc6};}const _0x44c2aa=_0x34610c[_0x32ec6c(0xea)](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x44c2aa){const _0x4e71ca=(0x0,import_path[_0x32ec6c(0x83)])((0x0,import_path[_0x32ec6c(0x82)])(_0x1cf2b3),_0x44c2aa[0x2]);if((0x0,import_fs[_0x32ec6c(0xad)])(_0x4e71ca))return{'type':'exe','path':_0x4e71ca};}return null;}function safeSpawnSync(_0x10ef62,_0x2959d8,_0x4a60d3={}){const _0x104ae5=a0_0x537d0c,_0xcb6048=unwrapWindowsCmdShim(_0x10ef62);if(_0xcb6048?.[_0x104ae5(0xc9)]===_0x104ae5(0x92))return(0x0,import_child_process[_0x104ae5(0x72)])(process[_0x104ae5(0xf3)],[_0xcb6048[_0x104ae5(0x86)],..._0x2959d8],_0x4a60d3);if(_0xcb6048?.[_0x104ae5(0xc9)]===_0x104ae5(0xb5))return(0x0,import_child_process[_0x104ae5(0x72)])(_0xcb6048[_0x104ae5(0x86)],_0x2959d8,_0x4a60d3);if(isWindowsCmdFile(_0x10ef62))return(0x0,import_child_process['spawnSync'])(process.env.ComSpec||_0x104ae5(0x7d),cmdFallbackArgs(_0x10ef62,_0x2959d8),_0x4a60d3);return(0x0,import_child_process['spawnSync'])(_0x10ef62,_0x2959d8,_0x4a60d3);}var WRAPPER_PKG_NAME=a0_0x537d0c(0xa9),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(){const _0x1b3dec=a0_0x537d0c;return path[_0x1b3dec(0x7a)](os[_0x1b3dec(0x9c)](),_0x1b3dec(0xc3));}function upgradeStatePath(){const _0x147ca1=a0_0x537d0c;return path[_0x147ca1(0x7a)](configDir(),'core-upgrade.json');}function lastCrashFilePath(){const _0x583c91=a0_0x537d0c;return path[_0x583c91(0x7a)](configDir(),'last-crash.json');}function writeLastCrash(_0x596deb){const _0x469ae9=a0_0x537d0c;try{fs[_0x469ae9(0xa1)](configDir(),{'recursive':!![]});const _0x2397da={..._0x596deb,'reported':![]};fs['writeFileSync'](lastCrashFilePath(),JSON['stringify'](_0x2397da,null,0x2),'utf-8');}catch{}}function readWrapperVersion(){const _0x1110ab=a0_0x537d0c;try{const _0x5d5701=JSON['parse'](fs['readFileSync'](path['join'](wrapperBaseDir(),'..',_0x1110ab(0x99)),'utf-8'));return String(_0x5d5701[_0x1110ab(0xb7)]||'0.0.0');}catch{return _0x1110ab(0xdc);}}function readUpgradeState(){const _0x2ca14e=a0_0x537d0c;try{return JSON['parse'](fs['readFileSync'](upgradeStatePath(),_0x2ca14e(0xf0)));}catch{return null;}}function writeUpgradeState(_0x5c8bcb){const _0x67444=a0_0x537d0c;try{fs[_0x67444(0xa1)](configDir(),{'recursive':!![]}),fs[_0x67444(0x77)](upgradeStatePath(),JSON['stringify']({..._0x5c8bcb,'updated_at':Date[_0x67444(0xcc)]()},null,0x2),'utf-8');}catch{}}function run(_0x56ccf0,_0x142902,_0x61b859=process.env){return safeSpawnSync(_0x56ccf0,_0x142902,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x61b859,'shell':![]});}function runNpmView(_0xbf0e53){const _0x5f24c8=a0_0x537d0c,_0x3b3a79=resolveExecutablePath(_0x5f24c8(0x85));if(!_0x3b3a79)return{'status':0x7f,'stdout':'','stderr':_0x5f24c8(0xbf),'error':new Error(_0x5f24c8(0xbf))};return safeSpawnSync(_0x3b3a79,_0xbf0e53,{'encoding':'utf8','timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x4af95e=a0_0x537d0c,_0x444843=resolveExecutablePath(_0x4af95e(0x85));if(!_0x444843)return'';const _0x4273c9=run(_0x444843,[_0x4af95e(0xae),'-g']);if(_0x4273c9['status']!==0x0)return'';return String(_0x4273c9[_0x4af95e(0xd8)]||'')[_0x4af95e(0x8d)]();}function compareSemver(_0xc98c5e,_0x290bc7){const _0x330aa3=a0_0x537d0c,_0x3e5b91=String(_0xc98c5e||'')[_0x330aa3(0xd5)](/^v/,'')['split'](/[.-]/)[_0x330aa3(0xbb)](_0x3b92c2=>Number['parseInt'](_0x3b92c2,0xa)||0x0),_0x43cf55=String(_0x290bc7||'')[_0x330aa3(0xd5)](/^v/,'')['split'](/[.-]/)['map'](_0xbc796c=>Number['parseInt'](_0xbc796c,0xa)||0x0);for(let _0x3c2373=0x0;_0x3c2373<Math[_0x330aa3(0x67)](_0x3e5b91['length'],_0x43cf55['length'],0x3);_0x3c2373++){const _0x3a3a68=_0x3e5b91[_0x3c2373]||0x0,_0x2bb237=_0x43cf55[_0x3c2373]||0x0;if(_0x3a3a68>_0x2bb237)return 0x1;if(_0x3a3a68<_0x2bb237)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x5a9790=a0_0x537d0c,_0x561888=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')['trim']()[_0x5a9790(0x6e)]();return _0x561888==='1'||_0x561888===_0x5a9790(0xbe)||_0x561888===_0x5a9790(0x7c)||_0x561888==='on';}function latestWrapperVersion(){const _0x2f11b2=a0_0x537d0c,_0x14ca83=runNpmView(['view',WRAPPER_PKG_NAME+'@latest','version',npmRegistryArg()]);if(_0x14ca83['status']!==0x0)return'';return String(_0x14ca83[_0x2f11b2(0xd8)]||'')[_0x2f11b2(0x8d)]()[_0x2f11b2(0x6d)](/\r?\n/)['filter'](Boolean)[_0x2f11b2(0x84)]()||'';}function installWrapperVersion(_0xeb4942){const _0xd2239f=a0_0x537d0c,_0x1d2b94=resolveExecutablePath(_0xd2239f(0x85));if(!_0x1d2b94)return{'ok':![],'output':_0xd2239f(0xba)+'H'};const _0x2c47aa=run(_0x1d2b94,[_0xd2239f(0x75),'-g',WRAPPER_PKG_NAME+'@'+_0xeb4942,npmRegistryArg()]),_0x39ae9c=((_0x2c47aa[_0xd2239f(0xd8)]||'')+'\x0a'+(_0x2c47aa[_0xd2239f(0x98)]||''))[_0xd2239f(0x8d)]();return{'ok':_0x2c47aa['status']===0x0,'output':_0x39ae9c};}function maybeUpdateWrapper(_0x358297){const _0x53afe6=a0_0x537d0c;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0xe8bb83=latestWrapperVersion();if(!_0xe8bb83||compareSemver(_0xe8bb83,WRAPPER_VERSION)<=0x0)return![];const _0x340953=preferredNpmRegistry();console['warn'](_0x53afe6(0xd0)+'ilable:\x20'+WRAPPER_VERSION+_0x53afe6(0x71)+_0xe8bb83),console[_0x53afe6(0xd3)]('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0xe8bb83+'\x20from\x20'+_0x340953+(_0x53afe6(0x79)+'e...'));const _0x560ea9=installWrapperVersion(_0xe8bb83);if(!_0x560ea9['ok']){console['warn'](_0x53afe6(0x76)+'date\x20failed;\x20continu'+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x560ea9['output'])console['warn'](_0x560ea9['output']['split'](/\r?\n/)[_0x53afe6(0xe8)](-0xc)[_0x53afe6(0x7a)]('\x0a'));return console[_0x53afe6(0xd3)]('[wrapper]\x20Manual\x20upd'+'ate:\x20'+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0xe8bb83,_0x340953)),![];}console[_0x53afe6(0xd3)](_0x53afe6(0x76)+_0x53afe6(0x8a)+_0xe8bb83+_0x53afe6(0x88));const _0x52cdea=process[_0x53afe6(0xe9)][0x1],_0x303741=(0x0,import_child_process2['spawnSync'])(process[_0x53afe6(0xf3)],[_0x52cdea,..._0x358297],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0xe8bb83},'shell':![]});process[_0x53afe6(0xac)](_0x303741['status']??0x0);}function findCoreScript(){const _0x13d81b=a0_0x537d0c,_0x5969d8=String(process.env.WHALENT_CORE_ENTRY||'')['trim'](),_0x542b19=['1',_0x13d81b(0xbe),'yes','on']['includes'](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()['toLowerCase']());if(_0x5969d8&&_0x542b19&&fs[_0x13d81b(0xad)](_0x5969d8))return _0x5969d8;const _0xdda784=[],_0x4b0750=_0x6fe9b=>{const _0x42a687=_0x13d81b;if(fs['existsSync'](_0x6fe9b)&&!_0xdda784[_0x42a687(0xc6)](_0x6fe9b))_0xdda784['push'](_0x6fe9b);};if(_0x5969d8)_0x4b0750(_0x5969d8);const _0x41f78f=npmRootGlobal();if(_0x41f78f){const _0x40835f=path[_0x13d81b(0x7a)](_0x41f78f,'@whalent','agent-core',_0x13d81b(0x70),_0x13d81b(0x94));_0x4b0750(_0x40835f);}const _0x4f9107=path['join'](wrapperBaseDir(),'core.cjs');_0x4b0750(_0x4f9107);const _0x4259c1=path[_0x13d81b(0x7a)](wrapperBaseDir(),'..','packages',_0x13d81b(0xe5),_0x13d81b(0x70),'index.cjs');_0x4b0750(_0x4259c1);if(_0xdda784['length']>0x0)return _0xdda784['map']((_0xc7558b,_0x4cbf79)=>({'candidate':_0xc7558b,'index':_0x4cbf79,'version':coreVersion(_0xc7558b)}))[_0x13d81b(0xd6)]((_0x1c3a07,_0x1136d6)=>{const _0x4cbfed=_0x13d81b,_0x35435c=compareSemver(_0x1136d6['version'],_0x1c3a07[_0x4cbfed(0xb7)]);if(_0x35435c!==0x0)return _0x35435c;return _0x1136d6[_0x4cbfed(0x89)]-_0x1c3a07[_0x4cbfed(0x89)];})[0x0][_0x13d81b(0xe1)];throw new Error('whalent\x20core\x20runtime'+'\x20not\x20found;\x20install\x20'+'@whalent/agent-core\x20'+'or\x20rebuild\x20@whalent/'+_0x13d81b(0xe3));}function coreVersion(_0x119a69=findCoreScript()){const _0x5751fb=a0_0x537d0c,_0x433d6e=(0x0,import_child_process2[_0x5751fb(0x72)])(process['execPath'],[_0x119a69,'--version'],{'encoding':_0x5751fb(0x7b),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x3c3296=(_0x433d6e[_0x5751fb(0xd8)]||'')+'\x0a'+(_0x433d6e[_0x5751fb(0x98)]||'');return _0x3c3296[_0x5751fb(0xea)](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x60fd62){const _0x23694c=a0_0x537d0c;try{return fs['accessSync'](_0x60fd62,fs['constants'][_0x23694c(0xcf)]),!![];}catch{return![];}}function shellQuote(_0x1030f8){const _0x6977f6=a0_0x537d0c;return'\x27'+_0x1030f8['replace'](/'/g,_0x6977f6(0x68))+'\x27';}function coreNodePtySpawnHelperPath(_0x40a822){const _0x5d4a8d=a0_0x537d0c;if(process['platform']!==_0x5d4a8d(0xd1))return'';try{const _0x22ed55=(0x0,import_module[_0x5d4a8d(0x78)])(_0x40a822),_0x369f8e=_0x22ed55['resolve']('node-pty'),_0x248e66=path['resolve'](path['dirname'](_0x369f8e),'..');return path[_0x5d4a8d(0x7a)](_0x248e66,_0x5d4a8d(0xef),_0x5d4a8d(0xb0)+process['arch'],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x1b8348){const _0x50b48a=a0_0x537d0c,_0x486a38=coreNodePtySpawnHelperPath(_0x1b8348);if(!_0x486a38||CHECKED_PTY_HELPERS[_0x50b48a(0xa2)](_0x486a38))return;CHECKED_PTY_HELPERS['add'](_0x486a38);if(!fs[_0x50b48a(0xad)](_0x486a38)){console[_0x50b48a(0xd3)](_0x50b48a(0xc4)+'-pty\x20spawn-helper\x20no'+_0x50b48a(0xe4)+_0x486a38);return;}if(isExecutable(_0x486a38))return;try{const _0x3185a6=fs['statSync'](_0x486a38)[_0x50b48a(0xda)];fs['chmodSync'](_0x486a38,_0x3185a6|0x1ed);}catch{}if(isExecutable(_0x486a38)){console['warn']('[wrapper]\x20fixed\x20macO'+'S\x20node-pty\x20spawn-hel'+_0x50b48a(0x93)+_0x486a38);return;}console[_0x50b48a(0xd3)](_0x50b48a(0xc4)+'-pty\x20spawn-helper\x20is'+'\x20not\x20executable:\x20'+_0x486a38),console['warn'](_0x50b48a(0xd4)+'nce\x20to\x20fix\x20terminal/'+'PTY\x20startup:'),console['warn']('\x20\x20HELPER='+shellQuote(_0x486a38)),console[_0x50b48a(0xd3)]('\x20\x20ls\x20-l\x20\x22$HELPER\x22'),console[_0x50b48a(0xd3)]('\x20\x20chmod\x20+x\x20\x22$HELPER\x22');}function printVersion(){const _0xcfa58e=a0_0x537d0c;let _0x7de323='';try{_0x7de323=coreVersion();}catch{}console[_0xcfa58e(0x7e)]('whalent-agent\x20'+WRAPPER_VERSION),console['log'](_0xcfa58e(0x9a)+WRAPPER_VERSION),console[_0xcfa58e(0x7e)](_0xcfa58e(0x91)+(_0x7de323||_0xcfa58e(0xb4)));}function directCore(_0x22c08e){const _0x2591e7=a0_0x537d0c,_0x4d573f=findCoreScript();checkMacNodePtySpawnHelper(_0x4d573f);const _0x564cee=(0x0,import_child_process2[_0x2591e7(0x72)])(process[_0x2591e7(0xf3)],[_0x4d573f,..._0x22c08e],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x4d573f},'shell':![]});process['exit'](_0x564cee['status']??0x0);}function shouldSupervise(_0x3ec31f){const _0x2ad172=a0_0x537d0c;if(_0x3ec31f[_0x2ad172(0xc6)](_0x2ad172(0x69)))return![];if(_0x3ec31f['includes'](_0x2ad172(0x81))||_0x3ec31f[0x0]===_0x2ad172(0xe6))return![];const _0x37a09a=_0x3ec31f[0x0]||'';if(_0x37a09a==='ls'||_0x37a09a===_0x2ad172(0xf2)||_0x37a09a==='ps')return![];if(_0x37a09a===_0x2ad172(0xab)||_0x37a09a===_0x2ad172(0xe0))return![];if(_0x3ec31f[_0x2ad172(0xc6)]('--help')||_0x3ec31f[_0x2ad172(0xc6)]('-h'))return![];return!![];}function installCoreVersion(_0x1c7b74){const _0x411fa7=a0_0x537d0c,_0x425f40=resolveExecutablePath('npm');if(!_0x425f40)return{'ok':![],'output':_0x411fa7(0xba)+'H'};const _0x38074d=CORE_PKG_NAME+'@'+_0x1c7b74,_0x129c0e=run(_0x425f40,['install','-g',_0x38074d,npmRegistryArg()]),_0x1b946e=((_0x129c0e[_0x411fa7(0xd8)]||'')+'\x0a'+(_0x129c0e['stderr']||''))['trim']();return{'ok':_0x129c0e[_0x411fa7(0xf2)]===0x0,'output':_0x1b946e};}async function superviseCore(_0x5d811b){const _0x44a72a=a0_0x537d0c;let _0x266794=![],_0x109be5=null;const _0x2373dd=[];let _0x531193=MIN_RESTART_DELAY_MS;const _0x7d0a17=()=>{_0x266794=!![];if(_0x109be5&&!_0x109be5['killed'])try{_0x109be5['kill']('SIGTERM');}catch{}else process['exit'](0x0);};process['on'](_0x44a72a(0x9e),_0x7d0a17),process['on']('SIGTERM',_0x7d0a17);while(!![]){const _0x5f622e=findCoreScript();checkMacNodePtySpawnHelper(_0x5f622e);const _0x444b33={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x5f622e},_0x172e20=readUpgradeState(),_0x4453d4=!!_0x172e20?.[_0x44a72a(0xca)];let _0x233fe2=![],_0x1b0077=null,_0x5e4e85='';const _0x2ed2c3=[],_0x470bfe=0xc;console[_0x44a72a(0x7e)]('[wrapper]\x20starting\x20c'+'ore:\x20'+_0x5f622e),_0x109be5=(0x0,import_child_process2['spawn'])(process[_0x44a72a(0xf3)],[_0x5f622e,..._0x5d811b],{'env':_0x444b33,'stdio':[_0x44a72a(0xc5),_0x44a72a(0xa6),'pipe']});const _0x35ef21=()=>{const _0x3c72ed=_0x44a72a;if(_0x233fe2)return;_0x233fe2=!![];if(_0x1b0077)clearTimeout(_0x1b0077);_0x2373dd[_0x3c72ed(0xde)]=0x0,_0x531193=MIN_RESTART_DELAY_MS;const _0x1dc9e9=readUpgradeState();_0x1dc9e9?.['pending']&&(writeUpgradeState({..._0x1dc9e9,'pending':![],'rollback':![],'health_status':'healthy'}),console['log'](_0x3c72ed(0xd2)+_0x3c72ed(0xed)+(_0x1dc9e9[_0x3c72ed(0xce)]||_0x1dc9e9['target_version']||'')));},_0x210d26=(_0x461aeb,_0x41ea77=![])=>{const _0x35c81f=_0x44a72a,_0x1cb184=_0x461aeb[_0x35c81f(0x7f)]();(_0x41ea77?process['stderr']:process[_0x35c81f(0xd8)])['write'](_0x1cb184);if(_0x41ea77)for(const _0x5aeece of _0x1cb184['split'](/\r?\n/)){if(!_0x5aeece[_0x35c81f(0x8d)]())continue;_0x2ed2c3['push'](_0x5aeece);if(_0x2ed2c3[_0x35c81f(0xde)]>_0x470bfe)_0x2ed2c3['shift']();const _0x255e7b=_0x5aeece[_0x35c81f(0xea)](FATAL_PATTERN);if(_0x255e7b)_0x5e4e85=_0x255e7b[0x0];}(_0x1cb184[_0x35c81f(0xc6)]('[gateway]\x20Connected')||_0x1cb184['includes']('Gateway\x20registered\x20m'+'achine')||_0x1cb184[_0x35c81f(0xc6)](_0x35c81f(0xaa)))&&_0x35ef21();};_0x109be5['stdout']?.['on'](_0x44a72a(0xcb),_0x27b984=>_0x210d26(_0x27b984,![])),_0x109be5[_0x44a72a(0x98)]?.['on']('data',_0x515bb7=>_0x210d26(_0x515bb7,!![]));_0x4453d4&&(_0x1b0077=setTimeout(()=>{const _0x152b23=_0x44a72a;if(_0x233fe2||!_0x109be5||_0x109be5['killed'])return;console[_0x152b23(0x73)](_0x152b23(0xdf)+'id\x20not\x20become\x20health'+'y\x20in\x20time;\x20rolling\x20b'+_0x152b23(0x97));try{_0x109be5['kill']('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x2be80e=await new Promise(_0x3556b9=>{const _0x1fb737=_0x44a72a;_0x109be5[_0x1fb737(0xb1)](_0x1fb737(0xac),(_0x48e0c0,_0x4ceabe)=>_0x3556b9({'code':_0x48e0c0,'signal':_0x4ceabe}));});if(_0x1b0077)clearTimeout(_0x1b0077);_0x109be5=null;if(_0x266794)process[_0x44a72a(0xac)](_0x2be80e['code']??0x0);const _0x8efe23=readUpgradeState();if(_0x8efe23?.[_0x44a72a(0xca)]&&!_0x233fe2){const _0x4c537e=String(_0x8efe23['previous_core_versio'+'n']||'')['trim']();if(_0x4c537e){console['error'](_0x44a72a(0xa7)+_0x44a72a(0xaf)+_0x4c537e);const _0x425601=installCoreVersion(_0x4c537e);writeUpgradeState({..._0x8efe23,'pending':![],'rollback':!![],'health_status':_0x425601['ok']?_0x44a72a(0x95):_0x44a72a(0x9d),'error':_0x425601['ok']?'':_0x425601['output']});}else writeUpgradeState({..._0x8efe23,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':'previous\x20core\x20versio'+'n\x20unknown'});}const _0x11ea6f=_0x2be80e[_0x44a72a(0xf5)]===SUPERVISED_RESTART_CODE||_0x8efe23?.[_0x44a72a(0xca)];if(!_0x11ea6f&&_0x2be80e[_0x44a72a(0xf5)]===0x0)process['exit'](0x0);const _0x72194c=Date[_0x44a72a(0xcc)]();_0x2373dd['push'](_0x72194c);while(_0x2373dd['length']>0x0&&_0x72194c-_0x2373dd[0x0]>CRASH_WINDOW_MS){_0x2373dd['shift']();}const _0x48ac0f=_0x2373dd[_0x44a72a(0xde)];writeLastCrash({'timestamp':_0x72194c,'exit_code':_0x2be80e['code'],'exit_signal':_0x2be80e[_0x44a72a(0x66)]||null,'fatal_line':_0x5e4e85,'raw_tail':_0x2ed2c3[_0x44a72a(0x7a)]('\x0a'),'consecutive_crashes':_0x48ac0f}),console['log']('[wrapper]\x20core\x20exite'+'d\x20code='+(_0x2be80e[_0x44a72a(0xf5)]??'')+(_0x2be80e[_0x44a72a(0x66)]?'\x20signal='+_0x2be80e[_0x44a72a(0x66)]:'')+'\x20('+_0x48ac0f+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x5e4e85)console[_0x44a72a(0x7e)]('[wrapper]\x20last\x20fatal'+':\x20'+_0x5e4e85);_0x48ac0f>=MAX_CRASHES_IN_WINDOW&&(console['error'](_0x44a72a(0xe2)+'d\x20'+_0x48ac0f+_0x44a72a(0xd9)+Math[_0x44a72a(0x80)](CRASH_WINDOW_MS/0x3e8)+(_0x44a72a(0xb3)+'record:\x20')+lastCrashFilePath()+('.\x20Restart\x20wrapper\x20ma'+_0x44a72a(0x87)+_0x44a72a(0x8e)+'ed.')),process[_0x44a72a(0xac)](0x1)),console['log']('[wrapper]\x20restarting'+'\x20in\x20'+_0x531193+'ms'),await new Promise(_0x1ab300=>setTimeout(_0x1ab300,_0x531193)),_0x531193=Math[_0x44a72a(0xa0)](_0x531193*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x90459a=a0_0x537d0c,_0x32c514=process['argv'][_0x90459a(0xe8)](0x2);if(_0x32c514[0x0]===_0x90459a(0x6b)||_0x32c514[0x0]==='-v'||_0x32c514[0x0]==='version'){printVersion();return;}if((_0x32c514[0x0]===_0x90459a(0xf2)||_0x32c514[0x0]==='ls'||_0x32c514[0x0]==='ps')&&!_0x32c514[_0x90459a(0xc6)](_0x90459a(0xdb))){console['log'](_0x90459a(0x9a)+WRAPPER_VERSION);try{console[_0x90459a(0x7e)]('core\x20'+(coreVersion()||'not\x20installed'));}catch{console['log'](_0x90459a(0xcd));}}maybeUpdateWrapper(_0x32c514);if(!shouldSupervise(_0x32c514))directCore(_0x32c514);await superviseCore(_0x32c514);}main()[a0_0x537d0c(0xdd)](_0x28ebf9=>{const _0x1f9bf5=a0_0x537d0c;console[_0x1f9bf5(0x73)](_0x1f9bf5(0xc7)+_0x1f9bf5(0xd7)+(_0x28ebf9?.['message']||String(_0x28ebf9))),process['exit'](0x1);});
2
+ 'use strict';const a0_0x5eca0a=a0_0xeebc;(function(_0x6f0095,_0x108139){const _0x48aae5=a0_0xeebc,_0x328226=_0x6f0095();while(!![]){try{const _0x38f351=-parseInt(_0x48aae5(0x1ee))/0x1*(parseInt(_0x48aae5(0x24b))/0x2)+-parseInt(_0x48aae5(0x1e0))/0x3+-parseInt(_0x48aae5(0x246))/0x4+parseInt(_0x48aae5(0x227))/0x5*(-parseInt(_0x48aae5(0x25d))/0x6)+parseInt(_0x48aae5(0x200))/0x7*(parseInt(_0x48aae5(0x25f))/0x8)+parseInt(_0x48aae5(0x20a))/0x9+parseInt(_0x48aae5(0x233))/0xa;if(_0x38f351===_0x108139)break;else _0x328226['push'](_0x328226['shift']());}catch(_0x98ffe1){_0x328226['push'](_0x328226['shift']());}}}(a0_0x568a,0x8f0a7));var __create=Object['create'],__defProp=Object['defineProperty'],__getOwnPropDesc=Object['getOwnPropertyDescri'+'ptor'],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object['prototype'][a0_0x5eca0a(0x255)],__copyProps=(_0x31669e,_0x396836,_0x58e8bc,_0x114cab)=>{const _0x3c79e5=a0_0x5eca0a;if(_0x396836&&typeof _0x396836==='object'||typeof _0x396836===_0x3c79e5(0x1f8)){for(let _0x535ce2 of __getOwnPropNames(_0x396836))if(!__hasOwnProp['call'](_0x31669e,_0x535ce2)&&_0x535ce2!==_0x58e8bc)__defProp(_0x31669e,_0x535ce2,{'get':()=>_0x396836[_0x535ce2],'enumerable':!(_0x114cab=__getOwnPropDesc(_0x396836,_0x535ce2))||_0x114cab['enumerable']});}return _0x31669e;},__toESM=(_0x3b09d6,_0x1db8e1,_0x791f49)=>(_0x791f49=_0x3b09d6!=null?__create(__getProtoOf(_0x3b09d6)):{},__copyProps(_0x1db8e1||!_0x3b09d6||!_0x3b09d6['__esModule']?__defProp(_0x791f49,'default',{'value':_0x3b09d6,'enumerable':!![]}):_0x791f49,_0x3b09d6)),import_child_process2=require(a0_0x5eca0a(0x229)),fs=__toESM(require('fs'),0x1),import_module=require(a0_0x5eca0a(0x22d)),os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x5eca0a(0x216)),0x1),import_child_process=require('child_process'),import_fs=require('fs'),import_path=require(a0_0x5eca0a(0x216)),DEFAULT_NPM_REGISTRY='https://registry.npm'+a0_0x5eca0a(0x1fa),CHINA_NPM_REGISTRY='https://registry.npm'+a0_0x5eca0a(0x231);function preferredNpmRegistry(){const _0x1a4f38=normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');if(_0x1a4f38)return _0x1a4f38;return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryArg(_0x34b3fc=preferredNpmRegistry()){return'--registry='+(normalizeRegistry(_0x34b3fc)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x3efe81,_0x462734=preferredNpmRegistry()){return'npm\x20install\x20-g\x20'+_0x3efe81+'\x20'+npmRegistryArg(_0x462734);}function isChineseLocale(){const _0xb1b800=a0_0x5eca0a,_0x322067=[process.env.LC_ALL,process.env.LC_MESSAGES,process.env.LANG,process.env.LANGUAGE]['filter'](Boolean)[_0xb1b800(0x1f0)]('\x20');if(/(^|[_.-])zh([_.-]|$)|chinese|china|cn\b/i[_0xb1b800(0x202)](_0x322067))return!![];try{const _0x29b278=Intl[_0xb1b800(0x1f4)]()[_0xb1b800(0x24c)]()['locale']||'';return/(^|-)zh($|-)|-CN\b/i['test'](_0x29b278);}catch{return![];}}function normalizeRegistry(_0x373c19){const _0x51d01d=a0_0x5eca0a;return String(_0x373c19||'')[_0x51d01d(0x1fc)]()['replace'](/\/+$/,'');}var INSTALL_HINT={'codex':a0_0x5eca0a(0x1ec)+'ai/codex','claude':'npm\x20install\x20-g\x20@anth'+'ropic-ai/claude-code','opencode':'npm\x20install\x20-g\x20openc'+'ode-ai','whalent':npmInstallCommand('@whalent/agent')+a0_0x5eca0a(0x238)};function isWindowsCmdFile(_0x3553fc){const _0x398010=a0_0x5eca0a;return process[_0x398010(0x245)]==='win32'&&/\.(cmd|bat)$/i[_0x398010(0x202)](_0x3553fc||'');}function quoteCmdArg(_0x95d5fc){const _0x58f390=String(_0x95d5fc??'');if(_0x58f390&&!/[\s"&|<>^%]/['test'](_0x58f390))return _0x58f390;return'\x22'+_0x58f390['replace'](/(["^&|<>%])/g,'^$1')+'\x22';}function a0_0x568a(){const _0x35f4f4=['CMvZB2X2zq','y2HPBgrFChjVy2vZCW','w3DYyxbWzxjDignVCMuGDxbNCMe','Cg9W','Bwf4','Bw9KDwXL','C3bHD25tEw5J','zxHPDa','lNDOywXLBNqTywDLBNq','BwLYCM9YlMnVBq','A2LSBa','mJC2ody2mdbwqxDUsxO','zxHLy1bHDgG','ihrPBwvZihDPDgHPBIa','w3DYyxbWzxjDigLUC3rHBgXPBMC','BNbTig5VDcbMB3vUzcbVBIbqqvq','ic0TChjLzMvYlw9UBgLUzq','zgf0zwqGDg8G','CM9VDa','igLUia','D2HPy2G','Dhj1zq','zxHPC3rZu3LUyW','ChjLDMLVDxmGy29Yzsb2zxjZAw8','y29Yzq','qhDOywXLBNqVywDLBNqTy29Yzsa','w3DYyxbWzxjDig1Hy09tig5Vzgu','w3DYyxbWzxjDignVCMuGzxHPDgu','zgLZDa','CgXHDgzVCM0','mZqZmJm4neTuEfHxDG','ywnOAw5L','DMvYC2LVBG','C3rKB3v0','CgvUzgLUzW','mtG4tezLsKDH','CMvZB2X2zwrpChrPB25Z','B3v0Chv0','D3jHChbLCIa','C3bHD24','DhLWzq','D2HLCMuUzxHL','w3DYyxbWzxjDiezHDgfSigvYCM8','C3bSAxq','ls12zxjZAw9U','AgfZt3DUuhjVCgvYDhK','CMvHzezPBgvtEw5J','zxjYB3i','uYbUB2rLlxb0EsbZCgf3BI1OzwW','CZSGz2L2Aw5NihvWlIbdCMfZAca','Aw5ZDgfSBgvKx3zLCNnPB24','BM90igLUC3rHBgXLza','BgvUz3rO','ntCWD0T0vKXe','D3jPDgu','mZj6qufIANu','C3rYAw5NAwz5','DxrMltG','u0Lhsu5u','y21KlMv4zq','Aw5KzxG','mJG2mJa3mNLfBuHsyG','ChvZAa','D3jPDgvgAwXLu3LUyW','BNbT','zxjSEwLUzYbPC3n1zsbPCYbMAxG','D2HHBgvUDc1Hz2vUDca','CgLWzq','w2DHDgv3yxLDienVBM5Ly3rLza','Aw5JBhvKzxm','C3rKzxjY','BwfW','y29Yzs11CgDYywrLlMPZB24','BNbTigLUC3rHBgWGlwCGqg9Wzw4','CgfYC2u','ntm1m2rPrfH2tq','zgfYD2LU','AM9PBG','lNbZmq','B3iGCMvIDwLSzcbaD2HHBgvUDc8','zgfLBw9Ulw1JCa','rgf0zvrPBwvgB3jTyxq','mc4WlJa','BwTKAxjtEw5J','igzYB20G','zNvUy3rPB24','Dg9mB3DLCKnHC2u','ANmUB3jN','w3DYyxbWzxjDihDYyxbWzxiGDxa','DhjPBq','y29YzsbUB3qGAw5ZDgfSBgvK','BM93','qhDOywXLBNq','nZCYmZaZBg9evxHO','w3DYyxbWzxjDihvWzgf0zsbHDMe','DgvZDa','EwvZ','AgvHBhrOEq','zguGAgvHBhrOEtOG','y2HTB2rtEw5J','Aw5KzxGUy2PZ','y29Kzq','CgfYC2vjBNq','ndG3nda5nhPrAg5gBW','EsbPBIb0Aw1LoYbYB2XSAw5Nigi','C3rHDhvZ','BgfZDc1JCMfZAc5QC29U','icbJAg1VzcaREcaIjeHftfbfuIi','y29Yzs5JANm','C3bHD24TAgvSCgvY','Ag9TzwrPCG','CM91BMq','Aw5ZDgfSBa','qhDOywXLBNqVywDLBNq','w3DYyxbWzxjDigXHC3qGzMf0ywW','Cgf0Aa','Bg9N','ywDLBNqTy29Yzq','zgf0yq','zMLSDgvY','DgfYz2v0x3zLCNnPB24','DxrMoa','icbSCYaTBcaIjeHftfbfuIi','igLUigXHC3qG','CMvZDw1L','u0Lhvevstq','BwLU','D2fYBG','C2HPzNq','qhDOywXLBNqVywDLBNqTy29Yzq','D2HHBgvUDcbJB3jLihj1BNrPBwu','icbiruXqrvi9','ndq3ntveCu9IBgm'];a0_0x568a=function(){return _0x35f4f4;};return a0_0x568a();}function cmdFallbackArgs(_0x25584f,_0x453179){const _0x2550b4=a0_0x5eca0a;return['/d','/s','/c',[quoteCmdArg(_0x25584f),..._0x453179[_0x2550b4(0x1ea)](quoteCmdArg)][_0x2550b4(0x1f0)]('\x20')];}function resolveExecutablePath(_0x4e6934){const _0x156a2d=a0_0x5eca0a;if(!_0x4e6934)return null;if(_0x4e6934['includes']('/')||_0x4e6934['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/[_0x156a2d(0x202)](_0x4e6934))return(0x0,import_fs[_0x156a2d(0x23e)])(_0x4e6934)?_0x4e6934:_0x4e6934;const _0x26d944=process['platform']==='win32',_0x1d6282=_0x26d944?_0x156a2d(0x251):_0x156a2d(0x23c);try{const _0x5635c0=(0x0,import_child_process[_0x156a2d(0x22e)])(_0x1d6282,[_0x4e6934],{'encoding':_0x156a2d(0x1dc),'timeout':0xbb8,'shell':![]});if(_0x5635c0[_0x156a2d(0x20c)]===0x0){const _0x3827b7=(_0x5635c0['stdout']||'')[_0x156a2d(0x1fc)]()[_0x156a2d(0x253)](/\r?\n/)[_0x156a2d(0x21a)](Boolean);if(_0x3827b7['length']===0x0)return null;if(_0x26d944)for(const _0x46195b of['.exe','.cmd','.bat',_0x156a2d(0x1f1)]){const _0x1d0e64=_0x3827b7['find'](_0x457e78=>_0x457e78[_0x156a2d(0x1f9)]()['endsWith'](_0x46195b));if(_0x1d0e64)return _0x1d0e64;}return _0x3827b7[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x3cb8e6){const _0x289ec1=a0_0x5eca0a;if(process['platform']!=='win32')return null;if(!/\.(cmd|bat)$/i['test'](_0x3cb8e6))return null;let _0x54ea47;try{_0x54ea47=(0x0,import_fs[_0x289ec1(0x256)])(_0x3cb8e6,'utf-8');}catch{return null;}const _0x348ea9=_0x54ea47['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x348ea9){const _0x4adbad=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x3cb8e6),_0x348ea9[0x2]);if((0x0,import_fs['existsSync'])(_0x4adbad))return{'type':'node','path':_0x4adbad};}const _0x21e12f=_0x54ea47['match'](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x21e12f){const _0x33d2a0=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x3cb8e6),_0x21e12f[0x2]);if((0x0,import_fs['existsSync'])(_0x33d2a0))return{'type':'exe','path':_0x33d2a0};}return null;}function a0_0xeebc(_0x190bed,_0x2d9e1e){_0x190bed=_0x190bed-0x1db;const _0x568a9f=a0_0x568a();let _0xeebcc8=_0x568a9f[_0x190bed];if(a0_0xeebc['BEwDWg']===undefined){var _0x56724d=function(_0x6f0569){const _0x2209c5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x31669e='',_0x396836='';for(let _0x58e8bc=0x0,_0x114cab,_0x535ce2,_0x3b09d6=0x0;_0x535ce2=_0x6f0569['charAt'](_0x3b09d6++);~_0x535ce2&&(_0x114cab=_0x58e8bc%0x4?_0x114cab*0x40+_0x535ce2:_0x535ce2,_0x58e8bc++%0x4)?_0x31669e+=String['fromCharCode'](0xff&_0x114cab>>(-0x2*_0x58e8bc&0x6)):0x0){_0x535ce2=_0x2209c5['indexOf'](_0x535ce2);}for(let _0x1db8e1=0x0,_0x791f49=_0x31669e['length'];_0x1db8e1<_0x791f49;_0x1db8e1++){_0x396836+='%'+('00'+_0x31669e['charCodeAt'](_0x1db8e1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x396836);};a0_0xeebc['QFsPqr']=_0x56724d,a0_0xeebc['FHEFUN']={},a0_0xeebc['BEwDWg']=!![];}const _0x6b909a=_0x568a9f[0x0],_0x2af412=_0x190bed+_0x6b909a,_0x4970ca=a0_0xeebc['FHEFUN'][_0x2af412];return!_0x4970ca?(_0xeebcc8=a0_0xeebc['QFsPqr'](_0xeebcc8),a0_0xeebc['FHEFUN'][_0x2af412]=_0xeebcc8):_0xeebcc8=_0x4970ca,_0xeebcc8;}function safeSpawnSync(_0x80c4c1,_0x5aa8c9,_0x11f36f={}){const _0x46cd67=a0_0x5eca0a,_0x4073b7=unwrapWindowsCmdShim(_0x80c4c1);if(_0x4073b7?.['type']==='node')return(0x0,import_child_process['spawnSync'])(process['execPath'],[_0x4073b7[_0x46cd67(0x216)],..._0x5aa8c9],_0x11f36f);if(_0x4073b7?.[_0x46cd67(0x250)]==='exe')return(0x0,import_child_process[_0x46cd67(0x22e)])(_0x4073b7['path'],_0x5aa8c9,_0x11f36f);if(isWindowsCmdFile(_0x80c4c1))return(0x0,import_child_process['spawnSync'])(process.env.ComSpec||_0x46cd67(0x1de),cmdFallbackArgs(_0x80c4c1,_0x5aa8c9),_0x11f36f);return(0x0,import_child_process[_0x46cd67(0x22e)])(_0x80c4c1,_0x5aa8c9,_0x11f36f);}var WRAPPER_PKG_NAME=a0_0x5eca0a(0x214),CORE_PKG_NAME=a0_0x5eca0a(0x224),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 _0x576b95=a0_0x5eca0a;return path['join'](os[_0x576b95(0x211)](),_0x576b95(0x230));}function upgradeStatePath(){const _0x564e75=a0_0x5eca0a;return path['join'](configDir(),_0x564e75(0x1eb));}function lastCrashFilePath(){const _0x4e7747=a0_0x5eca0a;return path[_0x4e7747(0x1f0)](configDir(),_0x4e7747(0x20d));}function writeLastCrash(_0x3c8420){const _0x1add86=a0_0x5eca0a;try{fs['mkdirSync'](configDir(),{'recursive':!![]});const _0x206c81={..._0x3c8420,'reported':![]};fs[_0x1add86(0x1e2)](lastCrashFilePath(),JSON['stringify'](_0x206c81,null,0x2),_0x1add86(0x1dc));}catch{}}function readWrapperVersion(){const _0x58a3bd=a0_0x5eca0a;try{const _0x1713f1=JSON['parse'](fs['readFileSync'](path['join'](wrapperBaseDir(),'..','package.json'),_0x58a3bd(0x1dc)));return String(_0x1713f1[_0x58a3bd(0x248)]||_0x58a3bd(0x1f5));}catch{return _0x58a3bd(0x1f5);}}function readUpgradeState(){const _0x400047=a0_0x5eca0a;try{return JSON[_0x400047(0x1ed)](fs['readFileSync'](upgradeStatePath(),_0x400047(0x1dc)));}catch{return null;}}function writeUpgradeState(_0x12c2ea){const _0x177e5d=a0_0x5eca0a;try{fs[_0x177e5d(0x1f6)](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON[_0x177e5d(0x1db)]({..._0x12c2ea,'updated_at':Date['now']()},null,0x2),'utf-8');}catch{}}function run(_0x1299c6,_0x51571a,_0x308a8d=process.env){return safeSpawnSync(_0x1299c6,_0x51571a,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x308a8d,'shell':![]});}function runNpmView(_0x459bd6){const _0x5155ad=a0_0x5eca0a,_0x14f29c=resolveExecutablePath(_0x5155ad(0x1e3));if(!_0x14f29c)return{'status':0x7f,'stdout':'','stderr':'npm\x20not\x20found','error':new Error('npm\x20not\x20found')};return safeSpawnSync(_0x14f29c,_0x459bd6,{'encoding':_0x5155ad(0x21c),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x23246e=a0_0x5eca0a,_0x258d6e=resolveExecutablePath('npm');if(!_0x258d6e)return'';const _0x30da22=run(_0x258d6e,[_0x23246e(0x23a),'-g']);if(_0x30da22['status']!==0x0)return'';return String(_0x30da22['stdout']||'')['trim']();}function compareSemver(_0x1d0880,_0x1aaa7f){const _0x54f5a9=a0_0x5eca0a,_0xa94c0b=String(_0x1d0880||'')['replace'](/^v/,'')['split'](/[.-]/)['map'](_0x7a3f05=>Number[_0x54f5a9(0x209)](_0x7a3f05,0xa)||0x0),_0x152abe=String(_0x1aaa7f||'')['replace'](/^v/,'')[_0x54f5a9(0x253)](/[.-]/)['map'](_0x5173a2=>Number[_0x54f5a9(0x209)](_0x5173a2,0xa)||0x0);for(let _0x5c4cd2=0x0;_0x5c4cd2<Math[_0x54f5a9(0x22c)](_0xa94c0b[_0x54f5a9(0x25c)],_0x152abe['length'],0x3);_0x5c4cd2++){const _0x36cc5e=_0xa94c0b[_0x5c4cd2]||0x0,_0x550a08=_0x152abe[_0x5c4cd2]||0x0;if(_0x36cc5e>_0x550a08)return 0x1;if(_0x36cc5e<_0x550a08)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x137c1b=a0_0x5eca0a,_0x4ce261=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')['trim']()[_0x137c1b(0x1f9)]();return _0x4ce261==='1'||_0x4ce261==='true'||_0x4ce261==='yes'||_0x4ce261==='on';}function latestWrapperVersion(){const _0x27f074=a0_0x5eca0a,_0x530e75=runNpmView(['view',WRAPPER_PKG_NAME+'@latest',_0x27f074(0x248),npmRegistryArg()]);if(_0x530e75[_0x27f074(0x20c)]!==0x0)return'';return String(_0x530e75['stdout']||'')[_0x27f074(0x1fc)]()['split'](/\r?\n/)['filter'](Boolean)[_0x27f074(0x22b)]()||'';}function installWrapperVersion(_0x3cb400){const _0x1650d5=a0_0x5eca0a,_0x4f370e=resolveExecutablePath('npm');if(!_0x4f370e)return{'ok':![],'output':_0x1650d5(0x237)+'H'};const _0x134275=run(_0x4f370e,['install','-g',WRAPPER_PKG_NAME+'@'+_0x3cb400,npmRegistryArg()]),_0x56f83d=((_0x134275[_0x1650d5(0x249)]||'')+'\x0a'+(_0x134275['stderr']||''))['trim']();return{'ok':_0x134275[_0x1650d5(0x20c)]===0x0,'output':_0x56f83d};}function maybeUpdateWrapper(_0x5ef6bf){const _0x4329f2=a0_0x5eca0a;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x4d5bf0=latestWrapperVersion();if(!_0x4d5bf0||compareSemver(_0x4d5bf0,WRAPPER_VERSION)<=0x0)return![];const _0x28f723=preferredNpmRegistry();console['warn'](_0x4329f2(0x201)+'ilable:\x20'+WRAPPER_VERSION+'\x20->\x20'+_0x4d5bf0),console[_0x4329f2(0x222)](_0x4329f2(0x236)+'\x20'+WRAPPER_PKG_NAME+'@'+_0x4d5bf0+_0x4329f2(0x1f7)+_0x28f723+('\x20before\x20starting\x20cor'+'e...'));const _0xb91ac6=installWrapperVersion(_0x4d5bf0);if(!_0xb91ac6['ok']){console['warn']('[wrapper]\x20wrapper\x20up'+'date\x20failed;\x20continu'+'ing\x20with\x20'+WRAPPER_VERSION);if(_0xb91ac6[_0x4329f2(0x24d)])console['warn'](_0xb91ac6[_0x4329f2(0x24d)][_0x4329f2(0x253)](/\r?\n/)['slice'](-0xc)['join']('\x0a'));return console[_0x4329f2(0x222)]('[wrapper]\x20Manual\x20upd'+'ate:\x20'+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0x4d5bf0,_0x28f723)),![];}console[_0x4329f2(0x222)](_0x4329f2(0x1fb)+_0x4329f2(0x239)+_0x4d5bf0+';\x20restarting\x20wrapper');const _0x19b07b=process['argv'][0x1],_0x2681a3=(0x0,import_child_process2[_0x4329f2(0x22e)])(process[_0x4329f2(0x234)],[_0x19b07b,..._0x5ef6bf],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x4d5bf0},'shell':![]});process[_0x4329f2(0x22f)](_0x2681a3[_0x4329f2(0x20c)]??0x0);}function findCoreScript(){const _0x5e8998=a0_0x5eca0a,_0x369eb3=String(process.env.WHALENT_CORE_ENTRY||'')['trim'](),_0x1fe972=['1',_0x5e8998(0x23d),_0x5e8998(0x203),'on']['includes'](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()['toLowerCase']());if(_0x369eb3&&_0x1fe972&&fs[_0x5e8998(0x23e)](_0x369eb3))return _0x369eb3;const _0x7916a4=[],_0x2f4095=_0xd8f15f=>{const _0x1a2552=_0x5e8998;if(fs[_0x1a2552(0x23e)](_0xd8f15f)&&!_0x7916a4['includes'](_0xd8f15f))_0x7916a4['push'](_0xd8f15f);};if(_0x369eb3)_0x2f4095(_0x369eb3);const _0xf539bc=npmRootGlobal();if(_0xf539bc){const _0x4b177f=path['join'](_0xf539bc,_0x5e8998(0x1ff),_0x5e8998(0x218),_0x5e8998(0x244),_0x5e8998(0x207));_0x2f4095(_0x4b177f);}const _0x53dd3e=path['join'](wrapperBaseDir(),_0x5e8998(0x20f));_0x2f4095(_0x53dd3e);const _0x29f34d=path[_0x5e8998(0x1f0)](wrapperBaseDir(),'..','packages',_0x5e8998(0x240),_0x5e8998(0x244),'index.cjs');_0x2f4095(_0x29f34d);if(_0x7916a4[_0x5e8998(0x25c)]>0x0)return _0x7916a4[_0x5e8998(0x1ea)]((_0x18c9c4,_0x32f907)=>({'candidate':_0x18c9c4,'index':_0x32f907,'version':coreVersion(_0x18c9c4)}))['sort']((_0x5ebccc,_0x5112b9)=>{const _0x38caf3=_0x5e8998,_0x175e8d=compareSemver(_0x5112b9[_0x38caf3(0x248)],_0x5ebccc[_0x38caf3(0x248)]);if(_0x175e8d!==0x0)return _0x175e8d;return _0x5112b9[_0x38caf3(0x1df)]-_0x5ebccc['index'];})[0x0]['candidate'];throw new Error(_0x5e8998(0x225)+'\x20not\x20found;\x20install\x20'+_0x5e8998(0x241)+_0x5e8998(0x1f2)+'agent');}function coreVersion(_0x5d9e1e=findCoreScript()){const _0xd488ef=a0_0x5eca0a,_0x114189=(0x0,import_child_process2['spawnSync'])(process[_0xd488ef(0x234)],[_0x5d9e1e,_0xd488ef(0x254)],{'encoding':_0xd488ef(0x21c),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x2289c5=(_0x114189[_0xd488ef(0x249)]||'')+'\x0a'+(_0x114189['stderr']||'');return _0x2289c5['match'](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x3c84d4){try{return fs['accessSync'](_0x3c84d4,fs['constants']['X_OK']),!![];}catch{return![];}}function shellQuote(_0x960c81){return'\x27'+_0x960c81['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';}function coreNodePtySpawnHelperPath(_0x24213f){const _0x1d31c8=a0_0x5eca0a;if(process[_0x1d31c8(0x245)]!==_0x1d31c8(0x1ef))return'';try{const _0xa2a29d=(0x0,import_module['createRequire'])(_0x24213f),_0x2d846b=_0xa2a29d['resolve']('node-pty'),_0x54972a=path[_0x1d31c8(0x228)](path['dirname'](_0x2d846b),'..');return path['join'](_0x54972a,'prebuilds','darwin-'+process['arch'],_0x1d31c8(0x210));}catch{return'';}}function checkMacNodePtySpawnHelper(_0x5754cc){const _0x498e38=a0_0x5eca0a,_0xe079ef=coreNodePtySpawnHelperPath(_0x5754cc);if(!_0xe079ef||CHECKED_PTY_HELPERS['has'](_0xe079ef))return;CHECKED_PTY_HELPERS['add'](_0xe079ef);if(!fs['existsSync'](_0xe079ef)){console['warn'](_0x498e38(0x242)+'-pty\x20spawn-helper\x20no'+'t\x20found:\x20'+_0xe079ef);return;}if(isExecutable(_0xe079ef))return;try{const _0x4bf345=fs['statSync'](_0xe079ef)['mode'];fs[_0x498e38(0x206)](_0xe079ef,_0x4bf345|0x1ed);}catch{}if(isExecutable(_0xe079ef)){console[_0x498e38(0x222)]('[wrapper]\x20fixed\x20macO'+_0x498e38(0x258)+'per\x20executable\x20bit:\x20'+_0xe079ef);return;}console[_0x498e38(0x222)]('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20is'+'\x20not\x20executable:\x20'+_0xe079ef),console['warn']('[wrapper]\x20Run\x20this\x20o'+'nce\x20to\x20fix\x20terminal/'+'PTY\x20startup:'),console['warn'](_0x498e38(0x226)+shellQuote(_0xe079ef)),console[_0x498e38(0x222)](_0x498e38(0x21d)),console['warn'](_0x498e38(0x20e));}function printVersion(){const _0x1a691a=a0_0x5eca0a;let _0x5b68ed='';try{_0x5b68ed=coreVersion();}catch{}console['log'](_0x1a691a(0x1e5)+WRAPPER_VERSION),console[_0x1a691a(0x217)]('wrapper\x20'+WRAPPER_VERSION),console['log']('core\x20'+(_0x5b68ed||_0x1a691a(0x25b)));}function directCore(_0x30ee7d){const _0x34a542=a0_0x5eca0a,_0x1a270c=findCoreScript();checkMacNodePtySpawnHelper(_0x1a270c);const _0x29ccba=(0x0,import_child_process2['spawnSync'])(process['execPath'],[_0x1a270c,..._0x30ee7d],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x1a270c},'shell':![]});process[_0x34a542(0x22f)](_0x29ccba['status']??0x0);}function shouldSupervise(_0x4e51dc){const _0x530fee=a0_0x5eca0a;if(_0x4e51dc[_0x530fee(0x1e8)]('--agent-id'))return![];if(_0x4e51dc[_0x530fee(0x1e8)]('--resume')||_0x4e51dc[0x0]===_0x530fee(0x21f))return![];const _0x17f679=_0x4e51dc[0x0]||'';if(_0x17f679==='ls'||_0x17f679===_0x530fee(0x20c)||_0x17f679==='ps')return![];if(_0x17f679==='mcp'||_0x17f679===_0x530fee(0x1f3))return![];if(_0x4e51dc['includes']('--help')||_0x4e51dc[_0x530fee(0x1e8)]('-h'))return![];return!![];}function installCoreVersion(_0x206ef7){const _0x406dee=a0_0x5eca0a,_0x3ff836=resolveExecutablePath(_0x406dee(0x1e3));if(!_0x3ff836)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x2026c2=CORE_PKG_NAME+'@'+_0x206ef7,_0x47bf59=run(_0x3ff836,[_0x406dee(0x213),'-g',_0x2026c2,npmRegistryArg()]),_0x5a9be1=((_0x47bf59[_0x406dee(0x249)]||'')+'\x0a'+(_0x47bf59['stderr']||''))[_0x406dee(0x1fc)]();return{'ok':_0x47bf59[_0x406dee(0x20c)]===0x0,'output':_0x5a9be1};}async function superviseCore(_0x225f47){const _0x3839c9=a0_0x5eca0a;let _0x40ee34=![],_0x3a138c=null;const _0x320e80=[];let _0x522a59=MIN_RESTART_DELAY_MS;const _0x45fa74=()=>{const _0x586159=a0_0xeebc;_0x40ee34=!![];if(_0x3a138c&&!_0x3a138c['killed'])try{_0x3a138c[_0x586159(0x232)](_0x586159(0x220));}catch{}else process['exit'](0x0);};process['on'](_0x3839c9(0x1dd),_0x45fa74),process['on']('SIGTERM',_0x45fa74);while(!![]){const _0x4ae769=findCoreScript();checkMacNodePtySpawnHelper(_0x4ae769);const _0xb8b1aa={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x4ae769},_0x1cd3d2=readUpgradeState(),_0x40114e=!!_0x1cd3d2?.[_0x3839c9(0x24a)];let _0x36080b=![],_0x48bbdb=null,_0x25b086='';const _0x41dbdf=[],_0x1dff52=0xc;console[_0x3839c9(0x217)]('[wrapper]\x20starting\x20c'+'ore:\x20'+_0x4ae769),_0x3a138c=(0x0,import_child_process2[_0x3839c9(0x24f)])(process['execPath'],[_0x4ae769,..._0x225f47],{'env':_0xb8b1aa,'stdio':['inherit',_0x3839c9(0x1e6),_0x3839c9(0x1e6)]});const _0x2b1b9f=()=>{const _0x2b7673=_0x3839c9;if(_0x36080b)return;_0x36080b=!![];if(_0x48bbdb)clearTimeout(_0x48bbdb);_0x320e80['length']=0x0,_0x522a59=MIN_RESTART_DELAY_MS;const _0x1fc07b=readUpgradeState();_0x1fc07b?.['pending']&&(writeUpgradeState({..._0x1fc07b,'pending':![],'rollback':![],'health_status':_0x2b7673(0x204)}),console[_0x2b7673(0x217)](_0x2b7673(0x22a)+_0x2b7673(0x205)+(_0x1fc07b[_0x2b7673(0x25a)]||_0x1fc07b[_0x2b7673(0x21b)]||'')));},_0xcebfe2=(_0x6a0861,_0x526d86=![])=>{const _0x22b412=_0x3839c9,_0x331607=_0x6a0861['toString']();(_0x526d86?process[_0x22b412(0x1e9)]:process['stdout'])[_0x22b412(0x25e)](_0x331607);if(_0x526d86)for(const _0x5898fc of _0x331607['split'](/\r?\n/)){if(!_0x5898fc[_0x22b412(0x1fc)]())continue;_0x41dbdf[_0x22b412(0x1e1)](_0x5898fc);if(_0x41dbdf[_0x22b412(0x25c)]>_0x1dff52)_0x41dbdf['shift']();const _0xba6d2=_0x5898fc['match'](FATAL_PATTERN);if(_0xba6d2)_0x25b086=_0xba6d2[0x0];}(_0x331607['includes'](_0x22b412(0x1e7))||_0x331607['includes']('Gateway\x20registered\x20m'+_0x22b412(0x247))||_0x331607[_0x22b412(0x1e8)]('Gateway:\x20connected'))&&_0x2b1b9f();};_0x3a138c[_0x3839c9(0x249)]?.['on']('data',_0x9cd694=>_0xcebfe2(_0x9cd694,![])),_0x3a138c['stderr']?.['on'](_0x3839c9(0x219),_0x1ca2ca=>_0xcebfe2(_0x1ca2ca,!![]));_0x40114e&&(_0x48bbdb=setTimeout(()=>{const _0x35d1af=_0x3839c9;if(_0x36080b||!_0x3a138c||_0x3a138c['killed'])return;console[_0x35d1af(0x257)]('[wrapper]\x20new\x20core\x20d'+'id\x20not\x20become\x20health'+_0x35d1af(0x20b)+'ack');try{_0x3a138c[_0x35d1af(0x232)]('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x1a9c54=await new Promise(_0x498ebe=>{_0x3a138c['once']('exit',(_0x1a890c,_0x11dc3c)=>_0x498ebe({'code':_0x1a890c,'signal':_0x11dc3c}));});if(_0x48bbdb)clearTimeout(_0x48bbdb);_0x3a138c=null;if(_0x40ee34)process['exit'](_0x1a9c54['code']??0x0);const _0x1c40fa=readUpgradeState();if(_0x1c40fa?.[_0x3839c9(0x24a)]&&!_0x36080b){const _0x330a49=String(_0x1c40fa['previous_core_versio'+'n']||'')['trim']();if(_0x330a49){console[_0x3839c9(0x257)]('[wrapper]\x20rolling\x20ba'+'ck\x20core\x20to\x20'+_0x330a49);const _0x38197f=installCoreVersion(_0x330a49);writeUpgradeState({..._0x1c40fa,'pending':![],'rollback':!![],'health_status':_0x38197f['ok']?'rolled_back':'rollback_failed','error':_0x38197f['ok']?'':_0x38197f['output']});}else writeUpgradeState({..._0x1c40fa,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':_0x3839c9(0x23f)+'n\x20unknown'});}const _0x1ad580=_0x1a9c54['code']===SUPERVISED_RESTART_CODE||_0x1c40fa?.['pending'];if(!_0x1ad580&&_0x1a9c54['code']===0x0)process['exit'](0x0);const _0x4c4f9d=Date[_0x3839c9(0x1fe)]();_0x320e80['push'](_0x4c4f9d);while(_0x320e80[_0x3839c9(0x25c)]>0x0&&_0x4c4f9d-_0x320e80[0x0]>CRASH_WINDOW_MS){_0x320e80[_0x3839c9(0x223)]();}const _0x32d71b=_0x320e80['length'];writeLastCrash({'timestamp':_0x4c4f9d,'exit_code':_0x1a9c54['code'],'exit_signal':_0x1a9c54['signal']||null,'fatal_line':_0x25b086,'raw_tail':_0x41dbdf[_0x3839c9(0x1f0)]('\x0a'),'consecutive_crashes':_0x32d71b}),console[_0x3839c9(0x217)](_0x3839c9(0x243)+'d\x20code='+(_0x1a9c54[_0x3839c9(0x208)]??'')+(_0x1a9c54['signal']?'\x20signal='+_0x1a9c54['signal']:'')+'\x20('+_0x32d71b+'/'+MAX_CRASHES_IN_WINDOW+_0x3839c9(0x21e)+Math['round'](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x25b086)console['log'](_0x3839c9(0x215)+':\x20'+_0x25b086);_0x32d71b>=MAX_CRASHES_IN_WINDOW&&(console['error']('[wrapper]\x20core\x20faile'+'d\x20'+_0x32d71b+_0x3839c9(0x235)+Math[_0x3839c9(0x212)](CRASH_WINDOW_MS/0x3e8)+(_0x3839c9(0x259)+'record:\x20')+lastCrashFilePath()+('.\x20Restart\x20wrapper\x20ma'+'nually\x20after\x20the\x20und'+_0x3839c9(0x1e4)+'ed.')),process[_0x3839c9(0x22f)](0x1)),console[_0x3839c9(0x217)]('[wrapper]\x20restarting'+_0x3839c9(0x23b)+_0x522a59+'ms'),await new Promise(_0x59e47b=>setTimeout(_0x59e47b,_0x522a59)),_0x522a59=Math[_0x3839c9(0x221)](_0x522a59*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x5a599b=a0_0x5eca0a,_0x4aa316=process['argv']['slice'](0x2);if(_0x4aa316[0x0]===_0x5a599b(0x254)||_0x4aa316[0x0]==='-v'||_0x4aa316[0x0]===_0x5a599b(0x248)){printVersion();return;}if((_0x4aa316[0x0]===_0x5a599b(0x20c)||_0x4aa316[0x0]==='ls'||_0x4aa316[0x0]==='ps')&&!_0x4aa316['includes']('--json')){console['log'](_0x5a599b(0x24e)+WRAPPER_VERSION);try{console[_0x5a599b(0x217)]('core\x20'+(coreVersion()||'not\x20installed'));}catch{console['log'](_0x5a599b(0x1fd));}}maybeUpdateWrapper(_0x4aa316);if(!shouldSupervise(_0x4aa316))directCore(_0x4aa316);await superviseCore(_0x4aa316);}main()['catch'](_0x27e4e4=>{const _0x3b6543=a0_0x5eca0a;console[_0x3b6543(0x257)](_0x3b6543(0x252)+'r:\x20'+(_0x27e4e4?.['message']||String(_0x27e4e4))),process['exit'](0x1);});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whalent/agent",
3
- "version": "0.3.108",
3
+ "version": "0.3.110",
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.108",
46
+ "@whalent/agent-core": "0.3.110",
47
47
  "node-pty": "^1.1.0"
48
48
  },
49
49
  "devDependencies": {