dartantic_interface
Interface definitions for dartantic_ai for use in building custom providers.
4.0.1
3.3K downloads/mo
#4503 most downloaded on pub.dev
csells/dartantic_ai
What this package is like to depend on
Last release 1 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
9 releases in the last 12 months
see the full history below
Release timeline
12 releases · Jul 2025 to Jul 2026Releases
latest 12-
4.0.102 Jul 2026Release notes
Open source →Dependencies
- Updated
genai_primitives,json_schema_builder,meta, anduuiddependency constraints to their latest compatible releases.
- Updated
-
4.0.029 Mar 2026Release notes
Open source →Breaking change:
ModelKind.videoAdded
ModelKind.videofor classifying video generation models in provider discovery and defaults. Exhaustiveswitches onModelKindmust include this value (or a default branch). -
3.0.025 Jan 2026Release notes
Open source →Streaming Thinking via
ChatResult.thinkingAdded optional
thinkingfield toChatResultfor streaming thinking content. During streaming, thinking deltas are delivered viachunk.thinkingfor real-time display, while the consolidatedThinkingPartappears in final messages for history.Breaking Change: Migrated to genai_primitives Types
Core message and part types are now provided by the
genai_primitivespackage and re-exported fromdartantic_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,ToolPartKindToolDefinition
Part Type Alias (genai_primitives 0.2.0 compatibility)
In genai_primitives 0.2.0, the Part type hierarchy was reorganized:
Partbecame the extendable base classStandardPartis the sealed class containing built-in part types
Dartantic provides
Partas a typedef alias forStandardPart, 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 { ... }Breaking Change: Migrated to json_schema_builder for Schemas
The
Schematype is now provided by thejson_schema_builderpackage. Use theSbuilder 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), });New: ThinkingPart for Extended Reasoning
Added
ThinkingPartto represent extended thinking/reasoning content from LLMs. This provides a unified representation across providers that support thinking (OpenAI Responses, Anthropic, Google).New Convenience Extensions
Added
MessagePartHelpersextension onIterable<Part>:thinkingParts- extracts allThinkingPartinstancesthinkingText- concatenates all thinking text
-
2.0.011 Dec 2025Release notes
Open source →- BREAKING: Removed
ProviderCapsenum 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 viaProviderTestCapsindartantic_ai's test infrastructure. Consider theProvider.listModelsmethod for run-time model details, e.g. chat, embedding, media, etc. - Removed
capsfield fromProviderbase class.
- BREAKING: Removed
-
1.2.030 Oct 2025Release notes
Open source →- added optional 'thinking' field to ChatResult for enhanced reasoning output
- updated Provider to support thinking feature toggle
-
1.1.008 Oct 2025 -
1.0.504 Oct 2025 -
1.0.401 Sep 2025 -
1.0.301 Sep 2025 -
1.0.229 Jul 2025 -
1.0.128 Jul 2025 -
1.0.028 Jul 2025