AIKraft/Skills/apollo server

apollo server

Guide for building GraphQL servers with Apollo Server 5.x. Use this skill when: (1) setting up a new Apollo Server project, (2) writing resolvers or defining GraphQL schemas, (3) implementing authentication or authorization, (4) creating plugins or custom data sources, (5) troubleshooting Apollo Server errors or performance issues.

apollographql official Документы

Что делает навык

Apollo Server 5.x — это фреймворк-агностичный GraphQL-сервер, который работает с любой схемой и интегрируется с Express, Fastify, Koa или работает в serverless-средах. Навык предоставляет руководство по созданию серверов, включая настройку схем, резолверов, контекста и плагинов.

Когда применять

  • Настройка нового проекта Apollo Server и выбор между standalone-режимом для прототипирования или интеграцией с веб-фреймворком для продакшена.
  • Определение GraphQL-схемы (typeDefs) с использованием скалярных типов, интерфейсов, перечислений и входных типов для мутаций.
  • Написание резолверов с использованием паттерна делегирования к источникам данных (Data Sources) и обработки ошибок через GraphQLError.
  • Реализация аутентификации и авторизации через объект контекста (context) и проверку прав в резолверах.
  • Устранение проблем с производительностью, таких как N+1 запросы, с помощью DataLoader, а также использование @defer и @stream.

Как работает

  1. Установить пакеты @apollo/server, graphql и необходимые интеграции (например, @as-integrations/express5 для Express).
  2. Определить схему GraphQL (typeDefs), используя скалярные типы, интерфейсы и входные типы, соблюдая правила проектирования (например, использование ! для обязательных полей).
  3. Написать резолверы, которые принимают параметры (parent, args, contextValue, info) и делегируют логику источникам данных или сервисам.
  4. Настроить объект контекста (context) для каждого запроса, передавая туда токены аутентификации, данные пользователя и экземпляры источников данных.
  5. Запустить сервер: использовать startStandaloneServer для прототипирования или интегрировать с веб-сервером (Express, Fastify и др.) для продакшена, добавив плагины (например, для корректного завершения работы).
  6. Обработать ошибки явно, используя GraphQLError, и никогда не раскрывать стек вызовов в продакшене.

Примеры запросов агенту

Как настроить Apollo Server 5.x с интеграцией Express и подключить CORS?
Напиши резолверы для мутации создания поста с проверкой авторизации через контекст.
Как определить GraphQL-схему с использованием интерфейсов и входных типов для мутаций?

Что понадобится

  • Node.js окружение
  • Пакеты @apollo/server и graphql
  • Интеграция с веб-фреймворком (Express, Fastify, Koa и др.) для продакшен-среды

Описание составлено по SKILL.md навыка, сверено 06.10.2026.

Как подключить

1Скачать навык
# возьмите папку навыка «apollo-server» из репозитория: # https://github.com/apollographql/skills
2Положить папку с SKILL.md к навыкам ассистента
# положите папку навыка туда, где ассистент ищет skills: cp -r apollo-server/ ~/.claude/skills/apollo-server/

Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.