我如何教会我的代理人我的设计品味
为什么我这么做
我的目标不是 “外包” 我的创造力。我想把 Genuary 当作一个沙盒,学习 agentic‑engineering 工作流,它们正迅速成为开发者使用 AI 增强工具的标准方式。
为了解保持技能的敏锐,我使用 goose 在短时间、每日的实验中尝试这些工作流。
- 让 goose 负责执行,我可以并行测试不同的架构。
- 通过实验,我能够看出 agentic 工作流的哪些部分真的有价值,哪些可以舍弃。
- 我花了几小时搭建基础设施,为自己争取了整整一个月的工作流数据。
💡 Skills – 可重用的指令和资源集合,教会 goose 执行特定任务。
查看文档:
灵感来源
我必须向我的朋友 Andrew Zigler 致以巨大的赞誉。我看到他在 Genuary 中表现出色,于是联系他想了解他的做法。他分享了自己的作品,并提到自己使用了一个 “harness”。
我整整一个十二月都听说过这个词,却实际上不知道它的含义。Andrew 解释道:
harness 只不过是你为模型构建的工具箱。它是一组确定性的脚本,用来包装 LLM,使其能够可靠地与你的环境交互。
他曾用这种方法解决了另一个挑战——构建一个能够 迭代、提交并自行验证 的系统。思路是先花时间提前定义规范和约束,然后交由系统执行。只要拥有带有良好日志记录的确定性工具,代理就会循环运行,直至达成目标。
我平时的做法非常基础且依赖大量提示,但因为 Andrew 取得了出色的结果,我愿意尝试这种方法。
Harness 与 Skills
受那次对话的启发,我构建了 两个相同工作流的版本,以观察它们如何处理每日 Genuary 提示。
| 方法 | 位置 | 描述 |
|---|---|---|
| 1. Harness + Recipe | /genuary | 一个 Shell 脚本充当 harness,处理脚手架工作(文件夹创建、呈现每日提示),让代理无需猜测去哪里。该配方约 300 行,完全自包含。 |
| 2. Skills + Recipe | /genuary-skills | 由于将 “如何做” 委托给 skill,配方更简洁。skill 包含设计哲学、参考资料和示例,使代理能够从一个捆绑包中 “发现” 指令,而不是从平面脚本中读取。 |
我用一次专注的会话构建了整个系统:
- 配方(Recipes) – 逐步指令,用于生成每日 Genuary 的输出。
- 技能(Skills) – 可复用的知识捆绑,封装设计哲学、参考材料和示例代码片段。
- Harness 脚本、模板和 GitHub Actions – 自动化创建文件夹结构、注入提示、运行配方/技能并提交结果。
(所有这些都在我十二月假期的安静时光里完成,当时我的一岁宝宝正睡在我的腿上。)
短期的投入换来了长期的杠杆:从那以后,系统就能自动完成每日工作。
关于品味
自动化过程很顺畅,但当我检查输出时,发现所有内容看起来 异常相似。
这让我想到一个常见的讨论:你无法教会一个代理“品味”。以下是我个人培养品味的方式:
- 观察什么是酷的并模仿它。
- 知道哪些东西被过度使用,因为你已经见得太多。
- 关注拥有“好品味”的人并吸收他们的模式。
我向 Goose 询问了这个问题:
“我注意到它总是画三文鱼色的圆圈……我们说要 创意 ……有什么办法让它跳出框框思考吗?”

