OpenClaw
セキュリティ & シークレット推奨

OpenClaw ggshield Scanner スキルガイド

リポジトリのハードコードされたシークレットをスキャン(500+ 種類対応)。

最終更新: 2026-03-11

クイックインストール

$ npx clawhub@latest install ggshield-scanner

主な機能

APIキー、トークン、秘密鍵を含む500種類以上のハードコードされたシークレットを検出
Gitリポジトリ、ディレクトリ、Dockerイメージ、PyPIパッケージをスキャン
pre-commitフックでシークレットがリポジトリに入る前にブロック
リポジトリの完全な履歴をスキャンして過去にコミットされたシークレットを発見
CI/CDパイプラインと統合して自動シークレット検出を実現
プライバシーファーストのスキャン — ソースコードは外部サーバーに保存されません

OpenClaw ggshield Scanner スキル概要

ggshield Scannerスキルは、GitGuardianの強力なシークレット検出エンジンをOpenClawワークフローに統合します。ggshield CLIのフラグや出力形式を覚える必要はありません。自然言語でOpenClawにコード内の漏洩シークレットをスキャンするよう依頼できます。

ggshieldは500種類以上のハードコードされたシークレットを検出します — APIキー、データベース認証情報、クラウドトークン、秘密鍵など。OpenClaw ggshield scannerスキルはこれらの機能を会話型インターフェースにラップし、オンデマンドスキャン、pre-commitフックの設定、結果の解釈を開発フローから離れることなく実行できます。

典型的なワークフロー:

  1. OpenClawにプロジェクトのシークレット漏洩スキャンを依頼します。
  2. エージェントがコードベースまたは指定ファイルに対してggshield secret scanを実行します。
  3. 検出されたシークレット、タイプ、場所をハイライトした読みやすいサマリーが返されます — CLI出力を手動で解析する必要はありません。

既存リポジトリの監査でも開発プロセスへのシークレットスキャン追加でも、このスキルが重い作業を処理します。1Passwordスキルと組み合わせて、完全なシークレット管理ワークフローを構築しましょう。

ggshield Scanner スキルの前提条件

ggshield Scannerスキルをインストールする前に、以下を確認してください:

  • OpenClawがインストールされ実行中(v1.0+)
  • ggshieldがインストール済み — 公式インストールガイド
  • Python 3.9+(pip/pipxでインストールする場合)またはスタンドアロンパッケージを使用
  • Gitがインストール済み(リポジトリスキャン用)
  • clawhub CLIがインストール済み — インストールガイド

お好みの方法でggshieldをインストール:

bash
# macOS (Homebrew)
brew install gitguardian/tap/ggshield

# 全プラットフォーム (pipx — 推奨)
pipx install ggshield

# 全プラットフォーム (pip)
pip install --user ggshield

セットアップを確認:

bash
ggshield --version

ggshield Scanner スキルのインストール方法

ggshield Scannerスキルを1つのコマンドでインストール:

bash
npx clawhub@latest install ggshield-scanner

インストールを確認:

bash
clawhub list

インストール済みスキルリストにggshield-scannerが表示されるはずです。このスキルはggshieldがPATHで利用可能である必要があります。

ggshield Scanner スキルの設定

GitGuardian認証

ggshield Scannerスキルはシークレット検出にGitGuardian APIキーが必要です。2つの方法で認証できます:

対話型ログイン(ローカル開発に推奨):

bash
ggshield auth login

ブラウザが開き、パーソナルアクセストークン(PAT)が自動生成されます。

環境変数(CI/CDに推奨):

bash
export GITGUARDIAN_API_KEY="your-api-key-here"

環境変数設定

| 変数 | 必須 | 説明 | |------|------|------| | GITGUARDIAN_API_KEY | はい | GitGuardianパーソナルアクセストークン | | GITGUARDIAN_INSTANCE | いいえ | オンプレミスGitGuardianインスタンスのURL |

重要: APIキーを設定ファイルにハードコードしないでください。環境変数または1PasswordBitwardenなどのシークレットマネージャーを使用してください。

Pre-commitフック設定

シークレットがコミットされる前にブロック:

bash
# 現在のリポジトリにフックをインストール
ggshield install --mode local

# 全リポジトリにグローバルにフックをインストール
ggshield install --mode global

ggshield Scanner スキルの使用例

1. プロジェクトディレクトリのシークレットスキャン

あなた: 「プロジェクトディレクトリにハードコードされたシークレットがないかスキャンして」

エージェントがggshield secret scan path -r .を実行してワーキングディレクトリをスキャンし、検出されたシークレットのサマリー(ファイルパス、行番号、シークレットタイプ)を返します。シークレットが見つからなければ、コードが安全であることを確認するレポートが返されます。

