Kotlinv2.4.0

版本控制

Koog 遵循 语义化版本控制,格式为 X.Y.Z(例如 1.0.0)。

该框架是 API 稳定的:一旦发布了公共 API,在没有主版本升级的情况下不会对其进行破坏。

版本组件

组件名称格式含义
X主版本X.y.z对现有 API 的破坏性变更
Y次版本x.Y.z新 API 添加和弃用;所有现有 API 继续工作
Z修订版本x.y.Z仅包含 Bug 修复;无 API 变更

主版本 (X)

  • 可能对现有 API 引入破坏性变更。
  • 旧的 API 可能会被移除。
  • 将提供迁移指南。
  • 每年最多发布一次。

次版本 (Y)

  • 可能添加新 API。
  • 可能弃用现有 API(提供替代方案),但被弃用的 API 仍可正常使用。
  • 无破坏性变更 — 所有针对上一个次版本编译的代码将继续编译并运行。
  • 每月最多发布一次。

修订版本 (Z)

  • 仅包含 Bug 修复。
  • 无 API 添加、移除或弃用。
  • 每周最多发布一次。

弃用政策

在次版本(Y)中弃用的 API 将至少保留到下一个主版本(X)。 弃用警告将标明推荐的替代方案。

稳定模块与 Beta 模块

一些模块被认为是实验性的,发布的版本带有 -beta 版本后缀(例如 1.0.0-beta),而不是标准的 X.Y.Z。一个模块处于 Beta 阶段可能是由于以下原因之一:

  • 外部集成 — 底层 LLM 提供商 API 或外部框架(如 Spring AI)本身可能不稳定,或者会发生频繁或预期的更改。
  • 实验性功能 — 该功能领域仍在探索中,API 形状可能会发生演变(例如 GOAP 规划策略)。
  • 实验性协议 — 该模块实现了一个本身尚不稳定的协议(例如 A2A、Kotlin MCP)。

虽然我们尽力保持 Beta 模块的稳定,但跨次版本可能会发生一些 API 变更。Beta 变更不会影响任何稳定模块。

版本为 X.Y.Z 的稳定模块始终与版本为 X.Y.Z-beta 的 Beta 模块兼容(反之亦然)。所有模块都可以同步更新。

汇总模块

模块版本内容
koog-agents1.0.0所有稳定模块(传递性)— 推荐的起点
koog-agents-additions1.0.0-beta大多数 Beta/实验性模块(独立外部集成除外)

模块版本

=== "稳定模块 (1.0.0)"

