vantura 1.2.0
vantura: ^1.2.0 copied to clipboard
A Stateful Agentic AI Framework for Flutter enabling on-device LLM agents with ReAct loops, state recovery, custom tools, and seamless coordination.
Changelog #
All notable changes to the Vantura SDK will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.2.0 - 2026-08-24 #
Added #
- OpenRouter Integration: Native support for OpenRouter via the new
OpenRouterClient. Includes site-attribution headers (HTTP-Referer,X-Title) for improved rankings and visibility. - Reasoning Token Support: Advanced support for "Thinking" and "Reasoning" tokens from models like DeepSeek R1, Claude 3.7, Gemini 2.0 Thinking, and stealth models. These tokens are now captured and streamed to the UI in real-time.
- Debugger Agent: Added a specialized
debuggeragent in the example app to demonstrate theApiTestToolfor live network diagnostics and API verification. - UI Error Banners: Implemented automated error propagation from agents to the UI, displaying actionable SnackBar alerts for tool failures or LLM API errors.
Fixed #
- Memory Summarization Edge Case: Resolved a critical bug in
VanturaMemorywhere tool call sequences (Assistant -> Tool) were broken during context summarization. Introduced adaptivekeepCountto preserve recent context. - SSE Stream Integrity: Fixed a duplication bug in
AnthropicClientstreaming where the final response was re-yielded at the end of the stream. - System Prompt Continuity: Fixed Gemini and Anthropic client adapters to correctly concatenate multiple system messages (persona + historical summaries) into a single unified instruction block.
- Riverpod Lifecycle Safety: Hardened the example app with
mountedchecks to prevent crashes when async streams complete after a screen has been disposed.
Changed #
- Multi-Agent Coordination: Expanded the default
AgentCoordinatorsetup in Orbit to 4 specialist agents (Concierge, Manager, Analyst, Debugger). - Dependency Upgrades: Upgraded all core and example dependencies to latest versions, resolving critical build issues in the
jniandriverpodpackages.
1.1.1-dev - 2026-05-27 #
Changed #
- Dependency Updates:
device_info_plus:^12.0.0→^13.1.0(major version bump for latest platform APIs).flutter_dotenv:^5.1.0→^6.0.1(dev dependency, updated for Dart 3.11 compatibility).
- Project Hygiene: Added
grand-report.mdto.gitignoreand.pubignoreto keep internal reports out of version control and published packages.
Example App (Orbit v0.4.0) #
- Migrated from single
VanturaAgenttoAgentCoordinatorwith multi-agent routing (Concierge, Manager, Analyst). - Added
InventoryJanitorautonomous background worker andLogsScreenobservability console. - Overhauled Dashboard with
SliverAppBar, Outfit typography, and refined dark palette. - Updated example dependencies (
device_info_plus→^13.1.0,sqlcipher_flutter_libs→^0.7.0+eol).
1.1.0 - 2026-03-07 #
Added #
- VanturaSecurity: A dedicated privacy and security layer for the framework. Features automatic PII detection and redaction (Emails, Phone Numbers) to prevent sensitive data from reaching LLM providers.
- Enhanced Observability: Added internal hooks for fine-grained logging of reasoning steps and tool execution status, supporting real-time log monitoring in consuming apps.
- Worker Redaction: Extended
VanturaWorkerwith built-in security proxies to ensure PII redaction works seamlessly in background Isolates.
Changed #
- Multi-Client Resiliency: Finalized
onRetryimplementation forAnthropicClientandGeminiClient, ensuring better recovery from network transient errors and rate limits. - Navigation Intelligence: Improved
NavigationToolcompatibility with complex nested routing and dynamic parameter passing.
Fixed #
- Isolate Data Type Conversion: Fixed a critical issue where
_Map<String, dynamic>(internal SDK types) caused type errors when being sent across Isolate boundaries inVanturaWorker. - Reasoning Loop Reliability: Resolved an edge case where certain streaming responses could occasionally swallow the final token if usage data arrived simultaneously.
1.0.0 - 2026-02-28 #
Added #
- Stable 1.0.0 Release: First major stable, production-ready version of Vantura.
- Multi-Provider LLM Support: Introduced
LlmClientinterface alongside fully nativeAnthropicClient(Claude 3.5/3.7+) andGeminiClient(Google Gemini 1.5/2.0+) wrappers, complementing the existing OpenAI-compatibleVanturaClient. - Agent Checkpointing: Implemented
AgentStateCheckpointserialization, allowingVanturaAgentto seamlesslyresumeFrom()interrupted ReAct loops via theVanturaPersistencelayer. - Conditional Confirmation: Expanded tool logic with dynamic
requiresConfirmationFor(args), allowing agents to skip UI confirmation dialogs for low-risk actions automatically. - Unified Main Library: Created
lib/vantura.dartas the primary standard entry point for the package. - VanturaException Hierarchy: Integrated standardized exception types (
VanturaToolException,VanturaCancellationException,VanturaIterationException, etc.) for robust error handling. - VanturaClient Transparency: Added
onRetrycallback to clients for better observability during network retries.
Changed #
- Hardened Reasoning Loop: Refactored
VanturaAgentReAct loop with improved scoping, iteration control, and standardized failure state updates. - Dependency Optimization: Removed
google_fontsfrom the core framework to drastically lighten the compiled application footprint. - Documentation Coverage: Achieved 100% dartdoc coverage for all core public classes and methods.
- Polished Examples: Updated
example/example.dartand the Orbit "Business Management" suite to showcase multi-provider instantiation and dynamic confirmation logic. - Lint Optimization: Resolved all static analysis issues and major pub.dev lint warnings.
0.1.3 - 2026-02-24 #
Added #
- Official Example App: Complete Flutter business management app demonstrating client management, inventory tracking, invoicing, financial ledger, and analytics with advanced tool features.
- Advanced Tool Documentation: Added sections for confirmation flows, complex parameter schemas (arrays, enums, nested objects), and business logic integration.
- Enhanced Examples Section: Expanded README.md Examples section with detailed feature descriptions.
Changed #
- Documentation Improvements: Polished code examples, updated example repository URLs, and ensured consistency across all .md files.
- Package Description: Extended pubspec.yaml description to meet pub.dev requirements.
Notes #
- Improved package presentation and developer experience with comprehensive examples and documentation.
0.1.2 - 2026-02-23 #
Added #
- Example: Created a standard
example/example.dartandexample/README.mdfor better package presentation. - Enhanced Intelligence: Finalized persistence for
tool_callsandtool_resultsinVanturaMemory, enabling consistent multi-turn reasoning.
Changed #
- Security & Privacy Hardening:
- Implemented recursive redaction of sensitive keys (API keys, Authorization tokens) in logs.
- Added
VanturaLoggerOptionsto disable logging of sensitive content (prompts/responses) by default. - Added
VanturaLogLevelto filter SDK logs. - Hardened
ApiTestToolwith hostname blacklisting (SSRF protection) and strict output truncation. - Added SDK-level guardrails to prevent instruction overriding and prompt injection.
- Robustness:
- Added execution timeouts to
VanturaTool(default 30s) to prevent agent hangs. - Implemented robust JSON extraction to handle LLM conversational filler and markdown blocks.
- Added
finishReasontoVanturaResponsefor better observability.
- Added execution timeouts to
- Dependency Updates: Modernized constraints for
connectivity_plus(v7) anddevice_info_plus(v12). - Documentation: SIGNIFICANT improvements to API documentation (dartdoc) and a completely rewritten high-end README guide.
- Project Structure: Moved repository marketing assets to root and cleaned up
.pubignore.
0.1.1 - 2026-02-22 #
Changed #
- Documentation Upgrade: Completely rewritten "marketing-first" README with premium visuals, use-cases, and comparison tables.
- Package Polishing: Standardized LICENSE to BSD 3-Clause and added
.pubignorefor a leaner package size. - Bug Fixes: Regenerated test mocks to ensure internal test suite compatibility.
0.1.0 - 2026-02-22 #
Added #
- Core Agent Loop:
VanturaAgentwith ReAct-style reasoning (up to 10 iterations), supporting bothrun()(blocking) andrunStreaming()(SSE token-by-token). - HTTP Client:
VanturaClientwith connection pooling, 3-retry exponential backoff, and automatic HTTP 429 rate-limit handling. - Memory System:
VanturaMemorywith short-term (recent messages) and long-term (LLM-summarized) memory, plus automatic pruning. - Persistence Interface: Abstract
VanturaPersistence— plug in any storage backend (SQLite, Hive, Firestore, etc.) without SDK modification. - Tool Framework: Generic
VanturaTool<T>base class with type-safe argument parsing, JSON Schema definitions viaSchemaHelper, and human-in-the-loop confirmation support. - Built-in Tools:
CalculatorTool,NetworkConnectivityTool,DeviceInfoTool,ApiTestTool. - Multi-Agent Coordination:
AgentCoordinatorclass for routing conversations between specialist agents with automatictransfer_to_agenttool injection. - Request Cancellation:
CancellationTokenfor aborting generation mid-request at both the HTTP and reasoning-loop levels. - Token Usage Tracking:
TokenUsageobject returned inVanturaResponsewithpromptTokens,completionTokens, andtotalTokens. - Error Callbacks:
onToolError,onAgentFailure, andonWarninghooks onVanturaAgentfor structured error reporting and telemetry. - UI State Management:
VanturaState(ChangeNotifier) for syncing agent status (isRunning,currentStep,errorMessage) with Flutter UI. - Markdown Renderer: Zero-dependency
MarkdownTextFlutter widget supporting headers, bold, italic, inline code, bullet lists, and horizontal rules. - Logger Interface: Abstract
VanturaLoggerwith a defaultSimpleVanturaLogger(colored console output).
Notes #
- First public release as an extracted, standalone Flutter package.
- Compatible with any OpenAI-compatible API provider (Groq, OpenAI, Ollama, Together AI, etc.).
