Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
depsguard — サプライチェーン攻撃に対してパッケージマネージャーの設定を強化します。 | Kitploit
ツール/GitHubGitHub/arnica/depsguard
脆弱性分析構成監査クラウドセキュリティDevSecOpsシークレット検出サプライチェーンセキュリティ
GitHubarnica/depsguard

depsguard

サプライチェーン攻撃に対してパッケージマネージャーの設定を強化します。

リポジトリを見る
382181ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
ウェブサイト

depsguard

CI Security Audit crates.io License: MIT MSRV```text _ _ | | ___ _ __ ___ __ _ _ _ __ _ _ __ | | / |/ _ \ '_ \/ __|/ _ | | | |/ | '__/ _ | | (| | __/ |) _ \ (| | || | (| | | | (| | _,_|_| ./|/_, |_,|_,|| _,| || |___/

root@kitploit:~
Guard your dependencies against supply chain attacks. **Single static binary, zero Rust crate dependencies.**

作者 **[[arnica](https://arnica.io?utm_source=depsguard&utm_medium=referral&utm_campaign=community)]**

## Table of contents

- [概要](#overview)
- [インストール](#install)
- [使い方](#usage)
- [チェックされる内容](#what-gets-checked)
- [設定ファイルの場所](#config-file-locations)
- [緊急セキュリティ修正](#urgent-security-fix)
- [バックアップと復元](#backups-and-restore)
- [仕組み](#how-it-works)
- [トラブルシューティング](#troubleshooting)
- [ヘルプとフィードバック](#help--feedback)
- [ガイド](#guides)
- [関連項目](#see-also)
- [ライセンス](#license)

## 概要

DepsGuardは、お使いのマシン上の**npm**、**pnpm**、**yarn**、**bun**、**uv**、**pip**、**poetry**、**aube**を検出し、それらの設定ファイルを読み取り、推奨されるサプライチェーン設定と比較して、**修正を対話的に適用**できます。また、リポジトリ内の**Renovate**および**Dependabot**の設定もスキャンします。パッケージのインストールは一切実行しません。承認した設定ファイルのみを編集し、変更前には常に**バックアップ**を作成します。

### 主な機能

- 対話型TUI:スキャン、レビュー、修正の切り替え、適用
- 読み取り専用レポート用の`scan`サブコマンド
- バックアップを選択してファイルをロールバックするための`restore`サブコマンド
- クロスプラットフォーム:Linux、macOS、Windows
- サードパーティのRustクレートを同梱しない(標準ライブラリ+端末用の少量のプラットフォームFFI)

### 技術スタック

| 分野 | 詳細 |
|------|---------|
| 言語 | Rust(MSRV **1.74**、`Cargo.toml`を参照) |
| CLI / TUI | `src/main.rs`, `src/ui.rs`, `src/term.rs` |
| 設定ロジック | `src/manager.rs`, `src/fix.rs` |
| Webサイト | `docs/` 配下の静的サイト(バイナリとは別) |

## インストール

### プリビルトバイナリ

各[GitHub Release](https://github.com/arnica/depsguard/releases)には、次のアーカイブが含まれています:

- Linux: `x86_64` (glibc), `x86_64` (musl), `aarch64` (glibc)
- macOS: IntelおよびApple Silicon
- Windows: `x86_64` ZIP(`depsguard.exe`を含む)

お使いのプラットフォームのアーカイブをダウンロードし、解凍して、`PATH`にバイナリを配置してください。

リリースページで各アセットの隣にある対応する`.sha256`ファイルを使用して整合性を検証してください。

### プラットフォーム別のインストール

#### Linux(APTによるDebian/Ubuntu)```bash
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://depsguard.com/apt/gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/depsguard.gpg
echo "deb [arch=amd64,arm64 signed-by=/etc/apt/keyrings/depsguard.gpg] https://depsguard.com/apt stable main" | sudo tee /etc/apt/sources.list.d/depsguard.list >/dev/null
sudo apt update
sudo apt install depsguard

