diff --git a/CHANGELOG.md b/CHANGELOG.md index ad778c4..a486296 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ + [新增] 画布右侧Agent支持按当前账号可用范围选择Codex 模型与推理强度。 + [优化] Canvas Agent 升级至最新 Codex,启动时检查版本更新, + [优化] 统一通过公共日志输出 Info 以上信息,美化转发日志时间。 ++ [优化] Agent高速流式回复取消逐词动画排队和当前消息离屏占位。 + [修复] Agent首次发送消息时立即保留并展示用户内容,不再晚于思考状态。 ## v0.12.0 - 2026-07-30 diff --git a/web/src/components/agent/agent-chat-message.tsx b/web/src/components/agent/agent-chat-message.tsx index d252fbb..cc995d4 100644 --- a/web/src/components/agent/agent-chat-message.tsx +++ b/web/src/components/agent/agent-chat-message.tsx @@ -23,6 +23,7 @@ const streamdownProps = { openLink: "继续打开", }, } as const; +const streamdownAnimation = { duration: 20, stagger: 0, sep: "word" } as const; function AgentLinkModal({ isOpen, onClose, onConfirm, url }: LinkSafetyModalProps) { const { message } = App.useApp(); @@ -127,7 +128,7 @@ export function AgentChatMessage({ item, theme, onRejectTool, onApproveTool }: { {isUser ? (
{item.text}
) : ( - {item.text} + {item.text} )} {item.attachments?.length ? : null} {item.meta ?
{item.meta}
: null} @@ -231,7 +232,7 @@ function AgentReasoningSummary({ text, detail, theme }: { text: string; detail?:
- {text} + {text}
); diff --git a/web/src/components/agent/agent-chat.tsx b/web/src/components/agent/agent-chat.tsx index 12bcc27..448ba99 100644 --- a/web/src/components/agent/agent-chat.tsx +++ b/web/src/components/agent/agent-chat.tsx @@ -10,6 +10,7 @@ import { AgentApprovalCard, AgentChatMessage, AgentPendingToolCard, AgentToolCar import { agentMessageToChatMessage, currentPlanMessage, isPlanMessage, latestPlanMessage, toolCallDetail, toolName, workingActivity } from "./agent-event-formatters"; const SCROLL_BOTTOM_THRESHOLD = 48; +const historyMessageStyle = { contentVisibility: "auto", containIntrinsicSize: "0 80px" } as const; export function AgentChatTimeline({ theme, @@ -101,7 +102,7 @@ export function AgentTaskProgress({ theme, busy }: { theme: (typeof canvasThemes const AgentChatMessageRow = memo(function AgentChatMessageRow({ item, theme }: { item: AgentChatItem; theme: (typeof canvasThemes)[keyof typeof canvasThemes] }) { return ( -
+
);