@sleep2agi/agent-network 2.0.3-preview.11 → 2.0.3-preview.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/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_0xbaff4=a0_0x1507;function a0_0x22da(){const _0x4dba9a=['type','data:\x20','normal','346868CzWUIw','disconnected','get_inbox',']\x20[commhub:','alias','from_session','application/json,\x20text/event-stream','1544862SxPEPM','report_status','emit','2.0','2562CAPhni','17913DEAJDJ','Bearer\x20','s...','reply','toTimeString','processInbox','body','replace','token','toString','connected','12806453ItVvoP','status','slice','ack_inbox','new_message','server','2261995ZvgVYf','catch','application/json','abort','idle','agent','running','min','tools/call','/events/','sleep','904RBwpzz','name','message','split','log','heartbeatInterval','offline','content','heartbeatTimer','completed','10eDMOSi','sdk-','startsWith','sseAbort','send_message','registered','disconnect','8oHcBnv','error','getReader','broadcast','SSE\x20error:\x20','new_task','1729814TdoRxy','decode','getAllStatus','call','result','resumeId','reconnectDelay','84951CTOQaY','get_all_status','connect','now','parse','url','POST','Authorization','sdk','SSE\x20connected','text','connectSSE'];a0_0x22da=function(){return _0x4dba9a;};return a0_0x22da();}(function(_0x5601c9,_0x14bbd2){const _0x31b1d8=a0_0x1507,_0x42e352=_0x5601c9();while(!![]){try{const _0x39e11f=parseInt(_0x31b1d8(0x20e))/0x1+parseInt(_0x31b1d8(0x1f8))/0x2+-parseInt(_0x31b1d8(0x215))/0x3*(-parseInt(_0x31b1d8(0x1f2))/0x4)+-parseInt(_0x31b1d8(0x22b))/0x5+parseInt(_0x31b1d8(0x219))/0x6*(-parseInt(_0x31b1d8(0x21a))/0x7)+parseInt(_0x31b1d8(0x236))/0x8*(parseInt(_0x31b1d8(0x1ff))/0x9)+-parseInt(_0x31b1d8(0x1eb))/0xa*(parseInt(_0x31b1d8(0x225))/0xb);if(_0x39e11f===_0x14bbd2)break;else _0x42e352['push'](_0x42e352['shift']());}catch(_0x9be9fd){_0x42e352['push'](_0x42e352['shift']());}}}(a0_0x22da,0x923bf));import{EventEmitter as a0_0x2be93e}from'events';import{hostname as a0_0x195434}from'os';class T extends a0_0x2be93e{[a0_0xbaff4(0x204)];[a0_0xbaff4(0x212)];[a0_0xbaff4(0x222)];[a0_0xbaff4(0x230)];['resumeId'];[a0_0xbaff4(0x23b)];[a0_0xbaff4(0x1fe)];[a0_0xbaff4(0x1e9)];[a0_0xbaff4(0x1ee)];[a0_0xbaff4(0x231)]=!0x1;constructor(_0x26a676){const _0x4f8d07=a0_0xbaff4;super();if(this['url']=_0x26a676[_0x4f8d07(0x204)][_0x4f8d07(0x221)](/\/$/,''),this[_0x4f8d07(0x212)]=_0x26a676[_0x4f8d07(0x212)],this[_0x4f8d07(0x222)]=_0x26a676[_0x4f8d07(0x222)],this[_0x4f8d07(0x230)]=_0x26a676[_0x4f8d07(0x230)]||_0x4f8d07(0x207),this['resumeId']=_0x4f8d07(0x1ec)+_0x26a676[_0x4f8d07(0x212)]+'-'+Date[_0x4f8d07(0x202)]()[_0x4f8d07(0x223)](0x24),this[_0x4f8d07(0x23b)]=_0x26a676[_0x4f8d07(0x23b)]??0x2bf20,this[_0x4f8d07(0x1fe)]=_0x26a676[_0x4f8d07(0x1fe)]??0xbb8,_0x26a676['autoConnect']!==!0x1)this[_0x4f8d07(0x201)]();}[a0_0xbaff4(0x23a)](_0x5e3ed1){const _0x141011=a0_0xbaff4;console['log']('['+new Date()[_0x141011(0x21e)]()['slice'](0x0,0x8)+_0x141011(0x211)+this[_0x141011(0x212)]+']\x20'+_0x5e3ed1);}async[a0_0xbaff4(0x1fb)](_0x1c228d,_0x1453b6){const _0x2180ac=a0_0xbaff4;let _0x510053={'Content-Type':_0x2180ac(0x22d),'Accept':_0x2180ac(0x214)};if(this[_0x2180ac(0x222)])_0x510053['Authorization']=_0x2180ac(0x21b)+this[_0x2180ac(0x222)];let _0x2c3401=await(await fetch(this[_0x2180ac(0x204)]+'/mcp',{'method':_0x2180ac(0x205),'headers':_0x510053,'body':JSON['stringify']({'jsonrpc':_0x2180ac(0x218),'id':Date['now'](),'method':_0x2180ac(0x233),'params':{'name':_0x1c228d,'arguments':_0x1453b6}})}))['text'](),_0x32fb23=_0x2c3401['match'](/data: (.+)/),_0x3e29c1=_0x32fb23?JSON[_0x2180ac(0x203)](_0x32fb23[0x1]):JSON[_0x2180ac(0x203)](_0x2c3401),_0x141df0=_0x3e29c1?.[_0x2180ac(0x1fc)]?.['content']?.[0x0]?.[_0x2180ac(0x209)];return _0x141df0?JSON[_0x2180ac(0x203)](_0x141df0):_0x3e29c1;}async[a0_0xbaff4(0x201)](){const _0x36e2e2=a0_0xbaff4;if(this[_0x36e2e2(0x231)])return;this[_0x36e2e2(0x231)]=!0x0,await this[_0x36e2e2(0x226)](_0x36e2e2(0x22f)),this[_0x36e2e2(0x23a)](_0x36e2e2(0x1f0)),this['heartbeatTimer']=setInterval(()=>{const _0x2b284a=_0x36e2e2;this[_0x2b284a(0x226)]('idle')[_0x2b284a(0x22c)](_0x2a8662=>this['log']('heartbeat\x20failed:\x20'+_0x2a8662[_0x2b284a(0x238)]));},this[_0x36e2e2(0x23b)]),this['connectSSE']();}async[a0_0xbaff4(0x1f1)](){const _0x166350=a0_0xbaff4;if(this['running']=!0x1,this['sseAbort']?.[_0x166350(0x22e)](),this[_0x166350(0x1e9)])clearInterval(this[_0x166350(0x1e9)]);await this['status'](_0x166350(0x23c))[_0x166350(0x22c)](()=>{}),this['log'](_0x166350(0x20f));}async['send'](_0x20b16a,_0x2fe6ff,_0x5dfc0d=a0_0xbaff4(0x20d)){const _0xe4afcf=a0_0xbaff4;return this[_0xe4afcf(0x1fb)]('send_task',{'alias':_0x20b16a,'task':_0x2fe6ff,'priority':_0x5dfc0d,'from_session':this[_0xe4afcf(0x212)]});}async[a0_0xbaff4(0x238)](_0x432eb3,_0x72d93e){const _0x57703f=a0_0xbaff4;return this['call'](_0x57703f(0x1ef),{'alias':_0x432eb3,'message':_0x72d93e,'from_session':this[_0x57703f(0x212)]});}async[a0_0xbaff4(0x21d)](_0x230c2c,_0x4db0e2,_0x44a62a=a0_0xbaff4(0x1ea)){const _0x197a52=a0_0xbaff4;return this[_0x197a52(0x1fb)](_0x197a52(0x21d),{'task_id':_0x230c2c,'text':_0x4db0e2,'status':_0x44a62a});}async[a0_0xbaff4(0x226)](_0x3cfacf,_0x45fa18){const _0x249610=a0_0xbaff4;return this[_0x249610(0x1fb)](_0x249610(0x216),{'resume_id':this[_0x249610(0x1fd)],'alias':this[_0x249610(0x212)],'status':_0x3cfacf,'server':a0_0x195434(),'hostname':a0_0x195434(),'agent':this[_0x249610(0x230)],'project_dir':process['cwd'](),..._0x45fa18});}async[a0_0xbaff4(0x1fa)](){const _0x2ee8aa=a0_0xbaff4;return this['call'](_0x2ee8aa(0x200),{});}async[a0_0xbaff4(0x1f5)](_0x4d8729,_0xe6f1e9){const _0x35008f=a0_0xbaff4;return this['call'](_0x35008f(0x1f5),{'message':_0x4d8729,'filter_server':_0xe6f1e9?.[_0x35008f(0x22a)],'filter_status':_0xe6f1e9?.[_0x35008f(0x226)]});}async[a0_0xbaff4(0x20a)](){const _0x34c6c8=a0_0xbaff4;let _0x1e4057=encodeURIComponent(this[_0x34c6c8(0x212)]),_0x4473bc=this['url']+_0x34c6c8(0x234)+_0x1e4057,_0x304697=this[_0x34c6c8(0x1fe)];while(this[_0x34c6c8(0x231)]){try{this['sseAbort']=new AbortController();let _0x577049={'Accept':'text/event-stream'};if(this['token'])_0x577049[_0x34c6c8(0x206)]=_0x34c6c8(0x21b)+this['token'];let _0x23d551=await fetch(_0x4473bc,{'headers':_0x577049,'signal':this[_0x34c6c8(0x1ee)]['signal']});if(!_0x23d551['ok']||!_0x23d551['body']){this[_0x34c6c8(0x23a)]('SSE\x20failed:\x20'+_0x23d551['status']),await this[_0x34c6c8(0x235)](_0x304697),_0x304697=Math['min'](_0x304697*1.5,0xea60);continue;}_0x304697=this['reconnectDelay'];let _0x5dce6f=_0x23d551[_0x34c6c8(0x220)][_0x34c6c8(0x1f4)](),_0x3581f8=new TextDecoder(),_0x53ad28='';while(this[_0x34c6c8(0x231)]){let {done:_0x2ba2ce,value:_0xf65603}=await _0x5dce6f['read']();if(_0x2ba2ce)break;_0x53ad28+=_0x3581f8[_0x34c6c8(0x1f9)](_0xf65603,{'stream':!0x0});let _0x7a57b2=_0x53ad28[_0x34c6c8(0x239)]('\x0a');_0x53ad28=_0x7a57b2['pop']()||'';for(let _0x1eacae of _0x7a57b2){if(!_0x1eacae[_0x34c6c8(0x1ed)](_0x34c6c8(0x20c)))continue;try{let _0x187907=JSON[_0x34c6c8(0x203)](_0x1eacae[_0x34c6c8(0x227)](0x6));if(_0x187907[_0x34c6c8(0x20b)]===_0x34c6c8(0x224)){this[_0x34c6c8(0x23a)](_0x34c6c8(0x208)),this[_0x34c6c8(0x217)](_0x34c6c8(0x224));continue;}if(_0x187907[_0x34c6c8(0x20b)]===_0x34c6c8(0x1f7)||_0x187907[_0x34c6c8(0x20b)]===_0x34c6c8(0x229)||_0x187907[_0x34c6c8(0x20b)]===_0x34c6c8(0x1f5))await this[_0x34c6c8(0x21f)]();}catch{}}}}catch(_0x53b908){if(_0x53b908[_0x34c6c8(0x237)]==='AbortError')break;this[_0x34c6c8(0x217)](_0x34c6c8(0x1f3),_0x53b908),this[_0x34c6c8(0x23a)](_0x34c6c8(0x1f6)+_0x53b908[_0x34c6c8(0x238)]);}if(this[_0x34c6c8(0x231)])this['emit']('disconnected'),this[_0x34c6c8(0x23a)]('SSE\x20reconnecting\x20in\x20'+_0x304697/0x3e8+_0x34c6c8(0x21c)),await this['sleep'](_0x304697),_0x304697=Math[_0x34c6c8(0x232)](_0x304697*1.5,0xea60);}}async['processInbox'](){const _0x224927=a0_0xbaff4;try{let _0x1f228c=(await this[_0x224927(0x1fb)](_0x224927(0x210),{'alias':this[_0x224927(0x212)],'limit':0xa}))?.['messages']||[];for(let _0x246927 of _0x1f228c)await this[_0x224927(0x1fb)](_0x224927(0x228),{'alias':this[_0x224927(0x212)],'message_id':_0x246927['id']}),this[_0x224927(0x23a)]('←\x20'+_0x246927[_0x224927(0x213)]+':\x20'+_0x246927[_0x224927(0x1e8)][_0x224927(0x227)](0x0,0x3c)),this['emit']('task',_0x246927),this[_0x224927(0x217)]('message',_0x246927);}catch(_0x3caae6){this[_0x224927(0x23a)]('inbox\x20error:\x20'+_0x3caae6[_0x224927(0x238)]);}}[a0_0xbaff4(0x235)](_0x3e5668){return new Promise(_0x454ea2=>setTimeout(_0x454ea2,_0x3e5668));}}function a0_0x1507(_0x2c8950,_0x863078){_0x2c8950=_0x2c8950-0x1e8;const _0x22da30=a0_0x22da();let _0x150758=_0x22da30[_0x2c8950];return _0x150758;}var $=T;export{$ as default,T as CommHub};
|
package/dist/src/node-server.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
|
-
const a0_0x35cb29=a0_0xcc10;(function(_0x25983b,_0x3f1ce8){const _0x533ce3=a0_0xcc10,_0x1128fd=_0x25983b();while(!![]){try{const _0x554778=-parseInt(_0x533ce3(0x20a))/0x1+parseInt(_0x533ce3(0x1e9))/0x2*(parseInt(_0x533ce3(0x22f))/0x3)+-parseInt(_0x533ce3(0x242))/0x4+parseInt(_0x533ce3(0x1d3))/0x5+-parseInt(_0x533ce3(0x1da))/0x6*(parseInt(_0x533ce3(0x215))/0x7)+-parseInt(_0x533ce3(0x1ff))/0x8*(-parseInt(_0x533ce3(0x23b))/0x9)+parseInt(_0x533ce3(0x20f))/0xa;if(_0x554778===_0x3f1ce8)break;else _0x1128fd['push'](_0x1128fd['shift']());}catch(_0x53a6ef){_0x1128fd['push'](_0x1128fd['shift']());}}}(a0_0x2c08,0x2333e));import{readFileSync as a0_0x31d56c,existsSync as a0_0x4d16f2}from'fs';import{randomUUID as a0_0x47995f}from'crypto';import{join as a0_0x3ac48b}from'path';import{hostname as a0_0x111651}from'os';import{execSync as a0_0x102cae}from'child_process';import{Server as a0_0x29123c}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x1135f7}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x111fa1,CallToolRequestSchema as a0_0x537254}from'@modelcontextprotocol/sdk/types.js';function p(_0x494abe){const _0xf565a1=a0_0xcc10;if(!a0_0x4d16f2(_0x494abe))return;for(let _0x1a9d0a of a0_0x31d56c(_0x494abe,_0xf565a1(0x1d2))[_0xf565a1(0x1cf)]('\x0a')){let _0x1545c2=_0x1a9d0a[_0xf565a1(0x23a)]();if(!_0x1545c2||_0x1545c2[_0xf565a1(0x22b)]('#'))continue;let _0x871dff=_0x1545c2[_0xf565a1(0x251)]('=');if(_0x871dff<0x0)continue;let _0x1df0af=_0x1545c2[_0xf565a1(0x214)](0x0,_0x871dff)['trim'](),_0x46bc38=_0x1545c2[_0xf565a1(0x214)](_0x871dff+0x1)[_0xf565a1(0x23a)]()[_0xf565a1(0x24f)](/^["']|["']$/g,'');if(!process.env[_0x1df0af])process.env[_0x1df0af]=_0x46bc38;}}function a0_0x2c08(){const _0x318502=['Progress\x200-100','broadcast','new_message','\x20RESUME_ID=','get_all_status','POST','ack_inbox','in_progress','notification','trim','288lAmlCG','Target\x20session\x20alias','then','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','SSE\x20fatal:\x20','fatal:\x20','completed','344456DgRKQn','message','ready\x20—\x20waiting\x20for\x20events','application/json,\x20text/event-stream','normal','tools/call','send_task','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','end','parse\x20error:\x20','Authorization','CommHub\x20init\x20failed:\x20','result','replace','replied','indexOf','stdin','length','Bearer\x20','decode','commhub-channel','data:\x20','config.json','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','none','\x20priority=','.anet','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','split','application/json','unknown\x20tool','utf-8','819820RDkOLl','string','getReader','join','SIGTERM','ENV:\x20URL=','claude-code','18KStCWr','alias','Message\x20content','commhub_reply','type','working','body','catch','connecting\x20to\x20','\x20PROJECT_ENV=','2.0','commhub_get_all_status','session\x20disconnected','pop','warning:\x20could\x20not\x20register:\x20','12226AKhdOa','cancelled','notifications/claude/channel','/events/','2025-03-26','delete','failed','.env','heartbeat\x20failed:\x20','parse','number','MCP\x20stdio\x20connected','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','no\x20response','SSE\x20error:\x20','SSE\x20connection\x20error:\x20','http://127.0.0.1:9200','stringify','tmux\x20display-message\x20-p\x20\x27#S\x27','object','SSE\x20connected\x20as\x20\x22','from_session','6160qkoCBM','error','status','text','\x20ALIAS=','cwd','new_task',']\x20[commhub]\x20','content','commhub','write','222524yFbBpj','message_id','exit','from','\x22\x20(','1871060hdIxyV','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','setRequestHandler','params','←\x20message\x20from\x20','slice','205177NSFCbz','commhub_send_task','find','shutting\x20down,\x20reporting\x20offline...','\x20from\x20','read','...\x20TMUX=','hub','priority','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inbox_count','Session\x20alias:\x20','connect','report_status','commhub_report_status','blocked','set','idle','→\x20injected\x20task\x20','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','connected','messages','startsWith','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','commhub_send_message','81NTVkbj','0.3.0'];a0_0x2c08=function(){return _0x318502;};return a0_0x2c08();}var C=process.env.HOME||'~',T=a0_0x3ac48b(C,'.claude/channels/commhub');p(a0_0x3ac48b(T,a0_0x35cb29(0x1f0)));function a0_0xcc10(_0x2f664d,_0x257fb4){_0x2f664d=_0x2f664d-0x1ca;const _0x2c0824=a0_0x2c08();let _0xcc10de=_0x2c0824[_0x2f664d];return _0xcc10de;}var L=process['cwd']()['replace'](/\//g,'-');p(a0_0x3ac48b(T,L,a0_0x35cb29(0x1f0)));function U(){const _0x468113=a0_0x35cb29;try{return a0_0x102cae(_0x468113(0x1fb),{'encoding':'utf-8','timeout':0x7d0})[_0x468113(0x23a)]();}catch{return'';}}function v(){const _0x52701d=a0_0x35cb29;try{let _0x138fde=a0_0x3ac48b(C,_0x52701d(0x1cd),_0x52701d(0x258));if(a0_0x4d16f2(_0x138fde))return JSON['parse'](a0_0x31d56c(_0x138fde,_0x52701d(0x1d2)));}catch{}return{};}var H=v(),f=process.env.COMMHUB_URL||H[a0_0x35cb29(0x21c)]||a0_0x35cb29(0x1f9),j=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||j||a0_0x111651(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x47995f(),X=process.env.COMMHUB_TOKEN||H['token']||'';function Y(_0x3db239){const _0x476c07=a0_0x35cb29;let _0x1ea2b3=new Date()['toTimeString']()['slice'](0x0,0x8);process['stderr'][_0x476c07(0x209)]('['+_0x1ea2b3+_0x476c07(0x206)+_0x3db239+'\x0a');}function h(_0x4674f5){return new Promise(_0x473818=>setTimeout(_0x473818,_0x4674f5));}Y(a0_0x35cb29(0x1d8)+f+a0_0x35cb29(0x203)+Z+a0_0x35cb29(0x234)+w[a0_0x35cb29(0x214)](0x0,0x8)+a0_0x35cb29(0x21b)+(j||a0_0x35cb29(0x1cb))+'\x20CWD='+process[a0_0x35cb29(0x204)]()+a0_0x35cb29(0x1e3)+L);var k=new Map(),K=new a0_0x29123c({'name':a0_0x35cb29(0x256),'version':a0_0x35cb29(0x230)},{'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_0x35cb29(0x249),a0_0x35cb29(0x210),a0_0x35cb29(0x1f5),a0_0x35cb29(0x220)+Z][a0_0x35cb29(0x1d6)]('\x0a')});K[a0_0x35cb29(0x211)](a0_0x111fa1,async()=>({'tools':[{'name':a0_0x35cb29(0x1dd),'description':a0_0x35cb29(0x21e),'inputSchema':{'type':a0_0x35cb29(0x1fc),'properties':{'task_id':{'type':a0_0x35cb29(0x1d4),'description':a0_0x35cb29(0x22c)},'text':{'type':a0_0x35cb29(0x1d4),'description':'Reply\x20text\x20/\x20result\x20summary'},'status':{'type':'string','enum':[a0_0x35cb29(0x241),a0_0x35cb29(0x1ef),a0_0x35cb29(0x1ea),a0_0x35cb29(0x224),a0_0x35cb29(0x200),a0_0x35cb29(0x238)],'description':a0_0x35cb29(0x1ca)}},'required':[a0_0x35cb29(0x202)]}},{'name':a0_0x35cb29(0x223),'description':a0_0x35cb29(0x1ce),'inputSchema':{'type':a0_0x35cb29(0x1fc),'properties':{'status':{'type':a0_0x35cb29(0x1d4),'enum':['working',a0_0x35cb29(0x226),a0_0x35cb29(0x224),a0_0x35cb29(0x200)]},'task':{'type':a0_0x35cb29(0x1d4),'description':'Current\x20task\x20description'},'progress':{'type':a0_0x35cb29(0x1f3),'description':a0_0x35cb29(0x231)}},'required':['status']}},{'name':a0_0x35cb29(0x216),'description':a0_0x35cb29(0x228),'inputSchema':{'type':a0_0x35cb29(0x1fc),'properties':{'alias':{'type':a0_0x35cb29(0x1d4),'description':a0_0x35cb29(0x23c)},'task':{'type':a0_0x35cb29(0x1d4),'description':'Task\x20content'},'priority':{'type':a0_0x35cb29(0x1d4),'enum':['high','normal','low'],'description':'Priority\x20(default:\x20normal)'}},'required':[a0_0x35cb29(0x1db),'task']}},{'name':a0_0x35cb29(0x22e),'description':a0_0x35cb29(0x22d),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x35cb29(0x1d4),'description':a0_0x35cb29(0x23c)},'message':{'type':a0_0x35cb29(0x1d4),'description':a0_0x35cb29(0x1dc)}},'required':[a0_0x35cb29(0x1db),'message']}},{'name':a0_0x35cb29(0x1e5),'description':a0_0x35cb29(0x23e),'inputSchema':{'type':a0_0x35cb29(0x1fc),'properties':{}}}]}));async function P(_0x267efb,_0xa61db4){const _0x4a186a=a0_0x35cb29;let _0x2b633d=await fetch(f+'/mcp',{'method':_0x4a186a(0x236),'headers':{'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x4a186a(0x254)+X}:{}},'body':JSON[_0x4a186a(0x1fa)]({'jsonrpc':_0x4a186a(0x1e4),'id':0x1,'method':'initialize','params':{'protocolVersion':_0x4a186a(0x1ed),'capabilities':{},'clientInfo':{'name':_0x4a186a(0x256),'version':_0x4a186a(0x230)}}})});if(!_0x2b633d['ok']){let _0x45c543=await _0x2b633d[_0x4a186a(0x202)]();return Y(_0x4a186a(0x24d)+_0x2b633d['status']+'\x20'+_0x45c543[_0x4a186a(0x214)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x2b633d[_0x4a186a(0x201)]};}await _0x2b633d['text']();let _0x251d95=(await(await fetch(f+'/mcp',{'method':_0x4a186a(0x236),'headers':{'Content-Type':_0x4a186a(0x1d0),'Accept':_0x4a186a(0x245),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x4a186a(0x1fa)]({'jsonrpc':_0x4a186a(0x1e4),'id':0x2,'method':_0x4a186a(0x247),'params':{'name':_0x267efb,'arguments':_0xa61db4}})}))['text']())[_0x4a186a(0x1cf)]('\x0a')['find'](_0x4ff105=>_0x4ff105['startsWith'](_0x4a186a(0x257)));if(_0x251d95){let _0x29aa16=JSON[_0x4a186a(0x1f2)](_0x251d95[_0x4a186a(0x214)](0x6));return _0x29aa16?.[_0x4a186a(0x24e)]?.['content']?.[0x0]?.['text']?JSON[_0x4a186a(0x1f2)](_0x29aa16[_0x4a186a(0x24e)][_0x4a186a(0x207)][0x0][_0x4a186a(0x202)]):_0x29aa16;}return{'ok':!0x1,'error':_0x4a186a(0x1f6)};}K[a0_0x35cb29(0x211)](a0_0x537254,async _0x299bc9=>{const _0x3e9359=a0_0x35cb29;let {name:_0x53b5c4,arguments:_0x46d491}=_0x299bc9[_0x3e9359(0x212)];if(_0x53b5c4===_0x3e9359(0x1dd)){let {task_id:_0x29dee5,text:_0x109a02,status:_0x3fd733}=_0x46d491;if(_0x3fd733===_0x3e9359(0x241)||_0x3fd733===_0x3e9359(0x1ef)||_0x3fd733===_0x3e9359(0x1ea)){let _0x331cd3=_0x3fd733===_0x3e9359(0x241)?_0x3e9359(0x250):_0x3fd733,_0xaf68fb=_0x29dee5?k['get'](_0x29dee5)||_0x3e9359(0x21c):_0x3e9359(0x21c),_0x43c08e=await P('send_reply',{'alias':_0xaf68fb,'text':_0x109a02,'in_reply_to':_0x29dee5||void 0x0,'status':_0x331cd3,'from_session':Z});if(_0x29dee5)k[_0x3e9359(0x1ee)](_0x29dee5);return{'content':[{'type':_0x3e9359(0x202),'text':JSON[_0x3e9359(0x1fa)](_0x43c08e)}]};}let _0x4a4c9d=await P(_0x3e9359(0x222),{'resume_id':w,'alias':Z,'status':_0x3fd733==='blocked'?'blocked':_0x3fd733===_0x3e9359(0x200)?_0x3e9359(0x200):_0x3e9359(0x1df),'task':_0x109a02[_0x3e9359(0x214)](0x0,0xc8),'output':_0x109a02});return{'content':[{'type':_0x3e9359(0x202),'text':JSON['stringify'](_0x4a4c9d)}]};}if(_0x53b5c4===_0x3e9359(0x223)){let {status:_0x230cc3,task:_0x1e4638,progress:_0x28ab10}=_0x46d491,_0x26caff=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x230cc3,'task':_0x1e4638,'progress':_0x28ab10});return{'content':[{'type':_0x3e9359(0x202),'text':JSON[_0x3e9359(0x1fa)](_0x26caff)}]};}if(_0x53b5c4===_0x3e9359(0x216)){let {alias:_0x52f0a4,task:_0x8245ae,priority:_0x214835}=_0x46d491,_0x100018=await P(_0x3e9359(0x248),{'alias':_0x52f0a4,'task':_0x8245ae,'priority':_0x214835||_0x3e9359(0x246),'from_session':Z});return{'content':[{'type':_0x3e9359(0x202),'text':JSON[_0x3e9359(0x1fa)](_0x100018)}]};}if(_0x53b5c4===_0x3e9359(0x22e)){let {alias:_0xb5433b,message:_0xbf0c8c}=_0x46d491,_0x5f1e47=await P('send_message',{'alias':_0xb5433b,'message':_0xbf0c8c,'from_session':Z});return{'content':[{'type':_0x3e9359(0x202),'text':JSON[_0x3e9359(0x1fa)](_0x5f1e47)}]};}if(_0x53b5c4===_0x3e9359(0x1e5)){let _0xa2316b=await P(_0x3e9359(0x235),{});return{'content':[{'type':'text','text':JSON[_0x3e9359(0x1fa)](_0xa2316b)}]};}return{'content':[{'type':'text','text':JSON[_0x3e9359(0x1fa)]({'error':_0x3e9359(0x1d1)})}]};});async function u(){const _0xf28226=a0_0x35cb29;let _0x226327=f+_0xf28226(0x1ec)+encodeURIComponent(Z),_0x220c59={};if(X)_0x220c59[_0xf28226(0x24c)]='Bearer\x20'+X;Y(_0xf28226(0x1e2)+_0x226327);while(!0x0){try{let _0x32cdfc=await fetch(_0x226327,{'headers':_0x220c59});if(!_0x32cdfc['ok']){Y(_0xf28226(0x1f7)+_0x32cdfc[_0xf28226(0x201)]+'\x20'+_0x32cdfc['statusText']),await h(0x1388);continue;}let _0x47fe66=_0x32cdfc[_0xf28226(0x1e0)][_0xf28226(0x1d5)](),_0x3c62ce=new TextDecoder(),_0x444c98='';while(!0x0){let {done:_0x3ad6a7,value:_0x38825b}=await _0x47fe66[_0xf28226(0x21a)]();if(_0x3ad6a7)break;_0x444c98+=_0x3c62ce[_0xf28226(0x255)](_0x38825b,{'stream':!0x0});let _0x4849ad=_0x444c98[_0xf28226(0x1cf)]('\x0a\x0a');_0x444c98=_0x4849ad[_0xf28226(0x1e7)]()||'';for(let _0x4e51e5 of _0x4849ad){let _0x26d7dc=_0x4e51e5[_0xf28226(0x1cf)]('\x0a')[_0xf28226(0x217)](_0x35b8aa=>_0x35b8aa[_0xf28226(0x22b)](_0xf28226(0x257)));if(!_0x26d7dc)continue;try{let _0x3a8661=JSON[_0xf28226(0x1f2)](_0x26d7dc[_0xf28226(0x214)](0x6));await S(_0x3a8661);}catch(_0x4866d1){Y(_0xf28226(0x24b)+_0x4866d1);}}}Y('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x298301){Y(_0xf28226(0x1f8)+_0x298301);}await h(0xbb8);}}async function S(_0x75015b){const _0x13c246=a0_0x35cb29;if(_0x75015b[_0x13c246(0x1de)]===_0x13c246(0x229)){Y(_0x13c246(0x1fd)+Z+'\x22');return;}if(_0x75015b['type']===_0x13c246(0x233)){if(Y(_0x13c246(0x213)+_0x75015b['from']+':\x20'+_0x75015b[_0x13c246(0x243)][_0x13c246(0x214)](0x0,0x3c)),await K[_0x13c246(0x239)]({'method':_0x13c246(0x1eb),'params':{'content':_0x75015b[_0x13c246(0x243)],'meta':{'sender':_0x75015b['from']||_0x13c246(0x21c),'sender_id':_0x13c246(0x208),'user':_0x75015b[_0x13c246(0x20d)]||'hub','priority':_0x13c246(0x246)}}}),_0x75015b[_0x13c246(0x20b)])await P(_0x13c246(0x237),{'alias':Z,'message_id':_0x75015b['message_id']});return;}if(_0x75015b[_0x13c246(0x1de)]===_0x13c246(0x205)||_0x75015b[_0x13c246(0x1de)]===_0x13c246(0x232)){Y('←\x20'+_0x75015b[_0x13c246(0x1de)]+':\x20inbox_count='+_0x75015b[_0x13c246(0x21f)]+_0x13c246(0x1cc)+(_0x75015b[_0x13c246(0x21d)]||_0x13c246(0x246)));let _0x3a0ef1=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0x3a0ef1?.['ok']&&_0x3a0ef1['messages']?.[_0x13c246(0x253)]>0x0)for(let _0x38fc16 of _0x3a0ef1[_0x13c246(0x22a)]){let _0x4174f7={'sender':_0x38fc16[_0x13c246(0x1fe)]||_0x13c246(0x21c),'sender_id':_0x13c246(0x208),'user':_0x38fc16[_0x13c246(0x1fe)]||_0x13c246(0x21c),'task_id':_0x38fc16['id'],'priority':_0x38fc16[_0x13c246(0x21d)]||_0x13c246(0x246)};k[_0x13c246(0x225)](_0x38fc16['id'],_0x38fc16[_0x13c246(0x1fe)]||_0x13c246(0x21c)),await K['notification']({'method':_0x13c246(0x1eb),'params':{'content':_0x38fc16[_0x13c246(0x207)],'meta':_0x4174f7}}),Y(_0x13c246(0x227)+_0x38fc16['id'][_0x13c246(0x214)](0x0,0x8)+_0x13c246(0x219)+_0x38fc16['from_session']+':\x20'+_0x38fc16['content'][_0x13c246(0x214)](0x0,0x3c)),await P('ack_inbox',{'alias':Z,'message_id':_0x38fc16['id']});}}}async function A(){const _0x1c459f=a0_0x35cb29;let _0x181afa=new a0_0x1135f7();await K[_0x1c459f(0x221)](_0x181afa),Y(_0x1c459f(0x1f4)),Y('starting\x20SSE\x20listener...'),u()[_0x1c459f(0x1e1)](_0x21bc94=>Y(_0x1c459f(0x23f)+_0x21bc94)),P(_0x1c459f(0x222),{'resume_id':w,'alias':Z,'status':_0x1c459f(0x226),'server':a0_0x111651(),'hostname':a0_0x111651(),'agent':_0x1c459f(0x1d9),'project_dir':process[_0x1c459f(0x204)](),'tmux_name':j||void 0x0})[_0x1c459f(0x23d)](()=>Y('registered\x20as\x20\x22'+Z+_0x1c459f(0x20e)+w[_0x1c459f(0x214)](0x0,0x8)+')'))[_0x1c459f(0x1e1)](_0x3fdd10=>Y(_0x1c459f(0x1e8)+_0x3fdd10)),setInterval(()=>{const _0x11095c=_0x1c459f;P(_0x11095c(0x222),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x111651(),'hostname':a0_0x111651(),'agent':'claude-code','project_dir':process[_0x11095c(0x204)](),'tmux_name':j||void 0x0})[_0x11095c(0x1e1)](_0x39ffc2=>Y(_0x11095c(0x1f1)+_0x39ffc2));},0x2bf20),Y(_0x1c459f(0x244));}A()[a0_0x35cb29(0x1e1)](_0x3b2740=>{const _0x52803b=a0_0x35cb29;Y(_0x52803b(0x240)+_0x3b2740),process[_0x52803b(0x20c)](0x1);});async function N(){const _0x3d7951=a0_0x35cb29;Y(_0x3d7951(0x218)),await P(_0x3d7951(0x222),{'resume_id':w,'alias':Z,'status':_0x3d7951(0x200),'task':_0x3d7951(0x1e6)})[_0x3d7951(0x1e1)](()=>{}),process[_0x3d7951(0x20c)](0x0);}process[a0_0x35cb29(0x252)]['on'](a0_0x35cb29(0x24a),()=>N()),process['on'](a0_0x35cb29(0x1d7),()=>N()),process['on']('SIGINT',()=>N());
|
|
2
|
+
const a0_0x5d4366=a0_0x1993;(function(_0x3c1ad9,_0x2d38b8){const _0x34cd5f=a0_0x1993,_0x4c6205=_0x3c1ad9();while(!![]){try{const _0x44f6e4=parseInt(_0x34cd5f(0x1bb))/0x1+-parseInt(_0x34cd5f(0x150))/0x2*(parseInt(_0x34cd5f(0x168))/0x3)+parseInt(_0x34cd5f(0x187))/0x4*(parseInt(_0x34cd5f(0x18d))/0x5)+-parseInt(_0x34cd5f(0x19b))/0x6*(parseInt(_0x34cd5f(0x183))/0x7)+-parseInt(_0x34cd5f(0x16a))/0x8*(parseInt(_0x34cd5f(0x1a3))/0x9)+-parseInt(_0x34cd5f(0x13e))/0xa+-parseInt(_0x34cd5f(0x13c))/0xb*(-parseInt(_0x34cd5f(0x179))/0xc);if(_0x44f6e4===_0x2d38b8)break;else _0x4c6205['push'](_0x4c6205['shift']());}catch(_0x439de1){_0x4c6205['push'](_0x4c6205['shift']());}}}(a0_0x5cb2,0xe159f));import{readFileSync as a0_0x18f090,existsSync as a0_0xa5000}from'fs';import{randomUUID as a0_0x23fd2b}from'crypto';import{join as a0_0x5dbc72}from'path';function a0_0x5cb2(){const _0x3158a8=['new_message','SSE\x20connection\x20error:\x20','Bearer\x20','working','36ciLmyB','error','claude-code','join','connected','failed','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','stringify','statusText','read','11439820DpgWYK','ack_inbox','startsWith','unknown\x20tool','381572IaJbYZ','commhub_send_message','catch','.claude/channels/commhub','initialize','from','15MNAPLN','warning:\x20could\x20not\x20register:\x20','get','in_progress','notification','commhub_get_all_status','session\x20disconnected','stdin','\x20CWD=','\x20from\x20','parse\x20error:\x20','Reply\x20text\x20/\x20result\x20summary','string','commhub_report_status','6FrrwcR','decode','notifications/claude/channel','application/json,\x20text/event-stream','priority','message','idle','message_id','8364501snNahd','\x20ALIAS=','Session\x20alias:\x20','from_session','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','replace','MCP\x20stdio\x20connected','inbox_count','SSE\x20connected\x20as\x20\x22','.anet','Authorization','type','params','then','result','CommHub\x20init\x20failed:\x20','cancelled','starting\x20SSE\x20listener...','text','tmux\x20display-message\x20-p\x20\x27#S\x27','parse','messages','tools/call','SSE\x20fatal:\x20','957841mzGCLr','get_all_status','new_task','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','status','application/json','\x22\x20(','split','config.json','.env','task','17800123sljARa','report_status','12015100mPmXpl','/events/','SIGTERM','Current\x20task\x20description','0.3.0','→\x20injected\x20task\x20','2.0','data:\x20','2025-03-26','alias','←\x20message\x20from\x20','connecting\x20to\x20','Target\x20session\x20alias','send_message','send_reply','stderr','SIGINT','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','2jrwUbW','POST','normal','number','end','body','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','registered\x20as\x20\x22','\x20RESUME_ID=','/mcp','high','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','blocked','commhub-channel','set','ENV:\x20URL=','low','commhub_send_task','commhub','object','hub','utf-8','exit','http://127.0.0.1:9200','4231203XQoMnK','content','8ocqtdl','Priority\x20(default:\x20normal)','ready\x20—\x20waiting\x20for\x20events','pop',']\x20[commhub]\x20','cwd','find','trim','slice','get_inbox','completed'];a0_0x5cb2=function(){return _0x3158a8;};return a0_0x5cb2();}import{hostname as a0_0x3aa290}from'os';import{execSync as a0_0x3e9645}from'child_process';import{Server as a0_0x21040f}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x550106}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x17516d,CallToolRequestSchema as a0_0x1cfbe2}from'@modelcontextprotocol/sdk/types.js';function p(_0x26bf15){const _0x575402=a0_0x1993;if(!a0_0xa5000(_0x26bf15))return;for(let _0x1c37da of a0_0x18f090(_0x26bf15,'utf-8')[_0x575402(0x138)]('\x0a')){let _0x59022e=_0x1c37da[_0x575402(0x171)]();if(!_0x59022e||_0x59022e[_0x575402(0x185)]('#'))continue;let _0x1c183c=_0x59022e['indexOf']('=');if(_0x1c183c<0x0)continue;let _0x27c7b5=_0x59022e['slice'](0x0,_0x1c183c)[_0x575402(0x171)](),_0x24c4bc=_0x59022e['slice'](_0x1c183c+0x1)[_0x575402(0x171)]()[_0x575402(0x1a8)](/^["']|["']$/g,'');if(!process.env[_0x27c7b5])process.env[_0x27c7b5]=_0x24c4bc;}}var C=process.env.HOME||'~',T=a0_0x5dbc72(C,a0_0x5d4366(0x18a));p(a0_0x5dbc72(T,a0_0x5d4366(0x13a)));var L=process[a0_0x5d4366(0x16f)]()[a0_0x5d4366(0x1a8)](/\//g,'-');p(a0_0x5dbc72(T,L,a0_0x5d4366(0x13a)));function U(){const _0x160a90=a0_0x5d4366;try{return a0_0x3e9645(_0x160a90(0x1b6),{'encoding':'utf-8','timeout':0x7d0})[_0x160a90(0x171)]();}catch{return'';}}function v(){const _0x31454d=a0_0x5d4366;try{let _0x100681=a0_0x5dbc72(C,_0x31454d(0x1ac),_0x31454d(0x139));if(a0_0xa5000(_0x100681))return JSON[_0x31454d(0x1b7)](a0_0x18f090(_0x100681,_0x31454d(0x165)));}catch{}return{};}var H=v(),f=process.env.COMMHUB_URL||H['hub']||a0_0x5d4366(0x167),j=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||j||a0_0x3aa290(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x23fd2b(),X=process.env.COMMHUB_TOKEN||H['token']||'';function Y(_0x4aad63){const _0x1cdd9e=a0_0x5d4366;let _0x2c06c2=new Date()['toTimeString']()[_0x1cdd9e(0x172)](0x0,0x8);process[_0x1cdd9e(0x14d)]['write']('['+_0x2c06c2+_0x1cdd9e(0x16e)+_0x4aad63+'\x0a');}function h(_0x51e2fd){return new Promise(_0x3328b2=>setTimeout(_0x3328b2,_0x51e2fd));}Y(a0_0x5d4366(0x15f)+f+a0_0x5d4366(0x1a4)+Z+a0_0x5d4366(0x158)+w[a0_0x5d4366(0x172)](0x0,0x8)+'...\x20TMUX='+(j||'none')+a0_0x5d4366(0x195)+process[a0_0x5d4366(0x16f)]()+'\x20PROJECT_ENV='+L);var k=new Map(),K=new a0_0x21040f({'name':a0_0x5d4366(0x15d),'version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x5d4366(0x14f),'These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.',a0_0x5d4366(0x17f),a0_0x5d4366(0x15b),a0_0x5d4366(0x1a5)+Z][a0_0x5d4366(0x17c)]('\x0a')});K['setRequestHandler'](a0_0x17516d,async()=>({'tools':[{'name':'commhub_reply','description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':'object','properties':{'task_id':{'type':'string','description':a0_0x5d4366(0x1be)},'text':{'type':a0_0x5d4366(0x199),'description':a0_0x5d4366(0x198)},'status':{'type':a0_0x5d4366(0x199),'enum':[a0_0x5d4366(0x174),a0_0x5d4366(0x17e),a0_0x5d4366(0x1b3),a0_0x5d4366(0x15c),a0_0x5d4366(0x17a),a0_0x5d4366(0x190)],'description':a0_0x5d4366(0x1a7)}},'required':[a0_0x5d4366(0x1b5)]}},{'name':a0_0x5d4366(0x19a),'description':'Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','inputSchema':{'type':a0_0x5d4366(0x163),'properties':{'status':{'type':a0_0x5d4366(0x199),'enum':[a0_0x5d4366(0x178),'idle',a0_0x5d4366(0x15c),a0_0x5d4366(0x17a)]},'task':{'type':a0_0x5d4366(0x199),'description':a0_0x5d4366(0x141)},'progress':{'type':a0_0x5d4366(0x153),'description':'Progress\x200-100'}},'required':[a0_0x5d4366(0x1bf)]}},{'name':'commhub_send_task','description':a0_0x5d4366(0x156),'inputSchema':{'type':'object','properties':{'alias':{'type':'string','description':a0_0x5d4366(0x14a)},'task':{'type':a0_0x5d4366(0x199),'description':'Task\x20content'},'priority':{'type':'string','enum':[a0_0x5d4366(0x15a),a0_0x5d4366(0x152),a0_0x5d4366(0x160)],'description':a0_0x5d4366(0x16b)}},'required':[a0_0x5d4366(0x147),a0_0x5d4366(0x13b)]}},{'name':a0_0x5d4366(0x188),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':a0_0x5d4366(0x163),'properties':{'alias':{'type':a0_0x5d4366(0x199),'description':a0_0x5d4366(0x14a)},'message':{'type':a0_0x5d4366(0x199),'description':'Message\x20content'}},'required':[a0_0x5d4366(0x147),'message']}},{'name':a0_0x5d4366(0x192),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':a0_0x5d4366(0x163),'properties':{}}}]}));async function P(_0x59d66c,_0x546b03){const _0x191fa2=a0_0x5d4366;let _0x571107=await fetch(f+'/mcp',{'method':_0x191fa2(0x151),'headers':{'Content-Type':'application/json','Accept':_0x191fa2(0x19e),...X?{'Authorization':_0x191fa2(0x177)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x191fa2(0x144),'id':0x1,'method':_0x191fa2(0x18b),'params':{'protocolVersion':_0x191fa2(0x146),'capabilities':{},'clientInfo':{'name':_0x191fa2(0x15d),'version':_0x191fa2(0x142)}}})});if(!_0x571107['ok']){let _0x539810=await _0x571107[_0x191fa2(0x1b5)]();return Y(_0x191fa2(0x1b2)+_0x571107['status']+'\x20'+_0x539810['slice'](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x571107[_0x191fa2(0x1bf)]};}await _0x571107[_0x191fa2(0x1b5)]();let _0x1c06a3=(await(await fetch(f+_0x191fa2(0x159),{'method':'POST','headers':{'Content-Type':_0x191fa2(0x1c0),'Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x191fa2(0x177)+X}:{}},'body':JSON[_0x191fa2(0x180)]({'jsonrpc':'2.0','id':0x2,'method':_0x191fa2(0x1b9),'params':{'name':_0x59d66c,'arguments':_0x546b03}})}))[_0x191fa2(0x1b5)]())[_0x191fa2(0x138)]('\x0a')[_0x191fa2(0x170)](_0x37d1ea=>_0x37d1ea[_0x191fa2(0x185)](_0x191fa2(0x145)));if(_0x1c06a3){let _0x10efed=JSON[_0x191fa2(0x1b7)](_0x1c06a3[_0x191fa2(0x172)](0x6));return _0x10efed?.[_0x191fa2(0x1b1)]?.['content']?.[0x0]?.['text']?JSON[_0x191fa2(0x1b7)](_0x10efed[_0x191fa2(0x1b1)][_0x191fa2(0x169)][0x0][_0x191fa2(0x1b5)]):_0x10efed;}return{'ok':!0x1,'error':'no\x20response'};}K['setRequestHandler'](a0_0x1cfbe2,async _0x52d625=>{const _0x2a3390=a0_0x5d4366;let {name:_0x469a2b,arguments:_0x1b2c03}=_0x52d625[_0x2a3390(0x1af)];if(_0x469a2b==='commhub_reply'){let {task_id:_0x26a190,text:_0x50d81b,status:_0x2fc5d4}=_0x1b2c03;if(_0x2fc5d4===_0x2a3390(0x174)||_0x2fc5d4===_0x2a3390(0x17e)||_0x2fc5d4===_0x2a3390(0x1b3)){let _0x1be976=_0x2fc5d4===_0x2a3390(0x174)?'replied':_0x2fc5d4,_0x1eeab4=_0x26a190?k[_0x2a3390(0x18f)](_0x26a190)||'hub':_0x2a3390(0x164),_0x56d696=await P(_0x2a3390(0x14c),{'alias':_0x1eeab4,'text':_0x50d81b,'in_reply_to':_0x26a190||void 0x0,'status':_0x1be976,'from_session':Z});if(_0x26a190)k['delete'](_0x26a190);return{'content':[{'type':'text','text':JSON[_0x2a3390(0x180)](_0x56d696)}]};}let _0x2238cf=await P(_0x2a3390(0x13d),{'resume_id':w,'alias':Z,'status':_0x2fc5d4===_0x2a3390(0x15c)?_0x2a3390(0x15c):_0x2fc5d4==='error'?_0x2a3390(0x17a):_0x2a3390(0x178),'task':_0x50d81b[_0x2a3390(0x172)](0x0,0xc8),'output':_0x50d81b});return{'content':[{'type':_0x2a3390(0x1b5),'text':JSON[_0x2a3390(0x180)](_0x2238cf)}]};}if(_0x469a2b===_0x2a3390(0x19a)){let {status:_0x5b4054,task:_0x341f2c,progress:_0x4d2586}=_0x1b2c03,_0x3bdb9e=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x5b4054,'task':_0x341f2c,'progress':_0x4d2586});return{'content':[{'type':_0x2a3390(0x1b5),'text':JSON[_0x2a3390(0x180)](_0x3bdb9e)}]};}if(_0x469a2b===_0x2a3390(0x161)){let {alias:_0x15da96,task:_0x321746,priority:_0x41c415}=_0x1b2c03,_0x314efc=await P('send_task',{'alias':_0x15da96,'task':_0x321746,'priority':_0x41c415||_0x2a3390(0x152),'from_session':Z});return{'content':[{'type':_0x2a3390(0x1b5),'text':JSON[_0x2a3390(0x180)](_0x314efc)}]};}if(_0x469a2b===_0x2a3390(0x188)){let {alias:_0x26a73f,message:_0x5d929f}=_0x1b2c03,_0xe0cb8b=await P(_0x2a3390(0x14b),{'alias':_0x26a73f,'message':_0x5d929f,'from_session':Z});return{'content':[{'type':_0x2a3390(0x1b5),'text':JSON[_0x2a3390(0x180)](_0xe0cb8b)}]};}if(_0x469a2b===_0x2a3390(0x192)){let _0x2b1f70=await P(_0x2a3390(0x1bc),{});return{'content':[{'type':'text','text':JSON[_0x2a3390(0x180)](_0x2b1f70)}]};}return{'content':[{'type':'text','text':JSON[_0x2a3390(0x180)]({'error':_0x2a3390(0x186)})}]};});async function u(){const _0xc0d2d1=a0_0x5d4366;let _0x2a34ab=f+_0xc0d2d1(0x13f)+encodeURIComponent(Z),_0x1981fc={};if(X)_0x1981fc[_0xc0d2d1(0x1ad)]='Bearer\x20'+X;Y(_0xc0d2d1(0x149)+_0x2a34ab);while(!0x0){try{let _0xd8e5c4=await fetch(_0x2a34ab,{'headers':_0x1981fc});if(!_0xd8e5c4['ok']){Y('SSE\x20error:\x20'+_0xd8e5c4[_0xc0d2d1(0x1bf)]+'\x20'+_0xd8e5c4[_0xc0d2d1(0x181)]),await h(0x1388);continue;}let _0x21282d=_0xd8e5c4[_0xc0d2d1(0x155)]['getReader'](),_0x385e30=new TextDecoder(),_0x40bc3c='';while(!0x0){let {done:_0x2e5221,value:_0x1e5d17}=await _0x21282d[_0xc0d2d1(0x182)]();if(_0x2e5221)break;_0x40bc3c+=_0x385e30[_0xc0d2d1(0x19c)](_0x1e5d17,{'stream':!0x0});let _0x54ea49=_0x40bc3c[_0xc0d2d1(0x138)]('\x0a\x0a');_0x40bc3c=_0x54ea49[_0xc0d2d1(0x16d)]()||'';for(let _0x2af316 of _0x54ea49){let _0x23c712=_0x2af316[_0xc0d2d1(0x138)]('\x0a')['find'](_0x5ba136=>_0x5ba136[_0xc0d2d1(0x185)](_0xc0d2d1(0x145)));if(!_0x23c712)continue;try{let _0x31eba5=JSON[_0xc0d2d1(0x1b7)](_0x23c712[_0xc0d2d1(0x172)](0x6));await S(_0x31eba5);}catch(_0xbaa622){Y(_0xc0d2d1(0x197)+_0xbaa622);}}}Y('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x2a03de){Y(_0xc0d2d1(0x176)+_0x2a03de);}await h(0xbb8);}}async function S(_0x871c67){const _0x161bc4=a0_0x5d4366;if(_0x871c67[_0x161bc4(0x1ae)]===_0x161bc4(0x17d)){Y(_0x161bc4(0x1ab)+Z+'\x22');return;}if(_0x871c67[_0x161bc4(0x1ae)]===_0x161bc4(0x175)){if(Y(_0x161bc4(0x148)+_0x871c67['from']+':\x20'+_0x871c67[_0x161bc4(0x1a0)][_0x161bc4(0x172)](0x0,0x3c)),await K[_0x161bc4(0x191)]({'method':_0x161bc4(0x19d),'params':{'content':_0x871c67['message'],'meta':{'sender':_0x871c67[_0x161bc4(0x18c)]||'hub','sender_id':_0x161bc4(0x162),'user':_0x871c67[_0x161bc4(0x18c)]||'hub','priority':_0x161bc4(0x152)}}}),_0x871c67[_0x161bc4(0x1a2)])await P(_0x161bc4(0x184),{'alias':Z,'message_id':_0x871c67[_0x161bc4(0x1a2)]});return;}if(_0x871c67['type']===_0x161bc4(0x1bd)||_0x871c67[_0x161bc4(0x1ae)]==='broadcast'){Y('←\x20'+_0x871c67[_0x161bc4(0x1ae)]+':\x20inbox_count='+_0x871c67[_0x161bc4(0x1aa)]+'\x20priority='+(_0x871c67[_0x161bc4(0x19f)]||'normal'));let _0x3adb95=await P(_0x161bc4(0x173),{'alias':Z,'limit':0x5});if(_0x3adb95?.['ok']&&_0x3adb95['messages']?.['length']>0x0)for(let _0x1c1d39 of _0x3adb95[_0x161bc4(0x1b8)]){let _0x51e812={'sender':_0x1c1d39[_0x161bc4(0x1a6)]||_0x161bc4(0x164),'sender_id':_0x161bc4(0x162),'user':_0x1c1d39['from_session']||_0x161bc4(0x164),'task_id':_0x1c1d39['id'],'priority':_0x1c1d39['priority']||_0x161bc4(0x152)};k[_0x161bc4(0x15e)](_0x1c1d39['id'],_0x1c1d39[_0x161bc4(0x1a6)]||'hub'),await K[_0x161bc4(0x191)]({'method':_0x161bc4(0x19d),'params':{'content':_0x1c1d39[_0x161bc4(0x169)],'meta':_0x51e812}}),Y(_0x161bc4(0x143)+_0x1c1d39['id'][_0x161bc4(0x172)](0x0,0x8)+_0x161bc4(0x196)+_0x1c1d39[_0x161bc4(0x1a6)]+':\x20'+_0x1c1d39[_0x161bc4(0x169)][_0x161bc4(0x172)](0x0,0x3c)),await P(_0x161bc4(0x184),{'alias':Z,'message_id':_0x1c1d39['id']});}}}async function A(){const _0x522b24=a0_0x5d4366;let _0x4eb357=new a0_0x550106();await K['connect'](_0x4eb357),Y(_0x522b24(0x1a9)),Y(_0x522b24(0x1b4)),u()[_0x522b24(0x189)](_0x357e36=>Y(_0x522b24(0x1ba)+_0x357e36)),P('report_status',{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x3aa290(),'hostname':a0_0x3aa290(),'agent':_0x522b24(0x17b),'project_dir':process[_0x522b24(0x16f)](),'tmux_name':j||void 0x0})[_0x522b24(0x1b0)](()=>Y(_0x522b24(0x157)+Z+_0x522b24(0x1c1)+w['slice'](0x0,0x8)+')'))[_0x522b24(0x189)](_0x5eca80=>Y(_0x522b24(0x18e)+_0x5eca80)),setInterval(()=>{const _0x186633=_0x522b24;P(_0x186633(0x13d),{'resume_id':w,'alias':Z,'status':_0x186633(0x1a1),'server':a0_0x3aa290(),'hostname':a0_0x3aa290(),'agent':_0x186633(0x17b),'project_dir':process['cwd'](),'tmux_name':j||void 0x0})['catch'](_0x3c84b5=>Y('heartbeat\x20failed:\x20'+_0x3c84b5));},0x2bf20),Y(_0x522b24(0x16c));}A()['catch'](_0x51b1c7=>{const _0x307e44=a0_0x5d4366;Y('fatal:\x20'+_0x51b1c7),process[_0x307e44(0x166)](0x1);});function a0_0x1993(_0x1005e6,_0x14f3db){_0x1005e6=_0x1005e6-0x138;const _0x5cb226=a0_0x5cb2();let _0x1993cd=_0x5cb226[_0x1005e6];return _0x1993cd;}async function N(){const _0x8c54c2=a0_0x5d4366;Y('shutting\x20down,\x20reporting\x20offline...'),await P(_0x8c54c2(0x13d),{'resume_id':w,'alias':Z,'status':'error','task':_0x8c54c2(0x193)})[_0x8c54c2(0x189)](()=>{}),process['exit'](0x0);}process[a0_0x5d4366(0x194)]['on'](a0_0x5d4366(0x154),()=>N()),process['on'](a0_0x5d4366(0x140),()=>N()),process['on'](a0_0x5d4366(0x14e),()=>N());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.0.3-preview.
|
|
3
|
+
"version": "2.0.3-preview.12",
|
|
4
4
|
"description": "AI Agent Network CLI — 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",
|