2. Gitリポジトリ履歴の監査

あなた: 「git履歴全体で漏洩したシークレットがないかチェックして」

エージェントがggshield secret scan repo .を実行してリポジトリの全コミットをスキャンします。レガシーコードベースの監査や、過去にコミットされたシークレットが適切にローテーションおよび削除されたことの確認に役立ちます。

3. デプロイ前のDockerイメージスキャン

あなた: 「nginx:latest Dockerイメージにシークレットがないかスキャンして」

エージェントがggshield secret scan docker nginx:latestを実行してDockerイメージの全レイヤーを検査します。ビルドプロセス中にコンテナイメージに組み込まれたシークレットをキャッチします — これは本番環境での認証情報漏洩の一般的な原因です。

4. Pre-commit保護の設定

あなた: 「シークレットのコミットをブロックするpre-commitフックをインストールして」

エージェントがggshield install --mode localを実行してリポジトリにgit pre-commitフックを追加します。以後のすべてのコミットが自動スキャンされ、シークレットを含むコミットはリポジトリに入る前にブロックされます。

セキュリティとベストプラクティス

ggshield Scannerスキル使用時は以下のガイドラインに従ってください:

  • デフォルトで読み取り専用スキャンを使用。 スキルはスキャンとレポートのみ — 各検出結果を慎重にレビューせずに自動修復を行わないでください。
  • 確認前にレビュー。 エージェントが検出されたシークレットの削除やローテーションを提案した場合、アクションを取る前に検出結果が真陽性であることを確認してください。
  • 暴露されたシークレットは直ちにローテーション。 ggshieldがリポジトリ履歴で実際のシークレットを検出した場合、すぐに認証情報をローテーションしてください — コミットの削除だけでは不十分です。
  • pre-commitフックを有効化。 検出よりも予防が重要です。ggshield installでフックを設定し、シークレットがバージョン管理に入る前にキャッチしましょう。
  • ggshieldを最新に保つ。 新しいシークレットパターンが定期的に追加されます。pipx upgrade ggshieldまたはbrew upgrade ggshieldで最新状態を維持してください。

よくあるエラーのトラブルシューティング

"Error: Invalid API key"

GitGuardian APIキーが不足しているか期限切れです。ggshield auth loginで再認証するか、GITGUARDIAN_API_KEY環境変数が正しく設定されているか確認してください。GitGuardianダッシュボードでトークンが取り消されていないか確認してください。

"Error: ggshield command not found"

ggshieldがインストールされていないかPATHにありません。pipx install ggshieldまたはbrew install gitguardian/tap/ggshieldでインストールしてください。pipでインストールした場合、Pythonスクリプトディレクトリがpathに含まれていることを確認してください。

"Error: Docker is not available"

DockerイメージスキャンにはDockerデーモンの実行が必要です。Docker Desktopまたは Dockerサービスを起動してからリトライしてください。ソースコードのみスキャンする場合は、ggshield secret scan pathまたはggshield secret scan repoを使用してください。

よくある質問

はい。ggshieldは検出にGitGuardian APIを使用しますが、実際のソースコードやファイルはGitGuardianサーバーに保存されません。スキャン時間やリクエストサイズなどのメタデータのみが保持されます。スキャンプロセスはプライバシーファーストで設計されており、プロプライエタリおよび機密性の高いコードベースに適しています。

ggshieldはGitGuardian検出エンジンを使用して500種類以上のシークレットを検出します。これはgit-secrets(正規表現ベース、パターンが限定的)やtruffleHog(エントロピーベース、誤検出率が高い)よりも包括的です。ggshieldはDockerイメージスキャンやPyPIパッケージスキャンもサポートしており、ほとんどの代替ツールにはない機能です。[Guardrails](/skills/guardrails)スキルは補完的なポリシー適用を提供します。

はい。CI/CD環境で`GITGUARDIAN_API_KEY`環境変数を設定し、ggshieldをパイプラインステップとして実行します。OpenClawスキルはインタラクティブな開発スキャンに最適で、直接的なggshield CLI統合は自動化パイプラインチェックに適しています。両方とも同じ検出エンジンとAPIキーを使用するため、結果はすべての環境で一貫しています。

関連スキル

1Password CLI
推奨

1Password CLI(op)で安全にシークレットを取得。

ガイドを見る
Bitwarden / Vaultwarden
推奨

Bitwarden/Vaultwarden CLI と API でシークレットにアクセス。

ガイドを見る
Guardrails
推奨

ツール使用とリスクのある操作にセーフティガードレールを適用。

ClawHub でインストールスキル一覧に戻る