PackageTrack
Sign in Get early access

agenix

Flutter framework for multi-agent AI orchestration. Build agents that use tools, chain tasks, and talk to each other. Works with any LLM provider & no backend is needed.

4.1.2 ahmadexe/agenix

What this package is like to depend on

Last release 1 months ago

02 Jul 2026

Ships unpredictably

gaps range from 2 weeks to 13 months

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

5 releases in the last 12 months

see the full history below

Release timeline

12 releases · May 2025 to Jul 2026
2026
Release Pre-release

Releases

latest 12
  1. 4.1.2 02 Jul 2026
    Release notes
    • Tool loop hardening — the agent now hard-blocks re-execution of any (tool, params) combo already attempted in the same turn. If the LLM ignores the observation prompt and re-requests a succeeded tool, the framework filters it out before it reaches the tool's run() method, and if the whole batch is filtered to empty, the loop returns immediately with the accumulated success messages instead of burning more LLM calls. Fixes duplicate side effects (e.g. double-inserted DB rows) observed with strict instruction-following models that would otherwise repeat successful tool calls.
    • Explicit succeeded/failed observation prompt — the follow-up prompt now enumerates completed calls under a dedicated "already completed — the framework will REJECT re-invocations" section and failures under a "retry ONLY with corrected parameters" section, with an explicit directive to respond when nothing remains. Previously the raw observation JSON left "the task" looking unaddressed alongside the tool results.
    • Documented idempotency contract — the Tool.run() dartdoc now formally states that side-effecting tools should be idempotent (upsert semantics, natural key, or idempotency token), since framework-level dedup cannot detect semantically-equivalent calls with different parameter shapes.
    Open source →
  2. 4.1.1 27 Jun 2026
    Release notes
    • Updated documentation to list all built-in LLM providers (Gemini, OpenAI, Anthropic, Groq, DeepSeek, Cohere, xAI) and clarify the custom LLM extension point.
    Open source →
  3. 4.1.0 27 Jun 2026
    Release notes
    • Multi-provider LLM support — built-in implementations for OpenAI, Anthropic, Cohere, Groq, DeepSeek, Mistral, and xAI (Grok) alongside the existing Gemini adapter. All OpenAI-compatible providers share a single adapter with a configurable baseUrl.
    • LlmRateLimitException — new typed exception (extends LlmException) thrown on HTTP 429 responses. Carries retryAfter: Duration? parsed from the Retry-After header and statusCode: int (defaults to 429).
    • LlmException.statusCode — all LLM HTTP errors now expose the HTTP status code via statusCode: int? for programmatic handling.
    • Rolling memory summarizationAgent.create() accepts summarizationBatchSize: int (default 0 = disabled). When enabled, evicted messages accumulate in a batch; once the batch reaches the threshold the LLM summarizes them into a rolling context prepended to every future prompt, preventing context window overflow on long conversations.
    • Bounded DataStore reads_MemoryManager now tracks a per-conversation _savedCount counter so eviction computes are done without fetching the full message history; getContext never issues an unbounded getMessages call regardless of conversation length.
    Open source →
  4. 4.0.1 26 Jun 2026
    Release notes
    • Added demo video to README showing live multi-agent orchestration and tool-call tracing.
    • Updated package description for clarity and discoverability.
    Open source →
  5. 4.0.0 24 Jun 2026
    Release notes
    • BREAKING: Removed DataStore.firestoreDataStore() and all Firebase dependencies from core. Firebase support is now in the separate agenix_firebase package.
      # pubspec.yaml
        dependencies:
          agenix: ^4.0.0
      +   agenix_firebase: ^1.0.0
      
      # dart
      + import 'package:agenix_firebase/agenix_firebase.dart';
      - final store = DataStore.firestoreDataStore();
      + final store = FirebaseDataStore();
      
    • Sealed exception hierarchy (AgenixException) with typed subclasses: LlmException, LlmTimeoutException, ResponseParseException, ToolNotFoundException, ToolExecutionException, AgentNotFoundException, DataStoreException, NotAuthenticatedException, ConfigException
    • FailureMode enum — choose between throwing typed exceptions or receiving graceful error messages
    • Optional onError callback on Agent for centralized error handling
    • AgentScope — isolate groups of agents for multi-tenant or testing scenarios
    • RegistrationPolicy enum — control duplicate agent names (throwIfExists, replace, ignore)
    • LlmConfig — provider-neutral generation settings: temperature, maxOutputTokens, topP, topK, stopSequences, jsonMode, timeout
    • InMemoryDataStore — zero-dependency data store for testing and prototyping (DataStore.inMemory())
    • Multi-step tool iterations — agent can call tools in a loop (up to 5 iterations), accumulating observations before producing a final response
    • Parse-retry mechanism — automatic corrective re-prompts (up to 2 retries) when the LLM returns malformed JSON
    • Agent chain cycle detection and depth limiting (kMaxChainDepth = 5)
    • Agent.dispose() — explicit cleanup to unregister agents from their scope
    • isError field on AgentMessage — error messages are excluded from conversation history sent to the LLM
    • ParameterSpecification now supports defaultValue and enumValues for richer tool parameter definitions
    • CI pipeline with formatting, analysis, test coverage enforcement (50% floor), and Codecov integration
    • Mimetype is not forced anymore.

    Breaking Changes

    • Exception types replaced — code catching generic exceptions must switch to the sealed AgenixException hierarchy
    • Agent.create() signature expanded with failureMode, scope, and registrationPolicy parameters (all have defaults)
    • LLM interface now requires modelId getter and config getter returning LlmConfig
    Open source →
  6. 3.0.0 10 Jun 2025
    Release notes
    • Support for multiple agents
    • Agents can reiterate over tool responses
    • Agent orchestration to build chain of AI Agents
    • Data sharing between agents
    Open source →
  7. 2.1.0 27 May 2025
    Release notes
    • Added support for custom path of Agent's data
    • Added support to add data in the tool response directly
    • Improved agent's understanding of parameters
    Open source →
  8. 2.0.0 15 May 2025
    Release notes
    • Added structured tool responses
    • Easier interface to define messages the users should see from the tool
    • Updated examples
    Open source →
  9. 1.0.2 13 May 2025
    Release notes
    • Updated documentation and refactored the code base
    Open source →
  10. 1.0.1 12 May 2025
    Release notes
    • Added keywords for better search
    Open source →
  11. 1.0.0 12 May 2025
    Release notes
    • Improved tool pipeline to allow the agent to understand tools without params
    • Updated documentation
    • Added tests with tool supports
    Open source →
  12. 0.0.1 12 May 2025
    Release notes
    • The release version of agenix with Firebase and Gemini
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive