declarative-agents vs openai-agents-js
Configurable LLM agent frameworks compared
declarative-agents and openai-agents-js both help developers build tool-using LLM agents. declarative-agents defines workflows in YAML interpreted by a Go runtime, while openai-agents-js provides a TypeScript SDK for orchestrating agents, including text, sandboxed, and realtime voice workflows.

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.

openai-agents-js: Build Multi-Agent and Voice Workflows
A TypeScript SDK for building LLM agents that use tools, delegate work, and manage conversations. It also supports sandboxed tasks and low-latency voice agents, making it useful for teams building more than a single prompt-and-response flow.
| declarative-agents | openai-agents-js | |
|---|---|---|
| Language | Go | TypeScript |
| License | BSD-3-Clause | MIT |
| Stars | 5 | 3.9k |
| Forks | 2 | 987 |
| Last analyzed | Oct 24, 2026 | Oct 3, 2026 |
Key differences
- declarative-agents separates workflow definitions from runtime code using YAML profiles; openai-agents-js defines agent workflows through a TypeScript SDK.
- declarative-agents is a Go project; openai-agents-js is for JavaScript and TypeScript applications, with Node.js, Deno, and Bun support.
- declarative-agents includes reusable agent and tool blocks, application compositions, a DSL specification, and design-pattern guidance; openai-agents-js focuses on SDK capabilities such as tools, handoffs, sessions, and tracing.
- openai-agents-js documents sandboxed tasks and browser-based realtime voice interactions; declarative-agents highlights chatbot-mesh and planner-executor-critic coding-agent compositions.
- declarative-agents uses the BSD-3-Clause license, while openai-agents-js uses the MIT license.
- declarative-agents is in maintenance mode and accepts bug fixes only; openai-agents-js limits pull requests to repository collaborators.
Choose declarative-agents if you…
- want to change agent states, transitions, or tool assignments through YAML profiles without changing the runtime binary.
- prefer a Go runtime and reusable catalog blocks for assembling configurable agent applications.
- want to study a documented DSL and design patterns for declarative agent workflows.
Choose openai-agents-js if you…
- build agent features in JavaScript or TypeScript and need tools, handoffs, and conversation history.
- need sandboxed tasks or browser-based realtime voice interactions in an agent SDK.
- want guardrails, human involvement, or tracing around agent runs.
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.