@ikyyofc/gemini-cli 3.0.5 → 3.0.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ikyyofc/gemini-cli",
3
- "version": "3.0.5",
3
+ "version": "3.0.7",
4
4
  "description": "AI Agent CLI — native function calling · GEMINI.md context · extensions",
5
5
  "type": "module",
6
6
  "bin": { "gemini": "./index.js" },
package/src/gemini.js CHANGED
@@ -1 +1 @@
1
- const _0x4693ef=_0x29cf;function _0x337b(){const _0x5d0974=['WRaiWRdcUsq','m8owW6/dV8od','WRqpWRtcIa4','W6zRoCoStmob','W71LW6/dNmkXWRy3WPOyW5e','W4tdI3vnwJna','oJtdRetdGtSEtx/cIW','W4hdIf3dNMuCh8o+smoq','W7C4yW','aqbzW6pcICosWPSawW','oc1VW6hcKq','W54gcCkDW6dcOWG','ccKqWPiiW7G','zIGVWOvp','W6j3mhi','W5tcLLaMWOiEF8o8euO','xmkpW5vZgLasdwFdPW','iupdHrVcTr8e','WOFdMCodiCkD','atddNIOxW4xdQCo+uSoD','iKjcWPlcMKRcH8krotW','fHXzW6/cICosWPrmsXG','sWeVWOXP','WO4dWOrpCvRdTSo0rSoI','WRpdH8kY','fflcJCo6kSoHdCo5lYm','guZcM8oMkCo/eCo3mJu','BbBdTCk7W74QWPNcUxi+','WPOknmkTW68DW78','iMn4W4KOFCkIhSoMpW','W4hdPt/cUCoIFuNcLslcTq','WO7dJ8ofjCkBW7nJWPpcOXm','WRVdTSk4W7FdRq','W57cHe4+WRK','W7/dRv19','W5TrW6ZcJSoKWO8','yG8SpX/dO33cV8oVxG','WRpdJ8kVW7y','aSoHW7NdLmoz','qgVcLNyVW5ZcQmk+bmov','WO8dWQ1TFa','W79PoSoiErxdMSo/cmoSySkN','WQJdJ8kMW7BdGCkXWQhcPa3cSG','dshdKSkgW74','rmoRitRdNwHKcq','eSoCWOyLWPFdHCkNW47dIxG','wwNcMMC0WOpdQSoKxa','W75Rl8o/f8odW7hdImoYzG','W6uFcqqlD8kgWQldS3X2','W5tdTspcPmkIp0NcJI/cTW','WRFdGSkwW7ZdHCo7WRG','W4/dKx1nWQa','rmoLW4zpwG','WQZdICkUW7y','r0lcP1CZ','dImgWPq','WQ7dPZTDW6WmwCobdKFdKG','hZ8uWPul','WRSSESku','W65nimoQ','W5u0rCo6W73dKbr7WOPw','CaeeW4BdIX3dKSkegszoW7FdLW','W4NcI2Lnwq','CmoRW4RdHMC0rs0h','WQxdU8otBGFcHCkbWQLlnG','WOW9WONcGmkU','qKxcLMqo','W6S2W5VcMa0CshNdSSkq','W69OW4ZcKqKsua','x2/cJxy','fHddVCkJW4K','W7OmDmoBW4ZdPdLgWQXS','pmoPW7ZdTq','sCoqW7FdVeXAAHWRka','ECohW4xcQmobW67dULVcJSoW','WRCgWOVcPq','WP5DW7LJW6f2bh/cVgW','DtaGWPG','s8kkW6H4oSogWQNcPXe','W5anaCkJW7a','iSoJW63dRW','iWGcWPyE','WQOPECkqjK7dTSoKbSoa','gmoxWOztetzybL4','W4pdQspcQmkIp0xcL30','zmkWWQBcQSk4W7FcRJJdMCkrWR/dMW','WRZdP8kunx3dUW','WQNdQCoOcSkGWOGyW7NcIZC','vmkoW616mmogWQZcSH9r','jXZdVmkHW68Q','WP1lWO7dTmkmAmkxW7uuW4m','WR/dU8koCvRdJCkAWQPE','W5ZcU1XdWPyjpvG0W4q','W6pcRuL1WQG','W6JcSNOFW7i+tCoE','WPZcI0dcItXjFCo4s8o2WRyQ','WQDInSo/xCoAW6q','CCo4W7Lz','WR9BrejjhmooW6tdNeu','zuL7mei','WQC8z8kBo0u','W5RdP1XUWOC','W7PKW6ZdNmoHW6jVW5bIWOTc','AtldPCkCvCkwmSoXcX0Bbq','WPFcKtujdMGAo8kVW40','ASkUW6mRWOZcTmoFWQ3cUNS','WORdMd4WW4XamCkngJy','WQ16W5S','W5FdPGXlWOCvDdqoW4O','WPvkuubFvmob','W6tdKI/cG8kLihJcNt/cSW','ymo2W7TyCtldKulcPCkq','omkPW7/dQmoVWQ4','frrQW7pcHa','W58XeCo9WQdcH0e+WOTh','W4uuW7lcQZC6CvJdMSkZ','j2ekWR5/kCoxDa','iSotvKXhcSkbEtap','WR8HkSkPW7m','WORdUZCDW51mnSoblaO','W4ldTufuWPe','WQ4ZnSk0cd7dNSohW40','W6VcRCoaW6j2','WPBcLY0adrLnmmotWPbN','bNeeW43cSb3dNSkHe2u','jvxcOCoNWRf4WQVcMg5a','W6pcRvTRWQTHWP7cTslcMW','mWX1W5XBk8o2x8k9zq','W6RcVMyoWRjYu8oymwO','vr1ycKv4WR/cK8kamW','W7LRomofEbVdUSozgmocr8k/','DmoNW4/dJG','eCkJfrtdKwDajmo2dq','z0NcUuO','W7fTzCkuaa','WPxdOYJcQCkOC1VdMIBcOq','kLXvWO7cKLVcKSkCFYa','WOyLWQ7cHqG1yfJcPcu','WP/dJtyOWOPljmkuhW','W5pdOvDjWO1dkbqK','EcWIWQTv','W5RdLb/dMa','W4GyimkcW6G','W6vTW5hcRG','kK3dMa','fbPUW77cLmkuWOig','yGO4oHNcR3hcU8oJvG','W4y6wmoQ','WR88CCkiyf3dU8oXbSob','lIxdS0ddLNe','W71IW4BcKSog','q8keWQBdTmoOfsDsiwK','W6zNo27cL8kgx8kGW57dLa','cM3dUslcJZiXax/dRW','W5emcCkoW7hcPq','WOjoWOzjEHhdTCoGqSoX','WQOQESkvpfNdTSo+gW','CIWQWPv1ASo9sSk1','fJet','nSofvmkgWORdHW','W7rAW5hdUxqLrKBcSWfD','W73dO0nSWRC','WObEWQBcGNeKcK3cU0C','W6ZcKmo7WQBcLmo/WRJcPr3cSa','jHddVCk8W6qXW5xcPtf8','WOJdHYnYW49gjmksgI0','g8ojW5hdNSom','kCofqrfjh8ky','WRbvwui','W77cTNeoW6TP','gZtdHuZdGG','WQv2ECkykq','WOPAWP3dRSkz','WQWeWOBcPYnov2NcLby','xSkmW6jPmmkhWRa','W4PwBmoHWRjhWR/dOmoSWQtcTWrw','W5xdI3DC','mCkhx8ksWOdcHJa5t3a','tCkcW75PjG','gCowWOLuqtPNlIhcPa','W5NcNN1TWP0unSkUfaeSpG','mSkMW7pdSSoSWQxdQbVdH8k5','DCo+W7fzD3NdH1VcTG','W5BdRYNcUCkOFLW','iebBWO7cHW','F8kGWOZdJCkylKT2hvO','W7ZcSSozW5XqWOpdOxOYWOO','rWnpcwW','W4qPWOVcHGemwwldTCkm','vrPpbL5QWOZcQ8kNFq','WO7dRSkqW6NdMq','v8koW6yFWRe','r8kaWQZdTmk0','wmkqWQX7j8kgWQNdTZDN','pctdPuddLZKsvge','W53cGCoiW6z8nCk7W5TZWOy','WO7dO8khW5ddPG','kepcMmoRgW','WRS0WQ7cM8kN','ffxcH8o6iCoVeCoSot4','W58YrCoRW6tdUHb4WRPw','WQjED1Lx','WO/dLSoqmSknW6yRW5xcSG','xSkmWR/dP8kIqNPmpW','W6JcSNOFW7i+tCoB','n8kDua','rwDDW5a','WRjhWOdcRYKgu2NcNau','b3pdQIhcLcm/hh4','W51HgKddJq','z8o3W4RdIMC0sZWjqq','WQZdS8kzWOmmWOldQNWqWOVcIq','W6pdHxDpvJyBsmkZW5u','W6eWrSoOW5C','WOVcPGSqW4iUpbWRW5q','W5RdU10','u8kcW67cS8oPdMznlxK','dCketCkaWPxdMsGUwwu','t8kcW4f9hG','c3DZWRRcTNVcTq'];_0x337b=function(){return _0x5d0974;};return _0x337b();}(function(_0x58e0dd,_0x513015){const _0x1ab23e=_0x29cf,_0x32ddfc=_0x58e0dd();while(!![]){try{const _0x400186=-parseInt(_0x1ab23e(0x1a5,']3qC'))/(-0x1b38+0x1b96+0x3*-0x1f)+-parseInt(_0x1ab23e(0x1cc,'r5fz'))/(-0x1f88+0x2469*-0x1+0x1f1*0x23)+-parseInt(_0x1ab23e(0x1c2,'4#o@'))/(0x1096*0x1+-0x173*0x8+0x11*-0x4b)+parseInt(_0x1ab23e(0x199,'tcb['))/(0x310+-0x8e*-0xd+-0x65*0x1a)*(parseInt(_0x1ab23e(0x1d3,'rJLp'))/(-0x12cb+0x234b+-0x107b))+parseInt(_0x1ab23e(0x131,'WfyJ'))/(0x2034+0x1307+0x1*-0x3335)*(parseInt(_0x1ab23e(0x1c0,'F976'))/(0x162c+-0x407*-0x1+-0x1a2c))+-parseInt(_0x1ab23e(0x1d4,'#viq'))/(-0x12*-0x187+-0x5bb+0x15bb*-0x1)+parseInt(_0x1ab23e(0x140,'kZ1X'))/(0x92b*-0x2+0x612+0xc4d);if(_0x400186===_0x513015)break;else _0x32ddfc['push'](_0x32ddfc['shift']());}catch(_0x37ca71){_0x32ddfc['push'](_0x32ddfc['shift']());}}}(_0x337b,0x2883d+0x1*0x194e5+-0x1*0x21427));import _0x25d4a6 from'axios';function _0x29cf(_0x54ec56,_0xdfcbbd){_0x54ec56=_0x54ec56-(-0x1*0xe9d+-0x1df5+0x2dc0);const _0x2ac41f=_0x337b();let _0x4f3b75=_0x2ac41f[_0x54ec56];if(_0x29cf['gnfWec']===undefined){var _0x7886=function(_0x3a6cca){const _0xd37640='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x40c31b='',_0x463829='';for(let _0x5ab6bf=0x2*-0x12fd+-0x2*-0x1279+0x18*0xb,_0x59e18d,_0x4febce,_0x13a0e3=0x15fc+0x1*0x1c0d+-0x3209;_0x4febce=_0x3a6cca['charAt'](_0x13a0e3++);~_0x4febce&&(_0x59e18d=_0x5ab6bf%(-0x18dc+0x1c44+-0x3e*0xe)?_0x59e18d*(0x51*0x4c+-0xd1*-0x5+-0x1*0x1be1)+_0x4febce:_0x4febce,_0x5ab6bf++%(-0x2552+-0xbef+0x3145*0x1))?_0x40c31b+=String['fromCharCode'](-0x1f19+0xf*0xa+-0x1f82*-0x1&_0x59e18d>>(-(0x3*0x69d+-0x1*-0x5b1+-0x1986)*_0x5ab6bf&0x67a*0x5+0x259*0x2+-0x250e)):-0x25a7+0x24c9+0xde){_0x4febce=_0xd37640['indexOf'](_0x4febce);}for(let _0x288216=0xc*-0x1c4+0x213e+-0xc0e,_0xf3fcd8=_0x40c31b['length'];_0x288216<_0xf3fcd8;_0x288216++){_0x463829+='%'+('00'+_0x40c31b['charCodeAt'](_0x288216)['toString'](-0x14e7+0x64d+0x2*0x755))['slice'](-(-0x14c4+-0x11df+0x26a5));}return decodeURIComponent(_0x463829);};const _0x2388d9=function(_0x86383a,_0x5102a1){let _0x3add35=[],_0x2060df=0xe1a+-0x2*0x431+-0x1e8*0x3,_0x51bb9a,_0x22465f='';_0x86383a=_0x7886(_0x86383a);let _0x3223f1;for(_0x3223f1=0x5ac+0x1fe8*-0x1+-0x124*-0x17;_0x3223f1<-0x150*0x10+0xb0c+0x1*0xaf4;_0x3223f1++){_0x3add35[_0x3223f1]=_0x3223f1;}for(_0x3223f1=0x36*-0x40+0x842+0x53e;_0x3223f1<-0x20f*0x7+0x7bd+0x7ac;_0x3223f1++){_0x2060df=(_0x2060df+_0x3add35[_0x3223f1]+_0x5102a1['charCodeAt'](_0x3223f1%_0x5102a1['length']))%(-0x219*-0x2+-0x1*0xcbe+0x98c),_0x51bb9a=_0x3add35[_0x3223f1],_0x3add35[_0x3223f1]=_0x3add35[_0x2060df],_0x3add35[_0x2060df]=_0x51bb9a;}_0x3223f1=0x328+-0xa31+0x709,_0x2060df=0x91d+0x179b*-0x1+0xe7e;for(let _0x17c647=-0x1111+-0x51e+0x162f;_0x17c647<_0x86383a['length'];_0x17c647++){_0x3223f1=(_0x3223f1+(-0x2140+-0x2335+0x17d*0x2e))%(-0xad9+0x1*-0x151+0xa*0x151),_0x2060df=(_0x2060df+_0x3add35[_0x3223f1])%(0x1*0x1f0a+-0x2189+0x37f),_0x51bb9a=_0x3add35[_0x3223f1],_0x3add35[_0x3223f1]=_0x3add35[_0x2060df],_0x3add35[_0x2060df]=_0x51bb9a,_0x22465f+=String['fromCharCode'](_0x86383a['charCodeAt'](_0x17c647)^_0x3add35[(_0x3add35[_0x3223f1]+_0x3add35[_0x2060df])%(-0x1c1b+-0x26f1+0x440c)]);}return _0x22465f;};_0x29cf['gpAHvU']=_0x2388d9,_0x29cf['MeUntf']={},_0x29cf['gnfWec']=!![];}const _0x3e5e81=_0x2ac41f[-0x1*0x89f+-0x16d*-0xf+0xcc4*-0x1],_0x2e8497=_0x54ec56+_0x3e5e81,_0x4ddd51=_0x29cf['MeUntf'][_0x2e8497];return!_0x4ddd51?(_0x29cf['UyokGF']===undefined&&(_0x29cf['UyokGF']=!![]),_0x4f3b75=_0x29cf['gpAHvU'](_0x4f3b75,_0xdfcbbd),_0x29cf['MeUntf'][_0x2e8497]=_0x4f3b75):_0x4f3b75=_0x4ddd51,_0x4f3b75;}import{fileTypeFromBuffer}from'file-type';const CONFIG={'URL':_0x4693ef(0x1cf,'3u(L')+_0x4693ef(0x188,'2*N@')+_0x4693ef(0x173,'GPIG')+_0x4693ef(0x169,'sez7')+_0x4693ef(0x1b9,'i]FV')+_0x4693ef(0x1e2,'2rR7'),'MODEL':_0x4693ef(0x135,'2*N@')+_0x4693ef(0x1cd,'iVGN'),'HEADERS':{'User-Agent':_0x4693ef(0x194,'UH^1')+'.2','Accept-Encoding':_0x4693ef(0x139,'3u(L'),'content-type':_0x4693ef(0x181,'C]de')+_0x4693ef(0x1eb,'bKbD')+_0x4693ef(0x14e,'0b!)')+'8'}},SUPPORTED_MIMES=new Set([_0x4693ef(0x184,'6npW'),_0x4693ef(0x15c,'sez7'),_0x4693ef(0x15b,'kkIS'),_0x4693ef(0x142,'$U)U'),_0x4693ef(0x13e,'WfyJ'),_0x4693ef(0x1c5,'k2Fx'),_0x4693ef(0x1c1,'7zlu'),_0x4693ef(0x1ed,']3qC'),_0x4693ef(0x19b,'UH^1'),_0x4693ef(0x1ac,'SpHr'),_0x4693ef(0x182,'1IiA')+'v',_0x4693ef(0x1bb,'k2Fx'),_0x4693ef(0x197,'C^C8'),_0x4693ef(0x147,'S8ap'),_0x4693ef(0x17d,'F976'),_0x4693ef(0x176,'1IiA'),_0x4693ef(0x153,'GPIG'),_0x4693ef(0x19e,'7zlu'),_0x4693ef(0x1f8,'nC4N'),_0x4693ef(0x12e,'zdfE'),_0x4693ef(0x1ee,'0b!)'),_0x4693ef(0x191,'tV)s'),_0x4693ef(0x163,'SpHr')+_0x4693ef(0x1f4,'7zlu')+'us',_0x4693ef(0x1b0,'Vptx')+_0x4693ef(0x13c,'mvea'),_0x4693ef(0x201,'mvea'),_0x4693ef(0x1f7,'QDRK'),_0x4693ef(0x15d,']3qC'),_0x4693ef(0x19c,'iVGN')+_0x4693ef(0x149,'C]de'),_0x4693ef(0x205,'lFzy')+_0x4693ef(0x138,'2rR7'),_0x4693ef(0x1cb,']3qC'),_0x4693ef(0x18b,'7zlu')+_0x4693ef(0x15e,'$U)U'),_0x4693ef(0x204,'sez7')+_0x4693ef(0x168,'nC4N'),_0x4693ef(0x1d7,'QDRK')+_0x4693ef(0x130,'$U)U'),_0x4693ef(0x1f1,'tcb[')+_0x4693ef(0x1ca,'bKbD'),_0x4693ef(0x1bf,'mvea')+_0x4693ef(0x1ab,'uVvH')]);async function getToken(){const _0x447ceb=_0x4693ef,_0xff4478={'PHRzw':_0x447ceb(0x18c,'kkIS')+_0x447ceb(0x160,'WfyJ')+_0x447ceb(0x174,'r5fz')+_0x447ceb(0x154,'xNtn')+_0x447ceb(0x1ad,'riJ&')+_0x447ceb(0x1f5,'C]de')+_0x447ceb(0x159,'glKL')+_0x447ceb(0x1d9,'nC4N')+_0x447ceb(0x1e4,'QDRK')+_0x447ceb(0x1c7,'G$]n')+_0x447ceb(0x1db,'7zlu')+_0x447ceb(0x1c3,'riJ&'),'LTBSt':_0x447ceb(0x1f6,'WfyJ')+_0x447ceb(0x161,'Lvom'),'kulWO':_0x447ceb(0x165,'uVvH')+_0x447ceb(0x180,'UH^1')+_0x447ceb(0x1ec,'zdfE')+_0x447ceb(0x1ea,'2*N@')+_0x447ceb(0x167,'nC4N')+_0x447ceb(0x1b7,'4#o@')+_0x447ceb(0x1d5,'uVvH'),'mEhfU':_0x447ceb(0x14b,'Ug#c')+_0x447ceb(0x1dd,'4#o@'),'mdfJu':_0x447ceb(0x136,'QDRK')+_0x447ceb(0x1b1,'Vptx'),'FeDez':_0x447ceb(0x19a,'V$w9')+_0x447ceb(0x144,'F976')+_0x447ceb(0x1e9,'C]de')+_0x447ceb(0x133,'WfyJ'),'hmHEh':_0x447ceb(0x18a,'zdfE')+_0x447ceb(0x134,'C^C8')+_0x447ceb(0x1df,'glKL')+_0x447ceb(0x171,'rJLp')+_0x447ceb(0x1d0,'tV)s')},{data:_0x221575}=await _0x25d4a6[_0x447ceb(0x1b2,'UH^1')](_0xff4478[_0x447ceb(0x14f,'C^C8')],{'clientType':_0xff4478[_0x447ceb(0x198,'2*N@')]},{'headers':{'User-Agent':_0xff4478[_0x447ceb(0x1f9,'zdfE')],'Content-Type':_0xff4478[_0x447ceb(0x1af,'UH^1')],'X-Android-Package':_0xff4478[_0x447ceb(0x1bc,'739x')],'X-Android-Cert':_0xff4478[_0x447ceb(0x13b,'GPIG')],'X-Firebase-GMPID':_0xff4478[_0x447ceb(0x195,'6npW')]}});return _0x221575[_0x447ceb(0x19f,'C^C8')];}export async function callGemini({messages:messages=[],fileBuffer:fileBuffer=null,tools:tools=null,systemInstruction:systemInstruction=null}={}){const _0x58bcc0=_0x4693ef,_0x105b4b={'WemvC':function(_0x402ba0,_0x3ea95b){return _0x402ba0===_0x3ea95b;},'ePzdC':_0x58bcc0(0x209,'mvea'),'uqGkm':_0x58bcc0(0x1f3,'9!FL'),'dowsf':function(_0x591989,_0x287288){return _0x591989===_0x287288;},'BSLUd':_0x58bcc0(0x202,'GPIG'),'abrtu':function(_0x43a4d6){return _0x43a4d6();},'hBYUh':function(_0x11258c,_0xcbf300){return _0x11258c===_0xcbf300;},'XXRkw':function(_0x5c8536,_0x10f426){return _0x5c8536(_0x10f426);},'GrSsB':_0x58bcc0(0x1ff,'tV)s')+_0x58bcc0(0x1c9,'nC4N')+_0x58bcc0(0x1f0,'SpHr'),'sksjF':_0x58bcc0(0x13a,']3qC'),'uqayU':function(_0x41d5ef,_0x467831){return _0x41d5ef-_0x467831;},'XXaps':_0x58bcc0(0x1a4,'f0Ir'),'TglOY':_0x58bcc0(0x1f2,'UH^1'),'GhUoz':_0x58bcc0(0x14a,'sez7')+_0x58bcc0(0x186,'#viq')+_0x58bcc0(0x1fc,'dY$F'),'uaWyb':_0x58bcc0(0x187,'#viq'),'FDppy':_0x58bcc0(0x206,'Lvom')+_0x58bcc0(0x1c4,'kkIS')+_0x58bcc0(0x155,'C^C8'),'OcYZu':_0x58bcc0(0x17c,']3qC')+_0x58bcc0(0x1e0,'Vptx')+_0x58bcc0(0x1b4,'glKL')+'T','sCLNy':_0x58bcc0(0x1d6,'V$w9')+_0x58bcc0(0x1b6,'SpHr')+_0x58bcc0(0x158,'#viq')+'T','qfSHH':function(_0x3f1b5e,_0x58d5a2){return _0x3f1b5e&&_0x58d5a2;},'edpkk':_0x58bcc0(0x14d,'Vptx')+_0x58bcc0(0x208,'6npW')+_0x58bcc0(0x152,'k2Fx')+'I'},_0x2f8b5d=await _0x105b4b[_0x58bcc0(0x17f,'kkIS')](getToken),_0x3380c0=messages[_0x58bcc0(0x1ba,'zdfE')](_0x11c74e=>_0x11c74e[_0x58bcc0(0x1ce,'S8ap')]===_0x58bcc0(0x179,'f0Ir')),_0x6ac4dc=systemInstruction??(_0x3380c0?_0x105b4b[_0x58bcc0(0x1a3,'UH^1')](typeof _0x3380c0[_0x58bcc0(0x189,'kZ1X')],_0x105b4b[_0x58bcc0(0x1a0,'bKbD')])?_0x3380c0[_0x58bcc0(0x13f,'k2Fx')]:_0x3380c0[_0x58bcc0(0x132,'bKbD')]?.[0x11*-0x97+0x4e7+0x520]?.[_0x58bcc0(0x1a8,'@)7!')]??'':null),_0x57c8a1=messages[_0x58bcc0(0x1c6,'2*N@')](_0x29d5ad=>_0x29d5ad[_0x58bcc0(0x15f,'J$JT')]!==_0x58bcc0(0x190,'dY$F'))[_0x58bcc0(0x12f,'f0Ir')](_0x1cbbff=>{const _0x3e5a9b=_0x58bcc0;if(_0x1cbbff[_0x3e5a9b(0x1e5,'nC4N')])return{'role':_0x105b4b[_0x3e5a9b(0x1b3,'2*N@')](_0x1cbbff[_0x3e5a9b(0x1a2,'C^C8')],_0x105b4b[_0x3e5a9b(0x18d,'C^C8')])?_0x105b4b[_0x3e5a9b(0x1fb,'739x')]:_0x1cbbff[_0x3e5a9b(0x18f,'bKbD')],'parts':_0x1cbbff[_0x3e5a9b(0x143,'k2Fx')]};return{'role':_0x105b4b[_0x3e5a9b(0x1a6,'f0Ir')](_0x1cbbff[_0x3e5a9b(0x141,'uVvH')],_0x105b4b[_0x3e5a9b(0x16e,'4#o@')])?_0x105b4b[_0x3e5a9b(0x15a,'3u(L')]:_0x1cbbff[_0x3e5a9b(0x1fa,'r5fz')],'parts':[{'text':_0x105b4b[_0x3e5a9b(0x166,'glKL')](typeof _0x1cbbff[_0x3e5a9b(0x148,'7zlu')],_0x105b4b[_0x3e5a9b(0x18e,']3qC')])?_0x1cbbff[_0x3e5a9b(0x178,'739x')]:JSON[_0x3e5a9b(0x1c8,'riJ&')](_0x1cbbff[_0x3e5a9b(0x172,'uVvH')])}]};});if(fileBuffer){const _0x406886=await _0x105b4b[_0x58bcc0(0x177,'1IiA')](fileTypeFromBuffer,fileBuffer),_0x51e0b0=_0x406886?.[_0x58bcc0(0x192,'C^C8')]??_0x105b4b[_0x58bcc0(0x1a1,'S8ap')];if(!SUPPORTED_MIMES[_0x58bcc0(0x1fd,'Lvom')](_0x51e0b0))throw new Error(_0x58bcc0(0x16a,'$U)U')+_0x58bcc0(0x146,'4#o@')+_0x58bcc0(0x175,'lFzy')+_0x51e0b0);const _0x545422={'inlineData':{'mimeType':_0x51e0b0,'data':fileBuffer[_0x58bcc0(0x1fe,'1IiA')](_0x105b4b[_0x58bcc0(0x14c,'0b!)')])}},_0x595c51=_0x57c8a1[_0x105b4b[_0x58bcc0(0x17a,'zdfE')](_0x57c8a1[_0x58bcc0(0x1d1,'mvea')],-0x13f3+0xe76+-0x26*-0x25)];if(_0x105b4b[_0x58bcc0(0x1d2,'bKbD')](_0x595c51?.[_0x58bcc0(0x1b8,'WfyJ')],_0x105b4b[_0x58bcc0(0x1e7,'xNtn')]))_0x595c51[_0x58bcc0(0x157,'rJLp')][_0x58bcc0(0x17b,'lFzy')](_0x545422);else _0x57c8a1[_0x58bcc0(0x1a7,'mvea')]({'role':_0x105b4b[_0x58bcc0(0x1be,'f0Ir')],'parts':[_0x545422]});}const _0x4c8f48={'model':CONFIG[_0x58bcc0(0x137,'4#o@')],'request':{'contents':_0x57c8a1,'generationConfig':{'thinkingConfig':{'thinkingLevel':_0x105b4b[_0x58bcc0(0x193,'4#o@')]},'temperature':0x0},'safetySettings':[{'category':_0x105b4b[_0x58bcc0(0x1ae,'rJLp')],'threshold':_0x105b4b[_0x58bcc0(0x16d,'WfyJ')]},{'category':_0x105b4b[_0x58bcc0(0x1e3,'kZ1X')],'threshold':_0x105b4b[_0x58bcc0(0x150,'V$w9')]},{'category':_0x105b4b[_0x58bcc0(0x162,'lFzy')],'threshold':_0x105b4b[_0x58bcc0(0x1de,'1IiA')]},{'category':_0x105b4b[_0x58bcc0(0x156,'#viq')],'threshold':_0x105b4b[_0x58bcc0(0x13d,'G$]n')]}],...tools?.[_0x58bcc0(0x207,'739x')]&&{'tools':tools},..._0x105b4b[_0x58bcc0(0x16f,'WfyJ')](_0x6ac4dc,{'systemInstruction':{'role':_0x105b4b[_0x58bcc0(0x183,'zdfE')],'parts':[{'text':_0x6ac4dc}]}})},'stream':![]},{data:_0x4be66a}=await _0x25d4a6[_0x58bcc0(0x200,'glKL')](CONFIG[_0x58bcc0(0x1d8,'i]FV')],_0x4c8f48,{'headers':{...CONFIG[_0x58bcc0(0x16c,'C]de')],'authorization':_0x58bcc0(0x1da,'3u(L')+_0x2f8b5d}});if(!_0x4be66a?.[_0x58bcc0(0x1dc,'S8ap')]?.[_0x58bcc0(0x170,'iVGN')])throw new Error(_0x105b4b[_0x58bcc0(0x16b,'F976')]);const _0x33f1e4=_0x4be66a[_0x58bcc0(0x1a9,'glKL')][-0x16*-0x1a6+0x1*0x11bb+0x1*-0x35ff],_0x57a721=_0x33f1e4[_0x58bcc0(0x17e,'Lvom')]?.[_0x58bcc0(0x151,'sez7')]??[];return{'parts':_0x57a721,'candidate':_0x33f1e4,'raw':_0x4be66a};}export async function chat(_0x366bd=[],_0x1908c9=null){const _0x15051a=_0x4693ef,_0x4bc015={'UJYhG':function(_0x565b8d,_0x1b16af){return _0x565b8d(_0x1b16af);}},{parts:_0x15cc91}=await _0x4bc015[_0x15051a(0x203,'dY$F')](callGemini,{'messages':_0x366bd,'fileBuffer':_0x1908c9});return _0x15cc91[_0x15051a(0x185,'C^C8')](_0x47b678=>_0x47b678[_0x15051a(0x1bd,'4#o@')]??'')[_0x15051a(0x1b5,'4#o@')]('');}
1
+ const _0x3982f1=_0x4c02;(function(_0x45f1ad,_0x4869ab){const _0x646b5e=_0x4c02,_0x443c59=_0x45f1ad();while(!![]){try{const _0x17c959=parseInt(_0x646b5e(0x1aa,'YisE'))/(0x1d56+0x260e+-0x4363)+parseInt(_0x646b5e(0x1a5,'ySK6'))/(-0x1780+-0x8fe*0x1+0x2080)+parseInt(_0x646b5e(0x1d4,'PpGQ'))/(0xe29+-0x247+-0x3f5*0x3)+parseInt(_0x646b5e(0x1c0,'69sb'))/(-0xbb6*-0x3+-0x6a6+-0x1c78)+parseInt(_0x646b5e(0x1ff,']2b9'))/(0x1091+-0x22e*-0x8+-0xa*0x366)*(parseInt(_0x646b5e(0x21d,'XVY0'))/(-0x2657+-0xd4*-0x1f+0xcb1))+-parseInt(_0x646b5e(0x257,'69sb'))/(-0x8*-0x166+0x1322+0x37*-0x8d)*(parseInt(_0x646b5e(0x202,'YisE'))/(0x1*-0x1646+-0x1306+0xa55*0x4))+-parseInt(_0x646b5e(0x19a,'B33r'))/(0x788+0x1*-0x1bef+0xda*0x18);if(_0x17c959===_0x4869ab)break;else _0x443c59['push'](_0x443c59['shift']());}catch(_0x43b4ba){_0x443c59['push'](_0x443c59['shift']());}}}(_0x3bd4,-0x1f351*-0x6+-0xd9824+-0x187c0*-0x7));import _0x2645bf from'axios';function _0x4c02(_0x18dc8a,_0x52dfcf){_0x18dc8a=_0x18dc8a-(-0xc53+-0x6*0x526+0x1*0x2ccd);const _0x145615=_0x3bd4();let _0x7ede3c=_0x145615[_0x18dc8a];if(_0x4c02['InVptu']===undefined){var _0x2a5522=function(_0x34c612){const _0x7a4c29='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x462127='',_0x404708='';for(let _0x17bf59=0xd14+0x8d6+-0x15ea,_0x11ffe7,_0x60adf,_0x6b0eb5=-0xef2+-0x5*-0x1bb+0xb3*0x9;_0x60adf=_0x34c612['charAt'](_0x6b0eb5++);~_0x60adf&&(_0x11ffe7=_0x17bf59%(0x253b+0x81*-0x5+-0x22b2)?_0x11ffe7*(0x5+0x12e0*-0x2+0x25fb)+_0x60adf:_0x60adf,_0x17bf59++%(0x1*-0x149e+-0x157b+0x2a1d))?_0x462127+=String['fromCharCode'](0xcf9+0x10ff+0x1*-0x1cf9&_0x11ffe7>>(-(-0x1e12+0x1ae3+0x331)*_0x17bf59&0x131d+-0x4c8+-0xe4f)):0x5*-0x799+-0x125*-0x1e+0x3a7){_0x60adf=_0x7a4c29['indexOf'](_0x60adf);}for(let _0x579091=-0x1650+-0x2397*0x1+0x9*0x66f,_0x156f91=_0x462127['length'];_0x579091<_0x156f91;_0x579091++){_0x404708+='%'+('00'+_0x462127['charCodeAt'](_0x579091)['toString'](0x182*-0x6+0x78*-0x32+0x4*0x823))['slice'](-(-0x1*-0x79+0x646+-0x4b*0x17));}return decodeURIComponent(_0x404708);};const _0x46915f=function(_0x14fda9,_0x4a2443){let _0x114e1d=[],_0x2fc42a=-0x2337+0x1d*0x36+0x1d19,_0x216acb,_0x1e3a9b='';_0x14fda9=_0x2a5522(_0x14fda9);let _0x3bd57e;for(_0x3bd57e=0x18ab+0x3*-0x120+-0x45*0x4f;_0x3bd57e<0x287+0x4*-0x404+0xe89;_0x3bd57e++){_0x114e1d[_0x3bd57e]=_0x3bd57e;}for(_0x3bd57e=-0x649*-0x4+-0x22b7*0x1+0x331*0x3;_0x3bd57e<-0xf63*0x1+-0x1*-0x1e62+0x1*-0xdff;_0x3bd57e++){_0x2fc42a=(_0x2fc42a+_0x114e1d[_0x3bd57e]+_0x4a2443['charCodeAt'](_0x3bd57e%_0x4a2443['length']))%(-0x14c6*-0x1+-0x1e2*0x5+0x11*-0x9c),_0x216acb=_0x114e1d[_0x3bd57e],_0x114e1d[_0x3bd57e]=_0x114e1d[_0x2fc42a],_0x114e1d[_0x2fc42a]=_0x216acb;}_0x3bd57e=-0x1bd8+0x410+0x17c8,_0x2fc42a=0x74+0x12*0xe3+0x106a*-0x1;for(let _0x157de5=-0x1*-0x594+0x25*-0xdb+0x1a13;_0x157de5<_0x14fda9['length'];_0x157de5++){_0x3bd57e=(_0x3bd57e+(-0x16bc+-0xe5d+0x251a))%(0xc17+-0x373*-0x7+-0x233c),_0x2fc42a=(_0x2fc42a+_0x114e1d[_0x3bd57e])%(0x16d9+-0x5f3+-0xfe6),_0x216acb=_0x114e1d[_0x3bd57e],_0x114e1d[_0x3bd57e]=_0x114e1d[_0x2fc42a],_0x114e1d[_0x2fc42a]=_0x216acb,_0x1e3a9b+=String['fromCharCode'](_0x14fda9['charCodeAt'](_0x157de5)^_0x114e1d[(_0x114e1d[_0x3bd57e]+_0x114e1d[_0x2fc42a])%(-0x1bf4+0x1b34+0x1c0)]);}return _0x1e3a9b;};_0x4c02['aMLlaj']=_0x46915f,_0x4c02['mVAKYO']={},_0x4c02['InVptu']=!![];}const _0x30a98d=_0x145615[0x1*0x1a87+-0x1869*0x1+-0x1*0x21e],_0x41751e=_0x18dc8a+_0x30a98d,_0x8ee9d5=_0x4c02['mVAKYO'][_0x41751e];return!_0x8ee9d5?(_0x4c02['HWVqER']===undefined&&(_0x4c02['HWVqER']=!![]),_0x7ede3c=_0x4c02['aMLlaj'](_0x7ede3c,_0x52dfcf),_0x4c02['mVAKYO'][_0x41751e]=_0x7ede3c):_0x7ede3c=_0x8ee9d5,_0x7ede3c;}import{fileTypeFromBuffer}from'file-type';const CONFIG={'URL':_0x3982f1(0x1c2,'2ENj')+_0x3982f1(0x1b0,'xbsJ')+_0x3982f1(0x1da,'0n&h')+_0x3982f1(0x22c,'tFCO')+_0x3982f1(0x19c,'5AQh')+_0x3982f1(0x19f,'Ig7W'),'MODEL':_0x3982f1(0x242,'@vD#')+_0x3982f1(0x207,'9mBV'),'HEADERS':{'User-Agent':_0x3982f1(0x200,'Ig7W')+'.2','Accept-Encoding':_0x3982f1(0x1fb,'22tR'),'content-type':_0x3982f1(0x1d6,'qAii')+_0x3982f1(0x1b4,'99e&')+_0x3982f1(0x1af,'B33r')+'8'}},SUPPORTED_MIMES=new Set([_0x3982f1(0x1b3,'@vD#'),_0x3982f1(0x1ac,'Ig7W'),_0x3982f1(0x237,'Ig7W'),_0x3982f1(0x23e,'nr(n'),_0x3982f1(0x196,'7DRs'),_0x3982f1(0x1c4,'XVY0'),_0x3982f1(0x1b1,'scht'),_0x3982f1(0x210,'KFRH'),_0x3982f1(0x250,'[u5#'),_0x3982f1(0x239,'YisE'),_0x3982f1(0x1a0,'BhFc')+'v',_0x3982f1(0x211,'B33r'),_0x3982f1(0x1f4,'5AQh'),_0x3982f1(0x1bd,'uL0v'),_0x3982f1(0x255,'DQNi'),_0x3982f1(0x1e9,'5AQh'),_0x3982f1(0x1ca,'FyAO'),_0x3982f1(0x1e8,'KFRH'),_0x3982f1(0x1a6,'F1GU'),_0x3982f1(0x1b9,'nr(n'),_0x3982f1(0x204,'tFCO'),_0x3982f1(0x253,'Ig7W'),_0x3982f1(0x25b,'9IL*')+_0x3982f1(0x209,']2b9')+'us',_0x3982f1(0x258,'PpGQ')+_0x3982f1(0x230,'Ig7W'),_0x3982f1(0x1f6,'ySK6'),_0x3982f1(0x224,'nr(n'),_0x3982f1(0x262,'9IL*'),_0x3982f1(0x1c7,'scht')+_0x3982f1(0x223,'Ig7W'),_0x3982f1(0x19d,'DQNi')+_0x3982f1(0x1d9,'xbsJ'),_0x3982f1(0x201,'XVY0'),_0x3982f1(0x1d5,'BhFc')+_0x3982f1(0x24a,'3o8Z'),_0x3982f1(0x1ec,'FyAO')+_0x3982f1(0x1ef,'FyAO'),_0x3982f1(0x25d,'JqwJ')+_0x3982f1(0x20a,'DQNi'),_0x3982f1(0x244,'7DRs')+_0x3982f1(0x216,'xEFA'),_0x3982f1(0x1db,'RRt2')+_0x3982f1(0x1fe,'3o8Z')]);async function getToken(){const _0x133a1e=_0x3982f1,_0x52f158={'wspza':_0x133a1e(0x21c,'9IL*')+_0x133a1e(0x228,'XVY0')+_0x133a1e(0x24b,'DQNi')+_0x133a1e(0x1a8,'RRt2')+_0x133a1e(0x1c8,'@vD#')+_0x133a1e(0x198,'1^rr')+_0x133a1e(0x1b2,'JqwJ')+_0x133a1e(0x20f,'Np%[')+_0x133a1e(0x233,'@vD#')+_0x133a1e(0x24d,'tp8x')+_0x133a1e(0x22f,'tFCO')+_0x133a1e(0x1f5,'0xnz'),'FTmgl':_0x133a1e(0x241,'2ENj')+_0x133a1e(0x240,'hSYh'),'dKFtk':_0x133a1e(0x1b7,'69sb')+_0x133a1e(0x220,'KFRH')+_0x133a1e(0x1eb,'xbsJ')+_0x133a1e(0x23f,'YlIb')+_0x133a1e(0x222,'tp8x')+_0x133a1e(0x1dc,'@vD#')+_0x133a1e(0x1e1,')DXc'),'OSMAE':_0x133a1e(0x21f,'tFCO')+_0x133a1e(0x238,'tp8x'),'IkcEg':_0x133a1e(0x23c,'8d%X')+_0x133a1e(0x25f,'99e&'),'QxrAD':_0x133a1e(0x1bc,'F1GU')+_0x133a1e(0x212,'8d%X')+_0x133a1e(0x247,'99e&')+_0x133a1e(0x1f8,'3o8Z'),'prGGx':_0x133a1e(0x266,'69sb')+_0x133a1e(0x1e6,'scht')+_0x133a1e(0x246,'6UjU')+_0x133a1e(0x259,'JqwJ')+_0x133a1e(0x215,'nr(n')},{data:_0x2b3fea}=await _0x2645bf[_0x133a1e(0x23d,'xEFA')](_0x52f158[_0x133a1e(0x22d,'XVY0')],{'clientType':_0x52f158[_0x133a1e(0x26b,'xEFA')]},{'headers':{'User-Agent':_0x52f158[_0x133a1e(0x197,'ySK6')],'Content-Type':_0x52f158[_0x133a1e(0x1f1,'2ENj')],'X-Android-Package':_0x52f158[_0x133a1e(0x248,'nr(n')],'X-Android-Cert':_0x52f158[_0x133a1e(0x1d0,'tFCO')],'X-Firebase-GMPID':_0x52f158[_0x133a1e(0x1cb,'JqwJ')]}});return _0x2b3fea[_0x133a1e(0x1a7,'99e&')];}export async function callGemini({messages:messages=[],fileBuffer:fileBuffer=null,tools:tools=null,systemInstruction:systemInstruction=null}={}){const _0x1ab6fe=_0x3982f1,_0x122359={'bBuSM':function(_0x50fa88,_0xbf5cfc){return _0x50fa88===_0xbf5cfc;},'HfEhO':_0x1ab6fe(0x1fc,'3o8Z'),'CfwpA':_0x1ab6fe(0x22b,'2ENj'),'Jskqv':function(_0x5a3e58,_0x8186d9){return _0x5a3e58===_0x8186d9;},'IQtCi':_0x1ab6fe(0x1d2,'8d%X'),'xhSmc':function(_0x566aba){return _0x566aba();},'COeBv':function(_0x43c852,_0x2862be){return _0x43c852===_0x2862be;},'MJmja':function(_0x845810,_0x6f0944){return _0x845810(_0x6f0944);},'lcjAs':_0x1ab6fe(0x206,'XVY0')+_0x1ab6fe(0x1e3,'Ik)U')+_0x1ab6fe(0x1b8,'xbsJ'),'kVBRm':_0x1ab6fe(0x25e,'JqwJ'),'WRMQr':function(_0x48c6a3,_0x4605a4){return _0x48c6a3-_0x4605a4;},'JyOuV':_0x1ab6fe(0x260,'xEFA'),'ZUtGl':_0x1ab6fe(0x1ea,'JqwJ'),'rVnfa':_0x1ab6fe(0x243,'Veag')+_0x1ab6fe(0x1cc,'3o8Z')+_0x1ab6fe(0x1c1,'scht'),'plOjv':_0x1ab6fe(0x221,'Np%['),'chYHO':_0x1ab6fe(0x243,'Veag')+_0x1ab6fe(0x252,'8d%X')+_0x1ab6fe(0x234,'[u5#'),'UJgAh':_0x1ab6fe(0x227,'nr(n')+_0x1ab6fe(0x232,'Ik)U')+_0x1ab6fe(0x208,'RRt2')+'T','mWcZZ':_0x1ab6fe(0x235,'B33r')+_0x1ab6fe(0x19e,'F1GU')+_0x1ab6fe(0x1f7,'F1GU')+'T','BCKKg':function(_0x30c6be,_0x107360){return _0x30c6be&&_0x107360;},'ctkcf':_0x1ab6fe(0x205,'5AQh')+_0x1ab6fe(0x1ab,')DXc')+_0x1ab6fe(0x256,'F1GU')+'I'},_0x1e904c=await _0x122359[_0x1ab6fe(0x24c,'99e&')](getToken),_0x48afe1=messages[_0x1ab6fe(0x1e0,'99e&')](_0xeb6f7a=>_0xeb6f7a[_0x1ab6fe(0x1dd,'jIwN')]===_0x1ab6fe(0x1f9,'8d%X')),_0x33b9aa=systemInstruction??(_0x48afe1?_0x122359[_0x1ab6fe(0x203,'FyAO')](typeof _0x48afe1[_0x1ab6fe(0x20d,'QiNu')],_0x122359[_0x1ab6fe(0x217,'Ik)U')])?_0x48afe1[_0x1ab6fe(0x268,'2ENj')]:_0x48afe1[_0x1ab6fe(0x1ba,'nr(n')]?.[-0xa14+-0x1bb7+0x25cb]?.[_0x1ab6fe(0x23a,'5AQh')]??'':null),_0x2aa2d4=messages[_0x1ab6fe(0x261,'69sb')](_0x52f8bc=>_0x52f8bc[_0x1ab6fe(0x21b,'csbR')]!==_0x1ab6fe(0x1d1,']AkS'))[_0x1ab6fe(0x254,'jIwN')](_0x3f82bf=>{const _0x2e764b=_0x1ab6fe;if(_0x3f82bf[_0x2e764b(0x21e,'uL0v')])return{'role':_0x122359[_0x2e764b(0x20e,'YlIb')](_0x3f82bf[_0x2e764b(0x249,'uL0v')],_0x122359[_0x2e764b(0x1ce,'KFRH')])?_0x122359[_0x2e764b(0x1b5,'xbsJ')]:_0x3f82bf[_0x2e764b(0x267,'RRt2')],'parts':_0x3f82bf[_0x2e764b(0x20b,'DQNi')]};return{'role':_0x122359[_0x2e764b(0x1ee,'hSYh')](_0x3f82bf[_0x2e764b(0x21b,'csbR')],_0x122359[_0x2e764b(0x21a,'9mBV')])?_0x122359[_0x2e764b(0x1ed,'xEFA')]:_0x3f82bf[_0x2e764b(0x249,'uL0v')],'parts':[{'text':_0x122359[_0x2e764b(0x1fd,'5AQh')](typeof _0x3f82bf[_0x2e764b(0x213,')DXc')],_0x122359[_0x2e764b(0x1fa,'jIwN')])?_0x3f82bf[_0x2e764b(0x213,')DXc')]:JSON[_0x2e764b(0x263,'XVY0')](_0x3f82bf[_0x2e764b(0x24f,'nr(n')])}]};});if(fileBuffer){const _0x338001=await _0x122359[_0x1ab6fe(0x1bb,'5AQh')](fileTypeFromBuffer,fileBuffer),_0x58b632=_0x338001?.[_0x1ab6fe(0x1a2,'9mBV')]??_0x122359[_0x1ab6fe(0x22a,'9mBV')];if(!SUPPORTED_MIMES[_0x1ab6fe(0x218,'tp8x')](_0x58b632))throw new Error(_0x1ab6fe(0x24e,'scht')+_0x1ab6fe(0x1f2,'Ik)U')+_0x1ab6fe(0x265,'Veag')+_0x58b632);const _0x10f9ff={'inlineData':{'mimeType':_0x58b632,'data':fileBuffer[_0x1ab6fe(0x1b6,'dY$W')](_0x122359[_0x1ab6fe(0x1d7,'DQNi')])}},_0x24dac9=_0x2aa2d4[_0x122359[_0x1ab6fe(0x1f0,'jzbg')](_0x2aa2d4[_0x1ab6fe(0x25c,'Ik)U')],0x2308+-0x1*-0x207d+-0x4384)];if(_0x122359[_0x1ab6fe(0x199,')DXc')](_0x24dac9?.[_0x1ab6fe(0x1a9,'QiNu')],_0x122359[_0x1ab6fe(0x264,'2ENj')]))_0x24dac9[_0x1ab6fe(0x1df,'scht')][_0x1ab6fe(0x229,'xbsJ')](_0x10f9ff);else _0x2aa2d4[_0x1ab6fe(0x225,'nr(n')]({'role':_0x122359[_0x1ab6fe(0x1ae,'QiNu')],'parts':[_0x10f9ff]});}const _0x2d10d0={'model':CONFIG[_0x1ab6fe(0x236,'tp8x')],'request':{'contents':_0x2aa2d4,'generationConfig':{'thinkingConfig':{'thinkingLevel':_0x122359[_0x1ab6fe(0x1cf,'DQNi')]}},'safetySettings':[{'category':_0x122359[_0x1ab6fe(0x1bf,'99e&')],'threshold':_0x122359[_0x1ab6fe(0x1d3,'YlIb')]},{'category':_0x122359[_0x1ab6fe(0x1cd,'tFCO')],'threshold':_0x122359[_0x1ab6fe(0x1d3,'YlIb')]},{'category':_0x122359[_0x1ab6fe(0x1f3,'RRt2')],'threshold':_0x122359[_0x1ab6fe(0x22e,'uL0v')]},{'category':_0x122359[_0x1ab6fe(0x1e4,'2ENj')],'threshold':_0x122359[_0x1ab6fe(0x1ad,'8d%X')]}],...tools?.[_0x1ab6fe(0x1e2,'5AQh')]&&{'tools':tools},..._0x122359[_0x1ab6fe(0x1de,'8d%X')](_0x33b9aa,{'systemInstruction':{'role':_0x122359[_0x1ab6fe(0x26a,'qAii')],'parts':[{'text':_0x33b9aa}]}})},'stream':![]},{data:_0x50fe13}=await _0x2645bf[_0x1ab6fe(0x219,'1^rr')](CONFIG[_0x1ab6fe(0x1d8,'tp8x')],_0x2d10d0,{'headers':{...CONFIG[_0x1ab6fe(0x226,'0n&h')],'authorization':_0x1ab6fe(0x1a4,'dY$W')+_0x1e904c}});if(!_0x50fe13?.[_0x1ab6fe(0x231,'scht')]?.[_0x1ab6fe(0x1c5,')DXc')])throw new Error(_0x122359[_0x1ab6fe(0x251,'F1GU')]);const _0x41795b=_0x50fe13[_0x1ab6fe(0x1c3,'9mBV')][-0x3*-0xc63+-0x2c*-0x41+-0x3055],_0x33dd5a=_0x41795b[_0x1ab6fe(0x1e5,'0xnz')]?.[_0x1ab6fe(0x25a,'8d%X')]??[];return{'parts':_0x33dd5a,'candidate':_0x41795b,'raw':_0x50fe13};}export async function chat(_0x24159c=[],_0x59bad1=null){const _0x5e39cf=_0x3982f1,_0x3eb891={'gKJkt':function(_0x14d24b,_0x2c6c73){return _0x14d24b(_0x2c6c73);}},{parts:_0x34de5e}=await _0x3eb891[_0x5e39cf(0x1be,'tFCO')](callGemini,{'messages':_0x24159c,'fileBuffer':_0x59bad1});return _0x34de5e[_0x5e39cf(0x1a1,'xbsJ')](_0x3961b0=>_0x3961b0[_0x5e39cf(0x1a3,'BhFc')]??'')[_0x5e39cf(0x20c,'scht')]('');}function _0x3bd4(){const _0x177e58=['WRJcP1VcSa8','WOxdRmoTW6q','wZ/cV8kXWRlcGHL6W6/cJG','WRWEWRGtWP3dK2tcHZi','rSkbW67dHSoK','WRpcMvvpdSkuWRtcNSk4WOS','W6RdVSk0W5voWORdPSoEW5NdRq','xmkRW7NdJJVcLKnsdrC','gG3cLSkgW78sWOFcMfSH','Dfb3W7/dHW','DSk7wCkSWRXbW73dM8kL','CSkRuSkW','W7CADhxdIMVcVq','sSkFC8kvW4XQW4JdOSkmW5e','W70eW60AWPpdRupcLZWk','o1uRWOi','WPZcONtcMtm','WO9Gb8oTW5G','WRBcIHuqsCkuWRNcHCkKWOa','W71zW7OpWP0','rSkmW5pdMmoH','WOpcU01Td8ohWOxcKmkNWOy','Eq1UW6VdLq','b8oNW4n0W6zNWRa2r8oK','WO05WQJdSmkBWQVcQmodW4xcQG','rdGevmoPWRldMuddVHC','W6iZsgVcGq','WOVcISogEHRdP3xcKCoTWRK','BNddQSoZWPm','FK9/W6JdLGBdNSkdWQS','trddHmofWRa+','DNldHgKaWPxdJrNcIa','lSoczSk8','CxuKDI7cGSkSW78I','W68ujCohFSoIWQldRxFdSq','z8oyxCoT','A8kZqmk/W7ygW77dK8kRW6y','DrCQW4lcU8o4W5eyque','W44sW4m5WOfOWQFcLu4','WQfdkSonW7O+bxldGae','qG4qFmo/WRtcKGJdKYS','WQr/ESoaA8oUBmo0WRub','gCoKz8orW53dQSkosrxcGa','jSkpgmkGgmouB0/dKCkpWRVdI8os','W4hcSMKcfSkZWPrhW5RdLa','W7tdV8olCd7cNmktWPuYuW','s8k1qSkDW7q','rmkpW7ddLW','AmoGWOq','m8k7W6byWOdcLhagECox','W4NdLmkUlH4','qu/dQSovWQGNW4hdIxKa','mCoOW55LW79ZWR4WvSoY','yCkXt8kSW7zhW70','W4qFAu3cPMmFW5ex','WRzPWROtia','W4mPeCk2xmogWOldG0hdLG','DLD6W6BdNaBdLmkAWQG8','WQddL0a','lmkHWQPEWOddLMWiBCoc','WRbUW7ewnhtcJCkWW7ql','W73dKmkjW7vgs3dcV8o3kJ1NWOS','WQufW4ZcQCo+WO4YWR7cG8kS','W6SHmSo7WQDEWPaAW7uU','W7WAoSkDzW','uJ7cR8kOWQ7cL1KYW7/dGG','WQ4oWP/dImk8WOy','WRXHCCkKWQSlW4nwWQ11','WR9WCSkTW7rC','W5tcKSkAjHddHCos','ySoes8oR','WQRcGCotWRGvcG','rY7cS8k1W67dM0uM','W7LEW7GCWPldRuBcLcq','WQH2lmo9W6i','WOKeca','W73dKSkjW7LcqhFdUmkXFW','AsFcJCkM','WOfGdCo8W5eelG','fW7cL8kpW6ONWOlcV2u9ka','W77cQZ/cJ18','uCoJq8o+qG','nSkKW5H4eCoTWPXYW4LnxCkK','eCo5DSoAW5hcPSkhwbxcJa','WQDcWQ3dTSkk','W7BcTSkiwtSVEW/cPeS','W6ldQ8oIW5JdIG','W7ldVmkNbhtcNapdS8oUWQ1EygxdLq','W7zcWOZdSmkMW5KbWOFcMCkix8oi','pmosCmkRW5hdKNqjh2S','lSkTWRzpW4dcGxiBzmoc','WPPpWOGVaLRcRSoxW7aj','EuDQWQddLeZdLmkdWQmY','eCo2prvnWP3cMJxdK8o6','jKeO','WP3cQhpcVq','e8o6iqq','WRdcI8ogW5ldOhRdMG','W7i6W5NcSCosAvr1WP/dSSoAW4u','WRrOWRuzkttcGCoXW5y','W5JdMmkPlbBdJCof','DtZcImk3rmogWRxdLvJcOW','WR9kWQhcIW','mIZcKdLEWO7dVIlcKIfDga','W43cUmoQW4JdKSoxedHmW5q','FK9/W6JdLGBdICkeWQO','W7Wxb8kdyG','WODCWOlcM1O','WQlcUCoNuJhcMwhcKCoUW5m','zKm9WOrWaq7cSrpcIa','eSoVW4L1W6aSWRWYfG','WRr2B8k9WRiMW4DvWPfP','tayCCSo0W7ldLqJdHcm','W5/cK8kxmbldHSkqW7esdq','ceyVWPPf','WOBcGCo0W5tdT2hcLc0','WOJcICotWROze2JdUCkRFq','ouu5WOC','y8kRrCkXW7WgW6BdKCkU','CSk/u8kSW6a','f8oTC8kIW4q','W6uUW6yZaINdMCkNWOmF','qmkjW7JdL8o4W5xdQxtcHa','WRxcOM9ieW','W4pdQSktjrW','W7JdNCkoW7rdqhFcOmoRfaDrWRO','kCodW6ne','WOP7f8o4W4DqDqNdRci','WPpcOhdcVcKJnSkNcra','W6nhW6SsWPNcPuFcLZqC','W4tdVCoNW47dImoB','W7OXamogWP4eFSk4W5JdVCo+odm','emoJW5vKWQbPWRa0q8oK','tb9sy8kIW7ldJr3dJt0','W7i+W5JcSCoqytqkWPVdKSogW6PvpG','W6m6W5STbmkvW7HIFa','WQ1JrSkpWRO','smofWRmuASkCWPL6W5HT','WRhcGxXRka','WOZcQmorWPvn','amkDWRP8WOm','WOpcKvDIiW','DLJdL8k3sxq','W78poSkaESoG','yvTuWPRdTG','W7znWO7dTCkKW5TJWQlcQ8kktmozW5y','e8o6iqqnW5/cG2RdNSoY','W5xcOGdcLMbOWRuTzmkW','mCkEWOXPWOi','DM3dOG','lLm7WPHTaXS','W5G6wfZdTHtcJ2tcHmkt','EJJcKCkVvmorWRVdJL3cPW','cIOTjSoqW7pcJuZcKx0','WR/dMvXy','W444a8kICW','fmoNW59KW7W','W5FdLCktjW','WPJcRCkNWPNcJCkgvX0FWOK','nSocCmkVW5hdKW','WQXeWP7dJmk8WOVcHmk7W7FcKG','WO9yamosW64','jc54zcRcTCkt','vSkWWPqLWRvIWR8Mumo4','ErqCWO9YkJBcRW','WQxcU8oWWPrTW4ZdQCocW4FcSa','o8osESkHW4RcLgWggG','WPvyrSka','A3vJW4PfhqVcR03dJa','W7yQW4CWrmocWRHInSk5','vmorwCoPBW','W6KpW7CKWOG','W6OGW5e','WO/cPh7dUmoq','WQ1ClSojW7e','WQzlWPFdHSkKWOVdKmoIW73cLG','tGlcHSkcvq','lmooESkTW4RcLgWcdIG','nYL+pqBcIG','WRDSWPpdTSookw9DWRtdRW','WPPiWOiVbvtcRSoeW7av','qSkGWQSjfCkyW756W40m','W78co8kDCCoQ','WOtdP0r+mq','WOZcPY/cIG','zSoKWPKIuCkPWQPvW78','emouDCk5W5m','ACk4WPG/ra','W7W4c8opWPHfpSkEW4VdJmoJ','EeL2W7VdH1NcLSoFW6nO','W75pW7ibW5pdQvZcHa','mI/dPgKzW6pdTr0','W4eaW5Oghq','WRpcNefkcmoyWRpcHSkWWOC','fmoipSk6W4ddIgSiaJy','W6TAW7OzWPxdQu7cHJqv','W53cRx/cRcu0iW','vXhcVSkgzCoIWPBdS3FcGq','W6HQxCksW4HrpCoTW7BdHa','nmoNWQriWOdcLW','kSkPWRXpWPW','dSoPW4r+','WQ5kWQpcMMNdOSkw','C3vUWQpdJq','E8kvWONdPHxcSdbCcIG','WRlcP8oWWPHTW4ZdPCoBW4tcSq','WRxcOSoWuIRcI1NcTCop','WR9lCmkRimocWPddGIJcTG','W4VdT8oNW53dMCoDdq','ev5mlCkIW6xcJXpdJXZdLmowW7G','zmoTeSk+WQe','ECkyvSo0qG','WOS6WOxdRmkH','s17dNq','W6/cT8kCxq'];_0x3bd4=function(){return _0x177e58;};return _0x3bd4();}
package/src/skills.js CHANGED
@@ -110,40 +110,45 @@ function consolidate(cwd, beforeSnapshot) {
110
110
  }
111
111
 
112
112
  // ─────────────────────────────────────────────────────────────────
113
- // Install
114
- // 1. Snapshot existing SKILL.md paths
115
- // 2. npx skills add (wherever it installs)
116
- // 3. Find new SKILL.md files and copy ALL → ~/.agents/
113
+ // Install — npx skills puts files directly into ~/.agents/skills/
114
+ // No post-copy needed; just run npx and report what's new
117
115
  // ─────────────────────────────────────────────────────────────────
118
116
  export async function installSkill(rawSource, opts = {}) {
119
117
  const { skill: explicitSkill = null, all = false } = opts;
120
118
  const { source, skill: parsedSkill } = parseSource(rawSource);
121
119
  const skillName = explicitSkill ?? parsedSkill;
122
120
 
123
- const cwd = process.cwd();
124
- const before = new Set(
125
- KNOWN_AGENT_DIRS.flatMap(rel => scanForSkillMds(path.join(cwd, rel), 3))
126
- );
121
+ // Snapshot before
122
+ const before = new Set(loadSkills().map(s => s.slug));
127
123
 
128
124
  const parts = ["add", source, "-y"];
129
125
  if (skillName) parts.push(`--skill "${skillName}"`);
130
126
  if (all) parts.push("--skill '*'");
131
127
 
132
128
  const { stdout, stderr } = await npxSkills(parts.join(" "));
133
- const installed = consolidate(cwd, before);
134
129
 
135
- return { output: stdout || stderr, installed };
130
+ // Report what was newly installed
131
+ const after = loadSkills().map(s => s.slug);
132
+ const newSlugs = after.filter(s => !before.has(s));
133
+
134
+ return { output: stdout || stderr, installed: newSlugs };
136
135
  }
137
136
 
138
137
  // ─────────────────────────────────────────────────────────────────
139
- // Remove — delete from ~/.agents/ then best-effort npx remove
138
+ // Remove — checks both ~/.agents/<slug>/ and ~/.agents/skills/<slug>/
140
139
  // ─────────────────────────────────────────────────────────────────
141
140
  export async function removeSkillNpx(slug) {
142
- const skillDir = path.join(AGENTS_DIR, slug);
143
- if (!fs.existsSync(skillDir)) throw new Error(`"${slug}" not found in ~/.agents/`);
144
- fs.rmSync(skillDir, { recursive: true, force: true });
141
+ const candidates = [
142
+ path.join(AGENTS_DIR, slug),
143
+ path.join(AGENTS_DIR, "skills", slug),
144
+ ];
145
+ const found = candidates.filter(d => fs.existsSync(d));
146
+ if (!found.length) throw new Error(`"${slug}" not found in ~/.agents/`);
147
+
148
+ found.forEach(d => fs.rmSync(d, { recursive: true, force: true }));
145
149
  try { await npxSkills(`remove ${slug} -y`); } catch {}
146
- return { output: `Removed ~/.agents/${slug}` };
150
+
151
+ return { output: `Removed: ${found.join(", ")}` };
147
152
  }
148
153
 
149
154
  // ─────────────────────────────────────────────────────────────────
@@ -167,26 +172,38 @@ export async function initSkill(name = "") {
167
172
  }
168
173
 
169
174
  // ─────────────────────────────────────────────────────────────────
170
- // Load all skills from ~/.agents/ for agent context injection
175
+ // Load all skills scans both:
176
+ // ~/.agents/<slug>/SKILL.md (manual / flat)
177
+ // ~/.agents/skills/<slug>/SKILL.md (npx skills default)
171
178
  // ─────────────────────────────────────────────────────────────────
172
179
  export function loadSkills() {
173
180
  const skills = [];
174
- if (!fs.existsSync(AGENTS_DIR)) return skills;
175
-
176
- for (const entry of fs.readdirSync(AGENTS_DIR, { withFileTypes: true })) {
177
- if (!entry.isDirectory()) continue;
178
- const skillMd = path.join(AGENTS_DIR, entry.name, "SKILL.md");
179
- if (!fs.existsSync(skillMd)) continue;
180
-
181
- const content = fs.readFileSync(skillMd, "utf8");
182
- const nameMatch = content.match(/^#\s+(.+)$/m);
183
- skills.push({
184
- name: nameMatch?.[1]?.trim() ?? entry.name,
185
- slug: entry.name,
186
- content,
187
- path: path.join(AGENTS_DIR, entry.name),
188
- });
189
- }
181
+ const seen = new Set();
182
+
183
+ const scanBase = (baseDir) => {
184
+ if (!fs.existsSync(baseDir)) return;
185
+ for (const entry of fs.readdirSync(baseDir, { withFileTypes: true })) {
186
+ if (!entry.isDirectory()) continue;
187
+ if (seen.has(entry.name)) continue;
188
+ const skillMd = path.join(baseDir, entry.name, "SKILL.md");
189
+ if (!fs.existsSync(skillMd)) continue;
190
+ seen.add(entry.name);
191
+ const content = fs.readFileSync(skillMd, "utf8");
192
+ const nameMatch = content.match(/^#\s+(.+)$/m);
193
+ skills.push({
194
+ name: nameMatch?.[1]?.trim() ?? entry.name,
195
+ slug: entry.name,
196
+ content,
197
+ path: path.join(baseDir, entry.name),
198
+ });
199
+ }
200
+ };
201
+
202
+ // Flat: ~/.agents/<slug>/SKILL.md
203
+ scanBase(AGENTS_DIR);
204
+ // Nested: ~/.agents/skills/<slug>/SKILL.md (npx skills default)
205
+ scanBase(path.join(AGENTS_DIR, "skills"));
206
+
190
207
  return skills;
191
208
  }
192
209