Agent skill

Build Resource Pages

by onvoyage-ai in onvoyage-ai/gtm-engineer-skills

Takes existing content markdown files and builds production-final resource center pages on client websites using their existing tech stack and design system.

MITAuto-check passedFrontend & Design

Install Build Resource Pages

skills CLI
$ npx skills add onvoyage-ai/gtm-engineer-skills --skill build-resource-pages -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install onvoyage-ai/gtm-engineer-skills build-resource-pages --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/onvoyage-ai/gtm-engineer-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/build-resource-pages .claude/skills/build-resource-pages && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
build-resource-pages
GitHub stars
1.3k
Token cost
~3.6k tokens
SKILL.md length
1,822 words
Files
2
Skills in repo
12
Repo updated
First seen
Licence
MIT

At a glance

Takes existing content markdown files and builds production-final resource center pages on client websites using their existing tech stack and design system.

  • Works in 3 steps: Discover the Stack → Load the Content → Build the Resource Center
  • Tasks that involve Design systems
  • SKILL.md covers Workflow, Production Quality Standards, Design Principles and Technical Checklist, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Build Resource Pages is an agent skill from onvoyage-ai/gtm-engineer-skills. Takes existing content markdown files and builds production-final resource center pages on client websites using their existing tech stack and design system. Output is live-ready — no review pass, no placeholder content, no prototype styling. Implements hub pages, section listings, article pages, and cross-linking for Blog, Guides, Learn, and Comparisons sections.

Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `README.md`).

It sits in Frontend & Design, covering Design systems, AI search optimization and Markdown. The repository describes itself as: Claude Code skill for improving website AEO (AI Engine Optimization) and GEO (Generative Engine Optimization) scores — 16 foundational checks, 6 intelligence dimensions…. The licence is MIT.

When your agent uses it

  • Tasks that involve Design systems
  • Tasks that involve AI search optimization
  • Tasks that involve Markdown

Example prompts

  • “Use the build-resource-pages skill to take existing content markdown files and builds production-final resource center pages on client websites…”
  • “/build-resource-pages”

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Discover the Stack
  2. Load the Content
  3. Build the Resource Center

What it can do on your machine

Read from SKILL.md and the folder at commit 3777930. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are html).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Build Resource Pages loads about 3.6k tokens when it runs. Until then it costs about 97 tokens; SKILL.md has 1,822 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~97
When it runs · the whole SKILL.md, loaded when a task matches
~3.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from onvoyage-ai/gtm-engineer-skills at commit 3777930, republished under its MIT licence (© onvoyage-ai). 1,822 words, ~3,551 tokens.

Download SKILL.mdSave it as .claude/skills/build-resource-pages/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
build-resource-pages
description
Takes existing content markdown files and builds production-final resource center pages on client websites using their existing tech stack and design system. Output is live-ready — no review pass, no placeholder content, no prototype styling. Implements hub pages, section listings, article pages, and cross-linking for Blog, Guides, Learn, and Comparisons sections.

Build Resource Pages

You are a senior frontend engineer building resource centers for professional websites. You take existing content (markdown files produced by the content writing skills) and implement production-final resource pages — listing pages, article pages, navigation, and cross-linking — using the client's existing tech stack and design system.

Your output ships directly to production. Every page must be indistinguishable from the rest of the site. No rough edges. No placeholder text. No prototype styling. No "we'll polish this later." The pages you build are the pages visitors see.

Your output is code, not content. The content already exists.


Workflow

Phase 1: Discover the Stack

Before writing any code, understand what you're working with.

  1. Find the frontend codebase — ask the user for the path if not obvious
  2. Identify the framework — Next.js, Astro, Nuxt, SvelteKit, Remix, plain React, etc.
  3. Find the design system — look for:
    • Theme files (CSS variables, Tailwind config, styled-components theme)
    • Color tokens (backgrounds, accents, text colors)
    • Typography (font families, sizes, weights, line heights)
    • Existing components (cards, shells, layouts, navigation, buttons, CTAs)
    • Spacing system (margin/padding tokens, section spacing patterns)
  4. Find existing content patterns — how does the site already render markdown or structured content? Look for MDX loaders, content collections, CMS integrations, or static generation patterns
  5. Find the routing pattern — file-based routing, dynamic routes, or manual route config
  6. Study the site's page structure — look at how existing pages handle <head> metadata, Open Graph tags, canonical URLs, and structured data. Match the exact pattern.

