[ contents ]
指南

示例与配方

真实变更,从头到尾。每份配方展示你会输入的命令和你会看到的回显,这样你可以把自己的情况匹配到某个模式并照抄。这些使用默认的 core 命令(proposeexploreapplysyncarchive),现成就有;在扩展集合有帮助的地方会注明。

开始之前的一点提醒:像 /rasen:propose 这样的斜杠命令要输入到你的 AI 助手的聊天里,而 rasen 命令要输入到你的 终端里。如果这对你来说是新东西,先读一读命令如何工作。在下面的对话记录里,You:AI: 是聊天,以 $ 开头的行是终端。

还不确定要构建什么? 这些配方大多数在你先用 /rasen:explore 把它想清楚后会更加锋利。配方 3 展示了它的实际运作,先探索指南给出了完整的论证。

配方 1:一个小功能,快速路径

何时使用: 你清楚自己想要什么,并且这是一块范围可控的工作。这是最常见的配方。

整件事就是三条命令。提案、构建、归档。

You: /rasen:propose add-logout-button

AI:  Created rasen/changes/add-logout-button/
     ✓ proposal.md — why and what
     ✓ specs/      — the new requirement and its scenarios
     ✓ design.md   — technical approach
     ✓ tasks.md    — implementation checklist
     Ready for implementation. Run /rasen:apply.

现在读这份方案。打开提案和增量规格。这正是 Rasen 为之而生的时刻:在错误假设还只是一段话、而不是 400 行代码时抓住它。如果哪里不对就直接编辑任何产物,然后继续。

You: /rasen:apply

AI:  Working through tasks...
     ✓ 1.1 Add logout button to header
     ✓ 1.2 Clear session on click
     ✓ 1.3 Add confirmation dialog
     All tasks complete!

You: /rasen:archive

AI:  Archiving add-logout-button...
     ✓ Merged specs into rasen/specs/auth/spec.md
     ✓ Moved to rasen/changes/archive/2026-06-22-add-logout-button/
     Done. Ready for the next change.

就这样。登出行为现在是你规格的一部分,而这份变更带着完整上下文被归档了。

配方 2:一个 bug 修复

何时使用: 某个东西坏了,而你希望这次修复被记录为对行为的一次深思熟虑的变更,而不是一个神秘提交。

bug 修复的工作方式和功能完全一样。区别在于你如何框定提案:描述正确的行为,而不仅仅是"修掉这个 bug"。

You: /rasen:propose fix-login-redirect-loop

AI:  Created rasen/changes/fix-login-redirect-loop/
     The proposal captures the current broken behavior and the
     intended behavior. The delta spec MODIFIES the redirect
     requirement so it's now precise and testable.
     Ready for implementation.

因为这次修复以一条 MODIFIED 需求加上一个全新场景落地,下一个人(或下一个 AI 会话)看到的不仅是你修了它,还有"正确"意味着什么。然后照常 /rasen:apply/rasen:archive

提示:对于一个修复,一个好场景就是用散文写成的回归测试。"GIVEN 一个已登出的用户,WHEN 他们提交有效的凭据,THEN 他们落在仪表盘上且不会被再次重定向。"写下它,实现就有了明确的目标。

配方 3:在承诺之前先探索

何时使用: 你有一个问题,但还没有方案。你不确定要构建什么,或者哪种方法是对的。

/rasen:explore 开始。它是一个思考伙伴,没有结构、也不创建任何产物。它读取你的代码库并帮你做决定。

You: /rasen:explore

AI:  What would you like to explore?

You: Page loads feel slow but I don't know where the time goes.

AI:  Let me look... I found three likely culprits:
     1. Large unoptimized images on the product list
     2. Synchronous data fetching that blocks render
     3. Re-renders triggered by context changes
     Which should we tackle first?

You: The data fetching one.

You: /rasen:propose optimize-product-list-fetching

AI:  Created the change, with a proposal informed by what we just
     found. Ready for implementation.

探索在你为它花费一个变更之前澄清你的思路。当洞见结晶时,提案,而 AI 会把上下文延续下去。

配方 4:同时处理两个变更

