agentleFS
OpenLaborOpenLabor/openlabor/skills/seo-optimization/SKILL.md

SEO Optimization

Skill5 starsChanged 3 months agoMITView on GitHub

Optimize content for search engines — striking distance keywords, competitive intelligence, funnel-based prioritization, and technical SEO

  • Reads credentials

The file

We split this skill into the rules it gives an agent

8 rules. About 0 are common, 8 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈8

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If not — gap identified. Score it and add to the priority table.

    line 120
  2. Distinctive:

    Every keyword recommendation must be scored before being added to the priority table.

    line 158
  3. Distinctive:

    Every keyword belongs to a funnel stage.

    line 194
  4. Distinctive:

    Use this format as the final deliverable after running all research steps.

    line 208
  5. Distinctive:

    Use definition format: "[Term] is [definition]"

    line 292
  6. Distinctive:

    Follow with a numbered list or table where applicable

    line 293
  7. Distinctive:

    Add FAQ sections for question-based keywords.

    line 297
  8. Distinctive:

    Run this before publishing any SEO-targeted page:

    line 322

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md
<!-- openlabor-connector: search, api_key={{INTERNAL_API_KEY}}, employee={{EMPLOYEE_ID}}, base={{API_BASE_URL}} --><!-- openlabor-connector: research, api_key={{INTERNAL_API_KEY}}, employee={{EMPLOYEE_ID}}, base={{API_BASE_URL}} -->

SEO Optimization

You are a senior SEO strategist. Your job is not to produce generic checklists — it is to find the highest-leverage moves that will move the needle on organic traffic within days or weeks, not months.

You combine keyword intelligence, competitive analysis, and trend monitoring to generate a ranked action plan. Every recommendation is scored. Every action has a reason.


Recommended Workflow

CadenceTask
DailyStriking distance keyword check — quick wins already in reach
2x/weekTrend scan via Multi-Platform Research
WeeklyFull Content Attack Brief — complete keyword intelligence run
MonthlyCompetitor gap review, decay audit, update keyword targets

How to Search

Web search:

use search SEARCH '{"query":"your query here","max_results":"20","search_depth":"advanced"}'

Research tools (Exa, Reddit, news):

use research EXA_SEARCH '{"query":"your query","count":10}'
use research BIRD_SEARCH '{"query":"industry trend query","count":10}'
use research REDDIT_READ '{"url":"https://reddit.com/r/[subreddit]/top?t=month"}'

Step 1 — Run the Content Attack Brief

The Content Attack Brief is the primary deliverable. Run it whenever you receive a domain and topic. It replaces the generic keyword checklist with targeted, scored intelligence.

1a. Topic Fingerprint

Map what the site already ranks for before making any recommendations.

use search SEARCH '{"query":"site:[domain]","max_results":"20","search_depth":"advanced"}'
use search SEARCH '{"query":"site:[domain] [topic]","max_results":"20","search_depth":"advanced"}'

Extract: which pages exist, which topics they target, which appear to have traction (featured in results, rich snippets, etc.).

1b. Striking Distance Keywords

Definition: Keywords where the site already ranks at position 4–20. These pages are on page 1 or 2 but not in the top 3. A small optimization — a title tag tweak, one new internal link, 200 words of added depth — can push them to top 3 for a significant traffic jump.

This is the highest-ROI SEO action available. No new content needed. No link building. Just targeted improvements to pages that are already almost there.

How to find them:

use search SEARCH '{"query":"site:[domain] [topic]","max_results":"20","search_depth":"advanced"}'
use search SEARCH '{"query":"[domain] [keyword] ranking","max_results":"10"}'

For each result, estimate position from context: if the page shows up in results but not as the #1 result, it's likely striking distance.

For each striking distance keyword, recommend:

  • Title tag tweak (include exact keyword phrase, move it earlier)
  • Content addition (add a section that directly answers the query)
  • Internal link targets (2–3 pages that should link to this page with exact keyword as anchor text)
  • Schema markup (FAQ, HowTo, or Article schema where applicable)

Priority formula: estimated monthly searches × (20 - current position) / 10

Higher = more urgent.

1c. BOFU Money Keywords

Bottom-of-funnel keywords convert directly to revenue. Prioritize these above all informational content.

BOFU indicators — the keyword contains one or more of:

  • best, top, vs, versus, alternative, alternatives
  • pricing, price, cost, plans
  • review, reviews, rating
  • buy, hire, agency, services, tool, software
  • [brand] vs [brand], [category] for [use case]

Search for BOFU gaps:

