@sleep2agi/agent-network 2.0.0-preview.7 → 2.0.0-preview.8
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
|
+
function a0_0x1325(){const _0x1a60b8=['completed','resumeId','SSE\x20connected','disconnect','type','inbox\x20error:\x20','normal','match',']\x20[commhub:','heartbeatTimer','from_session','signal','Authorization','result','emit','/events/','POST','url','processInbox','new_message','stringify','text','disconnected','application/json,\x20text/event-stream','SSE\x20reconnecting\x20in\x20','reply','alias','pop','tools/call','content','call','4125530mnRwUV','get_inbox','connect','44IWBMaF','AbortError','text/event-stream','idle','application/json','read','connectSSE','sleep','token','agent','running','report_status','ack_inbox','data:\x20','catch','40xBpTLf','connected','log','11NOlJkG','83319KcqxLD','cwd','1930424ZzJpcT','parse','registered','offline','/mcp','abort','server','70458qfzFUq','autoConnect','decode','1068561CFOTLI','218748FSmpGu','status','getReader','min','send','send_task','error','broadcast','task','get_all_status','heartbeatInterval','818677saDdgw','reconnectDelay','body','SSE\x20error:\x20','message','messages','now','Bearer\x20','266JmlQmH','2.0','sseAbort','slice'];a0_0x1325=function(){return _0x1a60b8;};return a0_0x1325();}const a0_0x595caf=a0_0x5ddf;(function(_0x2db923,_0x3045f8){const _0x13f157=a0_0x5ddf,_0x3d1e5d=_0x2db923();while(!![]){try{const _0x20e1d2=-parseInt(_0x13f157(0x16e))/0x1+parseInt(_0x13f157(0x19c))/0x2*(parseInt(_0x13f157(0x156))/0x3)+parseInt(_0x13f157(0x163))/0x4*(parseInt(_0x13f157(0x152))/0x5)+parseInt(_0x13f157(0x15f))/0x6*(parseInt(_0x13f157(0x176))/0x7)+-parseInt(_0x13f157(0x158))/0x8+-parseInt(_0x13f157(0x162))/0x9+-parseInt(_0x13f157(0x199))/0xa*(-parseInt(_0x13f157(0x155))/0xb);if(_0x20e1d2===_0x3045f8)break;else _0x3d1e5d['push'](_0x3d1e5d['shift']());}catch(_0x2e4c1b){_0x3d1e5d['push'](_0x3d1e5d['shift']());}}}(a0_0x1325,0xb1e04));import{EventEmitter as a0_0x5cf71b}from'events';import{hostname as a0_0xc15a09}from'os';class T extends a0_0x5cf71b{[a0_0x595caf(0x18b)];['alias'];['token'];['agent'];[a0_0x595caf(0x17b)];[a0_0x595caf(0x16d)];[a0_0x595caf(0x16f)];[a0_0x595caf(0x183)];[a0_0x595caf(0x178)];[a0_0x595caf(0x14d)]=!0x1;constructor(_0x45ade1){const _0x1bdb32=a0_0x595caf;super();if(this[_0x1bdb32(0x18b)]=_0x45ade1[_0x1bdb32(0x18b)]['replace'](/\/$/,''),this[_0x1bdb32(0x194)]=_0x45ade1[_0x1bdb32(0x194)],this[_0x1bdb32(0x14b)]=_0x45ade1['token'],this[_0x1bdb32(0x14c)]=_0x45ade1[_0x1bdb32(0x14c)]||'sdk',this[_0x1bdb32(0x17b)]='sdk-'+_0x45ade1[_0x1bdb32(0x194)]+'-'+Date[_0x1bdb32(0x174)]()['toString'](0x24),this[_0x1bdb32(0x16d)]=_0x45ade1['heartbeatInterval']??0x2bf20,this[_0x1bdb32(0x16f)]=_0x45ade1[_0x1bdb32(0x16f)]??0xbb8,_0x45ade1[_0x1bdb32(0x160)]!==!0x1)this['connect']();}[a0_0x595caf(0x154)](_0x15b479){const _0x1b36ff=a0_0x595caf;console[_0x1b36ff(0x154)]('['+new Date()['toTimeString']()[_0x1b36ff(0x179)](0x0,0x8)+_0x1b36ff(0x182)+this[_0x1b36ff(0x194)]+']\x20'+_0x15b479);}async[a0_0x595caf(0x198)](_0x280711,_0x22a635){const _0x484070=a0_0x595caf;let _0x4e8059={'Content-Type':_0x484070(0x1a0),'Accept':_0x484070(0x191)};if(this[_0x484070(0x14b)])_0x4e8059[_0x484070(0x186)]=_0x484070(0x175)+this[_0x484070(0x14b)];let _0x45cded=await(await fetch(this[_0x484070(0x18b)]+_0x484070(0x15c),{'method':_0x484070(0x18a),'headers':_0x4e8059,'body':JSON[_0x484070(0x18e)]({'jsonrpc':_0x484070(0x177),'id':Date[_0x484070(0x174)](),'method':_0x484070(0x196),'params':{'name':_0x280711,'arguments':_0x22a635}})}))[_0x484070(0x18f)](),_0x384642=_0x45cded[_0x484070(0x181)](/data: (.+)/),_0x23f1cf=_0x384642?JSON['parse'](_0x384642[0x1]):JSON['parse'](_0x45cded),_0x4e6d06=_0x23f1cf?.[_0x484070(0x187)]?.[_0x484070(0x197)]?.[0x0]?.[_0x484070(0x18f)];return _0x4e6d06?JSON[_0x484070(0x159)](_0x4e6d06):_0x23f1cf;}async[a0_0x595caf(0x19b)](){const _0x15a34=a0_0x595caf;if(this[_0x15a34(0x14d)])return;this['running']=!0x0,await this[_0x15a34(0x164)](_0x15a34(0x19f)),this['log'](_0x15a34(0x15a)),this[_0x15a34(0x183)]=setInterval(()=>{const _0x20421e=_0x15a34;this[_0x20421e(0x164)](_0x20421e(0x19f))[_0x20421e(0x151)](_0x5d4be0=>this[_0x20421e(0x154)]('heartbeat\x20failed:\x20'+_0x5d4be0[_0x20421e(0x172)]));},this['heartbeatInterval']),this[_0x15a34(0x149)]();}async[a0_0x595caf(0x17d)](){const _0x2e0a23=a0_0x595caf;if(this[_0x2e0a23(0x14d)]=!0x1,this[_0x2e0a23(0x178)]?.[_0x2e0a23(0x15d)](),this['heartbeatTimer'])clearInterval(this[_0x2e0a23(0x183)]);await this['status'](_0x2e0a23(0x15b))[_0x2e0a23(0x151)](()=>{}),this[_0x2e0a23(0x154)](_0x2e0a23(0x190));}async[a0_0x595caf(0x167)](_0x30e150,_0x13412a,_0x52c831=a0_0x595caf(0x180)){const _0x4c33a3=a0_0x595caf;return this['call'](_0x4c33a3(0x168),{'alias':_0x30e150,'task':_0x13412a,'priority':_0x52c831,'from_session':this[_0x4c33a3(0x194)]});}async[a0_0x595caf(0x172)](_0x484d13,_0x102352){const _0x3dcc32=a0_0x595caf;return this[_0x3dcc32(0x198)]('send_message',{'alias':_0x484d13,'message':_0x102352,'from_session':this[_0x3dcc32(0x194)]});}async['reply'](_0x334a6f,_0x2d3159,_0x195589=a0_0x595caf(0x17a)){const _0x3d206f=a0_0x595caf;return this[_0x3d206f(0x198)](_0x3d206f(0x193),{'task_id':_0x334a6f,'text':_0x2d3159,'status':_0x195589});}async[a0_0x595caf(0x164)](_0x21ebd6,_0x5cf39a){const _0x4a1478=a0_0x595caf;return this[_0x4a1478(0x198)](_0x4a1478(0x14e),{'resume_id':this['resumeId'],'alias':this[_0x4a1478(0x194)],'status':_0x21ebd6,'server':a0_0xc15a09(),'hostname':a0_0xc15a09(),'agent':this[_0x4a1478(0x14c)],'project_dir':process[_0x4a1478(0x157)](),..._0x5cf39a});}async['getAllStatus'](){const _0x45d687=a0_0x595caf;return this['call'](_0x45d687(0x16c),{});}async['broadcast'](_0x12404c,_0x143cf3){const _0x29742b=a0_0x595caf;return this[_0x29742b(0x198)](_0x29742b(0x16a),{'message':_0x12404c,'filter_server':_0x143cf3?.[_0x29742b(0x15e)],'filter_status':_0x143cf3?.['status']});}async[a0_0x595caf(0x149)](){const _0x394438=a0_0x595caf;let _0x13d542=encodeURIComponent(this['alias']),_0x980aa8=this[_0x394438(0x18b)]+_0x394438(0x189)+_0x13d542,_0x553865=this[_0x394438(0x16f)];while(this['running']){try{this['sseAbort']=new AbortController();let _0x52fcc6={'Accept':_0x394438(0x19e)};if(this[_0x394438(0x14b)])_0x52fcc6[_0x394438(0x186)]=_0x394438(0x175)+this['token'];let _0x105e98=await fetch(_0x980aa8,{'headers':_0x52fcc6,'signal':this[_0x394438(0x178)][_0x394438(0x185)]});if(!_0x105e98['ok']||!_0x105e98[_0x394438(0x170)]){this[_0x394438(0x154)]('SSE\x20failed:\x20'+_0x105e98[_0x394438(0x164)]),await this[_0x394438(0x14a)](_0x553865),_0x553865=Math['min'](_0x553865*1.5,0xea60);continue;}_0x553865=this['reconnectDelay'];let _0x307ded=_0x105e98[_0x394438(0x170)][_0x394438(0x165)](),_0x5d84de=new TextDecoder(),_0x7d608='';while(this[_0x394438(0x14d)]){let {done:_0x4a64e2,value:_0x245a67}=await _0x307ded[_0x394438(0x148)]();if(_0x4a64e2)break;_0x7d608+=_0x5d84de[_0x394438(0x161)](_0x245a67,{'stream':!0x0});let _0x3c90c0=_0x7d608['split']('\x0a');_0x7d608=_0x3c90c0[_0x394438(0x195)]()||'';for(let _0x480272 of _0x3c90c0){if(!_0x480272['startsWith'](_0x394438(0x150)))continue;try{let _0x2e4a3f=JSON['parse'](_0x480272[_0x394438(0x179)](0x6));if(_0x2e4a3f[_0x394438(0x17e)]==='connected'){this[_0x394438(0x154)](_0x394438(0x17c)),this['emit'](_0x394438(0x153));continue;}if(_0x2e4a3f[_0x394438(0x17e)]==='new_task'||_0x2e4a3f[_0x394438(0x17e)]===_0x394438(0x18d)||_0x2e4a3f[_0x394438(0x17e)]===_0x394438(0x16a))await this[_0x394438(0x18c)]();}catch{}}}}catch(_0x25fc11){if(_0x25fc11['name']===_0x394438(0x19d))break;this[_0x394438(0x188)](_0x394438(0x169),_0x25fc11),this[_0x394438(0x154)](_0x394438(0x171)+_0x25fc11['message']);}if(this['running'])this['emit'](_0x394438(0x190)),this[_0x394438(0x154)](_0x394438(0x192)+_0x553865/0x3e8+'s...'),await this['sleep'](_0x553865),_0x553865=Math[_0x394438(0x166)](_0x553865*1.5,0xea60);}}async[a0_0x595caf(0x18c)](){const _0x17d599=a0_0x595caf;try{let _0x306b8f=(await this['call'](_0x17d599(0x19a),{'alias':this['alias'],'limit':0xa}))?.[_0x17d599(0x173)]||[];for(let _0x22b25a of _0x306b8f)await this[_0x17d599(0x198)](_0x17d599(0x14f),{'alias':this['alias'],'message_id':_0x22b25a['id']}),this[_0x17d599(0x154)]('←\x20'+_0x22b25a[_0x17d599(0x184)]+':\x20'+_0x22b25a[_0x17d599(0x197)][_0x17d599(0x179)](0x0,0x3c)),this[_0x17d599(0x188)](_0x17d599(0x16b),_0x22b25a),this[_0x17d599(0x188)](_0x17d599(0x172),_0x22b25a);}catch(_0x1b6ae7){this['log'](_0x17d599(0x17f)+_0x1b6ae7['message']);}}[a0_0x595caf(0x14a)](_0xad95b5){return new Promise(_0x2b8c22=>setTimeout(_0x2b8c22,_0xad95b5));}}var $=T;function a0_0x5ddf(_0x2a411a,_0x4dc889){_0x2a411a=_0x2a411a-0x148;const _0x1325e6=a0_0x1325();let _0x5ddf6e=_0x1325e6[_0x2a411a];return _0x5ddf6e;}export{$ as default,T as CommHub};
|
package/dist/src/node-server.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
|
-
const a0_0x5b2775=a0_0x35ed;(function(_0x25c254,_0x5787df){const _0x14fdc9=a0_0x35ed,_0x80d667=_0x25c254();while(!![]){try{const _0x1b736c=parseInt(_0x14fdc9(0xef))/0x1+-parseInt(_0x14fdc9(0x133))/0x2*(-parseInt(_0x14fdc9(0xe1))/0x3)+parseInt(_0x14fdc9(0xfb))/0x4*(parseInt(_0x14fdc9(0x122))/0x5)+parseInt(_0x14fdc9(0x14e))/0x6*(-parseInt(_0x14fdc9(0x12c))/0x7)+-parseInt(_0x14fdc9(0x10b))/0x8+-parseInt(_0x14fdc9(0xd3))/0x9*(parseInt(_0x14fdc9(0x12e))/0xa)+-parseInt(_0x14fdc9(0xe6))/0xb*(-parseInt(_0x14fdc9(0x110))/0xc);if(_0x1b736c===_0x5787df)break;else _0x80d667['push'](_0x80d667['shift']());}catch(_0x54bc30){_0x80d667['push'](_0x80d667['shift']());}}}(a0_0x362c,0xb4b40));import{readFileSync as a0_0x3f8614,existsSync as a0_0x395463}from'fs';import{join as a0_0xb21986}from'path';import{hostname as a0_0x66785d}from'os';import{execSync as a0_0x4cce10}from'child_process';import{Server as a0_0x3a307d}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x1f7f39}from'@modelcontextprotocol/sdk/server/stdio.js';function a0_0x362c(){const _0x174dda=['working','exit','CommHub\x20init\x20failed:\x20','notifications/claude/channel','warning:\x20could\x20not\x20register:\x20','claude-code','←\x20message\x20from\x20','\x20priority=','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','SSE\x20error:\x20','784735kRPZPs','hub','toTimeString','cancelled','object','from','broadcast','fatal:\x20','number','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','2261PLBwUq','commhub','270dulEFe','indexOf','Target\x20session\x20alias','MCP\x20stdio\x20connected','config.json','12zegTUr','2.0','find','split','report_status','SSE\x20connection\x20error:\x20','status','commhub_send_message','initialize','parse','Current\x20task\x20description','unknown\x20tool','result','write','slice','Session\x20alias:\x20','get','commhub-channel','messages','message_id','.claude/channels/commhub','new_task','task','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','→\x20injected\x20task\x20','length','pop','5514Khjdsc','delete','completed','end','trim','then','get_all_status','connecting\x20to\x20','stdin','token','alias','connect','set','from_session','\x20from\x20','content','utf-8','params','application/json,\x20text/event-stream','stderr','SSE\x20connected\x20as\x20\x22','new_message','get_inbox','commhub_send_task','299007LBLZby','type','.anet','failed','error','0.3.0','\x22\x20(','commhub_get_all_status','idle','Authorization','text','starting\x20SSE\x20listener...','message','ready\x20—\x20waiting\x20for\x20events','608577dlkxIz','replace','in_progress','catch','commhub_report_status','11QJieuW','data:\x20','getReader','string','connected','SIGTERM','tools/call','decode','application/json','1067827bmeYof','cwd','...\x20TMUX=','ack_inbox','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','send_reply','SIGINT','statusText','tmux\x20display-message\x20-p\x20\x27#S\x27','shutting\x20down,\x20reporting\x20offline...','setRequestHandler','Progress\x200-100','8cYgJML',':\x20inbox_count=','send_task','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','POST','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','Bearer\x20','2025-03-26','stringify','body','\x20PROJECT_ENV=','Priority\x20(default:\x20normal)','.env','heartbeat\x20failed:\x20',']\x20[commhub]\x20','http://127.0.0.1:9200','11256704tzchFL','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inbox_count','blocked','join','8906772pglrgq','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','normal','/mcp','startsWith','commhub_reply','notification','read'];a0_0x362c=function(){return _0x174dda;};return a0_0x362c();}import{ListToolsRequestSchema as a0_0x1ea03b,CallToolRequestSchema as a0_0x3ed4f3}from'@modelcontextprotocol/sdk/types.js';function p(_0xa95ea6){const _0x56d19c=a0_0x35ed;if(!a0_0x395463(_0xa95ea6))return;for(let _0x1a667b of a0_0x3f8614(_0xa95ea6,_0x56d19c(0xcb))['split']('\x0a')){let _0x492177=_0x1a667b[_0x56d19c(0x152)]();if(!_0x492177||_0x492177[_0x56d19c(0x114)]('#'))continue;let _0x3745a6=_0x492177[_0x56d19c(0x12f)]('=');if(_0x3745a6<0x0)continue;let _0x4376a3=_0x492177[_0x56d19c(0x141)](0x0,_0x3745a6)['trim'](),_0x17e66d=_0x492177[_0x56d19c(0x141)](_0x3745a6+0x1)['trim']()[_0x56d19c(0xe2)](/^["']|["']$/g,'');if(!process.env[_0x4376a3])process.env[_0x4376a3]=_0x17e66d;}}var C=process.env.HOME||'~',T=a0_0xb21986(C,a0_0x5b2775(0x147));p(a0_0xb21986(T,'.env'));var L=process['cwd']()[a0_0x5b2775(0xe2)](/\//g,'-');p(a0_0xb21986(T,L,a0_0x5b2775(0x107)));function U(){const _0x3fa1e6=a0_0x5b2775;try{return a0_0x4cce10(_0x3fa1e6(0xf7),{'encoding':_0x3fa1e6(0xcb),'timeout':0x7d0})[_0x3fa1e6(0x152)]();}catch{return'';}}function c(){const _0x55b3e4=a0_0x5b2775;try{let _0x108cfd=a0_0xb21986(C,_0x55b3e4(0xd5),_0x55b3e4(0x132));if(a0_0x395463(_0x108cfd))return JSON['parse'](a0_0x3f8614(_0x108cfd,_0x55b3e4(0xcb)));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H['hub']||a0_0x5b2775(0x10a),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x66785d(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto['randomUUID'](),X=process.env.COMMHUB_TOKEN||H[a0_0x5b2775(0xc4)]||'';function Y(_0x41f5f3){const _0x269f14=a0_0x5b2775;let _0x29e953=new Date()[_0x269f14(0x124)]()['slice'](0x0,0x8);process[_0x269f14(0xce)][_0x269f14(0x140)]('['+_0x29e953+_0x269f14(0x109)+_0x41f5f3+'\x0a');}function h(_0x1253a9){return new Promise(_0x5cb1e9=>setTimeout(_0x5cb1e9,_0x1253a9));}Y('ENV:\x20URL='+D+'\x20ALIAS='+Z+'\x20RESUME_ID='+w[a0_0x5b2775(0x141)](0x0,0x8)+a0_0x5b2775(0xf1)+(f||'none')+'\x20CWD='+process[a0_0x5b2775(0xf0)]()+a0_0x5b2775(0x105)+L);var k=new Map(),K=new a0_0x3a307d({'name':a0_0x5b2775(0x144),'version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x5b2775(0x120),a0_0x5b2775(0xfe),'Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x5b2775(0x14a),a0_0x5b2775(0x142)+Z][a0_0x5b2775(0x10f)]('\x0a')});K['setRequestHandler'](a0_0x1ea03b,async()=>({'tools':[{'name':a0_0x5b2775(0x115),'description':a0_0x5b2775(0x10c),'inputSchema':{'type':a0_0x5b2775(0x126),'properties':{'task_id':{'type':'string','description':a0_0x5b2775(0x100)},'text':{'type':a0_0x5b2775(0xe9),'description':'Reply\x20text\x20/\x20result\x20summary'},'status':{'type':'string','enum':['completed','failed',a0_0x5b2775(0x125),'blocked',a0_0x5b2775(0xd7),a0_0x5b2775(0xe3)],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':[a0_0x5b2775(0xdd)]}},{'name':a0_0x5b2775(0xe5),'description':a0_0x5b2775(0x12b),'inputSchema':{'type':a0_0x5b2775(0x126),'properties':{'status':{'type':a0_0x5b2775(0xe9),'enum':[a0_0x5b2775(0x118),a0_0x5b2775(0xdb),a0_0x5b2775(0x10e),a0_0x5b2775(0xd7)]},'task':{'type':a0_0x5b2775(0xe9),'description':a0_0x5b2775(0x13d)},'progress':{'type':a0_0x5b2775(0x12a),'description':a0_0x5b2775(0xfa)}},'required':[a0_0x5b2775(0x139)]}},{'name':a0_0x5b2775(0xd2),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':'object','properties':{'alias':{'type':'string','description':a0_0x5b2775(0x130)},'task':{'type':'string','description':'Task\x20content'},'priority':{'type':a0_0x5b2775(0xe9),'enum':['high',a0_0x5b2775(0x112),'low'],'description':a0_0x5b2775(0x106)}},'required':[a0_0x5b2775(0xc5),a0_0x5b2775(0x149)]}},{'name':a0_0x5b2775(0x13a),'description':a0_0x5b2775(0xf3),'inputSchema':{'type':a0_0x5b2775(0x126),'properties':{'alias':{'type':a0_0x5b2775(0xe9),'description':'Target\x20session\x20alias'},'message':{'type':a0_0x5b2775(0xe9),'description':'Message\x20content'}},'required':[a0_0x5b2775(0xc5),'message']}},{'name':a0_0x5b2775(0xda),'description':a0_0x5b2775(0x111),'inputSchema':{'type':a0_0x5b2775(0x126),'properties':{}}}]}));async function P(_0x1c3ba2,_0x5e1bfa){const _0x19dfa5=a0_0x5b2775;let _0x34922a=await fetch(D+_0x19dfa5(0x113),{'method':_0x19dfa5(0xff),'headers':{'Content-Type':_0x19dfa5(0xee),'Accept':_0x19dfa5(0xcd),...X?{'Authorization':_0x19dfa5(0x101)+X}:{}},'body':JSON[_0x19dfa5(0x103)]({'jsonrpc':_0x19dfa5(0x134),'id':0x1,'method':_0x19dfa5(0x13b),'params':{'protocolVersion':_0x19dfa5(0x102),'capabilities':{},'clientInfo':{'name':'commhub-channel','version':_0x19dfa5(0xd8)}}})});if(!_0x34922a['ok']){let _0xefa62f=await _0x34922a[_0x19dfa5(0xdd)]();return Y(_0x19dfa5(0x11a)+_0x34922a[_0x19dfa5(0x139)]+'\x20'+_0xefa62f['slice'](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x34922a[_0x19dfa5(0x139)]};}await _0x34922a[_0x19dfa5(0xdd)]();let _0x3cfd2d=(await(await fetch(D+_0x19dfa5(0x113),{'method':'POST','headers':{'Content-Type':_0x19dfa5(0xee),'Accept':'application/json,\x20text/event-stream',...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x19dfa5(0x103)]({'jsonrpc':'2.0','id':0x2,'method':_0x19dfa5(0xec),'params':{'name':_0x1c3ba2,'arguments':_0x5e1bfa}})}))[_0x19dfa5(0xdd)]())['split']('\x0a')[_0x19dfa5(0x135)](_0x5688cf=>_0x5688cf[_0x19dfa5(0x114)]('data:\x20'));if(_0x3cfd2d){let _0x1ceba9=JSON['parse'](_0x3cfd2d[_0x19dfa5(0x141)](0x6));return _0x1ceba9?.[_0x19dfa5(0x13f)]?.[_0x19dfa5(0xca)]?.[0x0]?.[_0x19dfa5(0xdd)]?JSON[_0x19dfa5(0x13c)](_0x1ceba9[_0x19dfa5(0x13f)]['content'][0x0]['text']):_0x1ceba9;}return{'ok':!0x1,'error':'no\x20response'};}K[a0_0x5b2775(0xf9)](a0_0x3ed4f3,async _0x563e1e=>{const _0x2cde69=a0_0x5b2775;let {name:_0x5d2639,arguments:_0x18b0a7}=_0x563e1e[_0x2cde69(0xcc)];if(_0x5d2639===_0x2cde69(0x115)){let {task_id:_0x24bb8a,text:_0x8c6efe,status:_0x3c934c}=_0x18b0a7;if(_0x3c934c==='completed'||_0x3c934c===_0x2cde69(0xd6)||_0x3c934c===_0x2cde69(0x125)){let _0x17f4eb=_0x3c934c===_0x2cde69(0x150)?'replied':_0x3c934c,_0x29c9e5=_0x24bb8a?k[_0x2cde69(0x143)](_0x24bb8a)||_0x2cde69(0x123):_0x2cde69(0x123),_0x11c98d=await P(_0x2cde69(0xf4),{'alias':_0x29c9e5,'text':_0x8c6efe,'in_reply_to':_0x24bb8a||void 0x0,'status':_0x17f4eb,'from_session':Z});if(_0x24bb8a)k[_0x2cde69(0x14f)](_0x24bb8a);return{'content':[{'type':'text','text':JSON[_0x2cde69(0x103)](_0x11c98d)}]};}let _0x249c27=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x3c934c===_0x2cde69(0x10e)?'blocked':_0x3c934c===_0x2cde69(0xd7)?_0x2cde69(0xd7):_0x2cde69(0x118),'task':_0x8c6efe[_0x2cde69(0x141)](0x0,0xc8),'output':_0x8c6efe});return{'content':[{'type':_0x2cde69(0xdd),'text':JSON[_0x2cde69(0x103)](_0x249c27)}]};}if(_0x5d2639===_0x2cde69(0xe5)){let {status:_0x4ab5cc,task:_0x15285a,progress:_0x107099}=_0x18b0a7,_0x25d276=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x4ab5cc,'task':_0x15285a,'progress':_0x107099});return{'content':[{'type':_0x2cde69(0xdd),'text':JSON['stringify'](_0x25d276)}]};}if(_0x5d2639===_0x2cde69(0xd2)){let {alias:_0x12a8f1,task:_0x392491,priority:_0x2dde26}=_0x18b0a7,_0x347678=await P(_0x2cde69(0xfd),{'alias':_0x12a8f1,'task':_0x392491,'priority':_0x2dde26||_0x2cde69(0x112),'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x2cde69(0x103)](_0x347678)}]};}if(_0x5d2639===_0x2cde69(0x13a)){let {alias:_0x513eab,message:_0x2c16b1}=_0x18b0a7,_0x1b5e19=await P('send_message',{'alias':_0x513eab,'message':_0x2c16b1,'from_session':Z});return{'content':[{'type':_0x2cde69(0xdd),'text':JSON[_0x2cde69(0x103)](_0x1b5e19)}]};}if(_0x5d2639===_0x2cde69(0xda)){let _0x29d4c7=await P(_0x2cde69(0xc1),{});return{'content':[{'type':'text','text':JSON['stringify'](_0x29d4c7)}]};}return{'content':[{'type':_0x2cde69(0xdd),'text':JSON[_0x2cde69(0x103)]({'error':_0x2cde69(0x13e)})}]};});async function v(){const _0x2adb87=a0_0x5b2775;let _0x35e382=D+'/events/'+encodeURIComponent(Z),_0x566767={};if(X)_0x566767[_0x2adb87(0xdc)]=_0x2adb87(0x101)+X;Y(_0x2adb87(0xc2)+_0x35e382);while(!0x0){try{let _0x566641=await fetch(_0x35e382,{'headers':_0x566767});if(!_0x566641['ok']){Y(_0x2adb87(0x121)+_0x566641[_0x2adb87(0x139)]+'\x20'+_0x566641[_0x2adb87(0xf6)]),await h(0x1388);continue;}let _0x2aacc0=_0x566641[_0x2adb87(0x104)][_0x2adb87(0xe8)](),_0x16b44e=new TextDecoder(),_0x12be8c='';while(!0x0){let {done:_0x1904af,value:_0x48f701}=await _0x2aacc0[_0x2adb87(0x117)]();if(_0x1904af)break;_0x12be8c+=_0x16b44e[_0x2adb87(0xed)](_0x48f701,{'stream':!0x0});let _0x3b4349=_0x12be8c[_0x2adb87(0x136)]('\x0a\x0a');_0x12be8c=_0x3b4349[_0x2adb87(0x14d)]()||'';for(let _0x18897b of _0x3b4349){let _0x92b508=_0x18897b['split']('\x0a')[_0x2adb87(0x135)](_0x53a948=>_0x53a948[_0x2adb87(0x114)](_0x2adb87(0xe7)));if(!_0x92b508)continue;try{let _0x29f639=JSON[_0x2adb87(0x13c)](_0x92b508[_0x2adb87(0x141)](0x6));await u(_0x29f639);}catch(_0x2613b9){Y('parse\x20error:\x20'+_0x2613b9);}}}Y('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x3a56f9){Y(_0x2adb87(0x138)+_0x3a56f9);}await h(0xbb8);}}async function u(_0x5ec700){const _0x149fae=a0_0x5b2775;if(_0x5ec700[_0x149fae(0xd4)]===_0x149fae(0xea)){Y(_0x149fae(0xcf)+Z+'\x22');return;}if(_0x5ec700[_0x149fae(0xd4)]===_0x149fae(0xd0)){if(Y(_0x149fae(0x11e)+_0x5ec700[_0x149fae(0x127)]+':\x20'+_0x5ec700['message'][_0x149fae(0x141)](0x0,0x3c)),await K[_0x149fae(0x116)]({'method':'notifications/claude/channel','params':{'content':_0x5ec700[_0x149fae(0xdf)],'meta':{'sender':_0x5ec700[_0x149fae(0x127)]||'hub','sender_id':_0x149fae(0x12d),'user':_0x5ec700[_0x149fae(0x127)]||_0x149fae(0x123),'priority':_0x149fae(0x112)}}}),_0x5ec700[_0x149fae(0x146)])await P(_0x149fae(0xf2),{'alias':Z,'message_id':_0x5ec700['message_id']});return;}if(_0x5ec700[_0x149fae(0xd4)]===_0x149fae(0x148)||_0x5ec700['type']===_0x149fae(0x128)){Y('←\x20'+_0x5ec700[_0x149fae(0xd4)]+_0x149fae(0xfc)+_0x5ec700[_0x149fae(0x10d)]+_0x149fae(0x11f)+(_0x5ec700['priority']||_0x149fae(0x112)));let _0x2c0679=await P(_0x149fae(0xd1),{'alias':Z,'limit':0x5});if(_0x2c0679?.['ok']&&_0x2c0679['messages']?.[_0x149fae(0x14c)]>0x0)for(let _0x1d9292 of _0x2c0679[_0x149fae(0x145)]){let _0x190153={'sender':_0x1d9292[_0x149fae(0xc8)]||'hub','sender_id':_0x149fae(0x12d),'user':_0x1d9292[_0x149fae(0xc8)]||_0x149fae(0x123),'task_id':_0x1d9292['id'],'priority':_0x1d9292['priority']||_0x149fae(0x112)};k[_0x149fae(0xc7)](_0x1d9292['id'],_0x1d9292[_0x149fae(0xc8)]||_0x149fae(0x123)),await K[_0x149fae(0x116)]({'method':_0x149fae(0x11b),'params':{'content':_0x1d9292[_0x149fae(0xca)],'meta':_0x190153}}),Y(_0x149fae(0x14b)+_0x1d9292['id'][_0x149fae(0x141)](0x0,0x8)+_0x149fae(0xc9)+_0x1d9292['from_session']+':\x20'+_0x1d9292[_0x149fae(0xca)][_0x149fae(0x141)](0x0,0x3c)),await P(_0x149fae(0xf2),{'alias':Z,'message_id':_0x1d9292['id']});}}}async function S(){const _0x545bcd=a0_0x5b2775;let _0x1e51ba=new a0_0x1f7f39();await K[_0x545bcd(0xc6)](_0x1e51ba),Y(_0x545bcd(0x131)),Y(_0x545bcd(0xde)),v()[_0x545bcd(0xe4)](_0x555fc8=>Y('SSE\x20fatal:\x20'+_0x555fc8)),P(_0x545bcd(0x137),{'resume_id':w,'alias':Z,'status':_0x545bcd(0xdb),'server':a0_0x66785d(),'hostname':a0_0x66785d(),'agent':_0x545bcd(0x11d),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x545bcd(0xc0)](()=>Y('registered\x20as\x20\x22'+Z+_0x545bcd(0xd9)+w[_0x545bcd(0x141)](0x0,0x8)+')'))['catch'](_0x5eb471=>Y(_0x545bcd(0x11c)+_0x5eb471)),setInterval(()=>{const _0x418163=_0x545bcd;P('report_status',{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x66785d(),'hostname':a0_0x66785d(),'agent':_0x418163(0x11d),'project_dir':process[_0x418163(0xf0)](),'tmux_name':f||void 0x0})['catch'](_0x1d2344=>Y(_0x418163(0x108)+_0x1d2344));},0x2bf20),Y(_0x545bcd(0xe0));}S()['catch'](_0x558dd6=>{const _0x386c93=a0_0x5b2775;Y(_0x386c93(0x129)+_0x558dd6),process[_0x386c93(0x119)](0x1);});async function N(){const _0xaab401=a0_0x5b2775;Y(_0xaab401(0xf8)),await P(_0xaab401(0x137),{'resume_id':w,'alias':Z,'status':_0xaab401(0xd7),'task':'session\x20disconnected'})[_0xaab401(0xe4)](()=>{}),process[_0xaab401(0x119)](0x0);}function a0_0x35ed(_0x46cf81,_0x3da3e7){_0x46cf81=_0x46cf81-0xc0;const _0x362ca8=a0_0x362c();let _0x35ede8=_0x362ca8[_0x46cf81];return _0x35ede8;}process[a0_0x5b2775(0xc3)]['on'](a0_0x5b2775(0x151),()=>N()),process['on'](a0_0x5b2775(0xeb),()=>N()),process['on'](a0_0x5b2775(0xf5),()=>N());
|
|
2
|
+
const a0_0x18a035=a0_0x36a0;(function(_0x2e111d,_0x41560a){const _0x34c27c=a0_0x36a0,_0x4f2c76=_0x2e111d();while(!![]){try{const _0x599c0c=-parseInt(_0x34c27c(0x217))/0x1*(-parseInt(_0x34c27c(0x1da))/0x2)+-parseInt(_0x34c27c(0x1db))/0x3*(parseInt(_0x34c27c(0x1b6))/0x4)+parseInt(_0x34c27c(0x1c7))/0x5*(-parseInt(_0x34c27c(0x1f2))/0x6)+-parseInt(_0x34c27c(0x1d5))/0x7*(-parseInt(_0x34c27c(0x224))/0x8)+-parseInt(_0x34c27c(0x1c2))/0x9+parseInt(_0x34c27c(0x203))/0xa+parseInt(_0x34c27c(0x1ea))/0xb;if(_0x599c0c===_0x41560a)break;else _0x4f2c76['push'](_0x4f2c76['shift']());}catch(_0x574f4a){_0x4f2c76['push'](_0x4f2c76['shift']());}}}(a0_0x54db,0xbcb28));import{readFileSync as a0_0x4a776f,existsSync as a0_0x1e3c45}from'fs';import{join as a0_0x27c2ed}from'path';function a0_0x54db(){const _0x221944=['failed','/mcp','get','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','2195Mdpcgn','idle','delete','report_status','0.3.0','trim','slice','notification','\x20ALIAS=','get_inbox','→\x20injected\x20task\x20','2.0','SSE\x20connection\x20error:\x20','message_id','4767595kRpvQN','object','SIGINT','cancelled','exit','2957336EhBFuS','1071951KmGbHN','type','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','stderr','/events/','error','http://127.0.0.1:9200','parse','\x22\x20(','read','from_session','getReader','parse\x20error:\x20','length','messages','7262849Gqkklr','application/json','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','SSE\x20stream\x20ended,\x20reconnecting...','Bearer\x20','status','stringify','\x20priority=','17358YsTkIV','application/json,\x20text/event-stream','completed','toTimeString','startsWith','fatal:\x20','Authorization','MCP\x20stdio\x20connected','ready\x20—\x20waiting\x20for\x20events','find','pop','shutting\x20down,\x20reporting\x20offline...','string','send_reply','cwd','body','ack_inbox','10688580wYpJmP','POST','\x20from\x20','starting\x20SSE\x20listener...','commhub','\x20PROJECT_ENV=','initialize','normal','commhub_reply','notifications/claude/channel','from','data:\x20','utf-8','\x20RESUME_ID=','message',']\x20[commhub]\x20','unknown\x20tool','config.json','split','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','1uMFtQc','hub','setRequestHandler','in_progress','\x20CWD=','commhub_report_status','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','commhub_send_task','alias','claude-code','init\x20failed:\x20','result','params','8zgmJpe','number','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','decode','high','catch','...\x20TMUX=','text','SSE\x20fatal:\x20','.env','Reply\x20text\x20/\x20result\x20summary','ENV:\x20URL=','get_all_status','token','end','blocked','send_message','indexOf','write','replace','Task\x20content','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','task','commhub-channel','12MgYurQ','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','Current\x20task\x20description','commhub_send_message','tmux\x20display-message\x20-p\x20\x27#S\x27','commhub_get_all_status','content','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','connecting\x20to\x20','priority','connected','Target\x20session\x20alias','6965892hGHNMN'];a0_0x54db=function(){return _0x221944;};return a0_0x54db();}import{hostname as a0_0x3a7455}from'os';import{execSync as a0_0x185ef0}from'child_process';import{Server as a0_0x3cd0e6}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0xa58a50}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x1a8297,CallToolRequestSchema as a0_0x19d0b1}from'@modelcontextprotocol/sdk/types.js';function p(_0x1066f6){const _0x5d5aeb=a0_0x36a0;if(!a0_0x1e3c45(_0x1066f6))return;for(let _0x2c89a1 of a0_0x4a776f(_0x1066f6,_0x5d5aeb(0x20f))['split']('\x0a')){let _0x70a9d8=_0x2c89a1['trim']();if(!_0x70a9d8||_0x70a9d8[_0x5d5aeb(0x1f6)]('#'))continue;let _0x3ff821=_0x70a9d8[_0x5d5aeb(0x1af)]('=');if(_0x3ff821<0x0)continue;let _0x4719c4=_0x70a9d8[_0x5d5aeb(0x1cd)](0x0,_0x3ff821)[_0x5d5aeb(0x1cc)](),_0x25a674=_0x70a9d8[_0x5d5aeb(0x1cd)](_0x3ff821+0x1)['trim']()[_0x5d5aeb(0x1b1)](/^["']|["']$/g,'');if(!process.env[_0x4719c4])process.env[_0x4719c4]=_0x25a674;}}var C=process.env.HOME||'~',T=a0_0x27c2ed(C,'.claude/channels/commhub');p(a0_0x27c2ed(T,'.env'));var L=process[a0_0x18a035(0x200)]()[a0_0x18a035(0x1b1)](/\//g,'-');p(a0_0x27c2ed(T,L,a0_0x18a035(0x22d)));function U(){const _0x4b52f4=a0_0x18a035;try{return a0_0x185ef0(_0x4b52f4(0x1ba),{'encoding':_0x4b52f4(0x20f),'timeout':0x7d0})['trim']();}catch{return'';}}function a0_0x36a0(_0x57c965,_0x4e7ba7){_0x57c965=_0x57c965-0x1ab;const _0x54dbac=a0_0x54db();let _0x36a0d3=_0x54dbac[_0x57c965];return _0x36a0d3;}function c(){const _0x25f22a=a0_0x18a035;try{let _0x3dc012=a0_0x27c2ed(C,'.anet',_0x25f22a(0x214));if(a0_0x1e3c45(_0x3dc012))return JSON[_0x25f22a(0x1e2)](a0_0x4a776f(_0x3dc012,_0x25f22a(0x20f)));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H['hub']||a0_0x18a035(0x1e1),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x3a7455(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto['randomUUID'](),X=process.env.COMMHUB_TOKEN||H[a0_0x18a035(0x1ab)]||'';function Y(_0x3e95d1){const _0xda851e=a0_0x18a035;let _0x2aec32=new Date()[_0xda851e(0x1f5)]()['slice'](0x0,0x8);process[_0xda851e(0x1de)][_0xda851e(0x1b0)]('['+_0x2aec32+_0xda851e(0x212)+_0x3e95d1+'\x0a');}function h(_0x307788){return new Promise(_0x21c724=>setTimeout(_0x21c724,_0x307788));}Y(a0_0x18a035(0x22f)+D+a0_0x18a035(0x1cf)+Z+a0_0x18a035(0x210)+w[a0_0x18a035(0x1cd)](0x0,0x8)+a0_0x18a035(0x22a)+(f||'none')+a0_0x18a035(0x21b)+process[a0_0x18a035(0x200)]()+a0_0x18a035(0x208)+L);var k=new Map(),K=new a0_0x3cd0e6({'name':a0_0x18a035(0x1b5),'version':a0_0x18a035(0x1cb)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':['Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>',a0_0x18a035(0x1dd),a0_0x18a035(0x1c6),a0_0x18a035(0x21d),'Session\x20alias:\x20'+Z]['join']('\x0a')});K[a0_0x18a035(0x219)](a0_0x1a8297,async()=>({'tools':[{'name':'commhub_reply','description':a0_0x18a035(0x1ec),'inputSchema':{'type':a0_0x18a035(0x1d6),'properties':{'task_id':{'type':a0_0x18a035(0x1fe),'description':a0_0x18a035(0x1b7)},'text':{'type':a0_0x18a035(0x1fe),'description':a0_0x18a035(0x22e)},'status':{'type':a0_0x18a035(0x1fe),'enum':['completed',a0_0x18a035(0x1c3),a0_0x18a035(0x1d8),a0_0x18a035(0x1ad),a0_0x18a035(0x1e0),a0_0x18a035(0x21a)],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':[a0_0x18a035(0x22b)]}},{'name':a0_0x18a035(0x21c),'description':a0_0x18a035(0x1bd),'inputSchema':{'type':a0_0x18a035(0x1d6),'properties':{'status':{'type':a0_0x18a035(0x1fe),'enum':['working',a0_0x18a035(0x1c8),a0_0x18a035(0x1ad),a0_0x18a035(0x1e0)]},'task':{'type':a0_0x18a035(0x1fe),'description':a0_0x18a035(0x1b8)},'progress':{'type':a0_0x18a035(0x225),'description':'Progress\x200-100'}},'required':[a0_0x18a035(0x1ef)]}},{'name':a0_0x18a035(0x21e),'description':a0_0x18a035(0x216),'inputSchema':{'type':a0_0x18a035(0x1d6),'properties':{'alias':{'type':a0_0x18a035(0x1fe),'description':'Target\x20session\x20alias'},'task':{'type':a0_0x18a035(0x1fe),'description':a0_0x18a035(0x1b2)},'priority':{'type':'string','enum':[a0_0x18a035(0x228),a0_0x18a035(0x20a),'low'],'description':'Priority\x20(default:\x20normal)'}},'required':[a0_0x18a035(0x21f),a0_0x18a035(0x1b4)]}},{'name':a0_0x18a035(0x1b9),'description':a0_0x18a035(0x226),'inputSchema':{'type':a0_0x18a035(0x1d6),'properties':{'alias':{'type':a0_0x18a035(0x1fe),'description':a0_0x18a035(0x1c1)},'message':{'type':'string','description':'Message\x20content'}},'required':[a0_0x18a035(0x21f),a0_0x18a035(0x211)]}},{'name':a0_0x18a035(0x1bb),'description':a0_0x18a035(0x1b3),'inputSchema':{'type':'object','properties':{}}}]}));async function P(_0x3a2b17,_0x3bd07b){const _0x4158f0=a0_0x18a035;let _0x5dcdff=await fetch(D+_0x4158f0(0x1c4),{'method':_0x4158f0(0x204),'headers':{'Content-Type':'application/json','Accept':_0x4158f0(0x1f3),...X?{'Authorization':_0x4158f0(0x1ee)+X}:{}},'body':JSON[_0x4158f0(0x1f0)]({'jsonrpc':_0x4158f0(0x1d2),'id':0x1,'method':_0x4158f0(0x209),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x4158f0(0x1b5),'version':'0.3.0'}}})});if(!_0x5dcdff['ok']){let _0x537939=await _0x5dcdff[_0x4158f0(0x22b)]();return Y('CommHub\x20init\x20failed:\x20'+_0x5dcdff[_0x4158f0(0x1ef)]+'\x20'+_0x537939[_0x4158f0(0x1cd)](0x0,0x64)),{'ok':!0x1,'error':_0x4158f0(0x221)+_0x5dcdff['status']};}await _0x5dcdff[_0x4158f0(0x22b)]();let _0x216c3c=(await(await fetch(D+_0x4158f0(0x1c4),{'method':_0x4158f0(0x204),'headers':{'Content-Type':_0x4158f0(0x1eb),'Accept':_0x4158f0(0x1f3),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x4158f0(0x1f0)]({'jsonrpc':_0x4158f0(0x1d2),'id':0x2,'method':'tools/call','params':{'name':_0x3a2b17,'arguments':_0x3bd07b}})}))[_0x4158f0(0x22b)]())['split']('\x0a')[_0x4158f0(0x1fb)](_0x1bd3ee=>_0x1bd3ee[_0x4158f0(0x1f6)](_0x4158f0(0x20e)));if(_0x216c3c){let _0x4eb342=JSON[_0x4158f0(0x1e2)](_0x216c3c[_0x4158f0(0x1cd)](0x6));return _0x4eb342?.[_0x4158f0(0x222)]?.[_0x4158f0(0x1bc)]?.[0x0]?.[_0x4158f0(0x22b)]?JSON[_0x4158f0(0x1e2)](_0x4eb342[_0x4158f0(0x222)][_0x4158f0(0x1bc)][0x0][_0x4158f0(0x22b)]):_0x4eb342;}return{'ok':!0x1,'error':'no\x20response'};}K['setRequestHandler'](a0_0x19d0b1,async _0x51fa76=>{const _0x3d4ffd=a0_0x18a035;let {name:_0x325614,arguments:_0x3ec18c}=_0x51fa76[_0x3d4ffd(0x223)];if(_0x325614===_0x3d4ffd(0x20b)){let {task_id:_0x9f0145,text:_0x517b54,status:_0x255707}=_0x3ec18c;if(_0x255707===_0x3d4ffd(0x1f4)||_0x255707===_0x3d4ffd(0x1c3)||_0x255707==='cancelled'){let _0x35e5b9=_0x255707===_0x3d4ffd(0x1f4)?'replied':_0x255707,_0x1c4143=_0x9f0145?k[_0x3d4ffd(0x1c5)](_0x9f0145)||_0x3d4ffd(0x218):_0x3d4ffd(0x218),_0x2c2652=await P(_0x3d4ffd(0x1ff),{'alias':_0x1c4143,'text':_0x517b54,'in_reply_to':_0x9f0145||void 0x0,'status':_0x35e5b9,'from_session':Z});if(_0x9f0145)k[_0x3d4ffd(0x1c9)](_0x9f0145);return{'content':[{'type':_0x3d4ffd(0x22b),'text':JSON[_0x3d4ffd(0x1f0)](_0x2c2652)}]};}let _0x465006=await P(_0x3d4ffd(0x1ca),{'resume_id':w,'alias':Z,'status':_0x255707===_0x3d4ffd(0x1ad)?_0x3d4ffd(0x1ad):_0x255707===_0x3d4ffd(0x1e0)?'error':'working','task':_0x517b54['slice'](0x0,0xc8),'output':_0x517b54});return{'content':[{'type':'text','text':JSON[_0x3d4ffd(0x1f0)](_0x465006)}]};}if(_0x325614===_0x3d4ffd(0x21c)){let {status:_0x429ad8,task:_0x79c73d,progress:_0xeee2fd}=_0x3ec18c,_0x123478=await P(_0x3d4ffd(0x1ca),{'resume_id':w,'alias':Z,'status':_0x429ad8,'task':_0x79c73d,'progress':_0xeee2fd});return{'content':[{'type':_0x3d4ffd(0x22b),'text':JSON[_0x3d4ffd(0x1f0)](_0x123478)}]};}if(_0x325614===_0x3d4ffd(0x21e)){let {alias:_0x10b5c1,task:_0x165ce8,priority:_0x45aeb3}=_0x3ec18c,_0x1bc630=await P('send_task',{'alias':_0x10b5c1,'task':_0x165ce8,'priority':_0x45aeb3||_0x3d4ffd(0x20a),'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x3d4ffd(0x1f0)](_0x1bc630)}]};}if(_0x325614==='commhub_send_message'){let {alias:_0x381430,message:_0x4528c3}=_0x3ec18c,_0x58e563=await P(_0x3d4ffd(0x1ae),{'alias':_0x381430,'message':_0x4528c3,'from_session':Z});return{'content':[{'type':_0x3d4ffd(0x22b),'text':JSON[_0x3d4ffd(0x1f0)](_0x58e563)}]};}if(_0x325614===_0x3d4ffd(0x1bb)){let _0x2b1975=await P(_0x3d4ffd(0x230),{});return{'content':[{'type':'text','text':JSON['stringify'](_0x2b1975)}]};}return{'content':[{'type':_0x3d4ffd(0x22b),'text':JSON[_0x3d4ffd(0x1f0)]({'error':_0x3d4ffd(0x213)})}]};});async function v(){const _0x5c7a78=a0_0x18a035;let _0x44fc4f=D+_0x5c7a78(0x1df)+encodeURIComponent(Z),_0xe3fb8={};if(X)_0xe3fb8[_0x5c7a78(0x1f8)]=_0x5c7a78(0x1ee)+X;Y(_0x5c7a78(0x1be)+_0x44fc4f);while(!0x0){try{let _0x4e8a11=await fetch(_0x44fc4f,{'headers':_0xe3fb8});if(!_0x4e8a11['ok']){Y('SSE\x20error:\x20'+_0x4e8a11['status']+'\x20'+_0x4e8a11['statusText']),await h(0x1388);continue;}let _0xfbb1b8=_0x4e8a11[_0x5c7a78(0x201)][_0x5c7a78(0x1e6)](),_0x31ea69=new TextDecoder(),_0x155946='';while(!0x0){let {done:_0x2ea5ed,value:_0x53eac0}=await _0xfbb1b8[_0x5c7a78(0x1e4)]();if(_0x2ea5ed)break;_0x155946+=_0x31ea69[_0x5c7a78(0x227)](_0x53eac0,{'stream':!0x0});let _0x10ba2a=_0x155946[_0x5c7a78(0x215)]('\x0a\x0a');_0x155946=_0x10ba2a[_0x5c7a78(0x1fc)]()||'';for(let _0x1871bc of _0x10ba2a){let _0x56c9cc=_0x1871bc[_0x5c7a78(0x215)]('\x0a')[_0x5c7a78(0x1fb)](_0x12457e=>_0x12457e[_0x5c7a78(0x1f6)]('data:\x20'));if(!_0x56c9cc)continue;try{let _0x4c6810=JSON[_0x5c7a78(0x1e2)](_0x56c9cc[_0x5c7a78(0x1cd)](0x6));await u(_0x4c6810);}catch(_0x668828){Y(_0x5c7a78(0x1e7)+_0x668828);}}}Y(_0x5c7a78(0x1ed));}catch(_0x433a42){Y(_0x5c7a78(0x1d3)+_0x433a42);}await h(0xbb8);}}async function u(_0x1d4379){const _0x2bddcd=a0_0x18a035;if(_0x1d4379[_0x2bddcd(0x1dc)]===_0x2bddcd(0x1c0)){Y('SSE\x20connected\x20as\x20\x22'+Z+'\x22');return;}if(_0x1d4379['type']==='new_message'){if(Y('←\x20message\x20from\x20'+_0x1d4379[_0x2bddcd(0x20d)]+':\x20'+_0x1d4379['message']['slice'](0x0,0x3c)),await K[_0x2bddcd(0x1ce)]({'method':_0x2bddcd(0x20c),'params':{'content':_0x1d4379['message'],'meta':{'sender':_0x1d4379[_0x2bddcd(0x20d)]||_0x2bddcd(0x218),'sender_id':_0x2bddcd(0x207),'user':_0x1d4379[_0x2bddcd(0x20d)]||_0x2bddcd(0x218),'priority':_0x2bddcd(0x20a)}}}),_0x1d4379['message_id'])await P(_0x2bddcd(0x202),{'alias':Z,'message_id':_0x1d4379[_0x2bddcd(0x1d4)]});return;}if(_0x1d4379[_0x2bddcd(0x1dc)]==='new_task'||_0x1d4379['type']==='broadcast'){Y('←\x20'+_0x1d4379[_0x2bddcd(0x1dc)]+':\x20inbox_count='+_0x1d4379['inbox_count']+_0x2bddcd(0x1f1)+(_0x1d4379['priority']||_0x2bddcd(0x20a)));let _0x5ab10f=await P(_0x2bddcd(0x1d0),{'alias':Z,'limit':0x5});if(_0x5ab10f?.['ok']&&_0x5ab10f[_0x2bddcd(0x1e9)]?.[_0x2bddcd(0x1e8)]>0x0)for(let _0x1fbb23 of _0x5ab10f[_0x2bddcd(0x1e9)]){let _0x304032={'sender':_0x1fbb23[_0x2bddcd(0x1e5)]||_0x2bddcd(0x218),'sender_id':_0x2bddcd(0x207),'user':_0x1fbb23[_0x2bddcd(0x1e5)]||_0x2bddcd(0x218),'task_id':_0x1fbb23['id'],'priority':_0x1fbb23[_0x2bddcd(0x1bf)]||_0x2bddcd(0x20a)};k['set'](_0x1fbb23['id'],_0x1fbb23[_0x2bddcd(0x1e5)]||'hub'),await K[_0x2bddcd(0x1ce)]({'method':_0x2bddcd(0x20c),'params':{'content':_0x1fbb23[_0x2bddcd(0x1bc)],'meta':_0x304032}}),Y(_0x2bddcd(0x1d1)+_0x1fbb23['id'][_0x2bddcd(0x1cd)](0x0,0x8)+_0x2bddcd(0x205)+_0x1fbb23['from_session']+':\x20'+_0x1fbb23[_0x2bddcd(0x1bc)]['slice'](0x0,0x3c)),await P(_0x2bddcd(0x202),{'alias':Z,'message_id':_0x1fbb23['id']});}}}async function S(){const _0x15e45c=a0_0x18a035;let _0x2afd6e=new a0_0xa58a50();await K['connect'](_0x2afd6e),Y(_0x15e45c(0x1f9)),Y(_0x15e45c(0x206)),v()[_0x15e45c(0x229)](_0x37364c=>Y(_0x15e45c(0x22c)+_0x37364c)),P(_0x15e45c(0x1ca),{'resume_id':w,'alias':Z,'status':_0x15e45c(0x1c8),'server':a0_0x3a7455(),'hostname':a0_0x3a7455(),'agent':'claude-code','project_dir':process[_0x15e45c(0x200)](),'tmux_name':f||void 0x0})['then'](()=>Y('registered\x20as\x20\x22'+Z+_0x15e45c(0x1e3)+w[_0x15e45c(0x1cd)](0x0,0x8)+')'))[_0x15e45c(0x229)](_0x102584=>Y('warning:\x20could\x20not\x20register:\x20'+_0x102584)),setInterval(()=>{const _0x118c13=_0x15e45c;P('report_status',{'resume_id':w,'alias':Z,'status':_0x118c13(0x1c8),'server':a0_0x3a7455(),'hostname':a0_0x3a7455(),'agent':_0x118c13(0x220),'project_dir':process[_0x118c13(0x200)](),'tmux_name':f||void 0x0})['catch'](_0x514764=>Y('heartbeat\x20failed:\x20'+_0x514764));},0x2bf20),Y(_0x15e45c(0x1fa));}S()[a0_0x18a035(0x229)](_0x1d11c4=>{const _0x196f7e=a0_0x18a035;Y(_0x196f7e(0x1f7)+_0x1d11c4),process['exit'](0x1);});async function N(){const _0x23e496=a0_0x18a035;Y(_0x23e496(0x1fd)),await P('report_status',{'resume_id':w,'alias':Z,'status':_0x23e496(0x1e0),'task':'session\x20disconnected'})['catch'](()=>{}),process[_0x23e496(0x1d9)](0x0);}process['stdin']['on'](a0_0x18a035(0x1ac),()=>N()),process['on']('SIGTERM',()=>N()),process['on'](a0_0x18a035(0x1d7),()=>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.8",
|
|
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",
|