Source profileQuality 93/100

MoizIbnYousaf/marketing-cli/skills/off-page-seo/SKILL.md

off-page-seo

Backlink + distribution checklist that expands a site's KD ceiling beyond what on-page work alone can earn. Use when the user mentions 'backlinks', 'off-page SEO', 'directory submissions', 'guest posts', 'outreach targets', 'link building', 'submit to directories', 'get listed in listicles', 'Product Hunt launch backlinks', or asks 'how do I get more domain authority'. Generates a prioritized, researched target list across directories, listicles, and guest-post candidates — does NOT submit anyth

Source repository stars
27
Declared platforms
0
Static risk flags
1
Last source update
2026-07-28
Source checked
2026-07-28

Decision brief

What it does—and where it fits

On-page work caps out around DR + 20 in achievable KD targets. Off-page work expands that ceiling. This skill generates a prioritized backlink target list across three lanes — directories, listicles, guest posts — and a starter-stack checklist of universal SaaS submission flows.…

Best for

  • Use when the user mentions 'backlinks', 'off-page SEO', 'directory submissions', 'guest posts', 'outreach targets', 'link building', 'submit to directories', 'get listed in listicles', 'Product Hunt launch backlinks', o…

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/MoizIbnYousaf/marketing-cli --skill "skills/off-page-seo"
Safe inspection promptEditorial

Inspect the Agent Skill "off-page-seo" from https://github.com/MoizIbnYousaf/marketing-cli/blob/f12fbcbe4929584697b309b9096c9427b0cfce8e/skills/off-page-seo/SKILL.md at commit f12fbcbe4929584697b309b9096c9427b0cfce8e. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Phase template (when seo-machine sprint integration is wanted)

    When the user is also running a seo-machine sprint, off-page phases land near the end of the tracker:

    When the user is also running a seo-machine sprint, off-page phases land near the end of the tracker:
  2. 02

    Phase N — Starter-stack directory submissions

    Why: baseline backlinks from high-DR directories. Cap at 2-3 hours of submission work.

    [ ] Product Hunt — coordinate launch with startup-launcher[ ] G2 — submit product page[ ] Capterra — submit product page
  3. 03

    Phase N+1 — Listicle outreach (top 10 targets)

    Why: "Top X [category]" listicles already rank for our target keywords. Getting added is faster than displacing them.

    example.com/best-twitter-monitoring-tools (DR 65)example.com/top-social-listening-tools-2026 (DR 72)... (top 10)
  4. 04

    On Activation

    1. Load brand context: positioning.md, competitors.md, audience.md, voice-profile.md. Missing files are fine. 2. Surface what loaded:

    Load brand context: positioning.md, competitors.md, audience.md, voice-profile.md. Missing files are fine.Surface what loaded:1. Load brand context: positioning.md, competitors.md, audience.md, voice-profile.md. Missing files are fine. 2. Surface what loaded:
  5. 05

    Backend Selection

    Prefer OpenSEO getbacklinksoverview / getdomainoverview and openseo-link-prospecting outputs when configured; otherwise Exa/web with authority metrics unknown. Full contract: skills/openseo/references/backend-contract.md.

    If competitors.md is missing, prompt the user for 3-7 direct competitors before running Recipe F (the researched-target-list recipe needs competitor domains as input).Check for .seo/backlink-targets.json in the current project. If present, this is a re-run — show the user the existing target counts and ask whether to refresh or just present the existing list.Prefer OpenSEO getbacklinksoverview / getdomainoverview and openseo-link-prospecting outputs when configured; otherwise Exa/web with authority metrics unknown. Full contract: skills/openseo/references/backend-contract.m…

Permission review

Static risk signals and limitations

Network access

medium · line 114

The documentation includes network, browsing, or remote request actions.

{ "domain": "g2.com", "dr": 88, "url_to_submit": "https://www.g2.com/products/new", "competitor_uses": ["hootsuite", "buffer"] }

Network access

medium · line 117

The documentation includes network, browsing, or remote request actions.

{ "domain": "thedigitalprojectmanager.com", "dr": 65, "url": "https://...", "topic": "Best Twitter monitoring tools", "competitor_listed": "hootsuite" }

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score93/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars27SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
MoizIbnYousaf/marketing-cli
Skill path
skills/off-page-seo/SKILL.md
Commit
f12fbcbe4929584697b309b9096c9427b0cfce8e
License
MIT
Collected
2026-07-28
Default branch
main
View the original SKILL.md

