marketing-pages
Best-practice rulebook for a marketing site's pages, organized by page class — campaign landers, product pages, programmatic SEO trees, editorial.
Skill by dzhng
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/dzhng-marketing-pages
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: writing, marketing, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/marketing-pages
What's inside
- Skill name
marketing-pages- Description
- Best-practice rulebook for a marketing site's pages, organized by page class — campaign landers, product pages, programmatic SEO trees, editorial. Use when writing or updating a landing/marketing page, wiring a campaign lander to an attribution identifier, changing site-wide nav/footer links, touching sitemap/robots/agent-readable surfaces, or auditing a public site's indexing, reachability, and conversion setup.
- License
- MIT
- Instructions
- 113 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Marketing Pages
A rulebook, not a workflow: every rule below is simultaneously a constraint to
build against and a check to audit against. Classify the page first — every
public page belongs to exactly one **page class**, and the class decides its
indexing, linking, chrome, and wiring.
## Page classes
| Class | Indexing | Reachability | Chrome |
|---|---|---|---|
| **Campaign lander** | `noindex, follow`; never in a sitemap | never linked from nav/footer | minimal: logo + ONE CTA, legal-only footer, no site nav |
| **Product page** | indexed | nav Product section and/or footer | full chrome |
| **SEO tree page** (programmatic: per-persona, per-industry, per-competitor) | indexed | footer link grid + hub pages | full chrome |
| **Editorial** (blog/guides) | indexed | header + footer | full chrome |
| Legal/utility | indexed | footer | full chrome |
- A page that is noindexed AND unlinked is a **zombie** — promote it to a
linked, indexed class or make it a campaign lander. Never leave the halfway
state.
- Campaign landers live in a dedicated URL prefix (e.g. `/l/<slug>`): one
`startsWith` covers blanket noindex and "never nav-linked" checks, and slug
collisions with real pages become impossible.
## Campaign lander rules
Campaign landers are alternate main landers — one audience, one promise, paid
traffic. They trade SEO for message-match freedom; indexed near-duplicates
split authority and freeze copy that should be A/B-able daily.
- **Message match end-to-end**: ad copy → H1 → post-signup first screen, one
unbroken promise. Where the product supports it, the campaign identifier
flows through signup into onboarding and analytics, so the first-run
experience continues the promise and conversions attribute per lander.
- One CTA, repeated down the page; social proof beside it; friction-reducing
microcopy ("no credit card"); capture only what qualifies later (usually
just email).
- Static text/image hero — no full-viewport video or heavy JS above the fold.
LCP is a conversion input on paid traffic.
- A lander you cannot measure cannot be iterated: conversion-per-lander
(lead → signup → purchase) must be readable somewhere before ads spend.
- Killed campaign pages get no redirects: deleted routes 404, and the 404s in
Search Console afterward are the intended signal, not a defect.
## Indexed page rules
Each of these has one owner in the codebase — find the current owner rather
than trusting remembered paths:
- The route appears in whatever closed-world route registry the site's gates
check against.
- Indexed ⇔ sitemapped, always both or neither: a noindexed URL in the
sitemap is a contradictory signal, as is an indexed page missing from it.
`lastmod` is honest (content date, not build time).
- Agent-readable surfaces, if the site ships them (llms.txt, markdown twins),
render from the same copy source the page renders from — never from built
HTML, never hand-drifted duplicates.
- Robots allows reviewed indexed trees for AI crawlers; disallows only
campaign landers and internal surfaces. robots, meta robots, and the
sitemap must agree on every URL.
- Every indexed page is reachable from header or footer — the footer link
grid is the crawl rail. Pages discoverable only via the sitemap sit in
"Discovered — not indexed" for weeks and receive no internal authority.
- Product facts (pricing, limits, tier names) derive from the single source
the product code owns — restated numbers drift silently and nothing turns
red.
- Internal links name paths, never origins, so a closed-world check can
verify every authored target resolves.
- Locale-prefixed links to pages that exist in only one locale must resolve
(redirect to the canonical locale, not 404) — sitewide chrome prefetches
every link from every page.
- Deleting or renaming a page deletes every reference in the same pass: route
registry, sitemap, agent-readable twin, links from kept pages, visual
baselines, and e2e/journey anchors (grep the test suites — a rename that
keeps local gates green can break a live journey hours later).
## SEO rules
- Contextual in-body links from editorial to money pages move more authority
than footer anchors — add them where content genuinely relates.
- Comparison/competitor pages carry an honest visible updated-date and get
refreshed on a real cadence — a stale dated page is worse than an undated
one.
- Programmatic tree pages stay substantive (concrete jobs, specific copy) —
thin templated pages are doorway-page bait.
- Hub pages exist so leaves inherit authority: every tree leaf is linked from
its hub, and the hub from the site chrome.
## Visual coverage rules
- Reusable sections and components have an isolated, deterministic **fixture**
(playground/storybook entry) that owns their visual coverage; the fixture
menu doubles as the component catalog new pages are composed from.
- Representative full-page screenshots stay at ONE key route per template.
Routes churn; fixtures are the stable oracle. New template → one new
representative route; new section → a fixture, not more route shots.
- Visual baselines are accepted only after an unprimed second opinion — eyes
primed by the change pass defects fresh eyes catch.
## Audit sweeps
Auditing a site = evaluating every rule above, plus these cross-cutting
sweeps; each must come back empty or explained:
1. Zombie pages (noindexed AND unlinked).
2. Sitemap/robots/meta disagreements.
3. Campaign lander linked from any indexed page, or present in a sitemap.
4. Indexed page unreachable from header/footer.
5. Component with no owner in the visual coverage system.
6. Marketing copy restating a product fact that has a canonical owner.
7. Broken locale-crossed links from sitewide chrome.From dzhng/skills, MIT.
More from dzhng/skills
- 0.831score
explore-unknowns
dzhng
Guide the user through a quadrant walk that maps the unknowns of a task — open by listing the known knowns, then work through known unknowns, unknown knowns…
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.831score
cinematic-shot
dzhng
Shoot software UI like a film.
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.831score
isometric-motion
dzhng
Build animations and interactive elements (explainers, figures, hero visuals, step-through walkthroughs) in the crafted isometric "Anatomy" style, with many…
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.831score
xiaohei-illustrations
dzhng
Generate Ian-style Xiaohei illustrations for articles, posts, blogs, Notion documents, workflows, methods, processes, structures, states, metaphors, and…
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.827score
screenshot-critique
dzhng
Use the unprimed sub agent as a second set of eyes before accepting visual work — MANDATORY before declaring any user-reported visual bug fixed or claiming a…
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.827score
compare-screenshots
dzhng
Compare screenshots against the intended design, distinguishing approved references from historical baselines.
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.825score
claude
dzhng
Use Claude Code as an independent `claude -p` subagent when the user explicitly asks for Claude, wants a second-agent opinion from Claude, or asks to delegate…
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.825score
audit-tests
dzhng
Audit whether tests earn their maintenance cost and which suite owns each contract.
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.825score
write-spec
dzhng
Break large features into independently verifiable, human-reviewable slices under a feature directory in specs/.
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.825score
codex
dzhng
Use the local Codex CLI as an independent second agent.
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.825score
refactor-clean
dzhng
Refactor cleanly instead of layering sediment.
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.825score
code-review
dzhng
Review changed code for naming, stale references, unnecessary complexity, and comment quality.
SkillAFreshness: A★ 1.4KClaude Code +9
Compare and alternatives
Featured in
Signals
- Stars
- 1,379
- Forks
- 84
- Open issues
- 0
- Last commit (this folder)
- Aug 15, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/dzhng/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from dzhng
- 0.831score
cinematic-shot
dzhng
Shoot software UI like a film.
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.831score
explore-unknowns
dzhng
Guide the user through a quadrant walk that maps the unknowns of a task — open by listing the known knowns, then work through known unknowns, unknown knowns…
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.831score
xiaohei-illustrations
dzhng
Generate Ian-style Xiaohei illustrations for articles, posts, blogs, Notion documents, workflows, methods, processes, structures, states, metaphors, and…
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.831score
isometric-motion
dzhng
Build animations and interactive elements (explainers, figures, hero visuals, step-through walkthroughs) in the crafted isometric "Anatomy" style, with many…
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.827score
screenshot-critique
dzhng
Use the unprimed sub agent as a second set of eyes before accepting visual work — MANDATORY before declaring any user-reported visual bug fixed or claiming a…
SkillAFreshness: A★ 1.4KClaude Code +9 - 0.827score
compare-screenshots
dzhng
Compare screenshots against the intended design, distinguishing approved references from historical baselines.
SkillAFreshness: A★ 1.4KClaude Code +9
Cite this page
marketing-pages skill. Agent Mart. https://agentmart.dev/skills/dzhng-marketing-pages (last updated 2026-10-24)