jpskill.com
🛠️ 開発・MCP コミュニティ

prod-readiness

リリース前の最終確認として、セキュリティやテスト、性能など各分野の専門家をAIで再現し、出荷可否の判断と優先順位付けされた改善点をまとめた報告書を作成するSkill。

📜 元の英語説明(参考)

Use when assessing release readiness or running a pre-launch review. Spawns 5 specialist agents in parallel (security, testing, performance, observability, code quality) and synthesizes a prioritized report with ship/don't-ship recommendation. Keywords: production readiness, release review, pre-launch, security audit, test coverage, ship checklist.

🇯🇵 日本人クリエイター向け解説

一言でいうと

リリース前の最終確認として、セキュリティやテスト、性能など各分野の専門家をAIで再現し、出荷可否の判断と優先順位付けされた改善点をまとめた報告書を作成するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o prod-readiness.zip https://jpskill.com/download/9178.zip && unzip -o prod-readiness.zip && rm prod-readiness.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/9178.zip -OutFile "$d\prod-readiness.zip"; Expand-Archive "$d\prod-readiness.zip" -DestinationPath $d -Force; ri "$d\prod-readiness.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して prod-readiness.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → prod-readiness フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

Prod-Readiness

5つの専門レビューエージェントを並行して生成し、それぞれが専用のレポートファイルに調査結果を書き込みます。エグゼクティブサマリー、ブロッカー、および改善計画を含む、優先順位付けされた本番環境準備レポートに統合します。

次の場合にはロードしないでください

  • ユーザーが1つの狭いレビューのみを希望する場合(代わりに、関連する専門スキルを使用してください)
  • コードベースが実装の途中で、意図的に壊れたベースラインがある場合
  • タスクが準備状況を評価するのではなく、問題を修正することである場合

絶対に

  • ダーティなワーキングツリーで絶対に実行しないでください — コミットされていない変更は、エージェントの調査結果が安定したコミットに対応しないことを意味します。調査結果は再現不可能になり、レポートはトレーサビリティを失います。
  • 失敗しているベースラインで絶対に実行しないでください — 赤色のテストスイートでは、既存の失敗をレビューの調査結果と区別することができません。常にベースラインがグリーンであることを最初に確認してください。
  • 5つのエージェントすべてが書き込みを完了する前に絶対に統合しないでください — 部分的な統合は、次元全体を省略したレポートを作成します。遅いエージェントからのCRITICALな調査結果は、LOWバックログに埋もれてしまいます。
  • エージェントに同じファイルへの書き込みを絶対に許可しないでください — 各エージェントには独自のREVIEW_*.mdがあります。共有ファイルは、インターリーブされた、解析不可能な出力を生成します。
  • *以前の実行からのREVIEW_.mdファイルをクリアせずに絶対にコミットしないでください** — 以前のセッションからの古い調査結果が新しい調査結果と混ざり合うと、誤解を招く重大度分布が生成されます。
  • ファイル:行の参照なしに問題をCRITICALと評価しないでください — 追跡不可能なCRITICALは、レビュー疲労を引き起こし、曖昧なLOWと同じように優先順位が下げられます。

プレフライト(エージェントを生成する前に必ず実行してください)

git status --short          # must be clean
git log --oneline -5        # confirm recent work is committed
npx vitest run --reporter=dot 2>&1 | tail -5  # must be green

テストが失敗している場合:ユーザーに警告し、ベースラインがグリーンになるまで続行しないでください。

エージェントの専門分野

チーム名: prod-review-<YYYYMMDD>

TeamCreate + Taskを介して、5つすべてを並行して生成します。

エージェント レポートファイル ドメイン
security-auditor REVIEW_SECURITY.md OWASP Top 10、RBACのギャップ、入力検証、シークレット、認証フロー、Webhookセキュリティ
test-coverage-analyst REVIEW_TESTING.md カバーされていないクリティカルパス、常に合格するテスト、エラーパステストの欠落、不安定なパターン
performance-infra REVIEW_PERFORMANCE.md N+1クエリ、無制限のクエリ、インデックスの欠落、メモリリーク、グレースフルシャットダウン、レート制限
observability-analyst REVIEW_OBSERVABILITY.md 処理されないリジェクション、ログ内のPII、エラー応答の一貫性、構造化ロギング、ヘルスエンドポイント
code-quality REVIEW_QUALITY.md デッドコード、循環依存関係、TODO/FIXME密度、パッケージ境界違反、型安全性のギャップ

