Claude Code changelog

Claude Code 2.1.186

This release introduces significant enhancements for command-line interaction and agent behavior. New CLI commands for MCP server login and logout, including SSH support, streamline automation workflows. The system now automatically responds to `!` bash command output, with an option to revert to previous behavior. Key fixes address streaming request failures after sleep, ensuring better reliability, and strengthen agent deny rules for improved control. Other updates include clearer permission prompts for background agents, better status filtering in workflows, and accurate session cost reporting for enterprise users.

Added

  • Added `claude mcp login <name>` and `claude mcp logout <name>` to authenticate MCP servers from the CLI without opening the interactive `/mcp` menu, with `--no-browser` stdin redirect support for completing over SSH
  • Added status filtering (press `f`) to the `/workflows` agent detail view
  • Added a "Skills" section to the `/plugin` Installed tab
  • Added `teammateMode: "iterm2"` setting with a warning when auto mode cannot find the `it2` CLI
  • Added "Claude Platform on AWS - refresh credentials" option to `/login` when `awsAuthRefresh` is configured

Improved

  • Improved `claude mcp get` and `claude mcp remove` to suggest the closest configured server name on a typo and truncate long server lists
  • Improved memory: the agent is now reminded to compact its `MEMORY.md` index when nearing the size limit
  • Improved skill frontmatter: `display-name`, `default-enabled`, `fallback`, and `metadata.*` keys now accept kebab-case, snake_case, and camelCase
  • Improved malformed `SKILL.md` YAML frontmatter handling: loads the skill body with empty metadata instead of failing silently

Changed

  • `!` bash commands now trigger Claude to respond to the output automatically; set `"respondToBashCommands": false` in settings.json to keep the previous context-only behavior
  • Changed `CLAUDE_CODE_MAX_RETRIES` to cap at 15; for unattended sessions, use `CLAUDE_CODE_RETRY_WATCHDOG` instead
  • Changed background subagents to surface permission prompts in the main session instead of auto-denying; the dialog shows which agent is asking, and Esc denies just that tool
  • Changed `/review <pr>` to use the same review engine as `/code-review medium`

Fixed

  • Fixed streaming requests failing with "Content block not found" or JSON parse errors after the machine wakes from sleep
  • Fixed subagent transcript scroll position bleeding into the main transcript on exit
  • Fixed background task previews flashing raw tool names before the agent's plan loaded
  • Fixed Chrome tab-group isolation not applying when the in-product permissions gate is off for concurrent CLI sessions
  • Fixed background session recaps being duplicated; the agent's own end-of-turn summary now shows as the recap line
  • Fixed opening a background session from `claude agents` leaving the previous screen painted behind it
  • Fixed `Agent(type)` deny rules and `Agent(x,y)` allowed-types restrictions not being enforced for named subagent spawns
  • Fixed Esc and Ctrl+C not responding while background agents are still running after the main turn ends
  • Fixed misaligned option numbers in permission prompts when the option text overflows
  • Fixed pressing `x` on a finished subagent in the agent panel not dismissing it
  • Fixed a misleading "MCP server disconnected" notice for intentionally retired tools when resuming older sessions
  • Fixed `/plugin` Installed showing a "more above" indicator when already scrolled to the top
  • Fixed `~~strikethrough~~` showing literal tildes in assistant messages instead of rendering as strikethrough
  • Fixed `--tools` allowing feature-gated tools to slip through before flags loaded on a cold first launch
  • Fixed background job status in `claude agents` showing a stale "needs input" message after replying
  • Fixed a dark-theme flash when opening a background session from `claude agents` on a light terminal
  • Fixed mouse-selected text staying highlighted after deleting it in `claude agents`
  • Fixed session cost not showing for usage-based Enterprise and Team subscribers
  • Fixed agent teams: teammates spawned via tmux/pane backends now inherit the leader's `--effort` level
  • Fixed Workflow `agent({schema})` subagents looping forever on repeated schema validation failures instead of aborting after 5 attempts