コンテンツにスキップ
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統合