办公小浣熊 · 梦幻换肤(Raccoon Dream Skin)
给办公小浣熊本体换肤:通过本机 CDP(127.0.0.1)把主题 CSS 注入渲染进程。不修改任何官方文件、不碰 asar/签名,restore 一键还原。内置 6 套主题,支持现场调色。
内置主题(按用户需求推荐)
| 主题 ID | 名字 | 风格 | 得体度 | 适合 |
|---|---|---|---|---|
dream-pink |
梦幻粉紫 | 粉紫极光,氛围浓郁 | 活泼 | 想要氛围感、可爱风(默认) |
business-blue |
商务蓝 | 沉稳深蓝,极克制 | 商务 | 汇报/投屏/稳重单位 |
tech-gray |
科技冷灰 | 钢青灰,近乎素色 | 商务 | 极简党、怕花哨 |
ink-wash |
国风墨韵 | 宣纸暖白+黛青水墨 | 通用 | 雅致、国风爱好者 |
mint-fresh |
薄荷清新 | 自然绿,清透护眼 | 通用 | 久坐护眼、小清新 |
sunset-gold |
暖阳金橙 | 蜜桃金橙,温暖手账 | 通用偏活泼 | 暖色控 |
cyberpunk-neon |
赛博朋克 | 深夜蓝紫 + 霓虹洋红/电光青,唯一深色款 | 活泼 | 夜猫子、科幻控、暗色党 |
推荐逻辑:用户说"开会/给领导看/低调" → business-blue 或 tech-gray;"好看/可爱/氛围" → dream-pink;"雅/中国风" → ink-wash;"护眼/清爽" → mint-fresh;"温暖/秋天" → sunset-gold;"深色/暗黑/赛博/夜间" → cyberpunk-neon。拿不准就列出 7 套让用户挑。
重要须知(先读)
- 换肤需要应用以"调试方式"打开(带
--remote-debugging-port)。正常双击打开的应用没有这个通道,无法换肤。 - 绝不要强杀应用重启(
start-skin默认已不这么做)。强杀+立即重启在部分较新版本(如 0.7.82)上会引发启动抖动,卡在「启动本地服务失败 Invalid URL」。首选做法是一次性设成「永久换肤」(enable-always-channel.ps1),之后用户正常开应用即可换肤(见工作流 1.5)。 - 已在调试通道内时(切主题/换色/还原)无需任何重启,直接应用,几秒生效——这是最常见的顺畅路径。
- 执行
start-skin(应用已在通道内的场景)用脱离方式(detached),因其含最长约 40 秒校验轮询,同步等待会撞工具超时。
工作流
0. 判断应用是否已在调试模式
try { (Invoke-RestMethod "http://127.0.0.1:9333/json/list" -TimeoutSec 2) | Out-Null; "DEBUG_READY" } catch { "NOT_READY" }
DEBUG_READY→ 应用已在换肤通道内:直接第 2 步应用皮肤,秒级生效、无需任何重启(最常见的顺畅路径)。NOT_READY→ 应用不在通道内:走第 1.5 步「温和开通道」(切勿强杀重启)。
1. 选主题(或调色)
- 用内置主题:从上表选主题 ID。
- 用户要特殊配色:复制一份最接近的主题 CSS 到
assets\themes\<新名字>.css,按「自定义配色」改色,然后用新名字作为主题 ID。
1.5 应用不在通道内时:开通道(切勿强杀重启)
不要强杀应用(新版本上会卡「启动本地服务失败」)。推荐一次性设成「永久换肤」——之后用户像平时一样开应用就自带通道,再也不用管。这一步由技能自己完成,不需要用户下载任何东西。
首选 · 永久换肤(一次设置,永久免管)
先征得用户同意(例:"我把办公小浣熊设成'以后开应用就能随时换肤',会弹一次权限确认,点是就行,可以吗?")。同意后运行(detached;会弹 UAC,用户点「是」授权):
Start-Process powershell -ArgumentList '-NoProfile','-ExecutionPolicy','Bypass','-File','<本技能绝对路径>\scripts\enable-always-channel.ps1'
它把用户所有「办公小浣熊」启动图标都加上换肤通道(只改快捷方式、不碰应用本体、已存备份可还原;还原=加 -Revert 参数)。运行后原话告诉用户:
> 「已设好『永久换肤』。请你现在:① 彻底退出办公小浣熊(右键屏幕右下角托盘里的浣熊 → 退出)② 像平时一样双击图标打开它 ③ 打开后回我一声。以后正常开应用就能随时换肤,不用再做任何设置。」
用户重开后回到第 0 步检测;DEBUG_READY 即进第 2 步应用皮肤。
备选 · 只建一个「换肤版」图标(用户不愿改动现有图标时):改用 setup-launcher.ps1 建「换肤版」图标,引导用户完全退出后用它打开。
兜底 · 强制重启:仅当用户明确说"你直接帮我重启"时用 start-skin.ps1 -ForceRestart(小概率卡启动页,提醒点「重试」或重启电脑,不影响应用本体)。
2. 应用皮肤(应用已在通道内;detached,勿同步等待)
Start-Process powershell -ArgumentList '-NoProfile','-ExecutionPolicy','Bypass','-File','<本技能绝对路径>\scripts\start-skin.ps1','-Theme','<主题ID>' -WindowStyle Hidden
把 <本技能绝对路径> 替换为本 SKILL.md 所在目录,<主题ID> 替换为选定主题。脚本挂常驻注入守护(随页面切换自动保持皮肤)并自动校验。告诉用户几秒生效、可切换页面查看。
> 注:start-skin 默认不会强杀重启——若此时应用其实不在通道内,它只会提示用户走 1.5 的图标方式,不会硬重启。
3. 校验
powershell -NoProfile -ExecutionPolicy Bypass -File '<本技能绝对路径>\scripts\verify-skin.ps1'
退出码 0 = 生效(输出里 theme 字段显示当前主题);2 = 未生效(查 %LOCALAPPDATA%\RaccoonSkin\injector-error.log,参考 references/troubleshooting.md)。
4. 还原官方外观
powershell -NoProfile -ExecutionPolicy Bypass -File '<本技能绝对路径>\scripts\restore-skin.ps1'
即时移除皮肤、停守护,应用无需重启。此外,用户只要正常方式重开办公小浣熊(不带调试端口),本来就是 100% 官方原版。
自定义配色(用户要的颜色不在内置主题里时)
每套主题 CSS 结构相同(6 节),颜色用 HSL(格式 色相H 饱和S% 亮度L%):
| 想改什么 | 改哪里 |
|---|---|
| 品牌强调色(按钮/高亮/徽章) | 第 1 节 --purple(主)、--purple-light/dark、--sidebar-accent*、--link* |
| 主区四角氛围 | 第 3 节 main .bg-background-subtle.h-screen 的 radial-gradient |
| 侧栏渐变 | 第 4 节 linear-gradient |
| 吉祥物光晕 | 第 5 节 ::before |
| 设置弹窗氛围 | 第 6 节 [id^="radix-"] |
| 主题标记(勿删) | 第 1 节 --skin-theme: <主题ID>(改成新主题 ID) |
调色速查:粉紫≈315,蓝≈220,青≈180,绿≈150,橙≈30,金≈45。整体换色相时保持 S/L 不变、只平移 H 最协调。低调=渐变透明度(/ 0.x)降到 0.2~0.35;浓郁=0.4~0.6。深色强调色(绿/墨青)把 L 控制在 35~45% 保证白字可读。深色主题参考 cyberpunk-neon.css(需整体覆盖 --text-*/--bg-*/--sidebar-* 并做侧栏浅色文字修正)。
自定义主题防丢提醒:新建主题保存在本技能目录内,重新导入/更新技能会把它覆盖掉。为用户创建自定义主题后,主动提醒:想长期保留请备份该 css 文件(或告知你把它加进技能源里)。
守护边界(Guardrails)
- 绝不修改官方安装目录、
app.asar、二进制或签名;皮肤只存在于运行内存,卸载=删本技能目录。 - CDP 仅绑定
127.0.0.1,不对外开放;不读写用户账号、聊天数据。 - 装饰层不拦截点击(原生按钮/输入框照常可用);还原后零残留。
- 重启应用前必须获得用户明确同意;用户拒绝则告知可稍后再来。
- 办公小浣熊版本升级后若失效:重跑第 2 步通常即可;界面结构大改则按
references/troubleshooting.md排查选择器。
资源
assets/themes/*.css— 6 套内置主题(新主题=加一个 css 文件)scripts/start-skin.ps1— 启动/切换主题(-Theme <ID>,-List列主题;自动发现安装路径)scripts/restore-skin.ps1— 一键还原scripts/verify-skin.ps1— 校验(可选-ScreenshotPath截图)scripts/injector.mjs— CDP 注入器(--css指定主题文件)scripts/enable-always-channel.ps1— 永久换肤:把用户所有办公小浣熊启动图标加上换肤通道(自提权、存备份、-Revert还原)。首选方案。scripts/setup-launcher.ps1— 备选:建单独的「换肤版」启动图标(用户级,-Remove删除)scripts/install-skin.ps1— (可选)建桌面「启动皮肤/还原皮肤」快捷方式scripts/repair.ps1— 急救:应用打不开/卡启动失败时清理残留进程(不自动重启、不改文件)scripts/诊断.ps1— 只读诊断:在故障机运行,输出发回定位references/troubleshooting.md— 常见问题与排查(第 10 条=应用打不开)使用说明.md— 面向用户的图文说明