Off-Page SEO

On-page work caps out around DR + 20 in achievable KD targets. Off-page work expands that ceiling. This skill generates a prioritized backlink target list across three lanes — directories, listicles, guest posts — and a starter-stack checklist of universal SaaS submission flows. It does not submit anything. The user (or the user's outreach team) does the actual submission.

The off-page half of the SEO operation. Pairs with seo-machine (on-page programmatic sprint) — ship pages with seo-machine, queue outreach with this skill, run them in parallel.

On Activation

  1. Load brand context: positioning.md, competitors.md, audience.md, voice-profile.md. Missing files are fine.
  2. Surface what loaded:

Backend Selection

Prefer OpenSEO get_backlinks_overview / get_domain_overview and openseo-link-prospecting outputs when configured; otherwise Exa/web with authority metrics unknown. Full contract: skills/openseo/references/backend-contract.md.

Brand context loaded:
├── Positioning    ✓/✗  (drives outreach angle + value-add framing)
├── Competitors    ✓/✗  (target list source — Recipe F runs on them)
├── Audience       ✓/✗  (selects niche-specific directories + communities)
└── Voice Profile  ✓/✗  (shapes outreach email tone if user chains into cold-email)
  1. If competitors.md is missing, prompt the user for 3-7 direct competitors before running Recipe F (the researched-target-list recipe needs competitor domains as input).
  2. Check for .seo/backlink-targets.json in the current project. If present, this is a re-run — show the user the existing target counts and ask whether to refresh or just present the existing list.

When to use vs adjacent skills

SkillWhenWhen NOT
off-page-seo (this)Building a prioritized backlink target list + universal starter-stack checklistDoing actual outreach (use cold-email for that)
seo-machineOn-page programmatic sprint (alternatives, comparison, use-case pages)Off-page work — this skill
seo-auditDiagnosing on-site technical issuesBuilding backlink target lists
cold-email (in direct-response-copy)Writing the outreach emails after target list existsGenerating the target list itself
startup-launcherLaunch-day platform submissions (Product Hunt, BetaList, etc.)Ongoing backlink work post-launch

The Starter Stack (universal SaaS submission flow)

Every new site should be submitted to these by week 4. Most are free; all are worth a one-time submission. This is the mechanical work — checklist, not creative.

Directories (submit and check off)

DirectoryDR (approx)Notes
Product Hunt90+Single biggest launch-day backlink + traffic source. Coordinate with startup-launcher.
G288+Becomes a destination for "[brand] reviews" searches; needs screenshot + verification email.
Capterra / GetApp / Software Advice80+Gartner Digital Markets — same submission flow across all three.
SaaSHub65+Quick win, free.
AlternativeTo80+List as alternative to top 5 competitors. Required free submission.
BetaList70+Only if pre-launch or recently launched.
Indie Hackers75+Products section. Founder-friendly community.
TopAlternatives.com / SimilarSiteSearch / Slant.co50–65Niche but cumulatively useful.
Crunchbase92+Even free profile gets DR pass-through.

Community surfaces (selective)

SurfaceWhen to engageHard rule
Niche subredditsFind via Exa search "site:reddit.com [audience] [problem]" or Ahrefs site-explorer on reddit.com for your keywordsEngage genuinely for 2+ weeks before mentioning the product. Never just post a link.
Slack/Discord communitiesFor your audience personaJoin 3-5, contribute substantively for 2 weeks before mentioning.
Hacker NewsFor technical productsShow HN posts can drive enormous traffic spikes — require a real launch story, not "we built another SaaS."

Founder outreach (slow-burn channel)

  • Founder link trades with complementary (non-competitive) products. Reach out to 5-10 founders of products your audience also uses. Offer mutual blog mentions, "tools we love" pages, or guest posts.
  • Guest posts on DR 30+ niche blogs. Find via Recipe F (competitor referring-domains). Pitch 1-2 strong posts per month — not spray-and-pray.

Recipe F — Researched Target List

Use Exa MCP (mktg default) or Ahrefs MCP (if connected) to surface high-value link opportunities your competitors already have. The target list is built FROM your competitors' existing backlinks.

Exa path (mktg default)

For each top-3 competitor:

mcp__exa__web_search_advanced_exa
query: "[competitor-domain] -site:[competitor-domain]"
filter: linksTo:[competitor-domain]
limit: 50

Then for each result, scrape the page (Exa crawling_exa or firecrawl) and extract: domain, page title, anchor text. Filter to DR≥30 sites via a separate exa__company_research_exa lookup, OR by manual triage of well-known authority domains.

Ahrefs appendix (only if you have a paid sub)

If mcp__ahrefs__subscription-info-limits-and-usage returns data AND you want numeric precision on referring-domain DR, run:

mcp__ahrefs__site-explorer-referring-domains
target: <competitor-domain>
where: domain_rating >= 30 AND traffic_dofollow >= 100
order_by: domain_rating:desc
limit: 100

This replaces only the DR-proxy step in the Exa path above. Ahrefs MCP is not in mktg's chained-in ecosystem — keep this as a footnote, not a default.

Then for each candidate domain (Exa-path or Ahrefs-path), filter manually into buckets:

BucketSignal
Directory candidatesSite name matches "[category] directory", "best of [category]", "[category] tools", "alternatives to [tool]"
Listicle candidatesBlog posts titled "Top X [category] in YYYY" — pitch yourself for inclusion
Guest-post candidatesLooks like a blog (*.com/blog/... URLs), DR 30+, posts on your niche topic
SkipPR wires, paid networks, irrelevant niches, sites that link to everyone in the space

Output schema (.seo/backlink-targets.json)

{
  "generated_at": "YYYY-MM-DD",
  "research_backend": "exa" | "ahrefs" | "manual",
  "directories": [
    { "domain": "g2.com", "dr": 88, "url_to_submit": "https://www.g2.com/products/new", "competitor_uses": ["hootsuite", "buffer"] }
  ],
  "listicles": [
    { "domain": "thedigitalprojectmanager.com", "dr": 65, "url": "https://...", "topic": "Best Twitter monitoring tools", "competitor_listed": "hootsuite" }
  ],
  "guest_posts": [
    { "domain": "indiehackers.com/blog", "dr": 81, "topic_fit": "founder-led marketing" }
  ]
}

This file lives at the project root under .seo/ and is read by the mktg-backlink-prospector agent on future runs to avoid duplicate prospecting.

Parallel research via mktg-backlink-prospector agent

When the user wants a fresh target list and there are 3+ competitors to research, /cmo should spawn the mktg-backlink-prospector agent rather than running Recipe F inline. The agent fans out competitor-by-competitor research in parallel, returns the consolidated .seo/backlink-targets.json, and frees /cmo's context for the next decision.

See agents/research/backlink-prospector.md for the spawn contract.

Phase template (when seo-machine sprint integration is wanted)

When the user is also running a seo-machine sprint, off-page phases land near the end of the tracker:

### Phase N — Starter-stack directory submissions

**Why:** baseline backlinks from high-DR directories. Cap at 2-3 hours of submission work.

**Scope:**
- [ ] Product Hunt — coordinate launch with startup-launcher
- [ ] G2 — submit product page
- [ ] Capterra — submit product page
- [ ] SaaSHub
- [ ] AlternativeTo — list as alternative to: <competitor-1>, <competitor-2>, ...
- [ ] Indie Hackers — claim product page
- [ ] Crunchbase — basic profile

**Files modified:** none (external work). Track status in `.seo/off-page-status.md`.

### Phase N+1 — Listicle outreach (top 10 targets)

**Why:** "Top X [category]" listicles already rank for our target keywords. Getting added is faster than displacing them.

**Targets (from .seo/backlink-targets.json):**
1. example.com/best-twitter-monitoring-tools (DR 65)
2. example.com/top-social-listening-tools-2026 (DR 72)
3. ... (top 10)

**Action:**
- [ ] For each, find the author via byline or about page
- [ ] Chain into `direct-response-copy` (cold-email mode) for the outreach email
- [ ] Send personalized note: short pitch + screenshot proof of value + link to demo
- [ ] Track reply status in `.seo/off-page-status.md`

**Verification:** 3+ listicles update to include the product within 60 days.

What this skill explicitly does NOT do

  • Auto-submit anywhere. Submission flows often need real human review (G2 needs screenshot + URL + verification email; Product Hunt needs a launch coordinator).
  • Generate outreach emails. Use direct-response-copy (cold-email mode) for that. This skill produces the target list; the email writer is a separate skill.
  • Track ongoing referring-domain growth. That's a weekly check-in task the user owns; this skill just provides the initial target list and refreshes it on demand.
  • Run paid networks or link buys. Black-hat. mktg policy: white-hat only.

Honest caveats

Off-page work is slower and more uncertain than on-page work. A great alternatives page ranks within 30–90 days. A great backlink campaign might produce 3 useful links in the first month, 10 in three months. Don't gate the on-page sprint on off-page progress. Ship pages; queue outreach in parallel.

The compounding effect is also lumpy: one DR 80+ listicle is worth ten DR 30 directories. Prioritize quality over quantity in the target list — 10 well-researched targets beat 100 spray-and-pray submissions.

Anti-patterns

Don'tWhy
Submit to every directory you findLow-DR directories don't move the needle; cumulative time cost is high, return is low. Stick to the curated starter stack + Recipe F targets.
Mass-pitch the same email to 50 listicle authorsPersonalization rate-determines reply rate. 10 personalized pitches outperform 100 templated ones by 5–10× in reply rate.
Reciprocal link schemes ("you link to me, I link to you")Google penalizes these patterns at scale. Founder link trades are different (they're editorial decisions); blind reciprocal exchanges are not.
Paid links from PBNs (private blog networks)Black-hat, manually reviewed by Google, results in penalty when caught. Never.
Outreach without value-addA pitch that's just "please add me" gets ignored. Lead with a screenshot, a stat, or a useful angle the author missed.
Gate the on-page sprint on backlink growthBacklink campaigns are 3–6 month timelines. On-page work compounds in parallel — never let outreach uncertainty stop page shipping.

Cross-references

  • agents/research/backlink-prospector.md — parallel-fan-out research agent that builds .seo/backlink-targets.json
  • skills/seo-machine/references/off-page.md — the sibling reference doc inside seo-machine's run-time bundle
  • skills/competitive-intel/SKILL.md — produces brand/competitors.md, the seed input for Recipe F
  • skills/direct-response-copy/SKILL.md (cold-email mode) — writes the outreach emails once the target list exists
  • skills/startup-launcher/SKILL.md — coordinates launch-day submission to 56 platforms (overlap on Product Hunt + BetaList; this skill handles the ongoing post-launch off-page work)

Alternatives

Compare before choosing

Computed 9342,015

coreyhaines31/marketingskills

attribution

When the user wants to figure out which marketing actually drives conversions and revenue, choose or interpret an attribution model, or reconcile conflicting numbers across tools. Also use when the user mentions "attribution," "attribution model," "first-touch vs last-touch," "multi-touch," "which channel drives revenue," "what's my real CAC," "my dashboards disagree," "Google/Meta says X but GA says Y," "media mix model," "MMM," "incrementality," "geo lift," "holdout test," "how did you hear ab

Computed 9237,126

github/awesome-copilot

competitor-ad-intelligence

Use this skill when the user asks to analyze, tear down, or reverse-engineer a competitor's paid ads. Trigger for prompts like "what ads is [competitor] running", "tear down their ad strategy", "competitor ad analysis", "find ad angles we haven't tried", or "reverse-engineer their paid funnel". Do not trigger for organic/SEO competitor research or website positioning analysis.

Computed 9227

MoizIbnYousaf/marketing-cli

free-tool-strategy

Plans free tools, calculators, generators, and interactive widgets that attract target audience through search and social sharing. Engineering as marketing — build something useful, capture leads. Use when someone wants to build a free tool for marketing, says 'free tool', 'calculator', 'generator', 'engineering as marketing', 'side project marketing', 'interactive widget', 'lead generation tool', 'SEO tool', 'growth hack', 'build something to attract users', or wants to attract users through ut

Computed 9227

MoizIbnYousaf/marketing-cli

seo-machine

Build an organic-traffic operating system for any site or app: a multi-phase, resumable engine that ships programmatic landing pages (alternatives, comparisons, use-cases, playbooks) on top of real keyword research. Use when the user says 'SEO machine', 'build organic traffic', 'rank on Google', 'we need traffic', 'alternatives pages', 'comparison pages', '/for/ pages', 'programmatic SEO', or 'build an SEO engine'. Distinct from `seo-audit` (one-off diagnostic) and `seo-content` (single-article