-
Notifications
You must be signed in to change notification settings - Fork 330
Expand file tree
/
Copy pathmkdocs.yml
More file actions
260 lines (253 loc) · 17.6 KB
/
mkdocs.yml
File metadata and controls
260 lines (253 loc) · 17.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
site_name: Koog
site_url: https://docs.koog.ai/
nav:
- Documentation:
- Overview:
- index.md
- Key features: key-features.md
- LLM providers: llm-providers.md
- Glossary: glossary.md
- Getting started: getting-started.md
- Agent types:
- Basic agents: basic-agents.md
- Functional agents: functional-agents.md
- Complex workflow agents: complex-workflow-agents.md
- Planner agents: planner-agents.md
- Prompts:
- prompts/index.md
- Structured prompts: prompts/structured-prompts.md
- Multimodal inputs: prompts/multimodal-inputs.md
- Running prompts:
- LLM clients: prompts/llm-clients.md
- Prompt executors: prompts/prompt-executors.md
- Handling failures: prompts/handling-failures.md
- LLM response caching: prompts/llm-response-caching.md
- Tools:
- Overview: tools-overview.md
- Built-in tools: built-in-tools.md
- Annotation-based tools: annotation-based-tools.md
- Class-based tools: class-based-tools.md
- Custom tools schema: tools/tool-descriptor-schemer.md
- Events: agent-events.md
- Strategies:
- Pre-defined nodes and components: nodes-and-components.md
- Predefined strategies: predefined-agent-strategies.md
- Custom strategy graphs: custom-strategy-graphs.md
- Parallel node execution: parallel-node-execution.md
- Data transfer between nodes: data-transfer-between-nodes.md
- History compression: history-compression.md
- Model Context Protocol: model-context-protocol.md
- A2A Protocol:
- Overview: a2a-protocol-overview.md
- A2A server implementation: a2a-server.md
- A2A client implementation: a2a-client.md
- A2A and Koog integration: a2a-koog-integration.md
- Agent Client Protocol: agent-client-protocol.md
- LLM parameters: llm-parameters.md
- Model capabilities: model-capabilities.md
- Content moderation: content-moderation.md
- Backend framework integrations:
- Ktor: ktor-plugin.md
- Spring Boot: spring-boot.md
- Advanced usage:
- Structured output: structured-output.md
- Streaming API: streaming-api.md
- Custom nodes: custom-nodes.md
- LLM sessions and manual history management: sessions.md
- Subgraphs:
- Overview: subgraphs-overview.md
- Custom subgraphs: custom-subgraphs.md
- Embeddings: embeddings.md
- Ranked document storage: ranked-document-storage.md
- Features:
- Overview: features-overview.md
- Event handlers: agent-event-handlers.md
- Tracing: tracing.md
- Memory: agent-memory.md
- Agent Persistence: agent-persistence.md
- OpenTelemetry:
- Overview: opentelemetry-support.md
- Langfuse Exporter: opentelemetry-langfuse-exporter.md
- Weave Exporter: opentelemetry-weave-exporter.md
- Custom features: custom-features.md
- Testing: testing.md
- Why Koog: why-koog.md
- Examples:
- Overview: examples.md
- Attachments: examples/Attachments.md
- Banking: examples/Banking.md
- BedrockAgent: examples/BedrockAgent.md
- Calculator: examples/Calculator.md
- Chess: examples/Chess.md
- Guesser: examples/Guesser.md
- Langfuse: examples/Langfuse.md
- MCP - Google Maps: examples/GoogleMapsMcp.md
- MCP - Playwright: examples/PlaywrightMcp.md
- MCP - Unity: examples/UnityMcp.md
- OpenTelemetry: examples/OpenTelemetry.md
- VaccumAgent: examples/VaccumAgent.md
- Weave: examples/Weave.md
- API reference: https://api.koog.ai/
markdown_extensions:
- pymdownx.highlight:
anchor_linenums: true
line_spans: __span
pygments_lang_class: true
- pymdownx.inlinehilite
- pymdownx.snippets
- pymdownx.details
- pymdownx.superfences:
custom_fences:
- name: mermaid
class: mermaid
format: !!python/name:pymdownx.superfences.fence_code_format
- admonition
- attr_list
- md_in_html
- admonition
- pymdownx.tabbed:
alternate_style: true
slugify: !!python/object/apply:pymdownx.slugs.slugify
kwds:
case: lower
- pymdownx.emoji:
emoji_index: !!python/name:material.extensions.emoji.twemoji
emoji_generator: !!python/name:material.extensions.emoji.to_svg
plugins:
- search
- redirects:
redirect_maps:
'simple-api-getting-started.md': 'index.md'
'advanced-tool-implementation.md': 'class-based-tools.md'
'key-concepts.md': 'glossary.md'
'single-run-agents.md': 'basic-agents.md'
- llmstxt:
markdown_description: Koog is a Kotlin-based framework designed to build and run AI agents entirely in idiomatic Kotlin.
full_output: llms-full.txt
# List of sections and pages with descriptions, to be included in llms.txt
sections:
Documentation:
- index.md: This page provides a general overview of the Koog framework, its key features and setup.
- key-features.md: This page provides a list of key features of the Koog framework.
- llm-providers.md: This page provides a list of LLM providers supported by Koog.
- glossary.md: This page provides explanations of key terms and concepts related to Koog and agentic development.
Getting started:
- getting-started.md: This page provides a guide on installing Koog and creating a minimal AI agent.
Agent types:
- basic-agents.md: This guide lets you build a basic agent with minimum required configuration.
- functional-agents.md: This guide shows you how to build a lightweight, non‑graph agent that you control with a simple loop.
- complex-workflow-agents.md: This page explains how you can create agents that handle complex workflows by defining custom strategies, tools, configurations, and custom input and output types.
Prompts:
- prompts/index.md: This page includes an overview of how to create and run prompts with Koog.
- prompts/structured-prompts.md: This page provides details about structured prompts created using the Kotlin DSL.
- prompts/multimodal-inputs.md: This page provides details about multimodal inputs, which allow you to send text, images, audio, video, and documents in your prompts.
- prompts/handling-failures.md: This page provides details about handling failures in prompts.
- prompts/llm-response-caching.md: This page provides details about prompt caching, which lets you cache responses from LLMs to avoid repeated requests.
Running prompts:
- prompts/llm-clients.md: This page provides details about LLM clients, which are used to run prompts and receive responses from LLMs. They allow working with a single LLM provider only.
- prompts/prompt-executors.md: This page provides details about prompt executors, which wrap LLM clients and are used to run prompts and receive responses from LLMs. They allow working with multiple LLM providers in a unified way.
Tools:
- tools-overview.md: This page provides a broad overview of the implementation of tools in Koog.
- built-in-tools.md: This page provides details about built-in tools that handle common scenarios of agent-user interaction.
- annotation-based-tools.md: This page shows you how you can use annotations to expose functions as tools for large language models (LLMs). This approach is useful when you need to expose existing functionality to LLMs without implementing tool descriptions manually.
- class-based-tools.md: This page explains the implementation of class-based tools, which provides enhanced flexibility and customized behavior. With this approach, you have full control over a tool, including its parameters, metadata, execution logic, and how it is registered and invoked.
Events:
- agent-events.md: This page describes agent events, which are actions or interactions that occur as part of an agent workflow.
Strategies:
- nodes-and-components.md: This page provides a quick reference of readily available nodes and components as fundamental building blocks of agent workflows in Koog.
- predefined-agent-strategies.md: This page lists agent strategies that are readily available for use in Koog, and provides examples of their implementation in AI agents.
- custom-strategy-graphs.md: This page explains how you can create a custom strategy graph that lets you tailor the behavior of an agent to your specific needs.
- parallel-node-execution.md: This guide provides a basic reference and examples of using parallel node execution to run multiple AI agent nodes concurrently, improving performance and enabling complex workflows.
- data-transfer-between-nodes.md: This page explains how you can store and pass data using AIAgentStorage, which is a key-value storage system designed as a type-safe way to pass data between different nodes or even subgraphs.
History compression:
- history-compression.md: This page provides details about different implementations and different types of history compression strategies to reduce history size and token usage.
Model Context Protocol:
- model-context-protocol.md: This page provides details about Koog integration with MCP servers, which allows you to incorporate MCP tools into your Koog agents.
A2A Protocol:
- a2a-protocol-overview.md: This page provides an overview of the A2A (Agent-to-Agent) protocol implementation in the Koog agentic framework.
- a2a-server.md: This page provides details about the A2A server implementation in the Koog agentic framework. The A2A server is responsible for handling requests from A2A clients according to the A2A protocol specification.
- a2a-client.md: This page provides details about the A2A client implementation in the Koog agentic framework. The A2A client is responsible for sending requests to A2A servers according to the A2A protocol specification.
- a2a-koog-integration.md: This page provides details about the integration of A2A with Koog agents. It includes information about how to define your agent as A2A server and connect it to the Koog agent system.
Agent Client Protocol:
- agent-client-protocol.md: This page provides details about the Agent Client Protocol (ACP) integration in Koog, which enables AI agents to communicate with client applications through a standardized, bidirectional interface.
LLM Parameters:
- llm-parameters.md: This page provides details about LLM Parameters, which allow you to control and customize the behavior of language models by adjusting parameters like temperature, token limits, schemas, and tool choices.
Model capabilities:
- model-capabilities.md: This page provides an overview of different features or parameters that the models support, referred to as model capabilities.
Content moderation:
- content-moderation.md: This page provides details about content moderation in Koog. The page includes a general overview of content moderation, types of moderated content, list of supported providers and models, moderation categories, and examples of moderation results.
Backend framework integrations:
- ktor-plugin.md: This guide provides instructions on how to add the Koog plugin to Ktor. The guide includes a quickstart, and details about the configuration and use of the Ktor plugin.
- spring-boot.md: This guide provides instructions on how to use Koog and Spring Boot integration to incorporate AI agents into your Spring Boot applications with minimal setup.
Advanced usage:
- structured-output.md: This page explains how to use the Structured Output API to define data structures, generate schemas, and request structured responses from LLMs.
- streaming-api.md: This page explains how to use the Streaming API to efficiently handle streamed responses that include structured data in Markdown format.
- custom-nodes.md: This page provides detailed instructions on how to implement your own custom nodes in the Koog framework. It provides details about the basic implementation, as well as the implementation of nodes with arguments and parametrized nodes.
- sessions.md: This page provides detailed information about LLM sessions, including how to work with read and write sessions, manage conversation history, and make requests to language models.
Subgraphs:
- subgraphs-overview.md: This page provides detailed information about subgraphs in the Koog framework. It lets you understand what subgraphs are and provides information about subgraph context.
- custom-subgraphs.md: This guide provides code templates and common patterns in the creation of custom subgraphs for agentic workflows in Koog.
Embeddings:
- embeddings.md: This page provides information on how to generate and compare embeddings of text and code. The page includes a getting started section for local embeddings, details about OpenAI embeddings and examples of comparison of embeddings.
Ranked document storage:
- ranked-document-storage.md: This guide provides details about the implementation and use of Resource-Augmented Generation (RAG) systems in Koog. The page includes sections about existing RAG implementations and how to implement your own RAG systems in Koog.
Features:
- features-overview.md: This page provides a short overview of features as a way to extend and enhance the functionality of AI agents.
- agent-event-handlers.md: This page provides details about event handlers that let you monitor and respond to specific events during the agent workflow.
- tracing.md: This page includes details about the Tracing feature, which provides comprehensive tracing capabilities for AI agents. The page includes configuration and initialization details, examples and quickstart, details about error handling and FAQ and troubleshooting.
- agent-memory.md: This page provides details about the AgentMemory feature which lets AI agents store, retrieve, and use information across conversations. The page includes configuration and initialization details, examples and quickstart, best practices, error handling and FAQ and troubleshooting.
- agent-persistence.md: This page describes Agent Persistence, which is a feature that lets you save and restore the state of an agent at specific points during execution. The page includes key concepts, prerequisites, installation instructions, configuration, and basic and advanced usage guides.
OpenTelemetry:
- opentelemetry-support.md: This page provides details about the support for OpenTelemetry with the Koog agentic framework for tracing and monitoring AI agents. The page includes details about installation and configuration, span types and attributes, and common exporters.
- opentelemetry-langfuse-exporter.md: This page provides information about Koog's built-in support for exporting agent traces to Langfuse, a platform for observability and analytics of AI applications. The page provides details about LangFuse integration configuration and an example of its use.
- opentelemetry-weave-exporter.md: This page provides details about W&B Weave integration in Koog to capture prompts, completions, system context, and execution traces and visualize them directly in a W&B workspace. The page provides details about W&B Weave integration setup, configuration and an example of its use.
Testing:
- testing.md: This guide provides a detailed overview of the Testing feature that provides a comprehensive framework for testing AI agent pipelines, subgraphs, and tool interactions in Koog. The page includes configuration and initialization details, basic and advanced examples and an FAQ and troubleshooting section.
Why Koog:
- why-koog.md: This page provides an overview of reasons why you should select Koog as a framework for building AI agents.
Examples:
- examples.md: This page provides a list of examples to help you understand how to implement AI agents for different use cases. These examples demonstrate key features and patterns that you can adapt for your own applications.
- examples/*.md
theme:
name: material
custom_dir: overrides
favicon: img/favicon.ico
logo: img/favicon.ico
features:
- content.code.copy
- content.action.edit
- content.tabs.link
- navigation.expand
- navigation.tabs
- navigation.tabs.sticky
- navigation.instant
- navigation.indexes
color_mode: light
nav_style: light
user_color_mode_toggle: true
palette:
# Palette toggle for light mode
- scheme: default
toggle:
icon: material/toggle-switch
name: Switch to dark mode
primary: black
accent: blue
# Palette toggle for dark mode
- scheme: slate
toggle:
icon: material/toggle-switch-off-outline
name: Switch to light mode
primary: black
accent: blue
extra_css:
- stylesheets/extra.css
repo_url: https://github.com/JetBrains/koog
repo_name: "Koog on GitHub"
edit_uri: edit/develop/docs/docs/
copyright: Copyright © 2000-2025 JetBrains s.r.o.
extra:
social:
- icon: fontawesome/brands/slack
link: https://docs.koog.ai/koog-slack-channel/
name: Koog on Slack