@sleep2agi/agent-network 2.2.12-preview.0 → 2.2.13-preview.0
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 +6 -2
package/dist/src/client.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x4f5ddc=a0_0x1c05;(function(_0x5adae2,_0x2be53f){const _0x54207f=a0_0x1c05,_0x862a5c=_0x5adae2();while(!![]){try{const _0x5df8cc=-parseInt(_0x54207f(0x15c))/0x1+-parseInt(_0x54207f(0x14d))/0x2+-parseInt(_0x54207f(0x111))/0x3*(-parseInt(_0x54207f(0x11c))/0x4)+parseInt(_0x54207f(0x129))/0x5+parseInt(_0x54207f(0x148))/0x6*(-parseInt(_0x54207f(0x10f))/0x7)+parseInt(_0x54207f(0x11a))/0x8*(parseInt(_0x54207f(0x12f))/0x9)+parseInt(_0x54207f(0x14e))/0xa;if(_0x5df8cc===_0x2be53f)break;else _0x862a5c['push'](_0x862a5c['shift']());}catch(_0x30136e){_0x862a5c['push'](_0x862a5c['shift']());}}}(a0_0x18b0,0x2b075));import{EventEmitter as a0_0x401e0a}from'events';function a0_0x18b0(){const _0x59a110=['body','2.0','get_all_status','offline','parse','send_reply','catch','server','application/json,\x20text/event-stream','421500SMbxIN','idle','log','heartbeatInterval','alias','165696mBRvgv','1063140vxEeNC','new_task','sseAbort','sdk-',']\x20[commhub:','emit','ack_inbox','completed','messages','min','running','result','connectSSE','match','157980cTLvcm','s...','text','decode','startsWith','reply','status','21RirRZj','reconnectDelay','39306pfnJjS','connected','error','now','agent','disconnected','cwd','toString','pop','34768vITqQc','broadcast','4wNdcxH','url','/events/','data:\x20','type','slice','autoConnect','task','read','send_message','call','Bearer\x20','token','1216505lZbZKF','POST','resumeId','AbortError','send_task','heartbeatTimer','549oMwqWY','name','abort','registered','report_status','sdk','processInbox','normal','application/json','message','sleep','SSE\x20error:\x20','SSE\x20connected','Authorization','content','getReader'];a0_0x18b0=function(){return _0x59a110;};return a0_0x18b0();}import{hostname as a0_0x23b4db}from'os';function a0_0x1c05(_0x1b20d3,_0x3e64e6){_0x1b20d3=_0x1b20d3-0x10c;const _0x18b0cd=a0_0x18b0();let _0x1c057d=_0x18b0cd[_0x1b20d3];return _0x1c057d;}class T extends a0_0x401e0a{[a0_0x4f5ddc(0x11d)];[a0_0x4f5ddc(0x14c)];[a0_0x4f5ddc(0x128)];['agent'];[a0_0x4f5ddc(0x12b)];[a0_0x4f5ddc(0x14b)];['reconnectDelay'];[a0_0x4f5ddc(0x12e)];[a0_0x4f5ddc(0x150)];[a0_0x4f5ddc(0x158)]=!0x1;constructor(_0x1e47e0){const _0x21be0c=a0_0x4f5ddc;super();if(this[_0x21be0c(0x11d)]=_0x1e47e0[_0x21be0c(0x11d)]['replace'](/\/$/,''),this[_0x21be0c(0x14c)]=_0x1e47e0[_0x21be0c(0x14c)],this['token']=_0x1e47e0['token'],this[_0x21be0c(0x115)]=_0x1e47e0['agent']||_0x21be0c(0x134),this[_0x21be0c(0x12b)]=_0x21be0c(0x151)+_0x1e47e0[_0x21be0c(0x14c)]+'-'+Date[_0x21be0c(0x114)]()[_0x21be0c(0x118)](0x24),this[_0x21be0c(0x14b)]=_0x1e47e0[_0x21be0c(0x14b)]??0x2bf20,this['reconnectDelay']=_0x1e47e0['reconnectDelay']??0xbb8,_0x1e47e0[_0x21be0c(0x122)]!==!0x1)this['connect']();}[a0_0x4f5ddc(0x14a)](_0x482942){const _0x4a32b9=a0_0x4f5ddc;console['log']('['+new Date()['toTimeString']()[_0x4a32b9(0x121)](0x0,0x8)+_0x4a32b9(0x152)+this[_0x4a32b9(0x14c)]+']\x20'+_0x482942);}async[a0_0x4f5ddc(0x126)](_0x52d778,_0x4c3ba6){const _0x5f4b6a=a0_0x4f5ddc;let _0x55ffa1={'Content-Type':_0x5f4b6a(0x137),'Accept':_0x5f4b6a(0x147)};if(this[_0x5f4b6a(0x128)])_0x55ffa1[_0x5f4b6a(0x13c)]=_0x5f4b6a(0x127)+this[_0x5f4b6a(0x128)];let _0x44eee5=await(await fetch(this[_0x5f4b6a(0x11d)]+'/mcp',{'method':_0x5f4b6a(0x12a),'headers':_0x55ffa1,'body':JSON['stringify']({'jsonrpc':_0x5f4b6a(0x140),'id':Date[_0x5f4b6a(0x114)](),'method':'tools/call','params':{'name':_0x52d778,'arguments':_0x4c3ba6}})}))[_0x5f4b6a(0x15e)](),_0x3749ce=_0x44eee5[_0x5f4b6a(0x15b)](/data: (.+)/),_0x4ad176=_0x3749ce?JSON[_0x5f4b6a(0x143)](_0x3749ce[0x1]):JSON[_0x5f4b6a(0x143)](_0x44eee5),_0xd1511a=_0x4ad176?.[_0x5f4b6a(0x159)]?.[_0x5f4b6a(0x13d)]?.[0x0]?.['text'];return _0xd1511a?JSON['parse'](_0xd1511a):_0x4ad176;}async['connect'](){const _0xd1747d=a0_0x4f5ddc;if(this[_0xd1747d(0x158)])return;this[_0xd1747d(0x158)]=!0x0,await this[_0xd1747d(0x10e)]('idle'),this[_0xd1747d(0x14a)](_0xd1747d(0x132)),this[_0xd1747d(0x12e)]=setInterval(()=>{const _0x13f9c7=_0xd1747d;this['status'](_0x13f9c7(0x149))[_0x13f9c7(0x145)](_0x3cd0ec=>this['log']('heartbeat\x20failed:\x20'+_0x3cd0ec[_0x13f9c7(0x138)]));},this[_0xd1747d(0x14b)]),this['connectSSE']();}async['disconnect'](){const _0x48a36d=a0_0x4f5ddc;if(this[_0x48a36d(0x158)]=!0x1,this[_0x48a36d(0x150)]?.[_0x48a36d(0x131)](),this['heartbeatTimer'])clearInterval(this[_0x48a36d(0x12e)]);await this[_0x48a36d(0x10e)](_0x48a36d(0x142))[_0x48a36d(0x145)](()=>{}),this[_0x48a36d(0x14a)](_0x48a36d(0x116));}async['send'](_0x4ec533,_0x2d4ac5,_0x144af8=a0_0x4f5ddc(0x136)){const _0x2109ab=a0_0x4f5ddc;return this['call'](_0x2109ab(0x12d),{'alias':_0x4ec533,'task':_0x2d4ac5,'priority':_0x144af8,'from_session':this['alias']});}async['message'](_0xae63f1,_0x1c6d05){const _0x5bb98d=a0_0x4f5ddc;return this['call'](_0x5bb98d(0x125),{'alias':_0xae63f1,'message':_0x1c6d05,'from_session':this[_0x5bb98d(0x14c)]});}async[a0_0x4f5ddc(0x10d)](_0x232230,_0x29ceb0,_0x802cc6=a0_0x4f5ddc(0x155)){const _0x3c59a=a0_0x4f5ddc;return this[_0x3c59a(0x126)](_0x3c59a(0x144),{'in_reply_to':_0x232230,'text':_0x29ceb0,'status':_0x802cc6});}async[a0_0x4f5ddc(0x10e)](_0x2fbe8c,_0x4af276){const _0x448b5e=a0_0x4f5ddc;return this[_0x448b5e(0x126)](_0x448b5e(0x133),{'resume_id':this['resumeId'],'alias':this[_0x448b5e(0x14c)],'status':_0x2fbe8c,'server':a0_0x23b4db(),'hostname':a0_0x23b4db(),'agent':this[_0x448b5e(0x115)],'project_dir':process[_0x448b5e(0x117)](),..._0x4af276});}async['getAllStatus'](){const _0x41bd5a=a0_0x4f5ddc;return this[_0x41bd5a(0x126)](_0x41bd5a(0x141),{});}async[a0_0x4f5ddc(0x11b)](_0x456e83,_0x469e7a){const _0x4f86a5=a0_0x4f5ddc;return this[_0x4f86a5(0x126)]('broadcast',{'message':_0x456e83,'filter_server':_0x469e7a?.[_0x4f86a5(0x146)],'filter_status':_0x469e7a?.['status']});}async[a0_0x4f5ddc(0x15a)](){const _0x45c764=a0_0x4f5ddc;let _0x5c04fd=encodeURIComponent(this[_0x45c764(0x14c)]),_0x5aa5b0=this[_0x45c764(0x11d)]+_0x45c764(0x11e)+_0x5c04fd,_0x4e7a43=this[_0x45c764(0x110)];while(this[_0x45c764(0x158)]){try{this[_0x45c764(0x150)]=new AbortController();let _0x1ce36b={'Accept':'text/event-stream'};if(this[_0x45c764(0x128)])_0x1ce36b[_0x45c764(0x13c)]=_0x45c764(0x127)+this[_0x45c764(0x128)];let _0x1f8032=await fetch(_0x5aa5b0,{'headers':_0x1ce36b,'signal':this[_0x45c764(0x150)]['signal']});if(!_0x1f8032['ok']||!_0x1f8032[_0x45c764(0x13f)]){this['log']('SSE\x20failed:\x20'+_0x1f8032[_0x45c764(0x10e)]),await this[_0x45c764(0x139)](_0x4e7a43),_0x4e7a43=Math[_0x45c764(0x157)](_0x4e7a43*1.5,0xea60);continue;}_0x4e7a43=this[_0x45c764(0x110)];let _0x659044=_0x1f8032['body'][_0x45c764(0x13e)](),_0x53190c=new TextDecoder(),_0x222c7f='';while(this[_0x45c764(0x158)]){let {done:_0x5081a5,value:_0x276469}=await _0x659044[_0x45c764(0x124)]();if(_0x5081a5)break;_0x222c7f+=_0x53190c[_0x45c764(0x15f)](_0x276469,{'stream':!0x0});let _0x65101b=_0x222c7f['split']('\x0a');_0x222c7f=_0x65101b[_0x45c764(0x119)]()||'';for(let _0x224548 of _0x65101b){if(!_0x224548[_0x45c764(0x10c)](_0x45c764(0x11f)))continue;try{let _0x2a134c=JSON[_0x45c764(0x143)](_0x224548[_0x45c764(0x121)](0x6));if(_0x2a134c[_0x45c764(0x120)]===_0x45c764(0x112)){this[_0x45c764(0x14a)](_0x45c764(0x13b)),this[_0x45c764(0x153)](_0x45c764(0x112));continue;}if(_0x2a134c['type']===_0x45c764(0x14f)||_0x2a134c[_0x45c764(0x120)]==='new_message'||_0x2a134c[_0x45c764(0x120)]===_0x45c764(0x11b))await this[_0x45c764(0x135)]();}catch{}}}}catch(_0x4a2bd4){if(_0x4a2bd4[_0x45c764(0x130)]===_0x45c764(0x12c))break;this[_0x45c764(0x153)](_0x45c764(0x113),_0x4a2bd4),this[_0x45c764(0x14a)](_0x45c764(0x13a)+_0x4a2bd4[_0x45c764(0x138)]);}if(this[_0x45c764(0x158)])this['emit'](_0x45c764(0x116)),this['log']('SSE\x20reconnecting\x20in\x20'+_0x4e7a43/0x3e8+_0x45c764(0x15d)),await this['sleep'](_0x4e7a43),_0x4e7a43=Math[_0x45c764(0x157)](_0x4e7a43*1.5,0xea60);}}async[a0_0x4f5ddc(0x135)](){const _0x44725a=a0_0x4f5ddc;try{let _0x47a54b=(await this[_0x44725a(0x126)]('get_inbox',{'alias':this['alias'],'limit':0xa}))?.[_0x44725a(0x156)]||[];for(let _0x4ea678 of _0x47a54b)await this['call'](_0x44725a(0x154),{'alias':this[_0x44725a(0x14c)],'message_id':_0x4ea678['id']}),this[_0x44725a(0x14a)]('←\x20'+_0x4ea678['from_session']+':\x20'+_0x4ea678[_0x44725a(0x13d)][_0x44725a(0x121)](0x0,0x3c)),this[_0x44725a(0x153)](_0x44725a(0x123),_0x4ea678),this[_0x44725a(0x153)](_0x44725a(0x138),_0x4ea678);}catch(_0x5daa26){this[_0x44725a(0x14a)]('inbox\x20error:\x20'+_0x5daa26['message']);}}[a0_0x4f5ddc(0x139)](_0x405f6f){return new Promise(_0x474923=>setTimeout(_0x474923,_0x405f6f));}}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
|
-
const a0_0x1033ff=a0_0x4b4a;(function(_0x316723,_0x725ce4){const _0x538359=a0_0x4b4a,_0x1ef86e=_0x316723();while(!![]){try{const _0x55a3cd=-parseInt(_0x538359(0x22d))/0x1+-parseInt(_0x538359(0x21f))/0x2+parseInt(_0x538359(0x200))/0x3*(parseInt(_0x538359(0x1d0))/0x4)+-parseInt(_0x538359(0x203))/0x5*(parseInt(_0x538359(0x1cd))/0x6)+parseInt(_0x538359(0x1fc))/0x7+parseInt(_0x538359(0x204))/0x8*(parseInt(_0x538359(0x237))/0x9)+parseInt(_0x538359(0x1d3))/0xa*(parseInt(_0x538359(0x1f0))/0xb);if(_0x55a3cd===_0x725ce4)break;else _0x1ef86e['push'](_0x1ef86e['shift']());}catch(_0x5b6736){_0x1ef86e['push'](_0x1ef86e['shift']());}}}(a0_0x298f,0x966c1));import{readFileSync as a0_0x28cd7f,existsSync as a0_0x2bfb7c}from'fs';import{randomUUID as a0_0x48e2be}from'crypto';import{join as a0_0x2a2455}from'path';import{hostname as a0_0x3a4734}from'os';import{execSync as a0_0x3da7e1}from'child_process';import{Server as a0_0x578c2a}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x3136c8}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0xb907d7,CallToolRequestSchema as a0_0x2e9c4a}from'@modelcontextprotocol/sdk/types.js';function I(_0x45bce3){const _0x376228=a0_0x4b4a;if(!a0_0x2bfb7c(_0x45bce3))return;for(let _0x124384 of a0_0x28cd7f(_0x45bce3,_0x376228(0x1a6))['split']('\x0a')){let _0x5368e7=_0x124384[_0x376228(0x1f1)]();if(!_0x5368e7||_0x5368e7[_0x376228(0x234)]('#'))continue;let _0x4b7bc4=_0x5368e7['indexOf']('=');if(_0x4b7bc4<0x0)continue;let _0x23c91a=_0x5368e7['slice'](0x0,_0x4b7bc4)[_0x376228(0x1f1)](),_0x377e33=_0x5368e7[_0x376228(0x238)](_0x4b7bc4+0x1)['trim']()['replace'](/^["']|["']$/g,'');if(!process.env[_0x23c91a])process.env[_0x23c91a]=_0x377e33;}}var L=process.env.HOME||'~',U=a0_0x2a2455(L,a0_0x1033ff(0x236));function a0_0x298f(){const _0xe930cc=['\x20CWD=','pop','min','application/json','report_status','completed','alias','application/json,\x20text/event-stream',']\x20[commhub]\x20',':\x20inbox_count=','commhub_send_message','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','config.json','registered\x20as\x20\x22','content','SSE\x20error:\x20','http://127.0.0.1:9200','token','number','\x20ALIAS=','\x20/\x20hostname=','status','Target\x20session\x20alias','getReader','setRequestHandler','(none)','parse','notification','parse\x20error:\x20','3632910qykORZ','SSE\x20fatal:\x20','init\x20failed:\x20','26960hZOiQK','type','commhub_reply','137140YpavWB','.env','from_session','2.0','connected','SIGTERM','Priority\x20(default:\x20normal)','idle','replace','priority','stringify','tools/call','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','get','2025-03-26','messages','cwd','←\x20message\x20from\x20','text','commhub','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a','commhub_send_task','data:\x20','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','split',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','body','re-registered\x20as\x20\x22','normal','1342FOtDpY','trim','read','error','Bearer\x20','blocked','failed','\x20priority=','offline','hub','Reply\x20text\x20/\x20result\x20summary','set','1957662StmbhJ','result','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','\x20from\x20','213evYgwF','send_task','inbox_count','5PwdxiW','10432aVnJov','ENV:\x20URL=','0.3.0','length','join','working','new_task','warning:\x20could\x20not\x20register:\x20','string','Message\x20content','high','tmux\x20display-message\x20-p\x20\x27#S\x27','no\x20response','send_reply','→\x20injected\x20task\x20','fatal:\x20','re-register\x20failed:\x20','\x22\x20(','SIGINT','object','initialize','catch','cancelled','message_id','ack_inbox','\x22\x20after\x20SSE\x20reconnect','replied','1456234IrOGNZ','commhub-channel','.anet','get_all_status','heartbeat\x20failed:\x20','now','claude-code','CommHub\x20init\x20failed:\x20','Task\x20content','\x20PROJECT_ENV=','/events/','pid','session\x20disconnected','task','750207bPIfXl','from','delete','broadcast','notifications/claude/channel','decode','in_progress','startsWith','new_message','.claude/channels/commhub','1854IKKDkA','slice','low','toTimeString','commhub_report_status','unknown\x20tool','end','find','\x20RESUME_ID=','shutting\x20down,\x20reporting\x20offline...','Current\x20task\x20description','POST','connecting\x20to\x20','utf-8','stdin','write','would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME=','stderr','Session\x20alias:\x20','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','exit','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)'];a0_0x298f=function(){return _0xe930cc;};return a0_0x298f();}I(a0_0x2a2455(U,a0_0x1033ff(0x1d4)));var v=process['cwd']()[a0_0x1033ff(0x1db)](/\//g,'-');I(a0_0x2a2455(U,v,a0_0x1033ff(0x1d4)));function d(){const _0xa3c55d=a0_0x1033ff;try{return a0_0x3da7e1(_0xa3c55d(0x20f),{'encoding':_0xa3c55d(0x1a6),'timeout':0x7d0})[_0xa3c55d(0x1f1)]();}catch{return'';}}function m(){const _0x54a24e=a0_0x1033ff;try{let _0x46ad29=a0_0x2a2455(L,_0x54a24e(0x221),_0x54a24e(0x1bc));if(a0_0x2bfb7c(_0x46ad29))return JSON[_0x54a24e(0x1ca)](a0_0x28cd7f(_0x46ad29,_0x54a24e(0x1a6)));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u[a0_0x1033ff(0x1f9)]||a0_0x1033ff(0x1c0),f=process.env.COMMHUB_TMUX||d();function a0_0x4b4a(_0x3cc7dc,_0x4b7744){_0x3cc7dc=_0x3cc7dc-0x1a6;const _0x298fa7=a0_0x298f();let _0x4b4afd=_0x298fa7[_0x3cc7dc];return _0x4b4afd;}function r(){const _0x3a3fe7=a0_0x1033ff;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x3a3fe7(0x1f1)]())return process.env.COMMHUB_ALIAS['trim']();return process[_0x3a3fe7(0x1aa)][_0x3a3fe7(0x1a8)](_0x3a3fe7(0x1df)+(_0x3a3fe7(0x1a9)+(f||_0x3a3fe7(0x1c9))+_0x3a3fe7(0x1c4)+a0_0x3a4734()+_0x3a3fe7(0x1e7))),'unattributed-'+process[_0x3a3fe7(0x22a)];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x48e2be(),F=process.env.COMMHUB_TOKEN||u[a0_0x1033ff(0x1c1)]||'';function W(_0x45e607){const _0x1ad47a=a0_0x1033ff;let _0x5920c5=new Date()[_0x1ad47a(0x23a)]()[_0x1ad47a(0x238)](0x0,0x8);process[_0x1ad47a(0x1aa)][_0x1ad47a(0x1a8)]('['+_0x5920c5+_0x1ad47a(0x1b8)+_0x45e607+'\x0a');}function N(_0xf80fe8){return new Promise(_0x517ef4=>setTimeout(_0x517ef4,_0xf80fe8));}W(a0_0x1033ff(0x205)+j+a0_0x1033ff(0x1c3)+G+a0_0x1033ff(0x23f)+K[a0_0x1033ff(0x238)](0x0,0x8)+'...\x20TMUX='+(f||'none')+a0_0x1033ff(0x1b0)+process['cwd']()+a0_0x1033ff(0x228)+v);var D=new Map(),x=new a0_0x578c2a({'name':a0_0x1033ff(0x220),'version':a0_0x1033ff(0x206)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x1033ff(0x1ae),'These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x1033ff(0x1ea),a0_0x1033ff(0x1ab)+G][a0_0x1033ff(0x208)]('\x0a')});x[a0_0x1033ff(0x1c8)](a0_0xb907d7,async()=>({'tools':[{'name':a0_0x1033ff(0x1d2),'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_0x1033ff(0x20c),'description':a0_0x1033ff(0x1af)},'text':{'type':'string','description':a0_0x1033ff(0x1fa)},'status':{'type':a0_0x1033ff(0x20c),'enum':[a0_0x1033ff(0x1b5),a0_0x1033ff(0x1f6),a0_0x1033ff(0x21a),a0_0x1033ff(0x1f5),a0_0x1033ff(0x1f3),a0_0x1033ff(0x233)],'description':a0_0x1033ff(0x1bb)}},'required':[a0_0x1033ff(0x1e5)]}},{'name':a0_0x1033ff(0x23b),'description':'Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','inputSchema':{'type':a0_0x1033ff(0x217),'properties':{'status':{'type':a0_0x1033ff(0x20c),'enum':[a0_0x1033ff(0x209),a0_0x1033ff(0x1da),'blocked',a0_0x1033ff(0x1f3)]},'task':{'type':a0_0x1033ff(0x20c),'description':a0_0x1033ff(0x241)},'progress':{'type':a0_0x1033ff(0x1c2),'description':'Progress\x200-100'}},'required':[a0_0x1033ff(0x1c5)]}},{'name':a0_0x1033ff(0x1e8),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x1033ff(0x217),'properties':{'alias':{'type':a0_0x1033ff(0x20c),'description':a0_0x1033ff(0x1c6)},'task':{'type':a0_0x1033ff(0x20c),'description':a0_0x1033ff(0x227)},'priority':{'type':a0_0x1033ff(0x20c),'enum':[a0_0x1033ff(0x20e),a0_0x1033ff(0x1ef),a0_0x1033ff(0x239)],'description':a0_0x1033ff(0x1d9)}},'required':[a0_0x1033ff(0x1b6),a0_0x1033ff(0x22c)]}},{'name':a0_0x1033ff(0x1ba),'description':a0_0x1033ff(0x1ac),'inputSchema':{'type':a0_0x1033ff(0x217),'properties':{'alias':{'type':'string','description':a0_0x1033ff(0x1c6)},'message':{'type':a0_0x1033ff(0x20c),'description':a0_0x1033ff(0x20d)}},'required':['alias','message']}},{'name':'commhub_get_all_status','description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':a0_0x1033ff(0x217),'properties':{}}}]}));async function Y(_0x562860,_0x267738){const _0x54f7e2=a0_0x1033ff;let _0x8e3425=await fetch(j+'/mcp',{'method':_0x54f7e2(0x242),'headers':{'Content-Type':'application/json','Accept':_0x54f7e2(0x1b7),...F?{'Authorization':_0x54f7e2(0x1f4)+F}:{}},'body':JSON[_0x54f7e2(0x1dd)]({'jsonrpc':_0x54f7e2(0x1d6),'id':0x1,'method':_0x54f7e2(0x218),'params':{'protocolVersion':_0x54f7e2(0x1e1),'capabilities':{},'clientInfo':{'name':_0x54f7e2(0x220),'version':'0.3.0'}}})});if(!_0x8e3425['ok']){let _0x5e7dce=await _0x8e3425[_0x54f7e2(0x1e5)]();return W(_0x54f7e2(0x226)+_0x8e3425[_0x54f7e2(0x1c5)]+'\x20'+_0x5e7dce[_0x54f7e2(0x238)](0x0,0x64)),{'ok':!0x1,'error':_0x54f7e2(0x1cf)+_0x8e3425['status']};}await _0x8e3425[_0x54f7e2(0x1e5)]();let _0x513cd3=(await(await fetch(j+'/mcp',{'method':_0x54f7e2(0x242),'headers':{'Content-Type':_0x54f7e2(0x1b3),'Accept':_0x54f7e2(0x1b7),...F?{'Authorization':_0x54f7e2(0x1f4)+F}:{}},'body':JSON[_0x54f7e2(0x1dd)]({'jsonrpc':_0x54f7e2(0x1d6),'id':0x2,'method':_0x54f7e2(0x1de),'params':{'name':_0x562860,'arguments':_0x267738}})}))[_0x54f7e2(0x1e5)]())['split']('\x0a')[_0x54f7e2(0x23e)](_0x3d5813=>_0x3d5813[_0x54f7e2(0x234)](_0x54f7e2(0x1e9)));if(_0x513cd3){let _0x365d34=JSON[_0x54f7e2(0x1ca)](_0x513cd3[_0x54f7e2(0x238)](0x6));return _0x365d34?.['result']?.[_0x54f7e2(0x1be)]?.[0x0]?.['text']?JSON[_0x54f7e2(0x1ca)](_0x365d34[_0x54f7e2(0x1fd)][_0x54f7e2(0x1be)][0x0][_0x54f7e2(0x1e5)]):_0x365d34;}return{'ok':!0x1,'error':_0x54f7e2(0x210)};}x[a0_0x1033ff(0x1c8)](a0_0x2e9c4a,async _0x3da651=>{const _0x54b0c7=a0_0x1033ff;let {name:_0x17364a,arguments:_0x329ea2}=_0x3da651['params'];if(_0x17364a==='commhub_reply'){let {task_id:_0xacc3f6,text:_0xe1bead,status:_0x1d4dd9}=_0x329ea2;if(_0x1d4dd9===_0x54b0c7(0x1b5)||_0x1d4dd9==='failed'||_0x1d4dd9===_0x54b0c7(0x21a)){let _0x5a07a1=_0x1d4dd9===_0x54b0c7(0x1b5)?_0x54b0c7(0x21e):_0x1d4dd9,_0x52767e=_0xacc3f6?D[_0x54b0c7(0x1e0)](_0xacc3f6)||_0x54b0c7(0x1f9):_0x54b0c7(0x1f9),_0x38ab5f=await Y(_0x54b0c7(0x211),{'alias':_0x52767e,'text':_0xe1bead,'in_reply_to':_0xacc3f6||void 0x0,'status':_0x5a07a1,'from_session':G});if(_0xacc3f6)D[_0x54b0c7(0x22f)](_0xacc3f6);return{'content':[{'type':_0x54b0c7(0x1e5),'text':JSON[_0x54b0c7(0x1dd)](_0x38ab5f)}]};}let _0x2fd84f=await Y(_0x54b0c7(0x1b4),{'resume_id':K,'alias':G,'status':_0x1d4dd9==='blocked'?_0x54b0c7(0x1f5):_0x1d4dd9==='error'?_0x54b0c7(0x1f3):'working','task':_0xe1bead[_0x54b0c7(0x238)](0x0,0xc8),'output':_0xe1bead});return{'content':[{'type':_0x54b0c7(0x1e5),'text':JSON[_0x54b0c7(0x1dd)](_0x2fd84f)}]};}if(_0x17364a==='commhub_report_status'){let {status:_0x1d3e95,task:_0x4e522d,progress:_0x21d48c}=_0x329ea2,_0xcb1aa1=await Y(_0x54b0c7(0x1b4),{'resume_id':K,'alias':G,'status':_0x1d3e95,'task':_0x4e522d,'progress':_0x21d48c});return{'content':[{'type':_0x54b0c7(0x1e5),'text':JSON[_0x54b0c7(0x1dd)](_0xcb1aa1)}]};}if(_0x17364a===_0x54b0c7(0x1e8)){let {alias:_0x530c4e,task:_0x2d3367,priority:_0x3f65a3}=_0x329ea2,_0x65bcad=await Y(_0x54b0c7(0x201),{'alias':_0x530c4e,'task':_0x2d3367,'priority':_0x3f65a3||_0x54b0c7(0x1ef),'from_session':G});return{'content':[{'type':'text','text':JSON[_0x54b0c7(0x1dd)](_0x65bcad)}]};}if(_0x17364a===_0x54b0c7(0x1ba)){let {alias:_0x53207a,message:_0x51bb7c}=_0x329ea2,_0x3d979e=await Y('send_message',{'alias':_0x53207a,'message':_0x51bb7c,'from_session':G});return{'content':[{'type':_0x54b0c7(0x1e5),'text':JSON[_0x54b0c7(0x1dd)](_0x3d979e)}]};}if(_0x17364a==='commhub_get_all_status'){let _0x11748f=await Y(_0x54b0c7(0x222),{});return{'content':[{'type':_0x54b0c7(0x1e5),'text':JSON[_0x54b0c7(0x1dd)](_0x11748f)}]};}return{'content':[{'type':_0x54b0c7(0x1e5),'text':JSON['stringify']({'error':_0x54b0c7(0x23c)})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x46b7bd=a0_0x1033ff;try{await Y(_0x46b7bd(0x1b4),{'resume_id':K,'alias':G,'status':'idle','server':a0_0x3a4734(),'hostname':a0_0x3a4734(),'agent':_0x46b7bd(0x225),'project_dir':process['cwd'](),'tmux_name':f||void 0x0}),W(_0x46b7bd(0x1ee)+G+_0x46b7bd(0x21d));}catch(_0x3d050c){W(_0x46b7bd(0x214)+_0x3d050c);}}async function o(){const _0x264fb2=a0_0x1033ff;let _0x16dee9=j+_0x264fb2(0x229)+encodeURIComponent(G),_0x4d7b41={};if(F)_0x4d7b41['Authorization']=_0x264fb2(0x1f4)+F;W(_0x264fb2(0x243)+_0x16dee9);let _0xd26a3f=O,_0x33d261=!0x0,_0x237d0f=null;while(!0x0){try{let _0x4f076e=await fetch(_0x16dee9,{'headers':_0x4d7b41});if(!_0x4f076e['ok']){if(W(_0x264fb2(0x1bf)+_0x4f076e[_0x264fb2(0x1c5)]+'\x20'+_0x4f076e['statusText']),_0x237d0f=_0x237d0f??Date['now'](),Date[_0x264fb2(0x224)]()-_0x237d0f>T){W(_0x264fb2(0x1fe)+j+_0x264fb2(0x1ec));return;}await N(_0xd26a3f),_0xd26a3f=Math[_0x264fb2(0x1b2)](_0xd26a3f*0x2,R);continue;}let _0x5f4933=_0x4f076e[_0x264fb2(0x1ed)][_0x264fb2(0x1c7)](),_0x2ca031=new TextDecoder(),_0x45d7d9='';_0xd26a3f=O;while(!0x0){let {done:_0x4f5977,value:_0x343b38}=await _0x5f4933[_0x264fb2(0x1f2)]();if(_0x4f5977)break;_0x45d7d9+=_0x2ca031[_0x264fb2(0x232)](_0x343b38,{'stream':!0x0});let _0x2709bb=_0x45d7d9['split']('\x0a\x0a');_0x45d7d9=_0x2709bb[_0x264fb2(0x1b1)]()||'';for(let _0x550ca5 of _0x2709bb){let _0x2d87ee=_0x550ca5[_0x264fb2(0x1eb)]('\x0a')[_0x264fb2(0x23e)](_0x52a32c=>_0x52a32c[_0x264fb2(0x234)](_0x264fb2(0x1e9)));if(!_0x2d87ee)continue;try{let _0x5d14c1=JSON['parse'](_0x2d87ee['slice'](0x6));if(await a(_0x5d14c1),_0x5d14c1[_0x264fb2(0x1d1)]==='connected'){if(_0x237d0f=null,!_0x33d261)await l();_0x33d261=!0x1;}}catch(_0x3476e9){W(_0x264fb2(0x1cc)+_0x3476e9);}}}W('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x194493){W('SSE\x20connection\x20error:\x20'+_0x194493);}if(_0x237d0f=_0x237d0f??Date[_0x264fb2(0x224)](),Date[_0x264fb2(0x224)]()-_0x237d0f>T){W(_0x264fb2(0x1fe)+j+')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。');return;}await N(_0xd26a3f),_0xd26a3f=Math[_0x264fb2(0x1b2)](_0xd26a3f*0x2,R);}}async function a(_0x45f619){const _0x47ed91=a0_0x1033ff;if(_0x45f619[_0x47ed91(0x1d1)]===_0x47ed91(0x1d7)){W('SSE\x20connected\x20as\x20\x22'+G+'\x22');return;}if(_0x45f619[_0x47ed91(0x1d1)]===_0x47ed91(0x235)){if(W(_0x47ed91(0x1e4)+_0x45f619[_0x47ed91(0x22e)]+':\x20'+_0x45f619['message'][_0x47ed91(0x238)](0x0,0x3c)),await x[_0x47ed91(0x1cb)]({'method':_0x47ed91(0x231),'params':{'content':_0x45f619['message'],'meta':{'sender':_0x45f619[_0x47ed91(0x22e)]||_0x47ed91(0x1f9),'sender_id':_0x47ed91(0x1e6),'user':_0x45f619[_0x47ed91(0x22e)]||_0x47ed91(0x1f9),'priority':'normal'}}}),_0x45f619[_0x47ed91(0x21b)])await Y(_0x47ed91(0x21c),{'alias':G,'message_id':_0x45f619[_0x47ed91(0x21b)]});return;}if(_0x45f619[_0x47ed91(0x1d1)]===_0x47ed91(0x20a)||_0x45f619[_0x47ed91(0x1d1)]===_0x47ed91(0x230)){W('←\x20'+_0x45f619[_0x47ed91(0x1d1)]+_0x47ed91(0x1b9)+_0x45f619[_0x47ed91(0x202)]+_0x47ed91(0x1f7)+(_0x45f619[_0x47ed91(0x1dc)]||_0x47ed91(0x1ef)));let _0x32d6e7=await Y('get_inbox',{'alias':G,'limit':0x5});if(_0x32d6e7?.['ok']&&_0x32d6e7[_0x47ed91(0x1e2)]?.[_0x47ed91(0x207)]>0x0)for(let _0x878324 of _0x32d6e7[_0x47ed91(0x1e2)]){let _0x18d9f8={'sender':_0x878324[_0x47ed91(0x1d5)]||_0x47ed91(0x1f9),'sender_id':'commhub','user':_0x878324[_0x47ed91(0x1d5)]||_0x47ed91(0x1f9),'task_id':_0x878324['id'],'priority':_0x878324[_0x47ed91(0x1dc)]||_0x47ed91(0x1ef)};D[_0x47ed91(0x1fb)](_0x878324['id'],_0x878324[_0x47ed91(0x1d5)]||'hub'),await x[_0x47ed91(0x1cb)]({'method':'notifications/claude/channel','params':{'content':_0x878324[_0x47ed91(0x1be)],'meta':_0x18d9f8}}),W(_0x47ed91(0x212)+_0x878324['id'][_0x47ed91(0x238)](0x0,0x8)+_0x47ed91(0x1ff)+_0x878324[_0x47ed91(0x1d5)]+':\x20'+_0x878324[_0x47ed91(0x1be)][_0x47ed91(0x238)](0x0,0x3c)),await Y(_0x47ed91(0x21c),{'alias':G,'message_id':_0x878324['id']});}}}async function n(){const _0x4f536e=a0_0x1033ff;let _0x39c826=new a0_0x3136c8();await x['connect'](_0x39c826),W('MCP\x20stdio\x20connected'),W('starting\x20SSE\x20listener...'),o()[_0x4f536e(0x219)](_0x1b2956=>W(_0x4f536e(0x1ce)+_0x1b2956)),Y(_0x4f536e(0x1b4),{'resume_id':K,'alias':G,'status':_0x4f536e(0x1da),'server':a0_0x3a4734(),'hostname':a0_0x3a4734(),'agent':'claude-code','project_dir':process[_0x4f536e(0x1e3)](),'tmux_name':f||void 0x0})['then'](()=>W(_0x4f536e(0x1bd)+G+_0x4f536e(0x215)+K['slice'](0x0,0x8)+')'))[_0x4f536e(0x219)](_0x5d7cda=>W(_0x4f536e(0x20b)+_0x5d7cda)),setInterval(()=>{const _0x2c1116=_0x4f536e;Y(_0x2c1116(0x1b4),{'resume_id':K,'alias':G,'status':_0x2c1116(0x1da),'server':a0_0x3a4734(),'hostname':a0_0x3a4734(),'agent':_0x2c1116(0x225),'project_dir':process[_0x2c1116(0x1e3)](),'tmux_name':f||void 0x0})[_0x2c1116(0x219)](_0x1bb189=>W(_0x2c1116(0x223)+_0x1bb189));},0x2bf20),W('ready\x20—\x20waiting\x20for\x20events');}n()[a0_0x1033ff(0x219)](_0x310fcf=>{const _0x493d4e=a0_0x1033ff;W(_0x493d4e(0x213)+_0x310fcf),process[_0x493d4e(0x1ad)](0x1);});async function b(){const _0x347219=a0_0x1033ff;W(_0x347219(0x240)),await Y('report_status',{'resume_id':K,'alias':G,'status':_0x347219(0x1f8),'task':_0x347219(0x22b)})[_0x347219(0x219)](()=>{}),process[_0x347219(0x1ad)](0x0);}process[a0_0x1033ff(0x1a7)]['on'](a0_0x1033ff(0x23d),()=>b()),process['on'](a0_0x1033ff(0x1d8),()=>b()),process['on'](a0_0x1033ff(0x216),()=>b());
|
|
2
|
+
const a0_0xf496d6=a0_0x4281;(function(_0x3a0a1f,_0x40e1c3){const _0xc13a44=a0_0x4281,_0x9602ba=_0x3a0a1f();while(!![]){try{const _0xc08ec5=parseInt(_0xc13a44(0x258))/0x1+parseInt(_0xc13a44(0x202))/0x2+parseInt(_0xc13a44(0x1d6))/0x3*(-parseInt(_0xc13a44(0x247))/0x4)+parseInt(_0xc13a44(0x229))/0x5+-parseInt(_0xc13a44(0x243))/0x6+-parseInt(_0xc13a44(0x1e6))/0x7+parseInt(_0xc13a44(0x1d7))/0x8*(parseInt(_0xc13a44(0x204))/0x9);if(_0xc08ec5===_0x40e1c3)break;else _0x9602ba['push'](_0x9602ba['shift']());}catch(_0x2d3931){_0x9602ba['push'](_0x9602ba['shift']());}}}(a0_0x3369,0xdc44d));import{readFileSync as a0_0x491255,existsSync as a0_0x1dbcfc}from'fs';import{randomUUID as a0_0x5b7036}from'crypto';function a0_0x3369(){const _0xeac6d8=['new_message','params','data:\x20','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20',':\x20inbox_count=','8495335mrxEZI','priority','connected','toTimeString','SSE\x20fatal:\x20','pid','commhub_send_message','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','catch','\x20from\x20','object',']\x20[commhub]\x20','Message\x20content','\x20/\x20hostname=','Authorization','claude-code','end','type','/mcp','SSE\x20error:\x20','connecting\x20to\x20','SSE\x20connected\x20as\x20\x22','send_reply','slice','broadcast','registered\x20as\x20\x22','9533694PpejOR','offline','→\x20injected\x20task\x20','Progress\x200-100','14340PHKMmK','POST','←\x20message\x20from\x20','normal','re-register\x20failed:\x20','alias','getReader','SSE\x20stream\x20ended,\x20reconnecting...','notifications/claude/channel','write','.claude/channels/commhub','initialize','string','find','statusText','hub','starting\x20SSE\x20listener...','847920JOYwJo','...\x20TMUX=','ack_inbox','http://127.0.0.1:9200','cancelled','stderr','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','heartbeat\x20failed:\x20','now','Session\x20alias:\x20','0.3.0','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','SIGTERM','would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME=','completed','CommHub\x20init\x20failed:\x20','get_inbox','2.0','replace','none','min','get_all_status','\x20PROJECT_ENV=','notification','Bearer\x20','split','commhub','1041nRqPHX','16rVlVce','stringify','startsWith','content','read','from','exit','failed','result','\x20CWD=','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','inbox_count','message','trim','shutting\x20down,\x20reporting\x20offline...','7314398ioJhbq','Reply\x20text\x20/\x20result\x20summary','stdin','connect','replied','\x22\x20after\x20SSE\x20reconnect','tmux\x20display-message\x20-p\x20\x27#S\x27','high','.env','Priority\x20(default:\x20normal)','body','re-registered\x20as\x20\x22','\x20ALIAS=','utf-8','status','SIGINT','ENV:\x20URL=','in_progress','from_session','warning:\x20could\x20not\x20register:\x20','indexOf','commhub_send_task','commhub_reply','parse','new_task','messages','application/json,\x20text/event-stream','send_task','3048380MlvgoQ','blocked','3190059aCFchv','commhub_get_all_status','commhub-channel','Target\x20session\x20alias','\x20RESUME_ID=','parse\x20error:\x20','send_message','message_id','cwd','fatal:\x20','text','low','\x22\x20(','session\x20disconnected','report_status','2025-03-26','task','.anet','commhub_report_status','setRequestHandler','(none)','MCP\x20stdio\x20connected',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','length','idle','error','set','working','config.json','application/json','Task\x20content','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.'];a0_0x3369=function(){return _0xeac6d8;};return a0_0x3369();}import{join as a0_0x472e44}from'path';import{hostname as a0_0x3cb679}from'os';import{execSync as a0_0x490506}from'child_process';import{Server as a0_0x296592}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x10d841}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x30c216,CallToolRequestSchema as a0_0x8b1e10}from'@modelcontextprotocol/sdk/types.js';function I(_0x13aad3){const _0x5c2695=a0_0x4281;if(!a0_0x1dbcfc(_0x13aad3))return;for(let _0x4a02b2 of a0_0x491255(_0x13aad3,_0x5c2695(0x1f3))[_0x5c2695(0x1d4)]('\x0a')){let _0x1e9d04=_0x4a02b2[_0x5c2695(0x1e4)]();if(!_0x1e9d04||_0x1e9d04[_0x5c2695(0x1d9)]('#'))continue;let _0x51dff8=_0x1e9d04[_0x5c2695(0x1fa)]('=');if(_0x51dff8<0x0)continue;let _0x153efc=_0x1e9d04[_0x5c2695(0x240)](0x0,_0x51dff8)[_0x5c2695(0x1e4)](),_0xa9fe1a=_0x1e9d04[_0x5c2695(0x240)](_0x51dff8+0x1)[_0x5c2695(0x1e4)]()['replace'](/^["']|["']$/g,'');if(!process.env[_0x153efc])process.env[_0x153efc]=_0xa9fe1a;}}var L=process.env.HOME||'~',U=a0_0x472e44(L,a0_0xf496d6(0x251));I(a0_0x472e44(U,'.env'));var v=process['cwd']()[a0_0xf496d6(0x1cd)](/\//g,'-');function a0_0x4281(_0x3e3419,_0x45c01d){_0x3e3419=_0x3e3419-0x1c7;const _0x33694a=a0_0x3369();let _0x42818e=_0x33694a[_0x3e3419];return _0x42818e;}I(a0_0x472e44(U,v,a0_0xf496d6(0x1ee)));function d(){const _0x2533c1=a0_0xf496d6;try{return a0_0x490506(_0x2533c1(0x1ec),{'encoding':'utf-8','timeout':0x7d0})['trim']();}catch{return'';}}function m(){const _0x188251=a0_0xf496d6;try{let _0x23ffd7=a0_0x472e44(L,_0x188251(0x215),_0x188251(0x220));if(a0_0x1dbcfc(_0x23ffd7))return JSON[_0x188251(0x1fd)](a0_0x491255(_0x23ffd7,_0x188251(0x1f3)));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u['hub']||a0_0xf496d6(0x25b),f=process.env.COMMHUB_TMUX||d();function r(){const _0x5275a6=a0_0xf496d6;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x5275a6(0x1e4)]())return process.env.COMMHUB_ALIAS[_0x5275a6(0x1e4)]();return process[_0x5275a6(0x25d)][_0x5275a6(0x250)](_0x5275a6(0x227)+(_0x5275a6(0x1c8)+(f||_0x5275a6(0x218))+_0x5275a6(0x236)+a0_0x3cb679()+'.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a')),'unattributed-'+process[_0x5275a6(0x22e)];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x5b7036(),F=process.env.COMMHUB_TOKEN||u['token']||'';function W(_0x10749e){const _0x28f338=a0_0xf496d6;let _0x3adbd2=new Date()[_0x28f338(0x22c)]()[_0x28f338(0x240)](0x0,0x8);process[_0x28f338(0x25d)][_0x28f338(0x250)]('['+_0x3adbd2+_0x28f338(0x234)+_0x10749e+'\x0a');}function N(_0x51dd72){return new Promise(_0x306f80=>setTimeout(_0x306f80,_0x51dd72));}W(a0_0xf496d6(0x1f6)+j+a0_0xf496d6(0x1f2)+G+a0_0xf496d6(0x208)+K['slice'](0x0,0x8)+a0_0xf496d6(0x259)+(f||a0_0xf496d6(0x1ce))+a0_0xf496d6(0x1e0)+process[a0_0xf496d6(0x20c)]()+a0_0xf496d6(0x1d1)+v);var D=new Map(),x=new a0_0x296592({'name':a0_0xf496d6(0x206),'version':a0_0xf496d6(0x262)},{'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>','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0xf496d6(0x25e),a0_0xf496d6(0x261)+G]['join']('\x0a')});x['setRequestHandler'](a0_0x30c216,async()=>({'tools':[{'name':a0_0xf496d6(0x1fc),'description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':a0_0xf496d6(0x233),'properties':{'task_id':{'type':'string','description':'The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)'},'text':{'type':a0_0xf496d6(0x253),'description':a0_0xf496d6(0x1e7)},'status':{'type':a0_0xf496d6(0x253),'enum':[a0_0xf496d6(0x1c9),a0_0xf496d6(0x1de),a0_0xf496d6(0x25c),a0_0xf496d6(0x203),a0_0xf496d6(0x21d),a0_0xf496d6(0x1f7)],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':['text']}},{'name':'commhub_report_status','description':a0_0xf496d6(0x230),'inputSchema':{'type':'object','properties':{'status':{'type':a0_0xf496d6(0x253),'enum':[a0_0xf496d6(0x21f),a0_0xf496d6(0x21c),a0_0xf496d6(0x203),a0_0xf496d6(0x21d)]},'task':{'type':'string','description':'Current\x20task\x20description'},'progress':{'type':'number','description':a0_0xf496d6(0x246)}},'required':[a0_0xf496d6(0x1f4)]}},{'name':a0_0xf496d6(0x1fb),'description':a0_0xf496d6(0x223),'inputSchema':{'type':a0_0xf496d6(0x233),'properties':{'alias':{'type':a0_0xf496d6(0x253),'description':a0_0xf496d6(0x207)},'task':{'type':'string','description':a0_0xf496d6(0x222)},'priority':{'type':'string','enum':[a0_0xf496d6(0x1ed),'normal',a0_0xf496d6(0x20f)],'description':a0_0xf496d6(0x1ef)}},'required':[a0_0xf496d6(0x24c),a0_0xf496d6(0x214)]}},{'name':a0_0xf496d6(0x22f),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':a0_0xf496d6(0x233),'properties':{'alias':{'type':a0_0xf496d6(0x253),'description':'Target\x20session\x20alias'},'message':{'type':a0_0xf496d6(0x253),'description':a0_0xf496d6(0x235)}},'required':['alias',a0_0xf496d6(0x1e3)]}},{'name':'commhub_get_all_status','description':a0_0xf496d6(0x263),'inputSchema':{'type':a0_0xf496d6(0x233),'properties':{}}}]}));async function Y(_0x3bc59a,_0x44ed27){const _0x446524=a0_0xf496d6;let _0x5897e1=await fetch(j+_0x446524(0x23b),{'method':_0x446524(0x248),'headers':{'Content-Type':'application/json','Accept':_0x446524(0x200),...F?{'Authorization':_0x446524(0x1d3)+F}:{}},'body':JSON[_0x446524(0x1d8)]({'jsonrpc':_0x446524(0x1cc),'id':0x1,'method':_0x446524(0x252),'params':{'protocolVersion':_0x446524(0x213),'capabilities':{},'clientInfo':{'name':_0x446524(0x206),'version':_0x446524(0x262)}}})});if(!_0x5897e1['ok']){let _0x599042=await _0x5897e1['text']();return W(_0x446524(0x1ca)+_0x5897e1['status']+'\x20'+_0x599042[_0x446524(0x240)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x5897e1[_0x446524(0x1f4)]};}await _0x5897e1['text']();let _0x28b06d=(await(await fetch(j+_0x446524(0x23b),{'method':_0x446524(0x248),'headers':{'Content-Type':_0x446524(0x221),'Accept':'application/json,\x20text/event-stream',...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON[_0x446524(0x1d8)]({'jsonrpc':_0x446524(0x1cc),'id':0x2,'method':'tools/call','params':{'name':_0x3bc59a,'arguments':_0x44ed27}})}))['text']())[_0x446524(0x1d4)]('\x0a')[_0x446524(0x254)](_0x35f6ce=>_0x35f6ce['startsWith'](_0x446524(0x226)));if(_0x28b06d){let _0x8da116=JSON['parse'](_0x28b06d[_0x446524(0x240)](0x6));return _0x8da116?.[_0x446524(0x1df)]?.[_0x446524(0x1da)]?.[0x0]?.['text']?JSON[_0x446524(0x1fd)](_0x8da116[_0x446524(0x1df)][_0x446524(0x1da)][0x0][_0x446524(0x20e)]):_0x8da116;}return{'ok':!0x1,'error':'no\x20response'};}x[a0_0xf496d6(0x217)](a0_0x8b1e10,async _0x205c29=>{const _0x5f12e7=a0_0xf496d6;let {name:_0x2aee76,arguments:_0x5367e0}=_0x205c29[_0x5f12e7(0x225)];if(_0x2aee76==='commhub_reply'){let {task_id:_0x454bac,text:_0x4c8aa1,status:_0x517bdd}=_0x5367e0;if(_0x517bdd===_0x5f12e7(0x1c9)||_0x517bdd===_0x5f12e7(0x1de)||_0x517bdd===_0x5f12e7(0x25c)){let _0x7ba31e=_0x517bdd===_0x5f12e7(0x1c9)?_0x5f12e7(0x1ea):_0x517bdd,_0x6c9bb2=_0x454bac?D['get'](_0x454bac)||_0x5f12e7(0x256):'hub',_0x4b0a1c=await Y(_0x5f12e7(0x23f),{'alias':_0x6c9bb2,'text':_0x4c8aa1,'in_reply_to':_0x454bac||void 0x0,'status':_0x7ba31e,'from_session':G});if(_0x454bac)D['delete'](_0x454bac);return{'content':[{'type':_0x5f12e7(0x20e),'text':JSON[_0x5f12e7(0x1d8)](_0x4b0a1c)}]};}let _0x515174=await Y(_0x5f12e7(0x212),{'resume_id':K,'alias':G,'status':_0x517bdd===_0x5f12e7(0x203)?_0x5f12e7(0x203):_0x517bdd===_0x5f12e7(0x21d)?_0x5f12e7(0x21d):_0x5f12e7(0x21f),'task':_0x4c8aa1['slice'](0x0,0xc8),'output':_0x4c8aa1});return{'content':[{'type':_0x5f12e7(0x20e),'text':JSON['stringify'](_0x515174)}]};}if(_0x2aee76===_0x5f12e7(0x216)){let {status:_0x4bb26b,task:_0x4dbb20,progress:_0x4a5603}=_0x5367e0,_0x1561ca=await Y('report_status',{'resume_id':K,'alias':G,'status':_0x4bb26b,'task':_0x4dbb20,'progress':_0x4a5603});return{'content':[{'type':_0x5f12e7(0x20e),'text':JSON[_0x5f12e7(0x1d8)](_0x1561ca)}]};}if(_0x2aee76===_0x5f12e7(0x1fb)){let {alias:_0xe8f440,task:_0x342cbb,priority:_0x5657d1}=_0x5367e0,_0xc33763=await Y(_0x5f12e7(0x201),{'alias':_0xe8f440,'task':_0x342cbb,'priority':_0x5657d1||'normal','from_session':G});return{'content':[{'type':_0x5f12e7(0x20e),'text':JSON[_0x5f12e7(0x1d8)](_0xc33763)}]};}if(_0x2aee76==='commhub_send_message'){let {alias:_0x45caff,message:_0x8a26de}=_0x5367e0,_0x5c8b6a=await Y(_0x5f12e7(0x20a),{'alias':_0x45caff,'message':_0x8a26de,'from_session':G});return{'content':[{'type':_0x5f12e7(0x20e),'text':JSON[_0x5f12e7(0x1d8)](_0x5c8b6a)}]};}if(_0x2aee76===_0x5f12e7(0x205)){let _0x260241=await Y(_0x5f12e7(0x1d0),{});return{'content':[{'type':_0x5f12e7(0x20e),'text':JSON[_0x5f12e7(0x1d8)](_0x260241)}]};}return{'content':[{'type':_0x5f12e7(0x20e),'text':JSON[_0x5f12e7(0x1d8)]({'error':'unknown\x20tool'})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x1e4981=a0_0xf496d6;try{await Y(_0x1e4981(0x212),{'resume_id':K,'alias':G,'status':_0x1e4981(0x21c),'server':a0_0x3cb679(),'hostname':a0_0x3cb679(),'agent':_0x1e4981(0x238),'project_dir':process['cwd'](),'tmux_name':f||void 0x0}),W(_0x1e4981(0x1f1)+G+_0x1e4981(0x1eb));}catch(_0x18d0e4){W(_0x1e4981(0x24b)+_0x18d0e4);}}async function o(){const _0x5c7322=a0_0xf496d6;let _0x4c5b2e=j+'/events/'+encodeURIComponent(G),_0x8d3f77={};if(F)_0x8d3f77[_0x5c7322(0x237)]=_0x5c7322(0x1d3)+F;W(_0x5c7322(0x23d)+_0x4c5b2e);let _0xe55a9f=O,_0x565914=!0x0,_0x4716c8=null;while(!0x0){try{let _0xd27605=await fetch(_0x4c5b2e,{'headers':_0x8d3f77});if(!_0xd27605['ok']){if(W(_0x5c7322(0x23c)+_0xd27605[_0x5c7322(0x1f4)]+'\x20'+_0xd27605[_0x5c7322(0x255)]),_0x4716c8=_0x4716c8??Date['now'](),Date[_0x5c7322(0x260)]()-_0x4716c8>T){W(_0x5c7322(0x1e1)+j+_0x5c7322(0x21a));return;}await N(_0xe55a9f),_0xe55a9f=Math['min'](_0xe55a9f*0x2,R);continue;}let _0x580a84=_0xd27605[_0x5c7322(0x1f0)][_0x5c7322(0x24d)](),_0x48a920=new TextDecoder(),_0x5f46b6='';_0xe55a9f=O;while(!0x0){let {done:_0x3099af,value:_0x4c4a25}=await _0x580a84[_0x5c7322(0x1db)]();if(_0x3099af)break;_0x5f46b6+=_0x48a920['decode'](_0x4c4a25,{'stream':!0x0});let _0x439e55=_0x5f46b6[_0x5c7322(0x1d4)]('\x0a\x0a');_0x5f46b6=_0x439e55['pop']()||'';for(let _0x4d6c5a of _0x439e55){let _0x4c8fd1=_0x4d6c5a['split']('\x0a')[_0x5c7322(0x254)](_0x1584bc=>_0x1584bc[_0x5c7322(0x1d9)](_0x5c7322(0x226)));if(!_0x4c8fd1)continue;try{let _0x4679a2=JSON[_0x5c7322(0x1fd)](_0x4c8fd1['slice'](0x6));if(await a(_0x4679a2),_0x4679a2[_0x5c7322(0x23a)]===_0x5c7322(0x22b)){if(_0x4716c8=null,!_0x565914)await l();_0x565914=!0x1;}}catch(_0x4d16ac){W(_0x5c7322(0x209)+_0x4d16ac);}}}W(_0x5c7322(0x24e));}catch(_0x3f4851){W('SSE\x20connection\x20error:\x20'+_0x3f4851);}if(_0x4716c8=_0x4716c8??Date['now'](),Date[_0x5c7322(0x260)]()-_0x4716c8>T){W(_0x5c7322(0x1e1)+j+_0x5c7322(0x21a));return;}await N(_0xe55a9f),_0xe55a9f=Math[_0x5c7322(0x1cf)](_0xe55a9f*0x2,R);}}async function a(_0x20d65c){const _0xf636f3=a0_0xf496d6;if(_0x20d65c[_0xf636f3(0x23a)]===_0xf636f3(0x22b)){W(_0xf636f3(0x23e)+G+'\x22');return;}if(_0x20d65c[_0xf636f3(0x23a)]===_0xf636f3(0x224)){if(W(_0xf636f3(0x249)+_0x20d65c[_0xf636f3(0x1dc)]+':\x20'+_0x20d65c[_0xf636f3(0x1e3)][_0xf636f3(0x240)](0x0,0x3c)),await x['notification']({'method':_0xf636f3(0x24f),'params':{'content':_0x20d65c[_0xf636f3(0x1e3)],'meta':{'sender':_0x20d65c[_0xf636f3(0x1dc)]||'hub','sender_id':_0xf636f3(0x1d5),'user':_0x20d65c[_0xf636f3(0x1dc)]||_0xf636f3(0x256),'priority':_0xf636f3(0x24a)}}}),_0x20d65c[_0xf636f3(0x20b)])await Y(_0xf636f3(0x25a),{'alias':G,'message_id':_0x20d65c['message_id']});return;}if(_0x20d65c[_0xf636f3(0x23a)]===_0xf636f3(0x1fe)||_0x20d65c[_0xf636f3(0x23a)]===_0xf636f3(0x241)){W('←\x20'+_0x20d65c[_0xf636f3(0x23a)]+_0xf636f3(0x228)+_0x20d65c[_0xf636f3(0x1e2)]+'\x20priority='+(_0x20d65c[_0xf636f3(0x22a)]||_0xf636f3(0x24a)));let _0x206c7a=await Y(_0xf636f3(0x1cb),{'alias':G,'limit':0x5});if(_0x206c7a?.['ok']&&_0x206c7a[_0xf636f3(0x1ff)]?.[_0xf636f3(0x21b)]>0x0)for(let _0x50564d of _0x206c7a[_0xf636f3(0x1ff)]){let _0x5bd38={'sender':_0x50564d[_0xf636f3(0x1f8)]||_0xf636f3(0x256),'sender_id':_0xf636f3(0x1d5),'user':_0x50564d[_0xf636f3(0x1f8)]||_0xf636f3(0x256),'task_id':_0x50564d['id'],'priority':_0x50564d['priority']||_0xf636f3(0x24a)};D[_0xf636f3(0x21e)](_0x50564d['id'],_0x50564d[_0xf636f3(0x1f8)]||_0xf636f3(0x256)),await x[_0xf636f3(0x1d2)]({'method':_0xf636f3(0x24f),'params':{'content':_0x50564d[_0xf636f3(0x1da)],'meta':_0x5bd38}}),W(_0xf636f3(0x245)+_0x50564d['id'][_0xf636f3(0x240)](0x0,0x8)+_0xf636f3(0x232)+_0x50564d[_0xf636f3(0x1f8)]+':\x20'+_0x50564d[_0xf636f3(0x1da)][_0xf636f3(0x240)](0x0,0x3c)),await Y(_0xf636f3(0x25a),{'alias':G,'message_id':_0x50564d['id']});}}}async function n(){const _0xd94e31=a0_0xf496d6;let _0x20f560=new a0_0x10d841();await x[_0xd94e31(0x1e9)](_0x20f560),W(_0xd94e31(0x219)),W(_0xd94e31(0x257)),o()[_0xd94e31(0x231)](_0x443775=>W(_0xd94e31(0x22d)+_0x443775)),Y(_0xd94e31(0x212),{'resume_id':K,'alias':G,'status':_0xd94e31(0x21c),'server':a0_0x3cb679(),'hostname':a0_0x3cb679(),'agent':_0xd94e31(0x238),'project_dir':process[_0xd94e31(0x20c)](),'tmux_name':f||void 0x0})['then'](()=>W(_0xd94e31(0x242)+G+_0xd94e31(0x210)+K[_0xd94e31(0x240)](0x0,0x8)+')'))[_0xd94e31(0x231)](_0x117cad=>W(_0xd94e31(0x1f9)+_0x117cad)),setInterval(()=>{const _0x5707bc=_0xd94e31;Y(_0x5707bc(0x212),{'resume_id':K,'alias':G,'status':_0x5707bc(0x21c),'server':a0_0x3cb679(),'hostname':a0_0x3cb679(),'agent':_0x5707bc(0x238),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x5707bc(0x231)](_0xc04a65=>W(_0x5707bc(0x25f)+_0xc04a65));},0x2bf20),W('ready\x20—\x20waiting\x20for\x20events');}n()['catch'](_0x5353b0=>{const _0x21a86f=a0_0xf496d6;W(_0x21a86f(0x20d)+_0x5353b0),process[_0x21a86f(0x1dd)](0x1);});async function b(){const _0x14f201=a0_0xf496d6;W(_0x14f201(0x1e5)),await Y(_0x14f201(0x212),{'resume_id':K,'alias':G,'status':_0x14f201(0x244),'task':_0x14f201(0x211)})[_0x14f201(0x231)](()=>{}),process[_0x14f201(0x1dd)](0x0);}process[a0_0xf496d6(0x1e8)]['on'](a0_0xf496d6(0x239),()=>b()),process['on'](a0_0xf496d6(0x1c7),()=>b()),process['on'](a0_0xf496d6(0x1f5),()=>b());
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.2.
|
|
4
|
-
"description": "AI Agent Network CLI
|
|
3
|
+
"version": "2.2.13-preview.0",
|
|
4
|
+
"description": "AI Agent Network CLI — Local-first multi-agent orchestration across 4 runtimes (Claude Code CLI / Claude Agent SDK / Codex SDK / Grok Build ACP) and 8+ LLM providers (Anthropic / OpenAI / xAI Grok / MiniMax / DeepSeek / GLM / Kimi / InternLM / Xiaomi MiMo / OpenRouter). Apache 2.0.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/client.js",
|
|
7
7
|
"types": "dist/client.d.ts",
|
|
@@ -71,5 +71,9 @@
|
|
|
71
71
|
"javascript-obfuscator": "^5.4.1",
|
|
72
72
|
"node-pty": "^1.1.0",
|
|
73
73
|
"typescript": "^5.0.0"
|
|
74
|
+
},
|
|
75
|
+
"overrides": {
|
|
76
|
+
"hono": "^4.12.21",
|
|
77
|
+
"qs": "^6.15.2"
|
|
74
78
|
}
|
|
75
79
|
}
|