agentsclimarketplace

Fluxwing enhancer

Skill trabian/fluxwing-skills/skills/fluxwing-enhancer

Claude skills for generating ASCII components and screens for humans to review, and AI to build from.

Install
npx -y skills add trabian/fluxwing-skills --skill fluxwing-enhancer

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 18 stars18 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

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.

SKILL.md

8.4 KB, as published. Nobody here has run it

Fluxwing Enhancer

Progressively enhance uxscii components from sketch to production quality.

Data Location Rules

READ from:

  • ./fluxwing/components/ - User components to enhance
  • {SKILL_ROOT}/../fluxwing-component-creator/templates/state-additions/ - State templates
  • {SKILL_ROOT}/docs/ - Enhancement documentation

LOAD for copy-on-update logic:

  • {SKILL_ROOT}/../shared/docs/copy-versioning.md - Versioning pattern for fidelity enhancements

WRITE to:

  • ./fluxwing/components/ - New versioned components (copy-on-update: {id}-v{N+1})
  • ./fluxwing/screens/ - Updated screen .rendered.md (if applicable)

IMPORTANT: Enhancer creates NEW versions instead of overwriting originals. Each fidelity enhancement creates a new -v{N} copy.

Fidelity Levels

sketch (Fast Scaffold Output)

  • Basic .uxm with minimal metadata
  • May lack .md file or have simple .md
  • Single "default" state
  • Creation time: ~10 seconds

Characteristics:

  • Minimal description
  • Generic tags
  • No examples
  • Basic props only

basic (First Enhancement)

  • Enriched metadata (better description, tags)
  • Simple .md with clean ASCII
  • Default state only
  • Enhancement time: ~30 seconds

Improvements over sketch:

  • Detailed description
  • Specific tags
  • Clean ASCII art
  • Documented variables

detailed (Second Enhancement)

  • Rich metadata with usage examples
  • Polished .md with careful ASCII art
  • 2-3 interaction states (hover, focus)
  • Enhancement time: ~90 seconds

Improvements over basic:

  • Usage examples in metadata
  • Hover + focus states
  • Polished ASCII
  • Props.examples array

production (Final Polish)

  • Complete metadata with accessibility details
  • Publication-quality ASCII
  • All relevant states (hover, focus, disabled, active, error)
  • Full documentation
  • Enhancement time: ~180 seconds

Improvements over detailed:

  • All applicable states
  • Complete accessibility metadata
  • Keyboard shortcuts
  • Publication-quality ASCII
  • Edge case documentation

Your Task

Help users enhance components from current fidelity to target fidelity.

Workflow

Step 1: Inventory Components

Check what components exist and their current fidelity:

