Skip to main content

AxonFlow v7.5.0 Release Notes

A coordinated release-train cycle: platform v7.5.0 plus the four SDKs ship together. The headline is provider listing parity across all four SDKs, paid for by a single pre-existing wire-shape fix in the Go SDK that requires a major bump.

SurfaceVersionBump
Platformv7.5.0minor
Go SDKv6.0.0major (module path → github.com/getaxonflow/axonflow-sdk-go/v6)
TypeScript SDKv6.2.0minor
Python SDKv6.9.0minor
Java SDKv6.2.0minor
OpenClaw plugin(unchanged)
Claude Code / Cursor / Codex plugins(unchanged)

SDK users

listProviders() — provider introspection across all four SDKs

Every SDK now exposes a method to list configured LLM providers and their per-provider health snapshot, calling GET /api/v1/llm-providers. Three callable shapes per SDK:

VariantReturnsUse when
listProviders() (basic)First page (default 20, server-capped 100) of providersYou only need the first page, or pagination doesn't apply
listProvidersPaged()One page plus PaginationMeta (page, page_size, total_items, total_pages)You need explicit page metadata for UI controls
listAllProviders()All providers across every page (default page_size=100)You need the full set and don't care about page boundaries

Per-language method names:

// Go
providers, err := client.ListProviders(ctx, &axonflow.ListProvidersOptions{Type: "openai"})
result, err := client.ListProvidersPaged(ctx, &axonflow.ListProvidersOptions{Page: 2, PageSize: 50})
all, err := client.ListAllProviders(ctx, &axonflow.ListProvidersOptions{Enabled: true})
// TypeScript
const providers = await client.listProviders({ type: 'openai' });
const page = await client.listProvidersPaged({ page: 2, page_size: 50 });
const all = await client.listAllProviders({ enabled: true });
# Python
providers = client.list_providers(type="openai")
page = client.list_providers_paged(page=2, page_size=50)
all_p = client.list_all_providers(enabled=True)
// Java
List<LLMProvider> providers = client.listLLMProviders("openai", null, null, null);
LLMProviderListResponse page = client.listLLMProvidersPaged("openai", null, 2, 50);
List<LLMProvider> all = client.listAllLLMProviders("openai", true);

ListProvidersOptions (or the equivalent positional parameters in Java) supports filtering by Type (e.g. "openai", "anthropic", "mistral") and Enabled (boolean).

Six new fields on LLMProvider

The platform has emitted these on GET /api/v1/llm-providers for some time, but the SDK type definitions silently dropped them. The v7.5.0 SDK release surfaces all six:

FieldTypeDescription
endpointstringConfigured provider endpoint URL
modelstringDefault model identifier
regionstringProvider region (where applicable)
rate_limitintegerConfigured rate limit per minute (0 = unlimited)
timeout_secondsintegerPer-request timeout
settingsobjectProvider-specific configuration (free-form key/value)

Pre-v7.5.0 platforms return zero values; SDK callers should treat absence as "platform did not populate the field" rather than an error.

Go SDK v6.0.0 — SDKCompatibility wire-shape fix (BREAKING)

The Go SDK's SDKCompatibility.MinSDKVersion and RecommendedSDKVersion fields move from string to map[string]string, matching the actual on-the-wire shape the platform /health endpoint has been returning since v4.8.0. The previous string type silently unmarshalled the JSON object to an empty string, which made the SDK version-mismatch warning a no-op.

Two new helpers replace the previous direct field reads:

compat, _ := client.GetSDKCompatibility(ctx)
minVer := compat.MinSDKVersionFor("go") // "6.0.0"
recVer := compat.RecommendedSDKVersionFor("go") // "6.0.0"

If you currently read SDKCompatibility.MinSDKVersion or RecommendedSDKVersion directly as a string, switch to the per-language helpers. This aligns Go with the existing TypeScript and Java SDK shapes; Python ships the same shape on v6.9.0.

Go SDK module path: /v6

Per Go module conventions, the major bump moves the module path:

# Before (v5.x — still works for users staying on v5.x)
go get github.com/getaxonflow/axonflow-sdk-go/v5

# After (v6.0.0+)
go get github.com/getaxonflow/axonflow-sdk-go/v6

Update import statements:

import "github.com/getaxonflow/axonflow-sdk-go/v6"

The v5.x line keeps receiving security patches; new feature work lands on v6.x.

Sandbox() endpoint default — Go and TypeScript

The decommissioned staging-eu.getaxonflow.com (torn down 2026-04-09) is no longer the default endpoint for the SDK Sandbox() helper. The Go and TypeScript SDKs now default to http://localhost:8080. Production callers who pass an explicit endpoint via NewClient / new AxonFlow({ endpoint }) are unaffected.

If you were relying on the implicit Sandbox() default to reach a hosted environment, switch to passing Endpoint explicitly:

client := axonflow.NewClient(axonflow.AxonFlowConfig{
Endpoint: "https://try.getaxonflow.com",
// ...
})

Operators

platform/{agent,orchestrator}/capabilities.go advertises the v7.5.0 release-train SDK versions as recommended_sdk_version:

{
"min_sdk_version": {"go": "5.0.0", "python": "6.0.0", "typescript": "5.0.0", "java": "5.0.0"},
"recommended_sdk_version": {"go": "6.0.0", "python": "6.9.0", "typescript": "6.2.0", "java": "6.2.0"}
}

The min_sdk_version floor is unchanged — older SDKs continue to work. The recommended_sdk_version bump is what the SDK-side "below recommended" warning checks against; users on v7.4.x SDKs will see the warning until they upgrade to the v7.5.0 train.

/api/v1/executions correctly returns rows for new MAP plan executions: org_id now propagates end-to-end through executePlanHandler and executeWorkflowHandler into workflow_engine.StartExecution. Pre-v7.5.0 stacks wrote org_id="" on every execution row, and the read path's WHERE org_id = $X filter dropped them. Existing rows keep org_id=""; only new executions carry the corrected value.

Upgrade checklist

  • Go users: update import paths from axonflow-sdk-go/v5 to axonflow-sdk-go/v6. If you read SDKCompatibility.MinSDKVersion or RecommendedSDKVersion as string, switch to MinSDKVersionFor("go") / RecommendedSDKVersionFor("go").
  • Python / TypeScript / Java users: additive minor bumps. Bump the package version; no code changes required to keep working.
  • Sandbox users: if you relied on the implicit Sandbox() default to reach staging-eu.getaxonflow.com, that hostname has been decommissioned since 2026-04-09. Pass an explicit Endpoint.

SDK and plugin compatibility

SurfaceMinimumRecommended
Go SDKv5.0.0 (v5.x line still patched)v6.0.0
Python SDKv6.0.0v6.9.0
TypeScript SDKv5.0.0v6.2.0
Java SDKv5.0.0v6.2.0
OpenClaw pluginv1.3.2v1.3.2
Claude Code / Cursor pluginsv0.5.2v0.5.2
Codex pluginv0.4.2v0.4.2