rig vs declarative-agents
Rust LLM building blocks compared with YAML-defined agents
rig provides Rust components and shared interfaces for building LLM applications across model providers, vector stores, and agent workflows. declarative-agents uses YAML profiles and a Go runtime to define tool-augmented agent workflows, with configuration as its central approach.

rig: Build LLM Applications in Rust
Rig is a Rust library for building modular LLM applications, with shared interfaces for model providers, vector stores, and agent workflows. It suits Rust developers who want to integrate multiple LLM services without building each integration from scratch.

declarative-agents: Define LLM Agents with YAML Profiles
Nokia Bell Labs' declarative-agents uses YAML profiles and a Go runtime to define and execute tool-augmented LLM agents. It suits teams that want to change agent workflows through configuration rather than rebuild a binary.
| rig | declarative-agents | |
|---|---|---|
| Language | Rust | Go |
| License | MIT | BSD-3-Clause |
| Stars | 8.8k | 5 |
| Forks | 989 | 2 |
| Last analyzed | Oct 3, 2026 | Oct 24, 2026 |
Key differences
- rig is a Rust library spanning provider integrations, embeddings, vector stores, and agent workflows; declarative-agents focuses on defining and executing tool-augmented agents.
- rig offers shared interfaces and optional integrations, while declarative-agents specifies agent states, transitions, tools, signals, and budgets in YAML profiles.
- rig is licensed under MIT; declarative-agents is licensed under BSD-3-Clause.
- rig supports browser-WASM for its portable core and classic runtime, with stated limitations; declarative-agents is described as a Go runtime, with no comparable WASM support described.
- rig's README warns that upcoming changes may be breaking; declarative-agents is in maintenance mode and accepts bug fixes only.
Choose rig if you…
- need Rust building blocks for LLM applications that use multiple model providers or vector stores.
- want agent workflows alongside completion, embedding, or supported audio and image capabilities.
- need browser-WASM support for the portable core or classic runtime.
Choose declarative-agents if you…
- want to define agent workflows in YAML and adjust them without rebuilding a runtime binary for each change.
- need a Go runtime, reusable tool and agent blocks, or included example applications.
- want to consult a declarative-agent DSL specification or a paper on agent design patterns.
Compare the numbers side by side, or add more projects
This comparison is generated with AI from the OSRepos analyses of both projects. Always check each project's repository and documentation before choosing.