Agent skill

UI Upstream Sync

by fulldotdev in fulldotdev/ui

Audit and update the existing Fulldev Astro UI registry against current data-slot and shadcn/ui Base UI Vega.

MITAuto-check passedFrontend & Design

Install UI Upstream Sync

skills CLI
$ npx skills add fulldotdev/ui --skill ui-upstream-sync -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install fulldotdev/ui ui-upstream-sync --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/fulldotdev/ui.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/ui-upstream-sync .claude/skills/ui-upstream-sync && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ui-upstream-sync
GitHub stars
610
Token cost
~1.3k tokens
SKILL.md length
687 words
Files
1
Skills in repo
2
Repo updated
First seen
Licence
MIT

At a glance

Audit and update the existing Fulldev Astro UI registry against current data-slot and shadcn/ui Base UI Vega.

  • Works in 5 steps: Read AGENTS.md, inspect git status, and… → Inventory existing component families… → Record package and lockfile versions,… → …
  • Periodic whole-library upstream parity passes
  • SKILL.md covers Invariants, Prepare the audit, Pass 1: data-slot and Pass 2: shadcn/ui, plus 2 more sections
  • Calls pnpm and git

What it does

UI Upstream Sync is an agent skill from fulldotdev/ui. Audit and update the existing Fulldev Astro UI registry against current data-slot and shadcn/ui Base UI Vega. Use for periodic whole-library upstream parity passes, not ordinary single-component edits.

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Frontend & Design, covering Static sites and blogs and Design systems. It works with Astro, shadcn/ui and Tailwind CSS. The repository describes itself as: Components and Blocks for building content-driven Astro websites. The licence is MIT.

When your agent uses it

  • Periodic whole-library upstream parity passes
  • Not ordinary single-component edits

