Zenn Dev Akasara Articles 2b6db248c05792
OpenClawからClaude Codeを操縦する実践ガイド
- URL: https://zenn.dev/akasara/articles/2b6db248c05792
- 日付: 2026-06-26
- Tier: Tier 3
- 要旨: OpenClawをオーケストレータとしてClaude Codeを作業員として動かす際の設計原則は「管理職と作業員の責務分離」にある。CLI(claude -p のワンショット)、SDK(query()/ClaudeSDKClient)、Skills、Agents、Hooks、MCPという12パターンの操作方法を組み合わせて無人運用を構築できる。安全な自動化の基本は「–toolsで絞り→–allowedToolsで無人化→–max-budget-usdで上限設定」の三段構えで、並列実行には-w/–worktreeによる隔離が必須だ。OpenClawからの出力は–output-format jsonで構造化し、MCP双方向連携ではclaude mcp serveでClaude Code自体をMCPサーバとして公開することも可能だ。
詳細
OpenClawオーケストレータからClaude Codeを操作する12パターンの全体像と安全な運用設計を解説した実践記事。
12パターンの操作方法(3方向):
- タスクを投げる: claude -p(ワンショット)/ –resume/-r(セッション再開)/ –continue/-c(直前会話継続)/ –fork-session(枝分かれ)/ –mcp-config(MCP接続)/ -w/–worktree(隔離実行)
- 結果を受け取る: stdout JSON(–output-format json)/ Hooks(Stopイベント)/ ファイル出力(MD/JSON)
- 双方向: .mcp.json / claude mcp serve / SDK MCP(@tool)
cron向け安全テンプレートの要素:
- timeout 300 でタイムアウト設定
- –output-format json + –json-schema で構造化出力
- –permission-mode plan で読み取り専用分析を標準化
- –tools “Read,Grep,Glob” + –allowedTools で許可ツールを絞り込み
- –max-turns 5 + –max-budget-usd 2.00 で上限設定
- –no-session-persistence で永続化を切る
並列実行と隔離:
- -w/–worktreeで/.claude/worktrees/に隔離環境を作成
- 複数worktreeが独立したgit worktreeとして動くためファイル衝突なし・mainブランチ汚染なし
Python SDK:
- query()スタイル: async for msg in query(…)でストリーム取得するワンショット
- ClaudeSDKClientスタイル: セッション維持でマルチターン(分析→修正→テストの連続WFに最適)
- @tool + create_sdk_mcp_server() でOpenClawの機能をClaude側にツールとして動的登録可能
段階的導入推奨: cron1本 → worktree並列 → Skills/Hooks → SDK統合