CtrlK
BlogDocsLog inGet started
Tessl Logo

canonical-url

Use when auditing metadata, crawlability, structured data, or indexability related to Set canonical URLs for all pages. Verify the rendered HTML and HTTP response rather than relying only on source files.

52

Quality

58%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/canonical-url/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

57%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.

The skill is well structured as an overview with a clean one-level pointer to references/rule.md, and it stays reasonably lean. Its main weakness is actionability: the Check and Fix sections give vague directions with no code, command, or concrete verification method in the body, and the workflow lacks explicit validation checkpoints for confirming the rendered canonical is correct.

Suggestions

Add a concrete check step in the body, e.g. fetch the rendered page and inspect the head: `curl -s <page-url> | grep -i 'rel="canonical"'`, and compare against the preferred URL rules (absolute, protocol+domain, self-referencing).

Include the canonical tag snippet inline in the Fix section (`<link rel="canonical" href="https://example.com/page" />`) rather than deferring all code to the reference.

Add an explicit post-fix validation checkpoint (re-fetch the rendered HTML and confirm the tag resolves to the preferred URL) so the Check → Fix workflow closes the loop.

DimensionReasoningScore

Conciseness

The body is short and mostly lean, but the intro paragraph ("Duplicate content from URL parameters, www vs non-www, or pagination dilutes ranking signals") and the first two Quick Reference bullets ("Canonical URLs tell search engines which version of a page to index", "Prevents duplicate content penalties") re-explain concepts Claude already knows. These are minor, compact instances of over-explanation that could be trimmed, matching the anchor at 4 rather than the 'some unnecessary explanation' level at 3.

4 / 5

Actionability

The body contains no code, commands, or concrete verification method: Check says only "Verify that this page has a canonical URL tag" without how, and Fix says "Add or correct the canonical URL tag in the head section" without showing the tag. The few concrete hints ("Use absolute URLs including protocol and domain", "head section") are high-level, fitting 'minimal concrete guidance; high-level hints but missing the specific steps to execute'. It is above 1 because some specifics (absolute URLs, self-referencing, head placement) are stated.

2 / 5

Workflow Clarity

The Check → Fix → Explain → Code Review sections give a rough sequence for a simple single-purpose task, but checkpoints are implicit: there is no method for verifying the rendered canonical (e.g. inspecting fetched HTML vs source), no criteria for what the 'correct preferred version' is, and no validate-after-fix step. This matches 'steps listed but validation gaps; checkpoints missing or implicit' rather than 4.

3 / 5

Progressive Disclosure

The bundle structure is textbook progressive disclosure: the body is a concise overview, and full implementation details, code examples, and framework guidance are clearly signaled in one place — "see references/rule.md" — which exists as a real, one-level-deep reference file containing the code example and detailed guidance. This matches 'clear overview with well-signaled one-level-deep references; content appropriately split'.

5 / 5

Total

14

/

20

Passed

Description

58%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.

The description has an explicit 'Use when' trigger and one concrete verification behavior, which puts it above average, but it reads like generated template text with the rule title spliced mid-sentence. Keyword coverage misses the most natural SEO phrasings, and the broad audit triggers create overlap risk with sibling SEO skills.

Suggestions

Rewrite the embedded rule title into a natural capability statement, e.g. 'Checks that every page declares a correct self-referencing canonical URL (rel=canonical) pointing to the preferred version.'

Add missing natural trigger terms users would actually say: 'SEO', 'duplicate content', 'canonical tag', 'rel=canonical', 'www vs non-www'.

Narrow the trigger list to canonical-URL-specific phrasing so sibling SEO audit skills (trailing slashes, lowercase paths, meta tags) do not fire on the same generic terms.

DimensionReasoningScore

Specificity

The description names the domain (canonical URLs / SEO auditing) and one concrete action — "Verify the rendered HTML and HTTP response rather than relying only on source files" — but offers no further actions (check, fix, add tags), matching the '1-2 concrete actions, not comprehensive' anchor. It is not a 4 because there are not 'several specific actions', and not a 2 because the verification action is genuinely concrete rather than generic.

3 / 5

Completeness

Both halves are present: the 'when' is explicit ("Use when auditing metadata, crawlability, structured data, or indexability related to Set canonical URLs for all pages") and the 'what' is a concrete verification behavior ("Verify the rendered HTML and HTTP response rather than relying only on source files"). It falls short of 5 because the 'what' covers only a single verification action and the embedded rule title ("related to Set canonical URLs for all pages") reads as garbled template text rather than a clear capability statement.

4 / 5

Trigger Term Quality

Phrases like "auditing metadata, crawlability, structured data, or indexability" and "canonical URLs" are relevant, but the most natural user phrasings — "SEO", "duplicate content", "canonical tag", "rel=canonical" — are absent. This fits 'some relevant keywords but missing common variations or synonyms' rather than the good-coverage anchor at 4.

3 / 5

Distinctiveness Conflict Risk

The canonical-URL niche is identifiable, but the trigger list ("metadata, crawlability, structured data, indexability") is shared by virtually every SEO-audit skill, so sibling rules (lowercase paths, trailing slashes, meta tags) would fire on the same phrases. This matches 'somewhat specific but could still overlap with similar skills'; it is more specific than the generic overlap at 2 but lacks the distinct triggers needed for 4-5.

3 / 5

Total

13

/

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.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository
thedaviddias/Front-End-Checklist
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.