| name | update |
| description | frontend および backend ディレクトリにおけるパッケージの更新と脆弱性の自動修正を管理します。 |
Update & Security Skill (Full Automation)
このスキルは、frontend および backend ディレクトリにおけるパッケージの更新と、脆弱性の自動修正を完全に自動化して管理します。
コマンド: /update
ユーザーからパッケージ更新の指示があった場合、以下のフローをユーザーの承認(Yes/No)を待つことなく、エラーが発生しない限り一気通貫で実行してください。
1. 変更検知とプリチェック(自動実行)
まず、プロジェクトルートで以下の確認を行います。
- コミット状態の確認:
git status を実行。
- 未コミットの重要な変更がある場合は、処理を中断し、ユーザーにコミットを促す。
- すべてコミットされている場合のみ次へ進む。
2. バックエンドのパッケージ更新(自動実行)
backend/ ディレクトリに移動して実行します。
- ディレクトリ移動:
cd backend
- アップデート実行:
pnpm run update (定義済みの更新スクリプト)
pnpm update (マイナー/パッチ更新)
- 脆弱性修正とトラブルシューティング:
pnpm audit fix を実行。
pnpm audit を再実行して残っている脆弱性を確認。
- 脆弱性が残っている場合:
pnpm audit --json 等で原因となっているパッケージを特定。
- 原因パッケージに対して個別に
pnpm update <package_name> を試行。
- 再度
pnpm audit fix を実行。
- それでも解決しない場合は、影響範囲(開発環境のみか等)を判断し、完了報告に詳細を記載する。
- 検証:
pnpm run test を実行し、更新によって破壊的な変更が発生していないか確認する。
- 失敗した場合は中断。
3. フロントエンドのパッケージ更新(自動実行)
frontend/ ディレクトリに移動して実行します。
- ディレクトリ移動:
cd frontend
- アップデート実行:
pnpm run update (ncuを利用したメジャー更新を含むスクリプト)
pnpm update
- 脆弱性修正とトラブルシューティング:
pnpm audit fix を実行。
pnpm audit を再実行して残っている脆弱性を確認。
- 脆弱性が残っている場合:
pnpm audit --json 等で原因となっているパッケージを特定。
- 原因パッケージに対して個別に
pnpm update <package_name> を試行。
- 再度
pnpm audit fix を実行。
- それでも解決しない場合は、影響範囲(開発環境のみか等)を判断し、完了報告に詳細を記載する。
- 検証:
pnpm run build を実行し、型チェックやビルドに問題がないか確認する。
pnpm run test:e2e を実行し、エンドツーエンドのテストが通るか確認する。
- 失敗した場合は中断。
4. 完了報告
すべての処理が正常に完了した後、以下の情報をユーザーに報告します。
- 更新された主要なパッケージのリスト(
git diff package.json を参照)。
- テストおよびビルドの結果(成功した旨)。
pnpm audit の最終的なステータス。
エラーハンドリング
- コマンドが失敗した(テスト失敗、ビルドエラー、依存関係の競合等)場合のみ、即座に停止し、ユーザーに状況を報告してください。
- 正常に動作している限り、途中で入力を待つ必要はありません。