mcpField
P
prototype

prototype

github.com/carlitose开发046 次安装1 周前更新
代码仓库

关于 prototype

prototype 是用于验证单个问题的临时原型构建技能,面向探索产品逻辑或 UI 方案的开发者。它强调隔离实现、快速运行,并保留从原型中得到的结论。

主要功能

  1. 01选择逻辑或 UI 分支
  2. 02在临时目录隔离原型
  3. 03优先使用现有运行环境
  4. 04通过单条命令运行
  5. 05记录原型结论与后续处理

适用场景

  1. 01验证状态机或业务规则
  2. 02比较多种界面与交互方案
  3. 03探索持久化行为

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/carlitose/agent-skills --skill prototype

安装后在 Claude Code 中输入/prototype确认已加载。

附带文件agents/openai.yaml

详细介绍

原型

构建一个可丢弃的原型,用来回答一个问题。原型本身不是要交付的功能,唯一必须保留下来的是答案。

在原型说明或最终回复的开头,说明:

  • 要回答的问题。
  • 分支:逻辑或 UI。
  • 如果分支选择存在歧义,说明采用的假设。
  • 什么结果会让原型发挥作用。

选择分支

不同分支会产出不同的成果。选错分支会让原型白费。

  • 逻辑分支:用于状态机、领域模型、算法、API 结构、解析、验证、持久化行为或业务规则。
  • UI 分支:用于屏幕、组件、视觉层级、交互模型、内容布局或产品流程对比。

如果问题确实存在歧义,且无法联系到用户,默认选择与周边代码相符的分支:后端/模块问题使用逻辑分支;页面或组件问题使用 UI 分支。开始构建前说明所采用的假设。

通用规则

  • 将工作隔离在仓库的临时/原型约定目录中。如果没有此类目录,优先使用 docs/prototypes/<slug>/、prototype/<slug>/ 或其他明确可丢弃的本地目录。
  • 除非问题只能在真实应用外壳中回答,否则不要修改生产路径。如果必须修改生产路径,确保 diff 易于删除。
  • 尽可能使用现有运行时和任务运行器。
  • 确保原型可通过一条命令运行。
  • 除非问题涉及持久化,否则将状态保存在内存中。如果问题涉及持久化,则使用临时数据库或本地文件,并明确命名为 PROTOTYPE-wipe-me。
  • 避免引入大量新依赖。只有在某个依赖能直接回答问题且易于移除时才添加。
  • 将答案记录在某个可长期保存的位置:最终回复、父级工单、父级规范、ADR,或原型旁边的 NOTES.md。

逻辑分支

构建能体现行为的最小可运行模型:

  • 使用终端脚本、单元测试风格的测试框架、REPL 命令、样例数据运行器或小型本地服务。
  • 在原型中直接编码重要状态、转换、不变量和失败场景。
  • 使用真实的样例数据,但保持小规模且限于本地。
  • 打印或断言能回答问题的场景。
  • 一旦模型证明或否定了设计,就停止;不要围绕它构建 UI。

逻辑分支应让隐藏行为显现出来。优先选择清晰的运行记录或测试输出,而非精致的展示效果。

UI 分支

构建多个有实质差异的方案,而不是一个精致的模型:

  • 将不同方案放在同一路由、页面或本地预览界面中。
  • 使用标签页、切换开关、查询参数或分段控件在不同方案之间切换。
  • 除非问题专门涉及实时数据行为,否则在本地模拟数据。
  • 如果有助于比较,复用应用现有的组件、样式 token 和布局约定。
  • 如有可用的浏览器或预览环境,请在其中验证原型。

UI 分支应能快速呈现权衡。优先选择能回答设计问题的差异化方案,而不是细微的视觉调整。

输出

报告:

  • 原型路径和运行命令。
  • 使用了哪个分支,以及原因。
  • 从原型中得出的答案。
  • 哪些内容应保留、丢弃或转为生产工作。
  • 仍存在的任何不确定性。

如果用户要求从探索转入实现阶段,请删除原型或将其标记为可丢弃。

评论

支持 Markdown