mcpField
P
prototype-question

prototype-question

github.com/legout开发039 次安装6 天前更新
代码仓库

关于 prototype-question

prototype-question 是一项技能,通过可丢弃且可检查的代码回答一个明确问题。它区分可通过探测验证的不确定性与由用户决定的事项,并将原型证据与生产批准分开。

主要功能

  1. 01选择逻辑、UI 或可行性探测
  2. 02构建最小可运行实验
  3. 03明确标记原型文件和 UI
  4. 04展示输入、输出及相关状态
  5. 05记录证据、置信度和可能推翻结论的条件
  6. 06默认不将原型代码纳入生产

适用场景

  1. 01测试代码库中不确定的行为或性能
  2. 02比较设计问题中可行的 UI 方案
  3. 03验证有风险的技术方案是否可行

安装

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

$npx skills add https://github.com/legout/skills --skill prototype-question

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

附带文件references/logic.mdreferences/ui.md

详细介绍

原型

改编自 Matt Pocock 在提交 3cca18b368ae95cdbdebbff572ccafa662551015(MIT)中的 prototype 技能。可观察不确定性的路由机制改编自 Cursor 在提交 93b00b89ef425a9c1bac0d0b317dfc49c930ac99(MIT,Copyright (c) 2026 Cursor)中的 poteto-mode 原型手册。

原型是用于回答一个书面问题的一次性代码。当 shape-design 委派了 Spike 时,应将证据和结论交还给该工作流;最终的生产决策由 shape-design 负责。选定某个 UI 变体绝不代表已获准进行生产实现;应保留结论,并通过常规设计交接流程交回。

加载 planning-contract 技能(Contract version:1),了解工件分类和审批边界。如果尚未安装,请停止并要求安装 planning-contract,不要依据继承或臆造的规则继续操作;切勿假设依赖会自动解析。探测报告稳定后,将其作为研究证据存放在项目的研究目录中(project/research/;旧目录为 docs/research/),并从负责该事项的设计文档中链接到它——切勿将其放入规格目录。探测获批并不意味着可以保留原型代码或实现产品。

区分可观察的不确定性和由用户决定的事项。行为、时序、布局、兼容性、输出和性能问题属于可观察的不确定性:应通过构建并运行探测来回答,而不是询问用户。产品意图、偏好、由用户决定的权衡以及不可逆的决策,仍应由用户回答。

选择工件

  • **逻辑/状态:**阅读 references/logic.md,然后构建最小可运行的测试程序,用于验证极端情况,并在每次操作后显示完整状态。
  • **UI:**阅读 references/ui.md,然后制作多个差异明显的变体,以便通过单个路由或工件进行比较。只有在备选方案确实都可行时,才构建多个变体;常规问题只需一个探测。
  • **可行性:**只构建回答方案是否可行所需的风险环节。

如果问题含糊不清,请提问。如果用户无法联系,请根据上下文推断,并醒目地说明假设。

约束

  1. 将文件和 UI 标记为 PROTOTYPE。
  2. 让原型贴近其所要提供参考的代码,但不要凭空设计永久架构。
  3. 提供一个明确的运行命令,或一个自包含文件。
  4. 除非问题涉及持久化,否则将状态保存在内存中。
  5. 跳过生产级抽象、全面的错误处理和精细打磨。
  6. 展示输入、输出和相关状态,以便检查结果。
  7. 不得在不作说明的情况下将原型代码提升为生产代码。

结束实验

报告以下内容:

  • 问题;
  • 观察到的证据;
  • 答案和置信度;
  • 哪些情况会推翻结论;以及
  • 如有,生产建议。

如果结论需要长期保留,请将其记录在议题或设计文档中。除非用户明确选择保留一个清晰隔离的实验工件,否则应从主要变更中移除原型。

评论

支持 Markdown