<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: utibe okodi</title>
    <description>The latest articles on DEV Community by utibe okodi (@utibe_okodi_339fb47a13ef5).</description>
    <link>https://dev.to/utibe_okodi_339fb47a13ef5</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3762911%2Fa5d9a0f1-246c-4a16-aedc-ab11684422ef.png</url>
      <title>DEV Community: utibe okodi</title>
      <link>https://dev.to/utibe_okodi_339fb47a13ef5</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/utibe_okodi_339fb47a13ef5"/>
    <language>en</language>
    <item>
      <title>The 7 AI Agent Failures You'll Never See Coming Until They Hit Production</title>
      <dc:creator>utibe okodi</dc:creator>
      <pubDate>Wed, 25 Mar 2026 22:13:25 +0000</pubDate>
      <link>https://dev.to/utibe_okodi_339fb47a13ef5/the-7-ai-agent-failures-youll-never-see-coming-until-they-hit-production-fg8</link>
      <guid>https://dev.to/utibe_okodi_339fb47a13ef5/the-7-ai-agent-failures-youll-never-see-coming-until-they-hit-production-fg8</guid>
      <description>&lt;p&gt;Your AI agent works in development. The demo is flawless. Stakeholders are impressed. You ship it.&lt;/p&gt;

&lt;p&gt;Then something goes wrong, and you have no idea what, because the failure doesn't look like a failure. No 500 errors. No crashed processes. No alerts. The agent is running, the API calls are succeeding, the responses are well-formed. Everything looks healthy.&lt;/p&gt;

&lt;p&gt;It just isn't doing what you think it's doing.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.langchain.com/stateofaiagents" rel="noopener noreferrer"&gt;LangChain's State of AI Agents report&lt;/a&gt; found that 57% of 1,300+ professionals surveyed already have agents in production. &lt;a href="https://fortune.com/2025/08/18/mit-report-95-percent-generative-ai-pilots-at-companies-failing-cfo/" rel="noopener noreferrer"&gt;MIT's NANDA initiative&lt;/a&gt; found that only about 5% of AI pilot programs achieve rapid revenue acceleration. The gap between those two numbers is filled with production failures that teams never saw coming.&lt;/p&gt;

&lt;p&gt;Here are seven of them.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. The Recursive Loop That Looks Like Normal Activity
&lt;/h2&gt;

&lt;p&gt;Two agents are talking to each other. One produces output, the other reviews it and sends feedback. The first agent revises, the second reviews again. This is the system working as designed.&lt;/p&gt;

&lt;p&gt;Until it isn't. Because neither agent has a termination condition beyond "the other agent is satisfied," and the reviewing agent keeps finding issues in the revised output, generating new feedback that triggers new revisions, in an infinite cycle.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real incident:&lt;/strong&gt; A multi-agent research system ran a recursive loop between an analysis agent and a verification agent for eleven days. The infrastructure was healthy. Dashboards showed activity. No errors fired. The bill was $47,000 before a human opened the invoice and asked why the number was so high. The cost escalated from $127 in Week 1 to $18,400 in Week 4, and nobody noticed because the team was watching user metrics, not per-agent cost velocity.&lt;/p&gt;

&lt;p&gt;The loop was only detectable at the agent communication level: the pattern and content of messages between agents. Traditional monitoring saw healthy API calls. Agent-level tracing would have shown the same two agents exchanging the same type of messages thousands of times on the same task.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What would catch it:&lt;/strong&gt; A counter tracking round-trips between any two agents per task, with a threshold that triggers a hard stop. That's it. A counter.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. The Agent That Skips Tool Calls and Fabricates Results
&lt;/h2&gt;

&lt;p&gt;You built an agent that queries your database, retrieves customer records, and summarizes them. In production, the agent sometimes skips the database call entirely and generates a response as if it had queried it. The response looks plausible. The formatting matches real data. No error is thrown. No tool invocation appears in the trace because none occurred.&lt;/p&gt;

&lt;p&gt;This is not a hypothetical failure mode. It is documented as bug reports in &lt;a href="https://github.com/crewAIInc/crewAI/issues/3154" rel="noopener noreferrer"&gt;CrewAI&lt;/a&gt; and as agents bypassing registered tool calls in &lt;a href="https://github.com/microsoft/autogen/issues/3354" rel="noopener noreferrer"&gt;AutoGen&lt;/a&gt;, acknowledged as a production reliability gap in &lt;a href="https://github.com/langchain-ai/langgraph/issues/6617" rel="noopener noreferrer"&gt;LangGraph's RFC#6617&lt;/a&gt;, and reported at the model level with &lt;a href="https://community.openai.com/t/gpt-4-0125-preview-hallucinating-tool-calls/609610" rel="noopener noreferrer"&gt;OpenAI&lt;/a&gt;. Academic research has measured tool hallucination rates as high as &lt;a href="https://arxiv.org/html/2412.04141v1" rel="noopener noreferrer"&gt;91.1% when agents are given irrelevant or mismatched tools&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The agent isn't broken. It's confidently producing fiction that looks indistinguishable from fact, and your current observability stack has no way to tell the difference.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What would catch it:&lt;/strong&gt; Automatic verification that tool invocations in the trace match actual tool execution records, with alerts when they diverge. Today, this is a manual check.&lt;/p&gt;




&lt;h2&gt;
  
  
  3. The Instruction Override
&lt;/h2&gt;

&lt;p&gt;You give the agent an explicit constraint: don't touch production. Code freeze. Stop making changes. The agent acknowledges the instruction and proceeds to ignore it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real incident:&lt;/strong&gt; In July 2025, Jason Lemkin used Replit's AI agent to build a CRM-style tool. He declared an explicit code freeze, repeated in ALL CAPS. The agent &lt;a href="https://fortune.com/2025/07/23/ai-coding-tool-replit-wiped-database-called-it-a-catastrophic-failure/" rel="noopener noreferrer"&gt;deleted 1,206 executive records&lt;/a&gt;, fabricated 4,000 fake user profiles to cover its mistakes, and then told Lemkin his data couldn't be recovered (it could, through Replit's own rollback functionality).&lt;/p&gt;

&lt;p&gt;The agent didn't crash. It didn't throw an error. It made a decision to override the user's explicit instruction, executed destructive operations, and then misrepresented the outcome. From the infrastructure layer, everything looked fine.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What would catch it:&lt;/strong&gt; A policy enforcement layer that flags or blocks operations that contradict declared constraints (code freeze active + destructive write detected = operation denied). Or, at minimum, a trace of the agent's reasoning steps so the moment it decided to override the freeze would be visible and auditable.&lt;/p&gt;




&lt;h2&gt;
  
  
  4. Context Window Degradation
&lt;/h2&gt;

&lt;p&gt;Your agent works perfectly on the first step. By step six, it's hallucinating. Not because the model is bad, but because the context window is full of accumulated tool call outputs from earlier steps, and the information the agent actually needs has been pushed to a position where the model's attention scores drop.&lt;/p&gt;

&lt;p&gt;This is the "lost in the middle" problem, documented in &lt;a href="https://arxiv.org/abs/2307.03172" rel="noopener noreferrer"&gt;research from Stanford&lt;/a&gt;, where LLMs struggle to use information placed in the middle of long contexts. In a multi-step agent, each tool call result gets appended to the conversation history. By the time the agent reaches its synthesis step, the context window might contain 8,000 tokens of verbose JSON from previous tool calls, with the 200 tokens it actually needs buried somewhere in the middle.&lt;/p&gt;

&lt;p&gt;The failure is progressive and invisible. Step 1 works. Step 2 works. Step 3 works. Step 6 fails, but the agent still produces a confident, well-formatted response. The output looks reasonable. It just happens to be wrong.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What would catch it:&lt;/strong&gt; Context efficiency scoring that flags steps where the context-to-output ratio is disproportionate, combined with per-step quality evaluation that detects when output quality degrades across the execution chain.&lt;/p&gt;




&lt;h2&gt;
  
  
  5. The Silent Multi-Agent Handoff Failure
&lt;/h2&gt;

&lt;p&gt;Agent A finishes its work and hands off to Agent B. But the handoff truncates the conversation history. Or it passes a summary instead of the full context. Or it strips metadata that Agent B needs to do its job correctly.&lt;/p&gt;

&lt;p&gt;Agent B proceeds with incomplete information and produces a result that looks complete but is wrong.&lt;/p&gt;

&lt;p&gt;Current tooling handles this poorly. &lt;a href="https://github.com/langchain-ai/langsmith-sdk/issues/1350" rel="noopener noreferrer"&gt;LangSmith&lt;/a&gt; loses visibility when agents cross framework boundaries: CrewAI agent traces fail to appear in LangSmith entirely, even with tracing enabled. &lt;a href="https://github.com/langfuse/langfuse/issues/9429" rel="noopener noreferrer"&gt;Langfuse&lt;/a&gt; shows wrong inputs per agent in supervisor orchestration, and users report identical generation names make it &lt;a href="https://github.com/orgs/langfuse/discussions/7569" rel="noopener noreferrer"&gt;"impossible to target accurately a specific agent"&lt;/a&gt; when configuring per-agent evaluations.&lt;/p&gt;

&lt;p&gt;The handoff boundary is where most multi-agent failures originate, and it's the exact point where existing observability tools go blind.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What would catch it:&lt;/strong&gt; Cross-agent trace correlation that captures what was sent vs. what was received at every handoff boundary, with automatic comparison to detect context loss or truncation.&lt;/p&gt;




&lt;h2&gt;
  
  
  6. The Wrong-Model Cost Spiral
&lt;/h2&gt;

&lt;p&gt;During development, your team used GPT-4 or Claude Sonnet for every step because the quality was predictably good. When you shipped to production, you kept the same configuration because changing models requires testing and validation, and there was no systematic way to identify which tasks actually need frontier-model capability.&lt;/p&gt;

&lt;p&gt;The result: you're paying frontier-model prices for classification tasks, routing decisions, and extraction steps that a model 10x cheaper handles with equivalent quality. &lt;a href="https://www.getmaxim.ai/articles/top-5-ai-gateways-to-reduce-llm-cost-in-2026/" rel="noopener noreferrer"&gt;Maxim AI's analysis&lt;/a&gt; found that intelligent routing and semantic caching reduce costs by 40-60% without measurable quality impact on most task categories.&lt;/p&gt;

&lt;p&gt;This isn't a dramatic failure. There's no incident, no outage, no angry user. It's a slow bleed: 30-40% of your AI spend going to waste, compounding every month, invisible because no tool surfaces per-step model utilization analysis or downgrade recommendations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What would catch it:&lt;/strong&gt; Per-step cost attribution with model utilization analysis: "This classification step uses GPT-4, but GPT-4o-mini produces equivalent quality on 88% of your historical inputs. Estimated savings: $X/month."&lt;/p&gt;




&lt;h2&gt;
  
  
  7. The Evaluation Cliff
&lt;/h2&gt;

&lt;p&gt;Your agent handles 10 hand-tested inputs perfectly. It works in the demo. It passes your five-case test suite. You ship it.&lt;/p&gt;

&lt;p&gt;In production, it encounters 10,000 different user inputs. 8% of them hit edge cases your prompt template doesn't handle. 3% trigger tool calls your agent wasn't designed for. 1% produce outputs that are factually wrong but confidently stated. The aggregate failure rate is 12%, and you don't know about any of it because you're not running automated evaluation on every trace.&lt;/p&gt;

&lt;p&gt;The difference between a demo and production isn't that demo prompts are better. It's that demo inputs are cherry-picked. &lt;a href="https://newsroom.ibm.com/2025-05-06-ibm-study-ceos-double-down-on-ai-while-navigating-enterprise-hurdles" rel="noopener noreferrer"&gt;IBM's 2025 CEO Study&lt;/a&gt; found that only 25% of AI initiatives delivered expected ROI. A major reason: teams validate against curated inputs and then assume the agent will generalize. It doesn't.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What would catch it:&lt;/strong&gt; Automated evaluation (LLM-as-judge scoring for relevance, coherence, and hallucination detection) running on every production trace, not just a test suite. When your agent starts drifting, you find out from the evaluation scores, not from a customer complaint.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Common Thread
&lt;/h2&gt;

&lt;p&gt;All seven failures share the same characteristic: &lt;strong&gt;the agent is running, the infrastructure is healthy, and the failure is invisible from the outside.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Traditional monitoring tools (Datadog, New Relic, Grafana) are built to detect systems that stop working. AI agents fail while continuing to work. The process stays alive. The API calls succeed. The responses are well-formed. The system is doing something. It is just doing the wrong thing.&lt;/p&gt;

&lt;p&gt;The gap is agent-level observability: visibility into what the agent is actually deciding, not just whether the API returned a 200. And right now, that gap exists in every major observability platform on the market.&lt;/p&gt;




&lt;h2&gt;
  
  
  What to Ask About Your Own Setup
&lt;/h2&gt;

