{"id":"03793f10-d054-41aa-8411-1f9e175458a5","slug":"kumbajirajkumar123-nextjs-seo-optimizer","name":"nextjs-seo-optimizer","description":"Comprehensive Next.js SEO optimization skill for metadata, sitemaps, robots.txt, structured data, and Core Web Vitals. Use when building or auditing Next.js applications for SEO, implementing metadata API, generating sitemaps, adding Open Graph tags, creating JSON-LD structured data, optimizing for search engines, or improving search rankings. Works with Next.js 13+ App Router and Pages Router.","canonicalUrl":"https://www.xpersona.co/skill/kumbajirajkumar123-nextjs-seo-optimizer","sourceUrl":"https://github.com/kumbajirajkumar123/nextjs-seo-optimizer","homepage":null,"source":"GITHUB_OPENCLEW","vendor":{"slug":"kumbajirajkumar123","label":"Kumbajirajkumar123","url":"https://github.com/kumbajirajkumar123/nextjs-seo-optimizer"},"protocols":["OPENCLEW"],"capabilities":[],"trustScore":null,"trustConfidence":"unknown","artifactCount":0,"benchmarkCount":0,"lastRelease":null,"freshnessAt":"2026-04-15T03:14:17.852Z","freshnessLabel":"Apr 15, 2026","securityReviewed":true,"openapiReady":false,"stats":[{"label":"Trust score","value":"Unknown"},{"label":"Compatibility","value":"OpenClaw"},{"label":"Freshness","value":"Apr 15, 2026"},{"label":"Vendor","value":"Kumbajirajkumar123"},{"label":"Artifacts","value":"0"},{"label":"Benchmarks","value":"0"},{"label":"Last release","value":"Unpublished"}],"factsPreview":[{"factKey":"docs_crawl","label":"Crawlable docs","value":"6 indexed pages on the official domain","category":"integration","href":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceUrl":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceType":"search_document","confidence":"medium","observedAt":"2026-04-15T05:03:46.393Z","isPublic":true,"metadata":{}},{"factKey":"vendor","label":"Vendor","value":"Kumbajirajkumar123","category":"vendor","href":"https://github.com/kumbajirajkumar123/nextjs-seo-optimizer","sourceUrl":"https://github.com/kumbajirajkumar123/nextjs-seo-optimizer","sourceType":"profile","confidence":"medium","observedAt":"2026-04-15T03:14:17.852Z","isPublic":true,"metadata":{}},{"factKey":"protocols","label":"Protocol compatibility","value":"OpenClaw","category":"compatibility","href":"https://www.xpersona.co/api/v1/agents/kumbajirajkumar123-nextjs-seo-optimizer/contract","sourceUrl":"https://www.xpersona.co/api/v1/agents/kumbajirajkumar123-nextjs-seo-optimizer/contract","sourceType":"contract","confidence":"medium","observedAt":"2026-04-15T03:14:17.852Z","isPublic":true,"metadata":{}},{"factKey":"traction","label":"Adoption signal","value":"1 GitHub stars","category":"adoption","href":"https://github.com/kumbajirajkumar123/nextjs-seo-optimizer","sourceUrl":"https://github.com/kumbajirajkumar123/nextjs-seo-optimizer","sourceType":"profile","confidence":"medium","observedAt":"2026-04-15T03:14:17.852Z","isPublic":true,"metadata":{}},{"factKey":"handshake_status","label":"Handshake status","value":"UNKNOWN","category":"security","href":"https://www.xpersona.co/api/v1/agents/kumbajirajkumar123-nextjs-seo-optimizer/trust","sourceUrl":"https://www.xpersona.co/api/v1/agents/kumbajirajkumar123-nextjs-seo-optimizer/trust","sourceType":"trust","confidence":"medium","observedAt":null,"isPublic":true,"metadata":{}}],"highlights":["1 GitHub stars","Trust evidence available"],"agentCard":{"name":"nextjs-seo-optimizer","description":"Comprehensive Next.js SEO optimization skill for metadata, sitemaps, robots.txt, structured data, and Core Web Vitals. Use when building or auditing Next.js applications for SEO, implementing metadata API, generating sitemaps, adding Open Graph tags, creating JSON-LD structured data, optimizing for search engines, or improving search rankings. Works with Next.js 13+ App Router and Pages Router.","source":"GITHUB_OPENCLEW","sourceId":"github:1143060061","repository":"https://github.com/kumbajirajkumar123/nextjs-seo-optimizer","documentation":"https://www.xpersona.co/skill/kumbajirajkumar123-nextjs-seo-optimizer/agent/kumbajirajkumar123-nextjs-seo-optimizer","protocols":["OPENCLEW"],"languages":["typescript"],"install":{"command":"git clone https://github.com/kumbajirajkumar123/nextjs-seo-optimizer.git","ecosystem":"git"},"examples":[{"kind":"example","language":"typescript","snippet":"// app/layout.tsx or app/page.tsx\nimport { Metadata } from 'next'\n\nexport const metadata: Metadata = {\n  title: {\n    default: 'Your Site Name',\n    template: '%s | Your Site Name' // Pages will be \"Page Title | Your Site Name\"\n  },\n  description: 'Compelling 150-160 character description with keywords',\n  keywords: ['keyword1', 'keyword2', 'keyword3'],\n  authors: [{ name: 'Author Name', url: 'https://example.com' }],\n  creator: 'Company Name',\n  publisher: 'Company Name',\n  metadataBase: new URL('https://yourdomain.com'),\n  alternates: {\n    canonical: '/',\n  },\n  openGraph: {\n    type: 'website',\n    locale: 'en_US',\n    url: 'https://yourdomain.com',\n    title: 'Your Site Name',\n    description: 'Compelling description for social sharing',\n    siteName: 'Your Site Name',\n    images: [{\n      url: '/og-image.jpg', // 1200x630px recommended\n      width: 1200,\n      height: 630,\n      alt: 'Image description',\n    }],\n  },\n  twitter: {\n    card: 'summary_large_image',\n    title: 'Your Site Name',\n    description: 'Compelling description',\n    creator: '@yourtwitterhandle',\n    images: ['/twitter-image.jpg'], // 1200x628px\n  },\n  robots: {\n    index: true,\n    follow: true,\n    googleBot: {\n      index: true,\n      follow: true,\n      'max-video-preview': -1,\n      'max-image-preview': 'large',\n      'max-snippet': -1,\n    },\n  },\n  verification: {\n    google: 'verification-code',\n    yandex: 'verification-code',\n    yahoo: 'verification-code',\n  },\n}"},{"kind":"example","language":"typescript","snippet":"// app/blog/[slug]/page.tsx\nimport { Metadata, ResolvingMetadata } from 'next'\n\ntype Props = {\n  params: { slug: string }\n  searchParams: { [key: string]: string | string[] | undefined }\n}\n\nexport async function generateMetadata(\n  { params, searchParams }: Props,\n  parent: ResolvingMetadata\n): Promise<Metadata> {\n  // Fetch data\n  const post = await fetchBlogPost(params.slug)\n  \n  // Optionally access and extend parent metadata\n  const previousImages = (await parent).openGraph?.images || []\n  const previousKeywords = (await parent).keywords || []\n \n  return {\n    title: post.title, // Will use template from layout\n    description: post.excerpt.substring(0, 160),\n    keywords: [...previousKeywords, ...post.tags],\n    authors: [{ name: post.author.name }],\n    openGraph: {\n      title: post.title,\n      description: post.excerpt,\n      type: 'article',\n      publishedTime: post.publishedAt,\n      modifiedTime: post.updatedAt,\n      authors: [post.author.name],\n      images: [post.coverImage, ...previousImages],\n      url: `https://yourdomain.com/blog/${params.slug}`,\n    },\n    twitter: {\n      card: 'summary_large_image',\n      title: post.title,\n      description: post.excerpt,\n      images: [post.coverImage],\n    },\n    alternates: {\n      canonical: `https://yourdomain.com/blog/${params.slug}`,\n    },\n  }\n}\n\nexport default function Page({ params }: Props) {\n  // Page content\n}"}]}}