本文へ移動 →

仕組み

作りたかったことからPR まで、一本の線でつなぐ。

コードを書く AI は、技術的には正しいコードを書きながら、違う問題を解くことがあります。VibePro は、Story から仕様、実装、テスト、レビュー、判断、PR への引き継ぎまでのつながりを、リポジトリの中に残します。あなたと AI は、同じ目的と記録を見て確かめられます。

7つの段階を、リポジトリの中に残す

Intent
  -> Story
    -> Spec
      -> Implementation
        -> Verification
          -> Review / Decision
            -> PR handoff

作りたかったこと → Story → 仕様 → 実装 → テスト → レビューと判断 → PR への引き継ぎ

Story、仕様、テストの結果、レビューの記録、判断、たどるための記録(trace)、PR の要約を、対象リポジトリの .vibepro/ に残します。

作りたい変更を、Story として書く

作りたい変更を Story として書き、リポジトリの .vibepro/ に残します。バグ修正のときは--contract-type bug_fix を付けます。後続の実行と、元データ側からの読み戻しが確かめられるまでは、partial_fix(一部修正)と表示します。

Story を書く
$vibepro init /path/to/repo --story-id story-example --title "変更内容" --language ja
出力.vibepro/stories/story-example

調べてから、仕様を書く

コードを調べてから、あとでたどれる仕様(Spec)を書きます。Graphify を入れていれば、変更が及ぶ範囲の手がかりも加わります(任意)。

調べて仕様を書く
$vibepro story diagnose /path/to/repo --id story-example --run-graphify
$vibepro spec write /path/to/repo --id story-example --draft --input spec.json

テストとレビューの結果を、記録に残す

テストの結果と、Story と仕様に照らしたレビューを記録します。手元でテストが通っただけでは、使う人の問題が解決したとはみなしません。

テストとレビュー
$vibepro verify run /path/to/repo --id story-example --kind unit -- npm test
$vibepro review prepare /path/to/repo --id story-example --role reviewer
$vibepro review record /path/to/repo --id story-example --role reviewer --status pass --summary "StoryとSpecに照らして確認済み"

PR へ、作りたかったことごと引き継ぐ

pr prepare は .vibepro/pr/<story-id>/ に、プログラムが読める形の要約とPR の本文を書きます。実装が Story と仕様にどうつながるかをまとめますが、安全だというお墨付きではありません。

PR を準備する
$vibepro pr prepare /path/to/repo --story-id story-example --base origin/main
出力.vibepro/pr/story-example/

VibeProがやらないこと

VibePro は、AI が何を実行してよいか(サンドボックスやツールの権限)を制限する製品ではありません。扱うのは「何を作るつもりだったか」と「それをあとでたどれるか」です。危ない操作を止められた AI でも、作るものそのものを間違えることはあります。

  • アプリそのものは作りません
  • 何を作るべきかを勝手に決めません
  • 変更が安全かどうかを判断しません
  • コードをマージしません(gh pr merge を実行せず、マージの権限も持ちません)

よりどころは、いつもの GitHub の PR、レビュー、マージの流れです。比較の元になる branch は origin/main と決めつけず、対象リポジトリで実際に使っている既定の branch を指定してください。

Brainbaseとの引き継ぎ

いまの Brainbase 連携は、integration brainbase という別のコマンド群を使います。VibePro から Brainbase の判断を計算し直すことはありません。残すのは参照先と内容の照合値だけです。本文や個人の知識は複製しません。

vibepro integration brainbase bind . --id <story-id> --input <handoff.json>
vibepro integration brainbase event . --id <story-id> --summary "<検証済みの再利用可能な学習>"

以前の vibepro brainbase コマンドは、過去の NocoDB の Story やポートフォリオとの連携を続けて使えるように残しています。

作りたかったとおりに、出荷しよう。