用途:本技能用于读取和修改 MSU 状态栏显示的内容,仅适用于 Claude Code;状态栏是 Claude Code 的概念,换到其他 CLI 上该技能不起作用。
配置方式:所有设置集中在 ${CLAUDE_CONFIG_DIR:-$HOME/.claude}/msu-statusline.conf 一个文件里,按 KEY=value 每行一项书写。值开头或空白后的 # 表示注释,值中内嵌的 #(如 LABEL=C#Build)按字面处理;换行和注释用 # 无法通过加 shell 引号在值中表示。状态栏把该文件当数据读取,只解析认识的键、忽略其余内容,因此未知键是无害的而非错误,值也无需 shell 引号。
查看生效值:不要依赖记忆或文件,而是执行 bash "${CLAUDE_CONFIG_DIR:-$HOME/.claude}/msu-statusline.sh" --config,它会打印每个键当前生效的值。命令应通过启动器调用而非直接调用插件,因为插件路径带版本号、更新后会变化。注意写入值与生效值不同:解析器无法使用的值会被静默替换(如 ICON_CYCLE=5m 变 0、TIME=KST 变本地、COLOR=orange 变 none、MAX_WIDTH=80px 变 72),只有 --config 报告的是实际生效结果。
修改流程:先用 --config 查生效值、读 conf 文件查写入值;若启动器缺失或 --config 失败,应停止编辑并转 msu-statusline-install 修复。文件缺失属正常,脚本会报告默认值,首次编辑可创建文件。写回时保留用户注释与键顺序,新键追加;重复键编辑最后一次赋值。值按纯文本写入,如 NOTICE=off。要告知用户所有被拒绝的值,且只改用户要求的键。
ICON_CYCLE 是唯一能触及 settings.json 的键,仅设置对应字段、保留 statusLine 其余部分;refreshInterval 单位为秒、最小 1,添加前需询问。变更在下次渲染即生效,无需重启或清缓存。
限制:警告不可配置;关闭所有段会得到空行而非移除状态栏(移除需 msu-statusline-uninstall);MAX_WIDTH 只计算标题且在非 UTF-8 区域不生效;时间显示与站点不同(站点用 dayjs .utc() 格式化)。