リポジトリ内の古いパッケージを検出し、アップグレード用のプルリクエストを作成する依存関係の自動更新ツールです。
yowainwright/pastoralist
package.jsonの依存関係の各overrideを付録に記録し、セキュリティ上の問題をスキャンして、安全に管理できるCLIです。
- スター
- 109
- フォーク
- 56
- 未解決の Issue
- 1
- 最終コミット
- 15 時間前
これは何?
Pastoralistは、依存関係のoverride(npm overrides、pnpm overrides、Yarn resolutions、Bun overrides)を継続的に管理します。実行するとpackage.jsonに付録が追加され、各overrideについて、依存しているパッケージ、最初に記録された日時、削除可能かどうかが記載されます。
npm、pnpm(pnpm 11以降ではpnpm-workspace.yamlを含む)、Yarn、Bunのプロジェクトに対応し、workspaceのパスやmanifestのglobを通じてmonorepoも扱えます。読み取り専用のdoctorコマンドで変更を事前確認でき、メインコマンドでは--dry-runも使えます。
任意の脆弱性チェックでは、OSV(デフォルト)、GitHub、Snyk、npm、Socket、Spektionなどのプロバイダーを利用できます。検出結果は対話形式で修正することも、自動適用することもでき、キャッシュしたり、CI向けにJSONで出力したりできます。
主な機能
- 01各overrideについて、依存しているパッケージと最初に記録された日付をpackage.jsonに記録します。
- 02npm、pnpm、Yarn、Bunのoverride形式に対応しています。
- 03読み取り専用のdoctorコマンドまたは--dry-runで変更を事前確認できます。
- 04OSV、GitHub、Snyk、npm、Socket、Spektionを使って脆弱性をチェックします。
- 05使われていないoverrideを検出し、不要と確認できたものを削除できます。
- 06機械処理可能なJSONを出力でき、quietモードではセキュリティ上の問題が見つかると0以外の終了コードを返します。
ユースケース
- セキュリティ修正のための推移的依存関係のoverrideを記録し、最新の状態に保つ。
- 整理する前に、どのoverrideがまだ必要かを監査する。
- CIパイプラインに依存関係のセキュリティチェックを追加する。
- 複数のパッケージマニフェストを持つmonorepo全体でoverrideを管理する。
クイックスタート
- 1
npmでグローバルCLIをインストールする
npm install --global pastoralist - 2
プロジェクトに開発依存関係としてインストールする
npm install pastoralist --save-dev - 3
読み取り専用のヘルスチェックで変更をプレビューする
npx pastoralist doctor - 4
pastoralistを実行してオーバーライドの付録を更新する
npx pastoralist
使う前に知っておきたいこと
- GitHub、Snyk、Socketなどのセキュリティスキャンプロバイダーを利用するには、APIトークンが必要な場合があります。
収録されている特集
トピック
よくある質問
- pastoralist とは?
- package.jsonの依存関係の各overrideを付録に記録し、セキュリティ上の問題をスキャンして、安全に管理できるCLIです。 Pastoralistは、依存関係のoverride(npm overrides、pnpm overrides、Yarn resolutions、Bun overrides)を継続的に管理します。実行するとpackage.jsonに付録が追加され、各overrideについて、依存しているパッケージ、最初に記録された日時、削除可能かどうかが記載されます。
- pastoralist は無料で使えますか?ライセンスは?
- pastoralist は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- pastoralist は今もメンテナンスされていますか?
- 活発にメンテナンス中。pastoralist の最終コミットは 2026年10月22日 です。
- pastoralist は何に使えますか?
- セキュリティ修正のための推移的依存関係のoverrideを記録し、最新の状態に保つ。 整理する前に、どのoverrideがまだ必要かを監査する。 CIパイプラインに依存関係のセキュリティチェックを追加する。 複数のパッケージマニフェストを持つmonorepo全体でoverrideを管理する。
- pastoralist のインストール方法は?
- npmでグローバルCLIをインストールする: npm install --global pastoralist プロジェクトに開発依存関係としてインストールする: npm install pastoralist --save-dev 読み取り専用のヘルスチェックで変更をプレビューする: npx pastoralist doctor pastoralistを実行してオーバーライドの付録を更新する: npx pastoralist
- pastoralist はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/yowainwright/pastoralist
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
npm互換のパッケージマネージャー、Turbopackベースのバンドラー、ブラウザーで動作するWASMビルドを統合したRust製フロントエンドツールチェーン。
変更に合わせて追加するchangesetファイルをもとに、モノレポのパッケージのバージョン管理、変更履歴の作成、公開を行うCLIツール。
WinGet、Scoop、Chocolatey、Homebrew、APT、pip、npmなどを一元管理する、Windows中心のGUIアプリ。
ViteやVitestなどを単一の`vp` CLIに統合し、ランタイムとパッケージマネージャーも管理するWeb開発ツールチェーン。
ランタイム、バンドラー、テストランナー、パッケージマネージャーを単一の実行ファイルにまとめた、高速なJavaScript/TypeScriptツールキット。