Every LangGraph user I know is making the same mistake! They all use the popular supervisor pattern to build conversational agents. The pattern defines a supervisor agent that analyzes incoming queries and routes them to specialized sub-agents. Each sub-agent handles a specific domain (returns, billing, technical support) with its own system prompt. This works beautifully when there's a clear separation of concerns. The problem is that it always selects just one route. For instance, if a customer asks: "I need to return this laptop. Also, what's your warranty on replacements?" The supervisor routes this to the Returns Agent, which knows returns perfectly but has no idea about warranties. So it either ignores the warranty question, admits it can't help, or even worse, hallucinates an answer. None of these options are desired. This gets worse as conversations progress because real users don't think categorically. They mix topics, jump between contexts, and still expect the agent to keep up. This isn't a bug you can fix since this is fundamentally how router patterns work. Now, let's see how we can solve this problem. Instead of routing between Agents, first, define some Guidelines. Think of Guidelines as modular pieces of instructions like this: ``` agent.create_guideline( condition="Customer asks about refunds", action="Check order status first to see if eligible", tools=[check_order_status], ) ``` Each guideline has two parts: - Condition: When it gets activated? - Action: What should the agent do? Based on the user's query, relevant guidelines are dynamically loaded into the Agent's context. For instance, when a customer asks about returns AND warranties, both guidelines get loaded into context simultaneously, enabling coherent responses across multiple topics without artificial separation. This approach is actually implemented in Parlant - a recently trending open-source framework (15k+ stars). Instead of routing between specialized agents, Parlant uses dynamic guideline matching. At each turn, it evaluates ALL your guidelines and loads only the relevant ones, maintaining coherent flow across different topics. You can see the full implementation and try it yourself. That said, LangGraph and Parlant are not competitors. LangGraph is excellent for workflow automation where you need precise control over execution flow. Parlant is designed for free-form conversation where users don't follow scripts. The best part? They work together beautifully. LangGraph can handle complex retrieval workflows inside Parlant tools, giving you conversational coherence from Parlant and powerful orchestration from LangGraph. I have shared the repo in the replies!
Replying to @akshay_pachaar
This seems like another form of "skills" that claude just released. Where the different skills are used to solve the flows and problems independently. Its just making sure that all the parts are handled.

Oct 30, 2025 · 2:05 PM UTC

2
1