security-auditor プロンプト

このコードベースにセキュリティ脆弱性がないかレビューしてください。すべての調査結果をREVIEW_SECURITY.mdに書き込んでください。

確認事項:
1. OWASP Top 10:インジェクション、認証の不備、IDOR、XSS、CSRF、設定ミス
2. RBACのギャップ:resolveOrgId()または権限チェックによって保護されていないエンドポイント
3. 入力検証:バインドパラメータなしでSQLに到達するユーザー入力
4. シークレット:ハードコードされたクレデンシャル、起動時のenv var検証の欠落
5. 依存関係の脆弱性:npm audit --json | jq '.vulnerabilities | length'
6. 認証フロー:セッションフィクセーション、トークン検証、ログアウトの動作
7. Webhookセキュリティ:HMAC検証、isValidWebhookUrl()でのSSRF保護

調査結果の形式:[CRITICAL|HIGH|MEDIUM|LOW] 説明 — File:Line — 推奨される修正

test-coverage-analyst プロンプト

テストカバレッジの品質を分析します。すべての調査結果をREVIEW_TESTING.mdに書き込んでください。

確認事項:
1. 実行:npx vitest run --reporter=json 2>/dev/null | jq '.testResults[].testFilePath' | wc -l
2. テストカバレッジがZEROのクリティカルパス(ルート、サービス、リポジトリ)
3. 常に合格するテスト(アサーションのないvi.fn()呼び出し)
4. エラーパステストの欠落(ほとんどのルートはハッピーパスのみをテストします)
5. 不安定なテストパターン(時間依存、afterEachクリーンアップの欠落)
6. モックカバレッジ:テストされていないモック関数のブランチ

形式:[CRITICAL|HIGH|MEDIUM|LOW] 領域 — 現在のカバレッジ — リスク — 推奨されるテスト

performance-infra プロンプト

パフォーマンスとインフラストラクチャの準備状況をレビューします。すべての調査結果をREVIEW_PERFORMANCE.mdに書き込んでください。

確認事項:
1. N+1クエリ(SQLが内部にあるループ)、頻繁なクエリのインデックスの欠落
2. 無制限のクエリ:LIMITなしのSELECT
3. メモリ:閉じられていない接続、removeListenerのないイベントリスナー
4. Docker:docker-compose.ymlのリソース制限、ヘルスチェック構成
5. グレースフルシャットダウン:SIGTERM処理、接続ドレイン
6. レート制限:カバーされているすべてのパブリックエンドポイント
7. キャッシュ:キャッシュできるクエリ結果

形式:[CRITICAL|HIGH|MEDIUM|LOW] 問題 — File:Line — 影響 — 修正

observability-analyst プロンプト

エラー処理とオブザーバビリティの完全性をレビューします。すべての調査結果をREVIEW_OBSERVABILITY.mdに書き込んでください。

確認事項:
1. 処理されないリジェクション:ルートハンドラーでtry/catchのない非同期関数
2. エラー境界:ルートエラーのフロントエンドエラー処理
3. ログ内のPII:ログステートメント内のユーザーメール、トークン、または機密データ
4. エラー応答の一貫性:すべてのエラーがプロジェクトのエラー階層を使用する
5. 構造化ロギング:すべてのログ呼び出しが、文字列連結ではなく、構造化オブジェクトを使用する
6. エラー集約カバレッジ:グローバールハンドラーに到達するエラーと、try/catchで飲み込まれるエラー
7. ヘルスエンドポイント:/healthはクリティカルな依存関係(DB接続)をチェックしますか?

形式:[CRITICAL|HIGH|MEDIUM|LOW] 問題 — File:Line — リスク — 修正

