@sleep2agi/agent-network 2.0.1 → 2.0.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.
@@ -1 +1 @@
1
- const a0_0x15962a=a0_0x5276;(function(_0x427105,_0x167b27){const _0xc3d4f2=a0_0x5276,_0x15cfbd=_0x427105();while(!![]){try{const _0xdadb6b=parseInt(_0xc3d4f2(0xda))/0x1+-parseInt(_0xc3d4f2(0xc6))/0x2+-parseInt(_0xc3d4f2(0x112))/0x3*(parseInt(_0xc3d4f2(0xd4))/0x4)+-parseInt(_0xc3d4f2(0x113))/0x5+parseInt(_0xc3d4f2(0xff))/0x6+-parseInt(_0xc3d4f2(0xcb))/0x7+parseInt(_0xc3d4f2(0xdb))/0x8;if(_0xdadb6b===_0x167b27)break;else _0x15cfbd['push'](_0x15cfbd['shift']());}catch(_0xf0644d){_0x15cfbd['push'](_0x15cfbd['shift']());}}}(a0_0x520a,0x89603));import{EventEmitter as a0_0x11925f}from'events';import{hostname as a0_0xff13bc}from'os';class T extends a0_0x11925f{[a0_0x15962a(0x105)];[a0_0x15962a(0x10b)];[a0_0x15962a(0xd1)];[a0_0x15962a(0x10a)];[a0_0x15962a(0xcc)];[a0_0x15962a(0xea)];['reconnectDelay'];[a0_0x15962a(0xee)];[a0_0x15962a(0x110)];[a0_0x15962a(0xeb)]=!0x1;constructor(_0x673f7c){const _0x5b31ae=a0_0x15962a;super();if(this[_0x5b31ae(0x105)]=_0x673f7c[_0x5b31ae(0x105)][_0x5b31ae(0xf6)](/\/$/,''),this[_0x5b31ae(0x10b)]=_0x673f7c[_0x5b31ae(0x10b)],this[_0x5b31ae(0xd1)]=_0x673f7c[_0x5b31ae(0xd1)],this[_0x5b31ae(0x10a)]=_0x673f7c['agent']||_0x5b31ae(0xed),this[_0x5b31ae(0xcc)]=_0x5b31ae(0x116)+_0x673f7c[_0x5b31ae(0x10b)]+'-'+Date['now']()[_0x5b31ae(0xc3)](0x24),this[_0x5b31ae(0xea)]=_0x673f7c[_0x5b31ae(0xea)]??0x2bf20,this['reconnectDelay']=_0x673f7c[_0x5b31ae(0x106)]??0xbb8,_0x673f7c[_0x5b31ae(0xc8)]!==!0x1)this[_0x5b31ae(0xf8)]();}[a0_0x15962a(0xdd)](_0x95f44b){const _0x5ebc70=a0_0x15962a;console[_0x5ebc70(0xdd)]('['+new Date()[_0x5ebc70(0xc7)]()[_0x5ebc70(0xce)](0x0,0x8)+_0x5ebc70(0xf2)+this[_0x5ebc70(0x10b)]+']\x20'+_0x95f44b);}async[a0_0x15962a(0x10c)](_0x3e58f4,_0x54b981){const _0x5bd293=a0_0x15962a;let _0x5e865a={'Content-Type':_0x5bd293(0x102),'Accept':_0x5bd293(0xd0)};if(this[_0x5bd293(0xd1)])_0x5e865a[_0x5bd293(0xc5)]=_0x5bd293(0x10d)+this['token'];let _0x4cd3e0=await(await fetch(this[_0x5bd293(0x105)]+_0x5bd293(0x103),{'method':_0x5bd293(0xe4),'headers':_0x5e865a,'body':JSON[_0x5bd293(0xdf)]({'jsonrpc':_0x5bd293(0xcf),'id':Date[_0x5bd293(0x101)](),'method':'tools/call','params':{'name':_0x3e58f4,'arguments':_0x54b981}})}))[_0x5bd293(0xd7)](),_0x27159f=_0x4cd3e0['match'](/data: (.+)/),_0x13664b=_0x27159f?JSON[_0x5bd293(0xef)](_0x27159f[0x1]):JSON['parse'](_0x4cd3e0),_0x46e45d=_0x13664b?.[_0x5bd293(0xdc)]?.[_0x5bd293(0xfd)]?.[0x0]?.['text'];return _0x46e45d?JSON['parse'](_0x46e45d):_0x13664b;}async['connect'](){const _0x3f20e2=a0_0x15962a;if(this[_0x3f20e2(0xeb)])return;this['running']=!0x0,await this[_0x3f20e2(0xf1)](_0x3f20e2(0xf0)),this[_0x3f20e2(0xdd)](_0x3f20e2(0x109)),this[_0x3f20e2(0xee)]=setInterval(()=>{const _0x116723=_0x3f20e2;this['status'](_0x116723(0xf0))[_0x116723(0xc9)](_0x46c356=>this[_0x116723(0xdd)](_0x116723(0xcd)+_0x46c356['message']));},this[_0x3f20e2(0xea)]),this[_0x3f20e2(0x115)]();}async['disconnect'](){const _0x7baf54=a0_0x15962a;if(this['running']=!0x1,this[_0x7baf54(0x110)]?.[_0x7baf54(0x10f)](),this[_0x7baf54(0xee)])clearInterval(this[_0x7baf54(0xee)]);await this[_0x7baf54(0xf1)](_0x7baf54(0xe5))[_0x7baf54(0xc9)](()=>{}),this[_0x7baf54(0xdd)](_0x7baf54(0xd8));}async['send'](_0x5dd49d,_0x5d8724,_0x872025=a0_0x15962a(0xf3)){const _0x50b186=a0_0x15962a;return this[_0x50b186(0x10c)](_0x50b186(0xfb),{'alias':_0x5dd49d,'task':_0x5d8724,'priority':_0x872025,'from_session':this[_0x50b186(0x10b)]});}async[a0_0x15962a(0x100)](_0x45d073,_0x24fbbb){const _0x3a0b3c=a0_0x15962a;return this[_0x3a0b3c(0x10c)](_0x3a0b3c(0x10e),{'alias':_0x45d073,'message':_0x24fbbb,'from_session':this['alias']});}async['reply'](_0x36c8e0,_0x4a45ee,_0x463b10=a0_0x15962a(0xfa)){return this['call']('reply',{'task_id':_0x36c8e0,'text':_0x4a45ee,'status':_0x463b10});}async['status'](_0x8d33e,_0x890d9d){const _0x162578=a0_0x15962a;return this['call']('report_status',{'resume_id':this[_0x162578(0xcc)],'alias':this[_0x162578(0x10b)],'status':_0x8d33e,'server':a0_0xff13bc(),'hostname':a0_0xff13bc(),'agent':this[_0x162578(0x10a)],'project_dir':process[_0x162578(0x108)](),..._0x890d9d});}async['getAllStatus'](){return this['call']('get_all_status',{});}async['broadcast'](_0x358c4b,_0x1d7a28){const _0x47613d=a0_0x15962a;return this[_0x47613d(0x10c)](_0x47613d(0xe1),{'message':_0x358c4b,'filter_server':_0x1d7a28?.['server'],'filter_status':_0x1d7a28?.[_0x47613d(0xf1)]});}async['connectSSE'](){const _0x626166=a0_0x15962a;let _0x3d716c=encodeURIComponent(this[_0x626166(0x10b)]),_0x28f9ed=this[_0x626166(0x105)]+_0x626166(0xd5)+_0x3d716c,_0x3e14f9=this[_0x626166(0x106)];while(this['running']){try{this['sseAbort']=new AbortController();let _0x31a1fa={'Accept':_0x626166(0xe2)};if(this[_0x626166(0xd1)])_0x31a1fa[_0x626166(0xc5)]=_0x626166(0x10d)+this[_0x626166(0xd1)];let _0x5750d7=await fetch(_0x28f9ed,{'headers':_0x31a1fa,'signal':this[_0x626166(0x110)][_0x626166(0xfc)]});if(!_0x5750d7['ok']||!_0x5750d7['body']){this[_0x626166(0xdd)](_0x626166(0x114)+_0x5750d7[_0x626166(0xf1)]),await this[_0x626166(0x111)](_0x3e14f9),_0x3e14f9=Math[_0x626166(0xec)](_0x3e14f9*1.5,0xea60);continue;}_0x3e14f9=this['reconnectDelay'];let _0x3cf0d6=_0x5750d7[_0x626166(0xc4)]['getReader'](),_0x58091b=new TextDecoder(),_0x4f740a='';while(this['running']){let {done:_0x12459e,value:_0x4127e3}=await _0x3cf0d6[_0x626166(0xe6)]();if(_0x12459e)break;_0x4f740a+=_0x58091b[_0x626166(0xf9)](_0x4127e3,{'stream':!0x0});let _0x5f1227=_0x4f740a[_0x626166(0xca)]('\x0a');_0x4f740a=_0x5f1227[_0x626166(0x104)]()||'';for(let _0x1ed697 of _0x5f1227){if(!_0x1ed697['startsWith'](_0x626166(0xf4)))continue;try{let _0x2e69a0=JSON['parse'](_0x1ed697['slice'](0x6));if(_0x2e69a0['type']===_0x626166(0xe8)){this['log'](_0x626166(0xe0)),this[_0x626166(0xf7)]('connected');continue;}if(_0x2e69a0['type']===_0x626166(0xfe)||_0x2e69a0['type']==='new_message'||_0x2e69a0[_0x626166(0xe7)]===_0x626166(0xe1))await this['processInbox']();}catch{}}}}catch(_0xf0e050){if(_0xf0e050[_0x626166(0xd9)]===_0x626166(0xd3))break;this[_0x626166(0xf7)]('error',_0xf0e050),this[_0x626166(0xdd)](_0x626166(0xde)+_0xf0e050[_0x626166(0x100)]);}if(this[_0x626166(0xeb)])this[_0x626166(0xf7)](_0x626166(0xd8)),this[_0x626166(0xdd)](_0x626166(0xe9)+_0x3e14f9/0x3e8+_0x626166(0xe3)),await this[_0x626166(0x111)](_0x3e14f9),_0x3e14f9=Math[_0x626166(0xec)](_0x3e14f9*1.5,0xea60);}}async[a0_0x15962a(0x107)](){const _0x4e4177=a0_0x15962a;try{let _0x8ca771=(await this[_0x4e4177(0x10c)](_0x4e4177(0xf5),{'alias':this[_0x4e4177(0x10b)],'limit':0xa}))?.[_0x4e4177(0xd2)]||[];for(let _0x50a5cb of _0x8ca771)await this[_0x4e4177(0x10c)](_0x4e4177(0xd6),{'alias':this['alias'],'message_id':_0x50a5cb['id']}),this[_0x4e4177(0xdd)]('←\x20'+_0x50a5cb['from_session']+':\x20'+_0x50a5cb[_0x4e4177(0xfd)]['slice'](0x0,0x3c)),this[_0x4e4177(0xf7)]('task',_0x50a5cb),this[_0x4e4177(0xf7)](_0x4e4177(0x100),_0x50a5cb);}catch(_0x268ca3){this[_0x4e4177(0xdd)]('inbox\x20error:\x20'+_0x268ca3['message']);}}['sleep'](_0x45bf8a){return new Promise(_0x85e71f=>setTimeout(_0x85e71f,_0x45bf8a));}}function a0_0x5276(_0x35ad63,_0x10b0c8){_0x35ad63=_0x35ad63-0xc3;const _0x520ad5=a0_0x520a();let _0x527660=_0x520ad5[_0x35ad63];return _0x527660;}var $=T;export{$ as default,T as CommHub};function a0_0x520a(){const _0x26d5e0=['SSE\x20connected','broadcast','text/event-stream','s...','POST','offline','read','type','connected','SSE\x20reconnecting\x20in\x20','heartbeatInterval','running','min','sdk','heartbeatTimer','parse','idle','status',']\x20[commhub:','normal','data:\x20','get_inbox','replace','emit','connect','decode','completed','send_task','signal','content','new_task','4143576nKBisF','message','now','application/json','/mcp','pop','url','reconnectDelay','processInbox','cwd','registered','agent','alias','call','Bearer\x20','send_message','abort','sseAbort','sleep','27nLAwiI','4483000qiZGqt','SSE\x20failed:\x20','connectSSE','sdk-','toString','body','Authorization','1187210lJiMmF','toTimeString','autoConnect','catch','split','230468yGjHnV','resumeId','heartbeat\x20failed:\x20','slice','2.0','application/json,\x20text/event-stream','token','messages','AbortError','301436ynjcYx','/events/','ack_inbox','text','disconnected','name','1016515BSsIlA','8455520RZaqHq','result','log','SSE\x20error:\x20','stringify'];a0_0x520a=function(){return _0x26d5e0;};return a0_0x520a();}
1
+ const a0_0x4b714f=a0_0x31f9;(function(_0xb142a2,_0x326491){const _0xaad45d=a0_0x31f9,_0x29ddea=_0xb142a2();while(!![]){try{const _0x3c3216=-parseInt(_0xaad45d(0x82))/0x1*(-parseInt(_0xaad45d(0xd4))/0x2)+parseInt(_0xaad45d(0x8a))/0x3+parseInt(_0xaad45d(0xcc))/0x4+-parseInt(_0xaad45d(0xb8))/0x5+-parseInt(_0xaad45d(0xbb))/0x6*(parseInt(_0xaad45d(0xd2))/0x7)+-parseInt(_0xaad45d(0xc0))/0x8*(-parseInt(_0xaad45d(0xb7))/0x9)+-parseInt(_0xaad45d(0x83))/0xa*(parseInt(_0xaad45d(0xd0))/0xb);if(_0x3c3216===_0x326491)break;else _0x29ddea['push'](_0x29ddea['shift']());}catch(_0x2c2ab6){_0x29ddea['push'](_0x29ddea['shift']());}}}(a0_0x2fb4,0x1fb9b));import{EventEmitter as a0_0x3dc274}from'events';import{hostname as a0_0x590fd8}from'os';function a0_0x31f9(_0x41a3ca,_0x3dc22a){_0x41a3ca=_0x41a3ca-0x7d;const _0x2fb453=a0_0x2fb4();let _0x31f9cf=_0x2fb453[_0x41a3ca];return _0x31f9cf;}class T extends a0_0x3dc274{[a0_0x4b714f(0xca)];[a0_0x4b714f(0x95)];[a0_0x4b714f(0xb2)];[a0_0x4b714f(0xc5)];[a0_0x4b714f(0x89)];[a0_0x4b714f(0xb4)];[a0_0x4b714f(0x9a)];['heartbeatTimer'];[a0_0x4b714f(0x88)];['running']=!0x1;constructor(_0x9dd332){const _0x46815f=a0_0x4b714f;super();if(this[_0x46815f(0xca)]=_0x9dd332['url'][_0x46815f(0x80)](/\/$/,''),this[_0x46815f(0x95)]=_0x9dd332[_0x46815f(0x95)],this[_0x46815f(0xb2)]=_0x9dd332['token'],this['agent']=_0x9dd332[_0x46815f(0xc5)]||_0x46815f(0xab),this[_0x46815f(0x89)]=_0x46815f(0xaa)+_0x9dd332[_0x46815f(0x95)]+'-'+Date[_0x46815f(0x93)]()[_0x46815f(0xd1)](0x24),this['heartbeatInterval']=_0x9dd332[_0x46815f(0xb4)]??0x2bf20,this[_0x46815f(0x9a)]=_0x9dd332[_0x46815f(0x9a)]??0xbb8,_0x9dd332[_0x46815f(0xcf)]!==!0x1)this[_0x46815f(0xa5)]();}[a0_0x4b714f(0xc6)](_0x54bdd3){const _0x19974c=a0_0x4b714f;console[_0x19974c(0xc6)]('['+new Date()[_0x19974c(0xae)]()[_0x19974c(0xb5)](0x0,0x8)+']\x20[commhub:'+this[_0x19974c(0x95)]+']\x20'+_0x54bdd3);}async[a0_0x4b714f(0x7f)](_0x5693e0,_0x30f6a9){const _0x12d743=a0_0x4b714f;let _0x10f65c={'Content-Type':_0x12d743(0x94),'Accept':'application/json,\x20text/event-stream'};if(this[_0x12d743(0xb2)])_0x10f65c['Authorization']='Bearer\x20'+this[_0x12d743(0xb2)];let _0x2d9311=await(await fetch(this[_0x12d743(0xca)]+_0x12d743(0x9c),{'method':'POST','headers':_0x10f65c,'body':JSON['stringify']({'jsonrpc':_0x12d743(0x9b),'id':Date['now'](),'method':'tools/call','params':{'name':_0x5693e0,'arguments':_0x30f6a9}})}))['text'](),_0x408393=_0x2d9311[_0x12d743(0xa7)](/data: (.+)/),_0x376e11=_0x408393?JSON['parse'](_0x408393[0x1]):JSON['parse'](_0x2d9311),_0x1ee396=_0x376e11?.[_0x12d743(0xbf)]?.['content']?.[0x0]?.[_0x12d743(0xb9)];return _0x1ee396?JSON['parse'](_0x1ee396):_0x376e11;}async[a0_0x4b714f(0xa5)](){const _0x4f2797=a0_0x4b714f;if(this[_0x4f2797(0x91)])return;this[_0x4f2797(0x91)]=!0x0,await this[_0x4f2797(0xb0)](_0x4f2797(0xc4)),this[_0x4f2797(0xc6)](_0x4f2797(0xcd)),this[_0x4f2797(0xc2)]=setInterval(()=>{const _0x420f3e=_0x4f2797;this[_0x420f3e(0xb0)](_0x420f3e(0xc4))['catch'](_0x5aa3d7=>this[_0x420f3e(0xc6)]('heartbeat\x20failed:\x20'+_0x5aa3d7[_0x420f3e(0xb1)]));},this[_0x4f2797(0xb4)]),this[_0x4f2797(0x86)]();}async[a0_0x4b714f(0xbd)](){const _0x433480=a0_0x4b714f;if(this[_0x433480(0x91)]=!0x1,this['sseAbort']?.[_0x433480(0x99)](),this[_0x433480(0xc2)])clearInterval(this[_0x433480(0xc2)]);await this[_0x433480(0xb0)](_0x433480(0x92))[_0x433480(0xa2)](()=>{}),this[_0x433480(0xc6)]('disconnected');}async[a0_0x4b714f(0xbc)](_0x4527bf,_0xd13458,_0xa0fbc9=a0_0x4b714f(0x8c)){const _0xa93bf6=a0_0x4b714f;return this[_0xa93bf6(0x7f)]('send_task',{'alias':_0x4527bf,'task':_0xd13458,'priority':_0xa0fbc9,'from_session':this['alias']});}async[a0_0x4b714f(0xb1)](_0x1c6fb4,_0x248d79){const _0x4e159e=a0_0x4b714f;return this[_0x4e159e(0x7f)](_0x4e159e(0xc9),{'alias':_0x1c6fb4,'message':_0x248d79,'from_session':this[_0x4e159e(0x95)]});}async[a0_0x4b714f(0xad)](_0x5940dc,_0x23da7f,_0x20a878=a0_0x4b714f(0x85)){return this['call']('reply',{'task_id':_0x5940dc,'text':_0x23da7f,'status':_0x20a878});}async[a0_0x4b714f(0xb0)](_0x5939b2,_0x5bd9c8){const _0x554a12=a0_0x4b714f;return this['call'](_0x554a12(0x8f),{'resume_id':this[_0x554a12(0x89)],'alias':this[_0x554a12(0x95)],'status':_0x5939b2,'server':a0_0x590fd8(),'hostname':a0_0x590fd8(),'agent':this[_0x554a12(0xc5)],'project_dir':process[_0x554a12(0xa0)](),..._0x5bd9c8});}async[a0_0x4b714f(0x8b)](){const _0x46397e=a0_0x4b714f;return this[_0x46397e(0x7f)](_0x46397e(0xc1),{});}async[a0_0x4b714f(0x9f)](_0x3e0e36,_0x86c5c0){const _0x3908ce=a0_0x4b714f;return this[_0x3908ce(0x7f)](_0x3908ce(0x9f),{'message':_0x3e0e36,'filter_server':_0x86c5c0?.[_0x3908ce(0xac)],'filter_status':_0x86c5c0?.[_0x3908ce(0xb0)]});}async[a0_0x4b714f(0x86)](){const _0x5df76d=a0_0x4b714f;let _0x451e33=encodeURIComponent(this[_0x5df76d(0x95)]),_0xcf8fc9=this[_0x5df76d(0xca)]+_0x5df76d(0x97)+_0x451e33,_0x2a9ea6=this[_0x5df76d(0x9a)];while(this['running']){try{this[_0x5df76d(0x88)]=new AbortController();let _0x4c0760={'Accept':'text/event-stream'};if(this[_0x5df76d(0xb2)])_0x4c0760[_0x5df76d(0xc3)]=_0x5df76d(0xc8)+this[_0x5df76d(0xb2)];let _0x31c7bf=await fetch(_0xcf8fc9,{'headers':_0x4c0760,'signal':this['sseAbort'][_0x5df76d(0x7e)]});if(!_0x31c7bf['ok']||!_0x31c7bf[_0x5df76d(0xc7)]){this[_0x5df76d(0xc6)](_0x5df76d(0x84)+_0x31c7bf['status']),await this['sleep'](_0x2a9ea6),_0x2a9ea6=Math[_0x5df76d(0xa6)](_0x2a9ea6*1.5,0xea60);continue;}_0x2a9ea6=this['reconnectDelay'];let _0x565b61=_0x31c7bf[_0x5df76d(0xc7)]['getReader'](),_0x5d6a4b=new TextDecoder(),_0x54faf5='';while(this[_0x5df76d(0x91)]){let {done:_0x4d6a46,value:_0x45f486}=await _0x565b61['read']();if(_0x4d6a46)break;_0x54faf5+=_0x5d6a4b[_0x5df76d(0x9d)](_0x45f486,{'stream':!0x0});let _0x534922=_0x54faf5[_0x5df76d(0x96)]('\x0a');_0x54faf5=_0x534922['pop']()||'';for(let _0x57e76e of _0x534922){if(!_0x57e76e[_0x5df76d(0x90)](_0x5df76d(0xaf)))continue;try{let _0x463cda=JSON['parse'](_0x57e76e['slice'](0x6));if(_0x463cda[_0x5df76d(0xcb)]===_0x5df76d(0xb3)){this[_0x5df76d(0xc6)]('SSE\x20connected'),this['emit'](_0x5df76d(0xb3));continue;}if(_0x463cda[_0x5df76d(0xcb)]==='new_task'||_0x463cda[_0x5df76d(0xcb)]===_0x5df76d(0x87)||_0x463cda[_0x5df76d(0xcb)]===_0x5df76d(0x9f))await this[_0x5df76d(0x9e)]();}catch{}}}}catch(_0x258e8b){if(_0x258e8b[_0x5df76d(0xa9)]===_0x5df76d(0x8e))break;this['emit'](_0x5df76d(0xa1),_0x258e8b),this[_0x5df76d(0xc6)](_0x5df76d(0xb6)+_0x258e8b['message']);}if(this['running'])this[_0x5df76d(0x98)]('disconnected'),this[_0x5df76d(0xc6)](_0x5df76d(0xa3)+_0x2a9ea6/0x3e8+_0x5df76d(0x8d)),await this[_0x5df76d(0xba)](_0x2a9ea6),_0x2a9ea6=Math[_0x5df76d(0xa6)](_0x2a9ea6*1.5,0xea60);}}async[a0_0x4b714f(0x9e)](){const _0x114e1d=a0_0x4b714f;try{let _0x2604e6=(await this[_0x114e1d(0x7f)](_0x114e1d(0xa4),{'alias':this[_0x114e1d(0x95)],'limit':0xa}))?.[_0x114e1d(0xa8)]||[];for(let _0x372ee0 of _0x2604e6)await this[_0x114e1d(0x7f)](_0x114e1d(0x7d),{'alias':this[_0x114e1d(0x95)],'message_id':_0x372ee0['id']}),this[_0x114e1d(0xc6)]('←\x20'+_0x372ee0[_0x114e1d(0xd3)]+':\x20'+_0x372ee0[_0x114e1d(0xbe)][_0x114e1d(0xb5)](0x0,0x3c)),this[_0x114e1d(0x98)](_0x114e1d(0x81),_0x372ee0),this[_0x114e1d(0x98)](_0x114e1d(0xb1),_0x372ee0);}catch(_0x47a9f1){this[_0x114e1d(0xc6)](_0x114e1d(0xce)+_0x47a9f1['message']);}}[a0_0x4b714f(0xba)](_0x3a5b88){return new Promise(_0x5a58ed=>setTimeout(_0x5a58ed,_0x3a5b88));}}function a0_0x2fb4(){const _0xa3f052=['report_status','startsWith','running','offline','now','application/json','alias','split','/events/','emit','abort','reconnectDelay','2.0','/mcp','decode','processInbox','broadcast','cwd','error','catch','SSE\x20reconnecting\x20in\x20','get_inbox','connect','min','match','messages','name','sdk-','sdk','server','reply','toTimeString','data:\x20','status','message','token','connected','heartbeatInterval','slice','SSE\x20error:\x20','9CLIqUJ','528090KcFCsb','text','sleep','18MMzrfz','send','disconnect','content','result','1113016sFmcjZ','get_all_status','heartbeatTimer','Authorization','idle','agent','log','body','Bearer\x20','send_message','url','type','143844IIToic','registered','inbox\x20error:\x20','autoConnect','13145JKuUqg','toString','346570mtCyuz','from_session','36ioTWoc','ack_inbox','signal','call','replace','task','12928ZYrzNS','820KdyGPF','SSE\x20failed:\x20','completed','connectSSE','new_message','sseAbort','resumeId','222879BcdoVS','getAllStatus','normal','s...','AbortError'];a0_0x2fb4=function(){return _0xa3f052;};return a0_0x2fb4();}var $=T;export{$ as default,T as CommHub};
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env bun
2
- function a0_0xa75a(_0x1ec26c,_0x242831){_0x1ec26c=_0x1ec26c-0x185;const _0x19ad5e=a0_0x19ad();let _0xa75a67=_0x19ad5e[_0x1ec26c];return _0xa75a67;}const a0_0x4a967d=a0_0xa75a;(function(_0x39c404,_0x4418ca){const _0x3a6786=a0_0xa75a,_0x4406e8=_0x39c404();while(!![]){try{const _0x37b078=parseInt(_0x3a6786(0x1f0))/0x1*(-parseInt(_0x3a6786(0x1eb))/0x2)+-parseInt(_0x3a6786(0x191))/0x3*(parseInt(_0x3a6786(0x1a4))/0x4)+parseInt(_0x3a6786(0x1b9))/0x5*(-parseInt(_0x3a6786(0x1c2))/0x6)+-parseInt(_0x3a6786(0x1a3))/0x7*(-parseInt(_0x3a6786(0x1cf))/0x8)+parseInt(_0x3a6786(0x1fb))/0x9*(-parseInt(_0x3a6786(0x19a))/0xa)+-parseInt(_0x3a6786(0x1d4))/0xb+parseInt(_0x3a6786(0x192))/0xc;if(_0x37b078===_0x4418ca)break;else _0x4406e8['push'](_0x4406e8['shift']());}catch(_0x3cb729){_0x4406e8['push'](_0x4406e8['shift']());}}}(a0_0x19ad,0x26e35));import{readFileSync as a0_0x47a9f9,existsSync as a0_0x2c0fbb}from'fs';import{randomUUID as a0_0x47f072}from'crypto';import{join as a0_0x3d1889}from'path';import{hostname as a0_0x4cf3f3}from'os';function a0_0x19ad(){const _0x14f1f2=['Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','content','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','message_id','cancelled','fatal:\x20','set','get_all_status','from_session','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','slice','SSE\x20error:\x20','new_task','indexOf','replace','2.0','alias','Task\x20content','SSE\x20connection\x20error:\x20','Message\x20content','object','no\x20response','commhub_send_message','application/json','\x20PROJECT_ENV=','0.3.0','then','\x20priority=','notification','pop','message','ack_inbox','...\x20TMUX=','task','15NeHwyY','7714392GKrnMl','CommHub\x20init\x20failed:\x20','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','new_message','catch','split','commhub-channel','none','10960kmIaab','utf-8','SIGINT','error','find','exit','result','stderr','commhub','15134dQvUhh','44288iNpXWR','ENV:\x20URL=','report_status','delete',':\x20inbox_count=','stringify','notifications/claude/channel','MCP\x20stdio\x20connected','/mcp','\x22\x20(','warning:\x20could\x20not\x20register:\x20','send_task','from','ready\x20—\x20waiting\x20for\x20events','trim','Session\x20alias:\x20','working','session\x20disconnected','high','heartbeat\x20failed:\x20','data:\x20','276615iopiQb','toTimeString','normal','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','←\x20message\x20from\x20','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','config.json','get_inbox','initialize','12PCoPSo','type','shutting\x20down,\x20reporting\x20offline...','SIGTERM','string','Target\x20session\x20alias','body','commhub_report_status','get','connecting\x20to\x20','text','.anet','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','184CZJjEv','POST','idle','/events/','commhub_get_all_status','1050555JXPSLR','Reply\x20text\x20/\x20result\x20summary','unknown\x20tool','application/json,\x20text/event-stream','\x20CWD=','init\x20failed:\x20',']\x20[commhub]\x20','.env','end','write','parse','→\x20injected\x20task\x20','starting\x20SSE\x20listener...','read','SSE\x20stream\x20ended,\x20reconnecting...','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','send_message','broadcast','getReader','completed','replied','failed','hub','32280lKEmrd','tools/call','cwd','registered\x20as\x20\x22','messages','11paetLL','params','\x20RESUME_ID=','SSE\x20fatal:\x20','setRequestHandler','.claude/channels/commhub','Current\x20task\x20description','\x20ALIAS=','commhub_reply','commhub_send_task','status','774zFfxcC','Bearer\x20','startsWith','priority','inbox_count'];a0_0x19ad=function(){return _0x14f1f2;};return a0_0x19ad();}import{execSync as a0_0x4e0497}from'child_process';import{Server as a0_0xf7fc3}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x38e2eb}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x33ac69,CallToolRequestSchema as a0_0x1e37b7}from'@modelcontextprotocol/sdk/types.js';function p(_0x547be7){const _0x45c3c1=a0_0xa75a;if(!a0_0x2c0fbb(_0x547be7))return;for(let _0x2adf68 of a0_0x47a9f9(_0x547be7,_0x45c3c1(0x19b))['split']('\x0a')){let _0x154c9e=_0x2adf68[_0x45c3c1(0x1b2)]();if(!_0x154c9e||_0x154c9e['startsWith']('#'))continue;let _0x4b8a40=_0x154c9e[_0x45c3c1(0x20d)]('=');if(_0x4b8a40<0x0)continue;let _0x3fe8fd=_0x154c9e['slice'](0x0,_0x4b8a40)[_0x45c3c1(0x1b2)](),_0x133192=_0x154c9e[_0x45c3c1(0x20a)](_0x4b8a40+0x1)['trim']()[_0x45c3c1(0x20e)](/^["']|["']$/g,'');if(!process.env[_0x3fe8fd])process.env[_0x3fe8fd]=_0x133192;}}var C=process.env.HOME||'~',T=a0_0x3d1889(C,a0_0x4a967d(0x1f5));p(a0_0x3d1889(T,a0_0x4a967d(0x1db)));var L=process[a0_0x4a967d(0x1ed)]()['replace'](/\//g,'-');p(a0_0x3d1889(T,L,a0_0x4a967d(0x1db)));function U(){const _0x4317c9=a0_0x4a967d;try{return a0_0x4e0497('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0x4317c9(0x19b),'timeout':0x7d0})[_0x4317c9(0x1b2)]();}catch{return'';}}function v(){const _0x2299c0=a0_0x4a967d;try{let _0x51e3c8=a0_0x3d1889(C,_0x2299c0(0x1cd),_0x2299c0(0x1bf));if(a0_0x2c0fbb(_0x51e3c8))return JSON['parse'](a0_0x47a9f9(_0x51e3c8,_0x2299c0(0x19b)));}catch{}return{};}var H=v(),f=process.env.COMMHUB_URL||H[a0_0x4a967d(0x1ea)]||'http://127.0.0.1:9200',j=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||j||a0_0x4cf3f3(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x47f072(),X=process.env.COMMHUB_TOKEN||H['token']||'';function Y(_0x12bc72){const _0x2f96b0=a0_0x4a967d;let _0x22750f=new Date()[_0x2f96b0(0x1ba)]()['slice'](0x0,0x8);process[_0x2f96b0(0x1a1)][_0x2f96b0(0x1dd)]('['+_0x22750f+_0x2f96b0(0x1da)+_0x12bc72+'\x0a');}function h(_0x427202){return new Promise(_0x5baf23=>setTimeout(_0x5baf23,_0x427202));}Y(a0_0x4a967d(0x1a5)+f+a0_0x4a967d(0x1f7)+Z+a0_0x4a967d(0x1f2)+w[a0_0x4a967d(0x20a)](0x0,0x8)+a0_0x4a967d(0x18f)+(j||a0_0x4a967d(0x199))+a0_0x4a967d(0x1d8)+process[a0_0x4a967d(0x1ed)]()+a0_0x4a967d(0x187)+L);var k=new Map(),K=new a0_0xf7fc3({'name':a0_0x4a967d(0x198),'version':'0.3.0'},{'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>',a0_0x4a967d(0x209),a0_0x4a967d(0x194),a0_0x4a967d(0x1be),a0_0x4a967d(0x1b3)+Z]['join']('\x0a')});K[a0_0x4a967d(0x1f4)](a0_0x33ac69,async()=>({'tools':[{'name':'commhub_reply','description':a0_0x4a967d(0x1ce),'inputSchema':{'type':a0_0x4a967d(0x214),'properties':{'task_id':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x202)},'text':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x1d5)},'status':{'type':a0_0x4a967d(0x1c6),'enum':['completed',a0_0x4a967d(0x1e9),a0_0x4a967d(0x204),'blocked',a0_0x4a967d(0x19d),'in_progress'],'description':a0_0x4a967d(0x1bc)}},'required':['text']}},{'name':a0_0x4a967d(0x1c9),'description':'Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','inputSchema':{'type':'object','properties':{'status':{'type':a0_0x4a967d(0x1c6),'enum':[a0_0x4a967d(0x1b4),'idle','blocked',a0_0x4a967d(0x19d)]},'task':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x1f6)},'progress':{'type':'number','description':'Progress\x200-100'}},'required':[a0_0x4a967d(0x1fa)]}},{'name':a0_0x4a967d(0x1f9),'description':a0_0x4a967d(0x200),'inputSchema':{'type':a0_0x4a967d(0x214),'properties':{'alias':{'type':a0_0x4a967d(0x1c6),'description':'Target\x20session\x20alias'},'task':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x211)},'priority':{'type':'string','enum':[a0_0x4a967d(0x1b6),a0_0x4a967d(0x1bb),'low'],'description':'Priority\x20(default:\x20normal)'}},'required':[a0_0x4a967d(0x210),a0_0x4a967d(0x190)]}},{'name':a0_0x4a967d(0x185),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':a0_0x4a967d(0x214),'properties':{'alias':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x1c7)},'message':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x213)}},'required':['alias',a0_0x4a967d(0x18d)]}},{'name':a0_0x4a967d(0x1d3),'description':a0_0x4a967d(0x1e3),'inputSchema':{'type':'object','properties':{}}}]}));async function P(_0x4f171f,_0x3d5f42){const _0x3ca1fb=a0_0x4a967d;let _0x58a291=await fetch(f+'/mcp',{'method':_0x3ca1fb(0x1d0),'headers':{'Content-Type':_0x3ca1fb(0x186),'Accept':_0x3ca1fb(0x1d7),...X?{'Authorization':_0x3ca1fb(0x1fc)+X}:{}},'body':JSON[_0x3ca1fb(0x1a9)]({'jsonrpc':_0x3ca1fb(0x20f),'id':0x1,'method':_0x3ca1fb(0x1c1),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x3ca1fb(0x198),'version':_0x3ca1fb(0x188)}}})});if(!_0x58a291['ok']){let _0xb1b00=await _0x58a291[_0x3ca1fb(0x1cc)]();return Y(_0x3ca1fb(0x193)+_0x58a291[_0x3ca1fb(0x1fa)]+'\x20'+_0xb1b00[_0x3ca1fb(0x20a)](0x0,0x64)),{'ok':!0x1,'error':_0x3ca1fb(0x1d9)+_0x58a291[_0x3ca1fb(0x1fa)]};}await _0x58a291[_0x3ca1fb(0x1cc)]();let _0x1a6072=(await(await fetch(f+_0x3ca1fb(0x1ac),{'method':_0x3ca1fb(0x1d0),'headers':{'Content-Type':_0x3ca1fb(0x186),'Accept':_0x3ca1fb(0x1d7),...X?{'Authorization':_0x3ca1fb(0x1fc)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x3ca1fb(0x20f),'id':0x2,'method':_0x3ca1fb(0x1ec),'params':{'name':_0x4f171f,'arguments':_0x3d5f42}})}))['text']())['split']('\x0a')[_0x3ca1fb(0x19e)](_0x18de36=>_0x18de36[_0x3ca1fb(0x1fd)](_0x3ca1fb(0x1b8)));if(_0x1a6072){let _0x1eac9b=JSON[_0x3ca1fb(0x1de)](_0x1a6072[_0x3ca1fb(0x20a)](0x6));return _0x1eac9b?.['result']?.[_0x3ca1fb(0x201)]?.[0x0]?.[_0x3ca1fb(0x1cc)]?JSON[_0x3ca1fb(0x1de)](_0x1eac9b[_0x3ca1fb(0x1a0)][_0x3ca1fb(0x201)][0x0][_0x3ca1fb(0x1cc)]):_0x1eac9b;}return{'ok':!0x1,'error':_0x3ca1fb(0x215)};}K[a0_0x4a967d(0x1f4)](a0_0x1e37b7,async _0xbafa58=>{const _0x543b38=a0_0x4a967d;let {name:_0x35dc14,arguments:_0x335742}=_0xbafa58[_0x543b38(0x1f1)];if(_0x35dc14===_0x543b38(0x1f8)){let {task_id:_0x1bf7e0,text:_0xacae76,status:_0x3e6c65}=_0x335742;if(_0x3e6c65==='completed'||_0x3e6c65===_0x543b38(0x1e9)||_0x3e6c65===_0x543b38(0x204)){let _0x3d8411=_0x3e6c65===_0x543b38(0x1e7)?_0x543b38(0x1e8):_0x3e6c65,_0x178895=_0x1bf7e0?k[_0x543b38(0x1ca)](_0x1bf7e0)||_0x543b38(0x1ea):'hub',_0x2257f6=await P('send_reply',{'alias':_0x178895,'text':_0xacae76,'in_reply_to':_0x1bf7e0||void 0x0,'status':_0x3d8411,'from_session':Z});if(_0x1bf7e0)k[_0x543b38(0x1a7)](_0x1bf7e0);return{'content':[{'type':_0x543b38(0x1cc),'text':JSON[_0x543b38(0x1a9)](_0x2257f6)}]};}let _0x14d209=await P(_0x543b38(0x1a6),{'resume_id':w,'alias':Z,'status':_0x3e6c65==='blocked'?'blocked':_0x3e6c65===_0x543b38(0x19d)?'error':_0x543b38(0x1b4),'task':_0xacae76[_0x543b38(0x20a)](0x0,0xc8),'output':_0xacae76});return{'content':[{'type':'text','text':JSON['stringify'](_0x14d209)}]};}if(_0x35dc14===_0x543b38(0x1c9)){let {status:_0x3d4133,task:_0x343092,progress:_0x2dcfee}=_0x335742,_0x184a6d=await P(_0x543b38(0x1a6),{'resume_id':w,'alias':Z,'status':_0x3d4133,'task':_0x343092,'progress':_0x2dcfee});return{'content':[{'type':_0x543b38(0x1cc),'text':JSON[_0x543b38(0x1a9)](_0x184a6d)}]};}if(_0x35dc14===_0x543b38(0x1f9)){let {alias:_0x42e8ab,task:_0x42c5e5,priority:_0x40bec8}=_0x335742,_0x73ea58=await P(_0x543b38(0x1af),{'alias':_0x42e8ab,'task':_0x42c5e5,'priority':_0x40bec8||_0x543b38(0x1bb),'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x543b38(0x1a9)](_0x73ea58)}]};}if(_0x35dc14===_0x543b38(0x185)){let {alias:_0x1a576d,message:_0x25afa9}=_0x335742,_0x533555=await P(_0x543b38(0x1e4),{'alias':_0x1a576d,'message':_0x25afa9,'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x543b38(0x1a9)](_0x533555)}]};}if(_0x35dc14===_0x543b38(0x1d3)){let _0xb8796=await P(_0x543b38(0x207),{});return{'content':[{'type':_0x543b38(0x1cc),'text':JSON[_0x543b38(0x1a9)](_0xb8796)}]};}return{'content':[{'type':_0x543b38(0x1cc),'text':JSON['stringify']({'error':_0x543b38(0x1d6)})}]};});async function u(){const _0x47575c=a0_0x4a967d;let _0x25a687=f+_0x47575c(0x1d2)+encodeURIComponent(Z),_0x1bb88a={};if(X)_0x1bb88a['Authorization']=_0x47575c(0x1fc)+X;Y(_0x47575c(0x1cb)+_0x25a687);while(!0x0){try{let _0x3f7376=await fetch(_0x25a687,{'headers':_0x1bb88a});if(!_0x3f7376['ok']){Y(_0x47575c(0x20b)+_0x3f7376[_0x47575c(0x1fa)]+'\x20'+_0x3f7376['statusText']),await h(0x1388);continue;}let _0x3b11bd=_0x3f7376[_0x47575c(0x1c8)][_0x47575c(0x1e6)](),_0x11b967=new TextDecoder(),_0x596350='';while(!0x0){let {done:_0x722efd,value:_0x2b5668}=await _0x3b11bd[_0x47575c(0x1e1)]();if(_0x722efd)break;_0x596350+=_0x11b967['decode'](_0x2b5668,{'stream':!0x0});let _0x3e220f=_0x596350[_0x47575c(0x197)]('\x0a\x0a');_0x596350=_0x3e220f[_0x47575c(0x18c)]()||'';for(let _0xdaa456 of _0x3e220f){let _0x471f84=_0xdaa456[_0x47575c(0x197)]('\x0a')['find'](_0x4d7142=>_0x4d7142[_0x47575c(0x1fd)](_0x47575c(0x1b8)));if(!_0x471f84)continue;try{let _0x56dc77=JSON['parse'](_0x471f84[_0x47575c(0x20a)](0x6));await S(_0x56dc77);}catch(_0x382021){Y('parse\x20error:\x20'+_0x382021);}}}Y(_0x47575c(0x1e2));}catch(_0x29875d){Y(_0x47575c(0x212)+_0x29875d);}await h(0xbb8);}}async function S(_0x548bf9){const _0x71e98f=a0_0x4a967d;if(_0x548bf9[_0x71e98f(0x1c3)]==='connected'){Y('SSE\x20connected\x20as\x20\x22'+Z+'\x22');return;}if(_0x548bf9[_0x71e98f(0x1c3)]===_0x71e98f(0x195)){if(Y(_0x71e98f(0x1bd)+_0x548bf9[_0x71e98f(0x1b0)]+':\x20'+_0x548bf9[_0x71e98f(0x18d)][_0x71e98f(0x20a)](0x0,0x3c)),await K[_0x71e98f(0x18b)]({'method':'notifications/claude/channel','params':{'content':_0x548bf9['message'],'meta':{'sender':_0x548bf9[_0x71e98f(0x1b0)]||_0x71e98f(0x1ea),'sender_id':_0x71e98f(0x1a2),'user':_0x548bf9[_0x71e98f(0x1b0)]||'hub','priority':_0x71e98f(0x1bb)}}}),_0x548bf9['message_id'])await P('ack_inbox',{'alias':Z,'message_id':_0x548bf9[_0x71e98f(0x203)]});return;}if(_0x548bf9[_0x71e98f(0x1c3)]===_0x71e98f(0x20c)||_0x548bf9[_0x71e98f(0x1c3)]===_0x71e98f(0x1e5)){Y('←\x20'+_0x548bf9[_0x71e98f(0x1c3)]+_0x71e98f(0x1a8)+_0x548bf9[_0x71e98f(0x1ff)]+_0x71e98f(0x18a)+(_0x548bf9[_0x71e98f(0x1fe)]||_0x71e98f(0x1bb)));let _0x568137=await P(_0x71e98f(0x1c0),{'alias':Z,'limit':0x5});if(_0x568137?.['ok']&&_0x568137[_0x71e98f(0x1ef)]?.['length']>0x0)for(let _0x5e07e1 of _0x568137['messages']){let _0x408ec8={'sender':_0x5e07e1[_0x71e98f(0x208)]||_0x71e98f(0x1ea),'sender_id':_0x71e98f(0x1a2),'user':_0x5e07e1[_0x71e98f(0x208)]||'hub','task_id':_0x5e07e1['id'],'priority':_0x5e07e1[_0x71e98f(0x1fe)]||_0x71e98f(0x1bb)};k[_0x71e98f(0x206)](_0x5e07e1['id'],_0x5e07e1[_0x71e98f(0x208)]||_0x71e98f(0x1ea)),await K[_0x71e98f(0x18b)]({'method':_0x71e98f(0x1aa),'params':{'content':_0x5e07e1[_0x71e98f(0x201)],'meta':_0x408ec8}}),Y(_0x71e98f(0x1df)+_0x5e07e1['id']['slice'](0x0,0x8)+'\x20from\x20'+_0x5e07e1[_0x71e98f(0x208)]+':\x20'+_0x5e07e1['content'][_0x71e98f(0x20a)](0x0,0x3c)),await P(_0x71e98f(0x18e),{'alias':Z,'message_id':_0x5e07e1['id']});}}}async function A(){const _0x1ddd02=a0_0x4a967d;let _0x4d39d7=new a0_0x38e2eb();await K['connect'](_0x4d39d7),Y(_0x1ddd02(0x1ab)),Y(_0x1ddd02(0x1e0)),u()[_0x1ddd02(0x196)](_0x34e001=>Y(_0x1ddd02(0x1f3)+_0x34e001)),P(_0x1ddd02(0x1a6),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x4cf3f3(),'hostname':a0_0x4cf3f3(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':j||void 0x0})[_0x1ddd02(0x189)](()=>Y(_0x1ddd02(0x1ee)+Z+_0x1ddd02(0x1ad)+w[_0x1ddd02(0x20a)](0x0,0x8)+')'))[_0x1ddd02(0x196)](_0x1888f7=>Y(_0x1ddd02(0x1ae)+_0x1888f7)),setInterval(()=>{const _0x44ac8b=_0x1ddd02;P(_0x44ac8b(0x1a6),{'resume_id':w,'alias':Z,'status':_0x44ac8b(0x1d1),'server':a0_0x4cf3f3(),'hostname':a0_0x4cf3f3(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':j||void 0x0})[_0x44ac8b(0x196)](_0x30639c=>Y(_0x44ac8b(0x1b7)+_0x30639c));},0x2bf20),Y(_0x1ddd02(0x1b1));}A()[a0_0x4a967d(0x196)](_0x3db0b4=>{const _0x55cddb=a0_0x4a967d;Y(_0x55cddb(0x205)+_0x3db0b4),process['exit'](0x1);});async function N(){const _0x3a65e1=a0_0x4a967d;Y(_0x3a65e1(0x1c4)),await P(_0x3a65e1(0x1a6),{'resume_id':w,'alias':Z,'status':_0x3a65e1(0x19d),'task':_0x3a65e1(0x1b5)})[_0x3a65e1(0x196)](()=>{}),process[_0x3a65e1(0x19f)](0x0);}process['stdin']['on'](a0_0x4a967d(0x1dc),()=>N()),process['on'](a0_0x4a967d(0x1c5),()=>N()),process['on'](a0_0x4a967d(0x19c),()=>N());
2
+ function a0_0x3dcd(){const _0x258798=['unknown\x20tool','fatal:\x20','session\x20disconnected','stderr','ready\x20—\x20waiting\x20for\x20events','find','token','set','priority','commhub_get_all_status','hub','string','.anet','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','77881nQkYZX','2025-03-26','setRequestHandler','\x20priority=','completed','Session\x20alias:\x20','cwd','statusText','notifications/claude/channel','init\x20failed:\x20','Progress\x200-100','failed','end','CommHub\x20init\x20failed:\x20','send_message','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','new_task','from_session','2252215uiTtnu','then','send_reply','1352125dCKYvA','tools/call','.env','Authorization','low','alias','976679bsKwYC','6JIVBSs','parse\x20error:\x20','inbox_count','/mcp','from','SSE\x20stream\x20ended,\x20reconnecting...','\x20from\x20','replied','initialize','normal','message','new_message','Bearer\x20','warning:\x20could\x20not\x20register:\x20','toTimeString','\x20CWD=','commhub-channel','156lTyitF','8MGVfmP','message_id','text','report_status','connecting\x20to\x20','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','→\x20injected\x20task\x20','high','task','starting\x20SSE\x20listener...','send_task','decode','join','2169SyGvgU','commhub_send_task','utf-8','SSE\x20connection\x20error:\x20','working','object','cancelled','trim','14kbxDFr','http://127.0.0.1:9200','Target\x20session\x20alias','get','ack_inbox',':\x20inbox_count=','shutting\x20down,\x20reporting\x20offline...','read','ENV:\x20URL=','commhub_report_status','messages','split','data:\x20','MCP\x20stdio\x20connected','commhub_reply','←\x20message\x20from\x20','indexOf','connect','number','3656660msDUdX','parse','length','registered\x20as\x20\x22','commhub','body','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','content','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','.claude/channels/commhub','notification','0.3.0','type','application/json','idle','SSE\x20connected\x20as\x20\x22','broadcast','slice','application/json,\x20text/event-stream','replace','2.0','status','\x22\x20(','Message\x20content','50061faNput','get_inbox','stringify','connected','Priority\x20(default:\x20normal)','catch','commhub_send_message','exit','Current\x20task\x20description','error','pop','result','776JMORvp','...\x20TMUX=','SIGTERM','startsWith','SSE\x20fatal:\x20','blocked','Reply\x20text\x20/\x20result\x20summary','\x20RESUME_ID='];a0_0x3dcd=function(){return _0x258798;};return a0_0x3dcd();}const a0_0x1f9ce7=a0_0x54a9;(function(_0x530883,_0x3639f3){const _0x5e458d=a0_0x54a9,_0x37743a=_0x530883();while(!![]){try{const _0x5e2c64=-parseInt(_0x5e458d(0x1f7))/0x1*(-parseInt(_0x5e458d(0x1a9))/0x2)+parseInt(_0x5e458d(0x1d5))/0x3*(-parseInt(_0x5e458d(0x194))/0x4)+parseInt(_0x5e458d(0x17b))/0x5*(parseInt(_0x5e458d(0x182))/0x6)+parseInt(_0x5e458d(0x178))/0x7+parseInt(_0x5e458d(0x1e1))/0x8*(-parseInt(_0x5e458d(0x1a1))/0x9)+parseInt(_0x5e458d(0x1bc))/0xa+-parseInt(_0x5e458d(0x181))/0xb*(parseInt(_0x5e458d(0x193))/0xc);if(_0x5e2c64===_0x3639f3)break;else _0x37743a['push'](_0x37743a['shift']());}catch(_0x29a264){_0x37743a['push'](_0x37743a['shift']());}}}(a0_0x3dcd,0x4749b));import{readFileSync as a0_0x463374,existsSync as a0_0x2e955d}from'fs';import{randomUUID as a0_0x324806}from'crypto';function a0_0x54a9(_0x16ff67,_0x2eefb1){_0x16ff67=_0x16ff67-0x174;const _0x3dcd16=a0_0x3dcd();let _0x54a9d7=_0x3dcd16[_0x16ff67];return _0x54a9d7;}import{join as a0_0x210809}from'path';import{hostname as a0_0x1af95a}from'os';import{execSync as a0_0x50a1c4}from'child_process';import{Server as a0_0xc3be16}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x16514c}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x105bb4,CallToolRequestSchema as a0_0x3a54ff}from'@modelcontextprotocol/sdk/types.js';function p(_0x165091){const _0x5de8d9=a0_0x54a9;if(!a0_0x2e955d(_0x165091))return;for(let _0x556062 of a0_0x463374(_0x165091,_0x5de8d9(0x1a3))[_0x5de8d9(0x1b4)]('\x0a')){let _0x39db99=_0x556062[_0x5de8d9(0x1a8)]();if(!_0x39db99||_0x39db99[_0x5de8d9(0x1e4)]('#'))continue;let _0x1fe030=_0x39db99[_0x5de8d9(0x1b9)]('=');if(_0x1fe030<0x0)continue;let _0x42b07e=_0x39db99['slice'](0x0,_0x1fe030)['trim'](),_0x5ed97c=_0x39db99['slice'](_0x1fe030+0x1)[_0x5de8d9(0x1a8)]()['replace'](/^["']|["']$/g,'');if(!process.env[_0x42b07e])process.env[_0x42b07e]=_0x5ed97c;}}var C=process.env.HOME||'~',T=a0_0x210809(C,a0_0x1f9ce7(0x1c6));p(a0_0x210809(T,a0_0x1f9ce7(0x17d)));var L=process[a0_0x1f9ce7(0x1fd)]()[a0_0x1f9ce7(0x1d0)](/\//g,'-');p(a0_0x210809(T,L,a0_0x1f9ce7(0x17d)));function U(){const _0x34b48b=a0_0x1f9ce7;try{return a0_0x50a1c4('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0x34b48b(0x1a3),'timeout':0x7d0})[_0x34b48b(0x1a8)]();}catch{return'';}}function v(){const _0x2e53d1=a0_0x1f9ce7;try{let _0x2c27ca=a0_0x210809(C,_0x2e53d1(0x1f5),'config.json');if(a0_0x2e955d(_0x2c27ca))return JSON[_0x2e53d1(0x1bd)](a0_0x463374(_0x2c27ca,'utf-8'));}catch{}return{};}var H=v(),f=process.env.COMMHUB_URL||H[a0_0x1f9ce7(0x1f3)]||a0_0x1f9ce7(0x1aa),j=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||j||a0_0x1af95a(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x324806(),X=process.env.COMMHUB_TOKEN||H[a0_0x1f9ce7(0x1ef)]||'';function Y(_0x577fc3){const _0x33b244=a0_0x1f9ce7;let _0xa3ee41=new Date()[_0x33b244(0x190)]()[_0x33b244(0x1ce)](0x0,0x8);process[_0x33b244(0x1ec)]['write']('['+_0xa3ee41+']\x20[commhub]\x20'+_0x577fc3+'\x0a');}function h(_0x47c481){return new Promise(_0x8d5113=>setTimeout(_0x8d5113,_0x47c481));}Y(a0_0x1f9ce7(0x1b1)+f+'\x20ALIAS='+Z+a0_0x1f9ce7(0x1e8)+w[a0_0x1f9ce7(0x1ce)](0x0,0x8)+a0_0x1f9ce7(0x1e2)+(j||'none')+a0_0x1f9ce7(0x191)+process[a0_0x1f9ce7(0x1fd)]()+'\x20PROJECT_ENV='+L);var k=new Map(),K=new a0_0xc3be16({'name':a0_0x1f9ce7(0x192),'version':a0_0x1f9ce7(0x1c8)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x1f9ce7(0x1c5),a0_0x1f9ce7(0x175),a0_0x1f9ce7(0x1c2),'You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.',a0_0x1f9ce7(0x1fc)+Z][a0_0x1f9ce7(0x1a0)]('\x0a')});K[a0_0x1f9ce7(0x1f9)](a0_0x105bb4,async()=>({'tools':[{'name':a0_0x1f9ce7(0x1b7),'description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{'task_id':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1f6)},'text':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1e7)},'status':{'type':a0_0x1f9ce7(0x1f4),'enum':[a0_0x1f9ce7(0x1fb),'failed',a0_0x1f9ce7(0x1a7),a0_0x1f9ce7(0x1e6),a0_0x1f9ce7(0x1de),'in_progress'],'description':a0_0x1f9ce7(0x199)}},'required':[a0_0x1f9ce7(0x196)]}},{'name':'commhub_report_status','description':'Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{'status':{'type':a0_0x1f9ce7(0x1f4),'enum':[a0_0x1f9ce7(0x1a5),a0_0x1f9ce7(0x1cb),a0_0x1f9ce7(0x1e6),a0_0x1f9ce7(0x1de)]},'task':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1dd)},'progress':{'type':a0_0x1f9ce7(0x1bb),'description':a0_0x1f9ce7(0x201)}},'required':[a0_0x1f9ce7(0x1d2)]}},{'name':'commhub_send_task','description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{'alias':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1ab)},'task':{'type':a0_0x1f9ce7(0x1f4),'description':'Task\x20content'},'priority':{'type':'string','enum':[a0_0x1f9ce7(0x19b),a0_0x1f9ce7(0x18b),a0_0x1f9ce7(0x17f)],'description':a0_0x1f9ce7(0x1d9)}},'required':[a0_0x1f9ce7(0x180),a0_0x1f9ce7(0x19c)]}},{'name':a0_0x1f9ce7(0x1db),'description':a0_0x1f9ce7(0x1c3),'inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{'alias':{'type':a0_0x1f9ce7(0x1f4),'description':'Target\x20session\x20alias'},'message':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1d4)}},'required':[a0_0x1f9ce7(0x180),a0_0x1f9ce7(0x18c)]}},{'name':a0_0x1f9ce7(0x1f2),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{}}}]}));async function P(_0xe78f65,_0x4c3afd){const _0x3296bb=a0_0x1f9ce7;let _0x1b3a82=await fetch(f+_0x3296bb(0x185),{'method':'POST','headers':{'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream',...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x3296bb(0x1d7)]({'jsonrpc':_0x3296bb(0x1d1),'id':0x1,'method':_0x3296bb(0x18a),'params':{'protocolVersion':_0x3296bb(0x1f8),'capabilities':{},'clientInfo':{'name':_0x3296bb(0x192),'version':_0x3296bb(0x1c8)}}})});if(!_0x1b3a82['ok']){let _0x199fd5=await _0x1b3a82[_0x3296bb(0x196)]();return Y(_0x3296bb(0x204)+_0x1b3a82['status']+'\x20'+_0x199fd5[_0x3296bb(0x1ce)](0x0,0x64)),{'ok':!0x1,'error':_0x3296bb(0x200)+_0x1b3a82[_0x3296bb(0x1d2)]};}await _0x1b3a82[_0x3296bb(0x196)]();let _0x5e4385=(await(await fetch(f+_0x3296bb(0x185),{'method':'POST','headers':{'Content-Type':_0x3296bb(0x1ca),'Accept':_0x3296bb(0x1cf),...X?{'Authorization':_0x3296bb(0x18e)+X}:{}},'body':JSON[_0x3296bb(0x1d7)]({'jsonrpc':_0x3296bb(0x1d1),'id':0x2,'method':_0x3296bb(0x17c),'params':{'name':_0xe78f65,'arguments':_0x4c3afd}})}))[_0x3296bb(0x196)]())[_0x3296bb(0x1b4)]('\x0a')[_0x3296bb(0x1ee)](_0x6c3d3c=>_0x6c3d3c[_0x3296bb(0x1e4)](_0x3296bb(0x1b5)));if(_0x5e4385){let _0x4de4e7=JSON[_0x3296bb(0x1bd)](_0x5e4385['slice'](0x6));return _0x4de4e7?.[_0x3296bb(0x1e0)]?.[_0x3296bb(0x1c4)]?.[0x0]?.[_0x3296bb(0x196)]?JSON[_0x3296bb(0x1bd)](_0x4de4e7[_0x3296bb(0x1e0)][_0x3296bb(0x1c4)][0x0][_0x3296bb(0x196)]):_0x4de4e7;}return{'ok':!0x1,'error':'no\x20response'};}K[a0_0x1f9ce7(0x1f9)](a0_0x3a54ff,async _0x433bb4=>{const _0x20e083=a0_0x1f9ce7;let {name:_0x321d66,arguments:_0x18857a}=_0x433bb4['params'];if(_0x321d66==='commhub_reply'){let {task_id:_0x4213ae,text:_0x179293,status:_0x3dd534}=_0x18857a;if(_0x3dd534===_0x20e083(0x1fb)||_0x3dd534===_0x20e083(0x202)||_0x3dd534===_0x20e083(0x1a7)){let _0x572835=_0x3dd534===_0x20e083(0x1fb)?_0x20e083(0x189):_0x3dd534,_0x42924d=_0x4213ae?k[_0x20e083(0x1ac)](_0x4213ae)||_0x20e083(0x1f3):_0x20e083(0x1f3),_0x3a3829=await P(_0x20e083(0x17a),{'alias':_0x42924d,'text':_0x179293,'in_reply_to':_0x4213ae||void 0x0,'status':_0x572835,'from_session':Z});if(_0x4213ae)k['delete'](_0x4213ae);return{'content':[{'type':_0x20e083(0x196),'text':JSON['stringify'](_0x3a3829)}]};}let _0x1eefb5=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x3dd534===_0x20e083(0x1e6)?_0x20e083(0x1e6):_0x3dd534===_0x20e083(0x1de)?_0x20e083(0x1de):_0x20e083(0x1a5),'task':_0x179293['slice'](0x0,0xc8),'output':_0x179293});return{'content':[{'type':_0x20e083(0x196),'text':JSON['stringify'](_0x1eefb5)}]};}if(_0x321d66===_0x20e083(0x1b2)){let {status:_0x19d056,task:_0x5c0398,progress:_0x2eab19}=_0x18857a,_0x5bd3b4=await P(_0x20e083(0x197),{'resume_id':w,'alias':Z,'status':_0x19d056,'task':_0x5c0398,'progress':_0x2eab19});return{'content':[{'type':_0x20e083(0x196),'text':JSON[_0x20e083(0x1d7)](_0x5bd3b4)}]};}if(_0x321d66===_0x20e083(0x1a2)){let {alias:_0x366c63,task:_0x39694a,priority:_0x258ef4}=_0x18857a,_0x3ab044=await P(_0x20e083(0x19e),{'alias':_0x366c63,'task':_0x39694a,'priority':_0x258ef4||'normal','from_session':Z});return{'content':[{'type':_0x20e083(0x196),'text':JSON[_0x20e083(0x1d7)](_0x3ab044)}]};}if(_0x321d66==='commhub_send_message'){let {alias:_0x19b0b5,message:_0x31591f}=_0x18857a,_0x3f64ac=await P(_0x20e083(0x174),{'alias':_0x19b0b5,'message':_0x31591f,'from_session':Z});return{'content':[{'type':_0x20e083(0x196),'text':JSON[_0x20e083(0x1d7)](_0x3f64ac)}]};}if(_0x321d66===_0x20e083(0x1f2)){let _0x46265c=await P('get_all_status',{});return{'content':[{'type':_0x20e083(0x196),'text':JSON['stringify'](_0x46265c)}]};}return{'content':[{'type':_0x20e083(0x196),'text':JSON[_0x20e083(0x1d7)]({'error':_0x20e083(0x1e9)})}]};});async function u(){const _0x1c573f=a0_0x1f9ce7;let _0x1d54ee=f+'/events/'+encodeURIComponent(Z),_0x3dc5bc={};if(X)_0x3dc5bc[_0x1c573f(0x17e)]=_0x1c573f(0x18e)+X;Y(_0x1c573f(0x198)+_0x1d54ee);while(!0x0){try{let _0x3ddc57=await fetch(_0x1d54ee,{'headers':_0x3dc5bc});if(!_0x3ddc57['ok']){Y('SSE\x20error:\x20'+_0x3ddc57['status']+'\x20'+_0x3ddc57[_0x1c573f(0x1fe)]),await h(0x1388);continue;}let _0x427994=_0x3ddc57[_0x1c573f(0x1c1)]['getReader'](),_0x3d3505=new TextDecoder(),_0x106afe='';while(!0x0){let {done:_0x2b5177,value:_0x1ccd7d}=await _0x427994[_0x1c573f(0x1b0)]();if(_0x2b5177)break;_0x106afe+=_0x3d3505[_0x1c573f(0x19f)](_0x1ccd7d,{'stream':!0x0});let _0x1ce2ae=_0x106afe[_0x1c573f(0x1b4)]('\x0a\x0a');_0x106afe=_0x1ce2ae[_0x1c573f(0x1df)]()||'';for(let _0x517f0d of _0x1ce2ae){let _0x3b1ce6=_0x517f0d[_0x1c573f(0x1b4)]('\x0a')[_0x1c573f(0x1ee)](_0x776991=>_0x776991['startsWith'](_0x1c573f(0x1b5)));if(!_0x3b1ce6)continue;try{let _0xa8773c=JSON[_0x1c573f(0x1bd)](_0x3b1ce6[_0x1c573f(0x1ce)](0x6));await S(_0xa8773c);}catch(_0x4409f2){Y(_0x1c573f(0x183)+_0x4409f2);}}}Y(_0x1c573f(0x187));}catch(_0x47017a){Y(_0x1c573f(0x1a4)+_0x47017a);}await h(0xbb8);}}async function S(_0x5e2b42){const _0x1d88a8=a0_0x1f9ce7;if(_0x5e2b42[_0x1d88a8(0x1c9)]===_0x1d88a8(0x1d8)){Y(_0x1d88a8(0x1cc)+Z+'\x22');return;}if(_0x5e2b42[_0x1d88a8(0x1c9)]===_0x1d88a8(0x18d)){if(Y(_0x1d88a8(0x1b8)+_0x5e2b42['from']+':\x20'+_0x5e2b42[_0x1d88a8(0x18c)][_0x1d88a8(0x1ce)](0x0,0x3c)),await K[_0x1d88a8(0x1c7)]({'method':_0x1d88a8(0x1ff),'params':{'content':_0x5e2b42[_0x1d88a8(0x18c)],'meta':{'sender':_0x5e2b42[_0x1d88a8(0x186)]||'hub','sender_id':'commhub','user':_0x5e2b42['from']||_0x1d88a8(0x1f3),'priority':'normal'}}}),_0x5e2b42[_0x1d88a8(0x195)])await P(_0x1d88a8(0x1ad),{'alias':Z,'message_id':_0x5e2b42[_0x1d88a8(0x195)]});return;}if(_0x5e2b42[_0x1d88a8(0x1c9)]===_0x1d88a8(0x176)||_0x5e2b42['type']===_0x1d88a8(0x1cd)){Y('←\x20'+_0x5e2b42[_0x1d88a8(0x1c9)]+_0x1d88a8(0x1ae)+_0x5e2b42[_0x1d88a8(0x184)]+_0x1d88a8(0x1fa)+(_0x5e2b42['priority']||_0x1d88a8(0x18b)));let _0x2ddbc9=await P(_0x1d88a8(0x1d6),{'alias':Z,'limit':0x5});if(_0x2ddbc9?.['ok']&&_0x2ddbc9[_0x1d88a8(0x1b3)]?.[_0x1d88a8(0x1be)]>0x0)for(let _0x53e656 of _0x2ddbc9['messages']){let _0x5aa2ca={'sender':_0x53e656[_0x1d88a8(0x177)]||'hub','sender_id':_0x1d88a8(0x1c0),'user':_0x53e656['from_session']||'hub','task_id':_0x53e656['id'],'priority':_0x53e656[_0x1d88a8(0x1f1)]||_0x1d88a8(0x18b)};k[_0x1d88a8(0x1f0)](_0x53e656['id'],_0x53e656[_0x1d88a8(0x177)]||_0x1d88a8(0x1f3)),await K[_0x1d88a8(0x1c7)]({'method':_0x1d88a8(0x1ff),'params':{'content':_0x53e656[_0x1d88a8(0x1c4)],'meta':_0x5aa2ca}}),Y(_0x1d88a8(0x19a)+_0x53e656['id']['slice'](0x0,0x8)+_0x1d88a8(0x188)+_0x53e656[_0x1d88a8(0x177)]+':\x20'+_0x53e656['content']['slice'](0x0,0x3c)),await P('ack_inbox',{'alias':Z,'message_id':_0x53e656['id']});}}}async function A(){const _0x48ecb5=a0_0x1f9ce7;let _0x28d970=new a0_0x16514c();await K[_0x48ecb5(0x1ba)](_0x28d970),Y(_0x48ecb5(0x1b6)),Y(_0x48ecb5(0x19d)),u()['catch'](_0x240d52=>Y(_0x48ecb5(0x1e5)+_0x240d52)),P(_0x48ecb5(0x197),{'resume_id':w,'alias':Z,'status':_0x48ecb5(0x1cb),'server':a0_0x1af95a(),'hostname':a0_0x1af95a(),'agent':'claude-code','project_dir':process[_0x48ecb5(0x1fd)](),'tmux_name':j||void 0x0})[_0x48ecb5(0x179)](()=>Y(_0x48ecb5(0x1bf)+Z+_0x48ecb5(0x1d3)+w['slice'](0x0,0x8)+')'))[_0x48ecb5(0x1da)](_0x2ca330=>Y(_0x48ecb5(0x18f)+_0x2ca330)),setInterval(()=>{const _0x12d09b=_0x48ecb5;P(_0x12d09b(0x197),{'resume_id':w,'alias':Z,'status':_0x12d09b(0x1cb),'server':a0_0x1af95a(),'hostname':a0_0x1af95a(),'agent':'claude-code','project_dir':process[_0x12d09b(0x1fd)](),'tmux_name':j||void 0x0})['catch'](_0x38f8d4=>Y('heartbeat\x20failed:\x20'+_0x38f8d4));},0x2bf20),Y(_0x48ecb5(0x1ed));}A()[a0_0x1f9ce7(0x1da)](_0x53ccbd=>{const _0x3269c5=a0_0x1f9ce7;Y(_0x3269c5(0x1ea)+_0x53ccbd),process['exit'](0x1);});async function N(){const _0x49f1c4=a0_0x1f9ce7;Y(_0x49f1c4(0x1af)),await P(_0x49f1c4(0x197),{'resume_id':w,'alias':Z,'status':_0x49f1c4(0x1de),'task':_0x49f1c4(0x1eb)})[_0x49f1c4(0x1da)](()=>{}),process[_0x49f1c4(0x1dc)](0x0);}process['stdin']['on'](a0_0x1f9ce7(0x203),()=>N()),process['on'](a0_0x1f9ce7(0x1e3),()=>N()),process['on']('SIGINT',()=>N());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sleep2agi/agent-network",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
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",