<?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: milan</title>
    <description>The latest articles on DEV Community by milan (@milancharan).</description>
    <link>https://dev.to/milancharan</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3999056%2F9281888d-fa47-4c25-9d36-61a979d9be7b.png</url>
      <title>DEV Community: milan</title>
      <link>https://dev.to/milancharan</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/milancharan"/>
    <language>en</language>
    <item>
      <title>Creating a Production-Ready AI Agent Should Only Take Minutes, Not Days</title>
      <dc:creator>milan</dc:creator>
      <pubDate>Sun, 05 Jul 2026 14:12:16 +0000</pubDate>
      <link>https://dev.to/milancharan/creating-a-production-ready-ai-agent-should-only-take-minutes-not-days-57m</link>
      <guid>https://dev.to/milancharan/creating-a-production-ready-ai-agent-should-only-take-minutes-not-days-57m</guid>
      <description>&lt;p&gt;Building an AI-powered application has never been easier.&lt;/p&gt;

&lt;p&gt;Building a production-ready AI agent is a different story.&lt;/p&gt;

&lt;p&gt;After experimenting with different projects, I realized that creating an AI agent usually means stitching together multiple components before you can even start testing your idea.&lt;/p&gt;

&lt;p&gt;Most developers end up configuring:&lt;/p&gt;

&lt;p&gt;• An LLM provider&lt;br&gt;
• A knowledge base (RAG)&lt;br&gt;
• API integration&lt;br&gt;
• Agent configuration&lt;br&gt;
• Runtime monitoring&lt;br&gt;
• Production management&lt;/p&gt;

&lt;p&gt;Each part solves a specific problem, but putting everything together takes time.&lt;/p&gt;

&lt;p&gt;I wanted a simpler workflow.&lt;/p&gt;

&lt;p&gt;That's why I built AgentPulse.&lt;/p&gt;

&lt;h2&gt;
  
  
  The workflow I wanted
&lt;/h2&gt;

&lt;p&gt;Instead of spending hours connecting multiple services, I wanted creating an AI agent to look like this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create an AI agent.&lt;/li&gt;
&lt;li&gt;Configure it by uploading a Knowledge Base (RAG).&lt;/li&gt;
&lt;li&gt;Connect your preferred AI provider.&lt;/li&gt;
&lt;li&gt;Generate an Agent API Key.&lt;/li&gt;
&lt;li&gt;Integrate it into your application.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That's it.&lt;/p&gt;

&lt;p&gt;The entire setup takes only a few minutes.&lt;/p&gt;

&lt;p&gt;Each agent has its own isolated:&lt;/p&gt;

&lt;p&gt;• Knowledge Base&lt;br&gt;
• AI Provider&lt;br&gt;
• API Key&lt;br&gt;
• Configuration&lt;br&gt;
• Runtime Settings&lt;/p&gt;

&lt;p&gt;This allows different agents to be built for completely different use cases without sharing configuration.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;• Customer Support Assistants&lt;br&gt;
• Internal Company Copilots&lt;br&gt;
• Educational Assistants&lt;br&gt;
• Healthcare Information Assistants&lt;br&gt;
• AI NPCs for Games&lt;br&gt;
• Documentation Assistants&lt;/p&gt;

&lt;p&gt;The platform stays the same.&lt;/p&gt;

&lt;p&gt;Only the knowledge and configuration change.&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating an agent is only half the problem
&lt;/h2&gt;

&lt;p&gt;One thing I kept noticing was that most discussions stop once the AI starts responding.&lt;/p&gt;

&lt;p&gt;But production begins after deployment.&lt;/p&gt;

&lt;p&gt;Questions like these become much more important:&lt;/p&gt;

&lt;p&gt;• What happens if an agent gets stuck in a loop?&lt;br&gt;
• How do I control AI costs?&lt;br&gt;
• How do I inspect what the agent actually did?&lt;br&gt;
• How do I know why a response was generated?&lt;/p&gt;

&lt;p&gt;That's why AgentPulse also focuses on operating AI agents safely.&lt;/p&gt;

&lt;p&gt;Each running agent includes Runtime Guardrails such as:&lt;/p&gt;

&lt;p&gt;• Loop Detection&lt;br&gt;
• Budget Controls&lt;br&gt;
• Pause, Resume and Terminate Controls&lt;br&gt;
• Execution History&lt;br&gt;
• Token Usage Tracking&lt;br&gt;
• Latency Monitoring&lt;br&gt;
• Runtime Telemetry&lt;/p&gt;

&lt;p&gt;Instead of treating deployed agents as black boxes, the goal is to provide visibility and operational control throughout their lifecycle.&lt;/p&gt;

&lt;h2&gt;
  
  
  Dogfooding the platform
&lt;/h2&gt;

