Use this skill for macOS storage cleanup of WeChat and WPS Office. Always protect user data by scanning first, interviewing for cleanup scope, presenting a plan, and waiting for explicit confirmation before moving anything.
Workflow
- Run a read-only scan:
python3 scripts/wechat_wps_storage.py scan --format markdown - Interview the user before planning. Ask only about scopes that exist and have non-trivial size.
- Present a cleanup plan with:
- target items and sizes
- data impact
- estimated total moved to Trash
- rollback location and validation steps
- Do not clean until the user explicitly confirms the plan.
- After confirmation, run a dry run with the selected item IDs:
python3 scripts/wechat_wps_storage.py move-to-trash --ids <id> <id> - If the dry run matches the confirmed plan, execute:
python3 scripts/wechat_wps_storage.py move-to-trash --stop-apps --execute --ids <id> <id> - Re-run scan and report before/after sizes. Tell the user the Trash backup path and that disk space is not fully reclaimed until Trash is emptied.
Cleanup Scope Rules
Use these defaults when the user is unsure:
| Scope | Default | Impact |
|---|---|---|
| Low-risk caches | Recommend | Temporary files, logs, and app caches are recreated. |
| Runtime/plugin data | Ask | First use may redownload plugins or web runtimes. |
| WPS cloud file cache | Ask | Local cached cloud files are removed; cloud copies should remain if synced. |
| WeChat chat media | Ask | Local images, files, videos, emojis, and previews may need redownloading or may disappear locally. |
| WeChat chat account | High-risk ask | Local chat history, search, attachments, emojis, and videos for that account are removed from this Mac. |
| WeChat database only | Avoid unless requested | Removing databases without media is rarely useful and can break local history. |
Never delete app bundles in /Applications unless the user asks to uninstall the app. Never permanently delete app data directly; move it to ~/.Trash/app-cleanup-YYYYMMDD-HHMMSS/.
Interview Prompts
Ask concise questions in Chinese. Use concrete choices:
- "Only clear caches and logs, or also clear plugin/runtime caches?"
- "Should the local cache of WPS cloud documents be cleared? Before clearing, please confirm the files already exist in the cloud."
- "How should WeChat chat data be handled: only clear chat media, or delete the chat history of this account on this machine?"
- "If there are multiple WeChat account directories, list the sizes one by one and let the user choose an account."
If the user already states the desired scope, do not re-ask. State the assumption in the plan.
Safety Checklist
Before executing cleanup:
- Confirm all selected item IDs came from
scan. - Confirm the plan says "move to Trash", not permanent delete.
- Stop WeChat and WPS before moving files.
- Preserve original path structure under the Trash backup directory.
- After moving, launch apps only for a basic start check; do not claim full validation of login, cloud sync, or message sending unless actually verified.
Rollback
If the user reports a problem before emptying Trash, restore by moving the affected directory from the backup path to its original path. Stop WeChat and WPS before restoring. Use the preserved path under the backup directory to identify the exact original location.