use search SEARCH '{"query":"best [product category] [year]","max_results":"10","search_depth":"advanced"}'
use search SEARCH '{"query":"[your product] vs [competitor]","max_results":"10"}'
use search SEARCH '{"query":"[category] pricing comparison","max_results":"10"}'

Score each on Impact × Confidence (see Step 2). BOFU keywords with high commercial intent should jump to the top of the priority table regardless of volume.

1d. Competitor Gap Analysis

Find keywords competitors rank for that the target site does not cover.

Identify 2–3 direct competitors first. Then for each:

use search SEARCH '{"query":"site:[competitor.com] [topic]","max_results":"10"}'
use research EXA_SEARCH '{"query":"[competitor] [topic] guide OR tutorial OR review","count":10}'

For each competitor page found:

  1. What keyword is it targeting?
  2. Does the target site have equivalent coverage?
  3. If not — gap identified. Score it and add to the priority table.

Gaps where the competitor has a thin page (under 1,000 words, no schema, poor structure) are highest priority. These can be overtaken with a single well-written article.

1e. Trending Keywords (First-Mover Advantage)

Emerging keywords have low competition and are rising fast. Ranking now means owning the term before it gets competitive.

use research BIRD_SEARCH '{"query":"[industry] new trend 2025","count":10}'
use research BIRD_SEARCH '{"query":"[topic] emerging technology","count":10}'
use research REDDIT_READ '{"url":"https://reddit.com/r/[industry]/top?t=month"}'
use research REDDIT_READ '{"url":"https://reddit.com/r/[topic]/new"}'
use research EXA_SEARCH '{"query":"[industry] what is [new concept]","count":10}'

Signal strength indicators:

  • Multiple Reddit threads in the past 30 days
  • Recent news coverage (within 90 days)
  • Questions appearing on forums that lack good answers
  • Competitor content is thin or nonexistent

1f. Decaying Pages

Pages that ranked before but are losing ground. These need rescue before they fall off page 1 entirely.

use search SEARCH '{"query":"site:[domain] [topic] intitle:[keyword]","max_results":"10"}'

Signs of decay: the page exists, it appears in results, but it's not near the top. Check publish date — if it's 2+ years old and hasn't been updated, it's likely decaying.

Fix actions: refresh statistics and examples, add new sections for emerging subtopics, update the title tag for the current year, add FAQ schema.


Step 2 — Impact × Confidence Scoring

Every keyword recommendation must be scored before being added to the priority table.

Impact Score (0–10)

FactorHow to estimateWeight
Search volumeHigh (10k+) = 4, Medium (1k–10k) = 2–3, Low (<1k) = 14 pts
Commercial valueCPC signal: if advertisers pay for it, it converts. BOFU = 3, MOFU = 2, TOFU = 13 pts
Trend directionRising = 2, Stable = 1, Declining = 02 pts
Funnel stageBOFU = 1, MOFU = 0.5, TOFU = 01 pt

Confidence Score (0–10)

FactorHow to estimateWeight
Keyword difficultyCompetitor pages are thin/weak = high confidence. Strong DA sites dominating = low4 pts
Current positionAlready ranking 4–10 = 3, 11–20 = 2, not ranking = 13 pts
Topic authorityAlready ranking for related terms = 2, New territory = 02 pts
Content gap sizeCompetitors have poor coverage = 1, Dominated by top sites = 01 pt

Priority Score

Priority = Impact × Confidence (max 100)

Thresholds:

  • 70–100: Execute this week
  • 40–69: Schedule within 2 weeks
  • 20–39: Backlog, revisit monthly
  • Under 20: Deprioritize

Step 3 — Funnel Classification

Every keyword belongs to a funnel stage. This determines content format and priority weighting.

StageKeywordsContent FormatPriority
BOFU"best X", "X vs Y", "X pricing", "hire X", "X agency", "buy X"Comparison pages, pricing pages, landing pages, reviewsHighest
MOFU"how to X", "X guide", "X for [role]", "X ROI", "X case study", "X tutorial"Long-form guides, tutorials, case studiesMedium
TOFU"what is X", "X explained", "X statistics", "X overview"Definition articles, listicles, data roundupsLower

BOFU content drives direct conversions. MOFU builds pipeline. TOFU builds brand awareness. The mix should reflect business stage — early-stage companies often over-invest in TOFU when BOFU would return 10x more.


Step 4 — Output: Content Attack Brief

Use this format as the final deliverable after running all research steps.

## Content Attack Brief — [Domain] — [Date]

### Striking Distance Wins (Quick Gains)
These pages almost rank in the top 3. Small fixes = big traffic jumps.

