AIエージェントのためのデータ分析環境: Codatum CLIをリリースしました!

By Codatum Team
Cover image of the article

Contents

本日、Codatum CLIをリリースしました!手で組むBIから、AIが書くBIへ。Codatum CLIを使うと、CursorやClaude Codeなど普段使っているAIから、リッチでインタラクティブなデータ分析を作れるようになります。

最近では、ローカルのコーディングエージェントや、Slackなどに繋げたボットエージェントに、データ接続機能を持たせてデータ分析をさせることはよくあるかと思います。Codatum CLIを入れることで、このようなワークフローを簡単に構築するだけでなく、①もっと効率的に、②もっとインタラクティブに、③もっと安全に、データの分析と共有を行うことができるようになります。

手で組むBIから、AIが書くBIへ。Codatum CLIの利用イメージを、1分の動画で紹介します。

AIのためのデータ分析環境の難しさ

自社でAIを使ったデータ分析環境を整えようとすると、いくつもの大きな問題があります。たとえば、Claude Codeなどの環境を配り、DBもしくはDWHへの権限を付与して個々人の分析環境を作る場合です。

Codatum CLI Challenges

データ権限の管理。 Agentが分析結果をtextやhtmlに書き出して共有すると、その出力にはDWHから取得したデータが含まれます。しかし、DWH上で設定していたユーザーやグループごとの閲覧権限は、書き出したファイルには引き継がれません。共有して大丈夫なデータかどうかを毎回判断する必要があり、意図せず広く共有するか、安全を優先して共有範囲を狭めることになります。

Token効率、クエリコスト。 AgentにHTMLでレポートを作らせると、描画コードやスタイル、場合によっては取得したデータ自体もファイルに含まれます。Agentがこのファイルを読み書きするたびにTokenを消費し、データ量が多ければ数千〜数万tokenまで増えることがあります。また、修正や深掘りのたびにDWHへクエリを実行すると、クエリコストも増えていきます。

分析資産の再利用、共有。 Agentが作ったSQLやチャート、分析の前提は、個人の会話スレッドに残りがちです。ほかのメンバーは過去の分析を検索して利用できず、同じ分析が必要になるたびにAgentへ依頼し直します。その結果、似ているものの少しずつ異なるSQLが量産されます。

新鮮なデータでのインタラクティブな再実行。 textやHTMLとして共有された分析結果は、作成時点の静的な出力です。受け手が「別の期間を見たい」「地域を絞りたい」と思っても、自分で条件を変えたり、最新データで再実行したりできません。変更が必要になるたびに、作成者へ依頼し直すことになります。

分析の監視・監査ログ。 分析が個々のローカルAgentで行われると、依頼内容、作成されたSQL、修正の過程、共有された結果が個人の環境に残ります。DWHのクエリログだけでは、どの依頼に対する分析か、どの分析結果として共有されたのかまで確認できません。問題のあるクエリや分析結果が見つかっても、後から経緯を追うことが難しくなります。

Codatum CLIは、分析の作成から共有までを一つのワークフローとして扱うことで、これらの課題を解決します。分析は短いMarkdownで記述し、Agentから操作できます。完成した分析は、権限と監査ログが適用されるCodatum上で動的に共有し、Gitでレビュー・蓄積できます。ここから、その仕組みを順に紹介します。

1. 分析のための新しいMarkdownフォーマット ".cnb.md"

Codatum CLIの基盤になるのは、分析用に設計された新しいMarkdownフォーマットです。SQL、チャート設定、パラメータ、説明、レイアウトを、Markdownを拡張した.cnb.mdに書くと、短い記述のままリッチでインタラクティブなダッシュボードやレポートとして描画できます。

Codatum CLI Authoring Format

このフォーマットは人間が読んでもAgentに読ませても効率的です。SQLと表示設定がテキストとして並ぶため、分析過程やレポート表現を読みやすく、Gitでも差分を確認できます。

コンパクトさは、AgentのTokenコストにも直接効きます。例えば、EChartsを使ったHTMLが約650〜2,000 tokenだったのに対し、.cnb.mdを使ったケースでは約130 tokenとなり、約80〜94%削減できました。さらに、HTMLにはデータ自体を埋め込むケースも多く、データ量が増えると数千〜数万tokenまで膨らむことがあります。

カタログのYAML管理: Notebookだけでなく、CodatumのカタログもYAMLで管理できます。テーブル・カラムの説明やタグを.cann.yamlに保存し、CLIでCodatumと同期できます。詳しくはカタログアノテーションを参照してください。

CLIドキュメント: Notebook file

2. Agentが分析の流れを組み立てられるCLIコマンド

Codatum CLIは、Notebookの作成・取得から、検証、SQL実行、画像での表示確認、差分確認、Codatumへの反映までをカバーします。操作は個別のコマンドに分かれているため、Agentは分析の進み方に応じて必要な操作を組み合わせられます。

cdm notebook create
# 新しいNotebookをCodatum上に作成し、編集用の.cnb.mdをローカルに保存します。