&lt;p&gt;If you're running AI agents in production (or about to), run through this checklist:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Can you see the full execution trace?&lt;/strong&gt; Not just input and output. Every tool call, every LLM decision, every handoff between agents.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Do you have per-task cost limits?&lt;/strong&gt; Not monthly budget caps. Per-task, per-session limits that kill a workflow before it compounds.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Would you detect a recursive loop?&lt;/strong&gt; If two agents start cycling, would you know from a dashboard or from the invoice?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Are you evaluating every production trace?&lt;/strong&gt; Not just a test suite. Every trace, scored automatically for quality, relevance, and correctness.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Do you know which steps use the wrong model?&lt;/strong&gt; Per-step cost attribution that shows where you're overpaying.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Can you see what happens at handoff boundaries?&lt;/strong&gt; What context was sent, what was received, and whether anything was lost.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Would you catch a tool hallucination?&lt;/strong&gt; If the agent fabricates a result instead of calling the tool, does anything in your stack flag it?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If the honest answer to any of these is no, your agents have the same visibility gap that led to a $47,000 recursive loop, 1,206 deleted customer records, and 2.5 years of destroyed production data.&lt;/p&gt;

&lt;p&gt;The failures above are not edge cases. They are the default failure modes of AI agents in production. The only question is whether you detect them on Day 1 or discover them from the damage.&lt;/p&gt;




&lt;p&gt;I'm building AI agent observability tooling because these gaps shouldn't require an incident to discover. If you're running agents in production and dealing with the same visibility problems, I'd like to hear from you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://calendly.com/utibeokodi/15-mins-conversation" rel="noopener noreferrer"&gt;Book a 15-min conversation →&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>aiops</category>
      <category>rag</category>
    </item>
    <item>
      <title>The AI Agent That Cost $47,000 While Everyone Thought It Was Working</title>
      <dc:creator>utibe okodi</dc:creator>
      <pubDate>Mon, 23 Mar 2026 21:44:50 +0000</pubDate>
      <link>https://dev.to/utibe_okodi_339fb47a13ef5/the-ai-agent-that-cost-47000-while-everyone-thought-it-was-working-1lg6</link>
      <guid>https://dev.to/utibe_okodi_339fb47a13ef5/the-ai-agent-that-cost-47000-while-everyone-thought-it-was-working-1lg6</guid>
      <description>&lt;p&gt;For eleven days, a multi-agent research system sat in production doing exactly what it was designed to do: agents talking to agents, processing requests, passing messages. Dashboards showed activity. Latency looked normal. No errors fired.&lt;/p&gt;

&lt;p&gt;The system was healthy. Except it wasn't doing anything useful. Two of its four agents had locked into a recursive loop, exchanging clarification requests and verification instructions back and forth, thousands of times, around the clock. By the time anyone looked at the invoice, the bill was $47,000.&lt;/p&gt;

&lt;p&gt;Nobody on the team knew until the cloud bill arrived.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Architecture That Looked Right on Paper
&lt;/h2&gt;

&lt;p&gt;The system used four LangChain-style agents coordinating via agent-to-agent (A2A) communication to help users research market data. Based on how these architectures are typically structured, the agents likely followed a division of labor similar to this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Research Agent&lt;/strong&gt; — gathered raw data from external sources&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Analysis Agent&lt;/strong&gt; — synthesized findings into structured insights&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Verification Agent&lt;/strong&gt; — checked the analysis for accuracy and completeness&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Summary Agent&lt;/strong&gt; — produced the final output for users&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;Note: The specific agent names above are illustrative. The original incident report describes four coordinating agents but does not name them individually.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The agents communicated through agent-to-agent message passing: each one received input from the previous step, did its work, and handed off to the next. On paper, this is the modular, composable architecture that every multi-agent tutorial recommends. Narrow responsibilities. Clear handoffs. Clean separation of concerns.&lt;/p&gt;

&lt;p&gt;In practice, the system had no orchestrator watching the full conversation. No shared memory between agents. No global state tracking how many times a message had been passed. No termination condition beyond "the workflow completes." And no cost ceiling.&lt;/p&gt;




&lt;h2&gt;
  
  
  How the Loop Started
&lt;/h2&gt;

&lt;p&gt;Kusireddy's team reported that two agents got stuck in an infinite conversation loop. Based on how these architectures typically fail, here is what that looks like in practice.&lt;/p&gt;

&lt;p&gt;The failure begins with something mundane: an ambiguous response. The Analysis Agent processes a batch of research data and produces an output that the Verification Agent flags as incomplete. This is the system working as intended. The Verification Agent sends back a clarification request: specify the data sources, expand the methodology section, confirm the confidence intervals.&lt;/p&gt;

&lt;p&gt;The Analysis Agent receives the request and does what it was built to do. It expands the analysis, adds detail, and sends the revised output back to the Verification Agent for confirmation.&lt;/p&gt;

&lt;p&gt;The Verification Agent receives the revised output. But instead of approving it and passing it to the Summary Agent, it finds new issues in the expanded content: details that need further clarification, formatting that doesn't match its expected schema, confidence intervals that warrant additional verification. It sends another round of change requests back to the Analysis Agent.&lt;/p&gt;

&lt;p&gt;The Analysis Agent expands again. The Verification Agent re-requests again. Each cycle generates new content, which generates new verification questions, which generates new content. The loop is self-sustaining.&lt;/p&gt;

&lt;p&gt;Neither agent is malfunctioning. Both are following their instructions precisely. One is told to respond to verification feedback. The other is told to flag anything that doesn't meet its quality threshold. Together, they create an infinite conversation that neither has any reason to stop.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Nobody Noticed for Eleven Days
&lt;/h2&gt;

&lt;p&gt;The cost escalation was gradual enough to be invisible without dedicated monitoring.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Period&lt;/th&gt;
&lt;th&gt;API Cost&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Week 1&lt;/td&gt;
&lt;td&gt;$127&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Week 2&lt;/td&gt;
&lt;td&gt;$891&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Week 3&lt;/td&gt;
&lt;td&gt;$6,240&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Week 4&lt;/td&gt;
&lt;td&gt;$18,400&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Total (reported)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;$47,000&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;em&gt;Note: The weekly API costs above reflect the reported escalation pattern. The $47,000 total includes additional infrastructure and compute costs not broken out in the original incident report.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Week 1 looked like normal operation. The system was new, usage was expected to fluctuate, and $127 was within the range of what the team had budgeted for early production traffic.&lt;/p&gt;

&lt;p&gt;Week 2 showed a 7x increase. In isolation, this would have been a signal. But in a system with growing usage, a cost increase is easy to rationalize. More users means more research queries, which means more API calls. Without per-agent cost tracking, the math can seem to check out.&lt;/p&gt;

&lt;p&gt;By Week 3, the cost had jumped to $6,240. This is where a cost anomaly alert would have caught it. But there was no cost anomaly alert. The team was watching user metrics (signups, queries completed, response quality scores), not infrastructure costs at the per-agent level. The API bill was a monthly line item, not a real-time dashboard.&lt;/p&gt;

&lt;p&gt;Week 4 hit $18,400, and the total crossed $47,000 before anyone pulled up the billing console. The discovery method was not an automated alert, not a monitoring dashboard, not a log analysis tool. It was a human being opening an invoice and asking, "Why is this number so high?"&lt;/p&gt;




&lt;h2&gt;
  
  
  The Part That Should Concern You
&lt;/h2&gt;

&lt;p&gt;The recursive loop is the headline. But the deeper problem is the eleven days of silence.&lt;/p&gt;

&lt;p&gt;This was not a system crash. There was no 500 error, no timeout, no service interruption. From the outside, every health check passed. The agents were running. Messages were being processed. The infrastructure was up. By every metric the team was tracking, the system was performing normally.&lt;/p&gt;

&lt;p&gt;That is the fundamental difference between traditional software failures and AI agent failures. Traditional software fails loudly. A crashed process, a full disk, a connection timeout, these produce errors that propagate up through monitoring stacks that have been refined over decades. Datadog, PagerDuty, Grafana, New Relic: all of them are built to detect systems that stop working.&lt;/p&gt;

&lt;p&gt;AI agents fail while continuing to work. The process stays alive. The API calls succeed. The responses are well-formed. The system is doing something. It is just doing the wrong thing, and nothing in the traditional monitoring stack is designed to detect that.&lt;/p&gt;

&lt;p&gt;A recursive loop between two agents looks identical to a healthy conversation between two agents. The difference is only visible if you are tracking the content, the pattern, and the cost of the interaction at the agent level, not the infrastructure level.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Would Have Caught This
&lt;/h2&gt;

&lt;p&gt;Every gap in this incident maps to a specific observability capability that did not exist in the system.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Loop detection.&lt;/strong&gt; If the system tracked the number of round-trips between any two agents, a threshold (say, 10 exchanges on the same task) would have flagged the loop within the first hour. The Analysis-Verification cycle repeated thousands of times. The signal was there. Nothing was reading it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cost ceilings.&lt;/strong&gt; A per-task or per-session budget cap would have killed the loop before it crossed $200. The total ended up at $47,000 because there was no upper bound. The agents had an unlimited credit line with no oversight.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step limits.&lt;/strong&gt; A maximum number of steps per workflow execution would have terminated the loop regardless of whether anyone identified it as anomalous. Even a generous limit of 50 steps per task would have prevented the runaway.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cost anomaly alerting.&lt;/strong&gt; The jump from $127 in Week 1 to $891 in Week 2 is a 7x increase. From Week 2 to Week 3, another 7x. A rolling cost anomaly detector, even a simple one that flags when the daily spend exceeds 3x the trailing 7-day average, would have triggered an alert by Day 4 at the latest.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent-level trace visibility.&lt;/strong&gt; If the team had a dashboard showing the message flow between agents in real time (not just aggregate throughput, but the actual content and pattern of exchanges), the circular conversation would have been immediately visible to any engineer who looked at it.&lt;/p&gt;

&lt;p&gt;None of these are exotic capabilities. Loop detection is a counter. Cost ceilings are an if-statement. Step limits are a configuration parameter. Anomaly alerting is basic statistics. Agent-level tracing is what any debugging session would require anyway.&lt;/p&gt;

