skillZs
LIVE SKILL TAGS
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
REAL INSTALL DATA
← back to all skills
aradotso/marketing-skills960 installs

voltagent-seo-content-marketing-skills

SEO & Content Marketing skill suite with keyword research, content audits, technical SEO, and competitor analysis workflows

How do I install this agent skill?

npx skills add https://github.com/aradotso/marketing-skills --skill voltagent-seo-content-marketing-skills
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    This skill provides a comprehensive suite of SEO and content marketing tools for AI agents. It facilitates keyword research, technical SEO audits, and content planning by leveraging external APIs and specialized packages. All identified behaviors, such as web crawling and dependency installation, are standard for the tool's intended purpose.

  • Socketwarn

    1 alert: gptSecurity

  • Snykwarn

    Risk: MEDIUM · 1 issue

What does this agent skill do?

📈 SEO & Content Marketing Skills Suite

Skill by ara.so — Marketing Skills collection.

This skill suite provides specialized commands and workflows for SEO and content marketing, derived from VoltAgent/awesome-agent-skills. It includes 10 commands for keyword research, content audits, technical SEO analysis, competitor research, and 5 multi-step workflows for comprehensive SEO campaigns.

What This Project Does

The r16-voltagent-awesome-agent-skills-seo suite gives AI agents structured SEO expertise:

  • Keyword research with clustering, intent mapping, and opportunity scoring
  • Content audits including quality assessment, duplication detection, cannibalization analysis
  • Technical SEO crawl budget, Core Web Vitals, schema validation
  • Competitor analysis backlink gaps, topic gaps, featured snippet opportunities
  • Content generation SEO-optimized briefs, outlines, and publishing pipelines
  • Monitoring rank tracking, SERP volatility alerts
  • Link building prospect identification and outreach automation

All commands follow a consistent 5-step pattern: scope confirmation → live analysis → findings → action plan → next steps.

Installation

Clone to Claude Skills Directory

# Create skills directory if it doesn't exist
mkdir -p ~/.claude/skills/

# Clone the repository
git clone https://github.com/Gravityaespot/r16-voltagent-awesome-agent-skills-seo.git \
  ~/.claude/skills/voltagent-seo-skills/

# Or copy manually
cp -r /path/to/downloaded/repo ~/.claude/skills/voltagent-seo-skills/

Register in Claude Code Session

In a Claude Code session:

/read ~/.claude/skills/voltagent-seo-skills/SKILL.md

Or programmatically:

import os
from pathlib import Path

# Load skill definition
skill_path = Path.home() / ".claude/skills/voltagent-seo-skills/SKILL.md"
with open(skill_path) as f:
    skill_definition = f.read()

# Register with agent
agent.load_skill(skill_definition)

Core Commands

/keyword-research

Deep keyword clustering with intent mapping and opportunity scoring.

Usage:

/keyword-research "outdoor camping gear"

/keyword-research "project management software" \
  --country US \
  --language en \
  --depth deep \
  --output json

Output Structure:

╔════════════════════════════════════════════════╗
║  Keyword Research: outdoor camping gear        ║
╠════════════════════════════════════════════════╣
║  Analyzing search data …  [██████████] 100%    ║
║  Clustering keywords …    [██████████] 100%    ║
║  Mapping intent …         [██████████] 100%    ║
╚════════════════════════════════════════════════╝

┌──────────────────────┬────────┬────┬──────────┬────────┐
│ Keyword              │ Volume │ KD │ Intent   │ Score  │
├──────────────────────┼────────┼────┼──────────┼────────┤
│ camping gear         │ 49 500 │ 67 │ Comm     │ 8.2/10 │
│ best camping gear    │ 18 100 │ 45 │ Comm/Inf │ 9.1/10 │
│ camping gear list    │  8 900 │ 32 │ Info     │ 8.7/10 │
│ camping equipment    │ 33 100 │ 71 │ Comm     │ 7.5/10 │
└──────────────────────┴────────┴────┴──────────┴────────┘

🎯 Recommended targets: best camping gear, camping gear list

