| name | pi-issue-runner |
| description | GitHub IssueからGit worktreeを作成し、ターミナルマルチプレクサ(tmux/Zellij)のセッション内で別のpiインスタンスを起動してタスクを実行します。並列開発に最適。 |
Pi Issue Runner
GitHub Issueを入力として、Git worktreeを作成し、ターミナルマルチプレクサ(tmux/Zellij)のセッション内で独立したpiインスタンスを起動します。
クイックリファレンス
scripts/run.sh <issue-number> [options]
Options:
-i, --issue <number> Issue番号(位置引数の代替)
-w, --workflow <name> ワークフロー名(省略時: workflows セクションがあれば auto、なければ default)
--list-workflows 利用可能なワークフロー一覧を表示
--no-attach バックグラウンドで起動
--no-cleanup 自動クリーンアップを無効化
--reattach 既存セッションにアタッチ
--force 強制再作成
-b, --branch <name> カスタムブランチ名
--base <branch> ベースブランチ
--skip-run run:/call: ステップをスキップ
--no-gates --skip-run のエイリアス(後方互換性)
--agent-args <args> エージェントに渡す追加の引数
--pi-args <args> --agent-args のエイリアス(後方互換性)
-l, --label <label> セッションラベル(識別用タグ)
--ignore-blockers 依存関係チェックをスキップして強制実行
--show-config 現在の設定を表示(デバッグ用)
--list-agents 利用可能なエージェントプリセット一覧を表示
--show-agent-config エージェント設定を表示(デバッグ用)
-v, --verbose 詳細ログを表示
--quiet エラーのみ表示
scripts/run-batch.sh <issue>... [options]
scripts/run-batch.sh 42 43 44 --dry-run
scripts/run-batch.sh 42 43 44 --sequential
scripts/next.sh
scripts/next.sh -n 3
scripts/next.sh -l feature
scripts/next.sh --json
scripts/next.sh -v
scripts/init.sh
scripts/init.sh --full
scripts/init.sh --minimal
scripts/init.sh --force
scripts/generate-config.sh
scripts/generate-config.sh --dry-run
scripts/generate-config.sh --no-ai
scripts/generate-config.sh --validate
scripts/context.sh show <issue>
scripts/context.sh show-project
scripts/context.sh add <issue> <text>
scripts/context.sh add-project <text>
scripts/context.sh edit <issue>
scripts/context.sh list
scripts/context.sh clean [--days N]
scripts/context.sh export <issue>
scripts/context.sh remove <issue>
scripts/list.sh
scripts/mux-all.sh -w
scripts/dashboard.sh
scripts/dashboard.sh --compact
scripts/dashboard.sh --json
scripts/dashboard.sh --watch
scripts/attach.sh <session>
scripts/status.sh <session>
scripts/stop.sh <session>
scripts/sweep.sh
scripts/sweep.sh --dry-run
scripts/sweep.sh --force
scripts/sweep.sh --check-errors
scripts/cleanup.sh <session>
scripts/force-complete.sh <session>
scripts/force-complete.sh 42 --error
scripts/restart-watcher.sh <session>
scripts/restart-watcher.sh 42
scripts/nudge.sh <issue-number>
scripts/nudge.sh 42 --message "続けてください"
scripts/run.sh 42
scripts/run.sh 42 -w frontend
scripts/run.sh 42 -w auto
scripts/run.sh 42 --workflow ci-fix
scripts/improve.sh
scripts/improve.sh --dry-run
scripts/improve.sh --review-only
scripts/improve.sh --max-iterations 2
scripts/improve.sh --auto-continue
scripts/wait-for-sessions.sh 42 43
前提条件
- Bash 4.0以上 (macOSの場合:
brew install bash)
gh (GitHub CLI、認証済み)
tmux または zellij (ターミナルマルチプレクサ)
pi
jq (JSON処理)
yq (オプション - YAML解析の精度向上。なくても動作します)
非同期実行について
重要: run.sh を実行すると、バックグラウンドで watch-session.sh が自動起動し、完了を監視します。
そのため、wait-for-sessions.sh を呼ぶ必要はありません。
scripts/run.sh 42 --no-attach
scripts/status.sh 42
scripts/list.sh
wait-for-sessions.sh は特殊なケース(複数セッションの同期待機が必要な場合など)にのみ使用してください。
自動クリーンアップ
タスク完了時またはエラー発生時にAIが特定のマーカーを出力すると、
watch-session.sh が検出して適切な処理を実行します。
マーカー形式
| マーカー | 説明 | 動作 |
|---|
###TASK_COMPLETE_<issue_number>### | 正常完了 | 自動クリーンアップ実行 |
###TASK_ERROR_<issue_number>### | エラー発生 | 通知送信、手動対応待ち |
動作フロー
run.sh がバックグラウンドで watch-session.sh を起動
watch-session.sh がセッションの出力を監視
- マーカー(例:
###TASK_COMPLETE_42### または ###TASK_ERROR_42###)を検出
- 完了マーカーの場合は自動的に
cleanup.sh を実行、エラーマーカーの場合は通知を送信
自動クリーンアップの無効化
scripts/run.sh 42 --no-cleanup
メッセージ送信
実行中のセッションにメッセージを送信して、続行を促すことができます。
scripts/nudge.sh <issue-number> [options]
scripts/nudge.sh 42 --message "続けてください"
| オプション | 説明 |
|---|
-m, --message TEXT | 送信するメッセージ(デフォルト: "続けてください") |
-s, --session NAME | セッション名を明示的に指定 |
ワークフロー選択ガイド
-w オプションでワークフローを指定できます。プロジェクトの .pi-runner.yaml に workflows セクションが定義されている場合、-w 省略時は自動的に auto(AI自動選択)になります。
auto モードの動作
auto モードでは2段階で処理されます:
- 事前選択:
pi --print + 軽量モデル(haiku)でワークフロー名を高速に判定
- プロンプト生成: 選択されたワークフローの
agents/*.md テンプレートが展開された通常のプロンプトを生成
AI呼び出しが失敗した場合はIssueタイトルのプレフィックス(feat: / fix: / docs: 等)によるルールベース判定にフォールバックします。
判断基準
| 状況 | 推奨する -w |
|---|
| Issue内容に応じてAIに任せたい | 省略(auto)または -w auto |
| CI失敗の修正 | -w ci-fix |
| typo・設定変更など小さな修正 | -w simple |
| 特定のワークフローを使いたい | -w <name>(例: -w frontend) |
利用可能なワークフロー確認
scripts/run.sh --list-workflows
詳細ドキュメント
詳しい使い方、設定、トラブルシューティングは README.md を参照してください。