Building a Natural Language Agent Builder with Comprehensive LLMOps Practices

vellum · Tech · 2025 · source Agentic: yes · promotional bias: med · source-backed · extracted with prompt 0.5.4 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Natural-language agent builder and LLMOps platform

Vellum wanted to let users build production-grade agents through conversation, while still preserving the tool design, testing, tracing, deployment, and UX discipline needed for reliable agent systems.

Constraints:

Architecture

Vellum built a beta natural-language agent builder: users chat with an agent that builds workflows or agents, consults a summarized knowledge base through a read tool, uses carefully designed tool abstractions, records execution traces, supports tests for desired behaviors, parses text outputs into richer UI elements, and can deploy generated agents as SDK code, hosted API endpoints, or one-click AI apps.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  user-chat["User chat"] --> natural-language-agent-builder["Natural language agent builder"]
  natural-language-agent-builder --> tool-abstraction-layer["Tool abstraction layer"]
  natural-language-agent-builder --> knowledge-base["Knowledge base"]
  natural-language-agent-builder --> execution-tracer["Execution tracer"]
  natural-language-agent-builder --> ui-renderer["UI renderer"]
  natural-language-agent-builder --> deployment-options["Deployment options"]
  test-suite["Test suite"] --> natural-language-agent-builder
  test-suite --> execution-tracer
  ui-renderer --> user-chat
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Natural language agent builder Conversational agent that turns user descriptions into workflows or agents. User chat, Tool abstraction layer, Knowledge base, Execution tracer, Deployment options, UI renderer
User chat Natural-language interface where users describe the agent or workflow they want built. Natural language agent builder, UI renderer
Tool abstraction layer High-level action tools designed from first principles rather than direct one-to-one API endpoints. Natural language agent builder
Knowledge base About 30 documentation summaries in the prompt plus full entries retrievable through a read tool. Natural language agent builder
Test suite Concrete tests for desired workflow or agent behaviors to prevent regressions and support iteration. Natural language agent builder, Execution tracer
Execution tracer Stores executions, thinking steps, tool calls, errors, and outputs for review and debugging. Natural language agent builder, Test suite
UI renderer Parses model text into thinking blocks, tool-call views, status indicators, buttons, and interactive UI elements. User chat, Natural language agent builder
Deployment options Exports generated agents as SDK code, hosted API endpoints, or one-click AI apps. Natural language agent builder

Data flow

A user describes the agent they want. The builder agent interprets the request, consults concise documentation summaries in its prompt, calls a read-knowledge-base tool when it needs full documentation, uses higher-level tools rather than raw API calls to change the workflow, produces text outputs that Vellum parses into workflow updates and interactive UI elements, stores the full execution trace for review, and eventually ships the result as SDK code, a hosted API endpoint, or an app.

4 supporting quotes
“builder. So in theory, right, you go in, you chat with it, and it builds whatever agent you want. I know everyone here, you're here, right? So there's some agent that you want to build right now that you don't have. You guys should try it out. You know, it'll probably work”transcript, stated
“the model can call a read knowledgebased tool to figure out which knowledgebased entries are most relevant for this specific query.”transcript, stated
“it's like this is stuff that we parsed out purely from text right so like this is all possible you know it's like you want reasonable defaults but full visibility for like users that want to dig deep like you know collapse blocks”transcript, stated
“you can export executable SDK code that you can put in your own codebase. You can get an API endpoint that you integrate with and it runs on our servers or you can just get an AI app that you can publish with one click that you can interact with or your users can interact with.”transcript, stated

Why this architecture

Vellum chose a conversational builder on top of its existing SDK and editor because it wanted agent creation to be accessible without learning framework mechanics. The internal design emphasizes high-level tools, selective knowledge retrieval, stored executions, rigorous tests when needed, and richer UI parsing because those are the operational controls that keep a meta-agent from becoming opaque or brittle.

4 supporting quotes
“we spent the first two and a half of those three years building this super flexible drag and drop editor and, you know, a really robust, powerful SDK”transcript, stated
“therefore, you know, we built a natural language agent builder. This is, you know, this is the, you know, this is what it looks like. You go in, you chat with it. Um, you should go to our booth later and check it out and like and check it out live.”transcript, stated
“tools right so that means like don't just blindly copy the APIs that you might be using or like you know the underlying abstractions like think about the highle actions that you want your model to take from first principles right and then think about the simplest”transcript, stated
“know, like full visibility and tracing, you know, like which we use ourselves and of course all of our users use. So you can see some of that um on the screen and the ability when you're ready to deploy to ship it any way you want.”transcript, stated

