@sleep2agi/agent-network 1.3.0 → 1.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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
|
+
const a0_0x3b1b2f=a0_0x52e3;(function(_0x4da3a8,_0x2caf17){const _0x57db01=a0_0x52e3,_0x47e9ba=_0x4da3a8();while(!![]){try{const _0x44633a=parseInt(_0x57db01(0x15f))/0x1+-parseInt(_0x57db01(0x182))/0x2+-parseInt(_0x57db01(0x172))/0x3+-parseInt(_0x57db01(0x179))/0x4+parseInt(_0x57db01(0x170))/0x5*(-parseInt(_0x57db01(0x17b))/0x6)+parseInt(_0x57db01(0x18e))/0x7*(-parseInt(_0x57db01(0x193))/0x8)+parseInt(_0x57db01(0x16d))/0x9;if(_0x44633a===_0x2caf17)break;else _0x47e9ba['push'](_0x47e9ba['shift']());}catch(_0x639493){_0x47e9ba['push'](_0x47e9ba['shift']());}}}(a0_0x5c5f,0x67642));function a0_0x5c5f(){const _0x4c55a9=['2251692eyjYvo','token','log','ack_inbox','application/json','type','normal','2665396RNiQJz','resumeId','4716456pRblJS','connect','get_all_status','heartbeatTimer','autoConnect','send_message','min','1002200TQNVBE','name','completed','getReader','read','/events/','Bearer\x20','decode','split','call','url','stringify','824635ucjqDZ','reconnectDelay','server','2.0','Authorization','16dFlFoY','broadcast','idle','task','getAllStatus','running','reply','SSE\x20failed:\x20','agent','sseAbort','inbox\x20error:\x20','disconnected','pop','sleep','send','sdk','catch','from_session','message','cwd','toString','toTimeString','POST','signal','content','new_message','s...','SSE\x20connected','emit','result','send_task','data:\x20','slice','parse',']\x20[commhub:','error','753646EXLpgu','connected','alias','application/json,\x20text/event-stream','status','tools/call','replace','text','now','body','report_status','get_inbox','abort','sdk-','23485887MudOaT','messages','processInbox','5davtaq','connectSSE'];a0_0x5c5f=function(){return _0x4c55a9;};return a0_0x5c5f();}import{EventEmitter as a0_0xca99c6}from'events';import{hostname as a0_0x4acdc7}from'os';class T extends a0_0xca99c6{[a0_0x3b1b2f(0x18c)];['alias'];[a0_0x3b1b2f(0x173)];[a0_0x3b1b2f(0x19b)];['resumeId'];['heartbeatInterval'];[a0_0x3b1b2f(0x18f)];['heartbeatTimer'];[a0_0x3b1b2f(0x19c)];[a0_0x3b1b2f(0x198)]=!0x1;constructor(_0x53c8cc){const _0x308957=a0_0x3b1b2f;super();if(this[_0x308957(0x18c)]=_0x53c8cc[_0x308957(0x18c)][_0x308957(0x165)](/\/$/,''),this[_0x308957(0x161)]=_0x53c8cc[_0x308957(0x161)],this[_0x308957(0x173)]=_0x53c8cc[_0x308957(0x173)],this[_0x308957(0x19b)]=_0x53c8cc['agent']||_0x308957(0x14a),this[_0x308957(0x17a)]=_0x308957(0x16c)+_0x53c8cc[_0x308957(0x161)]+'-'+Date[_0x308957(0x167)]()[_0x308957(0x14f)](0x24),this['heartbeatInterval']=_0x53c8cc['heartbeatInterval']??0x2bf20,this['reconnectDelay']=_0x53c8cc[_0x308957(0x18f)]??0xbb8,_0x53c8cc[_0x308957(0x17f)]!==!0x1)this['connect']();}[a0_0x3b1b2f(0x174)](_0x324a48){const _0xced6a4=a0_0x3b1b2f;console[_0xced6a4(0x174)]('['+new Date()[_0xced6a4(0x150)]()[_0xced6a4(0x15b)](0x0,0x8)+_0xced6a4(0x15d)+this[_0xced6a4(0x161)]+']\x20'+_0x324a48);}async[a0_0x3b1b2f(0x18b)](_0x1c2957,_0x226a8a){const _0xf5102f=a0_0x3b1b2f;let _0x2d6a15={'Content-Type':_0xf5102f(0x176),'Accept':_0xf5102f(0x162)};if(this[_0xf5102f(0x173)])_0x2d6a15['Authorization']='Bearer\x20'+this['token'];let _0x507f57=await(await fetch(this[_0xf5102f(0x18c)]+'/mcp',{'method':_0xf5102f(0x151),'headers':_0x2d6a15,'body':JSON[_0xf5102f(0x18d)]({'jsonrpc':_0xf5102f(0x191),'id':Date['now'](),'method':_0xf5102f(0x164),'params':{'name':_0x1c2957,'arguments':_0x226a8a}})}))['text'](),_0x1325e1=_0x507f57['match'](/data: (.+)/),_0x1c32a=_0x1325e1?JSON['parse'](_0x1325e1[0x1]):JSON['parse'](_0x507f57),_0x2908ae=_0x1c32a?.[_0xf5102f(0x158)]?.['content']?.[0x0]?.[_0xf5102f(0x166)];return _0x2908ae?JSON[_0xf5102f(0x15c)](_0x2908ae):_0x1c32a;}async[a0_0x3b1b2f(0x17c)](){const _0x618285=a0_0x3b1b2f;if(this['running'])return;this[_0x618285(0x198)]=!0x0,await this[_0x618285(0x163)](_0x618285(0x195)),this[_0x618285(0x174)]('registered'),this[_0x618285(0x17e)]=setInterval(()=>{const _0x32a388=_0x618285;this[_0x32a388(0x163)](_0x32a388(0x195))[_0x32a388(0x14b)](_0x203ab7=>this[_0x32a388(0x174)]('heartbeat\x20failed:\x20'+_0x203ab7[_0x32a388(0x14d)]));},this['heartbeatInterval']),this[_0x618285(0x171)]();}async['disconnect'](){const _0x3af043=a0_0x3b1b2f;if(this[_0x3af043(0x198)]=!0x1,this[_0x3af043(0x19c)]?.[_0x3af043(0x16b)](),this[_0x3af043(0x17e)])clearInterval(this[_0x3af043(0x17e)]);await this[_0x3af043(0x163)]('offline')[_0x3af043(0x14b)](()=>{}),this['log']('disconnected');}async[a0_0x3b1b2f(0x149)](_0x38e7e8,_0x5d3d49,_0x18e151=a0_0x3b1b2f(0x178)){const _0x193d95=a0_0x3b1b2f;return this[_0x193d95(0x18b)](_0x193d95(0x159),{'alias':_0x38e7e8,'task':_0x5d3d49,'priority':_0x18e151,'from_session':this[_0x193d95(0x161)]});}async[a0_0x3b1b2f(0x14d)](_0x2caee2,_0xeb9b6d){const _0x1c5059=a0_0x3b1b2f;return this[_0x1c5059(0x18b)](_0x1c5059(0x180),{'alias':_0x2caee2,'message':_0xeb9b6d,'from_session':this[_0x1c5059(0x161)]});}async[a0_0x3b1b2f(0x199)](_0x4393a5,_0x3c441b,_0x284207=a0_0x3b1b2f(0x184)){const _0x3f0141=a0_0x3b1b2f;return this[_0x3f0141(0x18b)](_0x3f0141(0x199),{'task_id':_0x4393a5,'text':_0x3c441b,'status':_0x284207});}async[a0_0x3b1b2f(0x163)](_0x1770b3,_0x1c25ad){const _0x547ad7=a0_0x3b1b2f;return this['call'](_0x547ad7(0x169),{'resume_id':this['resumeId'],'alias':this['alias'],'status':_0x1770b3,'server':a0_0x4acdc7(),'hostname':a0_0x4acdc7(),'agent':this[_0x547ad7(0x19b)],'project_dir':process[_0x547ad7(0x14e)](),..._0x1c25ad});}async[a0_0x3b1b2f(0x197)](){const _0x585e4b=a0_0x3b1b2f;return this[_0x585e4b(0x18b)](_0x585e4b(0x17d),{});}async[a0_0x3b1b2f(0x194)](_0xea1699,_0x1e84d6){const _0x2d5b8b=a0_0x3b1b2f;return this[_0x2d5b8b(0x18b)](_0x2d5b8b(0x194),{'message':_0xea1699,'filter_server':_0x1e84d6?.[_0x2d5b8b(0x190)],'filter_status':_0x1e84d6?.['status']});}async[a0_0x3b1b2f(0x171)](){const _0x48ba2f=a0_0x3b1b2f;let _0x53bbb8=encodeURIComponent(this[_0x48ba2f(0x161)]),_0x97d6e7=this[_0x48ba2f(0x18c)]+_0x48ba2f(0x187)+_0x53bbb8,_0x172233=this[_0x48ba2f(0x18f)];while(this[_0x48ba2f(0x198)]){try{this['sseAbort']=new AbortController();let _0x275446={'Accept':'text/event-stream'};if(this[_0x48ba2f(0x173)])_0x275446[_0x48ba2f(0x192)]=_0x48ba2f(0x188)+this['token'];let _0x1f3dfe=await fetch(_0x97d6e7,{'headers':_0x275446,'signal':this['sseAbort'][_0x48ba2f(0x152)]});if(!_0x1f3dfe['ok']||!_0x1f3dfe[_0x48ba2f(0x168)]){this[_0x48ba2f(0x174)](_0x48ba2f(0x19a)+_0x1f3dfe[_0x48ba2f(0x163)]),await this[_0x48ba2f(0x1a0)](_0x172233),_0x172233=Math[_0x48ba2f(0x181)](_0x172233*1.5,0xea60);continue;}_0x172233=this[_0x48ba2f(0x18f)];let _0x287667=_0x1f3dfe[_0x48ba2f(0x168)][_0x48ba2f(0x185)](),_0x5693f2=new TextDecoder(),_0x298881='';while(this[_0x48ba2f(0x198)]){let {done:_0x443394,value:_0x363cf5}=await _0x287667[_0x48ba2f(0x186)]();if(_0x443394)break;_0x298881+=_0x5693f2[_0x48ba2f(0x189)](_0x363cf5,{'stream':!0x0});let _0x47c416=_0x298881[_0x48ba2f(0x18a)]('\x0a');_0x298881=_0x47c416[_0x48ba2f(0x19f)]()||'';for(let _0x45fd46 of _0x47c416){if(!_0x45fd46['startsWith'](_0x48ba2f(0x15a)))continue;try{let _0x46340b=JSON[_0x48ba2f(0x15c)](_0x45fd46['slice'](0x6));if(_0x46340b[_0x48ba2f(0x177)]===_0x48ba2f(0x160)){this[_0x48ba2f(0x174)](_0x48ba2f(0x156)),this[_0x48ba2f(0x157)](_0x48ba2f(0x160));continue;}if(_0x46340b[_0x48ba2f(0x177)]==='new_task'||_0x46340b[_0x48ba2f(0x177)]===_0x48ba2f(0x154)||_0x46340b['type']==='broadcast')await this['processInbox']();}catch{}}}}catch(_0x3b6f10){if(_0x3b6f10[_0x48ba2f(0x183)]==='AbortError')break;this[_0x48ba2f(0x157)](_0x48ba2f(0x15e),_0x3b6f10),this[_0x48ba2f(0x174)]('SSE\x20error:\x20'+_0x3b6f10[_0x48ba2f(0x14d)]);}if(this[_0x48ba2f(0x198)])this[_0x48ba2f(0x157)](_0x48ba2f(0x19e)),this[_0x48ba2f(0x174)]('SSE\x20reconnecting\x20in\x20'+_0x172233/0x3e8+_0x48ba2f(0x155)),await this[_0x48ba2f(0x1a0)](_0x172233),_0x172233=Math[_0x48ba2f(0x181)](_0x172233*1.5,0xea60);}}async[a0_0x3b1b2f(0x16f)](){const _0x108960=a0_0x3b1b2f;try{let _0x254b7b=(await this[_0x108960(0x18b)](_0x108960(0x16a),{'alias':this[_0x108960(0x161)],'limit':0xa}))?.[_0x108960(0x16e)]||[];for(let _0x2b8cbd of _0x254b7b)await this['call'](_0x108960(0x175),{'alias':this['alias'],'message_id':_0x2b8cbd['id']}),this[_0x108960(0x174)]('←\x20'+_0x2b8cbd[_0x108960(0x14c)]+':\x20'+_0x2b8cbd[_0x108960(0x153)][_0x108960(0x15b)](0x0,0x3c)),this['emit'](_0x108960(0x196),_0x2b8cbd),this[_0x108960(0x157)](_0x108960(0x14d),_0x2b8cbd);}catch(_0x20dcd8){this['log'](_0x108960(0x19d)+_0x20dcd8[_0x108960(0x14d)]);}}[a0_0x3b1b2f(0x1a0)](_0x1d0441){return new Promise(_0x152437=>setTimeout(_0x152437,_0x1d0441));}}var $=T;function a0_0x52e3(_0x60aa04,_0x4058af){_0x60aa04=_0x60aa04-0x149;const _0x5c5f52=a0_0x5c5f();let _0x52e35d=_0x5c5f52[_0x60aa04];return _0x52e35d;}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_0x3e9770=a0_0x3144;(function(_0x16ad91,_0x2e6e64){const _0x583782=a0_0x3144,_0x1059b2=_0x16ad91();while(!![]){try{const _0x1364bd=-parseInt(_0x583782(0x1aa))/0x1*(-parseInt(_0x583782(0x155))/0x2)+parseInt(_0x583782(0x169))/0x3+parseInt(_0x583782(0x190))/0x4+parseInt(_0x583782(0x1a5))/0x5+-parseInt(_0x583782(0x16a))/0x6+parseInt(_0x583782(0x17f))/0x7+-parseInt(_0x583782(0x142))/0x8;if(_0x1364bd===_0x2e6e64)break;else _0x1059b2['push'](_0x1059b2['shift']());}catch(_0x48c2cd){_0x1059b2['push'](_0x1059b2['shift']());}}}(a0_0x4956,0x3ace8));import{readFileSync as a0_0x33c0b7,existsSync as a0_0x4b25ea}from'fs';import{join as a0_0x280624}from'path';import{hostname as a0_0x2b58f0}from'os';import{execSync as a0_0x1157b3}from'child_process';import{Server as a0_0xd3011b}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x803ad4}from'@modelcontextprotocol/sdk/server/stdio.js';function a0_0x4956(){const _0x59acb2=['config.json','commhub_report_status','inbox_count','pop','Current\x20task\x20description','text','get_all_status','2WIsUZF','\x20PROJECT_ENV=','SSE\x20stream\x20ended,\x20reconnecting...','registered\x20as\x20\x22','working','send_message','stderr','join','shutting\x20down,\x20reporting\x20offline...','ready\x20—\x20waiting\x20for\x20events','initialize','new_message','find','from',':\x20inbox_count=','decode','statusText','Task\x20content','cwd','error','549036UCGJUa','828186FUyYDO','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','string','ack_inbox','slice','message_id','application/json','...\x20TMUX=','connect','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','Session\x20alias:\x20','messages','\x20RESUME_ID=','notifications/claude/channel','from_session','body','\x22\x20(','parse\x20error:\x20','content','result','commhub_reply','1873585QvhJny','idle','application/json,\x20text/event-stream','task','broadcast','claude-code','low','2.0','startsWith','normal','data:\x20','warning:\x20could\x20not\x20register:\x20','end','message','type','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','in_progress','1923080OjGlbA','tmux\x20display-message\x20-p\x20\x27#S\x27','randomUUID','then','stdin','exit','hub','priority',']\x20[commhub]\x20','replace','Bearer\x20','blocked','commhub-channel','report_status','write','session\x20disconnected','commhub_send_message','toTimeString','none','fatal:\x20','unknown\x20tool','1025360QJDbuF','object','parse','\x20from\x20','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','373798rsVPCg','/mcp','commhub_send_task','read','.env','high','Priority\x20(default:\x20normal)','indexOf','completed','notification','connected','Message\x20content','no\x20response','.claude/channels/commhub','send_task','→\x20injected\x20task\x20','getReader','params','number','http://127.0.0.1:9200','get_inbox','SSE\x20error:\x20','catch','status','alias','stringify','heartbeat\x20failed:\x20','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','CommHub\x20init\x20failed:\x20','commhub_get_all_status','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','SIGTERM','9051232fJvMka','utf-8','Target\x20session\x20alias','trim','commhub','report_completion','SSE\x20connected\x20as\x20\x22','setRequestHandler','connecting\x20to\x20','\x20ALIAS=','0.3.0','split'];a0_0x4956=function(){return _0x59acb2;};return a0_0x4956();}function a0_0x3144(_0x1f376e,_0x5a7de3){_0x1f376e=_0x1f376e-0x13e;const _0x495696=a0_0x4956();let _0x314480=_0x495696[_0x1f376e];return _0x314480;}import{ListToolsRequestSchema as a0_0x93d1e0,CallToolRequestSchema as a0_0x29ae72}from'@modelcontextprotocol/sdk/types.js';function h(_0x4e3062){const _0x12ab83=a0_0x3144;if(!a0_0x4b25ea(_0x4e3062))return;for(let _0x4c516c of a0_0x33c0b7(_0x4e3062,'utf-8')[_0x12ab83(0x14d)]('\x0a')){let _0xe1bbfc=_0x4c516c[_0x12ab83(0x145)]();if(!_0xe1bbfc||_0xe1bbfc[_0x12ab83(0x187)]('#'))continue;let _0x4db1be=_0xe1bbfc[_0x12ab83(0x1b1)]('=');if(_0x4db1be<0x0)continue;let _0x347e0a=_0xe1bbfc[_0x12ab83(0x16e)](0x0,_0x4db1be)[_0x12ab83(0x145)](),_0x154d0e=_0xe1bbfc[_0x12ab83(0x16e)](_0x4db1be+0x1)[_0x12ab83(0x145)]()['replace'](/^["']|["']$/g,'');if(!process.env[_0x347e0a])process.env[_0x347e0a]=_0x154d0e;}}var R=process.env.HOME||'~',p=a0_0x280624(R,a0_0x3e9770(0x1b7));h(a0_0x280624(p,a0_0x3e9770(0x1ae)));var C=process[a0_0x3e9770(0x167)]()[a0_0x3e9770(0x199)](/\//g,'-');h(a0_0x280624(p,C,a0_0x3e9770(0x1ae)));function _(){const _0xb970d=a0_0x3e9770;try{return a0_0x1157b3(_0xb970d(0x191),{'encoding':_0xb970d(0x143),'timeout':0x7d0})[_0xb970d(0x145)]();}catch{return'';}}function E(){const _0x5c2ffb=a0_0x3e9770;try{let _0x1a1e65=a0_0x280624(R,'.anet',_0x5c2ffb(0x14e));if(a0_0x4b25ea(_0x1a1e65))return JSON[_0x5c2ffb(0x1a7)](a0_0x33c0b7(_0x1a1e65,_0x5c2ffb(0x143)));}catch{}return{};}var T=E(),k=process.env.COMMHUB_URL||T['hub']||a0_0x3e9770(0x1bd),q=process.env.COMMHUB_TMUX||_(),Z=process.env.COMMHUB_ALIAS||q||a0_0x2b58f0(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x3e9770(0x192)](),X=process.env.COMMHUB_TOKEN||T['token']||'';function V(_0x393606){const _0xac0258=a0_0x3e9770;let _0x840234=new Date()[_0xac0258(0x1a1)]()[_0xac0258(0x16e)](0x0,0x8);process[_0xac0258(0x15b)][_0xac0258(0x19e)]('['+_0x840234+_0xac0258(0x198)+_0x393606+'\x0a');}function O(_0x50c802){return new Promise(_0x1e97fb=>setTimeout(_0x1e97fb,_0x50c802));}V('ENV:\x20URL='+k+a0_0x3e9770(0x14b)+Z+a0_0x3e9770(0x176)+w[a0_0x3e9770(0x16e)](0x0,0x8)+a0_0x3e9770(0x171)+(q||a0_0x3e9770(0x1a2))+'\x20CWD='+process[a0_0x3e9770(0x167)]()+a0_0x3e9770(0x156)+C);var K=new a0_0xd3011b({'name':a0_0x3e9770(0x19c),'version':a0_0x3e9770(0x14c)},{'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_0x3e9770(0x16b),a0_0x3e9770(0x1a9),a0_0x3e9770(0x140),a0_0x3e9770(0x174)+Z][a0_0x3e9770(0x15c)]('\x0a')});K[a0_0x3e9770(0x149)](a0_0x93d1e0,async()=>({'tools':[{'name':a0_0x3e9770(0x17e),'description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':'object','properties':{'task_id':{'type':a0_0x3e9770(0x16c),'description':'The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)'},'text':{'type':a0_0x3e9770(0x16c),'description':'Reply\x20text\x20/\x20result\x20summary'},'status':{'type':'string','enum':['completed',a0_0x3e9770(0x19b),a0_0x3e9770(0x168),a0_0x3e9770(0x18f)],'description':'Task\x20status'}},'required':[a0_0x3e9770(0x153)]}},{'name':a0_0x3e9770(0x14f),'description':a0_0x3e9770(0x173),'inputSchema':{'type':a0_0x3e9770(0x1a6),'properties':{'status':{'type':a0_0x3e9770(0x16c),'enum':[a0_0x3e9770(0x159),a0_0x3e9770(0x180),'blocked',a0_0x3e9770(0x168)]},'task':{'type':a0_0x3e9770(0x16c),'description':a0_0x3e9770(0x152)},'progress':{'type':a0_0x3e9770(0x1bc),'description':'Progress\x200-100'}},'required':[a0_0x3e9770(0x1c1)]}},{'name':a0_0x3e9770(0x1ac),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':'object','properties':{'alias':{'type':'string','description':a0_0x3e9770(0x144)},'task':{'type':a0_0x3e9770(0x16c),'description':a0_0x3e9770(0x166)},'priority':{'type':a0_0x3e9770(0x16c),'enum':[a0_0x3e9770(0x1af),a0_0x3e9770(0x188),a0_0x3e9770(0x185)],'description':a0_0x3e9770(0x1b0)}},'required':[a0_0x3e9770(0x1c2),a0_0x3e9770(0x182)]}},{'name':a0_0x3e9770(0x1a0),'description':a0_0x3e9770(0x1c5),'inputSchema':{'type':a0_0x3e9770(0x1a6),'properties':{'alias':{'type':'string','description':a0_0x3e9770(0x144)},'message':{'type':a0_0x3e9770(0x16c),'description':a0_0x3e9770(0x1b5)}},'required':['alias',a0_0x3e9770(0x18c)]}},{'name':a0_0x3e9770(0x13f),'description':a0_0x3e9770(0x18e),'inputSchema':{'type':'object','properties':{}}}]}));async function P(_0x5d804c,_0x4990bc){const _0x2db4c9=a0_0x3e9770;let _0x3a1c2e=await fetch(k+_0x2db4c9(0x1ab),{'method':'POST','headers':{'Content-Type':_0x2db4c9(0x170),'Accept':_0x2db4c9(0x181),...X?{'Authorization':_0x2db4c9(0x19a)+X}:{}},'body':JSON[_0x2db4c9(0x1c3)]({'jsonrpc':_0x2db4c9(0x186),'id':0x1,'method':_0x2db4c9(0x15f),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x2db4c9(0x19c),'version':_0x2db4c9(0x14c)}}})});if(!_0x3a1c2e['ok']){let _0x1df69e=await _0x3a1c2e[_0x2db4c9(0x153)]();return V(_0x2db4c9(0x13e)+_0x3a1c2e[_0x2db4c9(0x1c1)]+'\x20'+_0x1df69e['slice'](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x3a1c2e['status']};}await _0x3a1c2e['text']();let _0x4045a4=(await(await fetch(k+_0x2db4c9(0x1ab),{'method':'POST','headers':{'Content-Type':_0x2db4c9(0x170),'Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x2db4c9(0x19a)+X}:{}},'body':JSON[_0x2db4c9(0x1c3)]({'jsonrpc':_0x2db4c9(0x186),'id':0x2,'method':'tools/call','params':{'name':_0x5d804c,'arguments':_0x4990bc}})}))[_0x2db4c9(0x153)]())[_0x2db4c9(0x14d)]('\x0a')['find'](_0x4caeb3=>_0x4caeb3[_0x2db4c9(0x187)](_0x2db4c9(0x189)));if(_0x4045a4){let _0x1565c5=JSON[_0x2db4c9(0x1a7)](_0x4045a4[_0x2db4c9(0x16e)](0x6));return _0x1565c5?.[_0x2db4c9(0x17d)]?.['content']?.[0x0]?.[_0x2db4c9(0x153)]?JSON[_0x2db4c9(0x1a7)](_0x1565c5[_0x2db4c9(0x17d)][_0x2db4c9(0x17c)][0x0][_0x2db4c9(0x153)]):_0x1565c5;}return{'ok':!0x1,'error':_0x2db4c9(0x1b6)};}K['setRequestHandler'](a0_0x29ae72,async _0x1136f8=>{const _0x2a5205=a0_0x3e9770;let {name:_0x48f35a,arguments:_0x412849}=_0x1136f8[_0x2a5205(0x1bb)];if(_0x48f35a===_0x2a5205(0x17e)){let {task_id:_0x399e38,text:_0x20fdfa,status:_0x2bfed2}=_0x412849;if(_0x2bfed2===_0x2a5205(0x1b2)){let _0x3fe566=await P(_0x2a5205(0x147),{'alias':Z,'task':_0x399e38||_0x2a5205(0x182),'result':_0x20fdfa});return{'content':[{'type':_0x2a5205(0x153),'text':JSON['stringify'](_0x3fe566)}]};}let _0x2dc476=await P(_0x2a5205(0x19d),{'resume_id':w,'alias':Z,'status':_0x2bfed2===_0x2a5205(0x19b)?'blocked':_0x2bfed2===_0x2a5205(0x168)?_0x2a5205(0x168):_0x2a5205(0x159),'task':_0x20fdfa[_0x2a5205(0x16e)](0x0,0xc8),'output':_0x20fdfa});return{'content':[{'type':'text','text':JSON[_0x2a5205(0x1c3)](_0x2dc476)}]};}if(_0x48f35a==='commhub_report_status'){let {status:_0x507e40,task:_0x6eff92,progress:_0x45d810}=_0x412849,_0x4a3c24=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x507e40,'task':_0x6eff92,'progress':_0x45d810});return{'content':[{'type':_0x2a5205(0x153),'text':JSON[_0x2a5205(0x1c3)](_0x4a3c24)}]};}if(_0x48f35a===_0x2a5205(0x1ac)){let {alias:_0x3ca1ab,task:_0x46cdfa,priority:_0x3bc7e6}=_0x412849,_0x2e2a05=await P(_0x2a5205(0x1b8),{'alias':_0x3ca1ab,'task':_0x46cdfa,'priority':_0x3bc7e6||_0x2a5205(0x188),'from_session':Z});return{'content':[{'type':_0x2a5205(0x153),'text':JSON[_0x2a5205(0x1c3)](_0x2e2a05)}]};}if(_0x48f35a===_0x2a5205(0x1a0)){let {alias:_0x2d307d,message:_0x1e4bf7}=_0x412849,_0x310613=await P(_0x2a5205(0x15a),{'alias':_0x2d307d,'message':_0x1e4bf7,'from_session':Z});return{'content':[{'type':_0x2a5205(0x153),'text':JSON[_0x2a5205(0x1c3)](_0x310613)}]};}if(_0x48f35a===_0x2a5205(0x13f)){let _0x4eacc9=await P(_0x2a5205(0x154),{});return{'content':[{'type':_0x2a5205(0x153),'text':JSON[_0x2a5205(0x1c3)](_0x4eacc9)}]};}return{'content':[{'type':_0x2a5205(0x153),'text':JSON['stringify']({'error':_0x2a5205(0x1a4)})}]};});async function c(){const _0x321d23=a0_0x3e9770;let _0x42e5eb=k+'/events/'+encodeURIComponent(Z),_0x5f0b36={};if(X)_0x5f0b36['Authorization']=_0x321d23(0x19a)+X;V(_0x321d23(0x14a)+_0x42e5eb);while(!0x0){try{let _0x49dcbf=await fetch(_0x42e5eb,{'headers':_0x5f0b36});if(!_0x49dcbf['ok']){V(_0x321d23(0x1bf)+_0x49dcbf[_0x321d23(0x1c1)]+'\x20'+_0x49dcbf[_0x321d23(0x165)]),await O(0x1388);continue;}let _0x2eccb1=_0x49dcbf[_0x321d23(0x179)][_0x321d23(0x1ba)](),_0x32f888=new TextDecoder(),_0x5664e6='';while(!0x0){let {done:_0x46d671,value:_0x59f4c5}=await _0x2eccb1[_0x321d23(0x1ad)]();if(_0x46d671)break;_0x5664e6+=_0x32f888[_0x321d23(0x164)](_0x59f4c5,{'stream':!0x0});let _0xb03861=_0x5664e6[_0x321d23(0x14d)]('\x0a\x0a');_0x5664e6=_0xb03861[_0x321d23(0x151)]()||'';for(let _0x6e16d2 of _0xb03861){let _0x4b8423=_0x6e16d2['split']('\x0a')[_0x321d23(0x161)](_0x3cabb1=>_0x3cabb1[_0x321d23(0x187)](_0x321d23(0x189)));if(!_0x4b8423)continue;try{let _0x377601=JSON[_0x321d23(0x1a7)](_0x4b8423[_0x321d23(0x16e)](0x6));await v(_0x377601);}catch(_0x20861b){V(_0x321d23(0x17b)+_0x20861b);}}}V(_0x321d23(0x157));}catch(_0x34d1b0){V('SSE\x20connection\x20error:\x20'+_0x34d1b0);}await O(0xbb8);}}async function v(_0x415d7a){const _0x1ae7a5=a0_0x3e9770;if(_0x415d7a[_0x1ae7a5(0x18d)]===_0x1ae7a5(0x1b4)){V(_0x1ae7a5(0x148)+Z+'\x22');return;}if(_0x415d7a[_0x1ae7a5(0x18d)]===_0x1ae7a5(0x160)){if(V('←\x20message\x20from\x20'+_0x415d7a[_0x1ae7a5(0x162)]+':\x20'+_0x415d7a[_0x1ae7a5(0x18c)][_0x1ae7a5(0x16e)](0x0,0x3c)),await K[_0x1ae7a5(0x1b3)]({'method':_0x1ae7a5(0x177),'params':{'content':_0x415d7a[_0x1ae7a5(0x18c)],'meta':{'sender':_0x415d7a['from']||_0x1ae7a5(0x196),'sender_id':_0x1ae7a5(0x146),'user':_0x415d7a[_0x1ae7a5(0x162)]||'hub','priority':_0x1ae7a5(0x188)}}}),_0x415d7a['message_id'])await P(_0x1ae7a5(0x16d),{'alias':Z,'message_id':_0x415d7a[_0x1ae7a5(0x16f)]});return;}if(_0x415d7a['type']==='new_task'||_0x415d7a[_0x1ae7a5(0x18d)]===_0x1ae7a5(0x183)){V('←\x20'+_0x415d7a[_0x1ae7a5(0x18d)]+_0x1ae7a5(0x163)+_0x415d7a[_0x1ae7a5(0x150)]+'\x20priority='+(_0x415d7a[_0x1ae7a5(0x197)]||_0x1ae7a5(0x188)));let _0x41a9e9=await P(_0x1ae7a5(0x1be),{'alias':Z,'limit':0x5});if(_0x41a9e9?.['ok']&&_0x41a9e9[_0x1ae7a5(0x175)]?.['length']>0x0)for(let _0x47cd22 of _0x41a9e9[_0x1ae7a5(0x175)]){let _0x4e21bb={'sender':_0x47cd22[_0x1ae7a5(0x178)]||_0x1ae7a5(0x196),'sender_id':_0x1ae7a5(0x146),'user':_0x47cd22[_0x1ae7a5(0x178)]||_0x1ae7a5(0x196),'task_id':_0x47cd22['id'],'priority':_0x47cd22[_0x1ae7a5(0x197)]||_0x1ae7a5(0x188)};await K['notification']({'method':_0x1ae7a5(0x177),'params':{'content':_0x47cd22[_0x1ae7a5(0x17c)],'meta':_0x4e21bb}}),V(_0x1ae7a5(0x1b9)+_0x47cd22['id'][_0x1ae7a5(0x16e)](0x0,0x8)+_0x1ae7a5(0x1a8)+_0x47cd22[_0x1ae7a5(0x178)]+':\x20'+_0x47cd22[_0x1ae7a5(0x17c)]['slice'](0x0,0x3c)),await P(_0x1ae7a5(0x16d),{'alias':Z,'message_id':_0x47cd22['id']});}}}async function u(){const _0x4d63d7=a0_0x3e9770;let _0x423a88=new a0_0x803ad4();await K[_0x4d63d7(0x172)](_0x423a88),V('MCP\x20stdio\x20connected'),V('starting\x20SSE\x20listener...'),c()[_0x4d63d7(0x1c0)](_0x1a024a=>V('SSE\x20fatal:\x20'+_0x1a024a)),P(_0x4d63d7(0x19d),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x2b58f0(),'hostname':a0_0x2b58f0(),'agent':_0x4d63d7(0x184),'project_dir':process[_0x4d63d7(0x167)](),'tmux_name':q||void 0x0})[_0x4d63d7(0x193)](()=>V(_0x4d63d7(0x158)+Z+_0x4d63d7(0x17a)+w[_0x4d63d7(0x16e)](0x0,0x8)+')'))[_0x4d63d7(0x1c0)](_0x1ee56f=>V(_0x4d63d7(0x18a)+_0x1ee56f)),setInterval(()=>{const _0x474d7c=_0x4d63d7;P('report_status',{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x2b58f0(),'hostname':a0_0x2b58f0(),'agent':'claude-code','project_dir':process[_0x474d7c(0x167)](),'tmux_name':q||void 0x0})['catch'](_0x281c5f=>V(_0x474d7c(0x1c4)+_0x281c5f));},0x2bf20),V(_0x4d63d7(0x15e));}u()[a0_0x3e9770(0x1c0)](_0x356965=>{const _0x142308=a0_0x3e9770;V(_0x142308(0x1a3)+_0x356965),process[_0x142308(0x195)](0x1);});async function f(){const _0x42065c=a0_0x3e9770;V(_0x42065c(0x15d)),await P(_0x42065c(0x19d),{'resume_id':w,'alias':Z,'status':'error','task':_0x42065c(0x19f)})[_0x42065c(0x1c0)](()=>{}),process['exit'](0x0);}process[a0_0x3e9770(0x194)]['on'](a0_0x3e9770(0x18b),()=>f()),process['on'](a0_0x3e9770(0x141),()=>f()),process['on']('SIGINT',()=>f());
|
|
2
|
+
const a0_0x2bdfc6=a0_0x20f3;(function(_0x3c4a2c,_0x4d05ca){const _0x3f5b07=a0_0x20f3,_0x35134d=_0x3c4a2c();while(!![]){try{const _0x56c64b=-parseInt(_0x3f5b07(0xbd))/0x1+-parseInt(_0x3f5b07(0x85))/0x2+-parseInt(_0x3f5b07(0xb7))/0x3*(parseInt(_0x3f5b07(0xde))/0x4)+-parseInt(_0x3f5b07(0xfe))/0x5+-parseInt(_0x3f5b07(0xea))/0x6*(parseInt(_0x3f5b07(0xa5))/0x7)+-parseInt(_0x3f5b07(0xbc))/0x8+parseInt(_0x3f5b07(0x89))/0x9;if(_0x56c64b===_0x4d05ca)break;else _0x35134d['push'](_0x35134d['shift']());}catch(_0x5b5423){_0x35134d['push'](_0x35134d['shift']());}}}(a0_0x4dd1,0x7fc6d));import{readFileSync as a0_0x481a21,existsSync as a0_0x4fe6f5}from'fs';import{join as a0_0x409c1d}from'path';import{hostname as a0_0x19ba6e}from'os';import{execSync as a0_0x11e1ee}from'child_process';import{Server as a0_0x1fb0e6}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x4304cb}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x43a6ad,CallToolRequestSchema as a0_0x56dc42}from'@modelcontextprotocol/sdk/types.js';function h(_0x543fc5){const _0x36a909=a0_0x20f3;if(!a0_0x4fe6f5(_0x543fc5))return;for(let _0x32dee1 of a0_0x481a21(_0x543fc5,'utf-8')[_0x36a909(0xe5)]('\x0a')){let _0x195936=_0x32dee1[_0x36a909(0x98)]();if(!_0x195936||_0x195936['startsWith']('#'))continue;let _0x5265da=_0x195936[_0x36a909(0x93)]('=');if(_0x5265da<0x0)continue;let _0x3e5409=_0x195936[_0x36a909(0x9e)](0x0,_0x5265da)['trim'](),_0x1a32d9=_0x195936['slice'](_0x5265da+0x1)[_0x36a909(0x98)]()['replace'](/^["']|["']$/g,'');if(!process.env[_0x3e5409])process.env[_0x3e5409]=_0x1a32d9;}}var R=process.env.HOME||'~',p=a0_0x409c1d(R,'.claude/channels/commhub');h(a0_0x409c1d(p,a0_0x2bdfc6(0xfa)));var C=process[a0_0x2bdfc6(0x90)]()[a0_0x2bdfc6(0x8b)](/\//g,'-');h(a0_0x409c1d(p,C,'.env'));function _(){const _0x592b81=a0_0x2bdfc6;try{return a0_0x11e1ee(_0x592b81(0x99),{'encoding':'utf-8','timeout':0x7d0})['trim']();}catch{return'';}}function E(){const _0x59aabb=a0_0x2bdfc6;try{let _0x293e67=a0_0x409c1d(R,_0x59aabb(0xd3),_0x59aabb(0x80));if(a0_0x4fe6f5(_0x293e67))return JSON[_0x59aabb(0x94)](a0_0x481a21(_0x293e67,_0x59aabb(0x7e)));}catch{}return{};}var T=E(),k=process.env.COMMHUB_URL||T[a0_0x2bdfc6(0x82)]||'http://127.0.0.1:9200',q=process.env.COMMHUB_TMUX||_(),Z=process.env.COMMHUB_ALIAS||q||a0_0x19ba6e(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x2bdfc6(0xb1)](),X=process.env.COMMHUB_TOKEN||T[a0_0x2bdfc6(0x101)]||'';function V(_0x30d9eb){const _0x5ce0fa=a0_0x2bdfc6;let _0x361720=new Date()[_0x5ce0fa(0xac)]()[_0x5ce0fa(0x9e)](0x0,0x8);process[_0x5ce0fa(0x104)][_0x5ce0fa(0xca)]('['+_0x361720+_0x5ce0fa(0x100)+_0x30d9eb+'\x0a');}function O(_0x4dc911){return new Promise(_0x8f4655=>setTimeout(_0x8f4655,_0x4dc911));}function a0_0x4dd1(){const _0x2571d3=['normal','warning:\x20could\x20not\x20register:\x20','shutting\x20down,\x20reporting\x20offline...','114760NAwnMo','setRequestHandler','commhub_report_status','SIGINT','ready\x20—\x20waiting\x20for\x20events','send_message','data:\x20','split','text','join','CommHub\x20init\x20failed:\x20','MCP\x20stdio\x20connected','3354PbfphC','SSE\x20connection\x20error:\x20','notification','blocked','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','length','get_all_status','heartbeat\x20failed:\x20','0.3.0','commhub_get_all_status','application/json,\x20text/event-stream','high','/mcp','statusText','→\x20injected\x20task\x20','Current\x20task\x20description','.env','init\x20failed:\x20','exit','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','2468920igGfAW','stdin',']\x20[commhub]\x20','token','stringify',':\x20inbox_count=','stderr','utf-8','body','config.json','params','hub','priority','content','1257390sjIXHo','commhub','status','none','34287174fgGftI','\x20from\x20','replace','object','starting\x20SSE\x20listener...','claude-code','string','cwd','completed','SSE\x20fatal:\x20','indexOf','parse','2025-03-26','connecting\x20to\x20','catch','trim','tmux\x20display-message\x20-p\x20\x27#S\x27','fatal:\x20','parse\x20error:\x20','commhub_send_task','←\x20message\x20from\x20','slice','task','from_session','find','notifications/claude/channel','message','ack_inbox','11963iWgyXz','registered\x20as\x20\x22','tools/call','\x20priority=','error','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','broadcast','toTimeString','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','application/json','POST','Bearer\x20','randomUUID','Message\x20content','alias','send_task','inbox_count','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','3bHSzbh','idle','commhub_send_message','from','startsWith','2434960sFQUrt','875443ckQJds','end','Task\x20status','2.0','working','ENV:\x20URL=','type','/events/','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','pop','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','read','write','Target\x20session\x20alias','number','low','Progress\x200-100','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','commhub-channel','then','initialize','.anet','in_progress','report_status','messages','Priority\x20(default:\x20normal)','no\x20response','message_id','connect'];a0_0x4dd1=function(){return _0x2571d3;};return a0_0x4dd1();}V(a0_0x2bdfc6(0xc2)+k+'\x20ALIAS='+Z+'\x20RESUME_ID='+w[a0_0x2bdfc6(0x9e)](0x0,0x8)+'...\x20TMUX='+(q||a0_0x2bdfc6(0x88))+'\x20CWD='+process[a0_0x2bdfc6(0x90)]()+'\x20PROJECT_ENV='+C);var K=new a0_0x1fb0e6({'name':'commhub-channel','version':a0_0x2bdfc6(0xf2)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x2bdfc6(0xc5),a0_0x2bdfc6(0xad),a0_0x2bdfc6(0xc6),a0_0x2bdfc6(0xee),'Session\x20alias:\x20'+Z][a0_0x2bdfc6(0xe7)]('\x0a')});K[a0_0x2bdfc6(0xdf)](a0_0x43a6ad,async()=>({'tools':[{'name':'commhub_reply','description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':'object','properties':{'task_id':{'type':a0_0x2bdfc6(0x8f),'description':a0_0x2bdfc6(0xfd)},'text':{'type':a0_0x2bdfc6(0x8f),'description':'Reply\x20text\x20/\x20result\x20summary'},'status':{'type':a0_0x2bdfc6(0x8f),'enum':['completed',a0_0x2bdfc6(0xed),a0_0x2bdfc6(0xa9),a0_0x2bdfc6(0xd4)],'description':a0_0x2bdfc6(0xbf)}},'required':[a0_0x2bdfc6(0xe6)]}},{'name':a0_0x2bdfc6(0xe0),'description':a0_0x2bdfc6(0xaa),'inputSchema':{'type':'object','properties':{'status':{'type':a0_0x2bdfc6(0x8f),'enum':[a0_0x2bdfc6(0xc1),a0_0x2bdfc6(0xb8),a0_0x2bdfc6(0xed),a0_0x2bdfc6(0xa9)]},'task':{'type':a0_0x2bdfc6(0x8f),'description':a0_0x2bdfc6(0xf9)},'progress':{'type':a0_0x2bdfc6(0xcc),'description':a0_0x2bdfc6(0xce)}},'required':[a0_0x2bdfc6(0x87)]}},{'name':a0_0x2bdfc6(0x9c),'description':a0_0x2bdfc6(0xcf),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x2bdfc6(0x8f),'description':a0_0x2bdfc6(0xcb)},'task':{'type':'string','description':'Task\x20content'},'priority':{'type':a0_0x2bdfc6(0x8f),'enum':[a0_0x2bdfc6(0xf5),'normal',a0_0x2bdfc6(0xcd)],'description':a0_0x2bdfc6(0xd7)}},'required':['alias','task']}},{'name':a0_0x2bdfc6(0xb9),'description':a0_0x2bdfc6(0xc8),'inputSchema':{'type':a0_0x2bdfc6(0x8c),'properties':{'alias':{'type':a0_0x2bdfc6(0x8f),'description':a0_0x2bdfc6(0xcb)},'message':{'type':a0_0x2bdfc6(0x8f),'description':a0_0x2bdfc6(0xb2)}},'required':[a0_0x2bdfc6(0xb3),a0_0x2bdfc6(0xa3)]}},{'name':a0_0x2bdfc6(0xf3),'description':a0_0x2bdfc6(0xb6),'inputSchema':{'type':a0_0x2bdfc6(0x8c),'properties':{}}}]}));async function P(_0x1568f7,_0xda4d11){const _0x454983=a0_0x2bdfc6;let _0x1503a1=await fetch(k+_0x454983(0xf6),{'method':_0x454983(0xaf),'headers':{'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x454983(0xb0)+X}:{}},'body':JSON[_0x454983(0x102)]({'jsonrpc':_0x454983(0xc0),'id':0x1,'method':_0x454983(0xd2),'params':{'protocolVersion':_0x454983(0x95),'capabilities':{},'clientInfo':{'name':_0x454983(0xd0),'version':_0x454983(0xf2)}}})});if(!_0x1503a1['ok']){let _0x5e5888=await _0x1503a1['text']();return V(_0x454983(0xe8)+_0x1503a1[_0x454983(0x87)]+'\x20'+_0x5e5888['slice'](0x0,0x64)),{'ok':!0x1,'error':_0x454983(0xfb)+_0x1503a1[_0x454983(0x87)]};}await _0x1503a1[_0x454983(0xe6)]();let _0x52c481=(await(await fetch(k+_0x454983(0xf6),{'method':_0x454983(0xaf),'headers':{'Content-Type':_0x454983(0xae),'Accept':_0x454983(0xf4),...X?{'Authorization':_0x454983(0xb0)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x454983(0xc0),'id':0x2,'method':_0x454983(0xa7),'params':{'name':_0x1568f7,'arguments':_0xda4d11}})}))[_0x454983(0xe6)]())[_0x454983(0xe5)]('\x0a')[_0x454983(0xa1)](_0x5ce3a5=>_0x5ce3a5[_0x454983(0xbb)]('data:\x20'));if(_0x52c481){let _0x5eb0e8=JSON[_0x454983(0x94)](_0x52c481[_0x454983(0x9e)](0x6));return _0x5eb0e8?.['result']?.[_0x454983(0x84)]?.[0x0]?.[_0x454983(0xe6)]?JSON['parse'](_0x5eb0e8['result'][_0x454983(0x84)][0x0][_0x454983(0xe6)]):_0x5eb0e8;}return{'ok':!0x1,'error':_0x454983(0xd8)};}K[a0_0x2bdfc6(0xdf)](a0_0x56dc42,async _0x5f4e1e=>{const _0x574856=a0_0x2bdfc6;let {name:_0x2a94b4,arguments:_0x18b057}=_0x5f4e1e[_0x574856(0x81)];if(_0x2a94b4==='commhub_reply'){let {task_id:_0x1badc1,text:_0x220010,status:_0x432102}=_0x18b057;if(_0x432102===_0x574856(0x91)){let _0x7910b2=await P('report_completion',{'alias':Z,'task':_0x1badc1||_0x574856(0x9f),'result':_0x220010});return{'content':[{'type':_0x574856(0xe6),'text':JSON['stringify'](_0x7910b2)}]};}let _0x2de2be=await P(_0x574856(0xd5),{'resume_id':w,'alias':Z,'status':_0x432102==='blocked'?_0x574856(0xed):_0x432102===_0x574856(0xa9)?_0x574856(0xa9):_0x574856(0xc1),'task':_0x220010[_0x574856(0x9e)](0x0,0xc8),'output':_0x220010});return{'content':[{'type':_0x574856(0xe6),'text':JSON[_0x574856(0x102)](_0x2de2be)}]};}if(_0x2a94b4===_0x574856(0xe0)){let {status:_0x81c75a,task:_0x24cd76,progress:_0x1e8b6b}=_0x18b057,_0x2afadd=await P(_0x574856(0xd5),{'resume_id':w,'alias':Z,'status':_0x81c75a,'task':_0x24cd76,'progress':_0x1e8b6b});return{'content':[{'type':'text','text':JSON[_0x574856(0x102)](_0x2afadd)}]};}if(_0x2a94b4===_0x574856(0x9c)){let {alias:_0x3e151a,task:_0x49b954,priority:_0x5413fc}=_0x18b057,_0x1065a8=await P(_0x574856(0xb4),{'alias':_0x3e151a,'task':_0x49b954,'priority':_0x5413fc||_0x574856(0xdb),'from_session':Z});return{'content':[{'type':_0x574856(0xe6),'text':JSON['stringify'](_0x1065a8)}]};}if(_0x2a94b4===_0x574856(0xb9)){let {alias:_0x13060f,message:_0x28873e}=_0x18b057,_0x3d4d42=await P(_0x574856(0xe3),{'alias':_0x13060f,'message':_0x28873e,'from_session':Z});return{'content':[{'type':_0x574856(0xe6),'text':JSON[_0x574856(0x102)](_0x3d4d42)}]};}if(_0x2a94b4==='commhub_get_all_status'){let _0xe5acba=await P(_0x574856(0xf0),{});return{'content':[{'type':'text','text':JSON[_0x574856(0x102)](_0xe5acba)}]};}return{'content':[{'type':_0x574856(0xe6),'text':JSON[_0x574856(0x102)]({'error':'unknown\x20tool'})}]};});async function c(){const _0x29ff67=a0_0x2bdfc6;let _0x454d4e=k+_0x29ff67(0xc4)+encodeURIComponent(Z),_0x2ea9bc={};if(X)_0x2ea9bc['Authorization']=_0x29ff67(0xb0)+X;V(_0x29ff67(0x96)+_0x454d4e);while(!0x0){try{let _0x59df33=await fetch(_0x454d4e,{'headers':_0x2ea9bc});if(!_0x59df33['ok']){V('SSE\x20error:\x20'+_0x59df33['status']+'\x20'+_0x59df33[_0x29ff67(0xf7)]),await O(0x1388);continue;}let _0x4b3577=_0x59df33[_0x29ff67(0x7f)]['getReader'](),_0x1a554f=new TextDecoder(),_0x1ba6ec='';while(!0x0){let {done:_0x5e9616,value:_0x26441b}=await _0x4b3577[_0x29ff67(0xc9)]();if(_0x5e9616)break;_0x1ba6ec+=_0x1a554f['decode'](_0x26441b,{'stream':!0x0});let _0x22f8da=_0x1ba6ec[_0x29ff67(0xe5)]('\x0a\x0a');_0x1ba6ec=_0x22f8da[_0x29ff67(0xc7)]()||'';for(let _0x44308b of _0x22f8da){let _0x5995a8=_0x44308b[_0x29ff67(0xe5)]('\x0a')[_0x29ff67(0xa1)](_0x486e5c=>_0x486e5c[_0x29ff67(0xbb)](_0x29ff67(0xe4)));if(!_0x5995a8)continue;try{let _0x39b74e=JSON['parse'](_0x5995a8[_0x29ff67(0x9e)](0x6));await v(_0x39b74e);}catch(_0xc1ea93){V(_0x29ff67(0x9b)+_0xc1ea93);}}}V('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x178ee1){V(_0x29ff67(0xeb)+_0x178ee1);}await O(0xbb8);}}async function v(_0x2196f2){const _0x5c07d2=a0_0x2bdfc6;if(_0x2196f2[_0x5c07d2(0xc3)]==='connected'){V('SSE\x20connected\x20as\x20\x22'+Z+'\x22');return;}if(_0x2196f2[_0x5c07d2(0xc3)]==='new_message'){if(V(_0x5c07d2(0x9d)+_0x2196f2[_0x5c07d2(0xba)]+':\x20'+_0x2196f2[_0x5c07d2(0xa3)][_0x5c07d2(0x9e)](0x0,0x3c)),await K[_0x5c07d2(0xec)]({'method':_0x5c07d2(0xa2),'params':{'content':_0x2196f2[_0x5c07d2(0xa3)],'meta':{'sender':_0x2196f2['from']||_0x5c07d2(0x82),'sender_id':_0x5c07d2(0x86),'user':_0x2196f2[_0x5c07d2(0xba)]||_0x5c07d2(0x82),'priority':_0x5c07d2(0xdb)}}}),_0x2196f2[_0x5c07d2(0xd9)])await P(_0x5c07d2(0xa4),{'alias':Z,'message_id':_0x2196f2[_0x5c07d2(0xd9)]});return;}if(_0x2196f2[_0x5c07d2(0xc3)]==='new_task'||_0x2196f2[_0x5c07d2(0xc3)]===_0x5c07d2(0xab)){V('←\x20'+_0x2196f2[_0x5c07d2(0xc3)]+_0x5c07d2(0x103)+_0x2196f2[_0x5c07d2(0xb5)]+_0x5c07d2(0xa8)+(_0x2196f2[_0x5c07d2(0x83)]||_0x5c07d2(0xdb)));let _0x53d25d=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0x53d25d?.['ok']&&_0x53d25d[_0x5c07d2(0xd6)]?.[_0x5c07d2(0xef)]>0x0)for(let _0x194ee3 of _0x53d25d[_0x5c07d2(0xd6)]){let _0x23093f={'sender':_0x194ee3[_0x5c07d2(0xa0)]||_0x5c07d2(0x82),'sender_id':_0x5c07d2(0x86),'user':_0x194ee3[_0x5c07d2(0xa0)]||_0x5c07d2(0x82),'task_id':_0x194ee3['id'],'priority':_0x194ee3[_0x5c07d2(0x83)]||_0x5c07d2(0xdb)};await K[_0x5c07d2(0xec)]({'method':'notifications/claude/channel','params':{'content':_0x194ee3[_0x5c07d2(0x84)],'meta':_0x23093f}}),V(_0x5c07d2(0xf8)+_0x194ee3['id'][_0x5c07d2(0x9e)](0x0,0x8)+_0x5c07d2(0x8a)+_0x194ee3[_0x5c07d2(0xa0)]+':\x20'+_0x194ee3[_0x5c07d2(0x84)][_0x5c07d2(0x9e)](0x0,0x3c)),await P(_0x5c07d2(0xa4),{'alias':Z,'message_id':_0x194ee3['id']});}}}async function u(){const _0x25dae6=a0_0x2bdfc6;let _0x40e114=new a0_0x4304cb();await K[_0x25dae6(0xda)](_0x40e114),V(_0x25dae6(0xe9)),V(_0x25dae6(0x8d)),c()[_0x25dae6(0x97)](_0x3a95ce=>V(_0x25dae6(0x92)+_0x3a95ce)),P(_0x25dae6(0xd5),{'resume_id':w,'alias':Z,'status':_0x25dae6(0xb8),'server':a0_0x19ba6e(),'hostname':a0_0x19ba6e(),'agent':_0x25dae6(0x8e),'project_dir':process[_0x25dae6(0x90)](),'tmux_name':q||void 0x0})[_0x25dae6(0xd1)](()=>V(_0x25dae6(0xa6)+Z+'\x22\x20('+w[_0x25dae6(0x9e)](0x0,0x8)+')'))[_0x25dae6(0x97)](_0x5991a9=>V(_0x25dae6(0xdc)+_0x5991a9)),setInterval(()=>{const _0x425cd1=_0x25dae6;P(_0x425cd1(0xd5),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x19ba6e(),'hostname':a0_0x19ba6e(),'agent':_0x425cd1(0x8e),'project_dir':process[_0x425cd1(0x90)](),'tmux_name':q||void 0x0})[_0x425cd1(0x97)](_0x2c0b90=>V(_0x425cd1(0xf1)+_0x2c0b90));},0x2bf20),V(_0x25dae6(0xe2));}function a0_0x20f3(_0x5d1aca,_0x35fa72){_0x5d1aca=_0x5d1aca-0x7e;const _0x4dd10e=a0_0x4dd1();let _0x20f3dc=_0x4dd10e[_0x5d1aca];return _0x20f3dc;}u()[a0_0x2bdfc6(0x97)](_0x2ffe06=>{const _0x208289=a0_0x2bdfc6;V(_0x208289(0x9a)+_0x2ffe06),process[_0x208289(0xfc)](0x1);});async function f(){const _0x4f61de=a0_0x2bdfc6;V(_0x4f61de(0xdd)),await P(_0x4f61de(0xd5),{'resume_id':w,'alias':Z,'status':_0x4f61de(0xa9),'task':'session\x20disconnected'})[_0x4f61de(0x97)](()=>{}),process[_0x4f61de(0xfc)](0x0);}process[a0_0x2bdfc6(0xff)]['on'](a0_0x2bdfc6(0xbe),()=>f()),process['on']('SIGTERM',()=>f()),process['on'](a0_0x2bdfc6(0xe1),()=>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.2",
|
|
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",
|