macOS / Linux (Homebrew)```bash

Homebrew

brew install depsguard

root@kitploit:~
DepsGuard は [homebrew-core](https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/d/depsguard.rb) に含まれているため、カスタム tap は不要です。

> **以前の `arnica/depsguard` tap から移行しますか?** コア formula に一度切り替えてください:
>
> ```bash
> brew uninstall depsguard
> brew untap arnica/depsguard
> brew update
> brew install depsguard
> ```

#### Windows```powershell
# WinGet
winget install Arnica.DepsGuard

# Scoop
scoop bucket add depsguard https://github.com/arnica/depsguard
scoop install depsguard

または、PowerShellを使用して手動でダウンロードします:```powershell $zip = "$env:TEMP\depsguard.zip" Invoke-WebRequest -Uri "https://github.com/arnica/depsguard/releases/latest/download/depsguard-x86_64-pc-windows-msvc.zip" -OutFile $zip Expand-Archive -LiteralPath $zip -DestinationPath "$env:TEMP\depsguard" -Force Copy-Item "$env:TEMP\depsguard\depsguard.exe" "$HOME\AppData\Local\Microsoft\WindowsApps\depsguard.exe" -Force depsguard.exe --help

root@kitploit:~
### crates.io```bash
cargo install depsguard

Rust ツールチェーンと cargo が必要です。

パッケージマネージャー(ベンダーから公開されている場合)

組織が Homebrew、Scoop、または WinGet 経由で DepsGuard を配布している場合は、それぞれの手順に従ってください。これらのチャンネルのセットアップや自動化(Homebrew core の PR、バケット、WinGet の PR、CI シークレット)はメンテナー向けドキュメントです。AGENTS.mdの Release & distribution を参照してください。

アプリストア / パッケージマネージャー

最新バージョンへの更新

インストールに使用したチャンネルを使用してください。

インストール済みのバージョンはいつでも depsguard --version で確認でき、最新バージョンはリリースページで確認できます。

ソースからビルド```bash

git clone https://github.com/arnica/depsguard.git cd depsguard cargo build --release

root@kitploit:~
バイナリは `target/release/depsguard` (Windows では `.exe`) です。Rust **1.74+** が必要です。

## 使い方```bash
depsguard              # interactive: scan, choose fixes, apply
depsguard scan         # report only; no writes (exits 1 if action is needed)
depsguard --no-search  # skip recursive file search, check local configs only
depsguard restore      # restore from a previous backup
depsguard --help       # CLI help

How to use

  1. インストール – お使いのプラットフォームを上記から選択します。
  2. 実行 – depsguard を実行して対話型 TUI を起動します。システムをスキャンして結果のテーブルを表示します。いずれかのキーを押すと修正セレクタへ進みます。リポジトリレベルの設定の検出は、カレントディレクトリから下方向に検索します。読み取り専用レポートには depsguard scan を使用するか、再帰的なファイル検索をスキップしてユーザーレベルの設定のみを確認するには depsguard --no-search を使用します。

    注: 一部の設定には最低バージョンが必要です。バージョンが古すぎる場合は次のように表示されます: ℹ min-release-age – requires npm ≥ 11.10 (have 10.2.0)。 npm install -g npm@latest でアップグレードして再実行してください。

  3. ナビゲートと選択 – ↑ ↓ でリストを移動し(ページ送りは ^u ^d)、Space で修正のオン/オフを切り替えます。ファイル単位で一括選択するクイックフィルターキー: a すべて、n .npmrc、u uv.toml など – 1回押すと選択、もう1回で選択解除、3回目でフィルターをクリアします。 を押すと現在選択中の修正のみ表示されます。

チェック対象

設定ファイルの場所

