seo-aeo-internal-linking

Maps internal link opportunities between pages with anchor text, placement instructions, orphan page detection, and cannibalization checks. Activate when the user wants to build an internal linking strategy or find link opportunities.

5 stars

Best use case

seo-aeo-internal-linking is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Maps internal link opportunities between pages with anchor text, placement instructions, orphan page detection, and cannibalization checks. Activate when the user wants to build an internal linking strategy or find link opportunities.

Teams using seo-aeo-internal-linking should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/seo-aeo-internal-linking/SKILL.md --create-dirs "https://raw.githubusercontent.com/FrancoStino/opencode-skills-collection/main/bundled-skills/seo-aeo-internal-linking/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/seo-aeo-internal-linking/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How seo-aeo-internal-linking Compares

Feature / Agentseo-aeo-internal-linkingStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Maps internal link opportunities between pages with anchor text, placement instructions, orphan page detection, and cannibalization checks. Activate when the user wants to build an internal linking strategy or find link opportunities.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# SEO-AEO Internal Linking

## Overview

Analyses a set of pages and produces a prioritised list of internal link opportunities with exact anchor text, a context sentence showing where each link should appear, orphan page detection, anchor text cannibalization warnings, and a link equity map showing how authority flows across the content.

Part of the [SEO-AEO Engine](https://github.com/mrprewsh/seo-aeo-engine).

## When to Use This Skill

- Use when building internal links between a new pillar page and its cluster articles
- Use when auditing an existing site for orphan pages
- Use after content-cluster generates a topic map
- Use when you need anchor text suggestions with placement context

## How It Works

### Step 1: Detect Orphan Pages
Flag any page with zero incoming internal links. These are invisible to search engines and must be linked immediately.

### Step 2: Build Semantic Overlap Matrix
Match pages by primary keyword similarity and content summary to identify natural linking opportunities.

### Step 3: Assign Link Types
Every suggestion gets one of four labels:
- **Cluster → Pillar** — highest priority, consolidates authority upward
- **Pillar → Cluster** — distributes authority downward
- **Cluster → Cluster** — builds semantic depth
- **Contextual Boost** — concentrates equity on a focus page

### Step 4: Write Context Sentences
For every link opportunity, write the sentence the anchor text should appear in — naturally placed, not forced.

### Step 5: Check Anchor Text
Flag any exact-match anchor used more than once for the same target page as a cannibalization risk. Never use generic anchors like "click here".

## Examples

### Example: Link Opportunity Output
🔴 High Priority — Link 1
Type: Cluster → Pillar
Source: "How to Build a Budget That Actually Works"
Target: "The Complete Guide to Automated Budgeting"
Anchor: "automated budgeting guide"
Context: "For a full breakdown of every method available,
see our [automated budgeting guide]."
Impact: Consolidates topical authority on pillar page.
Orphan Alert:
"PennyWise Pricing Page" has no incoming links.
Fix: Add link from comparison table in Article 2.

## Best Practices

- ✅ **Do:** Every cluster article must have at least one Cluster → Pillar link
- ✅ **Do:** Write a context sentence for every suggestion — anchor text needs natural placement
- ✅ **Do:** Fix orphan pages before adding any new links
- ❌ **Don't:** Use the same exact-match anchor for the same target page more than once
- ❌ **Don't:** Use "click here", "read more", or "learn more" as anchor text — ever
- ❌ **Don't:** Add more than 100 outgoing internal links on any single page

## Common Pitfalls

- **Problem:** All cluster articles link to the pillar but not to each other
  **Solution:** Add Cluster → Cluster links between semantically related articles to build depth.

- **Problem:** Same anchor text used across multiple pages for the same target
  **Solution:** Use partial match and branded anchors for subsequent links after the first exact-match use.

## Related Skills

- `@seo-aeo-content-cluster` — generates the cluster map this skill links together
- `@seo-aeo-schema-generator` — uses link map output for BreadcrumbList schema

## Additional Resources

- [SEO-AEO Engine Repository](https://github.com/mrprewsh/seo-aeo-engine)
- [Full Internal Linking SKILL.md](https://github.com/mrprewsh/seo-aeo-engine/blob/main/.agent/skills/internal-linking/SKILL.md)

## Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.

Related Skills

internal-comms-community

5
from FrancoStino/opencode-skills-collection

To write internal communications, use this skill for:

internal-comms-anthropic

5
from FrancoStino/opencode-skills-collection

To write internal communications, use this skill for:

zustand-store-ts

5
from FrancoStino/opencode-skills-collection

Create Zustand stores following established patterns with proper TypeScript types and middleware.

zoom-automation

5
from FrancoStino/opencode-skills-collection

Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.

zoho-crm-automation

5
from FrancoStino/opencode-skills-collection

Automate Zoho CRM tasks via Rube MCP (Composio): create/update records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.

zod-validation-expert

5
from FrancoStino/opencode-skills-collection

Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.

zipai-optimizer

5
from FrancoStino/opencode-skills-collection

Ultra-dense token optimizer skill for prompt caching, log pruning, AST-based inspection, and minified JSON payloads.

zeroize-audit

5
from FrancoStino/opencode-skills-collection

Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C/C++/Rust code handling secrets, keys, passwords, or other sensitive data.

zendesk-automation

5
from FrancoStino/opencode-skills-collection

Automate Zendesk tasks via Rube MCP (Composio): tickets, users, organizations, replies. Always search tools first for current schemas.

zapier-make-patterns

5
from FrancoStino/opencode-skills-collection

No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity - these platforms have their own patterns, pitfalls, and breaking points.

youtube-summarizer

5
from FrancoStino/opencode-skills-collection

Extract transcripts from YouTube videos and generate comprehensive, detailed summaries using intelligent analysis frameworks

youtube-full

5
from FrancoStino/opencode-skills-collection

Fetch YouTube transcripts, search videos, browse channels, and extract playlists via TranscriptAPI — no yt-dlp, no Google API key, works from any cloud server.