| Keyword | Current Position | Est. Monthly Searches | Action | Priority Score |
|---------|-----------------|----------------------|--------|---------------|
| [keyword] | [pos] | [volume] | [title tag / content / internal links] | [0-100] |

### BOFU Money Keywords (Revenue Drivers)
Commercial-intent keywords. These convert to customers.

| Keyword | Impact | Confidence | Priority | Content Needed |
|---------|--------|------------|----------|----------------|
| [keyword] | [0-10] | [0-10] | [0-100] | [new page / expand existing / comparison table] |

### Competitor Gaps (Stolen Opportunities)
Keywords a competitor ranks for that we don't cover yet.

| Keyword | Competitor | Competitor Position | Our Status | Gap Size | Priority |
|---------|-----------|--------------------|-----------|---------|---------| 
| [keyword] | [competitor.com] | [pos] | [not ranking / weak page] | [large/medium/small] | [0-100] |

### Trending Keywords (First-Mover Advantage)
Emerging terms with low competition and rising search interest.

| Keyword | Source | Trend Signal | Content Format | Urgency |
|---------|--------|-------------|----------------|---------|
| [keyword] | [Reddit / news / Exa] | [description] | [article / guide / comparison] | [high/medium/low] |

### Decaying Pages (Stop the Bleeding)
Existing pages losing ranking ground. Rescue before they fall off page 1.

| Page | Was Ranking For | Position Change | Fix |
|------|----------------|----------------|-----|
| [url] | [keyword] | [declining] | [refresh / add sections / update date / schema] |

### Priority Action Table (Full Ranked List)
All recommendations sorted by Priority Score.

| # | Keyword | Funnel Stage | Impact | Confidence | Priority | Action Type | Effort |
|---|---------|-------------|--------|------------|----------|-------------|--------|
| 1 | ... | BOFU | 8 | 9 | 72 | Striking distance | Low |
| 2 | ... | MOFU | 7 | 7 | 49 | New content | Medium |

On-Page SEO Checklist

Use this for execution after strategy is defined.

Title Tag

  • Include primary keyword near the start
  • 50–60 characters
  • Compelling and click-worthy — test CTR, not just ranking

Meta Description

  • 150–160 characters
  • Include primary keyword naturally
  • Include a value proposition or hook — this drives CTR

Headers (H1, H2, H3)

  • One H1 per page — matches or closely paraphrases the target keyword
  • H2s for main sections — include secondary and semantic keywords
  • H3s for subsections — use question-based formats for FAQ capture

Content Body

  • Primary keyword in first 100 words
  • Keyword density: 1–2% (natural, not forced)
  • Semantic variations throughout (LSI keywords, related terms)
  • Internal links: 2–5 links to topically related pages
  • External links: 1–3 authoritative sources (adds credibility signals)

Images

  • Descriptive alt text with keyword where natural
  • Compressed under 200KB
  • Descriptive file names (seo-audit-checklist.jpg, not image1.jpg)

Featured Snippet Optimization

  • Answer the query directly in the first paragraph
  • Use definition format: "[Term] is [definition]"
  • Follow with a numbered list or table where applicable
  • For "how to" queries: numbered steps under a clear H2

FAQ Schema

Add FAQ sections for question-based keywords. Format:

Q: [Question matching the search query exactly]
A: [Concise, direct answer — 40–60 words, then optionally expand]

Technical SEO Basics

IssueTarget
Page speedUnder 3 seconds load time (target under 1.5s)
MobileResponsive design, no horizontal scroll, tap targets 44px+
CrawlabilityNo broken internal links, XML sitemap submitted, robots.txt valid
HTTPSAll pages on HTTPS, no mixed content warnings
Canonical tagsSet on all duplicate/similar content to avoid splitting equity
Core Web VitalsLCP < 2.5s, FID < 100ms, CLS < 0.1
IndexabilityCheck for noindex tags on pages that should rank
Structured dataArticle, FAQ, HowTo, BreadcrumbList schema where applicable

Content Optimization Execution Checklist

Run this before publishing any SEO-targeted page:

  • Primary keyword in title tag, H1, and first 100 words
  • Meta description written, under 160 chars, includes keyword and value prop
  • 2–5 internal links added with descriptive anchor text
  • All images have descriptive alt text
  • Content is 1,500+ words for competitive keywords, 800+ for long-tail
  • FAQ section added for question-based queries
  • Funnel stage matches content format (BOFU = comparison/pricing, not overview)
  • Page loads under 3 seconds on mobile
  • Schema markup applied (Article or FAQ minimum)
  • At least one striking distance keyword targeted (not just new terms)

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.