Files
memory-manager-concurrent/docs/MODULE_REFERENCE.md
2026-02-04 10:33:49 +08:00

17 KiB
Raw Permalink Blame History

Memory-Manager-Concurrent 模块参考手册

版本: v0.4.0 | 架构: 模块化 + Webpack 打包

目录结构总览

src/
├── index.js                 # 主入口文件
├── core/                    # 核心基础模块
├── config/                  # 配置管理模块
├── worldbook/               # 世界书处理模块
├── api/                     # AI API 调用模块
├── memory/                  # 记忆处理模块
├── hooks/                   # 钩子拦截模块
├── ui/                      # 用户界面模块
└── utils/                   # 工具函数模块

1. core/ - 核心基础模块

1.1 logger.js

功能:统一日志输出管理

导出 类型 说明
Logger Object 日志工具对象
Logger.log() Function 普通日志
Logger.debug() Function 调试日志
Logger.warn() Function 警告日志
Logger.error() Function 错误日志(始终输出)

使用示例

import Logger from '@core/logger';
Logger.log('初始化完成');
Logger.error('发生错误:', error);

1.2 constants.js

功能:全局常量和路径检测

导出 类型 说明
EXTENSION_NAME String 插件名称标识
EXTENSION_FOLDER String 插件文件夹名
detectExtensionPath() Function 检测插件路径
getExtensionPath() Function 获取插件路径

1.3 error.js

功能:错误处理和用户提示

导出 类型 说明
MemoryManagerError Class 自定义错误类
handleError() Function 统一错误处理

1.4 sillytavern-api.js

功能:封装 SillyTavern API 访问

导出 类型 说明
getContext() Function 获取 ST 上下文
getEventSource() Function 获取事件源
getEventTypes() Function 获取事件类型
getExtensionSettings() Function 获取扩展设置
saveSettingsDebounced() Function 防抖保存设置
getRequestHeaders() Function 获取请求头含CSRF

2. config/ - 配置管理模块

2.1 config-manager.js

功能:配置的加载、保存和访问

导出 类型 说明
loadConfig() Function 加载配置
saveConfig() Function 保存配置
getGlobalSettings() Function 获取全局设置
updateGlobalSettings() Function 更新全局设置
getMemoryConfig() Function 获取记忆配置
getSummaryConfig() Function 获取总结配置
getAIConfig() Function 获取 AI 配置
updateAIConfig() Function 更新 AI 配置

2.2 default-config.js

功能:默认配置定义

导出 类型 说明
defaultConfig Object 默认配置对象(冻结)

2.3 imported-books.js

功能:已导入世界书名称管理

导出 类型 说明
getImportedBookNames() Function 获取已导入书名列表
saveImportedBookNames() Function 保存书名列表
addImportedBook() Function 添加书名
removeImportedBook() Function 移除书名

2.4 prompt-files.js

功能:提示词文件存储管理

导出 类型 说明
getImportedPromptFiles() Function 获取所有提示词文件
savePromptFileData() Function 保存提示词文件
getPromptFileData() Function 获取单个文件
deletePromptFileData() Function 删除文件
hasPromptFile() Function 检查文件是否存在

3. worldbook/ - 世界书处理模块

3.1 api.js

功能:世界书 API 操作

导出 类型 说明
getAllAvailableWorldBooks() Function 获取所有可用世界书
loadWorldBookByName() Function 按名称加载世界书
getImportedWorldBooks() Function 获取已导入的世界书
getWorldBookList() Function 快速获取世界书列表

3.2 parser.js

功能:世界书内容解析

导出 类型 说明
parseWorldBook() Function 解析世界书结构
formatAsWorldBook() Function 格式化为世界书格式
getSummaryContent() Function 获取总结内容

3.3 refresh.js

功能:世界书列表刷新和 UI 更新

导出 类型 说明
refreshWorldBookList() Function 刷新世界书列表
updateWorldBookUI() Function 更新世界书 UI

4. api/ - AI API 调用模块

4.1 adapter.js

功能:统一的 API 调用适配器

导出 类型 说明
APIAdapter Object API 适配器主对象
APIAdapter.call() Function 调用 AI API
APIAdapter.callWithRetry() Function 带重试的调用
APIAdapter.callWithMessages() Function 多消息调用
APIAdapter.testConnection() Function 测试连接

4.2 providers/openai.js

功能OpenAI 兼容 API 调用

导出 类型 说明
callOpenAI() Function 调用 OpenAI API

4.3 providers/anthropic.js

功能Anthropic Claude API 调用

