بنقرة واحدة
fluxwing-validator
Validate uxscii components and screens against schema with interactive menu or direct script calls
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Validate uxscii components and screens against schema with interactive menu or direct script calls
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Create uxscii components with ASCII art and structured metadata when user wants to create, build, or design UI components. Use when working with .uxm files, when user mentions .uxm components, or when creating buttons, inputs, cards, forms, modals, or navigation.
Build complete UI screens by composing multiple uxscii components. Use when working with .uxm files, when user wants to create, scaffold, or build .uxm screens like login, dashboard, profile, settings, or checkout pages.
Import UI screenshots and generate uxscii components automatically using vision analysis. Use when user wants to import, convert, or generate .uxm components from screenshots or images.
Enhance uxscii components from sketch to production fidelity. Use when working with .uxm files marked as "fidelity: sketch" or when user wants to add detail and polish to components.
Add interaction states like hover, focus, disabled, active, error to existing uxscii components. Use when working with .uxm files, when user wants to expand, enhance, or add states to .uxm components.
View detailed information about a specific uxscii component including metadata, states, props, and ASCII preview. Use when working with .uxm files, when user wants to see, view, inspect, or get details about a .uxm component.
| name | fluxwing-validator |
| description | Validate uxscii components and screens against schema with interactive menu or direct script calls |
| version | 1.0.0 |
| author | Fluxwing Team |
| allowed-tools | Read, Bash, AskUserQuestion, TodoWrite |
Validate uxscii components and screens against JSON Schema with interactive workflows.
This skill provides two modes of operation:
User says:
Other skills: Call validator scripts directly (see Technical Reference below)
Use AskUserQuestion to present menu:
What would you like to validate?
Options:
./fluxwing/components/*.uxm./fluxwing/screens/*.uxmBefore running validation, check if directories exist:
# Check for components
test -d ./fluxwing/components
# Check for screens
test -d ./fluxwing/screens
If neither exists:
If option 4 (custom) selected:
Based on user selection:
Option 1: Everything
# Validate components
node {SKILL_ROOT}/validate-batch.js \
"./fluxwing/components/*.uxm" \
"{SKILL_ROOT}/../fluxwing-component-creator/schemas/uxm-component.schema.json" \
--json
# Validate screens
node {SKILL_ROOT}/validate-batch.js \
"./fluxwing/screens/*.uxm" \
"{SKILL_ROOT}/../fluxwing-component-creator/schemas/uxm-component.schema.json" \
--screens \
--json
Option 2: Just components
node {SKILL_ROOT}/validate-batch.js \
"./fluxwing/components/*.uxm" \
"{SKILL_ROOT}/../fluxwing-component-creator/schemas/uxm-component.schema.json" \
--json
Option 3: Just screens
node {SKILL_ROOT}/validate-batch.js \
"./fluxwing/screens/*.uxm" \
"{SKILL_ROOT}/../fluxwing-component-creator/schemas/uxm-component.schema.json" \
--screens \
--json
Option 4: Custom pattern
# Use user-provided pattern
node {SKILL_ROOT}/validate-batch.js \
"${userPattern}" \
"{SKILL_ROOT}/../fluxwing-component-creator/schemas/uxm-component.schema.json" \
--json
Parse JSON output from validator to extract:
total: Total files validatedpassed: Number of valid filesfailed: Number of failed fileswarnings: Total warning countDisplay minimal summary:
✓ 12/14 components valid
✗ 2/14 components failed
⚠ 3 warnings total
If all passed:
✓ All 14 components valid
⚠ 3 warnings
If everything failed:
✗ All 14 components failed
If nothing to validate:
No files found matching pattern
Use AskUserQuestion to ask:
Show error details?
Options:
If user selects "Yes", show full validation output including:
Failed files section:
Failed Files:
✗ broken-button (./fluxwing/components/broken-button.uxm)
Errors: 2
1. must have required property 'fidelity'
2. ASCII template file not found
✗ old-card (./fluxwing/components/old-card.uxm)
Errors: 1
1. invalid version format
Passed with warnings section:
Passed with Warnings:
✓ login-screen (2 warnings)
✓ dashboard (1 warning)
Fully passed section (optional, only if not too many):
Fully Passed:
✓ primary-button
✓ secondary-button
✓ email-input
...
No components or screens found. Create some first!
✓ 0/0 components valid
No files found matching pattern: ${pattern}
Error: Cannot execute validator. Node.js required.
Other skills (component-creator, screen-scaffolder) call validator scripts directly:
Validate single component:
node {SKILL_ROOT}/../fluxwing-validator/validate-component.js \
./fluxwing/components/button.uxm \
{SKILL_ROOT}/schemas/uxm-component.schema.json
Validate single screen:
node {SKILL_ROOT}/../fluxwing-validator/validate-screen.js \
./fluxwing/screens/login-screen.uxm \
{SKILL_ROOT}/schemas/uxm-component.schema.json
Batch validate:
node {SKILL_ROOT}/../fluxwing-validator/validate-batch.js \
"./fluxwing/components/*.uxm" \
{SKILL_ROOT}/schemas/uxm-component.schema.json
Output modes:
--json: Machine-readable JSONExit codes:
0: All files valid1: One or more files invalid2: Missing dependencies or invalid argumentsAvailable scripts:
validate-component.js - Validate single component filevalidate-screen.js - Validate single screen file (with screen-specific checks)validate-batch.js - Validate multiple files with glob patternstest-validator.js - Test component templatestest-screen-validator.js - Test screen templatescd {SKILL_ROOT}
# Run tests
npm test # Test component templates
npm run test:screens # Test screen templates
# Batch validation
npm run validate:components # Validate all components
npm run validate:screens # Validate all screens
npm run validate:all # Validate everything
User: "Validate my components"
Skill:
What would you like to validate?
1. Everything in this project
2. Just components
3. Just screens
4. Let me specify a file or pattern
User selects: Option 1
Skill runs validation and shows:
✓ 12/14 components valid
✗ 2/14 components failed
⚠ 3 warnings total
✓ 2/2 screens valid
⚠ 1 warning
Show error details?
User: "yes"
Skill shows full error details for failed files
User: "Validate my components"
Skill: (presents menu)
User selects: Option 4 (custom pattern)
Skill: "What file or pattern would you like to validate?"
User: "./fluxwing/components/*-button.uxm"
Skill validates and shows:
✓ 3/3 files valid
Show error details?
Parse JSON output:
const result = JSON.parse(bashOutput);
const total = result.total;
const passed = result.passed;
const failed = result.failed;
const warnings = result.warnings;
Summary formatting:
Error detail formatting:
Skill Status: Ready for use Version: 1.0.0