解决 Cursor / Claude Code 的「失忆症」——用一个命令初始化,让 AI 跨会话记住项目上下文,不用每轮重新交代。
🌐 English · 中 / EN
🎬 在线演示(13 页 HTML PPT,← → 翻页,S 演讲者模式)
🔧 快速体验:
npx @ctrip/flow2spec@latest init同样一句话,两段对话:
> 改一下评价模板文案库的批量重评分
没有 Flow2Spec:
AI: 这个模块的表在哪?
AI: batchReScore 是同步还是异步?
AI: 有没有锁?幂等键是什么?
AI: 返回格式是什么?错误码是多少?
AI: (翻遍 416 个接口、796 份文件、4.7 MB 源码…)
反复介绍 · 反复翻代码 · 反复踩坑
有 Flow2Spec:
[matcher 命中] m-product-review-template-library
[加载依赖] 4 个 topic · 约 300 行
AI: 已知 — fire-and-forget
Redis 锁 smp:product-review:template-library:batch-rescore:lock(TTL 10 分钟)
单次最多 100 条 · 错误码 101
AI: 开始改,预计 3 处文件。
4.7 MB → 300 行 · 秒级定位到硬约束
① 跨设备会话记住项目上下文
.Knowledge/ 结构化知识库:路由清单(manifest-routing.json)+ 关键词索引(matchers)+ 主题分片(topics)。AI
启动时只读该读的。
② 路由清单让 AI 不翻仓库,只拿该拿的
每次需求命中 1~4 个 topic,约 300 行。业务的硬约束——锁的 key、错误码、上限——都在
topic 里,AI 不用从源码猜。
③ f2s- 技能改代码顺手更新知识*
/f2s-kb-feat 写功能时同步写 topic,/f2s-kb-fix 修 bug 时更正 topic,
/f2s-git-commit 提交前检查 topic 覆盖。改代码就是记知识,没有"单独维护文档"这件事。
最小可用集是一个空骨架。
npx @ctrip/flow2spec@latest init1 分钟生成目录结构 + 路由配置,空的,直接跑。下次需求命中哪块,写哪块,不提前建设。
真实仓库跑了三个月的数据:
| 指标 | 数值 |
|---|---|
| 对外接口数 | 416 |
| 源码体积 | 796 文件 / 4.7 MB / ~10 万行 |
| Flow2Spec 每次加载 | ≈ 300 行(噪声切掉 99%) |
- 一次性脚本 — 写完就删的东西,直接丢几个 Markdown 给 AI 更快
- 单人小项目 — 一份 CLAUDE.md 就够,路由和分片的开销大于收益
- 团队不愿同步 .Knowledge/ — 工具不能替代纪律
- Usage Guide
- Commands Reference
- Directory Conventions
- Architecture & Principles
- Usage Scenarios
- Design Principles
MIT. Copyright © 2026 兰涛