[ADK] ADK for TypeScript(@google/adk) を利用して、TypeScriptでAIエージェントを書く
こんにちは、サントリーこと大橋です。
先日(2025/10/31)のAI Agent Summitでも紹介しましたが、
GoogleのGitHubリポジトリで、Agent Development Kit (ADK) のJavaScript/TypeScript版である ADK for TypeScript(@google/adk)を見つけました。まだGoogleの公式ブログやイベントでの発表はありませんが、非常に興味深いプロジェクトです。
今回の記事では、この実験的な @google/adk を利用して、TypeScriptでAIエージェントを作成する手順を紹介し、ADK Pythonとの違いや @google/adk の現状について解説していきます。
ADK for TypeScriptとは
ADK for TypeScript(@google/adk) は、その名の通りADKのTypeScript実装です。adk-python と同様に、柔軟でモジュール化されたAIエージェントをコード中心で開発するためのツールキットです。
公式のREADME.mdを読むと、いくつかの点がわかります。
-
APIの安定性: バージョンはまだ
0.1.0であり、「1.0に達する前に破壊的変更が含まれる可能性がある」とのことです。 - 本番環境での利用: 現時点では本番環境での利用は推奨されていません。
- 公式アナウンス: Googleからの正式なリリース発表やドキュメントはまだなく、まさに実験的な段階にあると言えるでしょう。
とはいえ、Python版ADKの主要な概念は引き継がれているようで、今後の発展が非常に楽しみなプロジェクトです。
ADK for TypeScript の使い方
それでは、実際に ADK for TypeScript を使って簡単なAIエージェントを作成してみましょう。
1. プロジェクトのセットアップ
まず、プロジェクト用のディレクトリを作成し、npmプロジェクトを初期化します。
# プロジェクト用のディレクトリ作成
mkdir adk-js-sample
cd adk-js-sample
# npmプロジェクトの初期化
npm init -y
2. 依存関係のインストール
次に、@google/adk 本体と、開発ツールである @google/adk-devtools をインストールします。
# ADK本体をインストール
npm install @google/adk
# 開発ツールをインストール
npm install -D @google/adk-devtools
3. 環境変数の設定
プロジェクトのルートに .env ファイルを作成し、ADKがGoogleのサービスに接続するための設定を記述します。今回はVertex AIを利用する設定です。
GOOGLE_GENAI_USE_VERTEXAI=1
GOOGLE_CLOUD_PROJECT={YOUR_PROJECT}
GOOGLE_CLOUD_LOCATION={YOUR_LOCATION}
{YOUR_PROJECT} と {YOUR_LOCATION} は自分の環境に合わせて書き換えてください。
4. エージェントの作成
sample ディレクトリを作成し、その中にエージェントのロジックを記述する agent.ts ファイルを作成します。
mkdir sample
touch sample/agent.ts
作成した sample/agent.ts に、Google検索を利用してユーザーの質問に答えるシンプルなエージェントのコードを記述します。
import { LlmAgent, GOOGLE_SEARCH } from '@google/adk';
export const rootAgent = new LlmAgent({
name: 'search_assistant',
description: 'Web検索用エージェント.',
model: 'gemini-2.5-flash',
instruction: 'あなたは有能でフレンドリーなエージェントです。ユーザーの問いに必要であれば、Web検索をして答えてください。',
tools: [GOOGLE_SEARCH],
});
adk-python と非常によく似ていますね。
ADK DevToolsの使い方
作成したエージェントを動かすには、@google/adk-devtools を利用します。これはPython版の adk web に相当する開発用UIを提供してくれます。
1. package.jsonの編集
package.json の scripts に、開発サーバーを起動するためのコマンドを追加します。
{
...
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev": "npx @google/adk-devtools web ."
},
...
}
2. 開発サーバーの起動
以下のコマンドで開発サーバーを起動します。
npm run dev
起動に成功すると、localhost:8000 でサーバが起動します。
アクセスすると以下のように、見慣れたADKの開発UIが表示されるはずです。ここでエージェントの動作をテストしたり、デバッグしたりすることができます。

実際にしっかり動いていそうですね
まとめ
今回は、まだ実験的な段階にある ADK for TypeScript を使ってTypeScriptでAIエージェントを作成する方法を紹介しました。
- ADK for TypeScript はADKのTypeScript実装であり、Python版と非常に似た思想で設計されている。
-
LlmAgentやGOOGLE_SEARCHといった基本的なコンポーネントが提供されており、Python版の経験者であれば直感的に利用できる。 -
@google/adk-devtoolsを使うことで、Python版と同様の開発UIを利用できる。
コードを見る限り、Runner や Session、Event といったADKの基本的な概念はそのまま継承されており、Plugin のような拡張機能も存在するようです。ツールなどはPythonバンと比べると数が少なく、CLIも一部の実装のみが行われているようです。
また、READMEを見る限りでは、まだコントリビューションは受け付けていないようですが、今後もウォッチしていきたいですね。
(ADK Javaの記事もそのうち書きます...多分)
お知らせ/宣伝
ADK開発者が集う日本語のDiscordコミュニティがあります。ADKに関する情報交換や議論に興味がある方は、ぜひご参加ください!
また、ADKの最新のコミットログやリリースノートを分かりやすく解説するPodcastを、月・水・金に配信しています。ADKの動向を追いかけたい方は、ぜひ聴いてみてください。
Discussion