导出 类型 说明
callAnthropic() Function 调用 Claude API

4.4 providers/google.js

功能Google Gemini API 调用

导出 类型 说明
callGoogle() Function 调用 Gemini API

4.5 providers/custom.js

功能:自定义 API 调用

导出 类型 说明
callCustom() Function 调用自定义 API

5. memory/ - 记忆处理模块

5.1 processor.js

功能:记忆处理核心逻辑

导出 类型 说明
processCategory() Function 处理单个分类
processSummaryBook() Function 处理总结世界书
processMemoryForMessage() Function 为消息处理记忆

5.2 result-merger.js

功能AI 返回结果合并

导出 类型 说明
mergeResults() Function 合并多个结果
deduplicateKeywords() Function 关键词去重

5.3 jailbreak.js

功能:破限词管理

导出 类型 说明
JAILBREAK_PROMPTS Array 破限词列表
getJailbreakPrefix() Function 获取破限前缀

5.4 prompt-builder.js

功能:提示词构建

导出 类型 说明
buildDataInjection() Function 构建数据注入
injectDataToPrompt() Function 注入数据到提示词
buildUserPrompt() Function 构建用户提示词
replacePromptVariables() Function 替换提示词变量

6. hooks/ - 钩子拦截模块

6.1 send-button-hook.js

功能:发送按钮拦截

导出 类型 说明
hookSendButton() Function 挂载发送按钮钩子
stopProcessing() Function 停止当前处理
isProcessing Boolean 是否正在处理

6.2 interceptor.js

功能:生成拦截器注册

导出 类型 说明
registerInterceptor() Function 注册 generate_interceptor

7. ui/ - 用户界面模块

7.1 template-loader.js

功能HTML 模板加载

导出 类型 说明
loadTemplate() Function 加载 HTML 模板
loadAllTemplates() Function 加载所有模板

7.2 events.js

功能UI 事件绑定

导出 类型 说明
bindEvents() Function 绑定所有事件
bindPanelEvents() Function 绑定面板事件
bindSettingsEvents() Function 绑定设置事件

7.3 menu-button.js

功能:扩展菜单按钮

导出 类型 说明
createExtensionMenuButton() Function 创建菜单按钮
updateMenuButtonStatus() Function 更新按钮状态

7.4 float-ball.js

功能:悬浮球控制

导出 类型 说明
createFloatBall() Function 创建悬浮球
updateFloatBallVisibility() Function 更新可见性
showFloatBall() Function 显示悬浮球
hideFloatBall() Function 隐藏悬浮球

7.5 components/progress-tracker.js

功能:进度追踪器

导出 类型 说明
ProgressTracker Class 进度追踪器类
progressTracker Instance 全局实例

7.6 components/message-progress.js

功能:消息进度面板

导出 类型 说明
MessageProgressPanel Class 消息进度面板类
messageProgressPanel Instance 全局实例

7.7 components/search-panel.js

功能:记忆搜索助手

导出 类型 说明
initSearchPanel() Function 初始化搜索面板
showSearchPanel() Function 显示搜索面板
hideSearchPanel() Function 隐藏搜索面板

7.8 components/plot-optimize.js

功能:剧情优化助手

导出 类型 说明
initPlotOptimizePanel() Function 初始化面板
showPlotOptimizePanel() Function 显示面板
hidePlotOptimizePanel() Function 隐藏面板

7.9 modals/config-modal.js

功能:配置弹窗

导出 类型 说明
showConfigModal() Function 显示配置弹窗
hideConfigModal() Function 隐藏配置弹窗
bindConfigModalEvents() Function 绑定弹窗事件

7.10 modals/worldbook-selector.js

功能:世界书选择器弹窗

导出 类型 说明
showWorldbookSelector() Function 显示选择器
hideWorldbookSelector() Function 隐藏选择器

7.11 modals/request-preview.js

功能:请求预览弹窗

导出 类型 说明
showRequestPreview() Function 显示请求预览
hideRequestPreview() Function 隐藏请求预览

7.12 modals/summary-check.js

功能:汇总检查弹窗

导出 类型 说明
showSummaryCheck() Function 显示汇总检查
hideSummaryCheck() Function 隐藏汇总检查

7.13 modals/flow-config.js

功能:流程配置弹窗

导出 类型 说明
showFlowConfig() Function 显示流程配置
hideFlowConfig() Function 隐藏流程配置
loadFlowConfig() Function 加载流程配置
saveFlowConfig() Function 保存流程配置

7.14 modals/prompt-editor.js

功能:提示词编辑器

