feat: iframe 支持外部链接渲染 + 剧情总结 Prompt 自定义 + 记忆包导入导出

[外挂卡片支持外链加载]
- 代码块直接写一个 URL 链接(或注释 <!-- xb-src: URL -->),小白盒会自动抓取并渲染成卡片
- 支持抓取失败自动降级为普通 iframe 直接显示
- 外链内容同样支持 {{xbgetvar::变量名}} 宏注入

[剧情总结 Prompt 全面开放自定义]
- 总结面板设置页新增 10 项 Prompt 编辑框,留空即使用默认值
- 包括:系统提示词、各段助手提示词、记忆注入模板等全部可改
- 记忆注入模板支持 {} 占位符替换成实际记忆内容

[剧情总结记忆包导入/导出]
- 新增「复制记忆包」按钮,一键把当前聊天的全部总结数据复制到剪贴板
- 新增「导入记忆包」按钮,把从别处复制来的记忆包 JSON 粘贴进来即可覆盖生效
- 方便跨设备、跨聊天迁移总结状态
This commit is contained in:
RT15548
2026-04-02 00:59:06 +08:00
parent f08257a291
commit 69864d97b5
10 changed files with 1233 additions and 328 deletions

View File

@@ -177,7 +177,9 @@ class StreamingGeneration {
const provider = String(opts.api || '').toLowerCase();
const reverseProxyConfigured = String(opts.apiurl || '').trim().length > 0;
const pwd = String(opts.apipassword || '').trim();
if (!reverseProxyConfigured && pwd) {
if (pwd && provider === 'custom') {
await writeSecret(SECRET_KEYS.CUSTOM, pwd, 'xbgen-inline');
} else if (!reverseProxyConfigured && pwd) {
const providerToSecretKey = {
openai: SECRET_KEYS.OPENAI,
gemini: SECRET_KEYS.MAKERSUITE,