CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

create-canvas-extension

Create or register a canvas extension in the awesome-copilot repository. Use when asked to scaffold a new canvas extension, create its plugin.json, add a reusable extension to one or more plugins, or migrate extension metadata. Extensions are reusable source under extensions/; shippable plugin manifests belong under plugins/.

Quality

86%

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

76%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, actionable skill body with concrete templates and commands. The main gap is the lack of an explicit validation feedback loop for destructive/batch operations, which the rubric treats as material.

Suggestions

Add an explicit feedback loop after the validation command: 'If `npm run plugin:validate` reports errors, fix them and re-run before proceeding to build and website:data.'

In the migration section, add a verify/retry checkpoint after moving and removing manifests, since removing the old manifest is destructive and not easily reversible.

Tighten explanatory sentences such as the materialization rationale to keep the body as lean as its templates.

DimensionReasoningScore

Conciseness

Mostly lean and free of generic concept explanations; content consists of repo-specific conventions, guardrails, and concrete templates. A few explanatory sentences ('Materialization resolves the IDs from the root extensions/ directory...') could be trimmed, but nothing qualifies as padding, so it sits above the anchor-3 'mostly efficient' example.

4 / 5

Actionability

Provides a complete copy-paste-ready plugin.json template with clearly marked placeholders, a concrete directory tree, sorted-path rules, and exact commands (npm run plugin:validate / build / website:data), covering the common cases per anchor 5.

5 / 5

Workflow Clarity

The 8-step workflow and migration steps have a clear sequence and include a validation command, but there is no explicit 'if validation fails, fix and re-run' feedback loop; for a skill that performs destructive moves (migration removes the old manifest) and batch edits to multiple plugin mappings, the rubric's feedback-loop guidance caps this at 3 rather than rewarding an implicit checkpoint.

3 / 5

Progressive Disclosure

The body is well organized into clear sections (Required decisions, Files to create, Workflow, Existing extension migration) with no nested references and no content that clearly belongs in a separate file; absent the one-level-deep external references that define anchor 5, this fits anchor 4's 'good structure, most content appropriately placed'.

4 / 5

Total

16

/

20

Passed

Description

92%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 precise, repo-scoped description that clearly states both capabilities and trigger conditions in third person. Only minor room to grow via synonym/extension coverage in trigger terms.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'Create or register a canvas extension', 'scaffold a new canvas extension', 'create its plugin.json', 'add a reusable extension to one or more plugins', 'migrate extension metadata' — for comprehensive coverage matching the anchor-5 example.

5 / 5

Completeness

Explicitly answers both 'what' ('Create or register a canvas extension in the awesome-copilot repository') and 'when' ('Use when asked to scaffold... create its plugin.json... or migrate extension metadata') with concrete trigger phrases, matching anchor 5.

5 / 5

Trigger Term Quality

Natural phrases users would say are well covered ('scaffold a new canvas extension', 'create its plugin.json', 'add a reusable extension', 'migrate extension metadata'), but synonyms and file-extension variants are not enumerated, so it sits below the comprehensive anchor-5 example.

4 / 5

Distinctiveness Conflict Risk

Scoped to 'the awesome-copilot repository' with a clear niche (canvas extensions, plugin.json, extensions/ vs plugins/), giving distinct triggers and minimal overlap risk with other skills.

5 / 5

Total

19

/

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

frontmatter_unknown_keys

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

Warning

referenced_paths_exist

Referenced path issues: 2 missing

Warning

Total

14

/

16

Passed

Repository

github/awesome-copilot

Path

.github/skills/create-canvas-extension/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.