skills/breadcrumb/SKILL.md
When the user wants to add, optimize, or audit breadcrumb navigation. Also use when the user mentions "breadcrumbs," "breadcrumb trail," "breadcrumb nav," "breadcrumb links," "path navigation," "site breadcrumb," "BreadcrumbList schema," "location-based breadcrumb," "attribute-based breadcrumb," "site hierarchy display," "add breadcrumbs," or "breadcrumb SEO."
npx skillsauth add irismaker/ai-agent-skills-hub breadcrumb-generatorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Guides breadcrumb implementation for SEO, UX, and GEO. Breadcrumbs show users their location in the site hierarchy and help search engines understand content taxonomy. Well-implemented breadcrumbs can increase CTR by 20–30%, reduce bounce rates by up to 30%, and strengthen internal linking.
When invoking: On first use, if helpful, open with 1–2 sentences on what this skill covers and why it matters, then provide the main output. On subsequent use or when the user asks to skip, go directly to the main output.
| Type | Use case | Recommendation | |------|----------|----------------| | Location-based | Reflects site hierarchy (Home > Blog > SEO > Page) | Recommended — most SEO-friendly; clear structure | | Attribute-based | Shows product attributes (Home > Electronics > Phone > iPhone 15) | E-commerce; product classification | | Path-based | Shows user's browsing path | Avoid — different users, different paths; can cause confusion |
Default: Use location-based for most sites. Use attribute-based for e-commerce product pages.
Check for product marketing context first: If .claude/product-marketing-context.md or .cursor/product-marketing-context.md exists, read it for site structure and key pages.
Identify:
| Practice | Guideline | |----------|-----------| | Depth | 3–5 levels optimal; avoid very long trails | | Anchor text | Keyword-rich, human-readable; descriptive | | Consistency | Same pattern across all pages (blog, category, product) | | Canonical path | For items in multiple categories, define one canonical breadcrumb to avoid diluted link equity |
| Requirement | Guideline |
|--------------|-----------|
| Format | JSON-LD in <script type="application/ld+json"> |
| URLs | Absolute URLs with https:// for each item |
| Position | Sequential integers starting from 1 |
| Match | Schema must match visible breadcrumbs exactly |
| Order | ItemListOrderAscending (position 1 first) |
| Practice | Guideline | |----------|-----------| | Position | Below nav bar or above page title; top of content area | | Visual | Smaller font, lighter color; avoid competing with main content | | Separator | Clear separator (>, /, ›); consistent across site | | Naming | Match page title or nav menu; concise, descriptive |
| Practice | Guideline |
|----------|-----------|
| Mobile | Tappable; short, readable text; high contrast |
| Long trails | Horizontal scroll container rather than truncating |
| Current page | Last item non-linked; use aria-current="page" |
| Screen readers | nav with aria-label="Breadcrumb"; proper landmark |
<nav aria-label="Breadcrumb">
<ol itemscope itemtype="https://schema.org/BreadcrumbList">
<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a itemprop="item" href="https://example.com/"><span itemprop="name">Home</span></a>
<meta itemprop="position" content="1" />
</li>
<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a itemprop="item" href="https://example.com/category/"><span itemprop="name">Category</span></a>
<meta itemprop="position" content="2" />
</li>
<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" aria-current="page">
<span itemprop="name">Current Page</span>
<meta itemprop="position" content="3" />
</li>
</ol>
</nav>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://example.com/"
},
{
"@type": "ListItem",
"position": 2,
"name": "Category",
"item": "https://example.com/category/"
},
{
"@type": "ListItem",
"position": 3,
"name": "Current Page",
"item": "https://example.com/category/current-page/"
}
]
}
</script>
Generate BreadcrumbList from route segments or page metadata. Ensure item URLs are absolute. Use next-seo BreadcrumbJsonLd or custom component.
When a page is reachable via multiple paths (e.g., product in multiple categories), Google supports multiple BreadcrumbList on the same page. Use an array of BreadcrumbList objects; define a canonical path to avoid diluted link equity when possible.
<script type="application/ld+json">
[
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [ /* path A */ ]
},
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [ /* path B */ ]
}
]
</script>
| Site type | Use case | |-----------|----------| | E-commerce | Category > Subcategory > Product | | Blog | Home > Blog > Category > Post (see article-page-generator for article page structure) | | Docs | Home > Docs > Section > Page | | Large sites | Any site with 3+ level hierarchy |
Skip on flat sites (e.g., single-page, 1–2 level depth).
Deep pages: For 6+ levels, consider omitting middle levels; show only the most important categories to avoid clutter.
| Platform | Options | |----------|---------| | WordPress | Yoast SEO, Rank Math, Breadcrumb NavXT | | Next.js | next-seo BreadcrumbJsonLd, custom from route segments | | Shopify, Drupal, Joomla | Built-in or plugin support |
| Error | Fix | |-------|-----| | Relative URLs in schema | Use absolute URLs (https://) | | Schema doesn't match visible trail | Keep schema and UI in sync | | Missing position | Include sequential position (1, 2, 3…) | | Last item linked | Current page typically not a link | | Too many levels | Limit to 5–7; omit middle levels for deep paths | | Inaccurate path | Breadcrumb must reflect actual site structure | | No schema | Add BreadcrumbList; otherwise no SERP breadcrumbs; see serp-features |
tools
When the user wants to create, generate, or produce video content using AI tools or programmatic frameworks. Also use when the user mentions 'video production,' 'AI video,' 'Remotion,' 'Hyperframes,' 'HeyGen,' 'Synthesia,' 'Veo,' 'Runway,' 'Kling,' 'Pika,' 'video generation,' 'AI avatar,' 'talking head video,' 'programmatic video,' 'video template,' 'explainer video,' 'product demo video,' 'video pipeline,' or 'make me a video.' Use this for video creation, generation, and production workflows. For video content strategy and what to post, see social-content. For paid video ad creative, see ad-creative.
tools
When the user wants to create, plan, or optimize a lead magnet for email capture or lead generation. Also use when the user mentions "lead magnet," "gated content," "content upgrade," "downloadable," "ebook," "cheat sheet," "checklist," "template download," "opt-in," "freebie," "PDF download," "resource library," "content offer," "email capture content," "Notion template," "spreadsheet template," or "what should I give away for emails." Use this for planning what to create and how to distribute it. For interactive tools as lead magnets, see free-tool-strategy. For writing the actual content, see copywriting. For the email sequence after capture, see email-sequence.
development
When the user wants to create, generate, edit, or optimize images for marketing — blog heroes, social graphics, product mockups, profile banners, listing visuals, or brand assets. Also use when the user mentions 'AI image generation,' 'generate an image,' 'create a graphic,' 'product mockup,' 'hero image,' 'social media graphic,' 'banner image,' 'cover photo,' 'profile banner,' 'listing screenshot,' 'Flux,' 'Midjourney,' 'DALL-E,' 'GPT Image,' 'Ideogram,' 'Gemini image,' 'Canva,' 'Figma,' 'image optimization,' 'compress images,' 'WebP,' or 'OG image.' Use this for general-purpose marketing image creation and optimization. For paid ad image creative and platform-specific ad specs, see ad-creative. For video production, see video.
testing
Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases. Credits: Original skill by @blader - https://github.com/blader/humanizer