The canvas now fills the window and the chat floats on its right. draw.io is served from our own origin (public/drawio, downloaded at build time and checked against the release's SHA-256), so the app can drive the editor directly: - every AI change becomes a version card with a thumbnail; compare, restore or undo it, and Ctrl+Z on the canvas takes an AI change back in one step - shapes the AI just changed are highlighted on the canvas - selected shapes appear as a chip and are sent to the model - draw.io's own simple UI: its toolbar, menus (auto layout, Mermaid, CSV import) and page tabs; the shape library starts closed - new start screen, session rename and switcher, open .drawio files - settings split into Models & keys, Appearance, Advanced and About - Bedrock in the model settings also takes an API key instead of access keys - phones switch between canvas and chat - dark mode uses draw.io's own dark mode, with neutral greys around it With an external draw.io (NEXT_PUBLIC_DRAWIO_BASE_URL) the features above that need same origin are off. The chat logic moved from the 1500-line chat panel into a chat engine plus small UI components; zustand holds canvas, versions, settings and UI state.
14 KiB
Next AI Draw.io
AI機能とdraw.ioダイアグラムを統合したNext.jsウェブアプリケーションです。自然言語コマンドとAI支援の可視化により、ダイアグラムを作成、修正、強化できます。
注:
ByteDance Doubao のご支援により、デモサイトに強力な glm-4.7 モデルを導入しました!
https://github.com/user-attachments/assets/b2eef5f3-b335-4e71-a755-dc2e80931979
目次
例
以下はいくつかのプロンプト例と生成されたダイアグラムです:
機能
- LLM搭載のダイアグラム作成:大規模言語モデルを活用して、自然言語コマンドで直接draw.ioダイアグラムを作成・操作
- 画像ベースのダイアグラム複製:既存のダイアグラムや画像をアップロードし、AIが自動的に複製・強化
- PDFとテキストファイルのアップロード:PDFドキュメントやテキストファイルをアップロードして、既存のドキュメントからコンテンツを抽出し、ダイアグラムを生成
- AI推論プロセス表示:サポートされているモデル(OpenAI o1/o3、Gemini、Claudeなど)のAIの思考プロセスを表示
- バージョンと取り消し:AI が図を変更するたびに、サムネイル付きのバージョンカードがチャットに表示されます。キャンバスと比較したり、復元したり、その変更を取り消したりできます。キャンバスで Ctrl+Z を押しても AI の変更を一度に元に戻せます。AI が変更した図形はキャンバス上で強調表示されます
- 選択した図形について依頼:キャンバスで図形を選択し、その図形だけを AI に直してもらえます
- インタラクティブなチャットインターフェース:AIとリアルタイムでコミュニケーションしてダイアグラムを改善
- クラウドアーキテクチャダイアグラムサポート:クラウドアーキテクチャダイアグラムの生成を専門的にサポート(AWS、GCP、Azure)
- アニメーションコネクタ:より良い可視化のためにダイアグラム要素間に動的でアニメーション化されたコネクタを作成
MCPサーバー
MCP(Model Context Protocol)を介して、Claude Desktop、Cursor、VS CodeなどのAIエージェントでNext AI Draw.ioを使用できます。
{
"mcpServers": {
"drawio": {
"command": "npx",
"args": ["@next-ai-drawio/mcp-server@latest"]
}
}
}
Claude Code CLI
claude mcp add drawio -- npx @next-ai-drawio/mcp-server@latest
Claudeにダイアグラムの作成を依頼:
「ログイン、MFA、セッション管理を含むユーザー認証のフローチャートを作成してください」
ダイアグラムがリアルタイムでブラウザに表示されます!
MCPサーバーには、Webアプリの主な作図機能が含まれています:
- Webアプリと同じ作図ルールとシェイプライブラリ(AWS、Azure、GCP、Kubernetesなど)
- スクリーンショットツール:AIが描画結果を確認して修正できます
- バージョン履歴、複数ページのダイアグラム、
.drawio・.png・.svg・.drawio.svg形式でのダウンロード ~/.next-ai-drawio/への自動保存:再起動後も続きから編集できます
詳細はMCPサーバーREADMEをご覧ください(VS Code、Cursorなどのクライアント設定も含む)。
はじめに
オンラインで試す
インストール不要!デモサイトで直接お試しください:
自分のAPIキーを使用:自分のAPIキーを使用することで、デモサイトの利用制限を回避できます。チャットパネルの設定アイコンをクリックして、プロバイダーとAPIキーを設定してください。キーはブラウザのローカルに保存され、サーバーには保存されません。
デスクトップアプリケーション
Releases ページからお使いのプラットフォーム用のネイティブデスクトップアプリをダウンロードしてください:
対応プラットフォーム:Windows、macOS、Linux。
Dockerで実行
インストール
- リポジトリをクローン:
git clone https://github.com/DayuanJiang/next-ai-draw-io
cd next-ai-draw-io
npm install
cp env.example .env.local
詳細な設定手順についてはプロバイダー設定ガイドを参照してください。
- 開発サーバーを起動:
npm run dev
- ブラウザでhttp://localhost:6002を開いてアプリケーションを確認。
デプロイ
EdgeOne Pagesへのデプロイ
Tencent EdgeOne Pagesを使用してワンクリックでデプロイできます。
このボタンでデプロイ:
詳細はTencent EdgeOne Pagesドキュメントをご覧ください。
また、Tencent EdgeOne Pagesでデプロイすると、DeepSeekモデルの毎日の無料クォータが付与されます。
Vercelへのデプロイ
Next.jsアプリをデプロイする最も簡単な方法は、Next.jsの作成者によるVercelプラットフォームを使用することです。ローカルの.env.localファイルと同様に、Vercelダッシュボードで環境変数を設定してください。
詳細はNext.jsデプロイメントドキュメントをご覧ください。
Cloudflare Workersへのデプロイ
マルチプロバイダーサポート
- ByteDance Doubao
- AWS Bedrock(デフォルト)
- OpenAI
- Anthropic
- Google AI
- Google Vertex AI
- Azure OpenAI
- Ollama
- OpenRouter
- AIHubMix
- DeepSeek
- SiliconFlow
- ModelScope
- SGLang
- Vercel AI Gateway
AWS BedrockとOpenRouter以外のすべてのプロバイダーはカスタムエンドポイントをサポートしています。
📖 詳細なプロバイダー設定ガイド - 各プロバイダーの設定手順をご覧ください。
サーバーサイドマルチモデル設定
管理者は、ユーザーが個人のAPIキーを提供することなく利用できる複数のサーバーサイドモデルを設定できます。AI_MODELS_CONFIG 環境変数(JSON文字列)または ai-models.json ファイルで設定します。同一プロバイダー内の複数モデルだけが必要な場合は、AI_MODEL にカンマ区切りでモデルIDを列挙する簡易設定も使えます。
モデル要件:このタスクは厳密なフォーマット制約(draw.io XML)を持つ長文テキスト生成を伴うため、強力なモデル機能が必要です。Claude Sonnet 4.5、GPT-5.1、Gemini 3 Pro、DeepSeek V3.2/R1を推奨します。
注:claudeシリーズはAWS、Azure、GCPなどのクラウドアーキテクチャロゴ付きのdraw.ioダイアグラムで学習されているため、クラウドアーキテクチャダイアグラムを作成したい場合は最適な選択です。
管理パネル
ADMIN_PASSWORD 環境変数を設定して /admin にアクセスすると、.env を手動で編集する代わりに Web パネルでサーバー設定(モデル、アクセスコード、機能、可観測性、クォータ)を管理できます。
📖 管理パネルガイド — 有効化の方法、優先順位ルール、注意事項。
仕組み
本アプリケーションは以下の技術を使用しています:
- Next.js:フロントエンドフレームワークとルーティング
- Vercel AI SDK(
ai+@ai-sdk/*):ストリーミングAIレスポンスとマルチプロバイダーサポート - draw.io:エディターは
public/drawioに同梱したコピー(npm run dev/npm run buildで自動ダウンロード)で動作し、アプリから直接操作できます
ダイアグラムはdraw.ioでレンダリングできるXMLとして表現されます。AIがコマンドを処理し、それに応じてこのXMLを生成または変更します。
サポート&お問い合わせ
デモサイトのAPIトークン使用を支援してくださったByteDance Doubaoに特別な感謝を申し上げます! ARKプラットフォームに登録すると、50万トークンが無料でもらえます!
このプロジェクトが役に立ったら、ライブデモサイトのホスティングを支援するためにスポンサーをご検討ください!
サポートやお問い合わせについては、GitHubリポジトリでissueを開くか、メンテナーにご連絡ください:
- メール:me[at]jiang.jp
よくある質問
一般的な問題と解決策については FAQ をご覧ください。