この記事はClaude Code v2.1.92(2026年4月時点)を前提としています。
先に結論だけ
Claude Codeを使い始めて、承認プロンプトが多くて煩わしいと感じている方向けのTipsです。複数コマンドを&&で繋ぐか、シェルスクリプトにまとめましょう。
なぜ承認が出るのか
Claude CodeはBashツールの呼び出し1回ごとに承認を求めます。つまり3つのコマンドを別々に実行すれば3回承認が必要です。コミット前にgit status、git diff、git logを順番に確認するような定型操作では、毎回3回の承認プロンプトが表示されます。
手法1: &&でコマンドを繋ぐ
コマンドを&&で連結すれば、1回のBashツール呼び出しにまとまるため、承認は1回で済みます。
Before(3回承認):
git status
git diff
git --no-pager log --oneline -5
After(1回承認):
git status && git diff && git --no-pager log --oneline -5
なお、&&は前のコマンドが成功(終了コード0)した場合のみ次のコマンドを実行します。途中で失敗すると後続のコマンドは実行されません。
手法2: シェルスクリプトにまとめる
定型的な操作をシェルスクリプトに書き出しておけば、スクリプトの実行が1回の承認で済みます。スクリプト内部のコマンドはClaude Codeの承認チェックの対象外です。
手法1と同じ3つのコマンドをスクリプトにまとめると、以下のようになります。
#!/bin/bash
# pre-commit-check.sh
git status
git diff
git --no-pager log --oneline -5
実行時の承認は1回です。
bash ./pre-commit-check.sh