本文へスキップ
BecomeCoder

Claude Codeコース · 第5章 拡張とスケール · レッスン18

ヘッドレス実行 ― 画面なしで走らせる

導入

Claude Code は対話画面なしでも動きます。claude -p "依頼" で一度きりの実行ができ、CIパイプライン・コミット前フック・スクリプトに組み込めます。自動化の入り口です。

説明

基本はこうです。

# 一度きりの質問
claude -p "このプロジェクトが何をするか説明して"

# スクリプト向けに構造化出力(JSON)
claude -p "APIエンドポイントを一覧化して" --output-format json

# リアルタイム処理向けにストリーミング
claude -p "このログを分析して" --output-format stream-json --verbose

出力形式を選べるので、結果をプログラムから扱えます。パイプで他のコマンドにつなぐこともできます。

claude -p "<依頼>" --output-format json | your_command

大量のファイルを一括処理したいときは、claude -pループで回すファンアウトが使えます。無人実行になるので、--allowedTools で権限を絞るのが安全です。

for file in $(cat files.txt); do
  claude -p "$file を React から Vue に移行して。OK か FAIL だけ返して" \
    --allowedTools "Edit,Bash(git commit *)"
done

まず2〜3ファイルで試してプロンプトを調整し、うまくいってから全体に流すのがコツです。

読んでみよう

「対話なしの一発実行は claude -p、機械処理には --output-format json」。CI やスクリプトに組み込めば、Claude Code を自動化の部品として使えます。