Logo Vincent
返回文章列表

Claude Code /rename 详解:给你的会话取个有意义的名字

Claude
Claude Code /rename 详解:给你的会话取个有意义的名字

为什么需要 /rename

用 Claude Code 开发一段时间后,你的会话历史会越来越长。默认情况下,会话只有时间戳标识——要找回三天前某次调试的上下文,只能靠记忆猜测,或者逐条翻看。

/rename 解决的就是这个问题:给当前会话起一个有意义的名字,让历史记录变得可查找、可回溯。

基础用法

/rename 有两种调用方式:

手动命名:

/rename fix-auth-token-expiry

直接指定名称,立即生效,输出:

Session renamed to: fix-auth-token-expiry

AI 自动命名:

/rename

不带任何参数时,Claude Code 会调用 Haiku 模型分析当前会话内容,自动生成一个名称。如果会话内容太少(还没有实质性对话),会提示:

Could not generate a name: no conversation context yet. Usage: /rename <name>

AI 自动命名怎么工作的

不带参数执行 /rename 时,后台流程如下:

第一步:提取会话文本

从当前会话的消息记录中提取对话内容,只保留用户和 Claude 的实际文本消息,跳过工具调用结果、系统消息、meta 消息等非对话内容。

如果对话文本超过 1000 个字符,只取最后 1000 个字符——尾部截取,让最近的上下文优先,因为最近的对话最能代表这次会话在做什么。

第二步:调用 Haiku 生成 kebab-case 名称

将提取出的对话文本发给 Haiku,系统提示是:

“Generate a short kebab-case name (2-4 words) that captures the main topic of this conversation. Use lowercase words separated by hyphens.”

并给出几个示例:fix-login-bugadd-auth-featurerefactor-api-clientdebug-test-failures

Haiku 返回 JSON 格式结果,Claude Code 解析其中的 name 字段作为最终名称。

第三步:应用名称

生成的名称和手动指定的名称走完全相同的保存流程。

之所以选 Haiku 而不是更强的模型:命名是一个简单的摘要任务,Haiku 速度快、成本低,完全够用。

启动时命名:-n 参数

除了在会话中用 /rename,还可以在启动 Claude Code 时直接指定会话名:

claude -n fix-login-bug
# 或
claude --name fix-login-bug

这样会话从一开始就有名字,不用事后再补命名。名称会立即写入会话标题缓存,在 /resume 列表中显示。

Plan 模式退出时的自动命名

这是一个很少被人注意到的细节。

当你在 Plan 模式(/plan)中制定完计划、即将进入执行阶段时,Claude Code 会自动尝试给会话命名——前提是当前会话还没有名字。

触发时机:你确认退出 Plan 模式(点击 Accept Plan)的瞬间。

触发后,Claude Code 用 generateSessionName 分析你写的 Plan 内容(取前 1000 个字符,头部截取而不是尾部——因为 Plan 的目标通常在开头),生成一个 kebab-case 名称,自动保存,source 标记为 'auto'(区别于 /rename 手动触发的 'user')。

自动命名有保护机制:

  • 如果当前会话已经有名字(无论手动还是之前自动命名的),不会覆盖
  • 如果是”清除上下文”(clear-context),跳过这个保护,允许为新的执行会话命名

双标题系统

Claude Code 内部维护两套标题,存储在同一个会话的 .jsonl 文件中:

类型字段entry 类型来源优先级
用户自定义标题customTitlecustom-title/rename-n 启动参数、Plan 模式自动命名
AI 自动标题aiTitleai-title系统后台自动生成

读取时,customTitle 始终覆盖 aiTitle——你主动命的名永远优先,系统兜底但不抢占。

为什么要用两种不同的 entry 类型,而不是同一个字段?

这是刻意的设计,注释里写得很清楚:

  1. 防止 AI 标题覆盖用户标题/resume 恢复会话时只从 custom-title 类型的 entry 恢复标题,不会把 AI 自动生成的 ai-title 当成用户设置的名字
  2. 防止 re-append 时出错:会话文件尾部重写时,只会重新追加 custom-title,不会重新追加 ai-title,避免旧的 AI 标题覆盖了中途用户手动改的名字
  3. 独立的写入语义:AI 标题可以覆盖上一条 AI 标题,但永远不能覆盖用户标题

两种 AI 命名格式的区别

Claude Code 有两套 AI 自动命名,格式完全不同:

来源格式示例
/rename(无参数)kebab-case,2-4 个单词fix-auth-token-expiry
系统自动命名(后台)Sentence case,3-7 个单词Fix login button on mobile

