Not in the top 1,000 by GitHub stars

Ciao1019/ui-sift

Curated components. Refined interfaces. An agent skill for clean UI and thoughtful interactions.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

SKILL.md

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 4ab67410a2fc

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 4ab67410a2fcdb25b9c5119a92beb1741f34cd31

23GitHub stars
2stars in 7 days
1skill in this repository
3commits in 30 days

Heat

3.4
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Nov 3, 202623

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

ui-sift

When your agent uses it

设计、实现、评审或打磨简洁且交互精致的前端页面与组件。提供项目画像、视觉判断、精选组件检索、官方 skills/MCP 与源码发现、多库集成和证据验收。适用于新页面、后台、AI 对话、文档工作台、参考还原和局部 UI 改善;纯后端、仅修复业务逻辑或机械改字时不使用。

What it loads into context

Frontmatter

116 tokens

Always available to the agent

SKILL.md

3,328 tokens

When the skill is activated

Reference documents

26,176 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. 按任务展开,而不是一次读完
  2. 先理解正在做什么
  3. 按任务挑组件
  4. 用工具缩小候选范围
  5. 获取官方知识,再获取代码
  6. 把素材变成产品的一部分
  7. 在实际页面上验收
  8. 调用示例

Scripts executed separately

  • .github/scripts/update_install_badge.py
  • .github/tests/test_install_badge.py
  • scripts/check_delivery.py
  • scripts/fetch_reference.py
  • scripts/profile_project.py
  • scripts/recommend.py
  • tests/test_tools.py

Files

  • .gitattributesasset102 bytes
  • .github/badges/installs.jsonasset115 bytes
  • .github/scripts/update_install_badge.pyruns3,567 bytes
  • .github/tests/test_install_badge.pyruns3,014 bytes
  • .github/workflows/install-stats.ymlasset993 bytes
  • .github/workflows/validate.ymlasset581 bytes
  • .gitignoreasset153 bytes
  • LICENSEasset1,065 bytes
  • README.mddoc10,289 bytes
  • README.zh-CN.mddoc9,165 bytes
  • SKILL.mdcore13,099 bytes
  • SKILL.mdcore13,099 bytes
  • VERSIONasset4 bytes
  • agents/openai.yamlasset301 bytes
  • data/components.jsonasset18,327 bytes
  • data/intents.jsonasset4,854 bytes
  • data/resources.jsonasset10,808 bytes
  • evals/manual-scenarios.mddoc4,428 bytes
  • evals/routing-cases.jsonasset4,376 bytes
  • references/acquisition.mddoc13,256 bytes
  • references/catalog.mddoc13,722 bytes
  • references/component-contracts.mddoc4,154 bytes
  • references/integration-patterns.mddoc4,146 bytes
  • references/interaction-recipes.mddoc6,740 bytes
  • references/layout-content.mddoc3,519 bytes
  • references/quality-review.mddoc3,658 bytes
  • references/research-notes.mddoc6,862 bytes
  • references/tooling.mddoc7,709 bytes
  • references/visual-language.mddoc5,285 bytes
  • references/workflows.mddoc6,432 bytes
  • scripts/check_delivery.pyruns4,881 bytes
  • scripts/fetch_reference.pyruns4,975 bytes
  • scripts/profile_project.pyruns6,909 bytes
  • scripts/recommend.pyruns7,556 bytes
  • templates/delivery-evidence.jsonasset1,046 bytes
  • templates/design-brief.mddoc1,567 bytes
  • tests/test_tools.pyruns17,142 bytes
Read SKILL.md

# UI Sift

让界面安静、清楚、顺手,在关键操作上有恰到好处的反馈。精选资源是候选素材库;最终交付应具有统一的产品语言。

面向不同开发者与工程使用,不预设目录结构、包管理器、路由、图标或 UI 基座。新项目按产品需要建立体系,已有项目优先适配其实际约束。

## 按任务展开,而不是一次读完

先判断工作范围,选择下面的路径。沿用用户已有授权,常规设计与选型不添加审批节点。用户只要评审时不自动改代码。

| 任务 | 工作路径 | 按需读取 |
| --- | --- | --- |
| 局部修饰、单个组件 / 状态 | 找到原实现 → 保留约束 → 修改 → 定向验证 | 本文件;必要时读交互配方 |
| 新页面、明显重构 | 简报 → 视觉方向 → 选型 → 真实主流程 → 打磨 → 验证 | [工作流](references/workflows.md)、[视觉语言](references/visual-language.md) |
View the complete source on GitHub

Skills included

  • ui-sift

Repository facts

License
MIT
Created
Sep 17, 2026
Last pushed
Oct 22, 2026
Forks
2
Open issues
0
Project activity
Active

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 4, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 1 note
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 184 signals by file

.github/scripts/update_install_badge.py

  • Executable scriptline 1
    Executable file
  • Network accessline 35
    "q": skill, "owner": repository.split("/")[0], "limit": 100,     })     request = urllib.request.Request(
  • Network accessline 36
    })     request = urllib.request.Request(         "https://skills.sh/api/search?" + params,
  • Network accessline 37
    request = urllib.request.Request(
  • Network accessline 38
    "https://skills.sh/api/search?" + params,
  • Network accessline 39
    headers={"User-Agent": "UI-Sift-Install-Stats/1.0", "Accept": "application/json"},     )     with urllib.request.urlopen(request, timeout=30) as response:
  • Network accessline 40
    )     with urllib.request.urlopen(request, timeout=30) as response:         body = response.read(1_000_001)
  • Network accessline 41
    with urllib.request.urlopen(request, timeout=30) as response:

