SpecterShell / Dumplings

Sélectionnez et utilisez les fonctions partagées des modules Dumplings PackageModule, Core, PowerHTML et powershell-yaml pour la mise en réseau, les redirections, le décodage des réponses, les fichiers temporaires, l'extraction d'archives, le traitement de texte et de données structurées, la conversion temporelle, les flux de mise à jour, l'accès au navigateur Playwright, l'analyse HTML et le traitement YAML. À utiliser en complément de l'analyse des installateurs, de la rédaction de manifests WinGet ou de la création de tâches Dumplings dès que des commandes ou scripts ont besoin des API d'aide du projet.

Qu'est-ce que Dumplings ?

Ce skill regroupe les fonctions partagées du projet Dumplings (PackageModule, Core, PowerHTML, powershell-yaml) pour automatiser des tâches courantes comme les appels réseau, la manipulation de fichiers, l'extraction d'archives, le traitement de données textuelles et structurées, la conversion de fuseaux horaires, la gestion des flux de mise à jour (Squirrel, electron-builder), l'accès contrôlé à un navigateur via Playwright, l'analyse HTML et le parsing YAML. Il s'exécute uniquement avec PowerShell 7.4+ (pwsh) et ne supporte pas Windows PowerShell 5.1. Core charge automatiquement PackageModule et les autres modules déclarés dans Preference.yaml avant d'exécuter les scripts de tâches ; il ne faut donc pas ajouter d'appels Import-Module dans les scripts. En environnement autonome, l'utilisateur doit importer PowerHTML, powershell-yaml et PackageModule manuellement. Le skill insiste sur la réutilisation des helpers (ne pas copier leurs implémentations), le respect des contrats de possession et de nettoyage des ressources, et l'enregistrement des téléchargements dans `$this.InstallerFiles` pour les tâches PackageTask. Les sessions Playwright doivent être courtes et retourner des valeurs détachées ; il est interdit de conserver des objets navigateur, page ou réponse après le retour d'un helper. Le skill déconseille aussi l'exécution d'un installateur téléchargé sur la machine hôte.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/SpecterShell/Dumplings/tree/HEAD/.agents/skills/use-dumplings-functions

Installed? Explore more Recherche et analyse de données skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Utiliser les fonctions Dumplings

Contexte d'exécution

Exécutez ces fonctions de module avec PowerShell 7.4 ou ultérieur (pwsh). PackageModule et Core ne prennent pas en charge Windows PowerShell 5.1.

Core charge PackageModule et les modules PowerShell déclarés dans Preference.yaml avant d'exécuter les scripts de tâches. N'ajoutez pas d'appels Import-Module dans Tasks/*/Script.ps1.

Dans un shell de dépôt autonome, chargez les modules externes requis et PackageModule.

Import-Module PowerHTML, powershell-yaml -ErrorAction Stop
. .\Modules\PackageModule\Index.ps1

Utilisez Get-Command <Nom> -Syntax pour vérifier les paramètres lorsqu'un exemple de tâche ancien diffère des métadonnées actuelles. Les fonctions peuvent dépendre d'autres fichiers PackageModule chargés. Réutilisez-les plutôt que de copier leurs implémentations.

Les importations normales réutilisent les modules d'implémentation. Pendant le développement, rechargez les sources modifiées avec . .\Modules\PackageModule\Index.ps1 -Reload. Utilisez Copy-Object pour la copie de données et Test-ObjectValueEqual pour l'égalité structurelle. La copie conserve les dates, les blocs de script, les valeurs nulles explicites et les tableaux vides imbriqués. Les ressources .NET jetables ne peuvent pas être clonées.

Groupes de fonctions

  • Lisez mise en réseau pour les appels à l'API GitHub, la composition d'URI, les redirections, les en-têtes, le décodage des réponses et le JSON intégré.
  • Lisez fichiers et archives pour les téléchargements en cache, les chemins temporaires et l'extraction d'archives limitée.
  • Lisez contenu et données pour la normalisation de texte, la projection de texte HTML, les encodages, la conversion INI/XML, les listes et la conversion temporelle.
  • Lisez flux de mise à jour pour les chaînes de flux Squirrel et electron-builder déjà récupérées par l'appelant.
  • Lisez accès navigateur pour les baux Playwright limités et les résultats de navigateur détachés.
  • Lisez modules externes pour les commandes PowerHTML et powershell-yaml.

Lisez uniquement les groupes nécessaires à l'opération en cours. Utilisez $analyze-winget-installer pour les API d'analyse propres à une famille, $author-winget-manifest pour les champs de manifest et $author-dumplings-task pour le cycle de vie des tâches et les recettes de sources.

Règles d'utilisation

Réutilisez les helpers partagés et respectez leurs contrats de possession et de nettoyage. Enregistrez les téléchargements d'installateurs PackageTask dans $this.InstallerFiles. Les appelants autonomes sont propriétaires des ressources temporaires, sauf indication contraire de la fonction.

Pour les sources de paquets sans version, privilégiez le workflow CheckInstallerUpdates/CompleteInstallerUpdates de PackageTask plutôt que de composer vous-même les sondes, les hachages et les branches de publication. Lisez le contrat de tâche sans version pour les validateurs, les remplacements par entrée, la propriété des rappels et les correspondances d'états hérités. Ces méthodes enregistrent automatiquement les téléchargements et conservent les preuves de hachage vérifiées.

Gardez les baux de navigateur courts et retournez des valeurs détachées. Ne conservez jamais d'objets page, locator, réponse ou navigateur après le retour d'un helper limité. N'exécutez jamais un installateur téléchargé sur l'hôte.

Skills associés