diff --git a/src/renderer/components/chat-area.ts b/src/renderer/components/chat-area.ts
index 394a783..5466465 100644
--- a/src/renderer/components/chat-area.ts
+++ b/src/renderer/components/chat-area.ts
@@ -157,6 +157,22 @@ export function appendMessageDOM(msg: ChatMessage, index: number): void {
contentHtml = contentHtml.replace('
';
+ for (const tc of msg.toolCalls) {
+ toolHtml += renderToolCallCard(tc);
+ }
+ toolHtml += '
';
+ // 插入到 msg-content 之前
+ const contentIdx = contentHtml.indexOf('');
+ if (contentIdx >= 0) {
+ contentHtml = contentHtml.slice(0, contentIdx) + toolHtml + contentHtml.slice(contentIdx);
+ } else {
+ contentHtml = toolHtml + contentHtml;
+ }
+ }
+
const stats: string[] = [];
const statClasses: string[] = [];
if (msg.timestamp) { stats.push(formatTime(msg.timestamp)); statClasses.push(''); }
@@ -166,14 +182,6 @@ export function appendMessageDOM(msg: ChatMessage, index: number): void {
contentHtml += `
${stats.map((s, i) => `${s}`).join(' · ')}
`;
}
- if (msg.role === 'assistant' && msg.toolCalls && msg.toolCalls.length > 0) {
- contentHtml += '
';
- for (const tc of msg.toolCalls) {
- contentHtml += renderToolCallCard(tc);
- }
- contentHtml += '
';
- }
-
div.innerHTML = `
${avatar}
diff --git a/src/renderer/styles/style.css b/src/renderer/styles/style.css
index 60e014f..8fe4d6a 100644
--- a/src/renderer/styles/style.css
+++ b/src/renderer/styles/style.css
@@ -833,6 +833,11 @@ html, body {
box-shadow: var(--shadow-card);
}
+.tool-calls-container + .msg-stats + .msg-content,
+.tool-calls-container + .msg-content {
+ margin-top: 4px;
+}
+
.msg-content {
font-size: 14px;
line-height: 1.7;
@@ -1976,7 +1981,9 @@ html, body {
═══════════════════════════════════════════════════════════════ */
.tool-calls-container {
- margin-top: 10px;
+ margin-bottom: 12px;
+ padding-bottom: 12px;
+ border-bottom: 1px dashed var(--border-subtle);
}
.tool-call-card {