.github/tests/test_install_badge.py

  • Executable scriptline 1
    Executable file

.gitignore

  • Access to secretsline 7
    [Credential-related source omitted]

README.md

  • Network accessline 9
    [![Version 1.0](https://img.shields.io/badge/version-1.0-18181b)](https://github.com/Ciao1019/ui-sift/releases/tag/v1.0)
  • Network accessline 10
    [![MIT License](https://img.shields.io/badge/license-MIT-18181b)](LICENSE)
  • Network accessline 11
    [![Tests](https://github.com/Ciao1019/ui-sift/actions/workflows/validate.yml/badge.svg)](https://github.com/Ciao1019/ui-sift/actions/workflows/validate.yml)
  • Network accessline 12
    [![Tracked npx installs](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FCiao1019%2Fui-sift%2Fmain%2F.github%2Fbadges%2Finstalls.json)](https://skills.sh/)
  • Network accessline 50
    Replace `codex` with `claude-code`, `cursor`, or another [supported agent](https://github.com/vercel-labs/skills#supported-agents). Add `--global` to install for that agent across projects; installation is project-scoped by default. Use `--
  • Network accessline 63
    For a manual install, download the source or a [release](https://github.com/Ciao1019/ui-sift/releases), put the complete `ui-sift` folder in your agent’s supported skill directory, and preserve its file structure. The entry point is [SKILL.
  • Network accessline 100
    | Area | Sources to explore | | --- | --- | | AI interfaces and content | [Tool UI](https://www.tool-ui.com/docs/overview), [assistant-ui](https://www.assistant-ui.com/docs/ui/syntax-highlighting), [prompt-kit](https://www.prompt-kit.com/),
  • Network accessline 101
    | --- | --- | | AI interfaces and content | [Tool UI](https://www.tool-ui.com/docs/overview), [assistant-ui](https://www.assistant-ui.com/docs/ui/syntax-highlighting), [prompt-kit](https://www.prompt-kit.com/), [Lobe UI](https://ui.lobehub.
  • Network accessline 102
    | AI interfaces and content | [Tool UI](https://www.tool-ui.com/docs/overview), [assistant-ui](https://www.assistant-ui.com/docs/ui/syntax-highlighting), [prompt-kit](https://www.prompt-kit.com/), [Lobe UI](https://ui.lobehub.com/components
  • Network accessline 103
    | Documents and structure | [Extend UI](https://www.extend.ai/ui/docs), [mindmapcn](https://mindmapcn.vercel.app/), [Kibo UI](https://www.kibo-ui.com/), [UI TripleD](https://ui.tripled.work/) |
  • Network accessline 104
    | Dates and input | [DayFlow](https://calendar.dayflow.studio/), [shadcn/ui Calendar](https://ui.shadcn.com/docs/components/calendar), [Cuicui Signature](https://cuicui.day/application-ui/signature) |
  • Network accessline 105
    | Application UI and interaction | [Astryx](https://astryx.atmeta.com/components), [moumenlab](https://lab.moumen.dev/components), [GodUI](https://godui.design/docs/components), [Libraries.dev](https://libraries.dev/beam), [Heroicons Animat
  • Network accessline 106
    | Framework-specific components | [nxui](https://nxui.geoql.in/docs), [shadcn-templ](https://shadcn-templ.com/) |
  • Network accessline 107
    | Page composition and exploration | [Ruixen UI](https://ruixen.com/), [Shadcn Studio](https://shadcnstudio.com/), [Variant](https://variant.com/community) |
  • Network accessline 161
    The workflow draws organizational lessons from [Anthropic frontend-design](https://github.com/anthropics/skills/tree/main/skills/frontend-design), [Vercel agent-skills](https://github.com/vercel-labs/agent-skills), and [Vibe-Skills](https:/

README.zh-CN.md

  • Network accessline 9
    [![版本 1.0](https://img.shields.io/badge/version-1.0-18181b)](https://github.com/Ciao1019/ui-sift/releases/tag/v1.0)
  • Network accessline 10
    [![MIT 许可](https://img.shields.io/badge/license-MIT-18181b)](LICENSE)
  • Network accessline 11
    [![测试](https://github.com/Ciao1019/ui-sift/actions/workflows/validate.yml/badge.svg)](https://github.com/Ciao1019/ui-sift/actions/workflows/validate.yml)
  • Network accessline 12
    [![npx 安装次数](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FCiao1019%2Fui-sift%2Fmain%2F.github%2Fbadges%2Finstalls.json)](https://skills.sh/)
  • Network accessline 50
    将 `codex` 替换为 `claude-code`、`cursor` 或其他[受支持的 Agent](https://github.com/vercel-labs/skills#supported-agents)。默认安装到当前项目;添加 `--global` 可为指定 Agent 全局安装。偏好文件副本时可加 `--copy`。
  • Network accessline 63
    也可以下载源码或 [Release](https://github.com/Ciao1019/ui-sift/releases),将完整的 `ui-sift` 文件夹放进所用 Agent 支持的 skill 目录,保留相邻文件结构。入口是 [SKILL.md](SKILL.md),如宿主要求则重新加载 skills。
  • Network accessline 99
    | 场景 | 候选来源 | | --- | --- | | AI 对话与内容 | [Tool UI](https://www.tool-ui.com/docs/overview)、[assistant-ui](https://www.assistant-ui.com/docs/ui/syntax-highlighting)、[prompt-kit](https://www.prompt-kit.com/)、[Lobe UI](https://ui.lobehub.com/co
  • Network accessline 100
    | --- | --- | | AI 对话与内容 | [Tool UI](https://www.tool-ui.com/docs/overview)、[assistant-ui](https://www.assistant-ui.com/docs/ui/syntax-highlighting)、[prompt-kit](https://www.prompt-kit.com/)、[Lobe UI](https://ui.lobehub.com/components/markd
  • Network accessline 101
    | AI 对话与内容 | [Tool UI](https://www.tool-ui.com/docs/overview)、[assistant-ui](https://www.assistant-ui.com/docs/ui/syntax-highlighting)、[prompt-kit](https://www.prompt-kit.com/)、[Lobe UI](https://ui.lobehub.com/components/markdown)、[Plate](h
  • Network accessline 102
    | 文档与结构 | [Extend UI](https://www.extend.ai/ui/docs)、[mindmapcn](https://mindmapcn.vercel.app/)、[Kibo UI](https://www.kibo-ui.com/)、[UI TripleD](https://ui.tripled.work/) |
  • Network accessline 103
    | 日期与专项输入 | [DayFlow](https://calendar.dayflow.studio/)、[shadcn/ui Calendar](https://ui.shadcn.com/docs/components/calendar)、[Cuicui Signature](https://cuicui.day/application-ui/signature) |
  • Network accessline 104
    | 应用界面与交互 | [Astryx](https://astryx.atmeta.com/components)、[moumenlab](https://lab.moumen.dev/components)、[GodUI](https://godui.design/docs/components)、[Libraries.dev](https://libraries.dev/beam)、[Heroicons Animated](https://www.heroicons-a
  • Network accessline 105
    | 特定技术栈 | [nxui](https://nxui.geoql.in/docs)、[shadcn-templ](https://shadcn-templ.com/) |
  • Network accessline 106
    | 页面组合与方向探索 | [Ruixen UI](https://ruixen.com/)、[Shadcn Studio](https://shadcnstudio.com/)、[Variant](https://variant.com/community) |
  • Network accessline 163
    工作流的组织方式参考了 [Anthropic frontend-design](https://github.com/anthropics/skills/tree/main/skills/frontend-design)、[Vercel agent-skills](https://github.com/vercel-labs/agent-skills) 和 [Vibe-Skills](https://github.com/foryourhealth111-pixel/Vibe

data/resources.json

  • Network accessline 3
    "verified_at": "2026-09-17",   "resources": [     {"id": "astryx", "name": "Astryx", "frameworks": ["react"], "docs": "https://astryx.atmeta.com/components", "packages": ["@astryxdesign/core"], "skill_status": "agent-docs", "mcp_kind": "rem
  • Network accessline 4
    "resources": [     {"id": "astryx", "name": "Astryx", "frameworks": ["react"], "docs": "https://astryx.atmeta.com/components", "packages": ["@astryxdesign/core"], "skill_status": "agent-docs", "mcp_kind": "remote", "agent_docs": "https://as
  • Network accessline 5
    {"id": "astryx", "name": "Astryx", "frameworks": ["react"], "docs": "https://astryx.atmeta.com/components", "packages": ["@astryxdesign/core"], "skill_status": "agent-docs", "mcp_kind": "remote", "agent_docs": "https://astryx.atmeta.com/doc
  • Network accessline 6
    {"id": "tool-ui", "name": "Tool UI", "frameworks": ["react"], "docs": "https://www.tool-ui.com/docs/overview", "packages": [], "skill_status": "skill", "mcp_kind": "registry", "agent_docs": "https://www.tool-ui.com/docs/agent-skills", "mcp_
  • Network accessline 7
    {"id": "assistant-ui", "name": "assistant-ui", "frameworks": ["react"], "docs": "https://www.assistant-ui.com/docs/ui/syntax-highlighting", "packages": ["@assistant-ui/react"], "skill_status": "skill", "mcp_kind": "remote", "agent_docs": "h
  • Network accessline 8
    {"id": "beam", "name": "Libraries.dev", "frameworks": ["react"], "docs": "https://libraries.dev/beam", "packages": ["border-beam", "thinking-orbs"], "skill_status": "paid-skill", "mcp_kind": "unconfirmed", "agent_docs": "https://libraries.d
  • Network accessline 9
    {"id": "lobe", "name": "Lobe UI", "frameworks": ["react"], "docs": "https://ui.lobehub.com/components/markdown", "packages": ["@lobehub/ui"], "skill_status": "unconfirmed", "mcp_kind": "unconfirmed", "agent_docs": null, "mcp_endpoint": null
  • Network accessline 10
    {"id": "mindmapcn", "name": "mindmapcn", "frameworks": ["react"], "docs": "https://mindmapcn.vercel.app/", "packages": ["mind-elixir"], "skill_status": "unconfirmed", "mcp_kind": "registry", "agent_docs": "https://mindmapcn.mind-elixir.com/
  • Network accessline 11
    {"id": "extend", "name": "Extend UI", "frameworks": ["react"], "docs": "https://www.extend.ai/ui/docs", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "registry", "agent_docs": "https://www.extend.ai/ui/docs", "mcp_endpoint": nu
  • Network accessline 12
    {"id": "kibo", "name": "Kibo UI", "frameworks": ["react"], "docs": "https://www.kibo-ui.com/", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "remote", "agent_docs": "https://www.kibo-ui.com/docs/mcp", "mcp_endpoint": "https://w
  • Network accessline 13
    {"id": "cuicui", "name": "Cuicui", "frameworks": ["react"], "docs": "https://cuicui.day/application-ui/signature", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "unconfirmed", "agent_docs": "https://cuicui.day/getting-started",
  • Network accessline 14
    {"id": "dayflow", "name": "DayFlow", "frameworks": ["react", "vue", "angular", "svelte"], "docs": "https://calendar.dayflow.studio/", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "unconfirmed", "agent_docs": "https://calendar.
  • Network accessline 15
    {"id": "nxui", "name": "nxui", "frameworks": ["vue"], "docs": "https://nxui.geoql.in/docs", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "remote", "agent_docs": "https://nxui.geoql.in/docs/mcp", "mcp_endpoint": "https://nxui.g
  • Network accessline 16
    {"id": "shadcn-templ", "name": "shadcn-templ", "frameworks": ["go-templ"], "docs": "https://shadcn-templ.com/", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "unconfirmed", "agent_docs": "https://shadcn-templ.com/docs/installat
  • Network accessline 17
    {"id": "moumen", "name": "moumenlab", "frameworks": ["react"], "docs": "https://lab.moumen.dev/components", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "registry", "agent_docs": "https://lab.moumen.dev/llms.txt", "mcp_endpoin
  • Network accessline 18
    {"id": "tripled", "name": "UI TripleD", "frameworks": ["react"], "docs": "https://ui.tripled.work/", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "unconfirmed", "agent_docs": "https://ui.tripled.work/llms.txt", "mcp_endpoint":
  • Network accessline 19
    {"id": "godui", "name": "GodUI", "frameworks": ["react"], "docs": "https://godui.design/docs/components", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "stdio", "agent_docs": "https://godui.design/docs/mcp", "mcp_endpoint": nul
  • Network accessline 20
    {"id": "prompt-kit", "name": "prompt-kit", "frameworks": ["react"], "docs": "https://www.prompt-kit.com/", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "registry", "agent_docs": "https://www.prompt-kit.com/docs/mcp", "mcp_endp
  • Network accessline 21
    {"id": "heroicons", "name": "Heroicons Animated", "frameworks": ["react"], "docs": "https://www.heroicons-animated.com/", "packages": ["@heroicons-animated/react"], "skill_status": "unconfirmed", "mcp_kind": "registry", "agent_docs": "https
  • Network accessline 22
    {"id": "plate", "name": "Plate", "frameworks": ["react"], "docs": "https://platejs.org/", "packages": ["platejs"], "skill_status": "local-docs", "mcp_kind": "registry", "agent_docs": "https://platejs.org/docs/installation/mcp", "mcp_endpoin
  • Network accessline 23
    {"id": "ruixen", "name": "Ruixen UI", "frameworks": ["react"], "docs": "https://ruixen.com/", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "registry", "agent_docs": "https://ruixen.com/docs/installation", "mcp_endpoint": null,
  • Network accessline 24
    {"id": "studio", "name": "Shadcn Studio", "frameworks": ["react"], "docs": "https://shadcnstudio.com/", "packages": [], "skill_status": "agent-docs", "mcp_kind": "stdio", "agent_docs": "https://shadcnstudio.com/docs/getting-started/shadcn-s
  • Network accessline 25
    {"id": "shadcn", "name": "shadcn/ui", "frameworks": ["react"], "docs": "https://ui.shadcn.com/docs/components/calendar", "packages": [], "skill_status": "skill", "mcp_kind": "registry", "agent_docs": "https://ui.shadcn.com/docs/skills", "mc
  • Network accessline 26
    {"id": "variant", "name": "Variant", "frameworks": ["inspiration"], "docs": "https://variant.com/community", "packages": [], "skill_status": "unconfirmed", "mcp_kind": "unconfirmed", "agent_docs": null, "mcp_endpoint": null, "llms": null, "

references/acquisition.md

  • Network accessline 22
    | 来源 | 官方 skill / agent docs | MCP | 无专门工具时的获取路径 | | --- | --- | --- | --- | | Astryx | 确认 CLI 生成 agent docs;不等同标准 SKILL.md 包 | 确认独立远程服务 | [Working with AI](https://astryx.atmeta.com/docs/working-with-ai)、[安装](https://astryx.atmeta.com/docs
  • Network accessline 23
    | --- | --- | --- | --- | | Astryx | 确认 CLI 生成 agent docs;不等同标准 SKILL.md 包 | 确认独立远程服务 | [Working with AI](https://astryx.atmeta.com/docs/working-with-ai)、[安装](https://astryx.atmeta.com/docs/getting-started)、官方 CLI / 包 | | Tool UI | 确认 [Agen
  • Network accessline 24
    | Astryx | 确认 CLI 生成 agent docs;不等同标准 SKILL.md 包 | 确认独立远程服务 | [Working with AI](https://astryx.atmeta.com/docs/working-with-ai)、[安装](https://astryx.atmeta.com/docs/getting-started)、官方 CLI / 包 |
  • Network accessline 25
    | Tool UI | 确认 [Agent Skills](https://www.tool-ui.com/docs/agent-skills) | 未确认独立服务;可评估 registry 路径 | [Quick Start](https://www.tool-ui.com/docs/quick-start)、[官方仓库](https://github.com/assistant-ui/tool-ui) |
  • Network accessline 26
    | assistant-ui | 确认官方 skills 与发现索引 | 确认远程文档 MCP | [Agent Skills / MCP](https://www.assistant-ui.com/docs/llm)、[llms](https://www.assistant-ui.com/llms.txt) |
  • Network accessline 27
    | Libraries.dev Beam | 官网说明 Pro 包含参数 skills;未获取付费文件 | 未确认 | [公开组件页](https://libraries.dev/beam)的 Install & Usage / Copy prompt、官方包;付费 preset 另算 |
  • Network accessline 28
    | Lobe UI | 未确认 UI 专用官方 skill | 未确认 UI 文档专用服务 | [组件页](https://ui.lobehub.com/components/markdown)、[源码](https://github.com/lobehub/lobe-ui);不能把 LobeHub 的一般 MCP 生态当作 Lobe UI 文档 MCP |
  • Network accessline 29
    | mindmapcn | 未确认 | 未确认独立服务;有 shadcn registry | [llms](https://mindmapcn.mind-elixir.com/llms.txt)、[安装](https://mindmapcn.mind-elixir.com/docs/installation) |
  • Network accessline 30
    | Extend UI | 未确认 | 未确认 UI 专用独立服务;有 shadcn registry | [文档与安装](https://www.extend.ai/ui/docs)、[源码](https://github.com/extend-hq/ui);区别于 Extend 产品服务 |
  • Network accessline 31
    | Kibo UI | 未确认 | 确认 [MCP Server](https://www.kibo-ui.com/docs/mcp) | [Setup](https://www.kibo-ui.com/docs/setup)、[源码](https://github.com/shadcnblocks/kibo) |
  • Network accessline 32
    | Cuicui Signature | 未确认 | 未确认 | [组件页](https://cuicui.day/application-ui/signature)、[目标源码目录](https://github.com/damien-schneider/cuicui/tree/main/packages/ui/cuicui/application-ui/signature/react-signature) |
  • Network accessline 33
    | DayFlow | 未确认 | 未确认 | [llms](https://calendar.dayflow.studio/llms.txt)、[框架文档](https://calendar.dayflow.studio/docs/introduction)、[源码](https://github.com/dayflow-js/dayflow) |
  • Network accessline 34
    | nxui | 未确认 | 确认远程服务与 shadcn registry 两条路径 | [MCP 文档](https://nxui.geoql.in/docs/mcp)、[llms](https://nxui.geoql.in/llms.txt)、逐组件文档 |
  • Network accessline 35
    | shadcn-templ | 未确认 | 未确认 | [安装](https://shadcn-templ.com/docs/installation)、[CLI](https://shadcn-templ.com/docs/cli)、[源码](https://github.com/axadrn/shadcn-templ);用 Go templ 的工具链 |
  • Network accessline 36
    | moumenlab | 未确认 | 未确认独立服务;有兼容 registry | [llms](https://lab.moumen.dev/llms.txt)里的逐组件 `/r/<name>.md` 含说明、用法与源码 |
  • Network accessline 37
    | UI TripleD | 未确认 | 未确认独立服务 | [llms](https://ui.tripled.work/llms.txt)里的逐组件 `/md/*.md`、[源码](https://github.com/moumen-soliman/uitripled)、组件页的 copy / registry 入口 |
  • Network accessline 38
    | GodUI | 未确认 | 确认本地 stdio 服务 | [MCP](https://godui.design/docs/mcp)、[llms](https://godui.design/llms.txt)、[安装](https://godui.design/docs/installation) |
  • Network accessline 39
    | prompt-kit | 未确认 | 官方 [MCP 文档](https://www.prompt-kit.com/docs/mcp)采用 shadcn registry 方案 | [llms](https://www.prompt-kit.com/llms.txt)、[安装](https://www.prompt-kit.com/docs/installation)、[源码](https://github.com/ibelick/prompt-kit) |
  • Network accessline 40
    | Heroicons Animated | 未确认 | 未确认独立服务;有 registry | [llms](https://www.heroicons-animated.com/llms.txt)、逐图标页、[源码](https://github.com/Aniket-508/heroicons-animated) |
  • Network accessline 41
    | Plate | 未确认独立标准 skill;提供本地文档方案 | 确认官方文档采用 shadcn MCP + `@plate` registry | [MCP](https://platejs.org/docs/installation/mcp)、[Local Docs](https://platejs.org/docs/installation/docs)、[llms](https://platejs.org/llms.txt) |
  • Network accessline 42
    | Ruixen UI | 未确认 | 未确认独立服务;有 shadcn registry | [llms](https://ruixen.com/llms.txt)、组件安装页、[源码](https://github.com/ruixenui/ruixen.com) |
  • Network accessline 43
    | Shadcn Studio | 确认 MCP 配套 instructions / commands,未确认独立标准 skill | 确认 Studio MCP;权限与客户端条件须核对 | [官方 MCP 指南](https://shadcnstudio.com/docs/getting-started/shadcn-studio-mcp-server)、[llms](https://shadcnstudio.com/llms.txt)、具体组件 / block 页 |
  • Network accessline 44
    | shadcn/ui | 确认 [Skills](https://ui.shadcn.com/docs/skills) | 确认官方通用 registry MCP | [MCP](https://ui.shadcn.com/docs/mcp)、[llms](https://ui.shadcn.com/llms.txt)、组件页 |
  • Network accessline 45
    | Variant Community | 未确认 | 未确认 | 本次 [社区](https://variant.com/community)要求登录;用已授权浏览或用户提供的参考,不假定能导出组件 |
  • Network accessline 53
    - 文档公布远程 MCP:`https://astryx.atmeta.com/mcp`,提供 `search` 与 `get`。
  • Network accessline 62
    # Tool UI 官方 Agent Skills 页 npx skills add https://github.com/assistant-ui/tool-ui --skill tool-ui
  • Network accessline 63
    npx skills add https://github.com/assistant-ui/tool-ui --skill tool-ui
  • Network accessline 76
    - 远程 MCP:`https://www.assistant-ui.com/mcp`,Streamable HTTP。
  • Network accessline 77
    - skill 发现索引:`https://www.assistant-ui.com/.well-known/agent-skills/index.json`。
  • Network accessline 78
    - 站点 skill:`https://www.assistant-ui.com/skill.md`。
  • Network accessline 85
    - **Kibo**:官方文档给出 `https://www.kibo-ui.com/api/mcp/mcp`,示例通过 `mcp-remote` 连接。不要擅自简化成 `/mcp`;客户端配置位置仍以宿主文档为准。
  • Network accessline 86
    - **nxui**:远程 MCP `https://nxui.geoql.in/mcp`;官方还提供 `@nxui` registry `https://nxui.geoql.in/r/{name}.json`。MCP 提供 list / get / install-command,不代表自动解决 Vue 与 React 的兼容性。
  • Network accessline 87
    - **GodUI**:官方当前固定 stdio 包 `@godui/mcp@0.1.0`,从 `https://godui.design/r` 读 registry;CLI 安装入口为 `@godui/cli`。不要用拍脑袋的包名或把固定版本替成 latest。需要可复现来源时按官网 registry revision 方式处理。
  • Network accessline 91
    Plate 官方配置使用 `npx shadcn@latest mcp`,在 `components.json` 配置 `@plate` 为 `https://platejs.org/r/{name}.json`。如果已经有相同 shadcn MCP,优先复用,不为每个库起一个重复服务。文档推荐 local docs 与项目 Plate 版本对应。
  • Network accessline 93
    prompt-kit 本次官方文档仍展示 `shadcn@canary mcp` 加 `REGISTRY_URL=https://www.prompt-kit.com/c/registry.json`。这是带版本背景的配置,不宣称可直接换成所有当前 shadcn CLI;采用时同时核对该库和 shadcn 文档,不通则读取组件 Markdown / 官方源码继续。
  • Network accessline 95
    shadcn 官方 [MCP 文档](https://ui.shadcn.com/docs/mcp)确认支持符合其规范的第三方 registry。**有 JSON 地址不自动等于兼容**:检查 registry schema、目标 item、文件内容及依赖解析后再使用。
  • Network accessline 102
    {   "registries": {     "@extend": "https://www.extend.ai/ui/r/styles/{style}/{name}.json"
  • Network accessline 103
    "registries": {     "@extend": "https://www.extend.ai/ui/r/styles/{style}/{name}.json"   }
  • Network accessline 104
    "@extend": "https://www.extend.ai/ui/r/styles/{style}/{name}.json"

references/catalog.md

  • Network accessline 13
    - [官网与组件目录](https://www.tool-ui.com/docs/overview) · React / shadcn,面向结构化 tool output。
  • Network accessline 20
    - [原始高亮入口](https://www.assistant-ui.com/docs/ui/syntax-highlighting) · React 对话 runtime、原语与 Elements。
  • Network accessline 21
    - **优先挑选**:Thread / Composer、Markdown Text、Syntax Highlighter 或 Shiki Highlighter;已有对话链中局部增强。 - **值得探索**:Tool Timeline、Agent Plan、Job Progress、Context Display、Reviewable Diff、Scroll Anchor,可把等待与工具使用变得可理解。 - **取舍**:原高亮 URL 本次跳转至 [Syntax High
  • Network accessline 23
    - **取舍**:原高亮 URL 本次跳转至 [Syntax Highlighter](https://www.assistant-ui.com/elements/syntax-highlighter),当前该组件使用 Prism / `react-syntax-highlighter`。Shiki 是另一个选项;不要从旧教程推断当前 API,也不要两套都装。
  • Network accessline 27
    - [官网](https://www.prompt-kit.com/) · React AI 界面的可组合构件。
  • Network accessline 34
    - [Markdown 文档](https://ui.lobehub.com/components/markdown) · React 富内容展示。
  • Network accessline 41
    - [官网](https://platejs.org/) · React 富文本编辑器与插件体系。
  • Network accessline 50
    - [组件目录](https://astryx.atmeta.com/components) · React 设计系统,当前官方安装文档要求 React 19+,有独立主题与布局能力。
  • Network accessline 57
    - [文档](https://www.extend.ai/ui/docs) · React 文档处理与人工审核界面。
  • Network accessline 64
    - [官网](https://www.kibo-ui.com/) · 可组合的 React / shadcn 扩展。
  • Network accessline 65
    - **优先挑选**:[Tree](https://www.kibo-ui.com/components/tree)、[Table](https://www.kibo-ui.com/components/table)、Dropzone、Image Zoom,补足业务基础能力。
  • Network accessline 66
    - **值得探索**:[Gantt](https://www.kibo-ui.com/components/gantt)、[Kanban](https://www.kibo-ui.com/components/kanban)、Color Picker、Code Block、Roadmap 组合。
  • Network accessline 71
    - [原始官网](https://mindmapcn.vercel.app/) · [当前知识索引](https://mindmapcn.mind-elixir.com/llms.txt) · React + Mind Elixir + Tailwind / shadcn 风格。
  • Network accessline 80
    - [Calendar](https://ui.shadcn.com/docs/components/calendar) · React 日期与范围选择,当前文档提供不同基础组件变体。
  • Network accessline 87
    - [官网](https://calendar.dayflow.studio/) · 提供 React、Vue、Angular、Svelte 日历接入。
  • Network accessline 94
    - [签名组件](https://cuicui.day/application-ui/signature) · React copy-paste 组件与交互实验。
  • Network accessline 103
    - [Component Lab](https://lab.moumen.dev/components) · React + Tailwind + `motion/react`;每个实验有演示、blueprint 和源码。
  • Network accessline 110
    - [组件目录](https://godui.design/docs/components) · React 动效组件与 motion guidelines。
  • Network accessline 117
    - [官网](https://ui.tripled.work/) · React / Motion;组件提供 shadcn/ui、Base UI 等变体,索引还列有 Carbon。
  • Network accessline 124
    - [Border Beam](https://libraries.dev/beam) · React 的局部边框活动效果;同站提供其他独立效果库。
  • Network accessline 131
    - [官网](https://www.heroicons-animated.com/) · React 18 / 19 + Motion,基于 Heroicons。
  • Network accessline 138
    - [文档](https://nxui.geoql.in/docs) · Vue / Nuxt 动效候选,具体实现与运行时按组件确认。
  • Network accessline 147
    - [官网](https://shadcn-templ.com/) · **Go templ + vanilla JavaScript**,原 templUI;本次官网为 2.0 beta 文档。
  • Network accessline 154
    - [官网](https://ruixen.com/) · React / shadcn 营销 sections 与交互组件;当前提供 Tailwind v3 / v4、Radix / Base UI 变体。
  • Network accessline 161
    - [官网](https://shadcnstudio.com/) · React / shadcn 组件、blocks、页面模板与主题工具。
  • Network accessline 168
    - [社区入口](https://variant.com/community) · 页面方向探索来源,不是本地组件运行时。

references/research-notes.md

  • Network accessline 7
    在 [skills.sh](https://skills.sh/) 的公开榜单核实了以下前端相关 skills 的可见度,并阅读其官方源码。榜单会变,不固定引用安装数量或排名。
  • Network accessline 9
    | 参考 | 采用的写法 | 如何适配这里 | | --- | --- | --- | | [Anthropic frontend-design](https://github.com/anthropics/skills/blob/main/skills/frontend-design/SKILL.md) | 先确定产品内容与视觉意图,再实现并做减法 | 明确“简洁交互”的取向,保留用户品牌与现有系统,不要求每个页面追求强烈视觉实验 |
  • Network accessline 10
    | --- | --- | --- | | [Anthropic frontend-design](https://github.com/anthropics/skills/blob/main/skills/frontend-design/SKILL.md) | 先确定产品内容与视觉意图,再实现并做减法 | 明确“简洁交互”的取向,保留用户品牌与现有系统,不要求每个页面追求强烈视觉实验 | | [Vercel web-design-guidelines](https://gi
  • Network accessline 11
    | [Anthropic frontend-design](https://github.com/anthropics/skills/blob/main/skills/frontend-design/SKILL.md) | 先确定产品内容与视觉意图,再实现并做减法 | 明确“简洁交互”的取向,保留用户品牌与现有系统,不要求每个页面追求强烈视觉实验 |
  • Network accessline 12
    | [Vercel web-design-guidelines](https://github.com/vercel-labs/agent-skills/blob/main/skills/web-design-guidelines/SKILL.md) | 短入口,按需读取最新权威资料 | 接入信息放到独立参考文件;采用前核对当前文档,不在主 skill 堆积 API |
  • Network accessline 13
    | [Vercel react-best-practices](https://github.com/vercel-labs/agent-skills/blob/main/skills/react-best-practices/SKILL.md) | 按影响组织规则与细分资料 | 优先框架兼容、信息结构、真实状态与包体积,不把每条性能规则都复制进来 |
  • Network accessline 14
    | [Tool UI 官方 Agent Skills 文档](https://www.tool-ui.com/docs/agent-skills) | 兼容检查、发现、安装、接线、验证 | 组件获取必须继续到真实业务接线,不能以复制 demo 作为完成 |
  • Network accessline 20
    同时研究了 [Vibe-Skills](https://github.com/foryourhealth111-pixel/Vibe-Skills)。本次读取的 revision 为 [`ddcaa2affca93c1efe026d008b6b93709e5fb7e2`](https://github.com/foryourhealth111-pixel/Vibe-Skills/tree/ddcaa2affca93c1efe026d008b6b93709e5fb7e2)。阅读
  • Network accessline 69
    | JSON / Python / 本地链接 | JSON 可解析、Python 语法可解析、相对链接目标存在;22 个来源均有组件候选 | | 通用场景检索 | 独立测试覆盖 React 日期选择、Vue / Nuxt 命令面板、Go templ 表单、只读 Markdown、多框架歧义与未命中场景 | | 真实官方文本下载 | 获取 [Share & Permissions Popover](https://lab.moumen.dev/r/share-permissio
  • Network accessline 71
    | 真实官方文本下载 | 获取 [Share & Permissions Popover](https://lab.moumen.dev/r/share-permissions-popover.md),32,389 字节,UTF-8 文本,未执行其中代码 |

references/tooling.md

  • Network accessline 54
    python3 scripts/fetch_reference.py moumen --out /tmp/moumen-llms.txt python3 scripts/fetch_reference.py moumen \   --url https://lab.moumen.dev/r/share-permissions-popover.md \
  • Network accessline 55
    python3 scripts/fetch_reference.py moumen    --url https://lab.moumen.dev/r/share-permissions-popover.md
  • Network accessline 56
    --url https://lab.moumen.dev/r/share-permissions-popover.md \

scripts/check_delivery.py

  • Executable scriptline 1
    #!/usr/bin/env python3

scripts/fetch_reference.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 63
    def fetch(source, url, kind, output, max_bytes=2_000_000, timeout=15):
  • Network accessline 75
    raise ValueError("目标已存在,拒绝覆盖;请选择新的任务缓存文件。")     opener = urllib.request.build_opener(OfficialRedirect(hosts))     request = urllib.request.Request(url, headers={"User-Agent": "UISift/1.0 ReferenceReader"})
  • Network accessline 76
    opener = urllib.request.build_opener(OfficialRedirect(hosts))     request = urllib.request.Request(url, headers={"User-Agent": "UISift/1.0 ReferenceReader"})     with opener.open(request, timeout=timeout) as response:
  • Network accessline 77
    request = urllib.request.Request(url, headers={"User-Agent": "UISift/1.0 ReferenceReader"})
  • Network accessline 100
    args = parser.parse_args()     try:         result = fetch(args.source, args.url, args.kind, args.out)
  • Network accessline 101
    try:         result = fetch(args.source, args.url, args.kind, args.out)     except (OSError, ValueError, urllib.error.URLError) as exc:
  • Network accessline 102
    result = fetch(args.source, args.url, args.kind, args.out)

scripts/profile_project.py

  • Executable scriptline 1
    #!/usr/bin/env python3

scripts/recommend.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tests/test_tools.py

  • Executable scriptline 1
    Executable file
  • Network accessline 32
    self.write("package.json", json.dumps({             "dependencies": {"react": "^19.0.0", "motion": "^12.0.0",                              "private": "https://user:SECRET_SENTINEL@example.org/pkg"},
  • Network accessline 33
    "dependencies": {"react": "^19.0.0", "motion": "^12.0.0",                              "private": "https://user:SECRET_SENTINEL@example.org/pkg"},             "scripts": {"build": "echo SECRET_SENTINEL"}, "packageManager": "bun@1.2.0"}))
  • Network accessline 34
    "private": "https://user:SECRET_SENTINEL@example.org/pkg"},
  • Network accessline 35
    [Credential-related source omitted]
  • Network accessline 36
    [Credential-related source omitted]
  • Network accessline 37
    [Credential-related source omitted]
  • Network accessline 196
    def test_untrusted_hosts_schemes_ports_and_credentials_rejected(self):         hosts = {"lab.moumen.dev"}         validate_url("https://lab.moumen.dev/llms.txt", hosts)
  • Network accessline 197
    hosts = {"lab.moumen.dev"}         validate_url("https://lab.moumen.dev/llms.txt", hosts)         for url in ("http://lab.moumen.dev/x", "https://evil.example/x",
  • Network accessline 198
    validate_url("https://lab.moumen.dev/llms.txt", hosts)
  • Network accessline 199
    for url in ("http://lab.moumen.dev/x", "https://evil.example/x",
  • Network accessline 200
    "https://lab.moumen.dev:444/x", "https://user:pass@lab.moumen.dev/x"):
  • Network accessline 204
    def test_redirects_cannot_escape_host_or_lead_to_login(self):         handler = OfficialRedirect({"lab.moumen.dev"})         request = urllib.request.Request("https://lab.moumen.dev/llms.txt")
  • Network accessline 205
    handler = OfficialRedirect({"lab.moumen.dev"})         request = urllib.request.Request("https://lab.moumen.dev/llms.txt")         for url in ("https://evil.example/x", "https://lab.moumen.dev/login?next=docs"):
  • Network accessline 206
    request = urllib.request.Request("https://lab.moumen.dev/llms.txt")
  • Network accessline 207
    for url in ("https://evil.example/x", "https://lab.moumen.dev/login?next=docs"):
  • Network accessline 213
    output = Path(temp) / "reference.md"             response = io.BytesIO(b"# public docs\n")             response.url = "https://lab.moumen.dev/llms.txt"
  • Network accessline 214
    response = io.BytesIO(b"# public docs\n")             response.url = "https://lab.moumen.dev/llms.txt"             response.headers = {"Content-Type": "text/plain"}
  • Network accessline 215
    response.url = "https://lab.moumen.dev/llms.txt"             response.headers = {"Content-Type": "text/plain"}             with patch("fetch_reference.urllib.request.build_opener") as opener:
  • Network accessline 217
    with patch("fetch_reference.urllib.request.build_opener") as opener:                 opener.return_value.open.return_value = response                 result = fetch("moumen", None, "text", output)
  • Network accessline 218
    opener.return_value.open.return_value = response                 result = fetch("moumen", None, "text", output)             self.assertEqual(output.read_bytes(), b"# public docs\n")
  • Network accessline 219
    result = fetch("moumen", None, "text", output)
  • Network accessline 229
    with patch("fetch_reference.urllib.request.build_opener") as opener:                 with self.assertRaises(ValueError):                     fetch("moumen", None, "text", output)
  • Network accessline 230
    with self.assertRaises(ValueError):                     fetch("moumen", None, "text", output)                 opener.assert_not_called()
  • Network accessline 231
    fetch("moumen", None, "text", output)
  • Network accessline 237
    output = Path(temp) / "too-large"             response = io.BytesIO(b"12345")             response.url = "https://lab.moumen.dev/llms.txt"
  • Network accessline 238
    response = io.BytesIO(b"12345")             response.url = "https://lab.moumen.dev/llms.txt"             response.headers = {"Content-Type": "text/plain"}
  • Network accessline 239
    response.url = "https://lab.moumen.dev/llms.txt"             response.headers = {"Content-Type": "text/plain"}             with patch("fetch_reference.urllib.request.build_opener") as opener:
  • Network accessline 242
    opener.return_value.open.return_value = response                 with self.assertRaises(ValueError):                     fetch("moumen", None, "text", output, max_bytes=4)
  • Network accessline 243
    with self.assertRaises(ValueError):                     fetch("moumen", None, "text", output, max_bytes=4)             self.assertFalse(output.exists())
  • Network accessline 244
    fetch("moumen", None, "text", output, max_bytes=4)

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 159 facts

and 109 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.