🚀

プロジェクト横断の知識吸収と多角的思考を支援するAIアシスタントの開発

に公開

はじめに

プロジェクトアサインのたびに、
「この仕様、どこに書いてあるんだっけ」
「過去の議論を追うのが大変」
「技術・ビジネス・セキュリティの観点でそれぞれの視点を持ちたい」
と感じたことはありませんか?

本記事では、そういった課題を抱えるエンジニアやプロダクト関係者に向けて、
AIによるドメイン知識吸収支援&多角的対話支援アシスタントを開発した背景と構成、実装のポイントをご紹介します。

ⅰ. ユーザー像・課題・ソリューション

対象ユーザー像

  • 新しくプロジェクトにアサインされたエンジニア
  • 仕様や背景知識の把握に時間をかけているプロダクトマネージャー
  • セキュリティ・ビジネス・開発の観点をバランス良く考慮したい開発者

抱えている課題

プロジェクトの立ち上げや途中参加時において、多くの開発者が共通して直面する課題があります。
特に、ドキュメントの整理や情報の伝達方法に課題があるチームでは、
それがプロダクティビティや意思決定に大きな影響を及ぼします。

  • Notionなどに散在した仕様書の情報を探すのに時間がかかる
    プロジェクトに関する情報がNotionやGoogle Docs、Slackのログなどに点在しており、
    目的の情報にたどり着くまでに何度も検索ワードを変えたり、リンクをたどったりする必要があります。
    特に、構成図やAPI仕様、議事録などが一貫性なく保存されている場合、情報の発見コストは非常に高くなります。

  • ドキュメントの構造や用語に慣れるまで、プロジェクト理解が進まない
    同じ企業内でも、プロジェクトごとに用語の使い方やドキュメント構成にばらつきがあります。新しく参加したメンバーにとっては、それに慣れるまでの学習コストが高く、タスクに着手するまでに大きな時間的ギャップが生じます。

  • 一人の視点で考えると偏りが生まれやすく、意思決定に自信が持てない
    チーム内でのレビューや壁打ちの機会が十分にない場合、自分の仮説や判断が独りよがりになってしまいがちです。セキュリティやビジネス的な観点を考慮しきれずに、技術的な最適解に偏ってしまうリスクもあります。結果的に、不安を抱えたまま提案や実装に進んでしまうケースも少なくありません。

ソリューション概要

上記のような課題を踏まえ、本プロジェクトでは以下の2つのAI機能を中核としたWebアプリケーションを構築しました。目的は「ドメイン知識への迅速なアクセス」と「多角的な視点の獲得」を支援し、プロジェクトのオンボーディングや設計検討のスピードと質を同時に高めることです。

github:https://github.com/SakutoHata/SynapseX

1. ドメイン知識検索アシスタント

この機能では、NotionMCP(Model Context Protocol) を活用し、Notionに蓄積されたドキュメントに自然言語で問い合わせが可能です。

ユーザーは「この機能の制約条件は何ですか?」「このAPIは誰が利用しますか?」といった自然な疑問を入力するだけで、Notionに格納された関連ドキュメントの中から適切な回答を得ることができます。

具体的には、仕様書、設計メモ、議事録などの中から該当するセクションを抽出し、文脈を維持したまま応答します。

MCPクライアントをGenkitのToolとして定義することで、LLMベースのAgentがNotionに直接検索リクエストを投げ、取得した内容をプロンプト内で活用できます。

このアシスタントにより、新規プロジェクト参加者が仕様書の構成やページリンクを知らなくても、自然な言葉で必要な情報にアクセスできるようになります。

2. 多角的思考支援の対話アシスタント

ドメイン知識の把握に加えて、より質の高い意思決定を支援するために、専門エージェントとの対話機能も搭載しています。

ここでは、VertexAI(Gemini 2.5 Flash) を用いたGenkitのAgent機能を活用し、以下のような役割を持つ複数の仮想エージェントを定義しています:

  • セキュリティエンジニア視点のアドバイザー
  • ビジネス責任者視点のストラテジスト
  • 技術リーダー視点の設計アーキテクト

ユーザーがプロンプトを入力すると、それに対して各専門家の立場から応答が返されます。直前の会話も保持されており、コンテキストを踏まえた深い意見を提供します。

例えば、「この設計方針で問題ないか?」という質問に対しては、
「データ漏洩の観点からはリスクがある」
「コスト最適化のために優先度を再検討すべき」
「今後のスケーラビリティを考慮すると妥当」
といった形で多面的な意見が返ってきます。

この仕組みにより、ユーザーは特定の視点に偏ることなく、意思決定の精度と納得感を高めることができます。

特徴

