DOMPrompter:我做了个专门给前端界面微调的提示词工具 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
hashtome

DOMPrompter:我做了个专门给前端界面微调的提示词工具

  •  
  •   hashtome 3 天前 855 次点击

    最近在用 Cursor 、Claude Code 这类工具改前端界面的时候,我越来越觉得,真正麻烦的不是从 0 生成一个页面,而是最后那一段很细的界面微调。

    比如这种场景:

    • 某个按钮再往右一点
    • 两张卡片之间的 gap 再大一点
    • 标题和下面说明文的距离不太对
    • 某个 tag 看起来太挤,想单独调一下

    这时候最难的点其实是:你很难把“到底是哪个元素、差异在哪里、这次想怎么改”说清楚。

    截图当然能看,但截图没有 DOM 结构,也没有标签、间距、位置这些上下文;口头描述又很容易越来越模糊,最后就会变成一轮一轮地猜。

    所以我做了一个小工具,叫 DOMPrompter 。

    它更像是一个专门给界面微调用的工作流工具,不只是给网页用。只要界面本身是基于 DOM 的,不管是浏览器里的页面,还是用 Web 技术封装出来的桌面应用界面,其实都可以拿来调。

    它主要做的事大概是这几步:

    • 先直接点中你想改的那个元素
    • 再看这个元素相关的标签、间距、位置、层级这些信息
    • 快速写清楚这次想做的微调意图
    • 最后生成一个更定制的 prompt ,直接丢给 Cursor 、Claude Code 、Copilot 之类的工具

    我自己现在主要把它拿来处理这种“不是重做页面,而是把现有界面往前推一点点”的工作。

    这周也看到 Codex 、Claude Code 都在往这块补能力了,不过我自己的感受是,界面微调这件事还挺值得做得更完整一点: 不是只知道你点了哪个元素,而是把 tag 、gap 、position 这些上下文也一起带进去,最后生成更贴近这次修改目标的提示词。

    GitHub: https://github.com/hooosberg/DOMPrompter

    Mac App Store: https://apps.apple.com/us/app/domprompter-ai-coding-prompt/id6761685716?mt=12

    如果你平时也会用 AI 改 UI ,我也挺想知道,你们现在最后这一步微调,一般都是怎么做的。

    2 条回复    2026-04-19 22:11:57 +08:00
    andforce
        1
    andforce  
       3 天前 via iPhone
    Cursor 内置浏览器,可以精准选中某个元素

    其他两个都不行

    所以我还前端的时候首选 Cursor
    xue777hua
        2
    xue777hua  
       2 天前 via iPhone
    chrome devtools 选中元素-右键-AI 大多数都能解决。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5728 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 36ms UTC 06:42 PVG 14:42 LAX 23:42 JFK 02:42
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86