dependency-updater
あらゆる言語に対応したスマートな依存関係管理ツール。プロジェクトの種類を自動検出し、安全なアップデートを自動適用するとともに、メジャーバージョンの更新は確認を促し、依存関係の問題を診断・修正します。
description の原文を見る
Smart dependency management for any language. Auto-detects project type, applies safe updates automatically, prompts for major versions, diagnoses and fixes dependency issues.
SKILL.md 本文
依存関係アップデータ
任意の言語に対応したスマート依存関係管理(自動検出と安全なアップデート機能付き)。
クイックスタート
update my dependencies
このスキルがあなたのプロジェクトタイプを自動検出し、残りの作業を処理します。
トリガー
| トリガー | 例 |
|---|---|
| 依存関係を更新 | "update dependencies", "update deps" |
| 非推奨パッケージの確認 | "check for outdated packages" |
| 依存関係の問題を修正 | "fix my dependency problems" |
| セキュリティ監査 | "audit dependencies for vulnerabilities" |
| 依存関係の診断 | "diagnose dependency issues" |
サポート言語
| 言語 | パッケージファイル | 更新ツール | 監査ツール |
|---|---|---|---|
| Node.js | package.json | taze | npm audit |
| Python | requirements.txt, pyproject.toml | pip-review | safety, pip-audit |
| Go | go.mod | go get -u | govulncheck |
| Rust | Cargo.toml | cargo update | cargo audit |
| Ruby | Gemfile | bundle update | bundle audit |
| Java | pom.xml, build.gradle | mvn versions:* | mvn dependency:* |
| .NET | *.csproj | dotnet outdated | dotnet list package --vulnerable |
クイックリファレンス
| 更新タイプ | バージョン変更 | アクション |
|---|---|---|
| Fixed | ^ または ~ なし | スキップ(意図的なピン留め) |
| PATCH | x.y.z → x.y.Z | 自動適用 |
| MINOR | x.y.z → x.Y.0 | 自動適用 |
| MAJOR | x.y.z → X.0.0 | ユーザーに個別に確認 |
ワークフロー
ユーザーリクエスト
│
▼
┌─────────────────────────────────────────────────────┐
│ ステップ 1: プロジェクトタイプを検出 │
│ • パッケージファイルをスキャン(package.json等) │
│ • パッケージマネージャーを特定 │
├─────────────────────────────────────────────────────┤
│ ステップ 2: 前提条件の確認 │
│ • 必要なツールがインストールされているか確認 │
│ • 不足している場合はインストール手順を提案 │
├─────────────────────────────────────────────────────┤
│ ステップ 3: 更新可能なものをスキャン │
│ • 言語固有の非推奨チェックを実行 │
│ • 分類: MAJOR / MINOR / PATCH / Fixed │
├─────────────────────────────────────────────────────┤
│ ステップ 4: 安全な更新を自動適用 │
│ • MINOR と PATCH を自動適用 │
│ • 更新内容をレポート │
├─────────────────────────────────────────────────────┤
│ ステップ 5: MAJOR 更新について確認 │
│ • 各 MAJOR 更新についてユーザーに確認 │
│ • 現在のバージョン → 新しいバージョンを表示 │
├─────────────────────────────────────────────────────┤
│ ステップ 6: 承認された MAJOR を適用 │
│ • 承認されたパッケージのみを更新 │
├─────────────────────────────────────────────────────┤
│ ステップ 7: 完了処理 │
│ • インストールコマンドを実行 │
│ • セキュリティ監査を実行 │
└─────────────────────────────────────────────────────┘
言語別コマンド
Node.js (npm/yarn/pnpm)
# 前提条件の確認
scripts/check-tool.sh taze "npm install -g taze"
# 更新可能なものをスキャン
taze
# minor/patch を適用
taze minor --write
# 特定の major を適用
taze major --write --include pkg1,pkg2
# モノレポのサポート
taze -r # recursive
# セキュリティ
npm audit
npm audit fix
Python
# 非推奨パッケージを確認
pip list --outdated
# すべてを更新(注意が必要)
pip-review --auto
# 特定のパッケージを更新
pip install --upgrade package-name
# セキュリティ
pip-audit
safety check
Go
# 非推奨パッケージを確認
go list -m -u all
# すべてを更新
go get -u ./...
# クリーンアップ
go mod tidy
# セキュリティ
govulncheck ./...
Rust
# 非推奨パッケージを確認
cargo outdated
# セマンティックバージョニング内で更新
cargo update
# セキュリティ
cargo audit
Ruby
# 非推奨パッケージを確認
bundle outdated
# すべてを更新
bundle update
# 特定のパッケージを更新
bundle update --conservative gem-name
# セキュリティ
bundle audit
Java (Maven)
# 非推奨パッケージを確認
mvn versions:display-dependency-updates
# 最新版に更新
mvn versions:use-latest-releases
# セキュリティ
mvn dependency:tree
mvn dependency-check:check
.NET
# 非推奨パッケージを確認
dotnet list package --outdated
# 特定のパッケージを更新
dotnet add package PackageName
# セキュリティ
dotnet list package --vulnerable
診断モード
依存関係が壊れている場合は診断を実行してください:
よくある問題と解決策
| 問題 | 症状 | 解決策 |
|---|---|---|
| バージョン競合 | "Cannot resolve dependency tree" | クリーンインストール、overrides/resolutions を使用 |
| ピア依存関係 | "Peer dependency not satisfied" | 必須ピアバージョンをインストール |
| セキュリティ脆弱性 | npm audit にエラーが表示 | npm audit fix または手動更新 |
| 未使用の依存関係 | バンドルサイズが大きい | depcheck (Node) などを実行 |
| 重複する依存関係 | 複数のバージョンがインストール | npm dedupe など同等のコマンドを実行 |
緊急修正
# Node.js - リセット
rm -rf node_modules package-lock.json
npm cache clean --force
npm install
# Python - 仮想環境をクリア
rm -rf venv
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# Go - モジュールをリセット
rm go.sum
go mod tidy
セキュリティ監査
任意のプロジェクトのセキュリティチェックを実行してください:
# Node.js
npm audit
npm audit --json | jq '.metadata.vulnerabilities'
# Python
pip-audit
safety check
# Go
govulncheck ./...
# Rust
cargo audit
# Ruby
bundle audit
# .NET
dotnet list package --vulnerable
深刻度別の対応
| 深刻度 | アクション |
|---|---|
| Critical | 直ちに対応 |
| High | 24 時間以内に対応 |
| Moderate | 1 週間以内に対応 |
| Low | 次のリリース時に対応 |
避けるべきパターン
| 避けるべき | 理由 | 代わりに |
|---|---|---|
| ピン留め版の更新 | 意図的にピン留めされている | スキップ |
| MAJOR の自動適用 | 破壊的変更の可能性 | ユーザーに確認 |
| MAJOR をまとめて確認 | コンテキストが失われる | 個別に確認 |
| ロックファイルをスキップ | 再現不可能なビルド | 常にロックファイルをコミット |
| セキュリティアラートを無視 | 脆弱性が残る | 深刻度に応じて対応 |
検証チェックリスト
更新後:
- 更新がエラーなくスキャンされた
- MINOR/PATCH が自動適用された
- MAJOR 更新が個別に確認された
- ピン留め版が変更されていない
- ロックファイルが更新された
- インストールコマンドが実行された
- セキュリティ監査が成功した(または問題が記録された)
<details> <summary><strong>深掘り:プロジェクト検出</strong></summary>
このスキルはパッケージファイルをスキャンしてプロジェクトタイプを自動検出します:
| ファイル検出 | 言語 | パッケージマネージャー |
|---|---|---|
package.json | Node.js | npm/yarn/pnpm |
requirements.txt | Python | pip |
pyproject.toml | Python | pip/poetry |
Pipfile | Python | pipenv |
go.mod | Go | go modules |
Cargo.toml | Rust | cargo |
Gemfile | Ruby | bundler |
pom.xml | Java | Maven |
build.gradle | Java/Kotlin | Gradle |
*.csproj | .NET | dotnet |
モノレポでは検出の順序が重要です:
- 現在のディレクトリを最初にチェック
- ワークスペース/モノレポパターンをチェック
- 該当する場合は再帰的に実行することを提案
前提条件
# taze をグローバルにインストール(推奨)
npm install -g taze
# または npx を使用
npx taze
スマート更新フロー
# 1. すべての更新をスキャン
taze
# 2. 安全な更新を適用(minor + patch)
taze minor --write
# 3. 各 major について、ユーザーに確認:
# "Update @types/node from ^20.0.0 to ^22.0.0?"
# はいの場合、承認リストに追加
# 4. 承認された major を適用
taze major --write --include approved-pkg1,approved-pkg2
# 5. インストール
npm install # または pnpm install / yarn
自動承認リスト
一部のパッケージは頻繁に major バージョンを更新していますが、後方互換性があります:
| パッケージ | 理由 |
|---|---|
lucide-react | アイコンライブラリ、major は加算的 |
@types/* | 型定義、通常は安全 |
セマンティックバージョニング
MAJOR.MINOR.PATCH (例:2.3.1)
MAJOR: 破壊的変更 - コード変更が必要
MINOR: 新機能 - 後方互換性あり
PATCH: バグ修正 - 後方互換性あり
範囲指定子
| 指定子 | 意味 | 例 |
|---|---|---|
^1.2.3 | Minor + Patch OK | >=1.2.3 <2.0.0 |
~1.2.3 | Patch のみ | >=1.2.3 <1.3.0 |
1.2.3 | 正確版(ピン留め) | 1.2.3 のみ |
>=1.2.3 | 以上 | >=1.2.3 すべて |
* | すべて | 最新(危険) |
推奨戦略
{
"dependencies": {
"critical-lib": "1.2.3", // クリティカルは正確版
"stable-lib": "~1.2.3", // 安定版は patch のみ
"modern-lib": "^1.2.3" // 活発版は minor OK
}
}
</details>
<details>
<summary><strong>深掘り:競合解決</strong></summary>
Node.js での競合
診断:
npm ls package-name // 依存関係ツリーを確認
npm explain package-name // インストール理由を確認
yarn why package-name // Yarn 同等のコマンド
overrides による解決:
// package.json
{
"overrides": {
"lodash": "^4.18.0"
}
}
resolutions による解決(Yarn):
{
"resolutions": {
"lodash": "^4.18.0"
}
}
Python での競合
診断:
pip check
pipdeptree -p package-name
解決:
// 仮想環境を使用
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
// または制約ファイルを使用
pip install -c constraints.txt -r requirements.txt
</details>
スクリプトリファレンス
| スクリプト | 目的 |
|---|---|
scripts/check-tool.sh | ツールがインストールされているか確認 |
scripts/run-taze.sh | 適切なフラグで taze を実行 |
関連ツール
| ツール | 言語 | 目的 |
|---|---|---|
| taze | Node.js | スマート依存関係更新 |
| npm-check-updates | Node.js | taze の代替 |
| pip-review | Python | インタラクティブな pip 更新 |
| cargo-edit | Rust | Cargo 依存関係管理 |
| bundler-audit | Ruby | セキュリティ監査 |
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- softaworks
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/softaworks/agent-toolkit / ライセンス: MIT
関連スキル
superfluid
Superfluidプロトコルおよびそのエコシステムに関するナレッジベースです。Superfluidについて情報を検索する際は、ウェブ検索の前にこちらを参照してください。対応キーワード:Superfluid、CFA、GDA、Super App、Super Token、stream、flow rate、real-time balance、pool(member/distributor)、IDA、sentinels、liquidation、TOGA、@sfpro/sdk、semantic money、yellowpaper、whitepaper
civ-finish-quotes
実質的なタスクが真に完了した際に、文明風の儀式的な引用句を追加します。ユーザーやエージェントが機能追加、リファクタリング、分析、設計ドキュメント、プロセス改善、レポート、執筆タスクといった実際の成果物を完成させるときに、明示的な依頼がなくても使用します。短い返信や小さな修正、未完成の作業には適用しません。
nookplot
Base(Ethereum L2)上のAIエージェント向け分散型調整ネットワークです。エージェントがオンチェーンアイデンティティを登録する、コンテンツを公開する、他のエージェントにメッセージを送る、マーケットプレイスで専門家を雇う、バウンティを投稿・請求する、レピュテーションを構築する、共有プロジェクトで協業する、リサーチチャレンジを解くことでNOOKをマイニングする、キュレーションされたナレッジを備えたスタンドアロンオンチェーンエージェントをデプロイする、またはアグリーメントとリワードで収益を得る場合に利用できます。エージェントネットワーク、エージェント調整、分散型エージェント、NOOKトークン、マイニングチャレンジ、ナレッジバンドル、エージェントレピュテーション、エージェントマーケットプレイス、ERC-2771メタトランザクション、Prepare-Sign-Relay、AgentFactory、またはNookplotが言及された場合にトリガーされます。
web3-polymarket
Polygon上でのPolymarket予測市場取引統合です。認証機能(L1 EIP-712、L2 HMAC-SHA256、ビルダーヘッダー)、注文発注(GTC/GTD/FOK/FAK、バッチ、ポストオンリー、ハートビート)、市場データ(Gamma API、Data API、オーダーブック、サブグラフ)、WebSocketストリーミング(市場・ユーザー・スポーツチャネル)、CTF操作(分割、統合、償却、ネガティブリスク)、ブリッジ機能(入金、出金、マルチチェーン)、およびガスレスリレイトランザクションに対応しています。AIエージェント、自動マーケットメーカー、予測市場UI、またはPolygraph上のPolymarketと統合するアプリケーション構築時に活用できます。
ethskills
Ethereum、EVM、またはブロックチェーン関連のリクエストに対応します。スマートコントラクト、dApps、ウォレット、DeFiプロトコルの構築、監査、デプロイ、インタラクションに適用されます。Solidityの開発、コントラクトアドレス、トークン規格(ERC-20、ERC-721、ERC-4626など)、Layer 2ネットワーク(Base、Arbitrum、Optimism、zkSync、Polygon)、Uniswap、Aave、Curveなどのプロトコルとの統合をカバーします。ガスコスト、コントラクトのデシマル設定、オラクルセキュリティ、リエントランシー、MEV、ブリッジング、ウォレット管理、オンチェーンデータの取得、本番環境へのデプロイ、プロトコル進化(EIPライフサイクル、フォーク追跡、今後の変更予定)といったトピックを含みます。
xxyy-trade
このスキルは、ユーザーが「トークン購入」「トークン売却」「トークンスワップ」「暗号資産取引」「取引ステータス確認」「トランザクション照会」「トークンスキャン」「フィード」「チェーン監視」「トークン照会」「トークン詳細」「トークン安全性確認」「ウォレット一覧表示」「マイウォレット」「AIスキャン」「自動スキャン」「ツイートスキャン」「オンボーディング」「IP確認」「IPホワイトリスト」「トークン発行」「自動売却」「損切り」「利益確定」「トレーリングストップ」「保有者」「トップホルダー」「KOLホルダー」などをリクエストした場合、またはSolana/ETH/BSC/BaseチェーンでXXYYを経由した取引について言及した場合に使用します。XXYY Open APIを通じてオンチェーン取引とデータ照会を実現します。