Single Flow
Issue/PR なしで計画書からタスクを実行し、コミットメッセージを出力する軽量フロー。
引数
- •
--plan: plan mode で計画書を新規作成してから実行 - •
--help: ヘルプを表示 - •
[タスク説明]: 計画書なしで直接実行(簡単なタスク用)
3つの実行モード
モード 1: 計画書実行モード(デフォルト)
引数なしで実行。既存の承認済み計画書から直接実行。
code
[既存計画書] → ブランチ作成 → 実装 → 自己レビュー → [確認] → コミットメッセージ出力
モード 2: 計画書作成モード(--plan)
plan mode を使って計画書を作成・承認してから実行。
code
[ユーザー入力] → plan mode → 計画書作成 → 承認 → ブランチ作成 → 実装 → ... → コミットメッセージ出力
モード 3: 直接実行モード(タスク説明あり)
計画書を作らず、タスク説明から直接実行。簡単なタスク向け。
code
[タスク説明] → ブランチ作成 → 実装 → 自己レビュー → [確認] → コミットメッセージ出力
実行フロー
code
ブランチ作成 → 実装 → 自己レビュー → [確認] → コミットメッセージ出力
モード判定
- •先頭引数が
--planの場合 → モード 2(計画書作成モード) - •引数が1つ以上あり、
--plan/--help以外の文字列の場合 → モード 3(直接実行モード) - •引数なしの場合 → モード 1(計画書実行モード)
モード 1: 計画書実行モード(デフォルト)
重要: このモードでは plan mode を使用しません。
- •
EnterPlanModeツールを使用しないでください - •計画の承認を求めないでください
- •直接フローを実行してください
ステップ 0: 計画書の読み込み
.claude/plans/ ディレクトリから最新の計画ファイルを読み込みます。
bash
ls -t ~/.claude/plans/*.md | head -1
計画書が見つからない場合:
code
## 計画書が見つかりません 計画書が見つかりませんでした。 ### 代替手段 - `single-flow --plan` で新しい計画を作成 - `single-flow タスク説明` で直接実行
計画書が見つかったら、ステップ 1 から実行。
モード 2: 計画書作成モード(--plan)
EnterPlanMode ツールを使用して plan mode に入ります。
- •ユーザーに実装したい内容を確認
- •
EnterPlanModeを実行して plan mode に入る - •計画書を作成(
.claude/plans/に保存される) - •ユーザーが計画を承認したら、自動的に single-flow の実行フェーズに進む
モード 3: 直接実行モード(タスク説明あり)
重要: このモードでは plan mode を使用しません。
- •
EnterPlanModeツールを使用しないでください - •計画書を作成しないでください
- •タスク説明をそのまま実装の指針として使用してください
タスク説明を確認し、直接ステップ 1 から実行。
共通ステップ(全モード共通)
ステップ 1: ブランチ作成
計画書またはタスク説明から適切なブランチ名を生成します。
bash
git fetch origin main
git checkout main
git pull origin main
git checkout -b feature/{slug}
slug の生成ルール:
- •タスク内容を簡潔な英語キーワードに変換
- •小文字、ハイフン区切り
- •例: 「ユーザー認証機能を追加」→
feature/add-user-auth
ブランチ名プレフィックス(タスク内容から判断):
- •新機能 →
feature/{slug} - •バグ修正 →
fix/{slug} - •ドキュメント →
docs/{slug} - •リファクタリング →
refactor/{slug}
ステップ 2: 実装
計画書またはタスク説明の内容に基づいてコードを実装:
- •必要なファイルを特定
- •コード変更を実施
- •動作確認(可能な場合)
ステップ 3: セキュリティチェック&自己レビュー
セキュリティチェック:
bash
git status
以下のパターンを検出したら警告:
- •
.env*- 環境変数 - •
*.pem,*.key- 秘密鍵 - •
credentials.json- 認証情報 - •
node_modules/,vendor/- 依存パッケージ
自己レビュー:
bash
git diff
以下の観点でチェック:
- •コード品質・命名規則
- •セキュリティ(OWASP Top 10)
- •パフォーマンス(N+1、メモリリーク)
ステップ 4: ユーザー確認
重要: ここでユーザーに確認を求める。
code
## 変更内容の確認
以下の変更を行いました:
{git diff --stat の出力}
### 変更ファイル一覧
{変更ファイルリスト}
### 自己レビュー結果
{レビューで確認した内容のサマリー}
### 推奨コミットメッセージ
{自動生成されたメッセージ}
この内容でよろしいですか?
ステップ 5: コミットメッセージ出力
重要: このフローではコミット・プッシュ・PR作成を行いません。
ユーザー確認後、推奨コミットメッセージを出力して終了:
code
## 実装完了
### 作成されたブランチ
- {ブランチ名}
### 変更サマリー
{git diff --stat の出力}
### 推奨コミットメッセージ
以下のコミットメッセージを推奨します:
{Conventional Commits 形式のメッセージ}
code
**コミットメッセージ形式**:
1. まず `.claude/settings.json` の `git.commitMessage` 設定を確認
2. 設定がある場合はその形式に従う
3. 設定がない場合は Conventional Commits(日本語)を使用
### 次のステップ(手動)
1. 変更をステージ: `git add .`
2. コミット: `git commit -m "{上記メッセージ}"`
3. 必要に応じてプッシュ: `git push -u origin {ブランチ名}`
4. 必要に応じて PR 作成: `gh pr create`
重要な注意事項
- •✅ モード 2 のみ
EnterPlanModeを使用 - •✅ モード 1, 3 では plan mode を使用しない
- •✅ ブランチを作成する(feature/{slug} 形式)
- •✅ コミットメッセージを出力する
- •✅ 機密ファイルを警告する
- •❌ Issue を作成しない
- •❌ 自動でコミット・プッシュしない
- •❌ PR を作成しない
- •❌ main ブランチで直接作業しない