内容创作
#design
apollo-federation
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.
DeepseekModel
官方收录技能
质量 优秀 · 78
v1.0.0
获取
https://deepseekmodel.com/api/download.php?id=apollographql-skills-skills-apollo-federation-skill-md&format=skill
下载 .skill
标准格式,含 system_prompt 与 model_config,导入任意 Agent 框架即可使用
.skill 文件中 system_prompt 字段的实际内容。
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 Schema Authoring Apollo Federation enables composing multiple GraphQL APIs (subgraphs) into a unified supergraph. Federation 2 Schema Setup 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 for currently supported versions before copying it verbatim. A subgraph's @link version is a floor, not the composition version — see Federation versions for the full explanation. Core Directives Quick Reference 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 Reference Files Detailed documentation for specific topics: Directives - All federation directives with syntax, examples, and rules Schema Patterns - Multi-subgraph patterns and recipes Composition - Composition rules, error codes, and debugging Key Patterns Entity Definition type Product @key ( fields : "id" ) { id : ID ! name : String ! price : Int } Entity Contributions Across Subgraphs # 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 } Computed Fields with @requires type Product @key ( fields : "id" ) { id : ID ! size : Int @external weight : Int @external shippingEstimate : String @requires ( fields : "size weight" ) } Value Types with @shareable type Money @shareable { amount : Int ! currency : String ! } Entity Stub (Reference Without Contributing) type Product @key ( fields : "id" , resolvable : false ) { id : ID ! } Ground Rules ALWAYS use Federation 2.x syntax with @link directive ALWAYS import only the directives your subgraph uses NEVER use @shareable without ensuring all subgraphs return identical values for that field PREFER @key with single ID field for simple entity identification USE rover supergraph compose to validate composition locally USE rover subgraph check to validate against production supergraph
Agent 识别该技能的关键词,点击任意一个即可复制。
该技能未提供触发词。
下载的 .skill 包内含以下字段。
| 字段 | 说明 |
|---|---|
| format | 格式标识(skill/v1) |
| skill_id | 技能唯一 ID |
| name | 技能名称 |
| version | 版本号 |
| description | 技能描述 |
| category | 所属分类(数组) |
| trigger_words | 触发词列表 |
| tags | 标签列表 |
| source | 来源标识 |
| source_url | 来源链接(本页地址) |
| exported_at | 导出时间(每次下载生成) |
| system_prompt | 系统提示词正文 |
| model_config | 模型参数:provider / model / temperature / max_tokens / top_p |
| examples | 示例 |
| install_guide | 各平台导入说明(Coze / Dify / Claude / 自定义框架) |