Metabase のロゴ

Metabase / 公式ブログ / 2026/04/27 / 通常

Metabase 2026年4月27日の公式発表解説: 10個の custom subagents で大規模Clojureコードベースを扱う方法

AIengineering

公式ブログ原文

Metabase は、500K行を超える Clojure backend を Claude Code で扱うために、10個の custom subagents を作った実践を公式ブログで紹介しました。これは Metabase の製品リリースではありませんが、AI coding agent を大規模コードベースで使うための設計知として価値があります。

要点

  • Metabase backend は query processor、permissions、drivers、notifications、serialization、search など複数の専門領域に分かれる
  • Generalist な Claude session は、領域を切り替えるたびに探索で context window を消費する
  • Custom subagents に domain knowledge、codebase locations、investigation patterns、caveats、testing strategies を前もって持たせる
  • mbql-expert、permissions-expert、platform-expert、enterprise-expert など10個の agents を作成した
  • 大規模コードベースでは、AI に「どこをどう調べるべきか」を事前に教えることが効果的だと示している

今回のブログ記事で語られていること

今回のブログ記事は、Metabase の大規模 Clojure backend を AI coding assistant で扱う際の課題から始まります。Metabase backend には、query processor、permissions system、database drivers、notification pipeline、serialization layer、search engine など、多くの subsystem があります。それぞれに特有の idioms、gotchas、暗黙知があり、一般的なAI session が毎回 grep や file reading から始めると context window をすぐ消費してしまいます。

そこで Metabase は、領域ごとの expert subagents を作りました。各 agent は markdown file として定義され、YAML frontmatter に name、description、model、memory などを持ちます。本文には、domain knowledge、codebase locations、investigation approach、caveats、testing strategies が詰め込まれています。1 agent あたり 2,000-3,000 tokens 程度の密度ある context を持たせることで、毎回の探索コストを減らします。

記事では、mbql-expert が特に詳しく紹介されています。Metabase の query processor は、MBQL を SQL へ変換する 68-stage middleware pipeline を持ち、preprocessing、execution、postprocessing の各段階で複雑な変換が行われます。mbql-expert は、この pipeline、HoneySQL、database-specific driver overrides、Redshift や Oracle などの方言差を知っているため、一般的な探索よりも的を絞った調査ができます。

10個の subagents は、mbql-expert、permissions-expert、platform-expert、enterprise-expert、content-expert、notifications-expert、drivers-and-sync、search-expert、ai-expert、transforms-expert です。Metabase は、これらを使って query processor、row-level security、SSO、serialization、SCIM provisioning、collections、dashboards、notifications、database sync、semantic search、Metabot、transform pipeline などの専門領域を分けています。

対象になりそうなチーム

  • 大規模コードベースで AI coding assistant / Claude Code を使っている engineering team
  • Clojure、BI、data platform など domain knowledge が濃いシステムを保守しているチーム
  • AI agent にコード修正だけでなく、調査・レビュー・設計相談を任せたい platform team
  • Metabase の内部開発手法や AI engineering の実例を知りたい技術読者

実務でまず確認したいこと

  1. 自社コードベースの自然な domain boundaries を洗い出す
  2. Agent description には、単なる役割名ではなく trigger words と具体的な調査対象を入れる
  3. Codebase locations だけでなく、investigation patterns と caveats を agent に持たせる
  4. 複数領域にまたがる変更では、subagents を parallel に使って観点を分ける
  5. Directory 構造は変わりやすいため、長く効く domain knowledge と失敗パターンを優先して更新する

結局、今回のブログ記事をどう読むべきか

このブログ記事は、AI coding agent を大規模コードベースで本当に使うには、プロンプトを上手く書くだけでは足りないことを示しています。Metabase の approach は、AI に domain expert としての初期知識、調査手順、注意点を与え、context window を無駄にしない設計です。大規模なデータプロダクトやBI基盤を持つチームにとって、AI 開発運用のかなり実践的な参考になります。