diff --git a/frontend/src/components/landing/hero.tsx b/frontend/src/components/landing/hero.tsx
index 0b8b4e2..0a5f0d0 100644
--- a/frontend/src/components/landing/hero.tsx
+++ b/frontend/src/components/landing/hero.tsx
@@ -58,11 +58,13 @@ export function Hero({ className }: { className?: string }) {
An open-source SuperAgent harness that researches, codes, and creates.
+ With
- With the help of sandboxes, memories, tools and skills, it handles
+ the help of sandboxes, memories, tools, skills and subagents, it
+ handles
different levels of tasks that could take minutes to hours.
diff --git a/frontend/src/components/landing/sections/whats-new-section.tsx b/frontend/src/components/landing/sections/whats-new-section.tsx
index cca4c98..00cc5ee 100644
--- a/frontend/src/components/landing/sections/whats-new-section.tsx
+++ b/frontend/src/components/landing/sections/whats-new-section.tsx
@@ -16,8 +16,9 @@ const features: BentoCardProps[] = [
{
color: COLOR,
label: "Long Task Running",
- title: "Planning and Reasoning",
- description: "Plans ahead, reasons through complexity, then acts",
+ title: "Planning and Sub-tasking",
+ description:
+ "Plans ahead, reasons through complexity, then executes sequentially or in parallel",
},
{
color: COLOR,
diff --git a/frontend/src/components/workspace/welcome.tsx b/frontend/src/components/workspace/welcome.tsx
index d944c20..ace1a76 100644
--- a/frontend/src/components/workspace/welcome.tsx
+++ b/frontend/src/components/workspace/welcome.tsx
@@ -1,13 +1,19 @@
"use client";
import { useSearchParams } from "next/navigation";
+import { useEffect } from "react";
import { useI18n } from "@/core/i18n/hooks";
import { cn } from "@/lib/utils";
+let waved = false;
+
export function Welcome({ className }: { className?: string }) {
const { t } = useI18n();
const searchParams = useSearchParams();
+ useEffect(() => {
+ waved = true;
+ }, []);
return (
- {searchParams.get("mode") === "skill"
- ? `✨ ${t.welcome.createYourOwnSkill} ✨`
- : t.welcome.greeting}
+ {searchParams.get("mode") === "skill" ? (
+ `✨ ${t.welcome.createYourOwnSkill} ✨`
+ ) : (
+
+
+ 👋
+
+
{t.welcome.greeting}
+
+ )}
{searchParams.get("mode") === "skill" ? (
diff --git a/frontend/src/core/i18n/locales/en-US.ts b/frontend/src/core/i18n/locales/en-US.ts
index be98582..b1396c6 100644
--- a/frontend/src/core/i18n/locales/en-US.ts
+++ b/frontend/src/core/i18n/locales/en-US.ts
@@ -47,7 +47,7 @@ export const enUS: Translations = {
// Welcome
welcome: {
- greeting: "👋 Hello, again!",
+ greeting: "Hello, again!",
description:
"Welcome to 🦌 DeerFlow, an open source super agent. With built-in and custom skills, DeerFlow helps you search on the web, analyze data, and generate artifacts like slides, web pages and do almost anything.",
@@ -214,7 +214,7 @@ export const enUS: Translations = {
subtask: "Subtask",
executing: (count: number) =>
`Executing ${count} subtask${count === 1 ? "" : "s"} in parallel`,
- running: "Running subtask",
+ in_progress: "Running subtask",
completed: "Subtask completed",
failed: "Subtask failed",
},
diff --git a/frontend/src/core/i18n/locales/types.ts b/frontend/src/core/i18n/locales/types.ts
index 079e575..c5d261f 100644
--- a/frontend/src/core/i18n/locales/types.ts
+++ b/frontend/src/core/i18n/locales/types.ts
@@ -159,7 +159,7 @@ export interface Translations {
subtasks: {
subtask: string;
executing: (count: number) => string;
- running: string;
+ in_progress: string;
completed: string;
failed: string;
};
diff --git a/frontend/src/core/i18n/locales/zh-CN.ts b/frontend/src/core/i18n/locales/zh-CN.ts
index 3000190..6de95e1 100644
--- a/frontend/src/core/i18n/locales/zh-CN.ts
+++ b/frontend/src/core/i18n/locales/zh-CN.ts
@@ -47,7 +47,7 @@ export const zhCN: Translations = {
// Welcome
welcome: {
- greeting: "👋 你好,欢迎回来!",
+ greeting: "你好,欢迎回来!",
description:
"欢迎使用 🦌 DeerFlow,一个完全开源的超级智能体。通过内置和\n自定义的 Skills,DeerFlow 可以帮你搜索网络、分析数据,\n还能为你生成幻灯片、网页等作品,几乎可以做任何事情。",
@@ -207,7 +207,7 @@ export const zhCN: Translations = {
subtasks: {
subtask: "子任务",
executing: (count: number) => `并行执行 ${count} 个子任务`,
- running: "子任务运行中",
+ in_progress: "子任务运行中",
completed: "子任务已完成",
failed: "子任务失败",
},
diff --git a/frontend/src/styles/globals.css b/frontend/src/styles/globals.css
index 95adfd1..7b9b651 100644
--- a/frontend/src/styles/globals.css
+++ b/frontend/src/styles/globals.css
@@ -127,6 +127,23 @@
transform: translateY(0);
}
}
+
+ --animate-wave: wave 0.6s ease-in-out 2;
+ @keyframes wave {
+ 0%,
+ 100% {
+ transform: rotate(0deg);
+ }
+ 25% {
+ transform: rotate(20deg);
+ }
+ 50% {
+ transform: rotate(0deg);
+ }
+ 75% {
+ transform: rotate(20deg);
+ }
+ }
}
@theme inline {