@whalent/agent 0.3.167 → 0.3.168

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- 'use strict';const a0_0x36245b=a0_0x22db;(function(_0x27d42d,_0x3fc051){const _0x4fb39c=a0_0x22db,_0x437b56=_0x27d42d();while(!![]){try{const _0x5d646a=parseInt(_0x4fb39c(0x266))/0x1*(-parseInt(_0x4fb39c(0x262))/0x2)+-parseInt(_0x4fb39c(0x1e6))/0x3+-parseInt(_0x4fb39c(0x279))/0x4*(-parseInt(_0x4fb39c(0x1af))/0x5)+-parseInt(_0x4fb39c(0x288))/0x6*(parseInt(_0x4fb39c(0x28a))/0x7)+parseInt(_0x4fb39c(0x192))/0x8*(-parseInt(_0x4fb39c(0x1f2))/0x9)+-parseInt(_0x4fb39c(0x233))/0xa*(-parseInt(_0x4fb39c(0x26f))/0xb)+parseInt(_0x4fb39c(0x1b8))/0xc;if(_0x5d646a===_0x3fc051)break;else _0x437b56['push'](_0x437b56['shift']());}catch(_0x3bd5aa){_0x437b56['push'](_0x437b56['shift']());}}}(a0_0x5353,0xcbf5b));var __create=Object['create'],__defProp=Object[a0_0x36245b(0x19c)],__getOwnPropDesc=Object[a0_0x36245b(0x1f8)+'ptor'],__getOwnPropNames=Object[a0_0x36245b(0x194)],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object[a0_0x36245b(0x27e)]['hasOwnProperty'],__copyProps=(_0x412875,_0x16d66f,_0x53f6eb,_0x44c78f)=>{const _0x383847=a0_0x36245b;if(_0x16d66f&&typeof _0x16d66f==='object'||typeof _0x16d66f==='function'){for(let _0x10ffe0 of __getOwnPropNames(_0x16d66f))if(!__hasOwnProp[_0x383847(0x22b)](_0x412875,_0x10ffe0)&&_0x10ffe0!==_0x53f6eb)__defProp(_0x412875,_0x10ffe0,{'get':()=>_0x16d66f[_0x10ffe0],'enumerable':!(_0x44c78f=__getOwnPropDesc(_0x16d66f,_0x10ffe0))||_0x44c78f['enumerable']});}return _0x412875;},__toESM=(_0x211688,_0x3db0dd,_0x4d9e61)=>(_0x4d9e61=_0x211688!=null?__create(__getProtoOf(_0x211688)):{},__copyProps(_0x3db0dd||!_0x211688||!_0x211688[a0_0x36245b(0x1d4)]?__defProp(_0x4d9e61,a0_0x36245b(0x217),{'value':_0x211688,'enumerable':!![]}):_0x4d9e61,_0x211688)),import_child_process3=require(a0_0x36245b(0x23c)),fs=__toESM(require('fs'),0x1),import_module=require('module'),path2=__toESM(require('path'),0x1),readline=__toESM(require(a0_0x36245b(0x1df)),0x1),import_child_process2=require(a0_0x36245b(0x23c)),import_fs=require('fs'),import_path=require('path'),import_child_process=require(a0_0x36245b(0x23c)),DEFAULT_NPM_REGISTRY='https://registry.npm'+a0_0x36245b(0x200),CHINA_NPM_REGISTRY='https://registry.npm'+a0_0x36245b(0x1a3),REGISTRY_PROBE_TIMEOUT_MS=0xbb8,REGISTRY_CACHE_TTL_MS=0xa*0x3c*0x3e8,selectedRegistryCache=null;function preferredNpmRegistry(){const _0x5c20d1=explicitNpmRegistry();if(_0x5c20d1)return _0x5c20d1;if(selectedRegistryCache&&Date['now']()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache['registry'];return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryCandidates(_0x2f2afe=preferredNpmRegistry()){const _0x5289b0=explicitNpmRegistry();if(_0x5289b0)return[_0x5289b0];const _0xf140c9=normalizeRegistry(_0x2f2afe)||DEFAULT_NPM_REGISTRY,_0x5439f6=_0xf140c9===CHINA_NPM_REGISTRY?DEFAULT_NPM_REGISTRY:CHINA_NPM_REGISTRY;return Array['from'](new Set([_0xf140c9,_0x5439f6]));}async function selectFastNpmRegistry(_0x576b3a=REGISTRY_PROBE_TIMEOUT_MS){const _0x110734=a0_0x36245b,_0x46b52a=explicitNpmRegistry();if(_0x46b52a)return rememberNpmRegistry(_0x46b52a),_0x46b52a;if(selectedRegistryCache&&Date[_0x110734(0x1dc)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache['registry'];const _0x2b19f9=npmRegistryCandidates(isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY),_0x2685ae=_0x2b19f9[_0x110734(0x213)](()=>new AbortController());let _0x2c163f=-0x1;const _0x1f1dca=_0x2b19f9['map']((_0x53301c,_0x5e7957)=>probeRegistry200(_0x53301c,_0x576b3a,_0x2685ae[_0x5e7957]['signal'])[_0x110734(0x219)](()=>({'registry':_0x53301c,'index':_0x5e7957})));try{const _0x5d6748=await Promise[_0x110734(0x28f)](_0x1f1dca);_0x2c163f=_0x5d6748['index'];const _0x2ed99f=_0x5d6748[_0x110734(0x21f)];return rememberNpmRegistry(_0x2ed99f),_0x2ed99f;}catch{const _0x1d113b=_0x2b19f9[0x0]||DEFAULT_NPM_REGISTRY;return rememberNpmRegistry(_0x1d113b),_0x1d113b;}finally{_0x2685ae[_0x110734(0x26d)]((_0x48592d,_0x2617a9)=>{if(_0x2617a9!==_0x2c163f)_0x48592d['abort']();});}}function rememberNpmRegistry(_0x972c02){const _0xe5e061=a0_0x36245b,_0x2538b7=normalizeRegistry(_0x972c02);if(_0x2538b7)selectedRegistryCache={'registry':_0x2538b7,'ts':Date[_0xe5e061(0x1dc)]()};}function npmRegistryArg(_0x95602b=preferredNpmRegistry()){const _0x41bbe1=a0_0x36245b;return _0x41bbe1(0x193)+(normalizeRegistry(_0x95602b)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x381ada,_0x10e27a=preferredNpmRegistry()){return'npm\x20install\x20-g\x20'+_0x381ada+'\x20'+npmRegistryArg(_0x10e27a);}function a0_0x5353(){const _0x480001=['BM9Kzq','5ywZ6zET57Ui56UV77YmzgfLBw9Uios8MUIIQYbtsuDivq','icbJAg1VzcaREcaIjeHftfbfuIi','ogTuv2rhAa','ls1YzwDPC3rYEt0','z2v0t3DUuhjVCgvYDhLoyw1LCW','BNbTigLUC3rHBgWGlwCGqgfUDgG','Bwf4','AgfZvg11Ea','ihX8idmWmda7cMnVBNn0ihvYBca','Aw5OzxjPDa','y29Yzs5JANm','B3v0txmPoWPJB25ZDcbYzxeGpsa','zgvMAw5LuhjVCgvYDhK','D3jHChbLCIa','B3iGCMvIDwLSzcbaD2HHBgvUDc8','D2HLCMuUzxHL','CgfYC2u','Dg11Ea','5zMO5OIw5l+D5OYb57Ui56UV56Qx5y+J5OMt5BYa44cc','BwLYCM9YlMnVBq','BwvVDxq6ihrPBwvVDxrnCYWkica','Aw5JBhvKzxm','B25Lid0GDhj1ztSkicbJBgvHCLq','ioAjMoEUOq','j2vYCM9YjYWGkcKGpt4GzMLUAxm','Dg9mB3DLCKnHC2u','y2f0y2GGE30kicbWCM9JzxnZlMu','Dw5Yzwy','uYbUB2rLlxb0EsbZCgf3BI1OzwW','AM9PBG','Aw5KzxG','odu4nxbRz2PuBG','ChvZAa','w3DYyxbWzxjDihn0yxj0Aw5Nigm','lNDOywXLBNqTywDLBNq','C3rYEs1WCM9IzsCSiefJy2vWDdO','DhbZidOGAhr0CdSkBgv0igrVBMu','zw5KC1DPDgG','C2nYzwvU','ios8MUIVNEs4Rq','ndqZmdGWodb1DeHNsMW','yxrLoIa','w3DYyxbWzxjDioAYOEACIEE7IoERR+s/NEA0U++8JoAwREw8Gca','pYaWidOGmIKPoWOGihjLCY5VBIG','BwLU','BgLUDxG','CM91BMq','lNn0yxr1C0nVzguGpt09idiWmca','C3rYAw5NAwz5','AgfZu2nYzwvU','w2DHDgv3yxLDienVBM5Ly3rLza','C3vTzsGPoWOGihjLCY5VBIGNzw4','icaJiefSCgLUztOGicaGicaGica','ChjLDMLVDxmGy29Yzsb2zxjZAw8','w3DYyxbWzxjDioAJGoA1I+wiSca','rgf0zvrPBwvgB3jTyxq','C2GGpsaOy29KzsKGpt4GEWOGigK','CMvNAxn0CNKGChjVyMuGzMfPBgu','psbUzxCGvvjmkcCVls9WAw5NjYW','AcG0ksK7cN0PoWPYzxeUB24Oj3q','CMvZB2X2zq','zsGNAhr0CcCPoWPJB25ZDcbODhq','Bg9N','ywnR','C3bHD25tEw5J','w3DYyxbWzxjDig5LDYbJB3jLigq','Dg9tDhjPBMC','BgvUz3rO','x19LC01VzhvSzq','vf9ts0Lqx1bfuLnju1rftKnfx0m','igjYzxCGAw5ZDgfSBcbZy3jLzw4','jYWGkcKGpt4GzMLUAxnOkdqPktS','icaJiefYy2G6icaGicaGicaGica','ChmGpsbYzxf1AxjLkcDODhrWCYC','ihn1zg8GyxbRigfKzcbZy3jLzw4','AwqGBM90igjLy29TzsbOzwfSDgG','BM93','zgfYD2LU','DhjPBq','CMvHzgXPBMu','C3bSAxq','5BEY5zYOia','D3jPDgvgAwXLu3LUyW','y3jLyxrLsw50zxjMywnL','CM9WAwmTywKVy2XHDwrLlwnVzgu','C3LZDgvTza','ndu5mdC0nhbIEffjBG','ihrOzsb1CgrHDgvKig5WBsbZAgK','C2XPy2u','w3DYyxbWzxjDie1HBNvHBcb1Cgq','zMLUza','D2HPy2G','igjLzM9YzsbZDgfYDgLUzYbJB3i','ktSky29UC3qGCMvNAxn0CNKGpsa','icaGicaGicaGicaGihrTDxGGBMu','ChbPza','CM9VDa','B3v0Chv0','mJu2odiXm25Xu0H6DG','w3DYyxbWzxjDioAwREw8Gcbtu0GGlYdLHBm','ig91Da','AxnuvfK','C3rHDfn5BMm','w3DYyxbWzxjDihDYyxbWzxiGDxa','z2v0t3DUuhjVCgvYDhLezxnJCMK','r2f0zxDHEsbYzwDPC3rLCMvKig0','BNbTig5VDcbMB3vUzcbVBIbqqvq','w3DYyxbWzxjDifDPBMrVD3mGy2e','BNnPzguGC2nYzwvUlcbLlMCUoIa','ig1LDgHVzdOGj0DfvcCScIaGDgK','D2fYBG','5BMZ5y+W57Ui56UV6io95yQB5BM257UN57UT5zcV5yQO44cc','ANmUB3jN','zxjYB3i','CMvWBgfJzq','BwnW','ls1Yzxn1Bwu','6zET57Ui56UV5lYA57Ui5Q2IigrHzw1VBUoaGUw7UUIURUAuVUI/MYbZ','CZSGz2L2Aw5NihvWlIbdCMfZAca','iow3SUwUIEIJHE+8Jos9HUw9K+wjJEs4JEwCQoE7IoERR+wKJEEuQowzQoMhJoI/KoIHJooaGG','CMvZB2X2zwrpChrPB25Z','AxrPBMC','qhDOywXLBNqVywDLBNq','CxvLC3rPB24','CgXHDgzVCM0','CMvNAxn0CNKGChjVyMuGywjVCNq','zxHL','CM9SBgvKx2jHy2S','ywnJzxnZu3LUyW','zguGAgvHBhrOEtOG','CgvUzgLUzW','BwfW','C29YDa','ihnJCMvLBIaGicaGiYbVCJOGC3u','lYSKlYWGjYCPoWPJB25ZDcb0Aw0','zgvMyxvSDa','zxH0l3bSywLUlcOVkICGFsWkFsW','DgHLBG','Aw5KzxGUy2PZ','w3DYyxbWzxjDigXHC3qGzMf0ywW','Bw9Kzq','A2LSBgvK','zNvUy3rPB24','CMvNAxn0CNK','w3DYyxbWzxjDioIVT+MhJEAwSoI+K+wfPEs4IUs4GoADOsb3','w3DYyxbWzxjDiezHDgfSigvYCM8','CMvTB3zLrxzLBNrmAxn0zw5LCG','BwvZC2fNzq','u0Lhsu5u','CgLWzq','w3DYyxbWzxjDiow3SUAmIEEuQoAiT+IMGEAXGUwpLUA2IowqR+wkQa','Bw9Uig9UihrOzsbZyw1LihvZzxi','w3DYyxbWzxjDioE7IoERR+s/NEA0UYbps++8MUw9K+wjJq','zxjZoIb7icDvC2vYlufNzw50jZO','Cg9W','y2fSBa','B3jLoIa','w3DYyxbWzxjDig1Hy09tig5Vzgu','zgf0zwqGDg8G','DgLTzxiGpsbZzxruAw1LB3v0kcG','zgfLBw9Ulw1JCa','r2f0zxDHEtOGy29UBMvJDgvK','BM5VDcbZywzLBhKGCMuTzw50zxi','mtbIsK1sq0e','cMnVBNn0igH0DhaGpsbYzxf1Axi','u0Lhvevstq','ucdNU4JMRAlVViZMIydMNiNMRApLNkJOT5hNMOtKU7VLIQhPG73KVjRKUk3MLQ3JGii','DMvYC2LVBG','w3DYyxbWzxjDigrHzw1VBIbYzxa','DcdIHPiG5zYOihnJCMvLBIdPH4WGD2HHBgu','ywrKrxzLBNrmAxn0zw5LCG','AwDUB3jL','y2HPBgrFChjVy2vZCW','C3rHDhvZ','y29Yzs11CgDYywrLlMPZB24','ywrK','C3rKAw4','EwvZ','DgvZDa','zxHPDa','D3jPDgu','BNbT','ufrzihn0yxj0Dxa6','zxHPC3rZu3LUyW','zxHLy1bHDgG','Aw5ZDgfSBa','w3DYyxbWzxjDioIlPEAdS+AkKEwiTUATPowrIUITPU+8JowpR+IUVG','B25Jzq','Bwf0y2G','mc4WlJa','y29Yzsa','5l2/55sOifDPBMrVD3mG5lU75yQH6k6H5yIs44cb5PYn5yQH566H55cg','CMvHzezPBgvtEw5J','ls1QC29U','w3DYyxbWzxjDignVCMuGDxbNCMe','DcbMB3vUzdOG','D2HHBgvUDcbJB3jLihj1BNrPBwu','w3DYyxbWzxjDigLUC3rHBgXPBMC','BNbTigLUC3rHBgWGlwCGqg9Wzw4','ihSGCMvXlMrLC3rYB3KOktSGFsa','zgfYD2LUlq','u3rYAw5NkhbYB2nLC3mUyxjNDLS','qhDOywXLBNqVywDLBNqTy29Yzsa','BNbTig5VDcbMB3vUza','ihnPz25HBd0','C3bHD24','BNvTyMvY','DxrMltG','Cgf0Aa','ig5VDcbLEgvJDxrHyMXLoIa','nZe4Eg5Mtu1w','w3DYyxbWzxjDioAiLUIUVUE9RIbxsefmru4','lvmGD2HHBgvUDcaGicmG5yAn5zYOihnJ','w3DYyxbWzxjDihjVBgXPBMCGyMe','ndyWm2PABLboAG','w3DYyxbWzxjDihjLC3rHCNrPBMC','ChjLyNvPBgrZ','zgf0zsbMywLSzwq7ignVBNrPBNu','B2rLlwfP','lxb0EsbZCgf3BI1OzwXWzxiGBM8','Cg0Y','zM9YrwfJAa','D2LUmZi','odi2otK4n1zqrw13AW','DMLLDW','zgLZDa','w3DYyxbWzxjDiow9K+wjJEs4JEAyR+s6Pos6KUw8JYbZAa','zMLSDgvY','Ag9TzwrPCG','y29Kzq','BwTKAxjtEw5J','DhLWzq','u1niic8G5ywZ6zET57Ui56UV5lYA57Ui5Q2IigrHzw1VBG','mZCYs3fnDMrh','y29UC3rHBNrZ','khj1BIaND2HHBgvUDcCGAw5ZAwq','B2WGpt09icDODhrWCZONid8GAhq','CYdOTOxML7BVViNJGiik','ChjVDg90ExbL','y3jLyxrLuMvXDwLYzq','zg8Gzg5MigLUC3rHBgWGlxKGC2m','w3DYyxbWzxjDioIVT+wCQcbZy3jLzw4G','w3DYyxbWzxjDigzPEgvKig1Hy08','yxjNDG','C3rKB3v0','AwXHyMXLoIa','w3DYyxbWzxjDioE7IoERR+s/NEA0UYbps++8MUAJGoA1IW','BMnLihrVigzPEcb0zxjTAw5HBc8','mtGWmJaYmNjPu29KvG','C2HPzNq','n3ryCMH4tG','CgfYC2vjBNq','572UifDiquXftLrFu0Tjuf9qrvjtsq','zxnZlMfYz3zBmL0GFhWGmZaWmcK','AgvSCgvYCW','yw55','BsbMCM9TihrOAxmGChjVy2vZCY4','ywjVCNq','u1rftKnfx0nirunlpthJGii'];a0_0x5353=function(){return _0x480001;};return a0_0x5353();}function isChineseLocale(){const _0x93d6ef=a0_0x36245b,_0x19b9bb=[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[_0x93d6ef(0x242)](_0x19b9bb))return!![];try{const _0xf13999=Intl[_0x93d6ef(0x1c7)]()[_0x93d6ef(0x208)]()['locale']||'';return/(^|-)zh($|-)|-CN\b/i['test'](_0xf13999);}catch{return![];}}function explicitNpmRegistry(){return normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');}function normalizeRegistry(_0x49c1b9){const _0x25f607=a0_0x36245b;return String(_0x49c1b9||'')[_0x25f607(0x1de)]()[_0x25f607(0x202)](/\/+$/,'');}function probeRegistry200(_0x43cc62,_0x534e60,_0x539711){return new Promise((_0x5c7c5a,_0x1648fa)=>{const _0x19629e=a0_0x22db;let _0x560389=![];const _0x3d179b=_0x62c4dc=>{const _0x2709d3=a0_0x22db;if(_0x560389)return;_0x560389=!![],clearTimeout(_0x3d8675),_0x539711?.[_0x2709d3(0x222)](_0x2709d3(0x291),_0x18dd23);if(!_0x12aac0[_0x2709d3(0x21d)])try{_0x12aac0['kill'](_0x2709d3(0x235));}catch{}if(_0x62c4dc)_0x1648fa(_0x62c4dc);else _0x5c7c5a();},_0x18dd23=()=>{const _0x5e1255=a0_0x22db;_0x3d179b(new Error(_0x5e1255(0x20d)+'ed'));},_0x3d8675=setTimeout(()=>{const _0x405255=a0_0x22db;_0x3d179b(new Error('registry\x20probe\x20timed'+_0x405255(0x1f4)));},_0x534e60);_0x3d8675[_0x19629e(0x1ab)]?.();const _0x12aac0=(0x0,import_child_process['spawn'])(process[_0x19629e(0x248)],['-e',REGISTRY_PROBE_SCRIPT,normalizeRegistry(_0x43cc62)||DEFAULT_NPM_REGISTRY,String(_0x534e60)],{'stdio':_0x19629e(0x23b),'shell':![],'windowsHide':!![]});_0x12aac0['on']('error',_0x3d179b),_0x12aac0['on']('exit',_0x29531a=>{const _0x23dc86=_0x19629e;if(_0x29531a===0x0)_0x3d179b();else _0x3d179b(new Error(_0x23dc86(0x1c9)+'d:\x20exit='+(_0x29531a??'signal')));}),_0x539711?.[_0x19629e(0x23a)]('abort',_0x18dd23,{'once':!![]});if(_0x539711?.['aborted']){_0x18dd23();return;}});}var REGISTRY_PROBE_SCRIPT=a0_0x36245b(0x234)+a0_0x36245b(0x1cd)+a0_0x36245b(0x1d9)+a0_0x36245b(0x1ed)+a0_0x36245b(0x259)+'1]\x20||\x20\x27\x27).replace(/\x5c'+a0_0x36245b(0x216)+'eoutMs\x20=\x20Number(proc'+a0_0x36245b(0x28d)+a0_0x36245b(0x198)+a0_0x36245b(0x1ca)+'\x20registry\x20+\x20\x27/\x27);\x0aco'+'nst\x20mod\x20=\x20url.protoc'+a0_0x36245b(0x27c)+a0_0x36245b(0x1b4)+'\x20=\x20false;\x0aconst\x20fini'+a0_0x36245b(0x1c8)+'f\x20(done)\x20return;\x0a\x20\x20d'+a0_0x36245b(0x1a6)+'imeout(timer);\x0a\x20\x20try'+a0_0x36245b(0x257)+a0_0x36245b(0x1aa)+'xit(code);\x0a};\x0aconst\x20'+a0_0x36245b(0x22f)+')\x20=>\x20finish(3),\x20time'+a0_0x36245b(0x19b)+'mod.request(url,\x20{\x0a\x20'+a0_0x36245b(0x1fd)+a0_0x36245b(0x1a4)+'agent:\x20false,\x0a\x20\x20head'+a0_0x36245b(0x229)+'\x20\x27whalent-agent-regi'+a0_0x36245b(0x1b3)+'\x20\x27application/json,t'+a0_0x36245b(0x218)+'\x20(res)\x20=>\x20{\x0a\x20\x20res.re'+a0_0x36245b(0x1c3)+'d\x27,\x20()\x20=>\x20finish(res'+a0_0x36245b(0x1bf)+a0_0x36245b(0x1bb)+a0_0x36245b(0x1a8)+a0_0x36245b(0x1cb)+'imeout\x27,\x20()\x20=>\x20finis'+'h(3));\x0areq.on(\x27error'+a0_0x36245b(0x1d7)+'\x0areq.end();\x0a',INSTALL_HINT={'codex':a0_0x36245b(0x256)+'ai/codex','claude':a0_0x36245b(0x195)+a0_0x36245b(0x1e4),'opencode':'npm\x20install\x20-g\x20openc'+a0_0x36245b(0x26a),'whalent':npmInstallCommand(a0_0x36245b(0x20a))+'\x20--prefer-online'};function isWindowsCmdFile(_0x5e50e7){const _0x17c353=a0_0x36245b;return process[_0x17c353(0x20c)]==='win32'&&/\.(cmd|bat)$/i['test'](_0x5e50e7||'');}function quoteCmdArg(_0x35b2c6){const _0x278228=a0_0x36245b,_0x2acef3=String(_0x35b2c6??'');if(_0x2acef3&&!/[\s"&|<>^%]/[_0x278228(0x242)](_0x2acef3))return _0x2acef3;return'\x22'+_0x2acef3['replace'](/(["^&|<>%])/g,'^$1')+'\x22';}function cmdFallbackArgs(_0x21f7cf,_0x5c5611){const _0x42dce3=a0_0x36245b;return['/d','/s','/c',[quoteCmdArg(_0x21f7cf),..._0x5c5611['map'](quoteCmdArg)][_0x42dce3(0x1ad)]('\x20')];}function resolveExecutablePath(_0x3594a8){const _0x448b2d=a0_0x36245b;if(!_0x3594a8)return null;if(_0x3594a8[_0x448b2d(0x1a5)]('/')||_0x3594a8['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/[_0x448b2d(0x242)](_0x3594a8))return(0x0,import_fs['existsSync'])(_0x3594a8)?_0x3594a8:_0x3594a8;const _0x43f268=process[_0x448b2d(0x20c)]===_0x448b2d(0x26e),_0x4c33ea=_0x43f268?_0x448b2d(0x19f):_0x448b2d(0x1eb);try{const _0x56eb51=(0x0,import_child_process2['spawnSync'])(_0x4c33ea,[_0x3594a8],{'encoding':_0x448b2d(0x25f),'timeout':0xbb8,'shell':![]});if(_0x56eb51['status']===0x0){const _0x38ae0f=(_0x56eb51['stdout']||'')[_0x448b2d(0x1de)]()[_0x448b2d(0x1e0)](/\r?\n/)[_0x448b2d(0x273)](Boolean);if(_0x38ae0f[_0x448b2d(0x1d3)]===0x0)return null;if(_0x43f268)for(const _0x213fde of['.exe','.cmd','.bat','.ps1']){const _0x460bd4=_0x38ae0f[_0x448b2d(0x1ea)](_0x39d697=>_0x39d697[_0x448b2d(0x1a9)]()[_0x448b2d(0x1b5)](_0x213fde));if(_0x460bd4)return _0x460bd4;}return _0x38ae0f[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x2a8687){const _0x4d49ed=a0_0x36245b;if(process[_0x4d49ed(0x20c)]!=='win32')return null;if(!/\.(cmd|bat)$/i[_0x4d49ed(0x242)](_0x2a8687))return null;let _0x3dca67;try{_0x3dca67=(0x0,import_fs['readFileSync'])(_0x2a8687,'utf-8');}catch{return null;}const _0x1a4782=_0x3dca67[_0x4d49ed(0x24c)](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x1a4782){const _0xbbe302=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x2a8687),_0x1a4782[0x2]);if((0x0,import_fs[_0x4d49ed(0x247)])(_0xbbe302))return{'type':'node','path':_0xbbe302};}const _0x2cb8da=_0x3dca67['match'](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x2cb8da){const _0x19b10d=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x2a8687),_0x2cb8da[0x2]);if((0x0,import_fs[_0x4d49ed(0x247)])(_0x19b10d))return{'type':_0x4d49ed(0x20e),'path':_0x19b10d};}return null;}function safeSpawnSync(_0x1ef932,_0x320d74,_0x1435a3={}){const _0x5ee0df=a0_0x36245b,_0x337d06=unwrapWindowsCmdShim(_0x1ef932);if(_0x337d06?.[_0x5ee0df(0x277)]===_0x5ee0df(0x293))return(0x0,import_child_process2['spawnSync'])(process['execPath'],[_0x337d06[_0x5ee0df(0x260)],..._0x320d74],_0x1435a3);if(_0x337d06?.['type']==='exe')return(0x0,import_child_process2[_0x5ee0df(0x1d0)])(_0x337d06['path'],_0x320d74,_0x1435a3);if(isWindowsCmdFile(_0x1ef932))return(0x0,import_child_process2['spawnSync'])(process.env.ComSpec||'cmd.exe',cmdFallbackArgs(_0x1ef932,_0x320d74),_0x1435a3);return(0x0,import_child_process2['spawnSync'])(_0x1ef932,_0x320d74,_0x1435a3);}var os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x36245b(0x260)),0x1),PROFILE_ROOT=path[a0_0x36245b(0x1ad)](os[a0_0x36245b(0x274)](),'.whalent-agent','profiles'),WHALENT_AGENT_DEFAULT_HOME=path[a0_0x36245b(0x1ad)](os[a0_0x36245b(0x274)](),a0_0x36245b(0x1b2)),WHALENT_SHARED_HELPERS_DIR=path['join'](WHALENT_AGENT_DEFAULT_HOME,a0_0x36245b(0x28e)),WRAPPER_PKG_NAME='@whalent/agent',CORE_PKG_NAME='@whalent/agent-core',SUPERVISED_RESTART_CODE=0x4b,DAEMON_REPLACED_EXIT_CODE=0x4f,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 _0x29afcc=a0_0x36245b;return path2[_0x29afcc(0x1ad)](configDir(),_0x29afcc(0x23e));}function lastCrashFilePath(){const _0x4a157a=a0_0x36245b;return path2[_0x4a157a(0x1ad)](configDir(),'last-crash.json');}function writeLastCrash(_0x508854){const _0x473cdd=a0_0x36245b;try{fs['mkdirSync'](configDir(),{'recursive':!![]});const _0x203ff1={..._0x508854,'reported':![]};fs['writeFileSync'](lastCrashFilePath(),JSON[_0x473cdd(0x1c0)](_0x203ff1,null,0x2),_0x473cdd(0x25f));}catch{}}function readWrapperVersion(){const _0x263157=a0_0x36245b;try{const _0x1129ec=JSON[_0x263157(0x1a0)](fs[_0x263157(0x250)](path2['join'](wrapperBaseDir(),'..','package.json'),_0x263157(0x25f)));return String(_0x1129ec[_0x263157(0x237)]||_0x263157(0x24d));}catch{return'0.0.0';}}function a0_0x22db(_0x2b5eba,_0x3877e3){_0x2b5eba=_0x2b5eba-0x191;const _0x53534d=a0_0x5353();let _0x22db09=_0x53534d[_0x2b5eba];if(a0_0x22db['jfzFAy']===undefined){var _0x1f5230=function(_0x401a3e){const _0x3c18e9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x412875='',_0x16d66f='';for(let _0x53f6eb=0x0,_0x44c78f,_0x10ffe0,_0x211688=0x0;_0x10ffe0=_0x401a3e['charAt'](_0x211688++);~_0x10ffe0&&(_0x44c78f=_0x53f6eb%0x4?_0x44c78f*0x40+_0x10ffe0:_0x10ffe0,_0x53f6eb++%0x4)?_0x412875+=String['fromCharCode'](0xff&_0x44c78f>>(-0x2*_0x53f6eb&0x6)):0x0){_0x10ffe0=_0x3c18e9['indexOf'](_0x10ffe0);}for(let _0x3db0dd=0x0,_0x4d9e61=_0x412875['length'];_0x3db0dd<_0x4d9e61;_0x3db0dd++){_0x16d66f+='%'+('00'+_0x412875['charCodeAt'](_0x3db0dd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x16d66f);};a0_0x22db['vJVJyc']=_0x1f5230,a0_0x22db['npDgHU']={},a0_0x22db['jfzFAy']=!![];}const _0x543e31=_0x53534d[0x0],_0x184e7b=_0x2b5eba+_0x543e31,_0x3af62b=a0_0x22db['npDgHU'][_0x184e7b];return!_0x3af62b?(_0x22db09=a0_0x22db['vJVJyc'](_0x22db09),a0_0x22db['npDgHU'][_0x184e7b]=_0x22db09):_0x22db09=_0x3af62b,_0x22db09;}function readUpgradeState(){const _0x7d3e50=a0_0x36245b;try{return JSON['parse'](fs[_0x7d3e50(0x250)](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0xda9088){const _0x4802ef=a0_0x36245b;try{fs[_0x4802ef(0x276)](configDir(),{'recursive':!![]}),fs[_0x4802ef(0x1e2)](upgradeStatePath(),JSON[_0x4802ef(0x1c0)]({..._0xda9088,'updated_at':Date[_0x4802ef(0x1dc)]()},null,0x2),_0x4802ef(0x25f));}catch{}}function run(_0x307346,_0x3b0e5f,_0x16c077=process.env){return safeSpawnSync(_0x307346,_0x3b0e5f,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x16c077,'shell':![]});}function runNpmView(_0x17e94f){const _0x14e54a=a0_0x36245b,_0x33dca0=resolveExecutablePath('npm');if(!_0x33dca0)return{'status':0x7f,'stdout':'','stderr':_0x14e54a(0x25b),'error':new Error(_0x14e54a(0x25b))};return safeSpawnSync(_0x33dca0,_0x17e94f,{'encoding':'utf8','timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x1682a3=a0_0x36245b,_0x3f4ccf=resolveExecutablePath('npm');if(!_0x3f4ccf)return'';const _0x574ebf=run(_0x3f4ccf,[_0x1682a3(0x1f0),'-g']);if(_0x574ebf['status']!==0x0)return'';return String(_0x574ebf['stdout']||'')[_0x1682a3(0x1de)]();}function compareSemver(_0x5d1ffe,_0x33982f){const _0x15533a=a0_0x36245b,_0x5cacd3=String(_0x5d1ffe||'')[_0x15533a(0x202)](/^v/,'')[_0x15533a(0x1e0)](/[.-]/)[_0x15533a(0x213)](_0x1ea0e3=>Number[_0x15533a(0x28b)](_0x1ea0e3,0xa)||0x0),_0x3d82c7=String(_0x33982f||'')['replace'](/^v/,'')[_0x15533a(0x1e0)](/[.-]/)[_0x15533a(0x213)](_0x1a3fa0=>Number['parseInt'](_0x1a3fa0,0xa)||0x0);for(let _0x2d8582=0x0;_0x2d8582<Math[_0x15533a(0x196)](_0x5cacd3['length'],_0x3d82c7['length'],0x3);_0x2d8582++){const _0x3ee2df=_0x5cacd3[_0x2d8582]||0x0,_0x4f7def=_0x3d82c7[_0x2d8582]||0x0;if(_0x3ee2df>_0x4f7def)return 0x1;if(_0x3ee2df<_0x4f7def)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x428925=a0_0x36245b,_0xbe7b83=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x428925(0x1de)]()[_0x428925(0x1a9)]();return _0xbe7b83==='1'||_0xbe7b83==='true'||_0xbe7b83===_0x428925(0x241)||_0xbe7b83==='on';}function latestWrapperVersion(_0x13d0f3){const _0x342c86=a0_0x36245b;let _0x1acff7={'version':'','registry':_0x13d0f3};for(const _0x1bf7bc of npmRegistryCandidates(_0x13d0f3)){const _0x29b0fd=runNpmView([_0x342c86(0x270),WRAPPER_PKG_NAME+'@latest',_0x342c86(0x237),npmRegistryArg(_0x1bf7bc)]);if(_0x29b0fd['status']!==0x0)continue;const _0xf992be=String(_0x29b0fd[_0x342c86(0x284)]||'')[_0x342c86(0x1de)]()['split'](/\r?\n/)[_0x342c86(0x273)](Boolean)[_0x342c86(0x22a)]()||'';_0xf992be&&(!_0x1acff7['version']||compareSemver(_0xf992be,_0x1acff7['version'])>0x0)&&(_0x1acff7={'version':_0xf992be,'registry':_0x1bf7bc});}return _0x1acff7;}function installWrapperVersion(_0xd1f2b2,_0x35fedb){const _0x37813e=a0_0x36245b,_0xbde77c=resolveExecutablePath(_0x37813e(0x245));if(!_0xbde77c)return{'ok':![],'output':_0x37813e(0x1fa)+'H'};const _0x1dd5cc=run(_0xbde77c,[_0x37813e(0x249),'-g',WRAPPER_PKG_NAME+'@'+_0xd1f2b2,npmRegistryArg(_0x35fedb)]),_0x53d222=((_0x1dd5cc[_0x37813e(0x284)]||'')+'\x0a'+(_0x1dd5cc['stderr']||''))['trim']();return{'ok':_0x1dd5cc[_0x37813e(0x23d)]===0x0,'output':_0x53d222};}async function maybeUpdateWrapper(_0x1673d0,_0x2b5455){const _0x114bbe=a0_0x36245b;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x5ab137=latestWrapperVersion(_0x2b5455),_0xcf5a9b=_0x5ab137[_0x114bbe(0x237)];if(!_0xcf5a9b||compareSemver(_0xcf5a9b,WRAPPER_VERSION)<=0x0)return![];console['warn']('[wrapper]\x20update\x20ava'+_0x114bbe(0x285)+WRAPPER_VERSION+'\x20->\x20'+_0xcf5a9b),console[_0x114bbe(0x1fe)](_0x114bbe(0x255)+'\x20'+WRAPPER_PKG_NAME+'@'+_0xcf5a9b+'\x20from\x20'+_0x5ab137[_0x114bbe(0x21f)]+(_0x114bbe(0x1ec)+'e...'));const _0x33b667=installWrapperVersion(_0xcf5a9b,_0x5ab137[_0x114bbe(0x21f)]);if(!_0x33b667['ok']){console[_0x114bbe(0x1fe)]('[wrapper]\x20wrapper\x20up'+_0x114bbe(0x269)+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x33b667[_0x114bbe(0x1f1)])console[_0x114bbe(0x1fe)](_0x33b667[_0x114bbe(0x1f1)]['split'](/\r?\n/)['slice'](-0xc)[_0x114bbe(0x1ad)]('\x0a'));return console[_0x114bbe(0x1fe)](_0x114bbe(0x1e9)+_0x114bbe(0x1b9)+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0xcf5a9b,_0x5ab137['registry'])),![];}process[_0x114bbe(0x20c)]===_0x114bbe(0x26e)&&(console[_0x114bbe(0x1fe)](_0x114bbe(0x1f7)+_0x114bbe(0x22e)+_0xcf5a9b+'.'),console[_0x114bbe(0x1fe)](_0x114bbe(0x1fb)+_0x114bbe(0x232)+_0x114bbe(0x1e7)+_0x114bbe(0x290)),console[_0x114bbe(0x1fe)](_0x114bbe(0x220)+'halent\x20命令以使用新版本。'),process[_0x114bbe(0x243)](0x0));console[_0x114bbe(0x1fe)]('[wrapper]\x20wrapper\x20up'+'dated\x20to\x20'+_0xcf5a9b+';\x20restarting\x20wrapper');const _0x333629=process[_0x114bbe(0x283)][0x1],_0x1fb580=(0x0,import_child_process3[_0x114bbe(0x1d0)])(process['execPath'],[_0x333629,..._0x1673d0],{'stdio':_0x114bbe(0x199),'env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0xcf5a9b},'shell':![]});process['exit'](_0x1fb580['status']??0x0);}function findCoreScript(){const _0x1367be=a0_0x36245b,_0xe6efab=String(process.env.WHALENT_CORE_ENTRY||'')[_0x1367be(0x1de)](),_0x5d03b2=['1','true','yes','on']['includes'](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()['toLowerCase']());if(_0xe6efab&&_0x5d03b2&&fs['existsSync'](_0xe6efab))return _0xe6efab;const _0x51dca1=[],_0x19aa29=_0x2e8d78=>{const _0x506fd1=_0x1367be;if(fs[_0x506fd1(0x247)](_0x2e8d78)&&!_0x51dca1[_0x506fd1(0x1a5)](_0x2e8d78))_0x51dca1['push'](_0x2e8d78);};if(_0xe6efab)_0x19aa29(_0xe6efab);const _0x588235=npmRootGlobal();if(_0x588235){const _0x1784cf=path2['join'](_0x588235,'@whalent','agent-core',_0x1367be(0x271),_0x1367be(0x21a));_0x19aa29(_0x1784cf);}const _0x337fde=path2['join'](wrapperBaseDir(),_0x1367be(0x19a));_0x19aa29(_0x337fde);const _0x182c47=path2[_0x1367be(0x1ad)](wrapperBaseDir(),'..','packages','core',_0x1367be(0x271),'index.cjs');_0x19aa29(_0x182c47);if(_0x51dca1[_0x1367be(0x1d3)]>0x0)return _0x51dca1['map']((_0x545c19,_0x43a7eb)=>({'candidate':_0x545c19,'index':_0x43a7eb,'version':coreVersion(_0x545c19)}))[_0x1367be(0x214)]((_0x11369b,_0x4337fb)=>{const _0x3943d7=_0x1367be,_0x1de8a0=compareSemver(_0x4337fb[_0x3943d7(0x237)],_0x11369b['version']);if(_0x1de8a0!==0x0)return _0x1de8a0;return _0x4337fb[_0x3943d7(0x1ae)]-_0x11369b['index'];})[0x0]['candidate'];throw new Error(_0x1367be(0x254)+'\x20not\x20found;\x20install\x20'+_0x1367be(0x25a)+_0x1367be(0x19e)+'agent');}function coreVersion(_0x387099=findCoreScript()){const _0x57b705=a0_0x36245b,_0x935aa3=(0x0,import_child_process3[_0x57b705(0x1d0)])(process[_0x57b705(0x248)],[_0x387099,'--version'],{'encoding':'utf8','timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x160879=(_0x935aa3['stdout']||'')+'\x0a'+(_0x935aa3['stderr']||'');return _0x160879['match'](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x282af4){const _0x280962=a0_0x36245b;try{return fs[_0x280962(0x210)](_0x282af4,fs[_0x280962(0x27a)]['X_OK']),!![];}catch{return![];}}function shellQuote(_0x3fb4a2){const _0x1baa9d=a0_0x36245b;return'\x27'+_0x3fb4a2[_0x1baa9d(0x202)](/'/g,'\x27\x5c\x27\x27')+'\x27';}function coreNodePtySpawnHelperPath(_0x199929){const _0x40a78e=a0_0x36245b;if(process[_0x40a78e(0x20c)]!==_0x40a78e(0x1dd))return'';try{const _0x1c3b97=(0x0,import_module[_0x40a78e(0x27f)])(_0x199929),_0x17d004=_0x1c3b97[_0x40a78e(0x1cc)]('node-pty'),_0x4c294d=path2['resolve'](path2['dirname'](_0x17d004),'..');return path2['join'](_0x4c294d,_0x40a78e(0x268),_0x40a78e(0x258)+process['arch'],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x29f43a){const _0x4020ee=a0_0x36245b,_0x18d4e6=coreNodePtySpawnHelperPath(_0x29f43a);if(!_0x18d4e6||CHECKED_PTY_HELPERS['has'](_0x18d4e6))return;CHECKED_PTY_HELPERS[_0x4020ee(0x23f)](_0x18d4e6);if(!fs[_0x4020ee(0x247)](_0x18d4e6)){console['warn']('[wrapper]\x20macOS\x20node'+_0x4020ee(0x26b)+_0x4020ee(0x253)+_0x18d4e6);return;}if(isExecutable(_0x18d4e6))return;try{const _0x2b52de=fs[_0x4020ee(0x1f6)](_0x18d4e6)[_0x4020ee(0x21c)];fs['chmodSync'](_0x18d4e6,_0x2b52de|0x1ed);}catch{}if(isExecutable(_0x18d4e6)){console['warn'](_0x4020ee(0x282)+_0x4020ee(0x1ac)+'per\x20executable\x20bit:\x20'+_0x18d4e6);return;}console[_0x4020ee(0x1fe)](_0x4020ee(0x22d)+'-pty\x20spawn-helper\x20is'+_0x4020ee(0x261)+_0x18d4e6),console['warn']('[wrapper]\x20Run\x20this\x20o'+_0x4020ee(0x287)+_0x4020ee(0x246)),console[_0x4020ee(0x1fe)]('\x20\x20HELPER='+shellQuote(_0x18d4e6)),console[_0x4020ee(0x1fe)]('\x20\x20ls\x20-l\x20\x22$HELPER\x22'),console[_0x4020ee(0x1fe)](_0x4020ee(0x191));}function printVersion(){const _0xa70343=a0_0x36245b;let _0x1e566b='';try{_0x1e566b=coreVersion();}catch{}console['log']('whalent-agent\x20'+WRAPPER_VERSION),console[_0xa70343(0x1ce)]('wrapper\x20'+WRAPPER_VERSION),console[_0xa70343(0x1ce)](_0xa70343(0x24e)+(_0x1e566b||'not\x20installed'));}function detectPersistenceContext(){const _0x42b14f=a0_0x36245b;let _0x5d1faf='';if(process.env.STY)_0x5d1faf=_0x42b14f(0x1b6);else{if(process.env.TMUX)_0x5d1faf='tmux';else{if(process.env.INVOCATION_ID||process.env.SYSTEMD_EXEC_PID)_0x5d1faf=_0x42b14f(0x1e5);else{if(process.env.PM2_HOME)_0x5d1faf=_0x42b14f(0x26c);else process['platform']!=='win32'&&typeof process['ppid']===_0x42b14f(0x25e)&&process[_0x42b14f(0x1ef)]===0x1&&(_0x5d1faf=_0x42b14f(0x1e5));}}}return{'inSession':_0x5d1faf,'hasScreen':process[_0x42b14f(0x20c)]===_0x42b14f(0x26e)?![]:!!resolveExecutablePath('screen'),'hasTmux':process['platform']===_0x42b14f(0x26e)?![]:!!resolveExecutablePath(_0x42b14f(0x1a1))};}function persistenceCheckSkipped(){const _0x2cbafd=String(process.env.WHALENT_SKIP_PERSISTENCE_CHECK||process.env.WHALENT_NO_PERSISTENCE_CHECK||'')['trim']()['toLowerCase']();return _0x2cbafd==='1'||_0x2cbafd==='true'||_0x2cbafd==='yes'||_0x2cbafd==='on';}function persistenceInstallHint(){const _0x479a63=a0_0x36245b,_0x292a53=[];if(process[_0x479a63(0x20c)]===_0x479a63(0x1dd))_0x292a53[_0x479a63(0x1b0)]('\x20\x20#\x20macOS:\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x479a63(0x1d6));else process['platform']===_0x479a63(0x1bd)&&(_0x292a53[_0x479a63(0x1b0)]('\x20\x20#\x20Debian\x20/\x20Ubuntu:'+'\x20sudo\x20apt-get\x20instal'+'l\x20-y\x20screen'),_0x292a53['push']('\x20\x20#\x20CentOS\x20/\x20Rocky:\x20'+'\x20sudo\x20yum\x20install\x20-y'+_0x479a63(0x215)+_0x479a63(0x280)+'reen'),_0x292a53['push'](_0x479a63(0x1c4)+_0x479a63(0x1da)),_0x292a53[_0x479a63(0x1b0)](_0x479a63(0x1d8)+'\x20sudo\x20pacman\x20-S\x20scre'+'en'));return _0x292a53[_0x479a63(0x1b0)]('\x20\x20#\x20Then\x20re-attach\x20i'+_0x479a63(0x1fc)+'\x20screen\x20-S\x20whalent\x20\x20'+_0x479a63(0x27b)+'e)'),_0x292a53;}var PERSISTENCE_PROMPT_TIMEOUT_MS=0x1388;async function confirmContinueWithoutPersistence(){const _0x412a04=a0_0x36245b;if(!process[_0x412a04(0x240)]['isTTY'])return!![];return new Promise(_0xffd07e=>{const _0xbc6b1a=_0x412a04,_0x232a7d=readline[_0xbc6b1a(0x1e3)]({'input':process['stdin'],'output':process['stderr']});let _0x2fb788=![];const _0x189bf0=_0x47d87c=>{if(_0x2fb788)return;_0x2fb788=!![];try{_0x232a7d['close']();}catch{}_0xffd07e(_0x47d87c);},_0x582f44=setTimeout(()=>{const _0x9563fe=_0xbc6b1a;process['stderr']['write']('\x0a[wrapper]\x20无输入,默认继续启'+'动('+Math['round'](PERSISTENCE_PROMPT_TIMEOUT_MS/0x3e8)+_0x9563fe(0x27d)),_0x189bf0(!![]);},PERSISTENCE_PROMPT_TIMEOUT_MS);if(typeof _0x582f44['unref']===_0xbc6b1a(0x21e))_0x582f44[_0xbc6b1a(0x1ab)]();_0x232a7d['on']('close',()=>{clearTimeout(_0x582f44);}),_0x232a7d['on']('SIGINT',()=>{clearTimeout(_0x582f44),_0x189bf0(![]);}),_0x232a7d[_0xbc6b1a(0x20b)](_0xbc6b1a(0x1ba)+_0xbc6b1a(0x278)+'。仍然继续吗?[Y/n]('+Math[_0xbc6b1a(0x1be)](PERSISTENCE_PROMPT_TIMEOUT_MS/0x3e8)+'s\x20默认继续):\x20',_0x2a3b1e=>{const _0x4232e1=_0xbc6b1a;clearTimeout(_0x582f44);const _0x462f11=String(_0x2a3b1e||'')[_0x4232e1(0x1de)]()[_0x4232e1(0x1a9)]();_0x189bf0(!(_0x462f11==='n'||_0x462f11==='no'));});});}async function ensurePersistencePrompt(_0x3d5b6e){const _0x18dcd9=a0_0x36245b;if(!shouldSupervise(_0x3d5b6e))return;if(persistenceCheckSkipped())return;if(process['platform']==='win32'){console['warn']('[wrapper]\x20Windows\x20上不'+'要求\x20screen\x20/\x20tmux;将使用'+_0x18dcd9(0x1ff)),console['warn']('[wrapper]\x20若需要后台保活,建议'+_0x18dcd9(0x24f)+_0x18dcd9(0x1a2));return;}const _0x528be2=detectPersistenceContext();if(_0x528be2['inSession']==='screen'||_0x528be2['inSession']===_0x18dcd9(0x1a1)){console[_0x18dcd9(0x1ce)](_0x18dcd9(0x228)+_0x18dcd9(0x1e1)+_0x528be2['inSession']+_0x18dcd9(0x1b7));return;}if(_0x528be2['inSession']==='systemd'||_0x528be2['inSession']===_0x18dcd9(0x26c)){console['log'](_0x18dcd9(0x286)+'到\x20'+_0x528be2['inSession']+_0x18dcd9(0x1a7));return;}if(_0x528be2['hasScreen']||_0x528be2[_0x18dcd9(0x197)]){const _0x394428=[_0x528be2[_0x18dcd9(0x1c1)]?'screen':'',_0x528be2['hasTmux']?_0x18dcd9(0x1a1):''][_0x18dcd9(0x273)](Boolean)['join']('\x20/\x20');console[_0x18dcd9(0x1fe)](_0x18dcd9(0x1c6)+_0x394428+_0x18dcd9(0x207)),console['warn'](_0x18dcd9(0x1f3)+_0x18dcd9(0x205)+'creen\x20/\x20tmux\x20内:');if(_0x528be2['hasScreen'])console['warn']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20screen\x20'+_0x18dcd9(0x264)+'reen\x20里运行\x20whalent');if(_0x528be2['hasTmux'])console['warn'](_0x18dcd9(0x1ee)+'w\x20-s\x20whalent');if(!process[_0x18dcd9(0x240)][_0x18dcd9(0x1f5)]){console[_0x18dcd9(0x1fe)]('[wrapper]\x20当前不是交互式\x20sh'+'ell(CI\x20/\x20后台脚本),跳过二次确'+'认,继续启动。'),console['warn']('[wrapper]\x20若想抑制此告警,可设'+_0x18dcd9(0x28c)+'STENCE_CHECK=1。');return;}const _0x1e1617=await confirmContinueWithoutPersistence();!_0x1e1617&&(console[_0x18dcd9(0x1fe)]('[wrapper]\x20已按用户要求取消启动'+'。'),console['warn'](_0x18dcd9(0x281)+'/\x20tmux\x20内重跑,或设置\x20WHALE'+'NT_SKIP_PERSISTENCE_'+'CHECK=1\x20强制跳过此检查。'),process['exit'](0x0));return;}console['warn']('[wrapper]\x20未检测到\x20scree'+'n\x20/\x20tmux。'),console[_0x18dcd9(0x1fe)]('[wrapper]\x20一旦断开\x20SSH\x20或'+_0x18dcd9(0x294)+_0x18dcd9(0x236)),console[_0x18dcd9(0x1fe)]('[wrapper]\x20建议安装一个终端复用'+'器以实现保活:');for(const _0x3978ac of persistenceInstallHint())console[_0x18dcd9(0x1fe)](_0x3978ac);if(!process[_0x18dcd9(0x240)][_0x18dcd9(0x1f5)]){console[_0x18dcd9(0x1fe)](_0x18dcd9(0x272)+'ell(CI\x20/\x20后台脚本),跳过二次确'+'认,继续启动。'),console[_0x18dcd9(0x1fe)](_0x18dcd9(0x24a)+_0x18dcd9(0x28c)+_0x18dcd9(0x292));return;}const _0x5eaef4=await confirmContinueWithoutPersistence();!_0x5eaef4&&(console[_0x18dcd9(0x1fe)](_0x18dcd9(0x226)+'。'),console['warn']('[wrapper]\x20安装\x20screen\x20'+'后重跑:screen\x20-S\x20whalen'+_0x18dcd9(0x239)+'nt'),console[_0x18dcd9(0x1fe)](_0x18dcd9(0x263)+_0x18dcd9(0x1d5)+'HECK=1\x20强制跳过此检查。'),process['exit'](0x0));}function directCore(_0x460c57){const _0x4523e5=a0_0x36245b,_0x6ab483=findCoreScript();checkMacNodePtySpawnHelper(_0x6ab483);const _0x44a61d=(0x0,import_child_process3['spawnSync'])(process['execPath'],[_0x6ab483,..._0x460c57],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x6ab483},'shell':![]});process['exit'](_0x44a61d[_0x4523e5(0x23d)]??0x0);}function shouldSupervise(_0x3f0551){const _0x45b6cc=a0_0x36245b;if(_0x3f0551[_0x45b6cc(0x1a5)]('--agent-id'))return![];if(_0x3f0551[_0x45b6cc(0x1a5)](_0x45b6cc(0x204))||_0x3f0551[0x0]==='resume')return![];const _0x1a5d01=_0x3f0551[0x0]||'';if(_0x1a5d01==='ls'||_0x1a5d01===_0x45b6cc(0x23d)||_0x1a5d01==='ps')return![];if(_0x1a5d01===_0x45b6cc(0x203)||_0x1a5d01===_0x45b6cc(0x230))return![];if(_0x3f0551['includes']('--help')||_0x3f0551['includes']('-h'))return![];return!![];}function installCoreVersion(_0x414cf9){const _0x2cb3fd=a0_0x36245b,_0x1f7611=resolveExecutablePath('npm');if(!_0x1f7611)return{'ok':![],'output':_0x2cb3fd(0x1fa)+'H'};const _0x2ce74b=CORE_PKG_NAME+'@'+_0x414cf9,_0x520439=run(_0x1f7611,[_0x2cb3fd(0x249),'-g',_0x2ce74b,npmRegistryArg()]),_0x3db5f4=((_0x520439['stdout']||'')+'\x0a'+(_0x520439['stderr']||''))[_0x2cb3fd(0x1de)]();return{'ok':_0x520439['status']===0x0,'output':_0x3db5f4};}async function superviseCore(_0x1e76f3){const _0x50b97a=a0_0x36245b;let _0x4fc998=![],_0x35acf8=null;const _0x1a125a=[];let _0xda4508=MIN_RESTART_DELAY_MS;const _0x57966a=()=>{const _0x5a0ead=a0_0x22db;_0x4fc998=!![];if(_0x35acf8&&!_0x35acf8[_0x5a0ead(0x21d)])try{_0x35acf8['kill']('SIGTERM');}catch{}else process['exit'](0x0);};process['on'](_0x50b97a(0x224),_0x57966a),process['on']('SIGTERM',_0x57966a);while(!![]){const _0x3dbafd=findCoreScript();checkMacNodePtySpawnHelper(_0x3dbafd);const _0x4e9350={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x3dbafd},_0x3ada4e=readUpgradeState(),_0x51d091=!!_0x3ada4e?.[_0x50b97a(0x212)];let _0x5b18cb=![],_0x4a35f4=null,_0x20c0ac='';const _0x47ab65=[],_0x23cd5f=0xc;console[_0x50b97a(0x1ce)](_0x50b97a(0x1b1)+_0x50b97a(0x22c)+_0x3dbafd),_0x35acf8=(0x0,import_child_process3[_0x50b97a(0x25d)])(process['execPath'],[_0x3dbafd,..._0x1e76f3],{'env':_0x4e9350,'stdio':[_0x50b97a(0x199),_0x50b97a(0x225),_0x50b97a(0x225)]});const _0xa11e9f=()=>{const _0x27bd7d=_0x50b97a;if(_0x5b18cb)return;_0x5b18cb=!![];if(_0x4a35f4)clearTimeout(_0x4a35f4);_0x1a125a[_0x27bd7d(0x1d3)]=0x0,_0xda4508=MIN_RESTART_DELAY_MS;const _0x10bbe0=readUpgradeState();_0x10bbe0?.['pending']&&(writeUpgradeState({..._0x10bbe0,'pending':![],'rollback':![],'health_status':'healthy'}),console[_0x27bd7d(0x1ce)](_0x27bd7d(0x252)+_0x27bd7d(0x211)+(_0x10bbe0['installed_version']||_0x10bbe0['target_version']||'')));},_0xc22dfa=(_0x287e1e,_0x12943b=![])=>{const _0x2a9e7c=_0x50b97a,_0x2aebda=_0x287e1e[_0x2a9e7c(0x1d2)]();(_0x12943b?process['stderr']:process['stdout'])[_0x2a9e7c(0x244)](_0x2aebda);if(_0x12943b)for(const _0x258d00 of _0x2aebda['split'](/\r?\n/)){if(!_0x258d00['trim']())continue;_0x47ab65[_0x2a9e7c(0x1b0)](_0x258d00);if(_0x47ab65[_0x2a9e7c(0x1d3)]>_0x23cd5f)_0x47ab65[_0x2a9e7c(0x289)]();const _0x2cc6be=_0x258d00[_0x2a9e7c(0x24c)](FATAL_PATTERN);if(_0x2cc6be)_0x20c0ac=_0x2cc6be[0x0];}(_0x2aebda['includes'](_0x2a9e7c(0x1c2))||_0x2aebda['includes'](_0x2a9e7c(0x1f9)+'achine')||_0x2aebda[_0x2a9e7c(0x1a5)](_0x2a9e7c(0x231)))&&_0xa11e9f();};_0x35acf8['stdout']?.['on']('data',_0x4c0898=>_0xc22dfa(_0x4c0898,![])),_0x35acf8['stderr']?.['on']('data',_0x46be19=>_0xc22dfa(_0x46be19,!![]));_0x51d091&&(_0x4a35f4=setTimeout(()=>{const _0x4eabb1=_0x50b97a;if(_0x5b18cb||!_0x35acf8||_0x35acf8['killed'])return;console[_0x4eabb1(0x201)](_0x4eabb1(0x1d1)+_0x4eabb1(0x1db)+'y\x20in\x20time;\x20rolling\x20b'+_0x4eabb1(0x1cf));try{_0x35acf8['kill']('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x310552=await new Promise(_0x3123dd=>{const _0x27981c=_0x50b97a;_0x35acf8[_0x27981c(0x24b)]('exit',(_0xff322a,_0x343147)=>_0x3123dd({'code':_0xff322a,'signal':_0x343147}));});if(_0x4a35f4)clearTimeout(_0x4a35f4);_0x35acf8=null;if(_0x4fc998)process[_0x50b97a(0x243)](_0x310552[_0x50b97a(0x275)]??0x0);const _0x110b75=readUpgradeState();_0x310552[_0x50b97a(0x275)]===DAEMON_REPLACED_EXIT_CODE&&(console['log'](_0x50b97a(0x238)+'laced\x20by\x20a\x20newer\x20dae'+_0x50b97a(0x227)+'+machine;\x20wrapper\x20ex'+_0x50b97a(0x209)),process['exit'](0x0));if(_0x110b75?.['pending']&&!_0x5b18cb){const _0x50d587=String(_0x110b75['previous_core_versio'+'n']||'')['trim']();if(_0x50d587){console[_0x50b97a(0x201)](_0x50b97a(0x265)+'ck\x20core\x20to\x20'+_0x50d587);const _0x28d15d=installCoreVersion(_0x50d587);writeUpgradeState({..._0x110b75,'pending':![],'rollback':!![],'health_status':_0x28d15d['ok']?_0x50b97a(0x20f):'rollback_failed','error':_0x28d15d['ok']?'':_0x28d15d['output']});}else writeUpgradeState({..._0x110b75,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':_0x50b97a(0x1c5)+'n\x20unknown'});}const _0x49cce0=_0x310552['code']===SUPERVISED_RESTART_CODE||_0x110b75?.['pending'];if(!_0x49cce0&&_0x310552['code']===0x0)process['exit'](0x0);const _0x3e1287=Date['now']();_0x1a125a['push'](_0x3e1287);while(_0x1a125a['length']>0x0&&_0x3e1287-_0x1a125a[0x0]>CRASH_WINDOW_MS){_0x1a125a[_0x50b97a(0x289)]();}const _0x1d7006=_0x1a125a['length'];writeLastCrash({'timestamp':_0x3e1287,'exit_code':_0x310552[_0x50b97a(0x275)],'exit_signal':_0x310552['signal']||null,'fatal_line':_0x20c0ac,'raw_tail':_0x47ab65['join']('\x0a'),'consecutive_crashes':_0x1d7006}),console[_0x50b97a(0x1ce)]('[wrapper]\x20core\x20exite'+'d\x20code='+(_0x310552['code']??'')+(_0x310552['signal']?_0x50b97a(0x25c)+_0x310552['signal']:'')+'\x20('+_0x1d7006+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math[_0x50b97a(0x1be)](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x20c0ac)console['log'](_0x50b97a(0x21b)+':\x20'+_0x20c0ac);_0x1d7006>=MAX_CRASHES_IN_WINDOW&&(console[_0x50b97a(0x201)]('[wrapper]\x20core\x20faile'+'d\x20'+_0x1d7006+'\x20times\x20within\x20'+Math[_0x50b97a(0x1be)](CRASH_WINDOW_MS/0x3e8)+(_0x50b97a(0x206)+'record:\x20')+lastCrashFilePath()+('.\x20Restart\x20wrapper\x20ma'+'nually\x20after\x20the\x20und'+'erlying\x20issue\x20is\x20fix'+'ed.')),process['exit'](0x1)),console['log'](_0x50b97a(0x267)+'\x20in\x20'+_0xda4508+'ms'),await new Promise(_0x748062=>setTimeout(_0x748062,_0xda4508)),_0xda4508=Math[_0x50b97a(0x1bc)](_0xda4508*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x5b8b3d=a0_0x36245b,_0x555a5e=process['argv'][_0x5b8b3d(0x1e8)](0x2);if(_0x555a5e[0x0]==='--version'||_0x555a5e[0x0]==='-v'||_0x555a5e[0x0]===_0x5b8b3d(0x237)){printVersion();return;}if((_0x555a5e[0x0]==='status'||_0x555a5e[0x0]==='ls'||_0x555a5e[0x0]==='ps')&&!_0x555a5e['includes'](_0x5b8b3d(0x251))){console[_0x5b8b3d(0x1ce)](_0x5b8b3d(0x19d)+WRAPPER_VERSION);try{console['log'](_0x5b8b3d(0x24e)+(coreVersion()||'not\x20installed'));}catch{console['log']('core\x20not\x20installed');}}const _0x17becf=await selectFastNpmRegistry();await maybeUpdateWrapper(_0x555a5e,_0x17becf),await ensurePersistencePrompt(_0x555a5e);if(!shouldSupervise(_0x555a5e))directCore(_0x555a5e);await superviseCore(_0x555a5e);}main()['catch'](_0x408672=>{const _0x2280d8=a0_0x36245b;console['error'](_0x2280d8(0x221)+'r:\x20'+(_0x408672?.[_0x2280d8(0x223)]||String(_0x408672))),process[_0x2280d8(0x243)](0x1);});
2
+ 'use strict';const a0_0x17d9f0=a0_0x572c;(function(_0x3e7590,_0x3a9b3f){const _0x4269bd=a0_0x572c,_0x59c4fa=_0x3e7590();while(!![]){try{const _0x3e42c7=parseInt(_0x4269bd(0xe2))/0x1*(-parseInt(_0x4269bd(0x131))/0x2)+parseInt(_0x4269bd(0x16e))/0x3*(-parseInt(_0x4269bd(0x108))/0x4)+-parseInt(_0x4269bd(0xa4))/0x5*(parseInt(_0x4269bd(0x150))/0x6)+parseInt(_0x4269bd(0x117))/0x7*(-parseInt(_0x4269bd(0x135))/0x8)+-parseInt(_0x4269bd(0xa3))/0x9*(parseInt(_0x4269bd(0xc3))/0xa)+-parseInt(_0x4269bd(0x126))/0xb*(-parseInt(_0x4269bd(0x140))/0xc)+parseInt(_0x4269bd(0x13f))/0xd*(parseInt(_0x4269bd(0xd3))/0xe);if(_0x3e42c7===_0x3a9b3f)break;else _0x59c4fa['push'](_0x59c4fa['shift']());}catch(_0x1f9d4b){_0x59c4fa['push'](_0x59c4fa['shift']());}}}(a0_0x281a,0x2e415));var __create=Object[a0_0x17d9f0(0xa1)],__defProp=Object[a0_0x17d9f0(0xfe)],__getOwnPropDesc=Object[a0_0x17d9f0(0x10b)+a0_0x17d9f0(0x166)],__getOwnPropNames=Object[a0_0x17d9f0(0x180)],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object['prototype'][a0_0x17d9f0(0xe1)],__copyProps=(_0x403ae7,_0x102b1e,_0x372554,_0x475a5a)=>{const _0xd05d6c=a0_0x17d9f0;if(_0x102b1e&&typeof _0x102b1e===_0xd05d6c(0x15d)||typeof _0x102b1e==='function'){for(let _0x37fe47 of __getOwnPropNames(_0x102b1e))if(!__hasOwnProp[_0xd05d6c(0x11d)](_0x403ae7,_0x37fe47)&&_0x37fe47!==_0x372554)__defProp(_0x403ae7,_0x37fe47,{'get':()=>_0x102b1e[_0x37fe47],'enumerable':!(_0x475a5a=__getOwnPropDesc(_0x102b1e,_0x37fe47))||_0x475a5a[_0xd05d6c(0x174)]});}return _0x403ae7;},__toESM=(_0xcc1572,_0xff8813,_0x248109)=>(_0x248109=_0xcc1572!=null?__create(__getProtoOf(_0xcc1572)):{},__copyProps(_0xff8813||!_0xcc1572||!_0xcc1572[a0_0x17d9f0(0x121)]?__defProp(_0x248109,'default',{'value':_0xcc1572,'enumerable':!![]}):_0x248109,_0xcc1572)),import_child_process3=require('child_process'),fs=__toESM(require('fs'),0x1),import_module=require('module'),path2=__toESM(require('path'),0x1),readline=__toESM(require(a0_0x17d9f0(0x113)),0x1),import_child_process2=require('child_process'),import_fs=require('fs'),import_path=require(a0_0x17d9f0(0x18b)),import_child_process=require(a0_0x17d9f0(0x130)),DEFAULT_NPM_REGISTRY='https://registry.npm'+'js.org',CHINA_NPM_REGISTRY=a0_0x17d9f0(0x9f)+a0_0x17d9f0(0xe5),REGISTRY_PROBE_TIMEOUT_MS=0xbb8,REGISTRY_CACHE_TTL_MS=0xa*0x3c*0x3e8,selectedRegistryCache=null;function preferredNpmRegistry(){const _0x17c9a8=a0_0x17d9f0,_0x4f3821=explicitNpmRegistry();if(_0x4f3821)return _0x4f3821;if(selectedRegistryCache&&Date['now']()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x17c9a8(0xc0)];return isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY;}function npmRegistryCandidates(_0x3a6b22=preferredNpmRegistry()){const _0x46a6d1=explicitNpmRegistry();if(_0x46a6d1)return[_0x46a6d1];const _0x2ea969=normalizeRegistry(_0x3a6b22)||DEFAULT_NPM_REGISTRY,_0x5ecb32=_0x2ea969===CHINA_NPM_REGISTRY?DEFAULT_NPM_REGISTRY:CHINA_NPM_REGISTRY;return Array['from'](new Set([_0x2ea969,_0x5ecb32]));}async function selectFastNpmRegistry(_0xe21318=REGISTRY_PROBE_TIMEOUT_MS){const _0x2198c2=a0_0x17d9f0,_0x27c815=explicitNpmRegistry();if(_0x27c815)return rememberNpmRegistry(_0x27c815),_0x27c815;if(selectedRegistryCache&&Date[_0x2198c2(0x15f)]()-selectedRegistryCache['ts']<REGISTRY_CACHE_TTL_MS)return selectedRegistryCache[_0x2198c2(0xc0)];const _0x17153a=npmRegistryCandidates(isChineseLocale()?CHINA_NPM_REGISTRY:DEFAULT_NPM_REGISTRY),_0x2367e2=_0x17153a[_0x2198c2(0x14d)](()=>new AbortController());let _0x5aaa0f=-0x1;const _0x455620=_0x17153a['map']((_0x42bb1f,_0x5b7a28)=>probeRegistry200(_0x42bb1f,_0xe21318,_0x2367e2[_0x5b7a28][_0x2198c2(0xec)])[_0x2198c2(0xbf)](()=>({'registry':_0x42bb1f,'index':_0x5b7a28})));try{const _0x419c69=await Promise['any'](_0x455620);_0x5aaa0f=_0x419c69['index'];const _0x1f96d3=_0x419c69['registry'];return rememberNpmRegistry(_0x1f96d3),_0x1f96d3;}catch{const _0x51be3c=_0x17153a[0x0]||DEFAULT_NPM_REGISTRY;return rememberNpmRegistry(_0x51be3c),_0x51be3c;}finally{_0x2367e2['forEach']((_0x5c47db,_0xdef7ae)=>{const _0x470fbb=_0x2198c2;if(_0xdef7ae!==_0x5aaa0f)_0x5c47db[_0x470fbb(0x15a)]();});}}function rememberNpmRegistry(_0x4a1111){const _0x226dbc=normalizeRegistry(_0x4a1111);if(_0x226dbc)selectedRegistryCache={'registry':_0x226dbc,'ts':Date['now']()};}function npmRegistryArg(_0x1b1621=preferredNpmRegistry()){const _0x371c17=a0_0x17d9f0;return _0x371c17(0xa8)+(normalizeRegistry(_0x1b1621)||DEFAULT_NPM_REGISTRY);}function npmInstallCommand(_0x463d9d,_0x3010a5=preferredNpmRegistry()){return'npm\x20install\x20-g\x20'+_0x463d9d+'\x20'+npmRegistryArg(_0x3010a5);}function isChineseLocale(){const _0x2e48a9=a0_0x17d9f0,_0x3535fa=[process.env.LC_ALL,process.env.LC_MESSAGES,process.env.LANG,process.env.LANGUAGE][_0x2e48a9(0x106)](Boolean)['join']('\x20');if(/(^|[_.-])zh([_.-]|$)|chinese|china|cn\b/i['test'](_0x3535fa))return!![];try{const _0x4b9890=Intl[_0x2e48a9(0x158)]()[_0x2e48a9(0xc2)]()[_0x2e48a9(0x160)]||'';return/(^|-)zh($|-)|-CN\b/i[_0x2e48a9(0x168)](_0x4b9890);}catch{return![];}}function a0_0x572c(_0x55d094,_0x3621a9){_0x55d094=_0x55d094-0x9e;const _0x281a9a=a0_0x281a();let _0x572c93=_0x281a9a[_0x55d094];if(a0_0x572c['KOjxHb']===undefined){var _0x652e27=function(_0x25ffcc){const _0x17738e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x403ae7='',_0x102b1e='';for(let _0x372554=0x0,_0x475a5a,_0x37fe47,_0xcc1572=0x0;_0x37fe47=_0x25ffcc['charAt'](_0xcc1572++);~_0x37fe47&&(_0x475a5a=_0x372554%0x4?_0x475a5a*0x40+_0x37fe47:_0x37fe47,_0x372554++%0x4)?_0x403ae7+=String['fromCharCode'](0xff&_0x475a5a>>(-0x2*_0x372554&0x6)):0x0){_0x37fe47=_0x17738e['indexOf'](_0x37fe47);}for(let _0xff8813=0x0,_0x248109=_0x403ae7['length'];_0xff8813<_0x248109;_0xff8813++){_0x102b1e+='%'+('00'+_0x403ae7['charCodeAt'](_0xff8813)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x102b1e);};a0_0x572c['GQARZb']=_0x652e27,a0_0x572c['qCznoj']={},a0_0x572c['KOjxHb']=!![];}const _0x42285b=_0x281a9a[0x0],_0x4e49a9=_0x55d094+_0x42285b,_0x30be9b=a0_0x572c['qCznoj'][_0x4e49a9];return!_0x30be9b?(_0x572c93=a0_0x572c['GQARZb'](_0x572c93),a0_0x572c['qCznoj'][_0x4e49a9]=_0x572c93):_0x572c93=_0x30be9b,_0x572c93;}function explicitNpmRegistry(){return normalizeRegistry(process.env.WHALENT_NPM_REGISTRY||process.env.NPM_CONFIG_REGISTRY||'');}function normalizeRegistry(_0x504565){const _0x132379=a0_0x17d9f0;return String(_0x504565||'')[_0x132379(0xe8)]()['replace'](/\/+$/,'');}function probeRegistry200(_0x242eab,_0x1dadca,_0x2bd599){return new Promise((_0x618c3b,_0x385224)=>{const _0x191dc6=a0_0x572c;let _0x326c2e=![];const _0x128b9a=_0x385aa0=>{const _0x474508=a0_0x572c;if(_0x326c2e)return;_0x326c2e=!![],clearTimeout(_0x4d3e93),_0x2bd599?.['removeEventListener']('abort',_0x2c208e);if(!_0x2c0b2f[_0x474508(0xb0)])try{_0x2c0b2f['kill'](_0x474508(0x196));}catch{}if(_0x385aa0)_0x385224(_0x385aa0);else _0x618c3b();},_0x2c208e=()=>{_0x128b9a(new Error('registry\x20probe\x20abort'+'ed'));},_0x4d3e93=setTimeout(()=>{_0x128b9a(new Error('registry\x20probe\x20timed'+'\x20out'));},_0x1dadca);_0x4d3e93['unref']?.();const _0x2c0b2f=(0x0,import_child_process[_0x191dc6(0xad)])(process['execPath'],['-e',REGISTRY_PROBE_SCRIPT,normalizeRegistry(_0x242eab)||DEFAULT_NPM_REGISTRY,String(_0x1dadca)],{'stdio':_0x191dc6(0x18f),'shell':![],'windowsHide':!![]});_0x2c0b2f['on'](_0x191dc6(0x184),_0x128b9a),_0x2c0b2f['on']('exit',_0x35b054=>{const _0xc6cf44=_0x191dc6;if(_0x35b054===0x0)_0x128b9a();else _0x128b9a(new Error(_0xc6cf44(0x125)+_0xc6cf44(0x163)+(_0x35b054??'signal')));}),_0x2bd599?.[_0x191dc6(0x16d)](_0x191dc6(0x15a),_0x2c208e,{'once':!![]});if(_0x2bd599?.['aborted']){_0x2c208e();return;}});}var REGISTRY_PROBE_SCRIPT=a0_0x17d9f0(0x167)+'e(\x27http\x27);\x0aconst\x20htt'+'ps\x20=\x20require(\x27https\x27'+a0_0x17d9f0(0x17e)+a0_0x17d9f0(0x12c)+a0_0x17d9f0(0xc7)+a0_0x17d9f0(0xf2)+a0_0x17d9f0(0x111)+'ess.argv[2]\x20||\x203000)'+a0_0x17d9f0(0x178)+'=\x20new\x20URL(\x27/-/ping\x27,'+'\x20registry\x20+\x20\x27/\x27);\x0aco'+a0_0x17d9f0(0x13e)+'ol\x20===\x20\x27https:\x27\x20?\x20ht'+'tps\x20:\x20http;\x0alet\x20done'+a0_0x17d9f0(0xcf)+'sh\x20=\x20(code)\x20=>\x20{\x0a\x20\x20i'+'f\x20(done)\x20return;\x0a\x20\x20d'+a0_0x17d9f0(0xfb)+'imeout(timer);\x0a\x20\x20try'+a0_0x17d9f0(0xa2)+'catch\x20{}\x0a\x20\x20process.e'+a0_0x17d9f0(0x110)+a0_0x17d9f0(0x147)+')\x20=>\x20finish(3),\x20time'+a0_0x17d9f0(0x11c)+'mod.request(url,\x20{\x0a\x20'+'\x20method:\x20\x27GET\x27,\x0a\x20\x20ti'+a0_0x17d9f0(0x18e)+'agent:\x20false,\x0a\x20\x20head'+a0_0x17d9f0(0x189)+a0_0x17d9f0(0x17a)+'stry-probe\x27,\x20Accept:'+'\x20\x27application/json,t'+'ext/plain,*/*\x27\x20},\x0a},'+a0_0x17d9f0(0x119)+'sume();\x0a\x20\x20res.on(\x27en'+a0_0x17d9f0(0xf6)+a0_0x17d9f0(0x172)+'?\x200\x20:\x202));\x0a\x20\x20res.on('+'\x27error\x27,\x20()\x20=>\x20finis'+a0_0x17d9f0(0x161)+'imeout\x27,\x20()\x20=>\x20finis'+'h(3));\x0areq.on(\x27error'+'\x27,\x20()\x20=>\x20finish(4));'+a0_0x17d9f0(0x104),INSTALL_HINT={'codex':'npm\x20install\x20-g\x20@open'+a0_0x17d9f0(0x14f),'claude':'npm\x20install\x20-g\x20@anth'+'ropic-ai/claude-code','opencode':a0_0x17d9f0(0xb2)+'ode-ai','whalent':npmInstallCommand(a0_0x17d9f0(0xfd))+a0_0x17d9f0(0xe7)};function isWindowsCmdFile(_0x35a9fb){const _0x16726c=a0_0x17d9f0;return process['platform']===_0x16726c(0xb8)&&/\.(cmd|bat)$/i[_0x16726c(0x168)](_0x35a9fb||'');}function quoteCmdArg(_0xa80d16){const _0x2c0e44=String(_0xa80d16??'');if(_0x2c0e44&&!/[\s"&|<>^%]/['test'](_0x2c0e44))return _0x2c0e44;return'\x22'+_0x2c0e44['replace'](/(["^&|<>%])/g,'^$1')+'\x22';}function cmdFallbackArgs(_0x154602,_0x254d9c){const _0x3c402f=a0_0x17d9f0;return['/d','/s','/c',[quoteCmdArg(_0x154602),..._0x254d9c['map'](quoteCmdArg)][_0x3c402f(0x16a)]('\x20')];}function resolveExecutablePath(_0x311fed){const _0x1e014f=a0_0x17d9f0;if(!_0x311fed)return null;if(_0x311fed['includes']('/')||_0x311fed[_0x1e014f(0x11e)]('\x5c')||/\.[A-Za-z0-9]{1,5}$/[_0x1e014f(0x168)](_0x311fed))return(0x0,import_fs['existsSync'])(_0x311fed)?_0x311fed:_0x311fed;const _0xac25d1=process['platform']===_0x1e014f(0xb8),_0x37cf9a=_0xac25d1?'where.exe':_0x1e014f(0xaa);try{const _0xecf575=(0x0,import_child_process2['spawnSync'])(_0x37cf9a,[_0x311fed],{'encoding':_0x1e014f(0x107),'timeout':0xbb8,'shell':![]});if(_0xecf575['status']===0x0){const _0xb7dbf5=(_0xecf575[_0x1e014f(0xfa)]||'')['trim']()[_0x1e014f(0x164)](/\r?\n/)[_0x1e014f(0x106)](Boolean);if(_0xb7dbf5[_0x1e014f(0xed)]===0x0)return null;if(_0xac25d1)for(const _0x4a7d85 of[_0x1e014f(0x102),_0x1e014f(0xb1),'.bat','.ps1']){const _0x5803dd=_0xb7dbf5['find'](_0x16c9da=>_0x16c9da['toLowerCase']()['endsWith'](_0x4a7d85));if(_0x5803dd)return _0x5803dd;}return _0xb7dbf5[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x4cdb78){const _0x51079c=a0_0x17d9f0;if(process[_0x51079c(0xb4)]!=='win32')return null;if(!/\.(cmd|bat)$/i['test'](_0x4cdb78))return null;let _0x1068ee;try{_0x1068ee=(0x0,import_fs[_0x51079c(0x17f)])(_0x4cdb78,_0x51079c(0x107));}catch{return null;}const _0x41ee2d=_0x1068ee['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x41ee2d){const _0x4cbc40=(0x0,import_path['resolve'])((0x0,import_path['dirname'])(_0x4cdb78),_0x41ee2d[0x2]);if((0x0,import_fs[_0x51079c(0x18d)])(_0x4cbc40))return{'type':'node','path':_0x4cbc40};}const _0x1d5592=_0x1068ee['match'](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x1d5592){const _0x4db7ea=(0x0,import_path[_0x51079c(0x10a)])((0x0,import_path[_0x51079c(0xca)])(_0x4cdb78),_0x1d5592[0x2]);if((0x0,import_fs['existsSync'])(_0x4db7ea))return{'type':_0x51079c(0x157),'path':_0x4db7ea};}return null;}function safeSpawnSync(_0x53dc3f,_0x106a60,_0x4dec29={}){const _0x420997=a0_0x17d9f0,_0x1499de=unwrapWindowsCmdShim(_0x53dc3f);if(_0x1499de?.['type']===_0x420997(0xd9))return(0x0,import_child_process2['spawnSync'])(process['execPath'],[_0x1499de[_0x420997(0x18b)],..._0x106a60],_0x4dec29);if(_0x1499de?.[_0x420997(0x10e)]==='exe')return(0x0,import_child_process2['spawnSync'])(_0x1499de['path'],_0x106a60,_0x4dec29);if(isWindowsCmdFile(_0x53dc3f))return(0x0,import_child_process2['spawnSync'])(process.env.ComSpec||_0x420997(0xf3),cmdFallbackArgs(_0x53dc3f,_0x106a60),_0x4dec29);return(0x0,import_child_process2[_0x420997(0x116)])(_0x53dc3f,_0x106a60,_0x4dec29);}var os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x17d9f0(0x18b)),0x1),PROFILE_ROOT=path[a0_0x17d9f0(0x16a)](os[a0_0x17d9f0(0xd7)](),a0_0x17d9f0(0xd4),a0_0x17d9f0(0x12a)),WHALENT_AGENT_DEFAULT_HOME=path['join'](os[a0_0x17d9f0(0xd7)](),a0_0x17d9f0(0xd4)),WHALENT_SHARED_HELPERS_DIR=path[a0_0x17d9f0(0x16a)](WHALENT_AGENT_DEFAULT_HOME,'helpers'),WRAPPER_PKG_NAME='@whalent/agent',CORE_PKG_NAME=a0_0x17d9f0(0xd6),SUPERVISED_RESTART_CODE=0x4b,DAEMON_REPLACED_EXIT_CODE=0x4f,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 _0x32f2d9=a0_0x17d9f0;return path2[_0x32f2d9(0x16a)](configDir(),'last-crash.json');}function writeLastCrash(_0x4d3f69){const _0x2c8ca8=a0_0x17d9f0;try{fs[_0x2c8ca8(0x129)](configDir(),{'recursive':!![]});const _0x58b748={..._0x4d3f69,'reported':![]};fs['writeFileSync'](lastCrashFilePath(),JSON['stringify'](_0x58b748,null,0x2),'utf-8');}catch{}}function readWrapperVersion(){const _0x5932d8=a0_0x17d9f0;try{const _0x2c3ef1=JSON['parse'](fs['readFileSync'](path2['join'](wrapperBaseDir(),'..',_0x5932d8(0x109)),_0x5932d8(0x107)));return String(_0x2c3ef1[_0x5932d8(0x136)]||'0.0.0');}catch{return _0x5932d8(0x15e);}}function readUpgradeState(){const _0x29ae7f=a0_0x17d9f0;try{return JSON[_0x29ae7f(0x146)](fs['readFileSync'](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0x375c4c){const _0x343ecd=a0_0x17d9f0;try{fs['mkdirSync'](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON['stringify']({..._0x375c4c,'updated_at':Date[_0x343ecd(0x15f)]()},null,0x2),'utf-8');}catch{}}function run(_0x3ca1ff,_0x4375cd,_0x5b3f01=process.env){const _0x2fa289=a0_0x17d9f0;return safeSpawnSync(_0x3ca1ff,_0x4375cd,{'encoding':_0x2fa289(0x10c),'timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x5b3f01,'shell':![]});}function runNpmView(_0x25ef2b){const _0x3f7dc5=a0_0x17d9f0,_0x530106=resolveExecutablePath('npm');if(!_0x530106)return{'status':0x7f,'stdout':'','stderr':_0x3f7dc5(0xf5),'error':new Error(_0x3f7dc5(0xf5))};return safeSpawnSync(_0x530106,_0x25ef2b,{'encoding':'utf8','timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x2983d5=a0_0x17d9f0,_0x5e66e8=resolveExecutablePath(_0x2983d5(0x175));if(!_0x5e66e8)return'';const _0x23c831=run(_0x5e66e8,[_0x2983d5(0xd5),'-g']);if(_0x23c831['status']!==0x0)return'';return String(_0x23c831['stdout']||'')[_0x2983d5(0xe8)]();}function compareSemver(_0x525f14,_0xbc81f1){const _0x1d2d95=a0_0x17d9f0,_0x35db59=String(_0x525f14||'')[_0x1d2d95(0xc8)](/^v/,'')['split'](/[.-]/)[_0x1d2d95(0x14d)](_0x27dfd5=>Number[_0x1d2d95(0x177)](_0x27dfd5,0xa)||0x0),_0x5d75ff=String(_0xbc81f1||'')['replace'](/^v/,'')['split'](/[.-]/)[_0x1d2d95(0x14d)](_0x5a35a5=>Number[_0x1d2d95(0x177)](_0x5a35a5,0xa)||0x0);for(let _0x2b832a=0x0;_0x2b832a<Math[_0x1d2d95(0x139)](_0x35db59[_0x1d2d95(0xed)],_0x5d75ff[_0x1d2d95(0xed)],0x3);_0x2b832a++){const _0x1133f9=_0x35db59[_0x2b832a]||0x0,_0x289921=_0x5d75ff[_0x2b832a]||0x0;if(_0x1133f9>_0x289921)return 0x1;if(_0x1133f9<_0x289921)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x436713=a0_0x17d9f0,_0xc40565=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')['trim']()[_0x436713(0xef)]();return _0xc40565==='1'||_0xc40565==='true'||_0xc40565===_0x436713(0x142)||_0xc40565==='on';}function latestWrapperVersion(_0x2db5ed){const _0x4ec642=a0_0x17d9f0;let _0x102b17={'version':'','registry':_0x2db5ed};for(const _0x199b03 of npmRegistryCandidates(_0x2db5ed)){const _0x18fc63=runNpmView(['view',WRAPPER_PKG_NAME+'@latest',_0x4ec642(0x136),npmRegistryArg(_0x199b03)]);if(_0x18fc63['status']!==0x0)continue;const _0x2c2b1b=String(_0x18fc63['stdout']||'')['trim']()[_0x4ec642(0x164)](/\r?\n/)['filter'](Boolean)['pop']()||'';_0x2c2b1b&&(!_0x102b17[_0x4ec642(0x136)]||compareSemver(_0x2c2b1b,_0x102b17['version'])>0x0)&&(_0x102b17={'version':_0x2c2b1b,'registry':_0x199b03});}return _0x102b17;}function installWrapperVersion(_0x432cc1,_0x33710d){const _0x4f20b7=a0_0x17d9f0,_0x472943=resolveExecutablePath('npm');if(!_0x472943)return{'ok':![],'output':_0x4f20b7(0x192)+'H'};const _0x2b0cee=run(_0x472943,['install','-g',WRAPPER_PKG_NAME+'@'+_0x432cc1,npmRegistryArg(_0x33710d)]),_0x10554d=((_0x2b0cee['stdout']||'')+'\x0a'+(_0x2b0cee[_0x4f20b7(0x188)]||''))['trim']();return{'ok':_0x2b0cee[_0x4f20b7(0xe3)]===0x0,'output':_0x10554d};}async function maybeUpdateWrapper(_0x4f22e4,_0x2560ff){const _0x2148e7=a0_0x17d9f0;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x436145=latestWrapperVersion(_0x2560ff),_0x1e6644=_0x436145['version'];if(!_0x1e6644||compareSemver(_0x1e6644,WRAPPER_VERSION)<=0x0)return![];console[_0x2148e7(0x185)](_0x2148e7(0x179)+_0x2148e7(0x123)+WRAPPER_VERSION+_0x2148e7(0xa7)+_0x1e6644),console['warn'](_0x2148e7(0xdc)+'\x20'+WRAPPER_PKG_NAME+'@'+_0x1e6644+_0x2148e7(0x169)+_0x436145[_0x2148e7(0xc0)]+(_0x2148e7(0xdf)+_0x2148e7(0x194)));const _0x84d6d8=installWrapperVersion(_0x1e6644,_0x436145['registry']);if(!_0x84d6d8['ok']){console['warn']('[wrapper]\x20wrapper\x20up'+'date\x20failed;\x20continu'+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x84d6d8['output'])console['warn'](_0x84d6d8[_0x2148e7(0xd2)][_0x2148e7(0x164)](/\r?\n/)['slice'](-0xc)['join']('\x0a'));return console['warn'](_0x2148e7(0xc9)+'ate:\x20'+npmInstallCommand(WRAPPER_PKG_NAME+'@'+_0x1e6644,_0x436145[_0x2148e7(0xc0)])),![];}process['platform']===_0x2148e7(0xb8)&&(console[_0x2148e7(0x185)]('[wrapper]\x20wrapper\x20up'+_0x2148e7(0xb7)+_0x1e6644+'.'),console[_0x2148e7(0x185)](_0x2148e7(0x16c)+_0x2148e7(0xb9)+_0x2148e7(0xa0)+'m\x20from\x20this\x20process.'),console['warn']('[wrapper]\x20请重新输入上一条\x20w'+'halent\x20命令以使用新版本。'),process['exit'](0x0));console['warn'](_0x2148e7(0x13c)+_0x2148e7(0xb7)+_0x1e6644+';\x20restarting\x20wrapper');const _0x457235=process['argv'][0x1],_0x53f9c1=(0x0,import_child_process3[_0x2148e7(0x116)])(process[_0x2148e7(0x155)],[_0x457235,..._0x4f22e4],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x1e6644},'shell':![]});process[_0x2148e7(0xae)](_0x53f9c1[_0x2148e7(0xe3)]??0x0);}function findCoreScript(){const _0x11cfc2=a0_0x17d9f0,_0x56b46f=String(process.env.WHALENT_CORE_ENTRY||'')[_0x11cfc2(0xe8)](),_0x2ea14b=['1',_0x11cfc2(0x159),_0x11cfc2(0x142),'on'][_0x11cfc2(0x11e)](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')[_0x11cfc2(0xe8)]()[_0x11cfc2(0xef)]());if(_0x56b46f&&_0x2ea14b&&fs['existsSync'](_0x56b46f))return _0x56b46f;const _0x18371b=[],_0x13dfd8=_0x2dded4=>{const _0x34ee79=_0x11cfc2;if(fs['existsSync'](_0x2dded4)&&!_0x18371b[_0x34ee79(0x11e)](_0x2dded4))_0x18371b[_0x34ee79(0x122)](_0x2dded4);};if(_0x56b46f)_0x13dfd8(_0x56b46f);const _0x10c5da=npmRootGlobal();if(_0x10c5da){const _0x1639c5=path2['join'](_0x10c5da,_0x11cfc2(0xa5),_0x11cfc2(0xbb),'dist',_0x11cfc2(0xf8));_0x13dfd8(_0x1639c5);}const _0x2eae79=path2[_0x11cfc2(0x16a)](wrapperBaseDir(),'core.cjs');_0x13dfd8(_0x2eae79);const _0x3dc2ab=path2[_0x11cfc2(0x16a)](wrapperBaseDir(),'..',_0x11cfc2(0x128),_0x11cfc2(0x151),_0x11cfc2(0x118),'index.cjs');_0x13dfd8(_0x3dc2ab);if(_0x18371b[_0x11cfc2(0xed)]>0x0)return _0x18371b['map']((_0x5b6c36,_0x1ad22f)=>({'candidate':_0x5b6c36,'index':_0x1ad22f,'version':coreVersion(_0x5b6c36)}))['sort']((_0x7bde97,_0x38c390)=>{const _0x17a136=_0x11cfc2,_0x132736=compareSemver(_0x38c390[_0x17a136(0x136)],_0x7bde97['version']);if(_0x132736!==0x0)return _0x132736;return _0x38c390['index']-_0x7bde97['index'];})[0x0][_0x11cfc2(0x101)];throw new Error('whalent\x20core\x20runtime'+_0x11cfc2(0x137)+'@whalent/agent-core\x20'+_0x11cfc2(0xf4)+'agent');}function coreVersion(_0x317ee4=findCoreScript()){const _0x57b47d=a0_0x17d9f0,_0x54316a=(0x0,import_child_process3[_0x57b47d(0x116)])(process[_0x57b47d(0x155)],[_0x317ee4,'--version'],{'encoding':'utf8','timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x3b24e1=(_0x54316a['stdout']||'')+'\x0a'+(_0x54316a['stderr']||'');return _0x3b24e1['match'](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x6b4bfb){const _0x57e262=a0_0x17d9f0;try{return fs['accessSync'](_0x6b4bfb,fs['constants'][_0x57e262(0x15c)]),!![];}catch{return![];}}function shellQuote(_0x55bb45){const _0x4aad97=a0_0x17d9f0;return'\x27'+_0x55bb45[_0x4aad97(0xc8)](/'/g,_0x4aad97(0x12d))+'\x27';}function coreNodePtySpawnHelperPath(_0x1d58e0){const _0x2973e1=a0_0x17d9f0;if(process[_0x2973e1(0xb4)]!=='darwin')return'';try{const _0x40406f=(0x0,import_module[_0x2973e1(0x193)])(_0x1d58e0),_0x4d136c=_0x40406f['resolve']('node-pty'),_0x189cf9=path2['resolve'](path2[_0x2973e1(0xca)](_0x4d136c),'..');return path2[_0x2973e1(0x16a)](_0x189cf9,_0x2973e1(0xde),'darwin-'+process['arch'],_0x2973e1(0x14a));}catch{return'';}}function checkMacNodePtySpawnHelper(_0x2ae6a7){const _0x395b58=a0_0x17d9f0,_0xc4a984=coreNodePtySpawnHelperPath(_0x2ae6a7);if(!_0xc4a984||CHECKED_PTY_HELPERS[_0x395b58(0x100)](_0xc4a984))return;CHECKED_PTY_HELPERS[_0x395b58(0xac)](_0xc4a984);if(!fs['existsSync'](_0xc4a984)){console[_0x395b58(0x185)]('[wrapper]\x20macOS\x20node'+_0x395b58(0x14b)+'t\x20found:\x20'+_0xc4a984);return;}if(isExecutable(_0xc4a984))return;try{const _0x353265=fs[_0x395b58(0x103)](_0xc4a984)['mode'];fs[_0x395b58(0xd0)](_0xc4a984,_0x353265|0x1ed);}catch{}if(isExecutable(_0xc4a984)){console[_0x395b58(0x185)]('[wrapper]\x20fixed\x20macO'+_0x395b58(0x16f)+_0x395b58(0xdd)+_0xc4a984);return;}console[_0x395b58(0x185)]('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20is'+'\x20not\x20executable:\x20'+_0xc4a984),console[_0x395b58(0x185)](_0x395b58(0x183)+_0x395b58(0x9e)+'PTY\x20startup:'),console[_0x395b58(0x185)]('\x20\x20HELPER='+shellQuote(_0xc4a984)),console['warn'](_0x395b58(0xaf)),console['warn']('\x20\x20chmod\x20+x\x20\x22$HELPER\x22');}function printVersion(){const _0x3e2d18=a0_0x17d9f0;let _0x403ad6='';try{_0x403ad6=coreVersion();}catch{}console[_0x3e2d18(0xa9)]('whalent-agent\x20'+WRAPPER_VERSION),console[_0x3e2d18(0xa9)](_0x3e2d18(0xeb)+WRAPPER_VERSION),console[_0x3e2d18(0xa9)](_0x3e2d18(0x17d)+(_0x403ad6||'not\x20installed'));}function detectPersistenceContext(){const _0x5b8777=a0_0x17d9f0;let _0x121af6='';if(process.env.STY)_0x121af6='screen';else{if(process.env.TMUX)_0x121af6='tmux';else{if(process.env.INVOCATION_ID||process.env.SYSTEMD_EXEC_PID)_0x121af6=_0x5b8777(0xc1);else{if(process.env.PM2_HOME)_0x121af6='pm2';else process['platform']!=='win32'&&typeof process['ppid']==='number'&&process[_0x5b8777(0x141)]===0x1&&(_0x121af6=_0x5b8777(0xc1));}}}return{'inSession':_0x121af6,'hasScreen':process['platform']===_0x5b8777(0xb8)?![]:!!resolveExecutablePath(_0x5b8777(0x10f)),'hasTmux':process['platform']===_0x5b8777(0xb8)?![]:!!resolveExecutablePath(_0x5b8777(0x11b))};}function persistenceCheckSkipped(){const _0x4913c0=a0_0x17d9f0,_0x45f461=String(process.env.WHALENT_SKIP_PERSISTENCE_CHECK||process.env.WHALENT_NO_PERSISTENCE_CHECK||'')[_0x4913c0(0xe8)]()[_0x4913c0(0xef)]();return _0x45f461==='1'||_0x45f461==='true'||_0x45f461===_0x4913c0(0x142)||_0x45f461==='on';}function persistenceInstallHint(){const _0x2e7f67=a0_0x17d9f0,_0x42ee37=[];if(process[_0x2e7f67(0xb4)]==='darwin')_0x42ee37['push']('\x20\x20#\x20macOS:\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2e7f67(0xa6));else process[_0x2e7f67(0xb4)]===_0x2e7f67(0xe6)&&(_0x42ee37[_0x2e7f67(0x122)](_0x2e7f67(0x143)+_0x2e7f67(0xb5)+_0x2e7f67(0x11f)),_0x42ee37['push']('\x20\x20#\x20CentOS\x20/\x20Rocky:\x20'+_0x2e7f67(0x145)+_0x2e7f67(0x120)+_0x2e7f67(0xd1)+_0x2e7f67(0x12b)),_0x42ee37['push'](_0x2e7f67(0x176)+'\x20sudo\x20apk\x20add\x20screen'),_0x42ee37['push']('\x20\x20#\x20Arch:\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+'\x20sudo\x20pacman\x20-S\x20scre'+'en'));return _0x42ee37[_0x2e7f67(0x122)](_0x2e7f67(0x17b)+_0x2e7f67(0xe0)+'\x20screen\x20-S\x20whalent\x20\x20'+_0x2e7f67(0x187)+'e)'),_0x42ee37;}function a0_0x281a(){const _0x4217e3=['r2f0zxDHEsbYzwDPC3rLCMvKig0','mv0GFhWGjYCPlNjLCgXHy2uOl1W','CMvWBgfJzq','w3DYyxbWzxjDie1HBNvHBcb1Cgq','zgLYBMfTzq','DgfYz2v0x3zLCNnPB24','B3jLoIa','ioAjMoEUOq','Aw5tzxnZAw9U','id0GzMfSC2u7cMnVBNn0igzPBMK','y2HTB2rtEw5J','zg8Gzg5MigLUC3rHBgWGlxKGC2m','B3v0Chv0','mtm0otG4Bfj6CunK','lNDOywXLBNqTywDLBNq','CM9VDa','qhDOywXLBNqVywDLBNqTy29Yzq','Ag9TzwrPCG','zwqU','BM9Kzq','w3DYyxbWzxjDihjLC3rHCNrPBMC','u1rftKnfx0nirunlpthJGii','w3DYyxbWzxjDigLUC3rHBgXPBMC','CgvYigv4zwn1DgfIBguGyML0oIa','ChjLyNvPBgrZ','igjLzM9YzsbZDgfYDgLUzYbJB3i','BNnPzguGC2nYzwvUlcbLlMCUoIa','AgfZt3DUuhjVCgvYDhK','ndf1C2frs1y','C3rHDhvZ','A2LSBa','BwLYCM9YlMnVBq','BgLUDxG','ic0TChjLzMvYlw9UBgLUzq','DhjPBq','w3DYyxbWzxjDignVCMuGDxbNCMe','y2XVC2u','D3jHChbLCIa','C2LNBMfS','BgvUz3rO','C2XPy2u','Dg9mB3DLCKnHC2u','iow3SUwUIEIJHE+8Jos9HUw9K+wjJEs4JEwCQoE7IoERR+wKJEEuQowzQoMhJoI/KoIHJooaGG','AgfZu2nYzwvU','lYSKlYWGjYCPoWPJB25ZDcb0Aw0','y21KlMv4zq','B3iGCMvIDwLSzcbaD2HHBgvUDc8','BNbTig5VDcbMB3vUza','zcCSicGPid0+igzPBMLZAcHYzxm','zcbJB2rLpq','Aw5KzxGUy2PZ','Bw9Uig9UihrOzsbZyw1LihvZzxi','C3rKB3v0','B25Lid0GDhj1ztSkicbJBgvHCLq','w3DYyxbWzxjDioAiLUIUVUE9RIbxsefmru4','qhDOywXLBNqVywDLBNq','zgvMAw5LuhjVCgvYDhK','w3DYyxbWzxjDioAYOEACIEE7IoERR+s/NEA0U++8JoAwREw8Gca','AgfZ','y2fUzgLKyxrL','lMv4zq','C3rHDfn5BMm','cNjLCs5LBMqOktSk','AgfZvg11Ea','zMLSDgvY','DxrMltG','mtC0mZK2A29KqLDp','CgfJA2fNzs5QC29U','CMvZB2X2zq','z2v0t3DUuhjVCgvYDhLezxnJCMK','DxrMoa','DcdIHPiG5zYOihnJCMvLBIdPH4WGD2HHBgu','DhLWzq','C2nYzwvU','EgL0kgnVzguPoWP9oWPJB25ZDca','zw91De1Zid0GtNvTyMvYkhbYB2m','AxnuvfK','CMvHzgXPBMu','CM91BMq','BIb1BMTUB3DU','C3bHD25tEw5J','mJa4ntntDwzRsM8','zgLZDa','icHYzxmPid0+ihSkicbYzxmUCMu','w3DYyxbWzxjDihn0yxj0Aw5Nigm','Dg11Ea','B3v0txmPoWPJB25ZDcbYzxeGpsa','y2fSBa','Aw5JBhvKzxm','BcaTEsbZy3jLzw4','ihnJCMvLBIaGicaGiYbVCJOGC3u','x19LC01VzhvSzq','ChvZAa','AwXHyMXLoIa','CM9SBgjHy2TFzMfPBgvK','CMvNAxn0CNKGChjVyMuGzMfPBgu','mtK2ovPNwgP5zG','w3DYyxbWzxjDiow3SUAmIEEuQoAiT+IMGEAXGUwpLUA2IowqR+wkQa','CgfJA2fNzxm','BwTKAxjtEw5J','ChjVzMLSzxm','CMvLBG','u3rYAw5NkhbYB2nLC3mUyxjNDLS','j1WNjW','CJOG','D3jPDgu','y2HPBgrFChjVy2vZCW','odG4nKP3t3nyAG','w3DYyxbWzxjDios4GoAxPUAwREw8Gcbtu0GG5OIw','AwqGBM90igjLy29TzsbOzwfSDgG','5ywZ6zET57Ui56UV77YmzgfLBw9Uios8MUIIQYbtsuDivq','ota0ENvMBNjY','DMvYC2LVBG','ig5VDcbMB3vUzdSGAw5ZDgfSBca','zgfLBw9Ulw1JCa','Bwf4','Aw5ZDgfSBgvKx3zLCNnPB24','CMvZDw1L','w3DYyxbWzxjDihDYyxbWzxiGDxa','5zMO5OIw5l+D5OYb57Ui56UV56Qx5y+J5OMt5BYa44cc','BNn0ig1Vzca9ihvYBc5WCM90B2m','mty1mwnrwvnwAa','mtiXntzmsu5XDgK','ChbPza','EwvZ','icaJierLyMLHBIaVifvIDw50DtO','w3DYyxbWzxjDifDPBMrVD3mG5lIk5lIn','ihn1zg8GExvTigLUC3rHBgWGlxK','CgfYC2u','DgLTzxiGpsbZzxruAw1LB3v0kcG','w3DYyxbWzxjDignVCMuGzxHPDgu','Aw5OzxjPDa','C3bHD24TAgvSCgvY','lxb0EsbZCgf3BI1OzwXWzxiGBM8','zguGAgvHBhrOEtOG','BwfW','w3DYyxbWzxjDioAwREw8Gcbtu0GGlYdLHBm','ywKVy29KzxG','mZe4nJK2rhf6DxHk','y29Yzq','w3DYyxbWzxjDihjVBgXPBMCGyMe','y29Kzq','CxvLC3rPB24','zxHLy1bHDgG','ywnR','zxHL','rgf0zvrPBwvgB3jTyxq','Dhj1zq','ywjVCNq','CMvLBIdPH4ZOV5dOOyWGD2HHBgvUDa','wf9psW','B2jQzwn0','mc4WlJa','BM93','Bg9JywXL','AcG0ksK7cN0PoWPYzxeUB24Oj3q','ios8MUIVNEs4Rq','zdOGzxHPDd0','C3bSAxq','w3DYyxbWzxjDiow9K+wjJEs4JEAyR+s6Pos6KUw8JYbZAa','ChrVCG','cMnVBNn0igH0DhaGpsbYzxf1Axi','DgvZDa','igzYB20G','AM9PBG','icaGicaGicaGicaGihrTDxGGBMu','w3DYyxbWzxjDifDPBMrVD3mGy2e','ywrKrxzLBNrmAxn0zw5LCG','mtj6rKvJuhi','uYbUB2rLlxb0EsbZCgf3BI1OzwW','5l2/55sOifDPBMrVD3mG5lU75yQH6k6H5yIs44cb5PYn5yQH566H55cg','cLT3CMfWCgvYxsdML6dOVPpLHAxVViZPU5JORQtNU6FNU63LKk8','lNn0yxr1C0nVzguGpt09idiWmca','y2SGy29Yzsb0BYa','zw51BwvYywjSzq','BNbT','icaJiefSCgLUztOGicaGicaGica','CgfYC2vjBNq','ihX8idmWmda7cMnVBNn0ihvYBca','w3DYyxbWzxjDihvWzgf0zsbHDMe','icD3AgfSzw50lwfNzw50lxjLz2K','icaJifrOzw4GCMuTyxr0ywnOigK','572UifDiquXftLrFu0Tjuf9qrvjtsq','y29Yzsa','ktSky29UC3qGCMvNAxn0CNKGpsa','CMvHzezPBgvtEw5J','z2v0t3DUuhjVCgvYDhLoyw1LCW','u0Lhsu5u','BM90igLUC3rHBgXLza','w3DYyxbWzxjDifj1BIb0AgLZig8','zxjYB3i','D2fYBG','ls1Yzxn1Bwu','khj1BIaND2HHBgvUDcCGAw5ZAwq','C3rKzxjY','zxjZoIb7icDvC2vYlufNzw50jZO','AgvHBhrOEq','Cgf0Aa','5BEY5zYOia','zxHPC3rZu3LUyW','BwvVDxq6ihrPBwvVDxrnCYWkica','AwDUB3jL','vf9ts0Lqx1bfuLnju1rftKnfx0m','6kAb5RgcihnJCMvLBIaVihrTDxJVVjVLSiBKVB/NLkG','BNbTig5VDcbMB3vUzcbVBIbqqvq','y3jLyxrLuMvXDwLYzq','zs4UlG','ls1OzwXW','u0Lhvevstq','BMnLihrVigzPEcb0zxjTAw5HBc8','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','ihrOzsb1CgrHDgvKig5WBsbZAgK','y3jLyxrL','ihSGCMvXlMrLC3rYB3KOktSGFsa','mJaZnhLzu3r3vq','mJbyrKvxCKO','qhDOywXLBNq','igjYzxCGAw5ZDgfSBcbZy3jLzw4','ic0+ia','ls1YzwDPC3rYEt0','Bg9N','D2HPy2G','q0Hfq0S9msdLVlRLIlBOT7pOV4FMRAtMO4dMN6xJGii','ywrK','C3bHD24','zxHPDa','icbSCYaTBcaIjeHftfbfuIi','A2LSBgvK','lMnTza','BNbTigLUC3rHBgWGlwCGB3bLBMm','w3DYyxbWzxjDioAJGoA1I+wiSca','CgXHDgzVCM0','ihn1zg8Gyxb0lwDLDcbPBNn0ywW','5zMO5lUL5A6E546W5l+D5Rs777YA','zgf0zwqGDg8G','D2LUmZi','BM5VDcbZywzLBhKGCMuTzw50zxi','w3DYyxbWzxjDigrHzw1VBIbYzxa','ywDLBNqTy29Yzq','zNvUy3rPB24','BwLU','BwvZC2fNzq','DgHLBG','CMvNAxn0CNK','C3LZDgvTza','CMvZB2X2zwrpChrPB25Z','mtm3ntbNtefZy1K','zgf0yq','C3rKAw4'];a0_0x281a=function(){return _0x4217e3;};return a0_0x281a();}var PERSISTENCE_PROMPT_TIMEOUT_MS=0x1388;async function confirmContinueWithoutPersistence(){const _0x31a342=a0_0x17d9f0;if(!process[_0x31a342(0xc5)][_0x31a342(0x112)])return!![];return new Promise(_0x4ab31e=>{const _0x53443e=_0x31a342,_0x50ef42=readline['createInterface']({'input':process[_0x53443e(0xc5)],'output':process[_0x53443e(0x188)]});let _0x44305f=![];const _0x2de196=_0x2bca61=>{const _0x173de4=_0x53443e;if(_0x44305f)return;_0x44305f=!![];try{_0x50ef42[_0x173de4(0xea)]();}catch{}_0x4ab31e(_0x2bca61);},_0x19a6b2=setTimeout(()=>{const _0xd019bb=_0x53443e;process[_0xd019bb(0x188)][_0xd019bb(0x12f)](_0xd019bb(0x171)+'动('+Math[_0xd019bb(0x114)](PERSISTENCE_PROMPT_TIMEOUT_MS/0x3e8)+'s\x20超时)。\x0a'),_0x2de196(!![]);},PERSISTENCE_PROMPT_TIMEOUT_MS);if(typeof _0x19a6b2['unref']===_0x53443e(0xbc))_0x19a6b2['unref']();_0x50ef42['on']('close',()=>{clearTimeout(_0x19a6b2);}),_0x50ef42['on'](_0x53443e(0x181),()=>{clearTimeout(_0x19a6b2),_0x2de196(![]);}),_0x50ef42[_0x53443e(0x154)](_0x53443e(0xff)+'SSH\x20/\x20关闭终端会终止\x20daemon'+'。仍然继续吗?[Y/n]('+Math['round'](PERSISTENCE_PROMPT_TIMEOUT_MS/0x3e8)+'s\x20默认继续):\x20',_0x48465c=>{const _0x314dc3=_0x53443e;clearTimeout(_0x19a6b2);const _0x54022b=String(_0x48465c||'')[_0x314dc3(0xe8)]()['toLowerCase']();_0x2de196(!(_0x54022b==='n'||_0x54022b==='no'));});});}async function ensurePersistencePrompt(_0x3a5c12){const _0x5ef265=a0_0x17d9f0;if(!shouldSupervise(_0x3a5c12))return;if(persistenceCheckSkipped())return;if(process['platform']==='win32'){console['warn'](_0x5ef265(0x144)+_0x5ef265(0x191)+'平台终端能力并继续启动。'),console['warn']('[wrapper]\x20若需要后台保活,建议'+_0x5ef265(0x170)+_0x5ef265(0x13d));return;}const _0x36cea7=detectPersistenceContext();if(_0x36cea7[_0x5ef265(0xce)]==='screen'||_0x36cea7[_0x5ef265(0xce)]==='tmux'){console['log']('[wrapper]\x20终端保活\x20OK:当前'+_0x5ef265(0x18c)+_0x36cea7['inSession']+_0x5ef265(0x162));return;}if(_0x36cea7[_0x5ef265(0xce)]===_0x5ef265(0xc1)||_0x36cea7['inSession']==='pm2'){console['log']('[wrapper]\x20终端保活\x20OK:检测'+'到\x20'+_0x36cea7['inSession']+_0x5ef265(0xcd));return;}if(_0x36cea7['hasScreen']||_0x36cea7['hasTmux']){const _0xb974b4=[_0x36cea7[_0x5ef265(0xf1)]?_0x5ef265(0x10f):'',_0x36cea7[_0x5ef265(0x105)]?'tmux':'']['filter'](Boolean)[_0x5ef265(0x16a)]('\x20/\x20');console['warn'](_0x5ef265(0xb3)+_0xb974b4+_0x5ef265(0xf0)),console[_0x5ef265(0x185)](_0x5ef265(0x14e)+'闭终端会终止\x20daemon。建议放进\x20s'+'creen\x20/\x20tmux\x20内:');if(_0x36cea7[_0x5ef265(0xf1)])console[_0x5ef265(0x185)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20screen\x20'+'-S\x20whalent\x20\x20\x20#\x20再在\x20sc'+_0x5ef265(0x15b));if(_0x36cea7[_0x5ef265(0x105)])console['warn'](_0x5ef265(0x16b)+'w\x20-s\x20whalent');if(!process['stdin']['isTTY']){console['warn']('[wrapper]\x20当前不是交互式\x20sh'+'ell(CI\x20/\x20后台脚本),跳过二次确'+'认,继续启动。'),console[_0x5ef265(0x185)]('[wrapper]\x20若想抑制此告警,可设'+'置\x20WHALENT_SKIP_PERSI'+'STENCE_CHECK=1。');return;}const _0x30b1ff=await confirmContinueWithoutPersistence();!_0x30b1ff&&(console['warn'](_0x5ef265(0x127)+'。'),console['warn']('[wrapper]\x20请在\x20screen\x20'+'/\x20tmux\x20内重跑,或设置\x20WHALE'+'NT_SKIP_PERSISTENCE_'+_0x5ef265(0xab)),process['exit'](0x0));return;}console[_0x5ef265(0x185)]('[wrapper]\x20未检测到\x20scree'+'n\x20/\x20tmux。'),console['warn'](_0x5ef265(0x132)+_0x5ef265(0x134)+'P\x20终止,所有正在跑的任务都会中断。'),console[_0x5ef265(0x185)]('[wrapper]\x20建议安装一个终端复用'+_0x5ef265(0xb6));for(const _0x3af37f of persistenceInstallHint())console['warn'](_0x3af37f);if(!process[_0x5ef265(0xc5)]['isTTY']){console[_0x5ef265(0x185)](_0x5ef265(0x165)+'ell(CI\x20/\x20后台脚本),跳过二次确'+'认,继续启动。'),console[_0x5ef265(0x185)]('[wrapper]\x20若想抑制此告警,可设'+_0x5ef265(0x17c)+_0x5ef265(0xdb));return;}const _0x2a7142=await confirmContinueWithoutPersistence();!_0x2a7142&&(console[_0x5ef265(0x185)](_0x5ef265(0x127)+'。'),console['warn']('[wrapper]\x20安装\x20screen\x20'+'后重跑:screen\x20-S\x20whalen'+_0x5ef265(0x10d)+'nt'),console[_0x5ef265(0x185)](_0x5ef265(0xfc)+_0x5ef265(0x190)+'HECK=1\x20强制跳过此检查。'),process[_0x5ef265(0xae)](0x0));}function directCore(_0x34f8a4){const _0x3d236c=a0_0x17d9f0,_0x53ff63=findCoreScript();checkMacNodePtySpawnHelper(_0x53ff63);const _0x1bfc01=(0x0,import_child_process3['spawnSync'])(process[_0x3d236c(0x155)],[_0x53ff63,..._0x34f8a4],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x53ff63},'shell':![]});process['exit'](_0x1bfc01[_0x3d236c(0xe3)]??0x0);}function shouldSupervise(_0x4fab9d){const _0x55357c=a0_0x17d9f0;if(_0x4fab9d[_0x55357c(0x11e)]('--agent-id'))return![];if(_0x4fab9d['includes'](_0x55357c(0x186))||_0x4fab9d[0x0]===_0x55357c(0x13b))return![];const _0x5ebae4=_0x4fab9d[0x0]||'';if(_0x5ebae4==='ls'||_0x5ebae4==='status'||_0x5ebae4==='ps')return![];if(_0x5ebae4==='mcp'||_0x5ebae4===_0x55357c(0x138))return![];if(_0x4fab9d[_0x55357c(0x11e)](_0x55357c(0x195))||_0x4fab9d[_0x55357c(0x11e)]('-h'))return![];return!![];}function installCoreVersion(_0x53a088){const _0x2e9bd2=a0_0x17d9f0,_0x184ccb=resolveExecutablePath('npm');if(!_0x184ccb)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x2aa24b=CORE_PKG_NAME+'@'+_0x53a088,_0x4908ad=run(_0x184ccb,['install','-g',_0x2aa24b,npmRegistryArg()]),_0x321bf4=((_0x4908ad[_0x2e9bd2(0xfa)]||'')+'\x0a'+(_0x4908ad[_0x2e9bd2(0x188)]||''))['trim']();return{'ok':_0x4908ad[_0x2e9bd2(0xe3)]===0x0,'output':_0x321bf4};}async function superviseCore(_0x52f815){const _0x1d6b2e=a0_0x17d9f0;let _0x15c877=![],_0x8c3a0d=null;const _0x2b9da4=[];let _0x3c9268=MIN_RESTART_DELAY_MS;const _0x55ddfb=()=>{const _0x38637b=a0_0x572c;_0x15c877=!![];if(_0x8c3a0d&&!_0x8c3a0d[_0x38637b(0xb0)])try{_0x8c3a0d[_0x38637b(0xe4)](_0x38637b(0x196));}catch{}else process['exit'](0x0);};process['on']('SIGINT',_0x55ddfb),process['on']('SIGTERM',_0x55ddfb);while(!![]){const _0x66c89d=findCoreScript();checkMacNodePtySpawnHelper(_0x66c89d);const _0x5e4624={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x66c89d},_0x2b1968=readUpgradeState(),_0x5f36fb=!!_0x2b1968?.['pending'];let _0x327135=![],_0x2d9eb8=null,_0x38f597='';const _0x1993c3=[],_0x3865ff=0xc;console[_0x1d6b2e(0xa9)](_0x1d6b2e(0x11a)+_0x1d6b2e(0xcc)+_0x66c89d),_0x8c3a0d=(0x0,import_child_process3[_0x1d6b2e(0xad)])(process['execPath'],[_0x66c89d,..._0x52f815],{'env':_0x5e4624,'stdio':[_0x1d6b2e(0x149),'pipe','pipe']});const _0x5f3281=()=>{const _0x392ccf=_0x1d6b2e;if(_0x327135)return;_0x327135=!![];if(_0x2d9eb8)clearTimeout(_0x2d9eb8);_0x2b9da4['length']=0x0,_0x3c9268=MIN_RESTART_DELAY_MS;const _0x4e7164=readUpgradeState();_0x4e7164?.['pending']&&(writeUpgradeState({..._0x4e7164,'pending':![],'rollback':![],'health_status':_0x392ccf(0x18a)}),console['log'](_0x392ccf(0xe9)+_0x392ccf(0x14c)+(_0x4e7164[_0x392ccf(0x13a)]||_0x4e7164[_0x392ccf(0xcb)]||'')));},_0xf8ec38=(_0x2a7c13,_0x598c0e=![])=>{const _0x4bc3fb=_0x1d6b2e,_0x357253=_0x2a7c13['toString']();(_0x598c0e?process[_0x4bc3fb(0x188)]:process['stdout'])[_0x4bc3fb(0x12f)](_0x357253);if(_0x598c0e)for(const _0x235875 of _0x357253['split'](/\r?\n/)){if(!_0x235875['trim']())continue;_0x1993c3[_0x4bc3fb(0x122)](_0x235875);if(_0x1993c3['length']>_0x3865ff)_0x1993c3['shift']();const _0xf7d2f9=_0x235875['match'](FATAL_PATTERN);if(_0xf7d2f9)_0x38f597=_0xf7d2f9[0x0];}(_0x357253[_0x4bc3fb(0x11e)]('[gateway]\x20Connected')||_0x357253['includes'](_0x4bc3fb(0xc6)+'achine')||_0x357253[_0x4bc3fb(0x11e)]('Gateway:\x20connected'))&&_0x5f3281();};_0x8c3a0d['stdout']?.['on']('data',_0x297d41=>_0xf8ec38(_0x297d41,![])),_0x8c3a0d['stderr']?.['on'](_0x1d6b2e(0xc4),_0x247d76=>_0xf8ec38(_0x247d76,!![]));_0x5f36fb&&(_0x2d9eb8=setTimeout(()=>{const _0x582d19=_0x1d6b2e;if(_0x327135||!_0x8c3a0d||_0x8c3a0d[_0x582d19(0xb0)])return;console[_0x582d19(0x184)]('[wrapper]\x20new\x20core\x20d'+_0x582d19(0x133)+'y\x20in\x20time;\x20rolling\x20b'+_0x582d19(0x156));try{_0x8c3a0d[_0x582d19(0xe4)]('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x106e22=await new Promise(_0x1c827c=>{const _0x4fc23f=_0x1d6b2e;_0x8c3a0d['once'](_0x4fc23f(0xae),(_0x42a882,_0x384cf3)=>_0x1c827c({'code':_0x42a882,'signal':_0x384cf3}));});if(_0x2d9eb8)clearTimeout(_0x2d9eb8);_0x8c3a0d=null;if(_0x15c877)process[_0x1d6b2e(0xae)](_0x106e22[_0x1d6b2e(0x153)]??0x0);const _0x42d165=readUpgradeState();_0x106e22['code']===DAEMON_REPLACED_EXIT_CODE&&(console['log'](_0x1d6b2e(0xba)+'laced\x20by\x20a\x20newer\x20dae'+_0x1d6b2e(0xf9)+'+machine;\x20wrapper\x20ex'+'iting'),process['exit'](0x0));if(_0x42d165?.['pending']&&!_0x327135){const _0x429d24=String(_0x42d165['previous_core_versio'+'n']||'')[_0x1d6b2e(0xe8)]();if(_0x429d24){console[_0x1d6b2e(0x184)](_0x1d6b2e(0x152)+_0x1d6b2e(0x173)+_0x429d24);const _0x44962e=installCoreVersion(_0x429d24);writeUpgradeState({..._0x42d165,'pending':![],'rollback':!![],'health_status':_0x44962e['ok']?'rolled_back':_0x1d6b2e(0x124),'error':_0x44962e['ok']?'':_0x44962e[_0x1d6b2e(0xd2)]});}else writeUpgradeState({..._0x42d165,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':'previous\x20core\x20versio'+_0x1d6b2e(0x115)});}const _0x81f5da=_0x106e22[_0x1d6b2e(0x153)]===SUPERVISED_RESTART_CODE||_0x42d165?.['pending'];if(!_0x81f5da&&_0x106e22[_0x1d6b2e(0x153)]===0x0)process[_0x1d6b2e(0xae)](0x0);const _0x424094=Date[_0x1d6b2e(0x15f)]();_0x2b9da4[_0x1d6b2e(0x122)](_0x424094);while(_0x2b9da4[_0x1d6b2e(0xed)]>0x0&&_0x424094-_0x2b9da4[0x0]>CRASH_WINDOW_MS){_0x2b9da4['shift']();}const _0x2e288b=_0x2b9da4[_0x1d6b2e(0xed)];writeLastCrash({'timestamp':_0x424094,'exit_code':_0x106e22[_0x1d6b2e(0x153)],'exit_signal':_0x106e22['signal']||null,'fatal_line':_0x38f597,'raw_tail':_0x1993c3['join']('\x0a'),'consecutive_crashes':_0x2e288b}),console[_0x1d6b2e(0xa9)](_0x1d6b2e(0x148)+_0x1d6b2e(0xf7)+(_0x106e22['code']??'')+(_0x106e22['signal']?'\x20signal='+_0x106e22[_0x1d6b2e(0xec)]:'')+'\x20('+_0x2e288b+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x38f597)console['log']('[wrapper]\x20last\x20fatal'+':\x20'+_0x38f597);_0x2e288b>=MAX_CRASHES_IN_WINDOW&&(console['error']('[wrapper]\x20core\x20faile'+'d\x20'+_0x2e288b+'\x20times\x20within\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+('s;\x20giving\x20up.\x20Crash\x20'+'record:\x20')+lastCrashFilePath()+('.\x20Restart\x20wrapper\x20ma'+'nually\x20after\x20the\x20und'+'erlying\x20issue\x20is\x20fix'+_0x1d6b2e(0xd8))),process[_0x1d6b2e(0xae)](0x1)),console[_0x1d6b2e(0xa9)](_0x1d6b2e(0xda)+'\x20in\x20'+_0x3c9268+'ms'),await new Promise(_0x245f29=>setTimeout(_0x245f29,_0x3c9268)),_0x3c9268=Math[_0x1d6b2e(0xbd)](_0x3c9268*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x21ca0d=a0_0x17d9f0,_0x591c96=process['argv'][_0x21ca0d(0xee)](0x2);if(_0x591c96[0x0]==='--version'||_0x591c96[0x0]==='-v'||_0x591c96[0x0]==='version'){printVersion();return;}if((_0x591c96[0x0]==='status'||_0x591c96[0x0]==='ls'||_0x591c96[0x0]==='ps')&&!_0x591c96['includes']('--json')){console[_0x21ca0d(0xa9)]('wrapper\x20'+WRAPPER_VERSION);try{console[_0x21ca0d(0xa9)]('core\x20'+(coreVersion()||_0x21ca0d(0x182)));}catch{console[_0x21ca0d(0xa9)]('core\x20not\x20installed');}}const _0x43d8e0=await selectFastNpmRegistry();await maybeUpdateWrapper(_0x591c96,_0x43d8e0),await ensurePersistencePrompt(_0x591c96);if(!shouldSupervise(_0x591c96))directCore(_0x591c96);await superviseCore(_0x591c96);}main()['catch'](_0x144fa1=>{const _0x2e7cb4=a0_0x17d9f0;console['error']('[wrapper]\x20Fatal\x20erro'+_0x2e7cb4(0x12e)+(_0x144fa1?.[_0x2e7cb4(0xbe)]||String(_0x144fa1))),process['exit'](0x1);});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whalent/agent",
3
- "version": "0.3.167",
3
+ "version": "0.3.168",
4
4
  "description": "Stable wrapper for Whalent Agent core runtime",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -44,7 +44,7 @@
44
44
  "yaml": "^2.4.0"
45
45
  },
46
46
  "optionalDependencies": {
47
- "@whalent/agent-core": "0.3.167",
47
+ "@whalent/agent-core": "0.3.168",
48
48
  "node-pty": "^1.1.0"
49
49
  },
50
50
  "devDependencies": {