Live demo · 无需安装

看 Vibe Tutor 怎么
边写边守护你

典型 AI 编程会话中,Vibe Tutor 的 hooks 如何在关键节点自动介入——不打断你的心流,只在该提醒时提醒。

已有代码?看这一段
Day 0 · 接入已有半成品项目
智能识别
You · in Cursor(已写了几周的 SaaS 项目)
/tutor-init
vibe-tutor · 先扫了一眼项目
我扫了一眼你的项目,看到: · 技术栈: TypeScript + Nuxt · 代码量: 47 个源文件 · Git: 23 个 commit,最近 1 天前提交 · 测试: ✓ 有 (tests/) · 部署配置: ✓ vercel.json 我推断你现在到了第 9-10 步附近(测试策略 → 架构设计),置信度 high。 对吗?如果不对,告诉我你觉得应该是第几步。
不问「你的项目想做什么」那种废话——因为代码已经告诉我了。

下面这 4 个 Day 是一个典型的 2 周 MVP 冲刺场景。每个 Day 展示 hooks 的一种介入方式。

Day 2MVP 定义阶段
陷阱拦截
You · in Cursor
帮我把这个项目的 MVP 设计成包含登录、支付、社交分享、邮件通知、消息推送、数据分析、邀请奖励、积分系统的完整方案
vibe-tutor · beforeSubmitPrompt · 检测到 scope creep 关键词
你列了 8 个功能,"完整方案"是经典 scope-creep 信号。 按 Vibe Coding 第 3 步(MVP 定义),MVP 应该满足: · 能在 2 周内做完 · 解决 1 个最痛的问题 · must_have ≤ 5 个 要不要先回答:"如果我下周必须发布,哪 3 个功能不能少?"
这是 /hooks/prompt-check 的实时拦截 — 不是事后复盘,是当场刹车
Day 5AI 开始写代码
主导权提醒
You · in Cursor
AI 写的这段 useEffect + cleanup 看不太懂,但能跑就先用着吧
vibe-tutor · prompt-check · 检测到 AI 依赖关键词
检测到关键词「看不太懂」+「先用着」— 经典 AI 依赖信号。 按 Vibe Coding 第 8 步(理解代码): · AI 写的代码不是黑盒,要能复述意图 · 至少知道"如果我把这行去掉会发生什么" 建议先问 AI:"这段 cleanup 是在防什么问题?没有它会怎样?"
不是阻止你用 AI,是阻止你交出主导权
Day 9功能基本做完
测试提醒
You · in Cursor
把 must_have 的最后一个标记为 completed
vibe-tutor · tutor-sync · 状态一致性检查
你把 must_have 标完成了,但 .vibe/state.json 里 test_history 还是空的。 按 Vibe Coding 第 9 步(测试策略): · 不需要 100% 覆盖 · 但 must_have 的"快乐路径"必须走通一次 要不要花 30 分钟,把每个 must_have 从用户视角点一遍? 点完用 /tutor-sync 记一条测试日志。
不是要你写单元测试,是要你避免"自己都没用过就发布"
Day 11想要继续加功能
陷阱拦截
You · in Cursor
既然都做到这了,顺便把社交分享也加上吧,应该不会很复杂
vibe-tutor · beforeSubmitPrompt · 检测到"既然都做了"模式
"既然都做了" + "顺便" + "应该不会很复杂" — 三个 scope-creep 关键词。 距 deadline 还有 3 天,当前 must_have 都已完成。 按 Vibe Coding 第 14 步(迭代): · 已完成的 MVP > 未完成的"完整版" · 想加的功能记到 out_of_scope,下个迭代再做 建议:先发布、收反馈,下周一根据真实用户需求决定要不要做分享。
这是最常见的"差临门一脚不发布"陷阱
Day 13Free + Pro 都不限频

/tutor-check

14 天后再看:

$ /tutor-check
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Vibe Tutor 健康报告
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
项目: 小型 SaaS · MVP 第 13 天
阶段: 11/14 · 部署上线
总体评分: A- (84/100)
# 7 大陷阱检测
追求完美 ✓ 范围控制良好(命中 1 次, 已止损)
过度依赖 AI ✓ 提交前主动理解关键逻辑
不重视测试 ✓ must_have 测试覆盖率 100%
技术选型 ✓ 全部使用熟悉栈
闭门造车 ⚠ 距上次用户反馈 5 天,临界
开源协议 ✓ 全部依赖为 MIT/Apache-2.0
工具过度配置 ✓ 仍用初始 Cursor + Claude,未折腾配置
# 下一步
▸ 把当前版本发给 3 个朋友试用,避免发布前才发现问题
▸ 设定 Day 14 强制发布,不要为 nice_to_have 推迟

同样的 2 周,没有方法论守护的结果是什么?还在折腾技术选型,或者功能列表越写越长。

⭐ Pro 独有 · 跨项目复盘

做到第 N 个项目后

单项目里看不见的模式,跨项目数据才能发现。

$ /tutor-insight
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Vibe Tutor 跨项目洞察
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
纳入项目: 5 个 (3 个仍在进行)
# 你的薄弱点(按出现频次)
1. 追求完美 命中 5/5 项目 · 通常在第 3 步触发
↳ 下次建议: MVP 列 ≤ 5 个 must_have,超出强制延期
2. 不重视测试 命中 3/5 项目
↳ must_have 完成距首次测试平均 4.2 天
3. 过度依赖 AI 命中 2/5 项目
# 你的产品方向画像
工具类 SaaS · 3 个项目,MVP 中位数 4 个功能
数据 API · 2 个项目,MVP 中位数 3 个功能
# 你的技术习惯
偏好语言: TypeScript (4) · Python (3)
测试纪律: 中等(覆盖率波动大)
scope 控制力: 平均每项目命中 2.4 次 scope-creep
# 本周关注
▸ 当前 MVP 已有 6 个 must_have(超你的历史阈值)
▸ 上次测试 3 天前,低于你的平均节奏

Free 完全本地、完全免费、不联网。Pro 才会把匿名化的项目元数据(触发次数、步骤停留时间)发送到 SaaS 做跨项目聚合。

想在自己的项目里这样?

$ 安装到你的 IDE
npm install -g vibe-tutor
vibe-tutor install all

支持 Cursor / Claude Code / Codex CLI / Qwen Code / Windsurf