code-quality プロンプト


コード品質とアーキテクチャの健全性をレビューします。すべての調査結果をREVIEW_QUALITY.mdに書き込んでください。

確認事項:
1. デッドコード:インポートされていないエクスポートされた関数
2. 循環依存関係:利用可能な場合はpnpm run check:circularを実行します
3. TODO/FIXME/HACK密度:grep -rn "TODO\|FIXME\|HACK" apps/ packages/ --include="*.ts"
4. パッケージ境界違反:クロスアプリインポート
5. 一貫性のないパターン:確立された規則に従わないコード
6. 型安全性のギャップ:anyキャスト、@ts-ignore、本番環境コードの非nullアサーション(!)

形式:[CRITICAL|HIGH|MEDIUM|LOW] 問題 — File:Lin

(原文がここで切り詰められています)
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Prod-Readiness

Spawns 5 specialist review agents in parallel, each writing findings to a dedicated report file. Synthesizes into a prioritized production readiness report with executive summary, blockers, and remediation plan.

Do NOT load when

  • user wants only one narrow review (use the relevant specialist skill instead)
  • codebase is mid-implementation with a knowingly broken baseline
  • task is to fix issues rather than assess readiness

NEVER

  • Never run on a dirty working tree — uncommitted changes mean agent findings don't map to a stable commit; findings become unreproducible and the report loses traceability
  • Never run on a failing baseline — a red test suite makes it impossible to distinguish pre-existing failures from review findings; always confirm baseline is green first
  • Never synthesize before all 5 agents finish writing — partial synthesis produces a report that omits entire dimensions; a CRITICAL finding from a slow agent gets buried in LOW backlog
  • Never let agents write to the same file — each agent has its own REVIEW_*.md; shared files produce interleaved, unparseable output
  • *Never commit REVIEW_.md files from a previous run without clearing them** — stale findings from a prior session mixed with new ones produce a misleading severity distribution
  • Never rate an issue CRITICAL without a file:line reference — untraceable CRITICALs create review fatigue and get deprioritized the same as vague LOWs

Pre-flight (always run before spawning agents)

git status --short          # must be clean
git log --oneline -5        # confirm recent work is committed
npx vitest run --reporter=dot 2>&1 | tail -5  # must be green

If tests are failing: warn the user, do not proceed until baseline is green.

Agent specializations

Team name: prod-review-<YYYYMMDD>

Spawn all 5 in parallel via TeamCreate + Task.

Agent Report file Domain
security-auditor REVIEW_SECURITY.md OWASP Top 10, RBAC gaps, input validation, secrets, auth flows, webhook security
test-coverage-analyst REVIEW_TESTING.md Uncovered critical paths, always-passing tests, missing error path tests, flaky patterns
performance-infra REVIEW_PERFORMANCE.md N+1 queries, unbounded queries, missing indexes, memory leaks, graceful shutdown, rate limiting
observability-analyst REVIEW_OBSERVABILITY.md Unhandled rejections, PII in logs, error response consistency, structured logging, health endpoint
code-quality REVIEW_QUALITY.md Dead code, circular deps, TODO/FIXME density, package boundary violations, type safety gaps

security-auditor prompt

Review this codebase for security vulnerabilities. Write ALL findings to REVIEW_SECURITY.md.

Check:
1. OWASP Top 10: injection, broken auth, IDOR, XSS, CSRF, misconfiguration
2. RBAC gaps: endpoints not protected by resolveOrgId() or permission checks
3. Input validation: user input reaching SQL without bind parameters
4. Secrets: hardcoded credentials, missing env var validation at startup
5. Dependency vulnerabilities: npm audit --json | jq '.vulnerabilities | length'
6. Auth flows: session fixation, token validation, logout behavior
7. Webhook security: HMAC validation, SSRF protection in isValidWebhookUrl()

Format findings as: [CRITICAL|HIGH|MEDIUM|LOW] Description — File:Line — Suggested fix

test-coverage-analyst prompt

Analyze test coverage quality. Write ALL findings to REVIEW_TESTING.md.