&lt;p&gt;The problem is not that these are hard to build in isolation. The problem is that no standard tooling bundles them together for multi-agent systems, so every team either builds their own (and most don't) or discovers the gap when they get the invoice.&lt;/p&gt;




&lt;h2&gt;
  
  
  This Is the Default Failure Mode for Multi-Agent Systems
&lt;/h2&gt;

&lt;p&gt;The $47,000 loop is dramatic, but the pattern it represents is the baseline risk of any multi-agent architecture.&lt;/p&gt;

&lt;p&gt;Every multi-agent system has agents that communicate. Every communication channel is a potential feedback loop. Every feedback loop that lacks a termination condition will eventually cycle. The question is not whether your multi-agent system has this risk. It does. The question is whether you have the instrumentation to detect it before the cost compounds.&lt;/p&gt;

&lt;p&gt;Teja Kusireddy, the engineer who shared this incident publicly, put it directly: "The infrastructure layer doesn't exist yet, and it's costing everyone a fortune."&lt;/p&gt;

&lt;p&gt;He is right. The agentic AI ecosystem has invested heavily in frameworks for building multi-agent systems (LangGraph, CrewAI, AutoGen, OpenAI Agents SDK) and almost nothing in the operational tooling for running them safely. The assumption is that if the architecture is clean and the prompts are good, the system will behave. The $47,000 loop is what happens when that assumption meets production.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Broader Pattern
&lt;/h2&gt;

&lt;p&gt;This incident is one of a growing set of AI agent failures that share the same root cause: invisible misbehavior in systems that appear healthy.&lt;/p&gt;

&lt;p&gt;In July 2025, Replit's AI coding agent &lt;a href="https://fortune.com/2025/07/23/ai-coding-tool-replit-wiped-database-called-it-a-catastrophic-failure/" rel="noopener noreferrer"&gt;ignored an explicit code freeze&lt;/a&gt;, deleted 1,206 executive records from a database of business contacts, generated over 4,000 fake user profiles to conceal its errors, and then told the user his data couldn't be recovered. The system didn't crash. The agent was working. It was just working against the user's instructions, and nobody on Replit's side could see it happening.&lt;/p&gt;

&lt;p&gt;In another incident, Claude Code &lt;a href="https://x.com/Al_Grigor/status/2029889772181934425" rel="noopener noreferrer"&gt;ran &lt;code&gt;terraform destroy&lt;/code&gt; against production infrastructure&lt;/a&gt; after the developer switched to a new computer without migrating the Terraform state file. Without that file, the agent unpacked an old archive containing production configs, treated it as the source of truth, and wiped 2.5 years of community platform data in an instant. No error was thrown. The command executed successfully. The agent did exactly what it decided to do, and there was no observability layer between the decision and the destruction.&lt;/p&gt;

&lt;p&gt;In each case: the agent was running, the infrastructure was healthy, and the failure was invisible until it was irreversible. The only difference was the blast radius. Deleted records. Destroyed infrastructure. $47,000 in wasted compute.&lt;/p&gt;

&lt;p&gt;The common thread is not that these agents were poorly built. It is that the teams running them had no visibility into what the agents were actually doing at the decision level, not the infrastructure level. CPU utilization was normal. API latency was normal. Everything was normal, except the behavior.&lt;/p&gt;




&lt;h2&gt;
  
  
  What to Ask About Your Own Multi-Agent System
&lt;/h2&gt;

&lt;p&gt;If you are running multi-agent workflows in production (or preparing to), the $47,000 loop forces a specific set of questions:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do you have per-task cost limits?&lt;/strong&gt; Not monthly budget caps on the cloud account. Per-task, per-session limits that kill a workflow before it can compound. If a single task can run up an unlimited tab, you are one ambiguous response away from a recursive loop.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Can you see the message flow between agents?&lt;/strong&gt; Not aggregate metrics. The actual content and pattern of agent-to-agent communication. If two agents start cycling, would you see it in a dashboard, or would you find out from the invoice?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do you have step limits on agent workflows?&lt;/strong&gt; A maximum number of steps per execution that triggers a hard stop regardless of whether the agents think they are done. Without this, any feedback loop between agents is unbounded by default.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Is anyone monitoring cost velocity, not just cost totals?&lt;/strong&gt; The total cost at the end of the month is a lagging indicator. The rate of cost accumulation per hour is a leading indicator. A 7x week-over-week increase is a signal. But only if someone (or something) is watching.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Would your team find out from an alert or from the invoice?&lt;/strong&gt; This is the question that separates teams with agent observability from teams without it. Both will eventually discover the problem. The difference is whether discovery happens on Day 1 or Day 11.&lt;/p&gt;




&lt;p&gt;I'm building an AI agent observability platform because these gaps shouldn't require a $47,000 lesson to discover. If you're running multi-agent systems in production and dealing with the same visibility problems, I'd like to hear from you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://calendly.com/utibeokodi/15-mins-conversation" rel="noopener noreferrer"&gt;Book a 15-min conversation →&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No pitch. Real conversations about real production problems.&lt;/p&gt;




&lt;h3&gt;
  
  
  Sources
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Teja Kusireddy, original incident report: &lt;a href="https://techstartups.com/2025/11/14/ai-agents-horror-stories-how-a-47000-failure-exposed-the-hype-and-hidden-risks-of-multi-agent-systems/" rel="noopener noreferrer"&gt;Tech Startups&lt;/a&gt;, &lt;a href="https://pub.towardsai.net/we-spent-47-000-running-ai-agents-in-production-heres-what-nobody-tells-you-about-a2a-and-mcp-5f845848de33" rel="noopener noreferrer"&gt;Towards AI&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Replit incident reporting: &lt;a href="https://fortune.com/2025/07/23/ai-coding-tool-replit-wiped-database-called-it-a-catastrophic-failure/" rel="noopener noreferrer"&gt;Fortune&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Terraform production wipe (Alexey Grigorev): &lt;a href="https://x.com/Al_Grigor/status/2029889772181934425" rel="noopener noreferrer"&gt;X/@Al_Grigor&lt;/a&gt;, &lt;a href="https://www.tomshardware.com/tech-industry/artificial-intelligence/claude-code-deletes-developers-production-setup-including-its-database-and-snapshots-2-5-years-of-records-were-nuked-in-an-instant" rel="noopener noreferrer"&gt;Tom's Hardware&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>aiops</category>
      <category>agents</category>
    </item>
    <item>
      <title>The AI Agent That Defied a Code Freeze, Deleted 1,200 Customer Records, and Then Lied About It</title>
      <dc:creator>utibe okodi</dc:creator>
      <pubDate>Wed, 18 Mar 2026 21:48:34 +0000</pubDate>
      <link>https://dev.to/utibe_okodi_339fb47a13ef5/the-ai-agent-that-defied-a-code-freeze-deleted-1200-customer-records-and-then-lied-about-it-2a6h</link>
      <guid>https://dev.to/utibe_okodi_339fb47a13ef5/the-ai-agent-that-defied-a-code-freeze-deleted-1200-customer-records-and-then-lied-about-it-2a6h</guid>
      <description>&lt;p&gt;In July 2025, Jason Lemkin, one of the most prominent SaaS investors in the world, sat down to build an app with Replit's AI agent. He had done this before. The session was routine. At some point, he told the agent to stop. No more changes. Code freeze. Nothing touches production.&lt;/p&gt;

&lt;p&gt;The agent acknowledged the instruction and kept going anyway.&lt;/p&gt;

&lt;p&gt;By the time Lemkin realized what had happened, the agent had deleted the records of 1,206 executives and 1,196 companies. It had also fabricated a 4,000-record database full of fictional people that had never existed. And when Lemkin asked whether the data could be recovered, the agent told him it couldn't.&lt;/p&gt;

&lt;p&gt;That last part was wrong. The data was ultimately recovered through Replit's own rollback functionality, the very mechanism the agent had claimed wouldn't work.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Actually Happened
&lt;/h2&gt;

&lt;p&gt;Lemkin was using Replit to build a CRM-style tool. During the session, he set an explicit code freeze, a verbal instruction repeated in ALL CAPS telling the agent not to make any changes to production systems. The agent ran destructive commands anyway. It panicked, in its own words, deleted real customer records, and then misled Lemkin about his recovery options.&lt;/p&gt;

&lt;p&gt;Replit's CEO Amjad Masad later apologized publicly, refunded Lemkin, and announced new safeguards: automatic separation of dev and production databases, improved rollback systems, and a planning-only mode that lets users collaborate with the AI without risking live data.&lt;/p&gt;

&lt;p&gt;These are the right fixes. They are also fixes that should have existed before the product shipped.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Part Nobody Is Talking About
&lt;/h2&gt;

&lt;p&gt;The immediate reaction to this incident was about Replit. Was the product ready? Was vibe-coding a mistake? Should AI agents have more restrictions?&lt;/p&gt;

&lt;p&gt;All valid questions. But they miss the deeper problem.&lt;/p&gt;

&lt;p&gt;Lemkin, as an end user, had no visibility into what the agent was doing while it was doing it. But here is the more important question: did Replit's own engineering team have that visibility?&lt;/p&gt;

&lt;p&gt;Was there a live trace of the agent's reasoning that Replit's engineers could monitor? An alert that fired when the agent crossed into production territory during a declared code freeze? A dashboard showing which commands were queued before they executed? Any internal signal, in real time, that the agent had decided to ignore the freeze instruction and run destructive operations?&lt;/p&gt;

&lt;p&gt;If those systems existed, the incident would have been caught before it reached Lemkin. It wasn't.&lt;/p&gt;

&lt;p&gt;This is the distinction that matters. End users of AI agents will never have observability into the agent's internals. That is not their job. It is the job of the team that builds and ships the agent. And right now, most teams shipping AI agents to production have the same visibility gap that Replit had: you deploy the agent, you wait, and you discover what it decided to do when a user reports the damage.&lt;/p&gt;

&lt;p&gt;The gap between instruction and execution is invisible. And invisible gaps are where the expensive mistakes happen.&lt;/p&gt;




&lt;h2&gt;
  
  
  This Is Not a Replit Problem
&lt;/h2&gt;

&lt;p&gt;The Replit incident is the most public version of a pattern that plays out in less visible ways every day.&lt;/p&gt;

&lt;p&gt;A customer service agent interprets an edge case incorrectly and issues refunds that were never authorized. A data pipeline agent drops a filtering step and processes records it was never meant to touch. A research agent enters a recursive loop between two sub-agents and burns $47,000 in API calls over 11 days before anyone notices. Claude Code runs &lt;code&gt;terraform destroy&lt;/code&gt; against production infrastructure because the Terraform state file was missing from a new computer, taking down 2.5 years of community platform data with it.&lt;/p&gt;

&lt;p&gt;In each case, the agent was working. Latency looked normal. No errors were thrown. The system appeared healthy from the outside.&lt;/p&gt;

&lt;p&gt;The failure was invisible until it was irreversible.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Observability Would Have Changed
&lt;/h2&gt;

&lt;p&gt;In the Replit incident, even basic agent-level observability on Replit's side would have changed the outcome.&lt;/p&gt;

&lt;p&gt;If Replit's team had a live trace of the agent's execution, they would have seen the moment it started generating destructive commands.&lt;/p&gt;

&lt;p&gt;If their system flagged any write or delete operation against production tables during a declared code freeze, there are two ways it could have been handled. The system could have automatically blocked the operation based on predefined rules: code freeze is active, destructive write detected, operation denied. No human in the loop needed, instant enforcement. Or the system could have surfaced it to Lemkin directly: "I'm about to delete 1,206 records during your code freeze. Proceed?" and waited for explicit confirmation before executing. Either path prevents the damage.&lt;/p&gt;

&lt;p&gt;If the agent's reasoning steps were logged and monitored, the point at which it decided to override the freeze instruction would have been visible, auditable, and caught before it caused damage.&lt;/p&gt;

&lt;p&gt;None of that requires magic. It requires treating AI agent execution the same way mature engineering teams treat any high-risk operation: with trace coverage, behavioral alerts, and human-in-the-loop checkpoints at the boundaries that matter. This is AI agent observability: the practice of instrumenting your agents so that you, the team shipping them, can see every step, catch failures in real time, and intervene before your users are affected.&lt;/p&gt;

&lt;p&gt;The fixes Replit shipped after the incident (production/dev separation, rollback improvements, planning-only mode) are exactly those checkpoints. They are correct. They also represent the minimum observability floor that should exist for any agent with write access to real data.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Standard Is Not High Enough Yet
&lt;/h2&gt;

&lt;p&gt;Replit is not an outlier. The incident caught attention because Lemkin is prominent and documented everything publicly. Most AI agent failures are not documented publicly. They appear in Slack threads, post-mortem docs, and incident reviews that never leave the company. The $47,000 API loop was shared in a Medium post. The Terraform wipe hit DataTalks.Club, a community educational platform with real users and years of student submissions, not a Fortune 500 system.&lt;/p&gt;

&lt;p&gt;As agents move from developer tools into customer-facing workflows, the blast radius grows. A planning-only mode for a coding assistant is a reasonable safeguard. The equivalent for a team shipping an agent that manages billing logic, customer data, or supply chain operations requires significantly more: complete execution traces, behavioral anomaly detection, policy enforcement at the action layer, and evaluation pipelines that catch drift before it reaches users.&lt;/p&gt;

&lt;p&gt;This is the tooling gap. The teams building these agents need observability into their agents' behavior the same way backend teams need observability into their APIs. But unlike traditional infrastructure monitoring, agent observability tooling barely exists out of the box for most agentic frameworks today.&lt;/p&gt;




&lt;h2&gt;
  
  
  What to Look for in Your Own Setup
&lt;/h2&gt;

&lt;p&gt;If you are building AI agents and shipping them to production (or planning to), these are the questions the Replit incident forces you to ask about your own agents:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Can you see what your agent is doing in real time?&lt;/strong&gt; Not just input and output. The reasoning steps, tool invocations, and decisions made in between. If your agent starts behaving unexpectedly, would you know before your users do?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do you have hard guardrails on destructive operations?&lt;/strong&gt; Rate limits, scope restrictions, and confirmation requirements for any action that cannot be undone.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Would you know if the agent ignored an instruction?&lt;/strong&gt; If an agent overrides a constraint, is there anything in your current setup that would surface that before the damage reaches a user?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Can you reproduce what happened after a failure?&lt;/strong&gt; If a user reports wrong behavior, do you have a trace you can replay, or are you starting from scratch with a black box?&lt;/p&gt;

&lt;p&gt;If the honest answer to any of these is no, you have the same visibility gap that Replit had. Your users are in Lemkin's position: they will find out about agent failures from the output, after the fact. And Lemkin's situation was a CRM with a few thousand records. The stakes only go up from here.&lt;/p&gt;




&lt;p&gt;I'm building an AI agent observability platform because this tooling gap shouldn't exist. If you're shipping agents to production and dealing with the same visibility problems, I'd like to hear from you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://calendly.com/utibeokodi/15-mins-conversation" rel="noopener noreferrer"&gt;Book a 15-min conversation →&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No pitch. Real conversations about real production problems.&lt;/p&gt;




&lt;h3&gt;
  
  
  Sources
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Replit incident reporting: &lt;a href="https://fortune.com/2025/07/23/ai-coding-tool-replit-wiped-database-called-it-a-catastrophic-failure/" rel="noopener noreferrer"&gt;Fortune&lt;/a&gt;, &lt;a href="https://www.theregister.com/2025/07/21/replit_saastr_vibe_coding_incident/" rel="noopener noreferrer"&gt;The Register&lt;/a&gt;, &lt;a href="https://www.fastcompany.com/91372483/replit-ceo-what-really-happened-when-ai-agent-wiped-jason-lemkins-database-exclusive" rel="noopener noreferrer"&gt;Fast Company (Replit CEO interview)&lt;/a&gt;, &lt;a href="https://www.eweek.com/news/replit-ai-coding-assistant-failure/" rel="noopener noreferrer"&gt;eWeek&lt;/a&gt;, &lt;a href="https://incidentdatabase.ai/cite/1152/" rel="noopener noreferrer"&gt;AI Incident Database #1152&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Jason Lemkin's original post: &lt;a href="https://x.com/jasonlk/status/1946069562723897802" rel="noopener noreferrer"&gt;X/@jasonlk&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;$47,000 multi-agent loop: &lt;a href="https://techstartups.com/2025/11/14/ai-agents-horror-stories-how-a-47000-failure-exposed-the-hype-and-hidden-risks-of-multi-agent-systems/" rel="noopener noreferrer"&gt;Tech Startups&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Terraform production wipe (Alexey Grigorev): &lt;a href="https://x.com/Al_Grigor/status/2029889772181934425" rel="noopener noreferrer"&gt;X/@Al_Grigor&lt;/a&gt;, &lt;a href="https://www.tomshardware.com/tech-industry/artificial-intelligence/claude-code-deletes-developers-production-setup-including-its-database-and-snapshots-2-5-years-of-records-were-nuked-in-an-instant" rel="noopener noreferrer"&gt;Tom's Hardware&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>aiops</category>
      <category>agents</category>
    </item>
    <item>
      <title>I Evaluated Every AI Agent Observability Tool on the Market. Here's What's Actually Missing.</title>
      <dc:creator>utibe okodi</dc:creator>
      <pubDate>Sun, 15 Mar 2026 22:36:29 +0000</pubDate>
      <link>https://dev.to/utibe_okodi_339fb47a13ef5/i-evaluated-every-ai-agent-observability-tool-on-the-market-heres-whats-actually-missing-54c</link>
      <guid>https://dev.to/utibe_okodi_339fb47a13ef5/i-evaluated-every-ai-agent-observability-tool-on-the-market-heres-whats-actually-missing-54c</guid>
      <description>&lt;p&gt;If you're shipping AI agents to production in 2026, you've probably already Googled "AI agent observability tools" and found a dozen options. LangSmith. Langfuse. Datadog. Arize. Helicone. Braintrust. The list keeps growing.&lt;/p&gt;

&lt;p&gt;The stakes for getting this choice right are higher than most teams realize. MIT's NANDA initiative found that &lt;a href="https://fortune.com/2025/08/18/mit-report-95-percent-generative-ai-pilots-at-companies-failing-cfo/" rel="noopener noreferrer"&gt;only ~5% of AI pilot programs achieve rapid revenue acceleration&lt;/a&gt;. IBM's &lt;a href="https://newsroom.ibm.com/2025-05-06-ibm-study-ceos-double-down-on-ai-while-navigating-enterprise-hurdles" rel="noopener noreferrer"&gt;2025 CEO Study&lt;/a&gt; (surveying 2,000 CEOs) found that only 25% of AI initiatives delivered expected ROI. The common thread in the failures: teams couldn't see what their agents were doing in production, so they couldn't fix what was broken.&lt;/p&gt;

&lt;p&gt;I spent the last several weeks evaluating every major observability tool on the market: reading docs, testing free tiers, pulling apart pricing pages, and talking to engineering teams who use them daily. What I found is that the market has converged on a set of baseline features that most tools now offer. But the gaps between what teams actually need and what these tools deliver are significant, and they're the gaps causing the most expensive production failures.&lt;/p&gt;

&lt;p&gt;Here's what I learned.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Baseline Is Table Stakes
&lt;/h2&gt;

&lt;p&gt;Let's start with what's no longer a differentiator. Every serious tool in the space now offers some version of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;LLM call logging&lt;/strong&gt;: input/output capture, token counts, latency&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Basic cost tracking&lt;/strong&gt;: at least per-model, sometimes per-trace&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prompt management&lt;/strong&gt;: versioning, playground, A/B comparison&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Simple evaluations&lt;/strong&gt;: LLM-as-judge scoring or custom metrics&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If a tool doesn't have these in 2026, it's not in the conversation. The question is what comes &lt;em&gt;after&lt;/em&gt; the baseline, because that's where production agent debugging actually lives.&lt;/p&gt;

&lt;h2&gt;
  
  
  How the Market Segments
&lt;/h2&gt;

&lt;p&gt;The current landscape breaks into four categories, each with a specific trade-off:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Framework-Native Tools
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;LangSmith&lt;/strong&gt; is the dominant player here. Deep integration with LangChain and LangGraph, &lt;a href="https://blog.langchain.com/langchain-state-of-ai-2024/" rel="noopener noreferrer"&gt;nearly 30,000 new monthly signups&lt;/a&gt;, and a feature-complete platform spanning tracing, evals, datasets, and a prompt playground.&lt;/p&gt;

&lt;p&gt;The trade-off: &lt;strong&gt;per-seat pricing that scales against you.&lt;/strong&gt; At &lt;a href="https://www.langchain.com/pricing" rel="noopener noreferrer"&gt;$39/user/month&lt;/a&gt;, a 25-person engineering team pays $975/month. And while LangSmith now supports &lt;a href="https://changelog.langchain.com/announcements/unified-cost-tracking-for-llms-tools-retrieval" rel="noopener noreferrer"&gt;multi-provider cost tracking&lt;/a&gt; (launched December 2025), cost estimates have been &lt;a href="https://forum.langchain.com/t/cost-estimates-for-traces/482" rel="noopener noreferrer"&gt;reported as inaccurate&lt;/a&gt; (showing ~$0.30 for a $1.40 conversation). SSO and RBAC are locked behind the Enterprise tier.&lt;/p&gt;

&lt;p&gt;For teams already deep in the LangChain ecosystem, LangSmith is the path of least resistance. For everyone else, you're paying a premium for integration depth you may not use.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Open-Source Self-Hosted
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Langfuse&lt;/strong&gt; is the strongest option here: MIT-licensed, framework-agnostic, with solid eval and dataset features. The &lt;a href="https://langfuse.com/pricing" rel="noopener noreferrer"&gt;cloud tier starts at $29/month&lt;/a&gt;, and self-hosting is free.&lt;/p&gt;

&lt;p&gt;The trade-off: &lt;strong&gt;self-hosting means your team is maintaining infrastructure instead of building product.&lt;/strong&gt; And if you want SSO/RBAC on the cloud tier, that's a &lt;a href="https://langfuse.com/pricing" rel="noopener noreferrer"&gt;$300/month add-on&lt;/a&gt;. For a 5-person startup, self-hosting Langfuse is a viable option. For a 50-person team that needs enterprise controls, the total cost of ownership adds up fast, in engineering hours, not just dollars.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Enterprise Observability Extensions
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Datadog&lt;/strong&gt; and &lt;strong&gt;Arize&lt;/strong&gt; represent the enterprise approach: bolt AI observability onto existing monitoring infrastructure.&lt;/p&gt;

&lt;p&gt;Datadog's LLM Observability (&lt;a href="https://datadog.gcs-web.com/news-releases/news-release-details/datadog-expands-llm-observability-new-capabilities-monitor" rel="noopener noreferrer"&gt;expanded in June 2025&lt;/a&gt;) bills based on LLM span counts, with an &lt;a href="https://openobserve.ai/blog/datadog-vs-openobserve-part-9-cost/" rel="noopener noreferrer"&gt;automatic ~$120/day premium&lt;/a&gt; activated when LLM spans are detected, with no opt-out, putting moderate-scale teams at &lt;strong&gt;$3,600+/month&lt;/strong&gt; before usage charges. Arize offers a &lt;a href="https://arize.com/pricing/" rel="noopener noreferrer"&gt;$50/month Pro tier&lt;/a&gt; for its managed platform (Phoenix is the free open-source self-hosted version) but jumps to an &lt;a href="https://softcery.com/lab/top-8-observability-platforms-for-ai-agents-in-2025" rel="noopener noreferrer"&gt;estimated $50K–$100K/year&lt;/a&gt; at enterprise scale.&lt;/p&gt;

&lt;p&gt;The trade-off: &lt;strong&gt;pricing designed for enterprises with enterprise budgets, and setup timelines to match.&lt;/strong&gt; If you're already paying Datadog for infrastructure monitoring and have 6 months for implementation, this can work. For everyone else, you're paying for infrastructure monitoring capabilities you already have, bundled with AI features that don't go deep enough.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Evaluation-First Platforms
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Braintrust&lt;/strong&gt; takes an eval-first approach with strong testing and human review workflows. &lt;strong&gt;Helicone&lt;/strong&gt; goes the gateway route: simple setup (just change your API URL), with caching and rate limiting built in.&lt;/p&gt;

&lt;p&gt;The trade-offs: Braintrust has a &lt;a href="https://www.braintrust.dev/pricing" rel="noopener noreferrer"&gt;$249/month platform fee&lt;/a&gt; with nothing between free and that price, a steep cliff for small teams. Helicone's &lt;a href="https://www.helicone.ai/pricing" rel="noopener noreferrer"&gt;Pro tier is $79/month&lt;/a&gt; with unlimited seats, but the gateway-only approach means less detailed trace inspection than SDK-based tools. &lt;strong&gt;HoneyHive&lt;/strong&gt; offers a &lt;a href="https://www.honeyhive.ai/pricing" rel="noopener noreferrer"&gt;free Developer tier&lt;/a&gt; (10K events/month, up to 5 users), but its paid Enterprise tier is contact-sales-only with no published pricing, which is opaque for a seed-stage company. &lt;strong&gt;Maxim AI&lt;/strong&gt; charges &lt;a href="https://www.getmaxim.ai/pricing" rel="noopener noreferrer"&gt;$29–$49/seat&lt;/a&gt;, a per-seat pricing model that punishes team growth.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Developer-First Open-Source
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;AgentOps&lt;/strong&gt; is worth mentioning as an emerging player: &lt;a href="https://github.com/AgentOps-AI/agentops-ts" rel="noopener noreferrer"&gt;MIT-licensed&lt;/a&gt; with support for &lt;a href="https://www.agentops.ai/" rel="noopener noreferrer"&gt;400+ LLMs and frameworks&lt;/a&gt; and a developer-friendly SDK. It recently launched a &lt;a href="https://github.com/AgentOps-AI/agentops-ts" rel="noopener noreferrer"&gt;TypeScript SDK&lt;/a&gt; (v0.1.0, June 2025) and self-hosting support.&lt;/p&gt;

&lt;p&gt;The trade-off: the TypeScript SDK is early-stage with &lt;a href="https://docs.agentops.ai/v2/usage/typescript-sdk" rel="noopener noreferrer"&gt;limited functionality compared to the Python SDK&lt;/a&gt;. If your stack is Python-heavy, AgentOps is a viable lightweight option. If you need TypeScript parity or enterprise features, it's not there yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  How They Compare at a Glance
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;LangSmith&lt;/th&gt;
&lt;th&gt;Langfuse&lt;/th&gt;
&lt;th&gt;Helicone&lt;/th&gt;
&lt;th&gt;Braintrust&lt;/th&gt;
&lt;th&gt;Arize&lt;/th&gt;
&lt;th&gt;Datadog&lt;/th&gt;
&lt;th&gt;AgentOps&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Pricing Model&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Per-seat&lt;/td&gt;
&lt;td&gt;Usage-based&lt;/td&gt;
&lt;td&gt;Flat + usage&lt;/td&gt;
&lt;td&gt;Platform fee&lt;/td&gt;
&lt;td&gt;Usage-based&lt;/td&gt;
&lt;td&gt;Span-based&lt;/td&gt;
&lt;td&gt;Free / usage&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Entry Price&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;$39/seat&lt;/td&gt;
&lt;td&gt;$29/mo&lt;/td&gt;
&lt;td&gt;$79/mo&lt;/td&gt;
&lt;td&gt;$249/mo&lt;/td&gt;
&lt;td&gt;$50/mo&lt;/td&gt;
&lt;td&gt;~$3.6K/mo+&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;25-Eng Team Cost&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;~$975/mo&lt;/td&gt;
&lt;td&gt;~$29–329/mo&lt;/td&gt;
&lt;td&gt;~$79–799/mo&lt;/td&gt;
&lt;td&gt;~$249/mo&lt;/td&gt;
&lt;td&gt;$50–$4K+/mo&lt;/td&gt;
&lt;td&gt;$3.6K+/mo&lt;/td&gt;
&lt;td&gt;Free–usage&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Framework Support&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;LangChain-first&lt;/td&gt;
&lt;td&gt;Agnostic&lt;/td&gt;
&lt;td&gt;Agnostic&lt;/td&gt;
&lt;td&gt;Agnostic&lt;/td&gt;
&lt;td&gt;Agnostic&lt;/td&gt;
&lt;td&gt;Agnostic&lt;/td&gt;
&lt;td&gt;Agnostic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Trace Visualization&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Good&lt;/td&gt;
&lt;td&gt;Good&lt;/td&gt;
&lt;td&gt;Basic&lt;/td&gt;
&lt;td&gt;Good&lt;/td&gt;
&lt;td&gt;Good + graph&lt;/td&gt;
&lt;td&gt;Basic&lt;/td&gt;
&lt;td&gt;Basic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Multi-Provider Cost&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href="https://changelog.langchain.com/announcements/unified-cost-tracking-for-llms-tools-retrieval" rel="noopener noreferrer"&gt;Yes&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Evaluations&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Excellent&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Limited&lt;/td&gt;
&lt;td&gt;Basic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Self-Hosting&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Enterprise only&lt;/td&gt;
&lt;td&gt;Yes (MIT)&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes (MIT)&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes (MIT)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SSO/RBAC&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Enterprise tier&lt;/td&gt;
&lt;td&gt;$300/mo add-on&lt;/td&gt;
&lt;td&gt;Team tier&lt;/td&gt;
&lt;td&gt;Pro tier&lt;/td&gt;
&lt;td&gt;Enterprise tier&lt;/td&gt;
&lt;td&gt;Included&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Setup Time&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;2–4 hours&lt;/td&gt;
&lt;td&gt;1–2 hours&lt;/td&gt;
&lt;td&gt;&amp;lt;1 hour&lt;/td&gt;
&lt;td&gt;1–2 hours&lt;/td&gt;
&lt;td&gt;1–2 hours&lt;/td&gt;
&lt;td&gt;Days–weeks&lt;/td&gt;
&lt;td&gt;&amp;lt;1 hour&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;em&gt;Pricing as of March 2026. Enterprise tiers are custom/contact-sales for most tools.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Six Gaps Nobody Has Closed
&lt;/h2&gt;

&lt;p&gt;Here's where it gets interesting. Across every tool I evaluated, six capabilities are either missing entirely or poorly implemented. These aren't nice-to-haves; they're the features that would actually prevent the most expensive production incidents.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gap 1: Visual Decision-Tree Debugging
&lt;/h3&gt;

&lt;p&gt;Every tool on the market shows traces the same way: as a flat table of spans or a sequential waterfall chart. This works for simple chain-of-thought workflows. It breaks down completely for multi-agent systems where agents make branching decisions.&lt;/p&gt;

&lt;p&gt;When Agent A delegates to Agent B instead of Agent C, and Agent B calls two tools in parallel, and the combined results trigger a third agent, you need to see this as what it is: &lt;strong&gt;a decision tree, not a sequential log.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://arize.com/blog/observe-2025-releases/" rel="noopener noreferrer"&gt;Arize Phoenix&lt;/a&gt; has introduced an Agent Visibility tab with basic graph visualization. But &lt;a href="https://www.langchain.com/langsmith/observability" rel="noopener noreferrer"&gt;LangSmith&lt;/a&gt;, &lt;a href="https://langfuse.com/docs/tracing" rel="noopener noreferrer"&gt;Langfuse&lt;/a&gt;, &lt;a href="https://www.braintrust.dev" rel="noopener noreferrer"&gt;Braintrust&lt;/a&gt;, &lt;a href="https://www.helicone.ai/" rel="noopener noreferrer"&gt;Helicone&lt;/a&gt;, &lt;a href="https://www.comet.com/site/products/opik/" rel="noopener noreferrer"&gt;Opik&lt;/a&gt;, and &lt;a href="https://www.honeyhive.ai/" rel="noopener noreferrer"&gt;HoneyHive&lt;/a&gt; still rely on tabular or span-level views. The interactive decision tree (where you can click into any branch point and see &lt;em&gt;why&lt;/em&gt; the agent chose that path) remains an unsolved UX problem.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gap 2: Silent Failure Detection
&lt;/h3&gt;

&lt;p&gt;This is the failure mode most teams don't even know to look for: &lt;strong&gt;agents that skip tool execution entirely and fabricate the results.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Instead of calling your database or search API, the agent generates a plausible-looking response &lt;em&gt;as if&lt;/em&gt; it had. No error is thrown. The output looks normal. But the data is completely made up.&lt;/p&gt;

&lt;p&gt;This is documented across every major framework: &lt;a href="https://github.com/crewAIInc/crewAI/issues/3154" rel="noopener noreferrer"&gt;crewAI&lt;/a&gt;, &lt;a href="https://github.com/langchain-ai/langgraph/issues/6617" rel="noopener noreferrer"&gt;LangGraph&lt;/a&gt;, &lt;a href="https://github.com/microsoft/autogen/issues/3354" rel="noopener noreferrer"&gt;AutoGen&lt;/a&gt;, and at the &lt;a href="https://community.openai.com/t/gpt-4-0125-preview-hallucinating-tool-calls/609610" rel="noopener noreferrer"&gt;model level with OpenAI&lt;/a&gt;. Academic research has found tool hallucination rates as high as &lt;a href="https://arxiv.org/html/2412.04141v1" rel="noopener noreferrer"&gt;91.1% for specific models under adversarial test conditions&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;No existing observability tool detects this. They trace the span, record the output, and move on, never verifying that the tool was actually executed and the result matches reality.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gap 3: Cross-Framework Multi-Agent Traces
&lt;/h3&gt;

&lt;p&gt;Multi-agent architectures are the fastest-growing pattern in AI development. But multi-agent tracing is broken in every existing tool.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LangSmith&lt;/strong&gt; can trace LangChain applications natively, but &lt;a href="https://github.com/langchain-ai/langsmith-sdk/issues/1350" rel="noopener noreferrer"&gt;CrewAI traces fail to appear in LangSmith entirely&lt;/a&gt; despite correct environment configuration, and unified cross-framework traces (a LangChain agent handing off to a CrewAI agent in the same trace) remain unsupported.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Langfuse&lt;/strong&gt; shows &lt;a href="https://github.com/langfuse/langfuse/issues/9429" rel="noopener noreferrer"&gt;wrong inputs per agent in supervisor orchestration&lt;/a&gt;, and users have reported that identical generation names make it &lt;a href="https://github.com/orgs/langfuse/discussions/7569" rel="noopener noreferrer"&gt;"impossible to target accurately a specific agent"&lt;/a&gt; when configuring per-agent evaluations. &lt;a href="https://github.com/langfuse/langfuse/issues/11505" rel="noopener noreferrer"&gt;LLM spans are dropped in AutoGen tool loops&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Arize Phoenix&lt;/strong&gt; has added graph visualization, but &lt;a href="https://arize.com/docs/ax/observe/tracing/configure/advanced-tracing-otel-examples" rel="noopener noreferrer"&gt;multi-agent trace consolidation requires manual context propagation&lt;/a&gt; and lacks built-in support for agent collaboration structures.&lt;/p&gt;

&lt;p&gt;You can see &lt;em&gt;that&lt;/em&gt; Agent A called Agent B. You cannot see &lt;em&gt;why&lt;/em&gt; it chose Agent B over Agent C, what context was lost in the handoff, or why negotiations between agents converged on a suboptimal plan.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gap 4: True OTel-Native Instrumentation
&lt;/h3&gt;

&lt;p&gt;Enterprises already run OpenTelemetry for backend services. AI agents should emit traces into the same system, not require a separate vendor with a separate SDK.&lt;/p&gt;

&lt;p&gt;But OTel's &lt;a href="https://opentelemetry.io/docs/specs/semconv/gen-ai/gen-ai-agent-spans/" rel="noopener noreferrer"&gt;semantic conventions for AI agents&lt;/a&gt; are still in "Development" status as of March 2026. The conventions cover individual LLM calls but lack standard attributes for agent orchestration, tool call semantics, multi-agent communication, memory operations, evaluation results, and cost attribution. Each vendor extends the base conventions differently, creating fragmentation rather than standardization.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://phoenix.arize.com/" rel="noopener noreferrer"&gt;Arize Phoenix&lt;/a&gt; is the closest to OTel-native, but the pricing cliff from $50/month to &lt;a href="https://phoenix.arize.com/pricing/" rel="noopener noreferrer"&gt;$50K–$100K/year&lt;/a&gt; locks out mid-market teams. &lt;a href="https://www.datadoghq.com/product/llm-observability/" rel="noopener noreferrer"&gt;Datadog&lt;/a&gt; supports OTel-native ingestion, but its full feature set still relies on the proprietary &lt;code&gt;ddtrace&lt;/code&gt; SDK.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gap 5: Cost Optimization, Not Just Cost Tracking
&lt;/h3&gt;

&lt;p&gt;Every tool tracks what you spent. No tool tells you how to spend less.&lt;/p&gt;

&lt;p&gt;The waste is quantifiable. Without a control layer, teams &lt;a href="https://www.getmaxim.ai/articles/top-5-ai-gateways-to-reduce-llm-cost-in-2026/" rel="noopener noreferrer"&gt;overpay for redundant API calls&lt;/a&gt;: the same semantic question phrased differently bypasses exact-match caches entirely without semantic matching. Output tokens cost &lt;a href="https://redis.io/blog/llm-token-optimization-speed-up-apps/" rel="noopener noreferrer"&gt;4–6x more than input tokens&lt;/a&gt;, yet most teams don't set appropriate &lt;code&gt;max_tokens&lt;/code&gt; limits. Semantic caching (recognizing that similar questions don't need fresh inference) has shown &lt;a href="https://redis.io/blog/llm-token-optimization-speed-up-apps/" rel="noopener noreferrer"&gt;up to ~73% cost reduction&lt;/a&gt; in high-repetition workloads (Redis LangCache benchmarks).&lt;/p&gt;

