@sleep2agi/agent-network 2.3.0-preview.8 → 2.3.0-preview.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/src/node-server.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
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());
|
|
2
|
+
const a0_0x3dc8a9=a0_0x23d0;(function(_0x4f20ef,_0x250321){const _0x4781dc=a0_0x23d0,_0x16155d=_0x4f20ef();while(!![]){try{const _0x523cfd=parseInt(_0x4781dc(0x10d))/0x1*(parseInt(_0x4781dc(0x130))/0x2)+-parseInt(_0x4781dc(0xfe))/0x3+parseInt(_0x4781dc(0xd4))/0x4*(-parseInt(_0x4781dc(0x11d))/0x5)+parseInt(_0x4781dc(0x14d))/0x6+parseInt(_0x4781dc(0x113))/0x7+-parseInt(_0x4781dc(0x106))/0x8*(parseInt(_0x4781dc(0x157))/0x9)+parseInt(_0x4781dc(0x132))/0xa;if(_0x523cfd===_0x250321)break;else _0x16155d['push'](_0x16155d['shift']());}catch(_0xd93935){_0x16155d['push'](_0x16155d['shift']());}}}(a0_0x1f16,0xe63b0));import{readFileSync as a0_0x58852b,existsSync as a0_0x20ede3}from'fs';import{randomUUID as a0_0x497bd1}from'crypto';import{join as a0_0x868eda}from'path';import{hostname as a0_0x17ba98}from'os';import{execSync as a0_0x20dc39}from'child_process';import{Server as a0_0x2a7ab4}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x121206}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x5b2952,CallToolRequestSchema as a0_0x27aa59}from'@modelcontextprotocol/sdk/types.js';function I(_0x5051c4){const _0x2550f0=a0_0x23d0;if(!a0_0x20ede3(_0x5051c4))return;for(let _0x5b5c78 of a0_0x58852b(_0x5051c4,_0x2550f0(0x125))[_0x2550f0(0x136)]('\x0a')){let _0x50f256=_0x5b5c78['trim']();if(!_0x50f256||_0x50f256[_0x2550f0(0x148)]('#'))continue;let _0x4461a6=_0x50f256[_0x2550f0(0xfb)]('=');if(_0x4461a6<0x0)continue;let _0x546448=_0x50f256[_0x2550f0(0xdb)](0x0,_0x4461a6)[_0x2550f0(0x140)](),_0x5e216a=_0x50f256[_0x2550f0(0xdb)](_0x4461a6+0x1)[_0x2550f0(0x140)]()[_0x2550f0(0xed)](/^["']|["']$/g,'');if(!process.env[_0x546448])process.env[_0x546448]=_0x5e216a;}}var L=process.env.HOME||'~',U=a0_0x868eda(L,a0_0x3dc8a9(0x14e));I(a0_0x868eda(U,a0_0x3dc8a9(0x102)));var v=process[a0_0x3dc8a9(0x145)]()['replace'](/\//g,'-');I(a0_0x868eda(U,v,a0_0x3dc8a9(0x102)));function d(){const _0x17d8fd=a0_0x3dc8a9;try{return a0_0x20dc39(_0x17d8fd(0xf6),{'encoding':_0x17d8fd(0x125),'timeout':0x7d0})['trim']();}catch{return'';}}function m(){const _0x273f42=a0_0x3dc8a9;try{let _0x106a07=a0_0x868eda(L,_0x273f42(0xd8),_0x273f42(0xeb));if(a0_0x20ede3(_0x106a07))return JSON[_0x273f42(0x121)](a0_0x58852b(_0x106a07,_0x273f42(0x125)));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u[a0_0x3dc8a9(0x12d)]||a0_0x3dc8a9(0xf9),f=process.env.COMMHUB_TMUX||d();function r(){const _0x1444ea=a0_0x3dc8a9;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x1444ea(0x140)]())return process.env.COMMHUB_ALIAS[_0x1444ea(0x140)]();return process[_0x1444ea(0x158)]['write'](_0x1444ea(0x134)+('would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME='+(f||_0x1444ea(0xdd))+'\x20/\x20hostname='+a0_0x17ba98()+_0x1444ea(0x11e))),_0x1444ea(0xf7)+process[_0x1444ea(0xfd)];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x497bd1(),F=process.env.COMMHUB_TOKEN||u['token']||'';function W(_0x381e9f){const _0x50f832=a0_0x3dc8a9;let _0x2b79cf=new Date()['toTimeString']()[_0x50f832(0xdb)](0x0,0x8);process[_0x50f832(0x158)][_0x50f832(0x14a)]('['+_0x2b79cf+_0x50f832(0xd1)+_0x381e9f+'\x0a');}function a0_0x1f16(){const _0x3b7daf=['ack_inbox','SSE\x20connected\x20as\x20\x22','result','type','ENV:\x20URL=','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','task','starting\x20SSE\x20listener...','find','Current\x20task\x20description','broadcast','/events/','SSE\x20stream\x20ended,\x20reconnecting...','read','commhub_report_status','commhub-channel','POST',']\x20[commhub]\x20','shutting\x20down,\x20reporting\x20offline...','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','4Mniock','message_id','join','MCP\x20stdio\x20connected','.anet','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','working','slice','\x20ALIAS=','(none)','in_progress','data:\x20','normal','from','error','parse\x20error:\x20','→\x20injected\x20task\x20','...\x20TMUX=','\x20priority=','inbox_count',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','SIGTERM','params','config.json','now','replace','stringify','decode','←\x20message\x20from\x20','connecting\x20to\x20','warning:\x20could\x20not\x20register:\x20','number','cancelled','Bearer\x20','tmux\x20display-message\x20-p\x20\x27#S\x27','unattributed-','high','http://127.0.0.1:9200','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','indexOf','fatal:\x20','pid','4093572sczUgi','idle','from_session','Task\x20content','.env','session\x20disconnected','statusText','re-register\x20failed:\x20','664912vhXUXJ','min','SSE\x20fatal:\x20','pop','content','string','none','11mOVkid','setRequestHandler','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','commhub_reply','text','messages','3456880ofVoFQ','connect','\x20RESUME_ID=','catch','\x22\x20(','2025-03-26','commhub_get_all_status','connected','replied','application/json,\x20text/event-stream','5842790rrOULF','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a','\x20CWD=','0.3.0','parse','SIGINT','Target\x20session\x20alias','report_status','utf-8','priority','2.0','then','completed','send_message','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','no\x20response','hub','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','commhub_send_message','223372EeDYrT','get','12695080ImllDM','delete','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','message','split','\x20from\x20','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','notification','notifications/claude/channel','Authorization','length','Message\x20content','Session\x20alias:\x20','set','trim','get_inbox','Priority\x20(default:\x20normal)','/mcp','getReader','cwd','unknown\x20tool','offline','startsWith','application/json','write','status','get_all_status','3902640TnhpKO','.claude/channels/commhub','end','failed','commhub_send_task','send_reply','blocked','ready\x20—\x20waiting\x20for\x20events','claude-code','object','18hcKnZO','stderr','init\x20failed:\x20','heartbeat\x20failed:\x20'];a0_0x1f16=function(){return _0x3b7daf;};return a0_0x1f16();}function N(_0x2f5780){return new Promise(_0x9b7091=>setTimeout(_0x9b7091,_0x2f5780));}W(a0_0x3dc8a9(0x15f)+j+a0_0x3dc8a9(0xdc)+G+a0_0x3dc8a9(0x115)+K['slice'](0x0,0x8)+a0_0x3dc8a9(0xe5)+(f||a0_0x3dc8a9(0x10c))+a0_0x3dc8a9(0x11f)+process[a0_0x3dc8a9(0x145)]()+'\x20PROJECT_ENV='+v);var D=new Map(),x=new a0_0x2a7ab4({'name':a0_0x3dc8a9(0xcf),'version':'0.3.0'},{'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_0x3dc8a9(0x12e),'You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.',a0_0x3dc8a9(0x13e)+G][a0_0x3dc8a9(0xd6)]('\x0a')});x[a0_0x3dc8a9(0x10e)](a0_0x5b2952,async()=>({'tools':[{'name':a0_0x3dc8a9(0x110),'description':a0_0x3dc8a9(0x12b),'inputSchema':{'type':a0_0x3dc8a9(0x156),'properties':{'task_id':{'type':'string','description':a0_0x3dc8a9(0x10f)},'text':{'type':a0_0x3dc8a9(0x10b),'description':'Reply\x20text\x20/\x20result\x20summary'},'status':{'type':a0_0x3dc8a9(0x10b),'enum':[a0_0x3dc8a9(0x129),a0_0x3dc8a9(0x150),a0_0x3dc8a9(0xf4),a0_0x3dc8a9(0x153),a0_0x3dc8a9(0xe2),a0_0x3dc8a9(0xde)],'description':a0_0x3dc8a9(0xd9)}},'required':[a0_0x3dc8a9(0x111)]}},{'name':'commhub_report_status','description':a0_0x3dc8a9(0xfa),'inputSchema':{'type':'object','properties':{'status':{'type':a0_0x3dc8a9(0x10b),'enum':[a0_0x3dc8a9(0xda),'idle',a0_0x3dc8a9(0x153),a0_0x3dc8a9(0xe2)]},'task':{'type':'string','description':a0_0x3dc8a9(0x164)},'progress':{'type':a0_0x3dc8a9(0xf3),'description':'Progress\x200-100'}},'required':[a0_0x3dc8a9(0x14b)]}},{'name':a0_0x3dc8a9(0x151),'description':a0_0x3dc8a9(0x160),'inputSchema':{'type':a0_0x3dc8a9(0x156),'properties':{'alias':{'type':a0_0x3dc8a9(0x10b),'description':a0_0x3dc8a9(0x123)},'task':{'type':a0_0x3dc8a9(0x10b),'description':a0_0x3dc8a9(0x101)},'priority':{'type':a0_0x3dc8a9(0x10b),'enum':[a0_0x3dc8a9(0xf8),a0_0x3dc8a9(0xe0),'low'],'description':a0_0x3dc8a9(0x142)}},'required':['alias',a0_0x3dc8a9(0x161)]}},{'name':a0_0x3dc8a9(0x12f),'description':a0_0x3dc8a9(0x138),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x3dc8a9(0x10b),'description':a0_0x3dc8a9(0x123)},'message':{'type':a0_0x3dc8a9(0x10b),'description':a0_0x3dc8a9(0x13d)}},'required':['alias','message']}},{'name':a0_0x3dc8a9(0x119),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':a0_0x3dc8a9(0x156),'properties':{}}}]}));function a0_0x23d0(_0x5c72e8,_0x2b09c9){_0x5c72e8=_0x5c72e8-0xcc;const _0x1f1603=a0_0x1f16();let _0x23d0b0=_0x1f1603[_0x5c72e8];return _0x23d0b0;}async function Y(_0x291cbf,_0x4c6e08){const _0x39fb34=a0_0x3dc8a9;let _0x544dcb=await fetch(j+'/mcp',{'method':_0x39fb34(0xd0),'headers':{'Content-Type':_0x39fb34(0x149),'Accept':_0x39fb34(0x11c),...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON[_0x39fb34(0xee)]({'jsonrpc':_0x39fb34(0x127),'id':0x1,'method':'initialize','params':{'protocolVersion':_0x39fb34(0x118),'capabilities':{},'clientInfo':{'name':'commhub-channel','version':_0x39fb34(0x120)}}})});if(!_0x544dcb['ok']){let _0x2f7951=await _0x544dcb[_0x39fb34(0x111)]();return W('CommHub\x20init\x20failed:\x20'+_0x544dcb[_0x39fb34(0x14b)]+'\x20'+_0x2f7951[_0x39fb34(0xdb)](0x0,0x64)),{'ok':!0x1,'error':_0x39fb34(0x159)+_0x544dcb[_0x39fb34(0x14b)]};}await _0x544dcb[_0x39fb34(0x111)]();let _0x289488=(await(await fetch(j+_0x39fb34(0x143),{'method':_0x39fb34(0xd0),'headers':{'Content-Type':_0x39fb34(0x149),'Accept':'application/json,\x20text/event-stream',...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON[_0x39fb34(0xee)]({'jsonrpc':_0x39fb34(0x127),'id':0x2,'method':'tools/call','params':{'name':_0x291cbf,'arguments':_0x4c6e08}})}))[_0x39fb34(0x111)]())['split']('\x0a')['find'](_0x1e58cb=>_0x1e58cb[_0x39fb34(0x148)]('data:\x20'));if(_0x289488){let _0x15d336=JSON['parse'](_0x289488[_0x39fb34(0xdb)](0x6));return _0x15d336?.['result']?.[_0x39fb34(0x10a)]?.[0x0]?.[_0x39fb34(0x111)]?JSON[_0x39fb34(0x121)](_0x15d336[_0x39fb34(0x15d)][_0x39fb34(0x10a)][0x0][_0x39fb34(0x111)]):_0x15d336;}return{'ok':!0x1,'error':_0x39fb34(0x12c)};}x[a0_0x3dc8a9(0x10e)](a0_0x27aa59,async _0x46bd74=>{const _0xd2d7af=a0_0x3dc8a9;let {name:_0x4ffe55,arguments:_0x4ff5d3}=_0x46bd74[_0xd2d7af(0xea)];if(_0x4ffe55==='commhub_reply'){let {task_id:_0xf41d66,text:_0x52120f,status:_0x28ced3}=_0x4ff5d3;if(_0x28ced3===_0xd2d7af(0x129)||_0x28ced3===_0xd2d7af(0x150)||_0x28ced3===_0xd2d7af(0xf4)){let _0x5bd725=_0x28ced3==='completed'?_0xd2d7af(0x11b):_0x28ced3,_0x3f00c3=_0xf41d66?D[_0xd2d7af(0x131)](_0xf41d66)||'hub':_0xd2d7af(0x12d),_0x196b38=await Y(_0xd2d7af(0x152),{'alias':_0x3f00c3,'text':_0x52120f,'in_reply_to':_0xf41d66||void 0x0,'status':_0x5bd725,'from_session':G});if(_0xf41d66)D[_0xd2d7af(0x133)](_0xf41d66);return{'content':[{'type':'text','text':JSON[_0xd2d7af(0xee)](_0x196b38)}]};}let _0x22c816=await Y(_0xd2d7af(0x124),{'resume_id':K,'alias':G,'status':_0x28ced3===_0xd2d7af(0x153)?_0xd2d7af(0x153):_0x28ced3===_0xd2d7af(0xe2)?'error':_0xd2d7af(0xda),'task':_0x52120f['slice'](0x0,0xc8),'output':_0x52120f});return{'content':[{'type':_0xd2d7af(0x111),'text':JSON[_0xd2d7af(0xee)](_0x22c816)}]};}if(_0x4ffe55===_0xd2d7af(0xce)){let {status:_0x580359,task:_0x373585,progress:_0x28682c}=_0x4ff5d3,_0x21bb48=await Y(_0xd2d7af(0x124),{'resume_id':K,'alias':G,'status':_0x580359,'task':_0x373585,'progress':_0x28682c});return{'content':[{'type':_0xd2d7af(0x111),'text':JSON[_0xd2d7af(0xee)](_0x21bb48)}]};}if(_0x4ffe55===_0xd2d7af(0x151)){let {alias:_0x54ff77,task:_0x3c94e0,priority:_0x229d37}=_0x4ff5d3,_0x1eefa5=await Y('send_task',{'alias':_0x54ff77,'task':_0x3c94e0,'priority':_0x229d37||_0xd2d7af(0xe0),'from_session':G});return{'content':[{'type':_0xd2d7af(0x111),'text':JSON[_0xd2d7af(0xee)](_0x1eefa5)}]};}if(_0x4ffe55===_0xd2d7af(0x12f)){let {alias:_0x257aec,message:_0x5d2245}=_0x4ff5d3,_0x27047c=await Y(_0xd2d7af(0x12a),{'alias':_0x257aec,'message':_0x5d2245,'from_session':G});return{'content':[{'type':_0xd2d7af(0x111),'text':JSON[_0xd2d7af(0xee)](_0x27047c)}]};}if(_0x4ffe55===_0xd2d7af(0x119)){let _0x55e54d=await Y(_0xd2d7af(0x14c),{});return{'content':[{'type':'text','text':JSON[_0xd2d7af(0xee)](_0x55e54d)}]};}return{'content':[{'type':_0xd2d7af(0x111),'text':JSON[_0xd2d7af(0xee)]({'error':_0xd2d7af(0x146)})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x26c8e5=a0_0x3dc8a9;try{await Y(_0x26c8e5(0x124),{'resume_id':K,'alias':G,'status':_0x26c8e5(0xff),'server':a0_0x17ba98(),'hostname':a0_0x17ba98(),'agent':_0x26c8e5(0x155),'project_dir':process[_0x26c8e5(0x145)](),'tmux_name':f||void 0x0}),W('re-registered\x20as\x20\x22'+G+'\x22\x20after\x20SSE\x20reconnect');}catch(_0x3fb487){W(_0x26c8e5(0x105)+_0x3fb487);}}async function o(){const _0x418d3f=a0_0x3dc8a9;let _0x5928b3=j+_0x418d3f(0x166)+encodeURIComponent(G),_0x143dbd={};if(F)_0x143dbd[_0x418d3f(0x13b)]=_0x418d3f(0xf5)+F;W(_0x418d3f(0xf1)+_0x5928b3);let _0xb9b969=O,_0x581329=!0x0,_0x1b2a35=null;while(!0x0){try{let _0x17a172=await fetch(_0x5928b3,{'headers':_0x143dbd});if(!_0x17a172['ok']){if(W('SSE\x20error:\x20'+_0x17a172[_0x418d3f(0x14b)]+'\x20'+_0x17a172[_0x418d3f(0x104)]),_0x1b2a35=_0x1b2a35??Date[_0x418d3f(0xec)](),Date[_0x418d3f(0xec)]()-_0x1b2a35>T){W(_0x418d3f(0xd3)+j+_0x418d3f(0xe8));return;}await N(_0xb9b969),_0xb9b969=Math[_0x418d3f(0x107)](_0xb9b969*0x2,R);continue;}let _0x2db453=_0x17a172['body'][_0x418d3f(0x144)](),_0xcad9b4=new TextDecoder(),_0x28a4a6='';_0xb9b969=O;while(!0x0){let {done:_0x27922f,value:_0x547f34}=await _0x2db453[_0x418d3f(0xcd)]();if(_0x27922f)break;_0x28a4a6+=_0xcad9b4[_0x418d3f(0xef)](_0x547f34,{'stream':!0x0});let _0x12197b=_0x28a4a6['split']('\x0a\x0a');_0x28a4a6=_0x12197b[_0x418d3f(0x109)]()||'';for(let _0x33f4d5 of _0x12197b){let _0x251ac4=_0x33f4d5['split']('\x0a')[_0x418d3f(0x163)](_0xc00213=>_0xc00213[_0x418d3f(0x148)](_0x418d3f(0xdf)));if(!_0x251ac4)continue;try{let _0x5bdb05=JSON['parse'](_0x251ac4[_0x418d3f(0xdb)](0x6));if(await a(_0x5bdb05),_0x5bdb05[_0x418d3f(0x15e)]==='connected'){if(_0x1b2a35=null,!_0x581329)await l();_0x581329=!0x1;}}catch(_0x2ad9d1){W(_0x418d3f(0xe3)+_0x2ad9d1);}}}W(_0x418d3f(0xcc));}catch(_0x4bd194){W('SSE\x20connection\x20error:\x20'+_0x4bd194);}if(_0x1b2a35=_0x1b2a35??Date[_0x418d3f(0xec)](),Date[_0x418d3f(0xec)]()-_0x1b2a35>T){W(_0x418d3f(0xd3)+j+_0x418d3f(0xe8));return;}await N(_0xb9b969),_0xb9b969=Math[_0x418d3f(0x107)](_0xb9b969*0x2,R);}}async function a(_0x450565){const _0x6438d=a0_0x3dc8a9;if(_0x450565[_0x6438d(0x15e)]===_0x6438d(0x11a)){W(_0x6438d(0x15c)+G+'\x22');return;}if(_0x450565[_0x6438d(0x15e)]==='new_message'){if(W(_0x6438d(0xf0)+_0x450565[_0x6438d(0xe1)]+':\x20'+_0x450565['message'][_0x6438d(0xdb)](0x0,0x3c)),await x[_0x6438d(0x139)]({'method':_0x6438d(0x13a),'params':{'content':_0x450565[_0x6438d(0x135)],'meta':{'sender':_0x450565[_0x6438d(0xe1)]||_0x6438d(0x12d),'sender_id':'commhub','user':_0x450565[_0x6438d(0xe1)]||'hub','priority':_0x6438d(0xe0)}}}),_0x450565[_0x6438d(0xd5)])await Y(_0x6438d(0x15b),{'alias':G,'message_id':_0x450565[_0x6438d(0xd5)]});return;}if(_0x450565[_0x6438d(0x15e)]==='new_task'||_0x450565[_0x6438d(0x15e)]===_0x6438d(0x165)){W('←\x20'+_0x450565['type']+':\x20inbox_count='+_0x450565[_0x6438d(0xe7)]+_0x6438d(0xe6)+(_0x450565[_0x6438d(0x126)]||_0x6438d(0xe0)));let _0x39886d=await Y(_0x6438d(0x141),{'alias':G,'limit':0x5});if(_0x39886d?.['ok']&&_0x39886d[_0x6438d(0x112)]?.[_0x6438d(0x13c)]>0x0)for(let _0x98f0f0 of _0x39886d[_0x6438d(0x112)]){let _0x1e473a={'sender':_0x98f0f0[_0x6438d(0x100)]||_0x6438d(0x12d),'sender_id':'commhub','user':_0x98f0f0[_0x6438d(0x100)]||_0x6438d(0x12d),'task_id':_0x98f0f0['id'],'priority':_0x98f0f0[_0x6438d(0x126)]||_0x6438d(0xe0)};D[_0x6438d(0x13f)](_0x98f0f0['id'],_0x98f0f0['from_session']||'hub'),await x[_0x6438d(0x139)]({'method':'notifications/claude/channel','params':{'content':_0x98f0f0[_0x6438d(0x10a)],'meta':_0x1e473a}}),W(_0x6438d(0xe4)+_0x98f0f0['id'][_0x6438d(0xdb)](0x0,0x8)+_0x6438d(0x137)+_0x98f0f0['from_session']+':\x20'+_0x98f0f0[_0x6438d(0x10a)][_0x6438d(0xdb)](0x0,0x3c)),await Y(_0x6438d(0x15b),{'alias':G,'message_id':_0x98f0f0['id']});}}}async function n(){const _0x2ee2e1=a0_0x3dc8a9;let _0x56f207=new a0_0x121206();await x[_0x2ee2e1(0x114)](_0x56f207),W(_0x2ee2e1(0xd7)),W(_0x2ee2e1(0x162)),o()[_0x2ee2e1(0x116)](_0x270b58=>W(_0x2ee2e1(0x108)+_0x270b58)),Y('report_status',{'resume_id':K,'alias':G,'status':_0x2ee2e1(0xff),'server':a0_0x17ba98(),'hostname':a0_0x17ba98(),'agent':_0x2ee2e1(0x155),'project_dir':process[_0x2ee2e1(0x145)](),'tmux_name':f||void 0x0})[_0x2ee2e1(0x128)](()=>W('registered\x20as\x20\x22'+G+_0x2ee2e1(0x117)+K[_0x2ee2e1(0xdb)](0x0,0x8)+')'))[_0x2ee2e1(0x116)](_0xc7a269=>W(_0x2ee2e1(0xf2)+_0xc7a269)),setInterval(()=>{const _0x42be9b=_0x2ee2e1;Y(_0x42be9b(0x124),{'resume_id':K,'alias':G,'status':_0x42be9b(0xff),'server':a0_0x17ba98(),'hostname':a0_0x17ba98(),'agent':_0x42be9b(0x155),'project_dir':process[_0x42be9b(0x145)](),'tmux_name':f||void 0x0})[_0x42be9b(0x116)](_0x32655e=>W(_0x42be9b(0x15a)+_0x32655e));},0x2bf20),W(_0x2ee2e1(0x154));}n()[a0_0x3dc8a9(0x116)](_0xd8ec44=>{const _0x45aca8=a0_0x3dc8a9;W(_0x45aca8(0xfc)+_0xd8ec44),process['exit'](0x1);});async function b(){const _0x5ecfc2=a0_0x3dc8a9;W(_0x5ecfc2(0xd2)),await Y(_0x5ecfc2(0x124),{'resume_id':K,'alias':G,'status':_0x5ecfc2(0x147),'task':_0x5ecfc2(0x103)})[_0x5ecfc2(0x116)](()=>{}),process['exit'](0x0);}process['stdin']['on'](a0_0x3dc8a9(0x14f),()=>b()),process['on'](a0_0x3dc8a9(0xe9),()=>b()),process['on'](a0_0x3dc8a9(0x122),()=>b());
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.3.0-preview.
|
|
4
|
-
"description": "AI Agent Network CLI
|
|
3
|
+
"version": "2.3.0-preview.9",
|
|
4
|
+
"description": "AI Agent Network CLI — Local-first multi-agent orchestration across 4 runtimes (Claude Code CLI / Claude Agent SDK / Codex SDK / Grok Build ACP) and 8+ LLM providers (Anthropic / OpenAI / xAI Grok / MiniMax / DeepSeek / GLM / Kimi / InternLM / Xiaomi MiMo / OpenRouter). Apache 2.0.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/client.js",
|
|
7
7
|
"types": "dist/client.d.ts",
|