CtrlK
BlogDocsLog inGet started
Tessl Logo

nextjs-static-shells

Static-first Next.js 16 architecture patterns: cached shells with dynamic slots, provider islands, 'use cache' boundaries, and link preloading strategy. Use when building or refactoring Next.js routes to maximize static rendering, implementing 'use cache' with dynamic personalization, splitting entry vs static renderers, scoping client providers, or tuning prefetch behavior. Triggers on 'static shell', 'use cache pattern', 'dynamic slots', 'provider island', 'prefetch strategy', 'static first', 'cache boundary', 'route goes dynamic unexpectedly', or any Next.js architecture work involving mixed static/dynamic rendering.

72

Quality

91%

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

SKILL.md
Quality
Evals
Security

Quality

Content

82%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 content is a dense, actionable Next.js 16 static-shell reference with executable examples throughout and a clear implementation sequence plus acceptance checklist. Its main gaps are minor redundancy in the failure-modes section and a monolithic single-file structure that could benefit from one-level-deep reference files.

Suggestions

Move the detailed migration table and 'unstable_cache -> use cache' walkthrough into a MIGRATION.md reference file, keeping only a one-line pointer inline.

Collapse the 'Common Failure Modes + Fixes' section into cross-references to the earlier pattern sections, or shorten each entry to a one-line cause->fix pointer, to remove the redundancy.

Add an explicit validation checkpoint in the 'Implementation Sequence' (e.g., after splitting entry/static, verify the shell still renders without user-specific data before proceeding).

DimensionReasoningScore

Conciseness

The body is mostly efficient, concrete pattern reference with little concept-explanation fluff, but the 'Common Failure Modes + Fixes' section restates causes/fixes already covered in earlier sections and a few explanatory bullets could be trimmed.

4 / 5

Actionability

Abundant copy-paste-ready, executable TSX examples covering entry/static/slot splits, 'use cache' setup, cacheLife/cacheTag, invalidation, RSC boundaries, Suspense, provider islands, data fetching, links, and migration — comprehensively covering common cases.

5 / 5

Workflow Clarity

An 'Implementation Sequence' gives 8 numbered steps ending with a measure/verify step, and a 'PR Acceptance Criteria' checklist provides verification, but there are no explicit validate-then-proceed checkpoints or error-recovery feedback loops within the workflow itself.

4 / 5

Progressive Disclosure

Well-organized single-file reference with clear section headers, decision matrices, and checklists; however it is ~580 lines all inline with no reference/script bundle files (only an unreferenced small-logo.svg), so content like the migration guide and detailed cache mechanics could be split out.

4 / 5

Total

17

/

20

Passed

Description

100%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 is exemplary: it states concrete capabilities, gives an explicit 'Use when' clause, and lists natural trigger phrases including synonyms and a failure-mode phrase. It is clearly distinguishable from generic skills and uses third person throughout.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'building or refactoring Next.js routes', 'implementing use cache with dynamic personalization', 'splitting entry vs static renderers', 'scoping client providers', 'tuning prefetch behavior' — giving comprehensive coverage of the skill's capabilities.

5 / 5

Completeness

Explicitly answers both 'what' ('Static-first Next.js 16 architecture patterns: cached shells with dynamic slots, provider islands, use cache boundaries, and link preloading strategy') and 'when' (a 'Use when...' clause plus a 'Triggers on...' list with concrete phrases).

5 / 5

Trigger Term Quality

Provides comprehensive natural trigger phrases a Next.js developer would say, including synonyms ('static shell'/'static first', 'use cache pattern'/'cache boundary') and a concrete failure phrase 'route goes dynamic unexpectedly'.

5 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (Next.js 16 static-first architecture) with highly specific triggers unlikely to fire for unrelated skills, minimizing conflict risk.

5 / 5

Total

20

/

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.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (593 lines); consider splitting into references/ and linking

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository
joelhooks/joelclaw
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.