spartan/ui — скилл

Скилл и MCP-сервер для Angular-библиотеки spartan/ui: агент ставит компоненты и блоки по актуальной документации.

  • 2 994 ★ репозитория
  • Последний коммит
  • MIT
Скилл

Расширенный доступ

Почему такой уровень

  • Генераторы `@spartan-ng/cli` создают и меняют файлы проекта, а MCP-сервер ходит на сайт spartan.ng и пишет кеш на диск.
Все причины и проверки

spartan-ng/spartan

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/spartan-ui

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Генераторы `@spartan-ng/cli` создают и меняют файлы проекта, а MCP-сервер ходит на сайт spartan.ng и пишет кеш на диск.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Скилл `spartan` учит агента работать с Angular-библиотекой spartan/ui: добавлять и комбинировать компоненты, чинить их, настраивать стили. Библиотека делится на два слоя. Слой Brain дает доступные компоненты без стилей и ставится из npm. Слой Helm со стилями на Tailwind копируется в проект через `@spartan-ng/cli`, и код остается вашим. Скилл сам определяет, чем собран проект, Nx или Angular CLI, и запускает генераторы через нужную команду. Рядом в репозитории лежит MCP-сервер `@spartan-ng/mcp`. Он берет документацию, компоненты и блоки с сайта spartan.ng, хранит их в кеше по версиям и отдает агенту через инструменты, ресурсы и подсказки.

Для кого. Angular-разработчикам, переносящим подход shadcn/ui в свой проект, и командам, которые уже работают на spartan/ui.

Подходит, если

  • В Angular-проекте с `components.json` надо добавить кнопку, диалог или таблицу в стиле shadcn.
  • Агент пишет разметку вручную, хотя в spartan/ui уже есть готовый компонент нужного поведения.
  • Готовый блок, например боковая панель или форма входа, нужно подтянуть вместе с зависимостями.
  • Вопрос о доступности компонента: клавиатура, ARIA, чтение с экрана.

Не подходит, если

  • Интерфейс собран на Angular Material или PrimeNG, и переходить на spartan/ui не планируют.
  • Проект работает не на Angular: библиотека и генераторы рассчитаны только на этот фреймворк.
  • Рабочее место без доступа к сети, потому что MCP-сервер берет документацию с живого сайта.

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

Добавь в проект диалог подтверждения из spartan/ui и покажи, какие зависимости он тянет.

Ограничения

Скилл работает в проектах с Nx или Angular CLI и вызывает генераторы `@spartan-ng/cli`, которые меняют файлы проекта. Параметр `user-invocable: false` в описании скилла означает, что агент подключает его сам по теме задачи, а не по слэш-команде. MCP-сервер ставится отдельно, нужен Node.js, а контент он загружает с сайта spartan.ng и кладет в кеш на диске. Кеш по умолчанию лежит в `~/.cache/spartan-mcp`, срок записи на диске 24 часа. Сервер только читает документацию и не правит проект.

Как отключить. Удалите папку скилла `spartan` из каталога скиллов агента и запись `spartan-ui` из конфигурации MCP. Кеш `~/.cache/spartan-mcp` и скопированные в проект файлы Helm уберите вручную.

Частые вопросы

Как поставить скилл spartan/ui?

Выполните `npx skills add spartan-ng/spartan`. Скилл лежит в папке `skills/spartan` репозитория и подключается агентом при работе с `components.json` или генераторами `@spartan-ng/cli`.

Как подключить MCP-сервер spartan/ui к Cursor?

Добавьте в MCP-конфигурацию сервер `spartan-ui` с командой `npx` и аргументами `-y`, `@spartan-ng/mcp`, затем перезапустите клиент. Другой вариант: `npm install -g @spartan-ng/mcp` и команда `spartan-mcp`.

Чем слои Brain и Helm отличаются?

Brain дает поведение, доступность и состояние без стилей и ставится из npm как `@spartan-ng/brain`. Helm добавляет стили, и CLI копирует его в проект, чтобы вы правили код сами.

Какие инструменты есть у MCP-сервера?

17 инструментов: список и содержимое компонентов и блоков, разбор зависимостей, проверка доступности, документация, проверки сайта и управление кешем. Например, `spartan_components_get` возвращает API компонента.

Где MCP-сервер хранит кеш и как его сбросить?

По умолчанию в `~/.cache/spartan-mcp`; путь меняет переменная `SPARTAN_MCP_CACHE_DIR`. Очистить кеш можно инструментом `spartan_cache_clear`, а пересобрать из живого сайта инструментом `spartan_cache_rebuild`.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы
Выбор редакции