本プロジェクトのAIアシスタントは、既存のドキュメント管理・チャットボットとは異なる、以下のような特徴を備えています。

  • 自然な対話形式でのインターフェース
    専門的な検索ワードやタグを覚える必要はなく、ユーザーは日常会話に近い自然な言葉で質問できます。これにより、利用ハードルが非常に低くなります。UIは、ReactとAssistant UI Starterをベースに、モダンで操作性の高いチャット体験を実現しています。

  • 既存ドキュメントとAIとの橋渡し
    ドキュメント構造に依存せず、意味的な理解を前提とした情報検索が可能です。特にNotionのような自由度の高いドキュメント構成において、その真価を発揮します。

  • 視点の固定化を防ぐエージェント設計
    ユーザー1人と1つのAIだけで完結する従来型のチャットとは異なり、複数の立場から意見を受けられる設計を採用しています。これにより、チームレビューの代替や壁打ちの役割を果たします。

  • Genkit × MCP による最小構成での実装可能性
    複雑なマイクロサービス構成や外部連携を最小限に抑え、GenkitのTool定義とAgent機能、MCPの活用だけで構成可能です。Cloud Run上で完結するため、デプロイ・運用コストも低く、PoCから実運用まで移行しやすい設計です。

ⅱ. 構成

  • Cloud Run 上にアプリ全体をホスト(フロントエンド・バックエンド統合)
  • バックエンドは Genkit(Node.js) により構築
  • Toolとして NotionMCPClient を組み込み、API経由でNotionの仕様書を検索
  • Genkit Agent は VertexAI Gemini 2.5 Flash をモデルとして使用
  • フロントは React

ⅲ. デモ動画

こちらの動画では、実際に仕様書を自然言語で検索したり、
AIエージェントたちと多角的対話を行う様子をご覧いただけます:

デモ動画はこちら(YouTube)

使用技術スタック

  • Genkit: Google製のLLMアプリケーション開発フレームワーク
  • VertexAI (Gemini 2.5 Flash): 高速かつマルチターン性能に優れたLLM
  • Notion MCP: NotionのAPIを通じて、ページデータを自然言語で検索可能にするTool
  • Cloud Run: サーバーレスでフルマネージドなアプリケーション実行環境
  • React: チャットUIの構築

今後の展望

このプロジェクトは現時点で、Notionに保存された仕様書や設計メモを自然言語で検索可能なAIアシスタントを提供していますが、今後は以下のような方向でさらなる進化を予定しています。

  • ドキュメントソースの拡充
    現在はNotionを対象としていますが、将来的にはConfluence、Google Docs、GitHub Wikiなど他のナレッジベースにも対応予定です。これにより、企業内で複数のツールが併用されている環境でも、ドキュメントを横断して検索・回答できる真の“ドメイン知識ハブ”を実現します。

  • プロンプトテンプレートの最適化
    エージェントが応答する際のトーンや視点は、プロジェクトやユースケースによって最適解が異なります。たとえば、スタートアップではスピード重視の提案が求められる一方、大企業では堅牢性や法令順守が重視されます。今後は、これらに応じた対話エージェントの個性や思考スタイルのカスタマイズを可能にします。

  • ユーザーごとのエージェントカスタマイズ
    プロジェクトの種類や、ユーザーのロール(例:PM、セキュリティ担当、バックエンドエンジニア)に応じて、エージェントの視点や応答内容を動的に調整できる仕組みを導入予定です。これにより、よりパーソナライズされたアドバイスや検索結果を得ることが可能になります。

  • 応答速度の向上
    Vertex AIやTool呼び出しの最適化により、LLMの応答速度を大幅に短縮する計画です。特にリアルタイム性が求められる業務での利用を視野に入れています。

  • 会話内容の保持と文脈の継続性強化
    現在はセッション単位の応答が基本ですが、将来的にはユーザーごとの会話履歴をセキュアに保存し、継続的な文脈理解を可能にする予定です。これにより、「前回のやり取りの続き」といった自然な対話が実現できます。

まとめ

プロジェクトが変わるたびに求められる背景知識の吸収、過去の仕様や議論の把握、多様な視点からの意思決定。これらは、エンジニアにとってもマネージャーにとっても日々直面する悩みです。

従来の方法では、ドキュメントを読み込み、関係者にヒアリングし、会議を重ねる必要があり、これには膨大な時間とコストがかかっていました。しかし、本プロジェクトで開発したWebアプリでは、以下の2点を中核に据えています:

  • ドメイン知識への自然言語アクセス:Notionにある仕様書を「どこに何が書かれているか」を知らなくても、質問するだけで瞬時に回答が得られます。
  • 多角的な対話支援:AIエージェントが、異なる専門分野(セキュリティ・ビジネス・開発など)の視点からアドバイスをくれるため、1人で考えるよりも精度の高い意思決定が可能になります。

こうした機能によって、チーム内のナレッジ伝達の高速化と、個人の思考の深まりを両立することができます。プロジェクト間の知識の断絶をなくし、より滑らかな情報連携と意思決定を支えることができると考えています。


※このプロジェクトはデモンストレーションになります。

Thank you for Contribute

Discussion