AgnosAI
Rust-native agent orchestration engine. Multi-agent crews with task DAGs, LLM routing, fleet distribution, and sandboxed tool execution.
AgnosAI replaces Python/CrewAI orchestration with a compiled Rust binary -- real concurrency, zero GIL, predictable performance. Use it standalone or as the core engine inside Agnostic.
Why
| Problem with Python/CrewAI | AgnosAI |
|---|---|
| GIL serializes concurrent crews | Real threads via tokio |
| 200+ transitive dependencies | ~30 curated Rust crates |
| 1.5 GB container image | <50 MB static binary |
| 15-30s boot time | <2s to agent-ready |
| No fleet awareness | Native multi-node distribution |
| Unsandboxed tool execution | WASM / seccomp / Landlock / OCI |
| Sequential or hierarchical only | Arbitrary task DAGs with priority + preemption |
Architecture
agnosai
├── src/
│ ├── core/ Core types, traits, error handling
│ ├── orchestrator/ Task scheduling, agent scoring, crew execution
│ ├── llm/ LLM provider abstraction (8 providers, native HTTP)
│ ├── fleet/ Distributed fleet coordination, GPU scheduling [feature: fleet]
│ ├── sandbox/ Tool execution isolation (WASM, process, OCI) [feature: sandbox]
│ ├── tools/ Tool registry & execution (native, WASM, Python bridge)
│ ├── learning/ Adaptive learning & reinforcement learning
│ ├── server/ HTTP API server (REST, health probes, SSE)
│ └── definitions/ Preset library, crew assembly, packaging [feature: definitions]
├── benches/ Criterion benchmarks
├── tests/ Integration tests
├── examples/ Usage examples
└── docs/ Guides, ADRs, architecture docs
See Architecture Overview for detailed design.
Quick Start
# Build
# Run the API server
# Run tests
# Run all CI checks locally
Usage as a Library
Add to your Cargo.toml:
[]
= { = "https://github.com/maccracken/agnosai" }
use ;
use Orchestrator;
async
Agent Definitions
Agents are defined declaratively in JSON -- same format as Agnostic v1 presets:
LLM Providers
Native HTTP implementations -- no Python SDKs, no litellm:
| Provider | Protocol |
|---|---|
| OpenAI | REST (/v1/chat/completions) |
| Anthropic | REST (/v1/messages) |
| Ollama | REST (/api/chat) |
| DeepSeek | OpenAI-compatible |
| Mistral | OpenAI-compatible |
| Groq | OpenAI-compatible |
| LM Studio | OpenAI-compatible |
| AGNOS hoosh | OpenAI-compatible gateway |
Task-complexity routing automatically selects the right model tier (Fast / Capable / Premium).
Tool Execution
Tools run in three tiers with increasing isolation:
- Native Rust -- in-process, zero overhead
- WASM -- wasmtime sandbox, memory-isolated, capability-controlled
- Sandboxed Python -- subprocess with seccomp-bpf + Landlock + cgroups + network namespace
Fleet Distribution
First-class multi-node support:
- Node registry with heartbeat + TTL
- 5 placement policies (GPU-affinity, balanced, locality, cost, manual)
- Inter-node relay via Redis pub/sub or gRPC
- Barrier sync and checkpoint-based crew state
- GPU detection and VRAM-aware scheduling
- Multi-cluster federation
Test Suite
$ cargo test
...
test result: ok. 323 passed; 0 failed; 0 ignored
Tests cover core types, orchestration (all 4 process modes), DAG cycle detection, agent scoring, priority scheduling, pub/sub, IPC, LLM provider routing, tool registry, and API routes.
Documentation
See the docs/ directory:
- Getting Started
- Architecture Overview
- Crew Execution Patterns
- API Reference
- Adding LLM Providers
- Adding Native Tools
- Roadmap
Project Status
See docs/development/roadmap.md for the full development plan and current phase.
License
AGPL-3.0-only — see LICENSE for details.