Goose 回答说,它遵循了一个 p5.js 模板,其中包含 fill(255, 100, 100)(三文鱼色!)的数值以及一个椭圆示例。由于大型语言模型在具体示例上锚定较重,代理更多地遵循了代码而不是我的“创意”指令。
我把模板中的三文鱼圆圈删掉了,然后进一步操作:我询问如何 彻底禁止常见的 AI 生成陈词滥调。Goose 搜索了讨论,提取了示例,并生成了一份列出那些让人一眼就能辨认出是 AI 生成的模式的禁用清单。
禁用陈词滥调
| 类别 | 禁用模式 |
|---|---|
| 配色违规 | 三文鱼色或珊瑚粉、青绿色 & 橙色组合、紫‑粉‑蓝渐变。 |
| 构图违规 | 单一居中形状、完美对称且没有变化、通用螺旋。 |
| 黄金规则 | 如果看起来像是 AI 生成的输出,就 不要 使用它。 |
鼓励的模式
| 类别 | 鼓励的模式 |
|---|---|
| 颜色胜出 | 使用 HSB 模式并伴随色相漂移、互补配色、随时间演变的渐变。 |
| 构图胜出 | 具备涌现行为的粒子系统、带有透明度的层次深度、数百个相互作用的元素。 |
要点
*您可以自动化生成创意代码的过程,但仍然需要人工来定义和策划审美的“品味”。通过将确定性的工具(或精心打造的技能)与深思熟虑的约束相结合,您可以让代理拥有探索的自由,同时防止其陷入陈词滥调。
运动获胜
基于噪声的流场、群聚/蜂群、自然生长模式、带有变化的呼吸。
灵感来源
- 自然现象:星群的聚集、萤火虫、极光、烟雾、水流。
黄金法则
如果它能点燃你的喜悦并且有人想要分享它,你就在正确的轨道上。
注意: Goose 通过模式识别确定了这份列表。所以也许代理可以使用模式来反映我的品味——不是因为它们理解美,而是因为我在明确地教它们我个人会产生反应的东西。
我向 Andrew 展示了我三天里最喜欢的作品:蝴蝶按斐波那契序列排列。
他的回应令人欣慰:
“WOW 那是一个令人惊叹的斐波那契… 我真的很想知道你的审美提示。我的倾向更偏向像素艺术和数学色彩操控,因为我已经把它训练成那样… 我喜欢你的作品更柔和,尝试不让它看起来像是电脑生成的… 像手机壁纸一样实在,哈哈。你是怎么在蝴蝶上得到那种酷炫的细线条艺术的?看起来像是基底图像。太酷了。是画的 SVG 吗?那些线条是从哪来的?”
因为我特意让 Goose 查看 “自然现象” 和 “有机生长”,它为翅膀使用了 Bézier 曲线,根据螺旋位置偏移颜色以营造深度,并采用了暖琥珀到蓝色的渐变,而不是刺眼的黑色。
可扩展的视觉反馈循环
两个工作流都使用 Chrome DevTools MCP 服务器,因此 Goose 能够看到输出并进行迭代。这导致了一个冲突:多个实例无法共享同一个 Chrome 配置文件。我不想增加手动步骤,于是询问代理是否可以并行运行 Chrome DevTools。解决方案是为每个实例分配独立的 user‑data 目录。
# genuary recipe example
- type: stdio
name: Chrome Dev Tools
cmd: npx
args:
- -y
- chrome-devtools-mcp@latest
- --userDataDir
- /tmp/genuary-harness-chrome-profile
进入全屏模式
退出全屏模式
我学到的
我自动化了执行,以便研究品味、约束设计和反馈循环。
| 方法 | 特点 |
|---|---|
| 基于 Harness 的工作流 | 更可靠且高效;产生可预测的结果;忠实执行指令并优化一致性。 |
| 基于技能的方法 | 更混乱;出现更多意外;产生更陌生的关联;需要更多编辑干预;感觉更像合作而非流水线。 |
这让我再次确认,“AI 与人类”的框架过于简化。自动化能够很好地处理重复性和速度,但品味仍然体现在设定约束、策展以及决定哪些事情绝不应发生上。我最终 没有对品味进行自动化;相反,系统把我的偏好表达得足够清晰,以便反馈给我。
查看代码
代码和完整的文字记录位于我的 Genuary 2026 仓库。每一天的文件夹包含完整的对话历史,包括提案、迭代以及我与代理之间的来回交流。你也可以在 Genuary 2026 网站 查看这些作品。
