CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

setup-datamodel

Creates Dataverse tables, columns, and relationships for a Power Pages site based on a data model proposal. Supports SPA sites and PAC-downloaded non-SPA sites. Use when the user wants to set up the data model, create database tables, or build the Dataverse schema for their site.

Quality

89%

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

88%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.

An excellent procedural skill body: fully executable commands, a well-sequenced 8-phase workflow with gates, approval checkpoints, and verification steps, and appropriate offloading of bulky JSON templates to one-level-deep references. Remaining issues are minor: some duplicated token-refresh/progress guidance and inconsistent reference-path conventions.

Suggestions

Consolidate token-refresh guidance into one place: Phase 5.1 says to manually re-acquire the token while Phase 6.4 says no manual refresh is needed because dataverse-request.js handles it automatically - state the automatic behavior once and drop the manual step.

Unify reference path conventions (mix of relative "references/...", "${PLUGIN_ROOT}/references/...", and "${PLUGIN_ROOT}/skills/setup-datamodel/references/...") so each cited file resolves identically from the skill's directory.

The Progress Tracking table largely restates the phase Goals/Actions; consider trimming it to task subjects and activeForm values to save tokens.

DimensionReasoningScore

Conciseness

The body is dense and operational (commands, tables, gates) with little explanation of concepts Claude already knows, but token-refresh guidance is repeated in Core Principles, Phase 5.1, Phase 6.4, and Important Notes, and the Progress Tracking table restates the phase descriptions. Not 5 because of this duplicated guidance; not 3 because padding is limited and nearly every section earns its place.

4 / 5

Actionability

Commands are copy-paste ready (e.g., "node "${PLUGIN_ROOT}/scripts/dataverse-request.js" <envUrl> POST "api/data/v9.2/EntityDefinitions" --body '...'"), the Task spawn prompt template, AskUserQuestion option tables, and a complete .datamodel-manifest.json example cover the common cases, with JSON bodies delegated to a real reference file. Not 4 because there are no missing key details for executing the phases.

5 / 5

Workflow Clarity

Eight clearly sequenced phases each with Goal/Actions/Output, explicit validation checkpoints (Phase 5 existence queries with 404/200 branches, Phase 8 per-table verification with the manifest written only after verification, plus a validation hook script), and feedback loops ("Request changes" re-presents the proposal; failures are reported and remaining items continue). This satisfies the batch-operation validation requirement, so the workflow-clarity cap of 3 does not apply.

5 / 5

Progressive Disclosure

The body appropriately delegates JSON templates to references/odata-api-patterns.md and non-SPA analysis to references/non-spa-site-analysis.md, both present in the bundle and one level deep with clear signaling. Not 5 because reference path styles are inconsistent ("references/odata-api-patterns.md" vs "${PLUGIN_ROOT}/skills/setup-datamodel/references/non-spa-site-analysis.md") and several cited files (dataverse-prerequisites.md, datamodel-manifest-schema.md, skill-tracking-reference.md) are not present in this bundle, weakening navigation certainty.

4 / 5

Total

18

/

20

Passed

Description

87%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: third-person, concise, concrete about capabilities, with an explicit and natural "Use when..." trigger clause covering multiple phrasings users would actually say. Only minor improvements are possible, such as acknowledging the review/publish stages or adding a few more synonyms.

DimensionReasoningScore

Specificity

"Creates Dataverse tables, columns, and relationships" plus "Supports SPA sites and PAC-downloaded non-SPA sites" lists several concrete actions, but coverage has minor gaps (review, publish, and verification phases are not mentioned). Not 5 because anchor 5 expects comprehensive coverage of the skill's actions.

4 / 5

Completeness

Explicitly answers both: what ("Creates Dataverse tables, columns, and relationships for a Power Pages site based on a data model proposal") and when ("Use when the user wants to set up the data model, create database tables, or build the Dataverse schema for their site") with concrete trigger phrases, matching the top anchor. Not 4 because the when clause is fully explicit rather than merely present.

5 / 5

Trigger Term Quality

"Use when the user wants to set up the data model, create database tables, or build the Dataverse schema" gives good natural-phrase coverage, but a few user-plausible synonyms (e.g., "Dataverse entities", "create tables for my site") are missing. Not 3 because the included triggers are natural and varied, not just domain jargon.

4 / 5

Distinctiveness Conflict Risk

The Dataverse/Power Pages schema-creation niche is distinct with dedicated trigger phrases ("set up the data model", "build the Dataverse schema"), giving minimal overlap risk with other skills. Not 4 because no closely related skill in this domain shares these triggers.

5 / 5

Total

18

/

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

microsoft/power-platform-skills

Path

plugins/power-pages/skills/setup-datamodel/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.