diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3281a9a17..31df4f17d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
# Changelog
+## 2.1.204
+
+- Fixed hook events not streaming during SessionStart hooks in headless sessions, which could cause remote workers to be idle-reaped mid-hook
+
## 2.1.203
- Added a warning when your login is about to expire, so you can re-authenticate before background sessions are interrupted
diff --git a/feed.xml b/feed.xml
index 6f689953e..c536523c3 100644
--- a/feed.xml
+++ b/feed.xml
@@ -6,7 +6,14 @@
Anthropic
- 2026-07-07T21:06:03Z
+ 2026-07-08T00:27:43Z
+
+ https://github.com/anthropics/claude-code/releases/tag/v2.1.204
+ Claude Code v2.1.204
+
+ 2026-07-08T00:27:43Z
+ <p>• Fixed hook events not streaming during SessionStart hooks in headless sessions, which could cause remote workers to be idle-reaped mid-hook</p>
+ https://github.com/anthropics/claude-code/releases/tag/v2.1.203Claude Code v2.1.203
@@ -471,32 +478,4 @@
<p>• Fixed statusline links with custom URI schemes (e.g. vscode://) not opening when clicked in claude agents</p>
<p>• [VSCode] Fixed pressing Esc to dismiss a CJK IME candidate window canceling the running Claude task</p>
-
- https://github.com/anthropics/claude-code/releases/tag/v2.1.176
- Claude Code v2.1.176
-
- 2026-06-12T21:53:21Z
- <p>• Session titles are now generated in the language of your conversation (set the language setting to pin a specific language)</p>
-<p>• Added footerLinksRegexes setting for regex-matched link badges in the footer row, configurable via user or managed settings</p>
-<p>• Improved Bedrock credential caching: credentials from awsCredentialExport are now cached until their Expiration instead of a fixed 1 hour</p>
-<p>• Fixed availableModels enforcement: alias model picks can no longer be redirected to a blocked model via ANTHROPIC_DEFAULT_*_MODEL environment variables, and /fast now refuses to toggle when it would switch to a model outside the allowlist</p>
-<p>• Fixed auto mode failing on Fable 5 for organizations without Opus 4.8 enabled — the classifier now falls back to the best available Opus model</p>
-<p>• Fixed hook if conditions for Read/Edit/Write tool paths: documented patterns like Edit(src/), Read(~/.ssh/), and Read(.env) now match correctly</p>
-<p>• Fixed Linux sandbox failing to start when .claude/settings.json is a symlink with an absolute target</p>
-<p>• Fixed /copy and mouse-selection copy not reaching the system clipboard inside tmux over SSH, and tmux paste buffer not loading on versions older than 3.2</p>
-<p>• Fixed Remote Control connecting from web/mobile silently switching the session's model</p>
-<p>• Fixed Remote Control disconnect notifications showing a bare numeric code instead of a human-readable reason, and connection failures adding a duplicate line to the conversation transcript</p>
-<p>• Fixed Remote Control sessions not disconnecting when you sign in to a different account</p>
-<p>• Fixed /cd and worktree moves leaving the session reporting the previous directory's git branch</p>
-<p>• Fixed claude agents: pressing back in one window no longer detaches other windows attached to the same session</p>
-<p>• Fixed backgrounded sessions showing "Working" forever when /bg mid-turn had nothing left to continue</p>
-<p>• Fixed background agent search by PR URL: PRs opened during scheduled wakeups or while a job was blocked now appear in claude agents search</p>
-<p>• Fixed the agents view input showing no text cursor on Windows</p>
-<p>• Fixed claude --bg -cn <name> not seeding the session name</p>
-<p>• Fixed background sessions to neutralize Windows network paths in persisted state before respawn</p>
-<p>• Fixed background-session respawn rejecting malformed resume IDs from corrupted state files</p>
-<p>• Fixed the Windows background-service daemon not starting when ~/.claude/daemon has the ReadOnly attribute set</p>
-<p>• Fixed cloud sessions failing with "Could not resolve authentication method" when idle for too long before being claimed</p>
-<p>• Background sessions now show clearer guidance when a window left open across an auto-update can't submit a reply, and claude daemon status explains version-skew behavior</p>
-