@sleep2agi/agent-network 2.0.0-preview.3 → 2.0.0-preview.30

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_0x286395=a0_0x5507;(function(_0x35d7b7,_0x2eee07){const _0x42008=a0_0x5507,_0x18cc2b=_0x35d7b7();while(!![]){try{const _0x3f22f7=-parseInt(_0x42008(0x17c))/0x1+-parseInt(_0x42008(0x196))/0x2*(-parseInt(_0x42008(0x1a1))/0x3)+-parseInt(_0x42008(0x185))/0x4*(-parseInt(_0x42008(0x17b))/0x5)+parseInt(_0x42008(0x186))/0x6+parseInt(_0x42008(0x19f))/0x7*(parseInt(_0x42008(0x188))/0x8)+-parseInt(_0x42008(0x15d))/0x9*(parseInt(_0x42008(0x16b))/0xa)+-parseInt(_0x42008(0x166))/0xb*(parseInt(_0x42008(0x160))/0xc);if(_0x3f22f7===_0x2eee07)break;else _0x18cc2b['push'](_0x18cc2b['shift']());}catch(_0x20239b){_0x18cc2b['push'](_0x18cc2b['shift']());}}}(a0_0x344b,0x83c04));import{EventEmitter as a0_0x5a1e8e}from'events';import{hostname as a0_0x10f18b}from'os';function a0_0x344b(){const _0x355cfe=['reply','heartbeatTimer','running','match','message','22XiQiWm','now','alias','Authorization','disconnected','3590zzGyQz','sdk-','error','messages','AbortError','send','new_task','/events/','get_inbox','result','registered','parse','toTimeString','token','offline','getAllStatus','28395UncLFJ','495136TVJdMg','SSE\x20failed:\x20','split','agent','heartbeat\x20failed:\x20','inbox\x20error:\x20','2.0','cwd','sseAbort','4QvIbVu','2188680piavPc','body','7973960laAhyL','connectSSE','status','min','resumeId','abort','toString','SSE\x20reconnecting\x20in\x20','getReader','SSE\x20connected','catch','signal','idle','autoConnect','308094uplwtU','connected','broadcast','new_message','normal','replace','Bearer\x20','sleep','startsWith','7tuFcpy','content','12hYEUCg','emit','application/json,\x20text/event-stream','get_all_status','type','heartbeatInterval','slice','sdk','pop','reconnectDelay','processInbox','call','ack_inbox','log','decode','send_message','completed','POST','tools/call','server','url','14058HVVOSm','report_status','text','2327076lXzOYy'];a0_0x344b=function(){return _0x355cfe;};return a0_0x344b();}class T extends a0_0x5a1e8e{[a0_0x286395(0x15c)];[a0_0x286395(0x168)];['token'];[a0_0x286395(0x17f)];['resumeId'];['heartbeatInterval'];[a0_0x286395(0x1aa)];['heartbeatTimer'];['sseAbort'];[a0_0x286395(0x163)]=!0x1;constructor(_0x52ac67){const _0x2d3c2a=a0_0x286395;super();if(this[_0x2d3c2a(0x15c)]=_0x52ac67[_0x2d3c2a(0x15c)][_0x2d3c2a(0x19b)](/\/$/,''),this[_0x2d3c2a(0x168)]=_0x52ac67[_0x2d3c2a(0x168)],this[_0x2d3c2a(0x178)]=_0x52ac67['token'],this[_0x2d3c2a(0x17f)]=_0x52ac67[_0x2d3c2a(0x17f)]||_0x2d3c2a(0x1a8),this[_0x2d3c2a(0x18c)]=_0x2d3c2a(0x16c)+_0x52ac67['alias']+'-'+Date[_0x2d3c2a(0x167)]()[_0x2d3c2a(0x18e)](0x24),this[_0x2d3c2a(0x1a6)]=_0x52ac67[_0x2d3c2a(0x1a6)]??0x2bf20,this[_0x2d3c2a(0x1aa)]=_0x52ac67[_0x2d3c2a(0x1aa)]??0xbb8,_0x52ac67[_0x2d3c2a(0x195)]!==!0x1)this['connect']();}[a0_0x286395(0x1ae)](_0x5609f6){const _0x3d75ec=a0_0x286395;console[_0x3d75ec(0x1ae)]('['+new Date()[_0x3d75ec(0x177)]()[_0x3d75ec(0x1a7)](0x0,0x8)+']\x20[commhub:'+this[_0x3d75ec(0x168)]+']\x20'+_0x5609f6);}async[a0_0x286395(0x1ac)](_0x1251b6,_0x33617c){const _0x1dd007=a0_0x286395;let _0x304614={'Content-Type':'application/json','Accept':_0x1dd007(0x1a3)};if(this[_0x1dd007(0x178)])_0x304614[_0x1dd007(0x169)]=_0x1dd007(0x19c)+this[_0x1dd007(0x178)];let _0x2a432d=await(await fetch(this[_0x1dd007(0x15c)]+'/mcp',{'method':_0x1dd007(0x159),'headers':_0x304614,'body':JSON['stringify']({'jsonrpc':_0x1dd007(0x182),'id':Date[_0x1dd007(0x167)](),'method':_0x1dd007(0x15a),'params':{'name':_0x1251b6,'arguments':_0x33617c}})}))[_0x1dd007(0x15f)](),_0x14b311=_0x2a432d[_0x1dd007(0x164)](/data: (.+)/),_0x339ae0=_0x14b311?JSON[_0x1dd007(0x176)](_0x14b311[0x1]):JSON[_0x1dd007(0x176)](_0x2a432d),_0x2b5aed=_0x339ae0?.[_0x1dd007(0x174)]?.[_0x1dd007(0x1a0)]?.[0x0]?.['text'];return _0x2b5aed?JSON[_0x1dd007(0x176)](_0x2b5aed):_0x339ae0;}async['connect'](){const _0x47c887=a0_0x286395;if(this[_0x47c887(0x163)])return;this[_0x47c887(0x163)]=!0x0,await this[_0x47c887(0x18a)](_0x47c887(0x194)),this['log'](_0x47c887(0x175)),this[_0x47c887(0x162)]=setInterval(()=>{const _0x2302d2=_0x47c887;this[_0x2302d2(0x18a)](_0x2302d2(0x194))[_0x2302d2(0x192)](_0x5d6d61=>this[_0x2302d2(0x1ae)](_0x2302d2(0x180)+_0x5d6d61['message']));},this[_0x47c887(0x1a6)]),this['connectSSE']();}async['disconnect'](){const _0x2f7b09=a0_0x286395;if(this[_0x2f7b09(0x163)]=!0x1,this[_0x2f7b09(0x184)]?.[_0x2f7b09(0x18d)](),this[_0x2f7b09(0x162)])clearInterval(this[_0x2f7b09(0x162)]);await this[_0x2f7b09(0x18a)](_0x2f7b09(0x179))['catch'](()=>{}),this[_0x2f7b09(0x1ae)](_0x2f7b09(0x16a));}async[a0_0x286395(0x170)](_0x40b387,_0x42e129,_0x74c929=a0_0x286395(0x19a)){const _0x31921c=a0_0x286395;return this[_0x31921c(0x1ac)]('send_task',{'alias':_0x40b387,'task':_0x42e129,'priority':_0x74c929,'from_session':this[_0x31921c(0x168)]});}async['message'](_0x495312,_0x224d85){const _0x1546e2=a0_0x286395;return this[_0x1546e2(0x1ac)](_0x1546e2(0x157),{'alias':_0x495312,'message':_0x224d85,'from_session':this[_0x1546e2(0x168)]});}async[a0_0x286395(0x161)](_0x35d255,_0x1462e1,_0x1ecf97=a0_0x286395(0x158)){const _0x12eb01=a0_0x286395;return this[_0x12eb01(0x1ac)](_0x12eb01(0x161),{'task_id':_0x35d255,'text':_0x1462e1,'status':_0x1ecf97});}async[a0_0x286395(0x18a)](_0x446d42,_0xdb1ecb){const _0x93bedc=a0_0x286395;return this['call'](_0x93bedc(0x15e),{'resume_id':this[_0x93bedc(0x18c)],'alias':this[_0x93bedc(0x168)],'status':_0x446d42,'server':a0_0x10f18b(),'hostname':a0_0x10f18b(),'agent':this[_0x93bedc(0x17f)],'project_dir':process[_0x93bedc(0x183)](),..._0xdb1ecb});}async[a0_0x286395(0x17a)](){const _0x19e7b6=a0_0x286395;return this[_0x19e7b6(0x1ac)](_0x19e7b6(0x1a4),{});}async[a0_0x286395(0x198)](_0x5d1cc9,_0x2d5bab){const _0x688326=a0_0x286395;return this[_0x688326(0x1ac)](_0x688326(0x198),{'message':_0x5d1cc9,'filter_server':_0x2d5bab?.[_0x688326(0x15b)],'filter_status':_0x2d5bab?.[_0x688326(0x18a)]});}async[a0_0x286395(0x189)](){const _0x43e742=a0_0x286395;let _0x4621e1=encodeURIComponent(this[_0x43e742(0x168)]),_0x2d11b7=this['url']+_0x43e742(0x172)+_0x4621e1,_0x3e4cfe=this[_0x43e742(0x1aa)];while(this['running']){try{this[_0x43e742(0x184)]=new AbortController();let _0x28abf7={'Accept':'text/event-stream'};if(this[_0x43e742(0x178)])_0x28abf7[_0x43e742(0x169)]=_0x43e742(0x19c)+this[_0x43e742(0x178)];let _0x5494bc=await fetch(_0x2d11b7,{'headers':_0x28abf7,'signal':this[_0x43e742(0x184)][_0x43e742(0x193)]});if(!_0x5494bc['ok']||!_0x5494bc[_0x43e742(0x187)]){this[_0x43e742(0x1ae)](_0x43e742(0x17d)+_0x5494bc[_0x43e742(0x18a)]),await this[_0x43e742(0x19d)](_0x3e4cfe),_0x3e4cfe=Math[_0x43e742(0x18b)](_0x3e4cfe*1.5,0xea60);continue;}_0x3e4cfe=this[_0x43e742(0x1aa)];let _0x4844c3=_0x5494bc[_0x43e742(0x187)][_0x43e742(0x190)](),_0x153863=new TextDecoder(),_0x2f49fe='';while(this[_0x43e742(0x163)]){let {done:_0x5e8a62,value:_0x247605}=await _0x4844c3['read']();if(_0x5e8a62)break;_0x2f49fe+=_0x153863[_0x43e742(0x1af)](_0x247605,{'stream':!0x0});let _0x237e27=_0x2f49fe[_0x43e742(0x17e)]('\x0a');_0x2f49fe=_0x237e27[_0x43e742(0x1a9)]()||'';for(let _0x5d78f1 of _0x237e27){if(!_0x5d78f1[_0x43e742(0x19e)]('data:\x20'))continue;try{let _0x2ff822=JSON[_0x43e742(0x176)](_0x5d78f1[_0x43e742(0x1a7)](0x6));if(_0x2ff822[_0x43e742(0x1a5)]===_0x43e742(0x197)){this[_0x43e742(0x1ae)](_0x43e742(0x191)),this[_0x43e742(0x1a2)](_0x43e742(0x197));continue;}if(_0x2ff822[_0x43e742(0x1a5)]===_0x43e742(0x171)||_0x2ff822[_0x43e742(0x1a5)]===_0x43e742(0x199)||_0x2ff822['type']===_0x43e742(0x198))await this[_0x43e742(0x1ab)]();}catch{}}}}catch(_0x32e364){if(_0x32e364['name']===_0x43e742(0x16f))break;this[_0x43e742(0x1a2)](_0x43e742(0x16d),_0x32e364),this[_0x43e742(0x1ae)]('SSE\x20error:\x20'+_0x32e364[_0x43e742(0x165)]);}if(this[_0x43e742(0x163)])this[_0x43e742(0x1a2)](_0x43e742(0x16a)),this[_0x43e742(0x1ae)](_0x43e742(0x18f)+_0x3e4cfe/0x3e8+'s...'),await this[_0x43e742(0x19d)](_0x3e4cfe),_0x3e4cfe=Math[_0x43e742(0x18b)](_0x3e4cfe*1.5,0xea60);}}async[a0_0x286395(0x1ab)](){const _0x51211c=a0_0x286395;try{let _0x4d8337=(await this[_0x51211c(0x1ac)](_0x51211c(0x173),{'alias':this[_0x51211c(0x168)],'limit':0xa}))?.[_0x51211c(0x16e)]||[];for(let _0x552558 of _0x4d8337)await this[_0x51211c(0x1ac)](_0x51211c(0x1ad),{'alias':this['alias'],'message_id':_0x552558['id']}),this[_0x51211c(0x1ae)]('←\x20'+_0x552558['from_session']+':\x20'+_0x552558[_0x51211c(0x1a0)][_0x51211c(0x1a7)](0x0,0x3c)),this['emit']('task',_0x552558),this['emit'](_0x51211c(0x165),_0x552558);}catch(_0x485263){this[_0x51211c(0x1ae)](_0x51211c(0x181)+_0x485263[_0x51211c(0x165)]);}}[a0_0x286395(0x19d)](_0x7913dd){return new Promise(_0x261ae2=>setTimeout(_0x261ae2,_0x7913dd));}}function a0_0x5507(_0x3db737,_0x240981){_0x3db737=_0x3db737-0x157;const _0x344bea=a0_0x344b();let _0x550733=_0x344bea[_0x3db737];return _0x550733;}var $=T;export{$ as default,T as CommHub};
1
+ const a0_0x1d5946=a0_0x1a4c;(function(_0xd3a1da,_0x47ac50){const _0x436c2d=a0_0x1a4c,_0x421720=_0xd3a1da();while(!![]){try{const _0x408284=parseInt(_0x436c2d(0x14e))/0x1*(parseInt(_0x436c2d(0x175))/0x2)+-parseInt(_0x436c2d(0x171))/0x3*(-parseInt(_0x436c2d(0x16e))/0x4)+-parseInt(_0x436c2d(0x18a))/0x5+parseInt(_0x436c2d(0x17e))/0x6+parseInt(_0x436c2d(0x16b))/0x7+parseInt(_0x436c2d(0x166))/0x8*(parseInt(_0x436c2d(0x152))/0x9)+-parseInt(_0x436c2d(0x174))/0xa;if(_0x408284===_0x47ac50)break;else _0x421720['push'](_0x421720['shift']());}catch(_0x3dbcda){_0x421720['push'](_0x421720['shift']());}}}(a0_0x9389,0x2f60b));import{EventEmitter as a0_0x10c689}from'events';import{hostname as a0_0x1833cb}from'os';function a0_0x9389(){const _0x56a8aa=['parse','heartbeatTimer','s...','inbox\x20error:\x20','type','running','alias','processInbox','abort','heartbeat\x20failed:\x20','sleep','signal','from_session','SSE\x20error:\x20','connected','Bearer\x20','pop','catch','now','application/json,\x20text/event-stream','status','application/json','disconnect','log','sseAbort','registered','decode','normal','371153DXmTEJ','send','sdk','send_task','2018097onkcIg','resumeId','completed','data:\x20','new_message','toTimeString','broadcast','connect','/mcp','/events/','url','sdk-','autoConnect','tools/call','result','AbortError','get_inbox','content','min','messages','8GPNnbW','reply','toString','name',']\x20[commhub:','1626149Nzzjrf','split','Authorization','556elgpWE','cwd','task','4062Hqwtgt','stringify','agent','7640750IGQFwi','2uuQrqk','server','idle','emit','read','SSE\x20reconnecting\x20in\x20','offline','match','report_status','397692GSajQk','send_message','getAllStatus','message','get_all_status','connectSSE','slice','heartbeatInterval','body','call','POST','reconnectDelay','620235BWstNq','token'];a0_0x9389=function(){return _0x56a8aa;};return a0_0x9389();}function a0_0x1a4c(_0x5ecd3d,_0x287254){_0x5ecd3d=_0x5ecd3d-0x148;const _0x93891e=a0_0x9389();let _0x1a4c5b=_0x93891e[_0x5ecd3d];return _0x1a4c5b;}class T extends a0_0x10c689{[a0_0x1d5946(0x15c)];[a0_0x1d5946(0x192)];[a0_0x1d5946(0x18b)];[a0_0x1d5946(0x173)];['resumeId'];['heartbeatInterval'];['reconnectDelay'];[a0_0x1d5946(0x18d)];[a0_0x1d5946(0x14a)];[a0_0x1d5946(0x191)]=!0x1;constructor(_0x4a0e30){const _0x2288c7=a0_0x1d5946;super();if(this[_0x2288c7(0x15c)]=_0x4a0e30[_0x2288c7(0x15c)]['replace'](/\/$/,''),this[_0x2288c7(0x192)]=_0x4a0e30[_0x2288c7(0x192)],this[_0x2288c7(0x18b)]=_0x4a0e30[_0x2288c7(0x18b)],this[_0x2288c7(0x173)]=_0x4a0e30['agent']||_0x2288c7(0x150),this[_0x2288c7(0x153)]=_0x2288c7(0x15d)+_0x4a0e30['alias']+'-'+Date['now']()[_0x2288c7(0x168)](0x24),this['heartbeatInterval']=_0x4a0e30[_0x2288c7(0x185)]??0x2bf20,this['reconnectDelay']=_0x4a0e30[_0x2288c7(0x189)]??0xbb8,_0x4a0e30[_0x2288c7(0x15e)]!==!0x1)this[_0x2288c7(0x159)]();}[a0_0x1d5946(0x149)](_0x284798){const _0x438e02=a0_0x1d5946;console[_0x438e02(0x149)]('['+new Date()[_0x438e02(0x157)]()[_0x438e02(0x184)](0x0,0x8)+_0x438e02(0x16a)+this[_0x438e02(0x192)]+']\x20'+_0x284798);}async[a0_0x1d5946(0x187)](_0x31561e,_0xe30c21){const _0x3a987a=a0_0x1d5946;let _0x1c1499={'Content-Type':_0x3a987a(0x1a1),'Accept':_0x3a987a(0x19f)};if(this[_0x3a987a(0x18b)])_0x1c1499[_0x3a987a(0x16d)]=_0x3a987a(0x19b)+this['token'];let _0x499462=await(await fetch(this[_0x3a987a(0x15c)]+_0x3a987a(0x15a),{'method':_0x3a987a(0x188),'headers':_0x1c1499,'body':JSON[_0x3a987a(0x172)]({'jsonrpc':'2.0','id':Date[_0x3a987a(0x19e)](),'method':_0x3a987a(0x15f),'params':{'name':_0x31561e,'arguments':_0xe30c21}})}))['text'](),_0x888da5=_0x499462[_0x3a987a(0x17c)](/data: (.+)/),_0x33490d=_0x888da5?JSON[_0x3a987a(0x18c)](_0x888da5[0x1]):JSON[_0x3a987a(0x18c)](_0x499462),_0x33cd80=_0x33490d?.[_0x3a987a(0x160)]?.[_0x3a987a(0x163)]?.[0x0]?.['text'];return _0x33cd80?JSON[_0x3a987a(0x18c)](_0x33cd80):_0x33490d;}async[a0_0x1d5946(0x159)](){const _0xc30008=a0_0x1d5946;if(this['running'])return;this['running']=!0x0,await this[_0xc30008(0x1a0)](_0xc30008(0x177)),this[_0xc30008(0x149)](_0xc30008(0x14b)),this[_0xc30008(0x18d)]=setInterval(()=>{const _0xda362f=_0xc30008;this[_0xda362f(0x1a0)](_0xda362f(0x177))[_0xda362f(0x19d)](_0x27a90d=>this['log'](_0xda362f(0x195)+_0x27a90d['message']));},this[_0xc30008(0x185)]),this[_0xc30008(0x183)]();}async[a0_0x1d5946(0x148)](){const _0x146b31=a0_0x1d5946;if(this[_0x146b31(0x191)]=!0x1,this[_0x146b31(0x14a)]?.[_0x146b31(0x194)](),this['heartbeatTimer'])clearInterval(this['heartbeatTimer']);await this[_0x146b31(0x1a0)](_0x146b31(0x17b))[_0x146b31(0x19d)](()=>{}),this[_0x146b31(0x149)]('disconnected');}async[a0_0x1d5946(0x14f)](_0x177a0e,_0x9369da,_0x55157c=a0_0x1d5946(0x14d)){const _0x381513=a0_0x1d5946;return this[_0x381513(0x187)](_0x381513(0x151),{'alias':_0x177a0e,'task':_0x9369da,'priority':_0x55157c,'from_session':this[_0x381513(0x192)]});}async[a0_0x1d5946(0x181)](_0x342fe8,_0x3278eb){const _0x19e198=a0_0x1d5946;return this[_0x19e198(0x187)](_0x19e198(0x17f),{'alias':_0x342fe8,'message':_0x3278eb,'from_session':this[_0x19e198(0x192)]});}async[a0_0x1d5946(0x167)](_0x1f99a6,_0x3f7617,_0x44f7b3=a0_0x1d5946(0x154)){const _0x3b1401=a0_0x1d5946;return this[_0x3b1401(0x187)](_0x3b1401(0x167),{'task_id':_0x1f99a6,'text':_0x3f7617,'status':_0x44f7b3});}async[a0_0x1d5946(0x1a0)](_0x2b43bf,_0x115017){const _0x3288d7=a0_0x1d5946;return this[_0x3288d7(0x187)](_0x3288d7(0x17d),{'resume_id':this[_0x3288d7(0x153)],'alias':this[_0x3288d7(0x192)],'status':_0x2b43bf,'server':a0_0x1833cb(),'hostname':a0_0x1833cb(),'agent':this['agent'],'project_dir':process[_0x3288d7(0x16f)](),..._0x115017});}async[a0_0x1d5946(0x180)](){const _0x53f815=a0_0x1d5946;return this[_0x53f815(0x187)](_0x53f815(0x182),{});}async['broadcast'](_0x1030d0,_0x5469fc){const _0x54b519=a0_0x1d5946;return this[_0x54b519(0x187)](_0x54b519(0x158),{'message':_0x1030d0,'filter_server':_0x5469fc?.[_0x54b519(0x176)],'filter_status':_0x5469fc?.[_0x54b519(0x1a0)]});}async['connectSSE'](){const _0x10cabb=a0_0x1d5946;let _0x2f7c3a=encodeURIComponent(this[_0x10cabb(0x192)]),_0x12c173=this[_0x10cabb(0x15c)]+_0x10cabb(0x15b)+_0x2f7c3a,_0x5aa667=this[_0x10cabb(0x189)];while(this[_0x10cabb(0x191)]){try{this[_0x10cabb(0x14a)]=new AbortController();let _0xcfcd43={'Accept':'text/event-stream'};if(this['token'])_0xcfcd43[_0x10cabb(0x16d)]='Bearer\x20'+this[_0x10cabb(0x18b)];let _0x54cd69=await fetch(_0x12c173,{'headers':_0xcfcd43,'signal':this[_0x10cabb(0x14a)][_0x10cabb(0x197)]});if(!_0x54cd69['ok']||!_0x54cd69[_0x10cabb(0x186)]){this[_0x10cabb(0x149)]('SSE\x20failed:\x20'+_0x54cd69[_0x10cabb(0x1a0)]),await this[_0x10cabb(0x196)](_0x5aa667),_0x5aa667=Math['min'](_0x5aa667*1.5,0xea60);continue;}_0x5aa667=this[_0x10cabb(0x189)];let _0x441042=_0x54cd69[_0x10cabb(0x186)]['getReader'](),_0x32442f=new TextDecoder(),_0xe7d4e0='';while(this['running']){let {done:_0x4b80c1,value:_0x16e563}=await _0x441042[_0x10cabb(0x179)]();if(_0x4b80c1)break;_0xe7d4e0+=_0x32442f[_0x10cabb(0x14c)](_0x16e563,{'stream':!0x0});let _0x3f07ba=_0xe7d4e0[_0x10cabb(0x16c)]('\x0a');_0xe7d4e0=_0x3f07ba[_0x10cabb(0x19c)]()||'';for(let _0x23a4b0 of _0x3f07ba){if(!_0x23a4b0['startsWith'](_0x10cabb(0x155)))continue;try{let _0x5a4538=JSON[_0x10cabb(0x18c)](_0x23a4b0['slice'](0x6));if(_0x5a4538['type']==='connected'){this['log']('SSE\x20connected'),this[_0x10cabb(0x178)](_0x10cabb(0x19a));continue;}if(_0x5a4538['type']==='new_task'||_0x5a4538[_0x10cabb(0x190)]===_0x10cabb(0x156)||_0x5a4538['type']===_0x10cabb(0x158))await this[_0x10cabb(0x193)]();}catch{}}}}catch(_0x1b0878){if(_0x1b0878[_0x10cabb(0x169)]===_0x10cabb(0x161))break;this['emit']('error',_0x1b0878),this['log'](_0x10cabb(0x199)+_0x1b0878[_0x10cabb(0x181)]);}if(this['running'])this[_0x10cabb(0x178)]('disconnected'),this[_0x10cabb(0x149)](_0x10cabb(0x17a)+_0x5aa667/0x3e8+_0x10cabb(0x18e)),await this[_0x10cabb(0x196)](_0x5aa667),_0x5aa667=Math[_0x10cabb(0x164)](_0x5aa667*1.5,0xea60);}}async[a0_0x1d5946(0x193)](){const _0x71edf8=a0_0x1d5946;try{let _0x2837e7=(await this['call'](_0x71edf8(0x162),{'alias':this[_0x71edf8(0x192)],'limit':0xa}))?.[_0x71edf8(0x165)]||[];for(let _0x898219 of _0x2837e7)await this[_0x71edf8(0x187)]('ack_inbox',{'alias':this[_0x71edf8(0x192)],'message_id':_0x898219['id']}),this[_0x71edf8(0x149)]('←\x20'+_0x898219[_0x71edf8(0x198)]+':\x20'+_0x898219[_0x71edf8(0x163)]['slice'](0x0,0x3c)),this[_0x71edf8(0x178)](_0x71edf8(0x170),_0x898219),this[_0x71edf8(0x178)](_0x71edf8(0x181),_0x898219);}catch(_0x5b3130){this[_0x71edf8(0x149)](_0x71edf8(0x18f)+_0x5b3130[_0x71edf8(0x181)]);}}['sleep'](_0x4a7de5){return new Promise(_0x54759a=>setTimeout(_0x54759a,_0x4a7de5));}}var $=T;export{$ as default,T as CommHub};
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env bun
2
- const a0_0x4957c1=a0_0x36b6;(function(_0x5cfc08,_0x26d444){const _0x544013=a0_0x36b6,_0x4118bd=_0x5cfc08();while(!![]){try{const _0x356a51=-parseInt(_0x544013(0x21b))/0x1+parseInt(_0x544013(0x1d6))/0x2+parseInt(_0x544013(0x1a8))/0x3+parseInt(_0x544013(0x20c))/0x4*(-parseInt(_0x544013(0x1d8))/0x5)+parseInt(_0x544013(0x20a))/0x6+parseInt(_0x544013(0x1fb))/0x7*(parseInt(_0x544013(0x1c1))/0x8)+-parseInt(_0x544013(0x1fd))/0x9*(parseInt(_0x544013(0x1b4))/0xa);if(_0x356a51===_0x26d444)break;else _0x4118bd['push'](_0x4118bd['shift']());}catch(_0x15b9fe){_0x4118bd['push'](_0x4118bd['shift']());}}}(a0_0x34b0,0x67f4b));import{readFileSync as a0_0x28cb05,existsSync as a0_0x3d5593}from'fs';import{join as a0_0x4064a4}from'path';import{hostname as a0_0x4c3551}from'os';import{execSync as a0_0x137dd9}from'child_process';import{Server as a0_0x5255db}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x850b9d}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x42c78f,CallToolRequestSchema as a0_0x5bca13}from'@modelcontextprotocol/sdk/types.js';function p(_0x3aa21d){const _0x1747dc=a0_0x36b6;if(!a0_0x3d5593(_0x3aa21d))return;for(let _0x1f6d9c of a0_0x28cb05(_0x3aa21d,_0x1747dc(0x1c7))['split']('\x0a')){let _0x18b267=_0x1f6d9c[_0x1747dc(0x1c8)]();if(!_0x18b267||_0x18b267[_0x1747dc(0x1e9)]('#'))continue;let _0xf4145b=_0x18b267['indexOf']('=');if(_0xf4145b<0x0)continue;let _0x4a033a=_0x18b267[_0x1747dc(0x221)](0x0,_0xf4145b)[_0x1747dc(0x1c8)](),_0x2df4c3=_0x18b267[_0x1747dc(0x221)](_0xf4145b+0x1)['trim']()[_0x1747dc(0x1a4)](/^["']|["']$/g,'');if(!process.env[_0x4a033a])process.env[_0x4a033a]=_0x2df4c3;}}var C=process.env.HOME||'~',T=a0_0x4064a4(C,a0_0x4957c1(0x1d2));p(a0_0x4064a4(T,'.env'));var L=process[a0_0x4957c1(0x1d0)]()[a0_0x4957c1(0x1a4)](/\//g,'-');p(a0_0x4064a4(T,L,a0_0x4957c1(0x1e1)));function U(){const _0x287058=a0_0x4957c1;try{return a0_0x137dd9(_0x287058(0x207),{'encoding':_0x287058(0x1c7),'timeout':0x7d0})[_0x287058(0x1c8)]();}catch{return'';}}function c(){const _0x347e97=a0_0x4957c1;try{let _0x111b3a=a0_0x4064a4(C,_0x347e97(0x1bf),_0x347e97(0x1b1));if(a0_0x3d5593(_0x111b3a))return JSON['parse'](a0_0x28cb05(_0x111b3a,_0x347e97(0x1c7)));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H['hub']||a0_0x4957c1(0x1c3),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x4c3551(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x4957c1(0x206)](),X=process.env.COMMHUB_TOKEN||H[a0_0x4957c1(0x1ac)]||'';function Y(_0x431e37){const _0x318122=a0_0x4957c1;let _0x4a8a2c=new Date()[_0x318122(0x1e0)]()[_0x318122(0x221)](0x0,0x8);process[_0x318122(0x1b0)][_0x318122(0x19f)]('['+_0x4a8a2c+_0x318122(0x216)+_0x431e37+'\x0a');}function a0_0x34b0(){const _0x1aecc0=['statusText','in_progress','startsWith','\x20CWD=','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','none','starting\x20SSE\x20listener...','get','ENV:\x20URL=','connecting\x20to\x20','failed','set','status','alias',':\x20inbox_count=','CommHub\x20init\x20failed:\x20','error','from_session','broadcast','0.3.0','217DneiLb','string','27PmYrGc','high','/mcp','SSE\x20fatal:\x20','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','pop','result','object','tools/call','randomUUID','tmux\x20display-message\x20-p\x20\x27#S\x27','commhub_reply','\x20priority=','4868646cBwaSV','SIGINT','4YNgYhI','SSE\x20error:\x20','Bearer\x20','cancelled','commhub','unknown\x20tool','commhub-channel','task','Progress\x200-100','params',']\x20[commhub]\x20','commhub_send_task','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','Target\x20session\x20alias','setRequestHandler','580858MYYMQr','warning:\x20could\x20not\x20register:\x20','notification','MCP\x20stdio\x20connected','commhub_get_all_status','priority','slice','idle','blocked','content','hub','exit','write','new_message','Authorization','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','application/json,\x20text/event-stream','replace','from','decode','type','1591974IBzcAB','send_message','stringify','\x20from\x20','token','number','catch','Current\x20task\x20description','stderr','config.json','commhub_report_status','ack_inbox','69820GvgDsq','Session\x20alias:\x20','claude-code','parse','\x20ALIAS=','data:\x20','commhub_send_message','replied','Reply\x20text\x20/\x20result\x20summary','←\x20message\x20from\x20','→\x20injected\x20task\x20','.anet','read','21752WWrnTj','report_status','http://127.0.0.1:9200','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','SSE\x20connected\x20as\x20\x22','2.0','utf-8','trim','registered\x20as\x20\x22','connect','working','split','normal','stdin','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','cwd','getReader','.claude/channels/commhub','parse\x20error:\x20','application/json','Message\x20content','77532ALtbrW','Priority\x20(default:\x20normal)','2187735nBTxrP','text','\x22\x20(','completed','message','end','find','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','toTimeString','.env','\x20PROJECT_ENV=','send_reply','...\x20TMUX=','notifications/claude/channel','get_all_status'];a0_0x34b0=function(){return _0x1aecc0;};return a0_0x34b0();}function h(_0x419e0f){return new Promise(_0x524967=>setTimeout(_0x524967,_0x419e0f));}Y(a0_0x4957c1(0x1ef)+D+a0_0x4957c1(0x1b8)+Z+'\x20RESUME_ID='+w[a0_0x4957c1(0x221)](0x0,0x8)+a0_0x4957c1(0x1e4)+(f||a0_0x4957c1(0x1ec))+a0_0x4957c1(0x1ea)+process[a0_0x4957c1(0x1d0)]()+a0_0x4957c1(0x1e2)+L);var k=new Map(),K=new a0_0x5255db({'name':'commhub-channel','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>','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.',a0_0x4957c1(0x1cf),a0_0x4957c1(0x201),a0_0x4957c1(0x1b5)+Z]['join']('\x0a')});K[a0_0x4957c1(0x21a)](a0_0x42c78f,async()=>({'tools':[{'name':a0_0x4957c1(0x208),'description':a0_0x4957c1(0x1df),'inputSchema':{'type':a0_0x4957c1(0x204),'properties':{'task_id':{'type':a0_0x4957c1(0x1fc),'description':a0_0x4957c1(0x1c4)},'text':{'type':a0_0x4957c1(0x1fc),'description':a0_0x4957c1(0x1bc)},'status':{'type':a0_0x4957c1(0x1fc),'enum':[a0_0x4957c1(0x1db),a0_0x4957c1(0x1f1),'cancelled','blocked',a0_0x4957c1(0x1f7),a0_0x4957c1(0x1e8)],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':[a0_0x4957c1(0x1d9)]}},{'name':a0_0x4957c1(0x1b2),'description':a0_0x4957c1(0x1eb),'inputSchema':{'type':a0_0x4957c1(0x204),'properties':{'status':{'type':a0_0x4957c1(0x1fc),'enum':[a0_0x4957c1(0x1cb),'idle',a0_0x4957c1(0x223),'error']},'task':{'type':'string','description':a0_0x4957c1(0x1af)},'progress':{'type':a0_0x4957c1(0x1ad),'description':a0_0x4957c1(0x214)}},'required':['status']}},{'name':a0_0x4957c1(0x217),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x4957c1(0x204),'properties':{'alias':{'type':a0_0x4957c1(0x1fc),'description':a0_0x4957c1(0x219)},'task':{'type':a0_0x4957c1(0x1fc),'description':'Task\x20content'},'priority':{'type':'string','enum':[a0_0x4957c1(0x1fe),a0_0x4957c1(0x1cd),'low'],'description':a0_0x4957c1(0x1d7)}},'required':[a0_0x4957c1(0x1f4),a0_0x4957c1(0x213)]}},{'name':a0_0x4957c1(0x1ba),'description':a0_0x4957c1(0x1a2),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x4957c1(0x1fc),'description':a0_0x4957c1(0x219)},'message':{'type':a0_0x4957c1(0x1fc),'description':a0_0x4957c1(0x1d5)}},'required':[a0_0x4957c1(0x1f4),a0_0x4957c1(0x1dc)]}},{'name':a0_0x4957c1(0x21f),'description':a0_0x4957c1(0x218),'inputSchema':{'type':a0_0x4957c1(0x204),'properties':{}}}]}));async function P(_0x3ef730,_0x3b6c5e){const _0x48c4f5=a0_0x4957c1;let _0x46ae85=await fetch(D+'/mcp',{'method':'POST','headers':{'Content-Type':_0x48c4f5(0x1d4),'Accept':_0x48c4f5(0x1a3),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x48c4f5(0x1c6),'id':0x1,'method':'initialize','params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x48c4f5(0x212),'version':_0x48c4f5(0x1fa)}}})});if(!_0x46ae85['ok']){let _0x51201d=await _0x46ae85['text']();return Y(_0x48c4f5(0x1f6)+_0x46ae85[_0x48c4f5(0x1f3)]+'\x20'+_0x51201d[_0x48c4f5(0x221)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x46ae85[_0x48c4f5(0x1f3)]};}await _0x46ae85[_0x48c4f5(0x1d9)]();let _0x5f2f0d=(await(await fetch(D+_0x48c4f5(0x1ff),{'method':'POST','headers':{'Content-Type':_0x48c4f5(0x1d4),'Accept':_0x48c4f5(0x1a3),...X?{'Authorization':_0x48c4f5(0x20e)+X}:{}},'body':JSON[_0x48c4f5(0x1aa)]({'jsonrpc':'2.0','id':0x2,'method':_0x48c4f5(0x205),'params':{'name':_0x3ef730,'arguments':_0x3b6c5e}})}))[_0x48c4f5(0x1d9)]())[_0x48c4f5(0x1cc)]('\x0a')[_0x48c4f5(0x1de)](_0xb529f8=>_0xb529f8[_0x48c4f5(0x1e9)](_0x48c4f5(0x1b9)));if(_0x5f2f0d){let _0x31148d=JSON['parse'](_0x5f2f0d['slice'](0x6));return _0x31148d?.[_0x48c4f5(0x203)]?.[_0x48c4f5(0x19c)]?.[0x0]?.[_0x48c4f5(0x1d9)]?JSON[_0x48c4f5(0x1b7)](_0x31148d['result'][_0x48c4f5(0x19c)][0x0][_0x48c4f5(0x1d9)]):_0x31148d;}return{'ok':!0x1,'error':'no\x20response'};}function a0_0x36b6(_0x2666e8,_0x54aafa){_0x2666e8=_0x2666e8-0x19c;const _0x34b026=a0_0x34b0();let _0x36b6ab=_0x34b026[_0x2666e8];return _0x36b6ab;}K[a0_0x4957c1(0x21a)](a0_0x5bca13,async _0x612858=>{const _0x326213=a0_0x4957c1;let {name:_0x3cdeac,arguments:_0x227cca}=_0x612858[_0x326213(0x215)];if(_0x3cdeac===_0x326213(0x208)){let {task_id:_0xf25d4e,text:_0x2db8a5,status:_0x4660c3}=_0x227cca;if(_0x4660c3==='completed'||_0x4660c3===_0x326213(0x1f1)||_0x4660c3===_0x326213(0x20f)){let _0x16537d=_0x4660c3===_0x326213(0x1db)?_0x326213(0x1bb):_0x4660c3,_0x2842ac=_0xf25d4e?k[_0x326213(0x1ee)](_0xf25d4e)||_0x326213(0x19d):_0x326213(0x19d),_0x4a5dfd=await P(_0x326213(0x1e3),{'alias':_0x2842ac,'text':_0x2db8a5,'in_reply_to':_0xf25d4e||void 0x0,'status':_0x16537d,'from_session':Z});if(_0xf25d4e)k['delete'](_0xf25d4e);return{'content':[{'type':_0x326213(0x1d9),'text':JSON[_0x326213(0x1aa)](_0x4a5dfd)}]};}let _0xc3d2a2=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x4660c3===_0x326213(0x223)?_0x326213(0x223):_0x4660c3==='error'?_0x326213(0x1f7):'working','task':_0x2db8a5[_0x326213(0x221)](0x0,0xc8),'output':_0x2db8a5});return{'content':[{'type':_0x326213(0x1d9),'text':JSON[_0x326213(0x1aa)](_0xc3d2a2)}]};}if(_0x3cdeac==='commhub_report_status'){let {status:_0x33cbbd,task:_0x11c979,progress:_0x2b4ad1}=_0x227cca,_0x36329f=await P(_0x326213(0x1c2),{'resume_id':w,'alias':Z,'status':_0x33cbbd,'task':_0x11c979,'progress':_0x2b4ad1});return{'content':[{'type':_0x326213(0x1d9),'text':JSON['stringify'](_0x36329f)}]};}if(_0x3cdeac==='commhub_send_task'){let {alias:_0xa357dd,task:_0x2545e4,priority:_0x251be8}=_0x227cca,_0x260203=await P('send_task',{'alias':_0xa357dd,'task':_0x2545e4,'priority':_0x251be8||'normal','from_session':Z});return{'content':[{'type':_0x326213(0x1d9),'text':JSON['stringify'](_0x260203)}]};}if(_0x3cdeac==='commhub_send_message'){let {alias:_0xdb2727,message:_0x1f6de4}=_0x227cca,_0x362113=await P(_0x326213(0x1a9),{'alias':_0xdb2727,'message':_0x1f6de4,'from_session':Z});return{'content':[{'type':_0x326213(0x1d9),'text':JSON['stringify'](_0x362113)}]};}if(_0x3cdeac===_0x326213(0x21f)){let _0x2323bc=await P(_0x326213(0x1e6),{});return{'content':[{'type':'text','text':JSON[_0x326213(0x1aa)](_0x2323bc)}]};}return{'content':[{'type':_0x326213(0x1d9),'text':JSON[_0x326213(0x1aa)]({'error':_0x326213(0x211)})}]};});async function v(){const _0x5f1877=a0_0x4957c1;let _0x53679d=D+'/events/'+encodeURIComponent(Z),_0x236bf8={};if(X)_0x236bf8[_0x5f1877(0x1a1)]=_0x5f1877(0x20e)+X;Y(_0x5f1877(0x1f0)+_0x53679d);while(!0x0){try{let _0x4f494e=await fetch(_0x53679d,{'headers':_0x236bf8});if(!_0x4f494e['ok']){Y(_0x5f1877(0x20d)+_0x4f494e[_0x5f1877(0x1f3)]+'\x20'+_0x4f494e[_0x5f1877(0x1e7)]),await h(0x1388);continue;}let _0x451689=_0x4f494e['body'][_0x5f1877(0x1d1)](),_0x1824b6=new TextDecoder(),_0x3271d2='';while(!0x0){let {done:_0x453d70,value:_0x1329a3}=await _0x451689[_0x5f1877(0x1c0)]();if(_0x453d70)break;_0x3271d2+=_0x1824b6[_0x5f1877(0x1a6)](_0x1329a3,{'stream':!0x0});let _0x370482=_0x3271d2['split']('\x0a\x0a');_0x3271d2=_0x370482[_0x5f1877(0x202)]()||'';for(let _0x438c3f of _0x370482){let _0x3e0b83=_0x438c3f[_0x5f1877(0x1cc)]('\x0a')[_0x5f1877(0x1de)](_0x1a9851=>_0x1a9851[_0x5f1877(0x1e9)](_0x5f1877(0x1b9)));if(!_0x3e0b83)continue;try{let _0x5600c6=JSON[_0x5f1877(0x1b7)](_0x3e0b83[_0x5f1877(0x221)](0x6));await u(_0x5600c6);}catch(_0x48fcf3){Y(_0x5f1877(0x1d3)+_0x48fcf3);}}}Y('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x4a17ac){Y('SSE\x20connection\x20error:\x20'+_0x4a17ac);}await h(0xbb8);}}async function u(_0x33d2cb){const _0x516fdf=a0_0x4957c1;if(_0x33d2cb[_0x516fdf(0x1a7)]==='connected'){Y(_0x516fdf(0x1c5)+Z+'\x22');return;}if(_0x33d2cb[_0x516fdf(0x1a7)]===_0x516fdf(0x1a0)){if(Y(_0x516fdf(0x1bd)+_0x33d2cb['from']+':\x20'+_0x33d2cb[_0x516fdf(0x1dc)]['slice'](0x0,0x3c)),await K[_0x516fdf(0x21d)]({'method':_0x516fdf(0x1e5),'params':{'content':_0x33d2cb['message'],'meta':{'sender':_0x33d2cb['from']||'hub','sender_id':_0x516fdf(0x210),'user':_0x33d2cb[_0x516fdf(0x1a5)]||_0x516fdf(0x19d),'priority':_0x516fdf(0x1cd)}}}),_0x33d2cb['message_id'])await P(_0x516fdf(0x1b3),{'alias':Z,'message_id':_0x33d2cb['message_id']});return;}if(_0x33d2cb[_0x516fdf(0x1a7)]==='new_task'||_0x33d2cb[_0x516fdf(0x1a7)]===_0x516fdf(0x1f9)){Y('←\x20'+_0x33d2cb[_0x516fdf(0x1a7)]+_0x516fdf(0x1f5)+_0x33d2cb['inbox_count']+_0x516fdf(0x209)+(_0x33d2cb[_0x516fdf(0x220)]||_0x516fdf(0x1cd)));let _0x1cb3e7=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0x1cb3e7?.['ok']&&_0x1cb3e7['messages']?.['length']>0x0)for(let _0x346302 of _0x1cb3e7['messages']){let _0x5d3bee={'sender':_0x346302['from_session']||_0x516fdf(0x19d),'sender_id':'commhub','user':_0x346302[_0x516fdf(0x1f8)]||_0x516fdf(0x19d),'task_id':_0x346302['id'],'priority':_0x346302[_0x516fdf(0x220)]||_0x516fdf(0x1cd)};k[_0x516fdf(0x1f2)](_0x346302['id'],_0x346302[_0x516fdf(0x1f8)]||_0x516fdf(0x19d)),await K[_0x516fdf(0x21d)]({'method':_0x516fdf(0x1e5),'params':{'content':_0x346302[_0x516fdf(0x19c)],'meta':_0x5d3bee}}),Y(_0x516fdf(0x1be)+_0x346302['id'][_0x516fdf(0x221)](0x0,0x8)+_0x516fdf(0x1ab)+_0x346302[_0x516fdf(0x1f8)]+':\x20'+_0x346302[_0x516fdf(0x19c)]['slice'](0x0,0x3c)),await P('ack_inbox',{'alias':Z,'message_id':_0x346302['id']});}}}async function S(){const _0x5c3ce0=a0_0x4957c1;let _0x51b854=new a0_0x850b9d();await K[_0x5c3ce0(0x1ca)](_0x51b854),Y(_0x5c3ce0(0x21e)),Y(_0x5c3ce0(0x1ed)),v()['catch'](_0x2983ee=>Y(_0x5c3ce0(0x200)+_0x2983ee)),P(_0x5c3ce0(0x1c2),{'resume_id':w,'alias':Z,'status':_0x5c3ce0(0x222),'server':a0_0x4c3551(),'hostname':a0_0x4c3551(),'agent':_0x5c3ce0(0x1b6),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})['then'](()=>Y(_0x5c3ce0(0x1c9)+Z+_0x5c3ce0(0x1da)+w[_0x5c3ce0(0x221)](0x0,0x8)+')'))[_0x5c3ce0(0x1ae)](_0x3a969d=>Y(_0x5c3ce0(0x21c)+_0x3a969d)),setInterval(()=>{const _0x18a330=_0x5c3ce0;P(_0x18a330(0x1c2),{'resume_id':w,'alias':Z,'status':_0x18a330(0x222),'server':a0_0x4c3551(),'hostname':a0_0x4c3551(),'agent':'claude-code','project_dir':process[_0x18a330(0x1d0)](),'tmux_name':f||void 0x0})['catch'](_0x1f9088=>Y('heartbeat\x20failed:\x20'+_0x1f9088));},0x2bf20),Y('ready\x20—\x20waiting\x20for\x20events');}S()[a0_0x4957c1(0x1ae)](_0x26372f=>{Y('fatal:\x20'+_0x26372f),process['exit'](0x1);});async function N(){const _0x44db85=a0_0x4957c1;Y('shutting\x20down,\x20reporting\x20offline...'),await P('report_status',{'resume_id':w,'alias':Z,'status':_0x44db85(0x1f7),'task':'session\x20disconnected'})[_0x44db85(0x1ae)](()=>{}),process[_0x44db85(0x19e)](0x0);}process[a0_0x4957c1(0x1ce)]['on'](a0_0x4957c1(0x1dd),()=>N()),process['on']('SIGTERM',()=>N()),process['on'](a0_0x4957c1(0x20b),()=>N());
2
+ const a0_0x239b19=a0_0x1a81;(function(_0x3bce52,_0x46a7f7){const _0xb3864f=a0_0x1a81,_0x5bd95b=_0x3bce52();while(!![]){try{const _0x3fbb6d=-parseInt(_0xb3864f(0xd6))/0x1*(parseInt(_0xb3864f(0xc0))/0x2)+parseInt(_0xb3864f(0xd5))/0x3+parseInt(_0xb3864f(0x13e))/0x4*(-parseInt(_0xb3864f(0xd8))/0x5)+-parseInt(_0xb3864f(0xf0))/0x6+parseInt(_0xb3864f(0xdd))/0x7*(-parseInt(_0xb3864f(0xd1))/0x8)+-parseInt(_0xb3864f(0x105))/0x9*(-parseInt(_0xb3864f(0x13b))/0xa)+parseInt(_0xb3864f(0x13a))/0xb;if(_0x3fbb6d===_0x46a7f7)break;else _0x5bd95b['push'](_0x5bd95b['shift']());}catch(_0x422f6f){_0x5bd95b['push'](_0x5bd95b['shift']());}}}(a0_0x34b4,0xe35cb));import{readFileSync as a0_0x1a9e50,existsSync as a0_0x10d940}from'fs';import{join as a0_0x4f5619}from'path';import{hostname as a0_0x48ba90}from'os';import{execSync as a0_0x10e8dd}from'child_process';function a0_0x34b4(){const _0x490367=['connecting\x20to\x20','fatal:\x20','.env','result','trim','connect','send_message','/events/','tmux\x20display-message\x20-p\x20\x27#S\x27','completed','get_all_status','notification','error','commhub_report_status','end','commhub_reply','SSE\x20fatal:\x20','Task\x20content','tools/call','string','catch','commhub_get_all_status','commhub_send_message','decode','report_status','pop','messages','in_progress','setRequestHandler','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','→\x20injected\x20task\x20','SIGTERM','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','28637466kpaetN','1060qANdPk','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','commhub-channel','844dRAydr','set','priority','alias','normal','idle','Target\x20session\x20alias','.claude/channels/commhub','message_id','\x20ALIAS=','initialize','SSE\x20stream\x20ended,\x20reconnecting...','336406VPlDRD',':\x20inbox_count=','0.3.0','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','notifications/claude/channel','getReader','length','new_task','Session\x20alias:\x20','cwd','Reply\x20text\x20/\x20result\x20summary','application/json,\x20text/event-stream','ack_inbox','from_session','Priority\x20(default:\x20normal)','slice','56LOXOmZ','statusText','message','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','3163110KLJtlh','9aOvRCc','params','15175SgczTH','token','claude-code','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','stringify','1684837jaeLtn','SSE\x20connected\x20as\x20\x22','\x20from\x20','text','exit','find','2.0','CommHub\x20init\x20failed:\x20','body','broadcast','toTimeString','\x20CWD=','...\x20TMUX=','startsWith','connected','blocked','stderr','high','split','446640OeQZPi','stdin','from','parse','send_task','content','Bearer\x20','failed','application/json','commhub','←\x20message\x20from\x20','heartbeat\x20failed:\x20','inbox_count','session\x20disconnected','object','then','write','join','randomUUID','unknown\x20tool','status','100782hTEqGp','type','hub','SIGINT','utf-8','POST','init\x20failed:\x20','registered\x20as\x20\x22','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','data:\x20','commhub_send_task','Current\x20task\x20description','\x20PROJECT_ENV=','working','/mcp','replied','cancelled',']\x20[commhub]\x20','ENV:\x20URL=','.anet'];a0_0x34b4=function(){return _0x490367;};return a0_0x34b4();}import{Server as a0_0xc2fee7}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x599eed}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x3fabd6,CallToolRequestSchema as a0_0x5a4302}from'@modelcontextprotocol/sdk/types.js';function p(_0x3e6cab){const _0x2dfa49=a0_0x1a81;if(!a0_0x10d940(_0x3e6cab))return;for(let _0x549728 of a0_0x1a9e50(_0x3e6cab,_0x2dfa49(0x109))[_0x2dfa49(0xef)]('\x0a')){let _0x314e8f=_0x549728[_0x2dfa49(0x11d)]();if(!_0x314e8f||_0x314e8f[_0x2dfa49(0xea)]('#'))continue;let _0x1bc2f6=_0x314e8f['indexOf']('=');if(_0x1bc2f6<0x0)continue;let _0x3a3ea2=_0x314e8f[_0x2dfa49(0xd0)](0x0,_0x1bc2f6)[_0x2dfa49(0x11d)](),_0x26355d=_0x314e8f[_0x2dfa49(0xd0)](_0x1bc2f6+0x1)['trim']()['replace'](/^["']|["']$/g,'');if(!process.env[_0x3a3ea2])process.env[_0x3a3ea2]=_0x26355d;}}var C=process.env.HOME||'~',T=a0_0x4f5619(C,a0_0x239b19(0xbb));p(a0_0x4f5619(T,a0_0x239b19(0x11b)));var L=process[a0_0x239b19(0xca)]()['replace'](/\//g,'-');p(a0_0x4f5619(T,L,a0_0x239b19(0x11b)));function U(){const _0x1ce8ad=a0_0x239b19;try{return a0_0x10e8dd(_0x1ce8ad(0x121),{'encoding':_0x1ce8ad(0x109),'timeout':0x7d0})[_0x1ce8ad(0x11d)]();}catch{return'';}}function c(){const _0x3bd8e1=a0_0x239b19;try{let _0xca245a=a0_0x4f5619(C,_0x3bd8e1(0x118),'config.json');if(a0_0x10d940(_0xca245a))return JSON[_0x3bd8e1(0xf3)](a0_0x1a9e50(_0xca245a,'utf-8'));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H['hub']||'http://127.0.0.1:9200',f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x48ba90(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x239b19(0x102)](),X=process.env.COMMHUB_TOKEN||H[a0_0x239b19(0xd9)]||'';function Y(_0x2187ab){const _0x5fb7c4=a0_0x239b19;let _0x3f5abc=new Date()[_0x5fb7c4(0xe7)]()[_0x5fb7c4(0xd0)](0x0,0x8);process[_0x5fb7c4(0xed)][_0x5fb7c4(0x100)]('['+_0x3f5abc+_0x5fb7c4(0x116)+_0x2187ab+'\x0a');}function h(_0x2eb89d){return new Promise(_0x5d3f55=>setTimeout(_0x5d3f55,_0x2eb89d));}Y(a0_0x239b19(0x117)+D+a0_0x239b19(0xbd)+Z+'\x20RESUME_ID='+w[a0_0x239b19(0xd0)](0x0,0x8)+a0_0x239b19(0xe9)+(f||'none')+a0_0x239b19(0xe8)+process[a0_0x239b19(0xca)]()+a0_0x239b19(0x111)+L);var k=new Map(),K=new a0_0xc2fee7({'name':a0_0x239b19(0x13d),'version':a0_0x239b19(0xc2)},{'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_0x239b19(0x10d),'Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x239b19(0x136),a0_0x239b19(0xc9)+Z][a0_0x239b19(0x101)]('\x0a')});K['setRequestHandler'](a0_0x3fabd6,async()=>({'tools':[{'name':a0_0x239b19(0x128),'description':a0_0x239b19(0x13c),'inputSchema':{'type':'object','properties':{'task_id':{'type':a0_0x239b19(0x12c),'description':a0_0x239b19(0xd4)},'text':{'type':a0_0x239b19(0x12c),'description':a0_0x239b19(0xcb)},'status':{'type':a0_0x239b19(0x12c),'enum':['completed','failed','cancelled',a0_0x239b19(0xec),a0_0x239b19(0x125),a0_0x239b19(0x134)],'description':a0_0x239b19(0xdb)}},'required':[a0_0x239b19(0xe0)]}},{'name':a0_0x239b19(0x126),'description':a0_0x239b19(0xc4),'inputSchema':{'type':'object','properties':{'status':{'type':a0_0x239b19(0x12c),'enum':[a0_0x239b19(0x112),a0_0x239b19(0xb9),a0_0x239b19(0xec),'error']},'task':{'type':'string','description':a0_0x239b19(0x110)},'progress':{'type':'number','description':'Progress\x200-100'}},'required':[a0_0x239b19(0x104)]}},{'name':'commhub_send_task','description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x239b19(0x12c),'description':a0_0x239b19(0xba)},'task':{'type':a0_0x239b19(0x12c),'description':a0_0x239b19(0x12a)},'priority':{'type':a0_0x239b19(0x12c),'enum':[a0_0x239b19(0xee),a0_0x239b19(0x142),'low'],'description':a0_0x239b19(0xcf)}},'required':[a0_0x239b19(0x141),'task']}},{'name':a0_0x239b19(0x12f),'description':a0_0x239b19(0xc3),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x239b19(0x12c),'description':'Target\x20session\x20alias'},'message':{'type':a0_0x239b19(0x12c),'description':'Message\x20content'}},'required':[a0_0x239b19(0x141),a0_0x239b19(0xd3)]}},{'name':'commhub_get_all_status','description':a0_0x239b19(0x139),'inputSchema':{'type':a0_0x239b19(0xfe),'properties':{}}}]}));async function P(_0x325294,_0x351bed){const _0x1f6eef=a0_0x239b19;let _0x2ce689=await fetch(D+_0x1f6eef(0x113),{'method':'POST','headers':{'Content-Type':_0x1f6eef(0xf8),'Accept':_0x1f6eef(0xcc),...X?{'Authorization':_0x1f6eef(0xf6)+X}:{}},'body':JSON[_0x1f6eef(0xdc)]({'jsonrpc':_0x1f6eef(0xe3),'id':0x1,'method':_0x1f6eef(0xbe),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x1f6eef(0x13d),'version':'0.3.0'}}})});if(!_0x2ce689['ok']){let _0x46c86e=await _0x2ce689[_0x1f6eef(0xe0)]();return Y(_0x1f6eef(0xe4)+_0x2ce689[_0x1f6eef(0x104)]+'\x20'+_0x46c86e[_0x1f6eef(0xd0)](0x0,0x64)),{'ok':!0x1,'error':_0x1f6eef(0x10b)+_0x2ce689[_0x1f6eef(0x104)]};}await _0x2ce689[_0x1f6eef(0xe0)]();let _0x4eeea1=(await(await fetch(D+'/mcp',{'method':_0x1f6eef(0x10a),'headers':{'Content-Type':_0x1f6eef(0xf8),'Accept':_0x1f6eef(0xcc),...X?{'Authorization':_0x1f6eef(0xf6)+X}:{}},'body':JSON[_0x1f6eef(0xdc)]({'jsonrpc':'2.0','id':0x2,'method':_0x1f6eef(0x12b),'params':{'name':_0x325294,'arguments':_0x351bed}})}))[_0x1f6eef(0xe0)]())['split']('\x0a')[_0x1f6eef(0xe2)](_0x39dd72=>_0x39dd72[_0x1f6eef(0xea)](_0x1f6eef(0x10e)));if(_0x4eeea1){let _0xecb86f=JSON['parse'](_0x4eeea1[_0x1f6eef(0xd0)](0x6));return _0xecb86f?.['result']?.[_0x1f6eef(0xf5)]?.[0x0]?.['text']?JSON[_0x1f6eef(0xf3)](_0xecb86f[_0x1f6eef(0x11c)][_0x1f6eef(0xf5)][0x0][_0x1f6eef(0xe0)]):_0xecb86f;}return{'ok':!0x1,'error':'no\x20response'};}K[a0_0x239b19(0x135)](a0_0x5a4302,async _0x57cff7=>{const _0x584d0b=a0_0x239b19;let {name:_0x436870,arguments:_0x2ff1af}=_0x57cff7[_0x584d0b(0xd7)];if(_0x436870===_0x584d0b(0x128)){let {task_id:_0x1aaddd,text:_0x779adf,status:_0x10c7fc}=_0x2ff1af;if(_0x10c7fc==='completed'||_0x10c7fc===_0x584d0b(0xf7)||_0x10c7fc===_0x584d0b(0x115)){let _0x3803bd=_0x10c7fc===_0x584d0b(0x122)?_0x584d0b(0x114):_0x10c7fc,_0x435e1d=_0x1aaddd?k['get'](_0x1aaddd)||_0x584d0b(0x107):'hub',_0x382a76=await P('send_reply',{'alias':_0x435e1d,'text':_0x779adf,'in_reply_to':_0x1aaddd||void 0x0,'status':_0x3803bd,'from_session':Z});if(_0x1aaddd)k['delete'](_0x1aaddd);return{'content':[{'type':_0x584d0b(0xe0),'text':JSON[_0x584d0b(0xdc)](_0x382a76)}]};}let _0x2ccc10=await P(_0x584d0b(0x131),{'resume_id':w,'alias':Z,'status':_0x10c7fc===_0x584d0b(0xec)?_0x584d0b(0xec):_0x10c7fc===_0x584d0b(0x125)?_0x584d0b(0x125):_0x584d0b(0x112),'task':_0x779adf[_0x584d0b(0xd0)](0x0,0xc8),'output':_0x779adf});return{'content':[{'type':_0x584d0b(0xe0),'text':JSON[_0x584d0b(0xdc)](_0x2ccc10)}]};}if(_0x436870===_0x584d0b(0x126)){let {status:_0x4f7ae7,task:_0x265cc2,progress:_0x55b481}=_0x2ff1af,_0x31d811=await P(_0x584d0b(0x131),{'resume_id':w,'alias':Z,'status':_0x4f7ae7,'task':_0x265cc2,'progress':_0x55b481});return{'content':[{'type':'text','text':JSON[_0x584d0b(0xdc)](_0x31d811)}]};}if(_0x436870===_0x584d0b(0x10f)){let {alias:_0x55fd4d,task:_0x46707d,priority:_0x11b6ee}=_0x2ff1af,_0x44328a=await P(_0x584d0b(0xf4),{'alias':_0x55fd4d,'task':_0x46707d,'priority':_0x11b6ee||_0x584d0b(0x142),'from_session':Z});return{'content':[{'type':_0x584d0b(0xe0),'text':JSON[_0x584d0b(0xdc)](_0x44328a)}]};}if(_0x436870===_0x584d0b(0x12f)){let {alias:_0x58c5a7,message:_0x3d0f21}=_0x2ff1af,_0x2ccf6a=await P(_0x584d0b(0x11f),{'alias':_0x58c5a7,'message':_0x3d0f21,'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x584d0b(0xdc)](_0x2ccf6a)}]};}if(_0x436870===_0x584d0b(0x12e)){let _0x4f61ba=await P(_0x584d0b(0x123),{});return{'content':[{'type':_0x584d0b(0xe0),'text':JSON['stringify'](_0x4f61ba)}]};}return{'content':[{'type':_0x584d0b(0xe0),'text':JSON['stringify']({'error':_0x584d0b(0x103)})}]};});async function v(){const _0x1f049e=a0_0x239b19;let _0x29aa19=D+_0x1f049e(0x120)+encodeURIComponent(Z),_0x27ccf9={};if(X)_0x27ccf9['Authorization']=_0x1f049e(0xf6)+X;Y(_0x1f049e(0x119)+_0x29aa19);while(!0x0){try{let _0x2371de=await fetch(_0x29aa19,{'headers':_0x27ccf9});if(!_0x2371de['ok']){Y('SSE\x20error:\x20'+_0x2371de[_0x1f049e(0x104)]+'\x20'+_0x2371de[_0x1f049e(0xd2)]),await h(0x1388);continue;}let _0x40ce95=_0x2371de[_0x1f049e(0xe5)][_0x1f049e(0xc6)](),_0x582d80=new TextDecoder(),_0x1d7d04='';while(!0x0){let {done:_0x25200f,value:_0x4c5f58}=await _0x40ce95['read']();if(_0x25200f)break;_0x1d7d04+=_0x582d80[_0x1f049e(0x130)](_0x4c5f58,{'stream':!0x0});let _0x5c9f15=_0x1d7d04[_0x1f049e(0xef)]('\x0a\x0a');_0x1d7d04=_0x5c9f15[_0x1f049e(0x132)]()||'';for(let _0x100f36 of _0x5c9f15){let _0x54f162=_0x100f36['split']('\x0a')['find'](_0x16c843=>_0x16c843[_0x1f049e(0xea)](_0x1f049e(0x10e)));if(!_0x54f162)continue;try{let _0x12e259=JSON[_0x1f049e(0xf3)](_0x54f162[_0x1f049e(0xd0)](0x6));await u(_0x12e259);}catch(_0x530e8e){Y('parse\x20error:\x20'+_0x530e8e);}}}Y(_0x1f049e(0xbf));}catch(_0x101a95){Y('SSE\x20connection\x20error:\x20'+_0x101a95);}await h(0xbb8);}}async function u(_0x56fa0f){const _0x4d24ea=a0_0x239b19;if(_0x56fa0f[_0x4d24ea(0x106)]===_0x4d24ea(0xeb)){Y(_0x4d24ea(0xde)+Z+'\x22');return;}if(_0x56fa0f[_0x4d24ea(0x106)]==='new_message'){if(Y(_0x4d24ea(0xfa)+_0x56fa0f[_0x4d24ea(0xf2)]+':\x20'+_0x56fa0f[_0x4d24ea(0xd3)][_0x4d24ea(0xd0)](0x0,0x3c)),await K['notification']({'method':'notifications/claude/channel','params':{'content':_0x56fa0f['message'],'meta':{'sender':_0x56fa0f[_0x4d24ea(0xf2)]||_0x4d24ea(0x107),'sender_id':_0x4d24ea(0xf9),'user':_0x56fa0f[_0x4d24ea(0xf2)]||_0x4d24ea(0x107),'priority':'normal'}}}),_0x56fa0f[_0x4d24ea(0xbc)])await P('ack_inbox',{'alias':Z,'message_id':_0x56fa0f['message_id']});return;}if(_0x56fa0f[_0x4d24ea(0x106)]===_0x4d24ea(0xc8)||_0x56fa0f[_0x4d24ea(0x106)]===_0x4d24ea(0xe6)){Y('←\x20'+_0x56fa0f['type']+_0x4d24ea(0xc1)+_0x56fa0f[_0x4d24ea(0xfc)]+'\x20priority='+(_0x56fa0f[_0x4d24ea(0x140)]||_0x4d24ea(0x142)));let _0x1374be=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0x1374be?.['ok']&&_0x1374be['messages']?.[_0x4d24ea(0xc7)]>0x0)for(let _0x2699b9 of _0x1374be[_0x4d24ea(0x133)]){let _0x4604b1={'sender':_0x2699b9[_0x4d24ea(0xce)]||_0x4d24ea(0x107),'sender_id':_0x4d24ea(0xf9),'user':_0x2699b9[_0x4d24ea(0xce)]||_0x4d24ea(0x107),'task_id':_0x2699b9['id'],'priority':_0x2699b9[_0x4d24ea(0x140)]||'normal'};k[_0x4d24ea(0x13f)](_0x2699b9['id'],_0x2699b9['from_session']||_0x4d24ea(0x107)),await K[_0x4d24ea(0x124)]({'method':_0x4d24ea(0xc5),'params':{'content':_0x2699b9[_0x4d24ea(0xf5)],'meta':_0x4604b1}}),Y(_0x4d24ea(0x137)+_0x2699b9['id'][_0x4d24ea(0xd0)](0x0,0x8)+_0x4d24ea(0xdf)+_0x2699b9[_0x4d24ea(0xce)]+':\x20'+_0x2699b9[_0x4d24ea(0xf5)][_0x4d24ea(0xd0)](0x0,0x3c)),await P(_0x4d24ea(0xcd),{'alias':Z,'message_id':_0x2699b9['id']});}}}function a0_0x1a81(_0x417f42,_0x6a7122){_0x417f42=_0x417f42-0xb9;const _0x34b415=a0_0x34b4();let _0x1a81ed=_0x34b415[_0x417f42];return _0x1a81ed;}async function S(){const _0x49b202=a0_0x239b19;let _0x1f21e4=new a0_0x599eed();await K[_0x49b202(0x11e)](_0x1f21e4),Y('MCP\x20stdio\x20connected'),Y('starting\x20SSE\x20listener...'),v()[_0x49b202(0x12d)](_0x3cd4c4=>Y(_0x49b202(0x129)+_0x3cd4c4)),P('report_status',{'resume_id':w,'alias':Z,'status':_0x49b202(0xb9),'server':a0_0x48ba90(),'hostname':a0_0x48ba90(),'agent':_0x49b202(0xda),'project_dir':process[_0x49b202(0xca)](),'tmux_name':f||void 0x0})[_0x49b202(0xff)](()=>Y(_0x49b202(0x10c)+Z+'\x22\x20('+w[_0x49b202(0xd0)](0x0,0x8)+')'))[_0x49b202(0x12d)](_0x1918a3=>Y('warning:\x20could\x20not\x20register:\x20'+_0x1918a3)),setInterval(()=>{const _0x31ab97=_0x49b202;P(_0x31ab97(0x131),{'resume_id':w,'alias':Z,'status':_0x31ab97(0xb9),'server':a0_0x48ba90(),'hostname':a0_0x48ba90(),'agent':_0x31ab97(0xda),'project_dir':process[_0x31ab97(0xca)](),'tmux_name':f||void 0x0})[_0x31ab97(0x12d)](_0x2fea86=>Y(_0x31ab97(0xfb)+_0x2fea86));},0x2bf20),Y('ready\x20—\x20waiting\x20for\x20events');}S()[a0_0x239b19(0x12d)](_0xb825e9=>{const _0x4963a7=a0_0x239b19;Y(_0x4963a7(0x11a)+_0xb825e9),process[_0x4963a7(0xe1)](0x1);});async function N(){const _0x48ad11=a0_0x239b19;Y('shutting\x20down,\x20reporting\x20offline...'),await P(_0x48ad11(0x131),{'resume_id':w,'alias':Z,'status':_0x48ad11(0x125),'task':_0x48ad11(0xfd)})[_0x48ad11(0x12d)](()=>{}),process['exit'](0x0);}process[a0_0x239b19(0xf1)]['on'](a0_0x239b19(0x127),()=>N()),process['on'](a0_0x239b19(0x138),()=>N()),process['on'](a0_0x239b19(0x108),()=>N());
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sleep2agi/agent-network",
3
- "version": "2.0.0-preview.3",
4
- "description": "AI Agent Network Server + Client + Setup in one package. SSE real-time communication for multi-agent orchestration.",
3
+ "version": "2.0.0-preview.30",
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",
7
7
  "types": "dist/client.d.ts",
@@ -31,12 +31,13 @@
31
31
  "mcp",
32
32
  "sse",
33
33
  "claude",
34
+ "codex",
34
35
  "openai",
35
36
  "minimax",
36
37
  "orchestration",
37
- "communication",
38
- "hub",
39
- "multi-agent"
38
+ "multi-agent",
39
+ "cli",
40
+ "anet"
40
41
  ],
41
42
  "author": "sleep2agi",
42
43
  "license": "MIT",
@@ -57,4 +58,4 @@
57
58
  "node-pty": "^1.1.0",
58
59
  "typescript": "^5.0.0"
59
60
  }
60
- }
61
+ }