导出 类型 说明
showPromptEditor() Function 显示编辑器
hidePromptEditor() Function 隐藏编辑器
loadPromptFiles() Function 加载提示词文件
savePromptFile() Function 保存提示词
saveAsPromptFile() Function 另存为
switchPromptType() Function 切换提示词类型
getCurrentPromptType() Function 获取当前类型

8. utils/ - 工具函数模块

8.1 message.js

功能:消息处理工具

导出 类型 说明
getLastUserMessage() Function 获取最后用户消息
getRecentContext() Function 获取最近上下文
injectMemory() Function 注入记忆到聊天

8.2 tag-filter.js

功能:标签过滤

导出 类型 说明
filterContentByTags() Function 按标签过滤内容

8.3 prompt-template.js

功能:提示词模板加载

导出 类型 说明
getPromptTemplate() Function 获取关键词提示词模板
getHistoricalPromptTemplate() Function 获取历史提示词模板
getPlotOptimizeTemplate() Function 获取剧情优化模板

模块依赖关系图

┌─────────────────────────────────────────────────────────────┐
│                        src/index.js                         │
│                        (主入口)                              │
└─────────────────────────┬───────────────────────────────────┘
                          │
    ┌─────────────────────┼─────────────────────┐
    │                     │                     │
    ▼                     ▼                     ▼
┌─────────┐        ┌─────────────┐        ┌─────────┐
│  core/  │◄───────│    ui/      │        │ hooks/  │
│ logger  │        │ components  │        │ send-   │
│ const   │        │ modals      │        │ button  │
│ error   │        │ events      │        │ inter-  │
│ st-api  │        └──────┬──────┘        │ ceptor  │
└────┬────┘               │               └────┬────┘
     │                    │                    │
     │              ┌─────┴─────┐              │
     │              │           │              │
     ▼              ▼           ▼              ▼
┌─────────┐   ┌─────────┐ ┌─────────┐   ┌─────────┐
│ config/ │◄──│ world-  │ │ memory/ │──►│  api/   │
│ manager │   │ book/   │ │ process │   │ adapter │
│ default │   │ api     │ │ merger  │   │ openai  │
│ books   │   │ parser  │ │ prompt  │   │ claude  │
│ prompts │   │ refresh │ │ jailbrk │   │ google  │
└─────────┘   └─────────┘ └─────────┘   └─────────┘
                  │             │
                  └──────┬──────┘
                         │
                    ┌────┴────┐
                    │ utils/  │
                    │ message │
                    │ tag-flt │
                    │ prompt  │
                    └─────────┘

常见维护场景

场景 1修改 AI API 调用逻辑

  • 查看 src/api/adapter.js
  • 各提供商实现在 src/api/providers/

场景 2修改配置保存逻辑

  • 查看 src/config/config-manager.js
  • 默认值在 src/config/default-config.js

场景 3修改提示词编辑器

  • 查看 src/ui/modals/prompt-editor.js
  • 提示词文件存储在 src/config/prompt-files.js

场景 4修改世界书处理

  • 解析逻辑在 src/worldbook/parser.js
  • API 调用在 src/worldbook/api.js

场景 5修改记忆处理流程

  • 核心处理在 src/memory/processor.js
  • 结果合并在 src/memory/result-merger.js

场景 6修改 UI 事件

  • 事件绑定在 src/ui/events.js
  • 各弹窗在 src/ui/modals/

构建命令

# 开发模式(带 source map
npm run build:dev

# 生产模式(压缩)
npm run build

# 监听模式(自动重建)
npm run dev

文件路径别名

在源代码中可以使用以下路径别名:

别名 实际路径
@ src/
@core src/core/
@config src/config/
@worldbook src/worldbook/
@api src/api/
@memory src/memory/
@hooks src/hooks/
@ui src/ui/
@utils src/utils/

版本信息

  • 版本: v0.4.1
  • 架构: 模块化 + Webpack 打包
  • 入口: dist/index.js
  • 许可: AGPL-3.0
  • 作者: 可乐、繁华

版本号更新清单

发布新版本时,需要更新以下文件中的版本号:

文件 位置 说明
manifest.json version 字段 插件清单版本
package.json version 字段 NPM 包版本
README.md 版本徽章 URL 显示版本徽章
CHANGELOG.md 新版本条目 更新日志
ui/panel.html 第92行 mm-author-text 界面显示版本
docs/MODULE_REFERENCE.md 版本信息章节 模块文档版本

更新后必须重新构建

npm install
npm run build

构建后 dist/index.js 会更新,发布前删除 node_modules/