agentleFS
sogudsogud/skills/prototype-tree/SKILL.md

prototype-tree

Skill1 starsChanged 3 months agoMITView on GitHub

用每轮 3–5 个极简原型探索需求,沿用户选中的方向逐步细化。用于原型树、多方案草稿、先看方案再决定;可结合 anti-goals 排除整案或局部,集成 DECISIONS.md 的读取与确认。不把普通局部修复自动升级为原型流程。

The file

Files
SKILL.md

原型树

让用户以小成本逐轮选择,直到得到明确方向。原型用于讨论,产品代码保持原状;只有另行获得实现授权才进入开发。

可以独立使用:直接根据已有需求给出草稿并逐轮细化,不要求先做 anti-goals 访谈,也不依赖安装该技能。排除法是按需使用的辅助方式。

1. 恢复约束与当前分支

  • 确定目标项目根目录,读取其 Agent 规则、DECISIONS.md 和本任务已有原型记录。多仓时按目标项目定位,沿途父级已声明的约束也要遵守;无法确定归属时先问,不把决策写进其他项目。
  • 优先使用当前对话和现有记录。需要旧会话时,只读取用户指定或明确属于本任务的相关片段,使用宿主支持的会话工具;不要假设 Cursor、Codex 或其他工具的日志目录相同。
  • 用不超过三行说明:本轮解决什么、必须保留什么、从哪个已选分支继续。不要重新讨论已确认方向。
  • DECISIONS.md 不存在不等于没有约束:先遵守当前对话与项目规则。用户明确确认第一条项目决策时再创建该文件,不预先填入 AI 偏好。已有记录冲突或含义不清时,暂停依赖该选择的工作并指出具体冲突。

2. 每轮只解决一个主要问题

  • 默认给 3 个选项;存在额外且有意义的取舍时给 4–5 个。不用换颜色、换文案凑数量,不为了凑数加入违反决策的方案。找不到三个合理选项时说明原因,请用户缩小问题或明确允许减少数量。
  • 合成完整页面也是一轮原型:固定已选方向,围绕尚未确定的布局或交互给出 3–5 案。用户同意“看完整原型”不代表同意只做一案;只有明确要求单案时才减少数量。
  • 第一轮通常比较结构、分组、布局或步骤顺序;后续逐步比较交互和细节。每轮保持其他已经选定的部分不变。
  • 对用户展示的选项每轮重新编号为 1、2、3(最多到 5),各带一个短名称。接受数字、序数或名称回答,不要求用户记忆或输入累积的分支编码。
  • 在当前对话中跟踪选中方向与分支;用户已有的原型稿保留,不覆盖。不要把分支树、候选或每轮流水写入 DECISIONS.md,也不因此另建记录文件。
  • 用户选择 B 后只细化 B。未选分支保留记录,不继续制作;用户明确返回 A 时再从 A 分叉。
  • 用户合并两案时,先说清采用各自哪一部分,再把组合记录为新节点并注明来源,不悄悄改写已有节点。

按需用排除法明确方向

用户还说不清想要什么、只知道不要什么,或反馈涉及排除整案或局部时,可读取 anti-goals,按其方法每轮只问 1–3 个有区分度的问题。该技能不可用时,按本节规则继续处理反馈,不中断原型流程或自动安装依赖。已有边界直接使用,不强制每次原型前都做访谈。

  • 用户可以选整案,也可以仅保留布局、排除步骤、组合部分。将反馈分成“明确保留 / 明确排除及范围 / 待定”,不要求用户强行选完整方案。
  • 明确保留某案的布局、排除了折叠时,以该案为父节点,下一轮仍显示 1、2、3 + 短名称,固定布局并比较符合条件的交互。原稿保留,不把其未选细节带入已确认方向。
  • 只排除了 A 时,B、C 仍待选择,不替用户选父分支。围绕剩余差异追问一个关键问题;即使只剩一个选项,也先确认是否沿它继续。
  • 全部排除且没有明确保留部分时,先问清不满意的主要维度,再生成新一轮草稿。保留旧编号和排除范围,不无限重画或重新引入已排除的特点。
  • 边界足以制作下一轮时就展示草稿;在看图和排除之间交替,不把两个技能变成必须依次走完的长问卷。

3. 选择最低成本的表达

