@funny-booth/agent-core 0.1.3 → 0.1.5

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/index.js CHANGED
@@ -1 +1 @@
1
- 'use strict';const _0x30b00e=_0x47b2;(function(_0x5b14b2,_0x11a67f){const _0x5fbb4d=_0x47b2,_0x11c33a=_0x5b14b2();while(!![]){try{const _0x3a6205=parseInt(_0x5fbb4d(0xfe))/0x1+parseInt(_0x5fbb4d(0x140))/0x2+parseInt(_0x5fbb4d(0x12d))/0x3*(-parseInt(_0x5fbb4d(0xef))/0x4)+-parseInt(_0x5fbb4d(0xf1))/0x5+parseInt(_0x5fbb4d(0x126))/0x6*(parseInt(_0x5fbb4d(0xe6))/0x7)+-parseInt(_0x5fbb4d(0x11d))/0x8*(-parseInt(_0x5fbb4d(0xfd))/0x9)+parseInt(_0x5fbb4d(0x137))/0xa*(-parseInt(_0x5fbb4d(0x148))/0xb);if(_0x3a6205===_0x11a67f)break;else _0x11c33a['push'](_0x11c33a['shift']());}catch(_0x23fd72){_0x11c33a['push'](_0x11c33a['shift']());}}}(_0x10b9,0x73fa2));Object['defineProperty'](exports,'__esModule',{'value':!![]});const mcp_js_1=require('@modelcontextprotocol/sdk/server/mcp.js'),stdio_js_1=require('@modelcontextprotocol/sdk/server/stdio.js'),zod_1=require(_0x30b00e(0x115)),child_process_1=require(_0x30b00e(0x135)),fs_1=require('fs'),os_1=require('os'),path_1=require(_0x30b00e(0x103)),CONFIG_DIR=(0x0,path_1[_0x30b00e(0xf9)])((0x0,os_1[_0x30b00e(0x123)])(),_0x30b00e(0x113),_0x30b00e(0x127)),SETUP_TOKEN_FILE=(0x0,path_1['join'])(CONFIG_DIR,_0x30b00e(0xec)),AUTH_FILE=(0x0,path_1[_0x30b00e(0xf9)])(CONFIG_DIR,_0x30b00e(0x132)),AUTH_FILE_TMP=(0x0,path_1[_0x30b00e(0xf9)])(CONFIG_DIR,_0x30b00e(0x10f)),rawArgs=process['argv']['slice'](0x2),isAuthCommand=rawArgs[0x0]==='auth',parsedArgs=isAuthCommand?rawArgs[_0x30b00e(0x122)](0x1):rawArgs;let cliPortalUrl='',cliToken='';for(const arg of parsedArgs){const eqIdx=arg[_0x30b00e(0x144)]('=');if(eqIdx===-0x1)continue;const key=arg[_0x30b00e(0x122)](0x0,eqIdx),val=arg['slice'](eqIdx+0x1);if(key==='--portal-url')cliPortalUrl=val;if(key===_0x30b00e(0x10d))cliToken=val;}function _0x47b2(_0x345981,_0x6b27bf){_0x345981=_0x345981-0xe2;const _0x10b919=_0x10b9();let _0x47b260=_0x10b919[_0x345981];if(_0x47b2['OLoOFp']===undefined){var _0x122719=function(_0x5d3157){const _0x2e5d73='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xaadd45='',_0x423872='';for(let _0x180f6c=0x0,_0xd86db2,_0x59d0da,_0x1575da=0x0;_0x59d0da=_0x5d3157['charAt'](_0x1575da++);~_0x59d0da&&(_0xd86db2=_0x180f6c%0x4?_0xd86db2*0x40+_0x59d0da:_0x59d0da,_0x180f6c++%0x4)?_0xaadd45+=String['fromCharCode'](0xff&_0xd86db2>>(-0x2*_0x180f6c&0x6)):0x0){_0x59d0da=_0x2e5d73['indexOf'](_0x59d0da);}for(let _0x1b2173=0x0,_0x3a4c85=_0xaadd45['length'];_0x1b2173<_0x3a4c85;_0x1b2173++){_0x423872+='%'+('00'+_0xaadd45['charCodeAt'](_0x1b2173)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x423872);};_0x47b2['fVoJaz']=_0x122719,_0x47b2['spnQzq']={},_0x47b2['OLoOFp']=!![];}const _0x2c70df=_0x10b919[0x0],_0x12aac1=_0x345981+_0x2c70df,_0x1b581e=_0x47b2['spnQzq'][_0x12aac1];return!_0x1b581e?(_0x47b260=_0x47b2['fVoJaz'](_0x47b260),_0x47b2['spnQzq'][_0x12aac1]=_0x47b260):_0x47b260=_0x1b581e,_0x47b260;}function readAuthData(){const _0x6a67d2=_0x30b00e;if(!(0x0,fs_1[_0x6a67d2(0x111)])(AUTH_FILE))return null;try{return JSON[_0x6a67d2(0x108)]((0x0,fs_1[_0x6a67d2(0x124)])(AUTH_FILE,_0x6a67d2(0x12e)));}catch{return null;}}function isJwtExpired(_0x4f04d1){const _0x4661aa=_0x30b00e,_0x1d2e85={'slvVO':_0x4661aa(0x12a)};try{const _0x495e05=JSON[_0x4661aa(0x108)](Buffer['from'](_0x4f04d1[_0x4661aa(0x11e)]('.')[0x1],_0x1d2e85[_0x4661aa(0xf8)])[_0x4661aa(0xe5)]());return _0x495e05['exp']*0x3e8<Date[_0x4661aa(0x10a)]()+0xea60;}catch{return!![];}}async function exchangeToken(_0x81de23,_0x3f3a19){const _0x5de253=_0x30b00e;try{const _0x15d4cf=await fetch(_0x81de23+_0x5de253(0xe4),{'method':'POST','headers':{'Content-Type':_0x5de253(0xf3)},'body':JSON[_0x5de253(0xf6)]({'setup_token':_0x3f3a19})});if(!_0x15d4cf['ok'])return null;const _0x41a8b8=await _0x15d4cf[_0x5de253(0x13c)]();return _0x41a8b8[_0x5de253(0xf4)]??null;}catch{return null;}}function _0x10b9(){const _0x35bfe0=['BwTKAxjtEw5J','BwLU','4PYfioIQJEIOVoobJowUJos6HUobL+obVUobL+obN+oaGUocQoodVoocUoocP+odS+odIoocKUs9V+EuQoobP+obJEobVUobMEoaGGO','rxzVqKe','6kQn6kI844kO44oP44o8oIdJGRVJG4pJG4JJGQlJG4pJG5FJGyZLROZKUOBJGzFJGABJGytJGB7JGzVJGPpJGilNRQhNKiBOGixJGAVPGkpNTAhJGzFJGABJGy/JGAdJGzxJGytJGii','CMvJB3jK','mtiZnduYoe1TzxrSDW','C3bSAxq','u3rKAw9tzxj2zxjuCMfUC3bVCNq','Cg9YDgfSx3vYBa','twnWu2vYDMvY','C2XPy2u','Ag9TzwrPCG','CMvHzezPBgvtEw5J','Aw5ZDgfSBf9JB21Tyw5K','ntiWnJi5mhHRBvnYCG','ywDLBNqTy29Yzq','l2fWAs9Ty3bZl2LUC3rHBgW','C3rKB3v0','yMfZzty0DxjS','5PAW44gx44ge44or44k544oV44o844oj77YiooAwH+wTL+s7PEs4IU+8Iq','l2fWAs9HDxrOl2nOyw5Nzs1WyxnZD29Yza','owvsEMr6sa','DxrMltG','zgzWsfO','44kO44oP44o8oIa','Dgv4Da','yxv0Ac5QC29U','54++5zYO44gU44or44k544oV44o844oj','mc4XlJa','y2HPBgrFChjVy2vZCW','zxjYB3i','mti2odmWrervvhPM','Bg9Hzf9RBM93BgvKz2u','y3DIAxe','l2fWAs9RBM93BgvKz2u/A2v5D29Yzd0','qMvHCMvYia','ANnVBG','44kK44oZ44k544oi44o844oR5AsX5PwxoGO','C3rYAw5N','CMvUyw1Lu3LUyW','nJaZndeWCu54AfHW','r1HHAgS','qvbj44kO44oP44o8oIa','y2HHBMDLx3bHC3n3B3jK','Aw5KzxHpzG','zxHPDa','ioobRUocPoodS+ocUEodIoodVoodQ+obJowUJos6HUobL+obVUobL+obN+oaGKnSyxvKzsbdB2rL44ks5yAn6lw35yUv44gx44gM44gp44gG44gv44ge44cccGRLRP/OOyZJGRpJG57JG7pJG4K6ia','C3rKzxjY','ntm5BMnAs1br','uKnPChu','zg1Sz2O','l2fWAs9HDxrOl2v4y2HHBMDL','Dg9tDhjPBMC','n2LVENjNEa','s25VD2XLzgDL44kT44o844oV44o844oj77Yi5l6loIbau2fSzxncB3rF6kAb5lU25A6A576P77Yj','seLhuuS','Cg9YDgfSvxjS','D3jPDgu','yMLUza','C2v0DxbFDg9Rzw4','zNDtrue','zxHLyW','oda1nJKYrevqsMr6','zg1TCMC','ndy3nZKXnw55s2zguG','44kK44oZ44k544oi44o844oR44kZ44oE44oZ44oj44ks5y+w5B6x44gN44gn44g+44gB44kt44gN44gx44gF','yxbWBgLJyxrPB24VANnVBG','AND0','C3rHDhvZ','C3rYAw5NAwz5','CMHnDha','C2X2vK8','AM9PBG','B3b0Aw9UywW','6kQn6kI844kO44oP44o8oIdJG4JJG7ZJGQ/JG7pJGyZNHkhLIRNJGyVJGihJGRxJG7ZJG5dJG7ZJGAVMJQxNTPRJGAFJGy3JGB7JGzVJGPmk','44kK44oZ44k544oi44o844oR44gz44kltunq44gUsuq','mZzSqxjnDwm','odq5nJC3C0Pwy2zV','44or44k544oV44o844oj44ks5Asj5PU044gx44g+44gx44gF','Dg9VBa','BMfTzq','ue9tva','Cgf0Aa','rMf0ywW6ia','jYdJGAVLR77LV5ZJGzNJGOTlBM93BgvKz2xJGyZOPOVJGAtJGyVJGORJGB7JGzVJGPpJGAFJGzFJGz/JGilNRQhNKiBOGixJGAVJGyRLLy/JGytLKiJJGO/JGzVJGy/JGAdJGzxJGytJGii','y29UDgvUDa','l2fWAs9Ty3bZ','CgfYC2u','BKf5q3e','BM93','Ag94vKS','y2f0y2G','ls10B2TLBG','55kW5Akd5Asj5PwW77Yi5l6loIb7r01bsuXFve9lru46icD4EhGNFE+8Iq','yxv0Ac5QC29UlNrTCa','D3jPDgvgAwXLu3LUyW','zxHPC3rZu3LUyW','zgvZy3jPyMu','lMnVBMzPzW','y29UBMvJDa','EM9K','Eej2BwC'];_0x10b9=function(){return _0x35bfe0;};return _0x10b9();}function saveAuthData(_0xa5509e){const _0x361066=_0x30b00e,_0x595aa9={'nAyCq':_0x361066(0x12e)};if(!(0x0,fs_1['existsSync'])(CONFIG_DIR))(0x0,fs_1[_0x361066(0x117)])(CONFIG_DIR,{'recursive':!![],'mode':0x1c0});(0x0,fs_1['writeFileSync'])(AUTH_FILE_TMP,JSON[_0x361066(0xf6)](_0xa5509e),{'encoding':_0x595aa9[_0x361066(0x109)],'mode':0x180}),(0x0,fs_1[_0x361066(0x13f)])(AUTH_FILE_TMP,AUTH_FILE);}async function getValidJwt(){const _0x4ff916=_0x30b00e,_0x4327df={'dmlgj':function(_0x5bd9db,_0x1c0f52){return _0x5bd9db(_0x1c0f52);},'dmmrg':function(_0x2b6ab5,_0x4b60b8,_0x24fc2a){return _0x2b6ab5(_0x4b60b8,_0x24fc2a);}},_0x33bb8c=readAuthData();if(!_0x33bb8c)return null;if(!_0x4327df[_0x4ff916(0xe3)](isJwtExpired,_0x33bb8c[_0x4ff916(0xf4)]))return{'jwt':_0x33bb8c['jwt'],'portalUrl':_0x33bb8c['portal_url']};if(!(0x0,fs_1[_0x4ff916(0x111)])(SETUP_TOKEN_FILE))return null;const _0x1f17a3=(0x0,fs_1[_0x4ff916(0x124)])(SETUP_TOKEN_FILE,_0x4ff916(0x12e))['trim'](),_0x21152f=await _0x4327df[_0x4ff916(0xf0)](exchangeToken,_0x33bb8c[_0x4ff916(0x120)],_0x1f17a3);if(!_0x21152f)return null;return _0x4327df[_0x4ff916(0xe3)](saveAuthData,{'jwt':_0x21152f,'portal_url':_0x33bb8c[_0x4ff916(0x120)]}),{'jwt':_0x21152f,'portalUrl':_0x33bb8c['portal_url']};}async function runAuthCommand(){const _0x52b4c2=_0x30b00e,_0xa5d612={'tAXur':function(_0x2c9949,_0x289f04){return _0x2c9949||_0x289f04;},'rhMtp':function(_0x414d28,_0x199cb0,_0x6923aa){return _0x414d28(_0x199cb0,_0x6923aa);},'siqqE':_0x52b4c2(0xfb),'xBvmg':_0x52b4c2(0x12e),'oGxun':function(_0x4f6c5c,_0x56829c){return _0x4f6c5c(_0x56829c);}};_0xa5d612['tAXur'](!cliPortalUrl,!cliToken)&&(process[_0x52b4c2(0x147)][_0x52b4c2(0xea)]('エラー:\x20--portal-url\x20と\x20--token\x20が必要です\x0a'),process[_0x52b4c2(0x145)](0x1));const _0x559d0f=await _0xa5d612[_0x52b4c2(0xf7)](exchangeToken,cliPortalUrl,cliToken);!_0x559d0f&&(process['stderr'][_0x52b4c2(0xea)](_0xa5d612['siqqE']),process[_0x52b4c2(0x145)](0x1));if(!(0x0,fs_1[_0x52b4c2(0x111)])(CONFIG_DIR))(0x0,fs_1['mkdirSync'])(CONFIG_DIR,{'recursive':!![],'mode':0x1c0});(0x0,fs_1[_0x52b4c2(0x110)])(SETUP_TOKEN_FILE,cliToken,{'encoding':_0xa5d612[_0x52b4c2(0x116)],'mode':0x180}),_0xa5d612['oGxun'](saveAuthData,{'jwt':_0x559d0f,'portal_url':cliPortalUrl}),process[_0x52b4c2(0x129)][_0x52b4c2(0xea)](_0x52b4c2(0x119));}let PORTAL_URL='',JWT='';const AUTH_ERROR={'content':[{'type':_0x30b00e(0x131),'text':_0x30b00e(0x11b)}]},server=new mcp_js_1[(_0x30b00e(0x121))]({'name':_0x30b00e(0x127),'version':_0x30b00e(0x134)}),tool=server[_0x30b00e(0x100)][_0x30b00e(0xeb)](server);tool(_0x30b00e(0x138),{'keyword':zod_1['z']['string']()[_0x30b00e(0x112)](_0x30b00e(0xe7))},async({keyword:_0x42e2fc})=>{const _0x4e398e=_0x30b00e,_0x354a74={'dsyIR':function(_0x405977,_0x6b15f1){return _0x405977||_0x6b15f1;},'hoxVK':function(_0x2bb877,_0x1732b9,_0x36d9c6){return _0x2bb877(_0x1732b9,_0x36d9c6);},'fwSEA':function(_0x56ec01,_0x53bebf){return _0x56ec01(_0x53bebf);},'GXahk':_0x4e398e(0x131)};if(_0x354a74['dsyIR'](!JWT,!PORTAL_URL))return AUTH_ERROR;const _0xa776c7=await _0x354a74[_0x4e398e(0x10b)](fetch,PORTAL_URL+_0x4e398e(0x13a)+_0x354a74[_0x4e398e(0xed)](encodeURIComponent,_0x42e2fc),{'headers':{'Authorization':_0x4e398e(0x13b)+JWT}});if(!_0xa776c7['ok'])return{'content':[{'type':_0x354a74[_0x4e398e(0x141)],'text':_0x4e398e(0x142)+_0xa776c7[_0x4e398e(0xf5)]}]};const _0x5e8145=await _0xa776c7[_0x4e398e(0x13c)]();if(_0x5e8145[_0x4e398e(0x136)]||!_0x5e8145[_0x4e398e(0x106)])return{'content':[{'type':_0x354a74[_0x4e398e(0x141)],'text':'キーワード\x20\x27'+_0x42e2fc+_0x4e398e(0x105)}]};return{'content':[{'type':_0x354a74[_0x4e398e(0x141)],'text':_0x5e8145[_0x4e398e(0x106)]}]};}),tool('list_mcps',{},async()=>{const _0x50682f=_0x30b00e,_0x1bbcb4={'EvoBA':function(_0x31d5cd,_0x37f128,_0x3a2cfc){return _0x31d5cd(_0x37f128,_0x3a2cfc);},'qlmqS':'text'};if(!JWT||!PORTAL_URL)return AUTH_ERROR;const _0x3086cf=await _0x1bbcb4[_0x50682f(0x11a)](fetch,PORTAL_URL+_0x50682f(0x107),{'headers':{'Authorization':_0x50682f(0x13b)+JWT}});if(!_0x3086cf['ok'])return{'content':[{'type':_0x50682f(0x131),'text':_0x50682f(0x142)+_0x3086cf[_0x50682f(0xf5)]}]};const _0x49849a=await _0x3086cf[_0x50682f(0x13c)]();return{'content':[{'type':_0x1bbcb4['qlmqS'],'text':JSON[_0x50682f(0xf6)](_0x49849a,null,0x2)}]};}),tool('install_mcp',{'mcp_id':zod_1['z'][_0x30b00e(0x13e)]()[_0x30b00e(0x112)](_0x30b00e(0xfc)),'env_vars':zod_1['z'][_0x30b00e(0x11c)](zod_1['z'][_0x30b00e(0x13e)]())[_0x30b00e(0xfa)]()[_0x30b00e(0x112)](_0x30b00e(0x10e))},async({mcp_id:_0x34631c,env_vars:_0x186f34})=>{const _0xaac6da=_0x30b00e,_0x5dc67a={'dfpHZ':function(_0xd8a194,_0x11673f){return _0xd8a194||_0x11673f;},'RCipu':_0xaac6da(0x131)};if(_0x5dc67a[_0xaac6da(0x12f)](!JWT,!PORTAL_URL))return AUTH_ERROR;const _0xc34541=await fetch(PORTAL_URL+_0xaac6da(0x128),{'method':'POST','headers':{'Authorization':'Bearer\x20'+JWT,'Content-Type':_0xaac6da(0xf3)},'body':JSON[_0xaac6da(0xf6)]({'mcp_id':_0x34631c,'env_vars':_0x186f34})});if(!_0xc34541['ok'])return{'content':[{'type':_0xaac6da(0x131),'text':_0xaac6da(0x142)+_0xc34541['status']}]};const _0x30568b=await _0xc34541['json']();if(!_0x30568b[_0xaac6da(0x125)])return{'content':[{'type':_0x5dc67a[_0xaac6da(0xe2)],'text':_0xaac6da(0xf2)}]};return new Promise(_0x2afb0d=>{const _0x450a37=_0xaac6da;(0x0,child_process_1[_0x450a37(0xee)])(_0x30568b[_0x450a37(0x125)],(_0x21f51b,_0x5e3d07,_0x594f61)=>{const _0x2c2715=_0x450a37;if(_0x21f51b){_0x2afb0d({'content':[{'type':_0x2c2715(0x131),'text':_0x2c2715(0x13d)+(_0x594f61||_0x21f51b['message'])}]});return;}_0x2afb0d({'content':[{'type':'text','text':_0x30568b[_0x2c2715(0x101)]+_0x2c2715(0x146)+_0x30568b[_0x2c2715(0x125)]}]});});});}),tool(_0x30b00e(0x143),{'current_password':zod_1['z'][_0x30b00e(0x13e)]()[_0x30b00e(0x112)](_0x30b00e(0x133)),'new_password':zod_1['z'][_0x30b00e(0x13e)]()[_0x30b00e(0x118)](0x8)[_0x30b00e(0x112)](_0x30b00e(0x12b))},async({current_password:_0xece7fd,new_password:_0x19ee51})=>{const _0x33c67e=_0x30b00e,_0x2362d8={'HIGQK':_0x33c67e(0x102)};if(!JWT||!PORTAL_URL)return AUTH_ERROR;const _0x477e6f=await fetch(PORTAL_URL+_0x33c67e(0x12c),{'method':_0x2362d8[_0x33c67e(0xe8)],'headers':{'Authorization':_0x33c67e(0x13b)+JWT,'Content-Type':'application/json'},'body':JSON[_0x33c67e(0xf6)]({'current_password':_0xece7fd,'new_password':_0x19ee51})});if(!_0x477e6f['ok']){const _0x5efd8b=await _0x477e6f[_0x33c67e(0x13c)]();return{'content':[{'type':_0x33c67e(0x131),'text':_0x33c67e(0x130)+(_0x5efd8b[_0x33c67e(0x136)]??_0x477e6f[_0x33c67e(0xf5)])}]};}return{'content':[{'type':_0x33c67e(0x131),'text':_0x33c67e(0xff)}]};});async function main(){const _0x29d5ef=_0x30b00e,_0x1581fc={'wUowl':function(_0x3e62db){return _0x3e62db();},'RGMLy':'警告:\x20認証情報が見つかりません。load_knowledge等のツールは使用できません。\x0a','cwbiq':'MCP\x20Server\x20started\x0a'};if(isAuthCommand){await _0x1581fc['wUowl'](runAuthCommand);return;}if(process.env.TOOL_TOKEN&&process.env.PORTAL_URL)JWT=process.env.TOOL_TOKEN,PORTAL_URL=process.env.PORTAL_URL;else{const _0x5abf81=await getValidJwt();_0x5abf81?(JWT=_0x5abf81['jwt'],PORTAL_URL=_0x5abf81[_0x29d5ef(0xe9)]):process[_0x29d5ef(0x147)][_0x29d5ef(0xea)](_0x1581fc['RGMLy']);}const _0x2d7072=new stdio_js_1[(_0x29d5ef(0x11f))]();await server[_0x29d5ef(0x114)](_0x2d7072),process[_0x29d5ef(0x147)][_0x29d5ef(0xea)](_0x1581fc[_0x29d5ef(0x139)]);}main()[_0x30b00e(0x10c)](_0x560fbd=>{const _0x2919bb=_0x30b00e;process[_0x2919bb(0x147)][_0x2919bb(0xea)](_0x2919bb(0x104)+_0x560fbd+'\x0a'),process[_0x2919bb(0x145)](0x1);});
1
+ 'use strict';function _0x56b9(_0x36bbc6,_0x59bd4d){_0x36bbc6=_0x36bbc6-0x171;const _0x3e450d=_0x3e45();let _0x56b9a7=_0x3e450d[_0x36bbc6];if(_0x56b9['CoUibb']===undefined){var _0x2e187c=function(_0x50c33f){const _0x391245='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x418d6f='',_0xd99c7='';for(let _0x2c5567=0x0,_0x38db0b,_0x4f023a,_0x463cb5=0x0;_0x4f023a=_0x50c33f['charAt'](_0x463cb5++);~_0x4f023a&&(_0x38db0b=_0x2c5567%0x4?_0x38db0b*0x40+_0x4f023a:_0x4f023a,_0x2c5567++%0x4)?_0x418d6f+=String['fromCharCode'](0xff&_0x38db0b>>(-0x2*_0x2c5567&0x6)):0x0){_0x4f023a=_0x391245['indexOf'](_0x4f023a);}for(let _0x5507e5=0x0,_0x2490e9=_0x418d6f['length'];_0x5507e5<_0x2490e9;_0x5507e5++){_0xd99c7+='%'+('00'+_0x418d6f['charCodeAt'](_0x5507e5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xd99c7);};_0x56b9['wpTAWa']=_0x2e187c,_0x56b9['lDtLGn']={},_0x56b9['CoUibb']=!![];}const _0x377443=_0x3e450d[0x0],_0x2b9e94=_0x36bbc6+_0x377443,_0x5c7da1=_0x56b9['lDtLGn'][_0x2b9e94];return!_0x5c7da1?(_0x56b9a7=_0x56b9['wpTAWa'](_0x56b9a7),_0x56b9['lDtLGn'][_0x2b9e94]=_0x56b9a7):_0x56b9a7=_0x5c7da1,_0x56b9a7;}const _0x503081=_0x56b9;(function(_0x122a4a,_0x52c947){const _0x13201f=_0x56b9,_0x21713a=_0x122a4a();while(!![]){try{const _0xf9f18b=-parseInt(_0x13201f(0x1df))/0x1+-parseInt(_0x13201f(0x1d1))/0x2*(parseInt(_0x13201f(0x192))/0x3)+parseInt(_0x13201f(0x1ed))/0x4*(-parseInt(_0x13201f(0x1aa))/0x5)+-parseInt(_0x13201f(0x1fa))/0x6*(parseInt(_0x13201f(0x181))/0x7)+parseInt(_0x13201f(0x202))/0x8*(parseInt(_0x13201f(0x1f5))/0x9)+parseInt(_0x13201f(0x1f2))/0xa+-parseInt(_0x13201f(0x1a0))/0xb*(-parseInt(_0x13201f(0x185))/0xc);if(_0xf9f18b===_0x52c947)break;else _0x21713a['push'](_0x21713a['shift']());}catch(_0x1c32b4){_0x21713a['push'](_0x21713a['shift']());}}}(_0x3e45,0x51bc1));Object[_0x503081(0x17c)](exports,'__esModule',{'value':!![]});const mcp_js_1=require(_0x503081(0x172)),stdio_js_1=require(_0x503081(0x1ac)),zod_1=require('zod'),child_process_1=require('child_process'),fs_1=require('fs'),os_1=require('os'),path_1=require(_0x503081(0x1a5)),vault_1=require(_0x503081(0x1ff)),prompt_1=require(_0x503081(0x1ce)),CONFIG_DIR=(0x0,path_1[_0x503081(0x178)])((0x0,os_1[_0x503081(0x1f1)])(),_0x503081(0x18b),_0x503081(0x19c)),SETUP_TOKEN_FILE=(0x0,path_1['join'])(CONFIG_DIR,_0x503081(0x200)),AUTH_FILE=(0x0,path_1['join'])(CONFIG_DIR,_0x503081(0x1d9)),AUTH_FILE_TMP=(0x0,path_1[_0x503081(0x178)])(CONFIG_DIR,_0x503081(0x1a1)),rawArgs=process[_0x503081(0x1b8)][_0x503081(0x19e)](0x2),isAuthCommand=rawArgs[0x0]===_0x503081(0x1ae),isSecretCommand=rawArgs[0x0]===_0x503081(0x19b),parsedArgs=isAuthCommand?rawArgs['slice'](0x1):rawArgs;let cliPortalUrl='',cliToken='';for(const arg of parsedArgs){const eqIdx=arg[_0x503081(0x194)]('=');if(eqIdx===-0x1)continue;const key=arg[_0x503081(0x19e)](0x0,eqIdx),val=arg[_0x503081(0x19e)](eqIdx+0x1);if(key===_0x503081(0x1ef))cliPortalUrl=val;if(key==='--token')cliToken=val;}function readAuthData(){const _0x1f5ee9=_0x503081;if(!(0x0,fs_1['existsSync'])(AUTH_FILE))return null;try{return JSON[_0x1f5ee9(0x1cc)]((0x0,fs_1[_0x1f5ee9(0x1de)])(AUTH_FILE,_0x1f5ee9(0x18e)));}catch{return null;}}function isJwtExpired(_0x4487db){const _0x1ee87a=_0x503081,_0x1abb1e={'LtwlL':_0x1ee87a(0x1f9)};try{const _0x3ab1fb=JSON[_0x1ee87a(0x1cc)](Buffer[_0x1ee87a(0x1b1)](_0x4487db[_0x1ee87a(0x1fb)]('.')[0x1],_0x1abb1e[_0x1ee87a(0x184)])[_0x1ee87a(0x1db)]());return _0x3ab1fb[_0x1ee87a(0x18a)]*0x3e8<Date[_0x1ee87a(0x187)]()+0xea60;}catch{return!![];}}async function exchangeToken(_0xa8d7,_0x300a2e){const _0x113ee4=_0x503081,_0x3fc093={'PgsfI':function(_0x5677a9,_0x266b58,_0x2d3099){return _0x5677a9(_0x266b58,_0x2d3099);},'MDVHu':_0x113ee4(0x1ec)};try{const _0x3ee88b=await _0x3fc093['PgsfI'](fetch,_0xa8d7+_0x113ee4(0x1e3),{'method':_0x3fc093[_0x113ee4(0x1c2)],'headers':{'Content-Type':_0x113ee4(0x1b0)},'body':JSON['stringify']({'setup_token':_0x300a2e})});if(!_0x3ee88b['ok'])return null;const _0x483d4a=await _0x3ee88b['json']();return _0x483d4a[_0x113ee4(0x176)]??null;}catch{return null;}}function saveAuthData(_0x14879c){const _0x5544c1=_0x503081,_0x157e5f={'RliUB':_0x5544c1(0x18e)};if(!(0x0,fs_1[_0x5544c1(0x1be)])(CONFIG_DIR))(0x0,fs_1['mkdirSync'])(CONFIG_DIR,{'recursive':!![],'mode':0x1c0});(0x0,fs_1[_0x5544c1(0x1ab)])(AUTH_FILE_TMP,JSON[_0x5544c1(0x1f7)](_0x14879c),{'encoding':_0x157e5f[_0x5544c1(0x19d)],'mode':0x180}),(0x0,fs_1['renameSync'])(AUTH_FILE_TMP,AUTH_FILE);}async function getValidJwt(){const _0x1dd763=_0x503081,_0x494672={'bQBLZ':function(_0x393e68){return _0x393e68();},'iheiS':function(_0x444d13,_0x10ccc2){return _0x444d13(_0x10ccc2);},'pVrCY':function(_0x2e82d3,_0x5dbaa1,_0x45d0a2){return _0x2e82d3(_0x5dbaa1,_0x45d0a2);}},_0x5ab674=_0x494672[_0x1dd763(0x19a)](readAuthData);if(!_0x5ab674)return null;if(!_0x494672[_0x1dd763(0x1e9)](isJwtExpired,_0x5ab674[_0x1dd763(0x176)]))return{'jwt':_0x5ab674['jwt'],'portalUrl':_0x5ab674[_0x1dd763(0x1e1)]};if(!(0x0,fs_1[_0x1dd763(0x1be)])(SETUP_TOKEN_FILE))return null;const _0x32cdd0=(0x0,fs_1[_0x1dd763(0x1de)])(SETUP_TOKEN_FILE,'utf-8')[_0x1dd763(0x1e0)](),_0x25f735=await _0x494672[_0x1dd763(0x1b4)](exchangeToken,_0x5ab674['portal_url'],_0x32cdd0);if(!_0x25f735)return null;return _0x494672[_0x1dd763(0x1e9)](saveAuthData,{'jwt':_0x25f735,'portal_url':_0x5ab674[_0x1dd763(0x1e1)]}),{'jwt':_0x25f735,'portalUrl':_0x5ab674[_0x1dd763(0x1e1)]};}async function runAuthCommand(){const _0x16e766=_0x503081,_0x56ab69={'XtEZG':function(_0x4e87f1,_0x493d0e){return _0x4e87f1||_0x493d0e;},'TJsVQ':_0x16e766(0x1c7),'wiVZx':_0x16e766(0x1a9),'dpkgc':_0x16e766(0x18e),'ZwVTk':function(_0x1f8e2a,_0x1a725e){return _0x1f8e2a(_0x1a725e);},'OQffn':_0x16e766(0x1a2)};_0x56ab69[_0x16e766(0x1cd)](!cliPortalUrl,!cliToken)&&(process[_0x16e766(0x17e)][_0x16e766(0x1a8)](_0x56ab69[_0x16e766(0x1d4)]),process[_0x16e766(0x1b2)](0x1));const _0x1ff83c=await exchangeToken(cliPortalUrl,cliToken);!_0x1ff83c&&(process[_0x16e766(0x17e)][_0x16e766(0x1a8)](_0x56ab69['wiVZx']),process[_0x16e766(0x1b2)](0x1));if(!(0x0,fs_1['existsSync'])(CONFIG_DIR))(0x0,fs_1[_0x16e766(0x1a6)])(CONFIG_DIR,{'recursive':!![],'mode':0x1c0});(0x0,fs_1[_0x16e766(0x1ab)])(SETUP_TOKEN_FILE,cliToken,{'encoding':_0x56ab69[_0x16e766(0x1d6)],'mode':0x180}),_0x56ab69['ZwVTk'](saveAuthData,{'jwt':_0x1ff83c,'portal_url':cliPortalUrl}),process[_0x16e766(0x17f)][_0x16e766(0x1a8)](_0x56ab69['OQffn']);}function resolveToolName(){const _0x3af285=_0x503081,_0x127731={'CDAfi':_0x3af285(0x18e)};if(process.env.TOOL_NAME)return process.env.TOOL_NAME;try{const _0x5f5994=JSON['parse']((0x0,fs_1['readFileSync'])((0x0,path_1['join'])(__dirname,'..',_0x3af285(0x1fd)),_0x127731[_0x3af285(0x1d2)]));return _0x5f5994[_0x3af285(0x1b5)]||_0x3af285(0x173);}catch{return _0x3af285(0x173);}}async function runSecretCommand(_0x35b1f2){const _0x3b838e=_0x503081,_0x29f21d={'JVdii':_0x3b838e(0x1cb),'YwBYO':_0x3b838e(0x1b7),'RQrXL':'utf-8','cjOFo':_0x3b838e(0x205),'CpifA':function(_0x462ed4,_0x5f02ec){return _0x462ed4===_0x5f02ec;},'qXHDe':function(_0x4e6feb,_0x9161da){return _0x4e6feb===_0x9161da;},'MNeBA':'使い方:\x20agent-core\x20secret\x20rm\x20<NAME>\x0a'},_0xc916d7=resolveToolName(),_0x38542a=_0x35b1f2[0x0];if(_0x38542a===_0x29f21d[_0x3b838e(0x1af)]){const _0x3c3896=(0x0,vault_1[_0x3b838e(0x1e2)])(_0xc916d7);!_0x3c3896[_0x3b838e(0x1e5)]?process[_0x3b838e(0x17f)][_0x3b838e(0x1a8)]('('+_0xc916d7+_0x3b838e(0x174)):process[_0x3b838e(0x17f)][_0x3b838e(0x1a8)]('('+_0xc916d7+_0x3b838e(0x1fc)+_0x3c3896[_0x3b838e(0x1b9)](_0x303176=>_0x3b838e(0x175)+_0x303176)['join']('\x0a')+'\x0a');return;}if(_0x38542a===_0x3b838e(0x193)){const _0x1471c0=_0x35b1f2[0x1];!_0x1471c0&&(process[_0x3b838e(0x17e)]['write'](_0x29f21d['YwBYO']),process['exit'](0x1));const _0x21f82f=process['stdin']['isTTY']?await(0x0,prompt_1[_0x3b838e(0x179)])(_0x1471c0+_0x3b838e(0x182)):(0x0,fs_1[_0x3b838e(0x1de)])(0x0,_0x29f21d[_0x3b838e(0x196)])[_0x3b838e(0x1e0)]();!_0x21f82f&&(process['stderr'][_0x3b838e(0x1a8)](_0x29f21d['cjOFo']),process[_0x3b838e(0x1b2)](0x1));(0x0,vault_1[_0x3b838e(0x1c6)])(_0xc916d7,_0x1471c0,_0x21f82f),process[_0x3b838e(0x17f)]['write'](_0x3b838e(0x204)+_0xc916d7+_0x3b838e(0x1fe)+_0x1471c0+_0x3b838e(0x188)+(0x0,path_1[_0x3b838e(0x178)])((0x0,vault_1[_0x3b838e(0x1d7)])(_0xc916d7),_0x3b838e(0x1ad))+_0x3b838e(0x1f6));return;}if(_0x29f21d[_0x3b838e(0x1b3)](_0x38542a,'rm')||_0x29f21d[_0x3b838e(0x1e4)](_0x38542a,'delete')){const _0xfdcf62=_0x35b1f2[0x1];!_0xfdcf62&&(process['stderr'][_0x3b838e(0x1a8)](_0x29f21d[_0x3b838e(0x1ea)]),process['exit'](0x1));const _0x32d277=(0x0,vault_1[_0x3b838e(0x201)])(_0xc916d7,_0xfdcf62);process[_0x3b838e(0x17f)][_0x3b838e(0x1a8)](_0x32d277?'✅\x20'+_0xfdcf62+'\x20を削除しました。\x0a':'('+_0xfdcf62+_0x3b838e(0x18d));return;}process[_0x3b838e(0x17e)]['write'](_0x3b838e(0x190)),process[_0x3b838e(0x1b2)](0x1);}let PORTAL_URL='',JWT='';const AUTH_ERROR={'content':[{'type':_0x503081(0x186),'text':_0x503081(0x1c3)}]},server=new mcp_js_1[(_0x503081(0x1f8))]({'name':_0x503081(0x19c),'version':_0x503081(0x180)}),tool=server[_0x503081(0x17a)][_0x503081(0x198)](server);tool(_0x503081(0x1bc),{'keyword':zod_1['z'][_0x503081(0x177)]()[_0x503081(0x1ee)]('Knowledgeキーワード(例:\x20@SalesBot_要件定義)')},async({keyword:_0x35c0ec})=>{const _0x230277=_0x503081,_0x1e9643={'cmdva':function(_0x2c282b,_0x10c432,_0x26a190){return _0x2c282b(_0x10c432,_0x26a190);},'vcEsC':function(_0x2d1a2c,_0xafde8e){return _0x2d1a2c(_0xafde8e);},'peTbt':_0x230277(0x186)};if(!JWT||!PORTAL_URL)return AUTH_ERROR;const _0x377136=await _0x1e9643[_0x230277(0x1bf)](fetch,PORTAL_URL+'/api/knowledge?keyword='+_0x1e9643[_0x230277(0x1f3)](encodeURIComponent,_0x35c0ec),{'headers':{'Authorization':_0x230277(0x197)+JWT}});if(!_0x377136['ok'])return{'content':[{'type':_0x1e9643[_0x230277(0x1cf)],'text':'APIエラー:\x20'+_0x377136[_0x230277(0x206)]}]};const _0x59460f=await _0x377136[_0x230277(0x1a3)]();if(_0x59460f[_0x230277(0x1e7)]||!_0x59460f[_0x230277(0x1d8)])return{'content':[{'type':_0x230277(0x186),'text':_0x230277(0x1f4)+_0x35c0ec+_0x230277(0x1a4)}]};return{'content':[{'type':_0x1e9643['peTbt'],'text':_0x59460f[_0x230277(0x1d8)]}]};}),tool(_0x503081(0x189),{},async()=>{const _0x222195=_0x503081,_0x5baef7={'EZNYF':function(_0x414867,_0x1d7a80){return _0x414867||_0x1d7a80;},'rZHIL':function(_0x54cd09,_0x571d9d,_0x13e7da){return _0x54cd09(_0x571d9d,_0x13e7da);}};if(_0x5baef7['EZNYF'](!JWT,!PORTAL_URL))return AUTH_ERROR;const _0x3b8b5e=await _0x5baef7[_0x222195(0x183)](fetch,PORTAL_URL+_0x222195(0x1ba),{'headers':{'Authorization':'Bearer\x20'+JWT}});if(!_0x3b8b5e['ok'])return{'content':[{'type':'text','text':'APIエラー:\x20'+_0x3b8b5e['status']}]};const _0xd98615=await _0x3b8b5e['json']();return{'content':[{'type':_0x222195(0x186),'text':JSON['stringify'](_0xd98615,null,0x2)}]};}),tool(_0x503081(0x1bb),{'mcp_id':zod_1['z'][_0x503081(0x177)]()[_0x503081(0x1ee)]('インストールするMCPのID'),'env_vars':zod_1['z']['record'](zod_1['z'][_0x503081(0x177)]())['optional']()['describe'](_0x503081(0x1a7))},async({mcp_id:_0x520696,env_vars:_0x4c2c0c})=>{const _0x8d973c=_0x503081,_0x560899={'yyOvS':function(_0x237e8a,_0x35b14a){return _0x237e8a(_0x35b14a);},'IPMsg':_0x8d973c(0x186),'IgECk':function(_0x59a51a,_0x2b635b){return _0x59a51a(_0x2b635b);},'qjHqo':function(_0x51468c,_0x21801b,_0x559910){return _0x51468c(_0x21801b,_0x559910);},'iXpyA':_0x8d973c(0x1ec)};if(!JWT||!PORTAL_URL)return AUTH_ERROR;const _0x311b8f=await _0x560899[_0x8d973c(0x1c5)](fetch,PORTAL_URL+_0x8d973c(0x1c4),{'method':_0x560899[_0x8d973c(0x1e6)],'headers':{'Authorization':'Bearer\x20'+JWT,'Content-Type':_0x8d973c(0x1b0)},'body':JSON[_0x8d973c(0x1f7)]({'mcp_id':_0x520696,'env_vars':_0x4c2c0c})});if(!_0x311b8f['ok'])return{'content':[{'type':_0x560899[_0x8d973c(0x1c1)],'text':_0x8d973c(0x1c0)+_0x311b8f[_0x8d973c(0x206)]}]};const _0x3dbefa=await _0x311b8f[_0x8d973c(0x1a3)]();if(!_0x3dbefa[_0x8d973c(0x1f0)])return{'content':[{'type':_0x560899[_0x8d973c(0x1c1)],'text':_0x8d973c(0x199)}]};return new Promise(_0x4c726e=>{const _0x117b31=_0x8d973c;(0x0,child_process_1[_0x117b31(0x1d0)])(_0x3dbefa[_0x117b31(0x1f0)],(_0x4dbe2c,_0x15d242,_0x531de0)=>{const _0x1098ee=_0x117b31;if(_0x4dbe2c){_0x560899[_0x1098ee(0x191)](_0x4c726e,{'content':[{'type':_0x560899[_0x1098ee(0x1c1)],'text':_0x1098ee(0x195)+(_0x531de0||_0x4dbe2c[_0x1098ee(0x17d)])}]});return;}_0x560899[_0x1098ee(0x1d5)](_0x4c726e,{'content':[{'type':_0x1098ee(0x186),'text':_0x3dbefa[_0x1098ee(0x203)]+_0x1098ee(0x1c9)+_0x3dbefa['install_command']}]});});});}),tool(_0x503081(0x18f),{'current_password':zod_1['z'][_0x503081(0x177)]()[_0x503081(0x1ee)](_0x503081(0x171)),'new_password':zod_1['z'][_0x503081(0x177)]()[_0x503081(0x1ca)](0x8)[_0x503081(0x1ee)](_0x503081(0x1dd))},async({current_password:_0x3e67b7,new_password:_0x40d88c})=>{const _0x2b7128=_0x503081,_0x39dc25={'YjleN':function(_0xae3007,_0x37bba7){return _0xae3007||_0x37bba7;},'cFjVK':_0x2b7128(0x1ec),'TuKqh':_0x2b7128(0x1b0),'UOvWp':_0x2b7128(0x186),'sokze':_0x2b7128(0x1c8)};if(_0x39dc25[_0x2b7128(0x1eb)](!JWT,!PORTAL_URL))return AUTH_ERROR;const _0x31098e=await fetch(PORTAL_URL+'/api/auth/change-password',{'method':_0x39dc25[_0x2b7128(0x17b)],'headers':{'Authorization':_0x2b7128(0x197)+JWT,'Content-Type':_0x39dc25[_0x2b7128(0x18c)]},'body':JSON['stringify']({'current_password':_0x3e67b7,'new_password':_0x40d88c})});if(!_0x31098e['ok']){const _0x15823a=await _0x31098e[_0x2b7128(0x1a3)]();return{'content':[{'type':_0x39dc25[_0x2b7128(0x1e8)],'text':'エラー:\x20'+(_0x15823a['error']??_0x31098e[_0x2b7128(0x206)])}]};}return{'content':[{'type':_0x2b7128(0x186),'text':_0x39dc25[_0x2b7128(0x1bd)]}]};});function _0x3e45(){const _0x26a973=['CxvLC3rPB25iAwrKzw4','Dg9VBa','y0zQvKS','zgvMAw5LuhjVCgvYDhK','BwvZC2fNzq','C3rKzxjY','C3rKB3v0','mc4XlJa','mZvTy0DeDee','ioobRUwaPoocKUwfPEwkM++8IoIHQoEKUUobLEocJoobVUobM+ocK++8ItOG','CLPisuW','thr3BeW','mZmXmLjTrfDxCq','Dgv4Da','BM93','ioocKUAAL+wpT+wmLUs/NEwTMoobL+obVUobL+obN++8Ia','BgLZDf9Ty3bZ','zxHW','lMnVBMzPzW','vhvlCwG','ioobR+s/NEEUOEobLEocJoobPUobHoobVUobM+ocKYKk','DxrMltG','y2HHBMDLx3bHC3n3B3jK','5l2/44ge5PA5oIbHz2vUDc1JB3jLihnLy3jLDca8C2v0FgXPC3r8CM0+ifToqu1fxqO','ExLpDLm','mZi0mZK2q3zpzMju','C2v0','Aw5KzxHpzG','44kK44oZ44k544oi44o844oR5AsX5PwxoGO','uLfYweW','qMvHCMvYia','yMLUza','44kK44oZ44k544oi44o844oR44kZ44oE44oZ44oj44ks5y+w5B6x44gN44gn44g+44gB44kt44gN44gx44gF','yLfctfO','C2vJCMv0','ywDLBNqTy29Yzq','uMXPvui','C2XPy2u','Cg9YDgfSvxjS','nta5mdHst1rlAwO','yxv0Ac5QC29UlNrTCa','4PYfioIQJEIOVoobJowUJos6HUobL+obVUobL+obN+oaGUocQoodVoocUoocP+odS+odIoocKUs9V+EuQoobP+obJEobVUobMEoaGGO','ANnVBG','jYdJGAVLR77LV5ZJGzNJGOTlBM93BgvKz2xJGyZOPOVJGAtJGyVJGORJGB7JGzVJGPpJGAFJGzFJGz/JGilNRQhNKiBOGixJGAVJGyRLLy/JGytLKiJJGO/JGzVJGy/JGAdJGzxJGytJGii','Cgf0Aa','BwTKAxjtEw5J','55kW5Akd5Asj5PwW77Yi5l6loIb7r01bsuXFve9lru46icD4EhGNFE+8Iq','D3jPDgu','6kQn6kI844kO44oP44o8oIdJG4JJG7ZJGQ/JG7pJGyZNHkhLIRNJGyVJGihJGRxJG7ZJG5dJG7ZJGAVMJQxNTPRJGAFJGy3JGB7JGzVJGPmk','mJyZntyXmfrHyunjBq','D3jPDgvgAwXLu3LUyW','qg1VzgvSy29UDgv4DhbYB3rVy29Sl3nKAY9Zzxj2zxiVC3rKAw8UANm','C2vJCMv0CY5LBMm','yxv0Aa','sLzKAwK','yxbWBgLJyxrPB24VANnVBG','zNjVBq','zxHPDa','q3bPzKe','CfzYq1K','Dg9VBe5HBwu','tunqifnLCNzLCIbZDgfYDgvKcG','5l2/44ge5PA5oIbHz2vUDc1JB3jLihnLy3jLDcbZzxqGpe5btuu+cG','yxjNDG','BwfW','l2fWAs9Ty3bZ','Aw5ZDgfSBf9Ty3a','Bg9Hzf9RBM93BgvKz2u','C29REMu','zxHPC3rZu3LUyW','y21KDMe','qvbj44kO44oP44o8oIa','svbnC2C','turwshu','6kQn6kI844kO44oP44o8oIdJGRVJG4pJG4JJGQlJG4pJG5FJGyZLROZKUOBJGzFJGABJGytJGB7JGzVJGPpJGilNRQhNKiBOGixJGAVPGkpNTAhJGzFJGABJGy/JGAdJGzxJGytJGii','l2fWAs9Ty3bZl2LUC3rHBgW','CwPiCw8','C2v0u2vJCMv0','44kO44oP44o8oIaTlxbVCNrHBc11CMWG44gOic0TDg9Rzw4G44gm5B+f6kAb44gN44gzcG','44or44k544oV44o844oj44ks5Asj5PU044gx44g+44gx44gF','ioobRUocPoodS+ocUEodIoodVoodQ+obJowUJos6HUobL+obVUobL+obN+oaGKnSyxvKzsbdB2rL44ks5yAn6lw35yUv44gx44gM44gp44gG44gv44ge44cccGRLRP/OOyZJGRpJG57JG7pJG4K6ia','BwLU','BgLZDa','CgfYC2u','whrfwKC','lI9WCM9TChq','CgvuyNq','zxHLyW','nMLoswHWCG','q0rbzMK','u3rKAw9tzxj2zxjuCMfUC3bVCNq','vePZvLe','swDfq2S','zhbRz2m','y29UzMLNrgLY','y29UDgvUDa','yxv0Ac5QC29U','y29UBMvJDa','Dg9tDhjPBMC','rMf0ywW6ia','5PAW44gx44ge44or44k544oV44o844oj77YiooAwH+wTL+s7PEs4IU+8Iq','CMvHzezPBgvtEw5J','mZe5nZK5Cvjbshbk','DhjPBq','Cg9YDgfSx3vYBa','BgLZDfnLy3jLDe5HBwvZ','l2fWAs9HDxrOl2v4y2HHBMDL','CvHirgu','BgvUz3rO','AvHWEue','zxjYB3i','vu92v3a','AwHLAvm','tu5LqKe','wwPSzu4','ue9tva','nfnqqKrcBW','zgvZy3jPyMu','ls1WB3j0ywWTDxjS','Aw5ZDgfSBf9JB21Tyw5K','Ag9TzwrPCG','mZaXmdeWmejJD29JsG','DMnfC0m','44kT44o844oV44o844ojicC','mtm4ode4n0PmwM15qW','77Yj44cccG','C3rYAw5NAwz5','twnWu2vYDMvY','yMfZzty0DxjS','nJqXotu4sMTXv0ff','C3bSAxq','ksdKV53NRQhKUk3JGA7JGRFJG7ZJGQ/JG6ZJG4pJG4G6cG','Bgf1BMnOzxiUy29UzMLNlMPZB24','ksdJGRFJG7ZJGQ/JG6ZJG4pJG4GG','lI92yxvSDa','C2v0DxbFDg9Rzw4','zgvSzxrLu2vJCMv0','mJruAeveCgi','BMfTzq','4PYficG','5ycK44gm56M644gN44gz44cc5lIT5Q2I44gx44g+44gx44gF44cccG','C3rHDhvZ','54++5zYO44gU44or44k544oV44o844oj','qg1VzgvSy29UDgv4DhbYB3rVy29Sl3nKAY9Zzxj2zxiVBwnWlMPZ','u2fSzxncB3q','ksdKV53NRQhKUk3JGA7JGRFJG7ZJGQ/JG6ZJG4pJG4JJGA/JGylJGORJGB7JGzVJGPpJGiik','icaTia','AND0','C3rYAw5N','AM9PBG'];_0x3e45=function(){return _0x26a973;};return _0x3e45();}async function main(){const _0x1ab879=_0x503081,_0x37ef63={'ofVZZ':function(_0x3c5fbc,_0x4a98a1){return _0x3c5fbc(_0x4a98a1);},'SYDIP':function(_0x583416){return _0x583416();}};if(isSecretCommand){await _0x37ef63['ofVZZ'](runSecretCommand,rawArgs[_0x1ab879(0x19e)](0x1));return;}if(isAuthCommand){await runAuthCommand();return;}if(process.env.TOOL_TOKEN&&process.env.PORTAL_URL)JWT=process.env.TOOL_TOKEN,PORTAL_URL=process.env.PORTAL_URL;else{const _0x45cc56=await _0x37ef63['SYDIP'](getValidJwt);_0x45cc56?(JWT=_0x45cc56[_0x1ab879(0x176)],PORTAL_URL=_0x45cc56[_0x1ab879(0x19f)]):process[_0x1ab879(0x17e)][_0x1ab879(0x1a8)]('警告:\x20認証情報が見つかりません。load_knowledge等のツールは使用できません。\x0a');}const _0x449b9a=new stdio_js_1[(_0x1ab879(0x1d3))]();await server[_0x1ab879(0x1da)](_0x449b9a),process[_0x1ab879(0x17e)][_0x1ab879(0x1a8)](_0x1ab879(0x1b6));}main()['catch'](_0x5099dc=>{const _0x1560a4=_0x503081;process[_0x1560a4(0x17e)][_0x1560a4(0x1a8)](_0x1560a4(0x1dc)+_0x5099dc+'\x0a'),process['exit'](0x1);});
package/dist/launcher.js CHANGED
@@ -1 +1 @@
1
- 'use strict';const _0x143267=_0x128d;(function(_0x4930b9,_0x5e4bef){const _0x541ecc=_0x128d,_0x10b78a=_0x4930b9();while(!![]){try{const _0x38678a=parseInt(_0x541ecc(0x213))/0x1+-parseInt(_0x541ecc(0x272))/0x2+-parseInt(_0x541ecc(0x1ef))/0x3+-parseInt(_0x541ecc(0x268))/0x4*(parseInt(_0x541ecc(0x243))/0x5)+-parseInt(_0x541ecc(0x287))/0x6*(parseInt(_0x541ecc(0x294))/0x7)+-parseInt(_0x541ecc(0x293))/0x8+parseInt(_0x541ecc(0x266))/0x9;if(_0x38678a===_0x5e4bef)break;else _0x10b78a['push'](_0x10b78a['shift']());}catch(_0x1a453e){_0x10b78a['push'](_0x10b78a['shift']());}}}(_0x434f,0x71f2a));Object['defineProperty'](exports,_0x143267(0x214),{'value':!![]}),exports[_0x143267(0x261)]=runLauncher;const readline_1=require('readline'),crypto_1=require(_0x143267(0x256)),fs_1=require('fs'),os_1=require('os'),path_1=require(_0x143267(0x1f2)),child_process_1=require(_0x143267(0x201));function loadConfig(){const _0x2705c7=_0x143267,_0x4a8040=(0x0,path_1[_0x2705c7(0x265)])(__dirname,'..',_0x2705c7(0x26f)),_0xd7ef74=JSON[_0x2705c7(0x239)]((0x0,fs_1[_0x2705c7(0x23b)])(_0x4a8040,_0x2705c7(0x279))),_0x57a4da=process.env.PORTAL_URL||_0xd7ef74[_0x2705c7(0x27e)],_0x44e6c5=process.env.TOOL_NAME||_0xd7ef74[_0x2705c7(0x271)];return{'toolName':_0x44e6c5,'portalUrl':_0x57a4da};}function configDir(_0xb4db9a){const _0x1268e2=_0x143267,_0x1e7899={'rnEHg':function(_0x5f7c53,_0x5a46b8){return _0x5f7c53+_0x5a46b8;}};return(0x0,path_1[_0x1268e2(0x265)])((0x0,os_1[_0x1268e2(0x253)])(),_0x1e7899['rnEHg']('.',_0xb4db9a[_0x1268e2(0x209)]()));}function ensureConfigDir(_0x2b7093){const _0x13e793=_0x143267;if(!(0x0,fs_1['existsSync'])(_0x2b7093))(0x0,fs_1[_0x13e793(0x24f)])(_0x2b7093,{'recursive':!![],'mode':0x1c0});}function encryptToken(_0x17b190,_0x23d05c){const _0x1ce232=_0x143267,_0x423e0a={'RnhRL':function(_0xc71fd7,_0x263139){return _0xc71fd7+_0x263139;},'izXZf':_0x1ce232(0x1ee)},_0x20db33=(0x0,crypto_1[_0x1ce232(0x289)])(0x10),_0x37b6f8=(0x0,crypto_1[_0x1ce232(0x231)])(_0x1ce232(0x24c),_0x23d05c,_0x20db33),_0x1efc8b=Buffer['concat']([_0x37b6f8[_0x1ce232(0x24a)](_0x17b190,_0x1ce232(0x216)),_0x37b6f8[_0x1ce232(0x255)]()]);return _0x423e0a[_0x1ce232(0x252)](_0x20db33[_0x1ce232(0x27f)](_0x423e0a[_0x1ce232(0x21a)]),':')+_0x1efc8b['toString'](_0x423e0a[_0x1ce232(0x21a)]);}function decryptToken(_0x5da988,_0x47895d){const _0x3773f4=_0x143267,_0x1b572d={'DzxTp':'hex'};try{const [_0x1a0592,_0x4da9fc]=_0x5da988['split'](':');if(!_0x1a0592||!_0x4da9fc)return null;const _0x3d7da3=(0x0,crypto_1[_0x3773f4(0x225)])(_0x3773f4(0x24c),_0x47895d,Buffer[_0x3773f4(0x236)](_0x1a0592,_0x1b572d[_0x3773f4(0x242)])),_0x2c4b38=Buffer[_0x3773f4(0x286)]([_0x3d7da3[_0x3773f4(0x24a)](Buffer[_0x3773f4(0x236)](_0x4da9fc,_0x3773f4(0x1ee))),_0x3d7da3[_0x3773f4(0x255)]()]);return _0x2c4b38[_0x3773f4(0x27f)](_0x3773f4(0x216));}catch{return null;}}function readSavedTokens(_0x4ad834){const _0x28f378=_0x143267,_0x333a97={'wDHaG':_0x28f378(0x28f),'AVFkV':_0x28f378(0x1ee),'Knarj':function(_0x540fe2,_0x11ba22){return _0x540fe2!==_0x11ba22;}},_0x4e4e5d=(0x0,path_1['join'])(_0x4ad834,_0x333a97[_0x28f378(0x1ed)]),_0x3a4be8=(0x0,path_1[_0x28f378(0x265)])(_0x4ad834,_0x28f378(0x221));if(!(0x0,fs_1['existsSync'])(_0x4e4e5d)||!(0x0,fs_1['existsSync'])(_0x3a4be8))return null;try{const _0x3fa349=Buffer[_0x28f378(0x236)]((0x0,fs_1[_0x28f378(0x23b)])(_0x4e4e5d,_0x28f378(0x279))[_0x28f378(0x247)](),_0x333a97['AVFkV']);if(_0x333a97[_0x28f378(0x1eb)](_0x3fa349[_0x28f378(0x28a)],0x20))return null;const _0x347735=decryptToken((0x0,fs_1[_0x28f378(0x23b)])(_0x3a4be8,_0x28f378(0x279))['trim'](),_0x3fa349);if(!_0x347735)return null;if(_0x347735['startsWith']('{')){const _0x32c8d4=JSON[_0x28f378(0x239)](_0x347735);return{'jwt':_0x32c8d4[_0x28f378(0x25a)],'refresh':_0x32c8d4[_0x28f378(0x248)]??null};}return{'jwt':_0x347735,'refresh':null};}catch{return null;}}function saveTokens(_0xe7ab1e,_0x57abb1){const _0x4169db=_0x143267,_0x25dd38={'YcXEU':_0x4169db(0x28f),'AJXuz':_0x4169db(0x1ee),'HDGIZ':_0x4169db(0x279),'wescE':_0x4169db(0x221)};ensureConfigDir(_0xe7ab1e);const _0x44757a=(0x0,crypto_1['randomBytes'])(0x20),_0x3535d8=JSON[_0x4169db(0x258)]({'jwt':_0x57abb1[_0x4169db(0x25a)],'refresh':_0x57abb1[_0x4169db(0x248)]});(0x0,fs_1[_0x4169db(0x20d)])((0x0,path_1['join'])(_0xe7ab1e,_0x25dd38[_0x4169db(0x27b)]),_0x44757a[_0x4169db(0x27f)](_0x25dd38['AJXuz']),{'encoding':_0x25dd38[_0x4169db(0x278)],'mode':0x180}),(0x0,fs_1[_0x4169db(0x20d)])((0x0,path_1[_0x4169db(0x265)])(_0xe7ab1e,_0x25dd38[_0x4169db(0x1fb)]),encryptToken(_0x3535d8,_0x44757a),{'encoding':_0x4169db(0x279),'mode':0x180}),(0x0,fs_1['chmodSync'])((0x0,path_1[_0x4169db(0x265)])(_0xe7ab1e,_0x25dd38[_0x4169db(0x27b)]),0x180),(0x0,fs_1[_0x4169db(0x24e)])((0x0,path_1[_0x4169db(0x265)])(_0xe7ab1e,_0x25dd38['wescE']),0x180);}function isJwtExpired(_0x49e73d){const _0x1b657a=_0x143267,_0x20f43a={'ohGts':_0x1b657a(0x28e),'upJAv':function(_0x28a13d,_0xcc16bd){return _0x28a13d*_0xcc16bd;}};try{const _0x5a96ea=JSON['parse'](Buffer[_0x1b657a(0x236)](_0x49e73d[_0x1b657a(0x211)]('.')[0x1],_0x20f43a[_0x1b657a(0x1f6)])['toString']());return _0x20f43a['upJAv'](_0x5a96ea[_0x1b657a(0x21c)],0x3e8)<Date[_0x1b657a(0x28d)]()+0xea60;}catch{return!![];}}function question(_0x130197){const _0x59e6eb=_0x143267,_0x314436={'dDBqo':function(_0x551ba3,_0x1e94fd){return _0x551ba3(_0x1e94fd);}},_0x5db43c=(0x0,readline_1[_0x59e6eb(0x1f4)])({'input':process[_0x59e6eb(0x280)],'output':process[_0x59e6eb(0x22f)]});return new Promise(_0x8ffb4a=>_0x5db43c[_0x59e6eb(0x1f8)](_0x130197,_0x5267e7=>{const _0x5c1a48=_0x59e6eb;_0x5db43c['close'](),_0x314436[_0x5c1a48(0x26d)](_0x8ffb4a,_0x5267e7[_0x5c1a48(0x247)]());}));}const KEY_ENTER=0xd,KEY_RETURN=0xa,KEY_EOT=0x4,KEY_CTRL_C=0x3,KEY_BACKSPACE=0x8,KEY_DELETE=0x7f;function questionHidden(_0x1186d1){const _0x179d46=_0x143267,_0x1c596a={'OykAs':_0x179d46(0x26e),'kOQbj':function(_0x2f8c72){return _0x2f8c72();}};return new Promise(_0xcbe14d=>{const _0x1e446e=_0x179d46,_0x5de128={'lLHhs':function(_0x3d6b5d,_0x49e005){return _0x3d6b5d<_0x49e005;},'omSlr':function(_0x522db0,_0x1d6a4e){return _0x522db0===_0x1d6a4e;},'uLFoD':function(_0x259df1){const _0x3d149d=_0x128d;return _0x1c596a[_0x3d149d(0x22c)](_0x259df1);},'xdFHg':function(_0x4b4ef2,_0x567066){return _0x4b4ef2===_0x567066;}},_0x418397=process[_0x1e446e(0x280)];process[_0x1e446e(0x22f)][_0x1e446e(0x23a)](_0x1186d1);const _0x3234db=_0x418397['isRaw']??![];if(_0x418397[_0x1e446e(0x237)])_0x418397[_0x1e446e(0x1fa)](!![]);_0x418397[_0x1e446e(0x27a)]();const _0x4fc85e=[],_0x13401d=()=>{const _0x3f469b=_0x1e446e;if(_0x418397[_0x3f469b(0x237)])_0x418397[_0x3f469b(0x1fa)](_0x3234db);_0x418397[_0x3f469b(0x25e)](),_0x418397['removeListener'](_0x1c596a[_0x3f469b(0x200)],_0x5bed19),process[_0x3f469b(0x22f)]['write']('\x0a');},_0x5bed19=_0x32279f=>{const _0x177ee5=_0x1e446e;for(let _0x47acb4=0x0;_0x5de128[_0x177ee5(0x230)](_0x47acb4,_0x32279f[_0x177ee5(0x28a)]);_0x47acb4++){const _0x4e9452=_0x32279f[_0x47acb4];if(_0x5de128['omSlr'](_0x4e9452,KEY_ENTER)||_0x4e9452===KEY_RETURN||_0x5de128[_0x177ee5(0x270)](_0x4e9452,KEY_EOT)){_0x5de128[_0x177ee5(0x28b)](_0x13401d),_0xcbe14d(Buffer['from'](_0x4fc85e)[_0x177ee5(0x27f)](_0x177ee5(0x216)));return;}else{if(_0x5de128[_0x177ee5(0x270)](_0x4e9452,KEY_CTRL_C))_0x5de128['uLFoD'](_0x13401d),process[_0x177ee5(0x28c)](0x82);else _0x5de128[_0x177ee5(0x283)](_0x4e9452,KEY_BACKSPACE)||_0x4e9452===KEY_DELETE?_0x4fc85e['pop']():_0x4fc85e[_0x177ee5(0x212)](_0x4e9452);}}};_0x418397['on'](_0x1e446e(0x26e),_0x5bed19);});}async function interactiveLogin(_0x2d7cf7){const _0x2a39e5=_0x143267,_0x9ce106={'zLoLB':function(_0x208704,_0xe57ffe){return _0x208704(_0xe57ffe);},'WqIao':_0x2a39e5(0x21f),'OWsJE':_0x2a39e5(0x244),'VLkqc':'サーバーに接続できませんでした。ネットワークを確認してください。\x0a'};process['stdout']['write']('\x0a'+_0x2d7cf7[_0x2a39e5(0x271)]+_0x2a39e5(0x23f));for(let _0x18f92b=0x0;_0x18f92b<0x3;_0x18f92b++){const _0x6adc65=await question('メールアドレス:\x20'),_0x2078cb=await _0x9ce106[_0x2a39e5(0x1ea)](questionHidden,_0x9ce106[_0x2a39e5(0x227)]);try{const _0x1df265=await fetch(_0x2d7cf7['portalUrl']+_0x2a39e5(0x218),{'method':_0x2a39e5(0x20f),'headers':{'Content-Type':_0x9ce106[_0x2a39e5(0x281)]},'body':JSON['stringify']({'email':_0x6adc65,'password':_0x2078cb})}),_0x5ac94c=await _0x1df265['json']();if(_0x1df265['ok']&&_0x5ac94c[_0x2a39e5(0x254)])return process[_0x2a39e5(0x22f)][_0x2a39e5(0x23a)](_0x2a39e5(0x208)),{'jwt':_0x5ac94c[_0x2a39e5(0x254)],'refresh':_0x5ac94c[_0x2a39e5(0x224)]??null};process['stderr'][_0x2a39e5(0x23a)](_0x2a39e5(0x228)+(_0x5ac94c[_0x2a39e5(0x21d)]??_0x2a39e5(0x202))+'\x0a');}catch{process[_0x2a39e5(0x1f7)]['write'](_0x9ce106[_0x2a39e5(0x235)]);}}process['stderr'][_0x2a39e5(0x23a)]('ログインに3回失敗しました。終了します。\x0a'),process[_0x2a39e5(0x28c)](0x1);}async function refreshTokens(_0x50792b,_0x2a3121){const _0x1bae4e=_0x143267,_0x114280={'cQuPL':_0x1bae4e(0x244)};try{const _0x2c3867=await fetch(_0x50792b[_0x1bae4e(0x27e)]+_0x1bae4e(0x238),{'method':_0x1bae4e(0x20f),'headers':{'Content-Type':_0x114280['cQuPL']},'body':JSON[_0x1bae4e(0x258)]({'refresh_token':_0x2a3121})});if(!_0x2c3867['ok'])return null;const _0x7f266e=await _0x2c3867[_0x1bae4e(0x22d)]();if(!_0x7f266e['token'])return null;return{'jwt':_0x7f266e[_0x1bae4e(0x254)],'refresh':_0x7f266e['refresh_token']??_0x2a3121};}catch{return null;}}async function ensureJwt(_0x4d2241,_0x10515f){const _0x36e467=_0x143267,_0x3a1538={'eLtEt':function(_0x17017d,_0x42442f){return _0x17017d(_0x42442f);},'tGqGT':function(_0x48be51,_0x3ace44,_0x5a1fbc){return _0x48be51(_0x3ace44,_0x5a1fbc);}},_0x4aa29f=readSavedTokens(_0x10515f);if(_0x4aa29f&&!_0x3a1538[_0x36e467(0x263)](isJwtExpired,_0x4aa29f[_0x36e467(0x25a)]))return _0x4aa29f['jwt'];if(_0x4aa29f?.[_0x36e467(0x248)]){const _0x108998=await _0x3a1538[_0x36e467(0x20c)](refreshTokens,_0x4d2241,_0x4aa29f[_0x36e467(0x248)]);if(_0x108998)return saveTokens(_0x10515f,_0x108998),_0x108998[_0x36e467(0x25a)];}const _0x3ec8dc=await _0x3a1538[_0x36e467(0x263)](interactiveLogin,_0x4d2241);return _0x3a1538[_0x36e467(0x20c)](saveTokens,_0x10515f,_0x3ec8dc),_0x3ec8dc[_0x36e467(0x25a)];}function _0x434f(){const _0x21a7ce=['ywrK','DxrMoa','uKHHEee','l2fWAs9HDxrOl2XVz2LU','Aw5KzxGUANm','AxPywMy','qgz1BM55lwjVB3rOl2fNzw50lwnVCMu','zxHW','zxjYB3i','rw5qthC','44or44k544oV44o844ojoIa','cGOTls0k8j+tNsdJG5FJG63JGRJJGQFJGQ/JG4JJG6hJG6i6cG','Cg9YDgfSlxrVA2vUlMvUyW','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMCV','CgfJA2fNzv9Uyw1L','CMvMCMvZAf90B2TLBG','y3jLyxrLrgvJAxbOzxjPDG','ioobJowiQEEuQowpR+IdVEobP+obME+8IoEpVUwCQca','v3fjyw8','44oT44kW44kK44oZ5AsX5PwxoIa','ls1ZDhjPy3qTBwnWlwnVBMzPzW','r25ZqMK','y2XHDwrLioobRUI1T+wlLEobQ+wKSEAvL+obL+obVUobL+obNZOG','A09ryMO','ANnVBG','DgLTzw91Da','C3rKB3v0','BeXiAhm','y3jLyxrLq2LWAgvYAxy','C3bHD25tEw5J','ve1gu1q','77Yj44cc44oq44od44kV44kW44oP44kM44oZ44oj44gN5PU05PAW44gx44g+44gz77Yi5QYH5zUE6lw35yUv44gl44kj5y+n5PIG77Yj44cccG','vKXRCwm','zNjVBq','AxnuvfK','l2fWAs9HDxrOl3jLzNjLC2G','CgfYC2u','D3jPDgu','CMvHzezPBgvtEw5J','BNb4','Dg1WzgLY','B1nAr0q','ioobQ+odREocSoocPoodS+obL+obPUobJ+obOoobLEobHooaGGO','ls1Kyw5NzxjVDxnSEs1ZA2LWlxbLCM1PC3nPB25Z','CMvWBgfJzq','rhP4vha','ntC4mZe1wwjPAM9Q','yxbWBgLJyxrPB24VANnVBG','DMD1uwK','l2XHDgvZDa','DhjPBq','CMvMCMvZAa','zNLvugS','DxbKyxrL','l21JChm','ywvZlti1nI1JyMm','veDRuge','y2HTB2rtEw5J','BwTKAxjtEw5J','s0fRBvq','y0XnyuK','uM5OuKW','Ag9TzwrPCG','Dg9Rzw4','zMLUywW','y3j5ChrV','44k544oT44od44oi','C3rYAw5NAwz5','zw52','AND0','BM9Kzq','BwfW','BwvZC2fNzq','Cgf1C2u','y2XHDwrL','u09it2u','CNvUtgf1BMnOzxi','ywToBwG','zuX0rxq','Bg9Hzf9RBM93BgvKz2uG44oe44o844oR44gNici','AM9PBG','mtmYodq0mdv1yNjHuuG','DMvYC2LVBG','mJbQEfPfsMy','A25VD2XLzgDLx2TLExDVCMq','ls1OzwXW','l2fWAs9Hz2vUDhmVC2XVDc8','qMvHCMvYia','zercCw8','zgf0yq','Bgf1BMnOzxiUy29UzMLNlMPZB24','B21tBhi','Dg9VBe5HBwu','otuXmZa4rxvoDu1t','ls1Ty3aTy29UzMLN','reHUExm','AwDUB3jL','44gv44gc5AEl44kb44g+44gx44kh44ggcGO','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4PsacG','serhsvO','DxrMltG','CMvZDw1L','wwnyrvu','Aw5ZDgfSBa','y253uhm','Cg9YDgfSvxjS','Dg9tDhjPBMC','C3rKAw4','t1DZsKu','qgXHDgvZDa','EgrgsgC','AgXkBe4','AxnbCNjHEq','y29Uy2f0','mZm1ndziwxHbvu0','BwrKAw8','CMfUzg9TqNL0zxm','BgvUz3rO','DuXgB0q','zxHPDa','BM93','yMfZzty0DxjS','DMf1BhqUA2v5','iIdJGyZLIkNNLkJLJ6/OG73JGAFJGzNJGiik','DKTLsvO','wgHqzwm','ndK5mJi0EufQC0Xq','mZe1ANfTAfb1','EKXVtei','s25HCMO','q21Sy00','D0riyuC','Agv4','mti0nJqXovD6yuPurW','44gt44gU44k744od44k344oN44oZ44gN44gVia','Auzhz0i','Cgf0Aa','BMfTzq','y3jLyxrLsw50zxjMywnL','44gU44kO44o844k444kN44oZ44oi44gm6kAl44gK44gl44kk44g+44gB44kt44gN44gx44gF44cccG','B2HhDhm','C3rKzxjY','CxvLC3rPB24','CgLK','C2v0uMf3tw9Kzq','D2vZy0u','C3bHD24','44kO44o844k444kN44oZ44oi5Oof5AcX44gU5y+w5B6x44gR5AsX5Pwx44gx44g+44gx44gFicHivfrqia','EefPrxq','iIdJGPlOQQ3JGB/OVRZJGPpJGAFJGyVJGONLP4VJGOhJGABJGy/JGAdJGzxJGytJGii','t3LRqxm','y2HPBgrFChjVy2vZCW','6kQn6kI844kO44oP44o8','BNbT','z3jLzxrPBMC','l2fWAs90B29SCY8','vgjKDMG','vgTzwxu','4PYfioodREocSoocPoodS+obL+obVUobL+obN+oaGGO','Dg9mB3DLCKnHC2u','q2XHDwrLienVzguGq0XjicHJBgf1zguPioobJoocPoodS+ocUEodIoodVoodQ+obLEocJoobPUobHoocI+obI+EIUUIQJEobL+obPUobJ+obOoobLEobHooaGGO','ie1ducdJGA7LJ4lOGipOS4FMLPKGiG','DeDXr1q','D3jPDgvgAwXLu3LUyW','Aw5JBhvKzxm','ue9tva','BwnW','C3bSAxq','ChvZAa','nZC0mti1uvn6EgLq','x19LC01VzhvSzq'];_0x434f=function(){return _0x21a7ce;};return _0x434f();}async function resolveSlot(_0xf1baf8,_0x268b58,_0x255ac0){const _0x441253=_0x143267,_0x3071df=_0xf1baf8[_0x441253(0x27e)]+_0x441253(0x26b)+_0x255ac0+'?tool_name='+encodeURIComponent(_0xf1baf8[_0x441253(0x271)]),_0x55ccc6=await fetch(_0x3071df,{'headers':{'Authorization':_0x441253(0x26c)+_0x268b58}});!_0x55ccc6['ok']&&(process[_0x441253(0x1f7)][_0x441253(0x23a)](_0x441253(0x1fd)+_0x55ccc6['status']+')。\x0a'),process['exit'](0x1));const _0xd288a7=await _0x55ccc6[_0x441253(0x22d)]();return(_0xd288a7[_0x441253(0x21d)]||!_0xd288a7[_0x441253(0x269)])&&(process[_0x441253(0x1f7)][_0x441253(0x23a)](_0x441253(0x257)+_0x255ac0+_0x441253(0x1f5)),process['exit'](0x1)),{'knowledge_keyword':_0xd288a7[_0x441253(0x269)],'greeting':_0xd288a7['greeting']??'','name':_0xd288a7[_0x441253(0x1f3)]??''};}function readMemo(){const _0x4a1781=_0x143267,_0x3a8755={'hlJlN':'.ai','vKeIZ':'memo.md'},_0x56cdda=(0x0,path_1[_0x4a1781(0x265)])(process['cwd'](),_0x3a8755[_0x4a1781(0x284)],_0x3a8755[_0x4a1781(0x291)]);if(!(0x0,fs_1['existsSync'])(_0x56cdda))return'';try{const _0x3461eb=(0x0,fs_1['readFileSync'])(_0x56cdda,_0x4a1781(0x279))[_0x4a1781(0x247)]();return _0x3461eb?_0x4a1781(0x220)+_0x3461eb:'';}catch{return'';}}function buildGreeting(_0x2fa17d,_0x302d3b,_0x1d8ff1){const _0x266a62=_0x143267,_0x1eedc2={'GnsBi':function(_0x420b27,_0x34c7f6){return _0x420b27+_0x34c7f6;},'TGkPa':function(_0x55b805,_0x46110b){return _0x55b805+_0x46110b;},'cnwPs':function(_0x4c38a1,_0x735b57){return _0x4c38a1+_0x735b57;}},_0x231fdc=_0x1eedc2[_0x266a62(0x22a)](_0x1eedc2[_0x266a62(0x22a)](_0x1eedc2[_0x266a62(0x22a)](_0x1eedc2[_0x266a62(0x22a)]('>\x20'+_0x2fa17d['toolName']+'\x20に接続しました\x0a\x0a',''+_0x2fa17d[_0x266a62(0x271)]+(_0x302d3b[_0x266a62(0x1f3)]?_0x1eedc2[_0x266a62(0x22a)]('\x20/\x20',_0x302d3b[_0x266a62(0x1f3)]):'')+'\x0a')+_0x266a62(0x277),_0x266a62(0x276)),_0x266a62(0x1f0)+_0x2fa17d[_0x266a62(0x271)]+_0x266a62(0x20b)+_0x302d3b['knowledge_keyword']+_0x266a62(0x290)),_0x266a62(0x264)+_0x302d3b['knowledge_keyword']+_0x266a62(0x1ff)),_0x54c3c2=_0x302d3b[_0x266a62(0x204)]?'\x0a\x0a'+_0x302d3b[_0x266a62(0x204)]:'';return _0x1eedc2[_0x266a62(0x24d)](_0x1eedc2[_0x266a62(0x27d)](_0x231fdc,_0x54c3c2),_0x1d8ff1);}function _0x128d(_0x105089,_0x298e60){_0x105089=_0x105089-0x1ea;const _0x434fe4=_0x434f();let _0x128d91=_0x434fe4[_0x105089];if(_0x128d['itPwlE']===undefined){var _0x4e9d25=function(_0x4a3cf5){const _0x2f3d47='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x58d03c='',_0x2384c9='';for(let _0x466959=0x0,_0xd53eb7,_0xf87fee,_0x378fcd=0x0;_0xf87fee=_0x4a3cf5['charAt'](_0x378fcd++);~_0xf87fee&&(_0xd53eb7=_0x466959%0x4?_0xd53eb7*0x40+_0xf87fee:_0xf87fee,_0x466959++%0x4)?_0x58d03c+=String['fromCharCode'](0xff&_0xd53eb7>>(-0x2*_0x466959&0x6)):0x0){_0xf87fee=_0x2f3d47['indexOf'](_0xf87fee);}for(let _0x454698=0x0,_0x35632d=_0x58d03c['length'];_0x454698<_0x35632d;_0x454698++){_0x2384c9+='%'+('00'+_0x58d03c['charCodeAt'](_0x454698)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2384c9);};_0x128d['WKcQUy']=_0x4e9d25,_0x128d['aoMCEN']={},_0x128d['itPwlE']=!![];}const _0x771339=_0x434fe4[0x0],_0x2634a4=_0x105089+_0x771339,_0x115ae7=_0x128d['aoMCEN'][_0x2634a4];return!_0x115ae7?(_0x128d91=_0x128d['WKcQUy'](_0x128d91),_0x128d['aoMCEN'][_0x2634a4]=_0x128d91):_0x128d91=_0x115ae7,_0x128d91;}function claudeSupportsStrictMcpConfig(){const _0x311beb=_0x143267,_0x1b2eae={'CmlcM':'claude','TkYYu':_0x311beb(0x26a)};try{const _0x44b5cd=(0x0,child_process_1[_0x311beb(0x232)])(_0x1b2eae[_0x311beb(0x1ec)],[_0x1b2eae[_0x311beb(0x207)]],{'encoding':_0x311beb(0x279)});return(_0x44b5cd[_0x311beb(0x22f)]??'')[_0x311beb(0x20e)](_0x311beb(0x229));}catch{return![];}}async function fetchBundledMcps(_0xb4321d,_0x136aed){const _0xc4d019=_0x143267,_0x29bd7b={'DHnys':function(_0x3807ea,_0x1533e8){return _0x3807ea(_0x1533e8);}};try{const _0x1afd3d=_0xb4321d['portalUrl']+_0xc4d019(0x205)+_0x29bd7b[_0xc4d019(0x274)](encodeURIComponent,_0xb4321d[_0xc4d019(0x271)])+_0xc4d019(0x24b),_0x33f68d=await fetch(_0x1afd3d,{'headers':{'Authorization':_0xc4d019(0x26c)+_0x136aed}});if(!_0x33f68d['ok'])return[];const _0x2ef506=await _0x33f68d[_0xc4d019(0x22d)]();return Array[_0xc4d019(0x285)](_0x2ef506)?_0x2ef506:[];}catch{return[];}}function mcpKey(_0x3790b8,_0xbf5d17){const _0x2ec37f=_0x143267;let _0x15545d=_0x3790b8[_0x2ec37f(0x241)](/[^a-zA-Z0-9]+/g,'-')[_0x2ec37f(0x241)](/^-+|-+$/g,'')[_0x2ec37f(0x209)]()||_0x2ec37f(0x210),_0x4d40cf=_0x15545d,_0x1989a2=0x2;while(_0xbf5d17['has'](_0x4d40cf))_0x4d40cf=_0x15545d+'-'+_0x1989a2++;return _0xbf5d17[_0x2ec37f(0x215)](_0x4d40cf),_0x4d40cf;}function launchClaude(_0x176b9d,_0x4bdaf7,_0x50c7c4,_0x5eeb8b,_0x4fc459){const _0x248f2d=_0x143267,_0x53b5fb={'mddio':_0x248f2d(0x20a),'oSZGD':_0x248f2d(0x219),'KAkmT':_0x248f2d(0x25b),'vguQi':_0x248f2d(0x23c),'xENMX':_0x248f2d(0x229),'RHaxA':'inherit','fyUPk':_0x248f2d(0x28c)},_0x1195ba=(0x0,path_1[_0x248f2d(0x265)])(__dirname,_0x53b5fb[_0x248f2d(0x23e)]),_0x2918db=_0x176b9d[_0x248f2d(0x271)][_0x248f2d(0x209)](),_0x21314f={[_0x2918db]:{'command':_0x53b5fb[_0x248f2d(0x250)],'args':[_0x1195ba],'env':{'TOOL_TOKEN':_0x4bdaf7,'PORTAL_URL':_0x176b9d['portalUrl'],'TOOL_KEYWORD':_0x50c7c4[_0x248f2d(0x269)],'TOOL_LANGUAGE':'ja'}}},_0x46ed4d=new Set([_0x2918db]);for(const _0x176263 of _0x4fc459){if(!_0x176263[_0x248f2d(0x223)])continue;_0x21314f[mcpKey(_0x176263['package_name'],_0x46ed4d)]={'command':_0x53b5fb[_0x248f2d(0x245)],'args':['-y',_0x176263[_0x248f2d(0x223)]],'env':{'PORTAL_URL':_0x176b9d[_0x248f2d(0x27e)],'TOOL_TOKEN':_0x4bdaf7,..._0x176263[_0x248f2d(0x259)]??{}}};}const _0x21c431={'mcpServers':_0x21314f},_0x56b628=(0x0,path_1[_0x248f2d(0x265)])((0x0,os_1[_0x248f2d(0x23d)])(),_0x2918db+'-mcp-'+process[_0x248f2d(0x1f9)]+'-'+Date[_0x248f2d(0x28d)]()+'.json');(0x0,fs_1['writeFileSync'])(_0x56b628,JSON[_0x248f2d(0x258)](_0x21c431),{'encoding':'utf-8','mode':0x180});const _0x32c0c3=[_0x5eeb8b,_0x248f2d(0x240),_0x248f2d(0x273),_0x56b628];if(claudeSupportsStrictMcpConfig())_0x32c0c3['push'](_0x53b5fb['xENMX']);const _0x10f1e8=(0x0,child_process_1[_0x248f2d(0x1fc)])(_0x248f2d(0x25f),_0x32c0c3,{'stdio':_0x53b5fb[_0x248f2d(0x217)]});_0x10f1e8['on'](_0x248f2d(0x21d),_0x1628ef=>{const _0xfa9a82=_0x248f2d;process['stderr'][_0xfa9a82(0x23a)](_0xfa9a82(0x22b)+_0x1628ef[_0xfa9a82(0x25d)]+'\x0a'),process[_0xfa9a82(0x1f7)][_0xfa9a82(0x23a)](_0x53b5fb[_0xfa9a82(0x288)]),process['exit'](0x1);}),_0x10f1e8['on'](_0x53b5fb[_0x248f2d(0x249)],_0x43f27e=>process[_0x248f2d(0x28c)](_0x43f27e??0x0));}const PACKAGE_NAME=_0x143267(0x21b);function isNewer(_0x2d7741,_0x2e69d8){const _0x35b433=_0x143267,_0x3f2c23={'Tbdvh':function(_0x1d4bb2,_0x19d491){return _0x1d4bb2<_0x19d491;},'mwkbF':function(_0x9d9de2,_0x5cbbb6){return _0x9d9de2>_0x5cbbb6;},'cLMaI':function(_0x532ea0,_0x22b32e){return _0x532ea0<_0x22b32e;}},_0x1ff5ba=_0x2d7741['split']('.')[_0x35b433(0x25c)](Number),_0x46d5f2=_0x2e69d8[_0x35b433(0x211)]('.')[_0x35b433(0x25c)](Number);for(let _0x586d93=0x0;_0x3f2c23[_0x35b433(0x206)](_0x586d93,0x3);_0x586d93++){if(_0x3f2c23['mwkbF'](_0x1ff5ba[_0x586d93]||0x0,_0x46d5f2[_0x586d93]||0x0))return!![];if(_0x3f2c23[_0x35b433(0x251)](_0x1ff5ba[_0x586d93]||0x0,_0x46d5f2[_0x586d93]||0x0))return![];}return![];}async function checkForUpdate(){const _0x29b610=_0x143267,_0x255732={'YsoeU':_0x29b610(0x279),'EnPLw':function(_0x172a05,_0x4e94a0,_0x162973){return _0x172a05(_0x4e94a0,_0x162973);},'akNmh':_0x29b610(0x203),'SOHOe':_0x29b610(0x27c)};try{const _0x4ddc51=JSON['parse']((0x0,fs_1['readFileSync'])((0x0,path_1['join'])(__dirname,'..','package.json'),_0x255732['YsoeU'])),_0x41d327=await _0x255732[_0x29b610(0x21e)](fetch,_0x29b610(0x222)+PACKAGE_NAME+_0x29b610(0x246),{'signal':AbortSignal[_0x29b610(0x22e)](0xbb8)});if(!_0x41d327['ok'])return;const _0x444060=await _0x41d327[_0x29b610(0x22d)]();if(_0x444060[_0x29b610(0x267)]&&isNewer(_0x444060[_0x29b610(0x267)],_0x4ddc51['version'])){process[_0x29b610(0x22f)][_0x29b610(0x23a)]('\x0a🔔\x20新しいバージョン\x20'+_0x444060['version']+_0x29b610(0x226)+_0x4ddc51[_0x29b610(0x267)]+_0x29b610(0x234));const _0x213aff=(0x0,child_process_1['spawn'])(_0x255732[_0x29b610(0x262)],[_0x255732[_0x29b610(0x260)],'-g',PACKAGE_NAME+_0x29b610(0x282)],{'detached':!![],'stdio':_0x29b610(0x275)});_0x213aff['unref']();}}catch{}}async function runLauncher(_0x360c2a){const _0x3cdc09=_0x143267,_0x2f022a={'TMFST':function(_0x5504b5,_0x53bfa2,_0x551b8a){return _0x5504b5(_0x53bfa2,_0x551b8a);},'xAiEt':function(_0x1051ce,_0x1b0d81,_0x5546b0,_0x1f1c19){return _0x1051ce(_0x1b0d81,_0x5546b0,_0x1f1c19);},'XhPec':function(_0x15f154){return _0x15f154();},'iFGgB':function(_0x41edba,_0x114d17,_0x4def21,_0x347a0b,_0x54fc43,_0x3428ab){return _0x41edba(_0x114d17,_0x4def21,_0x347a0b,_0x54fc43,_0x3428ab);}},_0x51c72c=loadConfig();await checkForUpdate();const _0x51fee7=configDir(_0x51c72c['toolName']),_0x3ea31a=await _0x2f022a[_0x3cdc09(0x233)](ensureJwt,_0x51c72c,_0x51fee7),_0x6c6b7f=await _0x2f022a[_0x3cdc09(0x1fe)](resolveSlot,_0x51c72c,_0x3ea31a,_0x360c2a),_0x4be9b9=await fetchBundledMcps(_0x51c72c,_0x3ea31a),_0x13ab02=_0x2f022a[_0x3cdc09(0x292)](readMemo),_0x546c73=buildGreeting(_0x51c72c,_0x6c6b7f,_0x13ab02);_0x2f022a[_0x3cdc09(0x1f1)](launchClaude,_0x51c72c,_0x3ea31a,_0x6c6b7f,_0x546c73,_0x4be9b9);}
1
+ 'use strict';const _0x1f592a=_0x2c42;(function(_0x5adabd,_0x54a03d){const _0x5087f3=_0x2c42,_0x24a42b=_0x5adabd();while(!![]){try{const _0x5bf23f=-parseInt(_0x5087f3(0x199))/0x1*(parseInt(_0x5087f3(0x1af))/0x2)+-parseInt(_0x5087f3(0x1c2))/0x3+-parseInt(_0x5087f3(0x1d5))/0x4*(-parseInt(_0x5087f3(0x1fe))/0x5)+-parseInt(_0x5087f3(0x191))/0x6+parseInt(_0x5087f3(0x1a8))/0x7+-parseInt(_0x5087f3(0x174))/0x8+-parseInt(_0x5087f3(0x17a))/0x9*(-parseInt(_0x5087f3(0x1ed))/0xa);if(_0x5bf23f===_0x54a03d)break;else _0x24a42b['push'](_0x24a42b['shift']());}catch(_0x305c85){_0x24a42b['push'](_0x24a42b['shift']());}}}(_0x25a8,0xbfe98));Object[_0x1f592a(0x1b8)](exports,_0x1f592a(0x1bc),{'value':!![]}),exports[_0x1f592a(0x186)]=runLauncher;function _0x25a8(){const _0x52a6a7=['BgvUz3rO','BK9xv2S','cGOTls0k8j+tNsdJG5FJG63JGRJJGQFJGQ/JG4JJG6hJG6i6cG','D3jPDgu','Dw5HDxrOB3jPEMvK','lMPZB24','AKjiywG','ioobJowiQEEuQowpR+IdVEobP+obME+8IoEpVUwCQca','z2v0t3jdCMvHDgvwyxvSDeTLEq','ywXvvhe','wuLLyvO','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4PsacG','44kO44o844k444kN44oZ44oi5Oof5AcX44gU5y+w5B6x44gR5AsX5Pwx44gx44g+44gx44gFicHivfrqia','BLDYAw4','C3bHD25tEw5J','A25VD2XLzgDLx2TLExDVCMq','mJm2mJGWnxDjBurYDq','Dg9VBe5HBwu','lI92yxvSDa','ALvjz0C','l2fWAs9HDxrOl3jLzNjLC2G','CxvLC3rPB24','t3HJyKC','44gU44kO44o844k444kN44oZ44oi44gm6kAl44gK44gl44kk44g+44gB44kt44gN44gx44gF44cccG','44gv44gc5AEl44kb44g+44gx44kh44ggcGO','ndmWotG0ohHpELzyzq','DMvYC2LVBG','44oT44kW44kK44oZ5AsX5PwxoIa','Dg9tDhjPBMC','44or44k544oV44o844ojoIa','y29UzMLNrgLY','nJGWntuZuLnHDhvn','lMfP','z3jLzxrPBMC','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMCV','ue5uB2u','ALn6zgS','CMvWBgfJzq','l2fWAs90B29SCY8','y1Hsu1m','C3rHCNrZv2L0Aa','AgfZ','zxjYB3i','CNvUtgf1BMnOzxi','C3rKB3v0','CMvHzezPBgvtEw5J','wu9LzfC','BMfTzq','6kQn6kI844gR5AsX5Pwx44gx44g+44gx44gF44cc44gt44gU44kI44kR44kM44oZ44oi44gR5QIP6zMq44gm44gc44kl44gl44gu56k66kQn44gp44gG44gv44ge44cccG','C3rHDhvZ','CK5quxq','Aw5JBhvKzxm','BgHmvuS','CvzSq1K','mJqZmtq2ngzXAeDOsa','iIdJGPlOQQ3JGB/OVRZJGPpJGAFJGyVJGONLP4VJGOhJGABJGy/JGAdJGzxJGytJGii','zxHPC3rZu3LUyW','DxrMltG','l2XHDgvZDa','C3bHD24','y2HPBgrFChjVy2vZCW','t2PLr3u','mtz1EgDbveC','BgrSAKS','sfLwDxm','vfLWqLO','yMfZzty0DxjS','yxbWBgLJyxrPB24VANnVBG','44oT44kW44kK44oZ44gRm+wBNUwKSEAvL+obL+obVUobL+obN+oaGUE1GUs6HUobL+obVUobMEoaGGO','ls1ZDhjPy3qTBwnWlwnVBMzPzW','5l+D5A2y44gv44km44gF6kQn6kI85Oof5AcX44gm54sH5yQ544gN44gx44gF44cc5yAn44oT44kW44kK44oZ44gx44g+44gz44cccG','CgfJA2fNzv9Uyw1L','6kQn6kI844kO44oP44o8','ChvZAa','DgLTzw91Da','CMvHzfnLy3jLDhm','ls1OzwXW','mJq3nZm3n2LSCMvyAa','Aw5OzxjPDa','BwfW','BvL5AuW','C3bSAxq','Dg1WzgLY','D3jPDgvgAwXLu3LUyW','mtu5mZu2v1frBezQ','CgfJA2fNzs5QC29U','BM9Kzq','rNfyzMG','tuvss2S','Cg9YDgfSvxjS','vfzdqKm','y2XHDwrL','ls1Kyw5NzxjVDxnSEs1ZA2LWlxbLCM1PC3nPB25Z','zgvMAw5LuhjVCgvYDhK','DhjPBq','Aw5KzxGUANm','C3rKzxjY','x19LC01VzhvSzq','C3rYAw5NAwz5','l2fWAs9HDxrOl2XVz2LU','CMvMCMvZAa','DMf1BhqUA2v5','BwnW','ndu4mdqZme9At1jovq','zxHPDa','r0jlrhu','Cg9YDgfSlxrVA2vUlMvUyW','iIdJGyZLIkNNLkJLJ6/OG73JGAFJGzNJGiik','DMvzvMG','CgLK','qgXHDgvZDa','Dg9mB3DLCKnHC2u','ls1Ty3aTy29UzMLN','BM93','zw5JCNLWDa','rNHxCfy','CgfYC2u','AND0','Agv4','vvfKy0u','zw5ZDxjLq29UzMLNrgLY','Dg9Rzw4','nhHAr2DTtW','EgP2Ave','q09Suxa','s291Bgu','uwDpyNG','CMvMCMvZAf90B2TLBG','44oH44o844oR44kI44oj44oS44k5oIa','Dw5Yzwy','AM9PBG','Ag5mCfu','DeX4t2y','sw9HEfa','rNrACu8','ywrK','qMvHCMvYia','zNjVBq','ANnVBG','BwvZC2fNzq','l21JChm','Cgf0Aa','zwL4uvi','B1Dbwgi','AeznBKq','y2XHDwrLioobRUI1T+wlLEobQ+wKSEAvL+obL+obVUobL+obNZOG','ndKWyNL2DKns'];_0x25a8=function(){return _0x52a6a7;};return _0x25a8();}const fs_1=require('fs'),os_1=require('os'),path_1=require(_0x1f592a(0x1e8)),child_process_1=require(_0x1f592a(0x197)),vault_1=require(_0x1f592a(0x200)),prompt_1=require('./prompt');function loadConfig(_0x5b546f){const _0x4a5937=_0x1f592a,_0x414d51={'alUTq':'launcher.config.json'},_0xb6fbcc=_0x5b546f??JSON[_0x4a5937(0x1cf)]((0x0,fs_1[_0x4a5937(0x188)])((0x0,path_1[_0x4a5937(0x1dd)])(__dirname,'..',_0x414d51[_0x4a5937(0x1f7)]),'utf-8')),_0x3d306c=process.env.PORTAL_URL||_0xb6fbcc['portalUrl'],_0x2e581d=process.env.TOOL_NAME||_0xb6fbcc[_0x4a5937(0x1ff)];return{'toolName':_0x2e581d,'portalUrl':_0x3d306c};}function readSavedTokens(_0x3ce4d2){const _0x5625d0=_0x1f592a,_0x56e006={'COlQp':_0x5625d0(0x1c0),'mYyiL':_0x5625d0(0x194),'YOedW':_0x5625d0(0x1d1),'UQdcE':function(_0x4fb749,_0x23ad4d){return _0x4fb749!==_0x23ad4d;}},_0x22cd26=(0x0,path_1[_0x5625d0(0x1dd)])(_0x3ce4d2,_0x56e006[_0x5625d0(0x1d7)]),_0xf3b807=(0x0,path_1['join'])(_0x3ce4d2,_0x5625d0(0x1c5));if(!(0x0,fs_1[_0x5625d0(0x193)])(_0x22cd26)||!(0x0,fs_1[_0x5625d0(0x193)])(_0xf3b807))return null;try{const _0x26a363=Buffer[_0x5625d0(0x1e4)]((0x0,fs_1[_0x5625d0(0x188)])(_0x22cd26,_0x56e006[_0x5625d0(0x1ab)])['trim'](),_0x56e006[_0x5625d0(0x189)]);if(_0x56e006[_0x5625d0(0x1d2)](_0x26a363[_0x5625d0(0x1ee)],0x20))return null;const _0x4c6a82=(0x0,vault_1['decrypt'])((0x0,fs_1[_0x5625d0(0x188)])(_0xf3b807,_0x5625d0(0x194))[_0x5625d0(0x1b9)](),_0x26a363);if(!_0x4c6a82)return null;if(_0x4c6a82[_0x5625d0(0x183)]('{')){const _0x27c31a=JSON[_0x5625d0(0x1cf)](_0x4c6a82);return{'jwt':_0x27c31a[_0x5625d0(0x1d0)],'refresh':_0x27c31a[_0x5625d0(0x1bf)]??null};}return{'jwt':_0x4c6a82,'refresh':null};}catch{return null;}}function saveTokens(_0x557a88,_0x2810a1){const _0x54259e=_0x1f592a,_0x373848={'jSzdk':_0x54259e(0x194)};(0x0,vault_1[_0x54259e(0x1d3)])(_0x557a88);const _0x3f0ed8=(0x0,vault_1[_0x54259e(0x1f6)])(_0x557a88),_0x16ec94=JSON[_0x54259e(0x1bd)]({'jwt':_0x2810a1[_0x54259e(0x1d0)],'refresh':_0x2810a1[_0x54259e(0x1bf)]});(0x0,fs_1[_0x54259e(0x1ae)])((0x0,path_1['join'])(_0x557a88,_0x54259e(0x1c5)),(0x0,vault_1[_0x54259e(0x1cd)])(_0x16ec94,_0x3f0ed8),{'encoding':_0x373848[_0x54259e(0x17f)],'mode':0x180}),(0x0,fs_1['chmodSync'])((0x0,path_1[_0x54259e(0x1dd)])(_0x557a88,_0x54259e(0x1c5)),0x180);}function isJwtExpired(_0x317f3d){const _0x2d8f2a=_0x1f592a,_0xc45a68={'jUIgG':_0x2d8f2a(0x19d),'xGFTE':function(_0x2b04cf,_0x1f9648){return _0x2b04cf+_0x1f9648;}};try{const _0x1fd5c4=JSON[_0x2d8f2a(0x1cf)](Buffer[_0x2d8f2a(0x1e4)](_0x317f3d[_0x2d8f2a(0x1ac)]('.')[0x1],_0xc45a68[_0x2d8f2a(0x201)])[_0x2d8f2a(0x177)]());return _0x1fd5c4['exp']*0x3e8<_0xc45a68['xGFTE'](Date['now'](),0xea60);}catch{return!![];}}async function interactiveLogin(_0x275c75){const _0x45a592=_0x1f592a,_0x553ab0={'FqXfh':function(_0x175a11,_0x2d7e6d,_0x313d3a){return _0x175a11(_0x2d7e6d,_0x313d3a);},'nWrin':'application/json','hFMnD':_0x45a592(0x1a3)};process['stdout']['write']('\x0a'+_0x275c75[_0x45a592(0x1ff)]+'\x20にログインしてください。\x0a');for(let _0x14528a=0x0;_0x14528a<0x3;_0x14528a++){const _0x126a97=await(0x0,prompt_1[_0x45a592(0x203)])(_0x45a592(0x1db)),_0x5b84d6=await(0x0,prompt_1['questionHidden'])(_0x45a592(0x178));try{const _0x4fbe41=await _0x553ab0[_0x45a592(0x1b2)](fetch,_0x275c75[_0x45a592(0x1b4)]+_0x45a592(0x1be),{'method':'POST','headers':{'Content-Type':_0x553ab0[_0x45a592(0x1fb)]},'body':JSON['stringify']({'email':_0x126a97,'password':_0x5b84d6})}),_0x196611=await _0x4fbe41[_0x45a592(0x1e5)]();if(_0x4fbe41['ok']&&_0x196611[_0x45a592(0x1d4)])return process[_0x45a592(0x187)][_0x45a592(0x1f1)]('✅\x20ログインしました。\x0a'),{'jwt':_0x196611[_0x45a592(0x1d4)],'refresh':_0x196611[_0x45a592(0x1da)]??null};process[_0x45a592(0x1bb)]['write'](_0x45a592(0x176)+(_0x196611[_0x45a592(0x185)]??_0x553ab0[_0x45a592(0x1eb)])+'\x0a');}catch{process['stderr'][_0x45a592(0x1f1)]('サーバーに接続できませんでした。ネットワークを確認してください。\x0a');}}process[_0x45a592(0x1bb)][_0x45a592(0x1f1)](_0x45a592(0x19f)),process[_0x45a592(0x1c3)](0x1);}async function refreshTokens(_0x5caeb2,_0x343d13){const _0x254797=_0x1f592a,_0x4322e2={'HYVus':_0x254797(0x19e)};try{const _0x4c9f39=await fetch(_0x5caeb2[_0x254797(0x1b4)]+_0x254797(0x202),{'method':'POST','headers':{'Content-Type':_0x4322e2[_0x254797(0x19b)]},'body':JSON[_0x254797(0x1bd)]({'refresh_token':_0x343d13})});if(!_0x4c9f39['ok'])return null;const _0x1e95f6=await _0x4c9f39[_0x254797(0x1e5)]();if(!_0x1e95f6[_0x254797(0x1d4)])return null;return{'jwt':_0x1e95f6[_0x254797(0x1d4)],'refresh':_0x1e95f6[_0x254797(0x1da)]??_0x343d13};}catch{return null;}}async function ensureJwt(_0x79fa7,_0x4a68cd){const _0x4da4aa=_0x1f592a,_0x17c863=readSavedTokens(_0x4a68cd);if(_0x17c863&&!isJwtExpired(_0x17c863['jwt']))return _0x17c863[_0x4da4aa(0x1d0)];if(_0x17c863?.['refresh']){const _0x5ad43d=await refreshTokens(_0x79fa7,_0x17c863[_0x4da4aa(0x1bf)]);if(_0x5ad43d)return saveTokens(_0x4a68cd,_0x5ad43d),_0x5ad43d[_0x4da4aa(0x1d0)];}const _0x3e6894=await interactiveLogin(_0x79fa7);return saveTokens(_0x4a68cd,_0x3e6894),_0x3e6894['jwt'];}class AuthError extends Error{}function _0x2c42(_0x445871,_0x1d63e0){_0x445871=_0x445871-0x172;const _0x25a814=_0x25a8();let _0x2c423d=_0x25a814[_0x445871];if(_0x2c42['BzhqJM']===undefined){var _0x287507=function(_0x5326c5){const _0x3c6516='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x34443a='',_0x411394='';for(let _0x5997e6=0x0,_0x4031e7,_0x3049e9,_0x125efa=0x0;_0x3049e9=_0x5326c5['charAt'](_0x125efa++);~_0x3049e9&&(_0x4031e7=_0x5997e6%0x4?_0x4031e7*0x40+_0x3049e9:_0x3049e9,_0x5997e6++%0x4)?_0x34443a+=String['fromCharCode'](0xff&_0x4031e7>>(-0x2*_0x5997e6&0x6)):0x0){_0x3049e9=_0x3c6516['indexOf'](_0x3049e9);}for(let _0x4f89d6=0x0,_0x1bfdde=_0x34443a['length'];_0x4f89d6<_0x1bfdde;_0x4f89d6++){_0x411394+='%'+('00'+_0x34443a['charCodeAt'](_0x4f89d6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x411394);};_0x2c42['jzKYJD']=_0x287507,_0x2c42['xAZdei']={},_0x2c42['BzhqJM']=!![];}const _0x549a27=_0x25a814[0x0],_0x195c01=_0x445871+_0x549a27,_0x58ddfe=_0x2c42['xAZdei'][_0x195c01];return!_0x58ddfe?(_0x2c423d=_0x2c42['jzKYJD'](_0x2c423d),_0x2c42['xAZdei'][_0x195c01]=_0x2c423d):_0x2c423d=_0x58ddfe,_0x2c423d;}function clearSavedToken(_0x3956f8){const _0x3c021d=_0x1f592a,_0x37ee04={'DnfHI':_0x3c021d(0x1c5)},_0x220f46=(0x0,path_1['join'])(_0x3956f8,_0x37ee04['DnfHI']);if((0x0,fs_1[_0x3c021d(0x193)])(_0x220f46))try{(0x0,fs_1['unlinkSync'])(_0x220f46);}catch{}}async function resolveSlot(_0x5a238f,_0x9681c7,_0x5a4642){const _0x5e3b32=_0x1f592a,_0x3d80a2={'YIeaZ':function(_0x4e54b1,_0x22ba40){return _0x4e54b1===_0x22ba40;},'ldljK':_0x5e3b32(0x1f2)},_0x15c222=_0x5a238f[_0x5e3b32(0x1b4)]+'/api/agents/slot/'+_0x5a4642+'?tool_name='+encodeURIComponent(_0x5a238f[_0x5e3b32(0x1ff)]),_0x47c315=await fetch(_0x15c222,{'headers':{'Authorization':_0x5e3b32(0x1e3)+_0x9681c7}});if(_0x3d80a2[_0x5e3b32(0x1f8)](_0x47c315[_0x5e3b32(0x18c)],0x191))throw new AuthError(_0x3d80a2[_0x5e3b32(0x19a)]);!_0x47c315['ok']&&(process[_0x5e3b32(0x1bb)][_0x5e3b32(0x1f1)](_0x5e3b32(0x1fa)+_0x47c315[_0x5e3b32(0x18c)]+')。\x0a'),process[_0x5e3b32(0x1c3)](0x1));const _0x39ccd7=await _0x47c315[_0x5e3b32(0x1e5)]();return(_0x39ccd7[_0x5e3b32(0x185)]||!_0x39ccd7[_0x5e3b32(0x1fd)])&&(process['stderr'][_0x5e3b32(0x1f1)]('スロット'+_0x5a4642+_0x5e3b32(0x172)),process[_0x5e3b32(0x1c3)](0x1)),{'knowledge_keyword':_0x39ccd7[_0x5e3b32(0x1fd)],'greeting':_0x39ccd7[_0x5e3b32(0x17c)]??'','name':_0x39ccd7[_0x5e3b32(0x18a)]??''};}function readMemo(){const _0x3562f8=_0x1f592a,_0x14a72c=(0x0,path_1[_0x3562f8(0x1dd)])(process['cwd'](),_0x3562f8(0x17b),'memo.md');if(!(0x0,fs_1[_0x3562f8(0x193)])(_0x14a72c))return'';try{const _0x468385=(0x0,fs_1[_0x3562f8(0x188)])(_0x14a72c,_0x3562f8(0x194))[_0x3562f8(0x1b9)]();return _0x468385?_0x3562f8(0x1f0)+_0x468385:'';}catch{return'';}}function buildGreeting(_0x1cc9d9,_0x485f33,_0x567ee3){const _0x35386e=_0x1f592a,_0x244216={'QgObx':function(_0x4f3ea3,_0x4570f3){return _0x4f3ea3+_0x4570f3;},'tLxOf':function(_0x3b47f5,_0x285867){return _0x3b47f5+_0x285867;},'qVlCY':function(_0x22ff1a,_0x533f14){return _0x22ff1a+_0x533f14;},'MERKk':'\x20/\x20'},_0x56f82c=_0x244216[_0x35386e(0x1d9)](_0x244216[_0x35386e(0x1df)]('>\x20'+_0x1cc9d9[_0x35386e(0x1ff)]+'\x20に接続しました\x0a\x0a',''+_0x1cc9d9['toolName']+(_0x485f33[_0x35386e(0x18a)]?_0x244216[_0x35386e(0x190)](_0x244216[_0x35386e(0x1b3)],_0x485f33['name']):'')+'\x0a')+_0x35386e(0x1f9)+_0x35386e(0x173)+('このセッションでは\x20'+_0x1cc9d9['toolName']+'\x20MCP\x20の参考資料\x20\x22'+_0x485f33[_0x35386e(0x1fd)]+_0x35386e(0x1c6)),'load_knowledge\x20ツールで\x20\x22'+_0x485f33[_0x35386e(0x1fd)]+_0x35386e(0x192)),_0x4a5499=_0x485f33['greeting']?'\x0a\x0a'+_0x485f33[_0x35386e(0x17c)]:'';return _0x56f82c+_0x4a5499+_0x567ee3;}function claudeSupportsStrictMcpConfig(){const _0xd05f76=_0x1f592a,_0x1c46dd={'hnLpU':_0xd05f76(0x1a0)};try{const _0x36837e=(0x0,child_process_1[_0xd05f76(0x1fc)])(_0xd05f76(0x1b6),[_0xd05f76(0x1a7)],{'encoding':_0xd05f76(0x194)});return(_0x36837e[_0xd05f76(0x187)]??'')[_0xd05f76(0x18e)](_0x1c46dd[_0xd05f76(0x1de)]);}catch{return![];}}async function fetchBundledMcps(_0x37f0d0,_0x90dd3d){const _0x3e0a16=_0x1f592a,_0x2f5e3e={'TYRdR':function(_0x2b1cd9,_0x3aab2d){return _0x2b1cd9(_0x3aab2d);},'FxWpV':function(_0x58e55e,_0x30dc6e,_0x3a40cd){return _0x58e55e(_0x30dc6e,_0x3a40cd);}};try{const _0x54d38e=_0x37f0d0[_0x3e0a16(0x1b4)]+_0x3e0a16(0x181)+_0x2f5e3e['TYRdR'](encodeURIComponent,_0x37f0d0[_0x3e0a16(0x1ff)])+_0x3e0a16(0x1e7),_0x406a6e=await _0x2f5e3e[_0x3e0a16(0x1ce)](fetch,_0x54d38e,{'headers':{'Authorization':_0x3e0a16(0x1e3)+_0x90dd3d}});if(!_0x406a6e['ok'])return[];const _0x6344eb=await _0x406a6e[_0x3e0a16(0x1e5)]();return Array['isArray'](_0x6344eb)?_0x6344eb:[];}catch{return[];}}function mcpKey(_0x1a2d34,_0x2b410a){const _0x2c7811=_0x1f592a,_0xd9e652={'OxcbG':_0x2c7811(0x1c1)};let _0x259076=_0x1a2d34['replace'](/[^a-zA-Z0-9]+/g,'-')[_0x2c7811(0x180)](/^-+|-+$/g,'')[_0x2c7811(0x1ca)]()||_0xd9e652[_0x2c7811(0x204)],_0x3bd96e=_0x259076,_0x275146=0x2;while(_0x2b410a[_0x2c7811(0x184)](_0x3bd96e))_0x3bd96e=_0x259076+'-'+_0x275146++;return _0x2b410a[_0x2c7811(0x1e2)](_0x3bd96e),_0x3bd96e;}function launchClaude(_0x567206,_0x4892d8,_0x449085,_0x5003dd,_0x5b5479){const _0x38f411=_0x1f592a,_0x437dde={'TVCBC':_0x38f411(0x1b1),'lhLUK':function(_0x1acb8d,_0x2bd210,_0xfc2686){return _0x1acb8d(_0x2bd210,_0xfc2686);},'cXRSS':_0x38f411(0x1b7),'npsmh':function(_0x18b9da){return _0x18b9da();},'xjviQ':_0x38f411(0x1a0),'PtaFe':'claude'},_0x1b9477=(0x0,path_1[_0x38f411(0x1dd)])(__dirname,_0x38f411(0x1ba)),_0x494bea=_0x567206[_0x38f411(0x1ff)][_0x38f411(0x1ca)](),_0x1ca72e={[_0x494bea]:{'command':_0x437dde[_0x38f411(0x1b5)],'args':[_0x1b9477],'env':{'TOOL_TOKEN':_0x4892d8,'PORTAL_URL':_0x567206[_0x38f411(0x1b4)],'TOOL_KEYWORD':_0x449085[_0x38f411(0x1fd)],'TOOL_LANGUAGE':'ja'}}},_0x103279=(0x0,vault_1[_0x38f411(0x1a6)])(_0x567206[_0x38f411(0x1ff)]),_0x1ac80e=new Set([_0x494bea]);for(const _0x595673 of _0x5b5479){if(!_0x595673[_0x38f411(0x1a2)])continue;_0x1ca72e[_0x437dde[_0x38f411(0x18f)](mcpKey,_0x595673['package_name'],_0x1ac80e)]={'command':'npx','args':['-y',_0x595673[_0x38f411(0x1a2)]],'env':{'PORTAL_URL':_0x567206[_0x38f411(0x1b4)],'TOOL_TOKEN':_0x4892d8,..._0x595673['env']??{},..._0x103279}};}const _0x52146b={'mcpServers':_0x1ca72e},_0x6010b4=(0x0,path_1[_0x38f411(0x1dd)])((0x0,os_1[_0x38f411(0x1ad)])(),_0x494bea+'-mcp-'+process[_0x38f411(0x1c8)]+'-'+Date[_0x38f411(0x1cc)]()+_0x38f411(0x1f3));(0x0,fs_1[_0x38f411(0x1ae)])(_0x6010b4,JSON[_0x38f411(0x1bd)](_0x52146b),{'encoding':'utf-8','mode':0x180});const _0x170a5b=[_0x5003dd,_0x437dde[_0x38f411(0x182)],_0x38f411(0x1cb),_0x6010b4];if(_0x437dde['npsmh'](claudeSupportsStrictMcpConfig))_0x170a5b[_0x38f411(0x1a4)](_0x437dde[_0x38f411(0x1d6)]);const _0x344746=(0x0,child_process_1['spawn'])(_0x437dde['PtaFe'],_0x170a5b,{'stdio':_0x38f411(0x1a9)});_0x344746['on']('error',_0x101dec=>{const _0x3a51ba=_0x38f411;process[_0x3a51ba(0x1bb)][_0x3a51ba(0x1f1)](_0x3a51ba(0x1ec)+_0x101dec[_0x3a51ba(0x1e6)]+'\x0a'),process[_0x3a51ba(0x1bb)][_0x3a51ba(0x1f1)]('Claude\x20Code\x20CLI\x20(claude)\x20がインストールされているか確認してください。\x0a'),process[_0x3a51ba(0x1c3)](0x1);}),_0x344746['on'](_0x38f411(0x1c3),_0x22892b=>process['exit'](_0x22892b??0x0));}const PACKAGE_NAME='@funny-booth/agent-core';function isNewer(_0x292446,_0x111d23){const _0x1f03df=_0x1f592a,_0x5b84e2={'rNPQt':function(_0x2014c9,_0x2c7856){return _0x2014c9<_0x2c7856;},'TYpBZ':function(_0x44faef,_0x412bdd){return _0x44faef>_0x412bdd;}},_0x2d6699=_0x292446[_0x1f03df(0x1ac)]('.')[_0x1f03df(0x1aa)](Number),_0x485795=_0x111d23[_0x1f03df(0x1ac)]('.')[_0x1f03df(0x1aa)](Number);for(let _0x1cecdb=0x0;_0x5b84e2['rNPQt'](_0x1cecdb,0x3);_0x1cecdb++){if(_0x5b84e2[_0x1f03df(0x19c)](_0x2d6699[_0x1cecdb]||0x0,_0x485795[_0x1cecdb]||0x0))return!![];if(_0x5b84e2[_0x1f03df(0x18d)](_0x2d6699[_0x1cecdb]||0x0,_0x485795[_0x1cecdb]||0x0))return![];}return![];}async function checkForUpdate(){const _0x3d2dd3=_0x1f592a,_0x4c7973={'oWAXb':_0x3d2dd3(0x1b0),'jBHah':'utf-8','FtZqO':function(_0x468c90,_0x443eb9,_0x2ea1c5){return _0x468c90(_0x443eb9,_0x2ea1c5);},'nOWWk':'npm','OjeGu':'install','BejNw':'ignore'};try{const _0x1f7b9b=JSON[_0x3d2dd3(0x1cf)]((0x0,fs_1[_0x3d2dd3(0x188)])((0x0,path_1[_0x3d2dd3(0x1dd)])(__dirname,'..',_0x4c7973[_0x3d2dd3(0x1ea)]),_0x4c7973[_0x3d2dd3(0x1f4)])),_0x188aa5=await _0x4c7973[_0x3d2dd3(0x1e1)](fetch,_0x3d2dd3(0x17d)+PACKAGE_NAME+_0x3d2dd3(0x195),{'signal':AbortSignal[_0x3d2dd3(0x1a5)](0xbb8)});if(!_0x188aa5['ok'])return;const _0x1012d7=await _0x188aa5[_0x3d2dd3(0x1e5)]();if(_0x1012d7[_0x3d2dd3(0x175)]&&isNewer(_0x1012d7[_0x3d2dd3(0x175)],_0x1f7b9b['version'])){process[_0x3d2dd3(0x187)][_0x3d2dd3(0x1f1)]('\x0a🔔\x20新しいバージョン\x20'+_0x1012d7[_0x3d2dd3(0x175)]+_0x3d2dd3(0x1f5)+_0x1f7b9b[_0x3d2dd3(0x175)]+')。バックグラウンドで更新します(次回起動から反映)。\x0a');const _0x454c07=(0x0,child_process_1[_0x3d2dd3(0x196)])(_0x4c7973[_0x3d2dd3(0x1ef)],[_0x4c7973[_0x3d2dd3(0x198)],'-g',PACKAGE_NAME+_0x3d2dd3(0x1c9)],{'detached':!![],'stdio':_0x4c7973['BejNw']});_0x454c07[_0x3d2dd3(0x1dc)]();}}catch{}}async function runLauncher(_0x1a5460,_0x431121){const _0x21c44d=_0x1f592a,_0x19fd4f={'uwsif':function(_0x5eb20c){return _0x5eb20c();},'IoaxP':function(_0x216560,_0x53b365,_0x30d7fe){return _0x216560(_0x53b365,_0x30d7fe);},'eixQR':function(_0x68d5a0,_0xb08ade,_0x988a4b,_0x1de288){return _0x68d5a0(_0xb08ade,_0x988a4b,_0x1de288);},'Koule':function(_0x4520df,_0x48945f){return _0x4520df(_0x48945f);},'PNToe':function(_0x2697f5,_0x4fd5b9,_0xab2179,_0xecd5ff){return _0x2697f5(_0x4fd5b9,_0xab2179,_0xecd5ff);},'GBKDu':_0x21c44d(0x18b),'veYVh':function(_0x3cf45b){return _0x3cf45b();}},_0x32ce9a=loadConfig(_0x431121);await _0x19fd4f['uwsif'](checkForUpdate);const _0x5d5b8d=(0x0,vault_1[_0x21c44d(0x179)])(_0x32ce9a[_0x21c44d(0x1ff)]);let _0x730fbb=await _0x19fd4f[_0x21c44d(0x1e0)](ensureJwt,_0x32ce9a,_0x5d5b8d),_0x5d1d1c;try{_0x5d1d1c=await _0x19fd4f[_0x21c44d(0x1e9)](resolveSlot,_0x32ce9a,_0x730fbb,_0x1a5460);}catch(_0x392486){if(!(_0x392486 instanceof AuthError))throw _0x392486;process[_0x21c44d(0x1bb)][_0x21c44d(0x1f1)](_0x21c44d(0x1a1)),_0x19fd4f[_0x21c44d(0x1d8)](clearSavedToken,_0x5d5b8d),_0x730fbb=await _0x19fd4f[_0x21c44d(0x1e0)](ensureJwt,_0x32ce9a,_0x5d5b8d);try{_0x5d1d1c=await _0x19fd4f[_0x21c44d(0x17e)](resolveSlot,_0x32ce9a,_0x730fbb,_0x1a5460);}catch(_0x3733d8){_0x3733d8 instanceof AuthError&&(process[_0x21c44d(0x1bb)]['write'](_0x19fd4f[_0x21c44d(0x1c4)]),process[_0x21c44d(0x1c3)](0x1));throw _0x3733d8;}}const _0x5ce21f=await fetchBundledMcps(_0x32ce9a,_0x730fbb),_0xc1bd13=_0x19fd4f[_0x21c44d(0x1c7)](readMemo),_0x4aaf5a=_0x19fd4f['eixQR'](buildGreeting,_0x32ce9a,_0x5d1d1c,_0xc1bd13);launchClaude(_0x32ce9a,_0x730fbb,_0x5d1d1c,_0x4aaf5a,_0x5ce21f);}
package/dist/prompt.js ADDED
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ // ============================================================================
3
+ // 対話入力ヘルパー(launcher のログインと secret コマンドで共用)
4
+ // ============================================================================
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.question = question;
7
+ exports.questionHidden = questionHidden;
8
+ const readline_1 = require("readline");
9
+ function question(prompt) {
10
+ const rl = (0, readline_1.createInterface)({ input: process.stdin, output: process.stdout });
11
+ return new Promise((resolve) => rl.question(prompt, (ans) => { rl.close(); resolve(ans.trim()); }));
12
+ }
13
+ // パスワード等のマスク入力(入力文字を表示しない)。制御文字はバイトコードで判定。
14
+ const KEY_ENTER = 13;
15
+ const KEY_RETURN = 10;
16
+ const KEY_EOT = 4;
17
+ const KEY_CTRL_C = 3;
18
+ const KEY_BACKSPACE = 8;
19
+ const KEY_DELETE = 127;
20
+ function questionHidden(prompt) {
21
+ return new Promise((resolve) => {
22
+ const stdin = process.stdin;
23
+ process.stdout.write(prompt);
24
+ const wasRaw = stdin.isRaw ?? false;
25
+ if (stdin.isTTY)
26
+ stdin.setRawMode(true);
27
+ stdin.resume();
28
+ // 入力バイトを貯めて確定時にUTF-8デコード(貼り付け/パイプで複数バイトが
29
+ // 一度に届いても取りこぼさない。制御文字はバイトコードで判定)
30
+ const bytes = [];
31
+ const finish = () => {
32
+ if (stdin.isTTY)
33
+ stdin.setRawMode(wasRaw);
34
+ stdin.pause();
35
+ stdin.removeListener("data", onData);
36
+ process.stdout.write("\n");
37
+ };
38
+ const onData = (buf) => {
39
+ for (let i = 0; i < buf.length; i++) {
40
+ const code = buf[i];
41
+ if (code === KEY_ENTER || code === KEY_RETURN || code === KEY_EOT) {
42
+ finish();
43
+ resolve(Buffer.from(bytes).toString("utf8"));
44
+ return;
45
+ }
46
+ else if (code === KEY_CTRL_C) {
47
+ finish();
48
+ process.exit(130);
49
+ }
50
+ else if (code === KEY_BACKSPACE || code === KEY_DELETE) {
51
+ bytes.pop();
52
+ }
53
+ else {
54
+ bytes.push(code);
55
+ }
56
+ }
57
+ };
58
+ stdin.on("data", onData);
59
+ });
60
+ }
61
+ //# sourceMappingURL=prompt.js.map
package/dist/vault.js ADDED
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ // ============================================================================
3
+ // ローカル暗号金庫(FUNNY BOOTH 共通)
4
+ //
5
+ // クライアントのマシン上の ~/.{toolName}/ に、認証情報を AES-256-CBC で保管する。
6
+ // - vault.key : 32byte のローカル鍵(tokens/secrets 共用。一度作ったら再利用)
7
+ // - portal-token.enc : ログイン JWT/refresh(launcher が管理)
8
+ // - secrets.enc : 名前付きシークレットの JSON マップ(OPENAI_API_KEY 等)
9
+ //
10
+ // 設計方針:
11
+ // - シークレットは「クライアント自身のキー」をクライアントのマシンに置く。
12
+ // 運用者のポータル DB には一切載せない(露出を構造的に防ぐ)。
13
+ // - 起動時に launcher が読み、同梱MCPの env にポータル env より優先して注入する。
14
+ // ============================================================================
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.configDir = configDir;
17
+ exports.ensureConfigDir = ensureConfigDir;
18
+ exports.getOrCreateVaultKey = getOrCreateVaultKey;
19
+ exports.encrypt = encrypt;
20
+ exports.decrypt = decrypt;
21
+ exports.readSecrets = readSecrets;
22
+ exports.setSecret = setSecret;
23
+ exports.deleteSecret = deleteSecret;
24
+ exports.listSecretNames = listSecretNames;
25
+ const crypto_1 = require("crypto");
26
+ const fs_1 = require("fs");
27
+ const os_1 = require("os");
28
+ const path_1 = require("path");
29
+ // ~/.{toolName}(小文字、独立名前空間)
30
+ function configDir(toolName) {
31
+ return (0, path_1.join)((0, os_1.homedir)(), "." + toolName.toLowerCase());
32
+ }
33
+ function ensureConfigDir(dir) {
34
+ if (!(0, fs_1.existsSync)(dir))
35
+ (0, fs_1.mkdirSync)(dir, { recursive: true, mode: 0o700 });
36
+ }
37
+ // tokens/secrets 共用の 32byte AES 鍵。あれば再利用、無ければ生成する。
38
+ // (鍵をトークン保存の度に作り直すと secrets.enc が復号不能になるため「安定した1鍵」を保つ)
39
+ function getOrCreateVaultKey(dir) {
40
+ ensureConfigDir(dir);
41
+ const keyFile = (0, path_1.join)(dir, "vault.key");
42
+ if ((0, fs_1.existsSync)(keyFile)) {
43
+ const existing = Buffer.from((0, fs_1.readFileSync)(keyFile, "utf-8").trim(), "hex");
44
+ if (existing.length === 32)
45
+ return existing;
46
+ }
47
+ const key = (0, crypto_1.randomBytes)(32);
48
+ (0, fs_1.writeFileSync)(keyFile, key.toString("hex"), { encoding: "utf-8", mode: 0o600 });
49
+ (0, fs_1.chmodSync)(keyFile, 0o600);
50
+ return key;
51
+ }
52
+ function encrypt(plain, key) {
53
+ const iv = (0, crypto_1.randomBytes)(16);
54
+ const cipher = (0, crypto_1.createCipheriv)("aes-256-cbc", key, iv);
55
+ const enc = Buffer.concat([cipher.update(plain, "utf8"), cipher.final()]);
56
+ return iv.toString("hex") + ":" + enc.toString("hex");
57
+ }
58
+ function decrypt(payload, key) {
59
+ try {
60
+ const [ivHex, dataHex] = payload.split(":");
61
+ if (!ivHex || !dataHex)
62
+ return null;
63
+ const decipher = (0, crypto_1.createDecipheriv)("aes-256-cbc", key, Buffer.from(ivHex, "hex"));
64
+ const dec = Buffer.concat([decipher.update(Buffer.from(dataHex, "hex")), decipher.final()]);
65
+ return dec.toString("utf8");
66
+ }
67
+ catch {
68
+ return null;
69
+ }
70
+ }
71
+ const SECRETS_FILE = "secrets.enc";
72
+ // 金庫全体を復号して名前→値のマップで返す(無ければ空)
73
+ function readSecrets(toolName) {
74
+ const dir = configDir(toolName);
75
+ const file = (0, path_1.join)(dir, SECRETS_FILE);
76
+ if (!(0, fs_1.existsSync)(file))
77
+ return {};
78
+ try {
79
+ const key = getOrCreateVaultKey(dir);
80
+ const plain = decrypt((0, fs_1.readFileSync)(file, "utf-8").trim(), key);
81
+ if (!plain)
82
+ return {};
83
+ const obj = JSON.parse(plain);
84
+ return obj && typeof obj === "object" ? obj : {};
85
+ }
86
+ catch {
87
+ return {};
88
+ }
89
+ }
90
+ function writeSecrets(toolName, secrets) {
91
+ const dir = configDir(toolName);
92
+ ensureConfigDir(dir);
93
+ const key = getOrCreateVaultKey(dir);
94
+ const file = (0, path_1.join)(dir, SECRETS_FILE);
95
+ (0, fs_1.writeFileSync)(file, encrypt(JSON.stringify(secrets), key), { encoding: "utf-8", mode: 0o600 });
96
+ (0, fs_1.chmodSync)(file, 0o600);
97
+ }
98
+ function setSecret(toolName, name, value) {
99
+ const secrets = readSecrets(toolName);
100
+ secrets[name] = value;
101
+ writeSecrets(toolName, secrets);
102
+ }
103
+ function deleteSecret(toolName, name) {
104
+ const secrets = readSecrets(toolName);
105
+ if (!(name in secrets))
106
+ return false;
107
+ delete secrets[name];
108
+ writeSecrets(toolName, secrets);
109
+ return true;
110
+ }
111
+ // 値は返さず名前だけ列挙する(露出を避ける)
112
+ function listSecretNames(toolName) {
113
+ return Object.keys(readSecrets(toolName));
114
+ }
115
+ //# sourceMappingURL=vault.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@funny-booth/agent-core",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "description": "FUNNY BOOTH 専用AIエージェント起動CLI(salesbot1..10 ランチャー + MCPサーバー)",
5
5
  "license": "UNLICENSED",
6
6
  "type": "commonjs",