SuperAPI AI 工具集

sb-inventory

前端与建站

查看项目

更新于 10-16 01:12

技能介绍

用途:对 React+Vite 应用做“以实际导入为准”的组件盘点,替代依赖 AGENTS.md、CLAUDE.md、DESIGN.md 等文档的说法。主导设计系统只从代码信号(导入、调用点)判断,不采信文档。

主要能力:运行 scripts/inventory-project.sh 生成 .storybook/project-inventory.json(原子写入),输出技术栈库(react/vite/tailwind v4|v3/shadcn/radix/baseui/r3f)、主导设计系统(tailwind-v4/shadcn/dtcg/css-vars/none)及 mixed 标记、用户自有组件(realCount/deadCount 与 real[] 按被导入次数排序)、vendor 组件(shadcn components/ui 原语)、module/support/scaffold 计数、token 使用与孤儿情况、孤儿 stories 与 story 覆盖率(withColocatedStory、storyFiles、needsStory[])。

真实 prop 用法:运行 scripts/extract-component-usage.sh 生成 .storybook/component-usage.json,按 PascalCase 导出记录 props.<name>.{count, values, exprCount}、callSites、files[]、declaredButUnused 及 pages 汇总。

组件↔页面图:运行 scripts/build-component-pages.py(或 refresh-usage.sh 一次写四个 JSON)生成 component-pages.json,含 parents/children/pages、isPage 与 route、fileIndex、tokens 正反向索引。

展示方式:用 scaffold-wrapper.sh 生成 ProjectInventory、ComponentUsage 等 wrapper;UsageSection 加入 .storybook/preview.ts 的全局 autodocs 布局,在各分区 Docs 内嵌真实用法;视觉用法网格应作为组件自身 CSF 中的扁平 story,不单独建文件。

限制:{...spread} 与动态值只计为 exprCount,不做解析;静态扫描对 barrel/dynamic/aliased 导入可能漏链,需对照源码核验;计数异常(0、离群、疑似误判孤儿)时才加载 references/field-learnings.md。不要手工重算计数或重新 grep 源码,应直接引用 JSON 字段。其余发现流程由 sb-flows、sb-stories 等兄弟技能负责。