Claude Code 2.1.110: TUI Mode, Focus Commands
Claude Code 2.1.110 adds flicker-free TUI rendering, refactors focus/transcript controls, and fixes MCP hangs, plugin dependencies, and Remote Control issues.
TL;DR
- New `/tui fullscreen` command for flicker-free rendering in the same conversation
- Refactored keyboard shortcuts — `Ctrl+O` now toggles transcript verbosity only; `/focus` command handles focus mode separately
- Fixed MCP server hangs, non-streaming retries, and plugin dependency resolution
New
- /tui command and tui setting — Run `/tui fullscreen` to switch to flicker-free rendering without leaving your conversation.
- autoScrollEnabled config — Disable conversation auto-scroll in fullscreen mode via config.
- /focus command — Separate toggle for focus mode (previously bundled with `Ctrl+O`).
- Claude's response as commented context — Show Claude's last response as commented code in the `Ctrl+G` external editor; enable via `/config`.
- Improved /plugin Installed tab — Items needing attention and favorites float to the top; disabled items hide behind a fold; press `f` to favorite selected items.
- --resume/--continue resurrects scheduled tasks — Now restores unexpired scheduled tasks when resuming sessions.
- Remote Control command support — `/autocompact`, `/context`, `/exit`, and `/reload-plugins` now work from mobile/web clients.
- Write tool transparency — Model is informed when you edit proposed content in the IDE diff before accepting.
- Distributed trace linking — SDK/headless sessions now read `TRACEPARENT`/`TRACESTATE` from environment for trace correlation.
- Session recap for telemetry-disabled users — Now enabled for Bedrock, Vertex, Foundry, and `DISABLE_TELEMETRY` users; opt out via `/config` or `CLAUDE_CODE_ENABLE_AWAY_SUMMARY=0`.
- Improved /doctor warnings — Warns when an MCP server is defined in multiple config scopes with different endpoints.
Fixed
- MCP tool calls hanging indefinitely when server connection drops mid-response on SSE/HTTP transports.
- Non-streaming fallback retries causing multi-minute hangs when API is unreachable.
- Session recap and system status lines not appearing in focus mode.
- High CPU usage in fullscreen when text is selected during tool execution.
- Plugin install not honoring dependencies declared in `plugin.json` when marketplace entry omits them.
- Skills with `disable-model-invocation: true` failing when invoked via `/` mid-message.
- `--resume` showing first prompt instead of `/rename` name for running or uncleanly exited sessions.
- Queued messages briefly appearing twice during multi-tool-call turns.
- Session cleanup not removing full directory including subagent transcripts.
- Dropped keystrokes after CLI relaunches (e.g., `/tui`, provider setup wizards).
- Garbled startup rendering in macOS Terminal.app and terminals without synchronized output support.
- `PermissionRequest` hooks returning `updatedInput` not being re-checked against `permissions.deny` rules; `setMode:'bypassPermissions'` updates now respect `disableBypassPermissionsMode`.
- `PreToolUse` hook `additionalContext` being dropped when tool call fails.
- Stdio MCP servers printing stray non-JSON lines to stdout being disconnected on first stray line (regression in 2.1.105).
- Headless/SDK session auto-title firing extra Haiku request when `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` or `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` is set.
- Excessive memory allocation when piped (non-TTY) Ink output contains single very wide line.
- `/skills` menu not scrolling when list overflows modal in fullscreen mode.
- Remote Control sessions showing generic error instead of re-login prompt when session too old.
- Remote Control session renames from claude.ai not persisting title to local CLI session.
- Command injection vulnerability in "Open in editor" actions from untrusted filenames.
Update via: npm install -g @anthropic-ai/claude-code
Source: Claude Code