# Claude Code v2.1.97 发布

- 来源：Claude Code：GitHub Releases（RSS）
- 作者：ashwin-ant
- 发布时间：2026-04-09 05:52
- AIHOT 链接：https://aihot.virxact.com/items/cmnw8fk5500aoslcjkvr9eg2k
- 原文链接：https://github.com/anthropics/claude-code/releases/tag/v2.1.97

## AI 摘要

Claude Code v2.1.97 版本发布，为 NO_FLICKER 模式新增焦点视图切换（Ctrl+O）及多项渲染修复。权限系统修复了 Bash 工具环境变量检查、MCP HTTP 连接内存累积（约 50MB/小时）、429 重试逻辑及设置热重载等漏洞。新增状态栏自动刷新、git worktree 检测、agents 运行指示器及 Cedar 策略文件语法高亮。改进包括自动批准安全环境变量前缀的文件命令、CJK 输入无需空格即可触发补全，以及图像压缩统一处理。

## 正文

What's changed

Added focus view toggle (Ctrl+O) in NO_FLICKER mode showing prompt, one-line tool summary with edit diffstats, and final response

Added refreshInterval status line setting to re-run the status line command every N seconds

Added workspace.git_worktree to the status line JSON input, set when the current directory is inside a linked git worktree

Added ● N running indicator in /agents next to agent types with live subagent instances

Added syntax highlighting for Cedar policy files (.cedar, .cedarpolicy)

Fixed --dangerously-skip-permissions being silently downgraded to accept-edits mode after approving a write to a protected path

Fixed and hardened Bash tool permissions, tightening checks around env-var prefixes and network redirects, and reducing false prompts on common commands

Fixed permission rules with names matching JavaScript prototype properties (e.g. toString) causing settings.json to be silently ignored

Fixed managed-settings allow rules remaining active after an admin removed them until process restart

Fixed permissions.additionalDirectories changes in settings not applying mid-session

Fixed removing a directory from settings.permissions.additionalDirectories revoking access to the same directory passed via --add-dir

Fixed MCP HTTP/SSE connections accumulating ~50 MB/hr of unreleased buffers when servers reconnect

Fixed MCP OAuth oauth.authServerMetadataUrl not being honored on token refresh after restart, fixing ADFS and similar IdPs

Fixed 429 retries burning all attempts in ~13 seconds when the server returns a small Retry-After — exponential backoff now applies as a minimum

Fixed rate-limit upgrade options disappearing after context compaction

Fixed several /resume picker issues: --resume opening uneditable, Ctrl+A reload wiping search, empty list swallowing navigation, task-status text replacing conversation summary, and cross-project staleness

Fixed file-edit diffs disappearing on --resume when the edited file was larger than 10KB

Fixed --resume cache misses and lost mid-turn input from attachment messages not being saved to the transcript

Fixed messages typed while Claude is working not being persisted to the transcript

Fixed prompt-type Stop/SubagentStop hooks failing on long sessions, and hook evaluator API errors displaying "JSON validation failed" instead of the actual message

Fixed subagents with worktree isolation or cwd: override leaking their working directory back to the parent session's Bash tool

Fixed compaction writing duplicate multi-MB subagent transcript files on prompt-too-long retries

Fixed claude plugin update reporting "already at the latest version" for git-based marketplace plugins when the remote had newer commits

Fixed slash command picker breaking when a plugin's frontmatter name is a YAML boolean keyword

Fixed copying wrapped URLs in NO_FLICKER mode inserting spaces at line breaks

Fixed scroll rendering artifacts in NO_FLICKER mode when running inside zellij

Fixed a crash in NO_FLICKER mode when hovering over MCP tool results

Fixed a NO_FLICKER mode memory leak where API retries left stale streaming state

Fixed slow mouse-wheel scrolling in NO_FLICKER mode on Windows Terminal

Fixed custom status line not displaying in NO_FLICKER mode on terminals shorter than 24 rows

Fixed Shift+Enter and Alt/Cmd+arrow shortcuts not working in Warp with NO_FLICKER mode

Fixed Korean/Japanese/Unicode text becoming garbled when copied in no-flicker mode on Windows

Fixed Bedrock SigV4 authentication failing when AWS_BEARER_TOKEN_BEDROCK or ANTHROPIC_BEDROCK_BASE_URL are set to empty strings (as GitHub Actions does for unset inputs)

Improved Accept Edits mode to auto-approve filesystem commands prefixed with safe env vars or process wrappers (e.g. LANG=C rm foo, timeout 5 mkdir out)

Improved auto mode and bypass-permissions mode to auto-approve sandbox network access prompts

Improved sandbox: sandbox.network.allowMachLookup now takes effect on macOS

Improved image handling: pasted and attached images are now compressed to the same token budget as images read via the Read tool

Improved slash command and @-mention completion to trigger after CJK sentence punctuation, so Japanese/Chinese input no longer requires a space before / or @

Improved Bridge sessions to show the local git repo, branch, and working directory on the claude.ai session card

Improved footer layout: indicators (Focus, notifications) now stay on the mode-indicator row instead of wrapping below

Improved context-low warning to show as a transient footer notification instead of a persistent row

Improved markdown blockquotes to show a continuous left bar across wrapped lines

Improved session transcript size by skipping empty hook entries and capping stored pre-edit file copies

Improved transcript accuracy: per-block entries now carry the final token usage instead of the streaming placeholder

Improved Bash tool OTEL tracing: subprocesses now inherit a W3C TRACEPARENT env var when tracing is enabled

Updated /claude-api skill to cover Managed Agents alongside the Claude API
