К основному содержанию
скилл CX Codex

rslib-best-practices — скилл для Claude Code: как установить

Скилл обучает агента правилам сборки библиотек на Rslib. Пригодится при настройке rslib.config.ts, разделении зависимостей и выводе деклараций.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add rstackjs/agent-skills --skill rslib-best-practices -a claude-code
Открыть на GitHub

Что делает rslib-best-practices

Скилл передаёт агенту набор правил для сборщика Rslib на базе Rspack. Он учит задавать конфигурацию через rslib.config.ts с помощью defineConfig, отдавая приоритет секции lib.*. Для библиотек компонентов предписывается bundleless-режим с целью 'web'. Для утилит под Node.js выбирается бандлинг. Скилл напоминает публиковать чистый ESM с флагом "type": "module" в package.json и строго связывать поле exports с путями собранных файлов.

Большое внимание уделено зависимостям и генерации типов. Пакеты из dependencies и peerDependencies автоматически остаются внешними при бандлинге, поэтому зависимости для включения внутрь бандла нужно убирать в devDependencies. Типы генерируются через lib.dts. Для ускоренной генерации через экспериментальный флаг lib.dts.tsgo потребуется установить @typescript/native-preview, без которого эта опция не сработает.

При отладке конфигов скилл рекомендует вызывать rslib inspect или запускать сборку с переменной окружения DEBUG=rsbuild. Реальную итоговую конфигурацию нужно смотреть в папке dist/.rsbuild. Для тестов исходник предлагает Rstest с адаптером @rstest/adapter-rslib, а документацию советует вести на Rspress.

Какие задачи решает

  • настроить сборку библиотеки через rslib.config.ts
  • сопоставить пути в package.json с собранным ESM и файлами типов
  • разделить зависимости между бандлом и внешними пакетами
  • ускорить генерацию .d.ts через режим tsgo
  • проверить итоговый конфиг Rspack командой rslib inspect

Примеры запросов агенту

  • Помоги настроить rslib.config.ts для библиотеки компонентов в bundleless режиме.
  • Проверь поле exports в package.json для ESM-сборки и файлов деклараций.
  • Почему внешние пакеты попадают в бандл? Проверь секции зависимостей в проекте на Rslib.

Как установить rslib-best-practices

1Через Skills CLI (Vercel)

npx skills add rstackjs/agent-skills --skill rslib-best-practices -a claude-code

2Вручную: положить файлы

~/.claude/skills/rslib-best-practices/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/rslib-best-practices/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора9

rsbuild-best-practices Задаёт правила настройки, проверки и отладки сборщика Rsbuild. Помогает настроить конфиг, оптимизировать бандл и выявить узкие места при компиляции. CX Codex +1 2 700установок rstest-best-practices Правила настройки и написания тестов Rstest: окружения, моки, снапшоты, покрытие и CI. Пригодится, когда проект переезжает на Rstest или тесты уже есть, но разъехались по стилю. CX Codex +1 1 400установок rspress-best-practices Скилл задаёт агенту правила для сайтов на Rspress v2: конфигурация, навигация, MDX, ассеты, поиск и деплой. Пригодится, когда документация уже есть, а агент пишет по ней код. CX Codex +1 538установок rspack-v2-upgrade Ведёт проект с Rspack 1.x через переход на вторую версию: зависимости, конфиг, проверка сборки. Пригодится, когда мажорный апгрейд страшно начинать вручную. CX Codex +1 515установок rspress-description-generator Скилл дописывает поле description во frontmatter страниц Rspress, если его там нет. Пригодится, когда документация уже большая, а метаописания заполнены вручную через одну. CX Codex +1 498установок rsbuild-v2-upgrade Проводит проект с Rsbuild 1.x через миграцию на v2: зависимости, конфиг, сломанные опции. Пригодится, когда мажорное обновление иначе растянется на вечер. CX Codex +1 476установок migrate-to-rstest Переносит тесты из Jest, Vitest или Playwright Test в Rstest, сохраняя обнаружение, ассерты, моки, снапшоты и покрытие. Пригодится, когда надо переехать без переписывания сценариев. CX Codex +1 420установок rspress-custom-theme Скилл подсказывает агенту, как менять тему Rspress v2: от CSS-переменных до замены встроенных компонентов. CX Codex +1 408установок

Похожие