ユーザーレベルの設定ファイルは、標準の場所(ツールがサポートする場合は XDG ベースのパスを含む)から読み取られます。リポジトリレベルの設定は、カレントディレクトリから下方向に検索して見つけます。既知の大きなディレクトリ(node_modules、.git、target、Library、.cache など)はスキップされるため、スキャンは高速に保たれます。リポジトリレベルの .npmrc、.yarnrc.yml、pnpm-workspace.yaml、Renovate 設定、Dependabot 設定はすべて検索対象です。pnpm の設定は ~/.npmrc(pnpm <= 10 のみ; pnpm >= 11 は .npmrc から認証・レジストリ設定のみを読み取ります)、pnpm グローバル設定ファイル(pnpm <= 10 では rc、pnpm >= 11 では config.yaml)、または pnpm-workspace.yaml に配置できます。DepsGuard はこれら3つの場所をそれぞれ独立してチェックします。pip、uv、poetry については、DepsGuard は有効なユーザーレベルの設定を1つに解決し、そのファイルだけを報告します。シャドーされたファイルを個別に警告するのではありません。pip と poetry は、設定ファイルを優先順位に従ってマージします(クールダウンを設定している最も優先順位の高いファイルが優先されるか、どれも設定していない場合は推奨の場所が使われます)。uv は両方をマージするのではなく、単一のユーザーファイル( が設定されている場合は 、それ以外の場合は )を読み取ります。bun の場合、ユーザーレベルの設定ファイルが複数存在するとき(たとえば XDG パスとホームディレクトリパスの両方など)、DepsGuard は存在する各ファイルを個別にスキャンします。aube は npm/pnpm と同じ を読み取り((分単位))、検出されたリポジトリレベルの ファイルでもチェックされます。pip と poetry はユーザーレベルの設定( / )でスキャンされます。

緊急セキュリティ修正

パッチ適用済みバージョンがクールダウン期間より新しい場合は、限定的な例外を追加して修正をインストールし、その後で例外を削除します。

グローバルなクールダウンを緩めるよりも、パッケージ固有の例外を優先してください。そうすることで、他のすべての依存関係に対して遅延を維持できます。

クールダウンをバイパスする前に:

  1. CVE が実際にあなたの利用方法に影響するか確認します。
  2. 既知の正常な古いバージョンがすでに利用可能か確認します。ロールバックの方が安全な場合があります。
  3. アップグレード後は一時的な例外を削除します。

バックアップと復元

ファイルを変更する前に、DepsGuard は ~/.depsguard/backups/ にバックアップを書き込みます。

depsguard restore を実行すると、バックアップの一覧表示と1つの復元ができます。