| 模块 | 版本 |
|--------|---------|
| `agents` | `1.0.0` |
| `agents-core` | `1.0.0` |
| `agents-features` | `1.0.0` |
| `agents-features-chat-history-jdbc` | `1.0.0` |
| `agents-features-chat-memory-sql` | `1.0.0` |
| `agents-features-event-handler` | `1.0.0` |
| `agents-features-memory` | `1.0.0` |
| `agents-features-opentelemetry` | `1.0.0` |
| `agents-features-persistence-jdbc` | `1.0.0` |
| `agents-features-snapshot` | `1.0.0` |
| `agents-features-sql` | `1.0.0` |
| `agents-features-tokenizer` | `1.0.0` |
| `agents-features-trace` | `1.0.0` |
| `agents-mcp-metadata` | `1.0.0` |
| `agents-test` | `1.0.0` |
| `agents-tools` | `1.0.0` |
| `agents-utils` | `1.0.0` |
| `embeddings` | `1.0.0` |
| `embeddings-base` | `1.0.0` |
| `embeddings-llm` | `1.0.0` |
| `http-client` | `1.0.0` |
| `http-client-core` | `1.0.0` |
| `http-client-java` | `1.0.0` |
| `http-client-ktor` | `1.0.0` |
| `http-client-okhttp` | `1.0.0` |
| `http-client-test` | `1.0.0` |
| `koog-agents` | `1.0.0` |
| `koog-spring-ai` | `1.0.0` |
| `prompt` | `1.0.0` |
| `prompt-cache` | `1.0.0` |
| `prompt-cache-files` | `1.0.0` |
| `prompt-cache-model` | `1.0.0` |
| `prompt-executor` | `1.0.0` |
| `prompt-executor-anthropic-client` | `1.0.0` |
| `prompt-executor-bedrock-client` | `1.0.0` |
| `prompt-executor-cached` | `1.0.0` |
| `prompt-executor-clients` | `1.0.0` |
| `prompt-executor-model` | `1.0.0` |
| `prompt-executor-ollama-client` | `1.0.0` |
| `prompt-executor-openai-client` | `1.0.0` |
| `prompt-executor-openai-client-base` | `1.0.0` |
| `prompt-executor-openrouter-client` | `1.0.0` |
| `prompt-llm` | `1.0.0" |
| `prompt-markdown` | `1.0.0` |
| `prompt-model` | `1.0.0` |
| `prompt-processor` | `1.0.0` |
| `prompt-structure` | `1.0.0` |
| `prompt-tokenizer` | `1.0.0` |
| `prompt-xml` | `1.0.0` |
| `rag-base` | `1.0.0` |
| `serialization` | `1.0.0` |
| `serialization-core` | `1.0.0` |
| `serialization-jackson` | `1.0.0` |
| `serialization-test` | `1.0.0` |
| `test-tck` | `1.0.0` |
| `test-utils` | `1.0.0` |
| `utils` | `1.0.0` |

=== "Beta 模块 (1.0.0-beta)"

| 模块 | 版本 |
|--------|---------|
| `a2a-client` | `1.0.0-beta` |
| `a2a-core` | `1.0.0-beta` |
| `a2a-server` | `1.0.0-beta` |
| `a2a-test` | `1.0.0-beta` |
| `a2a-test-server-tck` | `1.0.0-beta` |
| `a2a-transport-client-jsonrpc-http` | `1.0.0-beta` |
| `a2a-transport-core-jsonrpc` | `1.0.0-beta` |
| `a2a-transport-server-jsonrpc-http` | `1.0.0-beta` |
| `agents-ext` | `1.0.0-beta` |
| `agents-features-a2a-client` | `1.0.0-beta` |
| `agents-features-a2a-core` | `1.0.0-beta` |
| `agents-features-a2a-server` | `1.0.0-beta` |
| `agents-features-acp` | `1.0.0-beta` |
| `agents-features-chat-history-aws` | `1.0.0-beta` |
| `agents-features-longterm-memory` | `1.0.0-beta` |
| `agents-features-longterm-memory-aws` | `1.0.0-beta` |
| `agents-mcp` | `1.0.0-beta` |
| `agents-mcp-server` | `1.0.0-beta` |
| `agents-planner` | `1.0.0-beta` |
| `koog-agents-additions` | `1.0.0-beta` |
| `koog-ktor` | `1.0.0-beta` |
| `koog-spring-ai-common` | `1.0.0-beta` |
| `koog-spring-ai-starter-chat-memory` | `1.0.0-beta` |
| `koog-spring-ai-starter-model-chat` | `1.0.0-beta` |
| `koog-spring-ai-starter-model-embedding` | `1.0.0-beta` |
| `koog-spring-ai-starter-vector-store` | `1.0.0-beta` |
| `koog-spring-boot-starter` | `1.0.0-beta` |
| `prompt-cache-redis` | `1.0.0-beta` |
| `prompt-executor-dashscope-client` | `1.0.0-beta` |
| `prompt-executor-deepseek-client` | `1.0.0-beta` |
| `prompt-executor-google-client` | `1.0.0-beta` |
| `prompt-executor-litert-client` | `1.0.0-beta` |
| `prompt-executor-llms-all` | `1.0.0-beta` |
| `prompt-executor-mistralai-client` | `1.0.0-beta` |
| `rag-vector` | `1.0.0-beta` |