WizTree Disk Cleaner
Utilisez WizTree comme source de faits sur l'utilisation du disque et gardez l'analyse, l'approbation, l'exécution et la vérification séparées. Adaptez la langue de l'utilisateur dans les rapports.
Barrières de sécurité non-négociables
- Par défaut, effectuez uniquement une analyse. Ne modifiez pas le disque lors de l'importation ou de la révision des données CSV.
- Considérez le niveau 1 comme à faible risque, mais pas sans approbation. Exigez une approbation explicite de l'utilisateur avant chaque suppression.
- N'inférez jamais d'approbation à partir d'une demande générale telle que « nettoie mon disque ». Affichez d'abord les cibles et actions exactes.
- N'exécutez jamais de commandes de suppression copiées à partir du texte d'un modèle. Construisez un plan avec
scripts/New-CleanupPlan.ps1, montrez sonplan_id, et exécutez-le uniquement après que l'utilisateur a confirmé ce plan exact. - Rejetez les caractères génériques, les chemins relatifs, les racines de lecteurs, les racines larges de profils utilisateur, les répertoires système, les répertoires de programmes et les cibles de niveau 3.
- Ne nettoyez pas une machine en direct à partir d'un CSV exporté sur une autre machine. Analysez uniquement, sauf si l'existence du chemin local et la portée de la machine sont établies.
- Ne téléchargez ni n'installez WizTree sans la demande de l'utilisateur. Ne redistribuez pas l'exécutable WizTree avec cette compétence.
- Utilisez uniquement des opérations PowerShell natives de bout en bout. Revalidez les cibles canoniques immédiatement avant la suppression récursive.
Lisez references/safety-policy.md avant de classer ou d'approuver des cibles. Lisez references/wiztree-csv.md lors de l'exportation ou de l'analyse de données WizTree.
Workflow
1. Acquérir un CSV actuel
Privilégiez un CSV exporté depuis la machine actuelle et l'état actuel du disque.
- Si l'utilisateur possède déjà un export, enregistrez son chemin absolu et son horodatage.
- Si WizTree est installé et que l'utilisateur souhaite une automatisation, exécutez
scripts/Export-WizTree.ps1. - Sinon, demandez à l'utilisateur d'analyser le lecteur cible dans WizTree et d'utiliser son export CSV officiel.
N'utilisez pas de captures d'écran comme inventaire canonique lorsqu'un export CSV est disponible.
2. Produire le premier rapport
Exécutez :
powershell -NoProfile -ExecutionPolicy Bypass -File scripts/Analyze-WizTreeCsv.ps1 `
-CsvPath <chemin-absolu-csv> `
-OutputDirectory <répertoire-absolu-rapport>
Utilisez le JSON généré comme preuve lisible par machine et le rapport Markdown comme enregistrement destiné à l'utilisateur. Copiez la structure de assets/cleanup-report-template.md si un récit supplémentaire est nécessaire.
Vérifiez ces points avant de recommander un nettoyage :
- Comptez les octets alloués à partir des lignes de fichiers ; ne faites pas la somme des totaux des dossiers imbriqués.
- Traitez les valeurs d'allocation des liens physiques avec le marqueur de zéro non significatif de WizTree comme une allocation supplémentaire nulle.
- Distinguez un cache d'un contenu créé par l'utilisateur simplement stocké sous un nom ressemblant à un cache.
- Marquez explicitement l'incertitude. Déplacez un élément vers un niveau de risque plus élevé lorsque les preuves sont incomplètes.
3. Enquêter sur le niveau 2
Inspectez chaque candidat matériel de niveau 2 avant de le présenter. Vérifiez, lorsque disponibles :
- l'application propriétaire ou le composant Windows ;
- si l'application ou le service est actuellement en cours d'exécution ;
- la récence des modifications et si les fichiers changent activement ;
- si l'application fournit sa propre commande de nettoyage ;
- le coût de régénération, l'impact sur la connexion, l'impact hors ligne, et les options de récupération ;
- le chemin exact, l'action proposée, les octets estimés, et les effets secondaires attendus.
Privilégiez le nettoyage natif de l'application, les paramètres de stockage Windows, le nettoyage de disque, les commandes de cache du gestionnaire de paquets, ou les procédures documentées conscientes des services plutôt que la suppression brute.
4. Obtenir une approbation détaillée
Présentez d'abord le niveau 1. Pour chaque élément sélectionnable, incluez :
- le chemin exact ;
- l'action :
clear_directory_contentsoudelete_file; - le niveau et la raison ;
- les octets récupérables estimés ;
- les effets secondaires notables.
Créez un manifeste d'approbation à partir de assets/approval-manifest.example.json. Incluez uniquement les éléments que l'utilisateur a explicitement sélectionnés et définissez approved sur true.
5. Prévisualiser et lier le plan
Exécutez :
powershell -NoProfile -ExecutionPolicy Bypass -File scripts/New-CleanupPlan.ps1 `
-ApprovalFile <fichier-approbation-json> `
-PlanFile <fichier-plan-json>
Affichez les éléments validés, le total estimé, les éléments rejetés et plan_id. Arrêtez-vous si une cible est plus large que la sélection de l'utilisateur ou diffère du rapport.
6. Exécuter uniquement le plan confirmé
Une fois que l'utilisateur a confirmé le plan_id affiché, exécutez :
powershell -NoProfile -ExecutionPolicy Bypass -File scripts/Invoke-ApprovedCleanup.ps1 `
-PlanFile <fichier-plan-json> `
-ConfirmPlanId <id-plan-confirmé> `
-Execute
Sans -Execute, le script reste un essai à blanc. N'ajoutez jamais -Execute avant que la confirmation exacte du plan ne soit visible dans la conversation.
7. Vérifier et mettre à jour le rapport
- Enregistrez les succès, les sauts, les échecs et le chemin du journal d'audit.
- Enregistrez les octets de suppression estimés et le changement d'espace libre observé séparément ; l'activité en arrière-plan peut les faire différer.
- Réexportez ou réanalysez WizTree lorsque cela est pratique.
- Mettez à jour l'historique d'exécution du rapport Markdown et les choix restants de niveau 2.
- Répétez le cycle d'approbation pour le niveau 2. Ne faites jamais passer le niveau 3 dans un plan exécutable.
Carte des ressources
scripts/Export-WizTree.ps1: invoquer l'export CSV officiel de WizTree.scripts/Analyze-WizTreeCsv.ps1: diffuser l'export et générer du JSON et du Markdown.scripts/New-CleanupPlan.ps1: valider les cibles sélectionnées et créer un plan lié à l'intégrité.scripts/Invoke-ApprovedCleanup.ps1: revalider et exécuter le plan confirmé avec journalisation d'audit JSONL.references/safety-policy.md: limites de classification et de suppression.references/wiztree-csv.md: sémantique officielle d'export et attentes du parseur.assets/cleanup-report-template.md: structure du rapport.assets/approval-manifest.example.json: schéma d'entrée d'approbation.