@whalent/agent 0.3.112 → 0.3.114
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_0x5037bd=a0_0x12d6;(function(_0x23d946,_0x35cd17){const _0x592800=a0_0x12d6,_0x4f5b38=_0x23d946();while(!![]){try{const _0x37abde=-parseInt(_0x592800(0x18f))/0x1+parseInt(_0x592800(0x1e0))/0x2+-parseInt(_0x592800(0x15c))/0x3+parseInt(_0x592800(0x15f))/0x4*(-parseInt(_0x592800(0x171))/0x5)+-parseInt(_0x592800(0x175))/0x6*(-parseInt(_0x592800(0x1a4))/0x7)+-parseInt(_0x592800(0x195))/0x8*(parseInt(_0x592800(0x19d))/0x9)+parseInt(_0x592800(0x1d1))/0xa;if(_0x37abde===_0x35cd17)break;else _0x4f5b38['push'](_0x4f5b38['shift']());}catch(_0x2c0c04){_0x4f5b38['push'](_0x4f5b38['shift']());}}}(a0_0x32ae,0xa9162));var __create=Object['create'],__defProp=Object['defineProperty'],__getOwnPropDesc=Object['getOwnPropertyDescri'+a0_0x5037bd(0x1ac)],__getOwnPropNames=Object[a0_0x5037bd(0x16c)],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object['prototype'][a0_0x5037bd(0x1cd)],__copyProps=(_0x195f8a,_0x4100d2,_0x3e552c,_0x91d6c7)=>{const _0x3ace8b=a0_0x5037bd;if(_0x4100d2&&typeof _0x4100d2==='object'||typeof _0x4100d2==='function'){for(let _0x58c171 of __getOwnPropNames(_0x4100d2))if(!__hasOwnProp[_0x3ace8b(0x1d5)](_0x195f8a,_0x58c171)&&_0x58c171!==_0x3e552c)__defProp(_0x195f8a,_0x58c171,{'get':()=>_0x4100d2[_0x58c171],'enumerable':!(_0x91d6c7=__getOwnPropDesc(_0x4100d2,_0x58c171))||_0x91d6c7[_0x3ace8b(0x1c5)]});}return _0x195f8a;},__toESM=(_0x330a0f,_0x34767e,_0x407d0b)=>(_0x407d0b=_0x330a0f!=null?__create(__getProtoOf(_0x330a0f)):{},__copyProps(_0x34767e||!_0x330a0f||!_0x330a0f[a0_0x5037bd(0x182)]?__defProp(_0x407d0b,'default',{'value':_0x330a0f,'enumerable':!![]}):_0x407d0b,_0x330a0f)),import_child_process2=require(a0_0x5037bd(0x1d3)),fs=__toESM(require('fs'),0x1),import_module=require('module'),os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x5037bd(0x1bf)),0x1),import_child_process=require(a0_0x5037bd(0x1d3)),import_fs=require('fs'),import_path=require('path'),DEFAULT_NPM_REGISTRY='https://registry.npm'+a0_0x5037bd(0x1af),CHINA_NPM_REGISTRY=a0_0x5037bd(0x178)+'mirror.com';function preferredNpmRegistry(){const _0x247dc8=normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');if(_0x247dc8)return _0x247dc8;return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryArg(_0x291453=preferredNpmRegistry()){return'--registry='+(normalizeRegistry(_0x291453)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x19535f,_0x40ca2d=preferredNpmRegistry()){const _0x3b82b1=a0_0x5037bd;return _0x3b82b1(0x1b6)+_0x19535f+'\x20'+npmRegistryArg(_0x40ca2d);}function isChineseLocale(){const _0x327e32=[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['test'](_0x327e32))return!![];try{const _0x3d8408=Intl['DateTimeFormat']()['resolvedOptions']()['locale']||'';return/(^|-)zh($|-)|-CN\b/i['test'](_0x3d8408);}catch{return![];}}function normalizeRegistry(_0x2e2a56){const _0x414926=a0_0x5037bd;return String(_0x2e2a56||'')[_0x414926(0x14d)]()['replace'](/\/+$/,'');}var INSTALL_HINT={'codex':'npm\x20install\x20-g\x20@open'+a0_0x5037bd(0x17a),'claude':'npm\x20install\x20-g\x20@anth'+'ropic-ai/claude-code','opencode':'npm\x20install\x20-g\x20openc'+'ode-ai','whalent':npmInstallCommand(a0_0x5037bd(0x18b))+a0_0x5037bd(0x14f)};function isWindowsCmdFile(_0x36895f){const _0x405402=a0_0x5037bd;return process['platform']==='win32'&&/\.(cmd|bat)$/i[_0x405402(0x191)](_0x36895f||'');}function quoteCmdArg(_0x4f6eee){const _0x1850ee=a0_0x5037bd,_0x740797=String(_0x4f6eee??'');if(_0x740797&&!/[\s"&|<>^%]/['test'](_0x740797))return _0x740797;return'\x22'+_0x740797[_0x1850ee(0x158)](/(["^&|<>%])/g,_0x1850ee(0x1c3))+'\x22';}function cmdFallbackArgs(_0x46226a,_0x19af2d){const _0x5e2e31=a0_0x5037bd;return['/d','/s','/c',[quoteCmdArg(_0x46226a),..._0x19af2d[_0x5e2e31(0x1da)](quoteCmdArg)]['join']('\x20')];}function resolveExecutablePath(_0x55fe12){const _0x1c95f5=a0_0x5037bd;if(!_0x55fe12)return null;if(_0x55fe12[_0x1c95f5(0x19e)]('/')||_0x55fe12['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/[_0x1c95f5(0x191)](_0x55fe12))return(0x0,import_fs['existsSync'])(_0x55fe12)?_0x55fe12:_0x55fe12;const _0x32a319=process[_0x1c95f5(0x1d2)]==='win32',_0x29bbdd=_0x32a319?'where.exe':_0x1c95f5(0x181);try{const _0x2b50f3=(0x0,import_child_process[_0x1c95f5(0x19f)])(_0x29bbdd,[_0x55fe12],{'encoding':'utf-8','timeout':0xbb8,'shell':![]});if(_0x2b50f3[_0x1c95f5(0x167)]===0x0){const _0x842774=(_0x2b50f3[_0x1c95f5(0x1bd)]||'')[_0x1c95f5(0x14d)]()[_0x1c95f5(0x16e)](/\r?\n/)['filter'](Boolean);if(_0x842774['length']===0x0)return null;if(_0x32a319)for(const _0x543987 of['.exe',_0x1c95f5(0x1bc),'.bat',_0x1c95f5(0x187)]){const _0x3e9ac6=_0x842774[_0x1c95f5(0x147)](_0x53a02c=>_0x53a02c[_0x1c95f5(0x1a1)]()[_0x1c95f5(0x1b5)](_0x543987));if(_0x3e9ac6)return _0x3e9ac6;}return _0x842774[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x4def3f){const _0x27e2af=a0_0x5037bd;if(process[_0x27e2af(0x1d2)]!=='win32')return null;if(!/\.(cmd|bat)$/i['test'](_0x4def3f))return null;let _0x85b9f1;try{_0x85b9f1=(0x0,import_fs['readFileSync'])(_0x4def3f,'utf-8');}catch{return null;}const _0x5a78c1=_0x85b9f1['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x5a78c1){const _0x3c74cf=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x4def3f),_0x5a78c1[0x2]);if((0x0,import_fs[_0x27e2af(0x17e)])(_0x3c74cf))return{'type':_0x27e2af(0x18c),'path':_0x3c74cf};}const _0x118ff2=_0x85b9f1['match'](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x118ff2){const _0x3c2682=(0x0,import_path[_0x27e2af(0x1be)])((0x0,import_path[_0x27e2af(0x1b7)])(_0x4def3f),_0x118ff2[0x2]);if((0x0,import_fs['existsSync'])(_0x3c2682))return{'type':'exe','path':_0x3c2682};}return null;}function safeSpawnSync(_0xd19ddb,_0x2a8875,_0xdf7df8={}){const _0x3fad58=a0_0x5037bd,_0x4e31b4=unwrapWindowsCmdShim(_0xd19ddb);if(_0x4e31b4?.[_0x3fad58(0x1b1)]===_0x3fad58(0x18c))return(0x0,import_child_process[_0x3fad58(0x19f)])(process['execPath'],[_0x4e31b4['path'],..._0x2a8875],_0xdf7df8);if(_0x4e31b4?.['type']===_0x3fad58(0x185))return(0x0,import_child_process[_0x3fad58(0x19f)])(_0x4e31b4[_0x3fad58(0x1bf)],_0x2a8875,_0xdf7df8);if(isWindowsCmdFile(_0xd19ddb))return(0x0,import_child_process['spawnSync'])(process.env.ComSpec||_0x3fad58(0x198),cmdFallbackArgs(_0xd19ddb,_0x2a8875),_0xdf7df8);return(0x0,import_child_process['spawnSync'])(_0xd19ddb,_0x2a8875,_0xdf7df8);}var WRAPPER_PKG_NAME='@whalent/agent',CORE_PKG_NAME=a0_0x5037bd(0x177),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 _0x41df0b=a0_0x5037bd;return path['join'](os['homedir'](),_0x41df0b(0x160));}function upgradeStatePath(){const _0x285e8a=a0_0x5037bd;return path[_0x285e8a(0x168)](configDir(),_0x285e8a(0x174));}function lastCrashFilePath(){const _0x2aeeb6=a0_0x5037bd;return path[_0x2aeeb6(0x168)](configDir(),_0x2aeeb6(0x196));}function writeLastCrash(_0x12dc80){const _0x1402ec=a0_0x5037bd;try{fs[_0x1402ec(0x1c2)](configDir(),{'recursive':!![]});const _0x487250={..._0x12dc80,'reported':![]};fs[_0x1402ec(0x148)](lastCrashFilePath(),JSON[_0x1402ec(0x1a5)](_0x487250,null,0x2),_0x1402ec(0x1c6));}catch{}}function readWrapperVersion(){const _0x1b8617=a0_0x5037bd;try{const _0x26d83d=JSON[_0x1b8617(0x157)](fs['readFileSync'](path['join'](wrapperBaseDir(),'..',_0x1b8617(0x194)),_0x1b8617(0x1c6)));return String(_0x26d83d['version']||_0x1b8617(0x1ca));}catch{return'0.0.0';}}function a0_0x32ae(){const _0x562980=['BNbTig5VDcbMB3vUzcbVBIbqqvq','CgfJA2fNzs5QC29U','mJy0DgHtsM1J','BgfZDc1JCMfZAc5QC29U','C2LNBMfS','y21KlMv4zq','w3DYyxbWzxjDig1Hy09tig5Vzgu','ig5VDcbLEgvJDxrHyMXLoIa','CM9VDa','AwqGBM90igjLy29TzsbOzwfSDgG','mtuWntC5A292uwzU','Aw5JBhvKzxm','C3bHD25tEw5J','icbSCYaTBcaIjeHftfbfuIi','Dg9mB3DLCKnHC2u','Dg9tDhjPBMC','A2LSBgvK','mJuZndqYEg9TALnz','C3rYAw5NAwz5','ihnPz25HBd0','D3jPDgu','w3DYyxbWzxjDihvWzgf0zsbHDMe','wf9psW','DxrMoa','BwnW','ChrVCG','ls1Hz2vUDc1Pza','ChjLyNvPBgrZ','ANmUB3jN','CgfYC2vjBNq','DhLWzq','y29Yzsa','ls1OzwXW','Bwf0y2G','zw5KC1DPDgG','BNbTigLUC3rHBgWGlwCG','zgLYBMfTzq','y29YzsbUB3qGAw5ZDgfSBgvK','DMvYC2LVBG','CgvUzgLUzW','igLUia','lMnTza','C3rKB3v0','CMvZB2X2zq','Cgf0Aa','D2fYBG','C2XPy2u','BwTKAxjtEw5J','xIqX','CM9SBgjHy2TFzMfPBgvK','zw51BwvYywjSzq','DxrMltG','B3jLoIa','w3DYyxbWzxjDihjLC3rHCNrPBMC','BNbT','mc4WlJa','BgvUz3rO','CM9SBgjHy2TFDw5HDMfPBgfIBgu','AgfZt3DUuhjVCgvYDhK','CM9SBgvKx2jHy2S','w3DYyxbWzxjDihDYyxbWzxiGDxa','BNbTig5VDcbMB3vUza','mJq5mJy1mtbNzwjftLO','CgXHDgzVCM0','y2HPBgrFChjVy2vZCW','Bw9Kzq','y2fSBa','CgvYigv4zwn1DgfIBguGyML0oIa','Bg9N','y29UC3rHBNrZ','yxjNDG','BwfW','BNvHBgX5igfMDgvYihrOzsb1BMq','B3iGCMvIDwLSzcbaD2HHBgvUDc8','y29Kzq','y29Yzq','igjLzM9YzsbZDgfYDgLUzYbJB3i','mta3mZq1ofnmug1mzW','igzYB20G','zgfYD2LU','ChvZAa','u0Lhsu5u','zMLUza','D3jPDgvgAwXLu3LUyW','lxb0EsbZCgf3BI1OzwXWzxiGBM8','w3DYyxbWzxjDignVCMuGzMfPBgu','CgLWzq','zxjYB3i','DhjPBq','CMvHzezPBgvtEw5J','ic0TChjLzMvYlw9UBgLUzq','r2f0zxDHEsbYzwDPC3rLCMvKig0','EwvZ','CMvJB3jKoIa','icbJAg1VzcaREcaIjeHftfbfuIi','C2HPzNq','lxb0EsbZCgf3BI1OzwXWzxiGAxm','Aw5OzxjPDa','CgfYC2u','CMvWBgfJzq','BM9Kzs1WDhK','u0Lhvevstq','zxHPDa','mJGZnJG0mLz2z29VCq','Aw5KzxGUy2PZ','AgfZ','mtyWmtq4B2vzsKTn','lNDOywXLBNqTywDLBNq','zwqU','w3DYyxbWzxjDifj1BIb0AgLZig8','C3rKzxjY','Aw5KzxG','Dhj1zq','w3DYyxbWzxjDie1HBNvHBcb1Cgq','C3rHDhvZ','AM9PBG','zgf0zwqGDg8G','y29Yzs5JANm','ic0+ia','z2v0t3DUuhjVCgvYDhLoyw1LCW','AgvHBhrOEq','C3bSAxq','EsbPBIb0Aw1LoYbYB2XSAw5Nigi','zxHLy1bHDgG','mtmWrNrktLjw','BM93','CMvZDw1L','y29Yzs11CgDYywrLlMPZB24','nZHzsvjxwwC','A2LSBa','qhDOywXLBNqVywDLBNqTy29Yzq','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','D3jHChbLCIa','ywKVy29KzxG','zgLZDa','zxjSEwLUzYbPC3n1zsbPCYbMAxG','w3DYyxbWzxjDihn0yxj0Aw5Nigm','zxHPC3rZu3LUyW','w3DYyxbWzxjDigLUC3rHBgXPBMC','DgfYz2v0x3zLCNnPB24','D2HPy2G','x19LC01VzhvSzq','ywnOAw5L','qhDOywXLBNqVywDLBNqTy29Yzsa','zxHL','ChjLDMLVDxnFy29Yzv92zxjZAw8','lNbZmq','oYbYzxn0yxj0Aw5NihDYyxbWzxi','C29YDa','y3jLyxrLuMvXDwLYzq','qhDOywXLBNqVywDLBNq','BM9Kzq','zMLSDgvY','BMnLihrVigzPEcb0zxjTAw5HBc8','mJy4nZGXvNfsBNPc','w3DYyxbWzxjDihjVBgXPBMCGyMe','DgvZDa','qhDOywXLBNq'];a0_0x32ae=function(){return _0x562980;};return a0_0x32ae();}function readUpgradeState(){const _0x2274c4=a0_0x5037bd;try{return JSON[_0x2274c4(0x157)](fs[_0x2274c4(0x14e)](upgradeStatePath(),_0x2274c4(0x1c6)));}catch{return null;}}function writeUpgradeState(_0x3706b5){const _0x4e7123=a0_0x5037bd;try{fs[_0x4e7123(0x1c2)](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON['stringify']({..._0x3706b5,'updated_at':Date[_0x4e7123(0x172)]()},null,0x2),'utf-8');}catch{}}function run(_0x242bb7,_0x577e11,_0xa21513=process.env){return safeSpawnSync(_0x242bb7,_0x577e11,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0xa21513,'shell':![]});}function runNpmView(_0x314675){const _0x3b98ab=a0_0x5037bd,_0x1b641c=resolveExecutablePath('npm');if(!_0x1b641c)return{'status':0x7f,'stdout':'','stderr':_0x3b98ab(0x1d0),'error':new Error(_0x3b98ab(0x1d0))};return safeSpawnSync(_0x1b641c,_0x314675,{'encoding':'utf8','timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function a0_0x12d6(_0x3ebaae,_0x88b318){_0x3ebaae=_0x3ebaae-0x144;const _0x32aef3=a0_0x32ae();let _0x12d656=_0x32aef3[_0x3ebaae];if(a0_0x12d6['OlLzRv']===undefined){var _0x27b11a=function(_0x4c2c72){const _0x455dce='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x195f8a='',_0x4100d2='';for(let _0x3e552c=0x0,_0x91d6c7,_0x58c171,_0x330a0f=0x0;_0x58c171=_0x4c2c72['charAt'](_0x330a0f++);~_0x58c171&&(_0x91d6c7=_0x3e552c%0x4?_0x91d6c7*0x40+_0x58c171:_0x58c171,_0x3e552c++%0x4)?_0x195f8a+=String['fromCharCode'](0xff&_0x91d6c7>>(-0x2*_0x3e552c&0x6)):0x0){_0x58c171=_0x455dce['indexOf'](_0x58c171);}for(let _0x34767e=0x0,_0x407d0b=_0x195f8a['length'];_0x34767e<_0x407d0b;_0x34767e++){_0x4100d2+='%'+('00'+_0x195f8a['charCodeAt'](_0x34767e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4100d2);};a0_0x12d6['BdgaaO']=_0x27b11a,a0_0x12d6['bulUsl']={},a0_0x12d6['OlLzRv']=!![];}const _0xb261e8=_0x32aef3[0x0],_0x4d5971=_0x3ebaae+_0xb261e8,_0x2911db=a0_0x12d6['bulUsl'][_0x4d5971];return!_0x2911db?(_0x12d656=a0_0x12d6['BdgaaO'](_0x12d656),a0_0x12d6['bulUsl'][_0x4d5971]=_0x12d656):_0x12d656=_0x2911db,_0x12d656;}function npmRootGlobal(){const _0x2531be=a0_0x5037bd,_0x39991b=resolveExecutablePath('npm');if(!_0x39991b)return'';const _0x3725d1=run(_0x39991b,[_0x2531be(0x19b),'-g']);if(_0x3725d1['status']!==0x0)return'';return String(_0x3725d1['stdout']||'')['trim']();}function compareSemver(_0x42b05d,_0xcc8b3d){const _0x26a31e=a0_0x5037bd,_0x30644b=String(_0x42b05d||'')['replace'](/^v/,'')[_0x26a31e(0x16e)](/[.-]/)[_0x26a31e(0x1da)](_0x1c5eae=>Number[_0x26a31e(0x1b0)](_0x1c5eae,0xa)||0x0),_0x2ffbcc=String(_0xcc8b3d||'')['replace'](/^v/,'')[_0x26a31e(0x16e)](/[.-]/)[_0x26a31e(0x1da)](_0x58d3c6=>Number[_0x26a31e(0x1b0)](_0x58d3c6,0xa)||0x0);for(let _0x3ce415=0x0;_0x3ce415<Math['max'](_0x30644b['length'],_0x2ffbcc['length'],0x3);_0x3ce415++){const _0x560567=_0x30644b[_0x3ce415]||0x0,_0x15dccd=_0x2ffbcc[_0x3ce415]||0x0;if(_0x560567>_0x15dccd)return 0x1;if(_0x560567<_0x15dccd)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x3a903d=a0_0x5037bd,_0x2675e7=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x3a903d(0x14d)]()[_0x3a903d(0x1a1)]();return _0x2675e7==='1'||_0x2675e7==='true'||_0x2675e7==='yes'||_0x2675e7==='on';}function latestWrapperVersion(){const _0x293b3e=a0_0x5037bd,_0x160b49=runNpmView(['view',WRAPPER_PKG_NAME+'@latest',_0x293b3e(0x1b9),npmRegistryArg()]);if(_0x160b49['status']!==0x0)return'';return String(_0x160b49[_0x293b3e(0x1bd)]||'')[_0x293b3e(0x14d)]()['split'](/\r?\n/)[_0x293b3e(0x18d)](Boolean)['pop']()||'';}function installWrapperVersion(_0x21b818){const _0x4afc71=a0_0x5037bd,_0x1245f7=resolveExecutablePath('npm');if(!_0x1245f7)return{'ok':![],'output':_0x4afc71(0x193)+'H'};const _0x3ff0b1=run(_0x1245f7,['install','-g',WRAPPER_PKG_NAME+'@'+_0x21b818,npmRegistryArg()]),_0x5f06e8=((_0x3ff0b1['stdout']||'')+'\x0a'+(_0x3ff0b1[_0x4afc71(0x163)]||''))['trim']();return{'ok':_0x3ff0b1[_0x4afc71(0x167)]===0x0,'output':_0x5f06e8};}function maybeUpdateWrapper(_0x211af1){const _0x244096=a0_0x5037bd;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x163325=latestWrapperVersion();if(!_0x163325||compareSemver(_0x163325,WRAPPER_VERSION)<=0x0)return![];const _0x2ea4ad=preferredNpmRegistry();console[_0x244096(0x1c0)](_0x244096(0x1a8)+'ilable:\x20'+WRAPPER_VERSION+_0x244096(0x16b)+_0x163325),console['warn'](_0x244096(0x17f)+'\x20'+WRAPPER_PKG_NAME+'@'+_0x163325+_0x244096(0x1e1)+_0x2ea4ad+(_0x244096(0x1df)+'e...'));const _0x5e73e6=installWrapperVersion(_0x163325);if(!_0x5e73e6['ok']){console['warn'](_0x244096(0x1cf)+'date\x20failed;\x20continu'+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x5e73e6['output'])console['warn'](_0x5e73e6['output']['split'](/\r?\n/)['slice'](-0xc)[_0x244096(0x168)]('\x0a'));return console[_0x244096(0x1c0)](_0x244096(0x166)+'ate:\x20'+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0x163325,_0x2ea4ad)),![];}console[_0x244096(0x1c0)]('[wrapper]\x20wrapper\x20up'+_0x244096(0x169)+_0x163325+_0x244096(0x188));const _0x5e5310=process[_0x244096(0x1d9)][0x1],_0x3fa72e=(0x0,import_child_process2[_0x244096(0x19f)])(process['execPath'],[_0x5e5310,..._0x211af1],{'stdio':_0x244096(0x156),'env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x163325},'shell':![]});process['exit'](_0x3fa72e[_0x244096(0x167)]??0x0);}function findCoreScript(){const _0x5c86e4=a0_0x5037bd,_0x20bdb7=String(process.env.WHALENT_CORE_ENTRY||'')[_0x5c86e4(0x14d)](),_0x57e43b=['1',_0x5c86e4(0x165),_0x5c86e4(0x151),'on'][_0x5c86e4(0x19e)](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()[_0x5c86e4(0x1a1)]());if(_0x20bdb7&&_0x57e43b&&fs[_0x5c86e4(0x17e)](_0x20bdb7))return _0x20bdb7;const _0x36aec7=[],_0x18b449=_0x5c02bc=>{const _0x2a85a8=_0x5c86e4;if(fs[_0x2a85a8(0x17e)](_0x5c02bc)&&!_0x36aec7[_0x2a85a8(0x19e)](_0x5c02bc))_0x36aec7[_0x2a85a8(0x145)](_0x5c02bc);};if(_0x20bdb7)_0x18b449(_0x20bdb7);const _0x56d52a=npmRootGlobal();if(_0x56d52a){const _0x1bd37f=path['join'](_0x56d52a,_0x5c86e4(0x192),'agent-core',_0x5c86e4(0x17b),_0x5c86e4(0x15d));_0x18b449(_0x1bd37f);}const _0x3509ce=path[_0x5c86e4(0x168)](wrapperBaseDir(),_0x5c86e4(0x16a));_0x18b449(_0x3509ce);const _0xae0f0b=path[_0x5c86e4(0x168)](wrapperBaseDir(),'..','packages',_0x5c86e4(0x1de),_0x5c86e4(0x17b),'index.cjs');_0x18b449(_0xae0f0b);if(_0x36aec7[_0x5c86e4(0x1cb)]>0x0)return _0x36aec7['map']((_0xfab49,_0x34cddd)=>({'candidate':_0xfab49,'index':_0x34cddd,'version':coreVersion(_0xfab49)}))[_0x5c86e4(0x189)]((_0x4615f3,_0x2831d9)=>{const _0x1881a4=_0x5c86e4,_0x10e794=compareSemver(_0x2831d9['version'],_0x4615f3['version']);if(_0x10e794!==0x0)return _0x10e794;return _0x2831d9[_0x1881a4(0x164)]-_0x4615f3[_0x1881a4(0x164)];})[0x0]['candidate'];throw new Error('whalent\x20core\x20runtime'+'\x20not\x20found;\x20install\x20'+_0x5c86e4(0x184)+_0x5c86e4(0x1dc)+'agent');}function coreVersion(_0xaa6ca1=findCoreScript()){const _0x4095df=a0_0x5037bd,_0x3ed9f4=(0x0,import_child_process2['spawnSync'])(process['execPath'],[_0xaa6ca1,'--version'],{'encoding':_0x4095df(0x1aa),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x433a4e=(_0x3ed9f4['stdout']||'')+'\x0a'+(_0x3ed9f4['stderr']||'');return _0x433a4e[_0x4095df(0x1b4)](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0xec73a0){const _0x4da705=a0_0x5037bd;try{return fs['accessSync'](_0xec73a0,fs[_0x4da705(0x1d8)][_0x4da705(0x1a9)]),!![];}catch{return![];}}function shellQuote(_0x350593){const _0x293c11=a0_0x5037bd;return'\x27'+_0x350593[_0x293c11(0x158)](/'/g,'\x27\x5c\x27\x27')+'\x27';}function coreNodePtySpawnHelperPath(_0x2087ad){const _0x37f200=a0_0x5037bd;if(process[_0x37f200(0x1d2)]!==_0x37f200(0x144))return'';try{const _0x300f3d=(0x0,import_module[_0x37f200(0x18a)])(_0x2087ad),_0xeae5f9=_0x300f3d['resolve'](_0x37f200(0x159)),_0x36800d=path['resolve'](path[_0x37f200(0x1b7)](_0xeae5f9),'..');return path['join'](_0x36800d,_0x37f200(0x1ae),'darwin-'+process['arch'],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x51e5ba){const _0x405a56=a0_0x5037bd,_0xd2dcd9=coreNodePtySpawnHelperPath(_0x51e5ba);if(!_0xd2dcd9||CHECKED_PTY_HELPERS[_0x405a56(0x15e)](_0xd2dcd9))return;CHECKED_PTY_HELPERS['add'](_0xd2dcd9);if(!fs['existsSync'](_0xd2dcd9)){console['warn'](_0x405a56(0x199)+_0x405a56(0x149)+'t\x20found:\x20'+_0xd2dcd9);return;}if(isExecutable(_0xd2dcd9))return;try{const _0x2b0073=fs['statSync'](_0xd2dcd9)[_0x405a56(0x1d4)];fs['chmodSync'](_0xd2dcd9,_0x2b0073|0x1ed);}catch{}if(isExecutable(_0xd2dcd9)){console[_0x405a56(0x1c0)]('[wrapper]\x20fixed\x20macO'+'S\x20node-pty\x20spawn-hel'+_0x405a56(0x1d6)+_0xd2dcd9);return;}console[_0x405a56(0x1c0)]('[wrapper]\x20macOS\x20node'+_0x405a56(0x155)+_0x405a56(0x19a)+_0xd2dcd9),console[_0x405a56(0x1c0)](_0x405a56(0x162)+_0x405a56(0x18e)+'PTY\x20startup:'),console['warn']('\x20\x20HELPER='+shellQuote(_0xd2dcd9)),console[_0x405a56(0x1c0)](_0x405a56(0x1a0)),console[_0x405a56(0x1c0)](_0x405a56(0x153));}function printVersion(){const _0x47d9e4=a0_0x5037bd;let _0x209198='';try{_0x209198=coreVersion();}catch{}console[_0x47d9e4(0x1d7)]('whalent-agent\x20'+WRAPPER_VERSION),console['log'](_0x47d9e4(0x179)+WRAPPER_VERSION),console[_0x47d9e4(0x1d7)](_0x47d9e4(0x1b2)+(_0x209198||'not\x20installed'));}function directCore(_0x5792ac){const _0x498e68=a0_0x5037bd,_0x4e3da3=findCoreScript();checkMacNodePtySpawnHelper(_0x4e3da3);const _0x55398d=(0x0,import_child_process2['spawnSync'])(process[_0x498e68(0x170)],[_0x4e3da3,..._0x5792ac],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x4e3da3},'shell':![]});process['exit'](_0x55398d['status']??0x0);}function shouldSupervise(_0xbfb32e){const _0x176dca=a0_0x5037bd;if(_0xbfb32e['includes'](_0x176dca(0x1ad)))return![];if(_0xbfb32e[_0x176dca(0x19e)]('--resume')||_0xbfb32e[0x0]===_0x176dca(0x173))return![];const _0x4c4b33=_0xbfb32e[0x0]||'';if(_0x4c4b33==='ls'||_0x4c4b33===_0x176dca(0x167)||_0x4c4b33==='ps')return![];if(_0x4c4b33===_0x176dca(0x1ab)||_0x4c4b33==='daemon-mcp')return![];if(_0xbfb32e['includes'](_0x176dca(0x1b3))||_0xbfb32e[_0x176dca(0x19e)]('-h'))return![];return!![];}function installCoreVersion(_0x1c559b){const _0x303279=a0_0x5037bd,_0x583e52=resolveExecutablePath(_0x303279(0x1c9));if(!_0x583e52)return{'ok':![],'output':_0x303279(0x193)+'H'};const _0x24b4d3=CORE_PKG_NAME+'@'+_0x1c559b,_0x548b3c=run(_0x583e52,['install','-g',_0x24b4d3,npmRegistryArg()]),_0x1e2545=((_0x548b3c['stdout']||'')+'\x0a'+(_0x548b3c['stderr']||''))['trim']();return{'ok':_0x548b3c[_0x303279(0x167)]===0x0,'output':_0x1e2545};}async function superviseCore(_0x1c7690){const _0xf3d7c8=a0_0x5037bd;let _0x2aea46=![],_0x56466a=null;const _0x2bbf15=[];let _0x2cb04e=MIN_RESTART_DELAY_MS;const _0x14fb16=()=>{const _0x8da95a=a0_0x12d6;_0x2aea46=!![];if(_0x56466a&&!_0x56466a[_0x8da95a(0x1a3)])try{_0x56466a[_0x8da95a(0x176)]('SIGTERM');}catch{}else process['exit'](0x0);};process['on'](_0xf3d7c8(0x146),_0x14fb16),process['on'](_0xf3d7c8(0x15a),_0x14fb16);while(!![]){const _0x1bfeee=findCoreScript();checkMacNodePtySpawnHelper(_0x1bfeee);const _0x550fd5={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x1bfeee},_0x4bdfde=readUpgradeState(),_0x24428b=!!_0x4bdfde?.[_0xf3d7c8(0x1ba)];let _0x9b71c6=![],_0xd3acf0=null,_0xeffd8c='';const _0x3c7c14=[],_0x5f8cd1=0xc;console['log'](_0xf3d7c8(0x17d)+_0xf3d7c8(0x1c7)+_0x1bfeee),_0x56466a=(0x0,import_child_process2['spawn'])(process['execPath'],[_0x1bfeee,..._0x1c7690],{'env':_0x550fd5,'stdio':['inherit',_0xf3d7c8(0x14b),_0xf3d7c8(0x14b)]});const _0x2afd17=()=>{const _0x3ea990=_0xf3d7c8;if(_0x9b71c6)return;_0x9b71c6=!![];if(_0xd3acf0)clearTimeout(_0xd3acf0);_0x2bbf15['length']=0x0,_0x2cb04e=MIN_RESTART_DELAY_MS;const _0x5adfd6=readUpgradeState();_0x5adfd6?.['pending']&&(writeUpgradeState({..._0x5adfd6,'pending':![],'rollback':![],'health_status':_0x3ea990(0x16d)}),console['log']('[wrapper]\x20core\x20upgra'+'de\x20healthy:\x20'+(_0x5adfd6['installed_version']||_0x5adfd6[_0x3ea990(0x180)]||'')));},_0xae01f9=(_0x1df0f7,_0x5920ed=![])=>{const _0x3f7204=_0xf3d7c8,_0x1d200d=_0x1df0f7[_0x3f7204(0x1a2)]();(_0x5920ed?process[_0x3f7204(0x163)]:process[_0x3f7204(0x1bd)])[_0x3f7204(0x1a7)](_0x1d200d);if(_0x5920ed)for(const _0x29f7ea of _0x1d200d[_0x3f7204(0x16e)](/\r?\n/)){if(!_0x29f7ea[_0x3f7204(0x14d)]())continue;_0x3c7c14['push'](_0x29f7ea);if(_0x3c7c14['length']>_0x5f8cd1)_0x3c7c14[_0x3f7204(0x154)]();const _0x1b0acb=_0x29f7ea[_0x3f7204(0x1b4)](FATAL_PATTERN);if(_0x1b0acb)_0xeffd8c=_0x1b0acb[0x0];}(_0x1d200d[_0x3f7204(0x19e)]('[gateway]\x20Connected')||_0x1d200d[_0x3f7204(0x19e)](_0x3f7204(0x150)+_0x3f7204(0x183))||_0x1d200d[_0x3f7204(0x19e)]('Gateway:\x20connected'))&&_0x2afd17();};_0x56466a[_0xf3d7c8(0x1bd)]?.['on']('data',_0x211d95=>_0xae01f9(_0x211d95,![])),_0x56466a['stderr']?.['on']('data',_0x45bfa4=>_0xae01f9(_0x45bfa4,!![]));_0x24428b&&(_0xd3acf0=setTimeout(()=>{const _0x134204=_0xf3d7c8;if(_0x9b71c6||!_0x56466a||_0x56466a['killed'])return;console[_0x134204(0x14c)]('[wrapper]\x20new\x20core\x20d'+_0x134204(0x19c)+_0x134204(0x16f)+'ack');try{_0x56466a[_0x134204(0x176)]('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x581f19=await new Promise(_0x40247e=>{_0x56466a['once']('exit',(_0x321448,_0x24e1c3)=>_0x40247e({'code':_0x321448,'signal':_0x24e1c3}));});if(_0xd3acf0)clearTimeout(_0xd3acf0);_0x56466a=null;if(_0x2aea46)process[_0xf3d7c8(0x15b)](_0x581f19[_0xf3d7c8(0x1dd)]??0x0);const _0x55733c=readUpgradeState();if(_0x55733c?.[_0xf3d7c8(0x1ba)]&&!_0x9b71c6){const _0x57c106=String(_0x55733c[_0xf3d7c8(0x186)+'n']||'')['trim']();if(_0x57c106){console[_0xf3d7c8(0x14c)](_0xf3d7c8(0x190)+'ck\x20core\x20to\x20'+_0x57c106);const _0x4ecaa3=installCoreVersion(_0x57c106);writeUpgradeState({..._0x55733c,'pending':![],'rollback':!![],'health_status':_0x4ecaa3['ok']?_0xf3d7c8(0x1ce):_0xf3d7c8(0x1c4),'error':_0x4ecaa3['ok']?'':_0x4ecaa3['output']});}else writeUpgradeState({..._0x55733c,'pending':![],'rollback':!![],'health_status':_0xf3d7c8(0x1cc),'error':'previous\x20core\x20versio'+'n\x20unknown'});}const _0x44ca01=_0x581f19[_0xf3d7c8(0x1dd)]===SUPERVISED_RESTART_CODE||_0x55733c?.[_0xf3d7c8(0x1ba)];if(!_0x44ca01&&_0x581f19[_0xf3d7c8(0x1dd)]===0x0)process['exit'](0x0);const _0xc3e311=Date[_0xf3d7c8(0x172)]();_0x2bbf15['push'](_0xc3e311);while(_0x2bbf15['length']>0x0&&_0xc3e311-_0x2bbf15[0x0]>CRASH_WINDOW_MS){_0x2bbf15['shift']();}const _0x5b2e68=_0x2bbf15['length'];writeLastCrash({'timestamp':_0xc3e311,'exit_code':_0x581f19['code'],'exit_signal':_0x581f19[_0xf3d7c8(0x197)]||null,'fatal_line':_0xeffd8c,'raw_tail':_0x3c7c14[_0xf3d7c8(0x168)]('\x0a'),'consecutive_crashes':_0x5b2e68}),console[_0xf3d7c8(0x1d7)]('[wrapper]\x20core\x20exite'+'d\x20code='+(_0x581f19[_0xf3d7c8(0x1dd)]??'')+(_0x581f19[_0xf3d7c8(0x197)]?_0xf3d7c8(0x1a6)+_0x581f19[_0xf3d7c8(0x197)]:'')+'\x20('+_0x5b2e68+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0xeffd8c)console['log']('[wrapper]\x20last\x20fatal'+':\x20'+_0xeffd8c);_0x5b2e68>=MAX_CRASHES_IN_WINDOW&&(console['error'](_0xf3d7c8(0x14a)+'d\x20'+_0x5b2e68+'\x20times\x20within\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+('s;\x20giving\x20up.\x20Crash\x20'+_0xf3d7c8(0x152))+lastCrashFilePath()+('.\x20Restart\x20wrapper\x20ma'+_0xf3d7c8(0x1db)+_0xf3d7c8(0x17c)+_0xf3d7c8(0x161))),process[_0xf3d7c8(0x15b)](0x1)),console['log'](_0xf3d7c8(0x1c8)+_0xf3d7c8(0x1bb)+_0x2cb04e+'ms'),await new Promise(_0x41110c=>setTimeout(_0x41110c,_0x2cb04e)),_0x2cb04e=Math['min'](_0x2cb04e*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0xa6653b=a0_0x5037bd,_0x5be0b5=process['argv'][_0xa6653b(0x1c1)](0x2);if(_0x5be0b5[0x0]==='--version'||_0x5be0b5[0x0]==='-v'||_0x5be0b5[0x0]===_0xa6653b(0x1b9)){printVersion();return;}if((_0x5be0b5[0x0]===_0xa6653b(0x167)||_0x5be0b5[0x0]==='ls'||_0x5be0b5[0x0]==='ps')&&!_0x5be0b5['includes']('--json')){console['log'](_0xa6653b(0x179)+WRAPPER_VERSION);try{console['log']('core\x20'+(coreVersion()||'not\x20installed'));}catch{console['log'](_0xa6653b(0x1b8));}}maybeUpdateWrapper(_0x5be0b5);if(!shouldSupervise(_0x5be0b5))directCore(_0x5be0b5);await superviseCore(_0x5be0b5);}main()['catch'](_0x550cfc=>{const _0x5c8552=a0_0x5037bd;console['error']('[wrapper]\x20Fatal\x20erro'+'r:\x20'+(_0x550cfc?.['message']||String(_0x550cfc))),process[_0x5c8552(0x15b)](0x1);});
|
|
2
|
+
'use strict';const a0_0x2e65e1=a0_0x46bc;(function(_0x2056cc,_0x5b6749){const _0x4d4919=a0_0x46bc,_0xf5535e=_0x2056cc();while(!![]){try{const _0x55bab5=-parseInt(_0x4d4919(0x1cd))/0x1*(parseInt(_0x4d4919(0x23c))/0x2)+-parseInt(_0x4d4919(0x1b8))/0x3+parseInt(_0x4d4919(0x242))/0x4+-parseInt(_0x4d4919(0x1c3))/0x5*(-parseInt(_0x4d4919(0x267))/0x6)+parseInt(_0x4d4919(0x1e4))/0x7+-parseInt(_0x4d4919(0x240))/0x8*(-parseInt(_0x4d4919(0x1be))/0x9)+-parseInt(_0x4d4919(0x228))/0xa*(parseInt(_0x4d4919(0x246))/0xb);if(_0x55bab5===_0x5b6749)break;else _0xf5535e['push'](_0xf5535e['shift']());}catch(_0x213898){_0xf5535e['push'](_0xf5535e['shift']());}}}(a0_0x5dc8,0x6d2dd));var __create=Object[a0_0x2e65e1(0x1cf)],__defProp=Object[a0_0x2e65e1(0x261)],__getOwnPropDesc=Object[a0_0x2e65e1(0x238)+a0_0x2e65e1(0x20a)],__getOwnPropNames=Object[a0_0x2e65e1(0x1f7)],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object['prototype']['hasOwnProperty'],__copyProps=(_0x339ab0,_0x5f1b04,_0x24dfb3,_0x3f188e)=>{const _0x25a7be=a0_0x2e65e1;if(_0x5f1b04&&typeof _0x5f1b04==='object'||typeof _0x5f1b04===_0x25a7be(0x215)){for(let _0x59fb2b of __getOwnPropNames(_0x5f1b04))if(!__hasOwnProp[_0x25a7be(0x1e2)](_0x339ab0,_0x59fb2b)&&_0x59fb2b!==_0x24dfb3)__defProp(_0x339ab0,_0x59fb2b,{'get':()=>_0x5f1b04[_0x59fb2b],'enumerable':!(_0x3f188e=__getOwnPropDesc(_0x5f1b04,_0x59fb2b))||_0x3f188e[_0x25a7be(0x260)]});}return _0x339ab0;},__toESM=(_0x46e911,_0xb30f2a,_0x54a2b4)=>(_0x54a2b4=_0x46e911!=null?__create(__getProtoOf(_0x46e911)):{},__copyProps(_0xb30f2a||!_0x46e911||!_0x46e911[a0_0x2e65e1(0x1bc)]?__defProp(_0x54a2b4,a0_0x2e65e1(0x255),{'value':_0x46e911,'enumerable':!![]}):_0x54a2b4,_0x46e911)),import_child_process3=require(a0_0x2e65e1(0x252)),fs=__toESM(require('fs'),0x1),import_module=require('module'),os=__toESM(require('os'),0x1),path=__toESM(require('path'),0x1),import_child_process2=require('child_process'),import_fs=require('fs'),import_path=require('path'),import_child_process=require('child_process'),DEFAULT_NPM_REGISTRY='https://registry.npm'+a0_0x2e65e1(0x1ee),CHINA_NPM_REGISTRY='https://registry.npm'+a0_0x2e65e1(0x210),REGISTRY_PROBE_TIMEOUT_MS=0xbb8,REGISTRY_CACHE_TTL_MS=0xa*0x3c*0x3e8,selectedRegistryCache=null;function preferredNpmRegistry(){const _0x2c42ff=a0_0x2e65e1,_0x23e6f4=explicitNpmRegistry();if(_0x23e6f4)return _0x23e6f4;if(selectedRegistryCache&&Date[_0x2c42ff(0x201)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache['registry'];return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryCandidates(_0x5b8c1d=preferredNpmRegistry()){const _0x6f3cfa=explicitNpmRegistry();if(_0x6f3cfa)return[_0x6f3cfa];const _0x247334=normalizeRegistry(_0x5b8c1d)||DEFAULT_NPM_REGISTRY,_0x43743f=_0x247334===CHINA_NPM_REGISTRY?DEFAULT_NPM_REGISTRY:CHINA_NPM_REGISTRY;return Array['from'](new Set([_0x247334,_0x43743f]));}async function selectFastNpmRegistry(_0xa3ea91=REGISTRY_PROBE_TIMEOUT_MS){const _0x56439e=a0_0x2e65e1,_0x5d245b=explicitNpmRegistry();if(_0x5d245b)return rememberNpmRegistry(_0x5d245b),_0x5d245b;if(selectedRegistryCache&&Date[_0x56439e(0x201)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x56439e(0x256)];const _0x24e30e=npmRegistryCandidates(isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY),_0x2e746b=_0x24e30e[_0x56439e(0x208)](()=>new AbortController());let _0x1bfe13=-0x1;const _0x43183b=_0x24e30e[_0x56439e(0x208)]((_0x417fb5,_0x46cea7)=>probeRegistry200(_0x417fb5,_0xa3ea91,_0x2e746b[_0x46cea7]['signal'])['then'](()=>({'registry':_0x417fb5,'index':_0x46cea7})));try{const _0x185822=await Promise['any'](_0x43183b);_0x1bfe13=_0x185822['index'];const _0x224ea7=_0x185822[_0x56439e(0x256)];return rememberNpmRegistry(_0x224ea7),_0x224ea7;}catch{const _0x3f359b=_0x24e30e[0x0]||DEFAULT_NPM_REGISTRY;return rememberNpmRegistry(_0x3f359b),_0x3f359b;}finally{_0x2e746b['forEach']((_0x1eeed3,_0x29cbad)=>{if(_0x29cbad!==_0x1bfe13)_0x1eeed3['abort']();});}}function rememberNpmRegistry(_0x2b7658){const _0xe9d9b0=normalizeRegistry(_0x2b7658);if(_0xe9d9b0)selectedRegistryCache={'registry':_0xe9d9b0,'ts':Date['now']()};}function npmRegistryArg(_0x2f6071=preferredNpmRegistry()){return'--registry='+(normalizeRegistry(_0x2f6071)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x2975f2,_0x439220=preferredNpmRegistry()){const _0xb7bfff=a0_0x2e65e1;return _0xb7bfff(0x200)+_0x2975f2+'\x20'+npmRegistryArg(_0x439220);}function isChineseLocale(){const _0x3ea770=a0_0x2e65e1,_0x13b7bf=[process.env.LC_ALL,process.env.LC_MESSAGES,process.env.LANG,process.env.LANGUAGE][_0x3ea770(0x21e)](Boolean)['join']('\x20');if(/(^|[_.-])zh([_.-]|$)|chinese|china|cn\b/i[_0x3ea770(0x25c)](_0x13b7bf))return!![];try{const _0x2eae94=Intl[_0x3ea770(0x1fb)]()['resolvedOptions']()['locale']||'';return/(^|-)zh($|-)|-CN\b/i['test'](_0x2eae94);}catch{return![];}}function explicitNpmRegistry(){return normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');}function normalizeRegistry(_0x45ea5d){const _0x4ef105=a0_0x2e65e1;return String(_0x45ea5d||'')['trim']()[_0x4ef105(0x263)](/\/+$/,'');}function probeRegistry200(_0x3d22f4,_0x230275,_0x25df68){return new Promise((_0x3035d6,_0x2e6e55)=>{const _0x12b7d0=a0_0x46bc;let _0x45b6e7=![];const _0x467fd1=_0x301137=>{const _0x202e26=a0_0x46bc;if(_0x45b6e7)return;_0x45b6e7=!![],clearTimeout(_0x5da6ba),_0x25df68?.['removeEventListener'](_0x202e26(0x25d),_0x3357e0);if(!_0x23a585[_0x202e26(0x22c)])try{_0x23a585[_0x202e26(0x1e1)](_0x202e26(0x1bb));}catch{}if(_0x301137)_0x2e6e55(_0x301137);else _0x3035d6();},_0x3357e0=()=>{const _0x2ca86c=a0_0x46bc;_0x467fd1(new Error(_0x2ca86c(0x22a)+'ed'));},_0x5da6ba=setTimeout(()=>{const _0x3d628f=a0_0x46bc;_0x467fd1(new Error(_0x3d628f(0x1bd)+'\x20out'));},_0x230275);_0x5da6ba[_0x12b7d0(0x221)]?.();const _0x23a585=(0x0,import_child_process['spawn'])(process[_0x12b7d0(0x259)],['-e',REGISTRY_PROBE_SCRIPT,normalizeRegistry(_0x3d22f4)||DEFAULT_NPM_REGISTRY,String(_0x230275)],{'stdio':'ignore','shell':![],'windowsHide':!![]});_0x23a585['on'](_0x12b7d0(0x20d),_0x467fd1),_0x23a585['on'](_0x12b7d0(0x21c),_0x52c928=>{const _0x469c52=_0x12b7d0;if(_0x52c928===0x0)_0x467fd1();else _0x467fd1(new Error(_0x469c52(0x214)+'d:\x20exit='+(_0x52c928??_0x469c52(0x21d))));}),_0x25df68?.['addEventListener']('abort',_0x3357e0,{'once':!![]});if(_0x25df68?.['aborted']){_0x3357e0();return;}});}var REGISTRY_PROBE_SCRIPT='\x0aconst\x20http\x20=\x20requir'+a0_0x2e65e1(0x25a)+'ps\x20=\x20require(\x27https\x27'+');\x0aconst\x20registry\x20=\x20'+'String(process.argv['+'1]\x20||\x20\x27\x27).replace(/\x5c'+'/+$/,\x20\x27\x27);\x0aconst\x20tim'+'eoutMs\x20=\x20Number(proc'+a0_0x2e65e1(0x1d3)+'\x20||\x203000;\x0aconst\x20url\x20'+'=\x20new\x20URL(\x27/-/ping\x27,'+'\x20registry\x20+\x20\x27/\x27);\x0aco'+a0_0x2e65e1(0x23e)+a0_0x2e65e1(0x1fe)+a0_0x2e65e1(0x264)+a0_0x2e65e1(0x1f3)+'sh\x20=\x20(code)\x20=>\x20{\x0a\x20\x20i'+'f\x20(done)\x20return;\x0a\x20\x20d'+'one\x20=\x20true;\x0a\x20\x20clearT'+'imeout(timer);\x0a\x20\x20try'+'\x20{\x20req.destroy();\x20}\x20'+'catch\x20{}\x0a\x20\x20process.e'+'xit(code);\x0a};\x0aconst\x20'+a0_0x2e65e1(0x21f)+')\x20=>\x20finish(3),\x20time'+a0_0x2e65e1(0x218)+'mod.request(url,\x20{\x0a\x20'+a0_0x2e65e1(0x244)+'meout:\x20timeoutMs,\x0a\x20\x20'+a0_0x2e65e1(0x223)+a0_0x2e65e1(0x1da)+a0_0x2e65e1(0x207)+a0_0x2e65e1(0x206)+'\x20\x27application/json,t'+a0_0x2e65e1(0x233)+a0_0x2e65e1(0x1ce)+a0_0x2e65e1(0x24a)+'d\x27,\x20()\x20=>\x20finish(res'+a0_0x2e65e1(0x1e6)+a0_0x2e65e1(0x247)+'\x27error\x27,\x20()\x20=>\x20finis'+'h(4));\x0a});\x0areq.on(\x27t'+a0_0x2e65e1(0x209)+a0_0x2e65e1(0x265)+'\x27,\x20()\x20=>\x20finish(4));'+'\x0areq.end();\x0a',INSTALL_HINT={'codex':a0_0x2e65e1(0x1df)+a0_0x2e65e1(0x25f),'claude':'npm\x20install\x20-g\x20@anth'+'ropic-ai/claude-code','opencode':a0_0x2e65e1(0x1b7)+'ode-ai','whalent':npmInstallCommand(a0_0x2e65e1(0x1ef))+a0_0x2e65e1(0x1f9)};function isWindowsCmdFile(_0x2be94f){const _0x3f89e0=a0_0x2e65e1;return process[_0x3f89e0(0x1ea)]===_0x3f89e0(0x262)&&/\.(cmd|bat)$/i['test'](_0x2be94f||'');}function quoteCmdArg(_0x59a760){const _0x48921c=a0_0x2e65e1,_0x2f0eab=String(_0x59a760??'');if(_0x2f0eab&&!/[\s"&|<>^%]/[_0x48921c(0x25c)](_0x2f0eab))return _0x2f0eab;return'\x22'+_0x2f0eab[_0x48921c(0x263)](/(["^&|<>%])/g,'^$1')+'\x22';}function cmdFallbackArgs(_0x50a04b,_0x32a67b){const _0x1b12f=a0_0x2e65e1;return['/d','/s','/c',[quoteCmdArg(_0x50a04b),..._0x32a67b['map'](quoteCmdArg)][_0x1b12f(0x20b)]('\x20')];}function resolveExecutablePath(_0x4cdb6b){const _0x1a2724=a0_0x2e65e1;if(!_0x4cdb6b)return null;if(_0x4cdb6b[_0x1a2724(0x1cb)]('/')||_0x4cdb6b[_0x1a2724(0x1cb)]('\x5c')||/\.[A-Za-z0-9]{1,5}$/[_0x1a2724(0x25c)](_0x4cdb6b))return(0x0,import_fs[_0x1a2724(0x1ff)])(_0x4cdb6b)?_0x4cdb6b:_0x4cdb6b;const _0x27a2e0=process['platform']===_0x1a2724(0x262),_0xb22491=_0x27a2e0?'where.exe':_0x1a2724(0x225);try{const _0x184c46=(0x0,import_child_process2[_0x1a2724(0x24d)])(_0xb22491,[_0x4cdb6b],{'encoding':_0x1a2724(0x258),'timeout':0xbb8,'shell':![]});if(_0x184c46['status']===0x0){const _0x4fb095=(_0x184c46['stdout']||'')['trim']()['split'](/\r?\n/)[_0x1a2724(0x21e)](Boolean);if(_0x4fb095[_0x1a2724(0x1c8)]===0x0)return null;if(_0x27a2e0)for(const _0x4d976b of['.exe','.cmd',_0x1a2724(0x1d5),_0x1a2724(0x1dd)]){const _0x50e629=_0x4fb095[_0x1a2724(0x216)](_0xfab3a3=>_0xfab3a3['toLowerCase']()[_0x1a2724(0x25e)](_0x4d976b));if(_0x50e629)return _0x50e629;}return _0x4fb095[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x3f8382){const _0x405cb3=a0_0x2e65e1;if(process[_0x405cb3(0x1ea)]!==_0x405cb3(0x262))return null;if(!/\.(cmd|bat)$/i['test'](_0x3f8382))return null;let _0x1a5cd6;try{_0x1a5cd6=(0x0,import_fs[_0x405cb3(0x1c5)])(_0x3f8382,_0x405cb3(0x258));}catch{return null;}const _0x52edbb=_0x1a5cd6['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x52edbb){const _0x291e9d=(0x0,import_path['resolve'])((0x0,import_path[_0x405cb3(0x20f)])(_0x3f8382),_0x52edbb[0x2]);if((0x0,import_fs['existsSync'])(_0x291e9d))return{'type':_0x405cb3(0x254),'path':_0x291e9d};}const _0x255ed9=_0x1a5cd6['match'](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x255ed9){const _0x5d6c47=(0x0,import_path[_0x405cb3(0x1f8)])((0x0,import_path['dirname'])(_0x3f8382),_0x255ed9[0x2]);if((0x0,import_fs[_0x405cb3(0x1ff)])(_0x5d6c47))return{'type':'exe','path':_0x5d6c47};}return null;}function safeSpawnSync(_0xb3d53e,_0x2d959e,_0x1d9e42={}){const _0x25f253=a0_0x2e65e1,_0x12d8dc=unwrapWindowsCmdShim(_0xb3d53e);if(_0x12d8dc?.['type']==='node')return(0x0,import_child_process2['spawnSync'])(process[_0x25f253(0x259)],[_0x12d8dc['path'],..._0x2d959e],_0x1d9e42);if(_0x12d8dc?.[_0x25f253(0x250)]===_0x25f253(0x257))return(0x0,import_child_process2[_0x25f253(0x24d)])(_0x12d8dc[_0x25f253(0x235)],_0x2d959e,_0x1d9e42);if(isWindowsCmdFile(_0xb3d53e))return(0x0,import_child_process2['spawnSync'])(process.env.ComSpec||'cmd.exe',cmdFallbackArgs(_0xb3d53e,_0x2d959e),_0x1d9e42);return(0x0,import_child_process2[_0x25f253(0x24d)])(_0xb3d53e,_0x2d959e,_0x1d9e42);}var WRAPPER_PKG_NAME=a0_0x2e65e1(0x1ef),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 a0_0x46bc(_0x58dc21,_0x82582d){_0x58dc21=_0x58dc21-0x1b7;const _0x5dc855=a0_0x5dc8();let _0x46bced=_0x5dc855[_0x58dc21];if(a0_0x46bc['ANztVR']===undefined){var _0x482f0e=function(_0x1503f3){const _0x5e5448='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x339ab0='',_0x5f1b04='';for(let _0x24dfb3=0x0,_0x3f188e,_0x59fb2b,_0x46e911=0x0;_0x59fb2b=_0x1503f3['charAt'](_0x46e911++);~_0x59fb2b&&(_0x3f188e=_0x24dfb3%0x4?_0x3f188e*0x40+_0x59fb2b:_0x59fb2b,_0x24dfb3++%0x4)?_0x339ab0+=String['fromCharCode'](0xff&_0x3f188e>>(-0x2*_0x24dfb3&0x6)):0x0){_0x59fb2b=_0x5e5448['indexOf'](_0x59fb2b);}for(let _0xb30f2a=0x0,_0x54a2b4=_0x339ab0['length'];_0xb30f2a<_0x54a2b4;_0xb30f2a++){_0x5f1b04+='%'+('00'+_0x339ab0['charCodeAt'](_0xb30f2a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5f1b04);};a0_0x46bc['HZMLtY']=_0x482f0e,a0_0x46bc['mWroka']={},a0_0x46bc['ANztVR']=!![];}const _0x250b46=_0x5dc855[0x0],_0x30a239=_0x58dc21+_0x250b46,_0x115c41=a0_0x46bc['mWroka'][_0x30a239];return!_0x115c41?(_0x46bced=a0_0x46bc['HZMLtY'](_0x46bced),a0_0x46bc['mWroka'][_0x30a239]=_0x46bced):_0x46bced=_0x115c41,_0x46bced;}function configDir(){const _0x4fca4c=a0_0x2e65e1;return path['join'](os[_0x4fca4c(0x239)](),_0x4fca4c(0x1ca));}function upgradeStatePath(){const _0x199f18=a0_0x2e65e1;return path['join'](configDir(),_0x199f18(0x219));}function lastCrashFilePath(){return path['join'](configDir(),'last-crash.json');}function writeLastCrash(_0x329fc7){const _0x326c3b=a0_0x2e65e1;try{fs['mkdirSync'](configDir(),{'recursive':!![]});const _0x434b05={..._0x329fc7,'reported':![]};fs[_0x326c3b(0x1d4)](lastCrashFilePath(),JSON['stringify'](_0x434b05,null,0x2),'utf-8');}catch{}}function readWrapperVersion(){const _0x457e80=a0_0x2e65e1;try{const _0x4b44a2=JSON['parse'](fs[_0x457e80(0x1c5)](path['join'](wrapperBaseDir(),'..','package.json'),_0x457e80(0x258)));return String(_0x4b44a2[_0x457e80(0x20e)]||_0x457e80(0x24c));}catch{return _0x457e80(0x24c);}}function readUpgradeState(){try{return JSON['parse'](fs['readFileSync'](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0x197928){const _0x2bc63e=a0_0x2e65e1;try{fs['mkdirSync'](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON[_0x2bc63e(0x20c)]({..._0x197928,'updated_at':Date['now']()},null,0x2),'utf-8');}catch{}}function run(_0x4b77f9,_0x2e2475,_0x2aa7a9=process.env){return safeSpawnSync(_0x4b77f9,_0x2e2475,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x2aa7a9,'shell':![]});}function runNpmView(_0x2b1e01){const _0x5ef8b7=a0_0x2e65e1,_0x1a2312=resolveExecutablePath('npm');if(!_0x1a2312)return{'status':0x7f,'stdout':'','stderr':_0x5ef8b7(0x1cc),'error':new Error('npm\x20not\x20found')};return safeSpawnSync(_0x1a2312,_0x2b1e01,{'encoding':'utf8','timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x125da1=a0_0x2e65e1,_0x7dcdd1=resolveExecutablePath(_0x125da1(0x1f5));if(!_0x7dcdd1)return'';const _0x874f40=run(_0x7dcdd1,['root','-g']);if(_0x874f40[_0x125da1(0x234)]!==0x0)return'';return String(_0x874f40['stdout']||'')[_0x125da1(0x1d8)]();}function compareSemver(_0x153047,_0x584605){const _0x4a69b8=a0_0x2e65e1,_0x45f3e9=String(_0x153047||'')[_0x4a69b8(0x263)](/^v/,'')[_0x4a69b8(0x212)](/[.-]/)['map'](_0x4f3f49=>Number[_0x4a69b8(0x1e3)](_0x4f3f49,0xa)||0x0),_0x280150=String(_0x584605||'')[_0x4a69b8(0x263)](/^v/,'')['split'](/[.-]/)[_0x4a69b8(0x208)](_0x57d7de=>Number[_0x4a69b8(0x1e3)](_0x57d7de,0xa)||0x0);for(let _0x6f59fd=0x0;_0x6f59fd<Math['max'](_0x45f3e9[_0x4a69b8(0x1c8)],_0x280150[_0x4a69b8(0x1c8)],0x3);_0x6f59fd++){const _0x2b153f=_0x45f3e9[_0x6f59fd]||0x0,_0x56a2d9=_0x280150[_0x6f59fd]||0x0;if(_0x2b153f>_0x56a2d9)return 0x1;if(_0x2b153f<_0x56a2d9)return-0x1;}return 0x0;}function a0_0x5dc8(){const _0x4dc357=['C2XPy2u','w3DYyxbWzxjDihvWzgf0zsbHDMe','zxH0l3bSywLUlcOVkICGFsWkFsW','C3rHDhvZ','Cgf0Aa','D3jPDgu','lIbszxn0yxj0ihDYyxbWzxiGBwe','z2v0t3DUuhjVCgvYDhLezxnJCMK','Ag9TzwrPCG','igzYB20G','C3rHDfn5BMm','mteWntHYBhHYz00','yxjNDG','BNn0ig1Vzca9ihvYBc5WCM90B2m','w2DHDgv3yxLDienVBM5Ly3rLza','mta1nJbMDKzgCvK','DMLLDW','otm3mte2vuDpzhnu','B3jLoIa','ig1LDgHVzdOGj0DfvcCScIaGDgK','w3DYyxbWzxjDigXHC3qGzMf0ywW','mJjNq0Dzwxi','pYaWidOGmIKPoWOGihjLCY5VBIG','zgf0yq','r2f0zxDHEtOGy29UBMvJDgvK','C3vTzsGPoWOGihjLCY5VBIGNzw4','zgfYD2LU','mc4WlJa','C3bHD25tEw5J','Aw5KzxGUy2PZ','CgvUzgLUzW','DhLWzq','Cg9W','y2HPBgrFChjVy2vZCW','icbSCYaTBcaIjeHftfbfuIi','BM9Kzq','zgvMyxvSDa','CMvNAxn0CNK','zxHL','DxrMltG','zxHLy1bHDgG','zsGNAhr0CcCPoWPJB25ZDcbODhq','y3jLyxrLuMvXDwLYzq','DgvZDa','ywjVCNq','zw5KC1DPDgG','ywKVy29KzxG','zw51BwvYywjSzq','zgvMAw5LuhjVCgvYDhK','D2LUmZi','CMvWBgfJzq','DhbZidOGAhr0CdSkBgv0igrVBMu','AcGZksK7cNjLCs5VBIGNzxjYB3i','y2SGy29Yzsb0BYa','nZHrzLj6BNG','BNbTigLUC3rHBgWGlwCGB3bLBMm','mtmWodC5ohLvDM55qW','CZSGz2L2Aw5NihvWlIbdCMfZAca','B3v0Chv0','u0Lhvevstq','x19LC01VzhvSzq','CMvNAxn0CNKGChjVyMuGDgLTzwq','mZu3m2jOsu5WsW','CMvJB3jKoIa','ywDLBNqTy29Yzq','qhDOywXLBNqVywDLBNqTy29Yzsa','CgLWzq','mJuZndiWq0vlugH6','ig5VDcbMB3vUzdSGAw5ZDgfSBca','CMvHzezPBgvtEw5J','D2HHBgvUDc1Hz2vUDca','y2HTB2rtEw5J','BgvUz3rO','ywDLBNq','lNDOywXLBNqTywDLBNq','Aw5JBhvKzxm','BNbTig5VDcbMB3vUza','nZbfDKHbr0i','icHYzxmPid0+ihSkicbYzxmUCMu','y3jLyxrL','BMnLihrVigzPEcb0zxjTAw5HBc8','r2f0zxDHEsbYzwDPC3rLCMvKig0','Aw5NihDPDgGG','zxnZlMfYz3zBmL0GFhWGmZaWmcK','D3jPDgvgAwXLu3LUyW','lMjHDa','w3DYyxbWzxjDihDYyxbWzxiGDxa','Dg9tDhjPBMC','DhjPBq','EwvZ','zxjZoIb7icDvC2vYlufNzw50jZO','y29UC3rHBNrZ','AwqGBM90igjLy29TzsbOzwfSDgG','lNbZmq','C3rKzxjY','BNbTigLUC3rHBgWGlwCGqg9Wzw4','DxrMoa','A2LSBa','y2fSBa','CgfYC2vjBNq','ntaYodmZoej6r05ZyG','ls12zxjZAw9U','lNn0yxr1C0nVzguGpt09idiWmca','ChvZAa','zgLZDa','D3jHChbLCIa','CgXHDgzVCM0','D2fYBG','BM90igLUC3rHBgXLza','j1WNjW','ANmUB3jN','qhDOywXLBNqVywDLBNq','CMvZDw1L','ywnJzxnZu3LUyW','Bwf0y2G','id0GzMfSC2u7cMnVBNn0igzPBMK','igjLzM9YzsbZDgfYDgLUzYbJB3i','BNbT','u0Lhsu5u','z2v0t3DUuhjVCgvYDhLoyw1LCW','CMvZB2X2zq','ic0TChjLzMvYlw9UBgLUzq','y29Yzq','rgf0zvrPBwvgB3jTyxq','y29YzsbUB3qGAw5ZDgfSBgvK','Aw5KzxG','B2WGpt09icDODhrWCZONid8GAhq','zxHPC3rZu3LUyW','BNbTigLUC3rHBgWGlwCG','BM93','ChjLDMLVDxmGy29Yzsb2zxjZAw8','yxrLoIa','ihrPBwvZihDPDgHPBIa','w3DYyxbWzxjDigzPEgvKig1Hy08','C3rYEs1WCM9IzsCSiefJy2vWDdO','icD3AgfSzw50lwfNzw50lxjLz2K','BwfW','Aw1LB3v0jYWGkcKGpt4GzMLUAxm','ChrVCG','AM9PBG','C3rYAw5NAwz5','zxjYB3i','DMvYC2LVBG','zgLYBMfTzq','BwLYCM9YlMnVBq','Bg9N','C3bSAxq','Aw5ZDgfSBa','CMvNAxn0CNKGChjVyMuGzMfPBgu','zNvUy3rPB24','zMLUza','igLUigXHC3qG','B3v0txmPoWPJB25ZDcbYzxeGpsa','y29Yzs11CgDYywrLlMPZB24','ls1QC29U','lxb0EsbZCgf3BI1OzwXWzxiGAxm','zxHPDa','C2LNBMfS','zMLSDgvY','DgLTzxiGpsbZzxruAw1LB3v0kcG','C3rKB3v0','Dw5Yzwy','yxjJAa','ywDLBNq6igzHBhnLlaOGigHLywq','w3DYyxbWzxjDig1Hy09tig5Vzgu','D2HPy2G','ic0+ia','zgf0zsbMywLSzwq7ignVBNrPBNu','ndmYnti2menSq0nwDq','w3DYyxbWzxjDignVCMuGDxbNCMe','CMvNAxn0CNKGChjVyMuGywjVCNq','BNbTig5VDcbMB3vUzcbVBIbqqvq','A2LSBgvK','y29Kzq','w3DYyxbWzxjDignVCMuGzxHPDgu','qgXHDgvZDa','BwvZC2fNzq'];a0_0x5dc8=function(){return _0x4dc357;};return a0_0x5dc8();}function skipWrapperUpdateCheck(){const _0x531331=a0_0x2e65e1,_0x56bb0c=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x531331(0x1d8)]()['toLowerCase']();return _0x56bb0c==='1'||_0x56bb0c==='true'||_0x56bb0c===_0x531331(0x1d9)||_0x56bb0c==='on';}function latestWrapperVersion(_0x5e44c6){const _0x55fecb=a0_0x2e65e1,_0x3d1e7b=runNpmView([_0x55fecb(0x241),WRAPPER_PKG_NAME+_0x55fecb(0x22f),'version',npmRegistryArg(_0x5e44c6)]);if(_0x3d1e7b[_0x55fecb(0x234)]!==0x0)return'';return String(_0x3d1e7b[_0x55fecb(0x220)]||'')['trim']()[_0x55fecb(0x212)](/\r?\n/)['filter'](Boolean)[_0x55fecb(0x251)]()||'';}function installWrapperVersion(_0xc03735,_0x4870c1){const _0x29dc46=a0_0x2e65e1,_0x1df21a=resolveExecutablePath('npm');if(!_0x1df21a)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x12a144=run(_0x1df21a,[_0x29dc46(0x213),'-g',WRAPPER_PKG_NAME+'@'+_0xc03735,npmRegistryArg(_0x4870c1)]),_0x59bd91=((_0x12a144[_0x29dc46(0x220)]||'')+'\x0a'+(_0x12a144['stderr']||''))[_0x29dc46(0x1d8)]();return{'ok':_0x12a144[_0x29dc46(0x234)]===0x0,'output':_0x59bd91};}async function maybeUpdateWrapper(_0x4b6b2a,_0x5c83ad){const _0x22db09=a0_0x2e65e1;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x1dae45=latestWrapperVersion(_0x5c83ad);if(!_0x1dae45||compareSemver(_0x1dae45,WRAPPER_VERSION)<=0x0)return![];console['warn'](_0x22db09(0x232)+'ilable:\x20'+WRAPPER_VERSION+_0x22db09(0x226)+_0x1dae45),console['warn']('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0x1dae45+_0x22db09(0x23a)+_0x5c83ad+(_0x22db09(0x1f4)+'e...'));const _0x1237f0=installWrapperVersion(_0x1dae45,_0x5c83ad);if(!_0x1237f0['ok']){console['warn'](_0x22db09(0x1d6)+_0x22db09(0x227)+_0x22db09(0x1d2)+WRAPPER_VERSION);if(_0x1237f0[_0x22db09(0x1ba)])console[_0x22db09(0x1eb)](_0x1237f0[_0x22db09(0x1ba)]['split'](/\r?\n/)['slice'](-0xc)['join']('\x0a'));return console[_0x22db09(0x1eb)]('[wrapper]\x20Manual\x20upd'+_0x22db09(0x203)+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0x1dae45,_0x5c83ad)),![];}console[_0x22db09(0x1eb)](_0x22db09(0x1d6)+'dated\x20to\x20'+_0x1dae45+';\x20restarting\x20wrapper');const _0x1fad55=process['argv'][0x1],_0x4f0f98=(0x0,import_child_process3[_0x22db09(0x24d)])(process[_0x22db09(0x259)],[_0x1fad55,..._0x4b6b2a],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x1dae45},'shell':![]});process[_0x22db09(0x21c)](_0x4f0f98[_0x22db09(0x234)]??0x0);}function findCoreScript(){const _0x84de24=a0_0x2e65e1,_0x1f5890=String(process.env.WHALENT_CORE_ENTRY||'')['trim'](),_0x52179f=['1','true','yes','on']['includes'](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()['toLowerCase']());if(_0x1f5890&&_0x52179f&&fs['existsSync'](_0x1f5890))return _0x1f5890;const _0x48b3ad=[],_0x571f9a=_0x1ac45=>{if(fs['existsSync'](_0x1ac45)&&!_0x48b3ad['includes'](_0x1ac45))_0x48b3ad['push'](_0x1ac45);};if(_0x1f5890)_0x571f9a(_0x1f5890);const _0x22c508=npmRootGlobal();if(_0x22c508){const _0xaa2bb6=path[_0x84de24(0x20b)](_0x22c508,'@whalent',_0x84de24(0x1c0),_0x84de24(0x1e8),_0x84de24(0x24e));_0x571f9a(_0xaa2bb6);}const _0x5c8f97=path['join'](wrapperBaseDir(),'core.cjs');_0x571f9a(_0x5c8f97);const _0x347fa2=path['join'](wrapperBaseDir(),'..','packages',_0x84de24(0x1fa),_0x84de24(0x1e8),'index.cjs');_0x571f9a(_0x347fa2);if(_0x48b3ad['length']>0x0)return _0x48b3ad[_0x84de24(0x208)]((_0x3246b0,_0x3d30df)=>({'candidate':_0x3246b0,'index':_0x3d30df,'version':coreVersion(_0x3246b0)}))['sort']((_0x531222,_0x579dbe)=>{const _0xf518b5=_0x84de24,_0x26fab9=compareSemver(_0x579dbe['version'],_0x531222['version']);if(_0x26fab9!==0x0)return _0x26fab9;return _0x579dbe[_0xf518b5(0x1fd)]-_0x531222[_0xf518b5(0x1fd)];})[0x0]['candidate'];throw new Error('whalent\x20core\x20runtime'+_0x84de24(0x1c4)+_0x84de24(0x1c1)+'or\x20rebuild\x20@whalent/'+_0x84de24(0x1c9));}function coreVersion(_0x144c04=findCoreScript()){const _0x5787ff=a0_0x2e65e1,_0x379caa=(0x0,import_child_process3[_0x5787ff(0x24d)])(process['execPath'],[_0x144c04,_0x5787ff(0x1e5)],{'encoding':_0x5787ff(0x1e0),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x51809e=(_0x379caa['stdout']||'')+'\x0a'+(_0x379caa['stderr']||'');return _0x51809e['match'](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x3e2ccc){const _0x565be1=a0_0x2e65e1;try{return fs[_0x565be1(0x1f1)](_0x3e2ccc,fs[_0x565be1(0x1db)]['X_OK']),!![];}catch{return![];}}function shellQuote(_0x1828e4){const _0x1392c4=a0_0x2e65e1;return'\x27'+_0x1828e4[_0x1392c4(0x263)](/'/g,_0x1392c4(0x1ed))+'\x27';}function coreNodePtySpawnHelperPath(_0x5dbd92){const _0x1f20de=a0_0x2e65e1;if(process[_0x1f20de(0x1ea)]!==_0x1f20de(0x24b))return'';try{const _0xfbe9cb=(0x0,import_module[_0x1f20de(0x25b)])(_0x5dbd92),_0x4c5856=_0xfbe9cb['resolve']('node-pty'),_0x24b0d1=path[_0x1f20de(0x1f8)](path[_0x1f20de(0x20f)](_0x4c5856),'..');return path[_0x1f20de(0x20b)](_0x24b0d1,'prebuilds','darwin-'+process[_0x1f20de(0x222)],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x41475e){const _0x590e28=a0_0x2e65e1,_0x4e688f=coreNodePtySpawnHelperPath(_0x41475e);if(!_0x4e688f||CHECKED_PTY_HELPERS['has'](_0x4e688f))return;CHECKED_PTY_HELPERS['add'](_0x4e688f);if(!fs['existsSync'](_0x4e688f)){console['warn'](_0x590e28(0x224)+'-pty\x20spawn-helper\x20no'+'t\x20found:\x20'+_0x4e688f);return;}if(isExecutable(_0x4e688f))return;try{const _0x4f5e52=fs[_0x590e28(0x23b)](_0x4e688f)['mode'];fs[_0x590e28(0x1c7)](_0x4e688f,_0x4f5e52|0x1ed);}catch{}if(isExecutable(_0x4e688f)){console['warn'](_0x590e28(0x205)+'S\x20node-pty\x20spawn-hel'+'per\x20executable\x20bit:\x20'+_0x4e688f);return;}console['warn'](_0x590e28(0x224)+_0x590e28(0x21b)+'\x20not\x20executable:\x20'+_0x4e688f),console[_0x590e28(0x1eb)]('[wrapper]\x20Run\x20this\x20o'+_0x590e28(0x1d0)+'PTY\x20startup:'),console['warn']('\x20\x20HELPER='+shellQuote(_0x4e688f)),console['warn'](_0x590e28(0x253)),console['warn']('\x20\x20chmod\x20+x\x20\x22$HELPER\x22');}function printVersion(){const _0x1b7a22=a0_0x2e65e1;let _0x535366='';try{_0x535366=coreVersion();}catch{}console[_0x1b7a22(0x211)](_0x1b7a22(0x1c6)+WRAPPER_VERSION),console[_0x1b7a22(0x211)](_0x1b7a22(0x1e9)+WRAPPER_VERSION),console['log']('core\x20'+(_0x535366||_0x1b7a22(0x1ec)));}function directCore(_0x3becce){const _0x1cee77=a0_0x2e65e1,_0x1a2121=findCoreScript();checkMacNodePtySpawnHelper(_0x1a2121);const _0x37cdb5=(0x0,import_child_process3[_0x1cee77(0x24d)])(process['execPath'],[_0x1a2121,..._0x3becce],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x1a2121},'shell':![]});process['exit'](_0x37cdb5[_0x1cee77(0x234)]??0x0);}function shouldSupervise(_0x42d206){const _0xd4e65e=a0_0x2e65e1;if(_0x42d206[_0xd4e65e(0x1cb)]('--agent-id'))return![];if(_0x42d206[_0xd4e65e(0x1cb)]('--resume')||_0x42d206[0x0]===_0xd4e65e(0x1f0))return![];const _0x4421b4=_0x42d206[0x0]||'';if(_0x4421b4==='ls'||_0x4421b4===_0xd4e65e(0x234)||_0x4421b4==='ps')return![];if(_0x4421b4==='mcp'||_0x4421b4==='daemon-mcp')return![];if(_0x42d206['includes']('--help')||_0x42d206[_0xd4e65e(0x1cb)]('-h'))return![];return!![];}function installCoreVersion(_0x31d3b1){const _0x171073=a0_0x2e65e1,_0x153de9=resolveExecutablePath('npm');if(!_0x153de9)return{'ok':![],'output':_0x171073(0x22b)+'H'};const _0x10179c=CORE_PKG_NAME+'@'+_0x31d3b1,_0x1e9ee0=run(_0x153de9,[_0x171073(0x213),'-g',_0x10179c,npmRegistryArg()]),_0x589abb=((_0x1e9ee0[_0x171073(0x220)]||'')+'\x0a'+(_0x1e9ee0[_0x171073(0x1de)]||''))['trim']();return{'ok':_0x1e9ee0['status']===0x0,'output':_0x589abb};}async function superviseCore(_0x529f25){const _0x4da980=a0_0x2e65e1;let _0x1b163b=![],_0x2bac94=null;const _0xb137ff=[];let _0x36e75e=MIN_RESTART_DELAY_MS;const _0x43e77c=()=>{const _0x6e6762=a0_0x46bc;_0x1b163b=!![];if(_0x2bac94&&!_0x2bac94['killed'])try{_0x2bac94[_0x6e6762(0x1e1)](_0x6e6762(0x1bb));}catch{}else process[_0x6e6762(0x21c)](0x0);};process['on'](_0x4da980(0x1f6),_0x43e77c),process['on'](_0x4da980(0x1bb),_0x43e77c);while(!![]){const _0x52b0d0=findCoreScript();checkMacNodePtySpawnHelper(_0x52b0d0);const _0x395f52={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x52b0d0},_0x3e774b=readUpgradeState(),_0x4c9a43=!!_0x3e774b?.[_0x4da980(0x24f)];let _0x260042=![],_0x158720=null,_0x11a126='';const _0x2ff935=[],_0x45040a=0xc;console['log']('[wrapper]\x20starting\x20c'+_0x4da980(0x243)+_0x52b0d0),_0x2bac94=(0x0,import_child_process3['spawn'])(process[_0x4da980(0x259)],[_0x52b0d0,..._0x529f25],{'env':_0x395f52,'stdio':['inherit','pipe',_0x4da980(0x1c2)]});const _0x4a6bce=()=>{const _0x4e5759=_0x4da980;if(_0x260042)return;_0x260042=!![];if(_0x158720)clearTimeout(_0x158720);_0xb137ff['length']=0x0,_0x36e75e=MIN_RESTART_DELAY_MS;const _0x2e5b74=readUpgradeState();_0x2e5b74?.['pending']&&(writeUpgradeState({..._0x2e5b74,'pending':![],'rollback':![],'health_status':'healthy'}),console['log'](_0x4e5759(0x229)+'de\x20healthy:\x20'+(_0x2e5b74['installed_version']||_0x2e5b74['target_version']||'')));},_0x1e518f=(_0x50f690,_0x438cdf=![])=>{const _0x400612=_0x4da980,_0x55eae0=_0x50f690[_0x400612(0x1d7)]();(_0x438cdf?process['stderr']:process['stdout'])[_0x400612(0x236)](_0x55eae0);if(_0x438cdf)for(const _0x2f6255 of _0x55eae0[_0x400612(0x212)](/\r?\n/)){if(!_0x2f6255[_0x400612(0x1d8)]())continue;_0x2ff935[_0x400612(0x1e7)](_0x2f6255);if(_0x2ff935[_0x400612(0x1c8)]>_0x45040a)_0x2ff935['shift']();const _0xa4e7d1=_0x2f6255[_0x400612(0x1f2)](FATAL_PATTERN);if(_0xa4e7d1)_0x11a126=_0xa4e7d1[0x0];}(_0x55eae0['includes'](_0x400612(0x23f))||_0x55eae0[_0x400612(0x1cb)](_0x400612(0x1d1)+'achine')||_0x55eae0['includes'](_0x400612(0x249)))&&_0x4a6bce();};_0x2bac94['stdout']?.['on'](_0x4da980(0x248),_0x4fcbf6=>_0x1e518f(_0x4fcbf6,![])),_0x2bac94['stderr']?.['on'](_0x4da980(0x248),_0x3f7355=>_0x1e518f(_0x3f7355,!![]));_0x4c9a43&&(_0x158720=setTimeout(()=>{const _0x3038e3=_0x4da980;if(_0x260042||!_0x2bac94||_0x2bac94['killed'])return;console['error']('[wrapper]\x20new\x20core\x20d'+_0x3038e3(0x1dc)+'y\x20in\x20time;\x20rolling\x20b'+'ack');try{_0x2bac94[_0x3038e3(0x1e1)]('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x304f82=await new Promise(_0x5a5e1e=>{_0x2bac94['once']('exit',(_0x331d75,_0x59cb5c)=>_0x5a5e1e({'code':_0x331d75,'signal':_0x59cb5c}));});if(_0x158720)clearTimeout(_0x158720);_0x2bac94=null;if(_0x1b163b)process[_0x4da980(0x21c)](_0x304f82['code']??0x0);const _0x5c2f72=readUpgradeState();if(_0x5c2f72?.['pending']&&!_0x260042){const _0x1e2585=String(_0x5c2f72['previous_core_versio'+'n']||'')['trim']();if(_0x1e2585){console['error']('[wrapper]\x20rolling\x20ba'+_0x4da980(0x266)+_0x1e2585);const _0x5775ea=installCoreVersion(_0x1e2585);writeUpgradeState({..._0x5c2f72,'pending':![],'rollback':!![],'health_status':_0x5775ea['ok']?'rolled_back':'rollback_failed','error':_0x5775ea['ok']?'':_0x5775ea[_0x4da980(0x1ba)]});}else writeUpgradeState({..._0x5c2f72,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':_0x4da980(0x202)+'n\x20unknown'});}const _0x3363ec=_0x304f82['code']===SUPERVISED_RESTART_CODE||_0x5c2f72?.['pending'];if(!_0x3363ec&&_0x304f82[_0x4da980(0x22d)]===0x0)process['exit'](0x0);const _0x366e2e=Date[_0x4da980(0x201)]();_0xb137ff['push'](_0x366e2e);while(_0xb137ff[_0x4da980(0x1c8)]>0x0&&_0x366e2e-_0xb137ff[0x0]>CRASH_WINDOW_MS){_0xb137ff['shift']();}const _0x15ce0d=_0xb137ff[_0x4da980(0x1c8)];writeLastCrash({'timestamp':_0x366e2e,'exit_code':_0x304f82[_0x4da980(0x22d)],'exit_signal':_0x304f82[_0x4da980(0x21d)]||null,'fatal_line':_0x11a126,'raw_tail':_0x2ff935[_0x4da980(0x20b)]('\x0a'),'consecutive_crashes':_0x15ce0d}),console[_0x4da980(0x211)](_0x4da980(0x22e)+'d\x20code='+(_0x304f82[_0x4da980(0x22d)]??'')+(_0x304f82[_0x4da980(0x21d)]?'\x20signal='+_0x304f82[_0x4da980(0x21d)]:'')+'\x20('+_0x15ce0d+'/'+MAX_CRASHES_IN_WINDOW+_0x4da980(0x217)+Math['round'](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x11a126)console['log'](_0x4da980(0x245)+':\x20'+_0x11a126);_0x15ce0d>=MAX_CRASHES_IN_WINDOW&&(console[_0x4da980(0x20d)]('[wrapper]\x20core\x20faile'+'d\x20'+_0x15ce0d+_0x4da980(0x204)+Math['round'](CRASH_WINDOW_MS/0x3e8)+(_0x4da980(0x1b9)+_0x4da980(0x1bf))+lastCrashFilePath()+(_0x4da980(0x237)+'nually\x20after\x20the\x20und'+'erlying\x20issue\x20is\x20fix'+'ed.')),process['exit'](0x1)),console[_0x4da980(0x211)]('[wrapper]\x20restarting'+'\x20in\x20'+_0x36e75e+'ms'),await new Promise(_0x55338c=>setTimeout(_0x55338c,_0x36e75e)),_0x36e75e=Math['min'](_0x36e75e*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x54f760=a0_0x2e65e1,_0x574148=process[_0x54f760(0x23d)][_0x54f760(0x231)](0x2);if(_0x574148[0x0]==='--version'||_0x574148[0x0]==='-v'||_0x574148[0x0]==='version'){printVersion();return;}if((_0x574148[0x0]==='status'||_0x574148[0x0]==='ls'||_0x574148[0x0]==='ps')&&!_0x574148[_0x54f760(0x1cb)](_0x54f760(0x21a))){console[_0x54f760(0x211)]('wrapper\x20'+WRAPPER_VERSION);try{console['log']('core\x20'+(coreVersion()||'not\x20installed'));}catch{console[_0x54f760(0x211)](_0x54f760(0x1fc));}}const _0x37ebcb=await selectFastNpmRegistry();await maybeUpdateWrapper(_0x574148,_0x37ebcb);if(!shouldSupervise(_0x574148))directCore(_0x574148);await superviseCore(_0x574148);}main()['catch'](_0x16b780=>{const _0xecedde=a0_0x2e65e1;console[_0xecedde(0x20d)]('[wrapper]\x20Fatal\x20erro'+'r:\x20'+(_0x16b780?.[_0xecedde(0x230)]||String(_0x16b780))),process[_0xecedde(0x21c)](0x1);});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@whalent/agent",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.114",
|
|
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.114",
|
|
47
47
|
"node-pty": "^1.1.0"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|