@sleep2agi/agent-network 2.3.0-preview.20 → 2.3.0-preview.21

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.
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env bun
2
- const a0_0x772d6f=a0_0x35e7;(function(_0x540113,_0x2fd8e0){const _0x2f73a5=a0_0x35e7,_0x4ed00a=_0x540113();while(!![]){try{const _0x5a33b6=parseInt(_0x2f73a5(0x15b))/0x1+parseInt(_0x2f73a5(0x1db))/0x2+-parseInt(_0x2f73a5(0x175))/0x3+-parseInt(_0x2f73a5(0x145))/0x4+-parseInt(_0x2f73a5(0x179))/0x5*(parseInt(_0x2f73a5(0x170))/0x6)+-parseInt(_0x2f73a5(0x161))/0x7+parseInt(_0x2f73a5(0x1a9))/0x8;if(_0x5a33b6===_0x2fd8e0)break;else _0x4ed00a['push'](_0x4ed00a['shift']());}catch(_0x312478){_0x4ed00a['push'](_0x4ed00a['shift']());}}}(a0_0x202c,0xdae9e));function a0_0x202c(){const _0x44107c=['Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','session\x20disconnected','2795674oCmDAO','exit','\x20/\x20hostname=','error','write','idle','/events/','startsWith','3925220EuGAxv','inbox_count','init\x20failed:\x20','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','getReader','cancelled','messages','body','Message\x20content','SSE\x20error:\x20','delete','toTimeString','data:\x20','SIGINT','/mcp','result',']\x20[commhub]\x20','POST','send_message','\x20no\x20longer\x20exists\x20(kill-0\x20ESRCH)\x20—\x20self-exit\x20to\x20avoid\x20ghost\x20heart-beat','statusText','Bearer\x20','951173HKOTCX','new_message','from_session','broadcast','Reply\x20text\x20/\x20result\x20summary','stdin','1814848OfsuHj','\x20PROJECT_ENV=','send_reply','min','\x20from\x20','slice','.env','alias','low','ready\x20—\x20waiting\x20for\x20events','blocked','connected','get_inbox','would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME=','...\x20TMUX=','222942OZLKEE','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a','read','warning:\x20could\x20not\x20register:\x20','params','722520RGpUYj','catch','then','decode','105VwFQlD','Authorization','priority','commhub_send_message','unattributed-','replied','number','message','commhub_get_all_status','pid','SSE\x20stream\x20ended,\x20reconnecting...','normal','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','commhub','Progress\x200-100','text','type','set','failed','parse\x20error:\x20','re-registered\x20as\x20\x22','unref','ack_inbox','hub','notification',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','claude-code','SSE\x20connected\x20as\x20\x22','.claude/channels/commhub','status','object','get_all_status','stderr','replace','application/json','trim','2.0','ppid','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','split','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','indexOf','utf-8','shutting\x20down,\x20reporting\x20offline...','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','ESRCH','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','in_progress','6474928nYTiOT','join','string','re-register\x20failed:\x20','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','message_id','content','unknown','cwd','MCP\x20stdio\x20connected','tmux\x20display-message\x20-p\x20\x27#S\x27','notifications/claude/channel','high','(none)','Current\x20task\x20description','Target\x20session\x20alias','send_task','token',':\x20inbox_count=','parent\x20claude\x20pid=','0.3.0','parse','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','\x20CWD=','←\x20message\x20from\x20','SSE\x20fatal:\x20','from','working','\x22\x20(','none','fatal:\x20','setRequestHandler','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','completed','task','commhub_report_status','config.json','get','report_status','CommHub\x20init\x20failed:\x20','application/json,\x20text/event-stream','find','now','\x20RESUME_ID=','registered\x20as\x20\x22','stringify','commhub_reply','commhub_send_task'];a0_0x202c=function(){return _0x44107c;};return a0_0x202c();}import{readFileSync as a0_0x3ee350,existsSync as a0_0x3ae3e7}from'fs';import{randomUUID as a0_0x5e26b8}from'crypto';import{join as a0_0x51ed96}from'path';import{hostname as a0_0xb52976}from'os';import{execSync as a0_0x179602}from'child_process';function B(_0x5d1fda){const _0x1a0b46=a0_0x35e7;let _0x20e812=_0x5d1fda['replace'](/[^a-zA-Z0-9\-_]/g,'-');return _0x20e812===''?_0x1a0b46(0x1b0):_0x20e812;}import{Server as a0_0x913f64}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0xec1033}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x437a5f,CallToolRequestSchema as a0_0x3c7784}from'@modelcontextprotocol/sdk/types.js';function T(_0x288350){const _0x33472d=a0_0x35e7;if(!a0_0x3ae3e7(_0x288350))return;for(let _0x20d287 of a0_0x3ee350(_0x288350,_0x33472d(0x1a3))['split']('\x0a')){let _0x291ef5=_0x20d287[_0x33472d(0x19c)]();if(!_0x291ef5||_0x291ef5['startsWith']('#'))continue;let _0x56e5c2=_0x291ef5[_0x33472d(0x1a2)]('=');if(_0x56e5c2<0x0)continue;let _0x5190a1=_0x291ef5[_0x33472d(0x166)](0x0,_0x56e5c2)[_0x33472d(0x19c)](),_0x2a0dbf=_0x291ef5['slice'](_0x56e5c2+0x1)[_0x33472d(0x19c)]()[_0x33472d(0x19a)](/^["']|["']$/g,'');if(!process.env[_0x5190a1])process.env[_0x5190a1]=_0x2a0dbf;}}var C=process.env.HOME||'~',r=a0_0x51ed96(C,a0_0x772d6f(0x195));T(a0_0x51ed96(r,a0_0x772d6f(0x167)));var H=B(process[a0_0x772d6f(0x1b1)]());T(a0_0x51ed96(r,H,a0_0x772d6f(0x167)));function E(){const _0x53cabc=a0_0x772d6f;try{return a0_0x179602(_0x53cabc(0x1b3),{'encoding':'utf-8','timeout':0x7d0})[_0x53cabc(0x19c)]();}catch{return'';}}function _(){const _0x3f398f=a0_0x772d6f;try{let _0x46ec85=a0_0x51ed96(C,'.anet',_0x3f398f(0x1cd));if(a0_0x3ae3e7(_0x46ec85))return JSON[_0x3f398f(0x1be)](a0_0x3ee350(_0x46ec85,'utf-8'));}catch{}return{};}var R=_(),Y=process.env.COMMHUB_URL||R[a0_0x772d6f(0x190)]||'http://127.0.0.1:9200',j=process.env.COMMHUB_TMUX||E();function S(){const _0x363d11=a0_0x772d6f;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x363d11(0x19c)]())return process.env.COMMHUB_ALIAS['trim']();return process[_0x363d11(0x199)][_0x363d11(0x1df)]('[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20'+(_0x363d11(0x16e)+(j||_0x363d11(0x1b6))+_0x363d11(0x1dd)+a0_0xb52976()+_0x363d11(0x171))),_0x363d11(0x17d)+process[_0x363d11(0x182)];}var p=S(),V=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x5e26b8(),k=process.env.COMMHUB_TOKEN||R[a0_0x772d6f(0x1ba)]||'';function z(_0x54bd13){const _0x20883d=a0_0x772d6f;let _0x4fba2c=new Date()[_0x20883d(0x150)]()[_0x20883d(0x166)](0x0,0x8);process[_0x20883d(0x199)][_0x20883d(0x1df)]('['+_0x4fba2c+_0x20883d(0x155)+_0x54bd13+'\x0a');}function i(_0x150eaf){return new Promise(_0x2777ef=>setTimeout(_0x2777ef,_0x150eaf));}z('ENV:\x20URL='+Y+'\x20ALIAS='+p+a0_0x772d6f(0x1d4)+V[a0_0x772d6f(0x166)](0x0,0x8)+a0_0x772d6f(0x16f)+(j||a0_0x772d6f(0x1c6))+a0_0x772d6f(0x1c0)+process[a0_0x772d6f(0x1b1)]()+a0_0x772d6f(0x162)+H);var G=new Map(),K=new a0_0x913f64({'name':'commhub-channel','version':a0_0x772d6f(0x1bd)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x772d6f(0x1bf),a0_0x772d6f(0x148),'Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x772d6f(0x1a5),'Session\x20alias:\x20'+p][a0_0x772d6f(0x1aa)]('\x0a')});K[a0_0x772d6f(0x1c8)](a0_0x437a5f,async()=>({'tools':[{'name':a0_0x772d6f(0x1d7),'description':a0_0x772d6f(0x1a1),'inputSchema':{'type':a0_0x772d6f(0x197),'properties':{'task_id':{'type':a0_0x772d6f(0x1ab),'description':a0_0x772d6f(0x19f)},'text':{'type':a0_0x772d6f(0x1ab),'description':a0_0x772d6f(0x15f)},'status':{'type':'string','enum':[a0_0x772d6f(0x1ca),a0_0x772d6f(0x18b),a0_0x772d6f(0x14a),a0_0x772d6f(0x16b),a0_0x772d6f(0x1de),a0_0x772d6f(0x1a8)],'description':a0_0x772d6f(0x1c9)}},'required':[a0_0x772d6f(0x188)]}},{'name':a0_0x772d6f(0x1cc),'description':a0_0x772d6f(0x185),'inputSchema':{'type':a0_0x772d6f(0x197),'properties':{'status':{'type':a0_0x772d6f(0x1ab),'enum':['working',a0_0x772d6f(0x1e0),a0_0x772d6f(0x16b),a0_0x772d6f(0x1de)]},'task':{'type':a0_0x772d6f(0x1ab),'description':a0_0x772d6f(0x1b7)},'progress':{'type':a0_0x772d6f(0x17f),'description':a0_0x772d6f(0x187)}},'required':[a0_0x772d6f(0x196)]}},{'name':a0_0x772d6f(0x1d8),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x772d6f(0x197),'properties':{'alias':{'type':a0_0x772d6f(0x1ab),'description':a0_0x772d6f(0x1b8)},'task':{'type':a0_0x772d6f(0x1ab),'description':'Task\x20content'},'priority':{'type':a0_0x772d6f(0x1ab),'enum':[a0_0x772d6f(0x1b5),'normal',a0_0x772d6f(0x169)],'description':'Priority\x20(default:\x20normal)'}},'required':['alias',a0_0x772d6f(0x1cb)]}},{'name':a0_0x772d6f(0x17c),'description':a0_0x772d6f(0x1d9),'inputSchema':{'type':a0_0x772d6f(0x197),'properties':{'alias':{'type':a0_0x772d6f(0x1ab),'description':'Target\x20session\x20alias'},'message':{'type':a0_0x772d6f(0x1ab),'description':a0_0x772d6f(0x14d)}},'required':[a0_0x772d6f(0x168),a0_0x772d6f(0x180)]}},{'name':a0_0x772d6f(0x181),'description':a0_0x772d6f(0x1ad),'inputSchema':{'type':a0_0x772d6f(0x197),'properties':{}}}]}));async function Q(_0x40183b,_0x11cd73){const _0x38cbbd=a0_0x772d6f;let _0x336ea3=await fetch(Y+_0x38cbbd(0x153),{'method':_0x38cbbd(0x156),'headers':{'Content-Type':_0x38cbbd(0x19b),'Accept':_0x38cbbd(0x1d1),...k?{'Authorization':'Bearer\x20'+k}:{}},'body':JSON[_0x38cbbd(0x1d6)]({'jsonrpc':_0x38cbbd(0x19d),'id':0x1,'method':'initialize','params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':'commhub-channel','version':_0x38cbbd(0x1bd)}}})});if(!_0x336ea3['ok']){let _0x1a6479=await _0x336ea3[_0x38cbbd(0x188)]();return z(_0x38cbbd(0x1d0)+_0x336ea3[_0x38cbbd(0x196)]+'\x20'+_0x1a6479[_0x38cbbd(0x166)](0x0,0x64)),{'ok':!0x1,'error':_0x38cbbd(0x147)+_0x336ea3[_0x38cbbd(0x196)]};}await _0x336ea3[_0x38cbbd(0x188)]();let _0x429417=(await(await fetch(Y+'/mcp',{'method':'POST','headers':{'Content-Type':'application/json','Accept':_0x38cbbd(0x1d1),...k?{'Authorization':_0x38cbbd(0x15a)+k}:{}},'body':JSON[_0x38cbbd(0x1d6)]({'jsonrpc':_0x38cbbd(0x19d),'id':0x2,'method':'tools/call','params':{'name':_0x40183b,'arguments':_0x11cd73}})}))[_0x38cbbd(0x188)]())['split']('\x0a')[_0x38cbbd(0x1d2)](_0x542f32=>_0x542f32[_0x38cbbd(0x144)](_0x38cbbd(0x151)));if(_0x429417){let _0x25d7d7=JSON[_0x38cbbd(0x1be)](_0x429417['slice'](0x6));return _0x25d7d7?.[_0x38cbbd(0x154)]?.[_0x38cbbd(0x1af)]?.[0x0]?.['text']?JSON[_0x38cbbd(0x1be)](_0x25d7d7[_0x38cbbd(0x154)][_0x38cbbd(0x1af)][0x0][_0x38cbbd(0x188)]):_0x25d7d7;}return{'ok':!0x1,'error':'no\x20response'};}K[a0_0x772d6f(0x1c8)](a0_0x3c7784,async _0xc3d585=>{const _0x4346b6=a0_0x772d6f;let {name:_0x4b8e6b,arguments:_0x21db75}=_0xc3d585[_0x4346b6(0x174)];if(_0x4b8e6b===_0x4346b6(0x1d7)){let {task_id:_0x1ba934,text:_0x1a8d64,status:_0x5f0f28}=_0x21db75;if(_0x5f0f28===_0x4346b6(0x1ca)||_0x5f0f28==='failed'||_0x5f0f28===_0x4346b6(0x14a)){let _0x4769bb=_0x5f0f28===_0x4346b6(0x1ca)?_0x4346b6(0x17e):_0x5f0f28,_0x468bbe=_0x1ba934?G[_0x4346b6(0x1ce)](_0x1ba934)||_0x4346b6(0x190):_0x4346b6(0x190),_0x173f29=await Q(_0x4346b6(0x163),{'alias':_0x468bbe,'text':_0x1a8d64,'in_reply_to':_0x1ba934||void 0x0,'status':_0x4769bb,'from_session':p});if(_0x1ba934)G[_0x4346b6(0x14f)](_0x1ba934);return{'content':[{'type':'text','text':JSON[_0x4346b6(0x1d6)](_0x173f29)}]};}let _0x2331ca=await Q('report_status',{'resume_id':V,'alias':p,'status':_0x5f0f28==='blocked'?_0x4346b6(0x16b):_0x5f0f28==='error'?_0x4346b6(0x1de):_0x4346b6(0x1c4),'task':_0x1a8d64['slice'](0x0,0xc8),'output':_0x1a8d64});return{'content':[{'type':'text','text':JSON['stringify'](_0x2331ca)}]};}if(_0x4b8e6b==='commhub_report_status'){let {status:_0x3e4e62,task:_0x14cae3,progress:_0x4509b0}=_0x21db75,_0x40ec10=await Q('report_status',{'resume_id':V,'alias':p,'status':_0x3e4e62,'task':_0x14cae3,'progress':_0x4509b0});return{'content':[{'type':_0x4346b6(0x188),'text':JSON[_0x4346b6(0x1d6)](_0x40ec10)}]};}if(_0x4b8e6b===_0x4346b6(0x1d8)){let {alias:_0x3f8aeb,task:_0x32f37c,priority:_0x25f174}=_0x21db75,_0x482301=await Q(_0x4346b6(0x1b9),{'alias':_0x3f8aeb,'task':_0x32f37c,'priority':_0x25f174||_0x4346b6(0x184),'from_session':p});return{'content':[{'type':_0x4346b6(0x188),'text':JSON[_0x4346b6(0x1d6)](_0x482301)}]};}if(_0x4b8e6b===_0x4346b6(0x17c)){let {alias:_0x817112,message:_0x526fb1}=_0x21db75,_0x5ae21f=await Q(_0x4346b6(0x157),{'alias':_0x817112,'message':_0x526fb1,'from_session':p});return{'content':[{'type':_0x4346b6(0x188),'text':JSON['stringify'](_0x5ae21f)}]};}if(_0x4b8e6b===_0x4346b6(0x181)){let _0x30f390=await Q(_0x4346b6(0x198),{});return{'content':[{'type':_0x4346b6(0x188),'text':JSON[_0x4346b6(0x1d6)](_0x30f390)}]};}return{'content':[{'type':_0x4346b6(0x188),'text':JSON[_0x4346b6(0x1d6)]({'error':'unknown\x20tool'})}]};});var D=0x3e8,v=0x7530,O=0x36ee80;async function m(){const _0xab29c4=a0_0x772d6f;try{await Q(_0xab29c4(0x1cf),{'resume_id':V,'alias':p,'status':_0xab29c4(0x1e0),'server':a0_0xb52976(),'hostname':a0_0xb52976(),'agent':_0xab29c4(0x193),'project_dir':process['cwd'](),'tmux_name':j||void 0x0}),z(_0xab29c4(0x18d)+p+'\x22\x20after\x20SSE\x20reconnect');}catch(_0x11b146){z(_0xab29c4(0x1ac)+_0x11b146);}}async function l(){const _0x40650b=a0_0x772d6f;let _0x334782=Y+_0x40650b(0x143)+encodeURIComponent(p),_0x50f57f={};if(k)_0x50f57f[_0x40650b(0x17a)]=_0x40650b(0x15a)+k;z('connecting\x20to\x20'+_0x334782);let _0x740d7b=D,_0x1335b8=!0x0,_0x1c6163=null;while(!0x0){try{let _0x53930e=await fetch(_0x334782,{'headers':_0x50f57f});if(!_0x53930e['ok']){if(z(_0x40650b(0x14e)+_0x53930e['status']+'\x20'+_0x53930e[_0x40650b(0x159)]),_0x1c6163=_0x1c6163??Date[_0x40650b(0x1d3)](),Date[_0x40650b(0x1d3)]()-_0x1c6163>O){z(_0x40650b(0x1a7)+Y+_0x40650b(0x192));return;}await i(_0x740d7b),_0x740d7b=Math[_0x40650b(0x164)](_0x740d7b*0x2,v);continue;}let _0x5b64de=_0x53930e[_0x40650b(0x14c)][_0x40650b(0x149)](),_0x34583f=new TextDecoder(),_0x54357d='';_0x740d7b=D;while(!0x0){let {done:_0x20d872,value:_0x15de43}=await _0x5b64de[_0x40650b(0x172)]();if(_0x20d872)break;_0x54357d+=_0x34583f[_0x40650b(0x178)](_0x15de43,{'stream':!0x0});let _0x4689f1=_0x54357d[_0x40650b(0x1a0)]('\x0a\x0a');_0x54357d=_0x4689f1['pop']()||'';for(let _0x1e0b2b of _0x4689f1){let _0x17ddac=_0x1e0b2b['split']('\x0a')[_0x40650b(0x1d2)](_0x4016e8=>_0x4016e8['startsWith']('data:\x20'));if(!_0x17ddac)continue;try{let _0x345ce7=JSON[_0x40650b(0x1be)](_0x17ddac[_0x40650b(0x166)](0x6));if(await A(_0x345ce7),_0x345ce7[_0x40650b(0x189)]===_0x40650b(0x16c)){if(_0x1c6163=null,!_0x1335b8)await m();_0x1335b8=!0x1;}}catch(_0x1b1d5c){z(_0x40650b(0x18c)+_0x1b1d5c);}}}z(_0x40650b(0x183));}catch(_0x271e93){z('SSE\x20connection\x20error:\x20'+_0x271e93);}if(_0x1c6163=_0x1c6163??Date['now'](),Date[_0x40650b(0x1d3)]()-_0x1c6163>O){z(_0x40650b(0x1a7)+Y+')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。');return;}await i(_0x740d7b),_0x740d7b=Math['min'](_0x740d7b*0x2,v);}}async function A(_0x4e41fa){const _0x4460a7=a0_0x772d6f;if(_0x4e41fa['type']===_0x4460a7(0x16c)){z(_0x4460a7(0x194)+p+'\x22');return;}if(_0x4e41fa[_0x4460a7(0x189)]===_0x4460a7(0x15c)){if(z(_0x4460a7(0x1c1)+_0x4e41fa['from']+':\x20'+_0x4e41fa['message'][_0x4460a7(0x166)](0x0,0x3c)),await K[_0x4460a7(0x191)]({'method':_0x4460a7(0x1b4),'params':{'content':_0x4e41fa['message'],'meta':{'sender':_0x4e41fa[_0x4460a7(0x1c3)]||_0x4460a7(0x190),'sender_id':_0x4460a7(0x186),'user':_0x4e41fa[_0x4460a7(0x1c3)]||_0x4460a7(0x190),'priority':_0x4460a7(0x184)}}}),_0x4e41fa[_0x4460a7(0x1ae)])await Q(_0x4460a7(0x18f),{'alias':p,'message_id':_0x4e41fa[_0x4460a7(0x1ae)]});return;}if(_0x4e41fa[_0x4460a7(0x189)]==='new_task'||_0x4e41fa[_0x4460a7(0x189)]===_0x4460a7(0x15e)){z('←\x20'+_0x4e41fa[_0x4460a7(0x189)]+_0x4460a7(0x1bb)+_0x4e41fa[_0x4460a7(0x146)]+'\x20priority='+(_0x4e41fa[_0x4460a7(0x17b)]||_0x4460a7(0x184)));let _0xa51d8b=await Q(_0x4460a7(0x16d),{'alias':p,'limit':0x5});if(_0xa51d8b?.['ok']&&_0xa51d8b['messages']?.['length']>0x0)for(let _0x353734 of _0xa51d8b[_0x4460a7(0x14b)]){let _0x38e807={'sender':_0x353734[_0x4460a7(0x15d)]||'hub','sender_id':'commhub','user':_0x353734[_0x4460a7(0x15d)]||_0x4460a7(0x190),'task_id':_0x353734['id'],'priority':_0x353734[_0x4460a7(0x17b)]||_0x4460a7(0x184)};G[_0x4460a7(0x18a)](_0x353734['id'],_0x353734[_0x4460a7(0x15d)]||_0x4460a7(0x190)),await K[_0x4460a7(0x191)]({'method':_0x4460a7(0x1b4),'params':{'content':_0x353734['content'],'meta':_0x38e807}}),z('→\x20injected\x20task\x20'+_0x353734['id']['slice'](0x0,0x8)+_0x4460a7(0x165)+_0x353734[_0x4460a7(0x15d)]+':\x20'+_0x353734[_0x4460a7(0x1af)]['slice'](0x0,0x3c)),await Q('ack_inbox',{'alias':p,'message_id':_0x353734['id']});}}}async function t(){const _0x4adffe=a0_0x772d6f;let _0x4902c1=new a0_0xec1033();await K['connect'](_0x4902c1),z(_0x4adffe(0x1b2)),z('starting\x20SSE\x20listener...'),l()[_0x4adffe(0x176)](_0x55314c=>z(_0x4adffe(0x1c2)+_0x55314c)),Q(_0x4adffe(0x1cf),{'resume_id':V,'alias':p,'status':_0x4adffe(0x1e0),'server':a0_0xb52976(),'hostname':a0_0xb52976(),'agent':_0x4adffe(0x193),'project_dir':process[_0x4adffe(0x1b1)](),'tmux_name':j||void 0x0})[_0x4adffe(0x177)](()=>z(_0x4adffe(0x1d5)+p+_0x4adffe(0x1c5)+V[_0x4adffe(0x166)](0x0,0x8)+')'))['catch'](_0x3168f8=>z(_0x4adffe(0x173)+_0x3168f8)),setInterval(()=>{const _0x30570a=_0x4adffe;Q('report_status',{'resume_id':V,'alias':p,'status':_0x30570a(0x1e0),'server':a0_0xb52976(),'hostname':a0_0xb52976(),'agent':'claude-code','project_dir':process[_0x30570a(0x1b1)](),'tmux_name':j||void 0x0})[_0x30570a(0x176)](_0x3943fc=>z('heartbeat\x20failed:\x20'+_0x3943fc));},0x2bf20),z(_0x4adffe(0x16a));}t()[a0_0x772d6f(0x176)](_0x1b12d5=>{const _0x206804=a0_0x772d6f;z(_0x206804(0x1c7)+_0x1b12d5),process[_0x206804(0x1dc)](0x1);});async function b(){const _0x107f09=a0_0x772d6f;z(_0x107f09(0x1a4)),await Q(_0x107f09(0x1cf),{'resume_id':V,'alias':p,'status':'offline','task':_0x107f09(0x1da)})[_0x107f09(0x176)](()=>{}),process[_0x107f09(0x1dc)](0x0);}function a0_0x35e7(_0x48d436,_0x540117){_0x48d436=_0x48d436-0x143;const _0x202c61=a0_0x202c();let _0x202cca=_0x202c61[_0x48d436];return _0x202cca;}process[a0_0x772d6f(0x160)]['on']('end',()=>b()),process['on']('SIGTERM',()=>b()),process['on'](a0_0x772d6f(0x152),()=>b());var d=process[a0_0x772d6f(0x19e)];if(d&&d>0x1){let h=setInterval(()=>{const _0x2cec3c=a0_0x772d6f;if(process['ppid']===0x1&&d!==0x1){z('parent\x20claude\x20died\x20(reparented\x20to\x20PID\x201\x20from\x20'+d+')\x20—\x20self-exit\x20to\x20avoid\x20ghost\x20heart-beat'),b();return;}try{process['kill'](d,0x0);}catch(_0x2b5be9){if(_0x2b5be9?.['code']===_0x2cec3c(0x1a6))z(_0x2cec3c(0x1bc)+d+_0x2cec3c(0x158)),b();}},0x7530);if(typeof h['unref']==='function')h[a0_0x772d6f(0x18e)]();}
2
+ const a0_0x433c2f=a0_0xb524;(function(_0xb2c8bd,_0x1229e0){const _0x359232=a0_0xb524,_0x32eac3=_0xb2c8bd();while(!![]){try{const _0x459b1f=parseInt(_0x359232(0x247))/0x1*(-parseInt(_0x359232(0x1b7))/0x2)+-parseInt(_0x359232(0x200))/0x3*(parseInt(_0x359232(0x1cc))/0x4)+-parseInt(_0x359232(0x201))/0x5*(parseInt(_0x359232(0x245))/0x6)+parseInt(_0x359232(0x205))/0x7*(parseInt(_0x359232(0x21c))/0x8)+parseInt(_0x359232(0x1cd))/0x9+parseInt(_0x359232(0x1e8))/0xa+parseInt(_0x359232(0x1f0))/0xb;if(_0x459b1f===_0x1229e0)break;else _0x32eac3['push'](_0x32eac3['shift']());}catch(_0x50c184){_0x32eac3['push'](_0x32eac3['shift']());}}}(a0_0xc9d3,0x9eda2));import{readFileSync as a0_0x21b53a,existsSync as a0_0x348584}from'fs';import{randomUUID as a0_0x3148f3}from'crypto';import{join as a0_0x41ccce}from'path';import{hostname as a0_0x5c6388}from'os';import{execSync as a0_0x370c54}from'child_process';function B(_0x4e7c98){const _0x564960=a0_0xb524;let _0x2b2732=_0x4e7c98[_0x564960(0x1c0)](/[^a-zA-Z0-9\-_]/g,'-');return _0x2b2732===''?_0x564960(0x204):_0x2b2732;}import{Server as a0_0x1e14c1}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x4af890}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x2595ff,CallToolRequestSchema as a0_0x120387}from'@modelcontextprotocol/sdk/types.js';function T(_0x1a3d17){const _0x250b01=a0_0xb524;if(!a0_0x348584(_0x1a3d17))return;for(let _0x1244e4 of a0_0x21b53a(_0x1a3d17,_0x250b01(0x23d))[_0x250b01(0x207)]('\x0a')){let _0x1291f4=_0x1244e4[_0x250b01(0x20c)]();if(!_0x1291f4||_0x1291f4[_0x250b01(0x21a)]('#'))continue;let _0x1ee40a=_0x1291f4[_0x250b01(0x21d)]('=');if(_0x1ee40a<0x0)continue;let _0x3a8581=_0x1291f4[_0x250b01(0x203)](0x0,_0x1ee40a)[_0x250b01(0x20c)](),_0x173986=_0x1291f4[_0x250b01(0x203)](_0x1ee40a+0x1)[_0x250b01(0x20c)]()['replace'](/^["']|["']$/g,'');if(!process.env[_0x3a8581])process.env[_0x3a8581]=_0x173986;}}var C=process.env.HOME||'~',r=a0_0x41ccce(C,a0_0x433c2f(0x1ff));T(a0_0x41ccce(r,a0_0x433c2f(0x211)));var H=B(process[a0_0x433c2f(0x21e)]());T(a0_0x41ccce(r,H,a0_0x433c2f(0x211)));function E(){const _0xd52e86=a0_0x433c2f;try{return a0_0x370c54(_0xd52e86(0x239),{'encoding':_0xd52e86(0x23d),'timeout':0x7d0})[_0xd52e86(0x20c)]();}catch{return'';}}function _(){const _0x12eb45=a0_0x433c2f;try{let _0x2a39cb=a0_0x41ccce(C,_0x12eb45(0x1e0),_0x12eb45(0x1b4));if(a0_0x348584(_0x2a39cb))return JSON[_0x12eb45(0x241)](a0_0x21b53a(_0x2a39cb,_0x12eb45(0x23d)));}catch{}return{};}var R=_(),Y=process.env.COMMHUB_URL||R[a0_0x433c2f(0x1fe)]||a0_0x433c2f(0x1b2),j=process.env.COMMHUB_TMUX||E();function S(){const _0x10dad6=a0_0x433c2f;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x10dad6(0x20c)]())return process.env.COMMHUB_ALIAS[_0x10dad6(0x20c)]();return process[_0x10dad6(0x20b)][_0x10dad6(0x1ac)]('[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20'+('would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME='+(j||'(none)')+_0x10dad6(0x1ba)+a0_0x5c6388()+_0x10dad6(0x24c))),_0x10dad6(0x235)+process[_0x10dad6(0x1c2)];}var p=S(),V=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x3148f3(),k=process.env.COMMHUB_TOKEN||R[a0_0x433c2f(0x1c5)]||'';function a0_0xc9d3(){const _0x525fe2=['task','\x20no\x20longer\x20exists\x20(kill-0\x20ESRCH)\x20—\x20self-exit\x20to\x20avoid\x20ghost\x20heart-beat','SSE\x20stream\x20ended,\x20reconnecting...','POST','\x20PROJECT_ENV=','working','Task\x20content','message_id','notification','.anet','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','cancelled','registered\x20as\x20\x22','exit','SSE\x20connection\x20error:\x20','messages','commhub_send_message','3067850VIJsat','priority','Authorization','min','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','send_message','session\x20disconnected','commhub_get_all_status','3074511CowflG','delete','commhub-channel','notifications/claude/channel',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','join','connected','\x22\x20after\x20SSE\x20reconnect','stringify','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','commhub_reply',':\x20inbox_count=','/mcp','new_task','hub','.claude/channels/commhub','1824mZhkSN','5dpCAtn','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','slice','unknown','14hsPUSu','text','split','Reply\x20text\x20/\x20result\x20summary','fatal:\x20','stdin','stderr','trim','ESRCH','body','alias','re-registered\x20as\x20\x22','.env','starting\x20SSE\x20listener...','application/json,\x20text/event-stream','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','from_session','shutting\x20down,\x20reporting\x20offline...','SSE\x20fatal:\x20','←\x20message\x20from\x20','error','startsWith','data:\x20','2032432WzkKbO','indexOf','cwd','none','find','\x20RESUME_ID=','ppid','in_progress','ready\x20—\x20waiting\x20for\x20events','broadcast','SIGINT','MCP\x20stdio\x20connected','Progress\x200-100','get_inbox','end','message','read','code','failed','function','params','Session\x20alias:\x20','offline','commhub_send_task','inbox_count','unattributed-','type','idle','parse\x20error:\x20','tmux\x20display-message\x20-p\x20\x27#S\x27','getReader','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','normal','utf-8','string','parent\x20claude\x20died\x20(reparented\x20to\x20PID\x201\x20from\x20','unknown\x20tool','parse','0.3.0','2.0','pop','1495170iyTcCH','init\x20failed:\x20','164062gmvStB','length','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','unref','send_task','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a',')\x20—\x20self-exit\x20to\x20avoid\x20ghost\x20heart-beat','blocked','from','Priority\x20(default:\x20normal)','object','catch','toTimeString','connect','write','report_status','kill','...\x20TMUX=','Bearer\x20','content','http://127.0.0.1:9200','\x22\x20(','config.json','result','SSE\x20error:\x20','4UUZCQr','get_all_status','number','\x20/\x20hostname=','→\x20injected\x20task\x20','CommHub\x20init\x20failed:\x20','completed','now','Current\x20task\x20description','replace','commhub_report_status','pid','status','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','token','decode','set','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','parent\x20claude\x20pid=','get','7656ixrpLQ','11675655CZaGsy','ack_inbox','low','claude-code','SIGTERM','high','setRequestHandler','application/json','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','Target\x20session\x20alias'];a0_0xc9d3=function(){return _0x525fe2;};return a0_0xc9d3();}function z(_0x20af38){const _0x3bd7f=a0_0x433c2f;let _0x4111d5=new Date()[_0x3bd7f(0x253)]()[_0x3bd7f(0x203)](0x0,0x8);process['stderr'][_0x3bd7f(0x1ac)]('['+_0x4111d5+']\x20[commhub]\x20'+_0x20af38+'\x0a');}function i(_0x4a3456){return new Promise(_0xa5f08f=>setTimeout(_0xa5f08f,_0x4a3456));}z('ENV:\x20URL='+Y+'\x20ALIAS='+p+a0_0x433c2f(0x221)+V[a0_0x433c2f(0x203)](0x0,0x8)+a0_0x433c2f(0x1af)+(j||a0_0x433c2f(0x21f))+'\x20CWD='+process[a0_0x433c2f(0x21e)]()+a0_0x433c2f(0x1db)+H);var G=new Map(),K=new a0_0x1e14c1({'name':'commhub-channel','version':a0_0x433c2f(0x242)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x433c2f(0x202),a0_0x433c2f(0x1c8),a0_0x433c2f(0x1ec),a0_0x433c2f(0x1c9),a0_0x433c2f(0x231)+p][a0_0x433c2f(0x1f5)]('\x0a')});K[a0_0x433c2f(0x1d3)](a0_0x2595ff,async()=>({'tools':[{'name':a0_0x433c2f(0x1fa),'description':a0_0x433c2f(0x1e1),'inputSchema':{'type':a0_0x433c2f(0x251),'properties':{'task_id':{'type':a0_0x433c2f(0x23e),'description':a0_0x433c2f(0x23b)},'text':{'type':'string','description':a0_0x433c2f(0x208)},'status':{'type':a0_0x433c2f(0x23e),'enum':[a0_0x433c2f(0x1bd),a0_0x433c2f(0x22e),a0_0x433c2f(0x1e2),a0_0x433c2f(0x24e),'error',a0_0x433c2f(0x223)],'description':a0_0x433c2f(0x249)}},'required':[a0_0x433c2f(0x206)]}},{'name':'commhub_report_status','description':a0_0x433c2f(0x1d5),'inputSchema':{'type':a0_0x433c2f(0x251),'properties':{'status':{'type':a0_0x433c2f(0x23e),'enum':[a0_0x433c2f(0x1dc),a0_0x433c2f(0x237),a0_0x433c2f(0x24e),a0_0x433c2f(0x219)]},'task':{'type':'string','description':a0_0x433c2f(0x1bf)},'progress':{'type':a0_0x433c2f(0x1b9),'description':a0_0x433c2f(0x228)}},'required':[a0_0x433c2f(0x1c3)]}},{'name':a0_0x433c2f(0x233),'description':a0_0x433c2f(0x1c4),'inputSchema':{'type':a0_0x433c2f(0x251),'properties':{'alias':{'type':a0_0x433c2f(0x23e),'description':a0_0x433c2f(0x1d6)},'task':{'type':a0_0x433c2f(0x23e),'description':a0_0x433c2f(0x1dd)},'priority':{'type':a0_0x433c2f(0x23e),'enum':[a0_0x433c2f(0x1d2),a0_0x433c2f(0x23c),a0_0x433c2f(0x1cf)],'description':a0_0x433c2f(0x250)}},'required':[a0_0x433c2f(0x20f),a0_0x433c2f(0x1d7)]}},{'name':a0_0x433c2f(0x1e7),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x433c2f(0x23e),'description':a0_0x433c2f(0x1d6)},'message':{'type':'string','description':'Message\x20content'}},'required':[a0_0x433c2f(0x20f),'message']}},{'name':'commhub_get_all_status','description':a0_0x433c2f(0x214),'inputSchema':{'type':a0_0x433c2f(0x251),'properties':{}}}]}));async function Q(_0x15d7de,_0x5d902d){const _0x3e1b3f=a0_0x433c2f;let _0x1f5756=await fetch(Y+_0x3e1b3f(0x1fc),{'method':_0x3e1b3f(0x1da),'headers':{'Content-Type':_0x3e1b3f(0x1d4),'Accept':_0x3e1b3f(0x213),...k?{'Authorization':_0x3e1b3f(0x1b0)+k}:{}},'body':JSON['stringify']({'jsonrpc':_0x3e1b3f(0x243),'id':0x1,'method':'initialize','params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x3e1b3f(0x1f2),'version':'0.3.0'}}})});if(!_0x1f5756['ok']){let _0x17acb9=await _0x1f5756[_0x3e1b3f(0x206)]();return z(_0x3e1b3f(0x1bc)+_0x1f5756[_0x3e1b3f(0x1c3)]+'\x20'+_0x17acb9['slice'](0x0,0x64)),{'ok':!0x1,'error':_0x3e1b3f(0x246)+_0x1f5756[_0x3e1b3f(0x1c3)]};}await _0x1f5756[_0x3e1b3f(0x206)]();let _0x29c761=(await(await fetch(Y+_0x3e1b3f(0x1fc),{'method':_0x3e1b3f(0x1da),'headers':{'Content-Type':_0x3e1b3f(0x1d4),'Accept':_0x3e1b3f(0x213),...k?{'Authorization':_0x3e1b3f(0x1b0)+k}:{}},'body':JSON[_0x3e1b3f(0x1f8)]({'jsonrpc':_0x3e1b3f(0x243),'id':0x2,'method':'tools/call','params':{'name':_0x15d7de,'arguments':_0x5d902d}})}))[_0x3e1b3f(0x206)]())[_0x3e1b3f(0x207)]('\x0a')[_0x3e1b3f(0x220)](_0x38bd99=>_0x38bd99[_0x3e1b3f(0x21a)](_0x3e1b3f(0x21b)));if(_0x29c761){let _0x191075=JSON[_0x3e1b3f(0x241)](_0x29c761[_0x3e1b3f(0x203)](0x6));return _0x191075?.[_0x3e1b3f(0x1b5)]?.[_0x3e1b3f(0x1b1)]?.[0x0]?.['text']?JSON[_0x3e1b3f(0x241)](_0x191075[_0x3e1b3f(0x1b5)][_0x3e1b3f(0x1b1)][0x0][_0x3e1b3f(0x206)]):_0x191075;}return{'ok':!0x1,'error':'no\x20response'};}K[a0_0x433c2f(0x1d3)](a0_0x120387,async _0x2cdfbb=>{const _0x34ea9c=a0_0x433c2f;let {name:_0x1fe37a,arguments:_0x3725d9}=_0x2cdfbb[_0x34ea9c(0x230)];if(_0x1fe37a===_0x34ea9c(0x1fa)){let {task_id:_0x2f0318,text:_0xb17867,status:_0x49daea}=_0x3725d9;if(_0x49daea===_0x34ea9c(0x1bd)||_0x49daea===_0x34ea9c(0x22e)||_0x49daea===_0x34ea9c(0x1e2)){let _0x1e432a=_0x49daea===_0x34ea9c(0x1bd)?'replied':_0x49daea,_0x47a1fb=_0x2f0318?G[_0x34ea9c(0x1cb)](_0x2f0318)||_0x34ea9c(0x1fe):_0x34ea9c(0x1fe),_0x13ee40=await Q('send_reply',{'alias':_0x47a1fb,'text':_0xb17867,'in_reply_to':_0x2f0318||void 0x0,'status':_0x1e432a,'from_session':p});if(_0x2f0318)G[_0x34ea9c(0x1f1)](_0x2f0318);return{'content':[{'type':'text','text':JSON['stringify'](_0x13ee40)}]};}let _0x314438=await Q(_0x34ea9c(0x1ad),{'resume_id':V,'alias':p,'status':_0x49daea===_0x34ea9c(0x24e)?_0x34ea9c(0x24e):_0x49daea===_0x34ea9c(0x219)?_0x34ea9c(0x219):_0x34ea9c(0x1dc),'task':_0xb17867[_0x34ea9c(0x203)](0x0,0xc8),'output':_0xb17867});return{'content':[{'type':_0x34ea9c(0x206),'text':JSON['stringify'](_0x314438)}]};}if(_0x1fe37a===_0x34ea9c(0x1c1)){let {status:_0xa997c2,task:_0x3b245d,progress:_0x2c7570}=_0x3725d9,_0x58dfa5=await Q('report_status',{'resume_id':V,'alias':p,'status':_0xa997c2,'task':_0x3b245d,'progress':_0x2c7570});return{'content':[{'type':_0x34ea9c(0x206),'text':JSON[_0x34ea9c(0x1f8)](_0x58dfa5)}]};}if(_0x1fe37a==='commhub_send_task'){let {alias:_0x4051fb,task:_0x28a03e,priority:_0x40f81b}=_0x3725d9,_0x257fe6=await Q(_0x34ea9c(0x24b),{'alias':_0x4051fb,'task':_0x28a03e,'priority':_0x40f81b||_0x34ea9c(0x23c),'from_session':p});return{'content':[{'type':_0x34ea9c(0x206),'text':JSON[_0x34ea9c(0x1f8)](_0x257fe6)}]};}if(_0x1fe37a===_0x34ea9c(0x1e7)){let {alias:_0x149ef6,message:_0x13bf87}=_0x3725d9,_0x2e03fb=await Q(_0x34ea9c(0x1ed),{'alias':_0x149ef6,'message':_0x13bf87,'from_session':p});return{'content':[{'type':_0x34ea9c(0x206),'text':JSON[_0x34ea9c(0x1f8)](_0x2e03fb)}]};}if(_0x1fe37a===_0x34ea9c(0x1ef)){let _0xd58fd9=await Q(_0x34ea9c(0x1b8),{});return{'content':[{'type':'text','text':JSON[_0x34ea9c(0x1f8)](_0xd58fd9)}]};}return{'content':[{'type':_0x34ea9c(0x206),'text':JSON['stringify']({'error':_0x34ea9c(0x240)})}]};});var D=0x3e8,v=0x7530,O=0x36ee80;async function m(){const _0x467ece=a0_0x433c2f;try{await Q('report_status',{'resume_id':V,'alias':p,'status':_0x467ece(0x237),'server':a0_0x5c6388(),'hostname':a0_0x5c6388(),'agent':'claude-code','project_dir':process[_0x467ece(0x21e)](),'tmux_name':j||void 0x0}),z(_0x467ece(0x210)+p+_0x467ece(0x1f7));}catch(_0x2c2e67){z('re-register\x20failed:\x20'+_0x2c2e67);}}async function l(){const _0x47d9a6=a0_0x433c2f;let _0x188125=Y+'/events/'+encodeURIComponent(p),_0x442e3a={};if(k)_0x442e3a[_0x47d9a6(0x1ea)]=_0x47d9a6(0x1b0)+k;z('connecting\x20to\x20'+_0x188125);let _0x4cce36=D,_0x11854d=!0x0,_0x1803b3=null;while(!0x0){try{let _0x6f7b6f=await fetch(_0x188125,{'headers':_0x442e3a});if(!_0x6f7b6f['ok']){if(z(_0x47d9a6(0x1b6)+_0x6f7b6f[_0x47d9a6(0x1c3)]+'\x20'+_0x6f7b6f['statusText']),_0x1803b3=_0x1803b3??Date[_0x47d9a6(0x1be)](),Date[_0x47d9a6(0x1be)]()-_0x1803b3>O){z('SSE\x20连续\x20>1h\x20连不上\x20hub\x20('+Y+_0x47d9a6(0x1f4));return;}await i(_0x4cce36),_0x4cce36=Math[_0x47d9a6(0x1eb)](_0x4cce36*0x2,v);continue;}let _0x314665=_0x6f7b6f[_0x47d9a6(0x20e)][_0x47d9a6(0x23a)](),_0x2b7c50=new TextDecoder(),_0x936229='';_0x4cce36=D;while(!0x0){let {done:_0xdd4069,value:_0x4def78}=await _0x314665[_0x47d9a6(0x22c)]();if(_0xdd4069)break;_0x936229+=_0x2b7c50[_0x47d9a6(0x1c6)](_0x4def78,{'stream':!0x0});let _0x4f8164=_0x936229[_0x47d9a6(0x207)]('\x0a\x0a');_0x936229=_0x4f8164[_0x47d9a6(0x244)]()||'';for(let _0x4f8506 of _0x4f8164){let _0x31fff8=_0x4f8506['split']('\x0a')[_0x47d9a6(0x220)](_0x554604=>_0x554604['startsWith']('data:\x20'));if(!_0x31fff8)continue;try{let _0x3d3528=JSON[_0x47d9a6(0x241)](_0x31fff8[_0x47d9a6(0x203)](0x6));if(await A(_0x3d3528),_0x3d3528[_0x47d9a6(0x236)]===_0x47d9a6(0x1f6)){if(_0x1803b3=null,!_0x11854d)await m();_0x11854d=!0x1;}}catch(_0x52745b){z(_0x47d9a6(0x238)+_0x52745b);}}}z(_0x47d9a6(0x1d9));}catch(_0x4e958b){z(_0x47d9a6(0x1e5)+_0x4e958b);}if(_0x1803b3=_0x1803b3??Date['now'](),Date[_0x47d9a6(0x1be)]()-_0x1803b3>O){z(_0x47d9a6(0x1f9)+Y+_0x47d9a6(0x1f4));return;}await i(_0x4cce36),_0x4cce36=Math['min'](_0x4cce36*0x2,v);}}async function A(_0x339286){const _0x17e996=a0_0x433c2f;if(_0x339286[_0x17e996(0x236)]===_0x17e996(0x1f6)){z('SSE\x20connected\x20as\x20\x22'+p+'\x22');return;}if(_0x339286[_0x17e996(0x236)]==='new_message'){if(z(_0x17e996(0x218)+_0x339286['from']+':\x20'+_0x339286[_0x17e996(0x22b)][_0x17e996(0x203)](0x0,0x3c)),await K['notification']({'method':_0x17e996(0x1f3),'params':{'content':_0x339286[_0x17e996(0x22b)],'meta':{'sender':_0x339286['from']||'hub','sender_id':'commhub','user':_0x339286[_0x17e996(0x24f)]||_0x17e996(0x1fe),'priority':'normal'}}}),_0x339286[_0x17e996(0x1de)])await Q(_0x17e996(0x1ce),{'alias':p,'message_id':_0x339286[_0x17e996(0x1de)]});return;}if(_0x339286[_0x17e996(0x236)]===_0x17e996(0x1fd)||_0x339286[_0x17e996(0x236)]===_0x17e996(0x225)){z('←\x20'+_0x339286['type']+_0x17e996(0x1fb)+_0x339286[_0x17e996(0x234)]+'\x20priority='+(_0x339286[_0x17e996(0x1e9)]||'normal'));let _0x124433=await Q(_0x17e996(0x229),{'alias':p,'limit':0x5});if(_0x124433?.['ok']&&_0x124433[_0x17e996(0x1e6)]?.[_0x17e996(0x248)]>0x0)for(let _0x5e7e8c of _0x124433[_0x17e996(0x1e6)]){let _0x4b3781={'sender':_0x5e7e8c[_0x17e996(0x215)]||_0x17e996(0x1fe),'sender_id':'commhub','user':_0x5e7e8c[_0x17e996(0x215)]||_0x17e996(0x1fe),'task_id':_0x5e7e8c['id'],'priority':_0x5e7e8c[_0x17e996(0x1e9)]||_0x17e996(0x23c)};G[_0x17e996(0x1c7)](_0x5e7e8c['id'],_0x5e7e8c['from_session']||_0x17e996(0x1fe)),await K[_0x17e996(0x1df)]({'method':_0x17e996(0x1f3),'params':{'content':_0x5e7e8c[_0x17e996(0x1b1)],'meta':_0x4b3781}}),z(_0x17e996(0x1bb)+_0x5e7e8c['id'][_0x17e996(0x203)](0x0,0x8)+'\x20from\x20'+_0x5e7e8c[_0x17e996(0x215)]+':\x20'+_0x5e7e8c[_0x17e996(0x1b1)][_0x17e996(0x203)](0x0,0x3c)),await Q(_0x17e996(0x1ce),{'alias':p,'message_id':_0x5e7e8c['id']});}}}async function t(){const _0x15faa8=a0_0x433c2f;let _0x159ca1=new a0_0x4af890();await K[_0x15faa8(0x1ab)](_0x159ca1),z(_0x15faa8(0x227)),z(_0x15faa8(0x212)),l()[_0x15faa8(0x252)](_0x3ede06=>z(_0x15faa8(0x217)+_0x3ede06)),Q(_0x15faa8(0x1ad),{'resume_id':V,'alias':p,'status':_0x15faa8(0x237),'server':a0_0x5c6388(),'hostname':a0_0x5c6388(),'agent':_0x15faa8(0x1d0),'project_dir':process[_0x15faa8(0x21e)](),'tmux_name':j||void 0x0})['then'](()=>z(_0x15faa8(0x1e3)+p+_0x15faa8(0x1b3)+V['slice'](0x0,0x8)+')'))[_0x15faa8(0x252)](_0x2d31b8=>z('warning:\x20could\x20not\x20register:\x20'+_0x2d31b8)),setInterval(()=>{const _0x3c0b03=_0x15faa8;Q(_0x3c0b03(0x1ad),{'resume_id':V,'alias':p,'status':_0x3c0b03(0x237),'server':a0_0x5c6388(),'hostname':a0_0x5c6388(),'agent':_0x3c0b03(0x1d0),'project_dir':process['cwd'](),'tmux_name':j||void 0x0})[_0x3c0b03(0x252)](_0x58d4b8=>z('heartbeat\x20failed:\x20'+_0x58d4b8));},0x2bf20),z(_0x15faa8(0x224));}t()[a0_0x433c2f(0x252)](_0x4b25ac=>{const _0x38e8c7=a0_0x433c2f;z(_0x38e8c7(0x209)+_0x4b25ac),process['exit'](0x1);});async function b(){const _0x22a093=a0_0x433c2f;z(_0x22a093(0x216)),await Q(_0x22a093(0x1ad),{'resume_id':V,'alias':p,'status':_0x22a093(0x232),'task':_0x22a093(0x1ee)})['catch'](()=>{}),process[_0x22a093(0x1e4)](0x0);}process[a0_0x433c2f(0x20a)]['on'](a0_0x433c2f(0x22a),()=>b()),process['on'](a0_0x433c2f(0x1d1),()=>b()),process['on'](a0_0x433c2f(0x226),()=>b());var d=process['ppid'];function a0_0xb524(_0x7154d2,_0x154c93){_0x7154d2=_0x7154d2-0x1ab;const _0xc9d3f9=a0_0xc9d3();let _0xb52475=_0xc9d3f9[_0x7154d2];return _0xb52475;}if(d&&d>0x1){let h=setInterval(()=>{const _0xd1d9ec=a0_0x433c2f;if(process[_0xd1d9ec(0x222)]===0x1&&d!==0x1){z(_0xd1d9ec(0x23f)+d+_0xd1d9ec(0x24d)),b();return;}try{process[_0xd1d9ec(0x1ae)](d,0x0);}catch(_0x11fa9f){if(_0x11fa9f?.[_0xd1d9ec(0x22d)]===_0xd1d9ec(0x20d))z(_0xd1d9ec(0x1ca)+d+_0xd1d9ec(0x1d8)),b();}},0x7530);if(typeof h[a0_0x433c2f(0x24a)]===a0_0x433c2f(0x22f))h[a0_0x433c2f(0x24a)]();}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sleep2agi/agent-network",
3
- "version": "2.3.0-preview.20",
3
+ "version": "2.3.0-preview.21",
4
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",