💬 Claude&Claude Code 実践活用術
|
📖 8分
一晩でシステム構築を任せる ― 自律型開発の実践
一晩でシステム構築を任せる ― Agent SDKの活用
Claude CodeのAgent SDK(旧ヘッドレスモード)を使えば、対話なしでClaudeに自律的に作業させることができます。寝る前に指示を出して、朝起きたらシステムが完成しているという使い方が可能です。
Agent SDK(-p フラグ)の基本
claude -pで非対話的にClaude Codeを実行します。
# 基本的な使い方
claude -p "auth.pyのバグを見つけて修正して" --allowedTools "Read,Edit,Bash"
# テストスイートの実行と修正
claude -p "テストスイートを実行して失敗をすべて修正して" \
--allowedTools "Bash,Read,Edit"
# コミット作成
claude -p "ステージされた変更を確認して適切なコミットを作成" \
--allowedTools "Bash(git diff *),Bash(git log *),Bash(git commit *)"
--allowedToolsで安全に自律実行
自律実行時には--allowedToolsで使用可能なツールを明示的に指定します。パーミッションルール構文が使えます:
Bash(git diff *):git diffで始まるすべてのコマンドを許可(末尾のスペース+*が重要)Read,Edit,Bash: 読み取り・編集・コマンド実行をすべて許可
構造化された出力
# JSON形式で結果を取得
claude -p "このプロジェクトを要約" --output-format json
# 特定のスキーマで構造化出力
claude -p "auth.pyの関数名を抽出" \
--output-format json \
--json-schema '{"type":"object","properties":{"functions":{"type":"array","items":{"type":"string"}}}}'
# リアルタイムストリーミング
claude -p "再帰について説明" --output-format stream-json
会話の継続
# 最初のリクエスト
claude -p "パフォーマンスの問題をレビュー"
# 最新の会話を続ける
claude -p "データベースクエリに焦点を当てて" --continue
# 特定のセッションを再開(IDまたは名前で指定)
claude -p "レビューを続けて" --resume "セッション名"
一晩構築の実践例
寝る前の仕込み
# 仕様書を読ませてシステム構築を指示
claude -p "$(cat spec.md)
上記の仕様に基づいてREST APIを実装してください。
- データベーススキーマの作成
- CRUD APIの実装
- バリデーション
- テストの作成と実行
すべてのテストが通ることを確認してください。" \
--allowedTools "Read,Edit,Write,Bash" \
--output-format json > result.json
実践のポイント
--allowedToolsで必要最小限のツールだけを許可する- 結果は
--output-format jsonでファイルに保存して後で確認 --append-system-promptで追加の指示(役割設定等)を付加できる