CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

geist

Expert guidance for Geist, Vercel's default typography system and font family for precise Next.js interfaces. Use when configuring Geist Sans, Geist Mono, or Geist Pixel, setting up font imports, or applying Vercel typography and aesthetic guidance.

61

Quality

77%

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 ./plugins/vercel/skills/geist/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%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-structured, largely executable reference for installing and applying Geist in Next.js, with useful typography direction and anti-patterns. Its main weakness is token efficiency: a redundant 'Key Points' recap, a content-free 'Subset Configuration' section, and tabulated facts Claude already knows could be trimmed or split into reference files.

Suggestions

Remove the 'Key Points' section — all seven bullets restate content already covered above, and the same lines could be deleted with no loss of information.

Either replace the 'Subset Configuration' section with actual executable configuration or delete it; an import statement followed by two comments and no code teaches nothing.

Move the font-weight table and Geist Pixel variant table into a reference file (e.g., references/fonts.md) to keep SKILL.md a lean overview, and add a Geist Pixel import example so its usage is actionable.

DimensionReasoningScore

Conciseness

The body is mostly efficient and code-first, but includes unnecessary material: the 'Key Points' section recapitulates facts already stated (import paths, CSS variables, ligatures), 'Subset Configuration' is an empty code block with only comments, and the 9-row weight table adds little Claude cannot infer. Not score 2 because padding is limited to a few sections rather than pervasive.

3 / 5

Actionability

Mostly executable guidance: copy-paste-ready app/layout.tsx, tailwind.config.ts, CSS variable usage, and concrete type recipes, plus exact ligature settings for VS Code and CSS. Minor gaps — no Pages Router example and no import code for Geist Pixel despite documenting its variants — keep it below fully copy-paste-complete coverage.

4 / 5

Workflow Clarity

This is a single-purpose configuration skill and the path is unambiguous and ordered (install via npm, wire fonts into the root layout, extend Tailwind, use the utility classes), with no destructive or batch operations requiring validation checkpoints. It stays at 4 rather than 5 because multiple scenarios (App Router, Tailwind, subsets) are presented side-by-side without an explicit ordered flow or checkpoints.

4 / 5

Progressive Disclosure

No bundle files exist, so everything is inline in a single SKILL.md with well-organized section headers and a flat, navigable structure. Content is mostly appropriately placed, though separable reference material (the weight table, Geist Pixel variant table, and typography direction section) is inlined rather than split into references, which is a minor organization gap.

4 / 5

Total

15

/

20

Passed

Description

78%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 description with an explicit third-person 'what' plus a well-formed 'Use when' clause covering configuration, imports, and typography guidance. It is distinct and specific, with only minor keyword coverage gaps (font weights, ligatures) and a slightly vague 'aesthetic guidance' action.

DimensionReasoningScore

Specificity

The description lists several concrete actions — 'configuring Geist Sans, Geist Mono, or Geist Pixel', 'setting up font imports', 'applying Vercel typography and aesthetic guidance' — though the last is soft and capabilities like weights, ligatures, and subsets go unmentioned, keeping it below the comprehensive anchor.

4 / 5

Completeness

It answers both questions: the 'what' ('Expert guidance for Geist, Vercel's default typography system and font family') and an explicit 'Use when' clause with concrete triggers. It falls short of anchor 5 because the 'what' is guidance-flavored rather than enumerating the concrete actions the skill performs.

4 / 5

Trigger Term Quality

Natural terms users would say are present ('Geist Sans', 'Geist Mono', 'Geist Pixel', 'font imports', 'typography', 'Next.js'), but a few common variations like 'font family', 'font weights', or 'ligatures' are missing from the trigger set.

4 / 5

Distinctiveness Conflict Risk

Geist is a distinct named product and the description triggers on family-specific terms (Geist Sans/Mono/Pixel, Vercel typography), giving it a clear niche with minimal conflict risk against other font or CSS skills.

5 / 5

Total

17

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

Total

14

/

16

Passed

Repository

openai/plugins

Path

plugins/vercel/skills/geist/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.