rollup-bundler Mindrally Скилл задаёт агенту правила конфигурации Rollup.js: форматы вывода, внешние зависимости, tree-shaking и плагины для сборки библиотек. CX Codex +1 657установок parcel-bundler Mindrally Скилл задаёт агенту правила работы со сборщиком Parcel: точки входа, TypeScript, CSS-модули, кэш и продакшен-сборка. Пригодится, когда проект собирается без конфига. CX Codex +1 633установок esbuild sanjeed5 Правило для Cursor, которое задаёт агенту порядок работы с esbuild: один конфиг вместо россыпи флагов в package.json. Пригодится, когда сборка уже есть, но её никто не может поддерживать. ★ 3 579звёзд репо bun-development sickn33 Скилл помогает вести JavaScript и TypeScript-разработку на Bun: создавать проекты, переносить код с Node.js и разбирать проблемы рантайма. CX Codex +1 2 800установок tsdown rolldown Скилл для сборки TypeScript и JavaScript-библиотек на основе Rolldown. Генерирует типы, собирает в ESM/CJS, оптимизирует через tree shaking и минификацию. CX Codex +1 1 500установок tsdown-migrate rolldown Скилл ведёт миграцию TypeScript-библиотеки с tsup на tsdown: таблицы соответствия опций, различия в значениях по умолчанию и замена убранных опций. CX Codex +1 388установок

Рядом в теме «Фронтенд и UI»

Всё по теме «Фронтенд и UI» →

Вопросы о rslib-best-practices

Как установить rslib-best-practices в Claude Code?

Выполните команду npx skills add rstackjs/agent-skills --skill rslib-best-practices -a claude-code. Агент получит доступ к правилам сборки Rslib в текущем проекте.

Что делает скилл rslib-best-practices?

Скилл объясняет агенту правила работы с Rslib: выбор между bundle и bundleless режимами, разметку зависимостей, генерацию d.ts файлов и отладку через DEBUG=rsbuild.

Что требуется для ускоренной генерации типов через tsgo?

Для использования опции lib.dts.tsgo необходимо установить пакет @typescript/native-preview. Без него экспериментальная ускоренная генерация типов работать не будет.

Исходный текст

SKILL.md · MIT
---
name: rslib-best-practices
description: Configure, review, or troubleshoot Rslib library builds, output formats, declarations, dependency handling, and integrations.
---

# Rslib best practices

Apply these rules when writing or reviewing Rslib library projects.

## Configuration

- Use `rslib.config.ts` and `defineConfig`
- Check Rslib-specific configurations first (e.g., `lib.*`), and also leverage Rsbuild configurations (e.g., `source.*`, `output.*`, `tools.*`) as needed
- For deep-level or advanced configuration needs, use `tools.rspack` or `tools.bundlerChain` to access Rspack's native configurations
- In TypeScript projects, prefer `tsconfig.json` path aliases

## CLI

- Use `rslib` to build
- Use `rslib --watch` to build in watch mode for local development
- Use `rslib inspect` to inspect final Rslib/Rsbuild/Rspack configs

## Output

- Prefer to build pure-ESM package with `"type": "module"` in `package.json`
- Prefer to use bundleless mode with `output.target` set to `'web'` when building component libraries
- Prefer to use bundle mode when building Node.js utility libraries
- Ensure `exports` field in `package.json` is correctly configured and matches the actual JavaScript output and declaration files output of different formats (ESM, CJS, etc.)

## Declaration files

- Prefer to enable declaration file generation with `lib.dts: true` or detailed configurations
- For faster type generation, enable `lib.dts.tsgo` experimental feature with `@typescript/native-preview` installed

## Dependencies

- Prefer to place dependencies to be bundled in `devDependencies` in bundle mode and dependencies in `dependencies` and `peerDependencies` will be automatically externalized (not bundled) by default
- Verify the build output and dependency specifiers in `package.json` carefully to ensure no missing dependency errors occur when consumers install and use this package

## Build optimization

- Keep syntax target in `lib.syntax` aligned with real compatibility requirements to enable better optimizations
- Avoid format-specific APIs in source code for better compatibility with different output formats
- Prefer lightweight dependencies to reduce bundle size

## Toolchain integration

- Prefer to use Rstest with `@rstest/adapter-rslib` for writing tests
- Prefer to use Rspress for writing library documentation, with `@rspress/plugin-preview` and `@rspress/plugin-api-docgen` for component previews and API docs

## Debugging

- Run with `DEBUG=rsbuild` when diagnosing config resolution or plugin behavior
- Read generated files in `dist/.rsbuild` to confirm final Rsbuild/Rspack config, not assumed config

## Documentation

- For the latest Rslib docs, read https://rslib.rs/llms.txt

© rstackjs · MIT · rstackjs/agent-skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой