CtrlK
BlogDocsLog inGet started
Tessl Logo

seo-content-audit

Comprehensive SEO footprint analysis. Catalogs all content, pulls real SEO metrics (via Apify Semrush/Ahrefs scrapers or free web search probes), runs competitor analysis, builds topic/keyword and content-type gap matrices, and produces a prioritized recommendations report. The complete SEO audit for any company.

58

Quality

67%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/seo/composites/seo-content-audit/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-sequenced, genuinely actionable audit playbook whose main costs are an oversized inline output template that belongs in a reference file, some duplicated matrix scaffolding, and references to scripts that are not shipped in the bundle. Adding a few validation checkpoints and moving the template out would lift it substantially.

Suggestions

Move the ~190-line Output Template to a reference file (e.g. references/report-template.md) and keep only a short outline in SKILL.md, linked with "See [report-template.md](references/report-template.md)".

Add validation checkpoints between phases — e.g. "Confirm the content catalog covers >90% of sitemap URLs before building gap matrices" and "Cross-check Semrush keyword positions against at least 3 live SERP probes before flagging gaps".

Either ship the fallback scripts referenced in Phase 3 and the Tips section ("the scripts fall back to web search probes") or rewrite those lines to describe the fallback procedure inline, since no scripts/ directory exists in the bundle.

Trim duplication: keep the worked gap-matrix examples in one place and reference them from the template, and drop the opening line that restates the frontmatter description.

DimensionReasoningScore

Conciseness

Mostly efficient — phases, cost table, and matrix "how to build" steps earn their tokens — but there is noticeable tightening opportunity: the opening line re-states the frontmatter description almost verbatim, the gap-matrix tables appear twice (worked examples in Phase 5 and again as empty shells in the output template), and the Tips section carries commentary like "they directly feed into content strategy recommendations". This fits the anchor "mostly efficient but could be tightened" rather than the minor-trim level of 4.

3 / 5

Actionability

As an instruction-only skill it gives concrete, specific guidance: numbered per-phase steps, exact matrix schemas with worked example rows, a filled-in cost table, and a full report template. It is not 5 because execution details are incomplete in places — e.g. "via Apify Semrush scraper" and "the scripts fall back to web search probes" reference scripts that are not part of the bundle, and no concrete Apify actor names, commands, or probe queries are given.

4 / 5

Workflow Clarity

Seven phases are clearly sequenced with dependencies stated ("Using data from Phases 2-4"), parallelism called out ("Run Phases 2-3 in parallel"), and data-source fallbacks specified (sitemap → RSS → blog index; Apify → web search probes). It stops short of 5 because there are no validation checkpoints on the outputs — e.g. no step to sanity-check scraped metrics, confirm crawl coverage, or verify matrix completeness before synthesis.

4 / 5

Progressive Disclosure

The body has clear section structure, but roughly 190 lines of the ~330-line file are an inlined full report output template plus worked matrix examples — content that clearly belongs in a separate reference file per the anchor at score 2/3. No bundle files exist at all, and the only file mentions are output artifacts ("[Link to content-inventory.md]") the skill produces, not skill references. This lands on "content that should be separate is inline" — solid structure keeps it at 3 rather than 2.

3 / 5

Total

14

/

20

Passed

Description

71%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong, action-dense description with concrete tooling details and good natural trigger terms. Its main deficiency is the complete absence of a "Use when..." invocation clause, which caps completeness and leaves distinctiveness slightly underdeveloped.

Suggestions

Append an explicit trigger clause, e.g. "Use when the user asks for an SEO audit, content audit, competitor SEO comparison, or keyword/content gap analysis for a company or domain."

Add common synonym triggers such as "organic traffic", "backlinks", and "search rankings" to broaden natural keyword coverage.

Drop the marketing-style closer "The complete SEO audit for any company" in favor of the trigger guidance above — it adds a claim rather than information.

DimensionReasoningScore

Specificity

The description lists multiple concrete third-person actions — "Catalogs all content", "pulls real SEO metrics (via Apify Semrush/Ahrefs scrapers or free web search probes)", "runs competitor analysis", "builds topic/keyword and content-type gap matrices", "produces a prioritized recommendations report" — with even the tooling specified. This matches the anchor for multiple specific concrete actions with comprehensive coverage; the only soft spot is the generic opener "Comprehensive SEO footprint analysis", which is not enough to drop to 4 since the action list that follows is exhaustive.

5 / 5

Completeness

The "what" is clearly and concretely answered (catalog content, pull metrics, competitor analysis, gap matrices, prioritized report), but there is no "Use when..." clause or equivalent trigger guidance — "The complete SEO audit for any company" states scope, not when to invoke it. Per the rubric guideline, a missing explicit trigger clause caps completeness at 3; it is not 4 because the 'when' is entirely absent rather than merely imprecise.

3 / 5

Trigger Term Quality

Natural terms users would say include "SEO audit", "SEO metrics", "competitor analysis", "keyword", and brand-name tools "Semrush"/"Ahrefs", giving good coverage. It falls short of anchor 5 because common synonyms like "backlinks", "organic traffic", "content strategy", or "search rankings" are missing.

4 / 5

Distinctiveness Conflict Risk

The Semrush/Ahrefs/gap-matrix framing carves out a fairly clear niche that would rarely fire for unrelated skills. It is not 5 because it could still overlap with adjacent content-marketing or content-strategy skills that share triggers like "content" and "competitor analysis".

4 / 5

Total

16

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
gooseworks-ai/goose-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.