本轮问题默认表达
页面关系、功能分组、流程顺序简短文字框图或 Mermaid
元素位置、布局、信息层级一份极简 HTML,并排展示 3–5 案
点击、展开、跳转同一 HTML 内加入必要的少量交互
已确认结构后的视觉细节只细化本轮需要比较的部分
  • 默认线框级:方框、文字、按钮即可。不接后端、不安装依赖、不搭应用、不生成图片,不先做精装修。仅在用户明确需要相应保真度时增加成本。
  • HTML 共用一份 CSS 和必要的 JS;复用父分支,只制作差异。避免每案复制完整页面或输出长段代码到对话。
  • 使用现有品牌、主题和已确认控件,不自行切换用户应用或系统主题。原型文件可独立预览,不能拿真实产品页面当试验稿。
  • 结构草稿不代表变更已确认的颜色、尺寸或样式。需要体现这些值时沿用已有数值;尚无数值时标注示意,不编造用户已经确认的规格。
  • 示例内容明确标注;预览按钮只演示交互,不触发真实保存、上传、支付或模型调用,也不自动将页面点击写入决策。
  • 优先使用项目既有原型产物目录;没有约定时使用普通可见目录 prototypes/<task>/。若目录会被构建或公开发布,先选择项目允许的非发布位置。保持原型与产品源文件分离。

4. 展示、等待、继续

用户要求继续、补齐或纠正本轮交付时,在已授权范围内当轮完成修改、必要检查和交付,再等待用户选择。不能以“我会补齐”或认错说明结束这一轮。若确实无法执行,说明具体阻塞与所需输入,不把计划当成已完成。交付前核对实际可见的方案数量、每案的实质差异和已选约束;缺项先补齐。

每轮交付只包括:

  1. 一个可直接查看的对比稿或链接;
  2. 每案一句话解释差异与主要取舍;
  3. 一个明确的问题:默认问“你想选择哪个方向?”,需要排除法时才改问“你想排除哪个方向?”。每轮只用一种问法,不将选中与排除混在同一个问题里;仍接受用户主动提出组合、局部反馈或补充条件。

推荐要说清动作,例如“我推荐选择 C”,不用单独的“倾向 C”让用户猜含义。给出选择推荐的这一轮保持正向选择,不紧接着问排除谁。切换为排除轮时另起一轮,明确说明是在排除。

用户明确说“选 C”就沿 C 继续,不再要求先做排除;明确说“不要 C”则记录排除。仅回复编号时依据本轮明确问法判断;若本轮问法本身混乱,由 AI 承认并澄清,不能猜测。已经明确的选择不重复确认。

回复通常控制在一屏内,不粘贴 HTML,不复述整段历史。先检查选项是否真正有区别、能否打开、是否与已确认决策冲突。无法渲染或没有合适工具时,先用文字线框,不声称已经完成浏览器验证。

用户回答“第三”“3”或短名称时,定位当前待回答轮次的对应选项;只有存在多个待答问题或用户明确回指旧轮次、无法确定时才澄清。选中后说“已选 3「短名称」”,不要展开整条分支编码。回顾旧选择时使用主题和短名称,无需向用户展示内部编号。

展示后等待用户反馈。 沉默、页面点击、AI 自己的偏好均不代表会话中的明确确认。明确选中方向后先用一句话复述所选差异,再沿该方向给出下一轮 3–5 案;只有排除反馈时按上面的排除法继续,不将剩余选项视为批准。不要一次预制整棵树。

用户说暂停就停。用户说原型已满意或已经足够时停止分叉,总结已确认方向与仍未定项;这不是自动开始实现的授权。

5. 保存当前重要决定

用户明确确认会影响后续的重要方向、约束或禁改项时,使用 lock-decisions,按其固定格式更新目标项目根目录 DECISIONS.md。只记录本次明确选择的差异,不能把占位文字、默认值或未选细节当成批准。

文件只保留最新有效的重要决定,不记录原型分支、每轮候选、弃选理由、测试结果或实施流水。未确认内容留在当前讨论中;方向确认不等于实现授权或用户验收。技能不可用时遵循项目已有决策格式,保持同样的范围与简洁要求。

已有决定与新反馈冲突时先说明影响;用户明确改变决定后更新原条目、移除失效内容,不把旧约束继续当成有效规则。

6. 跨会话继续

先读 DECISIONS.md 获取最新约束,再按需读取已有原型稿或相关对话,沿已选方向继续。无需保存整棵树;上下文不足时只澄清缺失的选择,不重问已有决定。原型文件保存在既有产物目录,已确认稿不覆盖。对用户始终使用本轮数字与短名称。

7. 完成与实现交接

用户明确批准最终原型后,提供所选路径、对应稿件、相关决策和未决事项。实现只使用批准的方向,不夹带未选方案;收到实现指令后按项目开发流程执行,不由本技能自动提交或发布。

只创建或修改本技能的请求,不授权开始项目原型、创建项目 DECISIONS.md、改项目规则或恢复已暂停的产品开发。

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.