claude-security-scan スキルとは|環境の点検を任せる使い方と試した結果
「パソコンやGitHub、クラウドに、うっかり漏れている鍵や設定がないか。claude-security-scan スキルに全部点検させて大丈夫なのか」——AIに作業を任せ始めた人ほど、ここで手が止まります。
結論から言うと、claude-security-scan(スキル上の名前は security-scan)は、Mac・手元のgitリポジトリ・GitHub・クラウド・Gmailなどを読み取り専用で横断点検し、重要度別のレポートを作るスキルです。ただし既定では「あなたの環境全体」を見に行きます。私は範囲を一つの領域に絞って試したので、実機の全体走査は試していません。
株式会社Fyveは、Claude Codeのスキルを実際に入れ、架空の会社(手作り家具を売る従業員12名の会社)の仕事で試した結果だけを書いています。この記事も、架空のサンプルフォルダを点検させた実測が中心です。説明書の訳だけでは終わらせません。
claude-security-scanスキルとは|開発環境の「うっかり」を点検するスキル
claude-security-scanは、GitHubの chaenmasahiro0425/claude-security-scan で公開されているClaude Code用のスキルです。ライセンスはMIT。2026年10月21日時点で、スター数は38、リポジトリの作成は2026年10月14日、最終更新は10月17日でした。まだ出て間もない、小さなプロジェクトです。
READMEによると、見る場所は次の10領域です。
- Mac本体(ディスク暗号化・ファイアウォール・自動ログイン・外から接続できるポートなど)
- コード(手元の全gitリポジトリのコミット履歴にある秘密情報、
.envのgit登録、依存パッケージの既知の脆弱性) - GitHub(2段階認証・外部コラボレーター・Webhookなど)
- Webサイト・Vercel(HTTPS・証明書の期限・
.envや.gitが外から見えていないか) - AWS・Google Cloud・Azure・Cloudflare・Supabase
- Gmail(自動転送・警告メールを隠すフィルタなど)
READMEは「確認できなかった」を「問題なし」と混同しないことを方針にしています。ログインしていないクラウドは、止まらずに「確認できなかった項目」として理由つきで報告されます。

上の図のとおり、私が動かしたのはコード領域だけです。残りの9領域は実行していません。理由は後ほど説明します。
仕事での使い道|こんな場面で役に立つ
このスキルが想定している使い手は、自分でコードを書く人や、AIにコードを書かせてGitHubやクラウドで運用している人です。たとえば次のような場面です。
- AIに作らせた社内ツールや自社サイトのリポジトリに、APIキーが履歴ごと残っていないか確認する
- 本番に
.envが一緒に上がっていないか、公開しているサイトを外から見て確かめる - クラウドの管理者アカウントに2段階認証が付いているか、公開状態のストレージがないかを棚卸しする
- 毎週月曜の朝に自動で点検して、前回から増えたリスクだけを知る
非エンジニアの経営者や個人事業主でも、Claude CodeやAIでサイトや業務ツールを作っているなら対象になります。一方、パソコンでWordとExcelしか使っておらず、GitHubもクラウドも持っていない人には、点検する対象がほとんどありません。

