@sleep2agi/agent-network 1.2.0 → 1.3.1
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 +2 -1
package/dist/src/client.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x210e6c=a0_0x10e5;(function(_0x17eb6d,_0x16dedf){const _0x2f62ff=a0_0x10e5,_0x297527=_0x17eb6d();while(!![]){try{const _0x497a1b=parseInt(_0x2f62ff(0x16d))/0x1+-parseInt(_0x2f62ff(0x16e))/0x2+parseInt(_0x2f62ff(0x16a))/0x3+-parseInt(_0x2f62ff(0x161))/0x4+-parseInt(_0x2f62ff(0x162))/0x5*(parseInt(_0x2f62ff(0x166))/0x6)+-parseInt(_0x2f62ff(0x140))/0x7*(parseInt(_0x2f62ff(0x13b))/0x8)+parseInt(_0x2f62ff(0x144))/0x9*(parseInt(_0x2f62ff(0x185))/0xa);if(_0x497a1b===_0x16dedf)break;else _0x297527['push'](_0x297527['shift']());}catch(_0x22a5df){_0x297527['push'](_0x297527['shift']());}}}(a0_0x1546,0x39e22));import{EventEmitter as a0_0xd2f12e}from'events';import{hostname as a0_0x1ec873}from'os';function a0_0x1546(){const _0x5e13b8=['broadcast','toString','parse','status','message','body','log','8zkSJqm','type','tools/call','running','sleep','2747899VOXCwF','replace','offline','text','90LkgEYe','abort','name','connect','emit','reconnectDelay','AbortError','new_message','SSE\x20error:\x20','agent','connected','application/json','connectSSE','messages','heartbeat\x20failed:\x20','SSE\x20connected','now','get_inbox','registered','inbox\x20error:\x20','POST','application/json,\x20text/event-stream','sdk','stringify','disconnected','min','cwd','report_status','idle','525420jpccKk','10RzubIg','getReader','url','split','62922Lfhnlk','Bearer\x20','resumeId','completed','1414137BBqKtU','read','send_task','274301DuEdWP','233988NrZVqE','get_all_status','toTimeString','error','from_session','catch','alias','ack_inbox','getAllStatus','content','SSE\x20reconnecting\x20in\x20','signal','heartbeatInterval','slice','decode','sdk-','send','text/event-stream','heartbeatTimer','token','call','SSE\x20failed:\x20','sseAbort','153290FPbfNt','reply','s...','Authorization'];a0_0x1546=function(){return _0x5e13b8;};return a0_0x1546();}class T extends a0_0xd2f12e{['url'];['alias'];[a0_0x210e6c(0x181)];[a0_0x210e6c(0x14d)];[a0_0x210e6c(0x168)];[a0_0x210e6c(0x17a)];[a0_0x210e6c(0x149)];[a0_0x210e6c(0x180)];['sseAbort'];[a0_0x210e6c(0x13e)]=!0x1;constructor(_0x46ddf4){const _0x55ece6=a0_0x210e6c;super();if(this['url']=_0x46ddf4[_0x55ece6(0x164)][_0x55ece6(0x141)](/\/$/,''),this[_0x55ece6(0x174)]=_0x46ddf4[_0x55ece6(0x174)],this[_0x55ece6(0x181)]=_0x46ddf4[_0x55ece6(0x181)],this[_0x55ece6(0x14d)]=_0x46ddf4[_0x55ece6(0x14d)]||_0x55ece6(0x15a),this[_0x55ece6(0x168)]=_0x55ece6(0x17d)+_0x46ddf4[_0x55ece6(0x174)]+'-'+Date[_0x55ece6(0x154)]()[_0x55ece6(0x135)](0x24),this['heartbeatInterval']=_0x46ddf4[_0x55ece6(0x17a)]??0x2bf20,this[_0x55ece6(0x149)]=_0x46ddf4[_0x55ece6(0x149)]??0xbb8,_0x46ddf4['autoConnect']!==!0x1)this[_0x55ece6(0x147)]();}[a0_0x210e6c(0x13a)](_0x1bbee6){const _0x4404ee=a0_0x210e6c;console[_0x4404ee(0x13a)]('['+new Date()[_0x4404ee(0x170)]()[_0x4404ee(0x17b)](0x0,0x8)+']\x20[commhub:'+this[_0x4404ee(0x174)]+']\x20'+_0x1bbee6);}async[a0_0x210e6c(0x182)](_0x43a8e7,_0x1f5933){const _0x26311d=a0_0x210e6c;let _0x467e89={'Content-Type':_0x26311d(0x14f),'Accept':_0x26311d(0x159)};if(this[_0x26311d(0x181)])_0x467e89[_0x26311d(0x188)]=_0x26311d(0x167)+this[_0x26311d(0x181)];let _0x3cb1c0=await(await fetch(this[_0x26311d(0x164)]+'/mcp',{'method':_0x26311d(0x158),'headers':_0x467e89,'body':JSON[_0x26311d(0x15b)]({'jsonrpc':'2.0','id':Date[_0x26311d(0x154)](),'method':_0x26311d(0x13d),'params':{'name':_0x43a8e7,'arguments':_0x1f5933}})}))[_0x26311d(0x143)](),_0x320254=_0x3cb1c0['match'](/data: (.+)/),_0x27126c=_0x320254?JSON[_0x26311d(0x136)](_0x320254[0x1]):JSON['parse'](_0x3cb1c0),_0xcec263=_0x27126c?.['result']?.[_0x26311d(0x177)]?.[0x0]?.[_0x26311d(0x143)];return _0xcec263?JSON[_0x26311d(0x136)](_0xcec263):_0x27126c;}async['connect'](){const _0x219d8e=a0_0x210e6c;if(this[_0x219d8e(0x13e)])return;this[_0x219d8e(0x13e)]=!0x0,await this['status']('idle'),this['log'](_0x219d8e(0x156)),this['heartbeatTimer']=setInterval(()=>{const _0x31d2cb=_0x219d8e;this[_0x31d2cb(0x137)](_0x31d2cb(0x160))[_0x31d2cb(0x173)](_0x25874b=>this[_0x31d2cb(0x13a)](_0x31d2cb(0x152)+_0x25874b[_0x31d2cb(0x138)]));},this[_0x219d8e(0x17a)]),this[_0x219d8e(0x150)]();}async['disconnect'](){const _0x123355=a0_0x210e6c;if(this[_0x123355(0x13e)]=!0x1,this[_0x123355(0x184)]?.[_0x123355(0x145)](),this[_0x123355(0x180)])clearInterval(this[_0x123355(0x180)]);await this[_0x123355(0x137)](_0x123355(0x142))[_0x123355(0x173)](()=>{}),this['log'](_0x123355(0x15c));}async[a0_0x210e6c(0x17e)](_0x25c897,_0x2f5c4c,_0x103904='normal'){const _0x9117a4=a0_0x210e6c;return this[_0x9117a4(0x182)](_0x9117a4(0x16c),{'alias':_0x25c897,'task':_0x2f5c4c,'priority':_0x103904,'from_session':this['alias']});}async[a0_0x210e6c(0x138)](_0x5b8487,_0x1345e9){const _0xe03ada=a0_0x210e6c;return this[_0xe03ada(0x182)]('send_message',{'alias':_0x5b8487,'message':_0x1345e9,'from_session':this[_0xe03ada(0x174)]});}async[a0_0x210e6c(0x186)](_0x3e0c2c,_0x3ce36d,_0x3fa863=a0_0x210e6c(0x169)){const _0x10dce8=a0_0x210e6c;return this[_0x10dce8(0x182)](_0x10dce8(0x186),{'task_id':_0x3e0c2c,'text':_0x3ce36d,'status':_0x3fa863});}async[a0_0x210e6c(0x137)](_0x3fe5aa,_0x544ad0){const _0x3930a4=a0_0x210e6c;return this[_0x3930a4(0x182)](_0x3930a4(0x15f),{'resume_id':this[_0x3930a4(0x168)],'alias':this[_0x3930a4(0x174)],'status':_0x3fe5aa,'server':a0_0x1ec873(),'hostname':a0_0x1ec873(),'agent':this['agent'],'project_dir':process[_0x3930a4(0x15e)](),..._0x544ad0});}async[a0_0x210e6c(0x176)](){const _0x416be8=a0_0x210e6c;return this[_0x416be8(0x182)](_0x416be8(0x16f),{});}async[a0_0x210e6c(0x134)](_0x254d5b,_0xbd6b31){const _0x4b1a5e=a0_0x210e6c;return this[_0x4b1a5e(0x182)](_0x4b1a5e(0x134),{'message':_0x254d5b,'filter_server':_0xbd6b31?.['server'],'filter_status':_0xbd6b31?.[_0x4b1a5e(0x137)]});}async[a0_0x210e6c(0x150)](){const _0x29916e=a0_0x210e6c;let _0x47b626=encodeURIComponent(this['alias']),_0x3e2e89=this[_0x29916e(0x164)]+'/events/'+_0x47b626,_0x44167f=this[_0x29916e(0x149)];while(this['running']){try{this[_0x29916e(0x184)]=new AbortController();let _0x1b46da={'Accept':_0x29916e(0x17f)};if(this['token'])_0x1b46da[_0x29916e(0x188)]='Bearer\x20'+this[_0x29916e(0x181)];let _0x9365bb=await fetch(_0x3e2e89,{'headers':_0x1b46da,'signal':this[_0x29916e(0x184)][_0x29916e(0x179)]});if(!_0x9365bb['ok']||!_0x9365bb[_0x29916e(0x139)]){this[_0x29916e(0x13a)](_0x29916e(0x183)+_0x9365bb[_0x29916e(0x137)]),await this[_0x29916e(0x13f)](_0x44167f),_0x44167f=Math[_0x29916e(0x15d)](_0x44167f*1.5,0xea60);continue;}_0x44167f=this['reconnectDelay'];let _0x468c21=_0x9365bb[_0x29916e(0x139)][_0x29916e(0x163)](),_0x31698d=new TextDecoder(),_0x232298='';while(this[_0x29916e(0x13e)]){let {done:_0x4af6f3,value:_0x49eff5}=await _0x468c21[_0x29916e(0x16b)]();if(_0x4af6f3)break;_0x232298+=_0x31698d[_0x29916e(0x17c)](_0x49eff5,{'stream':!0x0});let _0x34bdbc=_0x232298[_0x29916e(0x165)]('\x0a');_0x232298=_0x34bdbc['pop']()||'';for(let _0x4c6999 of _0x34bdbc){if(!_0x4c6999['startsWith']('data:\x20'))continue;try{let _0x370abf=JSON[_0x29916e(0x136)](_0x4c6999['slice'](0x6));if(_0x370abf[_0x29916e(0x13c)]===_0x29916e(0x14e)){this['log'](_0x29916e(0x153)),this[_0x29916e(0x148)](_0x29916e(0x14e));continue;}if(_0x370abf[_0x29916e(0x13c)]==='new_task'||_0x370abf[_0x29916e(0x13c)]===_0x29916e(0x14b)||_0x370abf[_0x29916e(0x13c)]==='broadcast')await this['processInbox']();}catch{}}}}catch(_0x329bbd){if(_0x329bbd[_0x29916e(0x146)]===_0x29916e(0x14a))break;this['emit'](_0x29916e(0x171),_0x329bbd),this[_0x29916e(0x13a)](_0x29916e(0x14c)+_0x329bbd['message']);}if(this[_0x29916e(0x13e)])this[_0x29916e(0x148)](_0x29916e(0x15c)),this['log'](_0x29916e(0x178)+_0x44167f/0x3e8+_0x29916e(0x187)),await this[_0x29916e(0x13f)](_0x44167f),_0x44167f=Math[_0x29916e(0x15d)](_0x44167f*1.5,0xea60);}}async['processInbox'](){const _0x499b27=a0_0x210e6c;try{let _0x4d641e=(await this[_0x499b27(0x182)](_0x499b27(0x155),{'alias':this['alias'],'limit':0xa}))?.[_0x499b27(0x151)]||[];for(let _0x432025 of _0x4d641e)await this[_0x499b27(0x182)](_0x499b27(0x175),{'alias':this[_0x499b27(0x174)],'message_id':_0x432025['id']}),this[_0x499b27(0x13a)]('←\x20'+_0x432025[_0x499b27(0x172)]+':\x20'+_0x432025[_0x499b27(0x177)][_0x499b27(0x17b)](0x0,0x3c)),this[_0x499b27(0x148)]('task',_0x432025),this[_0x499b27(0x148)](_0x499b27(0x138),_0x432025);}catch(_0x4d308a){this[_0x499b27(0x13a)](_0x499b27(0x157)+_0x4d308a[_0x499b27(0x138)]);}}[a0_0x210e6c(0x13f)](_0x3c14cb){return new Promise(_0x5dc6c4=>setTimeout(_0x5dc6c4,_0x3c14cb));}}var $=T;function a0_0x10e5(_0x25dacb,_0x55f91d){_0x25dacb=_0x25dacb-0x134;const _0x15462b=a0_0x1546();let _0x10e58d=_0x15462b[_0x25dacb];return _0x10e58d;}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_0x2b9b3d=a0_0x1bf4;(function(_0x1a57c0,_0x1eceb2){const _0x58f1cd=a0_0x1bf4,_0x12b7f1=_0x1a57c0();while(!![]){try{const _0x566dd4=-parseInt(_0x58f1cd(0x10a))/0x1*(parseInt(_0x58f1cd(0x144))/0x2)+parseInt(_0x58f1cd(0x12c))/0x3*(-parseInt(_0x58f1cd(0x142))/0x4)+parseInt(_0x58f1cd(0x154))/0x5+parseInt(_0x58f1cd(0x120))/0x6+-parseInt(_0x58f1cd(0x15d))/0x7*(parseInt(_0x58f1cd(0x126))/0x8)+parseInt(_0x58f1cd(0x108))/0x9*(-parseInt(_0x58f1cd(0x13f))/0xa)+parseInt(_0x58f1cd(0x15b))/0xb;if(_0x566dd4===_0x1eceb2)break;else _0x12b7f1['push'](_0x12b7f1['shift']());}catch(_0x36e2df){_0x12b7f1['push'](_0x12b7f1['shift']());}}}(a0_0x3646,0xccce1));import{readFileSync as a0_0x12a839,existsSync as a0_0x5c3398}from'fs';import{join as a0_0x52fce1}from'path';import{hostname as a0_0x1fcddb}from'os';import{execSync as a0_0x2ff0d7}from'child_process';import{Server as a0_0x5c0769}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x590708}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x45ba50,CallToolRequestSchema as a0_0x1369c1}from'@modelcontextprotocol/sdk/types.js';function h(_0x393fe3){const _0x5168d8=a0_0x1bf4;if(!a0_0x5c3398(_0x393fe3))return;for(let _0x1015d5 of a0_0x12a839(_0x393fe3,'utf-8')[_0x5168d8(0x16e)]('\x0a')){let _0x4b41dc=_0x1015d5[_0x5168d8(0x10f)]();if(!_0x4b41dc||_0x4b41dc[_0x5168d8(0x156)]('#'))continue;let _0x525b41=_0x4b41dc[_0x5168d8(0x15c)]('=');if(_0x525b41<0x0)continue;let _0x312cdb=_0x4b41dc[_0x5168d8(0x162)](0x0,_0x525b41)['trim'](),_0x2f055e=_0x4b41dc[_0x5168d8(0x162)](_0x525b41+0x1)[_0x5168d8(0x10f)]()[_0x5168d8(0x11a)](/^["']|["']$/g,'');if(!process.env[_0x312cdb])process.env[_0x312cdb]=_0x2f055e;}}var R=process.env.HOME||'~',p=a0_0x52fce1(R,a0_0x2b9b3d(0x152));h(a0_0x52fce1(p,a0_0x2b9b3d(0x10b)));var C=process['cwd']()[a0_0x2b9b3d(0x11a)](/\//g,'-');h(a0_0x52fce1(p,C,a0_0x2b9b3d(0x10b)));function _(){const _0xc54e42=a0_0x2b9b3d;try{return a0_0x2ff0d7('tmux\x20display-message\x20-p\x20\x27#S\x27',{'encoding':_0xc54e42(0x168),'timeout':0x7d0})['trim']();}catch{return'';}}function E(){const _0x4a52f1=a0_0x2b9b3d;try{let _0x2ec6ee=a0_0x52fce1(R,_0x4a52f1(0xe6),_0x4a52f1(0x122));if(a0_0x5c3398(_0x2ec6ee))return JSON[_0x4a52f1(0x14f)](a0_0x12a839(_0x2ec6ee,_0x4a52f1(0x168)));}catch{}return{};}var T=E(),k=process.env.COMMHUB_URL||T['hub']||a0_0x2b9b3d(0x153),q=process.env.COMMHUB_TMUX||_(),Z=process.env.COMMHUB_ALIAS||q||a0_0x1fcddb(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto['randomUUID'](),X=process.env.COMMHUB_TOKEN||T[a0_0x2b9b3d(0x14d)]||'';function V(_0x422215){const _0x10f246=a0_0x2b9b3d;let _0x50f45c=new Date()[_0x10f246(0xe7)]()['slice'](0x0,0x8);process['stderr'][_0x10f246(0x124)]('['+_0x50f45c+_0x10f246(0x13b)+_0x422215+'\x0a');}function O(_0x4d8701){return new Promise(_0x345750=>setTimeout(_0x345750,_0x4d8701));}V('ENV:\x20URL='+k+a0_0x2b9b3d(0x135)+Z+'\x20RESUME_ID='+w[a0_0x2b9b3d(0x162)](0x0,0x8)+a0_0x2b9b3d(0x139)+(q||a0_0x2b9b3d(0x150))+'\x20CWD='+process[a0_0x2b9b3d(0x159)]()+'\x20PROJECT_ENV='+C);var K=new a0_0x5c0769({'name':'commhub-channel','version':'0.3.0'},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x2b9b3d(0x136),a0_0x2b9b3d(0x157),'Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','Session\x20alias:\x20'+Z][a0_0x2b9b3d(0xec)]('\x0a')});function a0_0x3646(){const _0x369f80=['CommHub\x20init\x20failed:\x20','config.json','from','write','parse\x20error:\x20','4105000fSNFwD','Current\x20task\x20description','SSE\x20connection\x20error:\x20','Task\x20status','notifications/claude/channel','completed','9468ZbOFSX','object','task','0.3.0','shutting\x20down,\x20reporting\x20offline...','read','body','commhub','commhub-channel','\x20ALIAS=','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','\x22\x20(','broadcast','...\x20TMUX=','Reply\x20text\x20/\x20result\x20summary',']\x20[commhub]\x20','params','init\x20failed:\x20','in_progress','13361770IBaTVL','send_message','←\x20message\x20from\x20','740FgagRF','message','8EouULk','get_all_status','error','text','from_session','blocked','message_id','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','/mcp','token','starting\x20SSE\x20listener...','parse','none','result','.claude/channels/commhub','http://127.0.0.1:9200','7688170QivzVY','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','startsWith','These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','decode','cwd','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','21862236JAEbvq','indexOf','14puWDyF','application/json','tools/call','setRequestHandler','get_inbox','slice','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','stringify','commhub_reply','statusText','registered\x20as\x20\x22','utf-8','status','then','Target\x20session\x20alias','stdin','Authorization','split','Task\x20content','connecting\x20to\x20','ack_inbox','.anet','toTimeString','send_task','warning:\x20could\x20not\x20register:\x20','idle','data:\x20','join','find','2.0','inbox_count','high','heartbeat\x20failed:\x20','getReader','POST','alias','commhub_get_all_status','type','Message\x20content','unknown\x20tool','SSE\x20error:\x20','Progress\x200-100','catch','new_task','\x20priority=','commhub_report_status','priority','commhub_send_task','working','\x20from\x20','report_status','/events/','application/json,\x20text/event-stream','session\x20disconnected','MCP\x20stdio\x20connected','9OGNMUc','exit','172673VhwvTq','.env','SSE\x20connected\x20as\x20\x22','initialize','Bearer\x20','trim','string','content','ready\x20—\x20waiting\x20for\x20events','commhub_send_message','connect','low','2025-03-26','no\x20response','end','messages','replace','notification','new_message','hub','normal','claude-code','5704500UtzoJO'];a0_0x3646=function(){return _0x369f80;};return a0_0x3646();}K[a0_0x2b9b3d(0x160)](a0_0x45ba50,async()=>({'tools':[{'name':a0_0x2b9b3d(0x165),'description':'Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','inputSchema':{'type':'object','properties':{'task_id':{'type':a0_0x2b9b3d(0x110),'description':a0_0x2b9b3d(0x15a)},'text':{'type':a0_0x2b9b3d(0x110),'description':a0_0x2b9b3d(0x13a)},'status':{'type':a0_0x2b9b3d(0x110),'enum':[a0_0x2b9b3d(0x12b),'blocked','error',a0_0x2b9b3d(0x13e)],'description':a0_0x2b9b3d(0x129)}},'required':['text']}},{'name':a0_0x2b9b3d(0xfe),'description':a0_0x2b9b3d(0x163),'inputSchema':{'type':a0_0x2b9b3d(0x12d),'properties':{'status':{'type':'string','enum':[a0_0x2b9b3d(0x101),a0_0x2b9b3d(0xea),a0_0x2b9b3d(0x149),'error']},'task':{'type':a0_0x2b9b3d(0x110),'description':a0_0x2b9b3d(0x127)},'progress':{'type':'number','description':a0_0x2b9b3d(0xfa)}},'required':[a0_0x2b9b3d(0x169)]}},{'name':a0_0x2b9b3d(0x100),'description':'Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','inputSchema':{'type':a0_0x2b9b3d(0x12d),'properties':{'alias':{'type':'string','description':a0_0x2b9b3d(0x16b)},'task':{'type':a0_0x2b9b3d(0x110),'description':a0_0x2b9b3d(0xe3)},'priority':{'type':a0_0x2b9b3d(0x110),'enum':[a0_0x2b9b3d(0xf0),'normal',a0_0x2b9b3d(0x115)],'description':'Priority\x20(default:\x20normal)'}},'required':['alias',a0_0x2b9b3d(0x12e)]}},{'name':a0_0x2b9b3d(0x113),'description':a0_0x2b9b3d(0x14b),'inputSchema':{'type':a0_0x2b9b3d(0x12d),'properties':{'alias':{'type':a0_0x2b9b3d(0x110),'description':'Target\x20session\x20alias'},'message':{'type':'string','description':a0_0x2b9b3d(0xf7)}},'required':[a0_0x2b9b3d(0xf4),a0_0x2b9b3d(0x143)]}},{'name':a0_0x2b9b3d(0xf5),'description':a0_0x2b9b3d(0x155),'inputSchema':{'type':a0_0x2b9b3d(0x12d),'properties':{}}}]}));function a0_0x1bf4(_0x1139c0,_0x2760b1){_0x1139c0=_0x1139c0-0xe3;const _0x36467d=a0_0x3646();let _0x1bf4e7=_0x36467d[_0x1139c0];return _0x1bf4e7;}async function P(_0x19cd25,_0x76bea9){const _0xcd5b22=a0_0x2b9b3d;let _0x5f57cd=await fetch(k+_0xcd5b22(0x14c),{'method':_0xcd5b22(0xf3),'headers':{'Content-Type':_0xcd5b22(0x15e),'Accept':'application/json,\x20text/event-stream',...X?{'Authorization':_0xcd5b22(0x10e)+X}:{}},'body':JSON[_0xcd5b22(0x164)]({'jsonrpc':_0xcd5b22(0xee),'id':0x1,'method':_0xcd5b22(0x10d),'params':{'protocolVersion':_0xcd5b22(0x116),'capabilities':{},'clientInfo':{'name':_0xcd5b22(0x134),'version':_0xcd5b22(0x12f)}}})});if(!_0x5f57cd['ok']){let _0x5bf6df=await _0x5f57cd[_0xcd5b22(0x147)]();return V(_0xcd5b22(0x121)+_0x5f57cd[_0xcd5b22(0x169)]+'\x20'+_0x5bf6df[_0xcd5b22(0x162)](0x0,0x64)),{'ok':!0x1,'error':_0xcd5b22(0x13d)+_0x5f57cd[_0xcd5b22(0x169)]};}await _0x5f57cd[_0xcd5b22(0x147)]();let _0x3e79bd=(await(await fetch(k+'/mcp',{'method':_0xcd5b22(0xf3),'headers':{'Content-Type':_0xcd5b22(0x15e),'Accept':_0xcd5b22(0x105),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0xcd5b22(0x164)]({'jsonrpc':_0xcd5b22(0xee),'id':0x2,'method':_0xcd5b22(0x15f),'params':{'name':_0x19cd25,'arguments':_0x76bea9}})}))['text']())[_0xcd5b22(0x16e)]('\x0a')[_0xcd5b22(0xed)](_0x57b831=>_0x57b831['startsWith'](_0xcd5b22(0xeb)));if(_0x3e79bd){let _0x2c3ded=JSON['parse'](_0x3e79bd['slice'](0x6));return _0x2c3ded?.['result']?.[_0xcd5b22(0x111)]?.[0x0]?.[_0xcd5b22(0x147)]?JSON[_0xcd5b22(0x14f)](_0x2c3ded[_0xcd5b22(0x151)]['content'][0x0]['text']):_0x2c3ded;}return{'ok':!0x1,'error':_0xcd5b22(0x117)};}K[a0_0x2b9b3d(0x160)](a0_0x1369c1,async _0x464e9b=>{const _0x5ca19b=a0_0x2b9b3d;let {name:_0xa72498,arguments:_0x49a128}=_0x464e9b[_0x5ca19b(0x13c)];if(_0xa72498==='commhub_reply'){let {task_id:_0x93eb0a,text:_0x974bda,status:_0xc3415}=_0x49a128;if(_0xc3415==='completed'){let _0x1425bb=await P('report_completion',{'alias':Z,'task':_0x93eb0a||'task','result':_0x974bda});return{'content':[{'type':'text','text':JSON['stringify'](_0x1425bb)}]};}let _0x10ea67=await P('report_status',{'resume_id':w,'alias':Z,'status':_0xc3415==='blocked'?_0x5ca19b(0x149):_0xc3415===_0x5ca19b(0x146)?_0x5ca19b(0x146):'working','task':_0x974bda[_0x5ca19b(0x162)](0x0,0xc8),'output':_0x974bda});return{'content':[{'type':_0x5ca19b(0x147),'text':JSON['stringify'](_0x10ea67)}]};}if(_0xa72498==='commhub_report_status'){let {status:_0x4b38ec,task:_0x3258ca,progress:_0x6d499e}=_0x49a128,_0x295f09=await P(_0x5ca19b(0x103),{'resume_id':w,'alias':Z,'status':_0x4b38ec,'task':_0x3258ca,'progress':_0x6d499e});return{'content':[{'type':_0x5ca19b(0x147),'text':JSON['stringify'](_0x295f09)}]};}if(_0xa72498===_0x5ca19b(0x100)){let {alias:_0x4fd2c6,task:_0xe8315c,priority:_0x2a0b1e}=_0x49a128,_0x2f1be1=await P(_0x5ca19b(0xe8),{'alias':_0x4fd2c6,'task':_0xe8315c,'priority':_0x2a0b1e||_0x5ca19b(0x11e),'from_session':Z});return{'content':[{'type':_0x5ca19b(0x147),'text':JSON[_0x5ca19b(0x164)](_0x2f1be1)}]};}if(_0xa72498===_0x5ca19b(0x113)){let {alias:_0x153b9e,message:_0x21b73e}=_0x49a128,_0x4673ca=await P(_0x5ca19b(0x140),{'alias':_0x153b9e,'message':_0x21b73e,'from_session':Z});return{'content':[{'type':'text','text':JSON[_0x5ca19b(0x164)](_0x4673ca)}]};}if(_0xa72498===_0x5ca19b(0xf5)){let _0x5e942e=await P(_0x5ca19b(0x145),{});return{'content':[{'type':_0x5ca19b(0x147),'text':JSON[_0x5ca19b(0x164)](_0x5e942e)}]};}return{'content':[{'type':'text','text':JSON[_0x5ca19b(0x164)]({'error':_0x5ca19b(0xf8)})}]};});async function c(){const _0x193af9=a0_0x2b9b3d;let _0x545cd7=k+_0x193af9(0x104)+encodeURIComponent(Z),_0x5f0a9d={};if(X)_0x5f0a9d[_0x193af9(0x16d)]=_0x193af9(0x10e)+X;V(_0x193af9(0xe4)+_0x545cd7);while(!0x0){try{let _0x310a06=await fetch(_0x545cd7,{'headers':_0x5f0a9d});if(!_0x310a06['ok']){V(_0x193af9(0xf9)+_0x310a06[_0x193af9(0x169)]+'\x20'+_0x310a06[_0x193af9(0x166)]),await O(0x1388);continue;}let _0x46d95e=_0x310a06[_0x193af9(0x132)][_0x193af9(0xf2)](),_0x5871ea=new TextDecoder(),_0x380a1f='';while(!0x0){let {done:_0x543f87,value:_0x22413f}=await _0x46d95e[_0x193af9(0x131)]();if(_0x543f87)break;_0x380a1f+=_0x5871ea[_0x193af9(0x158)](_0x22413f,{'stream':!0x0});let _0x482845=_0x380a1f[_0x193af9(0x16e)]('\x0a\x0a');_0x380a1f=_0x482845['pop']()||'';for(let _0x331dd2 of _0x482845){let _0x20a3b=_0x331dd2[_0x193af9(0x16e)]('\x0a')[_0x193af9(0xed)](_0x2b2f24=>_0x2b2f24[_0x193af9(0x156)]('data:\x20'));if(!_0x20a3b)continue;try{let _0x1a6837=JSON[_0x193af9(0x14f)](_0x20a3b[_0x193af9(0x162)](0x6));await v(_0x1a6837);}catch(_0x5dea5d){V(_0x193af9(0x125)+_0x5dea5d);}}}V('SSE\x20stream\x20ended,\x20reconnecting...');}catch(_0x488ab1){V(_0x193af9(0x128)+_0x488ab1);}await O(0xbb8);}}async function v(_0x1497e7){const _0x2cb4fb=a0_0x2b9b3d;if(_0x1497e7[_0x2cb4fb(0xf6)]==='connected'){V(_0x2cb4fb(0x10c)+Z+'\x22');return;}if(_0x1497e7[_0x2cb4fb(0xf6)]===_0x2cb4fb(0x11c)){if(V(_0x2cb4fb(0x141)+_0x1497e7[_0x2cb4fb(0x123)]+':\x20'+_0x1497e7[_0x2cb4fb(0x143)][_0x2cb4fb(0x162)](0x0,0x3c)),await K[_0x2cb4fb(0x11b)]({'method':_0x2cb4fb(0x12a),'params':{'content':_0x1497e7['message'],'meta':{'sender':_0x1497e7[_0x2cb4fb(0x123)]||_0x2cb4fb(0x11d),'sender_id':'commhub','user':_0x1497e7[_0x2cb4fb(0x123)]||_0x2cb4fb(0x11d),'priority':_0x2cb4fb(0x11e)}}}),_0x1497e7[_0x2cb4fb(0x14a)])await P(_0x2cb4fb(0xe5),{'alias':Z,'message_id':_0x1497e7[_0x2cb4fb(0x14a)]});return;}if(_0x1497e7[_0x2cb4fb(0xf6)]===_0x2cb4fb(0xfc)||_0x1497e7[_0x2cb4fb(0xf6)]===_0x2cb4fb(0x138)){V('←\x20'+_0x1497e7[_0x2cb4fb(0xf6)]+':\x20inbox_count='+_0x1497e7[_0x2cb4fb(0xef)]+_0x2cb4fb(0xfd)+(_0x1497e7[_0x2cb4fb(0xff)]||_0x2cb4fb(0x11e)));let _0x15927a=await P(_0x2cb4fb(0x161),{'alias':Z,'limit':0x5});if(_0x15927a?.['ok']&&_0x15927a[_0x2cb4fb(0x119)]?.['length']>0x0)for(let _0x117405 of _0x15927a[_0x2cb4fb(0x119)]){let _0x4a8693={'sender':_0x117405[_0x2cb4fb(0x148)]||_0x2cb4fb(0x11d),'sender_id':_0x2cb4fb(0x133),'user':_0x117405['from_session']||_0x2cb4fb(0x11d),'task_id':_0x117405['id'],'priority':_0x117405[_0x2cb4fb(0xff)]||_0x2cb4fb(0x11e)};await K[_0x2cb4fb(0x11b)]({'method':'notifications/claude/channel','params':{'content':_0x117405[_0x2cb4fb(0x111)],'meta':_0x4a8693}}),V('→\x20injected\x20task\x20'+_0x117405['id'][_0x2cb4fb(0x162)](0x0,0x8)+_0x2cb4fb(0x102)+_0x117405[_0x2cb4fb(0x148)]+':\x20'+_0x117405[_0x2cb4fb(0x111)][_0x2cb4fb(0x162)](0x0,0x3c)),await P(_0x2cb4fb(0xe5),{'alias':Z,'message_id':_0x117405['id']});}}}async function u(){const _0xf8936f=a0_0x2b9b3d;let _0x523e3d=new a0_0x590708();await K[_0xf8936f(0x114)](_0x523e3d),V(_0xf8936f(0x107)),V(_0xf8936f(0x14e)),c()[_0xf8936f(0xfb)](_0x5eefea=>V('SSE\x20fatal:\x20'+_0x5eefea)),P(_0xf8936f(0x103),{'resume_id':w,'alias':Z,'status':_0xf8936f(0xea),'server':a0_0x1fcddb(),'hostname':a0_0x1fcddb(),'agent':_0xf8936f(0x11f),'project_dir':process[_0xf8936f(0x159)](),'tmux_name':q||void 0x0})[_0xf8936f(0x16a)](()=>V(_0xf8936f(0x167)+Z+_0xf8936f(0x137)+w[_0xf8936f(0x162)](0x0,0x8)+')'))[_0xf8936f(0xfb)](_0x2d1e74=>V(_0xf8936f(0xe9)+_0x2d1e74)),setInterval(()=>{const _0x194879=_0xf8936f;P(_0x194879(0x103),{'resume_id':w,'alias':Z,'status':_0x194879(0xea),'server':a0_0x1fcddb(),'hostname':a0_0x1fcddb(),'agent':_0x194879(0x11f),'project_dir':process[_0x194879(0x159)](),'tmux_name':q||void 0x0})[_0x194879(0xfb)](_0x242ab6=>V(_0x194879(0xf1)+_0x242ab6));},0x2bf20),V(_0xf8936f(0x112));}u()[a0_0x2b9b3d(0xfb)](_0x369bfe=>{const _0x3ef76d=a0_0x2b9b3d;V('fatal:\x20'+_0x369bfe),process[_0x3ef76d(0x109)](0x1);});async function f(){const _0x18fdf1=a0_0x2b9b3d;V(_0x18fdf1(0x130)),await P(_0x18fdf1(0x103),{'resume_id':w,'alias':Z,'status':_0x18fdf1(0x146),'task':_0x18fdf1(0x106)})[_0x18fdf1(0xfb)](()=>{}),process[_0x18fdf1(0x109)](0x0);}process[a0_0x2b9b3d(0x16c)]['on'](a0_0x2b9b3d(0x118),()=>f()),process['on']('SIGTERM',()=>f()),process['on']('SIGINT',()=>f());
|
|
2
|
+
const a0_0x7bd10b=a0_0x3ee5;(function(_0x2e8592,_0x293fc5){const _0x1c784c=a0_0x3ee5,_0x4f98e9=_0x2e8592();while(!![]){try{const _0x1abba0=parseInt(_0x1c784c(0xd0))/0x1+parseInt(_0x1c784c(0xcf))/0x2*(-parseInt(_0x1c784c(0xf9))/0x3)+-parseInt(_0x1c784c(0xa7))/0x4*(-parseInt(_0x1c784c(0xc4))/0x5)+-parseInt(_0x1c784c(0x100))/0x6*(-parseInt(_0x1c784c(0xf5))/0x7)+parseInt(_0x1c784c(0xdc))/0x8*(-parseInt(_0x1c784c(0xb8))/0x9)+-parseInt(_0x1c784c(0xb5))/0xa*(parseInt(_0x1c784c(0xe5))/0xb)+parseInt(_0x1c784c(0x10e))/0xc;if(_0x1abba0===_0x293fc5)break;else _0x4f98e9['push'](_0x4f98e9['shift']());}catch(_0xe91d71){_0x4f98e9['push'](_0x4f98e9['shift']());}}}(a0_0x4377,0xab46d));import{readFileSync as a0_0x299b2d,existsSync as a0_0x148ace}from'fs';import{join as a0_0x3c1be8}from'path';import{hostname as a0_0x3437a5}from'os';import{execSync as a0_0x2ac74b}from'child_process';import{Server as a0_0x308cee}from'@modelcontextprotocol/sdk/server/index.js';import{StdioServerTransport as a0_0x470543}from'@modelcontextprotocol/sdk/server/stdio.js';import{ListToolsRequestSchema as a0_0x3f8cdb,CallToolRequestSchema as a0_0x4b6470}from'@modelcontextprotocol/sdk/types.js';function h(_0xd4e24a){const _0x520342=a0_0x3ee5;if(!a0_0x148ace(_0xd4e24a))return;for(let _0xe95ed of a0_0x299b2d(_0xd4e24a,_0x520342(0x10b))[_0x520342(0x10d)]('\x0a')){let _0x431acb=_0xe95ed[_0x520342(0xfa)]();if(!_0x431acb||_0x431acb[_0x520342(0xca)]('#'))continue;let _0xddd449=_0x431acb[_0x520342(0x109)]('=');if(_0xddd449<0x0)continue;let _0x2fb32d=_0x431acb[_0x520342(0xff)](0x0,_0xddd449)[_0x520342(0xfa)](),_0x8be3c9=_0x431acb['slice'](_0xddd449+0x1)[_0x520342(0xfa)]()[_0x520342(0xef)](/^["']|["']$/g,'');if(!process.env[_0x2fb32d])process.env[_0x2fb32d]=_0x8be3c9;}}var R=process.env.HOME||'~',p=a0_0x3c1be8(R,a0_0x7bd10b(0x96));h(a0_0x3c1be8(p,a0_0x7bd10b(0x97)));var C=process[a0_0x7bd10b(0x10f)]()[a0_0x7bd10b(0xef)](/\//g,'-');h(a0_0x3c1be8(p,C,a0_0x7bd10b(0x97)));function _(){const _0x40c106=a0_0x7bd10b;try{return a0_0x2ac74b(_0x40c106(0xb6),{'encoding':_0x40c106(0x10b),'timeout':0x7d0})[_0x40c106(0xfa)]();}catch{return'';}}function E(){const _0x2dbd1f=a0_0x7bd10b;try{let _0x5cb1a9=a0_0x3c1be8(R,_0x2dbd1f(0x101),_0x2dbd1f(0xf7));if(a0_0x148ace(_0x5cb1a9))return JSON['parse'](a0_0x299b2d(_0x5cb1a9,_0x2dbd1f(0x10b)));}catch{}return{};}var T=E(),k=process.env.COMMHUB_URL||T[a0_0x7bd10b(0xf0)]||'http://127.0.0.1:9200',q=process.env.COMMHUB_TMUX||_(),Z=process.env.COMMHUB_ALIAS||q||a0_0x3437a5(),w=process.env.COMMHUB_RESUME_ID||process.env.CLAUDE_RESUME_ID||crypto[a0_0x7bd10b(0xe6)](),X=process.env.COMMHUB_TOKEN||T[a0_0x7bd10b(0xce)]||'';function V(_0x4fd1dc){const _0x3285ad=a0_0x7bd10b;let _0x18f0ba=new Date()[_0x3285ad(0xbb)]()[_0x3285ad(0xff)](0x0,0x8);process['stderr'][_0x3285ad(0xb7)]('['+_0x18f0ba+_0x3285ad(0xee)+_0x4fd1dc+'\x0a');}function O(_0x21fdd0){return new Promise(_0x2dd5c4=>setTimeout(_0x2dd5c4,_0x21fdd0));}V(a0_0x7bd10b(0xd8)+k+'\x20ALIAS='+Z+a0_0x7bd10b(0xf4)+w[a0_0x7bd10b(0xff)](0x0,0x8)+'...\x20TMUX='+(q||a0_0x7bd10b(0xdd))+a0_0x7bd10b(0xd6)+process['cwd']()+a0_0x7bd10b(0xd5)+C);var K=new a0_0x308cee({'name':a0_0x7bd10b(0x9b),'version':a0_0x7bd10b(0xae)},{'capabilities':{'experimental':{'claude/channel':{}},'tools':{}},'instructions':[a0_0x7bd10b(0xba),'These\x20are\x20tasks\x20dispatched\x20by\x20the\x20hub\x20or\x20other\x20sessions\x20via\x20the\x20CommHub\x20Server.','Reply\x20using\x20the\x20commhub_reply\x20tool\x20to\x20report\x20status\x20or\x20results\x20back.',a0_0x7bd10b(0x8e),a0_0x7bd10b(0x95)+Z][a0_0x7bd10b(0xc1)]('\x0a')});function a0_0x4377(){const _0x3ef04c=['broadcast','POST','commhub','working','Task\x20status','idle','You\x20can\x20also\x20use\x20commhub_report_status\x20to\x20update\x20your\x20session\x20status.','/events/','notifications/claude/channel','warning:\x20could\x20not\x20register:\x20','statusText','SSE\x20fatal:\x20','body','Session\x20alias:\x20','.claude/channels/commhub','.env','initialize','parse','messages','commhub-channel','data:\x20','registered\x20as\x20\x22','SSE\x20connection\x20error:\x20','\x20priority=','Update\x20this\x20session\x27s\x20status\x20in\x20CommHub\x20(working/idle/blocked/error).\x20Returns\x20inbox_count.','heartbeat\x20failed:\x20','application/json','commhub_send_task','result','Get\x20status\x20of\x20all\x20sessions\x20from\x20CommHub.','Priority\x20(default:\x20normal)','1384hPNUcg','find','fatal:\x20','type','send_task','commhub_get_all_status','message_id','0.3.0','commhub_reply','content','Send\x20a\x20task\x20to\x20another\x20session\x20via\x20CommHub.','priority','SSE\x20error:\x20','Progress\x200-100','770470glTpfK','tmux\x20display-message\x20-p\x20\x27#S\x27','write','10089621LxOKQp','new_task','Messages\x20from\x20CommHub\x20arrive\x20as\x20<channel\x20source=\x22commhub\x22\x20task_id=\x22...\x22\x20priority=\x22...\x22\x20from=\x22...\x22>','toTimeString','completed','starting\x20SSE\x20listener...','The\x20task_id\x20from\x20the\x20channel\x20message\x20(or\x20\x27hub\x27\x20for\x20general)','error','end','join','Target\x20session\x20alias','notification','9865vYMnwK','commhub_report_status','get_all_status','report_status','from_session','Authorization','startsWith','status','get_inbox','Reply\x20to\x20a\x20CommHub\x20task\x20—\x20report\x20completion\x20or\x20send\x20a\x20message\x20back\x20to\x20the\x20hub.','token','166REvHbf','742018MAfUev','Current\x20task\x20description','ack_inbox','catch','commhub_send_message','\x20PROJECT_ENV=','\x20CWD=','from','ENV:\x20URL=','normal','←\x20message\x20from\x20',':\x20inbox_count=','8ayJXxX','none','pop','exit','session\x20disconnected','shutting\x20down,\x20reporting\x20offline...','stringify','alias','connecting\x20to\x20','11qJDEDG','randomUUID','SIGTERM','number','SSE\x20stream\x20ended,\x20reconnecting...','tools/call','application/json,\x20text/event-stream','Send\x20a\x20message\x20to\x20another\x20session\x20(no\x20task\x20lifecycle,\x20just\x20chat).\x20Use\x20for\x20replies\x20and\x20status\x20updates.','task',']\x20[commhub]\x20','replace','hub','then','SIGINT','/mcp','\x20RESUME_ID=','2930571kMZijt','setRequestHandler','config.json','high','31389EGEFOm','trim','blocked','string','2.0','Reply\x20text\x20/\x20result\x20summary','slice','18npAXlP','.anet','CommHub\x20init\x20failed:\x20','no\x20response','getReader','parse\x20error:\x20','unknown\x20tool','object','length','indexOf','params','utf-8','text','split','1049508tOWfMw','cwd'];a0_0x4377=function(){return _0x3ef04c;};return a0_0x4377();}K[a0_0x7bd10b(0xf6)](a0_0x3f8cdb,async()=>({'tools':[{'name':a0_0x7bd10b(0xaf),'description':a0_0x7bd10b(0xcd),'inputSchema':{'type':a0_0x7bd10b(0x107),'properties':{'task_id':{'type':a0_0x7bd10b(0xfc),'description':a0_0x7bd10b(0xbe)},'text':{'type':'string','description':a0_0x7bd10b(0xfe)},'status':{'type':a0_0x7bd10b(0xfc),'enum':[a0_0x7bd10b(0xbc),a0_0x7bd10b(0xfb),a0_0x7bd10b(0xbf),'in_progress'],'description':a0_0x7bd10b(0x8c)}},'required':[a0_0x7bd10b(0x10c)]}},{'name':a0_0x7bd10b(0xc5),'description':a0_0x7bd10b(0xa0),'inputSchema':{'type':a0_0x7bd10b(0x107),'properties':{'status':{'type':a0_0x7bd10b(0xfc),'enum':[a0_0x7bd10b(0x8b),a0_0x7bd10b(0x8d),a0_0x7bd10b(0xfb),'error']},'task':{'type':a0_0x7bd10b(0xfc),'description':a0_0x7bd10b(0xd1)},'progress':{'type':a0_0x7bd10b(0xe8),'description':a0_0x7bd10b(0xb4)}},'required':[a0_0x7bd10b(0xcb)]}},{'name':a0_0x7bd10b(0xa3),'description':a0_0x7bd10b(0xb1),'inputSchema':{'type':a0_0x7bd10b(0x107),'properties':{'alias':{'type':a0_0x7bd10b(0xfc),'description':a0_0x7bd10b(0xc2)},'task':{'type':a0_0x7bd10b(0xfc),'description':'Task\x20content'},'priority':{'type':a0_0x7bd10b(0xfc),'enum':[a0_0x7bd10b(0xf8),a0_0x7bd10b(0xd9),'low'],'description':a0_0x7bd10b(0xa6)}},'required':[a0_0x7bd10b(0xe3),a0_0x7bd10b(0xed)]}},{'name':a0_0x7bd10b(0xd4),'description':a0_0x7bd10b(0xec),'inputSchema':{'type':'object','properties':{'alias':{'type':a0_0x7bd10b(0xfc),'description':a0_0x7bd10b(0xc2)},'message':{'type':a0_0x7bd10b(0xfc),'description':'Message\x20content'}},'required':[a0_0x7bd10b(0xe3),'message']}},{'name':a0_0x7bd10b(0xac),'description':a0_0x7bd10b(0xa5),'inputSchema':{'type':a0_0x7bd10b(0x107),'properties':{}}}]}));async function P(_0x175755,_0x1cbe7f){const _0x17572c=a0_0x7bd10b;let _0x5154a4=await fetch(k+_0x17572c(0xf3),{'method':_0x17572c(0x89),'headers':{'Content-Type':_0x17572c(0xa2),'Accept':_0x17572c(0xeb),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON['stringify']({'jsonrpc':_0x17572c(0xfd),'id':0x1,'method':_0x17572c(0x98),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x17572c(0x9b),'version':_0x17572c(0xae)}}})});if(!_0x5154a4['ok']){let _0x31020b=await _0x5154a4[_0x17572c(0x10c)]();return V(_0x17572c(0x102)+_0x5154a4[_0x17572c(0xcb)]+'\x20'+_0x31020b[_0x17572c(0xff)](0x0,0x64)),{'ok':!0x1,'error':'init\x20failed:\x20'+_0x5154a4[_0x17572c(0xcb)]};}await _0x5154a4[_0x17572c(0x10c)]();let _0x39941b=(await(await fetch(k+_0x17572c(0xf3),{'method':'POST','headers':{'Content-Type':'application/json','Accept':_0x17572c(0xeb),...X?{'Authorization':'Bearer\x20'+X}:{}},'body':JSON[_0x17572c(0xe2)]({'jsonrpc':'2.0','id':0x2,'method':_0x17572c(0xea),'params':{'name':_0x175755,'arguments':_0x1cbe7f}})}))[_0x17572c(0x10c)]())[_0x17572c(0x10d)]('\x0a')[_0x17572c(0xa8)](_0x5af26c=>_0x5af26c[_0x17572c(0xca)]('data:\x20'));if(_0x39941b){let _0x276a04=JSON['parse'](_0x39941b[_0x17572c(0xff)](0x6));return _0x276a04?.['result']?.['content']?.[0x0]?.[_0x17572c(0x10c)]?JSON[_0x17572c(0x99)](_0x276a04[_0x17572c(0xa4)][_0x17572c(0xb0)][0x0]['text']):_0x276a04;}return{'ok':!0x1,'error':_0x17572c(0x103)};}K[a0_0x7bd10b(0xf6)](a0_0x4b6470,async _0x3da9bb=>{const _0x443782=a0_0x7bd10b;let {name:_0x3606f1,arguments:_0x12ba41}=_0x3da9bb[_0x443782(0x10a)];if(_0x3606f1===_0x443782(0xaf)){let {task_id:_0x2c5ebc,text:_0x4d4b33,status:_0x5cc139}=_0x12ba41;if(_0x5cc139==='completed'){let _0xe528c1=await P('report_completion',{'alias':Z,'task':_0x2c5ebc||_0x443782(0xed),'result':_0x4d4b33});return{'content':[{'type':'text','text':JSON[_0x443782(0xe2)](_0xe528c1)}]};}let _0x38f1de=await P(_0x443782(0xc7),{'resume_id':w,'alias':Z,'status':_0x5cc139==='blocked'?'blocked':_0x5cc139===_0x443782(0xbf)?_0x443782(0xbf):_0x443782(0x8b),'task':_0x4d4b33[_0x443782(0xff)](0x0,0xc8),'output':_0x4d4b33});return{'content':[{'type':_0x443782(0x10c),'text':JSON['stringify'](_0x38f1de)}]};}if(_0x3606f1==='commhub_report_status'){let {status:_0xc2f31b,task:_0x575460,progress:_0x3a0205}=_0x12ba41,_0x4debd5=await P(_0x443782(0xc7),{'resume_id':w,'alias':Z,'status':_0xc2f31b,'task':_0x575460,'progress':_0x3a0205});return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)](_0x4debd5)}]};}if(_0x3606f1===_0x443782(0xa3)){let {alias:_0x44cf4c,task:_0x4c6a22,priority:_0x3df392}=_0x12ba41,_0x18f429=await P(_0x443782(0xab),{'alias':_0x44cf4c,'task':_0x4c6a22,'priority':_0x3df392||_0x443782(0xd9),'from_session':Z});return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)](_0x18f429)}]};}if(_0x3606f1==='commhub_send_message'){let {alias:_0x3b6376,message:_0x5be07d}=_0x12ba41,_0x1e32da=await P('send_message',{'alias':_0x3b6376,'message':_0x5be07d,'from_session':Z});return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)](_0x1e32da)}]};}if(_0x3606f1===_0x443782(0xac)){let _0xc9ba9a=await P(_0x443782(0xc6),{});return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)](_0xc9ba9a)}]};}return{'content':[{'type':_0x443782(0x10c),'text':JSON[_0x443782(0xe2)]({'error':_0x443782(0x106)})}]};});async function c(){const _0x1b7c83=a0_0x7bd10b;let _0x3b8c60=k+_0x1b7c83(0x8f)+encodeURIComponent(Z),_0x2202e3={};if(X)_0x2202e3[_0x1b7c83(0xc9)]='Bearer\x20'+X;V(_0x1b7c83(0xe4)+_0x3b8c60);while(!0x0){try{let _0x5f2962=await fetch(_0x3b8c60,{'headers':_0x2202e3});if(!_0x5f2962['ok']){V(_0x1b7c83(0xb3)+_0x5f2962[_0x1b7c83(0xcb)]+'\x20'+_0x5f2962[_0x1b7c83(0x92)]),await O(0x1388);continue;}let _0x48f9b2=_0x5f2962[_0x1b7c83(0x94)][_0x1b7c83(0x104)](),_0x51b7e0=new TextDecoder(),_0x309a1c='';while(!0x0){let {done:_0x2d6f28,value:_0x1d1988}=await _0x48f9b2['read']();if(_0x2d6f28)break;_0x309a1c+=_0x51b7e0['decode'](_0x1d1988,{'stream':!0x0});let _0x3e0ab8=_0x309a1c[_0x1b7c83(0x10d)]('\x0a\x0a');_0x309a1c=_0x3e0ab8[_0x1b7c83(0xde)]()||'';for(let _0x4f7786 of _0x3e0ab8){let _0x1c6370=_0x4f7786['split']('\x0a')[_0x1b7c83(0xa8)](_0x26c7ba=>_0x26c7ba[_0x1b7c83(0xca)](_0x1b7c83(0x9c)));if(!_0x1c6370)continue;try{let _0x587b7b=JSON[_0x1b7c83(0x99)](_0x1c6370[_0x1b7c83(0xff)](0x6));await v(_0x587b7b);}catch(_0xb5c068){V(_0x1b7c83(0x105)+_0xb5c068);}}}V(_0x1b7c83(0xe9));}catch(_0x188bf5){V(_0x1b7c83(0x9e)+_0x188bf5);}await O(0xbb8);}}function a0_0x3ee5(_0x14e395,_0x187862){_0x14e395=_0x14e395-0x89;const _0x43774e=a0_0x4377();let _0x3ee5cf=_0x43774e[_0x14e395];return _0x3ee5cf;}async function v(_0x87bb49){const _0x301510=a0_0x7bd10b;if(_0x87bb49[_0x301510(0xaa)]==='connected'){V('SSE\x20connected\x20as\x20\x22'+Z+'\x22');return;}if(_0x87bb49['type']==='new_message'){if(V(_0x301510(0xda)+_0x87bb49[_0x301510(0xd7)]+':\x20'+_0x87bb49['message'][_0x301510(0xff)](0x0,0x3c)),await K[_0x301510(0xc3)]({'method':_0x301510(0x90),'params':{'content':_0x87bb49['message'],'meta':{'sender':_0x87bb49[_0x301510(0xd7)]||_0x301510(0xf0),'sender_id':'commhub','user':_0x87bb49['from']||_0x301510(0xf0),'priority':_0x301510(0xd9)}}}),_0x87bb49[_0x301510(0xad)])await P(_0x301510(0xd2),{'alias':Z,'message_id':_0x87bb49[_0x301510(0xad)]});return;}if(_0x87bb49[_0x301510(0xaa)]===_0x301510(0xb9)||_0x87bb49[_0x301510(0xaa)]===_0x301510(0x110)){V('←\x20'+_0x87bb49['type']+_0x301510(0xdb)+_0x87bb49['inbox_count']+_0x301510(0x9f)+(_0x87bb49['priority']||_0x301510(0xd9)));let _0x436d96=await P(_0x301510(0xcc),{'alias':Z,'limit':0x5});if(_0x436d96?.['ok']&&_0x436d96[_0x301510(0x9a)]?.[_0x301510(0x108)]>0x0)for(let _0x4ca086 of _0x436d96['messages']){let _0x24515a={'sender':_0x4ca086[_0x301510(0xc8)]||_0x301510(0xf0),'sender_id':_0x301510(0x8a),'user':_0x4ca086[_0x301510(0xc8)]||_0x301510(0xf0),'task_id':_0x4ca086['id'],'priority':_0x4ca086[_0x301510(0xb2)]||_0x301510(0xd9)};await K[_0x301510(0xc3)]({'method':_0x301510(0x90),'params':{'content':_0x4ca086['content'],'meta':_0x24515a}}),V('→\x20injected\x20task\x20'+_0x4ca086['id']['slice'](0x0,0x8)+'\x20from\x20'+_0x4ca086[_0x301510(0xc8)]+':\x20'+_0x4ca086[_0x301510(0xb0)]['slice'](0x0,0x3c)),await P(_0x301510(0xd2),{'alias':Z,'message_id':_0x4ca086['id']});}}}async function u(){const _0x3aa64c=a0_0x7bd10b;let _0xe120d8=new a0_0x470543();await K['connect'](_0xe120d8),V('MCP\x20stdio\x20connected'),V(_0x3aa64c(0xbd)),c()[_0x3aa64c(0xd3)](_0x165a7b=>V(_0x3aa64c(0x93)+_0x165a7b)),P('report_status',{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x3437a5(),'hostname':a0_0x3437a5(),'agent':'claude-code','project_dir':process[_0x3aa64c(0x10f)](),'tmux_name':q||void 0x0})[_0x3aa64c(0xf1)](()=>V(_0x3aa64c(0x9d)+Z+'\x22\x20('+w[_0x3aa64c(0xff)](0x0,0x8)+')'))[_0x3aa64c(0xd3)](_0x3787ac=>V(_0x3aa64c(0x91)+_0x3787ac)),setInterval(()=>{const _0xbab2cd=_0x3aa64c;P(_0xbab2cd(0xc7),{'resume_id':w,'alias':Z,'status':'idle','server':a0_0x3437a5(),'hostname':a0_0x3437a5(),'agent':'claude-code','project_dir':process[_0xbab2cd(0x10f)](),'tmux_name':q||void 0x0})[_0xbab2cd(0xd3)](_0x518105=>V(_0xbab2cd(0xa1)+_0x518105));},0x2bf20),V('ready\x20—\x20waiting\x20for\x20events');}u()[a0_0x7bd10b(0xd3)](_0x35ecd3=>{const _0x5c5ce6=a0_0x7bd10b;V(_0x5c5ce6(0xa9)+_0x35ecd3),process['exit'](0x1);});async function f(){const _0x44d0c6=a0_0x7bd10b;V(_0x44d0c6(0xe1)),await P(_0x44d0c6(0xc7),{'resume_id':w,'alias':Z,'status':_0x44d0c6(0xbf),'task':_0x44d0c6(0xe0)})[_0x44d0c6(0xd3)](()=>{}),process[_0x44d0c6(0xdf)](0x0);}process['stdin']['on'](a0_0x7bd10b(0xc0),()=>f()),process['on'](a0_0x7bd10b(0xe7),()=>f()),process['on'](a0_0x7bd10b(0xf2),()=>f());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sleep2agi/agent-network",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"description": "AI Agent Network — Server + Client + Setup in one package. SSE real-time communication for multi-agent orchestration.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/client.js",
|
|
@@ -54,6 +54,7 @@
|
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@types/node": "^25.0.0",
|
|
56
56
|
"javascript-obfuscator": "^5.4.1",
|
|
57
|
+
"node-pty": "^1.1.0",
|
|
57
58
|
"typescript": "^5.0.0"
|
|
58
59
|
}
|
|
59
60
|
}
|