API Integration:

import os
from seo_skills import KeywordResearch

# Initialize with API credentials from env vars
kr = KeywordResearch(
    api_key=os.getenv("SEO_API_KEY"),
    country="US"
)

# Run keyword research
results = kr.analyze(
    seed_keyword="outdoor camping gear",
    depth="deep",
    min_volume=100,
    max_difficulty=60
)

# Access structured data
for cluster in results.clusters:
    print(f"Cluster: {cluster.theme}")
    for kw in cluster.keywords:
        print(f"  {kw.term}: {kw.volume} vol, {kw.difficulty} KD")

/content-audit

Full-site content quality analysis with duplication and cannibalization detection.

Usage:

/content-audit --scope full --output md

/content-audit \
  --url https://example.com \
  --scope /blog \
  --min-words 300 \
  --check-duplicates

Output:

╔════════════════════════════════════════════════╗
║  Content Audit: example.com                    ║
╠════════════════════════════════════════════════╣
║  Crawling pages …     [████████░░]  82%  823/1002 ║
║  Analyzing content …  [██████░░░░]  65%  651/1002 ║
╚════════════════════════════════════════════════╝

┌─────────────────────┬─────────┬─────────┬────────┐
│ Issue               │ Pages   │ Severity│ Impact │
├─────────────────────┼─────────┼─────────┼────────┤
│ 🔴 Thin content     │     127 │ High    │ -45%   │
│ 🔴 Duplicate title  │      89 │ High    │ -38%   │
│ 🟠 Missing H1       │      64 │ Medium  │ -22%   │
│ 🟠 Keyword cannibal │      43 │ Medium  │ -19%   │
│ 🟡 Long meta desc   │      31 │ Low     │ -5%    │
└─────────────────────┴─────────┴─────────┴────────┘

✅ Quick wins (1-2 days):
  • Add H1 tags to 64 pages
  • Shorten 31 meta descriptions

⚠️  Medium-term (1-2 weeks):
  • Expand 127 thin content pages to 800+ words
  • Resolve 43 keyword cannibalization conflicts

/technical-seo

Comprehensive technical SEO audit covering crawlability, performance, and indexability.

Usage:

/technical-seo https://example.com

/technical-seo https://example.com \
  --check-core-web-vitals \
  --validate-schema \
  --crawl-budget-analysis

Integration Example:

const { TechnicalSEO } = require('voltagent-seo-skills');

const audit = new TechnicalSEO({
  apiKey: process.env.SEO_API_KEY,
  userAgent: 'SEO-Audit-Bot/1.0'
});

async function runAudit(url) {
  const results = await audit.analyze(url, {
    checkCoreWebVitals: true,
    validateSchema: true,
    crawlBudgetAnalysis: true,
    checkMobileFriendly: true
  });

  // Access results
  console.log('Core Web Vitals:', results.coreWebVitals);
  console.log('Schema Issues:', results.schemaValidation.errors);
  console.log('Crawl Budget:', results.crawlBudget.efficiency);

  // Generate report
  await audit.generateReport(results, 'audit-report.html');
}

runAudit('https://example.com');

/competitor-gap

Identify backlink gaps, content gaps, and featured snippet opportunities.

Usage:

/competitor-gap \
  --my-site example.com \
  --competitors competitor1.com,competitor2.com,competitor3.com

/competitor-gap \
  --my-site example.com \
  --competitors competitor1.com,competitor2.com \
  --focus backlinks \
  --min-dr 40

/content-brief

Generate AI-powered SEO content briefs with outlines, NLP terms, and word count targets.

Usage:

/content-brief "best project management tools 2024"

/content-brief "how to start a podcast" \
  --target-keywords "podcast hosting,podcast equipment" \
  --word-count 2500 \
  --include-nlp-terms \
  --competitor-analysis

Programmatic Usage:

from seo_skills import ContentBrief

brief_generator = ContentBrief(api_key=os.getenv("SEO_API_KEY"))