ls ./fluxwing/components/*.uxm

For each component, read fidelity level:

python3 -c "import json; print(json.load(open('./fluxwing/components/button.uxm'))['metadata'].get('fidelity', 'detailed'))"

List components by fidelity:

  • sketch: [component-ids]
  • basic: [component-ids]
  • detailed: [component-ids]
  • production: [component-ids]

Step 2: Determine Target Fidelity

Ask user or use defaults:

User specifies:

  • "Enhance to basic"
  • "Upgrade to detailed"
  • "Make production-ready"

Auto-select (if not specified):

  • sketch → detailed (most common, best balance)
  • basic → detailed
  • detailed → production

Step 3: Spawn Enhancement Agents

If enhancing multiple components (3+):

  • Spawn agents in parallel (one per component)
  • Each agent enhances independently
  • Wait for all to complete

If enhancing single component:

  • Spawn single agent
  • Focus on quality

Enhancement Agent Prompt:

Task({
  subagent_type: "general-purpose",
  model: "sonnet", // Quality matters for enhancement
  description: "Enhance ${componentId} to ${targetFidelity} (copy)",
  prompt: `Enhance uxscii component from ${currentFidelity} to ${targetFidelity} using copy-on-update pattern.

Component: ${componentId}
Current fidelity: ${currentFidelity}
Target fidelity: ${targetFidelity}

COPY-ON-UPDATE MODE:
- Read existing component
- Find highest version (check ${componentId}-v2, -v3, etc.)
- Create NEW versioned copy: ${componentId}-v{N+1}
- DO NOT overwrite original
- Preserve metadata.created, update metadata.modified

Your task:
1. Read ./fluxwing/components/${componentId}.uxm
2. Read ./fluxwing/components/${componentId}.md (if exists)
3. Load copy-versioning docs: {SKILL_ROOT}/../shared/docs/copy-versioning.md
4. Find highest version of ${componentId} (original is v1)
5. Calculate next version number: v{N+1}
6. Load enhancement patterns: {SKILL_ROOT}/docs/enhancement-patterns.md
7. Load state templates: {SKILL_ROOT}/../fluxwing-component-creator/templates/state-additions/

8. Create versioned copy with enhancements:

   **Update version metadata:**
   - id: "${componentId}-v{N+1}" (add -v{N+1} suffix)
   - version: Increment minor (e.g., 1.0.0 → 1.1.0)
   - metadata.created: PRESERVE from source
   - metadata.modified: SET to current timestamp
   - metadata.fidelity: UPDATE to "${targetFidelity}"

   ${targetFidelity === 'basic' ? `
   For "basic" fidelity:
   - Improve metadata.description (1-2 sentences, specific)
   - Add specific tags (not just generic type)
   - Create/improve .md with clean ASCII art
   - Keep single default state
   - Update fidelity field to "basic"
   ` : ''}

   ${targetFidelity === 'detailed' ? `
   For "detailed" fidelity:
   - All "basic" enhancements (if not already done)
   - Add hover state (use {SKILL_ROOT}/../fluxwing-component-creator/templates/state-additions/hover.json)
   - Add focus state (use {SKILL_ROOT}/../fluxwing-component-creator/templates/state-additions/focus.json)
   - Polish ASCII art (smooth alignment, consistent spacing)
   - Add props.examples array (2-3 usage examples)
   - Update fidelity field to "detailed"
   ` : ''}

   ${targetFidelity === 'production' ? `
   For "production" fidelity:
   - All "detailed" enhancements (if not already done)
   - Add disabled state (if applicable for component type)
   - Add error state (if applicable for component type)
   - Complete accessibility metadata:
     - aria-label templates
     - keyboard shortcuts
     - screen reader descriptions
   - Add behavior.keyboardShortcuts (if interactive)
   - Publication-quality ASCII (pixel-perfect alignment)
   - Document edge cases in description
   - Update fidelity field to "production"
   ` : ''}

9. Save NEW versioned files:
   - ./fluxwing/components/${componentId}-v{N+1}.uxm
   - ./fluxwing/components/${componentId}-v{N+1}.md
   - DO NOT overwrite original ${componentId}.uxm

10. Verify JSON is valid
11. Return enhancement summary with version info

Target time: ${targetTime[targetFidelity]} seconds

Return format:
"Enhanced ${componentId} → ${componentId}-v{N+1}: ${currentFidelity} → ${targetFidelity}
- Version: {old version} → {new version}
- Added X states
- Improved metadata
- Polished ASCII
- Original preserved at ${componentId}.uxm"
`
})

Step 4: Regenerate Screen (If Applicable)

If components belong to a screen, regenerate .rendered.md:

# Find which screen uses this component
grep -l "${componentId}" ./fluxwing/screens/*.uxm

If found, respawn composer to regenerate .rendered.md with enhanced components.

Step 5: Report Results

# Enhancement Complete ✓

## Components Enhanced

${enhancedComponents.map(c => `
### ${c.id}
- Before: ${c.oldFidelity}
- After: ${c.newFidelity}
- Time: ${c.time}s
- Changes:
  - ${c.changes.join('\n  - ')}
`).join('\n')}

## Total Time: ${totalTime}s

## Screens Updated
${updatedScreens.length > 0 ? updatedScreens.map(s => `- ${s}.rendered.md regenerated`).join('\n') : 'None'}

## Next Steps
1. Review enhanced components: \`ls ./fluxwing/components/\`
2. View updated screen: \`cat ./fluxwing/screens/${screenName}.rendered.md\`
3. Customize as needed

Example Usage

User: "Enhance all components in banking-chat to detailed"

Enhancer:

  1. Finds 6 sketch components
  2. Spawns 6 enhancement agents (parallel)
  3. Each agent: sketch → detailed (~90s)
  4. Regenerates banking-chat.rendered.md
  5. Total time: ~120 seconds

User: "Make submit-button production-ready"

Enhancer:

  1. Finds submit-button (detailed fidelity)
  2. Spawns 1 enhancement agent
  3. Agent: detailed → production (~180s)
  4. Updates screen if applicable
  5. Total time: ~180 seconds

Success Criteria

  • ✓ Components upgraded to target fidelity
  • ✓ All states added as specified
  • ✓ ASCII art improved
  • ✓ Metadata enriched
  • ✓ Screen .rendered.md regenerated (if applicable)
  • ✓ All files validate against schema

You are building a progressive enhancement system for maximum flexibility!

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.