@sleep2agi/agent-network 2.3.0-preview.6 → 2.3.0-preview.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env bun
2
- const a0_0x5753db=a0_0x4b20;(function(_0x4fee08,_0x46104e){const _0x25d465=a0_0x4b20,_0x36282a=_0x4fee08();while(!![]){try{const _0x267f8b=parseInt(_0x25d465(0x215))/0x1*(parseInt(_0x25d465(0x1e9))/0x2)+-parseInt(_0x25d465(0x1cb))/0x3+-parseInt(_0x25d465(0x1e0))/0x4+-parseInt(_0x25d465(0x1ae))/0x5*(-parseInt(_0x25d465(0x1a6))/0x6)+-parseInt(_0x25d465(0x227))/0x7+-parseInt(_0x25d465(0x1eb))/0x8+parseInt(_0x25d465(0x20a))/0x9;if(_0x267f8b===_0x46104e)break;else _0x36282a['push'](_0x36282a['shift']());}catch(_0x15d76b){_0x36282a['push'](_0x36282a['shift']());}}}(a0_0x4f36,0xf15af));import{readFileSync as a0_0x38d950,existsSync as a0_0x302ea2}from'fs';import{randomUUID as a0_0x48b480}from'crypto';import{join as a0_0x2231c0}from'path';import{hostname as a0_0x18ad52}from'os';import{execSync as a0_0x2b2ec7}from'child_process';import{Server as a0_0x5f5825}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0xddf142}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x5517e1,CallToolRequestSchema as a0_0x5f39c3}from'@modelcontextprotocol/sdk/types.js';function I(_0x312326){const _0x4e217c=a0_0x4b20;if(!a0_0x302ea2(_0x312326))return;for(let _0x549dbc of a0_0x38d950(_0x312326,_0x4e217c(0x219))[_0x4e217c(0x1e5)]('\x0a')){let _0x664018=_0x549dbc['trim']();if(!_0x664018||_0x664018[_0x4e217c(0x1e4)]('#'))continue;let _0x1958e2=_0x664018[_0x4e217c(0x1c6)]('=');if(_0x1958e2<0x0)continue;let _0x4b47d5=_0x664018[_0x4e217c(0x1c4)](0x0,_0x1958e2)[_0x4e217c(0x20d)](),_0x41e550=_0x664018[_0x4e217c(0x1c4)](_0x1958e2+0x1)[_0x4e217c(0x20d)]()['replace'](/^["']|["']$/g,'');if(!process.env[_0x4b47d5])process.env[_0x4b47d5]=_0x41e550;}}var L=process.env.HOME||'~',U=a0_0x2231c0(L,a0_0x5753db(0x1f8));I(a0_0x2231c0(U,a0_0x5753db(0x1fb)));var v=process['cwd']()['replace'](/\//g,'-');I(a0_0x2231c0(U,v,a0_0x5753db(0x1fb)));function d(){const _0x1fba36=a0_0x5753db;try{return a0_0x2b2ec7('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0x1fba36(0x219),'timeout':0x7d0})[_0x1fba36(0x20d)]();}catch{return'';}}function m(){const _0xb19e82=a0_0x5753db;try{let _0x4b7b01=a0_0x2231c0(L,'.anet',_0xb19e82(0x1b7));if(a0_0x302ea2(_0x4b7b01))return JSON[_0xb19e82(0x1a2)](a0_0x38d950(_0x4b7b01,'utf-8'));}catch{}return{};}function a0_0x4b20(_0x449e7b,_0x412d08){_0x449e7b=_0x449e7b-0x19b;const _0x4f362e=a0_0x4f36();let _0x4b2057=_0x4f362e[_0x449e7b];return _0x4b2057;}var u=m(),j=process.env.COMMHUB_URL||u['hub']||a0_0x5753db(0x1dd),f=process.env.COMMHUB_TMUX||d();function r(){const _0xf01f7e=a0_0x5753db;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0xf01f7e(0x20d)]())return process.env.COMMHUB_ALIAS[_0xf01f7e(0x20d)]();return process['stderr'][_0xf01f7e(0x207)](_0xf01f7e(0x20e)+(_0xf01f7e(0x1fd)+(f||_0xf01f7e(0x1f4))+'\x20/\x20hostname='+a0_0x18ad52()+_0xf01f7e(0x211))),_0xf01f7e(0x200)+process[_0xf01f7e(0x1d9)];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x48b480(),F=process.env.COMMHUB_TOKEN||u['token']||'';function W(_0x3b2a73){const _0x146d86=a0_0x5753db;let _0x53a6b6=new Date()[_0x146d86(0x1c7)]()[_0x146d86(0x1c4)](0x0,0x8);process[_0x146d86(0x1a4)][_0x146d86(0x207)]('['+_0x53a6b6+_0x146d86(0x21b)+_0x3b2a73+'\x0a');}function N(_0x2d200c){return new Promise(_0x26b6ed=>setTimeout(_0x26b6ed,_0x2d200c));}W('ENV:\x20URL='+j+a0_0x5753db(0x1ff)+G+a0_0x5753db(0x1c2)+K[a0_0x5753db(0x1c4)](0x0,0x8)+a0_0x5753db(0x1f3)+(f||a0_0x5753db(0x205))+a0_0x5753db(0x1e1)+process[a0_0x5753db(0x230)]()+a0_0x5753db(0x1ba)+v);function a0_0x4f36(){const _0x409be9=['set','.env','parse\x20error:\x20','would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME=','body','\x20ALIAS=','unattributed-','stdin','re-register\x20failed:\x20','failed',':\x20inbox_count=','none','broadcast','write','string','send_reply','27421272YBEwfE','Progress\x200-100','tools/call','trim','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','hub','Current\x20task\x20description','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a','\x20from\x20','/mcp','text','1857869idKQmh','/events/','→\x20injected\x20task\x20','SSE\x20fatal:\x20','utf-8','application/json',']\x20[commhub]\x20','from_session','SIGTERM','statusText','ready\x20—\x20waiting\x20for\x20events','messages','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','number','alias','message_id','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','11354693dayMvH','report_status','init\x20failed:\x20','error','get','replied','shutting\x20down,\x20reporting\x20offline...','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','normal','cwd','commhub_report_status','registered\x20as\x20\x22','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','completed','commhub_reply','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','commhub_send_task',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','starting\x20SSE\x20listener...','CommHub\x20init\x20failed:\x20','parse','Priority\x20(default:\x20normal)','stderr','exit','6rTXsdA','notification','working','SSE\x20connection\x20error:\x20','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','object','blocked','←\x20message\x20from\x20','5227535zNHaja','end','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','send_message','idle','status','notifications/claude/channel','unknown\x20tool','config.json','MCP\x20stdio\x20connected','commhub_get_all_status','\x20PROJECT_ENV=','from','priority','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','Authorization','find','2025-03-26','delete','\x20RESUME_ID=','catch','slice','\x20priority=','indexOf','toTimeString','claude-code','stringify','message','5843850sDZZcP','pop','cancelled','re-registered\x20as\x20\x22','Reply\x20text\x20/\x20result\x20summary','high','POST','no\x20response','Message\x20content','then','type','heartbeat\x20failed:\x20','Bearer\x20','Target\x20session\x20alias','pid','SIGINT','send_task','application/json,\x20text/event-stream','http://127.0.0.1:9200','commhub','SSE\x20connected\x20as\x20\x22','1129560RXssva','\x20CWD=','session\x20disconnected','getReader','startsWith','split','result','params','now','2iHmfmP','commhub-channel','8873232jKKsOU','2.0','connect','\x22\x20after\x20SSE\x20reconnect','inbox_count','commhub_send_message','content','ack_inbox','...\x20TMUX=','(none)','setRequestHandler','0.3.0','initialize','.claude/channels/commhub','decode'];a0_0x4f36=function(){return _0x409be9;};return a0_0x4f36();}var D=new Map(),x=new a0_0x5f5825({'name':a0_0x5753db(0x1ea),'version':a0_0x5753db(0x1f6)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x5753db(0x1b1),a0_0x5753db(0x226),a0_0x5753db(0x1bd),'You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','Session\x20alias:\x20'+G]['join']('\x0a')});x[a0_0x5753db(0x1f5)](a0_0x5517e1,async()=>({'tools':[{'name':'commhub_reply','description':a0_0x5753db(0x1b0),'inputSchema':{'type':a0_0x5753db(0x1ab),'properties':{'task_id':{'type':'string','description':'The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)'},'text':{'type':a0_0x5753db(0x208),'description':a0_0x5753db(0x1cf)},'status':{'type':a0_0x5753db(0x208),'enum':[a0_0x5753db(0x19b),a0_0x5753db(0x203),'cancelled','blocked',a0_0x5753db(0x22a),'in_progress'],'description':a0_0x5753db(0x221)}},'required':[a0_0x5753db(0x214)]}},{'name':a0_0x5753db(0x231),'description':a0_0x5753db(0x22e),'inputSchema':{'type':a0_0x5753db(0x1ab),'properties':{'status':{'type':a0_0x5753db(0x208),'enum':[a0_0x5753db(0x1a8),a0_0x5753db(0x1b3),'blocked',a0_0x5753db(0x22a)]},'task':{'type':a0_0x5753db(0x208),'description':a0_0x5753db(0x210)},'progress':{'type':a0_0x5753db(0x223),'description':a0_0x5753db(0x20b)}},'required':['status']}},{'name':'commhub_send_task','description':a0_0x5753db(0x1aa),'inputSchema':{'type':a0_0x5753db(0x1ab),'properties':{'alias':{'type':'string','description':a0_0x5753db(0x1d8)},'task':{'type':'string','description':'Task\x20content'},'priority':{'type':'string','enum':[a0_0x5753db(0x1d0),a0_0x5753db(0x22f),'low'],'description':a0_0x5753db(0x1a3)}},'required':[a0_0x5753db(0x224),'task']}},{'name':a0_0x5753db(0x1f0),'description':a0_0x5753db(0x19d),'inputSchema':{'type':a0_0x5753db(0x1ab),'properties':{'alias':{'type':a0_0x5753db(0x208),'description':a0_0x5753db(0x1d8)},'message':{'type':a0_0x5753db(0x208),'description':a0_0x5753db(0x1d3)}},'required':[a0_0x5753db(0x224),'message']}},{'name':'commhub_get_all_status','description':a0_0x5753db(0x233),'inputSchema':{'type':a0_0x5753db(0x1ab),'properties':{}}}]}));async function Y(_0x1ca9c4,_0x178de7){const _0x1210b0=a0_0x5753db;let _0x1effd0=await fetch(j+_0x1210b0(0x213),{'method':'POST','headers':{'Content-Type':_0x1210b0(0x21a),'Accept':_0x1210b0(0x1dc),...F?{'Authorization':_0x1210b0(0x1d7)+F}:{}},'body':JSON[_0x1210b0(0x1c9)]({'jsonrpc':_0x1210b0(0x1ec),'id':0x1,'method':_0x1210b0(0x1f7),'params':{'protocolVersion':_0x1210b0(0x1c0),'capabilities':{},'clientInfo':{'name':_0x1210b0(0x1ea),'version':_0x1210b0(0x1f6)}}})});if(!_0x1effd0['ok']){let _0x1eb23f=await _0x1effd0[_0x1210b0(0x214)]();return W(_0x1210b0(0x1a1)+_0x1effd0[_0x1210b0(0x1b4)]+'\x20'+_0x1eb23f['slice'](0x0,0x64)),{'ok':!0x1,'error':_0x1210b0(0x229)+_0x1effd0[_0x1210b0(0x1b4)]};}await _0x1effd0[_0x1210b0(0x214)]();let _0x2dde72=(await(await fetch(j+'/mcp',{'method':_0x1210b0(0x1d1),'headers':{'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream',...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON[_0x1210b0(0x1c9)]({'jsonrpc':_0x1210b0(0x1ec),'id':0x2,'method':_0x1210b0(0x20c),'params':{'name':_0x1ca9c4,'arguments':_0x178de7}})}))[_0x1210b0(0x214)]())['split']('\x0a')[_0x1210b0(0x1bf)](_0x14c8b3=>_0x14c8b3[_0x1210b0(0x1e4)]('data:\x20'));if(_0x2dde72){let _0x4075f7=JSON['parse'](_0x2dde72[_0x1210b0(0x1c4)](0x6));return _0x4075f7?.[_0x1210b0(0x1e6)]?.['content']?.[0x0]?.['text']?JSON[_0x1210b0(0x1a2)](_0x4075f7[_0x1210b0(0x1e6)][_0x1210b0(0x1f1)][0x0][_0x1210b0(0x214)]):_0x4075f7;}return{'ok':!0x1,'error':_0x1210b0(0x1d2)};}x[a0_0x5753db(0x1f5)](a0_0x5f39c3,async _0x4443e6=>{const _0x30e643=a0_0x5753db;let {name:_0x5329c0,arguments:_0x29bbc7}=_0x4443e6[_0x30e643(0x1e7)];if(_0x5329c0===_0x30e643(0x19c)){let {task_id:_0x135ca8,text:_0x20b32d,status:_0x388bdf}=_0x29bbc7;if(_0x388bdf===_0x30e643(0x19b)||_0x388bdf===_0x30e643(0x203)||_0x388bdf===_0x30e643(0x1cd)){let _0x236199=_0x388bdf===_0x30e643(0x19b)?_0x30e643(0x22c):_0x388bdf,_0x19317b=_0x135ca8?D[_0x30e643(0x22b)](_0x135ca8)||_0x30e643(0x20f):_0x30e643(0x20f),_0xf8750d=await Y(_0x30e643(0x209),{'alias':_0x19317b,'text':_0x20b32d,'in_reply_to':_0x135ca8||void 0x0,'status':_0x236199,'from_session':G});if(_0x135ca8)D[_0x30e643(0x1c1)](_0x135ca8);return{'content':[{'type':'text','text':JSON[_0x30e643(0x1c9)](_0xf8750d)}]};}let _0x44b1d3=await Y(_0x30e643(0x228),{'resume_id':K,'alias':G,'status':_0x388bdf==='blocked'?_0x30e643(0x1ac):_0x388bdf===_0x30e643(0x22a)?_0x30e643(0x22a):_0x30e643(0x1a8),'task':_0x20b32d[_0x30e643(0x1c4)](0x0,0xc8),'output':_0x20b32d});return{'content':[{'type':_0x30e643(0x214),'text':JSON[_0x30e643(0x1c9)](_0x44b1d3)}]};}if(_0x5329c0===_0x30e643(0x231)){let {status:_0x2a9525,task:_0x18d02c,progress:_0x2753b3}=_0x29bbc7,_0x3b9082=await Y(_0x30e643(0x228),{'resume_id':K,'alias':G,'status':_0x2a9525,'task':_0x18d02c,'progress':_0x2753b3});return{'content':[{'type':_0x30e643(0x214),'text':JSON[_0x30e643(0x1c9)](_0x3b9082)}]};}if(_0x5329c0===_0x30e643(0x19e)){let {alias:_0x490cc1,task:_0x44f237,priority:_0x327cad}=_0x29bbc7,_0x2d31e6=await Y(_0x30e643(0x1db),{'alias':_0x490cc1,'task':_0x44f237,'priority':_0x327cad||'normal','from_session':G});return{'content':[{'type':'text','text':JSON[_0x30e643(0x1c9)](_0x2d31e6)}]};}if(_0x5329c0===_0x30e643(0x1f0)){let {alias:_0x3a1f32,message:_0x8d493c}=_0x29bbc7,_0x5a33bd=await Y(_0x30e643(0x1b2),{'alias':_0x3a1f32,'message':_0x8d493c,'from_session':G});return{'content':[{'type':_0x30e643(0x214),'text':JSON[_0x30e643(0x1c9)](_0x5a33bd)}]};}if(_0x5329c0===_0x30e643(0x1b9)){let _0xd5e4d6=await Y('get_all_status',{});return{'content':[{'type':'text','text':JSON['stringify'](_0xd5e4d6)}]};}return{'content':[{'type':_0x30e643(0x214),'text':JSON[_0x30e643(0x1c9)]({'error':_0x30e643(0x1b6)})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x132a07=a0_0x5753db;try{await Y(_0x132a07(0x228),{'resume_id':K,'alias':G,'status':_0x132a07(0x1b3),'server':a0_0x18ad52(),'hostname':a0_0x18ad52(),'agent':_0x132a07(0x1c8),'project_dir':process['cwd'](),'tmux_name':f||void 0x0}),W(_0x132a07(0x1ce)+G+_0x132a07(0x1ee));}catch(_0x361265){W(_0x132a07(0x202)+_0x361265);}}async function o(){const _0x205736=a0_0x5753db;let _0x2f29bd=j+_0x205736(0x216)+encodeURIComponent(G),_0x59293d={};if(F)_0x59293d[_0x205736(0x1be)]='Bearer\x20'+F;W('connecting\x20to\x20'+_0x2f29bd);let _0x5b237e=O,_0x568cb0=!0x0,_0x5948fb=null;while(!0x0){try{let _0x1b71e0=await fetch(_0x2f29bd,{'headers':_0x59293d});if(!_0x1b71e0['ok']){if(W('SSE\x20error:\x20'+_0x1b71e0[_0x205736(0x1b4)]+'\x20'+_0x1b71e0[_0x205736(0x21e)]),_0x5948fb=_0x5948fb??Date[_0x205736(0x1e8)](),Date[_0x205736(0x1e8)]()-_0x5948fb>T){W(_0x205736(0x222)+j+_0x205736(0x19f));return;}await N(_0x5b237e),_0x5b237e=Math['min'](_0x5b237e*0x2,R);continue;}let _0xc3c5ca=_0x1b71e0[_0x205736(0x1fe)][_0x205736(0x1e3)](),_0x575cfa=new TextDecoder(),_0x52adcf='';_0x5b237e=O;while(!0x0){let {done:_0x485c4c,value:_0x219296}=await _0xc3c5ca['read']();if(_0x485c4c)break;_0x52adcf+=_0x575cfa[_0x205736(0x1f9)](_0x219296,{'stream':!0x0});let _0x3d575d=_0x52adcf['split']('\x0a\x0a');_0x52adcf=_0x3d575d[_0x205736(0x1cc)]()||'';for(let _0x4c44e1 of _0x3d575d){let _0x555ec6=_0x4c44e1[_0x205736(0x1e5)]('\x0a')[_0x205736(0x1bf)](_0x22cf8f=>_0x22cf8f[_0x205736(0x1e4)]('data:\x20'));if(!_0x555ec6)continue;try{let _0x3db402=JSON[_0x205736(0x1a2)](_0x555ec6['slice'](0x6));if(await a(_0x3db402),_0x3db402['type']==='connected'){if(_0x5948fb=null,!_0x568cb0)await l();_0x568cb0=!0x1;}}catch(_0x36ee22){W(_0x205736(0x1fc)+_0x36ee22);}}}W('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x36d107){W(_0x205736(0x1a9)+_0x36d107);}if(_0x5948fb=_0x5948fb??Date[_0x205736(0x1e8)](),Date[_0x205736(0x1e8)]()-_0x5948fb>T){W(_0x205736(0x222)+j+_0x205736(0x19f));return;}await N(_0x5b237e),_0x5b237e=Math['min'](_0x5b237e*0x2,R);}}async function a(_0x3fb329){const _0x15f9f6=a0_0x5753db;if(_0x3fb329[_0x15f9f6(0x1d5)]==='connected'){W(_0x15f9f6(0x1df)+G+'\x22');return;}if(_0x3fb329[_0x15f9f6(0x1d5)]==='new_message'){if(W(_0x15f9f6(0x1ad)+_0x3fb329[_0x15f9f6(0x1bb)]+':\x20'+_0x3fb329[_0x15f9f6(0x1ca)][_0x15f9f6(0x1c4)](0x0,0x3c)),await x[_0x15f9f6(0x1a7)]({'method':_0x15f9f6(0x1b5),'params':{'content':_0x3fb329['message'],'meta':{'sender':_0x3fb329[_0x15f9f6(0x1bb)]||_0x15f9f6(0x20f),'sender_id':_0x15f9f6(0x1de),'user':_0x3fb329['from']||_0x15f9f6(0x20f),'priority':_0x15f9f6(0x22f)}}}),_0x3fb329[_0x15f9f6(0x225)])await Y(_0x15f9f6(0x1f2),{'alias':G,'message_id':_0x3fb329[_0x15f9f6(0x225)]});return;}if(_0x3fb329[_0x15f9f6(0x1d5)]==='new_task'||_0x3fb329[_0x15f9f6(0x1d5)]===_0x15f9f6(0x206)){W('←\x20'+_0x3fb329['type']+_0x15f9f6(0x204)+_0x3fb329[_0x15f9f6(0x1ef)]+_0x15f9f6(0x1c5)+(_0x3fb329[_0x15f9f6(0x1bc)]||'normal'));let _0x1b9c87=await Y('get_inbox',{'alias':G,'limit':0x5});if(_0x1b9c87?.['ok']&&_0x1b9c87[_0x15f9f6(0x220)]?.['length']>0x0)for(let _0x243513 of _0x1b9c87[_0x15f9f6(0x220)]){let _0x2cd431={'sender':_0x243513[_0x15f9f6(0x21c)]||_0x15f9f6(0x20f),'sender_id':_0x15f9f6(0x1de),'user':_0x243513[_0x15f9f6(0x21c)]||'hub','task_id':_0x243513['id'],'priority':_0x243513[_0x15f9f6(0x1bc)]||_0x15f9f6(0x22f)};D[_0x15f9f6(0x1fa)](_0x243513['id'],_0x243513[_0x15f9f6(0x21c)]||_0x15f9f6(0x20f)),await x[_0x15f9f6(0x1a7)]({'method':_0x15f9f6(0x1b5),'params':{'content':_0x243513['content'],'meta':_0x2cd431}}),W(_0x15f9f6(0x217)+_0x243513['id'][_0x15f9f6(0x1c4)](0x0,0x8)+_0x15f9f6(0x212)+_0x243513[_0x15f9f6(0x21c)]+':\x20'+_0x243513[_0x15f9f6(0x1f1)][_0x15f9f6(0x1c4)](0x0,0x3c)),await Y(_0x15f9f6(0x1f2),{'alias':G,'message_id':_0x243513['id']});}}}async function n(){const _0x1eba0d=a0_0x5753db;let _0x544209=new a0_0xddf142();await x[_0x1eba0d(0x1ed)](_0x544209),W(_0x1eba0d(0x1b8)),W(_0x1eba0d(0x1a0)),o()[_0x1eba0d(0x1c3)](_0x4faf63=>W(_0x1eba0d(0x218)+_0x4faf63)),Y('report_status',{'resume_id':K,'alias':G,'status':_0x1eba0d(0x1b3),'server':a0_0x18ad52(),'hostname':a0_0x18ad52(),'agent':_0x1eba0d(0x1c8),'project_dir':process[_0x1eba0d(0x230)](),'tmux_name':f||void 0x0})[_0x1eba0d(0x1d4)](()=>W(_0x1eba0d(0x232)+G+'\x22\x20('+K[_0x1eba0d(0x1c4)](0x0,0x8)+')'))[_0x1eba0d(0x1c3)](_0x3d7dbc=>W('warning:\x20could\x20not\x20register:\x20'+_0x3d7dbc)),setInterval(()=>{const _0xac38cf=_0x1eba0d;Y(_0xac38cf(0x228),{'resume_id':K,'alias':G,'status':_0xac38cf(0x1b3),'server':a0_0x18ad52(),'hostname':a0_0x18ad52(),'agent':_0xac38cf(0x1c8),'project_dir':process[_0xac38cf(0x230)](),'tmux_name':f||void 0x0})[_0xac38cf(0x1c3)](_0xf57ef3=>W(_0xac38cf(0x1d6)+_0xf57ef3));},0x2bf20),W(_0x1eba0d(0x21f));}n()['catch'](_0x169d1e=>{W('fatal:\x20'+_0x169d1e),process['exit'](0x1);});async function b(){const _0x43e490=a0_0x5753db;W(_0x43e490(0x22d)),await Y('report_status',{'resume_id':K,'alias':G,'status':'offline','task':_0x43e490(0x1e2)})[_0x43e490(0x1c3)](()=>{}),process[_0x43e490(0x1a5)](0x0);}process[a0_0x5753db(0x201)]['on'](a0_0x5753db(0x1af),()=>b()),process['on'](a0_0x5753db(0x21d),()=>b()),process['on'](a0_0x5753db(0x1da),()=>b());
2
+ const a0_0x5a5139=a0_0x3393;(function(_0x1e2f16,_0x52f757){const _0x249853=a0_0x3393,_0x3f015d=_0x1e2f16();while(!![]){try{const _0x2b23b2=-parseInt(_0x249853(0x95))/0x1+-parseInt(_0x249853(0xae))/0x2+-parseInt(_0x249853(0xcb))/0x3*(-parseInt(_0x249853(0xaa))/0x4)+-parseInt(_0x249853(0xf8))/0x5*(-parseInt(_0x249853(0xd0))/0x6)+-parseInt(_0x249853(0xd6))/0x7*(-parseInt(_0x249853(0x10a))/0x8)+parseInt(_0x249853(0xe4))/0x9*(parseInt(_0x249853(0x115))/0xa)+-parseInt(_0x249853(0xd2))/0xb;if(_0x2b23b2===_0x52f757)break;else _0x3f015d['push'](_0x3f015d['shift']());}catch(_0x2c030c){_0x3f015d['push'](_0x3f015d['shift']());}}}(a0_0x220a,0x1ac5b));import{readFileSync as a0_0xadca91,existsSync as a0_0xff2c32}from'fs';import{randomUUID as a0_0x272fe1}from'crypto';import{join as a0_0x562c7f}from'path';import{hostname as a0_0x45ab54}from'os';import{execSync as a0_0x12d9ac}from'child_process';function a0_0x3393(_0x509a23,_0x4f1e8e){_0x509a23=_0x509a23-0x87;const _0x220ad3=a0_0x220a();let _0x339342=_0x220ad3[_0x509a23];return _0x339342;}import{Server as a0_0x9c4d40}from'@modelcontextprotocol/sdk/server/index.js';function a0_0x220a(){const _0xccebb8=['/mcp','ack_inbox','startsWith','string','.anet','stderr','POST','find','re-registered\x20as\x20\x22','message_id','Reply\x20text\x20/\x20result\x20summary','MCP\x20stdio\x20connected','indexOf','702360whqQOD',']\x20[commhub]\x20','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','content','get_inbox','no\x20response','result','join','unattributed-','CommHub\x20init\x20failed:\x20','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','cancelled','Priority\x20(default:\x20normal)','tmux\x20display-message\x20-p\x20\x27#S\x27','from','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','commhub-channel','then','Target\x20session\x20alias','split','1068970llzPeQ','heartbeat\x20failed:\x20','commhub','Authorization','cwd','blocked','stringify','replied','messages','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','Bearer\x20','application/json','SIGINT','token','config.json','write','SSE\x20error:\x20','notifications/claude/channel','496bHfwaW','length','\x20RESUME_ID=','text','commhub_report_status','getReader','Task\x20content','error','stdin','delete','report_status','20gNvJIQ','idle','working','application/json,\x20text/event-stream','fatal:\x20','get_all_status','normal','number','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','session\x20disconnected','0.3.0','exit','new_message','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','high','SSE\x20stream\x20ended,\x20reconnecting...','none','parse\x20error:\x20','trim','\x20ALIAS=','message','connected','broadcast','\x22\x20(','commhub_send_message','Current\x20task\x20description','commhub_reply','66086jwFGLg','connecting\x20to\x20','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','end','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','body','.env','utf-8','pid','min','data:\x20','tools/call','connect','commhub_send_task','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a','init\x20failed:\x20','get','type','replace','task','ENV:\x20URL=','21832pNHNpA','...\x20TMUX=','registered\x20as\x20\x22','send_message','423596HJFfEi','from_session','re-register\x20failed:\x20','new_task',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','setRequestHandler','commhub_get_all_status','read','2025-03-26','initialize','unknown\x20tool','SSE\x20connected\x20as\x20\x22','shutting\x20down,\x20reporting\x20offline...','claude-code','status','now','2.0','slice','decode','completed','/events/','params','notification','hub','failed','\x20PROJECT_ENV=','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','offline','SSE\x20fatal:\x20','99AwzAid','warning:\x20could\x20not\x20register:\x20','alias','object','\x22\x20after\x20SSE\x20reconnect','6OMbddF','catch','2497539XsvWJQ','priority','parse','\x20from\x20','7294naoufo'];a0_0x220a=function(){return _0xccebb8;};return a0_0x220a();}import{StdioServerTransport as a0_0x4dcb25}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x919db3,CallToolRequestSchema as a0_0x2fd7eb}from'@modelcontextprotocol/sdk/types.js';function I(_0x168758){const _0x1391f9=a0_0x3393;if(!a0_0xff2c32(_0x168758))return;for(let _0x1fff7d of a0_0xadca91(_0x168758,_0x1391f9(0x9c))[_0x1391f9(0xf7)]('\x0a')){let _0x4bfd90=_0x1fff7d['trim']();if(!_0x4bfd90||_0x4bfd90[_0x1391f9(0xd9)]('#'))continue;let _0x15e5d3=_0x4bfd90[_0x1391f9(0xe3)]('=');if(_0x15e5d3<0x0)continue;let _0xb8bbf=_0x4bfd90['slice'](0x0,_0x15e5d3)[_0x1391f9(0x8c)](),_0x88c72d=_0x4bfd90[_0x1391f9(0xbf)](_0x15e5d3+0x1)[_0x1391f9(0x8c)]()[_0x1391f9(0xa7)](/^["']|["']$/g,'');if(!process.env[_0xb8bbf])process.env[_0xb8bbf]=_0x88c72d;}}var L=process.env.HOME||'~',U=a0_0x562c7f(L,'.claude/channels/commhub');I(a0_0x562c7f(U,a0_0x5a5139(0x9b)));var v=process[a0_0x5a5139(0xfc)]()['replace'](/\//g,'-');I(a0_0x562c7f(U,v,'.env'));function d(){const _0x566db3=a0_0x5a5139;try{return a0_0x12d9ac(_0x566db3(0xf1),{'encoding':_0x566db3(0x9c),'timeout':0x7d0})[_0x566db3(0x8c)]();}catch{return'';}}function m(){const _0x3315aa=a0_0x5a5139;try{let _0x3417a6=a0_0x562c7f(L,_0x3315aa(0xdb),_0x3315aa(0x106));if(a0_0xff2c32(_0x3417a6))return JSON['parse'](a0_0xadca91(_0x3417a6,_0x3315aa(0x9c)));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u[a0_0x5a5139(0xc5)]||'http://127.0.0.1:9200',f=process.env.COMMHUB_TMUX||d();function r(){const _0x5dbdb4=a0_0x5a5139;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x5dbdb4(0x8c)]())return process.env.COMMHUB_ALIAS[_0x5dbdb4(0x8c)]();return process['stderr'][_0x5dbdb4(0x107)]('[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20'+('would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME='+(f||'(none)')+'\x20/\x20hostname='+a0_0x45ab54()+_0x5dbdb4(0xa3))),_0x5dbdb4(0xec)+process[_0x5dbdb4(0x9d)];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x272fe1(),F=process.env.COMMHUB_TOKEN||u[a0_0x5a5139(0x105)]||'';function W(_0x296372){const _0x17553c=a0_0x5a5139;let _0x2e8724=new Date()['toTimeString']()['slice'](0x0,0x8);process[_0x17553c(0xdc)][_0x17553c(0x107)]('['+_0x2e8724+_0x17553c(0xe5)+_0x296372+'\x0a');}function N(_0x27250b){return new Promise(_0x35e9fb=>setTimeout(_0x35e9fb,_0x27250b));}W(a0_0x5a5139(0xa9)+j+a0_0x5a5139(0x8d)+G+a0_0x5a5139(0x10c)+K[a0_0x5a5139(0xbf)](0x0,0x8)+a0_0x5a5139(0xab)+(f||a0_0x5a5139(0x8a))+'\x20CWD='+process[a0_0x5a5139(0xfc)]()+a0_0x5a5139(0xc7)+v);var D=new Map(),x=new a0_0x9c4d40({'name':a0_0x5a5139(0xf4),'version':a0_0x5a5139(0x11f)},{'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.',a0_0x5a5139(0xf3),a0_0x5a5139(0xee),'Session\x20alias:\x20'+G][a0_0x5a5139(0xeb)]('\x0a')});x[a0_0x5a5139(0xb3)](a0_0x919db3,async()=>({'tools':[{'name':a0_0x5a5139(0x94),'description':a0_0x5a5139(0x101),'inputSchema':{'type':'object','properties':{'task_id':{'type':a0_0x5a5139(0xda),'description':a0_0x5a5139(0x99)},'text':{'type':a0_0x5a5139(0xda),'description':a0_0x5a5139(0xe1)},'status':{'type':a0_0x5a5139(0xda),'enum':[a0_0x5a5139(0xc1),a0_0x5a5139(0xc6),a0_0x5a5139(0xef),a0_0x5a5139(0xfd),a0_0x5a5139(0x111),'in_progress'],'description':a0_0x5a5139(0xc8)}},'required':[a0_0x5a5139(0x10d)]}},{'name':a0_0x5a5139(0x10e),'description':a0_0x5a5139(0x97),'inputSchema':{'type':a0_0x5a5139(0xce),'properties':{'status':{'type':'string','enum':['working',a0_0x5a5139(0x116),a0_0x5a5139(0xfd),'error']},'task':{'type':a0_0x5a5139(0xda),'description':a0_0x5a5139(0x93)},'progress':{'type':a0_0x5a5139(0x11c),'description':'Progress\x200-100'}},'required':[a0_0x5a5139(0xbc)]}},{'name':a0_0x5a5139(0xa2),'description':a0_0x5a5139(0xe6),'inputSchema':{'type':a0_0x5a5139(0xce),'properties':{'alias':{'type':a0_0x5a5139(0xda),'description':a0_0x5a5139(0xf6)},'task':{'type':a0_0x5a5139(0xda),'description':a0_0x5a5139(0x110)},'priority':{'type':'string','enum':[a0_0x5a5139(0x88),a0_0x5a5139(0x11b),'low'],'description':a0_0x5a5139(0xf0)}},'required':[a0_0x5a5139(0xcd),a0_0x5a5139(0xa8)]}},{'name':a0_0x5a5139(0x92),'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':'string','description':'Target\x20session\x20alias'},'message':{'type':a0_0x5a5139(0xda),'description':'Message\x20content'}},'required':[a0_0x5a5139(0xcd),'message']}},{'name':a0_0x5a5139(0xb4),'description':a0_0x5a5139(0x11d),'inputSchema':{'type':'object','properties':{}}}]}));async function Y(_0x243076,_0x440c08){const _0x3a1a4e=a0_0x5a5139;let _0x4dde68=await fetch(j+_0x3a1a4e(0xd7),{'method':_0x3a1a4e(0xdd),'headers':{'Content-Type':_0x3a1a4e(0x103),'Accept':_0x3a1a4e(0x118),...F?{'Authorization':_0x3a1a4e(0x102)+F}:{}},'body':JSON[_0x3a1a4e(0xfe)]({'jsonrpc':_0x3a1a4e(0xbe),'id':0x1,'method':_0x3a1a4e(0xb7),'params':{'protocolVersion':_0x3a1a4e(0xb6),'capabilities':{},'clientInfo':{'name':_0x3a1a4e(0xf4),'version':'0.3.0'}}})});if(!_0x4dde68['ok']){let _0x12c9d8=await _0x4dde68[_0x3a1a4e(0x10d)]();return W(_0x3a1a4e(0xed)+_0x4dde68['status']+'\x20'+_0x12c9d8[_0x3a1a4e(0xbf)](0x0,0x64)),{'ok':!0x1,'error':_0x3a1a4e(0xa4)+_0x4dde68[_0x3a1a4e(0xbc)]};}await _0x4dde68[_0x3a1a4e(0x10d)]();let _0x54ef17=(await(await fetch(j+_0x3a1a4e(0xd7),{'method':_0x3a1a4e(0xdd),'headers':{'Content-Type':_0x3a1a4e(0x103),'Accept':_0x3a1a4e(0x118),...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON[_0x3a1a4e(0xfe)]({'jsonrpc':'2.0','id':0x2,'method':_0x3a1a4e(0xa0),'params':{'name':_0x243076,'arguments':_0x440c08}})}))[_0x3a1a4e(0x10d)]())[_0x3a1a4e(0xf7)]('\x0a')[_0x3a1a4e(0xde)](_0x34b55e=>_0x34b55e[_0x3a1a4e(0xd9)](_0x3a1a4e(0x9f)));if(_0x54ef17){let _0x154d28=JSON[_0x3a1a4e(0xd4)](_0x54ef17[_0x3a1a4e(0xbf)](0x6));return _0x154d28?.[_0x3a1a4e(0xea)]?.[_0x3a1a4e(0xe7)]?.[0x0]?.[_0x3a1a4e(0x10d)]?JSON[_0x3a1a4e(0xd4)](_0x154d28[_0x3a1a4e(0xea)]['content'][0x0][_0x3a1a4e(0x10d)]):_0x154d28;}return{'ok':!0x1,'error':_0x3a1a4e(0xe9)};}x[a0_0x5a5139(0xb3)](a0_0x2fd7eb,async _0x187051=>{const _0x1b7b14=a0_0x5a5139;let {name:_0x4f20fa,arguments:_0x34e732}=_0x187051[_0x1b7b14(0xc3)];if(_0x4f20fa===_0x1b7b14(0x94)){let {task_id:_0x156a95,text:_0x509eca,status:_0x544439}=_0x34e732;if(_0x544439===_0x1b7b14(0xc1)||_0x544439===_0x1b7b14(0xc6)||_0x544439===_0x1b7b14(0xef)){let _0x2ff2bb=_0x544439===_0x1b7b14(0xc1)?_0x1b7b14(0xff):_0x544439,_0x17f7a1=_0x156a95?D[_0x1b7b14(0xa5)](_0x156a95)||'hub':_0x1b7b14(0xc5),_0x5307cb=await Y('send_reply',{'alias':_0x17f7a1,'text':_0x509eca,'in_reply_to':_0x156a95||void 0x0,'status':_0x2ff2bb,'from_session':G});if(_0x156a95)D[_0x1b7b14(0x113)](_0x156a95);return{'content':[{'type':_0x1b7b14(0x10d),'text':JSON[_0x1b7b14(0xfe)](_0x5307cb)}]};}let _0x4bd6e3=await Y(_0x1b7b14(0x114),{'resume_id':K,'alias':G,'status':_0x544439===_0x1b7b14(0xfd)?'blocked':_0x544439===_0x1b7b14(0x111)?_0x1b7b14(0x111):_0x1b7b14(0x117),'task':_0x509eca[_0x1b7b14(0xbf)](0x0,0xc8),'output':_0x509eca});return{'content':[{'type':'text','text':JSON['stringify'](_0x4bd6e3)}]};}if(_0x4f20fa==='commhub_report_status'){let {status:_0x5066bb,task:_0x19343e,progress:_0xf542a0}=_0x34e732,_0x153653=await Y(_0x1b7b14(0x114),{'resume_id':K,'alias':G,'status':_0x5066bb,'task':_0x19343e,'progress':_0xf542a0});return{'content':[{'type':'text','text':JSON['stringify'](_0x153653)}]};}if(_0x4f20fa==='commhub_send_task'){let {alias:_0x8c4803,task:_0x2d2aa1,priority:_0x13e0d0}=_0x34e732,_0x539890=await Y('send_task',{'alias':_0x8c4803,'task':_0x2d2aa1,'priority':_0x13e0d0||_0x1b7b14(0x11b),'from_session':G});return{'content':[{'type':_0x1b7b14(0x10d),'text':JSON[_0x1b7b14(0xfe)](_0x539890)}]};}if(_0x4f20fa===_0x1b7b14(0x92)){let {alias:_0x5f42f3,message:_0x4786a7}=_0x34e732,_0x34d345=await Y(_0x1b7b14(0xad),{'alias':_0x5f42f3,'message':_0x4786a7,'from_session':G});return{'content':[{'type':_0x1b7b14(0x10d),'text':JSON[_0x1b7b14(0xfe)](_0x34d345)}]};}if(_0x4f20fa===_0x1b7b14(0xb4)){let _0x1e08a3=await Y(_0x1b7b14(0x11a),{});return{'content':[{'type':_0x1b7b14(0x10d),'text':JSON['stringify'](_0x1e08a3)}]};}return{'content':[{'type':_0x1b7b14(0x10d),'text':JSON['stringify']({'error':_0x1b7b14(0xb8)})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x2e03a7=a0_0x5a5139;try{await Y(_0x2e03a7(0x114),{'resume_id':K,'alias':G,'status':_0x2e03a7(0x116),'server':a0_0x45ab54(),'hostname':a0_0x45ab54(),'agent':_0x2e03a7(0xbb),'project_dir':process['cwd'](),'tmux_name':f||void 0x0}),W(_0x2e03a7(0xdf)+G+_0x2e03a7(0xcf));}catch(_0x26fd5a){W(_0x2e03a7(0xb0)+_0x26fd5a);}}async function o(){const _0x422f39=a0_0x5a5139;let _0x4bbbe3=j+_0x422f39(0xc2)+encodeURIComponent(G),_0x48aef2={};if(F)_0x48aef2[_0x422f39(0xfb)]=_0x422f39(0x102)+F;W(_0x422f39(0x96)+_0x4bbbe3);let _0x4fc5d2=O,_0x39b814=!0x0,_0x1895db=null;while(!0x0){try{let _0x2f8de9=await fetch(_0x4bbbe3,{'headers':_0x48aef2});if(!_0x2f8de9['ok']){if(W(_0x422f39(0x108)+_0x2f8de9['status']+'\x20'+_0x2f8de9['statusText']),_0x1895db=_0x1895db??Date[_0x422f39(0xbd)](),Date[_0x422f39(0xbd)]()-_0x1895db>T){W(_0x422f39(0x87)+j+_0x422f39(0xb2));return;}await N(_0x4fc5d2),_0x4fc5d2=Math[_0x422f39(0x9e)](_0x4fc5d2*0x2,R);continue;}let _0x496223=_0x2f8de9[_0x422f39(0x9a)][_0x422f39(0x10f)](),_0x2c4b12=new TextDecoder(),_0x1cf6af='';_0x4fc5d2=O;while(!0x0){let {done:_0x41523b,value:_0x45b259}=await _0x496223[_0x422f39(0xb5)]();if(_0x41523b)break;_0x1cf6af+=_0x2c4b12[_0x422f39(0xc0)](_0x45b259,{'stream':!0x0});let _0x46a5e1=_0x1cf6af[_0x422f39(0xf7)]('\x0a\x0a');_0x1cf6af=_0x46a5e1['pop']()||'';for(let _0x161083 of _0x46a5e1){let _0x258bf3=_0x161083[_0x422f39(0xf7)]('\x0a')['find'](_0x4717aa=>_0x4717aa[_0x422f39(0xd9)](_0x422f39(0x9f)));if(!_0x258bf3)continue;try{let _0x9cfea2=JSON[_0x422f39(0xd4)](_0x258bf3[_0x422f39(0xbf)](0x6));if(await a(_0x9cfea2),_0x9cfea2[_0x422f39(0xa6)]===_0x422f39(0x8f)){if(_0x1895db=null,!_0x39b814)await l();_0x39b814=!0x1;}}catch(_0x5008d6){W(_0x422f39(0x8b)+_0x5008d6);}}}W(_0x422f39(0x89));}catch(_0x55f286){W('SSE\x20connection\x20error:\x20'+_0x55f286);}if(_0x1895db=_0x1895db??Date[_0x422f39(0xbd)](),Date['now']()-_0x1895db>T){W('SSE\x20连续\x20>1h\x20连不上\x20hub\x20('+j+_0x422f39(0xb2));return;}await N(_0x4fc5d2),_0x4fc5d2=Math[_0x422f39(0x9e)](_0x4fc5d2*0x2,R);}}async function a(_0x3c8af4){const _0x51aace=a0_0x5a5139;if(_0x3c8af4[_0x51aace(0xa6)]==='connected'){W(_0x51aace(0xb9)+G+'\x22');return;}if(_0x3c8af4[_0x51aace(0xa6)]===_0x51aace(0x121)){if(W('←\x20message\x20from\x20'+_0x3c8af4[_0x51aace(0xf2)]+':\x20'+_0x3c8af4[_0x51aace(0x8e)][_0x51aace(0xbf)](0x0,0x3c)),await x[_0x51aace(0xc4)]({'method':_0x51aace(0x109),'params':{'content':_0x3c8af4[_0x51aace(0x8e)],'meta':{'sender':_0x3c8af4[_0x51aace(0xf2)]||_0x51aace(0xc5),'sender_id':_0x51aace(0xfa),'user':_0x3c8af4[_0x51aace(0xf2)]||_0x51aace(0xc5),'priority':_0x51aace(0x11b)}}}),_0x3c8af4[_0x51aace(0xe0)])await Y(_0x51aace(0xd8),{'alias':G,'message_id':_0x3c8af4[_0x51aace(0xe0)]});return;}if(_0x3c8af4[_0x51aace(0xa6)]===_0x51aace(0xb1)||_0x3c8af4[_0x51aace(0xa6)]===_0x51aace(0x90)){W('←\x20'+_0x3c8af4['type']+':\x20inbox_count='+_0x3c8af4['inbox_count']+'\x20priority='+(_0x3c8af4[_0x51aace(0xd3)]||_0x51aace(0x11b)));let _0x270c87=await Y(_0x51aace(0xe8),{'alias':G,'limit':0x5});if(_0x270c87?.['ok']&&_0x270c87[_0x51aace(0x100)]?.[_0x51aace(0x10b)]>0x0)for(let _0x4d13d1 of _0x270c87[_0x51aace(0x100)]){let _0x5d04bf={'sender':_0x4d13d1[_0x51aace(0xaf)]||_0x51aace(0xc5),'sender_id':'commhub','user':_0x4d13d1[_0x51aace(0xaf)]||'hub','task_id':_0x4d13d1['id'],'priority':_0x4d13d1[_0x51aace(0xd3)]||_0x51aace(0x11b)};D['set'](_0x4d13d1['id'],_0x4d13d1[_0x51aace(0xaf)]||'hub'),await x[_0x51aace(0xc4)]({'method':_0x51aace(0x109),'params':{'content':_0x4d13d1['content'],'meta':_0x5d04bf}}),W('→\x20injected\x20task\x20'+_0x4d13d1['id'][_0x51aace(0xbf)](0x0,0x8)+_0x51aace(0xd5)+_0x4d13d1[_0x51aace(0xaf)]+':\x20'+_0x4d13d1[_0x51aace(0xe7)]['slice'](0x0,0x3c)),await Y('ack_inbox',{'alias':G,'message_id':_0x4d13d1['id']});}}}async function n(){const _0x196f36=a0_0x5a5139;let _0x292785=new a0_0x4dcb25();await x[_0x196f36(0xa1)](_0x292785),W(_0x196f36(0xe2)),W('starting\x20SSE\x20listener...'),o()[_0x196f36(0xd1)](_0x5c6a06=>W(_0x196f36(0xca)+_0x5c6a06)),Y(_0x196f36(0x114),{'resume_id':K,'alias':G,'status':'idle','server':a0_0x45ab54(),'hostname':a0_0x45ab54(),'agent':_0x196f36(0xbb),'project_dir':process[_0x196f36(0xfc)](),'tmux_name':f||void 0x0})[_0x196f36(0xf5)](()=>W(_0x196f36(0xac)+G+_0x196f36(0x91)+K['slice'](0x0,0x8)+')'))['catch'](_0xb0c13a=>W(_0x196f36(0xcc)+_0xb0c13a)),setInterval(()=>{const _0x423fb3=_0x196f36;Y(_0x423fb3(0x114),{'resume_id':K,'alias':G,'status':_0x423fb3(0x116),'server':a0_0x45ab54(),'hostname':a0_0x45ab54(),'agent':_0x423fb3(0xbb),'project_dir':process[_0x423fb3(0xfc)](),'tmux_name':f||void 0x0})[_0x423fb3(0xd1)](_0x2c5449=>W(_0x423fb3(0xf9)+_0x2c5449));},0x2bf20),W('ready\x20—\x20waiting\x20for\x20events');}n()[a0_0x5a5139(0xd1)](_0x51a6d2=>{const _0x214afb=a0_0x5a5139;W(_0x214afb(0x119)+_0x51a6d2),process[_0x214afb(0x120)](0x1);});async function b(){const _0x347450=a0_0x5a5139;W(_0x347450(0xba)),await Y(_0x347450(0x114),{'resume_id':K,'alias':G,'status':_0x347450(0xc9),'task':_0x347450(0x11e)})['catch'](()=>{}),process[_0x347450(0x120)](0x0);}process[a0_0x5a5139(0x112)]['on'](a0_0x5a5139(0x98),()=>b()),process['on']('SIGTERM',()=>b()),process['on'](a0_0x5a5139(0x104),()=>b());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sleep2agi/agent-network",
3
- "version": "2.3.0-preview.6",
3
+ "version": "2.3.0-preview.8",
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",
@@ -65,10 +65,13 @@
65
65
  },
66
66
  "dependencies": {
67
67
  "@inquirer/prompts": "^8.4.3",
68
- "@larksuiteoapi/node-sdk": "^1.42.0"
68
+ "@larksuiteoapi/node-sdk": "^1.42.0",
69
+ "markdown-it": "^14.1.0",
70
+ "puppeteer-core": "^24.10.2"
69
71
  },
70
72
  "devDependencies": {
71
73
  "@modelcontextprotocol/sdk": "^1.12.0",
74
+ "@types/markdown-it": "^14.1.2",
72
75
  "@types/node": "^25.0.0",
73
76
  "javascript-obfuscator": "^5.4.1",
74
77
  "node-pty": "^1.1.0",