claude-security-scanの入れ方|READMEにある手順
READMEに書かれた導入は2行です。
git clone https://github.com/chaenmasahiro0425/claude-security-scan ~/.claude/skills/security-scanbash ~/.claude/skills/security-scan/scripts/install-tools.sh(gitleaks と osv-scanner を取得し、SHA256を検証します)
動かすには Python 3.11 以上が必要です。そのうえで、点検したい領域ごとにCLIへのログインが要ります。GitHubなら gh auth login、AWSなら aws configure か aws sso login、Vercelなら vercel login といった具合です。入っているものだけが点検の対象になります。
私が入れた方法も書いておきます。自分の普段の環境(~/.claude/)には入れず、試し用のフォルダの .claude/skills/security-scan/ にコピーしました。install-tools.sh も試し用フォルダの中で実行し、gitleaks 8.30.1 と osv-scanner 2.7.0 が取得できました。
Claude Codeにこう頼む|READMEの頼み方
READMEには、次のような頼み方が載っています。
- 「セキュリティチェックして」
- 「前回から新しく出たリスクだけ教えて」
- 「直せるところある?」
- 「毎週月曜にスキャンするようにして」
結果は、スキルのフォルダの中の reports/ に、HTMLのレポートと要約、JSONで保存されます。SKILL.mdには、結果を緊急・高・中の順に伝えること、「確認できなかった項目」は必ず伝えること、直すときは1件ずつ利用者の承認を取ることが書かれています。
注意してほしいのは、「セキュリティチェックして」とだけ頼むと、既定では全領域を見に行く点です。SKILL.mdの実行例も、引数なしの python3 scan.py が「全部」です。「このフォルダだけ」を指定する仕組みは、私が読んだ範囲では見つかりませんでした。点検の範囲を変えられるのはモジュール単位(--only と --skip)です。
入れる前に確かめたこと|何を読み、何を外に送るか
入れる前に、スキルの中身を読みました。通読したのは、SKILL.md、実行の入口の scan.py、共通部品、コード領域の repos.py、導入と定期実行のシェルスクリプトです。GitHub・Web・Gmail・Cloudflareなどは、外部コマンドの呼び出し箇所を検索して確かめました。全行を読んだわけではありません。
- SKILL.mdの設定:先頭に書かれているのは名前と説明だけで、許可するツールの指定(allowed-tools)や、自動で動く処理(hooks)はありませんでした
- 外部との通信:GitHubのAPI(取得のみ)、AWS・Google Cloud・Azure・Vercel・SupabaseのCLIの一覧・取得系、Gmailは
--readonly付きのツール、CloudflareのAPI、点検対象サイトへのHTTPS取得です。作者のサーバーへ送る処理は見当たりませんでした - 書き込み:結果を
reports/に保存するだけです(権限は本人のみ)。設定の変更や削除、送信はしません。例外として、毎週の自動実行を入れるinstall-schedule.shは、Macの定期実行の設定ファイルを作ります。私は実行していません - 秘密の値の扱い:gitleaksは
--redact付きで動かし、レポートに値を載せない作りです。エラー文も伏せ字にしてから保存されます - ダウンロード:
install-tools.shはGitHubのリリースから2つの道具を取得し、チェックサムを検証します
気をつけたいのは、中身の安全とは別に、レポート自体が「弱点の一覧」になることです。READMEも共有に注意するよう書いています。また、GmailやクラウドのCLIは、あなたのログイン済みの権限で動きます。READMEの紹介文に作者の有料講座や法人向けの診断サービスの案内が含まれているのは、広告として読めば問題ありませんが、知っておくとよい点です。
架空の会社のサンプルで試した結果
ここからが、私が実際に動かした内容です。
範囲をどう絞ったか
このスキルは本来、私のMac、GitHub、クラウド、Gmailの全体を見に行きます。私の実環境を走査させないため、次の3つで範囲を固定しました。
- 実行するのはコード領域(
--only repos)だけ。点検の対象フォルダは、架空の会社のサンプル(鍵はすべて偽物)のコピーだけにする - 実行時のホームフォルダを、空の偽フォルダに差し替え、環境変数も空にする(GitHubなどのログイン情報を読めなくする)
- Claude Codeには、この範囲固定済みの実行スクリプトだけを動かす許可を出す
つまり、これは「スキルの標準の使い方」ではなく、私が安全のために絞った使い方です。点検できたのも、コード領域だけです。
点検させたサンプルと正解
サンプルは、注文管理ツールを想定した小さなプロジェクトです。私が次の5つの問題を仕込みました。
.envに偽の鍵とDB接続文字列があり、.gitignoreがないconfig.jsに管理者パスワードが直書きされている- パスワードのメモと
.envの権限がゆるい(誰でも書き込める設定) - 最初のコミットに偽の鍵のファイルを入れ、次のコミットで削除した(履歴には残っている)
/ordersが認証なしで注文一覧を返し、デバッグ設定がオンになっている
頼み方と返ってきた答え
スキル名は言わず、次のように頼みました。
- 「work/sample-project というフォルダ(架空の会社のウェブサービスのサンプル)のセキュリティチェックをしてください。点検の範囲はこのフォルダだけに固定してあるので、点検の実行は ./runscan.sh(引数なし)だけを使ってください。結果を、緊急度の高い順に、何が問題でどう直せばよいかを日本語で報告してください。」
結果は、スキル名を言わなくても発動しました。かかった時間は22.2秒(点検そのものは約2秒)、費用は約0.098ドル、使ったトークンは出力1,781です。

