BD multitenant
Паттерны многопользовательской архитектуры / multitenancy в Vovk.ts — размещение нескольких клиентов из одного приложения Next.js через маршрутизацию поддоменов. Охватывает вспомогательную функцию `multitenant()` из `vovk`, файл `proxy.ts` в Next.js, который ее настраивает, структуру `overrides` (статические / динамические / вложенные шаблоны поддоменов), изменения в `vovk.config.mjs` (переключение на сегментированный клиент, `segmentNameOverride`), маршруты страниц фронтенда для каждого клиента, wildcard DNS и локальные поддомены в `localhost`. Триггеры на фразы вроде «multi-tenant», «multitenancy», «API для каждого клиента», «фронтенд для каждого клиента», «хостинг `admin.example.com`», «обслуживание по поддомену», «клиент на поддомен», «wildcard поддомены», «маршрутизация поддомена к сегменту». НЕ охватывает создание или настройку отдельного сегмента — передайте навыку `segment`. НЕ охватывает написание контроллеров внутри сегмента клиента — передайте навыку `procedure`. НЕ охватывает детали составного и сегментированного клиента, кроме переключения — передайте навыку `rpc`.
машинный переводПоказать оригиналСкрыть оригинал«Multi-tenant / multitenancy patterns in Vovk.ts — hosting multiple ten…»
Multi-tenant / multitenancy patterns in Vovk.ts — hosting multiple tenants from one Next.js app via subdomain routing. Covers the `multitenant()` helper from `vovk`, the Next.js `proxy.ts` file that wires it up, the `overrides` shape (static / dynamic / nested subdomain patterns), the `vovk.config.mjs` changes needed (switch to segmented client, `segmentNameOverride`), per-tenant frontend page routes, wildcard DNS, and local subdomains under `localhost`. Triggers on phrasings like "multi-tenant", "multitenancy", "per-tenant API", "per-tenant frontend", "host `admin.example.com`", "serve per subdomain", "tenant per customer", "wildcard subdomains", "route subdomain to segment". Does NOT cover creating or configuring an individual segment — hand off to the `segment` skill. Does NOT cover writing controllers inside a tenant segment — hand off to the `procedure` skill. Does NOT cover composed-vs-segmented client specifics beyond the flip — hand off to the `rpc` skill.
Скилл учит раскидывать несколько тенантов из одного Next.js приложения через поддомены. В папке описана работа хелпера `multitenant()` из `vovk`, настройка `proxy.ts`, паттерны `overrides` для статических и динамических поддоменов, переход на segmented client в конфиге и локальные поддомены под `localhost`. Грейд B, оценка качества 74 — нет критических ошибок, но процесс документирования неполный (49 баллов). Файл один, токенов 3352. Скилл триггерится на фразах про multi-tenant, per-tenant API, wildcard subdomains и маршрутизацию через segment.
Для тех, кто уже работает с `vovk` и `Next.js`: инструкция рабочая, но не универсальная. Ставить, если вы именно про мультитенантность в этом стеке, иначе будет пусто.
Паттерны многопользовательской архитектуры / multitenancy в Vovk.ts — размещение нескольких клиентов из одного приложения Next.js через маршрутизацию…
Как процесс D 49/100 · Процесс не доведён — слабые места: результат и критерий готовности, входы и предусловия, повторный запуск
Как улучшить
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 1. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда")
Процессный рейтинг: все десять параметров 49/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 5, без проверки текущего состояния
- 55Ошибки и развилки. Развилок: 1
- 60Инструменты и файлы. Используются инструменты (bash, web), но во frontmatter они не объявлены
- 60Шаги. Шагов: 33, расплывчатых формулировок: 7
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 3352 токенов
- low Разделов верхнего уровня: 10. Похоже на несколько доменов в одном скилле
- low Ответ описан самодельной разметкой (28 тегов): типизированный вызов надёжнее
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Длина description 978: рекомендуется 120–800 символов
- +3Формат ответа не описан: модель каждый раз решает сама
- +1Лицензия не указана
- +2Инструкции на одном языке
- +5В description 9 примера фраз-триггеров в кавычках
- +4Структура: 19 заголовков
- +3Пошаговые инструкции: 33 пунктов
- +4Есть примеры (5 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 74.