brief = brief_generator.create(
    target_keyword="best project management tools 2024",
    additional_keywords=["project management software", "team collaboration"],
    word_count_target=2500,
    include_nlp_terms=True,
    analyze_competitors=True,
    top_n_competitors=10
)

# Access brief components
print(brief.title)
print(brief.meta_description)
print(brief.outline)
print(brief.nlp_terms)
print(brief.word_count_recommendation)

/serp-monitor

Daily rank tracking with volatility alerts and CTR optimization.

Usage:

/serp-monitor \
  --keywords "project management,team collaboration,remote work tools" \
  --url example.com \
  --frequency daily

/serp-monitor \
  --keyword-file keywords.csv \
  --alert-on-drop 3 \
  --ctr-optimization

/link-prospecting

Quality backlink prospect identification with DA/DR filters and outreach templates.

Usage:

/link-prospecting \
  --topic "sustainable fashion" \
  --min-da 30 \
  --max-results 100 \
  --with-contact-info

/link-prospecting \
  --topic "AI marketing tools" \
  --competitor-backlinks competitor.com \
  --generate-outreach-templates

/page-speed-seo

Page speed analysis mapped to SEO ranking impact.

Usage:

/page-speed-seo https://example.com/page

/page-speed-seo https://example.com \
  --check-lcp \
  --check-cls \
  --check-fid \
  --render-blocking-analysis

/local-seo

Local SEO audit including NAP consistency, Google Business Profile optimization, and citations.

Usage:

/local-seo \
  --business-name "Acme Coffee Shop" \
  --location "Seattle, WA" \
  --check-nap \
  --check-gbp \
  --citation-audit

/local-seo \
  --business-name "Tech Repair Store" \
  --location "Austin, TX" \
  --competitors competitor1.com,competitor2.com

/content-calendar

Data-driven editorial calendar based on search demand and seasonality.

Usage:

/content-calendar \
  --topics "fitness,nutrition,wellness" \
  --duration 90 \
  --include-seasonality

/content-calendar \
  --keyword-file topics.csv \
  --duration 180 \
  --publishing-frequency 3 \
  --format json

Workflows (Multi-Step)

full-seo-sprint

12-step comprehensive SEO audit and implementation workflow.

Usage:

/workflows:full-seo-sprint example.com --scope full

/workflows:full-seo-sprint example.com \
  --scope full \
  --include-content-plan \
  --include-technical-fixes \
  --timeline 30

Workflow Steps:

① Technical audit
② Keyword research
③ Competitor analysis
④ Content audit
⑤ Backlink profile analysis
⑥ Keyword mapping
⑦ Content gap identification
⑧ Priority technical fixes
⑨ Content creation plan
⑩ Link building strategy
⑪ Implementation roadmap
⑫ Measurement framework

launch-seo

Pre-launch SEO checklist and validation.

Usage:

/workflows:launch-seo https://staging.example.com

/workflows:launch-seo https://staging.example.com \
  --check-canonical \
  --check-hreflang \
  --validate-sitemap \
  --check-robots-txt

content-refresh

Identify and refresh underperforming content.

Usage:

/workflows:content-refresh example.com \
  --ranking-drop 5 \
  --time-period 90

/workflows:content-refresh example.com \
  --min-impressions 1000 \
  --max-ctr 2 \
  --priority high

authority-building

End-to-end digital PR and link-building campaign.

Usage:

/workflows:authority-building \
  --topic "sustainable technology" \
  --target-dr-increase 15 \
  --duration 180

/workflows:authority-building \
  --niche "B2B SaaS" \
  --competitor-analysis \
  --outreach-automation

ai-content-pipeline

Automated content creation pipeline from keyword to publish.

Usage:

/workflows:ai-content-pipeline \
  --keywords-file keywords.csv \
  --publishing-schedule weekly \
  --auto-optimize

/workflows:ai-content-pipeline \
  --topic "digital marketing trends 2024" \
  --content-type blog \
  --word-count 2000 \
  --include-images

Configuration

Create a configuration file at ~/.claude/skills/voltagent-seo-skills/config.yml:

