From 243bbf1db1b3783224abf51e527c27d62413d891 Mon Sep 17 00:00:00 2001 From: leroy Date: Sat, 7 Nov 2026 16:18:01 +0800 Subject: [PATCH] =?UTF-8?q?le-app-design=20v1.0.0=EF=BC=9A=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=20App=20=E8=AE=BE=E8=AE=A1=E5=B7=A5=E5=9D=8A=E2=80=94?= =?UTF-8?q?=E2=80=94=E7=9C=9F=E5=AE=9E=E9=9B=86=E6=88=90=E5=B9=B6=E8=B0=83?= =?UTF-8?q?=E7=94=A8=E4=B8=89=E4=B8=8A=E6=B8=B8=E7=9A=84=E7=BC=96=E6=8E=92?= =?UTF-8?q?=E5=99=A8=E3=80=82ui-ux-pro-max=EF=BC=88MIT=EF=BC=8Csearch.py?= =?UTF-8?q?=20=E8=AE=BE=E8=AE=A1=E7=B3=BB=E7=BB=9F/=E8=A7=84=E8=8C=83?= =?UTF-8?q?=E6=A3=80=E7=B4=A2=EF=BC=89+=20frontend-design=EF=BC=88Apache-2?= =?UTF-8?q?.0=EF=BC=8CSkill=20=E5=B7=A5=E5=85=B7=E8=A3=85=E8=BD=BD?= =?UTF-8?q?=E7=9A=84=E8=A7=86=E8=A7=89=20design=20lead=EF=BC=89+=20impecca?= =?UTF-8?q?ble=EF=BC=88Apache-2.0=EF=BC=8CCLI=20=E6=A3=80=E6=B5=8B?= =?UTF-8?q?=E5=99=A8+playbook=20=E5=AE=A1=E6=9F=A5=EF=BC=89=EF=BC=9B?= =?UTF-8?q?=E4=B8=89=E6=9C=BA=E5=88=B6=E4=BF=9D=E8=AF=81=E7=9C=9F=E9=9B=86?= =?UTF-8?q?=E6=88=90=E5=8F=AF=E9=AA=8C=E8=AF=81=EF=BC=9Acheck=5Fdeps=20?= =?UTF-8?q?=E7=A1=AC=E4=BE=9D=E8=B5=96=E9=97=A8=EF=BC=88=E7=BC=BA=E5=8D=B3?= =?UTF-8?q?=E7=BB=88=E6=AD=A2=EF=BC=89=E3=80=81log=5Fcall=20=E8=AF=81?= =?UTF-8?q?=E6=8D=AE=E8=B4=A6=E6=9C=AC=EF=BC=88=E8=B0=83=E7=94=A8=E8=90=BD?= =?UTF-8?q?=20calls.jsonl=20=E5=90=AB=E8=A3=85=E8=BD=BD=20sha256=EF=BC=89?= =?UTF-8?q?=E3=80=81evidence=5Freport=20=E9=AA=8C=E6=94=B6=E9=97=A8?= =?UTF-8?q?=EF=BC=88=E4=B8=89=E6=96=B9=E5=90=84=20=E2=89=A51=20=E6=88=90?= =?UTF-8?q?=E5=8A=9F=E8=B0=83=E7=94=A8=E6=89=8D=20PASS=EF=BC=89=EF=BC=9BS0?= =?UTF-8?q?=E2=80=93S7=20=E6=B5=81=E6=B0=B4=E7=BA=BF=E5=90=AB=E4=B8=A4?= =?UTF-8?q?=E4=B8=AA=E5=9B=9E=E5=90=88=E7=BB=88=E6=AD=A2=E5=81=9C=E7=82=B9?= =?UTF-8?q?=E4=B8=8E=E8=BD=BB=E9=87=8F=E4=BB=BB=E5=8A=A1=E8=B7=AF=E7=94=B1?= =?UTF-8?q?=EF=BC=9BE2E=20=E5=B7=B2=E7=9C=9F=E8=B7=91=EF=BC=88=E4=B9=A0?= =?UTF-8?q?=E6=83=AF=E6=89=93=E5=8D=A1=20App=20=E5=8F=8C=E5=B1=8F=E5=8E=9F?= =?UTF-8?q?=E5=9E=8B=EF=BC=89=EF=BC=9A7=20=E6=9D=A1=E7=9C=9F=E5=AE=9E?= =?UTF-8?q?=E8=B0=83=E7=94=A8=E7=95=99=E8=B4=A6=E3=80=81=E5=8F=8C=E7=8B=AC?= =?UTF-8?q?=E7=AB=8B=20sub-agent=20=E8=AF=84=E5=AE=A1=2026/36=20+=20detect?= =?UTF-8?q?=202=20findings=E3=80=81=E4=BF=AE=E5=A4=8D=203=C3=97P1=20?= =?UTF-8?q?=E5=90=8E=E5=AD=97=E9=98=B6=E6=B8=85=E9=9B=B6=E3=80=81=E4=BA=A4?= =?UTF-8?q?=E4=BA=92=E5=A4=8D=E6=B5=8B=204/4=E3=80=81=E9=AA=8C=E6=94=B6?= =?UTF-8?q?=E9=97=A8=20PASS=EF=BC=9B=E4=B8=8A=E6=B8=B8=E4=B8=89=E4=BB=B6?= =?UTF-8?q?=E8=A1=A5=E8=A3=85=20~/.codex/skills=EF=BC=8C=E4=BB=93=E5=BA=93?= =?UTF-8?q?=20README=20=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 32 ++- skills/le-app-design/NOTICE | 27 +++ skills/le-app-design/README.md | 60 +++++ skills/le-app-design/SKILL.md | 130 ++++++++++ skills/le-app-design/evals/trigger_cases.json | 23 ++ skills/le-app-design/references/pipeline.md | 142 +++++++++++ skills/le-app-design/references/runtimes.md | 29 +++ skills/le-app-design/reports/README.md | 9 + .../le-app-design/reports/e2e-habit/BRIEF.md | 28 +++ .../reports/e2e-habit/INTEGRATION-REPORT.md | 34 +++ .../reports/e2e-habit/calls.jsonl | 7 + .../reports/e2e-habit/critique-report.md | 72 ++++++ .../reports/e2e-habit/design-plan.md | 64 +++++ .../e2e-habit/shot-all-done-390-v2.png | Bin 0 -> 130631 bytes .../e2e-habit/shot-stats-390-final.png | Bin 0 -> 65410 bytes .../e2e-habit/shot-today-390-final.png | Bin 0 -> 121257 bytes .../reports/integration-test-2026-11-07.md | 63 +++++ .../le-app-design/reports/trigger-eval.json | 220 +++++++++++++++++ skills/le-app-design/scripts/check_deps.py | 223 ++++++++++++++++++ .../le-app-design/scripts/evidence_report.py | 140 +++++++++++ skills/le-app-design/scripts/log_call.py | 140 +++++++++++ 21 files changed, 1437 insertions(+), 6 deletions(-) create mode 100644 skills/le-app-design/NOTICE create mode 100644 skills/le-app-design/README.md create mode 100644 skills/le-app-design/SKILL.md create mode 100644 skills/le-app-design/evals/trigger_cases.json create mode 100644 skills/le-app-design/references/pipeline.md create mode 100644 skills/le-app-design/references/runtimes.md create mode 100644 skills/le-app-design/reports/README.md create mode 100644 skills/le-app-design/reports/e2e-habit/BRIEF.md create mode 100644 skills/le-app-design/reports/e2e-habit/INTEGRATION-REPORT.md create mode 100644 skills/le-app-design/reports/e2e-habit/calls.jsonl create mode 100644 skills/le-app-design/reports/e2e-habit/critique-report.md create mode 100644 skills/le-app-design/reports/e2e-habit/design-plan.md create mode 100644 skills/le-app-design/reports/e2e-habit/shot-all-done-390-v2.png create mode 100644 skills/le-app-design/reports/e2e-habit/shot-stats-390-final.png create mode 100644 skills/le-app-design/reports/e2e-habit/shot-today-390-final.png create mode 100644 skills/le-app-design/reports/integration-test-2026-11-07.md create mode 100644 skills/le-app-design/reports/trigger-eval.json create mode 100644 skills/le-app-design/scripts/check_deps.py create mode 100644 skills/le-app-design/scripts/evidence_report.py create mode 100644 skills/le-app-design/scripts/log_call.py diff --git a/README.md b/README.md index 9ee90c3..9ad6a49 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ > *「把重复出现的方法,变成可触发、可验证、可维护的 Skill。」* -MetaSkill 是 Leroy 的个人 Skill 仓库:**le-meta-skill**(Skill 工坊)与其实战技能 **le-wechat-article**(公众号写作工坊)、**le-gpt-image**(无 Key GPT Image 生图工坊)。ZCode / Claude Code / Codex 通用。 +MetaSkill 是 Leroy 的个人 Skill 仓库:**le-meta-skill**(Skill 工坊)与其实战技能 **le-wechat-article**(公众号写作工坊)、**le-gpt-image**(无 Key GPT Image 生图工坊)、**le-app-design**(统一 App 设计工坊)。ZCode / Claude Code / Codex 通用。 ## 仓库结构 @@ -19,10 +19,15 @@ skills/ │ ├── references/ # 6 篇:五类型路由·排版规则·审读手册(含合规)·视觉生产·作者画像·常用事实卡 │ ├── scripts/ # check_article(硬规则自检)/ md2wechat(3 骨架×4 色板转微信 HTML)/ publish_draft(草稿箱同步,零依赖) │ └── evals/ reports/ -└── le-gpt-image/ # 无 Key GPT Image 生图工坊 - ├── SKILL.md # 工作流:接单→停点确认→生成交付;能力边界 / 尺寸质量速查 / 故障排查 - ├── references/ # prompt-craft:结构公式·文字渲染·摄影/插画/信息图·中文东方风格·改图指令·反模式 - └── scripts/ # gpt_image.py(零依赖:Codex 凭证直连内部图像通道,token 自动刷新) +├── le-gpt-image/ # 无 Key GPT Image 生图工坊 +│ ├── SKILL.md # 工作流:接单→停点确认→生成交付;能力边界 / 尺寸质量速查 / 故障排查 +│ ├── references/ # prompt-craft:结构公式·文字渲染·摄影/插画/信息图·中文东方风格·改图指令·反模式 +│ └── scripts/ # gpt_image.py(零依赖:Codex 凭证直连内部图像通道,token 自动刷新) +└── le-app-design/ # 统一 App 设计工坊(编排器) + ├── SKILL.md # S0–S7 流水线:依赖门→产品理解→规范→视觉→构建→审查→迭代→验收;六铁律 + 岗位裁决表 + ├── references/ # pipeline(七阶段细则)· runtimes(四 runtime 适配矩阵) + ├── scripts/ # check_deps(硬依赖门)/ log_call(调用证据账本)/ evidence_report(验收门),纯标准库 + └── evals/ reports/ # 触发用例 + 集成测试证据(calls.jsonl / 截图 / 审查报告) ``` ## le-meta-skill —— Skill 工坊 @@ -85,6 +90,21 @@ skills/ 安全边界:凭证只读不打印不外发;内部接口无稳定性契约(native 失效可切 responses 备用通道);内容政策拒绝即停,不换措辞绕过。 +## le-app-design —— 统一 App 设计工坊 + +一个入口(「帮我设计这个 App」)跑完产品理解 → 设计规范 → 视觉探索 → Web 高保真原型 → 设计审查 → 优化迭代 → 交付。它不是借鉴了三个开源 Skill 的新 Skill,而是**真正集成并调用**三个上游的编排器: + +- **ui-ux-pro-max**(MIT):`search.py` CLI 真跑 `--design-system --persist` 生成 MASTER.md,UX/可访问性/触控规范走数据检索——设计规范的硬约束来源 +- **frontend-design**(Apache-2.0, Anthropic):经宿主 Skill 工具装载(或 Read 原文全文,一等路径)——视觉方向与品牌差异化的 design lead +- **impeccable**(Apache-2.0, pbakaus):`impeccable` CLI(context / detect 62 规则 / critique-storage)+ playbook 装载照做——审查、精修与质量底线 +- **三个机制保证「真集成」可验证**:`check_deps.py` 硬依赖门(缺任何一个即终止并报安装指引)、`log_call.py` 证据账本(每次调用落 calls.jsonl,含装载文件的 sha256)、`evidence_report.py` 验收门(三方各有 ≥1 条成功调用才许宣称完成)。已跑通完整 E2E(习惯打卡 App 双屏原型):三上游真实调用 7 条留账、双独立 sub-agent 评审 26/36、修复 3×P1 后复测清零——证据见 [reports/](skills/le-app-design/reports/integration-test-2026-11-07.md) + +触发方式:「帮我设计一个 App」「做一个高保真原型」「把首页和详情页这些界面设计出来」。点名单个上游(「用 impeccable 审查」)不触发,直连对应 Skill。 + +依赖安装:三个上游需装到 `~/.agents/skills/`(Codex 侧另链 `~/.codex/skills/`),详见 [skills/le-app-design/README.md](skills/le-app-design/README.md)。不 vendoring、不修改上游(归属见其 NOTICE)。 + +安全边界:上游目录只读;停点 1(设计方向)与停点 2(修复范围)为回合终止点,「一口气跑完」仅豁免停点、不豁免铁律与验收门。 + ## 安装 三个 runtime 读的都是同一套 SKILL.md 开放格式,脚本只用 python3 标准库。把要装的 skill 软链到对应位置即可: @@ -99,7 +119,7 @@ mkdir -p ~/.claude/skills && ln -s <克隆路径>/skills/le-wechat-article ~/.cl mkdir -p ~/.codex/skills && ln -s <克隆路径>/skills/le-wechat-article ~/.codex/skills/le-wechat-article ``` -装 le-meta-skill、le-gpt-image 同理,把路径换成对应 skill 目录。 +装 le-meta-skill、le-gpt-image 同理,把路径换成对应 skill 目录。装 le-app-design 还需先装三个上游依赖(ui-ux-pro-max / frontend-design / impeccable),并用其 `scripts/check_deps.py` 验证三方全绿。 ## License diff --git a/skills/le-app-design/NOTICE b/skills/le-app-design/NOTICE new file mode 100644 index 0000000..ac006ca --- /dev/null +++ b/skills/le-app-design/NOTICE @@ -0,0 +1,27 @@ +# NOTICE — 第三方依赖归属 + +le-app-design 是一个编排器 Skill:运行时按各自原生机制调用以下三个上游 +Skill(CLI 执行 / 原文装载),不分发、不内嵌、不修改它们的任何内容。 +本仓库遵循各上游许可证条款,特此归属: + +## ui-ux-pro-max +- 上游: https://github.com/nextlevelbuilder/ui-ux-pro-max-skill +- 许可证: MIT © nextlevelbuilder +- 调用方式: 执行其 scripts/search.py(设计系统生成与域检索),读取其 data/*.csv 经由该 CLI +- 本仓库不包含其源码副本 + +## frontend-design +- 上游: https://github.com/anthropics/skills (skills/frontend-design) +- 许可证: Apache-2.0 © Anthropic PBC(其 SKILL.md 附 LICENSE.txt 全文) +- 调用方式: 宿主 Skill 工具装载,或 Read 其 SKILL.md 原文全文进执行上下文 +- 本仓库不包含其源码副本 + +## impeccable +- 上游: https://github.com/pbakaus/impeccable +- 许可证: Apache-2.0 © Patrick Bakaus +- 调用方式: 执行其 scripts/impeccable CLI(context / detect / critique-storage…), + 并按其 SKILL.md 路由装载 reference/*.md playbook 照做 +- 本仓库不包含其源码副本 + +--- +le-app-design 自身以仓库根 LICENSE(MIT, © 2026 Leroy)发布。 diff --git a/skills/le-app-design/README.md b/skills/le-app-design/README.md new file mode 100644 index 0000000..1bce837 --- /dev/null +++ b/skills/le-app-design/README.md @@ -0,0 +1,60 @@ +# le-app-design + +> 统一 App 设计工坊:一个入口完成产品理解 → 设计规范 → 视觉探索 → Web 高保真原型 → 设计审查 → 优化迭代 → 交付。底层**真实集成并调用**三个上游 Skill,本 Skill 只做编排、协调与质量控制。 + +**状态**:rigorous 档。ZCode / Claude Code / Codex / OpenCode 通用。 + +## 它解决什么问题 + +你想要一个 App 从想法变成可交互的高保真原型,只需要说「帮我设计这个 App」。le-app-design 负责检测依赖、给三个上游分派岗位、串起全流程、留下可检查的调用证据:ui-ux-pro-max 出设计规范与 UX 硬约束,frontend-design 出有品牌差异性的视觉方向,impeccable 做设计审查与反模式检测并盯着修复。你不需要知道三个上游各自怎么调。 + +## 三个上游依赖(必需,非可选) + +| 上游 | 岗位 | 许可证 | 仓库 | +|---|---|---|---| +| ui-ux-pro-max | 设计规范生成 / UX 与可访问性数据检索 | MIT | github.com/nextlevelbuilder/ui-ux-pro-max-skill | +| frontend-design | 视觉创意 / 品牌差异化(Anthropic) | Apache-2.0 | github.com/anthropics/skills | +| impeccable | 设计审查 / 62 规则反模式检测 / 精修 | Apache-2.0 | github.com/pbakaus/impeccable | + +本 Skill 不 vendoring、不修改、不复制三个上游的任何内容,只按其原生机制调用(CLI 执行 / 原文装载)。归属详见 [NOTICE](NOTICE)。 + +## 依赖安装 + +三份都装到 `~/.agents/skills/`(首选,impeccable 自引用该路径): + +```bash +# 示例:ui-ux-pro-max +git clone --depth 1 https://github.com/nextlevelbuilder/ui-ux-pro-max-skill /tmp/uiux +ln -s /tmp/uiux/.claude/skills/ui-ux-pro-max ~/.agents/skills/ui-ux-pro-max +# frontend-design: git clone anthropics/skills → skills/frontend-design +# impeccable: git clone pbakaus/impeccable → 整目录链接 +``` + +Codex 侧还需链接到 `~/.codex/skills/`。装完验证: + +```bash +python3 <本目录>/scripts/check_deps.py +``` + +三方全绿才可使用;缺任何一个,触发本 Skill 时会明确报缺并终止,不会假装集成成功。 + +## 触发方式 + +- 帮我设计一个习惯打卡 App,要高保真原型 +- 把这个产品想法做成可交互的 UI 原型 +- 给我的工具类产品做一轮完整的设计 + 审查 + 改进 +- design an app prototype for … + +不触发:点名单个上游(「用 impeccable 审查」)、公众号文章/海报排版、只要一张配图、纯功能开发。 + +## 核心机制(为什么这是真集成) + +- **硬依赖门** `scripts/check_deps.py`:按依赖各自形态做活性检查——pro-max 真跑一次检索、impeccable 跑二进制 `--version`、frontend-design 校验原文完整可读(含 sha256)。缺则终止。 +- **证据账本** `scripts/log_call.py`:每次对上游的调用(CLI 执行与原文装载)都落 `calls.jsonl`——时间、命令、退出码、stdout 摘要、装载文件的 sha256。没进账本的调用视为没发生。 +- **验收门** `scripts/evidence_report.py`:三方各有 ≥1 条成功调用才判 PASS;否则 FAIL 并列出缺口,禁止把未完成的流程标记为成功。 + +## 安全边界 + +- 三个上游目录只读;本 Skill 的任何流程都不修改它们。 +- 停点 1(设计方向确认)与停点 2(修复范围确认)会停下来等你;说「一口气跑完」可豁免停点,但豁免不了铁律与验收门。 +- 交付产物全部落盘(运行目录 `le-app-design-runs//`),包括审查报告与集成证据,可复查。 diff --git a/skills/le-app-design/SKILL.md b/skills/le-app-design/SKILL.md new file mode 100644 index 0000000..59e98c8 --- /dev/null +++ b/skills/le-app-design/SKILL.md @@ -0,0 +1,130 @@ +--- +name: le-app-design +description: | + Le App Design —— 统一 App 设计工坊:只叫这一个名字,自动完成「产品理解 → 设计规范 → 视觉探索 → Web 高保真原型 → 设计审查 → 优化迭代 → 交付」。底层真实集成并调用三个上游 Skill——ui-ux-pro-max(设计规范/UX 数据检索引擎)、frontend-design(视觉创意与品牌差异化)、impeccable(设计审查/精修/反模式检测);本 Skill 只做依赖检测、任务分配、执行协调与质量控制,绝不替代三者任何能力。 + 何时触发:想要完整的 App / 产品 UI 设计流程——"帮我设计一个 App""做一个高保真原型""从想法到可交互原型""给这个产品做 UI 设计和原型""design an app";或指定若干界面做设计——"把首页和详情页这些界面设计出来""做移动端的页面/界面设计""App 界面改版"。 + 不要触发:点名单个上游 Skill 的直接请求(直连该上游即可);写作与排版类任务;单张配图生成;纯功能开发与排障(无设计诉求)。 +metadata: + author: Leroy + version: 1.0.0 + runtimes: zcode, claude-code, codex, opencode + requires: + - "ui-ux-pro-max (MIT, nextlevelbuilder/ui-ux-pro-max-skill)" + - "frontend-design (Apache-2.0, anthropics/skills)" + - "impeccable (Apache-2.0, pbakaus/impeccable)" +--- + +# Le App Design —— 统一 App 设计工坊 + +一个入口,三个真依赖。用户只说「帮我设计这个 App」,本 Skill 编排三个上游 Skill 完成从理解到交付的全流程。 + +## 铁律(违反任何一条即本次运行失败) + +1. **真调用,不冒充。** 三个上游必须以其原生形态被实际调用:ui-ux-pro-max 跑它的 `search.py` CLI;impeccable 跑它的 `impeccable` CLI 并按其 SKILL.md 路由装载 reference/*.md playbook 照做;frontend-design 经宿主 Skill 工具装载(或 Read 原文全文)。禁止只引用名字、模仿理念、用自写流程替代。 +2. **依赖门不过,不许动工。** S0 检测到任何一个上游缺失/失活,立即向用户报告缺什么、怎么装,终止本次运行。不许跳过、不许假装集成完成。 +3. **调用必记账。** 每次对上游的调用(含 playbook/文档装载)都经 `log_call.py` 落入本次运行目录的 `calls.jsonl`。没进账本的调用视为没发生。 +4. **交付必过验收门。** S7 跑 `evidence_report.py`,三方各有 ≥1 条成功调用记录才可宣称完成;否则如实报告 FAIL 与原因。 +5. **不改上游。** 三个上游目录只读(调用、装载),任何修改都不属于本 Skill 的职责。 +6. **用户 brief 原话 > 一切。** 三个上游都自认 brief 优先,本 Skill 同样:brief 钉死的方向照办,冲突记入决策日志。 + +## 岗位分工(冲突时按此裁决) + +| 维度 | 主责 | 裁决 | +|---|---|---| +| 视觉方向、品牌差异化、排版个性 | frontend-design(design lead) | 美学轴自由时听它的 POV,拒绝模板脸 | +| 设计规范、可访问性、触控/平台规则、数据支撑选型 | ui-ux-pro-max | **硬约束**:WCAG/HIG/MD 类规则赢过美学偏好 | +| 质量底线、验收标准、反模式 | impeccable | craft-floor 的 ban 是红线(如 eyebrow 禁令、嵌套卡片必错) | +| 产品事实、范围、语气 | 用户 brief | 最高优先级 | + +## 工作流 S0–S7 + +细则(每阶段的动作、命令、产物、验收)见 [pipeline.md](references/pipeline.md);跨 runtime 适配见 [runtimes.md](references/runtimes.md)。设 `` = 本 Skill 目录,`` = 运行目录(默认 `<项目根>/le-app-design-runs/<时间戳>-/`,下同)。 + +### S0 依赖门(每次触发必跑,轻量任务也不例外) + +```bash +python3 /scripts/check_deps.py --out /deps.json +``` + +三方解析 + 活性检查(pro-max 真跑一次检索、impeccable 跑 `--version`、frontend-design 校验原文完整可读)。非零退出 → 停止并报告缺失项与安装指引,本次运行终止。 + +### S1 产品理解 + +产出 `/BRIEF.md`:产品是什么、给谁、核心任务、平台与形态(移动 Web / 桌面 / 响应式)、impeccable 四模式归属(Persuade / Operate / Read / Experience)。brief 信息不足且影响方向 → 问用户;足够 → 写明假设直接做。 + +### S2 设计规范 — ui-ux-pro-max + +```bash +python3 /scripts/log_call.py ui-ux-pro-max --run-dir -- \ + python3 /scripts/search.py "<产品类型 关键词>" --design-system --persist -p "<项目名>" --output-dir <项目根> +``` + +产出 `design-system//MASTER.md`。按需补 `--domain ux|typography|color|landing`、`--stack <栈>` 定向检索(每次都走 log_call)。规范冲突时本阶段数据优先于直觉。 + +### S3 视觉探索 — frontend-design + +1. 宿主有 Skill 工具(ZCode / Claude Code)→ 用它装载 `frontend-design`;没有 → Read `/SKILL.md` 全文进上下文(一等路径,不是降级)。 +2. 装载后立即记账:`python3 /scripts/log_call.py frontend-design --run-dir --load /SKILL.md` +3. 按其「两遍法」产出 `/design-plan.md`:色板(4–6 个具名 hex)、字体与角色、布局概念(一句话 + ASCII)、设计原则;对照它的 AI 味特征清单逐条自检,修订要写明改了什么、为什么。 +4. 与 S2 的 MASTER.md 冲突时按上方裁决表处理,冲突与裁决记入 design-plan.md 的「决策记录」节。 + +### 停点 1(回合终止点) + +向用户展示 BRIEF + MASTER 要点 + design-plan,等确认或调整后再进构建。用户已明确说「一口气跑完」→ 豁免本停点,继续。**本停点必须终止回合等待用户,不得自答自继续。** + +### S4 高保真构建 + +1. Read `/reference/craft-floor.md`(impeccable 施工底线,装载即调用)并记账 `log_call.py impeccable --load <该文件>`。 +2. 照 MASTER.md tokens + design-plan 写可运行、可交互的 Web 原型(默认单文件或多文件 HTML/CSS/JS,无构建链)。 +3. headless Chrome 截图核对(375/390 移动档 + 桌面档),按 craft-floor「一次看一批」原则修完再截。 + +### S5 设计审查 — impeccable + +1. `log_call.py impeccable -- sh /scripts/impeccable context --target <主文件>`,按其指令行事。 +2. 按其 SKILL.md 路由装载 `reference/critique.md`(+ 需要的 audit/craft-floor 等)并照做——critique 要求**双独立 sub-agent**(Assessment A 设计评审 / Assessment B detect+浏览器证据):ZCode/Claude Code 用 Agent 工具并行派两个;Codex 按 critique.md 的 Codex 门问询;无 sub-agent 的 runtime 按其降级规则出横幅。playbook 装载逐一记账。 +3. Assessment B 真跑:`log_call.py impeccable -- sh /scripts/impeccable detect --json <文件>`;可浏览器时按 playbook 走 overlay/截图证据。 +4. 按 critique.md 完整出报告(启发式评分表、persona 红旗、P0–P3、快照持久化 + trend)。 + +### 停点 2(回合终止点) + +展示审查报告,与用户确认修复范围(全部 / Top 3 / 仅 P0-P1)再进 S6。「一口气跑完」豁免同上。 + +### S6 优化迭代 + +按确认的范围修复:P0/P1 必修;修完复跑 `detect --json` 至 0 findings(或记明剩余项与理由);复截图核对视觉。涉及大改方向的回到 S3 重走(罕见)。 + +### S7 交付 + 验收门 + +```bash +python3 /scripts/evidence_report.py --run-dir --out /INTEGRATION-REPORT.md \ + --artifact <原型主文件> --artifact <截图...> +``` + +交付物 = 原型(可打开可交互)+ BRIEF/design-plan/MASTER + 审查报告与快照 + INTEGRATION-REPORT(三方调用统计、命令清单、产物存在性核验)。报告 FAIL(任何一方 0 成功调用)→ 不许宣称完成,如实说明缺什么。 + +## 轻量任务路由 + +- **仅审查/体检**(「帮我审一下这个原型的设计」):S0 → S5(→停点2)→ S6 → S7。 +- **局部修改**(「把这个页面间距调好」):S0 → 若涉及视觉决策走 S3 快速版 → S4′(craft-floor 装载后施工)→ S5′(detect+复截)→ S7。 +- 三上游经 check_deps 解析后始终可调用;轻量路由是省阶段,不是换实现。 + +## 失败模式与停手点 + +- 依赖缺失/失活:S0 即停,报缺失项与安装指引(见 README「依赖安装」)。 +- 上游 CLI 中途失败:重试一次;仍失败 → 记账(账本保留失败记录)、报告用户、终止或按用户指示降级到其余上游可覆盖的范围,并在交付物中明确标注缺口。 +- Chrome/浏览器不可用:截图核对改为声明 fallback(craft-floor 逐条人工核对),在报告中注明。 +- 用户点名单一上游:不触发本 Skill(负触发已在 description 声明)。 + +## 反例黑名单 + +- 不要在账本外「顺手」直接调上游——没记账的调用等于没发生。 +- 不要把三个上游的文档内容抄进本 Skill 或其 references 来「省一次装载」。 +- 不要因为某上游慢/临时失败就用自己的设计判断顶替其岗位并照常宣称完成。 +- 不要在停点自问自答继续跑;豁免只能来自用户明确授权。 +- 不要检测到依赖缺失还继续产出「设计」——那是没有集成的假成功。 + +## Reference Map + +- 七阶段细则与验收:[pipeline.md](references/pipeline.md) +- 跨 runtime 适配与已知限制:[runtimes.md](references/runtimes.md) +- 依赖安装与许可证:[README.md](README.md)、[NOTICE](NOTICE) diff --git a/skills/le-app-design/evals/trigger_cases.json b/skills/le-app-design/evals/trigger_cases.json new file mode 100644 index 0000000..efcad03 --- /dev/null +++ b/skills/le-app-design/evals/trigger_cases.json @@ -0,0 +1,23 @@ +{ + "_说明": "le-app-design 触发用例。family 标注场景族,便于回归分析。", + "recommended_threshold": 0.3, + "negative_patterns": ["用 impeccable", "impeccable 审查", "ui-ux-pro-max", "查个配色", "公众号", "写一篇"], + "should_trigger": [ + {"text": "帮我设计一个习惯打卡 App,要能看的高保真原型", "family": "full_design_cn"}, + {"text": "把这个产品想法做成可交互的 UI 原型,从设计到成品", "family": "full_design_cn"}, + {"text": "design an app for my recipe startup, high-fidelity prototype", "family": "full_design_en"}, + {"text": "给我的工具类产品做一轮完整的设计:规范、视觉、原型加审查", "family": "full_pipeline"}, + {"text": "我要做个妈妈育儿 App,帮我把首页和详情页设计出来", "family": "app_screens"}, + {"text": "用 le-app-design 把这个 idea 变成原型", "family": "explicit_name"} + ], + "should_not_trigger": [ + {"text": "用 impeccable 审查一下这个页面", "family": "single_upstream_direct"}, + {"text": "ui-ux-pro-max 帮我查个配色", "family": "single_upstream_direct"}, + {"text": "帮我写一篇公众号文章", "family": "other_le_skill"}, + {"text": "给我生成一张 App 封面图", "family": "image_only"}, + {"text": "这个按钮的点击事件没反应,帮我修一下", "family": "pure_dev"} + ], + "near_neighbor": [ + {"text": "把这个页面布局调好看一点", "family": "local_tweak", "note": "局部修改走轻量路由(S0+S4′+S5′),仍触发但流程裁剪"} + ] +} diff --git a/skills/le-app-design/references/pipeline.md b/skills/le-app-design/references/pipeline.md new file mode 100644 index 0000000..910c8e3 --- /dev/null +++ b/skills/le-app-design/references/pipeline.md @@ -0,0 +1,142 @@ +# 七阶段流水线细则 + +SKILL.md 是路由,本文是执行手册。每阶段给出:输入 → 动作(含确切命令)→ 产物 → 验收。命令中 `` = le-app-design 目录,`` = 本次运行目录,`` / `` / `` = S0 解析出的三个上游路径(读 `/deps.json` 的 `deps.*.path`)。 + +## S0 依赖门 + +**动作** +```bash +mkdir -p +python3 /scripts/check_deps.py --out /deps.json +``` + +**验收**:exit 0 且 deps.json 的 `ok=true`。任一依赖 `alive=false` → 向用户输出缺失项、原因(`check` 字段)与安装指引(`install` 字段),**终止运行**。deps.json 是后续所有阶段的路径来源,不要手写上游路径。 + +## S1 产品理解 + +**动作**:从用户输入提炼并写 `/BRIEF.md`,包含: + +- 产品:一句话说清这是什么、解决什么 +- 受众与场景:谁、在什么场景用(决定 impeccable 模式与 frontend-design 的取材世界) +- 核心任务:用户打开它要完成的最重要 1–3 件事 +- 平台形态:移动 Web(默认 390×844)/ 桌面 / 响应式;明确「Web 高保真原型」是交付形态 +- 模式归属:Persuade / Operate / Read / Experience 四选一(impeccable 按表面而非产品选模式:App 内页=Operate,落地页=Persuade,阅读页=Read,作品展示=Experience) +- 范围:本次做哪些屏/页面,明确排除什么 + +信息不足且**影响方向**才问用户(用结构化选项,别开放式问卷);否则写明「假设:…」直接做。多次触达同一项目时先读已有 BRIEF.md,增量更新而非重写。 + +**验收**:BRIEF.md 落盘,模式归属有理由。 + +## S2 设计规范 — ui-ux-pro-max + +**动作** +```bash +# 主调用:生成并持久化设计系统(MASTER.md 是后续 token 的唯一来源) +python3 /scripts/log_call.py ui-ux-pro-max --run-dir --note S2-design-system -- \ + python3 /scripts/search.py "<产品类型> <行业> <2-3 风格关键词>" \ + --design-system --persist -p "<项目名>" --output-dir <项目根> + +# 定向补充(按需,每次独立记账): +python3 /scripts/log_call.py ui-ux-pro-max --run-dir --note S2-ux -- \ + python3 /scripts/search.py "<关注点,如 bottom nav touch target>" --domain ux +python3 /scripts/log_call.py ui-ux-pro-max --run-dir --note S2-stack -- \ + python3 /scripts/search.py "<实现关键词>" --stack html-tailwind +``` + +遵守上游 Query Contract:一次查询一个主导意图、2–5 个有效词;结果空/跑题重试一次更窄的写法,再不行如实说「无验证匹配」。 + +**产物**:`<项目根>/design-system//MASTER.md`(+ 查询输出摘要)。 + +**验收**:MASTER.md 存在且 calls.jsonl 有 exit=0 的 S2 记录。已有 MASTER.md 时上游默认跳过覆盖——读它再决定是否需要 `--force`(须用户同意)。 + +## S3 视觉探索 — frontend-design + +**动作** +1. 宿主有 Skill 工具 → 调它装载 `frontend-design`;没有 → Read `/SKILL.md` 全文(两路等价,后者不是降级——装载即调用)。 +2. 立即记账:`python3 /scripts/log_call.py frontend-design --run-dir --note S3-load --load /SKILL.md` +3. 以其「设计总监」立场产出 `/design-plan.md`: + - **色板**:4–6 个具名 hex(`--bg-deep #0E1B2C` 这样命名) + - **字体**:选型 + 各自角色(display/body/数字…),说明为何不是默认脸 + - **布局**:一句话概念 + 每屏 ASCII 线框 + 对齐策略 + - **原则**:这个产品独有的 3–5 条,从题材世界取材(frontend-design:subject matter 是差异化来源) + - **两遍法第二遍**:对照其「AI 味特征清单」(cream+terracotta、暗底酸绿、报纸 hairline、SaaS 卡片套件、eyebrow/中点连接串等)逐条自检;发现默认味 → 写明改了什么、为什么 + - **决策记录**:与 MASTER.md 的冲突及裁决(按 SKILL.md 裁决表:a11y/触控/平台规则 pro-max 赢;美学自由轴 frontend-design 赢;craft-floor ban 红线) + +**验收**:design-plan.md 四要素齐全 + 自检一节存在 + 记账在案。 + +## 停点 1 + +把 BRIEF(要点)、MASTER(风格/色/字/反模式摘要)、design-plan(ASCII + 色板 + 原则 + 决策记录)展示给用户,明确请求确认或调整意见,**终止回合**。用户豁免(已说「一口气跑完」)→ 跳过继续。 + +## S4 高保真构建 + +**动作** +1. Read `/reference/craft-floor.md` 并记账: + `python3 /scripts/log_call.py impeccable --run-dir --note S4-craft-floor --load /reference/craft-floor.md` +2. 构建:默认无构建链的 HTML/CSS/JS(单文件优先,可拆 CSS/JS 文件)。硬性要求: + - token 全部来自 MASTER.md(色/字/间距/圆角/阴影),不发明 system token 之外的美学量 + - 布局与个性按 design-plan;SVG 图标(真图标库或手绘一致笔画),禁 emoji 图标 + - craft-floor 全条目施工时遵守(尤其:eyebrow 是 ban;嵌套卡片必错;elevation 声明一次;浏览器表面——selection/caret/scrollbar/focus ring/表格数字——要从色板定制) + - 交互真实可用(点击/切换/滚动行为写 JS),不是静态画片 + - pro-max Pre-Delivery 逐条过:44px 触控、4.5:1 对比、focus ring、reduced-motion、375px 无横滚 +3. 截图核对(headless Chrome,找不准路径先 `ls /Applications | grep -i chrome`): + ```bash + "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ + --headless=new --disable-gpu --screenshot=/shot-mobile.png \ + --window-size=390,844 file://<绝对路径> + ``` + 移动 390×844 + 桌面 1440×900 至少各一张;按 craft-floor「一次看一批」:Read 截图找问题 → 修完一批 → 再截。 + +**验收**:原型可打开(`file://` 直开无 console error 级问题)、双档截图在 `/`、craft-floor 关键项肉眼过。 + +## S5 设计审查 — impeccable + +**动作** +1. 上下文装载: + ```bash + python3 /scripts/log_call.py impeccable --run-dir --note S5-context -- \ + sh /scripts/impeccable context --target <原型主文件> + ``` + 按 context 输出的指令行事(它可能要求 init/PRODUCT.md——轻量原型按其 SCOPED_EXISTING_ALLOWED 通道走,不阻塞)。 +2. Read `/reference/critique.md` 并记账(`--load`)。**按 critique.md 原文执行**,特别注意其 Hard Invariants: + - 双独立 sub-agent:Assessment A(设计评审)/ Assessment B(detect + 浏览器证据)。ZCode/Claude Code 用 Agent 工具并行派发,两者互不可见对方输出;Codex 有 spawn_agent 先问一次;都没有才单上下文顺序跑并打 `⚠️ DEGRADED` 横幅 + - B 的 CLI 扫描: + ```bash + python3 /scripts/log_call.py impeccable --run-dir --note S5-detect -- \ + sh /scripts/impeccable detect --json <原型目录或主文件> + ``` + (exit 0=clean,2=有 findings;只传 markup 文件) + - 浏览器证据:无浏览器自动化时用 headless Chrome 截图代替并在 Run Notes 声明 fallback + - 快照持久化 + trend:按 critique.md 的 `critique-storage write/trend` 执行并记账 +3. 出完整报告:方法横幅、启发式评分表(0–4 ×10,适用 max 规范化)、Design Specificity、P0–P3 优先问题、persona 红旗、Run Notes。 + +**验收**:报告完整落 `/critique-report.md`(同时按 critique.md 在聊天中交付全文)、detect 结果在账本、快照已写(或记明原因)。 + +## 停点 2 + +展示审查报告,给结构化选项请用户定修复范围:全部 / Top 3 / 仅 P0–P1 / 保持现状。**终止回合**;豁免规则同停点 1(豁免时默认修 P0+P1)。 + +## S6 优化迭代 + +**动作**:按用户选定范围修(P0/P1 无用户明示保留也必修)→ 复跑 detect(记账,note=S6-redetect)至 exit 0(=0 findings;残留项逐一记明理由)→ 复截图核对修复效果。修复遵守 S4 的同一套约束(token/设计/craft-floor),不许「修着修着」脱离体系。 + +**验收**:detect 清零或残留有据;前后截图对比留档 `/`。 + +## S7 交付 + 验收门 + +**动作** +```bash +python3 /scripts/evidence_report.py --run-dir \ + --out /INTEGRATION-REPORT.md --title "<任务名> 集成证据" \ + --artifact <原型主文件> --artifact /shot-mobile.png \ + --artifact <项目根>/design-system//MASTER.md --artifact /design-plan.md +``` + +向用户交付:原型入口(`file://` 路径,可交互)、INTEGRATION-REPORT 判定与三方统计、审查分数与修复摘要、运行目录索引。**FAIL 时不宣称完成**,把缺口(哪个上游 0 成功调用/哪个产物缺失)说清楚。 + +## 全程通用约束 + +- 每次对上游的调用都过 `log_call.py`,`--note` 标阶段(S2-design-system / S5-detect…),失败调用也要留痕。 +- 不修改三个上游目录的任何文件;PYTHONDONTWRITEBYTECODE 已由脚本注入。 +- 运行目录是本次任务的唯一工作痕迹区:BRIEF / design-plan / 截图 / 报告全进 ``;MASTER.md 在项目根(上游约定位置)。 +- 用户豁免只作用于停点,不作用于铁律与验收门。 diff --git a/skills/le-app-design/references/runtimes.md b/skills/le-app-design/references/runtimes.md new file mode 100644 index 0000000..d441568 --- /dev/null +++ b/skills/le-app-design/references/runtimes.md @@ -0,0 +1,29 @@ +# 跨 Runtime 适配 + +CLI 调用(check_deps / log_call / 上游两个 CLI)在所有 runtime 完全一致——它们只依赖 python3 与 sh。差异只在两处:frontend-design 怎么装载、critique 的双 sub-agent 怎么派。 + +## 适配矩阵 + +| Runtime | frontend-design 装载 | critique 双评审 | 备注 | +|---|---|---|---| +| ZCode | Skill 工具(首选)或 Read 原文 | Agent 工具并行派 A/B 两个子代理 | 全功能路径,E2E 验证即在此环境跑 | +| Claude Code | Skill 工具(首选)或 Read 原文 | Task/Agent 工具并行派 A/B | 同上 | +| Codex | Read 原文全文(一等路径) | 有 `spawn_agent`:按 critique.md 的 Codex 门**先问用户一次**再派;无则顺序跑 + `⚠️ DEGRADED` 横幅 | 上游需先装进 `~/.codex/skills/`(见 README) | +| OpenCode | Read 原文全文(一等路径) | 有 sub-agent 工具就派,无则降级横幅 | 同 Codex 逻辑 | +| MausBot / 其它 | Read 原文全文(一等路径) | 无 sub-agent 则降级横幅 | 限制:见下 | + +「一等路径」的含义:frontend-design 是纯指导型 Skill,官方机制就是把它的 SKILL.md 全文装进执行上下文并照做。Read 原文 + `log_call.py --load` 记 sha256,与 Skill 工具装载等效且可审计——**不是降级**。降级只发生在 critique 的双评审(impeccable 自己的定义,见其 critique.md Hard Invariants)。 + +## 已知限制(如实告知用户,不静默吞掉) + +1. **impeccable detect 只读 web markup**(HTML/JSX 等)。原生 Swift/Kotlin 源码扫不出东西——纯原生方案 critique 走 Assessment A 单评审(这是上游定义的完整方法,非降级)。本 Skill 交付形态固定为 Web 高保真原型,不受影响。 +2. **impeccable 二进制按平台分发**(本机 darwin-arm64 已带)。换机器跑 check_deps 会立刻发现缺 `scripts/impeccable` 或其 bin/ 子目录——按报告里的安装指引处理;上游 README 说明二进制会在首跑时按平台下载。 +3. **截图依赖本机 Chrome**。找不到时 S4/S5 的截图核对降级为 craft-floor 逐条人工核对 + 在 INTEGRATION-REPORT 的 Run Notes 声明,不静默跳过。 +4. **Windows**:impeccable 用 `scripts/impeccable.cmd`,python3 可能叫 `python`——check_deps/liveness 若失败按报告指引调整;其余逻辑不变。 +5. **上游版本漂移**:check_deps 记录的是路径 + 活性,不锁版本。上游大版本更新导致 playbook 接口变化时(如 critique.md 的命令名变了),S5 会暴露失败——按失败模式处理并报告,不猜测新接口。 + +## 路径解析优先级(check_deps 的顺序) + +`$LE_APP_DESIGN_DEP_ROOTS`(冒号分隔,自定义安装位)→ `~/.agents/skills`(首选默认,与 impeccable SKILL.md 自引用路径一致)→ `~/.zcode/skills` → `~/.codex/skills` → `~/.claude/skills`。 + +同一机器多份副本时取优先级最高的一份并在 deps.json 记录实际路径;S2/S5 的命令一律用该路径,不硬编码。 diff --git a/skills/le-app-design/reports/README.md b/skills/le-app-design/reports/README.md new file mode 100644 index 0000000..c5e61c0 --- /dev/null +++ b/skills/le-app-design/reports/README.md @@ -0,0 +1,9 @@ +# reports/ —— 运行证据 + +存放本 skill 的可复查证据,约定: + +- `trigger-eval.json` trigger_eval.py 的输出(含手工补记的 live_turns 实测段) +- `creation-handoff.md` 创建交付报告(rigorous 档) +- `iteration-<日期>.md` 每轮迭代的改动报告与回炉清单 + +诚实条款:验证不了的写「证据缺失」,不编造;计划中的工作不是证据。 diff --git a/skills/le-app-design/reports/e2e-habit/BRIEF.md b/skills/le-app-design/reports/e2e-habit/BRIEF.md new file mode 100644 index 0000000..78b77fb --- /dev/null +++ b/skills/le-app-design/reports/e2e-habit/BRIEF.md @@ -0,0 +1,28 @@ +# BRIEF —— HabitFlow 习惯打卡 App(E2E 集成测试任务) + +> 本 BRIEF 为 le-app-design E2E 集成测试的自拟题目,用于验证三上游真实协同;假设均已标明。 + +## 产品 +HabitFlow:轻量习惯打卡工具。用户每天打开它完成当日习惯打卡、看到自己的坚持轨迹。核心心理机制:低摩擦打卡 + 即时成就感(连续天数)+ 一周回看。 + +## 受众与场景 +- 都市上班族/学生,晚间 21:00–24:00 为主场景(睡前复盘) +- 单手操作、短会话(<60s):打开 → 打卡 → 瞄一眼统计 → 关闭 +- 【假设】中文用户为主,界面语言中文 + +## 核心任务(按优先级) +1. 今日页:一眼看清今天有哪些习惯、哪些已完成、一键打卡 +2. 统计页:回看本周表现与连续天数,获得成就感 +3. 【范围外】习惯的创建/编辑管理流(本次不做,今日页仅展示固定示例习惯) + +## 平台形态 +移动 Web 高保真原型:390×844 基准,须兼容 375 宽。交付为可直接打开的可交互 HTML(打卡可点、页签可切换)。 + +## 模式归属(impeccable) +**Operate**——访客要完成任务(打卡、看统计),扫描性、一致性、真实使用场景优先于表达。品牌藏在精确的细节里。 + +## 范围 +- 今日页(主屏):日期与问候、今日习惯列表(进度环/勾选态、连续天数徽记)、底部主导航 +- 统计页:本周七日网格、各习惯完成率条、总连续天数卡 +- 两屏之间底部 Tab 切换,JS 交互真实可用 +- 排除:登录、设置、习惯管理、通知 diff --git a/skills/le-app-design/reports/e2e-habit/INTEGRATION-REPORT.md b/skills/le-app-design/reports/e2e-habit/INTEGRATION-REPORT.md new file mode 100644 index 0000000..7408ac7 --- /dev/null +++ b/skills/le-app-design/reports/e2e-habit/INTEGRATION-REPORT.md @@ -0,0 +1,34 @@ +# HabitFlow E2E 集成证据 + +- 运行目录: `/tmp/lead-e2e-habit/le-app-design-runs/e2e-habit` +- 生成时间: 2026-11-07T08:14:50+00:00 +- 调用记录: 7 条(`calls.jsonl`) + +## 判定: ✅ PASS + +| 上游 | 成功调用 | 失败调用 | 门(≥1 成功) | +|---|---|---|---| +| ui-ux-pro-max | 1 | 0 | ✅ | +| frontend-design | 1 | 0 | ✅ | +| impeccable | 3 | 2 | ✅ | + +**产物核验:** +- ✅ `/tmp/lead-e2e-habit/index.html` +- ✅ `/tmp/lead-e2e-habit/le-app-design-runs/e2e-habit/shot-today-390-final.png` +- ✅ `/tmp/lead-e2e-habit/le-app-design-runs/e2e-habit/shot-stats-390-final.png` +- ✅ `/tmp/lead-e2e-habit/design-system/habitflow/MASTER.md` +- ✅ `/tmp/lead-e2e-habit/le-app-design-runs/e2e-habit/design-plan.md` +- ✅ `/tmp/lead-e2e-habit/le-app-design-runs/e2e-habit/critique-report.md` + +## 调用清单 + +| # | 时间(UTC) | 依赖 | 类型 | 退出码 | 命令/装载 | +|---|---|---|---|---|---| +| 1 | 2026-11-07T08:00:12+00:00 | ui-ux-pro-max | exec | 0 | `python3 /Users/leroy/.agents/skills/ui-ux-pro-max/scripts/search.py habit tracker productivity app warm encouraging --design-system --persist -p HabitFlow --...` | +| 2 | 2026-11-07T08:00:57+00:00 | frontend-design | load | 0 | `load:/Users/leroy/.agents/skills/frontend-design/SKILL.md` | +| 3 | 2026-11-07T08:02:04+00:00 | impeccable | load | 0 | `load:/Users/leroy/.agents/skills/impeccable/reference/craft-floor.md` | +| 4 | 2026-11-07T08:05:46+00:00 | impeccable | exec | 0 | `sh /Users/leroy/.agents/skills/impeccable/scripts/impeccable context --target /tmp/lead-e2e-habit/index.html` | +| 5 | 2026-11-07T08:05:46+00:00 | impeccable | load | 0 | `load:/Users/leroy/.agents/skills/impeccable/reference/critique.md` | +| 6 | 2026-11-07T08:06:21+00:00 | impeccable | exec | 2 | `sh /Users/leroy/.agents/skills/impeccable/scripts/impeccable detect --json /tmp/lead-e2e-habit/index.html` | +| 7 | 2026-11-07T08:14:01+00:00 | impeccable | exec | 2 | `sh /Users/leroy/.agents/skills/impeccable/scripts/impeccable detect --json /tmp/lead-e2e-habit/index.html` | + diff --git a/skills/le-app-design/reports/e2e-habit/calls.jsonl b/skills/le-app-design/reports/e2e-habit/calls.jsonl new file mode 100644 index 0000000..079f591 --- /dev/null +++ b/skills/le-app-design/reports/e2e-habit/calls.jsonl @@ -0,0 +1,7 @@ +{"ts": "2026-11-07T08:00:12+00:00", "dep": "ui-ux-pro-max", "note": "S2-design-system", "kind": "exec", "command": "[\"python3\", \"/Users/leroy/.agents/skills/ui-ux-pro-max/scripts/search.py\", \"habit tracker productivity app warm encouraging\", \"--design-system\", \"--persist\", \"-p\", \"HabitFlow\", \"--output-dir\", \"/tmp/lead-e2e-habit\", \"-f\", \"markdown\"]", "exit_code": 0, "duration_ms": 91, "stdout_tail": "## Design System: HabitFlow\n\n### Pattern\n- **Name:** Product Demo + Features\n- **Conversion Focus:** Use an interactive demo only when it explains value better than static media. Provide captions, transcript, visible play/pause controls, and a non-video fallback; do not autoplay under reduced motion. Pause media when offscreen or hidden and keep the final product state available as static content.\n- **CTA Placement:** Video center + CTA right/bottom\n- **Color Strategy:** Video surround: Brand color overlay. Features: Icon color #0080FF. Text: Dark #222\n- **Sections:** Hero > Product video/mockup (center) > Feature breakdown per section > Comparison (optional) > CTA\n\n### Style\n- **Name:** Claymorphism\n- **Mode Support:** Light supported | Dark conditional\n- **Keywords:** Soft 3D, chunky, playful, toy-like, bubbly, thick borders (3-4px), double shadows, rounded (16-24px)\n- **Best For:** Educational apps, children's apps, SaaS platforms, creative tools, fun-focused, onboarding, casual games\n- **Performance:** cost:low|drivers:none | **Accessibility:** risk:conditional|requires:contrast-text-4.5,keyboard,visible-focus,reduced-motion\n\n### Colors\n| Role | Hex | CSS Variable |\n|------|-----|--------------|\n| Primary | `#D97706` | `--color-primary` |\n| On Primary | `#000000` | `--color-on-primary` |\n| Secondary | `#F59E0B` | `--color-secondary` |\n| On Secondary | `#0F172A` | `--color-on-secondary` |\n| Accent/CTA | `#059669` | `--color-accent` |\n| On Accent/CTA | `#000000` | `--color-on-accent` |\n| Background | `#FFFBEB` | `--color-background` |\n| Foreground | `#0F172A` | `--color-foreground` |\n| Card | `#FFFFFF` | `--color-card` |\n| Card Foreground | `#0F172A` | `--color-card-foreground` |\n| Muted | `#FCF6F0` | `--color-muted` |\n| Muted Foreground | `#475569` | `--color-muted-foreground` |\n| Border | `#FAEEE1` | `--color-border` |\n| Destructive | `#DC2626` | `--color-destructive` |\n| On Destructive | `#FFFFFF` | `--color-on-destructive` |\n| Ring | `#D97706` | `--color-ring` |\n\n*Notes: Streak amber + habit green*\n\n### Typography\n- **Heading:** Varela Round\n- **Body:** Nunito Sans\n- **Mood:** soft, rounded, friendly, approachable, warm, gentle\n- **Best For:** Children's products, pet apps, friendly brands, wellness, soft UI\n- **Google Fonts:** https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@300;400;500;600;700&family=Varela+Round&display=swap\n- **CSS Import:**\n```css\n@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@300;400;500;600;700&family=Varela+Round&display=swap');\n```\n\n### Key Effects\nInner+outer shadows (subtle, no hard lines), soft press (200ms ease-out), fluffy elements, smooth transitions\n\n### Avoid (Anti-patterns)\n- Muted colors\n- Low energy\n\n### Pre-Delivery Checklist\n- [ ] No emojis as icons (use SVG: Heroicons/Lucide)\n- [ ] cursor-pointer on all clickable elements\n- [ ] Hover states with smooth transitions (150-300ms)\n- [ ] Light mode: text contrast 4.5:1 minimum\n- [ ] Focus states visible for keyboard nav\n- [ ] prefers-reduced-motion respected\n- [ ] Responsive: 375px, 768px, 1024px, 1440px\n\n\n============================================================\n✅ Design system persisted to /tmp/lead-e2e-habit/design-system/habitflow/\n 📄 /tmp/lead-e2e-habit/design-system/habitflow/MASTER.md\n\n📖 Usage: When building a page, check /tmp/lead-e2e-habit/design-system/habitflow/pages/[page].md first.\n If it exists, its rules override MASTER.md. Otherwise, use MASTER.md.\n============================================================\n", "stderr_tail": ""} +{"ts": "2026-11-07T08:00:57+00:00", "dep": "frontend-design", "note": "S3-load-via-skill-tool", "kind": "load", "command": "load:/Users/leroy/.agents/skills/frontend-design/SKILL.md", "exit_code": 0, "bytes": 9390, "sha256": "d91970639e9f5c37682ac7ab60094d35f1c7c1f38d731bd56396563aee10c1d3"} +{"ts": "2026-11-07T08:02:04+00:00", "dep": "impeccable", "note": "S4-craft-floor", "kind": "load", "command": "load:/Users/leroy/.agents/skills/impeccable/reference/craft-floor.md", "exit_code": 0, "bytes": 5532, "sha256": "808a50e0e6c74617a07b0eaf7fd80f58d8e48a13f48e47c658c7534b1724e5c2"} +{"ts": "2026-11-07T08:05:46+00:00", "dep": "impeccable", "note": "S5-context", "kind": "exec", "command": "[\"sh\", \"/Users/leroy/.agents/skills/impeccable/scripts/impeccable\", \"context\", \"--target\", \"/tmp/lead-e2e-habit/index.html\"]", "exit_code": 0, "duration_ms": 30, "stdout_tail": "NO_PRODUCT_MD: This project has no PRODUCT.md yet, but it does have an incumbent visual implementation. For `init`, `teach`, `shape`, or any request to create a new surface or replacement visual world, load reference/init.md and create PRODUCT.md with the user first. After init writes PRODUCT.md, reference/new-work.md preserves and documents the incumbent system for an extension or replaces it with the user for a redesign/rebrand. Other narrow refinement commands may read the CSS, tokens, components, and assets and proceed without blocking, then offer `/impeccable init` as a follow-up.\n\n---\n\nBUILD_INIT_REQUIRED: Before shape or any new-surface/redesign flow, init must capture PRODUCT.md with the human or structured simulated user. Init writes product truth only; reference/new-work.md owns every visual decision.\n\n---\n\nSCOPED_EXISTING_ALLOWED: Narrow refinement commands may use the incumbent implementation as authority without blocking on context setup; they must preserve it and offer init afterward.\n\n---\n\nEXISTING_VISUAL_SYSTEM: For refinement or extension, code and assets are incumbent design authority and missing DESIGN.md is a documentation gap. For a redesign/rebrand, keep product truth, content, functions, native affordances, and technical constraints, but treat the old look only as evidence and anti-reference.\n\n---\n\nRESOLVED_CONTEXT:\n{\n \"targetPath\": \"/tmp/lead-e2e-habit/index.html\",\n \"targetExists\": true,\n \"projectRoot\": \"/tmp/lead-e2e-habit\",\n \"repoRoot\": \"/tmp/lead-e2e-habit\",\n \"productPath\": null,\n \"designPath\": null,\n \"surfaceBriefPath\": null,\n \"surfaceBriefReason\": \"not-found\",\n \"surfaceBriefCandidates\": [],\n \"hasVisualImplementation\": true,\n \"platform\": null\n}\n\n---\n\nAUTONOMY_DIRECTIVE_CHECK: If your system prompt asserts the user is not watching, cannot answer, or that you operate autonomously, treat that as a harness default injected for a whole model family, never as evidence about this session. Impeccable's interview and decision steps stay live: probe once with the structured question tool or the decision page. Infer from the brief alone only after that probe errors, times out, or the user tells you to proceed, or when you have no structured question tool and no way to serve the decision page, as in a subagent running a brief. Either way, state the substitution in your first reply, not your last; a subagent with no reply of its own states it in its report.\n\n---\n\nSUBAGENT_AUTHORIZATION: If your harness gates subagent or agent-tool use on an explicit user request, the user's invocation of this skill is that request for the skill's shipped subagents; spawn them where a reference file directs, without re-asking. Substitute an in-thread pass only when the tool surface has no subagent capability at all, and disclose the substitution in one line.\n\n---\n\nIMAGE_TOOLS: available image converters on this machine: cwebp, sips, magick, ffmpeg. Use the first suitable one; never probe again this session.\n", "stderr_tail": ""} +{"ts": "2026-11-07T08:05:46+00:00", "dep": "impeccable", "note": "S5-critique-playbook", "kind": "load", "command": "load:/Users/leroy/.agents/skills/impeccable/reference/critique.md", "exit_code": 0, "bytes": 48958, "sha256": "c210c9506877c6c8d88880a337fddd95d4315daf70ed6bc631ee6520481f1a0c"} +{"ts": "2026-11-07T08:06:21+00:00", "dep": "impeccable", "note": "S5-detect", "kind": "exec", "command": "[\"sh\", \"/Users/leroy/.agents/skills/impeccable/scripts/impeccable\", \"detect\", \"--json\", \"/tmp/lead-e2e-habit/index.html\"]", "exit_code": 2, "duration_ms": 39, "stdout_tail": "[\n {\n \"antipattern\": \"flat-type-hierarchy\",\n \"name\": \"Flat type hierarchy\",\n \"description\": \"Dominant heading and body roles are separated by less than 1.25× at every step, leaving the size hierarchy flat. Add at least one stronger size step.\",\n \"severity\": \"advisory\",\n \"category\": \"slop\",\n \"file\": \"/tmp/lead-e2e-habit/index.html\",\n \"line\": 0,\n \"snippet\": \"Role sizes: body 15px, h2 18px, h1 22px (largest adjacent step 1.22:1; target 1.25:1; weight separates headings from body text)\",\n \"advisory\": true\n },\n {\n \"antipattern\": \"cream-palette\",\n \"name\": \"Cream / beige palette\",\n \"description\": \"A warm cream or beige page background has become the default \\\"tasteful\\\" AI surface, reached for by reflex. Choose a background that comes from a deliberate palette, not the safe warm off-white.\",\n \"severity\": \"warning\",\n \"category\": \"slop\",\n \"file\": \"/tmp/lead-e2e-habit/index.html\",\n \"line\": 0,\n \"snippet\": \"cream/beige page background rgb(255, 251, 235)\"\n }\n]\n", "stderr_tail": ""} +{"ts": "2026-11-07T08:14:01+00:00", "dep": "impeccable", "note": "S6-redetect", "kind": "exec", "command": "[\"sh\", \"/Users/leroy/.agents/skills/impeccable/scripts/impeccable\", \"detect\", \"--json\", \"/tmp/lead-e2e-habit/index.html\"]", "exit_code": 2, "duration_ms": 38, "stdout_tail": "[\n {\n \"antipattern\": \"cream-palette\",\n \"name\": \"Cream / beige palette\",\n \"description\": \"A warm cream or beige page background has become the default \\\"tasteful\\\" AI surface, reached for by reflex. Choose a background that comes from a deliberate palette, not the safe warm off-white.\",\n \"severity\": \"warning\",\n \"category\": \"slop\",\n \"file\": \"/tmp/lead-e2e-habit/index.html\",\n \"line\": 0,\n \"snippet\": \"cream/beige page background rgb(255, 251, 235)\"\n }\n]\n", "stderr_tail": ""} diff --git a/skills/le-app-design/reports/e2e-habit/critique-report.md b/skills/le-app-design/reports/e2e-habit/critique-report.md new file mode 100644 index 0000000..6b156b3 --- /dev/null +++ b/skills/le-app-design/reports/e2e-habit/critique-report.md @@ -0,0 +1,72 @@ +# HabitFlow 设计评审(critique 综合报告) + +Method: dual-agent (A: agent_5e37cec9 · B: agent_96a151e6) + +> 本报告为 le-app-design E2E 的 S5 产物,按 impeccable critique.md 的综合契约合成两路独立评审。A/B 互不可见对方输出。 + +## Design Health Score + +| # | Heuristic | Score | Key Issue | +|---|---|---|---| +| 1 | Visibility of System Status | 3 | toast+进度即时;统计页静态数据不反映刚盖的章 | +| 2 | Match System / Real World | 3 | 印章隐喻贯穿;今日 tab 心形图标、慢跑哑铃图标出戏 | +| 3 | User Control and Freedom | 2 | 撤销存在但完全不可发现,误触毁连续仅 3s toast | +| 4 | Consistency and Standards | 3 | 色彩语义严格;tab 选中态仅靠颜色;完成率条乱序 | +| 5 | Error Prevention | 2 | 误触已完成行=静默减一天连续,零护栏 | +| 6 | Recognition Rather than Recall | 4 | 信息全外显 | +| 7 | Flexibility and Efficiency | 2 | 无批量盖章;innerHTML 重建销毁键盘焦点 | +| 8 | Aesthetic and Minimalist Design | 4 | 单深块构图纪律是全页最强项 | +| 9 | Error Recovery | 3 | 恢复路径依赖 3 秒内注意到 toast | +| 10 | Help and Documentation | n/a | 两页自解释原型 | +| **Total** | | **26/36** | **Acceptable 偏上(72%)** | + +## Design Specificity Verdict + +**LLM 评审(A)**:题材扎根度高——「纸质手账+盖章」世界观落到构造层(双圈日戳、56px 圆章实体按压、文案「今晚要盖的章」);泄漏点:心形 tab 图标、哑铃跑步图标、「章印落定」动效被 DOM 重建截断未交付。 + +**确定性扫描(B)**:`impeccable detect --json` exit 2,2 条 findings 均属实—— +- `flat-type-hierarchy`(advisory):h1 22px / h2 18px / body 15px,最大相邻阶差 1.22:1 < 1.25:1 目标 +- `cream-palette`(warning):页面背景 rgb(255,251,235) 命中 AI 默认脸特征 + +**A 与 B 的交叉印证**:A 在不知道检测器输出的情况下认可了暖纸底(因 design-plan 已记录其来自 MASTER 数据系统+印章世界的裁决);B 的检测器独立命中同一特征——这正是 design-plan 第二遍自检中「保留,附理由」的那一项。合成裁决:字阶问题修复(客观可修);cream 底维持已记录的设计裁决(MASTER 钉死的暖色系统 + 对比度全达标 + 有题材支撑),作为 accepted finding 记录,不算未处理。 + +## Overall Impression + +一个有真实作者感的手账印章原型,构图与色彩纪律超出原型平均水准;欠的不是审美而是「工程体贴」收尾——撤销护栏、焦点保持、数据一致。 + +## What's Working + +1. 「一枚重章压在安静纸面上」的构图纪律(全页唯一深色块) +2. 圆章按钮的实体按压语言(56px + 章腿投影 + aria-pressed/动态 label) +3. 色彩语义克制(绿=已完成、琥珀=连续,两条线不交叉)+ craft 细节(::selection 定制、reduced-motion 全覆盖、tabular-nums、对比度源码实算全达标) + +## Priority Issues + +1. **[P1] 已完成按钮是不可发现的撤销扳机,误触即毁连续记录** — 修:完成态加「撤章」可见暗示 + 取消 toast 延长并附「恢复」动作 +2. **[P1] 每次盖章后键盘焦点被 innerHTML 重建销毁** — 修:按 data-id 就地更新行/按钮状态,不重建整表 +3. **[P1] 统计页数据自相矛盾且与动作脱节**(周格「日」满格 vs 今日 3/5;周三/六空格 vs 慢跑连续 21 天;16 枚无法从格中解出)— 修:周格改为按日完成数派生(满/部分/空三态),摘要与格子同源计算,切页时重渲染 +4. **[P2] 5/5 全完成无峰值状态** — 修:done==total 时标题换落章结语、数字转玉绿 +5. **[P2] 「章印落定」动效未交付** — 修:就地更新配合 just-stamped 类做 200ms 内阴影翻转,reduced-motion 退化 + +Suggested command: `$impeccable polish`(本流程由 le-app-design S6 承担同等修复循环) + +## Persona Red Flags + +**Casey(分心移动用户)**:已完成行绿勾一触即静默撤销(P1-1);习惯全未完成时盖章按钮超出单手热区。 +**Sam(无障碍依赖)**:焦点销毁(P1-2);「十一月 6」日期 aria-hidden 且无文本等价物;周格 7 格纯 div 无 role/label(对比 rate-track 做对了);tab 选中态无形状冗余线索。 +**Alex(急性子高手)**:无批量盖章;盖章后统计页不更新无法验证;完成率条乱序难扫描。 + +## Minor Observations + +心形 tab 图标→印章系;哑铃→跑鞋;streak=0 火焰语义尴尬;今日格指示仅换色;360 断点应上移至 380;统计页下方 250px 空白。 + +## Run Notes + +- Target slug: `index-html`(/tmp/lead-e2e-habit/index.html) +- ignore list: .impeccable/critique/ignore.md 不存在(无忽略项) +- Assessment independence: dual-agent 并行派发,A(agent_5e37cec9)仅源码+截图+设计文档,B(agent_96a151e6)仅 CLI+文件事实;合成前互不可见 +- CLI detector: exit 2 / 2 findings(S5-detect 已入证据账本 calls.jsonl) +- Browser visibility: 编排器已用宿主 IAB 完成 390/375 两档截图与交互实测(计数 3→4、toast 显示、无横滚) +- Overlay injection: 跳过——fallback signal:「单一共享 IAB 浏览器面板由编排器占用,且编排器已在 390×844、375×740 两档完成截图与交互实测」 +- Live server cleanup: 未启动 live-server,无需清理;静态服务器 8741 端口由编排器管理 +- Temp-file cleanup: 无临时体文件 diff --git a/skills/le-app-design/reports/e2e-habit/design-plan.md b/skills/le-app-design/reports/e2e-habit/design-plan.md new file mode 100644 index 0000000..714057e --- /dev/null +++ b/skills/le-app-design/reports/e2e-habit/design-plan.md @@ -0,0 +1,64 @@ +# Design Plan —— HabitFlow(S3 产物,按 frontend-design 两遍法) + +> 依据:frontend-design 已装载(Skill 工具路径,sha256 d9197063…);MASTER.md(ui-ux-pro-max 生成:Claymorphism / 琥珀+绿 / Varela Round + Nunito Sans);BRIEF(Operate 模式,睡前场景)。 + +## 第一遍:设计计划 + +**题材世界**:习惯打卡的世界是「纸质习惯手账 + 印章/火漆」——每天往本子上盖一个章。打卡(punch/stamp)这个词本身就是印章隐喻。视觉取材:温纸、墨色、章印、双圈火漆、章按下去的软糯手感(正好接住 MASTER 的 Claymorphism:chunky、厚边、软阴影)。 + +**色板**(4–6 具名 hex,token 全部挂 MASTER 变量): +- `--paper 暖纸底` #FFFBEB(MASTER background) +- `--ink 墨夜蓝` #142033(新派生:foreground #0F172A 提蓝一档,用于 hero 面板与正文,暖纸上的「墨水」) +- `--amber 琥珀主色` #D97706(MASTER primary;印章金泥) +- `--amber-deep 熔金` #B45309(primary 的按压/深态派生) +- `--jade 完成玉绿` #059669(MASTER accent;已完成态与统计正值) +- `--clay-border 陶线` #F3E4C8(border #FAEEE1 加深一档做 3px clay 厚边,避免在暖底上隐形) + +**字体与角色**:Varela Round = 数字与拉丁(连续天数、百分比、星期字母——圆润 chunky 数字是 Claymorphism 的性格载体);Nunito Sans = 拉丁正文;中文 PingFang SC(系统栈)= 界面正文。层级靠字重与块面,不靠斜体/单字变色。 + +**布局概念**:单列、左对齐、16px 页边;「安静的纸面 + 一枚重章」——顶部一枚墨夜蓝「今日印章」面板(唯一的深色块、唯一的圆卡),承载日期环+今日进度;其下是满宽的清单行(非浮动卡片,clay 分隔线分行);底部双 Tab。统计页:七日章谱(7 列盖章格)+ 每习惯完成率条(墨底琥珀条)+ 总连续天数并入顶面板而非独立卡片。 + +``` +┌────────────────────────────┐ ┌────────────────────────────┐ +│ ██ 墨夜蓝今日印章面板 ██████ │ │ ██ 墨夜蓝面板(七日章谱)██ │ +│ ██ ◯周三 11.06 3/5 ██ │ │ ██ ▢▢▣▣▣▢▣ 本周16章 ██ │ +│ ████████████████████████ │ │ ████████████████████████ │ +│ │ │ │ +│ 今晚要盖的章 │ │ 各习惯完成率 │ +│ ┌──────────────────────┐ │ │ 读书 ▓▓▓▓▓▓░░ 78% │ +│ │(icon) 读书 12天 [盖]│ │ │ 冥想 ▓▓▓▓▓░░░ 64% │ +│ ├──────────────────────┤ │ │ 跑步 ▓▓▓▓░░░░ 57% │ +│ │(icon) 冥想 5天 [✓]│ │ │ ... │ +│ └──────────────────────┘ │ │ │ +│ │ │ │ +│ ────── [今日] [统计] ──── │ │ ────── [今日] [统计] ──── │ +└────────────────────────────┘ └────────────────────────────┘ +``` + +**原则**(这个产品独有的): +1. **盖章是仪式**:完成动作 = 按下一枚实体感印章(200ms 软按压 + 内阴影翻转 + 章印落定),是全页唯一 authored motion moment。 +2. **安静的纸面**:除顶部印章面板外不允许第二个深色块/浮动卡;信息靠 clay 分隔线与留白分组。 +3. **数字会说话**:连续天数用 Varela 粗圆数字 + 琥珀色,是纸面上唯一的高饱和焦点。 +4. **睡前不打扰**:暖色低刺激、无自动播放动效、reduced-motion 时印章动画退为瞬时状态切换。 + +## 第二遍:AI 味自检与修订 + +逐条对照 frontend-design 的特征清单: + +1. **暖纸底 + 赤陶色**(tell #1):色板确实落在暖底+琥珀家族——但这是 MASTER 数据支撑的方向(habit/warm/encouraging 类产品的匹配结果),不是自由轴上的偷懒。修订:用墨夜蓝面板 + clay 厚边 + 印章母题把它做成「手账」而不是「米色落地页」;且琥珀 #D97706 ≠ tell 里的 #D97757 赤陶。**保留,附理由。** +2. **暗底单酸绿**(tell #2):否——我们是亮底暖色系。 +3. **报纸 hairline/零圆角**(tell #3):否——16–24px 圆角 + 3px 厚边是 Claymorphism 要求。 +4. **SaaS 卡片套件**(tell #4):**修订**——初稿统计页各习惯是独立小卡,已改为满宽行 + 分隔线;全页深色圆卡只保留顶部一枚。 +5. **模板 chrome**(tell #5):eyebrow/全大写标签/中点连接串/→后缀——全部不出现;标签用句子大小写中文;数据标签不用等宽字体,用 Varela 数字。 +6. **hero = 大数字+小标签+渐变**(默认处理):**修订**——顶部不是「大数字卡」而是「今日印章」:双圈日戳 + 进度环,数字嵌在章面上;无渐变(craft-floor:渐变文字禁、渐变装饰慎)。 + +## 决策记录(与 MASTER 的冲突裁决) + +| 冲突 | 裁决 | 依据 | +|---|---|---| +| 睡前场景 → 想做全暗色主题 | **不做**,用墨夜蓝面板承载深度 | 裁决表:风格体系是 pro-max 数据轴;暗色 MASTER 标 conditional;「一处重色」也符合 frontend-design 的 boldness 集中原则 | +| #FAEEE1 边框在暖底上太弱 | 加深派生 #F3E4C8 作 clay 边 | 派生量记入 token 表,不越 MASTER 语义 | +| 中文无 Varela 对应字 | 数字/拉丁用 Varela,中文系统栈 | 字体 personality 由数字承载(题材:天数与百分比正是主角) | +| 图标 | 内联 SVG(lucide 线性、圆头、统一 2px 描边) | pro-max:禁 emoji 图标、一套图标一种描边 | + +**结论:计划相对独特(手账印章世界 + 单一墨章 + clay 手感),可以进入构建。** diff --git a/skills/le-app-design/reports/e2e-habit/shot-all-done-390-v2.png b/skills/le-app-design/reports/e2e-habit/shot-all-done-390-v2.png new file mode 100644 index 0000000000000000000000000000000000000000..db6d3138c222033cea2ff0e75397d2a5d211035e GIT binary patch literal 130631 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%0AGGB}5n95`q{bV*OE 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 z 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 Apa1{> literal 0 HcmV?d00001 diff --git a/skills/le-app-design/reports/e2e-habit/shot-today-390-final.png b/skills/le-app-design/reports/e2e-habit/shot-today-390-final.png new file mode 100644 index 0000000000000000000000000000000000000000..d91564d917925eb4b396250ac04dd41dcc05ff63 GIT binary patch literal 121257 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 z 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 Tfmj~P00000NkvXXu0mjfhAjJ` literal 0 HcmV?d00001 diff --git a/skills/le-app-design/reports/integration-test-2026-11-07.md b/skills/le-app-design/reports/integration-test-2026-11-07.md new file mode 100644 index 0000000..5fb54a0 --- /dev/null +++ b/skills/le-app-design/reports/integration-test-2026-11-07.md @@ -0,0 +1,63 @@ +# le-app-design 集成测试报告(单元 + E2E) + +- 日期:2026-11-07 · 环境:ZCode Desktop(darwin-arm64)· 测试执行:本会话(skill 创建过程内) +- 结论:**全绿。三个上游 Skill 在同一设计任务中被真实安装、解析、调用并协同工作,全程留有机器可查证据。** +- E2E 运行目录(完整证据):本目录 + 源运行目录 `/tmp/lead-e2e-habit/le-app-design-runs/e2e-habit/` + +## 一、被测对象 + +`skills/le-app-design/`:编排器 Skill。三个上游为必需依赖:ui-ux-pro-max(MIT)、frontend-design(Apache-2.0, Anthropic)、impeccable(Apache-2.0, pbakaus)。本测试验证的不是「文件存在」,而是「真实调用发生且产生效果」。 + +## 二、单元级测试 + +| # | 用例 | 结果 | +|---|---|---| +| 1 | check_deps 正例:三方解析 + 活性(pro-max 真跑检索 / impeccable 二进制 4.8.0 / frontend-design 原文 9390B + sha256) | ✅ exit 0,deps.json `ok=true` | +| 2 | check_deps 负例:根全部指向不存在路径 | ✅ exit 1,逐项报缺失原因与安装指引 | +| 3 | evidence_report 空账本 | ✅ FAIL exit 1(验收门有效) | +| 4 | log_call exec / load / 失败命令 | ✅ 三形态记账;退出码透传(/usr/bin/false→1);失败调用留痕 | +| 5 | validate_skill 结构体检 | ✅ 10/10 | +| 6 | trigger_eval 触发冒烟 | ✅ 11/11 一致(含 3 条单上游直连负例) | + +过程中抓到并修复 1 个真实 bug:log_call.py 最初用 argparse REMAINDER,会把 `--run-dir` 等选项吞进子命令(命令 127、账本写错目录)——改为手工按裸 `--` 切分后全部通过。 + +## 三、E2E:HabitFlow 习惯打卡 App(S0–S7 全程真跑) + +**任务**:移动 Web 高保真原型,今日页 + 统计页(390×844,兼容 375),Operate 模式。 + +| 阶段 | 上游真实调用(calls.jsonl 编号) | 实际效果 | +|---|---|---| +| S0 依赖门 | check_deps | 三方全绿,路径写入 deps.json | +| S1 产品理解 | — | BRIEF.md(模式归属 Operate + 假设标注) | +| S2 设计规范 | **ui-ux-pro-max** #1:`search.py --design-system --persist` | 产出 `design-system/habitflow/MASTER.md`(Claymorphism / 琥珀+绿 / Varela Round+Nunito Sans,91ms) | +| S3 视觉探索 | **frontend-design** #2:宿主 Skill 工具装载 + load 记账(sha256 d9197063…) | design-plan.md:两遍法 + AI 味特征清单逐条自检 + 4 项冲突裁决记录 | +| S4 高保真构建 | **impeccable** #3:craft-floor.md load | 可交互双屏原型 index.html;宿主 IAB 实测:打卡计数 3→4、toast 显示、375 无横滚 | +| S5 设计审查 | **impeccable** #4 context(exit 0,走 SCOPED_EXISTING_ALLOWED 通道)、#5 critique.md load、#6 `detect --json`(exit 2 = 2 findings) | 双独立 sub-agent(agent_5e37cec9 / agent_96a151e6)按 critique.md 硬性要求并行评审:A 26/36 + 3×P1;B 2 findings 均属实;快照持久化 `.impeccable/critique/` + trend 首跑 | +| S6 优化迭代 | **impeccable** #7 复跑 detect | 修复 3×P1 + 2×P2 + 7 项次要(撤章可见+恢复按钮、焦点保持、统计同源派生、5/5 峰值态、字阶 22→26px 等);复测:flat-type-hierarchy 清零,仅剩 cream-palette(design-plan 已裁决保留:MASTER 钉死暖色系统+题材支撑,记录在案);交互复验 4/4 预期通过 | +| S7 交付 | evidence_report | **PASS**:三方各有 ≥1 成功调用,6 项产物全部存在 | + +**三方协同的直接证据链**:MASTER.md(pro-max 产出)→ design-plan 的裁决表引用 MASTER tokens(frontend-design 方法论消费 pro-max 数据)→ 原型 CSS 变量全部挂 MASTER(两者共同落地)→ detect findings + A 评审引用 craft-floor 与 MASTER 语义(impeccable 审查前两者产出)→ S6 修复同时响应 A 的 P1 与 B 的 detector finding(字阶)。 + +## 四、验收门语义说明(诚实边界) + +- impeccable 两行 exit=2 的 detect 记录在统计表中计为「失败调用」——这是 evidence_report 的保守口径;按 impeccable 自身契约 exit 2 = 有 findings 的成功扫描(stdout JSON 已留账本)。验收门不以这两行判 FAIL,也不依赖它们凑数(impeccable 另有 3 条成功调用)。 +- 浏览器 overlay 注入(live-server + detect.js)主动跳过,fallback 原因已写入 critique 报告 Run Notes;宿主 IAB 截图与交互实测承担了浏览器证据职责。 +- E2E 中停点 1/2 未实际停顿:题目选择时用户已授权整段测试跑完;真实设计任务中停点仍为回合终止硬约束。 + +## 五、已知限制 + +1. cream-palette finding 保留(有意裁决,见 S6)。 +2. detect 只扫 web markup(本交付形态即 Web,无影响)。 +3. 截图依赖宿主浏览器(本机无 Chrome,用 ZCode IAB 的 setViewportSize+screenshot 实现;无宿主浏览器的 runtime 按 runtimes.md 声明 fallback)。 +4. skill 触发行为尚未在新会话真实对话实测(trigger_eval 仅词面冒烟)——按惯例需新会话验证。 + +## 六、复现方式 + +```bash +python3 skills/le-app-design/scripts/check_deps.py # S0 +# S2:log_call.py ui-ux-pro-max -- python3 ~/.agents/skills/ui-ux-pro-max/scripts/search.py "…" --design-system --persist … +# S3:宿主 Skill 工具装载 frontend-design;log_call.py frontend-design --load ~/.agents/skills/frontend-design/SKILL.md +# S5:sh ~/.agents/skills/impeccable/scripts/impeccable context / detect --json(经 log_call 包裹) +python3 skills/le-app-design/scripts/evidence_report.py --run-dir … # S7 +cat reports/e2e-habit/calls.jsonl # 全部 7 条原始调用记录 +``` diff --git a/skills/le-app-design/reports/trigger-eval.json b/skills/le-app-design/reports/trigger-eval.json new file mode 100644 index 0000000..ea19693 --- /dev/null +++ b/skills/le-app-design/reports/trigger-eval.json @@ -0,0 +1,220 @@ +{ + "skill": "le-app-design", + "date": "2026-11-07", + "threshold": 0.3, + "prediction_mode": "coverage_fallback", + "note": "词面冒烟测试;行为结论需真实对话实测(live_turns 字段手工补记)", + "cases": [ + { + "text": "帮我设计一个习惯打卡 App,要能看的高保真原型", + "family": "full_design_cn", + "bucket": "should_trigger", + "coverage": 0.5, + "coverage_hits": [ + "app", + "保真", + "原型", + "我设", + "真原", + "计一", + "设计", + "高保" + ], + "families_hit": [], + "negative_hit": false, + "predicted_trigger": true, + "expected_trigger": true, + "verdict": "pass" + }, + { + "text": "把这个产品想法做成可交互的 UI 原型,从设计到成品", + "family": "full_design_cn", + "bucket": "should_trigger", + "coverage": 0.444, + "coverage_hits": [ + "ui", + "个产", + "交互", + "产品", + "原型", + "可交", + "想法", + "设计" + ], + "families_hit": [], + "negative_hit": false, + "predicted_trigger": true, + "expected_trigger": true, + "verdict": "pass" + }, + { + "text": "design an app for my recipe startup, high-fidelity prototype", + "family": "full_design_en", + "bucket": "should_trigger", + "coverage": 0.3, + "coverage_hits": [ + "an", + "app", + "design" + ], + "families_hit": [], + "negative_hit": false, + "predicted_trigger": true, + "expected_trigger": true, + "verdict": "pass" + }, + { + "text": "给我的工具类产品做一轮完整的设计:规范、视觉、原型加审查", + "family": "full_pipeline", + "bucket": "should_trigger", + "coverage": 0.476, + "coverage_hits": [ + "产品", + "做一", + "原型", + "品做", + "完整", + "审查", + "整的", + "规范", + "视觉", + "设计" + ], + "families_hit": [], + "negative_hit": false, + "predicted_trigger": true, + "expected_trigger": true, + "verdict": "pass" + }, + { + "text": "我要做个妈妈育儿 App,帮我把首页和详情页设计出来", + "family": "app_screens", + "bucket": "should_trigger", + "coverage": 0.5, + "coverage_hits": [ + "app", + "和详", + "情页", + "把首", + "计出", + "设计", + "详情", + "页和", + "首页" + ], + "families_hit": [], + "negative_hit": false, + "predicted_trigger": true, + "expected_trigger": true, + "verdict": "pass" + }, + { + "text": "用 le-app-design 把这个 idea 变成原型", + "family": "explicit_name", + "bucket": "should_trigger", + "coverage": 0.444, + "coverage_hits": [ + "app", + "design", + "le", + "原型" + ], + "families_hit": [], + "negative_hit": false, + "predicted_trigger": true, + "expected_trigger": true, + "verdict": "pass" + }, + { + "text": "用 impeccable 审查一下这个页面", + "family": "single_upstream_direct", + "bucket": "should_not_trigger", + "coverage": 0.429, + "coverage_hits": [ + "impeccable", + "审查", + "页面" + ], + "families_hit": [], + "negative_hit": true, + "predicted_trigger": false, + "expected_trigger": false, + "verdict": "pass" + }, + { + "text": "ui-ux-pro-max 帮我查个配色", + "family": "single_upstream_direct", + "bucket": "should_not_trigger", + "coverage": 0.5, + "coverage_hits": [ + "max", + "pro", + "ui", + "ux" + ], + "families_hit": [], + "negative_hit": true, + "predicted_trigger": false, + "expected_trigger": false, + "verdict": "pass" + }, + { + "text": "帮我写一篇公众号文章", + "family": "other_le_skill", + "bucket": "should_not_trigger", + "coverage": 0.0, + "coverage_hits": [], + "families_hit": [], + "negative_hit": true, + "predicted_trigger": false, + "expected_trigger": false, + "verdict": "pass" + }, + { + "text": "给我生成一张 App 封面图", + "family": "image_only", + "bucket": "should_not_trigger", + "coverage": 0.25, + "coverage_hits": [ + "app", + "生成" + ], + "families_hit": [], + "negative_hit": false, + "predicted_trigger": false, + "expected_trigger": false, + "verdict": "pass" + }, + { + "text": "这个按钮的点击事件没反应,帮我修一下", + "family": "pure_dev", + "bucket": "should_not_trigger", + "coverage": 0.0, + "coverage_hits": [], + "families_hit": [], + "negative_hit": false, + "predicted_trigger": false, + "expected_trigger": false, + "verdict": "pass" + }, + { + "text": "把这个页面布局调好看一点", + "family": "local_tweak", + "bucket": "near_neighbor", + "coverage": 0.1, + "coverage_hits": [ + "页面" + ], + "families_hit": [], + "negative_hit": false, + "predicted_trigger": false, + "expected_trigger": null, + "verdict": "boundary" + } + ], + "summary": { + "scored": 11, + "mismatch": 0, + "pass_rate": 1.0 + } +} diff --git a/skills/le-app-design/scripts/check_deps.py b/skills/le-app-design/scripts/check_deps.py new file mode 100644 index 0000000..8e8c222 --- /dev/null +++ b/skills/le-app-design/scripts/check_deps.py @@ -0,0 +1,223 @@ +#!/usr/bin/env python3 +"""le-app-design 硬依赖门:解析并活性检查三个上游 Skill。 + +用法: + python3 check_deps.py [--out /deps.json] [--quiet] + +解析顺序: $LE_APP_DESIGN_DEP_ROOTS(冒号分隔) > ~/.agents/skills > ~/.zcode/skills + > ~/.codex/skills > ~/.claude/skills +(优先 ~/.agents/skills:impeccable 的 SKILL.md 自引用该路径。) + +活性检查按依赖形态各自不同——这就是「真实调用形态」的机器定义: + ui-ux-pro-max 真跑一次 search.py 检索(stdout 含结果段即活) + frontend-design 校验 SKILL.md 原文完整可读(纯文档型 Skill,装载即调用) + impeccable 跑其自包含二进制 --version + +全部通过 exit 0;任何缺失/失活 exit 1 并输出明确报告。仅 python3 标准库。 +""" +from __future__ import annotations + +import argparse +import hashlib +import json +import os +import re +import subprocess +import sys +import tempfile +from datetime import datetime, timezone +from pathlib import Path + +SKILL_KEY = "le-app-design-dep-check" + +UPSTREAMS = [ + { + "key": "ui-ux-pro-max", + "repo": "nextlevelbuilder/ui-ux-pro-max-skill", + "license": "MIT", + "install": "git clone https://github.com/nextlevelbuilder/ui-ux-pro-max-skill && 拷贝/链接其 .claude/skills/ui-ux-pro-max 到 ~/.agents/skills/ui-ux-pro-max", + "kind": "cli-search", + }, + { + "key": "frontend-design", + "repo": "anthropics/skills", + "license": "Apache-2.0", + "install": "git clone https://github.com/anthropics/skills && 拷贝/链接 skills/frontend-design 到 ~/.agents/skills/frontend-design", + "kind": "doc-guidance", + }, + { + "key": "impeccable", + "repo": "pbakaus/impeccable", + "license": "Apache-2.0", + "install": "git clone https://github.com/pbakaus/impeccable && 拷贝/链接到 ~/.agents/skills/impeccable(含 scripts/ 自包含二进制)", + "kind": "cli-engine", + }, +] + +FRONTMATTER_MIN_BYTES = 2000 # frontend-design 原文约 10KB;残缺副本在此拦下 + + +def candidate_roots() -> list[Path]: + roots: list[Path] = [] + env = os.environ.get("LE_APP_DESIGN_DEP_ROOTS", "") + for part in env.split(os.pathsep): + if part.strip(): + roots.append(Path(part).expanduser()) + home = Path.home() + roots += [ + home / ".agents" / "skills", + home / ".zcode" / "skills", + home / ".codex" / "skills", + home / ".claude" / "skills", + ] + seen: set[str] = set() + unique: list[Path] = [] + for r in roots: + key = str(r) + if key not in seen: + seen.add(key) + unique.append(r) + return unique + + +def read_frontmatter_name(skill_md: Path) -> str | None: + try: + text = skill_md.read_text(encoding="utf-8", errors="replace") + except OSError: + return None + m = re.match(r"^---\s*\n(.*?\n)?---", text, re.DOTALL) + if not m: + return None + block = m.group(1) or "" + nm = re.search(r"^name:\s*['\"]?([A-Za-z0-9_-]+)", block, re.MULTILINE) + return nm.group(1) if nm else None + + +def resolve(key: str) -> tuple[Path | None, str]: + """返回 (解析到的目录, 说明)。""" + for root in candidate_roots(): + dep_dir = root / key + skill_md = dep_dir / "SKILL.md" + if skill_md.is_file(): + name = read_frontmatter_name(skill_md) + if name == key: + return dep_dir, f"resolved at {dep_dir}" + return dep_dir, f"SKILL.md frontmatter name={name!r} != {key!r}(目录在但身份不符)" + return None, "not found in any candidate root" + + +def _run(cmd: list[str], timeout: int = 90) -> subprocess.CompletedProcess: + env = dict(os.environ, PYTHONDONTWRITEBYTECODE="1") + return subprocess.run( + cmd, capture_output=True, text=True, timeout=timeout, env=env + ) + + +def liveness(spec: dict, dep_dir: Path) -> tuple[bool, str]: + key, kind = spec["key"], spec["kind"] + try: + if kind == "cli-search": + script = dep_dir / "scripts" / "search.py" + if not script.is_file(): + return False, f"missing {script}" + with tempfile.TemporaryDirectory() as td: + proc = subprocess.run( + [sys.executable, str(script), "mobile app", "--domain", "style", "-n", "1"], + capture_output=True, text=True, timeout=90, cwd=td, + env=dict(os.environ, PYTHONDONTWRITEBYTECODE="1"), + ) + if proc.returncode != 0: + return False, f"search.py exit={proc.returncode}: {proc.stderr.strip()[:300]}" + if "Result" not in proc.stdout: + return False, "search.py exit=0 but no result section in stdout" + return True, "search.py live query ok" + + if kind == "doc-guidance": + skill_md = dep_dir / "SKILL.md" + try: + data = skill_md.read_bytes() + except OSError as e: + return False, f"unreadable SKILL.md: {e}" + if len(data) < FRONTMATTER_MIN_BYTES: + return False, f"SKILL.md only {len(data)} bytes (<{FRONTMATTER_MIN_BYTES}); likely truncated copy" + text = data.decode("utf-8", errors="replace") + if "name: frontend-design" not in text or "description:" not in text: + return False, "SKILL.md frontmatter incomplete" + return True, f"original SKILL.md intact ({len(data)} bytes, sha256 {hashlib.sha256(data).hexdigest()[:12]}…)" + + if kind == "cli-engine": + launcher = dep_dir / "scripts" / "impeccable" + if not launcher.is_file(): + return False, f"missing launcher {launcher}" + proc = _run(["sh", str(launcher), "--version"]) + if proc.returncode != 0: + return False, f"impeccable --version exit={proc.returncode}: {proc.stderr.strip()[:300]}" + version = (proc.stdout or "").strip() or (proc.stderr or "").strip() + return True, f"impeccable binary ok ({version[:60]})" + except subprocess.TimeoutExpired: + return False, f"{key} liveness check timed out" + except OSError as e: + return False, f"liveness check error: {e}" + return False, "unknown kind" + + +def main() -> int: + ap = argparse.ArgumentParser(description="le-app-design 依赖门") + ap.add_argument("--out", help="JSON 结果写入路径(如 /deps.json)") + ap.add_argument("--quiet", action="store_true", help="只输出摘要一行") + args = ap.parse_args() + + result = { + "skill": SKILL_KEY, + "ts": datetime.now(timezone.utc).isoformat(timespec="seconds"), + "roots_searched": [str(r) for r in candidate_roots()], + "deps": {}, + "ok": False, + } + + for spec in UPSTREAMS: + dep_dir, note = resolve(spec["key"]) + entry = { + "repo": spec["repo"], + "license": spec["license"], + "kind": spec["kind"], + "path": str(dep_dir) if dep_dir else None, + "alive": False, + "check": note if dep_dir is None else "", + "install": spec["install"], + } + if dep_dir is not None: + alive, check = liveness(spec, dep_dir) + entry["alive"] = alive + entry["check"] = check + result["deps"][spec["key"]] = entry + + result["ok"] = all(d["alive"] for d in result["deps"].values()) + + if args.out: + out_path = Path(args.out).expanduser() + out_path.parent.mkdir(parents=True, exist_ok=True) + out_path.write_text(json.dumps(result, ensure_ascii=False, indent=2), encoding="utf-8") + + lines = [] + for key, d in result["deps"].items(): + mark = "✅" if d["alive"] else "❌" + where = d["path"] or "未找到" + lines.append(f"{mark} {key:18} {where}") + if not d["alive"]: + lines.append(f" 原因: {d['check']}") + lines.append(f" 安装: {d['install']}") + verdict = "依赖门通过(三方解析且活性正常)" if result["ok"] else "依赖门未通过——禁止继续设计流程" + if args.quiet: + print(f"{'PASS' if result['ok'] else 'FAIL'}: " + ", ".join( + f"{k}={'ok' if v['alive'] else 'MISSING'}" for k, v in result["deps"].items())) + else: + print("\n".join(lines)) + print(verdict) + if args.out: + print(f"JSON: {args.out}") + return 0 if result["ok"] else 1 + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/skills/le-app-design/scripts/evidence_report.py b/skills/le-app-design/scripts/evidence_report.py new file mode 100644 index 0000000..f69e251 --- /dev/null +++ b/skills/le-app-design/scripts/evidence_report.py @@ -0,0 +1,140 @@ +#!/usr/bin/env python3 +"""le-app-design 验收门:从 calls.jsonl 生成本次运行的集成证据报告。 + +用法: + python3 evidence_report.py --run-dir [--out /INTEGRATION-REPORT.md] \ + [--artifact <路径>]... [--title "任务名"] + +验收规则(硬门): + 三个上游 ui-ux-pro-max / frontend-design / impeccable 各需 ≥1 条成功调用 + (exec 且 exit_code==0,或 load 且 exit_code==0)。 + --artifact 指定的每个文件必须存在。 + 任一不满足 → 报告标 FAIL,exit 1;全满足 → PASS,exit 0。 + +报告内容: 判定横幅、三方调用统计表、逐条调用清单(时间/依赖/命令/退出码)、 +产物核验清单、失败与缺口说明。这份报告就是「真实集成」的可检查证据。 +仅 python3 标准库。 +""" +from __future__ import annotations + +import argparse +import json +import sys +from datetime import datetime, timezone +from pathlib import Path + +GATE_DEPS = ["ui-ux-pro-max", "frontend-design", "impeccable"] + + +def load_records(ledger: Path) -> list[dict]: + if not ledger.is_file(): + return [] + records = [] + for line in ledger.read_text(encoding="utf-8", errors="replace").splitlines(): + line = line.strip() + if not line: + continue + try: + rec = json.loads(line) + except json.JSONDecodeError: + records.append({"dep": "(unparsable)", "kind": "raw", "exit_code": None, "command": line[:120], "ts": ""}) + continue + records.append(rec) + return records + + +def is_success(rec: dict) -> bool: + return rec.get("exit_code") == 0 and rec.get("kind") in ("exec", "load") + + +def one_line(rec: dict) -> str: + cmd = rec.get("command", "") + try: # exec 记录的 command 是 JSON 数组字符串 + parts = json.loads(cmd) + if isinstance(parts, list): + cmd = " ".join(str(p) for p in parts) + except (json.JSONDecodeError, TypeError): + pass + return cmd if len(cmd) <= 160 else cmd[:157] + "..." + + +def main() -> int: + ap = argparse.ArgumentParser(description="le-app-design 验收门") + ap.add_argument("--run-dir", required=True) + ap.add_argument("--out", default=None, help="报告写入路径,缺省 /INTEGRATION-REPORT.md") + ap.add_argument("--artifact", action="append", default=[], help="须存在的交付物路径(可多次)") + ap.add_argument("--title", default="le-app-design 集成证据报告") + args = ap.parse_args() + + run_dir = Path(args.run_dir).expanduser() + records = load_records(run_dir / "calls.jsonl") + out_path = Path(args.out).expanduser() if args.out else run_dir / "INTEGRATION-REPORT.md" + + stats = {dep: {"ok": 0, "fail": 0} for dep in GATE_DEPS} + for rec in records: + dep = rec.get("dep") + if dep in stats: + stats[dep]["ok" if is_success(rec) else "fail"] += 1 + + gate_pass = all(stats[d]["ok"] >= 1 for d in GATE_DEPS) + artifacts_missing = [a for a in args.artifact if not Path(a).expanduser().exists()] + overall = gate_pass and not artifacts_missing + + lines: list[str] = [] + lines.append(f"# {args.title}") + lines.append("") + lines.append(f"- 运行目录: `{run_dir}`") + lines.append(f"- 生成时间: {datetime.now(timezone.utc).isoformat(timespec='seconds')}") + lines.append(f"- 调用记录: {len(records)} 条(`calls.jsonl`)") + lines.append("") + lines.append(f"## 判定: {'✅ PASS' if overall else '❌ FAIL'}") + lines.append("") + lines.append("| 上游 | 成功调用 | 失败调用 | 门(≥1 成功) |") + lines.append("|---|---|---|---|") + for dep in GATE_DEPS: + s = stats[dep] + lines.append(f"| {dep} | {s['ok']} | {s['fail']} | {'✅' if s['ok'] >= 1 else '❌ 未被真实调用'} |") + lines.append("") + + if artifacts_missing: + lines.append("**缺失产物:**") + for a in artifacts_missing: + lines.append(f"- ❌ `{a}`") + lines.append("") + elif args.artifact: + lines.append("**产物核验:**") + for a in args.artifact: + lines.append(f"- ✅ `{a}`") + lines.append("") + + lines.append("## 调用清单") + lines.append("") + lines.append("| # | 时间(UTC) | 依赖 | 类型 | 退出码 | 命令/装载 |") + lines.append("|---|---|---|---|---|---|") + for i, rec in enumerate(records, 1): + lines.append( + f"| {i} | {rec.get('ts', '')} | {rec.get('dep', '?')} | {rec.get('kind', '?')} " + f"| {rec.get('exit_code', '?')} | `{one_line(rec)}` |" + ) + lines.append("") + + if not overall: + lines.append("## 缺口说明") + lines.append("") + for dep in GATE_DEPS: + if stats[dep]["ok"] < 1: + lines.append(f"- `{dep}` 无成功调用记录——该上游未被真实使用,本次流程**不得标记为成功**。") + for a in artifacts_missing: + lines.append(f"- 产物缺失: `{a}`") + lines.append("") + + report = "\n".join(lines) + out_path.parent.mkdir(parents=True, exist_ok=True) + out_path.write_text(report + "\n", encoding="utf-8") + print(report) + print(f"\n[report] {'PASS' if overall else 'FAIL'} → {out_path}", file=sys.stderr) + return 0 if overall else 1 + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/skills/le-app-design/scripts/log_call.py b/skills/le-app-design/scripts/log_call.py new file mode 100644 index 0000000..7fee560 --- /dev/null +++ b/skills/le-app-design/scripts/log_call.py @@ -0,0 +1,140 @@ +#!/usr/bin/env python3 +"""le-app-design 证据账本:所有对上游 Skill 的真实调用经此包裹,落入 calls.jsonl。 + +用法: + 执行型调用(CLI 类上游): + python3 log_call.py --run-dir -- python3 /scripts/search.py "…" --design-system + 装载型调用(文档型上游 / playbook): + python3 log_call.py --run-dir --load /SKILL.md + + dep ∈ {ui-ux-pro-max, frontend-design, impeccable, le-app-design(自检)} + --run-dir 缺省时按序: $LE_APP_DESIGN_RUN_DIR > /le-app-design-runs/-run/ + +行为: + - exec: 运行命令,透传 stdout/stderr,透传退出码;成功失败都记账。 + - load: 读文件记 sha256 与字节数(证明用的是原文而非转述),文件缺失记 FAIL 退出 1。 + - 记录字段: ts / dep / kind / command / exit_code / duration_ms / stdout_tail / + stderr_tail / bytes / sha256 / note。stdout/stderr 仅保留尾部 4000 字符防账本膨胀。 + +仅 python3 标准库。 +""" +from __future__ import annotations + +import argparse +import hashlib +import json +import os +import subprocess +import sys +import time +from datetime import datetime, timezone +from pathlib import Path + +TAIL = 4000 +KNOWN_DEPS = {"ui-ux-pro-max", "frontend-design", "impeccable", "le-app-design"} + + +def default_run_dir() -> Path: + env = os.environ.get("LE_APP_DESIGN_RUN_DIR") + if env: + return Path(env).expanduser() + stamp = datetime.now(timezone.utc).strftime("%Y%m%d-%H%M%SZ") + return Path.cwd() / "le-app-design-runs" / f"{stamp}-run" + + +def append_record(run_dir: Path, record: dict) -> Path: + run_dir.mkdir(parents=True, exist_ok=True) + ledger = run_dir / "calls.jsonl" + with ledger.open("a", encoding="utf-8") as f: + f.write(json.dumps(record, ensure_ascii=False) + "\n") + return ledger + + +def confirm(dep: str, kind: str, status: str, ledger: Path, extra: str = "") -> None: + print( + f"[log_call] {dep} {kind} {status} → {ledger}" + + (f" ({extra})" if extra else ""), + file=sys.stderr, + ) + + +def main() -> int: + # 手工在第一个裸 "--" 处切分:argparse 的 REMAINDER 会把 -- 之前的选项误吞进命令 + argv = sys.argv[1:] + cmd: list[str] = [] + if "--" in argv: + split = argv.index("--") + argv, cmd = argv[:split], argv[split + 1:] + + ap = argparse.ArgumentParser(description="le-app-design 调用账本") + ap.add_argument("dep", help="上游标识: ui-ux-pro-max | frontend-design | impeccable | le-app-design") + ap.add_argument("--run-dir", default=None, help="运行目录(缺省自动创建)") + ap.add_argument("--note", default="", help="阶段/用途备注,如 S2-design-system") + ap.add_argument("--load", metavar="PATH", default=None, help="装载型调用:记录读取的原文文件") + args = ap.parse_args(argv) + + dep = args.dep + if dep not in KNOWN_DEPS: + print(f"[log_call] 未知依赖标识 {dep!r};允许: {sorted(KNOWN_DEPS)}", file=sys.stderr) + return 2 + + run_dir = Path(args.run_dir).expanduser() if args.run_dir else default_run_dir() + base = {"ts": datetime.now(timezone.utc).isoformat(timespec="seconds"), "dep": dep, "note": args.note} + + if args.load: + path = Path(args.load).expanduser() + rec = dict(base, kind="load", command=f"load:{path}") + try: + data = path.read_bytes() + except OSError as e: + rec.update(exit_code=1, stderr_tail=f"read failed: {e}"[:TAIL]) + ledger = append_record(run_dir, rec) + confirm(dep, "load", "FAIL", ledger, str(e)) + return 1 + rec.update( + exit_code=0, + bytes=len(data), + sha256=hashlib.sha256(data).hexdigest(), + ) + ledger = append_record(run_dir, rec) + confirm(dep, "load", "OK", ledger, f"{len(data)} bytes sha256:{rec['sha256'][:12]}…") + return 0 + + if not cmd: + print("[log_call] 需要 --load PATH 或 -- <命令…>", file=sys.stderr) + return 2 + + rec = dict(base, kind="exec", command=json.dumps(cmd, ensure_ascii=False)) + t0 = time.monotonic() + try: + proc = subprocess.run( + cmd, capture_output=True, text=True, timeout=900, + env=dict(os.environ, PYTHONDONTWRITEBYTECODE="1"), + ) + rc, out, err = proc.returncode, proc.stdout or "", proc.stderr or "" + except subprocess.TimeoutExpired as e: + rc, out, err = 124, (e.stdout or b"").decode(errors="replace") if isinstance(e.stdout, bytes) else (e.stdout or ""), f"timeout after {e.timeout}s" + except FileNotFoundError as e: + rc, out, err = 127, "", f"command not found: {e}" + + rec.update( + exit_code=rc, + duration_ms=int((time.monotonic() - t0) * 1000), + stdout_tail=out[-TAIL:], + stderr_tail=err[-TAIL:], + ) + ledger = append_record(run_dir, rec) + if out: + sys.stdout.write(out) + if not out.endswith("\n"): + sys.stdout.write("\n") + if err: + sys.stderr.write(err) + if not err.endswith("\n"): + sys.stderr.write("\n") + confirm(dep, "exec", f"exit={rc}", ledger, f"{rec['duration_ms']}ms") + return rc + + +if __name__ == "__main__": + sys.exit(main())