レシピ: Pre-commit フック
pre-commit フレームワークを使い、すべてのコミットで
skillshare auditを自動実行する。
いつ使うか
Pre-commit フックが特に役立つのは次のような場合です。
- 複数のコントリビューターが Skill を編集する — チームメンバーが誤って危険なコマンド
(
curl | bash、sudo rm -rf)を混入させることがあります。フックはこれらがバージョン管理に 入る前に捕捉します。 - Skill が外部ソースから来る — GitHub、コミュニティリポジトリ、AI 生成コンテンツから Skill を コピーすると手動レビューが困難になります。自動スキャンが安全網になります。
- 即座のフィードバックが欲しい — CI も問題を捕捉しますが、それは push した後のみです。フックは 開発者に数秒でローカルの即座のフィードバックを与えます。
以下の場合はスキップできます。
- あなたが唯一の作者であり、すべての Skill を信頼している
- Skill がほとんど変更されない(フックは
.skillshare/またはskills/のファイルが変更された ときのみ実行される)
セットアップ
プロジェクトの .pre-commit-config.yaml に追加します。
repos:
- repo: https://github.com/runkids/skillshare
rev: v0.16.8 # use latest release tag
hooks:
- id: skillshare-audit
その後、フックをインストールします。
pre-commit install
仕組み
このフックは、.skillshare/ または skills/ ディレクトリに一致するファイルへの変更をコミットする
たびに skillshare audit -p を実行します。設定されたしきい値を超える検出結果があれば、コミットは
ブロックされます。
設定
このフックはプロジェクトの .skillshare/config.yaml の設定に従います。
audit:
block_threshold: high # block on HIGH+ findings
フックをスキップする
一度だけスキップするには:
SKIP=skillshare-audit git commit -m "your message"
要件
skillshareCLI がインストールされPATHから利用できること- プロジェクトが
skillshare init -pで初期化されていること
CI との組み合わせ
Pre-commit フックはローカルで問題を捕捉し、CI/CD 検証 はチーム全体の 安全網を提供します。多層防御のために両方を使ってください。