Agent skill · Content & Marketing

blog-post-counter

Counts and compares blog posts across a target and competitors, audits content freshness via sitemap lastmod dates, and maps competitor organic keywords (US, non-branded, informational) against the target to surface ranking gaps. Use when asked to compare blog counts, content volume, publishing cadence, content freshness, keyword mapping, keyword gap analysis, or competitor keyword reports — e.g. "how many blog posts does X have vs Y", "how fresh is content on X", "where does [target] rank for [competitor] keywords", "keyword gap between X and Y". Works from company names alone. Always use for

Infrasity-Labsgithub.com/Infrasity-LabsGitHub ↗
claude-codeMIT
Install
npx skills add Infrasity-Labs/dev-gtm-claude-skills --skill blog-post-counter --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 2
SKILL.md size: 15 KB
Bundled scripts: none
Path: skills/blog-post-counter/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 97
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# Blog Post Counter + Keyword Mapping Skill Two workflows in one skill: 1. **Blog Post Counter** — counts and compares blog post output across a target and competitors, with optional content freshness audit 2. **Keyword Mapping** — pulls competitor's organic keywords (US, non-branded, informational) and cross-references against target's keyword footprint to surface gaps and opportunities --- --- # WORKFLOW A — Blog Post Counter --- ## Step 1 — Resolve each company to a URL For each company name provided: 1. If a URL was given directly, use it. 2. If only a name was given, run `curl -sL "https://<likely-domain>/robots.txt"` to confirm the site exists and find the sitemap. If that 404s, do a quick web search for `"<company name>" official website` to get the correct domain. --- ## Step 2 — Find the sitemap From the robots.txt, extract the `Sitemap:` line(s). Common patterns: - Single sitemap: `Sitemap: https://example.com/sitemap.xml` - Sitemap index: multiple `Sitemap:` lines, or a sitemap-index.xml that references sub-sitemaps If no sitemap is in robots.txt, try these fallbacks in order: ``` /sitemap.xml /sitemap_index.xml /sitemap-index.xml /blog/sitemap.xml ``` --- ## Step 3 — Co

What's inside
Steps it walks through
  1. Step 1 — Resolve each company to a URL
  2. Step 2 — Find the sitemap
  3. Step 3 — Count blog posts
  4. Step 4 — Build the output
  5. Content Freshness Audit (blog posts only)
  6. Step 5 — Extract blog post lastmod dates
  7. Step 6 — Detect build-time stamp inflation
  8. Step 7 — Compute freshness buckets
  9. Step 8 — Freshness output
  10. Notes (Workflow A)
  11. Step 1 — Pull domain metrics
  12. Step 2 — Pull competitor keywords
  13. Step 3 — Pull target keywords
  14. Step 4 — Cross-reference
Ships with 1 file
  • README.md
Commands it runs
curl -sL -A "Mozilla/5.0" "https://example.com/sitemap.xml" \
curl -sL -A "Mozilla/5.0" "https://example.com/sitemap-index.xml" \
Then fetch that sub-sitemap and count
curl -sL "https://example.com/sitemap.xml" \
import sys, re
content = sys.stdin.read()
urls = re.findall(r'<url>(.*?)</url>', content, re.DOTALL)
for u in urls:
loc = re.search(r'<loc>(.*?)</loc>', u)
lastmod = re.search(r'<lastmod>(.*?)</lastmod>', u)
More from dev-gtm-claude-skills
All skills →
About this skill
What does the blog-post-counter skill do?

Counts and compares blog posts across a target and competitors, audits content freshness via sitemap lastmod dates, and maps competitor organic keywords (US, non-branded, informational) against the target to surface ranking gaps. Use when asked to compare blog counts, content volume, publishing cadence, content freshness, keyword mapping, keyword gap analysis, or competitor keyword reports — e.g. "how many blog posts does X have vs Y", "how fresh is content on X", "where does [target] rank for [competitor] keywords", "keyword gap between X and Y". Works from company names alone. Always use for

How do I install it?

Run `npx skills add Infrasity-Labs/dev-gtm-claude-skills --skill blog-post-counter --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From Infrasity-Labs/dev-gtm-claude-skills, a repository with 97 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going