mcpField
P
production-ready

production-ready

github.com/adamos486セキュリティ1076 回インストール15 週間前に更新
リポジトリ

production-ready について

production-readyは、リリースやデプロイ、レビューに備えるためのプロジェクト準備・セキュリティ監査スキルです。技術スタックに応じたスキャンを案内し、ツールの導入前に承認を求め、3段階の監査とレポート作成を行います。

主な機能

  1. 01クイック・セキュリティ・フル監査
  2. 02プロジェクトファイルから技術スタックを検出
  3. 03技術スタック別のスキャナーを推奨
  4. 04ツール導入前に承認を確認
  5. 05docs/reports/ に日付入りレポートを作成

活用シーン

  1. 01初回の本番デプロイ前にプロジェクトを確認
  2. 02大規模な変更後にセキュリティを監査
  3. 03オープンソース公開やコンプライアンス審査に備える

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/adamos486/skills --skill production-ready

インストール後、Claude Code で/production-readyを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
research.md
sources.md
scripts/
audit-dependencies.sh
check-config.sh
generate-sbom.sh
production-audit.sh
README.md
scan-secrets.sh

詳細

本番環境対応

あらゆるプロジェクトの本番環境への包括的な対応、セキュリティ強化、専門的なリリース準備を行います。

使用するタイミング

  • 初めて本番環境にデプロイする前
  • 大幅な変更後、リリースする前
  • セキュリティ監査を実施するとき
  • プロジェクトをオープンソース化するとき
  • コンプライアンスレビューの実施中
  • 新しいコードベースの利用を開始するとき

クイックスタート

まず、どのモードにするかユーザーに尋ねます。

Which level of audit do you need?

1. **Quick** - Fast CI-suitable checks (~2 min)
   - Secret scanning
   - Critical vulnerabilities only

2. **Security** - Deep security audit (~10 min)
   - All vulnerability severities
   - SBOM generation
   - Configuration hardening

3. **Full** - Comprehensive audit (~15 min)
   - All security checks
   - Documentation review
   - CI/CD validation
   - Monitoring setup check

ステップ 1:技術スタックの検出

スキャンの前に、プロジェクトの技術スタックと依存関係を特定します。

# Detect project files to determine stack
ls -la | grep -E "package.json|requirements.txt|Cargo.toml|go.mod|Gemfile|pom.xml|build.gradle|composer.json|pubspec.yaml|*.csproj"
検出されたファイルスタック主なセキュリティツール
package.jsonNode.js/JavaScriptnpm audit、snyk、retire.js
requirements.txt / pyproject.tomlPythonpip-audit、safety、bandit
Cargo.tomlRustcargo-audit、cargo-deny
go.modGogovulncheck、gosec
GemfileRubybundle-audit、brakeman
pom.xml / build.gradleJavaOWASP Dependency-Check、SpotBugs
composer.jsonPHPcomposer audit、phpstan
*.csproj.NETdotnet list package --vulnerable
pubspec.yamlDart/Flutterdart pub outdated

ステップ 2:セキュリティツールの推奨

検出されたスタックに基づいて、適切なツールを推奨します。ツールをインストールする前に、必ずユーザーに確認してください。

汎用ツール(すべてのプロジェクト向け)

無料/オープンソース(業界標準):

ツール用途インストールコマンド
gitleaksgit 履歴内のシークレット検出brew install gitleaks または curl -sSfL https://raw.githubusercontent.com/gitleaks/gitleaks/main/scripts/install.sh | sh
trufflehog検証機能を備えた詳細なシークレットスキャンbrew install trufflehog または curl -sSfL https://raw.githubusercontent.com/trufflesecurity/trufflehog/main/scripts/install.sh | sh
syftSBOM の生成brew install syft または curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh
grype脆弱性スキャナー(複数言語対応)brew install grype または curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh
trivy包括的なセキュリティスキャナーbrew install trivy または trivy のドキュメントを参照
semgrep静的解析(SAST)brew install semgrep または pip install semgrep

有料/エンタープライズ(最先端):

ツール用途備考
Snyk総合的なセキュリティ(SCA、SAST、コンテナ)無料プランあり。エンタープライズ機能は有料
Sonatype Nexus Lifecycleエンタープライズ向け依存関係管理SCA 分野の業界リーダー
Checkmarxエンタープライズ向け SAST/DAST包括的なエンタープライズソリューション
Veracodeアプリケーションセキュリティプラットフォームエンタープライズグレードのスキャン
GitHub Advanced Security統合セキュリティ(CodeQL、Dependabot)GitHub ネイティブの統合
言語別ツール

