# Doubao Pc Optimizer

> 用户需要清理磁盘垃圾、释放空间、处理电脑卡顿或开机慢、优化 Windows/macOS 性能、提升游戏帧率、生成安全清理脚本，或提到 C 盘满、磁盘空间不足、掉帧、运行慢时使用。

- Skill: `ahang1598/doubao-pc-optimizer` (Agent Skill, multi-file: 11 files)
- Install (CLI): `npx skillmds add ahang1598/doubao-pc-optimizer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ahang1598/doubao-pc-optimizer/raw
- Safety review: pending (external: skill-scanner FAIL, skillspector FAIL)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ahang1598 (https://skillmd.com/u/ahang1598)
- Updated: 2026-08-19
- Page: https://skillmd.com/skills/ahang1598/doubao-pc-optimizer

---


# 电脑清理与性能优化(doubao-pc-optimizer)

## 概述

帮助用户安全地完成电脑清理、游戏帧率优化和性能调优。核心原则:**先识别系统,再评估风险,征得许可后执行,所有系统级修改必须可回滚**。用户的电脑不是测试机——一次危险操作可能导致蓝屏、无法开机或丢失个人文件,而用户往往没有能力自行修复。宁可少清理 1GB,不可多删 1 个文件。

## 使用场景

当用户提到 C 盘满、磁盘空间不足、清理垃圾、电脑卡顿、开机慢、后台程序过多、游戏掉帧、帧率不稳、Windows/macOS 性能优化，或希望生成安全清理和优化脚本时使用。本 skill 不处理硬件选购、网络排障、账号问题、普通软件教程等与本机清理和性能调优无关的需求。

## 核心流程

无论用户的具体需求是什么,都按以下步骤进行:

0. **判断自己跑在哪里**:本地电脑环境还是云端沙箱(见下文"第零步")——云端沙箱里执行清理/优化毫无意义,流程完全不同
1. **识别系统**:确定操作系统品牌、版本、硬件配置(见下文"第一步")
2. **只读扫描与诊断**:收集信息、定位问题,此阶段不做任何修改
3. **给出方案并征得许可**:按风险分级展示将要做的事和影响,等用户确认。清理类方案必须附上**每一项的可释放容量预估和合计数字**("临时文件 2.8GB、更新缓存 3.1GB…合计约 12GB")——用户要先知道能腾出多少,再决定删不删
4. **执行并汇报**:执行已确认的操作,输出前后对比(释放空间、优化项清单),提供回滚方式

## 第零步:判断自己跑在哪里(本地电脑 or 云端沙箱)

你可能运行在两种环境:**用户的本地电脑**(你的命令直接作用于用户的机器),或**云端沙箱**(你的命令只作用于一个与用户电脑无关的临时容器)。清理/优化必须作用于用户的真实电脑才有意义——在云端沙箱里跑清理命令,除了浪费时间,还会让用户误以为自己的电脑被清理了,这是严重的误导。

**如何判断**:查看你的系统提示词/环境信息中是否有"MainAgent 运行在用户选择的本地电脑环境"或同义描述(如"本地电脑模式""直接操作用户电脑")。有 → 本地模式。没有此标记、或标明云端/沙箱/容器 → 按云端模式处理。拿不准时用行为验证:执行 `uname -a` 或探测系统——用户在说 Windows 的 C盘问题,而你探测到的是 Linux 容器,那你必然在云端沙箱里。

**本地模式**:按本 skill 的正常流程执行(第一步起)。

**云端模式**(不确定时也按此处理):

- **绝不**在沙箱里执行任何清理/优化/系统探测命令并把结果当作用户电脑的情况汇报——沙箱里的磁盘、进程、系统信息都与用户的电脑无关
- 回复的第一件事:告诉用户"当前运行在云端环境,无法直接操作你的电脑",**推荐用户切换到本地电脑模式**(重新发起任务时选择本地电脑环境),切换后就能直接帮忙执行
- 同时,本轮就把用户能自助完成的东西给足,不要只让用户去切模式:交付**可执行的 bat/ps1 脚本**(Windows)或 **bash 片段**(Mac)+ **手动操作说明**,让用户自己在电脑上运行。脚本按"脚本编写与交付规范"编写——这类脚本由用户双击/手动运行,结尾**应该**加 pause 以便用户看到结果,并附一句运行方法("右键→以管理员身份运行")
- 因为无法探测用户系统,严格遵守"探测不到就不盲写"规则:先交付 L0 探测脚本(如 win_scan.ps1)请用户运行后把输出贴回来,再基于真实结果给清理/优化脚本;或交付的脚本内置版本/硬件检测分支。L2 级修改脚本尤其不允许凭假设盲写
- 沙箱里仍然可以做的:阅读本 skill 的参考文件、编写和静态检查脚本、根据用户贴回的探测结果分析问题

## 第一步:识别系统(必做,决定后续一切)

不要假设用户的系统。同一条命令在 Windows 10 和 11、家庭版和专业版、Windows 和 macOS 上行为完全不同。执行任何操作前先跑只读识别命令。

### 判断当前 shell 环境

在 Windows 用户的机器上,你的命令执行工具底层通常是 **PowerShell 5.1**(不是 cmd,也不是 bash)。这是大量线上失败的根源,务必遵守:

- 不要用 `&&` 串联命令(PowerShell 5.1 不支持),用 `;` 或分开执行
- 不要用 `wmic`(新系统已移除),用 `Get-CimInstance`
- `start` 在 PowerShell 里是 `Start-Process` 的别名,参数与 cmd 的 start 完全不同;运行 .bat 用 `cmd /c "路径"`
- 不确定环境时先执行 `echo $PSVersionTable.PSVersion`——有输出即 PowerShell
- 运行内置 `.ps1` 时使用 `powershell -NoProfile -ExecutionPolicy Bypass -File "脚本完整路径"`;模板统一保存为 **UTF-8 BOM**,以兼容 Windows PowerShell 5.1
- **内置脚本解析或执行失败时立即停止当前流程**:读取报错所指的同一个文件和行号,核对实际文件是否为最新版及 UTF-8 BOM,修复后重新执行。扫描没有成功就不能声称已取得扫描结果,也不能绕过模板临时编写 BAT/PS1、直接执行清理或进入 L1/L2

### Windows 识别命令(只读、安全)

```powershell
# 系统版本:区分 Win10/Win11、家庭版/专业版、内部版本号
Get-CimInstance Win32_OperatingSystem | Select-Object Caption, Version, BuildNumber, OSArchitecture
# CPU / 内存
Get-CimInstance Win32_Processor | Select-Object Name, NumberOfCores, NumberOfLogicalProcessors
Get-CimInstance Win32_ComputerSystem | Select-Object TotalPhysicalMemory, Manufacturer, Model
# 显卡(注意:AdapterRAM 对 NVIDIA 显卡经常读不准,显存以 nvidia-smi 为准)
Get-CimInstance Win32_VideoController | Select-Object Name, DriverVersion
nvidia-smi --query-gpu=name,memory.total,driver_version --format=csv  # 仅 N 卡,失败则忽略
# 磁盘空间
Get-PSDrive -PSProvider FileSystem | Select-Object Name, Used, Free
```

版本判读要点:Build 22000+ 为 Windows 11;19041+ 支持 HAGS 硬件加速 GPU 计划;`Caption` 含"家庭/Home"则没有 gpedit.msc(组策略相关方案全部不可用,须走注册表或设置界面)。笔记本(Model 含 Laptop/本型号)要额外考虑散热和电源模式。

**探测不到就不盲写**:如果当前无法在用户机器上执行探测(未连接、命令持续失败),不要凭假设生成 L2 系统修改脚本。此时只能:交付 L0 探测脚本让用户先跑并回传结果;或交付的脚本内置版本/硬件检测分支(如 HAGS 修改前脚本内检查 Build),并向用户明确说明"此脚本基于假设 X,与你的系统不符时请先告诉我"。

### macOS 识别命令(只读、安全)

```bash
sw_vers                              # 版本:14=Sonoma, 15=Sequoia, 26=Tahoe
sysctl -n machdep.cpu.brand_string   # CPU;含 "Apple" 即 M 系列芯片
system_profiler SPHardwareDataType   # 内存、型号
df -h /                              # 磁盘空间
csrutil status                       # SIP 状态,永远不要建议用户关闭 SIP
```

Mac 用户的需求处理方式与 Windows 截然不同(没有C盘、没有注册表、几乎不需要"优化软件"),识别为 macOS 后读 `references/macos.md`。

## 风险分级与许可协议

所有操作分四级。向用户请求许可时,明确说出将做什么、影响什么、如何撤销:

| 级别 | 定义 | 许可要求 | 示例 |
|------|------|---------|------|
| L0 只读 | 不修改任何东西 | 无需确认,直接做 | 扫描磁盘、查看进程、读系统信息 |
| L1 安全清理 | 只删除可再生的缓存/临时文件 | 展示清理清单,一次确认 | 临时文件、缩略图缓存、Windows 更新缓存(注意:回收站/废纸篓**不在**默认清理范围,见下) |
| L2 系统修改 | 改变系统设置,可能影响其他功能 | 逐项说明影响+提供回滚,明确确认 | 电源计划、注册表项、禁用服务/启动项、结束进程 |
| L3 禁止 | 可能导致无法开机、蓝屏、数据丢失 | **任何情况下都不做**,用户坚持也要解释拒绝 | 见下方黑名单 |

### L3 黑名单(即使用户明确要求也不执行)

这些操作的共同点是:收益微小或为零,而失败后果是死机、无法开机或数据丢失,且普通用户无力自救:

- 修改启动配置:`bcdedit` 的任何写操作(useplatformclock、disabledynamictick 等"游戏优化偏方"实际收益存疑,写坏可直接无法开机)
- 删除或移动 `C:\Windows\System32`、`WinSxS`、`Program Files` 内文件;`DISM /ResetBase`(不可逆,阻断补丁卸载)
- 禁用关键服务:RpcSs、DcomLaunch、PlugPlay、Winmgmt、Power、CryptSvc、EventLog、Schedule、BFE、WinDefend(杀毒)
- 禁用/删除页面文件(虚拟内存);"注册表清理/瘦身"类批量删除注册表
- 结束关键进程:csrss、wininit、winlogon、services、lsass、smss、dwm、explorer(explorer 可重启但不要"结束不管")
- 超频、修改电压/功耗墙;绕过 UAC 的"静默提权"手段
- 替用户下载并运行第三方可执行文件(如 nvidiaProfileInspector、各类"优化器/加速器"exe)——注入式工具可能触发游戏反作弊封号,来路不明的 exe 有安全风险。确有必要时给出官方下载页,由用户自行下载安装
- 代用户关闭内存完整性/核心隔离(VBS/HVCI)等虚拟化安全功能,或**主动建议**用户关闭——关闭后恶意/有漏洞的驱动更容易攻击系统内核,且用户几乎不会记得改回来。仅当用户**主动问起**时如实说明利弊、建议优先更新冲突驱动、倾向保持开启;用户坚持要关的,给出设置路径由用户自己操作
- **主动建议**关闭/暂停任何杀毒实时防护(含 Defender)来提升性能——同上,不代关也不主动提。若杀毒扫描确实是卡顿源,引导用户在杀毒软件内为游戏设置白名单/游戏免打扰模式,而不是关防护(用户主动要求卸载自己装的第三方全家桶属软件卸载场景,不在此列)
- macOS:关闭 SIP、强制删除系统目录、手动清理内存缓存之外的内核参数修改
- 删除任何位于用户个人目录(桌面/文档/图片/下载/视频)的文件——即使看起来是垃圾。大文件只能"报告并建议",由用户自己决定

### 不可逆清理项特别规则(回收站/Windows.old/还原点)

这三类东西的共同点:删了就再也回不来,而它们恰恰是用户的"后悔药"。**默认都不清**;扫描时报告占用大小,在方案中单独列出并注明"清理后不可恢复";仅当用户明确提到,或对该单项明确确认后才执行。用户笼统说"清理垃圾/清理C盘/强力清理"不构成对它们的授权:

- **回收站/废纸篓**:用户误删文件的唯一自助恢复渠道
- **Windows.old**:回退旧系统版本的唯一途径(升级后 10 天内尤其重要);确认后也要走 cleanmgr/存储设置删除,不要 `rd /s /q` 强删(权限问题易删坏)
- **系统还原点**:见 windows-cleanup.md 进阶方案,默认保留最新一个

### L2 操作的回滚规范

做 L2 修改前,依次完成:1) 创建系统还原点(`Checkpoint-Computer`;注意 Win8+ 默认 24 小时内只允许创建一次,当日已建过会被系统跳过——这是正常限制,不要当作失败上报,注册表逐值备份仍然兜底);2) 修改注册表前记录每个值的原始状态(是否存在/类型/原值)——原来不存在的值,撤销时要删除而不是回写;3) 生成一个"撤销脚本"放在用户可见目录,并告诉用户位置。`scripts/win_game_boost.ps1` 已内置此流程,优先使用它而不是手写。其他 L2 操作(启动项、服务、休眠、视觉效果等)的现成撤销命令见 `references/windows-tuning.md` 末尾的"L2 撤销速查",执行时把对应撤销命令写进撤销脚本,不要临场手编。

## 任务路由

识别系统后,按用户需求读取对应参考文件(只读需要的,不要全读):

| 用户需求 | 参考文件 | 配套脚本 |
|---------|---------|---------|
| C盘满了、清理垃圾/缓存、释放磁盘空间 | `references/windows-cleanup.md` | `scripts/win_scan.ps1`、`scripts/win_clean.ps1` |
| 游戏帧率低/掉帧/不稳(三角洲、CSGO2等) | `references/windows-game-fps.md` | `scripts/win_scan.ps1`、`scripts/win_game_boost.ps1` |
| 电脑卡顿慢、开机慢、内存高、后台/启动项 | `references/windows-tuning.md` | `scripts/win_scan.ps1` |
| Mac 上的任何清理/优化需求 | `references/macos.md` | `scripts/mac_clean.sh` |
| 用户要求"生成 bat/脚本给我自己跑" | 对应上面的参考文件 + 下方"脚本交付规范" |  |

复合需求(如"清理垃圾并让游戏更流畅")按 清理 → 调优 → 游戏 的顺序执行,扫描只做一次。

## 脚本编写与交付规范

用户经常要求"写个 bat 一键清理"。无论是你直接执行还是交付给用户,都遵守:

- **优先 .ps1,其次 .bat**。必须用 .bat 时:文件开头加 `chcp 65001 >nul` 且以 UTF-8 保存,或者全英文输出——中文 + 编码不匹配会出现乱码和"不是内部或外部命令"错误
- 所有 `.ps1` 必须保存为 **UTF-8 BOM**(不是 UTF-8 无 BOM);Windows PowerShell 5.1 会把无 BOM 文件按系统本地代码页读取,中文可能破坏引号或括号并引发看似无关的语法错误
- **你要执行的脚本里绝不能有 `pause`** 或任何等待键盘输入的命令(会把你的执行工具挂起到超时)。交付给用户手动双击的版本才可以在结尾加 pause
- 需要管理员权限的脚本:用 `Start-Process powershell -Verb RunAs -Wait -ArgumentList "-ExecutionPolicy Bypass -File 脚本路径"` 启动,并让脚本把进度和结果写入日志文件(提权后的新窗口你看不到,靠读日志确认结果),UAC 弹窗要提前告知用户点"是"
- 多条需要确认的修改(如多个 reg add)合并进一个脚本、一次征得许可,不要逐条执行反复打断用户
- 脚本必须:只操作白名单路径、删除前统计大小、结束后输出"释放了多少空间/改了哪些项"
- 交付脚本时附一句话说明:右键"以管理员身份运行",以及这个脚本不会碰个人文件

`scripts/` 下的模板已按以上规范写好并内置白名单,**优先复制修改模板,不要从零手写**——线上大量事故来自现写脚本里的 pause、错误路径和编码问题。如果你修改或新增了脚本,先跑 `scripts/selfcheck.sh` 做静态自检(检查禁止模式与语法);清理和优化脚本在真机上先预演再实际执行(win_clean.ps1 加 `-DryRun`;mac_clean.sh 默认就是预演,加 `--execute` 才真正删除)。

## 与用户沟通

- 用户多为非技术用户,汇报用人话:"清理了 3.2GB 临时文件",而不是罗列命令输出
- 永远不承诺具体效果("帧率能到 144"),说"通常能改善战斗场景的掉帧"
- 扫描后先给方案再动手,方案里标注每项的风险级别;用户说过"直接执行"的,L1 可以直接做,L2 仍需把改动清单和回滚方式说清楚再做
- 结束时给出:做了什么、效果对比、撤销方法、1-2 条无法代劳的建议(如清灰、加内存条、游戏内设置截图发给你继续调)
- 硬件瓶颈要如实告知:集显玩 3A 游戏、8GB 内存开大型游戏,软件优化余地很小,直说比让用户反复折腾更负责

