fix: 修复第二条消息不显示和上传文件AI读取失败

Bug 1: renderMessages() 统计 .message 元素时把 loading placeholder 也计入,
导致第二条用户消息被跳过不渲染。改为 .message:not(.loading) 排除加载占位符。

Bug 2: Agent Loop system prompt 缺少文件内容感知规则,用户上传文件后让AI读取,
AI 调用 read_file 去工作空间找文件导致失败。在 TOOL_USAGE_GUIDE 新增规则 16,
明确告知模型上传文件内容已在对话消息中,无需调用 read_file 工具。
This commit is contained in:
thzxx
2026-04-21 11:29:33 +08:00
parent e5acf646c8
commit dc3d6e4b69
2 changed files with 4 additions and 3 deletions
+2 -2
View File
@@ -89,8 +89,8 @@ export function renderMessages(): void {
emptyStateEl.style.display = 'none';
messagesContainerEl.style.display = '';
// 只计算已渲染的 .message 元素(排除 placeholder 和其他非消息元素)
const existingCount = messagesContainerEl.querySelectorAll('.message').length;
// 只计算已渲染的 .message 元素(排除 loading placeholder 和其他非消息元素)
const existingCount = messagesContainerEl.querySelectorAll('.message:not(.loading)').length;
const isNewMessage = existingCount > 0 && existingCount < msgs.length;
for (let i = existingCount; i < msgs.length; i++) {
appendMessageDOM(msgs[i], i);