RASEN

「不是循环,是螺旋」

[ 意图驱动的自主引擎——自动挡,不是手动挡 ]

原地打转的循环,不过是个圆圈。

Rasen 是一套自主引擎——在你的编码智能体的内循环之外,加装一条工程化的外循环。你只需提供意图——一个目标、一个 bug、一项功能——引擎便自行走完提出 → 实施 → 评审 → 修复 → 交付 → 归档,独立迭代直至完成。软件开发的自动挡:掌控想法,而非代码。

>>> 源码 · github.com/DumoeDss/rasen
版本
0.1.3
许可证
MIT
环境要求
Node.js >= 20.19.0
软件包
npm · @atelierai/rasen
01 / 简报条

意图是起点。螺旋才是抵达的方式。

软件包@atelierai/rasennpm
版本0.1.3构建时读取
许可证MITOpenSpec + Sayo
血统OpenSpecFission-AI,分叉而来
02 / 不是循环——是螺旋

Rasen(螺旋)是一种不断攀升的循环形态。

这就是全部的构思,而它恰好映射了这个工具的实际运作方式。

01

>>>意图是起点。

每一次改动都始于你想要什么,而不是一份你必须写的文档——一个目标、一个 bug、一项功能需求。引擎把它记录进你的 rasen/ 工作区,随即开始工作:/rasen:propose → apply → archive。过程中产出的规格是流水线自身积累的知识,是它的工作记忆,而不是丢回给你的作业。

02

>>>循环是形态。

工作以周期推进,而非一次瀑布式流程。rasen 流水线家族——small-featurebug-fixfull-featureauto-decompose——把一项任务变成提出、实施、评审、交付的成型循环。

03

>>>每一圈都在上升。

这套引擎不只是重复;它在不断取得进展。/rasen:auto 运行一个 LEAD,编排角色隔离的子智能体、能自我纠错的评审循环,以及跨会话传递上下文的交接机制——让每一圈的终点都高于起点。

04

>>>直到取得突破。

/rasen:goal 让螺旋收束于一个条件,而非一份文档:把某项指标推向目标值、让一个模块达到评分标准、持续研究直到简报中的问题被回答——反复修改 → 评判,直至满足门槛。

03 / 你将获得什么

七个模块,一套引擎。

工作流 意图驱动工作流

告诉它要构建什么。引擎会把它变成一个文件夹——提案、规格、设计、任务清单——在工作过程中自行生成并维护,你从不需要亲自动手写:/rasen:propose → /rasen:apply → /rasen:archive

流水线 流水线家族

small-feature / bug-fix / full-feature / auto-decompose 以数据(YAML)形式发布;用 rasen pipeline show|list|classify|resume 查看。新增一种任务类型只需新增一个文件,零代码。

自动驾驶 /rasen:auto

一条命令就能让智能体变成 LEAD,编排角色隔离的子智能体(规划者 / 实施者 / 评审者 / 修复者 / 交付者)走完整条流水线,只在关卡处暂停。

目标循环 /rasen:goal

/rasen:auto 并列,专为"完成"是一个条件而非一份文档的任务而生。LEAD 会将其归类为度量 / 评估 / 研究,并反复修改 → 评判,直至满足门槛或达到轮次上限。

任务拆解 自动拆解

一项过大、无法一次性评审的任务会被拆分为可独立交付的多个子改动,附带依赖 DAG 与保守的串行/并行策略。

浏览器控制 chrome-use

通过 CDP 驱动你真实的 Chrome 的专家:导航、点击、抓取网络流量、注入 JS、读取 cookies 与 localStorage、等待请求——适用于已登录页面、SPA,以及普通 fetch 触及不到的一切。

连续性 上下文感知与交接

rasen agent context 度量真实占用;/rasen:handoff 写下一份精炼的检查点;worker 在软预算触及时自行交接,压缩恢复钩子会在自动压缩后重新定位,让长任务撑过上下文限制。

04 / 实战演示

一次会话,四条命令。

You: /rasen:explore
AI:  What would you like to explore?
You: I want dark mode but I'm not sure how to do it cleanly.
AI:  Let me look at your styling setup...
     Cleanest path here: CSS variables + a small theme context,
     with system-preference detection. No new dependencies. Scope it?
You: Yes, let's do it.

You: /rasen:propose add-dark-mode
AI:  Created rasen/changes/add-dark-mode/
     proposal.md — why we're doing this, what's changing
     specs/       — requirements and scenarios
     design.md    — technical approach
     tasks.md     — implementation checklist
     Ready for implementation!
You: /rasen:apply
AI:  Implementing tasks...
     1.1 Add theme context provider
     1.2 Create toggle component
     2.1 Add CSS variables
     2.2 Wire up localStorage
     All tasks complete!
You: /rasen:archive
AI:  Archived to rasen/changes/archive/2026-01-23-add-dark-mode/
     Specs updated. Ready for the next feature.
05 / 安装

一条命令,然后初始化。

需要 Node.js >= 20.19.0。安装 rasen 绝不会干扰既有的 OpenSpec 配置——命名空间永不重叠。

npm i -g @atelierai/rasen
cd your-project && rasen init

rasen init 会创建一个 rasen/ 工作区(规格与改动),并为你的 AI 编程工具安装 /rasen:* 斜杠命令。升级后运行 rasen update 以刷新指引并获取最新的斜杠命令。

06 / 与 openspec 共存

独立的命名空间,零碰撞。

Rasen 分叉自 OpenSpec(MIT 协议),由 Fission-AI 创建,现由 Sayo 独立维护,与 Fission-AI 无关联。工作流语义与上游 OpenSpec v1.5.0 保持一致——提出 → 实施 → 归档的模型完全相同——但 rasen 运行在独立的命名空间中,因此两者可以同时安装在同一个项目里。

组件
openspec
rasen
可执行文件
openspec
rasen
斜杠命令
/opsx:*
/rasen:*
技能
openspec-*
rasen-*
工作区
openspec/
rasen/

如果你已经有一个 openspec/ 工作区,rasen migrate 是纯复制操作:它会把 openspec/{specs,changes,config.yaml} 复制进 rasen/,已存在的内容会被跳过。你原有的 openspec/ 目录不会被修改或删除。