# SEO API credentials (use env vars in production)
api:
  seo_api_key: ${SEO_API_KEY}
  search_console_credentials: ${GOOGLE_SEARCH_CONSOLE_JSON}
  analytics_key: ${GOOGLE_ANALYTICS_KEY}

# Default settings
defaults:
  country: US
  language: en
  user_agent: "SEO-Agent/1.0"
  crawl_delay: 1.0
  max_pages: 10000

# Output preferences
output:
  format: markdown
  include_charts: true
  export_csv: true
  progress_bars: true

# Thresholds
thresholds:
  min_word_count: 300
  thin_content: 300
  max_keyword_difficulty: 70
  min_domain_rating: 30
  core_web_vitals_lcp: 2.5
  core_web_vitals_fid: 100
  core_web_vitals_cls: 0.1

# Workflows
workflows:
  full_seo_sprint_steps: 12
  content_refresh_lookback_days: 90
  authority_building_duration_days: 180

Load configuration programmatically:

import os
import yaml
from pathlib import Path

config_path = Path.home() / ".claude/skills/voltagent-seo-skills/config.yml"

with open(config_path) as f:
    config = yaml.safe_load(f)

# Expand environment variables
for key in config['api']:
    if isinstance(config['api'][key], str) and config['api'][key].startswith('${'):
        env_var = config['api'][key][2:-1]
        config['api'][key] = os.getenv(env_var)

Common Patterns

Pattern 1: Complete Site Audit

# Step 1: Technical audit
/technical-seo https://example.com --check-core-web-vitals

# Step 2: Content audit
/content-audit --scope full --check-duplicates

# Step 3: Keyword research
/keyword-research "main topic" --depth deep

# Step 4: Competitor analysis
/competitor-gap \
  --my-site example.com \
  --competitors competitor1.com,competitor2.com

# Step 5: Backlink prospecting
/link-prospecting --topic "your niche" --min-da 30

Pattern 2: New Content Creation

# Step 1: Research keyword
/keyword-research "target topic" --output json

# Step 2: Generate brief
/content-brief "target keyword" \
  --word-count 2000 \
  --include-nlp-terms \
  --competitor-analysis

# Step 3: Add to calendar
/content-calendar --topics "target topic" --duration 30

Pattern 3: Rank Recovery

# Step 1: Identify drops
/serp-monitor --alert-on-drop 5 --time-period 30

# Step 2: Run content refresh workflow
/workflows:content-refresh example.com \
  --ranking-drop 5 \
  --time-period 30 \
  --priority high

# Step 3: Monitor improvements
/serp-monitor --frequency daily --ctr-optimization

Pattern 4: Programmatic Batch Processing

from seo_skills import KeywordResearch, ContentBrief, ContentCalendar
import pandas as pd

# Load keyword list
keywords = pd.read_csv('seed_keywords.csv')

# Initialize tools
kr = KeywordResearch(api_key=os.getenv("SEO_API_KEY"))
cb = ContentBrief(api_key=os.getenv("SEO_API_KEY"))
cc = ContentCalendar()

# Process each keyword
briefs = []
for keyword in keywords['keyword']:
    # Research keyword opportunities
    research = kr.analyze(keyword, depth="deep")
    
    # Generate brief for top opportunity
    top_kw = research.top_opportunities[0]
    brief = cb.create(
        target_keyword=top_kw.term,
        word_count_target=2000,
        include_nlp_terms=True
    )
    briefs.append(brief)

# Create content calendar
calendar = cc.generate(
    briefs=briefs,
    duration_days=90,
    publishing_frequency=3,
    include_seasonality=True
)

# Export
calendar.to_csv('content_calendar.csv')

Troubleshooting

Issue: API Rate Limiting

Symptom: RateLimitError: API quota exceeded

Solution:

from seo_skills import KeywordResearch
import time

kr = KeywordResearch(
    api_key=os.getenv("SEO_API_KEY"),
    rate_limit_delay=2.0  # Add 2 second delay between requests
)

# Or implement exponential backoff
from tenacity import retry, wait_exponential, stop_after_attempt

