0c3808cf60e0ca3ab70811473980dccdf34909a5
LittleWhiteBox
📁 目录结构
LittleWhiteBox/
├── .editorconfig # 编辑器格式规范
├── .eslintignore # ESLint 忽略规则
├── .eslintrc.cjs # ESLint 配置
├── .gitignore # Git 忽略规则
├── index.js # 插件入口:初始化/注册所有模块
├── jsconfig.json # JS/TS 编辑器提示
├── manifest.json # 插件清单:版本/依赖/入口
├── package-lock.json # 依赖锁定
├── package.json # 开发依赖/脚本
├── README.md # 说明文档
├── settings.html # 主设置页:模块开关/UI
├── style.css # 全局样式
│
├── bridges/ # 外部桥接
│ ├── call-generate-service.js # 调用生成服务桥接
│ ├── worldbook-bridge.js # 世界书桥接
│ └── wrapper-iframe.js # iframe 包装桥接
│
├── core/ # 核心基础设施
│ ├── constants.js # 常量/路径定义
│ ├── debug-core.js # 日志/缓存注册
│ ├── event-manager.js # 统一事件管理
│ ├── iframe-messaging.js # postMessage 封装
│ ├── server-storage.js # 服务器存储封装
│ ├── slash-command.js # 斜杠命令封装
│ ├── variable-path.js # 变量路径解析
│ └── wrapper-inline.js # iframe 内联脚本
│
├── docs/ # 文档与许可
│ ├── COPYRIGHT # 版权声明
│ ├── LICENSE.md # 许可协议
│ └── NOTICE # 通知/第三方声明
│
├── libs/ # 第三方库
│ ├── dexie.mjs # IndexedDB 封装库
│ ├── js-yaml.mjs # YAML 解析/序列化(ESM)
│ ├── minisearch.mjs # 轻量搜索库
│ ├── pixi.min.js # PixiJS 渲染库
│ └── jieba-wasm/
│ ├── jieba_rs_wasm.js # 结巴分词 WASM JS 包装
│ ├── jieba_rs_wasm_bg.wasm # 结巴分词 WASM 二进制
│ └── jieba_rs_wasm_bg.wasm.d.ts # WASM 类型声明
│
├── modules/ # 功能模块
│ ├── control-audio.js # 音频权限控制
│ ├── iframe-renderer.js # iframe 渲染
│ ├── immersive-mode.js # 沉浸模式
│ ├── message-preview.js # 消息预览/拦截
│ ├── streaming-generation.js # 生成相关功能
│ │
│ ├── debug-panel/ # 调试面板
│ │ ├── debug-panel.html # 调试面板 UI
│ │ └── debug-panel.js # 调试面板逻辑
│ │
│ ├── fourth-wall/ # 四次元壁
│ │ ├── fourth-wall.html # UI
│ │ ├── fourth-wall.js # 主逻辑
│ │ ├── fw-image.js # 图像相关增强
│ │ ├── fw-message-enhancer.js # 消息增强
│ │ ├── fw-prompt.js # 提示词/注入
│ │ └── fw-voice.js # 语音相关
│ │
│ ├── novel-draw/ # 画图模块
│ │ ├── cloud-presets.js # 云端预设
│ │ ├── floating-panel.js # 浮动面板
│ │ ├── gallery-cache.js # 图库缓存
│ │ ├── image-live-effect.js # 图像动态效果
│ │ ├── llm-service.js # LLM 服务调用
│ │ ├── novel-draw.html # UI
│ │ ├── novel-draw.js # 主逻辑
│ │ └── TAG编写指南.md # TAG 编写指南
│ │
│ ├── scheduled-tasks/ # 定时任务
│ │ ├── embedded-tasks.html # 内嵌任务 UI
│ │ ├── scheduled-tasks.html # 主 UI
│ │ └── scheduled-tasks.js # 逻辑
│ │
│ ├── story-outline/ # 故事大纲
│ │ ├── story-outline-prompt.js # Prompt 模板
│ │ ├── story-outline.html # UI
│ │ └── story-outline.js # 逻辑
│ │
│ ├── story-summary/ # 剧情总结 + 记忆系统
│ │ ├── story-summary-ui.js # UI 逻辑
│ │ ├── story-summary.css # 样式
│ │ ├── story-summary.html # UI(含向量设置)
│ │ ├── story-summary.js # 主入口:事件/UI/iframe 通讯
│ │ ├── data/
│ │ │ ├── config.js # 配置管理
│ │ │ ├── db.js # 向量存储:L1/L2 Vectors (Dexie/IndexedDB)
│ │ │ └── store.js # 核心存储:L2事件 + L3世界状态
│ │ ├── generate/
│ │ │ ├── generator.js # 调度器:调用 LLM -> 解析 -> 清洗 -> 合并
│ │ │ ├── llm.js # LLM API 与 Prompt 定义
│ │ │ └── prompt.js # 注入层:格式化 + 预算装配
│ │ └── vector/
│ │ ├── chunk-builder.js # L1 切分与构建
│ │ ├── chunk-store.js # 向量 CRUD 操作
│ │ ├── embedder.js # 向量化服务 (Local/Online)
│ │ ├── embedder.worker.js # 本地模型 Worker
│ │ ├── entity.js # 召回实体/辅助结构
│ │ └── recall.js # 召回引擎:加权Query + 实体加分 + MMR去重
│ │
│ ├── template-editor/ # 模板编辑器
│ │ ├── template-editor.html # UI
│ │ └── template-editor.js # 逻辑
│ │
│ ├── tts/ # TTS
│ │ ├── tts-api.js # API 适配
│ │ ├── tts-auth-provider.js # 鉴权提供者
│ │ ├── tts-cache.js # 缓存
│ │ ├── tts-free-provider.js # 免费提供者
│ │ ├── tts-overlay.html # Overlay UI
│ │ ├── tts-panel.js # 面板逻辑
│ │ ├── tts-player.js # 播放器
│ │ ├── tts-text.js # 文本处理
│ │ ├── tts-voices.js # 语音配置
│ │ ├── tts.js # 主入口
│ │ ├── 声音复刻.png # 说明图
│ │ ├── 开通管理.png # 说明图
│ │ └── 获取ID和KEY.png # 说明图
│ │
│ └── variables/ # 变量系统
│ ├── var-commands.js # 变量命令/宏/路径解析
│ ├── varevent-editor.js # 变量编辑器/注入处理
│ ├── variables-core.js # 变量系统核心
│ └── variables-panel.js # 变量面板 UI
│
└── widgets/ # 通用 UI 组件
├── button-collapse.js # 按钮收纳
└── message-toolbar.js # 消息工具条
📄 许可证
详见 docs/LICENSE.md
Description
Languages
JavaScript
80.8%
HTML
16.9%
CSS
2.3%