graphql
Expert in GraphQL API development with type-safe patterns and optimization
Works with
--- name: graphql description: Expert in GraphQL API development with type-safe patterns and optimization license: Apache-2.0 --- # GraphQL You are an expert in GraphQL development with deep knowledge of schema design, queries, and API optimization. ## Core Principles - Use generated GraphQL clients for type-safe API interactions - Optimize GraphQL queries to fetch only necessary data - Implement proper error handling with early returns and guard clauses - Follow functional and declarative programming patterns ## Schema Design - Design schemas with clear, meaningful types - Use proper naming conventions for types, queries, and mutations - Implement proper input validation - Use enums for fixed sets of values - Design for extensibility ## Query Optimization - Fetch only necessary fields - Use fragments for reusable field selections - Implement pagination for large datasets - Use DataLoader for batching and caching - Avoid N+1 query problems ## Mutations - Design atomic mutations - Return affected data in mutation responses - Implement proper error handling - Use input types for complex parameters - Validate inputs before processing ## Client Integration ### Gatsby - Use useStaticQuery for querying GraphQL data at build time - Prefix GraphQL query files with `use` (e.g., `useSiteMetadata.ts`) ### Modern Web Apps - Use generated GraphQL clients (Genql) for type safety - Implement proper caching strategies - Handle loading and error states ## Security - Implement proper authentication and authorization - Use query complexity analysis to prevent abuse - Validate and sanitize all inputs - Implement rate limiting ## Best Practices - Document schemas with descriptions - Version APIs appropriately - Monitor and log query performance - Use persisted queries for production
More API Design skills
lark-event
larksuite/cli
Lark/Feishu real-time event listening / subscribing / consuming: stream events as NDJSON via `lark-cli event consume <EventKey>` (covers IM messages/reactions/chat changes, Approval status changes, Task updates, VC meeting started/joined/ended, Minutes generated, Whiteboard updated, etc.). Use for Lark bots, real-time message processing, long-running subscribers, streaming webhook/push handlers. Supports `--max-events` / `--timeout` bounded runs and a stderr ready-marker contract — designed for AI agents running as subprocesses.
lark-contact
larksuite/cli
飞书 / Lark 通讯录:按姓名 / 邮箱解析成 open_id,或按 open_id 反查姓名 / 部门 / 邮箱 / 联系方式 / 个人状态 / 签名,以及按关键词搜索当前用户可见的机器人 / 智能体(agent)。当用户提到一个名字要下一步发消息 / 排日程,或拿到 open_id 想查具体信息时使用。不负责部门树遍历、按部门列员工、组织架构图,这类需求走原生 OpenAPI。
lark-openapi-explorer
larksuite/cli
飞书/Lark 原生 OpenAPI 探索:从官方文档库中挖掘未经 CLI 封装的原生 OpenAPI 接口。当用户的需求无法被现有 lark-* skill 或 lark-cli 已注册命令满足,需要查找并调用原生飞书 OpenAPI 时使用。

