TerraVision について
TerraVisionは、テキストの説明、Terraform、JSONグラフから AWS、Azure、Google Cloud の構成図を作るオープンソースツールです。クラウドアカウントにアクセスせずローカルで動作し、図から Terraform も生成できます。
主な機能
- 01AWS、Azure、Google Cloud の構成図作成
- 02terraform plan からの図の生成
- 03構成図からの Terraform 生成
- 04編集可能な draw.io 図とインタラクティブ HTML の出力
- 05GitHub Action による変更時の図の再生成
- 06CLI と JSON グラフ入力
活用シーン
- 01説明文からクラウド構成図を作成
- 02デプロイ前の Terraform 構成を図示
- 03Terraform の変更時に CI で図を再生成
- 04リソース設定をクリックで確認できる HTML 文書の公開
MCP 対応
TerraVision は、Claude、ChatGPT、Copilot、Cursor などの MCP クライアント向けに MCP サーバーとして動作します。クライアントから図の作成を依頼でき、画像、SVG、draw.io ファイルなどを出力します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
TerraVision
Claude、ChatGPT、または Terraform での説明から、AWS、Azure、GCP 公式スタイルのプロフェッショナルなクラウドアーキテクチャ図を作成
🌐 terravision.online · 📖 ドキュメント全文 →
TerraVision は、AWS、Azure、Google Cloud 向けの無料オープンソースのクラウドアーキテクチャ図ジェネレーターです。双方向に利用できます。設計からコードへ(AI アシスタントに説明し、図を作成してから Terraform を生成)と、コードから図へ(Terraform がデプロイする内容を図にする)に対応しています。
AI アシスタントに平易な言葉でクラウドアーキテクチャ図を依頼すると、クラウドアーキテクトが描くような図を作成できます。AWS、Azure、GCP の公式アイコンを使い、すべてのリソースを VPC、サブネット、ゾーン、またはリソースグループ内に配置します。説明からでも、Terraform コードからでも、またはその逆に、図から Terraform を生成することもできます。TerraVision はお使いのコンピューター上で動作し、クラウドへのアクセスは必要ありません。
本番環境へのアクセスなしで、本番環境を描画。
TerraVision はコードだけをもとに、Terraform がデプロイする予定のものを描画します。インフラストラクチャはまだ存在していなくてもよく、デプロイ先のアカウントへのアクセスも必要ありません。稼働中のクラウドスキャナーでは実現できません。仕組みを見る →
90 秒の紹介動画を見る
ギャラリー
各クラウドで同じ3層構成を紹介し、さらに各クラウドの代表的な例も掲載しています。すべての例にプロンプトとソースファイルが付属しています:ギャラリー全体を見る →
![]() AWSの3層ウェブアプリ | ![]() Azureの3層ウェブアプリ | ![]() Google Cloudの3層ウェブアプリ |
![]() AWSのKarpenterを使用したEKS | ![]() Azureのハブアンドスポーク型ランディングゾーン | ![]() Google CloudのPrivate Service Connectを使用したGKE |
ギャラリーにはさらに次の例があります:AWSのサーバーレスイベント駆動型 · AWSのデータレイク · AWSのマルチリージョンフェイルオーバー · AWSのマルチアカウントネットワーク · Azure AKS · Google Cloudのデータパイプライン
ClaudeまたはChatGPTで始める
TerraVisionはClaude Desktopでは拡張機能として、ChatGPT desktop appではプラグインとしてインストールでき、図はチャット内に直接表示されます。Claude Code、Codex CLI、GitHub Copilot、Cursor、その他あらゆるMCPクライアントでも動作します。
1. 前提条件をインストールする(一度だけ)
TerraVision では、図を描画するための Graphviz と Git が必要です。uv は、Claude Code、Codex、Antigravity CLI、その他の MCP クライアントで TerraVision を実行します。Claude Desktop は Windows と macOS では独自のものを同梱しているため、そこでのインストールは不要です。Terraform コードから図を描画する場合に限り、Terraform が必要です。
macOS
Homebrew を使う場合:
brew install graphviz git
brew install uv # not needed for Claude Desktop
brew install hashicorp/tap/terraform # optional: to draw from Terraform code
Windows
PowerShell で実行します:
winget install --id Graphviz.Graphviz -e
winget install --id Git.Git -e
winget install --id astral-sh.uv -e # not needed for Claude Desktop
winget install --id Hashicorp.Terraform -e # optional: to draw from Terraform code
その後、新しいターミナルを開き、AI アプリを再起動して、新しいプログラムが認識されるようにしてください。
Linux(Debian、Ubuntu)
sudo apt install graphviz git
# Ubuntu 26.04 and later only (also Debian 14 "forky"/testing).
# Skip on older releases such as Ubuntu 24.04: graphviz already includes it.
sudo apt install libgvplugin-neato-layout8
curl -LsSf https://astral.sh/uv/install.sh | sh # Claude Desktop on Linux needs uv pre-installed
# optionally install terraform, to draw from Terraform code: HashiCorp's apt repository
wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install terraform
その他のディストリビューションについては、HashiCorp のインストールガイドをご覧ください。
管理者権限がない場合、またはパッケージマネージャーがない場合は、各ツールをホームフォルダーに展開して PATH に追加できます:インストールガイド。
2. アシスタントを接続する
Claude Desktop: 最新リリースから terravision-<version>.mcpb をダウンロードして開きます(または Settings → Extensions にドラッグします)。図はチャット内に直接表示され、画像を開く、draw.io で編集する、保存先フォルダーを表示する、ソースを確認するといった操作をボタンから行えます。
Claude Code(ターミナル、VS Code、または JetBrains):
claude plugin marketplace add patrickchugh/terravision
claude plugin install terravision-cloud-diagrams@terravision
その後、新しい Claude Code セッションを開始します。図はプロジェクト内の diagrams フォルダーに保存されます。初回起動時に /mcp で TerraVision の接続失敗が表示される場合(インストールに Claude Code の待機時間以上かかることがあります)は、Reconnect を選択するか、uvx --from "terravision[mcp]" terravision --version で事前にインストールしてください。
ChatGPT デスクトップアプリと OpenAI Codex CLI: デスクトップアプリで Settings を開き、マーケットプレイス https://github.com/patrickchugh/terravision を追加してから、terravision-cloud-diagrams を選択します。CLI の場合:
codex plugin marketplace add https://github.com/patrickchugh/terravision
codex plugin add terravision-cloud-diagrams@terravision
Google Antigravity CLI(agy):
agy mcp add terravision -- uvx --from "terravision[mcp]" terravision mcp --output-dir /path/for/diagrams
GitHub Copilot を搭載した VS Code、Cursor、その他の MCP クライアント: uvx --from "terravision[mcp]" terravision mcp --output-dir <folder for diagrams> を実行する MCP サーバーを追加します。各クライアントの設定と、スキルのみをインストールする npx skills add patrickchugh/terravision の手順は、セットアップガイドをご覧ください。
3. 図(またはコード)を依頼する
| 用意するもの | 依頼の例 | 得られるもの |
|---|---|---|
| アイデア | 「AWS の 3 層アプリを描いてください。CloudFront 上の React、2 つの AZ にある ALB の背後の ECS Fargate、RDS Multi-AZ 上の SQL Server」 | 図(PNG、SVG、編集可能な draw.io)とそのグラフが得られます。「ElastiCache を追加して」「リクエストがどのように流れるかを示して」のように依頼して調整できます |
| TerraVision で生成した、お気に入りの図 | 「このアーキテクチャの Terraform を書いてください」 | リソース、ゾーン、接続の Terraform が得られます。図のフローとラベルも維持されます(品質は使用するモデルによって異なります) |
| ローカルまたは GitHub 上にある Terraform コード。ただし、VERIFIED な図はない | 「./infra の Terraform のアーキテクチャを描いてください」 または 「https://github.com/patrickchugh/testcase-bastion//examples のクラウドアーキテクチャ図を見せてください」 | terraform plan がコードによってデプロイされると示す内容の図が得られます |
| HTML ドキュメントで公開したい、またはセキュリティ監査などでリソースごとにレビューしたい、自分の Terraform の TerraVision 図 | 「この図をインタラクティブにしてください」 または 「クリックして内容を確認できるインタラクティブ版を作成してください」 | サーバー不要で、どのブラウザーやドキュメントサイトでも動作する単一の HTML ページが得られます。リソースをクリックして設定(暗号化、パブリックアクセス、ポート、IAM)を確認したり、検索やズームをしたりできます。terraform plan から生成されるため、画像だけではなく Terraform が必要です |
| リポジトリに既存の TerraVision 図がある Terraform | 「CI でこの図を最新の状態に保ってください」 | Terraform が変更されるたびに図を再描画するワークフローが得られます |
最初の図は、TerraVision のインストール中に少し時間がかかります。不足しているものがあれば、アシスタントがインストールするものを案内します。いつでも確認するには、「TerraVision は正しくセットアップされていますか?」と尋ねてください。
プロンプト例をさらに掲載した完全なガイドはこちらです:AI アシスタントで TerraVision を使う。
CI/CD で図を最新の状態に保つ
TerraVision GitHub Action に Terraform を指定すると、変更のたびに図が再描画されます:
- uses: hashicorp/setup-terraform@v3
- uses: patrickchugh/terravision-action@v2
with:
source: ./infrastructure
outfile: docs/architecture
format: both
Terraform の隣に terravision.yml を置くと、すべてのバージョンにタイトル、番号付きフロー、接続ラベルが追加されます。GitLab、Jenkins、Azure DevOps などについては、CI/CD 連携をご覧ください。
TerraVision を選ぶ理由
- ✅ AI アシスタント向けに設計:Claude、ChatGPT、Codex、Copilot、Cursor 用の拡張機能とプラグインを提供し、チャット内に図を表示します(ガイド)
- ✅ 確かな正確性:
terraform planから描画するため、コードが信頼できる唯一の情報源となり、表示される内容がそのままデプロイされます - ✅ 本番環境へのアクセスなしで本番環境を描画:インフラが実際に存在する必要はなく、デプロイ先のアカウントへのアクセスも不要です。1 つのコードベースで、各環境の変数ファイルから開発、ステージング、本番環境を描画できます(方法)
- ✅ 公式アイコンと規約:AWS、Azure、GCP のアイコンを使用し、すべてのリソースを VPC、サブネット、ゾーン、またはリソースグループ内に配置します
- ✅ JSON グラフ入力:数行の JSON でアーキテクチャを記述でき、独自の DSL を学ぶ必要はありません(グラフ形式)
- ✅ 100% クライアントサイド:ローカルで実行でき、クラウドへのアクセスは不要です。コードがマシンの外に出ることはありません
- ✅ インタラクティブな HTML と編集可能な draw.io 出力、フロー注釈(YAML または Ollama、Bedrock による AI 生成)、Terragrunt のサポート。無料でオープンソース
比較
| TerraVision | 手動ツール (draw.io、Lucidchart、Visio) | AI ワークスペース (Eraser) | コードとしての図 (Mermaid、D2、Python Diagrams) | ライブクラウドスキャナー (例:Cloudcraft) | |
|---|---|---|---|---|---|
| 平易な英語の説明から図を作成 | ✅ すでに使用しているアシスタント(Claude、ChatGPT、Copilot)内で利用できます | ✅ | |||
| Terraform から図を作成 | ✅ terraform plan から作成。クライアント側で処理します | ||||
| アクセス権のない環境、またはまだ構築されていない環境の図を作成 | ✅ コードと変数ファイルだけから作成できます。インフラが存在している必要はなく、デプロイ先のアカウントへのアクセスも不要です。--varfile prod.tfvars で本番環境を、--varfile dev.tfvars で開発環境を描画します | ||||
| デザインの Terraform を作成 | ✅ アシスタントが作成し、AI が記述したコードを再描画して検証します | ||||
| 公式アイコンと VPC、サブネット、ゾーンのグループ化規則 | ✅ 組み込み済みです | ||||
| 自動的に最新の状態を維持 | ✅ CI でコードから再描画します | ✅ ライブアカウントに追従します | |||
| 高度なセキュリティ — クラウドアカウントへのアクセスもコードのアップロードも不要 | ✅ | ✅ | ✅ | ||
| 価格 | 無料、オープンソース | 無料から有料まで | 無料プラン、有料プラン | 無料、オープンソース | 有料 |
| すでに手作業で描いていますか?TerraVision で最初のバージョンを生成し、エクスポートしたファイルを draw.io や Lucidchart で仕上げましょう。詳しい比較はこちら:TerraVision と draw.io、Lucidchart、Eraser、Mermaid などの比較。 |
対応クラウドプロバイダー
| プロバイダー | ステータス | リソースタイプ |
|---|---|---|
| AWS | ✅ 完全対応 | 427 種類 |
| Google Cloud | ✅ 完全対応 | 267 種類 |
| Azure | ✅ 完全対応 | 263 種類 |
全リスト:ノードタイプ。
コマンドラインから使う
TerraVision はコマンドラインツールとしても利用でき、スクリプトで使う場合や、自分でグラフを書きたい場合に便利です。
インストール
pipx install terravision # or: uv tool install terravision
# or: pip install terravision in a virtual env
Python 3.11 以降(uv がインストールします)、Graphviz、Git も必要です。また、Terraform コードから図を作成する場合は Terraform 1.x(または OpenTofu)も必要ですが、JSON グラフでは不要です。プラットフォーム別の手順、Docker、Nix については、インストールガイドをご覧ください。
JSON から図を作成する(Terraform 不要)
各キーは <terraform_resource_type>.<name>、各値は接続先または包含するものです。形式はこれだけです。
{
"tv_aws_users.users": ["aws_cloudfront_distribution.cdn"],
"aws_cloudfront_distribution.cdn": ["aws_s3_bucket.static_site", "aws_alb.api"],
"aws_vpc.main": ["aws_subnet.public~1", "aws_subnet.private~1"],
"aws_subnet.public~1": ["aws_alb.api"],
"aws_subnet.private~1": ["aws_lambda_function.orders"],
"aws_alb.api": ["aws_lambda_function.orders"],
"aws_lambda_function.orders": ["aws_dynamodb_table.orders", "aws_sqs_queue.events"]
}
terravision draw --source architecture.tvg.json --format svg
AWS(aws_*)、Azure(azurerm_*)、GCP(google_*)で動作します。詳しい仕様、スキーマ、Azure と GCP の例については、グラフ形式をご覧ください。
Terraform から図を作成する
terravision draw --source ./path-to-your-terraform --show # local directory
terravision draw --source https://github.com/user/repo.git//subfolder --show # public Git repo
terravision draw --source ./path-to-your-terraform --varfile prod.tfvars # draw prod without prod access
terravision visualise --source ./path-to-your-terraform --show # interactive HTML
図は terraform plan から生成されるため、コードが実際にデプロイする内容を示します。条件分岐、count、for_each、モジュールは解決されます。Eraser などは AI が想像した内容を描きますが、TerraVision はコードがデプロイする内容を明らかにします。
出力形式、事前生成プラン、AI による注釈、簡易表示、すべてのオプション(terravision --help)については、使用ガイドをご覧ください。
インタラクティブなデモを試す
- 🟧 AWS デモ:CloudFront、RDS、EFS を備えた ECS Fargate 上の Wordpress
- 🟦 Azure デモ:ロードバランサーと VNet を備えた VM スケールセット
- 🟩 GCP デモ:GCP の主要なネットワーク機能とコンピューティング
ドキュメント
すべてのドキュメントは patrickchugh.github.io/terravision にあります(AI エージェント向けの llms.txt もあります)。
- TerraVision の使い方: インストール · 使用ガイド · 本番環境へのアクセスなしで本番環境を図示 · 注釈 · CI/CD · MCP サーバー · FAQ · トラブルシューティング
- 図の生成ツール: クラウド · AI(説明から図を作成) · 図から Terraform を生成 · AWS · Azure · Google Cloud · Terraform · 他のツールとの比較
- 協力者向け: 貢献方法 · 開発者ガイド · リソースハンドラーガイド · 憲章
貢献とサポート
TerraVision では、招待されたコラボレーターからのプルリクエストのみ受け付けています。バグ報告、機能リクエスト、ご質問は、Issues と Discussions で歓迎しています。バグ報告に記載する内容については、CONTRIBUTING.md をご覧ください。
AGPL-3.0 のライセンスで提供されています。詳細は LICENSE をご覧ください。Graphviz、Terraform、Terragrunt を基盤とし、AWS、Azure、GCP の公式アイコンセットを使用しています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。





