CtrlK
BlogDocsLog inGet started
Tessl Logo

app-router

This skill should be used when the user asks to "create a Next.js route", "add a page", "set up layouts", "implement loading states", "add error boundaries", "organize routes", "create dynamic routes", or needs guidance on Next.js App Router file conventions and routing patterns.

80

1.39x
Quality

71%

Does it follow best practices?

Impact

96%

1.39x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./.trae/skills/app-router/SKILL.md
SKILL.md
Quality
Evals
Security

Evaluation results

100%

45%

Developer Documentation Portal — Versioned Docs with Search

Dynamic route segments and async params

Criteria
Without context
With context

Dynamic folder naming

100%

100%

Params awaited

0%

100%

Params typed as Promise

0%

100%

searchParams awaited

0%

100%

searchParams typed as Promise

0%

100%

Catch-all or optional catch-all

100%

100%

generateStaticParams used

100%

100%

generateMetadata function

50%

100%

Metadata type imported

100%

100%

page.tsx exports default

100%

100%

Async page component

100%

100%

90%

18%

Product Catalog — Resilient Browsing Experience

Loading/error states and route organization

Criteria
Without context
With context

loading.tsx present

100%

100%

error.tsx client directive

100%

100%

error.tsx receives error prop

100%

100%

error.tsx receives reset prop

100%

100%

not-found.tsx present

100%

100%

notFound() from next/navigation

100%

100%

Route group folder naming

0%

100%

Private folder naming

100%

100%

Route group layout

0%

100%

error.tsx does not catch layout errors note

0%

0%

Correct directory depth

100%

100%

100%

20%

Analytics Dashboard — Multi-Panel Layout with Activity Feed

Root layout, parallel routes, and templates

Criteria
Without context
With context

Root layout has html tag

100%

100%

Root layout has body tag

100%

100%

Root layout no use client

100%

100%

Parallel slot folders

100%

100%

Layout accepts slot props

100%

100%

default.tsx in each slot

100%

100%

template.tsx used

0%

100%

No layout-to-page prop passing

100%

100%

Shared data pattern

100%

100%

Nested layout

100%

100%

Slot loading states

0%

100%

Repository
Lingjie-chen/MT5
Evaluated
Agent
Claude Code
Model
Claude Sonnet 4.6

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.