Skip to main content

Claude Code v2.1.199: Stacked Skill Invocations and Major Reliability Fixes for Subagents and Background Agents

Claude Code v2.1.199 lets stacked slash-skill invocations load multiple skills, adds automatic retry for transient rate-limit errors, and delivers extensive reliability fixes for subagents, background agents, and streaming responses.

The Claude Code development team has released version 2.1.199, a reliability-focused update headlined by support for stacked slash-skill invocations. The release also delivers a large batch of fixes for subagent error handling, background agent stability on Linux and macOS, streaming response recovery, and smarter retry behavior for transient server errors.

What’s New

Stacked Slash-Skill Invocations

Stacked slash-skill invocations like /skill-a /skill-b do XYZ now load all leading skills (up to 5), not just the first. This makes it easy to combine multiple skills in a single prompt.

Smarter Error Handling and Retries

  • SSL certificate errors (TLS-inspecting proxies, missing NODE_EXTRA_CA_CERTS, expired certs) no longer burn retries before showing actionable guidance — they now fail immediately with the fix hint
  • Streaming responses are no longer discarded when the API emits a mid-stream overloaded/server error after partial output — the partial is now kept with an incomplete-response notice
  • Transient server rate-limit errors (429s unrelated to your usage limit) are now retried automatically with backoff for subscribers instead of failing the turn
  • CLAUDE_CODE_RETRY_WATCHDOG now raises the default retry count for non-capacity transient errors to 300 and lifts the cap of 15 on CLAUDE_CODE_MAX_RETRIES

Subagent Reliability

  • Subagents cut off by a rate limit or server error no longer silently fail — they now return their partial work to the parent
  • Subagents reporting API errors (e.g. usage limit reached) are no longer treated as successful results — the error is now reported to the parent agent
  • SendMessage now detects when a re-spawned agent reuses a previous agent’s name and asks the caller to retarget instead of silently misrouting
  • Idle subagents no longer vanish from the agent panel while other subagents are still working; surplus idle agents now collapse into an expandable summary row
  • Typing /model or /fast while viewing a subagent no longer silently opens the lead’s model picker — a notice now explains the command applies to the lead

Background Agent Stability

  • Fixed the background-agent daemon on Linux killing itself and every running agent every ~50 seconds after an unclean shutdown left a corrupted worker record
  • Fixed background agents failing to cold-start over SSH on macOS with “Could not switch to audit session” (a regression in 2.1.196)
  • Fixed claude stop being silently undone when it raced a background-agent respawn — the respawn now honors the stop
  • Fixed background job progress indicators stalling for minutes while the job ran long commands
  • Background sessions on memory-starved machines now indicate low memory and suggest freeing resources instead of showing a generic error
  • Fixed remote sessions briefly flapping between Working and Idle in the agent view when a background agent completes

Additional Fixes

  • SessionStart, Setup, and SubagentStart hooks no longer silently hide stderr when exiting with code 2 — the error is now shown in the transcript
  • claude --dangerously-skip-permissions daemon <subcommand> is no longer treated as a chat prompt instead of running the subcommand
  • Opening or resuming a session with no new messages no longer needlessly grows the transcript file
  • Backgrounding a session with or /background no longer drops its /color from the agent view row
  • Resetting a corrupted config file from the startup recovery dialog now backs up the file first instead of destroying it unrecoverably
  • Fixed Claude in Chrome repeatedly opening the reconnect page when sessions run from different builds or config directories
  • Plan mode now prompts for state-changing browser tool calls, and read-only browser_batch calls are now correctly auto-allowed
  • claude agents session rows now show pull-request links as bare #N without the redundant “PR” label

How to Update

To update to Claude Code v2.1.199:

  1. Check your current version: claude --version
  2. Update using your preferred method:
    • Package manager: Follow your distribution’s update process
    • Direct download: Visit the release page for platform-specific binaries
  3. Restart any active background sessions to benefit from the daemon and stability fixes
  4. If you use aggressive retry settings, review CLAUDE_CODE_RETRY_WATCHDOG and CLAUDE_CODE_MAX_RETRIES for the new behavior