Files
ST-Amily2-Chat-Optimisation/core/events.js
2025-08-05 07:17:10 +08:00

1 line
5.3 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
(function(_0x21f2fe,_0x38af75){const _0x38ca99=_0x230b,_0x5d4398=_0x21f2fe();while(!![]){try{const _0x1e9724=-parseInt(_0x38ca99(0x10b))/0x1+-parseInt(_0x38ca99(0x117))/0x2*(parseInt(_0x38ca99(0x12c))/0x3)+parseInt(_0x38ca99(0x122))/0x4*(-parseInt(_0x38ca99(0x132))/0x5)+-parseInt(_0x38ca99(0x10c))/0x6+-parseInt(_0x38ca99(0x12a))/0x7*(parseInt(_0x38ca99(0x109))/0x8)+-parseInt(_0x38ca99(0x120))/0x9*(-parseInt(_0x38ca99(0x133))/0xa)+parseInt(_0x38ca99(0x126))/0xb;if(_0x1e9724===_0x38af75)break;else _0x5d4398['push'](_0x5d4398['shift']());}catch(_0x2958f3){_0x5d4398['push'](_0x5d4398['shift']());}}}(_0xb991,0x43b20));import{getContext,extension_settings}from'/scripts/extensions.js';import{characters,saveChatConditional,reloadCurrentChat}from'/script.js';function _0x230b(_0x486ff2,_0x4e061e){const _0xb9918e=_0xb991();return _0x230b=function(_0x230ba8,_0x838f){_0x230ba8=_0x230ba8-0x107;let _0xe6bb57=_0xb9918e[_0x230ba8];return _0xe6bb57;},_0x230b(_0x486ff2,_0x4e061e);}import{extensionName}from'../utils/settings.js';import{checkAndFixWithAPI}from'./api.js';import{writeSummaryToLorebook,getChatIdentifier}from'./lore.js';import{executeAutoHide}from'./autoHideManager.js';import{checkAndTriggerAutoSummary}from'./historiographer.js';const pendingWriteData={'summary':null,'targetLorebook':null,'settings':null,'chatIdentifier':null,'sourceAiMessageTimestamp':null};export async function onMessageReceived(_0x16f9e1){const _0x18fe64=_0x230b,_0xfecd9b=getContext();if(_0x16f9e1&&_0x16f9e1[_0x18fe64(0x127)]||_0xfecd9b[_0x18fe64(0x107)])return;const _0x5e4edc=extension_settings[extensionName],_0x5cba5d=_0xfecd9b[_0x18fe64(0x116)];if(!_0x5cba5d||_0x5cba5d[_0x18fe64(0x118)]===0x0)return;const _0x4bc1c4=_0x5cba5d[_0x5cba5d[_0x18fe64(0x118)]-0x1];if(_0x4bc1c4['is_user'])return;await executeAutoHide();const _0x4f8734=_0x5e4edc[_0x18fe64(0x12b)]&&(_0x5e4edc[_0x18fe64(0x129)]||_0x5e4edc[_0x18fe64(0x119)])&&_0x5e4edc[_0x18fe64(0x10f)];if(_0x4f8734){console[_0x18fe64(0x12f)](_0x18fe64(0x12e));pendingWriteData[_0x18fe64(0x10e)]&&pendingWriteData[_0x18fe64(0x123)]&&(await writeSummaryToLorebook(pendingWriteData),pendingWriteData[_0x18fe64(0x10e)]=null,pendingWriteData[_0x18fe64(0x123)]=null);if(_0x5cba5d[_0x18fe64(0x118)]>=0x2&&_0x5cba5d[_0x5cba5d[_0x18fe64(0x118)]-0x2][_0x18fe64(0x127)]){const _0x34cde7=_0x5e4edc[_0x18fe64(0x110)]||0x2,_0x4ee4ef=Math[_0x18fe64(0x108)](0x0,_0x5cba5d[_0x18fe64(0x118)]-0x1-_0x34cde7),_0xf66cd0=_0x5cba5d['slice'](_0x4ee4ef,_0x5cba5d[_0x18fe64(0x118)]-0x1),_0x35a193=await checkAndFixWithAPI(_0x4bc1c4,_0xf66cd0);if(_0x35a193){_0x35a193[_0x18fe64(0x114)]&&_0x35a193[_0x18fe64(0x114)]!==_0x4bc1c4[_0x18fe64(0x128)]&&_0x5e4edc[_0x18fe64(0x129)]&&(_0x4bc1c4[_0x18fe64(0x128)]=_0x35a193[_0x18fe64(0x114)],await saveChatConditional(),_0x5e4edc['optimizationMode']===_0x18fe64(0x111)&&await reloadCurrentChat());if(_0x35a193[_0x18fe64(0x10e)]&&_0x35a193[_0x18fe64(0x113)]&&_0x5e4edc[_0x18fe64(0x119)]){pendingWriteData[_0x18fe64(0x10e)]=_0x35a193[_0x18fe64(0x10e)],pendingWriteData[_0x18fe64(0x123)]=_0x35a193[_0x18fe64(0x113)],pendingWriteData[_0x18fe64(0x112)]=_0x4bc1c4[_0x18fe64(0x11d)],pendingWriteData['chatIdentifier']=await getChatIdentifier();if(_0x5e4edc[_0x18fe64(0x121)]){let _0x31121c=_0x18fe64(0x11a)+_0x35a193['loreSettings'][_0x18fe64(0x124)]+')';if(_0x35a193[_0x18fe64(0x113)][_0x18fe64(0x124)]===_0x18fe64(0x11e)){const _0x46d5be=characters[_0xfecd9b[_0x18fe64(0x134)]];_0x31121c=_0x46d5be?.[_0x18fe64(0x11b)]?.['extensions']?.[_0x18fe64(0x10a)]||_0x18fe64(0x115);}toastr[_0x18fe64(0x12d)](_0x18fe64(0x130)+_0x35a193[_0x18fe64(0x10e)]+'”\x20备妥待写入\x20“'+_0x31121c+'”',_0x18fe64(0x125),{'timeOut':0x1b58});}}}}else console[_0x18fe64(0x12f)](_0x18fe64(0x131));}((async()=>{const _0x44d6f7=_0x18fe64;try{await new Promise(_0x5445a5=>setTimeout(_0x5445a5,0x64)),await checkAndTriggerAutoSummary();}catch(_0x4486a9){console[_0x44d6f7(0x11c)](_0x44d6f7(0x11f),_0x4486a9);}})());}function _0xb991(){const _0x32da78=['68EJIRhg','settings','target','Amily2号','19474554dipTwg','is_user','mes','optimizationEnabled','1044274LvHWwP','enabled','1041XWbyhn','info','[Amily2号]\x20优化/摘要功能已启用,开始处理...','log','已优化并将总结:“','[Amily2号]\x20检测到消息并非AI对用户的直接回复已跳过优化总结。','85435dqreYg','1500eJnFKE','characterId','isWaitingForUserInput','max','24njuZiq','world','416742moIaAT','3272100OiWBcZ','[Amily2号-遗忘哨兵]\x20裁决检测到AI回复已被陛下操作遵旨废黜过时总结。','summary','apiUrl','contextMessages','refresh','sourceAiMessageTimestamp','loreSettings','optimizedContent','未绑定的主世界书','chat','1322fFgSnW','length','summarizationEnabled','独立中央档案(','data','error','send_date','character_main','[大史官]\x20后台自动总结任务执行时发生错误:','26181lHGVHs','showOptimizationToast'];_0xb991=function(){return _0x32da78;};return _0xb991();}export function onChatChanged(){const _0xd03e78=_0x230b,_0x2f82f0=getContext(),_0x45e827=_0x2f82f0[_0xd03e78(0x116)];if(!_0x45e827||_0x45e827[_0xd03e78(0x118)]===0x0){pendingWriteData[_0xd03e78(0x10e)]=null,pendingWriteData[_0xd03e78(0x123)]=null;return;}const _0x212ba0=_0x45e827[_0x45e827['length']-0x1];_0x212ba0[_0xd03e78(0x127)]&&pendingWriteData[_0xd03e78(0x10e)]&&(console[_0xd03e78(0x12f)](_0xd03e78(0x10d)),pendingWriteData[_0xd03e78(0x10e)]=null,pendingWriteData[_0xd03e78(0x123)]=null);}