Check:
1. Run: npx vitest run --reporter=json 2>/dev/null | jq '.testResults[].testFilePath' | wc -l
2. Critical paths with ZERO test coverage (routes, services, repositories)
3. Tests that always pass (vi.fn() calls with no assertions)
4. Missing error path tests (most routes only test happy path)
5. Flaky test patterns (time-dependent, missing afterEach cleanup)
6. Mock coverage: branches of mocked functions not tested

Format: [CRITICAL|HIGH|MEDIUM|LOW] Area — Current coverage — Risk — Suggested tests

performance-infra prompt

Review performance and infrastructure readiness. Write ALL findings to REVIEW_PERFORMANCE.md.

Check:
1. N+1 queries (loops with SQL inside), missing indexes for frequent queries
2. Unbounded queries: SELECT without LIMIT
3. Memory: unclosed connections, event listeners without removeListener
4. Docker: resource limits in docker-compose.yml, health check configuration
5. Graceful shutdown: SIGTERM handling, connection drain
6. Rate limiting: all public endpoints covered
7. Caching: query results that could be cached

Format: [CRITICAL|HIGH|MEDIUM|LOW] Issue — File:Line — Impact — Fix

observability-analyst prompt

Review error handling and observability completeness. Write ALL findings to REVIEW_OBSERVABILITY.md.

Check:
1. Unhandled rejections: async functions without try/catch in route handlers
2. Error boundaries: frontend error handling for route errors
3. PII in logs: user emails, tokens, or sensitive data in log statements
4. Error response consistency: all errors use the project's error hierarchy
5. Structured logging: all log calls use structured objects, not string concatenation
6. Error aggregation coverage: errors reaching the global handler vs. swallowed in try/catch
7. Health endpoint: does /health check critical dependencies (DB connection)?

Format: [CRITICAL|HIGH|MEDIUM|LOW] Issue — File:Line — Risk — Fix

code-quality prompt

Review code quality and architecture health. Write ALL findings to REVIEW_QUALITY.md.

Check:
1. Dead code: exported functions never imported
2. Circular dependencies: run pnpm run check:circular if available
3. TODO/FIXME/HACK density: grep -rn "TODO\|FIXME\|HACK" apps/ packages/ --include="*.ts"
4. Package boundary violations: cross-app imports
5. Inconsistent patterns: code not following established conventions
6. Type safety gaps: any casts, @ts-ignore, non-null assertions (!) in production code

Format: [CRITICAL|HIGH|MEDIUM|LOW] Issue — File:Line — Debt impact — Suggested refactor

Monitor agents

ls -la REVIEW_*.md   # confirm files being written
wc -l REVIEW_*.md    # track progress

If no file update from an agent in 2 minutes, send a check-in message.

Synthesize

Run after all 5 REVIEW_*.md exist. Use node scripts/summarize-review-reports.js or manually synthesize into PRODUCTION_READINESS_REPORT.md:

# Production Readiness Report — <date>

## Executive Summary
<1 paragraph: ship / don't ship with top 3 reasons>

## Quality Gate Results
- Tests: <pass/fail count>
- TypeScript: <clean / N errors>
- Lint: <clean / N warnings>

## Critical Blockers (fix before deploy)
## High Priority (fix within first sprint post-launch)
## Medium Priority (fix within first month)
## Low Priority / Tech Debt (backlog)

Each item: **[CATEGORY] Title** with File:Line, Risk, Effort (S/M/L), Fix.

Final quality gate

npx vitest run --reporter=dot 2>&1 | tail -10
cd apps/api && npx tsc --noEmit 2>&1 | tail -5
npm audit --audit-level=high 2>&1 | tail -10

Append results to report.

Commit and shutdown

git add REVIEW_*.md PRODUCTION_READINESS_REPORT.md
git commit -m "docs(review): production readiness report $(date +%Y-%m-%d)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>"

Shut down all agents, clean up team.

Arguments

  • (empty) — full review
  • --quick — skip performance and code-quality agents, focus on security and test coverage
  • --security-only — spawn only security-auditor
  • --no-commit — generate reports but don't commit