メインコンテンツにスキップ ナビゲーションにスキップ フッターにスキップ

AIエージェント統合の概要

Claude Code、Cursor、Clineが rdc を通じてRediaccインフラを管理する方法: JSON出力、エージェントイントロスペクション、安全ガードレール。

rdc はもともとエージェントを念頭に置いて設計されています。Claude Code、Cursor、Cline など、サブシェルで rdc を呼び出すAIアシスタントはいずれも、構造化されたJSON出力、機械可読なエラー、そして自律的なRediaccインフラ管理に必要なガードレールを自動的に受け取ります。統合の仕組みを以下に説明します。

なぜセルフホスト + AIエージェントなのか

Rediaccのアーキテクチャはエージェントに適しています:

  • CLIファースト: すべての操作が rdc コマンド、GUIは不要
  • SSHベース: トレーニングデータからエージェントが最もよく知っているプロトコル
  • JSON出力: すべてのコマンドが一貫したエンベロープ付きの --output json をサポート
  • Docker分離: 各リポジトリが独自のデーモンとネットワーク名前空間を持つ
  • スクリプト化可能: --yes で確認をスキップ、--dry-run で破壊的操作をプレビュー

統合アプローチ

1. AGENTS.md / CLAUDE.md テンプレート

最も手軽な開始方法です。AGENTS.md テンプレートをプロジェクトルートにコピーしてください:

  • Claude Code用に CLAUDE.md
  • Cursor用に .cursorrules
  • Windsurf用に .windsurfrules

配置するだけで、エージェントは推測せずに動作するために必要な完全なコマンドリファレンス、アーキテクチャコンテキスト、および規約を取得できます。

2. JSON出力パイプライン

エージェントがサブシェルで rdc を呼び出すと、出力は自動的にJSONに切り替わります(非TTY検出)。すべてのJSONレスポンスは一貫したエンベロープを使用します:

{
  "success": true,
  "command": "machine query",
  "data": { ... },
  "errors": null,
  "warnings": [],
  "metrics": { "duration_ms": 42 }
}

エラーレスポンスには retryableguidance フィールドが含まれます:

{
  "success": false,
  "errors": [{
    "code": "NOT_FOUND",
    "message": "Machine \"prod-2\" not found",
    "retryable": false,
    "guidance": "Verify the resource name with \"rdc machine status\" or \"rdc repo list\""
  }]
}

エージェント向けの主要フラグ

フラグ用途
--output json / -o json機械可読なJSON出力
--yes / -yインタラクティブな確認をスキップ
--quiet / -q情報的なstderr出力を抑制
--fields name,status出力を特定のフィールドに限定
--dry-run破壊的操作を実行せずにプレビュー

安全性とガードレール

CLIはターミナルの人間とエージェントを同一視しません。機密性の高い操作には、現在の状態を既に把握していることの証明(--current フラグ)が必要です。インタラクティブエディタのフローはデフォルトで拒否され、すべての拒否は監査ログに記録されます。AIエージェントの安全性とガードレールのリファレンスには、ファイアウォールテーブル全体、ナレッジゲートモデル、REDIACC_ALLOW_CONFIG_EDIT スコープオーバーライド、ハッシュチェーン監査ログの詳細が記載されています。

次のステップ