mirror of
https://github.com/Wx-2025/ST-Amily2-Chat-Optimisation.git
synced 2026-06-06 02:15:49 +00:00
### 新功能 - **Function Call 填表模式**:在填表设置中新增独立开关,启用后支持通过 OpenAI 兼容接口(DeepSeek / OpenRouter / 各类中转等)直接返回结构化操作列表,绕过 `<Amily2Edit>` 文本解析路径,填表更稳定 - 遇到不支持 `tool_choice` 的接口时自动降级重试 - 对思考模型注入强制调用指令,防止绕过工具直接输出文本 - 全部走 ST 后端代理,修复 CSP 拦截直连外部 URL 的问题 - **主界面新增提示词链编辑器入口**,同时调换了记忆管理与角色世界书的按钮位置 - **规则中心**新增"自动排除用户楼层"选项 ### 修复 - 提示词链按钮点击无响应(改为事件委托方式绑定) - 拖拽组件微抖误触发(加 5px 移动阈值过滤) - 填表检查窗若干问题修复;翰林院(批量回填)修复;防抖逻辑落地 - 角色世界书入口添加使用警告弹窗(强制 10 秒倒计时),提示该功能长期未维护 - ApiProfile `fakeStream` 字段保存丢失问题 - 正文优化默认改为关闭状态 - NGMS / NCCS API 配置槽位标签修正(NGMS→总结,NCCS→填表) - API Profile 面板选择逻辑统一重构,修复多处旧字段覆盖新配置的问题 - 世界书控制参数兼容性修复(排除递归、插入位置、扫描深度等,适配 ST 1.17.0+)
1 line
11 KiB
JavaScript
1 line
11 KiB
JavaScript
function a0_0x4030(){const _0x5ed739=['s8oZieRcNdub','ka7cHSozW6W','WQD/FSkEW7K','EmktW4/dK8kLWOZcHtv8m8kGFa','gKjeW5NcPSo1ACoKiW','qGGiWPCaW7H0','emkcfCkz','hSkIEW/dNxW2yCoKwYxcHG','WQmBeeidWQpcTadcKa','WOvntCoaW5n5WRqb','d2Oao8oO','dCoqWQNdHmkMzCopW6y','zu4bWPOZ','W7JdQuPPAXO','WPBdMW8','W7HnFxmFEf4y','W5FdT8orW5WPW5zcW4vEWPlcIa','W5WlFIRcOMunW7et','WP/cMqRcLCkQgq','nCoBW640W5O','kCoaW7xdImk8','jIJdNmkCW7GOAmkD','WPOjW45pWR/cJCocWO0CWOLK','wYfrAq','WOpcOSkjWOHVW7e','zSk1EColW50','WQNcRmkufMm9uq','uHvUsCoA','WQRcTwWoWQ3cQ8o9','hCkVCG/dK3ecyConvc7cUG','F17dShldPSok','fCkAbLero8oHCW','usqAWRyE','W4KAW73cIXBdRq','f1LtW5jbWRfdCJOGzw8','W5VdV8kvWQrlW4PTW5a','zCo0W7pcU1a','WRZdOmkviG','CCkdW6ubgG','cCkpWRzBW53cJmo1w8k6W7ZdGeS','W5bICuyj','kciwg8oAWQtcUa','aCorW6JcMCoYnmo/W4Sxks/cOG','zgGXWR4ppI7dR3u','r8kpW4D/oSklAW','W6mMFSkMW4XRWRuH','gCkSB8oAnG','dCo7W57cGZO','W5qJW5BcLY8','DNaV','WQKBfZXyWOJcKW7cH8k4hq','WQDRBSkbW7vBWRO0WOe','W6NcGCkRf3a','qSoJW5lcJg/dO0i','W5xdNN9rWQhcLxFcICkV','lSopWP3cLSoQW4JcHG','Bmk9W78','W4TksHKa','WQ4KW6ehW7/dMCka','WPNdGGDeW4FcI1a','fKWPkmoXW5a','ySkVW7CGbmk4uG','B8kQWPFdHCkf','cCocW5hcLrqUW50XWO1nWPLtWPBdPq','W6VdQ3Xsrq','abBdQsNcRCkMW4RdK8o+W5lcNIe','dcZcR8oYW6ZcGZxdP8kauW','W58nztxcRxybW5WpfW','ECkoW7rV','WPxdNrDYW6C','dCkwgSkif8k8','vSk2WQZdJxK','dmkcdW','wSolWQ5tW7lcGSoYAG','cdilWRpcQSksfqBcMmkkWPC','WRJdJJzsW5W','Fxq/bCoQWOhcOv8','ASkPWQtcIgnyWQbt','WRtcRGK6W7JdJqm','c1GMoq','BmkFWR7cS8k6','WO/dJZz6W5O','W6ZcNCkLmuKt','i8osW4pcRSoDW5a0','x8kZWOZdPmkd','W7JcJCkPifCxqZxdHCoata','qxW9WPVdGSoIWRtcOmomt8oTW7y','gbtcMbBcJmo5p8kGgmosdSoznJ8','WRn7B8kcW7HD','E2ldJaZcJmo3','uaqhWRCS','W55oCJqd','zgKHWQmnpa','W658BJOY','r8kgtmolW7y','WPGGWPD7Cmk7xquO','WQFdMmoXDHC5xdxdOCovxq','WPldSSo6xM44i8ogCq','x8o3muVcGa','WQGDWO7cIfu7g8kAWQZdKCohWQXfWQlcMW','vrGjWPevW60','DmkRW6m','W4ldQxfOW7G','buzyW6tcGq','uSk1WPxdHSk/','vf3dT8obW7COAG','CmksyvHV','W5jkBMOB','xCkuWOBdL1vPWPe','WPKUrc4yELqB','WOu9WR1eEG','cSkGWOddR31/WQG','W7NdHLnqBa','W6aTpCoCWQunWRu5WQldMmoAbG','fSoeW6ZcOrRdT8oMmcm','kt8fbSorWQdcH3dcKa','W4ikW4xcRWi','ESkFWPZdPmkm','WPVcSuOgWOe','WQrQFSkeW7jFWPG3WOe','hSkLcvtcRbayBW','W57cTG3cQ8kxgMS','WOldS8kTeHm','zNCcWQef','WOJcRrlcT8kL','gSoTW6K','WR4tWRVcRfa','iSkXnXmSdSoVrSkX','afCOlSoKW4uW','qf3dN2ldRq','eCkeyvLWsum','ixX1WPVcM8oaz8or','yCk8WQNdQSkz','stVcVdrp'];a0_0x4030=function(){return _0x5ed739;};return a0_0x4030();}(function(_0x58223d,_0x29ca58){const _0x2707ea=a0_0x1f22,_0x2d51d1=_0x58223d();while(!![]){try{const _0x39a8ad=-parseInt(_0x2707ea(0x96,'Kd8U'))/0x1*(-parseInt(_0x2707ea(0xe3,'OLbs'))/0x2)+-parseInt(_0x2707ea(0xbe,'0QHX'))/0x3*(parseInt(_0x2707ea(0x105,'*HsB'))/0x4)+parseInt(_0x2707ea(0xca,'16QB'))/0x5*(parseInt(_0x2707ea(0xf6,'qbRs'))/0x6)+-parseInt(_0x2707ea(0x102,'ItmC'))/0x7*(parseInt(_0x2707ea(0x10a,']0I4'))/0x8)+parseInt(_0x2707ea(0x9e,'*HsB'))/0x9*(-parseInt(_0x2707ea(0xe1,'Tp7b'))/0xa)+-parseInt(_0x2707ea(0xfd,'ZpIA'))/0xb*(parseInt(_0x2707ea(0xa1,'x[jU'))/0xc)+parseInt(_0x2707ea(0xec,'OC1G'))/0xd*(parseInt(_0x2707ea(0xcb,'hON6'))/0xe);if(_0x39a8ad===_0x29ca58)break;else _0x2d51d1['push'](_0x2d51d1['shift']());}catch(_0x179e7c){_0x2d51d1['push'](_0x2d51d1['shift']());}}}(a0_0x4030,0x56691));export async function generateKeyPair(){const _0x20681f=a0_0x1f22,_0x1d80af={};_0x1d80af[_0x20681f(0xd1,'Tp7b')]=_0x20681f(0xc1,'OLbs'),_0x1d80af[_0x20681f(0xbb,'OLbs')]=_0x20681f(0xc2,'*&T@'),_0x1d80af[_0x20681f(0x9a,'gIA#')]=_0x20681f(0xf4,'406b'),_0x1d80af[_0x20681f(0x106,'(*QX')]=_0x20681f(0x9d,'k9yE');const _0x3f8ce5=_0x1d80af;return crypto[_0x20681f(0xba,'GLqE')][_0x20681f(0xc9,'T[mf')]({'name':_0x3f8ce5[_0x20681f(0xbf,'qkD4')],'modulusLength':0x800,'publicExponent':new Uint8Array([0x1,0x0,0x1]),'hash':_0x3f8ce5[_0x20681f(0xa4,'xfiU')]},!![],[_0x3f8ce5[_0x20681f(0x94,'Kd8U')],_0x3f8ce5[_0x20681f(0xa3,'m$wI')]]);}export async function serializeKeyPair(_0x4d2d35){const _0x4e6bba=a0_0x1f22,_0x2ee2e2={};_0x2ee2e2[_0x4e6bba(0xf9,'PJBZ')]=_0x4e6bba(0x108,'qkD4');const _0x47e76b=_0x2ee2e2,[_0x20d26c,_0x2214a6]=await Promise[_0x4e6bba(0xa5,'(*QX')]([crypto[_0x4e6bba(0x95,'xfiU')][_0x4e6bba(0xf3,'U1QP')](_0x47e76b[_0x4e6bba(0xe2,'5MVi')],_0x4d2d35[_0x4e6bba(0xa7,'x[jU')]),crypto[_0x4e6bba(0x92,'6AA5')][_0x4e6bba(0xe7,'k9yE')](_0x47e76b[_0x4e6bba(0xe8,'xfiU')],_0x4d2d35[_0x4e6bba(0xb7,'1eTM')])]);return{'publicJwk':JSON[_0x4e6bba(0x9f,'(*QX')](_0x20d26c),'privateJwk':JSON[_0x4e6bba(0x10b,'1eTM')](_0x2214a6)};}export async function importPublicKey(_0xef0eb1){const _0x3b7b36=a0_0x1f22,_0x3e6991={};_0x3e6991[_0x3b7b36(0x98,'&iwk')]=_0x3b7b36(0xf1,'RMx4'),_0x3e6991[_0x3b7b36(0xf8,'*HsB')]=_0x3b7b36(0xf7,'kSEM'),_0x3e6991[_0x3b7b36(0xc4,'Y64k')]=_0x3b7b36(0xae,'o6E6'),_0x3e6991[_0x3b7b36(0xef,'(*QX')]=_0x3b7b36(0xe0,'OLbs');const _0x1dde38=_0x3e6991;return crypto[_0x3b7b36(0xcd,'YLZF')][_0x3b7b36(0xd5,'PKFO')](_0x1dde38[_0x3b7b36(0xe9,'*HsB')],JSON[_0x3b7b36(0xd6,'OC1G')](_0xef0eb1),{'name':_0x1dde38[_0x3b7b36(0x10e,'RMx4')],'hash':_0x1dde38[_0x3b7b36(0xd2,'tJ*^')]},![],[_0x1dde38[_0x3b7b36(0xf2,'w(^a')]]);}export async function importPrivateKey(_0x5a7d8d){const _0x1fb976=a0_0x1f22,_0x6990dd={};_0x6990dd[_0x1fb976(0xb9,'qkD4')]=_0x1fb976(0xac,'gIA#'),_0x6990dd[_0x1fb976(0xa2,'Ub]r')]=_0x1fb976(0x93,'U1QP'),_0x6990dd[_0x1fb976(0xdc,'*HsB')]=_0x1fb976(0xc7,'RMx4'),_0x6990dd[_0x1fb976(0x9c,'ItmC')]=_0x1fb976(0xb1,'gIA#');const _0x102822=_0x6990dd;return crypto[_0x1fb976(0xd8,'Kd8U')][_0x1fb976(0xfe,'kSEM')](_0x102822[_0x1fb976(0xf5,'hON6')],JSON[_0x1fb976(0x8d,'tJ*^')](_0x5a7d8d),{'name':_0x102822[_0x1fb976(0xa2,'Ub]r')],'hash':_0x102822[_0x1fb976(0x104,'406b')]},![],[_0x102822[_0x1fb976(0xda,'WYkK')]]);}function a0_0x1f22(_0x5d333a,_0x467b5b){_0x5d333a=_0x5d333a-0x8b;const _0x403076=a0_0x4030();let _0x1f22c3=_0x403076[_0x5d333a];if(a0_0x1f22['oqHJQf']===undefined){var _0x3f2f24=function(_0x54ab98){const _0xf8aa42='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b1553='',_0x5f0b58='';for(let _0xa2b83b=0x0,_0x26c63a,_0x337773,_0x428155=0x0;_0x337773=_0x54ab98['charAt'](_0x428155++);~_0x337773&&(_0x26c63a=_0xa2b83b%0x4?_0x26c63a*0x40+_0x337773:_0x337773,_0xa2b83b++%0x4)?_0x5b1553+=String['fromCharCode'](0xff&_0x26c63a>>(-0x2*_0xa2b83b&0x6)):0x0){_0x337773=_0xf8aa42['indexOf'](_0x337773);}for(let _0x33f782=0x0,_0x1bdcf0=_0x5b1553['length'];_0x33f782<_0x1bdcf0;_0x33f782++){_0x5f0b58+='%'+('00'+_0x5b1553['charCodeAt'](_0x33f782)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5f0b58);};const _0x11c8e4=function(_0x6d218,_0x2fe6c0){let _0x56d647=[],_0x284766=0x0,_0x343e48,_0x1309d2='';_0x6d218=_0x3f2f24(_0x6d218);let _0x1d8928;for(_0x1d8928=0x0;_0x1d8928<0x100;_0x1d8928++){_0x56d647[_0x1d8928]=_0x1d8928;}for(_0x1d8928=0x0;_0x1d8928<0x100;_0x1d8928++){_0x284766=(_0x284766+_0x56d647[_0x1d8928]+_0x2fe6c0['charCodeAt'](_0x1d8928%_0x2fe6c0['length']))%0x100,_0x343e48=_0x56d647[_0x1d8928],_0x56d647[_0x1d8928]=_0x56d647[_0x284766],_0x56d647[_0x284766]=_0x343e48;}_0x1d8928=0x0,_0x284766=0x0;for(let _0x16fc24=0x0;_0x16fc24<_0x6d218['length'];_0x16fc24++){_0x1d8928=(_0x1d8928+0x1)%0x100,_0x284766=(_0x284766+_0x56d647[_0x1d8928])%0x100,_0x343e48=_0x56d647[_0x1d8928],_0x56d647[_0x1d8928]=_0x56d647[_0x284766],_0x56d647[_0x284766]=_0x343e48,_0x1309d2+=String['fromCharCode'](_0x6d218['charCodeAt'](_0x16fc24)^_0x56d647[(_0x56d647[_0x1d8928]+_0x56d647[_0x284766])%0x100]);}return _0x1309d2;};a0_0x1f22['dWnxWO']=_0x11c8e4,a0_0x1f22['RAShEc']={},a0_0x1f22['oqHJQf']=!![];}const _0x26a6bc=_0x403076[0x0],_0x1a9cd6=_0x5d333a+_0x26a6bc,_0x3b0877=a0_0x1f22['RAShEc'][_0x1a9cd6];return!_0x3b0877?(a0_0x1f22['ssdrih']===undefined&&(a0_0x1f22['ssdrih']=!![]),_0x1f22c3=a0_0x1f22['dWnxWO'](_0x1f22c3,_0x467b5b),a0_0x1f22['RAShEc'][_0x1a9cd6]=_0x1f22c3):_0x1f22c3=_0x3b0877,_0x1f22c3;}export async function encrypt(_0xc41e20,_0x5f054e){const _0x57b1e4=a0_0x1f22,_0x362f1b={'gUREI':_0x57b1e4(0xdd,'Xj]7'),'WRSRY':_0x57b1e4(0xa9,'&iwk'),'GJHYC':_0x57b1e4(0xd9,'gIA#'),'CiIns':_0x57b1e4(0x109,'Tp7b'),'scRLd':function(_0x38a2b7,_0x2d4f2c){return _0x38a2b7(_0x2d4f2c);},'vlUTJ':function(_0x2465a9,_0x361caa){return _0x2465a9(_0x361caa);},'SZavo':function(_0x1c1f67,_0x434ea3){return _0x1c1f67(_0x434ea3);}},_0xfdcda={};_0xfdcda[_0x57b1e4(0x99,'#q6A')]=_0x362f1b[_0x57b1e4(0x8f,'K#NS')],_0xfdcda[_0x57b1e4(0x8c,']0I4')]=0x100;const _0x130f6a=await crypto[_0x57b1e4(0x95,'xfiU')][_0x57b1e4(0x110,'o6E6')](_0xfdcda,!![],[_0x362f1b[_0x57b1e4(0xde,'qbRs')]]),_0x238095=crypto[_0x57b1e4(0xd7,'w(^a')](new Uint8Array(0xc)),_0x597ec9=new TextEncoder()[_0x57b1e4(0x107,'ECGm')](_0x5f054e),_0x1bc161={};_0x1bc161[_0x57b1e4(0xc3,'406b')]=_0x362f1b[_0x57b1e4(0xc8,'*HsB')],_0x1bc161['iv']=_0x238095;const _0x2c47ab=await crypto[_0x57b1e4(0xb0,'406b')][_0x57b1e4(0xaf,'qkD4')](_0x1bc161,_0x130f6a,_0x597ec9),_0x28fef7=await crypto[_0x57b1e4(0x10c,'!6jJ')][_0x57b1e4(0xd3,'5MVi')](_0x362f1b[_0x57b1e4(0xfb,'63nz')],_0x130f6a),_0x337118={};_0x337118[_0x57b1e4(0x100,'GLqE')]=_0x362f1b[_0x57b1e4(0xdf,'ItmC')];const _0xfaffcb=await crypto[_0x57b1e4(0xc6,'T[mf')][_0x57b1e4(0x90,'(b2I')](_0x337118,_0xc41e20,_0x28fef7);return JSON[_0x57b1e4(0xeb,'x[jU')]({'wrappedKey':_0x362f1b[_0x57b1e4(0xc5,'qkD4')](a0_0x44c4a4,_0xfaffcb),'iv':_0x362f1b[_0x57b1e4(0xb4,'ECGm')](a0_0x44c4a4,_0x238095),'ciphertext':_0x362f1b[_0x57b1e4(0x10d,'Cf1!')](a0_0x44c4a4,_0x2c47ab)});}export async function decrypt(_0xad2bc,_0x30e00b){const _0x4de0bb=a0_0x1f22,_0x1b81b2={'WLIdO':_0x4de0bb(0x103,'x[jU'),'vilRU':function(_0x63763b,_0x40a6bd){return _0x63763b(_0x40a6bd);},'TjEzU':_0x4de0bb(0xbc,'GLqE'),'dAzVc':_0x4de0bb(0xa0,'gIA#'),'PrUUT':_0x4de0bb(0xfa,'OC1G')},{wrappedKey:_0x315778,iv:_0x3575e5,ciphertext:_0x3e7cfa}=JSON[_0x4de0bb(0xfc,'x[jU')](_0x30e00b),_0x31fb81={};_0x31fb81[_0x4de0bb(0x8b,'K#NS')]=_0x1b81b2[_0x4de0bb(0xb2,'*HsB')];const _0x55ba21=await crypto[_0x4de0bb(0x92,'6AA5')][_0x4de0bb(0xff,'Kd8U')](_0x31fb81,_0xad2bc,_0x1b81b2[_0x4de0bb(0xce,'Kd8U')](a0_0xef0a23,_0x315778)),_0x2f6684=await crypto[_0x4de0bb(0xd0,'(*QX')][_0x4de0bb(0xe6,'m$wI')](_0x1b81b2[_0x4de0bb(0xea,'(b2I')],_0x55ba21,{'name':_0x1b81b2[_0x4de0bb(0xe4,'ECGm')]},![],[_0x1b81b2[_0x4de0bb(0xee,'#q6A')]]),_0x309533=await crypto[_0x4de0bb(0x92,'6AA5')][_0x4de0bb(0xab,'ZpIA')]({'name':_0x1b81b2[_0x4de0bb(0xf0,'!6jJ')],'iv':_0x1b81b2[_0x4de0bb(0xdb,'kSEM')](a0_0xef0a23,_0x3575e5)},_0x2f6684,_0x1b81b2[_0x4de0bb(0xa8,'T[mf')](a0_0xef0a23,_0x3e7cfa));return new TextDecoder()[_0x4de0bb(0xcc,'x[jU')](_0x309533);}function a0_0x44c4a4(_0xdfb86f){const _0x19c582=a0_0x1f22,_0x209db5={'aTvGP':function(_0x523686,_0x3c13dc){return _0x523686(_0x3c13dc);}};return _0x209db5[_0x19c582(0xad,'Tp7b')](btoa,String[_0x19c582(0x9b,'@KzD')](...new Uint8Array(_0xdfb86f)));}function a0_0xef0a23(_0x346b40){const _0xe30064=a0_0x1f22,_0x3095ef={'tPNjS':function(_0xf8ce3e,_0x19fa47){return _0xf8ce3e(_0x19fa47);}};return Uint8Array[_0xe30064(0xb8,'Wps*')](_0x3095ef[_0xe30064(0xcf,'Tp7b')](atob,_0x346b40),_0x1ca801=>_0x1ca801[_0xe30064(0xb6,'63nz')](0x0));} |