From 56017782bb05fd9b9c1fc9ffcdbbf12428719728 Mon Sep 17 00:00:00 2001 From: Silence_Lurker Date: Tue, 20 Jan 2026 09:51:21 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84=E9=A1=B9=E7=9B=AE=E6=9E=B6?= =?UTF-8?q?=E6=9E=84=EF=BC=8C=E6=B7=BB=E5=8A=A0=20Nccs=20API=20=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=EF=BC=8C=E4=BC=98=E5=8C=96=E6=B5=81=E5=BC=8F=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TODO.md | 4 ++++ .../amily-data-table/Memorisation-forms.html | 7 +++--- core/api/NccsApi.js | 4 +++- core/table-system/settings.js | 4 ++++ manifest.json | 22 +++++++++---------- ui/table-bindings.js | 8 ++++++- 6 files changed, 32 insertions(+), 17 deletions(-) diff --git a/TODO.md b/TODO.md index 9c9bfcb..21413e9 100644 --- a/TODO.md +++ b/TODO.md @@ -13,6 +13,10 @@ 以下为待开发内容 +- **项目框架重构 (Project Refactoring)**: + - 现状:大量功能模块(如 `NccsApi.js`)存在手动组装参数、逻辑耦合度高、代码风格不统一("能跑就行"遗留债)等问题。 + - 目标:系统性重构项目架构,统一使用 Builder 模式(如 `Options.builder`),解耦业务逻辑与配置管理,提升代码可维护性和优雅度。 + ## 未修复 以下为示例(预计三个版本后移除) diff --git a/assets/amily-data-table/Memorisation-forms.html b/assets/amily-data-table/Memorisation-forms.html index fd12371..f31dde7 100644 --- a/assets/amily-data-table/Memorisation-forms.html +++ b/assets/amily-data-table/Memorisation-forms.html @@ -333,13 +333,12 @@
- +
- - + +
diff --git a/core/api/NccsApi.js b/core/api/NccsApi.js index c141585..0d75a70 100644 --- a/core/api/NccsApi.js +++ b/core/api/NccsApi.js @@ -38,13 +38,15 @@ if (window.Amily2Bus) { export function getNccsApiSettings() { return { + nccsEnabled: extension_settings[extensionName]?.nccsEnabled || false, apiMode: extension_settings[extensionName]?.nccsApiMode || 'openai_test', apiUrl: extension_settings[extensionName]?.nccsApiUrl?.trim() || '', apiKey: extension_settings[extensionName]?.nccsApiKey?.trim() || '', model: extension_settings[extensionName]?.nccsModel || '', maxTokens: extension_settings[extensionName]?.nccsMaxTokens || 4000, temperature: extension_settings[extensionName]?.nccsTemperature || 0.7, - tavernProfile: extension_settings[extensionName]?.nccsTavernProfile || '' + tavernProfile: extension_settings[extensionName]?.nccsTavernProfile || '', + useFakeStream: extension_settings[extensionName]?.nccsFakeStreamEnabled || false }; } diff --git a/core/table-system/settings.js b/core/table-system/settings.js index 6bcaf52..c332f71 100644 --- a/core/table-system/settings.js +++ b/core/table-system/settings.js @@ -155,4 +155,8 @@ export const tableSystemDefaultSettings = { table_independent_rules_enabled: false, table_tags_to_extract: '', table_exclusion_rules: [], + + // Nccs API 设置 + nccsEnabled: false, + nccsFakeStreamEnabled: false, }; diff --git a/manifest.json b/manifest.json index 12c6edf..98f2757 100644 --- a/manifest.json +++ b/manifest.json @@ -1,15 +1,15 @@ { - "name": "Amily2号聊天优化助手", - "display_name": "Amily2号助手", - "version": "1.8.3", - "author": "Wx-2025", - "description": "一个拥有独立UI的智能引擎,正文优化、自动总结、记忆表格、rag向量、隐藏楼层、剧情推进等多功能整合。", - "minSillyTavernVersion": "1.10.0", - "requires": [], - "homePage": "https://github.com/Wx-2025/ST-Amily2-Chat-Optimisation.git", - "loading_order": 9999, - "js": "index.js", - "styles": ["style.css"] + "name": "Amily2号聊天优化助手", + "display_name": "Amily2号助手", + "version": "1.8.3-a", + "author": "Wx-2025", + "description": "一个拥有独立UI的智能引擎,正文优化、自动总结、记忆表格、rag向量、隐藏楼层、剧情推进等多功能整合。", + "minSillyTavernVersion": "1.10.0", + "requires": [], + "homePage": "https://github.com/Wx-2025/ST-Amily2-Chat-Optimisation.git", + "loading_order": 9999, + "js": "index.js", + "styles": ["style.css"] } diff --git a/ui/table-bindings.js b/ui/table-bindings.js index 8ac9e50..f18b803 100644 --- a/ui/table-bindings.js +++ b/ui/table-bindings.js @@ -1980,7 +1980,7 @@ function bindNccsApiEvents() { const settings = extension_settings[extensionName]; if (settings.nccsEnabled === undefined) settings.nccsEnabled = false; - if (settings.nccsFakeStreamEnabled === undefined) settings.nccsEnabled = false; + if (settings.nccsFakeStreamEnabled === undefined) settings.nccsFakeStreamEnabled = false; if (settings.nccsApiMode === undefined) settings.nccsApiMode = 'openai_test'; if (settings.nccsApiUrl === undefined) settings.nccsApiUrl = 'https://api.openai.com/v1'; if (settings.nccsApiKey === undefined) settings.nccsApiKey = ''; @@ -2068,6 +2068,12 @@ function bindNccsApiEvents() { log(`Nccs API ${enabledToggle.checked ? '已启用' : '已禁用'}`, 'info'); }); + enabledFakeStreamToggle.addEventListener('change', () => { + settings.nccsFakeStreamEnabled = enabledFakeStreamToggle.checked; + saveSettingsDebounced(); + log(`Nccs API FakeStream ${enabledFakeStreamToggle.checked ? 'Enabled' : 'Disabled'}`, 'info'); + }); + if (modeSelect) { modeSelect.addEventListener('change', () => { settings.nccsApiMode = modeSelect.value;