@wujie-shell/core 0.1.0 → 0.1.2
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/bin/wujie-shell.mjs +1 -1
- package/dist/src/bundled-agent-skills.mjs +1 -1
- package/dist/src/bundled-agents.mjs +1 -1
- package/dist/src/config-controller.mjs +1 -1
- package/dist/src/electron/main.mjs +1 -1
- package/dist/src/electron/preload.mjs +1 -1
- package/dist/src/gateway-controller.mjs +1 -1
- package/dist/src/gateway-ws.mjs +1 -1
- package/dist/src/index.mjs +1 -1
- package/dist/src/logging.mjs +1 -0
- package/dist/src/plugin-sync.mjs +1 -1
- package/dist/src/runtime-logger.mjs +1 -0
- package/dist/src/runtime.mjs +1 -1
- package/dist/src/utils.mjs +1 -1
- package/package.json +3 -2
package/dist/bin/wujie-shell.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
(function(
|
|
2
|
+
const _0x413ec4=_0x4e61;function _0x102c(){const _0x3cadce=['command:','4LfuCfF','216066uVDcSy','--projec','openclaw','slice','Version','i-projec','catch','21PaUHlu','650176xGvYgb','shift','-shell\x20s','project','/.tmp/ru','ntime','message','ell\x0a\x0aUsa','stringif','\x0a\x20\x20wujie','log','argv','ync\x20--pr','prepare','--help','1277550UtigLM','length','stack','cwd','wujie-sh','2724mTIGqs','74239fkxUKb','help','jie-shel','plugins','l\x20prepar','1588370daaWHO','sync','543918dfYXSe','491147fdTlrX','3gvpgkG','45MHdBPp','ect\x20<ui-','oject\x20<u'];_0x102c=function(){return _0x3cadce;};return _0x102c();}(function(_0x5b5df4,_0x345d61){const _0x14a1bc=_0x4e61,_0x3f8d7e=_0x5b5df4();while(!![]){try{const _0x5244e4=-parseInt(_0x14a1bc(0xd2))/0x1+-parseInt(_0x14a1bc(0xd1))/0x2*(parseInt(_0x14a1bc(0xd3))/0x3)+-parseInt(_0x14a1bc(0xd8))/0x4*(parseInt(_0x14a1bc(0xcf))/0x5)+-parseInt(_0x14a1bc(0xd9))/0x6*(-parseInt(_0x14a1bc(0xe0))/0x7)+-parseInt(_0x14a1bc(0xe1))/0x8*(parseInt(_0x14a1bc(0xd4))/0x9)+parseInt(_0x14a1bc(0xf0))/0xa+-parseInt(_0x14a1bc(0xf6))/0xb*(-parseInt(_0x14a1bc(0xf5))/0xc);if(_0x5244e4===_0x345d61)break;else _0x3f8d7e['push'](_0x3f8d7e['shift']());}catch(_0x4bb6a4){_0x3f8d7e['push'](_0x3f8d7e['shift']());}}}(_0x102c,0x4485f));import{resolve}from'node:path';import{loadShellConfig}from'@wujie-shell/config';import{prepareRuntime}from'../src/runtime.mjs';function parseArgs(_0x42c88d){const _0xec33ef=_0x4e61,_0x10a8ae=[..._0x42c88d],_0x5bb4ea=_0x10a8ae[_0xec33ef(0xe2)]()||_0xec33ef(0xcb),_0x61e5fb={'project':process[_0xec33ef(0xf3)]()};for(let _0x53a6f9=0x0;_0x53a6f9<_0x10a8ae[_0xec33ef(0xf1)];_0x53a6f9+=0x1){const _0x22fdd3=_0x10a8ae[_0x53a6f9];(_0x22fdd3===_0xec33ef(0xda)+'t'||_0x22fdd3==='-p')&&(_0x61e5fb[_0xec33ef(0xe4)]=_0x10a8ae[_0x53a6f9+0x1],_0x53a6f9+=0x1);}return{'command':_0x5bb4ea,'options':_0x61e5fb};}function _0x4e61(_0x389a5a,_0x1e1c1c){_0x389a5a=_0x389a5a-0xcb;const _0x102cfc=_0x102c();let _0x4e6171=_0x102cfc[_0x389a5a];return _0x4e6171;}function usage(){const _0x114c93=_0x4e61;console['log'](_0x114c93(0xf4)+_0x114c93(0xe8)+'ge:\x0a\x20\x20wu'+_0x114c93(0xcc)+_0x114c93(0xce)+'e\x20--proj'+_0x114c93(0xd5)+'project>'+_0x114c93(0xea)+_0x114c93(0xe3)+_0x114c93(0xed)+_0x114c93(0xd6)+_0x114c93(0xde)+'t>\x0a');}async function main(){const _0x349d71=_0x4e61,{command:_0x4f3b8d,options:_0x20fa6b}=parseArgs(process[_0x349d71(0xec)][_0x349d71(0xdc)](0x2));if(_0x4f3b8d==='help'||_0x4f3b8d===_0x349d71(0xef)||_0x4f3b8d==='-h'){usage();return;}if(_0x4f3b8d!==_0x349d71(0xee)&&_0x4f3b8d!==_0x349d71(0xd0))throw new Error('unknown\x20'+_0x349d71(0xd7)+'\x20'+_0x4f3b8d);const _0x5600c6=resolve(_0x20fa6b[_0x349d71(0xe4)]),_0x17a2d8=await loadShellConfig(_0x5600c6),_0x4e8657=await prepareRuntime(_0x17a2d8,{'syncOnly':_0x4f3b8d===_0x349d71(0xd0)});console[_0x349d71(0xeb)](JSON[_0x349d71(0xe9)+'y']({'ok':!![],'command':_0x4f3b8d,'projectRoot':_0x5600c6,'runtimeRoot':_0x5600c6+(_0x349d71(0xe5)+_0x349d71(0xe6)),'openclawVersion':_0x4e8657[_0x349d71(0xdb)+_0x349d71(0xdd)],'pluginCount':Array['isArray'](_0x4e8657[_0x349d71(0xcd)])?_0x4e8657[_0x349d71(0xcd)]['length']:0x0},null,0x2));}main()[_0x413ec4(0xdf)](_0x2c887f=>{const _0x27e197=_0x413ec4;console['error'](_0x2c887f instanceof Error?_0x2c887f[_0x27e197(0xf2)]||_0x2c887f[_0x27e197(0xe7)]:String(_0x2c887f)),process['exit'](0x1);});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x4c16(_0x10c6d7,_0x604b09){_0x10c6d7=_0x10c6d7-0x1e8;const _0x545954=_0x5459();let _0x4c16f7=_0x545954[_0x10c6d7];return _0x4c16f7;}(function(_0x12ceef,_0x52b86d){const _0x1f9b77=_0x4c16,_0x20506b=_0x12ceef();while(!![]){try{const _0x39cc75=parseInt(_0x1f9b77(0x204))/0x1*(parseInt(_0x1f9b77(0x1f7))/0x2)+parseInt(_0x1f9b77(0x1ed))/0x3*(-parseInt(_0x1f9b77(0x1f6))/0x4)+-parseInt(_0x1f9b77(0x1f0))/0x5*(parseInt(_0x1f9b77(0x1ff))/0x6)+parseInt(_0x1f9b77(0x206))/0x7+-parseInt(_0x1f9b77(0x1ec))/0x8*(-parseInt(_0x1f9b77(0x20e))/0x9)+parseInt(_0x1f9b77(0x1f2))/0xa*(parseInt(_0x1f9b77(0x20c))/0xb)+-parseInt(_0x1f9b77(0x1eb))/0xc;if(_0x39cc75===_0x52b86d)break;else _0x20506b['push'](_0x20506b['shift']());}catch(_0x356562){_0x20506b['push'](_0x20506b['shift']());}}}(_0x5459,0x80859));import{existsSync}from'node:fs';import{readdir}from'node:fs/promises';import{join}from'node:path';import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'./utils.mjs';async function listValidSkillKeys(_0x14026e,_0x231891){const _0x5d5800=_0x4c16;if(!existsSync(_0x14026e))return[];let _0x2cc4be=[];try{_0x2cc4be=await readdir(_0x14026e,{'withFileTypes':!![],'encoding':_0x5d5800(0x205)});}catch(_0x2e19cc){return console['warn'](_0x5d5800(0x1fa)+'hell:ski'+_0x5d5800(0x1f8)+_0x5d5800(0x203)+_0x5d5800(0x20d)+_0x5d5800(0x1e9)+_0x5d5800(0x1f5)+_0x231891,_0x2e19cc),[];}const _0x56ae6c=[];for(const _0x3bb3f2 of _0x2cc4be){if(!_0x3bb3f2['isDirect'+'ory']())continue;const _0x29b85c=_0x3bb3f2[_0x5d5800(0x20a)][_0x5d5800(0x202)]();if(!_0x29b85c||_0x29b85c[_0x5d5800(0x1f4)+'th']('_'))continue;if(existsSync(join(_0x14026e,_0x29b85c,_0x5d5800(0x1fb))))_0x56ae6c[_0x5d5800(0x1ea)](_0x29b85c);}return _0x56ae6c;}export async function discoverBundledAgentSkills(_0x1138aa,_0x2677d9){const _0x3cb232=_0x4c16,_0x13f475=[],_0x17583a={},_0x2be43c={};for(const _0x44d81b of _0x1138aa){const _0xfb21a3=_0x2677d9(_0x44d81b),_0x451fa2=await listValidSkillKeys(_0xfb21a3,_0x44d81b);_0x2be43c[_0x44d81b]=_0x451fa2,_0x451fa2[_0x3cb232(0x1fe)]>0x0&&(_0x13f475[_0x3cb232(0x1ea)](_0xfb21a3),_0x17583a[_0x44d81b]=_0xfb21a3);}return{'extraDirs':_0x13f475,'extraDirByAgent':_0x17583a,'agentAllowlist':_0x2be43c};}export async function syncBundledAgentSkillsToConfig({agentIds:_0x4f9d0c,resolveSkillsDir:_0x5991b4,readConfig:_0x226637,writeConfig:_0x5560b0,markConfigWriteHandledInternally:_0x450d6d}){const _0x38fdba=_0x4c16,_0x4aac39=await discoverBundledAgentSkills(_0x4f9d0c,_0x5991b4);if(_0x4f9d0c['length']===0x0)return{'discovery':_0x4aac39,'changed':![]};const _0x4d1f70=await _0x226637();let _0x36b529=![];const _0x1fdf66=asRecord(_0x4d1f70[_0x38fdba(0x1fd)]),_0x584942=asRecord(_0x1fdf66['load']),_0x4458ab=asStringArray(_0x584942[_0x38fdba(0x1e8)+'s']),_0x321d0d=dedupeStrings([..._0x4458ab,..._0x4aac39['extraDir'+'s']]);JSON[_0x38fdba(0x207)+'y'](_0x4458ab)!==JSON[_0x38fdba(0x207)+'y'](_0x321d0d)&&(_0x584942[_0x38fdba(0x1e8)+'s']=_0x321d0d,_0x1fdf66[_0x38fdba(0x1f3)]=_0x584942,_0x4d1f70[_0x38fdba(0x1fd)]=_0x1fdf66,_0x36b529=!![]);const _0x3a2810=asRecord(_0x4d1f70[_0x38fdba(0x201)]),_0x628b2f=Array[_0x38fdba(0x208)](_0x3a2810['list'])?_0x3a2810['list']:[];if(_0x628b2f[_0x38fdba(0x1fe)]>0x0){const _0x228c75=_0x628b2f[_0x38fdba(0x1ee)](_0xb8cd4a=>_0xb8cd4a&&typeof _0xb8cd4a===_0x38fdba(0x200)?{..._0xb8cd4a}:_0xb8cd4a);let _0x257145=![];for(const [_0x72274a,_0x233138]of Object[_0x38fdba(0x209)](_0x4aac39[_0x38fdba(0x1f1)+'owlist'])){if(_0x72274a===_0x38fdba(0x20b))continue;const _0x255f03=_0x228c75['find'](_0x56a9fb=>asRecord(_0x56a9fb)['id']===_0x72274a);if(!_0x255f03)continue;const _0x154db7=Array['isArray'](_0x255f03[_0x38fdba(0x1fd)])?_0x255f03[_0x38fdba(0x1fd)]:null;(!_0x154db7||JSON[_0x38fdba(0x207)+'y'](_0x154db7)!==JSON[_0x38fdba(0x207)+'y'](_0x233138))&&(_0x255f03[_0x38fdba(0x1fd)]=_0x233138,_0x257145=!![]);}_0x257145&&(_0x3a2810[_0x38fdba(0x20f)]=_0x228c75,_0x4d1f70[_0x38fdba(0x201)]=_0x3a2810,_0x36b529=!![]);}return _0x36b529&&(_0x450d6d?.(),await _0x5560b0(_0x4d1f70)),{'discovery':_0x4aac39,'changed':_0x36b529};}function _0x5459(){const _0x140962=['list','extraDir','ls\x20dir\x20a','push','10495464nUSYEN','4952cQJBiZ','936366pSLwCv','map','has','155BLoboB','agentAll','7400AyMRAk','load','startsWi','gent=','8brTXsr','1128GqsXKG','lls]\x20fai','filter','[wujie-s','SKILL.md','find','skills','length','56466qDjlHP','object','agents','trim','led\x20to\x20r','1268jciKFo','utf8','6324752tiZLjt','stringif','isArray','entries','name','main','6369DGQdEA','ead\x20skil','3924fbQwOP'];_0x5459=function(){return _0x140962;};return _0x5459();}export function filterSkillsForAgent(_0x309c01,_0xba7e92,_0x535960=''){const _0x47b762=_0x4c16,_0x588ad4=Array[_0x47b762(0x208)](asRecord(_0x309c01)[_0x47b762(0x1fd)])?asRecord(_0x309c01)[_0x47b762(0x1fd)]:[],_0x2c06ec=getTrimmedString(_0x535960)||_0x47b762(0x20b),_0x1be719=Array[_0x47b762(0x208)](asRecord(asRecord(_0xba7e92)[_0x47b762(0x201)])[_0x47b762(0x20f)])?asRecord(asRecord(_0xba7e92)[_0x47b762(0x201)])[_0x47b762(0x20f)]:[],_0x350cab=_0x1be719[_0x47b762(0x1ee)](asRecord)[_0x47b762(0x1fc)](_0xcf2b77=>getTrimmedString(_0xcf2b77['id'])===_0x2c06ec),_0x53d23e=_0x350cab&&Array[_0x47b762(0x208)](_0x350cab['skills'])?new Set(asStringArray(_0x350cab[_0x47b762(0x1fd)])):null;if(!_0x53d23e)return _0x309c01;return{...asRecord(_0x309c01),'skills':_0x588ad4[_0x47b762(0x1f9)](_0x496934=>_0x53d23e[_0x47b762(0x1ef)](getTrimmedString(asRecord(_0x496934)['name'])))};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3af4f0,_0x16ce01){const _0x1a814c=_0x295c,_0xfa4b4c=_0x3af4f0();while(!![]){try{const _0x55c4f8=-parseInt(_0x1a814c(0x14c))/0x1+-parseInt(_0x1a814c(0x142))/0x2+-parseInt(_0x1a814c(0x14b))/0x3+-parseInt(_0x1a814c(0x12e))/0x4+-parseInt(_0x1a814c(0x131))/0x5+parseInt(_0x1a814c(0x15c))/0x6*(-parseInt(_0x1a814c(0x156))/0x7)+-parseInt(_0x1a814c(0x152))/0x8*(-parseInt(_0x1a814c(0x12d))/0x9);if(_0x55c4f8===_0x16ce01)break;else _0xfa4b4c['push'](_0xfa4b4c['shift']());}catch(_0x4974ba){_0xfa4b4c['push'](_0xfa4b4c['shift']());}}}(_0x3d85,0x4d89e));import{existsSync}from'node:fs';import{cp,mkdir,readFile,readdir,rm}from'node:fs/promises';import{dirname,join,resolve,sep}from'node:path';import{asRecord,asStringArray,getTrimmedString,readJson}from'./utils.mjs';function _0x295c(_0x5fdc,_0x443972){_0x5fdc=_0x5fdc-0x12a;const _0x3d85a7=_0x3d85();let _0x295c0f=_0x3d85a7[_0x5fdc];return _0x295c0f;}function _0x3d85(){const _0x18fe26=['emoji','error','isArray','startsWi','led\x20to\x20s','workspac','705561xYxUbi','373470YAiXmE','trim','son','t\x20\x22','filter','length','8RBPKLN','main','isDirect','icon','7gHmHfx','model','[wujie-s','ory','avatar','some','1609410HRXcYR','toolDoma','ins','pped\x20uns','19998360lXCvAA','2038584sRNuws','nts]\x20fai','name','2073275gSIFGP','all','map','tyDomain','relPath','cnName','agents','capabili','parse','readme.j','utf8','managedP','version','agentId','ync\x20bund','absPath','warn','206498caHjFr','led\x20agen','afe\x20mana'];_0x3d85=function(){return _0x18fe26;};return _0x3d85();}function toOptionalString(_0x16904b){const _0x209333=getTrimmedString(_0x16904b);return _0x209333||undefined;}export async function loadBundledAgents(_0x5535f6){const _0x48fa2b=_0x295c;let _0x5dbcef=[];try{_0x5dbcef=await readdir(_0x5535f6,{'withFileTypes':!![],'encoding':_0x48fa2b(0x13b)});}catch{return[];}const _0x4423f4=await Promise[_0x48fa2b(0x132)](_0x5dbcef[_0x48fa2b(0x150)](_0x40dfb1=>_0x40dfb1[_0x48fa2b(0x154)+_0x48fa2b(0x159)]())[_0x48fa2b(0x133)](async _0xb672f1=>{const _0x1ee412=_0x48fa2b,_0x332279=_0xb672f1[_0x1ee412(0x130)][_0x1ee412(0x14d)]();if(!_0x332279)return null;const _0x59b62d=await readJson(join(_0x5535f6,_0x332279,_0x1ee412(0x13a)+_0x1ee412(0x14e)),{}),_0x5677b6=asRecord(_0x59b62d),_0x31823a=toOptionalString(_0x5677b6[_0x1ee412(0x130)])??_0x332279;if(!_0x31823a)return null;return{'name':_0x31823a,'cnName':toOptionalString(_0x5677b6[_0x1ee412(0x136)]),'avatar':toOptionalString(_0x5677b6[_0x1ee412(0x15a)]),'icon':toOptionalString(_0x5677b6[_0x1ee412(0x155)]),'emoji':toOptionalString(_0x5677b6['emoji']),'model':toOptionalString(_0x5677b6[_0x1ee412(0x157)]),'version':toOptionalString(_0x5677b6[_0x1ee412(0x13d)]),'capabilityDomains':asStringArray(_0x5677b6[_0x1ee412(0x138)+_0x1ee412(0x134)+'s']??_0x5677b6[_0x1ee412(0x12a)+_0x1ee412(0x12b)]),'managedPaths':asStringArray(_0x5677b6[_0x1ee412(0x13c)+'aths'])};}));return _0x4423f4[_0x48fa2b(0x150)](Boolean);}async function readJsonVersion(_0x8f003c){const _0x20c800=_0x295c;try{const _0x2dd4c9=JSON[_0x20c800(0x139)](await readFile(_0x8f003c,_0x20c800(0x13b)));return getTrimmedString(asRecord(_0x2dd4c9)[_0x20c800(0x13d)])||null;}catch{return null;}}function assertSafeManagedPath(_0x451089,_0x55d50d){const _0x528460=_0x295c,_0x344f46=getTrimmedString(_0x55d50d);if(!_0x344f46||_0x344f46['startsWi'+'th']('/')||_0x344f46['includes']('..'))return null;const _0x3425b2=resolve(_0x451089),_0xc510a2=resolve(join(_0x451089,_0x344f46));if(_0xc510a2!==_0x3425b2&&!_0xc510a2[_0x528460(0x148)+'th'](_0x3425b2+sep))return null;return{'relPath':_0x344f46,'absPath':_0xc510a2};}async function copyManagedPaths(_0x6181dc,_0x50e920,_0x292515){const _0x4009a6=_0x295c;if(_0x292515[_0x4009a6(0x151)]===0x0){await cp(_0x6181dc,_0x50e920,{'recursive':!![]});return;}for(const _0xe45b7a of _0x292515){const _0x7cedbe=assertSafeManagedPath(_0x50e920,_0xe45b7a);if(!_0x7cedbe){console[_0x4009a6(0x141)]('[wujie-s'+'hell:age'+'nts]\x20ski'+_0x4009a6(0x12c)+_0x4009a6(0x144)+'gedPath:'+'\x20'+_0xe45b7a);continue;}const _0x3129a1=join(_0x6181dc,_0x7cedbe[_0x4009a6(0x135)]);if(!existsSync(_0x3129a1)){await rm(_0x7cedbe[_0x4009a6(0x140)],{'recursive':!![],'force':!![]});continue;}await rm(_0x7cedbe[_0x4009a6(0x140)],{'recursive':!![],'force':!![]}),await mkdir(dirname(_0x7cedbe['absPath']),{'recursive':!![]}),await cp(_0x3129a1,_0x7cedbe[_0x4009a6(0x140)],{'recursive':!![]});}}export async function ensureBundledAgents({runtimeBundledAgentsDir:_0x40e9b3,stateDir:_0x3bd7c6,listAgents:_0x166923,createAgent:_0x5d6f7f,updateAgent:_0x26dcc8,syncSkills:_0x4ab554}){const _0x449e14=_0x295c;let _0x4474e2=![];const _0x2c27e0=await _0x166923(),_0x16b53c=Array[_0x449e14(0x147)](_0x2c27e0[_0x449e14(0x137)])?_0x2c27e0[_0x449e14(0x137)]:[],_0x507350=_0x16b53c['find'](_0x191486=>_0x191486?.['id']===_0x449e14(0x153)),_0x1d997f=getTrimmedString(_0x507350?.[_0x449e14(0x14a)+'e'])||join(_0x3bd7c6,_0x449e14(0x14a)+'e'),_0x17e1da=await loadBundledAgents(_0x40e9b3);for(const _0x544f91 of _0x17e1da){const {name:_0x58a4aa,cnName:_0x35f45c,avatar:_0x3a0808,emoji:_0x1b6898,version:_0x227623,managedPaths:_0xc1234e}=_0x544f91,_0x4728de=_0x58a4aa===_0x449e14(0x153),_0x2a93ba=_0x4728de?_0x1d997f:join(dirname(_0x1d997f),_0x449e14(0x14a)+'e-'+_0x58a4aa),_0x19684d=join(_0x40e9b3,_0x58a4aa);if(!existsSync(_0x19684d))continue;try{const _0x1990fa=_0x4728de||_0x16b53c[_0x449e14(0x15b)](_0x900118=>_0x900118?.['id']===_0x58a4aa);if(_0x1990fa){const _0x4e59f5=await readJsonVersion(join(_0x2a93ba,_0x449e14(0x13a)+_0x449e14(0x14e)));if(_0x227623&&_0x4e59f5&&_0x227623===_0x4e59f5)continue;await mkdir(_0x2a93ba,{'recursive':!![]}),await copyManagedPaths(_0x19684d,_0x2a93ba,_0xc1234e);}else await rm(_0x2a93ba,{'recursive':!![],'force':!![]}),await mkdir(_0x2a93ba,{'recursive':!![]}),await cp(_0x19684d,_0x2a93ba,{'recursive':!![]});_0x4474e2=!![];if(_0x4728de)continue;if(_0x1990fa){const _0x1671ca={'agentId':_0x58a4aa,'workspace':_0x2a93ba};if(_0x35f45c)_0x1671ca[_0x449e14(0x130)]=_0x35f45c;if(_0x3a0808)_0x1671ca['avatar']=_0x3a0808;if(_0x1b6898)_0x1671ca[_0x449e14(0x145)]=_0x1b6898;await _0x26dcc8(_0x1671ca);}else{const _0x2da8eb={'name':_0x58a4aa,'workspace':_0x2a93ba};if(_0x3a0808)_0x2da8eb['avatar']=_0x3a0808;if(_0x1b6898)_0x2da8eb['emoji']=_0x1b6898;const _0x39d5c9=asRecord(await _0x5d6f7f(_0x2da8eb));_0x35f45c&&await _0x26dcc8({'agentId':getTrimmedString(_0x39d5c9[_0x449e14(0x13e)])||_0x58a4aa,'name':_0x35f45c});}}catch(_0x338d52){console[_0x449e14(0x146)](_0x449e14(0x158)+'hell:age'+_0x449e14(0x12f)+_0x449e14(0x149)+_0x449e14(0x13f)+_0x449e14(0x143)+_0x449e14(0x14f)+_0x58a4aa+'\x22',_0x338d52);}}return await _0x4ab554?.({'agentIds':_0x17e1da['map'](_0x138a4e=>_0x138a4e[_0x449e14(0x130)]),'mainWorkspace':_0x1d997f}),{'didUpdate':_0x4474e2,'bundledAgents':_0x17e1da};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x26af65=_0x256a;(function(_0x36b379,_0x5243b3){const _0x463c3a=_0x256a,_0x1abcd7=_0x36b379();while(!![]){try{const _0x33a003=parseInt(_0x463c3a(0x143))/0x1+-parseInt(_0x463c3a(0x100))/0x2*(-parseInt(_0x463c3a(0x157))/0x3)+-parseInt(_0x463c3a(0x128))/0x4*(parseInt(_0x463c3a(0x146))/0x5)+-parseInt(_0x463c3a(0x120))/0x6*(-parseInt(_0x463c3a(0x12c))/0x7)+parseInt(_0x463c3a(0x11d))/0x8+parseInt(_0x463c3a(0x122))/0x9+-parseInt(_0x463c3a(0x134))/0xa*(parseInt(_0x463c3a(0x119))/0xb);if(_0x33a003===_0x5243b3)break;else _0x1abcd7['push'](_0x1abcd7['shift']());}catch(_0x7b9cc0){_0x1abcd7['push'](_0x1abcd7['shift']());}}}(_0x4260,0xe5cd6));import{randomBytes}from'node:crypto';import{existsSync,unwatchFile,watchFile}from'node:fs';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import _0x4aa70e,{portNumbers}from'get-port';import{ensureShellStateDirs,getConfigPaths,readJsonFile,writeJsonFile}from'@wujie-shell/config';import{asRecord,dedupeStrings,getTrimmedString,writeJson}from'./utils.mjs';import{loadRuntimeInfo}from'./runtime.mjs';import{syncRuntimeManifestPlugins}from'./plugin-sync.mjs';const MEMORY_CORE_PLUGIN_ID=_0x26af65(0x113)+_0x26af65(0x149),ACTIVE_MEMORY_PLUGIN_ID=_0x26af65(0x110)+'emory',ASK_USER_QUESTION_PLUGIN_ID='ask-user'+_0x26af65(0x135)+'n';function _0x4260(){const _0x39c995=['merge','86631EPwhzy','34BsfaWe','deviceId','apiKey','openclaw','compat','oot','imageMod','per-chan','defaults','utf8','modelNam','tart','mode','eUrl','agents','length','active-m','dels\x20upd','nChange','memory-c','plugins','entries','odel','config\x20c','openai','27736247YgsDqc','nel-peer','Key','ttings\x20u','13323808NrUVUP','yName','gatewayS','6iuTWmY','c-messag','1632366yRQcde','onboard','model\x20co','rated\x20mo','idle','lastGood','190172KqKwde','ated','256kb','elPrimar','10220910xnMYqT','entityPa','local','models','restartO','configPa','image','map','10IImbkj','-questio','session','stateDir','dataDir','projectR','anthropi','skills','model','slice','auto','baseUrl','defaultM','hange','openai-c','92745fithfe','nfig\x20upd','config','45FegzPk','pdated','model\x20se','ore','changed','primary','toISOStr','allow','ompletio','ConfigPa','stringif','text','push','protocol','provider','full'];_0x4260=function(){return _0x39c995;};return _0x4260();}function createToken(){return randomBytes(0x18)['toString']('hex');}function createProviderModelConfig(_0x202ff2,_0x4febfe=![]){const _0xf9a982=_0x26af65;return{'id':_0x202ff2,'name':_0x202ff2,'reasoning':!![],'input':_0x4febfe?[_0xf9a982(0x151),_0xf9a982(0x132)]:[_0xf9a982(0x151)],'cost':{'input':0x0,'output':0x0,'cacheRead':0x0,'cacheWrite':0x0},'contextWindow':0x3e800,'maxTokens':0x3e800};}function createProviderConfig(_0x18cca0){const _0x173f52=_0x26af65;return{'apiKey':_0x18cca0['apiKey'],'api':_0x18cca0[_0x173f52(0x153)]===_0x173f52(0x13a)+'c'?_0x173f52(0x13a)+_0x173f52(0x121)+'es':_0x173f52(0x142)+'ompletio'+'ns',..._0x18cca0[_0x173f52(0x13f)]?{'baseUrl':_0x18cca0['baseUrl']}:{},'models':[createProviderModelConfig(_0x18cca0['modelNam'+'e'])]};}function createRuntimePluginBootstrap(_0x58ab75){const _0x1291ad=_0x26af65,_0x48af7e={},_0x352656=[];for(const _0x79e67d of _0x58ab75??[]){const _0x876c38=getTrimmedString(_0x79e67d['pluginId']);if(!_0x876c38)continue;_0x48af7e[_0x876c38]={'enabled':!![]},_0x352656[_0x1291ad(0x152)](_0x876c38);}return!_0x48af7e[MEMORY_CORE_PLUGIN_ID]&&(_0x48af7e[MEMORY_CORE_PLUGIN_ID]={'enabled':!![],'config':{'dreaming':{'enabled':!![]}}}),!_0x48af7e[ACTIVE_MEMORY_PLUGIN_ID]&&(_0x48af7e[ACTIVE_MEMORY_PLUGIN_ID]={'enabled':!![]}),{'entries':_0x48af7e,'allow':dedupeStrings([..._0x352656,MEMORY_CORE_PLUGIN_ID,ACTIVE_MEMORY_PLUGIN_ID]),'bundledDiscovery':_0x1291ad(0x104)};}function createInitialOpenClawConfig(_0x372131,_0x52c1c2){const _0xcf8561=_0x26af65,_0x168619=new Date()[_0xcf8561(0x14c)+'ing'](),_0x46356e=join(_0x372131[_0xcf8561(0x138)],'workspac'+'e'),_0x146267=asRecord(_0x372131[_0xcf8561(0x12f)]),_0x58758a=getTrimmedString(_0x146267[_0xcf8561(0x140)+_0xcf8561(0x116)]),_0x410ffb={'workspace':_0x46356e,'memorySearch':{'enabled':!![],'sources':['memory'],'provider':_0xcf8561(0x13e)},'compaction':{'memoryFlush':{'enabled':!![],'forceFlushTranscriptBytes':_0xcf8561(0x12a),'softThresholdTokens':0x30d40}}};return _0x58758a&&(_0x410ffb[_0xcf8561(0x13c)]={'primary':_0x58758a}),{'meta':{'lastTouchedVersion':_0x52c1c2[_0xcf8561(0x103)+'Version'],'lastTouchedAt':_0x168619},'wizard':{'lastRunAt':_0x168619,'lastRunVersion':_0x52c1c2[_0xcf8561(0x103)+'Version'],'lastRunCommand':_0xcf8561(0x123),'lastRunMode':_0xcf8561(0x12e)},'models':{'mode':'merge','providers':asRecord(_0x146267[_0xcf8561(0x154)+'s'])},'agents':{'defaults':_0x410ffb},'tools':{'profile':_0xcf8561(0x155)},'plugins':createRuntimePluginBootstrap(_0x52c1c2[_0xcf8561(0x114)]),'skills':{'load':{'extraDirs':[_0xcf8561(0x13b)]}},'session':{'dmScope':_0xcf8561(0x107)+_0xcf8561(0x11a),'reset':{'mode':_0xcf8561(0x126)}}};}function hasMeaningfulProductModels(_0x3b34ab){const _0x44fad4=_0x26af65,_0x2d8334=asRecord(_0x3b34ab['models']);return Object['keys'](asRecord(_0x2d8334[_0x44fad4(0x154)+'s']))[_0x44fad4(0x10f)]>0x0||Boolean(getTrimmedString(_0x2d8334[_0x44fad4(0x140)+_0x44fad4(0x116)]));}function syncProductModels(_0x5abee9,_0x2525f9){const _0x511d35=_0x26af65;if(!hasMeaningfulProductModels(_0x2525f9))return{'config':_0x5abee9,'changed':![]};let _0xf56211=![];const _0x4e899a=asRecord(_0x2525f9[_0x511d35(0x12f)]),_0x4f9aa7=asRecord(_0x4e899a['provider'+'s']),_0xe3192a=getTrimmedString(_0x4e899a[_0x511d35(0x140)+_0x511d35(0x116)]),_0x3e8de3=asRecord(_0x5abee9[_0x511d35(0x12f)]),_0x323475=asRecord(_0x3e8de3[_0x511d35(0x154)+'s']);for(const [_0x2e3e99,_0x1f5d2e]of Object['entries'](_0x4f9aa7)){const _0xfdc5ba=asRecord(_0x323475[_0x2e3e99]),_0x4d7fc4=asRecord(_0x1f5d2e);JSON[_0x511d35(0x150)+'y'](_0xfdc5ba)!==JSON[_0x511d35(0x150)+'y'](_0x4d7fc4)&&(_0x323475[_0x2e3e99]=_0x4d7fc4,_0xf56211=!![]);}_0x3e8de3[_0x511d35(0x10c)]!=='merge'&&(_0x3e8de3[_0x511d35(0x10c)]=_0x511d35(0x156),_0xf56211=!![]);_0x3e8de3[_0x511d35(0x154)+'s']!==_0x323475&&(_0x3e8de3[_0x511d35(0x154)+'s']=_0x323475,_0xf56211=!![]);_0x5abee9['models']!==_0x3e8de3&&(_0x5abee9[_0x511d35(0x12f)]=_0x3e8de3,_0xf56211=!![]);if(_0xe3192a){const _0x3827ac=asRecord(_0x5abee9[_0x511d35(0x10e)]),_0x3b88fe=asRecord(_0x3827ac['defaults']),_0x48caa6=asRecord(_0x3b88fe[_0x511d35(0x13c)]);_0x48caa6[_0x511d35(0x14b)]!==_0xe3192a&&(_0x3b88fe[_0x511d35(0x13c)]={..._0x48caa6,'primary':_0xe3192a},_0x3827ac[_0x511d35(0x108)]=_0x3b88fe,_0x5abee9[_0x511d35(0x10e)]=_0x3827ac,_0xf56211=!![]);}return{'config':_0x5abee9,'changed':_0xf56211};}function _0x256a(_0x4ce4a8,_0x5a6ec8){_0x4ce4a8=_0x4ce4a8-0x100;const _0x4260b9=_0x4260();let _0x256a26=_0x4260b9[_0x4ce4a8];return _0x256a26;}export function createConfigController(_0x299e61){const _0x2da857=getConfigPaths(_0x299e61);let _0x238577=![],_0x5e7b62=0x0,_0x12fad7=null,_0x57f6d7=null;function _0x205d0a(){return _0x2da857['configPa'+'th'];}function _0x534dd9(){return _0x2da857['stateDir'];}function _0x45970f(){const _0x37e3bd=_0x256a;return _0x2da857[_0x37e3bd(0x101)+_0x37e3bd(0x12d)+'th'];}async function _0x27b101(){const _0x4a44fc=_0x256a;await ensureShellStateDirs(_0x299e61),process.env.OPENCLAW_STATE_DIR=_0x2da857[_0x4a44fc(0x137)],process.env.OPENCLAW_CONFIG_PATH=_0x2da857[_0x4a44fc(0x131)+'th'];}async function _0x316082(){const _0x624915=_0x256a;await _0x27b101();const _0x42fcb5=await loadRuntimeInfo(_0x299e61[_0x624915(0x139)+'oot']);if(!existsSync(_0x2da857[_0x624915(0x131)+'th'])){const _0x3be01c=createInitialOpenClawConfig(_0x299e61,_0x42fcb5);_0x255cd3(),await _0x238711(_0x3be01c),await writeJson(_0x2da857[_0x624915(0x127)+_0x624915(0x14f)+'th'],_0x3be01c);}await _0x2eef27(),await _0x49b5aa();}async function _0x5c122f(){const _0x56acaa=_0x256a;return await _0x316082(),readJsonFile(_0x2da857[_0x56acaa(0x131)+'th'],{});}async function _0x2ff4f0(){const _0x4345b1=_0x256a;return readJsonFile(_0x2da857[_0x4345b1(0x131)+'th'],{});}async function _0x238711(_0x24c293){const _0x5d8c5c=_0x256a;await mkdir(dirname(_0x2da857['configPa'+'th']),{'recursive':!![]}),await writeFile(_0x2da857['configPa'+'th'],JSON[_0x5d8c5c(0x150)+'y'](_0x24c293,null,0x2)+'\x0a',_0x5d8c5c(0x109));}async function _0x49b5aa(){const _0x5d8b0c=_0x256a,_0x9940dc=await loadRuntimeInfo(_0x299e61[_0x5d8b0c(0x139)+_0x5d8b0c(0x105)]),_0x4ec51e=await _0x2ff4f0(),_0x3a2fab=syncRuntimeManifestPlugins(_0x4ec51e['plugins'],_0x9940dc['plugins']);(_0x3a2fab[_0x5d8b0c(0x14a)]||!_0x4ec51e['plugins'])&&(_0x4ec51e['plugins']=_0x3a2fab['plugins'],_0x255cd3(),await _0x238711(_0x4ec51e));}async function _0x2eef27(){const _0x19ee79=_0x256a,_0x5d1fb9=await _0x2ff4f0(),_0x5a929e=syncProductModels(_0x5d1fb9,_0x299e61);_0x5a929e[_0x19ee79(0x14a)]&&await _0x26a780(_0x5a929e['config'],'product\x20'+_0x19ee79(0x124)+_0x19ee79(0x144)+_0x19ee79(0x129));}async function _0x225ece(){const _0x34f95b=_0x256a;await _0x316082();const _0x4a268f=await _0x4aa70e({'port':portNumbers(_0x299e61['ports'][_0x34f95b(0x11f)+_0x34f95b(0x10b)],_0x299e61['ports'][_0x34f95b(0x11f)+_0x34f95b(0x10b)]+0x63)});return{'token':createToken(),'port':_0x4a268f};}async function _0x5a50b2(){const _0x58fa92=_0x256a,_0x3c531d=await _0x5c122f(),_0x9e2da9=asRecord(_0x3c531d['agents']),_0x5a216a=asRecord(_0x9e2da9['defaults']),_0x32b2b4=asRecord(_0x5a216a[_0x58fa92(0x13c)]),_0x31737e=getTrimmedString(_0x32b2b4[_0x58fa92(0x14b)]),_0x293832=_0x31737e['indexOf']('/'),_0x1b5e6d=_0x293832>0x0?_0x31737e['slice'](0x0,_0x293832):_0x31737e,_0x6eeb87=_0x293832>0x0?_0x31737e[_0x58fa92(0x13d)](_0x293832+0x1):'',_0x2cf711=asRecord(asRecord(_0x3c531d[_0x58fa92(0x12f)])[_0x58fa92(0x154)+'s']),_0x453504=asRecord(_0x2cf711[_0x1b5e6d]);return{'provider':_0x1b5e6d||'','apiKey':getTrimmedString(_0x453504[_0x58fa92(0x102)]),'modelName':_0x6eeb87,'modelBaseUrl':getTrimmedString(_0x453504[_0x58fa92(0x13f)])};}async function _0x384fb7(_0x5e416b,_0x43d058={}){const _0x5b5c36=_0x256a,_0x2ba9bf=await _0x5c122f(),_0x30339c=_0x5e416b['provider']||'default',_0x5285cf=_0x30339c+'/'+_0x5e416b[_0x5b5c36(0x10a)+'e'],_0x33da3e=asRecord(_0x2ba9bf[_0x5b5c36(0x12f)]),_0x22c785=asRecord(_0x33da3e[_0x5b5c36(0x154)+'s']);_0x22c785[_0x30339c]={...asRecord(_0x22c785[_0x30339c]),...createProviderConfig({'apiKey':_0x5e416b[_0x5b5c36(0x102)]||'','protocol':_0x5e416b[_0x5b5c36(0x153)]||_0x5b5c36(0x118),'baseUrl':_0x5e416b['modelBas'+_0x5b5c36(0x10d)]||_0x5e416b[_0x5b5c36(0x13f)]||'','modelName':_0x5e416b[_0x5b5c36(0x10a)+'e']})},_0x33da3e[_0x5b5c36(0x154)+'s']=_0x22c785,_0x2ba9bf[_0x5b5c36(0x12f)]=_0x33da3e;const _0x52aa43=asRecord(_0x2ba9bf[_0x5b5c36(0x10e)]),_0x121d44=asRecord(_0x52aa43[_0x5b5c36(0x108)]);return _0x121d44[_0x5b5c36(0x13c)]={...asRecord(_0x121d44[_0x5b5c36(0x13c)]),'primary':_0x5285cf},_0x121d44['models']={...asRecord(_0x121d44[_0x5b5c36(0x12f)]),[_0x5285cf]:asRecord(asRecord(_0x121d44[_0x5b5c36(0x12f)])[_0x5285cf])},_0x52aa43[_0x5b5c36(0x108)]=_0x121d44,_0x2ba9bf[_0x5b5c36(0x10e)]=_0x52aa43,_0x2ba9bf[_0x5b5c36(0x136)]={...asRecord(_0x2ba9bf[_0x5b5c36(0x136)]),'dmScope':_0x5b5c36(0x107)+_0x5b5c36(0x11a)},await _0x26a780(_0x2ba9bf,_0x43d058[_0x5b5c36(0x130)+_0x5b5c36(0x112)]?_0x5b5c36(0x148)+_0x5b5c36(0x11c)+_0x5b5c36(0x147):''),{'ok':!![]};}async function _0x546247(_0x333aca){const _0x5b3c89=_0x256a,_0x1dbe56=await _0x5c122f(),_0x90f132=_0x333aca['provider'+_0x5b3c89(0x11b)],_0x1502fe=asRecord(_0x1dbe56[_0x5b3c89(0x12f)]),_0x170487=asRecord(_0x1502fe[_0x5b3c89(0x154)+'s']);_0x170487[_0x90f132]={...asRecord(_0x170487[_0x90f132]),'apiKey':_0x333aca[_0x5b3c89(0x102)],'api':_0x5b3c89(0x142)+_0x5b3c89(0x14e)+'ns','baseUrl':_0x333aca[_0x5b3c89(0x13f)],'models':(_0x333aca[_0x5b3c89(0x10a)+'es']??[])[_0x5b3c89(0x133)](_0x4ec48d=>createProviderModelConfig(_0x4ec48d,_0x4ec48d===_0x333aca[_0x5b3c89(0x106)+_0x5b3c89(0x12b)+_0x5b3c89(0x11e)]))},_0x1502fe[_0x5b3c89(0x154)+'s']=_0x170487,_0x1dbe56[_0x5b3c89(0x12f)]=_0x1502fe;if(_0x333aca['imageMod'+'elPrimar'+_0x5b3c89(0x11e)]){const _0x48bab2=asRecord(_0x1dbe56[_0x5b3c89(0x10e)]),_0x307775=asRecord(_0x48bab2[_0x5b3c89(0x108)]);_0x307775['imageMod'+'el']={...asRecord(_0x307775[_0x5b3c89(0x106)+'el']),'primary':_0x90f132+'/'+_0x333aca[_0x5b3c89(0x106)+'elPrimar'+'yName']},_0x48bab2[_0x5b3c89(0x108)]=_0x307775,_0x1dbe56[_0x5b3c89(0x10e)]=_0x48bab2;}return await _0x26a780(_0x1dbe56,'self-ope'+_0x5b3c89(0x125)+_0x5b3c89(0x111)+'ated'),{'ok':!![]};}async function _0x354b02({callbackUrl:_0x2b5742,secret:_0x3ad822}){const _0x368cf1=_0x256a,_0x293ff8=await _0x5c122f(),_0x54d0d9=asRecord(_0x293ff8[_0x368cf1(0x114)]),_0x594351=asRecord(_0x54d0d9[_0x368cf1(0x115)]),_0x9cec1b=asRecord(_0x594351[ASK_USER_QUESTION_PLUGIN_ID]);return _0x594351[ASK_USER_QUESTION_PLUGIN_ID]={..._0x9cec1b,'enabled':!![],'config':{...asRecord(_0x9cec1b[_0x368cf1(0x145)]),'callbackUrl':_0x2b5742,'secret':_0x3ad822}},_0x54d0d9[_0x368cf1(0x115)]=_0x594351,_0x54d0d9[_0x368cf1(0x14d)]=dedupeStrings([...(Array['isArray'](_0x54d0d9[_0x368cf1(0x14d)])?_0x54d0d9[_0x368cf1(0x14d)]:[])['filter'](Boolean),ASK_USER_QUESTION_PLUGIN_ID]),_0x293ff8[_0x368cf1(0x114)]=_0x54d0d9,await _0x26a780(_0x293ff8,''),{'ok':!![]};}async function _0x26a780(_0x52ef27,_0x53b82e=''){const _0x5ddee4=_0x256a;_0x255cd3(),await _0x238711(_0x52ef27),await writeJsonFile(_0x2da857[_0x5ddee4(0x127)+_0x5ddee4(0x14f)+'th'],_0x52ef27);if(_0x53b82e)_0x344f3f(_0x53b82e);}function _0x255cd3(){if(_0x238577)_0x5e7b62+=0x1;}function _0x16eabb(_0x9b206e){_0x57f6d7=_0x9b206e;}function _0x344f3f(_0x544c46){if(!_0x57f6d7)return;if(_0x12fad7)clearTimeout(_0x12fad7);_0x12fad7=setTimeout(()=>_0x57f6d7(_0x544c46),0xfa);}function _0x36cdc0(){const _0x4db2fd=_0x256a;unwatchFile(_0x2da857['configPa'+'th']),_0x238577=!![],watchFile(_0x2da857[_0x4db2fd(0x131)+'th'],{'interval':0x3e8},(_0x1d2d2d,_0x147d6d)=>{const _0x36d878=_0x4db2fd;if(_0x1d2d2d['mtimeMs']===_0x147d6d['mtimeMs'])return;if(_0x5e7b62>0x0){_0x5e7b62-=0x1;return;}_0x344f3f(_0x36d878(0x117)+_0x36d878(0x141));});}function _0x1cd66c(){const _0x79793f=_0x256a;if(_0x12fad7)clearTimeout(_0x12fad7);unwatchFile(_0x2da857[_0x79793f(0x131)+'th']),_0x238577=![],_0x5e7b62=0x0;}return{'paths':_0x2da857,'resolveConfigPath':_0x205d0a,'resolveStateDir':_0x534dd9,'resolveDeviceIdentityPath':_0x45970f,'ensureConfigPathEnv':_0x27b101,'ensureInitialConfig':_0x316082,'ensureGatewaySettings':_0x225ece,'readConfig':_0x5c122f,'writeConfig':_0x238711,'syncRuntimePlugins':_0x49b5aa,'getModelSettings':_0x5a50b2,'setModelSettings':_0x384fb7,'setSelfOperatedModels':_0x546247,'ensureAskUserQuestionPluginConfig':_0x354b02,'markConfigWriteHandledInternally':_0x255cd3,'setGatewayRestartHandler':_0x16eabb,'watchConfigChanges':_0x36cdc0,'dispose':_0x1cd66c};}
|
|
1
|
+
const _0x35dcde=_0x5409;(function(_0x189c98,_0x5119f5){const _0x5e3a99=_0x5409,_0x5d6f17=_0x189c98();while(!![]){try{const _0xcbef3c=parseInt(_0x5e3a99(0x1a9))/0x1*(parseInt(_0x5e3a99(0x13c))/0x2)+-parseInt(_0x5e3a99(0x16c))/0x3+parseInt(_0x5e3a99(0x14c))/0x4+-parseInt(_0x5e3a99(0x163))/0x5+-parseInt(_0x5e3a99(0x16d))/0x6*(-parseInt(_0x5e3a99(0x1c1))/0x7)+parseInt(_0x5e3a99(0x1a3))/0x8*(parseInt(_0x5e3a99(0x196))/0x9)+-parseInt(_0x5e3a99(0x17b))/0xa;if(_0xcbef3c===_0x5119f5)break;else _0x5d6f17['push'](_0x5d6f17['shift']());}catch(_0x2d25da){_0x5d6f17['push'](_0x5d6f17['shift']());}}}(_0xaa35,0xb4dba));import{randomBytes}from'node:crypto';function _0x5409(_0x3ef482,_0x52bfb3){_0x3ef482=_0x3ef482-0x136;const _0xaa35db=_0xaa35();let _0x54090f=_0xaa35db[_0x3ef482];return _0x54090f;}import{existsSync,unwatchFile,watchFile}from'node:fs';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import _0xb305b3,{portNumbers}from'get-port';import{ensureShellStateDirs,getConfigPaths,readJsonFile,writeJsonFile}from'@wujie-shell/config';import{asRecord,dedupeStrings,getTrimmedString,writeJson}from'./utils.mjs';import{loadRuntimeInfo}from'./runtime.mjs';import{createRuntimeLogger,summarizeRuntimeManifest}from'./runtime-logger.mjs';function _0xaa35(){const _0x2e14ad=['modelNam','odel','mtimeMs','ompletio','anged','ailed','ing','ced','toISOStr','dels\x20upd','session','initial\x20','exists','nel-peer','918762cMyFLo','memory-c','aw\x20confi','openai','ated','push','imageMod','product\x20','onfig\x20al','persiste','model','provider','models','memory','keys','merge','3398196AxRGbr','tarted','ttings\x20u','extraDir','ensure\x20i','changed','skills','length','config\x20c','her\x20obse','now','load','openclaw','fig\x20chan','\x20for\x20con','tart','reload\x20s','deviceId','nto\x20open','missing;','info\x20loa','eUrl','pdated','6744700KuYFAI','compat','defaultM','ent\x20ensu','apiKey','config','logsDir','ready\x20cu','lastGood','21495XXxCDC','6TloCTl','anthropi','ded\x20for\x20','256kb','isArray','yName','auto','stateDir','environm','nfig\x20upd','projectR','toString','d\x20opencl','gateway\x20','14733940BCHyGx','openai-c','elPrimar','full','ile\x20watc','ConfigPa','filter','rnal\x20wri','config\x20f','hange','agents','red','ync','created','configPa','Version','oot','rrent','emory','\x20config\x20','runtimeR','indexOf','baseUrl','utf8','per-chan','red\x20inte','slice','5245137ChPqDy','config\x20s','\x20creatin','ore','restartO','eady\x20cur','workspac','c-messag','dmScope','rent','default','dataDir','entries','16fTbyDs','gatewayS','model\x20co','entityPa','protocol','nChange','1rtlOCb','nfig\x20syn','onfig\x20ch','ernal\x20ch','ange','ask-user','allow','penclaw\x20','primary','pluginId','text','plugins','stringif','last-goo','plugin\x20c','fig','nitial\x20o','hex','info','defaults','-questio','modelBas','ports','cheduled','7670439nbKthp','runtime\x20','ompleted'];_0xaa35=function(){return _0x2e14ad;};return _0xaa35();}import{syncRuntimeManifestPlugins}from'./plugin-sync.mjs';const MEMORY_CORE_PLUGIN_ID=_0x35dcde(0x13d)+_0x35dcde(0x199),ACTIVE_MEMORY_PLUGIN_ID='active-m'+_0x35dcde(0x18d),ASK_USER_QUESTION_PLUGIN_ID=_0x35dcde(0x1ae)+_0x35dcde(0x1bd)+'n';function createToken(){const _0x1fccaf=_0x35dcde;return randomBytes(0x18)[_0x1fccaf(0x178)](_0x1fccaf(0x1ba));}function createProviderModelConfig(_0x3d72b0,_0x132799=![]){const _0x42e720=_0x35dcde;return{'id':_0x3d72b0,'name':_0x3d72b0,'reasoning':!![],'input':_0x132799?['text','image']:[_0x42e720(0x1b3)],'cost':{'input':0x0,'output':0x0,'cacheRead':0x0,'cacheWrite':0x0},'contextWindow':0x3e800,'maxTokens':0x3e800};}function createProviderConfig(_0x532090){const _0x5b9c8a=_0x35dcde;return{'apiKey':_0x532090[_0x5b9c8a(0x167)],'api':_0x532090[_0x5b9c8a(0x1a7)]==='anthropi'+'c'?_0x5b9c8a(0x16e)+_0x5b9c8a(0x19d)+'es':_0x5b9c8a(0x17c)+'ompletio'+'ns',..._0x532090[_0x5b9c8a(0x191)]?{'baseUrl':_0x532090[_0x5b9c8a(0x191)]}:{},'models':[createProviderModelConfig(_0x532090[_0x5b9c8a(0x1c4)+'e'])]};}function createRuntimePluginBootstrap(_0x103ada){const _0x199159=_0x35dcde,_0x3696d6={},_0x4fe724=[];for(const _0x4c1f02 of _0x103ada??[]){const _0x2f93ee=getTrimmedString(_0x4c1f02[_0x199159(0x1b2)]);if(!_0x2f93ee)continue;_0x3696d6[_0x2f93ee]={'enabled':!![]},_0x4fe724[_0x199159(0x141)](_0x2f93ee);}return!_0x3696d6[MEMORY_CORE_PLUGIN_ID]&&(_0x3696d6[MEMORY_CORE_PLUGIN_ID]={'enabled':!![],'config':{'dreaming':{'enabled':!![]}}}),!_0x3696d6[ACTIVE_MEMORY_PLUGIN_ID]&&(_0x3696d6[ACTIVE_MEMORY_PLUGIN_ID]={'enabled':!![]}),{'entries':_0x3696d6,'allow':dedupeStrings([..._0x4fe724,MEMORY_CORE_PLUGIN_ID,ACTIVE_MEMORY_PLUGIN_ID]),'bundledDiscovery':_0x199159(0x164)};}function createInitialOpenClawConfig(_0x4e3caa,_0x5c7389){const _0x21eb74=_0x35dcde,_0x21875b=new Date()[_0x21eb74(0x136)+_0x21eb74(0x1ca)](),_0x26cd8e=join(_0x4e3caa[_0x21eb74(0x1a1)],_0x21eb74(0x19c)+'e'),_0x307fdd=asRecord(_0x4e3caa[_0x21eb74(0x148)]),_0x137617=getTrimmedString(_0x307fdd['defaultM'+_0x21eb74(0x1c5)]),_0x43fa50={'workspace':_0x26cd8e,'memorySearch':{'enabled':!![],'sources':[_0x21eb74(0x149)],'provider':_0x21eb74(0x173)},'compaction':{'memoryFlush':{'enabled':!![],'forceFlushTranscriptBytes':_0x21eb74(0x170),'softThresholdTokens':0x30d40}}};return _0x137617&&(_0x43fa50['model']={'primary':_0x137617}),{'meta':{'lastTouchedVersion':_0x5c7389['openclaw'+_0x21eb74(0x18a)],'lastTouchedAt':_0x21875b},'wizard':{'lastRunAt':_0x21875b,'lastRunVersion':_0x5c7389['openclaw'+'Version'],'lastRunCommand':'onboard','lastRunMode':'local'},'models':{'mode':_0x21eb74(0x14b),'providers':asRecord(_0x307fdd[_0x21eb74(0x147)+'s'])},'agents':{'defaults':_0x43fa50},'tools':{'profile':_0x21eb74(0x17e)},'plugins':createRuntimePluginBootstrap(_0x5c7389['plugins']),'skills':{'load':{'extraDirs':[_0x21eb74(0x152)]}},'session':{'dmScope':_0x21eb74(0x193)+_0x21eb74(0x13b),'reset':{'mode':'idle'}}};}function hasMeaningfulProductModels(_0x26230d){const _0x52659e=_0x35dcde,_0xae7383=asRecord(_0x26230d['models']);return Object[_0x52659e(0x14a)](asRecord(_0xae7383[_0x52659e(0x147)+'s']))['length']>0x0||Boolean(getTrimmedString(_0xae7383[_0x52659e(0x165)+_0x52659e(0x1c5)]));}function summarizeOpenClawConfig(_0x579737){const _0x398cae=_0x35dcde,_0x4b4565=asRecord(_0x579737[_0x398cae(0x148)]),_0x4ed24c=asRecord(_0x4b4565[_0x398cae(0x147)+'s']),_0x54fb42=asRecord(_0x579737[_0x398cae(0x185)]),_0x422d14=asRecord(_0x54fb42[_0x398cae(0x1bc)]),_0x1232fe=asRecord(_0x422d14['model']),_0x38e395=asRecord(_0x579737[_0x398cae(0x1b4)]),_0x3fafca=asRecord(_0x38e395[_0x398cae(0x1a2)]),_0x5ca38d=asRecord(_0x579737[_0x398cae(0x152)]),_0x44ccc9=asRecord(_0x5ca38d[_0x398cae(0x157)]),_0x31c11b=asRecord(_0x579737['session']),_0x3a8cae=Array[_0x398cae(0x171)](_0x44ccc9[_0x398cae(0x14f)+'s'])?_0x44ccc9[_0x398cae(0x14f)+'s']:[];return{'providerCount':Object['keys'](_0x4ed24c)[_0x398cae(0x153)],'defaultModel':getTrimmedString(_0x1232fe['primary']),'pluginEntryCount':Object[_0x398cae(0x14a)](_0x3fafca)[_0x398cae(0x153)],'pluginAllowCount':Array[_0x398cae(0x171)](_0x38e395['allow'])?_0x38e395[_0x398cae(0x1af)][_0x398cae(0x153)]:0x0,'skillExtraDirCount':_0x3a8cae[_0x398cae(0x153)],'sessionDmScope':getTrimmedString(_0x31c11b[_0x398cae(0x19e)])};}function syncProductModels(_0x52bddd,_0x36309f){const _0x521baf=_0x35dcde;if(!hasMeaningfulProductModels(_0x36309f))return{'config':_0x52bddd,'changed':![]};let _0x16af6b=![];const _0x2ee795=asRecord(_0x36309f[_0x521baf(0x148)]),_0x5b5e56=asRecord(_0x2ee795['provider'+'s']),_0x56fde0=getTrimmedString(_0x2ee795[_0x521baf(0x165)+_0x521baf(0x1c5)]),_0x28c40b=asRecord(_0x52bddd['models']),_0x258eab=asRecord(_0x28c40b[_0x521baf(0x147)+'s']);for(const [_0x277b80,_0x183379]of Object[_0x521baf(0x1a2)](_0x5b5e56)){const _0x5754b7=asRecord(_0x258eab[_0x277b80]),_0xfe2586=asRecord(_0x183379);JSON['stringif'+'y'](_0x5754b7)!==JSON[_0x521baf(0x1b5)+'y'](_0xfe2586)&&(_0x258eab[_0x277b80]=_0xfe2586,_0x16af6b=!![]);}_0x28c40b['mode']!==_0x521baf(0x14b)&&(_0x28c40b['mode']=_0x521baf(0x14b),_0x16af6b=!![]);_0x28c40b[_0x521baf(0x147)+'s']!==_0x258eab&&(_0x28c40b[_0x521baf(0x147)+'s']=_0x258eab,_0x16af6b=!![]);_0x52bddd[_0x521baf(0x148)]!==_0x28c40b&&(_0x52bddd['models']=_0x28c40b,_0x16af6b=!![]);if(_0x56fde0){const _0x4e3366=asRecord(_0x52bddd[_0x521baf(0x185)]),_0x774753=asRecord(_0x4e3366['defaults']),_0x3bd299=asRecord(_0x774753[_0x521baf(0x146)]);_0x3bd299[_0x521baf(0x1b1)]!==_0x56fde0&&(_0x774753['model']={..._0x3bd299,'primary':_0x56fde0},_0x4e3366[_0x521baf(0x1bc)]=_0x774753,_0x52bddd['agents']=_0x4e3366,_0x16af6b=!![]);}return{'config':_0x52bddd,'changed':_0x16af6b};}export function createConfigController(_0x35e35a){const _0x272f25=_0x35dcde,_0x49914a=getConfigPaths(_0x35e35a),_0xbc1f29=createRuntimeLogger(_0x49914a,_0x272f25(0x168));let _0x569d3c=![],_0x56b9e0=0x0,_0x10b720=null,_0x4fa935=null;function _0x33721b(){const _0xdd5086=_0x272f25;return _0x49914a[_0xdd5086(0x189)+'th'];}function _0xbcc4d0(){const _0x56f2b9=_0x272f25;return _0x49914a[_0x56f2b9(0x174)];}function _0x3dce05(){const _0x5cb28b=_0x272f25;return _0x49914a[_0x5cb28b(0x15d)+_0x5cb28b(0x1a6)+'th'];}async function _0x53c077(){const _0x464ee5=_0x272f25;await ensureShellStateDirs(_0x35e35a),process.env.OPENCLAW_STATE_DIR=_0x49914a[_0x464ee5(0x174)],process.env.OPENCLAW_CONFIG_PATH=_0x49914a[_0x464ee5(0x189)+'th'],_0xbc1f29?.['info']('openclaw'+'\x20config\x20'+_0x464ee5(0x175)+_0x464ee5(0x166)+_0x464ee5(0x186),{'stateDir':_0x49914a[_0x464ee5(0x174)],'configPath':_0x49914a[_0x464ee5(0x189)+'th'],'logsDir':_0x49914a[_0x464ee5(0x169)]});}async function _0x294036(){const _0x1dbe04=_0x272f25,_0x2623d2=Date[_0x1dbe04(0x156)]();_0xbc1f29?.[_0x1dbe04(0x1bb)]('ensure\x20i'+_0x1dbe04(0x1b9)+'penclaw\x20'+_0x1dbe04(0x197)+_0x1dbe04(0x14d),{'configPath':_0x49914a[_0x1dbe04(0x189)+'th'],'stateDir':_0x49914a[_0x1dbe04(0x174)]});try{await _0x53c077();const _0x2e7823=await loadRuntimeInfo(_0x35e35a[_0x1dbe04(0x177)+_0x1dbe04(0x18b)]);_0xbc1f29?.['info'](_0x1dbe04(0x1c2)+_0x1dbe04(0x160)+_0x1dbe04(0x16f)+_0x1dbe04(0x197)+_0x1dbe04(0x187),{'runtimeRoot':_0x2e7823[_0x1dbe04(0x18f)+'oot'],'manifest':summarizeRuntimeManifest(_0x2e7823['manifest'])});if(!existsSync(_0x49914a[_0x1dbe04(0x189)+'th'])){const _0x354078=createInitialOpenClawConfig(_0x35e35a,_0x2e7823);_0xbc1f29?.['info']('initial\x20'+_0x1dbe04(0x158)+_0x1dbe04(0x18e)+_0x1dbe04(0x15f)+_0x1dbe04(0x198)+'g',{'configPath':_0x49914a[_0x1dbe04(0x189)+'th'],'config':summarizeOpenClawConfig(_0x354078)}),_0x5c939f(),await _0x502002(_0x354078,_0x1dbe04(0x139)+_0x1dbe04(0x158)+'\x20config\x20'+_0x1dbe04(0x188)),await writeJson(_0x49914a[_0x1dbe04(0x16b)+'ConfigPa'+'th'],_0x354078),_0xbc1f29?.['info'](_0x1dbe04(0x1b6)+_0x1dbe04(0x179)+_0x1dbe04(0x13e)+'g\x20writte'+'n',{'path':_0x49914a[_0x1dbe04(0x16b)+_0x1dbe04(0x180)+'th'],'reason':'initial\x20'+_0x1dbe04(0x158)+_0x1dbe04(0x18e)+_0x1dbe04(0x188)});}else _0xbc1f29?.['info'](_0x1dbe04(0x139)+_0x1dbe04(0x158)+_0x1dbe04(0x18e)+_0x1dbe04(0x13a),{'configPath':_0x49914a[_0x1dbe04(0x189)+'th']});await _0x1b509a(),await _0x80672c(),_0xbc1f29?.[_0x1dbe04(0x1bb)](_0x1dbe04(0x150)+_0x1dbe04(0x1b9)+_0x1dbe04(0x1b0)+_0x1dbe04(0x154)+_0x1dbe04(0x1c3),{'durationMs':Date[_0x1dbe04(0x156)]()-_0x2623d2});}catch(_0x3e5871){_0xbc1f29?.['error'](_0x1dbe04(0x150)+_0x1dbe04(0x1b9)+_0x1dbe04(0x1b0)+_0x1dbe04(0x183)+_0x1dbe04(0x1c9),{'durationMs':Date['now']()-_0x2623d2,'error':_0x3e5871});throw _0x3e5871;}}async function _0x2cfab7(){const _0x5d34ee=_0x272f25;return await _0x294036(),readJsonFile(_0x49914a[_0x5d34ee(0x189)+'th'],{});}async function _0x446bbb(){const _0x3b8362=_0x272f25;return readJsonFile(_0x49914a[_0x3b8362(0x189)+'th'],{});}async function _0x502002(_0x245094,_0x22ceb8='openclaw'+'\x20config\x20'+'written'){const _0x286fe5=_0x272f25;await mkdir(dirname(_0x49914a[_0x286fe5(0x189)+'th']),{'recursive':!![]}),await writeFile(_0x49914a[_0x286fe5(0x189)+'th'],JSON['stringif'+'y'](_0x245094,null,0x2)+'\x0a',_0x286fe5(0x192)),_0xbc1f29?.['info'](_0x22ceb8,{'configPath':_0x49914a[_0x286fe5(0x189)+'th'],'config':summarizeOpenClawConfig(_0x245094)});}async function _0x80672c(){const _0xe62d0d=_0x272f25,_0x1df9d6=await loadRuntimeInfo(_0x35e35a[_0xe62d0d(0x177)+_0xe62d0d(0x18b)]),_0x503890=await _0x446bbb(),_0x2c736d=syncRuntimeManifestPlugins(_0x503890['plugins'],_0x1df9d6[_0xe62d0d(0x1b4)]);_0x2c736d[_0xe62d0d(0x151)]||!_0x503890['plugins']?(_0x503890[_0xe62d0d(0x1b4)]=_0x2c736d[_0xe62d0d(0x1b4)],_0x5c939f(),await _0x502002(_0x503890,_0xe62d0d(0x1c2)+'plugins\x20'+'synced\x20i'+_0xe62d0d(0x15e)+'claw\x20con'+_0xe62d0d(0x1b8)),_0xbc1f29?.[_0xe62d0d(0x1bb)](_0xe62d0d(0x1c2)+_0xe62d0d(0x1b7)+_0xe62d0d(0x1ab)+_0xe62d0d(0x1c8),{'runtimePluginCount':_0x1df9d6[_0xe62d0d(0x1b4)][_0xe62d0d(0x153)],'config':summarizeOpenClawConfig(_0x503890)})):_0xbc1f29?.[_0xe62d0d(0x1bb)](_0xe62d0d(0x1c2)+'plugin\x20c'+_0xe62d0d(0x144)+_0xe62d0d(0x16a)+_0xe62d0d(0x18c),{'runtimePluginCount':_0x1df9d6[_0xe62d0d(0x1b4)][_0xe62d0d(0x153)]});}async function _0x1b509a(){const _0x1cd378=_0x272f25,_0x20a001=await _0x446bbb(),_0x4b8ebf=syncProductModels(_0x20a001,_0x35e35a);_0x4b8ebf[_0x1cd378(0x151)]?(await _0x1c1127(_0x4b8ebf[_0x1cd378(0x168)],_0x1cd378(0x143)+_0x1cd378(0x1a5)+_0x1cd378(0x176)+_0x1cd378(0x140)),_0xbc1f29?.[_0x1cd378(0x1bb)](_0x1cd378(0x143)+_0x1cd378(0x1a5)+_0x1cd378(0x1aa)+_0x1cd378(0x1cb),{'config':summarizeOpenClawConfig(_0x4b8ebf[_0x1cd378(0x168)])})):_0xbc1f29?.[_0x1cd378(0x1bb)]('product\x20'+'model\x20co'+'nfig\x20alr'+_0x1cd378(0x19b)+_0x1cd378(0x19f),{'hasProductModels':hasMeaningfulProductModels(_0x35e35a)});}async function _0x1e1212(){const _0x2be4b0=_0x272f25;await _0x294036();const _0x5410fe=await _0xb305b3({'port':portNumbers(_0x35e35a['ports']['gatewayS'+_0x2be4b0(0x15b)],_0x35e35a[_0x2be4b0(0x1bf)][_0x2be4b0(0x1a4)+_0x2be4b0(0x15b)]+0x63)});return{'token':createToken(),'port':_0x5410fe};}async function _0x4aa76f(){const _0x18cd0b=_0x272f25,_0x449b1e=await _0x2cfab7(),_0x58c97a=asRecord(_0x449b1e['agents']),_0x5c7c3d=asRecord(_0x58c97a[_0x18cd0b(0x1bc)]),_0x503d15=asRecord(_0x5c7c3d[_0x18cd0b(0x146)]),_0x2e88ea=getTrimmedString(_0x503d15[_0x18cd0b(0x1b1)]),_0x2de75a=_0x2e88ea[_0x18cd0b(0x190)]('/'),_0x388e8c=_0x2de75a>0x0?_0x2e88ea['slice'](0x0,_0x2de75a):_0x2e88ea,_0x540a9f=_0x2de75a>0x0?_0x2e88ea[_0x18cd0b(0x195)](_0x2de75a+0x1):'',_0x449536=asRecord(asRecord(_0x449b1e['models'])['provider'+'s']),_0x2521c5=asRecord(_0x449536[_0x388e8c]);return{'provider':_0x388e8c||'','apiKey':getTrimmedString(_0x2521c5[_0x18cd0b(0x167)]),'modelName':_0x540a9f,'modelBaseUrl':getTrimmedString(_0x2521c5[_0x18cd0b(0x191)])};}async function _0x2329b4(_0x285e23,_0x3b3792={}){const _0x5ec6f8=_0x272f25,_0x538d0e=await _0x2cfab7(),_0x59a5d2=_0x285e23[_0x5ec6f8(0x147)]||_0x5ec6f8(0x1a0),_0x45c6e2=_0x59a5d2+'/'+_0x285e23[_0x5ec6f8(0x1c4)+'e'],_0xf390ef=asRecord(_0x538d0e['models']),_0x22589a=asRecord(_0xf390ef[_0x5ec6f8(0x147)+'s']);_0x22589a[_0x59a5d2]={...asRecord(_0x22589a[_0x59a5d2]),...createProviderConfig({'apiKey':_0x285e23[_0x5ec6f8(0x167)]||'','protocol':_0x285e23[_0x5ec6f8(0x1a7)]||_0x5ec6f8(0x13f),'baseUrl':_0x285e23[_0x5ec6f8(0x1be)+_0x5ec6f8(0x161)]||_0x285e23[_0x5ec6f8(0x191)]||'','modelName':_0x285e23['modelNam'+'e']})},_0xf390ef[_0x5ec6f8(0x147)+'s']=_0x22589a,_0x538d0e[_0x5ec6f8(0x148)]=_0xf390ef;const _0x5e3cb2=asRecord(_0x538d0e[_0x5ec6f8(0x185)]),_0x13b1ea=asRecord(_0x5e3cb2[_0x5ec6f8(0x1bc)]);return _0x13b1ea[_0x5ec6f8(0x146)]={...asRecord(_0x13b1ea[_0x5ec6f8(0x146)]),'primary':_0x45c6e2},_0x13b1ea['models']={...asRecord(_0x13b1ea['models']),[_0x45c6e2]:asRecord(asRecord(_0x13b1ea[_0x5ec6f8(0x148)])[_0x45c6e2])},_0x5e3cb2[_0x5ec6f8(0x1bc)]=_0x13b1ea,_0x538d0e['agents']=_0x5e3cb2,_0x538d0e[_0x5ec6f8(0x138)]={...asRecord(_0x538d0e[_0x5ec6f8(0x138)]),'dmScope':_0x5ec6f8(0x193)+'nel-peer'},await _0x1c1127(_0x538d0e,_0x3b3792[_0x5ec6f8(0x19a)+_0x5ec6f8(0x1a8)]?'model\x20se'+_0x5ec6f8(0x14e)+_0x5ec6f8(0x162):''),{'ok':!![]};}async function _0x1f0acc(_0x97d53c){const _0x3c6ba3=_0x272f25,_0x244aa2=await _0x2cfab7(),_0x2b197d=_0x97d53c['provider'+'Key'],_0x39c085=asRecord(_0x244aa2[_0x3c6ba3(0x148)]),_0x27f976=asRecord(_0x39c085[_0x3c6ba3(0x147)+'s']);_0x27f976[_0x2b197d]={...asRecord(_0x27f976[_0x2b197d]),'apiKey':_0x97d53c[_0x3c6ba3(0x167)],'api':_0x3c6ba3(0x17c)+_0x3c6ba3(0x1c7)+'ns','baseUrl':_0x97d53c[_0x3c6ba3(0x191)],'models':(_0x97d53c[_0x3c6ba3(0x1c4)+'es']??[])['map'](_0x455cca=>createProviderModelConfig(_0x455cca,_0x455cca===_0x97d53c[_0x3c6ba3(0x142)+_0x3c6ba3(0x17d)+_0x3c6ba3(0x172)]))},_0x39c085['provider'+'s']=_0x27f976,_0x244aa2[_0x3c6ba3(0x148)]=_0x39c085;if(_0x97d53c[_0x3c6ba3(0x142)+'elPrimar'+_0x3c6ba3(0x172)]){const _0x166ef2=asRecord(_0x244aa2['agents']),_0x4c9cea=asRecord(_0x166ef2[_0x3c6ba3(0x1bc)]);_0x4c9cea[_0x3c6ba3(0x142)+'el']={...asRecord(_0x4c9cea[_0x3c6ba3(0x142)+'el']),'primary':_0x2b197d+'/'+_0x97d53c[_0x3c6ba3(0x142)+_0x3c6ba3(0x17d)+_0x3c6ba3(0x172)]},_0x166ef2[_0x3c6ba3(0x1bc)]=_0x4c9cea,_0x244aa2[_0x3c6ba3(0x185)]=_0x166ef2;}return await _0x1c1127(_0x244aa2,'self-ope'+'rated\x20mo'+_0x3c6ba3(0x137)+_0x3c6ba3(0x140)),{'ok':!![]};}async function _0x365d4e({callbackUrl:_0x4f6f0e,secret:_0x531b9a}){const _0x4f69e8=_0x272f25,_0x31a166=await _0x2cfab7(),_0x424d32=asRecord(_0x31a166[_0x4f69e8(0x1b4)]),_0xa73ad2=asRecord(_0x424d32[_0x4f69e8(0x1a2)]),_0x25c72b=asRecord(_0xa73ad2[ASK_USER_QUESTION_PLUGIN_ID]);return _0xa73ad2[ASK_USER_QUESTION_PLUGIN_ID]={..._0x25c72b,'enabled':!![],'config':{...asRecord(_0x25c72b[_0x4f69e8(0x168)]),'callbackUrl':_0x4f6f0e,'secret':_0x531b9a}},_0x424d32['entries']=_0xa73ad2,_0x424d32[_0x4f69e8(0x1af)]=dedupeStrings([...(Array[_0x4f69e8(0x171)](_0x424d32[_0x4f69e8(0x1af)])?_0x424d32[_0x4f69e8(0x1af)]:[])[_0x4f69e8(0x181)](Boolean),ASK_USER_QUESTION_PLUGIN_ID]),_0x31a166[_0x4f69e8(0x1b4)]=_0x424d32,await _0x1c1127(_0x31a166,''),{'ok':!![]};}async function _0x1c1127(_0x165aa6,_0x141441=''){const _0x208fcc=_0x272f25;_0x5c939f(),await _0x502002(_0x165aa6,_0x141441||_0x208fcc(0x158)+_0x208fcc(0x18e)+'persiste'+'d'),await writeJsonFile(_0x49914a['lastGood'+_0x208fcc(0x180)+'th'],_0x165aa6),_0xbc1f29?.[_0x208fcc(0x1bb)]('last-goo'+_0x208fcc(0x179)+_0x208fcc(0x13e)+'g\x20writte'+'n',{'path':_0x49914a[_0x208fcc(0x16b)+'ConfigPa'+'th'],'reason':_0x141441||'openclaw'+_0x208fcc(0x18e)+_0x208fcc(0x145)+'d'});if(_0x141441)_0xf2e71(_0x141441);}function _0x5c939f(){if(_0x569d3c)_0x56b9e0+=0x1;}function _0x364aea(_0x2cb0d5){_0x4fa935=_0x2cb0d5;}function _0xf2e71(_0x51c0e1){const _0x492516=_0x272f25;if(!_0x4fa935)return;if(_0x10b720)clearTimeout(_0x10b720);_0xbc1f29?.[_0x492516(0x1bb)](_0x492516(0x17a)+_0x492516(0x15c)+_0x492516(0x1c0)+_0x492516(0x15a)+_0x492516(0x159)+'ge',{'reason':_0x51c0e1,'debounceMs':0xfa}),_0x10b720=setTimeout(()=>_0x4fa935(_0x51c0e1),0xfa);}function _0x3e9767(){const _0x49a100=_0x272f25;unwatchFile(_0x49914a['configPa'+'th']),_0x569d3c=!![],watchFile(_0x49914a[_0x49a100(0x189)+'th'],{'interval':0x3e8},(_0x439abe,_0x1c2e06)=>{const _0x3c30dd=_0x49a100;if(_0x439abe[_0x3c30dd(0x1c6)]===_0x1c2e06['mtimeMs'])return;if(_0x56b9e0>0x0){_0x56b9e0-=0x1,_0xbc1f29?.[_0x3c30dd(0x1bb)](_0x3c30dd(0x183)+_0x3c30dd(0x17f)+'her\x20igno'+_0x3c30dd(0x194)+_0x3c30dd(0x182)+'te',{'configPath':_0x49914a[_0x3c30dd(0x189)+'th'],'ignoredConfigWatchReloads':_0x56b9e0});return;}_0xbc1f29?.[_0x3c30dd(0x1bb)](_0x3c30dd(0x183)+_0x3c30dd(0x17f)+_0x3c30dd(0x155)+'rved\x20ext'+_0x3c30dd(0x1ac)+_0x3c30dd(0x1ad),{'configPath':_0x49914a[_0x3c30dd(0x189)+'th']}),_0xf2e71(_0x3c30dd(0x154)+_0x3c30dd(0x184));});}function _0x3ac860(){const _0x1b51f0=_0x272f25;if(_0x10b720)clearTimeout(_0x10b720);unwatchFile(_0x49914a[_0x1b51f0(0x189)+'th']),_0x569d3c=![],_0x56b9e0=0x0;}return{'paths':_0x49914a,'resolveConfigPath':_0x33721b,'resolveStateDir':_0xbcc4d0,'resolveDeviceIdentityPath':_0x3dce05,'ensureConfigPathEnv':_0x53c077,'ensureInitialConfig':_0x294036,'ensureGatewaySettings':_0x1e1212,'readConfig':_0x2cfab7,'writeConfig':_0x502002,'syncRuntimePlugins':_0x80672c,'getModelSettings':_0x4aa76f,'setModelSettings':_0x2329b4,'setSelfOperatedModels':_0x1f0acc,'ensureAskUserQuestionPluginConfig':_0x365d4e,'markConfigWriteHandledInternally':_0x5c939f,'setGatewayRestartHandler':_0x364aea,'watchConfigChanges':_0x3e9767,'dispose':_0x3ac860};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x3f1376=_0x47a1;(function(_0x48e146,_0x416511){const _0xdf1eb3=_0x47a1,_0x1d3677=_0x48e146();while(!![]){try{const _0x134b03=-parseInt(_0xdf1eb3(0x14c))/0x1*(parseInt(_0xdf1eb3(0x11e))/0x2)+parseInt(_0xdf1eb3(0x113))/0x3*(parseInt(_0xdf1eb3(0x179))/0x4)+-parseInt(_0xdf1eb3(0x117))/0x5+-parseInt(_0xdf1eb3(0x157))/0x6+parseInt(_0xdf1eb3(0x1a7))/0x7*(-parseInt(_0xdf1eb3(0x143))/0x8)+parseInt(_0xdf1eb3(0x104))/0x9+parseInt(_0xdf1eb3(0x133))/0xa;if(_0x134b03===_0x416511)break;else _0x1d3677['push'](_0x1d3677['shift']());}catch(_0x58e28e){_0x1d3677['push'](_0x1d3677['shift']());}}}(_0x2b8a,0x1b16e));import _0x46698a from'electron';import{fileURLToPath}from'node:url';import{dirname,join,resolve}from'node:path';import{readFile,writeFile}from'node:fs/promises';import{loadShellConfig}from'@wujie-shell/config';import{createConfigController}from'../config-controller.mjs';import{createGatewayController}from'../gateway-controller.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,'preload.'+_0x3f1376(0x130)),{app,BrowserWindow,dialog,globalShortcut,ipcMain,shell}=_0x46698a,DEVTOOLS_ACCELERATOR=_0x3f1376(0x145)+_0x3f1376(0x18c)+_0x3f1376(0xdd);function _0x47a1(_0x56f4b5,_0x48a7e7){_0x56f4b5=_0x56f4b5-0xdb;const _0x2b8a59=_0x2b8a();let _0x47a13b=_0x2b8a59[_0x56f4b5];return _0x47a13b;}function _0x2b8a(){const _0xf76646=['abort','+Shift+I','ory-info','elected-','agents','title','\x20shortcu','webConte','stion','tatus','restart','send','nts','activate','-once','hell]\x20fa','config:r','appId','window-a','e:shared','history','then','files:re','ell:even','canceled','agent-ev','darwin','isMaximi','models','will-qui','ist','-context','quit','getVersi','runtimeI','content','way\x20is\x20n','lect-dir','minimize','rename','684585NnihHd','ections','ectory','elete','unmaximi','efault','kUserQue','t:\x20','lect-fil','ead','catch','ools','[wujie-s','-restart','\x20request','12KhGxjG','log','loadFile','unregist','947880jCYnjd','nfo','updated','sender','ll-close','chat','ite','66qQtuGw','iled\x20to\x20','dels','filePath','chat:his','preventD','sharedCo','e:write-','handle','openPath','customMo','-url','Dialog','chat:str','ntext','ite-bina','sessions','director','mjs',':delete','length','3262310kLhHfm',':runtime','eam','tLogs','filters','cwd','cron:run','openDire','nstall','-shortcu','default','ot\x20initi','ell\x20boot','skills','irectory','openExte','7136ZitwUN','hiddenIn','CommandO','ndows','#f8fafc','getRecen','register','create','utf8','512RVRajj','app:open','pinnedKe',':gateway','before-q','ame','shared-c','cron','runOnce','message','-logs','531972lHFGmr','boot\x20ele','ask-user','tory','files:se','uit',':pinned-','path','agents:l','ell\x20gate','agents-u','close','openDevT','index.ht','skills:u','delete','dataDir','openclaw','fromWebC','files:wr','ontents','cron:log','chat:abo','workspac','set','install','dist','window:m','ettings','ate','whenRead','logs','detach','yed','86752OkGRyq','ned-keys','setName',':answer-','read','gateway-','cron:lis','string','session-','-questio','devtools','multiSel',':list','lose','showOpen','platform','oot','wujie-sh','productN','rControl',':rename','zed','limit','ad-binar','settings','alized','status','ctron\x20ma','getAllWi','warn','-info','skills:d','ent','config','yInfo','maximize',':create','window:t','window:c','ustom-mo','isDestro','pdate','ximize','pen-devt','stop','remove','651cCsVvW','list','renderer','writeSha'];_0x2b8a=function(){return _0xf76646;};return _0x2b8a();}let mainWindow=null,shellConfig=null,configController=null,gatewayController=null,bootError=null;function resolveProjectRoot(){const _0x13ecc1=_0x3f1376;return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT||process[_0x13ecc1(0x138)]());}function broadcast(_0x9c83c7,_0x117f83){const _0x169122=_0x3f1376;for(const _0x1865b9 of BrowserWindow[_0x169122(0x195)+'ndows']()){!_0x1865b9[_0x169122(0xe3)+_0x169122(0xe8)][_0x169122(0x1a1)+_0x169122(0x178)]()&&_0x1865b9[_0x169122(0xe3)+_0x169122(0xe8)][_0x169122(0xe7)](_0x169122(0x18a)+_0x169122(0xf3)+'t',{'name':_0x9c83c7,'payload':_0x117f83});}}function openDevToolsForActiveContext(){const _0x5a47f2=_0x3f1376,_0x2305be=BrowserWindow['getFocus'+'edWindow']()||mainWindow;if(!_0x2305be||_0x2305be[_0x5a47f2(0x1a1)+'yed']())return{'ok':![]};return _0x2305be[_0x5a47f2(0xe3)+_0x5a47f2(0xe8)][_0x5a47f2(0x163)+_0x5a47f2(0x10f)]({'mode':'detach'}),_0x2305be[_0x5a47f2(0xe3)+'nts']['send']('wujie-sh'+_0x5a47f2(0xf3)+'t',{'name':_0x5a47f2(0x183)+_0x5a47f2(0x13c)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x30a11c=_0x3f1376;globalShortcut[_0x30a11c(0x116)+'er'](DEVTOOLS_ACCELERATOR);const _0x46ac38=globalShortcut[_0x30a11c(0x149)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x46ac38&&console[_0x30a11c(0x196)](_0x30a11c(0x110)+'hell]\x20fa'+'iled\x20to\x20'+_0x30a11c(0x149)+_0x30a11c(0xe2)+_0x30a11c(0x10b)+DEVTOOLS_ACCELERATOR);}async function createWindow(){const _0x451fc2=_0x3f1376;mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x451fc2(0x18b)+'ame'],'backgroundColor':_0x451fc2(0x147),'titleBarStyle':process[_0x451fc2(0x188)]===_0x451fc2(0xf6)?_0x451fc2(0x144)+_0x451fc2(0x16f):_0x451fc2(0x13d),'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}});const _0x4f68d2=process.env.VITE_DEV_SERVER_URL;_0x4f68d2?(await mainWindow['loadURL'](_0x4f68d2),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow['webConte'+_0x451fc2(0xe8)][_0x451fc2(0x163)+_0x451fc2(0x10f)]({'mode':_0x451fc2(0x177)})):await mainWindow[_0x451fc2(0x115)](join(shellConfig['projectR'+_0x451fc2(0x189)],_0x451fc2(0x171),_0x451fc2(0x164)+'ml'));}function installIpcHandlers(){const _0x17c6d0=_0x3f1376,_0x11494b=(_0x2efecb,_0x58ae01)=>{const _0xc660b6=_0x47a1;ipcMain[_0xc660b6(0x126)](_0x2efecb,async(_0x5e5168,_0x1abb89)=>_0x58ae01(_0x5e5168,_0x1abb89));},_0x581f31=()=>{const _0x5daf43=_0x47a1;if(!gatewayController)throw new Error(bootError?_0x5daf43(0x18a)+_0x5daf43(0x13f)+'\x20failed:'+'\x20'+bootError:_0x5daf43(0x18a)+_0x5daf43(0x160)+_0x5daf43(0x100)+_0x5daf43(0x13e)+_0x5daf43(0x192));return gatewayController;};_0x11494b('app:info',async()=>({'name':shellConfig[_0x17c6d0(0x18b)+_0x17c6d0(0x151)],'version':app[_0x17c6d0(0xfd)+'on'](),'appId':shellConfig[_0x17c6d0(0xed)],'dataDir':shellConfig[_0x17c6d0(0x167)]})),_0x11494b(_0x17c6d0(0x14d)+_0x17c6d0(0x129),async(_0xb415b0,_0x1768f9)=>{const _0x5a7a3b=_0x17c6d0,_0x37a0db=typeof _0x1768f9===_0x5a7a3b(0x180)?_0x1768f9:'';if(!_0x37a0db)return{'ok':![]};return await shell[_0x5a7a3b(0x142)+'rnal'](_0x37a0db),{'ok':!![]};}),_0x11494b(_0x17c6d0(0x172)+'inimize',_0x355850=>{const _0x3039cb=_0x17c6d0;return BrowserWindow['fromWebC'+_0x3039cb(0x16b)](_0x355850['sender'])?.[_0x3039cb(0x102)](),{'ok':!![]};}),_0x11494b(_0x17c6d0(0x19e)+'oggle-ma'+_0x17c6d0(0x1a3),_0x19ee1f=>{const _0x36d0bf=_0x17c6d0,_0x4ed626=BrowserWindow[_0x36d0bf(0x169)+_0x36d0bf(0x16b)](_0x19ee1f[_0x36d0bf(0x11a)]);if(!_0x4ed626)return{'isMaximized':![]};if(_0x4ed626[_0x36d0bf(0xf7)+'zed']())_0x4ed626[_0x36d0bf(0x108)+'ze']();else _0x4ed626[_0x36d0bf(0x19c)]();return{'isMaximized':_0x4ed626['isMaximi'+_0x36d0bf(0x18e)]()};}),_0x11494b(_0x17c6d0(0x19f)+_0x17c6d0(0x186),_0x4d5ce9=>{const _0xe8e4cf=_0x17c6d0;return BrowserWindow[_0xe8e4cf(0x169)+_0xe8e4cf(0x16b)](_0x4d5ce9[_0xe8e4cf(0x11a)])?.[_0xe8e4cf(0x162)](),{'ok':!![]};}),_0x11494b('window:o'+_0x17c6d0(0x1a4)+_0x17c6d0(0x10f),()=>openDevToolsForActiveContext()),_0x11494b(_0x17c6d0(0x168)+_0x17c6d0(0x134)+_0x17c6d0(0x197),()=>_0x581f31()[_0x17c6d0(0xfe)+_0x17c6d0(0x118)]()),_0x11494b(_0x17c6d0(0x168)+_0x17c6d0(0x14f)+'-status',()=>_0x581f31()['getStatu'+'s']()),_0x11494b(_0x17c6d0(0x168)+_0x17c6d0(0x14f)+_0x17c6d0(0x111),()=>_0x581f31()[_0x17c6d0(0xe6)](_0x17c6d0(0x1a9)+_0x17c6d0(0x112))),_0x11494b(_0x17c6d0(0x168)+_0x17c6d0(0x14f)+_0x17c6d0(0x156),(_0x29e790,_0x3d06f3={})=>_0x581f31()[_0x17c6d0(0x148)+_0x17c6d0(0x136)](_0x3d06f3?.[_0x17c6d0(0x18f)]??0xc8)),_0x11494b(_0x17c6d0(0x168)+_0x17c6d0(0x17c)+_0x17c6d0(0x159)+_0x17c6d0(0x182)+'n',(_0x578744,_0x241ec9)=>_0x581f31()['answerAs'+_0x17c6d0(0x10a)+_0x17c6d0(0xe4)](_0x241ec9)),_0x11494b(_0x17c6d0(0x15f)+_0x17c6d0(0xfa),()=>_0x581f31()[_0x17c6d0(0xe0)][_0x17c6d0(0x1a8)]()),_0x11494b('skills:s'+_0x17c6d0(0xe5),(_0x1f0c15,_0x554bbf)=>_0x581f31()[_0x17c6d0(0x140)][_0x17c6d0(0x193)](_0x554bbf)),_0x11494b('sessions'+_0x17c6d0(0x19d),(_0x4df297,_0x52260f)=>_0x581f31()['sessions'][_0x17c6d0(0x14a)](_0x52260f)),_0x11494b(_0x17c6d0(0x12e)+_0x17c6d0(0x185),(_0x28d22a,_0x5a6015)=>_0x581f31()[_0x17c6d0(0x12e)][_0x17c6d0(0x1a8)](_0x5a6015)),_0x11494b(_0x17c6d0(0x12e)+_0x17c6d0(0x131),(_0x1bcf67,_0x2f6953)=>_0x581f31()[_0x17c6d0(0x12e)][_0x17c6d0(0x166)](_0x2f6953)),_0x11494b(_0x17c6d0(0x12b)+_0x17c6d0(0x135),(_0x4aa1bb,_0x3883fe)=>_0x581f31()[_0x17c6d0(0x11c)]['stream'](_0x3883fe)),_0x11494b(_0x17c6d0(0x16d)+'rt',(_0x2c9232,_0x215834)=>_0x581f31()[_0x17c6d0(0x11c)][_0x17c6d0(0xdc)](_0x215834)),_0x11494b(_0x17c6d0(0x122)+_0x17c6d0(0x15a),(_0x3b5fc9,_0x33f833)=>_0x581f31()['chat'][_0x17c6d0(0xf0)](_0x33f833)),_0x11494b('files:re'+'ad',(_0x428dea,_0x52e332)=>readFile(_0x52e332,_0x17c6d0(0x14b))),_0x11494b(_0x17c6d0(0xf2)+_0x17c6d0(0x190)+'y',async(_0x23254a,_0x19cac9)=>new Uint8Array(await readFile(_0x19cac9))),_0x11494b('files:wr'+_0x17c6d0(0x11d),async(_0x4b44f7,_0x31d344={})=>{const _0x5bf964=_0x17c6d0;return await writeFile(_0x31d344[_0x5bf964(0x15e)],_0x31d344[_0x5bf964(0xff)]??'',_0x5bf964(0x14b)),{'ok':!![]};}),_0x11494b(_0x17c6d0(0x16a)+_0x17c6d0(0x12d)+'ry',async(_0x502344,_0x4bf9ca={})=>{const _0x441ee0=_0x17c6d0;return await writeFile(_0x4bf9ca[_0x441ee0(0x15e)],Buffer['from'](_0x4bf9ca[_0x441ee0(0xff)]??[])),{'ok':!![]};}),_0x11494b(_0x17c6d0(0x15b)+_0x17c6d0(0x10c)+'e',async(_0x193c81,_0xfd858={})=>{const _0x10f4d2=_0x17c6d0,_0x443ba3=await dialog[_0x10f4d2(0x187)+_0x10f4d2(0x12a)](BrowserWindow[_0x10f4d2(0x169)+_0x10f4d2(0x16b)](_0x193c81['sender'])??mainWindow,{'title':typeof _0xfd858[_0x10f4d2(0xe1)]===_0x10f4d2(0x180)?_0xfd858[_0x10f4d2(0xe1)]:undefined,'properties':['openFile',..._0xfd858[_0x10f4d2(0x184)+_0x10f4d2(0x105)]?[_0x10f4d2(0x184)+_0x10f4d2(0x105)]:[]],'filters':Array['isArray'](_0xfd858[_0x10f4d2(0x137)])?_0xfd858[_0x10f4d2(0x137)]:undefined});return{'canceled':_0x443ba3['canceled'],'paths':_0x443ba3['filePath'+'s']};}),_0x11494b(_0x17c6d0(0x15b)+_0x17c6d0(0x101)+_0x17c6d0(0x106),async(_0x3961d5,_0x1ae0d2={})=>{const _0x27ecb8=_0x17c6d0,_0xe69a8d=await dialog[_0x27ecb8(0x187)+_0x27ecb8(0x12a)](BrowserWindow[_0x27ecb8(0x169)+_0x27ecb8(0x16b)](_0x3961d5[_0x27ecb8(0x11a)])??mainWindow,{'title':typeof _0x1ae0d2[_0x27ecb8(0xe1)]==='string'?_0x1ae0d2['title']:undefined,'properties':[_0x27ecb8(0x13a)+'ctory']});return{'canceled':_0xe69a8d[_0x27ecb8(0xf4)],'paths':_0xe69a8d[_0x27ecb8(0x121)+'s']};}),_0x11494b(_0x17c6d0(0x16e)+'e:direct'+_0x17c6d0(0xde),()=>_0x581f31()[_0x17c6d0(0x16e)+'e'][_0x17c6d0(0x12f)+_0x17c6d0(0x19b)]()),_0x11494b(_0x17c6d0(0x16e)+'e:open-d'+_0x17c6d0(0x141),async()=>{const _0xc50213=_0x17c6d0,_0x3bff8e=await _0x581f31()[_0xc50213(0x16e)+'e'][_0xc50213(0x12f)+'yInfo']();return await shell[_0xc50213(0x127)](_0x3bff8e[_0xc50213(0x15e)]),{'ok':!![],'path':_0x3bff8e[_0xc50213(0x15e)]};}),_0x11494b(_0x17c6d0(0x16e)+_0x17c6d0(0xef)+_0x17c6d0(0xfb),()=>_0x581f31()[_0x17c6d0(0x16e)+'e'][_0x17c6d0(0x124)+_0x17c6d0(0x12c)]()),_0x11494b(_0x17c6d0(0x16e)+_0x17c6d0(0x125)+_0x17c6d0(0x152)+'ontext',(_0x122858,_0x4b1c51)=>_0x581f31()['workspac'+'e'][_0x17c6d0(0xdb)+'redConte'+'xt'](_0x4b1c51)),_0x11494b('sessions'+_0x17c6d0(0x18d),(_0x555c4d,_0x4552a3)=>_0x581f31()[_0x17c6d0(0x12e)][_0x17c6d0(0x103)](_0x4552a3)),_0x11494b(_0x17c6d0(0x12e)+_0x17c6d0(0x15d)+'keys',()=>_0x581f31()[_0x17c6d0(0x12e)][_0x17c6d0(0x14e)+'ys']()),_0x11494b(_0x17c6d0(0x12e)+':set-pin'+_0x17c6d0(0x17a),(_0x14eff0,_0x3c9a68)=>_0x581f31()[_0x17c6d0(0x12e)]['setPinne'+'dKeys'](_0x3c9a68)),_0x11494b('skills:i'+_0x17c6d0(0x13b),(_0x331a44,_0x51312d)=>_0x581f31()[_0x17c6d0(0x140)][_0x17c6d0(0x170)](_0x51312d)),_0x11494b(_0x17c6d0(0x165)+_0x17c6d0(0x1a2),(_0xfcb24f,_0x4e436d)=>_0x581f31()[_0x17c6d0(0x140)]['update'](_0x4e436d)),_0x11494b(_0x17c6d0(0x198)+_0x17c6d0(0x107),(_0x53adab,_0x16ec64)=>_0x581f31()['skills'][_0x17c6d0(0x166)](_0x16ec64)),_0x11494b(_0x17c6d0(0x17f)+'t',(_0x4e529b,_0x4a4e31)=>_0x581f31()[_0x17c6d0(0x153)][_0x17c6d0(0x1a8)](_0x4a4e31)),_0x11494b('cron:cre'+_0x17c6d0(0x174),(_0x1603e0,_0x418266)=>_0x581f31()[_0x17c6d0(0x153)]['create'](_0x418266)),_0x11494b('cron:upd'+_0x17c6d0(0x174),(_0x42fb53,_0x50dbe0)=>_0x581f31()['cron']['update'](_0x50dbe0)),_0x11494b('cron:rem'+'ove',(_0x4e4a3f,_0x3b3686)=>_0x581f31()[_0x17c6d0(0x153)][_0x17c6d0(0x1a6)](_0x3b3686)),_0x11494b(_0x17c6d0(0x139)+_0x17c6d0(0xea),(_0x3cfd27,_0x29bf2f)=>_0x581f31()[_0x17c6d0(0x153)][_0x17c6d0(0x154)](_0x29bf2f)),_0x11494b(_0x17c6d0(0x16c)+'s',(_0x31df54,_0x45dcfa)=>_0x581f31()[_0x17c6d0(0x153)][_0x17c6d0(0x176)](_0x45dcfa)),_0x11494b('models:s'+_0x17c6d0(0x173),()=>_0x581f31()['models'][_0x17c6d0(0x191)]()),_0x11494b('models:s'+_0x17c6d0(0xdf)+'model-id',()=>_0x581f31()['models']['selected'+'ModelId']()),_0x11494b('models:c'+_0x17c6d0(0x1a0)+_0x17c6d0(0x120),()=>_0x581f31()[_0x17c6d0(0xf8)][_0x17c6d0(0x128)+_0x17c6d0(0x120)]()),_0x11494b(_0x17c6d0(0xec)+_0x17c6d0(0x10d),()=>_0x581f31()[_0x17c6d0(0x19a)][_0x17c6d0(0x17d)]());}async function boot(){const _0x3f9e89=_0x3f1376;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x3f9e89(0x17b)](shellConfig[_0x3f9e89(0x18b)+_0x3f9e89(0x151)]),configController=createConfigController(shellConfig),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app['getVersi'+'on']()});for(const _0x4ae007 of[_0x3f9e89(0x17e)+_0x3f9e89(0x193),_0x3f9e89(0x17e)+_0x3f9e89(0x114),'chat-str'+'eam-even'+'t',_0x3f9e89(0x181)+_0x3f9e89(0x119),_0x3f9e89(0xf5)+_0x3f9e89(0x199),_0x3f9e89(0x161)+'pdated','ask-user'+_0x3f9e89(0x182)+'n']){gatewayController['on'](_0x4ae007,_0x5153d=>broadcast(_0x4ae007,_0x5153d));}installIpcHandlers(),registerShellShortcuts(),await createWindow(),await gatewayController['start']();}app['on'](_0x3f1376(0xee)+_0x3f1376(0x11b)+'d',()=>{const _0x3b25f6=_0x3f1376;if(process[_0x3b25f6(0x188)]!==_0x3b25f6(0xf6))app[_0x3b25f6(0xfc)]();}),app['on'](_0x3f1376(0xe9),async()=>{const _0x91ac24=_0x3f1376;BrowserWindow['getAllWi'+_0x91ac24(0x146)]()[_0x91ac24(0x132)]===0x0&&shellConfig&&await createWindow();}),app['on'](_0x3f1376(0x150)+_0x3f1376(0x15c),_0xf78535=>{const _0x48257d=_0x3f1376;if(!gatewayController)return;_0xf78535[_0x48257d(0x123)+_0x48257d(0x109)](),void gatewayController[_0x48257d(0x1a5)]()['finally'](()=>{const _0x4c8843=_0x48257d;gatewayController=null,app[_0x4c8843(0xfc)]();});}),app['on'](_0x3f1376(0xf9)+'t',()=>{globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x3f1376(0x175)+'y']()[_0x3f1376(0xf1)](boot)[_0x3f1376(0x10e)](_0x5521ea=>{const _0xaf9c24=_0x3f1376;bootError=_0x5521ea instanceof Error?_0x5521ea[_0xaf9c24(0x155)]:String(_0x5521ea),console['error'](_0xaf9c24(0x110)+_0xaf9c24(0xeb)+_0xaf9c24(0x11f)+_0xaf9c24(0x158)+_0xaf9c24(0x194)+'in',_0x5521ea);});
|
|
1
|
+
const _0x108741=_0x961c;(function(_0x4f16bf,_0x3ac052){const _0x2fbe58=_0x961c,_0xced5d6=_0x4f16bf();while(!![]){try{const _0x20ed39=parseInt(_0x2fbe58(0x299))/0x1*(parseInt(_0x2fbe58(0x21b))/0x2)+-parseInt(_0x2fbe58(0x245))/0x3*(parseInt(_0x2fbe58(0x28d))/0x4)+-parseInt(_0x2fbe58(0x274))/0x5+parseInt(_0x2fbe58(0x283))/0x6*(parseInt(_0x2fbe58(0x1c7))/0x7)+-parseInt(_0x2fbe58(0x254))/0x8*(parseInt(_0x2fbe58(0x252))/0x9)+-parseInt(_0x2fbe58(0x1b0))/0xa+parseInt(_0x2fbe58(0x21e))/0xb;if(_0x20ed39===_0x3ac052)break;else _0xced5d6['push'](_0xced5d6['shift']());}catch(_0x52d223){_0xced5d6['push'](_0xced5d6['shift']());}}}(_0x1576,0x95599));import _0x41831d from'electron';function _0x961c(_0x59dec7,_0xc25447){_0x59dec7=_0x59dec7-0x182;const _0x15768d=_0x1576();let _0x961c88=_0x15768d[_0x59dec7];return _0x961c88;}import{fileURLToPath}from'node:url';import{dirname,join,resolve}from'node:path';function _0x1576(){const _0x40d780=['oggle-ma','ernal\x20ur','binary\x20f','n-direct','delete','byteLeng','configPa','cron:cre',':create','minimize','agents:l','content','\x20excepti','isMaximi','pinnedKe','send','ipc\x20requ','filePath','preventD','ll-close','l\x20reques','1921323kJPQEy','dow\x20load','window:m','window:c','filters','cron:run','logs:exp','pping\x20ga','context','teway','\x20failed:','\x20failed','setPinne','299556pNQTov','-restart','192NtrldX','dels','loadFile','runtimeI','cron','chrome','platform','irectory','path','agents-u','files:se','ximize','settings','ectory\x20o','workspac','wujie-sh','-questio','isArray','efault','hiddenIn','tory','pdated','config','trim','shared-c','appId','before\x20q','create','open\x20ext','limit','ndows','dRejecti','969200WdRiHf','dev','ontext','boot\x20ele','quit','-logs','ocess-go','ile\x20read','remove','whenRead',':answer-','length','openclaw','devtools','loadURL','254202qMpaVL','redConte','message','unregist','e:direct','set','openPath','chat:str','ent','odels','4TRhqfK','yInfo',':delete','utf8','est\x20fail','canceled','getVersi','elected-','ion','models:s','ile\x20writ','install','373tfcYXt','answerAs','-status','-info','ot\x20compl','\x20log','ell:even','est\x20comp','cron:log','finally','ned-keys','select\x20f','-once','file\x20rea','senderFr','d\x20comple','getRecen','stop','ocess\x20go','dataDir','electron','sessions','[wujie-s','info','object','rocess-g','map','logs','Exceptio','uit:\x20sto','dist','index.ht','projectR','ontents',':pinned-','config:r','ctron\x20ma','kUserQue','pened','then','et-self-','operated','meta','rename','ort','ove','est\x20star','oot','window:o','peratedM','agents','chat','cron:upd','logs:ope','logs:wri','preload.','restart','11788880AIMLMG','list','ory\x20open','uncaught','nstall','eam','ngs','\x20process','model-id','read','+Shift+I','skills','t:\x20','renderer','logsDir','productN','ools','nfo','ite-bina','zed','sharedCo','getAllWi','openExte','28GLmOMg','files:re','getURL','stion',':rename','darwin','updated','ctory','dKeys','logs\x20dir','session-','default','ettings','e:shared','nts','multiSel','status','render-p','main\x20win','file\x20wri','detach',':set-pin','inimize','ite','lose','ot\x20faile','select\x20d','versions','sender','gateway-','main','ory-info','close','\x20request','hell]\x20fa','ell\x20gate','prod','unhandle','uit','openDire','files','customMo','ory','targetDi','ead','ate','files:wr','level','app:info','title','e\x20direct','cwd','#f8fafc','setSelfO','fromWebC',':gateway','writeSha','eted','logs\x20exp','models','now','runOnce','agent-ev','ustom-mo','-context','ad-binar','string','CommandO','isDestro','Dialog','e:open-d','getFocus','director','paths','ask-user','ile\x20comp','ame','\x20complet','will-qui','iled\x20to\x20','error','ot\x20initi','setName','webConte','1046ZsRndT','ections','register','33650925XIWkaw','elete','maximize','-url','window:t','\x20main\x20wi','d\x20failed','ndow','ted','handle','one',':list','alized','getStatu','chat-str','app:open','creating','arch'];_0x1576=function(){return _0x40d780;};return _0x1576();}import{readFile,stat,writeFile}from'node:fs/promises';import{loadShellConfig}from'@wujie-shell/config';import{createConfigController}from'../config-controller.mjs';import{createGatewayController}from'../gateway-controller.mjs';import{createShellLogger,exportLogsArchive,summarizeError,summarizePayload,summarizeText,toHomePath}from'../logging.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,_0x108741(0x1ae)+'mjs'),{app,BrowserWindow,dialog,globalShortcut,ipcMain,shell}=_0x41831d,DEVTOOLS_ACCELERATOR=_0x108741(0x20a)+'rControl'+_0x108741(0x1ba);let mainWindow=null,shellConfig=null,configController=null,gatewayController=null,bootError=null,mainLogger=null,ipcLogger=null,filesLogger=null,rendererLogger=null;function getMode(){const _0x32e366=_0x108741;return process.env.VITE_DEV_SERVER_URL?_0x32e366(0x275):_0x32e366(0x1eb);}function resolveProjectRoot(){const _0x3abb58=_0x108741;return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT||process[_0x3abb58(0x1fa)]());}function broadcast(_0x4e039c,_0x56a066){const _0x2284ff=_0x108741;for(const _0x38f850 of BrowserWindow[_0x2284ff(0x1c5)+_0x2284ff(0x272)]()){!_0x38f850[_0x2284ff(0x21a)+'nts'][_0x2284ff(0x20b)+'yed']()&&_0x38f850[_0x2284ff(0x21a)+_0x2284ff(0x1d5)]['send']('wujie-sh'+_0x2284ff(0x29f)+'t',{'name':_0x4e039c,'payload':_0x56a066});}}function openDevToolsForActiveContext(){const _0x42d2a2=_0x108741,_0x393fde=BrowserWindow[_0x42d2a2(0x20e)+'edWindow']()||mainWindow;if(!_0x393fde||_0x393fde[_0x42d2a2(0x20b)+'yed']())return{'ok':![]};return _0x393fde['webConte'+'nts']['openDevT'+_0x42d2a2(0x1c0)]({'mode':_0x42d2a2(0x1db)}),_0x393fde[_0x42d2a2(0x21a)+_0x42d2a2(0x1d5)][_0x42d2a2(0x23f)](_0x42d2a2(0x263)+_0x42d2a2(0x29f)+'t',{'name':_0x42d2a2(0x281)+'-shortcu'+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x208b92=_0x108741;globalShortcut[_0x208b92(0x286)+'er'](DEVTOOLS_ACCELERATOR);const _0x29ba42=globalShortcut['register'](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x29ba42&&console['warn'](_0x208b92(0x18d)+_0x208b92(0x1e9)+_0x208b92(0x216)+_0x208b92(0x21d)+'\x20shortcu'+_0x208b92(0x1bc)+DEVTOOLS_ACCELERATOR);}async function createWindow(){const _0x55cfd3=_0x108741,_0x1d3071=process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x55cfd3(0x197)+_0x55cfd3(0x1a6)],_0x55cfd3(0x195),_0x55cfd3(0x196)+'ml');mainLogger?.[_0x55cfd3(0x18e)](_0x55cfd3(0x22e)+_0x55cfd3(0x223)+_0x55cfd3(0x225),{'rendererUrl':_0x1d3071,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x55cfd3(0x1bf)+_0x55cfd3(0x213)],'backgroundColor':_0x55cfd3(0x1fb),'titleBarStyle':process['platform']===_0x55cfd3(0x1cc)?_0x55cfd3(0x267)+_0x55cfd3(0x288):_0x55cfd3(0x1d2),'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}});const _0x1a3cff=process.env.VITE_DEV_SERVER_URL;_0x1a3cff?(await mainWindow[_0x55cfd3(0x282)](_0x1a3cff),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow['webConte'+'nts']['openDevT'+_0x55cfd3(0x1c0)]({'mode':_0x55cfd3(0x1db)})):await mainWindow[_0x55cfd3(0x256)](join(shellConfig[_0x55cfd3(0x197)+_0x55cfd3(0x1a6)],_0x55cfd3(0x195),_0x55cfd3(0x196)+'ml')),mainLogger?.[_0x55cfd3(0x18e)](_0x55cfd3(0x1d9)+_0x55cfd3(0x246)+'ed',{'rendererUrl':_0x1d3071,'mode':getMode()});}function installIpcHandlers(){const _0x12a34a=_0x108741,_0x5a9d02=(_0xd0e251,_0x2c77d7)=>{const _0x2fa178=_0x961c;ipcMain[_0x2fa178(0x227)](_0xd0e251,async(_0x1ef6f4,_0x2a9b22)=>{const _0x49a1e8=_0x2fa178,_0x34be4d=Date['now'](),_0x1f3721=_0x1ef6f4[_0x49a1e8(0x185)+_0x49a1e8(0x213)]?.['url']||_0x1ef6f4[_0x49a1e8(0x1e3)][_0x49a1e8(0x1c9)]();ipcLogger?.[_0x49a1e8(0x18e)]('ipc\x20requ'+_0x49a1e8(0x1a5)+'ted',{'channel':_0xd0e251,'senderUrl':_0x1f3721,'payload':summarizePayload(_0x2a9b22)});try{const _0xa3cf4a=await _0x2c77d7(_0x1ef6f4,_0x2a9b22);return ipcLogger?.['info'](_0x49a1e8(0x240)+_0x49a1e8(0x2a0)+'leted',{'channel':_0xd0e251,'durationMs':Date['now']()-_0x34be4d,'result':summarizePayload(_0xa3cf4a,{'maxDepth':0x2})}),_0xa3cf4a;}catch(_0x517f38){ipcLogger?.[_0x49a1e8(0x217)](_0x49a1e8(0x240)+_0x49a1e8(0x291)+'ed',{'channel':_0xd0e251,'durationMs':Date['now']()-_0x34be4d,'error':summarizeError(_0x517f38)});throw _0x517f38;}});},_0x5ab2ec=()=>{const _0x5b6eb4=_0x961c;if(!gatewayController)throw new Error(bootError?_0x5b6eb4(0x263)+'ell\x20boot'+_0x5b6eb4(0x24f)+'\x20'+bootError:'wujie-sh'+_0x5b6eb4(0x1ea)+'way\x20is\x20n'+_0x5b6eb4(0x218)+_0x5b6eb4(0x22a));return gatewayController;};_0x5a9d02(_0x12a34a(0x1f7),async()=>({'name':shellConfig[_0x12a34a(0x1bf)+_0x12a34a(0x213)],'version':app[_0x12a34a(0x293)+'on'](),'appId':shellConfig[_0x12a34a(0x26d)],'dataDir':shellConfig[_0x12a34a(0x18a)]})),_0x5a9d02(_0x12a34a(0x22d)+_0x12a34a(0x221),async(_0x2c5969,_0x3791f5)=>{const _0x44ea64=_0x12a34a,_0x533978=typeof _0x3791f5==='string'?_0x3791f5:'';if(!_0x533978)return{'ok':![]};return filesLogger?.[_0x44ea64(0x18e)](_0x44ea64(0x270)+_0x44ea64(0x231)+_0x44ea64(0x244)+_0x44ea64(0x226),{'url':summarizeText(_0x533978,0xa0)}),await shell[_0x44ea64(0x1c6)+'rnal'](_0x533978),{'ok':!![]};}),_0x5a9d02(_0x12a34a(0x247)+_0x12a34a(0x1dd),_0x4b4bb1=>{const _0x458373=_0x12a34a;return BrowserWindow[_0x458373(0x1fd)+'ontents'](_0x4b4bb1[_0x458373(0x1e3)])?.[_0x458373(0x239)](),{'ok':!![]};}),_0x5a9d02(_0x12a34a(0x222)+_0x12a34a(0x230)+_0x12a34a(0x25f),_0x522f64=>{const _0x2a42c3=_0x12a34a,_0x298b49=BrowserWindow[_0x2a42c3(0x1fd)+_0x2a42c3(0x198)](_0x522f64[_0x2a42c3(0x1e3)]);if(!_0x298b49)return{'isMaximized':![]};if(_0x298b49[_0x2a42c3(0x23d)+_0x2a42c3(0x1c3)]())_0x298b49['unmaximi'+'ze']();else _0x298b49[_0x2a42c3(0x220)]();return{'isMaximized':_0x298b49['isMaximi'+_0x2a42c3(0x1c3)]()};}),_0x5a9d02(_0x12a34a(0x248)+_0x12a34a(0x1df),_0x4e11c6=>{const _0x39bc3a=_0x12a34a;return BrowserWindow[_0x39bc3a(0x1fd)+'ontents'](_0x4e11c6[_0x39bc3a(0x1e3)])?.[_0x39bc3a(0x1e7)](),{'ok':!![]};}),_0x5a9d02(_0x12a34a(0x1a7)+'pen-devt'+'ools',()=>openDevToolsForActiveContext()),_0x5a9d02(_0x12a34a(0x280)+':runtime'+_0x12a34a(0x29c),()=>_0x5ab2ec()[_0x12a34a(0x257)+_0x12a34a(0x1c1)]()),_0x5a9d02(_0x12a34a(0x280)+_0x12a34a(0x1fe)+_0x12a34a(0x29b),()=>_0x5ab2ec()[_0x12a34a(0x22b)+'s']()),_0x5a9d02(_0x12a34a(0x280)+_0x12a34a(0x1fe)+_0x12a34a(0x253),()=>_0x5ab2ec()[_0x12a34a(0x1af)]('renderer'+_0x12a34a(0x1e8))),_0x5a9d02(_0x12a34a(0x280)+':gateway'+_0x12a34a(0x279),(_0x18dd3d,_0x359ae4={})=>_0x5ab2ec()[_0x12a34a(0x187)+'tLogs'](_0x359ae4?.[_0x12a34a(0x271)]??0xc8)),_0x5a9d02(_0x12a34a(0x280)+_0x12a34a(0x27e)+_0x12a34a(0x211)+_0x12a34a(0x264)+'n',(_0x35684e,_0x3f7791)=>_0x5ab2ec()[_0x12a34a(0x29a)+_0x12a34a(0x19c)+_0x12a34a(0x1ca)](_0x3f7791)),_0x5a9d02(_0x12a34a(0x23a)+'ist',()=>_0x5ab2ec()[_0x12a34a(0x1a9)][_0x12a34a(0x1b1)]()),_0x5a9d02('skills:s'+'tatus',(_0x3223c1,_0x330df2)=>_0x5ab2ec()[_0x12a34a(0x1bb)][_0x12a34a(0x1d7)](_0x330df2)),_0x5a9d02(_0x12a34a(0x18c)+_0x12a34a(0x238),(_0x5d7105,_0x1ed9b0)=>_0x5ab2ec()['sessions'][_0x12a34a(0x26f)](_0x1ed9b0)),_0x5a9d02(_0x12a34a(0x18c)+_0x12a34a(0x229),(_0x304492,_0x50227a)=>_0x5ab2ec()[_0x12a34a(0x18c)][_0x12a34a(0x1b1)](_0x50227a)),_0x5a9d02(_0x12a34a(0x18c)+_0x12a34a(0x28f),(_0xebc955,_0x3cf9bb)=>_0x5ab2ec()['sessions']['delete'](_0x3cf9bb)),_0x5a9d02(_0x12a34a(0x28a)+_0x12a34a(0x1b5),(_0x4e0834,_0x39e5c6)=>_0x5ab2ec()['chat']['stream'](_0x39e5c6)),_0x5a9d02('chat:abo'+'rt',(_0x16ab32,_0x473cb1)=>_0x5ab2ec()[_0x12a34a(0x1aa)]['abort'](_0x473cb1)),_0x5a9d02('chat:his'+_0x12a34a(0x268),(_0x482015,_0x5b87dc)=>_0x5ab2ec()[_0x12a34a(0x1aa)]['history'](_0x5b87dc)),_0x5a9d02(_0x12a34a(0x1ad)+'te',async(_0x3935e1,_0x240661={})=>{const _0x87e296=_0x12a34a,_0x45a8b0=typeof _0x240661[_0x87e296(0x1f6)]===_0x87e296(0x209)?_0x240661['level']:_0x87e296(0x18e),_0x4f33da=typeof _0x240661[_0x87e296(0x285)]===_0x87e296(0x209)?_0x240661['message']:_0x87e296(0x1bd)+_0x87e296(0x29e),_0x1e62f8=typeof _0x240661[_0x87e296(0x24d)]===_0x87e296(0x209)&&_0x240661[_0x87e296(0x24d)][_0x87e296(0x26b)]()?_0x87e296(0x1bd)+':'+_0x240661[_0x87e296(0x24d)][_0x87e296(0x26b)]():_0x87e296(0x1bd),_0x1972b1=_0x240661[_0x87e296(0x1a1)]&&typeof _0x240661['meta']===_0x87e296(0x18f)?summarizePayload(_0x240661[_0x87e296(0x1a1)]):undefined,_0x355619=rendererLogger;if(_0x355619?.[_0x45a8b0])await _0x355619[_0x45a8b0](_0x4f33da,_0x1972b1);else await _0x355619?.[_0x87e296(0x18e)](_0x4f33da,_0x1972b1);return{'ok':!![]};}),_0x5a9d02(_0x12a34a(0x24b)+_0x12a34a(0x1a3),async(_0x53068b,_0x2b89fa={})=>{const _0x2314fa=_0x12a34a,_0x51c15a=typeof _0x2b89fa[_0x2314fa(0x1f2)+'r']===_0x2314fa(0x209)&&_0x2b89fa[_0x2314fa(0x1f2)+'r'][_0x2314fa(0x26b)]()?_0x2b89fa[_0x2314fa(0x1f2)+'r']:undefined,_0x529c03=await exportLogsArchive({'logsDir':configController[_0x2314fa(0x210)][_0x2314fa(0x1be)],'targetDir':_0x51c15a,'appVersion':app['getVersi'+'on']()});return mainLogger?.[_0x2314fa(0x18e)](_0x2314fa(0x201)+'orted',{'path':toHomePath(_0x529c03[_0x2314fa(0x25c)])}),_0x529c03;}),_0x5a9d02(_0x12a34a(0x1ac)+_0x12a34a(0x233)+_0x12a34a(0x1f1),async()=>{const _0x3abc81=_0x12a34a;return await shell[_0x3abc81(0x289)](configController[_0x3abc81(0x210)]['logsDir']),mainLogger?.['info'](_0x3abc81(0x1d0)+_0x3abc81(0x261)+_0x3abc81(0x19d),{'logsDir':toHomePath(configController[_0x3abc81(0x210)][_0x3abc81(0x1be)])}),{'ok':!![],'path':configController[_0x3abc81(0x210)][_0x3abc81(0x1be)]};}),_0x5a9d02(_0x12a34a(0x1c8)+'ad',async(_0x2e611a,_0x1a748d)=>{const _0xabf51a=_0x12a34a,_0x3c1e98=Date[_0xabf51a(0x203)]();try{const _0x8a6430=await readFile(_0x1a748d,'utf8');return filesLogger?.[_0xabf51a(0x18e)]('file\x20rea'+_0xabf51a(0x186)+_0xabf51a(0x226),{'path':toHomePath(_0x1a748d),'bytes':Buffer[_0xabf51a(0x235)+'th'](_0x8a6430),'durationMs':Date[_0xabf51a(0x203)]()-_0x3c1e98}),_0x8a6430;}catch(_0xffb926){filesLogger?.[_0xabf51a(0x217)](_0xabf51a(0x184)+_0xabf51a(0x224),{'path':toHomePath(_0x1a748d),'durationMs':Date[_0xabf51a(0x203)]()-_0x3c1e98,'error':summarizeError(_0xffb926)});throw _0xffb926;}}),_0x5a9d02(_0x12a34a(0x1c8)+_0x12a34a(0x208)+'y',async(_0x39d2af,_0xde4a43)=>{const _0x44e4e5=_0x12a34a,_0x59c483=Date['now']();try{const _0x5d3d74=await readFile(_0xde4a43);return filesLogger?.['info'](_0x44e4e5(0x232)+'ile\x20read'+_0x44e4e5(0x214)+'ed',{'path':toHomePath(_0xde4a43),'bytes':_0x5d3d74[_0x44e4e5(0x235)+'th'],'durationMs':Date[_0x44e4e5(0x203)]()-_0x59c483}),new Uint8Array(_0x5d3d74);}catch(_0x12523c){filesLogger?.[_0x44e4e5(0x217)](_0x44e4e5(0x232)+_0x44e4e5(0x27b)+_0x44e4e5(0x250),{'path':toHomePath(_0xde4a43),'durationMs':Date[_0x44e4e5(0x203)]()-_0x59c483,'error':summarizeError(_0x12523c)});throw _0x12523c;}}),_0x5a9d02('files:wr'+_0x12a34a(0x1de),async(_0x4558a1,_0x585bbd={})=>{const _0x186f55=_0x12a34a,_0x1b2f54=Date[_0x186f55(0x203)]();return await writeFile(_0x585bbd[_0x186f55(0x25c)],_0x585bbd[_0x186f55(0x23b)]??'',_0x186f55(0x290)),filesLogger?.['info'](_0x186f55(0x1da)+'te\x20compl'+'eted',{'path':toHomePath(_0x585bbd[_0x186f55(0x25c)]),'bytes':Buffer[_0x186f55(0x235)+'th'](String(_0x585bbd[_0x186f55(0x23b)]??'')),'durationMs':Date['now']()-_0x1b2f54}),{'ok':!![]};}),_0x5a9d02(_0x12a34a(0x1f5)+_0x12a34a(0x1c2)+'ry',async(_0x48c1f7,_0x3a8c4d={})=>{const _0x179bff=_0x12a34a,_0x20ad89=Date[_0x179bff(0x203)]();await writeFile(_0x3a8c4d[_0x179bff(0x25c)],Buffer['from'](_0x3a8c4d[_0x179bff(0x23b)]??[]));const _0x15dbc7=await stat(_0x3a8c4d['path'])['catch'](()=>null);return filesLogger?.['info'](_0x179bff(0x232)+_0x179bff(0x297)+'e\x20comple'+'ted',{'path':toHomePath(_0x3a8c4d[_0x179bff(0x25c)]),'bytes':_0x15dbc7?.['size']??0x0,'durationMs':Date['now']()-_0x20ad89}),{'ok':!![]};}),_0x5a9d02('files:se'+'lect-fil'+'e',async(_0x49f3da,_0x13af42={})=>{const _0x2f5ef3=_0x12a34a,_0xd89af2=await dialog['showOpen'+_0x2f5ef3(0x20c)](BrowserWindow['fromWebC'+_0x2f5ef3(0x198)](_0x49f3da[_0x2f5ef3(0x1e3)])??mainWindow,{'title':typeof _0x13af42[_0x2f5ef3(0x1f8)]===_0x2f5ef3(0x209)?_0x13af42[_0x2f5ef3(0x1f8)]:undefined,'properties':['openFile',..._0x13af42[_0x2f5ef3(0x1d6)+'ections']?['multiSel'+_0x2f5ef3(0x21c)]:[]],'filters':Array[_0x2f5ef3(0x265)](_0x13af42[_0x2f5ef3(0x249)])?_0x13af42['filters']:undefined});return filesLogger?.[_0x2f5ef3(0x18e)](_0x2f5ef3(0x182)+_0x2f5ef3(0x212)+'leted',{'canceled':_0xd89af2[_0x2f5ef3(0x292)],'count':_0xd89af2['filePath'+'s'][_0x2f5ef3(0x27f)],'paths':_0xd89af2[_0x2f5ef3(0x241)+'s']['map'](toHomePath)}),{'canceled':_0xd89af2[_0x2f5ef3(0x292)],'paths':_0xd89af2[_0x2f5ef3(0x241)+'s']};}),_0x5a9d02(_0x12a34a(0x25e)+'lect-dir'+'ectory',async(_0x32586f,_0x17a549={})=>{const _0x36b5ae=_0x12a34a,_0x1d140b=await dialog['showOpen'+_0x36b5ae(0x20c)](BrowserWindow['fromWebC'+_0x36b5ae(0x198)](_0x32586f['sender'])??mainWindow,{'title':typeof _0x17a549[_0x36b5ae(0x1f8)]===_0x36b5ae(0x209)?_0x17a549[_0x36b5ae(0x1f8)]:undefined,'properties':[_0x36b5ae(0x1ee)+_0x36b5ae(0x1ce)]});return filesLogger?.['info'](_0x36b5ae(0x1e1)+_0x36b5ae(0x25b)+_0x36b5ae(0x214)+'ed',{'canceled':_0x1d140b['canceled'],'count':_0x1d140b[_0x36b5ae(0x241)+'s'][_0x36b5ae(0x27f)],'paths':_0x1d140b[_0x36b5ae(0x241)+'s'][_0x36b5ae(0x191)](toHomePath)}),{'canceled':_0x1d140b[_0x36b5ae(0x292)],'paths':_0x1d140b[_0x36b5ae(0x241)+'s']};}),_0x5a9d02(_0x12a34a(0x262)+_0x12a34a(0x287)+_0x12a34a(0x1e6),()=>_0x5ab2ec()[_0x12a34a(0x262)+'e'][_0x12a34a(0x20f)+_0x12a34a(0x28e)]()),_0x5a9d02(_0x12a34a(0x262)+_0x12a34a(0x20d)+_0x12a34a(0x25b),async()=>{const _0x4cea9b=_0x12a34a,_0x532298=await _0x5ab2ec()[_0x4cea9b(0x262)+'e'][_0x4cea9b(0x20f)+_0x4cea9b(0x28e)]();return await shell[_0x4cea9b(0x289)](_0x532298['path']),filesLogger?.['info'](_0x4cea9b(0x262)+_0x4cea9b(0x1f9)+_0x4cea9b(0x1b2)+'ed',{'path':toHomePath(_0x532298[_0x4cea9b(0x25c)])}),{'ok':!![],'path':_0x532298['path']};}),_0x5a9d02(_0x12a34a(0x262)+_0x12a34a(0x1d4)+_0x12a34a(0x207),()=>_0x5ab2ec()[_0x12a34a(0x262)+'e'][_0x12a34a(0x1c4)+'ntext']()),_0x5a9d02(_0x12a34a(0x262)+'e:write-'+_0x12a34a(0x26c)+_0x12a34a(0x276),(_0x59e836,_0x510883)=>_0x5ab2ec()[_0x12a34a(0x262)+'e'][_0x12a34a(0x1ff)+_0x12a34a(0x284)+'xt'](_0x510883)),_0x5a9d02('sessions'+_0x12a34a(0x1cb),(_0x1d7bef,_0x455365)=>_0x5ab2ec()[_0x12a34a(0x18c)][_0x12a34a(0x1a2)](_0x455365)),_0x5a9d02(_0x12a34a(0x18c)+_0x12a34a(0x199)+'keys',()=>_0x5ab2ec()['sessions'][_0x12a34a(0x23e)+'ys']()),_0x5a9d02(_0x12a34a(0x18c)+_0x12a34a(0x1dc)+_0x12a34a(0x2a3),(_0x55d178,_0x5e39bd)=>_0x5ab2ec()['sessions'][_0x12a34a(0x251)+_0x12a34a(0x1cf)](_0x5e39bd)),_0x5a9d02('skills:i'+_0x12a34a(0x1b4),(_0x19f279,_0x50c662)=>_0x5ab2ec()[_0x12a34a(0x1bb)][_0x12a34a(0x298)](_0x50c662)),_0x5a9d02('skills:u'+'pdate',(_0x51444a,_0x3b8948)=>_0x5ab2ec()[_0x12a34a(0x1bb)]['update'](_0x3b8948)),_0x5a9d02('skills:d'+_0x12a34a(0x21f),(_0x155aa2,_0x5f2071)=>_0x5ab2ec()['skills'][_0x12a34a(0x234)](_0x5f2071)),_0x5a9d02('cron:lis'+'t',(_0x42bd3d,_0x43e92d)=>_0x5ab2ec()[_0x12a34a(0x258)]['list'](_0x43e92d)),_0x5a9d02(_0x12a34a(0x237)+_0x12a34a(0x1f4),(_0x4c99e2,_0x350d16)=>_0x5ab2ec()['cron'][_0x12a34a(0x26f)](_0x350d16)),_0x5a9d02(_0x12a34a(0x1ab)+_0x12a34a(0x1f4),(_0x4880a0,_0x1687e2)=>_0x5ab2ec()[_0x12a34a(0x258)]['update'](_0x1687e2)),_0x5a9d02('cron:rem'+_0x12a34a(0x1a4),(_0xbb919f,_0xd47553)=>_0x5ab2ec()['cron'][_0x12a34a(0x27c)](_0xd47553)),_0x5a9d02(_0x12a34a(0x24a)+_0x12a34a(0x183),(_0x56fca4,_0x2f2907)=>_0x5ab2ec()[_0x12a34a(0x258)][_0x12a34a(0x204)](_0x2f2907)),_0x5a9d02(_0x12a34a(0x2a1)+'s',(_0x1c9b25,_0x3e21c3)=>_0x5ab2ec()[_0x12a34a(0x258)][_0x12a34a(0x192)](_0x3e21c3)),_0x5a9d02(_0x12a34a(0x296)+_0x12a34a(0x1d3),()=>_0x5ab2ec()[_0x12a34a(0x202)][_0x12a34a(0x260)]()),_0x5a9d02(_0x12a34a(0x296)+'et-setti'+_0x12a34a(0x1b6),(_0x540917,_0x453d88)=>_0x5ab2ec()[_0x12a34a(0x202)]['setSetti'+_0x12a34a(0x1b6)](_0x453d88)),_0x5a9d02(_0x12a34a(0x296)+_0x12a34a(0x19f)+_0x12a34a(0x1a0),(_0x2abc6f,_0x29db7c)=>_0x5ab2ec()['models'][_0x12a34a(0x1fc)+_0x12a34a(0x1a8)+_0x12a34a(0x28c)](_0x29db7c)),_0x5a9d02(_0x12a34a(0x296)+_0x12a34a(0x294)+_0x12a34a(0x1b8),()=>_0x5ab2ec()[_0x12a34a(0x202)]['selected'+'ModelId']()),_0x5a9d02('models:c'+_0x12a34a(0x206)+_0x12a34a(0x255),()=>_0x5ab2ec()[_0x12a34a(0x202)][_0x12a34a(0x1f0)+_0x12a34a(0x255)]()),_0x5a9d02(_0x12a34a(0x19a)+_0x12a34a(0x1f3),()=>_0x5ab2ec()[_0x12a34a(0x26a)][_0x12a34a(0x1b9)]());}async function boot(){const _0x409ea8=_0x108741;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x409ea8(0x219)](shellConfig['productN'+'ame']),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController['paths'],_0x409ea8(0x1e5)),ipcLogger=createShellLogger(configController[_0x409ea8(0x210)],'ipc'),filesLogger=createShellLogger(configController[_0x409ea8(0x210)],_0x409ea8(0x1ef)),rendererLogger=createShellLogger(configController[_0x409ea8(0x210)],_0x409ea8(0x1bd)),registerProcessLogHooks(),mainLogger?.[_0x409ea8(0x18e)](_0x409ea8(0x18b)+'\x20main\x20bo'+'ot\x20start'+'ed',{'appVersion':app[_0x409ea8(0x293)+'on'](),'electronVersion':process[_0x409ea8(0x1e2)]['electron'],'nodeVersion':process[_0x409ea8(0x1e2)]['node'],'chromeVersion':process[_0x409ea8(0x1e2)][_0x409ea8(0x259)],'platform':process[_0x409ea8(0x25a)],'arch':process[_0x409ea8(0x22f)],'mode':getMode(),'projectRoot':shellConfig[_0x409ea8(0x197)+_0x409ea8(0x1a6)],'configPath':shellConfig[_0x409ea8(0x236)+'th'],'dataDir':shellConfig[_0x409ea8(0x18a)],'logsDir':configController[_0x409ea8(0x210)][_0x409ea8(0x1be)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x409ea8(0x197)+_0x409ea8(0x1a6)],'dist','index.ht'+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x409ea8(0x293)+'on']()});for(const _0x3c12de of[_0x409ea8(0x1e4)+_0x409ea8(0x1d7),'gateway-'+'log',_0x409ea8(0x22c)+'eam-even'+'t',_0x409ea8(0x1d1)+_0x409ea8(0x1cd),_0x409ea8(0x205)+_0x409ea8(0x28b),_0x409ea8(0x25d)+_0x409ea8(0x269),_0x409ea8(0x211)+_0x409ea8(0x264)+'n']){gatewayController['on'](_0x3c12de,_0x3ee209=>broadcast(_0x3c12de,_0x3ee209));}installIpcHandlers(),registerShellShortcuts(),await createWindow(),await gatewayController['start'](),mainLogger?.[_0x409ea8(0x18e)](_0x409ea8(0x18b)+'\x20main\x20bo'+_0x409ea8(0x29d)+_0x409ea8(0x200));}function registerProcessLogHooks(){const _0x451f67=_0x108741;if(registerProcessLogHooks[_0x451f67(0x21d)+'ed'])return;registerProcessLogHooks['register'+'ed']=!![],process['on'](_0x451f67(0x1b3)+_0x451f67(0x193)+'n',_0x2bb909=>{const _0x26d44e=_0x451f67;mainLogger?.['error'](_0x26d44e(0x1b3)+_0x26d44e(0x23c)+'on',summarizeError(_0x2bb909));}),process['on']('unhandle'+_0x451f67(0x273)+'on',_0x31d0cc=>{const _0x48ce78=_0x451f67;mainLogger?.[_0x48ce78(0x217)](_0x48ce78(0x1ec)+'d\x20reject'+_0x48ce78(0x295),summarizeError(_0x31d0cc));}),app['on'](_0x451f67(0x1d8)+_0x451f67(0x190)+_0x451f67(0x228),(_0x1de4dd,_0x427e18,_0x52e342)=>{const _0x160879=_0x451f67;mainLogger?.[_0x160879(0x217)](_0x160879(0x1bd)+_0x160879(0x1b7)+'\x20gone',{'url':_0x427e18[_0x160879(0x1c9)](),'details':_0x52e342});}),app['on']('child-pr'+_0x451f67(0x27a)+'ne',(_0x4606e7,_0x50664b)=>{const _0x380e55=_0x451f67;mainLogger?.['error']('child\x20pr'+_0x380e55(0x189)+'ne',{'details':_0x50664b});});}app['on']('window-a'+_0x108741(0x243)+'d',()=>{const _0x2f7b6b=_0x108741;if(process['platform']!==_0x2f7b6b(0x1cc))app[_0x2f7b6b(0x278)]();}),app['on']('activate',async()=>{const _0x40a3b1=_0x108741;BrowserWindow['getAllWi'+_0x40a3b1(0x272)]()['length']===0x0&&shellConfig&&await createWindow();}),app['on']('before-q'+_0x108741(0x1ed),_0x50e554=>{const _0x2592f3=_0x108741;if(!gatewayController)return;mainLogger?.[_0x2592f3(0x18e)](_0x2592f3(0x26e)+_0x2592f3(0x194)+_0x2592f3(0x24c)+_0x2592f3(0x24e)),_0x50e554[_0x2592f3(0x242)+_0x2592f3(0x266)](),void gatewayController[_0x2592f3(0x188)]()[_0x2592f3(0x2a2)](()=>{const _0x2d160c=_0x2592f3;gatewayController=null,mainLogger?.[_0x2d160c(0x18e)]('gateway\x20'+'stopped\x20'+_0x2d160c(0x26e)+'uit'),app[_0x2d160c(0x278)]();});}),app['on'](_0x108741(0x215)+'t',()=>{globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x108741(0x27d)+'y']()[_0x108741(0x19e)](boot)['catch'](_0xc75386=>{const _0x1ef875=_0x108741;bootError=_0xc75386 instanceof Error?_0xc75386[_0x1ef875(0x285)]:String(_0xc75386),mainLogger?.[_0x1ef875(0x217)](_0x1ef875(0x18b)+'\x20main\x20bo'+_0x1ef875(0x1e0)+'d',summarizeError(_0xc75386)),console['error'](_0x1ef875(0x18d)+_0x1ef875(0x1e9)+_0x1ef875(0x216)+_0x1ef875(0x277)+_0x1ef875(0x19b)+'in',_0xc75386);});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x44bc44=_0x12b6;(function(_0x16a0ca,_0x4301ed){const _0x921bd0=_0x12b6,_0x538f79=_0x16a0ca();while(!![]){try{const _0x28ebb7=-parseInt(_0x921bd0(0xd9))/0x1+-parseInt(_0x921bd0(0xcd))/0x2*(parseInt(_0x921bd0(0x127))/0x3)+-parseInt(_0x921bd0(0x11e))/0x4+-parseInt(_0x921bd0(0xfb))/0x5+parseInt(_0x921bd0(0xdb))/0x6+parseInt(_0x921bd0(0x11a))/0x7*(parseInt(_0x921bd0(0xe1))/0x8)+parseInt(_0x921bd0(0x103))/0x9;if(_0x28ebb7===_0x4301ed)break;else _0x538f79['push'](_0x538f79['shift']());}catch(_0x2811db){_0x538f79['push'](_0x538f79['shift']());}}}(_0x4090,0x51364));import _0x36431d from'electron';function _0x4090(){const _0x51d486=['status','ustom-mo','openclaw','gateway-','delete','ead','ned-keys','files:se','pen-devt','ent','chat:his','function','lect-dir',':rename','logs:ope','tatus','ist','app:info','inimize',':answer-',':create','cron:rem','1519870lTiqtV','ximize','nstall','logs:exp','ort','-questio','off','cron:lis','1141920yDlVmE','files:re','window:o','skills:d','exposeIn','wujieShe','ory-info','ory','wujie-sh','window:t','models:c','ontext','-restart','e:shared','cron:upd','ad-binar','cron:cre','lect-fil','-logs','tory','window:c','-info','window:m','2989721oAcWgK','operated','-status',':pinned-','590920AaXjsE','get','elete','lose','workspac','eam-even','devtools','dels','-url','3TnVGMT','et-setti','models:s','ask-user','skills:s','n-direct','chat-str','522758scgWcO','files:wr','model-id','session-','pdate',':gateway','ove','shared-c','cron:log','keys','e:direct','payload','167004UfPnDb','updated','3952488VdBIFh','cron:run','log','-context','MainWorl','sessions','8cvCFZF','eam','ell:even','invoke'];_0x4090=function(){return _0x51d486;};return _0x4090();}const {contextBridge,ipcRenderer}=_0x36431d,eventListeners=new Map();function invoke(_0x4357f7,_0x388660){const _0x49f951=_0x12b6;return ipcRenderer[_0x49f951(0xe4)](_0x4357f7,_0x388660);}function _0x12b6(_0x18409c,_0x45ece0){_0x18409c=_0x18409c-0xc7;const _0x40907d=_0x4090();let _0x12b6c7=_0x40907d[_0x18409c];return _0x12b6c7;}function subscribe(_0x32768e,_0x1fdda4){const _0x2c268d=_0x12b6;if(typeof _0x1fdda4!==_0x2c268d(0xf0))return()=>{};const _0x277e43=(_0xfdd7ec,_0x33c0f1)=>{const _0x4b2886=_0x2c268d;if(_0x33c0f1?.['name']===_0x32768e)_0x1fdda4(_0x33c0f1[_0x4b2886(0xd8)]);};return ipcRenderer['on'](_0x2c268d(0x10b)+_0x2c268d(0xe3)+'t',_0x277e43),eventListeners['set'](_0x1fdda4,_0x277e43),()=>{const _0x18a1fb=_0x2c268d,_0x497e4c=eventListeners[_0x18a1fb(0x11f)](_0x1fdda4)||_0x277e43;ipcRenderer[_0x18a1fb(0x101)]('wujie-sh'+_0x18a1fb(0xe3)+'t',_0x497e4c),eventListeners[_0x18a1fb(0xe9)](_0x1fdda4);};}contextBridge[_0x44bc44(0x107)+_0x44bc44(0xdf)+'d'](_0x44bc44(0x108)+'ll',{'app':{'info':()=>invoke(_0x44bc44(0xf6)),'openUrl':_0x597699=>invoke('app:open'+_0x44bc44(0x126),_0x597699)},'window':{'minimize':()=>invoke(_0x44bc44(0x119)+_0x44bc44(0xf7)),'toggleMaximize':()=>invoke(_0x44bc44(0x10c)+'oggle-ma'+_0x44bc44(0xfc)),'close':()=>invoke(_0x44bc44(0x117)+_0x44bc44(0x121)),'openDevTools':()=>invoke(_0x44bc44(0x105)+_0x44bc44(0xed)+'ools'),'onDevToolsShortcut':_0x1feeeb=>subscribe(_0x44bc44(0x124)+'-shortcu'+'t',_0x1feeeb)},'files':{'read':_0x2b9ae8=>invoke(_0x44bc44(0x104)+'ad',_0x2b9ae8),'readBinary':_0x5ddb35=>invoke(_0x44bc44(0x104)+_0x44bc44(0x112)+'y',_0x5ddb35),'write':(_0x4ca20c,_0x101ed2)=>invoke(_0x44bc44(0xce)+'ite',{'path':_0x4ca20c,'content':_0x101ed2}),'writeBinary':(_0x223950,_0x3d4c9e)=>invoke(_0x44bc44(0xce)+'ite-bina'+'ry',{'path':_0x223950,'content':_0x3d4c9e}),'selectFile':_0x4d4f1d=>invoke(_0x44bc44(0xec)+_0x44bc44(0x114)+'e',_0x4d4f1d),'selectDirectory':_0x227152=>invoke('files:se'+_0x44bc44(0xf1)+'ectory',_0x227152)},'workspace':{'directoryInfo':()=>invoke(_0x44bc44(0x122)+_0x44bc44(0xd7)+_0x44bc44(0x109)),'openDirectory':()=>invoke(_0x44bc44(0x122)+'e:open-d'+'irectory'),'sharedContext':()=>invoke(_0x44bc44(0x122)+_0x44bc44(0x110)+_0x44bc44(0xde)),'writeSharedContext':_0x2394d6=>invoke(_0x44bc44(0x122)+'e:write-'+_0x44bc44(0xd4)+_0x44bc44(0x10e),_0x2394d6)},'openclaw':{'runtimeInfo':()=>invoke('openclaw'+':runtime'+_0x44bc44(0x118)),'gatewayStatus':()=>invoke(_0x44bc44(0xe7)+':gateway'+_0x44bc44(0x11c)),'gatewayRestart':()=>invoke('openclaw'+_0x44bc44(0xd2)+_0x44bc44(0x10f)),'gatewayLogs':_0xb732da=>invoke(_0x44bc44(0xe7)+_0x44bc44(0xd2)+_0x44bc44(0x115),_0xb732da),'onGatewayStatus':_0x5dd854=>subscribe(_0x44bc44(0xe8)+_0x44bc44(0xe5),_0x5dd854),'onGatewayLog':_0x134c86=>subscribe('gateway-'+_0x44bc44(0xdd),_0x134c86),'onAgentEvent':_0x378d62=>subscribe('agent-ev'+_0x44bc44(0xee),_0x378d62),'onAgentsUpdated':_0x310825=>subscribe('agents-u'+'pdated',_0x310825),'onAskUserQuestion':_0x45a932=>subscribe(_0x44bc44(0xc9)+_0x44bc44(0x100)+'n',_0x45a932),'answerAskUserQuestion':_0xfe522d=>invoke('openclaw'+_0x44bc44(0xf8)+_0x44bc44(0xc9)+_0x44bc44(0x100)+'n',_0xfe522d)},'agents':{'list':()=>invoke('agents:l'+_0x44bc44(0xf5))},'skills':{'status':_0x52406d=>invoke(_0x44bc44(0xca)+_0x44bc44(0xf4),_0x52406d),'install':_0x2ba367=>invoke('skills:i'+_0x44bc44(0xfd),_0x2ba367),'update':_0x52f609=>invoke('skills:u'+_0x44bc44(0xd1),_0x52f609),'delete':_0x342445=>invoke(_0x44bc44(0x106)+_0x44bc44(0x120),_0x342445)},'sessions':{'create':_0xa44df3=>invoke(_0x44bc44(0xe0)+_0x44bc44(0xf9),_0xa44df3),'list':_0x24c411=>invoke(_0x44bc44(0xe0)+':list',_0x24c411),'delete':_0x14e0b3=>invoke('sessions'+':delete',_0x14e0b3),'rename':_0x2ac2d6=>invoke(_0x44bc44(0xe0)+_0x44bc44(0xf2),_0x2ac2d6),'pinnedKeys':()=>invoke('sessions'+_0x44bc44(0x11d)+_0x44bc44(0xd6)),'setPinnedKeys':_0x4cc028=>invoke(_0x44bc44(0xe0)+':set-pin'+_0x44bc44(0xeb),_0x4cc028),'onUpdated':_0x273c35=>subscribe(_0x44bc44(0xd0)+_0x44bc44(0xda),_0x273c35)},'cron':{'list':_0x457041=>invoke(_0x44bc44(0x102)+'t',_0x457041),'create':_0x34f797=>invoke(_0x44bc44(0x113)+'ate',_0x34f797),'update':_0x5ee8ff=>invoke(_0x44bc44(0x111)+'ate',_0x5ee8ff),'remove':_0x48818c=>invoke(_0x44bc44(0xfa)+_0x44bc44(0xd3),_0x48818c),'runOnce':_0x3fd365=>invoke(_0x44bc44(0xdc)+'-once',_0x3fd365),'logs':_0x504ba8=>invoke(_0x44bc44(0xd5)+'s',_0x504ba8)},'models':{'settings':()=>invoke(_0x44bc44(0xc8)+'ettings'),'setSettings':_0x417a45=>invoke(_0x44bc44(0xc8)+_0x44bc44(0xc7)+'ngs',_0x417a45),'setSelfOperatedModels':_0x37a117=>invoke(_0x44bc44(0xc8)+'et-self-'+_0x44bc44(0x11b),_0x37a117),'selectedModelId':()=>invoke(_0x44bc44(0xc8)+'elected-'+_0x44bc44(0xcf)),'customModels':()=>invoke(_0x44bc44(0x10d)+_0x44bc44(0xe6)+_0x44bc44(0x125))},'config':{'read':()=>invoke('config:r'+_0x44bc44(0xea))},'logs':{'write':_0x1256da=>invoke('logs:wri'+'te',_0x1256da),'export':_0x8b977d=>invoke(_0x44bc44(0xfe)+_0x44bc44(0xff),_0x8b977d),'openDirectory':()=>invoke(_0x44bc44(0xf3)+_0x44bc44(0xcb)+_0x44bc44(0x10a))},'chat':{'stream':_0x154fe5=>invoke('chat:str'+_0x44bc44(0xe2),_0x154fe5),'abort':_0x4b16d5=>invoke('chat:abo'+'rt',_0x4b16d5),'history':_0x45959d=>invoke(_0x44bc44(0xef)+_0x44bc44(0x116),_0x45959d),'onStreamEvent':_0x261c9d=>subscribe(_0x44bc44(0xcc)+_0x44bc44(0x123)+'t',_0x261c9d)}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x5ba860=_0x2d62;(function(_0x3c0540,_0x593fad){const _0x2daf5e=_0x2d62,_0x5783f6=_0x3c0540();while(!![]){try{const _0x37b39f=parseInt(_0x2daf5e(0x1ee))/0x1+parseInt(_0x2daf5e(0x194))/0x2+parseInt(_0x2daf5e(0x19e))/0x3+parseInt(_0x2daf5e(0x1f4))/0x4*(-parseInt(_0x2daf5e(0x174))/0x5)+parseInt(_0x2daf5e(0x171))/0x6+parseInt(_0x2daf5e(0x190))/0x7+-parseInt(_0x2daf5e(0x1e0))/0x8;if(_0x37b39f===_0x593fad)break;else _0x5783f6['push'](_0x5783f6['shift']());}catch(_0x431e71){_0x5783f6['push'](_0x5783f6['shift']());}}}(_0x1164,0x9c843));import{randomUUID}from'node:crypto';import{createServer}from'node:http';function _0x1164(){const _0x241553=['ensureAs','url','SOUL.md','stdout','client','defaultI','max','2189058TFzTLj','some','lifecycl','750990SgkuUD','/ask-use','.0.0.1:','stringif','key','ting:\x20','ents\x20syn','productN','projectR','127.0.0.','join','resolveC','res','data','nexpecte','openclaw','cron.add','error','USER.md','image/sv','names','stopped','writeHea','skills','sage','limit','getModel','get','7804209gNWViw','ing,\x20ple','label','ask-user','1322932hUkiKf','filePath','kUserQue','discover','deny','figChang','gateway','ion/octe','ndled\x20ag','terminal','89451NtIlyp','starting','IDENTITY','size','pop','onfigPat','renamed','has','workspac','keys','ensureGa','ssionKey','TOOLS.md','stop','skills.s','version','--allow-','nstall','skills.i','killed','desktop','toISOStr','chat.abo','not\x20foun','method','text/mar','requestI','floor','reconnec','resolve','agent-ev','source','r-questi','run','image/gi','n\x20callba','behavior','kill','system','plugins','kdown','status','image/we','ath','.json','entries','patch','ion/json','ase\x20retr','gateway-','image/','json','Timer','type','provider','t-stream','agents-r','tatus','itialCon','ted','ured','exited\x20u','main','aborted','igWriteH','sessionK','12430552WGblzk','catch','name','content','applicat','ternally','utf8','pluginId','T.md','close','reate','clear','isArray','ove','324293jOyesk','deleted','watchCon','http://1','--token','unknown','8BFwnpk','image/jp','toUpperC','session-','set','finally','text/pla','is\x20start','allow','ized','\x20for\x20WS','ayRestar','cron.rem','invalid\x20','then','is\x20requi','.md','eady','Settings','exited\x20c','answers','filter','textLeng','quired','slice','chat\x20fai','running','unauthor','ase','map','stderr','runtimeR','image/pn','led','pdate','state','readConf','agents.l','request','agentId','model','manual\x20r','Bin','markConf','ensureIn','once','end','fig','.list','off','errorMes','ate','jobId','unconfig','cron.lis','ync\x20fail','chat.his','sessions','runId','n\x20reques','final','emit','metadata','startsWi','eviceIde','configur','-questio',']\x20[','ck\x20disab','SIGKILL','now','x-ask-us','t\x20not\x20fo','nt\x20too\x20l','dly','eway]\x20bu','image','timeout','text/csv','ame','parse','tewaySet','WorkingD','string','tateDir','g+xml','listen','token','jobId\x20is','connecte','\x20require','random','done','anscript','isFile','delta','.create','Version','message','agents.u','pinnedKe','agents\x20s','led:\x20','c\x20failed','text','oot','cron.run','headers','toString','started','gateway\x20','chat.sen','[wujie-s','sessionI','ginConfi','message\x20','und','MEMORY.m','push','start','Fallback','red','27.0.0.1','bundled-','ey\x20is\x20re','HEARTBEA','\x20waiting','backend','started,','agents','task','andledIn','length','delete','restarti',':session','ntityPat','POST','values','hell:gat','tHandler','y\x20shortl','skills.u','updated','eys-upda','ion/pdf','resolveS','AGENTS.m','installP','log','stack','modelNam','null','title'];_0x1164=function(){return _0x241553;};return _0x1164();}import{EventEmitter}from'node:events';function _0x2d62(_0x379a06,_0x2cfe5d){_0x379a06=_0x379a06-0x101;const _0x1164e4=_0x1164();let _0x2d625f=_0x1164e4[_0x379a06];return _0x2d625f;}import{appendFile,mkdir,readFile,stat,writeFile}from'node:fs/promises';import{basename,dirname,join}from'node:path';import _0x18ea3d,{portNumbers}from'get-port';import{asRecord,getTrimmedString}from'./utils.mjs';import{loadRuntimeInfo,spawnClaw}from'./runtime.mjs';import{ClawGatewayWsClient}from'./gateway-ws.mjs';import{ensureBundledAgents}from'./bundled-agents.mjs';import{syncBundledAgentSkillsToConfig,filterSkillsForAgent}from'./bundled-agent-skills.mjs';const LOG_LIMIT=0x3e8,CLIENT_ID=_0x5ba860(0x1cf)+_0x5ba860(0x16e),CLIENT_MODE=_0x5ba860(0x14f),CLIENT_DEVICE_FAMILY=_0x5ba860(0x1b2),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,SESSION_METADATA_FILE=_0x5ba860(0x1f7)+_0x5ba860(0x10e)+_0x5ba860(0x1ca),SHARED_CONTEXT_FILES=[_0x5ba860(0x163)+'d',_0x5ba860(0x14d)+_0x5ba860(0x1e8),_0x5ba860(0x1a0)+_0x5ba860(0x204),_0x5ba860(0x145)+'d',_0x5ba860(0x16c),_0x5ba860(0x1aa),_0x5ba860(0x186)];function nowIso(){const _0x3199e4=_0x5ba860;return new Date()[_0x3199e4(0x1b3)+'ing']();}function buildGatewayWsUrl(_0x4dd7a6){const _0x5e63c0=_0x5ba860;return'ws://127'+_0x5e63c0(0x176)+_0x4dd7a6;}function createInitialStatus(){const _0xa006b0=_0x5ba860;return{'lifecycle':_0xa006b0(0x189),'health':_0xa006b0(0x1f3),'port':null,'tokenPresent':![],'message':_0xa006b0(0x13e)+_0xa006b0(0x189),'updatedAt':nowIso()};}function extractGatewayMessageText(_0x47ca6a){const _0x57f192=_0x5ba860;if(typeof _0x47ca6a===_0x57f192(0x123))return _0x47ca6a;if(!Array[_0x57f192(0x1ec)](_0x47ca6a))return'';const _0x163324=[];for(const _0x221c3a of _0x47ca6a){if(typeof _0x221c3a===_0x57f192(0x123)){if(_0x221c3a)_0x163324['push'](_0x221c3a);continue;}const _0x2eebfd=asRecord(_0x221c3a);_0x2eebfd[_0x57f192(0x1d3)]==='text'&&typeof _0x2eebfd[_0x57f192(0x138)]===_0x57f192(0x123)&&_0x2eebfd[_0x57f192(0x138)]&&_0x163324[_0x57f192(0x146)](_0x2eebfd['text']);}return _0x163324[_0x57f192(0x17e)]('\x0a');}function extractGatewayChatText(_0x14a1a2){const _0x4cc59c=_0x5ba860,_0x5ebc97=asRecord(_0x14a1a2);if(typeof _0x5ebc97[_0x4cc59c(0x138)]===_0x4cc59c(0x123))return _0x5ebc97['text'];return extractGatewayMessageText(_0x5ebc97[_0x4cc59c(0x1e3)]);}function guessMimeType(_0x34275b){const _0xb576d8=_0x5ba860,_0x593c3f=_0x34275b['split']('.')[_0xb576d8(0x1a2)]()?.['toLowerC'+_0xb576d8(0x210)]()??'',_0x5dc904={'png':_0xb576d8(0x214)+'g','jpg':_0xb576d8(0x1f5)+'eg','jpeg':'image/jp'+'eg','webp':_0xb576d8(0x1c8)+'bp','gif':_0xb576d8(0x1c0)+'f','svg':_0xb576d8(0x187)+_0xb576d8(0x125),'pdf':_0xb576d8(0x1e4)+_0xb576d8(0x161),'txt':_0xb576d8(0x1fa)+'in','md':_0xb576d8(0x1b7)+_0xb576d8(0x1c6),'json':_0xb576d8(0x1e4)+_0xb576d8(0x1cd),'csv':_0xb576d8(0x11e)};return _0x5dc904[_0x593c3f]||_0xb576d8(0x1e4)+_0xb576d8(0x19b)+_0xb576d8(0x1d5);}async function buildAttachments(_0x45a42a=[]){const _0x471a80=_0x5ba860,_0x4c4a08=[];for(const _0x1135fc of _0x45a42a){const _0x3e49c6=getTrimmedString(_0x1135fc);if(!_0x3e49c6)continue;const _0x37ec9b=await stat(_0x3e49c6);if(!_0x37ec9b[_0x471a80(0x12e)]())continue;if(_0x37ec9b[_0x471a80(0x1a1)]>ATTACHMENT_MAX_BYTES)throw new Error('attachme'+_0x471a80(0x119)+'arge:\x20'+basename(_0x3e49c6));const _0x563e3f=guessMimeType(_0x3e49c6);_0x4c4a08[_0x471a80(0x146)]({'type':_0x563e3f[_0x471a80(0x10f)+'th'](_0x471a80(0x1d0))?_0x471a80(0x11c):'file','mimeType':_0x563e3f,'content':(await readFile(_0x3e49c6))[_0x471a80(0x13c)]('base64'),'fileName':basename(_0x3e49c6)});}return _0x4c4a08;}function buildSessionCreateRequestPayload(_0x3c1e22={}){const _0x57b6fe=_0x5ba860,_0x219102={},_0x22f1b8=Math[_0x57b6fe(0x12b)]()[_0x57b6fe(0x13c)](0x24)[_0x57b6fe(0x20c)](0x2,0xf),_0x28ff6c=getTrimmedString(_0x3c1e22[_0x57b6fe(0x21b)])||_0x57b6fe(0x1dc),_0x347dde=getTrimmedString(_0x3c1e22[_0x57b6fe(0x178)])||'agent:'+_0x28ff6c+(_0x57b6fe(0x157)+'-')+Date[_0x57b6fe(0x116)]();_0x219102['key']=_0x347dde+'-'+_0x22f1b8,_0x219102['agentId']=_0x28ff6c;const _0x2939f8=getTrimmedString(_0x3c1e22[_0x57b6fe(0x192)]);if(_0x2939f8)_0x219102[_0x57b6fe(0x192)]=_0x2939f8+'-'+_0x22f1b8;for(const _0x147728 of[_0x57b6fe(0x21c),'parentSe'+_0x57b6fe(0x1a9),_0x57b6fe(0x152),_0x57b6fe(0x132)]){const _0x3385a8=getTrimmedString(_0x3c1e22[_0x147728]);if(_0x3385a8)_0x219102[_0x147728]=_0x3385a8;}return _0x219102;}function parseSessionCreateResult(_0xd52921){const _0x509d3a=_0x5ba860,_0x5a2fd5=asRecord(_0xd52921),_0xfde3c7=asRecord(_0x5a2fd5['session']);return{'ok':!![],'key':getTrimmedString(_0x5a2fd5[_0x509d3a(0x178)])||getTrimmedString(_0x5a2fd5[_0x509d3a(0x1df)+'ey'])||getTrimmedString(_0xfde3c7[_0x509d3a(0x178)])||null,'sessionId':getTrimmedString(_0x5a2fd5[_0x509d3a(0x141)+'d'])||getTrimmedString(_0xfde3c7[_0x509d3a(0x141)+'d'])||null};}function getSessionKeyFromValue(_0x229baf){const _0x51b900=_0x5ba860,_0x39af18=asRecord(_0x229baf);return getTrimmedString(_0x39af18[_0x51b900(0x1df)+'ey']??_0x39af18[_0x51b900(0x178)]??_0x39af18['id']);}function createEmptySessionMetadata(){return{'names':{},'pinnedKeys':[]};}async function readSessionMetadata(_0x21ab92){const _0x5b2103=_0x5ba860;try{const _0x4e01fc=JSON[_0x5b2103(0x120)](await readFile(join(_0x21ab92,SESSION_METADATA_FILE),_0x5b2103(0x1e6))),_0xfd050e=asRecord(_0x4e01fc);return{'names':asRecord(_0xfd050e[_0x5b2103(0x188)]),'pinnedKeys':Array[_0x5b2103(0x1ec)](_0xfd050e['pinnedKe'+'ys'])?_0xfd050e[_0x5b2103(0x134)+'ys'][_0x5b2103(0x209)](_0x55f591=>typeof _0x55f591===_0x5b2103(0x123)&&_0x55f591['trim']()):[]};}catch{return createEmptySessionMetadata();}}async function writeSessionMetadata(_0x573301,_0x57e832){const _0x30114c=_0x5ba860;await mkdir(_0x573301,{'recursive':!![]}),await writeFile(join(_0x573301,SESSION_METADATA_FILE),JSON['stringif'+'y'](_0x57e832,null,0x2)+'\x0a',_0x30114c(0x1e6));}function applySessionMetadata(_0x2fb347,_0x5c8dfb){const _0x2fc28c=_0x5ba860,_0x3b0788=asRecord(_0x2fb347),_0x5835e2=Array[_0x2fc28c(0x1ec)](_0x3b0788['sessions'])?_0x3b0788['sessions']:[];return{..._0x3b0788,'pinnedKeys':_0x5c8dfb[_0x2fc28c(0x134)+'ys'],'sessions':_0x5835e2[_0x2fc28c(0x211)](_0x3a41fc=>{const _0x3363fd=_0x2fc28c,_0x30fcc6=asRecord(_0x3a41fc),_0x46067c=getSessionKeyFromValue(_0x30fcc6);if(!_0x46067c)return _0x3a41fc;const _0x219bfd=getTrimmedString(_0x5c8dfb[_0x3363fd(0x188)][_0x46067c]),_0x192645=_0x5c8dfb[_0x3363fd(0x134)+'ys']['includes'](_0x46067c);return{..._0x30fcc6,..._0x219bfd?{'name':_0x219bfd,'displayName':_0x219bfd,'label':_0x219bfd}:{},'pinned':_0x192645};})};}function sanitizeSharedContextPayload(_0x2d0a18){const _0x1bffcf=asRecord(_0x2d0a18),_0x19eb7d={};for(const _0x486ffb of SHARED_CONTEXT_FILES){if(typeof _0x1bffcf[_0x486ffb]==='string')_0x19eb7d[_0x486ffb]=_0x1bffcf[_0x486ffb];}return _0x19eb7d;}async function readSharedContext(_0x5cb1b0){const _0x340965=_0x5ba860,_0x2dbc69={};for(const _0x366a07 of SHARED_CONTEXT_FILES){try{_0x2dbc69[_0x366a07]=await readFile(join(_0x5cb1b0,_0x366a07),_0x340965(0x1e6));}catch{_0x2dbc69[_0x366a07]='';}}return _0x2dbc69;}async function writeSharedContext(_0x172b75,_0x9d867a){const _0x1bee0f=_0x5ba860,_0x216ea9=sanitizeSharedContextPayload(_0x9d867a);await mkdir(_0x172b75,{'recursive':!![]});for(const [_0x674420,_0x1317f2]of Object[_0x1bee0f(0x1cb)](_0x216ea9)){await writeFile(join(_0x172b75,_0x674420),_0x1317f2,_0x1bee0f(0x1e6));}return{'ok':!![],'files':Object[_0x1bee0f(0x1a7)](_0x216ea9)};}function createAskUserQuestionServer({configController:_0x5f348e,emit:_0x18e7c1}){const _0x20fc7e=new Map();let _0x91fefb=null,_0x50bc6e='',_0x1bb040='';async function _0x186699(){const _0x4636b9=_0x2d62;if(_0x91fefb)return{'callbackUrl':_0x50bc6e,'secret':_0x1bb040};_0x1bb040=randomUUID();const _0x1d4d08=await _0x18ea3d({'port':portNumbers(0x332c,0x338f)});return _0x50bc6e=_0x4636b9(0x1f1)+_0x4636b9(0x14a)+':'+_0x1d4d08+(_0x4636b9(0x175)+_0x4636b9(0x1be)+'on'),_0x91fefb=createServer(async(_0x119d39,_0x21c996)=>{const _0x1e3780=_0x4636b9;if(_0x119d39[_0x1e3780(0x1b6)]!==_0x1e3780(0x159)||_0x119d39[_0x1e3780(0x16b)]!=='/ask-use'+_0x1e3780(0x1be)+'on'){_0x21c996[_0x1e3780(0x18a)+'d'](0x194),_0x21c996[_0x1e3780(0x222)](_0x1e3780(0x1b5)+'d');return;}if(_0x119d39[_0x1e3780(0x13b)][_0x1e3780(0x117)+'er-secre'+'t']!==_0x1bb040){_0x21c996['writeHea'+'d'](0x191),_0x21c996[_0x1e3780(0x222)](_0x1e3780(0x20f)+_0x1e3780(0x1fd));return;}let _0x576ecb='';_0x119d39['on']('data',_0x359575=>{const _0x1cae2c=_0x1e3780;_0x576ecb+=_0x359575['toString']();if(_0x576ecb[_0x1cae2c(0x154)]>0x400*0x400)_0x119d39['destroy']();}),_0x119d39['on'](_0x1e3780(0x222),()=>{const _0x2d1a5b=_0x1e3780;let _0x3c4870={};try{_0x3c4870=JSON[_0x2d1a5b(0x120)](_0x576ecb||'{}');}catch{_0x21c996[_0x2d1a5b(0x18a)+'d'](0x190),_0x21c996[_0x2d1a5b(0x222)](_0x2d1a5b(0x201)+_0x2d1a5b(0x1d1));return;}const _0x250a1f=randomUUID(),_0x54fb17=setTimeout(()=>{const _0x27e6a9=_0x2d1a5b;if(!_0x20fc7e[_0x27e6a9(0x1a5)](_0x250a1f))return;_0x20fc7e['delete'](_0x250a1f),_0x21c996[_0x27e6a9(0x18a)+'d'](0xc8,{'content-type':'applicat'+'ion/json'}),_0x21c996['end'](JSON[_0x27e6a9(0x177)+'y']({'behavior':_0x27e6a9(0x198)}));},0x1d4c0);_0x20fc7e[_0x2d1a5b(0x1f8)](_0x250a1f,{'res':_0x21c996,'timeout':_0x54fb17}),_0x18e7c1(_0x2d1a5b(0x193)+_0x2d1a5b(0x112)+'n',{'requestId':_0x250a1f,...asRecord(_0x3c4870)});});}),await new Promise((_0x3a88a9,_0x2dee4b)=>{const _0x48abbc=_0x4636b9;_0x91fefb[_0x48abbc(0x221)](_0x48abbc(0x185),_0x2dee4b),_0x91fefb[_0x48abbc(0x126)](_0x1d4d08,_0x48abbc(0x17d)+'1',()=>{const _0x1d5d01=_0x48abbc;_0x91fefb[_0x1d5d01(0x101)]('error',_0x2dee4b),_0x3a88a9();});}),await _0x5f348e[_0x4636b9(0x16a)+_0x4636b9(0x196)+'stionPlu'+_0x4636b9(0x142)+'g']({'callbackUrl':_0x50bc6e,'secret':_0x1bb040}),{'callbackUrl':_0x50bc6e,'secret':_0x1bb040};}function _0x543fa8(_0x349a4c={}){const _0xc0eb7d=_0x2d62,_0x309acb=getTrimmedString(_0x349a4c[_0xc0eb7d(0x1b8)+'d']);if(!_0x309acb||!_0x20fc7e[_0xc0eb7d(0x1a5)](_0x309acb))throw new Error(_0xc0eb7d(0x193)+_0xc0eb7d(0x112)+_0xc0eb7d(0x10b)+_0xc0eb7d(0x118)+_0xc0eb7d(0x144));const _0x3440b2=_0x20fc7e[_0xc0eb7d(0x18f)](_0x309acb);return _0x20fc7e[_0xc0eb7d(0x155)](_0x309acb),clearTimeout(_0x3440b2[_0xc0eb7d(0x11d)]),_0x3440b2[_0xc0eb7d(0x180)][_0xc0eb7d(0x18a)+'d'](0xc8,{'content-type':'applicat'+_0xc0eb7d(0x1cd)}),_0x3440b2[_0xc0eb7d(0x180)]['end'](JSON[_0xc0eb7d(0x177)+'y']({'behavior':_0x349a4c[_0xc0eb7d(0x1c2)]===_0xc0eb7d(0x198)?_0xc0eb7d(0x198):_0xc0eb7d(0x1fc),'answers':asRecord(_0x349a4c[_0xc0eb7d(0x208)])})),{'ok':!![]};}async function _0x2e2282(){const _0xce5570=_0x2d62;for(const [_0xae2189,_0x1e2981]of _0x20fc7e){_0x20fc7e[_0xce5570(0x155)](_0xae2189),clearTimeout(_0x1e2981[_0xce5570(0x11d)]),_0x1e2981['res'][_0xce5570(0x18a)+'d'](0xc8,{'content-type':_0xce5570(0x1e4)+_0xce5570(0x1cd)}),_0x1e2981[_0xce5570(0x180)][_0xce5570(0x222)](JSON[_0xce5570(0x177)+'y']({'behavior':_0xce5570(0x198)}));}if(!_0x91fefb)return;await new Promise(_0x50ffa4=>_0x91fefb[_0xce5570(0x1e9)](_0x50ffa4)),_0x91fefb=null;}return{'start':_0x186699,'answer':_0x543fa8,'stop':_0x2e2282};}export function createGatewayController({shellConfig:_0x5123a1,configController:_0x3399f9,appVersion:appVersion='0.1.0'}){const _0x5d64ba=_0x5ba860,_0x1c6546=new EventEmitter(),_0x34a895=new ClawGatewayWsClient(),_0xc4e389=[],_0xd2c148=new Map(),_0x100f37=new Map(),_0x470763=createAskUserQuestionServer({'configController':_0x3399f9,'emit':(_0x28cf8c,_0x4745e9)=>_0x1c6546[_0x5d64ba(0x10d)](_0x28cf8c,_0x4745e9)});let _0x5822b9=createInitialStatus(),_0x28b97c=null,_0x29e12b=null,_0x2f574c=null,_0x32f7ac=![],_0x55d44e=![],_0x2afbc3=Promise[_0x5d64ba(0x1bb)](),_0x4fd411=null;const _0xc8bb84=join(_0x3399f9['paths']['logsDir'],'gateway.'+_0x5d64ba(0x165));function _0x18f61c(_0x13aa29,_0x115f9a){const _0x49954a=_0x5d64ba;_0x1c6546[_0x49954a(0x10d)](_0x13aa29,_0x115f9a);}function _0x1e4896(_0x3b1838,_0x5eefae){const _0x20c5ce=_0x5d64ba;return _0x1c6546['on'](_0x3b1838,_0x5eefae),()=>_0x1c6546[_0x20c5ce(0x101)](_0x3b1838,_0x5eefae);}function _0x192453(_0xe574d0){const _0x4aa478=_0x5d64ba;_0x5822b9={..._0x5822b9,..._0xe574d0,'updatedAt':nowIso()},_0x18f61c('gateway-'+_0x4aa478(0x1c7),_0x5822b9);}function _0x5c8929(_0x551d12,_0x26d3c6,_0x486d5c={}){const _0x4bdd26=_0x5d64ba;_0x192453({'lifecycle':_0x551d12,'message':_0x26d3c6,..._0x486d5c}),_0x4f3f28(_0x4bdd26(0x1c4),_0x551d12[_0x4bdd26(0x1f6)+'ase']()+'\x20'+_0x26d3c6);}function _0x4f3f28(_0x3771d1,_0x4eb51d){const _0x5dc1dd=_0x5d64ba,_0x2a07d4={'source':_0x3771d1,'text':_0x4eb51d,'timestamp':nowIso()};_0xc4e389[_0x5dc1dd(0x146)](_0x2a07d4);if(_0xc4e389[_0x5dc1dd(0x154)]>LOG_LIMIT)_0xc4e389['splice'](0x0,_0xc4e389[_0x5dc1dd(0x154)]-LOG_LIMIT);_0x18f61c(_0x5dc1dd(0x1cf)+_0x5dc1dd(0x165),_0x2a07d4),void mkdir(dirname(_0xc8bb84),{'recursive':!![]})[_0x5dc1dd(0x202)](()=>appendFile(_0xc8bb84,'['+_0x2a07d4['timestam'+'p']+_0x5dc1dd(0x113)+_0x3771d1+']\x20'+_0x4eb51d,_0x5dc1dd(0x1e6)))[_0x5dc1dd(0x1e1)](()=>{});}function _0x459670(_0x4a19b3=0xc8){const _0x3db137=_0x5d64ba;return _0xc4e389[_0x3db137(0x20c)](-Math[_0x3db137(0x170)](0x1,Math['floor'](_0x4a19b3)));}function _0x163df8(){const _0x11874e=_0x5d64ba;if(!_0x28b97c||_0x5822b9[_0x11874e(0x173)+'e']!==_0x11874e(0x20e))throw new Error(_0x11874e(0x13e)+_0x11874e(0x1fb)+_0x11874e(0x191)+_0x11874e(0x1ce)+_0x11874e(0x15d)+'y');}function _0x24b851(){const _0x195739=_0x5d64ba;return Boolean(_0x28b97c&&_0x5822b9[_0x195739(0x173)+'e']===_0x195739(0x20e));}function _0xb42f5d(_0x5eac8c){_0x18f61c('chat-str'+'eam-even'+'t',_0x5eac8c);}function _0x3a4e8f(_0x3277ca){const _0x23820d=_0x5d64ba,_0x46c4ab=_0xd2c148[_0x23820d(0x18f)](_0x3277ca);if(!_0x46c4ab)return null;_0xd2c148[_0x23820d(0x155)](_0x3277ca);if(_0x46c4ab[_0x23820d(0x19d)+_0x23820d(0x148)+'Timer'])clearTimeout(_0x46c4ab[_0x23820d(0x19d)+_0x23820d(0x148)+_0x23820d(0x1d2)]);return _0x100f37[_0x23820d(0x155)](_0x46c4ab[_0x23820d(0x1df)+'ey']),_0x46c4ab;}function _0x4433ce(_0x438941,_0x3a703c,_0x30316a=''){const _0x2e9aec=_0x5d64ba,_0x385dfb=_0x3a4e8f(_0x438941['runId']);if(!_0x385dfb)return;_0xb42f5d({'requestId':_0x385dfb[_0x2e9aec(0x1b8)+'d'],'sessionKey':_0x385dfb[_0x2e9aec(0x1df)+'ey'],'type':_0x3a703c,..._0x30316a?{'message':_0x30316a}:{}});}function _0x4915e6(_0x500233){const _0x576b57=_0x5d64ba;let _0x162667=null;for(const _0x219040 of _0xd2c148[_0x576b57(0x15a)]()){if(_0x219040[_0x576b57(0x1df)+'ey']===_0x500233)_0x162667=_0x219040;}return _0x162667;}function _0x591423(_0x54ef37){if(!_0x54ef37)return null;for(const _0x272da1 of _0xd2c148['values']()){if(_0x272da1['requestI'+'d']===_0x54ef37)return _0x272da1;}return null;}function _0x3ea4de(_0x4d8945,_0x2ffd8b){const _0x5af50d=_0x5d64ba;if(_0x2ffd8b[_0x5af50d(0x154)]<=_0x4d8945[_0x5af50d(0x20a)+'th'])return;const _0x37f28e=_0x2ffd8b[_0x5af50d(0x20c)](_0x4d8945[_0x5af50d(0x20a)+'th']);_0x4d8945[_0x5af50d(0x20a)+'th']=_0x2ffd8b['length'],_0x37f28e&&_0xb42f5d({'requestId':_0x4d8945['requestI'+'d'],'sessionKey':_0x4d8945[_0x5af50d(0x1df)+'ey'],'type':_0x5af50d(0x12f),'delta':_0x37f28e});}function _0x2ee08e(_0x5dd84f,_0x523428,_0x522996=''){const _0x173957=_0x5d64ba;if(_0x5dd84f[_0x173957(0x19d)+'Fallback'+'Timer'])clearTimeout(_0x5dd84f[_0x173957(0x19d)+_0x173957(0x148)+_0x173957(0x1d2)]);_0x5dd84f[_0x173957(0x19d)+_0x173957(0x148)+_0x173957(0x1d2)]=setTimeout(()=>{const _0x56e5c7=_0x173957,_0x45a96f=_0xd2c148[_0x56e5c7(0x18f)](_0x5dd84f[_0x56e5c7(0x10a)]);if(!_0x45a96f)return;_0x4433ce(_0x45a96f,_0x523428===_0x56e5c7(0x185)?_0x56e5c7(0x185):_0x56e5c7(0x12c),_0x522996);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x21c770(_0x3693a4){const _0x600a78=_0x5d64ba;for(const _0x15fa78 of _0xd2c148[_0x600a78(0x15a)]()){_0xb42f5d({'requestId':_0x15fa78[_0x600a78(0x1b8)+'d'],'sessionKey':_0x15fa78[_0x600a78(0x1df)+'ey'],'type':_0x600a78(0x185),'message':_0x3693a4});if(_0x15fa78[_0x600a78(0x19d)+'Fallback'+_0x600a78(0x1d2)])clearTimeout(_0x15fa78['terminal'+_0x600a78(0x148)+_0x600a78(0x1d2)]);}_0xd2c148[_0x600a78(0x1eb)](),_0x100f37[_0x600a78(0x1eb)]();}function _0x18d974(_0x2ee2c4){const _0xc57786=_0x5d64ba,_0x33022b=getTrimmedString(_0x2ee2c4[_0xc57786(0x10a)]),_0xeb4d36=getTrimmedString(_0x2ee2c4[_0xc57786(0x217)])||_0xc57786(0x15f),_0x3f0309=getTrimmedString(_0x2ee2c4[_0xc57786(0x1df)+'ey']),_0x412de1=(_0x33022b?_0xd2c148[_0xc57786(0x18f)](_0x33022b):null)??(_0x3f0309?_0x4915e6(_0x3f0309):null);if(_0x33022b&&_0x3f0309)_0x100f37[_0xc57786(0x1f8)](_0x3f0309,_0x33022b);if(_0x3f0309)_0x18f61c('session-'+'updated',{'sessionKey':_0x3f0309,'state':_0xeb4d36});_0x412de1&&(_0xeb4d36===_0xc57786(0x10c)||_0xeb4d36===_0xc57786(0x1dd)||_0xeb4d36===_0xc57786(0x185))&&_0x2ee08e(_0x412de1,_0xeb4d36,typeof _0x2ee2c4['errorMes'+_0xc57786(0x18c)]===_0xc57786(0x123)?_0x2ee2c4[_0xc57786(0x102)+'sage']:_0xc57786(0x13e)+_0xc57786(0x20d)+_0xc57786(0x215));if(!_0x412de1)return;if(_0x3f0309&&_0x3f0309!==_0x412de1[_0xc57786(0x1df)+'ey'])return;if(_0xeb4d36===_0xc57786(0x12f)){_0x3ea4de(_0x412de1,extractGatewayChatText(_0x2ee2c4[_0xc57786(0x132)]));return;}if(_0xeb4d36===_0xc57786(0x10c)||_0xeb4d36==='aborted'){_0x3ea4de(_0x412de1,extractGatewayChatText(_0x2ee2c4[_0xc57786(0x132)])),_0x4433ce(_0x412de1,_0xc57786(0x12c));return;}_0xeb4d36==='error'&&_0x4433ce(_0x412de1,_0xc57786(0x185),typeof _0x2ee2c4[_0xc57786(0x102)+'sage']===_0xc57786(0x123)?_0x2ee2c4[_0xc57786(0x102)+_0xc57786(0x18c)]:_0xc57786(0x13e)+_0xc57786(0x20d)+_0xc57786(0x215));}async function _0x518ba6(_0x15a135,_0x516064){const _0xa0feb9=_0x5d64ba;_0x34a895[_0xa0feb9(0x111)+'e']({'url':buildGatewayWsUrl(_0x516064),'token':_0x15a135,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x5123a1[_0xa0feb9(0x17b)+_0xa0feb9(0x11f)],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x3399f9['resolveD'+_0xa0feb9(0x110)+_0xa0feb9(0x158)+'h'](),'onChatEvent':_0x18d974,'onAgentEvent':_0x46e800=>_0x18f61c(_0xa0feb9(0x1bc)+'ent',_0x46e800),'onConnected':async()=>{const _0xa5dca1=_0xa0feb9;if(!_0x28b97c||!_0x2f574c||!_0x29e12b)return;_0x5c8929('running',_0xa5dca1(0x13e)+_0xa5dca1(0x129)+'d',{'health':'healthy','port':_0x2f574c,'tokenPresent':!![]});try{await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x5123a1[_0xa5dca1(0x17c)+_0xa5dca1(0x139)]))[_0xa5dca1(0x213)+_0xa5dca1(0x139)],_0xa5dca1(0x183),_0xa5dca1(0x151)),'stateDir':_0x3399f9[_0xa5dca1(0x162)+_0xa5dca1(0x124)](),'listAgents':_0x266db2,'createAgent':_0x575809=>_0x34a895[_0xa5dca1(0x21a)]('agents.c'+_0xa5dca1(0x1ea),_0x575809),'updateAgent':_0x414074=>_0x34a895['request'](_0xa5dca1(0x133)+_0xa5dca1(0x216),_0x414074),'syncSkills':async({agentIds:_0x31af19,mainWorkspace:_0x1756a1})=>{const _0x2b584a=_0xa5dca1,_0xf15bd0=dirname(_0x1756a1),_0x5d3efe=await syncBundledAgentSkillsToConfig({'agentIds':_0x31af19,'resolveSkillsDir':_0x2277a0=>_0x2277a0===_0x2b584a(0x1dc)?join(_0x1756a1,_0x2b584a(0x18b)):join(_0xf15bd0,_0x2b584a(0x1a6)+'e-'+_0x2277a0,_0x2b584a(0x18b)),'readConfig':()=>_0x3399f9[_0x2b584a(0x218)+'ig'](),'writeConfig':_0x1d1cdd=>_0x3399f9['writeCon'+_0x2b584a(0x223)](_0x1d1cdd),'markConfigWriteHandledInternally':()=>_0x3399f9[_0x2b584a(0x21f)+_0x2b584a(0x1de)+_0x2b584a(0x153)+_0x2b584a(0x1e5)]()});_0x4fd411=_0x5d3efe[_0x2b584a(0x197)+'y'];}}),_0x18f61c('agents-u'+'pdated',{'reason':_0xa5dca1(0x14b)+_0xa5dca1(0x1d6)+_0xa5dca1(0x205)});}catch(_0x13686a){const _0x214a04=_0x13686a instanceof Error?_0x13686a[_0xa5dca1(0x166)]||_0x13686a[_0xa5dca1(0x132)]:String(_0x13686a);_0x4f3f28(_0xa5dca1(0x1c4),'bundled\x20'+_0xa5dca1(0x135)+_0xa5dca1(0x107)+'ed:\x20'+_0x214a04),console[_0xa5dca1(0x185)](_0xa5dca1(0x140)+_0xa5dca1(0x15b)+_0xa5dca1(0x11b)+_0xa5dca1(0x19c)+_0xa5dca1(0x17a)+_0xa5dca1(0x137),_0x13686a);}},'onDisconnected':_0x940349=>{const _0x6c7cca=_0xa0feb9;_0x21c770(_0x940349);if(_0x55d44e||!_0x28b97c)return;_0x192453({'health':_0x6c7cca(0x1f3),'message':'gateway\x20'+_0x6c7cca(0x1ba)+_0x6c7cca(0x179)+_0x940349});}});}async function _0x38dd09(_0x57339e,_0x4d0c9a){const _0x3da3f9=_0x5d64ba;if(_0x28b97c)return;_0x5c8929(_0x3da3f9(0x19f),_0x3da3f9(0x13e)+_0x3da3f9(0x19f),{'health':_0x3da3f9(0x1f3),'port':_0x4d0c9a,'tokenPresent':!![]});const _0x47e8d8=[_0x3da3f9(0x19a),_0x3da3f9(0x1bf),_0x3da3f9(0x1ae)+_0x3da3f9(0x105)+_0x3da3f9(0x1da),_0x3da3f9(0x1f2),_0x57339e,'--port',String(_0x4d0c9a)];_0x4f3f28(_0x3da3f9(0x1c4),'openclaw'+'\x20'+_0x47e8d8['join']('\x20')),_0x28b97c=await spawnClaw(_0x5123a1['projectR'+_0x3da3f9(0x139)],_0x47e8d8,{'env':{'OPENCLAW_STATE_DIR':_0x3399f9[_0x3da3f9(0x162)+_0x3da3f9(0x124)](),'OPENCLAW_CONFIG_PATH':_0x3399f9[_0x3da3f9(0x17f)+_0x3da3f9(0x1a3)+'h']()}}),_0x29e12b=_0x57339e,_0x2f574c=_0x4d0c9a,_0x192453({'health':'unknown','port':_0x2f574c,'tokenPresent':!![],'message':'gateway\x20'+'process\x20'+_0x3da3f9(0x150)+_0x3da3f9(0x14e)+_0x3da3f9(0x1fe)}),await _0x518ba6(_0x57339e,_0x4d0c9a),_0x28b97c[_0x3da3f9(0x16d)]['on'](_0x3da3f9(0x181),_0x138249=>{const _0x27f53b=_0x3da3f9,_0xebd8b4=_0x138249[_0x27f53b(0x13c)]();_0x4f3f28(_0x27f53b(0x16d),_0xebd8b4);}),_0x28b97c['stderr']['on']('data',_0x3be7fb=>{const _0x147659=_0x3da3f9,_0x3b94c7=_0x3be7fb[_0x147659(0x13c)]();_0x4f3f28(_0x147659(0x212),_0x3b94c7);}),_0x28b97c['on'](_0x3da3f9(0x185),_0x3f2ac3=>{const _0x40cf04=_0x3da3f9;_0x4f3f28(_0x40cf04(0x212),_0x3f2ac3 instanceof Error?_0x3f2ac3[_0x40cf04(0x166)]||_0x3f2ac3[_0x40cf04(0x132)]:String(_0x3f2ac3));}),_0x28b97c['on'](_0x3da3f9(0x1e9),(_0x1869a2,_0x2c8906)=>{const _0x37c90b=_0x3da3f9;_0x4f3f28(_0x37c90b(0x1c4),_0x37c90b(0x13e)+_0x37c90b(0x207)+'ode='+(_0x1869a2??_0x37c90b(0x168))+'\x20signal='+(_0x2c8906??_0x37c90b(0x168))),_0x28b97c=null,_0x29e12b=null,_0x2f574c=null,_0x34a895['configur'+'e'](null),_0x21c770(_0x37c90b(0x13e)+'process\x20'+'exited');if(_0x55d44e){_0x5c8929(_0x37c90b(0x189),_0x37c90b(0x13e)+_0x37c90b(0x189),{'health':_0x37c90b(0x1f3),'port':null,'tokenPresent':![]});return;}_0x5c8929('error','gateway\x20'+_0x37c90b(0x1db)+_0x37c90b(0x182)+_0x37c90b(0x11a),{'health':'unhealth'+'y','port':null,'tokenPresent':![]});});}async function _0x2f558e(){const _0x364f51=_0x5d64ba;if(_0x28b97c)return;_0x55d44e=![],await _0x470763[_0x364f51(0x147)]()[_0x364f51(0x1e1)](_0x43cd46=>{const _0x3b4d18=_0x364f51;_0x4f3f28(_0x3b4d18(0x1c4),_0x3b4d18(0x193)+_0x3b4d18(0x112)+_0x3b4d18(0x1c1)+_0x3b4d18(0x114)+_0x3b4d18(0x136)+(_0x43cd46 instanceof Error?_0x43cd46[_0x3b4d18(0x132)]:String(_0x43cd46)));}),await _0x3399f9[_0x364f51(0x220)+_0x364f51(0x1d8)+_0x364f51(0x223)](),_0x3399f9[_0x364f51(0x1f0)+_0x364f51(0x199)+'es'](),_0x3399f9['setGatew'+_0x364f51(0x1ff)+_0x364f51(0x15c)](_0x4e2830=>{void _0x3d1c3b(_0x4e2830);});const _0x47e4fe=await _0x3399f9[_0x364f51(0x1a8)+_0x364f51(0x121)+'tings']();await _0x38dd09(_0x47e4fe[_0x364f51(0x127)],_0x47e4fe['port']);}async function _0xea0dcc(){const _0x445f41=_0x5d64ba;_0x55d44e=!![],_0x34a895[_0x445f41(0x111)+'e'](null);if(_0x28b97c){const _0x177fdb=_0x28b97c;_0x28b97c=null;try{_0x177fdb[_0x445f41(0x1c3)]('SIGTERM');}catch{}await new Promise(_0x172838=>setTimeout(_0x172838,0x1f4));if(!_0x177fdb[_0x445f41(0x1b1)])try{_0x177fdb['kill'](_0x445f41(0x115));}catch{}}_0x29e12b=null,_0x2f574c=null,_0x21c770(_0x445f41(0x13e)+_0x445f41(0x189)),await _0x470763[_0x445f41(0x1ab)](),_0x3399f9['dispose'](),_0x5c8929(_0x445f41(0x189),'gateway\x20'+_0x445f41(0x189),{'health':_0x445f41(0x1f3),'port':null,'tokenPresent':![]}),_0x55d44e=![];}async function _0x3d1c3b(_0x220ddd=_0x5d64ba(0x21d)+'estart'){const _0x2c897e=_0x5d64ba;if(_0x32f7ac)return{'ok':!![]};return _0x32f7ac=!![],_0x2afbc3=_0x2afbc3[_0x2c897e(0x202)](async()=>{const _0x2629a1=_0x2c897e;_0x5c8929(_0x2629a1(0x156)+'ng',_0x2629a1(0x13e)+_0x2629a1(0x156)+'ng:\x20'+_0x220ddd,{'health':'unknown'}),await _0xea0dcc(),await _0x2f558e();})[_0x2c897e(0x1f9)](()=>{_0x32f7ac=![];}),await _0x2afbc3,{'ok':!![]};}async function _0x166faf(){const _0x2fe35e=_0x5d64ba,_0x3b3c7d=await loadRuntimeInfo(_0x5123a1['projectR'+_0x2fe35e(0x139)]);return{'runtimeRoot':_0x3b3c7d['runtimeR'+'oot'],'openclawVersion':_0x3b3c7d[_0x2fe35e(0x183)+_0x2fe35e(0x131)],'openclawWorkingDir':_0x3b3c7d['openclaw'+_0x2fe35e(0x122)+'ir'],'openclawBin':_0x3b3c7d['openclaw'+_0x2fe35e(0x21e)],'plugins':_0x3b3c7d[_0x2fe35e(0x1c5)][_0x2fe35e(0x211)](_0x62a530=>({'pluginId':_0x62a530[_0x2fe35e(0x1e7)],'source':_0x62a530[_0x2fe35e(0x1bd)],'version':_0x62a530[_0x2fe35e(0x1ad)],'installPath':_0x62a530[_0x2fe35e(0x164)+_0x2fe35e(0x1c9)]})),'configPath':_0x3399f9[_0x2fe35e(0x17f)+_0x2fe35e(0x1a3)+'h'](),'stateDir':_0x3399f9[_0x2fe35e(0x162)+_0x2fe35e(0x124)](),'bundledAgentSkillsDiscovery':_0x4fd411};}async function _0x266db2(){const _0x46414d=_0x5d64ba,_0x11eb78=asRecord(await _0x34a895[_0x46414d(0x21a)](_0x46414d(0x219)+'ist',{})),_0x12952a=getTrimmedString(_0x11eb78[_0x46414d(0x16f)+'d'])||_0x46414d(0x1dc),_0xb16981=Array[_0x46414d(0x1ec)](_0x11eb78[_0x46414d(0x151)])?[..._0x11eb78[_0x46414d(0x151)]]:[];return{..._0x11eb78,'defaultId':_0x12952a,'agents':_0xb16981};}async function _0x2aba4b(){const _0x12a923=_0x5d64ba;if(!_0x24b851())return{'defaultId':_0x12a923(0x1dc),'mainKey':'','scope':'','pending':!![],'agents':[{'id':_0x12a923(0x1dc),'name':_0x5123a1[_0x12a923(0x17b)+_0x12a923(0x11f)],'workspace':join(_0x3399f9['resolveS'+_0x12a923(0x124)](),_0x12a923(0x1a6)+'e')}]};const _0x51358d=await _0x266db2(),_0x433784=getTrimmedString(_0x51358d[_0x12a923(0x16f)+'d'])||'main',_0x865d3c=Array[_0x12a923(0x1ec)](_0x51358d[_0x12a923(0x151)])?[..._0x51358d[_0x12a923(0x151)]]:[];return!_0x865d3c[_0x12a923(0x172)](_0x3b3225=>asRecord(_0x3b3225)['id']===_0x12a923(0x1dc))&&_0x865d3c['unshift']({'id':'main','name':_0x5123a1[_0x12a923(0x17b)+_0x12a923(0x11f)],'workspace':join(_0x3399f9['resolveS'+_0x12a923(0x124)](),_0x12a923(0x1a6)+'e')}),{..._0x51358d,'defaultId':_0x433784,'agents':_0x865d3c};}async function _0x80e166(_0x31e46e={}){const _0x1f4536=_0x5d64ba;_0x163df8();const _0x2c5d33=await _0x34a895['request']('sessions'+_0x1f4536(0x130),buildSessionCreateRequestPayload(_0x31e46e));return parseSessionCreateResult(_0x2c5d33);}async function _0x219a1c(_0x4376f3={}){const _0x5c240e=_0x5d64ba,_0x5a298e=await readSessionMetadata(_0x3399f9[_0x5c240e(0x162)+'tateDir']());if(!_0x24b851())return{'pending':!![],'sessions':[],'pinnedKeys':_0x5a298e[_0x5c240e(0x134)+'ys']};const _0x4fd169=Math[_0x5c240e(0x170)](0x1,Math[_0x5c240e(0x1b9)](Number(_0x4376f3['limit'])||0x64)),_0x3e3821={'limit':_0x4fd169,'includeGlobal':!![],'includeUnknown':![]},_0x4b74e1=getTrimmedString(_0x4376f3[_0x5c240e(0x21b)]??'main');if(_0x4b74e1)_0x3e3821[_0x5c240e(0x21b)]=_0x4b74e1;return applySessionMetadata(await _0x34a895['request'](_0x5c240e(0x109)+_0x5c240e(0x224),_0x3e3821),_0x5a298e);}async function _0x13117f(_0x3f181e={}){const _0x1409d1=_0x5d64ba;_0x163df8();const _0x128e6a=getTrimmedString(_0x3f181e[_0x1409d1(0x1df)+'ey']??_0x3f181e[_0x1409d1(0x178)]);if(!_0x128e6a)throw new Error(_0x1409d1(0x1df)+_0x1409d1(0x14c)+_0x1409d1(0x20b));const _0x501b62=await _0x34a895[_0x1409d1(0x21a)](_0x1409d1(0x109)+'.delete',{'key':_0x128e6a,'deleteTranscript':_0x3f181e['deleteTr'+_0x1409d1(0x12d)]!==![],'emitLifecycleHooks':!![]}),_0x3c4ee5=await readSessionMetadata(_0x3399f9[_0x1409d1(0x162)+'tateDir']());return delete _0x3c4ee5[_0x1409d1(0x188)][_0x128e6a],_0x3c4ee5['pinnedKe'+'ys']=_0x3c4ee5[_0x1409d1(0x134)+'ys'][_0x1409d1(0x209)](_0x3a1858=>_0x3a1858!==_0x128e6a),await writeSessionMetadata(_0x3399f9['resolveS'+_0x1409d1(0x124)](),_0x3c4ee5),_0x18f61c(_0x1409d1(0x1f7)+_0x1409d1(0x15f),{'type':_0x1409d1(0x1ef),'sessionKey':_0x128e6a}),_0x501b62;}async function _0x23829b(_0x1534a2={}){const _0x3e697e=_0x5d64ba,_0x3214bd=getTrimmedString(_0x1534a2[_0x3e697e(0x1df)+'ey']??_0x1534a2['key']);if(!_0x3214bd)throw new Error('sessionK'+'ey\x20is\x20re'+_0x3e697e(0x20b));const _0x10b3e5=getTrimmedString(_0x1534a2[_0x3e697e(0x1e2)]??_0x1534a2['label']??_0x1534a2[_0x3e697e(0x169)]),_0x573975=await readSessionMetadata(_0x3399f9['resolveS'+_0x3e697e(0x124)]());if(_0x10b3e5)_0x573975[_0x3e697e(0x188)][_0x3214bd]=_0x10b3e5;else delete _0x573975[_0x3e697e(0x188)][_0x3214bd];return await writeSessionMetadata(_0x3399f9['resolveS'+'tateDir'](),_0x573975),_0x18f61c(_0x3e697e(0x1f7)+_0x3e697e(0x15f),{'type':_0x3e697e(0x1a4),'sessionKey':_0x3214bd,'name':_0x10b3e5}),{'ok':!![]};}async function _0x3c5a2a(){const _0x454bc1=_0x5d64ba,_0x51b9b1=await readSessionMetadata(_0x3399f9[_0x454bc1(0x162)+_0x454bc1(0x124)]());return _0x51b9b1['pinnedKe'+'ys'];}async function _0xd1d456(_0x1b8c42=[]){const _0x333d3d=_0x5d64ba,_0x4464f0=await readSessionMetadata(_0x3399f9[_0x333d3d(0x162)+_0x333d3d(0x124)]());return _0x4464f0[_0x333d3d(0x134)+'ys']=Array[_0x333d3d(0x1ec)](_0x1b8c42)?[...new Set(_0x1b8c42[_0x333d3d(0x211)](getTrimmedString)[_0x333d3d(0x209)](Boolean))]:[],await writeSessionMetadata(_0x3399f9[_0x333d3d(0x162)+_0x333d3d(0x124)](),_0x4464f0),_0x18f61c(_0x333d3d(0x1f7)+'updated',{'type':'pinned-k'+_0x333d3d(0x160)+_0x333d3d(0x1d9),'pinnedKeys':_0x4464f0['pinnedKe'+'ys']}),{'ok':!![],'pinnedKeys':_0x4464f0[_0x333d3d(0x134)+'ys']};}async function _0x55c7cd(){const _0x40897b=_0x5d64ba,_0x1171c7=join(_0x3399f9[_0x40897b(0x162)+_0x40897b(0x124)](),_0x40897b(0x1a6)+'e');return{'path':_0x1171c7,'exists':Boolean(await stat(_0x1171c7)[_0x40897b(0x1e1)](()=>null))};}async function _0x2a0344(){const _0x12fe9f=_0x5d64ba;return readSharedContext(join(_0x3399f9['resolveS'+_0x12fe9f(0x124)](),_0x12fe9f(0x1a6)+'e'));}async function _0x305a83(_0x2d2de2={}){const _0x437e8b=_0x5d64ba;return writeSharedContext(join(_0x3399f9[_0x437e8b(0x162)+_0x437e8b(0x124)](),'workspac'+'e'),_0x2d2de2);}async function _0x215985(_0x38ca5c={}){const _0xdd017d=_0x5d64ba;return _0x163df8(),await _0x34a895['request'](_0xdd017d(0x106)+'t',_0x38ca5c);}async function _0xbfe736(_0x1c265e={}){const _0xe4ab83=_0x5d64ba;return _0x163df8(),await _0x34a895[_0xe4ab83(0x21a)](_0xe4ab83(0x184),_0x1c265e);}async function _0x368c73(_0x4edde4={}){const _0x542f8f=_0x5d64ba;_0x163df8();const _0x428d29=getTrimmedString(_0x4edde4[_0x542f8f(0x104)]??_0x4edde4['id']);if(!_0x428d29)throw new Error(_0x542f8f(0x128)+'\x20require'+'d');const _0x332d32=asRecord(_0x4edde4[_0x542f8f(0x1cc)]),_0x2747cf=Object[_0x542f8f(0x1a7)](_0x332d32)[_0x542f8f(0x154)]>0x0?_0x332d32:{..._0x4edde4};return delete _0x2747cf['jobId'],delete _0x2747cf['id'],await _0x34a895[_0x542f8f(0x21a)]('cron.upd'+_0x542f8f(0x103),{'jobId':_0x428d29,'patch':_0x2747cf});}async function _0x30cb6d(_0x1d501e={}){const _0x40c9dc=_0x5d64ba;_0x163df8();const _0x69e52a=getTrimmedString(_0x1d501e[_0x40c9dc(0x104)]??_0x1d501e['id']);if(!_0x69e52a)throw new Error('jobId\x20is'+'\x20require'+'d');return await _0x34a895[_0x40c9dc(0x21a)](_0x40c9dc(0x200)+_0x40c9dc(0x1ed),{'jobId':_0x69e52a});}async function _0x4b080c(_0x59a96d={}){const _0x58eca8=_0x5d64ba;_0x163df8();const _0x5bfaf1=getTrimmedString(_0x59a96d[_0x58eca8(0x104)]??_0x59a96d['id']);if(!_0x5bfaf1)throw new Error(_0x58eca8(0x128)+_0x58eca8(0x12a)+'d');return await _0x34a895[_0x58eca8(0x21a)]('cron.run',{'jobId':_0x5bfaf1});}async function _0x14846a(_0x1344c={}){const _0x1882ba=_0x5d64ba;return _0x163df8(),await _0x34a895['request'](_0x1882ba(0x13a)+'s',_0x1344c);}async function _0xd35881(_0x43ba45={}){const _0x3bbce5=_0x5d64ba;return _0x163df8(),await _0x34a895[_0x3bbce5(0x21a)](_0x3bbce5(0x1b0)+_0x3bbce5(0x1af),_0x43ba45);}async function _0x4fc713(_0x23c303={}){const _0x1fa9f0=_0x5d64ba;return _0x163df8(),await _0x34a895['request'](_0x1fa9f0(0x15e)+_0x1fa9f0(0x216),_0x23c303);}async function _0x4d443e(_0x50060a={}){const _0x2862f5=_0x5d64ba;return _0x163df8(),await _0x34a895[_0x2862f5(0x21a)]('skills.d'+'elete',_0x50060a);}async function _0x1ebf2c(_0x2205db={}){const _0x345ffb=_0x5d64ba;_0x163df8();const _0x530075=getTrimmedString(_0x2205db['sessionK'+'ey']),_0x2af590=getTrimmedString(_0x2205db[_0x345ffb(0x132)]),_0x3feb0a=getTrimmedString(_0x2205db[_0x345ffb(0x1b8)+'d'])||randomUUID();if(!_0x530075)throw new Error(_0x345ffb(0x1df)+'ey\x20is\x20re'+_0x345ffb(0x20b));if(!_0x2af590)throw new Error(_0x345ffb(0x143)+_0x345ffb(0x203)+_0x345ffb(0x149));_0xb42f5d({'requestId':_0x3feb0a,'sessionKey':_0x530075,'type':_0x345ffb(0x13d)}),_0xd2c148['set'](_0x3feb0a,{'runId':_0x3feb0a,'requestId':_0x3feb0a,'sessionKey':_0x530075,'textLength':0x0}),_0x100f37[_0x345ffb(0x1f8)](_0x530075,_0x3feb0a);try{const _0x5884db=await buildAttachments(Array[_0x345ffb(0x1ec)](_0x2205db[_0x345ffb(0x195)+'s'])?_0x2205db[_0x345ffb(0x195)+'s']:[]),_0x377f5e=asRecord(await _0x34a895[_0x345ffb(0x21a)](_0x345ffb(0x13f)+'d',{'sessionKey':_0x530075,'message':_0x2af590,'deliver':![],'idempotencyKey':_0x3feb0a,..._0x5884db['length']>0x0?{'attachments':_0x5884db}:{}})),_0x1188e3=getTrimmedString(_0x377f5e[_0x345ffb(0x10a)])||_0x3feb0a,_0x52527b=_0xd2c148[_0x345ffb(0x18f)](_0x3feb0a);if(!_0x52527b)return{'ok':!![],'requestId':_0x3feb0a,'runId':_0x1188e3};return _0x1188e3!==_0x52527b[_0x345ffb(0x10a)]&&(_0xd2c148[_0x345ffb(0x155)](_0x52527b[_0x345ffb(0x10a)]),_0x52527b[_0x345ffb(0x10a)]=_0x1188e3,_0xd2c148[_0x345ffb(0x1f8)](_0x1188e3,_0x52527b)),_0x100f37[_0x345ffb(0x1f8)](_0x530075,_0x1188e3),_0x377f5e[_0x345ffb(0x1c7)]===_0x345ffb(0x185)&&_0x4433ce(_0x52527b,_0x345ffb(0x185),getTrimmedString(_0x377f5e['errorMes'+_0x345ffb(0x18c)])||'gateway\x20'+_0x345ffb(0x20d)+'led'),{'ok':!![],'requestId':_0x3feb0a,'runId':_0x1188e3,'response':_0x377f5e};}catch(_0xa45df6){const _0x162a89=_0x591423(_0x3feb0a),_0x4ad795=_0xa45df6 instanceof Error?_0xa45df6[_0x345ffb(0x132)]:String(_0xa45df6);if(_0x162a89)_0x4433ce(_0x162a89,_0x345ffb(0x185),_0x4ad795);else _0xb42f5d({'requestId':_0x3feb0a,'sessionKey':_0x530075,'type':_0x345ffb(0x185),'message':_0x4ad795});throw _0xa45df6;}}async function _0x2a67e7(_0x2c68bb={}){const _0x2b505a=_0x5d64ba;_0x163df8();const _0x23665a=getTrimmedString(_0x2c68bb[_0x2b505a(0x1df)+'ey']);if(!_0x23665a)throw new Error('sessionK'+_0x2b505a(0x14c)+_0x2b505a(0x20b));const _0x3e5990=_0x591423(getTrimmedString(_0x2c68bb[_0x2b505a(0x1b8)+'d']))??_0x4915e6(_0x23665a),_0x284351=_0x100f37[_0x2b505a(0x18f)](_0x23665a),_0x218d89={'sessionKey':_0x23665a};if(_0x3e5990?.[_0x2b505a(0x10a)])_0x218d89[_0x2b505a(0x10a)]=_0x3e5990[_0x2b505a(0x10a)];else{if(_0x284351)_0x218d89['runId']=_0x284351;}const _0x4a5d7f=await _0x34a895[_0x2b505a(0x21a)](_0x2b505a(0x1b4)+'rt',_0x218d89);if(_0x3e5990)_0x4433ce(_0x3e5990,'done');return _0x4a5d7f;}async function _0x1ac3bf(_0x55a94a={}){const _0x4b3097=_0x5d64ba;_0x163df8();const _0x2ed77f=getTrimmedString(_0x55a94a[_0x4b3097(0x1df)+'ey']);if(!_0x2ed77f)throw new Error(_0x4b3097(0x1df)+_0x4b3097(0x14c)+_0x4b3097(0x20b));return await _0x34a895[_0x4b3097(0x21a)](_0x4b3097(0x108)+'tory',{'sessionKey':_0x2ed77f,'limit':Math[_0x4b3097(0x170)](0x1,Math[_0x4b3097(0x1b9)](Number(_0x55a94a[_0x4b3097(0x18d)])||0xc8))});}async function _0x692cec(_0x5d68fc=''){const _0x16f6f8=_0x5d64ba;if(!_0x24b851())return{'pending':!![],'skills':[]};const _0x3ed7b1=getTrimmedString(_0x5d68fc),_0x331058=await _0x34a895[_0x16f6f8(0x21a)](_0x16f6f8(0x1ac)+_0x16f6f8(0x1d7),_0x3ed7b1?{'agentId':_0x3ed7b1}:{}),_0x3ca1f7=await _0x3399f9[_0x16f6f8(0x218)+'ig']()['catch'](()=>({}));return filterSkillsForAgent(_0x331058,_0x3ca1f7,_0x3ed7b1);}return{'on':_0x1e4896,'start':_0x2f558e,'stop':_0xea0dcc,'restart':_0x3d1c3b,'runtimeInfo':_0x166faf,'getStatus':()=>_0x5822b9,'getRecentLogs':_0x459670,'answerAskUserQuestion':_0x957cce=>_0x470763['answer'](_0x957cce),'agents':{'list':_0x2aba4b},'skills':{'status':_0x692cec,'install':_0xd35881,'update':_0x4fc713,'delete':_0x4d443e},'sessions':{'create':_0x80e166,'list':_0x219a1c,'delete':_0x13117f,'rename':_0x23829b,'pinnedKeys':_0x3c5a2a,'setPinnedKeys':_0xd1d456},'workspace':{'directoryInfo':_0x55c7cd,'sharedContext':_0x2a0344,'writeSharedContext':_0x305a83},'cron':{'list':_0x215985,'create':_0xbfe736,'update':_0x368c73,'remove':_0x30cb6d,'runOnce':_0x4b080c,'logs':_0x14846a},'models':{'settings':()=>_0x3399f9[_0x5d64ba(0x18e)+_0x5d64ba(0x206)](),'selectedModelId':async()=>{const _0x446f2e=_0x5d64ba,_0x6ff0b1=await _0x3399f9[_0x446f2e(0x18e)+_0x446f2e(0x206)]();return _0x6ff0b1[_0x446f2e(0x1d4)]&&_0x6ff0b1[_0x446f2e(0x167)+'e']?_0x6ff0b1[_0x446f2e(0x1d4)]+'/'+_0x6ff0b1[_0x446f2e(0x167)+'e']:'';},'customModels':async()=>[]},'config':{'read':()=>_0x3399f9[_0x5d64ba(0x218)+'ig']()},'chat':{'stream':_0x1ebf2c,'abort':_0x2a67e7,'history':_0x1ac3bf}};}
|
|
1
|
+
const _0x2f329a=_0x54fe;(function(_0x2bdb4a,_0x1e1f96){const _0x56e76a=_0x54fe,_0x1f2071=_0x2bdb4a();while(!![]){try{const _0x3189c6=-parseInt(_0x56e76a(0x262))/0x1+-parseInt(_0x56e76a(0x268))/0x2+parseInt(_0x56e76a(0x191))/0x3*(-parseInt(_0x56e76a(0x160))/0x4)+parseInt(_0x56e76a(0x205))/0x5*(parseInt(_0x56e76a(0x217))/0x6)+parseInt(_0x56e76a(0x1ba))/0x7+parseInt(_0x56e76a(0x174))/0x8*(-parseInt(_0x56e76a(0x225))/0x9)+parseInt(_0x56e76a(0x28a))/0xa*(parseInt(_0x56e76a(0x1ec))/0xb);if(_0x3189c6===_0x1e1f96)break;else _0x1f2071['push'](_0x1f2071['shift']());}catch(_0x3085f7){_0x1f2071['push'](_0x1f2071['shift']());}}}(_0x2c73,0xa675a));import{randomUUID}from'node:crypto';import{createServer}from'node:http';import{EventEmitter}from'node:events';function _0x2c73(){const _0x498313=['backend','pted\x20by\x20','off','get','filePath','ded','delete','status','ate','t-stream','sessionI','HEARTBEA','y\x20shortl','request','sent','ync\x20fail','resolveC','ort\x20','.delete','workspac','eam\x20acce','n\x20callba','final','ion/octe','led:\x20','name','message\x20','json','t\x20connec','listen','Version','eys-upda','tings','und','IDENTITY','quested','join','reconnec','t\x20discon','sted','session-','main','toISOStr','704154ZJCvot','anscript','projectR','startedA','chat\x20att','behavior','answer','ing,\x20ple','.json','pinned\x20k','nexpecte','token','Fallback','[REDACTE','paths','mpleted','MEMORY.m','invalid\x20','sessions','isFile','ey\x20is\x20re','eady','skills.s','skill\x20up','setModel','65YUnxbR','ompleted','andledIn','session\x20','run','\x20write\x20r','unknown','includes','tory\x20loa','exited','modelNam','WorkingD','now','max','agents-u','AGENTS.m','.create','stdout','561660jElCVi','values','title','d\x20--toke','cron.add','controll','\x20list\x20co','agents.l','pid','headers','.list','watchCon','deny','lete\x20req','370647mmpkhc','\x20settled','random','Timer','ayRestar','eam-even','catch','destroy','configur','e\x20update','skills.d','nChange','ath','url','terminal','rt\x20reque','delta','equested','stop','filter','agents.c','pdate','string','image/gi','close','text','ssionKey','textLeng','achments','port','skill\x20in','attachme','then','cron.lis','c\x20starte','agents-r','process\x20','stringif','ted','ntityPat','session','system','tHandler','ase','image/jp','productN','push','\x20require','USER.md','quired','ed:\x20','plugins','r-questi','chat-str','lifecycl','info','e\x20shared',':session','desktop','names','er\x20start','216649gRjEmh','agents\x20s','aded','set','eam\x20fail','killed','344900nLweKt','pinned-k','resolveD','tatus','bundled\x20','aborted','ensureGa','started','-questio','resolveS','llow-unc','--allow-','ing','kdown','allow','started,','requeste','ndled\x20ag','keys','sessionK','\x20gateway','ents\x20syn','answers','nected','version','cron.run','hell:gat','file','iled','state','is\x20start','trim','pinnedKe','unshift','80gEHEsW','toString','stopped','readConf','jobId\x20is','null','timeout','connecte','chat.sen','ask-user','start','message','agent:','limit','getModel','splice','ills\x20syn','deleted','\x20request','key','onfigure','ame','once','clear','text/mar','create\x20r','installP','sage','patch','ured','parentSe','writeHea','utf8','uested','image/pn','estart','onfigPat','map','bundled-','renamed','isArray','agents','restarti','skill\x20de','eway]\x20bu','igWriteH','reate','size','ties','ay\x20state','kUserQue','chat\x20fai','stderr','--port','runId','stack','floor','deleteTr','closed','has','stionPlu','agentId','res','t\x20not\x20fo','chat.abo','slice','eys\x20upda','chat','ion/pdf','\x20failed\x20','toUpperC','skills','defaultI','3973680TQHPrV','running','ternally','restart\x20','is\x20requi','27.0.0.1','ginConfi','tokenPre','ized','gateway\x20','flush','er\x20stop\x20','--token','type','ested','starting','create\x20c','ist','writeCon','by\x20gatew','24WzIyCA','fig','healthy','POST','oot','applicat','agent\x20sk','ase\x20retr','discover','content','ved','peratedM','requestI','markConf','setSelfO','\x20run\x20--a','startsWi','Bin','ode=','n\x20[REDAC','updated','dly','g+xml','Settings','label','text/csv','ting:\x20','done','agent-ev','3shtJwA','runtimeR','[wujie-s','ck\x20disab','unhealth','/ask-use','image/we','provider','error','source','log','pop','gateway','errorMes','tateDir','mimeType','websocke','emit','spawn\x20re','arge:\x20','jobId','entries','restartO','led','changed','cron.rem','chat\x20run','chat\x20his','figChang','TOOLS.md','fileName','stall\x20co','\x20prepare','delete\x20c','length','kill','parse','agents.u','chat\x20str','ion/json','warn','3211908tDfqqY','itialCon','end','gateway-','openclaw','split','chat\x20eve'];_0x2c73=function(){return _0x498313;};return _0x2c73();}import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{basename,dirname,join}from'node:path';import _0x539348,{portNumbers}from'get-port';import{createLineBuffer}from'@wujie-shell/logger';import{asRecord,getTrimmedString}from'./utils.mjs';import{loadRuntimeInfo,spawnClaw}from'./runtime.mjs';import{ClawGatewayWsClient}from'./gateway-ws.mjs';import{ensureBundledAgents}from'./bundled-agents.mjs';import{syncBundledAgentSkillsToConfig,filterSkillsForAgent}from'./bundled-agent-skills.mjs';import{createShellLogger,summarizeError,summarizeFilePaths,summarizePayload,summarizeText,toHomePath}from'./logging.mjs';const LOG_LIMIT=0x3e8,CLIENT_ID=_0x2f329a(0x1bd)+'client',CLIENT_MODE=_0x2f329a(0x1c1),CLIENT_DEVICE_FAMILY=_0x2f329a(0x25f),TERMINAL_STREAM_FALLBACK_DELAY_MS=0x4b0,ATTACHMENT_MAX_BYTES=0x19*0x400*0x400,SESSION_METADATA_FILE=_0x2f329a(0x1e9)+'metadata'+_0x2f329a(0x1f4),SHARED_CONTEXT_FILES=[_0x2f329a(0x214)+'d',_0x2f329a(0x1cc)+'T.md',_0x2f329a(0x1e3)+'.md',_0x2f329a(0x1fc)+'d','SOUL.md',_0x2f329a(0x1ae),_0x2f329a(0x255)];function nowIso(){const _0x222521=_0x2f329a;return new Date()[_0x222521(0x1eb)+_0x222521(0x274)]();}function buildGatewayWsUrl(_0x5e34f5){return'ws://127'+'.0.0.1:'+_0x5e34f5;}function _0x54fe(_0x33cf23,_0x3925d6){_0x33cf23=_0x33cf23-0x151;const _0x2c7338=_0x2c73();let _0x54fe8b=_0x2c7338[_0x33cf23];return _0x54fe8b;}function createInitialStatus(){const _0x7c6a83=_0x2f329a;return{'lifecycle':_0x7c6a83(0x28c),'health':_0x7c6a83(0x20b),'port':null,'tokenPresent':![],'message':'gateway\x20'+_0x7c6a83(0x28c),'updatedAt':nowIso()};}function extractGatewayMessageText(_0x4b8162){const _0x33de1a=_0x2f329a;if(typeof _0x4b8162===_0x33de1a(0x23b))return _0x4b8162;if(!Array[_0x33de1a(0x2b2)](_0x4b8162))return'';const _0x1fe6f8=[];for(const _0xa05f4f of _0x4b8162){if(typeof _0xa05f4f===_0x33de1a(0x23b)){if(_0xa05f4f)_0x1fe6f8[_0x33de1a(0x253)](_0xa05f4f);continue;}const _0x4c3569=asRecord(_0xa05f4f);_0x4c3569['type']===_0x33de1a(0x23e)&&typeof _0x4c3569[_0x33de1a(0x23e)]==='string'&&_0x4c3569[_0x33de1a(0x23e)]&&_0x1fe6f8[_0x33de1a(0x253)](_0x4c3569['text']);}return _0x1fe6f8[_0x33de1a(0x1e5)]('\x0a');}function extractGatewayChatText(_0x1b02ce){const _0x5e360d=_0x2f329a,_0x1fad8c=asRecord(_0x1b02ce);if(typeof _0x1fad8c['text']===_0x5e360d(0x23b))return _0x1fad8c[_0x5e360d(0x23e)];return extractGatewayMessageText(_0x1fad8c[_0x5e360d(0x17d)]);}function guessMimeType(_0x311414){const _0x513e9c=_0x2f329a,_0x21fa61=_0x311414[_0x513e9c(0x1bf)]('.')[_0x513e9c(0x19c)]()?.['toLowerC'+'ase']()??'',_0x25b64a={'png':_0x513e9c(0x2ac)+'g','jpg':_0x513e9c(0x251)+'eg','jpeg':_0x513e9c(0x251)+'eg','webp':_0x513e9c(0x197)+'bp','gif':_0x513e9c(0x23c)+'f','svg':'image/sv'+_0x513e9c(0x18a),'pdf':_0x513e9c(0x179)+_0x513e9c(0x15b),'txt':'text/pla'+'in','md':_0x513e9c(0x2a2)+_0x513e9c(0x275),'json':'applicat'+'ion/json','csv':_0x513e9c(0x18d)};return _0x25b64a[_0x21fa61]||_0x513e9c(0x179)+_0x513e9c(0x1d8)+_0x513e9c(0x1ca);}async function buildAttachments(_0x459ba9=[]){const _0x17191c=_0x2f329a,_0x15016d=[];for(const _0x540121 of _0x459ba9){const _0x206bf3=getTrimmedString(_0x540121);if(!_0x206bf3)continue;const _0x36aef3=await stat(_0x206bf3);if(!_0x36aef3[_0x17191c(0x1ff)]())continue;if(_0x36aef3[_0x17191c(0x2b9)]>ATTACHMENT_MAX_BYTES)throw new Error(_0x17191c(0x244)+'nt\x20too\x20l'+_0x17191c(0x1a4)+basename(_0x206bf3));const _0x1adbb9=guessMimeType(_0x206bf3);_0x15016d['push']({'type':_0x1adbb9[_0x17191c(0x184)+'th']('image/')?'image':_0x17191c(0x283),'mimeType':_0x1adbb9,'content':(await readFile(_0x206bf3))[_0x17191c(0x28b)]('base64'),'fileName':basename(_0x206bf3)});}return _0x15016d;}function buildSessionCreateRequestPayload(_0x149402={}){const _0x22298c=_0x2f329a,_0x48a884={},_0x203078=Math[_0x22298c(0x227)]()[_0x22298c(0x28b)](0x24)[_0x22298c(0x158)](0x2,0xf),_0x81ca93=getTrimmedString(_0x149402[_0x22298c(0x154)])||_0x22298c(0x1ea),_0x10943e=getTrimmedString(_0x149402[_0x22298c(0x29d)])||_0x22298c(0x296)+_0x81ca93+(_0x22298c(0x25e)+'-')+Date[_0x22298c(0x211)]();_0x48a884[_0x22298c(0x29d)]=_0x10943e+'-'+_0x203078,_0x48a884['agentId']=_0x81ca93;const _0x6bbbef=getTrimmedString(_0x149402[_0x22298c(0x18c)]);if(_0x6bbbef)_0x48a884[_0x22298c(0x18c)]=_0x6bbbef+'-'+_0x203078;for(const _0x7b03ae of['model',_0x22298c(0x2a8)+_0x22298c(0x23f),'task',_0x22298c(0x295)]){const _0x1eafa7=getTrimmedString(_0x149402[_0x7b03ae]);if(_0x1eafa7)_0x48a884[_0x7b03ae]=_0x1eafa7;}return _0x48a884;}function parseSessionCreateResult(_0x3b5d16){const _0x26fceb=_0x2f329a,_0x1a8d48=asRecord(_0x3b5d16),_0x5caa2e=asRecord(_0x1a8d48[_0x26fceb(0x24d)]);return{'ok':!![],'key':getTrimmedString(_0x1a8d48['key'])||getTrimmedString(_0x1a8d48[_0x26fceb(0x27b)+'ey'])||getTrimmedString(_0x5caa2e[_0x26fceb(0x29d)])||null,'sessionId':getTrimmedString(_0x1a8d48['sessionI'+'d'])||getTrimmedString(_0x5caa2e[_0x26fceb(0x1cb)+'d'])||null};}function getSessionKeyFromValue(_0x43882c){const _0x5ae51d=_0x2f329a,_0x436890=asRecord(_0x43882c);return getTrimmedString(_0x436890[_0x5ae51d(0x27b)+'ey']??_0x436890[_0x5ae51d(0x29d)]??_0x436890['id']);}function createEmptySessionMetadata(){return{'names':{},'pinnedKeys':[]};}async function readSessionMetadata(_0x5ae96b){const _0x2449a4=_0x2f329a;try{const _0x444344=JSON['parse'](await readFile(join(_0x5ae96b,SESSION_METADATA_FILE),_0x2449a4(0x2aa))),_0x53453a=asRecord(_0x444344);return{'names':asRecord(_0x53453a[_0x2449a4(0x260)]),'pinnedKeys':Array[_0x2449a4(0x2b2)](_0x53453a[_0x2449a4(0x288)+'ys'])?_0x53453a['pinnedKe'+'ys'][_0x2449a4(0x238)](_0x49c42e=>typeof _0x49c42e===_0x2449a4(0x23b)&&_0x49c42e[_0x2449a4(0x287)]()):[]};}catch{return createEmptySessionMetadata();}}async function writeSessionMetadata(_0x373676,_0x2199b3){const _0x324f2b=_0x2f329a;await mkdir(_0x373676,{'recursive':!![]}),await writeFile(join(_0x373676,SESSION_METADATA_FILE),JSON[_0x324f2b(0x24a)+'y'](_0x2199b3,null,0x2)+'\x0a',_0x324f2b(0x2aa));}function applySessionMetadata(_0x44f14e,_0x3550ea){const _0x30da48=_0x2f329a,_0x100bf7=asRecord(_0x44f14e),_0x1ee5f9=Array[_0x30da48(0x2b2)](_0x100bf7['sessions'])?_0x100bf7[_0x30da48(0x1fe)]:[];return{..._0x100bf7,'pinnedKeys':_0x3550ea[_0x30da48(0x288)+'ys'],'sessions':_0x1ee5f9[_0x30da48(0x2af)](_0x3079ab=>{const _0x2fd4d3=_0x30da48,_0x36a975=asRecord(_0x3079ab),_0x2055c4=getSessionKeyFromValue(_0x36a975);if(!_0x2055c4)return _0x3079ab;const _0x36287a=getTrimmedString(_0x3550ea['names'][_0x2055c4]),_0x42ac7=_0x3550ea[_0x2fd4d3(0x288)+'ys'][_0x2fd4d3(0x20c)](_0x2055c4);return{..._0x36a975,..._0x36287a?{'name':_0x36287a,'displayName':_0x36287a,'label':_0x36287a}:{},'pinned':_0x42ac7};})};}function sanitizeSharedContextPayload(_0x560afa){const _0x59e493=_0x2f329a,_0x587a6a=asRecord(_0x560afa),_0x2069f5={};for(const _0x377aca of SHARED_CONTEXT_FILES){if(typeof _0x587a6a[_0x377aca]===_0x59e493(0x23b))_0x2069f5[_0x377aca]=_0x587a6a[_0x377aca];}return _0x2069f5;}async function readSharedContext(_0x16f877){const _0xca4fb6=_0x2f329a,_0x53b159={};for(const _0x435001 of SHARED_CONTEXT_FILES){try{_0x53b159[_0x435001]=await readFile(join(_0x16f877,_0x435001),_0xca4fb6(0x2aa));}catch{_0x53b159[_0x435001]='';}}return _0x53b159;}async function writeSharedContext(_0x2d0723,_0x3afc83){const _0x5e3396=_0x2f329a,_0x132e4a=sanitizeSharedContextPayload(_0x3afc83);await mkdir(_0x2d0723,{'recursive':!![]});for(const [_0x2f5121,_0x404663]of Object[_0x5e3396(0x1a6)](_0x132e4a)){await writeFile(join(_0x2d0723,_0x2f5121),_0x404663,_0x5e3396(0x2aa));}return{'ok':!![],'files':Object[_0x5e3396(0x27a)](_0x132e4a)};}function createAskUserQuestionServer({configController:_0x9bbbda,emit:_0x33729d}){const _0x57a35b=new Map();let _0x13228c=null,_0x3502e9='',_0x5a7358='';async function _0x4e62f6(){const _0x13bc5e=_0x54fe;if(_0x13228c)return{'callbackUrl':_0x3502e9,'secret':_0x5a7358};_0x5a7358=randomUUID();const _0x4baca3=await _0x539348({'port':portNumbers(0x332c,0x338f)});return _0x3502e9='http://1'+_0x13bc5e(0x165)+':'+_0x4baca3+(_0x13bc5e(0x196)+_0x13bc5e(0x259)+'on'),_0x13228c=createServer(async(_0xe056cb,_0x5841f6)=>{const _0x1a61c0=_0x13bc5e;if(_0xe056cb['method']!==_0x1a61c0(0x177)||_0xe056cb[_0x1a61c0(0x232)]!==_0x1a61c0(0x196)+_0x1a61c0(0x259)+'on'){_0x5841f6['writeHea'+'d'](0x194),_0x5841f6[_0x1a61c0(0x1bc)]('not\x20foun'+'d');return;}if(_0xe056cb[_0x1a61c0(0x220)]['x-ask-us'+'er-secre'+'t']!==_0x5a7358){_0x5841f6[_0x1a61c0(0x2a9)+'d'](0x191),_0x5841f6[_0x1a61c0(0x1bc)]('unauthor'+_0x1a61c0(0x168));return;}let _0x59ee36='';_0xe056cb['on']('data',_0x415ab3=>{const _0xfbe166=_0x1a61c0;_0x59ee36+=_0x415ab3['toString']();if(_0x59ee36[_0xfbe166(0x1b3)]>0x400*0x400)_0xe056cb[_0xfbe166(0x22c)]();}),_0xe056cb['on'](_0x1a61c0(0x1bc),()=>{const _0x5ac9df=_0x1a61c0;let _0x2d4fa3={};try{_0x2d4fa3=JSON[_0x5ac9df(0x1b5)](_0x59ee36||'{}');}catch{_0x5841f6[_0x5ac9df(0x2a9)+'d'](0x190),_0x5841f6[_0x5ac9df(0x1bc)](_0x5ac9df(0x1fd)+_0x5ac9df(0x1dc));return;}const _0x5ccc31=randomUUID(),_0x3e515e=setTimeout(()=>{const _0x5bac24=_0x5ac9df;if(!_0x57a35b[_0x5bac24(0x152)](_0x5ccc31))return;_0x57a35b[_0x5bac24(0x1c7)](_0x5ccc31),_0x5841f6[_0x5bac24(0x2a9)+'d'](0xc8,{'content-type':_0x5bac24(0x179)+_0x5bac24(0x1b8)}),_0x5841f6[_0x5bac24(0x1bc)](JSON[_0x5bac24(0x24a)+'y']({'behavior':'deny'}));},0x1d4c0);_0x57a35b[_0x5ac9df(0x265)](_0x5ccc31,{'res':_0x5841f6,'timeout':_0x3e515e}),_0x33729d(_0x5ac9df(0x293)+_0x5ac9df(0x270)+'n',{'requestId':_0x5ccc31,...asRecord(_0x2d4fa3)});});}),await new Promise((_0x1fe367,_0x111881)=>{const _0x538214=_0x13bc5e;_0x13228c[_0x538214(0x2a0)](_0x538214(0x199),_0x111881),_0x13228c[_0x538214(0x1de)](_0x4baca3,'127.0.0.'+'1',()=>{const _0x14ab98=_0x538214;_0x13228c[_0x14ab98(0x1c3)]('error',_0x111881),_0x1fe367();});}),await _0x9bbbda['ensureAs'+_0x13bc5e(0x2bc)+_0x13bc5e(0x153)+_0x13bc5e(0x166)+'g']({'callbackUrl':_0x3502e9,'secret':_0x5a7358}),{'callbackUrl':_0x3502e9,'secret':_0x5a7358};}function _0x443277(_0x413cb6={}){const _0x4cca89=_0x54fe,_0x171798=getTrimmedString(_0x413cb6[_0x4cca89(0x180)+'d']);if(!_0x171798||!_0x57a35b[_0x4cca89(0x152)](_0x171798))throw new Error(_0x4cca89(0x293)+_0x4cca89(0x270)+'n\x20reques'+_0x4cca89(0x156)+_0x4cca89(0x1e2));const _0x24039c=_0x57a35b[_0x4cca89(0x1c4)](_0x171798);return _0x57a35b[_0x4cca89(0x1c7)](_0x171798),clearTimeout(_0x24039c[_0x4cca89(0x290)]),_0x24039c[_0x4cca89(0x155)][_0x4cca89(0x2a9)+'d'](0xc8,{'content-type':_0x4cca89(0x179)+_0x4cca89(0x1b8)}),_0x24039c[_0x4cca89(0x155)]['end'](JSON[_0x4cca89(0x24a)+'y']({'behavior':_0x413cb6[_0x4cca89(0x1f1)]==='deny'?'deny':_0x4cca89(0x276),'answers':asRecord(_0x413cb6[_0x4cca89(0x27e)])})),{'ok':!![]};}async function _0x1999eb(){const _0x9553e9=_0x54fe;for(const [_0x39c867,_0x560dcb]of _0x57a35b){_0x57a35b[_0x9553e9(0x1c7)](_0x39c867),clearTimeout(_0x560dcb[_0x9553e9(0x290)]),_0x560dcb[_0x9553e9(0x155)]['writeHea'+'d'](0xc8,{'content-type':_0x9553e9(0x179)+_0x9553e9(0x1b8)}),_0x560dcb[_0x9553e9(0x155)][_0x9553e9(0x1bc)](JSON[_0x9553e9(0x24a)+'y']({'behavior':_0x9553e9(0x223)}));}if(!_0x13228c)return;await new Promise(_0x63b346=>_0x13228c[_0x9553e9(0x23d)](_0x63b346)),_0x13228c=null;}return{'start':_0x4e62f6,'answer':_0x443277,'stop':_0x1999eb};}export function createGatewayController({shellConfig:_0x110f3e,configController:_0x1a1aa0,appVersion:appVersion='0.1.0'}){const _0xdad4e7=_0x2f329a,_0x116c51=new EventEmitter(),_0x521a55=new ClawGatewayWsClient(),_0x3a66e5=[],_0x2f037e=new Map(),_0x543cae=new Map(),_0x3bc1a4=createShellLogger(_0x1a1aa0[_0xdad4e7(0x1fa)],_0xdad4e7(0x19d)),_0x3baf49=createShellLogger(_0x1a1aa0[_0xdad4e7(0x1fa)],_0xdad4e7(0x15a)),_0xd864b5=createShellLogger(_0x1a1aa0[_0xdad4e7(0x1fa)],_0xdad4e7(0x1fe)),_0x46c0f8=createShellLogger(_0x1a1aa0[_0xdad4e7(0x1fa)],'capabili'+_0xdad4e7(0x2ba)),_0x2f9231=createAskUserQuestionServer({'configController':_0x1a1aa0,'emit':(_0x24ef33,_0x4d196e)=>_0x116c51['emit'](_0x24ef33,_0x4d196e)});let _0x44d941=createInitialStatus(),_0x497c24=null,_0x20f854=null,_0x18026d=null,_0x4669ac=![],_0x76c379=![],_0x18aac5=Promise['resolve'](),_0x1bc7e4=null,_0x2b5634=0x0;function _0x2400e7(_0x10d22e,_0x5f5526){const _0x28485e=_0xdad4e7;_0x116c51[_0x28485e(0x1a2)](_0x10d22e,_0x5f5526);}function _0x2b463e(_0x51764d,_0x5327ad){const _0x53470c=_0xdad4e7;return _0x116c51['on'](_0x51764d,_0x5327ad),()=>_0x116c51[_0x53470c(0x1c3)](_0x51764d,_0x5327ad);}function _0xd5d014(_0x120796){const _0x1588d0=_0xdad4e7;_0x44d941={..._0x44d941,..._0x120796,'updatedAt':nowIso()},_0x2400e7(_0x1588d0(0x1bd)+'status',_0x44d941);}function _0x584ae1(_0x1bd3d3,_0x2b9d63,_0x43628b={}){const _0x43022c=_0xdad4e7;_0xd5d014({'lifecycle':_0x1bd3d3,'message':_0x2b9d63,..._0x43628b}),_0x123cd2('system',_0x1bd3d3[_0x43022c(0x15d)+_0x43022c(0x250)]()+'\x20'+_0x2b9d63),_0x3bc1a4?.[_0x43022c(0x25c)](_0x43022c(0x169)+_0x43022c(0x25b)+_0x43022c(0x22e)+'d',{'lifecycle':_0x1bd3d3,'message':_0x2b9d63,'status':{'health':_0x44d941['health'],'port':_0x44d941[_0x43022c(0x242)],'tokenPresent':_0x44d941[_0x43022c(0x167)+_0x43022c(0x1cf)]},...summarizePayload(_0x43628b)});}function _0x123cd2(_0x37fec8,_0x50fbdc){const _0x5cf0d7=_0xdad4e7,_0x513850=String(_0x50fbdc??'')['trimEnd']();if(!_0x513850)return;const _0x7a0d66={'source':_0x37fec8,'text':_0x513850,'timestamp':nowIso()};_0x3a66e5[_0x5cf0d7(0x253)](_0x7a0d66);if(_0x3a66e5[_0x5cf0d7(0x1b3)]>LOG_LIMIT)_0x3a66e5[_0x5cf0d7(0x299)](0x0,_0x3a66e5[_0x5cf0d7(0x1b3)]-LOG_LIMIT);_0x2400e7(_0x5cf0d7(0x1bd)+'log',_0x7a0d66),_0x3bc1a4?.[_0x5cf0d7(0x25c)](_0x5cf0d7(0x169)+_0x5cf0d7(0x19b),{'source':_0x37fec8,'text':_0x513850});}function _0x284578(_0x156de6=0xc8){const _0x3a6d8f=_0xdad4e7;return _0x3a66e5[_0x3a6d8f(0x158)](-Math['max'](0x1,Math[_0x3a6d8f(0x2c2)](_0x156de6)));}function _0x406732(){const _0x414ab6=_0xdad4e7;if(!_0x497c24||_0x44d941[_0x414ab6(0x25b)+'e']!==_0x414ab6(0x161))throw new Error(_0x414ab6(0x169)+_0x414ab6(0x286)+_0x414ab6(0x1f3)+_0x414ab6(0x17b)+_0x414ab6(0x1cd)+'y');}function _0x249b12(){const _0x41669b=_0xdad4e7;return Boolean(_0x497c24&&_0x44d941[_0x41669b(0x25b)+'e']===_0x41669b(0x161));}function _0x10f8c1(_0x4e547d){const _0x47955c=_0xdad4e7;_0x2400e7(_0x47955c(0x25a)+_0x47955c(0x22a)+'t',_0x4e547d);}function _0x57a576(_0x207b50){const _0x3c181a=_0xdad4e7,_0x3ef14f=_0x2f037e[_0x3c181a(0x1c4)](_0x207b50);if(!_0x3ef14f)return null;_0x2f037e[_0x3c181a(0x1c7)](_0x207b50);if(_0x3ef14f[_0x3c181a(0x233)+'Fallback'+_0x3c181a(0x228)])clearTimeout(_0x3ef14f['terminal'+'Fallback'+_0x3c181a(0x228)]);return _0x543cae[_0x3c181a(0x1c7)](_0x3ef14f[_0x3c181a(0x27b)+'ey']),_0x3ef14f;}function _0x26c8c5(_0x33e64c,_0xf2f5a5,_0x414f03=''){const _0x45f980=_0xdad4e7,_0x13d6f0=_0x57a576(_0x33e64c[_0x45f980(0x2c0)]);if(!_0x13d6f0)return;_0x3baf49?.[_0x45f980(0x25c)](_0x45f980(0x1ab)+_0x45f980(0x226),{'requestId':_0x13d6f0[_0x45f980(0x180)+'d'],'runId':_0x13d6f0[_0x45f980(0x2c0)],'sessionKey':_0x13d6f0['sessionK'+'ey'],'outcome':_0xf2f5a5,'durationMs':Date[_0x45f980(0x211)]()-_0x13d6f0['startedA'+'t'],'textLength':_0x13d6f0['textLeng'+'th'],..._0x414f03?{'message':_0x414f03}:{}}),_0x10f8c1({'requestId':_0x13d6f0['requestI'+'d'],'sessionKey':_0x13d6f0[_0x45f980(0x27b)+'ey'],'type':_0xf2f5a5,..._0x414f03?{'message':_0x414f03}:{}});}function _0x6524bb(_0x2ac2dc){const _0x15964b=_0xdad4e7;let _0x2490ec=null;for(const _0x192c40 of _0x2f037e[_0x15964b(0x218)]()){if(_0x192c40[_0x15964b(0x27b)+'ey']===_0x2ac2dc)_0x2490ec=_0x192c40;}return _0x2490ec;}function _0xa3912f(_0x53f941){const _0x32b7ca=_0xdad4e7;if(!_0x53f941)return null;for(const _0x1e80d8 of _0x2f037e['values']()){if(_0x1e80d8[_0x32b7ca(0x180)+'d']===_0x53f941)return _0x1e80d8;}return null;}function _0x55ddfd(_0x124336,_0x553869){const _0x1022d7=_0xdad4e7;if(_0x553869[_0x1022d7(0x1b3)]<=_0x124336[_0x1022d7(0x240)+'th'])return;const _0x70053c=_0x553869[_0x1022d7(0x158)](_0x124336[_0x1022d7(0x240)+'th']);_0x124336[_0x1022d7(0x240)+'th']=_0x553869[_0x1022d7(0x1b3)],_0x70053c&&_0x10f8c1({'requestId':_0x124336[_0x1022d7(0x180)+'d'],'sessionKey':_0x124336[_0x1022d7(0x27b)+'ey'],'type':'delta','delta':_0x70053c});}function _0x3bacce(_0x4831ed,_0x2f765f,_0xe3c383=''){const _0x1e1388=_0xdad4e7;if(_0x4831ed[_0x1e1388(0x233)+_0x1e1388(0x1f8)+_0x1e1388(0x228)])clearTimeout(_0x4831ed[_0x1e1388(0x233)+_0x1e1388(0x1f8)+_0x1e1388(0x228)]);_0x4831ed[_0x1e1388(0x233)+_0x1e1388(0x1f8)+_0x1e1388(0x228)]=setTimeout(()=>{const _0x694cac=_0x1e1388,_0x4553a8=_0x2f037e[_0x694cac(0x1c4)](_0x4831ed[_0x694cac(0x2c0)]);if(!_0x4553a8)return;_0x26c8c5(_0x4553a8,_0x2f765f===_0x694cac(0x199)?'error':_0x694cac(0x18f),_0xe3c383);},TERMINAL_STREAM_FALLBACK_DELAY_MS);}function _0x3510d3(_0x564e23){const _0x444612=_0xdad4e7;for(const _0x5642ce of _0x2f037e[_0x444612(0x218)]()){_0x3baf49?.['warn']('chat\x20run'+_0x444612(0x15c)+_0x444612(0x173)+_0x444612(0x2bb),{'requestId':_0x5642ce[_0x444612(0x180)+'d'],'runId':_0x5642ce['runId'],'sessionKey':_0x5642ce[_0x444612(0x27b)+'ey'],'durationMs':Date[_0x444612(0x211)]()-_0x5642ce[_0x444612(0x1ef)+'t'],'reason':_0x564e23}),_0x10f8c1({'requestId':_0x5642ce[_0x444612(0x180)+'d'],'sessionKey':_0x5642ce['sessionK'+'ey'],'type':_0x444612(0x199),'message':_0x564e23});if(_0x5642ce[_0x444612(0x233)+'Fallback'+_0x444612(0x228)])clearTimeout(_0x5642ce[_0x444612(0x233)+_0x444612(0x1f8)+_0x444612(0x228)]);}_0x2f037e[_0x444612(0x2a1)](),_0x543cae[_0x444612(0x2a1)]();}function _0x2608dd(_0x7bdcd4){const _0x4e5545=_0xdad4e7,_0x27e9e8=getTrimmedString(_0x7bdcd4[_0x4e5545(0x2c0)]),_0x5f0beb=getTrimmedString(_0x7bdcd4[_0x4e5545(0x285)])||_0x4e5545(0x188),_0xa55cb0=getTrimmedString(_0x7bdcd4['sessionK'+'ey']),_0x4d5e07=(_0x27e9e8?_0x2f037e['get'](_0x27e9e8):null)??(_0xa55cb0?_0x6524bb(_0xa55cb0):null);if(_0x27e9e8&&_0xa55cb0)_0x543cae['set'](_0xa55cb0,_0x27e9e8);if(_0xa55cb0)_0x2400e7('session-'+_0x4e5545(0x188),{'sessionKey':_0xa55cb0,'state':_0x5f0beb});_0x3baf49?.['info'](_0x4e5545(0x169)+_0x4e5545(0x1c0)+'nt\x20recei'+_0x4e5545(0x17e),{'runId':_0x27e9e8,'sessionKey':_0xa55cb0,'state':_0x5f0beb,'hasActiveRun':Boolean(_0x4d5e07),'messageText':summarizeText(extractGatewayChatText(_0x7bdcd4['message']),0x78),'errorMessage':getTrimmedString(_0x7bdcd4[_0x4e5545(0x19e)+_0x4e5545(0x2a5)])});_0x4d5e07&&(_0x5f0beb==='final'||_0x5f0beb===_0x4e5545(0x26d)||_0x5f0beb===_0x4e5545(0x199))&&_0x3bacce(_0x4d5e07,_0x5f0beb,typeof _0x7bdcd4[_0x4e5545(0x19e)+_0x4e5545(0x2a5)]==='string'?_0x7bdcd4[_0x4e5545(0x19e)+_0x4e5545(0x2a5)]:_0x4e5545(0x169)+'chat\x20fai'+_0x4e5545(0x1a8));if(!_0x4d5e07)return;if(_0xa55cb0&&_0xa55cb0!==_0x4d5e07[_0x4e5545(0x27b)+'ey'])return;if(_0x5f0beb===_0x4e5545(0x235)){_0x55ddfd(_0x4d5e07,extractGatewayChatText(_0x7bdcd4[_0x4e5545(0x295)]));return;}if(_0x5f0beb===_0x4e5545(0x1d7)||_0x5f0beb==='aborted'){_0x55ddfd(_0x4d5e07,extractGatewayChatText(_0x7bdcd4[_0x4e5545(0x295)])),_0x26c8c5(_0x4d5e07,_0x4e5545(0x18f));return;}_0x5f0beb==='error'&&_0x26c8c5(_0x4d5e07,_0x4e5545(0x199),typeof _0x7bdcd4[_0x4e5545(0x19e)+'sage']===_0x4e5545(0x23b)?_0x7bdcd4[_0x4e5545(0x19e)+_0x4e5545(0x2a5)]:_0x4e5545(0x169)+_0x4e5545(0x2bd)+_0x4e5545(0x1a8));}async function _0x1ad4b0(_0x371769,_0x14e5fe){const _0x3e6b08=_0xdad4e7;_0x521a55['configur'+'e']({'url':buildGatewayWsUrl(_0x14e5fe),'token':_0x371769,'clientId':CLIENT_ID,'clientMode':CLIENT_MODE,'clientVersion':appVersion,'clientDisplayName':_0x110f3e[_0x3e6b08(0x252)+_0x3e6b08(0x29f)],'clientDeviceFamily':CLIENT_DEVICE_FAMILY,'identityPath':_0x1a1aa0[_0x3e6b08(0x26a)+'eviceIde'+_0x3e6b08(0x24c)+'h'](),'onChatEvent':_0x2608dd,'onAgentEvent':_0x5108e9=>_0x2400e7(_0x3e6b08(0x190)+'ent',_0x5108e9),'onConnected':async()=>{const _0x43d5a3=_0x3e6b08;if(!_0x497c24||!_0x18026d||!_0x20f854)return;_0x3bc1a4?.[_0x43d5a3(0x25c)](_0x43d5a3(0x169)+_0x43d5a3(0x1a1)+_0x43d5a3(0x1dd)+_0x43d5a3(0x24b),{'port':_0x18026d,'pid':_0x497c24[_0x43d5a3(0x21f)],'readyMs':_0x2b5634?Date[_0x43d5a3(0x211)]()-_0x2b5634:undefined}),_0x584ae1(_0x43d5a3(0x161),_0x43d5a3(0x169)+_0x43d5a3(0x291)+'d',{'health':_0x43d5a3(0x176),'port':_0x18026d,'tokenPresent':!![]});try{await ensureBundledAgents({'runtimeBundledAgentsDir':join((await loadRuntimeInfo(_0x110f3e[_0x43d5a3(0x1ee)+_0x43d5a3(0x178)]))[_0x43d5a3(0x192)+'oot'],_0x43d5a3(0x1be),_0x43d5a3(0x2b3)),'stateDir':_0x1a1aa0[_0x43d5a3(0x271)+_0x43d5a3(0x19f)](),'listAgents':_0xe13808,'createAgent':_0x5296b1=>_0x521a55[_0x43d5a3(0x1ce)](_0x43d5a3(0x239)+_0x43d5a3(0x2b8),_0x5296b1),'updateAgent':_0x56fae2=>_0x521a55[_0x43d5a3(0x1ce)](_0x43d5a3(0x1b6)+_0x43d5a3(0x23a),_0x56fae2),'syncSkills':async({agentIds:_0x2cc051,mainWorkspace:_0x488f64})=>{const _0x343d06=_0x43d5a3;_0x46c0f8?.[_0x343d06(0x25c)]('bundled\x20'+_0x343d06(0x17a)+_0x343d06(0x29a)+_0x343d06(0x247)+'d',{'agentIds':_0x2cc051,'mainWorkspace':toHomePath(_0x488f64)});const _0x3b29bd=dirname(_0x488f64),_0x2ac411=await syncBundledAgentSkillsToConfig({'agentIds':_0x2cc051,'resolveSkillsDir':_0x40524f=>_0x40524f===_0x343d06(0x1ea)?join(_0x488f64,_0x343d06(0x15e)):join(_0x3b29bd,_0x343d06(0x1d4)+'e-'+_0x40524f,_0x343d06(0x15e)),'readConfig':()=>_0x1a1aa0[_0x343d06(0x28d)+'ig'](),'writeConfig':_0x58a294=>_0x1a1aa0[_0x343d06(0x172)+_0x343d06(0x175)](_0x58a294),'markConfigWriteHandledInternally':()=>_0x1a1aa0[_0x343d06(0x181)+_0x343d06(0x2b7)+_0x343d06(0x207)+_0x343d06(0x162)]()});_0x1bc7e4=_0x2ac411[_0x343d06(0x17c)+'y'],_0x46c0f8?.[_0x343d06(0x25c)](_0x343d06(0x26c)+_0x343d06(0x17a)+_0x343d06(0x29a)+'c\x20comple'+_0x343d06(0x24b),{'agentCount':_0x2cc051[_0x343d06(0x1b3)],'changed':_0x2ac411[_0x343d06(0x1a9)],'discovery':summarizePayload(_0x2ac411[_0x343d06(0x17c)+'y'],{'maxDepth':0x3})});}}),_0x46c0f8?.[_0x43d5a3(0x25c)](_0x43d5a3(0x26c)+'agents\x20e'+'nsured'),_0x2400e7(_0x43d5a3(0x213)+'pdated',{'reason':_0x43d5a3(0x2b0)+_0x43d5a3(0x248)+_0x43d5a3(0x201)});}catch(_0x5dfc2d){const _0x1b560e=_0x5dfc2d instanceof Error?_0x5dfc2d[_0x43d5a3(0x2c1)]||_0x5dfc2d[_0x43d5a3(0x295)]:String(_0x5dfc2d);_0x123cd2(_0x43d5a3(0x24e),_0x43d5a3(0x26c)+_0x43d5a3(0x263)+_0x43d5a3(0x1d0)+_0x43d5a3(0x257)+_0x1b560e),_0x46c0f8?.[_0x43d5a3(0x199)](_0x43d5a3(0x26c)+'agents\x20s'+'ync\x20fail'+'ed',{'error':summarizeError(_0x5dfc2d)}),console[_0x43d5a3(0x199)](_0x43d5a3(0x193)+_0x43d5a3(0x282)+_0x43d5a3(0x2b6)+_0x43d5a3(0x279)+_0x43d5a3(0x27d)+'c\x20failed',_0x5dfc2d);}},'onDisconnected':_0x15d153=>{const _0x2d476f=_0x3e6b08;_0x3bc1a4?.[_0x2d476f(0x1b9)](_0x2d476f(0x169)+'websocke'+_0x2d476f(0x1e7)+_0x2d476f(0x27f),{'reason':_0x15d153}),_0x3510d3(_0x15d153);if(_0x76c379||!_0x497c24)return;_0xd5d014({'health':_0x2d476f(0x20b),'message':_0x2d476f(0x169)+_0x2d476f(0x1e6)+_0x2d476f(0x18e)+_0x15d153});}});}async function _0x15ba71(_0x36926a,_0x9d47b){const _0x2d8fc1=_0xdad4e7;if(_0x497c24)return;_0x2b5634=Date['now'](),_0x584ae1(_0x2d8fc1(0x16f),_0x2d8fc1(0x169)+_0x2d8fc1(0x16f),{'health':_0x2d8fc1(0x20b),'port':_0x9d47b,'tokenPresent':!![]});const _0x49d01f=[_0x2d8fc1(0x19d),_0x2d8fc1(0x209),_0x2d8fc1(0x273)+'unconfig'+_0x2d8fc1(0x2a7),_0x2d8fc1(0x16c),_0x36926a,_0x2d8fc1(0x2bf),String(_0x9d47b)];_0x123cd2(_0x2d8fc1(0x24e),_0x2d8fc1(0x1be)+_0x2d8fc1(0x27c)+_0x2d8fc1(0x183)+_0x2d8fc1(0x272)+_0x2d8fc1(0x29e)+_0x2d8fc1(0x21a)+_0x2d8fc1(0x187)+'TED]\x20--p'+_0x2d8fc1(0x1d2)+_0x9d47b),_0x3bc1a4?.['info'](_0x2d8fc1(0x169)+_0x2d8fc1(0x249)+_0x2d8fc1(0x1a3)+'quested',{'args':['gateway',_0x2d8fc1(0x209),_0x2d8fc1(0x273)+'unconfig'+'ured',_0x2d8fc1(0x16c),_0x2d8fc1(0x1f9)+'D]',_0x2d8fc1(0x2bf),String(_0x9d47b)],'env':{'OPENCLAW_STATE_DIR':toHomePath(_0x1a1aa0[_0x2d8fc1(0x271)+_0x2d8fc1(0x19f)]()),'OPENCLAW_CONFIG_PATH':toHomePath(_0x1a1aa0['resolveC'+_0x2d8fc1(0x2ae)+'h']())}}),_0x497c24=await spawnClaw(_0x110f3e[_0x2d8fc1(0x1ee)+_0x2d8fc1(0x178)],_0x49d01f,{'env':{'OPENCLAW_STATE_DIR':_0x1a1aa0[_0x2d8fc1(0x271)+_0x2d8fc1(0x19f)](),'OPENCLAW_CONFIG_PATH':_0x1a1aa0['resolveC'+_0x2d8fc1(0x2ae)+'h']()}}),_0x20f854=_0x36926a,_0x18026d=_0x9d47b,_0x3bc1a4?.[_0x2d8fc1(0x25c)](_0x2d8fc1(0x169)+_0x2d8fc1(0x249)+_0x2d8fc1(0x26f),{'pid':_0x497c24[_0x2d8fc1(0x21f)],'port':_0x18026d}),_0xd5d014({'health':_0x2d8fc1(0x20b),'port':_0x18026d,'tokenPresent':!![],'message':_0x2d8fc1(0x169)+'process\x20'+_0x2d8fc1(0x277)+'\x20waiting'+'\x20for\x20WS'}),await _0x1ad4b0(_0x36926a,_0x9d47b);const _0x5bf8f7=createLineBuffer({'trim':!![],'onLine':_0x18a86a=>_0x123cd2(_0x2d8fc1(0x216),_0x18a86a)}),_0x206477=createLineBuffer({'trim':!![],'onLine':_0x7698b3=>_0x123cd2(_0x2d8fc1(0x2be),_0x7698b3)});_0x497c24['stdout']['on']('data',_0x7d562a=>{const _0x1c8f1e=_0x2d8fc1;_0x5bf8f7['push'](_0x7d562a[_0x1c8f1e(0x28b)]());}),_0x497c24[_0x2d8fc1(0x2be)]['on']('data',_0x47168a=>{const _0xd870d0=_0x2d8fc1;_0x206477[_0xd870d0(0x253)](_0x47168a[_0xd870d0(0x28b)]());}),_0x497c24['on'](_0x2d8fc1(0x199),_0x59a8d2=>{const _0x32f5b7=_0x2d8fc1;_0x3bc1a4?.[_0x32f5b7(0x199)]('gateway\x20'+_0x32f5b7(0x249)+_0x32f5b7(0x199),{'error':summarizeError(_0x59a8d2)}),_0x123cd2(_0x32f5b7(0x2be),_0x59a8d2 instanceof Error?_0x59a8d2[_0x32f5b7(0x2c1)]||_0x59a8d2['message']:String(_0x59a8d2));}),_0x497c24['on']('close',(_0x5e7b3e,_0x20f3d7)=>{const _0x28373d=_0x2d8fc1;_0x5bf8f7[_0x28373d(0x16a)](),_0x206477[_0x28373d(0x16a)](),_0x3bc1a4?.[_0x28373d(0x1b9)](_0x28373d(0x169)+'process\x20'+_0x28373d(0x151),{'pid':_0x497c24?.['pid']??null,'code':_0x5e7b3e,'signal':_0x20f3d7,'uptimeMs':_0x2b5634?Date['now']()-_0x2b5634:undefined}),_0x123cd2(_0x28373d(0x24e),_0x28373d(0x169)+'exited\x20c'+_0x28373d(0x186)+(_0x5e7b3e??'null')+'\x20signal='+(_0x20f3d7??_0x28373d(0x28f))),_0x497c24=null,_0x20f854=null,_0x18026d=null,_0x521a55[_0x28373d(0x22d)+'e'](null),_0x3510d3(_0x28373d(0x169)+_0x28373d(0x249)+_0x28373d(0x20e));if(_0x76c379){_0x584ae1('stopped',_0x28373d(0x169)+'stopped',{'health':'unknown','port':null,'tokenPresent':![]});return;}_0x584ae1(_0x28373d(0x199),_0x28373d(0x169)+'exited\x20u'+_0x28373d(0x1f6)+_0x28373d(0x189),{'health':_0x28373d(0x195)+'y','port':null,'tokenPresent':![]});});}async function _0x31198d(){const _0x8660=_0xdad4e7;if(_0x497c24)return;_0x76c379=![],_0x3bc1a4?.[_0x8660(0x25c)]('gateway\x20'+'controll'+_0x8660(0x261)+_0x8660(0x29c)+'ed'),await _0x2f9231[_0x8660(0x294)]()[_0x8660(0x22b)](_0x4074e4=>{const _0x8f32f=_0x8660;_0x123cd2(_0x8f32f(0x24e),_0x8f32f(0x293)+'-questio'+_0x8f32f(0x1d6)+_0x8f32f(0x194)+_0x8f32f(0x1d9)+(_0x4074e4 instanceof Error?_0x4074e4[_0x8f32f(0x295)]:String(_0x4074e4)));}),await _0x1a1aa0['ensureIn'+_0x8660(0x1bb)+_0x8660(0x175)](),_0x1a1aa0[_0x8660(0x222)+_0x8660(0x1ad)+'es'](),_0x1a1aa0['setGatew'+_0x8660(0x229)+_0x8660(0x24f)](_0x5a5187=>{void _0x34c089(_0x5a5187);});const _0x1cf41a=await _0x1a1aa0[_0x8660(0x26e)+'tewaySet'+_0x8660(0x1e1)]();_0x3bc1a4?.[_0x8660(0x25c)](_0x8660(0x169)+'settings'+'\x20allocat'+'ed',{'port':_0x1cf41a[_0x8660(0x242)],'tokenPresent':Boolean(_0x1cf41a[_0x8660(0x1f7)])}),await _0x15ba71(_0x1cf41a[_0x8660(0x1f7)],_0x1cf41a[_0x8660(0x242)]);}async function _0x9c8905(){const _0x5c73aa=_0xdad4e7;_0x76c379=!![],_0x3bc1a4?.[_0x5c73aa(0x25c)]('gateway\x20'+_0x5c73aa(0x21c)+_0x5c73aa(0x16b)+_0x5c73aa(0x278)+'d',{'pid':_0x497c24?.['pid']??null,'port':_0x18026d}),_0x521a55[_0x5c73aa(0x22d)+'e'](null);if(_0x497c24){const _0x43a421=_0x497c24;_0x497c24=null;try{_0x43a421[_0x5c73aa(0x1b4)]('SIGTERM');}catch{}await new Promise(_0x3d0a0c=>setTimeout(_0x3d0a0c,0x1f4));if(!_0x43a421[_0x5c73aa(0x267)])try{_0x43a421[_0x5c73aa(0x1b4)]('SIGKILL');}catch{}}_0x20f854=null,_0x18026d=null,_0x3510d3(_0x5c73aa(0x169)+'stopped'),await _0x2f9231[_0x5c73aa(0x237)](),_0x1a1aa0['dispose'](),_0x584ae1('stopped','gateway\x20'+_0x5c73aa(0x28c),{'health':_0x5c73aa(0x20b),'port':null,'tokenPresent':![]}),_0x76c379=![];}async function _0x34c089(_0x85e2c4='manual\x20r'+_0xdad4e7(0x2ad)){const _0x53afca=_0xdad4e7;if(_0x4669ac)return{'ok':!![]};return _0x4669ac=!![],_0x3bc1a4?.[_0x53afca(0x25c)]('gateway\x20'+_0x53afca(0x163)+_0x53afca(0x278)+'d',{'reason':_0x85e2c4}),_0x18aac5=_0x18aac5[_0x53afca(0x245)](async()=>{const _0x1616af=_0x53afca;_0x584ae1(_0x1616af(0x2b4)+'ng','gateway\x20'+_0x1616af(0x2b4)+'ng:\x20'+_0x85e2c4,{'health':_0x1616af(0x20b)}),await _0x9c8905(),await _0x31198d();})['finally'](()=>{_0x4669ac=![];}),await _0x18aac5,{'ok':!![]};}async function _0x2e376a(){const _0x351cc3=_0xdad4e7,_0x481070=await loadRuntimeInfo(_0x110f3e[_0x351cc3(0x1ee)+'oot']);return{'runtimeRoot':_0x481070['runtimeR'+_0x351cc3(0x178)],'openclawVersion':_0x481070[_0x351cc3(0x1be)+_0x351cc3(0x1df)],'openclawWorkingDir':_0x481070[_0x351cc3(0x1be)+_0x351cc3(0x210)+'ir'],'openclawBin':_0x481070[_0x351cc3(0x1be)+_0x351cc3(0x185)],'plugins':_0x481070[_0x351cc3(0x258)]['map'](_0x26a2a1=>({'pluginId':_0x26a2a1['pluginId'],'source':_0x26a2a1[_0x351cc3(0x19a)],'version':_0x26a2a1[_0x351cc3(0x280)],'installPath':_0x26a2a1[_0x351cc3(0x2a4)+_0x351cc3(0x231)]})),'configPath':_0x1a1aa0[_0x351cc3(0x1d1)+'onfigPat'+'h'](),'stateDir':_0x1a1aa0[_0x351cc3(0x271)+_0x351cc3(0x19f)](),'bundledAgentSkillsDiscovery':_0x1bc7e4};}async function _0xe13808(){const _0x5b2e00=_0xdad4e7;_0x46c0f8?.[_0x5b2e00(0x25c)]('agents\x20l'+'ist\x20requ'+_0x5b2e00(0x16e));const _0x361b88=asRecord(await _0x521a55['request'](_0x5b2e00(0x21e)+_0x5b2e00(0x171),{})),_0xfc2045=getTrimmedString(_0x361b88['defaultI'+'d'])||'main',_0x5b97b9=Array['isArray'](_0x361b88[_0x5b2e00(0x2b3)])?[..._0x361b88[_0x5b2e00(0x2b3)]]:[];return{..._0x361b88,'defaultId':_0xfc2045,'agents':_0x5b97b9};}async function _0x541d9b(){const _0x2e55d7=_0xdad4e7;if(!_0x249b12())return{'defaultId':_0x2e55d7(0x1ea),'mainKey':'','scope':'','pending':!![],'agents':[{'id':_0x2e55d7(0x1ea),'name':_0x110f3e['productN'+_0x2e55d7(0x29f)],'workspace':join(_0x1a1aa0[_0x2e55d7(0x271)+_0x2e55d7(0x19f)](),_0x2e55d7(0x1d4)+'e')}]};const _0x4896b0=await _0xe13808(),_0x503040=getTrimmedString(_0x4896b0[_0x2e55d7(0x15f)+'d'])||_0x2e55d7(0x1ea),_0x3a253a=Array[_0x2e55d7(0x2b2)](_0x4896b0['agents'])?[..._0x4896b0[_0x2e55d7(0x2b3)]]:[];return!_0x3a253a['some'](_0x462e7e=>asRecord(_0x462e7e)['id']==='main')&&_0x3a253a[_0x2e55d7(0x289)]({'id':_0x2e55d7(0x1ea),'name':_0x110f3e[_0x2e55d7(0x252)+_0x2e55d7(0x29f)],'workspace':join(_0x1a1aa0[_0x2e55d7(0x271)+_0x2e55d7(0x19f)](),_0x2e55d7(0x1d4)+'e')}),{..._0x4896b0,'defaultId':_0x503040,'agents':_0x3a253a};}async function _0x3c6970(_0x3fcfb2={}){const _0x593270=_0xdad4e7;_0x406732();const _0x3d8222=Date['now']();_0xd864b5?.['info'](_0x593270(0x208)+_0x593270(0x2a3)+_0x593270(0x236),{'payload':summarizePayload(_0x3fcfb2)});const _0x343f7d=await _0x521a55['request'](_0x593270(0x1fe)+_0x593270(0x215),buildSessionCreateRequestPayload(_0x3fcfb2)),_0x458502=parseSessionCreateResult(_0x343f7d);return _0xd864b5?.[_0x593270(0x25c)]('session\x20'+_0x593270(0x170)+'ompleted',{'key':_0x458502['key'],'sessionId':_0x458502[_0x593270(0x1cb)+'d'],'durationMs':Date[_0x593270(0x211)]()-_0x3d8222}),_0x458502;}async function _0xd085a4(_0x3406a7={}){const _0x523c09=_0xdad4e7,_0x3994b6=await readSessionMetadata(_0x1a1aa0[_0x523c09(0x271)+_0x523c09(0x19f)]());if(!_0x249b12())return{'pending':!![],'sessions':[],'pinnedKeys':_0x3994b6['pinnedKe'+'ys']};const _0x1437e6=Date['now'](),_0x3564e1=Math[_0x523c09(0x212)](0x1,Math['floor'](Number(_0x3406a7[_0x523c09(0x297)])||0x64)),_0x4ca2e7={'limit':_0x3564e1,'includeGlobal':!![],'includeUnknown':![]},_0x5db722=getTrimmedString(_0x3406a7['agentId']??_0x523c09(0x1ea));if(_0x5db722)_0x4ca2e7[_0x523c09(0x154)]=_0x5db722;const _0x2cd4ef=applySessionMetadata(await _0x521a55[_0x523c09(0x1ce)](_0x523c09(0x1fe)+_0x523c09(0x221),_0x4ca2e7),_0x3994b6);return _0xd864b5?.[_0x523c09(0x25c)](_0x523c09(0x1fe)+_0x523c09(0x21d)+_0x523c09(0x1fb),{'payload':_0x4ca2e7,'count':Array['isArray'](_0x2cd4ef[_0x523c09(0x1fe)])?_0x2cd4ef[_0x523c09(0x1fe)][_0x523c09(0x1b3)]:0x0,'durationMs':Date[_0x523c09(0x211)]()-_0x1437e6}),_0x2cd4ef;}async function _0x43b0af(_0x4a5ae9={}){const _0x5bb219=_0xdad4e7;_0x406732();const _0xfc64c0=getTrimmedString(_0x4a5ae9[_0x5bb219(0x27b)+'ey']??_0x4a5ae9[_0x5bb219(0x29d)]);if(!_0xfc64c0)throw new Error(_0x5bb219(0x27b)+_0x5bb219(0x200)+'quired');const _0x5f184d=Date[_0x5bb219(0x211)](),_0x2ea8c1=await _0x521a55[_0x5bb219(0x1ce)](_0x5bb219(0x1fe)+_0x5bb219(0x1d3),{'key':_0xfc64c0,'deleteTranscript':_0x4a5ae9[_0x5bb219(0x2c3)+_0x5bb219(0x1ed)]!==![],'emitLifecycleHooks':!![]}),_0x3df0c0=await readSessionMetadata(_0x1a1aa0[_0x5bb219(0x271)+_0x5bb219(0x19f)]());return delete _0x3df0c0['names'][_0xfc64c0],_0x3df0c0[_0x5bb219(0x288)+'ys']=_0x3df0c0[_0x5bb219(0x288)+'ys']['filter'](_0x4d9fa7=>_0x4d9fa7!==_0xfc64c0),await writeSessionMetadata(_0x1a1aa0[_0x5bb219(0x271)+'tateDir'](),_0x3df0c0),_0x2400e7(_0x5bb219(0x1e9)+_0x5bb219(0x188),{'type':_0x5bb219(0x29b),'sessionKey':_0xfc64c0}),_0xd864b5?.[_0x5bb219(0x25c)](_0x5bb219(0x208)+_0x5bb219(0x1b2)+_0x5bb219(0x206),{'sessionKey':_0xfc64c0,'deleteTranscript':_0x4a5ae9['deleteTr'+_0x5bb219(0x1ed)]!==![],'durationMs':Date[_0x5bb219(0x211)]()-_0x5f184d}),_0x2ea8c1;}async function _0x3fc3df(_0x4a3af7={}){const _0xb214d9=_0xdad4e7,_0x499afe=getTrimmedString(_0x4a3af7['sessionK'+'ey']??_0x4a3af7[_0xb214d9(0x29d)]);if(!_0x499afe)throw new Error(_0xb214d9(0x27b)+'ey\x20is\x20re'+_0xb214d9(0x256));const _0x3effb5=getTrimmedString(_0x4a3af7[_0xb214d9(0x1da)]??_0x4a3af7[_0xb214d9(0x18c)]??_0x4a3af7[_0xb214d9(0x219)]),_0x16307c=await readSessionMetadata(_0x1a1aa0[_0xb214d9(0x271)+_0xb214d9(0x19f)]());if(_0x3effb5)_0x16307c[_0xb214d9(0x260)][_0x499afe]=_0x3effb5;else delete _0x16307c['names'][_0x499afe];return await writeSessionMetadata(_0x1a1aa0['resolveS'+_0xb214d9(0x19f)](),_0x16307c),_0x2400e7(_0xb214d9(0x1e9)+_0xb214d9(0x188),{'type':_0xb214d9(0x2b1),'sessionKey':_0x499afe,'name':_0x3effb5}),_0xd864b5?.[_0xb214d9(0x25c)](_0xb214d9(0x208)+'rename\x20c'+_0xb214d9(0x206),{'sessionKey':_0x499afe,'hasName':Boolean(_0x3effb5),'name':_0x3effb5?summarizeText(_0x3effb5,0x50):undefined}),{'ok':!![]};}async function _0x5550f0(){const _0x3bda69=_0xdad4e7,_0x4e43f8=await readSessionMetadata(_0x1a1aa0[_0x3bda69(0x271)+'tateDir']());return _0x4e43f8[_0x3bda69(0x288)+'ys'];}async function _0x23b0ac(_0x25f653=[]){const _0xee2d31=_0xdad4e7,_0xdcfd25=await readSessionMetadata(_0x1a1aa0[_0xee2d31(0x271)+_0xee2d31(0x19f)]());return _0xdcfd25['pinnedKe'+'ys']=Array['isArray'](_0x25f653)?[...new Set(_0x25f653['map'](getTrimmedString)[_0xee2d31(0x238)](Boolean))]:[],await writeSessionMetadata(_0x1a1aa0['resolveS'+_0xee2d31(0x19f)](),_0xdcfd25),_0x2400e7('session-'+'updated',{'type':_0xee2d31(0x269)+_0xee2d31(0x1e0)+_0xee2d31(0x24b),'pinnedKeys':_0xdcfd25['pinnedKe'+'ys']}),_0xd864b5?.[_0xee2d31(0x25c)](_0xee2d31(0x208)+_0xee2d31(0x1f5)+_0xee2d31(0x159)+_0xee2d31(0x24b),{'count':_0xdcfd25[_0xee2d31(0x288)+'ys'][_0xee2d31(0x1b3)]}),{'ok':!![],'pinnedKeys':_0xdcfd25['pinnedKe'+'ys']};}async function _0x4e69c0(){const _0x1b7651=_0xdad4e7,_0x3f9d6f=join(_0x1a1aa0[_0x1b7651(0x271)+'tateDir'](),_0x1b7651(0x1d4)+'e');return{'path':_0x3f9d6f,'exists':Boolean(await stat(_0x3f9d6f)[_0x1b7651(0x22b)](()=>null))};}async function _0x42118a(){const _0x36bc65=_0xdad4e7;return readSharedContext(join(_0x1a1aa0['resolveS'+_0x36bc65(0x19f)](),'workspac'+'e'));}async function _0x51bba3(_0x1f0a03={}){const _0xd5e67d=_0xdad4e7;return _0x46c0f8?.['info']('workspac'+_0xd5e67d(0x25d)+'\x20context'+_0xd5e67d(0x20a)+_0xd5e67d(0x236),{'files':Object[_0xd5e67d(0x27a)](sanitizeSharedContextPayload(_0x1f0a03))}),writeSharedContext(join(_0x1a1aa0['resolveS'+_0xd5e67d(0x19f)](),'workspac'+'e'),_0x1f0a03);}async function _0x38ceb9(_0x336e20={}){const _0x16f0cc=_0xdad4e7;return _0x406732(),await _0x521a55[_0x16f0cc(0x1ce)](_0x16f0cc(0x246)+'t',_0x336e20);}async function _0x597e40(_0xfbf4e8={}){const _0x672d46=_0xdad4e7;return _0x406732(),await _0x521a55[_0x672d46(0x1ce)](_0x672d46(0x21b),_0xfbf4e8);}async function _0x42ee9d(_0x417958={}){const _0x40ead9=_0xdad4e7;_0x406732();const _0xd2c522=getTrimmedString(_0x417958['jobId']??_0x417958['id']);if(!_0xd2c522)throw new Error(_0x40ead9(0x28e)+_0x40ead9(0x254)+'d');const _0xf67437=asRecord(_0x417958[_0x40ead9(0x2a6)]),_0x43643c=Object[_0x40ead9(0x27a)](_0xf67437)[_0x40ead9(0x1b3)]>0x0?_0xf67437:{..._0x417958};return delete _0x43643c['jobId'],delete _0x43643c['id'],await _0x521a55[_0x40ead9(0x1ce)]('cron.upd'+_0x40ead9(0x1c9),{'jobId':_0xd2c522,'patch':_0x43643c});}async function _0x13f9f2(_0x5cabc4={}){const _0x159e95=_0xdad4e7;_0x406732();const _0x1b56e9=getTrimmedString(_0x5cabc4[_0x159e95(0x1a5)]??_0x5cabc4['id']);if(!_0x1b56e9)throw new Error(_0x159e95(0x28e)+'\x20require'+'d');return await _0x521a55[_0x159e95(0x1ce)](_0x159e95(0x1aa)+'ove',{'jobId':_0x1b56e9});}async function _0x31e92d(_0x45e3cf={}){const _0x476ccc=_0xdad4e7;_0x406732();const _0x8b0f7e=getTrimmedString(_0x45e3cf[_0x476ccc(0x1a5)]??_0x45e3cf['id']);if(!_0x8b0f7e)throw new Error(_0x476ccc(0x28e)+'\x20require'+'d');return await _0x521a55[_0x476ccc(0x1ce)](_0x476ccc(0x281),{'jobId':_0x8b0f7e});}async function _0x37eab5(_0x2bbc2b={}){const _0x435b07=_0xdad4e7;return _0x406732(),await _0x521a55['request'](_0x435b07(0x281)+'s',_0x2bbc2b);}async function _0x3144cf(_0x30898c={}){const _0x1b90f6=_0xdad4e7;_0x406732();const _0x473f44=Date[_0x1b90f6(0x211)]();_0x46c0f8?.[_0x1b90f6(0x25c)](_0x1b90f6(0x243)+'stall\x20re'+_0x1b90f6(0x1e4),{'payload':summarizePayload(_0x30898c)});try{const _0x270130=await _0x521a55['request']('skills.i'+'nstall',_0x30898c);return _0x46c0f8?.['info']('skill\x20in'+_0x1b90f6(0x1b0)+_0x1b90f6(0x1fb),{'durationMs':Date[_0x1b90f6(0x211)]()-_0x473f44,'result':summarizePayload(_0x270130,{'maxDepth':0x2})}),_0x270130;}catch(_0x377054){_0x46c0f8?.['error'](_0x1b90f6(0x243)+'stall\x20fa'+_0x1b90f6(0x284),{'durationMs':Date[_0x1b90f6(0x211)]()-_0x473f44,'error':summarizeError(_0x377054)});throw _0x377054;}}async function _0xaef522(_0x55b9ea={}){const _0x1e0e3c=_0xdad4e7;return _0x406732(),_0x46c0f8?.['info'](_0x1e0e3c(0x203)+'date\x20req'+_0x1e0e3c(0x2ab),{'payload':summarizePayload(_0x55b9ea)}),await _0x521a55['request']('skills.u'+_0x1e0e3c(0x23a),_0x55b9ea);}async function _0x4fb695(_0x553ee6={}){const _0x5843a7=_0xdad4e7;return _0x406732(),_0x46c0f8?.['info'](_0x5843a7(0x2b5)+_0x5843a7(0x224)+_0x5843a7(0x2ab),{'payload':summarizePayload(_0x553ee6)}),await _0x521a55['request'](_0x5843a7(0x22f)+'elete',_0x553ee6);}async function _0x533bf0(_0x5ecad0={}){const _0x19a01f=_0xdad4e7;_0x406732();const _0x12ebfa=getTrimmedString(_0x5ecad0[_0x19a01f(0x27b)+'ey']),_0x553fe4=getTrimmedString(_0x5ecad0['message']),_0x30a6f6=getTrimmedString(_0x5ecad0[_0x19a01f(0x180)+'d'])||randomUUID();if(!_0x12ebfa)throw new Error(_0x19a01f(0x27b)+_0x19a01f(0x200)+_0x19a01f(0x256));if(!_0x553fe4)throw new Error(_0x19a01f(0x1db)+_0x19a01f(0x164)+'red');const _0x27889e=Date['now']();_0x3baf49?.[_0x19a01f(0x25c)](_0x19a01f(0x1b7)+'eam\x20requ'+_0x19a01f(0x16e),{'requestId':_0x30a6f6,'sessionKey':_0x12ebfa,'message':summarizeText(_0x553fe4),'filePaths':summarizeFilePaths(_0x5ecad0[_0x19a01f(0x1c5)+'s'])}),_0x10f8c1({'requestId':_0x30a6f6,'sessionKey':_0x12ebfa,'type':_0x19a01f(0x26f)}),_0x2f037e[_0x19a01f(0x265)](_0x30a6f6,{'runId':_0x30a6f6,'requestId':_0x30a6f6,'sessionKey':_0x12ebfa,'textLength':0x0,'startedAt':_0x27889e}),_0x543cae['set'](_0x12ebfa,_0x30a6f6);try{const _0x360106=await buildAttachments(Array[_0x19a01f(0x2b2)](_0x5ecad0['filePath'+'s'])?_0x5ecad0[_0x19a01f(0x1c5)+'s']:[]);_0x3baf49?.[_0x19a01f(0x25c)](_0x19a01f(0x1f0)+_0x19a01f(0x241)+_0x19a01f(0x1b1)+'d',{'requestId':_0x30a6f6,'sessionKey':_0x12ebfa,'attachmentCount':_0x360106[_0x19a01f(0x1b3)],'attachments':_0x360106[_0x19a01f(0x2af)](_0x2b8714=>({'type':_0x2b8714[_0x19a01f(0x16d)],'mimeType':_0x2b8714[_0x19a01f(0x1a0)],'fileName':_0x2b8714[_0x19a01f(0x1af)],'contentLength':_0x2b8714['content'][_0x19a01f(0x1b3)]}))});const _0x290bd8=asRecord(await _0x521a55[_0x19a01f(0x1ce)](_0x19a01f(0x292)+'d',{'sessionKey':_0x12ebfa,'message':_0x553fe4,'deliver':![],'idempotencyKey':_0x30a6f6,..._0x360106['length']>0x0?{'attachments':_0x360106}:{}})),_0xf0c592=getTrimmedString(_0x290bd8[_0x19a01f(0x2c0)])||_0x30a6f6,_0x382307=_0x2f037e[_0x19a01f(0x1c4)](_0x30a6f6);if(!_0x382307)return{'ok':!![],'requestId':_0x30a6f6,'runId':_0xf0c592};return _0xf0c592!==_0x382307['runId']&&(_0x2f037e['delete'](_0x382307[_0x19a01f(0x2c0)]),_0x382307[_0x19a01f(0x2c0)]=_0xf0c592,_0x2f037e[_0x19a01f(0x265)](_0xf0c592,_0x382307)),_0x543cae[_0x19a01f(0x265)](_0x12ebfa,_0xf0c592),_0x3baf49?.['info'](_0x19a01f(0x1b7)+_0x19a01f(0x1d5)+_0x19a01f(0x1c2)+_0x19a01f(0x19d),{'requestId':_0x30a6f6,'runId':_0xf0c592,'sessionKey':_0x12ebfa,'durationMs':Date[_0x19a01f(0x211)]()-_0x27889e,'status':_0x290bd8[_0x19a01f(0x1c8)]}),_0x290bd8[_0x19a01f(0x1c8)]===_0x19a01f(0x199)&&_0x26c8c5(_0x382307,'error',getTrimmedString(_0x290bd8[_0x19a01f(0x19e)+_0x19a01f(0x2a5)])||_0x19a01f(0x169)+_0x19a01f(0x2bd)+_0x19a01f(0x1a8)),{'ok':!![],'requestId':_0x30a6f6,'runId':_0xf0c592,'response':_0x290bd8};}catch(_0x87522a){const _0x18def9=_0xa3912f(_0x30a6f6),_0x459dee=_0x87522a instanceof Error?_0x87522a[_0x19a01f(0x295)]:String(_0x87522a);_0x3baf49?.['error'](_0x19a01f(0x1b7)+_0x19a01f(0x266)+'ed',{'requestId':_0x30a6f6,'sessionKey':_0x12ebfa,'durationMs':Date[_0x19a01f(0x211)]()-_0x27889e,'error':summarizeError(_0x87522a)});if(_0x18def9)_0x26c8c5(_0x18def9,_0x19a01f(0x199),_0x459dee);else _0x10f8c1({'requestId':_0x30a6f6,'sessionKey':_0x12ebfa,'type':_0x19a01f(0x199),'message':_0x459dee});throw _0x87522a;}}async function _0x4db5e0(_0x3ec11a={}){const _0x41dfb0=_0xdad4e7;_0x406732();const _0x5440c6=getTrimmedString(_0x3ec11a[_0x41dfb0(0x27b)+'ey']);if(!_0x5440c6)throw new Error('sessionK'+_0x41dfb0(0x200)+_0x41dfb0(0x256));const _0x5850a5=Date[_0x41dfb0(0x211)](),_0x39c807=_0xa3912f(getTrimmedString(_0x3ec11a[_0x41dfb0(0x180)+'d']))??_0x6524bb(_0x5440c6),_0x205bca=_0x543cae[_0x41dfb0(0x1c4)](_0x5440c6),_0x127e25={'sessionKey':_0x5440c6};if(_0x39c807?.[_0x41dfb0(0x2c0)])_0x127e25[_0x41dfb0(0x2c0)]=_0x39c807['runId'];else{if(_0x205bca)_0x127e25['runId']=_0x205bca;}const _0x50bbbf=await _0x521a55[_0x41dfb0(0x1ce)](_0x41dfb0(0x157)+'rt',_0x127e25);if(_0x39c807)_0x26c8c5(_0x39c807,_0x41dfb0(0x18f));return _0x3baf49?.['info']('chat\x20abo'+_0x41dfb0(0x234)+_0x41dfb0(0x1e8),{'sessionKey':_0x5440c6,'requestId':getTrimmedString(_0x3ec11a[_0x41dfb0(0x180)+'d']),'runId':_0x127e25[_0x41dfb0(0x2c0)],'durationMs':Date[_0x41dfb0(0x211)]()-_0x5850a5}),_0x50bbbf;}async function _0x4e04c0(_0x67e209={}){const _0x2982e0=_0xdad4e7;_0x406732();const _0x45cb2a=getTrimmedString(_0x67e209[_0x2982e0(0x27b)+'ey']);if(!_0x45cb2a)throw new Error('sessionK'+'ey\x20is\x20re'+_0x2982e0(0x256));const _0x4b7645=await _0x521a55[_0x2982e0(0x1ce)]('chat.his'+'tory',{'sessionKey':_0x45cb2a,'limit':Math[_0x2982e0(0x212)](0x1,Math[_0x2982e0(0x2c2)](Number(_0x67e209[_0x2982e0(0x297)])||0xc8))});return _0x3baf49?.[_0x2982e0(0x25c)](_0x2982e0(0x1ac)+_0x2982e0(0x20d)+_0x2982e0(0x1c6),{'sessionKey':_0x45cb2a,'limit':Math[_0x2982e0(0x212)](0x1,Math[_0x2982e0(0x2c2)](Number(_0x67e209[_0x2982e0(0x297)])||0xc8)),'result':summarizePayload(_0x4b7645,{'maxDepth':0x2})}),_0x4b7645;}async function _0x2096cb(_0x3e2e75=''){const _0x19da23=_0xdad4e7;if(!_0x249b12())return{'pending':!![],'skills':[]};const _0x1998c0=getTrimmedString(_0x3e2e75),_0x363ada=await _0x521a55[_0x19da23(0x1ce)](_0x19da23(0x202)+_0x19da23(0x26b),_0x1998c0?{'agentId':_0x1998c0}:{}),_0xdb7cfa=await _0x1a1aa0[_0x19da23(0x28d)+'ig']()[_0x19da23(0x22b)](()=>({})),_0x278c23=filterSkillsForAgent(_0x363ada,_0xdb7cfa,_0x1998c0);return _0x46c0f8?.['info']('skills\x20s'+'tatus\x20lo'+_0x19da23(0x264),{'agentId':_0x1998c0||'default','result':summarizePayload(_0x278c23,{'maxDepth':0x2})}),_0x278c23;}return{'on':_0x2b463e,'start':_0x31198d,'stop':_0x9c8905,'restart':_0x34c089,'runtimeInfo':_0x2e376a,'getStatus':()=>_0x44d941,'getRecentLogs':_0x284578,'answerAskUserQuestion':_0x49dce5=>_0x2f9231[_0xdad4e7(0x1f2)](_0x49dce5),'agents':{'list':_0x541d9b},'skills':{'status':_0x2096cb,'install':_0x3144cf,'update':_0xaef522,'delete':_0x4fb695},'sessions':{'create':_0x3c6970,'list':_0xd085a4,'delete':_0x43b0af,'rename':_0x3fc3df,'pinnedKeys':_0x5550f0,'setPinnedKeys':_0x23b0ac},'workspace':{'directoryInfo':_0x4e69c0,'sharedContext':_0x42118a,'writeSharedContext':_0x51bba3},'cron':{'list':_0x38ceb9,'create':_0x597e40,'update':_0x42ee9d,'remove':_0x13f9f2,'runOnce':_0x31e92d,'logs':_0x37eab5},'models':{'settings':()=>_0x1a1aa0[_0xdad4e7(0x298)+_0xdad4e7(0x18b)](),'setSettings':async(_0x79ac70={})=>{const _0x339cba=_0xdad4e7,_0x53e5e6=_0x79ac70?.[_0x339cba(0x1a7)+_0x339cba(0x230)]!==![];return await _0x1a1aa0[_0x339cba(0x204)+_0x339cba(0x18b)](_0x79ac70,{'restartOnChange':_0x53e5e6}),_0x1a1aa0[_0x339cba(0x298)+_0x339cba(0x18b)]();},'setSelfOperatedModels':_0x2f4944=>_0x1a1aa0[_0xdad4e7(0x182)+_0xdad4e7(0x17f)+'odels'](_0x2f4944),'selectedModelId':async()=>{const _0x24c7b5=_0xdad4e7,_0x4bd8ff=await _0x1a1aa0['getModel'+_0x24c7b5(0x18b)]();return _0x4bd8ff[_0x24c7b5(0x198)]&&_0x4bd8ff[_0x24c7b5(0x20f)+'e']?_0x4bd8ff[_0x24c7b5(0x198)]+'/'+_0x4bd8ff[_0x24c7b5(0x20f)+'e']:'';},'customModels':async()=>[]},'config':{'read':()=>_0x1a1aa0[_0xdad4e7(0x28d)+'ig']()},'chat':{'stream':_0x533bf0,'abort':_0x4db5e0,'history':_0x4e04c0}};}
|
package/dist/src/gateway-ws.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x29cb61=_0x4b80;(function(_0x354e0f,_0x463347){const _0x465d10=_0x4b80,_0x2f91fd=_0x354e0f();while(!![]){try{const _0x2d818e=parseInt(_0x465d10(0x238))/0x1+-parseInt(_0x465d10(0x227))/0x2+-parseInt(_0x465d10(0x250))/0x3*(parseInt(_0x465d10(0x1fb))/0x4)+parseInt(_0x465d10(0x283))/0x5*(parseInt(_0x465d10(0x28c))/0x6)+parseInt(_0x465d10(0x231))/0x7+parseInt(_0x465d10(0x1dd))/0x8+parseInt(_0x465d10(0x205))/0x9*(-parseInt(_0x465d10(0x1f7))/0xa);if(_0x2d818e===_0x463347)break;else _0x2f91fd['push'](_0x2f91fd['shift']());}catch(_0x250b18){_0x2f91fd['push'](_0x2f91fd['shift']());}}}(_0x295c,0xbf3b3));import{Buffer}from'node:buffer';function _0x4b80(_0x9b2a5,_0x1f64a0){_0x9b2a5=_0x9b2a5-0x1d8;const _0x295cda=_0x295c();let _0x4b8033=_0x295cda[_0x9b2a5];return _0x4b8033;}import{createHash,createPrivateKey,createPublicKey,generateKeyPairSync,randomUUID,sign}from'node:crypto';import{chmodSync,existsSync,mkdirSync,readFileSync,writeFileSync}from'node:fs';import{dirname}from'node:path';import _0x3ec2e3 from'ws';const ED25519_SPKI_PREFIX=Buffer['from'](_0x29cb61(0x268)+_0x29cb61(0x24b)+_0x29cb61(0x229),_0x29cb61(0x254)),BASE64_PADDING_REGEX=/=+$/g,UPPERCASE_ASCII_REGEX=/[A-Z]/g;function isRecord(_0x40f4d5){const _0x1ed98c=_0x29cb61;return Boolean(_0x40f4d5)&&typeof _0x40f4d5==='object'&&!Array[_0x1ed98c(0x224)](_0x40f4d5);}function formatUnknownError(_0x360dd3){if(_0x360dd3 instanceof Error)return _0x360dd3['message'];return String(_0x360dd3??'');}function isLocalGatewayConnRefused(_0x4cabf3){const _0x3fc44f=formatUnknownError(_0x4cabf3);return/\bECONNREFUSED\b/i['test'](_0x3fc44f)&&/127\.0\.0\.1:\d+/['test'](_0x3fc44f);}function base64UrlEncode(_0x3f7b27){const _0x49af33=_0x29cb61;return _0x3f7b27[_0x49af33(0x286)]('base64')[_0x49af33(0x257)+'ll']('+','-')['replaceA'+'ll']('/','_')[_0x49af33(0x213)](BASE64_PADDING_REGEX,'');}function derivePublicKeyRaw(_0x268823){const _0x127faa=_0x29cb61,_0x19c6a6=createPublicKey(_0x268823)[_0x127faa(0x1f1)]({'type':_0x127faa(0x20f),'format':_0x127faa(0x291)}),_0x12ada5=Buffer[_0x127faa(0x203)](_0x19c6a6)?_0x19c6a6:Buffer[_0x127faa(0x269)](_0x19c6a6),_0x5094d4=_0x12ada5[_0x127faa(0x215)]===ED25519_SPKI_PREFIX['length']+0x20&&_0x12ada5[_0x127faa(0x1df)](0x0,ED25519_SPKI_PREFIX[_0x127faa(0x215)])[_0x127faa(0x1ee)](ED25519_SPKI_PREFIX);return _0x5094d4?_0x12ada5[_0x127faa(0x1df)](ED25519_SPKI_PREFIX['length']):_0x12ada5;}function fingerprintPublicKey(_0x3d22a0){const _0x26b8ba=_0x29cb61;return createHash(_0x26b8ba(0x21a))['update'](derivePublicKeyRaw(_0x3d22a0))[_0x26b8ba(0x265)](_0x26b8ba(0x254));}function publicKeyRawBase64UrlFromPem(_0x385ce5){return base64UrlEncode(derivePublicKeyRaw(_0x385ce5));}function signDevicePayload(_0x100d09,_0x4d0c49){const _0x36fff3=_0x29cb61,_0x3ef712=createPrivateKey(_0x100d09);return base64UrlEncode(sign(null,Buffer[_0x36fff3(0x269)](_0x4d0c49,'utf8'),_0x3ef712));}function normalizeDeviceMetadataForAuth(_0xe072d4){const _0x4bc8a4=_0x29cb61,_0x50dcd9=typeof _0xe072d4===_0x4bc8a4(0x1ed)?_0xe072d4[_0x4bc8a4(0x1f4)]():'';if(!_0x50dcd9)return'';return _0x50dcd9[_0x4bc8a4(0x213)](UPPERCASE_ASCII_REGEX,_0x240950=>String[_0x4bc8a4(0x28d)+_0x4bc8a4(0x237)](_0x240950['charCode'+'At'](0x0)+0x20));}function buildDeviceAuthPayloadV3(_0x63f207){const _0x5081e7=_0x29cb61;return['v3',_0x63f207['deviceId'],_0x63f207[_0x5081e7(0x221)],_0x63f207['clientMo'+'de'],_0x63f207[_0x5081e7(0x21b)],_0x63f207['scopes']['join'](','),String(_0x63f207[_0x5081e7(0x1e2)+'Ms']),_0x63f207[_0x5081e7(0x288)]??'',_0x63f207[_0x5081e7(0x23e)],normalizeDeviceMetadataForAuth(_0x63f207['platform']),normalizeDeviceMetadataForAuth(_0x63f207[_0x5081e7(0x28f)+_0x5081e7(0x234)])][_0x5081e7(0x225)]('|');}function writeIdentityFile(_0x281ea7,_0x1c43df,_0x1945b9){const _0x2e7361=_0x29cb61;mkdirSync(dirname(_0x281ea7),{'recursive':!![]}),writeFileSync(_0x281ea7,JSON[_0x2e7361(0x277)+'y']({'version':0x1,..._0x1c43df,'createdAtMs':_0x1945b9},null,0x2)+'\x0a',{'mode':0x180});try{chmodSync(_0x281ea7,0x180);}catch{}}function generateDeviceIdentity(){const _0xc0ff09=_0x29cb61,{publicKey:_0x128ec1,privateKey:_0xea7326}=generateKeyPairSync(_0xc0ff09(0x1f9)),_0x43da45=_0x128ec1[_0xc0ff09(0x1f1)]({'type':'spki','format':_0xc0ff09(0x260)})[_0xc0ff09(0x286)](),_0x1fe975=_0xea7326[_0xc0ff09(0x1f1)]({'type':_0xc0ff09(0x217),'format':'pem'})[_0xc0ff09(0x286)]();return{'deviceId':fingerprintPublicKey(_0x43da45),'publicKeyPem':_0x43da45,'privateKeyPem':_0x1fe975};}function loadOrCreateDeviceIdentity(_0x8811a8){const _0x58387c=_0x29cb61;if(existsSync(_0x8811a8))try{const _0x428ef3=JSON['parse'](readFileSync(_0x8811a8,'utf8')),_0x5e2bea=typeof _0x428ef3?.[_0x58387c(0x1f6)+_0x58387c(0x25d)]===_0x58387c(0x1ed)?_0x428ef3['publicKe'+'yPem']:'',_0x4b0d44=typeof _0x428ef3?.[_0x58387c(0x1f8)+'eyPem']===_0x58387c(0x1ed)?_0x428ef3[_0x58387c(0x1f8)+_0x58387c(0x274)]:'';if(_0x5e2bea&&_0x4b0d44){const _0x2defb7={'deviceId':fingerprintPublicKey(_0x5e2bea),'publicKeyPem':_0x5e2bea,'privateKeyPem':_0x4b0d44};return _0x428ef3?.[_0x58387c(0x266)]!==_0x2defb7[_0x58387c(0x266)]&&writeIdentityFile(_0x8811a8,_0x2defb7,Date[_0x58387c(0x1fa)]()),_0x2defb7;}}catch{}const _0x4029bd=generateDeviceIdentity();return writeIdentityFile(_0x8811a8,_0x4029bd,Date[_0x58387c(0x1fa)]()),_0x4029bd;}function _0x295c(){const _0x5aaf33=['connect.','device\x20i','string','equals','platform','handleDi','export','t\x20config','clearTim','trim','type','publicKe','7894070LMWpYm','privateK','ed25519','now','772DEoYyM','WS\x20clien','Timer','pending','terminat','nnected','reconnec','WS\x20hands','isBuffer','d\x20(','9FmKZSj','connectS','readyWai','open','handleMe','parse','Format','ble','lengeTim','rejectRe','spki','onChatEv','ters','adyWaite','replace','min','length','operator','pkcs8','entity','nected','sha256','role','DateTime','ting','nal','clientVe','ent','clientId','delete','removeAl','isArray','join','entries','2254768msomYt','dentity\x20','70032100','eout','.read','expectFi','e\x20missin','url','WS\x20error','onAgentE','9965102NCkcqX','connectC','agent','mily','queueCon','nectChal','Code','1223941FKKcOD','初始化\x20gate','timeoutM','t:\x20','t\x20connec','resolve','nonce','e\x20timeou','equest','readySta','reject','restart','status','get','ers','lReady','t\x20restar','send','.pairing','06032b65','ction\x20ti','\x20yet','filter','o\x20load\x20g','11859HGokHL','viceFami','failed\x20t','clientDe','hex','clientMo','once','replaceA','OPEN','connecte','resolveR','eadyWait','request','yPem','WS\x20is\x20no','is\x20not\x20l','pem','onDiscon','gateway\x20','failed:\x20','code=','digest','deviceId','splayNam','302a3005','from','payload','challeng','connect','stop','rsion','connect\x20','dentity','sconnect','ateway\x20r','set','eyPem','connectN','identity','stringif','config','hallenge','res','.admin','istening','yCheck','message','configur','Path','rejectPe','WS\x20close','354215mVHrpT','timed\x20ou','tBackoff','toString','error','token','WS\x20disco','vent','.approva','6IxbDfn','fromChar','close','deviceFa','ted','der','WS\x20conne','ect','request\x20','ed\x20out','event','5957064YujxZr','tTimer','subarray','sing\x20non','timeout','signedAt','ssage','waitUnti','hake\x20tim','skipRead','nding','t\x20stoppe','shouldRe','accepted'];_0x295c=function(){return _0x5aaf33;};return _0x295c();}export class ClawGatewayWsClient{['ws']=null;[_0x29cb61(0x278)]=null;[_0x29cb61(0x1fe)]=new Map();[_0x29cb61(0x207)+'ters']=[];['shouldRe'+_0x29cb61(0x26c)]=![];[_0x29cb61(0x201)+'tTimer']=null;[_0x29cb61(0x232)+_0x29cb61(0x279)+_0x29cb61(0x1fd)]=null;['connectN'+'once']=null;[_0x29cb61(0x206)+_0x29cb61(0x220)]=![];[_0x29cb61(0x259)+'d']=![];['reconnec'+_0x29cb61(0x285)+'Ms']=0x320;[_0x29cb61(0x266)+_0x29cb61(0x218)]=null;[_0x29cb61(0x27f)+'e'](_0x593f5f){const _0x229df4=_0x29cb61;if(!_0x593f5f){this[_0x229df4(0x26d)]();return;}const _0x5bebd5=this['config'];this[_0x229df4(0x278)]=_0x593f5f,this[_0x229df4(0x1e9)+'connect']=!![];try{this[_0x229df4(0x266)+'entity']=loadOrCreateDeviceIdentity(_0x593f5f['identity'+'Path']);}catch(_0x50d54b){const _0x58d374=_0x50d54b instanceof Error?_0x50d54b['message']:_0x229df4(0x239)+'way\x20设备身份'+'失败';this[_0x229df4(0x26d)](),_0x593f5f[_0x229df4(0x261)+_0x229df4(0x219)](_0x58d374);return;}const _0x555b86=!_0x5bebd5||_0x5bebd5['url']!==_0x593f5f[_0x229df4(0x22e)]||_0x5bebd5[_0x229df4(0x288)]!==_0x593f5f[_0x229df4(0x288)]||_0x5bebd5[_0x229df4(0x221)]!==_0x593f5f[_0x229df4(0x221)]||_0x5bebd5['clientMo'+'de']!==_0x593f5f[_0x229df4(0x255)+'de']||_0x5bebd5[_0x229df4(0x21f)+'rsion']!==_0x593f5f[_0x229df4(0x21f)+_0x229df4(0x26e)]||_0x5bebd5['identity'+_0x229df4(0x280)]!==_0x593f5f[_0x229df4(0x276)+'Path'];if(_0x555b86){this[_0x229df4(0x243)]();return;}if(!this['ws'])this['connect']();}[_0x29cb61(0x26d)](){const _0x58aebf=_0x29cb61;this[_0x58aebf(0x1e9)+_0x58aebf(0x26c)]=![],this[_0x58aebf(0x259)+'d']=![],this[_0x58aebf(0x275)+_0x58aebf(0x256)]=null,this[_0x58aebf(0x206)+'ent']=![],this['clearTim'+'ers'](),this[_0x58aebf(0x281)+_0x58aebf(0x1e7)](new Error(_0x58aebf(0x262)+_0x58aebf(0x1fc)+_0x58aebf(0x1e8)+'d')),this['rejectRe'+_0x58aebf(0x212)+'rs'](new Error(_0x58aebf(0x262)+_0x58aebf(0x1fc)+_0x58aebf(0x1e8)+'d'));if(this['ws']){try{this['ws']['close']();}catch{}this['ws']=null;}this[_0x58aebf(0x266)+_0x58aebf(0x218)]=null,this[_0x58aebf(0x278)]=null;}async[_0x29cb61(0x25c)](_0x526b0e,_0x232e74={},_0x25bb50={}){const _0x292bb9=_0x29cb61;if(!_0x25bb50[_0x292bb9(0x1e6)+_0x292bb9(0x27d)])await this['waitUnti'+_0x292bb9(0x247)]();const _0x31ab2b=this['ws'];if(!_0x31ab2b||_0x31ab2b[_0x292bb9(0x241)+'te']!==_0x3ec2e3[_0x292bb9(0x258)])throw new Error(_0x292bb9(0x262)+_0x292bb9(0x25e)+_0x292bb9(0x23c)+'ted');const _0x5d4990=randomUUID(),_0x15bc5e=_0x25bb50[_0x292bb9(0x23a)+'s']??0x7530;return await new Promise((_0x38a10a,_0x1453af)=>{const _0xff1297=_0x292bb9,_0x1a8150=setTimeout(()=>{const _0xc335e6=_0x4b80;this[_0xc335e6(0x1fe)][_0xc335e6(0x222)](_0x5d4990),_0x1453af(new Error(_0xc335e6(0x262)+_0xc335e6(0x1da)+_0xc335e6(0x284)+_0xc335e6(0x23b)+_0x526b0e));},_0x15bc5e);this[_0xff1297(0x1fe)][_0xff1297(0x273)](_0x5d4990,{'method':_0x526b0e,'resolve':_0x205a0e=>{clearTimeout(_0x1a8150),_0x38a10a(_0x205a0e);},'reject':_0x5d1817=>{clearTimeout(_0x1a8150),_0x1453af(_0x5d1817);},'expectFinal':_0x25bb50[_0xff1297(0x22c)+_0xff1297(0x21e)]===!![],'timeout':_0x1a8150});try{_0x31ab2b[_0xff1297(0x249)](JSON[_0xff1297(0x277)+'y']({'type':'req','id':_0x5d4990,'method':_0x526b0e,'params':_0x232e74}));}catch(_0x382395){this[_0xff1297(0x1fe)]['delete'](_0x5d4990),clearTimeout(_0x1a8150),_0x1453af(_0x382395 instanceof Error?_0x382395:new Error(_0xff1297(0x252)+'o\x20send\x20g'+_0xff1297(0x272)+_0xff1297(0x240)));}});}[_0x29cb61(0x243)](){const _0x1d2dac=_0x29cb61;this[_0x1d2dac(0x259)+'d']=![],this[_0x1d2dac(0x275)+'once']=null,this['connectS'+_0x1d2dac(0x220)]=![],this[_0x1d2dac(0x1f3)+_0x1d2dac(0x246)](),this[_0x1d2dac(0x281)+_0x1d2dac(0x1e7)](new Error('gateway\x20'+'WS\x20clien'+'t\x20restar'+'ting')),this[_0x1d2dac(0x20e)+_0x1d2dac(0x212)+'rs'](new Error(_0x1d2dac(0x262)+'WS\x20clien'+_0x1d2dac(0x248)+_0x1d2dac(0x21d)));if(this['ws']){try{this['ws'][_0x1d2dac(0x1ff)+'e']();}catch{}this['ws']=null;}this['connect']();}[_0x29cb61(0x26c)](){const _0x36693c=_0x29cb61;if(!this['config']||this['ws'])return;const _0x16e43f=new _0x3ec2e3(this['config']['url']);this['ws']=_0x16e43f,_0x16e43f['on'](_0x36693c(0x208),()=>this[_0x36693c(0x235)+'nectChal'+_0x36693c(0x20d)+_0x36693c(0x22a)]()),_0x16e43f['on'](_0x36693c(0x27e),_0x574890=>this[_0x36693c(0x209)+'ssage'](_0x574890['toString']())),_0x16e43f['on'](_0x36693c(0x28e),(_0x5b6ab5,_0x50df8c)=>{const _0x3dac71=_0x36693c;if(this[_0x3dac71(0x259)+'d']){const _0x1a6b1c=_0x50df8c[_0x3dac71(0x286)]()||_0x3dac71(0x264)+_0x5b6ab5;this['handleDi'+_0x3dac71(0x271)]('gateway\x20'+_0x3dac71(0x282)+_0x3dac71(0x204)+_0x1a6b1c+')');}else this[_0x3dac71(0x1f0)+_0x3dac71(0x271)]('');}),_0x16e43f['on']('error',_0x47e0aa=>{const _0x22f9e9=_0x36693c;if(isLocalGatewayConnRefused(_0x47e0aa)){this[_0x22f9e9(0x1f0)+'sconnect'](_0x22f9e9(0x262)+_0x22f9e9(0x25f)+_0x22f9e9(0x27c)+_0x22f9e9(0x24d));return;}const _0x287ff2=formatUnknownError(_0x47e0aa);this[_0x22f9e9(0x1f0)+_0x22f9e9(0x271)](_0x287ff2?'gateway\x20'+_0x22f9e9(0x22f)+':\x20'+_0x287ff2:_0x22f9e9(0x262)+'WS\x20error');});}[_0x29cb61(0x235)+_0x29cb61(0x236)+'lengeTim'+_0x29cb61(0x22a)](){const _0xd7be1c=_0x29cb61;this[_0xd7be1c(0x275)+'once']=null,this['connectS'+_0xd7be1c(0x220)]=![];if(this['connectC'+_0xd7be1c(0x279)+_0xd7be1c(0x1fd)])clearTimeout(this[_0xd7be1c(0x232)+'hallenge'+_0xd7be1c(0x1fd)]);this['connectC'+_0xd7be1c(0x279)+_0xd7be1c(0x1fd)]=setTimeout(()=>{const _0x5b10f4=_0xd7be1c;if(this[_0x5b10f4(0x206)+_0x5b10f4(0x220)]||!this['ws']||this['ws'][_0x5b10f4(0x241)+'te']!==_0x3ec2e3['OPEN'])return;this[_0x5b10f4(0x1f0)+'sconnect']('gateway\x20'+_0x5b10f4(0x202)+_0x5b10f4(0x1e5)+_0x5b10f4(0x1db)),this['ws']?.[_0x5b10f4(0x28e)](0x3f0,_0x5b10f4(0x26f)+'challeng'+_0x5b10f4(0x23f)+'t');},0x7d0);}async['sendConn'+_0x29cb61(0x1d9)](){const _0x23a475=_0x29cb61,_0x40b3dc=this[_0x23a475(0x278)];if(!_0x40b3dc||this[_0x23a475(0x206)+'ent'])return;const _0xa57e33=this[_0x23a475(0x275)+'once']?.[_0x23a475(0x1f4)]()??'';if(!_0xa57e33){this[_0x23a475(0x1f0)+_0x23a475(0x271)](_0x23a475(0x262)+'WS\x20hands'+'hake\x20mis'+_0x23a475(0x1e0)+'ce'),this['ws']?.['close'](0x3f0,_0x23a475(0x26f)+'challeng'+_0x23a475(0x22d)+'g\x20nonce');return;}this[_0x23a475(0x206)+_0x23a475(0x220)]=!![];this[_0x23a475(0x232)+_0x23a475(0x279)+_0x23a475(0x1fd)]&&(clearTimeout(this[_0x23a475(0x232)+_0x23a475(0x279)+_0x23a475(0x1fd)]),this[_0x23a475(0x232)+_0x23a475(0x279)+_0x23a475(0x1fd)]=null);if(!this[_0x23a475(0x266)+_0x23a475(0x218)])try{this[_0x23a475(0x266)+_0x23a475(0x218)]=loadOrCreateDeviceIdentity(_0x40b3dc['identity'+'Path']);}catch(_0x1746c7){this[_0x23a475(0x1f0)+'sconnect'](_0x1746c7 instanceof Error?_0x1746c7[_0x23a475(0x27e)]:'failed\x20t'+_0x23a475(0x24f)+'ateway\x20i'+_0x23a475(0x270)),this['ws']?.[_0x23a475(0x28e)](0x3f0,_0x23a475(0x1ec)+_0x23a475(0x228)+'unavaila'+_0x23a475(0x20c));return;}const _0x68c490=_0x23a475(0x216),_0x5397cc=[_0x23a475(0x216)+_0x23a475(0x22b),_0x23a475(0x216)+'.write',_0x23a475(0x216)+_0x23a475(0x27b),_0x23a475(0x216)+_0x23a475(0x28b)+'ls',_0x23a475(0x216)+_0x23a475(0x24a)],_0x13e0d5=_0x40b3dc[_0x23a475(0x288)]['trim'](),_0x14778f=Date[_0x23a475(0x1fa)](),_0x2c8d39=buildDeviceAuthPayloadV3({'deviceId':this[_0x23a475(0x266)+_0x23a475(0x218)][_0x23a475(0x266)],'clientId':_0x40b3dc['clientId'],'clientMode':_0x40b3dc[_0x23a475(0x255)+'de'],'role':_0x68c490,'scopes':_0x5397cc,'signedAtMs':_0x14778f,'token':_0x13e0d5||null,'nonce':_0xa57e33,'platform':process[_0x23a475(0x1ef)],'deviceFamily':_0x40b3dc[_0x23a475(0x253)+_0x23a475(0x251)+'ly']}),_0x37127f={'minProtocol':0x4,'maxProtocol':0x4,'client':{'id':_0x40b3dc[_0x23a475(0x221)],'displayName':_0x40b3dc['clientDi'+_0x23a475(0x267)+'e'],'version':_0x40b3dc[_0x23a475(0x21f)+_0x23a475(0x26e)],'platform':process[_0x23a475(0x1ef)],'deviceFamily':_0x40b3dc[_0x23a475(0x253)+_0x23a475(0x251)+'ly'],'mode':_0x40b3dc[_0x23a475(0x255)+'de']},'caps':[],'role':_0x68c490,'scopes':_0x5397cc,'auth':_0x13e0d5?{'token':_0x13e0d5}:undefined,'device':{'id':this[_0x23a475(0x266)+'entity'][_0x23a475(0x266)],'publicKey':publicKeyRawBase64UrlFromPem(this['deviceId'+_0x23a475(0x218)]['publicKe'+_0x23a475(0x25d)]),'signature':signDevicePayload(this[_0x23a475(0x266)+_0x23a475(0x218)]['privateK'+'eyPem'],_0x2c8d39),'signedAt':_0x14778f,'nonce':_0xa57e33},'locale':Intl[_0x23a475(0x21c)+_0x23a475(0x20b)]()['resolved'+'Options']()['locale'],'userAgent':'wujie-sh'+'ell/'+_0x40b3dc[_0x23a475(0x21f)+_0x23a475(0x26e)]};try{await this['request'](_0x23a475(0x26c),_0x37127f,{'timeoutMs':0x2710,'skipReadyCheck':!![]}),this[_0x23a475(0x259)+'d']=!![],this['reconnec'+_0x23a475(0x285)+'Ms']=0x320,this[_0x23a475(0x25a)+_0x23a475(0x25b)+_0x23a475(0x246)](),this[_0x23a475(0x278)]?.['onConnec'+_0x23a475(0x290)]?.();}catch(_0x50541a){this['handleDi'+'sconnect'](_0x50541a instanceof Error?_0x50541a[_0x23a475(0x27e)]:_0x23a475(0x262)+_0x23a475(0x1d8)+'ct\x20faile'+'d'),this['ws']?.['close'](0x3f0,_0x23a475(0x26f)+'failed');}}[_0x29cb61(0x209)+_0x29cb61(0x1e3)](_0xffccd){const _0x2a8772=_0x29cb61;let _0x1ebf95;try{_0x1ebf95=JSON[_0x2a8772(0x20a)](_0xffccd);}catch{return;}if(!isRecord(_0x1ebf95)||typeof _0x1ebf95[_0x2a8772(0x1f5)]!==_0x2a8772(0x1ed))return;if(_0x1ebf95[_0x2a8772(0x1f5)]==='event'){const _0x5860fa=typeof _0x1ebf95[_0x2a8772(0x1dc)]==='string'?_0x1ebf95[_0x2a8772(0x1dc)]:'';if(!_0x5860fa)return;const _0x493f2e=isRecord(_0x1ebf95[_0x2a8772(0x26a)])?_0x1ebf95[_0x2a8772(0x26a)]:{};if(_0x5860fa===_0x2a8772(0x1eb)+_0x2a8772(0x26b)+'e'){const _0x3ef15f=typeof _0x493f2e[_0x2a8772(0x23e)]==='string'?_0x493f2e['nonce'][_0x2a8772(0x1f4)]():'';if(!_0x3ef15f){this[_0x2a8772(0x1f0)+_0x2a8772(0x271)](_0x2a8772(0x262)+_0x2a8772(0x202)+'hake\x20mis'+'sing\x20non'+'ce'),this['ws']?.['close'](0x3f0,_0x2a8772(0x26f)+_0x2a8772(0x26b)+_0x2a8772(0x22d)+'g\x20nonce');return;}this[_0x2a8772(0x275)+_0x2a8772(0x256)]=_0x3ef15f,void this['sendConn'+_0x2a8772(0x1d9)]();return;}if(_0x5860fa==='chat')this[_0x2a8772(0x278)]?.[_0x2a8772(0x210)+_0x2a8772(0x220)]?.(_0x493f2e);if(_0x5860fa===_0x2a8772(0x233))this[_0x2a8772(0x278)]?.[_0x2a8772(0x230)+_0x2a8772(0x28a)]?.(_0x493f2e);return;}if(_0x1ebf95[_0x2a8772(0x1f5)]!==_0x2a8772(0x27a))return;const _0x127fcb=typeof _0x1ebf95['id']==='string'?_0x1ebf95['id']:'';if(!_0x127fcb)return;const _0xb400db=this['pending'][_0x2a8772(0x245)](_0x127fcb);if(!_0xb400db)return;const _0x240a25=isRecord(_0x1ebf95[_0x2a8772(0x26a)])?_0x1ebf95[_0x2a8772(0x26a)]:{},_0x4df6ee=typeof _0x240a25[_0x2a8772(0x244)]===_0x2a8772(0x1ed)?_0x240a25[_0x2a8772(0x244)]:'';if(_0xb400db['expectFi'+_0x2a8772(0x21e)]&&_0x4df6ee===_0x2a8772(0x1ea))return;this[_0x2a8772(0x1fe)]['delete'](_0x127fcb);_0xb400db['timeout']&&(clearTimeout(_0xb400db[_0x2a8772(0x1e1)]),_0xb400db['timeout']=null);if(_0x1ebf95['ok']===!![]){_0xb400db[_0x2a8772(0x23d)](_0x1ebf95[_0x2a8772(0x26a)]);return;}const _0xef38fe=isRecord(_0x1ebf95['error'])?_0x1ebf95[_0x2a8772(0x287)]:{},_0x3118f7=typeof _0xef38fe[_0x2a8772(0x27e)]===_0x2a8772(0x1ed)?_0xef38fe[_0x2a8772(0x27e)]:'gateway\x20'+_0x2a8772(0x1da)+_0x2a8772(0x263)+_0xb400db['method'];_0xb400db['reject'](new Error(_0x3118f7));}[_0x29cb61(0x1e4)+_0x29cb61(0x247)](_0x32a94f=0x2ee0){const _0x29b0c3=_0x29cb61;if(this[_0x29b0c3(0x259)+'d'])return Promise[_0x29b0c3(0x23d)]();if(!this[_0x29b0c3(0x278)])return Promise[_0x29b0c3(0x242)](new Error('gateway\x20'+_0x29b0c3(0x25e)+_0x29b0c3(0x1f2)+'ured'));if(!this['ws'])this[_0x29b0c3(0x26c)]();return new Promise((_0x57dd49,_0x28afdb)=>{const _0x55f263=setTimeout(()=>{const _0x2b0a70=_0x4b80;this[_0x2b0a70(0x207)+_0x2b0a70(0x211)]=this[_0x2b0a70(0x207)+'ters'][_0x2b0a70(0x24e)](_0x4728fd=>_0x4728fd[_0x2b0a70(0x23d)]!==_0x57dd49),_0x28afdb(new Error(_0x2b0a70(0x262)+_0x2b0a70(0x1d8)+_0x2b0a70(0x24c)+'med\x20out'));},_0x32a94f);this['readyWai'+'ters']['push']({'resolve':_0x57dd49,'reject':_0x28afdb,'timeout':_0x55f263});});}['resolveR'+_0x29cb61(0x25b)+_0x29cb61(0x246)](){const _0x1708f6=_0x29cb61,_0xd955ac=[...this[_0x1708f6(0x207)+_0x1708f6(0x211)]];this[_0x1708f6(0x207)+'ters']=[];for(const _0x4336ca of _0xd955ac){clearTimeout(_0x4336ca[_0x1708f6(0x1e1)]),_0x4336ca['resolve']();}}[_0x29cb61(0x20e)+'adyWaite'+'rs'](_0x35b83b){const _0x1ab73f=_0x29cb61,_0x312bf1=[...this[_0x1ab73f(0x207)+_0x1ab73f(0x211)]];this['readyWai'+_0x1ab73f(0x211)]=[];for(const _0x13ad05 of _0x312bf1){clearTimeout(_0x13ad05[_0x1ab73f(0x1e1)]),_0x13ad05['reject'](_0x35b83b);}}[_0x29cb61(0x281)+'nding'](_0x552891){const _0xe08402=_0x29cb61;for(const [_0x291b67,_0x37e7aa]of this[_0xe08402(0x1fe)][_0xe08402(0x226)]()){this[_0xe08402(0x1fe)][_0xe08402(0x222)](_0x291b67),_0x37e7aa['timeout']&&(clearTimeout(_0x37e7aa[_0xe08402(0x1e1)]),_0x37e7aa['timeout']=null),_0x37e7aa[_0xe08402(0x242)](_0x552891);}}[_0x29cb61(0x1f0)+'sconnect'](_0x27b49b){const _0x1df975=_0x29cb61;this['ws']&&(this['ws'][_0x1df975(0x223)+'lListene'+'rs'](),this['ws']=null);this[_0x1df975(0x259)+'d']=![],this[_0x1df975(0x275)+_0x1df975(0x256)]=null,this['connectS'+_0x1df975(0x220)]=![],this[_0x1df975(0x281)+_0x1df975(0x1e7)](new Error(_0x27b49b||_0x1df975(0x262)+'WS\x20disco'+'nnected')),this[_0x1df975(0x20e)+'adyWaite'+'rs'](new Error(_0x27b49b||_0x1df975(0x262)+_0x1df975(0x289)+_0x1df975(0x200))),this[_0x1df975(0x1f3)+_0x1df975(0x246)]();if(_0x27b49b)this[_0x1df975(0x278)]?.['onDiscon'+_0x1df975(0x219)]?.(_0x27b49b);if(!this['shouldRe'+_0x1df975(0x26c)]||!this['config'])return;const _0x9fa49d=this[_0x1df975(0x201)+_0x1df975(0x285)+'Ms'];this[_0x1df975(0x201)+'tBackoff'+'Ms']=Math[_0x1df975(0x214)](this[_0x1df975(0x201)+'tBackoff'+'Ms']*0x2,0x3a98),this['reconnec'+'tTimer']=setTimeout(()=>{const _0x5c254c=_0x1df975;this[_0x5c254c(0x201)+_0x5c254c(0x1de)]=null,this[_0x5c254c(0x26c)]();},_0x9fa49d);}[_0x29cb61(0x1f3)+_0x29cb61(0x246)](){const _0x533cbb=_0x29cb61;this[_0x533cbb(0x201)+_0x533cbb(0x1de)]&&(clearTimeout(this['reconnec'+_0x533cbb(0x1de)]),this['reconnec'+_0x533cbb(0x1de)]=null),this[_0x533cbb(0x232)+_0x533cbb(0x279)+_0x533cbb(0x1fd)]&&(clearTimeout(this[_0x533cbb(0x232)+_0x533cbb(0x279)+_0x533cbb(0x1fd)]),this[_0x533cbb(0x232)+_0x533cbb(0x279)+_0x533cbb(0x1fd)]=null);}}
|
|
1
|
+
const _0x50ec13=_0x4985;(function(_0x2f5e2b,_0x101447){const _0xb2141e=_0x4985,_0xc87359=_0x2f5e2b();while(!![]){try{const _0xe58d01=-parseInt(_0xb2141e(0x1ad))/0x1+parseInt(_0xb2141e(0x17b))/0x2+parseInt(_0xb2141e(0x190))/0x3*(-parseInt(_0xb2141e(0x192))/0x4)+-parseInt(_0xb2141e(0x146))/0x5+parseInt(_0xb2141e(0x178))/0x6*(-parseInt(_0xb2141e(0x1b5))/0x7)+-parseInt(_0xb2141e(0x1b1))/0x8+parseInt(_0xb2141e(0x171))/0x9*(parseInt(_0xb2141e(0x1c4))/0xa);if(_0xe58d01===_0x101447)break;else _0xc87359['push'](_0xc87359['shift']());}catch(_0x158863){_0xc87359['push'](_0xc87359['shift']());}}}(_0x13d5,0x641e3));import{Buffer}from'node:buffer';import{createHash,createPrivateKey,createPublicKey,generateKeyPairSync,randomUUID,sign}from'node:crypto';import{chmodSync,existsSync,mkdirSync,readFileSync,writeFileSync}from'node:fs';import{dirname}from'node:path';import _0x43d579 from'ws';const ED25519_SPKI_PREFIX=Buffer[_0x50ec13(0x126)](_0x50ec13(0x15a)+_0x50ec13(0x18f)+'70032100',_0x50ec13(0x135)),BASE64_PADDING_REGEX=/=+$/g,UPPERCASE_ASCII_REGEX=/[A-Z]/g;function isRecord(_0x188989){const _0x552269=_0x50ec13;return Boolean(_0x188989)&&typeof _0x188989===_0x552269(0x169)&&!Array['isArray'](_0x188989);}function _0x4985(_0xae1515,_0x5b075d){_0xae1515=_0xae1515-0x11c;const _0x13d5c3=_0x13d5();let _0x498552=_0x13d5c3[_0xae1515];return _0x498552;}function formatUnknownError(_0x58ddcb){const _0xafcfe5=_0x50ec13;if(_0x58ddcb instanceof Error)return _0x58ddcb[_0xafcfe5(0x162)];return String(_0x58ddcb??'');}function isLocalGatewayConnRefused(_0x2967dc){const _0x577c9a=_0x50ec13,_0x5cc13a=formatUnknownError(_0x2967dc);return/\bECONNREFUSED\b/i[_0x577c9a(0x172)](_0x5cc13a)&&/127\.0\.0\.1:\d+/[_0x577c9a(0x172)](_0x5cc13a);}function base64UrlEncode(_0x19bc43){const _0x4f89c7=_0x50ec13;return _0x19bc43[_0x4f89c7(0x134)](_0x4f89c7(0x16d))[_0x4f89c7(0x16c)+'ll']('+','-')[_0x4f89c7(0x16c)+'ll']('/','_')[_0x4f89c7(0x191)](BASE64_PADDING_REGEX,'');}function _0x13d5(){const _0x3101c8=['restart','stop','nected','Options','entity','removeAl','ell/','challeng','spki','rejectRe','subarray','o\x20send\x20g','clientId','302a3005','lengeTim','reject','fromChar','clientMo','get','identity','handleDi','message','onChatEv','pending','token','url','nectChal','hallenge','object','privateK','request','replaceA','base64','failed\x20t','set','hake\x20mis','18347922VffBlb','test','queueCon','ssage','agent','config','isBuffer','115146oKvrJb','t\x20connec','nonce','1223970dwRaiD','ters','pkcs8','min','error','join','push','connectN','sendConn','DateTime','string','yCheck','now','delete','digest','request\x20','nding','gateway\x20','failed','tBackoff','06032b65','129852UuSDoR','replace','24hDFEMx','is\x20not\x20l','payload','WS\x20error','send','once','trim','connecte','resolved','WS\x20disco','ent','WS\x20hands','deviceId','der','code=','clientDi','connect','event','lReady','adyWaite','ct\x20faile','deviceFa','operator','timeout','resolveR','WS\x20clien','onConnec','610596vkzRYj','filter','eadyWait','shouldRe','375432vcatay','WS\x20conne','connect.','sconnect','280cpKiOt','初始化\x20gate','length','connect\x20','platform','stringif','connectS','scopes','viceFami','wujie-sh','ateway\x20r','eyPem','timeoutM','nal','clientDe','10hjNHnt','clientVe','export','method','update','timed\x20ou','utf8','WS\x20is\x20no','tTimer','rsion','chat','failed:\x20','handleMe','o\x20load\x20g','nnected','charCode','rejectPe','ers','Code','ting','configur','yPem','onDiscon','med\x20out','status','type','vent','Timer','ction\x20ti','from','device\x20i','.approva','g\x20nonce','sha256','res','e\x20timeou','close','readyWai','pem','connectC','Path','clearTim','.write','toString','hex','OPEN','e\x20missin','parse','sing\x20non','mily','t:\x20','resolve','terminat','eout','WS\x20close','open','reconnec','equals','ect','waitUnti','t\x20stoppe','2778455BAoPqF','role','readySta','publicKe','ted','expectFi','t\x20restar'];_0x13d5=function(){return _0x3101c8;};return _0x13d5();}function derivePublicKeyRaw(_0x5c6921){const _0x471cf0=_0x50ec13,_0x332ec4=createPublicKey(_0x5c6921)['export']({'type':_0x471cf0(0x155),'format':_0x471cf0(0x19f)}),_0xc09ca3=Buffer[_0x471cf0(0x177)](_0x332ec4)?_0x332ec4:Buffer['from'](_0x332ec4),_0x2a2a55=_0xc09ca3['length']===ED25519_SPKI_PREFIX[_0x471cf0(0x1b7)]+0x20&&_0xc09ca3[_0x471cf0(0x157)](0x0,ED25519_SPKI_PREFIX[_0x471cf0(0x1b7)])[_0x471cf0(0x142)](ED25519_SPKI_PREFIX);return _0x2a2a55?_0xc09ca3[_0x471cf0(0x157)](ED25519_SPKI_PREFIX['length']):_0xc09ca3;}function fingerprintPublicKey(_0x41380a){const _0x44b17c=_0x50ec13;return createHash(_0x44b17c(0x12a))[_0x44b17c(0x1c8)](derivePublicKeyRaw(_0x41380a))[_0x44b17c(0x189)](_0x44b17c(0x135));}function publicKeyRawBase64UrlFromPem(_0x730f18){return base64UrlEncode(derivePublicKeyRaw(_0x730f18));}function signDevicePayload(_0x23167c,_0x38b4c0){const _0x284c5d=_0x50ec13,_0x237b1b=createPrivateKey(_0x23167c);return base64UrlEncode(sign(null,Buffer[_0x284c5d(0x126)](_0x38b4c0,'utf8'),_0x237b1b));}function normalizeDeviceMetadataForAuth(_0x5c2103){const _0x37f897=_0x50ec13,_0x1d9b10=typeof _0x5c2103===_0x37f897(0x185)?_0x5c2103['trim']():'';if(!_0x1d9b10)return'';return _0x1d9b10[_0x37f897(0x191)](UPPERCASE_ASCII_REGEX,_0x194a03=>String[_0x37f897(0x15d)+_0x37f897(0x1d6)](_0x194a03[_0x37f897(0x1d3)+'At'](0x0)+0x20));}function buildDeviceAuthPayloadV3(_0x1fb0f3){const _0x1502af=_0x50ec13;return['v3',_0x1fb0f3['deviceId'],_0x1fb0f3[_0x1502af(0x159)],_0x1fb0f3[_0x1502af(0x15e)+'de'],_0x1fb0f3[_0x1502af(0x147)],_0x1fb0f3[_0x1502af(0x1bc)]['join'](','),String(_0x1fb0f3['signedAt'+'Ms']),_0x1fb0f3[_0x1502af(0x165)]??'',_0x1fb0f3[_0x1502af(0x17a)],normalizeDeviceMetadataForAuth(_0x1fb0f3[_0x1502af(0x1b9)]),normalizeDeviceMetadataForAuth(_0x1fb0f3[_0x1502af(0x1a7)+_0x1502af(0x13a)])][_0x1502af(0x180)]('|');}function writeIdentityFile(_0x1baebf,_0x5025f8,_0x1c384f){const _0x541889=_0x50ec13;mkdirSync(dirname(_0x1baebf),{'recursive':!![]}),writeFileSync(_0x1baebf,JSON[_0x541889(0x1ba)+'y']({'version':0x1,..._0x5025f8,'createdAtMs':_0x1c384f},null,0x2)+'\x0a',{'mode':0x180});try{chmodSync(_0x1baebf,0x180);}catch{}}function generateDeviceIdentity(){const _0x3bf4df=_0x50ec13,{publicKey:_0x4cae4e,privateKey:_0x3b8568}=generateKeyPairSync('ed25519'),_0x38b435=_0x4cae4e[_0x3bf4df(0x1c6)]({'type':_0x3bf4df(0x155),'format':_0x3bf4df(0x12f)})['toString'](),_0x3870ea=_0x3b8568[_0x3bf4df(0x1c6)]({'type':_0x3bf4df(0x17d),'format':'pem'})[_0x3bf4df(0x134)]();return{'deviceId':fingerprintPublicKey(_0x38b435),'publicKeyPem':_0x38b435,'privateKeyPem':_0x3870ea};}function loadOrCreateDeviceIdentity(_0x22fc33){const _0x16d885=_0x50ec13;if(existsSync(_0x22fc33))try{const _0x491f74=JSON[_0x16d885(0x138)](readFileSync(_0x22fc33,_0x16d885(0x1ca))),_0x428279=typeof _0x491f74?.[_0x16d885(0x149)+_0x16d885(0x11e)]===_0x16d885(0x185)?_0x491f74[_0x16d885(0x149)+_0x16d885(0x11e)]:'',_0x51f17e=typeof _0x491f74?.['privateK'+_0x16d885(0x1c0)]===_0x16d885(0x185)?_0x491f74[_0x16d885(0x16a)+'eyPem']:'';if(_0x428279&&_0x51f17e){const _0x50482e={'deviceId':fingerprintPublicKey(_0x428279),'publicKeyPem':_0x428279,'privateKeyPem':_0x51f17e};return _0x491f74?.[_0x16d885(0x19e)]!==_0x50482e['deviceId']&&writeIdentityFile(_0x22fc33,_0x50482e,Date[_0x16d885(0x187)]()),_0x50482e;}}catch{}const _0x2f3be5=generateDeviceIdentity();return writeIdentityFile(_0x22fc33,_0x2f3be5,Date['now']()),_0x2f3be5;}export class ClawGatewayWsClient{['ws']=null;['config']=null;[_0x50ec13(0x164)]=new Map();[_0x50ec13(0x12e)+'ters']=[];[_0x50ec13(0x1b0)+_0x50ec13(0x1a2)]=![];['reconnec'+'tTimer']=null;[_0x50ec13(0x130)+_0x50ec13(0x168)+_0x50ec13(0x124)]=null;[_0x50ec13(0x182)+_0x50ec13(0x197)]=null;['connectS'+_0x50ec13(0x19c)]=![];[_0x50ec13(0x199)+'d']=![];[_0x50ec13(0x141)+_0x50ec13(0x18e)+'Ms']=0x320;[_0x50ec13(0x19e)+'entity']=null;[_0x50ec13(0x11d)+'e'](_0x39c34c){const _0x4464b4=_0x50ec13;if(!_0x39c34c){this['stop']();return;}const _0x32d0c5=this['config'];this[_0x4464b4(0x176)]=_0x39c34c,this['shouldRe'+_0x4464b4(0x1a2)]=!![];try{this[_0x4464b4(0x19e)+_0x4464b4(0x151)]=loadOrCreateDeviceIdentity(_0x39c34c[_0x4464b4(0x160)+'Path']);}catch(_0x18f7ca){const _0x2d1a31=_0x18f7ca instanceof Error?_0x18f7ca[_0x4464b4(0x162)]:_0x4464b4(0x1b6)+'way\x20设备身份'+'失败';this[_0x4464b4(0x14e)](),_0x39c34c[_0x4464b4(0x11f)+_0x4464b4(0x14f)](_0x2d1a31);return;}const _0x2d7aa1=!_0x32d0c5||_0x32d0c5[_0x4464b4(0x166)]!==_0x39c34c[_0x4464b4(0x166)]||_0x32d0c5['token']!==_0x39c34c[_0x4464b4(0x165)]||_0x32d0c5['clientId']!==_0x39c34c['clientId']||_0x32d0c5['clientMo'+'de']!==_0x39c34c['clientMo'+'de']||_0x32d0c5[_0x4464b4(0x1c5)+'rsion']!==_0x39c34c[_0x4464b4(0x1c5)+_0x4464b4(0x1cd)]||_0x32d0c5[_0x4464b4(0x160)+_0x4464b4(0x131)]!==_0x39c34c[_0x4464b4(0x160)+_0x4464b4(0x131)];if(_0x2d7aa1){this[_0x4464b4(0x14d)]();return;}if(!this['ws'])this[_0x4464b4(0x1a2)]();}['stop'](){const _0x14ae12=_0x50ec13;this[_0x14ae12(0x1b0)+_0x14ae12(0x1a2)]=![],this['connecte'+'d']=![],this[_0x14ae12(0x182)+'once']=null,this['connectS'+_0x14ae12(0x19c)]=![],this[_0x14ae12(0x132)+_0x14ae12(0x1d5)](),this['rejectPe'+_0x14ae12(0x18b)](new Error('gateway\x20'+_0x14ae12(0x1ab)+_0x14ae12(0x145)+'d')),this['rejectRe'+_0x14ae12(0x1a5)+'rs'](new Error('gateway\x20'+'WS\x20clien'+_0x14ae12(0x145)+'d'));if(this['ws']){try{this['ws'][_0x14ae12(0x12d)]();}catch{}this['ws']=null;}this[_0x14ae12(0x19e)+_0x14ae12(0x151)]=null,this[_0x14ae12(0x176)]=null;}async[_0x50ec13(0x16b)](_0x2ef361,_0x3aaeee={},_0x53200e={}){const _0x88cc=_0x50ec13;if(!_0x53200e['skipRead'+_0x88cc(0x186)])await this['waitUnti'+_0x88cc(0x1a4)]();const _0x3640bc=this['ws'];if(!_0x3640bc||_0x3640bc['readySta'+'te']!==_0x43d579[_0x88cc(0x136)])throw new Error(_0x88cc(0x18c)+'WS\x20is\x20no'+_0x88cc(0x179)+_0x88cc(0x14a));const _0x183790=randomUUID(),_0x1c8f0c=_0x53200e[_0x88cc(0x1c1)+'s']??0x7530;return await new Promise((_0x1a99ce,_0xe66cf2)=>{const _0x535c8e=_0x88cc,_0x40560f=setTimeout(()=>{const _0x193761=_0x4985;this[_0x193761(0x164)][_0x193761(0x188)](_0x183790),_0xe66cf2(new Error(_0x193761(0x18c)+_0x193761(0x18a)+_0x193761(0x1c9)+_0x193761(0x13b)+_0x2ef361));},_0x1c8f0c);this[_0x535c8e(0x164)][_0x535c8e(0x16f)](_0x183790,{'method':_0x2ef361,'resolve':_0x28c8d1=>{clearTimeout(_0x40560f),_0x1a99ce(_0x28c8d1);},'reject':_0x5398b1=>{clearTimeout(_0x40560f),_0xe66cf2(_0x5398b1);},'expectFinal':_0x53200e[_0x535c8e(0x14b)+'nal']===!![],'timeout':_0x40560f});try{_0x3640bc[_0x535c8e(0x196)](JSON[_0x535c8e(0x1ba)+'y']({'type':'req','id':_0x183790,'method':_0x2ef361,'params':_0x3aaeee}));}catch(_0x437c99){this[_0x535c8e(0x164)][_0x535c8e(0x188)](_0x183790),clearTimeout(_0x40560f),_0xe66cf2(_0x437c99 instanceof Error?_0x437c99:new Error(_0x535c8e(0x16e)+_0x535c8e(0x158)+_0x535c8e(0x1bf)+'equest'));}});}['restart'](){const _0x11675a=_0x50ec13;this[_0x11675a(0x199)+'d']=![],this[_0x11675a(0x182)+_0x11675a(0x197)]=null,this[_0x11675a(0x1bb)+'ent']=![],this[_0x11675a(0x132)+_0x11675a(0x1d5)](),this['rejectPe'+_0x11675a(0x18b)](new Error(_0x11675a(0x18c)+_0x11675a(0x1ab)+_0x11675a(0x14c)+_0x11675a(0x11c))),this['rejectRe'+_0x11675a(0x1a5)+'rs'](new Error(_0x11675a(0x18c)+_0x11675a(0x1ab)+_0x11675a(0x14c)+'ting'));if(this['ws']){try{this['ws'][_0x11675a(0x13d)+'e']();}catch{}this['ws']=null;}this['connect']();}[_0x50ec13(0x1a2)](){const _0x258dbb=_0x50ec13;if(!this['config']||this['ws'])return;const _0x547989=new _0x43d579(this[_0x258dbb(0x176)][_0x258dbb(0x166)]);this['ws']=_0x547989,_0x547989['on'](_0x258dbb(0x140),()=>this[_0x258dbb(0x173)+_0x258dbb(0x167)+_0x258dbb(0x15b)+'eout']()),_0x547989['on'](_0x258dbb(0x162),_0x3060ed=>this['handleMe'+_0x258dbb(0x174)](_0x3060ed['toString']())),_0x547989['on']('close',(_0x2fc675,_0x1c7fab)=>{const _0x42c08a=_0x258dbb;if(this[_0x42c08a(0x199)+'d']){const _0x5e3d47=_0x1c7fab[_0x42c08a(0x134)]()||_0x42c08a(0x1a0)+_0x2fc675;this[_0x42c08a(0x161)+_0x42c08a(0x1b4)](_0x42c08a(0x18c)+_0x42c08a(0x13f)+'d\x20('+_0x5e3d47+')');}else this[_0x42c08a(0x161)+'sconnect']('');}),_0x547989['on'](_0x258dbb(0x17f),_0x35b4d2=>{const _0x5641e4=_0x258dbb;if(isLocalGatewayConnRefused(_0x35b4d2)){this[_0x5641e4(0x161)+_0x5641e4(0x1b4)]('gateway\x20'+_0x5641e4(0x193)+'istening'+'\x20yet');return;}const _0x4d0da2=formatUnknownError(_0x35b4d2);this[_0x5641e4(0x161)+_0x5641e4(0x1b4)](_0x4d0da2?_0x5641e4(0x18c)+_0x5641e4(0x195)+':\x20'+_0x4d0da2:'gateway\x20'+_0x5641e4(0x195));});}[_0x50ec13(0x173)+_0x50ec13(0x167)+_0x50ec13(0x15b)+_0x50ec13(0x13e)](){const _0x56d8dc=_0x50ec13;this['connectN'+_0x56d8dc(0x197)]=null,this[_0x56d8dc(0x1bb)+_0x56d8dc(0x19c)]=![];if(this['connectC'+_0x56d8dc(0x168)+_0x56d8dc(0x124)])clearTimeout(this[_0x56d8dc(0x130)+_0x56d8dc(0x168)+_0x56d8dc(0x124)]);this[_0x56d8dc(0x130)+'hallenge'+_0x56d8dc(0x124)]=setTimeout(()=>{const _0x1294d6=_0x56d8dc;if(this[_0x1294d6(0x1bb)+'ent']||!this['ws']||this['ws'][_0x1294d6(0x148)+'te']!==_0x43d579['OPEN'])return;this[_0x1294d6(0x161)+_0x1294d6(0x1b4)]('gateway\x20'+_0x1294d6(0x19d)+'hake\x20tim'+'ed\x20out'),this['ws']?.['close'](0x3f0,_0x1294d6(0x1b8)+_0x1294d6(0x154)+_0x1294d6(0x12c)+'t');},0x7d0);}async[_0x50ec13(0x183)+'ect'](){const _0x7eecfa=_0x50ec13,_0x36d37b=this[_0x7eecfa(0x176)];if(!_0x36d37b||this[_0x7eecfa(0x1bb)+_0x7eecfa(0x19c)])return;const _0xf539c9=this[_0x7eecfa(0x182)+_0x7eecfa(0x197)]?.[_0x7eecfa(0x198)]()??'';if(!_0xf539c9){this[_0x7eecfa(0x161)+_0x7eecfa(0x1b4)](_0x7eecfa(0x18c)+_0x7eecfa(0x19d)+'hake\x20mis'+_0x7eecfa(0x139)+'ce'),this['ws']?.[_0x7eecfa(0x12d)](0x3f0,_0x7eecfa(0x1b8)+_0x7eecfa(0x154)+_0x7eecfa(0x137)+_0x7eecfa(0x129));return;}this[_0x7eecfa(0x1bb)+_0x7eecfa(0x19c)]=!![];this[_0x7eecfa(0x130)+_0x7eecfa(0x168)+_0x7eecfa(0x124)]&&(clearTimeout(this[_0x7eecfa(0x130)+'hallenge'+'Timer']),this['connectC'+'hallenge'+_0x7eecfa(0x124)]=null);if(!this[_0x7eecfa(0x19e)+_0x7eecfa(0x151)])try{this[_0x7eecfa(0x19e)+'entity']=loadOrCreateDeviceIdentity(_0x36d37b[_0x7eecfa(0x160)+_0x7eecfa(0x131)]);}catch(_0x153662){this['handleDi'+_0x7eecfa(0x1b4)](_0x153662 instanceof Error?_0x153662[_0x7eecfa(0x162)]:'failed\x20t'+_0x7eecfa(0x1d1)+'ateway\x20i'+'dentity'),this['ws']?.[_0x7eecfa(0x12d)](0x3f0,_0x7eecfa(0x127)+'dentity\x20'+'unavaila'+'ble');return;}const _0x79f236='operator',_0x5acd7f=[_0x7eecfa(0x1a8)+'.read',_0x7eecfa(0x1a8)+_0x7eecfa(0x133),'operator'+'.admin','operator'+_0x7eecfa(0x128)+'ls','operator'+'.pairing'],_0x55521f=_0x36d37b[_0x7eecfa(0x165)]['trim'](),_0x32e643=Date[_0x7eecfa(0x187)](),_0x5b2339=buildDeviceAuthPayloadV3({'deviceId':this[_0x7eecfa(0x19e)+_0x7eecfa(0x151)]['deviceId'],'clientId':_0x36d37b[_0x7eecfa(0x159)],'clientMode':_0x36d37b['clientMo'+'de'],'role':_0x79f236,'scopes':_0x5acd7f,'signedAtMs':_0x32e643,'token':_0x55521f||null,'nonce':_0xf539c9,'platform':process[_0x7eecfa(0x1b9)],'deviceFamily':_0x36d37b[_0x7eecfa(0x1c3)+_0x7eecfa(0x1bd)+'ly']}),_0x292125={'minProtocol':0x4,'maxProtocol':0x4,'client':{'id':_0x36d37b[_0x7eecfa(0x159)],'displayName':_0x36d37b[_0x7eecfa(0x1a1)+'splayNam'+'e'],'version':_0x36d37b[_0x7eecfa(0x1c5)+_0x7eecfa(0x1cd)],'platform':process[_0x7eecfa(0x1b9)],'deviceFamily':_0x36d37b[_0x7eecfa(0x1c3)+_0x7eecfa(0x1bd)+'ly'],'mode':_0x36d37b[_0x7eecfa(0x15e)+'de']},'caps':[],'role':_0x79f236,'scopes':_0x5acd7f,'auth':_0x55521f?{'token':_0x55521f}:undefined,'device':{'id':this['deviceId'+'entity'][_0x7eecfa(0x19e)],'publicKey':publicKeyRawBase64UrlFromPem(this[_0x7eecfa(0x19e)+_0x7eecfa(0x151)][_0x7eecfa(0x149)+_0x7eecfa(0x11e)]),'signature':signDevicePayload(this[_0x7eecfa(0x19e)+_0x7eecfa(0x151)]['privateK'+_0x7eecfa(0x1c0)],_0x5b2339),'signedAt':_0x32e643,'nonce':_0xf539c9},'locale':Intl[_0x7eecfa(0x184)+'Format']()[_0x7eecfa(0x19a)+_0x7eecfa(0x150)]()['locale'],'userAgent':_0x7eecfa(0x1be)+_0x7eecfa(0x153)+_0x36d37b[_0x7eecfa(0x1c5)+_0x7eecfa(0x1cd)]};try{await this['request'](_0x7eecfa(0x1a2),_0x292125,{'timeoutMs':0x2710,'skipReadyCheck':!![]}),this[_0x7eecfa(0x199)+'d']=!![],this[_0x7eecfa(0x141)+'tBackoff'+'Ms']=0x320,this[_0x7eecfa(0x1aa)+'eadyWait'+'ers'](),this['config']?.[_0x7eecfa(0x1ac)+'ted']?.();}catch(_0x27eb15){this[_0x7eecfa(0x161)+_0x7eecfa(0x1b4)](_0x27eb15 instanceof Error?_0x27eb15['message']:_0x7eecfa(0x18c)+_0x7eecfa(0x1b2)+_0x7eecfa(0x1a6)+'d'),this['ws']?.[_0x7eecfa(0x12d)](0x3f0,_0x7eecfa(0x1b8)+_0x7eecfa(0x18d));}}[_0x50ec13(0x1d0)+_0x50ec13(0x174)](_0x514d23){const _0x5b855a=_0x50ec13;let _0x915a05;try{_0x915a05=JSON[_0x5b855a(0x138)](_0x514d23);}catch{return;}if(!isRecord(_0x915a05)||typeof _0x915a05['type']!=='string')return;if(_0x915a05['type']==='event'){const _0x586c17=typeof _0x915a05['event']==='string'?_0x915a05[_0x5b855a(0x1a3)]:'';if(!_0x586c17)return;const _0x2b06bf=isRecord(_0x915a05[_0x5b855a(0x194)])?_0x915a05[_0x5b855a(0x194)]:{};if(_0x586c17===_0x5b855a(0x1b3)+'challeng'+'e'){const _0x4d96e6=typeof _0x2b06bf[_0x5b855a(0x17a)]===_0x5b855a(0x185)?_0x2b06bf[_0x5b855a(0x17a)][_0x5b855a(0x198)]():'';if(!_0x4d96e6){this[_0x5b855a(0x161)+_0x5b855a(0x1b4)]('gateway\x20'+_0x5b855a(0x19d)+_0x5b855a(0x170)+_0x5b855a(0x139)+'ce'),this['ws']?.[_0x5b855a(0x12d)](0x3f0,_0x5b855a(0x1b8)+_0x5b855a(0x154)+_0x5b855a(0x137)+'g\x20nonce');return;}this['connectN'+_0x5b855a(0x197)]=_0x4d96e6,void this['sendConn'+_0x5b855a(0x143)]();return;}if(_0x586c17===_0x5b855a(0x1ce))this[_0x5b855a(0x176)]?.[_0x5b855a(0x163)+_0x5b855a(0x19c)]?.(_0x2b06bf);if(_0x586c17===_0x5b855a(0x175))this[_0x5b855a(0x176)]?.['onAgentE'+_0x5b855a(0x123)]?.(_0x2b06bf);return;}if(_0x915a05[_0x5b855a(0x122)]!==_0x5b855a(0x12b))return;const _0x33ebd9=typeof _0x915a05['id']===_0x5b855a(0x185)?_0x915a05['id']:'';if(!_0x33ebd9)return;const _0x26d4d2=this[_0x5b855a(0x164)][_0x5b855a(0x15f)](_0x33ebd9);if(!_0x26d4d2)return;const _0x3d8448=isRecord(_0x915a05[_0x5b855a(0x194)])?_0x915a05[_0x5b855a(0x194)]:{},_0x4fc12e=typeof _0x3d8448[_0x5b855a(0x121)]===_0x5b855a(0x185)?_0x3d8448['status']:'';if(_0x26d4d2[_0x5b855a(0x14b)+_0x5b855a(0x1c2)]&&_0x4fc12e==='accepted')return;this[_0x5b855a(0x164)]['delete'](_0x33ebd9);_0x26d4d2[_0x5b855a(0x1a9)]&&(clearTimeout(_0x26d4d2[_0x5b855a(0x1a9)]),_0x26d4d2['timeout']=null);if(_0x915a05['ok']===!![]){_0x26d4d2[_0x5b855a(0x13c)](_0x915a05[_0x5b855a(0x194)]);return;}const _0xa0f5c5=isRecord(_0x915a05[_0x5b855a(0x17f)])?_0x915a05[_0x5b855a(0x17f)]:{},_0x380011=typeof _0xa0f5c5[_0x5b855a(0x162)]===_0x5b855a(0x185)?_0xa0f5c5[_0x5b855a(0x162)]:_0x5b855a(0x18c)+'request\x20'+_0x5b855a(0x1cf)+_0x26d4d2[_0x5b855a(0x1c7)];_0x26d4d2['reject'](new Error(_0x380011));}[_0x50ec13(0x144)+'lReady'](_0x451f64=0x2ee0){const _0x33534a=_0x50ec13;if(this[_0x33534a(0x199)+'d'])return Promise[_0x33534a(0x13c)]();if(!this['config'])return Promise[_0x33534a(0x15c)](new Error(_0x33534a(0x18c)+_0x33534a(0x1cb)+'t\x20config'+'ured'));if(!this['ws'])this[_0x33534a(0x1a2)]();return new Promise((_0x58c31f,_0x491f54)=>{const _0x167b75=_0x33534a,_0x2b5f25=setTimeout(()=>{const _0x1cc72a=_0x4985;this[_0x1cc72a(0x12e)+_0x1cc72a(0x17c)]=this['readyWai'+_0x1cc72a(0x17c)][_0x1cc72a(0x1ae)](_0x58b1cb=>_0x58b1cb[_0x1cc72a(0x13c)]!==_0x58c31f),_0x491f54(new Error(_0x1cc72a(0x18c)+_0x1cc72a(0x1b2)+_0x1cc72a(0x125)+_0x1cc72a(0x120)));},_0x451f64);this[_0x167b75(0x12e)+_0x167b75(0x17c)][_0x167b75(0x181)]({'resolve':_0x58c31f,'reject':_0x491f54,'timeout':_0x2b5f25});});}[_0x50ec13(0x1aa)+_0x50ec13(0x1af)+'ers'](){const _0x3c9cf2=_0x50ec13,_0xb78422=[...this[_0x3c9cf2(0x12e)+_0x3c9cf2(0x17c)]];this[_0x3c9cf2(0x12e)+_0x3c9cf2(0x17c)]=[];for(const _0x4b3d9e of _0xb78422){clearTimeout(_0x4b3d9e[_0x3c9cf2(0x1a9)]),_0x4b3d9e[_0x3c9cf2(0x13c)]();}}[_0x50ec13(0x156)+_0x50ec13(0x1a5)+'rs'](_0x2c3977){const _0x1e7fa2=_0x50ec13,_0x393a0e=[...this['readyWai'+_0x1e7fa2(0x17c)]];this[_0x1e7fa2(0x12e)+_0x1e7fa2(0x17c)]=[];for(const _0x171252 of _0x393a0e){clearTimeout(_0x171252[_0x1e7fa2(0x1a9)]),_0x171252[_0x1e7fa2(0x15c)](_0x2c3977);}}['rejectPe'+_0x50ec13(0x18b)](_0x5cbb5c){const _0x495bf9=_0x50ec13;for(const [_0x3bedd9,_0x58f22c]of this[_0x495bf9(0x164)]['entries']()){this[_0x495bf9(0x164)][_0x495bf9(0x188)](_0x3bedd9),_0x58f22c[_0x495bf9(0x1a9)]&&(clearTimeout(_0x58f22c[_0x495bf9(0x1a9)]),_0x58f22c['timeout']=null),_0x58f22c[_0x495bf9(0x15c)](_0x5cbb5c);}}[_0x50ec13(0x161)+'sconnect'](_0x2b0f94){const _0x1b6091=_0x50ec13;this['ws']&&(this['ws'][_0x1b6091(0x152)+'lListene'+'rs'](),this['ws']=null);this[_0x1b6091(0x199)+'d']=![],this[_0x1b6091(0x182)+'once']=null,this[_0x1b6091(0x1bb)+_0x1b6091(0x19c)]=![],this[_0x1b6091(0x1d4)+_0x1b6091(0x18b)](new Error(_0x2b0f94||_0x1b6091(0x18c)+_0x1b6091(0x19b)+_0x1b6091(0x1d2))),this['rejectRe'+_0x1b6091(0x1a5)+'rs'](new Error(_0x2b0f94||_0x1b6091(0x18c)+_0x1b6091(0x19b)+_0x1b6091(0x1d2))),this['clearTim'+_0x1b6091(0x1d5)]();if(_0x2b0f94)this[_0x1b6091(0x176)]?.[_0x1b6091(0x11f)+_0x1b6091(0x14f)]?.(_0x2b0f94);if(!this[_0x1b6091(0x1b0)+_0x1b6091(0x1a2)]||!this[_0x1b6091(0x176)])return;const _0x5e3a49=this[_0x1b6091(0x141)+_0x1b6091(0x18e)+'Ms'];this[_0x1b6091(0x141)+_0x1b6091(0x18e)+'Ms']=Math[_0x1b6091(0x17e)](this[_0x1b6091(0x141)+'tBackoff'+'Ms']*0x2,0x3a98),this['reconnec'+'tTimer']=setTimeout(()=>{const _0x2a7daf=_0x1b6091;this[_0x2a7daf(0x141)+_0x2a7daf(0x1cc)]=null,this['connect']();},_0x5e3a49);}[_0x50ec13(0x132)+_0x50ec13(0x1d5)](){const _0xe566d=_0x50ec13;this['reconnec'+_0xe566d(0x1cc)]&&(clearTimeout(this[_0xe566d(0x141)+_0xe566d(0x1cc)]),this[_0xe566d(0x141)+_0xe566d(0x1cc)]=null),this[_0xe566d(0x130)+_0xe566d(0x168)+_0xe566d(0x124)]&&(clearTimeout(this[_0xe566d(0x130)+_0xe566d(0x168)+_0xe566d(0x124)]),this['connectC'+'hallenge'+_0xe566d(0x124)]=null);}}
|
package/dist/src/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x423e20,_0x2f5eaa){var _0x1156dc=_0x13f6,_0x3c5d52=_0x423e20();while(!![]){try{var _0x299caf=parseInt(_0x1156dc(0x112))/0x1*(-parseInt(_0x1156dc(0x110))/0x2)+-parseInt(_0x1156dc(0x10d))/0x3*(-parseInt(_0x1156dc(0x111))/0x4)+-parseInt(_0x1156dc(0x10a))/0x5+parseInt(_0x1156dc(0x10e))/0x6+parseInt(_0x1156dc(0x10f))/0x7*(parseInt(_0x1156dc(0x10b))/0x8)+parseInt(_0x1156dc(0x10c))/0x9*(parseInt(_0x1156dc(0x108))/0xa)+-parseInt(_0x1156dc(0x109))/0xb;if(_0x299caf===_0x2f5eaa)break;else _0x3c5d52['push'](_0x3c5d52['shift']());}catch(_0x1253c8){_0x3c5d52['push'](_0x3c5d52['shift']());}}}(_0x29ca,0x89db9));function _0x29ca(){var _0x1fb0d2=['769844gBvACT','2824OMgYPp','50DFOzdy','3313167PmElyS','3110075LoFobD','8uwIBsx','1773693fyEhax','6hCCNMk','1482930QIltue','5062841ToYkuO','604jbFUPw'];_0x29ca=function(){return _0x1fb0d2;};return _0x29ca();}export{prepareRuntime,loadRuntimeInfo,spawnClaw,runClawOnce}from'./runtime.mjs';function _0x13f6(_0x1981fb,_0x3c72da){_0x1981fb=_0x1981fb-0x108;var _0x29cad8=_0x29ca();var _0x13f6be=_0x29cad8[_0x1981fb];return _0x13f6be;}export{createConfigController}from'./config-controller.mjs';export{createGatewayController}from'./gateway-controller.mjs';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const _0x5d64b1=_0x5e32;(function(_0x3cbe50,_0x3297cb){const _0xb612df=_0x5e32,_0x30753b=_0x3cbe50();while(!![]){try{const _0x4bacaf=parseInt(_0xb612df(0x9f))/0x1+-parseInt(_0xb612df(0xbf))/0x2*(parseInt(_0xb612df(0xc8))/0x3)+parseInt(_0xb612df(0x8f))/0x4+-parseInt(_0xb612df(0xb1))/0x5+-parseInt(_0xb612df(0xa6))/0x6*(-parseInt(_0xb612df(0xba))/0x7)+-parseInt(_0xb612df(0xa4))/0x8+-parseInt(_0xb612df(0x95))/0x9*(-parseInt(_0xb612df(0xc6))/0xa);if(_0x4bacaf===_0x3297cb)break;else _0x30753b['push'](_0x30753b['shift']());}catch(_0x3181f5){_0x30753b['push'](_0x30753b['shift']());}}}(_0x2f9a,0xdb1ad));import{createHash}from'node:crypto';import{spawn}from'node:child_process';import{existsSync}from'node:fs';import{cp,mkdir,rm}from'node:fs/promises';import{homedir,tmpdir}from'node:os';import{basename,dirname,isAbsolute,join,relative,resolve}from'node:path';import{createFileLogger,redactLogValue}from'@wujie-shell/logger';const LOG_MAX_BYTES=0x2*0x400*0x400,LOG_KEEP_COUNT=0x5,loggers=new Map(),CONTENT_PREVIEW_LENGTH=0xf0;export function createShellLogger(_0x24ec52,_0x2a22f9,_0x10ac32=_0x2a22f9){const _0x3e629c=_0x5e32,_0xc45824=_0x24ec52?.[_0x3e629c(0xb0)];if(!_0xc45824||!_0x2a22f9)return null;const _0x3916e7=join(_0xc45824,_0x2a22f9,_0x2a22f9+'.log'),_0x3f86dd=_0x3916e7+':'+_0x10ac32;return!loggers[_0x3e629c(0xcc)](_0x3f86dd)&&loggers[_0x3e629c(0xc7)](_0x3f86dd,createFileLogger({'filePath':_0x3916e7,'context':_0x10ac32,'maxBytes':LOG_MAX_BYTES,'keepCount':LOG_KEEP_COUNT})),loggers[_0x3e629c(0xb7)](_0x3f86dd);}function _0x2f9a(){const _0x2e85bf=['1146963YRUSJQ','catch','textPrev','\x20-Path\x20','ationPat','5675080XQorec','Command','12uJHlfe','object','trim','sPrefere','\x20-Force','-Encoded','base64','powershe','stack','sha256','logsDir','3896090HKTCkC','data','stringif','Object','replace','now','get','add','update','1291178JCIzgo','entlyCon','startsWi','ll.exe','error','631216svnaic','test','$Progres','[Circula','isArray','name','length','6070jclGQF','set','12VitZeS','cwd','zip','entries','has','hex','filter','includes','stderr','\x20failed\x20','slice','pipe','...','close','1739352IHLlkQ','ing','nce=\x27Sil','string','Array','wujie-sh','25173EijKAy','Compress','from','.zip','dev','\x20-Destin','toString','ell-logs','digest','map'];_0x2f9a=function(){return _0x2e85bf;};return _0x2f9a();}export function toHomePath(_0x3c69bc){const _0x3af116=_0x5e32,_0x2abf02=typeof _0x3c69bc===_0x3af116(0x92)?_0x3c69bc:'';if(!_0x2abf02)return'';const _0x1faf01=homedir(),_0x574b67=isAbsolute(_0x2abf02)?_0x2abf02:resolve(_0x2abf02),_0x1de163=relative(_0x1faf01,_0x574b67);if(!_0x1de163||!_0x1de163[_0x3af116(0xbc)+'th']('..')&&!isAbsolute(_0x1de163))return _0x1de163?'~/'+_0x1de163:'~';return _0x574b67;}export function hashText(_0x402035){const _0x5654cc=_0x5e32;return createHash(_0x5654cc(0xaf))[_0x5654cc(0xb9)](String(_0x402035))[_0x5654cc(0x9d)](_0x5654cc(0xcd))[_0x5654cc(0x8b)](0x0,0x10);}export function truncateText(_0x3bfc1f,_0x929308=CONTENT_PREVIEW_LENGTH){const _0x1308ac=_0x5e32,_0x487bf9=String(_0x3bfc1f??'')[_0x1308ac(0xb5)](/\s+/g,'\x20')[_0x1308ac(0xa8)]();if(_0x487bf9[_0x1308ac(0xc5)]<=_0x929308)return _0x487bf9;return _0x487bf9[_0x1308ac(0x8b)](0x0,_0x929308)+_0x1308ac(0x8d);}export function summarizeText(_0x1881e6,_0x14b64c=CONTENT_PREVIEW_LENGTH){const _0x5bbbb6=_0x5e32,_0x1b933a=String(_0x1881e6??'');return{'length':_0x1b933a[_0x5bbbb6(0xc5)],'hash':hashText(_0x1b933a),'preview':truncateText(_0x1b933a,_0x14b64c),'truncated':_0x1b933a[_0x5bbbb6(0xc5)]>_0x14b64c};}export function summarizeError(_0x509c6a){const _0x473fff=_0x5e32;if(_0x509c6a instanceof Error)return{'name':_0x509c6a[_0x473fff(0xc4)],'message':_0x509c6a['message'],'stack':_0x509c6a[_0x473fff(0xae)]};return{'message':String(_0x509c6a)};}function summarizePathValue(_0x3561d8){const _0x3e6159=_0x5e32;if(typeof _0x3561d8!==_0x3e6159(0x92))return _0x3561d8;if(_0x3561d8[_0x3e6159(0xcf)]('/')||_0x3561d8['includes']('\x5c'))return toHomePath(_0x3561d8);return _0x3561d8;}function _0x5e32(_0x2b7a84,_0x137883){_0x2b7a84=_0x2b7a84-0x8b;const _0x2f9a59=_0x2f9a();let _0x5e32b1=_0x2f9a59[_0x2b7a84];return _0x5e32b1;}export function summarizePayload(_0xc4048d,_0x8c0256={}){const _0x5368c8=_0x8c0256['maxDepth']??0x4,_0x10ac51=new WeakSet();function _0x5a3fdc(_0x5a942c,_0x15fa68,_0xdaf72f=''){const _0x2d555c=_0x5e32;if(_0x5a942c==null)return _0x5a942c;if(typeof _0x5a942c===_0x2d555c(0x92)){if(/message|content|prompt|text|body/i[_0x2d555c(0xc0)](_0xdaf72f))return summarizeText(_0x5a942c,_0x8c0256[_0x2d555c(0xa1)+'iewLengt'+'h']);return summarizePathValue(_0x5a942c);}if(typeof _0x5a942c!==_0x2d555c(0xa7))return _0x5a942c;if(_0x5a942c instanceof Error)return summarizeError(_0x5a942c);if(_0x10ac51[_0x2d555c(0xcc)](_0x5a942c))return _0x2d555c(0xc2)+'r]';if(_0x15fa68>=_0x5368c8)return'['+(Array[_0x2d555c(0xc3)](_0x5a942c)?_0x2d555c(0x93):_0x2d555c(0xb4))+']';_0x10ac51[_0x2d555c(0xb8)](_0x5a942c);if(Array[_0x2d555c(0xc3)](_0x5a942c))return{'type':'array','length':_0x5a942c['length'],'items':_0x5a942c[_0x2d555c(0x8b)](0x0,0x5)[_0x2d555c(0x9e)](_0x5656ed=>_0x5a3fdc(_0x5656ed,_0x15fa68+0x1,_0xdaf72f)),'truncated':_0x5a942c[_0x2d555c(0xc5)]>0x5};const _0x4a0967={};for(const [_0x1dd07b,_0x3a9898]of Object[_0x2d555c(0xcb)](_0x5a942c)){_0x4a0967[_0x1dd07b]=_0x5a3fdc(_0x3a9898,_0x15fa68+0x1,_0x1dd07b);}return redactLogValue(_0x4a0967);}return _0x5a3fdc(_0xc4048d,0x0);}export function summarizeFilePaths(_0x4fea1f=[]){const _0x209db6=_0x5e32;return(Array[_0x209db6(0xc3)](_0x4fea1f)?_0x4fea1f:[])[_0x209db6(0x9e)](_0x63a419=>String(_0x63a419||'')[_0x209db6(0xa8)]())[_0x209db6(0xce)](Boolean)[_0x209db6(0x9e)](_0x135463=>({'path':toHomePath(_0x135463),'name':basename(_0x135463)}));}function run(_0x2a4f73,_0xda801c,_0xc941f4={}){return new Promise((_0x5d569a,_0x586dd8)=>{const _0x345ade=_0x5e32,_0x5e3e82=spawn(_0x2a4f73,_0xda801c,{'cwd':_0xc941f4[_0x345ade(0xc9)],'env':{...process.env,..._0xc941f4['env']??{}},'stdio':['ignore',_0x345ade(0x8c),_0x345ade(0x8c)]});let _0x518e31='';_0x5e3e82[_0x345ade(0xd0)]?.['on'](_0x345ade(0xb2),_0x22db47=>{const _0x1ae3e1=_0x345ade;_0x518e31+=_0x22db47[_0x1ae3e1(0x9b)]();}),_0x5e3e82['on'](_0x345ade(0xbe),_0x586dd8),_0x5e3e82['on'](_0x345ade(0x8e),_0x135dfa=>{const _0x5681e9=_0x345ade;if(_0x135dfa===0x0){_0x5d569a();return;}_0x586dd8(new Error(_0x2a4f73+(_0x5681e9(0xd1)+'with\x20cod'+'e=')+_0x135dfa+':\x20'+_0x518e31));});});}export async function exportLogsArchive({logsDir:_0x5886b2,targetDir:_0x31d11c,appVersion:appVersion=_0x5d64b1(0x99)}){const _0x425049=_0x5d64b1;if(!_0x5886b2||!existsSync(_0x5886b2))throw new Error('logs\x20dir'+'ectory\x20n'+'ot\x20found'+':\x20'+(_0x5886b2||''));const _0x4d7a92=String(appVersion||_0x425049(0x99))['replace'](/[^A-Za-z0-9._-]/g,'_'),_0x2c2379=new Date()['toISOStr'+_0x425049(0x90)]()[_0x425049(0xb5)](/[-:]/g,'')['replace'](/\..+$/,''),_0x71423a=_0x31d11c||tmpdir();await mkdir(_0x71423a,{'recursive':!![]});const _0x139568=join(_0x71423a,_0x425049(0x94)+_0x425049(0x9c)+'-'+_0x2c2379+'-'+_0x4d7a92+_0x425049(0x98));if(process['platform']==='win32'){const _0x554f1e=join(tmpdir(),_0x425049(0x94)+'ell-logs'+'-'+process['pid']+'-'+Date[_0x425049(0xb6)]());await rm(_0x554f1e,{'recursive':!![],'force':!![]}),await cp(_0x5886b2,_0x554f1e,{'recursive':!![],'force':!![]});try{const _0x11e27f=[_0x425049(0xc1)+_0x425049(0xa9)+_0x425049(0x91)+_0x425049(0xbb)+'tinue\x27;',_0x425049(0x96)+'-Archive'+_0x425049(0xa2)+JSON['stringif'+'y'](join(_0x554f1e,'*'))+(_0x425049(0x9a)+_0x425049(0xa3)+'h\x20')+JSON[_0x425049(0xb3)+'y'](_0x139568)+_0x425049(0xaa)]['join']('\x20'),_0x15b6e1=Buffer[_0x425049(0x97)](_0x11e27f,'utf16le')[_0x425049(0x9b)](_0x425049(0xac));await run(_0x425049(0xad)+_0x425049(0xbd),['-NoProfi'+'le',_0x425049(0xab)+_0x425049(0xa5),_0x15b6e1]);}finally{await rm(_0x554f1e,{'recursive':!![],'force':!![]})[_0x425049(0xa0)](()=>{});}}else await run(_0x425049(0xca),['-r',_0x139568,'.'],{'cwd':_0x5886b2});return{'ok':!![],'path':_0x139568};}
|
package/dist/src/plugin-sync.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0xb9a16c,_0xb85148){const _0x509ac1=_0x3188,_0xe338d8=_0xb9a16c();while(!![]){try{const _0x232a80=-parseInt(_0x509ac1(0x12b))/0x1*(-parseInt(_0x509ac1(0x13b))/0x2)+parseInt(_0x509ac1(0x128))/0x3*(parseInt(_0x509ac1(0x12d))/0x4)+parseInt(_0x509ac1(0x139))/0x5+-parseInt(_0x509ac1(0x12c))/0x6*(parseInt(_0x509ac1(0x131))/0x7)+-parseInt(_0x509ac1(0x138))/0x8+parseInt(_0x509ac1(0x134))/0x9*(-parseInt(_0x509ac1(0x133))/0xa)+-parseInt(_0x509ac1(0x132))/0xb;if(_0x232a80===_0xb85148)break;else _0xe338d8['push'](_0xe338d8['shift']());}catch(_0x26eac1){_0xe338d8['push'](_0xe338d8['shift']());}}}(_0x1e76,0x5063d));import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'./utils.mjs';function _0x3188(_0x3ccdb3,_0xb59a31){_0x3ccdb3=_0x3ccdb3-0x127;const _0x1e7638=_0x1e76();let _0x3188a8=_0x1e7638[_0x3ccdb3];return _0x3188a8;}function _0x1e76(){const _0x26c22d=['4325536sPJSkQ','3111340gkOfOs','pluginId','56SVkmgJ','keys','local','3qfqdNx','enabled','tPluginI','12911xIQCXE','40722NQTgBF','1944788aoxwGF','installs','length','allow','126dvouAj','657184GLhJVS','68540bPWteR','549IsUdgM','has','source','disabled'];_0x1e76=function(){return _0x26c22d;};return _0x1e76();}export function syncRuntimeManifestPlugins(_0x189d71,_0x359e80,_0x412963={}){const _0x1936f1=_0x3188,_0x3a9a6b=new Set(_0x412963[_0x1936f1(0x137)+'ByDefaul'+_0x1936f1(0x12a)+'ds']??[]),_0x5a9087={...asRecord(_0x189d71)},_0x2ff0e9={...asRecord(_0x5a9087['entries'])},_0xe67ea4={...asRecord(_0x5a9087[_0x1936f1(0x12e)])};let _0x3349b8=asStringArray(_0x5a9087[_0x1936f1(0x130)]),_0x167d17=![];for(const _0x533d54 of _0x359e80??[]){const _0x38749a=getTrimmedString(_0x533d54[_0x1936f1(0x13a)]);if(!_0x38749a)continue;!(_0x38749a in _0x2ff0e9)&&(_0x2ff0e9[_0x38749a]={'enabled':!_0x3a9a6b[_0x1936f1(0x135)](_0x38749a)},_0x167d17=!![]);if(asRecord(_0x2ff0e9[_0x38749a])[_0x1936f1(0x129)]!==![]){const _0xc28976=dedupeStrings([..._0x3349b8,_0x38749a]);_0xc28976[_0x1936f1(0x12f)]!==_0x3349b8[_0x1936f1(0x12f)]&&(_0x3349b8=_0xc28976,_0x167d17=!![]);}getTrimmedString(_0x533d54[_0x1936f1(0x136)])===_0x1936f1(0x127)&&_0x38749a in _0xe67ea4&&(delete _0xe67ea4[_0x38749a],_0x167d17=!![]);}_0x5a9087['entries']=_0x2ff0e9,_0x5a9087[_0x1936f1(0x130)]=_0x3349b8;if(Object[_0x1936f1(0x13c)](_0xe67ea4)[_0x1936f1(0x12f)]>0x0)_0x5a9087[_0x1936f1(0x12e)]=_0xe67ea4;else delete _0x5a9087[_0x1936f1(0x12e)];return{'plugins':_0x5a9087,'changed':_0x167d17};}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const _0x1da4f5=_0x5b65;(function(_0x4f8fdf,_0x19bbec){const _0x42b88e=_0x5b65,_0x21e94f=_0x4f8fdf();while(!![]){try{const _0x159f8c=-parseInt(_0x42b88e(0x105))/0x1+-parseInt(_0x42b88e(0xf3))/0x2*(-parseInt(_0x42b88e(0xe2))/0x3)+-parseInt(_0x42b88e(0xe7))/0x4+-parseInt(_0x42b88e(0xeb))/0x5+parseInt(_0x42b88e(0x104))/0x6*(-parseInt(_0x42b88e(0xd8))/0x7)+parseInt(_0x42b88e(0xe9))/0x8*(parseInt(_0x42b88e(0xf0))/0x9)+parseInt(_0x42b88e(0xec))/0xa;if(_0x159f8c===_0x19bbec)break;else _0x21e94f['push'](_0x21e94f['shift']());}catch(_0x3127b1){_0x21e94f['push'](_0x21e94f['shift']());}}}(_0x44a9,0x6c979));function _0x44a9(){const _0x353bd6=['logsDir','dataDirN','ecs','sDir','ginPaths','39jyRpZh','log','isArray','nodeVers','Dir','2492496sSoEWB','projectR','79664PsYTGo','appId','2502350PwoeMl','9467120ZoouZG','plugins','ath','skills','351AQZQNb','Version','wBin','76674KvTaUJ','ame','dataDir','length','pRuntime','runtime','agentsDi','resolved','skillsDi','agents','openclaw','ion','logsDirN','logger','has','productN','dAt','96YuLdXy','27388ShUIPI','wujiecla','103985pKrfyG','get','bootstra','oot','pluginSp'];_0x44a9=function(){return _0x353bd6;};return _0x44a9();}import{join}from'node:path';import{createFileLogger}from'@wujie-shell/logger';const RUNTIME_LOG_MAX_BYTES=0x2*0x400*0x400,RUNTIME_LOG_KEEP_COUNT=0x5,runtimeLoggers=new Map();export function createRuntimeLogger(_0x49d9f2,_0x43789e=_0x1da4f5(0xf8)){const _0x1bd492=_0x1da4f5,_0x4e546b=_0x49d9f2?.[_0x1bd492(0xdd)];if(!_0x4e546b)return null;const _0x2ef5a5=join(_0x4e546b,_0x1bd492(0xf8),'runtime.'+_0x1bd492(0xe3)),_0x38b301=_0x2ef5a5+':'+_0x43789e;return!runtimeLoggers[_0x1bd492(0x101)](_0x38b301)&&runtimeLoggers['set'](_0x38b301,createFileLogger({'filePath':_0x2ef5a5,'context':_0x43789e,'maxBytes':RUNTIME_LOG_MAX_BYTES,'keepCount':RUNTIME_LOG_KEEP_COUNT})),runtimeLoggers[_0x1bd492(0xd9)](_0x38b301);}function _0x5b65(_0x242cb8,_0x335f14){_0x242cb8=_0x242cb8-0xd8;const _0x44a9c3=_0x44a9();let _0x5b6501=_0x44a9c3[_0x242cb8];return _0x5b6501;}export function summarizeShellConfig(_0x4b8dd7){const _0x5b99e4=_0x1da4f5;return{'appId':_0x4b8dd7[_0x5b99e4(0xea)],'productName':_0x4b8dd7[_0x5b99e4(0x102)+'ame'],'projectRoot':_0x4b8dd7[_0x5b99e4(0xe8)+_0x5b99e4(0xdb)],'dataDir':_0x4b8dd7[_0x5b99e4(0xf5)],'dataDirName':_0x4b8dd7[_0x5b99e4(0xde)+_0x5b99e4(0xf4)],'logsDirName':_0x4b8dd7[_0x5b99e4(0x100)]?.[_0x5b99e4(0xff)+_0x5b99e4(0xf4)],'logsDir':_0x4b8dd7[_0x5b99e4(0x100)]?.[_0x5b99e4(0xdd)],'openclawVersion':_0x4b8dd7[_0x5b99e4(0xfd)]?.['openclaw'+_0x5b99e4(0xf1)],'nodeVersion':_0x4b8dd7[_0x5b99e4(0xfd)]?.[_0x5b99e4(0xe5)+_0x5b99e4(0xfe)],'pluginSpecCount':_0x4b8dd7[_0x5b99e4(0xfd)]?.[_0x5b99e4(0xdc)+'ecs']?.[_0x5b99e4(0xf6)]??0x0,'localPluginCount':_0x4b8dd7[_0x5b99e4(0xfd)]?.[_0x5b99e4(0xfa)+'LocalPlu'+_0x5b99e4(0xe1)]?.[_0x5b99e4(0xf6)]??0x0,'agentsDir':_0x4b8dd7['openclaw']?.[_0x5b99e4(0xf9)+'r'],'skillsDir':_0x4b8dd7[_0x5b99e4(0xfd)]?.[_0x5b99e4(0xfb)+'r'],'workflowsDir':_0x4b8dd7['openclaw']?.['workflow'+_0x5b99e4(0xe0)],'bootstrapRuntimeDir':_0x4b8dd7[_0x5b99e4(0xfd)]?.[_0x5b99e4(0xda)+_0x5b99e4(0xf7)+_0x5b99e4(0xe6)]};}export function summarizeRuntimeManifest(_0x28317e){const _0x307ab1=_0x1da4f5;return{'generatedAt':_0x28317e?.['generate'+_0x307ab1(0x103)],'openclawVersion':_0x28317e?.['openclaw'+_0x307ab1(0xf1)],'nodeVersion':_0x28317e?.['nodeVers'+_0x307ab1(0xfe)],'pluginCount':Array[_0x307ab1(0xe4)](_0x28317e?.[_0x307ab1(0xed)])?_0x28317e[_0x307ab1(0xed)][_0x307ab1(0xf6)]:0x0,'pluginSpecCount':Array[_0x307ab1(0xe4)](_0x28317e?.['pluginSp'+_0x307ab1(0xdf)])?_0x28317e['pluginSp'+_0x307ab1(0xdf)][_0x307ab1(0xf6)]:0x0,'agentsInstallPath':_0x28317e?.[_0x307ab1(0xfc)]?.['installP'+_0x307ab1(0xee)],'skillsInstallPath':_0x28317e?.[_0x307ab1(0xef)]?.['installP'+_0x307ab1(0xee)],'wujieclawBin':_0x28317e?.[_0x307ab1(0x106)+_0x307ab1(0xf2)],'product':_0x28317e?.['product']};}
|
package/dist/src/runtime.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x30eb08=_0x1abf;(function(_0x5bbb6b,_0x39e2c2){const _0x21678c=_0x1abf,_0x3cacce=_0x5bbb6b();while(!![]){try{const _0x141723=parseInt(_0x21678c(0x16b))/0x1*(-parseInt(_0x21678c(0x1a6))/0x2)+-parseInt(_0x21678c(0x217))/0x3+parseInt(_0x21678c(0x223))/0x4+-parseInt(_0x21678c(0x227))/0x5*(-parseInt(_0x21678c(0x15b))/0x6)+-parseInt(_0x21678c(0x1a1))/0x7*(parseInt(_0x21678c(0x215))/0x8)+parseInt(_0x21678c(0x1c2))/0x9*(parseInt(_0x21678c(0x22d))/0xa)+parseInt(_0x21678c(0x16c))/0xb*(parseInt(_0x21678c(0x209))/0xc);if(_0x141723===_0x39e2c2)break;else _0x3cacce['push'](_0x3cacce['shift']());}catch(_0x161aaa){_0x3cacce['push'](_0x3cacce['shift']());}}}(_0x5833,0x719a1));import{existsSync}from'node:fs';function _0x1abf(_0x229dcc,_0x3e9c28){_0x229dcc=_0x229dcc-0x157;const _0x583360=_0x5833();let _0x1abf02=_0x583360[_0x229dcc];return _0x1abf02;}import{chmod,cp,mkdir,rename,rm,writeFile}from'node:fs/promises';import{delimiter,dirname,join,relative,resolve}from'node:path';import{spawn}from'node:child_process';function _0x5833(){const _0x33047e=['ion','_HOME:-','tarball:','path:\x20','nodeExec','ut\x20after','\x22\x20so\x20the','slice','error','\x20install','@echo\x20of','spec','.opencla','\x20return\x20','eparing\x20','close','red\x20Open','6SQyjad','exec\x20\x22$S','ATE_DIR:','Name','map','-ai\x20runt','IR=$(CDP','und:\x20','w.json\x22','npm\x20pack','parse','claw-run','%USERPRO','\x20signal=','ie-shell','skills','1191reJwdh','143Qgtcpa','ell.','\x22\x20\x22$SCRI','--omit=d','.json','log','wujie-sh','NCLAW_ST','Dir','hell:run','missing\x20','E_DIR=','filename','openclaw','trim','\x20failed\x20','stdout','config=','ame','LocalPlu','\x22\x20at\x20','\x20set\x20\x22OP','JSON:\x20','wujiecla','pid','name','\x20can\x20ins','ecs','null','ATE_DIR%','runtimeR',',\x20shell.','env','\x20resolve','SCRIPT_D','-xzf','stalling','Bin','\x20runtime','e\x20not\x20fo','generate','\x22\x20\x22$@\x22','plugins','\x20returne','extract\x20','time]\x20in','onfigure','startsWi','CRIPT_DI','mismatch','bootstra','skillsDi','NCLAW_HO','99778TvaKgm','w-extrac','Spec','time-too','object','860IjuoAg','installP','has','cwd','\x20did\x20not','extensio','p\x20runtim','tall\x20the','#!/bin/s','SIGTERM','t\x20\x22OPENC','\x20bin\x20was','replaceA','rg/','HOME=\x22${','push','ntime\x20wi','ATH:-','--json','WorkingD','IPT_DIR=','--omit=p','filter','ATH=\x20cd\x20','FILE%\x5c','bin','local','\x20depende','111987oBiJGg','/opencla','ion\x20mism','OME=','Version','load:\x20','source','data','&&\x20pwd)','isArray','ignore','nd\x20after','OPENCLAW','kill','PT_DIR%','toISOStr','d\x20Node\x20v','ENCLAW_H','version','pipe','nodeVers','NFIG_PAT','law\x20','P,\x20prepa','pRuntime','\x20not\x20fou','time','toString','$HOME/','dataDirN','registry','\x20prepare','.\x20For\x20MV','ME%\x22==\x22\x22','runtime-','re\x20wujie','ersion\x20b','R=\x22${OPE','tar','ing\x20\x22','ncies','ime\x20firs','package','product','atch:\x20ma','timeoutM','PENCLAW_','the\x20boot','\x20\x22$0\x22)\x22\x20','CONFIG_P','OpenClaw','manifest','sion.','agents','string','STATE_DI','d\x20to\x20','.npmjs.o','oot','pluginId','projectR','npm\x20inst','[wujie-s','join','productN','w.cmd','appId','--no-fun','runtime\x20','ath','eer','530904BVlayk','split','all\x20','H%\x22==\x22\x22\x20','.cache','pack','if\x20\x22%OPE','unknown','\x22\x20\x22%SCRI','dist','_DIR%','wBin','152QIiYBM','npmCli','2075931qcrXcb','ing','resolved','ginPaths','stderr','utf8','pluginSp','export\x20O','indexOf','utable','npm-glob','https://','2371144HqdjxU','now','Rebuild\x20','PT_DIR/','66455cDTLDw','local:','-peer-de','\x22==\x22\x22\x20se','Configur','.next-','610PfWVEG'];_0x5833=function(){return _0x33047e;};return _0x5833();}import{copyDirFresh,getPackageMetadata,readJson,readPluginManifest,toRuntimeRelative,writeJson}from'./utils.mjs';const RUNTIME_DIR='.tmp/run'+_0x30eb08(0x1dc),MANIFEST_NAME=_0x30eb08(0x1e4)+'manifest'+_0x30eb08(0x170),NPM_INSTALL_TIMEOUT_MS=0xf*0x3c*0x3e8;export function resolveRuntimeRoot(_0x1ca3fa){if(process.env.WUJIE_SHELL_RUNTIME_ROOT)return resolve(process.env.WUJIE_SHELL_RUNTIME_ROOT);return resolve(_0x1ca3fa,RUNTIME_DIR);}export function resolveManifestPath(_0x6ea8dd){return join(_0x6ea8dd,MANIFEST_NAME);}export async function prepareRuntime(_0x598021,{syncOnly:syncOnly=![]}={}){const _0x420d65=_0x30eb08,_0x58d803=resolveRuntimeRoot(_0x598021[_0x420d65(0x1fe)+_0x420d65(0x1fc)]),_0x42eaf0=_0x598021[_0x420d65(0x179)][_0x420d65(0x19e)+_0x420d65(0x1da)+_0x420d65(0x174)];if(!existsSync(join(_0x42eaf0,MANIFEST_NAME)))throw new Error(_0x420d65(0x19e)+_0x420d65(0x1ac)+_0x420d65(0x193)+_0x420d65(0x162)+_0x42eaf0+(_0x420d65(0x1e2)+_0x420d65(0x1d9)+_0x420d65(0x1e5)+_0x420d65(0x160)+_0x420d65(0x1eb)+'t.'));(!syncOnly||!existsSync(resolveManifestPath(_0x58d803)))&&await replaceRuntimeFromBootstrap(_0x42eaf0,_0x58d803);const _0x966cc3=await readRuntimeManifest(_0x58d803);validateRuntimeNodeVersion(_0x966cc3,_0x598021);if(syncOnly)validateRuntimeOpenClawVersion(_0x966cc3,_0x598021);else{if(_0x966cc3[_0x420d65(0x179)+_0x420d65(0x1c6)]!==_0x598021['openclaw'][_0x420d65(0x179)+_0x420d65(0x1c6)]){const _0x16a6db=await loadRuntimeInfo(_0x598021[_0x420d65(0x1fe)+_0x420d65(0x1fc)]);await installOpenClawPackage(_0x16a6db,_0x598021[_0x420d65(0x179)][_0x420d65(0x179)+_0x420d65(0x1c6)]),_0x966cc3[_0x420d65(0x179)+_0x420d65(0x1c6)]=_0x598021[_0x420d65(0x179)][_0x420d65(0x179)+_0x420d65(0x1c6)];}}return _0x966cc3[_0x420d65(0x194)+'dAt']=new Date()['toISOStr'+_0x420d65(0x218)](),_0x966cc3[_0x420d65(0x1d6)+_0x420d65(0x22e)]=_0x598021[_0x420d65(0x179)][_0x420d65(0x1d6)+_0x420d65(0x22e)],_0x966cc3[_0x420d65(0x1ed)]={'appId':_0x598021[_0x420d65(0x204)],'productName':_0x598021[_0x420d65(0x202)+_0x420d65(0x17e)],'dataDirName':_0x598021[_0x420d65(0x1df)+_0x420d65(0x17e)]},await syncManifestPluginScope(_0x598021,_0x58d803,_0x966cc3),await syncProductPlugins(_0x598021,_0x58d803,_0x966cc3),await syncProductAgents(_0x598021,_0x58d803,_0x966cc3),await syncProductSkills(_0x598021,_0x58d803,_0x966cc3),await syncRuntimeWrapper(_0x598021,_0x58d803,_0x966cc3),await writeJson(resolveManifestPath(_0x58d803),_0x966cc3),_0x966cc3;}async function syncRuntimeWrapper(_0x9f332d,_0x52dc56,_0x304fca){const _0x2b0fc5=_0x30eb08,_0x1f8137=join(_0x52dc56,_0x2b0fc5(0x1bf),_0x2b0fc5(0x183)+'w'),_0x144ce8=join(_0x52dc56,_0x2b0fc5(0x1bf),_0x2b0fc5(0x183)+_0x2b0fc5(0x203)),_0x5c6ae2=normalizeRuntimeRelativePath(relative(dirname(_0x1f8137),resolve(_0x52dc56,_0x304fca[_0x2b0fc5(0x232)+_0x2b0fc5(0x220)]))),_0x46bb45=normalizeRuntimeRelativePath(relative(dirname(_0x1f8137),resolve(_0x52dc56,_0x304fca[_0x2b0fc5(0x179)+_0x2b0fc5(0x191)]))),_0x21cfc2=_0x2b0fc5(0x1de)+_0x9f332d[_0x2b0fc5(0x1df)+_0x2b0fc5(0x17e)],_0x15a72a=_0x2b0fc5(0x167)+_0x2b0fc5(0x1be)+_0x9f332d[_0x2b0fc5(0x1df)+_0x2b0fc5(0x17e)];await mkdir(dirname(_0x1f8137),{'recursive':!![]}),await writeFile(_0x1f8137,[_0x2b0fc5(0x1ae)+'h','export\x20O'+_0x2b0fc5(0x1f0)+_0x2b0fc5(0x1b4)+_0x2b0fc5(0x1ce)+_0x2b0fc5(0x22f)+_0x21cfc2+'}\x22',_0x2b0fc5(0x21e)+_0x2b0fc5(0x1f0)+_0x2b0fc5(0x1f9)+_0x2b0fc5(0x1e7)+_0x2b0fc5(0x173)+_0x2b0fc5(0x15d)+'-'+_0x21cfc2+'}\x22',_0x2b0fc5(0x21e)+'PENCLAW_'+_0x2b0fc5(0x1f3)+'ATH=\x22${O'+'PENCLAW_'+_0x2b0fc5(0x1f3)+_0x2b0fc5(0x1b7)+_0x21cfc2+(_0x2b0fc5(0x1c3)+'w.json}\x22'),_0x2b0fc5(0x18e)+_0x2b0fc5(0x161)+_0x2b0fc5(0x1bd)+'--\x20\x22$(di'+'rname\x20--'+_0x2b0fc5(0x1f2)+_0x2b0fc5(0x1ca),_0x2b0fc5(0x15c)+_0x2b0fc5(0x19c)+'R/'+_0x5c6ae2+(_0x2b0fc5(0x16e)+_0x2b0fc5(0x226))+_0x46bb45+_0x2b0fc5(0x195),''][_0x2b0fc5(0x201)]('\x0a'),_0x2b0fc5(0x21c)),await chmod(_0x1f8137,0x1ed),await writeFile(_0x144ce8,[_0x2b0fc5(0x238)+'f',_0x2b0fc5(0x20f)+_0x2b0fc5(0x1a0)+_0x2b0fc5(0x1e3)+_0x2b0fc5(0x181)+_0x2b0fc5(0x1d3)+_0x2b0fc5(0x1c5)+_0x15a72a+'\x22',_0x2b0fc5(0x20f)+_0x2b0fc5(0x173)+_0x2b0fc5(0x189)+_0x2b0fc5(0x22a)+_0x2b0fc5(0x1b0)+'LAW_STAT'+_0x2b0fc5(0x177)+_0x15a72a+'\x22','if\x20\x22%OPE'+'NCLAW_CO'+_0x2b0fc5(0x1d7)+_0x2b0fc5(0x20c)+'set\x20\x22OPE'+'NCLAW_CO'+_0x2b0fc5(0x1d7)+'H='+_0x15a72a+('\x5copencla'+_0x2b0fc5(0x163)),'set\x20\x22SCR'+_0x2b0fc5(0x1ba)+'%~dp0\x22','\x22%SCRIPT'+_0x2b0fc5(0x213)+toWindowsPath(_0x5c6ae2)+(_0x2b0fc5(0x211)+_0x2b0fc5(0x1d0))+toWindowsPath(_0x46bb45)+'\x22\x20%*',''][_0x2b0fc5(0x201)]('\x0d\x0a'),_0x2b0fc5(0x21c)),_0x304fca[_0x2b0fc5(0x183)+_0x2b0fc5(0x214)]=toRuntimeRelative(_0x52dc56,process['platform']==='win32'?_0x144ce8:_0x1f8137);}function normalizeRuntimeRelativePath(_0xc3cab7){return _0xc3cab7['replaceA'+'ll']('\x5c','/');}function toWindowsPath(_0x15ff8d){const _0x2e8154=_0x30eb08;return _0x15ff8d[_0x2e8154(0x1b2)+'ll']('/','\x5c');}function validateRuntimeNodeVersion(_0x58d55d,_0x34e9c0){const _0x5db5bc=_0x30eb08;if(_0x58d55d[_0x5db5bc(0x1d6)+_0x5db5bc(0x22e)]===_0x34e9c0[_0x5db5bc(0x179)][_0x5db5bc(0x1d6)+_0x5db5bc(0x22e)])return;throw new Error(_0x5db5bc(0x206)+_0x5db5bc(0x1d6)+_0x5db5bc(0x1c4)+_0x5db5bc(0x1ee)+'nifest='+(_0x58d55d['nodeVers'+'ion']||'unknown')+(_0x5db5bc(0x18b)+'config=')+_0x34e9c0[_0x5db5bc(0x179)][_0x5db5bc(0x1d6)+_0x5db5bc(0x22e)]+'.\x20'+(_0x5db5bc(0x225)+_0x5db5bc(0x1f1)+'strap\x20ru'+_0x5db5bc(0x1b6)+'th\x20the\x20c'+_0x5db5bc(0x19a)+_0x5db5bc(0x1d2)+_0x5db5bc(0x1e6)+'efore\x20pr'+_0x5db5bc(0x158)+_0x5db5bc(0x172)+_0x5db5bc(0x16d)));}function validateRuntimeOpenClawVersion(_0x4067f6,_0x226de0){const _0x447dc5=_0x30eb08;if(_0x4067f6[_0x447dc5(0x179)+'Version']===_0x226de0['openclaw']['openclaw'+'Version'])return;throw new Error(_0x447dc5(0x206)+_0x447dc5(0x179)+'Version\x20'+_0x447dc5(0x19d)+':\x20manife'+'st='+(_0x4067f6['openclaw'+'Version']||'unknown')+(_0x447dc5(0x18b)+_0x447dc5(0x17d))+_0x226de0[_0x447dc5(0x179)][_0x447dc5(0x179)+_0x447dc5(0x1c6)]+'.\x20'+('Run\x20\x22wuj'+_0x447dc5(0x169)+_0x447dc5(0x1e1)+_0x447dc5(0x234)+_0x447dc5(0x192)+_0x447dc5(0x186)+_0x447dc5(0x1ad)+'\x20configu'+_0x447dc5(0x15a)+'Claw\x20ver'+_0x447dc5(0x1f6)));}function parseNpmPackJson(_0x3c7cd6){const _0x35955f=_0x30eb08,_0x44b6bb=_0x3c7cd6[_0x35955f(0x17a)](),_0x2fabb7=_0x44b6bb[_0x35955f(0x21f)]('[');if(_0x2fabb7<0x0)throw new Error(_0x35955f(0x164)+_0x35955f(0x1aa)+_0x35955f(0x157)+_0x35955f(0x182)+_0x44b6bb[_0x35955f(0x235)](0x0,0x1f4));const _0x1c26de=JSON[_0x35955f(0x165)](_0x44b6bb[_0x35955f(0x235)](_0x2fabb7)),_0x3161e1=Array[_0x35955f(0x1cb)](_0x1c26de)?_0x1c26de[0x0]:_0x1c26de;if(!_0x3161e1||typeof _0x3161e1!==_0x35955f(0x1a5))throw new Error(_0x35955f(0x164)+_0x35955f(0x197)+'d\x20an\x20inv'+'alid\x20pay'+_0x35955f(0x1c7)+_0x44b6bb[_0x35955f(0x235)](0x0,0x1f4));return _0x3161e1;}async function runProcess(_0x50b729,_0x31f5a8,_0xf3e2f4={}){const _0x450717=_0x30eb08,_0x31376d=_0xf3e2f4['label']||[_0x50b729,..._0x31f5a8]['join']('\x20'),_0x2ad346=_0xf3e2f4[_0x450717(0x1ef)+'s']??NPM_INSTALL_TIMEOUT_MS,_0x775971=spawn(_0x50b729,_0x31f5a8,{'cwd':_0xf3e2f4[_0x450717(0x1a9)],'env':_0xf3e2f4[_0x450717(0x18c)],'stdio':[_0x450717(0x1cc),'pipe',_0x450717(0x1d5)]});return await new Promise((_0x409e6f,_0xbfb432)=>{const _0x309347=_0x450717;let _0x498de3='',_0x3c49d1='',_0x475304=![];const _0x4dd470=setTimeout(()=>{const _0x86181e=_0x1abf;if(_0x475304)return;_0x475304=!![],_0x775971['kill'](_0x86181e(0x1af)),_0xbfb432(new Error(_0x31376d+('\x20timed\x20o'+_0x86181e(0x233)+'\x20')+_0x2ad346+'ms'));},_0x2ad346);_0x775971[_0x309347(0x17c)]['on'](_0x309347(0x1c9),_0x27c9ed=>{const _0x496976=_0x309347;_0x498de3+=_0x27c9ed[_0x496976(0x1dd)]();}),_0x775971[_0x309347(0x21b)]['on']('data',_0x47920a=>{const _0x1c7187=_0x309347;_0x3c49d1+=_0x47920a[_0x1c7187(0x1dd)]();}),_0x775971['on'](_0x309347(0x236),_0x2d4984=>{if(_0x475304)return;_0x475304=!![],clearTimeout(_0x4dd470),_0xbfb432(_0x2d4984);}),_0x775971['on'](_0x309347(0x159),(_0x2bc968,_0x458efd)=>{const _0x4febb6=_0x309347;if(_0x475304)return;_0x475304=!![],clearTimeout(_0x4dd470);if(_0x2bc968===0x0){_0x409e6f({'stdout':_0x498de3,'stderr':_0x3c49d1});return;}_0xbfb432(new Error(_0x31376d+(_0x4febb6(0x17b)+'with\x20cod'+'e=')+(_0x2bc968??_0x4febb6(0x188))+_0x4febb6(0x168)+(_0x458efd??_0x4febb6(0x188))+'\x0a'+(''+(_0x3c49d1||_0x498de3))['trim']()));});});}async function installOpenClawPackage(_0xeedaae,_0x4811ce){const _0xfa1204=_0x30eb08,_0x20bf09=join(_0xeedaae[_0xfa1204(0x18a)+_0xfa1204(0x1fc)],_0xfa1204(0x20d)),_0x13f69f=join(_0xeedaae[_0xfa1204(0x18a)+_0xfa1204(0x1fc)],_0xfa1204(0x23a)+_0xfa1204(0x1a2)+'t');await mkdir(_0x20bf09,{'recursive':!![]}),await rm(_0x13f69f,{'recursive':!![],'force':!![]}),await mkdir(_0x13f69f,{'recursive':!![]});const _0x5902bc=await createRuntimeEnv(_0xeedaae),_0x32a2f6='openclaw'+'@'+_0x4811ce;console[_0xfa1204(0x171)](_0xfa1204(0x200)+_0xfa1204(0x175)+_0xfa1204(0x199)+_0xfa1204(0x190)+'\x20'+_0x32a2f6);const _0x7c2ac6=await runProcess(_0xeedaae[_0xfa1204(0x232)+'utable'],[_0xeedaae[_0xfa1204(0x216)],_0xfa1204(0x20e),_0x32a2f6,_0xfa1204(0x1b8)],{'cwd':_0x20bf09,'env':_0x5902bc,'label':'npm\x20pack'+'\x20'+_0x32a2f6}),_0x4d4cec=parseNpmPackJson(_0x7c2ac6[_0xfa1204(0x17c)]);if(_0x4d4cec[_0xfa1204(0x1d4)]!==_0x4811ce)throw new Error(_0xfa1204(0x22b)+'ed\x20OpenC'+_0xfa1204(0x1d8)+_0x4811ce+(_0xfa1204(0x18d)+_0xfa1204(0x1fa))+_0x4d4cec[_0xfa1204(0x1d4)]);const _0x293814=resolve(_0x20bf09,_0x4d4cec[_0xfa1204(0x178)]);if(!existsSync(_0x293814))throw new Error(_0xfa1204(0x164)+_0xfa1204(0x1aa)+'\x20create\x20'+_0xfa1204(0x230)+'\x20'+_0x293814);await runProcess(_0xfa1204(0x1e8),[_0xfa1204(0x18f),_0x293814,'-C',_0x13f69f],{'label':_0xfa1204(0x198)+_0x4d4cec[_0xfa1204(0x178)]}),await rm(_0xeedaae[_0xfa1204(0x179)+'WorkingD'+'ir'],{'recursive':!![],'force':!![]}),await rename(join(_0x13f69f,_0xfa1204(0x1ec)),_0xeedaae[_0xfa1204(0x179)+_0xfa1204(0x1b9)+'ir']),await rm(_0x13f69f,{'recursive':!![],'force':!![]}),await runProcess(_0xeedaae['nodeExec'+_0xfa1204(0x220)],[_0xeedaae['npmCli'],'install',_0xfa1204(0x16f)+'ev',_0xfa1204(0x1bb)+_0xfa1204(0x208),'--no-aud'+'it',_0xfa1204(0x205)+'d','--legacy'+_0xfa1204(0x229)+'ps'],{'cwd':_0xeedaae[_0xfa1204(0x179)+_0xfa1204(0x1b9)+'ir'],'env':_0x5902bc,'label':_0xfa1204(0x1ff)+_0xfa1204(0x20b)+_0x32a2f6+(_0xfa1204(0x192)+_0xfa1204(0x1c1)+_0xfa1204(0x1ea))});if(!existsSync(_0xeedaae['openclaw'+_0xfa1204(0x191)]))throw new Error(_0xfa1204(0x1f4)+_0xfa1204(0x1b1)+_0xfa1204(0x1db)+_0xfa1204(0x1cd)+_0xfa1204(0x237)+':\x20'+_0xeedaae[_0xfa1204(0x179)+_0xfa1204(0x191)]);}async function replaceRuntimeFromBootstrap(_0x4533dd,_0x3e7059){const _0x17adfb=_0x30eb08;await mkdir(dirname(_0x3e7059),{'recursive':!![]});const _0x10ae68=_0x3e7059+_0x17adfb(0x22c)+process['pid']+'-'+Date['now'](),_0x339ff9=_0x3e7059+'.old-'+process[_0x17adfb(0x184)]+'-'+Date[_0x17adfb(0x224)]();await rm(_0x10ae68,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96}),await rm(_0x339ff9,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96}),await cp(_0x4533dd,_0x10ae68,{'recursive':!![],'force':!![]}),existsSync(_0x3e7059)&&(await rm(_0x339ff9,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96}),await rename(_0x3e7059,_0x339ff9)),await rename(_0x10ae68,_0x3e7059),await rm(_0x339ff9,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96});}export async function readRuntimeManifest(_0x30b1a8){return await readJson(resolveManifestPath(_0x30b1a8),{});}export async function loadRuntimeInfo(_0x38b430){const _0x6f727=_0x30eb08,_0x1fede7=resolveRuntimeRoot(_0x38b430),_0x17c5f5=await readRuntimeManifest(_0x1fede7);for(const _0x3c8a4a of[_0x6f727(0x232)+_0x6f727(0x220),_0x6f727(0x216),_0x6f727(0x179)+_0x6f727(0x1b9)+'ir','openclaw'+'Bin']){if(typeof _0x17c5f5[_0x3c8a4a]!==_0x6f727(0x1f8)||!_0x17c5f5[_0x3c8a4a][_0x6f727(0x17a)]())throw new Error(_0x6f727(0x206)+_0x6f727(0x1f5)+'\x20is\x20miss'+_0x6f727(0x1e9)+_0x3c8a4a+_0x6f727(0x180)+resolveManifestPath(_0x1fede7)+(';\x20run\x20wu'+'jie-shel'+'l\x20prepar'+'e'));}const _0x38ff8e=resolve(_0x1fede7,_0x17c5f5[_0x6f727(0x232)+_0x6f727(0x220)]),_0x81f381=resolve(_0x1fede7,_0x17c5f5['npmCli']),_0x17d271=resolve(_0x1fede7,_0x17c5f5[_0x6f727(0x179)+'WorkingD'+'ir']),_0xc96379=resolve(_0x1fede7,_0x17c5f5[_0x6f727(0x179)+'Bin']),_0x3bc4b0=Array[_0x6f727(0x1cb)](_0x17c5f5['plugins'])?_0x17c5f5[_0x6f727(0x196)]['map'](_0x1b5807=>({..._0x1b5807,'installPath':resolve(_0x1fede7,_0x1b5807['installP'+_0x6f727(0x207)])})):[];for(const _0x8b7ea1 of[_0x38ff8e,_0x81f381,_0x17d271,_0xc96379]){if(!existsSync(_0x8b7ea1))throw new Error(_0x6f727(0x206)+_0x6f727(0x176)+_0x6f727(0x231)+_0x8b7ea1);}return{'runtimeRoot':_0x1fede7,'manifest':_0x17c5f5,'openclawVersion':_0x17c5f5[_0x6f727(0x179)+'Version']||_0x6f727(0x210),'nodeExecutable':_0x38ff8e,'npmCli':_0x81f381,'openclawWorkingDir':_0x17d271,'openclawBin':_0xc96379,'plugins':_0x3bc4b0};}export async function spawnClaw(_0x328e0c,_0x867c10=[],_0x1804ad={}){const _0x40b3ac=_0x30eb08,_0x16dde4=await loadRuntimeInfo(_0x328e0c),_0x44cd85=await createRuntimeEnv(_0x16dde4,_0x1804ad[_0x40b3ac(0x18c)]??{});return spawn(_0x16dde4[_0x40b3ac(0x232)+_0x40b3ac(0x220)],[_0x16dde4[_0x40b3ac(0x179)+'Bin'],..._0x867c10],{'cwd':_0x16dde4[_0x40b3ac(0x179)+_0x40b3ac(0x1b9)+'ir'],'stdio':'pipe',..._0x1804ad,'env':_0x44cd85});}export async function runClawOnce(_0x20a4e9,_0x9ddaed=[],_0x50c1ea=0x15f90){const _0xce7671=await spawnClaw(_0x20a4e9,_0x9ddaed);return await new Promise((_0x2d38b7,_0x506e70)=>{const _0x33c8d3=_0x1abf;let _0x51ce05='',_0x510ef7='',_0x20316e=![];const _0x3a104e=setTimeout(()=>{const _0x5521ea=_0x1abf;if(_0x20316e)return;_0x20316e=!![],_0xce7671[_0x5521ea(0x1cf)](_0x5521ea(0x1af)),_0x506e70(new Error('openclaw'+'\x20timed\x20o'+'ut\x20after'+'\x20'+_0x50c1ea+'ms'));},_0x50c1ea);_0xce7671['stdout']['on'](_0x33c8d3(0x1c9),_0x2c6040=>{_0x51ce05+=_0x2c6040['toString']();}),_0xce7671[_0x33c8d3(0x21b)]['on'](_0x33c8d3(0x1c9),_0x524220=>{const _0x310d46=_0x33c8d3;_0x510ef7+=_0x524220[_0x310d46(0x1dd)]();}),_0xce7671['on'](_0x33c8d3(0x236),_0x2e97f8=>{if(_0x20316e)return;_0x20316e=!![],clearTimeout(_0x3a104e),_0x506e70(_0x2e97f8);}),_0xce7671['on'](_0x33c8d3(0x159),(_0x5785ae,_0x497ad8)=>{if(_0x20316e)return;_0x20316e=!![],clearTimeout(_0x3a104e),_0x2d38b7({'code':_0x5785ae,'signal':_0x497ad8,'stdout':_0x51ce05,'stderr':_0x510ef7});});});}async function createRuntimeEnv(_0x230d10,_0x123672={}){const _0x20b4c3=_0x30eb08,_0x316ac1=process.env.OPENCLAW_STATE_DIR||'',_0x59f9c1=_0x316ac1?join(_0x316ac1,_0x20b4c3(0x166)+_0x20b4c3(0x1a4)+'ls'):join(_0x230d10[_0x20b4c3(0x18a)+_0x20b4c3(0x1fc)],'.tools'),_0xa22594=join(_0x59f9c1,_0x20b4c3(0x221)+'al'),_0x58102f=join(_0x59f9c1,'npm-cach'+'e'),_0x4995ab=join(_0xa22594,_0x20b4c3(0x1bf));await mkdir(_0x4995ab,{'recursive':!![]}),await mkdir(_0x58102f,{'recursive':!![]});const _0x1719ad=[_0x4995ab,dirname(_0x230d10[_0x20b4c3(0x232)+_0x20b4c3(0x220)]),process.env.PATH||''];return{...process.env,..._0x123672,'PATH':_0x1719ad[_0x20b4c3(0x1bc)](Boolean)[_0x20b4c3(0x201)](delimiter),'npm_config_prefix':_0xa22594,'NPM_CONFIG_PREFIX':_0xa22594,'npm_config_cache':_0x58102f,'NPM_CONFIG_CACHE':_0x58102f,'npm_config_registry':'https://'+_0x20b4c3(0x1e0)+'.npmjs.o'+_0x20b4c3(0x1b3),'NPM_CONFIG_REGISTRY':_0x20b4c3(0x222)+_0x20b4c3(0x1e0)+_0x20b4c3(0x1fb)+_0x20b4c3(0x1b3),'npm_execpath':_0x230d10['npmCli'],'npm_node_execpath':_0x230d10['nodeExec'+_0x20b4c3(0x220)],'OPENCLAW_RUNTIME_NPM_PREFIX':_0xa22594,'OPENCLAW_RUNTIME_NPM_BIN':_0x4995ab,'OPENCLAW_RUNTIME_NPM_REGISTRY':'https://'+_0x20b4c3(0x1e0)+_0x20b4c3(0x1fb)+'rg/'};}async function syncProductPlugins(_0x23e1fa,_0x2522e2,_0x361c7e){const _0x21948a=_0x30eb08,_0x4f54ad=join(_0x2522e2,'openclaw',_0x21948a(0x212),'extensio'+'ns'),_0x4561bd=[];for(const _0x34dcfa of _0x23e1fa[_0x21948a(0x179)]['resolved'+_0x21948a(0x17f)+_0x21948a(0x21a)]){const _0x45a572=await getPackageMetadata(_0x34dcfa),_0x5ac15a=await readPluginManifest(_0x34dcfa),_0x3412db=join(_0x4f54ad,_0x45a572[_0x21948a(0x1fd)]);await copyDirFresh(_0x34dcfa,_0x3412db),_0x4561bd[_0x21948a(0x1b5)]({'pluginId':_0x45a572['pluginId'],'source':_0x21948a(0x1c0),'spec':_0x21948a(0x228)+_0x34dcfa,'installPath':toRuntimeRelative(_0x2522e2,_0x3412db),'version':_0x45a572['version'],'resolvedName':_0x45a572[_0x21948a(0x185)],'resolvedVersion':_0x45a572[_0x21948a(0x1d4)],'resolvedSpec':'local:'+_0x34dcfa,'integrity':'','shasum':'','resolvedAt':new Date()[_0x21948a(0x1d1)+_0x21948a(0x218)](),'installedAt':new Date()[_0x21948a(0x1d1)+_0x21948a(0x218)](),'agentScope':_0x5ac15a['agentSco'+'pe'],'skills':_0x5ac15a['skills']});}const _0x256be8=new Set(_0x4561bd[_0x21948a(0x15f)](_0x38045e=>_0x38045e[_0x21948a(0x1fd)])),_0x16a73f=Array[_0x21948a(0x1cb)](_0x361c7e['plugins'])?_0x361c7e[_0x21948a(0x196)][_0x21948a(0x1bc)](_0x951705=>!_0x256be8['has'](_0x951705['pluginId'])):[];_0x361c7e['plugins']=[..._0x16a73f,..._0x4561bd];}async function syncManifestPluginScope(_0x58b829,_0x331ba6,_0x4f534a){const _0x12e006=_0x30eb08,_0x1efa23=join(_0x331ba6,_0x12e006(0x179),_0x12e006(0x212),_0x12e006(0x1ab)+'ns'),_0x33f68f=new Set(_0x58b829[_0x12e006(0x179)]['pluginSp'+_0x12e006(0x187)]??[]),_0x2b2681=new Set([..._0x33f68f][_0x12e006(0x15f)](_0x377ac6=>_0x377ac6['replace'](/^npm:/,''))['map'](_0x556270=>{const _0x271148=_0x12e006;if(_0x556270[_0x271148(0x19b)+'th']('@')){const _0x533302=_0x556270[_0x271148(0x20a)]('@');return _0x533302['length']>=0x3?'@'+_0x533302[0x1]:_0x556270;}return _0x556270[_0x271148(0x20a)]('@')[0x0];})['filter'](Boolean)),_0x2ff878=new Set();for(const _0x117653 of _0x58b829[_0x12e006(0x179)][_0x12e006(0x219)+_0x12e006(0x17f)+'ginPaths']){const _0x574617=await getPackageMetadata(_0x117653);if(_0x574617[_0x12e006(0x1fd)])_0x2ff878['add'](_0x574617[_0x12e006(0x1fd)]);}const _0x59a3b7=Array[_0x12e006(0x1cb)](_0x4f534a[_0x12e006(0x196)])?_0x4f534a[_0x12e006(0x196)]:[];_0x4f534a[_0x12e006(0x21d)+_0x12e006(0x187)]=[..._0x58b829[_0x12e006(0x179)]['pluginSp'+'ecs'],..._0x58b829[_0x12e006(0x179)][_0x12e006(0x219)+_0x12e006(0x17f)+_0x12e006(0x21a)][_0x12e006(0x15f)](_0x369569=>_0x12e006(0x228)+_0x369569)],_0x4f534a[_0x12e006(0x196)]=_0x59a3b7[_0x12e006(0x1bc)](_0x417741=>{const _0x36aa6d=_0x12e006;if(!_0x417741||typeof _0x417741!==_0x36aa6d(0x1a5))return![];if(_0x417741[_0x36aa6d(0x1c8)]===_0x36aa6d(0x1c0))return _0x2ff878[_0x36aa6d(0x1a8)](_0x417741[_0x36aa6d(0x1fd)]);if(_0x417741[_0x36aa6d(0x1c8)]==='npm')return _0x33f68f[_0x36aa6d(0x1a8)](_0x417741[_0x36aa6d(0x239)])||_0x33f68f[_0x36aa6d(0x1a8)](_0x417741[_0x36aa6d(0x219)+_0x36aa6d(0x1a3)])||_0x2b2681['has'](_0x417741[_0x36aa6d(0x219)+_0x36aa6d(0x15e)]);return![];});const _0xeedbb=new Set(_0x4f534a[_0x12e006(0x196)]['map'](_0x64e4a1=>_0x64e4a1['pluginId']));for(const _0x54a3a1 of _0x59a3b7){if(!_0x54a3a1[_0x12e006(0x1fd)]||_0xeedbb[_0x12e006(0x1a8)](_0x54a3a1[_0x12e006(0x1fd)]))continue;const _0x461400=typeof _0x54a3a1[_0x12e006(0x1a7)+_0x12e006(0x207)]===_0x12e006(0x1f8)&&_0x54a3a1[_0x12e006(0x1a7)+_0x12e006(0x207)][_0x12e006(0x17a)]()?resolve(_0x331ba6,_0x54a3a1[_0x12e006(0x1a7)+_0x12e006(0x207)]):join(_0x1efa23,_0x54a3a1[_0x12e006(0x1fd)]),_0x5ed49c=relative(_0x1efa23,_0x461400);if(_0x5ed49c[_0x12e006(0x19b)+'th']('..')||_0x5ed49c==='')continue;await rm(_0x461400,{'recursive':!![],'force':!![]});}}async function syncProductAgents(_0x42a9c8,_0x4da7be,_0x3a3fe0){const _0x334587=_0x30eb08,_0x1311b4=join(_0x4da7be,_0x334587(0x179),'agents');await copyDirFresh(_0x42a9c8[_0x334587(0x179)]['agentsDi'+'r'],_0x1311b4),_0x3a3fe0[_0x334587(0x1f7)]={'source':_0x334587(0x1ed),'installPath':toRuntimeRelative(_0x4da7be,_0x1311b4)};}async function syncProductSkills(_0x17698e,_0x26988a,_0x4a3a6a){const _0x5162ac=_0x30eb08,_0x534a84=join(_0x26988a,_0x5162ac(0x179),_0x5162ac(0x16a));await copyDirFresh(_0x17698e[_0x5162ac(0x179)][_0x5162ac(0x19f)+'r'],_0x534a84),_0x4a3a6a['skills']={'source':_0x5162ac(0x1ed),'installPath':toRuntimeRelative(_0x26988a,_0x534a84)};}
|
|
1
|
+
const _0x509c47=_0x1d3e;(function(_0x4c8eb3,_0x49a458){const _0x5d3cfa=_0x1d3e,_0x4ee1b8=_0x4c8eb3();while(!![]){try{const _0x487ace=-parseInt(_0x5d3cfa(0x126))/0x1+-parseInt(_0x5d3cfa(0x15c))/0x2*(parseInt(_0x5d3cfa(0x17b))/0x3)+-parseInt(_0x5d3cfa(0x178))/0x4+parseInt(_0x5d3cfa(0x12c))/0x5+parseInt(_0x5d3cfa(0x93))/0x6*(-parseInt(_0x5d3cfa(0x99))/0x7)+-parseInt(_0x5d3cfa(0xaf))/0x8+parseInt(_0x5d3cfa(0x17f))/0x9;if(_0x487ace===_0x49a458)break;else _0x4ee1b8['push'](_0x4ee1b8['shift']());}catch(_0x2f70ac){_0x4ee1b8['push'](_0x4ee1b8['shift']());}}}(_0x46d0,0xc2ed0));import{existsSync}from'node:fs';import{chmod,cp,mkdir,rename,rm,writeFile}from'node:fs/promises';import{delimiter,dirname,join,relative,resolve}from'node:path';import{spawn}from'node:child_process';import{getConfigPaths}from'@wujie-shell/config';import{copyDirFresh,getPackageMetadata,readJson,readPluginManifest,toRuntimeRelative,writeJson}from'./utils.mjs';import{createRuntimeLogger,summarizeRuntimeManifest,summarizeShellConfig}from'./runtime-logger.mjs';const RUNTIME_DIR=_0x509c47(0x90)+_0x509c47(0xd0),MANIFEST_NAME=_0x509c47(0xb0)+'manifest'+'.json',NPM_INSTALL_TIMEOUT_MS=0xf*0x3c*0x3e8;export function resolveRuntimeRoot(_0x2fad90){if(process.env.WUJIE_SHELL_RUNTIME_ROOT)return resolve(process.env.WUJIE_SHELL_RUNTIME_ROOT);return resolve(_0x2fad90,RUNTIME_DIR);}export function resolveManifestPath(_0x4cb479){return join(_0x4cb479,MANIFEST_NAME);}export async function prepareRuntime(_0x5ad828,{syncOnly:syncOnly=![]}={}){const _0x4163f6=_0x509c47,_0x473762=resolveRuntimeRoot(_0x5ad828[_0x4163f6(0xb8)+_0x4163f6(0x14d)]),_0x2e9ec0=_0x5ad828[_0x4163f6(0x164)][_0x4163f6(0x177)+'pRuntime'+'Dir'],_0x285bd1=createRuntimeLogger(getConfigPaths(_0x5ad828),'runtime'),_0x1b24c3=Date['now']();_0x285bd1?.[_0x4163f6(0xe3)](_0x4163f6(0x159)+_0x4163f6(0xf3)+_0x4163f6(0xca),{'syncOnly':syncOnly,'runtimeRoot':_0x473762,'shellConfig':summarizeShellConfig(_0x5ad828)});try{if(!existsSync(join(_0x2e9ec0,MANIFEST_NAME)))throw new Error(_0x4163f6(0x177)+_0x4163f6(0xad)+_0x4163f6(0xb7)+_0x4163f6(0x127)+_0x2e9ec0+(_0x4163f6(0x167)+_0x4163f6(0x179)+_0x4163f6(0x13b)+_0x4163f6(0x138)+_0x4163f6(0x150)+'t.'));_0x285bd1?.['info']('bootstra'+'p\x20runtim'+_0x4163f6(0x15e)+'d',{'bootstrapRuntimeDir':_0x2e9ec0});const _0x58aba1=!syncOnly||!existsSync(resolveManifestPath(_0x473762));_0x58aba1?(_0x285bd1?.['info'](_0x4163f6(0xf3)+_0x4163f6(0x14e)+'ent\x20star'+_0x4163f6(0x17c),{'from':_0x2e9ec0,'to':_0x473762,'reason':syncOnly?'missing\x20'+_0x4163f6(0xb3):_0x4163f6(0x159)+_0x4163f6(0xde)}),await replaceRuntimeFromBootstrap(_0x2e9ec0,_0x473762),_0x285bd1?.[_0x4163f6(0xe3)](_0x4163f6(0xf3)+_0x4163f6(0x14e)+_0x4163f6(0x9f)+_0x4163f6(0xd1),{'runtimeRoot':_0x473762})):_0x285bd1?.[_0x4163f6(0xe3)](_0x4163f6(0xf3)+_0x4163f6(0x14e)+'ent\x20skip'+_0x4163f6(0xef),{'reason':_0x4163f6(0xba)+_0x4163f6(0xbe)+_0x4163f6(0x130)+'s','manifestPath':resolveManifestPath(_0x473762)});const _0x53a166=await readRuntimeManifest(_0x473762);_0x285bd1?.[_0x4163f6(0xe3)](_0x4163f6(0xf3)+_0x4163f6(0xb3)+_0x4163f6(0xee),{'manifestPath':resolveManifestPath(_0x473762),'manifest':summarizeRuntimeManifest(_0x53a166)}),validateRuntimeNodeVersion(_0x53a166,_0x5ad828),_0x285bd1?.[_0x4163f6(0xe3)](_0x4163f6(0xf3)+_0x4163f6(0x117)+_0x4163f6(0x154)+_0x4163f6(0x16a),{'nodeVersion':_0x53a166[_0x4163f6(0xc7)+_0x4163f6(0x98)]});if(syncOnly)validateRuntimeOpenClawVersion(_0x53a166,_0x5ad828),_0x285bd1?.['info'](_0x4163f6(0xf3)+_0x4163f6(0x164)+'\x20version'+_0x4163f6(0x17e)+'ed',{'openclawVersion':_0x53a166[_0x4163f6(0x164)+'Version']});else{if(_0x53a166[_0x4163f6(0x164)+'Version']!==_0x5ad828[_0x4163f6(0x164)]['openclaw'+'Version']){const _0x31ba2b=await loadRuntimeInfo(_0x5ad828['projectR'+'oot']);_0x285bd1?.[_0x4163f6(0xe3)](_0x4163f6(0x164)+_0x4163f6(0x158)+'\x20install'+_0x4163f6(0x12b),{'fromVersion':_0x53a166[_0x4163f6(0x164)+_0x4163f6(0xb1)]||_0x4163f6(0x11f),'toVersion':_0x5ad828['openclaw']['openclaw'+_0x4163f6(0xb1)]}),await installOpenClawPackage(_0x31ba2b,_0x5ad828[_0x4163f6(0x164)][_0x4163f6(0x164)+_0x4163f6(0xb1)]),_0x53a166[_0x4163f6(0x164)+_0x4163f6(0xb1)]=_0x5ad828[_0x4163f6(0x164)][_0x4163f6(0x164)+_0x4163f6(0xb1)],_0x285bd1?.[_0x4163f6(0xe3)](_0x4163f6(0x164)+_0x4163f6(0x158)+_0x4163f6(0x156)+'\x20complet'+'ed',{'openclawVersion':_0x53a166[_0x4163f6(0x164)+_0x4163f6(0xb1)]});}}_0x53a166['generate'+_0x4163f6(0x10b)]=new Date()[_0x4163f6(0x144)+'ing'](),_0x53a166[_0x4163f6(0xc7)+_0x4163f6(0x98)]=_0x5ad828[_0x4163f6(0x164)][_0x4163f6(0xc7)+'ion'],_0x53a166[_0x4163f6(0x96)]={'appId':_0x5ad828[_0x4163f6(0xed)],'productName':_0x5ad828['productN'+_0x4163f6(0xdf)],'dataDirName':_0x5ad828['dataDirN'+'ame']};const _0x4cbdec=Array[_0x4163f6(0x122)](_0x53a166[_0x4163f6(0x15a)])?_0x53a166[_0x4163f6(0x15a)][_0x4163f6(0x115)]:0x0;return await syncManifestPluginScope(_0x5ad828,_0x473762,_0x53a166),_0x285bd1?.[_0x4163f6(0xe3)](_0x4163f6(0xf3)+_0x4163f6(0x10d)+_0x4163f6(0xe4)+_0x4163f6(0xb6),{'beforePluginCount':_0x4cbdec,'afterPluginCount':Array[_0x4163f6(0x122)](_0x53a166[_0x4163f6(0x15a)])?_0x53a166[_0x4163f6(0x15a)][_0x4163f6(0x115)]:0x0,'pluginSpecCount':Array[_0x4163f6(0x122)](_0x53a166[_0x4163f6(0xe1)+_0x4163f6(0xcc)])?_0x53a166[_0x4163f6(0xe1)+_0x4163f6(0xcc)][_0x4163f6(0x115)]:0x0}),await syncProductPlugins(_0x5ad828,_0x473762,_0x53a166),_0x285bd1?.['info'](_0x4163f6(0xc2)+_0x4163f6(0xf4)+'synced',{'localPluginCount':_0x5ad828[_0x4163f6(0x164)][_0x4163f6(0x128)+_0x4163f6(0xf1)+_0x4163f6(0x171)][_0x4163f6(0x115)],'pluginCount':Array[_0x4163f6(0x122)](_0x53a166['plugins'])?_0x53a166['plugins'][_0x4163f6(0x115)]:0x0}),await syncProductAgents(_0x5ad828,_0x473762,_0x53a166),_0x285bd1?.['info']('product\x20'+_0x4163f6(0x13c)+_0x4163f6(0x139),{'source':_0x5ad828[_0x4163f6(0x164)][_0x4163f6(0x111)+'r'],'installPath':_0x53a166['agents']?.['installP'+'ath']}),await syncProductSkills(_0x5ad828,_0x473762,_0x53a166),_0x285bd1?.[_0x4163f6(0xe3)]('product\x20'+'skills\x20s'+_0x4163f6(0x139),{'source':_0x5ad828[_0x4163f6(0x164)][_0x4163f6(0x146)+'r'],'installPath':_0x53a166['skills']?.[_0x4163f6(0x16d)+_0x4163f6(0x157)]}),await syncRuntimeWrapper(_0x5ad828,_0x473762,_0x53a166),_0x285bd1?.['info']('runtime\x20'+_0x4163f6(0x14c)+_0x4163f6(0x166),{'wujieclawBin':_0x53a166[_0x4163f6(0x132)+_0x4163f6(0xe5)]}),await writeJson(resolveManifestPath(_0x473762),_0x53a166),_0x285bd1?.[_0x4163f6(0xe3)]('runtime\x20'+_0x4163f6(0xb3)+_0x4163f6(0xff),{'manifestPath':resolveManifestPath(_0x473762),'manifest':summarizeRuntimeManifest(_0x53a166),'durationMs':Date['now']()-_0x1b24c3}),await _0x285bd1?.[_0x4163f6(0xa8)](),_0x53a166;}catch(_0xdebd9a){_0x285bd1?.[_0x4163f6(0x162)]('prepare\x20'+_0x4163f6(0xf3)+_0x4163f6(0x11c),{'syncOnly':syncOnly,'runtimeRoot':_0x473762,'durationMs':Date['now']()-_0x1b24c3,'error':_0xdebd9a}),await _0x285bd1?.[_0x4163f6(0xa8)]();throw _0xdebd9a;}}async function syncRuntimeWrapper(_0x5ed3cb,_0x49fe73,_0x2c98f7){const _0x522af0=_0x509c47,_0x1580af=join(_0x49fe73,_0x522af0(0xeb),_0x522af0(0x132)+'w'),_0x3fc441=join(_0x49fe73,_0x522af0(0xeb),'wujiecla'+'w.cmd'),_0x1c5697=normalizeRuntimeRelativePath(relative(dirname(_0x1580af),resolve(_0x49fe73,_0x2c98f7[_0x522af0(0x12e)+_0x522af0(0x108)]))),_0x43ee42=normalizeRuntimeRelativePath(relative(dirname(_0x1580af),resolve(_0x49fe73,_0x2c98f7['openclaw'+'Bin']))),_0x6e80cb=_0x522af0(0x14f)+_0x5ed3cb['dataDirN'+'ame'],_0x1e929b='%USERPRO'+'FILE%\x5c'+_0x5ed3cb[_0x522af0(0x160)+_0x522af0(0xdf)];await mkdir(dirname(_0x1580af),{'recursive':!![]}),await writeFile(_0x1580af,[_0x522af0(0x10e)+'h','export\x20O'+_0x522af0(0xbb)+_0x522af0(0xfe)+'OPENCLAW'+'_HOME:-'+_0x6e80cb+'}\x22','export\x20O'+_0x522af0(0xbb)+'STATE_DI'+_0x522af0(0x101)+_0x522af0(0x9e)+_0x522af0(0x163)+'-'+_0x6e80cb+'}\x22',_0x522af0(0x113)+_0x522af0(0xbb)+'CONFIG_P'+_0x522af0(0x12f)+'PENCLAW_'+_0x522af0(0x184)+_0x522af0(0x16e)+_0x6e80cb+('/opencla'+'w.json}\x22'),'SCRIPT_D'+_0x522af0(0x110)+_0x522af0(0x103)+_0x522af0(0x8e)+'rname\x20--'+'\x20\x22$0\x22)\x22\x20'+_0x522af0(0x140),_0x522af0(0x169)+_0x522af0(0xd9)+'R/'+_0x1c5697+(_0x522af0(0xf7)+_0x522af0(0x129))+_0x43ee42+_0x522af0(0x15f),''][_0x522af0(0x136)]('\x0a'),'utf8'),await chmod(_0x1580af,0x1ed),await writeFile(_0x3fc441,[_0x522af0(0xa1)+'f',_0x522af0(0x149)+_0x522af0(0xc5)+_0x522af0(0xc3)+_0x522af0(0x168)+_0x522af0(0x141)+_0x522af0(0xd6)+_0x1e929b+'\x22',_0x522af0(0x149)+_0x522af0(0x9e)+_0x522af0(0x145)+_0x522af0(0xa0)+_0x522af0(0x9a)+_0x522af0(0x13e)+'E_DIR='+_0x1e929b+'\x22',_0x522af0(0x149)+_0x522af0(0xce)+_0x522af0(0xdc)+'H%\x22==\x22\x22\x20'+'set\x20\x22OPE'+'NCLAW_CO'+_0x522af0(0xdc)+'H='+_0x1e929b+('\x5copencla'+_0x522af0(0x14b)),_0x522af0(0xf8)+'IPT_DIR='+_0x522af0(0x161),'\x22%SCRIPT'+_0x522af0(0xf6)+toWindowsPath(_0x1c5697)+(_0x522af0(0x13d)+_0x522af0(0x151))+toWindowsPath(_0x43ee42)+_0x522af0(0x174),''][_0x522af0(0x136)]('\x0d\x0a'),_0x522af0(0x148)),_0x2c98f7[_0x522af0(0x132)+_0x522af0(0xe5)]=toRuntimeRelative(_0x49fe73,process[_0x522af0(0x14a)]===_0x522af0(0xc4)?_0x3fc441:_0x1580af);}function normalizeRuntimeRelativePath(_0x4dedb5){const _0x374019=_0x509c47;return _0x4dedb5[_0x374019(0xcd)+'ll']('\x5c','/');}function toWindowsPath(_0x3ca686){return _0x3ca686['replaceA'+'ll']('/','\x5c');}function validateRuntimeNodeVersion(_0x189de1,_0x5ec5dc){const _0x25e01e=_0x509c47;if(_0x189de1[_0x25e01e(0xc7)+_0x25e01e(0x98)]===_0x5ec5dc[_0x25e01e(0x164)][_0x25e01e(0xc7)+_0x25e01e(0x98)])return;throw new Error(_0x25e01e(0xf3)+_0x25e01e(0xc7)+_0x25e01e(0xa4)+'atch:\x20ma'+_0x25e01e(0x104)+(_0x189de1[_0x25e01e(0xc7)+_0x25e01e(0x98)]||_0x25e01e(0x11f))+(',\x20shell.'+'config=')+_0x5ec5dc['openclaw'][_0x25e01e(0xc7)+_0x25e01e(0x98)]+'.\x20'+(_0x25e01e(0x134)+'the\x20boot'+'strap\x20ru'+_0x25e01e(0x16b)+'th\x20the\x20c'+'onfigure'+_0x25e01e(0x124)+'ersion\x20b'+_0x25e01e(0xa2)+_0x25e01e(0x12d)+_0x25e01e(0x142)+_0x25e01e(0xdb)));}function validateRuntimeOpenClawVersion(_0x58de58,_0x253768){const _0x4ded6c=_0x509c47;if(_0x58de58[_0x4ded6c(0x164)+_0x4ded6c(0xb1)]===_0x253768[_0x4ded6c(0x164)][_0x4ded6c(0x164)+_0x4ded6c(0xb1)])return;throw new Error(_0x4ded6c(0xf3)+_0x4ded6c(0x164)+_0x4ded6c(0x16f)+_0x4ded6c(0x106)+':\x20manife'+'st='+(_0x58de58[_0x4ded6c(0x164)+_0x4ded6c(0xb1)]||'unknown')+(_0x4ded6c(0x112)+_0x4ded6c(0x180))+_0x253768[_0x4ded6c(0x164)][_0x4ded6c(0x164)+_0x4ded6c(0xb1)]+'.\x20'+(_0x4ded6c(0x10c)+_0x4ded6c(0x143)+'\x20prepare'+'\x22\x20so\x20the'+_0x4ded6c(0xaa)+_0x4ded6c(0x121)+'tall\x20the'+'\x20configu'+_0x4ded6c(0xea)+_0x4ded6c(0x118)+_0x4ded6c(0x11b)));}function parseNpmPackJson(_0x17062b){const _0x298370=_0x509c47,_0x3a7ba2=_0x17062b[_0x298370(0x102)](),_0x518f31=_0x3a7ba2[_0x298370(0x107)]('[');if(_0x518f31<0x0)throw new Error('npm\x20pack'+_0x298370(0x183)+_0x298370(0xc8)+_0x298370(0xbd)+_0x3a7ba2[_0x298370(0x10a)](0x0,0x1f4));const _0x1d063b=JSON['parse'](_0x3a7ba2[_0x298370(0x10a)](_0x518f31)),_0x3ed286=Array[_0x298370(0x122)](_0x1d063b)?_0x1d063b[0x0]:_0x1d063b;if(!_0x3ed286||typeof _0x3ed286!==_0x298370(0x131))throw new Error(_0x298370(0x172)+_0x298370(0xec)+'d\x20an\x20inv'+'alid\x20pay'+_0x298370(0xbc)+_0x3a7ba2[_0x298370(0x10a)](0x0,0x1f4));return _0x3ed286;}async function runProcess(_0x1e6097,_0x16a87f,_0x544cd4={}){const _0x26df4b=_0x509c47,_0x4382b4=_0x544cd4[_0x26df4b(0x100)]||[_0x1e6097,..._0x16a87f]['join']('\x20'),_0x116ab6=_0x544cd4['timeoutM'+'s']??NPM_INSTALL_TIMEOUT_MS,_0x673e8=spawn(_0x1e6097,_0x16a87f,{'cwd':_0x544cd4[_0x26df4b(0xa3)],'env':_0x544cd4['env'],'stdio':['ignore',_0x26df4b(0xcf),'pipe']});return await new Promise((_0x1f97db,_0x366489)=>{const _0x5ccb21=_0x26df4b;let _0x473e7e='',_0x25fa51='',_0x305926=![];const _0x1f04c3=setTimeout(()=>{const _0x3e8998=_0x1d3e;if(_0x305926)return;_0x305926=!![],_0x673e8['kill']('SIGTERM'),_0x366489(new Error(_0x4382b4+('\x20timed\x20o'+_0x3e8998(0xd5)+'\x20')+_0x116ab6+'ms'));},_0x116ab6);_0x673e8['stdout']['on'](_0x5ccb21(0x165),_0x3cbf76=>{const _0x40dac7=_0x5ccb21;_0x473e7e+=_0x3cbf76[_0x40dac7(0x116)]();}),_0x673e8[_0x5ccb21(0x97)]['on']('data',_0x2d1ce6=>{_0x25fa51+=_0x2d1ce6['toString']();}),_0x673e8['on'](_0x5ccb21(0x162),_0x4449e4=>{if(_0x305926)return;_0x305926=!![],clearTimeout(_0x1f04c3),_0x366489(_0x4449e4);}),_0x673e8['on']('close',(_0x4613f6,_0x4a2e5b)=>{const _0x554a60=_0x5ccb21;if(_0x305926)return;_0x305926=!![],clearTimeout(_0x1f04c3);if(_0x4613f6===0x0){_0x1f97db({'stdout':_0x473e7e,'stderr':_0x25fa51});return;}_0x366489(new Error(_0x4382b4+(_0x554a60(0x11d)+_0x554a60(0xc0)+'e=')+(_0x4613f6??'null')+_0x554a60(0x11a)+(_0x4a2e5b??'null')+'\x0a'+(''+(_0x25fa51||_0x473e7e))[_0x554a60(0x102)]()));});});}async function installOpenClawPackage(_0x46ab9d,_0xc45c96){const _0x41ef2b=_0x509c47,_0x1d8a67=join(_0x46ab9d[_0x41ef2b(0xac)+_0x41ef2b(0x14d)],_0x41ef2b(0xe0)),_0x3aa0c9=join(_0x46ab9d[_0x41ef2b(0xac)+_0x41ef2b(0x14d)],_0x41ef2b(0x105)+'w-extrac'+'t');await mkdir(_0x1d8a67,{'recursive':!![]}),await rm(_0x3aa0c9,{'recursive':!![],'force':!![]}),await mkdir(_0x3aa0c9,{'recursive':!![]});const _0x178e2d=await createRuntimeEnv(_0x46ab9d),_0x38365c=_0x41ef2b(0x164)+'@'+_0xc45c96;console[_0x41ef2b(0x176)](_0x41ef2b(0x152)+_0x41ef2b(0xbf)+_0x41ef2b(0x91)+_0x41ef2b(0x114)+'\x20'+_0x38365c);const _0x6a7711=await runProcess(_0x46ab9d['nodeExec'+_0x41ef2b(0x108)],[_0x46ab9d[_0x41ef2b(0x119)],'pack',_0x38365c,_0x41ef2b(0xfb)],{'cwd':_0x1d8a67,'env':_0x178e2d,'label':_0x41ef2b(0x172)+'\x20'+_0x38365c}),_0x235fa5=parseNpmPackJson(_0x6a7711['stdout']);if(_0x235fa5[_0x41ef2b(0x120)]!==_0xc45c96)throw new Error('Configur'+'ed\x20OpenC'+_0x41ef2b(0x182)+_0xc45c96+(_0x41ef2b(0xf5)+_0x41ef2b(0xc1))+_0x235fa5[_0x41ef2b(0x120)]);const _0x57da59=resolve(_0x1d8a67,_0x235fa5['filename']);if(!existsSync(_0x57da59))throw new Error(_0x41ef2b(0x172)+_0x41ef2b(0x183)+_0x41ef2b(0x17a)+_0x41ef2b(0xd4)+'\x20'+_0x57da59);await runProcess('tar',['-xzf',_0x57da59,'-C',_0x3aa0c9],{'label':_0x41ef2b(0xd2)+_0x235fa5['filename']}),await rm(_0x46ab9d[_0x41ef2b(0x164)+'WorkingD'+'ir'],{'recursive':!![],'force':!![]}),await rename(join(_0x3aa0c9,_0x41ef2b(0xd3)),_0x46ab9d['openclaw'+'WorkingD'+'ir']),await rm(_0x3aa0c9,{'recursive':!![],'force':!![]}),await runProcess(_0x46ab9d[_0x41ef2b(0x12e)+'utable'],[_0x46ab9d['npmCli'],_0x41ef2b(0x155),_0x41ef2b(0xe2)+'ev',_0x41ef2b(0x147)+'eer',_0x41ef2b(0xe7)+'it',_0x41ef2b(0x15d)+'d',_0x41ef2b(0x12a)+_0x41ef2b(0xfc)+'ps'],{'cwd':_0x46ab9d['openclaw'+'WorkingD'+'ir'],'env':_0x178e2d,'label':'npm\x20inst'+'all\x20'+_0x38365c+(_0x41ef2b(0xaa)+_0x41ef2b(0xcb)+_0x41ef2b(0x9b))});if(!existsSync(_0x46ab9d['openclaw'+_0x41ef2b(0xa5)]))throw new Error(_0x41ef2b(0xc6)+_0x41ef2b(0x16c)+_0x41ef2b(0x170)+_0x41ef2b(0x133)+_0x41ef2b(0x156)+':\x20'+_0x46ab9d[_0x41ef2b(0x164)+_0x41ef2b(0xa5)]);}function _0x46d0(){const _0x4f08dd=['t\x20\x22OPENC','ncies','.old-','replace','NCLAW_ST','ent\x20comp','\x22==\x22\x22\x20se','@echo\x20of','efore\x20pr','cwd','ion\x20mism','Bin','\x20is\x20miss','ing\x20\x22','flush','agents','\x20runtime',';\x20run\x20wu','runtimeR','p\x20runtim','string','8064848jSIZMY','runtime-','Version','missing\x20','manifest','path:\x20','npm-cach','ced','e\x20not\x20fo','projectR','jie-shel','sync-onl','PENCLAW_','load:\x20','JSON:\x20','y\x20manife','hell:run','with\x20cod','d\x20to\x20','product\x20','ME%\x22==\x22\x22','win32','NCLAW_HO','OpenClaw','nodeVers','\x20return\x20','npm-glob','started','\x20depende','ecs','replaceA','NCLAW_CO','pipe','time','leted','extract\x20','package','tarball:','ut\x20after','OME=','WorkingD','env','CRIPT_DI','rg/','ell.','NFIG_PAT','source','command','ame','.cache','pluginSp','--omit=d','info','cope\x20syn','wBin','startsWi','--no-aud','has','close','red\x20Open','bin','\x20returne','appId','\x20loaded','ped','split','LocalPlu','filter','runtime\x20','plugins\x20','\x20resolve','_DIR%','\x22\x20\x22$SCRI','set\x20\x22SCR','pid','Spec','--json','-peer-de','npm','HOME=\x22${','\x20written','label','R=\x22${OPE','trim','ATH=\x20cd\x20','nifest=','.opencla','mismatch','indexOf','utable','registry','slice','dAt','Run\x20\x22wuj','plugin\x20s','#!/bin/s','SIGTERM','IR=$(CDP','agentsDi',',\x20shell.','export\x20O','stalling','length','toString','node\x20ver','Claw\x20ver','npmCli','\x20signal=','sion.','failed','\x20failed\x20','.npmjs.o','unknown','version','\x20can\x20ins','isArray','dist','d\x20Node\x20v','now','1072575CQJBaT','und:\x20','resolved','PT_DIR/','--legacy','\x20started','4709100pUdfSt','eparing\x20','nodeExec','ATH=\x22${O','st\x20exist','object','wujiecla','nd\x20after','Rebuild\x20','ing','join','Name','-ai\x20runt','ynced','local','re\x20wujie','agents\x20s','\x22\x20\x22%SCRI','LAW_STAT','skills','&&\x20pwd)','ENCLAW_H','wujie-sh','ie-shell','toISOStr','ATE_DIR%','skillsDi','--omit=p','utf8','if\x20\x22%OPE','platform','w.json\x22','wrapper\x20','oot','replacem','$HOME/','ime\x20firs','PT_DIR%','[wujie-s','agentSco','sion\x20val','install','\x20install','ath','\x20package','prepare\x20','plugins','local:','18FNLBRg','--no-fun','e\x20checke','\x22\x20\x22$@\x22','dataDirN','%~dp0\x22','error','ATE_DIR:','openclaw','data','synced','.\x20For\x20MV','\x20set\x20\x22OP','exec\x20\x22$S','idated','ntime\x20wi','\x20bin\x20was','installP','ATH:-','Version\x20','\x20not\x20fou','ginPaths','npm\x20pack','\x20timed\x20o','\x22\x20%*','push','log','bootstra','1690020tRBJjS','P,\x20prepa','\x20create\x20','413787svFyDZ','ted','extensio','\x20validat','39176982LQClPW','config=','time-too','law\x20','\x20did\x20not','CONFIG_P','--\x20\x22$(di','map','.tmp/run','time]\x20in','https://','902226ZPrAYS','pluginId','\x22\x20at\x20','product','stderr','ion','35DuVKJt'];_0x46d0=function(){return _0x4f08dd;};return _0x46d0();}async function replaceRuntimeFromBootstrap(_0x1c1123,_0x403fd0){const _0x1a6ee7=_0x509c47;await mkdir(dirname(_0x403fd0),{'recursive':!![]});const _0x2a4a9e=_0x403fd0+'.next-'+process[_0x1a6ee7(0xf9)]+'-'+Date[_0x1a6ee7(0x125)](),_0x3cc0d7=_0x403fd0+_0x1a6ee7(0x9c)+process[_0x1a6ee7(0xf9)]+'-'+Date[_0x1a6ee7(0x125)]();await rm(_0x2a4a9e,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96}),await rm(_0x3cc0d7,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96}),await cp(_0x1c1123,_0x2a4a9e,{'recursive':!![],'force':!![]}),existsSync(_0x403fd0)&&(await rm(_0x3cc0d7,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96}),await rename(_0x403fd0,_0x3cc0d7)),await rename(_0x2a4a9e,_0x403fd0),await rm(_0x3cc0d7,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96});}export async function readRuntimeManifest(_0x4f7597){return await readJson(resolveManifestPath(_0x4f7597),{});}export async function loadRuntimeInfo(_0x22c239){const _0xbd8620=_0x509c47,_0x4f68de=resolveRuntimeRoot(_0x22c239),_0x2af98e=await readRuntimeManifest(_0x4f68de);for(const _0x485700 of['nodeExec'+_0xbd8620(0x108),'npmCli',_0xbd8620(0x164)+_0xbd8620(0xd7)+'ir',_0xbd8620(0x164)+'Bin']){if(typeof _0x2af98e[_0x485700]!==_0xbd8620(0xae)||!_0x2af98e[_0x485700][_0xbd8620(0x102)]())throw new Error(_0xbd8620(0xf3)+'manifest'+_0xbd8620(0xa6)+_0xbd8620(0xa7)+_0x485700+_0xbd8620(0x95)+resolveManifestPath(_0x4f68de)+(_0xbd8620(0xab)+_0xbd8620(0xb9)+'l\x20prepar'+'e'));}const _0x58d934=resolve(_0x4f68de,_0x2af98e[_0xbd8620(0x12e)+'utable']),_0x3e6042=resolve(_0x4f68de,_0x2af98e[_0xbd8620(0x119)]),_0x5a0cbe=resolve(_0x4f68de,_0x2af98e[_0xbd8620(0x164)+'WorkingD'+'ir']),_0xb65b89=resolve(_0x4f68de,_0x2af98e[_0xbd8620(0x164)+'Bin']),_0x7f605c=Array[_0xbd8620(0x122)](_0x2af98e[_0xbd8620(0x15a)])?_0x2af98e[_0xbd8620(0x15a)]['map'](_0x48df3f=>({..._0x48df3f,'installPath':resolve(_0x4f68de,_0x48df3f[_0xbd8620(0x16d)+_0xbd8620(0x157)])})):[];for(const _0x28bfc3 of[_0x58d934,_0x3e6042,_0x5a0cbe,_0xb65b89]){if(!existsSync(_0x28bfc3))throw new Error('runtime\x20'+_0xbd8620(0xb2)+_0xbd8620(0xb4)+_0x28bfc3);}return{'runtimeRoot':_0x4f68de,'manifest':_0x2af98e,'openclawVersion':_0x2af98e[_0xbd8620(0x164)+_0xbd8620(0xb1)]||'unknown','nodeExecutable':_0x58d934,'npmCli':_0x3e6042,'openclawWorkingDir':_0x5a0cbe,'openclawBin':_0xb65b89,'plugins':_0x7f605c};}export async function spawnClaw(_0x47d56a,_0x260a1c=[],_0x4dbc03={}){const _0x381c61=_0x509c47,_0x5a4028=await loadRuntimeInfo(_0x47d56a),_0x5e6fad=await createRuntimeEnv(_0x5a4028,_0x4dbc03[_0x381c61(0xd8)]??{});return spawn(_0x5a4028[_0x381c61(0x12e)+_0x381c61(0x108)],[_0x5a4028[_0x381c61(0x164)+_0x381c61(0xa5)],..._0x260a1c],{'cwd':_0x5a4028[_0x381c61(0x164)+'WorkingD'+'ir'],'stdio':'pipe',..._0x4dbc03,'env':_0x5e6fad});}export async function runClawOnce(_0xad2fec,_0x3b4555=[],_0x471ab5=0x15f90){const _0x17aba7=await spawnClaw(_0xad2fec,_0x3b4555);return await new Promise((_0x2ecfc0,_0x5f3a6d)=>{const _0x47c9ae=_0x1d3e;let _0x203d22='',_0x52ffb5='',_0x1f6a4f=![];const _0x182589=setTimeout(()=>{const _0x4ef6eb=_0x1d3e;if(_0x1f6a4f)return;_0x1f6a4f=!![],_0x17aba7['kill'](_0x4ef6eb(0x10f)),_0x5f3a6d(new Error('openclaw'+_0x4ef6eb(0x173)+_0x4ef6eb(0xd5)+'\x20'+_0x471ab5+'ms'));},_0x471ab5);_0x17aba7['stdout']['on'](_0x47c9ae(0x165),_0x34a096=>{const _0x4554bd=_0x47c9ae;_0x203d22+=_0x34a096[_0x4554bd(0x116)]();}),_0x17aba7[_0x47c9ae(0x97)]['on'](_0x47c9ae(0x165),_0x301761=>{_0x52ffb5+=_0x301761['toString']();}),_0x17aba7['on'](_0x47c9ae(0x162),_0x2dec8f=>{if(_0x1f6a4f)return;_0x1f6a4f=!![],clearTimeout(_0x182589),_0x5f3a6d(_0x2dec8f);}),_0x17aba7['on'](_0x47c9ae(0xe9),(_0x2518bf,_0x20395d)=>{if(_0x1f6a4f)return;_0x1f6a4f=!![],clearTimeout(_0x182589),_0x2ecfc0({'code':_0x2518bf,'signal':_0x20395d,'stdout':_0x203d22,'stderr':_0x52ffb5});});});}function _0x1d3e(_0x4b3ab0,_0x1184ea){_0x4b3ab0=_0x4b3ab0-0x8e;const _0x46d02a=_0x46d0();let _0x1d3ee5=_0x46d02a[_0x4b3ab0];return _0x1d3ee5;}async function createRuntimeEnv(_0x33fd32,_0x17f6cb={}){const _0x4c6158=_0x509c47,_0x35c2db=process.env.OPENCLAW_STATE_DIR||'',_0x4f7818=_0x35c2db?join(_0x35c2db,'claw-run'+_0x4c6158(0x181)+'ls'):join(_0x33fd32[_0x4c6158(0xac)+_0x4c6158(0x14d)],'.tools'),_0x5ce801=join(_0x4f7818,_0x4c6158(0xc9)+'al'),_0x2ca727=join(_0x4f7818,_0x4c6158(0xb5)+'e'),_0x4631cc=join(_0x5ce801,'bin');await mkdir(_0x4631cc,{'recursive':!![]}),await mkdir(_0x2ca727,{'recursive':!![]});const _0x5d495a=[_0x4631cc,dirname(_0x33fd32[_0x4c6158(0x12e)+_0x4c6158(0x108)]),process.env.PATH||''];return{...process.env,..._0x17f6cb,'PATH':_0x5d495a[_0x4c6158(0xf2)](Boolean)[_0x4c6158(0x136)](delimiter),'npm_config_prefix':_0x5ce801,'NPM_CONFIG_PREFIX':_0x5ce801,'npm_config_cache':_0x2ca727,'NPM_CONFIG_CACHE':_0x2ca727,'npm_config_registry':_0x4c6158(0x92)+'registry'+_0x4c6158(0x11e)+_0x4c6158(0xda),'NPM_CONFIG_REGISTRY':_0x4c6158(0x92)+_0x4c6158(0x109)+'.npmjs.o'+_0x4c6158(0xda),'npm_execpath':_0x33fd32[_0x4c6158(0x119)],'npm_node_execpath':_0x33fd32[_0x4c6158(0x12e)+_0x4c6158(0x108)],'OPENCLAW_RUNTIME_NPM_PREFIX':_0x5ce801,'OPENCLAW_RUNTIME_NPM_BIN':_0x4631cc,'OPENCLAW_RUNTIME_NPM_REGISTRY':_0x4c6158(0x92)+_0x4c6158(0x109)+_0x4c6158(0x11e)+_0x4c6158(0xda)};}async function syncProductPlugins(_0x3201ef,_0x3d1819,_0x2db475){const _0x2e4b90=_0x509c47,_0x30482d=join(_0x3d1819,'openclaw',_0x2e4b90(0x123),_0x2e4b90(0x17d)+'ns'),_0x71de69=[];for(const _0x1a3e33 of _0x3201ef[_0x2e4b90(0x164)]['resolved'+'LocalPlu'+_0x2e4b90(0x171)]){const _0x4f3a6d=await getPackageMetadata(_0x1a3e33),_0x71cd75=await readPluginManifest(_0x1a3e33),_0x190955=join(_0x30482d,_0x4f3a6d[_0x2e4b90(0x94)]);await copyDirFresh(_0x1a3e33,_0x190955),_0x71de69[_0x2e4b90(0x175)]({'pluginId':_0x4f3a6d['pluginId'],'source':'local','spec':_0x2e4b90(0x15b)+_0x1a3e33,'installPath':toRuntimeRelative(_0x3d1819,_0x190955),'version':_0x4f3a6d[_0x2e4b90(0x120)],'resolvedName':_0x4f3a6d['name'],'resolvedVersion':_0x4f3a6d[_0x2e4b90(0x120)],'resolvedSpec':'local:'+_0x1a3e33,'integrity':'','shasum':'','resolvedAt':new Date()[_0x2e4b90(0x144)+'ing'](),'installedAt':new Date()[_0x2e4b90(0x144)+_0x2e4b90(0x135)](),'agentScope':_0x71cd75[_0x2e4b90(0x153)+'pe'],'skills':_0x71cd75[_0x2e4b90(0x13f)]});}const _0x499092=new Set(_0x71de69[_0x2e4b90(0x8f)](_0x1c2f3d=>_0x1c2f3d['pluginId'])),_0x4639ac=Array[_0x2e4b90(0x122)](_0x2db475[_0x2e4b90(0x15a)])?_0x2db475[_0x2e4b90(0x15a)][_0x2e4b90(0xf2)](_0x15c7d5=>!_0x499092[_0x2e4b90(0xe8)](_0x15c7d5[_0x2e4b90(0x94)])):[];_0x2db475[_0x2e4b90(0x15a)]=[..._0x4639ac,..._0x71de69];}async function syncManifestPluginScope(_0x15fca9,_0x267487,_0x13a04d){const _0x4bcab9=_0x509c47,_0x707f0f=join(_0x267487,_0x4bcab9(0x164),'dist',_0x4bcab9(0x17d)+'ns'),_0x545bff=new Set(_0x15fca9[_0x4bcab9(0x164)]['pluginSp'+'ecs']??[]),_0x1fc694=new Set([..._0x545bff][_0x4bcab9(0x8f)](_0x383616=>_0x383616[_0x4bcab9(0x9d)](/^npm:/,''))[_0x4bcab9(0x8f)](_0x37c4c9=>{const _0xd76a4b=_0x4bcab9;if(_0x37c4c9[_0xd76a4b(0xe6)+'th']('@')){const _0x5a252a=_0x37c4c9['split']('@');return _0x5a252a['length']>=0x3?'@'+_0x5a252a[0x1]:_0x37c4c9;}return _0x37c4c9[_0xd76a4b(0xf0)]('@')[0x0];})[_0x4bcab9(0xf2)](Boolean)),_0x2adc78=new Set();for(const _0x573986 of _0x15fca9[_0x4bcab9(0x164)][_0x4bcab9(0x128)+_0x4bcab9(0xf1)+'ginPaths']){const _0xa5b51a=await getPackageMetadata(_0x573986);if(_0xa5b51a[_0x4bcab9(0x94)])_0x2adc78['add'](_0xa5b51a[_0x4bcab9(0x94)]);}const _0x279b47=Array[_0x4bcab9(0x122)](_0x13a04d[_0x4bcab9(0x15a)])?_0x13a04d['plugins']:[];_0x13a04d['pluginSp'+_0x4bcab9(0xcc)]=[..._0x15fca9[_0x4bcab9(0x164)]['pluginSp'+_0x4bcab9(0xcc)],..._0x15fca9[_0x4bcab9(0x164)]['resolved'+_0x4bcab9(0xf1)+_0x4bcab9(0x171)][_0x4bcab9(0x8f)](_0x557ca3=>_0x4bcab9(0x15b)+_0x557ca3)],_0x13a04d['plugins']=_0x279b47[_0x4bcab9(0xf2)](_0x3d77b8=>{const _0x5b60c=_0x4bcab9;if(!_0x3d77b8||typeof _0x3d77b8!==_0x5b60c(0x131))return![];if(_0x3d77b8[_0x5b60c(0xdd)]===_0x5b60c(0x13a))return _0x2adc78['has'](_0x3d77b8[_0x5b60c(0x94)]);if(_0x3d77b8[_0x5b60c(0xdd)]===_0x5b60c(0xfd))return _0x545bff['has'](_0x3d77b8['spec'])||_0x545bff[_0x5b60c(0xe8)](_0x3d77b8[_0x5b60c(0x128)+_0x5b60c(0xfa)])||_0x1fc694[_0x5b60c(0xe8)](_0x3d77b8[_0x5b60c(0x128)+_0x5b60c(0x137)]);return![];});const _0x1dc638=new Set(_0x13a04d[_0x4bcab9(0x15a)]['map'](_0x5250c7=>_0x5250c7[_0x4bcab9(0x94)]));for(const _0x19061f of _0x279b47){if(!_0x19061f[_0x4bcab9(0x94)]||_0x1dc638[_0x4bcab9(0xe8)](_0x19061f['pluginId']))continue;const _0x4fc105=typeof _0x19061f[_0x4bcab9(0x16d)+_0x4bcab9(0x157)]===_0x4bcab9(0xae)&&_0x19061f[_0x4bcab9(0x16d)+_0x4bcab9(0x157)][_0x4bcab9(0x102)]()?resolve(_0x267487,_0x19061f[_0x4bcab9(0x16d)+_0x4bcab9(0x157)]):join(_0x707f0f,_0x19061f[_0x4bcab9(0x94)]),_0x27da3d=relative(_0x707f0f,_0x4fc105);if(_0x27da3d[_0x4bcab9(0xe6)+'th']('..')||_0x27da3d==='')continue;await rm(_0x4fc105,{'recursive':!![],'force':!![]});}}async function syncProductAgents(_0x1cbf4f,_0x1fba5e,_0x1029ab){const _0x243ec5=_0x509c47,_0x367a76=join(_0x1fba5e,_0x243ec5(0x164),_0x243ec5(0xa9));await copyDirFresh(_0x1cbf4f[_0x243ec5(0x164)][_0x243ec5(0x111)+'r'],_0x367a76),_0x1029ab[_0x243ec5(0xa9)]={'source':'product','installPath':toRuntimeRelative(_0x1fba5e,_0x367a76)};}async function syncProductSkills(_0x4d9b4c,_0xbd71ee,_0x3db897){const _0xc2a855=_0x509c47,_0x4147e3=join(_0xbd71ee,_0xc2a855(0x164),'skills');await copyDirFresh(_0x4d9b4c[_0xc2a855(0x164)][_0xc2a855(0x146)+'r'],_0x4147e3),_0x3db897['skills']={'source':_0xc2a855(0x96),'installPath':toRuntimeRelative(_0xbd71ee,_0x4147e3)};}
|
package/dist/src/utils.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x484b7d,_0x55b0a9){const _0x205009=_0x40be,_0x4642f0=_0x484b7d();while(!![]){try{const _0x3cecea=-parseInt(_0x205009(0x86))/0x1*(-parseInt(_0x205009(0x7a))/0x2)+parseInt(_0x205009(0x78))/0x3+-parseInt(_0x205009(0x7b))/0x4+-parseInt(_0x205009(0x83))/0x5+parseInt(_0x205009(0x85))/0x6+parseInt(_0x205009(0x7c))/0x7*(-parseInt(_0x205009(0x87))/0x8)+parseInt(_0x205009(0x71))/0x9*(parseInt(_0x205009(0x88))/0xa);if(_0x3cecea===_0x55b0a9)break;else _0x4642f0['push'](_0x4642f0['shift']());}catch(_0x34d8a4){_0x4642f0['push'](_0x4642f0['shift']());}}}(_0x2ffe,0xa7f7f));function _0x40be(_0x4efc45,_0x2e4c6a){_0x4efc45=_0x4efc45-0x70;const _0x2ffe07=_0x2ffe();let _0x40beee=_0x2ffe07[_0x4efc45];return _0x40beee;}import{existsSync}from'node:fs';import{cp,mkdir,readFile,readdir,rm,stat,writeFile}from'node:fs/promises';import{basename,dirname,join,relative}from'node:path';export function asRecord(_0x1b2687){const _0xce861=_0x40be;return _0x1b2687&&typeof _0x1b2687===_0xce861(0x84)&&!Array[_0xce861(0x7d)](_0x1b2687)?_0x1b2687:{};}export function asStringArray(_0x539217){const _0x941db2=_0x40be;return Array[_0x941db2(0x7d)](_0x539217)?_0x539217[_0x941db2(0x79)](_0x2b108c=>typeof _0x2b108c===_0x941db2(0x81)&&_0x2b108c[_0x941db2(0x7e)]())[_0x941db2(0x82)](_0x29cc48=>_0x29cc48[_0x941db2(0x7e)]()):[];}export function dedupeStrings(_0x2eec47){const _0x4563bb=_0x40be;return[...new Set(_0x2eec47[_0x4563bb(0x79)](Boolean))];}export function getTrimmedString(_0x1d244c){const _0x51121a=_0x40be;return typeof _0x1d244c===_0x51121a(0x81)?_0x1d244c[_0x51121a(0x7e)]():'';}export async function readJson(_0x576d95,_0x43e029={}){const _0x148782=_0x40be;try{return JSON[_0x148782(0x76)](await readFile(_0x576d95,_0x148782(0x89)));}catch{return _0x43e029;}}export async function writeJson(_0x59a807,_0x172d66){const _0x20bd3c=_0x40be;await mkdir(dirname(_0x59a807),{'recursive':!![]}),await writeFile(_0x59a807,JSON['stringif'+'y'](_0x172d66,null,0x2)+'\x0a',_0x20bd3c(0x89));}export async function copyDirFresh(_0x17a4e3,_0x58d5bb){await rm(_0x58d5bb,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96}),await mkdir(dirname(_0x58d5bb),{'recursive':!![]}),await cp(_0x17a4e3,_0x58d5bb,{'recursive':!![]});}export async function ensureDir(_0x1086a1){await mkdir(_0x1086a1,{'recursive':!![]});}export function pathExists(_0x30a2a1){return existsSync(_0x30a2a1);}export async function listDirs(_0x12e5f9){const _0x1b9c1f=_0x40be;try{const _0x47cbef=await readdir(_0x12e5f9,{'withFileTypes':!![],'encoding':'utf8'});return _0x47cbef[_0x1b9c1f(0x79)](_0x402cb1=>_0x402cb1[_0x1b9c1f(0x73)+'ory']())[_0x1b9c1f(0x82)](_0x791180=>_0x791180['name']);}catch{return[];}}export async function getPackageMetadata(_0x1214f0){const _0x5fc9d5=_0x40be,_0x4eedb9=await readJson(join(_0x1214f0,_0x5fc9d5(0x70)+_0x5fc9d5(0x72)),{}),_0x5d90f4=asRecord(_0x4eedb9[_0x5fc9d5(0x7f)]);return{'name':getTrimmedString(_0x4eedb9[_0x5fc9d5(0x80)])||basename(_0x1214f0),'version':getTrimmedString(_0x4eedb9[_0x5fc9d5(0x8a)])||'0.0.0','pluginId':getTrimmedString(_0x5d90f4['id'])||getTrimmedString(_0x4eedb9[_0x5fc9d5(0x7f)+'Id'])||basename(_0x1214f0)};}function _0x2ffe(){const _0x474a8a=['openclaw','name','string','map','4282495PjHfaH','object','2428302nGpqnu','82163CsDtfl','4304752ehLVLB','50sOAUiq','utf8','version','package.','4472073Iktsov','json','isDirect','replaceA','isFile','parse','.plugin.','60108mUhKHd','filter','2ogltFa','3635236uuaTer','7dYHEPG','isArray','trim'];_0x2ffe=function(){return _0x474a8a;};return _0x2ffe();}export async function readPluginManifest(_0x2955d6){const _0x314330=_0x40be,_0x78a197=join(_0x2955d6,_0x314330(0x7f)+_0x314330(0x77)+'json'),_0x3e6e88=await readJson(_0x78a197,{});return asRecord(_0x3e6e88);}export async function hasFile(_0x5a490c){const _0x108454=_0x40be;try{const _0x1c4373=await stat(_0x5a490c);return _0x1c4373[_0x108454(0x75)]();}catch{return![];}}export function toRuntimeRelative(_0x4f66ce,_0x36694e){const _0x2e6fae=_0x40be;return relative(_0x4f66ce,_0x36694e)[_0x2e6fae(0x74)+'ll']('\x5c','/');}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wujie-shell/core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/src/index.mjs",
|
|
6
6
|
"exports": {
|
|
@@ -27,7 +27,8 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"get-port": "^7.2.0",
|
|
29
29
|
"ws": "^8.20.0",
|
|
30
|
-
"@wujie-shell/config": "0.1.
|
|
30
|
+
"@wujie-shell/config": "0.1.2",
|
|
31
|
+
"@wujie-shell/logger": "0.1.2"
|
|
31
32
|
},
|
|
32
33
|
"scripts": {
|
|
33
34
|
"build": "node ../../scripts/build-packages.mjs --package @wujie-shell/core"
|