@retry(wait=wait_exponential(min=1, max=60), stop=stop_after_attempt(5))
def research_with_retry(keyword):
    return kr.analyze(keyword)

Issue: Incomplete Crawl Results

Symptom: Content audit missing pages

Solution:

# Increase crawl depth and timeout
/content-audit \
  --scope full \
  --max-depth 10 \
  --timeout 300 \
  --follow-redirects \
  --include-noindex

Or programmatically:

from seo_skills import ContentAudit

audit = ContentAudit(
    max_depth=10,
    timeout=300,
    follow_redirects=True,
    respect_robots_txt=True,
    include_noindex=True,
    max_pages=50000
)

Issue: Missing Environment Variables

Symptom: EnvironmentError: SEO_API_KEY not found

Solution:

Create .env file:

# .env
SEO_API_KEY=your_api_key_here
GOOGLE_SEARCH_CONSOLE_JSON=/path/to/credentials.json
GOOGLE_ANALYTICS_KEY=your_ga_key_here

Load in your script:

from dotenv import load_dotenv
import os

load_dotenv()

# Now environment variables are available
api_key = os.getenv("SEO_API_KEY")

Issue: Keyword Research Returns No Results

Symptom: Empty keyword list for seed term

Solution:

# Broaden search parameters
/keyword-research "narrow topic" \
  --depth deep \
  --min-volume 10 \
  --include-related \
  --include-questions \
  --language en \
  --country US

Issue: Schema Validation Failures

Symptom: Multiple schema errors in technical audit

Solution:

from seo_skills import TechnicalSEO

audit = TechnicalSEO()
results = audit.validate_schema(
    url='https://example.com',
    schema_types=['Product', 'Article', 'Organization'],
    strict_mode=False  # Use lenient validation first
)

# Review specific errors
for error in results.errors:
    print(f"Path: {error.path}")
    print(f"Issue: {error.message}")
    print(f"Fix: {error.recommendation}")

Advanced Usage

Custom Scoring Algorithm

from seo_skills import KeywordResearch

class CustomKeywordScoring(KeywordResearch):
    def calculate_opportunity_score(self, keyword):
        """Custom scoring based on your business priorities"""
        volume_score = min(keyword.volume / 10000, 1.0) * 40
        difficulty_score = (100 - keyword.difficulty) / 100 * 30
        intent_score = self.intent_multiplier(keyword.intent) * 20
        trend_score = keyword.trend_direction * 10
        
        return volume_score + difficulty_score + intent_score + trend_score
    
    def intent_multiplier(self, intent):
        # Prioritize commercial intent
        multipliers = {
            'transactional': 1.0,
            'commercial': 0.9,
            'informational': 0.6,
            'navigational': 0.3
        }
        return multipliers.get(intent, 0.5)

# Use custom scorer
kr = CustomKeywordScoring(api_key=os.getenv("SEO_API_KEY"))
results = kr.analyze("project management software")

Integration with CI/CD

# .github/workflows/seo-monitoring.yml
name: SEO Monitoring

on:
  schedule:
    - cron: '0 0 * * *'  # Daily at midnight

jobs:
  seo-audit:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      
      - name: Setup Python
        uses: actions/setup-python@v4
        with:
          python-version: '3.11'
      
      - name: Install dependencies
        run: |
          pip install voltagent-seo-skills pyyaml
      
      - name: Run daily SEO checks
        env:
          SEO_API_KEY: ${{ secrets.SEO_API_KEY }}
        run: |
          python scripts/daily_seo_check.py
      
      - name: Create issue if problems found
        if: failure()
        uses: actions/github-script@v6
        with:
          script: |
            github.rest.issues.create({
              owner: context.repo.owner,
              repo: context.repo.repo,
              title: 'SEO Issues Detected',
              body: 'Daily SEO audit found issues. Check workflow logs.'
            })

Resources


License: MIT

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/aradotso/marketing-skills/voltagent-seo-content-marketing-skills">View voltagent-seo-content-marketing-skills on skillZs</a>