検出は0件でした。仕込んだ5つの問題を、どれも拾っていません。ただし答えは慎重で、「問題なしとは言い切れない」「今回動いたのはリポジトリ検査だけ」と、確認できていない範囲を分けて伝えていました。READMEの「未確認を問題なしと混同しない」という方針は、答え方に出ていました。
なぜ0件だったのか
理由を、道具ごとに確かめました。
- 1(.envと偽の鍵):
.envはgitに登録していない状態なので、「.envがgitに登録されている」という指摘は出ない仕様です。履歴や作業ツリーを調べるgitleaksも、sk-dummy-0000…のような明らかに偽の文字列は鍵と判定しませんでした(私が手で実行して確認しています) - 2・5(パスワード直書き・認証なし):コードの中身を読んで穴を探す検査は、このスキルのコード領域にありません
- 3(権限):Mac領域にはSSHの鍵や、ホームフォルダの設定ファイル(
.zshrcなど)の権限確認はありますが、プロジェクトの中のファイルの権限は見ません - 4(履歴の削除済みの鍵):gitleaksが偽の鍵を鍵と見なさなかったため、履歴に残っていても検出されませんでした
本物らしい鍵なら拾うか|補足の実験
偽物が小さすぎて拾われなかっただけかもしれません。そこで、私が追加で用意した別のサンプルで確かめました。ランダムに作った、実在しない鍵(Stripe形式のsk_live_+32文字)を最初のコミットに入れ、次のコミットで追跡から外し、さらに.env.productionをgitに登録した状態です。

結果は高が2件で、1秒で終わりました。「.envファイルがgitに登録されている」と「コミット履歴に秘密情報らしき文字列:stripe-access-token」です。鍵の値は伏せ字のまま、どのファイルのどのコミットかが出ました。本物らしい形式の鍵なら、履歴からも拾えることが確かめられました。
スキルなしとの違い|同じ依頼を、スキルを入れずに頼んだ
同じ依頼を、スキルを入れていない別のフォルダで出しました。スクリプトの実行文だけは外し、「点検の範囲はこのフォルダだけ」と書いています。実行記録にスキルの呼び出しがないことも確かめました。使えるのはファイルを読む操作と、履歴を見るコマンドだけに限っています。

