@sleep2agi/agent-network 2.0.0-preview.4 → 2.0.0-preview.5
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
|
-
const
|
|
1
|
+
function a0_0x57f7(_0x4deeee,_0x1dcb68){_0x4deeee=_0x4deeee-0xca;const _0x4166b0=a0_0x4166();let _0x57f783=_0x4166b0[_0x4deeee];return _0x57f783;}const a0_0x2be9be=a0_0x57f7;(function(_0x510038,_0x12ebbf){const _0x245a94=a0_0x57f7,_0x36c2e2=_0x510038();while(!![]){try{const _0x5cfe70=parseInt(_0x245a94(0x105))/0x1+parseInt(_0x245a94(0xee))/0x2*(parseInt(_0x245a94(0x11f))/0x3)+parseInt(_0x245a94(0x107))/0x4+-parseInt(_0x245a94(0xcc))/0x5+-parseInt(_0x245a94(0x11c))/0x6*(parseInt(_0x245a94(0xe5))/0x7)+-parseInt(_0x245a94(0xe3))/0x8+parseInt(_0x245a94(0xce))/0x9*(parseInt(_0x245a94(0xfe))/0xa);if(_0x5cfe70===_0x12ebbf)break;else _0x36c2e2['push'](_0x36c2e2['shift']());}catch(_0x205dde){_0x36c2e2['push'](_0x36c2e2['shift']());}}}(a0_0x4166,0x445c6));function a0_0x4166(){const _0x4d9001=['data:\x20','task','get_all_status','POST','registered','now','split','heartbeatInterval','sleep','body','1140430bHrcLA','message','AbortError','alias','2.0','ack_inbox','slice','484570jOCICX','abort','705036zwiHNK','signal','tools/call','type','stringify','disconnected','messages','text','log','url','resumeId','SSE\x20connected','new_task','offline','new_message','name','emit','normal','reconnectDelay','server','reply','829482MwQkyc','result','content','188127YjgKEb','call','min','pop','heartbeatTimer','2322945HMCCtC','sdk','9mzrnwt','replace','heartbeat\x20failed:\x20','get_inbox','send_message','/events/','disconnect','startsWith','status','broadcast','from_session','getAllStatus','autoConnect','completed','toTimeString','token','Authorization','SSE\x20error:\x20','catch','agent','report_status','1644600pLqexp','parse','7YJlhdZ',']\x20[commhub:','match','error','processInbox','sseAbort','s...','send','running','10dktOXS','connect','sdk-','connected','idle','connectSSE'];a0_0x4166=function(){return _0x4d9001;};return a0_0x4166();}import{EventEmitter as a0_0x44b5b1}from'events';import{hostname as a0_0x24a89d}from'os';class T extends a0_0x44b5b1{[a0_0x2be9be(0x110)];[a0_0x2be9be(0x101)];[a0_0x2be9be(0xdd)];[a0_0x2be9be(0xe1)];[a0_0x2be9be(0x111)];[a0_0x2be9be(0xfb)];['reconnectDelay'];['heartbeatTimer'];[a0_0x2be9be(0xea)];[a0_0x2be9be(0xed)]=!0x1;constructor(_0x3911b7){const _0x188837=a0_0x2be9be;super();if(this['url']=_0x3911b7[_0x188837(0x110)][_0x188837(0xcf)](/\/$/,''),this[_0x188837(0x101)]=_0x3911b7[_0x188837(0x101)],this['token']=_0x3911b7[_0x188837(0xdd)],this[_0x188837(0xe1)]=_0x3911b7[_0x188837(0xe1)]||_0x188837(0xcd),this[_0x188837(0x111)]=_0x188837(0xf0)+_0x3911b7[_0x188837(0x101)]+'-'+Date[_0x188837(0xf9)]()['toString'](0x24),this['heartbeatInterval']=_0x3911b7[_0x188837(0xfb)]??0x2bf20,this[_0x188837(0x119)]=_0x3911b7[_0x188837(0x119)]??0xbb8,_0x3911b7[_0x188837(0xda)]!==!0x1)this[_0x188837(0xef)]();}[a0_0x2be9be(0x10f)](_0x307c7f){const _0x16ce7d=a0_0x2be9be;console[_0x16ce7d(0x10f)]('['+new Date()[_0x16ce7d(0xdc)]()[_0x16ce7d(0x104)](0x0,0x8)+_0x16ce7d(0xe6)+this[_0x16ce7d(0x101)]+']\x20'+_0x307c7f);}async[a0_0x2be9be(0x120)](_0x295360,_0x59fed2){const _0x130406=a0_0x2be9be;let _0x5ebbb9={'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream'};if(this[_0x130406(0xdd)])_0x5ebbb9['Authorization']='Bearer\x20'+this[_0x130406(0xdd)];let _0x4ed7a3=await(await fetch(this[_0x130406(0x110)]+'/mcp',{'method':_0x130406(0xf7),'headers':_0x5ebbb9,'body':JSON[_0x130406(0x10b)]({'jsonrpc':_0x130406(0x102),'id':Date['now'](),'method':_0x130406(0x109),'params':{'name':_0x295360,'arguments':_0x59fed2}})}))['text'](),_0xcb45de=_0x4ed7a3[_0x130406(0xe7)](/data: (.+)/),_0x6036ba=_0xcb45de?JSON[_0x130406(0xe4)](_0xcb45de[0x1]):JSON[_0x130406(0xe4)](_0x4ed7a3),_0x38444d=_0x6036ba?.[_0x130406(0x11d)]?.['content']?.[0x0]?.[_0x130406(0x10e)];return _0x38444d?JSON[_0x130406(0xe4)](_0x38444d):_0x6036ba;}async[a0_0x2be9be(0xef)](){const _0x5f03ac=a0_0x2be9be;if(this[_0x5f03ac(0xed)])return;this['running']=!0x0,await this['status'](_0x5f03ac(0xf2)),this[_0x5f03ac(0x10f)](_0x5f03ac(0xf8)),this[_0x5f03ac(0xcb)]=setInterval(()=>{const _0x3ac22a=_0x5f03ac;this[_0x3ac22a(0xd6)](_0x3ac22a(0xf2))[_0x3ac22a(0xe0)](_0x5a1de2=>this[_0x3ac22a(0x10f)](_0x3ac22a(0xd0)+_0x5a1de2[_0x3ac22a(0xff)]));},this[_0x5f03ac(0xfb)]),this[_0x5f03ac(0xf3)]();}async[a0_0x2be9be(0xd4)](){const _0x4dcc35=a0_0x2be9be;if(this['running']=!0x1,this[_0x4dcc35(0xea)]?.[_0x4dcc35(0x106)](),this[_0x4dcc35(0xcb)])clearInterval(this[_0x4dcc35(0xcb)]);await this['status'](_0x4dcc35(0x114))[_0x4dcc35(0xe0)](()=>{}),this[_0x4dcc35(0x10f)](_0x4dcc35(0x10c));}async[a0_0x2be9be(0xec)](_0x39ae49,_0x326e62,_0x28386a=a0_0x2be9be(0x118)){const _0x3257f4=a0_0x2be9be;return this[_0x3257f4(0x120)]('send_task',{'alias':_0x39ae49,'task':_0x326e62,'priority':_0x28386a,'from_session':this[_0x3257f4(0x101)]});}async[a0_0x2be9be(0xff)](_0x2b8433,_0x17da1e){const _0x5303c3=a0_0x2be9be;return this[_0x5303c3(0x120)](_0x5303c3(0xd2),{'alias':_0x2b8433,'message':_0x17da1e,'from_session':this[_0x5303c3(0x101)]});}async[a0_0x2be9be(0x11b)](_0xaa2525,_0x34d024,_0x4e2faa=a0_0x2be9be(0xdb)){const _0x2cf995=a0_0x2be9be;return this[_0x2cf995(0x120)](_0x2cf995(0x11b),{'task_id':_0xaa2525,'text':_0x34d024,'status':_0x4e2faa});}async['status'](_0x3bb29e,_0x5aba67){const _0x144b63=a0_0x2be9be;return this['call'](_0x144b63(0xe2),{'resume_id':this[_0x144b63(0x111)],'alias':this[_0x144b63(0x101)],'status':_0x3bb29e,'server':a0_0x24a89d(),'hostname':a0_0x24a89d(),'agent':this[_0x144b63(0xe1)],'project_dir':process['cwd'](),..._0x5aba67});}async[a0_0x2be9be(0xd9)](){const _0x137b22=a0_0x2be9be;return this[_0x137b22(0x120)](_0x137b22(0xf6),{});}async[a0_0x2be9be(0xd7)](_0x5843b8,_0x2701d6){const _0x2c0380=a0_0x2be9be;return this[_0x2c0380(0x120)](_0x2c0380(0xd7),{'message':_0x5843b8,'filter_server':_0x2701d6?.[_0x2c0380(0x11a)],'filter_status':_0x2701d6?.[_0x2c0380(0xd6)]});}async[a0_0x2be9be(0xf3)](){const _0x5eae0e=a0_0x2be9be;let _0x41b9b4=encodeURIComponent(this[_0x5eae0e(0x101)]),_0x276e4f=this[_0x5eae0e(0x110)]+_0x5eae0e(0xd3)+_0x41b9b4,_0x1cde35=this[_0x5eae0e(0x119)];while(this[_0x5eae0e(0xed)]){try{this[_0x5eae0e(0xea)]=new AbortController();let _0x296de1={'Accept':'text/event-stream'};if(this[_0x5eae0e(0xdd)])_0x296de1[_0x5eae0e(0xde)]='Bearer\x20'+this[_0x5eae0e(0xdd)];let _0x1c1137=await fetch(_0x276e4f,{'headers':_0x296de1,'signal':this[_0x5eae0e(0xea)][_0x5eae0e(0x108)]});if(!_0x1c1137['ok']||!_0x1c1137[_0x5eae0e(0xfd)]){this['log']('SSE\x20failed:\x20'+_0x1c1137['status']),await this[_0x5eae0e(0xfc)](_0x1cde35),_0x1cde35=Math[_0x5eae0e(0x121)](_0x1cde35*1.5,0xea60);continue;}_0x1cde35=this[_0x5eae0e(0x119)];let _0x5e89ef=_0x1c1137['body']['getReader'](),_0x18dfd1=new TextDecoder(),_0x3d1bd7='';while(this[_0x5eae0e(0xed)]){let {done:_0x3bc81a,value:_0x31d7d7}=await _0x5e89ef['read']();if(_0x3bc81a)break;_0x3d1bd7+=_0x18dfd1['decode'](_0x31d7d7,{'stream':!0x0});let _0x1080f7=_0x3d1bd7[_0x5eae0e(0xfa)]('\x0a');_0x3d1bd7=_0x1080f7[_0x5eae0e(0xca)]()||'';for(let _0x248a1d of _0x1080f7){if(!_0x248a1d[_0x5eae0e(0xd5)](_0x5eae0e(0xf4)))continue;try{let _0x279a7c=JSON['parse'](_0x248a1d['slice'](0x6));if(_0x279a7c['type']===_0x5eae0e(0xf1)){this[_0x5eae0e(0x10f)](_0x5eae0e(0x112)),this[_0x5eae0e(0x117)](_0x5eae0e(0xf1));continue;}if(_0x279a7c[_0x5eae0e(0x10a)]===_0x5eae0e(0x113)||_0x279a7c['type']===_0x5eae0e(0x115)||_0x279a7c['type']===_0x5eae0e(0xd7))await this[_0x5eae0e(0xe9)]();}catch{}}}}catch(_0x1ccc9f){if(_0x1ccc9f[_0x5eae0e(0x116)]===_0x5eae0e(0x100))break;this[_0x5eae0e(0x117)](_0x5eae0e(0xe8),_0x1ccc9f),this[_0x5eae0e(0x10f)](_0x5eae0e(0xdf)+_0x1ccc9f[_0x5eae0e(0xff)]);}if(this[_0x5eae0e(0xed)])this[_0x5eae0e(0x117)](_0x5eae0e(0x10c)),this[_0x5eae0e(0x10f)]('SSE\x20reconnecting\x20in\x20'+_0x1cde35/0x3e8+_0x5eae0e(0xeb)),await this['sleep'](_0x1cde35),_0x1cde35=Math[_0x5eae0e(0x121)](_0x1cde35*1.5,0xea60);}}async['processInbox'](){const _0x84b4d9=a0_0x2be9be;try{let _0x31c2c0=(await this[_0x84b4d9(0x120)](_0x84b4d9(0xd1),{'alias':this[_0x84b4d9(0x101)],'limit':0xa}))?.[_0x84b4d9(0x10d)]||[];for(let _0x51fdd5 of _0x31c2c0)await this[_0x84b4d9(0x120)](_0x84b4d9(0x103),{'alias':this[_0x84b4d9(0x101)],'message_id':_0x51fdd5['id']}),this[_0x84b4d9(0x10f)]('←\x20'+_0x51fdd5[_0x84b4d9(0xd8)]+':\x20'+_0x51fdd5[_0x84b4d9(0x11e)][_0x84b4d9(0x104)](0x0,0x3c)),this['emit'](_0x84b4d9(0xf5),_0x51fdd5),this[_0x84b4d9(0x117)]('message',_0x51fdd5);}catch(_0x3f3b1c){this[_0x84b4d9(0x10f)]('inbox\x20error:\x20'+_0x3f3b1c['message']);}}[a0_0x2be9be(0xfc)](_0x53d573){return new Promise(_0x48bb13=>setTimeout(_0x48bb13,_0x53d573));}}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_0x380a(){const _0x3e75bc=['36MlRZMV','cancelled','message','application/json,\x20text/event-stream','find','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','no\x20response','commhub_send_task','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','pop',':\x20inbox_count=','status','failed','slice','.env','SSE\x20connected\x20as\x20\x22','number','replace','Reply\x20text\x20/\x20result\x20summary','blocked','broadcast','split','←\x20message\x20from\x20','replied','in_progress','send_task','unknown\x20tool','hub','config.json','stringify','session\x20disconnected','indexOf','1537833LIhzQU','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','task','utf-8','type','heartbeat\x20failed:\x20','new_message','send_reply','ack_inbox','send_message','messages','join','fatal:\x20','\x20priority=','catch','working','length','message_id','Target\x20session\x20alias','.anet','MCP\x20stdio\x20connected','string','notification','Bearer\x20','POST','http://127.0.0.1:9200','get','commhub_reply','error','new_task','SSE\x20fatal:\x20','startsWith','result','get_all_status','idle','completed','getReader','/mcp','32ospNpH','data:\x20','stdin','\x20from\x20','commhub_send_message','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','from','claude-code','cwd','shutting\x20down,\x20reporting\x20offline...','report_status','priority','from_session','2.0','initialize','commhub-channel','low','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','text','init\x20failed:\x20','\x22\x20(','/events/','setRequestHandler','5211dIVUBw','high','2025-03-26','end','SSE\x20stream\x20ended,\x20reconnecting...','→\x20injected\x20task\x20','token','ready\x20—\x20waiting\x20for\x20events','\x20CWD=','object','3689735WTsjNS','tools/call','then','get_inbox','connect','1616832KzyIpE','trim','notifications/claude/channel','inbox_count','commhub_get_all_status','registered\x20as\x20\x22','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','Session\x20alias:\x20','Priority\x20(default:\x20normal)','144cXKerl','2233GajMay','SSE\x20error:\x20','6699760xXOrsE','commhub','178qbSVQA','parse','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','starting\x20SSE\x20listener...','Progress\x200-100','body','commhub_report_status','content','normal','9369lTUWbX','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','\x20RESUME_ID=','15294xTPBYE'];a0_0x380a=function(){return _0x3e75bc;};return a0_0x380a();}const a0_0x662eba=a0_0x2ad0;(function(_0x3c8205,_0xb34067){const _0x193798=a0_0x2ad0,_0x377129=_0x3c8205();while(!![]){try{const _0x5e333b=-parseInt(_0x193798(0x23c))/0x1*(-parseInt(_0x193798(0x259))/0x2)+parseInt(_0x193798(0x1db))/0x3*(parseInt(_0x193798(0x1df))/0x4)+parseInt(_0x193798(0x246))/0x5+parseInt(_0x193798(0x1de))/0x6*(parseInt(_0x193798(0x255))/0x7)+-parseInt(_0x193798(0x225))/0x8*(-parseInt(_0x193798(0x24b))/0x9)+-parseInt(_0x193798(0x257))/0xa+parseInt(_0x193798(0x1ff))/0xb*(-parseInt(_0x193798(0x254))/0xc);if(_0x5e333b===_0xb34067)break;else _0x377129['push'](_0x377129['shift']());}catch(_0xa2a0cb){_0x377129['push'](_0x377129['shift']());}}}(a0_0x380a,0x650f8));import{readFileSync as a0_0xbb5b7,existsSync as a0_0x140c4b}from'fs';import{join as a0_0x1516f9}from'path';import{hostname as a0_0x584493}from'os';import{execSync as a0_0x36b5cf}from'child_process';import{Server as a0_0x15d5b7}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x5397f0}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x52eddb,CallToolRequestSchema as a0_0x578a26}from'@modelcontextprotocol/sdk/types.js';function p(_0x467110){const _0x463a79=a0_0x2ad0;if(!a0_0x140c4b(_0x467110))return;for(let _0x50cf14 of a0_0xbb5b7(_0x467110,_0x463a79(0x202))[_0x463a79(0x1f4)]('\x0a')){let _0x3b01db=_0x50cf14[_0x463a79(0x24c)]();if(!_0x3b01db||_0x3b01db['startsWith']('#'))continue;let _0x33c00c=_0x3b01db[_0x463a79(0x1fe)]('=');if(_0x33c00c<0x0)continue;let _0x377d3b=_0x3b01db[_0x463a79(0x1ec)](0x0,_0x33c00c)[_0x463a79(0x24c)](),_0x2048d3=_0x3b01db[_0x463a79(0x1ec)](_0x33c00c+0x1)[_0x463a79(0x24c)]()[_0x463a79(0x1f0)](/^["']|["']$/g,'');if(!process.env[_0x377d3b])process.env[_0x377d3b]=_0x2048d3;}}var C=process.env.HOME||'~',T=a0_0x1516f9(C,'.claude/channels/commhub');p(a0_0x1516f9(T,a0_0x662eba(0x1ed)));function a0_0x2ad0(_0x39a1fb,_0x421fbe){_0x39a1fb=_0x39a1fb-0x1d8;const _0x380aaa=a0_0x380a();let _0x2ad0e8=_0x380aaa[_0x39a1fb];return _0x2ad0e8;}var L=process[a0_0x662eba(0x22d)]()['replace'](/\//g,'-');p(a0_0x1516f9(T,L,a0_0x662eba(0x1ed)));function U(){const _0x4e3db6=a0_0x662eba;try{return a0_0x36b5cf('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0x4e3db6(0x202),'timeout':0x7d0})[_0x4e3db6(0x24c)]();}catch{return'';}}function c(){const _0x14bfa1=a0_0x662eba;try{let _0x4c74e4=a0_0x1516f9(C,_0x14bfa1(0x212),_0x14bfa1(0x1fb));if(a0_0x140c4b(_0x4c74e4))return JSON['parse'](a0_0xbb5b7(_0x4c74e4,_0x14bfa1(0x202)));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H[a0_0x662eba(0x1fa)]||a0_0x662eba(0x218),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x584493(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto['randomUUID'](),X=process.env.COMMHUB_TOKEN||H[a0_0x662eba(0x242)]||'';function Y(_0x3956e3){const _0x17f0a3=a0_0x662eba;let _0x36b965=new Date()['toTimeString']()[_0x17f0a3(0x1ec)](0x0,0x8);process['stderr']['write']('['+_0x36b965+']\x20[commhub]\x20'+_0x3956e3+'\x0a');}function h(_0x16eb01){return new Promise(_0x1dcd78=>setTimeout(_0x1dcd78,_0x16eb01));}Y('ENV:\x20URL='+D+'\x20ALIAS='+Z+a0_0x662eba(0x1dd)+w[a0_0x662eba(0x1ec)](0x0,0x8)+'...\x20TMUX='+(f||'none')+a0_0x662eba(0x244)+process[a0_0x662eba(0x22d)]()+'\x20PROJECT_ENV='+L);var k=new Map(),K=new a0_0x15d5b7({'name':a0_0x662eba(0x234),'version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x662eba(0x22a),'These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.',a0_0x662eba(0x200),a0_0x662eba(0x25b),a0_0x662eba(0x252)+Z][a0_0x662eba(0x20a)]('\x0a')});K[a0_0x662eba(0x23b)](a0_0x52eddb,async()=>({'tools':[{'name':a0_0x662eba(0x21a),'description':a0_0x662eba(0x1e4),'inputSchema':{'type':'object','properties':{'task_id':{'type':a0_0x662eba(0x214),'description':a0_0x662eba(0x236)},'text':{'type':'string','description':a0_0x662eba(0x1f1)},'status':{'type':'string','enum':[a0_0x662eba(0x222),a0_0x662eba(0x1eb),a0_0x662eba(0x1e0),a0_0x662eba(0x1f2),a0_0x662eba(0x21b),a0_0x662eba(0x1f7)],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':['text']}},{'name':a0_0x662eba(0x1d8),'description':a0_0x662eba(0x251),'inputSchema':{'type':a0_0x662eba(0x245),'properties':{'status':{'type':a0_0x662eba(0x214),'enum':[a0_0x662eba(0x20e),'idle','blocked',a0_0x662eba(0x21b)]},'task':{'type':a0_0x662eba(0x214),'description':'Current\x20task\x20description'},'progress':{'type':a0_0x662eba(0x1ef),'description':a0_0x662eba(0x25d)}},'required':[a0_0x662eba(0x1ea)]}},{'name':a0_0x662eba(0x1e6),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x662eba(0x214),'description':'Target\x20session\x20alias'},'task':{'type':a0_0x662eba(0x214),'description':'Task\x20content'},'priority':{'type':'string','enum':[a0_0x662eba(0x23d),a0_0x662eba(0x1da),a0_0x662eba(0x235)],'description':a0_0x662eba(0x253)}},'required':['alias',a0_0x662eba(0x201)]}},{'name':a0_0x662eba(0x229),'description':a0_0x662eba(0x1dc),'inputSchema':{'type':a0_0x662eba(0x245),'properties':{'alias':{'type':a0_0x662eba(0x214),'description':a0_0x662eba(0x211)},'message':{'type':'string','description':'Message\x20content'}},'required':['alias','message']}},{'name':a0_0x662eba(0x24f),'description':a0_0x662eba(0x1e7),'inputSchema':{'type':a0_0x662eba(0x245),'properties':{}}}]}));async function P(_0x33190f,_0x27364f){const _0xad1ffd=a0_0x662eba;let _0xe871f4=await fetch(D+'/mcp',{'method':_0xad1ffd(0x217),'headers':{'Content-Type':'application/json','Accept':_0xad1ffd(0x1e2),...X?{'Authorization':_0xad1ffd(0x216)+X}:{}},'body':JSON[_0xad1ffd(0x1fc)]({'jsonrpc':_0xad1ffd(0x232),'id':0x1,'method':_0xad1ffd(0x233),'params':{'protocolVersion':_0xad1ffd(0x23e),'capabilities':{},'clientInfo':{'name':_0xad1ffd(0x234),'version':'0.3.0'}}})});if(!_0xe871f4['ok']){let _0x248afd=await _0xe871f4[_0xad1ffd(0x237)]();return Y('CommHub\x20init\x20failed:\x20'+_0xe871f4[_0xad1ffd(0x1ea)]+'\x20'+_0x248afd[_0xad1ffd(0x1ec)](0x0,0x64)),{'ok':!0x1,'error':_0xad1ffd(0x238)+_0xe871f4[_0xad1ffd(0x1ea)]};}await _0xe871f4[_0xad1ffd(0x237)]();let _0x4aa628=(await(await fetch(D+_0xad1ffd(0x224),{'method':'POST','headers':{'Content-Type':'application/json','Accept':_0xad1ffd(0x1e2),...X?{'Authorization':_0xad1ffd(0x216)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0xad1ffd(0x232),'id':0x2,'method':_0xad1ffd(0x247),'params':{'name':_0x33190f,'arguments':_0x27364f}})}))[_0xad1ffd(0x237)]())[_0xad1ffd(0x1f4)]('\x0a')['find'](_0xe2eb3d=>_0xe2eb3d[_0xad1ffd(0x21e)]('data:\x20'));if(_0x4aa628){let _0x5d3fc1=JSON[_0xad1ffd(0x25a)](_0x4aa628[_0xad1ffd(0x1ec)](0x6));return _0x5d3fc1?.[_0xad1ffd(0x21f)]?.[_0xad1ffd(0x1d9)]?.[0x0]?.[_0xad1ffd(0x237)]?JSON['parse'](_0x5d3fc1[_0xad1ffd(0x21f)][_0xad1ffd(0x1d9)][0x0]['text']):_0x5d3fc1;}return{'ok':!0x1,'error':_0xad1ffd(0x1e5)};}K[a0_0x662eba(0x23b)](a0_0x578a26,async _0x34b487=>{const _0x8337af=a0_0x662eba;let {name:_0x39cf87,arguments:_0x3fc3d1}=_0x34b487['params'];if(_0x39cf87===_0x8337af(0x21a)){let {task_id:_0x5630e7,text:_0x537946,status:_0x1cb157}=_0x3fc3d1;if(_0x1cb157===_0x8337af(0x222)||_0x1cb157===_0x8337af(0x1eb)||_0x1cb157==='cancelled'){let _0x3dccda=_0x1cb157===_0x8337af(0x222)?_0x8337af(0x1f6):_0x1cb157,_0x260dcf=_0x5630e7?k[_0x8337af(0x219)](_0x5630e7)||'hub':_0x8337af(0x1fa),_0x5e9f62=await P(_0x8337af(0x206),{'alias':_0x260dcf,'text':_0x537946,'in_reply_to':_0x5630e7||void 0x0,'status':_0x3dccda,'from_session':Z});if(_0x5630e7)k['delete'](_0x5630e7);return{'content':[{'type':_0x8337af(0x237),'text':JSON[_0x8337af(0x1fc)](_0x5e9f62)}]};}let _0x4a2012=await P(_0x8337af(0x22f),{'resume_id':w,'alias':Z,'status':_0x1cb157===_0x8337af(0x1f2)?_0x8337af(0x1f2):_0x1cb157===_0x8337af(0x21b)?_0x8337af(0x21b):_0x8337af(0x20e),'task':_0x537946[_0x8337af(0x1ec)](0x0,0xc8),'output':_0x537946});return{'content':[{'type':_0x8337af(0x237),'text':JSON[_0x8337af(0x1fc)](_0x4a2012)}]};}if(_0x39cf87===_0x8337af(0x1d8)){let {status:_0x6b9336,task:_0x4e9f8c,progress:_0x53fdc7}=_0x3fc3d1,_0x4a2b50=await P(_0x8337af(0x22f),{'resume_id':w,'alias':Z,'status':_0x6b9336,'task':_0x4e9f8c,'progress':_0x53fdc7});return{'content':[{'type':'text','text':JSON[_0x8337af(0x1fc)](_0x4a2b50)}]};}if(_0x39cf87===_0x8337af(0x1e6)){let {alias:_0x3a1c21,task:_0x12c82e,priority:_0x14d5ca}=_0x3fc3d1,_0x42b810=await P(_0x8337af(0x1f8),{'alias':_0x3a1c21,'task':_0x12c82e,'priority':_0x14d5ca||_0x8337af(0x1da),'from_session':Z});return{'content':[{'type':_0x8337af(0x237),'text':JSON[_0x8337af(0x1fc)](_0x42b810)}]};}if(_0x39cf87===_0x8337af(0x229)){let {alias:_0x570484,message:_0xd8ba89}=_0x3fc3d1,_0x514402=await P(_0x8337af(0x208),{'alias':_0x570484,'message':_0xd8ba89,'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x8337af(0x1fc)](_0x514402)}]};}if(_0x39cf87===_0x8337af(0x24f)){let _0x1d2d9b=await P(_0x8337af(0x220),{});return{'content':[{'type':_0x8337af(0x237),'text':JSON[_0x8337af(0x1fc)](_0x1d2d9b)}]};}return{'content':[{'type':_0x8337af(0x237),'text':JSON[_0x8337af(0x1fc)]({'error':_0x8337af(0x1f9)})}]};});async function v(){const _0x150379=a0_0x662eba;let _0x2a74c3=D+_0x150379(0x23a)+encodeURIComponent(Z),_0x290f9a={};if(X)_0x290f9a['Authorization']=_0x150379(0x216)+X;Y('connecting\x20to\x20'+_0x2a74c3);while(!0x0){try{let _0x55c17a=await fetch(_0x2a74c3,{'headers':_0x290f9a});if(!_0x55c17a['ok']){Y(_0x150379(0x256)+_0x55c17a[_0x150379(0x1ea)]+'\x20'+_0x55c17a['statusText']),await h(0x1388);continue;}let _0x5b2d37=_0x55c17a[_0x150379(0x25e)][_0x150379(0x223)](),_0x4e13e7=new TextDecoder(),_0x4f9314='';while(!0x0){let {done:_0x56336c,value:_0x57b68e}=await _0x5b2d37['read']();if(_0x56336c)break;_0x4f9314+=_0x4e13e7['decode'](_0x57b68e,{'stream':!0x0});let _0x1ed35f=_0x4f9314[_0x150379(0x1f4)]('\x0a\x0a');_0x4f9314=_0x1ed35f[_0x150379(0x1e8)]()||'';for(let _0x315a92 of _0x1ed35f){let _0x2c0b91=_0x315a92[_0x150379(0x1f4)]('\x0a')[_0x150379(0x1e3)](_0x35aa8e=>_0x35aa8e[_0x150379(0x21e)](_0x150379(0x226)));if(!_0x2c0b91)continue;try{let _0x5d426b=JSON[_0x150379(0x25a)](_0x2c0b91['slice'](0x6));await u(_0x5d426b);}catch(_0x3abcec){Y('parse\x20error:\x20'+_0x3abcec);}}}Y(_0x150379(0x240));}catch(_0x1fdd3f){Y('SSE\x20connection\x20error:\x20'+_0x1fdd3f);}await h(0xbb8);}}async function u(_0x1d4114){const _0x53f948=a0_0x662eba;if(_0x1d4114[_0x53f948(0x203)]==='connected'){Y(_0x53f948(0x1ee)+Z+'\x22');return;}if(_0x1d4114[_0x53f948(0x203)]===_0x53f948(0x205)){if(Y(_0x53f948(0x1f5)+_0x1d4114[_0x53f948(0x22b)]+':\x20'+_0x1d4114[_0x53f948(0x1e1)][_0x53f948(0x1ec)](0x0,0x3c)),await K[_0x53f948(0x215)]({'method':_0x53f948(0x24d),'params':{'content':_0x1d4114[_0x53f948(0x1e1)],'meta':{'sender':_0x1d4114['from']||'hub','sender_id':_0x53f948(0x258),'user':_0x1d4114[_0x53f948(0x22b)]||_0x53f948(0x1fa),'priority':_0x53f948(0x1da)}}}),_0x1d4114[_0x53f948(0x210)])await P(_0x53f948(0x207),{'alias':Z,'message_id':_0x1d4114[_0x53f948(0x210)]});return;}if(_0x1d4114[_0x53f948(0x203)]===_0x53f948(0x21c)||_0x1d4114[_0x53f948(0x203)]===_0x53f948(0x1f3)){Y('←\x20'+_0x1d4114[_0x53f948(0x203)]+_0x53f948(0x1e9)+_0x1d4114[_0x53f948(0x24e)]+_0x53f948(0x20c)+(_0x1d4114[_0x53f948(0x230)]||_0x53f948(0x1da)));let _0x2566a0=await P(_0x53f948(0x249),{'alias':Z,'limit':0x5});if(_0x2566a0?.['ok']&&_0x2566a0[_0x53f948(0x209)]?.[_0x53f948(0x20f)]>0x0)for(let _0x1af7eb of _0x2566a0[_0x53f948(0x209)]){let _0x4011a3={'sender':_0x1af7eb[_0x53f948(0x231)]||'hub','sender_id':_0x53f948(0x258),'user':_0x1af7eb[_0x53f948(0x231)]||_0x53f948(0x1fa),'task_id':_0x1af7eb['id'],'priority':_0x1af7eb[_0x53f948(0x230)]||_0x53f948(0x1da)};k['set'](_0x1af7eb['id'],_0x1af7eb[_0x53f948(0x231)]||_0x53f948(0x1fa)),await K[_0x53f948(0x215)]({'method':_0x53f948(0x24d),'params':{'content':_0x1af7eb[_0x53f948(0x1d9)],'meta':_0x4011a3}}),Y(_0x53f948(0x241)+_0x1af7eb['id'][_0x53f948(0x1ec)](0x0,0x8)+_0x53f948(0x228)+_0x1af7eb[_0x53f948(0x231)]+':\x20'+_0x1af7eb['content'][_0x53f948(0x1ec)](0x0,0x3c)),await P(_0x53f948(0x207),{'alias':Z,'message_id':_0x1af7eb['id']});}}}async function S(){const _0x4636aa=a0_0x662eba;let _0x125e90=new a0_0x5397f0();await K[_0x4636aa(0x24a)](_0x125e90),Y(_0x4636aa(0x213)),Y(_0x4636aa(0x25c)),v()[_0x4636aa(0x20d)](_0x538d0b=>Y(_0x4636aa(0x21d)+_0x538d0b)),P('report_status',{'resume_id':w,'alias':Z,'status':_0x4636aa(0x221),'server':a0_0x584493(),'hostname':a0_0x584493(),'agent':_0x4636aa(0x22c),'project_dir':process[_0x4636aa(0x22d)](),'tmux_name':f||void 0x0})[_0x4636aa(0x248)](()=>Y(_0x4636aa(0x250)+Z+_0x4636aa(0x239)+w['slice'](0x0,0x8)+')'))[_0x4636aa(0x20d)](_0x24ba88=>Y('warning:\x20could\x20not\x20register:\x20'+_0x24ba88)),setInterval(()=>{const _0xafede5=_0x4636aa;P('report_status',{'resume_id':w,'alias':Z,'status':_0xafede5(0x221),'server':a0_0x584493(),'hostname':a0_0x584493(),'agent':_0xafede5(0x22c),'project_dir':process[_0xafede5(0x22d)](),'tmux_name':f||void 0x0})[_0xafede5(0x20d)](_0x4563b8=>Y(_0xafede5(0x204)+_0x4563b8));},0x2bf20),Y(_0x4636aa(0x243));}S()[a0_0x662eba(0x20d)](_0x615934=>{const _0x385190=a0_0x662eba;Y(_0x385190(0x20b)+_0x615934),process['exit'](0x1);});async function N(){const _0x5b295e=a0_0x662eba;Y(_0x5b295e(0x22e)),await P(_0x5b295e(0x22f),{'resume_id':w,'alias':Z,'status':_0x5b295e(0x21b),'task':_0x5b295e(0x1fd)})[_0x5b295e(0x20d)](()=>{}),process['exit'](0x0);}process[a0_0x662eba(0x227)]['on'](a0_0x662eba(0x23f),()=>N()),process['on']('SIGTERM',()=>N()),process['on']('SIGINT',()=>N());
|
|
2
|
+
const a0_0x26a715=a0_0x404e;(function(_0x472e0c,_0x35b763){const _0x1b9f0e=a0_0x404e,_0x22db40=_0x472e0c();while(!![]){try{const _0x5e5f21=-parseInt(_0x1b9f0e(0x1e0))/0x1+-parseInt(_0x1b9f0e(0x248))/0x2+parseInt(_0x1b9f0e(0x210))/0x3+-parseInt(_0x1b9f0e(0x258))/0x4+-parseInt(_0x1b9f0e(0x25a))/0x5*(-parseInt(_0x1b9f0e(0x1ef))/0x6)+parseInt(_0x1b9f0e(0x238))/0x7+-parseInt(_0x1b9f0e(0x1e8))/0x8;if(_0x5e5f21===_0x35b763)break;else _0x22db40['push'](_0x22db40['shift']());}catch(_0x217a9c){_0x22db40['push'](_0x22db40['shift']());}}}(a0_0xdd34,0x6e359));import{readFileSync as a0_0x5eb03a,existsSync as a0_0x23b41a}from'fs';import{join as a0_0x451d9a}from'path';import{hostname as a0_0x51d750}from'os';import{execSync as a0_0x2588a6}from'child_process';import{Server as a0_0x296253}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x2087d1}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x5d884f,CallToolRequestSchema as a0_0x31c153}from'@modelcontextprotocol/sdk/types.js';function p(_0x27866b){const _0x21148f=a0_0x404e;if(!a0_0x23b41a(_0x27866b))return;for(let _0x377ffc of a0_0x5eb03a(_0x27866b,_0x21148f(0x1f9))[_0x21148f(0x253)]('\x0a')){let _0x29ee43=_0x377ffc[_0x21148f(0x1ea)]();if(!_0x29ee43||_0x29ee43[_0x21148f(0x1e3)]('#'))continue;let _0x2af5b2=_0x29ee43[_0x21148f(0x1ed)]('=');if(_0x2af5b2<0x0)continue;let _0x435644=_0x29ee43[_0x21148f(0x230)](0x0,_0x2af5b2)[_0x21148f(0x1ea)](),_0x6d1cea=_0x29ee43['slice'](_0x2af5b2+0x1)[_0x21148f(0x1ea)]()[_0x21148f(0x200)](/^["']|["']$/g,'');if(!process.env[_0x435644])process.env[_0x435644]=_0x6d1cea;}}var C=process.env.HOME||'~',T=a0_0x451d9a(C,'.claude/channels/commhub');p(a0_0x451d9a(T,a0_0x26a715(0x1db)));var L=process[a0_0x26a715(0x204)]()[a0_0x26a715(0x200)](/\//g,'-');p(a0_0x451d9a(T,L,'.env'));function U(){const _0x1a4b7d=a0_0x26a715;try{return a0_0x2588a6('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0x1a4b7d(0x1f9),'timeout':0x7d0})['trim']();}catch{return'';}}function c(){const _0x4bbdce=a0_0x26a715;try{let _0x36235e=a0_0x451d9a(C,_0x4bbdce(0x1e6),_0x4bbdce(0x1fb));if(a0_0x23b41a(_0x36235e))return JSON[_0x4bbdce(0x242)](a0_0x5eb03a(_0x36235e,_0x4bbdce(0x1f9)));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H['hub']||a0_0x26a715(0x223),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x51d750(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x26a715(0x21d)](),X=process.env.COMMHUB_TOKEN||H[a0_0x26a715(0x24f)]||'';function Y(_0xd203c5){const _0x513a93=a0_0x26a715;let _0x22a388=new Date()[_0x513a93(0x207)]()['slice'](0x0,0x8);process['stderr'][_0x513a93(0x1f4)]('['+_0x22a388+_0x513a93(0x213)+_0xd203c5+'\x0a');}function h(_0x579ccb){return new Promise(_0x4a64fc=>setTimeout(_0x4a64fc,_0x579ccb));}Y(a0_0x26a715(0x212)+D+a0_0x26a715(0x1f3)+Z+a0_0x26a715(0x21a)+w[a0_0x26a715(0x230)](0x0,0x8)+'...\x20TMUX='+(f||a0_0x26a715(0x245))+a0_0x26a715(0x24e)+process[a0_0x26a715(0x204)]()+a0_0x26a715(0x247)+L);var k=new Map(),K=new a0_0x296253({'name':'commhub-channel','version':a0_0x26a715(0x23b)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x26a715(0x1df),'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.','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.',a0_0x26a715(0x24d)+Z][a0_0x26a715(0x1e2)]('\x0a')});K[a0_0x26a715(0x237)](a0_0x5d884f,async()=>({'tools':[{'name':a0_0x26a715(0x1eb),'description':a0_0x26a715(0x244),'inputSchema':{'type':a0_0x26a715(0x202),'properties':{'task_id':{'type':'string','description':a0_0x26a715(0x206)},'text':{'type':a0_0x26a715(0x1f1),'description':a0_0x26a715(0x1ff)},'status':{'type':a0_0x26a715(0x1f1),'enum':[a0_0x26a715(0x22d),a0_0x26a715(0x226),a0_0x26a715(0x23a),a0_0x26a715(0x1e5),a0_0x26a715(0x23e),a0_0x26a715(0x24b)],'description':a0_0x26a715(0x1de)}},'required':[a0_0x26a715(0x257)]}},{'name':a0_0x26a715(0x241),'description':a0_0x26a715(0x225),'inputSchema':{'type':a0_0x26a715(0x202),'properties':{'status':{'type':a0_0x26a715(0x1f1),'enum':[a0_0x26a715(0x235),'idle',a0_0x26a715(0x1e5),a0_0x26a715(0x23e)]},'task':{'type':'string','description':'Current\x20task\x20description'},'progress':{'type':'number','description':a0_0x26a715(0x233)}},'required':[a0_0x26a715(0x1d9)]}},{'name':'commhub_send_task','description':a0_0x26a715(0x256),'inputSchema':{'type':a0_0x26a715(0x202),'properties':{'alias':{'type':'string','description':a0_0x26a715(0x229)},'task':{'type':a0_0x26a715(0x1f1),'description':a0_0x26a715(0x21e)},'priority':{'type':a0_0x26a715(0x1f1),'enum':['high','normal',a0_0x26a715(0x209)],'description':a0_0x26a715(0x23f)}},'required':[a0_0x26a715(0x1e4),a0_0x26a715(0x201)]}},{'name':'commhub_send_message','description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x26a715(0x1f1),'description':a0_0x26a715(0x229)},'message':{'type':'string','description':a0_0x26a715(0x1d7)}},'required':[a0_0x26a715(0x1e4),a0_0x26a715(0x1d8)]}},{'name':'commhub_get_all_status','description':a0_0x26a715(0x222),'inputSchema':{'type':a0_0x26a715(0x202),'properties':{}}}]}));async function P(_0x53d421,_0x244639){const _0x472bc4=a0_0x26a715;let _0x4badf2=await fetch(D+_0x472bc4(0x224),{'method':'POST','headers':{'Content-Type':_0x472bc4(0x1f2),'Accept':_0x472bc4(0x231),...X?{'Authorization':_0x472bc4(0x250)+X}:{}},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x1,'method':_0x472bc4(0x1fc),'params':{'protocolVersion':_0x472bc4(0x218),'capabilities':{},'clientInfo':{'name':'commhub-channel','version':_0x472bc4(0x23b)}}})});if(!_0x4badf2['ok']){let _0x3c2966=await _0x4badf2['text']();return Y(_0x472bc4(0x1dc)+_0x4badf2['status']+'\x20'+_0x3c2966[_0x472bc4(0x230)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x4badf2['status']};}await _0x4badf2[_0x472bc4(0x257)]();let _0xffbc8d=(await(await fetch(D+_0x472bc4(0x224),{'method':'POST','headers':{'Content-Type':_0x472bc4(0x1f2),'Accept':_0x472bc4(0x231),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x472bc4(0x1ee)]({'jsonrpc':'2.0','id':0x2,'method':_0x472bc4(0x22c),'params':{'name':_0x53d421,'arguments':_0x244639}})}))[_0x472bc4(0x257)]())[_0x472bc4(0x253)]('\x0a')[_0x472bc4(0x215)](_0x5beaa7=>_0x5beaa7[_0x472bc4(0x1e3)](_0x472bc4(0x20e)));if(_0xffbc8d){let _0xfe8906=JSON['parse'](_0xffbc8d[_0x472bc4(0x230)](0x6));return _0xfe8906?.[_0x472bc4(0x236)]?.[_0x472bc4(0x1e1)]?.[0x0]?.['text']?JSON[_0x472bc4(0x242)](_0xfe8906[_0x472bc4(0x236)][_0x472bc4(0x1e1)][0x0][_0x472bc4(0x257)]):_0xfe8906;}return{'ok':!0x1,'error':_0x472bc4(0x217)};}K[a0_0x26a715(0x237)](a0_0x31c153,async _0x260b3a=>{const _0x1330ca=a0_0x26a715;let {name:_0x50e66f,arguments:_0x322b0f}=_0x260b3a[_0x1330ca(0x21c)];if(_0x50e66f===_0x1330ca(0x1eb)){let {task_id:_0x5813e5,text:_0x2b72ef,status:_0xf6a14d}=_0x322b0f;if(_0xf6a14d===_0x1330ca(0x22d)||_0xf6a14d===_0x1330ca(0x226)||_0xf6a14d===_0x1330ca(0x23a)){let _0x485818=_0xf6a14d===_0x1330ca(0x22d)?_0x1330ca(0x232):_0xf6a14d,_0x1c84e7=_0x5813e5?k[_0x1330ca(0x211)](_0x5813e5)||_0x1330ca(0x23c):_0x1330ca(0x23c),_0x2ae26a=await P(_0x1330ca(0x20b),{'alias':_0x1c84e7,'text':_0x2b72ef,'in_reply_to':_0x5813e5||void 0x0,'status':_0x485818,'from_session':Z});if(_0x5813e5)k['delete'](_0x5813e5);return{'content':[{'type':'text','text':JSON[_0x1330ca(0x1ee)](_0x2ae26a)}]};}let _0x229a43=await P(_0x1330ca(0x246),{'resume_id':w,'alias':Z,'status':_0xf6a14d===_0x1330ca(0x1e5)?_0x1330ca(0x1e5):_0xf6a14d===_0x1330ca(0x23e)?_0x1330ca(0x23e):'working','task':_0x2b72ef[_0x1330ca(0x230)](0x0,0xc8),'output':_0x2b72ef});return{'content':[{'type':_0x1330ca(0x257),'text':JSON[_0x1330ca(0x1ee)](_0x229a43)}]};}if(_0x50e66f===_0x1330ca(0x241)){let {status:_0x32f332,task:_0x274ce1,progress:_0xc74c04}=_0x322b0f,_0x2d4e90=await P(_0x1330ca(0x246),{'resume_id':w,'alias':Z,'status':_0x32f332,'task':_0x274ce1,'progress':_0xc74c04});return{'content':[{'type':'text','text':JSON['stringify'](_0x2d4e90)}]};}if(_0x50e66f===_0x1330ca(0x1f8)){let {alias:_0x115182,task:_0xcaac77,priority:_0x36a2ad}=_0x322b0f,_0xf13e60=await P('send_task',{'alias':_0x115182,'task':_0xcaac77,'priority':_0x36a2ad||_0x1330ca(0x203),'from_session':Z});return{'content':[{'type':_0x1330ca(0x257),'text':JSON[_0x1330ca(0x1ee)](_0xf13e60)}]};}if(_0x50e66f===_0x1330ca(0x23d)){let {alias:_0x2ed16b,message:_0x48a3df}=_0x322b0f,_0x5e4221=await P(_0x1330ca(0x24c),{'alias':_0x2ed16b,'message':_0x48a3df,'from_session':Z});return{'content':[{'type':_0x1330ca(0x257),'text':JSON[_0x1330ca(0x1ee)](_0x5e4221)}]};}if(_0x50e66f===_0x1330ca(0x240)){let _0x43a345=await P('get_all_status',{});return{'content':[{'type':_0x1330ca(0x257),'text':JSON[_0x1330ca(0x1ee)](_0x43a345)}]};}return{'content':[{'type':_0x1330ca(0x257),'text':JSON[_0x1330ca(0x1ee)]({'error':_0x1330ca(0x1da)})}]};});async function v(){const _0x3532e0=a0_0x26a715;let _0x267ea4=D+_0x3532e0(0x251)+encodeURIComponent(Z),_0x570c73={};if(X)_0x570c73['Authorization']=_0x3532e0(0x250)+X;Y(_0x3532e0(0x21b)+_0x267ea4);while(!0x0){try{let _0x193f66=await fetch(_0x267ea4,{'headers':_0x570c73});if(!_0x193f66['ok']){Y(_0x3532e0(0x1fe)+_0x193f66[_0x3532e0(0x1d9)]+'\x20'+_0x193f66[_0x3532e0(0x259)]),await h(0x1388);continue;}let _0x20a4ae=_0x193f66[_0x3532e0(0x221)]['getReader'](),_0x2fb22b=new TextDecoder(),_0x1e0f4e='';while(!0x0){let {done:_0x4481f7,value:_0x262e58}=await _0x20a4ae[_0x3532e0(0x255)]();if(_0x4481f7)break;_0x1e0f4e+=_0x2fb22b['decode'](_0x262e58,{'stream':!0x0});let _0x48f97e=_0x1e0f4e['split']('\x0a\x0a');_0x1e0f4e=_0x48f97e['pop']()||'';for(let _0x494ebf of _0x48f97e){let _0x306c15=_0x494ebf[_0x3532e0(0x253)]('\x0a')[_0x3532e0(0x215)](_0x4e4f0c=>_0x4e4f0c[_0x3532e0(0x1e3)]('data:\x20'));if(!_0x306c15)continue;try{let _0x7f007a=JSON['parse'](_0x306c15['slice'](0x6));await u(_0x7f007a);}catch(_0x25a917){Y('parse\x20error:\x20'+_0x25a917);}}}Y(_0x3532e0(0x220));}catch(_0x55e241){Y(_0x3532e0(0x234)+_0x55e241);}await h(0xbb8);}}async function u(_0x5b7024){const _0x535ef8=a0_0x26a715;if(_0x5b7024[_0x535ef8(0x24a)]===_0x535ef8(0x208)){Y(_0x535ef8(0x239)+Z+'\x22');return;}if(_0x5b7024[_0x535ef8(0x24a)]===_0x535ef8(0x228)){if(Y('←\x20message\x20from\x20'+_0x5b7024[_0x535ef8(0x1f5)]+':\x20'+_0x5b7024['message'][_0x535ef8(0x230)](0x0,0x3c)),await K[_0x535ef8(0x22a)]({'method':_0x535ef8(0x1dd),'params':{'content':_0x5b7024[_0x535ef8(0x1d8)],'meta':{'sender':_0x5b7024['from']||'hub','sender_id':_0x535ef8(0x21f),'user':_0x5b7024[_0x535ef8(0x1f5)]||'hub','priority':_0x535ef8(0x203)}}}),_0x5b7024[_0x535ef8(0x219)])await P(_0x535ef8(0x216),{'alias':Z,'message_id':_0x5b7024['message_id']});return;}if(_0x5b7024[_0x535ef8(0x24a)]===_0x535ef8(0x1f7)||_0x5b7024['type']===_0x535ef8(0x20a)){Y('←\x20'+_0x5b7024['type']+_0x535ef8(0x205)+_0x5b7024[_0x535ef8(0x22f)]+'\x20priority='+(_0x5b7024[_0x535ef8(0x20c)]||_0x535ef8(0x203)));let _0x2645d6=await P(_0x535ef8(0x252),{'alias':Z,'limit':0x5});if(_0x2645d6?.['ok']&&_0x2645d6[_0x535ef8(0x1e9)]?.['length']>0x0)for(let _0x1e654e of _0x2645d6[_0x535ef8(0x1e9)]){let _0x1ec5c7={'sender':_0x1e654e[_0x535ef8(0x1e7)]||_0x535ef8(0x23c),'sender_id':'commhub','user':_0x1e654e[_0x535ef8(0x1e7)]||'hub','task_id':_0x1e654e['id'],'priority':_0x1e654e[_0x535ef8(0x20c)]||_0x535ef8(0x203)};k['set'](_0x1e654e['id'],_0x1e654e['from_session']||_0x535ef8(0x23c)),await K[_0x535ef8(0x22a)]({'method':_0x535ef8(0x1dd),'params':{'content':_0x1e654e['content'],'meta':_0x1ec5c7}}),Y('→\x20injected\x20task\x20'+_0x1e654e['id'][_0x535ef8(0x230)](0x0,0x8)+_0x535ef8(0x20f)+_0x1e654e[_0x535ef8(0x1e7)]+':\x20'+_0x1e654e[_0x535ef8(0x1e1)][_0x535ef8(0x230)](0x0,0x3c)),await P(_0x535ef8(0x216),{'alias':Z,'message_id':_0x1e654e['id']});}}}async function S(){const _0xe35416=a0_0x26a715;let _0x1cb90f=new a0_0x2087d1();await K[_0xe35416(0x22e)](_0x1cb90f),Y(_0xe35416(0x22b)),Y('starting\x20SSE\x20listener...'),v()[_0xe35416(0x1fd)](_0x172d50=>Y('SSE\x20fatal:\x20'+_0x172d50)),P('report_status',{'resume_id':w,'alias':Z,'status':_0xe35416(0x214),'server':a0_0x51d750(),'hostname':a0_0x51d750(),'agent':'claude-code','project_dir':process[_0xe35416(0x204)](),'tmux_name':f||void 0x0})[_0xe35416(0x254)](()=>Y(_0xe35416(0x1f6)+Z+_0xe35416(0x1f0)+w['slice'](0x0,0x8)+')'))['catch'](_0x1d51eb=>Y('warning:\x20could\x20not\x20register:\x20'+_0x1d51eb)),setInterval(()=>{const _0x5f051b=_0xe35416;P(_0x5f051b(0x246),{'resume_id':w,'alias':Z,'status':_0x5f051b(0x214),'server':a0_0x51d750(),'hostname':a0_0x51d750(),'agent':'claude-code','project_dir':process[_0x5f051b(0x204)](),'tmux_name':f||void 0x0})[_0x5f051b(0x1fd)](_0x3f608b=>Y(_0x5f051b(0x243)+_0x3f608b));},0x2bf20),Y('ready\x20—\x20waiting\x20for\x20events');}S()[a0_0x26a715(0x1fd)](_0x2e2155=>{const _0x44d682=a0_0x26a715;Y('fatal:\x20'+_0x2e2155),process[_0x44d682(0x20d)](0x1);});async function N(){const _0x67cb59=a0_0x26a715;Y(_0x67cb59(0x227)),await P(_0x67cb59(0x246),{'resume_id':w,'alias':Z,'status':_0x67cb59(0x23e),'task':_0x67cb59(0x1ec)})[_0x67cb59(0x1fd)](()=>{}),process['exit'](0x0);}function a0_0x404e(_0xa2cab7,_0x1f17cc){_0xa2cab7=_0xa2cab7-0x1d7;const _0xdd343b=a0_0xdd34();let _0x404e7c=_0xdd343b[_0xa2cab7];return _0x404e7c;}function a0_0xdd34(){const _0x193b8f=['.env','CommHub\x20init\x20failed:\x20','notifications/claude/channel','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','190641WnsZWd','content','join','startsWith','alias','blocked','.anet','from_session','1796216YPAJYP','messages','trim','commhub_reply','session\x20disconnected','indexOf','stringify','564ktTkif','\x22\x20(','string','application/json','\x20ALIAS=','write','from','registered\x20as\x20\x22','new_task','commhub_send_task','utf-8','end','config.json','initialize','catch','SSE\x20error:\x20','Reply\x20text\x20/\x20result\x20summary','replace','task','object','normal','cwd',':\x20inbox_count=','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','toTimeString','connected','low','broadcast','send_reply','priority','exit','data:\x20','\x20from\x20','2138007tzUDvp','get','ENV:\x20URL=',']\x20[commhub]\x20','idle','find','ack_inbox','no\x20response','2025-03-26','message_id','\x20RESUME_ID=','connecting\x20to\x20','params','randomUUID','Task\x20content','commhub','SSE\x20stream\x20ended,\x20reconnecting...','body','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','http://127.0.0.1:9200','/mcp','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','failed','shutting\x20down,\x20reporting\x20offline...','new_message','Target\x20session\x20alias','notification','MCP\x20stdio\x20connected','tools/call','completed','connect','inbox_count','slice','application/json,\x20text/event-stream','replied','Progress\x200-100','SSE\x20connection\x20error:\x20','working','result','setRequestHandler','1996078qzfmTJ','SSE\x20connected\x20as\x20\x22','cancelled','0.3.0','hub','commhub_send_message','error','Priority\x20(default:\x20normal)','commhub_get_all_status','commhub_report_status','parse','heartbeat\x20failed:\x20','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','none','report_status','\x20PROJECT_ENV=','110894PtwVHm','stdin','type','in_progress','send_message','Session\x20alias:\x20','\x20CWD=','token','Bearer\x20','/events/','get_inbox','split','then','read','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','text','645700HWVJqc','statusText','4555VfQGYo','Message\x20content','message','status','unknown\x20tool'];a0_0xdd34=function(){return _0x193b8f;};return a0_0xdd34();}process[a0_0x26a715(0x249)]['on'](a0_0x26a715(0x1fa),()=>N()),process['on']('SIGTERM',()=>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.0-preview.
|
|
3
|
+
"version": "2.0.0-preview.5",
|
|
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",
|