Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Semantic Gap Analysis

ASecurity

Use when a page ranks for a keyword but isn't in the top 3 and you want to know exactly what's missing. The agent compares the page to the top-ranking competitors and produces a specific list of entities, subtopics, and relationships to add.

36 stars
0 votes
0 copies
0 views
Added 9/22/2026
code-qualitygonode

Security Analysis

A100/100

Scanned 9/22/2026

Install to Claude Code

$npx -y skills add NVlabs/Skill2Env --skill semantic-gap-analysis --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Semantic Gap Analysis?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Semantic Gap Analysis
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/nvlabs-semantic-gap-analysis/badge)](https://www.skillsdirectory.com/skills/nvlabs-semantic-gap-analysis)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: semantic-gap-analysis
description: Use when a page ranks for a keyword but isn't in the top 3 and you want to know exactly what's missing. The agent compares the page to the top-ranking competitors and produces a specific list of entities, subtopics, and relationships to add.
---

# Semantic Gap Analysis

Identifies the exact entities, subtopics, predicates, and relationships that are missing from your page but present in top-ranking competitors. This is the content brief for what to add — not a generic "write more depth" recommendation.

Google's NLP models (BERT, MUM, Gemini) build a semantic graph of your content. If you're missing nodes or edges that competitors have, your content reads as shallow to the algorithm. This skill finds the exact missing nodes.

## Input

- **URL of your page** (required)
- **Target keyword** the page should rank for (required)

## Role

You are a semantic SEO specialist in the tradition of Koray Tuğberk GÜBÜR. You think in entities, attributes, and relationships — not keywords.

## Step 1: Read Your Page

Fetch the URL. Extract:
- Main topic and sub-topics
- All named entities (people, places, products, concepts, dates, organizations)
- All predicates (verbs that signal the contextual depth — for "coffee brewing", verbs like grind, extract, bloom, tamp)
- Internal structure: H2/H3 hierarchy
- What the page explicitly covers and what it implicitly assumes

## Step 2: Read the Top 3 Competitors

Google the target keyword. Fetch the top 3 results in full. For each:
- Extract entities, predicates, and structural elements the same way
- Note what they cover that your page doesn't
- Note the depth at which they discuss each entity (single mention vs. full section)

## Step 3: Build the Semantic Inventory

Create three lists side by side:

| Your page covers | Competitors cover but you don't | Unique to your page |
|---|---|---|

Be specific. "Pricing models" is too generic. "Three-tier vs usage-based pricing with examples from Stripe and Twilio" is specific.

## Step 4: Classify the Gaps

For each gap, classify its importance:

- **Core gap** — all 3 competitors cover this, you don't. Critical to add.
- **Differentiator gap** — 1-2 competitors cover this and it's working for them. Worth adding.
- **Commodity gap** — everyone covers this superficially. Add briefly or skip.
- **Opportunity gap** — competitors skip this, you could own it. Your angle.

## Step 5: Map Entity Relationships

For the core gaps, identify the Entity-Attribute-Value (EAV) relationships that should exist:

- **Entity**: what is it
- **Attribute**: what properties does it have that matter
- **Value/Relation**: how does it relate to other entities in this topic space

Example for "espresso machine reviews":
- Entity: La Marzocco Linea Mini
- Attribute: brew pressure, boiler type, price point
- Relation: competes with Rocket Appartamento, used by third-wave cafes

This is what competitors are implicitly encoding when they write detailed sections — you need the same density.

## Step 6: Output

### Semantic Fingerprint
One sentence on what your page actually "talks about" to an NLP model, and what it should talk about.

### Your Page
List of entities and predicates currently present.

### Competitor Coverage
What each top 3 competitor covers that yours doesn't (specific sections, with brief notes on why they chose to include them).

### Gap List

| Gap | Importance | Add to section | Depth required |
|---|---|---|---|

Importance: Core / Differentiator / Commodity / Opportunity.
Section: where in your H2/H3 structure this belongs.
Depth: Paragraph / subsection / full section.

### Entity Relationships to Encode
The EAV triples that should appear in your page, even if just in passing. These are the signals that tell Google "this content understands the topic space."

### Unique Angle to Preserve
What your page does well that competitors don't. Don't lose this when adding depth.

### Content Addition Plan
Specific sections to add or expand, in order of priority. Each with: section heading, 2-3 sentence description of what goes in it, estimated word count.

## What to Ignore

- **Keyword density for related terms** — don't force. Semantic relevance is about covering the entities, not repeating the keyword variants.
- **Fluff additions** — every section you add should carry actual information. Padding defeats the purpose.
- **Wikipedia-style completeness** — you don't need to cover everything. You need to cover enough that an NLP model recognizes the topic depth.

## Next Step

Turn the content addition plan into an actual rewrite: use the `improve-content` skill with your page URL as input, and paste the gap list as context.

## Bundled references

Load from `references/` only when the step calls for them.

- **`eav-triple-worked-examples.md`** — full Entity-Attribute-Value examples across 6 niches for Step 5 (when the EAV framework feels abstract and you need concrete analogues)
- **`predicate-verb-fields.md`** — domain-specific verb fields that signal contextual depth to NLP models (Step 3, when extracting predicates from competitor pages)
- **`gap-classification-rubric.md`** — detailed scoring for Core / Differentiator / Commodity / Opportunity gaps (Step 4, when classification is ambiguous)
- **`topic-cluster-strategy.md`** — how the gap list feeds into cluster architecture (optional, when the gaps reveal missing spokes rather than in-page sections)

Attribution

NVlabsNVlabs
View sourceMore from NVlabs →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

Caveman Review

Ultra-compressed code review comments. Cuts noise from PR feedback while preserving the actionable signal. Each comment is one line: location, problem, fix. Use when user says "review this PR", "code review", "review the diff", "/review", or invokes /caveman-review. Auto-triggers when reviewing pull requests.

1066601 votes

Caveman Commit

Ultra-compressed commit message generator. Cuts noise from commit messages while preserving intent and reasoning. Conventional Commits format. Subject ≤50 chars, body only when "why" isn't obvious. Use when user says "write a commit", "commit message", "generate commit", "/commit", or invokes /caveman-commit. Auto-triggers when staging changes.

1066601 votes

Springboot Verification

Verification loop for Spring Boot projects: build, static analysis, tests with coverage, security scans, and diff review before release or PR.

2456590 votes

Verification Loop

一个全面的 Claude Code 会话验证系统。

2456590 votes

Django Verification

Verification loop for Django projects: migrations, linting, tests with coverage, security scans, and deployment readiness checks before release or PR.

2456590 votes
View all in code-quality →