/rename 生成的是机器友好的短标签,适合在终端显示和脚本引用;系统自动命名生成的是更自然的短句,适合在 UI 列表中展示。

两者的 Haiku 调用参数、prompt 和 JSON 字段名也不同(/renamename 字段,系统用 title 字段),是完全独立的两个生成器。

保存位置

命名结果以两条记录写入会话文件(~/.claude/projects/<project-hash>/<session-id>.jsonl):

  • custom-title 记录:保存名称,供 /resume 等列表类命令展示
  • agent-name 记录:同步更新终端提示栏显示的代理名称,让你在会话进行中也能看到当前名称

两者写入同一个 .jsonl 文件,追加到末尾,不产生额外文件。

和 claude.ai 的同步

如果你通过 Claude Desktop 或 claude.ai/code 使用 Claude Code,/rename 还会把新名称同步到云端 Bridge 会话:

  • 检测当前会话是否关联了 Bridge 会话 ID(replBridgeSessionId
  • 如果有,异步调用 updateBridgeSessionTitle 更新云端标题
  • 同步是非阻塞的(fire-and-forget),失败也只是静默跳过,不影响本地命名

这意味着你在终端里 /rename,claude.ai 上的会话列表也会更新。

Swarm 模式下不能重命名

如果当前会话是 Swarm(多 Agent 并行)中的 Teammate 子会话,/rename 会拒绝执行:

Cannot rename: This session is a swarm teammate. Teammate names are set by the team leader.

Teammate 的名字由 Team Leader 统一管理,个体不能自行修改,避免协作中出现混乱。

和 /resume 配合使用

/rename 的价值在 /resume 里最直观地体现出来:

  1. fix-auth-token-expiry          2 hours ago
  2. add-payment-webhook            yesterday
  3. debug-memory-leak-prod         3 days ago
  4. 1745123456789                  4 days ago   ← 没命名,只有时间戳

命了名的会话一眼就能认出来,没命名的只剩时间戳。

养成习惯:开始一个新任务时就 /rename,或者让 Plan 模式帮你自动命名,几个月后的你会感谢现在的你。

实用建议

开始时命名:确定要做什么了,先 /rename fix-xxx,再开始干活。

-n 启动:从命令行启动时带上名字 claude -n refactor-api-client,省去会话里再 /rename 的步骤。

不知道叫什么就 /rename(无参数):让 AI 帮你想,通常比你临时想的名字更准确,因为它是基于实际对话内容生成的,不是基于你最初的预期。

配合 Plan 模式:用 /plan 制定计划时,退出 Plan 模式会自动命名,不用手动操作。

写在最后

/rename 是个小命令,但它解决了一个真实的问题:AI 编程的上下文管理

代码提交到 git 有记录,但和 Claude 的对话默认是无名的、难以检索的。/rename 让每次有价值的会话都有一个可辨识的标签,双标题系统、Bridge 同步、Plan 模式自动命名——这些细节加在一起,构成了一个认真设计过的会话管理体验。

好记性不如烂笔头——/rename 就是给 AI 对话的那支笔。

相关推荐

AI-first 创业公司,为什么只需要一种编程语言?

技术架构越简单 = AI Coding 效率越高。从 Java 的"防人"设计到 TypeScript 全栈通吃,聊聊 AI 时代创业公司的编程语言选择。

cc-ping:一行命令 Ping 所有 Claude Code 配置

用多个 Claude Code API Key 或中继?cc-ping 帮你管理配置、一键切换,还能并行 Ping 所有节点比速度。

震惊!程序员用这个工具,4分钟干完95分钟的活!效率暴涨24倍

躺床上发3条消息,4分钟搞定3个项目。传统方式需要95分钟,这就是冷兵器和热兵器的差距。

CCBot - 研发提效 24 倍

通过 IM 机器人控制 Claude Code,3 个项目 4 分钟全部搞定。传统编程需要 95 分钟,效率提升 24 倍。

Claude Code /add-dir:被低估的 Monorepo 神器

Claude Code 默认只能看到当前目录。/add-dir 打破这个限制——分享我每天跨 5 个仓库使用的经验。

Claude Code 省 Token 小技巧:感叹号的妙用

一个简单却容易被忽略的技巧——用感叹号直接执行命令,省 token、提速度、更可控。

我做了个机器人,让团队在飞书里用 Claude Code

CCBot 让你的团队在飞书群聊里直接用 Claude Code——不需要终端、不需要 SSH。开源、自部署、五分钟搞定。

Claude Code /btw 命令详解:不打扰主线的快问快答

详细介绍 Claude Code 的 /btw 命令——它是什么、怎么用、什么时候该用,以及它和子代理、/compact 的区别。

Claude Code /compact:释放上下文,不丢进度

任务做到一半上下文满了?/compact 帮你压缩对话继续干活——和 /clear、/rewind 的区别一次讲清。

Claude Code /config:一文搞懂所有可调设置

用 Claude Code 却从没打开过 /config?这篇带你逐项拆解——从权限模式到自动压缩,从主题切换到通知配置,帮你打造最顺手的 AI 编程环境。

Claude Code /context:你的上下文都被什么吃了?

对话到一半 Claude Code 说上下文不够了?/context 用一张可视化网格告诉你:上下文被什么占了、占了多少、怎么优化。

Claude Code /diff:这次对话改了什么,一目了然

Claude Code 帮你改了一堆文件,但你不确定到底改了什么?/diff 用交互式界面展示所有改动——既有 git 视角的全量 diff,也有按对话轮次拆分的逐步 diff。

Claude Code /fast:同样的 Opus,两倍速——值不值?

/fast 不会降级模型,还是 Opus,只是更快。什么时候该开、什么时候该关,以及实际体验差异。

Claude Code 引用外部知识的最佳实践:GitHub MCP + Context7

用 GitHub MCP 和 Context7 MCP 两个工具组合,解决 Claude Code 知识过时导致的代码错误问题。

Claude Code /hooks:让 AI 按你的规矩办事

想在 Claude Code 执行命令前自动检查?想在任务完成后自动通知?/hooks 让你用脚本、AI 甚至 HTTP 请求,在关键节点插入自定义逻辑。

Claude Code /init:10 秒自动生成 CLAUDE.md

别再手写 CLAUDE.md 了。看看 /init 自动生成的效果、怎么自定义输出,以及一个让 Claude Code 效率翻倍的小技巧。

Claude Code MCP:让 AI 连接 GitHub、数据库等一切工具

MCP 把 Claude Code 从代码阅读器升级为全栈 Agent。哪些 MCP 服务器值得装、配置怎么写,实测分享。

Claude Code /memory 详解:让 AI 真正记住你的项目

详细介绍 Claude Code 的 /memory 命令和记忆系统——CLAUDE.md 手动指令、Auto Memory 自动记忆、模块化规则,让 Claude 跨会话记住项目规范和个人偏好。

Claude Code /model:Opus、Sonnet、Haiku 怎么选?

不是每个任务都需要 Opus。怎么切换模型、哪个场景用哪个、怎么省 token 又不掉质量。

Claude Code /permissions:谁能干什么,你说了算

每次 Claude Code 要跑命令都弹窗问你?嫌烦又不敢全放开?/permissions 帮你精细控制每个工具的权限——该放的放,该拦的拦。

Claude Code /plan 详解:先想清楚再动手

详细介绍 Claude Code 的 /plan 命令和 Plan Mode——只读规划模式,让 Claude 先分析代码、制定方案,确认后再动手,避免复杂任务翻车。

Claude Code + Playwright MCP:AI 终于能"看见"页面了

一个 Modal 溢出的 bug,Claude Code 反复修了 5 次都没搞定。直到接入 Playwright MCP 让它真正看到页面,一次定位,一次修复。

Claude Code /resume 命令详解:别让对话白聊

详细介绍 Claude Code 的 /resume 命令——恢复历史对话、管理会话、实用技巧,让你的每一轮对话都不浪费。

Claude Code /review:让 AI 帮你做 Code Review

提了 PR 没人看?想在合并前多一道把关?/review 让 Claude Code 像一个资深开发者一样审查你的代码——还有 /ultrareview 和 /security-review 两个进阶选择。

Claude Code Skills 详解:打造你的专属命令库

详细介绍 Claude Code 的 Skills 功能——创建自定义斜杠命令、复用提示词模板、共享团队最佳实践,让 AI 编程更高效更一致。

Claude Code /stats:看看 AI 到底帮你写了多少代码

好奇 Claude Code 到底写了多少行代码?/stats 给你完整数据——token、编辑次数、工具调用,教你怎么看。

Claude Code /status 命令详解:一眼看清会话全貌

详细介绍 Claude Code 的 /status 命令——它是什么、怎么用、能看到哪些信息,以及它在日常工作流中的实际价值。

Claude Code /tasks 命令详解:后台任务尽在掌控

详细介绍 Claude Code 的 /tasks 命令——查看后台任务、管理并行 Agent、掌控长时间运行的进程,让多任务开发井井有条。

Claude Code /usage 命令详解:你的额度还剩多少

详细介绍 Claude Code 的 /usage 命令——查看用量、了解限额、避免突然被限速,让你对自己的额度心中有数。

Claude Code /vim:在 AI 编程助手里用 Vim 键位

习惯了 Vim 的操作方式?/vim 让你在 Claude Code 的输入框里用 hjkl 移动、dd 删行、ciw 替换单词——不用改变肌肉记忆。

Claude Code 使用指南:从安装到实战,一篇就够(2026)

用了半年 Claude Code 的经验总结——5 分钟安装配置、最常用的命令、CLAUDE.md 编写技巧,以及没人告诉你的实战心得。

Claude 全家桶:从聊天到写代码到自动办公,一文讲清楚

一篇文章带你了解 Anthropic 的 Claude 全家桶——Claude.ai、Claude Code、Claude Cowork,以及 Opus、Sonnet、Haiku 三大模型家族。

Claude Code /agents 详解:自定义 AI 子代理,各司其职

详细介绍 Claude Code 的 /agents 命令——查看、管理和创建自定义 Agent,让不同任务由专门的 AI 角色来执行,从代码探索到架构规划各司其职。

Claude Code /doctor 详解:一键诊断你的开发环境

详细介绍 Claude Code 的 /doctor 命令——自动检测安装状态、API 连接、MCP 配置、上下文用量等问题,帮你快速定位和修复环境故障。

Claude Code /effort 详解:控制 AI 思考的深度

详细介绍 Claude Code 的 /effort 命令——调节 Claude 的推理努力程度,在速度和质量之间找到最佳平衡点,让每一次对话都恰到好处。

Claude Code /cost 详解:你的 AI 编程到底花了多少钱

详细介绍 Claude Code 的 /cost 命令——实时查看会话 API 成本,了解各模型定价和 Token 消耗明细,让每一分钱都花得明明白白。

Claude Code /export 详解:把 AI 对话带走

详细介绍 Claude Code 的 /export 命令——将对话导出为文件或复制到剪贴板,方便分享、存档和复盘,让每一次有价值的对话都不浪费。

Claude Code /rewind 详解:AI 改错了?一键回退

详细介绍 Claude Code 的 /rewind 命令——将代码和对话回退到任意历史节点,支持只回退代码、只回退对话、或两者同时回退,是你和 AI 协作时的后悔药。

Claude Code /plugin 详解:给你的 AI 编程助手装插件

详细介绍 Claude Code 的 /plugin 命令——管理插件的安装、启用、禁用和更新,通过插件扩展 Claude Code 的命令、技能、Agent 和 Hook,打造你专属的 AI 编程工具链。

Claude Code /theme 详解:给你的终端换个好看的皮肤

详细介绍 Claude Code 的 /theme 命令——6 种预设主题 + 自动模式,支持深色/浅色、色盲友好、ANSI 兼容,60+ 色值覆盖终端全部 UI 元素。

Claude Code /insights 详解:用 AI 分析你自己用 AI 的方式

详细介绍 Claude Code 的 /insights 命令——五阶段数据分析流水线、七大洞察章节、多维度会话统计,用 Claude Opus 生成专属 HTML 使用报告。

Claude Code settings.json 详解(一):配置文件在哪里、谁说了算

全面介绍 Claude Code 的配置文件体系——五个配置来源的路径、优先级规则、数组合并与单值覆盖的区别、企业管理设置的多种下发方式。

Claude Code settings.json 详解(二):permissions 权限系统全解析

深入解析 Claude Code 的 permissions 配置——allow/deny/ask 三类规则、通配符语法、MCP 工具权限、defaultMode 各模式含义,以及 additionalDirectories 的作用。

Claude Code settings.json 详解(三):hooks 钩子全解析

深入解析 Claude Code 的 hooks 配置——四种钩子类型、核心事件(PreToolUse/PostToolUse/Stop/Notification)、stdin/stdout 协议、exit code 语义,以及实用配置示例。

Claude Code settings.json 详解(四):env、模型、认证与其他实用字段

全面介绍 Claude Code settings.json 中的 env 环境变量注入、模型配置、身份认证辅助、Git 提交署名、会话清理、语言与界面、思考深度、自动更新、记忆系统等实用字段。

Claude Code Agent Loop:拆解 AI 编程助手的心脏

Claude Code 是怎么一步步理解你的需求、调用工具、自我修复的?从源码角度拆解 Agent Loop 的核心架构——流式响应、并行工具执行、自动压缩、错误恢复,一次讲透。

© 2026 vincentqiao.com . 保留所有权利。