Just one day after 2.1.251, here comes 2.1.252, and this time there are no new features, only four fixes. But they’re four of the annoying kind that ruin your day when you hit them.
The first one hits Mac users. Bash commands failed for some people with the cryptic message ‘task output swap refused (tasks dir moved or linked)’. No typo on your end, no broken script — the internal folder for task output had been moved or symlinked, and Claude Code simply gave up. Fixed.
The second is the kind that makes you think you’re losing it. You click ‘always allow’, and next time Claude Code asks again anyway. The reason: in a project that didn’t have a .claude/settings.local.json yet, the approval wasn’t saved at all. Now Claude Code creates the file and remembers your choice.
The third is about Remote Control. Sessions hosted by Claude Desktop or VS Code hung for minutes after a tool had finished — but only when the connection to claude.ai was degraded at that moment. You sat there waiting even though everything was long done. Gone too.
The fourth is my quiet favorite, because it’s so absurd. When a background task failed with a huge error output, say a git error because the disk was full, that notification alone could push the conversation past the API request size limit. An error that triggers a second error. Now the output gets truncated before it blocks everything.
None of this makes it onto a release poster. But that’s exactly the point of a maintenance release like this: it clears away the things you’d otherwise curse under your breath for two weeks without realizing a bug was behind it. If you already installed 2.1.251 for the symlink fixes, just pull 2.1.252 along right after. Costs nothing, hurts nothing.
Sources: Claude Code Changelog · Releasebot: Claude Code