@sleep2agi/agent-network 2.3.0-preview.11 → 2.3.0-preview.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/cli.js +1 -1
- package/dist/src/client.js +1 -1
- package/dist/src/im/feishu/worker.js +1 -1
- package/dist/src/node-server.js +1 -1
- package/package.json +1 -1
package/dist/src/node-server.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
|
-
const a0_0xde0de9=a0_0xf89e;(function(_0x18d8fb,_0x3a1628){const _0x233680=a0_0xf89e,_0x2b360d=_0x18d8fb();while(!![]){try{const _0x43cf8c=-parseInt(_0x233680(0xf5))/0x1+-parseInt(_0x233680(0xfb))/0x2*(parseInt(_0x233680(0xa8))/0x3)+parseInt(_0x233680(0xba))/0x4*(-parseInt(_0x233680(0xd7))/0x5)+parseInt(_0x233680(0x7b))/0x6+parseInt(_0x233680(0x109))/0x7*(parseInt(_0x233680(0xa4))/0x8)+parseInt(_0x233680(0x10d))/0x9+parseInt(_0x233680(0x77))/0xa;if(_0x43cf8c===_0x3a1628)break;else _0x2b360d['push'](_0x2b360d['shift']());}catch(_0x1d56a1){_0x2b360d['push'](_0x2b360d['shift']());}}}(a0_0x18c1,0xee118));import{readFileSync as a0_0x30f608,existsSync as a0_0x16fa5b}from'fs';import{randomUUID as a0_0x50b48e}from'crypto';function a0_0x18c1(){const _0x2ad29f=['Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','number','4500330Cckgnf','alias','stringify','stderr','5463852pnWXXU','no\x20response','\x20priority=','\x20/\x20hostname=','new_message','in_progress','low','notification','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','SSE\x20connection\x20error:\x20','→\x20injected\x20task\x20','SIGINT','ENV:\x20URL=','SSE\x20fatal:\x20','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a','message_id','tools/call','startsWith','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','commhub_send_message','delete','normal','join','unknown\x20tool','get','messages','/mcp','token','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','trim','indexOf','set','...\x20TMUX=','Bearer\x20','from','completed','\x22\x20(','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','commhub_get_all_status','\x20PROJECT_ENV=','8VynnaD','message','send_task','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','291741QWLBTh','heartbeat\x20failed:\x20','priority','broadcast','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','object','claude-code','commhub-channel','Target\x20session\x20alias',':\x20inbox_count=','2.0','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','parse','cancelled','.env','write','split','notifications/claude/channel','13724hQZcyX','blocked','high','getReader','starting\x20SSE\x20listener...','\x20from\x20','idle','catch','utf-8','report_status','connected','get_all_status','error','re-registered\x20as\x20\x22','hub','application/json,\x20text/event-stream','none','Reply\x20text\x20/\x20result\x20summary',']\x20[commhub]\x20','commhub','POST','commhub_report_status','content','ready\x20—\x20waiting\x20for\x20events','result','replace','now','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','/events/','1240xxbIbR','session\x20disconnected','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','connect','get_inbox','failed','.claude/channels/commhub','exit','config.json','unattributed-','body','commhub_send_task','new_task','MCP\x20stdio\x20connected','ack_inbox','find','from_session','\x22\x20after\x20SSE\x20reconnect','.anet','replied','initialize','type','Priority\x20(default:\x20normal)','cwd','min','fatal:\x20','commhub_reply','slice','tmux\x20display-message\x20-p\x20\x27#S\x27','status','1312248FESlcb','application/json','setRequestHandler','parse\x20error:\x20','0.3.0','Current\x20task\x20description','4ayJUAU','SIGTERM','(none)','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','toTimeString','data:\x20','Progress\x200-100','connecting\x20to\x20','\x20ALIAS=','\x20RESUME_ID=','params','read','CommHub\x20init\x20failed:\x20','statusText','9921555uWHxmZ','text','inbox_count','Task\x20content','4992462vCBNld','Session\x20alias:\x20','string','decode'];a0_0x18c1=function(){return _0x2ad29f;};return a0_0x18c1();}import{join as a0_0x468e1a}from'path';import{hostname as a0_0x19539f}from'os';import{execSync as a0_0x23f8c3}from'child_process';import{Server as a0_0x3c1269}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0xbeab5b}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0xaaf5d5,CallToolRequestSchema as a0_0x3f10d8}from'@modelcontextprotocol/sdk/types.js';function I(_0x5761af){const _0x56425d=a0_0xf89e;if(!a0_0x16fa5b(_0x5761af))return;for(let _0x3de513 of a0_0x30f608(_0x5761af,_0x56425d(0xc2))['split']('\x0a')){let _0x313b74=_0x3de513[_0x56425d(0x99)]();if(!_0x313b74||_0x313b74[_0x56425d(0x8c)]('#'))continue;let _0x16de66=_0x313b74[_0x56425d(0x9a)]('=');if(_0x16de66<0x0)continue;let _0x4ff2a1=_0x313b74[_0x56425d(0xf2)](0x0,_0x16de66)['trim'](),_0x2553fb=_0x313b74[_0x56425d(0xf2)](_0x16de66+0x1)[_0x56425d(0x99)]()[_0x56425d(0xd3)](/^["']|["']$/g,'');if(!process.env[_0x4ff2a1])process.env[_0x4ff2a1]=_0x2553fb;}}var L=process.env.HOME||'~',U=a0_0x468e1a(L,a0_0xde0de9(0xdd));I(a0_0x468e1a(U,a0_0xde0de9(0xb6)));var v=process['cwd']()[a0_0xde0de9(0xd3)](/\//g,'-');I(a0_0x468e1a(U,v,a0_0xde0de9(0xb6)));function d(){const _0x3c95f2=a0_0xde0de9;try{return a0_0x23f8c3(_0x3c95f2(0xf3),{'encoding':'utf-8','timeout':0x7d0})[_0x3c95f2(0x99)]();}catch{return'';}}function m(){const _0x51dbdc=a0_0xde0de9;try{let _0x2960a4=a0_0x468e1a(L,_0x51dbdc(0xe9),_0x51dbdc(0xdf));if(a0_0x16fa5b(_0x2960a4))return JSON[_0x51dbdc(0xb4)](a0_0x30f608(_0x2960a4,_0x51dbdc(0xc2)));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u[a0_0xde0de9(0xc8)]||'http://127.0.0.1:9200',f=process.env.COMMHUB_TMUX||d();function r(){const _0x27ff66=a0_0xde0de9;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS['trim']())return process.env.COMMHUB_ALIAS[_0x27ff66(0x99)]();return process[_0x27ff66(0x7a)][_0x27ff66(0xb7)](_0x27ff66(0xfe)+('would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME='+(f||_0x27ff66(0xfd))+_0x27ff66(0x7e)+a0_0x19539f()+_0x27ff66(0x89))),_0x27ff66(0xe0)+process['pid'];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x50b48e(),F=process.env.COMMHUB_TOKEN||u[a0_0xde0de9(0x96)]||'';function W(_0x10980d){const _0x55d614=a0_0xde0de9;let _0x270375=new Date()[_0x55d614(0xff)]()[_0x55d614(0xf2)](0x0,0x8);process['stderr'][_0x55d614(0xb7)]('['+_0x270375+_0x55d614(0xcc)+_0x10980d+'\x0a');}function N(_0x123406){return new Promise(_0x27256f=>setTimeout(_0x27256f,_0x123406));}W(a0_0xde0de9(0x87)+j+a0_0xde0de9(0x103)+G+a0_0xde0de9(0x104)+K[a0_0xde0de9(0xf2)](0x0,0x8)+a0_0xde0de9(0x9c)+(f||a0_0xde0de9(0xca))+'\x20CWD='+process[a0_0xde0de9(0xee)]()+a0_0xde0de9(0xa3)+v);var D=new Map(),x=new a0_0x3c1269({'name':a0_0xde0de9(0xaf),'version':a0_0xde0de9(0xf9)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0xde0de9(0xd9),a0_0xde0de9(0xd5),a0_0xde0de9(0x8d),a0_0xde0de9(0xa1),a0_0xde0de9(0x10e)+G][a0_0xde0de9(0x91)]('\x0a')});x[a0_0xde0de9(0xf7)](a0_0xaaf5d5,async()=>({'tools':[{'name':a0_0xde0de9(0xf1),'description':a0_0xde0de9(0xb3),'inputSchema':{'type':'object','properties':{'task_id':{'type':a0_0xde0de9(0x10f),'description':'The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)'},'text':{'type':a0_0xde0de9(0x10f),'description':a0_0xde0de9(0xcb)},'status':{'type':'string','enum':[a0_0xde0de9(0x9f),a0_0xde0de9(0xdc),a0_0xde0de9(0xb5),'blocked',a0_0xde0de9(0xc6),a0_0xde0de9(0x80)],'description':a0_0xde0de9(0x97)}},'required':[a0_0xde0de9(0x10a)]}},{'name':a0_0xde0de9(0xcf),'description':'Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','inputSchema':{'type':a0_0xde0de9(0xad),'properties':{'status':{'type':a0_0xde0de9(0x10f),'enum':['working','idle',a0_0xde0de9(0xbb),'error']},'task':{'type':'string','description':a0_0xde0de9(0xfa)},'progress':{'type':a0_0xde0de9(0x76),'description':a0_0xde0de9(0x101)}},'required':[a0_0xde0de9(0xf4)]}},{'name':a0_0xde0de9(0xe2),'description':a0_0xde0de9(0xac),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0xde0de9(0x10f),'description':a0_0xde0de9(0xb0)},'task':{'type':a0_0xde0de9(0x10f),'description':a0_0xde0de9(0x10c)},'priority':{'type':a0_0xde0de9(0x10f),'enum':[a0_0xde0de9(0xbc),a0_0xde0de9(0x90),a0_0xde0de9(0x81)],'description':a0_0xde0de9(0xed)}},'required':['alias','task']}},{'name':a0_0xde0de9(0x8e),'description':a0_0xde0de9(0xa7),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0xde0de9(0x10f),'description':a0_0xde0de9(0xb0)},'message':{'type':a0_0xde0de9(0x10f),'description':'Message\x20content'}},'required':[a0_0xde0de9(0x78),a0_0xde0de9(0xa5)]}},{'name':a0_0xde0de9(0xa2),'description':a0_0xde0de9(0x75),'inputSchema':{'type':'object','properties':{}}}]}));async function Y(_0x554c41,_0x1ddc97){const _0x266ee7=a0_0xde0de9;let _0x2c4deb=await fetch(j+_0x266ee7(0x95),{'method':_0x266ee7(0xce),'headers':{'Content-Type':_0x266ee7(0xf6),'Accept':_0x266ee7(0xc9),...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON[_0x266ee7(0x79)]({'jsonrpc':'2.0','id':0x1,'method':_0x266ee7(0xeb),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x266ee7(0xaf),'version':'0.3.0'}}})});if(!_0x2c4deb['ok']){let _0x2ce772=await _0x2c4deb[_0x266ee7(0x10a)]();return W(_0x266ee7(0x107)+_0x2c4deb[_0x266ee7(0xf4)]+'\x20'+_0x2ce772[_0x266ee7(0xf2)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x2c4deb['status']};}await _0x2c4deb['text']();let _0x2686f7=(await(await fetch(j+_0x266ee7(0x95),{'method':_0x266ee7(0xce),'headers':{'Content-Type':'application/json','Accept':_0x266ee7(0xc9),...F?{'Authorization':_0x266ee7(0x9d)+F}:{}},'body':JSON['stringify']({'jsonrpc':_0x266ee7(0xb2),'id':0x2,'method':_0x266ee7(0x8b),'params':{'name':_0x554c41,'arguments':_0x1ddc97}})}))[_0x266ee7(0x10a)]())['split']('\x0a')[_0x266ee7(0xe6)](_0x24af8a=>_0x24af8a['startsWith'](_0x266ee7(0x100)));if(_0x2686f7){let _0x4a8a84=JSON['parse'](_0x2686f7[_0x266ee7(0xf2)](0x6));return _0x4a8a84?.[_0x266ee7(0xd2)]?.['content']?.[0x0]?.['text']?JSON[_0x266ee7(0xb4)](_0x4a8a84['result'][_0x266ee7(0xd0)][0x0]['text']):_0x4a8a84;}return{'ok':!0x1,'error':_0x266ee7(0x7c)};}x[a0_0xde0de9(0xf7)](a0_0x3f10d8,async _0x6d656e=>{const _0x57293=a0_0xde0de9;let {name:_0x194e63,arguments:_0x440e3c}=_0x6d656e[_0x57293(0x105)];if(_0x194e63===_0x57293(0xf1)){let {task_id:_0x406677,text:_0xd5b7a3,status:_0x5f14fb}=_0x440e3c;if(_0x5f14fb==='completed'||_0x5f14fb===_0x57293(0xdc)||_0x5f14fb===_0x57293(0xb5)){let _0x29201e=_0x5f14fb===_0x57293(0x9f)?_0x57293(0xea):_0x5f14fb,_0x57feba=_0x406677?D[_0x57293(0x93)](_0x406677)||_0x57293(0xc8):_0x57293(0xc8),_0x2a52cb=await Y('send_reply',{'alias':_0x57feba,'text':_0xd5b7a3,'in_reply_to':_0x406677||void 0x0,'status':_0x29201e,'from_session':G});if(_0x406677)D[_0x57293(0x8f)](_0x406677);return{'content':[{'type':'text','text':JSON['stringify'](_0x2a52cb)}]};}let _0x19c24e=await Y('report_status',{'resume_id':K,'alias':G,'status':_0x5f14fb==='blocked'?'blocked':_0x5f14fb==='error'?_0x57293(0xc6):'working','task':_0xd5b7a3['slice'](0x0,0xc8),'output':_0xd5b7a3});return{'content':[{'type':_0x57293(0x10a),'text':JSON[_0x57293(0x79)](_0x19c24e)}]};}if(_0x194e63===_0x57293(0xcf)){let {status:_0x46a9ba,task:_0x58d4bb,progress:_0x1f248b}=_0x440e3c,_0x5554d8=await Y(_0x57293(0xc3),{'resume_id':K,'alias':G,'status':_0x46a9ba,'task':_0x58d4bb,'progress':_0x1f248b});return{'content':[{'type':'text','text':JSON[_0x57293(0x79)](_0x5554d8)}]};}if(_0x194e63===_0x57293(0xe2)){let {alias:_0x7fa7b1,task:_0x429c2c,priority:_0x2bd287}=_0x440e3c,_0x510389=await Y(_0x57293(0xa6),{'alias':_0x7fa7b1,'task':_0x429c2c,'priority':_0x2bd287||_0x57293(0x90),'from_session':G});return{'content':[{'type':_0x57293(0x10a),'text':JSON[_0x57293(0x79)](_0x510389)}]};}if(_0x194e63===_0x57293(0x8e)){let {alias:_0x266ca0,message:_0x210af8}=_0x440e3c,_0x5db17e=await Y('send_message',{'alias':_0x266ca0,'message':_0x210af8,'from_session':G});return{'content':[{'type':_0x57293(0x10a),'text':JSON['stringify'](_0x5db17e)}]};}if(_0x194e63===_0x57293(0xa2)){let _0x50b7f8=await Y(_0x57293(0xc5),{});return{'content':[{'type':_0x57293(0x10a),'text':JSON['stringify'](_0x50b7f8)}]};}return{'content':[{'type':'text','text':JSON[_0x57293(0x79)]({'error':_0x57293(0x92)})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x421780=a0_0xde0de9;try{await Y(_0x421780(0xc3),{'resume_id':K,'alias':G,'status':'idle','server':a0_0x19539f(),'hostname':a0_0x19539f(),'agent':'claude-code','project_dir':process[_0x421780(0xee)](),'tmux_name':f||void 0x0}),W(_0x421780(0xc7)+G+_0x421780(0xe8));}catch(_0x5bd2d5){W('re-register\x20failed:\x20'+_0x5bd2d5);}}async function o(){const _0x588f15=a0_0xde0de9;let _0x32dff7=j+_0x588f15(0xd6)+encodeURIComponent(G),_0x44c7ab={};if(F)_0x44c7ab['Authorization']='Bearer\x20'+F;W(_0x588f15(0x102)+_0x32dff7);let _0x94d745=O,_0x28fd4c=!0x0,_0x24d6a0=null;while(!0x0){try{let _0x14b8fd=await fetch(_0x32dff7,{'headers':_0x44c7ab});if(!_0x14b8fd['ok']){if(W('SSE\x20error:\x20'+_0x14b8fd[_0x588f15(0xf4)]+'\x20'+_0x14b8fd[_0x588f15(0x108)]),_0x24d6a0=_0x24d6a0??Date[_0x588f15(0xd4)](),Date[_0x588f15(0xd4)]()-_0x24d6a0>T){W(_0x588f15(0x83)+j+_0x588f15(0x98));return;}await N(_0x94d745),_0x94d745=Math['min'](_0x94d745*0x2,R);continue;}let _0x14bcef=_0x14b8fd[_0x588f15(0xe1)][_0x588f15(0xbd)](),_0x35dad6=new TextDecoder(),_0x268c4c='';_0x94d745=O;while(!0x0){let {done:_0x4fe1d8,value:_0x2f4165}=await _0x14bcef[_0x588f15(0x106)]();if(_0x4fe1d8)break;_0x268c4c+=_0x35dad6[_0x588f15(0x74)](_0x2f4165,{'stream':!0x0});let _0x3bce66=_0x268c4c['split']('\x0a\x0a');_0x268c4c=_0x3bce66['pop']()||'';for(let _0x43baff of _0x3bce66){let _0xd695a4=_0x43baff[_0x588f15(0xb8)]('\x0a')['find'](_0x2f4314=>_0x2f4314['startsWith'](_0x588f15(0x100)));if(!_0xd695a4)continue;try{let _0x39ec05=JSON[_0x588f15(0xb4)](_0xd695a4[_0x588f15(0xf2)](0x6));if(await a(_0x39ec05),_0x39ec05[_0x588f15(0xec)]===_0x588f15(0xc4)){if(_0x24d6a0=null,!_0x28fd4c)await l();_0x28fd4c=!0x1;}}catch(_0x405be5){W(_0x588f15(0xf8)+_0x405be5);}}}W('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x510120){W(_0x588f15(0x84)+_0x510120);}if(_0x24d6a0=_0x24d6a0??Date[_0x588f15(0xd4)](),Date[_0x588f15(0xd4)]()-_0x24d6a0>T){W('SSE\x20连续\x20>1h\x20连不上\x20hub\x20('+j+_0x588f15(0x98));return;}await N(_0x94d745),_0x94d745=Math[_0x588f15(0xef)](_0x94d745*0x2,R);}}async function a(_0x4495d4){const _0x3d23fb=a0_0xde0de9;if(_0x4495d4[_0x3d23fb(0xec)]===_0x3d23fb(0xc4)){W('SSE\x20connected\x20as\x20\x22'+G+'\x22');return;}if(_0x4495d4['type']===_0x3d23fb(0x7f)){if(W('←\x20message\x20from\x20'+_0x4495d4['from']+':\x20'+_0x4495d4['message'][_0x3d23fb(0xf2)](0x0,0x3c)),await x[_0x3d23fb(0x82)]({'method':_0x3d23fb(0xb9),'params':{'content':_0x4495d4[_0x3d23fb(0xa5)],'meta':{'sender':_0x4495d4[_0x3d23fb(0x9e)]||'hub','sender_id':_0x3d23fb(0xcd),'user':_0x4495d4['from']||_0x3d23fb(0xc8),'priority':'normal'}}}),_0x4495d4['message_id'])await Y('ack_inbox',{'alias':G,'message_id':_0x4495d4[_0x3d23fb(0x8a)]});return;}if(_0x4495d4[_0x3d23fb(0xec)]===_0x3d23fb(0xe3)||_0x4495d4[_0x3d23fb(0xec)]===_0x3d23fb(0xab)){W('←\x20'+_0x4495d4[_0x3d23fb(0xec)]+_0x3d23fb(0xb1)+_0x4495d4[_0x3d23fb(0x10b)]+_0x3d23fb(0x7d)+(_0x4495d4[_0x3d23fb(0xaa)]||_0x3d23fb(0x90)));let _0x1cd9d9=await Y(_0x3d23fb(0xdb),{'alias':G,'limit':0x5});if(_0x1cd9d9?.['ok']&&_0x1cd9d9[_0x3d23fb(0x94)]?.['length']>0x0)for(let _0x5d5998 of _0x1cd9d9[_0x3d23fb(0x94)]){let _0x24d0fb={'sender':_0x5d5998[_0x3d23fb(0xe7)]||'hub','sender_id':'commhub','user':_0x5d5998[_0x3d23fb(0xe7)]||_0x3d23fb(0xc8),'task_id':_0x5d5998['id'],'priority':_0x5d5998[_0x3d23fb(0xaa)]||'normal'};D[_0x3d23fb(0x9b)](_0x5d5998['id'],_0x5d5998['from_session']||'hub'),await x[_0x3d23fb(0x82)]({'method':'notifications/claude/channel','params':{'content':_0x5d5998[_0x3d23fb(0xd0)],'meta':_0x24d0fb}}),W(_0x3d23fb(0x85)+_0x5d5998['id']['slice'](0x0,0x8)+_0x3d23fb(0xbf)+_0x5d5998['from_session']+':\x20'+_0x5d5998[_0x3d23fb(0xd0)][_0x3d23fb(0xf2)](0x0,0x3c)),await Y(_0x3d23fb(0xe5),{'alias':G,'message_id':_0x5d5998['id']});}}}async function n(){const _0x935f2=a0_0xde0de9;let _0x4e4a40=new a0_0xbeab5b();await x[_0x935f2(0xda)](_0x4e4a40),W(_0x935f2(0xe4)),W(_0x935f2(0xbe)),o()[_0x935f2(0xc1)](_0x2ca865=>W(_0x935f2(0x88)+_0x2ca865)),Y(_0x935f2(0xc3),{'resume_id':K,'alias':G,'status':'idle','server':a0_0x19539f(),'hostname':a0_0x19539f(),'agent':_0x935f2(0xae),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})['then'](()=>W('registered\x20as\x20\x22'+G+_0x935f2(0xa0)+K[_0x935f2(0xf2)](0x0,0x8)+')'))['catch'](_0x2971c6=>W('warning:\x20could\x20not\x20register:\x20'+_0x2971c6)),setInterval(()=>{const _0x1896eb=_0x935f2;Y('report_status',{'resume_id':K,'alias':G,'status':_0x1896eb(0xc0),'server':a0_0x19539f(),'hostname':a0_0x19539f(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x1896eb(0xc1)](_0x1bd5c=>W(_0x1896eb(0xa9)+_0x1bd5c));},0x2bf20),W(_0x935f2(0xd1));}n()[a0_0xde0de9(0xc1)](_0x14c86b=>{const _0x473cdb=a0_0xde0de9;W(_0x473cdb(0xf0)+_0x14c86b),process[_0x473cdb(0xde)](0x1);});async function b(){const _0x20fbd8=a0_0xde0de9;W('shutting\x20down,\x20reporting\x20offline...'),await Y(_0x20fbd8(0xc3),{'resume_id':K,'alias':G,'status':'offline','task':_0x20fbd8(0xd8)})[_0x20fbd8(0xc1)](()=>{}),process['exit'](0x0);}function a0_0xf89e(_0xafa2b7,_0x50d1bc){_0xafa2b7=_0xafa2b7-0x74;const _0x18c1cf=a0_0x18c1();let _0xf89e7e=_0x18c1cf[_0xafa2b7];return _0xf89e7e;}process['stdin']['on']('end',()=>b()),process['on'](a0_0xde0de9(0xfc),()=>b()),process['on'](a0_0xde0de9(0x86),()=>b());
|
|
2
|
+
function a0_0x53e0(){const _0x1821f6=['replace','POST','exit','tmux\x20display-message\x20-p\x20\x27#S\x27','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','type','connect','hub','\x22\x20after\x20SSE\x20reconnect','cwd','...\x20TMUX=','toTimeString','string','new_message','/events/','report_status','1163994vzJPsI','SSE\x20connection\x20error:\x20','offline','76472fylBjk','content','heartbeat\x20failed:\x20','failed','read','getReader','Current\x20task\x20description','32VpEwjz','result','send_message','.claude/channels/commhub','messages','\x20CWD=','Message\x20content','SIGTERM','blocked','SSE\x20fatal:\x20','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','connected','CommHub\x20init\x20failed:\x20','Authorization','notification','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','ack_inbox','commhub_send_task','error',':\x20inbox_count=','startsWith','MCP\x20stdio\x20connected','SIGINT','←\x20message\x20from\x20','Task\x20content','tools/call','delete','send_task','trim','http://127.0.0.1:9200','length','\x20priority=','2.0','commhub','join','unattributed-','utf-8','split','params','commhub_report_status','application/json,\x20text/event-stream','0.3.0','setRequestHandler','1507WIhpTS','working','registered\x20as\x20\x22','normal','slice','token','commhub_reply','\x20/\x20hostname=','→\x20injected\x20task\x20','commhub-channel','shutting\x20down,\x20reporting\x20offline...','stringify','9mpchDd','text','\x20PROJECT_ENV=','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','high',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','re-register\x20failed:\x20','message','35081rIDWoN','set','connecting\x20to\x20','get_all_status','Priority\x20(default:\x20normal)','find','get','SSE\x20error:\x20','end','replied','pop','Target\x20session\x20alias','451068NqDmUW','from','min','priority','581QmbHXX','init\x20failed:\x20','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','Bearer\x20','low','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','decode','now','/mcp','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','get_inbox','data:\x20','object',']\x20[commhub]\x20','commhub_get_all_status','457495gpXoim','alias','\x22\x20(','completed','SSE\x20stream\x20ended,\x20reconnecting...','unknown\x20tool','re-registered\x20as\x20\x22','\x20ALIAS=','indexOf','notifications/claude/channel','then','\x20RESUME_ID=','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','from_session','cancelled','new_task','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','session\x20disconnected','application/json','claude-code','message_id','6gyfEAf','inbox_count','config.json','commhub_send_message','write','(none)','status','send_reply','.env','starting\x20SSE\x20listener...','Progress\x200-100','Reply\x20text\x20/\x20result\x20summary','number','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','stderr','would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME=','\x20from\x20','idle','63708TxAVnv','11033120SvTgzh','statusText','parse','pid','catch','ENV:\x20URL=','fatal:\x20'];a0_0x53e0=function(){return _0x1821f6;};return a0_0x53e0();}const a0_0x741f3f=a0_0x7c29;(function(_0x5d3a7c,_0x35364a){const _0xf6cee5=a0_0x7c29,_0x226804=_0x5d3a7c();while(!![]){try{const _0x5286db=-parseInt(_0xf6cee5(0x185))/0x1+parseInt(_0xf6cee5(0x13c))/0x2+parseInt(_0xf6cee5(0x191))/0x3*(-parseInt(_0xf6cee5(0x146))/0x4)+parseInt(_0xf6cee5(0x1a5))/0x5*(parseInt(_0xf6cee5(0x111))/0x6)+-parseInt(_0xf6cee5(0x195))/0x7*(-parseInt(_0xf6cee5(0x13f))/0x8)+-parseInt(_0xf6cee5(0x17d))/0x9*(-parseInt(_0xf6cee5(0x125))/0xa)+-parseInt(_0xf6cee5(0x171))/0xb*(parseInt(_0xf6cee5(0x124))/0xc);if(_0x5286db===_0x35364a)break;else _0x226804['push'](_0x226804['shift']());}catch(_0x368c5a){_0x226804['push'](_0x226804['shift']());}}}(a0_0x53e0,0x93b0f));import{readFileSync as a0_0x25ab67,existsSync as a0_0x2e4474}from'fs';import{randomUUID as a0_0x9b5245}from'crypto';import{join as a0_0x42db3c}from'path';import{hostname as a0_0x22bf54}from'os';import{execSync as a0_0xf851a5}from'child_process';import{Server as a0_0x3c7581}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x2f7ff0}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x4a2d25,CallToolRequestSchema as a0_0x3fbdf0}from'@modelcontextprotocol/sdk/types.js';function I(_0x3f116f){const _0x3b2b49=a0_0x7c29;if(!a0_0x2e4474(_0x3f116f))return;for(let _0x5ab821 of a0_0x25ab67(_0x3f116f,_0x3b2b49(0x16a))[_0x3b2b49(0x16b)]('\x0a')){let _0x2ba39b=_0x5ab821[_0x3b2b49(0x162)]();if(!_0x2ba39b||_0x2ba39b[_0x3b2b49(0x15a)]('#'))continue;let _0x506df8=_0x2ba39b[_0x3b2b49(0x104)]('=');if(_0x506df8<0x0)continue;let _0x657808=_0x2ba39b['slice'](0x0,_0x506df8)[_0x3b2b49(0x162)](),_0x37620e=_0x2ba39b[_0x3b2b49(0x175)](_0x506df8+0x1)[_0x3b2b49(0x162)]()[_0x3b2b49(0x12c)](/^["']|["']$/g,'');if(!process.env[_0x657808])process.env[_0x657808]=_0x37620e;}}var L=process.env.HOME||'~',U=a0_0x42db3c(L,a0_0x741f3f(0x149));I(a0_0x42db3c(U,a0_0x741f3f(0x119)));var v=process['cwd']()['replace'](/\//g,'-');I(a0_0x42db3c(U,v,a0_0x741f3f(0x119)));function d(){const _0x385e67=a0_0x741f3f;try{return a0_0xf851a5(_0x385e67(0x12f),{'encoding':'utf-8','timeout':0x7d0})[_0x385e67(0x162)]();}catch{return'';}}function m(){const _0x3be837=a0_0x741f3f;try{let _0x3abf55=a0_0x42db3c(L,'.anet',_0x3be837(0x113));if(a0_0x2e4474(_0x3abf55))return JSON[_0x3be837(0x127)](a0_0x25ab67(_0x3abf55,_0x3be837(0x16a)));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u[a0_0x741f3f(0x133)]||a0_0x741f3f(0x163),f=process.env.COMMHUB_TMUX||d();function a0_0x7c29(_0xc7dc9a,_0x5afd25){_0xc7dc9a=_0xc7dc9a-0x104;const _0x53e028=a0_0x53e0();let _0x7c299c=_0x53e028[_0xc7dc9a];return _0x7c299c;}function r(){const _0x26e90a=a0_0x741f3f;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x26e90a(0x162)]())return process.env.COMMHUB_ALIAS['trim']();return process[_0x26e90a(0x120)][_0x26e90a(0x115)](_0x26e90a(0x155)+(_0x26e90a(0x121)+(f||_0x26e90a(0x116))+_0x26e90a(0x178)+a0_0x22bf54()+_0x26e90a(0x11e))),_0x26e90a(0x169)+process[_0x26e90a(0x128)];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x9b5245(),F=process.env.COMMHUB_TOKEN||u[a0_0x741f3f(0x176)]||'';function W(_0x2a5491){const _0x2f8abb=a0_0x741f3f;let _0x1743c9=new Date()[_0x2f8abb(0x137)]()[_0x2f8abb(0x175)](0x0,0x8);process[_0x2f8abb(0x120)][_0x2f8abb(0x115)]('['+_0x1743c9+_0x2f8abb(0x1a3)+_0x2a5491+'\x0a');}function N(_0x286347){return new Promise(_0x13e25d=>setTimeout(_0x13e25d,_0x286347));}W(a0_0x741f3f(0x12a)+j+a0_0x741f3f(0x1ac)+G+a0_0x741f3f(0x107)+K['slice'](0x0,0x8)+a0_0x741f3f(0x136)+(f||'none')+a0_0x741f3f(0x14b)+process[a0_0x741f3f(0x135)]()+a0_0x741f3f(0x17f)+v);var D=new Map(),x=new a0_0x3c7581({'name':a0_0x741f3f(0x17a),'version':a0_0x741f3f(0x16f)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x741f3f(0x130),a0_0x741f3f(0x180),a0_0x741f3f(0x198),'You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','Session\x20alias:\x20'+G][a0_0x741f3f(0x168)]('\x0a')});x[a0_0x741f3f(0x170)](a0_0x4a2d25,async()=>({'tools':[{'name':a0_0x741f3f(0x177),'description':a0_0x741f3f(0x197),'inputSchema':{'type':a0_0x741f3f(0x1a2),'properties':{'task_id':{'type':a0_0x741f3f(0x138),'description':a0_0x741f3f(0x11f)},'text':{'type':'string','description':a0_0x741f3f(0x11c)},'status':{'type':a0_0x741f3f(0x138),'enum':[a0_0x741f3f(0x1a8),a0_0x741f3f(0x142),a0_0x741f3f(0x10a),'blocked','error','in_progress'],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':[a0_0x741f3f(0x17e)]}},{'name':a0_0x741f3f(0x16d),'description':a0_0x741f3f(0x150),'inputSchema':{'type':a0_0x741f3f(0x1a2),'properties':{'status':{'type':a0_0x741f3f(0x138),'enum':[a0_0x741f3f(0x172),a0_0x741f3f(0x123),a0_0x741f3f(0x14e),a0_0x741f3f(0x158)]},'task':{'type':a0_0x741f3f(0x138),'description':a0_0x741f3f(0x145)},'progress':{'type':a0_0x741f3f(0x11d),'description':a0_0x741f3f(0x11b)}},'required':[a0_0x741f3f(0x117)]}},{'name':a0_0x741f3f(0x157),'description':a0_0x741f3f(0x10c),'inputSchema':{'type':a0_0x741f3f(0x1a2),'properties':{'alias':{'type':a0_0x741f3f(0x138),'description':a0_0x741f3f(0x190)},'task':{'type':'string','description':a0_0x741f3f(0x15e)},'priority':{'type':a0_0x741f3f(0x138),'enum':[a0_0x741f3f(0x181),a0_0x741f3f(0x174),a0_0x741f3f(0x19a)],'description':a0_0x741f3f(0x189)}},'required':[a0_0x741f3f(0x1a6),'task']}},{'name':'commhub_send_message','description':a0_0x741f3f(0x108),'inputSchema':{'type':a0_0x741f3f(0x1a2),'properties':{'alias':{'type':a0_0x741f3f(0x138),'description':a0_0x741f3f(0x190)},'message':{'type':a0_0x741f3f(0x138),'description':a0_0x741f3f(0x14c)}},'required':[a0_0x741f3f(0x1a6),a0_0x741f3f(0x184)]}},{'name':'commhub_get_all_status','description':a0_0x741f3f(0x19f),'inputSchema':{'type':a0_0x741f3f(0x1a2),'properties':{}}}]}));async function Y(_0x292117,_0x92f899){const _0x344dab=a0_0x741f3f;let _0x195ba1=await fetch(j+'/mcp',{'method':_0x344dab(0x12d),'headers':{'Content-Type':_0x344dab(0x10e),'Accept':_0x344dab(0x16e),...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON[_0x344dab(0x17c)]({'jsonrpc':_0x344dab(0x166),'id':0x1,'method':'initialize','params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':'commhub-channel','version':_0x344dab(0x16f)}}})});if(!_0x195ba1['ok']){let _0x3d8125=await _0x195ba1['text']();return W(_0x344dab(0x152)+_0x195ba1[_0x344dab(0x117)]+'\x20'+_0x3d8125['slice'](0x0,0x64)),{'ok':!0x1,'error':_0x344dab(0x196)+_0x195ba1['status']};}await _0x195ba1['text']();let _0x22b705=(await(await fetch(j+_0x344dab(0x19e),{'method':_0x344dab(0x12d),'headers':{'Content-Type':_0x344dab(0x10e),'Accept':'application/json,\x20text/event-stream',...F?{'Authorization':_0x344dab(0x199)+F}:{}},'body':JSON[_0x344dab(0x17c)]({'jsonrpc':_0x344dab(0x166),'id':0x2,'method':_0x344dab(0x15f),'params':{'name':_0x292117,'arguments':_0x92f899}})}))[_0x344dab(0x17e)]())['split']('\x0a')[_0x344dab(0x18a)](_0x50ad65=>_0x50ad65['startsWith'](_0x344dab(0x1a1)));if(_0x22b705){let _0x417a0e=JSON['parse'](_0x22b705['slice'](0x6));return _0x417a0e?.[_0x344dab(0x147)]?.['content']?.[0x0]?.[_0x344dab(0x17e)]?JSON['parse'](_0x417a0e['result'][_0x344dab(0x140)][0x0]['text']):_0x417a0e;}return{'ok':!0x1,'error':'no\x20response'};}x['setRequestHandler'](a0_0x3fbdf0,async _0x407a4c=>{const _0x20cb96=a0_0x741f3f;let {name:_0x182122,arguments:_0x1baa83}=_0x407a4c[_0x20cb96(0x16c)];if(_0x182122===_0x20cb96(0x177)){let {task_id:_0x2e78dc,text:_0x150ece,status:_0x584453}=_0x1baa83;if(_0x584453===_0x20cb96(0x1a8)||_0x584453===_0x20cb96(0x142)||_0x584453===_0x20cb96(0x10a)){let _0x43d1e6=_0x584453===_0x20cb96(0x1a8)?_0x20cb96(0x18e):_0x584453,_0x27f288=_0x2e78dc?D[_0x20cb96(0x18b)](_0x2e78dc)||_0x20cb96(0x133):_0x20cb96(0x133),_0x4c1ff1=await Y(_0x20cb96(0x118),{'alias':_0x27f288,'text':_0x150ece,'in_reply_to':_0x2e78dc||void 0x0,'status':_0x43d1e6,'from_session':G});if(_0x2e78dc)D[_0x20cb96(0x160)](_0x2e78dc);return{'content':[{'type':_0x20cb96(0x17e),'text':JSON['stringify'](_0x4c1ff1)}]};}let _0x527927=await Y(_0x20cb96(0x13b),{'resume_id':K,'alias':G,'status':_0x584453===_0x20cb96(0x14e)?_0x20cb96(0x14e):_0x584453===_0x20cb96(0x158)?'error':_0x20cb96(0x172),'task':_0x150ece['slice'](0x0,0xc8),'output':_0x150ece});return{'content':[{'type':_0x20cb96(0x17e),'text':JSON[_0x20cb96(0x17c)](_0x527927)}]};}if(_0x182122===_0x20cb96(0x16d)){let {status:_0x2f9623,task:_0x8d428a,progress:_0x5bd72b}=_0x1baa83,_0x37bf1b=await Y(_0x20cb96(0x13b),{'resume_id':K,'alias':G,'status':_0x2f9623,'task':_0x8d428a,'progress':_0x5bd72b});return{'content':[{'type':'text','text':JSON[_0x20cb96(0x17c)](_0x37bf1b)}]};}if(_0x182122===_0x20cb96(0x157)){let {alias:_0x2a1da1,task:_0x279065,priority:_0x2e21ad}=_0x1baa83,_0x3dd0cd=await Y(_0x20cb96(0x161),{'alias':_0x2a1da1,'task':_0x279065,'priority':_0x2e21ad||_0x20cb96(0x174),'from_session':G});return{'content':[{'type':_0x20cb96(0x17e),'text':JSON[_0x20cb96(0x17c)](_0x3dd0cd)}]};}if(_0x182122===_0x20cb96(0x114)){let {alias:_0x1458e7,message:_0x11c3a8}=_0x1baa83,_0x5c3038=await Y(_0x20cb96(0x148),{'alias':_0x1458e7,'message':_0x11c3a8,'from_session':G});return{'content':[{'type':_0x20cb96(0x17e),'text':JSON[_0x20cb96(0x17c)](_0x5c3038)}]};}if(_0x182122===_0x20cb96(0x1a4)){let _0x69f370=await Y(_0x20cb96(0x188),{});return{'content':[{'type':_0x20cb96(0x17e),'text':JSON[_0x20cb96(0x17c)](_0x69f370)}]};}return{'content':[{'type':'text','text':JSON[_0x20cb96(0x17c)]({'error':_0x20cb96(0x1aa)})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x473776=a0_0x741f3f;try{await Y(_0x473776(0x13b),{'resume_id':K,'alias':G,'status':_0x473776(0x123),'server':a0_0x22bf54(),'hostname':a0_0x22bf54(),'agent':_0x473776(0x10f),'project_dir':process[_0x473776(0x135)](),'tmux_name':f||void 0x0}),W(_0x473776(0x1ab)+G+_0x473776(0x134));}catch(_0x13ba06){W(_0x473776(0x183)+_0x13ba06);}}async function o(){const _0x121d8b=a0_0x741f3f;let _0xb90aca=j+_0x121d8b(0x13a)+encodeURIComponent(G),_0x164c6f={};if(F)_0x164c6f[_0x121d8b(0x153)]=_0x121d8b(0x199)+F;W(_0x121d8b(0x187)+_0xb90aca);let _0x138487=O,_0x4b9f5d=!0x0,_0x27cbae=null;while(!0x0){try{let _0x14c94d=await fetch(_0xb90aca,{'headers':_0x164c6f});if(!_0x14c94d['ok']){if(W(_0x121d8b(0x18c)+_0x14c94d['status']+'\x20'+_0x14c94d[_0x121d8b(0x126)]),_0x27cbae=_0x27cbae??Date[_0x121d8b(0x19d)](),Date['now']()-_0x27cbae>T){W(_0x121d8b(0x19b)+j+')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。');return;}await N(_0x138487),_0x138487=Math[_0x121d8b(0x193)](_0x138487*0x2,R);continue;}let _0xf44fdd=_0x14c94d['body'][_0x121d8b(0x144)](),_0x172440=new TextDecoder(),_0x1d0fee='';_0x138487=O;while(!0x0){let {done:_0x3f202d,value:_0x1d4ef7}=await _0xf44fdd[_0x121d8b(0x143)]();if(_0x3f202d)break;_0x1d0fee+=_0x172440[_0x121d8b(0x19c)](_0x1d4ef7,{'stream':!0x0});let _0x54ae3f=_0x1d0fee[_0x121d8b(0x16b)]('\x0a\x0a');_0x1d0fee=_0x54ae3f[_0x121d8b(0x18f)]()||'';for(let _0x539953 of _0x54ae3f){let _0x47813f=_0x539953[_0x121d8b(0x16b)]('\x0a')['find'](_0x469d0d=>_0x469d0d[_0x121d8b(0x15a)](_0x121d8b(0x1a1)));if(!_0x47813f)continue;try{let _0x38e215=JSON[_0x121d8b(0x127)](_0x47813f[_0x121d8b(0x175)](0x6));if(await a(_0x38e215),_0x38e215[_0x121d8b(0x131)]==='connected'){if(_0x27cbae=null,!_0x4b9f5d)await l();_0x4b9f5d=!0x1;}}catch(_0x2c529f){W('parse\x20error:\x20'+_0x2c529f);}}}W(_0x121d8b(0x1a9));}catch(_0xc3b305){W(_0x121d8b(0x13d)+_0xc3b305);}if(_0x27cbae=_0x27cbae??Date[_0x121d8b(0x19d)](),Date[_0x121d8b(0x19d)]()-_0x27cbae>T){W('SSE\x20连续\x20>1h\x20连不上\x20hub\x20('+j+_0x121d8b(0x182));return;}await N(_0x138487),_0x138487=Math[_0x121d8b(0x193)](_0x138487*0x2,R);}}async function a(_0x231cce){const _0x571de5=a0_0x741f3f;if(_0x231cce[_0x571de5(0x131)]===_0x571de5(0x151)){W('SSE\x20connected\x20as\x20\x22'+G+'\x22');return;}if(_0x231cce[_0x571de5(0x131)]===_0x571de5(0x139)){if(W(_0x571de5(0x15d)+_0x231cce['from']+':\x20'+_0x231cce['message'][_0x571de5(0x175)](0x0,0x3c)),await x[_0x571de5(0x154)]({'method':_0x571de5(0x105),'params':{'content':_0x231cce[_0x571de5(0x184)],'meta':{'sender':_0x231cce[_0x571de5(0x192)]||'hub','sender_id':_0x571de5(0x167),'user':_0x231cce[_0x571de5(0x192)]||_0x571de5(0x133),'priority':_0x571de5(0x174)}}}),_0x231cce[_0x571de5(0x110)])await Y(_0x571de5(0x156),{'alias':G,'message_id':_0x231cce['message_id']});return;}if(_0x231cce['type']===_0x571de5(0x10b)||_0x231cce['type']==='broadcast'){W('←\x20'+_0x231cce[_0x571de5(0x131)]+_0x571de5(0x159)+_0x231cce[_0x571de5(0x112)]+_0x571de5(0x165)+(_0x231cce[_0x571de5(0x194)]||_0x571de5(0x174)));let _0x49bafb=await Y(_0x571de5(0x1a0),{'alias':G,'limit':0x5});if(_0x49bafb?.['ok']&&_0x49bafb[_0x571de5(0x14a)]?.[_0x571de5(0x164)]>0x0)for(let _0x243b60 of _0x49bafb[_0x571de5(0x14a)]){let _0x2c461e={'sender':_0x243b60[_0x571de5(0x109)]||_0x571de5(0x133),'sender_id':_0x571de5(0x167),'user':_0x243b60[_0x571de5(0x109)]||_0x571de5(0x133),'task_id':_0x243b60['id'],'priority':_0x243b60[_0x571de5(0x194)]||'normal'};D[_0x571de5(0x186)](_0x243b60['id'],_0x243b60[_0x571de5(0x109)]||'hub'),await x[_0x571de5(0x154)]({'method':_0x571de5(0x105),'params':{'content':_0x243b60[_0x571de5(0x140)],'meta':_0x2c461e}}),W(_0x571de5(0x179)+_0x243b60['id'][_0x571de5(0x175)](0x0,0x8)+_0x571de5(0x122)+_0x243b60[_0x571de5(0x109)]+':\x20'+_0x243b60[_0x571de5(0x140)][_0x571de5(0x175)](0x0,0x3c)),await Y(_0x571de5(0x156),{'alias':G,'message_id':_0x243b60['id']});}}}async function n(){const _0x3fc603=a0_0x741f3f;let _0x150a96=new a0_0x2f7ff0();await x[_0x3fc603(0x132)](_0x150a96),W(_0x3fc603(0x15b)),W(_0x3fc603(0x11a)),o()['catch'](_0x31ff9e=>W(_0x3fc603(0x14f)+_0x31ff9e)),Y(_0x3fc603(0x13b),{'resume_id':K,'alias':G,'status':'idle','server':a0_0x22bf54(),'hostname':a0_0x22bf54(),'agent':_0x3fc603(0x10f),'project_dir':process[_0x3fc603(0x135)](),'tmux_name':f||void 0x0})[_0x3fc603(0x106)](()=>W(_0x3fc603(0x173)+G+_0x3fc603(0x1a7)+K[_0x3fc603(0x175)](0x0,0x8)+')'))['catch'](_0x1e483e=>W('warning:\x20could\x20not\x20register:\x20'+_0x1e483e)),setInterval(()=>{const _0x1e3b66=_0x3fc603;Y(_0x1e3b66(0x13b),{'resume_id':K,'alias':G,'status':'idle','server':a0_0x22bf54(),'hostname':a0_0x22bf54(),'agent':_0x1e3b66(0x10f),'project_dir':process[_0x1e3b66(0x135)](),'tmux_name':f||void 0x0})['catch'](_0x517e48=>W(_0x1e3b66(0x141)+_0x517e48));},0x2bf20),W('ready\x20—\x20waiting\x20for\x20events');}n()['catch'](_0x425fa8=>{const _0x43164b=a0_0x741f3f;W(_0x43164b(0x12b)+_0x425fa8),process['exit'](0x1);});async function b(){const _0x34773f=a0_0x741f3f;W(_0x34773f(0x17b)),await Y(_0x34773f(0x13b),{'resume_id':K,'alias':G,'status':_0x34773f(0x13e),'task':_0x34773f(0x10d)})[_0x34773f(0x129)](()=>{}),process[_0x34773f(0x12e)](0x0);}process['stdin']['on'](a0_0x741f3f(0x18d),()=>b()),process['on'](a0_0x741f3f(0x14d),()=>b()),process['on'](a0_0x741f3f(0x15c),()=>b());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.3.0-preview.
|
|
3
|
+
"version": "2.3.0-preview.14",
|
|
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",
|