web-ui-iterate
donger Web UI 渐进式迭代升级:每轮执行「清扫发现未重制件 → Penpot 补设计图 → 代码实现 → 质量门禁 + e2e 验证 → 提交部署」闭环,一轮一个 commit,直到旧样式指标清零。适用于定时巡检式 UI 升级与"继续重设计"类任务。
Skill by Jeandoom
Chalk Labs
Need help deploying web-ui-iterate?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/jeandoom-web-ui-iterate
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, testing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/web-ui-iterate
What's inside
- Skill name
web-ui-iterate- Description
- donger Web UI 渐进式迭代升级:每轮执行「清扫发现未重制件 → Penpot 补设计图 → 代码实现 → 质量门禁 + e2e 验证 → 提交部署」闭环,一轮一个 commit,直到旧样式指标清零。适用于定时巡检式 UI 升级与"继续重设计"类任务。
- License
- MIT
- Instructions
- 61 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Web UI 迭代升级(web-ui-iterate)
> 工作目录:`D:\code\donger`,前端子包 `web/`。设计稿在 Penpot「logo」页(DS 设计体系板 + P01-P19 屏板)。
> 本技能是**循环执行**的:每次调用执行一轮;当第 1 步清扫全部指标为零时,本轮直接输出"无未重制件"并结束。
## 步骤
### 1. 清扫(找)
用五类 grep 指标判定是否存在未重制件,全部命中数为 0 则本轮无事可做:
```bash
cd web
grep -rn "window.confirm\|window.alert" src --include=*.tsx # 原生弹窗
grep -rn "hover:bg-accent\|bg-accent\b" src --include=*.tsx | grep -v accent-foreground
grep -rn "bg-yellow-\|text-yellow-\|bg-red-50\|text-red-7" src --include=*.tsx
grep -rn "rounded-md border px\|rounded border px\|bg-background shadow\|rounded-lg bg-background" src --include=*.tsx # 旧边框/弹窗底
grep -rn "✨\|📄\|🤖\|📱\|🔵\|✅\|⚠\|●" src --include=*.tsx # emoji 占位图标
```
辅以浏览器目检:起服务后用 control-browser 逐页截图/DOM 校验(无横向溢出、无崩溃文案、深色侧边栏 `rgb(15,23,42)`)。
产出:未重制件清单(文件:行 + 问题归类)。
### 2. Penpot 设计(画)
- 对每个新发现的页面/控件补一张屏板(1440×900,命名 `P{nn} · 名称`,接在已有 P 板之后);纯控件改动可并入合集板。
- 设计 token 速查(与 `web/src/index.css` 一一对应):
- 色:墨黑侧边栏 `#0F172A` / hover `#1E293B` / 主色靛蓝 `#4F46E5` / soft `#EEF2FF` / 内容区 `#F8FAFC` / 卡片 `#FFF` / 描边 `#E2E8F0` / 次文字 `#64748B` / 成功 `#10B981`(soft `#ECFDF5`) / 警告 `#FBBF24`(soft `#FFFBEB`) / 危险 `#EF4444`(soft `#FEF2F2`)
- 字阶:22/700 页标题、16/600 区块、14/600 卡标题、13 正文按钮、12 辅助、11 徽章
- 形:卡片圆角 12(`rounded-xl`)、按钮/输入 8(`rounded-lg`)、徽章 999;阴影 `0 2px 8px rgba(15,23,42,0.06)`
- 组件:primary(靛底白字)/secondary(白底描边)/danger(浅红底红字) 按钮;六 tone 徽章;PageHeader=左标题描述右操作
- 插件坑(必读):标签页挂起需用户手动聚焦恢复;storage 可能重置需重建 helper(rect/board/text 创建后必须手动 `appendChild`;flex 对齐值用 `start/end`;只能画当前激活页);execute_code 30s 超时但往往已执行完——先查状态再决定是否重画。
### 3. 代码实现(改)
- 全部样式走 `web/tailwind.config.ts` 已注册 token(`bg-card`/`bg-primary-soft`/`bg-success-soft`/`bg-warning-soft`/`bg-destructive-soft`/`bg-sidebar*`/`text-muted-foreground`),禁止裸 hex 与语义化前旧类。
- 复用 `web/src/components/ui/`:`Button`(default/secondary/ghost/danger)、`Badge`(六 tone)、`Card`、`Input`、`PageHeader`、`ConfirmDialog`、`Switch`。
- 列表页骨架:`mx-auto max-w-5xl flex-1 flex-col gap-5 overflow-y-auto p-7` + PageHeader + 搜索/筛选行 + 卡片栅格(`grid sm:grid-cols-2 xl:grid-cols-3`) 或 Card 表格(表头 `bg-muted/60 text-xs`)+ 虚线空态。
- 原生 `confirm/alert` 一律替换:确认→ConfirmDialog(pendingDelete 状态模式,参考 AgentsPage);结果反馈→页内通知横幅(success-soft/destructive-soft)。
- 最小 diff,逐文件 patch;不改业务逻辑与 API 层。
### 4. 验证(验)
```bash
npm --prefix web run lint && cd web && npx tsc --noEmit && npm test && npm run build
```
80 个 vitest 必须全绿;e2e 用 control-browser:
1. `CLI_TOKEN`(根 .env)POST `/api/auth/exchange` 换 JWT,注入 `localStorage.donger_jwt`;
2. **先注销 Service Worker 并清 caches**(PWA 会缓存旧构建,否则验证的是旧 UI);
3. 逐路由检查渲染/溢出/崩溃 + 本轮改动点的交互验证;
4. playwright click 易挂起,优先 `evaluate(() => el.click())` 或直接 goto。
### 5. 提交与部署
- 分支 `feat-20260912-web-sweep-controls` 式命名(`feat-{yyyyMMdd}-{≤6 词}`),commit 用 `feat(web): 中文简述`。
- 合入 master 与 push 需用户当轮明示(历史上常用语:「合并master并推送」「部署吧」);部署 = `npm run build`(根)→ 杀 3300 进程树 → 根目录 `npm start` → `/api/health` 200 + 浏览器抽查。
- 每轮一个 commit,便于回溯与回滚。
## 约束
- 只动 `web/`(含其测试);后端、CLI、Penpot 已有板禁止顺手改。
- 渐进语义:一轮只消化清扫发现的一批(≤20 文件),不做大爆炸重写;发现未纳入设计的全新交互模式时先补 Penpot 图再写码。
- 验证不过不提交;生产部署仅在被要求时执行。
- 本轮结束必须在回复中给出:清扫计数(五类指标命中数)、本轮改动清单、验证结果。From Jeandoom/donger, MIT.
More from Jeandoom/donger
- 0.621score
deploy-operator
Jeandoom
对登记主机上的服务做部署与运维:发布新版本(拉代码→跑部署脚本→健康检查→失败排障)、诊断异常(磁盘/日志/CPU)、自愈动作(日志截断/服务重启)。当用户要求"部署/发布/上线某服务"、"看下那台机器的日志/磁盘/CPU"、"重启服务"时使用。
SkillAFreshness: A★ 7Claude Code +9 - 0.578score
skill-upgrade
Jeandoom
优化升级已有技能:基于执行证据、用户反馈或工具面变化修订现有 SKILL.md。用户反馈某技能效果差/步骤失效/引用了不存在的工具,需要修订时使用。
SkillBFreshness: B★ 7Claude Code +9 - 0.573score
task-dispatch
Jeandoom
任务分发:按系统提示中实时生成的执行智能体登记表,把用户任务路由给最合适的执行智能体,并按输出契约返回路由 JSON。仅做路由判断,不执行任务。
SkillBFreshness: B★ 7Claude Code +9 - 0.573score
skill-create
Jeandoom
创建新的平台技能(SKILL.md):把一个可复用的任务流程沉淀为标准技能。用户描述想要固化的能力/流程/规范、需要产出可安装的技能文档时使用。
SkillBFreshness: B★ 7Claude Code +9 - 0.573score
task-optimize
Jeandoom
任务优化反馈:基于指定任务的全量审计事件与用户评论,对照智能体的 skills 与知识库,产出修订提案(diff 形式)。写盘必须经审批卡人工确认。
SkillBFreshness: B★ 7Claude Code +9
Signals
- Stars
- 7
- Forks
- 4
- Open issues
- 0
- Last commit (this folder)
- Sep 12, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Jeandoom/donger
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Jeandoom
- 0.621score
deploy-operator
Jeandoom
对登记主机上的服务做部署与运维:发布新版本(拉代码→跑部署脚本→健康检查→失败排障)、诊断异常(磁盘/日志/CPU)、自愈动作(日志截断/服务重启)。当用户要求"部署/发布/上线某服务"、"看下那台机器的日志/磁盘/CPU"、"重启服务"时使用。
SkillAFreshness: A★ 7Claude Code +9 - 0.578score
skill-upgrade
Jeandoom
优化升级已有技能:基于执行证据、用户反馈或工具面变化修订现有 SKILL.md。用户反馈某技能效果差/步骤失效/引用了不存在的工具,需要修订时使用。
SkillBFreshness: B★ 7Claude Code +9 - 0.573score
task-dispatch
Jeandoom
任务分发:按系统提示中实时生成的执行智能体登记表,把用户任务路由给最合适的执行智能体,并按输出契约返回路由 JSON。仅做路由判断,不执行任务。
SkillBFreshness: B★ 7Claude Code +9 - 0.573score
skill-create
Jeandoom
创建新的平台技能(SKILL.md):把一个可复用的任务流程沉淀为标准技能。用户描述想要固化的能力/流程/规范、需要产出可安装的技能文档时使用。
SkillBFreshness: B★ 7Claude Code +9 - 0.573score
task-optimize
Jeandoom
任务优化反馈:基于指定任务的全量审计事件与用户评论,对照智能体的 skills 与知识库,产出修订提案(diff 形式)。写盘必须经审批卡人工确认。
SkillBFreshness: B★ 7Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get web-ui-iterate running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
web-ui-iterate skill. Agent Mart. https://agentmart.dev/skills/jeandoom-web-ui-iterate (last updated 2026-10-24)