@sleep2agi/agent-network 2.0.1-preview.3 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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_0x4b714f=a0_0x31f9;(function(_0xb142a2,_0x326491){const _0xaad45d=a0_0x31f9,_0x29ddea=_0xb142a2();while(!![]){try{const _0x3c3216=-parseInt(_0xaad45d(0x82))/0x1*(-parseInt(_0xaad45d(0xd4))/0x2)+parseInt(_0xaad45d(0x8a))/0x3+parseInt(_0xaad45d(0xcc))/0x4+-parseInt(_0xaad45d(0xb8))/0x5+-parseInt(_0xaad45d(0xbb))/0x6*(parseInt(_0xaad45d(0xd2))/0x7)+-parseInt(_0xaad45d(0xc0))/0x8*(-parseInt(_0xaad45d(0xb7))/0x9)+-parseInt(_0xaad45d(0x83))/0xa*(parseInt(_0xaad45d(0xd0))/0xb);if(_0x3c3216===_0x326491)break;else _0x29ddea['push'](_0x29ddea['shift']());}catch(_0x2c2ab6){_0x29ddea['push'](_0x29ddea['shift']());}}}(a0_0x2fb4,0x1fb9b));import{EventEmitter as a0_0x3dc274}from'events';import{hostname as a0_0x590fd8}from'os';function a0_0x31f9(_0x41a3ca,_0x3dc22a){_0x41a3ca=_0x41a3ca-0x7d;const _0x2fb453=a0_0x2fb4();let _0x31f9cf=_0x2fb453[_0x41a3ca];return _0x31f9cf;}class T extends a0_0x3dc274{[a0_0x4b714f(0xca)];[a0_0x4b714f(0x95)];[a0_0x4b714f(0xb2)];[a0_0x4b714f(0xc5)];[a0_0x4b714f(0x89)];[a0_0x4b714f(0xb4)];[a0_0x4b714f(0x9a)];['heartbeatTimer'];[a0_0x4b714f(0x88)];['running']=!0x1;constructor(_0x9dd332){const _0x46815f=a0_0x4b714f;super();if(this[_0x46815f(0xca)]=_0x9dd332['url'][_0x46815f(0x80)](/\/$/,''),this[_0x46815f(0x95)]=_0x9dd332[_0x46815f(0x95)],this[_0x46815f(0xb2)]=_0x9dd332['token'],this['agent']=_0x9dd332[_0x46815f(0xc5)]||_0x46815f(0xab),this[_0x46815f(0x89)]=_0x46815f(0xaa)+_0x9dd332[_0x46815f(0x95)]+'-'+Date[_0x46815f(0x93)]()[_0x46815f(0xd1)](0x24),this['heartbeatInterval']=_0x9dd332[_0x46815f(0xb4)]??0x2bf20,this[_0x46815f(0x9a)]=_0x9dd332[_0x46815f(0x9a)]??0xbb8,_0x9dd332[_0x46815f(0xcf)]!==!0x1)this[_0x46815f(0xa5)]();}[a0_0x4b714f(0xc6)](_0x54bdd3){const _0x19974c=a0_0x4b714f;console[_0x19974c(0xc6)]('['+new Date()[_0x19974c(0xae)]()[_0x19974c(0xb5)](0x0,0x8)+']\x20[commhub:'+this[_0x19974c(0x95)]+']\x20'+_0x54bdd3);}async[a0_0x4b714f(0x7f)](_0x5693e0,_0x30f6a9){const _0x12d743=a0_0x4b714f;let _0x10f65c={'Content-Type':_0x12d743(0x94),'Accept':'application/json,\x20text/event-stream'};if(this[_0x12d743(0xb2)])_0x10f65c['Authorization']='Bearer\x20'+this[_0x12d743(0xb2)];let _0x2d9311=await(await fetch(this[_0x12d743(0xca)]+_0x12d743(0x9c),{'method':'POST','headers':_0x10f65c,'body':JSON['stringify']({'jsonrpc':_0x12d743(0x9b),'id':Date['now'](),'method':'tools/call','params':{'name':_0x5693e0,'arguments':_0x30f6a9}})}))['text'](),_0x408393=_0x2d9311[_0x12d743(0xa7)](/data: (.+)/),_0x376e11=_0x408393?JSON['parse'](_0x408393[0x1]):JSON['parse'](_0x2d9311),_0x1ee396=_0x376e11?.[_0x12d743(0xbf)]?.['content']?.[0x0]?.[_0x12d743(0xb9)];return _0x1ee396?JSON['parse'](_0x1ee396):_0x376e11;}async[a0_0x4b714f(0xa5)](){const _0x4f2797=a0_0x4b714f;if(this[_0x4f2797(0x91)])return;this[_0x4f2797(0x91)]=!0x0,await this[_0x4f2797(0xb0)](_0x4f2797(0xc4)),this[_0x4f2797(0xc6)](_0x4f2797(0xcd)),this[_0x4f2797(0xc2)]=setInterval(()=>{const _0x420f3e=_0x4f2797;this[_0x420f3e(0xb0)](_0x420f3e(0xc4))['catch'](_0x5aa3d7=>this[_0x420f3e(0xc6)]('heartbeat\x20failed:\x20'+_0x5aa3d7[_0x420f3e(0xb1)]));},this[_0x4f2797(0xb4)]),this[_0x4f2797(0x86)]();}async[a0_0x4b714f(0xbd)](){const _0x433480=a0_0x4b714f;if(this[_0x433480(0x91)]=!0x1,this['sseAbort']?.[_0x433480(0x99)](),this[_0x433480(0xc2)])clearInterval(this[_0x433480(0xc2)]);await this[_0x433480(0xb0)](_0x433480(0x92))[_0x433480(0xa2)](()=>{}),this[_0x433480(0xc6)]('disconnected');}async[a0_0x4b714f(0xbc)](_0x4527bf,_0xd13458,_0xa0fbc9=a0_0x4b714f(0x8c)){const _0xa93bf6=a0_0x4b714f;return this[_0xa93bf6(0x7f)]('send_task',{'alias':_0x4527bf,'task':_0xd13458,'priority':_0xa0fbc9,'from_session':this['alias']});}async[a0_0x4b714f(0xb1)](_0x1c6fb4,_0x248d79){const _0x4e159e=a0_0x4b714f;return this[_0x4e159e(0x7f)](_0x4e159e(0xc9),{'alias':_0x1c6fb4,'message':_0x248d79,'from_session':this[_0x4e159e(0x95)]});}async[a0_0x4b714f(0xad)](_0x5940dc,_0x23da7f,_0x20a878=a0_0x4b714f(0x85)){return this['call']('reply',{'task_id':_0x5940dc,'text':_0x23da7f,'status':_0x20a878});}async[a0_0x4b714f(0xb0)](_0x5939b2,_0x5bd9c8){const _0x554a12=a0_0x4b714f;return this['call'](_0x554a12(0x8f),{'resume_id':this[_0x554a12(0x89)],'alias':this[_0x554a12(0x95)],'status':_0x5939b2,'server':a0_0x590fd8(),'hostname':a0_0x590fd8(),'agent':this[_0x554a12(0xc5)],'project_dir':process[_0x554a12(0xa0)](),..._0x5bd9c8});}async[a0_0x4b714f(0x8b)](){const _0x46397e=a0_0x4b714f;return this[_0x46397e(0x7f)](_0x46397e(0xc1),{});}async[a0_0x4b714f(0x9f)](_0x3e0e36,_0x86c5c0){const _0x3908ce=a0_0x4b714f;return this[_0x3908ce(0x7f)](_0x3908ce(0x9f),{'message':_0x3e0e36,'filter_server':_0x86c5c0?.[_0x3908ce(0xac)],'filter_status':_0x86c5c0?.[_0x3908ce(0xb0)]});}async[a0_0x4b714f(0x86)](){const _0x5df76d=a0_0x4b714f;let _0x451e33=encodeURIComponent(this[_0x5df76d(0x95)]),_0xcf8fc9=this[_0x5df76d(0xca)]+_0x5df76d(0x97)+_0x451e33,_0x2a9ea6=this[_0x5df76d(0x9a)];while(this['running']){try{this[_0x5df76d(0x88)]=new AbortController();let _0x4c0760={'Accept':'text/event-stream'};if(this[_0x5df76d(0xb2)])_0x4c0760[_0x5df76d(0xc3)]=_0x5df76d(0xc8)+this[_0x5df76d(0xb2)];let _0x31c7bf=await fetch(_0xcf8fc9,{'headers':_0x4c0760,'signal':this['sseAbort'][_0x5df76d(0x7e)]});if(!_0x31c7bf['ok']||!_0x31c7bf[_0x5df76d(0xc7)]){this[_0x5df76d(0xc6)](_0x5df76d(0x84)+_0x31c7bf['status']),await this['sleep'](_0x2a9ea6),_0x2a9ea6=Math[_0x5df76d(0xa6)](_0x2a9ea6*1.5,0xea60);continue;}_0x2a9ea6=this['reconnectDelay'];let _0x565b61=_0x31c7bf[_0x5df76d(0xc7)]['getReader'](),_0x5d6a4b=new TextDecoder(),_0x54faf5='';while(this[_0x5df76d(0x91)]){let {done:_0x4d6a46,value:_0x45f486}=await _0x565b61['read']();if(_0x4d6a46)break;_0x54faf5+=_0x5d6a4b[_0x5df76d(0x9d)](_0x45f486,{'stream':!0x0});let _0x534922=_0x54faf5[_0x5df76d(0x96)]('\x0a');_0x54faf5=_0x534922['pop']()||'';for(let _0x57e76e of _0x534922){if(!_0x57e76e[_0x5df76d(0x90)](_0x5df76d(0xaf)))continue;try{let _0x463cda=JSON['parse'](_0x57e76e['slice'](0x6));if(_0x463cda[_0x5df76d(0xcb)]===_0x5df76d(0xb3)){this[_0x5df76d(0xc6)]('SSE\x20connected'),this['emit'](_0x5df76d(0xb3));continue;}if(_0x463cda[_0x5df76d(0xcb)]==='new_task'||_0x463cda[_0x5df76d(0xcb)]===_0x5df76d(0x87)||_0x463cda[_0x5df76d(0xcb)]===_0x5df76d(0x9f))await this[_0x5df76d(0x9e)]();}catch{}}}}catch(_0x258e8b){if(_0x258e8b[_0x5df76d(0xa9)]===_0x5df76d(0x8e))break;this['emit'](_0x5df76d(0xa1),_0x258e8b),this[_0x5df76d(0xc6)](_0x5df76d(0xb6)+_0x258e8b['message']);}if(this['running'])this[_0x5df76d(0x98)]('disconnected'),this[_0x5df76d(0xc6)](_0x5df76d(0xa3)+_0x2a9ea6/0x3e8+_0x5df76d(0x8d)),await this[_0x5df76d(0xba)](_0x2a9ea6),_0x2a9ea6=Math[_0x5df76d(0xa6)](_0x2a9ea6*1.5,0xea60);}}async[a0_0x4b714f(0x9e)](){const _0x114e1d=a0_0x4b714f;try{let _0x2604e6=(await this[_0x114e1d(0x7f)](_0x114e1d(0xa4),{'alias':this[_0x114e1d(0x95)],'limit':0xa}))?.[_0x114e1d(0xa8)]||[];for(let _0x372ee0 of _0x2604e6)await this[_0x114e1d(0x7f)](_0x114e1d(0x7d),{'alias':this[_0x114e1d(0x95)],'message_id':_0x372ee0['id']}),this[_0x114e1d(0xc6)]('←\x20'+_0x372ee0[_0x114e1d(0xd3)]+':\x20'+_0x372ee0[_0x114e1d(0xbe)][_0x114e1d(0xb5)](0x0,0x3c)),this[_0x114e1d(0x98)](_0x114e1d(0x81),_0x372ee0),this[_0x114e1d(0x98)](_0x114e1d(0xb1),_0x372ee0);}catch(_0x47a9f1){this[_0x114e1d(0xc6)](_0x114e1d(0xce)+_0x47a9f1['message']);}}[a0_0x4b714f(0xba)](_0x3a5b88){return new Promise(_0x5a58ed=>setTimeout(_0x5a58ed,_0x3a5b88));}}function a0_0x2fb4(){const _0xa3f052=['report_status','startsWith','running','offline','now','application/json','alias','split','/events/','emit','abort','reconnectDelay','2.0','/mcp','decode','processInbox','broadcast','cwd','error','catch','SSE\x20reconnecting\x20in\x20','get_inbox','connect','min','match','messages','name','sdk-','sdk','server','reply','toTimeString','data:\x20','status','message','token','connected','heartbeatInterval','slice','SSE\x20error:\x20','9CLIqUJ','528090KcFCsb','text','sleep','18MMzrfz','send','disconnect','content','result','1113016sFmcjZ','get_all_status','heartbeatTimer','Authorization','idle','agent','log','body','Bearer\x20','send_message','url','type','143844IIToic','registered','inbox\x20error:\x20','autoConnect','13145JKuUqg','toString','346570mtCyuz','from_session','36ioTWoc','ack_inbox','signal','call','replace','task','12928ZYrzNS','820KdyGPF','SSE\x20failed:\x20','completed','connectSSE','new_message','sseAbort','resumeId','222879BcdoVS','getAllStatus','normal','s...','AbortError'];a0_0x2fb4=function(){return _0xa3f052;};return a0_0x2fb4();}var $=T;export{$ as default,T as CommHub};
|
package/dist/src/node-server.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
|
-
function a0_0x55aa(){const _0x22d5ee=['You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','init\x20failed:\x20','commhub_send_message','get_inbox','startsWith','text','shutting\x20down,\x20reporting\x20offline...','tools/call','setRequestHandler','commhub_reply','0.3.0','send_message','cancelled','messages','replied','none','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','data:\x20','inbox_count','commhub_get_all_status','high','report_status','connect','Reply\x20text\x20/\x20result\x20summary','completed','token','2845420SBxpny','\x20PROJECT_ENV=','notification','commhub_report_status','write','1579334oYPOYL','unknown\x20tool',']\x20[commhub]\x20','find','.anet','Session\x20alias:\x20','connecting\x20to\x20','SIGTERM','.claude/channels/commhub','...\x20TMUX=','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','cwd','getReader','1429887qJUOPo','normal','set','Priority\x20(default:\x20normal)','no\x20response','7273070LmsCFX','.env','error','get','replace','Task\x20content','stdin','ready\x20—\x20waiting\x20for\x20events','starting\x20SSE\x20listener...','Progress\x200-100','Message\x20content','message_id','priority','commhub','notifications/claude/channel','from','message','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','read','http://127.0.0.1:9200','\x20priority=','SSE\x20error:\x20','stringify','claude-code','Bearer\x20','idle','/events/','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','855976ywvOBK','new_message','from_session','delete','hub','status','\x20RESUME_ID=','ack_inbox','POST','alias','send_task','decode','body','stderr','toTimeString','result','tmux\x20display-message\x20-p\x20\x27#S\x27','catch','failed','parse','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','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.','2.0','commhub_send_task','object','string','fatal:\x20','content','slice','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','send_reply','586416AaCScW','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','\x20from\x20','params','trim','pop','Target\x20session\x20alias','2025-03-26','working','get_all_status','155112IecCAy','←\x20message\x20from\x20','SSE\x20fatal:\x20','session\x20disconnected','/mcp','application/json','parse\x20error:\x20','ENV:\x20URL=','utf-8','exit','blocked','split','\x20ALIAS=','SIGINT','type','length','new_task','→\x20injected\x20task\x20','task','SSE\x20connection\x20error:\x20'];a0_0x55aa=function(){return _0x22d5ee;};return a0_0x55aa();}const a0_0x478e8c=a0_0x5bab;(function(_0x1b7c71,_0x316567){const _0x4814a4=a0_0x5bab,_0x1f0b53=_0x1b7c71();while(!![]){try{const _0x2c1557=-parseInt(_0x4814a4(0x112))/0x1+parseInt(_0x4814a4(0xc4))/0x2+parseInt(_0x4814a4(0xd1))/0x3+parseInt(_0x4814a4(0xf2))/0x4+parseInt(_0x4814a4(0xbf))/0x5+-parseInt(_0x4814a4(0x11c))/0x6+-parseInt(_0x4814a4(0xd6))/0x7;if(_0x2c1557===_0x316567)break;else _0x1f0b53['push'](_0x1f0b53['shift']());}catch(_0x2e2362){_0x1f0b53['push'](_0x1f0b53['shift']());}}}(a0_0x55aa,0x61310));function a0_0x5bab(_0xaec352,_0x42427f){_0xaec352=_0xaec352-0xa3;const _0x55aa90=a0_0x55aa();let _0x5babb3=_0x55aa90[_0xaec352];return _0x5babb3;}import{readFileSync as a0_0x4e26c0,existsSync as a0_0x360c03}from'fs';import{randomUUID as a0_0x2d189c}from'crypto';import{join as a0_0x567fff}from'path';import{hostname as a0_0x2aaf56}from'os';import{execSync as a0_0xcdb53f}from'child_process';import{Server as a0_0x23e516}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x5a693c}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x230a93,CallToolRequestSchema as a0_0x292ca4}from'@modelcontextprotocol/sdk/types.js';function p(_0x4adf26){const _0x2fd762=a0_0x5bab;if(!a0_0x360c03(_0x4adf26))return;for(let _0x830c56 of a0_0x4e26c0(_0x4adf26,_0x2fd762(0x124))[_0x2fd762(0x127)]('\x0a')){let _0x13a933=_0x830c56['trim']();if(!_0x13a933||_0x13a933['startsWith']('#'))continue;let _0x5b91c9=_0x13a933['indexOf']('=');if(_0x5b91c9<0x0)continue;let _0x3235db=_0x13a933[_0x2fd762(0x10f)](0x0,_0x5b91c9)[_0x2fd762(0x116)](),_0xef2cdb=_0x13a933[_0x2fd762(0x10f)](_0x5b91c9+0x1)[_0x2fd762(0x116)]()[_0x2fd762(0xda)](/^["']|["']$/g,'');if(!process.env[_0x3235db])process.env[_0x3235db]=_0xef2cdb;}}var C=process.env.HOME||'~',T=a0_0x567fff(C,a0_0x478e8c(0xcc));p(a0_0x567fff(T,a0_0x478e8c(0xd7)));var L=process['cwd']()[a0_0x478e8c(0xda)](/\//g,'-');p(a0_0x567fff(T,L,a0_0x478e8c(0xd7)));function U(){const _0x573373=a0_0x478e8c;try{return a0_0xcdb53f(_0x573373(0x102),{'encoding':_0x573373(0x124),'timeout':0x7d0})['trim']();}catch{return'';}}function v(){const _0x31b227=a0_0x478e8c;try{let _0x588e28=a0_0x567fff(C,_0x31b227(0xc8),'config.json');if(a0_0x360c03(_0x588e28))return JSON[_0x31b227(0x105)](a0_0x4e26c0(_0x588e28,'utf-8'));}catch{}return{};}var H=v(),f=process.env.COMMHUB_URL||H['hub']||a0_0x478e8c(0xe9),j=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||j||a0_0x2aaf56(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x2d189c(),X=process.env.COMMHUB_TOKEN||H[a0_0x478e8c(0xbe)]||'';function Y(_0x7e915a){const _0x1da755=a0_0x478e8c;let _0x33902f=new Date()[_0x1da755(0x100)]()[_0x1da755(0x10f)](0x0,0x8);process[_0x1da755(0xff)][_0x1da755(0xc3)]('['+_0x33902f+_0x1da755(0xc6)+_0x7e915a+'\x0a');}function h(_0x31073d){return new Promise(_0x173d03=>setTimeout(_0x173d03,_0x31073d));}Y(a0_0x478e8c(0x123)+f+a0_0x478e8c(0x128)+Z+a0_0x478e8c(0xf8)+w[a0_0x478e8c(0x10f)](0x0,0x8)+a0_0x478e8c(0xcd)+(j||a0_0x478e8c(0xb4))+'\x20CWD='+process['cwd']()+a0_0x478e8c(0xc0)+L);var k=new Map(),K=new a0_0x23e516({'name':'commhub-channel','version':a0_0x478e8c(0xaf)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x478e8c(0xe7),a0_0x478e8c(0x106),a0_0x478e8c(0x110),a0_0x478e8c(0xa5),a0_0x478e8c(0xc9)+Z]['join']('\x0a')});K[a0_0x478e8c(0xad)](a0_0x230a93,async()=>({'tools':[{'name':a0_0x478e8c(0xae),'description':a0_0x478e8c(0xb5),'inputSchema':{'type':a0_0x478e8c(0x10b),'properties':{'task_id':{'type':a0_0x478e8c(0x10c),'description':a0_0x478e8c(0x107)},'text':{'type':a0_0x478e8c(0x10c),'description':a0_0x478e8c(0xbc)},'status':{'type':'string','enum':[a0_0x478e8c(0xbd),'failed',a0_0x478e8c(0xb1),a0_0x478e8c(0x126),a0_0x478e8c(0xd8),'in_progress'],'description':a0_0x478e8c(0xf1)}},'required':[a0_0x478e8c(0xaa)]}},{'name':a0_0x478e8c(0xc2),'description':a0_0x478e8c(0x113),'inputSchema':{'type':'object','properties':{'status':{'type':a0_0x478e8c(0x10c),'enum':['working',a0_0x478e8c(0xef),a0_0x478e8c(0x126),a0_0x478e8c(0xd8)]},'task':{'type':a0_0x478e8c(0x10c),'description':'Current\x20task\x20description'},'progress':{'type':'number','description':a0_0x478e8c(0xdf)}},'required':[a0_0x478e8c(0xf7)]}},{'name':a0_0x478e8c(0x10a),'description':a0_0x478e8c(0xce),'inputSchema':{'type':'object','properties':{'alias':{'type':'string','description':'Target\x20session\x20alias'},'task':{'type':a0_0x478e8c(0x10c),'description':a0_0x478e8c(0xdb)},'priority':{'type':'string','enum':[a0_0x478e8c(0xb9),a0_0x478e8c(0xd2),'low'],'description':a0_0x478e8c(0xd4)}},'required':[a0_0x478e8c(0xfb),a0_0x478e8c(0xa3)]}},{'name':a0_0x478e8c(0xa7),'description':a0_0x478e8c(0x108),'inputSchema':{'type':'object','properties':{'alias':{'type':'string','description':a0_0x478e8c(0x118)},'message':{'type':a0_0x478e8c(0x10c),'description':a0_0x478e8c(0xe0)}},'required':[a0_0x478e8c(0xfb),a0_0x478e8c(0xe6)]}},{'name':a0_0x478e8c(0xb8),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':'object','properties':{}}}]}));async function P(_0x3f08d8,_0x481915){const _0x3dd701=a0_0x478e8c;let _0x628bd8=await fetch(f+_0x3dd701(0x120),{'method':'POST','headers':{'Content-Type':_0x3dd701(0x121),'Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x3dd701(0xee)+X}:{}},'body':JSON[_0x3dd701(0xec)]({'jsonrpc':_0x3dd701(0x109),'id':0x1,'method':'initialize','params':{'protocolVersion':_0x3dd701(0x119),'capabilities':{},'clientInfo':{'name':'commhub-channel','version':'0.3.0'}}})});if(!_0x628bd8['ok']){let _0xce116=await _0x628bd8[_0x3dd701(0xaa)]();return Y('CommHub\x20init\x20failed:\x20'+_0x628bd8[_0x3dd701(0xf7)]+'\x20'+_0xce116[_0x3dd701(0x10f)](0x0,0x64)),{'ok':!0x1,'error':_0x3dd701(0xa6)+_0x628bd8[_0x3dd701(0xf7)]};}await _0x628bd8['text']();let _0x576ce1=(await(await fetch(f+'/mcp',{'method':_0x3dd701(0xfa),'headers':{'Content-Type':_0x3dd701(0x121),'Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x3dd701(0xee)+X}:{}},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x2,'method':_0x3dd701(0xac),'params':{'name':_0x3f08d8,'arguments':_0x481915}})}))['text']())[_0x3dd701(0x127)]('\x0a')['find'](_0x473473=>_0x473473[_0x3dd701(0xa9)](_0x3dd701(0xb6)));if(_0x576ce1){let _0x406fe6=JSON['parse'](_0x576ce1[_0x3dd701(0x10f)](0x6));return _0x406fe6?.[_0x3dd701(0x101)]?.[_0x3dd701(0x10e)]?.[0x0]?.['text']?JSON[_0x3dd701(0x105)](_0x406fe6['result']['content'][0x0][_0x3dd701(0xaa)]):_0x406fe6;}return{'ok':!0x1,'error':_0x3dd701(0xd5)};}K['setRequestHandler'](a0_0x292ca4,async _0x44d378=>{const _0x155c96=a0_0x478e8c;let {name:_0x201656,arguments:_0xd5b5e0}=_0x44d378[_0x155c96(0x115)];if(_0x201656==='commhub_reply'){let {task_id:_0x328e67,text:_0x101494,status:_0x4b116f}=_0xd5b5e0;if(_0x4b116f===_0x155c96(0xbd)||_0x4b116f===_0x155c96(0x104)||_0x4b116f===_0x155c96(0xb1)){let _0x27a162=_0x4b116f===_0x155c96(0xbd)?_0x155c96(0xb3):_0x4b116f,_0x38d818=_0x328e67?k[_0x155c96(0xd9)](_0x328e67)||_0x155c96(0xf6):'hub',_0x13e412=await P(_0x155c96(0x111),{'alias':_0x38d818,'text':_0x101494,'in_reply_to':_0x328e67||void 0x0,'status':_0x27a162,'from_session':Z});if(_0x328e67)k[_0x155c96(0xf5)](_0x328e67);return{'content':[{'type':_0x155c96(0xaa),'text':JSON[_0x155c96(0xec)](_0x13e412)}]};}let _0x3bb4b3=await P(_0x155c96(0xba),{'resume_id':w,'alias':Z,'status':_0x4b116f===_0x155c96(0x126)?_0x155c96(0x126):_0x4b116f===_0x155c96(0xd8)?'error':_0x155c96(0x11a),'task':_0x101494[_0x155c96(0x10f)](0x0,0xc8),'output':_0x101494});return{'content':[{'type':_0x155c96(0xaa),'text':JSON['stringify'](_0x3bb4b3)}]};}if(_0x201656==='commhub_report_status'){let {status:_0x273b28,task:_0x1fdaa7,progress:_0x29664f}=_0xd5b5e0,_0x209459=await P(_0x155c96(0xba),{'resume_id':w,'alias':Z,'status':_0x273b28,'task':_0x1fdaa7,'progress':_0x29664f});return{'content':[{'type':_0x155c96(0xaa),'text':JSON['stringify'](_0x209459)}]};}if(_0x201656===_0x155c96(0x10a)){let {alias:_0x519c40,task:_0x50af50,priority:_0x38ec85}=_0xd5b5e0,_0x4c841c=await P(_0x155c96(0xfc),{'alias':_0x519c40,'task':_0x50af50,'priority':_0x38ec85||_0x155c96(0xd2),'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x155c96(0xec)](_0x4c841c)}]};}if(_0x201656==='commhub_send_message'){let {alias:_0x56c10a,message:_0x30cedb}=_0xd5b5e0,_0x4205b6=await P(_0x155c96(0xb0),{'alias':_0x56c10a,'message':_0x30cedb,'from_session':Z});return{'content':[{'type':_0x155c96(0xaa),'text':JSON[_0x155c96(0xec)](_0x4205b6)}]};}if(_0x201656===_0x155c96(0xb8)){let _0x2d5c14=await P(_0x155c96(0x11b),{});return{'content':[{'type':_0x155c96(0xaa),'text':JSON['stringify'](_0x2d5c14)}]};}return{'content':[{'type':_0x155c96(0xaa),'text':JSON['stringify']({'error':_0x155c96(0xc5)})}]};});async function u(){const _0x206761=a0_0x478e8c;let _0x40fd0b=f+_0x206761(0xf0)+encodeURIComponent(Z),_0x426d7d={};if(X)_0x426d7d['Authorization']=_0x206761(0xee)+X;Y(_0x206761(0xca)+_0x40fd0b);while(!0x0){try{let _0x15dd2a=await fetch(_0x40fd0b,{'headers':_0x426d7d});if(!_0x15dd2a['ok']){Y(_0x206761(0xeb)+_0x15dd2a[_0x206761(0xf7)]+'\x20'+_0x15dd2a['statusText']),await h(0x1388);continue;}let _0x4eb9af=_0x15dd2a[_0x206761(0xfe)][_0x206761(0xd0)](),_0x12f36f=new TextDecoder(),_0x521578='';while(!0x0){let {done:_0x169d73,value:_0x41b69e}=await _0x4eb9af[_0x206761(0xe8)]();if(_0x169d73)break;_0x521578+=_0x12f36f[_0x206761(0xfd)](_0x41b69e,{'stream':!0x0});let _0x1302e4=_0x521578[_0x206761(0x127)]('\x0a\x0a');_0x521578=_0x1302e4[_0x206761(0x117)]()||'';for(let _0x1c787f of _0x1302e4){let _0x978c8c=_0x1c787f['split']('\x0a')[_0x206761(0xc7)](_0x2b0f4e=>_0x2b0f4e['startsWith'](_0x206761(0xb6)));if(!_0x978c8c)continue;try{let _0x3de157=JSON['parse'](_0x978c8c['slice'](0x6));await S(_0x3de157);}catch(_0x531286){Y(_0x206761(0x122)+_0x531286);}}}Y('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x51f466){Y(_0x206761(0xa4)+_0x51f466);}await h(0xbb8);}}async function S(_0x546ea9){const _0x331f77=a0_0x478e8c;if(_0x546ea9[_0x331f77(0x12a)]==='connected'){Y('SSE\x20connected\x20as\x20\x22'+Z+'\x22');return;}if(_0x546ea9[_0x331f77(0x12a)]===_0x331f77(0xf3)){if(Y(_0x331f77(0x11d)+_0x546ea9[_0x331f77(0xe5)]+':\x20'+_0x546ea9[_0x331f77(0xe6)][_0x331f77(0x10f)](0x0,0x3c)),await K['notification']({'method':_0x331f77(0xe4),'params':{'content':_0x546ea9['message'],'meta':{'sender':_0x546ea9[_0x331f77(0xe5)]||_0x331f77(0xf6),'sender_id':_0x331f77(0xe3),'user':_0x546ea9[_0x331f77(0xe5)]||_0x331f77(0xf6),'priority':_0x331f77(0xd2)}}}),_0x546ea9['message_id'])await P(_0x331f77(0xf9),{'alias':Z,'message_id':_0x546ea9[_0x331f77(0xe1)]});return;}if(_0x546ea9[_0x331f77(0x12a)]===_0x331f77(0x12c)||_0x546ea9[_0x331f77(0x12a)]==='broadcast'){Y('←\x20'+_0x546ea9[_0x331f77(0x12a)]+':\x20inbox_count='+_0x546ea9[_0x331f77(0xb7)]+_0x331f77(0xea)+(_0x546ea9[_0x331f77(0xe2)]||'normal'));let _0x455f12=await P(_0x331f77(0xa8),{'alias':Z,'limit':0x5});if(_0x455f12?.['ok']&&_0x455f12[_0x331f77(0xb2)]?.[_0x331f77(0x12b)]>0x0)for(let _0x33748c of _0x455f12[_0x331f77(0xb2)]){let _0x27c415={'sender':_0x33748c[_0x331f77(0xf4)]||_0x331f77(0xf6),'sender_id':_0x331f77(0xe3),'user':_0x33748c[_0x331f77(0xf4)]||'hub','task_id':_0x33748c['id'],'priority':_0x33748c[_0x331f77(0xe2)]||'normal'};k[_0x331f77(0xd3)](_0x33748c['id'],_0x33748c['from_session']||'hub'),await K[_0x331f77(0xc1)]({'method':_0x331f77(0xe4),'params':{'content':_0x33748c[_0x331f77(0x10e)],'meta':_0x27c415}}),Y(_0x331f77(0x12d)+_0x33748c['id'][_0x331f77(0x10f)](0x0,0x8)+_0x331f77(0x114)+_0x33748c[_0x331f77(0xf4)]+':\x20'+_0x33748c['content'][_0x331f77(0x10f)](0x0,0x3c)),await P(_0x331f77(0xf9),{'alias':Z,'message_id':_0x33748c['id']});}}}async function A(){const _0x4fa91f=a0_0x478e8c;let _0x5197b6=new a0_0x5a693c();await K[_0x4fa91f(0xbb)](_0x5197b6),Y('MCP\x20stdio\x20connected'),Y(_0x4fa91f(0xde)),u()[_0x4fa91f(0x103)](_0x4f5a19=>Y(_0x4fa91f(0x11e)+_0x4f5a19)),P(_0x4fa91f(0xba),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x2aaf56(),'hostname':a0_0x2aaf56(),'agent':_0x4fa91f(0xed),'project_dir':process[_0x4fa91f(0xcf)](),'tmux_name':j||void 0x0})['then'](()=>Y('registered\x20as\x20\x22'+Z+'\x22\x20('+w[_0x4fa91f(0x10f)](0x0,0x8)+')'))['catch'](_0x2044c2=>Y('warning:\x20could\x20not\x20register:\x20'+_0x2044c2)),setInterval(()=>{const _0x1c1d67=_0x4fa91f;P(_0x1c1d67(0xba),{'resume_id':w,'alias':Z,'status':_0x1c1d67(0xef),'server':a0_0x2aaf56(),'hostname':a0_0x2aaf56(),'agent':'claude-code','project_dir':process[_0x1c1d67(0xcf)](),'tmux_name':j||void 0x0})[_0x1c1d67(0x103)](_0x3fe624=>Y('heartbeat\x20failed:\x20'+_0x3fe624));},0x2bf20),Y(_0x4fa91f(0xdd));}A()[a0_0x478e8c(0x103)](_0x23ce00=>{const _0x4f79d2=a0_0x478e8c;Y(_0x4f79d2(0x10d)+_0x23ce00),process[_0x4f79d2(0x125)](0x1);});async function N(){const _0x1302e5=a0_0x478e8c;Y(_0x1302e5(0xab)),await P('report_status',{'resume_id':w,'alias':Z,'status':_0x1302e5(0xd8),'task':_0x1302e5(0x11f)})[_0x1302e5(0x103)](()=>{}),process[_0x1302e5(0x125)](0x0);}process[a0_0x478e8c(0xdc)]['on']('end',()=>N()),process['on'](a0_0x478e8c(0xcb),()=>N()),process['on'](a0_0x478e8c(0x129),()=>N());
|
|
2
|
+
function a0_0x3dcd(){const _0x258798=['unknown\x20tool','fatal:\x20','session\x20disconnected','stderr','ready\x20—\x20waiting\x20for\x20events','find','token','set','priority','commhub_get_all_status','hub','string','.anet','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','77881nQkYZX','2025-03-26','setRequestHandler','\x20priority=','completed','Session\x20alias:\x20','cwd','statusText','notifications/claude/channel','init\x20failed:\x20','Progress\x200-100','failed','end','CommHub\x20init\x20failed:\x20','send_message','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','new_task','from_session','2252215uiTtnu','then','send_reply','1352125dCKYvA','tools/call','.env','Authorization','low','alias','976679bsKwYC','6JIVBSs','parse\x20error:\x20','inbox_count','/mcp','from','SSE\x20stream\x20ended,\x20reconnecting...','\x20from\x20','replied','initialize','normal','message','new_message','Bearer\x20','warning:\x20could\x20not\x20register:\x20','toTimeString','\x20CWD=','commhub-channel','156lTyitF','8MGVfmP','message_id','text','report_status','connecting\x20to\x20','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','→\x20injected\x20task\x20','high','task','starting\x20SSE\x20listener...','send_task','decode','join','2169SyGvgU','commhub_send_task','utf-8','SSE\x20connection\x20error:\x20','working','object','cancelled','trim','14kbxDFr','http://127.0.0.1:9200','Target\x20session\x20alias','get','ack_inbox',':\x20inbox_count=','shutting\x20down,\x20reporting\x20offline...','read','ENV:\x20URL=','commhub_report_status','messages','split','data:\x20','MCP\x20stdio\x20connected','commhub_reply','←\x20message\x20from\x20','indexOf','connect','number','3656660msDUdX','parse','length','registered\x20as\x20\x22','commhub','body','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','content','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','.claude/channels/commhub','notification','0.3.0','type','application/json','idle','SSE\x20connected\x20as\x20\x22','broadcast','slice','application/json,\x20text/event-stream','replace','2.0','status','\x22\x20(','Message\x20content','50061faNput','get_inbox','stringify','connected','Priority\x20(default:\x20normal)','catch','commhub_send_message','exit','Current\x20task\x20description','error','pop','result','776JMORvp','...\x20TMUX=','SIGTERM','startsWith','SSE\x20fatal:\x20','blocked','Reply\x20text\x20/\x20result\x20summary','\x20RESUME_ID='];a0_0x3dcd=function(){return _0x258798;};return a0_0x3dcd();}const a0_0x1f9ce7=a0_0x54a9;(function(_0x530883,_0x3639f3){const _0x5e458d=a0_0x54a9,_0x37743a=_0x530883();while(!![]){try{const _0x5e2c64=-parseInt(_0x5e458d(0x1f7))/0x1*(-parseInt(_0x5e458d(0x1a9))/0x2)+parseInt(_0x5e458d(0x1d5))/0x3*(-parseInt(_0x5e458d(0x194))/0x4)+parseInt(_0x5e458d(0x17b))/0x5*(parseInt(_0x5e458d(0x182))/0x6)+parseInt(_0x5e458d(0x178))/0x7+parseInt(_0x5e458d(0x1e1))/0x8*(-parseInt(_0x5e458d(0x1a1))/0x9)+parseInt(_0x5e458d(0x1bc))/0xa+-parseInt(_0x5e458d(0x181))/0xb*(parseInt(_0x5e458d(0x193))/0xc);if(_0x5e2c64===_0x3639f3)break;else _0x37743a['push'](_0x37743a['shift']());}catch(_0x29a264){_0x37743a['push'](_0x37743a['shift']());}}}(a0_0x3dcd,0x4749b));import{readFileSync as a0_0x463374,existsSync as a0_0x2e955d}from'fs';import{randomUUID as a0_0x324806}from'crypto';function a0_0x54a9(_0x16ff67,_0x2eefb1){_0x16ff67=_0x16ff67-0x174;const _0x3dcd16=a0_0x3dcd();let _0x54a9d7=_0x3dcd16[_0x16ff67];return _0x54a9d7;}import{join as a0_0x210809}from'path';import{hostname as a0_0x1af95a}from'os';import{execSync as a0_0x50a1c4}from'child_process';import{Server as a0_0xc3be16}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x16514c}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x105bb4,CallToolRequestSchema as a0_0x3a54ff}from'@modelcontextprotocol/sdk/types.js';function p(_0x165091){const _0x5de8d9=a0_0x54a9;if(!a0_0x2e955d(_0x165091))return;for(let _0x556062 of a0_0x463374(_0x165091,_0x5de8d9(0x1a3))[_0x5de8d9(0x1b4)]('\x0a')){let _0x39db99=_0x556062[_0x5de8d9(0x1a8)]();if(!_0x39db99||_0x39db99[_0x5de8d9(0x1e4)]('#'))continue;let _0x1fe030=_0x39db99[_0x5de8d9(0x1b9)]('=');if(_0x1fe030<0x0)continue;let _0x42b07e=_0x39db99['slice'](0x0,_0x1fe030)['trim'](),_0x5ed97c=_0x39db99['slice'](_0x1fe030+0x1)[_0x5de8d9(0x1a8)]()['replace'](/^["']|["']$/g,'');if(!process.env[_0x42b07e])process.env[_0x42b07e]=_0x5ed97c;}}var C=process.env.HOME||'~',T=a0_0x210809(C,a0_0x1f9ce7(0x1c6));p(a0_0x210809(T,a0_0x1f9ce7(0x17d)));var L=process[a0_0x1f9ce7(0x1fd)]()[a0_0x1f9ce7(0x1d0)](/\//g,'-');p(a0_0x210809(T,L,a0_0x1f9ce7(0x17d)));function U(){const _0x34b48b=a0_0x1f9ce7;try{return a0_0x50a1c4('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0x34b48b(0x1a3),'timeout':0x7d0})[_0x34b48b(0x1a8)]();}catch{return'';}}function v(){const _0x2e53d1=a0_0x1f9ce7;try{let _0x2c27ca=a0_0x210809(C,_0x2e53d1(0x1f5),'config.json');if(a0_0x2e955d(_0x2c27ca))return JSON[_0x2e53d1(0x1bd)](a0_0x463374(_0x2c27ca,'utf-8'));}catch{}return{};}var H=v(),f=process.env.COMMHUB_URL||H[a0_0x1f9ce7(0x1f3)]||a0_0x1f9ce7(0x1aa),j=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||j||a0_0x1af95a(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x324806(),X=process.env.COMMHUB_TOKEN||H[a0_0x1f9ce7(0x1ef)]||'';function Y(_0x577fc3){const _0x33b244=a0_0x1f9ce7;let _0xa3ee41=new Date()[_0x33b244(0x190)]()[_0x33b244(0x1ce)](0x0,0x8);process[_0x33b244(0x1ec)]['write']('['+_0xa3ee41+']\x20[commhub]\x20'+_0x577fc3+'\x0a');}function h(_0x47c481){return new Promise(_0x8d5113=>setTimeout(_0x8d5113,_0x47c481));}Y(a0_0x1f9ce7(0x1b1)+f+'\x20ALIAS='+Z+a0_0x1f9ce7(0x1e8)+w[a0_0x1f9ce7(0x1ce)](0x0,0x8)+a0_0x1f9ce7(0x1e2)+(j||'none')+a0_0x1f9ce7(0x191)+process[a0_0x1f9ce7(0x1fd)]()+'\x20PROJECT_ENV='+L);var k=new Map(),K=new a0_0xc3be16({'name':a0_0x1f9ce7(0x192),'version':a0_0x1f9ce7(0x1c8)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x1f9ce7(0x1c5),a0_0x1f9ce7(0x175),a0_0x1f9ce7(0x1c2),'You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.',a0_0x1f9ce7(0x1fc)+Z][a0_0x1f9ce7(0x1a0)]('\x0a')});K[a0_0x1f9ce7(0x1f9)](a0_0x105bb4,async()=>({'tools':[{'name':a0_0x1f9ce7(0x1b7),'description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{'task_id':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1f6)},'text':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1e7)},'status':{'type':a0_0x1f9ce7(0x1f4),'enum':[a0_0x1f9ce7(0x1fb),'failed',a0_0x1f9ce7(0x1a7),a0_0x1f9ce7(0x1e6),a0_0x1f9ce7(0x1de),'in_progress'],'description':a0_0x1f9ce7(0x199)}},'required':[a0_0x1f9ce7(0x196)]}},{'name':'commhub_report_status','description':'Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{'status':{'type':a0_0x1f9ce7(0x1f4),'enum':[a0_0x1f9ce7(0x1a5),a0_0x1f9ce7(0x1cb),a0_0x1f9ce7(0x1e6),a0_0x1f9ce7(0x1de)]},'task':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1dd)},'progress':{'type':a0_0x1f9ce7(0x1bb),'description':a0_0x1f9ce7(0x201)}},'required':[a0_0x1f9ce7(0x1d2)]}},{'name':'commhub_send_task','description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{'alias':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1ab)},'task':{'type':a0_0x1f9ce7(0x1f4),'description':'Task\x20content'},'priority':{'type':'string','enum':[a0_0x1f9ce7(0x19b),a0_0x1f9ce7(0x18b),a0_0x1f9ce7(0x17f)],'description':a0_0x1f9ce7(0x1d9)}},'required':[a0_0x1f9ce7(0x180),a0_0x1f9ce7(0x19c)]}},{'name':a0_0x1f9ce7(0x1db),'description':a0_0x1f9ce7(0x1c3),'inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{'alias':{'type':a0_0x1f9ce7(0x1f4),'description':'Target\x20session\x20alias'},'message':{'type':a0_0x1f9ce7(0x1f4),'description':a0_0x1f9ce7(0x1d4)}},'required':[a0_0x1f9ce7(0x180),a0_0x1f9ce7(0x18c)]}},{'name':a0_0x1f9ce7(0x1f2),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':a0_0x1f9ce7(0x1a6),'properties':{}}}]}));async function P(_0xe78f65,_0x4c3afd){const _0x3296bb=a0_0x1f9ce7;let _0x1b3a82=await fetch(f+_0x3296bb(0x185),{'method':'POST','headers':{'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream',...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x3296bb(0x1d7)]({'jsonrpc':_0x3296bb(0x1d1),'id':0x1,'method':_0x3296bb(0x18a),'params':{'protocolVersion':_0x3296bb(0x1f8),'capabilities':{},'clientInfo':{'name':_0x3296bb(0x192),'version':_0x3296bb(0x1c8)}}})});if(!_0x1b3a82['ok']){let _0x199fd5=await _0x1b3a82[_0x3296bb(0x196)]();return Y(_0x3296bb(0x204)+_0x1b3a82['status']+'\x20'+_0x199fd5[_0x3296bb(0x1ce)](0x0,0x64)),{'ok':!0x1,'error':_0x3296bb(0x200)+_0x1b3a82[_0x3296bb(0x1d2)]};}await _0x1b3a82[_0x3296bb(0x196)]();let _0x5e4385=(await(await fetch(f+_0x3296bb(0x185),{'method':'POST','headers':{'Content-Type':_0x3296bb(0x1ca),'Accept':_0x3296bb(0x1cf),...X?{'Authorization':_0x3296bb(0x18e)+X}:{}},'body':JSON[_0x3296bb(0x1d7)]({'jsonrpc':_0x3296bb(0x1d1),'id':0x2,'method':_0x3296bb(0x17c),'params':{'name':_0xe78f65,'arguments':_0x4c3afd}})}))[_0x3296bb(0x196)]())[_0x3296bb(0x1b4)]('\x0a')[_0x3296bb(0x1ee)](_0x6c3d3c=>_0x6c3d3c[_0x3296bb(0x1e4)](_0x3296bb(0x1b5)));if(_0x5e4385){let _0x4de4e7=JSON[_0x3296bb(0x1bd)](_0x5e4385['slice'](0x6));return _0x4de4e7?.[_0x3296bb(0x1e0)]?.[_0x3296bb(0x1c4)]?.[0x0]?.[_0x3296bb(0x196)]?JSON[_0x3296bb(0x1bd)](_0x4de4e7[_0x3296bb(0x1e0)][_0x3296bb(0x1c4)][0x0][_0x3296bb(0x196)]):_0x4de4e7;}return{'ok':!0x1,'error':'no\x20response'};}K[a0_0x1f9ce7(0x1f9)](a0_0x3a54ff,async _0x433bb4=>{const _0x20e083=a0_0x1f9ce7;let {name:_0x321d66,arguments:_0x18857a}=_0x433bb4['params'];if(_0x321d66==='commhub_reply'){let {task_id:_0x4213ae,text:_0x179293,status:_0x3dd534}=_0x18857a;if(_0x3dd534===_0x20e083(0x1fb)||_0x3dd534===_0x20e083(0x202)||_0x3dd534===_0x20e083(0x1a7)){let _0x572835=_0x3dd534===_0x20e083(0x1fb)?_0x20e083(0x189):_0x3dd534,_0x42924d=_0x4213ae?k[_0x20e083(0x1ac)](_0x4213ae)||_0x20e083(0x1f3):_0x20e083(0x1f3),_0x3a3829=await P(_0x20e083(0x17a),{'alias':_0x42924d,'text':_0x179293,'in_reply_to':_0x4213ae||void 0x0,'status':_0x572835,'from_session':Z});if(_0x4213ae)k['delete'](_0x4213ae);return{'content':[{'type':_0x20e083(0x196),'text':JSON['stringify'](_0x3a3829)}]};}let _0x1eefb5=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x3dd534===_0x20e083(0x1e6)?_0x20e083(0x1e6):_0x3dd534===_0x20e083(0x1de)?_0x20e083(0x1de):_0x20e083(0x1a5),'task':_0x179293['slice'](0x0,0xc8),'output':_0x179293});return{'content':[{'type':_0x20e083(0x196),'text':JSON['stringify'](_0x1eefb5)}]};}if(_0x321d66===_0x20e083(0x1b2)){let {status:_0x19d056,task:_0x5c0398,progress:_0x2eab19}=_0x18857a,_0x5bd3b4=await P(_0x20e083(0x197),{'resume_id':w,'alias':Z,'status':_0x19d056,'task':_0x5c0398,'progress':_0x2eab19});return{'content':[{'type':_0x20e083(0x196),'text':JSON[_0x20e083(0x1d7)](_0x5bd3b4)}]};}if(_0x321d66===_0x20e083(0x1a2)){let {alias:_0x366c63,task:_0x39694a,priority:_0x258ef4}=_0x18857a,_0x3ab044=await P(_0x20e083(0x19e),{'alias':_0x366c63,'task':_0x39694a,'priority':_0x258ef4||'normal','from_session':Z});return{'content':[{'type':_0x20e083(0x196),'text':JSON[_0x20e083(0x1d7)](_0x3ab044)}]};}if(_0x321d66==='commhub_send_message'){let {alias:_0x19b0b5,message:_0x31591f}=_0x18857a,_0x3f64ac=await P(_0x20e083(0x174),{'alias':_0x19b0b5,'message':_0x31591f,'from_session':Z});return{'content':[{'type':_0x20e083(0x196),'text':JSON[_0x20e083(0x1d7)](_0x3f64ac)}]};}if(_0x321d66===_0x20e083(0x1f2)){let _0x46265c=await P('get_all_status',{});return{'content':[{'type':_0x20e083(0x196),'text':JSON['stringify'](_0x46265c)}]};}return{'content':[{'type':_0x20e083(0x196),'text':JSON[_0x20e083(0x1d7)]({'error':_0x20e083(0x1e9)})}]};});async function u(){const _0x1c573f=a0_0x1f9ce7;let _0x1d54ee=f+'/events/'+encodeURIComponent(Z),_0x3dc5bc={};if(X)_0x3dc5bc[_0x1c573f(0x17e)]=_0x1c573f(0x18e)+X;Y(_0x1c573f(0x198)+_0x1d54ee);while(!0x0){try{let _0x3ddc57=await fetch(_0x1d54ee,{'headers':_0x3dc5bc});if(!_0x3ddc57['ok']){Y('SSE\x20error:\x20'+_0x3ddc57['status']+'\x20'+_0x3ddc57[_0x1c573f(0x1fe)]),await h(0x1388);continue;}let _0x427994=_0x3ddc57[_0x1c573f(0x1c1)]['getReader'](),_0x3d3505=new TextDecoder(),_0x106afe='';while(!0x0){let {done:_0x2b5177,value:_0x1ccd7d}=await _0x427994[_0x1c573f(0x1b0)]();if(_0x2b5177)break;_0x106afe+=_0x3d3505[_0x1c573f(0x19f)](_0x1ccd7d,{'stream':!0x0});let _0x1ce2ae=_0x106afe[_0x1c573f(0x1b4)]('\x0a\x0a');_0x106afe=_0x1ce2ae[_0x1c573f(0x1df)]()||'';for(let _0x517f0d of _0x1ce2ae){let _0x3b1ce6=_0x517f0d[_0x1c573f(0x1b4)]('\x0a')[_0x1c573f(0x1ee)](_0x776991=>_0x776991['startsWith'](_0x1c573f(0x1b5)));if(!_0x3b1ce6)continue;try{let _0xa8773c=JSON[_0x1c573f(0x1bd)](_0x3b1ce6[_0x1c573f(0x1ce)](0x6));await S(_0xa8773c);}catch(_0x4409f2){Y(_0x1c573f(0x183)+_0x4409f2);}}}Y(_0x1c573f(0x187));}catch(_0x47017a){Y(_0x1c573f(0x1a4)+_0x47017a);}await h(0xbb8);}}async function S(_0x5e2b42){const _0x1d88a8=a0_0x1f9ce7;if(_0x5e2b42[_0x1d88a8(0x1c9)]===_0x1d88a8(0x1d8)){Y(_0x1d88a8(0x1cc)+Z+'\x22');return;}if(_0x5e2b42[_0x1d88a8(0x1c9)]===_0x1d88a8(0x18d)){if(Y(_0x1d88a8(0x1b8)+_0x5e2b42['from']+':\x20'+_0x5e2b42[_0x1d88a8(0x18c)][_0x1d88a8(0x1ce)](0x0,0x3c)),await K[_0x1d88a8(0x1c7)]({'method':_0x1d88a8(0x1ff),'params':{'content':_0x5e2b42[_0x1d88a8(0x18c)],'meta':{'sender':_0x5e2b42[_0x1d88a8(0x186)]||'hub','sender_id':'commhub','user':_0x5e2b42['from']||_0x1d88a8(0x1f3),'priority':'normal'}}}),_0x5e2b42[_0x1d88a8(0x195)])await P(_0x1d88a8(0x1ad),{'alias':Z,'message_id':_0x5e2b42[_0x1d88a8(0x195)]});return;}if(_0x5e2b42[_0x1d88a8(0x1c9)]===_0x1d88a8(0x176)||_0x5e2b42['type']===_0x1d88a8(0x1cd)){Y('←\x20'+_0x5e2b42[_0x1d88a8(0x1c9)]+_0x1d88a8(0x1ae)+_0x5e2b42[_0x1d88a8(0x184)]+_0x1d88a8(0x1fa)+(_0x5e2b42['priority']||_0x1d88a8(0x18b)));let _0x2ddbc9=await P(_0x1d88a8(0x1d6),{'alias':Z,'limit':0x5});if(_0x2ddbc9?.['ok']&&_0x2ddbc9[_0x1d88a8(0x1b3)]?.[_0x1d88a8(0x1be)]>0x0)for(let _0x53e656 of _0x2ddbc9['messages']){let _0x5aa2ca={'sender':_0x53e656[_0x1d88a8(0x177)]||'hub','sender_id':_0x1d88a8(0x1c0),'user':_0x53e656['from_session']||'hub','task_id':_0x53e656['id'],'priority':_0x53e656[_0x1d88a8(0x1f1)]||_0x1d88a8(0x18b)};k[_0x1d88a8(0x1f0)](_0x53e656['id'],_0x53e656[_0x1d88a8(0x177)]||_0x1d88a8(0x1f3)),await K[_0x1d88a8(0x1c7)]({'method':_0x1d88a8(0x1ff),'params':{'content':_0x53e656[_0x1d88a8(0x1c4)],'meta':_0x5aa2ca}}),Y(_0x1d88a8(0x19a)+_0x53e656['id']['slice'](0x0,0x8)+_0x1d88a8(0x188)+_0x53e656[_0x1d88a8(0x177)]+':\x20'+_0x53e656['content']['slice'](0x0,0x3c)),await P('ack_inbox',{'alias':Z,'message_id':_0x53e656['id']});}}}async function A(){const _0x48ecb5=a0_0x1f9ce7;let _0x28d970=new a0_0x16514c();await K[_0x48ecb5(0x1ba)](_0x28d970),Y(_0x48ecb5(0x1b6)),Y(_0x48ecb5(0x19d)),u()['catch'](_0x240d52=>Y(_0x48ecb5(0x1e5)+_0x240d52)),P(_0x48ecb5(0x197),{'resume_id':w,'alias':Z,'status':_0x48ecb5(0x1cb),'server':a0_0x1af95a(),'hostname':a0_0x1af95a(),'agent':'claude-code','project_dir':process[_0x48ecb5(0x1fd)](),'tmux_name':j||void 0x0})[_0x48ecb5(0x179)](()=>Y(_0x48ecb5(0x1bf)+Z+_0x48ecb5(0x1d3)+w['slice'](0x0,0x8)+')'))[_0x48ecb5(0x1da)](_0x2ca330=>Y(_0x48ecb5(0x18f)+_0x2ca330)),setInterval(()=>{const _0x12d09b=_0x48ecb5;P(_0x12d09b(0x197),{'resume_id':w,'alias':Z,'status':_0x12d09b(0x1cb),'server':a0_0x1af95a(),'hostname':a0_0x1af95a(),'agent':'claude-code','project_dir':process[_0x12d09b(0x1fd)](),'tmux_name':j||void 0x0})['catch'](_0x38f8d4=>Y('heartbeat\x20failed:\x20'+_0x38f8d4));},0x2bf20),Y(_0x48ecb5(0x1ed));}A()[a0_0x1f9ce7(0x1da)](_0x53ccbd=>{const _0x3269c5=a0_0x1f9ce7;Y(_0x3269c5(0x1ea)+_0x53ccbd),process['exit'](0x1);});async function N(){const _0x49f1c4=a0_0x1f9ce7;Y(_0x49f1c4(0x1af)),await P(_0x49f1c4(0x197),{'resume_id':w,'alias':Z,'status':_0x49f1c4(0x1de),'task':_0x49f1c4(0x1eb)})[_0x49f1c4(0x1da)](()=>{}),process[_0x49f1c4(0x1dc)](0x0);}process['stdin']['on'](a0_0x1f9ce7(0x203),()=>N()),process['on'](a0_0x1f9ce7(0x1e3),()=>N()),process['on']('SIGINT',()=>N());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.2",
|
|
4
4
|
"description": "AI Agent Network CLI \u2014 Create multi-agent networks with user management, network isolation, and 3 AI runtimes (Claude/Codex/MiniMax). 39 commands.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/client.js",
|