@sleep2agi/agent-network 1.3.1 → 1.3.3
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 +63 -146
- 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
|
-
const
|
|
1
|
+
function a0_0x2feb(_0x48e73a,_0x58244a){_0x48e73a=_0x48e73a-0x105;const _0x246f48=a0_0x246f();let _0x2feb73=_0x246f48[_0x48e73a];return _0x2feb73;}const a0_0x37038c=a0_0x2feb;(function(_0x4bc205,_0x56a09a){const _0x4cda42=a0_0x2feb,_0xf6e982=_0x4bc205();while(!![]){try{const _0x4a5931=parseInt(_0x4cda42(0x10c))/0x1*(parseInt(_0x4cda42(0x13a))/0x2)+parseInt(_0x4cda42(0x12f))/0x3*(-parseInt(_0x4cda42(0x13d))/0x4)+-parseInt(_0x4cda42(0x152))/0x5*(parseInt(_0x4cda42(0x10a))/0x6)+-parseInt(_0x4cda42(0x154))/0x7*(parseInt(_0x4cda42(0x114))/0x8)+parseInt(_0x4cda42(0x119))/0x9+parseInt(_0x4cda42(0x10d))/0xa*(parseInt(_0x4cda42(0x15e))/0xb)+parseInt(_0x4cda42(0x15a))/0xc*(parseInt(_0x4cda42(0x115))/0xd);if(_0x4a5931===_0x56a09a)break;else _0xf6e982['push'](_0xf6e982['shift']());}catch(_0x4c41cf){_0xf6e982['push'](_0xf6e982['shift']());}}}(a0_0x246f,0x1e5b2));import{EventEmitter as a0_0x4064cf}from'events';import{hostname as a0_0x25a890}from'os';class T extends a0_0x4064cf{[a0_0x37038c(0x157)];[a0_0x37038c(0x139)];[a0_0x37038c(0x138)];[a0_0x37038c(0x151)];['resumeId'];['heartbeatInterval'];[a0_0x37038c(0x14f)];[a0_0x37038c(0x125)];['sseAbort'];['running']=!0x1;constructor(_0x15e7f6){const _0x15c2e6=a0_0x37038c;super();if(this[_0x15c2e6(0x157)]=_0x15e7f6[_0x15c2e6(0x157)][_0x15c2e6(0x140)](/\/$/,''),this[_0x15c2e6(0x139)]=_0x15e7f6[_0x15c2e6(0x139)],this['token']=_0x15e7f6[_0x15c2e6(0x138)],this[_0x15c2e6(0x151)]=_0x15e7f6[_0x15c2e6(0x151)]||_0x15c2e6(0x106),this['resumeId']='sdk-'+_0x15e7f6[_0x15c2e6(0x139)]+'-'+Date['now']()['toString'](0x24),this['heartbeatInterval']=_0x15e7f6['heartbeatInterval']??0x2bf20,this[_0x15c2e6(0x14f)]=_0x15e7f6[_0x15c2e6(0x14f)]??0xbb8,_0x15e7f6[_0x15c2e6(0x153)]!==!0x1)this[_0x15c2e6(0x13e)]();}['log'](_0x170e5c){const _0x24877e=a0_0x37038c;console[_0x24877e(0x11f)]('['+new Date()[_0x24877e(0x15c)]()[_0x24877e(0x117)](0x0,0x8)+_0x24877e(0x13c)+this[_0x24877e(0x139)]+']\x20'+_0x170e5c);}async[a0_0x37038c(0x10e)](_0x5f5ad5,_0x2ad581){const _0x22898c=a0_0x37038c;let _0x122b79={'Content-Type':_0x22898c(0x123),'Accept':'application/json,\x20text/event-stream'};if(this[_0x22898c(0x138)])_0x122b79['Authorization']=_0x22898c(0x107)+this['token'];let _0xfced41=await(await fetch(this[_0x22898c(0x157)]+_0x22898c(0x145),{'method':_0x22898c(0x113),'headers':_0x122b79,'body':JSON[_0x22898c(0x12d)]({'jsonrpc':_0x22898c(0x110),'id':Date['now'](),'method':_0x22898c(0x14e),'params':{'name':_0x5f5ad5,'arguments':_0x2ad581}})}))['text'](),_0x1da0da=_0xfced41[_0x22898c(0x135)](/data: (.+)/),_0x2ebc90=_0x1da0da?JSON['parse'](_0x1da0da[0x1]):JSON[_0x22898c(0x127)](_0xfced41),_0xa5864c=_0x2ebc90?.[_0x22898c(0x128)]?.['content']?.[0x0]?.[_0x22898c(0x122)];return _0xa5864c?JSON[_0x22898c(0x127)](_0xa5864c):_0x2ebc90;}async[a0_0x37038c(0x13e)](){const _0x4478be=a0_0x37038c;if(this[_0x4478be(0x124)])return;this[_0x4478be(0x124)]=!0x0,await this[_0x4478be(0x12a)](_0x4478be(0x11a)),this[_0x4478be(0x11f)](_0x4478be(0x116)),this[_0x4478be(0x125)]=setInterval(()=>{const _0x27ccab=_0x4478be;this[_0x27ccab(0x12a)](_0x27ccab(0x11a))[_0x27ccab(0x12b)](_0x19c6e0=>this[_0x27ccab(0x11f)]('heartbeat\x20failed:\x20'+_0x19c6e0[_0x27ccab(0x147)]));},this[_0x4478be(0x14b)]),this[_0x4478be(0x141)]();}async['disconnect'](){const _0x4bd338=a0_0x37038c;if(this[_0x4bd338(0x124)]=!0x1,this[_0x4bd338(0x108)]?.[_0x4bd338(0x14a)](),this['heartbeatTimer'])clearInterval(this['heartbeatTimer']);await this[_0x4bd338(0x12a)](_0x4bd338(0x120))['catch'](()=>{}),this[_0x4bd338(0x11f)](_0x4bd338(0x150));}async[a0_0x37038c(0x12e)](_0x5652db,_0x29f6b1,_0x3afcd8=a0_0x37038c(0x144)){const _0xecb75d=a0_0x37038c;return this['call'](_0xecb75d(0x158),{'alias':_0x5652db,'task':_0x29f6b1,'priority':_0x3afcd8,'from_session':this[_0xecb75d(0x139)]});}async[a0_0x37038c(0x147)](_0x16511e,_0x34c746){const _0x33df1a=a0_0x37038c;return this['call'](_0x33df1a(0x132),{'alias':_0x16511e,'message':_0x34c746,'from_session':this[_0x33df1a(0x139)]});}async[a0_0x37038c(0x14c)](_0x3603f6,_0x34bbd7,_0xa2f467=a0_0x37038c(0x14d)){const _0x1be251=a0_0x37038c;return this[_0x1be251(0x10e)](_0x1be251(0x14c),{'task_id':_0x3603f6,'text':_0x34bbd7,'status':_0xa2f467});}async['status'](_0x866911,_0x260101){const _0xd0050=a0_0x37038c;return this[_0xd0050(0x10e)](_0xd0050(0x118),{'resume_id':this['resumeId'],'alias':this[_0xd0050(0x139)],'status':_0x866911,'server':a0_0x25a890(),'hostname':a0_0x25a890(),'agent':this['agent'],'project_dir':process['cwd'](),..._0x260101});}async[a0_0x37038c(0x11c)](){const _0x2920b9=a0_0x37038c;return this[_0x2920b9(0x10e)]('get_all_status',{});}async[a0_0x37038c(0x10b)](_0x46bad1,_0x355da6){const _0x3b9e5b=a0_0x37038c;return this[_0x3b9e5b(0x10e)](_0x3b9e5b(0x10b),{'message':_0x46bad1,'filter_server':_0x355da6?.['server'],'filter_status':_0x355da6?.[_0x3b9e5b(0x12a)]});}async[a0_0x37038c(0x141)](){const _0x4282fe=a0_0x37038c;let _0x2d45cf=encodeURIComponent(this['alias']),_0x5ca8e7=this[_0x4282fe(0x157)]+_0x4282fe(0x105)+_0x2d45cf,_0x39a7d7=this[_0x4282fe(0x14f)];while(this[_0x4282fe(0x124)]){try{this[_0x4282fe(0x108)]=new AbortController();let _0x4d24e6={'Accept':_0x4282fe(0x10f)};if(this['token'])_0x4d24e6[_0x4282fe(0x130)]=_0x4282fe(0x107)+this['token'];let _0x44fb06=await fetch(_0x5ca8e7,{'headers':_0x4d24e6,'signal':this[_0x4282fe(0x108)][_0x4282fe(0x12c)]});if(!_0x44fb06['ok']||!_0x44fb06['body']){this[_0x4282fe(0x11f)]('SSE\x20failed:\x20'+_0x44fb06['status']),await this[_0x4282fe(0x15d)](_0x39a7d7),_0x39a7d7=Math[_0x4282fe(0x142)](_0x39a7d7*1.5,0xea60);continue;}_0x39a7d7=this[_0x4282fe(0x14f)];let _0xf07422=_0x44fb06[_0x4282fe(0x159)][_0x4282fe(0x126)](),_0x8c3e0d=new TextDecoder(),_0x4536aa='';while(this[_0x4282fe(0x124)]){let {done:_0x19b94e,value:_0x1385be}=await _0xf07422[_0x4282fe(0x11e)]();if(_0x19b94e)break;_0x4536aa+=_0x8c3e0d[_0x4282fe(0x121)](_0x1385be,{'stream':!0x0});let _0x4d1d63=_0x4536aa['split']('\x0a');_0x4536aa=_0x4d1d63[_0x4282fe(0x109)]()||'';for(let _0x57f908 of _0x4d1d63){if(!_0x57f908['startsWith'](_0x4282fe(0x156)))continue;try{let _0x884879=JSON['parse'](_0x57f908['slice'](0x6));if(_0x884879[_0x4282fe(0x146)]==='connected'){this[_0x4282fe(0x11f)](_0x4282fe(0x15b)),this[_0x4282fe(0x112)](_0x4282fe(0x137));continue;}if(_0x884879[_0x4282fe(0x146)]===_0x4282fe(0x149)||_0x884879[_0x4282fe(0x146)]===_0x4282fe(0x143)||_0x884879[_0x4282fe(0x146)]===_0x4282fe(0x10b))await this[_0x4282fe(0x134)]();}catch{}}}}catch(_0x58b8d5){if(_0x58b8d5[_0x4282fe(0x148)]===_0x4282fe(0x111))break;this[_0x4282fe(0x112)](_0x4282fe(0x136),_0x58b8d5),this['log'](_0x4282fe(0x13f)+_0x58b8d5[_0x4282fe(0x147)]);}if(this[_0x4282fe(0x124)])this[_0x4282fe(0x112)](_0x4282fe(0x150)),this[_0x4282fe(0x11f)](_0x4282fe(0x13b)+_0x39a7d7/0x3e8+_0x4282fe(0x11d)),await this['sleep'](_0x39a7d7),_0x39a7d7=Math[_0x4282fe(0x142)](_0x39a7d7*1.5,0xea60);}}async['processInbox'](){const _0x437f75=a0_0x37038c;try{let _0xeefd85=(await this[_0x437f75(0x10e)]('get_inbox',{'alias':this[_0x437f75(0x139)],'limit':0xa}))?.[_0x437f75(0x129)]||[];for(let _0x2faa10 of _0xeefd85)await this['call'](_0x437f75(0x155),{'alias':this[_0x437f75(0x139)],'message_id':_0x2faa10['id']}),this[_0x437f75(0x11f)]('←\x20'+_0x2faa10['from_session']+':\x20'+_0x2faa10[_0x437f75(0x131)][_0x437f75(0x117)](0x0,0x3c)),this['emit'](_0x437f75(0x133),_0x2faa10),this[_0x437f75(0x112)](_0x437f75(0x147),_0x2faa10);}catch(_0x4a93e8){this['log'](_0x437f75(0x11b)+_0x4a93e8[_0x437f75(0x147)]);}}[a0_0x37038c(0x15d)](_0x5078c2){return new Promise(_0x3cb973=>setTimeout(_0x3cb973,_0x5078c2));}}var $=T;export{$ as default,T as CommHub};function a0_0x246f(){const _0x5c7cd4=['77SUCTjU','/events/','sdk','Bearer\x20','sseAbort','pop','18LMcYgh','broadcast','24666vBMUGu','30610YJSLeI','call','text/event-stream','2.0','AbortError','emit','POST','16GxAezU','169gCCmpk','registered','slice','report_status','1253943RTGrRK','idle','inbox\x20error:\x20','getAllStatus','s...','read','log','offline','decode','text','application/json','running','heartbeatTimer','getReader','parse','result','messages','status','catch','signal','stringify','send','608253fieqVV','Authorization','content','send_message','task','processInbox','match','error','connected','token','alias','8xOUjNl','SSE\x20reconnecting\x20in\x20',']\x20[commhub:','4udvFif','connect','SSE\x20error:\x20','replace','connectSSE','min','new_message','normal','/mcp','type','message','name','new_task','abort','heartbeatInterval','reply','completed','tools/call','reconnectDelay','disconnected','agent','331810tzXCQA','autoConnect','404551AQZMYC','ack_inbox','data:\x20','url','send_task','body','352932ShsXJH','SSE\x20connected','toTimeString','sleep'];a0_0x246f=function(){return _0x5c7cd4;};return a0_0x246f();}
|
package/dist/src/node-server.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
|
-
const a0_0x7bd10b=a0_0x3ee5;(function(_0x2e8592,_0x293fc5){const _0x1c784c=a0_0x3ee5,_0x4f98e9=_0x2e8592();while(!![]){try{const _0x1abba0=parseInt(_0x1c784c(0xd0))/0x1+parseInt(_0x1c784c(0xcf))/0x2*(-parseInt(_0x1c784c(0xf9))/0x3)+-parseInt(_0x1c784c(0xa7))/0x4*(-parseInt(_0x1c784c(0xc4))/0x5)+-parseInt(_0x1c784c(0x100))/0x6*(-parseInt(_0x1c784c(0xf5))/0x7)+parseInt(_0x1c784c(0xdc))/0x8*(-parseInt(_0x1c784c(0xb8))/0x9)+-parseInt(_0x1c784c(0xb5))/0xa*(parseInt(_0x1c784c(0xe5))/0xb)+parseInt(_0x1c784c(0x10e))/0xc;if(_0x1abba0===_0x293fc5)break;else _0x4f98e9['push'](_0x4f98e9['shift']());}catch(_0xe91d71){_0x4f98e9['push'](_0x4f98e9['shift']());}}}(a0_0x4377,0xab46d));import{readFileSync as a0_0x299b2d,existsSync as a0_0x148ace}from'fs';import{join as a0_0x3c1be8}from'path';import{hostname as a0_0x3437a5}from'os';import{execSync as a0_0x2ac74b}from'child_process';import{Server as a0_0x308cee}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x470543}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x3f8cdb,CallToolRequestSchema as a0_0x4b6470}from'@modelcontextprotocol/sdk/types.js';function h(_0xd4e24a){const _0x520342=a0_0x3ee5;if(!a0_0x148ace(_0xd4e24a))return;for(let _0xe95ed of a0_0x299b2d(_0xd4e24a,_0x520342(0x10b))[_0x520342(0x10d)]('\x0a')){let _0x431acb=_0xe95ed[_0x520342(0xfa)]();if(!_0x431acb||_0x431acb[_0x520342(0xca)]('#'))continue;let _0xddd449=_0x431acb[_0x520342(0x109)]('=');if(_0xddd449<0x0)continue;let _0x2fb32d=_0x431acb[_0x520342(0xff)](0x0,_0xddd449)[_0x520342(0xfa)](),_0x8be3c9=_0x431acb['slice'](_0xddd449+0x1)[_0x520342(0xfa)]()[_0x520342(0xef)](/^["']|["']$/g,'');if(!process.env[_0x2fb32d])process.env[_0x2fb32d]=_0x8be3c9;}}var R=process.env.HOME||'~',p=a0_0x3c1be8(R,a0_0x7bd10b(0x96));h(a0_0x3c1be8(p,a0_0x7bd10b(0x97)));var C=process[a0_0x7bd10b(0x10f)]()[a0_0x7bd10b(0xef)](/\//g,'-');h(a0_0x3c1be8(p,C,a0_0x7bd10b(0x97)));function _(){const _0x40c106=a0_0x7bd10b;try{return a0_0x2ac74b(_0x40c106(0xb6),{'encoding':_0x40c106(0x10b),'timeout':0x7d0})[_0x40c106(0xfa)]();}catch{return'';}}function E(){const _0x2dbd1f=a0_0x7bd10b;try{let _0x5cb1a9=a0_0x3c1be8(R,_0x2dbd1f(0x101),_0x2dbd1f(0xf7));if(a0_0x148ace(_0x5cb1a9))return JSON['parse'](a0_0x299b2d(_0x5cb1a9,_0x2dbd1f(0x10b)));}catch{}return{};}var T=E(),k=process.env.COMMHUB_URL||T[a0_0x7bd10b(0xf0)]||'http://127.0.0.1:9200',q=process.env.COMMHUB_TMUX||_(),Z=process.env.COMMHUB_ALIAS||q||a0_0x3437a5(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x7bd10b(0xe6)](),X=process.env.COMMHUB_TOKEN||T[a0_0x7bd10b(0xce)]||'';function V(_0x4fd1dc){const _0x3285ad=a0_0x7bd10b;let _0x18f0ba=new Date()[_0x3285ad(0xbb)]()[_0x3285ad(0xff)](0x0,0x8);process['stderr'][_0x3285ad(0xb7)]('['+_0x18f0ba+_0x3285ad(0xee)+_0x4fd1dc+'\x0a');}function O(_0x21fdd0){return new Promise(_0x2dd5c4=>setTimeout(_0x2dd5c4,_0x21fdd0));}V(a0_0x7bd10b(0xd8)+k+'\x20ALIAS='+Z+a0_0x7bd10b(0xf4)+w[a0_0x7bd10b(0xff)](0x0,0x8)+'...\x20TMUX='+(q||a0_0x7bd10b(0xdd))+a0_0x7bd10b(0xd6)+process['cwd']()+a0_0x7bd10b(0xd5)+C);var K=new a0_0x308cee({'name':a0_0x7bd10b(0x9b),'version':a0_0x7bd10b(0xae)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x7bd10b(0xba),'These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x7bd10b(0x8e),a0_0x7bd10b(0x95)+Z][a0_0x7bd10b(0xc1)]('\x0a')});function a0_0x4377(){const _0x3ef04c=['broadcast','POST','commhub','working','Task\x20status','idle','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','/events/','notifications/claude/channel','warning:\x20could\x20not\x20register:\x20','statusText','SSE\x20fatal:\x20','body','Session\x20alias:\x20','.claude/channels/commhub','.env','initialize','parse','messages','commhub-channel','data:\x20','registered\x20as\x20\x22','SSE\x20connection\x20error:\x20','\x20priority=','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','heartbeat\x20failed:\x20','application/json','commhub_send_task','result','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','Priority\x20(default:\x20normal)','1384hPNUcg','find','fatal:\x20','type','send_task','commhub_get_all_status','message_id','0.3.0','commhub_reply','content','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','priority','SSE\x20error:\x20','Progress\x200-100','770470glTpfK','tmux\x20display-message\x20-p\x20\x27#S\x27','write','10089621LxOKQp','new_task','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','toTimeString','completed','starting\x20SSE\x20listener...','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','error','end','join','Target\x20session\x20alias','notification','9865vYMnwK','commhub_report_status','get_all_status','report_status','from_session','Authorization','startsWith','status','get_inbox','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','token','166REvHbf','742018MAfUev','Current\x20task\x20description','ack_inbox','catch','commhub_send_message','\x20PROJECT_ENV=','\x20CWD=','from','ENV:\x20URL=','normal','←\x20message\x20from\x20',':\x20inbox_count=','8ayJXxX','none','pop','exit','session\x20disconnected','shutting\x20down,\x20reporting\x20offline...','stringify','alias','connecting\x20to\x20','11qJDEDG','randomUUID','SIGTERM','number','SSE\x20stream\x20ended,\x20reconnecting...','tools/call','application/json,\x20text/event-stream','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','task',']\x20[commhub]\x20','replace','hub','then','SIGINT','/mcp','\x20RESUME_ID=','2930571kMZijt','setRequestHandler','config.json','high','31389EGEFOm','trim','blocked','string','2.0','Reply\x20text\x20/\x20result\x20summary','slice','18npAXlP','.anet','CommHub\x20init\x20failed:\x20','no\x20response','getReader','parse\x20error:\x20','unknown\x20tool','object','length','indexOf','params','utf-8','text','split','1049508tOWfMw','cwd'];a0_0x4377=function(){return _0x3ef04c;};return a0_0x4377();}K[a0_0x7bd10b(0xf6)](a0_0x3f8cdb,async()=>({'tools':[{'name':a0_0x7bd10b(0xaf),'description':a0_0x7bd10b(0xcd),'inputSchema':{'type':a0_0x7bd10b(0x107),'properties':{'task_id':{'type':a0_0x7bd10b(0xfc),'description':a0_0x7bd10b(0xbe)},'text':{'type':'string','description':a0_0x7bd10b(0xfe)},'status':{'type':a0_0x7bd10b(0xfc),'enum':[a0_0x7bd10b(0xbc),a0_0x7bd10b(0xfb),a0_0x7bd10b(0xbf),'in_progress'],'description':a0_0x7bd10b(0x8c)}},'required':[a0_0x7bd10b(0x10c)]}},{'name':a0_0x7bd10b(0xc5),'description':a0_0x7bd10b(0xa0),'inputSchema':{'type':a0_0x7bd10b(0x107),'properties':{'status':{'type':a0_0x7bd10b(0xfc),'enum':[a0_0x7bd10b(0x8b),a0_0x7bd10b(0x8d),a0_0x7bd10b(0xfb),'error']},'task':{'type':a0_0x7bd10b(0xfc),'description':a0_0x7bd10b(0xd1)},'progress':{'type':a0_0x7bd10b(0xe8),'description':a0_0x7bd10b(0xb4)}},'required':[a0_0x7bd10b(0xcb)]}},{'name':a0_0x7bd10b(0xa3),'description':a0_0x7bd10b(0xb1),'inputSchema':{'type':a0_0x7bd10b(0x107),'properties':{'alias':{'type':a0_0x7bd10b(0xfc),'description':a0_0x7bd10b(0xc2)},'task':{'type':a0_0x7bd10b(0xfc),'description':'Task\x20content'},'priority':{'type':a0_0x7bd10b(0xfc),'enum':[a0_0x7bd10b(0xf8),a0_0x7bd10b(0xd9),'low'],'description':a0_0x7bd10b(0xa6)}},'required':[a0_0x7bd10b(0xe3),a0_0x7bd10b(0xed)]}},{'name':a0_0x7bd10b(0xd4),'description':a0_0x7bd10b(0xec),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x7bd10b(0xfc),'description':a0_0x7bd10b(0xc2)},'message':{'type':a0_0x7bd10b(0xfc),'description':'Message\x20content'}},'required':[a0_0x7bd10b(0xe3),'message']}},{'name':a0_0x7bd10b(0xac),'description':a0_0x7bd10b(0xa5),'inputSchema':{'type':a0_0x7bd10b(0x107),'properties':{}}}]}));async function P(_0x175755,_0x1cbe7f){const _0x17572c=a0_0x7bd10b;let _0x5154a4=await fetch(k+_0x17572c(0xf3),{'method':_0x17572c(0x89),'headers':{'Content-Type':_0x17572c(0xa2),'Accept':_0x17572c(0xeb),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x17572c(0xfd),'id':0x1,'method':_0x17572c(0x98),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x17572c(0x9b),'version':_0x17572c(0xae)}}})});if(!_0x5154a4['ok']){let _0x31020b=await _0x5154a4[_0x17572c(0x10c)]();return V(_0x17572c(0x102)+_0x5154a4[_0x17572c(0xcb)]+'\x20'+_0x31020b[_0x17572c(0xff)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x5154a4[_0x17572c(0xcb)]};}await _0x5154a4[_0x17572c(0x10c)]();let _0x39941b=(await(await fetch(k+_0x17572c(0xf3),{'method':'POST','headers':{'Content-Type':'application/json','Accept':_0x17572c(0xeb),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x17572c(0xe2)]({'jsonrpc':'2.0','id':0x2,'method':_0x17572c(0xea),'params':{'name':_0x175755,'arguments':_0x1cbe7f}})}))[_0x17572c(0x10c)]())[_0x17572c(0x10d)]('\x0a')[_0x17572c(0xa8)](_0x5af26c=>_0x5af26c[_0x17572c(0xca)]('data:\x20'));if(_0x39941b){let _0x276a04=JSON['parse'](_0x39941b[_0x17572c(0xff)](0x6));return _0x276a04?.['result']?.['content']?.[0x0]?.[_0x17572c(0x10c)]?JSON[_0x17572c(0x99)](_0x276a04[_0x17572c(0xa4)][_0x17572c(0xb0)][0x0]['text']):_0x276a04;}return{'ok':!0x1,'error':_0x17572c(0x103)};}K[a0_0x7bd10b(0xf6)](a0_0x4b6470,async _0x3da9bb=>{const _0x443782=a0_0x7bd10b;let {name:_0x3606f1,arguments:_0x12ba41}=_0x3da9bb[_0x443782(0x10a)];if(_0x3606f1===_0x443782(0xaf)){let {task_id:_0x2c5ebc,text:_0x4d4b33,status:_0x5cc139}=_0x12ba41;if(_0x5cc139==='completed'){let _0xe528c1=await P('report_completion',{'alias':Z,'task':_0x2c5ebc||_0x443782(0xed),'result':_0x4d4b33});return{'content':[{'type':'text','text':JSON[_0x443782(0xe2)](_0xe528c1)}]};}let _0x38f1de=await P(_0x443782(0xc7),{'resume_id':w,'alias':Z,'status':_0x5cc139==='blocked'?'blocked':_0x5cc139===_0x443782(0xbf)?_0x443782(0xbf):_0x443782(0x8b),'task':_0x4d4b33[_0x443782(0xff)](0x0,0xc8),'output':_0x4d4b33});return{'content':[{'type':_0x443782(0x10c),'text':JSON['stringify'](_0x38f1de)}]};}if(_0x3606f1==='commhub_report_status'){let {status:_0xc2f31b,task:_0x575460,progress:_0x3a0205}=_0x12ba41,_0x4debd5=await P(_0x443782(0xc7),{'resume_id':w,'alias':Z,'status':_0xc2f31b,'task':_0x575460,'progress':_0x3a0205});return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)](_0x4debd5)}]};}if(_0x3606f1===_0x443782(0xa3)){let {alias:_0x44cf4c,task:_0x4c6a22,priority:_0x3df392}=_0x12ba41,_0x18f429=await P(_0x443782(0xab),{'alias':_0x44cf4c,'task':_0x4c6a22,'priority':_0x3df392||_0x443782(0xd9),'from_session':Z});return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)](_0x18f429)}]};}if(_0x3606f1==='commhub_send_message'){let {alias:_0x3b6376,message:_0x5be07d}=_0x12ba41,_0x1e32da=await P('send_message',{'alias':_0x3b6376,'message':_0x5be07d,'from_session':Z});return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)](_0x1e32da)}]};}if(_0x3606f1===_0x443782(0xac)){let _0xc9ba9a=await P(_0x443782(0xc6),{});return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)](_0xc9ba9a)}]};}return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)]({'error':_0x443782(0x106)})}]};});async function c(){const _0x1b7c83=a0_0x7bd10b;let _0x3b8c60=k+_0x1b7c83(0x8f)+encodeURIComponent(Z),_0x2202e3={};if(X)_0x2202e3[_0x1b7c83(0xc9)]='Bearer\x20'+X;V(_0x1b7c83(0xe4)+_0x3b8c60);while(!0x0){try{let _0x5f2962=await fetch(_0x3b8c60,{'headers':_0x2202e3});if(!_0x5f2962['ok']){V(_0x1b7c83(0xb3)+_0x5f2962[_0x1b7c83(0xcb)]+'\x20'+_0x5f2962[_0x1b7c83(0x92)]),await O(0x1388);continue;}let _0x48f9b2=_0x5f2962[_0x1b7c83(0x94)][_0x1b7c83(0x104)](),_0x51b7e0=new TextDecoder(),_0x309a1c='';while(!0x0){let {done:_0x2d6f28,value:_0x1d1988}=await _0x48f9b2['read']();if(_0x2d6f28)break;_0x309a1c+=_0x51b7e0['decode'](_0x1d1988,{'stream':!0x0});let _0x3e0ab8=_0x309a1c[_0x1b7c83(0x10d)]('\x0a\x0a');_0x309a1c=_0x3e0ab8[_0x1b7c83(0xde)]()||'';for(let _0x4f7786 of _0x3e0ab8){let _0x1c6370=_0x4f7786['split']('\x0a')[_0x1b7c83(0xa8)](_0x26c7ba=>_0x26c7ba[_0x1b7c83(0xca)](_0x1b7c83(0x9c)));if(!_0x1c6370)continue;try{let _0x587b7b=JSON[_0x1b7c83(0x99)](_0x1c6370[_0x1b7c83(0xff)](0x6));await v(_0x587b7b);}catch(_0xb5c068){V(_0x1b7c83(0x105)+_0xb5c068);}}}V(_0x1b7c83(0xe9));}catch(_0x188bf5){V(_0x1b7c83(0x9e)+_0x188bf5);}await O(0xbb8);}}function a0_0x3ee5(_0x14e395,_0x187862){_0x14e395=_0x14e395-0x89;const _0x43774e=a0_0x4377();let _0x3ee5cf=_0x43774e[_0x14e395];return _0x3ee5cf;}async function v(_0x87bb49){const _0x301510=a0_0x7bd10b;if(_0x87bb49[_0x301510(0xaa)]==='connected'){V('SSE\x20connected\x20as\x20\x22'+Z+'\x22');return;}if(_0x87bb49['type']==='new_message'){if(V(_0x301510(0xda)+_0x87bb49[_0x301510(0xd7)]+':\x20'+_0x87bb49['message'][_0x301510(0xff)](0x0,0x3c)),await K[_0x301510(0xc3)]({'method':_0x301510(0x90),'params':{'content':_0x87bb49['message'],'meta':{'sender':_0x87bb49[_0x301510(0xd7)]||_0x301510(0xf0),'sender_id':'commhub','user':_0x87bb49['from']||_0x301510(0xf0),'priority':_0x301510(0xd9)}}}),_0x87bb49[_0x301510(0xad)])await P(_0x301510(0xd2),{'alias':Z,'message_id':_0x87bb49[_0x301510(0xad)]});return;}if(_0x87bb49[_0x301510(0xaa)]===_0x301510(0xb9)||_0x87bb49[_0x301510(0xaa)]===_0x301510(0x110)){V('←\x20'+_0x87bb49['type']+_0x301510(0xdb)+_0x87bb49['inbox_count']+_0x301510(0x9f)+(_0x87bb49['priority']||_0x301510(0xd9)));let _0x436d96=await P(_0x301510(0xcc),{'alias':Z,'limit':0x5});if(_0x436d96?.['ok']&&_0x436d96[_0x301510(0x9a)]?.[_0x301510(0x108)]>0x0)for(let _0x4ca086 of _0x436d96['messages']){let _0x24515a={'sender':_0x4ca086[_0x301510(0xc8)]||_0x301510(0xf0),'sender_id':_0x301510(0x8a),'user':_0x4ca086[_0x301510(0xc8)]||_0x301510(0xf0),'task_id':_0x4ca086['id'],'priority':_0x4ca086[_0x301510(0xb2)]||_0x301510(0xd9)};await K[_0x301510(0xc3)]({'method':_0x301510(0x90),'params':{'content':_0x4ca086['content'],'meta':_0x24515a}}),V('→\x20injected\x20task\x20'+_0x4ca086['id']['slice'](0x0,0x8)+'\x20from\x20'+_0x4ca086[_0x301510(0xc8)]+':\x20'+_0x4ca086[_0x301510(0xb0)]['slice'](0x0,0x3c)),await P(_0x301510(0xd2),{'alias':Z,'message_id':_0x4ca086['id']});}}}async function u(){const _0x3aa64c=a0_0x7bd10b;let _0xe120d8=new a0_0x470543();await K['connect'](_0xe120d8),V('MCP\x20stdio\x20connected'),V(_0x3aa64c(0xbd)),c()[_0x3aa64c(0xd3)](_0x165a7b=>V(_0x3aa64c(0x93)+_0x165a7b)),P('report_status',{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x3437a5(),'hostname':a0_0x3437a5(),'agent':'claude-code','project_dir':process[_0x3aa64c(0x10f)](),'tmux_name':q||void 0x0})[_0x3aa64c(0xf1)](()=>V(_0x3aa64c(0x9d)+Z+'\x22\x20('+w[_0x3aa64c(0xff)](0x0,0x8)+')'))[_0x3aa64c(0xd3)](_0x3787ac=>V(_0x3aa64c(0x91)+_0x3787ac)),setInterval(()=>{const _0xbab2cd=_0x3aa64c;P(_0xbab2cd(0xc7),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x3437a5(),'hostname':a0_0x3437a5(),'agent':'claude-code','project_dir':process[_0xbab2cd(0x10f)](),'tmux_name':q||void 0x0})[_0xbab2cd(0xd3)](_0x518105=>V(_0xbab2cd(0xa1)+_0x518105));},0x2bf20),V('ready\x20—\x20waiting\x20for\x20events');}u()[a0_0x7bd10b(0xd3)](_0x35ecd3=>{const _0x5c5ce6=a0_0x7bd10b;V(_0x5c5ce6(0xa9)+_0x35ecd3),process['exit'](0x1);});async function f(){const _0x44d0c6=a0_0x7bd10b;V(_0x44d0c6(0xe1)),await P(_0x44d0c6(0xc7),{'resume_id':w,'alias':Z,'status':_0x44d0c6(0xbf),'task':_0x44d0c6(0xe0)})[_0x44d0c6(0xd3)](()=>{}),process[_0x44d0c6(0xdf)](0x0);}process['stdin']['on'](a0_0x7bd10b(0xc0),()=>f()),process['on'](a0_0x7bd10b(0xe7),()=>f()),process['on'](a0_0x7bd10b(0xf2),()=>f());
|
|
2
|
+
const a0_0xcfd401=a0_0x1510;(function(_0xdfe7ae,_0x96838b){const _0x1a785c=a0_0x1510,_0x4df9e2=_0xdfe7ae();while(!![]){try{const _0x1253a3=parseInt(_0x1a785c(0x119))/0x1*(-parseInt(_0x1a785c(0x111))/0x2)+parseInt(_0x1a785c(0x131))/0x3*(parseInt(_0x1a785c(0xfc))/0x4)+parseInt(_0x1a785c(0xe7))/0x5*(-parseInt(_0x1a785c(0xe9))/0x6)+-parseInt(_0x1a785c(0xd8))/0x7*(-parseInt(_0x1a785c(0x11a))/0x8)+parseInt(_0x1a785c(0x109))/0x9*(-parseInt(_0x1a785c(0x130))/0xa)+-parseInt(_0x1a785c(0xc8))/0xb+parseInt(_0x1a785c(0xee))/0xc;if(_0x1253a3===_0x96838b)break;else _0x4df9e2['push'](_0x4df9e2['shift']());}catch(_0x3c3156){_0x4df9e2['push'](_0x4df9e2['shift']());}}}(a0_0x4f67,0x1fe21));import{readFileSync as a0_0x3b720b,existsSync as a0_0x1a66c5}from'fs';import{join as a0_0xf6d1eb}from'path';import{hostname as a0_0x481b8d}from'os';function a0_0x1510(_0x19ab6f,_0x1bd3d6){_0x19ab6f=_0x19ab6f-0xc0;const _0x4f670c=a0_0x4f67();let _0x151089=_0x4f670c[_0x19ab6f];return _0x151089;}import{execSync as a0_0x33dd5d}from'child_process';import{Server as a0_0x58faa2}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x7af21f}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x8b0b3a,CallToolRequestSchema as a0_0x468cf3}from'@modelcontextprotocol/sdk/types.js';function h(_0x154c0a){const _0xb4d5d3=a0_0x1510;if(!a0_0x1a66c5(_0x154c0a))return;for(let _0x5924c8 of a0_0x3b720b(_0x154c0a,_0xb4d5d3(0xfb))[_0xb4d5d3(0xf4)]('\x0a')){let _0x8b7b90=_0x5924c8[_0xb4d5d3(0x147)]();if(!_0x8b7b90||_0x8b7b90[_0xb4d5d3(0xda)]('#'))continue;let _0x26a437=_0x8b7b90[_0xb4d5d3(0x13c)]('=');if(_0x26a437<0x0)continue;let _0xc97ae=_0x8b7b90[_0xb4d5d3(0xf8)](0x0,_0x26a437)['trim'](),_0x2fe6bc=_0x8b7b90[_0xb4d5d3(0xf8)](_0x26a437+0x1)[_0xb4d5d3(0x147)]()[_0xb4d5d3(0xe0)](/^["']|["']$/g,'');if(!process.env[_0xc97ae])process.env[_0xc97ae]=_0x2fe6bc;}}var R=process.env.HOME||'~',p=a0_0xf6d1eb(R,a0_0xcfd401(0x14b));h(a0_0xf6d1eb(p,a0_0xcfd401(0x139)));var C=process[a0_0xcfd401(0x142)]()[a0_0xcfd401(0xe0)](/\//g,'-');h(a0_0xf6d1eb(p,C,a0_0xcfd401(0x139)));function _(){try{return a0_0x33dd5d('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':'utf-8','timeout':0x7d0})['trim']();}catch{return'';}}function E(){const _0x3cad2e=a0_0xcfd401;try{let _0xcd43d8=a0_0xf6d1eb(R,_0x3cad2e(0x143),_0x3cad2e(0x13f));if(a0_0x1a66c5(_0xcd43d8))return JSON[_0x3cad2e(0x117)](a0_0x3b720b(_0xcd43d8,_0x3cad2e(0xfb)));}catch{}return{};}var T=E(),k=process.env.COMMHUB_URL||T[a0_0xcfd401(0x107)]||'http://127.0.0.1:9200',q=process.env.COMMHUB_TMUX||_(),Z=process.env.COMMHUB_ALIAS||q||a0_0x481b8d(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0xcfd401(0x106)](),X=process.env.COMMHUB_TOKEN||T[a0_0xcfd401(0xde)]||'';function V(_0x4ebd53){const _0x3ef3f0=a0_0xcfd401;let _0x2b1042=new Date()[_0x3ef3f0(0xdd)]()[_0x3ef3f0(0xf8)](0x0,0x8);process[_0x3ef3f0(0x141)]['write']('['+_0x2b1042+_0x3ef3f0(0x120)+_0x4ebd53+'\x0a');}function O(_0x36ab0e){return new Promise(_0x42efc6=>setTimeout(_0x42efc6,_0x36ab0e));}V(a0_0xcfd401(0x116)+k+'\x20ALIAS='+Z+a0_0xcfd401(0x112)+w[a0_0xcfd401(0xf8)](0x0,0x8)+a0_0xcfd401(0x11e)+(q||'none')+'\x20CWD='+process[a0_0xcfd401(0x142)]()+a0_0xcfd401(0x102)+C);var K=new a0_0x58faa2({'name':a0_0xcfd401(0xcd),'version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0xcfd401(0x11b),'These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.',a0_0xcfd401(0xec),a0_0xcfd401(0x11c),a0_0xcfd401(0x114)+Z][a0_0xcfd401(0xe3)]('\x0a')});function a0_0x4f67(){const _0x5cfd5d=['\x20from\x20','status','data:\x20','messages','0.3.0','2.0','content','error','get_inbox','application/json,\x20text/event-stream','exit','/mcp','decode','2314130IUSNAB','39981BhamSG','Priority\x20(default:\x20normal)','stringify','catch','Authorization','starting\x20SSE\x20listener...','idle','in_progress','.env','SIGTERM','object','indexOf','application/json','parse\x20error:\x20','config.json','MCP\x20stdio\x20connected','stderr','cwd','.anet','pop','type','POST','trim','heartbeat\x20failed:\x20','Reply\x20text\x20/\x20result\x20summary','high','.claude/channels/commhub','initialize','statusText','commhub_report_status','Message\x20content','number','notifications/claude/channel','then','find','commhub_get_all_status','result','report_status','2090517fVqebs','task','from','CommHub\x20init\x20failed:\x20','commhub_send_message','commhub-channel','commhub_reply','SSE\x20error:\x20','tools/call','unknown\x20tool','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','normal','priority','setRequestHandler','message','text','35NmQUBE','Task\x20status','startsWith','broadcast','session\x20disconnected','toTimeString','token','end','replace','send_message','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','join','commhub_send_task','Bearer\x20','Current\x20task\x20description','179710livENl','from_session','12NFsWoF','fatal:\x20','get_all_status','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','\x20priority=','4486548CCDkQR','string','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','connected','claude-code','blocked','split','message_id','commhub','→\x20injected\x20task\x20','slice','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','SSE\x20connection\x20error:\x20','utf-8','28znwpNc','\x22\x20(','ack_inbox','SSE\x20connected\x20as\x20\x22','ready\x20—\x20waiting\x20for\x20events','alias','\x20PROJECT_ENV=','stdin','inbox_count','SSE\x20stream\x20ended,\x20reconnecting...','randomUUID','hub','Progress\x200-100','9KxrSps','working','new_message','Target\x20session\x20alias','completed','body','connecting\x20to\x20','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','36GEPqPN','\x20RESUME_ID=','getReader','Session\x20alias:\x20','new_task','ENV:\x20URL=','parse','/events/','2017AgfUFi','308920TOhWzs','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','send_task','...\x20TMUX=','low',']\x20[commhub]\x20','notification','2025-03-26'];a0_0x4f67=function(){return _0x5cfd5d;};return a0_0x4f67();}K[a0_0xcfd401(0xd5)](a0_0x8b0b3a,async()=>({'tools':[{'name':a0_0xcfd401(0xce),'description':a0_0xcfd401(0xf9),'inputSchema':{'type':a0_0xcfd401(0x13b),'properties':{'task_id':{'type':a0_0xcfd401(0xef),'description':a0_0xcfd401(0x110)},'text':{'type':a0_0xcfd401(0xef),'description':a0_0xcfd401(0x149)},'status':{'type':a0_0xcfd401(0xef),'enum':[a0_0xcfd401(0x10d),a0_0xcfd401(0xf3),'error',a0_0xcfd401(0x138)],'description':a0_0xcfd401(0xd9)}},'required':[a0_0xcfd401(0xd7)]}},{'name':'commhub_report_status','description':a0_0xcfd401(0xe2),'inputSchema':{'type':a0_0xcfd401(0x13b),'properties':{'status':{'type':a0_0xcfd401(0xef),'enum':['working','idle','blocked',a0_0xcfd401(0x12a)]},'task':{'type':a0_0xcfd401(0xef),'description':a0_0xcfd401(0xe6)},'progress':{'type':a0_0xcfd401(0xc1),'description':a0_0xcfd401(0x108)}},'required':[a0_0xcfd401(0x124)]}},{'name':'commhub_send_task','description':a0_0xcfd401(0xd2),'inputSchema':{'type':a0_0xcfd401(0x13b),'properties':{'alias':{'type':a0_0xcfd401(0xef),'description':a0_0xcfd401(0x10c)},'task':{'type':a0_0xcfd401(0xef),'description':'Task\x20content'},'priority':{'type':'string','enum':[a0_0xcfd401(0x14a),'normal',a0_0xcfd401(0x11f)],'description':a0_0xcfd401(0x132)}},'required':[a0_0xcfd401(0x101),a0_0xcfd401(0xc9)]}},{'name':a0_0xcfd401(0xcc),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':a0_0xcfd401(0x13b),'properties':{'alias':{'type':a0_0xcfd401(0xef),'description':a0_0xcfd401(0x10c)},'message':{'type':'string','description':a0_0xcfd401(0xc0)}},'required':[a0_0xcfd401(0x101),'message']}},{'name':a0_0xcfd401(0xc5),'description':a0_0xcfd401(0xf0),'inputSchema':{'type':a0_0xcfd401(0x13b),'properties':{}}}]}));async function P(_0x92fc5,_0x210daf){const _0x1e1cd1=a0_0xcfd401;let _0x12f049=await fetch(k+_0x1e1cd1(0x12e),{'method':_0x1e1cd1(0x146),'headers':{'Content-Type':_0x1e1cd1(0x13d),'Accept':_0x1e1cd1(0x12c),...X?{'Authorization':_0x1e1cd1(0xe5)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x1e1cd1(0x128),'id':0x1,'method':_0x1e1cd1(0x14c),'params':{'protocolVersion':_0x1e1cd1(0x122),'capabilities':{},'clientInfo':{'name':_0x1e1cd1(0xcd),'version':_0x1e1cd1(0x127)}}})});if(!_0x12f049['ok']){let _0x5e2d7d=await _0x12f049[_0x1e1cd1(0xd7)]();return V(_0x1e1cd1(0xcb)+_0x12f049[_0x1e1cd1(0x124)]+'\x20'+_0x5e2d7d[_0x1e1cd1(0xf8)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x12f049[_0x1e1cd1(0x124)]};}await _0x12f049['text']();let _0x58fce3=(await(await fetch(k+_0x1e1cd1(0x12e),{'method':_0x1e1cd1(0x146),'headers':{'Content-Type':_0x1e1cd1(0x13d),'Accept':_0x1e1cd1(0x12c),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x1e1cd1(0x133)]({'jsonrpc':'2.0','id':0x2,'method':_0x1e1cd1(0xd0),'params':{'name':_0x92fc5,'arguments':_0x210daf}})}))['text']())['split']('\x0a')[_0x1e1cd1(0xc4)](_0x2a49d7=>_0x2a49d7[_0x1e1cd1(0xda)](_0x1e1cd1(0x125)));if(_0x58fce3){let _0x14daf4=JSON[_0x1e1cd1(0x117)](_0x58fce3[_0x1e1cd1(0xf8)](0x6));return _0x14daf4?.[_0x1e1cd1(0xc6)]?.[_0x1e1cd1(0x129)]?.[0x0]?.['text']?JSON[_0x1e1cd1(0x117)](_0x14daf4[_0x1e1cd1(0xc6)]['content'][0x0]['text']):_0x14daf4;}return{'ok':!0x1,'error':'no\x20response'};}K['setRequestHandler'](a0_0x468cf3,async _0x52dd78=>{const _0x4badd0=a0_0xcfd401;let {name:_0xc93b71,arguments:_0x17d17e}=_0x52dd78['params'];if(_0xc93b71===_0x4badd0(0xce)){let {task_id:_0x2f6632,text:_0xb1c95c,status:_0x25e1fd}=_0x17d17e;if(_0x25e1fd===_0x4badd0(0x10d)){let _0x15a839=await P('report_completion',{'alias':Z,'task':_0x2f6632||_0x4badd0(0xc9),'result':_0xb1c95c});return{'content':[{'type':_0x4badd0(0xd7),'text':JSON['stringify'](_0x15a839)}]};}let _0x509dc9=await P(_0x4badd0(0xc7),{'resume_id':w,'alias':Z,'status':_0x25e1fd===_0x4badd0(0xf3)?'blocked':_0x25e1fd==='error'?_0x4badd0(0x12a):_0x4badd0(0x10a),'task':_0xb1c95c['slice'](0x0,0xc8),'output':_0xb1c95c});return{'content':[{'type':'text','text':JSON['stringify'](_0x509dc9)}]};}if(_0xc93b71===_0x4badd0(0x14e)){let {status:_0x1a547a,task:_0x113cea,progress:_0x476e01}=_0x17d17e,_0x3f64e6=await P(_0x4badd0(0xc7),{'resume_id':w,'alias':Z,'status':_0x1a547a,'task':_0x113cea,'progress':_0x476e01});return{'content':[{'type':'text','text':JSON['stringify'](_0x3f64e6)}]};}if(_0xc93b71===_0x4badd0(0xe4)){let {alias:_0x1df4b8,task:_0x37228d,priority:_0xe43e3c}=_0x17d17e,_0xbb237a=await P(_0x4badd0(0x11d),{'alias':_0x1df4b8,'task':_0x37228d,'priority':_0xe43e3c||_0x4badd0(0xd3),'from_session':Z});return{'content':[{'type':_0x4badd0(0xd7),'text':JSON[_0x4badd0(0x133)](_0xbb237a)}]};}if(_0xc93b71==='commhub_send_message'){let {alias:_0x15d3b,message:_0x4d8c8d}=_0x17d17e,_0x4321bb=await P(_0x4badd0(0xe1),{'alias':_0x15d3b,'message':_0x4d8c8d,'from_session':Z});return{'content':[{'type':_0x4badd0(0xd7),'text':JSON[_0x4badd0(0x133)](_0x4321bb)}]};}if(_0xc93b71===_0x4badd0(0xc5)){let _0x5cb328=await P(_0x4badd0(0xeb),{});return{'content':[{'type':_0x4badd0(0xd7),'text':JSON[_0x4badd0(0x133)](_0x5cb328)}]};}return{'content':[{'type':_0x4badd0(0xd7),'text':JSON[_0x4badd0(0x133)]({'error':_0x4badd0(0xd1)})}]};});async function c(){const _0x17df4a=a0_0xcfd401;let _0x6187e3=k+_0x17df4a(0x118)+encodeURIComponent(Z),_0x3a36e9={};if(X)_0x3a36e9[_0x17df4a(0x135)]=_0x17df4a(0xe5)+X;V(_0x17df4a(0x10f)+_0x6187e3);while(!0x0){try{let _0x1229fc=await fetch(_0x6187e3,{'headers':_0x3a36e9});if(!_0x1229fc['ok']){V(_0x17df4a(0xcf)+_0x1229fc[_0x17df4a(0x124)]+'\x20'+_0x1229fc[_0x17df4a(0x14d)]),await O(0x1388);continue;}let _0x1b20b3=_0x1229fc[_0x17df4a(0x10e)][_0x17df4a(0x113)](),_0xf5555=new TextDecoder(),_0x3e0845='';while(!0x0){let {done:_0x222c24,value:_0x4951f8}=await _0x1b20b3['read']();if(_0x222c24)break;_0x3e0845+=_0xf5555[_0x17df4a(0x12f)](_0x4951f8,{'stream':!0x0});let _0x3117a9=_0x3e0845['split']('\x0a\x0a');_0x3e0845=_0x3117a9[_0x17df4a(0x144)]()||'';for(let _0x4cf524 of _0x3117a9){let _0x524755=_0x4cf524['split']('\x0a')[_0x17df4a(0xc4)](_0x129534=>_0x129534[_0x17df4a(0xda)](_0x17df4a(0x125)));if(!_0x524755)continue;try{let _0x4c97ef=JSON['parse'](_0x524755[_0x17df4a(0xf8)](0x6));await v(_0x4c97ef);}catch(_0x45276f){V(_0x17df4a(0x13e)+_0x45276f);}}}V(_0x17df4a(0x105));}catch(_0x5d7e46){V(_0x17df4a(0xfa)+_0x5d7e46);}await O(0xbb8);}}async function v(_0x4c1928){const _0x2dd2ef=a0_0xcfd401;if(_0x4c1928[_0x2dd2ef(0x145)]===_0x2dd2ef(0xf1)){V(_0x2dd2ef(0xff)+Z+'\x22');return;}if(_0x4c1928['type']===_0x2dd2ef(0x10b)){if(V('←\x20message\x20from\x20'+_0x4c1928[_0x2dd2ef(0xca)]+':\x20'+_0x4c1928['message'][_0x2dd2ef(0xf8)](0x0,0x3c)),await K[_0x2dd2ef(0x121)]({'method':'notifications/claude/channel','params':{'content':_0x4c1928[_0x2dd2ef(0xd6)],'meta':{'sender':_0x4c1928[_0x2dd2ef(0xca)]||_0x2dd2ef(0x107),'sender_id':'commhub','user':_0x4c1928[_0x2dd2ef(0xca)]||_0x2dd2ef(0x107),'priority':_0x2dd2ef(0xd3)}}}),_0x4c1928[_0x2dd2ef(0xf5)])await P(_0x2dd2ef(0xfe),{'alias':Z,'message_id':_0x4c1928[_0x2dd2ef(0xf5)]});return;}if(_0x4c1928[_0x2dd2ef(0x145)]===_0x2dd2ef(0x115)||_0x4c1928[_0x2dd2ef(0x145)]===_0x2dd2ef(0xdb)){V('←\x20'+_0x4c1928[_0x2dd2ef(0x145)]+':\x20inbox_count='+_0x4c1928[_0x2dd2ef(0x104)]+_0x2dd2ef(0xed)+(_0x4c1928[_0x2dd2ef(0xd4)]||_0x2dd2ef(0xd3)));let _0xa6ce8d=await P(_0x2dd2ef(0x12b),{'alias':Z,'limit':0x5});if(_0xa6ce8d?.['ok']&&_0xa6ce8d[_0x2dd2ef(0x126)]?.['length']>0x0)for(let _0x58dbb7 of _0xa6ce8d[_0x2dd2ef(0x126)]){let _0x49bf37={'sender':_0x58dbb7[_0x2dd2ef(0xe8)]||'hub','sender_id':_0x2dd2ef(0xf6),'user':_0x58dbb7[_0x2dd2ef(0xe8)]||_0x2dd2ef(0x107),'task_id':_0x58dbb7['id'],'priority':_0x58dbb7['priority']||'normal'};await K[_0x2dd2ef(0x121)]({'method':_0x2dd2ef(0xc2),'params':{'content':_0x58dbb7[_0x2dd2ef(0x129)],'meta':_0x49bf37}}),V(_0x2dd2ef(0xf7)+_0x58dbb7['id']['slice'](0x0,0x8)+_0x2dd2ef(0x123)+_0x58dbb7['from_session']+':\x20'+_0x58dbb7[_0x2dd2ef(0x129)][_0x2dd2ef(0xf8)](0x0,0x3c)),await P(_0x2dd2ef(0xfe),{'alias':Z,'message_id':_0x58dbb7['id']});}}}async function u(){const _0x22be92=a0_0xcfd401;let _0x20574e=new a0_0x7af21f();await K['connect'](_0x20574e),V(_0x22be92(0x140)),V(_0x22be92(0x136)),c()[_0x22be92(0x134)](_0x4891c9=>V('SSE\x20fatal:\x20'+_0x4891c9)),P(_0x22be92(0xc7),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x481b8d(),'hostname':a0_0x481b8d(),'agent':'claude-code','project_dir':process[_0x22be92(0x142)](),'tmux_name':q||void 0x0})[_0x22be92(0xc3)](()=>V('registered\x20as\x20\x22'+Z+_0x22be92(0xfd)+w[_0x22be92(0xf8)](0x0,0x8)+')'))[_0x22be92(0x134)](_0x1222b7=>V('warning:\x20could\x20not\x20register:\x20'+_0x1222b7)),setInterval(()=>{const _0x2749f5=_0x22be92;P('report_status',{'resume_id':w,'alias':Z,'status':_0x2749f5(0x137),'server':a0_0x481b8d(),'hostname':a0_0x481b8d(),'agent':_0x2749f5(0xf2),'project_dir':process[_0x2749f5(0x142)](),'tmux_name':q||void 0x0})['catch'](_0x530a8d=>V(_0x2749f5(0x148)+_0x530a8d));},0x2bf20),V(_0x22be92(0x100));}u()[a0_0xcfd401(0x134)](_0x2c5d52=>{const _0x128ae4=a0_0xcfd401;V(_0x128ae4(0xea)+_0x2c5d52),process[_0x128ae4(0x12d)](0x1);});async function f(){const _0x3de507=a0_0xcfd401;V('shutting\x20down,\x20reporting\x20offline...'),await P(_0x3de507(0xc7),{'resume_id':w,'alias':Z,'status':_0x3de507(0x12a),'task':_0x3de507(0xdc)})['catch'](()=>{}),process['exit'](0x0);}process[a0_0xcfd401(0x103)]['on'](a0_0xcfd401(0xdf),()=>f()),process['on'](a0_0xcfd401(0x13a),()=>f()),process['on']('SIGINT',()=>f());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.3",
|
|
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",
|