Models used: LLMs · agent builder model

Scale

Alternatives considered (roads not taken)

Require users to learn a framework, SDK, or drag-and-drop builder

Rejected because: The natural-language builder aims to make agent creation conversational and lower-friction.

“cool new framework that we built. None of you want to learn that and you don't have to. And also, did I mention drag and drop is dead? So therefore, you know, we built a natural language agent builder. This is, you know, this is the, you know, this is”transcript, stated
“therefore, you know, we built a natural language agent builder. This is, you know, this is the, you know, this is what it looks like. You go in, you chat with it. Um, you should go to our booth later and check it out and like and check it out live.”transcript, stated

Expose underlying APIs directly as agent tools

Rejected because: Low-level tools force the agent to rediscover API sequences every run and increase mistakes.

“tools right so that means like don't just blindly copy the APIs that you might be using or like you know the underlying abstractions like think about the highle actions that you want your model to take from first principles right and then think about the simplest”transcript, stated
“every single run at runtime. Because if you don't, your agent's going to have to think about that and it's going to make more mistakes. So, you know, you should be doing things like omitting and simplifying arguments, grouping API calls into like more coherent actions, and you know, you”transcript, stated

Load all documentation into the system prompt

Rejected because: The 100,000-token documentation corpus would be slow and expensive.

“SDK, all that. You know, we could load that all into the system prompt, but like that's going to be really slow and expensive. We could do like a more complex retrieval solution as well, but what we found to work well is uh we just created a knowledge base of about 30”transcript, stated

Use only vibes-based testing or only rigorous tests

Rejected because: Vibes help early and for UX feel, but rigorous suites are needed to distinguish high pass rates and prevent regressions.

“There's like vibes based testing and you know like a more rigorous test suite right there. They both have their place.”transcript, stated
“pass rate. It's really difficult to tell the difference between 85 and 88% on a test suite by vibes, right? you're probably just going to get noise. You're not going to be able to really make improvements after that.”transcript, stated

Patterns

tool-use-orchestration (tools)

Vellum designs tools as high-level actions, groups sequential API calls, simplifies arguments, and gives descriptive errors so the agent can recover.

“think about the highle actions that you want your model to take from first principles”transcript, stated
“there's three API calls you make in sequence you take the output of this one, feed it into the next one. That's an action, right? Those are your tools.”transcript, stated

rag-retrieval (retrieval)

The builder uses a lightweight knowledge base: summaries in the system prompt plus a read tool for full documentation entries.

“we just created a knowledge base of about 30 documents and put summaries of those really small summaries”transcript, stated
“the model can call a read knowledgebased tool to figure out which knowledgebased entries are most relevant for this specific query.”transcript, stated

eval-driven-development (evaluation)

Vellum adds tests for desired behaviors that currently fail and iterates until the agent passes them, while also using vibes-based testing for early UX feel.

“you can create tests for things that you want to pass that you're not currently passing.”transcript, stated
“Let's add a test for it and then let's make it pass.”transcript, stated

observability-tracing (operations)

The agent builder stores and reviews execution traces, thinking steps, tool calls, import/type errors, and user-visible behavior to improve the agent.

“you need to look at executions.”transcript, stated
“full visibility and tracing, you know, like which we use ourselves and of course all of our users use.”transcript, stated

guardrails-io-filtering (safety)

The tool-design guidance treats descriptive errors as guardrails that let the model distinguish retryable timeouts from bad arguments.

“Return descriptive error messages if you're just like error like gee, thanks. Like, what what's the model supposed to do with that?”transcript, stated
“say, was it a timeout? Should I try again? Was it like a bad argument? If so, what was bad about the argument?”transcript, stated

Tradeoffs

Tool granularity

Chose coherent high-level action tools over blindly exposing low-level APIs.

Rationale: Designing the abstraction once avoids forcing the agent to reason through the same API sequence every runtime execution.