Example prompts

  • “/ui-upstream-sync”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Read AGENTS.md, inspect git status, and preserve unrelated work.
  2. Inventory existing component families from src/components/ui, their docs pages, and their registry.json items.
  3. Record package and lockfile versions, every @data-slot/* import, and the pre-audit generated-file diff.
  4. Maintain a component matrix with data-slot, shadcn, source, registry, browser, and notes columns. Mark every existing family, including…
  5. If the pass is large enough to delegate, assign disjoint component ranges and state file ownership before work starts. Keep one owner for…

What it can do on your machine

Read from SKILL.md and the folder at commit 5e92dd6. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pnpm
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use pnpm and git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

UI Upstream Sync loads about 1.3k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 687 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~55
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from fulldotdev/ui at commit 5e92dd6, republished under its MIT licence (© fulldotdev). 687 words, ~1,292 tokens.

Download SKILL.mdSave it as .claude/skills/ui-upstream-sync/SKILL.md (or your agent's skills folder).
name
ui-upstream-sync
description
Audit and update the existing Fulldev Astro UI registry against current data-slot and shadcn/ui Base UI Vega. Use for periodic whole-library upstream parity passes, not ordinary single-component edits.

Fulldev UI upstream sync

Use this skill only in the Fulldev UI registry source. The goal is a deliberate upstream parity pass across components that already exist in this repo.

Invariants

  • Audit data-slot first, then shadcn/ui. Finish each pass sequentially so the source of every change stays clear.
  • Do not add upstream components or subcomponents that this library does not already have unless the user asks.
  • Treat Base UI with the Vega style as the shadcn comparison baseline. Do not accept the current CLI default if it differs.
  • Preserve Astro APIs, data-slot behavior, forwarded props, state attributes, keyboard behavior, and accessibility.
  • Port useful HTML, classes, variants, and public defaults. Do not port React-only state, refs, hooks, or composition that conflicts with data-slot.
  • Do not copy theme-dependent classes unless this repo defines the required token. For example, font-heading is a no-op without a heading-font mapping.
  • Treat registry.json as source and public/r as generated output. Never hand-edit generated registry files.

Prepare the audit

  1. Read AGENTS.md, inspect git status, and preserve unrelated work.
  2. Inventory existing component families from src/components/ui, their docs pages, and their registry.json items.
  3. Record package and lockfile versions, every @data-slot/* import, and the pre-audit generated-file diff.
  4. Maintain a component matrix with data-slot, shadcn, source, registry, browser, and notes columns. Mark every existing family, including unchanged ones.
  5. If the pass is large enough to delegate, assign disjoint component ranges and state file ownership before work starts. Keep one owner for shared registry files.

Pass 1: data-slot

  1. Resolve the installed data-slot versions from the manifest and lockfile.
  2. Check current official package metadata, upstream source, releases, docs, and repository Markdown. A matching package version does not prove local wrappers are current.
  3. Audit every existing family that uses data-slot. Compare primitive APIs, wrapper defaults, forwarded props, event and dismissal behavior, state attributes, selectors, orientation and disabled data, and docs usage.
  4. Distinguish these outcomes in the matrix:
    • package update required
    • wrapper update required with no package bump
    • docs or example mismatch
    • reviewed and current
  5. Apply the smallest source changes that restore current behavior. Verify unusual Tailwind data selectors compile instead of assuming they work.
Show full SKILL.md (344 more words)Show less

Pass 2: shadcn/ui

  1. Create a throwaway project outside the repo with mktemp -d.

  2. Inspect current CLI help, then create a Vite project using Base UI and the Vega preset. The last known form is:

    bash
    pnpm dlx shadcn@latest create --template vite --base base --preset vega
    pnpm dlx shadcn@latest add --all
  3. Use pnpm dlx shadcn@latest docs <component> for current official component docs.

  4. Intersect the scratch project's components with this repo's existing families. Do not expand the audit to missing components.

  5. Compare each matching family sequentially. Check markup order, class names, variants, sizes, default props, data attributes, focus and validation states, icon treatment, RTL behavior, and accessibility.

  6. Adapt relevant differences to Astro and data-slot. Record intentional differences instead of forcing literal parity.

Registry and generated output

  1. Update registry.json when installable source, npm dependencies, registry dependencies, file paths, or metadata changed.
  2. Check source imports against both dependency lists. Do not rely on the old manifest being complete.
  3. Before regeneration, capture which source and registry items changed. After pnpm registry:build, separate:
    • outputs caused by this audit
    • previously stale generated outputs refreshed by the build
  4. Report that distinction. A large JSON diff must never obscure a small source diff.
  5. If the full registry build references missing source files, do not invent files or hand-edit output. Report or resolve the source-of-truth problem before calling the release ready.

Validation and handoff

  1. Format settled source and manifest changes.
  2. Follow the release validation order in AGENTS.md.
  3. Run the dev server and inspect every changed component page in a real browser. Exercise relevant keyboard, pointer, open and close, selection, disabled, and RTL behavior. Check the browser console and server logs.
  4. Use the Otis sharing instruction in AGENTS.md when the user needs tailnet access.
  5. Give a concise per-family report. For each changed family, name the source change, whether it came from data-slot, shadcn, registry metadata, or more than one, and include its preview URL.
  6. Also list reviewed unchanged families, validation results, intentional differences, generated-only drift, and release blockers.

© fulldotdev, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/ui-upstream-sync of fulldotdev/ui.

Open the folder on GitHubat commit 5e92dd6

Compare with similar skills

UI Upstream Sync next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

UI Upstream Sync compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
UI Upstream Sync this skillfulldotdev/ui610—~1.3kAutomated safety check: PassMIT
UI StylingOhh-889/skyroc79513 repos~2.5kAutomated safety check: PassMIT
Creative Tim UI Blockscreativetimofficial/ui12k—~2.1kAutomated safety check: NotesMIT
Kill AI Slopyetone/kill-ai-slop1.3k—~1.4kAutomated safety check: PassApache-2.0
Cosscrafter-station/petdex4.2k—~1.4kAutomated safety check: PassMIT
Ss Learnbitjaru/styleseed970—~1.3kAutomated safety check: PassMIT

Similar skills

  • UI Styling

    Ohh-889/skyroc

    Create beautiful, accessible user interfaces with shadcn/ui components (built on Radix UI + Tailwind), Tailwind CSS utility-first styling, and canvas-based visual designs.

    795 GitHub starsUsed in 13 repos~2.5k tokens
    Frontend & DesignAuto-check passed
  • Creative Tim UI Blocks

    creativetimofficial/ui

    Helps install, generate and review Creative Tim UI blocks: shadcn/ui-based React and Tailwind sections that follow a restrained, production-minded design philosophy.

    12k GitHub stars~2.1k tokensUpdated 6 mo ago
    Frontend & DesignAuto-check: notes
  • Kill AI Slop

    yetone/kill-ai-slop

    Find and remove AI slop — the generic, machine-default visual and copy tics of vibe-coded products — from a web project.

    1.3k GitHub stars~1.4k tokensUpdated 22 days ago
    Frontend & DesignAuto-check passed
  • Coss

    crafter-station/petdex

    Helps implement coss UI components correctly. An agent skill from crafter-station/petdex.

    4.2k GitHub stars~1.4k tokensUpdated 8 days ago
    Frontend & DesignAuto-check passed
  • Ss Learn

    bitjaru/styleseed

    Capture a human-approved UI design lesson as a privacy-minimized local StyleSeed candidate, review it, and prepare an opt-in share package without transmitting project code, prompts, screenshots, or…

    970 GitHub stars~1.3k tokensUpdated 6 days ago
    Frontend & DesignAuto-check passed
  • Uithing

    BayBreezy/ui-thing

    Manages UI Thing components, prose, blocks, themes, shortcuts, docs, and MCP-driven workflows in Nuxt projects and in the UI Thing source repo.

    729 GitHub stars~1.3k tokensUpdated 5 days ago
    Frontend & DesignAuto-check passed

More from fulldotdev/ui

  • Fulldev

    fulldotdev/ui

    Apply Fulldev's content, schema, layout, component and block conventions in Astro client projects, and install UI from the @fulldev registry.

    610 GitHub stars~357 tokensUpdated today
    Auto-check passed

Questions about UI Upstream Sync

What does UI Upstream Sync do?

Audit and update the existing Fulldev Astro UI registry against current data-slot and shadcn/ui Base UI Vega. UI Upstream Sync is an agent skill from fulldotdev/ui. Audit and update the existing Fulldev Astro UI registry against current data-slot and shadcn/ui Base UI Vega.

When should I use UI Upstream Sync?

UI Upstream Sync fits situations like: periodic whole-library upstream parity passes; not ordinary single-component edits.

How do I install UI Upstream Sync in Claude Code?

Run `npx skills add fulldotdev/ui --skill ui-upstream-sync -a claude-code`. Or copy the skill folder (.agents/skills/ui-upstream-sync in fulldotdev/ui) into .claude/skills/ui-upstream-sync in your project. Claude Code loads it when a task matches its description.

How do I install UI Upstream Sync in Codex?

Run `npx skills add fulldotdev/ui --skill ui-upstream-sync -a codex`. Or copy the skill folder (.agents/skills/ui-upstream-sync in fulldotdev/ui) into .agents/skills/ui-upstream-sync in your project. Codex loads it when a task matches its description.

Can I use UI Upstream Sync in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add fulldotdev/ui --skill ui-upstream-sync -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ui-upstream-sync, .gemini/skills/ui-upstream-sync, .github/skills/ui-upstream-sync and .opencode/skills/ui-upstream-sync in your project.

What does UI Upstream Sync need to run?

Going by SKILL.md and its folder, UI Upstream Sync needs the command-line tools its instructions call (pnpm and git).

Does UI Upstream Sync access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is UI Upstream Sync safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does UI Upstream Sync use?

UI Upstream Sync is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does UI Upstream Sync use?

About 1.3k tokens (SKILL.md is roughly 5.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to UI Upstream Sync?

Skills that share tags, products or a category with UI Upstream Sync: UI Styling (Ohh-889/skyroc, 795 stars), Creative Tim UI Blocks (creativetimofficial/ui, 12k stars), Kill AI Slop (yetone/kill-ai-slop, 1.3k stars) and Coss (crafter-station/petdex, 4.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains UI Upstream Sync?

fulldotdev (a GitHub organization) maintains it in fulldotdev/ui, which has 610 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 6, 2026.

Source: fulldotdev/ui on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.