cdm notebook clone
# 既存のNotebookを.cnb.mdとしてローカルに取得します。

cdm notebook format
# .cnb.mdを検証・整形し、修復可能なエラーを自動で修正します。

cdm notebook run
# Notebook内のSQLをまとめて実行し、結果を.cnb.mdへ反映します。

cdm notebook render chart
cdm notebook render page
# チャートやページを画像として出力します。Agentは出力した画像を確認しながら表示を修正できます。

cdm notebook preview
# .cnb.mdとブラウザを双方向に同期します。ファイルの編集はブラウザへ、ブラウザ上の操作はファイルへ反映されます。

cdm notebook diff
# ローカルの変更をCodatumへ反映した場合の差分を確認します。

cdm notebook push
# ローカルの.cnb.mdをCodatumへ反映します。

新しい分析はcreate、既存の分析はcloneから始めます。その後、formatrunrenderを繰り返し、diffを確認してpushします。Agentが画像を確認しながら進める場合はrender、人がブラウザで調整する場合はpreviewを使えます。Notebookを一度生成するだけではなく、既存分析の再利用から確認・修正・反映までを一つの流れとして扱えることが、Codatum CLIの特徴です。詳しい引数やオプションははじめにで確認できます。

3. 分析過程のパッケージングと共有

次に、Codatum CLIで作った分析は、Codatum Notebookとしてクラウドに保存・共有できます。共有されるのはチャートだけではありません。SQL、パラメータ、チャート設定、説明が一つに収まるため、どの条件で集計し、どう読み取ったのかまで共有できます。

Codatum CLI Analysis Accumulation

同じ分析過程を2度3度と別の人がやることなく、分析による知識を積み上げていくことができます。これにより、個人ごとに分析を作り直す時間を減らし、チームは過去のSQLや判断の前提を出発点に、次の分析へ進めます。担当者が変わっても分析の背景が引き継がれ、会社として指標や分析方法を揃えやすくなります。

4. 静的ではなく動的な共有

共有されたものが静的ではなく動的であることも重要です。静的なものを共有した場合、実行日時が変わったりパラメータを変更したい時に、再度成果物を作る必要があります。Codatum Notebookでは、受け手がパラメータを変え、最新のデータで再実行できるため、作成者への更新依頼を減らせます。

Agent環境やSQLの知識を持たないビジネス職のメンバーも、既存の分析を起点に、GUI上でフィルタや集計方法を変えて深掘りできます。問いごとにAgentに一から依頼して別のSQLを作らせないため、指標や条件がずれた分析を生むリスクも抑えられます。

5. 安心できる権限管理されたデータ環境

共有は、textやHTMLのファイルを送るのではなく、リンクで行います。リンクを開いた先でのデータの閲覧と実行は、Codatum上のアカウントごとの権限に従います。共有者が見せてよい範囲を自分で保証する必要はなく、コネクションの実行権限やNotebookの権限で制御できます。

CLI側の操作にはPersonal Access Token(PAT)の権限が適用されるので、Agentに渡す権限を絞れます。また、ワークスペース上の操作は監査ログから確認できます。

6. Gitで蓄積・レビュー・再利用できる分析定義

.cnb.mdはテキストファイルなので、Gitでそのまま管理できます。残るのは結果の画像ではなく、結果を再現する定義そのものです。.cnb.mdは、HTMLや出力を含むJupyter Notebookと比べ、SQL、パラメータ、チャート設定の変更を差分として確認しやすい形式です。Streamlitのようなアプリケーションコードを読む必要もなく、分析定義に絞ってレビューできます。コミット前にcdm notebook formatで整形し、cdm notebook stripで実行結果を取り除けば、データ更新のたびに差分が汚れることもありません。

Codatum CLI Lifecycle with Git

GitHub上のファイルを正とするチームは、GitHub ActionsなどのCIで検証して、mainブランチへのマージ後にCodatumへ反映できます。構成例はGitHubで管理するガイドで公開しています。ここまでの体制が要らない個人の分析なら、cdm notebook pushだけで反映できます。

セットアップ / 利用方法

実際の利用方法は、次の動画で確認できます。

必要なのは、Codatumのアカウントとワークスペース、そしてBigQuery、Snowflake、Databricks、Redshiftのいずれかのコネクションです。インストーラはmacOS、Linux、Windows向けに用意しており、Cursor、Claude Code、CodexなどのAgentと組み合わせて使えます。

手順ははじめにを参照してください。インストールしたら、まずは最近依頼された分析を一つ選んで、Agentにチャートを一枚作らせ、Codatumへ反映してWeb上で条件を変えられることを確かめてみてください。

ぜひ使ってフィードバックをください!

手で組むBIから、AIが書くBIへ。Codatum CLIなら、分析の作成から共有・再実行、Git管理までを一つの流れで進められます。ぜひ利用して、フィードバックをお寄せください。

いただいたフィードバックをもとに、正式版に向けて改善を続けます!