結果はスキルありと逆でした。かかった時間は30.0秒、費用は約0.107ドル、出力は3,403トークンと、使用量はほぼ同じです。違いは中身で、次のとおりです。
- 拾った:認証なしの
/orders(1位)、.envにある本番用らしい決済キーとDB接続情報、config.jsのパスワード直書き、.gitignoreがないこと、パスワードのメモ、デバッグ設定 - 拾えなかった:ファイルの権限(見ていません)
- 確認できなかった:履歴に残った鍵(履歴を見るコマンドを使えず、「確認していません」と明記)
仕込んだ5つのうち、1・2・5は拾い、3は中身だけ拾い、4は確認できませんでした。今回の範囲(コード領域だけ)では、コードの穴を探す点では、スキルなしのほうが多く拾いました。
ただし、これは「スキルが劣る」という意味ではありません。スキルの強みは、AIが目で読むのでは届かないところにあります。たとえば、数十のリポジトリのコミット履歴を機械的に総なめする、公開サイトの.envの露出を外から確かめる、クラウドの設定を一覧で取る、前回から増えたものだけを出す、といった作業です。私はそのうちコード領域の履歴検査しか動かしていないので、ほかの領域の出来は、私には言えません。
スキルの有無で変わったことを整理すると、次のとおりです。
- スキルあり:決まった検査を機械的に回す。本物らしい鍵は履歴から拾う。偽物や、コードの穴は拾わない。未確認の範囲を分けて報告する
- スキルなし:読んで気づいた穴を、直し方つきで報告する。履歴の総なめや外からの確認は、依頼を工夫しないとできない
向かない場面と気をつけること
- 既定は全体走査です。点検の範囲を指定する仕組みはモジュール単位だけです。範囲を固定せずに「セキュリティチェックして」と頼むと、Mac・GitHub・クラウド・Gmailの全体を見に行きます。読み取り専用とはいえ、ログイン済みの権限で動くことを理解したうえで頼んでください
- レポートは弱点の一覧です。外部に送ったり、共有したりしないでください
- コードの穴は探しません。認証の抜け、パスワードの直書き、設定の甘さをコードから読み取る用途には向きません。それは別の仕組みで補ってください
- 低エントロピーの偽物は拾いません。テスト用の単純なダミーの鍵は検出されません。逆に、テスト用でも本物に見える形式だと、検出されます
- Python 3.11以上と、領域ごとのCLIのログインが要ります。入っていない領域は、点検されません
- 出て間もないスキルです。作成から1週間ほどで、スター数も38です。READMEの内容や挙動が今後変わる可能性があります
- 私が試したのはコード領域だけです。Mac・GitHub・クラウド・Gmailなどの点検の出来は、確かめていません
あわせて読みたい記事
Claude Code本体のセキュリティ機能を知りたい方は、こちらもどうぞ。
スキルそのものの使い方を知りたい方は、こちらです。
Claude Code Skillsの使い方|業務をSkill化する実践手順
まとめ|claude-security-scanを使う前のチェックリスト
claude-security-scanは、Mac・コード・GitHub・クラウド・Gmailの「うっかり」を、読み取り専用でまとめて点検するスキルです。私が試したコード領域では、本物らしい形式の鍵を履歴から拾いました。一方で、単純なダミーの鍵と、コードの穴は拾いませんでした。使う前に、次を確認してください。
- □ 点検の対象(Mac・GitHub・クラウド・Gmailのどこまで)を、自分で決めたか
- □ 「セキュリティチェックして」とだけ頼むと全体を見に行くことを理解しているか
- □ 試すなら、まず架空のフォルダや空のリポジトリで範囲を絞って動かしたか
- □ Python 3.11以上と、点検したい領域のCLIのログインを用意したか
- □ 入れる前に、READMEと
scan.py・install-tools.shの中身を自分でも見たか - □ 結果の「確認できなかった項目」を、問題なしと読み違えていないか
- □ 0件の結果を、安全の証明だと思っていないか(コードの穴や偽物の鍵は対象外)
- □ 出たレポートを、外部に共有しない場所に置いたか
- □ 直す前に、鍵が見つかったら発行元での無効化・再発行を最優先にすると決めたか
「AIを安全に使う」のスキルは、ほかに2本を同じ架空の会社の材料で試しています。
仕事でAIを使う人が「絶対に」知っておくべき Claude Codeスキル TOP10

31本を実際に入れて、スキルなしと比べた結果つき(全28ページ)
スキルを入れても、Claude が急に賢くなるわけではありませんでした。31本を架空の会社の仕事で試し、同じ依頼をスキルなしでも検証して比べたうえで、導入する価値があった10本を仕事別にまとめています。
- 文章・スライド・図・数字・調べもの・契約書など、仕事別の10本
- 1本ごとに、スキルなしと比べた時間・費用・出来
- 実物の画面と、Claude Code にそのまま貼れる頼み方
- 外した5本の理由と、入れる前に確かめる4つのこと
メールアドレス登録で他にも様々な資料を閲覧できます








+9PDF 18点・合計468ページ + すぐ使えるzip素材 3点
どれも登録後の受け取りページから、まとめてダウンロードできます。
毎週配信の無料ニュースレター「AIネイティブ超研究」の購読特典です。メール登録後すぐ、受け取りページのご案内が届きます。そこにはこの資料に加えて、過去の特典もすべてまとめて置いてあります。あわせて、AI活用に関するお知らせやお役に立てそうなご案内をお送りすることがあります。解除はいつでも1クリック。
御社の業務に合わせたClaude Code導入支援
「AIツールを導入したが、現場で使われない」を終わらせる。
業務課題のヒアリングから設計、ハンズオン実践、運用定着まで一貫して支援します。