Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
## Enterprise distributions

Check out [Solo Enterprise for kagent](https://www.solo.io/products/kagent-enterprise), a comprehensive agent management interface for creating, validating, debugging, deploying, and monitoring AI agents across federated Kubernetes clusters. Solo Enterprise for kagent adds enterprise-grade capabilities on top of the kagent open source project, including advanced management features, observability tools, and multicluster federation support.
Check out [Solo Enterprise for kagent](https://www.solo.io/products/kagent), a comprehensive agent management interface for creating, validating, debugging, deploying, and monitoring AI agents across federated Kubernetes clusters. Solo Enterprise for kagent adds enterprise-grade capabilities on top of the kagent open source project, including advanced management features, observability tools, and multicluster federation support.
4 changes: 2 additions & 2 deletions docs-site/content/kagent/0.x/concepts/agents.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ If the user asks "List all pods in the cluster", the agent can use the **list_re

Some tools support additional configuration that you set when adding the tool to the agent. For example, any Grafana or Prometheus tools will require an API endpoint URL to be set.

kagent comes with a set of built-in tools that you can use to interact with your environment. kagent also supports [MCP (Model Context Protocol)](https://modelcontextprotocol.io/introduction) tools. Using MCP, you can bring any external tool into kagent and make it available for your agents to run.
kagent comes with a set of built-in tools that you can use to interact with your environment. kagent also supports [MCP (Model Context Protocol)](https://modelcontextprotocol.io/docs/getting-started/intro) tools. Using MCP, you can bring any external tool into kagent and make it available for your agents to run.

## Human-in-the-Loop

Expand Down Expand Up @@ -185,7 +185,7 @@ These skills contain instructions, scripts, and resources that are loaded from c

Container-based skills are actual, callable capabilities—not just descriptions of capabilities.

kagent's skills are similar to [Claude's Agent Skills](https://docs.claude.com/en/docs/agents-and-tools/agent-skills/overview), but with a key advantage: you can use kagent's skills with any LLM provider, not just Anthropic Claude. This means your agents can use skills with OpenAI, Google Vertex AI, Azure OpenAI, Ollama, and any other LLM provider that kagent supports.
kagent's skills are similar to [Claude's Agent Skills](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview), but with a key advantage: you can use kagent's skills with any LLM provider, not just Anthropic Claude. This means your agents can use skills with OpenAI, Google Vertex AI, Azure OpenAI, Ollama, and any other LLM provider that kagent supports.

### Git-based skills

Expand Down
8 changes: 4 additions & 4 deletions docs-site/content/kagent/0.x/concepts/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,16 @@ In the future, we envision more features for the controller, such as:

The kagent engine is the core component of kagent. It runs the agent's conversation loop and supports two runtimes:

- **Python ADK** (default) — Built on top of the [Google ADK](https://google.github.io/adk-docs/) framework. Supports Google ADK-native features and integrations with CrewAI, LangGraph, and OpenAI frameworks.
- **Python ADK** (default) — Built on top of the [Google ADK](https://adk.dev/) framework. Supports Google ADK-native features and integrations with CrewAI, LangGraph, and OpenAI frameworks.
- **Go ADK** — A native Go implementation that provides faster startup (~2 seconds vs ~15 seconds) and lower resource consumption.

Select the runtime by setting the `runtime` field in the agent spec (e.g., `runtime: go`). Both runtimes support MCP tools, HITL, and agent memory. For more details, see [Agents]({{< link path="concepts/agents#runtime" >}}).

For more information on the Google ADK framework:

- [Agents](https://google.github.io/adk-docs/agents/)
- [Tools](https://google.github.io/adk-docs/tools/)
- [Context](https://google.github.io/adk-docs/context/)
- [Agents](https://adk.dev/agents/)
- [Tools](https://adk.dev/tools/)
- [Context](https://adk.dev/context/)

## CLI

Expand Down
2 changes: 1 addition & 1 deletion docs-site/content/kagent/0.x/concepts/tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ tools:

## MCP Tools

MCP stands for [Model Context Protocol](https://modelcontextprotocol.io/introduction). It is a protocol, originally created by Anthropic, which is meant as a flexible way to provide tools and other information to Agents. In the year or so since its inception, it has begun to gain traction and more and more tools are adopting it. The [servers](https://github.com/modelcontextprotocol/servers) repository has a list of MCP servers that you can use immediately with kagent! Of course there are more than just the ones listed there, so we also support bringing in your own MCP servers.
MCP stands for [Model Context Protocol](https://modelcontextprotocol.io/docs/getting-started/intro). It is a protocol, originally created by Anthropic, which is meant as a flexible way to provide tools and other information to Agents. In the year or so since its inception, it has begun to gain traction and more and more tools are adopting it. The [servers](https://github.com/modelcontextprotocol/servers) repository has a list of MCP servers that you can use immediately with kagent! Of course there are more than just the ones listed there, so we also support bringing in your own MCP servers.

**Note:** Double check any community servers before running them in your environment.

Expand Down
2 changes: 1 addition & 1 deletion docs-site/content/kagent/0.x/examples/a2a-byo.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ weight: 1
author: kagent.dev
---

Bring your own custom agents. This example uses the [Agent Development Kit (ADK)](https://google.github.io/adk-docs/), but you can also try out the [LangGraph guide]({{< link path="examples/langchain-byo/" >}}). Such frameworks give you more control over the agent behavior and are well-suited for complex workflows and integration with external systems and APIs.
Bring your own custom agents. This example uses the [Agent Development Kit (ADK)](https://adk.dev/), but you can also try out the [LangGraph guide]({{< link path="examples/langchain-byo/" >}}). Such frameworks give you more control over the agent behavior and are well-suited for complex workflows and integration with external systems and APIs.

Unlike declarative agents that are defined by kagent resources with components such as system instructions, models, and tools written inline, these BYO agents give you full control over agent logic. If you have your own agent, no need to decompose its functions into separate kagent resources. kagent can invoke your agent directly through the A2A protocol.

Expand Down
2 changes: 1 addition & 1 deletion docs-site/content/kagent/0.x/examples/crewai-byo.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ weight: 1
author: kagent.dev
---

Bring your own custom agents. This example uses [CrewAI](https://www.crewai.com/), but you can also try out the [ADK guide]({{< link path="examples/a2a-byo/" >}}) or [LangGraph guide]({{< link path="examples/langchain-byo/" >}}). Such frameworks give you more control over the agent behavior and are well-suited for complex workflows and integration with external systems and APIs.
Bring your own custom agents. This example uses [CrewAI](https://crewai.com/), but you can also try out the [ADK guide]({{< link path="examples/a2a-byo/" >}}) or [LangGraph guide]({{< link path="examples/langchain-byo/" >}}). Such frameworks give you more control over the agent behavior and are well-suited for complex workflows and integration with external systems and APIs.

Unlike declarative agents that are defined by kagent resources with components such as system instructions, models, and tools written inline, these BYO agents give you full control over agent logic. If you have your own agent, no need to decompose its functions into separate kagent resources. kagent can invoke your agent directly through the A2A protocol.

Expand Down
2 changes: 1 addition & 1 deletion docs-site/content/kagent/0.x/examples/human-in-the-loop.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Make sure you have these installed before starting:

| Tool | Install Link |
|------|-------------|
| Docker | [get-docker](https://docs.docker.com/get-docker/) |
| Docker | [get-docker](https://docs.docker.com/get-started/get-docker/) |
| Kind | [quick-start](https://kind.sigs.k8s.io/docs/user/quick-start/#installation) |
| kubectl | [install-tools](https://kubernetes.io/docs/tasks/tools/) |
| Helm | [install](https://helm.sh/docs/intro/install/) |
Expand Down
2 changes: 1 addition & 1 deletion docs-site/content/kagent/0.x/examples/langchain-byo.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Install kagent by following the [quick start]({{< link path="getting-started/qui

## Building a LangGraph agent

The following example builds a simple LangGraph agent from the [kagent code repository](https://github.com/kagent-dev/kagent). The sample app is built with [LangGraph SDK](https://docs.langchain.com/langgraph-platform/sdk) and performs a currency exchange lookup task. It uses Google's Gemini model as the underlying LLM provider.
The following example builds a simple LangGraph agent from the [kagent code repository](https://github.com/kagent-dev/kagent). The sample app is built with [LangGraph](https://docs.langchain.com/oss/python/langgraph/overview) and performs a currency exchange lookup task. It uses Google's Gemini model as the underlying LLM provider.

1. Clone the kagent code repository.

Expand Down
6 changes: 3 additions & 3 deletions docs-site/content/kagent/0.x/examples/slack-a2a.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ This guide demonstrates how to achieve exactly that. We will explore a two-way i
1. **Invoking kagent from Slack:** Learn how to set up a Slack bot that uses kagent's A2A (Agent-to-Agent) protocol to interact with a kagent agent, allowing you to run commands or ask questions about your cluster directly from Slack.
2. **Sending messages from kagent to Slack:** Discover how to configure a kagent agent to use an MCP (Model Context Protocol) server to send messages and notifications to specific Slack channels.

To follow along, you'll first need to create a Slack App. We'll cover the necessary steps below, but you can also refer to the official [Slack documentation](https://api.slack.com/quickstart).
To follow along, you'll first need to create a Slack App. We'll cover the necessary steps below, but you can also refer to the official [Slack documentation](https://docs.slack.dev/quickstart/).

## Creating a Slack App

You will need a Slack workspace and sufficient permissions to create and install Slack apps. Assuming you have that, you can head over to https://api.slack.com/apps and follow the instructions below.

>Note that these instructions might change, so make sure you check out the latest instructions on the [Slack website](https://api.slack.com/quickstart).
>Note that these instructions might change, so make sure you check out the latest instructions on the [Slack website](https://docs.slack.dev/quickstart/).

1. From the Your Apps page click the "Create an app" button.

Expand Down Expand Up @@ -83,7 +83,7 @@ Lastly we'll add a slash command that will allow us to invoke the bot directly u

## Writing a Slack bot

Armed with two tokens, we can now go and write some code! We'll be using Bolt for Python, but you can also use Bolt for other languages. Start by cloning the [A2A Slack template](https://github.com/kagent-dev/a2a-slack-template.git).
Armed with two tokens, we can now go and write some code! We'll be using Bolt for Python, but you can also use Bolt for other languages. Start by cloning the [A2A Slack template](https://github.com/kagent-dev/a2a-slack-template).

1. Clone the repository:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ weight: 3
author: kagent.dev
---

[MCP (Model Context Protocol)](https://modelcontextprotocol.io/introduction) tools extend the agent's abilities by calling external services to perform tasks that require logic or access outside the cluster.
[MCP (Model Context Protocol)](https://modelcontextprotocol.io/docs/getting-started/intro) tools extend the agent's abilities by calling external services to perform tasks that require logic or access outside the cluster.

In this guide, you'll learn how to add an MCP tool to your first AI agent using the kagent resources.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ Everything works with a single `helm install`. No add-ons, no extra databases, n

## Enterprise distributions

Check out [Solo Enterprise for kagent](https://www.solo.io/products/kagent-enterprise), a comprehensive agent management interface for creating, validating, debugging, deploying, and monitoring AI agents across federated Kubernetes clusters. Solo Enterprise for kagent adds enterprise-grade capabilities on top of the kagent open source project, including advanced management features, observability tools, and multicluster federation support.
Check out [Solo Enterprise for kagent](https://www.solo.io/products/kagent), a comprehensive agent management interface for creating, validating, debugging, deploying, and monitoring AI agents across federated Kubernetes clusters. Solo Enterprise for kagent adds enterprise-grade capabilities on top of the kagent open source project, including advanced management features, observability tools, and multicluster federation support.

## Getting Started

Expand Down
2 changes: 1 addition & 1 deletion docs-site/content/kagent/0.x/resources/release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -1432,4 +1432,4 @@ Supported LLM providers are pre-configured by the [kagent-dev/autogen project fo

### Memory API

The Memory API is not supported in ADK. The [agent development kit](https://google.github.io/adk-docs/) is required to bring your own agents. As such, the Memory docs are removed.
The Memory API is not supported in ADK. The [agent development kit](https://adk.dev/) is required to bring your own agents. As such, the Memory docs are removed.
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ If you are using access keys instead of an IAM role, add `apiKeySecret: bedrock-
| Setting | Description |
| --- | --- |
| `provider` | Set to `Bedrock` for the native provider. |
| `model` | The Bedrock model ID. Use the format from the [AWS Bedrock model IDs](https://docs.aws.amazon.com/bedrock/latest/userguide/model-ids.html) (for example, `us.anthropic.claude-sonnet-4-20250514-v1:0`). |
| `model` | The Bedrock model ID. Use the format from the [AWS Bedrock model IDs](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html) (for example, `us.anthropic.claude-sonnet-4-20250514-v1:0`). |
| `apiKeySecret` | Optional. Set this when using a Kubernetes secret that contains `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`. Omit it when the agent uses the pod's AWS credential chain, such as an IAM role attached to the ServiceAccount. |
| `bedrock.region` | The AWS region where the Bedrock model is available (for example, `us-east-1`). |

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ author: kagent.dev

Google Vertex AI is supported for Gemini and Anthropic models.

1. Create the [Google Application Default Credentials file](https://cloud.google.com/docs/authentication/provide-credentials-adc) and store it in a Kubernetes Secret. If your credentials are in a different location, update the filepath.
1. Create the [Google Application Default Credentials file](https://docs.cloud.google.com/docs/authentication/provide-credentials-adc) and store it in a Kubernetes Secret. If your credentials are in a different location, update the filepath.

```shell
kubectl create secret generic kagent-google-creds -n kagent --from-file=~/.config/gcloud/application_default_credentials.json
Expand Down
2 changes: 1 addition & 1 deletion docs-site/content/kagent/1.x/observability/otel-stack.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ Agent Substrate traces do not join the trace of the agent request that caused th

## Install Tempo and Loki

Install the backends that store traces and logs. Both run as a single replica, which suits evaluation. Tempo keeps its traces in memory, and Loki keeps its logs on a small persistent volume, so your cluster needs a default StorageClass, which a kind cluster has. For production, follow the Grafana guidance for [Tempo](https://grafana.com/docs/tempo/latest/setup/helm-chart/) and [Loki](https://grafana.com/docs/loki/latest/setup/install/helm/).
Install the backends that store traces and logs. Both run as a single replica, which suits evaluation. Tempo keeps its traces in memory, and Loki keeps its logs on a small persistent volume, so your cluster needs a default StorageClass, which a kind cluster has. For production, follow the Grafana guidance for [Tempo](https://grafana.com/docs/tempo/latest/set-up-for-tracing/setup-tempo/deploy/kubernetes/helm-chart/) and [Loki](https://grafana.com/docs/loki/latest/setup/install/helm/).

1. Install Tempo, with an OTLP receiver for traces.
```bash
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ The native provider authenticates with a Bedrock API key, which kagent sends as
| Field | Description |
| ----- | ----------- |
| `apiKeySecret` | The name of the Kubernetes Secret that holds `AWS_BEARER_TOKEN_BEDROCK`. |
| `model` | The Bedrock model ID. For the format, see the [AWS Bedrock model IDs](https://docs.aws.amazon.com/bedrock/latest/userguide/model-ids.html). |
| `model` | The Bedrock model ID. For the format, see the [AWS Bedrock model IDs](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html). |
| `provider` | The provider to use, `Bedrock`. |
| `bedrock.region` | The AWS region that serves the model. This field is required. |

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ The `Anthropic` provider calls the Anthropic API directly.

## Create the ModelConfig

1. Save your [Anthropic API key](https://console.anthropic.com/settings/keys) as an environment variable.
1. Save your [Anthropic API key](https://platform.claude.com/settings/keys) as an environment variable.
```bash
export ANTHROPIC_API_KEY=<your_api_key>
```
Expand Down Expand Up @@ -43,7 +43,7 @@ The `Anthropic` provider calls the Anthropic API directly.
| ----- | ----------- |
| `apiKeySecret` | The name of the Kubernetes Secret that stores the API key, in the same namespace as this ModelConfig. |
| `apiKeySecretKey` | The key within that Secret that holds the API key. |
| `model` | The model to use. For the available models, see the [Anthropic model docs](https://docs.anthropic.com/en/docs/about-claude/models). |
| `model` | The model to use. For the available models, see the [Anthropic model docs](https://platform.claude.com/docs/en/models/overview). |
| `provider` | The provider to use, `Anthropic`. |
| `anthropic` | Settings that only the Anthropic provider takes. An empty block is valid. |

Expand Down
4 changes: 2 additions & 2 deletions docs-site/content/kagent/1.x/setup/model-providers/ollama.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ weight: 20
author: kagent.dev
---

[Ollama](https://ollama.com) runs large language models on hardware that you control. The `Ollama` provider points {{< reuse "kagent-docs/snippets/name-product.md" >}} at a self-hosted Ollama server or at an [Ollama Cloud](https://ollama.com/cloud) model. A self-hosted server takes a host address and no API key. An Ollama Cloud model takes an API key, and leaves the host address unset. The `ModelConfig` selects between them.
[Ollama](https://ollama.com) runs large language models on hardware that you control. The `Ollama` provider points {{< reuse "kagent-docs/snippets/name-product.md" >}} at a self-hosted Ollama server or at an [Ollama Cloud](https://docs.ollama.com/cloud) model. A self-hosted server takes a host address and no API key. An Ollama Cloud model takes an API key, and leaves the host address unset. The `ModelConfig` selects between them.

> [!IMPORTANT]
> kagent agents call tools, so choose a model that supports function calling. A model without tool support connects successfully and then fails to use any tool that you bind to it.
Expand Down Expand Up @@ -101,7 +101,7 @@ EOF

## Use Ollama Cloud

[Ollama Cloud](https://ollama.com/cloud) serves hosted models that you reach with an API key. The same `Ollama` provider covers them, with a differently shaped `ModelConfig`: leave `ollama.host` unset, and set `apiKeySecret` and `apiKeySecretKey` to the Secret that holds the key.
[Ollama Cloud](https://docs.ollama.com/cloud) serves hosted models that you reach with an API key. The same `Ollama` provider covers them, with a differently shaped `ModelConfig`: leave `ollama.host` unset, and set `apiKeySecret` and `apiKeySecretKey` to the Secret that holds the key.

1. Save your [Ollama Cloud API key](https://ollama.com/settings/keys) as an environment variable.
```bash
Expand Down
Loading
Loading