From 0338037a96c6755caf524c94a91cb06b4787ec37 Mon Sep 17 00:00:00 2001
From: root
Date: Wed, 7 Oct 2026 01:49:33 +0800
Subject: [PATCH 1/4] =?UTF-8?q?=E6=96=87=E6=A1=88(=E9=A6=96=E9=A1=B5):?=
=?UTF-8?q?=E5=88=86=E8=8A=82=E6=A0=87=E9=A2=98=E6=94=B9=E3=80=8C=E8=BF=9B?=
=?UTF-8?q?=E8=A1=8C=E4=B8=AD=20/=20=E9=9C=80=E8=A6=81=E4=BD=A0=E5=A4=84?=
=?UTF-8?q?=E7=90=86=E3=80=8D,=E4=B8=8B=E8=BD=BD=E5=99=A8=E5=8D=A1?=
=?UTF-8?q?=E7=89=87=E8=AF=B4=E6=98=8E=E6=8C=89=E5=AE=9E=E9=99=85=E5=8F=A3?=
=?UTF-8?q?=E5=BE=84=E9=87=8D=E5=86=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-Authored-By: Claude Opus 5.5
Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
---
.../app/components/dashboard/home-runtime.tsx | 12 ++++++------
apps/web/app/routes/console/home.tsx | 16 ++++++++--------
2 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/apps/web/app/components/dashboard/home-runtime.tsx b/apps/web/app/components/dashboard/home-runtime.tsx
index 304a5576..d486df44 100644
--- a/apps/web/app/components/dashboard/home-runtime.tsx
+++ b/apps/web/app/components/dashboard/home-runtime.tsx
@@ -171,7 +171,7 @@ function RuntimeOverview({ downloaders }: { downloaders?: Dashboard["sources"]["
>
) : (
-
+
)}
);
@@ -192,18 +192,18 @@ function DownloaderOverview({ downloaders }: { downloaders?: Dashboard["sources"
downloaders ??
instances.map((d) => ({ id: d.instanceId, name: d.name, enabled: true, health: "unknown", lastSeenAt: null }));
return (
-
+
{q.isPending ? (
) : q.isError ? (
q.refetch()} className="py-6" />
) : !sources.length ? (
-
+
) : (
<>
{board?.counts.active}
- 项进行中
+ 个下载进行中
{sources.map((d) => {
@@ -245,10 +245,10 @@ function DownloaderOverview({ downloaders }: { downloaders?: Dashboard["sources"
})}
- 进行中含等待计划、暂停和异常任务 · 速度含下载器全部任务
+ 进行中包括还没提交、已暂停和出错的下载 · 速度是下载器里全部任务的合计
{board?.liveAt ? (
- 速度采样于 {formatRelative(board.liveAt)}
+ 速度更新于 {formatRelative(board.liveAt)}
) : null}
>
)}
diff --git a/apps/web/app/routes/console/home.tsx b/apps/web/app/routes/console/home.tsx
index ec0d0e35..4bf2d276 100644
--- a/apps/web/app/routes/console/home.tsx
+++ b/apps/web/app/routes/console/home.tsx
@@ -121,7 +121,7 @@ function StatusLine({ d }: { d: Dashboard }) {
await update.mutateAsync({ automation: { enabled } });
toast.success(enabled ? "自动化已恢复" : "自动化已暂停");
} catch (err) {
- toast.error(errorMessage(err, "切换失败"));
+ toast.error(errorMessage(err, enabled ? "恢复失败" : "暂停失败"));
throw err;
}
};
@@ -217,11 +217,11 @@ function Busy({ w }: { w: Dashboard["currentWork"] }) {
]);
const empty = !downloads.length && !agents.length && !runs.length;
return (
-
+
{running.isPending && !downloads.length ? (
) : empty ? (
-
+
) : (
{downloads.map((t) => (
@@ -263,11 +263,11 @@ function NeedsMe() {
const q = useAttention();
const rows = attentionRows(q.data);
return (
-
+
{q.isPending ? (
) : rows.length === 0 ? (
-
+
) : (
)}
@@ -282,7 +282,7 @@ function RecentImports({ d }: { d: Dashboard }) {
return (
{rows.length === 0 ? (
-
+
) : (
{rows.map((r) => (
@@ -294,7 +294,7 @@ function RecentImports({ d }: { d: Dashboard }) {
{r.title ?? r.targetPath?.split("/").pop() ?? "未关联作品"}
{r.status === "partial" ? (
- {r.counts.succeeded}/{r.counts.total} 个文件已整理
+ 已整理 {r.counts.succeeded}/{r.counts.total} 个文件
) : null}
@@ -303,7 +303,7 @@ function RecentImports({ d }: { d: Dashboard }) {
))}
)}
- {today ? 今天整理 {today} 个文件
: null}
+ {today ? 今天已整理 {today} 个文件
: null}
);
}
From 775d1589e44e9e4f33c60439af35758d7d998fda Mon Sep 17 00:00:00 2001
From: root
Date: Wed, 7 Oct 2026 01:49:33 +0800
Subject: [PATCH 2/4] =?UTF-8?q?=E6=96=87=E6=A1=88(=E6=99=BA=E8=83=BD?=
=?UTF-8?q?=E4=BD=93):=E5=81=9C=E6=AD=A2=20/=20=E6=96=B9=E6=A1=88=20/=20?=
=?UTF-8?q?=E5=AD=90=E4=BC=9A=E8=AF=9D=20/=20=E5=8E=8B=E7=BC=A9=E4=B8=8A?=
=?UTF-8?q?=E4=B8=8B=E6=96=87=E7=AD=89=E6=8C=89=E6=9C=AF=E8=AF=AD=E8=A1=A8?=
=?UTF-8?q?=E4=B8=8E=20human-copy=20=E9=87=8D=E5=86=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-Authored-By: Claude Opus 5.5
Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
---
.../components/agent/agent-conversation.tsx | 22 +++++++++----------
.../web/app/components/agent/agent-drawer.tsx | 10 ++++-----
.../components/agent/agent-interaction.tsx | 10 ++++-----
.../app/components/agent/agent-run-panel.tsx | 12 +++++-----
.../components/agent/agent-session-list.tsx | 2 +-
.../components/agent/agent-session-ui.test.ts | 4 ++--
apps/web/app/components/agent/agent-store.ts | 2 +-
.../components/agent/agent-subagent-tree.tsx | 10 ++++-----
.../components/agent/conversation-model.ts | 6 ++---
apps/web/app/components/agent/quick-goals.ts | 2 +-
.../components/agent/tool-call-card-io.tsx | 4 ++--
.../app/components/agentui/approval-card.tsx | 2 +-
.../web/app/components/agentui/code-block.tsx | 2 +-
apps/web/app/components/agentui/todo-list.tsx | 4 ++--
.../app/components/agentui/tool-approval.tsx | 4 ++--
apps/web/app/routes/console/agent.$runId.tsx | 2 +-
16 files changed, 49 insertions(+), 49 deletions(-)
diff --git a/apps/web/app/components/agent/agent-conversation.tsx b/apps/web/app/components/agent/agent-conversation.tsx
index 23d5fbf6..76b2ccca 100644
--- a/apps/web/app/components/agent/agent-conversation.tsx
+++ b/apps/web/app/components/agent/agent-conversation.tsx
@@ -86,7 +86,7 @@ export const BUDGET_LABEL: Record = {
const COMPACT_STATUS: Record = {
completed: "已完成",
declined: "没有压缩",
- aborted: "已中止",
+ aborted: "已停止",
failed: "失败",
};
@@ -108,7 +108,7 @@ export function contextLabel(context: string | null): string | null {
const first = context.split(" · ")[0] ?? "";
// 前缀里第一段是界面给的名称(「作品:沙丘2」);没有名称时只剩 key=ID,不上屏
if (!first || first.includes("=")) return null;
- return first.replace(/^(作品|资源|下载|整理记录|站点|任务|引擎任务)[::]\s*/, "");
+ return first.replace(/^(作品|资源|下载|整理记录|站点|任务|引擎任务|后台任务)[::]\s*/, "");
}
export function UserMessage({
@@ -289,7 +289,7 @@ export function StepSummary({
const thinking = activity.some((a) => a.kind === "thinking");
const head = current
? `${done ? `${done},` : ""}${runningText(current)}…`
- : done || (running ? "思考中…" : thinking ? "想了一下" : "过程说明");
+ : done || (running ? "思考中…" : thinking ? "思考过程" : "过程说明");
return (