feat: v4.1 会话增强 — /retry /undo /compress + 工具并行执行

新增功能:
- /retry:重试上一轮对话,删除最后的 AI 回复并重新触发 Agent Loop
- /undo:撤销最后的用户+AI 消息对
- /compress:用 LLM 摘要压缩中间对话,保留首尾上下文
- 工具并行执行:同一批次内互相独立的工具用 Promise.all 并行执行

技术细节:
- input-area.ts: 命令检测在 sendMessage() 入口处,/retry 支持普通聊天和 Agent Loop 两种模式
- chat-area.ts: 新增 clearMessagesDOM() 用于 undo/compress 后强制重建 DOM
- agent-engine.ts: 工具调用分批算法 — 根据 TOOLS_WITH_DATA_DEPS 集合检测依赖关系,
  独立工具同批并行,有依赖的工具跨批串行
This commit is contained in:
thzxx
2026-04-18 09:15:10 +08:00
parent b2951d8cd0
commit d8f89ad097
3 changed files with 338 additions and 60 deletions
+5
View File
@@ -368,6 +368,11 @@ export function appendSystemMessage(text: string, tempClass?: string): void {
scrollToBottom();
}
/** v4.1: 清除所有消息 DOM 元素(用于 undo/compress 后强制重建) */
export function clearMessagesDOM(): void {
messagesContainerEl.innerHTML = '';
}
export function clearMessages(): void {
messagesContainerEl.innerHTML = '';
currentPlaceholder = null;