GoogleAdk 1.0.0-preview.15

This is a prerelease version of GoogleAdk.
dotnet add package GoogleAdk --version 1.0.0-preview.15
                    
NuGet\Install-Package GoogleAdk -Version 1.0.0-preview.15
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="GoogleAdk" Version="1.0.0-preview.15" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="GoogleAdk" Version="1.0.0-preview.15" />
                    
Directory.Packages.props
<PackageReference Include="GoogleAdk" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add GoogleAdk --version 1.0.0-preview.15
                    
#r "nuget: GoogleAdk, 1.0.0-preview.15"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package GoogleAdk@1.0.0-preview.15
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=GoogleAdk&version=1.0.0-preview.15&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=GoogleAdk&version=1.0.0-preview.15&prerelease
                    
Install as a Cake Tool

Agent Development Kit (ADK) for .NET (C#)

License NuGet

<html> <h2 align="center"> <img src="https://raw.githubusercontent.com/google/adk-python/main/assets/agent-development-kit.png" width="256"/> </h2> <h3 align="center"> An open-source, code-first .NET toolkit for building, evaluating, and deploying sophisticated AI agents with flexibility and control. </h3>

</html>

Agent Development Kit (ADK) is designed for developers seeking fine-grained control and flexibility when building advanced AI agents that are tightly integrated with services in Google Cloud. It allows you to define agent behavior, orchestration, and tool use directly in code, enabling robust debugging, versioning, and deployment anywhere – from your laptop to the cloud.


⚠️ EXPERIMENTAL - This project is in active development and the API will change. Builds are nightly and super frequent and may contain breaking changes. Use in production at your own risk.

✨ Key Features

🧠 Intelligence & Models

  • Model Backends: Support for Gemini (GoogleAdk.Models.Gemini) and MEAI (GoogleAdk.Models.Meai) for providers like Ollama. More info.
  • Planning: Equip agents with ReAct-style planners via natural-language processing. More info.
  • Caching: Prompt and context caching using Gemini-backed implicit caching. More info.

🛠️ Tools & Integrations

  • C# Source Gen Tools: Effortlessly turn methods into tools using the [FunctionTool] attribute. More info.
  • MCP Support: Full Model Context Protocol integration with dynamic tool discovery. More info.
  • OpenAPI Integration: Generate tools seamlessly from OpenAPI specs.
  • Built-in Tools: Use pre-configured tools for Google Search, Maps, Vertex AI, code execution, and more. More info.

🔄 Orchestration & Workflows

  • Agent Orchestration: Combine agents using SequentialAgent, ParallelAgent, or LoopAgent with customizable LLM pipelines. More info.
  • A2A Protocol: Built-in support for Remote Agent-to-Agent communication (both Client and Server). More info.
  • Plugins & Telemetry: Lifecycle hooks, streaming events, and OpenTelemetry-style tracing. More info.

💾 State & Memory

  • State Management: Flexible session state with placeholder injection for dynamic instructions. More info.
  • Memory: Built-in memory services and persistence options including EF Core storage. More info.

🚀 Development & Deployment

  • Code-First Approach: Define agents, tools, and logic in C# for great testability and versioning.
  • ADK Web UI: Embedded development server with a rich UI, REST/WebSocket APIs, and Swagger. More info.
  • Evaluation: Tools for systematic prompt/agent tuning and LLM-as-judge scoring. More info.

🚀 Installation

Install the preview package via NuGet:

dotnet add package GoogleAdk --prerelease

📚 Documentation

For building, evaluating, and deploying agents, follow the docs and samples:

🏁 Feature Highlight

Same Features & Familiar Interface As Other ADKs:

// Load env variables like GOOGLE_API_KEY
AdkEnv.Load();

var rootAgent = new LlmAgent(new LlmAgentConfig
{
    Name = "search_assistant",
    Description = "An assistant that can search the web.",
    Model = "gemini-2.5-flash",
    Instruction = "You are a helpful assistant. Answer user questions using Google Search when needed. If User asks about weather use the GetWeather tool",
    
    // GetWeatherDataTool is generated from GetWeatherData in the format ADK expects
    Tools = [new GoogleSearchTool(), GetWeatherDataTool]
});

// Creates a webserver that can launch the ADK web UI and other endpoints 
await AdkServer.RunAsync(rootAgent);

/// <summary>
/// Fetches the current weather data for a given location.
/// </summary>
/// <param name="location">The location to get the weather for (e.g., 'New York')</param>
/// <returns>A WeatherData object containing the location and forecast</returns>
[FunctionTool]
static WeatherData? GetWeatherData(string location)
{
    return new WeatherData(location, "Sunny with a chance of rainbows");
}

public record WeatherData(string Location, string Forecast);

Development UI

Same as the Python Development UI. A built-in development UI to help you test, evaluate, debug, and showcase your agent(s).

<img alt="Image" src="https://github.com/user-attachments/assets/1f8db230-b8f2-4b3c-85c8-54c32ea9e379" />

Evaluate Agents

Use GoogleAdk.Evaluation and GoogleAdk.Optimization for eval sets, inference runs, scoring, and prompt tuning. See docs/evaluation-optimization.md and sample GoogleAdk.Samples.EvalOptimize.

🤖 A2A and ADK integration

Remote agent-to-agent communication uses the A2A protocol. Client code lives under src/GoogleAdk.Core/A2a; server wiring is in GoogleAdk.ApiServer (MapA2aApi). End-to-end coverage is in tests/GoogleAdk.E2e.Tests. See docs/a2a.md.

🏗️ Building the Project

To set up the project and build it from source, follow these steps:

  1. Install dependencies:

    dotnet restore "GoogleAdk/GoogleAdk.slnx"
    
  2. Build the project:

    dotnet build "GoogleAdk/GoogleAdk.slnx"
    

🤝 Contributing

We welcome contributions from the community! Whether it's bug reports, feature requests, documentation improvements, or code contributions, please see our guidelines:

📄 License and intellectual property

Google’s Agent Development Kit (ADK)—the reference product family (for example, the Python ADK), its documentation, and related Google materials—is a copyrighted product of Google LLC and/or its affiliates. Google retains applicable rights in that product and in the ADK and Google trademarks.

This repository is a .NET port: an open-source implementation aligned with ADK-style APIs and patterns. It is not described here as Google’s own first-party, directly Google-copyrighted release of ADK for .NET; copyright in this port belongs to its contributors, who license the code under the Apache License, Version 2.0. See LICENSE.md for the full terms, including how upstream ADK, this port, and trademarks are distinguished.

Use, reproduction, and distribution of this repository are governed by the Apache License, Version 2.0; it does not transfer ownership of Google’s ADK, Google’s trademarks, or third-party materials to you. Third-party components may be subject to separate licenses as noted in the applicable files or notices.

If you contribute code, your contributions may be subject to the contributor license arrangements described in the contribution documentation. Nothing in this README is legal advice or a waiver of Google’s or any third party’s rights except as stated in LICENSE.md and applicable licenses.


Happy Agent Building!

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-preview.15 30 4/7/2026
1.0.0-preview.14 31 4/7/2026
1.0.0-preview.13 40 4/5/2026
1.0.0-preview.12 44 4/5/2026
1.0.0-preview.11 52 4/5/2026
1.0.0-preview.10 39 4/4/2026
1.0.0-preview.9 43 4/4/2026
1.0.0-preview.8 33 4/4/2026
1.0.0-preview.7 37 4/4/2026
1.0.0-preview.6 43 4/4/2026
1.0.0-preview.5 34 4/4/2026
1.0.0-preview.4 40 4/3/2026
1.0.0-preview.3 36 4/3/2026
1.0.0-preview.2 52 4/2/2026
1.0.0-preview.1 42 4/2/2026