Skip to content

Releases: agentic-ai-java/connect

Release list

connect 0.1.0

Choose a tag to compare

@yuluo-yx yuluo-yx released this 12 Oct 16:08

connect 0.1.0

First Maven Central release of connect, a Java 17 library for AI protocol conversion.

Protocol conversion

  • Convert requests, complete responses, and streaming events across OpenAI Chat Completions, OpenAI Responses, Anthropic Messages, and Gemini generateContent (all twelve protocol pairs).
  • Preserve function tools, tool results, reasoning controls, media, provider usage, stream lifecycle, and finish reasons where the target protocol supports them.
  • Report conversion losses through structured diagnostics with ALLOW, SAFE, and STRICT request policies.

Provider adaptation and history

  • Add optional ProviderProfile hooks applied once to the final request, including same-format conversions.
  • Add an explicit DeepSeek Chat profile for OPENAI_CHAT targets, including reasoning controls, token limits, sampling diagnostics, and assistant history validation.
  • Preserve complete reasoning separately from visible assistant content and normalize Responses tool history, including parallel calls.
  • Mark Responses reasoning summaries as display-only, not complete replayable reasoning.
  • Add DeepSeek-compatible cache usage fallbacks without double counting or overriding explicit standard fields.

Maven dependency

<dependency>
  <groupId>io.github.agentic-ai-java</groupId>
  <artifactId>connect</artifactId>
  <version>0.1.0</version>
</dependency>

Requires Java 17+. Gson 2.13.2 is the sole runtime dependency; the library JAR is not shaded. No custom repository or GitHub Packages authentication is required.

Integration and migration

HTTP transport, authentication, routing, SSE framing, retries, and billing remain the host application's responsibility. This library replaces a protocol-conversion layer, not a complete gateway plugin.

ConversionContext.upstreamModel now overrides the payload model instead of acting only as a fallback. Leave it empty to preserve the incoming model, or set the actual upstream model after routing. Use a separate context per request and reuse it for the corresponding response/stream.

Use SAFE for DeepSeek requests when incompatible features must be rejected. Retain original reasoning history and inspect diagnostics; reasoning summaries must not be treated as complete DeepSeek reasoning history. The DeepSeek Chat profile does not cover native Anthropic/Responses endpoints.

Verification

  • Java 17 and 21 builds with compiler warnings treated as errors.
  • 152 library tests, 6 gateway example tests, and 14 publication-tool tests.
  • JaCoCo line coverage: 91.71%; release gate: at least 90%, without production exclusions.
  • Signed POM, library, sources, and Javadoc artifacts; runtime dependency audit via OSV.

Real ShenYu integration, live provider E2E, sustained load, and chaos testing have not yet been performed. Review the README integration and migration guidance before replacing an existing gateway implementation.