Back to list
umbraco

umbraco-skill-validator

by umbraco

1🍴 1📅 Jan 21, 2026

SKILL.md


Skill Content Validator

Validates all SKILL.md files in the repository for broken links, missing references, and invalid paths.

What This Skill Does

  1. Runs deterministic validation script - Fast, consistent checking of all links
  2. Generates structured report - JSON output with all issues found
  3. Spawns fixer subagent - AI-powered fix suggestions for issues
  4. Presents fix plan - Diff-style changes for approval
  5. Executes approved fixes - Only applies changes user approves

Validation Checks

Check TypeDescription
External URLsHTTP HEAD request to verify accessibility
Skill referencesVerify referenced skills exist (e.g., umbraco-dashboard)
Internal linksCheck relative paths resolve (e.g., patterns/foo.md)
File pathsVerify Umbraco-CMS paths via GitHub API if not local
Import pathsCheck @umbraco-cms/backoffice/* imports are valid

Running the Validator

Via Slash Command

/validate-skills

Via Script Directly (CI/CD)

cd .claude/skills/umbraco-skill-validator/scripts
npm install
npm run validate

Report Format

The script outputs JSON that gets formatted as:

# Skill Validation Report

## Summary
- Skills scanned: 25
- Issues found: 3
- Auto-fixable: 2

## Issues by Skill

### `umbraco-dashboard`
| Line | Type | Issue | Status |
|------|------|-------|--------|
| 45 | Broken URL | [example-broken-url] returns 404 | :x: |

### `umbraco-tree`
| Line | Type | Issue | Status |
|------|------|-------|--------|
| 72 | Missing skill | [example-missing-skill] not found | :x: |

Fix Plan Format

When issues are found, the fixer subagent generates:

# Fix Plan

## Fix 1: Update broken URL
**File:** plugins/.../umbraco-dashboard/SKILL.md
**Line:** 45
**Action:** Replace with current documentation URL

- [Dashboard docs][old-url]
+ [Dashboard docs][new-url]

## Approval
- [ ] Fix 1: Update broken URL
- [ ] Fix 2: ...

External URLs

https://docs.umbraco.com/...
https://github.com/umbraco/...

Skill References

`umbraco-dashboard`
`umbraco-workspace`
[Pattern Name](patterns/pattern-name.md)
[Example](examples/example-name/)

File Paths

/Umbraco-CMS/src/Umbraco.Web.UI.Client/...
src/packages/core/...

Import Paths (in code blocks)

import { ... } from '@umbraco-cms/backoffice/notification';

Workflow Instructions

When this skill is invoked:

  1. Run the validation script

    cd .claude/skills/umbraco-skill-validator/scripts
    npx tsx validate-links.ts
    
  2. Read the JSON output from stdout or validation-report.json

  3. Format as markdown report using the template above

  4. If issues found, spawn the skill-content-fixer agent:

    • Pass the JSON report as context
    • Request fix suggestions with diffs
  5. Present fix plan to user with AskUserQuestion

  6. Execute only approved fixes using Edit tool

Edge Cases

  • Rate limiting: Script batches URL checks with 100ms delays
  • Redirects: Reported as warnings with new URL suggestion
  • Missing Umbraco-CMS: Falls back to GitHub API
  • Timeouts: 5 second timeout per URL request
  • Large repos: Processes files in batches of 10

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon