Windows 디블로트
이 스킬은 지저분한 개인 Windows PC를 사용자가 소중히 여기는 데이터를 잃지 않으면서 깔끔한 머신으로 바꿉니다. 대부분의 요청은 모호하고 감정적입니다("나쁜 건 다 없애줘, 필요 없는 건 다 지워줘"). 당신의 임무는 이를 사용자가 승인한 구체적인 목록으로 바꾸고, 안정적으로 실행하며 결과를 증명하는 것입니다.
두 가지 중요한 규칙이 있습니다. 이 머신의 개인 파일은 다른 곳에 복사본이 존재하기 전에는 절대 삭제되지 않습니다. 사용자가 목록을 확인하기 전에는 아무것도 제거되거나 삭제되지 않습니다.
워크플로우
1. 조사 (읽기 전용)
번들로 제공되는 조사 스크립트를 실행합니다. 이 스크립트는 아무것도 변경하지 않습니다:
powershell -NoProfile -ExecutionPolicy Bypass -File <skill-dir>/scripts/survey.ps1
이 스크립트는 디스크, RAM, CPU, 관리자 권한 여부, 사용자 폴더(Desktop/Documents/Downloads 내 가장 큰 항목 포함) 크기, 임시 파일 및 업데이트 캐시 크기, 시작 항목, 크기를 포함한 설치된 Win32 앱, 스토어 앱, 메모리를 가장 많이 사용하는 프로세스를 보고합니다. 결과를 읽고 references/bloat-catalog.md의 그룹으로 분류하세요.
2. 한 번에, 그룹별로 질문
갖춰진 도구가 있다면 객관식 질문 도구를 사용하여, 일반 언어로 각 항목의 중요성을 사용자가 이해할 수 있도록 크기와 RAM 수치를 포함하여 질문하세요. 다음 항목을 다루고 각각에 대한 기본값을 추천하세요:
- 개인 파일. 하나의 보관 폴더(
C:\Archive\<YYYY-MM-DD>\)로 이동(기본값: 동일 드라이브 내에서 즉시, 데이터 손실 없음), 압축, 또는 나중에 사용자가 아카이브를 머신 밖으로 복사한 후 삭제하도록 선택할 수 있습니다. - 앱 그룹. 용량이 큰 서드파티 블로트웨어; Windows/OEM 블로트웨어; 개인 앱(채팅, 게임, 에뮬레이터, VM); 개발 도구. 서버 또는 에이전트 머신의 경우 에이전트 호스트에는 Git, Node, Python, 편집기, JDK가 필요하므로 기본적으로 개발 도구를 유지하세요. 사용자가 명시적으로 요청할 때만 제거합니다.
- 시작 프로그램. 필수적이지 않은 모든 항목을 비활성화하거나 OneDrive와 같은 클라우드 동기화는 유지합니다.
사용자가 "최대 에이전트 / 스웜 사용"을 요청하면 Windows 설치 프로그램이 서로를 잠근다(MSI 오류 1618)는 점을 간략히 설명하고, 따라서 제거는 하나씩 순차적으로 실행되어야 함을 알립니다. 읽기 전용 조사만 병렬로 수행할 수 있습니다.
3. 개인 파일 보관
같은 볼륨 내에서 Move-Item을 사용하세요. 이는 이름 바꾸기와 같습니다: 즉시 수행되며 파일은 그대로 유지됩니다. .lnk 바로 가기와 desktop.ini는 그대로 둡니다. 이동된 항목과 실패한 항목의 개수를 세어 보고합니다. 사용자가 다른 곳(USB, 클라우드)에 복사본이 있다고 확인하지 않는 한 아카이브를 머신에 보관하세요. 그런 경우에만 삭제를 제안하고, 삭제는 되돌릴 수 없으므로 먼저 확인을 받으세요.
4. 정크 청소 (스스로를 해치지 않도록)
%TEMP%에서는 1일보다 오래된 항목만 삭제하고,claude폴더 또는 자신의 스크래치패드 아래에 있는 항목은 건너뜁니다.%TEMP%전체를 지우면 에이전트 자신의 작업 파일(실행하려는 스크립트 포함)이 삭제될 수 있습니다.C:\Windows\Temp및C:\Windows\SoftwareDistribution\Download는 관리자 권한이 필요하므로 상승된 배치(6단계)에 포함하세요.- 휴지통은 사용자가 동의하는 경우에만 비웁니다.
5. 시작 프로그램 정리 (백업 포함)
Run 키 값을 제거하기 전에 <archive>\startup-backup.txt 파일에 이름 = 명령 형식으로 기록하여 사용자가 나중에 누락된 항목을 복원할 수 있도록 하세요. HKCU Run 항목은 관리자 권한 없이 작동하며, HKLM Run 항목은 상승된 배치에 포함됩니다. SecurityHealth(Windows 보안) 또는 오디오/디스플레이 드라이버 항목은 절대 건드리지 마세요.
6. 제거
다음 순서대로 수행합니다:
-
스토어 앱 (관리자 권한 불필요): 각 앱에 대해
Remove-AppxPackage를 실행합니다. 오류0x80073CFA는 시스템 보호 앱을 의미하므로 보고하고 넘어갑니다. -
사용자별 Win32 앱 (관리자 권한 불필요):
HKCU에 등록된 앱(Discord, 사용자별 Electron 앱)입니다. 먼저 해당 프로세스를 중지한 다음QuietUninstallString을 실행합니다. -
머신 전체 앱 (관리자 권한 필요):
scripts/elevated-uninstall.ps1스크립트를 사용하세요. 이 스크립트는 앱 이름 패턴을 받아 레지스트리에서 각 제거 명령을 확인하고, 하나의 상승된 스크립트를 작성하여 실행하므로 사용자가 열 개의 UAC 프롬프트 대신 하나만 승인하면 됩니다. 모든 단계를 기록하고 결과를 기다립니다:powershell -NoProfile -ExecutionPolicy Bypass -File <skill-dir>/scripts/elevated-uninstall.ps1 ` -Patterns 'BlueStacks,WebAdvisor,Duet Display' -RemoveHklmRun 'Opera Browser Assistant' ` -WorkDir 'C:\Archive\2026-11-08' -CleanSystemTemp패턴은 앱의 표시 이름과 일치하는 쉼표로 구분된 정규식입니다. 구체적으로 만드세요:
Microsoft 365는 Office 자체와 일치할 수 있습니다.먼저
-DryRun옵션으로 실행하여 아무것도 실행하지 않고 확인된 명령을 표시하세요. 스크립트는 이미 다음을 처리합니다:- MSI 앱:
msiexec /x {GUID} /qn /norestart,UninstallString이 비어 있는 경우 레지스트리 키 이름 사용(VMware Player에는 제거 문자열이 없었습니다). - 종료 코드 1618(다른 설치 프로그램 실행 중): 잠시 기다린 후 재시도.
- Office Click-to-Run(Project, Visio): ARP 명령에
DisplayLevel=False추가. - Inno Setup (
unins000.exe):/VERYSILENT /NORESTART. - 자동 제거 모드가 없는 제거 프로그램(McAfee, Zotero, BlueStacks): 대화형으로 실행합니다. 실행 전에 사용자에게 UAC 프롬프트를 승인하고 이 창을 클릭하여 진행하라고 알리세요.
- MSI 앱:
-
이후 레지스트리를 다시 조회합니다. 남은 항목이 있으면 한 번 더 대상 재시도를 합니다. 나머지는 정직하게 보고합니다.
7. 서버 설정 (사용자가 직접 실행)
전원, 절전, 덮개 및 서비스 설정은 시스템 설정입니다. 사용자에게 관리자 PowerShell에서 실행할 명령으로, 각 코드 블록당 하나씩 제공하고 각각의 기능을 설명하세요:
powercfg /change standby-timeout-ac 0
powercfg /change hibernate-timeout-ac 0
powercfg /setacvalueindex SCHEME_CURRENT SUB_BUTTONS LIDACTION 0
powercfg /setactive SCHEME_CURRENT
선택 사항으로, 사용자가 결정할 수 있도록 다음을 제안하세요: 대규모 정리 전 복원 지점 생성, Windows 업데이트 활성 시간 설정, 헤드리스 사용을 위한 자동 로그인 또는 "로그인 후 앱 다시 시작" 설정, 전원 공급 시 균형 또는 고성능 전원 관리 옵션 선택.
8. 확인 및 보고
작업 전후의 여유 공간을 측정하고 앱 및 시작 프로그램 목록을 다시 확인합니다. 그런 다음 보고합니다:
- 완료: 보관 위치 및 항목 수, 제거된 앱, 비활성화된 시작 항목, 확보된 공간(전 → 후).
- 의도적으로 유지: 개발 도구, 브라우저, Office, 보안 소프트웨어, 드라이버, 런타임.
- 사용자에게 맡김: PC 다시 시작, 서버 설정, 머신 밖으로 아카이브 복사.
절대 제거하지 않음
Defender / Microsoft.SecHealthUI; 드라이버 및 오디오, 디스플레이, 터치패드용 OEM 드라이버 서비스; Microsoft.WindowsStore; Microsoft.DesktopAppInstaller (winget); Windows 터미널; VC++ 재배포 가능 패키지, .NET 및 기타 프레임워크(IsFramework); Microsoft.XboxIdentityProvider (다른 앱이 의존함); 사용자의 보안 도구(예: Malwarebytes); 사용자가 현재 사용 중인 브라우저; 에이전트 자체가 실행 중인 모든 것.