给 Claude:开工前先读完这一页,收工前更新最后一节「现在做到哪」
这是 CiCie 的 HeartCart 工作室仓库。她是产品负责人,不写代码;她用 Chrome 在 iPhone / iPad / 电脑上打开工作室网站试手感。产品、结构、配合方式、全局决定都在 README.md(总览),先读它。
网址
- 工作室网站:https://heartcart-studio.pages.dev/ (Cloudflare Pages,推到 main 后约一分钟自动更新)
- 仓库:https://github.com/ciciechen00/heartcart-studio (私有)
设备
- 先只做电脑端(2026-10-24 她定的)。iPhone / iPad 的交互(悬停、长按、把手、底部抽屉等)等她点名再做。
- 现有的触屏适配只保证手机上能点能拖,留着不动,但不在它上面继续加移动端设计。
结构(按部分组织)
- 所有文件夹和文件名只用英文(2026-10-24 她定的:GitHub 手机应用打不开中文路径)。中文名写在文件内容里,网站从那里读。
- 1-foundation(基础)/ 2-canvas(画布操作)/ 3-panel(面板)/ 4-flow(流程)/ 5-desk(桌面):每层若干部分。每个部分一个文件夹,四样:
- spec.md(需求):第一行「# 中文名」就是网站上显示的部分名;「## 一句话」「## 规则」(编号列表,编号就是规则号)「## 待定」。
- decisions.md(决定):她在这一部分定过的事,按日期从新到旧。
- final/demo.html(定稿):选定的那一版(最多一个)。
- trials/<英文名>/demo.html(试验):试验版本和没选中的存档。
- 现有部分:1-foundation/box-logic 框的逻辑、visual-language 视觉语言;2-canvas/auto-layout 自动排列、sizing 尺寸规则、overlap 叠边;3-panel/inspector 参数面板;4-flow/start 开始方式、purpose-direction 用途和方向、templates 模板库;5-desk/desk-organize 桌面收纳。新增部分时同步改 tools/build_site.py 里的 ORDER。
- workbench/(工作台):整合层,把第 4 层串起来,只引用各部分定稿里的代码,不复制。
- archive/(存档):改流程前的旧东西,谁都不引用。
- tools/assets:示例图片 hero.b64、工作台图片 imgs.json(源文件里用 __HERO__ / __IMGS__ 占位)。
- tools/touch.js(触屏适配):生成网站时自动加进每个小样(手指按下前先补一个「指到」、拖动不滚页面、单屏页禁止缩放)。新小样不用自己处理触屏,但能拖的区域要设 touch-action:none,边和角的感应范围在 pointer:coarse 时放大。
- tools/build_site.py:读身份卡、做检查、生成 site/。还做「同步检查」:仓库里每个 .md 和 .html 都必须在网站上出现(README → 总览页,CLAUDE.md → 工作说明页,各部分 spec/decisions → 部分页,demo → 小样页);新加一种文件就要在网站上给它一个位置,否则检查不过。scripts/build_site.py 只是转调它(Cloudflare 的构建命令写的是这个路径,别删)。
- 依赖方向:上层可以用下层,下层不依赖上层。第 1 层所有地方共用;改第 1 层先问她。
身份卡(每个 demo.html 第一行)
<!-- 身份卡 {"id":"英文短名","标题":"…","状态":"试验|定稿|存档","规则":[规则号],"版本":"…","日期":"YYYY-MM-DD","说明":"一句话"} -->
- 一个小样只属于一个部分(就是它所在的文件夹);同时碰到两个部分的,归层级更低、更基础的那个。
- 规则号必须在这个部分的 spec.md 里存在。状态「定稿」只能放在 final/ 里,一个部分最多一个。
- 网站目录由身份卡自动生成,不手写。生成脚本检查不过就报错退出,网站不会更新——修好再推。
配合流程(她只说三个词 + okk)
- 反馈 → 快改:先找到对应的部分和规则号;对不上任何规则 → 先在小样页面的「规则草稿」里加或改规则,再改代码。快改用 Claude 页面(Artifact)给链接,几秒更新,不碰仓库。新试验从该部分定稿(或框的逻辑定稿)的代码出发,不在旧小样上接着改。
- 总结 → 整理:对账(每条规则都做到了、每处代码都能指回一条规则,指不回去的删掉)→ 规则写进 spec.md,结论写进 decisions.md,选中的版本放进 final/(旧定稿移到 trials/ 并改成存档),其他版本放 trials/ → 运行生成脚本通过检查 → 推送 → 发给她一张清单:这次定了什么、什么归到哪。
- 可以整合了 → 整合:工作台引用定稿,不重写。
- okk:动第 1 层、改已定稿的规则、改仓库结构之前,先出方案,等她说「okk」或「确认修改」。「对」「可以」不算。
- 她指出一处,按规则检查所有同类情况一起改,不只改她指的那一处。
- 她没说到、需要假设的地方,直接出 2–3 个版本给她试,不写长篇文字方案。
- 每做好一版推一条手机通知;要她授权或操作的事用 🆘 标出,链接同时写在对话里并推到手机(她的推送可能没开)。
- 汇报用中文、专业简短,链接写成可点的文字。
推送前自检
- python3 scripts/build_site.py 通过。
- 用无界面浏览器在 iPhone 和 iPad 尺寸打开目录页、改动过的部分页和小样,确认能打开、无报错,并用模拟手指(CDP Input.dispatchTouchEvent)拖一下确认能拖。
- 推到 main;发布后 WebFetch 网站确认更新。
现在做到哪(2026-10-24)
- 仓库已按部分重整、全部改成英文路径,旧东西全部归位;网站目录按层 → 部分 → 定稿 / 试验显示。
- 框的逻辑:七环已定稿;两个开关待她在手机上试后选(到父级量到「父级的边 / 内边距线」;顶到父级后「停住 / 撑大」)。选定后写进 1-foundation/box-logic 的 spec.md 和 decisions.md。
- 其他部分只有需求(从旧文档拆过来),还没有定稿。建议顺序:自动排列 → 尺寸规则 → 叠边 → 参数面板 → 第 4 层流程。
- 待她回家逐个检查后决定是否搬进仓库(还只在 Claude 页面上):拼贴手感 HkTJUTZGhqZz116A1fi7aT、桌面整理演示 VkanYNLqyZqcSxsvfew685、物理层次 CdTYDdknSZonzp462bCPHW、材质与圆角 47wwTmKbDmMTs2j1MD8iVn、工具动作定稿 BSCHF9R4xepns3ehtHbktc、工具动作对比 MQWedMcCUedaAAuuUySSzR、放进容器 W2taGAqX4fz1WeXcBpx79h(→ 5-desk/desk-organize);拉伸规则演示 5niwFC6EQUJgo5WUMAm8D1(→ 2-canvas/sizing);参数手感·三种逻辑 BhfbjWYtKHQvhZFDEAJ11L(→ 3-panel/inspector);HeartCart 设计规范 Uemdwoz5GD2qYmpdMLnji2(→ 1-foundation/visual-language);产品需求 GpT5wXQTt1FExMNorVkxMF 和早期桌面/工作台版本(→ archive)。链接前缀 https://claude.ai/artifact/。用 Artifact read 取内容。
- 技术欠账:定稿还是整页网页,整合工作台前要把框的逻辑定稿里的逻辑拆成共用的代码文件(放在 final/ 里),工作台和其他部分直接引用。