@sleep2agi/agent-network 2.0.0-preview.22 → 2.0.0-preview.24
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/README.md +25 -5
- package/dist/bin/cli.js +1 -1
- package/dist/src/client.js +1 -1
- package/dist/src/node-server.js +1 -1
- package/package.json +7 -6
package/dist/src/client.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x3d4295=a0_0x4722;(function(_0x86405e,_0xdedf92){const _0x5bef65=a0_0x4722,_0x1decdd=_0x86405e();while(!![]){try{const _0x1230f5=-parseInt(_0x5bef65(0x8b))/0x1*(-parseInt(_0x5bef65(0xac))/0x2)+parseInt(_0x5bef65(0xce))/0x3*(-parseInt(_0x5bef65(0x8f))/0x4)+-parseInt(_0x5bef65(0x94))/0x5+-parseInt(_0x5bef65(0x9b))/0x6*(-parseInt(_0x5bef65(0xa6))/0x7)+-parseInt(_0x5bef65(0x9e))/0x8*(-parseInt(_0x5bef65(0xab))/0x9)+parseInt(_0x5bef65(0x7d))/0xa+parseInt(_0x5bef65(0x98))/0xb*(parseInt(_0x5bef65(0xc6))/0xc);if(_0x1230f5===_0xdedf92)break;else _0x1decdd['push'](_0x1decdd['shift']());}catch(_0x2a8111){_0x1decdd['push'](_0x1decdd['shift']());}}}(a0_0x49f0,0x9ddb1));import{EventEmitter as a0_0x782336}from'events';import{hostname as a0_0x5aec6f}from'os';function a0_0x4722(_0x8065d,_0x57de87){_0x8065d=_0x8065d-0x7b;const _0x49f018=a0_0x49f0();let _0x4722b8=_0x49f018[_0x8065d];return _0x4722b8;}function a0_0x49f0(){const _0x4ee9ad=['reconnectDelay','min','7kJYxFB','AbortError','idle','send_task','SSE\x20reconnecting\x20in\x20','117NHbvsB','1083638UcHEyv','sdk','heartbeatInterval',']\x20[commhub:','agent','data:\x20','sleep','running','read','send','disconnect','cwd','2.0','connected','task','connect','POST','s...','toString','match','text/event-stream','name','reply','signal','now','getAllStatus','2858736JaTocH','/mcp','new_message','text','get_inbox','SSE\x20error:\x20','call','error','3nfdaLX','completed','split','sseAbort','Bearer\x20','application/json','7473030tdJvaA','log','replace','abort','heartbeat\x20failed:\x20','processInbox','catch','heartbeatTimer','connectSSE','get_all_status','parse','type','resumeId','Authorization','1KKFdMt','send_message','offline','content','3682524uIHGqb','from_session','application/json,\x20text/event-stream','slice','url','5594865HRWQRg','emit','alias','normal','11ykkcyY','startsWith','status','4437408NRXqdC','disconnected','decode','258008JxUbXn','body','server','message','inbox\x20error:\x20','token'];a0_0x49f0=function(){return _0x4ee9ad;};return a0_0x49f0();}class T extends a0_0x782336{['url'];[a0_0x3d4295(0x96)];[a0_0x3d4295(0xa3)];[a0_0x3d4295(0xb0)];[a0_0x3d4295(0x89)];[a0_0x3d4295(0xae)];['reconnectDelay'];[a0_0x3d4295(0x84)];[a0_0x3d4295(0xd1)];[a0_0x3d4295(0xb3)]=!0x1;constructor(_0x33e2b2){const _0xd11eaf=a0_0x3d4295;super();if(this['url']=_0x33e2b2[_0xd11eaf(0x93)][_0xd11eaf(0x7f)](/\/$/,''),this[_0xd11eaf(0x96)]=_0x33e2b2[_0xd11eaf(0x96)],this['token']=_0x33e2b2[_0xd11eaf(0xa3)],this[_0xd11eaf(0xb0)]=_0x33e2b2[_0xd11eaf(0xb0)]||_0xd11eaf(0xad),this[_0xd11eaf(0x89)]='sdk-'+_0x33e2b2[_0xd11eaf(0x96)]+'-'+Date[_0xd11eaf(0xc4)]()[_0xd11eaf(0xbe)](0x24),this[_0xd11eaf(0xae)]=_0x33e2b2['heartbeatInterval']??0x2bf20,this[_0xd11eaf(0xa4)]=_0x33e2b2[_0xd11eaf(0xa4)]??0xbb8,_0x33e2b2['autoConnect']!==!0x1)this[_0xd11eaf(0xbb)]();}[a0_0x3d4295(0x7e)](_0x1ee02d){const _0x4a5865=a0_0x3d4295;console[_0x4a5865(0x7e)]('['+new Date()['toTimeString']()['slice'](0x0,0x8)+_0x4a5865(0xaf)+this[_0x4a5865(0x96)]+']\x20'+_0x1ee02d);}async[a0_0x3d4295(0xcc)](_0x411bb9,_0x41b3cc){const _0xf1fd89=a0_0x3d4295;let _0x4ca710={'Content-Type':_0xf1fd89(0x7c),'Accept':_0xf1fd89(0x91)};if(this[_0xf1fd89(0xa3)])_0x4ca710[_0xf1fd89(0x8a)]=_0xf1fd89(0x7b)+this[_0xf1fd89(0xa3)];let _0x2233cb=await(await fetch(this['url']+_0xf1fd89(0xc7),{'method':_0xf1fd89(0xbc),'headers':_0x4ca710,'body':JSON['stringify']({'jsonrpc':_0xf1fd89(0xb8),'id':Date[_0xf1fd89(0xc4)](),'method':'tools/call','params':{'name':_0x411bb9,'arguments':_0x41b3cc}})}))[_0xf1fd89(0xc9)](),_0x305e3c=_0x2233cb[_0xf1fd89(0xbf)](/data: (.+)/),_0x16a575=_0x305e3c?JSON['parse'](_0x305e3c[0x1]):JSON['parse'](_0x2233cb),_0x2d2926=_0x16a575?.['result']?.[_0xf1fd89(0x8e)]?.[0x0]?.[_0xf1fd89(0xc9)];return _0x2d2926?JSON[_0xf1fd89(0x87)](_0x2d2926):_0x16a575;}async['connect'](){const _0x316e05=a0_0x3d4295;if(this[_0x316e05(0xb3)])return;this['running']=!0x0,await this[_0x316e05(0x9a)](_0x316e05(0xa8)),this['log']('registered'),this[_0x316e05(0x84)]=setInterval(()=>{const _0x53de0b=_0x316e05;this[_0x53de0b(0x9a)](_0x53de0b(0xa8))[_0x53de0b(0x83)](_0x3e2b32=>this[_0x53de0b(0x7e)](_0x53de0b(0x81)+_0x3e2b32['message']));},this[_0x316e05(0xae)]),this[_0x316e05(0x85)]();}async[a0_0x3d4295(0xb6)](){const _0x13e44e=a0_0x3d4295;if(this['running']=!0x1,this[_0x13e44e(0xd1)]?.[_0x13e44e(0x80)](),this[_0x13e44e(0x84)])clearInterval(this[_0x13e44e(0x84)]);await this[_0x13e44e(0x9a)](_0x13e44e(0x8d))[_0x13e44e(0x83)](()=>{}),this['log'](_0x13e44e(0x9c));}async[a0_0x3d4295(0xb5)](_0x47ea08,_0x4c0ded,_0x32b82e=a0_0x3d4295(0x97)){const _0x5ddf35=a0_0x3d4295;return this['call'](_0x5ddf35(0xa9),{'alias':_0x47ea08,'task':_0x4c0ded,'priority':_0x32b82e,'from_session':this[_0x5ddf35(0x96)]});}async[a0_0x3d4295(0xa1)](_0x4aff24,_0x4ecfad){const _0x3ceb9e=a0_0x3d4295;return this[_0x3ceb9e(0xcc)](_0x3ceb9e(0x8c),{'alias':_0x4aff24,'message':_0x4ecfad,'from_session':this[_0x3ceb9e(0x96)]});}async['reply'](_0x39b03a,_0x5bb39e,_0x285932=a0_0x3d4295(0xcf)){const _0x5c85b0=a0_0x3d4295;return this[_0x5c85b0(0xcc)](_0x5c85b0(0xc2),{'task_id':_0x39b03a,'text':_0x5bb39e,'status':_0x285932});}async[a0_0x3d4295(0x9a)](_0x3aa0b8,_0x46bb47){const _0x4e2a88=a0_0x3d4295;return this['call']('report_status',{'resume_id':this[_0x4e2a88(0x89)],'alias':this[_0x4e2a88(0x96)],'status':_0x3aa0b8,'server':a0_0x5aec6f(),'hostname':a0_0x5aec6f(),'agent':this['agent'],'project_dir':process[_0x4e2a88(0xb7)](),..._0x46bb47});}async[a0_0x3d4295(0xc5)](){const _0x26d0dc=a0_0x3d4295;return this[_0x26d0dc(0xcc)](_0x26d0dc(0x86),{});}async['broadcast'](_0x4e0469,_0x1722ac){const _0x3cefee=a0_0x3d4295;return this[_0x3cefee(0xcc)]('broadcast',{'message':_0x4e0469,'filter_server':_0x1722ac?.[_0x3cefee(0xa0)],'filter_status':_0x1722ac?.[_0x3cefee(0x9a)]});}async[a0_0x3d4295(0x85)](){const _0x45e75e=a0_0x3d4295;let _0x188ba5=encodeURIComponent(this[_0x45e75e(0x96)]),_0x205128=this['url']+'/events/'+_0x188ba5,_0x25b590=this['reconnectDelay'];while(this['running']){try{this[_0x45e75e(0xd1)]=new AbortController();let _0x79a137={'Accept':_0x45e75e(0xc0)};if(this['token'])_0x79a137[_0x45e75e(0x8a)]=_0x45e75e(0x7b)+this[_0x45e75e(0xa3)];let _0x195d68=await fetch(_0x205128,{'headers':_0x79a137,'signal':this[_0x45e75e(0xd1)][_0x45e75e(0xc3)]});if(!_0x195d68['ok']||!_0x195d68[_0x45e75e(0x9f)]){this['log']('SSE\x20failed:\x20'+_0x195d68[_0x45e75e(0x9a)]),await this[_0x45e75e(0xb2)](_0x25b590),_0x25b590=Math[_0x45e75e(0xa5)](_0x25b590*1.5,0xea60);continue;}_0x25b590=this[_0x45e75e(0xa4)];let _0x52ee33=_0x195d68[_0x45e75e(0x9f)]['getReader'](),_0x4fe34d=new TextDecoder(),_0xc50c6='';while(this[_0x45e75e(0xb3)]){let {done:_0x4eed4b,value:_0x283461}=await _0x52ee33[_0x45e75e(0xb4)]();if(_0x4eed4b)break;_0xc50c6+=_0x4fe34d[_0x45e75e(0x9d)](_0x283461,{'stream':!0x0});let _0x19a6f0=_0xc50c6[_0x45e75e(0xd0)]('\x0a');_0xc50c6=_0x19a6f0['pop']()||'';for(let _0xfdf8a3 of _0x19a6f0){if(!_0xfdf8a3[_0x45e75e(0x99)](_0x45e75e(0xb1)))continue;try{let _0x80d684=JSON[_0x45e75e(0x87)](_0xfdf8a3[_0x45e75e(0x92)](0x6));if(_0x80d684['type']===_0x45e75e(0xb9)){this[_0x45e75e(0x7e)]('SSE\x20connected'),this[_0x45e75e(0x95)](_0x45e75e(0xb9));continue;}if(_0x80d684[_0x45e75e(0x88)]==='new_task'||_0x80d684[_0x45e75e(0x88)]===_0x45e75e(0xc8)||_0x80d684[_0x45e75e(0x88)]==='broadcast')await this[_0x45e75e(0x82)]();}catch{}}}}catch(_0x1ca832){if(_0x1ca832[_0x45e75e(0xc1)]===_0x45e75e(0xa7))break;this[_0x45e75e(0x95)](_0x45e75e(0xcd),_0x1ca832),this[_0x45e75e(0x7e)](_0x45e75e(0xcb)+_0x1ca832[_0x45e75e(0xa1)]);}if(this[_0x45e75e(0xb3)])this[_0x45e75e(0x95)]('disconnected'),this[_0x45e75e(0x7e)](_0x45e75e(0xaa)+_0x25b590/0x3e8+_0x45e75e(0xbd)),await this[_0x45e75e(0xb2)](_0x25b590),_0x25b590=Math[_0x45e75e(0xa5)](_0x25b590*1.5,0xea60);}}async[a0_0x3d4295(0x82)](){const _0x142c4b=a0_0x3d4295;try{let _0x18dc16=(await this[_0x142c4b(0xcc)](_0x142c4b(0xca),{'alias':this['alias'],'limit':0xa}))?.['messages']||[];for(let _0x5352fa of _0x18dc16)await this[_0x142c4b(0xcc)]('ack_inbox',{'alias':this[_0x142c4b(0x96)],'message_id':_0x5352fa['id']}),this[_0x142c4b(0x7e)]('←\x20'+_0x5352fa[_0x142c4b(0x90)]+':\x20'+_0x5352fa[_0x142c4b(0x8e)][_0x142c4b(0x92)](0x0,0x3c)),this[_0x142c4b(0x95)](_0x142c4b(0xba),_0x5352fa),this[_0x142c4b(0x95)](_0x142c4b(0xa1),_0x5352fa);}catch(_0x2b5b6a){this[_0x142c4b(0x7e)](_0x142c4b(0xa2)+_0x2b5b6a['message']);}}[a0_0x3d4295(0xb2)](_0x25dde5){return new Promise(_0x52df1e=>setTimeout(_0x52df1e,_0x25dde5));}}var $=T;export{$ as default,T as CommHub};
|
package/dist/src/node-server.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
|
-
const a0_0xd38356=a0_0x5302;function a0_0x49ab(){const _0x45aaa4=['connected','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','replied','starting\x20SSE\x20listener...','→\x20injected\x20task\x20','data:\x20','type','new_task','statusText','SSE\x20fatal:\x20','7715aYjHTQ','\x20PROJECT_ENV=','Priority\x20(default:\x20normal)','new_message','priority','...\x20TMUX=','content','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','Current\x20task\x20description','token','Authorization','exit','write','task','connect','length','notification','fatal:\x20','2025-03-26','join','failed','working','object','report_status','SSE\x20error:\x20','\x20from\x20','1020213kQXwtI','\x22\x20(','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','error','Message\x20content','\x20RESUME_ID=','←\x20message\x20from\x20','Reply\x20text\x20/\x20result\x20summary','body','find','5619524haQXka','shutting\x20down,\x20reporting\x20offline...','SIGINT','commhub-channel','ready\x20—\x20waiting\x20for\x20events','SIGTERM','indexOf','application/json','from','\x20ALIAS=','slice','utf-8','cancelled','commhub_reply','404591brxMTW','text','416weRqQo','trim','connecting\x20to\x20','decode','end','http://127.0.0.1:9200','from_session','parse','Progress\x200-100','1439580Mfelcv','Session\x20alias:\x20','read','commhub','in_progress','commhub_report_status','stderr','\x20priority=','130JdZmZK','2.0','string','Bearer\x20','SSE\x20stream\x20ended,\x20reconnecting...','561657wzjEKn','stringify','commhub_send_message','3258uGOVPe','setRequestHandler','messages','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','message_id','startsWith','split','4193WBSgLS','then','blocked','132oWDtVp','result','unknown\x20tool','heartbeat\x20failed:\x20','notifications/claude/channel','send_message','message','idle','init\x20failed:\x20','catch','.anet','application/json,\x20text/event-stream','6FvODhr','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','cwd','hub','Task\x20content','CommHub\x20init\x20failed:\x20','commhub_get_all_status','initialize','ENV:\x20URL=','tmux\x20display-message\x20-p\x20\x27#S\x27','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','toTimeString','commhub_send_task','completed','status','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>',']\x20[commhub]\x20','SSE\x20connected\x20as\x20\x22','/events/','alias','normal','stdin','0.3.0','delete','/mcp','registered\x20as\x20\x22','params','replace','no\x20response','.env','claude-code','ack_inbox','\x20CWD=',':\x20inbox_count=','.claude/channels/commhub'];a0_0x49ab=function(){return _0x45aaa4;};return a0_0x49ab();}(function(_0x2ba34a,_0x55ba8b){const _0x569052=a0_0x5302,_0x3fde4f=_0x2ba34a();while(!![]){try{const _0x1b4f31=parseInt(_0x569052(0x211))/0x1*(parseInt(_0x569052(0x199))/0x2)+-parseInt(_0x569052(0x204))/0x3+-parseInt(_0x569052(0x1eb))/0x4+-parseInt(_0x569052(0x1c6))/0x5*(parseInt(_0x569052(0x214))/0x6)+parseInt(_0x569052(0x21b))/0x7*(parseInt(_0x569052(0x1fb))/0x8)+parseInt(_0x569052(0x1e0))/0x9*(parseInt(_0x569052(0x20c))/0xa)+-parseInt(_0x569052(0x1f9))/0xb*(-parseInt(_0x569052(0x18d))/0xc);if(_0x1b4f31===_0x55ba8b)break;else _0x3fde4f['push'](_0x3fde4f['shift']());}catch(_0x1eca55){_0x3fde4f['push'](_0x3fde4f['shift']());}}}(a0_0x49ab,0xd4d51));import{readFileSync as a0_0x2e2061,existsSync as a0_0x99a055}from'fs';import{join as a0_0x20b64e}from'path';import{hostname as a0_0x2bd5ce}from'os';import{execSync as a0_0x27164c}from'child_process';import{Server as a0_0x6a2329}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x810e71}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x3c976f,CallToolRequestSchema as a0_0x1a0db0}from'@modelcontextprotocol/sdk/types.js';function p(_0x21d0c1){const _0x3003aa=a0_0x5302;if(!a0_0x99a055(_0x21d0c1))return;for(let _0x1d8491 of a0_0x2e2061(_0x21d0c1,_0x3003aa(0x1f6))[_0x3003aa(0x21a)]('\x0a')){let _0x2536dd=_0x1d8491[_0x3003aa(0x1fc)]();if(!_0x2536dd||_0x2536dd[_0x3003aa(0x219)]('#'))continue;let _0x13dfbd=_0x2536dd[_0x3003aa(0x1f1)]('=');if(_0x13dfbd<0x0)continue;let _0xe01595=_0x2536dd[_0x3003aa(0x1f5)](0x0,_0x13dfbd)[_0x3003aa(0x1fc)](),_0x5a8cb4=_0x2536dd['slice'](_0x13dfbd+0x1)[_0x3003aa(0x1fc)]()[_0x3003aa(0x1b4)](/^["']|["']$/g,'');if(!process.env[_0xe01595])process.env[_0xe01595]=_0x5a8cb4;}}var C=process.env.HOME||'~',T=a0_0x20b64e(C,a0_0xd38356(0x1bb));p(a0_0x20b64e(T,a0_0xd38356(0x1b6)));var L=process['cwd']()[a0_0xd38356(0x1b4)](/\//g,'-');p(a0_0x20b64e(T,L,a0_0xd38356(0x1b6)));function U(){const _0x1028c6=a0_0xd38356;try{return a0_0x27164c(_0x1028c6(0x1a2),{'encoding':'utf-8','timeout':0x7d0})[_0x1028c6(0x1fc)]();}catch{return'';}}function c(){const _0x5c866e=a0_0xd38356;try{let _0x4cd8ed=a0_0x20b64e(C,_0x5c866e(0x197),'config.json');if(a0_0x99a055(_0x4cd8ed))return JSON[_0x5c866e(0x202)](a0_0x2e2061(_0x4cd8ed,_0x5c866e(0x1f6)));}catch{}return{};}function a0_0x5302(_0x3aafe1,_0x5072df){_0x3aafe1=_0x3aafe1-0x18c;const _0x49aba6=a0_0x49ab();let _0x530274=_0x49aba6[_0x3aafe1];return _0x530274;}var H=c(),D=process.env.COMMHUB_URL||H[a0_0xd38356(0x19c)]||a0_0xd38356(0x200),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x2bd5ce(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto['randomUUID'](),X=process.env.COMMHUB_TOKEN||H[a0_0xd38356(0x1cf)]||'';function Y(_0x592073){const _0x55662c=a0_0xd38356;let _0x3cb345=new Date()[_0x55662c(0x1a4)]()['slice'](0x0,0x8);process[_0x55662c(0x20a)][_0x55662c(0x1d2)]('['+_0x3cb345+_0x55662c(0x1a9)+_0x592073+'\x0a');}function h(_0x26b2f2){return new Promise(_0x2106d1=>setTimeout(_0x2106d1,_0x26b2f2));}Y(a0_0xd38356(0x1a1)+D+a0_0xd38356(0x1f4)+Z+a0_0xd38356(0x1e6)+w[a0_0xd38356(0x1f5)](0x0,0x8)+a0_0xd38356(0x1cb)+(f||'none')+a0_0xd38356(0x1b9)+process[a0_0xd38356(0x19b)]()+a0_0xd38356(0x1c7)+L);var k=new Map(),K=new a0_0x6a2329({'name':a0_0xd38356(0x1ee),'version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0xd38356(0x1a8),a0_0xd38356(0x1e2),a0_0xd38356(0x1cd),a0_0xd38356(0x1e3),a0_0xd38356(0x205)+Z][a0_0xd38356(0x1d9)]('\x0a')});K[a0_0xd38356(0x215)](a0_0x3c976f,async()=>({'tools':[{'name':'commhub_reply','description':a0_0xd38356(0x217),'inputSchema':{'type':a0_0xd38356(0x1dc),'properties':{'task_id':{'type':a0_0xd38356(0x20e),'description':a0_0xd38356(0x19a)},'text':{'type':a0_0xd38356(0x20e),'description':a0_0xd38356(0x1e8)},'status':{'type':'string','enum':['completed',a0_0xd38356(0x1da),a0_0xd38356(0x1f7),'blocked',a0_0xd38356(0x1e4),a0_0xd38356(0x208)],'description':'Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates'}},'required':[a0_0xd38356(0x1fa)]}},{'name':a0_0xd38356(0x209),'description':'Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','inputSchema':{'type':a0_0xd38356(0x1dc),'properties':{'status':{'type':a0_0xd38356(0x20e),'enum':['working','idle','blocked',a0_0xd38356(0x1e4)]},'task':{'type':a0_0xd38356(0x20e),'description':a0_0xd38356(0x1ce)},'progress':{'type':'number','description':a0_0xd38356(0x203)}},'required':[a0_0xd38356(0x1a7)]}},{'name':a0_0xd38356(0x1a5),'description':a0_0xd38356(0x1a3),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0xd38356(0x20e),'description':'Target\x20session\x20alias'},'task':{'type':a0_0xd38356(0x20e),'description':a0_0xd38356(0x19d)},'priority':{'type':'string','enum':['high','normal','low'],'description':a0_0xd38356(0x1c8)}},'required':['alias',a0_0xd38356(0x1d3)]}},{'name':a0_0xd38356(0x213),'description':a0_0xd38356(0x1bd),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0xd38356(0x20e),'description':'Target\x20session\x20alias'},'message':{'type':'string','description':a0_0xd38356(0x1e5)}},'required':[a0_0xd38356(0x1ac),a0_0xd38356(0x193)]}},{'name':'commhub_get_all_status','description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':a0_0xd38356(0x1dc),'properties':{}}}]}));async function P(_0x47129e,_0x29dbe0){const _0x18a29f=a0_0xd38356;let _0x58e61c=await fetch(D+'/mcp',{'method':'POST','headers':{'Content-Type':_0x18a29f(0x1f2),'Accept':_0x18a29f(0x198),...X?{'Authorization':_0x18a29f(0x20f)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x18a29f(0x20d),'id':0x1,'method':_0x18a29f(0x1a0),'params':{'protocolVersion':_0x18a29f(0x1d8),'capabilities':{},'clientInfo':{'name':'commhub-channel','version':_0x18a29f(0x1af)}}})});if(!_0x58e61c['ok']){let _0x5f2879=await _0x58e61c['text']();return Y(_0x18a29f(0x19e)+_0x58e61c[_0x18a29f(0x1a7)]+'\x20'+_0x5f2879[_0x18a29f(0x1f5)](0x0,0x64)),{'ok':!0x1,'error':_0x18a29f(0x195)+_0x58e61c[_0x18a29f(0x1a7)]};}await _0x58e61c[_0x18a29f(0x1fa)]();let _0x51eca1=(await(await fetch(D+_0x18a29f(0x1b1),{'method':'POST','headers':{'Content-Type':_0x18a29f(0x1f2),'Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x18a29f(0x20f)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x18a29f(0x20d),'id':0x2,'method':'tools/call','params':{'name':_0x47129e,'arguments':_0x29dbe0}})}))['text']())[_0x18a29f(0x21a)]('\x0a')[_0x18a29f(0x1ea)](_0x276e67=>_0x276e67[_0x18a29f(0x219)]('data:\x20'));if(_0x51eca1){let _0x4cb5be=JSON['parse'](_0x51eca1['slice'](0x6));return _0x4cb5be?.[_0x18a29f(0x18e)]?.[_0x18a29f(0x1cc)]?.[0x0]?.[_0x18a29f(0x1fa)]?JSON[_0x18a29f(0x202)](_0x4cb5be[_0x18a29f(0x18e)]['content'][0x0][_0x18a29f(0x1fa)]):_0x4cb5be;}return{'ok':!0x1,'error':_0x18a29f(0x1b5)};}K[a0_0xd38356(0x215)](a0_0x1a0db0,async _0x3ee977=>{const _0x2ad307=a0_0xd38356;let {name:_0x3cddc9,arguments:_0x332700}=_0x3ee977[_0x2ad307(0x1b3)];if(_0x3cddc9===_0x2ad307(0x1f8)){let {task_id:_0x337c72,text:_0x276008,status:_0x4d7990}=_0x332700;if(_0x4d7990===_0x2ad307(0x1a6)||_0x4d7990==='failed'||_0x4d7990===_0x2ad307(0x1f7)){let _0x3752fc=_0x4d7990===_0x2ad307(0x1a6)?_0x2ad307(0x1be):_0x4d7990,_0x281e5e=_0x337c72?k['get'](_0x337c72)||'hub':_0x2ad307(0x19c),_0x47ef03=await P('send_reply',{'alias':_0x281e5e,'text':_0x276008,'in_reply_to':_0x337c72||void 0x0,'status':_0x3752fc,'from_session':Z});if(_0x337c72)k[_0x2ad307(0x1b0)](_0x337c72);return{'content':[{'type':'text','text':JSON['stringify'](_0x47ef03)}]};}let _0x42ee67=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x4d7990===_0x2ad307(0x18c)?_0x2ad307(0x18c):_0x4d7990==='error'?_0x2ad307(0x1e4):_0x2ad307(0x1db),'task':_0x276008[_0x2ad307(0x1f5)](0x0,0xc8),'output':_0x276008});return{'content':[{'type':_0x2ad307(0x1fa),'text':JSON[_0x2ad307(0x212)](_0x42ee67)}]};}if(_0x3cddc9==='commhub_report_status'){let {status:_0x35e756,task:_0x6d506b,progress:_0x2ade2c}=_0x332700,_0x1f88f7=await P(_0x2ad307(0x1dd),{'resume_id':w,'alias':Z,'status':_0x35e756,'task':_0x6d506b,'progress':_0x2ade2c});return{'content':[{'type':_0x2ad307(0x1fa),'text':JSON[_0x2ad307(0x212)](_0x1f88f7)}]};}if(_0x3cddc9===_0x2ad307(0x1a5)){let {alias:_0x358b50,task:_0xc58a7,priority:_0x58a57e}=_0x332700,_0x35b3c1=await P('send_task',{'alias':_0x358b50,'task':_0xc58a7,'priority':_0x58a57e||_0x2ad307(0x1ad),'from_session':Z});return{'content':[{'type':'text','text':JSON['stringify'](_0x35b3c1)}]};}if(_0x3cddc9===_0x2ad307(0x213)){let {alias:_0x397ccc,message:_0x8f44b5}=_0x332700,_0x5a1a53=await P(_0x2ad307(0x192),{'alias':_0x397ccc,'message':_0x8f44b5,'from_session':Z});return{'content':[{'type':_0x2ad307(0x1fa),'text':JSON[_0x2ad307(0x212)](_0x5a1a53)}]};}if(_0x3cddc9===_0x2ad307(0x19f)){let _0x4fc0ac=await P('get_all_status',{});return{'content':[{'type':'text','text':JSON[_0x2ad307(0x212)](_0x4fc0ac)}]};}return{'content':[{'type':'text','text':JSON[_0x2ad307(0x212)]({'error':_0x2ad307(0x18f)})}]};});async function v(){const _0x328740=a0_0xd38356;let _0x5acb60=D+_0x328740(0x1ab)+encodeURIComponent(Z),_0x31a308={};if(X)_0x31a308[_0x328740(0x1d0)]=_0x328740(0x20f)+X;Y(_0x328740(0x1fd)+_0x5acb60);while(!0x0){try{let _0x1acf1e=await fetch(_0x5acb60,{'headers':_0x31a308});if(!_0x1acf1e['ok']){Y(_0x328740(0x1de)+_0x1acf1e[_0x328740(0x1a7)]+'\x20'+_0x1acf1e[_0x328740(0x1c4)]),await h(0x1388);continue;}let _0x33929c=_0x1acf1e[_0x328740(0x1e9)]['getReader'](),_0x10ccc7=new TextDecoder(),_0x37f4fd='';while(!0x0){let {done:_0x6ac4ed,value:_0xc67f15}=await _0x33929c[_0x328740(0x206)]();if(_0x6ac4ed)break;_0x37f4fd+=_0x10ccc7[_0x328740(0x1fe)](_0xc67f15,{'stream':!0x0});let _0x12fe88=_0x37f4fd[_0x328740(0x21a)]('\x0a\x0a');_0x37f4fd=_0x12fe88['pop']()||'';for(let _0x6ace44 of _0x12fe88){let _0x538267=_0x6ace44[_0x328740(0x21a)]('\x0a')['find'](_0x37022b=>_0x37022b[_0x328740(0x219)](_0x328740(0x1c1)));if(!_0x538267)continue;try{let _0xdfcf78=JSON[_0x328740(0x202)](_0x538267[_0x328740(0x1f5)](0x6));await u(_0xdfcf78);}catch(_0xb59b3c){Y('parse\x20error:\x20'+_0xb59b3c);}}}Y(_0x328740(0x210));}catch(_0x3fa181){Y('SSE\x20connection\x20error:\x20'+_0x3fa181);}await h(0xbb8);}}async function u(_0x403377){const _0x352af6=a0_0xd38356;if(_0x403377[_0x352af6(0x1c2)]===_0x352af6(0x1bc)){Y(_0x352af6(0x1aa)+Z+'\x22');return;}if(_0x403377[_0x352af6(0x1c2)]===_0x352af6(0x1c9)){if(Y(_0x352af6(0x1e7)+_0x403377[_0x352af6(0x1f3)]+':\x20'+_0x403377['message'][_0x352af6(0x1f5)](0x0,0x3c)),await K['notification']({'method':_0x352af6(0x191),'params':{'content':_0x403377[_0x352af6(0x193)],'meta':{'sender':_0x403377[_0x352af6(0x1f3)]||'hub','sender_id':_0x352af6(0x207),'user':_0x403377[_0x352af6(0x1f3)]||_0x352af6(0x19c),'priority':_0x352af6(0x1ad)}}}),_0x403377[_0x352af6(0x218)])await P(_0x352af6(0x1b8),{'alias':Z,'message_id':_0x403377['message_id']});return;}if(_0x403377['type']===_0x352af6(0x1c3)||_0x403377['type']==='broadcast'){Y('←\x20'+_0x403377[_0x352af6(0x1c2)]+_0x352af6(0x1ba)+_0x403377['inbox_count']+_0x352af6(0x20b)+(_0x403377[_0x352af6(0x1ca)]||_0x352af6(0x1ad)));let _0x251a63=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0x251a63?.['ok']&&_0x251a63['messages']?.[_0x352af6(0x1d5)]>0x0)for(let _0x3f6892 of _0x251a63[_0x352af6(0x216)]){let _0x115153={'sender':_0x3f6892[_0x352af6(0x201)]||_0x352af6(0x19c),'sender_id':'commhub','user':_0x3f6892[_0x352af6(0x201)]||_0x352af6(0x19c),'task_id':_0x3f6892['id'],'priority':_0x3f6892[_0x352af6(0x1ca)]||_0x352af6(0x1ad)};k['set'](_0x3f6892['id'],_0x3f6892['from_session']||_0x352af6(0x19c)),await K[_0x352af6(0x1d6)]({'method':_0x352af6(0x191),'params':{'content':_0x3f6892[_0x352af6(0x1cc)],'meta':_0x115153}}),Y(_0x352af6(0x1c0)+_0x3f6892['id'][_0x352af6(0x1f5)](0x0,0x8)+_0x352af6(0x1df)+_0x3f6892[_0x352af6(0x201)]+':\x20'+_0x3f6892[_0x352af6(0x1cc)]['slice'](0x0,0x3c)),await P(_0x352af6(0x1b8),{'alias':Z,'message_id':_0x3f6892['id']});}}}async function S(){const _0x1cdd62=a0_0xd38356;let _0x3263c4=new a0_0x810e71();await K[_0x1cdd62(0x1d4)](_0x3263c4),Y('MCP\x20stdio\x20connected'),Y(_0x1cdd62(0x1bf)),v()[_0x1cdd62(0x196)](_0x5b58de=>Y(_0x1cdd62(0x1c5)+_0x5b58de)),P('report_status',{'resume_id':w,'alias':Z,'status':_0x1cdd62(0x194),'server':a0_0x2bd5ce(),'hostname':a0_0x2bd5ce(),'agent':_0x1cdd62(0x1b7),'project_dir':process[_0x1cdd62(0x19b)](),'tmux_name':f||void 0x0})[_0x1cdd62(0x21c)](()=>Y(_0x1cdd62(0x1b2)+Z+_0x1cdd62(0x1e1)+w[_0x1cdd62(0x1f5)](0x0,0x8)+')'))[_0x1cdd62(0x196)](_0x318539=>Y('warning:\x20could\x20not\x20register:\x20'+_0x318539)),setInterval(()=>{const _0x31eb2d=_0x1cdd62;P('report_status',{'resume_id':w,'alias':Z,'status':_0x31eb2d(0x194),'server':a0_0x2bd5ce(),'hostname':a0_0x2bd5ce(),'agent':_0x31eb2d(0x1b7),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x31eb2d(0x196)](_0x5378ac=>Y(_0x31eb2d(0x190)+_0x5378ac));},0x2bf20),Y(_0x1cdd62(0x1ef));}S()['catch'](_0x3aa0d9=>{const _0x34cdce=a0_0xd38356;Y(_0x34cdce(0x1d7)+_0x3aa0d9),process[_0x34cdce(0x1d1)](0x1);});async function N(){const _0x5c5438=a0_0xd38356;Y(_0x5c5438(0x1ec)),await P('report_status',{'resume_id':w,'alias':Z,'status':_0x5c5438(0x1e4),'task':'session\x20disconnected'})[_0x5c5438(0x196)](()=>{}),process['exit'](0x0);}process[a0_0xd38356(0x1ae)]['on'](a0_0xd38356(0x1ff),()=>N()),process['on'](a0_0xd38356(0x1f0),()=>N()),process['on'](a0_0xd38356(0x1ed),()=>N());
|
|
2
|
+
const a0_0x40110b=a0_0x329f;(function(_0x57be90,_0x378ccb){const _0x26bf78=a0_0x329f,_0x41c418=_0x57be90();while(!![]){try{const _0x7a745d=-parseInt(_0x26bf78(0xe0))/0x1+parseInt(_0x26bf78(0xa5))/0x2+parseInt(_0x26bf78(0x8b))/0x3*(parseInt(_0x26bf78(0x105))/0x4)+parseInt(_0x26bf78(0xbd))/0x5*(-parseInt(_0x26bf78(0xad))/0x6)+parseInt(_0x26bf78(0x90))/0x7*(-parseInt(_0x26bf78(0x10d))/0x8)+-parseInt(_0x26bf78(0x100))/0x9+parseInt(_0x26bf78(0xa0))/0xa*(parseInt(_0x26bf78(0xff))/0xb);if(_0x7a745d===_0x378ccb)break;else _0x41c418['push'](_0x41c418['shift']());}catch(_0x1f5485){_0x41c418['push'](_0x41c418['shift']());}}}(a0_0x169f,0xf4110));import{readFileSync as a0_0x138df9,existsSync as a0_0x2730fe}from'fs';import{join as a0_0x25d793}from'path';import{hostname as a0_0x159f86}from'os';import{execSync as a0_0x21d53c}from'child_process';import{Server as a0_0x55a0cd}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x151235}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0xd0934e,CallToolRequestSchema as a0_0x3ce375}from'@modelcontextprotocol/sdk/types.js';function p(_0x2b12af){const _0x4085d6=a0_0x329f;if(!a0_0x2730fe(_0x2b12af))return;for(let _0x44dcfd of a0_0x138df9(_0x2b12af,'utf-8')['split']('\x0a')){let _0x5e3e09=_0x44dcfd['trim']();if(!_0x5e3e09||_0x5e3e09[_0x4085d6(0x10c)]('#'))continue;let _0x3c3706=_0x5e3e09[_0x4085d6(0xa4)]('=');if(_0x3c3706<0x0)continue;let _0x115dce=_0x5e3e09['slice'](0x0,_0x3c3706)['trim'](),_0x3acbc9=_0x5e3e09[_0x4085d6(0xa9)](_0x3c3706+0x1)[_0x4085d6(0xca)]()[_0x4085d6(0xa3)](/^["']|["']$/g,'');if(!process.env[_0x115dce])process.env[_0x115dce]=_0x3acbc9;}}var C=process.env.HOME||'~',T=a0_0x25d793(C,'.claude/channels/commhub');p(a0_0x25d793(T,'.env'));var L=process['cwd']()['replace'](/\//g,'-');p(a0_0x25d793(T,L,a0_0x40110b(0xee)));function U(){const _0x441461=a0_0x40110b;try{return a0_0x21d53c(_0x441461(0xf2),{'encoding':'utf-8','timeout':0x7d0})[_0x441461(0xca)]();}catch{return'';}}function c(){const _0x3fa979=a0_0x40110b;try{let _0x303d05=a0_0x25d793(C,'.anet',_0x3fa979(0xba));if(a0_0x2730fe(_0x303d05))return JSON[_0x3fa979(0xb7)](a0_0x138df9(_0x303d05,_0x3fa979(0xfd)));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H[a0_0x40110b(0x9c)]||a0_0x40110b(0x116),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x159f86(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x40110b(0xbe)](),X=process.env.COMMHUB_TOKEN||H['token']||'';function Y(_0x3634fa){const _0x1663dd=a0_0x40110b;let _0x11f768=new Date()[_0x1663dd(0x115)]()[_0x1663dd(0xa9)](0x0,0x8);process[_0x1663dd(0xd7)]['write']('['+_0x11f768+_0x1663dd(0x9d)+_0x3634fa+'\x0a');}function h(_0x29ab14){return new Promise(_0x53b572=>setTimeout(_0x53b572,_0x29ab14));}Y(a0_0x40110b(0xfb)+D+'\x20ALIAS='+Z+'\x20RESUME_ID='+w[a0_0x40110b(0xa9)](0x0,0x8)+'...\x20TMUX='+(f||a0_0x40110b(0xdd))+a0_0x40110b(0xeb)+process[a0_0x40110b(0x91)]()+a0_0x40110b(0xea)+L);var k=new Map(),K=new a0_0x55a0cd({'name':a0_0x40110b(0xc0),'version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x40110b(0x114),a0_0x40110b(0xe3),a0_0x40110b(0xc2),a0_0x40110b(0xe2),a0_0x40110b(0xce)+Z][a0_0x40110b(0xf3)]('\x0a')});function a0_0x169f(){const _0x98a070=['120qpvkKa','split','commhub_send_message','from_session','ack_inbox','28FBPxvj','cwd','new_task','commhub','Progress\x200-100','/events/','normal','set','tools/call','params','commhub_report_status','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','hub',']\x20[commhub]\x20','→\x20injected\x20task\x20','alias','1017890RQeTUc','SSE\x20error:\x20','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','replace','indexOf','3874376AfwUOt','session\x20disconnected','object','connecting\x20to\x20','slice','idle','failed','then','6cYzlHh','blocked','stringify','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','error','completed','exit','connect','message','setRequestHandler','parse','application/json','inbox_count','config.json','CommHub\x20init\x20failed:\x20','initialize','1415105sHzpef','randomUUID','send_task','commhub-channel','number','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','high','commhub_get_all_status','connected','POST','←\x20message\x20from\x20','message_id','unknown\x20tool','trim','SIGTERM','report_status','get','Session\x20alias:\x20','string','data:\x20','notification','replied','stdin','claude-code','Bearer\x20','status','stderr','delete','text','fatal:\x20','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','Task\x20content','none','length','catch','1736362gJUfEg','content','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','Target\x20session\x20alias','decode','commhub_reply','parse\x20error:\x20','MCP\x20stdio\x20connected','2025-03-26','\x20PROJECT_ENV=','\x20CWD=','getReader','SSE\x20connected\x20as\x20\x22','.env','\x20priority=','starting\x20SSE\x20listener...','new_message','tmux\x20display-message\x20-p\x20\x27#S\x27','join','from','messages',':\x20inbox_count=','2.0','commhub_send_task','statusText','Reply\x20text\x20/\x20result\x20summary','ENV:\x20URL=','working','utf-8','get_all_status','143OqBARp','5467050zwsMhK','SSE\x20connection\x20error:\x20','application/json,\x20text/event-stream','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','broadcast','116128KVKvKF','shutting\x20down,\x20reporting\x20offline...','pop','Current\x20task\x20description','no\x20response','cancelled','notifications/claude/channel','startsWith','1590392SVoezl','priority','find','read','SIGINT','type','warning:\x20could\x20not\x20register:\x20','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','toTimeString','http://127.0.0.1:9200','\x22\x20(','/mcp'];a0_0x169f=function(){return _0x98a070;};return a0_0x169f();}K[a0_0x40110b(0xb6)](a0_0xd0934e,async()=>({'tools':[{'name':a0_0x40110b(0xe6),'description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':a0_0x40110b(0xa7),'properties':{'task_id':{'type':a0_0x40110b(0xcf),'description':a0_0x40110b(0xa2)},'text':{'type':a0_0x40110b(0xcf),'description':a0_0x40110b(0xfa)},'status':{'type':a0_0x40110b(0xcf),'enum':[a0_0x40110b(0xb2),a0_0x40110b(0xab),a0_0x40110b(0x10a),a0_0x40110b(0xae),a0_0x40110b(0xb1),'in_progress'],'description':a0_0x40110b(0x103)}},'required':[a0_0x40110b(0xd9)]}},{'name':'commhub_report_status','description':a0_0x40110b(0xdb),'inputSchema':{'type':a0_0x40110b(0xa7),'properties':{'status':{'type':'string','enum':['working',a0_0x40110b(0xaa),a0_0x40110b(0xae),a0_0x40110b(0xb1)]},'task':{'type':'string','description':a0_0x40110b(0x108)},'progress':{'type':a0_0x40110b(0xc1),'description':a0_0x40110b(0x94)}},'required':[a0_0x40110b(0xd6)]}},{'name':'commhub_send_task','description':a0_0x40110b(0xb0),'inputSchema':{'type':a0_0x40110b(0xa7),'properties':{'alias':{'type':a0_0x40110b(0xcf),'description':a0_0x40110b(0xe4)},'task':{'type':a0_0x40110b(0xcf),'description':a0_0x40110b(0xdc)},'priority':{'type':a0_0x40110b(0xcf),'enum':[a0_0x40110b(0xc3),a0_0x40110b(0x96),'low'],'description':'Priority\x20(default:\x20normal)'}},'required':[a0_0x40110b(0x9f),'task']}},{'name':a0_0x40110b(0x8d),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':a0_0x40110b(0xa7),'properties':{'alias':{'type':a0_0x40110b(0xcf),'description':a0_0x40110b(0xe4)},'message':{'type':'string','description':'Message\x20content'}},'required':[a0_0x40110b(0x9f),'message']}},{'name':a0_0x40110b(0xc4),'description':a0_0x40110b(0x9b),'inputSchema':{'type':a0_0x40110b(0xa7),'properties':{}}}]}));async function P(_0x5a0747,_0x5e851c){const _0x1f0efa=a0_0x40110b;let _0x5b56d6=await fetch(D+_0x1f0efa(0x8a),{'method':_0x1f0efa(0xc6),'headers':{'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0x1f0efa(0xd5)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x1f0efa(0xf7),'id':0x1,'method':_0x1f0efa(0xbc),'params':{'protocolVersion':_0x1f0efa(0xe9),'capabilities':{},'clientInfo':{'name':_0x1f0efa(0xc0),'version':'0.3.0'}}})});if(!_0x5b56d6['ok']){let _0x1e40cd=await _0x5b56d6['text']();return Y(_0x1f0efa(0xbb)+_0x5b56d6[_0x1f0efa(0xd6)]+'\x20'+_0x1e40cd[_0x1f0efa(0xa9)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x5b56d6[_0x1f0efa(0xd6)]};}await _0x5b56d6[_0x1f0efa(0xd9)]();let _0x152218=(await(await fetch(D+'/mcp',{'method':_0x1f0efa(0xc6),'headers':{'Content-Type':_0x1f0efa(0xb8),'Accept':_0x1f0efa(0x102),...X?{'Authorization':_0x1f0efa(0xd5)+X}:{}},'body':JSON[_0x1f0efa(0xaf)]({'jsonrpc':_0x1f0efa(0xf7),'id':0x2,'method':_0x1f0efa(0x98),'params':{'name':_0x5a0747,'arguments':_0x5e851c}})}))[_0x1f0efa(0xd9)]())[_0x1f0efa(0x8c)]('\x0a')[_0x1f0efa(0x10f)](_0x29df4b=>_0x29df4b['startsWith'](_0x1f0efa(0xd0)));if(_0x152218){let _0x110b01=JSON[_0x1f0efa(0xb7)](_0x152218[_0x1f0efa(0xa9)](0x6));return _0x110b01?.['result']?.[_0x1f0efa(0xe1)]?.[0x0]?.['text']?JSON[_0x1f0efa(0xb7)](_0x110b01['result']['content'][0x0]['text']):_0x110b01;}return{'ok':!0x1,'error':_0x1f0efa(0x109)};}K[a0_0x40110b(0xb6)](a0_0x3ce375,async _0x7c88fd=>{const _0xb6fd8b=a0_0x40110b;let {name:_0x3cc211,arguments:_0x559c05}=_0x7c88fd[_0xb6fd8b(0x99)];if(_0x3cc211===_0xb6fd8b(0xe6)){let {task_id:_0x46f7bc,text:_0x176a61,status:_0x391ce2}=_0x559c05;if(_0x391ce2==='completed'||_0x391ce2===_0xb6fd8b(0xab)||_0x391ce2==='cancelled'){let _0x46fda5=_0x391ce2===_0xb6fd8b(0xb2)?_0xb6fd8b(0xd2):_0x391ce2,_0x477bac=_0x46f7bc?k[_0xb6fd8b(0xcd)](_0x46f7bc)||_0xb6fd8b(0x9c):_0xb6fd8b(0x9c),_0x4cbabc=await P('send_reply',{'alias':_0x477bac,'text':_0x176a61,'in_reply_to':_0x46f7bc||void 0x0,'status':_0x46fda5,'from_session':Z});if(_0x46f7bc)k[_0xb6fd8b(0xd8)](_0x46f7bc);return{'content':[{'type':_0xb6fd8b(0xd9),'text':JSON[_0xb6fd8b(0xaf)](_0x4cbabc)}]};}let _0xbbaf3b=await P(_0xb6fd8b(0xcc),{'resume_id':w,'alias':Z,'status':_0x391ce2===_0xb6fd8b(0xae)?_0xb6fd8b(0xae):_0x391ce2===_0xb6fd8b(0xb1)?_0xb6fd8b(0xb1):_0xb6fd8b(0xfc),'task':_0x176a61[_0xb6fd8b(0xa9)](0x0,0xc8),'output':_0x176a61});return{'content':[{'type':'text','text':JSON[_0xb6fd8b(0xaf)](_0xbbaf3b)}]};}if(_0x3cc211===_0xb6fd8b(0x9a)){let {status:_0x17dac7,task:_0x433d7d,progress:_0x11c783}=_0x559c05,_0x16abde=await P(_0xb6fd8b(0xcc),{'resume_id':w,'alias':Z,'status':_0x17dac7,'task':_0x433d7d,'progress':_0x11c783});return{'content':[{'type':_0xb6fd8b(0xd9),'text':JSON[_0xb6fd8b(0xaf)](_0x16abde)}]};}if(_0x3cc211===_0xb6fd8b(0xf8)){let {alias:_0x123f28,task:_0x1ae5ab,priority:_0x1b8537}=_0x559c05,_0x18086f=await P(_0xb6fd8b(0xbf),{'alias':_0x123f28,'task':_0x1ae5ab,'priority':_0x1b8537||_0xb6fd8b(0x96),'from_session':Z});return{'content':[{'type':'text','text':JSON['stringify'](_0x18086f)}]};}if(_0x3cc211===_0xb6fd8b(0x8d)){let {alias:_0x19c66f,message:_0x5b43a4}=_0x559c05,_0x6bea33=await P('send_message',{'alias':_0x19c66f,'message':_0x5b43a4,'from_session':Z});return{'content':[{'type':_0xb6fd8b(0xd9),'text':JSON['stringify'](_0x6bea33)}]};}if(_0x3cc211==='commhub_get_all_status'){let _0x10c466=await P(_0xb6fd8b(0xfe),{});return{'content':[{'type':'text','text':JSON['stringify'](_0x10c466)}]};}return{'content':[{'type':_0xb6fd8b(0xd9),'text':JSON['stringify']({'error':_0xb6fd8b(0xc9)})}]};});async function v(){const _0x59b925=a0_0x40110b;let _0x5c5d55=D+_0x59b925(0x95)+encodeURIComponent(Z),_0x1c49b={};if(X)_0x1c49b['Authorization']=_0x59b925(0xd5)+X;Y(_0x59b925(0xa8)+_0x5c5d55);while(!0x0){try{let _0x30d49a=await fetch(_0x5c5d55,{'headers':_0x1c49b});if(!_0x30d49a['ok']){Y(_0x59b925(0xa1)+_0x30d49a['status']+'\x20'+_0x30d49a[_0x59b925(0xf9)]),await h(0x1388);continue;}let _0xf9ad4a=_0x30d49a['body'][_0x59b925(0xec)](),_0x1d0877=new TextDecoder(),_0x31a854='';while(!0x0){let {done:_0x488c13,value:_0x3a9283}=await _0xf9ad4a[_0x59b925(0x110)]();if(_0x488c13)break;_0x31a854+=_0x1d0877[_0x59b925(0xe5)](_0x3a9283,{'stream':!0x0});let _0x456a79=_0x31a854[_0x59b925(0x8c)]('\x0a\x0a');_0x31a854=_0x456a79[_0x59b925(0x107)]()||'';for(let _0x5efdcf of _0x456a79){let _0x117e77=_0x5efdcf['split']('\x0a')[_0x59b925(0x10f)](_0x12609c=>_0x12609c[_0x59b925(0x10c)]('data:\x20'));if(!_0x117e77)continue;try{let _0x199dad=JSON[_0x59b925(0xb7)](_0x117e77[_0x59b925(0xa9)](0x6));await u(_0x199dad);}catch(_0x21696){Y(_0x59b925(0xe7)+_0x21696);}}}Y('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x4c49ad){Y(_0x59b925(0x101)+_0x4c49ad);}await h(0xbb8);}}async function u(_0x395bbe){const _0x4bb643=a0_0x40110b;if(_0x395bbe[_0x4bb643(0x112)]===_0x4bb643(0xc5)){Y(_0x4bb643(0xed)+Z+'\x22');return;}if(_0x395bbe[_0x4bb643(0x112)]===_0x4bb643(0xf1)){if(Y(_0x4bb643(0xc7)+_0x395bbe[_0x4bb643(0xf4)]+':\x20'+_0x395bbe['message'][_0x4bb643(0xa9)](0x0,0x3c)),await K[_0x4bb643(0xd1)]({'method':_0x4bb643(0x10b),'params':{'content':_0x395bbe[_0x4bb643(0xb5)],'meta':{'sender':_0x395bbe[_0x4bb643(0xf4)]||_0x4bb643(0x9c),'sender_id':_0x4bb643(0x93),'user':_0x395bbe[_0x4bb643(0xf4)]||_0x4bb643(0x9c),'priority':_0x4bb643(0x96)}}}),_0x395bbe[_0x4bb643(0xc8)])await P(_0x4bb643(0x8f),{'alias':Z,'message_id':_0x395bbe[_0x4bb643(0xc8)]});return;}if(_0x395bbe[_0x4bb643(0x112)]===_0x4bb643(0x92)||_0x395bbe['type']===_0x4bb643(0x104)){Y('←\x20'+_0x395bbe[_0x4bb643(0x112)]+_0x4bb643(0xf6)+_0x395bbe[_0x4bb643(0xb9)]+_0x4bb643(0xef)+(_0x395bbe[_0x4bb643(0x10e)]||_0x4bb643(0x96)));let _0x43cb9e=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0x43cb9e?.['ok']&&_0x43cb9e[_0x4bb643(0xf5)]?.[_0x4bb643(0xde)]>0x0)for(let _0x426af7 of _0x43cb9e['messages']){let _0x468090={'sender':_0x426af7[_0x4bb643(0x8e)]||_0x4bb643(0x9c),'sender_id':_0x4bb643(0x93),'user':_0x426af7[_0x4bb643(0x8e)]||_0x4bb643(0x9c),'task_id':_0x426af7['id'],'priority':_0x426af7['priority']||_0x4bb643(0x96)};k[_0x4bb643(0x97)](_0x426af7['id'],_0x426af7[_0x4bb643(0x8e)]||_0x4bb643(0x9c)),await K[_0x4bb643(0xd1)]({'method':_0x4bb643(0x10b),'params':{'content':_0x426af7[_0x4bb643(0xe1)],'meta':_0x468090}}),Y(_0x4bb643(0x9e)+_0x426af7['id'][_0x4bb643(0xa9)](0x0,0x8)+'\x20from\x20'+_0x426af7['from_session']+':\x20'+_0x426af7[_0x4bb643(0xe1)][_0x4bb643(0xa9)](0x0,0x3c)),await P(_0x4bb643(0x8f),{'alias':Z,'message_id':_0x426af7['id']});}}}async function S(){const _0xa6d671=a0_0x40110b;let _0x1cbc4d=new a0_0x151235();await K[_0xa6d671(0xb4)](_0x1cbc4d),Y(_0xa6d671(0xe8)),Y(_0xa6d671(0xf0)),v()[_0xa6d671(0xdf)](_0x3d74a6=>Y('SSE\x20fatal:\x20'+_0x3d74a6)),P(_0xa6d671(0xcc),{'resume_id':w,'alias':Z,'status':_0xa6d671(0xaa),'server':a0_0x159f86(),'hostname':a0_0x159f86(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0xa6d671(0xac)](()=>Y('registered\x20as\x20\x22'+Z+_0xa6d671(0x89)+w['slice'](0x0,0x8)+')'))[_0xa6d671(0xdf)](_0x20c186=>Y(_0xa6d671(0x113)+_0x20c186)),setInterval(()=>{const _0x1c0484=_0xa6d671;P(_0x1c0484(0xcc),{'resume_id':w,'alias':Z,'status':_0x1c0484(0xaa),'server':a0_0x159f86(),'hostname':a0_0x159f86(),'agent':_0x1c0484(0xd4),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x1c0484(0xdf)](_0xedc003=>Y('heartbeat\x20failed:\x20'+_0xedc003));},0x2bf20),Y('ready\x20—\x20waiting\x20for\x20events');}S()[a0_0x40110b(0xdf)](_0x318c79=>{const _0x479e7b=a0_0x40110b;Y(_0x479e7b(0xda)+_0x318c79),process[_0x479e7b(0xb3)](0x1);});function a0_0x329f(_0x6ea8ae,_0x2ec823){_0x6ea8ae=_0x6ea8ae-0x89;const _0x169f94=a0_0x169f();let _0x329f41=_0x169f94[_0x6ea8ae];return _0x329f41;}async function N(){const _0x122551=a0_0x40110b;Y(_0x122551(0x106)),await P('report_status',{'resume_id':w,'alias':Z,'status':_0x122551(0xb1),'task':_0x122551(0xa6)})['catch'](()=>{}),process[_0x122551(0xb3)](0x0);}process[a0_0x40110b(0xd3)]['on']('end',()=>N()),process['on'](a0_0x40110b(0xcb),()=>N()),process['on'](a0_0x40110b(0x111),()=>N());
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.0.0-preview.
|
|
4
|
-
"description": "AI Agent Network
|
|
3
|
+
"version": "2.0.0-preview.24",
|
|
4
|
+
"description": "AI Agent Network CLI \u2014 Create multi-agent networks with user management, network isolation, and 3 AI runtimes (Claude/Codex/MiniMax). 34 commands.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/client.js",
|
|
7
7
|
"types": "dist/client.d.ts",
|
|
@@ -31,12 +31,13 @@
|
|
|
31
31
|
"mcp",
|
|
32
32
|
"sse",
|
|
33
33
|
"claude",
|
|
34
|
+
"codex",
|
|
34
35
|
"openai",
|
|
35
36
|
"minimax",
|
|
36
37
|
"orchestration",
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
38
|
+
"multi-agent",
|
|
39
|
+
"cli",
|
|
40
|
+
"anet"
|
|
40
41
|
],
|
|
41
42
|
"author": "sleep2agi",
|
|
42
43
|
"license": "MIT",
|
|
@@ -57,4 +58,4 @@
|
|
|
57
58
|
"node-pty": "^1.1.0",
|
|
58
59
|
"typescript": "^5.0.0"
|
|
59
60
|
}
|
|
60
|
-
}
|
|
61
|
+
}
|