CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

portaljs-new-portal

Scaffold a new PortalJS data portal from a brief. Copies the canonical template from examples/portaljs-catalog and substitutes project tokens. Use when starting a brand-new data portal project from scratch.

Quality

82%

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

81%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, token-efficient command body with an explicit validated workflow, concrete commands and file paths, a useful error table, and a verified one-level-deep reference file. The main gaps are minor: reliance on an external canonical doc for the full executable detail and slight duplication between the error table and the reference. All dimensions score 4-5, so no suggestions are required.

DimensionReasoningScore

Conciseness

The body is dense and purposeful with no explanations of concepts Claude already knows (e.g., "never `next build` here — it would corrupt a running dev server's `.next/` directory"); minor redundancy — the workflow link repeated in Instructions and Resources, and the Error Handling table overlapping the reference's Troubleshooting — keeps it below anchor 5's every-token-earns-its-place.

4 / 5

Actionability

Concrete commands and paths appear throughout ("perl -pi, escaping /, \, and &", "npm run i18n:check and npx tsc --noEmit", "lib/datasets.ts", "next.config.js"); it falls short of anchor 5 because the fully executable workflow and the actual perl substitution command are delegated to the remote canonical doc rather than given inline.

4 / 5

Workflow Clarity

An 11-step numbered sequence with explicit validation (step 10: "Verify with npm run i18n:check and npx tsc --noEmit"), feedback loops ("Print the log and fix before reporting success — never report success with a failing type check"), a symptom/cause/fix error table, and a confirmation gate before overwriting a destination — matching anchor 5's explicit validation steps with error recovery.

5 / 5

Progressive Disclosure

The bundle reference references/reference.md is real, one level deep, and clearly signaled ("Template and token reference"); it is not 5 because the primary executable workflow is delegated to an external URL rather than a bundled file, and the Error Handling table partially duplicates the reference's Troubleshooting section, leaving minor organization gaps.

4 / 5

Total

17

/

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 in third-person voice that pairs concrete capabilities with an explicit 'Use when' clause and a clearly bounded niche. Trigger coverage and capability breadth are good but could add common phrasings like 'create' or 'build' a portal and mention the interview/verification steps. No suggestions needed given all dimensions score 4-5.

DimensionReasoningScore

Specificity

"Scaffold a new PortalJS data portal from a brief", "Copies the canonical template from examples/portaljs-catalog", and "substitutes project tokens" are three concrete actions, matching anchor 4; it is not 5 because the interview, UI language setup, dataset seeding, and verification steps in the body are omitted (more than minor gaps), and not 3 because it goes beyond the 1-2 actions of that anchor.

4 / 5

Completeness

Both are explicit: the what ("Scaffold a new PortalJS data portal... Copies the canonical template... substitutes project tokens") and the when ("Use when starting a brand-new data portal project from scratch"). The single when-clause is less specific than anchor 5's multiple concrete trigger phrases, but well above anchor 3 where when is missing or implied.

4 / 5

Trigger Term Quality

Natural terms like "new PortalJS data portal", "data portal", and "project from scratch" cover what a user would say, but common variants such as "create", "build", or "set up a portal" are missing, so it fits anchor 4 rather than anchor 5's comprehensive synonym coverage.

4 / 5

Distinctiveness Conflict Risk

The PortalJS scaffolding niche ("Scaffold a new PortalJS data portal") with its distinct new-project trigger ("starting a brand-new data portal project from scratch") has minimal overlap risk with sibling skills like portaljs-add-dataset or portaljs-add-chart, matching anchor 5's clear niche with distinct triggers.

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

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository

datopian/portaljs

Path

skills/portaljs-new-portal/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.