>- Vibe Coding(用 AI 写代码)项目的第一步:把模糊的想法,变成 AI 能精准落地、不会跑偏的需求。 当用户说"我想做一个 XX"、"帮我用 AI 做个 demo"、"我有个想法想验证"、"帮我跟 AI 对齐需求", 或者描述了一个还很模糊的软件/工具/系统点子时,使用此 Skill。也用于先判断"这件事到底要不要写代码"。 这是 vibe-coding-kit 套件的入口——只想跑 demo 验证想法的人,通常只需要这一个 Skill。 它不止教你说清"想要什么",还教你用"数据旅程 + 3×4 提问"把需求补全到考虑周全,避免只描述了"一切顺利"的happy path。 即使用户没明说"规划"二字,只要 ta 准备让 AI 开始写代码、却还没把需求说清楚,就应主动用本 Skill 先做需求对齐。
npx skills add https://github.com/Junliu1066/vibe-coding-kit --skill vibe-coding-requirements
这是 vibe-coding-kit 的入口 Skill。它服务的人多半不写代码,靠 AI 把想法变成能跑的东西。最容易踩的坑不是技术,而是需求没说清,AI 朝着错误方向飞速实现。把需求说对,后面省一半返工。
> 套件里还有三个 Skill,在不同时刻用:
> - 需要选技术栈 / 看不懂 AI 给的方案 → vibe-coding-architecture
> - demo 验证过了、要做成正式系统 → vibe-coding-production
> - 开发中 AI 越改越乱 / 改坏退不回去 / AI 忘事 → vibe-coding-survival(开发全程都建议配合它)
| 用户想要 | 怎么办 |
|---------|-------|
| 还不确定要不要做 | 先做阶段零,可能根本不用写代码 |
| 快速跑个 demo 验证想法 | 阶段零 + 阶段一,需求说清就开干,其余先不管 |
| demo 过了,要做成正式系统 | 做完本 Skill,转 vibe-coding-architecture 和 vibe-coding-production |
| 已经在做、过程中失控 | 转 vibe-coding-survival |
判断方法:直接问。"你现在是想先跑个 demo 看看效果,还是打算做一个要长期运行、可能给别人用的正式系统?"
> 账本(流程状态): 本 skill 是流程第一阶段 S1·需求对齐的"自助路径"(访谈式入口是 vibe-coding-prd,两者满足同一个 S1)。开始前读一下 docs/进度账本.md(不存在就照 examples/进度账本-模板.md 建一个,初始化到 S1);这里的"分诊"结论就是账本里 S1.1 的轻/重判定,产出"需求基准描述"对应 S1 的核心退出条件。轻量 demo 不必逐步报门,但别跳过分诊和四要素。
新手最容易把对齐做成"审问"——一口气抛十几个问题,用户答到一半就烦了。好的需求对齐,问得少而准。 在准备每一个问题前,先过这条原则:
> 能自己(或从用户已经说的话)推断出来的,就别问;只把真需要用户拍板的留成问题。
具体两步:
这一步把"深度自适应"落到实处:简单需求轻问快走,复杂需求才展开深问。
非技术用户最怕两件事:一是被一堆开放式问题问懵("你想用什么技术?"——他哪知道),二是 AI 自作主张、闷头跑偏。正确的中间地带是:先把你的理解和默认假设讲出来,每条都做成"一眼能确认"的推荐项,用户点头或换一个即可。
固定结构(卡住时直接照搬):
我先把需求理解一下,下面这些是我替你定的默认值(不对就直接说,我改):
1. 谁在用:自己一个人用 [✓ 就这样] [换一个:给同事/给客户…]
2. 它活在哪:本机双击运行的小脚本 [✓ 就这样] [换一个:网页/常开服务器…]
3. 数据存哪:结果直接写回原文件夹 [✓ 就这样] [换一个:要长期保存/要数据库…]
4. 成本:不调用任何要花钱的服务 [✓ 就这样] [换一个:可以接受 AI 接口按量计费]
(最多 5 条,每条一句话。你不回,我就按这些往下走。)
> 这正是本套件"你有权说不""渐进式复杂度"两条信条的默认动作:不审问、不擅自做主,用推荐项把决定权轻轻交还给用户。
写代码不是默认选项,是其中一个选项。开工前花两分钟做这个 gut-check,可能直接省掉整个项目:
如果这三个问题让你发现"其实不用写代码",那是最大的省事。
目标: 把模糊想法,转化成 AI 能精准理解、不会跑偏的需求描述。
非技术用户最常见的失误,是直接描述"我想要的功能",而不是"我要解决的问题"。这会让 AI 锁死在你想象的某个实现上,错过更简单的做法。
| 别这么说(描述方案) | 这么说(描述问题) |
|--------------------|------------------|
| "我要一个能上传 Excel 的后台" | "我每天要把客户发来的 Excel 整理成报表,手工做要两小时" |
| "做个带登录的网站" | "我想让几个同事各自查看自己负责的数据,别人看不到" |
先说问题,再说你设想的方案(如果有),并告诉 AI:"这是我的设想,有更简单的做法可以推翻它。"
逐条想清楚,再合并成一段话:
references/方法论/PM-方法论.md 的「EARS 验收格式」。把四要素合并成 100–200 字的需求基准描述。后续每次跟 AI 对话,都把它贴在前面,确保 AI 不偏航。
> 约束这一项最容易被新手省略,却最关键:需求里有约束,方案才能被约束。 你不告诉 AI 你只有一台小服务器、不会写代码、要控成本,它就默认按"大厂标准"给你一套又重又复杂、你根本养不起的方案。
业务上的事你说了算,技术上的事交给 AI。
| 你必须说清楚 | 可以交给 AI 决定 |
|------------|----------------|
| 谁用、用来干什么 | 用什么编程语言、什么框架 |
| 具体业务规则(如"超过 100 元才包邮") | 数据怎么存、文件怎么组织 |
| 你能接受的使用方式(网页?命令行?) | 用什么库、怎么实现某个功能 |
| 哪些情况绝对不能出错 | 代码风格、目录结构 |
别去改代码,改你的描述。 描述"差距",而不是指挥 AI 怎么改:
报错了,把完整的错误信息原样复制给 AI,加一句"这是报错,帮我看怎么回事"。看不懂没关系,AI 看得懂。
反面例子(太模糊,AI 无从下手):
> "我想搭建一个开源项目。"
demo 级正面例子(轻量,验证想法用):
> 场景:我一个人用,在自己电脑上跑。目标:我有一个文件夹全是杂乱图片,想按拍摄日期自动归类到子文件夹,省去手工整理。约束:我不会写代码,用 AI 写,希望双击就能运行,不想装一堆复杂环境,原图绝不能丢。验收标准:我指定一个文件夹,运行后里面的图片按"年-月"分好了文件夹,原图都在。
生产级正面例子(要长期运行、对外提供服务):
> 场景:在本地 2核8G Linux 服务器部署,客户通过 HTTP 请求触发。目标:做一个卡密自动发货中间层,客户触发后系统验证身份、从库存分配卡密、转发核心平台完成服务、返回结果。约束:个人维护,不会写代码(用 AI 写),服务器只有一台,需长期稳定运行。验收标准:客户发起请求 → 返回卡密 → 核心平台确认服务完成;支持 token 鉴权、库存管理、操作日志。
>
> (注意:这个例子"动到了钱和库存",正式上线前应找真人工程师把关——详见 vibe-coding-survival 的「红线」。)
输出物: 一段 100–200 字的需求基准描述。把它存进你的「项目说明书」(模板见仓库 examples/项目说明书-模板.md)。
四要素能让你说清"我想要什么",但产品经理最大的需求盲区,是只描述了"一切顺利"那条路径——用户点一下、拿到结果、皆大欢喜。真正完整的需求还得回答:输入坏了怎么办?量太大怎么办?某一步失败了怎么办?我怎么知道它出问题了? 这些你不写进去,AI 就按它的默认猜,通常猜不对。
> 这不是能力问题。工程师能随口说"这里得加个重试",靠的不是灵感,是脑子里"什么会坏"的条件反射。你没这个习惯,是没人教过——下面就把它教给你,而且用的是你本来就会的本事。
你本来就擅长拆"用户旅程":用户先干嘛、再干嘛、在哪一步会卡。把主语从"用户"换成"数据/请求",同一套思维直接复用:
| 你已经会问(用户旅程) | 换个主语(数据旅程) |
|----------------------|-------------------|
| 用户操作有哪些步骤? | 数据从进来到出去,经过哪些环节? |
| 用户在哪一步会卡住? | 数据在哪个环节会堵、会慢? |
| 用户可能犯什么错? | 哪里会收到坏的、假的、重复的输入? |
| 用户的数据安全吗? | 数据会不会丢、会不会泄露? |
先让 AI 帮你把数据旅程画出来:
> "我要做 [项目]。请把数据/请求从进入到输出的每一步,用大白话画出来,每步一句话。"
数据旅程说到底就三段:输入 → 处理 → 输出。对着这三段各问四个问题。每一个答案,都是一条你差点漏掉的需求:
输入 处理 输出
① 会断吗? ① 会出错吗? ① 结果对吗?
② 会太多吗? ② 会很慢吗? ② 会丢吗?
③ 会是假的吗? ③ 会挂吗? ③ 会泄露吗?
④ 断了怎么办? ④ 挂了我怎么知道? ④ 错了我怎么知道?
不用每条现在就解决——但每条你都要给个决定,并写进需求。举例:
一句话让 AI 帮你扫:
> "按'输入 → 处理 → 输出,每段会不会断/太多/造假/出错/变慢/挂掉/丢失/泄露',帮我列出这个项目可能漏掉的情况,每条给一个最简单的处理建议。"
把这三遍读出来的缺口补进需求,你的需求就从"能跑就行"升级到"经得起用"了。
> 量力而行: 随手跑个 demo(比如整理自己的图片),快速扫一遍即可;但凡这东西要给别人用、或一旦出错有代价,这一步千万别省——它正是 demo 和正式系统之间,最容易被忽略的那道坎。完整的风险登记和应对,留给 vibe-coding-production,这里只负责"把该想到的,都写进需求"。
数据旅程一扫,往往冒出十几条新需求。不是每条都要现在做。 用最朴素的优先级判断,把它们分三档:
判断不准时,对每条问两件事就够了:多少人会因此受益(影响面)× 不做会多疼(痛感),再对一眼做它要多大力气。要更正式的打分模型(RICE 四维评分、MoSCoW),见 references/方法论/需求优先级框架.md——但 demo 阶段心里有数即可,别为打分而打分。
vibe-coding-survival 的"贯穿全程四件事"来做,别翻车。vibe-coding-architecture 选好技术、看懂架构,再用 vibe-coding-production 处理上线。> 以下约束来自项目治理配置 harness.json 和 CLAUDE.md。
> 在声称"需求说清了"之前,你必须逐条确认。
> 全过之后:在 docs/进度账本.md 把 S1 相关步骤标 ✅(自助路径产出"需求基准描述"即满足 demo 级 S1 出口;要正式系统再补完整 prd)。
docs/项目说明书.md 中「需求基准描述」已填写(如文件不存在,先创建并填入本节内容)docs/进度账本.md 已存在,S1.1 分诊结论已记录全部通过后声明:
"✅ S1 自助路径出口门通过:需求基准描述已写入项目说明书,覆盖四要素,格式合规,账本已记分诊结论。要做正式系统的话,转 vibe-coding-architecture(S2)。"
Integration with protocols.io API for managing scientific protocols. This skill should be used when working with protocols.io to search, create, update, or publish protocols; manage protocol steps and materials; handle discussions and comments; organize workspaces; upload and manage files; or integrate protocols.io functionality into workflows. Applicable for protocol discovery, collaborative protocol development, experiment tracking, lab protocol management, and scientific documentation.
Analyzes job descriptions and generates tailored resumes that highlight relevant experience, skills, and achievements to maximize interview chances
Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.
Build and distribute Expo development clients locally or via TestFlight
Use when you have a written implementation plan to execute in a separate session with review checkpoints
Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.
Benchling R&D platform integration. Access registry (DNA, proteins), inventory, ELN entries, workflows via API, build Benchling Apps, query Data Warehouse, for lab data management automation.
Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.
Take junliu1066/vibe-coding-requirements from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.