仕組み```

src/ main.rs CLI args, run loop term.rs Raw mode + input (Unix termios / Windows console FFI) manager.rs Detection, scanning, recommendations fix.rs Read/write .npmrc, TOML, YAML; backup/restore ui.rs Banner, tables, selector

root@kitploit:~
- **サードパーティクレートなし**: セキュリティ関連の小さなツールとしては意図的です。この方針を変更する場合は `AGENTS.md` を参照してください。
- **色**は ANSI シーケンスを使用します。Windows の最新ターミナル (例: Windows Terminal) でサポートされています。

## トラブルシューティング

| 症状 | 試すこと |
|---------|-------------|
| `depsguard: command not found` | インストールディレクトリが `PATH` に含まれているか確認し、バイナリへのフルパスを使用してください。 |
| 設定ファイル書き込み時の権限エラー | DepsGuard はユーザープロファイル内のファイルのみを編集します。管理者が所有するファイルでない限り、昇格せずに通常ユーザーとして実行してください。 |
| Windows でキーが機能しない | **Windows Terminal** または他の VT 対応ターミナルを使用してください。レガシーな `cmd.exe` では一部のキーが機能しない可能性があります。 |
| pnpm workspaces が見つからない | `pnpm-workspace.yaml` がホームディレクトリツリー内にあることを確認してください。非常に特殊なレイアウトでは検出されない場合があります。 |
| `cargo install` が失敗する | [rustup](https://rustup.rs/) で Rust をインストールし、Rust **≥ 1.74** を使用してください。 |

## ヘルプとフィードバック

- [バグを報告するか機能をリクエストする](https://github.com/arnica/depsguard/issues)
- [セキュリティ脆弱性を報告する](https://github.com/arnica/depsguard/security/advisories/new) ([`SECURITY.md`](https://github.com/arnica/depsguard/blob/HEAD/SECURITY.md) を参照)
- コントリビューター向けの開発ワークフローは [`AGENTS.md`](https://github.com/arnica/depsguard/blob/HEAD/AGENTS.md) にあります。

## ガイド

[depsguard.com](https://depsguard.com) の詳細ガイドでは、各ハードニング設定と、それらが防御するサプライチェーン攻撃について説明しています。

- [npm サプライチェーン攻撃から保護する方法](https://depsguard.com/guide/) (完全版ハードニングガイド)
- [依存関係のクールダウン (最小リリース期間)](https://depsguard.com/cooldown/)
- [ignore-scripts でインストールスクリプトをブロックする](https://depsguard.com/ignore-scripts/)
- [信頼できない推移的依存関係をブロックする (block-exotic-subdeps)](https://depsguard.com/block-exotic-subdeps/)
- [未レビューのビルドスクリプトで失敗させる (strict-dep-builds)](https://depsguard.com/strict-dep-builds/)
- [プロビナンスのダウングレードをブロックする (trust-policy)](https://depsguard.com/trust-policy/)
- インシデントレポート: [axios](https://depsguard.com/axios-npm-attack/) · [Shai-Hulud](https://depsguard.com/shai-hulud/) · [TanStack](https://depsguard.com/tanstack-npm-attack/)

## 関連情報

- [**Dependency Cooldowns** (`cooldowns.dev`)](https://cooldowns.dev/): リファレンスガイドと、**最小リリース期間のクールダウン**に特化したシェルヘルパー (`cooldowns.sh`) です。DepsGuard を補完します: クールダウンの軸ではより広いエコシステム (pip、uv、npm、pnpm、Yarn、Bun、Deno、Cargo) をカバーし、DepsGuard は npm/pnpm/yarn/bun/aube/uv/pip/poetry に加えて Renovate/Dependabot をカバーし、さらに他のハードニング設定 (`ignore-scripts`、`block-exotic-subdeps`、`trust-policy`、`strict-dep-builds`) をインタラクティブな TUI、差分プレビュー、バックアップ/リストアとともに追加します。

## ライセンス

MIT

---

**リンク:** [リポジトリ](https://github.com/arnica/depsguard) · [ドキュメントサイト](https://depsguard.com)
ツールをダウンロード
チャンネルLinuxmacOSWindowsインストールコマンド
APT(カスタムリポジトリ)はいいいえいいえsudo apt install depsguard(上記のリポジトリ設定後)
crates.ioはいはいはいcargo install depsguard
Homebrew(homebrew-core)はいはいいいえbrew install depsguard
Scoop(カスタムバケット)いいえいいえはいscoop bucket add depsguard https://github.com/arnica/depsguard ; scoop install depsguard
WinGetいいえいいえはいwinget install Arnica.DepsGuard
チャンネルアップグレードコマンド
Homebrewbrew update && brew upgrade depsguard
APT(カスタムリポジトリ)sudo apt update && sudo apt install --only-upgrade depsguard
crates.iocargo install --force depsguard(最新リリースを再インストール)
Scoopscoop update && scoop update depsguard
WinGetwinget upgrade Arnica.DepsGuard
f
  • プレビュー – d を押すと、実際に適用する前に変更内容の差分を確認できます。
  • 適用 – Enter を押すと選択した修正を適用します。ファイルが書き込まれる前に、タイムスタンプ付きのバックアップが作成されます。
  • 再スキャン – DepsGuard は適用後に自動でスキャンを再実行するため、すべてが正常であることを確認できます。
  • 復元 – いつでも depsguard restore を実行して、バックアップ一覧からロールバックできます。q または Esc で終了します。
  • マネージャー設定ファイル設定対象値理由
    npm~/.npmrcmin-release-age7(日)新しいリリースを遅延させる(npm >= 11.10 が必要)
    npm/pnpm~/.npmrcignore-scriptstrueインストールスクリプトのリスクを軽減(npm は .npmrc でこの設定を尊重; pnpm >= 11 は .npmrc ではなく pnpm-workspace.yaml / グローバル config.yaml から読み取る)
    pnpm~/.npmrcminimum-release-age10080(分)新バージョンを7日間遅延(pnpm 10.16–10.x のみ; pnpm >= 11 は .npmrc を無視; pnpm-workspace.yaml を使用)
    pnpmグローバル rc(pnpm <= 10)minimum-release-age10080(分)新バージョンを7日間遅延(pnpm >= 10.16 が必要)
    pnpmグローバル rc(pnpm <= 10)block-exotic-subdepstrue信頼できない推移的依存関係をブロック(pnpm >= 10.26 が必要)
    pnpmグローバル rc(pnpm <= 10)trust-policyno-downgradeprovenance のダウングレードをブロック(pnpm >= 10.21 が必要)
    pnpmグローバル rc(pnpm <= 10)strict-dep-buildstrue未レビューのビルドスクリプトで失敗させる(pnpm >= 10.3 が必要)
    pnpmグローバル rc(pnpm <= 10)ignore-scriptstrue悪意のあるインストールスクリプトをブロック
    pnpmグローバル config.yaml(pnpm >= 11)minimumReleaseAge10080(分)新バージョンを7日間遅延
    pnpmグローバル config.yaml(pnpm >= 11)blockExoticSubdepstrue信頼できない推移的依存関係をブロック
    pnpmグローバル config.yaml(pnpm >= 11)trustPolicyno-downgradeprovenance のダウングレードをブロック
    pnpmグローバル config.yaml(pnpm >= 11)strictDepBuildstrue未レビューのビルドスクリプトで失敗させる
    pnpmグローバル config.yaml(pnpm >= 11)ignoreScriptstrue悪意のあるインストールスクリプトをブロック
    yarn.yarnrc.ymlnpmMinimalAgeGate7d新バージョンを7日間遅延(yarn >= 4.10 が必要)
    pnpmpnpm-workspace.yamlminimumReleaseAge10080(分)新バージョンを7日間遅延(pnpm >= 10.16 が必要)
    pnpmpnpm-workspace.yamlstrictDepBuildstrue未レビューのビルドスクリプトで失敗させる(pnpm >= 10.3 が必要)
    pnpmpnpm-workspace.yamltrustPolicyno-downgradeprovenance のダウングレードをブロック(pnpm >= 10.21 が必要)
    pnpmpnpm-workspace.yamlblockExoticSubdepstrue信頼できない推移的依存関係をブロック(pnpm >= 10.26 が必要)
    pnpmpnpm-workspace.yamlignoreScriptstrue悪意のあるインストールスクリプトをブロック(pnpm >= 10.16 が必要)
    bun~/.bunfig.tomlinstall.minimumReleaseAge604800(秒)約7日間の遅延(bun >= 1.3 が必要)
    aube~/.npmrcminimumReleaseAge10080(分)新バージョンを7日間遅延
    uvuv.tomlexclude-newer7 days新しい公開を遅延(uv >= 0.9.17 が必要)
    pippip.conf([install])uploaded-prior-toP7D(7日)新しい公開を遅延(pip >= 26.1 が必要)
    poetryconfig.toml([solver])min-release-age7(日)新しい公開を遅延(poetry >= 2.4 が必要)
    renovaterenovate.json などminimumReleaseAge7 days依存関係更新の PR を7日間遅延
    dependabot.github/dependabot.ymlcooldown.default-days7依存関係更新の PR を7日間遅延
    マネージャーLinuxmacOSWindows
    npm/pnpm/aube~/.npmrc~/.npmrc%USERPROFILE%\.npmrc
    pnpm グローバル(pnpm <= 10)$XDG_CONFIG_HOME/pnpm/rc または ~/.config/pnpm/rc$XDG_CONFIG_HOME/pnpm/rc または ~/Library/Preferences/pnpm/rc%LOCALAPPDATA%\pnpm\config\rc
    pnpm グローバル(pnpm >= 11)$XDG_CONFIG_HOME/pnpm/config.yaml または ~/.config/pnpm/config.yaml$XDG_CONFIG_HOME/pnpm/config.yaml または ~/Library/Preferences/pnpm/config.yaml%LOCALAPPDATA%\pnpm\config\config.yaml
    yarn~/.yarnrc.yml~/.yarnrc.yml%USERPROFILE%\.yarnrc.yml
    pnpmpnpm-workspace.yamlpnpm-workspace.yamlpnpm-workspace.yaml
    bun$XDG_CONFIG_HOME/.bunfig.toml または ~/.bunfig.toml$XDG_CONFIG_HOME/.bunfig.toml または ~/.bunfig.toml%USERPROFILE%\.bunfig.toml
    uv$XDG_CONFIG_HOME/uv/uv.toml または ~/.config/uv/uv.toml$XDG_CONFIG_HOME/uv/uv.toml または ~/.config/uv/uv.toml%APPDATA%\uv\uv.toml
    pip$XDG_CONFIG_HOME/pip/pip.conf または ~/.config/pip/pip.conf~/Library/Application Support/pip/pip.conf または ~/.config/pip/pip.conf(XDG_CONFIG_HOME が設定されている場合は $XDG_CONFIG_HOME/pip/pip.conf)%APPDATA%\pip\pip.ini
    poetry$XDG_CONFIG_HOME/pypoetry/config.toml または ~/.config/pypoetry/config.toml$XDG_CONFIG_HOME/pypoetry/config.toml(設定されている場合)または ~/Library/Application Support/pypoetry/config.toml%APPDATA%\pypoetry\config.toml
    renovaterenovate.json、.renovaterc、.github/renovate.json など(同じ)(同じ)
    dependabot.github/dependabot.yml(同じ)(同じ)
    XDG_CONFIG_HOME
    $XDG_CONFIG_HOME/uv/uv.toml
    ~/.config/uv/uv.toml
    ~/.npmrc
    minimumReleaseAge
    .npmrc
    pip.conf
    pypoetry/config.toml
    マネージャークールダウンの回避方法
    npmnpm install <pkg>@<ver> --min-release-age=0
    pnpmpnpm-workspace.yaml の minimumReleaseAgeExclude にエントリを追加し、pnpm add <pkg>@<ver> を実行してから、そのエントリを削除します。パッケージ名による除外は pnpm 10.16+ で機能します。特定バージョンの固定(<pkg>@<ver>)には、さらに pnpm 10.19+ が必要です。pnpm には minimumReleaseAge 用の文書化された CLI オーバーライドはありません。
    yarn.yarnrc.yml の npmPreapprovedPackages に <pkg>(またはグロブ)を追加するか、1コマンドで YARN_NPM_MINIMAL_AGE_GATE=0s yarn up <pkg>@<ver> を実行します。npmPreapprovedPackages は、年齢ゲートだけでなく、Yarn のすべてのパッケージゲートからマッチを除外します。
    bunリポジトリレベルの bunfig.toml またはユーザーレベルの ~/.bunfig.toml の install.minimumReleaseAgeExcludes に <pkg> を追加するか、bun add <pkg>@<ver> --minimum-release-age 0 を実行します。
    aube.npmrc の minimumReleaseAgeExclude に <pkg> を追加するか、単一インストールでは AUBE_MINIMUM_RELEASE_AGE=0(または npm_config_minimum_release_age=0)を設定します。
    uvuv.toml または pyproject.toml の exclude-newer-package に "<pkg>" = false を追加し、uv add <pkg>==<ver> を実行してから、そのエントリを削除します。exclude-newer-package は、グローバルな exclude-newer 基準日に対するパッケージ単位の個別オーバーライドです。uv の CLI は --exclude-newer-package PACKAGE=DATE を受け入れますが、PACKAGE=false は受け入れません。
    pip1回のインストールでは pip install <pkg>==<ver> --uploaded-prior-to=P0D を実行します。P0D はそのコマンドのみクールダウンを無効にします。pip には設定でのパッケージ単位の除外はありません。
    poetrypoetry.toml/config.toml の solver.min-release-age-exclude(カンマ区切り)に <pkg> を追加し、poetry add <pkg>@<ver> を実行してから、そのエントリを削除します。solver.min-release-age-exclude-source は、代わりに指定したインデックスからのすべてのパッケージを除外します。
    Renovateセキュリティ更新はすでに minimumReleaseAge をバイパスします。バージョン更新の場合は、matchPackageNames: ["<pkg>"] と minimumReleaseAge: null を指定した packageRules エントリを追加します。
    Dependabotセキュリティ更新はすでに cooldown をバイパスします。バージョン更新の場合は、cooldown.exclude に <pkg> を追加します。