&lt;p&gt;One of the first things I built with AgentPulse was AgentPulse Copilot.&lt;/p&gt;

&lt;p&gt;Instead of manually wiring together another AI assistant, I created it using the same workflow available to every user:&lt;/p&gt;

&lt;p&gt;• Create an agent&lt;br&gt;
• Upload the documentation as its knowledge base&lt;br&gt;
• Connect an AI provider&lt;br&gt;
• Integrate it into the application&lt;/p&gt;

&lt;p&gt;The setup took only a few minutes.&lt;/p&gt;

&lt;p&gt;Now the Copilot answers questions directly from AgentPulse's documentation while running on the same infrastructure the platform provides to every other agent.&lt;/p&gt;

&lt;p&gt;Using AgentPulse to build AgentPulse has been one of the best ways to validate the platform and improve it continuously.&lt;/p&gt;

&lt;h2&gt;
  
  
  Looking ahead
&lt;/h2&gt;

&lt;p&gt;I'm currently working on connectors that will allow organizations to securely connect live business data, making AI agents useful beyond static documentation while still allowing companies to control exactly what information is exposed.&lt;/p&gt;

&lt;h2&gt;
  
  
  I'd love your feedback
&lt;/h2&gt;

&lt;p&gt;How are you currently building production AI agents?&lt;/p&gt;

&lt;p&gt;Are you assembling individual components yourself, or would you prefer an integrated platform that handles the complete workflow—from creation and configuration to runtime operations?&lt;/p&gt;

&lt;p&gt;I'd love to hear how others are approaching this problem.&lt;/p&gt;

&lt;h1&gt;
  
  
  ai #machinelearning #llm #rag #softwaredevelopment #devops #startup #webdev
&lt;/h1&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>productivity</category>
      <category>showdev</category>
    </item>
    <item>
      <title>What Happens When Your AI Agent Gets Stuck in Production?</title>
      <dc:creator>milan</dc:creator>
      <pubDate>Tue, 23 Jun 2026 16:16:47 +0000</pubDate>
      <link>https://dev.to/milancharan/what-happens-when-your-ai-agent-gets-stuck-in-production-3327</link>
      <guid>https://dev.to/milancharan/what-happens-when-your-ai-agent-gets-stuck-in-production-3327</guid>
      <description>&lt;p&gt;The most expensive AI agent failures I've seen weren't model failures.&lt;/p&gt;

&lt;p&gt;They were silent failures.&lt;/p&gt;

&lt;p&gt;The agent looked healthy. The workflow was still running. Tokens were still being consumed.&lt;/p&gt;

&lt;p&gt;But the agent had already stopped making meaningful progress.&lt;/p&gt;

&lt;p&gt;Over time I ran into the same production issues repeatedly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Infinite loops&lt;/li&gt;
&lt;li&gt;Retry storms&lt;/li&gt;
&lt;li&gt;Silent stalls&lt;/li&gt;
&lt;li&gt;Tool failures hidden behind successful responses&lt;/li&gt;
&lt;li&gt;Agents drifting away from the original goal&lt;/li&gt;
&lt;li&gt;No visibility into what the agent was actually doing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A better prompt never fixed these problems.&lt;/p&gt;

&lt;p&gt;The solution ended up being a runtime supervision layer around the agents rather than more workflow logic.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Most agent frameworks focus on getting agents to run.&lt;/p&gt;

&lt;p&gt;Production teams care about different questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Why is this execution stuck?&lt;/li&gt;
&lt;li&gt;Is it still making progress?&lt;/li&gt;
&lt;li&gt;Can I safely pause it?&lt;/li&gt;
&lt;li&gt;Can I resume it later?&lt;/li&gt;
&lt;li&gt;Should I terminate it entirely?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Those questions become difficult when the runtime only exposes logs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Runtime Supervision
&lt;/h2&gt;

&lt;p&gt;One design decision that worked well was separating supervision from agent logic.&lt;/p&gt;

&lt;p&gt;Instead of embedding every guardrail directly inside the workflow graph, a dedicated runtime layer observes execution and enforces operational rules.&lt;/p&gt;

&lt;p&gt;This keeps agent workflows simple while allowing supervision logic to evolve independently.&lt;/p&gt;

&lt;p&gt;The runtime is responsible for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Loop detection&lt;/li&gt;
&lt;li&gt;Retry management&lt;/li&gt;
&lt;li&gt;Budget enforcement&lt;/li&gt;
&lt;li&gt;Pause and resume operations&lt;/li&gt;
&lt;li&gt;Execution checkpoints&lt;/li&gt;
&lt;li&gt;Stop reason classification&lt;/li&gt;
&lt;li&gt;Live telemetry&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The result is a system where operational concerns can change without requiring modifications to agent behavior.&lt;/p&gt;

&lt;h2&gt;
  
  
  Explicit Stop Reasons
