Installation
This guide covers adding Paladin to an existing Rust project or setting up the Paladin workspace for development.
Prerequisites
Required
| Requirement | Minimum | Recommended |
|---|---|---|
| Rust | 1.85.0 | Latest stable (1.95+) |
| Cargo | Included with Rust | - |
| Edition | 2024 | 2024 |
| LLM API Key | At least one | - |
Why Rust >= 1.85? Paladin uses edition 2024 features. Verify your toolchain:
rustc --version # should print >= 1.85.0Update with
rustup update stable.
Optional (for Docker-based services)
- Docker + Docker Compose v2 -- required for the built-in Redis, MinIO, and MySQL services (see Docker Guide)
Installing Rust
# Install rustup and the stable toolchain
curl --proto =https --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
# Build tools -- Linux (Ubuntu/Debian)
sudo apt-get install -y build-essential pkg-config libssl-dev
# Build tools -- macOS (via Homebrew)
brew install openssl pkg-config
Windows users should use rustup-init.exe or WSL 2.
Adding Paladin to a Rust Project
Cargo.toml -- choose your crates
Paladin v0.5.0 is published as a workspace of focused crates. Add only what you need:
[dependencies]
# Core framework -- always required
paladin-ai-core = "0.5.0"
paladin-ports = "0.5.0"
# LLM providers (pick one or more)
paladin-llm = { version = "0.5.0", features = ["llm-openai"] }
# Multi-agent orchestration (optional)
paladin-battalion = "0.5.0"
# Memory / Garrison (optional)
paladin-memory = "0.5.0"
# Storage adapters (optional)
paladin-storage = "0.5.0"
# Async runtime (required)
tokio = { version = "1", features = ["full"] }
Umbrella crate
The paladin-ai umbrella crate (v0.5.0) re-exports everything and accepts workspace feature flags:
[dependencies]
paladin-ai = { version = "0.5.0", features = ["redis-queue", "s3-storage"] }
tokio = { version = "1", features = ["full"] }
Feature Flag Profiles
| Flag | Default | Description |
|---|---|---|
llm-openai | yes | OpenAI GPT adapter |
redis-queue | no | Redis async task queue |
s3-storage | no | MinIO / AWS S3 file storage |
openai-embeddings | no | OpenAI embedding API |
qdrant | no | Qdrant vector database for Sanctum |
Verification
cargo check
No errors means all selected features resolved correctly.
Cloning the Source for Development
# 1. Clone
git clone https://github.com/DF3NDR/paladin-dev-env.git
cd paladin-dev-env
# 2. Build the workspace
cargo build
# 3. Run unit tests
cargo test --workspace --lib
# 4. (Optional) Start backing services
make services-up # Redis, MinIO, MySQL via Docker Compose
See Development Setup for the full contributor workflow.
Environment Variables for LLM Keys
Paladin reads API keys exclusively from environment variables -- never put keys in config files.
# Set at least one provider key before running
export OPENAI_API_KEY="sk-..." # OpenAI
export DEEPSEEK_API_KEY="sk-..." # DeepSeek
export ANTHROPIC_API_KEY="sk-..." # Anthropic
Copy .env.example to .env for local development (.env is git-ignored).
Next Steps
- Quickstart -- write your first Paladin agent in minutes
- Configuration -- full
config.ymlschema reference - User Guides -- in-depth agent patterns