我长期使用 AI Vibe Coding,反复遇到两类问题:生成的文案带着固定口癖,页面也经常套用相似的视觉和交互模板。为了让这些问题更容易识别,我在 VibeHub 里增加了「防止 AI 味儿」模块,又把自己实际使用的约束整理成 oil-tone 和 oil-frontend 两个 Skill。
先把重复出现的问题整理出来
文案方面,最经典的例子是 GPT 以前喜欢说的「稳稳接住」。现在的 GPT 仍然有一些口癖,比如单字动词式的表达:「收一下」「提一层」「落回去」,正常说话不会这样写。
VibeHub 的「防止 AI 味儿」模块把常见的 AI 口癖、套模板的页面和不好用的交互整理成了词条。判断生成结果时,可以先对照这些具体表现,再决定需要调整文案、视觉还是交互。

除了 GPT 的单字动词,Gemini 喜欢到处加双引号、使用夸张的比喻。GPT 还有一个问题是喜欢提升立意:它写的标题和文档总要把一个维度拔得很高,很难做到平铺直叙。


样式方面,AI 喜欢居中的大标题、蓝紫色的渐变配色,容器过度嵌套,还喜欢到处画分割线。GPT 生成的页面经常用很大很黑的文字,行高很小、排得很挤,或者直接把 emoji 当作图标。


交互方面有一个很典型的问题:AI 喜欢在每个地方都加一段描述文案,觉得这样能丰富页面。但很多功能并不需要补充说明,这些小字反而占用了空间。


这些词条来自我实际开发时遇到的问题,后续发现新的情况,我会继续补充到 VibeHub。词条用于识别问题,真正用于日常工作时,还需要让 Agent 在生成和修改时遵守对应的约束。
oil-tone:约束文案的 Skill
第一个是 oil-tone,用来优化文案。它主要基于 GPT 平常容易犯的问题整理,因为我用 Codex 比较多。里面有一个直观的例子:让 AI 写文章时,它喜欢把标题写成「单文件 HTML 的结构:简单,但不随意」,总要去提炼一句没有必要的话。实际上「单文件 HTML 的结构」这个标题就已经很直接,oil-tone 会避免这类问题,整体趋向平铺直叙。

前面说的这些 AI 味的点,在这个 Skill 里都有重点约束。VibeHub 里每个术语的文案都是基于 oil-tone 优化的,看起来会比 GPT 直接写自然一些。当然它没办法彻底避免 AI 味,模型说话的风格很难完全改变,只能做一些限制。写文档、博客或者方案的时候,都可以用这个 Skill 让 AI 写出更易读的文案。

oil-frontend:约束前端代码和 UI 的 Skill
另一个是 oil-frontend,最近才开源。它基于我长期用 AI 写前端代码时总结的代码规范和 UI/UX 规范。这个 Skill 不是风格化特别明显的那种,主要是反 AI 的一些典型问题:每条规范都来自我实际开发中遇到的问题,遇到一次就补进规范里,所以它不会非常膨胀。

它主要解决这几类问题:
- 页面上展示 UUID、内部枚举这类无助于识别对象的信息;
- 勾选选项以后,把「已选几项」这类状态文案显示在页面上,但不影响任何操作;
- 代码里重复派生状态。AI 写代码有时不看存量代码,同一份数据维护多份;
- 迁移完成以后仍然保留过时的代码,代码库会越来越脏。

oil-tone 和 oil-frontend 解决的是两个不同阶段的问题:VibeHub 里的词条帮助我看出生成结果哪里不自然,两个 Skill 则把已经确认的文案和前端规范带进 Agent 的执行过程。它们不能彻底改变模型本身的风格,但可以减少重复出现的口癖、模板和实现问题;使用能力相对弱的模型时,这类明确约束也能提高输出的下限。
