AI でアプリを開発しても、最初にデータベースのスキーマは必ずレビューしたいです。
VS Code の Copilot Chat から Liam ERD と tbls でレビューする方法を紹介します。
Liam ERD
- Liam ERD はデータベースのスキーマから、 ER 図 を生成・閲覧できるツール
- フィルタやハイライトのインタラクティブ機能で、複雑なデータ構造でも直感的に理解
- CLI で ローカルに ER 図のファイルを出力し、閲覧はローカル HTTP サーバーを使用
tbls
- tbls はデータベースを解析し、ドキュメント化を推進するためのツール
- 多様なデータベース(PostgreSQL、MySQL、SQLite、BigQuery など)に対応
- CLI で ローカルにスキーマや ER 図のファイルを出力し、リントや差分機能など充実
Copilot Chat Step
Chat に開発したいアプリと tbls と Liam で ERD を表示するようにプロンプトを作成します。
送信するとプロジェクトの作成からスキーマをレビューまでが VS Code で完結できます。
今回は Rails フレームワークで簡単な ToDo アプリを開発します。
この 8 ステップのコマンドを Copilot Chat が実行し、VS Code で ERD が表示されます。
| ステップ | コマンド | 役割 |
|---|---|---|
| 1 | rails new |
プロジェクト作成 |
| 2 | rails generate authentication |
認証モデル生成 |
| 3 | rails generate scaffold todo |
ToDo モデル生成 |
| 4 | rails db:migrate |
データベース作成 |
| 5 | tbls out |
tbls の設定作成 |
| 6 | tbls doc |
tbls スキーマ作成 |
| 7 | liam erd build |
liam スキーマ作成 |
| 8 | serve etc/liam |
serve で ERD を表示 |
以降は、Copilot Chat が実行するそれぞれのステップのコマンドを説明します。
rails new
Rails でプロジェクトを作成します。今回は ToDo アプリを作成します。
rails new my-todo
cd my-todo
rails generate authentication
Rails 8 の認証ジェネレータでユーザーモデルを追加します。
rails generate authentication
rails generate scaffold todo
ToDo に必要な MVC(Model-View-Controller)を追加します。
rails generate scaffold todo user:references title:string description:text done:boolean
rails db:migrate
データベースを作成します。今回は Rails のデフォルトの SQLite を使用します。
rails db:migrate
Rails 8 から storage/development.sqlite3 にファイルが出力されます。
tbls out
tbls の設定ファイルを作成します。
mkdir -p etc/tbls
tbls out sqlite://storage/development.sqlite3 --format config --out etc/tbls/.tbls.yml
作成される .tbls.yml には、以下の項目などが含まれます。
- 接続情報
- 出力形式
- ドキュメントのディレクトリ
tbls doc
tbls のスキーマファイルを作成します。
tbls doc --config etc/tbls/.tbls.yml --force
tbls.yml の table、column にある column comment required. の箇所をキーワードから日本語に変換することも Copilot Chat ができます。
liam-hq/cli erd build
tbls で作成したスキーマファイルから liam のスキーマファイルを作成します。
npx @liam-hq/cli erd build --format tbls --input dbdoc/schema.json --output-dir etc/liam
serve etc/liam
Liam ERD をブラウザで表示します。
npx serve etc/liam
Copilot Chat の Open untrusted web page? で Allow をクリックします。
VS Code の Simple Browser で Liam ERD が表示されます。
データベースのスキーマレビュー
データベースのスキーマはツールバーの show で表示を切り替えてレビューします。
- show Table Name
- 命名規則や正規化、テーブル粒度をレビュー
- show Key Only
- 命名規則や外部キーの整合性、PK の設定をレビュー
- show All Fields
- 命名規則やカラムの型をレビュー
必要なテーブルだけを表示したり、マウスオーバーで ER 図がハイライトされるため、レビューが効率的に進みます。あとテーブル名やカラム名が AI で翻訳されているのも便利です。
まとめ
VS Code の Copilot Chat を使って、データベーススキーマのレビュー環境を構築できます。
さまざまな CLI を知っていると、コマンドを組み合わせて活用できます。
AI がコマンドの実行を提案してきますが、コマンドの役割を理解しておくことが大切です。
ポート株式会社 サービス開発部 Advent Calendar 2025 の 10日目と並走しています。


