@sleep2agi/agent-network 2.2.11-preview.1 → 2.2.11-preview.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/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_0x4b40ae=a0_0x2400;(function(_0x25bc6e,_0x3272df){const _0x1a9518=a0_0x2400,_0x484556=_0x25bc6e();while(!![]){try{const _0x573b80=parseInt(_0x1a9518(0x132))/0x1+-parseInt(_0x1a9518(0x114))/0x2*(-parseInt(_0x1a9518(0x138))/0x3)+-parseInt(_0x1a9518(0x14d))/0x4*(-parseInt(_0x1a9518(0x159))/0x5)+-parseInt(_0x1a9518(0x121))/0x6*(-parseInt(_0x1a9518(0x162))/0x7)+-parseInt(_0x1a9518(0x10b))/0x8+-parseInt(_0x1a9518(0x122))/0x9+parseInt(_0x1a9518(0x137))/0xa*(-parseInt(_0x1a9518(0x128))/0xb);if(_0x573b80===_0x3272df)break;else _0x484556['push'](_0x484556['shift']());}catch(_0x4274c0){_0x484556['push'](_0x484556['shift']());}}}(a0_0x3f3c,0x23eab));function a0_0x3f3c(){const _0x5f3d93=['processInbox','getAllStatus','result','idle','completed','min','connectSSE','startsWith','12meshqU','1982412ylKAcf','send','cwd','sleep','sseAbort','running','81565LGIRoJ','offline','name','get_all_status',']\x20[commhub:','slice','getReader','from_session','task','read','91118LJlWXn','log','agent','report_status','content','190ptOlgC','60ZWgzGs','decode','match','stringify','autoConnect','catch','abort','POST','connect','heartbeatTimer','SSE\x20reconnecting\x20in\x20','send_message','tools/call','alias','/mcp','emit','split','signal','status','sdk-','pop','4NqLWrw','body','token','parse','normal','send_task','resumeId','heartbeat\x20failed:\x20','connected','/events/','disconnected','2.0','146695ihxPXP','message','Bearer\x20','send_reply','sdk','SSE\x20connected','now','application/json','ack_inbox','509439zpQTEi','new_message','application/json,\x20text/event-stream','380664TimvYU','heartbeatInterval','url','toTimeString','new_task','SSE\x20failed:\x20','broadcast','s...','type','28984ltpXag','data:\x20','reconnectDelay','text','call'];a0_0x3f3c=function(){return _0x5f3d93;};return a0_0x3f3c();}import{EventEmitter as a0_0x40fcef}from'events';import{hostname as a0_0x373702}from'os';class T extends a0_0x40fcef{[a0_0x4b40ae(0x10d)];[a0_0x4b40ae(0x145)];[a0_0x4b40ae(0x14f)];[a0_0x4b40ae(0x134)];[a0_0x4b40ae(0x153)];[a0_0x4b40ae(0x10c)];['reconnectDelay'];[a0_0x4b40ae(0x141)];[a0_0x4b40ae(0x126)];[a0_0x4b40ae(0x127)]=!0x1;constructor(_0x539780){const _0xfd0a69=a0_0x4b40ae;super();if(this[_0xfd0a69(0x10d)]=_0x539780[_0xfd0a69(0x10d)]['replace'](/\/$/,''),this[_0xfd0a69(0x145)]=_0x539780['alias'],this[_0xfd0a69(0x14f)]=_0x539780[_0xfd0a69(0x14f)],this[_0xfd0a69(0x134)]=_0x539780[_0xfd0a69(0x134)]||_0xfd0a69(0x15d),this['resumeId']=_0xfd0a69(0x14b)+_0x539780[_0xfd0a69(0x145)]+'-'+Date[_0xfd0a69(0x15f)]()['toString'](0x24),this[_0xfd0a69(0x10c)]=_0x539780[_0xfd0a69(0x10c)]??0x2bf20,this[_0xfd0a69(0x116)]=_0x539780[_0xfd0a69(0x116)]??0xbb8,_0x539780[_0xfd0a69(0x13c)]!==!0x1)this[_0xfd0a69(0x140)]();}[a0_0x4b40ae(0x133)](_0x19d659){const _0x18ae64=a0_0x4b40ae;console[_0x18ae64(0x133)]('['+new Date()[_0x18ae64(0x10e)]()[_0x18ae64(0x12d)](0x0,0x8)+_0x18ae64(0x12c)+this[_0x18ae64(0x145)]+']\x20'+_0x19d659);}async[a0_0x4b40ae(0x118)](_0x3f1292,_0x235611){const _0x5151cd=a0_0x4b40ae;let _0x5cb548={'Content-Type':_0x5151cd(0x160),'Accept':_0x5151cd(0x10a)};if(this[_0x5151cd(0x14f)])_0x5cb548['Authorization']='Bearer\x20'+this[_0x5151cd(0x14f)];let _0x5717c7=await(await fetch(this[_0x5151cd(0x10d)]+_0x5151cd(0x146),{'method':_0x5151cd(0x13f),'headers':_0x5cb548,'body':JSON[_0x5151cd(0x13b)]({'jsonrpc':_0x5151cd(0x158),'id':Date[_0x5151cd(0x15f)](),'method':_0x5151cd(0x144),'params':{'name':_0x3f1292,'arguments':_0x235611}})}))[_0x5151cd(0x117)](),_0x3b7118=_0x5717c7[_0x5151cd(0x13a)](/data: (.+)/),_0x14276a=_0x3b7118?JSON[_0x5151cd(0x150)](_0x3b7118[0x1]):JSON[_0x5151cd(0x150)](_0x5717c7),_0x1a6241=_0x14276a?.[_0x5151cd(0x11b)]?.[_0x5151cd(0x136)]?.[0x0]?.['text'];return _0x1a6241?JSON[_0x5151cd(0x150)](_0x1a6241):_0x14276a;}async[a0_0x4b40ae(0x140)](){const _0x384199=a0_0x4b40ae;if(this[_0x384199(0x127)])return;this['running']=!0x0,await this[_0x384199(0x14a)]('idle'),this['log']('registered'),this[_0x384199(0x141)]=setInterval(()=>{const _0x157d74=_0x384199;this['status'](_0x157d74(0x11c))[_0x157d74(0x13d)](_0x1e41dd=>this[_0x157d74(0x133)](_0x157d74(0x154)+_0x1e41dd[_0x157d74(0x15a)]));},this['heartbeatInterval']),this['connectSSE']();}async['disconnect'](){const _0x58bcaf=a0_0x4b40ae;if(this[_0x58bcaf(0x127)]=!0x1,this[_0x58bcaf(0x126)]?.[_0x58bcaf(0x13e)](),this[_0x58bcaf(0x141)])clearInterval(this['heartbeatTimer']);await this['status'](_0x58bcaf(0x129))['catch'](()=>{}),this[_0x58bcaf(0x133)](_0x58bcaf(0x157));}async[a0_0x4b40ae(0x123)](_0x53ff91,_0x4e1b7b,_0x3b2914=a0_0x4b40ae(0x151)){const _0x58f444=a0_0x4b40ae;return this[_0x58f444(0x118)](_0x58f444(0x152),{'alias':_0x53ff91,'task':_0x4e1b7b,'priority':_0x3b2914,'from_session':this['alias']});}async[a0_0x4b40ae(0x15a)](_0x463cb9,_0x49e3c8){const _0x3d31db=a0_0x4b40ae;return this[_0x3d31db(0x118)](_0x3d31db(0x143),{'alias':_0x463cb9,'message':_0x49e3c8,'from_session':this[_0x3d31db(0x145)]});}async['reply'](_0x4896f8,_0x2bbb7d,_0x50b66e=a0_0x4b40ae(0x11d)){const _0x31bc0a=a0_0x4b40ae;return this['call'](_0x31bc0a(0x15c),{'in_reply_to':_0x4896f8,'text':_0x2bbb7d,'status':_0x50b66e});}async[a0_0x4b40ae(0x14a)](_0x5d4b43,_0x4093f4){const _0x27fa61=a0_0x4b40ae;return this['call'](_0x27fa61(0x135),{'resume_id':this[_0x27fa61(0x153)],'alias':this[_0x27fa61(0x145)],'status':_0x5d4b43,'server':a0_0x373702(),'hostname':a0_0x373702(),'agent':this['agent'],'project_dir':process[_0x27fa61(0x124)](),..._0x4093f4});}async[a0_0x4b40ae(0x11a)](){const _0xfac64=a0_0x4b40ae;return this[_0xfac64(0x118)](_0xfac64(0x12b),{});}async[a0_0x4b40ae(0x111)](_0x50f7da,_0x234f85){const _0x310f29=a0_0x4b40ae;return this['call'](_0x310f29(0x111),{'message':_0x50f7da,'filter_server':_0x234f85?.['server'],'filter_status':_0x234f85?.[_0x310f29(0x14a)]});}async[a0_0x4b40ae(0x11f)](){const _0x517a18=a0_0x4b40ae;let _0x2beb99=encodeURIComponent(this['alias']),_0x55ef5d=this[_0x517a18(0x10d)]+_0x517a18(0x156)+_0x2beb99,_0x309a41=this['reconnectDelay'];while(this['running']){try{this['sseAbort']=new AbortController();let _0x271aea={'Accept':'text/event-stream'};if(this[_0x517a18(0x14f)])_0x271aea['Authorization']=_0x517a18(0x15b)+this['token'];let _0xb644e5=await fetch(_0x55ef5d,{'headers':_0x271aea,'signal':this[_0x517a18(0x126)][_0x517a18(0x149)]});if(!_0xb644e5['ok']||!_0xb644e5[_0x517a18(0x14e)]){this['log'](_0x517a18(0x110)+_0xb644e5[_0x517a18(0x14a)]),await this[_0x517a18(0x125)](_0x309a41),_0x309a41=Math[_0x517a18(0x11e)](_0x309a41*1.5,0xea60);continue;}_0x309a41=this[_0x517a18(0x116)];let _0x2fad2b=_0xb644e5[_0x517a18(0x14e)][_0x517a18(0x12e)](),_0x5b83ea=new TextDecoder(),_0x1ba51f='';while(this[_0x517a18(0x127)]){let {done:_0x3d3e9b,value:_0xa4b7a3}=await _0x2fad2b[_0x517a18(0x131)]();if(_0x3d3e9b)break;_0x1ba51f+=_0x5b83ea[_0x517a18(0x139)](_0xa4b7a3,{'stream':!0x0});let _0x163091=_0x1ba51f[_0x517a18(0x148)]('\x0a');_0x1ba51f=_0x163091[_0x517a18(0x14c)]()||'';for(let _0x37a874 of _0x163091){if(!_0x37a874[_0x517a18(0x120)](_0x517a18(0x115)))continue;try{let _0x1ca649=JSON[_0x517a18(0x150)](_0x37a874[_0x517a18(0x12d)](0x6));if(_0x1ca649[_0x517a18(0x113)]===_0x517a18(0x155)){this[_0x517a18(0x133)](_0x517a18(0x15e)),this[_0x517a18(0x147)]('connected');continue;}if(_0x1ca649[_0x517a18(0x113)]===_0x517a18(0x10f)||_0x1ca649['type']===_0x517a18(0x109)||_0x1ca649[_0x517a18(0x113)]===_0x517a18(0x111))await this['processInbox']();}catch{}}}}catch(_0x4c8282){if(_0x4c8282[_0x517a18(0x12a)]==='AbortError')break;this['emit']('error',_0x4c8282),this[_0x517a18(0x133)]('SSE\x20error:\x20'+_0x4c8282[_0x517a18(0x15a)]);}if(this[_0x517a18(0x127)])this[_0x517a18(0x147)](_0x517a18(0x157)),this[_0x517a18(0x133)](_0x517a18(0x142)+_0x309a41/0x3e8+_0x517a18(0x112)),await this[_0x517a18(0x125)](_0x309a41),_0x309a41=Math[_0x517a18(0x11e)](_0x309a41*1.5,0xea60);}}async[a0_0x4b40ae(0x119)](){const _0x86bc36=a0_0x4b40ae;try{let _0x2ae9dd=(await this[_0x86bc36(0x118)]('get_inbox',{'alias':this[_0x86bc36(0x145)],'limit':0xa}))?.['messages']||[];for(let _0x2f3026 of _0x2ae9dd)await this[_0x86bc36(0x118)](_0x86bc36(0x161),{'alias':this[_0x86bc36(0x145)],'message_id':_0x2f3026['id']}),this[_0x86bc36(0x133)]('←\x20'+_0x2f3026[_0x86bc36(0x12f)]+':\x20'+_0x2f3026[_0x86bc36(0x136)][_0x86bc36(0x12d)](0x0,0x3c)),this[_0x86bc36(0x147)](_0x86bc36(0x130),_0x2f3026),this[_0x86bc36(0x147)](_0x86bc36(0x15a),_0x2f3026);}catch(_0x81e0f1){this[_0x86bc36(0x133)]('inbox\x20error:\x20'+_0x81e0f1[_0x86bc36(0x15a)]);}}[a0_0x4b40ae(0x125)](_0x3b58f4){return new Promise(_0x22bdc2=>setTimeout(_0x22bdc2,_0x3b58f4));}}function a0_0x2400(_0x226d9e,_0x3b40cb){_0x226d9e=_0x226d9e-0x109;const _0x3f3c33=a0_0x3f3c();let _0x2400be=_0x3f3c33[_0x226d9e];return _0x2400be;}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_0x51b7d5=a0_0xe9d4;(function(_0x5e9233,_0x401e45){const _0x2bf9e8=a0_0xe9d4,_0x3567ff=_0x5e9233();while(!![]){try{const _0x4edc1e=-parseInt(_0x2bf9e8(0x17e))/0x1+parseInt(_0x2bf9e8(0x12f))/0x2+-parseInt(_0x2bf9e8(0x12e))/0x3+parseInt(_0x2bf9e8(0x13d))/0x4+parseInt(_0x2bf9e8(0xfa))/0x5*(-parseInt(_0x2bf9e8(0xfc))/0x6)+-parseInt(_0x2bf9e8(0x168))/0x7*(-parseInt(_0x2bf9e8(0xf7))/0x8)+parseInt(_0x2bf9e8(0xf9))/0x9;if(_0x4edc1e===_0x401e45)break;else _0x3567ff['push'](_0x3567ff['shift']());}catch(_0x7ed2fb){_0x3567ff['push'](_0x3567ff['shift']());}}}(a0_0x492a,0x2d0f0));import{readFileSync as a0_0x29987e,existsSync as a0_0x2f41ce}from'fs';import{randomUUID as a0_0x2b7a5b}from'crypto';import{join as a0_0x304168}from'path';import{hostname as a0_0x4064e4}from'os';function a0_0x492a(){const _0x28c09e=['from','unattributed-','status',':\x20inbox_count=','pop','764544kdLAHK','88446JDhbuB','new_task','from_session','messages','SIGINT','toTimeString','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','registered\x20as\x20\x22','statusText','task','completed','fatal:\x20','ENV:\x20URL=','content','1315852nrRaJB','Reply\x20text\x20/\x20result\x20summary','...\x20TMUX=','commhub_send_task','send_message','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','read','write','SIGTERM','\x20from\x20','cancelled','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','Progress\x200-100','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','Current\x20task\x20description','send_task','SSE\x20error:\x20','tools/call','priority','token','no\x20response','config.json','setRequestHandler','length','trim','←\x20message\x20from\x20','stderr','exit','\x20PROJECT_ENV=','indexOf','now','broadcast','re-register\x20failed:\x20','startsWith','tmux\x20display-message\x20-p\x20\x27#S\x27',']\x20[commhub]\x20','failed','ready\x20—\x20waiting\x20for\x20events','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','replied','init\x20failed:\x20','2025-03-26','Priority\x20(default:\x20normal)','28NoNwhI','idle','connecting\x20to\x20','normal','split','high','object','find','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','\x20CWD=','inbox_count','string','then','Bearer\x20','SSE\x20connection\x20error:\x20','/mcp',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','\x22\x20after\x20SSE\x20reconnect','SSE\x20connected\x20as\x20\x22','notification','commhub','min','134347goUkCs','commhub_get_all_status','0.3.0','result','notifications/claude/channel','hub','starting\x20SSE\x20listener...','getReader','CommHub\x20init\x20failed:\x20','/events/','error','catch','commhub_reply','end','warning:\x20could\x20not\x20register:\x20','\x20ALIAS=','working','376456jqmCGu','set','1591992KOXjJI','5835VrCJUG','stringify','846fyXoXY','heartbeat\x20failed:\x20','parse','slice','commhub_send_message','join','cwd','utf-8','connected','data:\x20','\x20/\x20hostname=','Target\x20session\x20alias','message_id','type','http://127.0.0.1:9200','parse\x20error:\x20','get','send_reply','commhub_report_status','alias','params','claude-code','report_status','message','\x20priority=','→\x20injected\x20task\x20','SSE\x20fatal:\x20','stdin','.anet','replace','text','blocked','re-registered\x20as\x20\x22','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','ack_inbox','SSE\x20stream\x20ended,\x20reconnecting...','POST','.claude/channels/commhub','none','\x22\x20(','.env','low','application/json,\x20text/event-stream','application/json','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'];a0_0x492a=function(){return _0x28c09e;};return a0_0x492a();}import{execSync as a0_0x6ac147}from'child_process';import{Server as a0_0x4b6bf9}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x64ed05}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x352fdb,CallToolRequestSchema as a0_0x11867b}from'@modelcontextprotocol/sdk/types.js';function a0_0xe9d4(_0x2c9aab,_0x291c95){_0x2c9aab=_0x2c9aab-0xf6;const _0x492a35=a0_0x492a();let _0xe9d491=_0x492a35[_0x2c9aab];return _0xe9d491;}function I(_0x2537e2){const _0x1d0bd6=a0_0xe9d4;if(!a0_0x2f41ce(_0x2537e2))return;for(let _0x36ee5c of a0_0x29987e(_0x2537e2,_0x1d0bd6(0x103))[_0x1d0bd6(0x16c)]('\x0a')){let _0x2fedde=_0x36ee5c['trim']();if(!_0x2fedde||_0x2fedde[_0x1d0bd6(0x15e)]('#'))continue;let _0x2802cf=_0x2fedde[_0x1d0bd6(0x15a)]('=');if(_0x2802cf<0x0)continue;let _0x3bad71=_0x2fedde['slice'](0x0,_0x2802cf)[_0x1d0bd6(0x155)](),_0x5ba5f6=_0x2fedde['slice'](_0x2802cf+0x1)[_0x1d0bd6(0x155)]()[_0x1d0bd6(0x119)](/^["']|["']$/g,'');if(!process.env[_0x3bad71])process.env[_0x3bad71]=_0x5ba5f6;}}var L=process.env.HOME||'~',U=a0_0x304168(L,a0_0x51b7d5(0x121));I(a0_0x304168(U,'.env'));var v=process[a0_0x51b7d5(0x102)]()['replace'](/\//g,'-');I(a0_0x304168(U,v,a0_0x51b7d5(0x124)));function d(){const _0x16f855=a0_0x51b7d5;try{return a0_0x6ac147(_0x16f855(0x15f),{'encoding':_0x16f855(0x103),'timeout':0x7d0})[_0x16f855(0x155)]();}catch{return'';}}function m(){const _0x40e4c1=a0_0x51b7d5;try{let _0x4b5ff8=a0_0x304168(L,_0x40e4c1(0x118),_0x40e4c1(0x152));if(a0_0x2f41ce(_0x4b5ff8))return JSON[_0x40e4c1(0xfe)](a0_0x29987e(_0x4b5ff8,_0x40e4c1(0x103)));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u['hub']||a0_0x51b7d5(0x10a),f=process.env.COMMHUB_TMUX||d();function r(){const _0xad36e8=a0_0x51b7d5;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0xad36e8(0x155)]())return process.env.COMMHUB_ALIAS['trim']();return process[_0xad36e8(0x157)][_0xad36e8(0x144)](_0xad36e8(0x142)+('would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME='+(f||'(none)')+_0xad36e8(0x106)+a0_0x4064e4()+'.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a')),_0xad36e8(0x12a)+process['pid'];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x2b7a5b(),F=process.env.COMMHUB_TOKEN||u[a0_0x51b7d5(0x150)]||'';function W(_0x281421){const _0x45789d=a0_0x51b7d5;let _0x3ab527=new Date()[_0x45789d(0x134)]()[_0x45789d(0xff)](0x0,0x8);process[_0x45789d(0x157)]['write']('['+_0x3ab527+_0x45789d(0x160)+_0x281421+'\x0a');}function N(_0x471c23){return new Promise(_0x2e7a31=>setTimeout(_0x2e7a31,_0x471c23));}W(a0_0x51b7d5(0x13b)+j+a0_0x51b7d5(0x18d)+G+'\x20RESUME_ID='+K['slice'](0x0,0x8)+a0_0x51b7d5(0x13f)+(f||a0_0x51b7d5(0x122))+a0_0x51b7d5(0x171)+process[a0_0x51b7d5(0x102)]()+a0_0x51b7d5(0x159)+v);var D=new Map(),x=new a0_0x4b6bf9({'name':'commhub-channel','version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x51b7d5(0x14a),a0_0x51b7d5(0x135),'Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x51b7d5(0x11d),'Session\x20alias:\x20'+G][a0_0x51b7d5(0x101)]('\x0a')});x[a0_0x51b7d5(0x153)](a0_0x352fdb,async()=>({'tools':[{'name':'commhub_reply','description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':a0_0x51b7d5(0x16e),'properties':{'task_id':{'type':a0_0x51b7d5(0x173),'description':a0_0x51b7d5(0x170)},'text':{'type':a0_0x51b7d5(0x173),'description':a0_0x51b7d5(0x13e)},'status':{'type':a0_0x51b7d5(0x173),'enum':[a0_0x51b7d5(0x139),'failed','cancelled','blocked',a0_0x51b7d5(0x188),'in_progress'],'description':a0_0x51b7d5(0x128)}},'required':[a0_0x51b7d5(0x11a)]}},{'name':a0_0x51b7d5(0x10e),'description':a0_0x51b7d5(0x148),'inputSchema':{'type':a0_0x51b7d5(0x16e),'properties':{'status':{'type':a0_0x51b7d5(0x173),'enum':[a0_0x51b7d5(0xf6),a0_0x51b7d5(0x169),a0_0x51b7d5(0x11b),a0_0x51b7d5(0x188)]},'task':{'type':a0_0x51b7d5(0x173),'description':a0_0x51b7d5(0x14b)},'progress':{'type':'number','description':a0_0x51b7d5(0x149)}},'required':[a0_0x51b7d5(0x12b)]}},{'name':'commhub_send_task','description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x51b7d5(0x16e),'properties':{'alias':{'type':'string','description':'Target\x20session\x20alias'},'task':{'type':a0_0x51b7d5(0x173),'description':'Task\x20content'},'priority':{'type':a0_0x51b7d5(0x173),'enum':[a0_0x51b7d5(0x16d),'normal',a0_0x51b7d5(0x125)],'description':a0_0x51b7d5(0x167)}},'required':[a0_0x51b7d5(0x10f),a0_0x51b7d5(0x138)]}},{'name':a0_0x51b7d5(0x100),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':a0_0x51b7d5(0x16e),'properties':{'alias':{'type':'string','description':a0_0x51b7d5(0x107)},'message':{'type':a0_0x51b7d5(0x173),'description':'Message\x20content'}},'required':[a0_0x51b7d5(0x10f),a0_0x51b7d5(0x113)]}},{'name':a0_0x51b7d5(0x17f),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':a0_0x51b7d5(0x16e),'properties':{}}}]}));async function Y(_0x3e7a21,_0x130ab5){const _0x17e92e=a0_0x51b7d5;let _0x4136e8=await fetch(j+_0x17e92e(0x177),{'method':'POST','headers':{'Content-Type':_0x17e92e(0x127),'Accept':_0x17e92e(0x126),...F?{'Authorization':_0x17e92e(0x175)+F}:{}},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x1,'method':'initialize','params':{'protocolVersion':_0x17e92e(0x166),'capabilities':{},'clientInfo':{'name':'commhub-channel','version':_0x17e92e(0x180)}}})});if(!_0x4136e8['ok']){let _0x138734=await _0x4136e8['text']();return W(_0x17e92e(0x186)+_0x4136e8[_0x17e92e(0x12b)]+'\x20'+_0x138734['slice'](0x0,0x64)),{'ok':!0x1,'error':_0x17e92e(0x165)+_0x4136e8['status']};}await _0x4136e8[_0x17e92e(0x11a)]();let _0x1eae73=(await(await fetch(j+_0x17e92e(0x177),{'method':_0x17e92e(0x120),'headers':{'Content-Type':_0x17e92e(0x127),'Accept':_0x17e92e(0x126),...F?{'Authorization':_0x17e92e(0x175)+F}:{}},'body':JSON[_0x17e92e(0xfb)]({'jsonrpc':'2.0','id':0x2,'method':_0x17e92e(0x14e),'params':{'name':_0x3e7a21,'arguments':_0x130ab5}})}))[_0x17e92e(0x11a)]())[_0x17e92e(0x16c)]('\x0a')[_0x17e92e(0x16f)](_0x42804c=>_0x42804c['startsWith']('data:\x20'));if(_0x1eae73){let _0xa79e9=JSON[_0x17e92e(0xfe)](_0x1eae73[_0x17e92e(0xff)](0x6));return _0xa79e9?.[_0x17e92e(0x181)]?.['content']?.[0x0]?.[_0x17e92e(0x11a)]?JSON['parse'](_0xa79e9[_0x17e92e(0x181)][_0x17e92e(0x13c)][0x0][_0x17e92e(0x11a)]):_0xa79e9;}return{'ok':!0x1,'error':_0x17e92e(0x151)};}x['setRequestHandler'](a0_0x11867b,async _0x48b5ff=>{const _0x29130e=a0_0x51b7d5;let {name:_0x581ce2,arguments:_0x3183ed}=_0x48b5ff[_0x29130e(0x110)];if(_0x581ce2===_0x29130e(0x18a)){let {task_id:_0x2bd9bc,text:_0xe71a4b,status:_0x5cbcc3}=_0x3183ed;if(_0x5cbcc3===_0x29130e(0x139)||_0x5cbcc3===_0x29130e(0x161)||_0x5cbcc3===_0x29130e(0x147)){let _0x46a28d=_0x5cbcc3===_0x29130e(0x139)?_0x29130e(0x164):_0x5cbcc3,_0x4aa5b7=_0x2bd9bc?D[_0x29130e(0x10c)](_0x2bd9bc)||_0x29130e(0x183):'hub',_0x708aca=await Y(_0x29130e(0x10d),{'alias':_0x4aa5b7,'text':_0xe71a4b,'in_reply_to':_0x2bd9bc||void 0x0,'status':_0x46a28d,'from_session':G});if(_0x2bd9bc)D['delete'](_0x2bd9bc);return{'content':[{'type':_0x29130e(0x11a),'text':JSON['stringify'](_0x708aca)}]};}let _0x22d0eb=await Y('report_status',{'resume_id':K,'alias':G,'status':_0x5cbcc3===_0x29130e(0x11b)?_0x29130e(0x11b):_0x5cbcc3==='error'?'error':_0x29130e(0xf6),'task':_0xe71a4b[_0x29130e(0xff)](0x0,0xc8),'output':_0xe71a4b});return{'content':[{'type':'text','text':JSON[_0x29130e(0xfb)](_0x22d0eb)}]};}if(_0x581ce2===_0x29130e(0x10e)){let {status:_0x26b45e,task:_0x167288,progress:_0x39dc87}=_0x3183ed,_0x16a821=await Y(_0x29130e(0x112),{'resume_id':K,'alias':G,'status':_0x26b45e,'task':_0x167288,'progress':_0x39dc87});return{'content':[{'type':_0x29130e(0x11a),'text':JSON[_0x29130e(0xfb)](_0x16a821)}]};}if(_0x581ce2===_0x29130e(0x140)){let {alias:_0x48cf19,task:_0x1beb58,priority:_0x3823e5}=_0x3183ed,_0x45fef7=await Y(_0x29130e(0x14c),{'alias':_0x48cf19,'task':_0x1beb58,'priority':_0x3823e5||_0x29130e(0x16b),'from_session':G});return{'content':[{'type':_0x29130e(0x11a),'text':JSON['stringify'](_0x45fef7)}]};}if(_0x581ce2===_0x29130e(0x100)){let {alias:_0x1f933d,message:_0x2fe1a5}=_0x3183ed,_0x12ec69=await Y(_0x29130e(0x141),{'alias':_0x1f933d,'message':_0x2fe1a5,'from_session':G});return{'content':[{'type':_0x29130e(0x11a),'text':JSON[_0x29130e(0xfb)](_0x12ec69)}]};}if(_0x581ce2===_0x29130e(0x17f)){let _0x43f0ac=await Y('get_all_status',{});return{'content':[{'type':_0x29130e(0x11a),'text':JSON[_0x29130e(0xfb)](_0x43f0ac)}]};}return{'content':[{'type':_0x29130e(0x11a),'text':JSON['stringify']({'error':'unknown\x20tool'})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x776912=a0_0x51b7d5;try{await Y(_0x776912(0x112),{'resume_id':K,'alias':G,'status':'idle','server':a0_0x4064e4(),'hostname':a0_0x4064e4(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':f||void 0x0}),W(_0x776912(0x11c)+G+_0x776912(0x179));}catch(_0x1f3dc0){W(_0x776912(0x15d)+_0x1f3dc0);}}async function o(){const _0x5c9cc4=a0_0x51b7d5;let _0x3b971f=j+_0x5c9cc4(0x187)+encodeURIComponent(G),_0x1bfe37={};if(F)_0x1bfe37['Authorization']=_0x5c9cc4(0x175)+F;W(_0x5c9cc4(0x16a)+_0x3b971f);let _0x4512dc=O,_0x43cec7=!0x0,_0x1f4097=null;while(!0x0){try{let _0x577f1a=await fetch(_0x3b971f,{'headers':_0x1bfe37});if(!_0x577f1a['ok']){if(W(_0x5c9cc4(0x14d)+_0x577f1a['status']+'\x20'+_0x577f1a[_0x5c9cc4(0x137)]),_0x1f4097=_0x1f4097??Date[_0x5c9cc4(0x15b)](),Date[_0x5c9cc4(0x15b)]()-_0x1f4097>T){W(_0x5c9cc4(0x163)+j+')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。');return;}await N(_0x4512dc),_0x4512dc=Math[_0x5c9cc4(0x17d)](_0x4512dc*0x2,R);continue;}let _0x107579=_0x577f1a['body'][_0x5c9cc4(0x185)](),_0x55d9f0=new TextDecoder(),_0x2ad13c='';_0x4512dc=O;while(!0x0){let {done:_0x4115ea,value:_0x3e6a32}=await _0x107579[_0x5c9cc4(0x143)]();if(_0x4115ea)break;_0x2ad13c+=_0x55d9f0['decode'](_0x3e6a32,{'stream':!0x0});let _0x3d913d=_0x2ad13c[_0x5c9cc4(0x16c)]('\x0a\x0a');_0x2ad13c=_0x3d913d[_0x5c9cc4(0x12d)]()||'';for(let _0x411ea5 of _0x3d913d){let _0x3f4ab6=_0x411ea5[_0x5c9cc4(0x16c)]('\x0a')['find'](_0xd99086=>_0xd99086[_0x5c9cc4(0x15e)](_0x5c9cc4(0x105)));if(!_0x3f4ab6)continue;try{let _0x3bb836=JSON[_0x5c9cc4(0xfe)](_0x3f4ab6[_0x5c9cc4(0xff)](0x6));if(await a(_0x3bb836),_0x3bb836[_0x5c9cc4(0x109)]===_0x5c9cc4(0x104)){if(_0x1f4097=null,!_0x43cec7)await l();_0x43cec7=!0x1;}}catch(_0x5a05be){W(_0x5c9cc4(0x10b)+_0x5a05be);}}}W(_0x5c9cc4(0x11f));}catch(_0x278a2a){W(_0x5c9cc4(0x176)+_0x278a2a);}if(_0x1f4097=_0x1f4097??Date[_0x5c9cc4(0x15b)](),Date[_0x5c9cc4(0x15b)]()-_0x1f4097>T){W(_0x5c9cc4(0x163)+j+_0x5c9cc4(0x178));return;}await N(_0x4512dc),_0x4512dc=Math[_0x5c9cc4(0x17d)](_0x4512dc*0x2,R);}}async function a(_0x43716e){const _0x1991a2=a0_0x51b7d5;if(_0x43716e[_0x1991a2(0x109)]===_0x1991a2(0x104)){W(_0x1991a2(0x17a)+G+'\x22');return;}if(_0x43716e[_0x1991a2(0x109)]==='new_message'){if(W(_0x1991a2(0x156)+_0x43716e[_0x1991a2(0x129)]+':\x20'+_0x43716e[_0x1991a2(0x113)]['slice'](0x0,0x3c)),await x[_0x1991a2(0x17b)]({'method':_0x1991a2(0x182),'params':{'content':_0x43716e[_0x1991a2(0x113)],'meta':{'sender':_0x43716e[_0x1991a2(0x129)]||_0x1991a2(0x183),'sender_id':_0x1991a2(0x17c),'user':_0x43716e[_0x1991a2(0x129)]||_0x1991a2(0x183),'priority':_0x1991a2(0x16b)}}}),_0x43716e['message_id'])await Y(_0x1991a2(0x11e),{'alias':G,'message_id':_0x43716e[_0x1991a2(0x108)]});return;}if(_0x43716e[_0x1991a2(0x109)]===_0x1991a2(0x130)||_0x43716e[_0x1991a2(0x109)]===_0x1991a2(0x15c)){W('←\x20'+_0x43716e[_0x1991a2(0x109)]+_0x1991a2(0x12c)+_0x43716e[_0x1991a2(0x172)]+_0x1991a2(0x114)+(_0x43716e['priority']||_0x1991a2(0x16b)));let _0x2674b2=await Y('get_inbox',{'alias':G,'limit':0x5});if(_0x2674b2?.['ok']&&_0x2674b2[_0x1991a2(0x132)]?.[_0x1991a2(0x154)]>0x0)for(let _0x37b1e6 of _0x2674b2['messages']){let _0x464460={'sender':_0x37b1e6['from_session']||_0x1991a2(0x183),'sender_id':_0x1991a2(0x17c),'user':_0x37b1e6['from_session']||'hub','task_id':_0x37b1e6['id'],'priority':_0x37b1e6[_0x1991a2(0x14f)]||_0x1991a2(0x16b)};D[_0x1991a2(0xf8)](_0x37b1e6['id'],_0x37b1e6[_0x1991a2(0x131)]||'hub'),await x['notification']({'method':_0x1991a2(0x182),'params':{'content':_0x37b1e6[_0x1991a2(0x13c)],'meta':_0x464460}}),W(_0x1991a2(0x115)+_0x37b1e6['id'][_0x1991a2(0xff)](0x0,0x8)+_0x1991a2(0x146)+_0x37b1e6[_0x1991a2(0x131)]+':\x20'+_0x37b1e6[_0x1991a2(0x13c)][_0x1991a2(0xff)](0x0,0x3c)),await Y(_0x1991a2(0x11e),{'alias':G,'message_id':_0x37b1e6['id']});}}}async function n(){const _0x53dd33=a0_0x51b7d5;let _0x2e83a2=new a0_0x64ed05();await x['connect'](_0x2e83a2),W('MCP\x20stdio\x20connected'),W(_0x53dd33(0x184)),o()['catch'](_0x526c71=>W(_0x53dd33(0x116)+_0x526c71)),Y(_0x53dd33(0x112),{'resume_id':K,'alias':G,'status':_0x53dd33(0x169),'server':a0_0x4064e4(),'hostname':a0_0x4064e4(),'agent':'claude-code','project_dir':process[_0x53dd33(0x102)](),'tmux_name':f||void 0x0})[_0x53dd33(0x174)](()=>W(_0x53dd33(0x136)+G+_0x53dd33(0x123)+K[_0x53dd33(0xff)](0x0,0x8)+')'))[_0x53dd33(0x189)](_0x2397aa=>W(_0x53dd33(0x18c)+_0x2397aa)),setInterval(()=>{const _0x1d1247=_0x53dd33;Y(_0x1d1247(0x112),{'resume_id':K,'alias':G,'status':_0x1d1247(0x169),'server':a0_0x4064e4(),'hostname':a0_0x4064e4(),'agent':_0x1d1247(0x111),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x1d1247(0x189)](_0x3fe687=>W(_0x1d1247(0xfd)+_0x3fe687));},0x2bf20),W(_0x53dd33(0x162));}n()[a0_0x51b7d5(0x189)](_0x3347e8=>{const _0x2ca98c=a0_0x51b7d5;W(_0x2ca98c(0x13a)+_0x3347e8),process[_0x2ca98c(0x158)](0x1);});async function b(){const _0x3c3ccc=a0_0x51b7d5;W('shutting\x20down,\x20reporting\x20offline...'),await Y(_0x3c3ccc(0x112),{'resume_id':K,'alias':G,'status':'offline','task':'session\x20disconnected'})['catch'](()=>{}),process[_0x3c3ccc(0x158)](0x0);}process[a0_0x51b7d5(0x117)]['on'](a0_0x51b7d5(0x18b),()=>b()),process['on'](a0_0x51b7d5(0x145),()=>b()),process['on'](a0_0x51b7d5(0x133),()=>b());
|
|
2
|
+
const a0_0x4fb80b=a0_0x1914;(function(_0xc862c,_0x444d3b){const _0x1b862e=a0_0x1914,_0x53e58b=_0xc862c();while(!![]){try{const _0x2622d2=-parseInt(_0x1b862e(0x1cc))/0x1*(-parseInt(_0x1b862e(0x1c1))/0x2)+-parseInt(_0x1b862e(0x1f5))/0x3*(parseInt(_0x1b862e(0x1c2))/0x4)+-parseInt(_0x1b862e(0x1f0))/0x5+parseInt(_0x1b862e(0x19e))/0x6*(-parseInt(_0x1b862e(0x177))/0x7)+parseInt(_0x1b862e(0x1b5))/0x8+parseInt(_0x1b862e(0x1a9))/0x9+-parseInt(_0x1b862e(0x163))/0xa;if(_0x2622d2===_0x444d3b)break;else _0x53e58b['push'](_0x53e58b['shift']());}catch(_0x1b84fa){_0x53e58b['push'](_0x53e58b['shift']());}}}(a0_0xca92,0xecbe3));function a0_0x1914(_0x2934e7,_0xd23b12){_0x2934e7=_0x2934e7-0x15c;const _0xca929b=a0_0xca92();let _0x1914c7=_0xca929b[_0x2934e7];return _0x1914c7;}function a0_0xca92(){const _0x2338c4=['working','failed','new_task','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','offline','SSE\x20stream\x20ended,\x20reconnecting...','commhub','SSE\x20connected\x20as\x20\x22',']\x20[commhub]\x20','type','parse\x20error:\x20','stderr','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','utf-8','slice','normal','now','7PPYkUA','commhub_reply','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','content','join','split','Authorization','Target\x20session\x20alias','init\x20failed:\x20','replace','/events/','→\x20injected\x20task\x20','cancelled','statusText','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','broadcast','in_progress','trim','...\x20TMUX=','text','SSE\x20fatal:\x20','2025-03-26','catch','(none)','\x20priority=','inbox_count','ready\x20—\x20waiting\x20for\x20events','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','connecting\x20to\x20','from','initialize','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','completed','read','status','starting\x20SSE\x20listener...','commhub_get_all_status','params','.anet','2378358gvvPiE','re-registered\x20as\x20\x22','Session\x20alias:\x20','set','get','application/json,\x20text/event-stream','find','\x22\x20after\x20SSE\x20reconnect','commhub_send_message','from_session','POST','9248463YhraDB','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','0.3.0','commhub-channel','notifications/claude/channel','message_id','write','data:\x20','\x22\x20(','http://127.0.0.1:9200','\x20RESUME_ID=','\x20from\x20','8433208nFVwiL','/mcp','claude-code','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a','messages','commhub_send_task','tools/call','high','stdin','alias','Message\x20content','get_all_status','30QRdBlh','702024Nprdvc','Priority\x20(default:\x20normal)','connected','idle','shutting\x20down,\x20reporting\x20offline...','message','token','pid','send_task','getReader','95649Zhsqng','blocked','connect','end','stringify','new_message','task','cwd','setRequestHandler','heartbeat\x20failed:\x20','send_message','replied','Bearer\x20','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','notification','MCP\x20stdio\x20connected','startsWith',':\x20inbox_count=','error','unattributed-','object','number','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','commhub_report_status','tmux\x20display-message\x20-p\x20\x27#S\x27','report_status','string',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','priority','result','pop','ack_inbox','2.0','indexOf','.claude/channels/commhub','length','3367155mdCxzF','then','SIGTERM','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','.env','15GyIGGv','body','Current\x20task\x20description','fatal:\x20','application/json','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','exit','config.json','SIGINT','min','hub','re-register\x20failed:\x20','parse','5994400lTxfBI','←\x20message\x20from\x20','decode'];a0_0xca92=function(){return _0x2338c4;};return a0_0xca92();}import{readFileSync as a0_0x774c42,existsSync as a0_0x343d0e}from'fs';import{randomUUID as a0_0x33cf1e}from'crypto';import{join as a0_0xfa3780}from'path';import{hostname as a0_0x2b37e1}from'os';import{execSync as a0_0x58c2dc}from'child_process';import{Server as a0_0x40b735}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x22656e}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x2ccd61,CallToolRequestSchema as a0_0x19d300}from'@modelcontextprotocol/sdk/types.js';function I(_0x82d1a0){const _0x351c0c=a0_0x1914;if(!a0_0x343d0e(_0x82d1a0))return;for(let _0x3d48b0 of a0_0x774c42(_0x82d1a0,_0x351c0c(0x173))[_0x351c0c(0x17c)]('\x0a')){let _0x1e521d=_0x3d48b0[_0x351c0c(0x188)]();if(!_0x1e521d||_0x1e521d[_0x351c0c(0x1dc)]('#'))continue;let _0x1038a8=_0x1e521d[_0x351c0c(0x1ed)]('=');if(_0x1038a8<0x0)continue;let _0x116e87=_0x1e521d['slice'](0x0,_0x1038a8)[_0x351c0c(0x188)](),_0x43dbd1=_0x1e521d[_0x351c0c(0x174)](_0x1038a8+0x1)[_0x351c0c(0x188)]()[_0x351c0c(0x180)](/^["']|["']$/g,'');if(!process.env[_0x116e87])process.env[_0x116e87]=_0x43dbd1;}}var L=process.env.HOME||'~',U=a0_0xfa3780(L,a0_0x4fb80b(0x1ee));I(a0_0xfa3780(U,'.env'));var v=process['cwd']()[a0_0x4fb80b(0x180)](/\//g,'-');I(a0_0xfa3780(U,v,a0_0x4fb80b(0x1f4)));function d(){const _0x2c4011=a0_0x4fb80b;try{return a0_0x58c2dc(_0x2c4011(0x1e4),{'encoding':_0x2c4011(0x173),'timeout':0x7d0})[_0x2c4011(0x188)]();}catch{return'';}}function m(){const _0x32d6d8=a0_0x4fb80b;try{let _0x1bdd86=a0_0xfa3780(L,_0x32d6d8(0x19d),_0x32d6d8(0x15d));if(a0_0x343d0e(_0x1bdd86))return JSON['parse'](a0_0x774c42(_0x1bdd86,'utf-8'));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u[a0_0x4fb80b(0x160)]||a0_0x4fb80b(0x1b2),f=process.env.COMMHUB_TMUX||d();function r(){const _0x11182f=a0_0x4fb80b;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x11182f(0x188)]())return process.env.COMMHUB_ALIAS['trim']();return process['stderr'][_0x11182f(0x1af)](_0x11182f(0x1e2)+('would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME='+(f||_0x11182f(0x18e))+'\x20/\x20hostname='+a0_0x2b37e1()+_0x11182f(0x1b8))),_0x11182f(0x1df)+process[_0x11182f(0x1c9)];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x33cf1e(),F=process.env.COMMHUB_TOKEN||u[a0_0x4fb80b(0x1c8)]||'';function W(_0xde7b8a){const _0x3ca3b7=a0_0x4fb80b;let _0x2d34a5=new Date()['toTimeString']()[_0x3ca3b7(0x174)](0x0,0x8);process[_0x3ca3b7(0x171)]['write']('['+_0x2d34a5+_0x3ca3b7(0x16e)+_0xde7b8a+'\x0a');}function N(_0x132788){return new Promise(_0x18740e=>setTimeout(_0x18740e,_0x132788));}W('ENV:\x20URL='+j+'\x20ALIAS='+G+a0_0x4fb80b(0x1b3)+K[a0_0x4fb80b(0x174)](0x0,0x8)+a0_0x4fb80b(0x189)+(f||'none')+'\x20CWD='+process[a0_0x4fb80b(0x1d3)]()+'\x20PROJECT_ENV='+v);var D=new Map(),x=new a0_0x40b735({'name':a0_0x4fb80b(0x1ac),'version':a0_0x4fb80b(0x1ab)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x4fb80b(0x1fa),'These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.',a0_0x4fb80b(0x185),a0_0x4fb80b(0x192),a0_0x4fb80b(0x1a0)+G][a0_0x4fb80b(0x17b)]('\x0a')});x[a0_0x4fb80b(0x1d4)](a0_0x2ccd61,async()=>({'tools':[{'name':'commhub_reply','description':a0_0x4fb80b(0x1f3),'inputSchema':{'type':a0_0x4fb80b(0x1e0),'properties':{'task_id':{'type':a0_0x4fb80b(0x1e6),'description':a0_0x4fb80b(0x179)},'text':{'type':a0_0x4fb80b(0x1e6),'description':'Reply\x20text\x20/\x20result\x20summary'},'status':{'type':'string','enum':[a0_0x4fb80b(0x197),a0_0x4fb80b(0x167),a0_0x4fb80b(0x183),a0_0x4fb80b(0x1cd),a0_0x4fb80b(0x1de),a0_0x4fb80b(0x187)],'description':a0_0x4fb80b(0x1d9)}},'required':[a0_0x4fb80b(0x18a)]}},{'name':a0_0x4fb80b(0x1e3),'description':a0_0x4fb80b(0x196),'inputSchema':{'type':'object','properties':{'status':{'type':a0_0x4fb80b(0x1e6),'enum':[a0_0x4fb80b(0x166),a0_0x4fb80b(0x1c5),a0_0x4fb80b(0x1cd),'error']},'task':{'type':a0_0x4fb80b(0x1e6),'description':a0_0x4fb80b(0x1f7)},'progress':{'type':a0_0x4fb80b(0x1e1),'description':'Progress\x200-100'}},'required':[a0_0x4fb80b(0x199)]}},{'name':a0_0x4fb80b(0x1ba),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x4fb80b(0x1e0),'properties':{'alias':{'type':'string','description':a0_0x4fb80b(0x17e)},'task':{'type':a0_0x4fb80b(0x1e6),'description':'Task\x20content'},'priority':{'type':a0_0x4fb80b(0x1e6),'enum':[a0_0x4fb80b(0x1bc),a0_0x4fb80b(0x175),'low'],'description':a0_0x4fb80b(0x1c3)}},'required':[a0_0x4fb80b(0x1be),a0_0x4fb80b(0x1d2)]}},{'name':a0_0x4fb80b(0x1a6),'description':a0_0x4fb80b(0x1aa),'inputSchema':{'type':a0_0x4fb80b(0x1e0),'properties':{'alias':{'type':a0_0x4fb80b(0x1e6),'description':a0_0x4fb80b(0x17e)},'message':{'type':a0_0x4fb80b(0x1e6),'description':a0_0x4fb80b(0x1bf)}},'required':[a0_0x4fb80b(0x1be),a0_0x4fb80b(0x1c7)]}},{'name':a0_0x4fb80b(0x19b),'description':a0_0x4fb80b(0x169),'inputSchema':{'type':a0_0x4fb80b(0x1e0),'properties':{}}}]}));async function Y(_0x201887,_0x2cc8f4){const _0x4fb1a5=a0_0x4fb80b;let _0x2adbc3=await fetch(j+_0x4fb1a5(0x1b6),{'method':'POST','headers':{'Content-Type':_0x4fb1a5(0x1f9),'Accept':'application/json,\x20text/event-stream',...F?{'Authorization':_0x4fb1a5(0x1d8)+F}:{}},'body':JSON['stringify']({'jsonrpc':_0x4fb1a5(0x1ec),'id':0x1,'method':_0x4fb1a5(0x195),'params':{'protocolVersion':_0x4fb1a5(0x18c),'capabilities':{},'clientInfo':{'name':_0x4fb1a5(0x1ac),'version':_0x4fb1a5(0x1ab)}}})});if(!_0x2adbc3['ok']){let _0x2e9cc5=await _0x2adbc3[_0x4fb1a5(0x18a)]();return W('CommHub\x20init\x20failed:\x20'+_0x2adbc3[_0x4fb1a5(0x199)]+'\x20'+_0x2e9cc5[_0x4fb1a5(0x174)](0x0,0x64)),{'ok':!0x1,'error':_0x4fb1a5(0x17f)+_0x2adbc3[_0x4fb1a5(0x199)]};}await _0x2adbc3[_0x4fb1a5(0x18a)]();let _0x5b8fb4=(await(await fetch(j+_0x4fb1a5(0x1b6),{'method':_0x4fb1a5(0x1a8),'headers':{'Content-Type':'application/json','Accept':_0x4fb1a5(0x1a3),...F?{'Authorization':_0x4fb1a5(0x1d8)+F}:{}},'body':JSON[_0x4fb1a5(0x1d0)]({'jsonrpc':_0x4fb1a5(0x1ec),'id':0x2,'method':_0x4fb1a5(0x1bb),'params':{'name':_0x201887,'arguments':_0x2cc8f4}})}))[_0x4fb1a5(0x18a)]())[_0x4fb1a5(0x17c)]('\x0a')[_0x4fb1a5(0x1a4)](_0x2dc275=>_0x2dc275['startsWith'](_0x4fb1a5(0x1b0)));if(_0x5b8fb4){let _0x2293fe=JSON[_0x4fb1a5(0x162)](_0x5b8fb4[_0x4fb1a5(0x174)](0x6));return _0x2293fe?.[_0x4fb1a5(0x1e9)]?.[_0x4fb1a5(0x17a)]?.[0x0]?.[_0x4fb1a5(0x18a)]?JSON[_0x4fb1a5(0x162)](_0x2293fe[_0x4fb1a5(0x1e9)][_0x4fb1a5(0x17a)][0x0]['text']):_0x2293fe;}return{'ok':!0x1,'error':'no\x20response'};}x[a0_0x4fb80b(0x1d4)](a0_0x19d300,async _0x4a23f5=>{const _0x1207a1=a0_0x4fb80b;let {name:_0x98a3a3,arguments:_0x54145c}=_0x4a23f5[_0x1207a1(0x19c)];if(_0x98a3a3===_0x1207a1(0x178)){let {task_id:_0x20afde,text:_0xea1fd7,status:_0x4c7da0}=_0x54145c;if(_0x4c7da0===_0x1207a1(0x197)||_0x4c7da0===_0x1207a1(0x167)||_0x4c7da0===_0x1207a1(0x183)){let _0xd2fdb3=_0x4c7da0===_0x1207a1(0x197)?_0x1207a1(0x1d7):_0x4c7da0,_0x2431a7=_0x20afde?D[_0x1207a1(0x1a2)](_0x20afde)||_0x1207a1(0x160):'hub',_0x1ad06a=await Y('send_reply',{'alias':_0x2431a7,'text':_0xea1fd7,'in_reply_to':_0x20afde||void 0x0,'status':_0xd2fdb3,'from_session':G});if(_0x20afde)D['delete'](_0x20afde);return{'content':[{'type':_0x1207a1(0x18a),'text':JSON[_0x1207a1(0x1d0)](_0x1ad06a)}]};}let _0x340cb3=await Y(_0x1207a1(0x1e5),{'resume_id':K,'alias':G,'status':_0x4c7da0===_0x1207a1(0x1cd)?_0x1207a1(0x1cd):_0x4c7da0===_0x1207a1(0x1de)?_0x1207a1(0x1de):_0x1207a1(0x166),'task':_0xea1fd7['slice'](0x0,0xc8),'output':_0xea1fd7});return{'content':[{'type':_0x1207a1(0x18a),'text':JSON[_0x1207a1(0x1d0)](_0x340cb3)}]};}if(_0x98a3a3==='commhub_report_status'){let {status:_0x14a07c,task:_0x27e7b9,progress:_0x4f6d0b}=_0x54145c,_0x14a23c=await Y(_0x1207a1(0x1e5),{'resume_id':K,'alias':G,'status':_0x14a07c,'task':_0x27e7b9,'progress':_0x4f6d0b});return{'content':[{'type':'text','text':JSON[_0x1207a1(0x1d0)](_0x14a23c)}]};}if(_0x98a3a3==='commhub_send_task'){let {alias:_0x2cda7b,task:_0x59c2d1,priority:_0x677fc8}=_0x54145c,_0x2e76bd=await Y(_0x1207a1(0x1ca),{'alias':_0x2cda7b,'task':_0x59c2d1,'priority':_0x677fc8||_0x1207a1(0x175),'from_session':G});return{'content':[{'type':_0x1207a1(0x18a),'text':JSON[_0x1207a1(0x1d0)](_0x2e76bd)}]};}if(_0x98a3a3===_0x1207a1(0x1a6)){let {alias:_0x40f923,message:_0x4b4cb4}=_0x54145c,_0x4df591=await Y(_0x1207a1(0x1d6),{'alias':_0x40f923,'message':_0x4b4cb4,'from_session':G});return{'content':[{'type':_0x1207a1(0x18a),'text':JSON['stringify'](_0x4df591)}]};}if(_0x98a3a3===_0x1207a1(0x19b)){let _0x4aa76d=await Y(_0x1207a1(0x1c0),{});return{'content':[{'type':'text','text':JSON[_0x1207a1(0x1d0)](_0x4aa76d)}]};}return{'content':[{'type':_0x1207a1(0x18a),'text':JSON[_0x1207a1(0x1d0)]({'error':'unknown\x20tool'})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x7c76f8=a0_0x4fb80b;try{await Y(_0x7c76f8(0x1e5),{'resume_id':K,'alias':G,'status':_0x7c76f8(0x1c5),'server':a0_0x2b37e1(),'hostname':a0_0x2b37e1(),'agent':_0x7c76f8(0x1b7),'project_dir':process['cwd'](),'tmux_name':f||void 0x0}),W(_0x7c76f8(0x19f)+G+_0x7c76f8(0x1a5));}catch(_0xe443a7){W(_0x7c76f8(0x161)+_0xe443a7);}}async function o(){const _0x203c48=a0_0x4fb80b;let _0x45f29f=j+_0x203c48(0x181)+encodeURIComponent(G),_0x19cd4e={};if(F)_0x19cd4e[_0x203c48(0x17d)]=_0x203c48(0x1d8)+F;W(_0x203c48(0x193)+_0x45f29f);let _0x3b9e98=O,_0x4164f2=!0x0,_0x47b9c3=null;while(!0x0){try{let _0x2e50f8=await fetch(_0x45f29f,{'headers':_0x19cd4e});if(!_0x2e50f8['ok']){if(W('SSE\x20error:\x20'+_0x2e50f8[_0x203c48(0x199)]+'\x20'+_0x2e50f8[_0x203c48(0x184)]),_0x47b9c3=_0x47b9c3??Date['now'](),Date[_0x203c48(0x176)]()-_0x47b9c3>T){W(_0x203c48(0x172)+j+_0x203c48(0x1e7));return;}await N(_0x3b9e98),_0x3b9e98=Math[_0x203c48(0x15f)](_0x3b9e98*0x2,R);continue;}let _0x1c690e=_0x2e50f8[_0x203c48(0x1f6)][_0x203c48(0x1cb)](),_0x1aa62a=new TextDecoder(),_0x14d073='';_0x3b9e98=O;while(!0x0){let {done:_0x57d11c,value:_0x1f670f}=await _0x1c690e[_0x203c48(0x198)]();if(_0x57d11c)break;_0x14d073+=_0x1aa62a[_0x203c48(0x165)](_0x1f670f,{'stream':!0x0});let _0x3f4714=_0x14d073[_0x203c48(0x17c)]('\x0a\x0a');_0x14d073=_0x3f4714[_0x203c48(0x1ea)]()||'';for(let _0x24004c of _0x3f4714){let _0x5c888a=_0x24004c[_0x203c48(0x17c)]('\x0a')['find'](_0x21053e=>_0x21053e[_0x203c48(0x1dc)](_0x203c48(0x1b0)));if(!_0x5c888a)continue;try{let _0x196e88=JSON[_0x203c48(0x162)](_0x5c888a[_0x203c48(0x174)](0x6));if(await a(_0x196e88),_0x196e88[_0x203c48(0x16f)]==='connected'){if(_0x47b9c3=null,!_0x4164f2)await l();_0x4164f2=!0x1;}}catch(_0x24f941){W(_0x203c48(0x170)+_0x24f941);}}}W(_0x203c48(0x16b));}catch(_0x34ccf3){W('SSE\x20connection\x20error:\x20'+_0x34ccf3);}if(_0x47b9c3=_0x47b9c3??Date[_0x203c48(0x176)](),Date['now']()-_0x47b9c3>T){W(_0x203c48(0x172)+j+')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。');return;}await N(_0x3b9e98),_0x3b9e98=Math['min'](_0x3b9e98*0x2,R);}}async function a(_0x5a8ea3){const _0x1a3830=a0_0x4fb80b;if(_0x5a8ea3[_0x1a3830(0x16f)]===_0x1a3830(0x1c4)){W(_0x1a3830(0x16d)+G+'\x22');return;}if(_0x5a8ea3[_0x1a3830(0x16f)]===_0x1a3830(0x1d1)){if(W(_0x1a3830(0x164)+_0x5a8ea3[_0x1a3830(0x194)]+':\x20'+_0x5a8ea3['message'][_0x1a3830(0x174)](0x0,0x3c)),await x[_0x1a3830(0x1da)]({'method':_0x1a3830(0x1ad),'params':{'content':_0x5a8ea3[_0x1a3830(0x1c7)],'meta':{'sender':_0x5a8ea3[_0x1a3830(0x194)]||_0x1a3830(0x160),'sender_id':'commhub','user':_0x5a8ea3['from']||_0x1a3830(0x160),'priority':_0x1a3830(0x175)}}}),_0x5a8ea3['message_id'])await Y(_0x1a3830(0x1eb),{'alias':G,'message_id':_0x5a8ea3[_0x1a3830(0x1ae)]});return;}if(_0x5a8ea3[_0x1a3830(0x16f)]===_0x1a3830(0x168)||_0x5a8ea3[_0x1a3830(0x16f)]===_0x1a3830(0x186)){W('←\x20'+_0x5a8ea3[_0x1a3830(0x16f)]+_0x1a3830(0x1dd)+_0x5a8ea3[_0x1a3830(0x190)]+_0x1a3830(0x18f)+(_0x5a8ea3[_0x1a3830(0x1e8)]||_0x1a3830(0x175)));let _0x502149=await Y('get_inbox',{'alias':G,'limit':0x5});if(_0x502149?.['ok']&&_0x502149[_0x1a3830(0x1b9)]?.[_0x1a3830(0x1ef)]>0x0)for(let _0x38ef37 of _0x502149[_0x1a3830(0x1b9)]){let _0x54478f={'sender':_0x38ef37[_0x1a3830(0x1a7)]||'hub','sender_id':_0x1a3830(0x16c),'user':_0x38ef37[_0x1a3830(0x1a7)]||_0x1a3830(0x160),'task_id':_0x38ef37['id'],'priority':_0x38ef37[_0x1a3830(0x1e8)]||_0x1a3830(0x175)};D[_0x1a3830(0x1a1)](_0x38ef37['id'],_0x38ef37[_0x1a3830(0x1a7)]||_0x1a3830(0x160)),await x[_0x1a3830(0x1da)]({'method':'notifications/claude/channel','params':{'content':_0x38ef37[_0x1a3830(0x17a)],'meta':_0x54478f}}),W(_0x1a3830(0x182)+_0x38ef37['id'][_0x1a3830(0x174)](0x0,0x8)+_0x1a3830(0x1b4)+_0x38ef37[_0x1a3830(0x1a7)]+':\x20'+_0x38ef37[_0x1a3830(0x17a)][_0x1a3830(0x174)](0x0,0x3c)),await Y(_0x1a3830(0x1eb),{'alias':G,'message_id':_0x38ef37['id']});}}}async function n(){const _0x22cf6c=a0_0x4fb80b;let _0x25f026=new a0_0x22656e();await x[_0x22cf6c(0x1ce)](_0x25f026),W(_0x22cf6c(0x1db)),W(_0x22cf6c(0x19a)),o()[_0x22cf6c(0x18d)](_0x3a404d=>W(_0x22cf6c(0x18b)+_0x3a404d)),Y('report_status',{'resume_id':K,'alias':G,'status':_0x22cf6c(0x1c5),'server':a0_0x2b37e1(),'hostname':a0_0x2b37e1(),'agent':_0x22cf6c(0x1b7),'project_dir':process[_0x22cf6c(0x1d3)](),'tmux_name':f||void 0x0})[_0x22cf6c(0x1f1)](()=>W('registered\x20as\x20\x22'+G+_0x22cf6c(0x1b1)+K[_0x22cf6c(0x174)](0x0,0x8)+')'))[_0x22cf6c(0x18d)](_0x3728df=>W('warning:\x20could\x20not\x20register:\x20'+_0x3728df)),setInterval(()=>{const _0x3741dc=_0x22cf6c;Y(_0x3741dc(0x1e5),{'resume_id':K,'alias':G,'status':'idle','server':a0_0x2b37e1(),'hostname':a0_0x2b37e1(),'agent':_0x3741dc(0x1b7),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x3741dc(0x18d)](_0xad9917=>W(_0x3741dc(0x1d5)+_0xad9917));},0x2bf20),W(_0x22cf6c(0x191));}n()['catch'](_0x2c9c38=>{const _0x4422e3=a0_0x4fb80b;W(_0x4422e3(0x1f8)+_0x2c9c38),process['exit'](0x1);});async function b(){const _0x21e1df=a0_0x4fb80b;W(_0x21e1df(0x1c6)),await Y(_0x21e1df(0x1e5),{'resume_id':K,'alias':G,'status':_0x21e1df(0x16a),'task':'session\x20disconnected'})[_0x21e1df(0x18d)](()=>{}),process[_0x21e1df(0x15c)](0x0);}process[a0_0x4fb80b(0x1bd)]['on'](a0_0x4fb80b(0x1cf),()=>b()),process['on'](a0_0x4fb80b(0x1f2),()=>b()),process['on'](a0_0x4fb80b(0x15e),()=>b());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.2.11-preview.
|
|
3
|
+
"version": "2.2.11-preview.2",
|
|
4
4
|
"description": "AI Agent Network CLI \u2014 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",
|