@sleep2agi/agent-network 2.0.1 → 2.0.3-preview.0
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/node-server.js +1 -1
- package/package.json +1 -1
package/dist/src/client.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0xd33414=a0_0x2b63;function a0_0x1567(){const _0x4e167e=['name','158512GzPhKb','parse','min','catch','log','561sfHEMy','match','connectSSE','send','send_task','connect','SSE\x20failed:\x20','type','data:\x20','result','2612fPJVWu','report_status','heartbeatInterval','abort','slice','now','messages',']\x20[commhub:','53002smHMOX','sdk-','251294pYOBLD','broadcast','pop','from_session','body','6DjuObk','new_message','send_message','Authorization','emit','alias','SSE\x20reconnecting\x20in\x20','url','getReader','running','idle','inbox\x20error:\x20','317245aCRSOL','application/json,\x20text/event-stream','call','get_all_status','error','registered','2.0','task','agent','sleep','POST','tools/call','get_inbox','Bearer\x20','content','disconnected','completed','1913177cVdaYW','reply','heartbeatTimer','stringify','/mcp','message','processInbox','connected','server','token','status','SSE\x20error:\x20','signal','9lldYNg','getAllStatus','1156620tzaCoW','resumeId','s...','reconnectDelay','startsWith','normal','AbortError','sseAbort','text'];a0_0x1567=function(){return _0x4e167e;};return a0_0x1567();}function a0_0x2b63(_0x3ecd17,_0x2cb4f3){_0x3ecd17=_0x3ecd17-0x1b6;const _0x1567e9=a0_0x1567();let _0x2b638a=_0x1567e9[_0x3ecd17];return _0x2b638a;}(function(_0x5abb3e,_0x168a9b){const _0x19de62=a0_0x2b63,_0x392a99=_0x5abb3e();while(!![]){try{const _0x3c2a79=-parseInt(_0x19de62(0x1fb))/0x1+-parseInt(_0x19de62(0x1fd))/0x2+parseInt(_0x19de62(0x1e9))/0x3*(parseInt(_0x19de62(0x1f3))/0x4)+parseInt(_0x19de62(0x1ba))/0x5+-parseInt(_0x19de62(0x202))/0x6*(-parseInt(_0x19de62(0x1cb))/0x7)+-parseInt(_0x19de62(0x1e4))/0x8*(parseInt(_0x19de62(0x1d8))/0x9)+-parseInt(_0x19de62(0x1da))/0xa;if(_0x3c2a79===_0x168a9b)break;else _0x392a99['push'](_0x392a99['shift']());}catch(_0x91a45c){_0x392a99['push'](_0x392a99['shift']());}}}(a0_0x1567,0x2356a));import{EventEmitter as a0_0x3344c4}from'events';import{hostname as a0_0x28ad05}from'os';class T extends a0_0x3344c4{[a0_0xd33414(0x209)];['alias'];['token'];[a0_0xd33414(0x1c2)];[a0_0xd33414(0x1db)];[a0_0xd33414(0x1f5)];[a0_0xd33414(0x1dd)];[a0_0xd33414(0x1cd)];['sseAbort'];['running']=!0x1;constructor(_0x51acda){const _0x261699=a0_0xd33414;super();if(this[_0x261699(0x209)]=_0x51acda[_0x261699(0x209)]['replace'](/\/$/,''),this[_0x261699(0x207)]=_0x51acda[_0x261699(0x207)],this[_0x261699(0x1d4)]=_0x51acda[_0x261699(0x1d4)],this[_0x261699(0x1c2)]=_0x51acda[_0x261699(0x1c2)]||'sdk',this[_0x261699(0x1db)]=_0x261699(0x1fc)+_0x51acda[_0x261699(0x207)]+'-'+Date['now']()['toString'](0x24),this[_0x261699(0x1f5)]=_0x51acda[_0x261699(0x1f5)]??0x2bf20,this['reconnectDelay']=_0x51acda[_0x261699(0x1dd)]??0xbb8,_0x51acda['autoConnect']!==!0x1)this[_0x261699(0x1ee)]();}[a0_0xd33414(0x1e8)](_0x82c64f){const _0x317c4f=a0_0xd33414;console[_0x317c4f(0x1e8)]('['+new Date()['toTimeString']()[_0x317c4f(0x1f7)](0x0,0x8)+_0x317c4f(0x1fa)+this[_0x317c4f(0x207)]+']\x20'+_0x82c64f);}async[a0_0xd33414(0x1bc)](_0x55a363,_0x206acd){const _0x3e97dc=a0_0xd33414;let _0x4854a7={'Content-Type':'application/json','Accept':_0x3e97dc(0x1bb)};if(this[_0x3e97dc(0x1d4)])_0x4854a7[_0x3e97dc(0x205)]=_0x3e97dc(0x1c7)+this['token'];let _0x42d729=await(await fetch(this[_0x3e97dc(0x209)]+_0x3e97dc(0x1cf),{'method':_0x3e97dc(0x1c4),'headers':_0x4854a7,'body':JSON[_0x3e97dc(0x1ce)]({'jsonrpc':_0x3e97dc(0x1c0),'id':Date[_0x3e97dc(0x1f8)](),'method':_0x3e97dc(0x1c5),'params':{'name':_0x55a363,'arguments':_0x206acd}})}))[_0x3e97dc(0x1e2)](),_0x104e59=_0x42d729[_0x3e97dc(0x1ea)](/data: (.+)/),_0x232a80=_0x104e59?JSON[_0x3e97dc(0x1e5)](_0x104e59[0x1]):JSON[_0x3e97dc(0x1e5)](_0x42d729),_0x4b7f50=_0x232a80?.[_0x3e97dc(0x1f2)]?.[_0x3e97dc(0x1c8)]?.[0x0]?.[_0x3e97dc(0x1e2)];return _0x4b7f50?JSON[_0x3e97dc(0x1e5)](_0x4b7f50):_0x232a80;}async[a0_0xd33414(0x1ee)](){const _0x320ee9=a0_0xd33414;if(this['running'])return;this[_0x320ee9(0x1b7)]=!0x0,await this['status'](_0x320ee9(0x1b8)),this[_0x320ee9(0x1e8)](_0x320ee9(0x1bf)),this['heartbeatTimer']=setInterval(()=>{const _0xa5947c=_0x320ee9;this[_0xa5947c(0x1d5)](_0xa5947c(0x1b8))[_0xa5947c(0x1e7)](_0x30125f=>this[_0xa5947c(0x1e8)]('heartbeat\x20failed:\x20'+_0x30125f[_0xa5947c(0x1d0)]));},this[_0x320ee9(0x1f5)]),this[_0x320ee9(0x1eb)]();}async['disconnect'](){const _0x4a8a49=a0_0xd33414;if(this[_0x4a8a49(0x1b7)]=!0x1,this['sseAbort']?.[_0x4a8a49(0x1f6)](),this[_0x4a8a49(0x1cd)])clearInterval(this['heartbeatTimer']);await this[_0x4a8a49(0x1d5)]('offline')['catch'](()=>{}),this[_0x4a8a49(0x1e8)](_0x4a8a49(0x1c9));}async[a0_0xd33414(0x1ec)](_0x304632,_0x478c30,_0x1eb182=a0_0xd33414(0x1df)){const _0x377d52=a0_0xd33414;return this[_0x377d52(0x1bc)](_0x377d52(0x1ed),{'alias':_0x304632,'task':_0x478c30,'priority':_0x1eb182,'from_session':this[_0x377d52(0x207)]});}async[a0_0xd33414(0x1d0)](_0xd7e340,_0x291561){const _0x4b194b=a0_0xd33414;return this[_0x4b194b(0x1bc)](_0x4b194b(0x204),{'alias':_0xd7e340,'message':_0x291561,'from_session':this[_0x4b194b(0x207)]});}async[a0_0xd33414(0x1cc)](_0x145aac,_0x4edb8a,_0x35e5b5=a0_0xd33414(0x1ca)){const _0x3334fd=a0_0xd33414;return this[_0x3334fd(0x1bc)]('reply',{'task_id':_0x145aac,'text':_0x4edb8a,'status':_0x35e5b5});}async['status'](_0x10117a,_0x35c483){const _0x2ae8df=a0_0xd33414;return this[_0x2ae8df(0x1bc)](_0x2ae8df(0x1f4),{'resume_id':this['resumeId'],'alias':this[_0x2ae8df(0x207)],'status':_0x10117a,'server':a0_0x28ad05(),'hostname':a0_0x28ad05(),'agent':this['agent'],'project_dir':process['cwd'](),..._0x35c483});}async[a0_0xd33414(0x1d9)](){const _0x454f2d=a0_0xd33414;return this[_0x454f2d(0x1bc)](_0x454f2d(0x1bd),{});}async[a0_0xd33414(0x1fe)](_0x4ddfb8,_0xf413d2){const _0x4b581d=a0_0xd33414;return this[_0x4b581d(0x1bc)](_0x4b581d(0x1fe),{'message':_0x4ddfb8,'filter_server':_0xf413d2?.[_0x4b581d(0x1d3)],'filter_status':_0xf413d2?.[_0x4b581d(0x1d5)]});}async[a0_0xd33414(0x1eb)](){const _0x54879a=a0_0xd33414;let _0x3f5b9b=encodeURIComponent(this[_0x54879a(0x207)]),_0x10ba4b=this[_0x54879a(0x209)]+'/events/'+_0x3f5b9b,_0x170705=this['reconnectDelay'];while(this[_0x54879a(0x1b7)]){try{this[_0x54879a(0x1e1)]=new AbortController();let _0x27719f={'Accept':'text/event-stream'};if(this[_0x54879a(0x1d4)])_0x27719f[_0x54879a(0x205)]='Bearer\x20'+this[_0x54879a(0x1d4)];let _0x502ff4=await fetch(_0x10ba4b,{'headers':_0x27719f,'signal':this['sseAbort'][_0x54879a(0x1d7)]});if(!_0x502ff4['ok']||!_0x502ff4[_0x54879a(0x201)]){this['log'](_0x54879a(0x1ef)+_0x502ff4[_0x54879a(0x1d5)]),await this[_0x54879a(0x1c3)](_0x170705),_0x170705=Math[_0x54879a(0x1e6)](_0x170705*1.5,0xea60);continue;}_0x170705=this[_0x54879a(0x1dd)];let _0x2f3c12=_0x502ff4[_0x54879a(0x201)][_0x54879a(0x1b6)](),_0x5ea15e=new TextDecoder(),_0x581bdd='';while(this[_0x54879a(0x1b7)]){let {done:_0x73e2c2,value:_0x470aaf}=await _0x2f3c12['read']();if(_0x73e2c2)break;_0x581bdd+=_0x5ea15e['decode'](_0x470aaf,{'stream':!0x0});let _0x5d3c40=_0x581bdd['split']('\x0a');_0x581bdd=_0x5d3c40[_0x54879a(0x1ff)]()||'';for(let _0x57dbf8 of _0x5d3c40){if(!_0x57dbf8[_0x54879a(0x1de)](_0x54879a(0x1f1)))continue;try{let _0x59166f=JSON[_0x54879a(0x1e5)](_0x57dbf8[_0x54879a(0x1f7)](0x6));if(_0x59166f[_0x54879a(0x1f0)]===_0x54879a(0x1d2)){this[_0x54879a(0x1e8)]('SSE\x20connected'),this[_0x54879a(0x206)]('connected');continue;}if(_0x59166f[_0x54879a(0x1f0)]==='new_task'||_0x59166f[_0x54879a(0x1f0)]===_0x54879a(0x203)||_0x59166f[_0x54879a(0x1f0)]===_0x54879a(0x1fe))await this[_0x54879a(0x1d1)]();}catch{}}}}catch(_0x3f0b8e){if(_0x3f0b8e[_0x54879a(0x1e3)]===_0x54879a(0x1e0))break;this[_0x54879a(0x206)](_0x54879a(0x1be),_0x3f0b8e),this[_0x54879a(0x1e8)](_0x54879a(0x1d6)+_0x3f0b8e[_0x54879a(0x1d0)]);}if(this[_0x54879a(0x1b7)])this[_0x54879a(0x206)](_0x54879a(0x1c9)),this['log'](_0x54879a(0x208)+_0x170705/0x3e8+_0x54879a(0x1dc)),await this[_0x54879a(0x1c3)](_0x170705),_0x170705=Math[_0x54879a(0x1e6)](_0x170705*1.5,0xea60);}}async['processInbox'](){const _0x566dc3=a0_0xd33414;try{let _0x33700e=(await this[_0x566dc3(0x1bc)](_0x566dc3(0x1c6),{'alias':this[_0x566dc3(0x207)],'limit':0xa}))?.[_0x566dc3(0x1f9)]||[];for(let _0x26e3cc of _0x33700e)await this['call']('ack_inbox',{'alias':this[_0x566dc3(0x207)],'message_id':_0x26e3cc['id']}),this['log']('←\x20'+_0x26e3cc[_0x566dc3(0x200)]+':\x20'+_0x26e3cc[_0x566dc3(0x1c8)][_0x566dc3(0x1f7)](0x0,0x3c)),this['emit'](_0x566dc3(0x1c1),_0x26e3cc),this[_0x566dc3(0x206)](_0x566dc3(0x1d0),_0x26e3cc);}catch(_0x528bc2){this[_0x566dc3(0x1e8)](_0x566dc3(0x1b9)+_0x528bc2['message']);}}['sleep'](_0x239934){return new Promise(_0x4b73ba=>setTimeout(_0x4b73ba,_0x239934));}}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
|
-
function a0_0xa75a(_0x1ec26c,_0x242831){_0x1ec26c=_0x1ec26c-0x185;const _0x19ad5e=a0_0x19ad();let _0xa75a67=_0x19ad5e[_0x1ec26c];return _0xa75a67;}const a0_0x4a967d=a0_0xa75a;(function(_0x39c404,_0x4418ca){const _0x3a6786=a0_0xa75a,_0x4406e8=_0x39c404();while(!![]){try{const _0x37b078=parseInt(_0x3a6786(0x1f0))/0x1*(-parseInt(_0x3a6786(0x1eb))/0x2)+-parseInt(_0x3a6786(0x191))/0x3*(parseInt(_0x3a6786(0x1a4))/0x4)+parseInt(_0x3a6786(0x1b9))/0x5*(-parseInt(_0x3a6786(0x1c2))/0x6)+-parseInt(_0x3a6786(0x1a3))/0x7*(-parseInt(_0x3a6786(0x1cf))/0x8)+parseInt(_0x3a6786(0x1fb))/0x9*(-parseInt(_0x3a6786(0x19a))/0xa)+-parseInt(_0x3a6786(0x1d4))/0xb+parseInt(_0x3a6786(0x192))/0xc;if(_0x37b078===_0x4418ca)break;else _0x4406e8['push'](_0x4406e8['shift']());}catch(_0x3cb729){_0x4406e8['push'](_0x4406e8['shift']());}}}(a0_0x19ad,0x26e35));import{readFileSync as a0_0x47a9f9,existsSync as a0_0x2c0fbb}from'fs';import{randomUUID as a0_0x47f072}from'crypto';import{join as a0_0x3d1889}from'path';import{hostname as a0_0x4cf3f3}from'os';function a0_0x19ad(){const _0x14f1f2=['Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','content','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','message_id','cancelled','fatal:\x20','set','get_all_status','from_session','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','slice','SSE\x20error:\x20','new_task','indexOf','replace','2.0','alias','Task\x20content','SSE\x20connection\x20error:\x20','Message\x20content','object','no\x20response','commhub_send_message','application/json','\x20PROJECT_ENV=','0.3.0','then','\x20priority=','notification','pop','message','ack_inbox','...\x20TMUX=','task','15NeHwyY','7714392GKrnMl','CommHub\x20init\x20failed:\x20','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','new_message','catch','split','commhub-channel','none','10960kmIaab','utf-8','SIGINT','error','find','exit','result','stderr','commhub','15134dQvUhh','44288iNpXWR','ENV:\x20URL=','report_status','delete',':\x20inbox_count=','stringify','notifications/claude/channel','MCP\x20stdio\x20connected','/mcp','\x22\x20(','warning:\x20could\x20not\x20register:\x20','send_task','from','ready\x20—\x20waiting\x20for\x20events','trim','Session\x20alias:\x20','working','session\x20disconnected','high','heartbeat\x20failed:\x20','data:\x20','276615iopiQb','toTimeString','normal','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','←\x20message\x20from\x20','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','config.json','get_inbox','initialize','12PCoPSo','type','shutting\x20down,\x20reporting\x20offline...','SIGTERM','string','Target\x20session\x20alias','body','commhub_report_status','get','connecting\x20to\x20','text','.anet','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','184CZJjEv','POST','idle','/events/','commhub_get_all_status','1050555JXPSLR','Reply\x20text\x20/\x20result\x20summary','unknown\x20tool','application/json,\x20text/event-stream','\x20CWD=','init\x20failed:\x20',']\x20[commhub]\x20','.env','end','write','parse','→\x20injected\x20task\x20','starting\x20SSE\x20listener...','read','SSE\x20stream\x20ended,\x20reconnecting...','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','send_message','broadcast','getReader','completed','replied','failed','hub','32280lKEmrd','tools/call','cwd','registered\x20as\x20\x22','messages','11paetLL','params','\x20RESUME_ID=','SSE\x20fatal:\x20','setRequestHandler','.claude/channels/commhub','Current\x20task\x20description','\x20ALIAS=','commhub_reply','commhub_send_task','status','774zFfxcC','Bearer\x20','startsWith','priority','inbox_count'];a0_0x19ad=function(){return _0x14f1f2;};return a0_0x19ad();}import{execSync as a0_0x4e0497}from'child_process';import{Server as a0_0xf7fc3}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x38e2eb}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x33ac69,CallToolRequestSchema as a0_0x1e37b7}from'@modelcontextprotocol/sdk/types.js';function p(_0x547be7){const _0x45c3c1=a0_0xa75a;if(!a0_0x2c0fbb(_0x547be7))return;for(let _0x2adf68 of a0_0x47a9f9(_0x547be7,_0x45c3c1(0x19b))['split']('\x0a')){let _0x154c9e=_0x2adf68[_0x45c3c1(0x1b2)]();if(!_0x154c9e||_0x154c9e['startsWith']('#'))continue;let _0x4b8a40=_0x154c9e[_0x45c3c1(0x20d)]('=');if(_0x4b8a40<0x0)continue;let _0x3fe8fd=_0x154c9e['slice'](0x0,_0x4b8a40)[_0x45c3c1(0x1b2)](),_0x133192=_0x154c9e[_0x45c3c1(0x20a)](_0x4b8a40+0x1)['trim']()[_0x45c3c1(0x20e)](/^["']|["']$/g,'');if(!process.env[_0x3fe8fd])process.env[_0x3fe8fd]=_0x133192;}}var C=process.env.HOME||'~',T=a0_0x3d1889(C,a0_0x4a967d(0x1f5));p(a0_0x3d1889(T,a0_0x4a967d(0x1db)));var L=process[a0_0x4a967d(0x1ed)]()['replace'](/\//g,'-');p(a0_0x3d1889(T,L,a0_0x4a967d(0x1db)));function U(){const _0x4317c9=a0_0x4a967d;try{return a0_0x4e0497('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0x4317c9(0x19b),'timeout':0x7d0})[_0x4317c9(0x1b2)]();}catch{return'';}}function v(){const _0x2299c0=a0_0x4a967d;try{let _0x51e3c8=a0_0x3d1889(C,_0x2299c0(0x1cd),_0x2299c0(0x1bf));if(a0_0x2c0fbb(_0x51e3c8))return JSON['parse'](a0_0x47a9f9(_0x51e3c8,_0x2299c0(0x19b)));}catch{}return{};}var H=v(),f=process.env.COMMHUB_URL||H[a0_0x4a967d(0x1ea)]||'http://127.0.0.1:9200',j=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||j||a0_0x4cf3f3(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x47f072(),X=process.env.COMMHUB_TOKEN||H['token']||'';function Y(_0x12bc72){const _0x2f96b0=a0_0x4a967d;let _0x22750f=new Date()[_0x2f96b0(0x1ba)]()['slice'](0x0,0x8);process[_0x2f96b0(0x1a1)][_0x2f96b0(0x1dd)]('['+_0x22750f+_0x2f96b0(0x1da)+_0x12bc72+'\x0a');}function h(_0x427202){return new Promise(_0x5baf23=>setTimeout(_0x5baf23,_0x427202));}Y(a0_0x4a967d(0x1a5)+f+a0_0x4a967d(0x1f7)+Z+a0_0x4a967d(0x1f2)+w[a0_0x4a967d(0x20a)](0x0,0x8)+a0_0x4a967d(0x18f)+(j||a0_0x4a967d(0x199))+a0_0x4a967d(0x1d8)+process[a0_0x4a967d(0x1ed)]()+a0_0x4a967d(0x187)+L);var k=new Map(),K=new a0_0xf7fc3({'name':a0_0x4a967d(0x198),'version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':['Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>',a0_0x4a967d(0x209),a0_0x4a967d(0x194),a0_0x4a967d(0x1be),a0_0x4a967d(0x1b3)+Z]['join']('\x0a')});K[a0_0x4a967d(0x1f4)](a0_0x33ac69,async()=>({'tools':[{'name':'commhub_reply','description':a0_0x4a967d(0x1ce),'inputSchema':{'type':a0_0x4a967d(0x214),'properties':{'task_id':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x202)},'text':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x1d5)},'status':{'type':a0_0x4a967d(0x1c6),'enum':['completed',a0_0x4a967d(0x1e9),a0_0x4a967d(0x204),'blocked',a0_0x4a967d(0x19d),'in_progress'],'description':a0_0x4a967d(0x1bc)}},'required':['text']}},{'name':a0_0x4a967d(0x1c9),'description':'Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','inputSchema':{'type':'object','properties':{'status':{'type':a0_0x4a967d(0x1c6),'enum':[a0_0x4a967d(0x1b4),'idle','blocked',a0_0x4a967d(0x19d)]},'task':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x1f6)},'progress':{'type':'number','description':'Progress\x200-100'}},'required':[a0_0x4a967d(0x1fa)]}},{'name':a0_0x4a967d(0x1f9),'description':a0_0x4a967d(0x200),'inputSchema':{'type':a0_0x4a967d(0x214),'properties':{'alias':{'type':a0_0x4a967d(0x1c6),'description':'Target\x20session\x20alias'},'task':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x211)},'priority':{'type':'string','enum':[a0_0x4a967d(0x1b6),a0_0x4a967d(0x1bb),'low'],'description':'Priority\x20(default:\x20normal)'}},'required':[a0_0x4a967d(0x210),a0_0x4a967d(0x190)]}},{'name':a0_0x4a967d(0x185),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':a0_0x4a967d(0x214),'properties':{'alias':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x1c7)},'message':{'type':a0_0x4a967d(0x1c6),'description':a0_0x4a967d(0x213)}},'required':['alias',a0_0x4a967d(0x18d)]}},{'name':a0_0x4a967d(0x1d3),'description':a0_0x4a967d(0x1e3),'inputSchema':{'type':'object','properties':{}}}]}));async function P(_0x4f171f,_0x3d5f42){const _0x3ca1fb=a0_0x4a967d;let _0x58a291=await fetch(f+'/mcp',{'method':_0x3ca1fb(0x1d0),'headers':{'Content-Type':_0x3ca1fb(0x186),'Accept':_0x3ca1fb(0x1d7),...X?{'Authorization':_0x3ca1fb(0x1fc)+X}:{}},'body':JSON[_0x3ca1fb(0x1a9)]({'jsonrpc':_0x3ca1fb(0x20f),'id':0x1,'method':_0x3ca1fb(0x1c1),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x3ca1fb(0x198),'version':_0x3ca1fb(0x188)}}})});if(!_0x58a291['ok']){let _0xb1b00=await _0x58a291[_0x3ca1fb(0x1cc)]();return Y(_0x3ca1fb(0x193)+_0x58a291[_0x3ca1fb(0x1fa)]+'\x20'+_0xb1b00[_0x3ca1fb(0x20a)](0x0,0x64)),{'ok':!0x1,'error':_0x3ca1fb(0x1d9)+_0x58a291[_0x3ca1fb(0x1fa)]};}await _0x58a291[_0x3ca1fb(0x1cc)]();let _0x1a6072=(await(await fetch(f+_0x3ca1fb(0x1ac),{'method':_0x3ca1fb(0x1d0),'headers':{'Content-Type':_0x3ca1fb(0x186),'Accept':_0x3ca1fb(0x1d7),...X?{'Authorization':_0x3ca1fb(0x1fc)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x3ca1fb(0x20f),'id':0x2,'method':_0x3ca1fb(0x1ec),'params':{'name':_0x4f171f,'arguments':_0x3d5f42}})}))['text']())['split']('\x0a')[_0x3ca1fb(0x19e)](_0x18de36=>_0x18de36[_0x3ca1fb(0x1fd)](_0x3ca1fb(0x1b8)));if(_0x1a6072){let _0x1eac9b=JSON[_0x3ca1fb(0x1de)](_0x1a6072[_0x3ca1fb(0x20a)](0x6));return _0x1eac9b?.['result']?.[_0x3ca1fb(0x201)]?.[0x0]?.[_0x3ca1fb(0x1cc)]?JSON[_0x3ca1fb(0x1de)](_0x1eac9b[_0x3ca1fb(0x1a0)][_0x3ca1fb(0x201)][0x0][_0x3ca1fb(0x1cc)]):_0x1eac9b;}return{'ok':!0x1,'error':_0x3ca1fb(0x215)};}K[a0_0x4a967d(0x1f4)](a0_0x1e37b7,async _0xbafa58=>{const _0x543b38=a0_0x4a967d;let {name:_0x35dc14,arguments:_0x335742}=_0xbafa58[_0x543b38(0x1f1)];if(_0x35dc14===_0x543b38(0x1f8)){let {task_id:_0x1bf7e0,text:_0xacae76,status:_0x3e6c65}=_0x335742;if(_0x3e6c65==='completed'||_0x3e6c65===_0x543b38(0x1e9)||_0x3e6c65===_0x543b38(0x204)){let _0x3d8411=_0x3e6c65===_0x543b38(0x1e7)?_0x543b38(0x1e8):_0x3e6c65,_0x178895=_0x1bf7e0?k[_0x543b38(0x1ca)](_0x1bf7e0)||_0x543b38(0x1ea):'hub',_0x2257f6=await P('send_reply',{'alias':_0x178895,'text':_0xacae76,'in_reply_to':_0x1bf7e0||void 0x0,'status':_0x3d8411,'from_session':Z});if(_0x1bf7e0)k[_0x543b38(0x1a7)](_0x1bf7e0);return{'content':[{'type':_0x543b38(0x1cc),'text':JSON[_0x543b38(0x1a9)](_0x2257f6)}]};}let _0x14d209=await P(_0x543b38(0x1a6),{'resume_id':w,'alias':Z,'status':_0x3e6c65==='blocked'?'blocked':_0x3e6c65===_0x543b38(0x19d)?'error':_0x543b38(0x1b4),'task':_0xacae76[_0x543b38(0x20a)](0x0,0xc8),'output':_0xacae76});return{'content':[{'type':'text','text':JSON['stringify'](_0x14d209)}]};}if(_0x35dc14===_0x543b38(0x1c9)){let {status:_0x3d4133,task:_0x343092,progress:_0x2dcfee}=_0x335742,_0x184a6d=await P(_0x543b38(0x1a6),{'resume_id':w,'alias':Z,'status':_0x3d4133,'task':_0x343092,'progress':_0x2dcfee});return{'content':[{'type':_0x543b38(0x1cc),'text':JSON[_0x543b38(0x1a9)](_0x184a6d)}]};}if(_0x35dc14===_0x543b38(0x1f9)){let {alias:_0x42e8ab,task:_0x42c5e5,priority:_0x40bec8}=_0x335742,_0x73ea58=await P(_0x543b38(0x1af),{'alias':_0x42e8ab,'task':_0x42c5e5,'priority':_0x40bec8||_0x543b38(0x1bb),'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x543b38(0x1a9)](_0x73ea58)}]};}if(_0x35dc14===_0x543b38(0x185)){let {alias:_0x1a576d,message:_0x25afa9}=_0x335742,_0x533555=await P(_0x543b38(0x1e4),{'alias':_0x1a576d,'message':_0x25afa9,'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x543b38(0x1a9)](_0x533555)}]};}if(_0x35dc14===_0x543b38(0x1d3)){let _0xb8796=await P(_0x543b38(0x207),{});return{'content':[{'type':_0x543b38(0x1cc),'text':JSON[_0x543b38(0x1a9)](_0xb8796)}]};}return{'content':[{'type':_0x543b38(0x1cc),'text':JSON['stringify']({'error':_0x543b38(0x1d6)})}]};});async function u(){const _0x47575c=a0_0x4a967d;let _0x25a687=f+_0x47575c(0x1d2)+encodeURIComponent(Z),_0x1bb88a={};if(X)_0x1bb88a['Authorization']=_0x47575c(0x1fc)+X;Y(_0x47575c(0x1cb)+_0x25a687);while(!0x0){try{let _0x3f7376=await fetch(_0x25a687,{'headers':_0x1bb88a});if(!_0x3f7376['ok']){Y(_0x47575c(0x20b)+_0x3f7376[_0x47575c(0x1fa)]+'\x20'+_0x3f7376['statusText']),await h(0x1388);continue;}let _0x3b11bd=_0x3f7376[_0x47575c(0x1c8)][_0x47575c(0x1e6)](),_0x11b967=new TextDecoder(),_0x596350='';while(!0x0){let {done:_0x722efd,value:_0x2b5668}=await _0x3b11bd[_0x47575c(0x1e1)]();if(_0x722efd)break;_0x596350+=_0x11b967['decode'](_0x2b5668,{'stream':!0x0});let _0x3e220f=_0x596350[_0x47575c(0x197)]('\x0a\x0a');_0x596350=_0x3e220f[_0x47575c(0x18c)]()||'';for(let _0xdaa456 of _0x3e220f){let _0x471f84=_0xdaa456[_0x47575c(0x197)]('\x0a')['find'](_0x4d7142=>_0x4d7142[_0x47575c(0x1fd)](_0x47575c(0x1b8)));if(!_0x471f84)continue;try{let _0x56dc77=JSON['parse'](_0x471f84[_0x47575c(0x20a)](0x6));await S(_0x56dc77);}catch(_0x382021){Y('parse\x20error:\x20'+_0x382021);}}}Y(_0x47575c(0x1e2));}catch(_0x29875d){Y(_0x47575c(0x212)+_0x29875d);}await h(0xbb8);}}async function S(_0x548bf9){const _0x71e98f=a0_0x4a967d;if(_0x548bf9[_0x71e98f(0x1c3)]==='connected'){Y('SSE\x20connected\x20as\x20\x22'+Z+'\x22');return;}if(_0x548bf9[_0x71e98f(0x1c3)]===_0x71e98f(0x195)){if(Y(_0x71e98f(0x1bd)+_0x548bf9[_0x71e98f(0x1b0)]+':\x20'+_0x548bf9[_0x71e98f(0x18d)][_0x71e98f(0x20a)](0x0,0x3c)),await K[_0x71e98f(0x18b)]({'method':'notifications/claude/channel','params':{'content':_0x548bf9['message'],'meta':{'sender':_0x548bf9[_0x71e98f(0x1b0)]||_0x71e98f(0x1ea),'sender_id':_0x71e98f(0x1a2),'user':_0x548bf9[_0x71e98f(0x1b0)]||'hub','priority':_0x71e98f(0x1bb)}}}),_0x548bf9['message_id'])await P('ack_inbox',{'alias':Z,'message_id':_0x548bf9[_0x71e98f(0x203)]});return;}if(_0x548bf9[_0x71e98f(0x1c3)]===_0x71e98f(0x20c)||_0x548bf9[_0x71e98f(0x1c3)]===_0x71e98f(0x1e5)){Y('←\x20'+_0x548bf9[_0x71e98f(0x1c3)]+_0x71e98f(0x1a8)+_0x548bf9[_0x71e98f(0x1ff)]+_0x71e98f(0x18a)+(_0x548bf9[_0x71e98f(0x1fe)]||_0x71e98f(0x1bb)));let _0x568137=await P(_0x71e98f(0x1c0),{'alias':Z,'limit':0x5});if(_0x568137?.['ok']&&_0x568137[_0x71e98f(0x1ef)]?.['length']>0x0)for(let _0x5e07e1 of _0x568137['messages']){let _0x408ec8={'sender':_0x5e07e1[_0x71e98f(0x208)]||_0x71e98f(0x1ea),'sender_id':_0x71e98f(0x1a2),'user':_0x5e07e1[_0x71e98f(0x208)]||'hub','task_id':_0x5e07e1['id'],'priority':_0x5e07e1[_0x71e98f(0x1fe)]||_0x71e98f(0x1bb)};k[_0x71e98f(0x206)](_0x5e07e1['id'],_0x5e07e1[_0x71e98f(0x208)]||_0x71e98f(0x1ea)),await K[_0x71e98f(0x18b)]({'method':_0x71e98f(0x1aa),'params':{'content':_0x5e07e1[_0x71e98f(0x201)],'meta':_0x408ec8}}),Y(_0x71e98f(0x1df)+_0x5e07e1['id']['slice'](0x0,0x8)+'\x20from\x20'+_0x5e07e1[_0x71e98f(0x208)]+':\x20'+_0x5e07e1['content'][_0x71e98f(0x20a)](0x0,0x3c)),await P(_0x71e98f(0x18e),{'alias':Z,'message_id':_0x5e07e1['id']});}}}async function A(){const _0x1ddd02=a0_0x4a967d;let _0x4d39d7=new a0_0x38e2eb();await K['connect'](_0x4d39d7),Y(_0x1ddd02(0x1ab)),Y(_0x1ddd02(0x1e0)),u()[_0x1ddd02(0x196)](_0x34e001=>Y(_0x1ddd02(0x1f3)+_0x34e001)),P(_0x1ddd02(0x1a6),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x4cf3f3(),'hostname':a0_0x4cf3f3(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':j||void 0x0})[_0x1ddd02(0x189)](()=>Y(_0x1ddd02(0x1ee)+Z+_0x1ddd02(0x1ad)+w[_0x1ddd02(0x20a)](0x0,0x8)+')'))[_0x1ddd02(0x196)](_0x1888f7=>Y(_0x1ddd02(0x1ae)+_0x1888f7)),setInterval(()=>{const _0x44ac8b=_0x1ddd02;P(_0x44ac8b(0x1a6),{'resume_id':w,'alias':Z,'status':_0x44ac8b(0x1d1),'server':a0_0x4cf3f3(),'hostname':a0_0x4cf3f3(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':j||void 0x0})[_0x44ac8b(0x196)](_0x30639c=>Y(_0x44ac8b(0x1b7)+_0x30639c));},0x2bf20),Y(_0x1ddd02(0x1b1));}A()[a0_0x4a967d(0x196)](_0x3db0b4=>{const _0x55cddb=a0_0x4a967d;Y(_0x55cddb(0x205)+_0x3db0b4),process['exit'](0x1);});async function N(){const _0x3a65e1=a0_0x4a967d;Y(_0x3a65e1(0x1c4)),await P(_0x3a65e1(0x1a6),{'resume_id':w,'alias':Z,'status':_0x3a65e1(0x19d),'task':_0x3a65e1(0x1b5)})[_0x3a65e1(0x196)](()=>{}),process[_0x3a65e1(0x19f)](0x0);}process['stdin']['on'](a0_0x4a967d(0x1dc),()=>N()),process['on'](a0_0x4a967d(0x1c5),()=>N()),process['on'](a0_0x4a967d(0x19c),()=>N());
|
|
2
|
+
const a0_0x51d63f=a0_0x1553;(function(_0x246343,_0xf37cd0){const _0x43ee9d=a0_0x1553,_0xdd07d=_0x246343();while(!![]){try{const _0xa4a345=parseInt(_0x43ee9d(0x1d5))/0x1+-parseInt(_0x43ee9d(0x177))/0x2*(-parseInt(_0x43ee9d(0x1a5))/0x3)+parseInt(_0x43ee9d(0x173))/0x4*(parseInt(_0x43ee9d(0x18c))/0x5)+parseInt(_0x43ee9d(0x17a))/0x6+-parseInt(_0x43ee9d(0x184))/0x7*(parseInt(_0x43ee9d(0x1da))/0x8)+-parseInt(_0x43ee9d(0x1ec))/0x9*(-parseInt(_0x43ee9d(0x1ae))/0xa)+-parseInt(_0x43ee9d(0x1c9))/0xb*(parseInt(_0x43ee9d(0x1bb))/0xc);if(_0xa4a345===_0xf37cd0)break;else _0xdd07d['push'](_0xdd07d['shift']());}catch(_0x3bf01d){_0xdd07d['push'](_0xdd07d['shift']());}}}(a0_0x892a,0x3641b));import{readFileSync as a0_0x189bc7,existsSync as a0_0x339850}from'fs';import{randomUUID as a0_0x5bd3a9}from'crypto';function a0_0x1553(_0x2f7437,_0x2e552e){_0x2f7437=_0x2f7437-0x15c;const _0x892a83=a0_0x892a();let _0x1553aa=_0x892a83[_0x2f7437];return _0x1553aa;}import{join as a0_0x50650a}from'path';import{hostname as a0_0x29d6ec}from'os';function a0_0x892a(){const _0x63b7ae=['heartbeat\x20failed:\x20','9594hhxWCm','statusText','setRequestHandler',':\x20inbox_count=','broadcast','MCP\x20stdio\x20connected','message','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','connected','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','slice','exit','ack_inbox','\x20CWD=','messages','write','claude-code','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','\x22\x20(','set','body','string','unknown\x20tool','new_task','488564XyZHLn',']\x20[commhub]\x20','content','status','691830xlDLIJ','toTimeString','http://127.0.0.1:9200','42246uQCJKo','parse\x20error:\x20','initialize','Message\x20content','low','commhub_report_status','inbox_count','/mcp','init\x20failed:\x20','type','147546VOVRIf','from','SIGINT','SSE\x20connected\x20as\x20\x22','Session\x20alias:\x20','.env','normal','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','10OKSJBN','Reply\x20text\x20/\x20result\x20summary','read','commhub_get_all_status','hub','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','length','SIGTERM','decode','catch','from_session','→\x20injected\x20task\x20','end','...\x20TMUX=','\x20from\x20','alias','Authorization','get','in_progress','split','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','POST','cwd','result','delete','3ewLifF','params','trim','shutting\x20down,\x20reporting\x20offline...','text','no\x20response','send_task','replace','token','50VPEgIH','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','startsWith','error','commhub_send_task','join','\x20priority=','high','utf-8','stdin','\x20PROJECT_ENV=','fatal:\x20','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','12IjMhmT','ENV:\x20URL=','Task\x20content','stringify','.anet','2025-03-26','task','commhub_reply','.claude/channels/commhub','\x20ALIAS=','application/json,\x20text/event-stream','blocked','parse','working','2519781dTgbvd','message_id','report_status','2.0','idle','0.3.0','notification','priority','session\x20disconnected','application/json','object','SSE\x20connection\x20error:\x20','80596GigsSt','commhub-channel','completed','commhub','Target\x20session\x20alias','88gBYhor','failed','CommHub\x20init\x20failed:\x20','warning:\x20could\x20not\x20register:\x20','none','Bearer\x20','commhub_send_message','find','/events/','ready\x20—\x20waiting\x20for\x20events','registered\x20as\x20\x22','notifications/claude/channel','data:\x20','Current\x20task\x20description','cancelled','←\x20message\x20from\x20','tools/call'];a0_0x892a=function(){return _0x63b7ae;};return a0_0x892a();}import{execSync as a0_0x91fe92}from'child_process';import{Server as a0_0x3392c5}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0xef4093}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x1dbfd2,CallToolRequestSchema as a0_0x79331d}from'@modelcontextprotocol/sdk/types.js';function p(_0x26271e){const _0x2daa02=a0_0x1553;if(!a0_0x339850(_0x26271e))return;for(let _0x1a770f of a0_0x189bc7(_0x26271e,_0x2daa02(0x1b6))[_0x2daa02(0x19f)]('\x0a')){let _0x5a047b=_0x1a770f[_0x2daa02(0x1a7)]();if(!_0x5a047b||_0x5a047b[_0x2daa02(0x1b0)]('#'))continue;let _0x3602cb=_0x5a047b['indexOf']('=');if(_0x3602cb<0x0)continue;let _0x3e3480=_0x5a047b[_0x2daa02(0x165)](0x0,_0x3602cb)[_0x2daa02(0x1a7)](),_0x1ba47f=_0x5a047b[_0x2daa02(0x165)](_0x3602cb+0x1)[_0x2daa02(0x1a7)]()[_0x2daa02(0x1ac)](/^["']|["']$/g,'');if(!process.env[_0x3e3480])process.env[_0x3e3480]=_0x1ba47f;}}var C=process.env.HOME||'~',T=a0_0x50650a(C,a0_0x51d63f(0x1c3));p(a0_0x50650a(T,'.env'));var L=process[a0_0x51d63f(0x1a2)]()['replace'](/\//g,'-');p(a0_0x50650a(T,L,a0_0x51d63f(0x189)));function U(){const _0x41fb69=a0_0x51d63f;try{return a0_0x91fe92('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0x41fb69(0x1b6),'timeout':0x7d0})[_0x41fb69(0x1a7)]();}catch{return'';}}function v(){const _0x4a376d=a0_0x51d63f;try{let _0x9fb395=a0_0x50650a(C,_0x4a376d(0x1bf),'config.json');if(a0_0x339850(_0x9fb395))return JSON[_0x4a376d(0x1c7)](a0_0x189bc7(_0x9fb395,_0x4a376d(0x1b6)));}catch{}return{};}var H=v(),f=process.env.COMMHUB_URL||H[a0_0x51d63f(0x190)]||a0_0x51d63f(0x179),j=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||j||a0_0x29d6ec(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||a0_0x5bd3a9(),X=process.env.COMMHUB_TOKEN||H[a0_0x51d63f(0x1ad)]||'';function Y(_0x2c9c3a){const _0x351a87=a0_0x51d63f;let _0x39deae=new Date()[_0x351a87(0x178)]()['slice'](0x0,0x8);process['stderr'][_0x351a87(0x16a)]('['+_0x39deae+_0x351a87(0x174)+_0x2c9c3a+'\x0a');}function h(_0x1cd24e){return new Promise(_0x21528b=>setTimeout(_0x21528b,_0x1cd24e));}Y(a0_0x51d63f(0x1bc)+f+a0_0x51d63f(0x1c4)+Z+'\x20RESUME_ID='+w[a0_0x51d63f(0x165)](0x0,0x8)+a0_0x51d63f(0x199)+(j||a0_0x51d63f(0x1de))+a0_0x51d63f(0x168)+process[a0_0x51d63f(0x1a2)]()+a0_0x51d63f(0x1b8)+L);var k=new Map(),K=new a0_0x3392c5({'name':a0_0x51d63f(0x1d6),'version':a0_0x51d63f(0x1ce)},{'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>',a0_0x51d63f(0x1af),a0_0x51d63f(0x16c),a0_0x51d63f(0x1a0),a0_0x51d63f(0x188)+Z][a0_0x51d63f(0x1b3)]('\x0a')});K['setRequestHandler'](a0_0x1dbfd2,async()=>({'tools':[{'name':a0_0x51d63f(0x1c2),'description':a0_0x51d63f(0x162),'inputSchema':{'type':a0_0x51d63f(0x1d3),'properties':{'task_id':{'type':'string','description':a0_0x51d63f(0x191)},'text':{'type':a0_0x51d63f(0x170),'description':a0_0x51d63f(0x18d)},'status':{'type':a0_0x51d63f(0x170),'enum':[a0_0x51d63f(0x1d7),a0_0x51d63f(0x1db),'cancelled','blocked','error',a0_0x51d63f(0x19e)],'description':a0_0x51d63f(0x18b)}},'required':['text']}},{'name':'commhub_report_status','description':a0_0x51d63f(0x164),'inputSchema':{'type':a0_0x51d63f(0x1d3),'properties':{'status':{'type':a0_0x51d63f(0x170),'enum':[a0_0x51d63f(0x1c8),a0_0x51d63f(0x1cd),a0_0x51d63f(0x1c6),'error']},'task':{'type':a0_0x51d63f(0x170),'description':a0_0x51d63f(0x1e7)},'progress':{'type':'number','description':'Progress\x200-100'}},'required':[a0_0x51d63f(0x176)]}},{'name':a0_0x51d63f(0x1b2),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x51d63f(0x1d3),'properties':{'alias':{'type':a0_0x51d63f(0x170),'description':'Target\x20session\x20alias'},'task':{'type':a0_0x51d63f(0x170),'description':a0_0x51d63f(0x1bd)},'priority':{'type':a0_0x51d63f(0x170),'enum':[a0_0x51d63f(0x1b5),a0_0x51d63f(0x18a),a0_0x51d63f(0x17e)],'description':'Priority\x20(default:\x20normal)'}},'required':[a0_0x51d63f(0x19b),a0_0x51d63f(0x1c1)]}},{'name':a0_0x51d63f(0x1e0),'description':a0_0x51d63f(0x1ba),'inputSchema':{'type':a0_0x51d63f(0x1d3),'properties':{'alias':{'type':'string','description':a0_0x51d63f(0x1d9)},'message':{'type':a0_0x51d63f(0x170),'description':a0_0x51d63f(0x17d)}},'required':['alias','message']}},{'name':a0_0x51d63f(0x18f),'description':'Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','inputSchema':{'type':a0_0x51d63f(0x1d3),'properties':{}}}]}));async function P(_0x4ded7a,_0x15263b){const _0x9c1116=a0_0x51d63f;let _0x125299=await fetch(f+'/mcp',{'method':_0x9c1116(0x1a1),'headers':{'Content-Type':_0x9c1116(0x1d2),'Accept':_0x9c1116(0x1c5),...X?{'Authorization':_0x9c1116(0x1df)+X}:{}},'body':JSON[_0x9c1116(0x1be)]({'jsonrpc':_0x9c1116(0x1cc),'id':0x1,'method':_0x9c1116(0x17c),'params':{'protocolVersion':_0x9c1116(0x1c0),'capabilities':{},'clientInfo':{'name':_0x9c1116(0x1d6),'version':_0x9c1116(0x1ce)}}})});if(!_0x125299['ok']){let _0x3bcf8c=await _0x125299[_0x9c1116(0x1a9)]();return Y(_0x9c1116(0x1dc)+_0x125299[_0x9c1116(0x176)]+'\x20'+_0x3bcf8c[_0x9c1116(0x165)](0x0,0x64)),{'ok':!0x1,'error':_0x9c1116(0x182)+_0x125299['status']};}await _0x125299[_0x9c1116(0x1a9)]();let _0xd24996=(await(await fetch(f+_0x9c1116(0x181),{'method':_0x9c1116(0x1a1),'headers':{'Content-Type':_0x9c1116(0x1d2),'Accept':_0x9c1116(0x1c5),...X?{'Authorization':_0x9c1116(0x1df)+X}:{}},'body':JSON[_0x9c1116(0x1be)]({'jsonrpc':'2.0','id':0x2,'method':_0x9c1116(0x1ea),'params':{'name':_0x4ded7a,'arguments':_0x15263b}})}))[_0x9c1116(0x1a9)]())[_0x9c1116(0x19f)]('\x0a')[_0x9c1116(0x1e1)](_0xefcaa6=>_0xefcaa6['startsWith']('data:\x20'));if(_0xd24996){let _0x3e967f=JSON[_0x9c1116(0x1c7)](_0xd24996['slice'](0x6));return _0x3e967f?.[_0x9c1116(0x1a3)]?.[_0x9c1116(0x175)]?.[0x0]?.['text']?JSON[_0x9c1116(0x1c7)](_0x3e967f[_0x9c1116(0x1a3)]['content'][0x0][_0x9c1116(0x1a9)]):_0x3e967f;}return{'ok':!0x1,'error':_0x9c1116(0x1aa)};}K[a0_0x51d63f(0x15d)](a0_0x79331d,async _0x14d2c1=>{const _0x487a88=a0_0x51d63f;let {name:_0x293598,arguments:_0x7570e9}=_0x14d2c1[_0x487a88(0x1a6)];if(_0x293598===_0x487a88(0x1c2)){let {task_id:_0x33247f,text:_0x3601a7,status:_0x2e2ef2}=_0x7570e9;if(_0x2e2ef2===_0x487a88(0x1d7)||_0x2e2ef2==='failed'||_0x2e2ef2===_0x487a88(0x1e8)){let _0x1c4f42=_0x2e2ef2==='completed'?'replied':_0x2e2ef2,_0x138fc3=_0x33247f?k[_0x487a88(0x19d)](_0x33247f)||_0x487a88(0x190):_0x487a88(0x190),_0x1008cb=await P('send_reply',{'alias':_0x138fc3,'text':_0x3601a7,'in_reply_to':_0x33247f||void 0x0,'status':_0x1c4f42,'from_session':Z});if(_0x33247f)k[_0x487a88(0x1a4)](_0x33247f);return{'content':[{'type':_0x487a88(0x1a9),'text':JSON[_0x487a88(0x1be)](_0x1008cb)}]};}let _0x4fc7ec=await P(_0x487a88(0x1cb),{'resume_id':w,'alias':Z,'status':_0x2e2ef2===_0x487a88(0x1c6)?'blocked':_0x2e2ef2==='error'?_0x487a88(0x1b1):_0x487a88(0x1c8),'task':_0x3601a7['slice'](0x0,0xc8),'output':_0x3601a7});return{'content':[{'type':_0x487a88(0x1a9),'text':JSON['stringify'](_0x4fc7ec)}]};}if(_0x293598===_0x487a88(0x17f)){let {status:_0x356971,task:_0x3bef7a,progress:_0x988567}=_0x7570e9,_0x21daac=await P(_0x487a88(0x1cb),{'resume_id':w,'alias':Z,'status':_0x356971,'task':_0x3bef7a,'progress':_0x988567});return{'content':[{'type':_0x487a88(0x1a9),'text':JSON[_0x487a88(0x1be)](_0x21daac)}]};}if(_0x293598==='commhub_send_task'){let {alias:_0x58ffe7,task:_0x380ae8,priority:_0x47ff69}=_0x7570e9,_0x3d1492=await P(_0x487a88(0x1ab),{'alias':_0x58ffe7,'task':_0x380ae8,'priority':_0x47ff69||_0x487a88(0x18a),'from_session':Z});return{'content':[{'type':_0x487a88(0x1a9),'text':JSON['stringify'](_0x3d1492)}]};}if(_0x293598===_0x487a88(0x1e0)){let {alias:_0x5334e3,message:_0x540662}=_0x7570e9,_0x3c733c=await P('send_message',{'alias':_0x5334e3,'message':_0x540662,'from_session':Z});return{'content':[{'type':_0x487a88(0x1a9),'text':JSON[_0x487a88(0x1be)](_0x3c733c)}]};}if(_0x293598==='commhub_get_all_status'){let _0x177c90=await P('get_all_status',{});return{'content':[{'type':_0x487a88(0x1a9),'text':JSON['stringify'](_0x177c90)}]};}return{'content':[{'type':_0x487a88(0x1a9),'text':JSON[_0x487a88(0x1be)]({'error':_0x487a88(0x171)})}]};});async function u(){const _0x3ee9fc=a0_0x51d63f;let _0x109fab=f+_0x3ee9fc(0x1e2)+encodeURIComponent(Z),_0x5236f0={};if(X)_0x5236f0[_0x3ee9fc(0x19c)]=_0x3ee9fc(0x1df)+X;Y('connecting\x20to\x20'+_0x109fab);while(!0x0){try{let _0x8e24b5=await fetch(_0x109fab,{'headers':_0x5236f0});if(!_0x8e24b5['ok']){Y('SSE\x20error:\x20'+_0x8e24b5['status']+'\x20'+_0x8e24b5[_0x3ee9fc(0x15c)]),await h(0x1388);continue;}let _0x4c720f=_0x8e24b5[_0x3ee9fc(0x16f)]['getReader'](),_0x1e7099=new TextDecoder(),_0x240b40='';while(!0x0){let {done:_0x119cc4,value:_0x11c7cf}=await _0x4c720f[_0x3ee9fc(0x18e)]();if(_0x119cc4)break;_0x240b40+=_0x1e7099[_0x3ee9fc(0x194)](_0x11c7cf,{'stream':!0x0});let _0x2b324f=_0x240b40[_0x3ee9fc(0x19f)]('\x0a\x0a');_0x240b40=_0x2b324f['pop']()||'';for(let _0x229957 of _0x2b324f){let _0x8ed258=_0x229957['split']('\x0a')[_0x3ee9fc(0x1e1)](_0xc2f680=>_0xc2f680[_0x3ee9fc(0x1b0)](_0x3ee9fc(0x1e6)));if(!_0x8ed258)continue;try{let _0x5f4cd0=JSON[_0x3ee9fc(0x1c7)](_0x8ed258[_0x3ee9fc(0x165)](0x6));await S(_0x5f4cd0);}catch(_0x58f1e5){Y(_0x3ee9fc(0x17b)+_0x58f1e5);}}}Y('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x67a721){Y(_0x3ee9fc(0x1d4)+_0x67a721);}await h(0xbb8);}}async function S(_0x2ff1a8){const _0x8aedc6=a0_0x51d63f;if(_0x2ff1a8[_0x8aedc6(0x183)]===_0x8aedc6(0x163)){Y(_0x8aedc6(0x187)+Z+'\x22');return;}if(_0x2ff1a8[_0x8aedc6(0x183)]==='new_message'){if(Y(_0x8aedc6(0x1e9)+_0x2ff1a8[_0x8aedc6(0x185)]+':\x20'+_0x2ff1a8[_0x8aedc6(0x161)][_0x8aedc6(0x165)](0x0,0x3c)),await K[_0x8aedc6(0x1cf)]({'method':'notifications/claude/channel','params':{'content':_0x2ff1a8[_0x8aedc6(0x161)],'meta':{'sender':_0x2ff1a8[_0x8aedc6(0x185)]||_0x8aedc6(0x190),'sender_id':_0x8aedc6(0x1d8),'user':_0x2ff1a8[_0x8aedc6(0x185)]||_0x8aedc6(0x190),'priority':_0x8aedc6(0x18a)}}}),_0x2ff1a8[_0x8aedc6(0x1ca)])await P(_0x8aedc6(0x167),{'alias':Z,'message_id':_0x2ff1a8[_0x8aedc6(0x1ca)]});return;}if(_0x2ff1a8[_0x8aedc6(0x183)]===_0x8aedc6(0x172)||_0x2ff1a8[_0x8aedc6(0x183)]===_0x8aedc6(0x15f)){Y('←\x20'+_0x2ff1a8['type']+_0x8aedc6(0x15e)+_0x2ff1a8[_0x8aedc6(0x180)]+_0x8aedc6(0x1b4)+(_0x2ff1a8[_0x8aedc6(0x1d0)]||_0x8aedc6(0x18a)));let _0x4ee615=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0x4ee615?.['ok']&&_0x4ee615[_0x8aedc6(0x169)]?.[_0x8aedc6(0x192)]>0x0)for(let _0x188044 of _0x4ee615['messages']){let _0x2a1c1c={'sender':_0x188044[_0x8aedc6(0x196)]||_0x8aedc6(0x190),'sender_id':'commhub','user':_0x188044[_0x8aedc6(0x196)]||'hub','task_id':_0x188044['id'],'priority':_0x188044[_0x8aedc6(0x1d0)]||'normal'};k[_0x8aedc6(0x16e)](_0x188044['id'],_0x188044[_0x8aedc6(0x196)]||_0x8aedc6(0x190)),await K['notification']({'method':_0x8aedc6(0x1e5),'params':{'content':_0x188044['content'],'meta':_0x2a1c1c}}),Y(_0x8aedc6(0x197)+_0x188044['id']['slice'](0x0,0x8)+_0x8aedc6(0x19a)+_0x188044['from_session']+':\x20'+_0x188044[_0x8aedc6(0x175)][_0x8aedc6(0x165)](0x0,0x3c)),await P('ack_inbox',{'alias':Z,'message_id':_0x188044['id']});}}}async function A(){const _0x5940b6=a0_0x51d63f;let _0x44525f=new a0_0xef4093();await K['connect'](_0x44525f),Y(_0x5940b6(0x160)),Y('starting\x20SSE\x20listener...'),u()[_0x5940b6(0x195)](_0x5abf77=>Y('SSE\x20fatal:\x20'+_0x5abf77)),P(_0x5940b6(0x1cb),{'resume_id':w,'alias':Z,'status':_0x5940b6(0x1cd),'server':a0_0x29d6ec(),'hostname':a0_0x29d6ec(),'agent':_0x5940b6(0x16b),'project_dir':process['cwd'](),'tmux_name':j||void 0x0})['then'](()=>Y(_0x5940b6(0x1e4)+Z+_0x5940b6(0x16d)+w[_0x5940b6(0x165)](0x0,0x8)+')'))['catch'](_0x1f94af=>Y(_0x5940b6(0x1dd)+_0x1f94af)),setInterval(()=>{const _0x55fa6a=_0x5940b6;P('report_status',{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x29d6ec(),'hostname':a0_0x29d6ec(),'agent':_0x55fa6a(0x16b),'project_dir':process[_0x55fa6a(0x1a2)](),'tmux_name':j||void 0x0})['catch'](_0x46a733=>Y(_0x55fa6a(0x1eb)+_0x46a733));},0x2bf20),Y(_0x5940b6(0x1e3));}A()[a0_0x51d63f(0x195)](_0x1588ab=>{const _0x58c150=a0_0x51d63f;Y(_0x58c150(0x1b9)+_0x1588ab),process[_0x58c150(0x166)](0x1);});async function N(){const _0x4da88b=a0_0x51d63f;Y(_0x4da88b(0x1a8)),await P('report_status',{'resume_id':w,'alias':Z,'status':_0x4da88b(0x1b1),'task':_0x4da88b(0x1d1)})[_0x4da88b(0x195)](()=>{}),process[_0x4da88b(0x166)](0x0);}process[a0_0x51d63f(0x1b7)]['on'](a0_0x51d63f(0x198),()=>N()),process['on'](a0_0x51d63f(0x193),()=>N()),process['on'](a0_0x51d63f(0x186),()=>N());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.3-preview.0",
|
|
4
4
|
"description": "AI Agent Network CLI \u2014 Create multi-agent networks with user management, network isolation, and 3 AI runtimes (Claude/Codex/MiniMax). 39 commands.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/client.js",
|