docs: 重写 README(安装教程 + 12 张截图 + Demo 链接)

- README:清空旧内容,新增安装教程(脚本/Docker/Releases/源码)、配置、开发、
  截图预览 12 张、在线 Demo https://artex-demo.vercel.app/
- screenshots/:12 张页面预览
- fix(mock):activity/conversation 的 detail 端点返回真实内容(此前气泡显示占位文)

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
This commit is contained in:
Autumn-27andClaude Opus 4.8 committed 2026-07-26 05:16:43 -04:00
1 parent 0ef8561411
commit ee97991a5e
15 files changed
+121 -68

No files matched your search

+9 -4
View File
@@ -72,8 +72,10 @@ function route(m: string, path: string, seg: string[], q: URLSearchParams, b: Re
const items = D.activityForTask();
return { items, cursor: items.length ? items[items.length - 1].seq : 0 };
}
if (seg[0] === "exploration" && seg[1] === "activity" && seg.length === 3)
return { detail: "(demo)此活动的完整工具输入/输出明细。" };
if (seg[0] === "exploration" && seg[1] === "activity" && seg.length === 3) {
const a = D.activity.find((x) => x.seq === Number(seg[2]));
return { detail: a?.detail ?? a?.summary ?? "" };
}
if (path === "/tokens/daily") return D.dailyTokens;
if (path === "/tokens/conversations") return D.convTokens;
@@ -115,8 +117,11 @@ function route(m: string, path: string, seg: string[], q: URLSearchParams, b: Re
const items = D.conversationMessages[Number(seg[1])] ?? [];
return { items, cursor: items.length ? items[items.length - 1].seq : 0, running: false };
}
if (seg[0] === "conversations" && seg[2] === "messages" && seg.length === 4)
return { detail: "(demo)该消息的完整明细。" };
if (seg[0] === "conversations" && seg[2] === "messages" && seg.length === 4) {
const msgs = D.conversationMessages[Number(seg[1])] ?? [];
const a = msgs.find((x) => x.seq === Number(seg[3]));
return { detail: a?.detail ?? a?.summary ?? "" };
}
if (seg[0] === "conversations" && seg[2] === "messages" && m === "POST") return { status: "ok" };
if (seg[0] === "conversations" && seg[2] === "stop") return { status: "stopped" };