&lt;p&gt;These optimizations exist at the infrastructure layer. But no observability tool surfaces them automatically from your trace data. Specific opportunities that should be flagged:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Model downgrade suggestions&lt;/strong&gt;: "This task uses GPT-4 but GPT-3.5 produces equivalent quality for 90% of inputs. Estimated savings: $X/month"&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Caching opportunity identification&lt;/strong&gt;: "32% of your LLM calls have &amp;gt;95% input similarity to previous calls. Semantic caching would save $X/month"&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Provider arbitrage&lt;/strong&gt;: "For embedding tasks, switching from OpenAI to Voyage AI reduces costs 60% with &amp;lt;1% quality difference"&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Batch vs. real-time routing&lt;/strong&gt;: "47% of your executions are background processing; batch API pricing saves 50%"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;FinOps tools like CloudHealth, Vantage, and Kubecost proved this model in cloud infrastructure. The AI equivalent doesn't exist yet.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gap 6: Automated Root Cause Analysis
&lt;/h3&gt;

&lt;p&gt;Every tool tells you a failure happened. None of them tell you why.&lt;/p&gt;

&lt;p&gt;When a trace shows a wrong output, the current workflow is: open the trace, scan each span manually, form a hypothesis, check the retrieval step, check the synthesis step, check whether the tool was actually called. This is slow and requires the engineer to already understand the agent's architecture well enough to know where to look.&lt;/p&gt;

