[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6RB7BD4MA4F4S4P4RE30Q7V":3,"skill-same:01M6RB7BD4MA4F4S4P4RE30Q7V":105},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":49,"linkOnly":50,"markdownContent":51,"markdownBody":52,"frontMatter":53,"refName":61,"commitSha":62,"skillDirectory":63,"forksCount":64,"repositoryHtmlUrl":65,"repositoryHomepageUrl":6,"ownerHtmlUrl":66,"ownerBlogUrl":67,"ownerDescription":6,"updatedAt":68,"install":69,"resources":82},"01M6RB7BD4MA4F4S4P4RE30Q7V","api-designer",null,"Use when designing REST or GraphQL APIs, creating OpenAPI specifications, or planning API architecture. Invoke for resource modeling, versioning strategies, pagination patterns, error handling standards.","PIXARTSeu\u002FSynapse","PIXARTSeu","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F274446381?v=4","01M6RB4XPN9YBZCRY4FVN9PJCT","Pixarts ","01M6RB4XTF8G9KHQEMC21FGDKD",12,"MIT","https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fapi-designer\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],"api","designer","api designer","expert","when","invoke","spring-boot","error","modeling","strategies","patterns","specification","design","engineer","fastapi","reviewer","versioning","documentation","architecture","security","2026-11-10 10:12:30",false,"---\nname: api-designer\ndescription: Use when designing REST or GraphQL APIs, creating OpenAPI specifications, or planning API architecture. Invoke for resource modeling, versioning strategies, pagination patterns, error handling standards.\nlicense: MIT\nmetadata:\n  author: https:\u002F\u002Fgithub.com\u002FJeffallan\n  version: \"1.1.0\"\n  domain: api-architecture\n  triggers: API design, REST API, OpenAPI, API specification, API architecture, resource modeling, API versioning, GraphQL schema, API documentation\n  role: architect\n  scope: design\n  output-format: specification\n  related-skills: graphql-architect, fastapi-expert, nestjs-expert, spring-boot-engineer, security-reviewer\n---\n\n# API Designer\n\nSenior API architect specializing in REST and GraphQL APIs with comprehensive OpenAPI 3.1 specifications.\n\n## Core Workflow\n\n1. **Analyze domain** — Understand business requirements, data models, and client needs\n2. **Model resources** — Identify resources, relationships, and operations; sketch entity diagram before writing any spec\n3. **Design endpoints** — Define URI patterns, HTTP methods, request\u002Fresponse schemas\n4. **Specify contract** — Create OpenAPI 3.1 spec; validate before proceeding: `npx @redocly\u002Fcli lint openapi.yaml`\n5. **Mock and verify** — Spin up a mock server to test contracts: `npx @stoplight\u002Fprism-cli mock openapi.yaml`\n6. **Plan evolution** — Design versioning, deprecation, and backward-compatibility strategy\n\n## Reference Guide\n\nLoad detailed guidance based on context:\n\n| Topic | Reference | Load When |\n|-------|-----------|-----------|\n| REST Patterns | `references\u002Frest-patterns.md` | Resource design, HTTP methods, HATEOAS |\n| Versioning | `references\u002Fversioning.md` | API versions, deprecation, breaking changes |\n| Pagination | `references\u002Fpagination.md` | Cursor, offset, keyset pagination |\n| Error Handling | `references\u002Ferror-handling.md` | Error responses, RFC 7807, status codes |\n| OpenAPI | `references\u002Fopenapi.md` | OpenAPI 3.1, documentation, code generation |\n\n## Constraints\n\n### MUST DO\n- Follow REST principles (resource-oriented, proper HTTP methods)\n- Use consistent naming conventions (snake_case or camelCase — pick one, apply everywhere)\n- Include comprehensive OpenAPI 3.1 specification\n- Design proper error responses with actionable messages (RFC 7807)\n- Implement pagination for all collection endpoints\n- Version APIs with clear deprecation policies\n- Document authentication and authorization\n- Provide request\u002Fresponse examples\n\n### MUST NOT DO\n- Use verbs in resource URIs (use `\u002Fusers\u002F{id}`, not `\u002FgetUser\u002F{id}`)\n- Return inconsistent response structures\n- Skip error code documentation\n- Ignore HTTP status code semantics\n- Design APIs without a versioning strategy\n- Expose implementation details in the API surface\n- Create breaking changes without a migration path\n- Omit rate limiting considerations\n\n## Templates\n\n### OpenAPI 3.1 Resource Endpoint (copy-paste starter)\n\n```yaml\nopenapi: \"3.1.0\"\ninfo:\n  title: Example API\n  version: \"1.1.0\"\npaths:\n  \u002Fusers:\n    get:\n      summary: List users\n      operationId: listUsers\n      tags: [Users]\n      parameters:\n        - name: cursor\n          in: query\n          schema: { type: string }\n          description: Opaque cursor for pagination\n        - name: limit\n          in: query\n          schema: { type: integer, default: 20, maximum: 100 }\n      responses:\n        \"200\":\n          description: Paginated list of users\n          content:\n            application\u002Fjson:\n              schema:\n                type: object\n                required: [data, pagination]\n                properties:\n                  data:\n                    type: array\n                    items: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FUser\" }\n                  pagination:\n                    $ref: \"#\u002Fcomponents\u002Fschemas\u002FCursorPage\"\n        \"400\": { $ref: \"#\u002Fcomponents\u002Fresponses\u002FBadRequest\" }\n        \"401\": { $ref: \"#\u002Fcomponents\u002Fresponses\u002FUnauthorized\" }\n        \"429\": { $ref: \"#\u002Fcomponents\u002Fresponses\u002FTooManyRequests\" }\n  \u002Fusers\u002F{id}:\n    get:\n      summary: Get a user\n      operationId: getUser\n      tags: [Users]\n      parameters:\n        - name: id\n          in: path\n          required: true\n          schema: { type: string, format: uuid }\n      responses:\n        \"200\":\n          description: User found\n          content:\n            application\u002Fjson:\n              schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FUser\" }\n        \"404\": { $ref: \"#\u002Fcomponents\u002Fresponses\u002FNotFound\" }\n\ncomponents:\n  schemas:\n    User:\n      type: object\n      required: [id, email, created_at]\n      properties:\n        id:    { type: string, format: uuid, readOnly: true }\n        email: { type: string, format: email }\n        name:  { type: string }\n        created_at: { type: string, format: date-time, readOnly: true }\n\n    CursorPage:\n      type: object\n      required: [next_cursor, has_more]\n      properties:\n        next_cursor: { type: string, nullable: true }\n        has_more:    { type: boolean }\n\n    Problem:                       # RFC 7807 Problem Details\n      type: object\n      required: [type, title, status]\n      properties:\n        type:     { type: string, format: uri, example: \"https:\u002F\u002Fapi.example.com\u002Ferrors\u002Fvalidation-error\" }\n        title:    { type: string, example: \"Validation Error\" }\n        status:   { type: integer, example: 400 }\n        detail:   { type: string, example: \"The 'email' field must be a valid email address.\" }\n        instance: { type: string, format: uri, example: \"\u002Fusers\u002Freq-abc123\" }\n\n  responses:\n    BadRequest:\n      description: Invalid request parameters\n      content:\n        application\u002Fproblem+json:\n          schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FProblem\" }\n    Unauthorized:\n      description: Missing or invalid authentication\n      content:\n        application\u002Fproblem+json:\n          schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FProblem\" }\n    NotFound:\n      description: Resource not found\n      content:\n        application\u002Fproblem+json:\n          schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FProblem\" }\n    TooManyRequests:\n      description: Rate limit exceeded\n      headers:\n        Retry-After: { schema: { type: integer } }\n      content:\n        application\u002Fproblem+json:\n          schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FProblem\" }\n\n  securitySchemes:\n    BearerAuth:\n      type: http\n      scheme: bearer\n      bearerFormat: JWT\n\nsecurity:\n  - BearerAuth: []\n```\n\n### RFC 7807 Error Response (copy-paste)\n\n```json\n{\n  \"type\": \"https:\u002F\u002Fapi.example.com\u002Ferrors\u002Fvalidation-error\",\n  \"title\": \"Validation Error\",\n  \"status\": 422,\n  \"detail\": \"The 'email' field must be a valid email address.\",\n  \"instance\": \"\u002Fusers\u002Freq-abc123\",\n  \"errors\": [\n    { \"field\": \"email\", \"message\": \"Must be a valid email address.\" }\n  ]\n}\n```\n\n- Always use `Content-Type: application\u002Fproblem+json` for error responses.\n- `type` must be a stable, documented URI — never a generic string.\n- `detail` must be human-readable and actionable.\n- Extend with `errors[]` for field-level validation failures.\n\n## Output Checklist\n\nWhen delivering an API design, provide:\n1. Resource model and relationships (diagram or table)\n2. Endpoint specifications with URIs and HTTP methods\n3. OpenAPI 3.1 specification (YAML)\n4. Authentication and authorization flows\n5. Error response catalog (all 4xx\u002F5xx with `type` URIs)\n6. Pagination and filtering patterns\n7. Versioning and deprecation strategy\n8. Validation result: `npx @redocly\u002Fcli lint openapi.yaml` passes with no errors\n\n## Knowledge Reference\n\nREST architecture, OpenAPI 3.1, GraphQL, HTTP semantics, JSON:API, HATEOAS, OAuth 2.0, JWT, RFC 7807 Problem Details, API versioning patterns, pagination strategies, rate limiting, webhook design, SDK generation\n","# API Designer\n\nSenior API architect specializing in REST and GraphQL APIs with comprehensive OpenAPI 3.1 specifications.\n\n## Core Workflow\n\n1. **Analyze domain** — Understand business requirements, data models, and client needs\n2. **Model resources** — Identify resources, relationships, and operations; sketch entity diagram before writing any spec\n3. **Design endpoints** — Define URI patterns, HTTP methods, request\u002Fresponse schemas\n4. **Specify contract** — Create OpenAPI 3.1 spec; validate before proceeding: `npx @redocly\u002Fcli lint openapi.yaml`\n5. **Mock and verify** — Spin up a mock server to test contracts: `npx @stoplight\u002Fprism-cli mock openapi.yaml`\n6. **Plan evolution** — Design versioning, deprecation, and backward-compatibility strategy\n\n## Reference Guide\n\nLoad detailed guidance based on context:\n\n| Topic | Reference | Load When |\n|-------|-----------|-----------|\n| REST Patterns | `references\u002Frest-patterns.md` | Resource design, HTTP methods, HATEOAS |\n| Versioning | `references\u002Fversioning.md` | API versions, deprecation, breaking changes |\n| Pagination | `references\u002Fpagination.md` | Cursor, offset, keyset pagination |\n| Error Handling | `references\u002Ferror-handling.md` | Error responses, RFC 7807, status codes |\n| OpenAPI | `references\u002Fopenapi.md` | OpenAPI 3.1, documentation, code generation |\n\n## Constraints\n\n### MUST DO\n- Follow REST principles (resource-oriented, proper HTTP methods)\n- Use consistent naming conventions (snake_case or camelCase — pick one, apply everywhere)\n- Include comprehensive OpenAPI 3.1 specification\n- Design proper error responses with actionable messages (RFC 7807)\n- Implement pagination for all collection endpoints\n- Version APIs with clear deprecation policies\n- Document authentication and authorization\n- Provide request\u002Fresponse examples\n\n### MUST NOT DO\n- Use verbs in resource URIs (use `\u002Fusers\u002F{id}`, not `\u002FgetUser\u002F{id}`)\n- Return inconsistent response structures\n- Skip error code documentation\n- Ignore HTTP status code semantics\n- Design APIs without a versioning strategy\n- Expose implementation details in the API surface\n- Create breaking changes without a migration path\n- Omit rate limiting considerations\n\n## Templates\n\n### OpenAPI 3.1 Resource Endpoint (copy-paste starter)\n\n```yaml\nopenapi: \"3.1.0\"\ninfo:\n  title: Example API\n  version: \"1.1.0\"\npaths:\n  \u002Fusers:\n    get:\n      summary: List users\n      operationId: listUsers\n      tags: [Users]\n      parameters:\n        - name: cursor\n          in: query\n          schema: { type: string }\n          description: Opaque cursor for pagination\n        - name: limit\n          in: query\n          schema: { type: integer, default: 20, maximum: 100 }\n      responses:\n        \"200\":\n          description: Paginated list of users\n          content:\n            application\u002Fjson:\n              schema:\n                type: object\n                required: [data, pagination]\n                properties:\n                  data:\n                    type: array\n                    items: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FUser\" }\n                  pagination:\n                    $ref: \"#\u002Fcomponents\u002Fschemas\u002FCursorPage\"\n        \"400\": { $ref: \"#\u002Fcomponents\u002Fresponses\u002FBadRequest\" }\n        \"401\": { $ref: \"#\u002Fcomponents\u002Fresponses\u002FUnauthorized\" }\n        \"429\": { $ref: \"#\u002Fcomponents\u002Fresponses\u002FTooManyRequests\" }\n  \u002Fusers\u002F{id}:\n    get:\n      summary: Get a user\n      operationId: getUser\n      tags: [Users]\n      parameters:\n        - name: id\n          in: path\n          required: true\n          schema: { type: string, format: uuid }\n      responses:\n        \"200\":\n          description: User found\n          content:\n            application\u002Fjson:\n              schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FUser\" }\n        \"404\": { $ref: \"#\u002Fcomponents\u002Fresponses\u002FNotFound\" }\n\ncomponents:\n  schemas:\n    User:\n      type: object\n      required: [id, email, created_at]\n      properties:\n        id:    { type: string, format: uuid, readOnly: true }\n        email: { type: string, format: email }\n        name:  { type: string }\n        created_at: { type: string, format: date-time, readOnly: true }\n\n    CursorPage:\n      type: object\n      required: [next_cursor, has_more]\n      properties:\n        next_cursor: { type: string, nullable: true }\n        has_more:    { type: boolean }\n\n    Problem:                       # RFC 7807 Problem Details\n      type: object\n      required: [type, title, status]\n      properties:\n        type:     { type: string, format: uri, example: \"https:\u002F\u002Fapi.example.com\u002Ferrors\u002Fvalidation-error\" }\n        title:    { type: string, example: \"Validation Error\" }\n        status:   { type: integer, example: 400 }\n        detail:   { type: string, example: \"The 'email' field must be a valid email address.\" }\n        instance: { type: string, format: uri, example: \"\u002Fusers\u002Freq-abc123\" }\n\n  responses:\n    BadRequest:\n      description: Invalid request parameters\n      content:\n        application\u002Fproblem+json:\n          schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FProblem\" }\n    Unauthorized:\n      description: Missing or invalid authentication\n      content:\n        application\u002Fproblem+json:\n          schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FProblem\" }\n    NotFound:\n      description: Resource not found\n      content:\n        application\u002Fproblem+json:\n          schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FProblem\" }\n    TooManyRequests:\n      description: Rate limit exceeded\n      headers:\n        Retry-After: { schema: { type: integer } }\n      content:\n        application\u002Fproblem+json:\n          schema: { $ref: \"#\u002Fcomponents\u002Fschemas\u002FProblem\" }\n\n  securitySchemes:\n    BearerAuth:\n      type: http\n      scheme: bearer\n      bearerFormat: JWT\n\nsecurity:\n  - BearerAuth: []\n```\n\n### RFC 7807 Error Response (copy-paste)\n\n```json\n{\n  \"type\": \"https:\u002F\u002Fapi.example.com\u002Ferrors\u002Fvalidation-error\",\n  \"title\": \"Validation Error\",\n  \"status\": 422,\n  \"detail\": \"The 'email' field must be a valid email address.\",\n  \"instance\": \"\u002Fusers\u002Freq-abc123\",\n  \"errors\": [\n    { \"field\": \"email\", \"message\": \"Must be a valid email address.\" }\n  ]\n}\n```\n\n- Always use `Content-Type: application\u002Fproblem+json` for error responses.\n- `type` must be a stable, documented URI — never a generic string.\n- `detail` must be human-readable and actionable.\n- Extend with `errors[]` for field-level validation failures.\n\n## Output Checklist\n\nWhen delivering an API design, provide:\n1. Resource model and relationships (diagram or table)\n2. Endpoint specifications with URIs and HTTP methods\n3. OpenAPI 3.1 specification (YAML)\n4. Authentication and authorization flows\n5. Error response catalog (all 4xx\u002F5xx with `type` URIs)\n6. Pagination and filtering patterns\n7. Versioning and deprecation strategy\n8. Validation result: `npx @redocly\u002Fcli lint openapi.yaml` passes with no errors\n\n## Knowledge Reference\n\nREST architecture, OpenAPI 3.1, GraphQL, HTTP semantics, JSON:API, HATEOAS, OAuth 2.0, JWT, RFC 7807 Problem Details, API versioning patterns, pagination strategies, rate limiting, webhook design, SDK generation\n",{"name":5,"license":15,"metadata":54,"description":7},{"role":55,"scope":41,"author":56,"domain":57,"version":58,"triggers":59,"output-format":40,"related-skills":60},"architect","https:\u002F\u002Fgithub.com\u002FJeffallan","api-architecture","1.1.0","API design, REST API, OpenAPI, API specification, API architecture, resource modeling, API versioning, GraphQL schema, API documentation","graphql-architect, fastapi-expert, nestjs-expert, spring-boot-engineer, security-reviewer","main","c19c0bc0a04d25a849ce749fe88250e688f06437",".agents\u002Fskills\u002Fapi-designer",1,"https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse","https:\u002F\u002Fgithub.com\u002FPIXARTSeu","https:\u002F\u002Fpixarts.eu\u002F","2026-09-24 06:30:45",{"source":8,"skillName":5,"commands":70,"prompt":80,"zipAvailable":81},[71,74,77],{"tool":72,"command":73},"npx","npx skills add PIXARTSeu\u002FSynapse --skill api-designer",{"tool":75,"command":76},"bunx","bunx skills add PIXARTSeu\u002FSynapse --skill api-designer",{"tool":78,"command":79},"pnpm","pnpm dlx skills add PIXARTSeu\u002FSynapse --skill api-designer","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fapi-designer\u002FSKILL.md",true,[83,89,93,97,101],{"path":84,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":87,"sourceHtmlUrl":88},"references\u002Ferror-handling.md","REFERENCE","参考文档",11580,"https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fapi-designer\u002Freferences\u002Ferror-handling.md",{"path":90,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":91,"sourceHtmlUrl":92},"references\u002Fopenapi.md",16380,"https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fapi-designer\u002Freferences\u002Fopenapi.md",{"path":94,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":95,"sourceHtmlUrl":96},"references\u002Fpagination.md",9634,"https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fapi-designer\u002Freferences\u002Fpagination.md",{"path":98,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":99,"sourceHtmlUrl":100},"references\u002Frest-patterns.md",7516,"https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fapi-designer\u002Freferences\u002Frest-patterns.md",{"path":102,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":103,"sourceHtmlUrl":104},"references\u002Fversioning.md",7945,"https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fapi-designer\u002Freferences\u002Fversioning.md",[106,135,142,163,183,210],{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":116,"publishedAt":49},"01M6X0ECZKGP44NP2JW588B9RG","vercel-react-best-practices","React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React\u002FNext.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.","https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002Fskills\u002Fvercel-react-best-practices\u002FSKILL.md",[112,115],{"categoryNo":113,"categoryName":114,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,39,132,133,134,33],"react","vercel react best practices","best practices","react best practices","vercel","writing","performance","components","react components","guidelines","tasks","code","Optimization","data","refactoring","next","triggers","data fetching",{"skillNo":136,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":141,"publishedAt":49},"01M6X05WCVH879XKZEAQ15PHQX","https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002Fpackages\u002Fcodegraph\u002Fdata\u002Fskill\u002Fvercel-react-best-practices\u002FSKILL.md",[139,140],{"categoryNo":113,"categoryName":114,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,39,132,133,134,33],{"skillNo":143,"name":144,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":150,"publishedAt":49},"01M6WZ286AR2SYE9GZYVW0CNYG","wordpress-pro","Develops custom WordPress themes and plugins, creates and registers Gutenberg blocks and block patterns, configures WooCommerce stores, implements WordPress REST API endpoints, applies security hardening (nonces, sanitization, escaping, capability checks), and optimizes performance through caching and query tuning. Use when building WordPress themes, writing plugins, customizing Gutenberg blocks, extending WooCommerce, working with ACF, using the WordPress REST API, applying hooks and filters, or improving WordPress performance and security.","https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002Fpackages\u002Fcodegraph\u002Fdata\u002Flifecycle-skills\u002Fwordpress-pro\u002FSKILL.md",[148,149],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[151,152,153,122,48,123,128,154,29,155,44,156,157,32,158,159,160,161,162,33],"wordpress","wordpress pro","pro","tuning","laravel","hooks","filters","query","woocommerce","caching","themes","sanitization",{"skillNo":164,"name":165,"nameZh":6,"description":166,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":167,"categories":168,"keywords":171,"publishedAt":49},"01M6WZ1ZVG6PJ4PVN9RTK0BX7Z","websocket-engineer","Use when building real-time communication systems with WebSockets or Socket.IO. Invoke for bidirectional messaging, horizontal scaling with Redis, presence tracking, room management.","https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002Fpackages\u002Fcodegraph\u002Fdata\u002Flifecycle-skills\u002Fwebsocket-engineer\u002FSKILL.md",[169,170],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[172,42,173,47,128,174,175,29,44,43,32,176,177,178,179,180,181,182,34,33],"websocket","websocket engineer","messaging","monitoring","time","scaling","io","communication systems","presence","updates","socket",{"skillNo":184,"name":185,"nameZh":6,"description":186,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":187,"categories":188,"keywords":192,"publishedAt":49},"01M6WZ1G86ZR73H0WNM6CGNRGF","vue-expert","Builds Vue 3 components with Composition API patterns, configures Nuxt 3 SSR\u002FSSG projects, sets up Pinia stores, scaffolds Quasar\u002FCapacitor mobile apps, implements PWA features, and optimises Vite builds. Use when creating Vue 3 applications with Composition API, writing reusable composables, managing state with Pinia, building hybrid mobile apps with Quasar or Capacitor, configuring service workers, or tuning Vite configuration and TypeScript integration.","https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002Fpackages\u002Fcodegraph\u002Fdata\u002Flifecycle-skills\u002Fvue-expert\u002FSKILL.md",[189,190,191],{"categoryNo":113,"categoryName":114,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[193,32,194,195,122,196,124,197,198,199,200,201,202,203,204,205,206,207,208,209],"vue","vue expert","frontend","typescript","config","applications","Composition","projects","pinia","use","router","workers","mobile","reusable","worker","apps","hybrid",{"skillNo":211,"name":212,"nameZh":6,"description":213,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":214,"categories":215,"keywords":218,"publishedAt":49},"01M6WZ1AP3GFCBAMD712X8KRP7","vue-expert-js","Creates Vue 3 components, builds vanilla JS composables, configures Vite projects, and sets up routing and state management using JavaScript only — no TypeScript. Generates JSDoc-typed code with @typedef, @param, and @returns annotations for full type coverage without a TS compiler. Use when building Vue 3 applications with JavaScript only (no TypeScript), when projects require JSDoc-based type hints, when migrating from Vue 2 Options API to Composition API in JS, or when teams prefer vanilla JavaScript, .mjs modules, or need quick prototypes without TypeScript setup.","https:\u002F\u002Fgithub.com\u002FPIXARTSeu\u002FSynapse\u002Fblob\u002Fmain\u002Fpackages\u002Fcodegraph\u002Fdata\u002Flifecycle-skills\u002Fvue-expert-js\u002FSKILL.md",[216,217],{"categoryNo":113,"categoryName":114,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[193,219,32,220,194,195,196,124,128,29,199,200,221,222,223,224,225,226,227,33],"js","vue expert js","coverage","only","up","modules","options","jsdoc","quick"]