Back to Copilotkit

QA: Sub-Agents — LangGraph (FastAPI)

showcase/integrations/langgraph-fastapi/qa/subagents.md

1.57.02.7 KB
Original Source

QA: Sub-Agents — LangGraph (FastAPI)

Prerequisites

  • Demo is deployed and accessible
  • Agent backend is healthy (check /api/copilotkit GET — agent_status: "reachable")
  • OPENAI_API_KEY is set in the agent environment

What this demo proves

  • A supervisor LLM exposes three sub-agents (research_agent, writing_agent, critique_agent) as tools.
  • Each sub-agent is a real create_agent(...) with its own system prompt — the supervisor does NOT just template-fill responses.
  • Every delegation appends an entry to the delegations slot of agent state, which the UI renders live as a delegation log.

Test Steps

1. Page loads with delegation log + chat

  • Navigate to /demos/subagents
  • The delegation log (data-testid="delegation-log") is visible on the left
  • Header reads "Sub-agent delegations"
  • Counter (data-testid="delegation-count") reads "0 calls"
  • Empty state copy: "Ask the supervisor to complete a task..."
  • Chat is visible on the right with placeholder "Give the supervisor a task..."

2. Supervisor running indicator

  • Send the "Write a blog post" suggestion
  • Within ~2 seconds the supervisor-running badge appears on the log header
  • The badge has the pulsing dot and "Supervisor running" label

3. Delegations appear live

  • As the run progresses, delegation-entry rows appear one at a time
  • Counter increments accordingly (1 calls, 2 calls, 3 calls)
  • Typical sequence on the "Write a blog post" suggestion:
    • First entry shows the Research badge (🔎 Research)
    • Second entry shows the Writing badge (✍️ Writing)
    • Third entry shows the Critique badge (🧐 Critique)
  • Each entry shows the task on one line and the sub-agent's result below it in the result panel
  • Each entry status shows completed

4. Result quality (sanity check)

  • The research entry's result is a bulleted list of 3-5 facts
  • The writing entry's result is a single coherent paragraph
  • The critique entry's result is 2-3 bullet/critique items
  • When the supervisor finishes, the supervisor-running badge disappears

5. Multiple runs accumulate

  • Send the "Explain a topic" suggestion next
  • Counter continues from previous total (does not reset)
  • New delegation entries are appended at the bottom

6. Error handling

  • Sending an empty message is handled gracefully (no crash)
  • No console errors during a normal run

Expected Results

  • Chat loads within 3 seconds
  • First delegation appears within ~10 seconds of sending a task
  • A typical 3-step plan completes in under 60 seconds
  • No UI errors, broken layouts, or console warnings