不期而至🎁 惊喜礼盒
🎁 Surprise · 不定期 · 随缘更新


🎁 Surprise · 不定期 · 随缘更新
🎁 SURPRISE
谢谢你停在这里。愿你被温柔以待,也愿你带着一点勇气继续往前——这是我留给访客的小小礼物 🎀✨。
— threetwoa
(=;ェ;=) 客来不妨坐下,落叶声里续一壶茶;猫会自己找你。
走进数字花园
状态栏里的会话名从「排查 K12 503」变成「agent 评论」,又变成「工作 → 继续」——全程没人 /rename 过。翻会话记录才知道,Claude Code 一直在后台偷偷给会话起名,而且这个机制可以接管、可以定制,还能被一堆隐藏配置悄悄毁掉。
Claude Code 会在会话的 jsonl 记录里写一个 ai-title 事件,值是后台模型根据对话内容总结出来的 kebab-case 标题。它显示在输入框右侧的 chip 上,也会出现在 /resume 列表里。
/rename 会写一条 custom-title,优先级比自动标题高核心收获:会话标题 = custom-title(手动)优先,ai-title(自动)兜底,都在 jsonl 里能直接读写。想自动改名,往 jsonl 写一条 custom-title 就行。
既然标题是写 jsonl 就能改的,就顺手做了个 Stop hook:每轮对话结束,读你最新一句话,提炼成「给谁 → 干什么」的中文标题。
格式是 A→B:A 是对象(项目/工具),B 是这轮在干什么。实测效果:
| 你说 | 标题 |
|---|---|
| 给 Pi 换个主题 | Pi → 换个主题 |
| 沉淀记忆做成 hook | 记忆 → 做成hook |
| 给 Codex 装配新号池 | Codex → 装配新号池 |
| 把知识笔记发到博客 | 知识 → 发到博客动态 |
关键在「动词核心提炼」——抓动作+宾语,而不是整句截断。踩过的坑:
[Image: source:...] 会混进任务,标题变 [Image:source:C 这种鬼东西claude-hud/0.6.0 这种,对象变版本号Stop hook 还有几个规范坑:无 matcher(每次模型 stop 都触发),工具循环会高频触发所以要按 prompt_id 去重;hook 必须 exit 0 且别往 stdout 打印非 JSON,否则污染状态栏。
这是最阴的一个坑。CC Switch 切模型时,会用它数据库里的 provider 配置重写整个 ~/.claude/settings.json。自定义 hooks / statusLine 只写在 settings.json 里,切一次模型就没了。
机制分两层:
| 类型 | 行为 | 处理 |
|---|---|---|
| 纯 env 的 provider(gpt k12 等) | 生成 settings.json 走 settings 表的 common_config_claude | 把 hooks 注入这个通用配置 |
| 完整配置的 provider(DeepSeek 等) | 用自己的完整 config 覆盖 | 逐个补 hooks |
解法是直接改 cc-switch.db:common_config_claude + 所有含完整配置的 claude provider 都注入 hooks,切任何模型都带。改 DB 前先备份。
会话标题在状态栏里是最暗的一截——因为 claude-hud 用 label() 渲染它,默认色是 DIM 暗色。配置层没有 sessionName 独立色,colors.label 全局改又会让 Context、计数、时长全变亮,太花。
只能动源码:给 sessionName() 一个恒亮品红,两个渲染文件(compact 的 session-line 和 expanded 的 project-line)都换掉。插件更新会覆盖,得重打。
设计问题值得说:claude-hud 把「装饰性 slogan」做成最醒目的橙色,把「当前在哪个会话」做成最暗的灰色——视觉优先级整个反了。
这个主题的完整链路:会话名被自动改(发现)→ 做成 Stop hook(定制)→ CC Switch 防丢(保护)→ claude-hud 高亮(显示)→ 记忆 + blog 动态记录(留存)。每一步的坑都沉淀进了记忆,下次同类问题能直接想到。
经验:Claude Code 的自定义机制(hooks、statusline、自动命名)都绕不开「配置文件会被谁重写」这个问题。配完一套,记得想清楚它活在哪个配置层——settings.json 会变,cc-switch.db 的 common_config 才是 claude 的稳定底座。
复制链接或生成海报,发给感兴趣的人。

把上下文、额度、工具与子 Agent 钉在输入框下;Essential / Full / Minimal 怎么选,Usage 为什么会空白。
2026-08-11部分内容可能已过时
分享你的想法,与大家交流讨论
像发消息一样写就好:点工具栏插入表情 / 图片,表情会直接显示。插图 ≤5MB。
🎁 Surprise · 不定期 · 随缘更新
🎁 SURPRISE
谢谢你停在这里。愿你被温柔以待,也愿你带着一点勇气继续往前——这是我留给访客的小小礼物 🎀✨。
— threetwoa
有什么想了解的?
我基于博客内容回答