mirror of
https://github.com/Wx-2025/ST-Amily2-Chat-Optimisation.git
synced 2026-06-06 18:35:50 +00:00
2 lines
12 KiB
JavaScript
2 lines
12 KiB
JavaScript
const _0x4e3bdf=_0x3a3a;(function(_0x20c271,_0x45a632){const _0x30f376=_0x3a3a,_0x49070e=_0x20c271();while(!![]){try{const _0x554a42=parseInt(_0x30f376(0x1f1))/0x1*(parseInt(_0x30f376(0x1c6))/0x2)+parseInt(_0x30f376(0x1dc))/0x3*(-parseInt(_0x30f376(0x1fc))/0x4)+-parseInt(_0x30f376(0x1d0))/0x5+-parseInt(_0x30f376(0x1ff))/0x6*(-parseInt(_0x30f376(0x1e5))/0x7)+-parseInt(_0x30f376(0x203))/0x8*(parseInt(_0x30f376(0x1d9))/0x9)+parseInt(_0x30f376(0x1e6))/0xa*(-parseInt(_0x30f376(0x1c5))/0xb)+-parseInt(_0x30f376(0x1f8))/0xc*(-parseInt(_0x30f376(0x20d))/0xd);if(_0x554a42===_0x45a632)break;else _0x49070e['push'](_0x49070e['shift']());}catch(_0xe6bf9){_0x49070e['push'](_0x49070e['shift']());}}}(_0x2f76,0x30d09));function _0x3a3a(_0x48845e,_0x5c6fd2){const _0x2f760e=_0x2f76();return _0x3a3a=function(_0x3a3a29,_0xa657d4){_0x3a3a29=_0x3a3a29-0x1be;let _0xe4bace=_0x2f760e[_0x3a3a29];return _0xe4bace;},_0x3a3a(_0x48845e,_0x5c6fd2);}import{eventSource,event_types,main_api,stopGeneration}from'/script.js';import{renderExtensionTemplateAsync}from'/scripts/extensions.js';import{POPUP_RESULT,POPUP_TYPE,Popup}from'/scripts/popup.js';import{t}from'/scripts/i18n.js';import{extensionName}from'../utils/settings.js';import{getTokenCountAsync}from'/scripts/tokenizers.js';window['MiZheSi_Global']={'isEnabled':()=>inspectEnabled};const miZheSiPath=_0x4e3bdf(0x21c)+extensionName+'/MiZheSi',STORAGE_KEY=_0x4e3bdf(0x1bf);if(!('GENERATE_AFTER_COMBINE_PROMPTS'in event_types)||!('CHAT_COMPLETION_PROMPT_READY'in event_types)){toastr[_0x4e3bdf(0x217)]('【密折司】错误:您的SillyTavern版本过旧,缺少必要的事件支持。请更新至最新版本。');throw new Error(_0x4e3bdf(0x1e3));}let inspectEnabled=![];function _0x2f76(){const _0xc09526=['openai','getElementById','error','dryRun','replace','className','<textarea\x20id=\x22mizhesi-plain-text-editor\x22\x20style=\x22width:\x20100%;\x20height:\x20100%;\x20box-sizing:\x20border-box;\x22></textarea>','third-party/','\x20字)','add','appendChild','splice','append','createElement','setItem','textarea','fast','amily2_miZheSiEnabled','stringify','【密折司】解析修改后的JSON奏章失败:','val','flexGap5','切换【密折司】状态','319TUMPAm','126782bhQzjg','length','prompt','find','template','flex-container','.mizhesi-line-char-count,\x20.mizhesi-injection-icons,\x20.mizhesi-injection-icons\x20*','CHAT_COMPLETION_PROMPT_READY','info','isArray','708425gzgIYP','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mizhesi-message-block\x22\x20data-role=\x22','div','GENERATE_AFTER_COMBINE_PROMPTS','开启Amliy2号密折司','textContent','content','.mizhesi-message-content','target','27hSUUtZ','closest','【密折司】解析JSON失败,本次修改未生效。','186ropQYi','stopPropagation','classList','【密折司】已','CANCELLED','title','show','【密折司】缺少必要的事件支持。','(总\x20','7NqOqnU','4140pEdqhu','extensionsMenu','#mizhesi-plain-text-editor','<i\x20class=\x22fa-solid\x20fa-brain\x22\x20title=\x22翰林院\x20RAG\x20注入\x22\x20style=\x22color:\x20#66ccff;\x22></i>','\x20Tokens\x20/\x20','list-group-item','toggle','toggleClass','slideToggle','.mizhesi-injection-icons','.mizhesi-message-header','6gnObhM','includes','.mizhesi-message-block','click','interactable','role','expanded','3576QfynsS','empty','complete','active','16696dCdmrg','%%AMILY2_TABLE_INJECTION%%','addEventListener','502602yjpTbE','.mizhesi-line-char-count','确认修改','<i\x20class=\x22fa-solid\x20fa-table-cells\x22\x20title=\x22表格系统注入\x22\x20style=\x22color:\x20#99cc33;\x22></i>','431752SxYWpu','取消生成','Input\x20is\x20not\x20a\x20chat\x20array.','text','siblings','input','.mizhesi-header\x20h3','放弃修改','each','miZheSiLaunchButton','13533NBIPOv','<span\x20id=\x22mizhesi-char-count\x22\x20style=\x22font-size:\x2014px;\x20color:\x20#FFD700;\x20margin-left:\x2015px;\x20font-weight:\x20normal;\x22></span>','parse','chat','【密折司】无法找到左下角扩展菜单\x20(extensionsMenu)。','\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mizhesi-message-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mizhesi-injection-icons\x22\x20style=\x22display:\x20inline-flex;\x20gap:\x205px;\x20margin-right:\x2010px;\x20align-items:\x20center;\x22></span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mizhesi-line-char-count\x22\x20style=\x22font-weight:\x20normal;\x20color:\x20#FFD700;\x20margin-right:\x2010px;\x22></span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mizhesi-role\x22>','.mizhesi-message-textarea','tabIndex'];_0x2f76=function(){return _0xc09526;};return _0x2f76();}function addLaunchButton(){const _0x58cde0=_0x4e3bdf,_0x95625b='关闭Amliy2号密折司',_0x32da99=_0x58cde0(0x1d4),_0x515a08='fa-solid\x20fa-scroll',_0x2f13cb=()=>inspectEnabled?_0x95625b:_0x32da99,_0xdc02b5=document['createElement'](_0x58cde0(0x1d2));_0xdc02b5['id']=_0x58cde0(0x20c),_0xdc02b5[_0x58cde0(0x1de)][_0x58cde0(0x21e)](_0x58cde0(0x1eb),_0x58cde0(0x1cb),_0x58cde0(0x1c3),_0x58cde0(0x1f5)),_0xdc02b5[_0x58cde0(0x214)]=0x0,_0xdc02b5[_0x58cde0(0x1e1)]=_0x58cde0(0x1c4);const _0x204742=document[_0x58cde0(0x222)]('i');_0x204742[_0x58cde0(0x21a)]=_0x515a08,_0xdc02b5[_0x58cde0(0x21f)](_0x204742);const _0xd2b486=document[_0x58cde0(0x222)]('span');_0xd2b486[_0x58cde0(0x1d5)]=_0x2f13cb(),_0xdc02b5[_0x58cde0(0x21f)](_0xd2b486);const _0x5e79e8=document['getElementById'](_0x58cde0(0x1e7));if(!_0x5e79e8){console[_0x58cde0(0x217)](_0x58cde0(0x211));return;}if(document[_0x58cde0(0x216)](_0xdc02b5['id']))return;_0x5e79e8['appendChild'](_0xdc02b5),_0xdc02b5[_0x58cde0(0x1fe)]('click',()=>{const _0x5ec06b=_0x58cde0;toggleInspectNext(),_0xd2b486[_0x5ec06b(0x1d5)]=_0x2f13cb(),_0xdc02b5['classList'][_0x5ec06b(0x1ec)](_0x5ec06b(0x1fb),inspectEnabled);}),_0xdc02b5[_0x58cde0(0x1de)][_0x58cde0(0x1ec)]('active',inspectEnabled);}function toggleInspectNext(){const _0x4ba811=_0x4e3bdf;inspectEnabled=!inspectEnabled,toastr[_0x4ba811(0x1ce)](_0x4ba811(0x1df)+(inspectEnabled?'开启':'关闭')),localStorage[_0x4ba811(0x223)](STORAGE_KEY,String(inspectEnabled));}async function showPromptInspector(_0x339b86){const _0x5f0e6a=_0x4e3bdf,_0x11fbc8=$(await renderExtensionTemplateAsync(miZheSiPath,_0x5f0e6a(0x1ca))),_0x3401ce=_0x11fbc8[_0x5f0e6a(0x1c9)]('#mizhesi-editor-container');let _0x154fe5=![];const _0x50cef1=_0x11fbc8['find'](_0x5f0e6a(0x209)),_0x435aec=$(_0x5f0e6a(0x20e));_0x50cef1['append'](_0x435aec);const _0x2aa3be=async()=>{const _0xd75945=_0x5f0e6a;let _0x13457c=0x0,_0x594083=0x0;if(_0x154fe5){const _0x1b29dd=_0x11fbc8[_0xd75945(0x1c9)](_0xd75945(0x213));for(const _0x1fd1f4 of _0x1b29dd){const _0xed7882=$(_0x1fd1f4)[_0xd75945(0x1c2)]();_0x13457c+=await getTokenCountAsync(_0xed7882),_0x594083+=_0xed7882[_0xd75945(0x1c7)];}}else{const _0x163a54=_0x11fbc8[_0xd75945(0x1c9)](_0xd75945(0x1e8))[_0xd75945(0x1c2)]();_0x13457c=await getTokenCountAsync(_0x163a54),_0x594083=_0x163a54[_0xd75945(0x1c7)];}_0x435aec[_0xd75945(0x206)](_0xd75945(0x1e4)+_0x13457c+_0xd75945(0x1ea)+_0x594083+_0xd75945(0x21d));};try{const _0x3c19ee=JSON[_0x5f0e6a(0x20f)](_0x339b86);if(Array[_0x5f0e6a(0x1cf)](_0x3c19ee)){_0x154fe5=!![],_0x3401ce[_0x5f0e6a(0x1f9)]();for(const _0x50eb26 of _0x3c19ee){const _0x10285b=$(_0x5f0e6a(0x1d1)+_0x50eb26['role']+_0x5f0e6a(0x212)+_0x50eb26[_0x5f0e6a(0x1f6)]+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mizhesi-message-content\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<textarea\x20class=\x22mizhesi-message-textarea\x22></textarea>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');let _0x4937fc=_0x50eb26[_0x5f0e6a(0x1d6)];const _0x5ad80c=_0x10285b['find'](_0x5f0e6a(0x1ef));_0x4937fc[_0x5f0e6a(0x1f2)]('%%HANLINYUAN_RAG_INJECTION%%')&&(_0x4937fc=_0x4937fc[_0x5f0e6a(0x219)]('%%HANLINYUAN_RAG_INJECTION%%',''),_0x5ad80c[_0x5f0e6a(0x221)](_0x5f0e6a(0x1e9)));_0x4937fc[_0x5f0e6a(0x1f2)](_0x5f0e6a(0x1fd))&&(_0x4937fc=_0x4937fc['replace'](_0x5f0e6a(0x1fd),''),_0x5ad80c['append'](_0x5f0e6a(0x202)));const _0x2079f6=_0x10285b[_0x5f0e6a(0x1c9)]('textarea');_0x2079f6[_0x5f0e6a(0x1c2)](_0x4937fc),_0x3401ce[_0x5f0e6a(0x221)](_0x10285b);const _0x38527f=_0x10285b[_0x5f0e6a(0x1c9)](_0x5f0e6a(0x200)),_0x272797=async()=>{const _0x2c5aa1=_0x5f0e6a,_0xe7d062=_0x2079f6[_0x2c5aa1(0x1c2)](),_0x865fc3=await getTokenCountAsync(_0xe7d062),_0x4f3667=_0xe7d062[_0x2c5aa1(0x1c7)];_0x38527f[_0x2c5aa1(0x206)]('('+_0x865fc3+'\x20Tokens\x20/\x20'+_0x4f3667+_0x2c5aa1(0x21d));};await _0x272797(),_0x2079f6['on']('input',async()=>{await _0x272797(),await _0x2aa3be();}),_0x10285b['find'](_0x5f0e6a(0x1f0))['on'](_0x5f0e6a(0x1f4),function(_0x471ab5){const _0x5cee8d=_0x5f0e6a;if($(_0x471ab5[_0x5cee8d(0x1d8)])['is'](_0x5cee8d(0x1cc))){_0x471ab5[_0x5cee8d(0x1dd)]();return;}const _0x19177f=$(this)[_0x5cee8d(0x207)](_0x5cee8d(0x1d7)),_0x2993b2=$(this)[_0x5cee8d(0x1da)](_0x5cee8d(0x1f3));_0x2993b2[_0x5cee8d(0x1ed)](_0x5cee8d(0x1f7)),_0x19177f[_0x5cee8d(0x1ee)](_0x5cee8d(0x1be));});}}else throw new Error(_0x5f0e6a(0x205));}catch(_0x29e007){_0x154fe5=![];const _0x9decbd=$(_0x5f0e6a(0x21b));_0x9decbd['val'](_0x339b86),_0x3401ce[_0x5f0e6a(0x1f9)]()[_0x5f0e6a(0x221)](_0x9decbd),_0x9decbd['on'](_0x5f0e6a(0x208),async()=>await _0x2aa3be());}await _0x2aa3be();const _0x4e9e9e={'text':_0x5f0e6a(0x204),'result':POPUP_RESULT['CANCELLED'],'appendAtEnd':!![],'action':async()=>{const _0x2cd943=_0x5f0e6a;await stopGeneration(),await _0x21268d[_0x2cd943(0x1fa)](POPUP_RESULT[_0x2cd943(0x1e0)]);}},_0x21268d=new Popup(_0x11fbc8,POPUP_TYPE['CONFIRM'],'',{'wide':!![],'large':!![],'okButton':_0x5f0e6a(0x201),'cancelButton':_0x5f0e6a(0x20a),'customButtons':[_0x4e9e9e]}),_0x1d6a15=await _0x21268d[_0x5f0e6a(0x1e2)]();if(!_0x1d6a15)return _0x339b86;if(_0x154fe5){const _0x37bca9=[];return _0x11fbc8[_0x5f0e6a(0x1c9)](_0x5f0e6a(0x1f3))[_0x5f0e6a(0x20b)](function(){const _0x1fb6ce=_0x5f0e6a,_0x40ca3c=$(this)['data'](_0x1fb6ce(0x1f6)),_0x2c1e37=$(this)[_0x1fb6ce(0x1c9)](_0x1fb6ce(0x224))['val']();_0x37bca9['push']({'role':_0x40ca3c,'content':_0x2c1e37});}),JSON[_0x5f0e6a(0x1c0)](_0x37bca9,null,0x4);}else return _0x11fbc8['find'](_0x5f0e6a(0x1e8))['val']();}function isChatCompletion(){const _0x236fa0=_0x4e3bdf;return main_api===_0x236fa0(0x215);}eventSource['on'](event_types[_0x4e3bdf(0x1d3)],async _0x24500c=>{const _0x4c5ed3=_0x4e3bdf;if(!inspectEnabled||_0x24500c[_0x4c5ed3(0x218)]||isChatCompletion())return;if(typeof _0x24500c['prompt']!=='string')return;const _0x1f2973=await showPromptInspector(_0x24500c[_0x4c5ed3(0x1c8)]);_0x1f2973!==_0x24500c['prompt']&&(_0x24500c[_0x4c5ed3(0x1c8)]=_0x1f2973,console['log']('【密折司】奏章已按御笔修改\x20(Text\x20Gen)。'));}),eventSource['on'](event_types[_0x4e3bdf(0x1cd)],async _0x599e25=>{const _0x4f2ae7=_0x4e3bdf;if(!inspectEnabled||_0x599e25[_0x4f2ae7(0x218)]||!isChatCompletion())return;if(!Array[_0x4f2ae7(0x1cf)](_0x599e25[_0x4f2ae7(0x210)]))return;const _0x5d8c08=JSON[_0x4f2ae7(0x1c0)](_0x599e25['chat'],null,0x4),_0x6f7968=await showPromptInspector(_0x5d8c08);if(_0x6f7968===_0x5d8c08)return;try{const _0x151d67=JSON[_0x4f2ae7(0x20f)](_0x6f7968);_0x599e25[_0x4f2ae7(0x210)][_0x4f2ae7(0x220)](0x0,_0x599e25[_0x4f2ae7(0x210)]['length'],..._0x151d67),console['log']('【密折司】奏章已按御笔修改\x20(Chat\x20Completion)。');}catch(_0x52a64c){console[_0x4f2ae7(0x217)](_0x4f2ae7(0x1c1),_0x52a64c),toastr[_0x4f2ae7(0x217)](_0x4f2ae7(0x1db));}}),addLaunchButton();
|