@sleep2agi/agent-network 2.3.0-preview.10 → 2.3.0-preview.11
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_0x380998=a0_0x12b3;(function(_0x28b549,_0x153647){const _0x13c369=a0_0x12b3,_0x12e83e=_0x28b549();while(!![]){try{const _0x5e1e78=-parseInt(_0x13c369(0xd5))/0x1+-parseInt(_0x13c369(0xd2))/0x2+-parseInt(_0x13c369(0xbf))/0x3*(parseInt(_0x13c369(0x7c))/0x4)+-parseInt(_0x13c369(0xdf))/0x5*(-parseInt(_0x13c369(0xd9))/0x6)+parseInt(_0x13c369(0x7e))/0x7*(-parseInt(_0x13c369(0x7d))/0x8)+-parseInt(_0x13c369(0xe9))/0x9+parseInt(_0x13c369(0x101))/0xa;if(_0x5e1e78===_0x153647)break;else _0x12e83e['push'](_0x12e83e['shift']());}catch(_0x389e2d){_0x12e83e['push'](_0x12e83e['shift']());}}}(a0_0x4b27,0x953fd));import{readFileSync as a0_0x42f320,existsSync as a0_0x5c9ad6}from'fs';import{randomUUID as a0_0x2ff352}from'crypto';import{join as a0_0x2ecd40}from'path';import{hostname as a0_0x5e751e}from'os';import{execSync as a0_0x149dfc}from'child_process';import{Server as a0_0x4667b6}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x1b5e4b}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x31ba96,CallToolRequestSchema as a0_0x3c32fe}from'@modelcontextprotocol/sdk/types.js';function I(_0xfc1a73){const _0x8e5c92=a0_0x12b3;if(!a0_0x5c9ad6(_0xfc1a73))return;for(let _0x568b92 of a0_0x42f320(_0xfc1a73,_0x8e5c92(0x9f))[_0x8e5c92(0xf7)]('\x0a')){let _0x3e73d9=_0x568b92['trim']();if(!_0x3e73d9||_0x3e73d9[_0x8e5c92(0x10b)]('#'))continue;let _0xfadf0e=_0x3e73d9['indexOf']('=');if(_0xfadf0e<0x0)continue;let _0x2db6ba=_0x3e73d9['slice'](0x0,_0xfadf0e)[_0x8e5c92(0xc6)](),_0x2d85c2=_0x3e73d9[_0x8e5c92(0xb2)](_0xfadf0e+0x1)['trim']()['replace'](/^["']|["']$/g,'');if(!process.env[_0x2db6ba])process.env[_0x2db6ba]=_0x2d85c2;}}function a0_0x12b3(_0x19ba6a,_0x5deca8){_0x19ba6a=_0x19ba6a-0x7a;const _0x4b2734=a0_0x4b27();let _0x12b3eb=_0x4b2734[_0x19ba6a];return _0x12b3eb;}var L=process.env.HOME||'~',U=a0_0x2ecd40(L,'.claude/channels/commhub');I(a0_0x2ecd40(U,a0_0x380998(0xbb)));var v=process[a0_0x380998(0xa0)]()[a0_0x380998(0xa4)](/\//g,'-');I(a0_0x2ecd40(U,v,a0_0x380998(0xbb)));function d(){const _0x226267=a0_0x380998;try{return a0_0x149dfc(_0x226267(0xbd),{'encoding':_0x226267(0x9f),'timeout':0x7d0})[_0x226267(0xc6)]();}catch{return'';}}function m(){const _0x284231=a0_0x380998;try{let _0x11b39b=a0_0x2ecd40(L,_0x284231(0x8a),_0x284231(0xb9));if(a0_0x5c9ad6(_0x11b39b))return JSON['parse'](a0_0x42f320(_0x11b39b,_0x284231(0x9f)));}catch{}return{};}var u=m(),j=process.env.COMMHUB_URL||u[a0_0x380998(0xae)]||a0_0x380998(0xe1),f=process.env.COMMHUB_TMUX||d();function r(){const _0x3649bd=a0_0x380998;if(process.env.COMMHUB_ALIAS&&process.env.COMMHUB_ALIAS[_0x3649bd(0xc6)]())return process.env.COMMHUB_ALIAS['trim']();return process[_0x3649bd(0xaa)][_0x3649bd(0x85)](_0x3649bd(0xfc)+('would\x20mis-attribute.\x20Refusing\x20to\x20guess\x20from\x20TMUX_NAME='+(f||_0x3649bd(0xfb))+_0x3649bd(0xbe)+a0_0x5e751e()+_0x3649bd(0xd1))),_0x3649bd(0x10a)+process[_0x3649bd(0xa7)];}var G=r(),K=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x2ff352(),F=process.env.COMMHUB_TOKEN||u[a0_0x380998(0xf8)]||'';function W(_0x297dd6){const _0x5acba9=a0_0x380998;let _0x4b3a55=new Date()['toTimeString']()[_0x5acba9(0xb2)](0x0,0x8);process['stderr'][_0x5acba9(0x85)]('['+_0x4b3a55+_0x5acba9(0xc1)+_0x297dd6+'\x0a');}function N(_0x46fcf6){return new Promise(_0x4757f9=>setTimeout(_0x4757f9,_0x46fcf6));}function a0_0x4b27(){const _0x169b27=['\x20priority=','\x20RESUME_ID=','new_task','re-registered\x20as\x20\x22','\x20from\x20','commhub_send_task','stringify','notifications/claude/channel','ready\x20—\x20waiting\x20for\x20events','SIGTERM','now','commhub_reply','working','2.0','join','report_status','message','initialize','utf-8','cwd','POST','session\x20disconnected','high','replace','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','\x22\x20after\x20SSE\x20reconnect','pid','Reply\x20text\x20/\x20result\x20summary','idle','stderr','SSE\x20fatal:\x20','application/json,\x20text/event-stream','parse','hub','SSE\x20error:\x20','get_all_status','fatal:\x20','slice','completed','ack_inbox','in_progress','blocked','application/json','content','config.json','number','.env','CommHub\x20init\x20failed:\x20','tmux\x20display-message\x20-p\x20\x27#S\x27','\x20/\x20hostname=','5049wgxeoz','warning:\x20could\x20not\x20register:\x20',']\x20[commhub]\x20','claude-code','heartbeat\x20failed:\x20','unknown\x20tool','ENV:\x20URL=','trim','connecting\x20to\x20','parse\x20error:\x20','low','statusText','inbox_count','re-register\x20failed:\x20','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','send_task','status','data:\x20','.\x20Restart\x20node\x20via\x20`anet\x20node\x20start\x20<alias>`\x20so\x20the\x20env\x20is\x20set\x20explicitly\x20(#203).\x0a','192774sAEAvS','send_reply','Task\x20content','956212lEuUPD','notification','text','type','18twPGJm','object','commhub','0.3.0','pop','commhub_report_status','1550680SvCZRZ','none','http://127.0.0.1:9200','message_id','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','cancelled','Current\x20task\x20description','SSE\x20stream\x20ended,\x20reconnecting...','priority','length','3619962YoNpJV','body','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','broadcast','tools/call','setRequestHandler','commhub-channel','alias','/mcp','read','replied','messages','starting\x20SSE\x20listener...','normal','split','token','connected','error','(none)','[commhub]\x20WARN:\x20COMMHUB_ALIAS\x20env\x20var\x20is\x20unset\x20—\x20outbound\x20from_session\x20','commhub_send_message',':\x20inbox_count=','from_session','commhub_get_all_status','30702400VXoxda','←\x20message\x20from\x20','no\x20response','Target\x20session\x20alias','task','2025-03-26','failed','Priority\x20(default:\x20normal)','Bearer\x20','unattributed-','startsWith','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','SIGINT','min','then','\x20CWD=','1772YkHHfu','8Tdpffg','8322559IjbPyn','string','set','catch','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','SSE\x20连续\x20>1h\x20连不上\x20hub\x20(','write',')\x20—\x20放弃自动重连。手动\x20anet\x20node\x20start\x20恢复。','from','get_inbox','registered\x20as\x20\x22','.anet','find','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.'];a0_0x4b27=function(){return _0x169b27;};return a0_0x4b27();}W(a0_0x380998(0xc5)+j+'\x20ALIAS='+G+a0_0x380998(0x8e)+K['slice'](0x0,0x8)+'...\x20TMUX='+(f||a0_0x380998(0xe0))+a0_0x380998(0x7b)+process[a0_0x380998(0xa0)]()+'\x20PROJECT_ENV='+v);var D=new Map(),x=new a0_0x4667b6({'name':a0_0x380998(0xef),'version':a0_0x380998(0xdc)},{'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.','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x380998(0xa5),'Session\x20alias:\x20'+G][a0_0x380998(0x9b)]('\x0a')});x[a0_0x380998(0xee)](a0_0x31ba96,async()=>({'tools':[{'name':a0_0x380998(0x98),'description':a0_0x380998(0xe3),'inputSchema':{'type':a0_0x380998(0xda),'properties':{'task_id':{'type':a0_0x380998(0x7f),'description':a0_0x380998(0xcd)},'text':{'type':a0_0x380998(0x7f),'description':a0_0x380998(0xa8)},'status':{'type':a0_0x380998(0x7f),'enum':['completed',a0_0x380998(0x107),a0_0x380998(0xe4),'blocked',a0_0x380998(0xfa),a0_0x380998(0xb5)],'description':a0_0x380998(0x83)}},'required':['text']}},{'name':a0_0x380998(0xde),'description':a0_0x380998(0x10c),'inputSchema':{'type':'object','properties':{'status':{'type':'string','enum':[a0_0x380998(0x99),a0_0x380998(0xa9),'blocked',a0_0x380998(0xfa)]},'task':{'type':a0_0x380998(0x7f),'description':a0_0x380998(0xe5)},'progress':{'type':a0_0x380998(0xba),'description':'Progress\x200-100'}},'required':[a0_0x380998(0xcf)]}},{'name':'commhub_send_task','description':a0_0x380998(0x8c),'inputSchema':{'type':'object','properties':{'alias':{'type':'string','description':a0_0x380998(0x104)},'task':{'type':'string','description':a0_0x380998(0xd4)},'priority':{'type':a0_0x380998(0x7f),'enum':[a0_0x380998(0xa3),'normal',a0_0x380998(0xc9)],'description':a0_0x380998(0x108)}},'required':[a0_0x380998(0xf0),a0_0x380998(0x105)]}},{'name':'commhub_send_message','description':a0_0x380998(0xeb),'inputSchema':{'type':a0_0x380998(0xda),'properties':{'alias':{'type':'string','description':a0_0x380998(0x104)},'message':{'type':'string','description':'Message\x20content'}},'required':[a0_0x380998(0xf0),'message']}},{'name':a0_0x380998(0x100),'description':a0_0x380998(0x82),'inputSchema':{'type':a0_0x380998(0xda),'properties':{}}}]}));async function Y(_0x2139b7,_0x699203){const _0x22a0aa=a0_0x380998;let _0x4a65ca=await fetch(j+_0x22a0aa(0xf1),{'method':'POST','headers':{'Content-Type':_0x22a0aa(0xb7),'Accept':_0x22a0aa(0xac),...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON['stringify']({'jsonrpc':_0x22a0aa(0x9a),'id':0x1,'method':_0x22a0aa(0x9e),'params':{'protocolVersion':_0x22a0aa(0x106),'capabilities':{},'clientInfo':{'name':'commhub-channel','version':'0.3.0'}}})});if(!_0x4a65ca['ok']){let _0x1c1f6d=await _0x4a65ca['text']();return W(_0x22a0aa(0xbc)+_0x4a65ca[_0x22a0aa(0xcf)]+'\x20'+_0x1c1f6d[_0x22a0aa(0xb2)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x4a65ca[_0x22a0aa(0xcf)]};}await _0x4a65ca[_0x22a0aa(0xd7)]();let _0x157660=(await(await fetch(j+_0x22a0aa(0xf1),{'method':_0x22a0aa(0xa1),'headers':{'Content-Type':'application/json','Accept':_0x22a0aa(0xac),...F?{'Authorization':'Bearer\x20'+F}:{}},'body':JSON[_0x22a0aa(0x93)]({'jsonrpc':'2.0','id':0x2,'method':_0x22a0aa(0xed),'params':{'name':_0x2139b7,'arguments':_0x699203}})}))['text']())['split']('\x0a')[_0x22a0aa(0x8b)](_0x3aeb40=>_0x3aeb40[_0x22a0aa(0x10b)](_0x22a0aa(0xd0)));if(_0x157660){let _0x216c9e=JSON[_0x22a0aa(0xad)](_0x157660[_0x22a0aa(0xb2)](0x6));return _0x216c9e?.['result']?.['content']?.[0x0]?.[_0x22a0aa(0xd7)]?JSON[_0x22a0aa(0xad)](_0x216c9e['result'][_0x22a0aa(0xb8)][0x0]['text']):_0x216c9e;}return{'ok':!0x1,'error':_0x22a0aa(0x103)};}x['setRequestHandler'](a0_0x3c32fe,async _0x241681=>{const _0x47538f=a0_0x380998;let {name:_0x52cf82,arguments:_0x46542a}=_0x241681['params'];if(_0x52cf82===_0x47538f(0x98)){let {task_id:_0x5da52a,text:_0x25c1ab,status:_0x54d13b}=_0x46542a;if(_0x54d13b===_0x47538f(0xb3)||_0x54d13b===_0x47538f(0x107)||_0x54d13b===_0x47538f(0xe4)){let _0x45cfd5=_0x54d13b==='completed'?_0x47538f(0xf3):_0x54d13b,_0x428380=_0x5da52a?D['get'](_0x5da52a)||_0x47538f(0xae):'hub',_0x335be7=await Y(_0x47538f(0xd3),{'alias':_0x428380,'text':_0x25c1ab,'in_reply_to':_0x5da52a||void 0x0,'status':_0x45cfd5,'from_session':G});if(_0x5da52a)D['delete'](_0x5da52a);return{'content':[{'type':_0x47538f(0xd7),'text':JSON['stringify'](_0x335be7)}]};}let _0x468190=await Y(_0x47538f(0x9c),{'resume_id':K,'alias':G,'status':_0x54d13b===_0x47538f(0xb6)?_0x47538f(0xb6):_0x54d13b===_0x47538f(0xfa)?'error':'working','task':_0x25c1ab[_0x47538f(0xb2)](0x0,0xc8),'output':_0x25c1ab});return{'content':[{'type':_0x47538f(0xd7),'text':JSON[_0x47538f(0x93)](_0x468190)}]};}if(_0x52cf82==='commhub_report_status'){let {status:_0x159940,task:_0x50b63a,progress:_0x27e0ce}=_0x46542a,_0x3a1b21=await Y(_0x47538f(0x9c),{'resume_id':K,'alias':G,'status':_0x159940,'task':_0x50b63a,'progress':_0x27e0ce});return{'content':[{'type':_0x47538f(0xd7),'text':JSON[_0x47538f(0x93)](_0x3a1b21)}]};}if(_0x52cf82===_0x47538f(0x92)){let {alias:_0x1547c9,task:_0x5b5be7,priority:_0x57163a}=_0x46542a,_0x20e20c=await Y(_0x47538f(0xce),{'alias':_0x1547c9,'task':_0x5b5be7,'priority':_0x57163a||_0x47538f(0xf6),'from_session':G});return{'content':[{'type':_0x47538f(0xd7),'text':JSON[_0x47538f(0x93)](_0x20e20c)}]};}if(_0x52cf82===_0x47538f(0xfd)){let {alias:_0x5e2a08,message:_0x410fb1}=_0x46542a,_0x5e6054=await Y('send_message',{'alias':_0x5e2a08,'message':_0x410fb1,'from_session':G});return{'content':[{'type':_0x47538f(0xd7),'text':JSON['stringify'](_0x5e6054)}]};}if(_0x52cf82==='commhub_get_all_status'){let _0x31c97f=await Y(_0x47538f(0xb0),{});return{'content':[{'type':_0x47538f(0xd7),'text':JSON['stringify'](_0x31c97f)}]};}return{'content':[{'type':'text','text':JSON['stringify']({'error':_0x47538f(0xc4)})}]};});var O=0x3e8,R=0x7530,T=0x36ee80;async function l(){const _0x17ccb6=a0_0x380998;try{await Y(_0x17ccb6(0x9c),{'resume_id':K,'alias':G,'status':_0x17ccb6(0xa9),'server':a0_0x5e751e(),'hostname':a0_0x5e751e(),'agent':_0x17ccb6(0xc2),'project_dir':process[_0x17ccb6(0xa0)](),'tmux_name':f||void 0x0}),W(_0x17ccb6(0x90)+G+_0x17ccb6(0xa6));}catch(_0x1e8e96){W(_0x17ccb6(0xcc)+_0x1e8e96);}}async function o(){const _0x47b8df=a0_0x380998;let _0x4afd03=j+'/events/'+encodeURIComponent(G),_0x335321={};if(F)_0x335321['Authorization']=_0x47b8df(0x109)+F;W(_0x47b8df(0xc7)+_0x4afd03);let _0x3fe71c=O,_0x355dbc=!0x0,_0x1b14d8=null;while(!0x0){try{let _0x3f89fa=await fetch(_0x4afd03,{'headers':_0x335321});if(!_0x3f89fa['ok']){if(W(_0x47b8df(0xaf)+_0x3f89fa[_0x47b8df(0xcf)]+'\x20'+_0x3f89fa[_0x47b8df(0xca)]),_0x1b14d8=_0x1b14d8??Date[_0x47b8df(0x97)](),Date['now']()-_0x1b14d8>T){W(_0x47b8df(0x84)+j+_0x47b8df(0x86));return;}await N(_0x3fe71c),_0x3fe71c=Math['min'](_0x3fe71c*0x2,R);continue;}let _0x1143b8=_0x3f89fa[_0x47b8df(0xea)]['getReader'](),_0x42e450=new TextDecoder(),_0x5e7c22='';_0x3fe71c=O;while(!0x0){let {done:_0x3dff46,value:_0x403988}=await _0x1143b8[_0x47b8df(0xf2)]();if(_0x3dff46)break;_0x5e7c22+=_0x42e450['decode'](_0x403988,{'stream':!0x0});let _0x519dd8=_0x5e7c22[_0x47b8df(0xf7)]('\x0a\x0a');_0x5e7c22=_0x519dd8[_0x47b8df(0xdd)]()||'';for(let _0x3a3725 of _0x519dd8){let _0xf06343=_0x3a3725[_0x47b8df(0xf7)]('\x0a')['find'](_0xf9f1ca=>_0xf9f1ca['startsWith'](_0x47b8df(0xd0)));if(!_0xf06343)continue;try{let _0x50e5cd=JSON[_0x47b8df(0xad)](_0xf06343['slice'](0x6));if(await a(_0x50e5cd),_0x50e5cd[_0x47b8df(0xd8)]===_0x47b8df(0xf9)){if(_0x1b14d8=null,!_0x355dbc)await l();_0x355dbc=!0x1;}}catch(_0x2bac13){W(_0x47b8df(0xc8)+_0x2bac13);}}}W(_0x47b8df(0xe6));}catch(_0x45e305){W('SSE\x20connection\x20error:\x20'+_0x45e305);}if(_0x1b14d8=_0x1b14d8??Date[_0x47b8df(0x97)](),Date['now']()-_0x1b14d8>T){W(_0x47b8df(0x84)+j+_0x47b8df(0x86));return;}await N(_0x3fe71c),_0x3fe71c=Math[_0x47b8df(0x10e)](_0x3fe71c*0x2,R);}}async function a(_0x5f32cc){const _0x5c9286=a0_0x380998;if(_0x5f32cc['type']===_0x5c9286(0xf9)){W('SSE\x20connected\x20as\x20\x22'+G+'\x22');return;}if(_0x5f32cc[_0x5c9286(0xd8)]==='new_message'){if(W(_0x5c9286(0x102)+_0x5f32cc[_0x5c9286(0x87)]+':\x20'+_0x5f32cc[_0x5c9286(0x9d)][_0x5c9286(0xb2)](0x0,0x3c)),await x[_0x5c9286(0xd6)]({'method':_0x5c9286(0x94),'params':{'content':_0x5f32cc[_0x5c9286(0x9d)],'meta':{'sender':_0x5f32cc[_0x5c9286(0x87)]||_0x5c9286(0xae),'sender_id':_0x5c9286(0xdb),'user':_0x5f32cc[_0x5c9286(0x87)]||'hub','priority':_0x5c9286(0xf6)}}}),_0x5f32cc[_0x5c9286(0xe2)])await Y(_0x5c9286(0xb4),{'alias':G,'message_id':_0x5f32cc['message_id']});return;}if(_0x5f32cc['type']===_0x5c9286(0x8f)||_0x5f32cc[_0x5c9286(0xd8)]===_0x5c9286(0xec)){W('←\x20'+_0x5f32cc[_0x5c9286(0xd8)]+_0x5c9286(0xfe)+_0x5f32cc[_0x5c9286(0xcb)]+_0x5c9286(0x8d)+(_0x5f32cc[_0x5c9286(0xe7)]||'normal'));let _0x44fdb0=await Y(_0x5c9286(0x88),{'alias':G,'limit':0x5});if(_0x44fdb0?.['ok']&&_0x44fdb0['messages']?.[_0x5c9286(0xe8)]>0x0)for(let _0x17e6d8 of _0x44fdb0[_0x5c9286(0xf4)]){let _0x5b91ff={'sender':_0x17e6d8['from_session']||_0x5c9286(0xae),'sender_id':_0x5c9286(0xdb),'user':_0x17e6d8['from_session']||_0x5c9286(0xae),'task_id':_0x17e6d8['id'],'priority':_0x17e6d8[_0x5c9286(0xe7)]||'normal'};D[_0x5c9286(0x80)](_0x17e6d8['id'],_0x17e6d8[_0x5c9286(0xff)]||_0x5c9286(0xae)),await x[_0x5c9286(0xd6)]({'method':'notifications/claude/channel','params':{'content':_0x17e6d8[_0x5c9286(0xb8)],'meta':_0x5b91ff}}),W('→\x20injected\x20task\x20'+_0x17e6d8['id'][_0x5c9286(0xb2)](0x0,0x8)+_0x5c9286(0x91)+_0x17e6d8['from_session']+':\x20'+_0x17e6d8['content']['slice'](0x0,0x3c)),await Y(_0x5c9286(0xb4),{'alias':G,'message_id':_0x17e6d8['id']});}}}async function n(){const _0xe61ea1=a0_0x380998;let _0x19b5ac=new a0_0x1b5e4b();await x['connect'](_0x19b5ac),W('MCP\x20stdio\x20connected'),W(_0xe61ea1(0xf5)),o()[_0xe61ea1(0x81)](_0x2e92b7=>W(_0xe61ea1(0xab)+_0x2e92b7)),Y('report_status',{'resume_id':K,'alias':G,'status':'idle','server':a0_0x5e751e(),'hostname':a0_0x5e751e(),'agent':_0xe61ea1(0xc2),'project_dir':process[_0xe61ea1(0xa0)](),'tmux_name':f||void 0x0})[_0xe61ea1(0x7a)](()=>W(_0xe61ea1(0x89)+G+'\x22\x20('+K['slice'](0x0,0x8)+')'))['catch'](_0x5ae1b9=>W(_0xe61ea1(0xc0)+_0x5ae1b9)),setInterval(()=>{const _0x43b8b8=_0xe61ea1;Y(_0x43b8b8(0x9c),{'resume_id':K,'alias':G,'status':'idle','server':a0_0x5e751e(),'hostname':a0_0x5e751e(),'agent':_0x43b8b8(0xc2),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x43b8b8(0x81)](_0x34369a=>W(_0x43b8b8(0xc3)+_0x34369a));},0x2bf20),W(_0xe61ea1(0x95));}n()[a0_0x380998(0x81)](_0x143a51=>{const _0x4de9c1=a0_0x380998;W(_0x4de9c1(0xb1)+_0x143a51),process['exit'](0x1);});async function b(){const _0x1af1b5=a0_0x380998;W('shutting\x20down,\x20reporting\x20offline...'),await Y(_0x1af1b5(0x9c),{'resume_id':K,'alias':G,'status':'offline','task':_0x1af1b5(0xa2)})[_0x1af1b5(0x81)](()=>{}),process['exit'](0x0);}process['stdin']['on']('end',()=>b()),process['on'](a0_0x380998(0x96),()=>b()),process['on'](a0_0x380998(0x10d),()=>b());
|
|
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());
|
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.11",
|
|
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",
|