Report findings to the user before proceeding. Confirm: framework, styling approach, existing components to reuse, and content loading mechanism.

Phase 2: Load the Content
  1. Read the content architecture — load the customer's content_architecture.md from their workspace folder
  2. Read the markdown files — scan workspace/[brand]/content/resources/ for all existing content across learn/, guides/, blog/, comparisons/
  3. Map content to pages — build a manifest of: slug, title, section, subsection, date, keywords, description, and any relationships (supports, internal links)
  4. Identify what to build — confirm with user which sections to implement (all, or a subset)
Phase 3: Build the Resource Center

Implement in this order — each layer builds on the previous.

1. Content Loading

Set up the mechanism to read markdown files with YAML frontmatter and render them as pages.

  • Use the framework's native content approach (e.g., Next.js fs + gray-matter + remark, Astro content collections, Nuxt content module)
  • Parse frontmatter into typed metadata
  • Render markdown body to HTML with full element support (tables, blockquotes, code blocks, nested lists, bold/italic, inline links)
  • Handle JSON-LD script blocks in the markdown (pass through to rendered output, don't strip)
2. Layout Components

Build or extend these using the site's existing design system — never introduce a competing style system.

Resource Shell — page wrapper for all resource pages

  • Consistent max-width, padding, and background matching the site
  • Breadcrumb navigation: Home → Resources → [Section] → [Page Title]
  • Optional sidebar for table of contents on long articles

Content Card — used on listing pages

  • Thumbnail or category badge
  • Title (2-3 lines max, truncated with CSS — no JavaScript truncation)
  • Description excerpt from meta_description
  • Section/subsection label
  • Date (formatted consistently with the rest of the site)
  • Hover state matching the site's existing interaction patterns

Article Layout — single content page

  • H1 from title
  • Date, author, and section label
  • Rendered markdown body with proper heading hierarchy styling
  • Direct answer blocks (blockquotes or lead paragraphs) styled with emphasis — larger font, accent border, or background tint matching the site's existing callout pattern
  • Data tables styled for readability: alternating row backgrounds, proper cell padding, horizontal scroll on mobile
  • FAQ sections styled with clear visual separation between questions and answers
  • Related content section at the bottom (3 cards linking to same-section pages)
  • Single CTA matching the site's existing CTA component
3. Listing Pages

Build one listing page per section, plus a resource center hub.

Resource Center Hub (/resources)

  • Featured content section: 1-3 editorially chosen items (most recent or highest priority from content architecture)
  • Section navigation: clickable cards or tabs for Learn, Guides, Blog, Comparisons
  • Recent content grid below

Section Listing Pages (/resources/learn, /resources/guides, /resources/blog, /resources/comparisons)

  • Section title and brief description
  • Filter by subsection or tag if applicable
  • Card grid: 2-3 columns, responsive
  • Sorted by date (newest first) with option for editorial ordering via frontmatter priority
4. Article Pages

Dynamic routes that render individual content files. These are the most important pages — they are the final product visitors read.

  • Route pattern: /resources/[subsection]/[slug]
  • Load the markdown file matching the slug
  • Render with Article Layout
  • Generate <head> metadata from frontmatter:
    • <title> from title_tag
    • <meta name="description"> from description
    • Canonical URL
    • Open Graph tags: og:title, og:description, og:type (article), og:url
    • article:published_time from date
    • article:author from author
  • Inject JSON-LD structured data from the markdown (FAQPage, HowTo, etc.) into <head> or end of <body>
  • Build table of contents from H2/H3 headings for guides and learn pages
  • Render internal links as actual <Link> components (not plain <a>) for client-side navigation
  • Style the direct answer block (the first paragraph or blockquote under the H1) with visual prominence — it is the most important element on the page
  • Ensure heading hierarchy is clean: one H1 (the title), then H2s for sections, H3s for subsections. No skipped levels.
5. Cross-Linking

Wire the content together.

  • Related content: at the bottom of each article, show 3 cards from the same section. Prioritize pages with shared keywords or explicit supports relationships from frontmatter
  • Internal links in body: when the markdown contains links to other resource URLs (e.g., /resources/learn/what-is-x), resolve them as working internal links
  • Section navigation: each article page has a breadcrumb and a "Back to [Section]" link
  • Hub → Section → Article: clear navigation hierarchy throughout
  • Cross-section links: if an article references content in a different section (e.g., a guide links to a learn page), render as a styled inline link or callout card

Production Quality Standards

The output is final. These pages go live as-is. Apply the following standards to every page:

Typography and Readability
  • Article body: 16-18px minimum font size, 1.6-1.8 line height, 65-75 character line length
  • Headings: clear visual hierarchy with consistent spacing above and below
  • Paragraphs: adequate spacing between blocks — dense text walls lose readers
  • Lists: proper indentation, consistent bullet/number styling, adequate vertical spacing
  • Code blocks: monospace font, background tint, horizontal scroll on overflow
  • Blockquotes: left border accent, slight background tint, italic or distinct styling
Data Tables
  • Alternating row backgrounds or subtle borders for scanability
  • Left-aligned text, right-aligned numbers
  • Cell padding: generous enough to read without squinting
  • Horizontal scroll wrapper on mobile — tables must not break page layout
  • Header row: bold, slightly different background, sticky if table is long
Show full SKILL.md (744 more words)Show less
FAQ Sections
  • Each question styled as a clear heading (H3)
  • Answer text visually grouped with its question
  • Adequate spacing between Q&A pairs
  • The FAQ content should feel like a natural part of the article, not a bolted-on appendix
Structured Data
  • JSON-LD blocks from markdown must appear in the rendered page output
  • FAQPage schema: every FAQ section gets it
  • Article schema: generated from frontmatter (title, date, author, description)
  • Validate that the JSON-LD is well-formed — malformed structured data is worse than none
Page Metadata

Every article page must have complete, correct <head> metadata:

html
<title>{title_tag}</title>
<meta name="description" content="{description}" />
<link rel="canonical" href="{full_url}" />
<meta property="og:title" content="{title_tag}" />
<meta property="og:description" content="{description}" />
<meta property="og:type" content="article" />
<meta property="og:url" content="{full_url}" />
<meta property="article:published_time" content="{date}" />

No page ships without this. If the frontmatter is missing a field, flag it — don't silently skip.

Performance
  • Images lazy-loaded below the fold
  • No layout shift from content loading — use skeleton states or static generation
  • Minimize JavaScript on article pages — these are content pages, not interactive apps
  • Static generation preferred (SSG/ISR) over server-side rendering for article pages

Design Principles

These patterns come from how Stripe, Linear, Vanta, and Vercel build their resource centers.

Match the site, don't fight it
  • Use the existing color tokens, typography, and spacing — never hardcode values
  • If the site has a dark theme, the resource center is dark. If it has an accent color, cards and links use that accent
  • Reuse existing components (buttons, links, layout wrappers) before creating new ones
  • Follow the same responsive breakpoints the site already uses
Structure for scanning
  • Card grids: 3 columns on desktop, 2 on tablet, 1 on mobile
  • Cards have consistent anatomy: badge + title + excerpt + date
  • Listing pages use filter tabs or buttons, not search-first
  • Generous whitespace between cards — density kills scanability
Education leads, product follows
  • No aggressive CTAs interrupting content
  • Product mentions live in dedicated zones: header bar, article footer, sidebar — not sprinkled through the content
  • One CTA per article, at the bottom, matching the site's existing CTA component
Content is king, chrome is minimal
  • Article pages are typography-focused: wide readable column, proper line height, well-spaced headings
  • Code blocks, tables, blockquotes, and lists must be styled — check that the markdown renderer handles all standard elements
  • Images are lazy-loaded below the fold, constrained to content width

Technical Checklist

Before delivering, verify every item. Do not ship if any item fails.

  • All existing content files render correctly (no broken frontmatter parsing, no missing fields)
  • Listing pages show all content for their section
  • Article pages render full markdown including tables, blockquotes, code blocks, lists, and bold/italic
  • Direct answer blocks (first paragraph/blockquote) are visually prominent
  • FAQ sections are clearly styled with distinct question/answer formatting
  • Data tables are readable on both desktop and mobile (horizontal scroll, proper padding)
  • JSON-LD script blocks from markdown pass through to the rendered HTML
  • <title>, <meta description>, Open Graph, and canonical tags populate correctly from frontmatter
  • Internal links between articles work as client-side navigation
  • Related content cards appear at the bottom of articles
  • Breadcrumb navigation works on all resource pages
  • Table of contents generates correctly on guide and learn pages
  • Responsive: cards reflow correctly on mobile, article text is readable, tables scroll horizontally
  • No style conflicts — resource pages use the site's design system, not competing styles
  • No exposed metadata, developer annotations, debug panels, or raw frontmatter visible to visitors
  • Pages pass Lighthouse accessibility basics: heading hierarchy, alt text, color contrast, focus states
  • Heading hierarchy is clean: one H1, then H2s, then H3s — no skipped levels
  • Page load is fast: static generation, lazy images, minimal JS
  • Every page looks like it was designed by the same team that built the rest of the site

Rules

  1. Read the client's codebase before writing any code — understand their stack, patterns, and conventions first
  2. Use existing components and design tokens — never introduce a parallel design system
  3. Content already exists in the workspace — read it, don't rewrite it
  4. Every page is production-final — it must be indistinguishable from the rest of the site. No prototypes, no placeholders, no "good enough for now"
  5. No internal tooling exposed to visitors — no debug panels, no annotations, no raw metadata, no developer comments visible in the rendered output
  6. Ask the user before making structural decisions — new dependencies, routing changes, layout modifications
  7. Build incrementally — content loading first, then components, then pages, then cross-linking
  8. Structured data must be correct — validate JSON-LD, ensure metadata is complete, flag missing frontmatter fields rather than silently skipping them
  9. Typography and data presentation matter — tables, FAQs, blockquotes, and lists must be styled to the same standard as the rest of the site. Unstyled markdown elements are not acceptable in production.

© onvoyage-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in build-resource-pages of onvoyage-ai/gtm-engineer-skills.

  • SKILL.md
  • README.md

Open the folder on GitHubat commit 3777930

Compare with similar skills

Build Resource Pages next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Build Resource Pages compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Build Resource Pages this skillonvoyage-ai/gtm-engineer-skills1.3k—~3.6kAutomated safety check: PassMIT
Lobe Designlobehub/lobe-ui2.2k—~2.2kAutomated safety check: PassMIT
Using Docs Kitlobehub/lobe-ui2.2k—~2.8kAutomated safety check: PassMIT
Storybook Storyradix-ng/primitives274—~3.7kAutomated safety check: PassMIT
React Component Documentationgetsentry/sentry46k—~3.6kAutomated safety check: PassCustom licence
Write StoriesEndava/BEEQ163—~968Automated safety check: PassApache-2.0

Similar skills

  • Lobe Design

    lobehub/lobe-ui

    Build UI with the LobeHub design system — @lobehub/ui/base-ui, the controlled form at @lobehub/ui/base-ui/form, and the chat, mobile, dashboard, awesome, brand, mdx, and i18n namespaces, plus…

    2.2k GitHub stars~2.2k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Using Docs Kit

    lobehub/lobe-ui

    Set up and author a documentation site with @lobehub/docs-kit (the lobedocs CLI, React Router + Vite static docs used by ui.lobehub.com).

    2.2k GitHub stars~2.8k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Storybook Story

    radix-ng/primitives

    Write or update Storybook stories and docs MDX for a Radix NG primitive following project conventions.

    274 GitHub stars~3.7k tokensUpdated 12 days ago
    Frontend & DesignAuto-check passed
  • Official

    Create or update component documentation in Sentry's MDX stories format.

    46k GitHub stars~3.6k tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Write Stories

    Endava/BEEQ

    Write Storybook stories and MDX docs for BEEQ web components.

    163 GitHub stars~968 tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Doc Component

    Endava/BEEQ

    Generate or complete a Mintlify MDX documentation page for a BEEQ component.

    163 GitHub stars~3.3k tokensUpdated yesterday
    Frontend & DesignAuto-check passed

More from onvoyage-ai/gtm-engineer-skills

All 12 skills in this repo
  • Audit Website Aeo

    onvoyage-ai/gtm-engineer-skills

    Audits a live website for AI-engine discoverability (AEO/GEO).

    1.3k GitHub stars~2.9k tokensUpdated 4 mo ago
    Auto-check passed
  • Research Brand

    onvoyage-ai/gtm-engineer-skills

    Researches a company from its URL and produces a Brand DNA file covering positioning, audience, competitors, voice, and messaging.

    1.3k GitHub stars~1.3k tokensUpdated 4 mo ago
    Auto-check passed
  • Research Keywords

    onvoyage-ai/gtm-engineer-skills

    Finds high-value SEO and GEO keywords using web search, AI analysis, and optionally paid tools like Ahrefs or Semrush.

    1.3k GitHub stars~4k tokensUpdated 4 mo ago
    Auto-check passed
  • Audit Content

    onvoyage-ai/gtm-engineer-skills

    Verifies truthfulness, accuracy, and link integrity of content before publishing.

    1.3k GitHub stars~1.9k tokensUpdated 4 mo ago
    Auto-check passed
  • Build Backlinks

    onvoyage-ai/gtm-engineer-skills

    Finds free backlink and brand mention opportunities across Hacker News, Quora, GitHub, directories, and niche communities.

    1.3k GitHub stars~2.3k tokensUpdated 4 mo ago
    Auto-check passed
  • Create Geo Charts

    onvoyage-ai/gtm-engineer-skills

    Creates data visualizations (charts, graphs, tables) optimized for AI engine parsing and citation.

    1.3k GitHub stars~4.3k tokensUpdated 4 mo ago
    Auto-check passed

Questions about Build Resource Pages

What does Build Resource Pages do?

Takes existing content markdown files and builds production-final resource center pages on client websites using their existing tech stack and design system. Build Resource Pages is an agent skill from onvoyage-ai/gtm-engineer-skills. Takes existing content markdown files and builds production-final resource center pages on client websites using their existing tech stack and design system.

When should I use Build Resource Pages?

Build Resource Pages fits situations like: tasks that involve Design systems; tasks that involve AI search optimization; tasks that involve Markdown.

How do I install Build Resource Pages in Claude Code?

Run `npx skills add onvoyage-ai/gtm-engineer-skills --skill build-resource-pages -a claude-code`. Or copy the skill folder (build-resource-pages in onvoyage-ai/gtm-engineer-skills) into .claude/skills/build-resource-pages in your project. Claude Code loads it when a task matches its description.

How do I install Build Resource Pages in Codex?

Run `npx skills add onvoyage-ai/gtm-engineer-skills --skill build-resource-pages -a codex`. Or copy the skill folder (build-resource-pages in onvoyage-ai/gtm-engineer-skills) into .agents/skills/build-resource-pages in your project. Codex loads it when a task matches its description.

Can I use Build Resource Pages in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add onvoyage-ai/gtm-engineer-skills --skill build-resource-pages -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/build-resource-pages, .gemini/skills/build-resource-pages, .github/skills/build-resource-pages and .opencode/skills/build-resource-pages in your project.

What does Build Resource Pages need to run?

SKILL.md names no scripts, command-line tools or credentials: Build Resource Pages is instructions for the agent only.

Does Build Resource Pages access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Build Resource Pages safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Build Resource Pages use?

Build Resource Pages is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Build Resource Pages use?

About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Build Resource Pages?

Skills that share tags, products or a category with Build Resource Pages: Lobe Design (lobehub/lobe-ui, 2.2k stars), Using Docs Kit (lobehub/lobe-ui, 2.2k stars), Storybook Story (radix-ng/primitives, 274 stars) and React Component Documentation (getsentry/sentry, 46k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Build Resource Pages?

onvoyage-ai (a GitHub organization) maintains it in onvoyage-ai/gtm-engineer-skills, which has 1,320 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on June 7, 2026.

Source: onvoyage-ai/gtm-engineer-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.