Commands
| Command | What it does |
/blog cluster plan <seed> | SERP-based semantic analysis from a seed keyword. Outputs cluster-plan.json and cluster-map.html with hub, spokes, intent classification, and the internal linking matrix. |
/blog cluster execute <plan-file> | Sequential per-post writes using the plan. Hands off to /blog write for the pillar and every spoke, with cluster context and auto-injected interlinks. |
/blog cluster map <plan-file> | Regenerates the interactive cluster-map.html from an existing plan file. Useful after manual edits to the plan. |
How SERP-overlap scoring works
For each pair of candidate keywords, blog-cluster pulls the top 10 ranking URLs from Google for each keyword and computes a Jaccard-style similarity over the two URL sets. The default similarity threshold for cluster inclusion is 30%, which corresponds to at least 3 of 10 shared results between any two keywords in a cluster. Below the threshold, keywords split into separate clusters. Above it, they collapse into one. The threshold is tunable; a higher value produces tighter clusters and more pages, a lower value produces broader clusters and fewer pages.
Execution path
If /blog write is installed, /blog cluster execute writes the hub and every spoke with the agreed internal linking matrix injected during draft generation. Each spoke knows about the hub and its siblings before it is written, so anchor text and internal links are placed naturally inside the prose rather than appended as a related-posts list.
If /blog write is not installed, the skill outputs an editorial brief per post (title, primary keyword, intent, template, word count target, list of required internal links with suggested anchor text). The brief can be handed to a writer or fed back into any LLM with no further dependencies.
Output artifacts
- cluster-plan.json: full machine-readable plan with pillar, clusters, posts, link matrix, and volume estimates.
- cluster-map.html: static HTML with inline SVG. No JavaScript. Hover and tooltips use CSS and native SVG
<title> only.
- pillar-<slug>.md and <spoke-slug>.md: per-post markdown drafts (Execute Phase, requires /blog write).
- cluster-scorecard.md: per-post status, cluster cohesion score, link audit, cannibalization check.
Attribution
The original semantic-cluster-engine submission by Lutfiya Miller scored 95/100 Exemplary in the Pro Hub Challenge audit (security, functionality, code quality, documentation, innovation). Lutfiya's Plan + Execute architecture and the cluster-context injection pattern are preserved verbatim. The Claude Blog port removes brand-specific styling and image prompts from the original, hardens the cluster-map HTML output against XSS, and routes through existing claude-blog sub-skills (/blog write, /blog strategy, /blog schema). The original repository remains at github.com/Drfiya/semantic-cluster-engine.