RASEN

円ではない、螺旋だ。

[ 意図駆動の自律基盤——マニュアルではなくオートマ ]

出発点に戻るだけのループは、ただの円にすぎない。

Rasen は自律基盤です——あなたのコーディングエージェントの内側のループを取り囲む、設計された外側のループ。あなたは意図だけを渡します——目標、バグ、機能追加——あとは基盤が提案 → 実装 → レビュー → 修正 → 出荷 → アーカイブを自ら進め、完了するまで反復します。ソフトウェア開発のオートマチックトランスミッション:動かすのはコードではなく、アイデア。

>>> ソースコード · 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

>>>意図が起点。

すべての変更は、あなたが書くべき文書からではなく、あなたのやりたいことから始まる——目標、バグ報告、機能要望。基盤がそれを rasen/ ワークスペースに記録し、すぐに作業へ入る:/rasen:propose → apply → archive。その途中で生まれる仕様書は、パイプライン自身が蓄積していく作業記憶であって、あなたに返される宿題ではない。

02

>>>ループが形。

作業は一度きりのウォーターフォールではなく、周回で進む。rasen のパイプラインファミリー——small-featurebug-fixfull-featureauto-decompose——がタスクを提案・実装・レビュー・出荷という一つの形あるループに変える。

03

>>>一周ごとに上昇する。

この基盤はただ繰り返すのではなく、前進する。/rasen:auto は役割ごとに分離されたサブエージェントを統率する LEAD を動かし、自らの誤りを捕えるレビューサイクルと、セッションをまたいで文脈を運ぶハンドオフ/リレーを備える——だから一周ごとに、始点より高い地点で終わる。

04

>>>突破するまで。

/rasen:goal は文書ではなく条件で螺旋を閉じる:指標を目標値まで押し上げる、モジュールを評価基準どおりに仕上げる、ブリーフに答えが出るまで調査する——修正 → 判定を、ゲートを満たすまで繰り返す。

03 / 得られるもの

7つのモジュール、1つの基盤。

ワークフロー 意図駆動ワークフロー

作りたいものを伝えるだけ。基盤が提案・仕様・設計・タスクリストを含む1つのフォルダを、作業しながら自分で生成・維持する——あなた自身が書く必要はない:/rasen:propose → /rasen:apply → /rasen:archive

パイプライン パイプラインファミリー

small-feature / bug-fix / full-feature / auto-decompose はデータ(YAML)として提供され、rasen pipeline show|list|classify|resume で確認できる。タスク種別の追加はファイル1つの追加だけで、コードはゼロ。

オートパイロット /rasen:auto

コマンド1つでエージェントが LEAD になり、役割ごとに分離されたサブエージェント(planner / implementer / reviewer / fixer / shipper)を統率してパイプラインを進め、ゲートでのみ停止する。

ゴールループ /rasen:goal

/rasen:auto の姉妹機能で、「完了」が文書ではなく条件であるタスク向け。LEAD が measure / evaluate / research に分類し、ゲートを満たすかラウンド上限に達するまで修正 → 判定を繰り返す。

分解 自動分解

1つのレビュー可能な差分に収まらない大きすぎるタスクは、依存関係の DAG と保守的な直列/並列ポリシーを備えた、独立して提供可能な子タスクに分割される。

ブラウザ制御 chrome-use

CDP 経由で実際の Chrome を操作するエキスパート:ナビゲーション、クリック、ネットワークトラフィックの取得、JS の注入、cookie と localStorage の読み取り、リクエストの待機——ログイン済みページ、SPA、普通の fetch では届かないものすべてに対応する。

継続性 コンテキスト検知とハンドオフ

rasen agent context は実際の占有量を計測し、/rasen:handoff は要約したチェックポイントを書き出す。ワーカーはソフト予算に達すると自らハンドオフし、コンパクト復旧フックが自動コンパクト後に再アンカーするため、長時間の実行もコンテキスト制限を乗り越えられる。

04 / 実際に動かしてみる

1つのセッション、4つのコマンド。

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 / インストール

コマンド1つ、そして初期化。

Node.js >= 20.19.0 が必要です。rasen のインストールは既存の OpenSpec 環境を一切妨げません——名前空間は重なりません。

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

rasen initrasen/ ワークスペース(仕様と変更)を作成し、お使いの AI コーディングツールに /rasen:* スラッシュコマンドをインストールします。アップグレード後は rasen update を実行して、ガイダンスと最新のスラッシュコマンドを取得してください。

06 / openspec との共存

独立した名前空間、衝突ゼロ。

Rasen は Fission-AI による OpenSpec(MIT)からフォークされ、現在は 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/ ディレクトリが変更・削除されることはありません。