apollo-client
Guide for building React applications with Apollo Client 4.x. Use this skill when: (1) setting up Apollo Client in a React project, (2) writing GraphQL queries…
Guide for authoring Apollo Federation subgraph schemas. Use this skill when: (1) creating new subgraph schemas for a federated supergraph, (2) defining or modifying entities with @key, (3) sharing types/fields across subgraphs with @shareable, (4) working with federation
$ npx -y skills add apollographql/skills --skill apollo-federation --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/apollo-federationContext preview
The summary Claude sees to decide when to auto-load this skill.
Guide for authoring Apollo Federation subgraph schemas. Use this skill when: (1) creating new subgraph schemas for a federated supergraph, (2) defining or modifying entities with @key, (3) sharing types/fields across subgraphs with @shareable, (4) working with federation
name: apollo-federation description: > Guide for authoring Apollo Federation subgraph schemas. Use this skill when: (1) creating new subgraph schemas for a federated supergraph, (2) defining or modifying entities with @key, (3) sharing types/fields across subgraphs with @shareable, (4) working with federation directives (@external, @requires, @provides, @override, @inaccessible), (5) troubleshooting composition errors, (6) any task involving federation schema design patterns. license: MIT compatibility: Works with any Federation 2.x compatible subgraph library (Apollo Server, GraphQL Yoga, etc.) metadata: author: apollographql version: "1.0.2" allowed-tools: Bash(rover:*) Read Write Edit Glob Grep
Apollo Federation enables composing multiple GraphQL APIs (subgraphs) into a unified supergraph.
Every Federation 2 subgraph must opt-in via `@link`:
extend schema
@link(url: "https://specs.apollo.dev/federation/v2.12",
import: ["@key", "@shareable", "@external", "@requires", "@provides"])Import only the directives your subgraph uses. The version shown (`v2.12`) is illustrative — check the [Federation changelog](https://www.apollographql.com/docs/graphos/schema-design/federated-schemas/reference/versions) for currently supported versions before copying it verbatim.
> A subgraph's `@link` version is a floor, not the composition version — see > [Federation versions](references/composition.md#federation-versions-floor-vs-composition) > for the full explanation.
| Directive | Purpose | Example | |-----------|---------|---------| | `@key` | Define entity with unique key | `type Product @key(fields: "id")` | | `@shareable` | Allow multiple subgraphs to resolve field | `type Position @shareable { x: Int! }` | | `@external` | Reference field from another subgraph | `weight: Int @external` | | `@requires` | Computed field depending on external fields | `shippingCost: Int @requires(fields: "weight")` | | `@provides` | Conditionally resolve external field | `@provides(fields: "name")` | | `@override` | Migrate field to this subgraph | `@override(from: "Products")` | | `@inaccessible` | Hide from API schema | `internalId: ID! @inaccessible` | | `@interfaceObject` | Add fields to entity interface | `type Media @interfaceObject` |
Detailed documentation for specific topics:
type Product @key(fields: "id") {
id: ID!
name: String!
price: Int
}# Products subgraph
type Product @key(fields: "id") {
id: ID!
name: String!
price: Int
}
# Reviews subgraph
type Product @key(fields: "id") {
id: ID!
reviews: [Review!]!
averageRating: Float
}type Product @key(fields: "id") {
id: ID!
size: Int @external
weight: Int @external
shippingEstimate: String @requires(fields: "size weight")
}type Money @shareable {
amount: Int!
currency: String!
}type Product @key(fields: "id", resolvable: false) {
id: ID!
}A collection of skills for AI coding agents working with Apollo GraphQL tools and technologies. Apollo Skills follow the Agent Skills format and are available on skills.sh.
Guide for building React applications with Apollo Client 4.x. Use this skill when: (1) setting up Apollo Client in a React project, (2) writing GraphQL queries…
Guide for integrating REST APIs into GraphQL supergraphs using Apollo Connectors with @source and @connect directives. Use this skill when the user: (1)…
Guide for building Apple-platform applications with Apollo iOS, the strongly-typed GraphQL client for Swift. Use this skill when: (1) adding Apollo iOS to a…
Guide for building applications with Apollo Kotlin, the GraphQL client library for Android and Kotlin. Use this skill when: (1) setting up Apollo Kotlin in a…
Guide for using Apollo MCP Server to connect AI agents with GraphQL APIs. Use this skill when: (1) setting up or configuring Apollo MCP Server, (2) defining…
Guide for writing Apollo Router native Rust plugins. Use this skill when: (1) users want to create a new router plugin, (2) users want to add service hooks…