Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

bug: agent stops responding after multiple concurrent tabs

Open
#63 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Quiet
Tech stack
python, typescript
Domain
api, backend, frontend

Research direction

Start with the deployed reproduction using three browser tabs, then inspect main.py, especially BoundedMemorySaver(max_threads=200) and the streaming request path. Check whether concurrent sessions, connection limits, rate limits, or unsurfaced backend errors explain the hang; done means independent tabs receive responses, and resource failures show an error instead of waiting silently.

Written by the indexing model from the issue text.

Description

Bug

The agent stops responding when multiple browser tabs are open against the deployed app. On the third tab, the agent hangs after the user sends a message — no response, no streaming indicator, no error.

Steps to reproduce

  1. Open the deployed app in tab 1, send a message (e.g. "visualize a musical chart") — works fine
  2. Open tab 2, send a message — works fine
  3. Open tab 3, send a message (e.g. "I want to understand the difference between BFS and DFS...") — agent never responds

The UI shows the user messages and suggestion chips ("Try these Prompts") but no assistant response arrives. No loading indicator, no error state.

Screenshot

![Production screenshot showing 3 messages sent with no agent response](screenshot attached in issue)

The chat shows:

  • "visualize a musical chart"
  • "Create a 3D animation of a sphere turning into an icosahedron..."
  • "I want to understand the difference between BFS and DFS. Create an interactive comparison on a node graph."

None received a response. Suggestion chips are visible but the agent is unresponsive.

Possible causes

  1. Thread/session exhaustion — The agent uses BoundedMemorySaver(max_threads=200) in main.py. Multiple tabs may be creating separate threads that exhaust the pool or hit a concurrency limit.
  2. WebSocket/SSE connection limit — The browser or server may be hitting a connection limit for streaming responses.
  3. LangGraph checkpoint contention — Multiple concurrent sessions writing to the in-memory checkpointer could cause deadlocks.
  4. OpenAI API rate limiting — Multiple concurrent requests to GPT-5.4 could hit rate limits with no visible error surfaced to the user.
  5. Missing error handling — The frontend may not surface backend errors, making it look like the agent is "thinking" forever.

Expected behavior

Each tab should operate as an independent session. If a resource limit is reached, the user should see an error message rather than silent failure.

Environment

  • Deployed on Render
  • Agent: LangGraph + CopilotKit middleware
  • Model: GPT-5.4 via langchain_openai
  • Checkpointer: BoundedMemorySaver(max_threads=200)
Dominant language
TypeScript
Stars
1.6k
Forks
202
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from CopilotKit/OpenGenerativeUI

All issues in CopilotKit/OpenGenerativeUI

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.