Community研究&データ分析github.com

SpecterShell/Dumplings

共有のDumplings PackageModule、Core、PowerHTML、powershell-yaml関数を選択して使用し、ネットワーキング、リダイレクト、応答デコード、一時ファイル、アーカイブ抽出、テキスト・構造化データ、時刻変換、更新フィード、Playwrightブラウザアクセス、HTML解析、YAML処理を行います。インストーラ分析、WinGetマニフェスト作成、Dumplingsタスク作成時に、コマンドやスクリプトでプロジェクトヘルパーAPIが必要な場合に併用します。

Dumplings とは?

このスキルは、Dumplingsプロジェクトで使用される共有関数群(PackageModule、Core、PowerHTML、powershell-yaml)を提供します。ネットワーキング(GitHub API、リダイレクト、応答デコード)、ファイル操作(キャッシュダウンロード、アーカイブ抽出)、テキスト・データ処理(正規化、HTMLテキスト抽出、INI/XML変換)、更新フィード(Squirrel、electron-builder)、Playwrightブラウザアクセス、HTML解析、YAML処理など、多彩な機能をカバーします。PowerShell 7.4以降で動作し、WinGetマニフェスト作成やDumplingsタスク作成の補助として使用されます。タスクスクリプト内でImport-Moduleを追加する必要はなく、Preference.yamlで宣言されたモジュールが自動的に読み込まれます。また、関数の再利用、クリーンアップ契約の順守、ブラウザセッションの短縮などの使用ルールが定められています。

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

Installed? Explore more 研究&データ分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Dumplings関数の使用

実行コンテキスト

これらのモジュール関数はPowerShell 7.4以降(pwsh)で実行します。PackageModuleとCoreはWindows PowerShell 5.1をサポートしていません。

Coreは、タスクスクリプトを実行する前に、Preference.yamlで宣言されたPowerShellモジュールとPackageModuleを読み込みます。Tasks/*/Script.ps1にImport-Module呼び出しを追加しないでください。

スタンドアロンリポジトリシェルでは、必要な外部モジュールとPackageModuleを読み込みます。

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

古いタスクの例が現在のメタデータと異なる場合は、Get-Command <Name> -Syntaxを使用してパラメータを確認します。関数は他の読み込まれたPackageModuleファイルに依存する場合があります。実装をコピーする代わりに、それらを再利用してください。

通常のインポートでは実装モジュールを再利用します。開発中は、. .\Modules\PackageModule\Index.ps1 -Reloadで変更されたソースを再読み込みします。データコピーにはCopy-Objectを、構造的等価性の確認にはTest-ObjectValueEqualを使用します。コピーでは、日付、スクリプトブロック、明示的なnull、ネストされた空の配列が保持されます。破棄可能な.NETリソースは複製できません。

関数グループ

  • ネットワーキングを参照:GitHub API呼び出し、URI構成、リダイレクト、ヘッダー、応答デコード、埋め込みJSON。
  • ファイルとアーカイブを参照:キャッシュされたダウンロード、一時パス、制限付きアーカイブ抽出。
  • コンテンツとデータを参照:テキスト正規化、HTMLテキスト投影、エンコーディング、INI/XML変換、リスト、時刻変換。
  • 更新フィードを参照:呼び出し元が既に取得したSquirrelおよびelectron-builderフィード文字列。
  • ブラウザアクセスを参照:スコープ指定されたPlaywrightリースと分離されたブラウザ結果。
  • 外部モジュールを参照:PowerHTMLおよびpowershell-yamlコマンド。

現在の操作に必要なグループのみを参照してください。ファミリー固有のパーサーAPIには$analyze-winget-installerを、マニフェストフィールドには$author-winget-manifestを、タスクライフサイクルとソースレシピには$author-dumplings-taskを使用します。

使用ルール

共有ヘルパーを再利用し、その所有権とクリーンアップ契約に従います。PackageTaskインストーラのダウンロードを$this.InstallerFilesに登録します。関数が特に明記しない限り、スタンドアロン呼び出し元が一時リソースを所有します。

バージョンレスパッケージソースの場合は、プローブ、ハッシュ、公開ブランチを自分で構成するよりも、PackageTaskのCheckInstallerUpdates/CompleteInstallerUpdatesワークフローを優先します。バージョンレスタスク契約を参照して、バリデーター、エントリごとのオーバーライド、コールバック所有権、レガシーステートマッピングを確認してください。これらのメソッドはダウンロードを自動的に登録し、検証済みのハッシュ証拠を保持します。

ブラウザリースは短く保ち、分離された値を返します。スコープ指定されたヘルパーが戻った後は、ページ、ロケーター、レスポンス、ブラウザオブジェクトを保持しないでください。ダウンロードしたインストーラをホスト上で実行しないでください。

関連スキル