Terminal Title Management(终端标题管理)用于把终端窗口标题更新为当前上下文,方便在多任务或多项目切换时一眼辨认正在处理的内容。
用途 该技能的核心目标是让终端标题跟随实际工作内容变化:会话启动时自动设置默认标题,当对话主题发生实质性切换时再次更新,使标题始终反映“当前在做什么”。
标题格式 标准格式为「$emoji ProjectName - Topic」,由三部分组成:
- 表情符号:读取环境变量 $TERMINAL_TITLE_EMOJI,通常由 zsh 主题按目录上下文设置,常见取值为 💼(工作)和 🎉(娱乐/个人);未设置时回退为 🎉。
- 项目名:由 Claude 智能检测,使用人类友好的名称而非目录 slug,例如显示「OneOnOne」而非「oneonone」。
- 主题:当前工作的简短描述,一般 2 到 4 个词,如「Terminal Title」「Firebase Config」「CSS Refactor」。
触发时机
- 会话开始:由 SessionStart 钩子自动触发,Claude 需将标题默认主题设为「Claude Code」。
- 主题变化:当用户转为新主题时,Claude 必须主动检测并调用,例如出现“let's talk about X”“can you tell me about Y”这类表述,或用户从调试转向文档、从前端转向后端、从功能转向测试,或在持续讨论后开始处理不同模块、在 3 轮以上交流后转向完全不相关的话题。
- 不触发的情形:同一主题的追问(如“给那个函数加个注释”)、对当前工作的细微调整(如“改成蓝色”)、对当前任务的澄清。 Claude 需主动监控对话流,在主题实质变化时调用该技能,无需等待用户明确许可。
项目检测策略 主要依靠 Claude 的智能理解,而非机械解析文件。检测依据包括:当前工作目录与近期对话、会话中读取的文件、Git 仓库信息、包元数据(package.json、README.md 等)以及对项目整体含义的理解。可参考的证据有:Git 远程地址或仓库目录名、package.json 的 name 字段(Node.js 项目)、README.md 的首个标题、目录基名(最后手段)。例如 /Users/dylanr/work/2389/skills 可识别为「Skills Repository」,/Users/dylanr/projects/my-app 可人性化为「My App」。若无法判断上下文,回退使用当前目录名,且始终要包含一个有意义项目名。
使用方式(工作流)
- 确定项目名:综合对话与文件、Git 仓库名或远程 URL、package.json 的 name、README 首标题、目录基名,生成人性化名称。
- 获取主题:来自调用参数、当前对话上下文,会话启动时默认为「Claude Code」。
- 检测操作系统:通过 $OSTYPE 判断是否为 msys、win32、cygwin 以确定 Windows 或 Unix。
- 执行标题更新脚本(跨平台):
- Unix/Linux/macOS:bash <skill-base-dir>/scripts/set_title.sh "Project Name" "Topic"
- Windows:pwsh -NoProfile -ExecutionPolicy Bypass -File <skill-base-dir>/scripts/set_title.ps1 "Project Name" "Topic" 脚本负责读取表情符号($TERMINAL_TITLE_EMOJI 或 $env:TERMINAL_TITLE_EMOJI)、清理输入、格式化并发送终端转义序列。命令应通过 Bash 工具静默执行。
- 完成后静默继续响应用户,除非用户询问,否则不主动提及标题已更新。
所需权限 为避免每次提示授权,可在 ~/.claude/settings.json 中加入允许项:
- Unix/Linux/macOS:"Bash(bash skills/scripts/set_title.sh:)"
- Windows:"Bash(pwsh skills/scripts/set_title.ps1:)" 这是因为技能需要执行脚本,在后台静默发送终端转义序列来更新窗口标题。
跨平台与边界情况 插件同时包含 Unix 类系统的 bash 脚本与 Windows 的 PowerShell 脚本,SessionStart 钩子会自动检测系统并选用对应脚本。未设置 $TERMINAL_TITLE_EMOJI 时默认使用 🎉;项目名或主题过长时交由终端自然截断;主题为空时使用「Claude Code」作为默认值。
适用场景 适合在 Claude Code 会话中需要清晰区分项目与话题的开发者,尤其是经常在多个仓库、多个任务之间切换、希望终端标题持续反映当前工作重心的用户。
限制 该项目公开资料未提供关于收费、价格、性能指标等方面的信息,暂未提供。