NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #4208 most downloaded on pub.dev
Interface definitions for dartantic_ai for use in building custom providers.
Last release 3 months ago
02 Jul 2026
Ships fairly regularly
a new release about every 6 weeks
Nearly every release is documented
notes for 12 of 12 stable releases
Nothing withdrawn
no release was ever pulled
1 years old
12 releases · first in 2025
One column per month.
Updated genai_primitives, json_schema_builder, meta, and uuid dependency constraints to their latest compatible releases.
genai_primitives, json_schema_builder, meta, and uuid
dependency constraints to their latest compatible releases.Added ModelKind.video for classifying video generation models in provider discovery and defaults. Exhaustive switches on ModelKind must include this v
ModelKind.videoAdded ModelKind.video for classifying video generation models in provider
discovery and defaults. Exhaustive switches on ModelKind must include this
value (or a default branch).
Added optional thinking field to ChatResult for streaming thinking content. During streaming, thinking deltas are delivered via chunk.thinking for rea
ChatResult.thinkingAdded optional thinking field to ChatResult for streaming thinking content.
During streaming, thinking deltas are delivered via chunk.thinking for real-time
display, while the consolidated ThinkingPart appears in final messages for history.
Core message and part types are now provided by the genai_primitives package
and re-exported from dartantic_interface. This provides better
interoperability with other GenAI tooling in the Dart ecosystem.
Types re-exported from genai_primitives:
ChatMessage, ChatMessageRoleStandardPart, TextPart, DataPart, LinkPart, ThinkingPartToolPart, ToolPartKindToolDefinitionIn genai_primitives 0.2.0, the Part type hierarchy was reorganized:
Part became the extendable base classStandardPart is the sealed class containing built-in part typesDartantic provides Part as a typedef alias for StandardPart, so existing
code continues to work unchanged. If you need to create a custom Part that
extends the base class, import genai_primitives directly:
import 'package:genai_primitives/genai_primitives.dart' as gaip;
class MyCustomPart extends gaip.Part { ... }
The Schema type is now provided by the json_schema_builder package. Use the
S builder class for constructing schemas:
import 'package:dartantic_interface/dartantic_interface.dart';
// Build schemas with S.*
final schema = S.object(properties: {
'name': S.string(description: 'User name'),
'age': S.integer(minimum: 0),
});
Added ThinkingPart to represent extended thinking/reasoning content from LLMs.
This provides a unified representation across providers that support thinking
(OpenAI Responses, Anthropic, Google).
Added MessagePartHelpers extension on Iterable<Part>:
thinkingParts - extracts all ThinkingPart instancesthinkingText - concatenates all thinking textBREAKING: Removed ProviderCaps enum from the interface. Provider capabilities were only meaningful for testing default models and provided no provider
ProviderCaps enum from the interface. Provider
capabilities were only meaningful for testing default models and provided no
provider-wide guarantees. Capability filtering for tests is now handled via
ProviderTestCaps in dartantic_ai's test infrastructure. Consider the
Provider.listModels method for run-time model details, e.g. chat, embedding,
media, etc.caps field from Provider base class.added optional 'thinking' field to ChatResult for enhanced reasoning output
ProviderCaps.vision => ProviderCaps.chatVision to tighten the meaning
made usage nullable for when there is no usage.
- added ProviderCaps.thinking
ProviderCaps.thinking- remove custom lint dependency
fixed a compilation error on the web
downgrading meta for wider compatibility
- initial release
Your coding agent can read these notes before it upgrades. Set up the MCP server →