diff --git a/frontend-web/src/open-canvas/components/ai-writing/SkillStepsCard.tsx b/frontend-web/src/open-canvas/components/ai-writing/SkillStepsCard.tsx
index a243e295..cb8c349c 100644
--- a/frontend-web/src/open-canvas/components/ai-writing/SkillStepsCard.tsx
+++ b/frontend-web/src/open-canvas/components/ai-writing/SkillStepsCard.tsx
@@ -32,6 +32,14 @@ export function SkillStepsCard({ steps, inProgress }: SkillStepsCardProps) {
const [expanded, setExpanded] = useState(true);
if (steps.length === 0 && !inProgress) return null;
+ // 进行中的步骤:最后一条是 invoke_skill 且还没出对应的 skill_result,
+ // 说明该技能的 web 检索正在 await 中——把它的序号徽标换成 spinner,
+ // 让每次(可能数秒~数十秒的)检索等待都有"正在调用技能X检索中"的实时反馈。
+ const activeIdx =
+ inProgress && steps.length > 0 && steps[steps.length - 1].type === 'invoke_skill'
+ ? steps.length - 1
+ : -1;
+
return (