@sleep2agi/agent-network 2.0.0-preview.21 → 2.0.0-preview.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -10
- package/dist/bin/cli.js +1 -1
- package/dist/src/client.js +1 -1
- package/dist/src/node-server.js +1 -1
- package/package.json +1 -1
package/dist/src/client.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x13784e=a0_0x2c3e;(function(_0x17637e,_0x2173a3){const _0x4eeb9c=a0_0x2c3e,_0x41d456=_0x17637e();while(!![]){try{const _0x4e3196=parseInt(_0x4eeb9c(0x76))/0x1+-parseInt(_0x4eeb9c(0x6d))/0x2*(parseInt(_0x4eeb9c(0x6e))/0x3)+-parseInt(_0x4eeb9c(0x7a))/0x4*(-parseInt(_0x4eeb9c(0xa4))/0x5)+parseInt(_0x4eeb9c(0xb7))/0x6*(parseInt(_0x4eeb9c(0x98))/0x7)+-parseInt(_0x4eeb9c(0xaf))/0x8*(parseInt(_0x4eeb9c(0x69))/0x9)+-parseInt(_0x4eeb9c(0xbb))/0xa*(parseInt(_0x4eeb9c(0x73))/0xb)+-parseInt(_0x4eeb9c(0x75))/0xc*(-parseInt(_0x4eeb9c(0x92))/0xd);if(_0x4e3196===_0x2173a3)break;else _0x41d456['push'](_0x41d456['shift']());}catch(_0xb8e417){_0x41d456['push'](_0x41d456['shift']());}}}(a0_0x9842,0x4781c));import{EventEmitter as a0_0x5425a8}from'events';import{hostname as a0_0x3f2829}from'os';class T extends a0_0x5425a8{['url'];['alias'];[a0_0x13784e(0xb6)];[a0_0x13784e(0xa0)];['resumeId'];[a0_0x13784e(0x95)];['reconnectDelay'];[a0_0x13784e(0x72)];[a0_0x13784e(0xb5)];[a0_0x13784e(0xa9)]=!0x1;constructor(_0xea8482){const _0x4f51ed=a0_0x13784e;super();if(this[_0x4f51ed(0x90)]=_0xea8482[_0x4f51ed(0x90)][_0x4f51ed(0x9c)](/\/$/,''),this[_0x4f51ed(0x8e)]=_0xea8482[_0x4f51ed(0x8e)],this['token']=_0xea8482[_0x4f51ed(0xb6)],this[_0x4f51ed(0xa0)]=_0xea8482[_0x4f51ed(0xa0)]||_0x4f51ed(0xb8),this['resumeId']='sdk-'+_0xea8482[_0x4f51ed(0x8e)]+'-'+Date[_0x4f51ed(0x8b)]()['toString'](0x24),this[_0x4f51ed(0x95)]=_0xea8482[_0x4f51ed(0x95)]??0x2bf20,this['reconnectDelay']=_0xea8482[_0x4f51ed(0x8f)]??0xbb8,_0xea8482['autoConnect']!==!0x1)this[_0x4f51ed(0x79)]();}[a0_0x13784e(0x9b)](_0x1b4729){const _0x28fe3a=a0_0x13784e;console[_0x28fe3a(0x9b)]('['+new Date()[_0x28fe3a(0xa1)]()[_0x28fe3a(0x9e)](0x0,0x8)+_0x28fe3a(0xac)+this['alias']+']\x20'+_0x1b4729);}async[a0_0x13784e(0xbe)](_0x3a106b,_0x8e6e65){const _0x3839f4=a0_0x13784e;let _0x402bb5={'Content-Type':'application/json','Accept':_0x3839f4(0x99)};if(this[_0x3839f4(0xb6)])_0x402bb5[_0x3839f4(0xa2)]='Bearer\x20'+this[_0x3839f4(0xb6)];let _0x386938=await(await fetch(this[_0x3839f4(0x90)]+_0x3839f4(0x8a),{'method':_0x3839f4(0x91),'headers':_0x402bb5,'body':JSON['stringify']({'jsonrpc':_0x3839f4(0xbf),'id':Date[_0x3839f4(0x8b)](),'method':_0x3839f4(0x8d),'params':{'name':_0x3a106b,'arguments':_0x8e6e65}})}))[_0x3839f4(0x7b)](),_0x3acf75=_0x386938[_0x3839f4(0x7e)](/data: (.+)/),_0x9f164b=_0x3acf75?JSON[_0x3839f4(0x9f)](_0x3acf75[0x1]):JSON[_0x3839f4(0x9f)](_0x386938),_0xcad792=_0x9f164b?.[_0x3839f4(0x6c)]?.[_0x3839f4(0xb4)]?.[0x0]?.[_0x3839f4(0x7b)];return _0xcad792?JSON[_0x3839f4(0x9f)](_0xcad792):_0x9f164b;}async[a0_0x13784e(0x79)](){const _0x5a0241=a0_0x13784e;if(this[_0x5a0241(0xa9)])return;this[_0x5a0241(0xa9)]=!0x0,await this[_0x5a0241(0x8c)](_0x5a0241(0x86)),this[_0x5a0241(0x9b)]('registered'),this[_0x5a0241(0x72)]=setInterval(()=>{const _0x43af66=_0x5a0241;this['status'](_0x43af66(0x86))[_0x43af66(0x7d)](_0x22a009=>this[_0x43af66(0x9b)](_0x43af66(0xb0)+_0x22a009['message']));},this['heartbeatInterval']),this[_0x5a0241(0x82)]();}async['disconnect'](){const _0x7ea09a=a0_0x13784e;if(this[_0x7ea09a(0xa9)]=!0x1,this['sseAbort']?.[_0x7ea09a(0x96)](),this[_0x7ea09a(0x72)])clearInterval(this['heartbeatTimer']);await this[_0x7ea09a(0x8c)](_0x7ea09a(0x6f))['catch'](()=>{}),this[_0x7ea09a(0x9b)](_0x7ea09a(0xba));}async[a0_0x13784e(0x6b)](_0x42e31e,_0x35ac5c,_0x1adb38='normal'){const _0x5b3e04=a0_0x13784e;return this['call'](_0x5b3e04(0x6a),{'alias':_0x42e31e,'task':_0x35ac5c,'priority':_0x1adb38,'from_session':this[_0x5b3e04(0x8e)]});}async['message'](_0x4e6a10,_0x1708f7){const _0x5eacff=a0_0x13784e;return this[_0x5eacff(0xbe)]('send_message',{'alias':_0x4e6a10,'message':_0x1708f7,'from_session':this['alias']});}async[a0_0x13784e(0x77)](_0x4dd0a1,_0x2f6a22,_0x2ca4ed=a0_0x13784e(0x71)){return this['call']('reply',{'task_id':_0x4dd0a1,'text':_0x2f6a22,'status':_0x2ca4ed});}async[a0_0x13784e(0x8c)](_0x1de57a,_0x464949){const _0x2f6d19=a0_0x13784e;return this[_0x2f6d19(0xbe)](_0x2f6d19(0x7f),{'resume_id':this['resumeId'],'alias':this[_0x2f6d19(0x8e)],'status':_0x1de57a,'server':a0_0x3f2829(),'hostname':a0_0x3f2829(),'agent':this[_0x2f6d19(0xa0)],'project_dir':process['cwd'](),..._0x464949});}async['getAllStatus'](){const _0x15dccd=a0_0x13784e;return this['call'](_0x15dccd(0xb3),{});}async['broadcast'](_0x232b8e,_0x5032c2){const _0x373105=a0_0x13784e;return this[_0x373105(0xbe)](_0x373105(0x89),{'message':_0x232b8e,'filter_server':_0x5032c2?.[_0x373105(0xaa)],'filter_status':_0x5032c2?.[_0x373105(0x8c)]});}async[a0_0x13784e(0x82)](){const _0x5011e1=a0_0x13784e;let _0x368291=encodeURIComponent(this[_0x5011e1(0x8e)]),_0xd27d45=this['url']+_0x5011e1(0xab)+_0x368291,_0xed1624=this[_0x5011e1(0x8f)];while(this[_0x5011e1(0xa9)]){try{this[_0x5011e1(0xb5)]=new AbortController();let _0x1a2a6a={'Accept':_0x5011e1(0x87)};if(this['token'])_0x1a2a6a['Authorization']=_0x5011e1(0x94)+this['token'];let _0x60b117=await fetch(_0xd27d45,{'headers':_0x1a2a6a,'signal':this[_0x5011e1(0xb5)]['signal']});if(!_0x60b117['ok']||!_0x60b117[_0x5011e1(0xa5)]){this[_0x5011e1(0x9b)](_0x5011e1(0xa7)+_0x60b117['status']),await this['sleep'](_0xed1624),_0xed1624=Math[_0x5011e1(0x83)](_0xed1624*1.5,0xea60);continue;}_0xed1624=this[_0x5011e1(0x8f)];let _0x3ea486=_0x60b117[_0x5011e1(0xa5)][_0x5011e1(0xbc)](),_0x54113f=new TextDecoder(),_0x62a2f7='';while(this[_0x5011e1(0xa9)]){let {done:_0x169eea,value:_0x40e7af}=await _0x3ea486[_0x5011e1(0xad)]();if(_0x169eea)break;_0x62a2f7+=_0x54113f['decode'](_0x40e7af,{'stream':!0x0});let _0x3e2526=_0x62a2f7[_0x5011e1(0xc0)]('\x0a');_0x62a2f7=_0x3e2526[_0x5011e1(0x9d)]()||'';for(let _0x59fee3 of _0x3e2526){if(!_0x59fee3[_0x5011e1(0x93)](_0x5011e1(0xa6)))continue;try{let _0x31ec54=JSON[_0x5011e1(0x9f)](_0x59fee3[_0x5011e1(0x9e)](0x6));if(_0x31ec54[_0x5011e1(0x7c)]===_0x5011e1(0xbd)){this[_0x5011e1(0x9b)](_0x5011e1(0x70)),this['emit'](_0x5011e1(0xbd));continue;}if(_0x31ec54[_0x5011e1(0x7c)]==='new_task'||_0x31ec54[_0x5011e1(0x7c)]===_0x5011e1(0xa3)||_0x31ec54[_0x5011e1(0x7c)]===_0x5011e1(0x89))await this[_0x5011e1(0xc1)]();}catch{}}}}catch(_0x25f846){if(_0x25f846[_0x5011e1(0xb1)]==='AbortError')break;this['emit'](_0x5011e1(0x88),_0x25f846),this[_0x5011e1(0x9b)](_0x5011e1(0xb9)+_0x25f846[_0x5011e1(0xa8)]);}if(this[_0x5011e1(0xa9)])this[_0x5011e1(0x78)](_0x5011e1(0xba)),this[_0x5011e1(0x9b)](_0x5011e1(0x85)+_0xed1624/0x3e8+_0x5011e1(0xb2)),await this[_0x5011e1(0x80)](_0xed1624),_0xed1624=Math[_0x5011e1(0x83)](_0xed1624*1.5,0xea60);}}async['processInbox'](){const _0x1da170=a0_0x13784e;try{let _0x5d6b3f=(await this[_0x1da170(0xbe)](_0x1da170(0x74),{'alias':this['alias'],'limit':0xa}))?.[_0x1da170(0x84)]||[];for(let _0x1e48d2 of _0x5d6b3f)await this['call'](_0x1da170(0xae),{'alias':this['alias'],'message_id':_0x1e48d2['id']}),this['log']('←\x20'+_0x1e48d2[_0x1da170(0x97)]+':\x20'+_0x1e48d2['content'][_0x1da170(0x9e)](0x0,0x3c)),this[_0x1da170(0x78)](_0x1da170(0x9a),_0x1e48d2),this[_0x1da170(0x78)](_0x1da170(0xa8),_0x1e48d2);}catch(_0x45bcb1){this[_0x1da170(0x9b)](_0x1da170(0x81)+_0x45bcb1[_0x1da170(0xa8)]);}}[a0_0x13784e(0x80)](_0x1d5454){return new Promise(_0x3898a8=>setTimeout(_0x3898a8,_0x1d5454));}}function a0_0x2c3e(_0x2047c9,_0x13e659){_0x2047c9=_0x2047c9-0x69;const _0x9842dc=a0_0x9842();let _0x2c3e53=_0x9842dc[_0x2047c9];return _0x2c3e53;}var $=T;export{$ as default,T as CommHub};function a0_0x9842(){const _0xaaa601=['5506540WDfdGS','startsWith','Bearer\x20','heartbeatInterval','abort','from_session','7AsLnQu','application/json,\x20text/event-stream','task','log','replace','pop','slice','parse','agent','toTimeString','Authorization','new_message','384840hIXesK','body','data:\x20','SSE\x20failed:\x20','message','running','server','/events/',']\x20[commhub:','read','ack_inbox','11632AlRMxi','heartbeat\x20failed:\x20','name','s...','get_all_status','content','sseAbort','token','38346ooeyFP','sdk','SSE\x20error:\x20','disconnected','1385260NWsfvA','getReader','connected','call','2.0','split','processInbox','1422pOAwSR','send_task','send','result','456892ZsKnFJ','3UuHSFE','offline','SSE\x20connected','completed','heartbeatTimer','22EjxJEd','get_inbox','24hrhSJn','97603iWofeX','reply','emit','connect','4VlqAiy','text','type','catch','match','report_status','sleep','inbox\x20error:\x20','connectSSE','min','messages','SSE\x20reconnecting\x20in\x20','idle','text/event-stream','error','broadcast','/mcp','now','status','tools/call','alias','reconnectDelay','url','POST'];a0_0x9842=function(){return _0xaaa601;};return a0_0x9842();}
|
package/dist/src/node-server.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
|
-
const a0_0x166c63=a0_0x4e8d;(function(_0x47b128,_0x1648f7){const _0x57601f=a0_0x4e8d,_0x5148e6=_0x47b128();while(!![]){try{const _0x471eaf=-parseInt(_0x57601f(0x114))/0x1+parseInt(_0x57601f(0x163))/0x2+parseInt(_0x57601f(0x16d))/0x3*(parseInt(_0x57601f(0x17f))/0x4)+parseInt(_0x57601f(0x111))/0x5+-parseInt(_0x57601f(0x143))/0x6+parseInt(_0x57601f(0x109))/0x7*(parseInt(_0x57601f(0x165))/0x8)+parseInt(_0x57601f(0x148))/0x9*(-parseInt(_0x57601f(0x10f))/0xa);if(_0x471eaf===_0x1648f7)break;else _0x5148e6['push'](_0x5148e6['shift']());}catch(_0x30fd46){_0x5148e6['push'](_0x5148e6['shift']());}}}(a0_0x4c5f,0x83789));import{readFileSync as a0_0x16d322,existsSync as a0_0x3e4c2f}from'fs';import{join as a0_0x561902}from'path';import{hostname as a0_0xff062f}from'os';import{execSync as a0_0x22d6f2}from'child_process';import{Server as a0_0x1fea57}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x51a623}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x46a81c,CallToolRequestSchema as a0_0x5e2cc1}from'@modelcontextprotocol/sdk/types.js';function p(_0x3add60){const _0x1843ea=a0_0x4e8d;if(!a0_0x3e4c2f(_0x3add60))return;for(let _0x1aa49f of a0_0x16d322(_0x3add60,_0x1843ea(0x133))[_0x1843ea(0x142)]('\x0a')){let _0x413c4d=_0x1aa49f[_0x1843ea(0x129)]();if(!_0x413c4d||_0x413c4d[_0x1843ea(0x18b)]('#'))continue;let _0x148d4d=_0x413c4d[_0x1843ea(0x13f)]('=');if(_0x148d4d<0x0)continue;let _0x133762=_0x413c4d[_0x1843ea(0x18e)](0x0,_0x148d4d)[_0x1843ea(0x129)](),_0x32a5d0=_0x413c4d['slice'](_0x148d4d+0x1)[_0x1843ea(0x129)]()[_0x1843ea(0x177)](/^["']|["']$/g,'');if(!process.env[_0x133762])process.env[_0x133762]=_0x32a5d0;}}var C=process.env.HOME||'~',T=a0_0x561902(C,a0_0x166c63(0x131));p(a0_0x561902(T,'.env'));var L=process['cwd']()['replace'](/\//g,'-');p(a0_0x561902(T,L,a0_0x166c63(0x156)));function U(){const _0x8213b2=a0_0x166c63;try{return a0_0x22d6f2(_0x8213b2(0x176),{'encoding':_0x8213b2(0x133),'timeout':0x7d0})['trim']();}catch{return'';}}function c(){const _0x57eefb=a0_0x166c63;try{let _0x19f0ce=a0_0x561902(C,_0x57eefb(0x11a),_0x57eefb(0x121));if(a0_0x3e4c2f(_0x19f0ce))return JSON[_0x57eefb(0x107)](a0_0x16d322(_0x19f0ce,_0x57eefb(0x133)));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H['hub']||a0_0x166c63(0x15d),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0xff062f(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x166c63(0x184)](),X=process.env.COMMHUB_TOKEN||H[a0_0x166c63(0x12b)]||'';function Y(_0x53f1ce){const _0x9b1301=a0_0x166c63;let _0x1bbd05=new Date()[_0x9b1301(0x164)]()[_0x9b1301(0x18e)](0x0,0x8);process[_0x9b1301(0x17e)][_0x9b1301(0x122)]('['+_0x1bbd05+']\x20[commhub]\x20'+_0x53f1ce+'\x0a');}function h(_0x4bcd41){return new Promise(_0x3c26dd=>setTimeout(_0x3c26dd,_0x4bcd41));}Y(a0_0x166c63(0x149)+D+a0_0x166c63(0x12d)+Z+'\x20RESUME_ID='+w[a0_0x166c63(0x18e)](0x0,0x8)+'...\x20TMUX='+(f||a0_0x166c63(0x171))+a0_0x166c63(0x108)+process[a0_0x166c63(0x154)]()+a0_0x166c63(0x172)+L);var k=new Map(),K=new a0_0x1fea57({'name':a0_0x166c63(0x174),'version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x166c63(0x147),a0_0x166c63(0x110),a0_0x166c63(0x139),a0_0x166c63(0x125),a0_0x166c63(0x157)+Z][a0_0x166c63(0x160)]('\x0a')});K['setRequestHandler'](a0_0x46a81c,async()=>({'tools':[{'name':a0_0x166c63(0x106),'description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':a0_0x166c63(0x181),'properties':{'task_id':{'type':a0_0x166c63(0x16c),'description':a0_0x166c63(0x175)},'text':{'type':'string','description':a0_0x166c63(0x16f)},'status':{'type':a0_0x166c63(0x16c),'enum':['completed',a0_0x166c63(0x128),a0_0x166c63(0x161),a0_0x166c63(0x14d),a0_0x166c63(0x126),'in_progress'],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':[a0_0x166c63(0x14b)]}},{'name':a0_0x166c63(0x12f),'description':a0_0x166c63(0x189),'inputSchema':{'type':a0_0x166c63(0x181),'properties':{'status':{'type':a0_0x166c63(0x16c),'enum':[a0_0x166c63(0x14a),a0_0x166c63(0x118),a0_0x166c63(0x14d),a0_0x166c63(0x126)]},'task':{'type':a0_0x166c63(0x16c),'description':a0_0x166c63(0x11d)},'progress':{'type':a0_0x166c63(0x14e),'description':'Progress\x200-100'}},'required':[a0_0x166c63(0x145)]}},{'name':a0_0x166c63(0x135),'description':a0_0x166c63(0x150),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x166c63(0x16c),'description':a0_0x166c63(0x123)},'task':{'type':a0_0x166c63(0x16c),'description':'Task\x20content'},'priority':{'type':a0_0x166c63(0x16c),'enum':['high',a0_0x166c63(0x17a),a0_0x166c63(0x117)],'description':'Priority\x20(default:\x20normal)'}},'required':[a0_0x166c63(0x17c),a0_0x166c63(0x162)]}},{'name':'commhub_send_message','description':a0_0x166c63(0x170),'inputSchema':{'type':a0_0x166c63(0x181),'properties':{'alias':{'type':a0_0x166c63(0x16c),'description':'Target\x20session\x20alias'},'message':{'type':a0_0x166c63(0x16c),'description':a0_0x166c63(0x10c)}},'required':[a0_0x166c63(0x17c),a0_0x166c63(0x15a)]}},{'name':a0_0x166c63(0x188),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':a0_0x166c63(0x181),'properties':{}}}]}));async function P(_0xb63a4e,_0x3a72bd){const _0x19b08b=a0_0x166c63;let _0xc47b6a=await fetch(D+_0x19b08b(0x16a),{'method':_0x19b08b(0x169),'headers':{'Content-Type':_0x19b08b(0x183),'Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x19b08b(0x15e)+X}:{}},'body':JSON[_0x19b08b(0x17b)]({'jsonrpc':_0x19b08b(0x18a),'id':0x1,'method':_0x19b08b(0x11e),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x19b08b(0x174),'version':'0.3.0'}}})});if(!_0xc47b6a['ok']){let _0x4b8166=await _0xc47b6a[_0x19b08b(0x14b)]();return Y(_0x19b08b(0x10e)+_0xc47b6a[_0x19b08b(0x145)]+'\x20'+_0x4b8166['slice'](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0xc47b6a[_0x19b08b(0x145)]};}await _0xc47b6a[_0x19b08b(0x14b)]();let _0x4a877e=(await(await fetch(D+'/mcp',{'method':_0x19b08b(0x169),'headers':{'Content-Type':_0x19b08b(0x183),'Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x19b08b(0x15e)+X}:{}},'body':JSON[_0x19b08b(0x17b)]({'jsonrpc':_0x19b08b(0x18a),'id':0x2,'method':_0x19b08b(0x11c),'params':{'name':_0xb63a4e,'arguments':_0x3a72bd}})}))[_0x19b08b(0x14b)]())['split']('\x0a')[_0x19b08b(0x17d)](_0x5395fe=>_0x5395fe[_0x19b08b(0x18b)](_0x19b08b(0x15c)));if(_0x4a877e){let _0x336d51=JSON[_0x19b08b(0x107)](_0x4a877e[_0x19b08b(0x18e)](0x6));return _0x336d51?.[_0x19b08b(0x144)]?.[_0x19b08b(0x146)]?.[0x0]?.[_0x19b08b(0x14b)]?JSON[_0x19b08b(0x107)](_0x336d51[_0x19b08b(0x144)][_0x19b08b(0x146)][0x0][_0x19b08b(0x14b)]):_0x336d51;}return{'ok':!0x1,'error':_0x19b08b(0x12c)};}K[a0_0x166c63(0x187)](a0_0x5e2cc1,async _0x235f12=>{const _0x4b0cc0=a0_0x166c63;let {name:_0x5cd8fe,arguments:_0x38470d}=_0x235f12[_0x4b0cc0(0x10b)];if(_0x5cd8fe===_0x4b0cc0(0x106)){let {task_id:_0x159e00,text:_0x121102,status:_0x4e750f}=_0x38470d;if(_0x4e750f===_0x4b0cc0(0x15b)||_0x4e750f==='failed'||_0x4e750f===_0x4b0cc0(0x161)){let _0x16de5e=_0x4e750f===_0x4b0cc0(0x15b)?_0x4b0cc0(0x12a):_0x4e750f,_0x173c52=_0x159e00?k[_0x4b0cc0(0x173)](_0x159e00)||_0x4b0cc0(0x124):_0x4b0cc0(0x124),_0x2c8688=await P(_0x4b0cc0(0x167),{'alias':_0x173c52,'text':_0x121102,'in_reply_to':_0x159e00||void 0x0,'status':_0x16de5e,'from_session':Z});if(_0x159e00)k[_0x4b0cc0(0x190)](_0x159e00);return{'content':[{'type':_0x4b0cc0(0x14b),'text':JSON[_0x4b0cc0(0x17b)](_0x2c8688)}]};}let _0x557578=await P(_0x4b0cc0(0x112),{'resume_id':w,'alias':Z,'status':_0x4e750f===_0x4b0cc0(0x14d)?'blocked':_0x4e750f===_0x4b0cc0(0x126)?_0x4b0cc0(0x126):_0x4b0cc0(0x14a),'task':_0x121102[_0x4b0cc0(0x18e)](0x0,0xc8),'output':_0x121102});return{'content':[{'type':_0x4b0cc0(0x14b),'text':JSON[_0x4b0cc0(0x17b)](_0x557578)}]};}if(_0x5cd8fe==='commhub_report_status'){let {status:_0x1a2ffd,task:_0x289142,progress:_0xe4ed75}=_0x38470d,_0x4a17e2=await P(_0x4b0cc0(0x112),{'resume_id':w,'alias':Z,'status':_0x1a2ffd,'task':_0x289142,'progress':_0xe4ed75});return{'content':[{'type':'text','text':JSON[_0x4b0cc0(0x17b)](_0x4a17e2)}]};}if(_0x5cd8fe===_0x4b0cc0(0x135)){let {alias:_0x3652c0,task:_0x293eb7,priority:_0x5aff1a}=_0x38470d,_0x3c85e1=await P(_0x4b0cc0(0x138),{'alias':_0x3652c0,'task':_0x293eb7,'priority':_0x5aff1a||'normal','from_session':Z});return{'content':[{'type':_0x4b0cc0(0x14b),'text':JSON[_0x4b0cc0(0x17b)](_0x3c85e1)}]};}if(_0x5cd8fe===_0x4b0cc0(0x16b)){let {alias:_0x106551,message:_0x14df40}=_0x38470d,_0x37fe72=await P(_0x4b0cc0(0x151),{'alias':_0x106551,'message':_0x14df40,'from_session':Z});return{'content':[{'type':_0x4b0cc0(0x14b),'text':JSON[_0x4b0cc0(0x17b)](_0x37fe72)}]};}if(_0x5cd8fe===_0x4b0cc0(0x188)){let _0x105979=await P('get_all_status',{});return{'content':[{'type':'text','text':JSON[_0x4b0cc0(0x17b)](_0x105979)}]};}return{'content':[{'type':'text','text':JSON[_0x4b0cc0(0x17b)]({'error':_0x4b0cc0(0x18f)})}]};});async function v(){const _0x220cbe=a0_0x166c63;let _0x18ecd6=D+'/events/'+encodeURIComponent(Z),_0x41532e={};if(X)_0x41532e[_0x220cbe(0x130)]=_0x220cbe(0x15e)+X;Y('connecting\x20to\x20'+_0x18ecd6);while(!0x0){try{let _0x85d26=await fetch(_0x18ecd6,{'headers':_0x41532e});if(!_0x85d26['ok']){Y('SSE\x20error:\x20'+_0x85d26[_0x220cbe(0x145)]+'\x20'+_0x85d26[_0x220cbe(0x140)]),await h(0x1388);continue;}let _0x116ad6=_0x85d26[_0x220cbe(0x153)][_0x220cbe(0x141)](),_0x5175ad=new TextDecoder(),_0xf647c7='';while(!0x0){let {done:_0x5e9445,value:_0x1fe1a8}=await _0x116ad6['read']();if(_0x5e9445)break;_0xf647c7+=_0x5175ad[_0x220cbe(0x136)](_0x1fe1a8,{'stream':!0x0});let _0x399cb6=_0xf647c7[_0x220cbe(0x142)]('\x0a\x0a');_0xf647c7=_0x399cb6[_0x220cbe(0x178)]()||'';for(let _0x552dcf of _0x399cb6){let _0x265dc7=_0x552dcf[_0x220cbe(0x142)]('\x0a')[_0x220cbe(0x17d)](_0x3af799=>_0x3af799[_0x220cbe(0x18b)]('data:\x20'));if(!_0x265dc7)continue;try{let _0x3463c5=JSON[_0x220cbe(0x107)](_0x265dc7[_0x220cbe(0x18e)](0x6));await u(_0x3463c5);}catch(_0x1ceb91){Y(_0x220cbe(0x159)+_0x1ceb91);}}}Y(_0x220cbe(0x186));}catch(_0x5932cc){Y('SSE\x20connection\x20error:\x20'+_0x5932cc);}await h(0xbb8);}}async function u(_0x27b567){const _0x1c1cae=a0_0x166c63;if(_0x27b567[_0x1c1cae(0x12e)]===_0x1c1cae(0x13b)){Y(_0x1c1cae(0x13c)+Z+'\x22');return;}if(_0x27b567[_0x1c1cae(0x12e)]===_0x1c1cae(0x132)){if(Y(_0x1c1cae(0x10a)+_0x27b567[_0x1c1cae(0x158)]+':\x20'+_0x27b567['message'][_0x1c1cae(0x18e)](0x0,0x3c)),await K[_0x1c1cae(0x13a)]({'method':_0x1c1cae(0x185),'params':{'content':_0x27b567[_0x1c1cae(0x15a)],'meta':{'sender':_0x27b567[_0x1c1cae(0x158)]||_0x1c1cae(0x124),'sender_id':'commhub','user':_0x27b567[_0x1c1cae(0x158)]||_0x1c1cae(0x124),'priority':'normal'}}}),_0x27b567[_0x1c1cae(0x18d)])await P(_0x1c1cae(0x155),{'alias':Z,'message_id':_0x27b567['message_id']});return;}if(_0x27b567['type']==='new_task'||_0x27b567[_0x1c1cae(0x12e)]==='broadcast'){Y('←\x20'+_0x27b567[_0x1c1cae(0x12e)]+':\x20inbox_count='+_0x27b567[_0x1c1cae(0x10d)]+_0x1c1cae(0x13e)+(_0x27b567[_0x1c1cae(0x179)]||'normal'));let _0xe63214=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0xe63214?.['ok']&&_0xe63214[_0x1c1cae(0x18c)]?.[_0x1c1cae(0x116)]>0x0)for(let _0x4449e6 of _0xe63214[_0x1c1cae(0x18c)]){let _0x1e7395={'sender':_0x4449e6['from_session']||_0x1c1cae(0x124),'sender_id':_0x1c1cae(0x168),'user':_0x4449e6['from_session']||_0x1c1cae(0x124),'task_id':_0x4449e6['id'],'priority':_0x4449e6[_0x1c1cae(0x179)]||'normal'};k[_0x1c1cae(0x11f)](_0x4449e6['id'],_0x4449e6['from_session']||'hub'),await K[_0x1c1cae(0x13a)]({'method':'notifications/claude/channel','params':{'content':_0x4449e6['content'],'meta':_0x1e7395}}),Y(_0x1c1cae(0x152)+_0x4449e6['id'][_0x1c1cae(0x18e)](0x0,0x8)+'\x20from\x20'+_0x4449e6[_0x1c1cae(0x113)]+':\x20'+_0x4449e6[_0x1c1cae(0x146)]['slice'](0x0,0x3c)),await P(_0x1c1cae(0x155),{'alias':Z,'message_id':_0x4449e6['id']});}}}async function S(){const _0x370854=a0_0x166c63;let _0x7b224d=new a0_0x51a623();await K[_0x370854(0x119)](_0x7b224d),Y(_0x370854(0x137)),Y(_0x370854(0x11b)),v()[_0x370854(0x14c)](_0x178547=>Y(_0x370854(0x127)+_0x178547)),P(_0x370854(0x112),{'resume_id':w,'alias':Z,'status':_0x370854(0x118),'server':a0_0xff062f(),'hostname':a0_0xff062f(),'agent':_0x370854(0x14f),'project_dir':process[_0x370854(0x154)](),'tmux_name':f||void 0x0})[_0x370854(0x120)](()=>Y('registered\x20as\x20\x22'+Z+_0x370854(0x182)+w[_0x370854(0x18e)](0x0,0x8)+')'))[_0x370854(0x14c)](_0x53db2a=>Y(_0x370854(0x180)+_0x53db2a)),setInterval(()=>{const _0xa4d7f2=_0x370854;P(_0xa4d7f2(0x112),{'resume_id':w,'alias':Z,'status':_0xa4d7f2(0x118),'server':a0_0xff062f(),'hostname':a0_0xff062f(),'agent':_0xa4d7f2(0x14f),'project_dir':process[_0xa4d7f2(0x154)](),'tmux_name':f||void 0x0})[_0xa4d7f2(0x14c)](_0x2fe446=>Y(_0xa4d7f2(0x115)+_0x2fe446));},0x2bf20),Y('ready\x20—\x20waiting\x20for\x20events');}S()[a0_0x166c63(0x14c)](_0x3fba67=>{Y('fatal:\x20'+_0x3fba67),process['exit'](0x1);});function a0_0x4e8d(_0x2b4ab3,_0x102c1a){_0x2b4ab3=_0x2b4ab3-0x106;const _0x4c5f8e=a0_0x4c5f();let _0x4e8d5c=_0x4c5f8e[_0x2b4ab3];return _0x4e8d5c;}async function N(){const _0xacbbe9=a0_0x166c63;Y(_0xacbbe9(0x13d)),await P(_0xacbbe9(0x112),{'resume_id':w,'alias':Z,'status':_0xacbbe9(0x126),'task':_0xacbbe9(0x134)})[_0xacbbe9(0x14c)](()=>{}),process['exit'](0x0);}process[a0_0x166c63(0x16e)]['on'](a0_0x166c63(0x166),()=>N()),process['on']('SIGTERM',()=>N()),process['on'](a0_0x166c63(0x15f),()=>N());function a0_0x4c5f(){const _0x2dff90=['config.json','write','Target\x20session\x20alias','hub','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','error','SSE\x20fatal:\x20','failed','trim','replied','token','no\x20response','\x20ALIAS=','type','commhub_report_status','Authorization','.claude/channels/commhub','new_message','utf-8','session\x20disconnected','commhub_send_task','decode','MCP\x20stdio\x20connected','send_task','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','notification','connected','SSE\x20connected\x20as\x20\x22','shutting\x20down,\x20reporting\x20offline...','\x20priority=','indexOf','statusText','getReader','split','3965916FVSXCQ','result','status','content','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','33597FNpJtj','ENV:\x20URL=','working','text','catch','blocked','number','claude-code','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','send_message','→\x20injected\x20task\x20','body','cwd','ack_inbox','.env','Session\x20alias:\x20','from','parse\x20error:\x20','message','completed','data:\x20','http://127.0.0.1:9200','Bearer\x20','SIGINT','join','cancelled','task','1684618efNfyG','toTimeString','8dRkupf','end','send_reply','commhub','POST','/mcp','commhub_send_message','string','1492329FHWfLF','stdin','Reply\x20text\x20/\x20result\x20summary','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','none','\x20PROJECT_ENV=','get','commhub-channel','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','tmux\x20display-message\x20-p\x20\x27#S\x27','replace','pop','priority','normal','stringify','alias','find','stderr','8pLqVTj','warning:\x20could\x20not\x20register:\x20','object','\x22\x20(','application/json','randomUUID','notifications/claude/channel','SSE\x20stream\x20ended,\x20reconnecting...','setRequestHandler','commhub_get_all_status','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','2.0','startsWith','messages','message_id','slice','unknown\x20tool','delete','commhub_reply','parse','\x20CWD=','6805547shAtxA','←\x20message\x20from\x20','params','Message\x20content','inbox_count','CommHub\x20init\x20failed:\x20','3530nrKrwL','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','959920PdsWku','report_status','from_session','484160ejYzdv','heartbeat\x20failed:\x20','length','low','idle','connect','.anet','starting\x20SSE\x20listener...','tools/call','Current\x20task\x20description','initialize','set','then'];a0_0x4c5f=function(){return _0x2dff90;};return a0_0x4c5f();}
|
|
2
|
+
const a0_0x1120da=a0_0x4fb9;(function(_0xce1670,_0x3b0c4c){const _0x5123c6=a0_0x4fb9,_0x1346c4=_0xce1670();while(!![]){try{const _0x55be2d=-parseInt(_0x5123c6(0x1d0))/0x1+parseInt(_0x5123c6(0x1cc))/0x2*(parseInt(_0x5123c6(0x179))/0x3)+parseInt(_0x5123c6(0x1dd))/0x4+-parseInt(_0x5123c6(0x17c))/0x5+parseInt(_0x5123c6(0x174))/0x6+parseInt(_0x5123c6(0x167))/0x7+-parseInt(_0x5123c6(0x18d))/0x8;if(_0x55be2d===_0x3b0c4c)break;else _0x1346c4['push'](_0x1346c4['shift']());}catch(_0x1b07d0){_0x1346c4['push'](_0x1346c4['shift']());}}}(a0_0x2f51,0x6ce2c));import{readFileSync as a0_0x459b8d,existsSync as a0_0x36d345}from'fs';import{join as a0_0x5dd898}from'path';import{hostname as a0_0x4c6c2e}from'os';import{execSync as a0_0xe4fb5d}from'child_process';import{Server as a0_0x2570e2}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x59380a}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x3e87b5,CallToolRequestSchema as a0_0x32675a}from'@modelcontextprotocol/sdk/types.js';function p(_0x4dd11b){const _0x56da13=a0_0x4fb9;if(!a0_0x36d345(_0x4dd11b))return;for(let _0x54cbf6 of a0_0x459b8d(_0x4dd11b,_0x56da13(0x199))['split']('\x0a')){let _0x5995af=_0x54cbf6[_0x56da13(0x1a4)]();if(!_0x5995af||_0x5995af[_0x56da13(0x171)]('#'))continue;let _0x445ef1=_0x5995af[_0x56da13(0x1cf)]('=');if(_0x445ef1<0x0)continue;let _0x407f46=_0x5995af[_0x56da13(0x1e3)](0x0,_0x445ef1)[_0x56da13(0x1a4)](),_0x42c16b=_0x5995af[_0x56da13(0x1e3)](_0x445ef1+0x1)[_0x56da13(0x1a4)]()[_0x56da13(0x160)](/^["']|["']$/g,'');if(!process.env[_0x407f46])process.env[_0x407f46]=_0x42c16b;}}var C=process.env.HOME||'~',T=a0_0x5dd898(C,a0_0x1120da(0x16b));p(a0_0x5dd898(T,a0_0x1120da(0x164)));var L=process[a0_0x1120da(0x191)]()['replace'](/\//g,'-');p(a0_0x5dd898(T,L,a0_0x1120da(0x164)));function U(){const _0x9ce96f=a0_0x1120da;try{return a0_0xe4fb5d(_0x9ce96f(0x1b5),{'encoding':_0x9ce96f(0x199),'timeout':0x7d0})[_0x9ce96f(0x1a4)]();}catch{return'';}}function c(){const _0x3e09dc=a0_0x1120da;try{let _0x25272a=a0_0x5dd898(C,_0x3e09dc(0x1b8),_0x3e09dc(0x1bb));if(a0_0x36d345(_0x25272a))return JSON[_0x3e09dc(0x17e)](a0_0x459b8d(_0x25272a,'utf-8'));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H[a0_0x1120da(0x1d7)]||'http://127.0.0.1:9200',f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x4c6c2e(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x1120da(0x1a1)](),X=process.env.COMMHUB_TOKEN||H[a0_0x1120da(0x163)]||'';function Y(_0x8995fe){const _0x222632=a0_0x1120da;let _0x5baaa8=new Date()['toTimeString']()[_0x222632(0x1e3)](0x0,0x8);process[_0x222632(0x182)][_0x222632(0x166)]('['+_0x5baaa8+_0x222632(0x193)+_0x8995fe+'\x0a');}function h(_0x148d5a){return new Promise(_0x48e33c=>setTimeout(_0x48e33c,_0x148d5a));}Y(a0_0x1120da(0x181)+D+'\x20ALIAS='+Z+'\x20RESUME_ID='+w[a0_0x1120da(0x1e3)](0x0,0x8)+a0_0x1120da(0x165)+(f||a0_0x1120da(0x1b4))+'\x20CWD='+process['cwd']()+'\x20PROJECT_ENV='+L);var k=new Map(),K=new a0_0x2570e2({'name':a0_0x1120da(0x18c),'version':a0_0x1120da(0x1da)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x1120da(0x175),a0_0x1120da(0x1d6),'Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x1120da(0x183),a0_0x1120da(0x19f)+Z][a0_0x1120da(0x1e0)]('\x0a')});K[a0_0x1120da(0x1cd)](a0_0x3e87b5,async()=>({'tools':[{'name':a0_0x1120da(0x1c4),'description':a0_0x1120da(0x195),'inputSchema':{'type':'object','properties':{'task_id':{'type':a0_0x1120da(0x1a8),'description':a0_0x1120da(0x1b2)},'text':{'type':a0_0x1120da(0x1a8),'description':a0_0x1120da(0x15e)},'status':{'type':a0_0x1120da(0x1a8),'enum':[a0_0x1120da(0x19b),a0_0x1120da(0x1ad),a0_0x1120da(0x176),'blocked',a0_0x1120da(0x1e2),a0_0x1120da(0x15b)],'description':a0_0x1120da(0x1a5)}},'required':['text']}},{'name':a0_0x1120da(0x1d8),'description':a0_0x1120da(0x1c3),'inputSchema':{'type':a0_0x1120da(0x187),'properties':{'status':{'type':a0_0x1120da(0x1a8),'enum':[a0_0x1120da(0x1c6),a0_0x1120da(0x170),a0_0x1120da(0x19a),a0_0x1120da(0x1e2)]},'task':{'type':'string','description':a0_0x1120da(0x1bc)},'progress':{'type':a0_0x1120da(0x1db),'description':a0_0x1120da(0x17f)}},'required':[a0_0x1120da(0x1d5)]}},{'name':a0_0x1120da(0x188),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':'object','properties':{'alias':{'type':'string','description':a0_0x1120da(0x1de)},'task':{'type':a0_0x1120da(0x1a8),'description':a0_0x1120da(0x1a9)},'priority':{'type':a0_0x1120da(0x1a8),'enum':[a0_0x1120da(0x1d3),a0_0x1120da(0x1c5),a0_0x1120da(0x16d)],'description':'Priority\x20(default:\x20normal)'}},'required':['alias',a0_0x1120da(0x1b7)]}},{'name':a0_0x1120da(0x16a),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x1120da(0x1a8),'description':a0_0x1120da(0x1de)},'message':{'type':a0_0x1120da(0x1a8),'description':a0_0x1120da(0x159)}},'required':['alias',a0_0x1120da(0x190)]}},{'name':a0_0x1120da(0x16c),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':'object','properties':{}}}]}));async function P(_0x5680bc,_0x36004c){const _0x165bb6=a0_0x1120da;let _0x5dccc1=await fetch(D+_0x165bb6(0x162),{'method':'POST','headers':{'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x165bb6(0x1b0)+X}:{}},'body':JSON[_0x165bb6(0x17b)]({'jsonrpc':'2.0','id':0x1,'method':_0x165bb6(0x1cb),'params':{'protocolVersion':_0x165bb6(0x18b),'capabilities':{},'clientInfo':{'name':_0x165bb6(0x18c),'version':_0x165bb6(0x1da)}}})});if(!_0x5dccc1['ok']){let _0xfb3244=await _0x5dccc1[_0x165bb6(0x19e)]();return Y(_0x165bb6(0x17a)+_0x5dccc1['status']+'\x20'+_0xfb3244['slice'](0x0,0x64)),{'ok':!0x1,'error':_0x165bb6(0x1b9)+_0x5dccc1[_0x165bb6(0x1d5)]};}await _0x5dccc1['text']();let _0x52047c=(await(await fetch(D+_0x165bb6(0x162),{'method':'POST','headers':{'Content-Type':_0x165bb6(0x1ab),'Accept':_0x165bb6(0x1ac),...X?{'Authorization':_0x165bb6(0x1b0)+X}:{}},'body':JSON[_0x165bb6(0x17b)]({'jsonrpc':_0x165bb6(0x173),'id':0x2,'method':_0x165bb6(0x185),'params':{'name':_0x5680bc,'arguments':_0x36004c}})}))[_0x165bb6(0x19e)]())[_0x165bb6(0x180)]('\x0a')[_0x165bb6(0x194)](_0x5b9130=>_0x5b9130[_0x165bb6(0x171)](_0x165bb6(0x17d)));if(_0x52047c){let _0x1aaac0=JSON['parse'](_0x52047c['slice'](0x6));return _0x1aaac0?.['result']?.[_0x165bb6(0x169)]?.[0x0]?.[_0x165bb6(0x19e)]?JSON[_0x165bb6(0x17e)](_0x1aaac0['result'][_0x165bb6(0x169)][0x0][_0x165bb6(0x19e)]):_0x1aaac0;}return{'ok':!0x1,'error':_0x165bb6(0x1c2)};}K[a0_0x1120da(0x1cd)](a0_0x32675a,async _0x39d7ab=>{const _0x58078e=a0_0x1120da;let {name:_0x2cbdcc,arguments:_0x345c03}=_0x39d7ab[_0x58078e(0x177)];if(_0x2cbdcc===_0x58078e(0x1c4)){let {task_id:_0x167ebd,text:_0x538ab5,status:_0x40bc46}=_0x345c03;if(_0x40bc46===_0x58078e(0x19b)||_0x40bc46==='failed'||_0x40bc46==='cancelled'){let _0x19b30c=_0x40bc46==='completed'?_0x58078e(0x1b6):_0x40bc46,_0xff36a9=_0x167ebd?k[_0x58078e(0x1d2)](_0x167ebd)||'hub':_0x58078e(0x1d7),_0xc7fbbc=await P(_0x58078e(0x19c),{'alias':_0xff36a9,'text':_0x538ab5,'in_reply_to':_0x167ebd||void 0x0,'status':_0x19b30c,'from_session':Z});if(_0x167ebd)k['delete'](_0x167ebd);return{'content':[{'type':_0x58078e(0x19e),'text':JSON[_0x58078e(0x17b)](_0xc7fbbc)}]};}let _0x239326=await P(_0x58078e(0x1c9),{'resume_id':w,'alias':Z,'status':_0x40bc46==='blocked'?_0x58078e(0x19a):_0x40bc46===_0x58078e(0x1e2)?_0x58078e(0x1e2):_0x58078e(0x1c6),'task':_0x538ab5[_0x58078e(0x1e3)](0x0,0xc8),'output':_0x538ab5});return{'content':[{'type':_0x58078e(0x19e),'text':JSON[_0x58078e(0x17b)](_0x239326)}]};}if(_0x2cbdcc===_0x58078e(0x1d8)){let {status:_0x54d1fd,task:_0x373be8,progress:_0x3b00b5}=_0x345c03,_0x20afcd=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x54d1fd,'task':_0x373be8,'progress':_0x3b00b5});return{'content':[{'type':_0x58078e(0x19e),'text':JSON[_0x58078e(0x17b)](_0x20afcd)}]};}if(_0x2cbdcc===_0x58078e(0x188)){let {alias:_0x50fb18,task:_0x4c7ff6,priority:_0x382784}=_0x345c03,_0x227683=await P('send_task',{'alias':_0x50fb18,'task':_0x4c7ff6,'priority':_0x382784||_0x58078e(0x1c5),'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x58078e(0x17b)](_0x227683)}]};}if(_0x2cbdcc==='commhub_send_message'){let {alias:_0x28cb72,message:_0x14b4e4}=_0x345c03,_0x1427e6=await P(_0x58078e(0x1aa),{'alias':_0x28cb72,'message':_0x14b4e4,'from_session':Z});return{'content':[{'type':_0x58078e(0x19e),'text':JSON[_0x58078e(0x17b)](_0x1427e6)}]};}if(_0x2cbdcc==='commhub_get_all_status'){let _0x46641c=await P(_0x58078e(0x189),{});return{'content':[{'type':_0x58078e(0x19e),'text':JSON[_0x58078e(0x17b)](_0x46641c)}]};}return{'content':[{'type':'text','text':JSON[_0x58078e(0x17b)]({'error':_0x58078e(0x1c7)})}]};});async function v(){const _0x3dc7bc=a0_0x1120da;let _0x24fc9=D+_0x3dc7bc(0x1b1)+encodeURIComponent(Z),_0x96bc68={};if(X)_0x96bc68['Authorization']=_0x3dc7bc(0x1b0)+X;Y(_0x3dc7bc(0x1be)+_0x24fc9);while(!0x0){try{let _0x34d41e=await fetch(_0x24fc9,{'headers':_0x96bc68});if(!_0x34d41e['ok']){Y(_0x3dc7bc(0x1ae)+_0x34d41e[_0x3dc7bc(0x1d5)]+'\x20'+_0x34d41e[_0x3dc7bc(0x1d9)]),await h(0x1388);continue;}let _0x4cd8c7=_0x34d41e[_0x3dc7bc(0x15c)][_0x3dc7bc(0x1d4)](),_0x53d11a=new TextDecoder(),_0x1fa201='';while(!0x0){let {done:_0x3fa8fa,value:_0x1e5e14}=await _0x4cd8c7[_0x3dc7bc(0x1a7)]();if(_0x3fa8fa)break;_0x1fa201+=_0x53d11a[_0x3dc7bc(0x15a)](_0x1e5e14,{'stream':!0x0});let _0x34e62c=_0x1fa201['split']('\x0a\x0a');_0x1fa201=_0x34e62c[_0x3dc7bc(0x196)]()||'';for(let _0x58359f of _0x34e62c){let _0x40ac1c=_0x58359f[_0x3dc7bc(0x180)]('\x0a')[_0x3dc7bc(0x194)](_0xdd77ff=>_0xdd77ff[_0x3dc7bc(0x171)](_0x3dc7bc(0x17d)));if(!_0x40ac1c)continue;try{let _0x55b40c=JSON['parse'](_0x40ac1c[_0x3dc7bc(0x1e3)](0x6));await u(_0x55b40c);}catch(_0x153902){Y(_0x3dc7bc(0x18e)+_0x153902);}}}Y(_0x3dc7bc(0x1a2));}catch(_0x4e5d4d){Y('SSE\x20connection\x20error:\x20'+_0x4e5d4d);}await h(0xbb8);}}async function u(_0x268164){const _0x52d337=a0_0x1120da;if(_0x268164[_0x52d337(0x1e1)]===_0x52d337(0x1dc)){Y('SSE\x20connected\x20as\x20\x22'+Z+'\x22');return;}if(_0x268164['type']==='new_message'){if(Y(_0x52d337(0x1af)+_0x268164[_0x52d337(0x178)]+':\x20'+_0x268164[_0x52d337(0x190)][_0x52d337(0x1e3)](0x0,0x3c)),await K[_0x52d337(0x1a6)]({'method':_0x52d337(0x1d1),'params':{'content':_0x268164['message'],'meta':{'sender':_0x268164[_0x52d337(0x178)]||'hub','sender_id':_0x52d337(0x1b3),'user':_0x268164[_0x52d337(0x178)]||_0x52d337(0x1d7),'priority':_0x52d337(0x1c5)}}}),_0x268164['message_id'])await P(_0x52d337(0x172),{'alias':Z,'message_id':_0x268164[_0x52d337(0x192)]});return;}if(_0x268164[_0x52d337(0x1e1)]===_0x52d337(0x197)||_0x268164[_0x52d337(0x1e1)]===_0x52d337(0x1c0)){Y('←\x20'+_0x268164[_0x52d337(0x1e1)]+_0x52d337(0x1ba)+_0x268164[_0x52d337(0x15f)]+'\x20priority='+(_0x268164[_0x52d337(0x18f)]||'normal'));let _0xd77c4a=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0xd77c4a?.['ok']&&_0xd77c4a['messages']?.[_0x52d337(0x1e4)]>0x0)for(let _0x49f3af of _0xd77c4a[_0x52d337(0x15d)]){let _0x40361f={'sender':_0x49f3af[_0x52d337(0x19d)]||_0x52d337(0x1d7),'sender_id':_0x52d337(0x1b3),'user':_0x49f3af[_0x52d337(0x19d)]||_0x52d337(0x1d7),'task_id':_0x49f3af['id'],'priority':_0x49f3af['priority']||_0x52d337(0x1c5)};k['set'](_0x49f3af['id'],_0x49f3af[_0x52d337(0x19d)]||_0x52d337(0x1d7)),await K['notification']({'method':_0x52d337(0x1d1),'params':{'content':_0x49f3af[_0x52d337(0x169)],'meta':_0x40361f}}),Y('→\x20injected\x20task\x20'+_0x49f3af['id'][_0x52d337(0x1e3)](0x0,0x8)+_0x52d337(0x186)+_0x49f3af['from_session']+':\x20'+_0x49f3af['content']['slice'](0x0,0x3c)),await P(_0x52d337(0x172),{'alias':Z,'message_id':_0x49f3af['id']});}}}function a0_0x4fb9(_0xb3eec0,_0x13abe8){_0xb3eec0=_0xb3eec0-0x159;const _0x2f51ad=a0_0x2f51();let _0x4fb9a3=_0x2f51ad[_0xb3eec0];return _0x4fb9a3;}async function S(){const _0x3c72ed=a0_0x1120da;let _0x141955=new a0_0x59380a();await K[_0x3c72ed(0x18a)](_0x141955),Y('MCP\x20stdio\x20connected'),Y('starting\x20SSE\x20listener...'),v()['catch'](_0x34f449=>Y(_0x3c72ed(0x16e)+_0x34f449)),P(_0x3c72ed(0x1c9),{'resume_id':w,'alias':Z,'status':_0x3c72ed(0x170),'server':a0_0x4c6c2e(),'hostname':a0_0x4c6c2e(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x3c72ed(0x1c1)](()=>Y('registered\x20as\x20\x22'+Z+_0x3c72ed(0x161)+w[_0x3c72ed(0x1e3)](0x0,0x8)+')'))['catch'](_0x2d33a5=>Y(_0x3c72ed(0x1df)+_0x2d33a5)),setInterval(()=>{const _0x28d4d2=_0x3c72ed;P('report_status',{'resume_id':w,'alias':Z,'status':_0x28d4d2(0x170),'server':a0_0x4c6c2e(),'hostname':a0_0x4c6c2e(),'agent':'claude-code','project_dir':process[_0x28d4d2(0x191)](),'tmux_name':f||void 0x0})['catch'](_0x16d6c4=>Y(_0x28d4d2(0x1a0)+_0x16d6c4));},0x2bf20),Y(_0x3c72ed(0x1a3));}function a0_0x2f51(){const _0x8e2e47=['high','getReader','status','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','hub','commhub_report_status','statusText','0.3.0','number','connected','1925344NqNdjp','Target\x20session\x20alias','warning:\x20could\x20not\x20register:\x20','join','type','error','slice','length','Message\x20content','decode','in_progress','body','messages','Reply\x20text\x20/\x20result\x20summary','inbox_count','replace','\x22\x20(','/mcp','token','.env','...\x20TMUX=','write','4467064AhslZr','catch','content','commhub_send_message','.claude/channels/commhub','commhub_get_all_status','low','SSE\x20fatal:\x20','SIGTERM','idle','startsWith','ack_inbox','2.0','4393260IVSTVy','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','cancelled','params','from','9SjkVmp','CommHub\x20init\x20failed:\x20','stringify','4285565Znvoru','data:\x20','parse','Progress\x200-100','split','ENV:\x20URL=','stderr','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','shutting\x20down,\x20reporting\x20offline...','tools/call','\x20from\x20','object','commhub_send_task','get_all_status','connect','2025-03-26','commhub-channel','915160OHGRXR','parse\x20error:\x20','priority','message','cwd','message_id',']\x20[commhub]\x20','find','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','pop','new_task','exit','utf-8','blocked','completed','send_reply','from_session','text','Session\x20alias:\x20','heartbeat\x20failed:\x20','randomUUID','SSE\x20stream\x20ended,\x20reconnecting...','ready\x20—\x20waiting\x20for\x20events','trim','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','notification','read','string','Task\x20content','send_message','application/json','application/json,\x20text/event-stream','failed','SSE\x20error:\x20','←\x20message\x20from\x20','Bearer\x20','/events/','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','commhub','none','tmux\x20display-message\x20-p\x20\x27#S\x27','replied','task','.anet','init\x20failed:\x20',':\x20inbox_count=','config.json','Current\x20task\x20description','end','connecting\x20to\x20','SIGINT','broadcast','then','no\x20response','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','commhub_reply','normal','working','unknown\x20tool','fatal:\x20','report_status','session\x20disconnected','initialize','236124nGjXLD','setRequestHandler','stdin','indexOf','788380rBRfvJ','notifications/claude/channel','get'];a0_0x2f51=function(){return _0x8e2e47;};return a0_0x2f51();}S()[a0_0x1120da(0x168)](_0x58c2ed=>{const _0x5675b0=a0_0x1120da;Y(_0x5675b0(0x1c8)+_0x58c2ed),process[_0x5675b0(0x198)](0x1);});async function N(){const _0x3e6210=a0_0x1120da;Y(_0x3e6210(0x184)),await P(_0x3e6210(0x1c9),{'resume_id':w,'alias':Z,'status':_0x3e6210(0x1e2),'task':_0x3e6210(0x1ca)})['catch'](()=>{}),process[_0x3e6210(0x198)](0x0);}process[a0_0x1120da(0x1ce)]['on'](a0_0x1120da(0x1bd),()=>N()),process['on'](a0_0x1120da(0x16f),()=>N()),process['on'](a0_0x1120da(0x1bf),()=>N());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.0.0-preview.
|
|
3
|
+
"version": "2.0.0-preview.23",
|
|
4
4
|
"description": "AI Agent Network — Server + Client + Setup in one package. SSE real-time communication for multi-agent orchestration.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/client.js",
|