“if you do this upfront work once, you'll avoid your agent having to do it on every single run at runtime.”transcript, stated
“don't just blindly copy the APIs that you might be using”transcript, stated

Knowledge access

Chose summaries plus read-knowledge-base tool over putting 100,000 tokens of documentation in the system prompt.

Rationale: The summary/read-tool approach avoids slow and expensive prompts while letting the model retrieve relevant full docs.

“we have like a 100,000 tokens of like Vellum docs”transcript, stated
“we could load that all into the system prompt, but like that's going to be really slow and expensive.”transcript, stated

Testing strategy

Chose mix vibes-based testing and concrete test suites over treating one testing mode as universally correct.

Rationale: Vibes work early and for UX feel, while concrete tests catch regressions and fine-grained pass-rate changes.

“You can do one neither or both. They both have their strengths and weaknesses.”transcript, stated
“It's really difficult to tell the difference between 85 and 88% on a test suite by vibes”transcript, stated

Deployment model

Chose multiple export/deployment options over one fixed hosting path.

Rationale: Users may want SDK code in their own codebase, hosted API endpoints, or one-click apps depending on control and convenience needs.

“you can export executable SDK code that you can put in your own codebase.”transcript, stated
“You can get an API endpoint that you integrate with and it runs on our servers or you can just get an AI app”transcript, stated

Gotchas (what bit them)

Tool abstractions are the most common source of agent failures.

Root cause: Poorly designed tools cause missed calls, wrong calls, too many calls, or wrong arguments.

Resolution: Design tools from first principles as high-level actions, simplify arguments, group API sequences, and make similar tools distinct or combined with differentiating arguments.

“that's the number one problem we see. It's like, you know, the symptoms include not calling a tool when you should”transcript, stated
“omitting and simplifying arguments, grouping API calls into like more coherent actions”transcript, stated

Undescriptive tool errors block agent recovery.

Root cause: A generic error string gives the model no clue whether to retry, change arguments, or stop.

Resolution: Return error messages that identify timeout versus bad argument and explain what was wrong.

“Return descriptive error messages if you're just like error like gee, thanks. Like, what what's the model supposed to do with that?”transcript, stated
“you want the model to be able to gracefully recover from bad tool calls and errors.”transcript, stated

Agent improvements regressed earlier capabilities before a stronger test suite existed.

Root cause: Manual/vibes testing was not enough to detect non-local regressions as the system evolved.

Resolution: Vellum built more rigorous tests and adds tests for behaviors the agent should pass.

“we were taking two steps forward, one step back before we built a more rigorous test suite for our agent bullet.”transcript, stated
“add a test for it and then let's make it pass.”transcript, stated

Long-running agent-builder executions can feel like a black box.

Root cause: Users may wait 30 seconds to 2 minutes without seeing the workflow change in real time.

Resolution: Vellum plans real-time workflow updates and richer UI to show what the builder is doing as it works.

“anywhere from like 30 seconds to like 2 minutes later it hopefully spits out a workflow or like an agent”transcript, stated
“We want to be able to show like more real-time updates in terms of what agent builder is doing”transcript, stated

Evaluation

Vellum uses a blend of vibes-based testing, concrete test suites, regression tests for desired behaviors, and execution-trace review. The team stores executions, reviews failures, derives takeaways from traces, and uses those insights to improve the agent builder.

Metrics: test-suite pass rate · regression coverage · manual UX/vibes assessment · execution traces reviewed · tool-call errors · import/type errors · user-visible execution quality

3 supporting quotes
“if you like a more concrete test suite also prevents you from like regressing on capabilities”transcript, stated
“we looked at this execution, there were like 20 takeaways from it and then we fixed them”transcript, stated
“you need to look at executions.”transcript, stated

Outcomes

Vellum's case includes three years of production-agent tooling work, a 100,000-token documentation corpus summarized into about 30 knowledge-base documents, and generation times currently around 30 seconds to 2 minutes.

3 supporting quotes
“we're launching the beta of our natural language agent builder.”transcript, stated
“anywhere from like 30 seconds to like 2 minutes later it hopefully spits out a workflow or like an agent”transcript, stated
“full visibility and tracing, you know, like which we use ourselves and of course all of our users use.”transcript, stated