Официальный скилл и MCP-сервер shadcn/ui: агент ищет компоненты в реестрах, ставит их через CLI и держится правил библиотеки

СкиллРасширенный доступ128 тыс.Звезды репозитория
Официальный

MCP-сервер SAP отдает агенту каталог из 1000 компонентов Fundamental NGX: API, примеры, сравнения и руководства по настройке

MCP-серверМинимальный доступ297Звезды репозитория
Официальный

Скилл подбирает и ставит анимированные React-компоненты beUI через публичный MCP или реестр shadcn вместо самодельных виджетов

СкиллРасширенный доступ2 тыс.Звезды репозитория
Официальный

Скилл и MCP-сервер библиотеки Shaders: агент собирает фоны, стекло, градиенты и курсорные эффекты на WebGPU для React, Vue, Svelte, Solid и JS

СкиллРасширенный доступ5,9 тыс.Звезды репозитория

Скиллы Angular

Angular Skills

Официальные скиллы команды Angular: генерация кода по актуальным практикам, сигналы, формы, SSR и создание новых приложений

СкиллРасширенный доступ101,5 тыс.Звезды репозитория

Shadcn UI MCP Server

Shadcn UI v4 MCP Server

MCP-сервер, который отдает агенту исходники, демо и блоки компонентов shadcn/ui для React, Svelte, Vue и React Native

MCP-серверРасширенный доступ3,1 тыс.Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйЗвезды репозиторияГлавное отличие
spartan/ui (эта карточка)нет2 994
Скиллы Angularнет101 486официальные скиллы команды Angular про сигналы, формы и SSR; здесь библиотека компонентов в духе shadcn
shadcn/uiнет128 022скилл и MCP-сервер shadcn/ui для React; spartan/ui делает то же для Angular с деталями Brain и Helm

Коротко о README

Монорепозиторий spartan/ui включает библиотеки Brain и Helm, плагин `@spartan-ng/cli` для Nx и Angular CLI, MCP-сервер и скилл для агентов. Подход взят у shadcn/ui: доступные компоненты без стилей плюс стили, которые копируются в проект.

Бейдж для README

Исходный SKILL.md

---
name: spartan
description: >-
  Manages spartan/ui, the Angular UI library - adding, composing, fixing, debugging, and styling UI
  with the Brain (headless primitives) and Helm (styled) layers. Provides project context, component
  APIs, and usage examples. Applies when working with spartan/ui, @spartan-ng/brain, @spartan-ng/helm,
  the @spartan-ng/cli generators, or any Angular project with a components.json file. Also triggers
  for "spartan init", "add a spartan component", or "set up spartan/ui".
user-invocable: false
allowed-tools:
  - Bash(npx nx g @spartan-ng/cli:*)
  - Bash(pnpm nx g @spartan-ng/cli:*)
  - Bash(ng g @spartan-ng/cli:*)
---

# spartan/ui

spartan/ui is an Angular UI library on the stable **1.x** line (`@spartan-ng/brain`, `@spartan-ng/cli`, `@spartan-ng/mcp`). Do **not** assume a fixed version such as 1.0 — read the
declared dependency versions for Brain, Helm, and CLI from `npx nx g @spartan-ng/cli:info --json` (Nx) or `ng g @spartan-ng/cli:info --json` (Angular CLI) (field `versions`; these are `package.json` ranges, not lockfile-resolved installs). For the latest published MCP package version, check npm (`@spartan-ng/mcp`).

It uses a **two-layer architecture**:

- **Brain (`@spartan-ng/brain`)** - accessible, unstyled primitives (Angular directives/components),
  installed from npm. This is the behavior and accessibility layer.
- **Helm (`@spartan-ng/helm`)** - the styled layer (Tailwind + class-variance-authority). Helm code
  is **copied into the user's project** by the CLI so they own and can customize it.

You compose Helm directives/components onto host elements; Helm wires up the matching Brain
primitive under the hood. Always prefer existing components over hand-written markup.

All CLI commands run through the workspace's runner. Detect it from the project:

- **Nx workspace** (has `nx.json`): `npx nx g @spartan-ng/cli:<generator>` (or `pnpm nx g ...`).
- **Angular CLI workspace** (has `angular.json`, no `nx.json`): `ng g @spartan-ng/cli:<generator>`.

## Current project context

Before generating any code, gather the project context:

```bash
npx nx g @spartan-ng/cli:info --json     # Nx
ng g @spartan-ng/cli:info --json         # Angular CLI
```

This is read-only and prints JSON with:

Сообщить о проблеме