docs(claude): CLAUDE.md 对齐现状 — core/ 为开发目录、电商AI平台/ 为视觉标准答案
- 根 CLAUDE.md:删死目录(app//v2/);设计铁律从"改HTML/restraint.css"改为"改core/前端React+design-restraint.css";路径速查补 core/ 真实路径;新增认证定调(用户名+密码+邀请制,不用邮箱) - design/CLAUDE.md:空模板参数表填为 AirShelf 真实值(React19/Vite7/自研路由/纯CSS/design-restraint.css/lucide/1440x900) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
856a93b8a9
commit
afa8e07154
@@ -9,24 +9,23 @@
|
|||||||
**Airshelf** · AI 短视频带货生成平台 · 5 阶段流水线(商品 → 故事板 → 镜头 → 生成 → 投放)
|
**Airshelf** · AI 短视频带货生成平台 · 5 阶段流水线(商品 → 故事板 → 镜头 → 生成 → 投放)
|
||||||
|
|
||||||
- **设计代号:** Restraint · V2.1 · Firecrawl-aligned
|
- **设计代号:** Restraint · V2.1 · Firecrawl-aligned
|
||||||
- **主要工作目录:** [电商AI平台/](电商AI平台/)
|
- **实际开发目录:** [core/](core/) —— `core/frontend`(React 19 + Vite + TS,真网站前端)· `core/backend`(Django,后台)· `core/qa`(截图对比测试)
|
||||||
- **Next.js 工程(独立):** [app/](app/)
|
- **视觉标准答案(对照用,不是运行代码):** [电商AI平台/](电商AI平台/) —— UI 设计师手写的 HTML 设计稿 + `design.md` 设计规范。**开发改 `core/`,视觉照 `电商AI平台/`。**
|
||||||
- **V1 历史归档:** [v1/](v1/)
|
- **历史归档:** [v1/](v1/) · [_archive/](_archive/)
|
||||||
- **V2.1 归档(原 v2.1/):** [v2/](v2/)
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## ★ 设计规范铁律(每次涉及页面 / CSS / UI 必读)
|
## ★ 设计规范铁律(每次涉及页面 / CSS / UI 必读)
|
||||||
|
|
||||||
### 触发条件
|
### 触发条件
|
||||||
**只要任务涉及以下任一种,必须先 Read [电商AI平台/design.md](电商AI平台/design.md):**
|
**只要任务涉及以下任一种,必须先 Read [电商AI平台/design.md](电商AI平台/design.md)(设计规范),并对照 [电商AI平台/](电商AI平台/) 里对应的 `*.html` 设计稿(视觉标准答案):**
|
||||||
- 修改 `.html` 文件
|
- 修改 `core/frontend` 里的页面(`.tsx`)或样式(`design-restraint.css` / `*-page.css`)
|
||||||
- 修改 `assets/restraint.css` 或任何 `.css`
|
|
||||||
- 修改 inline `<style>` 块
|
|
||||||
- 添加新页面 / 新组件
|
- 添加新页面 / 新组件
|
||||||
- 调整布局 / 间距 / 颜色 / 字号
|
- 调整布局 / 间距 / 颜色 / 字号
|
||||||
- 用户提到"页面" "样式" "视觉" "组件" "色" "字" "圆角" "间距" 等关键词
|
- 用户提到"页面" "样式" "视觉" "组件" "色" "字" "圆角" "间距" 等关键词
|
||||||
|
|
||||||
|
> ⚠️ **现在不交付静态 HTML 了**:真代码在 `core/frontend/src`(React)。`电商AI平台/` 的 `.html` 只当**视觉对照标准**,别去改它来"做功能"。新页面/新组件的交付规范见 [design/CLAUDE.md](design/CLAUDE.md)。
|
||||||
|
|
||||||
### 必读章节
|
### 必读章节
|
||||||
- [design.md §0 AI 协作铁律](电商AI平台/design.md#0--ai-协作铁律每次启动必读) — 必读
|
- [design.md §0 AI 协作铁律](电商AI平台/design.md#0--ai-协作铁律每次启动必读) — 必读
|
||||||
- [design.md §1 设计哲学](电商AI平台/design.md#1--设计哲学) — 价值观
|
- [design.md §1 设计哲学](电商AI平台/design.md#1--设计哲学) — 价值观
|
||||||
@@ -36,8 +35,8 @@
|
|||||||
### 7 条铁律
|
### 7 条铁律
|
||||||
|
|
||||||
1. **任何页面 / CSS 调整前必须 Read [电商AI平台/design.md](电商AI平台/design.md)** — 不读不动手
|
1. **任何页面 / CSS 调整前必须 Read [电商AI平台/design.md](电商AI平台/design.md)** — 不读不动手
|
||||||
2. **检查 [电商AI平台/assets/restraint.css](电商AI平台/assets/restraint.css) 已有组件** — `Grep ".btn|.pill|.input"` 等
|
2. **检查 [core/frontend/src/design-restraint.css](core/frontend/src/design-restraint.css) 已有组件**(设计稿原版在 `电商AI平台/assets/restraint.css`)— `Grep ".btn|.pill|.input"` 等,别重发明
|
||||||
3. **禁止在页面 inline `<style>` 重写共享类**(`.btn` `.pill` `.input` `.modal` `.drawer` `.toast` `.field` `.tabs` `.chip` `.stats` `.list-row` 等)— 要变体回 restraint.css 加
|
3. **禁止在某页 `*-page.css` 里重写共享类**(`.btn` `.pill` `.input` `.modal` `.drawer` `.toast` `.field` `.tabs` `.chip` `.stats` `.list-row` 等)— 要变体回 `design-restraint.css` 加
|
||||||
4. **禁止创建新色值** — 必须用 design.md §2.1 的 token,不写裸 hex
|
4. **禁止创建新色值** — 必须用 design.md §2.1 的 token,不写裸 hex
|
||||||
5. **禁止改动基础 token**(`--heat` `--background-base` `--border-faint` 等)— 改了破坏全站
|
5. **禁止改动基础 token**(`--heat` `--background-base` `--border-faint` 等)— 改了破坏全站
|
||||||
6. **完成后对照 [design.md §8 Don't List](电商AI平台/design.md#8--dont-list绝对禁止--每次自检) 逐条自检**
|
6. **完成后对照 [design.md §8 Don't List](电商AI平台/design.md#8--dont-list绝对禁止--每次自检) 逐条自检**
|
||||||
@@ -69,6 +68,15 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## 认证 / 账号模型(产品定调 · 2026 中国市场)
|
||||||
|
|
||||||
|
- **登录 / 注册一律「用户名 + 密码」,不用邮箱** —— 登录页、注册页都**不要邮箱字段**(后端 `RegisterSerializer` / `LoginSerializer` 本就以 `username` 为主标识)。**这是有意偏离 V1 设计稿**(V1 login/register 画的是邮箱),别按 V1 把它改回邮箱。
|
||||||
|
- **注册 = 邀请制**:Invitation 邀请码;有码加入已有团队、无码开新团队当超管。成员也可由超管在团队页直接建账号 + 发凭据。
|
||||||
|
- **手机号注册:后续再做**,本期不做。
|
||||||
|
- 用户原话:「2026 年的中国没人用邮箱登录」。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## ★ AI 生成 Agent 化架构(后端核心 · 改 AI 链路前必读)
|
## ★ AI 生成 Agent 化架构(后端核心 · 改 AI 链路前必读)
|
||||||
|
|
||||||
> 2026-06-17 落地:脚本从「散文+正则」升级为**结构化流式对话 agent**,并把 商品→脚本→图片→故事板→视频 用**可插拔 Provider** 打通。全流程已端到端验证(含 Seedance 出片)。详见仓库 `交接-AI生成Agent化-2026-06-17.md` 与 `AI生成-Agent化落地方案.md`。
|
> 2026-06-17 落地:脚本从「散文+正则」升级为**结构化流式对话 agent**,并把 商品→脚本→图片→故事板→视频 用**可插拔 Provider** 打通。全流程已端到端验证(含 Seedance 出片)。详见仓库 `交接-AI生成Agent化-2026-06-17.md` 与 `AI生成-Agent化落地方案.md`。
|
||||||
@@ -97,7 +105,7 @@
|
|||||||
## 文件操作
|
## 文件操作
|
||||||
|
|
||||||
- **三视图 = 单张 16:9 图** · 不要拆成 3 张缩略 · 用 `aspect-ratio: 16/9` 单容器
|
- **三视图 = 单张 16:9 图** · 不要拆成 3 张缩略 · 用 `aspect-ratio: 16/9` 单容器
|
||||||
- **设计稿优先** · 写代码前必须先读 [电商AI平台/_design_src/](电商AI平台/_design_src/) 设计稿(如果有)
|
- **设计稿优先** · 写页面前先读 [电商AI平台/](电商AI平台/) 对应页面的 `*.html` 设计稿(视觉标准答案)+ design.md
|
||||||
- **`.pen` 文件加密** · 只能用 pencil MCP 工具,不能 Read/Grep
|
- **`.pen` 文件加密** · 只能用 pencil MCP 工具,不能 Read/Grep
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -115,11 +123,14 @@
|
|||||||
| 资产 | 路径 |
|
| 资产 | 路径 |
|
||||||
| ---- | ---- |
|
| ---- | ---- |
|
||||||
| **设计规范(SSoT)** | [电商AI平台/design.md](电商AI平台/design.md) |
|
| **设计规范(SSoT)** | [电商AI平台/design.md](电商AI平台/design.md) |
|
||||||
| **共享 CSS** | [电商AI平台/assets/restraint.css](电商AI平台/assets/restraint.css) |
|
| **视觉标准答案(HTML 设计稿)** | [电商AI平台/](电商AI平台/) 各 `*.html`(逐页对照还原) |
|
||||||
| **Shell 注入** | [电商AI平台/assets/shell.js](电商AI平台/assets/shell.js) |
|
| **前端代码(真网站)** | [core/frontend/src/routes/](core/frontend/src/routes/) + 每页 `src/*-page.css` |
|
||||||
|
| **共享 CSS / token(实现)** | [core/frontend/src/design-restraint.css](core/frontend/src/design-restraint.css)(原版 `电商AI平台/assets/restraint.css`) |
|
||||||
|
| **公共外壳(侧栏/顶栏)** | [core/frontend/src/components/app-shell.tsx](core/frontend/src/components/app-shell.tsx)(原 `电商AI平台/assets/shell.js`) |
|
||||||
|
| **后端代码** | [core/backend/apps/](core/backend/apps/)(Django) |
|
||||||
|
| **截图对比测试** | [core/qa/visual-parity/compare-page.mjs](core/qa/visual-parity/compare-page.mjs) |
|
||||||
|
| **新页面交付规范** | [design/CLAUDE.md](design/CLAUDE.md) |
|
||||||
| **视觉样板间(归档)** | [电商AI平台/_archive/design-system.html](电商AI平台/_archive/design-system.html) |
|
| **视觉样板间(归档)** | [电商AI平台/_archive/design-system.html](电商AI平台/_archive/design-system.html) |
|
||||||
| **规范理论(归档)** | [电商AI平台/_archive/DESIGN_SPEC_V2.md](电商AI平台/_archive/DESIGN_SPEC_V2.md) |
|
|
||||||
| **设计稿源** | [电商AI平台/_design_src/](电商AI平台/_design_src/) |
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
+12
-10
@@ -12,19 +12,21 @@
|
|||||||
|
|
||||||
| 参数 | 本项目取值 | 说明 |
|
| 参数 | 本项目取值 | 说明 |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| 前端框架 | (如 React 19 / Vue 3 / Svelte) | 必须与目标工程一致;全新项目默认 React + TypeScript |
|
| 前端框架 | **React 19 + TypeScript** | 代码在 `core/frontend` |
|
||||||
| 构建工具 | (如 Vite) | 默认 Vite |
|
| 构建工具 | **Vite 7** | — |
|
||||||
| 路由方案 | (目标工程现有方案) | 复用目标工程的路由机制,不自带新路由库 |
|
| 路由方案 | **自研 pathname 路由** `core/frontend/src/routes/route-config.ts`(无路由库,switch 渲染) | 新页面在此加一条,不引路由库 |
|
||||||
| 样式方案 | (如纯 CSS / Tailwind / CSS Modules) | 与目标工程一致;目标工程没有的方案不准引入 |
|
| 样式方案 | **纯 CSS**(全局 token + 每页 `*-page.css`,选择器收敛在页面根 class) | 不引 Tailwind / CSS Modules |
|
||||||
| 组件/图标库 | (目标工程已有的) | 只用已有的,不新增 UI 框架和图标库 |
|
| 组件/图标库 | **lucide-react**(图标);无额外 UI 框架 | 只用 lucide,不新增图标库 |
|
||||||
| 设计 token 文件 | (如 `src/styles.css` / `tokens.css`) | 颜色、字号、间距的唯一来源 |
|
| 设计 token 文件 | **`core/frontend/src/design-restraint.css`**(对应规范 `电商AI平台/design.md`) | 颜色/字号/间距唯一来源;改 token 破坏全站 |
|
||||||
| 基准视口 | (如 1440×900) | 像素核对和验收用的视口 |
|
| 基准视口 | **1440×900** | 像素核对(`core/qa/visual-parity/compare-page.mjs`)的视口 |
|
||||||
| 页面文件落位 | (如 `src/routes/` + `src/<page>.css`) | 与目标工程目录同构 |
|
| 页面文件落位 | **`core/frontend/src/routes/<page>.tsx` + `src/<page>-page.css`** | 与工程目录同构 |
|
||||||
| Mock 数据落位 | (如 `src/mock/`) | 见 §4 |
|
| Mock 数据落位 | **已接真实后端 API**(`core/frontend/src/api.ts`);新页若需 mock,用一层 `getXxx()` 取数函数 | 见 §4 |
|
||||||
| 类型定义文件 | (如 `src/types.ts`,可空) | mock 字段形状的对齐目标 |
|
| 类型定义文件 | **`core/frontend/src/types.ts`** | mock 字段形状对齐它 |
|
||||||
|
|
||||||
> 目标工程尚不存在(全新项目)时:默认 React + TypeScript + Vite + 纯 CSS,并把你定下的取值回填此表,作为后续开发工程的初始约定。
|
> 目标工程尚不存在(全新项目)时:默认 React + TypeScript + Vite + 纯 CSS,并把你定下的取值回填此表,作为后续开发工程的初始约定。
|
||||||
|
|
||||||
|
> **本项目(AirShelf)现状**:目标工程已存在 = `core/frontend`;**视觉标准答案** = `电商AI平台/` 的 `*.html` 设计稿 + `design.md` 设计规范。**还原老页面**时逐页对照对应 HTML(像素级);**出新页面**按本规范直接交付 React,不要再画静态 HTML。认证一律用户名+密码、不用邮箱(见根 `CLAUDE.md`)。
|
||||||
|
|
||||||
## 1. 交付物形态(最重要的一条)
|
## 1. 交付物形态(最重要的一条)
|
||||||
|
|
||||||
每个页面的交付物固定为:
|
每个页面的交付物固定为:
|
||||||
|
|||||||
Reference in New Issue
Block a user