Skip to content

v1.0.0

Latest

Choose a tag to compare

@geminik23 geminik23 released this 02 Aug 15:25

ai-agents v1.0.0

ai-agents v1.0.0 is the first stable release of the YAML-first Rust runtime for building, running, and evaluating AI agents.

This release establishes versioned public contracts for agent configuration, runtime execution, tool authorization, state, memory, persistence, spawning, orchestration, evaluation, and observability.

Highlights

  • Build agents from strict YAML and run them through the CLI or Rust API.
  • Use states, skills, process pipelines, dynamic context, memory, facts, relationships, persona, spawning, and multi-agent orchestration.
  • Grant ordinary tools explicitly and execute all calls through shared policy, approval, locking, timeout, cancellation, and evidence boundaries.
  • Use native or bounded fallback tool choice with auto, required, specific, and none.
  • Persist snapshots with file, SQLite, or Redis storage, with explicit capability errors for unsupported operations.
  • Validate behavior with deterministic mocked suites, optional live provider suites, structured assertions, and privacy-aware observability.
  • Run on Rust 1.88 or newer.

The workspace publishes 23 Apache-2.0 crates, including the main ai-agents facade and ai-agents-cli.

Install

Add the framework to a Rust project:

[dependencies]
ai-agents = "1.0"

Install the CLI:

cargo install ai-agents-cli

Then run a YAML agent:

ai-agents-cli run agent.yaml

Stable contract and support boundaries

The stable core includes builder construction, blocking chat, strict YAML, states, skills, process, context, built-in tool authorization, and in-memory or compacting conversation memory.

Streaming, evaluation, observability, provider adapters, MCP, persona, file and SQLite storage, facts, relationships, spawning, orchestration, and runtime optimization are supported within their documented operational boundaries.

Redis remains snapshot-only and experimental. Noop storage provides no persistence.

Framework controls are not an operating-system, process, filesystem, credential, or network sandbox. Applications remain responsible for deployment isolation, secret handling, network egress, custom tools, MCP servers, and provider integrations.

Upgrading from release candidates

Users upgrading from 1.0.0-rc.16 should review these contract changes:

  • Fixed framework-owned YAML objects reject unknown fields.
  • Ordinary model-callable tools require explicit top-level grants. Omitting tools: or using an empty list grants no ordinary tools.
  • States may narrow the top-level tool grant but cannot widen it.
  • Filesystem mutation tools execute when dry_run is omitted. Use dry_run: true for preview.
  • mutation_performed is the authoritative mutation result field.
  • Unsupported storage operations return explicit capability errors.
  • Declared child-agent construction is fail-closed and capacity-aware.
  • Provider tool choice is opt-in; omitted choice preserves the legacy prompt protocol.
  • Web fetch validates and binds the default transport to approved addresses, rejects embedded credentials, and disables proxy-based hostname resolution.

See the full CHANGELOG for the complete compatibility and implementation record.

Documentation

The v1 announcement will be published after release validation, publication, and tag verification are complete.