CtrlK
BlogDocsLog inGet started
Tessl Logo

bun-nextjs

This skill should be used when the user asks about "Next.js with Bun", "Bun and Next", "running Next.js on Bun", "Next.js development with Bun", "create-next-app with Bun", or building Next.js applications using Bun as the runtime.

59

Quality

68%

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/bun/skills/bun-nextjs/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%Weight 40%Scale 1-3

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is highly actionable with executable, copy-paste-ready code across the full Next.js-on-Bun lifecycle, but it is mildly repetitive, lacks validation checkpoints around destructive DB operations, and—most importantly—points to reference files that do not exist.

Suggestions

Create the referenced references/app-router.md and references/caching.md (or remove the "When to Load References" section) so progressive-disclosure pointers resolve to real files.

Add an explicit validation/verification checkpoint for destructive operations, e.g., verify affected rows or re-query after deleteUser/db.run before calling revalidatePath, so workflow_clarity can reach 3.

De-duplicate the repeated SQLite open/query/close pattern—extract it once and reference it from Server Components, API Routes, and Server Actions to tighten conciseness.

DimensionReasoningScore

Conciseness

The body is code-heavy and largely avoids explaining concepts Claude already knows, but the same SQLite open/query/close pattern ("const db = new Database('data.sqlite')" ... "db.close()") is repeated near-verbatim across Server Components, API Routes, and Server Actions, and the package.json scripts appear twice (with and without --bun). Mostly efficient but could be tightened. Not a 3 due to this repetition; not a 1 because it is not padded with conceptual exposition.

2 / 3

Actionability

Concrete, copy-paste-ready examples span package.json, next.config.js, server components, API routes, server actions, middleware, a Dockerfile, and env usage (e.g., "bunx create-next-app@latest my-app", "bun --bun next dev", "const db = new Database('data.sqlite')"). Not a 2 because the code is executable and specific rather than pseudocode; the only caveat is that referenced reference files do not exist, but the inline guidance itself is fully actionable.

3 / 3

Workflow Clarity

The Quick Start and Deployment sections give a clear sequence (create, install, dev, build, start), and a Common Errors table aids recovery, but destructive operations such as "DELETE FROM users WHERE id = ?" in deleteUser and the Docker build have no explicit validation or verification checkpoints. Per the rubric, missing validation in destructive/batch operations caps this at 2. Not a 3 because no validate-then-proceed feedback loops are shown; not a 1 because sequences are present and legible.

2 / 3

Progressive Disclosure

Sections are well-organized and the "When to Load References" block clearly signals one-level-deep pointers ("Load references/app-router.md when ..."), but the referenced files do not exist — the references/ directory is absent, so both app-router.md and caching.md are broken links — and the ~310-line body keeps material inline (full route/action/Docker examples) that could be split out. Not a 3 because the references are non-functional and content is not appropriately split; not a 1 because organization is decent and references are one level deep rather than nested 2+ levels.

2 / 3

Total

9

/

12

Passed

Description

72%Weight 40%Scale 1-3

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 strong, natural trigger-term coverage and a distinct niche, but leads with trigger phrases rather than a concrete capability statement, leaving the "what does this do" side implied rather than explicit.

Suggestions

Lead with a concise capability clause before the triggers, e.g. "Run, build, and deploy Next.js applications using Bun as the runtime, and use Bun APIs (SQLite, file I/O) in server components and API routes. Use when ..." to clearly answer the "what".

Expand the capability list beyond running/building to cover what the body actually teaches (next.config for Bun, bun:sqlite in server code, Docker/Vercel deployment) so specificity reaches the concrete-actions anchor.

DimensionReasoningScore

Specificity

Quotes like "building Next.js applications using Bun as the runtime", "running Next.js on Bun", and "create-next-app with Bun" name the domain and several actions, but the description is mostly a list of trigger phrases rather than a comprehensive enumeration of concrete capabilities (e.g., configuring next.config, using Bun SQLite APIs, deploying). Not a 3 because it lacks multiple distinct concrete actions; not a 1 because it does name specific actions beyond a vague domain.

2 / 3

Completeness

The "when" is explicit ("This skill should be used when the user asks about ... or building Next.js applications using Bun as the runtime"), but the "what" is only implied through those trigger phrases rather than stated as a concrete capability list, unlike the anchor-3 example which leads with "Extract text and tables from PDF files, fill forms, merge documents" before the "Use when" clause. Not a 3 because the what is not clearly and separately stated; not a 1 because the explicit when guidance and an implied what are both present.

2 / 3

Trigger Term Quality

Phrases such as "Next.js with Bun", "Bun and Next", "running Next.js on Bun", "Next.js development with Bun", and "create-next-app with Bun" give good coverage of the natural wordings a user would actually say. Not a 2 because the variations are broad and natural, not just a single keyword; not below 3 because no common variation is clearly missing.

3 / 3

Distinctiveness Conflict Risk

The intersection of "Next.js" and "Bun as the runtime" (e.g., "building Next.js applications using Bun as the runtime") is a clear niche with distinct triggers unlikely to fire for unrelated skills. Not a 2 because the Bun-runtime qualifier makes it specific rather than merely overlapping with a generic Next.js skill; not below 3 because the triggers are tightly scoped to this combination.

3 / 3

Total

10

/

12

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.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

referenced_paths_exist

Referenced path issues: 2 missing

Warning

Total

15

/

16

Passed

Repository
secondsky/claude-skills
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.