@sleep2agi/agent-network 2.3.0-preview.16 → 2.3.0-preview.18

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_0x33e67d=a0_0x43a0;(function(_0x597c6f,_0x28a852){const _0x3d907f=a0_0x43a0,_0xab79d1=_0x597c6f();while(!![]){try{const _0x28bf0d=-parseInt(_0x3d907f(0x194))/0x1*(-parseInt(_0x3d907f(0x20b))/0x2)+-parseInt(_0x3d907f(0x1e6))/0x3*(parseInt(_0x3d907f(0x214))/0x4)+parseInt(_0x3d907f(0x1c8))/0x5*(parseInt(_0x3d907f(0x225))/0x6)+-parseInt(_0x3d907f(0x1fb))/0x7+parseInt(_0x3d907f(0x1de))/0x8+parseInt(_0x3d907f(0x192))/0x9*(-parseInt(_0x3d907f(0x1f6))/0xa)+parseInt(_0x3d907f(0x1e1))/0xb*(parseInt(_0x3d907f(0x1d2))/0xc);if(_0x28bf0d===_0x28a852)break;else _0xab79d1['push'](_0xab79d1['shift']());}catch(_0x3c3b24){_0xab79d1['push'](_0xab79d1['shift']());}}}(a0_0x10cd,0x48563));function a0_0x10cd(){const _0x125c75=['trim','string','\x20priority=','would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME=','broadcast','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','688eSxaGe','ack_inbox','slice','hub','result','\x20CWD=','Progress\x200-100','(none)','get','re-register\x20failed:\x20','from','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','Bearer\x20','.env','cancelled','ENV:\x20URL=','pid','6EweufI','2025-03-26','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','decode','object','/events/','normal',':\x20inbox_count=','Priority\x20(default:\x20normal)','report_status','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','message_id','params','19305LLlKnh','get_inbox','10zumqLB','commhub_get_all_status','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','SIGINT','SSE\x20stream\x20ended,\x20reconnecting...','re-registered\x20as\x20\x22','write','Session\x20alias:\x20','application/json','registered\x20as\x20\x22','min',']\x20[commhub]\x20','SSE\x20fatal:\x20','tmux\x20display-message\x20-p\x20\x27#S\x27','commhub_send_message','fatal:\x20','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','notifications/claude/channel','completed','http://127.0.0.1:9200',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','←\x20message\x20from\x20','commhub','Reply\x20text\x20/\x20result\x20summary','low','0.3.0','commhub_send_task','type','\x20from\x20','find','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','task','in_progress','stderr','working','application/json,\x20text/event-stream','failed','replied','split','delete','starting\x20SSE\x20listener...','token','connected','from_session','initialize','alias','high','idle','statusText','SIGTERM','Target\x20session\x20alias','2051045PTcLyR','data:\x20','parse','MCP\x20stdio\x20connected','/mcp','toTimeString','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','catch','get_all_status','2.0','1538364XPJcnB','no\x20response','utf-8','cwd','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','stringify','unknown\x20tool','send_message','new_message','Current\x20task\x20description','notification','priority','3429672ZlFDBC','body','setRequestHandler','11fRQYTV','text','\x22\x20after\x20SSE\x20reconnect','connect','number','5883UAVsOQ','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','new_task','message','claude-code','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','offline','SSE\x20connection\x20error:\x20','replace','indexOf','ready\x20—\x20waiting\x20for\x20events','warning:\x20could\x20not\x20register:\x20','blocked','...\x20TMUX=','unattributed-','init\x20failed:\x20','2580RLPyEd','now','Task\x20content','messages','\x20RESUME_ID=','1479184TwTJuB','\x20/\x20hostname=','POST','status','SSE\x20error:\x20','.anet','error','Message\x20content','startsWith','send_task','exit','read','content','CommHub\x20init\x20failed:\x20','\x20PROJECT_ENV=','SSE\x20connected\x20as\x20\x22','86238NfkApv','inbox_count','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'];a0_0x10cd=function(){return _0x125c75;};return a0_0x10cd();}import{readFileSync as a0_0xe2471f,existsSync as a0_0x5e0fa8}from'fs';import{randomUUID as a0_0x4f7a61}from'crypto';import{join as a0_0xe05de6}from'path';import{hostname as a0_0x463c9b}from'os';import{execSync as a0_0x31e1c7}from'child_process';import{Server as a0_0x6462c4}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x334c66}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x54552c,CallToolRequestSchema as a0_0x4c376e}from'@modelcontextprotocol/sdk/types.js';function I(_0xefe8d0){const _0x50368a=a0_0x43a0;if(!a0_0x5e0fa8(_0xefe8d0))return;for(let _0x3a432a of a0_0xe2471f(_0xefe8d0,_0x50368a(0x1d4))[_0x50368a(0x1bb)]('\x0a')){let _0x132b6d=_0x3a432a[_0x50368a(0x20e)]();if(!_0x132b6d||_0x132b6d['startsWith']('#'))continue;let _0x416e77=_0x132b6d[_0x50368a(0x1ef)]('=');if(_0x416e77<0x0)continue;let _0x4125e4=_0x132b6d[_0x50368a(0x216)](0x0,_0x416e77)[_0x50368a(0x20e)](),_0x1e0e0f=_0x132b6d[_0x50368a(0x216)](_0x416e77+0x1)[_0x50368a(0x20e)]()[_0x50368a(0x1ee)](/^["']|["']$/g,'');if(!process.env[_0x4125e4])process.env[_0x4125e4]=_0x1e0e0f;}}var L=process.env.HOME||'~',U=a0_0xe05de6(L,'.claude/channels/commhub');I(a0_0xe05de6(U,a0_0x33e67d(0x221)));var v=process[a0_0x33e67d(0x1d5)]()[a0_0x33e67d(0x1ee)](/\//g,'-');I(a0_0xe05de6(U,v,'.env'));function d(){const _0x518f61=a0_0x33e67d;try{return a0_0x31e1c7(_0x518f61(0x1a1),{'encoding':_0x518f61(0x1d4),'timeout':0x7d0})[_0x518f61(0x20e)]();}catch{return'';}}function m(){const _0x3cdb2e=a0_0x33e67d;try{let _0x28ded7=a0_0xe05de6(L,_0x3cdb2e(0x200),'config.json');if(a0_0x5e0fa8(_0x28ded7))return JSON[_0x3cdb2e(0x1ca)](a0_0xe2471f(_0x28ded7,'utf-8'));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u[a0_0x33e67d(0x217)]||a0_0x33e67d(0x1a8),f=process.env.COMMHUB_TMUX||d();function r(){const _0x20d7c1=a0_0x33e67d;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x20d7c1(0x20e)]())return process.env.COMMHUB_ALIAS['trim']();return process['stderr'][_0x20d7c1(0x19a)](_0x20d7c1(0x1a4)+(_0x20d7c1(0x211)+(f||_0x20d7c1(0x21b))+_0x20d7c1(0x1fc)+a0_0x463c9b()+'.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a')),_0x20d7c1(0x1f4)+process[_0x20d7c1(0x224)];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x4f7a61(),F=process.env.COMMHUB_TOKEN||u[a0_0x33e67d(0x1be)]||'';function W(_0x6f361b){const _0x3fa7f0=a0_0x33e67d;let _0x15cc86=new Date()[_0x3fa7f0(0x1cd)]()[_0x3fa7f0(0x216)](0x0,0x8);process[_0x3fa7f0(0x1b6)][_0x3fa7f0(0x19a)]('['+_0x15cc86+_0x3fa7f0(0x19f)+_0x6f361b+'\x0a');}function N(_0x26643b){return new Promise(_0x688da2=>setTimeout(_0x688da2,_0x26643b));}W(a0_0x33e67d(0x223)+j+'\x20ALIAS='+G+a0_0x33e67d(0x1fa)+K[a0_0x33e67d(0x216)](0x0,0x8)+a0_0x33e67d(0x1f3)+(f||'none')+a0_0x33e67d(0x219)+process[a0_0x33e67d(0x1d5)]()+a0_0x33e67d(0x209)+v);var D=new Map(),x=new a0_0x6462c4({'name':'commhub-channel','version':a0_0x33e67d(0x1ae)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x33e67d(0x1eb),a0_0x33e67d(0x1b3),a0_0x33e67d(0x1e7),a0_0x33e67d(0x1d6),a0_0x33e67d(0x19b)+G]['join']('\x0a')});x['setRequestHandler'](a0_0x54552c,async()=>({'tools':[{'name':'commhub_reply','description':a0_0x33e67d(0x1a5),'inputSchema':{'type':a0_0x33e67d(0x229),'properties':{'task_id':{'type':'string','description':a0_0x33e67d(0x227)},'text':{'type':a0_0x33e67d(0x20f),'description':a0_0x33e67d(0x1ac)},'status':{'type':a0_0x33e67d(0x20f),'enum':[a0_0x33e67d(0x1a7),a0_0x33e67d(0x1b9),a0_0x33e67d(0x222),a0_0x33e67d(0x1f2),'error',a0_0x33e67d(0x1b5)],'description':a0_0x33e67d(0x20d)}},'required':[a0_0x33e67d(0x1e2)]}},{'name':'commhub_report_status','description':a0_0x33e67d(0x21f),'inputSchema':{'type':a0_0x33e67d(0x229),'properties':{'status':{'type':a0_0x33e67d(0x20f),'enum':['working',a0_0x33e67d(0x1c4),a0_0x33e67d(0x1f2),a0_0x33e67d(0x201)]},'task':{'type':a0_0x33e67d(0x20f),'description':a0_0x33e67d(0x1db)},'progress':{'type':a0_0x33e67d(0x1e5),'description':a0_0x33e67d(0x21a)}},'required':[a0_0x33e67d(0x1fe)]}},{'name':a0_0x33e67d(0x1af),'description':a0_0x33e67d(0x22f),'inputSchema':{'type':a0_0x33e67d(0x229),'properties':{'alias':{'type':a0_0x33e67d(0x20f),'description':'Target\x20session\x20alias'},'task':{'type':a0_0x33e67d(0x20f),'description':a0_0x33e67d(0x1f8)},'priority':{'type':a0_0x33e67d(0x20f),'enum':[a0_0x33e67d(0x1c3),a0_0x33e67d(0x22b),a0_0x33e67d(0x1ad)],'description':a0_0x33e67d(0x22d)}},'required':[a0_0x33e67d(0x1c2),a0_0x33e67d(0x1b4)]}},{'name':a0_0x33e67d(0x1a2),'description':a0_0x33e67d(0x213),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x33e67d(0x20f),'description':a0_0x33e67d(0x1c7)},'message':{'type':a0_0x33e67d(0x20f),'description':a0_0x33e67d(0x202)}},'required':[a0_0x33e67d(0x1c2),a0_0x33e67d(0x1e9)]}},{'name':a0_0x33e67d(0x195),'description':a0_0x33e67d(0x196),'inputSchema':{'type':a0_0x33e67d(0x229),'properties':{}}}]}));async function Y(_0x4c8273,_0x1da9aa){const _0x3add54=a0_0x33e67d;let _0x2b9535=await fetch(j+'/mcp',{'method':_0x3add54(0x1fd),'headers':{'Content-Type':_0x3add54(0x19c),'Accept':_0x3add54(0x1b8),...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON[_0x3add54(0x1d7)]({'jsonrpc':_0x3add54(0x1d1),'id':0x1,'method':_0x3add54(0x1c1),'params':{'protocolVersion':_0x3add54(0x226),'capabilities':{},'clientInfo':{'name':'commhub-channel','version':_0x3add54(0x1ae)}}})});if(!_0x2b9535['ok']){let _0x5e8124=await _0x2b9535[_0x3add54(0x1e2)]();return W(_0x3add54(0x208)+_0x2b9535['status']+'\x20'+_0x5e8124[_0x3add54(0x216)](0x0,0x64)),{'ok':!0x1,'error':_0x3add54(0x1f5)+_0x2b9535[_0x3add54(0x1fe)]};}await _0x2b9535['text']();let _0x4a2557=(await(await fetch(j+_0x3add54(0x1cc),{'method':_0x3add54(0x1fd),'headers':{'Content-Type':_0x3add54(0x19c),'Accept':'application/json,\x20text/event-stream',...F?{'Authorization':_0x3add54(0x220)+F}:{}},'body':JSON['stringify']({'jsonrpc':_0x3add54(0x1d1),'id':0x2,'method':'tools/call','params':{'name':_0x4c8273,'arguments':_0x1da9aa}})}))['text']())[_0x3add54(0x1bb)]('\x0a')[_0x3add54(0x1b2)](_0x345362=>_0x345362[_0x3add54(0x203)](_0x3add54(0x1c9)));if(_0x4a2557){let _0x37801c=JSON[_0x3add54(0x1ca)](_0x4a2557[_0x3add54(0x216)](0x6));return _0x37801c?.[_0x3add54(0x218)]?.[_0x3add54(0x207)]?.[0x0]?.[_0x3add54(0x1e2)]?JSON['parse'](_0x37801c[_0x3add54(0x218)][_0x3add54(0x207)][0x0][_0x3add54(0x1e2)]):_0x37801c;}return{'ok':!0x1,'error':_0x3add54(0x1d3)};}x[a0_0x33e67d(0x1e0)](a0_0x4c376e,async _0x49875d=>{const _0x15df2c=a0_0x33e67d;let {name:_0x1935e7,arguments:_0x363324}=_0x49875d[_0x15df2c(0x231)];if(_0x1935e7==='commhub_reply'){let {task_id:_0x1c75c8,text:_0x2a813c,status:_0xb0d80b}=_0x363324;if(_0xb0d80b==='completed'||_0xb0d80b==='failed'||_0xb0d80b===_0x15df2c(0x222)){let _0x157720=_0xb0d80b===_0x15df2c(0x1a7)?_0x15df2c(0x1ba):_0xb0d80b,_0x15e7da=_0x1c75c8?D[_0x15df2c(0x21c)](_0x1c75c8)||_0x15df2c(0x217):_0x15df2c(0x217),_0x3d30c2=await Y('send_reply',{'alias':_0x15e7da,'text':_0x2a813c,'in_reply_to':_0x1c75c8||void 0x0,'status':_0x157720,'from_session':G});if(_0x1c75c8)D[_0x15df2c(0x1bc)](_0x1c75c8);return{'content':[{'type':_0x15df2c(0x1e2),'text':JSON['stringify'](_0x3d30c2)}]};}let _0x48fafe=await Y('report_status',{'resume_id':K,'alias':G,'status':_0xb0d80b===_0x15df2c(0x1f2)?_0x15df2c(0x1f2):_0xb0d80b===_0x15df2c(0x201)?_0x15df2c(0x201):_0x15df2c(0x1b7),'task':_0x2a813c['slice'](0x0,0xc8),'output':_0x2a813c});return{'content':[{'type':_0x15df2c(0x1e2),'text':JSON[_0x15df2c(0x1d7)](_0x48fafe)}]};}if(_0x1935e7==='commhub_report_status'){let {status:_0x4ababa,task:_0xcc04e0,progress:_0x57d1b7}=_0x363324,_0x3c4830=await Y(_0x15df2c(0x22e),{'resume_id':K,'alias':G,'status':_0x4ababa,'task':_0xcc04e0,'progress':_0x57d1b7});return{'content':[{'type':_0x15df2c(0x1e2),'text':JSON['stringify'](_0x3c4830)}]};}if(_0x1935e7===_0x15df2c(0x1af)){let {alias:_0x134419,task:_0x2fdd06,priority:_0x4d6574}=_0x363324,_0x16f29d=await Y(_0x15df2c(0x204),{'alias':_0x134419,'task':_0x2fdd06,'priority':_0x4d6574||'normal','from_session':G});return{'content':[{'type':'text','text':JSON[_0x15df2c(0x1d7)](_0x16f29d)}]};}if(_0x1935e7===_0x15df2c(0x1a2)){let {alias:_0x1df3fd,message:_0x1a20a7}=_0x363324,_0x2590c7=await Y(_0x15df2c(0x1d9),{'alias':_0x1df3fd,'message':_0x1a20a7,'from_session':G});return{'content':[{'type':_0x15df2c(0x1e2),'text':JSON[_0x15df2c(0x1d7)](_0x2590c7)}]};}if(_0x1935e7===_0x15df2c(0x195)){let _0x4ec393=await Y(_0x15df2c(0x1d0),{});return{'content':[{'type':_0x15df2c(0x1e2),'text':JSON[_0x15df2c(0x1d7)](_0x4ec393)}]};}return{'content':[{'type':_0x15df2c(0x1e2),'text':JSON[_0x15df2c(0x1d7)]({'error':_0x15df2c(0x1d8)})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x871b2f=a0_0x33e67d;try{await Y('report_status',{'resume_id':K,'alias':G,'status':_0x871b2f(0x1c4),'server':a0_0x463c9b(),'hostname':a0_0x463c9b(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':f||void 0x0}),W(_0x871b2f(0x199)+G+_0x871b2f(0x1e3));}catch(_0x1c95f7){W(_0x871b2f(0x21d)+_0x1c95f7);}}function a0_0x43a0(_0x1169fc,_0x2dafed){_0x1169fc=_0x1169fc-0x192;const _0x10cdce=a0_0x10cd();let _0x43a050=_0x10cdce[_0x1169fc];return _0x43a050;}async function o(){const _0x40b34a=a0_0x33e67d;let _0x40bb3a=j+_0x40b34a(0x22a)+encodeURIComponent(G),_0x3b2000={};if(F)_0x3b2000['Authorization']=_0x40b34a(0x220)+F;W('connecting\x20to\x20'+_0x40bb3a);let _0x306c4c=O,_0x341986=!0x0,_0x20ca50=null;while(!0x0){try{let _0x5afa03=await fetch(_0x40bb3a,{'headers':_0x3b2000});if(!_0x5afa03['ok']){if(W(_0x40b34a(0x1ff)+_0x5afa03[_0x40b34a(0x1fe)]+'\x20'+_0x5afa03[_0x40b34a(0x1c5)]),_0x20ca50=_0x20ca50??Date[_0x40b34a(0x1f7)](),Date['now']()-_0x20ca50>T){W(_0x40b34a(0x1ce)+j+')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。');return;}await N(_0x306c4c),_0x306c4c=Math[_0x40b34a(0x19e)](_0x306c4c*0x2,R);continue;}let _0x4355e9=_0x5afa03[_0x40b34a(0x1df)]['getReader'](),_0x46e4a6=new TextDecoder(),_0x32f9f2='';_0x306c4c=O;while(!0x0){let {done:_0x8e4284,value:_0x4d0e74}=await _0x4355e9[_0x40b34a(0x206)]();if(_0x8e4284)break;_0x32f9f2+=_0x46e4a6[_0x40b34a(0x228)](_0x4d0e74,{'stream':!0x0});let _0x2f158d=_0x32f9f2['split']('\x0a\x0a');_0x32f9f2=_0x2f158d['pop']()||'';for(let _0x15dd33 of _0x2f158d){let _0x55c668=_0x15dd33[_0x40b34a(0x1bb)]('\x0a')[_0x40b34a(0x1b2)](_0x1eb34e=>_0x1eb34e[_0x40b34a(0x203)]('data:\x20'));if(!_0x55c668)continue;try{let _0x1eeae1=JSON[_0x40b34a(0x1ca)](_0x55c668[_0x40b34a(0x216)](0x6));if(await a(_0x1eeae1),_0x1eeae1['type']===_0x40b34a(0x1bf)){if(_0x20ca50=null,!_0x341986)await l();_0x341986=!0x1;}}catch(_0x31a02a){W('parse\x20error:\x20'+_0x31a02a);}}}W(_0x40b34a(0x198));}catch(_0x2f4144){W(_0x40b34a(0x1ed)+_0x2f4144);}if(_0x20ca50=_0x20ca50??Date[_0x40b34a(0x1f7)](),Date[_0x40b34a(0x1f7)]()-_0x20ca50>T){W(_0x40b34a(0x1ce)+j+_0x40b34a(0x1a9));return;}await N(_0x306c4c),_0x306c4c=Math['min'](_0x306c4c*0x2,R);}}async function a(_0x4086af){const _0x93a0af=a0_0x33e67d;if(_0x4086af[_0x93a0af(0x1b0)]===_0x93a0af(0x1bf)){W(_0x93a0af(0x20a)+G+'\x22');return;}if(_0x4086af['type']===_0x93a0af(0x1da)){if(W(_0x93a0af(0x1aa)+_0x4086af[_0x93a0af(0x21e)]+':\x20'+_0x4086af[_0x93a0af(0x1e9)][_0x93a0af(0x216)](0x0,0x3c)),await x[_0x93a0af(0x1dc)]({'method':_0x93a0af(0x1a6),'params':{'content':_0x4086af[_0x93a0af(0x1e9)],'meta':{'sender':_0x4086af[_0x93a0af(0x21e)]||_0x93a0af(0x217),'sender_id':_0x93a0af(0x1ab),'user':_0x4086af[_0x93a0af(0x21e)]||_0x93a0af(0x217),'priority':_0x93a0af(0x22b)}}}),_0x4086af[_0x93a0af(0x230)])await Y(_0x93a0af(0x215),{'alias':G,'message_id':_0x4086af[_0x93a0af(0x230)]});return;}if(_0x4086af[_0x93a0af(0x1b0)]===_0x93a0af(0x1e8)||_0x4086af[_0x93a0af(0x1b0)]===_0x93a0af(0x212)){W('←\x20'+_0x4086af[_0x93a0af(0x1b0)]+_0x93a0af(0x22c)+_0x4086af[_0x93a0af(0x20c)]+_0x93a0af(0x210)+(_0x4086af[_0x93a0af(0x1dd)]||'normal'));let _0x1d4566=await Y(_0x93a0af(0x193),{'alias':G,'limit':0x5});if(_0x1d4566?.['ok']&&_0x1d4566[_0x93a0af(0x1f9)]?.['length']>0x0)for(let _0x1b147a of _0x1d4566[_0x93a0af(0x1f9)]){let _0x211758={'sender':_0x1b147a[_0x93a0af(0x1c0)]||'hub','sender_id':'commhub','user':_0x1b147a['from_session']||_0x93a0af(0x217),'task_id':_0x1b147a['id'],'priority':_0x1b147a['priority']||_0x93a0af(0x22b)};D['set'](_0x1b147a['id'],_0x1b147a['from_session']||_0x93a0af(0x217)),await x[_0x93a0af(0x1dc)]({'method':_0x93a0af(0x1a6),'params':{'content':_0x1b147a[_0x93a0af(0x207)],'meta':_0x211758}}),W('→\x20injected\x20task\x20'+_0x1b147a['id'][_0x93a0af(0x216)](0x0,0x8)+_0x93a0af(0x1b1)+_0x1b147a['from_session']+':\x20'+_0x1b147a[_0x93a0af(0x207)][_0x93a0af(0x216)](0x0,0x3c)),await Y('ack_inbox',{'alias':G,'message_id':_0x1b147a['id']});}}}async function n(){const _0xa42110=a0_0x33e67d;let _0x357808=new a0_0x334c66();await x[_0xa42110(0x1e4)](_0x357808),W(_0xa42110(0x1cb)),W(_0xa42110(0x1bd)),o()[_0xa42110(0x1cf)](_0x36627d=>W(_0xa42110(0x1a0)+_0x36627d)),Y(_0xa42110(0x22e),{'resume_id':K,'alias':G,'status':_0xa42110(0x1c4),'server':a0_0x463c9b(),'hostname':a0_0x463c9b(),'agent':_0xa42110(0x1ea),'project_dir':process[_0xa42110(0x1d5)](),'tmux_name':f||void 0x0})['then'](()=>W(_0xa42110(0x19d)+G+'\x22\x20('+K[_0xa42110(0x216)](0x0,0x8)+')'))['catch'](_0xf75d12=>W(_0xa42110(0x1f1)+_0xf75d12)),setInterval(()=>{const _0x5cb476=_0xa42110;Y(_0x5cb476(0x22e),{'resume_id':K,'alias':G,'status':_0x5cb476(0x1c4),'server':a0_0x463c9b(),'hostname':a0_0x463c9b(),'agent':'claude-code','project_dir':process[_0x5cb476(0x1d5)](),'tmux_name':f||void 0x0})[_0x5cb476(0x1cf)](_0x5db0ff=>W('heartbeat\x20failed:\x20'+_0x5db0ff));},0x2bf20),W(_0xa42110(0x1f0));}n()[a0_0x33e67d(0x1cf)](_0x2d59f8=>{const _0x27aca8=a0_0x33e67d;W(_0x27aca8(0x1a3)+_0x2d59f8),process[_0x27aca8(0x205)](0x1);});async function b(){const _0x3c3c25=a0_0x33e67d;W('shutting\x20down,\x20reporting\x20offline...'),await Y(_0x3c3c25(0x22e),{'resume_id':K,'alias':G,'status':_0x3c3c25(0x1ec),'task':'session\x20disconnected'})[_0x3c3c25(0x1cf)](()=>{}),process[_0x3c3c25(0x205)](0x0);}process['stdin']['on']('end',()=>b()),process['on'](a0_0x33e67d(0x1c6),()=>b()),process['on'](a0_0x33e67d(0x197),()=>b());
2
+ const a0_0x41a003=a0_0x4b61;(function(_0x2ef5c7,_0x4045a5){const _0xa4ff66=a0_0x4b61,_0x28e797=_0x2ef5c7();while(!![]){try{const _0x21e329=-parseInt(_0xa4ff66(0x1c3))/0x1+parseInt(_0xa4ff66(0x17a))/0x2*(-parseInt(_0xa4ff66(0x1b2))/0x3)+parseInt(_0xa4ff66(0x1a6))/0x4*(parseInt(_0xa4ff66(0x1a9))/0x5)+-parseInt(_0xa4ff66(0x174))/0x6+-parseInt(_0xa4ff66(0x160))/0x7*(-parseInt(_0xa4ff66(0x172))/0x8)+parseInt(_0xa4ff66(0x1c8))/0x9+parseInt(_0xa4ff66(0x1ab))/0xa;if(_0x21e329===_0x4045a5)break;else _0x28e797['push'](_0x28e797['shift']());}catch(_0x5eaa7c){_0x28e797['push'](_0x28e797['shift']());}}}(a0_0x509c,0x18f60));import{readFileSync as a0_0x92ae9b,existsSync as a0_0x53949e}from'fs';import{randomUUID as a0_0x40fe1d}from'crypto';import{join as a0_0x16c7bb}from'path';import{hostname as a0_0x5b7820}from'os';import{execSync as a0_0x32393d}from'child_process';import{Server as a0_0x289cf5}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x4130db}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x1a9afe,CallToolRequestSchema as a0_0x5d9673}from'@modelcontextprotocol/sdk/types.js';function a0_0x509c(){const _0x986d04=[']\x20[commhub]\x20','warning:\x20could\x20not\x20register:\x20','task','64OEyqiI','code','initialize','→\x20injected\x20task\x20','\x20PROJECT_ENV=','.claude/channels/commhub','completed','messages','Authorization','session\x20disconnected','commhub-channel','heartbeat\x20failed:\x20','commhub_send_task','inbox_count','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','then','Task\x20content','SSE\x20connected\x20as\x20\x22','getReader',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','string','none','ack_inbox','message_id','unknown\x20tool','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','/mcp','cwd','commhub_reply','re-register\x20failed:\x20','low','statusText','2025-03-26','.anet','.\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','split','message','commhub_send_message','\x20/\x20hostname=','connected','stderr','get_all_status','commhub_get_all_status','4goeMbP','read','Progress\x200-100','466865qZUOpp','unref','1611730Tcwwde','ready\x20—\x20waiting\x20for\x20events','CommHub\x20init\x20failed:\x20','find','parse','0.3.0','working','9498nlnoaG','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','SIGINT','slice','now','Bearer\x20','/events/','config.json','hub','\x22\x20(','parent\x20claude\x20died\x20(reparented\x20to\x20PID\x201\x20from\x20','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','\x20RESUME_ID=','no\x20response','token','application/json','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','196323xSlEni','notification','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME=','init\x20failed:\x20','1674693xoFuqX','\x22\x20after\x20SSE\x20reconnect','error','exit','pop','offline','shutting\x20down,\x20reporting\x20offline...','POST','parse\x20error:\x20','get','get_inbox','commhub_report_status','ppid','delete','http://127.0.0.1:9200','params','trim','high','from_session','status','idle','connect','write','claude-code','alias','\x20ALIAS=','result','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','MCP\x20stdio\x20connected',':\x20inbox_count=','ENV:\x20URL=','content','registered\x20as\x20\x22','in_progress','utf-8','.env','startsWith','broadcast','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','catch','cancelled','connecting\x20to\x20','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','priority','text','failed','re-registered\x20as\x20\x22','length','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','Target\x20session\x20alias','body','min','toTimeString','replace','type','new_task','commhub','50183sVeYmH','2.0','normal','Current\x20task\x20description','pid','application/json,\x20text/event-stream','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','setRequestHandler','SSE\x20error:\x20','blocked','fatal:\x20','parent\x20claude\x20pid=','object','starting\x20SSE\x20listener...','Session\x20alias:\x20','stringify','report_status','from','24WrjopK','Priority\x20(default:\x20normal)','373530kzBodi','ESRCH','number'];a0_0x509c=function(){return _0x986d04;};return a0_0x509c();}function v(_0xf98ae5){const _0x43c7af=a0_0x4b61;if(!a0_0x53949e(_0xf98ae5))return;for(let _0x3eb061 of a0_0x92ae9b(_0xf98ae5,_0x43c7af(0x149))[_0x43c7af(0x19e)]('\x0a')){let _0xdab521=_0x3eb061[_0x43c7af(0x1d8)]();if(!_0xdab521||_0xdab521[_0x43c7af(0x14b)]('#'))continue;let _0x3b9d95=_0xdab521['indexOf']('=');if(_0x3b9d95<0x0)continue;let _0x4eed7a=_0xdab521[_0x43c7af(0x1b5)](0x0,_0x3b9d95)[_0x43c7af(0x1d8)](),_0x3f2c2b=_0xdab521[_0x43c7af(0x1b5)](_0x3b9d95+0x1)[_0x43c7af(0x1d8)]()[_0x43c7af(0x15c)](/^["']|["']$/g,'');if(!process.env[_0x4eed7a])process.env[_0x4eed7a]=_0x3f2c2b;}}var L=process.env.HOME||'~',E=a0_0x16c7bb(L,a0_0x41a003(0x17f));v(a0_0x16c7bb(E,'.env'));var M=process[a0_0x41a003(0x195)]()['replace'](/\//g,'-');v(a0_0x16c7bb(E,M,a0_0x41a003(0x14a)));function _(){const _0x103880=a0_0x41a003;try{return a0_0x32393d('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0x103880(0x149),'timeout':0x7d0})[_0x103880(0x1d8)]();}catch{return'';}}function r(){const _0x3452f6=a0_0x41a003;try{let _0x21dd4d=a0_0x16c7bb(L,_0x3452f6(0x19b),_0x3452f6(0x1b9));if(a0_0x53949e(_0x21dd4d))return JSON[_0x3452f6(0x1af)](a0_0x92ae9b(_0x21dd4d,_0x3452f6(0x149)));}catch{}return{};}var u=r(),x=process.env.COMMHUB_URL||u['hub']||a0_0x41a003(0x1d6),f=process.env.COMMHUB_TMUX||_();function l(){const _0x3a6498=a0_0x41a003;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS['trim']())return process.env.COMMHUB_ALIAS[_0x3a6498(0x1d8)]();return process['stderr'][_0x3a6498(0x1de)](_0x3a6498(0x151)+(_0x3a6498(0x1c6)+(f||'(none)')+_0x3a6498(0x1a1)+a0_0x5b7820()+_0x3a6498(0x19c))),'unattributed-'+process[_0x3a6498(0x164)];}var Y=l(),X=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x40fe1d(),w=process.env.COMMHUB_TOKEN||u[a0_0x41a003(0x1c0)]||'';function V(_0x5cb166){const _0x4168ba=a0_0x41a003;let _0x4ef8df=new Date()[_0x4168ba(0x15b)]()['slice'](0x0,0x8);process[_0x4168ba(0x1a3)][_0x4168ba(0x1de)]('['+_0x4ef8df+_0x4168ba(0x177)+_0x5cb166+'\x0a');}function T(_0x311078){return new Promise(_0x47620a=>setTimeout(_0x47620a,_0x311078));}V(a0_0x41a003(0x1e6)+x+a0_0x41a003(0x1e1)+Y+a0_0x41a003(0x1be)+X[a0_0x41a003(0x1b5)](0x0,0x8)+'...\x20TMUX='+(f||a0_0x41a003(0x18f))+'\x20CWD='+process[a0_0x41a003(0x195)]()+a0_0x41a003(0x17e)+M);var p=new Map(),P=new a0_0x289cf5({'name':'commhub-channel','version':a0_0x41a003(0x1b0)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x41a003(0x166),a0_0x41a003(0x1b3),'Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x41a003(0x1bd),a0_0x41a003(0x16e)+Y]['join']('\x0a')});function a0_0x4b61(_0x1a3632,_0x105c5b){_0x1a3632=_0x1a3632-0x147;const _0x509ce6=a0_0x509c();let _0x4b6132=_0x509ce6[_0x1a3632];return _0x4b6132;}P['setRequestHandler'](a0_0x1a9afe,async()=>({'tools':[{'name':a0_0x41a003(0x196),'description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':a0_0x41a003(0x16c),'properties':{'task_id':{'type':'string','description':a0_0x41a003(0x1c2)},'text':{'type':a0_0x41a003(0x18e),'description':'Reply\x20text\x20/\x20result\x20summary'},'status':{'type':a0_0x41a003(0x18e),'enum':[a0_0x41a003(0x180),'failed',a0_0x41a003(0x14f),a0_0x41a003(0x169),a0_0x41a003(0x1ca),a0_0x41a003(0x148)],'description':a0_0x41a003(0x157)}},'required':[a0_0x41a003(0x153)]}},{'name':a0_0x41a003(0x1d3),'description':a0_0x41a003(0x193),'inputSchema':{'type':a0_0x41a003(0x16c),'properties':{'status':{'type':a0_0x41a003(0x18e),'enum':[a0_0x41a003(0x1b1),a0_0x41a003(0x1dc),a0_0x41a003(0x169),a0_0x41a003(0x1ca)]},'task':{'type':'string','description':a0_0x41a003(0x163)},'progress':{'type':a0_0x41a003(0x176),'description':a0_0x41a003(0x1a8)}},'required':[a0_0x41a003(0x1db)]}},{'name':a0_0x41a003(0x186),'description':a0_0x41a003(0x188),'inputSchema':{'type':a0_0x41a003(0x16c),'properties':{'alias':{'type':a0_0x41a003(0x18e),'description':a0_0x41a003(0x158)},'task':{'type':a0_0x41a003(0x18e),'description':a0_0x41a003(0x18a)},'priority':{'type':'string','enum':[a0_0x41a003(0x1d9),a0_0x41a003(0x162),a0_0x41a003(0x198)],'description':a0_0x41a003(0x173)}},'required':[a0_0x41a003(0x1e0),a0_0x41a003(0x179)]}},{'name':a0_0x41a003(0x1a0),'description':a0_0x41a003(0x1c5),'inputSchema':{'type':a0_0x41a003(0x16c),'properties':{'alias':{'type':a0_0x41a003(0x18e),'description':a0_0x41a003(0x158)},'message':{'type':a0_0x41a003(0x18e),'description':'Message\x20content'}},'required':['alias',a0_0x41a003(0x19f)]}},{'name':'commhub_get_all_status','description':a0_0x41a003(0x1e3),'inputSchema':{'type':a0_0x41a003(0x16c),'properties':{}}}]}));async function q(_0x183238,_0x2d4461){const _0x3ca0d2=a0_0x41a003;let _0xa1498=await fetch(x+_0x3ca0d2(0x194),{'method':_0x3ca0d2(0x1cf),'headers':{'Content-Type':_0x3ca0d2(0x1c1),'Accept':_0x3ca0d2(0x165),...w?{'Authorization':'Bearer\x20'+w}:{}},'body':JSON['stringify']({'jsonrpc':_0x3ca0d2(0x161),'id':0x1,'method':_0x3ca0d2(0x17c),'params':{'protocolVersion':_0x3ca0d2(0x19a),'capabilities':{},'clientInfo':{'name':_0x3ca0d2(0x184),'version':_0x3ca0d2(0x1b0)}}})});if(!_0xa1498['ok']){let _0x313560=await _0xa1498[_0x3ca0d2(0x153)]();return V(_0x3ca0d2(0x1ad)+_0xa1498[_0x3ca0d2(0x1db)]+'\x20'+_0x313560[_0x3ca0d2(0x1b5)](0x0,0x64)),{'ok':!0x1,'error':_0x3ca0d2(0x1c7)+_0xa1498[_0x3ca0d2(0x1db)]};}await _0xa1498['text']();let _0x4e67cc=(await(await fetch(x+_0x3ca0d2(0x194),{'method':_0x3ca0d2(0x1cf),'headers':{'Content-Type':_0x3ca0d2(0x1c1),'Accept':_0x3ca0d2(0x165),...w?{'Authorization':_0x3ca0d2(0x1b7)+w}:{}},'body':JSON[_0x3ca0d2(0x16f)]({'jsonrpc':_0x3ca0d2(0x161),'id':0x2,'method':'tools/call','params':{'name':_0x183238,'arguments':_0x2d4461}})}))['text']())[_0x3ca0d2(0x19e)]('\x0a')[_0x3ca0d2(0x1ae)](_0x23f81d=>_0x23f81d[_0x3ca0d2(0x14b)]('data:\x20'));if(_0x4e67cc){let _0x59ae1d=JSON[_0x3ca0d2(0x1af)](_0x4e67cc[_0x3ca0d2(0x1b5)](0x6));return _0x59ae1d?.[_0x3ca0d2(0x1e2)]?.['content']?.[0x0]?.[_0x3ca0d2(0x153)]?JSON['parse'](_0x59ae1d[_0x3ca0d2(0x1e2)]['content'][0x0][_0x3ca0d2(0x153)]):_0x59ae1d;}return{'ok':!0x1,'error':_0x3ca0d2(0x1bf)};}P[a0_0x41a003(0x167)](a0_0x5d9673,async _0x4ff2bc=>{const _0x14f67d=a0_0x41a003;let {name:_0x4be0e1,arguments:_0x4ec4a2}=_0x4ff2bc[_0x14f67d(0x1d7)];if(_0x4be0e1===_0x14f67d(0x196)){let {task_id:_0x38edce,text:_0x419f92,status:_0x3af652}=_0x4ec4a2;if(_0x3af652===_0x14f67d(0x180)||_0x3af652===_0x14f67d(0x154)||_0x3af652===_0x14f67d(0x14f)){let _0x266cf0=_0x3af652===_0x14f67d(0x180)?'replied':_0x3af652,_0x149e24=_0x38edce?p[_0x14f67d(0x1d1)](_0x38edce)||_0x14f67d(0x1ba):_0x14f67d(0x1ba),_0x1ee495=await q('send_reply',{'alias':_0x149e24,'text':_0x419f92,'in_reply_to':_0x38edce||void 0x0,'status':_0x266cf0,'from_session':Y});if(_0x38edce)p[_0x14f67d(0x1d5)](_0x38edce);return{'content':[{'type':'text','text':JSON['stringify'](_0x1ee495)}]};}let _0x4e02b9=await q(_0x14f67d(0x170),{'resume_id':X,'alias':Y,'status':_0x3af652===_0x14f67d(0x169)?_0x14f67d(0x169):_0x3af652===_0x14f67d(0x1ca)?_0x14f67d(0x1ca):'working','task':_0x419f92[_0x14f67d(0x1b5)](0x0,0xc8),'output':_0x419f92});return{'content':[{'type':_0x14f67d(0x153),'text':JSON['stringify'](_0x4e02b9)}]};}if(_0x4be0e1===_0x14f67d(0x1d3)){let {status:_0x3bc248,task:_0x37657e,progress:_0x294d32}=_0x4ec4a2,_0x36fe60=await q(_0x14f67d(0x170),{'resume_id':X,'alias':Y,'status':_0x3bc248,'task':_0x37657e,'progress':_0x294d32});return{'content':[{'type':_0x14f67d(0x153),'text':JSON[_0x14f67d(0x16f)](_0x36fe60)}]};}if(_0x4be0e1===_0x14f67d(0x186)){let {alias:_0x2fccfa,task:_0x26fbd7,priority:_0x2fd138}=_0x4ec4a2,_0x1a9876=await q('send_task',{'alias':_0x2fccfa,'task':_0x26fbd7,'priority':_0x2fd138||_0x14f67d(0x162),'from_session':Y});return{'content':[{'type':'text','text':JSON[_0x14f67d(0x16f)](_0x1a9876)}]};}if(_0x4be0e1==='commhub_send_message'){let {alias:_0x4c1376,message:_0x399669}=_0x4ec4a2,_0x169ef1=await q('send_message',{'alias':_0x4c1376,'message':_0x399669,'from_session':Y});return{'content':[{'type':_0x14f67d(0x153),'text':JSON[_0x14f67d(0x16f)](_0x169ef1)}]};}if(_0x4be0e1===_0x14f67d(0x1a5)){let _0x42493f=await q(_0x14f67d(0x1a4),{});return{'content':[{'type':'text','text':JSON['stringify'](_0x42493f)}]};}return{'content':[{'type':_0x14f67d(0x153),'text':JSON[_0x14f67d(0x16f)]({'error':_0x14f67d(0x192)})}]};});var C=0x3e8,H=0x7530,O=0x36ee80;async function o(){const _0x57d7bb=a0_0x41a003;try{await q(_0x57d7bb(0x170),{'resume_id':X,'alias':Y,'status':_0x57d7bb(0x1dc),'server':a0_0x5b7820(),'hostname':a0_0x5b7820(),'agent':'claude-code','project_dir':process[_0x57d7bb(0x195)](),'tmux_name':f||void 0x0}),V(_0x57d7bb(0x155)+Y+_0x57d7bb(0x1c9));}catch(_0x3122cb){V(_0x57d7bb(0x197)+_0x3122cb);}}async function s(){const _0x2c1721=a0_0x41a003;let _0x1ca7b7=x+_0x2c1721(0x1b8)+encodeURIComponent(Y),_0x293d5a={};if(w)_0x293d5a[_0x2c1721(0x182)]=_0x2c1721(0x1b7)+w;V(_0x2c1721(0x150)+_0x1ca7b7);let _0x4a183e=C,_0x4ef4f6=!0x0,_0x7537aa=null;while(!0x0){try{let _0x110c4d=await fetch(_0x1ca7b7,{'headers':_0x293d5a});if(!_0x110c4d['ok']){if(V(_0x2c1721(0x168)+_0x110c4d[_0x2c1721(0x1db)]+'\x20'+_0x110c4d[_0x2c1721(0x199)]),_0x7537aa=_0x7537aa??Date[_0x2c1721(0x1b6)](),Date['now']()-_0x7537aa>O){V(_0x2c1721(0x14d)+x+_0x2c1721(0x18d));return;}await T(_0x4a183e),_0x4a183e=Math['min'](_0x4a183e*0x2,H);continue;}let _0x312e1c=_0x110c4d[_0x2c1721(0x159)][_0x2c1721(0x18c)](),_0xb5d5c=new TextDecoder(),_0x4febed='';_0x4a183e=C;while(!0x0){let {done:_0x13c693,value:_0x2a0f7d}=await _0x312e1c[_0x2c1721(0x1a7)]();if(_0x13c693)break;_0x4febed+=_0xb5d5c['decode'](_0x2a0f7d,{'stream':!0x0});let _0x1e804f=_0x4febed[_0x2c1721(0x19e)]('\x0a\x0a');_0x4febed=_0x1e804f[_0x2c1721(0x1cc)]()||'';for(let _0x3cccb2 of _0x1e804f){let _0x3851b2=_0x3cccb2['split']('\x0a')['find'](_0x37bd96=>_0x37bd96[_0x2c1721(0x14b)]('data:\x20'));if(!_0x3851b2)continue;try{let _0x5898a0=JSON[_0x2c1721(0x1af)](_0x3851b2[_0x2c1721(0x1b5)](0x6));if(await a(_0x5898a0),_0x5898a0['type']===_0x2c1721(0x1a2)){if(_0x7537aa=null,!_0x4ef4f6)await o();_0x4ef4f6=!0x1;}}catch(_0x289874){V(_0x2c1721(0x1d0)+_0x289874);}}}V('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x185a31){V('SSE\x20connection\x20error:\x20'+_0x185a31);}if(_0x7537aa=_0x7537aa??Date['now'](),Date[_0x2c1721(0x1b6)]()-_0x7537aa>O){V(_0x2c1721(0x14d)+x+_0x2c1721(0x18d));return;}await T(_0x4a183e),_0x4a183e=Math[_0x2c1721(0x15a)](_0x4a183e*0x2,H);}}async function a(_0x2a441b){const _0x5dd528=a0_0x41a003;if(_0x2a441b['type']===_0x5dd528(0x1a2)){V(_0x5dd528(0x18b)+Y+'\x22');return;}if(_0x2a441b[_0x5dd528(0x15d)]==='new_message'){if(V('←\x20message\x20from\x20'+_0x2a441b['from']+':\x20'+_0x2a441b[_0x5dd528(0x19f)][_0x5dd528(0x1b5)](0x0,0x3c)),await P[_0x5dd528(0x1c4)]({'method':'notifications/claude/channel','params':{'content':_0x2a441b[_0x5dd528(0x19f)],'meta':{'sender':_0x2a441b[_0x5dd528(0x171)]||_0x5dd528(0x1ba),'sender_id':_0x5dd528(0x15f),'user':_0x2a441b[_0x5dd528(0x171)]||_0x5dd528(0x1ba),'priority':_0x5dd528(0x162)}}}),_0x2a441b[_0x5dd528(0x191)])await q('ack_inbox',{'alias':Y,'message_id':_0x2a441b[_0x5dd528(0x191)]});return;}if(_0x2a441b[_0x5dd528(0x15d)]===_0x5dd528(0x15e)||_0x2a441b[_0x5dd528(0x15d)]===_0x5dd528(0x14c)){V('←\x20'+_0x2a441b['type']+_0x5dd528(0x1e5)+_0x2a441b[_0x5dd528(0x187)]+'\x20priority='+(_0x2a441b[_0x5dd528(0x152)]||_0x5dd528(0x162)));let _0x251a52=await q(_0x5dd528(0x1d2),{'alias':Y,'limit':0x5});if(_0x251a52?.['ok']&&_0x251a52[_0x5dd528(0x181)]?.[_0x5dd528(0x156)]>0x0)for(let _0x268304 of _0x251a52[_0x5dd528(0x181)]){let _0x53ac67={'sender':_0x268304['from_session']||_0x5dd528(0x1ba),'sender_id':'commhub','user':_0x268304['from_session']||_0x5dd528(0x1ba),'task_id':_0x268304['id'],'priority':_0x268304['priority']||_0x5dd528(0x162)};p['set'](_0x268304['id'],_0x268304[_0x5dd528(0x1da)]||_0x5dd528(0x1ba)),await P['notification']({'method':'notifications/claude/channel','params':{'content':_0x268304[_0x5dd528(0x1e7)],'meta':_0x53ac67}}),V(_0x5dd528(0x17d)+_0x268304['id'][_0x5dd528(0x1b5)](0x0,0x8)+'\x20from\x20'+_0x268304[_0x5dd528(0x1da)]+':\x20'+_0x268304[_0x5dd528(0x1e7)][_0x5dd528(0x1b5)](0x0,0x3c)),await q(_0x5dd528(0x190),{'alias':Y,'message_id':_0x268304['id']});}}}async function n(){const _0x567121=a0_0x41a003;let _0x514f4c=new a0_0x4130db();await P[_0x567121(0x1dd)](_0x514f4c),V(_0x567121(0x1e4)),V(_0x567121(0x16d)),s()['catch'](_0xeff6b8=>V('SSE\x20fatal:\x20'+_0xeff6b8)),q('report_status',{'resume_id':X,'alias':Y,'status':_0x567121(0x1dc),'server':a0_0x5b7820(),'hostname':a0_0x5b7820(),'agent':_0x567121(0x1df),'project_dir':process[_0x567121(0x195)](),'tmux_name':f||void 0x0})[_0x567121(0x189)](()=>V(_0x567121(0x147)+Y+_0x567121(0x1bb)+X['slice'](0x0,0x8)+')'))['catch'](_0x3e6899=>V(_0x567121(0x178)+_0x3e6899)),setInterval(()=>{const _0xdb8639=_0x567121;q(_0xdb8639(0x170),{'resume_id':X,'alias':Y,'status':_0xdb8639(0x1dc),'server':a0_0x5b7820(),'hostname':a0_0x5b7820(),'agent':_0xdb8639(0x1df),'project_dir':process[_0xdb8639(0x195)](),'tmux_name':f||void 0x0})[_0xdb8639(0x14e)](_0x546c66=>V(_0xdb8639(0x185)+_0x546c66));},0x2bf20),V(_0x567121(0x1ac));}n()[a0_0x41a003(0x14e)](_0xf1d59f=>{const _0x51a247=a0_0x41a003;V(_0x51a247(0x16a)+_0xf1d59f),process[_0x51a247(0x1cb)](0x1);});async function k(){const _0x31f28e=a0_0x41a003;V(_0x31f28e(0x1ce)),await q(_0x31f28e(0x170),{'resume_id':X,'alias':Y,'status':_0x31f28e(0x1cd),'task':_0x31f28e(0x183)})['catch'](()=>{}),process[_0x31f28e(0x1cb)](0x0);}process['stdin']['on']('end',()=>k()),process['on']('SIGTERM',()=>k()),process['on'](a0_0x41a003(0x1b4),()=>k());var j=process['ppid'];if(j&&j>0x1){let z=setInterval(()=>{const _0x2c059e=a0_0x41a003;if(process[_0x2c059e(0x1d4)]===0x1&&j!==0x1){V(_0x2c059e(0x1bc)+j+_0x2c059e(0x19d)),k();return;}try{process['kill'](j,0x0);}catch(_0xd32d3d){if(_0xd32d3d?.[_0x2c059e(0x17b)]===_0x2c059e(0x175))V(_0x2c059e(0x16b)+j+'\x20no\x20longer\x20exists\x20(kill-0\x20ESRCH)\x20—\x20self-exit\x20to\x20avoid\x20ghost\x20heart-beat'),k();}},0x7530);if(typeof z[a0_0x41a003(0x1aa)]==='function')z[a0_0x41a003(0x1aa)]();}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sleep2agi/agent-network",
3
- "version": "2.3.0-preview.16",
3
+ "version": "2.3.0-preview.18",
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",