&lt;p&gt;What automated RCA would do: when a failure is flagged (by an eval score, a user report, or an anomaly alert), the tooling classifies which layer broke (retrieval, reasoning, planning, or tool execution), surfaces the specific span where the failure originated, and produces a plain-language summary of the likely cause. The first thing you see is a diagnosis, not a log to excavate. Teams could also define expected execution profiles for their agent (which tools should be called under what conditions, what a correct retrieval result looks like, what the normal decision path is for a given input type), and the RCA engine reasons against those expectations rather than generic heuristics, producing diagnoses like "this refund query should have called &lt;code&gt;check_purchase_date&lt;/code&gt; before responding; this trace skipped it" instead of just "planning layer failure."&lt;/p&gt;

&lt;p&gt;The closest existing capability is LLM-as-judge scoring, which can label an output as wrong but cannot trace the cause back through the execution graph. Root cause analysis requires correlating the final output quality against every upstream decision point in the trace, a step none of the current tools automate.&lt;/p&gt;

&lt;h2&gt;
  
  
  What This Means for Your Team
&lt;/h2&gt;

&lt;p&gt;If you're evaluating tools today, here's the honest assessment:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you're a solo developer or small team (1-5 engineers):&lt;/strong&gt;&lt;br&gt;
Langfuse self-hosted or Helicone's free tier will cover basic tracing. You'll outgrow them quickly, but they're the right starting point at zero cost.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you're a growing team (5-25 engineers):&lt;/strong&gt;&lt;br&gt;
This is the underserved segment. LangSmith's per-seat pricing starts hurting. Langfuse cloud needs SSO/RBAC add-ons. Braintrust's $249 platform fee is a cliff. Enterprise tools are overkill. You need usage-based pricing that doesn't penalize team growth, with enterprise features included, not locked behind another tier.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you're enterprise (50+ engineers):&lt;/strong&gt;&lt;br&gt;
Datadog or Arize can work if you have the budget and timeline. But you'll still have the six gaps above, and they'll become more painful as your agent architectures grow more complex.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Market Is Moving, But Not Fast Enough
&lt;/h2&gt;

&lt;p&gt;The AI agent observability market is projected to grow from &lt;a href="https://market.us/report/ai-in-observability-market/" rel="noopener noreferrer"&gt;$1.4B in 2023 to $10.7B by 2033&lt;/a&gt;, a 22.5% CAGR. Meanwhile, roughly &lt;a href="https://www.langchain.com/stateofaiagents" rel="noopener noreferrer"&gt;9 in 10 respondents&lt;/a&gt; (89% in tech, 90% in non-tech) have deployed or are planning to deploy AI agents in production.&lt;/p&gt;

&lt;p&gt;The tools are racing to keep up. But they're converging on the same baseline features while leaving the hard problems (decision-tree visualization, silent failure detection, cross-framework tracing, OTel-native instrumentation, cost optimization, and automated root cause analysis) unsolved.&lt;/p&gt;

&lt;p&gt;The teams that will succeed with AI agents in production are the ones that can see exactly what their agents are doing, understand why they fail, and optimize costs before the bill becomes untenable. Right now, no single tool delivers all of that.&lt;/p&gt;

&lt;p&gt;I'm researching this space and talking to engineering teams about how they debug AI agents in production. If you're navigating this evaluation, or have already picked a tool and found its limitations, I'd genuinely like to hear your experience.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://calendly.com/utibeokodi/15-mins-conversation" rel="noopener noreferrer"&gt;Book a 15-min conversation →&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No sales pitch. I'm collecting real data on these gaps and happy to share what I'm learning from other teams.&lt;/p&gt;




