Dobby
Back to Blog
Strategylangsmithobservabilitycontrol-plane

LangSmith vs Control Plane: Observability Isn't Enough

LangSmith and Helicone show you what your LLMs did. A control plane stops them from doing it. Here is the gap between LLM observability and AI agent governance.

Gil KalApril 26, 20266 min read

LangSmith, Helicone, AgentOps, and their peers solved a real problem. In 2023, teams could not see inside their LLM apps at all. Traces were a mess of ad hoc logs, cost was a mystery, and debugging a failing agent was archaeology. Observability tooling closed that gap. If your team is running a single LangChain or LlamaIndex app and wants to trace its runs, these tools do what they say on the box.

They also establish a ceiling. Observability answers 'what did my agents do?' It does not answer 'stop my agents from doing X.' Those are different categories of product. Conflating them is how teams end up a year into a platform investment having built a very nice dashboard for a fleet they still cannot govern.

What LangSmith and Helicone Actually Do

Both are LLM observability tools. They attach to your OpenAI or Anthropic client (LangSmith via a LangChain callback, Helicone via a proxy URL swap) and record every prompt, completion, latency, and token count. The UI gives you trace views, cost dashboards, prompt playground, and evaluation harnesses. LangSmith is tighter with LangChain; Helicone is more framework-agnostic. AgentOps adds session replay. All three are genuinely useful for the debug-and-evaluate loop.

What they do not do is sit in the request path as a policy enforcement point. Helicone is the closest — it is a proxy, so in principle it could enforce. In practice, its feature set is observation-first: caching, logging, basic rate limiting. There is no DLP, no prompt injection firewall, no multi-tenant policy merge, no approval workflow, no per-agent budget with blocking enforcement, no kill-switch across crews, no agent registry, no RBAC beyond 'admin or not.'

Observability tells you the house is on fire. A control plane stops the match from being lit.

The 9-Capability Gap

Compare LangSmith, Helicone, and AgentOps to a control plane like Dobby across nine capabilities that production AI teams actually ask for. Three of them (the observability ones) all four products have. Six of them only a control plane has.

  • Request tracing — all four: ✓ (LangSmith, Helicone, AgentOps, Dobby)
  • Cost visibility — all four: ✓
  • Prompt playground / evaluation — LangSmith, Dobby: ✓. Helicone, AgentOps: partial
  • Prompt injection firewall — only Dobby: ✓. Others: ✗
  • DLP / content filtering — only Dobby: ✓. Others: ✗
  • Multi-tenant policy with per-tenant overrides — only Dobby: ✓. Others: ✗
  • Approval gates with HITL — only Dobby: ✓. Others: ✗
  • Kill-switch across agents and frameworks — only Dobby: ✓. Others: ✗
  • External agent registry (BYOA) with scheduling and webhook triggers — only Dobby: ✓. Others: ✗

The pattern is not that observability tools are lazy. It is that they are a different product category. Datadog is not a WAF. New Relic is not a firewall. In the AI stack, the same split is forming: observation is one layer, control is another.

Why 'Just Add Enforcement to LangSmith' Does Not Scale

A natural question: why don't observability tools add a firewall mode, a policy engine, a kill-switch? Some will try, and a few will pull off a subset. The architectural issue is that enforcement needs to be in the hot path of every request, with sub-millisecond decisions, with graceful degradation when the enforcement service is itself down. Observability tools were built with an async telemetry pipeline — fire-and-forget, best-effort. Retrofitting a synchronous enforcement layer on top of an async telemetry architecture is a rewrite, not an add-on.

That is why the durable form factor will likely remain two layers. Observability vendors will keep getting better at debugging and evaluation. Control planes will keep getting better at policy, governance, and isolation. Sophisticated teams will run both, because the problems are complementary, not competing.

The 'What Are You Optimizing For' Question

If your team is optimizing for 'make a better prompt', LangSmith wins. Its eval harness and playground are built for that loop, and it integrates directly with LangChain. If your team is optimizing for 'run this single agent reliably,' Helicone's proxy model is clean and cheap. If your team is optimizing for 'let a security team sign off on our AI deployment,' none of those tools solve the problem you are trying to solve. A control plane does.

The practical setup most enterprises will end up with: LangSmith (or LangFuse, its open-source peer) for deep trace debugging on individual agents, AgentOps for session replay on conversational agents, and Dobby (or another control plane) in the request path enforcing policy and capturing the compliance-grade audit trail. Three tools, three jobs. Nobody is trying to be all three, because the hot-path constraints and the developer-experience constraints point in different directions.

The Practical Migration Path

You do not have to rip anything out. Point your LLM client at Dobby's gateway for the policy-and-governance layer. Keep LangSmith attached as the LangChain callback for the evaluation layer. Both see the same traffic. LangSmith sees it for debugging; Dobby sees it for enforcement and compliance. The two do not fight each other — they sit at different points in the request lifecycle.

# Run LangSmith and a control plane side by side
import os
from langchain_openai import ChatOpenAI
from langsmith import Client as LangSmithClient

# LangSmith — attached as the tracing callback (evaluation layer)
os.environ['LANGCHAIN_TRACING_V2'] = 'true'
os.environ['LANGCHAIN_API_KEY']   = 'ls_...'
os.environ['LANGCHAIN_PROJECT']   = 'support-agent-eval'

# Dobby — in the request path (policy / governance layer)
llm = ChatOpenAI(
    model='gpt-4o',
    api_key='gk_svc_YOUR_KEY',
    base_url='https://dobby-ai.com/api/v1/gateway',
)

# Every call is:  agent -> Dobby gateway (enforce) -> provider
# and also        agent -> LangSmith callback (trace)

If you are choosing from scratch and can only buy one product: the honest answer depends on your primary pain. If it is 'agents keep regressing and I cannot tell why,' start with observability. If it is 'my security team is going to block this deployment,' start with a control plane. Everything else is optimization on top of solving the right problem first.

Ready to take control of your AI agents?

Start free with Dobby AI — connect, monitor, and govern agents from any framework.

Get Started Free
LangSmith vs Control Plane: Observability Isn't Enough — Dobby AI Blog