&lt;/h2&gt;

&lt;p&gt;One lesson I learned quickly:&lt;/p&gt;

&lt;p&gt;"Failed" is not a useful status.&lt;/p&gt;

&lt;p&gt;Execution stops should explain themselves.&lt;/p&gt;

&lt;p&gt;Examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;LOOP_DETECTED&lt;/li&gt;
&lt;li&gt;BUDGET_EXCEEDED&lt;/li&gt;
&lt;li&gt;RETRY_LIMIT_REACHED&lt;/li&gt;
&lt;li&gt;TOOL_FAILURE&lt;/li&gt;
&lt;li&gt;TIMEOUT&lt;/li&gt;
&lt;li&gt;USER_PAUSED&lt;/li&gt;
&lt;li&gt;USER_KILLED&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The recovery path depends on why the execution stopped.&lt;/p&gt;

&lt;p&gt;Without that information operators are forced to guess.&lt;/p&gt;

&lt;h2&gt;
  
  
  Semantic Loop Detection
&lt;/h2&gt;

&lt;p&gt;Most loop detection implementations use step counts.&lt;/p&gt;

&lt;p&gt;The problem is that agents can make progress on the wrong objective without technically looping.&lt;/p&gt;

&lt;p&gt;An execution might spend twenty steps confidently pursuing a plan that diverged from the original goal.&lt;/p&gt;

&lt;p&gt;What worked better was periodically asking:&lt;/p&gt;

&lt;p&gt;"Are we meaningfully closer to the goal than we were several steps ago?"&lt;/p&gt;

&lt;p&gt;This catches drift before it becomes expensive.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pause vs Kill
&lt;/h2&gt;

&lt;p&gt;These are not the same operation.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pause
&lt;/h3&gt;

&lt;p&gt;Pause preserves execution state.&lt;/p&gt;

&lt;p&gt;Execution stops, but the runtime keeps the latest checkpoint.&lt;/p&gt;

&lt;p&gt;Resume simply loads the last committed state and continues.&lt;/p&gt;

&lt;h3&gt;
  
  
  Kill
&lt;/h3&gt;

&lt;p&gt;Kill terminates execution completely.&lt;/p&gt;

&lt;p&gt;Active state is removed and the execution cannot continue.&lt;/p&gt;

&lt;p&gt;The distinction becomes important when debugging long-running workflows.&lt;/p&gt;

&lt;h2&gt;
  
  
  Checkpoint Before Action
&lt;/h2&gt;

&lt;p&gt;Before every external action:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;API calls&lt;/li&gt;
&lt;li&gt;Browser interactions&lt;/li&gt;
&lt;li&gt;Email delivery&lt;/li&gt;
&lt;li&gt;Database writes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;the runtime creates a checkpoint.&lt;/p&gt;

&lt;p&gt;Successful execution clears the checkpoint.&lt;/p&gt;

&lt;p&gt;If the process crashes, the next execution immediately knows what was in flight.&lt;/p&gt;

&lt;p&gt;This turned silent failures into recoverable failures.&lt;/p&gt;

&lt;h2&gt;
  
  
  Retry Storm Protection
&lt;/h2&gt;

&lt;p&gt;One failed dependency can create thousands of wasted requests.&lt;/p&gt;

&lt;p&gt;The pattern that worked best was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Exponential backoff&lt;/li&gt;
&lt;li&gt;Retry budgets&lt;/li&gt;
&lt;li&gt;Circuit breakers&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Without all three, agents tend to fail repeatedly and burn tokens while making no progress.&lt;/p&gt;

&lt;h2&gt;
  
  
  Live Telemetry
&lt;/h2&gt;

&lt;p&gt;Logs tell you what happened.&lt;/p&gt;

&lt;p&gt;Operators usually need to know what is happening right now.&lt;/p&gt;

&lt;p&gt;The runtime continuously tracks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Current task&lt;/li&gt;
&lt;li&gt;Current step&lt;/li&gt;
&lt;li&gt;Active tool&lt;/li&gt;
&lt;li&gt;Execution status&lt;/li&gt;
&lt;li&gt;Recent transitions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal is to make agent execution observable while it is running, not after the incident has already happened.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Building AI agents is becoming easier every month.&lt;/p&gt;

&lt;p&gt;Building agents that can survive production failures is still difficult.&lt;/p&gt;

&lt;p&gt;The most important lesson I learned is that reliability problems usually appear outside the model.&lt;/p&gt;

&lt;p&gt;They appear in retries, checkpoints, tool failures, execution control, and supervision.&lt;/p&gt;

&lt;p&gt;What has been the hardest production failure you've encountered while running AI agents?&lt;/p&gt;

</description>
      <category>ai</category>
      <category>devops</category>
      <category>opensource</category>
      <category>machinelearning</category>
    </item>
  </channel>
</rss>