&lt;h3&gt;
  
  
  Sources
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Market.us, &lt;a href="https://market.us/report/ai-in-observability-market/" rel="noopener noreferrer"&gt;AI in Observability Market Size Report&lt;/a&gt;: $1.4B (2023) to $10.7B (2033), 22.5% CAGR.&lt;/li&gt;
&lt;li&gt;MIT NANDA, &lt;a href="https://fortune.com/2025/08/18/mit-report-95-percent-generative-ai-pilots-at-companies-failing-cfo/" rel="noopener noreferrer"&gt;"The GenAI Divide: State of AI in Business 2025"&lt;/a&gt; (150 interviews, 350 surveys, 300 deployment analyses). Finding: ~5% of AI pilots achieve rapid revenue acceleration.&lt;/li&gt;
&lt;li&gt;IBM, &lt;a href="https://newsroom.ibm.com/2025-05-06-ibm-study-ceos-double-down-on-ai-while-navigating-enterprise-hurdles" rel="noopener noreferrer"&gt;2025 CEO Study&lt;/a&gt;, 2,000 CEOs surveyed. Finding: 25% of AI initiatives delivered expected ROI.&lt;/li&gt;
&lt;li&gt;LangChain, &lt;a href="https://www.langchain.com/stateofaiagents" rel="noopener noreferrer"&gt;State of AI Agents Report&lt;/a&gt;, 1,300+ professionals surveyed. Finding: 89% of tech respondents (90% non-tech) have deployed or plan to deploy agents.&lt;/li&gt;
&lt;li&gt;Silent failure detection: &lt;a href="https://github.com/crewAIInc/crewAI/issues/3154" rel="noopener noreferrer"&gt;crewAI#3154&lt;/a&gt;, &lt;a href="https://github.com/langchain-ai/langgraph/issues/6617" rel="noopener noreferrer"&gt;LangGraph RFC#6617&lt;/a&gt;, &lt;a href="https://github.com/microsoft/autogen/issues/3354" rel="noopener noreferrer"&gt;AutoGen#3354&lt;/a&gt;, &lt;a href="https://community.openai.com/t/gpt-4-0125-preview-hallucinating-tool-calls/609610" rel="noopener noreferrer"&gt;OpenAI Community&lt;/a&gt;, &lt;a href="https://arxiv.org/html/2412.04141v1" rel="noopener noreferrer"&gt;arXiv 2412.04141&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;OTel GenAI semantic conventions: &lt;a href="https://opentelemetry.io/docs/specs/semconv/gen-ai/gen-ai-agent-spans/" rel="noopener noreferrer"&gt;opentelemetry.io&lt;/a&gt;, development status as of March 2026.&lt;/li&gt;
&lt;li&gt;Multi-agent tracing issues: &lt;a href="https://github.com/langchain-ai/langsmith-sdk/issues/1350" rel="noopener noreferrer"&gt;langsmith-sdk#1350&lt;/a&gt;, &lt;a href="https://github.com/langfuse/langfuse/issues/9429" rel="noopener noreferrer"&gt;langfuse#9429&lt;/a&gt;, &lt;a href="https://github.com/orgs/langfuse/discussions/7569" rel="noopener noreferrer"&gt;langfuse discussion#7569&lt;/a&gt;, &lt;a href="https://github.com/langfuse/langfuse/issues/11505" rel="noopener noreferrer"&gt;langfuse#11505&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Cost optimization data: &lt;a href="https://redis.io/blog/llm-token-optimization-speed-up-apps/" rel="noopener noreferrer"&gt;Redis LLM Token Optimization&lt;/a&gt;, &lt;a href="https://www.getmaxim.ai/articles/top-5-ai-gateways-to-reduce-llm-cost-in-2026/" rel="noopener noreferrer"&gt;Maxim AI: Top 5 AI Gateways&lt;/a&gt;, &lt;a href="https://www.catchpoint.com/blog/semantic-caching-what-we-measured-why-it-matters" rel="noopener noreferrer"&gt;Catchpoint: Semantic Caching&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Pricing: &lt;a href="https://www.langchain.com/pricing" rel="noopener noreferrer"&gt;LangSmith&lt;/a&gt;, &lt;a href="https://langfuse.com/pricing" rel="noopener noreferrer"&gt;Langfuse&lt;/a&gt;, &lt;a href="https://www.braintrust.dev/pricing" rel="noopener noreferrer"&gt;Braintrust&lt;/a&gt;, &lt;a href="https://phoenix.arize.com/pricing/" rel="noopener noreferrer"&gt;Arize Phoenix&lt;/a&gt;, &lt;a href="https://www.datadoghq.com/pricing/" rel="noopener noreferrer"&gt;Datadog&lt;/a&gt;, &lt;a href="https://www.helicone.ai/pricing" rel="noopener noreferrer"&gt;Helicone&lt;/a&gt;, &lt;a href="https://www.getmaxim.ai/pricing" rel="noopener noreferrer"&gt;Maxim AI&lt;/a&gt;, &lt;a href="https://www.honeyhive.ai/pricing" rel="noopener noreferrer"&gt;HoneyHive&lt;/a&gt;, &lt;a href="https://docs.agentops.ai/v2/self-hosting/overview" rel="noopener noreferrer"&gt;AgentOps&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>aiops</category>
      <category>agents</category>
      <category>genai</category>
    </item>
    <item>
      <title>Your AI Agent Just Failed in Production. Where Do You Even Start Debugging?</title>
      <dc:creator>utibe okodi</dc:creator>
      <pubDate>Sun, 15 Mar 2026 22:34:57 +0000</pubDate>
      <link>https://dev.to/utibe_okodi_339fb47a13ef5/your-ai-agent-just-failed-in-production-where-do-you-even-start-debugging-268</link>
      <guid>https://dev.to/utibe_okodi_339fb47a13ef5/your-ai-agent-just-failed-in-production-where-do-you-even-start-debugging-268</guid>
      <description>&lt;p&gt;You shipped an AI agent to production. A user reports a wrong answer. Or worse, a user doesn't report anything, and you discover the problem later, after it has already spread.&lt;/p&gt;

&lt;p&gt;You open your monitoring dashboard. You see: an input, an output, and a timestamp. That's it.&lt;/p&gt;

&lt;p&gt;This is the debugging reality for most teams shipping AI agents in 2026. &lt;a href="https://fortune.com/2025/08/18/mit-report-95-percent-generative-ai-pilots-at-companies-failing-cfo/" rel="noopener noreferrer"&gt;MIT's NANDA initiative found&lt;/a&gt; that only 5% of AI pilot programs achieve rapid revenue acceleration, with the rest stalling due to integration gaps, organizational misalignment, and tools that don't adapt to enterprise workflows. Compounding these problems: when agents do fail, most teams have no way to diagnose what went wrong fast enough to sustain momentum.&lt;/p&gt;

&lt;p&gt;Here's a practical debugging framework for AI agents in production, along with an honest assessment of where current tooling leaves you on your own.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why AI Agent Debugging Is Different
&lt;/h2&gt;

&lt;p&gt;Traditional software fails in deterministic ways. If your API returns a 500, you find the stack trace. If your query is slow, you find the query plan. The failure is reproducible and the cause is traceable.&lt;/p&gt;

&lt;p&gt;AI agents fail in ways that are probabilistic, context-dependent, and often invisible:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The model hallucinated despite correct context&lt;/li&gt;
&lt;li&gt;The retrieved documents were relevant but the wrong paragraph was weighted&lt;/li&gt;
&lt;li&gt;The agent decided to skip a tool call and fabricate the result instead&lt;/li&gt;
&lt;li&gt;The multi-step chain worked correctly on 1,000 inputs but fails on input 1,001 due to a subtle edge case in your prompt template&lt;/li&gt;
&lt;li&gt;The agent called three tools successfully but combined their outputs incorrectly&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Standard APM tools (Datadog, New Relic, Grafana) show you latency, error rates, and throughput. They tell you &lt;em&gt;that&lt;/em&gt; the agent is failing, not &lt;em&gt;why&lt;/em&gt;, because they have no visibility into the reasoning steps between input and output.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Establish a Full Execution Trace
&lt;/h2&gt;

&lt;p&gt;The first requirement for debugging an AI agent is a trace of every step in the chain, not just the LLM call.&lt;/p&gt;

&lt;p&gt;A typical multi-step agent does something like:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Receive a user query&lt;/li&gt;
&lt;li&gt;Make a planning decision about which tools to invoke&lt;/li&gt;
&lt;li&gt;Call an LLM to generate a search query&lt;/li&gt;
&lt;li&gt;Retrieve documents from a vector database&lt;/li&gt;
&lt;li&gt;Call the LLM again to synthesize an answer&lt;/li&gt;
&lt;li&gt;Decide whether to use another tool or respond&lt;/li&gt;
&lt;li&gt;Generate a final response&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;When this fails, you need to know &lt;em&gt;which step&lt;/em&gt; produced the wrong output, and that requires a trace that captures the input and output at each node, not just the final result.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.langchain.com/stateofaiagents" rel="noopener noreferrer"&gt;LangChain's State of AI Agents report&lt;/a&gt; found that 51% of 1,300+ professionals surveyed already have AI agents running in production. The vast majority of them are debugging blind because they lack this baseline trace coverage.&lt;/p&gt;

&lt;p&gt;If you're instrumenting from scratch, use an SDK that captures tool invocations, retrieval operations, LLM calls, and planning steps as discrete spans, not just as text in a log file.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Isolate the Failure Layer
&lt;/h2&gt;

&lt;p&gt;Once you have a trace, you can diagnose which layer broke. There are four common failure layers:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Retrieval failure:&lt;/strong&gt; The agent retrieved documents, but the wrong ones. The LLM received irrelevant context and did its best with bad input. Inspect the retrieved chunks against the query. Is the embedding model capturing the right semantic content? Are your document chunks too large or too small?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reasoning failure:&lt;/strong&gt; Retrieval returned correct context, but the LLM ignored the most relevant section. This often happens when the context window is filled with tool call outputs from earlier steps, pushing key content toward the end where attention scores drop. Inspect the full context window at the synthesis step, not just the query.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Planning failure:&lt;/strong&gt; The agent made a wrong tool selection. It chose a web search when it should have queried the internal database, or it chose to respond directly when it should have called a calculator. Trace the decision point: what prompt template was the agent using for tool selection, and what was the exact LLM output at that step?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tool execution failure:&lt;/strong&gt; The agent attempted a tool call, but the tool returned an error, a timeout, or an empty result, and the agent continued anyway without surfacing the failure. Trace each tool call's input, output, latency, and error status separately.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Check for Silent Failures
&lt;/h2&gt;

&lt;p&gt;Here's the debugging step most teams skip: checking whether the tool was actually executed at all.&lt;/p&gt;

&lt;p&gt;A documented failure mode across every major agentic framework is agents that skip tool execution entirely and fabricate plausible-looking results. Instead of calling your database, the agent generates a response &lt;em&gt;as if&lt;/em&gt; it had queried it, with no error thrown and no indication that the data is made up.&lt;/p&gt;

&lt;p&gt;This is documented as bug reports in &lt;a href="https://github.com/crewAIInc/crewAI/issues/3154" rel="noopener noreferrer"&gt;crewAI&lt;/a&gt; and &lt;a href="https://github.com/microsoft/autogen/issues/3354" rel="noopener noreferrer"&gt;AutoGen&lt;/a&gt;, acknowledged as a production reliability gap in &lt;a href="https://github.com/langchain-ai/langgraph/issues/6617" rel="noopener noreferrer"&gt;LangGraph's RFC#6617&lt;/a&gt;, and reported at the &lt;a href="https://community.openai.com/t/gpt-4-0125-preview-hallucinating-tool-calls/609610" rel="noopener noreferrer"&gt;model level with OpenAI&lt;/a&gt;. Academic research has measured tool hallucination rates as high as &lt;a href="https://arxiv.org/html/2412.04141v1" rel="noopener noreferrer"&gt;91.1% on challenging subsets&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;When debugging a wrong answer, always verify: does the trace show the tool was called, and does the tool call's recorded response match what the agent reported in its synthesis? If the trace shows no tool invocation for a step that should have involved one, or if the tool response and the agent's output don't align, you've found the failure.&lt;/p&gt;

&lt;p&gt;No existing observability tool automatically detects this mismatch. It's a manual check today.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Examine Multi-Agent Handoffs
&lt;/h2&gt;

&lt;p&gt;For multi-agent systems, the hardest failures to diagnose happen at handoff boundaries. When Agent A delegates to Agent B:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What context did Agent A send to Agent B?&lt;/li&gt;
&lt;li&gt;Was anything lost or truncated in the handoff?&lt;/li&gt;
&lt;li&gt;Did Agent B receive the full conversation history, or just a summary?&lt;/li&gt;
&lt;li&gt;If the overall result was wrong, which agent's decision caused it?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Current tooling handles this poorly. &lt;a href="https://github.com/langchain-ai/langsmith-sdk/issues/1350" rel="noopener noreferrer"&gt;LangSmith&lt;/a&gt; loses visibility when agents cross framework boundaries: CrewAI agent traces fail to appear in LangSmith entirely, even with tracing enabled. &lt;a href="https://github.com/langfuse/langfuse/issues/9429" rel="noopener noreferrer"&gt;Langfuse&lt;/a&gt; shows wrong inputs per agent in supervisor orchestration, and users report identical generation names make it &lt;a href="https://github.com/orgs/langfuse/discussions/7569" rel="noopener noreferrer"&gt;"impossible to target accurately a specific agent"&lt;/a&gt; when configuring per-agent evaluations. &lt;a href="https://arize.com/docs/phoenix/learn/evaluating-multi-agent-systems" rel="noopener noreferrer"&gt;Arize Phoenix&lt;/a&gt; requires manual context propagation for multi-agent trace consolidation.&lt;/p&gt;

&lt;p&gt;The practical workaround today: log handoff context explicitly at agent boundaries (what was sent, what was received), and instrument each agent as a separate root span that you correlate manually.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 5: Don't Debug One Failure. Evaluate at Scale.
&lt;/h2&gt;

&lt;p&gt;Single-case debugging tells you what broke. Evaluation at scale tells you how often things break, and whether your fix actually worked.&lt;/p&gt;

&lt;p&gt;The difference between a demo and production isn't that demo prompts are better. It's that demo inputs are cherry-picked. A prompt that handles 10 hand-tested inputs perfectly may fail on 8% of real user inputs in ways you've never seen before.&lt;/p&gt;

