dsh-TUI 的樱花粉主题插件:三套主题pink-night / pink-day /…
31.9/100
综合分
3
GitHub 星标
97
npm 周下载
—/5
用户评分
数据截至 2026/10/17 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add dsh-tui-themenpm 源 · dsh-tui-theme 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · ui
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 21 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-tui-theme @ 0.7.5
✓Node 引擎要求 ^22.19 || >=24 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/11 06:56:21
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 8 处,展示前 8 条)
- 读取本地文件lib/types/statusLine.js:70
return statSync(join(dir, 'theme.json')).mtimeMs; - 读取本地文件lib/types/legacyNotice.js:49
return readdirSync(join(dir, 'themes')) - 读取本地文件lib/types/legacyNotice.js:63
return readFileSync(join(dir, NOTICE_FILE), 'utf8').trim() !== ''; - 写入本地文件lib/types/legacyNotice.js:74
mkdirSync(dir, { recursive: true }); - 写入本地文件lib/types/legacyNotice.js:75
writeFileSync(temporary, JSON.stringify({ themeRemovalNotifiedAt: Date.now() }, null, 2), { - 写入本地文件lib/types/legacyNotice.js:78
renameSync(temporary, path); - 删除本地文件lib/types/legacyNotice.js:82
rmSync(temporary, { force: true }); - 读取本地文件lib/types/themePref.js:36
const parsed = JSON.parse(readFileSync(join(dir, 'theme.json'), 'utf8'));
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-session@deepseek-ai/dsh-settings@deepseek-ai/schemastery@deepseek-ai/dsh-llm@deepseek-ai/dsh-agent@deepseek-ai/dsh-user-questions@deepseek-ai/dsh-user-approval@deepseek-ai/dsh-commands@deepseek-ai/dsh-atomic-write@deepseek-ai/dsh-tool-ask-user@deepseek-ai/dsh-skill给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 三套樱花粉主题
- 可选缓存背景应用
- 花符状态行与设置区块
展开完整介绍(98 字)↓
dsh-TUI 的樱花粉主题插件:三套主题(pink-night / pink-day / pink-ansi)、可选缓存背景应用、花符状态行与 /settings 设置区块。不注册快捷键或命令。
最近更新
在 GitHub 查看全部 →v0.8.02026-10-13
· 樱花粉主题已并入 dsh-TUI 内置预设
樱花粉三套(pink-night / pink-day / pink-ansi)已随上游 PR #1294 合并进 dsh-TUI 主线,并自 dsh-TUI v0.15.0 起作为宿主预置主题发布——/theme 里直接可选,调色板与主题键由上游维护。
本插件从 0.8 起不再携带主题文件,只保留花符状态行、/settings 卡片和一条一次性迁移提示。按需要选一条:
· 只要主题:卸载插件,并清理残留
0.7.x 写进 ~/.dsh-tui/themes/ 的粉主题文件已被内置同名主题遮蔽,留着只是死重量,建议一起清理:
dsh plugin --profile dsh-tui remove -w dsh-tui-theme
· POSIX:确认没有要保留的手改配色后(要保留先按 README「迁移要点」改文件里的 name)
rm ~/.dsh-tui/themes/pink-{night,day,ansi}.json
rm -f ~/.dsh-tui/theme-follow.json ~/.dsh-tui/theme-plugin-notice.json
· PowerShell(Windows):同上,可只删其中几个
dsh plugin --profile dsh-tui remove -w dsh-tui-theme
Remove-Item "$env:USERPROFILE\.dsh-tui\themes\pink-night.json",
"$env:USERPROFILE\.dsh-tui\themes\pink-day.json",
"$env:USERPROFILE\.dsh-tui\themes\pink-ansi.json"
Remove-Item "$env:USERPROFILE\.dsh-tui\theme-follow.json" -ErrorAction SilentlyContinue
Remove-Item "$env:USERPROFILE\.dsh-tui\theme-plugin-notice.json" -ErrorAction SilentlyContinue
⚠️ 别删 ~/.dsh-tui/theme.json——那是宿主记录你当前主题选择的文件;逐条说明见 README 的「旧主题文件清理」小节。
· 需要状态行:更新到 0.8.0
dsh plugin --profile dsh-tui add -w dsh-tui-theme@0.8.0
本版不带主题文件,只保留状态行(以及 /settings 卡片与迁移提示);主题继续由宿主内置提供,两边不会再抢名字、抢文件、抢调色板。
之后可能还会带来更多主题,感谢使用 🌸
· 新功能
· 迁移提示(src/legacyNotice.ts,走 tuiToast):发现 ≤0.7.x 留在 ~/.dsh-tui/themes/ 的 pink-*.json 时提示一次——那些文件在带内置樱族的宿主(≥ 0.15.0)上已不生效,手工调过色的文件请改名才能继续采用。提示送达宿主后才在 ~/.dsh-tui/theme-plugin-notice.json 记标记,此后不再重复;宿主还没有 toast 接缝(< 0.10)时看不到提示,插件每次启动静默重试、不打扰,等宿主升上来再提示一次。被提到的文件不会被删除或修改。
· 内嵌家族调色板(src/palette.ts):富状态视图改用包内嵌的三个色值(家族 accent / inactiveShimmer / subtle,与宿主内置樱族逐键一致)。宿主没有向插件公开「当前调色板」的查询接缝,这是插件唯一持有的颜色来源;非粉主题一律不着色。
· 变更(破坏性)
· 移除三套主题:不再有 themes/、运行时注册(ctx.tuiThemes)、静态安装(~/.dsh-tui/themes/)与损坏文件自愈。樱族已随上游 PR #1294 并入 dsh-TUI 主线(2026-10-12,merge 4f4980fe)并于 0.15.0 发版,其内置的 pink-night / pink-day / pink-ansi 优先于任何同名静态文件,插件侧继续注册只会被整份拒绝。
· 移除缓存背景跟随(followSystem)与 autoInstallThemes:该功能只为在昼樱/夜樱之间切换而存在;~/.dsh-tui/theme-follow.json 从此无人读取,可自行删除。
·
v0.7.52026-10-10
· 新功能
· 无。本版承接 v0.7.4 已落地的 chrome 主题键(底栏五段 contextBar*、点火 ignition/ignitionDim),把光标一处的偏差收齐——0.7.4 发布约一小时后即被本版取代,请直接用 0.7.5。
· 修复
· 输入光标回到宿主的反色块:0.7.4 给三套调色板写了实心 cursor(粉块),而上游内置樱族(PR #1294)用空串 = 反色块。空串不能照抄——它在描述符边界是非法颜色(运行时准入会整份拒绝该描述符、三套主题一起消失;静态文件路径则逐键告警并跳过)。正解是不声明这个键:宿主按 {...getTheme(base), ...colors} 解析,缺的键落回 base 主题的 "",观感与上游内置完全一致。三套调色板因此 103 → 102 键。
· README 截图全部重拍(dsh-TUI 0.14.0 + 本插件 v0.7.5 实拍):昼樱、夜樱与 /settings 卡片,替换掉 0.9.2/0.9.3 时代、chrome 元素还是宿主写死配色的旧图。
· README 的「宿主硬编码、主题覆盖不到的部分」整节移除:其中五项已随 #1260 进主题键,剩余项属上游实现细节而非主题用户需要规避的东西,顶栏像素鲸鱼也不再提及。清单本身留档在 docs/tasks/20261010-161500-v074-chrome-keys-and-host-gate.md 与 git 历史里。
· 兼容性
· 与 v0.7.4 相同:宿主 ≥ 0.14.0 拿到含 7 个 chrome 键的完整调色板(102 键);=24、dsh-TUI 下限 0.8.8 均与 0.7.4 一致。
· ⚠️ 上游 #1294 仍未合并:pink-* 尚未进宿主保留名;合并后需按 REVIEW.md 的 R-017 处理(插件运行时注册会被整份拒绝)。
· 安装 / 升级到本版
· 已装过本插件:重跑同一条命令即可升级(0.7.4 → 0.7.5)
dsh plugin --profile dsh-tui add -w dsh-tui-theme@0.7.5
· 验证
· npm run release:check:构建 + verify(31 场景)+ 包清单(59 文件)+ verify:peers + verify:settings(真实 dsh-settings@0.2.0-rc.1 的 19 条投影断言)全绿。
· npm run verify:host(零配置宿主 0.14.0):headless order、runtime themes、toast、设置相位、主题校验(OK host theme validation: 3 themes, 81 contract keys (userMessageBackground, cursor left to the base palette), settings colors covered)全绿。
· 机制证据(0.14.0 自带解析器实测):删掉 cursor 后 parseCustomTheme accepted、buildTheme().cursor === "";显式写空串则告警 invalid color value for "cursor" … skipped;描述符类型 TuiThemeDescriptor['colors'] 为 Partial>,validateDescriptor 只校验出现过的键。
· node probes/compare-preset-palettes.mjs:exit 0(240 个键值一致;cursor 不再是差异,脚本新增守卫「上游该键一旦不再是空串即报错」)。
· 本机真机闭环:profile 换装 packages/dsh-tui-theme-0.7.5-local.2c55d82.tgz(受管安装 exit 0),--dump-config 无 skipping profile bundle;新实例(宿主 0.14.0)实拍三张截图,输入框光标实测为反色块(#383A42 = 主题 ink 反色)、❯ 前缀取到主题 ignition(#B03A63),底栏与状态行配色正常。
v0.7.42026-10-10
· 新功能
· 三套调色板补齐上游契约的 8 个 chrome 键:底栏上下文进度条五段(contextBarSystem / contextBarPrompt / contextBarAssistant / contextBarThinking / contextBarTools)、思考档点火对(ignition / ignitionDim)与输入光标填充(cursor)。取值与上游 dsh-TUI PR #1294 的樱族内置预设逐键一致(probes/compare-preset-palettes.mjs 复核 243 个键值),因此宿主内置樱族前后观感连续;cursor 是唯一有意的形态差异——宿主内置用空串走反色块,而插件的运行时描述符不接受空串(空值会被判定为非法颜色、整份拒绝),故三套均给实心填充色。
· 宿主版本门(src/hostContract.ts):插件读取已安装宿主的 package.json 版本,= 0.14.0 拿到全键调色板。dsh-TUI 0.8.8 的下限、dsh-settings 两代支持、peer 段覆盖范围均未变。
· ⚠️ 上游 #1294 仍未合并:pink-night / pink-day / pink-ansi 尚未进入宿主的内置主题名。一旦合并,宿主会把这三个名字列入保留名,插件的运行时注册会被整份拒绝(REVIEW.md R-017)——后续版本需要按「跳过宿主已内置的名字」或改名处理。
· 验证
· npm run release:check:构建 + verify(31 个场景,新增「chrome-key gate」与「静态资产随门降级」两组)+ 包清单(59 文件)+ verify:peers + verify:settings(真实 dsh-settings@0.2.0-rc.1 的 19 条投影断言)全绿。
· npm run verify:host(零配置、宿主 0.14.0):headless order、runtime themes(host chrome keys: carried by the contract)、toast 相位、设置相位、宿主主题校验(81 键契约、3 套 × 80 键、零告警)全绿。
· 老宿主端到端复核(真 0.13.0 安装树):runtime-themes-headless.mjs → host chrome keys: predate the contract (withheld) + OK runtime themes: 3 registered, no static files, ledger create/release, disposal clean;validate-themes-against-host.mjs → validating the withheld (pre-0.14.0) form + OK host theme validation: 3 themes, 72 keys each;headless-order-test.mjs exit 0。反向对照:把版本门钉成「支持」后同一棵树立刻以 [] ≠ [pink-ansi, pink-day, pink-night] 失败,即门确实挡住了「三套主题一起消失」。
· 降级产物逐字节等于 v0.7.3 资产(git show HEAD~1:themes/pink-{night,day,ansi}.json 对比,三套全等),因此老宿主的静态路径零「未知颜色键」告警。
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。
README
由 DeepSeek 最新模型翻译生成dsh-tui-theme 🌸
dsh-TUI 的花符状态行插件:输入框上方一行 ✿ · 时钟 · 轮数,外加一个 /settings 可编辑区块与一条一次性迁移提示,全部走官方接缝,不注册快捷键或命令。
0.8 起本插件不再提供主题。 樱花粉三套(pink-night / pink-day / pink-ansi)已移交上游:上游 PR #1294 已于 2026-10-12 合并进 dsh-TUI 主线(merge 4f4980fe),并自 dsh-TUI 0.15.0 起作为宿主内置预设发布,调色板与主题键由上游维护;本包只保留非主题的装饰部分,也就不会再与内置主题抢名字、抢文件或抢调色板。宿主 < 0.15.0 时粉主题名只能来自 0.7.x 留下的旧主题文件(见「迁移要点」),那些宿主上全新安装拿不到粉主题名,需要主题本身时请继续用 dsh-tui-theme@0.7.5。
安装、更新与卸载
樱花粉三套(pink-night / pink-day / pink-ansi)自 dsh-TUI 0.15.0 起由宿主内置(上游 PR #1294 已合并并发版,/theme 里直接可选),调色板与主题键由上游维护。
展开完整文档(README 剩余 1 节)
dsh-tui-theme 🌸
dsh-TUI 的花符状态行插件:输入框上方一行 ✿ · 时钟 · 轮数,外加一个 /settings 可编辑区块与一条一次性迁移提示,全部走官方接缝,不注册快捷键或命令。
0.8 起本插件不再提供主题。 樱花粉三套(pink-night / pink-day / pink-ansi)已移交上游:上游 PR #1294 已于 2026-10-12 合并进 dsh-TUI 主线(merge 4f4980fe),并自 dsh-TUI 0.15.0 起作为宿主内置预设发布,调色板与主题键由上游维护;本包只保留非主题的装饰部分,也就不会再与内置主题抢名字、抢文件或抢调色板。宿主 < 0.15.0 时粉主题名只能来自 0.7.x 留下的旧主题文件(见「迁移要点」),那些宿主上全新安装拿不到粉主题名,需要主题本身时请继续用 dsh-tui-theme@0.7.5。
安装、更新与卸载
樱花粉三套(pink-night / pink-day / pink-ansi)自 dsh-TUI 0.15.0 起由宿主内置(上游 PR #1294 已合并并发版,/theme 里直接可选),调色板与主题键由上游维护。本插件从 0.8 起不再携带主题,只保留花符状态行,按需要选一条:
只要主题 —— 本插件不必安装;已装过 0.7.x 的请卸载,并清理当年写下的主题文件(已被内置同名主题遮蔽,留着只是死重量):
dsh plugin --profile dsh-tui remove -w dsh-tui-theme
POSIX:确认没有要保留的手改配色后(要保留先按「迁移要点」改文件里的 name)
rm ~/.dsh-tui/themes/pink-{night,day,ansi}.json
rm -f ~/.dsh-tui/theme-follow.json ~/.dsh-tui/theme-plugin-notice.json
PowerShell(Windows):同上,可只删其中几个
dsh plugin --profile dsh-tui remove -w dsh-tui-theme
Remove-Item "$env:USERPROFILE\.dsh-tui\themes\pink-night.json",
"$env:USERPROFILE\.dsh-tui\themes\pink-day.json",
"$env:USERPROFILE\.dsh-tui\themes\pink-ansi.json"
Remove-Item "$env:USERPROFILE\.dsh-tui\theme-follow.json" -ErrorAction SilentlyContinue
Remove-Item "$env:USERPROFILE\.dsh-tui\theme-plugin-notice.json" -ErrorAction SilentlyContinue
⚠️ 别删 ~/.dsh-tui/theme.json——那是宿主记录你当前主题选择的文件。清理命令的逐条说明见下面的「旧主题文件清理」。
需要状态行 —— 安装或更新到本版(不带主题文件):
dsh plugin --profile dsh-tui add -w dsh-tui-theme@0.8.0
之后可能还会带来更多主题,感谢使用 🌸
0.8 变更(升级前请读)
| 0.7.x 的能力 | 0.8 的状态 |
| 三套粉主题(运行时注册 / 静态安装) | 移除。宿主内置同名主题后,其优先级高于任何同名 ~/.dsh-tui/themes/.json |
| 缓存背景跟随(followSystem) | 移除(该功能只为在昼樱/夜樱间切换而存在) |
| 旧主题文件遮蔽检测 + 清理对话框 | 移除;改为一次性 toast 提示(见下) |
| 花符状态行(含富状态视图配色) | 保留,配色改为包内嵌的家族三色(src/palette.ts) |
| /settings 里的 dsh-tui-theme 区块(0.7.x 名为 pink-theme) | 保留,只剩「状态行」一组字段 |
| toast 通道 | 保留,用于上面那条迁移提示 |
迁移要点:
- 插件不再写入 ~/.dsh-tui(唯一例外是迁移提示的标记文件 theme-plugin-notice.json:发现旧主题文件、且提示确实送达宿主后才写一次)。插件只读宿主的 theme.json 判断当前主题。
- 0.7.x 装过的 ~/.dsh-tui/themes/pink-.json 等文件不会被删除。宿主已内置樱族时(dsh-TUI ≥ 0.15.0)它们不再生效(内置优先于同名文件);0.15.0 之前的宿主仍把这些文件当静态主题解析,从 0.7.x 升上来的用户照旧可用。
- 如果你手动改过这些文件的配色:要改的是文件里的 name 字段(宿主按它去重,文件名只是标签)。只把 pink-night.json 改名成 my-pink.json 而 name 仍是 pink-night,/theme 列表里不会出现它,选中 pink-night 拿到的仍是内置调色板——等于没改(实测)。把 name 改成别的粉外名(建议 displayName、文件名一起改成 my-pink),再到宿主 /theme 里选中它,内置才会让位给你这一份。注意状态行展示范围 statusScope 默认是 pink-only,只认 pink- 三个名字——换名后请到 /settings 把「状态行展示」改成「所有主题」,否则状态行会消失。
- 发现旧主题文件后会发一条中性 toast 提示;提示送达宿主后才记标记、之后不再重复。宿主还没有 toast 接缝(< 0.10)时看不到提示:插件当次启动静默重试,下次启动再试,不打扰也不放弃——等宿主升上来,提示照常出现一次。被提到的文件不会被动过。
~/.dsh-tui/theme-follow.json 已无人读取,可自行删除。
能力一览
| 能力 | 接缝 | 说明 |
| 花符状态行 | tuiStatus | 输入框上方一行装饰:✿ · 时钟 · 实时轮数;默认仅在内置樱花粉主题下显示 |
| 富状态视图 | tuiStatus.registerView(≥ 0.10.1) | 一行 React 视图,用包内嵌的家族调色板上色;旧宿主自动回退到无色标量行 |
| 设置面板 | tuiSettingsSections | /settings 里一个可编辑区块(花符 / 花符字符 / 时钟 / 轮数 / 分隔符 / 展示范围),保存即时生效 |
| 迁移提示 | tuiToast(≥ 0.10.0) | 发现 ≤0.7.x 留下的 pink-.json 时提示,送达后不再重复;无接缝的旧宿主静默重试、不报错 |
明确不做的事:不注册快捷键、不注册或修改命令、不拦截输入、不追加会话事件、不注入 system prompt、不安装或注册任何主题文件。
快速开始
更新到本版(0.8 起不带主题文件,只保留状态行;主题由宿主内置提供)
dsh plugin --profile dsh-tui add -w dsh-tui-theme@0.8.0
本地 tarball 安装(开发 / 自用):
cd /path/to/dsh-tui-theme
npm run build
npm pack
dsh plugin --profile dsh-tui add -w ./dsh-tui-theme-0.8.0.tgz
不要以本地源码目录作为依赖安装:其开发 node_modules 可能与 dsh-TUI 宿主解析出不同的 Cordis/DSH framework instance,插件会无法注册服务。
装好后状态行只在樱花粉主题下出现;想在任何主题下都显示,把 /settings 里的「状态行展示」改成「所有主题」(那里不上色)。
配置
优先级:/settings 用户层 > cordis.yml 配置层 > 内置默认值。在 /settings 里找到 dsh-tui-theme 区块:
| 字段 | 默认 | 说明 |
| showGlyph | true | 花符开关:开 = 以花符开头,关 = 不显示 |
| statusGlyph | ✿ | 花符字符:1–2 个显示单元、不接受控制字符,留空恢复默认 |
| showClock | true | 显示 HH:MM 时钟 |
| showTurns | true | 显示当前会话轮数(N✦,自本次启动起计) |
| statusSeparator | · | 各段之间的分隔符,校验规则同花符字符 |
| statusScope | pink-only | 状态行展示:pink-only 仅内置樱花粉主题 / all-themes 所有主题(非粉主题下无色) |
三项装饰(花符 / 时钟 / 轮数)全关时状态行整体消失。另有仅 profile 层的开关(写在 cordis.patch.yml,不出现在 /settings):statusEnabled。
上表就是本插件的可编辑面:卡片字段与 src/liveConfig.ts 的 LIVE_CONFIG_KEYS 逐键相等,由 npm run verify 双向断言。
截图
/settings 里 0.7.x 卡片的「状态行」分组(实测于 dsh-TUI 0.14.0 + 插件 v0.7.5):图中标题里的 pink-theme 是 0.7.x 的卡片名(0.8 起为 dsh-tui-theme);这一屏的六项与 0.8 的卡片一致,0.7.x 的「背景跟随」组(含 followSystem)在 0.8 已整组移除,所以 0.8 的卡片只有这一个组。
dsh-tui-theme 设置区块
迁移提示(toast)
插件日志对 TUI 用户不可见,因此唯一值得知道的事件走宿主 toast(≥ 0.10.0 的 tuiToast 接缝,纯输出、不拦截任何输入;旧宿主没有该接缝,自动静默):
| 事件 | 提示 |
| 发现 ≤0.7.x 留下的 pink-.json | ✿ 发现旧主题文件 …:dsh-TUI 若已内置同名粉主题则优先于它;改过配色请改文件里的 name,并把状态行展示改为「所有主题」(pink-only 只认 pink-) |
提示只在确实送达宿主后记一次(标记文件 ~/.dsh-tui/theme-plugin-notice.json)。宿主还没有 toast 接缝(< 0.10)时每次都静默重试、不打扰:等宿主升到带该接缝的版本,提示才出现一次,之后不再重复。只点名插件当年装过的那三个文件名——你自己建的主题文件永远不会被提及。插件不会删除或修改这些文件。
状态行与主题的关系
- 状态行是装饰:宿主负责渲染、截断与清理,插件只提交标量文本或一行组件。
- 可见性判定沿用宿主自己的主题优先级:DSH_TUI_THEME 环境变量 > ~/.dsh-tui/theme.json 持久选择(宿主 0.14.0 起还多一层品牌默认档,可以盖过 theme.json,见「兼容性」)。因此插件只知道“当前主题名”,不缓存调色板;pink-only 判据就是那三个内置名。
- 配色来自 src/palette.ts 里内嵌的三个色值(家族 accent / inactiveShimmer / subtle,与宿主内置樱族逐键一致)。宿主没有向插件公开“当前调色板”的查询接缝(运行时主题服务只收注册、不回读),所以这是插件唯一持有的颜色来源;非粉主题一律不着色。
- 标量行在旧宿主上由宿主统一以无色 + dim 渲染,插件无法控制颜色——这是宿主行为,富状态视图(≥ 0.10.1)正是为了绕开它。
- 插件不安装、不注册、不修补任何主题文件,也不修改 theme.json(那是宿主的用户偏好)。
卸载
移除插件
dsh plugin --profile dsh-tui remove -w dsh-tui-theme
旧主题文件清理(卸载前后都适用)
~/.dsh-tui/themes/pink-.json 是宿主的用户数据,插件不会替你删除(0.8 起只发一条一次性提示,也不改写它们),卸载更不会动它们。宿主内置樱族后这三个文件不再生效,留着只是死重量,且宿主目前不会对此作任何提示——清理只能手动做:
POSIX:确认没有要保留的手改配色后(要保留先按「迁移要点」改 name)
rm ~/.dsh-tui/themes/pink-{night,day,ansi}.json
rm ~/.dsh-tui/theme-follow.json
rm ~/.dsh-tui/theme-plugin-notice.json
PowerShell(Windows):同上,可只删其中几个 Remove-Item "$env:USERPROFILE\.dsh-tui\themes\pink-night.json", "$env:USERPROFILE\.dsh-tui\themes\pink-day.json", "$env:USERPROFILE\.dsh-tui\themes\pink-ansi.json" Remove-Item "$env:USERPROFILE\.dsh-tui\theme-follow.json" -ErrorAction SilentlyContinue Remove-Item "$env:USERPROFILE\.dsh-tui\theme-plugin-notice.json" -ErrorAction SilentlyContinue
theme-follow.json(0.7.x 的背景跟随缓存)与 theme-plugin-notice.json(本插件的迁移标记)都不是主题,删掉只是丢一点历史状态。别把 theme.json 一起删——那是宿主记录当前主题选择的文件。
兼容性
- dsh-TUI 下限 0.8.8(状态行与设置面板,0.9.3 实测)。0.10.1 起状态行走富状态视图按内嵌调色板上色,更旧宿主自动回退无色标量行;缺 dsh-tui-extensions 扩展面的宿主自动静默降级,不报错。
- 主题由宿主提供:pink-night / pink-day / pink-ansi 自 dsh-TUI 0.15.0 起随宿主内置(上游 PR #1294 维护调色板与主题键),本包不再携带。pink-only 判据只是主题名,不检查宿主是否内置:三个名字取自 DSH_TUI_THEME 或 ~/.dsh-tui/theme.json——在 ≥ 0.15.0 的宿主上与内置名天然一致。宿主 < 0.15.0 时:从 0.7.x 升上来、~/.dsh-tui/themes/pink-.json 还在的用户照常显示(宿主仍把那些文件当静态主题解析);只有「未内置 + 没有这些旧文件」的全新安装拿不到粉主题名,pink-only 下状态行不会显示——此时改用 statusScope: all-themes,或继续使用 dsh-tui-theme@0.7.5。
- 宿主 0.14.0 起多一层「品牌默认档」,可以盖过 theme.json:没有显式 theme prop 或 DSH_TUI_THEME 时,宿主按品牌(DSH_TUI_BRAND / 设置项 dsh-tui.brand)选 claude-dark/claude-paper(claude)或 codex-lavender/codex-paper(codex),且不对 theme.json 加锁。此时宿主渲染的是品牌主题,而插件仍按 theme.json 里的名字判定:那里若还是 pink-,✿ 行照常显示并按樱族上色,与宿主实际渲染不一致——纯观感偏差,不会崩溃。默认品牌 deepseek 不在品牌表内,本插件也不读品牌设置:这是有意接受的一处偏差。
- dsh-settings 两代都支持:≤ 0.1.6(dsh-TUI 0.9.x/0.10.x)走插件注册命名空间 + scope.watch;≥ 0.1.7(dsh-TUI 0.11+)走 Config volatile 字段投影 + loader/volatile-update 重读。判定按能力探测,不解析版本号;两条路径的失败都写日志而不是静默。
- dsh 运行时 0.2.0-rc.1 起有启动期 peer 校验:宿主读 bundle 的 peerDependencies,把 @deepseek-ai/dsh / @deepseek-ai/dsh- 段与运行时版本比对,不匹配就跳过整个 bundle(stderr 提示 skipping profile bundle)。本插件的 peer 段覆盖 0.1.0-rc.6–0.1.x 与 0.2.0-rc.1–0.2.x(自 v0.7.3 起,新世代写作 ^0.2.0-rc.1),因此 0.2 宿主正常加载。宿主校验固定用 includePrerelease 语义,故 0.2 线的预发布档同样放行。
- Node ^22.19 || >=24,纯 ESM,MIT。
开发
npm install --include=dev # 本仓不提交 lockfile,务必带 --include=dev
npm run build
npm run verify
npm run verify:package
安装前提、验证脚本参数(verify:settings / verify:host)、CI 门禁与内嵌调色板的维护方式见 docs/development.md。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
xiaoxiaohaigui/dsh-tui-theme
dsh-TUI 的樱花粉主题插件:三套主题pink-night / pink-day /…
相关插件 · UI / 主题
破甲增强版JeffKeeping/dsh-purge-plus
dsh-purge 的非官方分支fork:适配 DeepSeek Harness 0.2.1-rc.2、破甲内核…
★ 387已汉化DeepSeek 客户端
71.9
无代码业务系统平台nocobase/nocobase
NocoBase 是什么
★ 24,804已汉化DSH
71.8
1Panel 服务器面板1Panel-dev/1Panel
全球 250 万+ 自托管用户共同喜爱。
★ 37,350已汉化DSH
71.5
工作状态行动态ccch1mneyyy/working-activity
作者:chimney@ccch1mneyyy。社区项目,非 DeepSeek 官方项目。
★ 664已汉化DSH
71.2
多模型配置管家farion1231/cc-switch
跨平台桌面一体化助手,支持 Claude Code、Codex、OpenCode、DeepSeek Harness 等工具,唯一官网 ccswitch.io
★ 151,506已汉化DSH
71.1
AI 矢量设计工具ZSeven-W/openpencil
全球首个 AI 原生开源矢量设计工具。
★ 7,027已汉化DSH
71.1
这是你的仓库?认领条目