@sleep2agi/agent-network 2.0.0-preview.36 → 2.0.0-preview.37

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.
@@ -1 +1 @@
1
- const a0_0x2b9d70=a0_0x2bab;(function(_0xbd5d13,_0xd5577b){const _0x248d30=a0_0x2bab,_0x3df069=_0xbd5d13();while(!![]){try{const _0x313cb9=parseInt(_0x248d30(0x156))/0x1*(parseInt(_0x248d30(0x14d))/0x2)+-parseInt(_0x248d30(0x18d))/0x3+-parseInt(_0x248d30(0x189))/0x4+parseInt(_0x248d30(0x155))/0x5+parseInt(_0x248d30(0x19c))/0x6+-parseInt(_0x248d30(0x16d))/0x7+parseInt(_0x248d30(0x154))/0x8;if(_0x313cb9===_0xd5577b)break;else _0x3df069['push'](_0x3df069['shift']());}catch(_0x38200f){_0x3df069['push'](_0x3df069['shift']());}}}(a0_0x4f13,0xd7133));function a0_0x2bab(_0x2b82d1,_0x2ae221){_0x2b82d1=_0x2b82d1-0x148;const _0x4f1315=a0_0x4f13();let _0x2babd6=_0x4f1315[_0x2b82d1];return _0x2babd6;}import{EventEmitter as a0_0x531d19}from'events';import{hostname as a0_0x386d06}from'os';class T extends a0_0x531d19{[a0_0x2b9d70(0x14b)];[a0_0x2b9d70(0x17e)];[a0_0x2b9d70(0x17d)];[a0_0x2b9d70(0x18b)];[a0_0x2b9d70(0x14f)];[a0_0x2b9d70(0x159)];[a0_0x2b9d70(0x158)];['heartbeatTimer'];[a0_0x2b9d70(0x166)];[a0_0x2b9d70(0x18f)]=!0x1;constructor(_0x5a5bf8){const _0x5433dc=a0_0x2b9d70;super();if(this['url']=_0x5a5bf8[_0x5433dc(0x14b)][_0x5433dc(0x179)](/\/$/,''),this[_0x5433dc(0x17e)]=_0x5a5bf8[_0x5433dc(0x17e)],this[_0x5433dc(0x17d)]=_0x5a5bf8[_0x5433dc(0x17d)],this['agent']=_0x5a5bf8[_0x5433dc(0x18b)]||_0x5433dc(0x14a),this[_0x5433dc(0x14f)]='sdk-'+_0x5a5bf8[_0x5433dc(0x17e)]+'-'+Date['now']()[_0x5433dc(0x15b)](0x24),this['heartbeatInterval']=_0x5a5bf8[_0x5433dc(0x159)]??0x2bf20,this['reconnectDelay']=_0x5a5bf8['reconnectDelay']??0xbb8,_0x5a5bf8[_0x5433dc(0x176)]!==!0x1)this[_0x5433dc(0x14e)]();}[a0_0x2b9d70(0x194)](_0x516e45){const _0x17ce07=a0_0x2b9d70;console['log']('['+new Date()[_0x17ce07(0x15c)]()[_0x17ce07(0x19b)](0x0,0x8)+_0x17ce07(0x198)+this[_0x17ce07(0x17e)]+']\x20'+_0x516e45);}async['call'](_0x1666b1,_0xbd8861){const _0x4e2182=a0_0x2b9d70;let _0x43a981={'Content-Type':_0x4e2182(0x178),'Accept':_0x4e2182(0x173)};if(this[_0x4e2182(0x17d)])_0x43a981[_0x4e2182(0x17c)]=_0x4e2182(0x184)+this[_0x4e2182(0x17d)];let _0x16604a=await(await fetch(this[_0x4e2182(0x14b)]+_0x4e2182(0x17a),{'method':'POST','headers':_0x43a981,'body':JSON[_0x4e2182(0x190)]({'jsonrpc':'2.0','id':Date[_0x4e2182(0x15d)](),'method':_0x4e2182(0x18c),'params':{'name':_0x1666b1,'arguments':_0xbd8861}})}))[_0x4e2182(0x191)](),_0x3c9b50=_0x16604a[_0x4e2182(0x185)](/data: (.+)/),_0xf25bd1=_0x3c9b50?JSON[_0x4e2182(0x16f)](_0x3c9b50[0x1]):JSON[_0x4e2182(0x16f)](_0x16604a),_0x1e0251=_0xf25bd1?.['result']?.[_0x4e2182(0x172)]?.[0x0]?.[_0x4e2182(0x191)];return _0x1e0251?JSON[_0x4e2182(0x16f)](_0x1e0251):_0xf25bd1;}async['connect'](){const _0x41a5f0=a0_0x2b9d70;if(this['running'])return;this[_0x41a5f0(0x18f)]=!0x0,await this['status'](_0x41a5f0(0x180)),this[_0x41a5f0(0x194)](_0x41a5f0(0x186)),this['heartbeatTimer']=setInterval(()=>{const _0x52f7ef=_0x41a5f0;this[_0x52f7ef(0x168)]('idle')[_0x52f7ef(0x157)](_0x4e6c58=>this[_0x52f7ef(0x194)](_0x52f7ef(0x152)+_0x4e6c58['message']));},this[_0x41a5f0(0x159)]),this['connectSSE']();}async[a0_0x2b9d70(0x170)](){const _0x28546f=a0_0x2b9d70;if(this[_0x28546f(0x18f)]=!0x1,this['sseAbort']?.[_0x28546f(0x163)](),this[_0x28546f(0x174)])clearInterval(this[_0x28546f(0x174)]);await this[_0x28546f(0x168)](_0x28546f(0x151))['catch'](()=>{}),this[_0x28546f(0x194)]('disconnected');}async[a0_0x2b9d70(0x183)](_0x44d910,_0x17de15,_0x46ce22=a0_0x2b9d70(0x177)){const _0x36afb1=a0_0x2b9d70;return this[_0x36afb1(0x164)](_0x36afb1(0x199),{'alias':_0x44d910,'task':_0x17de15,'priority':_0x46ce22,'from_session':this[_0x36afb1(0x17e)]});}async['message'](_0x8b38e6,_0x22b2c6){return this['call']('send_message',{'alias':_0x8b38e6,'message':_0x22b2c6,'from_session':this['alias']});}async['reply'](_0x38eb70,_0x4693ef,_0x248065='completed'){const _0x304af4=a0_0x2b9d70;return this[_0x304af4(0x164)](_0x304af4(0x15a),{'task_id':_0x38eb70,'text':_0x4693ef,'status':_0x248065});}async[a0_0x2b9d70(0x168)](_0x6ab907,_0x303448){const _0x1367d4=a0_0x2b9d70;return this['call'](_0x1367d4(0x148),{'resume_id':this[_0x1367d4(0x14f)],'alias':this['alias'],'status':_0x6ab907,'server':a0_0x386d06(),'hostname':a0_0x386d06(),'agent':this[_0x1367d4(0x18b)],'project_dir':process[_0x1367d4(0x196)](),..._0x303448});}async[a0_0x2b9d70(0x149)](){const _0x2153f5=a0_0x2b9d70;return this[_0x2153f5(0x164)](_0x2153f5(0x167),{});}async[a0_0x2b9d70(0x162)](_0x49487b,_0x1b70f8){const _0x41b696=a0_0x2b9d70;return this[_0x41b696(0x164)]('broadcast',{'message':_0x49487b,'filter_server':_0x1b70f8?.[_0x41b696(0x187)],'filter_status':_0x1b70f8?.['status']});}async[a0_0x2b9d70(0x16a)](){const _0x155787=a0_0x2b9d70;let _0x343d58=encodeURIComponent(this[_0x155787(0x17e)]),_0x5c91ef=this[_0x155787(0x14b)]+'/events/'+_0x343d58,_0x24233=this[_0x155787(0x158)];while(this['running']){try{this[_0x155787(0x166)]=new AbortController();let _0x2f3d37={'Accept':_0x155787(0x169)};if(this['token'])_0x2f3d37[_0x155787(0x17c)]=_0x155787(0x184)+this[_0x155787(0x17d)];let _0x5a1004=await fetch(_0x5c91ef,{'headers':_0x2f3d37,'signal':this[_0x155787(0x166)][_0x155787(0x18e)]});if(!_0x5a1004['ok']||!_0x5a1004[_0x155787(0x160)]){this[_0x155787(0x194)](_0x155787(0x18a)+_0x5a1004[_0x155787(0x168)]),await this[_0x155787(0x153)](_0x24233),_0x24233=Math[_0x155787(0x192)](_0x24233*1.5,0xea60);continue;}_0x24233=this['reconnectDelay'];let _0x40bc8b=_0x5a1004[_0x155787(0x160)]['getReader'](),_0x2b7af2=new TextDecoder(),_0x3a0ca6='';while(this[_0x155787(0x18f)]){let {done:_0x51adba,value:_0x2697b5}=await _0x40bc8b[_0x155787(0x197)]();if(_0x51adba)break;_0x3a0ca6+=_0x2b7af2[_0x155787(0x19a)](_0x2697b5,{'stream':!0x0});let _0x3ce9b8=_0x3a0ca6[_0x155787(0x150)]('\x0a');_0x3a0ca6=_0x3ce9b8[_0x155787(0x15f)]()||'';for(let _0x46e808 of _0x3ce9b8){if(!_0x46e808[_0x155787(0x171)](_0x155787(0x19d)))continue;try{let _0x1db68e=JSON[_0x155787(0x16f)](_0x46e808['slice'](0x6));if(_0x1db68e[_0x155787(0x182)]===_0x155787(0x17f)){this[_0x155787(0x194)](_0x155787(0x17b)),this['emit'](_0x155787(0x17f));continue;}if(_0x1db68e[_0x155787(0x182)]===_0x155787(0x16c)||_0x1db68e[_0x155787(0x182)]===_0x155787(0x175)||_0x1db68e['type']===_0x155787(0x162))await this['processInbox']();}catch{}}}}catch(_0x530986){if(_0x530986[_0x155787(0x181)]==='AbortError')break;this[_0x155787(0x16e)]('error',_0x530986),this[_0x155787(0x194)](_0x155787(0x14c)+_0x530986[_0x155787(0x16b)]);}if(this['running'])this[_0x155787(0x16e)](_0x155787(0x161)),this['log'](_0x155787(0x15e)+_0x24233/0x3e8+_0x155787(0x165)),await this[_0x155787(0x153)](_0x24233),_0x24233=Math[_0x155787(0x192)](_0x24233*1.5,0xea60);}}async['processInbox'](){const _0x1f4ddf=a0_0x2b9d70;try{let _0x4e3eac=(await this[_0x1f4ddf(0x164)](_0x1f4ddf(0x195),{'alias':this[_0x1f4ddf(0x17e)],'limit':0xa}))?.[_0x1f4ddf(0x193)]||[];for(let _0x18b39b of _0x4e3eac)await this[_0x1f4ddf(0x164)](_0x1f4ddf(0x188),{'alias':this[_0x1f4ddf(0x17e)],'message_id':_0x18b39b['id']}),this[_0x1f4ddf(0x194)]('←\x20'+_0x18b39b['from_session']+':\x20'+_0x18b39b['content'][_0x1f4ddf(0x19b)](0x0,0x3c)),this[_0x1f4ddf(0x16e)]('task',_0x18b39b),this[_0x1f4ddf(0x16e)](_0x1f4ddf(0x16b),_0x18b39b);}catch(_0xb164c0){this[_0x1f4ddf(0x194)]('inbox\x20error:\x20'+_0xb164c0[_0x1f4ddf(0x16b)]);}}[a0_0x2b9d70(0x153)](_0x3df01c){return new Promise(_0x14a0e1=>setTimeout(_0x14a0e1,_0x3df01c));}}function a0_0x4f13(){const _0xf24ea1=['token','alias','connected','idle','name','type','send','Bearer\x20','match','registered','server','ack_inbox','1597744fQJLOt','SSE\x20failed:\x20','agent','tools/call','689781fqxGTc','signal','running','stringify','text','min','messages','log','get_inbox','cwd','read',']\x20[commhub:','send_task','decode','slice','4454694VSlqfx','data:\x20','report_status','getAllStatus','sdk','url','SSE\x20error:\x20','142046ETBTYm','connect','resumeId','split','offline','heartbeat\x20failed:\x20','sleep','12421576vGGgSn','4170145IeKtpb','2LdZLQq','catch','reconnectDelay','heartbeatInterval','reply','toString','toTimeString','now','SSE\x20reconnecting\x20in\x20','pop','body','disconnected','broadcast','abort','call','s...','sseAbort','get_all_status','status','text/event-stream','connectSSE','message','new_task','12326377QQXiJM','emit','parse','disconnect','startsWith','content','application/json,\x20text/event-stream','heartbeatTimer','new_message','autoConnect','normal','application/json','replace','/mcp','SSE\x20connected','Authorization'];a0_0x4f13=function(){return _0xf24ea1;};return a0_0x4f13();}var $=T;export{$ as default,T as CommHub};
1
+ const a0_0x513ac8=a0_0x5bbe;(function(_0x461125,_0x2b1536){const _0x3b8d54=a0_0x5bbe,_0x1fd87c=_0x461125();while(!![]){try{const _0x3ea6e7=parseInt(_0x3b8d54(0x11d))/0x1+parseInt(_0x3b8d54(0xfd))/0x2*(-parseInt(_0x3b8d54(0x125))/0x3)+parseInt(_0x3b8d54(0x114))/0x4*(parseInt(_0x3b8d54(0x108))/0x5)+-parseInt(_0x3b8d54(0x11e))/0x6*(-parseInt(_0x3b8d54(0x10c))/0x7)+-parseInt(_0x3b8d54(0xf5))/0x8+-parseInt(_0x3b8d54(0x112))/0x9+parseInt(_0x3b8d54(0xe0))/0xa*(parseInt(_0x3b8d54(0xfa))/0xb);if(_0x3ea6e7===_0x2b1536)break;else _0x1fd87c['push'](_0x1fd87c['shift']());}catch(_0x44cddc){_0x1fd87c['push'](_0x1fd87c['shift']());}}}(a0_0xb393,0x9726e));import{EventEmitter as a0_0x34066f}from'events';import{hostname as a0_0x4d2b35}from'os';class T extends a0_0x34066f{['url'];[a0_0x513ac8(0xd9)];['token'];['agent'];['resumeId'];[a0_0x513ac8(0x121)];[a0_0x513ac8(0xfc)];[a0_0x513ac8(0xce)];[a0_0x513ac8(0xd7)];['running']=!0x1;constructor(_0x17115f){const _0x5b6ec1=a0_0x513ac8;super();if(this[_0x5b6ec1(0x107)]=_0x17115f['url'][_0x5b6ec1(0xe5)](/\/$/,''),this[_0x5b6ec1(0xd9)]=_0x17115f[_0x5b6ec1(0xd9)],this['token']=_0x17115f['token'],this[_0x5b6ec1(0x106)]=_0x17115f['agent']||'sdk',this[_0x5b6ec1(0xe2)]=_0x5b6ec1(0x109)+_0x17115f[_0x5b6ec1(0xd9)]+'-'+Date['now']()[_0x5b6ec1(0xe6)](0x24),this['heartbeatInterval']=_0x17115f[_0x5b6ec1(0x121)]??0x2bf20,this[_0x5b6ec1(0xfc)]=_0x17115f[_0x5b6ec1(0xfc)]??0xbb8,_0x17115f[_0x5b6ec1(0xdb)]!==!0x1)this[_0x5b6ec1(0xe8)]();}[a0_0x513ac8(0xed)](_0x3d95f6){const _0x594b59=a0_0x513ac8;console[_0x594b59(0xed)]('['+new Date()[_0x594b59(0x119)]()['slice'](0x0,0x8)+_0x594b59(0xd5)+this[_0x594b59(0xd9)]+']\x20'+_0x3d95f6);}async[a0_0x513ac8(0xe7)](_0x250003,_0x19d642){const _0x387ece=a0_0x513ac8;let _0x2caab5={'Content-Type':'application/json','Accept':_0x387ece(0xd8)};if(this['token'])_0x2caab5['Authorization']=_0x387ece(0xf8)+this['token'];let _0x2f25de=await(await fetch(this['url']+_0x387ece(0x113),{'method':_0x387ece(0x11c),'headers':_0x2caab5,'body':JSON['stringify']({'jsonrpc':_0x387ece(0xda),'id':Date['now'](),'method':_0x387ece(0x126),'params':{'name':_0x250003,'arguments':_0x19d642}})}))['text'](),_0x3efe78=_0x2f25de[_0x387ece(0x10e)](/data: (.+)/),_0x57f97b=_0x3efe78?JSON[_0x387ece(0xf2)](_0x3efe78[0x1]):JSON[_0x387ece(0xf2)](_0x2f25de),_0x3fd4fe=_0x57f97b?.[_0x387ece(0x101)]?.[_0x387ece(0x100)]?.[0x0]?.[_0x387ece(0xd6)];return _0x3fd4fe?JSON[_0x387ece(0xf2)](_0x3fd4fe):_0x57f97b;}async[a0_0x513ac8(0xe8)](){const _0x196a17=a0_0x513ac8;if(this[_0x196a17(0xdc)])return;this[_0x196a17(0xdc)]=!0x0,await this[_0x196a17(0x10b)](_0x196a17(0xfb)),this[_0x196a17(0xed)](_0x196a17(0x11f)),this[_0x196a17(0xce)]=setInterval(()=>{const _0x36fe41=_0x196a17;this[_0x36fe41(0x10b)](_0x36fe41(0xfb))['catch'](_0x28f2ca=>this[_0x36fe41(0xed)](_0x36fe41(0x10a)+_0x28f2ca['message']));},this[_0x196a17(0x121)]),this[_0x196a17(0xe3)]();}async[a0_0x513ac8(0xd4)](){const _0x3b320b=a0_0x513ac8;if(this[_0x3b320b(0xdc)]=!0x1,this[_0x3b320b(0xd7)]?.[_0x3b320b(0xcf)](),this[_0x3b320b(0xce)])clearInterval(this[_0x3b320b(0xce)]);await this['status'](_0x3b320b(0x103))[_0x3b320b(0x102)](()=>{}),this['log'](_0x3b320b(0xee));}async['send'](_0x28e06e,_0x144aaf,_0x5e4941=a0_0x513ac8(0xd2)){const _0x760a7c=a0_0x513ac8;return this['call']('send_task',{'alias':_0x28e06e,'task':_0x144aaf,'priority':_0x5e4941,'from_session':this[_0x760a7c(0xd9)]});}async[a0_0x513ac8(0xe1)](_0x324c39,_0x51fc8d){const _0x4b2440=a0_0x513ac8;return this[_0x4b2440(0xe7)]('send_message',{'alias':_0x324c39,'message':_0x51fc8d,'from_session':this[_0x4b2440(0xd9)]});}async[a0_0x513ac8(0x123)](_0x111cb8,_0x474db4,_0x1d2ef4=a0_0x513ac8(0xf9)){const _0x437de2=a0_0x513ac8;return this[_0x437de2(0xe7)]('reply',{'task_id':_0x111cb8,'text':_0x474db4,'status':_0x1d2ef4});}async[a0_0x513ac8(0x10b)](_0x486a18,_0x2927d2){const _0x2c245d=a0_0x513ac8;return this[_0x2c245d(0xe7)](_0x2c245d(0x117),{'resume_id':this['resumeId'],'alias':this[_0x2c245d(0xd9)],'status':_0x486a18,'server':a0_0x4d2b35(),'hostname':a0_0x4d2b35(),'agent':this['agent'],'project_dir':process[_0x2c245d(0xe9)](),..._0x2927d2});}async[a0_0x513ac8(0x10f)](){const _0x538eee=a0_0x513ac8;return this['call'](_0x538eee(0xdf),{});}async[a0_0x513ac8(0xef)](_0x23238c,_0x1afde9){const _0x95a862=a0_0x513ac8;return this[_0x95a862(0xe7)]('broadcast',{'message':_0x23238c,'filter_server':_0x1afde9?.[_0x95a862(0xf3)],'filter_status':_0x1afde9?.[_0x95a862(0x10b)]});}async['connectSSE'](){const _0x289ab1=a0_0x513ac8;let _0x33c4cd=encodeURIComponent(this[_0x289ab1(0xd9)]),_0x2180d2=this[_0x289ab1(0x107)]+'/events/'+_0x33c4cd,_0x772da7=this['reconnectDelay'];while(this[_0x289ab1(0xdc)]){try{this[_0x289ab1(0xd7)]=new AbortController();let _0x2b4186={'Accept':_0x289ab1(0xe4)};if(this['token'])_0x2b4186[_0x289ab1(0x105)]='Bearer\x20'+this[_0x289ab1(0xff)];let _0x1f57d5=await fetch(_0x2180d2,{'headers':_0x2b4186,'signal':this['sseAbort'][_0x289ab1(0x111)]});if(!_0x1f57d5['ok']||!_0x1f57d5['body']){this['log']('SSE\x20failed:\x20'+_0x1f57d5[_0x289ab1(0x10b)]),await this[_0x289ab1(0x124)](_0x772da7),_0x772da7=Math[_0x289ab1(0xd0)](_0x772da7*1.5,0xea60);continue;}_0x772da7=this[_0x289ab1(0xfc)];let _0x4d1bb4=_0x1f57d5[_0x289ab1(0xde)][_0x289ab1(0xea)](),_0x51b6c6=new TextDecoder(),_0xca76e0='';while(this[_0x289ab1(0xdc)]){let {done:_0x8f1feb,value:_0x3ca6b3}=await _0x4d1bb4[_0x289ab1(0x104)]();if(_0x8f1feb)break;_0xca76e0+=_0x51b6c6[_0x289ab1(0xeb)](_0x3ca6b3,{'stream':!0x0});let _0x5c74d7=_0xca76e0['split']('\x0a');_0xca76e0=_0x5c74d7[_0x289ab1(0xec)]()||'';for(let _0x4eb763 of _0x5c74d7){if(!_0x4eb763[_0x289ab1(0xfe)](_0x289ab1(0xf7)))continue;try{let _0xd53f8a=JSON['parse'](_0x4eb763['slice'](0x6));if(_0xd53f8a[_0x289ab1(0xd1)]===_0x289ab1(0x11b)){this[_0x289ab1(0xed)]('SSE\x20connected'),this['emit'](_0x289ab1(0x11b));continue;}if(_0xd53f8a[_0x289ab1(0xd1)]===_0x289ab1(0xd3)||_0xd53f8a[_0x289ab1(0xd1)]==='new_message'||_0xd53f8a[_0x289ab1(0xd1)]===_0x289ab1(0xef))await this[_0x289ab1(0xf0)]();}catch{}}}}catch(_0x141dd9){if(_0x141dd9[_0x289ab1(0x122)]===_0x289ab1(0xf6))break;this['emit']('error',_0x141dd9),this[_0x289ab1(0xed)](_0x289ab1(0xdd)+_0x141dd9[_0x289ab1(0xe1)]);}if(this[_0x289ab1(0xdc)])this[_0x289ab1(0x120)](_0x289ab1(0xee)),this[_0x289ab1(0xed)]('SSE\x20reconnecting\x20in\x20'+_0x772da7/0x3e8+_0x289ab1(0xf4)),await this['sleep'](_0x772da7),_0x772da7=Math['min'](_0x772da7*1.5,0xea60);}}async[a0_0x513ac8(0xf0)](){const _0x1d4aed=a0_0x513ac8;try{let _0x32e010=(await this[_0x1d4aed(0xe7)](_0x1d4aed(0x110),{'alias':this[_0x1d4aed(0xd9)],'limit':0xa}))?.[_0x1d4aed(0x10d)]||[];for(let _0x4f066c of _0x32e010)await this['call'](_0x1d4aed(0x11a),{'alias':this[_0x1d4aed(0xd9)],'message_id':_0x4f066c['id']}),this[_0x1d4aed(0xed)]('←\x20'+_0x4f066c[_0x1d4aed(0xf1)]+':\x20'+_0x4f066c[_0x1d4aed(0x100)][_0x1d4aed(0x115)](0x0,0x3c)),this[_0x1d4aed(0x120)](_0x1d4aed(0x118),_0x4f066c),this['emit'](_0x1d4aed(0xe1),_0x4f066c);}catch(_0x1f507e){this[_0x1d4aed(0xed)](_0x1d4aed(0x116)+_0x1f507e[_0x1d4aed(0xe1)]);}}['sleep'](_0x46e0db){return new Promise(_0x1635db=>setTimeout(_0x1635db,_0x46e0db));}}function a0_0xb393(){const _0x27962c=['198234KexCMv','/mcp','902424eIcAIK','slice','inbox\x20error:\x20','report_status','task','toTimeString','ack_inbox','connected','POST','253727sFoTZa','6yDQMHD','registered','emit','heartbeatInterval','name','reply','sleep','276kYEkGa','tools/call','heartbeatTimer','abort','min','type','normal','new_task','disconnect',']\x20[commhub:','text','sseAbort','application/json,\x20text/event-stream','alias','2.0','autoConnect','running','SSE\x20error:\x20','body','get_all_status','15734370NTeoQd','message','resumeId','connectSSE','text/event-stream','replace','toString','call','connect','cwd','getReader','decode','pop','log','disconnected','broadcast','processInbox','from_session','parse','server','s...','9414408BPMnWg','AbortError','data:\x20','Bearer\x20','completed','11LtsosP','idle','reconnectDelay','23164FLTyTw','startsWith','token','content','result','catch','offline','read','Authorization','agent','url','5YeFfCJ','sdk-','heartbeat\x20failed:\x20','status','5815033LIGteI','messages','match','getAllStatus','get_inbox','signal'];a0_0xb393=function(){return _0x27962c;};return a0_0xb393();}function a0_0x5bbe(_0x4f28c0,_0x423d81){_0x4f28c0=_0x4f28c0-0xce;const _0xb39362=a0_0xb393();let _0x5bbee5=_0xb39362[_0x4f28c0];return _0x5bbee5;}var $=T;export{$ as default,T as CommHub};
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env bun
2
- function a0_0xa7c7(_0x46bb2b,_0x4bb9ea){_0x46bb2b=_0x46bb2b-0x10c;const _0x4830c7=a0_0x4830();let _0xa7c7bd=_0x4830c7[_0x46bb2b];return _0xa7c7bd;}const a0_0x5ea37e=a0_0xa7c7;(function(_0x3361f4,_0xee625e){const _0x1af2bf=a0_0xa7c7,_0x53584e=_0x3361f4();while(!![]){try{const _0x549617=-parseInt(_0x1af2bf(0x12d))/0x1*(parseInt(_0x1af2bf(0x15c))/0x2)+parseInt(_0x1af2bf(0x172))/0x3+parseInt(_0x1af2bf(0x18e))/0x4*(parseInt(_0x1af2bf(0x17f))/0x5)+-parseInt(_0x1af2bf(0x18b))/0x6*(parseInt(_0x1af2bf(0x179))/0x7)+parseInt(_0x1af2bf(0x16c))/0x8+-parseInt(_0x1af2bf(0x11c))/0x9+parseInt(_0x1af2bf(0x132))/0xa;if(_0x549617===_0xee625e)break;else _0x53584e['push'](_0x53584e['shift']());}catch(_0x4a36c9){_0x53584e['push'](_0x53584e['shift']());}}}(a0_0x4830,0xecda8));import{readFileSync as a0_0x563fc4,existsSync as a0_0x1fa529}from'fs';import{join as a0_0x128240}from'path';import{hostname as a0_0x47e6a7}from'os';import{execSync as a0_0x59515c}from'child_process';import{Server as a0_0x526e06}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x3f30ea}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x329add,CallToolRequestSchema as a0_0x57282d}from'@modelcontextprotocol/sdk/types.js';function p(_0x556682){const _0x311735=a0_0xa7c7;if(!a0_0x1fa529(_0x556682))return;for(let _0x3fba80 of a0_0x563fc4(_0x556682,_0x311735(0x129))[_0x311735(0x10e)]('\x0a')){let _0x48ae86=_0x3fba80[_0x311735(0x116)]();if(!_0x48ae86||_0x48ae86[_0x311735(0x174)]('#'))continue;let _0x947988=_0x48ae86[_0x311735(0x18d)]('=');if(_0x947988<0x0)continue;let _0x1866c2=_0x48ae86[_0x311735(0x10f)](0x0,_0x947988)['trim'](),_0x260dcf=_0x48ae86[_0x311735(0x10f)](_0x947988+0x1)['trim']()[_0x311735(0x123)](/^["']|["']$/g,'');if(!process.env[_0x1866c2])process.env[_0x1866c2]=_0x260dcf;}}function a0_0x4830(){const _0x24dd5d=['catch','token','\x20PROJECT_ENV=','SSE\x20stream\x20ended,\x20reconnecting...','CommHub\x20init\x20failed:\x20','14656296ElAjZT','cwd','send_message','SIGTERM','join','from','3993039WpAqgQ','stderr','startsWith','error','completed','report_status','Bearer\x20','14BBodfC','connecting\x20to\x20','←\x20message\x20from\x20','0.3.0',']\x20[commhub]\x20','/mcp','38905wiZibg','randomUUID','Task\x20content','/events/','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','POST','priority','parse\x20error:\x20','high','stringify','no\x20response','replied','3387018byVvCO','commhub_get_all_status','indexOf','4NXlhbO','content','working','string','.env','task','tmux\x20display-message\x20-p\x20\x27#S\x27','init\x20failed:\x20','split','slice','\x20from\x20','\x20CWD=','object','notifications/claude/channel','setRequestHandler','commhub-channel','trim','2.0','alias','SSE\x20error:\x20','unknown\x20tool','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','12566493cfEyJd','SSE\x20connected\x20as\x20\x22','starting\x20SSE\x20listener...','Session\x20alias:\x20','\x20ALIAS=','send_reply','commhub','replace','\x22\x20(','Target\x20session\x20alias','warning:\x20could\x20not\x20register:\x20','cancelled','status','utf-8','read','hub','statusText','2956hThAMQ','ENV:\x20URL=','new_task','idle','text','17789560WfOkHE','inbox_count','exit','http://127.0.0.1:9200','result',':\x20inbox_count=','Authorization','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','send_task','from_session','failed','message','ready\x20—\x20waiting\x20for\x20events','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','session\x20disconnected','in_progress','application/json,\x20text/event-stream','Progress\x200-100','→\x20injected\x20task\x20','pop','parse','type','fatal:\x20','end','Priority\x20(default:\x20normal)','commhub_report_status','params','2025-03-26','MCP\x20stdio\x20connected','commhub_send_message','Message\x20content','blocked','number','normal','config.json','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','commhub_reply','messages','new_message','write','message_id','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','984UNWOxh','length','commhub_send_task','get','data:\x20','stdin','initialize','then','Reply\x20text\x20/\x20result\x20summary','application/json','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.'];a0_0x4830=function(){return _0x24dd5d;};return a0_0x4830();}var C=process.env.HOME||'~',T=a0_0x128240(C,'.claude/channels/commhub');p(a0_0x128240(T,a0_0x5ea37e(0x192)));var L=process['cwd']()[a0_0x5ea37e(0x123)](/\//g,'-');p(a0_0x128240(T,L,a0_0x5ea37e(0x192)));function U(){const _0x26a3fd=a0_0x5ea37e;try{return a0_0x59515c(_0x26a3fd(0x10c),{'encoding':_0x26a3fd(0x129),'timeout':0x7d0})[_0x26a3fd(0x116)]();}catch{return'';}}function c(){const _0x4e8e55=a0_0x5ea37e;try{let _0x18ac9f=a0_0x128240(C,'.anet',_0x4e8e55(0x154));if(a0_0x1fa529(_0x18ac9f))return JSON[_0x4e8e55(0x146)](a0_0x563fc4(_0x18ac9f,_0x4e8e55(0x129)));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H[a0_0x5ea37e(0x12b)]||a0_0x5ea37e(0x135),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x47e6a7(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x5ea37e(0x180)](),X=process.env.COMMHUB_TOKEN||H[a0_0x5ea37e(0x168)]||'';function Y(_0x7a485f){const _0x400f4c=a0_0x5ea37e;let _0x4fab9a=new Date()['toTimeString']()['slice'](0x0,0x8);process[_0x400f4c(0x173)][_0x400f4c(0x159)]('['+_0x4fab9a+_0x400f4c(0x17d)+_0x7a485f+'\x0a');}function h(_0x3065f3){return new Promise(_0x5dd4c4=>setTimeout(_0x5dd4c4,_0x3065f3));}Y(a0_0x5ea37e(0x12e)+D+a0_0x5ea37e(0x120)+Z+'\x20RESUME_ID='+w[a0_0x5ea37e(0x10f)](0x0,0x8)+'...\x20TMUX='+(f||'none')+a0_0x5ea37e(0x111)+process['cwd']()+a0_0x5ea37e(0x169)+L);var k=new Map(),K=new a0_0x526e06({'name':a0_0x5ea37e(0x115),'version':a0_0x5ea37e(0x17c)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':['Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.',a0_0x5ea37e(0x15b),a0_0x5ea37e(0x11b),a0_0x5ea37e(0x11f)+Z][a0_0x5ea37e(0x170)]('\x0a')});K[a0_0x5ea37e(0x114)](a0_0x329add,async()=>({'tools':[{'name':a0_0x5ea37e(0x156),'description':a0_0x5ea37e(0x13f),'inputSchema':{'type':'object','properties':{'task_id':{'type':'string','description':'The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)'},'text':{'type':a0_0x5ea37e(0x191),'description':a0_0x5ea37e(0x164)},'status':{'type':'string','enum':[a0_0x5ea37e(0x176),a0_0x5ea37e(0x13c),a0_0x5ea37e(0x127),'blocked','error',a0_0x5ea37e(0x141)],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':[a0_0x5ea37e(0x131)]}},{'name':'commhub_report_status','description':a0_0x5ea37e(0x139),'inputSchema':{'type':a0_0x5ea37e(0x112),'properties':{'status':{'type':a0_0x5ea37e(0x191),'enum':[a0_0x5ea37e(0x190),'idle',a0_0x5ea37e(0x151),a0_0x5ea37e(0x175)]},'task':{'type':a0_0x5ea37e(0x191),'description':'Current\x20task\x20description'},'progress':{'type':a0_0x5ea37e(0x152),'description':a0_0x5ea37e(0x143)}},'required':[a0_0x5ea37e(0x128)]}},{'name':a0_0x5ea37e(0x15e),'description':a0_0x5ea37e(0x183),'inputSchema':{'type':a0_0x5ea37e(0x112),'properties':{'alias':{'type':a0_0x5ea37e(0x191),'description':a0_0x5ea37e(0x125)},'task':{'type':a0_0x5ea37e(0x191),'description':a0_0x5ea37e(0x181)},'priority':{'type':a0_0x5ea37e(0x191),'enum':[a0_0x5ea37e(0x187),'normal','low'],'description':a0_0x5ea37e(0x14a)}},'required':['alias',a0_0x5ea37e(0x193)]}},{'name':a0_0x5ea37e(0x14f),'description':a0_0x5ea37e(0x166),'inputSchema':{'type':a0_0x5ea37e(0x112),'properties':{'alias':{'type':a0_0x5ea37e(0x191),'description':a0_0x5ea37e(0x125)},'message':{'type':a0_0x5ea37e(0x191),'description':a0_0x5ea37e(0x150)}},'required':[a0_0x5ea37e(0x118),a0_0x5ea37e(0x13d)]}},{'name':a0_0x5ea37e(0x18c),'description':a0_0x5ea37e(0x155),'inputSchema':{'type':'object','properties':{}}}]}));async function P(_0x22cd11,_0x464bee){const _0x461efb=a0_0x5ea37e;let _0x14180a=await fetch(D+_0x461efb(0x17e),{'method':'POST','headers':{'Content-Type':_0x461efb(0x165),'Accept':_0x461efb(0x142),...X?{'Authorization':_0x461efb(0x178)+X}:{}},'body':JSON[_0x461efb(0x188)]({'jsonrpc':_0x461efb(0x117),'id':0x1,'method':_0x461efb(0x162),'params':{'protocolVersion':_0x461efb(0x14d),'capabilities':{},'clientInfo':{'name':_0x461efb(0x115),'version':_0x461efb(0x17c)}}})});if(!_0x14180a['ok']){let _0x5c73a8=await _0x14180a['text']();return Y(_0x461efb(0x16b)+_0x14180a['status']+'\x20'+_0x5c73a8[_0x461efb(0x10f)](0x0,0x64)),{'ok':!0x1,'error':_0x461efb(0x10d)+_0x14180a[_0x461efb(0x128)]};}await _0x14180a[_0x461efb(0x131)]();let _0x3f855a=(await(await fetch(D+'/mcp',{'method':_0x461efb(0x184),'headers':{'Content-Type':_0x461efb(0x165),'Accept':_0x461efb(0x142),...X?{'Authorization':_0x461efb(0x178)+X}:{}},'body':JSON[_0x461efb(0x188)]({'jsonrpc':_0x461efb(0x117),'id':0x2,'method':'tools/call','params':{'name':_0x22cd11,'arguments':_0x464bee}})}))[_0x461efb(0x131)]())['split']('\x0a')['find'](_0x365fea=>_0x365fea[_0x461efb(0x174)](_0x461efb(0x160)));if(_0x3f855a){let _0x5483db=JSON[_0x461efb(0x146)](_0x3f855a[_0x461efb(0x10f)](0x6));return _0x5483db?.['result']?.[_0x461efb(0x18f)]?.[0x0]?.[_0x461efb(0x131)]?JSON['parse'](_0x5483db[_0x461efb(0x136)][_0x461efb(0x18f)][0x0][_0x461efb(0x131)]):_0x5483db;}return{'ok':!0x1,'error':_0x461efb(0x189)};}K[a0_0x5ea37e(0x114)](a0_0x57282d,async _0x2c7078=>{const _0x5b272b=a0_0x5ea37e;let {name:_0x24521d,arguments:_0x3182c3}=_0x2c7078[_0x5b272b(0x14c)];if(_0x24521d==='commhub_reply'){let {task_id:_0x554e0e,text:_0x26d1f4,status:_0x31f356}=_0x3182c3;if(_0x31f356===_0x5b272b(0x176)||_0x31f356===_0x5b272b(0x13c)||_0x31f356===_0x5b272b(0x127)){let _0x1a65b4=_0x31f356===_0x5b272b(0x176)?_0x5b272b(0x18a):_0x31f356,_0x22adfe=_0x554e0e?k[_0x5b272b(0x15f)](_0x554e0e)||_0x5b272b(0x12b):_0x5b272b(0x12b),_0x197342=await P(_0x5b272b(0x121),{'alias':_0x22adfe,'text':_0x26d1f4,'in_reply_to':_0x554e0e||void 0x0,'status':_0x1a65b4,'from_session':Z});if(_0x554e0e)k['delete'](_0x554e0e);return{'content':[{'type':_0x5b272b(0x131),'text':JSON[_0x5b272b(0x188)](_0x197342)}]};}let _0x263016=await P(_0x5b272b(0x177),{'resume_id':w,'alias':Z,'status':_0x31f356===_0x5b272b(0x151)?_0x5b272b(0x151):_0x31f356===_0x5b272b(0x175)?_0x5b272b(0x175):_0x5b272b(0x190),'task':_0x26d1f4['slice'](0x0,0xc8),'output':_0x26d1f4});return{'content':[{'type':_0x5b272b(0x131),'text':JSON[_0x5b272b(0x188)](_0x263016)}]};}if(_0x24521d===_0x5b272b(0x14b)){let {status:_0x1ae981,task:_0x503775,progress:_0x41c934}=_0x3182c3,_0x41579a=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x1ae981,'task':_0x503775,'progress':_0x41c934});return{'content':[{'type':_0x5b272b(0x131),'text':JSON[_0x5b272b(0x188)](_0x41579a)}]};}if(_0x24521d===_0x5b272b(0x15e)){let {alias:_0xb3b498,task:_0x217063,priority:_0x41b3d9}=_0x3182c3,_0x42d3f5=await P(_0x5b272b(0x13a),{'alias':_0xb3b498,'task':_0x217063,'priority':_0x41b3d9||_0x5b272b(0x153),'from_session':Z});return{'content':[{'type':_0x5b272b(0x131),'text':JSON[_0x5b272b(0x188)](_0x42d3f5)}]};}if(_0x24521d===_0x5b272b(0x14f)){let {alias:_0x1b1f06,message:_0x4c2a0e}=_0x3182c3,_0x96fdd3=await P(_0x5b272b(0x16e),{'alias':_0x1b1f06,'message':_0x4c2a0e,'from_session':Z});return{'content':[{'type':_0x5b272b(0x131),'text':JSON['stringify'](_0x96fdd3)}]};}if(_0x24521d===_0x5b272b(0x18c)){let _0x373c93=await P('get_all_status',{});return{'content':[{'type':'text','text':JSON['stringify'](_0x373c93)}]};}return{'content':[{'type':_0x5b272b(0x131),'text':JSON[_0x5b272b(0x188)]({'error':_0x5b272b(0x11a)})}]};});async function v(){const _0x351252=a0_0x5ea37e;let _0x262eb3=D+_0x351252(0x182)+encodeURIComponent(Z),_0x1057bb={};if(X)_0x1057bb[_0x351252(0x138)]=_0x351252(0x178)+X;Y(_0x351252(0x17a)+_0x262eb3);while(!0x0){try{let _0x2b04c4=await fetch(_0x262eb3,{'headers':_0x1057bb});if(!_0x2b04c4['ok']){Y(_0x351252(0x119)+_0x2b04c4['status']+'\x20'+_0x2b04c4[_0x351252(0x12c)]),await h(0x1388);continue;}let _0x1b52f9=_0x2b04c4['body']['getReader'](),_0x2c0aee=new TextDecoder(),_0x2df18f='';while(!0x0){let {done:_0x123800,value:_0x2c251d}=await _0x1b52f9[_0x351252(0x12a)]();if(_0x123800)break;_0x2df18f+=_0x2c0aee['decode'](_0x2c251d,{'stream':!0x0});let _0x167249=_0x2df18f[_0x351252(0x10e)]('\x0a\x0a');_0x2df18f=_0x167249[_0x351252(0x145)]()||'';for(let _0x28743c of _0x167249){let _0x3b79eb=_0x28743c[_0x351252(0x10e)]('\x0a')['find'](_0x32c769=>_0x32c769[_0x351252(0x174)]('data:\x20'));if(!_0x3b79eb)continue;try{let _0x5e81f8=JSON[_0x351252(0x146)](_0x3b79eb[_0x351252(0x10f)](0x6));await u(_0x5e81f8);}catch(_0x120fca){Y(_0x351252(0x186)+_0x120fca);}}}Y(_0x351252(0x16a));}catch(_0x7318c5){Y('SSE\x20connection\x20error:\x20'+_0x7318c5);}await h(0xbb8);}}async function u(_0x424363){const _0x36fcab=a0_0x5ea37e;if(_0x424363['type']==='connected'){Y(_0x36fcab(0x11d)+Z+'\x22');return;}if(_0x424363[_0x36fcab(0x147)]===_0x36fcab(0x158)){if(Y(_0x36fcab(0x17b)+_0x424363[_0x36fcab(0x171)]+':\x20'+_0x424363[_0x36fcab(0x13d)][_0x36fcab(0x10f)](0x0,0x3c)),await K['notification']({'method':_0x36fcab(0x113),'params':{'content':_0x424363['message'],'meta':{'sender':_0x424363['from']||_0x36fcab(0x12b),'sender_id':_0x36fcab(0x122),'user':_0x424363[_0x36fcab(0x171)]||'hub','priority':'normal'}}}),_0x424363[_0x36fcab(0x15a)])await P('ack_inbox',{'alias':Z,'message_id':_0x424363[_0x36fcab(0x15a)]});return;}if(_0x424363[_0x36fcab(0x147)]===_0x36fcab(0x12f)||_0x424363[_0x36fcab(0x147)]==='broadcast'){Y('←\x20'+_0x424363['type']+_0x36fcab(0x137)+_0x424363[_0x36fcab(0x133)]+'\x20priority='+(_0x424363[_0x36fcab(0x185)]||'normal'));let _0x46f75c=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0x46f75c?.['ok']&&_0x46f75c[_0x36fcab(0x157)]?.[_0x36fcab(0x15d)]>0x0)for(let _0x3931fb of _0x46f75c['messages']){let _0x22e883={'sender':_0x3931fb['from_session']||'hub','sender_id':_0x36fcab(0x122),'user':_0x3931fb[_0x36fcab(0x13b)]||'hub','task_id':_0x3931fb['id'],'priority':_0x3931fb[_0x36fcab(0x185)]||_0x36fcab(0x153)};k['set'](_0x3931fb['id'],_0x3931fb[_0x36fcab(0x13b)]||_0x36fcab(0x12b)),await K['notification']({'method':_0x36fcab(0x113),'params':{'content':_0x3931fb[_0x36fcab(0x18f)],'meta':_0x22e883}}),Y(_0x36fcab(0x144)+_0x3931fb['id']['slice'](0x0,0x8)+_0x36fcab(0x110)+_0x3931fb['from_session']+':\x20'+_0x3931fb[_0x36fcab(0x18f)][_0x36fcab(0x10f)](0x0,0x3c)),await P('ack_inbox',{'alias':Z,'message_id':_0x3931fb['id']});}}}async function S(){const _0x24a6f3=a0_0x5ea37e;let _0x209be3=new a0_0x3f30ea();await K['connect'](_0x209be3),Y(_0x24a6f3(0x14e)),Y(_0x24a6f3(0x11e)),v()[_0x24a6f3(0x167)](_0xc4a60f=>Y('SSE\x20fatal:\x20'+_0xc4a60f)),P(_0x24a6f3(0x177),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x47e6a7(),'hostname':a0_0x47e6a7(),'agent':'claude-code','project_dir':process[_0x24a6f3(0x16d)](),'tmux_name':f||void 0x0})[_0x24a6f3(0x163)](()=>Y('registered\x20as\x20\x22'+Z+_0x24a6f3(0x124)+w['slice'](0x0,0x8)+')'))[_0x24a6f3(0x167)](_0x581523=>Y(_0x24a6f3(0x126)+_0x581523)),setInterval(()=>{const _0x233743=_0x24a6f3;P(_0x233743(0x177),{'resume_id':w,'alias':Z,'status':_0x233743(0x130),'server':a0_0x47e6a7(),'hostname':a0_0x47e6a7(),'agent':'claude-code','project_dir':process[_0x233743(0x16d)](),'tmux_name':f||void 0x0})[_0x233743(0x167)](_0x5a118c=>Y('heartbeat\x20failed:\x20'+_0x5a118c));},0x2bf20),Y(_0x24a6f3(0x13e));}S()[a0_0x5ea37e(0x167)](_0x238457=>{const _0x2c02be=a0_0x5ea37e;Y(_0x2c02be(0x148)+_0x238457),process[_0x2c02be(0x134)](0x1);});async function N(){const _0x4181b9=a0_0x5ea37e;Y('shutting\x20down,\x20reporting\x20offline...'),await P(_0x4181b9(0x177),{'resume_id':w,'alias':Z,'status':'error','task':_0x4181b9(0x140)})[_0x4181b9(0x167)](()=>{}),process[_0x4181b9(0x134)](0x0);}process[a0_0x5ea37e(0x161)]['on'](a0_0x5ea37e(0x149),()=>N()),process['on'](a0_0x5ea37e(0x16f),()=>N()),process['on']('SIGINT',()=>N());
2
+ const a0_0x1f215a=a0_0x1abe;(function(_0x36c71c,_0x50a429){const _0x303d4a=a0_0x1abe,_0x4cc1e3=_0x36c71c();while(!![]){try{const _0x208db2=parseInt(_0x303d4a(0x270))/0x1+-parseInt(_0x303d4a(0x259))/0x2+parseInt(_0x303d4a(0x257))/0x3+parseInt(_0x303d4a(0x1fc))/0x4+-parseInt(_0x303d4a(0x261))/0x5*(parseInt(_0x303d4a(0x226))/0x6)+-parseInt(_0x303d4a(0x258))/0x7+parseInt(_0x303d4a(0x1fa))/0x8*(parseInt(_0x303d4a(0x25a))/0x9);if(_0x208db2===_0x50a429)break;else _0x4cc1e3['push'](_0x4cc1e3['shift']());}catch(_0x1174d5){_0x4cc1e3['push'](_0x4cc1e3['shift']());}}}(a0_0x3c06,0x25cd0));import{readFileSync as a0_0x2be812,existsSync as a0_0xcf5e0e}from'fs';import{join as a0_0x508ac8}from'path';import{hostname as a0_0x2d3330}from'os';import{execSync as a0_0x18f536}from'child_process';function a0_0x3c06(){const _0x49555e=['alias','init\x20failed:\x20','toTimeString','set','0.3.0',']\x20[commhub]\x20','connect','/events/','commhub_report_status','Target\x20session\x20alias','in_progress','SSE\x20stream\x20ended,\x20reconnecting...','end','.claude/channels/commhub','commhub_reply','SSE\x20fatal:\x20','error','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','send_reply','parse\x20error:\x20','completed','from_session','notifications/claude/channel','parse','POST','statusText','blocked','ack_inbox','replace','6Imqzpy','catch','content','http://127.0.0.1:9200','normal','params','new_task','string','randomUUID','claude-code','object','commhub_send_task','Progress\x200-100','Reply\x20text\x20/\x20result\x20summary','then','decode','←\x20message\x20from\x20','MCP\x20stdio\x20connected','2025-03-26','Bearer\x20','type','unknown\x20tool','starting\x20SSE\x20listener...','no\x20response','cwd','report_status','hub','warning:\x20could\x20not\x20register:\x20','stringify','find','commhub-channel','pop','join','low','number','send_task','.env','2.0','status','commhub_get_all_status','connecting\x20to\x20','from','get','tools/call','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','idle','Session\x20alias:\x20','cancelled','connected','116328XnBLgb','1096662eTzLDL','540018mvosZB','9rSpPdk','message_id','Authorization','stderr','working','failed','exit','1202785OEGBTV','replied','utf-8','setRequestHandler','ready\x20—\x20waiting\x20for\x20events','split','SIGINT','new_message','result','CommHub\x20init\x20failed:\x20','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','SSE\x20error:\x20','\x20PROJECT_ENV=','shutting\x20down,\x20reporting\x20offline...','inbox_count','36385xGIGJZ','delete','\x22\x20(','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','/mcp','\x20from\x20','fatal:\x20','SSE\x20connected\x20as\x20\x22',':\x20inbox_count=','application/json','Message\x20content','token','broadcast','message','text','heartbeat\x20failed:\x20','initialize','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','5154440buzILg','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','410392EqESRN','startsWith','messages','SSE\x20connection\x20error:\x20','application/json,\x20text/event-stream','session\x20disconnected','commhub','.anet','trim','slice','tmux\x20display-message\x20-p\x20\x27#S\x27','\x20CWD=','getReader'];a0_0x3c06=function(){return _0x49555e;};return a0_0x3c06();}import{Server as a0_0x3e42f5}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x51b092}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x487d13,CallToolRequestSchema as a0_0xf85f4}from'@modelcontextprotocol/sdk/types.js';function p(_0x63d0d1){const _0x255d60=a0_0x1abe;if(!a0_0xcf5e0e(_0x63d0d1))return;for(let _0x1b1001 of a0_0x2be812(_0x63d0d1,_0x255d60(0x263))['split']('\x0a')){let _0x235e3d=_0x1b1001['trim']();if(!_0x235e3d||_0x235e3d['startsWith']('#'))continue;let _0x443010=_0x235e3d['indexOf']('=');if(_0x443010<0x0)continue;let _0x451042=_0x235e3d[_0x255d60(0x205)](0x0,_0x443010)[_0x255d60(0x204)](),_0x15fa3b=_0x235e3d['slice'](_0x443010+0x1)['trim']()[_0x255d60(0x225)](/^["']|["']$/g,'');if(!process.env[_0x451042])process.env[_0x451042]=_0x15fa3b;}}var C=process.env.HOME||'~',T=a0_0x508ac8(C,a0_0x1f215a(0x216));p(a0_0x508ac8(T,a0_0x1f215a(0x24a)));var L=process[a0_0x1f215a(0x23e)]()['replace'](/\//g,'-');p(a0_0x508ac8(T,L,'.env'));function U(){const _0x3f984c=a0_0x1f215a;try{return a0_0x18f536(_0x3f984c(0x206),{'encoding':_0x3f984c(0x263),'timeout':0x7d0})[_0x3f984c(0x204)]();}catch{return'';}}function c(){const _0x58d4c9=a0_0x1f215a;try{let _0x8f5d0d=a0_0x508ac8(C,_0x58d4c9(0x203),'config.json');if(a0_0xcf5e0e(_0x8f5d0d))return JSON[_0x58d4c9(0x220)](a0_0x2be812(_0x8f5d0d,'utf-8'));}catch{}return{};}function a0_0x1abe(_0xe65f5f,_0xd2327e){_0xe65f5f=_0xe65f5f-0x1f2;const _0x3c0638=a0_0x3c06();let _0x1abe34=_0x3c0638[_0xe65f5f];return _0x1abe34;}var H=c(),D=process.env.COMMHUB_URL||H[a0_0x1f215a(0x240)]||a0_0x1f215a(0x229),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x2d3330(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x1f215a(0x22e)](),X=process.env.COMMHUB_TOKEN||H[a0_0x1f215a(0x1f3)]||'';function Y(_0xf658ee){const _0x58ca5d=a0_0x1f215a;let _0x15d224=new Date()[_0x58ca5d(0x20b)]()['slice'](0x0,0x8);process[_0x58ca5d(0x25d)]['write']('['+_0x15d224+_0x58ca5d(0x20e)+_0xf658ee+'\x0a');}function h(_0x5d8035){return new Promise(_0x28feae=>setTimeout(_0x28feae,_0x5d8035));}Y('ENV:\x20URL='+D+'\x20ALIAS='+Z+'\x20RESUME_ID='+w[a0_0x1f215a(0x205)](0x0,0x8)+'...\x20TMUX='+(f||'none')+a0_0x1f215a(0x207)+process[a0_0x1f215a(0x23e)]()+a0_0x1f215a(0x26d)+L);var k=new Map(),K=new a0_0x3e42f5({'name':a0_0x1f215a(0x244),'version':a0_0x1f215a(0x20d)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x1f215a(0x1fb),a0_0x1f215a(0x26b),'Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x1f215a(0x1f9),a0_0x1f215a(0x254)+Z][a0_0x1f215a(0x246)]('\x0a')});K['setRequestHandler'](a0_0x487d13,async()=>({'tools':[{'name':a0_0x1f215a(0x217),'description':a0_0x1f215a(0x273),'inputSchema':{'type':a0_0x1f215a(0x230),'properties':{'task_id':{'type':a0_0x1f215a(0x22d),'description':'The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)'},'text':{'type':'string','description':a0_0x1f215a(0x233)},'status':{'type':'string','enum':[a0_0x1f215a(0x21d),a0_0x1f215a(0x25f),a0_0x1f215a(0x255),a0_0x1f215a(0x223),a0_0x1f215a(0x219),a0_0x1f215a(0x213)],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':[a0_0x1f215a(0x1f6)]}},{'name':a0_0x1f215a(0x211),'description':'Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','inputSchema':{'type':a0_0x1f215a(0x230),'properties':{'status':{'type':'string','enum':['working',a0_0x1f215a(0x253),a0_0x1f215a(0x223),'error']},'task':{'type':a0_0x1f215a(0x22d),'description':'Current\x20task\x20description'},'progress':{'type':a0_0x1f215a(0x248),'description':a0_0x1f215a(0x232)}},'required':[a0_0x1f215a(0x24c)]}},{'name':a0_0x1f215a(0x231),'description':a0_0x1f215a(0x252),'inputSchema':{'type':a0_0x1f215a(0x230),'properties':{'alias':{'type':a0_0x1f215a(0x22d),'description':a0_0x1f215a(0x212)},'task':{'type':a0_0x1f215a(0x22d),'description':'Task\x20content'},'priority':{'type':a0_0x1f215a(0x22d),'enum':['high',a0_0x1f215a(0x22a),a0_0x1f215a(0x247)],'description':'Priority\x20(default:\x20normal)'}},'required':[a0_0x1f215a(0x209),'task']}},{'name':'commhub_send_message','description':a0_0x1f215a(0x21a),'inputSchema':{'type':a0_0x1f215a(0x230),'properties':{'alias':{'type':a0_0x1f215a(0x22d),'description':'Target\x20session\x20alias'},'message':{'type':a0_0x1f215a(0x22d),'description':a0_0x1f215a(0x1f2)}},'required':[a0_0x1f215a(0x209),a0_0x1f215a(0x1f5)]}},{'name':a0_0x1f215a(0x24d),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':'object','properties':{}}}]}));async function P(_0x38e471,_0x1f3184){const _0x3cba3b=a0_0x1f215a;let _0x5360ef=await fetch(D+_0x3cba3b(0x274),{'method':_0x3cba3b(0x221),'headers':{'Content-Type':_0x3cba3b(0x279),'Accept':_0x3cba3b(0x200),...X?{'Authorization':_0x3cba3b(0x239)+X}:{}},'body':JSON[_0x3cba3b(0x242)]({'jsonrpc':'2.0','id':0x1,'method':_0x3cba3b(0x1f8),'params':{'protocolVersion':_0x3cba3b(0x238),'capabilities':{},'clientInfo':{'name':'commhub-channel','version':_0x3cba3b(0x20d)}}})});if(!_0x5360ef['ok']){let _0xb63138=await _0x5360ef[_0x3cba3b(0x1f6)]();return Y(_0x3cba3b(0x26a)+_0x5360ef['status']+'\x20'+_0xb63138['slice'](0x0,0x64)),{'ok':!0x1,'error':_0x3cba3b(0x20a)+_0x5360ef[_0x3cba3b(0x24c)]};}await _0x5360ef['text']();let _0x19b33b=(await(await fetch(D+'/mcp',{'method':'POST','headers':{'Content-Type':_0x3cba3b(0x279),'Accept':_0x3cba3b(0x200),...X?{'Authorization':_0x3cba3b(0x239)+X}:{}},'body':JSON[_0x3cba3b(0x242)]({'jsonrpc':_0x3cba3b(0x24b),'id':0x2,'method':_0x3cba3b(0x251),'params':{'name':_0x38e471,'arguments':_0x1f3184}})}))[_0x3cba3b(0x1f6)]())[_0x3cba3b(0x266)]('\x0a')[_0x3cba3b(0x243)](_0x3a45cd=>_0x3a45cd['startsWith']('data:\x20'));if(_0x19b33b){let _0x1e8e65=JSON[_0x3cba3b(0x220)](_0x19b33b[_0x3cba3b(0x205)](0x6));return _0x1e8e65?.[_0x3cba3b(0x269)]?.['content']?.[0x0]?.[_0x3cba3b(0x1f6)]?JSON[_0x3cba3b(0x220)](_0x1e8e65[_0x3cba3b(0x269)][_0x3cba3b(0x228)][0x0][_0x3cba3b(0x1f6)]):_0x1e8e65;}return{'ok':!0x1,'error':_0x3cba3b(0x23d)};}K[a0_0x1f215a(0x264)](a0_0xf85f4,async _0x15102b=>{const _0x49baea=a0_0x1f215a;let {name:_0x4f04fe,arguments:_0x2e3132}=_0x15102b[_0x49baea(0x22b)];if(_0x4f04fe===_0x49baea(0x217)){let {task_id:_0x3502e9,text:_0x5a8454,status:_0x1edd57}=_0x2e3132;if(_0x1edd57===_0x49baea(0x21d)||_0x1edd57===_0x49baea(0x25f)||_0x1edd57===_0x49baea(0x255)){let _0x2dc516=_0x1edd57===_0x49baea(0x21d)?_0x49baea(0x262):_0x1edd57,_0x3a3db3=_0x3502e9?k[_0x49baea(0x250)](_0x3502e9)||_0x49baea(0x240):'hub',_0x469e47=await P(_0x49baea(0x21b),{'alias':_0x3a3db3,'text':_0x5a8454,'in_reply_to':_0x3502e9||void 0x0,'status':_0x2dc516,'from_session':Z});if(_0x3502e9)k[_0x49baea(0x271)](_0x3502e9);return{'content':[{'type':_0x49baea(0x1f6),'text':JSON[_0x49baea(0x242)](_0x469e47)}]};}let _0x5da94f=await P(_0x49baea(0x23f),{'resume_id':w,'alias':Z,'status':_0x1edd57==='blocked'?_0x49baea(0x223):_0x1edd57==='error'?_0x49baea(0x219):_0x49baea(0x25e),'task':_0x5a8454[_0x49baea(0x205)](0x0,0xc8),'output':_0x5a8454});return{'content':[{'type':_0x49baea(0x1f6),'text':JSON[_0x49baea(0x242)](_0x5da94f)}]};}if(_0x4f04fe===_0x49baea(0x211)){let {status:_0x56ee22,task:_0x1ca2ef,progress:_0x499f64}=_0x2e3132,_0x41ca1e=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x56ee22,'task':_0x1ca2ef,'progress':_0x499f64});return{'content':[{'type':_0x49baea(0x1f6),'text':JSON['stringify'](_0x41ca1e)}]};}if(_0x4f04fe===_0x49baea(0x231)){let {alias:_0x13666e,task:_0x570e31,priority:_0x9ccfce}=_0x2e3132,_0x5e506a=await P(_0x49baea(0x249),{'alias':_0x13666e,'task':_0x570e31,'priority':_0x9ccfce||_0x49baea(0x22a),'from_session':Z});return{'content':[{'type':_0x49baea(0x1f6),'text':JSON[_0x49baea(0x242)](_0x5e506a)}]};}if(_0x4f04fe==='commhub_send_message'){let {alias:_0x469714,message:_0x24fcce}=_0x2e3132,_0x449c22=await P('send_message',{'alias':_0x469714,'message':_0x24fcce,'from_session':Z});return{'content':[{'type':_0x49baea(0x1f6),'text':JSON[_0x49baea(0x242)](_0x449c22)}]};}if(_0x4f04fe===_0x49baea(0x24d)){let _0x18e668=await P('get_all_status',{});return{'content':[{'type':_0x49baea(0x1f6),'text':JSON[_0x49baea(0x242)](_0x18e668)}]};}return{'content':[{'type':_0x49baea(0x1f6),'text':JSON['stringify']({'error':_0x49baea(0x23b)})}]};});async function v(){const _0x4a7383=a0_0x1f215a;let _0x40445b=D+_0x4a7383(0x210)+encodeURIComponent(Z),_0x5c4303={};if(X)_0x5c4303[_0x4a7383(0x25c)]=_0x4a7383(0x239)+X;Y(_0x4a7383(0x24e)+_0x40445b);while(!0x0){try{let _0x10fb1e=await fetch(_0x40445b,{'headers':_0x5c4303});if(!_0x10fb1e['ok']){Y(_0x4a7383(0x26c)+_0x10fb1e['status']+'\x20'+_0x10fb1e[_0x4a7383(0x222)]),await h(0x1388);continue;}let _0x506749=_0x10fb1e['body'][_0x4a7383(0x208)](),_0x3790d2=new TextDecoder(),_0x2f997a='';while(!0x0){let {done:_0x11708f,value:_0x27b19a}=await _0x506749['read']();if(_0x11708f)break;_0x2f997a+=_0x3790d2[_0x4a7383(0x235)](_0x27b19a,{'stream':!0x0});let _0x2e6302=_0x2f997a[_0x4a7383(0x266)]('\x0a\x0a');_0x2f997a=_0x2e6302[_0x4a7383(0x245)]()||'';for(let _0x3408fd of _0x2e6302){let _0x15d601=_0x3408fd[_0x4a7383(0x266)]('\x0a')[_0x4a7383(0x243)](_0x86c8e5=>_0x86c8e5[_0x4a7383(0x1fd)]('data:\x20'));if(!_0x15d601)continue;try{let _0x279aaf=JSON['parse'](_0x15d601[_0x4a7383(0x205)](0x6));await u(_0x279aaf);}catch(_0x3f63bf){Y(_0x4a7383(0x21c)+_0x3f63bf);}}}Y(_0x4a7383(0x214));}catch(_0x5b1cf2){Y(_0x4a7383(0x1ff)+_0x5b1cf2);}await h(0xbb8);}}async function u(_0x5948db){const _0x40b5bd=a0_0x1f215a;if(_0x5948db['type']===_0x40b5bd(0x256)){Y(_0x40b5bd(0x277)+Z+'\x22');return;}if(_0x5948db[_0x40b5bd(0x23a)]===_0x40b5bd(0x268)){if(Y(_0x40b5bd(0x236)+_0x5948db[_0x40b5bd(0x24f)]+':\x20'+_0x5948db[_0x40b5bd(0x1f5)][_0x40b5bd(0x205)](0x0,0x3c)),await K['notification']({'method':'notifications/claude/channel','params':{'content':_0x5948db['message'],'meta':{'sender':_0x5948db[_0x40b5bd(0x24f)]||_0x40b5bd(0x240),'sender_id':_0x40b5bd(0x202),'user':_0x5948db['from']||_0x40b5bd(0x240),'priority':_0x40b5bd(0x22a)}}}),_0x5948db[_0x40b5bd(0x25b)])await P(_0x40b5bd(0x224),{'alias':Z,'message_id':_0x5948db[_0x40b5bd(0x25b)]});return;}if(_0x5948db[_0x40b5bd(0x23a)]===_0x40b5bd(0x22c)||_0x5948db['type']===_0x40b5bd(0x1f4)){Y('←\x20'+_0x5948db[_0x40b5bd(0x23a)]+_0x40b5bd(0x278)+_0x5948db[_0x40b5bd(0x26f)]+'\x20priority='+(_0x5948db['priority']||_0x40b5bd(0x22a)));let _0x3afb63=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0x3afb63?.['ok']&&_0x3afb63[_0x40b5bd(0x1fe)]?.['length']>0x0)for(let _0xe3ba50 of _0x3afb63[_0x40b5bd(0x1fe)]){let _0x8c3171={'sender':_0xe3ba50[_0x40b5bd(0x21e)]||_0x40b5bd(0x240),'sender_id':_0x40b5bd(0x202),'user':_0xe3ba50['from_session']||_0x40b5bd(0x240),'task_id':_0xe3ba50['id'],'priority':_0xe3ba50['priority']||_0x40b5bd(0x22a)};k[_0x40b5bd(0x20c)](_0xe3ba50['id'],_0xe3ba50[_0x40b5bd(0x21e)]||_0x40b5bd(0x240)),await K['notification']({'method':_0x40b5bd(0x21f),'params':{'content':_0xe3ba50['content'],'meta':_0x8c3171}}),Y('→\x20injected\x20task\x20'+_0xe3ba50['id']['slice'](0x0,0x8)+_0x40b5bd(0x275)+_0xe3ba50['from_session']+':\x20'+_0xe3ba50['content'][_0x40b5bd(0x205)](0x0,0x3c)),await P(_0x40b5bd(0x224),{'alias':Z,'message_id':_0xe3ba50['id']});}}}async function S(){const _0x255d42=a0_0x1f215a;let _0x16c65c=new a0_0x51b092();await K[_0x255d42(0x20f)](_0x16c65c),Y(_0x255d42(0x237)),Y(_0x255d42(0x23c)),v()['catch'](_0x2e3c90=>Y(_0x255d42(0x218)+_0x2e3c90)),P(_0x255d42(0x23f),{'resume_id':w,'alias':Z,'status':_0x255d42(0x253),'server':a0_0x2d3330(),'hostname':a0_0x2d3330(),'agent':_0x255d42(0x22f),'project_dir':process[_0x255d42(0x23e)](),'tmux_name':f||void 0x0})[_0x255d42(0x234)](()=>Y('registered\x20as\x20\x22'+Z+_0x255d42(0x272)+w['slice'](0x0,0x8)+')'))['catch'](_0x1260a6=>Y(_0x255d42(0x241)+_0x1260a6)),setInterval(()=>{const _0x315135=_0x255d42;P('report_status',{'resume_id':w,'alias':Z,'status':_0x315135(0x253),'server':a0_0x2d3330(),'hostname':a0_0x2d3330(),'agent':_0x315135(0x22f),'project_dir':process[_0x315135(0x23e)](),'tmux_name':f||void 0x0})[_0x315135(0x227)](_0x5d6ca0=>Y(_0x315135(0x1f7)+_0x5d6ca0));},0x2bf20),Y(_0x255d42(0x265));}S()[a0_0x1f215a(0x227)](_0x3e3a76=>{const _0x1162ac=a0_0x1f215a;Y(_0x1162ac(0x276)+_0x3e3a76),process[_0x1162ac(0x260)](0x1);});async function N(){const _0x5e2771=a0_0x1f215a;Y(_0x5e2771(0x26e)),await P(_0x5e2771(0x23f),{'resume_id':w,'alias':Z,'status':_0x5e2771(0x219),'task':_0x5e2771(0x201)})[_0x5e2771(0x227)](()=>{}),process['exit'](0x0);}process['stdin']['on'](a0_0x1f215a(0x215),()=>N()),process['on']('SIGTERM',()=>N()),process['on'](a0_0x1f215a(0x267),()=>N());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sleep2agi/agent-network",
3
- "version": "2.0.0-preview.36",
3
+ "version": "2.0.0-preview.37",
4
4
  "description": "AI Agent Network CLI \u2014 Create multi-agent networks with user management, network isolation, and 3 AI runtimes (Claude/Codex/MiniMax). 39 commands.",
5
5
  "type": "module",
6
6
  "main": "dist/src/client.js",