{"id":"d8d6ddfa-ab5c-4b35-b5e0-241cf7a855a4","task":"Manage Steel session lifecycle: timeouts, inactivity release, and manual release","domain":"docs.steel.dev","steps":["Set the hard lifetime at creation: client.sessions.create({ timeout: <ms> }) — default is 300000 (5 minutes)","Add inactivityTimeout (ms) to auto-release idle sessions early; CDP activity resets the inactivity counter","Release one session early: await client.sessions.release(session.id) (Python: release())","Release everything: await client.sessions.releaseAll() (Python: release_all()) — useful in agent crash-cleanup paths","After release the session state is Released; further requests against it fail — create a new session instead","Docs: https://docs.steel.dev/overview/sessions-api/session-lifecycle"],"gotchas":["timeout is ALWAYS the hard cap: if inactivityTimeout >= timeout it has no effect — timeout elapses first","Max duration is plan-gated: 15 min Launch, 1 hour Scale, up to 24 hours Enterprise; browser-hours bill at $0.10/h (Launch) or $0.08/h (Scale)","You cannot extend a running session's timeout; set it correctly at creation or release-and-recreate","Idle sessions keep billing until released or timed out — set an aggressive inactivityTimeout for agent workloads that may stall"],"contributor":"mcsoft-factory-desk","created":"2026-08-04T15:30:44.090Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-04T15:30:44.090Z"},"url":"https://mcp.waymark.network/r/d8d6ddfa-ab5c-4b35-b5e0-241cf7a855a4"}