🧭 Claude Code v2.1.229: SSE Keepalives, Runner Hooks, and Four Bug Fixes
Claude Code v2.1.229 shipped today with two additions and four bug fixes. The standout change is SSE keepalive pings sent to gateway streaming responses during extended thinking pauses — a targeted fix for the idle-timeout disconnects that were silently killing long agentic sessions partway through deep tasks.
What's new
- SSE keepalive pings on gateway streams — Claude Code now sends periodic pings to the SSE connection during long thinking pauses, preventing load balancers and reverse proxies from treating the silent stream as a stale connection and dropping it. This matters most for
xhigh reasoning tasks and multi-step agentic runs that can sit quiet for 30–90 seconds mid-think.
- Server-supplied hook support for self-hosted runner sessions — Hook configurations can now be provided server-side when starting a self-hosted runner session, closing a gap where teams running Claude Code on their own compute had to bake hooks into local
.claude/settings.json rather than managing them centrally through the org.
Bug fixes
- Remote Control resume —
claude remote-control --continue now correctly resumes the most recent Remote Control session instead of erroring out.
- IDE diagnostics stall — Multi-second UI freezes that occurred after editing files with thousands of IDE diagnostics while the extension was connected are resolved.
- Code Review PR posting — The
/code-review workflow now reliably posts its review as a pull request comment; the previous release occasionally produced a review locally but failed to push the comment to the PR.
- Subagent context leak — Fixed a rare case where a terminated subagent's context could bleed into the parent session's next turn, producing unexpected continuations.
Why keepalives matter for production agentic pipelines
Without keepalives, a reverse proxy (Nginx, AWS ALB, Cloudflare) with a 60-second idle timeout would silently sever a streaming connection mid-task. Claude Code would either hang waiting for the response or surface a generic network error — with no clear indication that the task had been abandoned, not completed. The v2.1.229 keepalives resolve this at the transport layer, so long multi-step tasks running through self-hosted runners or standard gateway endpoints no longer require a custom proxy idle-timeout workaround.
Claude Code
v2.1.229
SSE
keepalive
self-hosted runner
bug fixes
streaming
🧭 Auto Mode Default Switches On Tomorrow: Five Things to Check Today
As covered on August 10, Claude Code's Auto Mode becomes the default for all new sessions starting August 14. That's tomorrow. Teams who have not yet evaluated how Auto Mode will affect their workflows have one day to do so. Here is a concise pre-flight checklist.
What changes at midnight
Before August 14, Claude Code sessions start in confirm mode — Claude asks for approval before each tool call. From August 14 onward, new sessions start in Auto Mode — Claude executes tool calls autonomously within configured permission boundaries, only pausing when it hits an operation outside its allowed scope. Existing sessions and projects with an explicit autoMode: false in their settings are unaffected.
Pre-flight checklist
- 1. Audit your tool permissions. Open
.claude/settings.json and review permissions.allow and permissions.deny. Auto Mode will execute anything in the allow list without pausing. Tighten the deny list before tomorrow if any listed tools are too broad for unsupervised use.
- 2. Check for hardcoded confirm-mode assumptions in your hooks. If you have
PreToolUse or PostToolUse hooks that rely on a human being present to respond to a pause prompt, they will behave differently in Auto Mode — Claude will not pause between hooks unless the hook explicitly exits non-zero to block the action.
- 3. Opt out at the project level if needed. Add
"autoMode": false to .claude/settings.json to keep confirm-mode behaviour for a specific project. You can also set CLAUDE_AUTO_MODE=false as an environment variable to opt out globally on a given machine.
- 4. Review max-turns and cost limits. Auto Mode sessions can run significantly more turns before reaching a natural pause point. If you have budget controls configured, verify that your per-session token limit and spend cap are set appropriately for longer autonomous runs.
- 5. Test one non-critical project today. Start a session with
claude --auto on a low-stakes repo and observe how Auto Mode handles a typical task. Pay attention to which tool calls it executes without pausing — these are the ones your deny list needs to cover if they're unexpected.
CI/CD pipelines: Auto Mode is likely already what you want
If you're running Claude Code in a non-interactive CI pipeline (via claude --print or as a GitHub Actions step), the Auto Mode default has no practical effect — non-interactive invocations have always executed tool calls autonomously. The change only affects interactive sessions where confirm mode was previously the starting point.
Auto Mode
Claude Code
permissions
agentic
configuration
hooks