何时使用: 你正做到一半的功能被一个紧急修复插了队。

变更之间是独立的文件夹,所以并行工作不会冲突。开始做修复、交付它,然后回到你离开时功能所在的地方。

You: I'm partway through add-dark-mode, but I need to fix a login bug now.

You: /rasen:propose fix-login-redirect

AI:  Created rasen/changes/fix-login-redirect/. Ready for implementation.

You: /rasen:apply

AI:  Implemented the fix. All tasks complete.

You: /rasen:archive

AI:  ✓ Archived fix-login-redirect.

You: Back to dark mode.

You: /rasen:apply add-dark-mode

AI:  Resuming add-dark-mode. Picking up at task 2.3: Update Header...

/rasen:apply add-dark-mode 中命名变更是当有多个变更活跃时怎样把 AI 指向某个特定变更的方法。因为任务在 tasks.md 里追踪完成状态,AI 知道精确地你在哪儿停下的。

有几个变更同时完成时,扩展的 /rasen:bulk-archive 把它们一起归档并通过检查实际实现的内容来解决规格冲突。参见工作流

配方 5:一次重构而无行为变化

何时使用: 你在重新构造代码,而外部可见的行为应该保持一致。

这是有趣的情况,因为纯重构对你的规格没有任何新增。行为契约不改变;只有实现改变。所以这份工作生活在设计和任务里,而规格增量是空的或不存在。

You: /rasen:propose refactor-payment-module

AI:  Created the change. The proposal states the goal (split the
     payment module, no behavior change) and the design captures
     the new structure. No spec changes, since behavior is identical.
     Ready for implementation.

当你归档一个不碰规格的变更时,你可以告诉终端命令跳过规格步骤:

$ rasen archive refactor-payment-module --skip-specs

这个标志对工具、CI 和仅文档的变更也很方便。原则:规格描述行为,所以如果行为没改,规格也不应该改。参见概念

配方 6:逐步控制(扩展命令)

何时使用: 一个复杂或风险高的变更,其中你想在继续之前审查每个产物。

核心 /rasen:propose 一次性起草所有产物。当你宁可一次一个地走时,打开扩展命令:

$ rasen config profile      # select the expanded workflows
$ rasen update              # apply them to this project

现在你可以逐渐地搭建和构建:

You: /rasen:new add-2fa

AI:  Created rasen/changes/add-2fa/. Ready to create: proposal.

You: /rasen:continue

AI:  Created proposal.md. Now available: specs, design.

You: /rasen:continue

AI:  Created specs/auth/spec.md. Now available: design.

当每个产物落地时审查它,自由地编辑,当你满意时继续。当你想让剩下的一次性起草时,/rasen:ff 快进通过剩下的规划产物。在归档之前,/rasen:verify 检查实现是否实际匹配规格。参见工作流

配方 7:亲手学习整个循环

何时使用: 你已经安装了 Rasen 并想在自己的代码上感受这个工作流,而不是一个玩具示例。

打开扩展命令(参见配方 6),然后:

You: /rasen:onboard

AI:  Welcome to rasen! I'll walk you through a complete change
     using your actual codebase. Let me scan for a small, safe
     improvement we can make together...

/rasen:onboard 找到一个真实的(很小的)改进,为它创建一个变更,实现它,并归档它,全程讲述。它花 15 到 30 分钟并留给你一个真实的变更你可以保留或丢弃。这是学习最温和的方式。参见命令

从终端检查你的工作

任何时候,从你的终端,你可以检查事物的状态:

$ rasen list                      # active changes
$ rasen show add-dark-mode        # one change in detail
$ rasen validate add-dark-mode    # check structure
$ rasen view                      # interactive dashboard

这些都是只读检查工具。提案和构建仍然通过聊天中的斜杠命令发生。完整细节见CLI 参考

下一步去哪

  • 先探索:当你不确定时推荐的开始方式
  • 工作流:上面的模式,加上何时使用每个的决策指导
  • 命令:每个斜杠命令的详解
  • 快速入门:规范的首次变更演练
  • 概念:为什么各部分以它们现在的方式契合