v0.11.9: 修复纯文本消息卡片丢失 + 子代理参数可配置

fix: 恢复纯文本消息的 else if 分支,修复 fed1e6d 重构后用户消息卡片不显示
fix: allVids 类型注解补充 base64 字段,消除 TS2322 编译错误
feat: 子代理最大轮次和超时接入设置面板(subAgentMaxLoops/subAgentTimeout)
chore: 版本号 0.11.7 → 0.11.9
This commit is contained in:
thzxx
2026-06-20 13:04:17 +08:00
parent 6266d0b10c
commit e84f62c482
12 changed files with 288 additions and 135 deletions
+23
View File
@@ -471,6 +471,29 @@ document.querySelector('#selectSubAgentModel')?.addEventListener('change', async
logSetting('子代理默认模型', val || '跟随当前模型');
});
// 子代理最大轮次
const saveSubAgentMaxLoops = debounce(async () => {
const db = state.get<ChatDB | null>(KEYS.DB);
const val = (document.querySelector('#inputSubAgentMaxLoops') as HTMLInputElement).value.trim();
const maxLoops = val ? parseInt(val) : 10;
state.set('subAgentMaxLoops', maxLoops);
if (db) await db.saveSetting('subAgentMaxLoops', maxLoops);
logSetting('子代理最大轮次', `${maxLoops}`);
}, 500);
document.querySelector('#inputSubAgentMaxLoops')?.addEventListener('input', saveSubAgentMaxLoops);
// 子代理超时(秒)
const saveSubAgentTimeout = debounce(async () => {
const db = state.get<ChatDB | null>(KEYS.DB);
const val = (document.querySelector('#inputSubAgentTimeout') as HTMLInputElement).value.trim();
const sec = val ? parseInt(val) : -1; // -1=默认
const ms = sec >= 0 ? sec * 1000 : 300_000;
state.set('subAgentTimeout', ms);
if (db) await db.saveSetting('subAgentTimeout', sec);
logSetting('子代理超时', sec >= 0 ? (sec === 0 ? '已禁用' : `${sec}s`) : '默认(300s)');
}, 500);
document.querySelector('#inputSubAgentTimeout')?.addEventListener('input', saveSubAgentTimeout);
function updateMemoryVectorStatus(): void {
const statusEl = document.querySelector('#memoryVectorStatus');
if (!statusEl) return;