Token导航 LogoToken导航TokenDH.com
效率需要联网clawhub未标认证来源可访问clear审计通过

graphqlGraphQL 接口开发

Agent Skill

用于辅助 API 设计、接口文档、请求响应结构和服务集成说明。它适合让 Agent 梳理 endpoint、生成 OpenAPI 草稿、检查字段命名、整理错误码或辅助前后端联调。使用时需要确认真实业务语义、鉴权方式、分页和错误处理规则;涉及生成接口文档时,应避免凭空补字段,最好从现有代码、schema 或接口样例中提取事实。

总安装

55,709

周安装

2,393

GitHub Stars

2

下载量

19,527
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:graphql(GraphQL 接口开发)
来源仓库:https://github.com/ivangdavila/graphql
安装命令:
openclaw skills install graphql
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install graphql

简介

设计具备性能、安全与错误处理的 GraphQL 架构与解析器。

  • 适用于 OpenClaw 中辅助 API 设计与前后端联调支持。
  • 可帮助梳理 endpoint、生成字段文档与整理错误码规范。
  • 安装前需确认业务语义与鉴权机制,避免凭空补字段。
  • 分页与缓存策略应与服务端实现保持一致。graphql 属于效率类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

name
GraphQL
slug
graphql
version
1.0.1
description
Design GraphQL schemas and resolvers with proper performance, security, and error handling.
metadata
{"clawdbot":{"emoji":"◈","os":["linux","darwin","win32"]}}

Quick Reference

TopicFile
Schema design patternsschema.md
Security and limitssecurity.md
Performance optimizationperformance.md
Client-side patternsclient.md

N+1 Problem (Critical)

  • Each resolver runs independently—fetching user for each of 100 posts = 100 queries
  • DataLoader required: batches requests within single tick—100 posts = 1 user query
  • DataLoader per-request: create new instance per request—prevents cross-request caching
  • Even with DataLoader, watch for nested N+1—posts → comments → authors chains

Schema Design

  • Fields nullable by default—make non-null explicit: name: String!
  • Input types separate from output—CreateUserInput vs User; allows different validation
  • Connections for pagination: users(first: 10, after: "cursor") returns edges + pageInfo
  • Avoid deeply nested types—flatten where possible; 5+ levels = resolver complexity

Pagination

  • Cursor-based (Relay style): first/after, last/before—stable across insertions
  • Offset-based: limit/offset—simpler but skips or duplicates on concurrent writes
  • Return pageInfo { hasNextPage, endCursor }—client knows when to stop
  • totalCount expensive on large datasets—make optional or estimate

Security Traps

  • Query depth limiting—prevent { user { friends { friends { friends... } } } }
  • Query complexity scoring—count fields, multiply by list sizes; reject above threshold
  • Disable introspection in production—or protect with auth; schema is attack surface
  • Timeout per query—malicious queries can be slow without being deep
  • Rate limit by complexity, not just requests—one complex query = many simple ones

Error Handling

  • Partial success normal—query returns data AND errors; check both
  • Errors array with path—shows which field failed: "path": ["user", "posts", 0]
  • Error extensions for codes—"extensions": {"code": "FORBIDDEN"}; don't parse message
  • Throw in resolver = null + error—parent nullable = partial data; parent non-null = error propagates up

Resolver Patterns

  • Return object with ID, let sub-resolvers fetch details—avoids over-fetching at top level
  • __resolveType for unions/interfaces—required to determine concrete type
  • Context for auth, DataLoaders, DB connection—pass through resolver chain
  • Field-level auth in resolvers—check permissions per field, not just per query

Mutations

  • Return modified object—client updates cache without re-fetch
  • Input validation before DB—return user-friendly error, not DB constraint violation
  • Idempotency for critical mutations—accept client-generated ID or idempotency key
  • One mutation per operation typically—batch mutations exist but complicate error handling

Performance

  • Persisted queries: hash → query mapping—smaller payloads, prevents arbitrary queries
  • @defer for slow fields—returns fast fields first, streams slow ones (if supported)
  • Fragment colocation: components define data needs—reduces over-fetching
  • Query allowlisting: only registered queries in production—blocks exploratory attacks

Subscriptions

  • WebSocket-based—graphql-ws protocol; separate from HTTP
  • Scaling: pub/sub needed—Redis or similar for multi-server broadcast
  • Filter at subscription level—don't push everything and filter client-side
  • Unsubscribe on disconnect—clean up resources; connection tracking required

Client-Side

  • Normalized cache (Apollo, Relay)—deduplicate by ID; updates propagate automatically
  • Optimistic UI: predict mutation result—rollback if server differs
  • Error policies: decide per-query—ignore errors, return partial, or treat as failure
  • Fragment reuse—define once, use in multiple queries; keeps fields in sync

Common Mistakes

  • No DataLoader—N+1 kills performance; one query becomes hundreds
  • Exposing internal errors—stack traces leak implementation details
  • No query limits—attackers craft expensive queries; DoS with single request
  • Over-fetching in resolvers—fetching full object when query only needs ID + name
  • Treating like REST—GraphQL is a graph; design for traversal, not resources

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

82.2%
按下载量换算16,051

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

未展示

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills