@sleep2agi/agent-network 2.0.0-preview.52 → 2.0.0-preview.53
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
|
+
function a0_0x5aec(){const _0x401305=[']\x20[commhub:','name','tools/call','Bearer\x20','processInbox','error','5315534HhExJb','match','application/json,\x20text/event-stream','normal','disconnect','resumeId','autoConnect','text/event-stream','/mcp','/events/','emit','alias','catch','log','type','send','message','reconnectDelay','heartbeatInterval','3589225QiBQlw','inbox\x20error:\x20','idle','send_message','abort','call','POST','min','connected','task','server','Authorization','SSE\x20failed:\x20','offline','content','token','heartbeat\x20failed:\x20','slice','report_status','disconnected','text','now','registered','replace','10901187eeVtgv','parse','97950KjTGud','ack_inbox','agent','9AWVQKt','cwd','body','from_session','broadcast','get_inbox','reply','status','connect','application/json','sseAbort','signal','sleep','heartbeatTimer','64893ryitiu','5460448BXRJSx','data:\x20','connectSSE','3744822pecCCY','running','read','split','url','4ykCwSr'];a0_0x5aec=function(){return _0x401305;};return a0_0x5aec();}const a0_0x286467=a0_0x134d;function a0_0x134d(_0x14962d,_0x5ace72){_0x14962d=_0x14962d-0x18c;const _0x5aecbe=a0_0x5aec();let _0x134d30=_0x5aecbe[_0x14962d];return _0x134d30;}(function(_0x473e19,_0x5cbd8e){const _0x2067e8=a0_0x134d,_0x17c5f2=_0x473e19();while(!![]){try{const _0x342ade=-parseInt(_0x2067e8(0x1b6))/0x1*(-parseInt(_0x2067e8(0x1b3))/0x2)+-parseInt(_0x2067e8(0x1c4))/0x3*(-parseInt(_0x2067e8(0x1cd))/0x4)+-parseInt(_0x2067e8(0x199))/0x5+-parseInt(_0x2067e8(0x1c8))/0x6+parseInt(_0x2067e8(0x1d4))/0x7+-parseInt(_0x2067e8(0x1c5))/0x8+parseInt(_0x2067e8(0x1b1))/0x9;if(_0x342ade===_0x5cbd8e)break;else _0x17c5f2['push'](_0x17c5f2['shift']());}catch(_0x5091c9){_0x17c5f2['push'](_0x17c5f2['shift']());}}}(a0_0x5aec,0x63b99));import{EventEmitter as a0_0x4958fc}from'events';import{hostname as a0_0x562ffa}from'os';class T extends a0_0x4958fc{[a0_0x286467(0x1cc)];[a0_0x286467(0x191)];['token'];[a0_0x286467(0x1b5)];[a0_0x286467(0x1d9)];[a0_0x286467(0x198)];['reconnectDelay'];[a0_0x286467(0x1c3)];['sseAbort'];['running']=!0x1;constructor(_0x42f381){const _0x12962c=a0_0x286467;super();if(this[_0x12962c(0x1cc)]=_0x42f381[_0x12962c(0x1cc)][_0x12962c(0x1b0)](/\/$/,''),this[_0x12962c(0x191)]=_0x42f381['alias'],this['token']=_0x42f381[_0x12962c(0x1a8)],this[_0x12962c(0x1b5)]=_0x42f381[_0x12962c(0x1b5)]||'sdk',this[_0x12962c(0x1d9)]='sdk-'+_0x42f381[_0x12962c(0x191)]+'-'+Date[_0x12962c(0x1ae)]()['toString'](0x24),this['heartbeatInterval']=_0x42f381['heartbeatInterval']??0x2bf20,this[_0x12962c(0x197)]=_0x42f381[_0x12962c(0x197)]??0xbb8,_0x42f381[_0x12962c(0x18c)]!==!0x1)this[_0x12962c(0x1be)]();}['log'](_0x3e455a){const _0x3ffb19=a0_0x286467;console[_0x3ffb19(0x193)]('['+new Date()['toTimeString']()['slice'](0x0,0x8)+_0x3ffb19(0x1ce)+this['alias']+']\x20'+_0x3e455a);}async[a0_0x286467(0x19e)](_0x40b228,_0x233d63){const _0x714d5d=a0_0x286467;let _0x500351={'Content-Type':_0x714d5d(0x1bf),'Accept':_0x714d5d(0x1d6)};if(this[_0x714d5d(0x1a8)])_0x500351['Authorization']='Bearer\x20'+this[_0x714d5d(0x1a8)];let _0x208dab=await(await fetch(this[_0x714d5d(0x1cc)]+_0x714d5d(0x18e),{'method':_0x714d5d(0x19f),'headers':_0x500351,'body':JSON['stringify']({'jsonrpc':'2.0','id':Date[_0x714d5d(0x1ae)](),'method':_0x714d5d(0x1d0),'params':{'name':_0x40b228,'arguments':_0x233d63}})}))[_0x714d5d(0x1ad)](),_0x158e26=_0x208dab[_0x714d5d(0x1d5)](/data: (.+)/),_0x4e3876=_0x158e26?JSON['parse'](_0x158e26[0x1]):JSON[_0x714d5d(0x1b2)](_0x208dab),_0x5a4bd1=_0x4e3876?.['result']?.['content']?.[0x0]?.[_0x714d5d(0x1ad)];return _0x5a4bd1?JSON['parse'](_0x5a4bd1):_0x4e3876;}async['connect'](){const _0x4fbd81=a0_0x286467;if(this[_0x4fbd81(0x1c9)])return;this[_0x4fbd81(0x1c9)]=!0x0,await this[_0x4fbd81(0x1bd)]('idle'),this[_0x4fbd81(0x193)](_0x4fbd81(0x1af)),this[_0x4fbd81(0x1c3)]=setInterval(()=>{const _0x5bddb3=_0x4fbd81;this[_0x5bddb3(0x1bd)](_0x5bddb3(0x19b))[_0x5bddb3(0x192)](_0x5223d0=>this['log'](_0x5bddb3(0x1a9)+_0x5223d0['message']));},this['heartbeatInterval']),this[_0x4fbd81(0x1c7)]();}async[a0_0x286467(0x1d8)](){const _0xb4c0cd=a0_0x286467;if(this['running']=!0x1,this[_0xb4c0cd(0x1c0)]?.[_0xb4c0cd(0x19d)](),this[_0xb4c0cd(0x1c3)])clearInterval(this['heartbeatTimer']);await this[_0xb4c0cd(0x1bd)](_0xb4c0cd(0x1a6))['catch'](()=>{}),this[_0xb4c0cd(0x193)](_0xb4c0cd(0x1ac));}async[a0_0x286467(0x195)](_0xa81ce7,_0x1c7232,_0x45eb35=a0_0x286467(0x1d7)){const _0x8a90d8=a0_0x286467;return this[_0x8a90d8(0x19e)]('send_task',{'alias':_0xa81ce7,'task':_0x1c7232,'priority':_0x45eb35,'from_session':this[_0x8a90d8(0x191)]});}async[a0_0x286467(0x196)](_0x35e34c,_0x3a6373){const _0x21f4c5=a0_0x286467;return this[_0x21f4c5(0x19e)](_0x21f4c5(0x19c),{'alias':_0x35e34c,'message':_0x3a6373,'from_session':this[_0x21f4c5(0x191)]});}async[a0_0x286467(0x1bc)](_0x3a33ed,_0x27778f,_0x18820d='completed'){const _0x3b566a=a0_0x286467;return this['call'](_0x3b566a(0x1bc),{'task_id':_0x3a33ed,'text':_0x27778f,'status':_0x18820d});}async[a0_0x286467(0x1bd)](_0x52bd26,_0x11f184){const _0x48436a=a0_0x286467;return this[_0x48436a(0x19e)](_0x48436a(0x1ab),{'resume_id':this[_0x48436a(0x1d9)],'alias':this[_0x48436a(0x191)],'status':_0x52bd26,'server':a0_0x562ffa(),'hostname':a0_0x562ffa(),'agent':this[_0x48436a(0x1b5)],'project_dir':process[_0x48436a(0x1b7)](),..._0x11f184});}async['getAllStatus'](){const _0x5caab5=a0_0x286467;return this[_0x5caab5(0x19e)]('get_all_status',{});}async[a0_0x286467(0x1ba)](_0x32db1e,_0x4474a5){const _0x6df98=a0_0x286467;return this[_0x6df98(0x19e)](_0x6df98(0x1ba),{'message':_0x32db1e,'filter_server':_0x4474a5?.[_0x6df98(0x1a3)],'filter_status':_0x4474a5?.[_0x6df98(0x1bd)]});}async[a0_0x286467(0x1c7)](){const _0xd3f2ef=a0_0x286467;let _0x311b1c=encodeURIComponent(this['alias']),_0x491b18=this[_0xd3f2ef(0x1cc)]+_0xd3f2ef(0x18f)+_0x311b1c,_0x346d85=this['reconnectDelay'];while(this[_0xd3f2ef(0x1c9)]){try{this[_0xd3f2ef(0x1c0)]=new AbortController();let _0x124f92={'Accept':_0xd3f2ef(0x18d)};if(this['token'])_0x124f92[_0xd3f2ef(0x1a4)]=_0xd3f2ef(0x1d1)+this[_0xd3f2ef(0x1a8)];let _0x513e6e=await fetch(_0x491b18,{'headers':_0x124f92,'signal':this['sseAbort'][_0xd3f2ef(0x1c1)]});if(!_0x513e6e['ok']||!_0x513e6e[_0xd3f2ef(0x1b8)]){this[_0xd3f2ef(0x193)](_0xd3f2ef(0x1a5)+_0x513e6e[_0xd3f2ef(0x1bd)]),await this[_0xd3f2ef(0x1c2)](_0x346d85),_0x346d85=Math['min'](_0x346d85*1.5,0xea60);continue;}_0x346d85=this[_0xd3f2ef(0x197)];let _0x5375b6=_0x513e6e['body']['getReader'](),_0x1524bd=new TextDecoder(),_0x3d6608='';while(this[_0xd3f2ef(0x1c9)]){let {done:_0x2ba133,value:_0xb5c336}=await _0x5375b6[_0xd3f2ef(0x1ca)]();if(_0x2ba133)break;_0x3d6608+=_0x1524bd['decode'](_0xb5c336,{'stream':!0x0});let _0x3c129e=_0x3d6608[_0xd3f2ef(0x1cb)]('\x0a');_0x3d6608=_0x3c129e['pop']()||'';for(let _0x332d2d of _0x3c129e){if(!_0x332d2d['startsWith'](_0xd3f2ef(0x1c6)))continue;try{let _0x861348=JSON['parse'](_0x332d2d['slice'](0x6));if(_0x861348['type']===_0xd3f2ef(0x1a1)){this[_0xd3f2ef(0x193)]('SSE\x20connected'),this['emit'](_0xd3f2ef(0x1a1));continue;}if(_0x861348['type']==='new_task'||_0x861348[_0xd3f2ef(0x194)]==='new_message'||_0x861348[_0xd3f2ef(0x194)]==='broadcast')await this['processInbox']();}catch{}}}}catch(_0x4a0af4){if(_0x4a0af4[_0xd3f2ef(0x1cf)]==='AbortError')break;this['emit'](_0xd3f2ef(0x1d3),_0x4a0af4),this[_0xd3f2ef(0x193)]('SSE\x20error:\x20'+_0x4a0af4[_0xd3f2ef(0x196)]);}if(this['running'])this[_0xd3f2ef(0x190)](_0xd3f2ef(0x1ac)),this[_0xd3f2ef(0x193)]('SSE\x20reconnecting\x20in\x20'+_0x346d85/0x3e8+'s...'),await this['sleep'](_0x346d85),_0x346d85=Math[_0xd3f2ef(0x1a0)](_0x346d85*1.5,0xea60);}}async[a0_0x286467(0x1d2)](){const _0x1ab178=a0_0x286467;try{let _0x449f68=(await this[_0x1ab178(0x19e)](_0x1ab178(0x1bb),{'alias':this['alias'],'limit':0xa}))?.['messages']||[];for(let _0x53476e of _0x449f68)await this[_0x1ab178(0x19e)](_0x1ab178(0x1b4),{'alias':this[_0x1ab178(0x191)],'message_id':_0x53476e['id']}),this[_0x1ab178(0x193)]('←\x20'+_0x53476e[_0x1ab178(0x1b9)]+':\x20'+_0x53476e[_0x1ab178(0x1a7)][_0x1ab178(0x1aa)](0x0,0x3c)),this[_0x1ab178(0x190)](_0x1ab178(0x1a2),_0x53476e),this['emit'](_0x1ab178(0x196),_0x53476e);}catch(_0x352310){this[_0x1ab178(0x193)](_0x1ab178(0x19a)+_0x352310[_0x1ab178(0x196)]);}}[a0_0x286467(0x1c2)](_0x527261){return new Promise(_0x383d7b=>setTimeout(_0x383d7b,_0x527261));}}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_0x407083=a0_0x14bd;(function(_0x7c70e3,_0x50b890){const _0xa3d8e9=a0_0x14bd,_0x342db5=_0x7c70e3();while(!![]){try{const _0x2fbd49=parseInt(_0xa3d8e9(0x20e))/0x1*(-parseInt(_0xa3d8e9(0x21c))/0x2)+parseInt(_0xa3d8e9(0x23d))/0x3+parseInt(_0xa3d8e9(0x238))/0x4+parseInt(_0xa3d8e9(0x1cf))/0x5+-parseInt(_0xa3d8e9(0x241))/0x6*(parseInt(_0xa3d8e9(0x1c9))/0x7)+parseInt(_0xa3d8e9(0x1d4))/0x8*(-parseInt(_0xa3d8e9(0x225))/0x9)+-parseInt(_0xa3d8e9(0x1ca))/0xa*(-parseInt(_0xa3d8e9(0x1dc))/0xb);if(_0x2fbd49===_0x50b890)break;else _0x342db5['push'](_0x342db5['shift']());}catch(_0xece108){_0x342db5['push'](_0x342db5['shift']());}}}(a0_0x5e23,0xee070));import{readFileSync as a0_0xee4f1a,existsSync as a0_0x54198e}from'fs';import{join as a0_0x57c19a}from'path';import{hostname as a0_0x340f05}from'os';import{execSync as a0_0x5a59dc}from'child_process';import{Server as a0_0x5f13d7}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x1c33b2}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x56d93f,CallToolRequestSchema as a0_0x5bdfba}from'@modelcontextprotocol/sdk/types.js';function p(_0x4c30b0){const _0x5c158f=a0_0x14bd;if(!a0_0x54198e(_0x4c30b0))return;for(let _0x58e12c of a0_0xee4f1a(_0x4c30b0,_0x5c158f(0x1e3))[_0x5c158f(0x203)]('\x0a')){let _0xbd85ce=_0x58e12c[_0x5c158f(0x22d)]();if(!_0xbd85ce||_0xbd85ce[_0x5c158f(0x211)]('#'))continue;let _0x51b23d=_0xbd85ce[_0x5c158f(0x1df)]('=');if(_0x51b23d<0x0)continue;let _0x48c3cb=_0xbd85ce[_0x5c158f(0x22f)](0x0,_0x51b23d)['trim'](),_0x5edf61=_0xbd85ce[_0x5c158f(0x22f)](_0x51b23d+0x1)['trim']()['replace'](/^["']|["']$/g,'');if(!process.env[_0x48c3cb])process.env[_0x48c3cb]=_0x5edf61;}}var C=process.env.HOME||'~',T=a0_0x57c19a(C,a0_0x407083(0x205));function a0_0x5e23(){const _0x2489ba=['priority','params','send_reply','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','split','parse\x20error:\x20','.claude/channels/commhub','\x20priority=','message','config.json','text','commhub_send_message','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','SSE\x20connected\x20as\x20\x22','application/json,\x20text/event-stream','24257PLRAUc','Bearer\x20','no\x20response','startsWith','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','toTimeString','\x20PROJECT_ENV=','string','get_all_status','from_session','/events/','.anet','MCP\x20stdio\x20connected','2.0','2XPFeia','Authorization','decode','connecting\x20to\x20','Message\x20content','stderr','Priority\x20(default:\x20normal)','exit','working','423UydWck','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','message_id','Session\x20alias:\x20','type','\x20ALIAS=','Task\x20content','inbox_count','trim','\x22\x20(','slice','commhub-channel','Progress\x200-100','then','http://127.0.0.1:9200','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','object','get_inbox','send_task','1405148HWdXrF','application/json','content','pop','connect','5619192BFboYT','warning:\x20could\x20not\x20register:\x20','Reply\x20text\x20/\x20result\x20summary','blocked','6yhfEbP','set','claude-code','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','cancelled','SSE\x20fatal:\x20','number','hub','Target\x20session\x20alias','commhub_reply','SIGINT','body','find','2025-03-26','fatal:\x20','...\x20TMUX=','SSE\x20connection\x20error:\x20','result','←\x20message\x20from\x20','get','none','13590227KwsbWo','22900gnaZBw','heartbeat\x20failed:\x20','SIGTERM','SSE\x20error:\x20','completed','3587450ywbbih','data:\x20','commhub_send_task','length','parse','212632IdNkNR','unknown\x20tool','POST','shutting\x20down,\x20reporting\x20offline...','from','/mcp','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','.env','5995uavVzS','join','token','indexOf',':\x20inbox_count=','in_progress','error','utf-8','idle','status','new_task','cwd','Current\x20task\x20description','end','low','broadcast','alias','stdin','notification','session\x20disconnected','ENV:\x20URL=','ack_inbox','\x20CWD=','commhub','report_status','commhub_report_status','failed','normal','read','catch','setRequestHandler','new_message','stringify','commhub_get_all_status','0.3.0'];a0_0x5e23=function(){return _0x2489ba;};return a0_0x5e23();}p(a0_0x57c19a(T,a0_0x407083(0x1db)));var L=process[a0_0x407083(0x1e7)]()['replace'](/\//g,'-');p(a0_0x57c19a(T,L,'.env'));function a0_0x14bd(_0x36df9e,_0xbc05){_0x36df9e=_0x36df9e-0x1c9;const _0x5e23a7=a0_0x5e23();let _0x14bdf7=_0x5e23a7[_0x36df9e];return _0x14bdf7;}function U(){try{return a0_0x5a59dc('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':'utf-8','timeout':0x7d0})['trim']();}catch{return'';}}function c(){const _0x373487=a0_0x407083;try{let _0x21964f=a0_0x57c19a(C,_0x373487(0x219),_0x373487(0x208));if(a0_0x54198e(_0x21964f))return JSON[_0x373487(0x1d3)](a0_0xee4f1a(_0x21964f,_0x373487(0x1e3)));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H[a0_0x407083(0x248)]||a0_0x407083(0x233),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x340f05(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto['randomUUID'](),X=process.env.COMMHUB_TOKEN||H[a0_0x407083(0x1de)]||'';function Y(_0x2cb7a1){const _0x1a01d5=a0_0x407083;let _0x22a43e=new Date()[_0x1a01d5(0x213)]()[_0x1a01d5(0x22f)](0x0,0x8);process[_0x1a01d5(0x221)]['write']('['+_0x22a43e+']\x20[commhub]\x20'+_0x2cb7a1+'\x0a');}function h(_0x1d40d1){return new Promise(_0x110d21=>setTimeout(_0x110d21,_0x1d40d1));}Y(a0_0x407083(0x1f0)+D+a0_0x407083(0x22a)+Z+'\x20RESUME_ID='+w[a0_0x407083(0x22f)](0x0,0x8)+a0_0x407083(0x250)+(f||a0_0x407083(0x255))+a0_0x407083(0x1f2)+process[a0_0x407083(0x1e7)]()+a0_0x407083(0x214)+L);var k=new Map(),K=new a0_0x5f13d7({'name':a0_0x407083(0x230),'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_0x407083(0x212),a0_0x407083(0x244),'You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.',a0_0x407083(0x228)+Z][a0_0x407083(0x1dd)]('\x0a')});K[a0_0x407083(0x1fa)](a0_0x56d93f,async()=>({'tools':[{'name':a0_0x407083(0x24a),'description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':a0_0x407083(0x235),'properties':{'task_id':{'type':a0_0x407083(0x215),'description':a0_0x407083(0x234)},'text':{'type':a0_0x407083(0x215),'description':a0_0x407083(0x23f)},'status':{'type':a0_0x407083(0x215),'enum':[a0_0x407083(0x1ce),a0_0x407083(0x1f6),a0_0x407083(0x245),a0_0x407083(0x240),a0_0x407083(0x1e2),a0_0x407083(0x1e1)],'description':a0_0x407083(0x1da)}},'required':['text']}},{'name':a0_0x407083(0x1f5),'description':a0_0x407083(0x202),'inputSchema':{'type':a0_0x407083(0x235),'properties':{'status':{'type':'string','enum':[a0_0x407083(0x224),a0_0x407083(0x1e4),'blocked',a0_0x407083(0x1e2)]},'task':{'type':a0_0x407083(0x215),'description':a0_0x407083(0x1e8)},'progress':{'type':a0_0x407083(0x247),'description':a0_0x407083(0x231)}},'required':[a0_0x407083(0x1e5)]}},{'name':a0_0x407083(0x1d1),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x407083(0x235),'properties':{'alias':{'type':a0_0x407083(0x215),'description':a0_0x407083(0x249)},'task':{'type':a0_0x407083(0x215),'description':a0_0x407083(0x22b)},'priority':{'type':a0_0x407083(0x215),'enum':['high','normal',a0_0x407083(0x1ea)],'description':a0_0x407083(0x222)}},'required':[a0_0x407083(0x1ec),'task']}},{'name':a0_0x407083(0x20a),'description':a0_0x407083(0x20b),'inputSchema':{'type':a0_0x407083(0x235),'properties':{'alias':{'type':a0_0x407083(0x215),'description':a0_0x407083(0x249)},'message':{'type':a0_0x407083(0x215),'description':a0_0x407083(0x220)}},'required':[a0_0x407083(0x1ec),'message']}},{'name':'commhub_get_all_status','description':a0_0x407083(0x226),'inputSchema':{'type':'object','properties':{}}}]}));async function P(_0x2671fd,_0x3b9243){const _0x427fdc=a0_0x407083;let _0x27fc49=await fetch(D+'/mcp',{'method':_0x427fdc(0x1d6),'headers':{'Content-Type':_0x427fdc(0x239),'Accept':_0x427fdc(0x20d),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x427fdc(0x21b),'id':0x1,'method':'initialize','params':{'protocolVersion':_0x427fdc(0x24e),'capabilities':{},'clientInfo':{'name':_0x427fdc(0x230),'version':_0x427fdc(0x1fe)}}})});if(!_0x27fc49['ok']){let _0x5afc8e=await _0x27fc49['text']();return Y('CommHub\x20init\x20failed:\x20'+_0x27fc49[_0x427fdc(0x1e5)]+'\x20'+_0x5afc8e['slice'](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x27fc49[_0x427fdc(0x1e5)]};}await _0x27fc49[_0x427fdc(0x209)]();let _0x344832=(await(await fetch(D+_0x427fdc(0x1d9),{'method':'POST','headers':{'Content-Type':_0x427fdc(0x239),'Accept':_0x427fdc(0x20d),...X?{'Authorization':_0x427fdc(0x20f)+X}:{}},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x2,'method':'tools/call','params':{'name':_0x2671fd,'arguments':_0x3b9243}})}))['text']())[_0x427fdc(0x203)]('\x0a')['find'](_0x1ba4b5=>_0x1ba4b5[_0x427fdc(0x211)]('data:\x20'));if(_0x344832){let _0x5f48d5=JSON[_0x427fdc(0x1d3)](_0x344832['slice'](0x6));return _0x5f48d5?.[_0x427fdc(0x252)]?.[_0x427fdc(0x23a)]?.[0x0]?.[_0x427fdc(0x209)]?JSON[_0x427fdc(0x1d3)](_0x5f48d5[_0x427fdc(0x252)][_0x427fdc(0x23a)][0x0][_0x427fdc(0x209)]):_0x5f48d5;}return{'ok':!0x1,'error':_0x427fdc(0x210)};}K[a0_0x407083(0x1fa)](a0_0x5bdfba,async _0x434f43=>{const _0x255265=a0_0x407083;let {name:_0x4b1f4c,arguments:_0x3755a9}=_0x434f43[_0x255265(0x200)];if(_0x4b1f4c===_0x255265(0x24a)){let {task_id:_0x293e40,text:_0x1ecc3d,status:_0x378ab4}=_0x3755a9;if(_0x378ab4==='completed'||_0x378ab4==='failed'||_0x378ab4===_0x255265(0x245)){let _0x40fdbe=_0x378ab4===_0x255265(0x1ce)?'replied':_0x378ab4,_0x3e5295=_0x293e40?k[_0x255265(0x254)](_0x293e40)||_0x255265(0x248):_0x255265(0x248),_0x115cdf=await P(_0x255265(0x201),{'alias':_0x3e5295,'text':_0x1ecc3d,'in_reply_to':_0x293e40||void 0x0,'status':_0x40fdbe,'from_session':Z});if(_0x293e40)k['delete'](_0x293e40);return{'content':[{'type':_0x255265(0x209),'text':JSON['stringify'](_0x115cdf)}]};}let _0x72bd0=await P(_0x255265(0x1f4),{'resume_id':w,'alias':Z,'status':_0x378ab4===_0x255265(0x240)?'blocked':_0x378ab4==='error'?_0x255265(0x1e2):_0x255265(0x224),'task':_0x1ecc3d['slice'](0x0,0xc8),'output':_0x1ecc3d});return{'content':[{'type':_0x255265(0x209),'text':JSON[_0x255265(0x1fc)](_0x72bd0)}]};}if(_0x4b1f4c==='commhub_report_status'){let {status:_0x5f1177,task:_0x4030ca,progress:_0xe8f648}=_0x3755a9,_0x548cc3=await P('report_status',{'resume_id':w,'alias':Z,'status':_0x5f1177,'task':_0x4030ca,'progress':_0xe8f648});return{'content':[{'type':_0x255265(0x209),'text':JSON[_0x255265(0x1fc)](_0x548cc3)}]};}if(_0x4b1f4c==='commhub_send_task'){let {alias:_0x330c53,task:_0x51bdb3,priority:_0x209315}=_0x3755a9,_0x92d5e8=await P(_0x255265(0x237),{'alias':_0x330c53,'task':_0x51bdb3,'priority':_0x209315||_0x255265(0x1f7),'from_session':Z});return{'content':[{'type':_0x255265(0x209),'text':JSON[_0x255265(0x1fc)](_0x92d5e8)}]};}if(_0x4b1f4c===_0x255265(0x20a)){let {alias:_0x36657f,message:_0x3dd2c6}=_0x3755a9,_0x6ae8e=await P('send_message',{'alias':_0x36657f,'message':_0x3dd2c6,'from_session':Z});return{'content':[{'type':_0x255265(0x209),'text':JSON[_0x255265(0x1fc)](_0x6ae8e)}]};}if(_0x4b1f4c===_0x255265(0x1fd)){let _0x422e7b=await P(_0x255265(0x216),{});return{'content':[{'type':'text','text':JSON[_0x255265(0x1fc)](_0x422e7b)}]};}return{'content':[{'type':_0x255265(0x209),'text':JSON[_0x255265(0x1fc)]({'error':_0x255265(0x1d5)})}]};});async function v(){const _0x2a6f27=a0_0x407083;let _0x2e0c75=D+_0x2a6f27(0x218)+encodeURIComponent(Z),_0x57e897={};if(X)_0x57e897[_0x2a6f27(0x21d)]=_0x2a6f27(0x20f)+X;Y(_0x2a6f27(0x21f)+_0x2e0c75);while(!0x0){try{let _0x264463=await fetch(_0x2e0c75,{'headers':_0x57e897});if(!_0x264463['ok']){Y(_0x2a6f27(0x1cd)+_0x264463['status']+'\x20'+_0x264463['statusText']),await h(0x1388);continue;}let _0xbd722e=_0x264463[_0x2a6f27(0x24c)]['getReader'](),_0x39c4f0=new TextDecoder(),_0x7f9586='';while(!0x0){let {done:_0x3906dc,value:_0x109096}=await _0xbd722e[_0x2a6f27(0x1f8)]();if(_0x3906dc)break;_0x7f9586+=_0x39c4f0[_0x2a6f27(0x21e)](_0x109096,{'stream':!0x0});let _0xceca92=_0x7f9586['split']('\x0a\x0a');_0x7f9586=_0xceca92[_0x2a6f27(0x23b)]()||'';for(let _0x20386a of _0xceca92){let _0x1e037c=_0x20386a['split']('\x0a')[_0x2a6f27(0x24d)](_0x3eb5b3=>_0x3eb5b3[_0x2a6f27(0x211)](_0x2a6f27(0x1d0)));if(!_0x1e037c)continue;try{let _0x2afc81=JSON[_0x2a6f27(0x1d3)](_0x1e037c[_0x2a6f27(0x22f)](0x6));await u(_0x2afc81);}catch(_0x65809e){Y(_0x2a6f27(0x204)+_0x65809e);}}}Y('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x14c0c0){Y(_0x2a6f27(0x251)+_0x14c0c0);}await h(0xbb8);}}async function u(_0x3d5aa0){const _0xb0a38f=a0_0x407083;if(_0x3d5aa0['type']==='connected'){Y(_0xb0a38f(0x20c)+Z+'\x22');return;}if(_0x3d5aa0['type']===_0xb0a38f(0x1fb)){if(Y(_0xb0a38f(0x253)+_0x3d5aa0[_0xb0a38f(0x1d8)]+':\x20'+_0x3d5aa0['message'][_0xb0a38f(0x22f)](0x0,0x3c)),await K[_0xb0a38f(0x1ee)]({'method':'notifications/claude/channel','params':{'content':_0x3d5aa0[_0xb0a38f(0x207)],'meta':{'sender':_0x3d5aa0[_0xb0a38f(0x1d8)]||_0xb0a38f(0x248),'sender_id':'commhub','user':_0x3d5aa0['from']||'hub','priority':'normal'}}}),_0x3d5aa0[_0xb0a38f(0x227)])await P(_0xb0a38f(0x1f1),{'alias':Z,'message_id':_0x3d5aa0[_0xb0a38f(0x227)]});return;}if(_0x3d5aa0[_0xb0a38f(0x229)]===_0xb0a38f(0x1e6)||_0x3d5aa0['type']===_0xb0a38f(0x1eb)){Y('←\x20'+_0x3d5aa0[_0xb0a38f(0x229)]+_0xb0a38f(0x1e0)+_0x3d5aa0[_0xb0a38f(0x22c)]+_0xb0a38f(0x206)+(_0x3d5aa0[_0xb0a38f(0x1ff)]||_0xb0a38f(0x1f7)));let _0x32faf0=await P(_0xb0a38f(0x236),{'alias':Z,'limit':0x5});if(_0x32faf0?.['ok']&&_0x32faf0['messages']?.[_0xb0a38f(0x1d2)]>0x0)for(let _0x17a59d of _0x32faf0['messages']){let _0x4d6db0={'sender':_0x17a59d['from_session']||_0xb0a38f(0x248),'sender_id':_0xb0a38f(0x1f3),'user':_0x17a59d[_0xb0a38f(0x217)]||_0xb0a38f(0x248),'task_id':_0x17a59d['id'],'priority':_0x17a59d['priority']||_0xb0a38f(0x1f7)};k[_0xb0a38f(0x242)](_0x17a59d['id'],_0x17a59d[_0xb0a38f(0x217)]||_0xb0a38f(0x248)),await K[_0xb0a38f(0x1ee)]({'method':'notifications/claude/channel','params':{'content':_0x17a59d['content'],'meta':_0x4d6db0}}),Y('→\x20injected\x20task\x20'+_0x17a59d['id'][_0xb0a38f(0x22f)](0x0,0x8)+'\x20from\x20'+_0x17a59d[_0xb0a38f(0x217)]+':\x20'+_0x17a59d['content'][_0xb0a38f(0x22f)](0x0,0x3c)),await P(_0xb0a38f(0x1f1),{'alias':Z,'message_id':_0x17a59d['id']});}}}async function S(){const _0x4f2542=a0_0x407083;let _0xa686ee=new a0_0x1c33b2();await K[_0x4f2542(0x23c)](_0xa686ee),Y(_0x4f2542(0x21a)),Y('starting\x20SSE\x20listener...'),v()[_0x4f2542(0x1f9)](_0x166568=>Y(_0x4f2542(0x246)+_0x166568)),P(_0x4f2542(0x1f4),{'resume_id':w,'alias':Z,'status':_0x4f2542(0x1e4),'server':a0_0x340f05(),'hostname':a0_0x340f05(),'agent':'claude-code','project_dir':process['cwd'](),'tmux_name':f||void 0x0})[_0x4f2542(0x232)](()=>Y('registered\x20as\x20\x22'+Z+_0x4f2542(0x22e)+w['slice'](0x0,0x8)+')'))[_0x4f2542(0x1f9)](_0x295e6e=>Y(_0x4f2542(0x23e)+_0x295e6e)),setInterval(()=>{const _0x409c5c=_0x4f2542;P(_0x409c5c(0x1f4),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x340f05(),'hostname':a0_0x340f05(),'agent':_0x409c5c(0x243),'project_dir':process[_0x409c5c(0x1e7)](),'tmux_name':f||void 0x0})[_0x409c5c(0x1f9)](_0x20bdeb=>Y(_0x409c5c(0x1cb)+_0x20bdeb));},0x2bf20),Y('ready\x20—\x20waiting\x20for\x20events');}S()[a0_0x407083(0x1f9)](_0x5a8a6a=>{const _0x13007a=a0_0x407083;Y(_0x13007a(0x24f)+_0x5a8a6a),process['exit'](0x1);});async function N(){const _0x2c0bb9=a0_0x407083;Y(_0x2c0bb9(0x1d7)),await P('report_status',{'resume_id':w,'alias':Z,'status':_0x2c0bb9(0x1e2),'task':_0x2c0bb9(0x1ef)})[_0x2c0bb9(0x1f9)](()=>{}),process[_0x2c0bb9(0x223)](0x0);}process[a0_0x407083(0x1ed)]['on'](a0_0x407083(0x1e9),()=>N()),process['on'](a0_0x407083(0x1cc),()=>N()),process['on'](a0_0x407083(0x24b),()=>N());
|
|
2
|
+
const a0_0x54652c=a0_0x19dc;(function(_0x40d398,_0x35e5c5){const _0x5766b9=a0_0x19dc,_0x5d2b57=_0x40d398();while(!![]){try{const _0x5476f2=parseInt(_0x5766b9(0x1dc))/0x1+parseInt(_0x5766b9(0x221))/0x2+-parseInt(_0x5766b9(0x1ef))/0x3+parseInt(_0x5766b9(0x20f))/0x4*(-parseInt(_0x5766b9(0x1c8))/0x5)+parseInt(_0x5766b9(0x22a))/0x6+-parseInt(_0x5766b9(0x23b))/0x7*(-parseInt(_0x5766b9(0x1db))/0x8)+-parseInt(_0x5766b9(0x1f0))/0x9;if(_0x5476f2===_0x35e5c5)break;else _0x5d2b57['push'](_0x5d2b57['shift']());}catch(_0x4aee39){_0x5d2b57['push'](_0x5d2b57['shift']());}}}(a0_0x6ab5,0xb032a));import{readFileSync as a0_0xc9d2c0,existsSync as a0_0x1c3fdd}from'fs';import{join as a0_0x3b76ce}from'path';function a0_0x6ab5(){const _0x3655f3=['startsWith','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','hub','SSE\x20stream\x20ended,\x20reconnecting...','type','setRequestHandler','Current\x20task\x20description','SSE\x20connection\x20error:\x20','ready\x20—\x20waiting\x20for\x20events','report_status','slice','0.3.0','failed','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','2.0',']\x20[commhub]\x20','from','send_message','get','http://127.0.0.1:9200','claude-code','\x20CWD=','pop','join','decode','20qUzYFp','message','delete','application/json,\x20text/event-stream','params','catch','working','string','CommHub\x20init\x20failed:\x20','data:\x20','\x20ALIAS=','commhub_report_status',':\x20inbox_count=','commhub_get_all_status','indexOf','new_task','connect','warning:\x20could\x20not\x20register:\x20','Session\x20alias:\x20','82856hhFvZy','1099778skDwqB','replied','write','end','replace','init\x20failed:\x20','tmux\x20display-message\x20-p\x20\x27#S\x27','in_progress','notifications/claude/channel','Target\x20session\x20alias','task','heartbeat\x20failed:\x20','broadcast','alias','priority','ENV:\x20URL=','Progress\x200-100','Task\x20outcome:\x20completed/failed/cancelled\x20for\x20final\x20results,\x20blocked/error/in_progress\x20for\x20status\x20updates','SSE\x20error:\x20','1667406opSWBR','6592347JlluYg','registered\x20as\x20\x22','→\x20injected\x20task\x20','cancelled','session\x20disconnected','application/json','\x20from\x20','trim','set','idle','/mcp','send_task','low','...\x20TMUX=','\x20priority=','read','none','send_reply','MCP\x20stdio\x20connected','/events/','.env','statusText','text','.anet','object','Bearer\x20','no\x20response','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','result','POST','inbox_count','1089908BbojXv','split','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','\x22\x20(','get_all_status','find','new_message','notification','utf-8','messages','Authorization','SSE\x20fatal:\x20','Message\x20content','from_session','message_id','status','error','2025-03-26','1381628uQwfRF','randomUUID','number','SSE\x20connected\x20as\x20\x22','parse','blocked','.claude/channels/commhub','exit','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','2884482FxFaDA','SIGINT','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','content','body','normal','commhub_send_task','parse\x20error:\x20','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','commhub','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','stringify','cwd','commhub_send_message','commhub-channel','stderr','ack_inbox','560HiannT','stdin','Task\x20content','fatal:\x20','completed'];a0_0x6ab5=function(){return _0x3655f3;};return a0_0x6ab5();}import{hostname as a0_0x4504be}from'os';import{execSync as a0_0x29b471}from'child_process';import{Server as a0_0x4082a5}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x394dd5}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x55132f,CallToolRequestSchema as a0_0x57c382}from'@modelcontextprotocol/sdk/types.js';function p(_0x431c4d){const _0x2f3c07=a0_0x19dc;if(!a0_0x1c3fdd(_0x431c4d))return;for(let _0x1f529c of a0_0xc9d2c0(_0x431c4d,_0x2f3c07(0x217))[_0x2f3c07(0x210)]('\x0a')){let _0x4b59e0=_0x1f529c['trim']();if(!_0x4b59e0||_0x4b59e0[_0x2f3c07(0x240)]('#'))continue;let _0x4fb241=_0x4b59e0[_0x2f3c07(0x1d6)]('=');if(_0x4fb241<0x0)continue;let _0x47af4e=_0x4b59e0[_0x2f3c07(0x24a)](0x0,_0x4fb241)[_0x2f3c07(0x1f7)](),_0x4754cc=_0x4b59e0['slice'](_0x4fb241+0x1)[_0x2f3c07(0x1f7)]()[_0x2f3c07(0x1e0)](/^["']|["']$/g,'');if(!process.env[_0x47af4e])process.env[_0x47af4e]=_0x4754cc;}}var C=process.env.HOME||'~',T=a0_0x3b76ce(C,a0_0x54652c(0x227));p(a0_0x3b76ce(T,a0_0x54652c(0x204)));var L=process['cwd']()[a0_0x54652c(0x1e0)](/\//g,'-');p(a0_0x3b76ce(T,L,'.env'));function U(){const _0x5ced20=a0_0x54652c;try{return a0_0x29b471(_0x5ced20(0x1e2),{'encoding':'utf-8','timeout':0x7d0})[_0x5ced20(0x1f7)]();}catch{return'';}}function a0_0x19dc(_0x139df9,_0x44aac4){_0x139df9=_0x139df9-0x1c2;const _0x6ab524=a0_0x6ab5();let _0x19dcd4=_0x6ab524[_0x139df9];return _0x19dcd4;}function c(){const _0x4af0e8=a0_0x54652c;try{let _0x2e023d=a0_0x3b76ce(C,_0x4af0e8(0x207),'config.json');if(a0_0x1c3fdd(_0x2e023d))return JSON[_0x4af0e8(0x225)](a0_0xc9d2c0(_0x2e023d,'utf-8'));}catch{}return{};}var H=c(),D=process.env.COMMHUB_URL||H[a0_0x54652c(0x242)]||a0_0x54652c(0x1c2),f=process.env.COMMHUB_TMUX||U(),Z=process.env.COMMHUB_ALIAS||f||a0_0x4504be(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x54652c(0x222)](),X=process.env.COMMHUB_TOKEN||H['token']||'';function Y(_0x3b3ff3){const _0x5e0188=a0_0x54652c;let _0x252841=new Date()['toTimeString']()[_0x5e0188(0x24a)](0x0,0x8);process[_0x5e0188(0x239)][_0x5e0188(0x1de)]('['+_0x252841+_0x5e0188(0x24f)+_0x3b3ff3+'\x0a');}function h(_0x285be2){return new Promise(_0x16b39f=>setTimeout(_0x16b39f,_0x285be2));}Y(a0_0x54652c(0x1eb)+D+a0_0x54652c(0x1d2)+Z+'\x20RESUME_ID='+w[a0_0x54652c(0x24a)](0x0,0x8)+a0_0x54652c(0x1fd)+(f||a0_0x54652c(0x200))+a0_0x54652c(0x1c4)+process[a0_0x54652c(0x236)]()+'\x20PROJECT_ENV='+L);var k=new Map(),K=new a0_0x4082a5({'name':a0_0x54652c(0x238),'version':a0_0x54652c(0x24b)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x54652c(0x234),'These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.',a0_0x54652c(0x232),a0_0x54652c(0x211),a0_0x54652c(0x1da)+Z][a0_0x54652c(0x1c6)]('\x0a')});K['setRequestHandler'](a0_0x55132f,async()=>({'tools':[{'name':'commhub_reply','description':a0_0x54652c(0x22c),'inputSchema':{'type':'object','properties':{'task_id':{'type':'string','description':a0_0x54652c(0x24d)},'text':{'type':a0_0x54652c(0x1cf),'description':'Reply\x20text\x20/\x20result\x20summary'},'status':{'type':a0_0x54652c(0x1cf),'enum':['completed',a0_0x54652c(0x24c),'cancelled',a0_0x54652c(0x226),a0_0x54652c(0x21f),a0_0x54652c(0x1e3)],'description':a0_0x54652c(0x1ed)}},'required':['text']}},{'name':a0_0x54652c(0x1d3),'description':a0_0x54652c(0x241),'inputSchema':{'type':'object','properties':{'status':{'type':a0_0x54652c(0x1cf),'enum':[a0_0x54652c(0x1ce),a0_0x54652c(0x1f9),a0_0x54652c(0x226),a0_0x54652c(0x21f)]},'task':{'type':a0_0x54652c(0x1cf),'description':a0_0x54652c(0x246)},'progress':{'type':a0_0x54652c(0x223),'description':a0_0x54652c(0x1ec)}},'required':[a0_0x54652c(0x21e)]}},{'name':a0_0x54652c(0x230),'description':a0_0x54652c(0x229),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x54652c(0x1cf),'description':a0_0x54652c(0x1e5)},'task':{'type':a0_0x54652c(0x1cf),'description':a0_0x54652c(0x23d)},'priority':{'type':'string','enum':['high','normal',a0_0x54652c(0x1fc)],'description':'Priority\x20(default:\x20normal)'}},'required':[a0_0x54652c(0x1e9),a0_0x54652c(0x1e6)]}},{'name':a0_0x54652c(0x237),'description':'Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','inputSchema':{'type':a0_0x54652c(0x208),'properties':{'alias':{'type':a0_0x54652c(0x1cf),'description':a0_0x54652c(0x1e5)},'message':{'type':a0_0x54652c(0x1cf),'description':a0_0x54652c(0x21b)}},'required':['alias',a0_0x54652c(0x1c9)]}},{'name':a0_0x54652c(0x1d5),'description':a0_0x54652c(0x20b),'inputSchema':{'type':a0_0x54652c(0x208),'properties':{}}}]}));async function P(_0x3f8326,_0xc187c8){const _0x11f72a=a0_0x54652c;let _0x3c5439=await fetch(D+_0x11f72a(0x1fa),{'method':_0x11f72a(0x20d),'headers':{'Content-Type':'application/json','Accept':_0x11f72a(0x1cb),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x11f72a(0x235)]({'jsonrpc':_0x11f72a(0x24e),'id':0x1,'method':'initialize','params':{'protocolVersion':_0x11f72a(0x220),'capabilities':{},'clientInfo':{'name':_0x11f72a(0x238),'version':_0x11f72a(0x24b)}}})});if(!_0x3c5439['ok']){let _0x231048=await _0x3c5439[_0x11f72a(0x206)]();return Y(_0x11f72a(0x1d0)+_0x3c5439[_0x11f72a(0x21e)]+'\x20'+_0x231048[_0x11f72a(0x24a)](0x0,0x64)),{'ok':!0x1,'error':_0x11f72a(0x1e1)+_0x3c5439[_0x11f72a(0x21e)]};}await _0x3c5439[_0x11f72a(0x206)]();let _0x5078b0=(await(await fetch(D+_0x11f72a(0x1fa),{'method':'POST','headers':{'Content-Type':_0x11f72a(0x1f5),'Accept':_0x11f72a(0x1cb),...X?{'Authorization':_0x11f72a(0x209)+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x11f72a(0x24e),'id':0x2,'method':'tools/call','params':{'name':_0x3f8326,'arguments':_0xc187c8}})}))[_0x11f72a(0x206)]())[_0x11f72a(0x210)]('\x0a')[_0x11f72a(0x214)](_0x1cc01e=>_0x1cc01e[_0x11f72a(0x240)](_0x11f72a(0x1d1)));if(_0x5078b0){let _0x519637=JSON['parse'](_0x5078b0[_0x11f72a(0x24a)](0x6));return _0x519637?.[_0x11f72a(0x20c)]?.[_0x11f72a(0x22d)]?.[0x0]?.['text']?JSON['parse'](_0x519637[_0x11f72a(0x20c)][_0x11f72a(0x22d)][0x0][_0x11f72a(0x206)]):_0x519637;}return{'ok':!0x1,'error':_0x11f72a(0x20a)};}K[a0_0x54652c(0x245)](a0_0x57c382,async _0x4befd1=>{const _0x8aa16d=a0_0x54652c;let {name:_0x37f675,arguments:_0x5ce3ec}=_0x4befd1[_0x8aa16d(0x1cc)];if(_0x37f675==='commhub_reply'){let {task_id:_0x317645,text:_0x56b77d,status:_0x3cd4aa}=_0x5ce3ec;if(_0x3cd4aa===_0x8aa16d(0x23f)||_0x3cd4aa==='failed'||_0x3cd4aa===_0x8aa16d(0x1f3)){let _0x12754a=_0x3cd4aa===_0x8aa16d(0x23f)?_0x8aa16d(0x1dd):_0x3cd4aa,_0x462449=_0x317645?k[_0x8aa16d(0x252)](_0x317645)||_0x8aa16d(0x242):'hub',_0x273d7b=await P(_0x8aa16d(0x201),{'alias':_0x462449,'text':_0x56b77d,'in_reply_to':_0x317645||void 0x0,'status':_0x12754a,'from_session':Z});if(_0x317645)k[_0x8aa16d(0x1ca)](_0x317645);return{'content':[{'type':_0x8aa16d(0x206),'text':JSON[_0x8aa16d(0x235)](_0x273d7b)}]};}let _0x50aec9=await P(_0x8aa16d(0x249),{'resume_id':w,'alias':Z,'status':_0x3cd4aa===_0x8aa16d(0x226)?_0x8aa16d(0x226):_0x3cd4aa==='error'?'error':_0x8aa16d(0x1ce),'task':_0x56b77d[_0x8aa16d(0x24a)](0x0,0xc8),'output':_0x56b77d});return{'content':[{'type':_0x8aa16d(0x206),'text':JSON[_0x8aa16d(0x235)](_0x50aec9)}]};}if(_0x37f675===_0x8aa16d(0x1d3)){let {status:_0x4f7bc9,task:_0x391870,progress:_0xe34149}=_0x5ce3ec,_0x46328e=await P(_0x8aa16d(0x249),{'resume_id':w,'alias':Z,'status':_0x4f7bc9,'task':_0x391870,'progress':_0xe34149});return{'content':[{'type':_0x8aa16d(0x206),'text':JSON[_0x8aa16d(0x235)](_0x46328e)}]};}if(_0x37f675===_0x8aa16d(0x230)){let {alias:_0x2f1bad,task:_0x155086,priority:_0x5a7b25}=_0x5ce3ec,_0x41c442=await P(_0x8aa16d(0x1fb),{'alias':_0x2f1bad,'task':_0x155086,'priority':_0x5a7b25||_0x8aa16d(0x22f),'from_session':Z});return{'content':[{'type':_0x8aa16d(0x206),'text':JSON[_0x8aa16d(0x235)](_0x41c442)}]};}if(_0x37f675===_0x8aa16d(0x237)){let {alias:_0x2e5f97,message:_0x523f32}=_0x5ce3ec,_0x39df39=await P(_0x8aa16d(0x251),{'alias':_0x2e5f97,'message':_0x523f32,'from_session':Z});return{'content':[{'type':_0x8aa16d(0x206),'text':JSON['stringify'](_0x39df39)}]};}if(_0x37f675==='commhub_get_all_status'){let _0x2457de=await P(_0x8aa16d(0x213),{});return{'content':[{'type':_0x8aa16d(0x206),'text':JSON['stringify'](_0x2457de)}]};}return{'content':[{'type':_0x8aa16d(0x206),'text':JSON[_0x8aa16d(0x235)]({'error':'unknown\x20tool'})}]};});async function v(){const _0x130fab=a0_0x54652c;let _0x3f7d00=D+_0x130fab(0x203)+encodeURIComponent(Z),_0x493dff={};if(X)_0x493dff[_0x130fab(0x219)]=_0x130fab(0x209)+X;Y('connecting\x20to\x20'+_0x3f7d00);while(!0x0){try{let _0x48c069=await fetch(_0x3f7d00,{'headers':_0x493dff});if(!_0x48c069['ok']){Y(_0x130fab(0x1ee)+_0x48c069[_0x130fab(0x21e)]+'\x20'+_0x48c069[_0x130fab(0x205)]),await h(0x1388);continue;}let _0xe42628=_0x48c069[_0x130fab(0x22e)]['getReader'](),_0x12636d=new TextDecoder(),_0x5e986b='';while(!0x0){let {done:_0x289637,value:_0x48ed65}=await _0xe42628[_0x130fab(0x1ff)]();if(_0x289637)break;_0x5e986b+=_0x12636d[_0x130fab(0x1c7)](_0x48ed65,{'stream':!0x0});let _0x242ec4=_0x5e986b[_0x130fab(0x210)]('\x0a\x0a');_0x5e986b=_0x242ec4[_0x130fab(0x1c5)]()||'';for(let _0x295314 of _0x242ec4){let _0x4aa562=_0x295314[_0x130fab(0x210)]('\x0a')[_0x130fab(0x214)](_0x4da118=>_0x4da118[_0x130fab(0x240)](_0x130fab(0x1d1)));if(!_0x4aa562)continue;try{let _0xe402e6=JSON[_0x130fab(0x225)](_0x4aa562[_0x130fab(0x24a)](0x6));await u(_0xe402e6);}catch(_0x49fed3){Y(_0x130fab(0x231)+_0x49fed3);}}}Y(_0x130fab(0x243));}catch(_0x5d185f){Y(_0x130fab(0x247)+_0x5d185f);}await h(0xbb8);}}async function u(_0x58b7d6){const _0xd172b8=a0_0x54652c;if(_0x58b7d6[_0xd172b8(0x244)]==='connected'){Y(_0xd172b8(0x224)+Z+'\x22');return;}if(_0x58b7d6[_0xd172b8(0x244)]===_0xd172b8(0x215)){if(Y('←\x20message\x20from\x20'+_0x58b7d6[_0xd172b8(0x250)]+':\x20'+_0x58b7d6['message'][_0xd172b8(0x24a)](0x0,0x3c)),await K[_0xd172b8(0x216)]({'method':'notifications/claude/channel','params':{'content':_0x58b7d6[_0xd172b8(0x1c9)],'meta':{'sender':_0x58b7d6[_0xd172b8(0x250)]||_0xd172b8(0x242),'sender_id':_0xd172b8(0x233),'user':_0x58b7d6[_0xd172b8(0x250)]||_0xd172b8(0x242),'priority':_0xd172b8(0x22f)}}}),_0x58b7d6['message_id'])await P(_0xd172b8(0x23a),{'alias':Z,'message_id':_0x58b7d6[_0xd172b8(0x21d)]});return;}if(_0x58b7d6[_0xd172b8(0x244)]===_0xd172b8(0x1d7)||_0x58b7d6[_0xd172b8(0x244)]===_0xd172b8(0x1e8)){Y('←\x20'+_0x58b7d6[_0xd172b8(0x244)]+_0xd172b8(0x1d4)+_0x58b7d6[_0xd172b8(0x20e)]+_0xd172b8(0x1fe)+(_0x58b7d6[_0xd172b8(0x1ea)]||_0xd172b8(0x22f)));let _0xce8232=await P('get_inbox',{'alias':Z,'limit':0x5});if(_0xce8232?.['ok']&&_0xce8232[_0xd172b8(0x218)]?.['length']>0x0)for(let _0x14c205 of _0xce8232['messages']){let _0x7000af={'sender':_0x14c205['from_session']||'hub','sender_id':_0xd172b8(0x233),'user':_0x14c205[_0xd172b8(0x21c)]||_0xd172b8(0x242),'task_id':_0x14c205['id'],'priority':_0x14c205[_0xd172b8(0x1ea)]||_0xd172b8(0x22f)};k[_0xd172b8(0x1f8)](_0x14c205['id'],_0x14c205[_0xd172b8(0x21c)]||_0xd172b8(0x242)),await K['notification']({'method':_0xd172b8(0x1e4),'params':{'content':_0x14c205[_0xd172b8(0x22d)],'meta':_0x7000af}}),Y(_0xd172b8(0x1f2)+_0x14c205['id'][_0xd172b8(0x24a)](0x0,0x8)+_0xd172b8(0x1f6)+_0x14c205[_0xd172b8(0x21c)]+':\x20'+_0x14c205[_0xd172b8(0x22d)][_0xd172b8(0x24a)](0x0,0x3c)),await P(_0xd172b8(0x23a),{'alias':Z,'message_id':_0x14c205['id']});}}}async function S(){const _0x3e3698=a0_0x54652c;let _0x4bcbac=new a0_0x394dd5();await K[_0x3e3698(0x1d8)](_0x4bcbac),Y(_0x3e3698(0x202)),Y('starting\x20SSE\x20listener...'),v()[_0x3e3698(0x1cd)](_0x765b79=>Y(_0x3e3698(0x21a)+_0x765b79)),P(_0x3e3698(0x249),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x4504be(),'hostname':a0_0x4504be(),'agent':_0x3e3698(0x1c3),'project_dir':process['cwd'](),'tmux_name':f||void 0x0})['then'](()=>Y(_0x3e3698(0x1f1)+Z+_0x3e3698(0x212)+w['slice'](0x0,0x8)+')'))[_0x3e3698(0x1cd)](_0x4a6ac7=>Y(_0x3e3698(0x1d9)+_0x4a6ac7)),setInterval(()=>{const _0x31e3fb=_0x3e3698;P('report_status',{'resume_id':w,'alias':Z,'status':_0x31e3fb(0x1f9),'server':a0_0x4504be(),'hostname':a0_0x4504be(),'agent':_0x31e3fb(0x1c3),'project_dir':process[_0x31e3fb(0x236)](),'tmux_name':f||void 0x0})[_0x31e3fb(0x1cd)](_0xa6a4b3=>Y(_0x31e3fb(0x1e7)+_0xa6a4b3));},0x2bf20),Y(_0x3e3698(0x248));}S()[a0_0x54652c(0x1cd)](_0x3030f7=>{const _0x4d16bb=a0_0x54652c;Y(_0x4d16bb(0x23e)+_0x3030f7),process[_0x4d16bb(0x228)](0x1);});async function N(){const _0x48b661=a0_0x54652c;Y('shutting\x20down,\x20reporting\x20offline...'),await P('report_status',{'resume_id':w,'alias':Z,'status':_0x48b661(0x21f),'task':_0x48b661(0x1f4)})[_0x48b661(0x1cd)](()=>{}),process['exit'](0x0);}process[a0_0x54652c(0x23c)]['on'](a0_0x54652c(0x1df),()=>N()),process['on']('SIGTERM',()=>N()),process['on'](a0_0x54652c(0x22b),()=>N());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "2.0.0-preview.
|
|
3
|
+
"version": "2.0.0-preview.53",
|
|
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",
|