agnt5-sdk-core 0.3.2

High-performance Rust core for AGNT5 SDK
Documentation

AGNT5 SDK Core

CI License

agnt5-sdk-core is the shared Rust foundation for the AGNT5 language SDKs. It provides the runtime-facing primitives used by the Python, TypeScript, and Go SDKs, including:

  • worker registration, dispatch, and lifecycle management;
  • durable workflow checkpoints and event delivery;
  • language-model and embedding provider abstractions;
  • built-in evaluation scorers;
  • telemetry and structured logging;
  • MCP client support; and
  • vendor-neutral sandbox contracts.

Most application developers should use an AGNT5 language SDK rather than this crate directly:

Platform concepts and deployment guidance are available in the AGNT5 documentation.

Installation

Add the crate to a Rust project:

[dependencies]
agnt5-sdk-core = "0.3.0"

The default build contains the portable SDK foundation. Optional capabilities can be enabled with Cargo features:

[dependencies]
agnt5-sdk-core = { version = "0.3.0", features = ["libsql-memory"] }
Feature Purpose
libsql-memory Embedded libSQL-backed vector memory
wasm-sandbox Embedded Wasmtime sandbox execution

Worker assignment mode

Starting with sdk-core 0.3.0, workers default to pull assignment when AGNT5_WORKER_MODE is unset or empty. Set AGNT5_WORKER_MODE=push explicitly to retain coordinator-push dispatch. Python/TypeScript worker options and Go WithWorkerMode override the environment. Language SDKs adopt this behavior in their coordinated minor releases.

Worker runtime endpoint

Workers persist lifecycle events and durable checkpoints through the current EngineService contract. Set AGNT5_ENGINE_URL when the Engine listener is different from the worker coordinator. Otherwise, the SDK uses AGNT5_COORDINATOR_ENDPOINT as a combined runtime gRPC endpoint.

The SDK does not silently fall back to the deprecated ExecutionEngineService checkpoint RPC when the Engine endpoint is absent. A configuration that cannot produce a non-empty current Engine endpoint fails worker startup with an actionable error.

Repository boundaries

This repository owns the language-neutral SDK runtime contracts and their Rust implementation. Cross-SDK conformance specifications and shared fixtures live under conformance/ and test-fixtures/.

Vendor-specific sandbox implementations are maintained separately in agnt5dev/sdk-integrations. Keeping those integrations outside core prevents vendor credentials, endpoints, and protocols from becoming part of the base SDK dependency graph.

Development

The project requires a stable Rust toolchain. Protocol Buffer tooling is built as part of the crate, so a separate system protoc installation is not required.

Run the same checks used by CI:

cargo fmt --check
cargo test --locked
cargo package --locked

Changes to worker, checkpoint, event, streaming, or serialization behavior should include a corresponding conformance contract or fixture.

Contributing

See CONTRIBUTING.md for contribution guidance. To report a security issue, follow SECURITY.md.

License

Licensed under the Apache License 2.0.