JavaScript/Node.js:

Python:

Go:

Rust:

Ruby:

Java:

ステップ 3:ツールのインストールをユーザーに確認する

重要:ツールをインストールする前に、必ずユーザーに確認してください。

検出されたスタックに基づいて、推奨ツールを提示します。

I've detected your project uses [STACK]. Here are the recommended security scanning tools:

**Required (Universal):**
- gitleaks - Secret detection
- grype - Vulnerability scanning
- syft - SBOM generation

**Stack-Specific ([STACK]):**
- [tool1] - [purpose]
- [tool2] - [purpose]

**Optional (Enhanced Coverage):**
- trivy - Comprehensive scanner
- semgrep - Static analysis

Would you like me to install these tools?
1. Yes, install all recommended tools
2. Yes, but only the required universal tools
3. Let me select which ones to install
4. No, I'll install them manually

ユーザーがオプション 1、2、または 3 を選択した場合: 適切なパッケージマネージャーを使ってインストールし、ステップ 4 に進みます。

ユーザーがオプション 4 を選択した場合: インストールコマンドを提示し、ツールがインストールされたことをユーザーが確認したら、ステップ 4 に進みます。

ステップ 4:セキュリティスキャンを実行する

インストール済みのツールと監査モードに基づいてスキャンを実行します。

クイックモード
# Secret scanning
gitleaks detect --source=. --no-banner

# Critical vulnerabilities only
grype dir:. --fail-on=critical --only-fixed
セキュリティモード(クイックモードを含む)
# Deep secret scan with verification
trufflehog filesystem . --only-verified

# All high+ vulnerabilities
grype dir:. --fail-on=high --only-fixed

# Generate SBOM
syft dir:. -o cyclonedx-json=sbom.json

# Static analysis (if semgrep installed)
semgrep --config auto --error
フルモード(セキュリティモードを含む)

すべてのセキュリティチェックに加え、ドキュメント、CI/CD、オブザーバビリティの検証を行います。

ステップ 5:レポートを生成する

レポートは必ず docs/reports/ ディレクトリに書き込んでください。

存在しない場合はディレクトリを作成します。

mkdir -p docs/reports

本日の日付を使って Markdown レポートを生成します。

# Report filename format
REPORT_FILE="docs/reports/security-audit-$(date +%Y-%m-%d).md"
レポートテンプレート

生成するレポートは、次の構成に従ってください。

# Security Audit Report

**Project:** [project-name]
**Date:** [YYYY-MM-DD]
**Audit Mode:** [Quick|Security|Full]
**Auditor:** Claude Code (production-ready skill)

## Executive Summary

- **Total Checks:** X
- **Passed:** X
- **Failed:** X
- **Warnings:** X

## Tech Stack Detected

- Primary Language: [language]
- Package Manager: [manager]
- Frameworks: [frameworks]

## Tools Used

| Tool | Version | Purpose |
|------|---------|---------|
| gitleaks | X.X.X | Secret detection |
| grype | X.X.X | Vulnerability scanning |
| ... | ... | ... |

## Findings

### Critical Issues (Must Fix)

1. **[Issue Title]**
   - Severity: Critical
   - Location: [file:line]
   - Description: [description]
   - Remediation: [steps to fix]

### High Severity Issues

...

### Medium/Low Severity Issues

...

## Dependency Vulnerabilities

| Package | Current | Fixed In | Severity | CVE |
|---------|---------|----------|----------|-----|
| ... | ... | ... | ... | ... |

## SBOM Summary

- Total Packages: X
- Direct Dependencies: X
- Transitive Dependencies: X
- SBOM Location: `docs/reports/sbom-[date].json`

## Recommendations

1. [Prioritized recommendation]
2. [Prioritized recommendation]
...

## Next Steps

- [ ] Fix critical vulnerabilities
- [ ] Review and remediate high-severity issues
- [ ] Update dependencies with known fixes
- [ ] Re-run audit after fixes

---
*Generated by production-ready skill v2.0.0*

監査モードのチェックリスト

クイックモードのチェックリスト
  • シークレット:gitleaks detect --source=. を実行する
  • 重大な脆弱性:grype dir:. --fail-on=critical を実行する
  • 基本設定:.gitignore に .env、*.key、*.pem が含まれていることを確認する
  • レポートを生成:検出結果を docs/reports/security-audit-[date].md に書き込む
