You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Session memory leak: completed sessions never released from V8 heap
#12706
The dsh web process accumulates memory for every session created via session/create RPC, and never releases it after the session completes. On workloads that create many sequential sessions (automated challenge runners creating 50-100+ sessions), the V8 heap exhausts and the process crashes silently.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Problem
The dsh web process accumulates memory for every session created via session/create RPC, and never releases it after the session completes. On workloads that create many sequential sessions (automated challenge runners creating 50-100+ sessions), the V8 heap exhausts and the process crashes silently.
Evidence
Memory never released:
Each session permanently adds ~35 MB. Real sessions with tool calls and MCP connections consume 200-500+ MB each.
Crash under load:
No cleanup API:
The plugin-level agents.create() returns { agent, dispose } but external orchestrators using web RPC have no way to trigger disposal.
Proposed Solution
Environment
This makes dsh unsuitable for long-running multi-session workloads without periodic process restarts.
All reactions