Claude Code keybindingFlavor 改成 readline

2.1.238 新增 keybindingFlavor:设为 readline 后 Ctrl+W 按 Bash 空白边界删词;默认 classic 保持旧手感。适合从 shell 切进 CC 的人。

Claude Code keybindingFlavor 改成 readline

claude code keybindingFlavor readline:2.1.238 给提示输入加了一档键位风格。把 keybindingFlavor 设成 "readline" 后,Ctrl+W 会删到上一个空白边界,行为贴近 Bash;默认 "classic" 继续用 Claude Code 原来的删词逻辑。对手从终端肌肉记忆切进来的人,这是小改动、大减负。

作者CodePass 技术编辑

为什么值得单独写一篇

Agent 产品里,权限模式、模型、输出风格都有人写;输入框快捷键常被当成「自己忍忍」。结果是:你在 shell 里习惯 Ctrl+W 砍路径最后一段,进 Claude Code 却砍出一坨意外范围,只好再 Ctrl+Z 或整行重打。Changelog 把这件事提升成一级设置,说明团队承认:提示框就是工作台的一部分,不是附属 UI。

同版本还修了慢 SSH/mosh 上长按 Backspace 被突发按键淹没的问题。远程会话用户往往同时吃到「删词语义」和「按键投递」两类坑,升级到 ≥ 2.1.238 后再调 flavor 更干净。

怎么开

在用户或项目 settings.json 写入:

{
  "keybindingFlavor": "readline"
}

改完新开一轮输入即可验证:在一行里打 src/foo/bar.ts,光标在末尾,按 Ctrl+W,readline 档应留下 src/foo/;classic 档可能按另一套词边界切。团队若混用 Vim 模式,先确认 Vim NORMAL 与插入态快捷键谁优先,再决定要不要全局开 readline。

也可用 /config 搜 keybinding,看当前版本是否暴露同名菜单项。配置面以你安装的 changelog 与 schema 为准。

和输出风格、权限模式别混

  • 输出啰嗦:走 Output style / Concise,见 Concise 输出风格
  • 工具乱弹窗:走 Auto Mode 与规则,见 auto mode 默认是什么
  • 键位只解决「你怎么编辑提示」,不解决「模型写多长」。

若公司镜像统一发行版,把 keybindingFlavor 写进托管 settings,比口头通知「请改成 Bash 手感」可靠。新同事 onboarding 加一条:打开会话先试 Ctrl+W,不对就查版本是否到 2.1.238。

边界

文档写的是提示输入里的 Ctrl+W。其它 readline 习惯(Ctrl+UCtrl+A 等)不要默认全部对齐。图形前端、IDE 扩展若自带编辑器,可能仍走宿主快捷键,以实际面板为准。改完若发现插件抢键,先关冲突扩展再断定是 flavor 无效。

远程 SSH 会话里再叠一层:终端复用器(tmux)可能先吃掉部分 Ctrl 组合。先在本地 GUI 终端确认 readline 生效,再在 SSH 场景对比;两处不一致时,优先查 tmux bind-key 而不是怀疑 Claude Code 没读到 settings。