Google ADK for TypeScript
A code-first TypeScript toolkit for building, orchestrating, testing, and deploying AI agent workflows.
Per-dimension scores and reasoning
Evidence shows: repository from Google official org, clear Apache-2.0 license, README warns about npx adk risk, indicating supply chain awareness. But no least-privilege design, user confirmation mechanism, data flow transparency docs, sensitive data handling policy, dependency security audit, external effect control, or rollback mechanism. Deductions: these aspects lack evidence or are only partially mentioned.
Evidence shows: code structure clear, tests cover A2A protocol features including event handling and streaming aggregation, indicating good internal consistency. Dependencies declared in package.json, but no availability guarantees or failure recovery mechanisms. Failure messages: tests handle error events, but no user-facing error message documentation. Deductions: insufficient evidence for dependency availability and failure message handling.
Evidence shows: README clearly targets TypeScript developers, supports Node.js and browser, provides multiple scenarios (search, maps, multi-agent orchestration). Capability boundaries reflected through tools and model config, but not explicitly limited. Trigger precision: tool calls and event handling tested, but no documentation for user-defined triggers. Environment fit good, supports ESM, CommonJS, and web. Deductions: insufficient documentation for trigger precision and explicit capability boundaries.
Evidence shows: README provides installation instructions, quick start, docs links, clear information architecture. Naming stable, package name and version clear. Example code simple, but no FAQ. Known limitations not explicitly listed. License Apache-2.0, full text present. Version 1.6.0, but no changelog. Maintenance responsibility by Google, contribution guide present. Deductions: missing FAQ, known limitations, and changelog.
Evidence shows: output usability high, provides CLI and Web UI, supports multiple deployment methods. Marginal value clear, rich tools and orchestration capabilities. Cost-benefit: open-source free, but no performance or resource consumption data. Deductions: cost-benefit lacks specific data support.
Evidence shows: README feature claims correspond to code and tests, e.g., A2A protocol support has test verification. But no external sources corroborate, and fact-inference separation not explicit. Deductions: insufficient cross-source corroboration.
- Static review, no code execution, all conclusions based on file contents.
- No malicious code found, but dependency security should be noted, recommend dependency audit.
- User confirmation mechanism missing, add approval flow when deploying.
- Data flow transparency documentation insufficient, refer to official docs for more info.
What does this agent do, and when should you use it?
Agent Development Kit (ADK) is Google’s open-source, code-first toolkit for TypeScript agent development. Developers define agent behavior, tool use, and orchestration in code; the supplied example uses LlmAgent, GOOGLE_SEARCH, and gemini-flash-latest. ADK supports sequential, parallel, loop, and routed multi-agent workflows, plus delegation to remote agents through the A2A protocol. It targets Node.js and browser ecosystems with ESM, CommonJS, and web bundles, TypeScript type safety, and Zod schema validation. The @google/adk-devtools package supplies commands including adk create, adk run, adk web, and adk deploy cloud_run; the supplied material does not define a fixed end-user output format or managed hosted service.
A developer creates an LlmAgent in a TypeScript file, setting fields such as name, description, model, instruction, and tools; the example adds GOOGLE_SEARCH to tools. From the agent project directory, npx adk run agent.ts starts an interactive CLI run, while npx adk web launches a development UI for testing and debugging. Agents can use the listed built-in Google Search, Google Maps, Vertex AI Search, and URL context tools, connect to MCP servers, wrap functions as tools, or add code execution. Developers can compose agents into sequential, parallel, loop, or routed workflows and delegate work to remote agents through A2A. The material does not specify a standardized response artifact, report, or message format.
- A TypeScript developer prototyping a question-answering assistant that can use GOOGLE_SEARCH when needed can define an LlmAgent and test it with npx adk run agent.ts.
- A team building an agent application for either Node.js or the browser can select from the documented ESM, CommonJS, and web bundles.
- An engineering team that needs Google Search, Google Maps, Vertex AI Search, or URL context in an agent workflow can evaluate the listed built-in tools.
- A developer coordinating specialized agents in sequential, parallel, loop, or routed flows can use ADK’s documented orchestration models.
- An integration team that must delegate part of a workflow to a remote agent can evaluate the A2A protocol path.
- A team that wants a browser-based debugging interface before deploying to Cloud Run can use adk web and assess adk deploy cloud_run.
What are this agent's strengths and limitations?
- Agent logic, tools, and orchestration are authored directly in TypeScript, with full type safety and compile-time inference for Zod v3 and v4 tool schemas.
- The toolkit explicitly ships ESM, CommonJS, and web bundles for both Node.js and browser targets.
- Its documented workflow primitives cover sequential, parallel, loop, and routed composition, with remote delegation through A2A.
- Development tooling spans scaffolding, interactive execution, a web debugging UI, and a Cloud Run deployment command.
- A current Node.js LTS release is a stated prerequisite, and adopters still need to perform the engineering integration for their browser or server target.
- The supplied example uses gemini-flash-latest, while the material does not document setup for alternative model providers.
- Credential setup, pricing, and quotas for Google services, model calls, remote A2A use, and related external services are not provided.
- Cloud Run support is named through adk deploy cloud_run, but deployment parameters, infrastructure configuration, and failure handling are not described.
How do you install or deploy this agent?
Prerequisite: a current Node.js LTS release. In the agent project directory, install:
npm install @google/adk
npm install -D @google/adk-devtoolsThe supplied material does not specify credential setup for models, Google Search, Google Maps, Vertex AI Search, or other external services.
How do you use this agent?
Create agent.ts and import LlmAgent and GOOGLE_SEARCH:
import {LlmAgent, GOOGLE_SEARCH} from '@google/adk';
export const rootAgent = new LlmAgent({name: 'search_assistant',
description: 'An assistant that can search the web.',
model: 'gemini-flash-latest',
instruction: 'You are a helpful assistant. Answer user questions using Google Search when needed.',
tools: [GOOGLE_SEARCH],
});
Run npx adk run agent.ts from that project directory for an interactive session, or run npx adk web for the development and debugging UI. The material also names adk create and adk deploy cloud_run, but does not provide their arguments, configuration files, or a complete deployment procedure.