スキル GraphQL Architect
📦

GraphQL Architect

安全

エンタープライズパターンによるスケーラブルな GraphQL API の設計

本番環境の GraphQL システム構築には、フェデレーション、パフォーマンス、セキュリティに関する専門知識が必要です。このスキルでは、スケーラブルなスキーマ設計と最適化のための実証済みパターンを提供します。

対応: Claude Codex Code(CC)
🥉 72 ブロンズ
1

スキルZIPをダウンロード

2

Claudeでアップロード

設定 → 機能 → スキル → スキルをアップロードへ移動

3

オンにして利用開始

テストする

「GraphQL Architect」を使用しています。 投稿とコメント付きのユーザープロフィールスキーマを設計してください

期待される結果:

  • type User {
  • id: ID!
  • username: String!
  • email: String!
  • profile: Profile
  • posts: [Post!]!
  • createdAt: DateTime!
  • }
  •  
  • type Profile {
  • bio: String
  • avatar: String
  • location: String
  • }
  •  
  • type Post {
  • id: ID!
  • title: String!
  • content: String!
  • author: User!
  • comments: [Comment!]!
  • }

「GraphQL Architect」を使用しています。 ユーザー投稿の取得処理を最適化

期待される結果:

  • DataLoader を使用してユーザー投稿の取得をバッチ処理とキャッシュします:
  •  
  • const postLoader = new DataLoader(async (userIds) => {
  • const posts = await Post.findAll({
  • where: { userId: userIds },
  • include: [User]
  • });
  • return userIds.map(id => posts.filter(p => p.userId === id));
  • });
  •  
  • これにより N 回のクエリが 1 回のバッチクエリに削減されます。

セキュリティ監査

安全
v1 • 2/25/2026

Static analysis scanned 0 files with 0 lines and detected no suspicious patterns. This is a prompt-only skill containing instructional content for GraphQL architecture guidance. No executable code, network access, filesystem operations, or external command execution present.

0
スキャンされたファイル
0
解析された行数
0
検出結果
1
総監査数
セキュリティ問題は見つかりませんでした
監査者: claude

品質スコア

38
アーキテクチャ
100
保守性
87
コンテンツ
50
コミュニティ
100
セキュリティ
74
仕様準拠

作れるもの

エンタープライズフェデレーションアーキテクチャ

複数のチームにわたるフェデレートされた GraphQL アーキテクチャを設計し、サブグラフ構成、スキーマガバナンス、チーム間連携パターンを実装します。

パフォーマンス最適化監査

既存の GraphQL スキーマを分析して N+1 クエリを特定し、DataLoader パターンを実装して多段階のキャッシュ戦略を設定します。

セキュリティ強化実装

フィールドレベルの認可、クエリ複雑度分析、レート制限、本番環境向けセキュリティ設定を実装します。

これらのプロンプトを試す

基本スキーマ設計
[リソースタイプ] 向けの GraphQL スキーマを CRUD 操作とともに設計してください。適切なスカラー型、ミューテーション用の入力型を含め、命名規則に従ってください。型間の関係についても説明してください。
フェデレーションサブグラフ計画
[ドメイン] 向けの Apollo Federation v2 サブグラフを計画してください。エンティティ、キーディレクティブ、外部型参照を特定し、このサブグラフが全体のフェデレートされたアーキテクチャとどのように統合されるかを示してください。
パフォーマンス最適化レビュー
この GraphQL スキーマとリゾルバー実装をパフォーマンスの観点からレビューしてください。N+1 クエリパターンを特定し、DataLoader 実装を提案し、フィールドレベルとクエリレベルでのキャッシュ戦略を推奨してください。
セキュリティ設定監査
この GraphQL サーバー構成をセキュリティの脆弱性について監査してください。イントロスペクション設定、CORS 構成、レート制限、クエリ深さ制限、フィールドレベルの認可をチェックし、具体的な修正手順を提供してください。

ベストプラクティス

  • スキーマはバージョニングと進化を考慮して設計し、削除前に非推奨マークを使用する
  • N+1 クエリ問題を防止するため、すべてのリゾルバー取得で DataLoader を実装する
  • 本番デプロイ前にクエリ複雑度分析とレート制限を設定する

回避

  • 抽象化レイヤーなしで GraphQL スキーマに直接データベースモデルを公開する
  • 接続パターンやページネーションなしで無制限のリストを返す
  • 専用サービス層ではなくリゾルバーにビジネスロジックを実装する

よくある質問

Apollo Federation とは何か、いつ使用すべきですか?
Apollo Federation は GraphQL スキーマを複数サービスに分割して管理するための仕組みです。複数のチームが異なるドメインを担当している場合や、マイクロサービスが統一された GraphQL API を提供する必要がある場合に活用します。
GraphQL で N+1 クエリ問題をどう防止しますか?
DataLoader を使用してデータベースリクエストをバッチ処理とキャッシュします。DataLoader は個々のリクエストを集約して単一のバッチクエリとして実行し、データベースとの往復を大幅に削減します。
本番 GraphQL API に不可欠なセキュリティ対策は何ですか?
クエリの深さ制限、クエリ複雑度分析、レート制限、フィールドレベルの認可を実装し、本番環境ではイントロスペクションを無効化して適切な CORS ヘッダーを設定します。
GraphQL リゾルバーでの認証処理はどのように行いますか?
Apollo Server のセットアップでコンテキストから認証情報を抽出します。リゾルバー内で context.user を使用してユーザー情報にアクセスし、ミドルウェアやディレクティブパターンでフィールドレベルのチェックを実装します。
クエリとミューテーションの違いは何ですか?
クエリはデータを取得しキャッシュ可能です。ミューテーションはデータを変更し常に実行されます。読み取り操作にはクエリを、作成・更新・削除操作にはミューテーションを使用します。
GraphQL でリアルタイム機能を実装する方法は?
WebSocket 接続を使用した GraphQL サブスクリプションを実装します。スキーマにサブスクリプション型を定義し、pubsub メカニズムを実装して、切断時の適切な認可とクリーンアップを確保します。

開発者の詳細

ファイル構成

📄 SKILL.md