CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

astro

Expert in Astro framework with static generation and partial hydration patterns

Quality

56%

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 ./astro/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

47%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 body is a coherent, well-sectioned checklist of real Astro practices, but it reads as a topic catalog rather than an operational skill: no code examples, no sequenced workflow, and a noticeable share of generic best-practice bullets that any capable model already knows. It also references the deprecated Astro.glob() API without a deprecation note, which risks steering users to an outdated pattern.

Suggestions

Add a few compact, executable examples for the core patterns — a .astro component (frontmatter script + scoped style), a getStaticPaths() dynamic route, and a client:visible island usage — to replace abstract bullets like "Implement proper composition and reusability".

Cut generic non-Astro advice (descriptive variable names, semantic HTML, ARIA, keyboard navigation, Core Web Vitals, Lighthouse) and spend the tokens on Astro-specific detail, such as content collection schema definitions or the islands architecture decision of which directive to use.

Flag the outdated Astro.glob() API (deprecated in favor of content collections / import.meta.glob) or replace it with the current approach, and consider a short ordered "create a new page" workflow to give the skill a sequence.

DimensionReasoningScore

Conciseness

The body is bullet-based with no padded paragraphs, but several bullets restate generic knowledge Claude already has — "Use descriptive variable names", "Implement proper composition and reusability", "Use semantic HTML", "Ensure keyboard navigation", "Prioritize Core Web Vitals (LCP, FID, CLS)" — adding tokens without Astro-specific value. This matches the score-3 anchor (mostly efficient with some unnecessary content) rather than score 4, where such trimming is minor rather than spread across multiple sections.

3 / 5

Actionability

Specific Astro artifacts are named — the src/ layout, "[...slug].astro", "getStaticPaths()", "client:load/client:idle/client:visible", "@astrojs/tailwind", "Astro.props", "Astro.glob()" — but there are no executable code examples (only a directory tree), and many bullets are abstract ("Implement lazy loading for assets", "Monitor performance budgets", "Implement proper error handling"). This sits at score 3 (concrete API names, missing key details) rather than score 4, which requires mostly executable guidance.

3 / 5

Workflow Clarity

No multi-step workflow exists — there is no ordered process for scaffolding a project, creating a page, or hydrating a component, and no validation checkpoints anywhere. The section order (structure → components → routing → performance → data) implies a rough sequence with many gaps, matching the score-2 anchor; score 1 would fit if the content were incoherent, but the topical organization is coherent. No destructive or batch operations exist, so the workflow cap of 3 is not the binding constraint.

2 / 5

Progressive Disclosure

The body (~82 lines) is organized into ten clearly headed sections with all content inline and no external bundle files to navigate; at this size a single well-sectioned file is appropriate. It matches score 4 (good structure, content appropriately placed, minor gaps such as overlapping "Performance Optimization"/"Performance Metrics" sections) but not score 5, since the over-50-line simple-skill exception does not apply and a couple of sections could be consolidated or split out as the skill grows.

4 / 5

Total

12

/

20

Passed

Description

48%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 identifies its niche clearly but is a role statement, not a capability statement: it lists no actions and provides no "use when" trigger guidance. Keywords are domain-accurate but sparse, missing file extensions and common synonyms that would drive reliable triggering.

Suggestions

Replace the role framing with concrete actions, e.g. "Builds Astro sites with file-based routing, content collections, and island-based partial hydration; optimizes static generation and client:* hydration directives."

Add an explicit trigger clause, e.g. "Use when creating or debugging Astro projects, working with .astro components or .astro file extensions, or when the user mentions Astro, islands architecture, or SSG."

Include natural synonyms and file extensions users actually type — ".astro", "Astro components", "SSG", "islands" — to improve trigger coverage.

DimensionReasoningScore

Specificity

The description "Expert in Astro framework with static generation and partial hydration patterns" names the domain and two technical patterns but contains no concrete actions — it states a role rather than what the skill does (no verbs like build, scaffold, or optimize). It is not entirely vague (score 1) because the domain is explicitly named with real Astro concepts, but it falls noticeably below the score-3 anchor, which requires 1-2 concrete actions.

2 / 5

Completeness

The "what" is reasonably clear (Astro expertise covering static generation and partial hydration), but there is no "Use when..." clause or equivalent explicit trigger guidance, capping completeness at 3 per the judging guidelines. It does not reach score 4 because the "when" is entirely absent rather than merely imprecise, and stays above score 2 because the "what" is explicit rather than vague.

3 / 5

Trigger Term Quality

"Astro framework" is a natural term users would say, and "static generation" and "partial hydration" are real Astro concepts, but common variations are missing — no ".astro", "SSG", "islands", "Astro components", or "content collections". This matches the score-3 anchor (some relevant keywords but missing common variations) rather than score 4's good keyword coverage.

3 / 5

Distinctiveness Conflict Risk

"Astro framework" carves out a clear niche that would rarely trigger for unrelated skills (PDFs, git, documents). It does not reach score 5 because the thin trigger guidance leaves overlap risk with closely related frontend skills (general JavaScript/TypeScript, React/Vue/Svelte) where Astro-adjacent terms like "hydration" and "static generation" appear.

4 / 5

Total

12

/

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

Mindrally/skills

Path

astro/SKILL.md

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.