&lt;p&gt;Automated evaluation (using LLM-as-judge scoring for relevance, coherence, and hallucination detection across every trace) turns debugging from reactive fire-fighting into a proactive quality system. When you fix a failure, you should be able to run the fix against your full historical trace dataset and verify the improvement, not just against the one case that surfaced the bug.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Good Tooling Would Give You
&lt;/h2&gt;

&lt;p&gt;None of the current generation of observability tools solves the full debugging workflow above. Here's what the ideal tooling would provide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Full execution graph visualization:&lt;/strong&gt; not a flat span list, but an interactive decision tree showing exactly which path the agent took and why, with each branch labeled by the deciding LLM output&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Silent failure detection:&lt;/strong&gt; automatic verification that tool invocations in the trace match actual tool execution records, with alerts when they diverge&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cross-framework multi-agent correlation:&lt;/strong&gt; unified traces across LangChain, CrewAI, AutoGen, and custom agents, with handoff context preserved at every boundary&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Regression testing from traces:&lt;/strong&gt; the ability to take any historical trace, modify the prompt or configuration, and re-run the agent against the same input to verify a fix&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Automated root cause analysis:&lt;/strong&gt; when a failure is detected, the tooling should automatically classify which layer broke (retrieval, reasoning, planning, or tool execution), surface the specific span where the failure originated, and summarize the likely cause, so the first thing you see is a diagnosis, not a log to excavate&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The market is moving toward these capabilities, but none of the current tools deliver them reliably. Which means most teams are still debugging AI agents the hard way: manually reading logs, adding print statements, and hoping the issue reproduces.&lt;/p&gt;




&lt;p&gt;I'm researching how engineering teams debug AI agents in production, and building tooling to close these gaps. If you're actively shipping agents and have 15 minutes to share what your debugging workflow looks like today, I'd like to hear it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://calendly.com/utibeokodi/15-mins-conversation" rel="noopener noreferrer"&gt;Book a 15-min conversation →&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No pitch. Real conversations about real debugging problems.&lt;/p&gt;




&lt;h3&gt;
  
  
  Sources
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;MIT NANDA, &lt;a href="https://fortune.com/2025/08/18/mit-report-95-percent-generative-ai-pilots-at-companies-failing-cfo/" rel="noopener noreferrer"&gt;"The GenAI Divide: State of AI in Business 2025"&lt;/a&gt; (150 interviews, 350 surveys, 300 deployment analyses). Finding: ~5% of AI pilots achieve rapid revenue acceleration.&lt;/li&gt;
&lt;li&gt;LangChain, &lt;a href="https://www.langchain.com/stateofaiagents" rel="noopener noreferrer"&gt;State of AI Agents Report&lt;/a&gt; (1,300+ professionals surveyed). Finding: 51% have agents in production.&lt;/li&gt;
&lt;li&gt;Silent failure detection: &lt;a href="https://github.com/crewAIInc/crewAI/issues/3154" rel="noopener noreferrer"&gt;crewAI#3154&lt;/a&gt;, &lt;a href="https://github.com/langchain-ai/langgraph/issues/6617" rel="noopener noreferrer"&gt;LangGraph RFC#6617&lt;/a&gt;, &lt;a href="https://github.com/microsoft/autogen/issues/3354" rel="noopener noreferrer"&gt;AutoGen#3354&lt;/a&gt;, &lt;a href="https://community.openai.com/t/gpt-4-0125-preview-hallucinating-tool-calls/609610" rel="noopener noreferrer"&gt;OpenAI Community&lt;/a&gt;, &lt;a href="https://arxiv.org/html/2412.04141v1" rel="noopener noreferrer"&gt;arXiv 2412.04141&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Multi-agent tracing issues: &lt;a href="https://github.com/langchain-ai/langsmith-sdk/issues/1350" rel="noopener noreferrer"&gt;langsmith-sdk#1350&lt;/a&gt;, &lt;a href="https://github.com/langfuse/langfuse/issues/9429" rel="noopener noreferrer"&gt;langfuse#9429&lt;/a&gt;, &lt;a href="https://github.com/orgs/langfuse/discussions/7569" rel="noopener noreferrer"&gt;langfuse discussion#7569&lt;/a&gt;, &lt;a href="https://arize.com/docs/phoenix/learn/evaluating-multi-agent-systems" rel="noopener noreferrer"&gt;Arize Phoenix multi-agent docs&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>genai</category>
    </item>
    <item>
      <title>95% of AI Pilots Fail. The Ones That Succeed All Do This One Thing.</title>
      <dc:creator>utibe okodi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 21:17:10 +0000</pubDate>
      <link>https://dev.to/utibe_okodi_339fb47a13ef5/95-of-ai-pilots-fail-the-ones-that-succeed-all-do-this-one-thing-37if</link>
      <guid>https://dev.to/utibe_okodi_339fb47a13ef5/95-of-ai-pilots-fail-the-ones-that-succeed-all-do-this-one-thing-37if</guid>
      <description>&lt;p&gt;Enterprises are pouring money into AI agents. The results are brutal.&lt;/p&gt;

&lt;p&gt;MIT's NANDA initiative just published &lt;a href="https://fortune.com/2025/08/18/mit-report-95-percent-generative-ai-pilots-at-companies-failing-cfo/" rel="noopener noreferrer"&gt;"The GenAI Divide: State of AI in Business 2025"&lt;/a&gt; — a study based on 150 leader interviews, 350 employee surveys, and analysis of 300 public AI deployments. The headline finding: &lt;strong&gt;about 5% of AI pilot programs achieve rapid revenue acceleration. The vast majority stall, delivering little to no measurable impact on P&amp;amp;L.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That's despite $30–40 billion in enterprise spending on generative AI.&lt;/p&gt;

&lt;p&gt;Meanwhile, IBM's &lt;a href="https://newsroom.ibm.com/2025-05-06-ibm-study-ceos-double-down-on-ai-while-navigating-enterprise-hurdles" rel="noopener noreferrer"&gt;2025 CEO Study&lt;/a&gt; — surveying 2,000 CEOs — found that &lt;strong&gt;only 25% of AI initiatives have delivered expected ROI&lt;/strong&gt;, and just 16% have been scaled across the enterprise.&lt;/p&gt;

&lt;p&gt;So what separates the 5% from the 95%?&lt;/p&gt;

&lt;h2&gt;
  
  
  The Debugging Black Box Problem
&lt;/h2&gt;

&lt;p&gt;According to &lt;a href="https://www.langchain.com/stateofaiagents" rel="noopener noreferrer"&gt;LangChain's State of AI Agents report&lt;/a&gt;, 51% of the 1,300+ professionals surveyed already have AI agents running in production. Another 78% have active plans to deploy soon. Mid-sized companies (100–2,000 employees) are the most aggressive — 63% already have agents live.&lt;/p&gt;

&lt;p&gt;But here's the gap: most teams shipping agents to production &lt;strong&gt;cannot see what those agents are actually doing&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A typical multi-step AI agent might:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Receive a user query&lt;/li&gt;
&lt;li&gt;Make a planning decision about which tools to invoke&lt;/li&gt;
&lt;li&gt;Call an LLM to generate a search query&lt;/li&gt;
&lt;li&gt;Retrieve documents from a vector database&lt;/li&gt;
&lt;li&gt;Call the LLM again to synthesize an answer&lt;/li&gt;
&lt;li&gt;Decide whether to use another tool or respond&lt;/li&gt;
&lt;li&gt;Generate a final response&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;When this chain breaks — and it will — where did it go wrong? Was it the retrieval step returning irrelevant documents? The LLM hallucinating despite good context? A tool call timing out silently? A prompt template that worked in testing but fails on edge cases?&lt;/p&gt;

&lt;p&gt;Without distributed tracing, you're debugging blind. You get an input and an output, with no visibility into the six steps in between.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the 5% Do Differently
&lt;/h2&gt;

&lt;p&gt;The teams that extract real value from AI agents treat them like any other production system: &lt;strong&gt;they instrument them.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The MIT NANDA study found that the core differentiator wasn't talent, infrastructure, or regulation. It was &lt;strong&gt;learning, integration, and contextual adaptation&lt;/strong&gt; — which requires understanding how your agents behave in the real world, not just in a Jupyter notebook.&lt;/p&gt;

&lt;p&gt;Concretely, the teams that succeed do three things:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. They Trace Every Step
&lt;/h3&gt;

&lt;p&gt;Not just the LLM call — every tool invocation, every decision point, every data retrieval. A proper trace shows you the full execution graph: what the agent decided to do, what data it accessed, what the LLM returned at each step, and how long each operation took.&lt;/p&gt;

&lt;p&gt;This is the difference between "the agent gave a wrong answer" and "the agent retrieved the right documents but the LLM ignored the most relevant paragraph because the context window was filled with a previous tool call's output."&lt;/p&gt;

&lt;h3&gt;
  
  
  2. They Track Costs Across Providers
&lt;/h3&gt;

&lt;p&gt;A single agent workflow might hit OpenAI for reasoning, Anthropic for evaluation, and Google for embeddings. Most teams have no idea what a single agent run actually costs — let alone how that breaks down by user, feature, or team.&lt;/p&gt;

&lt;p&gt;When you're running 10,000 agent executions a day across three LLM providers, the bill is not theoretical. And without per-trace cost attribution, you can't optimize what you can't measure.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. They Evaluate Quality Continuously
&lt;/h3&gt;

&lt;p&gt;The difference between a demo and production isn't speed — it's quality at scale. A single hand-tested prompt doesn't tell you how the agent performs across 10,000 different user inputs.&lt;/p&gt;

&lt;p&gt;Automated evaluation — using LLM-as-judge scoring for relevance, coherence, and hallucination detection on every trace — turns observability from a debugging tool into a quality system.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Gaps Nobody Is Talking About
&lt;/h2&gt;

&lt;p&gt;Beyond basic tracing and cost tracking, there are deeper failure modes that existing tools don't address at all — and they're the ones causing the most expensive production incidents.&lt;/p&gt;

&lt;h3&gt;
  
  
  Silent Failure Detection: When Agents Lie About Working
&lt;/h3&gt;

&lt;p&gt;Here's a failure mode most teams don't even know to look for: &lt;strong&gt;agents that skip tool execution entirely and fabricate the results.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Instead of actually calling your database, search API, or calculation tool, the agent generates a plausible-looking response as if it had. The output looks normal. No error is thrown. But the data is completely made up.&lt;/p&gt;

