# Claude Code v2.1.238 发布：新增 readline 键位、插件市场 headersHelper 与多项 Remote Control 修复

- 来源：Claude Code：GitHub Releases（RSS）
- 作者：ashwin-ant
- 发布时间：2026-08-21 04:33
- AIHOT 分数：50
- AIHOT 链接：https://aihot.virxact.com/items/cmt206dhq0d95roovjuqm08xj
- 原文链接：https://github.com/anthropics/claude-code/releases/tag/v2.1.238

## AI 摘要

Claude Code v2.1.238 发布，新增 keybindingFlavor 设置（可设为 "readline" 使 Ctrl+W 删除至前一个空白符），并为插件市场引入 headersHelper 以生成 HTTP 头。

## 正文

What's changed

Added a keybindingFlavor setting: set it to "readline" to make Ctrl+W in the prompt delete back to the previous whitespace, as in Bash; the default ("classic") is unchanged

Plugin marketplaces: headersHelper on a url marketplace or a catalog entry runs a command that mints HTTP headers (e.g. a short-lived token) for catalog and same-origin archive fetches

A catalog entry's headersHelper runs only when you install or update that plugin, after its command is shown; claude plugin install/update ask [y/N] (or pass -y)

Added claude self-hosted-runner --defer-shutdown-max-min <minutes>: on SIGTERM, keep serving attached sessions, park what is left after that many minutes, then exit

Added claude self-hosted-runner --proxy-authorization-command / --proxy-authorization-file for egress proxies that require a freshly issued Proxy-Authorization header on every connection

Fixed unbounded memory growth in long interactive sessions: subagent tool results are now released once they leave the recent display window

Fixed custom, project, and plugin output styles drifting back to the default voice mid-session

Fixed CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=true not keeping prompt suggestions on when your account is near, but not over, its usage limit

Fixed worktree-isolation Bash refusals telling you to remove a redirect when the command had none

Fixed self-hosted runners occasionally being removed by the server after a single slow or lost poll request, handing their healthy session to another runner

Fixed MCP elicitation dialogs showing nothing for URLs longer than 4,096 characters, and permission prompts dropping the "don't ask again" option when the project path didn't fit the terminal width

Fixed leftover /tmp/claude-*-cwd files when a Bash command is killed, times out, or is interrupted

Fixed held Backspace being ignored on terminals that send Ctrl+H for Backspace when keystrokes arrive in large bursts (slow SSH/mosh links)

Fixed text-wrapping in permission prompt diffs: lines containing wide multi-code-point characters (such as emoji) or tabs are no longer clipped

Fixed killing a suspended (Ctrl+Z) session sometimes leaving the terminal in bracketed-paste mode with the cursor hidden

Fixed stdio MCP servers receiving a server/discover request before initialize, forcing lazy servers to start their backend on every session open

Fixed a proxy's refusal of a connection being reported as a generic network error instead of naming the proxy

Fixed the /model and /effort cache-miss warning appearing when the prompt cache had already expired

Fixed per-task Stop from the Remote Control tasks panel doing nothing on CLI-hosted sessions

Fixed remote sessions exiting when a client delivered a user message without a valid role

Fixed Remote Control sessions started by claude remote-control inheriting session-scoped environment variables from the launching shell

Fixed a Remote Control session whose process crashed staying unavailable until claude remote-control was restarted; it can now be reused when you next message it

Fixed Remote Control messages sent from the web or Desktop while Claude is mid-turn disappearing from the transcript after the turn finishes

Fixed Remote Control model picks made on a phone or web not updating the model shown in the terminal

Fixed Remote Control disconnecting with "login expired" when a brief network hiccup delays renewing your sign-in; it now retries and stays connected

Fixed Remote Control reporting a failed reconnect on sign-out; signing out now ends the session with a clear message

Fixed ListAgents/SendMessage reporting "Remote Control is not connected" in sessions run by claude remote-control (server mode) or Desktop/IDE hosts; they now list and reach Remote Control peers

Fixed ListAgents and SendMessage exposing the idle worker that the agent view pre-warms for your next background session; it now appears only once a task claims it

Cross-session messaging: sending to a session on this machine that refuses inbound messages (e.g. crossSessionInbound: "refuse") now reports "refused" to the sender instead of a silent success

Cross-session messaging: a session whose inbox drops your messages (rate limit or full queue) now tells your session, instead of the messages vanishing silently

Improved startup: bare claude starts sooner on macOS

Improved Bash tool permission checking for zsh-specific syntax in shell conditionals

Improved Remote Control connection resilience: brief HTTP 403 refusals from a network edge, VPN, or proxy are now tolerated for up to 3 minutes, with the refusing party named when a block persists

Improved startup responsiveness: the automatic update check now runs about 10 seconds after launch instead of competing with startup for CPU

Updated the bundled claude-api skill for the Managed Agents Aug 19 release: web search/fetch domain settings and memory stores on self-hosted sandboxes

Changed Ctrl+L and Cmd+K in fullscreen to always just repaint — the double-press /clear shortcut was removed, and 1-row nvim terminals no longer trigger automatic /clear loops

Changed claude mcp list and claude mcp get to show disabled servers as ⊘ Disabled instead of connecting to them for a health check

MCP headersHelper in a project .mcp.json, and inline MCP servers in project or --add-dir agent files, now require that folder's trust dialog to have been accepted (also under claude -p)

MCP headersHelper from a project .mcp.json, plugin, or agent file runs without inherited credential env vars; user, managed and claude.ai-scope helpers now run from the Claude config dir