セキュリティモードのチェックリスト(クイックモードを含む)
  • すべての脆弱性:grype dir:. --fail-on=high
  • SBOM を生成:syft dir:. -o cyclonedx-json=docs/reports/sbom-[date].json
  • シークレットの詳細スキャン:trufflehog filesystem . --only-verified
  • 静的解析:semgrep --config auto(インストール済みの場合)
  • 依存関係のレビュー:古いパッケージやメンテナンスされていないパッケージがないか確認する
  • 設定の強化:
    • 設定ファイルに localhost/ポートをハードコードしない
    • すべてのシークレットに環境変数を使用する
    • .env.example にプレースホルダー値が設定されている
  • Docker のセキュリティ(該当する場合):
    • 非 root ユーザーが指定されている
    • ベースイメージのバージョンが固定されている
    • .dockerignore が存在する
  • レポートを生成:包括的な検出結果を docs/reports/security-audit-[date].md に書き込む
フルモードのチェックリスト(セキュリティを含む)

ドキュメント:

  • README.md にセットアップ手順が記載されている
  • LICENSE ファイルが存在する
  • CHANGELOG.md がメンテナンスされている
  • 脆弱性の報告手順を記載した SECURITY.md がある
  • CONTRIBUTING.md がある(オープンソースの場合)

CI/CD:

  • CI パイプラインが設定されている(GitHub Actions、GitLab CI など)
  • PR/プッシュ時に自動テストが実行される
  • パイプラインでセキュリティスキャンが実施される
  • ビルド成果物が検証される

オブザーバビリティ:

  • ヘルスチェックのエンドポイント(/health または /healthz)
  • 構造化ログが設定されている
  • エラー追跡が設定されている(Sentry など)
  • メトリクスが収集される(該当する場合)

運用:

  • 環境ごとの設定が分離されている
  • バックアップ/復元の手順が文書化されている
  • ロールバック計画が文書化されている
  • オンコール用ランブックがある(重要なサービスの場合)

レポートの生成:調査結果を docs/reports/security-audit-[date].md に詳細に記載します。

最新ツールのウェブ検索

検出された技術スタックで、上記に記載されていない専用ツールが必要な場合は、その技術に対応する業界標準の最新(2025 年以降)のセキュリティスキャナーをインターネットで検索してください。以下を優先します。

  1. 言語/フレームワークの公式ドキュメントで推奨されているツール
  2. OWASP が推奨するツール
  3. メンテナンスが継続されているツール(過去 6 か月以内にコミットがあるもの)
  4. GitHub のスター数が多く(1000 以上)、コミュニティで広く採用されているツール

セキュリティ標準の参照

OWASP Top 10 2025 に基づきます。

リスク主な緩和策
A01: アクセス制御の不備デフォルトで拒否し、サーバー側で権限を検証する
A02: セキュリティの設定ミスハードニングを自動化し、デフォルト設定を削除し、セキュリティヘッダーを設定する
A03: サプライチェーンSBOM、依存関係のスキャン、署名付きビルド
A04: インジェクションパラメーター化クエリ、入力検証
A05: 暗号化の失敗すべての通信で TLS を使用し、強力なアルゴリズムを採用し、キーをハードコードしない

よくある問題と修正方法

シークレットが見つかった場合
# Rotate the compromised credential immediately
# Then remove from git history:
git filter-branch --force --index-filter \
  "git rm --cached --ignore-unmatch PATH/TO/FILE" \
  --prune-empty --tag-name-filter cat -- --all

# Or use BFG Repo-Cleaner (faster):
bfg --delete-files "*.env"
脆弱な依存関係
# Update to patched version
npm update PACKAGE  # or
pip install PACKAGE --upgrade  # or
cargo update PACKAGE

# If no patch available, evaluate alternatives

完了基準

以下を満たすと、プロジェクトは本番環境に対応できる状態です。

  1. 修正プログラムが提供されている高/重大な脆弱性がゼロ
  2. ハードコードされたシークレットが検出されない
  3. 必要なドキュメントがすべてそろっている
  4. CI/CD パイプラインですべてのセキュリティチェックに合格する
  5. SBOM が生成され、docs/reports/ に保存されている
  6. ヘルスチェックが稼働している
  7. docs/reports/security-audit-[date].md にセキュリティ監査レポートが生成されている

参考資料

references/ ディレクトリに以下があります。

  • research.md - 詳細な調査結果
  • sources.md - 信頼できる情報源とリンク

コメント