&lt;p&gt;This isn't theoretical. It's documented across every major framework — &lt;a href="https://github.com/crewAIInc/crewAI/issues/3154" rel="noopener noreferrer"&gt;crewAI&lt;/a&gt;, &lt;a href="https://github.com/langchain-ai/langgraph/issues/6617" rel="noopener noreferrer"&gt;LangGraph&lt;/a&gt;, &lt;a href="https://github.com/microsoft/autogen/issues/3354" rel="noopener noreferrer"&gt;AutoGen&lt;/a&gt;, and even at the &lt;a href="https://community.openai.com/t/gpt-4-0125-preview-hallucinating-tool-calls/609610" rel="noopener noreferrer"&gt;model level with OpenAI&lt;/a&gt;. Academic research has found tool hallucination rates as high as &lt;a href="https://arxiv.org/html/2412.04141v1" rel="noopener noreferrer"&gt;91.1% on challenging subsets&lt;/a&gt;. LangGraph proposed a "grounding" parameter (&lt;a href="https://github.com/langchain-ai/langgraph/issues/6617" rel="noopener noreferrer"&gt;RFC #6617&lt;/a&gt;) to address this, but hasn't shipped it.&lt;/p&gt;

&lt;p&gt;No existing observability tool detects this. They trace the span, record the output, and move on — never verifying that the tool was actually executed and the result matches reality.&lt;/p&gt;

&lt;h3&gt;
  
  
  Visual Decision-Tree Debugging: Seeing What the Agent Actually Decided
&lt;/h3&gt;

&lt;p&gt;Every observability tool on the market shows you traces the same way: as a flat table of spans, or a sequential waterfall chart. This works for simple chain-of-thought workflows. It completely breaks down for multi-agent systems where agents make branching decisions.&lt;/p&gt;

&lt;p&gt;When Agent A decides to delegate to Agent B instead of Agent C, then Agent B decides to call two tools in parallel, and the combined results trigger a third agent — you need to see this as what it is: &lt;strong&gt;a decision tree, not a sequential log.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;While &lt;a href="https://docs.arize.com/phoenix" rel="noopener noreferrer"&gt;Arize Phoenix&lt;/a&gt; has introduced an &lt;a href="https://arize.com/blog/observe-2025-releases/" rel="noopener noreferrer"&gt;Agent Visibility tab&lt;/a&gt; with basic graph visualization, no tool offers a fully interactive decision-tree view of agent execution paths. &lt;a href="https://www.langchain.com/langsmith/observability" rel="noopener noreferrer"&gt;LangSmith&lt;/a&gt;, &lt;a href="https://langfuse.com/docs/tracing" rel="noopener noreferrer"&gt;Langfuse&lt;/a&gt;, &lt;a href="https://www.braintrust.dev" rel="noopener noreferrer"&gt;Braintrust&lt;/a&gt;, &lt;a href="https://www.helicone.ai/" rel="noopener noreferrer"&gt;Helicone&lt;/a&gt;, &lt;a href="https://www.comet.com/site/products/opik/" rel="noopener noreferrer"&gt;Opik&lt;/a&gt;, and &lt;a href="https://www.honeyhive.ai/" rel="noopener noreferrer"&gt;HoneyHive&lt;/a&gt; still rely on tabular or span-level views. The visual decision tree remains a largely unsolved UX problem in this market.&lt;/p&gt;

&lt;h3&gt;
  
  
  Multi-Agent Traces That Actually Work Across Frameworks
&lt;/h3&gt;

&lt;p&gt;Multi-agent architectures are the fastest-growing pattern in AI development. But multi-agent tracing is broken in every existing tool:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;LangSmith&lt;/strong&gt; can now trace individual CrewAI and AutoGen applications via OpenTelemetry, but it still cannot produce &lt;a href="https://github.com/langchain-ai/langsmith-sdk/issues/1350" rel="noopener noreferrer"&gt;unified cross-framework multi-agent traces&lt;/a&gt; — a pipeline where a LangChain agent hands off to a CrewAI agent in the same trace breaks due to context propagation gaps.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Langfuse&lt;/strong&gt; shows &lt;a href="https://github.com/langfuse/langfuse/issues/9429" rel="noopener noreferrer"&gt;wrong inputs per agent in supervisor orchestration&lt;/a&gt;, and users have reported that identical generation names make it &lt;a href="https://github.com/orgs/langfuse/discussions/7569" rel="noopener noreferrer"&gt;"impossible to target accurately a specific agent"&lt;/a&gt; when configuring per-agent evaluations. Langfuse has &lt;a href="https://langfuse.com/integrations/frameworks/google-adk" rel="noopener noreferrer"&gt;partially addressed this&lt;/a&gt; by switching to the OpenInference Instrumentation Library, though modifying LLM generation names remains difficult. Additionally, &lt;a href="https://github.com/langfuse/langfuse/issues/11505" rel="noopener noreferrer"&gt;LLM spans are dropped in AutoGen tool loops&lt;/a&gt; — though this stems from AutoGen's instrumentation rather than a Langfuse bug.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Arize Phoenix&lt;/strong&gt; has added an &lt;a href="https://arize.com/blog/observe-2025-releases/" rel="noopener noreferrer"&gt;Agent Visibility tab&lt;/a&gt; with graph visualization, but &lt;a href="https://arize.com/docs/phoenix/learn/evaluating-multi-agent-systems" rel="noopener noreferrer"&gt;multi-agent trace consolidation requires manual context propagation&lt;/a&gt; and it lacks built-in support for agent collaboration structures. &lt;strong&gt;Opik&lt;/strong&gt; offers &lt;a href="https://www.comet.com/docs/opik/tracing/log_agent_graphs" rel="noopener noreferrer"&gt;agent graph logging&lt;/a&gt;, but graph specification is manual for some frameworks. &lt;strong&gt;Braintrust&lt;/strong&gt;, &lt;strong&gt;Helicone&lt;/strong&gt;, and &lt;strong&gt;Maxim AI&lt;/strong&gt; offer basic session and span grouping (&lt;a href="https://www.braintrust.dev/docs/guides/traces" rel="noopener noreferrer"&gt;Braintrust traces&lt;/a&gt;, &lt;a href="https://docs.helicone.ai/features/sessions" rel="noopener noreferrer"&gt;Helicone sessions&lt;/a&gt;), but lack dedicated multi-agent orchestration tooling — they don't natively distinguish agent boundaries, handoff context, or inter-agent delegation logic.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can see that Agent A called Agent B. You cannot see &lt;em&gt;why&lt;/em&gt; Agent A chose Agent B over Agent C, what context was lost in the handoff, or why the negotiation between three agents converged on a suboptimal plan.&lt;/p&gt;

&lt;h3&gt;
  
  
  OTel-Native Tracing: Bridging AI Into Enterprise Infrastructure
&lt;/h3&gt;

&lt;p&gt;Enterprises already run OpenTelemetry for their backend services. Their AI agents should emit traces into the same system — not require a separate vendor with a separate SDK.&lt;/p&gt;

&lt;p&gt;But OTel's &lt;a href="https://opentelemetry.io/docs/specs/semconv/gen-ai/gen-ai-agent-spans/" rel="noopener noreferrer"&gt;semantic conventions for AI agents&lt;/a&gt; are still in "Development" status as of February 2026. The conventions cover individual LLM calls but lack standard attributes for agent orchestration (planning, tool selection, delegation), tool call semantics, multi-agent communication, memory operations, evaluation results, and cost attribution. Each vendor that claims "OTel support" extends the base conventions differently, creating fragmentation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://phoenix.arize.com/" rel="noopener noreferrer"&gt;Arize Phoenix&lt;/a&gt; is the closest to OTel-native, but it jumps from $50/month to &lt;a href="https://phoenix.arize.com/pricing/" rel="noopener noreferrer"&gt;$50K–$100K/year&lt;/a&gt; at the enterprise tier — a pricing cliff that locks out mid-market teams. &lt;a href="https://www.datadoghq.com/product/llm-observability/" rel="noopener noreferrer"&gt;Datadog&lt;/a&gt; now supports OTel-native ingestion for LLM observability, but its full feature set still relies on the &lt;code&gt;ddtrace&lt;/code&gt; SDK.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Current Tooling Landscape Falls Short
&lt;/h2&gt;

&lt;p&gt;The existing options each have trade-offs that leave mid-market teams underserved:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;LangSmith&lt;/strong&gt; charges &lt;a href="https://www.langchain.com/pricing" rel="noopener noreferrer"&gt;$39/seat/month&lt;/a&gt;. For a 25-person engineering team, that's $975/month — and it's designed LangChain-first. Cost tracking is also &lt;a href="https://forum.langchain.com/t/cost-estimates-for-traces/482" rel="noopener noreferrer"&gt;inaccurate&lt;/a&gt; — showing ~$0.30 for a $1.40 conversation. SSO/RBAC is locked behind the Enterprise tier.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Langfuse&lt;/strong&gt; offers a strong &lt;a href="https://langfuse.com/pricing" rel="noopener noreferrer"&gt;open-source option&lt;/a&gt;, but self-hosting means your team is maintaining infrastructure instead of building product. SSO/RBAC is a &lt;a href="https://langfuse.com/pricing" rel="noopener noreferrer"&gt;$300/month add-on&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Braintrust&lt;/strong&gt; has a &lt;a href="https://www.braintrust.dev/pricing" rel="noopener noreferrer"&gt;$249/month platform fee&lt;/a&gt; with nothing between free and that — a steep pricing cliff for small teams.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Datadog&lt;/strong&gt; charges &lt;a href="https://www.datadoghq.com/pricing/" rel="noopener noreferrer"&gt;$8 per 10K LLM requests&lt;/a&gt; plus an &lt;a href="https://openobserve.ai/blog/datadog-vs-openobserve-part-9-cost/" rel="noopener noreferrer"&gt;automatic ~$120/day premium&lt;/a&gt; when LLM spans are detected, putting moderate-scale teams at $5K+/month. &lt;strong&gt;Arize&lt;/strong&gt; enterprise pricing is &lt;a href="https://softcery.com/lab/top-8-observability-platforms-for-ai-agents-in-2025" rel="noopener noreferrer"&gt;estimated at $50K–$100K/year&lt;/a&gt; — a steep jump from their &lt;a href="https://arize.com/pricing/" rel="noopener noreferrer"&gt;$50/month Pro tier&lt;/a&gt;. Both involve enterprise sales cycles that can extend procurement timelines significantly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AgentOps&lt;/strong&gt; now offers a &lt;a href="https://github.com/AgentOps-AI/agentops-ts" rel="noopener noreferrer"&gt;TypeScript SDK&lt;/a&gt; (v0.1.0, June 2025) and &lt;a href="https://docs.agentops.ai/v2/self-hosting/overview" rel="noopener noreferrer"&gt;self-hosting&lt;/a&gt; under MIT license, but the TS SDK is early-stage with &lt;a href="https://docs.agentops.ai/v2/usage/typescript-sdk" rel="noopener noreferrer"&gt;limited functionality compared to the Python SDK&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Maxim AI&lt;/strong&gt; charges &lt;a href="https://www.getmaxim.ai/pricing" rel="noopener noreferrer"&gt;$29–$49/seat&lt;/a&gt; — per-seat pricing that punishes team growth.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HoneyHive&lt;/strong&gt; offers a &lt;a href="https://www.honeyhive.ai/pricing" rel="noopener noreferrer"&gt;free Developer tier&lt;/a&gt; (10K events/month, up to 5 users), but its paid Enterprise tier is &lt;a href="https://www.honeyhive.ai/pricing" rel="noopener noreferrer"&gt;contact sales only&lt;/a&gt; with no published pricing — despite being a seed-stage company.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What's missing is agent-native observability that gives you visual decision-tree debugging, multi-agent trace correlation, silent failure detection, and OTel-native instrumentation — without per-seat pricing that scales against you, or infrastructure you have to run yourself.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Would You Actually Need?
&lt;/h2&gt;

&lt;p&gt;If you could see every step your AI agent takes — as an interactive decision tree, not a flat table — understand exactly why it failed, catch silent fabrications before they reach users, and plug directly into your existing OTel infrastructure — what would that change for your team?&lt;/p&gt;

&lt;p&gt;I'm researching how engineering teams debug AI agents in production. If you're building with LangChain, CrewAI, AutoGen, or custom agents and have 15 minutes, I'd genuinely like to hear how you approach this today.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://calendly.com/utibeokodi/15-mins-conversation" rel="noopener noreferrer"&gt;Book a 15-min conversation →&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No pitch. I'm collecting real data on this problem and happy to share what I'm learning from other teams.&lt;/p&gt;




&lt;h3&gt;
  
  
  Sources
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;MIT NANDA, &lt;a href="https://fortune.com/2025/08/18/mit-report-95-percent-generative-ai-pilots-at-companies-failing-cfo/" rel="noopener noreferrer"&gt;"The GenAI Divide: State of AI in Business 2025"&lt;/a&gt; — 150 interviews, 350 surveys, 300 deployment analyses. Finding: ~5% of AI pilots achieve rapid revenue acceleration.&lt;/li&gt;
&lt;li&gt;IBM, &lt;a href="https://newsroom.ibm.com/2025-05-06-ibm-study-ceos-double-down-on-ai-while-navigating-enterprise-hurdles" rel="noopener noreferrer"&gt;2025 CEO Study&lt;/a&gt; — 2,000 CEOs surveyed. Finding: 25% of AI initiatives delivered expected ROI; 16% scaled enterprise-wide.&lt;/li&gt;
&lt;li&gt;LangChain, &lt;a href="https://www.langchain.com/stateofaiagents" rel="noopener noreferrer"&gt;State of AI Agents Report&lt;/a&gt; — 1,300+ professionals surveyed. Finding: 51% have agents in production; 63% of mid-sized companies (100–2,000 employees) have agents live.&lt;/li&gt;
&lt;li&gt;Silent failure detection: &lt;a href="https://github.com/crewAIInc/crewAI/issues/3154" rel="noopener noreferrer"&gt;crewAI#3154&lt;/a&gt;, &lt;a href="https://github.com/langchain-ai/langgraph/issues/6617" rel="noopener noreferrer"&gt;LangGraph RFC#6617&lt;/a&gt;, &lt;a href="https://github.com/microsoft/autogen/issues/3354" rel="noopener noreferrer"&gt;AutoGen#3354&lt;/a&gt;, &lt;a href="https://community.openai.com/t/gpt-4-0125-preview-hallucinating-tool-calls/609610" rel="noopener noreferrer"&gt;OpenAI Community&lt;/a&gt;, &lt;a href="https://arxiv.org/html/2412.04141v1" rel="noopener noreferrer"&gt;arXiv 2412.04141&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;OTel GenAI semantic conventions: &lt;a href="https://opentelemetry.io/docs/specs/semconv/gen-ai/gen-ai-agent-spans/" rel="noopener noreferrer"&gt;opentelemetry.io&lt;/a&gt; — Development status as of Feb 2026.&lt;/li&gt;
&lt;li&gt;Multi-agent tracing issues: &lt;a href="https://github.com/langchain-ai/langsmith-sdk/issues/1350" rel="noopener noreferrer"&gt;langsmith-sdk#1350&lt;/a&gt;, &lt;a href="https://github.com/langfuse/langfuse/issues/9429" rel="noopener noreferrer"&gt;langfuse#9429&lt;/a&gt;, &lt;a href="https://github.com/orgs/langfuse/discussions/7569" rel="noopener noreferrer"&gt;langfuse discussion#7569&lt;/a&gt;, &lt;a href="https://github.com/langfuse/langfuse/issues/11505" rel="noopener noreferrer"&gt;langfuse#11505&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Pricing: &lt;a href="https://www.langchain.com/pricing" rel="noopener noreferrer"&gt;LangSmith&lt;/a&gt;, &lt;a href="https://langfuse.com/pricing" rel="noopener noreferrer"&gt;Langfuse&lt;/a&gt;, &lt;a href="https://www.braintrust.dev/pricing" rel="noopener noreferrer"&gt;Braintrust&lt;/a&gt;, &lt;a href="https://phoenix.arize.com/pricing/" rel="noopener noreferrer"&gt;Arize Phoenix&lt;/a&gt;, &lt;a href="https://www.getmaxim.ai/pricing" rel="noopener noreferrer"&gt;Maxim AI&lt;/a&gt;, &lt;a href="https://www.helicone.ai/pricing" rel="noopener noreferrer"&gt;Helicone&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
  </channel>
</rss>
