Skip to content

feat(seo): programmatic pages for 151 skills/agents/commands #1111

@yonatangross

Description

@yonatangross

Goal

151 programmatic SEO pages from existing OrchestKit .md content — skills, agents, commands.

Page Breakdown

  • /skills/[slug] — 93 pages (from plugins/ork/skills/*/SKILL.md)
  • /agents/[slug] — 33 pages (from plugins/ork/agents/*.md)
  • /commands/[slug] — 20 pages (from plugins/ork/commands/*.md)
  • /skills, /agents, /commands — 3 index pages
  • /docs/getting-started, /docs/writing-skills, etc. — ~5 guide pages

Implementation Options

Option A (simple): generateStaticParams() + fs.readFileSync at build time — reads .md files directly, no Sanity needed
Option B (full): Ingest .md files into Sanity (8cv388wg) + ISR — enables Studio editing

Recommend Option A first, migrate to B later.

Per-Page Content

Each skill/agent/command page includes:

  • H1 title + description (from frontmatter)
  • Usage section + code examples
  • Related skills/agents (internal linking)
  • JSON-LD: SoftwareApplication
  • OG image
  • CTA: Install OrchestKit + GitHub link

Internal Linking Matrix

  • Skill → related skills + parent command + pillar page
  • Agent → skills it spawns + related agents + pillar page
  • Command → skill it invokes + pillar page

SEO Target Keywords (examples)

  • /skills/commit → "claude code commit hook", "ai conventional commit"
  • /skills/cover → "ai test generation cli", "claude code test writer"
  • /agents/database-engineer → "ai database migration agent", "postgres ai agent"
  • /commands/brainstorm → "claude code brainstorm", "ai design exploration"

Tasks

  • app/skills/page.tsx — skills index
  • app/skills/[slug]/page.tsx — skill page
  • app/agents/page.tsx — agents index
  • app/agents/[slug]/page.tsx — agent page
  • app/commands/page.tsx — commands index
  • app/commands/[slug]/page.tsx — command page
  • lib/orchestkit-content.ts — parse .md files at build time
  • app/sitemap.ts — include all 151 pages
  • JSON-LD helpers (shared from vercel-functions package)
  • Pillar page: /docs/getting-started — "Claude Code Plugins: Complete Guide"

Context

Phase 3 — Programmatic SEO. Content already exists as .md files — this is pure wiring.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions