0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AI エージェントに正しいストリーミング SQL を教える:RisingWave の新開発者ツール (CLI, Agent Skills, MCP)

0
Posted at

人間ではなく AI エージェントがデータベースコードの大部分を書く世界が、すぐそこまで来ています。実際、それはすでに始まっています。開発者は Claude、Copilot、Cursor に SQL の作成を依頼し、エージェントは一見正しそうなコードを生成します。従来のデータベースであれば、そのコードは通常、正しいものです。

しかし、ストリーミングデータベース(streaming database)においては、そうではありません。

AI エージェントは、学習データの中で膨大な量のバッチ SQL を見てきました。彼らは PostgreSQL、MySQL、SQLite を熟知しています。しかし、ストリーミング SQL は異なります。セマンティクス(意味論)が異なり、アーキテクチャも異なります。そして、その間違いは非常に微妙です。クエリ自体は正しくパースされ実行されるものの、裏側では密かにデータを重複させたり、イベントを見逃したり、あるいは結果を全く生成しないようなパイプラインを構築してしまうのです。

私たちは、この問題を根本から解決することにしました。より良いドキュメントを書いてエージェントが見つけてくれるのを待つのではなく、AI エージェントが実際に活動している場所に直接届く 3 つのツールを構築しました。

知識を配布する Cloud CLI

RisingWave Cloud CLI (rwc) は、当初はクラスターの管理、認証設定、スナップショット作成などを行うシンプルなインフラツールとして始まりました。しかし、私たちは CLI こそが、すべての RisingWave Cloud ユーザーがすでにインストールしている唯一のツールであることに気づきました。そこで、これを「知識の配布チャネル」へと変貌させました。

rwc skill install --target claude-code

コマンドを 1 つ実行するだけで、あなたの AI コーディングアシスタントは RisingWave を理解するようになります。リポジトリをクローンしたり、設定ファイルを編集したり、ドキュメントをブックマークしたりする必要はありません。知識はツールと共に移動します。

これが重要なのは、開発者ツールにおける最大の課題は「ツールを作ること」ではなく、「開発者のワークフローに組み込んでもらうこと」だからです。CLI はすでにそこに存在していたのです。

LLM が学習データから学べないことを教える

RisingWave Agent Skills は、知識そのものです。これは、AI エージェントがコンテキストウィンドウに読み込むための、構造化されたリファレンスドキュメントのオープンソースパックです。

なぜこれが必要なので、しょうか? それは、ストリーミング SQL が LLM の学習データ全体のごく一部に過ぎないからです。エージェントが RisingWave に遭遇すると、自分が知っている「バッチ SQL」のパターンに当てはめようとします。その結果は予測可能です。

CREATE SOURCE と書くべきところで CREATE TABLE を書き、TUMBLE が適切な場面で date_trunc を使います。CDC(Change Data Capture)を設定する際、単一のコネクションを共有するのではなく、ソースごとにテーブルを作成してインジェストコストを重複して支払わせようとします。ウォーターマーク(watermark)の設定を忘れ、なぜタイムウィンドウが閉じないのかと首を傾げることになります。

これらはエージェントがデバッグできる「バグ」ではありません。コードの最初の 1 行目に組み込まれた「アーキテクチャ上の間違い」なのです。

このスキルパックには、スキーマ設計、マテリアライズド・ビュー、ストリーミング SQL パターン、シンク設定、パフォーマンス最適化にわたる 14 のルールがエンコードされています。各ルールは、私たちが異なるエージェントや異なるコードベースで繰り返し目にしてきた間違いに基づいています。これらはオープンな Agent Skills specification に準拠しており、Claude Code、Cursor、GitHub Copilot、Windsurf、Gemini CLI など 18 以上のツールで動作します。

エージェントにデータベースの中を見る「目」を与える

静的な知識は必要ですが、それだけでは不十分です。正しいパターンを知っているエージェントであっても、実際のスキーマや既存のマテリアライズド・ビュー、クラスターの状態を見ることはできません。

RisingWave MCP Server は、このギャップを埋めるものです。Model Context Protocol を通じて AI エージェントを稼働中の RisingWave インスタンスに直接接続し、クエリ、スキーマ検査、DDL 操作、ストリーミングジョブの監視、クラスター管理のための 100 以上のツールを提供します。

その差は歴然としています。MCP Server がなければ、エージェントはすでに存在するマテリアライズド・ビューと重複するものを提案するかもしれません。しかし MCP Server があれば、エージェントは既存のビューを検査し、ソーススキーマを確認し、仮想的なシステムではなく「実際のシステム」に適合する SQL を書くことができます。

これは VS Code Copilot や Claude Desktop と統合されており、STDIO と HTTP の両方のトランスポートをサポートしています。

3 つのレイヤー、1 つのワークフロー

レイヤー ツール 役割
インフラ rwc CLI クラスターのプロビジョニング、認証管理、エージェントへの知識配布
知識 Agent Skills 正しいストリーミング SQL パターンをエージェントに学習させる
ライブアクセス MCP Server データベースへのリアルタイムな可視性をエージェントに提供する

これらのツールは独立しており、どれか 1 つだけを使うことも可能です。しかし、これらは連携するように設計されています。CLI がスキルをインストールし、スキルがエージェントに「考え方」を教え、MCP Server がエージェントに「現状」を見せるのです。

なぜ今、これが重要なのか

AI エージェントがストリーミング SQL をどのように書くかを形作るチャンスは、今この瞬間にあります。今日確立されたパターンは、将来これらのエージェントが触れるすべてのコードベースで強化されていきます。もしエージェントが間違ったパターンを学べば、その間違いは拡散します。正しいパターンを学べば、AI アシスタントを使うすべての開発者がその恩恵を受けることができます。

私たちがこれらのツールを構築しているのは、AI が生成するストリーミングコードの品質が、開発者のストリーミングシステムに関する専門知識に依存すべきではないと考えているからです。エージェント自身が何をすべきかを知っているべきです。それが、私たちが目指しているスタンダードです。

これら 3 つのツールはすべてオープンソースであり、無料で利用できます:

  • Cloud CLI -- rwc をインストールして始めましょう
  • Agent Skills -- AI アシスタントにストリーミング SQL を教えましょう
  • MCP Server -- エージェントをライブインスタンスに接続しましょう

FAQ

これらのツールを使うには RisingWave Cloud が必要ですか? rwc CLI のみ Cloud アカウントが必要です。Agent Skills と MCP Server は、オープンソースのセルフホスト版を含む、あらゆる RisingWave デプロイメントで動作します。

どの AI コーディングアシスタントがサポートされていますか? Agent Skills は Claude Code、Cursor、GitHub Copilot、Windsurf、Gemini CLI など 18 以上のツールで動作します。MCP Server は、MCP 互換のあらゆるクライアントで動作します。

Agent Skills に貢献することはできますか? はい。Agent SkillsMCP Server のリポジトリはどちらもオープンソースです。コミュニティからの貢献を歓迎します。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?