@whalent/agent 0.3.131 → 0.3.133
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_0x40134d=a0_0x5b78;(function(_0x5d0c83,_0x45ad32){const _0x1c2be0=a0_0x5b78,_0x386fa5=_0x5d0c83();while(!![]){try{const _0x5b0f4e=-parseInt(_0x1c2be0(0x201))/0x1+-parseInt(_0x1c2be0(0x22e))/0x2+-parseInt(_0x1c2be0(0x1c4))/0x3*(-parseInt(_0x1c2be0(0x205))/0x4)+parseInt(_0x1c2be0(0x19c))/0x5+parseInt(_0x1c2be0(0x1fa))/0x6*(parseInt(_0x1c2be0(0x1ff))/0x7)+parseInt(_0x1c2be0(0x1bf))/0x8*(-parseInt(_0x1c2be0(0x1f8))/0x9)+parseInt(_0x1c2be0(0x1b8))/0xa;if(_0x5b0f4e===_0x45ad32)break;else _0x386fa5['push'](_0x386fa5['shift']());}catch(_0x54999f){_0x386fa5['push'](_0x386fa5['shift']());}}}(a0_0x2e84,0x948c7));var __create=Object[a0_0x40134d(0x214)],__defProp=Object['defineProperty'],__getOwnPropDesc=Object[a0_0x40134d(0x1b2)+a0_0x40134d(0x21c)],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object[a0_0x40134d(0x1fb)],__hasOwnProp=Object['prototype'][a0_0x40134d(0x215)],__copyProps=(_0x45a2e6,_0xa2661d,_0x47dcce,_0x213092)=>{const _0x5f1644=a0_0x40134d;if(_0xa2661d&&typeof _0xa2661d===_0x5f1644(0x1af)||typeof _0xa2661d===_0x5f1644(0x203)){for(let _0x17e818 of __getOwnPropNames(_0xa2661d))if(!__hasOwnProp[_0x5f1644(0x1dd)](_0x45a2e6,_0x17e818)&&_0x17e818!==_0x47dcce)__defProp(_0x45a2e6,_0x17e818,{'get':()=>_0xa2661d[_0x17e818],'enumerable':!(_0x213092=__getOwnPropDesc(_0xa2661d,_0x17e818))||_0x213092[_0x5f1644(0x1e2)]});}return _0x45a2e6;},__toESM=(_0x115424,_0x34e077,_0x349971)=>(_0x349971=_0x115424!=null?__create(__getProtoOf(_0x115424)):{},__copyProps(_0x34e077||!_0x115424||!_0x115424[a0_0x40134d(0x210)]?__defProp(_0x349971,'default',{'value':_0x115424,'enumerable':!![]}):_0x349971,_0x115424)),import_child_process3=require('child_process'),fs=__toESM(require('fs'),0x1),import_module=require(a0_0x40134d(0x1ef)),path2=__toESM(require('path'),0x1),import_child_process2=require(a0_0x40134d(0x1d2)),import_fs=require('fs'),import_path=require(a0_0x40134d(0x1eb)),import_child_process=require('child_process'),DEFAULT_NPM_REGISTRY='https://registry.npm'+a0_0x40134d(0x1f4),CHINA_NPM_REGISTRY=a0_0x40134d(0x1b1)+a0_0x40134d(0x21f),REGISTRY_PROBE_TIMEOUT_MS=0xbb8,REGISTRY_CACHE_TTL_MS=0xa*0x3c*0x3e8,selectedRegistryCache=null;function preferredNpmRegistry(){const _0x4bdd2b=a0_0x40134d,_0x6b8744=explicitNpmRegistry();if(_0x6b8744)return _0x6b8744;if(selectedRegistryCache&&Date['now']()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x4bdd2b(0x19e)];return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryCandidates(_0x3ad0c8=preferredNpmRegistry()){const _0x46d5dd=a0_0x40134d,_0x12bba4=explicitNpmRegistry();if(_0x12bba4)return[_0x12bba4];const _0x56d56b=normalizeRegistry(_0x3ad0c8)||DEFAULT_NPM_REGISTRY,_0x524797=_0x56d56b===CHINA_NPM_REGISTRY?DEFAULT_NPM_REGISTRY:CHINA_NPM_REGISTRY;return Array[_0x46d5dd(0x1d0)](new Set([_0x56d56b,_0x524797]));}async function selectFastNpmRegistry(_0x3a9464=REGISTRY_PROBE_TIMEOUT_MS){const _0x2d3239=a0_0x40134d,_0x4411e6=explicitNpmRegistry();if(_0x4411e6)return rememberNpmRegistry(_0x4411e6),_0x4411e6;if(selectedRegistryCache&&Date[_0x2d3239(0x1e7)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x2d3239(0x19e)];const _0x1405a7=npmRegistryCandidates(isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY),_0x501f4e=_0x1405a7['map'](()=>new AbortController());let _0x2a049f=-0x1;const _0x3cdeca=_0x1405a7['map']((_0x4a2a72,_0x301382)=>probeRegistry200(_0x4a2a72,_0x3a9464,_0x501f4e[_0x301382][_0x2d3239(0x22f)])[_0x2d3239(0x204)](()=>({'registry':_0x4a2a72,'index':_0x301382})));try{const _0x581e3e=await Promise[_0x2d3239(0x218)](_0x3cdeca);_0x2a049f=_0x581e3e[_0x2d3239(0x1f9)];const _0xb3b2c6=_0x581e3e['registry'];return rememberNpmRegistry(_0xb3b2c6),_0xb3b2c6;}catch{const _0x2e8afd=_0x1405a7[0x0]||DEFAULT_NPM_REGISTRY;return rememberNpmRegistry(_0x2e8afd),_0x2e8afd;}finally{_0x501f4e['forEach']((_0xd1d8cb,_0x1cfe4d)=>{if(_0x1cfe4d!==_0x2a049f)_0xd1d8cb['abort']();});}}function rememberNpmRegistry(_0x56faab){const _0x512030=normalizeRegistry(_0x56faab);if(_0x512030)selectedRegistryCache={'registry':_0x512030,'ts':Date['now']()};}function npmRegistryArg(_0x5e0e10=preferredNpmRegistry()){const _0x5f0ec1=a0_0x40134d;return _0x5f0ec1(0x220)+(normalizeRegistry(_0x5e0e10)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x7e16f7,_0x6e62c1=preferredNpmRegistry()){const _0x20b341=a0_0x40134d;return _0x20b341(0x22a)+_0x7e16f7+'\x20'+npmRegistryArg(_0x6e62c1);}function isChineseLocale(){const _0x3b07a4=a0_0x40134d,_0x3211b2=[process.env.LC_ALL,process.env.LC_MESSAGES,process.env.LANG,process.env.LANGUAGE]['filter'](Boolean)[_0x3b07a4(0x1de)]('\x20');if(/(^|[_.-])zh([_.-]|$)|chinese|china|cn\b/i['test'](_0x3211b2))return!![];try{const _0x28a37b=Intl['DateTimeFormat']()['resolvedOptions']()[_0x3b07a4(0x1e3)]||'';return/(^|-)zh($|-)|-CN\b/i[_0x3b07a4(0x1db)](_0x28a37b);}catch{return![];}}function explicitNpmRegistry(){return normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');}function normalizeRegistry(_0x593fbb){const _0x239cb2=a0_0x40134d;return String(_0x593fbb||'')[_0x239cb2(0x1b7)]()['replace'](/\/+$/,'');}function probeRegistry200(_0xe3691,_0x18d62f,_0x294ab5){return new Promise((_0x84e13,_0x1b7c2a)=>{const _0x5cfe5e=a0_0x5b78;let _0x46cfcb=![];const _0x3f193c=_0x37a408=>{const _0xb30d6a=a0_0x5b78;if(_0x46cfcb)return;_0x46cfcb=!![],clearTimeout(_0x4dae1f),_0x294ab5?.[_0xb30d6a(0x234)](_0xb30d6a(0x1d6),_0x1d47cf);if(!_0xbf3fcf['killed'])try{_0xbf3fcf['kill']('SIGTERM');}catch{}if(_0x37a408)_0x1b7c2a(_0x37a408);else _0x84e13();},_0x1d47cf=()=>{const _0x243149=a0_0x5b78;_0x3f193c(new Error(_0x243149(0x19b)+'ed'));},_0x4dae1f=setTimeout(()=>{const _0x333d79=a0_0x5b78;_0x3f193c(new Error(_0x333d79(0x212)+'\x20out'));},_0x18d62f);_0x4dae1f['unref']?.();const _0xbf3fcf=(0x0,import_child_process[_0x5cfe5e(0x1a6)])(process[_0x5cfe5e(0x1ae)],['-e',REGISTRY_PROBE_SCRIPT,normalizeRegistry(_0xe3691)||DEFAULT_NPM_REGISTRY,String(_0x18d62f)],{'stdio':'ignore','shell':![],'windowsHide':!![]});_0xbf3fcf['on']('error',_0x3f193c),_0xbf3fcf['on']('exit',_0x472127=>{const _0x328be7=_0x5cfe5e;if(_0x472127===0x0)_0x3f193c();else _0x3f193c(new Error(_0x328be7(0x216)+'d:\x20exit='+(_0x472127??'signal')));}),_0x294ab5?.['addEventListener']('abort',_0x1d47cf,{'once':!![]});if(_0x294ab5?.['aborted']){_0x1d47cf();return;}});}var REGISTRY_PROBE_SCRIPT=a0_0x40134d(0x1c2)+'e(\x27http\x27);\x0aconst\x20htt'+a0_0x40134d(0x199)+');\x0aconst\x20registry\x20=\x20'+a0_0x40134d(0x1ce)+'1]\x20||\x20\x27\x27).replace(/\x5c'+'/+$/,\x20\x27\x27);\x0aconst\x20tim'+a0_0x40134d(0x1c6)+'ess.argv[2]\x20||\x203000)'+a0_0x40134d(0x20d)+a0_0x40134d(0x21e)+a0_0x40134d(0x19f)+a0_0x40134d(0x1ea)+a0_0x40134d(0x21b)+'tps\x20:\x20http;\x0alet\x20done'+'\x20=\x20false;\x0aconst\x20fini'+a0_0x40134d(0x208)+'f\x20(done)\x20return;\x0a\x20\x20d'+a0_0x40134d(0x1c9)+'imeout(timer);\x0a\x20\x20try'+'\x20{\x20req.destroy();\x20}\x20'+a0_0x40134d(0x1cb)+'xit(code);\x0a};\x0aconst\x20'+a0_0x40134d(0x20b)+')\x20=>\x20finish(3),\x20time'+'outMs);\x0aconst\x20req\x20=\x20'+'mod.request(url,\x20{\x0a\x20'+a0_0x40134d(0x1a4)+'meout:\x20timeoutMs,\x0a\x20\x20'+'agent:\x20false,\x0a\x20\x20head'+'ers:\x20{\x20\x27User-Agent\x27:'+a0_0x40134d(0x223)+a0_0x40134d(0x1e9)+'\x20\x27application/json,t'+'ext/plain,*/*\x27\x20},\x0a},'+'\x20(res)\x20=>\x20{\x0a\x20\x20res.re'+'sume();\x0a\x20\x20res.on(\x27en'+'d\x27,\x20()\x20=>\x20finish(res'+'.statusCode\x20===\x20200\x20'+'?\x200\x20:\x202));\x0a\x20\x20res.on('+a0_0x40134d(0x1ab)+'h(4));\x0a});\x0areq.on(\x27t'+'imeout\x27,\x20()\x20=>\x20finis'+'h(3));\x0areq.on(\x27error'+a0_0x40134d(0x1ad)+'\x0areq.end();\x0a',INSTALL_HINT={'codex':a0_0x40134d(0x1ac)+'ai/codex','claude':a0_0x40134d(0x1ee)+a0_0x40134d(0x200),'opencode':a0_0x40134d(0x18d)+a0_0x40134d(0x1f7),'whalent':npmInstallCommand(a0_0x40134d(0x1cc))+'\x20--prefer-online'};function isWindowsCmdFile(_0x48ada0){const _0x4194d0=a0_0x40134d;return process[_0x4194d0(0x20e)]===_0x4194d0(0x1a1)&&/\.(cmd|bat)$/i[_0x4194d0(0x1db)](_0x48ada0||'');}function quoteCmdArg(_0xd9df5){const _0x1375a1=a0_0x40134d,_0x22b47d=String(_0xd9df5??'');if(_0x22b47d&&!/[\s"&|<>^%]/[_0x1375a1(0x1db)](_0x22b47d))return _0x22b47d;return'\x22'+_0x22b47d[_0x1375a1(0x1fe)](/(["^&|<>%])/g,'^$1')+'\x22';}function cmdFallbackArgs(_0x522e2a,_0x34caef){const _0x39a061=a0_0x40134d;return['/d','/s','/c',[quoteCmdArg(_0x522e2a),..._0x34caef['map'](quoteCmdArg)][_0x39a061(0x1de)]('\x20')];}function resolveExecutablePath(_0x3a3a97){const _0x4e1b7a=a0_0x40134d;if(!_0x3a3a97)return null;if(_0x3a3a97[_0x4e1b7a(0x232)]('/')||_0x3a3a97['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/[_0x4e1b7a(0x1db)](_0x3a3a97))return(0x0,import_fs[_0x4e1b7a(0x1b9)])(_0x3a3a97)?_0x3a3a97:_0x3a3a97;const _0xee721e=process['platform']==='win32',_0x55df86=_0xee721e?_0x4e1b7a(0x1ed):'which';try{const _0x389294=(0x0,import_child_process2['spawnSync'])(_0x55df86,[_0x3a3a97],{'encoding':'utf-8','timeout':0xbb8,'shell':![]});if(_0x389294[_0x4e1b7a(0x192)]===0x0){const _0xe132d5=(_0x389294['stdout']||'')[_0x4e1b7a(0x1b7)]()['split'](/\r?\n/)[_0x4e1b7a(0x239)](Boolean);if(_0xe132d5['length']===0x0)return null;if(_0xee721e)for(const _0x3adb8e of[_0x4e1b7a(0x1f6),'.cmd','.bat','.ps1']){const _0x249847=_0xe132d5['find'](_0x1d1348=>_0x1d1348[_0x4e1b7a(0x1a2)]()['endsWith'](_0x3adb8e));if(_0x249847)return _0x249847;}return _0xe132d5[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x35a423){const _0x986d38=a0_0x40134d;if(process[_0x986d38(0x20e)]!==_0x986d38(0x1a1))return null;if(!/\.(cmd|bat)$/i['test'](_0x35a423))return null;let _0x4a130b;try{_0x4a130b=(0x0,import_fs[_0x986d38(0x202)])(_0x35a423,_0x986d38(0x18a));}catch{return null;}const _0x309ef7=_0x4a130b[_0x986d38(0x1a9)](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x309ef7){const _0x27e11d=(0x0,import_path['resolve'])((0x0,import_path[_0x986d38(0x1f3)])(_0x35a423),_0x309ef7[0x2]);if((0x0,import_fs['existsSync'])(_0x27e11d))return{'type':_0x986d38(0x21d),'path':_0x27e11d};}const _0x2b6a6c=_0x4a130b[_0x986d38(0x1a9)](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x2b6a6c){const _0x5f034b=(0x0,import_path['resolve'])((0x0,import_path[_0x986d38(0x1f3)])(_0x35a423),_0x2b6a6c[0x2]);if((0x0,import_fs[_0x986d38(0x1b9)])(_0x5f034b))return{'type':'exe','path':_0x5f034b};}return null;}function safeSpawnSync(_0x1bd228,_0xc761d4,_0x5bcc25={}){const _0x5824d0=a0_0x40134d,_0x10dab0=unwrapWindowsCmdShim(_0x1bd228);if(_0x10dab0?.[_0x5824d0(0x1a7)]==='node')return(0x0,import_child_process2[_0x5824d0(0x1b5)])(process[_0x5824d0(0x1ae)],[_0x10dab0[_0x5824d0(0x1eb)],..._0xc761d4],_0x5bcc25);if(_0x10dab0?.['type']==='exe')return(0x0,import_child_process2[_0x5824d0(0x1b5)])(_0x10dab0['path'],_0xc761d4,_0x5bcc25);if(isWindowsCmdFile(_0x1bd228))return(0x0,import_child_process2['spawnSync'])(process.env.ComSpec||_0x5824d0(0x1e1),cmdFallbackArgs(_0x1bd228,_0xc761d4),_0x5bcc25);return(0x0,import_child_process2[_0x5824d0(0x1b5)])(_0x1bd228,_0xc761d4,_0x5bcc25);}function a0_0x2e84(){const _0x79cf25=['Aw5KzxGUy2PZ','CM91BMq','CgvUzgLUzW','ywjVCNq','ig5VDcbMB3vUzdSGAw5ZDgfSBca','BNvHBgX5igfMDgvYihrOzsb1BMq','BgfZDc1JCMfZAc5QC29U','C3rKzxjY','DgvZDa','y29Kzq','y2fSBa','AM9PBG','Bg9N','B3v0Chv0','y21KlMv4zq','zw51BwvYywjSzq','Bg9JywXL','ywrK','lNDOywXLBNqTywDLBNq','ihrPBwvZihDPDgHPBIa','BM93','A2LSBa','C3rYEs1WCM9IzsCSiefJy2vWDdO','BNn0ig1Vzca9ihvYBc5WCM90B2m','Cgf0Aa','Aw5ZDgfSBa','D2HLCMuUzxHL','BNbTigLUC3rHBgWGlwCGqgfUDgG','Bw9KDwXL','CgvYigv4zwn1DgfIBguGyML0oIa','BgvUz3rO','zgfYD2LUlq','zgLYBMfTzq','ANmUB3jN','Dhj1zq','lMv4zq','B2rLlwfP','mZzXyMHpzfq','Aw5KzxG','nKfStNH5Aq','z2v0uhjVDg90ExbLt2y','y2SGy29Yzsb0BYa','y3jLyxrLuMvXDwLYzq','CMvWBgfJzq','ntuZmJK2ogTXuM1AAW','CM9WAwmTywKVy2XHDwrLlwnVzgu','ntCZmdKZy3vVzgHz','CMvHzezPBgvtEw5J','zNvUy3rPB24','DgHLBG','mJm3mMDht2vnta','zgf0yq','ig5VDcbLEgvJDxrHyMXLoIa','C2GGpsaOy29KzsKGpt4GEWOGigK','DxrMoa','CM9VDa','DgLTzxiGpsbZzxruAw1LB3v0kcG','Aw5ZDgfSBgvKx3zLCNnPB24','ihX8idmWmda7cMnVBNn0ihvYBca','CgXHDgzVCM0','BNbT','x19LC01VzhvSzq','w3DYyxbWzxjDiezHDgfSigvYCM8','CMvNAxn0CNKGChjVyMuGDgLTzwq','zxjSEwLUzYbPC3n1zsbPCYbMAxG','y3jLyxrL','AgfZt3DUuhjVCgvYDhK','CMvNAxn0CNKGChjVyMuGzMfPBgu','Ag9TzwrPCG','yw55','ywnJzxnZu3LUyW','ls12zxjZAw9U','B2WGpt09icDODhrWCZONid8GAhq','ChrVCG','BM9Kzq','psbUzxCGvvjmkcCVls9WAw5NjYW','BwLYCM9YlMnVBq','ls1YzwDPC3rYEt0','BwnW','w3DYyxbWzxjDig1Hy09tig5Vzgu','icD3AgfSzw50lwfNzw50lxjLz2K','B3iGCMvIDwLSzcbaD2HHBgvUDc8','Bw9Kzq','uYbUB2rLlxb0EsbZCgf3BI1OzwW','Bwf4','C3rKB3v0','C2XPy2u','BNbTigLUC3rHBgWGlwCG','y29UC3rHBNrZ','C29YDa','zxjYB3i','mJiYmduXog56rMLusG','C2LNBMfS','BNbTig5VDcbMB3vUza','CZSGz2L2Aw5NihvWlIbdCMfZAca','Aw5JBhvKzxm','Cg9W','CMvTB3zLrxzLBNrmAxn0zw5LCG','yxrLoIa','CMvZB2X2zq','CgfYC2vjBNq','D3jPDgvgAwXLu3LUyW','zMLSDgvY','DxrMltG','CgLWzq','CM9SBgjHy2TFzMfPBgvK','BNbTigLUC3rHBgWGlwCGB3bLBMm','y29YzsbUB3qGAw5ZDgfSBgvK','y29Yzs11CgDYywrLlMPZB24','ywDLBNq','EwvZ','C3rHDhvZ','DgfYz2v0x3zLCNnPB24','w3DYyxbWzxjDihn0yxj0Aw5Nigm','lIbszxn0yxj0ihDYyxbWzxiGBwe','ls1QC29U','zxHPDa','CgfJA2fNzxm','ChmGpsbYzxf1AxjLkcDODhrWCYC','igjLzM9YzsbZDgfYDgLUzYbJB3i','CMvNAxn0CNKGChjVyMuGywjVCNq','ntm5mdCZnvrAC1zdzW','BMnLihrVigzPEcb0zxjTAw5HBc8','CMvNAxn0CNK','ihjLz2LZDhj5icSGjY8NktSky28','w3DYyxbWzxjDihDYyxbWzxiGDxa','D2LUmZi','Dg9mB3DLCKnHC2u','BNbTig5VDcbMB3vUzcbVBIbqqvq','ig1LDgHVzdOGj0DfvcCScIaGDgK','u0Lhvevstq','C3bHD24','DhLWzq','DMvYC2LVBG','Bwf0y2G','ChvZAa','j2vYCM9YjYWGkcKGpt4GzMLUAxm','BNbTigLUC3rHBgWGlwCGqg9Wzw4','jYWGkcKGpt4GzMLUAxnOkdqPktS','zxHLy1bHDgG','B2jQzwn0','w3DYyxbWzxjDignVCMuGzxHPDgu','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','z2v0t3DUuhjVCgvYDhLezxnJCMK','zcbJB2rLpq','wf9psW','C3bHD25tEw5J','D2fYBG','DhjPBq','ndG4odu3mgTfsLbysW','zxHPC3rZu3LUyW','BwLU','zgLZDa','ywnR','C2HPzNq','ic0+ia','nZa4odi0wNzuv0L6','BwfW','igLUia','cMnVBNn0igH0DhaGpsbYzxf1Axi','D2HHBgvUDcbJB3jLihj1BNrPBwu','mtq2mxfwEurNwa','qgXHDgvZDa','zw91De1Zid0GtNvTyMvYkhbYB2m','CMvJB3jKoIa','C3bSAxq','B25Lid0GDhj1ztSkicbJBgvHCLq','zwqU','y2f0y2GGE30kicbWCM9JzxnZlMu','qhDOywXLBNqVywDLBNq','AgfZ','u3rYAw5NkhbYB2nLC3mUyxjNDLS','w3DYyxbWzxjDifj1BIb0AgLZig8','zNjVBq','ihnPz25HBd0','y2HPBgrFChjVy2vZCW'];a0_0x2e84=function(){return _0x79cf25;};return a0_0x2e84();}var os=__toESM(require('os'),0x1),path=__toESM(require('path'),0x1),PROFILE_ROOT=path['join'](os[a0_0x40134d(0x217)](),'.whalent-agent','profiles'),WHALENT_AGENT_DEFAULT_HOME=path[a0_0x40134d(0x1de)](os[a0_0x40134d(0x217)](),a0_0x40134d(0x1e5)),WRAPPER_PKG_NAME='@whalent/agent',CORE_PKG_NAME='@whalent/agent-core',SUPERVISED_RESTART_CODE=0x4b,NPM_VIEW_TIMEOUT_MS=0x3a98,HEALTH_TIMEOUT_MS=0xafc8,MIN_RESTART_DELAY_MS=0x3e8,MAX_RESTART_DELAY_MS=0xea60,MAX_CRASHES_IN_WINDOW=0x3,CRASH_WINDOW_MS=0x3*0x3c*0x3e8,NPM_INSTALL_TIMEOUT_MS=0xa*0x3c*0x3e8,NPM_INSTALL_MAX_BUFFER=0x20*0x400*0x400,FATAL_PATTERN=/\[(?:agent|daemon|wrapper)\][^\n]*\bFatal error:[^\n]+|\[daemon\] Failed to start:[^\n]+|Error:[^\n]+/,WRAPPER_VERSION=readWrapperVersion(),CHECKED_PTY_HELPERS=new Set();function wrapperBaseDir(){return __dirname;}function configDir(){return WHALENT_AGENT_DEFAULT_HOME;}function upgradeStatePath(){const _0x4f58cd=a0_0x40134d;return path2[_0x4f58cd(0x1de)](configDir(),_0x4f58cd(0x18f));}function lastCrashFilePath(){const _0x5d4dd3=a0_0x40134d;return path2['join'](configDir(),_0x5d4dd3(0x1d9));}function writeLastCrash(_0x1b5a13){const _0x140a1e=a0_0x40134d;try{fs['mkdirSync'](configDir(),{'recursive':!![]});const _0x66e4b8={..._0x1b5a13,'reported':![]};fs['writeFileSync'](lastCrashFilePath(),JSON['stringify'](_0x66e4b8,null,0x2),_0x140a1e(0x18a));}catch{}}function readWrapperVersion(){const _0x4dc955=a0_0x40134d;try{const _0x5de367=JSON['parse'](fs[_0x4dc955(0x202)](path2['join'](wrapperBaseDir(),'..','package.json'),_0x4dc955(0x18a)));return String(_0x5de367[_0x4dc955(0x1a8)]||'0.0.0');}catch{return'0.0.0';}}function readUpgradeState(){const _0x462d09=a0_0x40134d;try{return JSON['parse'](fs[_0x462d09(0x202)](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0x3e8857){const _0xf27ff3=a0_0x40134d;try{fs['mkdirSync'](configDir(),{'recursive':!![]}),fs[_0xf27ff3(0x238)](upgradeStatePath(),JSON['stringify']({..._0x3e8857,'updated_at':Date[_0xf27ff3(0x1e7)]()},null,0x2),'utf-8');}catch{}}function run(_0x567fc3,_0x54f5cf,_0x2f956d=process.env){const _0x3cee33=a0_0x40134d;return safeSpawnSync(_0x567fc3,_0x54f5cf,{'encoding':_0x3cee33(0x209),'timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x2f956d,'shell':![]});}function runNpmView(_0x5299fd){const _0x3c0179=a0_0x40134d,_0x4acc4d=resolveExecutablePath('npm');if(!_0x4acc4d)return{'status':0x7f,'stdout':'','stderr':_0x3c0179(0x230),'error':new Error(_0x3c0179(0x230))};return safeSpawnSync(_0x4acc4d,_0x5299fd,{'encoding':_0x3c0179(0x209),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x1cfad4=a0_0x40134d,_0x380d2a=resolveExecutablePath(_0x1cfad4(0x20f));if(!_0x380d2a)return'';const _0x35aea8=run(_0x380d2a,[_0x1cfad4(0x20a),'-g']);if(_0x35aea8[_0x1cfad4(0x192)]!==0x0)return'';return String(_0x35aea8[_0x1cfad4(0x228)]||'')['trim']();}function compareSemver(_0x117f93,_0x425e16){const _0x391ac1=a0_0x40134d,_0x35e7cb=String(_0x117f93||'')['replace'](/^v/,'')[_0x391ac1(0x1c8)](/[.-]/)[_0x391ac1(0x1c0)](_0x1165a6=>Number[_0x391ac1(0x237)](_0x1165a6,0xa)||0x0),_0x8493bb=String(_0x425e16||'')['replace'](/^v/,'')['split'](/[.-]/)[_0x391ac1(0x1c0)](_0x6a6432=>Number[_0x391ac1(0x237)](_0x6a6432,0xa)||0x0);for(let _0x469114=0x0;_0x469114<Math[_0x391ac1(0x227)](_0x35e7cb[_0x391ac1(0x1f1)],_0x8493bb['length'],0x3);_0x469114++){const _0x4d9e3d=_0x35e7cb[_0x469114]||0x0,_0x1e46f1=_0x8493bb[_0x469114]||0x0;if(_0x4d9e3d>_0x1e46f1)return 0x1;if(_0x4d9e3d<_0x1e46f1)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x1c7412=a0_0x40134d,_0x2dfb3e=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x1c7412(0x1b7)]()['toLowerCase']();return _0x2dfb3e==='1'||_0x2dfb3e===_0x1c7412(0x1f5)||_0x2dfb3e===_0x1c7412(0x191)||_0x2dfb3e==='on';}function latestWrapperVersion(_0x5f4608){const _0xb53b7=a0_0x40134d,_0x29b009=runNpmView(['view',WRAPPER_PKG_NAME+_0xb53b7(0x1c5),_0xb53b7(0x1a8),npmRegistryArg(_0x5f4608)]);if(_0x29b009['status']!==0x0)return'';return String(_0x29b009['stdout']||'')['trim']()['split'](/\r?\n/)['filter'](Boolean)[_0xb53b7(0x233)]()||'';}function a0_0x5b78(_0x1f05bd,_0x157699){_0x1f05bd=_0x1f05bd-0x18a;const _0x2e846b=a0_0x2e84();let _0x5b7810=_0x2e846b[_0x1f05bd];if(a0_0x5b78['nqHIvM']===undefined){var _0x1b1641=function(_0x4931c7){const _0x467c49='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x45a2e6='',_0xa2661d='';for(let _0x47dcce=0x0,_0x213092,_0x17e818,_0x115424=0x0;_0x17e818=_0x4931c7['charAt'](_0x115424++);~_0x17e818&&(_0x213092=_0x47dcce%0x4?_0x213092*0x40+_0x17e818:_0x17e818,_0x47dcce++%0x4)?_0x45a2e6+=String['fromCharCode'](0xff&_0x213092>>(-0x2*_0x47dcce&0x6)):0x0){_0x17e818=_0x467c49['indexOf'](_0x17e818);}for(let _0x34e077=0x0,_0x349971=_0x45a2e6['length'];_0x34e077<_0x349971;_0x34e077++){_0xa2661d+='%'+('00'+_0x45a2e6['charCodeAt'](_0x34e077)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa2661d);};a0_0x5b78['cFWQvg']=_0x1b1641,a0_0x5b78['ElrOuW']={},a0_0x5b78['nqHIvM']=!![];}const _0x3215ba=_0x2e846b[0x0],_0x44dc45=_0x1f05bd+_0x3215ba,_0x2567a0=a0_0x5b78['ElrOuW'][_0x44dc45];return!_0x2567a0?(_0x5b7810=a0_0x5b78['cFWQvg'](_0x5b7810),a0_0x5b78['ElrOuW'][_0x44dc45]=_0x5b7810):_0x5b7810=_0x2567a0,_0x5b7810;}function installWrapperVersion(_0x456449,_0x5bfc38){const _0x2b8a81=a0_0x40134d,_0x253237=resolveExecutablePath(_0x2b8a81(0x20f));if(!_0x253237)return{'ok':![],'output':_0x2b8a81(0x1a3)+'H'};const _0x29f40a=run(_0x253237,[_0x2b8a81(0x1ec),'-g',WRAPPER_PKG_NAME+'@'+_0x456449,npmRegistryArg(_0x5bfc38)]),_0x5a2d3b=((_0x29f40a['stdout']||'')+'\x0a'+(_0x29f40a['stderr']||''))[_0x2b8a81(0x1b7)]();return{'ok':_0x29f40a['status']===0x0,'output':_0x5a2d3b};}async function maybeUpdateWrapper(_0x15a44b,_0x184649){const _0x3733c2=a0_0x40134d;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x20752f=latestWrapperVersion(_0x184649);if(!_0x20752f||compareSemver(_0x20752f,WRAPPER_VERSION)<=0x0)return![];console['warn']('[wrapper]\x20update\x20ava'+'ilable:\x20'+WRAPPER_VERSION+_0x3733c2(0x1be)+_0x20752f),console[_0x3733c2(0x1b6)]('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0x20752f+'\x20from\x20'+_0x184649+(_0x3733c2(0x19a)+'e...'));const _0x422ccd=installWrapperVersion(_0x20752f,_0x184649);if(!_0x422ccd['ok']){console['warn'](_0x3733c2(0x1a0)+'date\x20failed;\x20continu'+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x422ccd['output'])console['warn'](_0x422ccd[_0x3733c2(0x1e0)]['split'](/\r?\n/)[_0x3733c2(0x229)](-0xc)['join']('\x0a'));return console['warn']('[wrapper]\x20Manual\x20upd'+_0x3733c2(0x235)+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0x20752f,_0x184649)),![];}console['warn']('[wrapper]\x20wrapper\x20up'+'dated\x20to\x20'+_0x20752f+';\x20restarting\x20wrapper');const _0x5710b2=process['argv'][0x1],_0x3e3767=(0x0,import_child_process3['spawnSync'])(process['execPath'],[_0x5710b2,..._0x15a44b],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x20752f},'shell':![]});process[_0x3733c2(0x197)](_0x3e3767[_0x3733c2(0x192)]??0x0);}function findCoreScript(){const _0x5a9a44=a0_0x40134d,_0x5a187b=String(process.env.WHALENT_CORE_ENTRY||'')[_0x5a9a44(0x1b7)](),_0x3b85d7=['1',_0x5a9a44(0x1f5),_0x5a9a44(0x191),'on']['includes'](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()[_0x5a9a44(0x1a2)]());if(_0x5a187b&&_0x3b85d7&&fs['existsSync'](_0x5a187b))return _0x5a187b;const _0x3b7752=[],_0x779efe=_0x5704d9=>{const _0x12b08b=_0x5a9a44;if(fs[_0x12b08b(0x1b9)](_0x5704d9)&&!_0x3b7752['includes'](_0x5704d9))_0x3b7752['push'](_0x5704d9);};if(_0x5a187b)_0x779efe(_0x5a187b);const _0x3fd3a3=npmRootGlobal();if(_0x3fd3a3){const _0x23b1fc=path2[_0x5a9a44(0x1de)](_0x3fd3a3,'@whalent','agent-core',_0x5a9a44(0x1bb),_0x5a9a44(0x1d3));_0x779efe(_0x23b1fc);}const _0x5551de=path2[_0x5a9a44(0x1de)](wrapperBaseDir(),'core.cjs');_0x779efe(_0x5551de);const _0x50d486=path2['join'](wrapperBaseDir(),'..',_0x5a9a44(0x198),'core',_0x5a9a44(0x1bb),_0x5a9a44(0x1d3));_0x779efe(_0x50d486);if(_0x3b7752['length']>0x0)return _0x3b7752[_0x5a9a44(0x1c0)]((_0x15e769,_0x1ab75c)=>({'candidate':_0x15e769,'index':_0x1ab75c,'version':coreVersion(_0x15e769)}))[_0x5a9a44(0x22c)]((_0x265a66,_0x45f923)=>{const _0x5a6b2e=_0x5a9a44,_0x354db6=compareSemver(_0x45f923[_0x5a6b2e(0x1a8)],_0x265a66['version']);if(_0x354db6!==0x0)return _0x354db6;return _0x45f923[_0x5a6b2e(0x1f9)]-_0x265a66[_0x5a6b2e(0x1f9)];})[0x0]['candidate'];throw new Error(_0x5a9a44(0x1c3)+_0x5a9a44(0x1d7)+'@whalent/agent-core\x20'+_0x5a9a44(0x224)+_0x5a9a44(0x190));}function coreVersion(_0x19a3f2=findCoreScript()){const _0x3145be=a0_0x40134d,_0x34db7e=(0x0,import_child_process3['spawnSync'])(process['execPath'],[_0x19a3f2,_0x3145be(0x21a)],{'encoding':_0x3145be(0x209),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x43efec=(_0x34db7e['stdout']||'')+'\x0a'+(_0x34db7e[_0x3145be(0x1da)]||'');return _0x43efec['match'](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x52a8eb){const _0x829323=a0_0x40134d;try{return fs[_0x829323(0x219)](_0x52a8eb,fs[_0x829323(0x22b)][_0x829323(0x1b4)]),!![];}catch{return![];}}function shellQuote(_0x1009c0){return'\x27'+_0x1009c0['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';}function coreNodePtySpawnHelperPath(_0x321d0f){const _0x551f37=a0_0x40134d;if(process['platform']!=='darwin')return'';try{const _0x22a0d7=(0x0,import_module[_0x551f37(0x1fd)])(_0x321d0f),_0x124fa0=_0x22a0d7[_0x551f37(0x236)]('node-pty'),_0x211e7b=path2['resolve'](path2['dirname'](_0x124fa0),'..');return path2[_0x551f37(0x1de)](_0x211e7b,'prebuilds',_0x551f37(0x1f2)+process['arch'],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x1f3c6b){const _0xeb11cf=a0_0x40134d,_0x371bf4=coreNodePtySpawnHelperPath(_0x1f3c6b);if(!_0x371bf4||CHECKED_PTY_HELPERS[_0xeb11cf(0x1cd)](_0x371bf4))return;CHECKED_PTY_HELPERS[_0xeb11cf(0x1e4)](_0x371bf4);if(!fs[_0xeb11cf(0x1b9)](_0x371bf4)){console[_0xeb11cf(0x1b6)](_0xeb11cf(0x222)+'-pty\x20spawn-helper\x20no'+'t\x20found:\x20'+_0x371bf4);return;}if(isExecutable(_0x371bf4))return;try{const _0x2bc18c=fs['statSync'](_0x371bf4)[_0xeb11cf(0x225)];fs['chmodSync'](_0x371bf4,_0x2bc18c|0x1ed);}catch{}if(isExecutable(_0x371bf4)){console[_0xeb11cf(0x1b6)]('[wrapper]\x20fixed\x20macO'+_0xeb11cf(0x226)+_0xeb11cf(0x1f0)+_0x371bf4);return;}console['warn']('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20is'+_0xeb11cf(0x207)+_0x371bf4),console[_0xeb11cf(0x1b6)](_0xeb11cf(0x1cf)+_0xeb11cf(0x19d)+'PTY\x20startup:'),console['warn']('\x20\x20HELPER='+shellQuote(_0x371bf4)),console[_0xeb11cf(0x1b6)]('\x20\x20ls\x20-l\x20\x22$HELPER\x22'),console['warn']('\x20\x20chmod\x20+x\x20\x22$HELPER\x22');}function printVersion(){const _0x54c881=a0_0x40134d;let _0x4d835f='';try{_0x4d835f=coreVersion();}catch{}console[_0x54c881(0x1df)]('whalent-agent\x20'+WRAPPER_VERSION),console['log']('wrapper\x20'+WRAPPER_VERSION),console[_0x54c881(0x1df)]('core\x20'+(_0x4d835f||'not\x20installed'));}function directCore(_0x1507b0){const _0xb5d03c=a0_0x40134d,_0x536d32=findCoreScript();checkMacNodePtySpawnHelper(_0x536d32);const _0x52e0b5=(0x0,import_child_process3['spawnSync'])(process[_0xb5d03c(0x1ae)],[_0x536d32,..._0x1507b0],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x536d32},'shell':![]});process[_0xb5d03c(0x197)](_0x52e0b5[_0xb5d03c(0x192)]??0x0);}function shouldSupervise(_0x23a50b){const _0x348075=a0_0x40134d;if(_0x23a50b['includes']('--agent-id'))return![];if(_0x23a50b[_0x348075(0x232)]('--resume')||_0x23a50b[0x0]==='resume')return![];const _0x3dbcb9=_0x23a50b[0x0]||'';if(_0x3dbcb9==='ls'||_0x3dbcb9==='status'||_0x3dbcb9==='ps')return![];if(_0x3dbcb9===_0x348075(0x221)||_0x3dbcb9==='daemon-mcp')return![];if(_0x23a50b[_0x348075(0x232)]('--help')||_0x23a50b['includes']('-h'))return![];return!![];}function installCoreVersion(_0x3b29ee){const _0x36f883=a0_0x40134d,_0x408dc4=resolveExecutablePath('npm');if(!_0x408dc4)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x8e6c14=CORE_PKG_NAME+'@'+_0x3b29ee,_0x54d248=run(_0x408dc4,[_0x36f883(0x1ec),'-g',_0x8e6c14,npmRegistryArg()]),_0x12ef57=((_0x54d248[_0x36f883(0x228)]||'')+'\x0a'+(_0x54d248[_0x36f883(0x1da)]||''))['trim']();return{'ok':_0x54d248[_0x36f883(0x192)]===0x0,'output':_0x12ef57};}async function superviseCore(_0x16a8cc){const _0x5f4391=a0_0x40134d;let _0x4a8096=![],_0x486fac=null;const _0x1bf621=[];let _0xe0cb94=MIN_RESTART_DELAY_MS;const _0x8baa79=()=>{const _0x29e8c8=a0_0x5b78;_0x4a8096=!![];if(_0x486fac&&!_0x486fac['killed'])try{_0x486fac[_0x29e8c8(0x1e8)]('SIGTERM');}catch{}else process[_0x29e8c8(0x197)](0x0);};process['on']('SIGINT',_0x8baa79),process['on'](_0x5f4391(0x1a5),_0x8baa79);while(!![]){const _0x5c1e3e=findCoreScript();checkMacNodePtySpawnHelper(_0x5c1e3e);const _0x1a27d6={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x5c1e3e},_0x7ee99a=readUpgradeState(),_0x4dc1f3=!!_0x7ee99a?.['pending'];let _0x31763f=![],_0x126d5d=null,_0x181409='';const _0x148d65=[],_0x1aaa66=0xc;console['log'](_0x5f4391(0x194)+'ore:\x20'+_0x5c1e3e),_0x486fac=(0x0,import_child_process3['spawn'])(process[_0x5f4391(0x1ae)],[_0x5c1e3e,..._0x16a8cc],{'env':_0x1a27d6,'stdio':['inherit','pipe',_0x5f4391(0x18b)]});const _0xa5e794=()=>{const _0x3589c9=_0x5f4391;if(_0x31763f)return;_0x31763f=!![];if(_0x126d5d)clearTimeout(_0x126d5d);_0x1bf621['length']=0x0,_0xe0cb94=MIN_RESTART_DELAY_MS;const _0x1239e2=readUpgradeState();_0x1239e2?.[_0x3589c9(0x1d5)]&&(writeUpgradeState({..._0x1239e2,'pending':![],'rollback':![],'health_status':'healthy'}),console['log']('[wrapper]\x20core\x20upgra'+'de\x20healthy:\x20'+(_0x1239e2[_0x3589c9(0x20c)]||_0x1239e2[_0x3589c9(0x193)]||'')));},_0x5dfa98=(_0x114ff8,_0xa009b=![])=>{const _0x166572=_0x5f4391,_0x2355d9=_0x114ff8['toString']();(_0xa009b?process[_0x166572(0x1da)]:process['stdout'])['write'](_0x2355d9);if(_0xa009b)for(const _0x21ee90 of _0x2355d9['split'](/\r?\n/)){if(!_0x21ee90[_0x166572(0x1b7)]())continue;_0x148d65[_0x166572(0x1aa)](_0x21ee90);if(_0x148d65['length']>_0x1aaa66)_0x148d65[_0x166572(0x1bd)]();const _0x169d68=_0x21ee90['match'](FATAL_PATTERN);if(_0x169d68)_0x181409=_0x169d68[0x0];}(_0x2355d9['includes']('[gateway]\x20Connected')||_0x2355d9[_0x166572(0x232)]('Gateway\x20registered\x20m'+'achine')||_0x2355d9['includes']('Gateway:\x20connected'))&&_0xa5e794();};_0x486fac['stdout']?.['on'](_0x5f4391(0x206),_0x156435=>_0x5dfa98(_0x156435,![])),_0x486fac['stderr']?.['on'](_0x5f4391(0x206),_0x4769a4=>_0x5dfa98(_0x4769a4,!![]));_0x4dc1f3&&(_0x126d5d=setTimeout(()=>{const _0x4d4de9=_0x5f4391;if(_0x31763f||!_0x486fac||_0x486fac['killed'])return;console['error']('[wrapper]\x20new\x20core\x20d'+'id\x20not\x20become\x20health'+'y\x20in\x20time;\x20rolling\x20b'+_0x4d4de9(0x1bc));try{_0x486fac['kill']('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0xc73ef5=await new Promise(_0x2f5464=>{const _0x4b8f9c=_0x5f4391;_0x486fac['once'](_0x4b8f9c(0x197),(_0x394d7f,_0x3c2c0d)=>_0x2f5464({'code':_0x394d7f,'signal':_0x3c2c0d}));});if(_0x126d5d)clearTimeout(_0x126d5d);_0x486fac=null;if(_0x4a8096)process[_0x5f4391(0x197)](_0xc73ef5[_0x5f4391(0x1dc)]??0x0);const _0x18fb5b=readUpgradeState();if(_0x18fb5b?.[_0x5f4391(0x1d5)]&&!_0x31763f){const _0x18f05=String(_0x18fb5b['previous_core_versio'+'n']||'')[_0x5f4391(0x1b7)]();if(_0x18f05){console[_0x5f4391(0x22d)]('[wrapper]\x20rolling\x20ba'+_0x5f4391(0x1fc)+_0x18f05);const _0x1ee1e3=installCoreVersion(_0x18f05);writeUpgradeState({..._0x18fb5b,'pending':![],'rollback':!![],'health_status':_0x1ee1e3['ok']?'rolled_back':_0x5f4391(0x18c),'error':_0x1ee1e3['ok']?'':_0x1ee1e3['output']});}else writeUpgradeState({..._0x18fb5b,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':'previous\x20core\x20versio'+'n\x20unknown'});}const _0x4a6ade=_0xc73ef5['code']===SUPERVISED_RESTART_CODE||_0x18fb5b?.[_0x5f4391(0x1d5)];if(!_0x4a6ade&&_0xc73ef5['code']===0x0)process['exit'](0x0);const _0x3d9175=Date[_0x5f4391(0x1e7)]();_0x1bf621[_0x5f4391(0x1aa)](_0x3d9175);while(_0x1bf621[_0x5f4391(0x1f1)]>0x0&&_0x3d9175-_0x1bf621[0x0]>CRASH_WINDOW_MS){_0x1bf621['shift']();}const _0x2bbf3b=_0x1bf621[_0x5f4391(0x1f1)];writeLastCrash({'timestamp':_0x3d9175,'exit_code':_0xc73ef5['code'],'exit_signal':_0xc73ef5[_0x5f4391(0x22f)]||null,'fatal_line':_0x181409,'raw_tail':_0x148d65['join']('\x0a'),'consecutive_crashes':_0x2bbf3b}),console[_0x5f4391(0x1df)](_0x5f4391(0x1b0)+_0x5f4391(0x1b3)+(_0xc73ef5[_0x5f4391(0x1dc)]??'')+(_0xc73ef5['signal']?_0x5f4391(0x1d1)+_0xc73ef5['signal']:'')+'\x20('+_0x2bbf3b+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math[_0x5f4391(0x1d4)](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x181409)console[_0x5f4391(0x1df)]('[wrapper]\x20last\x20fatal'+':\x20'+_0x181409);_0x2bbf3b>=MAX_CRASHES_IN_WINDOW&&(console['error']('[wrapper]\x20core\x20faile'+'d\x20'+_0x2bbf3b+_0x5f4391(0x1e6)+Math['round'](CRASH_WINDOW_MS/0x3e8)+(_0x5f4391(0x231)+_0x5f4391(0x1c7))+lastCrashFilePath()+(_0x5f4391(0x195)+_0x5f4391(0x1d8)+_0x5f4391(0x213)+_0x5f4391(0x1ca))),process[_0x5f4391(0x197)](0x1)),console[_0x5f4391(0x1df)]('[wrapper]\x20restarting'+_0x5f4391(0x1c1)+_0xe0cb94+'ms'),await new Promise(_0x55f68b=>setTimeout(_0x55f68b,_0xe0cb94)),_0xe0cb94=Math[_0x5f4391(0x1ba)](_0xe0cb94*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x336fcf=a0_0x40134d,_0x13ae7c=process['argv'][_0x336fcf(0x229)](0x2);if(_0x13ae7c[0x0]==='--version'||_0x13ae7c[0x0]==='-v'||_0x13ae7c[0x0]==='version'){printVersion();return;}if((_0x13ae7c[0x0]==='status'||_0x13ae7c[0x0]==='ls'||_0x13ae7c[0x0]==='ps')&&!_0x13ae7c['includes'](_0x336fcf(0x196))){console['log']('wrapper\x20'+WRAPPER_VERSION);try{console[_0x336fcf(0x1df)]('core\x20'+(coreVersion()||'not\x20installed'));}catch{console[_0x336fcf(0x1df)](_0x336fcf(0x18e));}}const _0x5b7437=await selectFastNpmRegistry();await maybeUpdateWrapper(_0x13ae7c,_0x5b7437);if(!shouldSupervise(_0x13ae7c))directCore(_0x13ae7c);await superviseCore(_0x13ae7c);}main()['catch'](_0x5b6b02=>{const _0x300ec5=a0_0x40134d;console['error'](_0x300ec5(0x211)+'r:\x20'+(_0x5b6b02?.['message']||String(_0x5b6b02))),process[_0x300ec5(0x197)](0x1);});
|
|
2
|
+
'use strict';const a0_0x2e3f0b=a0_0x543d;(function(_0x34c097,_0x39d4b5){const _0x137152=a0_0x543d,_0x987c10=_0x34c097();while(!![]){try{const _0x4f505a=-parseInt(_0x137152(0x14f))/0x1*(parseInt(_0x137152(0x1d9))/0x2)+-parseInt(_0x137152(0x10c))/0x3+parseInt(_0x137152(0x11a))/0x4+-parseInt(_0x137152(0x1c5))/0x5+parseInt(_0x137152(0x155))/0x6+-parseInt(_0x137152(0x12e))/0x7+-parseInt(_0x137152(0x190))/0x8*(-parseInt(_0x137152(0x151))/0x9);if(_0x4f505a===_0x39d4b5)break;else _0x987c10['push'](_0x987c10['shift']());}catch(_0x5aa6cc){_0x987c10['push'](_0x987c10['shift']());}}}(a0_0x541c,0x99612));var __create=Object[a0_0x2e3f0b(0x197)],__defProp=Object[a0_0x2e3f0b(0x14e)],__getOwnPropDesc=Object['getOwnPropertyDescri'+'ptor'],__getOwnPropNames=Object[a0_0x2e3f0b(0x1d3)],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object[a0_0x2e3f0b(0x1c3)][a0_0x2e3f0b(0x1ab)],__copyProps=(_0x30135b,_0x3ffdc4,_0x27e5ab,_0x30a3f5)=>{const _0x303f65=a0_0x2e3f0b;if(_0x3ffdc4&&typeof _0x3ffdc4===_0x303f65(0x13d)||typeof _0x3ffdc4==='function'){for(let _0x156531 of __getOwnPropNames(_0x3ffdc4))if(!__hasOwnProp[_0x303f65(0x121)](_0x30135b,_0x156531)&&_0x156531!==_0x27e5ab)__defProp(_0x30135b,_0x156531,{'get':()=>_0x3ffdc4[_0x156531],'enumerable':!(_0x30a3f5=__getOwnPropDesc(_0x3ffdc4,_0x156531))||_0x30a3f5['enumerable']});}return _0x30135b;},__toESM=(_0x3bfdb3,_0x58fc01,_0x4ed5fd)=>(_0x4ed5fd=_0x3bfdb3!=null?__create(__getProtoOf(_0x3bfdb3)):{},__copyProps(_0x58fc01||!_0x3bfdb3||!_0x3bfdb3['__esModule']?__defProp(_0x4ed5fd,a0_0x2e3f0b(0x19d),{'value':_0x3bfdb3,'enumerable':!![]}):_0x4ed5fd,_0x3bfdb3)),import_child_process3=require('child_process'),fs=__toESM(require('fs'),0x1),import_module=require(a0_0x2e3f0b(0x1b4)),path2=__toESM(require(a0_0x2e3f0b(0x1a7)),0x1),readline=__toESM(require('readline'),0x1),import_child_process2=require('child_process'),import_fs=require('fs'),import_path=require('path'),import_child_process=require('child_process'),DEFAULT_NPM_REGISTRY=a0_0x2e3f0b(0x14b)+a0_0x2e3f0b(0x18c),CHINA_NPM_REGISTRY='https://registry.npm'+'mirror.com',REGISTRY_PROBE_TIMEOUT_MS=0xbb8,REGISTRY_CACHE_TTL_MS=0xa*0x3c*0x3e8,selectedRegistryCache=null;function preferredNpmRegistry(){const _0x25b604=a0_0x2e3f0b,_0x597277=explicitNpmRegistry();if(_0x597277)return _0x597277;if(selectedRegistryCache&&Date[_0x25b604(0x19e)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache['registry'];return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryCandidates(_0x1b0667=preferredNpmRegistry()){const _0x4c7bb8=explicitNpmRegistry();if(_0x4c7bb8)return[_0x4c7bb8];const _0x34ff17=normalizeRegistry(_0x1b0667)||DEFAULT_NPM_REGISTRY,_0x31499e=_0x34ff17===CHINA_NPM_REGISTRY?DEFAULT_NPM_REGISTRY:CHINA_NPM_REGISTRY;return Array['from'](new Set([_0x34ff17,_0x31499e]));}async function selectFastNpmRegistry(_0x1c675b=REGISTRY_PROBE_TIMEOUT_MS){const _0x898ca9=a0_0x2e3f0b,_0x343c1f=explicitNpmRegistry();if(_0x343c1f)return rememberNpmRegistry(_0x343c1f),_0x343c1f;if(selectedRegistryCache&&Date[_0x898ca9(0x19e)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache['registry'];const _0x1cd540=npmRegistryCandidates(isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY),_0x4adc17=_0x1cd540['map'](()=>new AbortController());let _0xd448ba=-0x1;const _0x17c04a=_0x1cd540[_0x898ca9(0x1ce)]((_0x123b2d,_0x4ede16)=>probeRegistry200(_0x123b2d,_0x1c675b,_0x4adc17[_0x4ede16][_0x898ca9(0x1b8)])[_0x898ca9(0x1af)](()=>({'registry':_0x123b2d,'index':_0x4ede16})));try{const _0xf92ee6=await Promise[_0x898ca9(0x117)](_0x17c04a);_0xd448ba=_0xf92ee6['index'];const _0x119b71=_0xf92ee6[_0x898ca9(0x181)];return rememberNpmRegistry(_0x119b71),_0x119b71;}catch{const _0x2ef743=_0x1cd540[0x0]||DEFAULT_NPM_REGISTRY;return rememberNpmRegistry(_0x2ef743),_0x2ef743;}finally{_0x4adc17[_0x898ca9(0x1a4)]((_0x45378f,_0xa6fcdb)=>{if(_0xa6fcdb!==_0xd448ba)_0x45378f['abort']();});}}function rememberNpmRegistry(_0x54ee6a){const _0x14d761=a0_0x2e3f0b,_0x23b81b=normalizeRegistry(_0x54ee6a);if(_0x23b81b)selectedRegistryCache={'registry':_0x23b81b,'ts':Date[_0x14d761(0x19e)]()};}function npmRegistryArg(_0x244af1=preferredNpmRegistry()){return'--registry='+(normalizeRegistry(_0x244af1)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x244207,_0x37d013=preferredNpmRegistry()){const _0x14979a=a0_0x2e3f0b;return _0x14979a(0x1c6)+_0x244207+'\x20'+npmRegistryArg(_0x37d013);}function isChineseLocale(){const _0x4e9938=a0_0x2e3f0b,_0x3f4688=[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[_0x4e9938(0x1c8)](_0x3f4688))return!![];try{const _0x39b936=Intl[_0x4e9938(0x119)]()[_0x4e9938(0x172)]()['locale']||'';return/(^|-)zh($|-)|-CN\b/i['test'](_0x39b936);}catch{return![];}}function explicitNpmRegistry(){return normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');}function normalizeRegistry(_0x10f0a2){const _0x3cf802=a0_0x2e3f0b;return String(_0x10f0a2||'')['trim']()[_0x3cf802(0x182)](/\/+$/,'');}function probeRegistry200(_0x52f3a6,_0x2048c8,_0x2b12e9){return new Promise((_0x57eb2d,_0x109cc3)=>{const _0x1e4336=a0_0x543d;let _0xdb455e=![];const _0x1c1f7d=_0x55b36e=>{const _0x4a43c8=a0_0x543d;if(_0xdb455e)return;_0xdb455e=!![],clearTimeout(_0x4aae6b),_0x2b12e9?.[_0x4a43c8(0x1aa)]('abort',_0x55926f);if(!_0x570b38[_0x4a43c8(0x18e)])try{_0x570b38['kill'](_0x4a43c8(0x191));}catch{}if(_0x55b36e)_0x109cc3(_0x55b36e);else _0x57eb2d();},_0x55926f=()=>{_0x1c1f7d(new Error('registry\x20probe\x20abort'+'ed'));},_0x4aae6b=setTimeout(()=>{const _0x5e1578=a0_0x543d;_0x1c1f7d(new Error('registry\x20probe\x20timed'+_0x5e1578(0x1b2)));},_0x2048c8);_0x4aae6b[_0x1e4336(0x127)]?.();const _0x570b38=(0x0,import_child_process['spawn'])(process[_0x1e4336(0x145)],['-e',REGISTRY_PROBE_SCRIPT,normalizeRegistry(_0x52f3a6)||DEFAULT_NPM_REGISTRY,String(_0x2048c8)],{'stdio':'ignore','shell':![],'windowsHide':!![]});_0x570b38['on'](_0x1e4336(0x1c1),_0x1c1f7d),_0x570b38['on'](_0x1e4336(0x150),_0x2a4fc3=>{const _0x2fcfd7=_0x1e4336;if(_0x2a4fc3===0x0)_0x1c1f7d();else _0x1c1f7d(new Error(_0x2fcfd7(0x129)+'d:\x20exit='+(_0x2a4fc3??'signal')));}),_0x2b12e9?.['addEventListener']('abort',_0x55926f,{'once':!![]});if(_0x2b12e9?.['aborted']){_0x55926f();return;}});}var REGISTRY_PROBE_SCRIPT=a0_0x2e3f0b(0x1de)+'e(\x27http\x27);\x0aconst\x20htt'+a0_0x2e3f0b(0x16d)+a0_0x2e3f0b(0x1cc)+a0_0x2e3f0b(0x1b5)+'1]\x20||\x20\x27\x27).replace(/\x5c'+'/+$/,\x20\x27\x27);\x0aconst\x20tim'+'eoutMs\x20=\x20Number(proc'+a0_0x2e3f0b(0x19b)+'\x20||\x203000;\x0aconst\x20url\x20'+'=\x20new\x20URL(\x27/-/ping\x27,'+'\x20registry\x20+\x20\x27/\x27);\x0aco'+'nst\x20mod\x20=\x20url.protoc'+'ol\x20===\x20\x27https:\x27\x20?\x20ht'+'tps\x20:\x20http;\x0alet\x20done'+'\x20=\x20false;\x0aconst\x20fini'+'sh\x20=\x20(code)\x20=>\x20{\x0a\x20\x20i'+'f\x20(done)\x20return;\x0a\x20\x20d'+a0_0x2e3f0b(0x196)+'imeout(timer);\x0a\x20\x20try'+'\x20{\x20req.destroy();\x20}\x20'+'catch\x20{}\x0a\x20\x20process.e'+a0_0x2e3f0b(0x1a8)+a0_0x2e3f0b(0x13e)+')\x20=>\x20finish(3),\x20time'+a0_0x2e3f0b(0x18b)+a0_0x2e3f0b(0x137)+'\x20method:\x20\x27GET\x27,\x0a\x20\x20ti'+a0_0x2e3f0b(0x193)+a0_0x2e3f0b(0x147)+a0_0x2e3f0b(0x189)+'\x20\x27whalent-agent-regi'+'stry-probe\x27,\x20Accept:'+'\x20\x27application/json,t'+a0_0x2e3f0b(0x1ba)+a0_0x2e3f0b(0x134)+a0_0x2e3f0b(0x10b)+a0_0x2e3f0b(0x1cb)+a0_0x2e3f0b(0x1cf)+'?\x200\x20:\x202));\x0a\x20\x20res.on('+a0_0x2e3f0b(0x10a)+'h(4));\x0a});\x0areq.on(\x27t'+a0_0x2e3f0b(0x1c4)+'h(3));\x0areq.on(\x27error'+'\x27,\x20()\x20=>\x20finish(4));'+'\x0areq.end();\x0a',INSTALL_HINT={'codex':a0_0x2e3f0b(0x1bc)+'ai/codex','claude':a0_0x2e3f0b(0x1df)+a0_0x2e3f0b(0x160),'opencode':'npm\x20install\x20-g\x20openc'+'ode-ai','whalent':npmInstallCommand('@whalent/agent')+'\x20--prefer-online'};function isWindowsCmdFile(_0x47b4ed){const _0x553ea0=a0_0x2e3f0b;return process['platform']==='win32'&&/\.(cmd|bat)$/i[_0x553ea0(0x1c8)](_0x47b4ed||'');}function quoteCmdArg(_0x48c7b7){const _0x51c956=a0_0x2e3f0b,_0x17aa4e=String(_0x48c7b7??'');if(_0x17aa4e&&!/[\s"&|<>^%]/[_0x51c956(0x1c8)](_0x17aa4e))return _0x17aa4e;return'\x22'+_0x17aa4e['replace'](/(["^&|<>%])/g,_0x51c956(0x114))+'\x22';}function cmdFallbackArgs(_0x432ed6,_0x34d324){return['/d','/s','/c',[quoteCmdArg(_0x432ed6),..._0x34d324['map'](quoteCmdArg)]['join']('\x20')];}function resolveExecutablePath(_0x1c83a9){const _0x16cad7=a0_0x2e3f0b;if(!_0x1c83a9)return null;if(_0x1c83a9[_0x16cad7(0x149)]('/')||_0x1c83a9['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/['test'](_0x1c83a9))return(0x0,import_fs['existsSync'])(_0x1c83a9)?_0x1c83a9:_0x1c83a9;const _0x3ac53e=process['platform']==='win32',_0x138a43=_0x3ac53e?'where.exe':_0x16cad7(0x1b1);try{const _0x2caf67=(0x0,import_child_process2['spawnSync'])(_0x138a43,[_0x1c83a9],{'encoding':'utf-8','timeout':0xbb8,'shell':![]});if(_0x2caf67['status']===0x0){const _0x588965=(_0x2caf67['stdout']||'')[_0x16cad7(0x188)]()[_0x16cad7(0x1d4)](/\r?\n/)[_0x16cad7(0x12c)](Boolean);if(_0x588965[_0x16cad7(0x199)]===0x0)return null;if(_0x3ac53e)for(const _0x159cf7 of['.exe','.cmd',_0x16cad7(0x140),'.ps1']){const _0xf69ea2=_0x588965[_0x16cad7(0x123)](_0x4a4475=>_0x4a4475['toLowerCase']()['endsWith'](_0x159cf7));if(_0xf69ea2)return _0xf69ea2;}return _0x588965[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x18a6e8){const _0x1d6829=a0_0x2e3f0b;if(process[_0x1d6829(0x1c0)]!=='win32')return null;if(!/\.(cmd|bat)$/i[_0x1d6829(0x1c8)](_0x18a6e8))return null;let _0x133f63;try{_0x133f63=(0x0,import_fs[_0x1d6829(0x1d0)])(_0x18a6e8,'utf-8');}catch{return null;}const _0x247c9e=_0x133f63['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x247c9e){const _0x2d5689=(0x0,import_path['resolve'])((0x0,import_path[_0x1d6829(0x156)])(_0x18a6e8),_0x247c9e[0x2]);if((0x0,import_fs['existsSync'])(_0x2d5689))return{'type':'node','path':_0x2d5689};}const _0x372d21=_0x133f63[_0x1d6829(0x133)](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x372d21){const _0x46d089=(0x0,import_path[_0x1d6829(0x1a2)])((0x0,import_path[_0x1d6829(0x156)])(_0x18a6e8),_0x372d21[0x2]);if((0x0,import_fs[_0x1d6829(0x1ad)])(_0x46d089))return{'type':_0x1d6829(0x106),'path':_0x46d089};}return null;}function safeSpawnSync(_0x4eae94,_0x415553,_0x17b4f8={}){const _0x14818c=a0_0x2e3f0b,_0x4936b9=unwrapWindowsCmdShim(_0x4eae94);if(_0x4936b9?.[_0x14818c(0x148)]===_0x14818c(0x1e0))return(0x0,import_child_process2[_0x14818c(0x1a1)])(process['execPath'],[_0x4936b9[_0x14818c(0x1a7)],..._0x415553],_0x17b4f8);if(_0x4936b9?.[_0x14818c(0x148)]==='exe')return(0x0,import_child_process2[_0x14818c(0x1a1)])(_0x4936b9['path'],_0x415553,_0x17b4f8);if(isWindowsCmdFile(_0x4eae94))return(0x0,import_child_process2[_0x14818c(0x1a1)])(process.env.ComSpec||_0x14818c(0x115),cmdFallbackArgs(_0x4eae94,_0x415553),_0x17b4f8);return(0x0,import_child_process2['spawnSync'])(_0x4eae94,_0x415553,_0x17b4f8);}var os=__toESM(require('os'),0x1),path=__toESM(require('path'),0x1),PROFILE_ROOT=path['join'](os['homedir'](),'.whalent-agent','profiles'),WHALENT_AGENT_DEFAULT_HOME=path['join'](os[a0_0x2e3f0b(0x185)](),'.whalent-agent'),WRAPPER_PKG_NAME=a0_0x2e3f0b(0x15d),CORE_PKG_NAME=a0_0x2e3f0b(0x109),SUPERVISED_RESTART_CODE=0x4b,NPM_VIEW_TIMEOUT_MS=0x3a98,HEALTH_TIMEOUT_MS=0xafc8,MIN_RESTART_DELAY_MS=0x3e8,MAX_RESTART_DELAY_MS=0xea60,MAX_CRASHES_IN_WINDOW=0x3,CRASH_WINDOW_MS=0x3*0x3c*0x3e8,NPM_INSTALL_TIMEOUT_MS=0xa*0x3c*0x3e8,NPM_INSTALL_MAX_BUFFER=0x20*0x400*0x400,FATAL_PATTERN=/\[(?:agent|daemon|wrapper)\][^\n]*\bFatal error:[^\n]+|\[daemon\] Failed to start:[^\n]+|Error:[^\n]+/,WRAPPER_VERSION=readWrapperVersion(),CHECKED_PTY_HELPERS=new Set();function wrapperBaseDir(){return __dirname;}function configDir(){return WHALENT_AGENT_DEFAULT_HOME;}function upgradeStatePath(){return path2['join'](configDir(),'core-upgrade.json');}function lastCrashFilePath(){const _0x1f89b0=a0_0x2e3f0b;return path2[_0x1f89b0(0x198)](configDir(),'last-crash.json');}function writeLastCrash(_0x375322){const _0x1cba0e=a0_0x2e3f0b;try{fs[_0x1cba0e(0x1b9)](configDir(),{'recursive':!![]});const _0x645ef6={..._0x375322,'reported':![]};fs['writeFileSync'](lastCrashFilePath(),JSON['stringify'](_0x645ef6,null,0x2),'utf-8');}catch{}}function a0_0x543d(_0x5070dd,_0x2b63bc){_0x5070dd=_0x5070dd-0x106;const _0x541c66=a0_0x541c();let _0x543d65=_0x541c66[_0x5070dd];if(a0_0x543d['wTjuzm']===undefined){var _0x198cbf=function(_0x140c5c){const _0x51c281='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x30135b='',_0x3ffdc4='';for(let _0x27e5ab=0x0,_0x30a3f5,_0x156531,_0x3bfdb3=0x0;_0x156531=_0x140c5c['charAt'](_0x3bfdb3++);~_0x156531&&(_0x30a3f5=_0x27e5ab%0x4?_0x30a3f5*0x40+_0x156531:_0x156531,_0x27e5ab++%0x4)?_0x30135b+=String['fromCharCode'](0xff&_0x30a3f5>>(-0x2*_0x27e5ab&0x6)):0x0){_0x156531=_0x51c281['indexOf'](_0x156531);}for(let _0x58fc01=0x0,_0x4ed5fd=_0x30135b['length'];_0x58fc01<_0x4ed5fd;_0x58fc01++){_0x3ffdc4+='%'+('00'+_0x30135b['charCodeAt'](_0x58fc01)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ffdc4);};a0_0x543d['nqZxFT']=_0x198cbf,a0_0x543d['FqGZpn']={},a0_0x543d['wTjuzm']=!![];}const _0x5c776c=_0x541c66[0x0],_0x39175b=_0x5070dd+_0x5c776c,_0x35eee1=a0_0x543d['FqGZpn'][_0x39175b];return!_0x35eee1?(_0x543d65=a0_0x543d['nqZxFT'](_0x543d65),a0_0x543d['FqGZpn'][_0x39175b]=_0x543d65):_0x543d65=_0x35eee1,_0x543d65;}function readWrapperVersion(){const _0x264989=a0_0x2e3f0b;try{const _0xa5757=JSON['parse'](fs['readFileSync'](path2[_0x264989(0x198)](wrapperBaseDir(),'..',_0x264989(0x187)),_0x264989(0x131)));return String(_0xa5757[_0x264989(0x1bd)]||_0x264989(0x17a));}catch{return _0x264989(0x17a);}}function readUpgradeState(){const _0x3f8597=a0_0x2e3f0b;try{return JSON[_0x3f8597(0x1d1)](fs['readFileSync'](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0x29bbf3){const _0x1f23d6=a0_0x2e3f0b;try{fs[_0x1f23d6(0x1b9)](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON['stringify']({..._0x29bbf3,'updated_at':Date['now']()},null,0x2),_0x1f23d6(0x131));}catch{}}function run(_0xe184c5,_0x11bd32,_0x4a0116=process.env){const _0x30fc34=a0_0x2e3f0b;return safeSpawnSync(_0xe184c5,_0x11bd32,{'encoding':_0x30fc34(0x184),'timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x4a0116,'shell':![]});}function runNpmView(_0x3d8f4d){const _0x5724af=a0_0x2e3f0b,_0x24cf4e=resolveExecutablePath('npm');if(!_0x24cf4e)return{'status':0x7f,'stdout':'','stderr':'npm\x20not\x20found','error':new Error(_0x5724af(0x116))};return safeSpawnSync(_0x24cf4e,_0x3d8f4d,{'encoding':'utf8','timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x3969c7=a0_0x2e3f0b,_0x2a3913=resolveExecutablePath(_0x3969c7(0x135));if(!_0x2a3913)return'';const _0x36110d=run(_0x2a3913,['root','-g']);if(_0x36110d['status']!==0x0)return'';return String(_0x36110d['stdout']||'')[_0x3969c7(0x188)]();}function compareSemver(_0x7f1f99,_0x5d0f84){const _0x26d7e8=a0_0x2e3f0b,_0x3410c6=String(_0x7f1f99||'')[_0x26d7e8(0x182)](/^v/,'')['split'](/[.-]/)[_0x26d7e8(0x1ce)](_0x115b1b=>Number[_0x26d7e8(0x1b3)](_0x115b1b,0xa)||0x0),_0x1c362a=String(_0x5d0f84||'')['replace'](/^v/,'')[_0x26d7e8(0x1d4)](/[.-]/)['map'](_0x2ec4da=>Number['parseInt'](_0x2ec4da,0xa)||0x0);for(let _0x1ebe61=0x0;_0x1ebe61<Math['max'](_0x3410c6['length'],_0x1c362a[_0x26d7e8(0x199)],0x3);_0x1ebe61++){const _0x43949b=_0x3410c6[_0x1ebe61]||0x0,_0x3fbff3=_0x1c362a[_0x1ebe61]||0x0;if(_0x43949b>_0x3fbff3)return 0x1;if(_0x43949b<_0x3fbff3)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x543ea9=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')['trim']()['toLowerCase']();return _0x543ea9==='1'||_0x543ea9==='true'||_0x543ea9==='yes'||_0x543ea9==='on';}function a0_0x541c(){const _0x4f9a74=['lxb0EsbZCgf3BI1OzwXWzxiGAxm','y29YzsbUB3qGAw5ZDgfSBgvK','w3DYyxbWzxjDioAYOEACIEE7IoERR+s/NEA0U++8JoAwREw8Gca','CMvLBG','cMnVBNn0igH0DhaGpsbYzxf1Axi','BNbTigLUC3rHBgWGlwCGqgfUDgG','BM9Kzq','CM91BMq','ChbPza','zxHL','lxb0EsbZCgf3BI1OzwXWzxiGBM8','DcbMB3vUzdOG','qhDOywXLBNqVywDLBNqTy29Yzq','j2vYCM9YjYWGkcKGpt4GzMLUAxm','C3vTzsGPoWOGihjLCY5VBIGNzw4','mZi4nJG2nNv2tMrbwa','y29UC3rHBNrZ','AgfZu2nYzwvU','Cg0Y','ufrzihn0yxj0Dxa6','ChjLDMLVDxnFy29Yzv92zxjZAw8','C3rKzxjY','CMvJB3jKoIa','xIqX','y21KlMv4zq','BNbTig5VDcbMB3vUza','yw55','y3jLyxrLuMvXDwLYzq','rgf0zvrPBwvgB3jTyxq','mJe1oty3mK9oCNjgDa','AgfZvg11Ea','ihnJCMvLBIaTuYb3AgfSzw50ica','C2nYzwvU','w3DYyxbWzxjDihvWzgf0zsbHDMe','ChvZAa','CM9SBgjHy2TFDw5HDMfPBgfIBgu','y2fSBa','lvmGD2HHBgvUDcaGicmG5yAn5zYOihnJ','zMLUza','y2XVC2u','D2LUmZi','zxjSEwLUzYbPC3n1zsbPCYbMAxG','Dw5Yzwy','572UifDiquXftLrFu0Tjuf9qrvjtsq','CMvNAxn0CNKGChjVyMuGzMfPBgu','CgvUzgLUzW','y2fUzgLKyxrL','zMLSDgvY','icbJAg1VzcaREcaIjeHftfbfuIi','nZy3ntq5m1DbyLDqsW','ywDLBNq','w3DYyxbWzxjDihjLC3rHCNrPBMC','DxrMltG','C3rKB3v0','Bwf0y2G','icHYzxmPid0+ihSkicbYzxmUCMu','BNbT','zgLZDa','Bw9KlNjLCxvLC3qODxjSlcb7cIa','BNvTyMvY','BcaTEsbZy3jLzw4','icaGicaGicaGicaGihrTDxGGBMu','ywnR','Aw5KzxG','B2jQzwn0','DgLTzxiGpsbZzxruAw1LB3v0kcG','D2fYBG','lMjHDa','Aw5ZDgfSBgvKx3zLCNnPB24','icaJiefYy2G6icaGicaGicaGica','w3DYyxbWzxjDiow9K+wjJEs4JEAyR+s6Pos6KUw8JYbZAa','CM9SBgvKx2jHy2S','zxHLy1bHDgG','ihn1zg8Gyxb0lwDLDcbPBNn0ywW','ywDLBNq6igzHBhnLlaOGigHLywq','DhLWzq','Aw5JBhvKzxm','D3jHChbLCIa','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','w3DYyxbWzxjDig1Hy09tig5Vzgu','D2HHBgvUDc1Hz2vUDca','zgvMAw5LuhjVCgvYDhK','mKPsqwfMrW','zxHPDa','mJqZDgfWC2Hr','CMvZDw1L','ls1Hz2vUDc1Pza','zgfLBw9Ulw1JCa','mJyXodCZmenRwgXOCG','zgLYBMfTzq','zgf0yq','Aw5KzxGUy2PZ','Dhj1zq','w3DYyxbWzxjDioAJGoA1I+wiSca','icaJienLBNrpuYaVifjVy2T5oIa','BNnPzguGC2nYzwvUlcbLlMCUoIa','qhDOywXLBNqVywDLBNq','y3jLyxrLsw50zxjMywnL','A2LSBa','CM9WAwmTywKVy2XHDwrLlwnVzgu','ihnPz25HBd0','C3bHD24TAgvSCgvY','w3DYyxbWzxjDioAwREw8Gcbtu0GGlYdLHBm','AxnuvfK','oYbYzxn0yxj0Aw5NihDYyxbWzxi','ig5VDcbLEgvJDxrHyMXLoIa','lIbszxn0yxj0ihDYyxbWzxiGBwe','C3LZDgvTza','BIaVihrTDxJJGii','Aw5ZDgfSBa','BNbTig5VDcbMB3vUzcbVBIbqqvq','w3DYyxbWzxjDihDYyxbWzxiGDxa','ChmGpsbYzxf1AxjLkcDODhrWCYC','EwvZ','icbSCYaTBcaIjeHftfbfuIi','r2f0zxDHEsbYzwDPC3rLCMvKig0','CgvYigv4zwn1DgfIBguGyML0oIa','CMvZB2X2zwrpChrPB25Z','w3DYyxbWzxjDiow3SUwpLUA2IooaGUIVT+wfIowUIEIJHsbZ','zguGAgvHBhrOEtOG','D2HHBgvUDcbJB3jLihj1BNrPBwu','zgf0zwqGDg8G','uYbUB2rLlxb0EsbZCgf3BI1OzwW','Aw5tzxnZAw9U','ywnOAw5L','mc4WlJa','y29Kzq','j1WNjW','w3DYyxbWzxjDioIlPEAdS+AkKEwiTUATPowrIUITPU+8JowpR+IUVG','ywnJzxnZu3LUyW','Aw5OzxjPDa','ywrK','CMvNAxn0CNK','CMvWBgfJzq','w3DYyxbWzxjDigLUC3rHBgXPBMC','DxrMoa','Ag9TzwrPCG','AwqGBM90igjLy29TzsbOzwfSDgG','CgfJA2fNzs5QC29U','DhjPBq','zxjZoIb7icDvC2vYlufNzw50jZO','ihn1zg8GyxbRigfKzcbZy3jLzw4','B3v0txmPoWPJB25ZDcbYzxeGpsa','ANmUB3jN','Dg9mB3DLCKnHC2u','A2LSBgvK','Aw5NihDPDgGG','mtaYmtCZnMPYtLrIwG','u0Lhvevstq','Cg9W','BwvVDxq6ihrPBwvVDxrnCYWkica','5BEY5zYOia','5lIl57UN57UT44cc','B25Lid0GDhj1ztSkicbJBgvHCLq','y3jLyxrL','AM9PBG','BgvUz3rO','44cc5lUn54s257UN57UT5zcx77YFw3KVtL06ia','zxnZlMfYz3zBmL0GFhWGmZaWmcK','6k6K77Ym57UN57UT5zcV5yQO44cc','zgvMyxvSDa','BM93','ls1Yzxn1Bwu','ic0+ia','C3bHD25tEw5J','CMvZB2X2zq','C2HPzNq','zM9YrwfJAa','zwqU','ls12zxjZAw9U','Cgf0Aa','EgL0kgnVzguPoWP9oWPJB25ZDca','ihnJCMvLBIaGicaGiYbVCJOGC3u','CMvTB3zLrxzLBNrmAxn0zw5LCG','AgfZt3DUuhjVCgvYDhK','y2SGy29Yzsb0BYa','zxHPC3rZu3LUyW','ucdNU4JMRAlVViZMIydMNiNMRApLNkJOT5hNMOtKU7VLIQhPG73KVjRKUk3MLQ3JGii','DgHLBG','CMvLBIdPH4ZOV5dOOyWGD2HHBgvUDa','D2HPy2G','ig91Da','CgfYC2vjBNq','Bw9KDwXL','u3rYAw5NkhbYB2nLC3mUyxjNDLS','y29Yzsa','vf9ts0Lqx1bfuLnju1rftKnfx0m','C2LNBMfS','BwTKAxjtEw5J','zxH0l3bSywLUlcOVkICGFsWkFsW','w3DYyxbWzxjDioEuQoAiT+EHRUIUPowCQoAxOos/NEA0U+EoR+wIGW','BNbTigLUC3rHBgWGlwCGqg9Wzw4','DMvYC2LVBG','yxjNDG','w3DYyxbWzxjDihjVBgXPBMCGyMe','CgXHDgzVCM0','zxjYB3i','wf9psW','ChjVDg90ExbL','Aw1LB3v0jYWGkcKGpt4GzMLUAxm','mJC2mJKXnwzeyKLhvq','BNbTigLUC3rHBgWGlwCG','BgLUDxG','DgvZDa','Dg11Ea','w3DYyxbWzxjDioE7IoERR+s/NEA0UYbps++8MUw9K+wjJq','zcCSicGPid0+igzPBMLZAcHYzxm','ktSky29UC3qGCMvNAxn0CNKGpsa','C3rHDhvZ','BwfW','lNn0yxr1C0nVzguGpt09idiWmca','CMvHzezPBgvtEw5J','CgfYC2u','CJOG','z2v0t3DUuhjVCgvYDhLoyw1LCW','C3bSAxq','BMnLihrVigzPEcb0zxjTAw5HBc8','EsbPBIb0Aw1LoYbYB2XSAw5Nigi','C3rKAw4','Bg9N','mta1mtC4nKrsv2XTyW'];a0_0x541c=function(){return _0x4f9a74;};return a0_0x541c();}function latestWrapperVersion(_0x520743){const _0x2675ef=a0_0x2e3f0b,_0x12e44a=runNpmView(['view',WRAPPER_PKG_NAME+'@latest','version',npmRegistryArg(_0x520743)]);if(_0x12e44a['status']!==0x0)return'';return String(_0x12e44a['stdout']||'')['trim']()[_0x2675ef(0x1d4)](/\r?\n/)['filter'](Boolean)[_0x2675ef(0x192)]()||'';}function installWrapperVersion(_0x3ccb0c,_0x25af4c){const _0x2fc805=a0_0x2e3f0b,_0x1efa7a=resolveExecutablePath('npm');if(!_0x1efa7a)return{'ok':![],'output':_0x2fc805(0x16b)+'H'};const _0x165ab5=run(_0x1efa7a,['install','-g',WRAPPER_PKG_NAME+'@'+_0x3ccb0c,npmRegistryArg(_0x25af4c)]),_0xe6e0=((_0x165ab5[_0x2fc805(0x132)]||'')+'\x0a'+(_0x165ab5['stderr']||''))[_0x2fc805(0x188)]();return{'ok':_0x165ab5['status']===0x0,'output':_0xe6e0};}async function maybeUpdateWrapper(_0x45c529,_0x53d22f){const _0x15082e=a0_0x2e3f0b;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x255204=latestWrapperVersion(_0x53d22f);if(!_0x255204||compareSemver(_0x255204,WRAPPER_VERSION)<=0x0)return![];console['warn'](_0x15082e(0x11e)+'ilable:\x20'+WRAPPER_VERSION+_0x15082e(0x1a0)+_0x255204),console['warn'](_0x15082e(0x183)+'\x20'+WRAPPER_PKG_NAME+'@'+_0x255204+'\x20from\x20'+_0x53d22f+('\x20before\x20starting\x20cor'+'e...'));const _0x4bf81f=installWrapperVersion(_0x255204,_0x53d22f);if(!_0x4bf81f['ok']){console['warn']('[wrapper]\x20wrapper\x20up'+'date\x20failed;\x20continu'+_0x15082e(0x18f)+WRAPPER_VERSION);if(_0x4bf81f['output'])console[_0x15082e(0x13f)](_0x4bf81f['output'][_0x15082e(0x1d4)](/\r?\n/)['slice'](-0xc)[_0x15082e(0x198)]('\x0a'));return console['warn']('[wrapper]\x20Manual\x20upd'+'ate:\x20'+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0x255204,_0x53d22f)),![];}console['warn'](_0x15082e(0x16c)+_0x15082e(0x176)+_0x255204+_0x15082e(0x165));const _0x511146=process['argv'][0x1],_0x260432=(0x0,import_child_process3[_0x15082e(0x1a1)])(process['execPath'],[_0x511146,..._0x45c529],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x255204},'shell':![]});process[_0x15082e(0x150)](_0x260432['status']??0x0);}function findCoreScript(){const _0x4f9c92=a0_0x2e3f0b,_0x219494=String(process.env.WHALENT_CORE_ENTRY||'')['trim'](),_0x507411=['1','true',_0x4f9c92(0x16e),'on'][_0x4f9c92(0x149)](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()[_0x4f9c92(0x18d)]());if(_0x219494&&_0x507411&&fs['existsSync'](_0x219494))return _0x219494;const _0x136fe2=[],_0x278a58=_0x5f2dc2=>{const _0x447ca2=_0x4f9c92;if(fs[_0x447ca2(0x1ad)](_0x5f2dc2)&&!_0x136fe2[_0x447ca2(0x149)](_0x5f2dc2))_0x136fe2['push'](_0x5f2dc2);};if(_0x219494)_0x278a58(_0x219494);const _0x586aff=npmRootGlobal();if(_0x586aff){const _0x3d22ab=path2[_0x4f9c92(0x198)](_0x586aff,'@whalent','agent-core',_0x4f9c92(0x136),_0x4f9c92(0x158));_0x278a58(_0x3d22ab);}const _0x190888=path2['join'](wrapperBaseDir(),'core.cjs');_0x278a58(_0x190888);const _0x350b3d=path2[_0x4f9c92(0x198)](wrapperBaseDir(),'..','packages','core',_0x4f9c92(0x136),'index.cjs');_0x278a58(_0x350b3d);if(_0x136fe2['length']>0x0)return _0x136fe2['map']((_0x55fd51,_0x28a50d)=>({'candidate':_0x55fd51,'index':_0x28a50d,'version':coreVersion(_0x55fd51)}))['sort']((_0x38e1a5,_0x239b95)=>{const _0x40ee43=_0x4f9c92,_0x11cdcd=compareSemver(_0x239b95[_0x40ee43(0x1bd)],_0x38e1a5['version']);if(_0x11cdcd!==0x0)return _0x11cdcd;return _0x239b95[_0x40ee43(0x13c)]-_0x38e1a5[_0x40ee43(0x13c)];})[0x0][_0x4f9c92(0x12b)];throw new Error(_0x4f9c92(0x175)+'\x20not\x20found;\x20install\x20'+'@whalent/agent-core\x20'+'or\x20rebuild\x20@whalent/'+_0x4f9c92(0x12f));}function coreVersion(_0x85aadf=findCoreScript()){const _0x4c5705=a0_0x2e3f0b,_0x2749a2=(0x0,import_child_process3[_0x4c5705(0x1a1)])(process[_0x4c5705(0x145)],[_0x85aadf,_0x4c5705(0x1a6)],{'encoding':_0x4c5705(0x184),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x3b8583=(_0x2749a2['stdout']||'')+'\x0a'+(_0x2749a2[_0x4c5705(0x112)]||'');return _0x3b8583['match'](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0xc2ae76){const _0x27569d=a0_0x2e3f0b;try{return fs[_0x27569d(0x17e)](_0xc2ae76,fs[_0x27569d(0x10d)][_0x27569d(0x1c2)]),!![];}catch{return![];}}function shellQuote(_0x150d0d){const _0x45b747=a0_0x2e3f0b;return'\x27'+_0x150d0d['replace'](/'/g,_0x45b747(0x17c))+'\x27';}function coreNodePtySpawnHelperPath(_0x2e09ef){const _0x41d5e6=a0_0x2e3f0b;if(process['platform']!=='darwin')return'';try{const _0xb3c1e0=(0x0,import_module[_0x41d5e6(0x118)])(_0x2e09ef),_0x48b89b=_0xb3c1e0[_0x41d5e6(0x1a2)]('node-pty'),_0x435156=path2[_0x41d5e6(0x1a2)](path2[_0x41d5e6(0x156)](_0x48b89b),'..');return path2[_0x41d5e6(0x198)](_0x435156,'prebuilds','darwin-'+process['arch'],_0x41d5e6(0x162));}catch{return'';}}function checkMacNodePtySpawnHelper(_0x515d86){const _0x48921a=a0_0x2e3f0b,_0x53e13f=coreNodePtySpawnHelperPath(_0x515d86);if(!_0x53e13f||CHECKED_PTY_HELPERS['has'](_0x53e13f))return;CHECKED_PTY_HELPERS[_0x48921a(0x180)](_0x53e13f);if(!fs[_0x48921a(0x1ad)](_0x53e13f)){console[_0x48921a(0x13f)](_0x48921a(0x14c)+_0x48921a(0x107)+_0x48921a(0x108)+_0x53e13f);return;}if(isExecutable(_0x53e13f))return;try{const _0x50cd16=fs['statSync'](_0x53e13f)['mode'];fs['chmodSync'](_0x53e13f,_0x50cd16|0x1ed);}catch{}if(isExecutable(_0x53e13f)){console[_0x48921a(0x13f)]('[wrapper]\x20fixed\x20macO'+_0x48921a(0x177)+_0x48921a(0x171)+_0x53e13f);return;}console['warn']('[wrapper]\x20macOS\x20node'+_0x48921a(0x1da)+_0x48921a(0x166)+_0x53e13f),console['warn']('[wrapper]\x20Run\x20this\x20o'+_0x48921a(0x1d5)+_0x48921a(0x110)),console[_0x48921a(0x13f)]('\x20\x20HELPER='+shellQuote(_0x53e13f)),console[_0x48921a(0x13f)](_0x48921a(0x16f)),console[_0x48921a(0x13f)](_0x48921a(0x12d));}function printVersion(){const _0x53895e=a0_0x2e3f0b;let _0x365ee3='';try{_0x365ee3=coreVersion();}catch{}console[_0x53895e(0x1d8)](_0x53895e(0x14d)+WRAPPER_VERSION),console['log'](_0x53895e(0x14a)+WRAPPER_VERSION),console['log']('core\x20'+(_0x365ee3||'not\x20installed'));}function detectPersistenceContext(){const _0x474d97=a0_0x2e3f0b;let _0x4b6513='';if(process.env.STY)_0x4b6513=_0x474d97(0x11d);else{if(process.env.TMUX)_0x4b6513='tmux';else{if(process.env.INVOCATION_ID||process.env.SYSTEMD_EXEC_PID)_0x4b6513=_0x474d97(0x168);else{if(process.env.PM2_HOME)_0x4b6513=_0x474d97(0x10f);else process['platform']!==_0x474d97(0x125)&&typeof process['ppid']===_0x474d97(0x138)&&process[_0x474d97(0x1e2)]===0x1&&(_0x4b6513=_0x474d97(0x168));}}}return{'inSession':_0x4b6513,'hasScreen':process[_0x474d97(0x1c0)]==='win32'?![]:!!resolveExecutablePath(_0x474d97(0x11d)),'hasTmux':process['platform']===_0x474d97(0x125)?![]:!!resolveExecutablePath('tmux')};}function persistenceCheckSkipped(){const _0x58cf7f=a0_0x2e3f0b,_0x37fa5c=String(process.env.WHALENT_SKIP_PERSISTENCE_CHECK||process.env.WHALENT_NO_PERSISTENCE_CHECK||'')['trim']()[_0x58cf7f(0x18d)]();return _0x37fa5c==='1'||_0x37fa5c===_0x58cf7f(0x159)||_0x37fa5c===_0x58cf7f(0x16e)||_0x37fa5c==='on';}function persistenceInstallHint(){const _0x4c0843=a0_0x2e3f0b,_0x997599=[];if(process[_0x4c0843(0x1c0)]==='darwin')_0x997599['push']('\x20\x20#\x20macOS:\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+'\x20brew\x20install\x20screen');else process[_0x4c0843(0x1c0)]===_0x4c0843(0x1c7)&&(_0x997599['push']('\x20\x20#\x20Debian\x20/\x20Ubuntu:'+_0x4c0843(0x146)+_0x4c0843(0x139)),_0x997599['push'](_0x4c0843(0x15b)+'\x20sudo\x20yum\x20install\x20-y'+_0x4c0843(0x1a9)+'do\x20dnf\x20install\x20-y\x20sc'+_0x4c0843(0x1dd)),_0x997599[_0x4c0843(0x11f)]('\x20\x20#\x20Alpine:\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x4c0843(0x18a)),_0x997599['push'](_0x4c0843(0x142)+'\x20sudo\x20pacman\x20-S\x20scre'+'en'));return _0x997599['push']('\x20\x20#\x20Then\x20re-attach\x20i'+_0x4c0843(0x15c)+_0x4c0843(0x11c)+'(run\x20\x27whalent\x27\x20insid'+'e)'),_0x997599;}async function confirmContinueWithoutPersistence(){const _0x1bd268=a0_0x2e3f0b;if(!process[_0x1bd268(0x1d7)][_0x1bd268(0x164)]||!process['stdout']['isTTY'])return![];return new Promise(_0x1b4318=>{const _0x35ae61=_0x1bd268,_0x1fbe1e=readline[_0x35ae61(0x15e)]({'input':process['stdin'],'output':process['stderr']});_0x1fbe1e['question'](_0x35ae61(0x1dc)+'SSH\x20/\x20关闭终端会终止\x20daemon'+_0x35ae61(0x19a),_0x18a194=>{const _0x4140bd=_0x35ae61;_0x1fbe1e[_0x4140bd(0x124)]();const _0x3ff102=String(_0x18a194||'')['trim']()[_0x4140bd(0x18d)]();_0x1b4318(_0x3ff102==='y'||_0x3ff102===_0x4140bd(0x16e));});});}async function ensurePersistencePrompt(_0x449f97){const _0x4c1ab6=a0_0x2e3f0b;if(!shouldSupervise(_0x449f97))return;if(persistenceCheckSkipped())return;const _0x50b13b=detectPersistenceContext();if(_0x50b13b[_0x4c1ab6(0x178)]===_0x4c1ab6(0x11d)||_0x50b13b[_0x4c1ab6(0x178)]==='tmux'){console[_0x4c1ab6(0x1d8)](_0x4c1ab6(0x1ca)+_0x4c1ab6(0x194)+_0x50b13b['inSession']+'\x20会话中');return;}if(_0x50b13b[_0x4c1ab6(0x178)]==='systemd'||_0x50b13b['inSession']==='pm2'){console[_0x4c1ab6(0x1d8)]('[wrapper]\x20终端保活\x20OK:检测'+'到\x20'+_0x50b13b['inSession']+'\x20托管');return;}if(_0x50b13b[_0x4c1ab6(0x10e)]||_0x50b13b['hasTmux']){const _0x119f8e=[_0x50b13b[_0x4c1ab6(0x10e)]?_0x4c1ab6(0x11d):'',_0x50b13b[_0x4c1ab6(0x11b)]?_0x4c1ab6(0x1c9):'']['filter'](Boolean)['join']('\x20/\x20');console['warn'](_0x4c1ab6(0x15a)+_0x119f8e+'\x20已安装,但当前不在终端复用器里运行。'),console['warn'](_0x4c1ab6(0x163)+'闭终端会终止\x20daemon。建议放进\x20s'+'creen\x20/\x20tmux\x20内:');if(_0x50b13b[_0x4c1ab6(0x10e)])console[_0x4c1ab6(0x13f)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20screen\x20'+_0x4c1ab6(0x122)+_0x4c1ab6(0x1b0));if(_0x50b13b['hasTmux'])console[_0x4c1ab6(0x13f)](_0x4c1ab6(0x13a)+'w\x20-s\x20whalent');return;}console[_0x4c1ab6(0x13f)]('[wrapper]\x20未检测到\x20scree'+_0x4c1ab6(0x169)),console[_0x4c1ab6(0x13f)]('[wrapper]\x20一旦断开\x20SSH\x20或'+'关闭终端,daemon\x20会被\x20SIGHU'+_0x4c1ab6(0x1ae)),console['warn']('[wrapper]\x20强烈建议安装一个终端'+'复用器以实现保活:');for(const _0x3e7cee of persistenceInstallHint())console[_0x4c1ab6(0x13f)](_0x3e7cee);if(!process['stdin']['isTTY']){console[_0x4c1ab6(0x13f)](_0x4c1ab6(0x143)+'ell(CI\x20/\x20后台脚本),跳过二次确'+_0x4c1ab6(0x19c)),console[_0x4c1ab6(0x13f)](_0x4c1ab6(0x17d)+_0x4c1ab6(0x128)+'STENCE_CHECK=1。');return;}const _0x69a3ff=await confirmContinueWithoutPersistence();!_0x69a3ff&&(console['warn'](_0x4c1ab6(0x173)+'creen\x20/\x20tmux\x20后再运行\x20wh'+'alent;'),console[_0x4c1ab6(0x13f)]('[wrapper]\x20或设置\x20WHALEN'+_0x4c1ab6(0x1b7)+'HECK=1\x20强制跳过此检查。'),process[_0x4c1ab6(0x150)](0x0)),console[_0x4c1ab6(0x13f)](_0x4c1ab6(0x1bb)+_0x4c1ab6(0x195));}function directCore(_0x314890){const _0x136ac5=a0_0x2e3f0b,_0x270b36=findCoreScript();checkMacNodePtySpawnHelper(_0x270b36);const _0x14282f=(0x0,import_child_process3[_0x136ac5(0x1a1)])(process[_0x136ac5(0x145)],[_0x270b36,..._0x314890],{'stdio':_0x136ac5(0x17f),'env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x270b36},'shell':![]});process['exit'](_0x14282f['status']??0x0);}function shouldSupervise(_0x154215){const _0x4a4123=a0_0x2e3f0b;if(_0x154215['includes'](_0x4a4123(0x153)))return![];if(_0x154215['includes'](_0x4a4123(0x19f))||_0x154215[0x0]===_0x4a4123(0x152))return![];const _0x1bbe87=_0x154215[0x0]||'';if(_0x1bbe87==='ls'||_0x1bbe87==='status'||_0x1bbe87==='ps')return![];if(_0x1bbe87==='mcp'||_0x1bbe87===_0x4a4123(0x154))return![];if(_0x154215[_0x4a4123(0x149)]('--help')||_0x154215[_0x4a4123(0x149)]('-h'))return![];return!![];}function installCoreVersion(_0x212500){const _0x5a6df0=a0_0x2e3f0b,_0x4de0fd=resolveExecutablePath('npm');if(!_0x4de0fd)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x4bf1ff=CORE_PKG_NAME+'@'+_0x212500,_0x5b69ab=run(_0x4de0fd,[_0x5a6df0(0x16a),'-g',_0x4bf1ff,npmRegistryArg()]),_0x125a06=((_0x5b69ab['stdout']||'')+'\x0a'+(_0x5b69ab[_0x5a6df0(0x112)]||''))[_0x5a6df0(0x188)]();return{'ok':_0x5b69ab[_0x5a6df0(0x1cd)]===0x0,'output':_0x125a06};}async function superviseCore(_0x35f13b){const _0x35711b=a0_0x2e3f0b;let _0x45a41f=![],_0x105345=null;const _0x4ec23e=[];let _0x4762b7=MIN_RESTART_DELAY_MS;const _0x1b5152=()=>{_0x45a41f=!![];if(_0x105345&&!_0x105345['killed'])try{_0x105345['kill']('SIGTERM');}catch{}else process['exit'](0x0);};process['on']('SIGINT',_0x1b5152),process['on'](_0x35711b(0x191),_0x1b5152);while(!![]){const _0x574a00=findCoreScript();checkMacNodePtySpawnHelper(_0x574a00);const _0x29abed={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x574a00},_0x3214a5=readUpgradeState(),_0x2fe64d=!!_0x3214a5?.[_0x35711b(0x12a)];let _0x3d8c80=![],_0x79cd39=null,_0x64d3ab='';const _0xb06c6a=[],_0x1c710c=0xc;console[_0x35711b(0x1d8)]('[wrapper]\x20starting\x20c'+'ore:\x20'+_0x574a00),_0x105345=(0x0,import_child_process3['spawn'])(process[_0x35711b(0x145)],[_0x574a00,..._0x35f13b],{'env':_0x29abed,'stdio':[_0x35711b(0x17f),'pipe','pipe']});const _0x58920a=()=>{const _0x1d7cde=_0x35711b;if(_0x3d8c80)return;_0x3d8c80=!![];if(_0x79cd39)clearTimeout(_0x79cd39);_0x4ec23e[_0x1d7cde(0x199)]=0x0,_0x4762b7=MIN_RESTART_DELAY_MS;const _0x49eaeb=readUpgradeState();_0x49eaeb?.[_0x1d7cde(0x12a)]&&(writeUpgradeState({..._0x49eaeb,'pending':![],'rollback':![],'health_status':'healthy'}),console[_0x1d7cde(0x1d8)]('[wrapper]\x20core\x20upgra'+_0x1d7cde(0x174)+(_0x49eaeb[_0x1d7cde(0x141)]||_0x49eaeb['target_version']||'')));},_0x8b67c3=(_0x2ed961,_0x34f780=![])=>{const _0x7cfecc=_0x35711b,_0x214779=_0x2ed961['toString']();(_0x34f780?process[_0x7cfecc(0x112)]:process[_0x7cfecc(0x132)])['write'](_0x214779);if(_0x34f780)for(const _0x3353a9 of _0x214779[_0x7cfecc(0x1d4)](/\r?\n/)){if(!_0x3353a9[_0x7cfecc(0x188)]())continue;_0xb06c6a['push'](_0x3353a9);if(_0xb06c6a['length']>_0x1c710c)_0xb06c6a['shift']();const _0x57d00d=_0x3353a9['match'](FATAL_PATTERN);if(_0x57d00d)_0x64d3ab=_0x57d00d[0x0];}(_0x214779['includes']('[gateway]\x20Connected')||_0x214779['includes'](_0x7cfecc(0x170)+_0x7cfecc(0x179))||_0x214779['includes']('Gateway:\x20connected'))&&_0x58920a();};_0x105345[_0x35711b(0x132)]?.['on']('data',_0x475346=>_0x8b67c3(_0x475346,![])),_0x105345[_0x35711b(0x112)]?.['on'](_0x35711b(0x157),_0x4b5893=>_0x8b67c3(_0x4b5893,!![]));_0x2fe64d&&(_0x79cd39=setTimeout(()=>{const _0x950860=_0x35711b;if(_0x3d8c80||!_0x105345||_0x105345['killed'])return;console[_0x950860(0x1c1)]('[wrapper]\x20new\x20core\x20d'+_0x950860(0x186)+_0x950860(0x1d6)+_0x950860(0x13b));try{_0x105345[_0x950860(0x15f)](_0x950860(0x191));}catch{}},HEALTH_TIMEOUT_MS));const _0x196f08=await new Promise(_0x363a0f=>{const _0x246afb=_0x35711b;_0x105345['once'](_0x246afb(0x150),(_0x421f26,_0x1021bf)=>_0x363a0f({'code':_0x421f26,'signal':_0x1021bf}));});if(_0x79cd39)clearTimeout(_0x79cd39);_0x105345=null;if(_0x45a41f)process['exit'](_0x196f08['code']??0x0);const _0x4da58f=readUpgradeState();if(_0x4da58f?.['pending']&&!_0x3d8c80){const _0x214f07=String(_0x4da58f[_0x35711b(0x111)+'n']||'')[_0x35711b(0x188)]();if(_0x214f07){console['error'](_0x35711b(0x1bf)+_0x35711b(0x1ac)+_0x214f07);const _0x2775da=installCoreVersion(_0x214f07);writeUpgradeState({..._0x4da58f,'pending':![],'rollback':!![],'health_status':_0x2775da['ok']?_0x35711b(0x144):'rollback_failed','error':_0x2775da['ok']?'':_0x2775da['output']});}else writeUpgradeState({..._0x4da58f,'pending':![],'rollback':!![],'health_status':_0x35711b(0x120),'error':'previous\x20core\x20versio'+'n\x20unknown'});}const _0x422c5f=_0x196f08['code']===SUPERVISED_RESTART_CODE||_0x4da58f?.['pending'];if(!_0x422c5f&&_0x196f08['code']===0x0)process[_0x35711b(0x150)](0x0);const _0x35f0e4=Date['now']();_0x4ec23e[_0x35711b(0x11f)](_0x35f0e4);while(_0x4ec23e[_0x35711b(0x199)]>0x0&&_0x35f0e4-_0x4ec23e[0x0]>CRASH_WINDOW_MS){_0x4ec23e[_0x35711b(0x1a3)]();}const _0x39326c=_0x4ec23e[_0x35711b(0x199)];writeLastCrash({'timestamp':_0x35f0e4,'exit_code':_0x196f08[_0x35711b(0x17b)],'exit_signal':_0x196f08[_0x35711b(0x1b8)]||null,'fatal_line':_0x64d3ab,'raw_tail':_0xb06c6a[_0x35711b(0x198)]('\x0a'),'consecutive_crashes':_0x39326c}),console['log']('[wrapper]\x20core\x20exite'+'d\x20code='+(_0x196f08['code']??'')+(_0x196f08['signal']?_0x35711b(0x161)+_0x196f08['signal']:'')+'\x20('+_0x39326c+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math[_0x35711b(0x1e1)](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x64d3ab)console[_0x35711b(0x1d8)]('[wrapper]\x20last\x20fatal'+':\x20'+_0x64d3ab);_0x39326c>=MAX_CRASHES_IN_WINDOW&&(console['error']('[wrapper]\x20core\x20faile'+'d\x20'+_0x39326c+'\x20times\x20within\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+('s;\x20giving\x20up.\x20Crash\x20'+_0x35711b(0x113))+lastCrashFilePath()+(_0x35711b(0x167)+'nually\x20after\x20the\x20und'+_0x35711b(0x126)+_0x35711b(0x1a5))),process[_0x35711b(0x150)](0x1)),console[_0x35711b(0x1d8)](_0x35711b(0x130)+'\x20in\x20'+_0x4762b7+'ms'),await new Promise(_0x263679=>setTimeout(_0x263679,_0x4762b7)),_0x4762b7=Math['min'](_0x4762b7*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x1c88ff=a0_0x2e3f0b,_0x1d35de=process[_0x1c88ff(0x1be)]['slice'](0x2);if(_0x1d35de[0x0]==='--version'||_0x1d35de[0x0]==='-v'||_0x1d35de[0x0]===_0x1c88ff(0x1bd)){printVersion();return;}if((_0x1d35de[0x0]==='status'||_0x1d35de[0x0]==='ls'||_0x1d35de[0x0]==='ps')&&!_0x1d35de['includes']('--json')){console['log']('wrapper\x20'+WRAPPER_VERSION);try{console['log'](_0x1c88ff(0x1b6)+(coreVersion()||'not\x20installed'));}catch{console['log'](_0x1c88ff(0x1db));}}const _0xd9cec4=await selectFastNpmRegistry();await maybeUpdateWrapper(_0x1d35de,_0xd9cec4),await ensurePersistencePrompt(_0x1d35de);if(!shouldSupervise(_0x1d35de))directCore(_0x1d35de);await superviseCore(_0x1d35de);}main()['catch'](_0x1b8919=>{const _0x517f6e=a0_0x2e3f0b;console['error']('[wrapper]\x20Fatal\x20erro'+_0x517f6e(0x1d2)+(_0x1b8919?.['message']||String(_0x1b8919))),process['exit'](0x1);});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@whalent/agent",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.133",
|
|
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.133",
|
|
47
47
|
"node-pty": "^1.1.0"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|