empty-state — скилл для Claude Code: пустые экраны и ошибки
Скилл для проектирования пустых состояний: нулевые данные, пустая выдача поиска, отказы в доступе и ошибки. Пригодится, когда экран встречает пользователя надписью «Нет элементов».
npx skills add aladicf/better-web-ui --skill empty-state -a claude-codeЧто делает empty-state
Скилл разбирает, с чем именно вы имеете дело: первое использование, пустой результат фильтра, очищенный список, ограничение доступа или сбой загрузки внутри уже открытого экрана. Отдельно он берётся за страницы уровня маршрута — 401, 403, 404, 429, 500 и 503. Для каждого случая свой тон и свой путь восстановления: повтор для временного сбоя, вход для истёкшей сессии, запрос доступа при 403, главная или поиск при 404.
Внутри — аудит мёртвого интерфейса. Скилл проверяет, не торчат ли на пустом экране вкладки, фильтры, сортировка и боковые панели, которые пока ничего не делают, и предлагает их убрать. Структура состояния собирается из пяти частей: зачем эта область, чем она полезна, главный призыв к действию, необязательный шаблон или пример и что из неактивных элементов спрятать.
Перед началом работы скилл требует загрузить $frontend-design — там лежат принципы дизайна и протокол сбора контекста. Если контекста по проекту ещё нет, придётся сначала загрузить $setup. Это не про онбординг в целом: для активации, первых запусков и туров есть отдельный скилл onboard.
Какие задачи решает
- объяснить пользователю, что появится в пустом разделе
- дать выход из пустой выдачи поиска или фильтров
- убрать неработающие вкладки и панели с пустого экрана
- подобрать путь восстановления под конкретный код ошибки
- сменить тон для очищенного списка вместо первого запуска
Примеры запросов агенту
- /empty-state список проектов
- /empty-state страница 404
- /empty-state пустая выдача поиска
Как установить empty-state
1Через Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill empty-state -a claude-code2Вручную: положить файлы
~/.claude/skills/empty-state/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/empty-state/
1Через Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill empty-state -a codex2Вручную: положить файлы
.agents/skills/empty-state/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill empty-state -a cursor2Вручную: положить файлы
.cursor/skills/empty-state/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install aladicf/better-web-ui empty-state2Вручную: положить файлы
.github/skills/empty-state/SKILL.md1Через Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill empty-state -a gemini-cli2Командой платформы
gemini skills install https://github.com/aladicf/better-web-ui --path skills/empty-stateВручную: положить файлы
.devin/skills/empty-state/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill empty-state -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о empty-state
Как установить empty-state в Claude?
Выполните npx skills add aladicf/better-web-ui --skill empty-state -a claude-code. Файл скилла окажется по пути ~/.claude/skills/empty-state/SKILL.md.
Что делает empty-state?
Проектирует и улучшает пустые состояния: нулевые данные, пустые результаты поиска, ограничения доступа и ошибки. Разбирает тип состояния, убирает неактивные элементы интерфейса и подбирает подходящий призыв к действию.
Чем empty-state отличается от onboard?
empty-state работает только с поверхностями без данных и без контента. Всё, что касается активации, первых запусков, туров и планирования внедрения, отдано скиллу onboard.
Исходный текст
SKILL.md · MIT
--- name: empty-state description: Design focused empty states for zero-data, no-results, permission, and error situations with clear value framing, strong CTAs, and less dead chrome. Use when the user mentions blank pages, zero-data screens, no results, permission states, or dead controls—not broader onboarding strategy. metadata: argument-hint: "[target]" --- Design or improve empty states so blank areas become useful product moments that teach, orient, and move users toward the next step. This skill is specifically for zero-data and no-content surfaces. Use `onboard` for broader activation strategy, aha moments, first-run education, tours, and adoption planning. ## MANDATORY PREPARATION Users start this workflow with `/empty-state`. Once this skill is active, load $frontend-design — it contains design principles, anti-patterns, and the **Context Gathering Protocol**. Follow that protocol before proceeding — if no design context exists yet, you MUST load $setup first. Additionally gather: the value users should reach from this surface. --- ## Assess the Empty State Understand what kind of absence you are dealing with: 1. **State type**: - First use / never created content - No results from search or filters - Previously cleared content - Permission/access restriction - Error while loading content inside an existing surface - Route-level or full-page failure such as 401, 403, 404, 429, 500, or 503 2. **User question**: - What is this area for? - Why should I care? - What should I do next? 3. **Dead chrome audit**: - Are tabs, filters, sidebars, sort controls, or empty toolbars visible even though they do nothing yet? If any of these are unclear from the codebase, ask the user directly to clarify what you cannot infer. **CRITICAL**: An empty state is often the user's first impression of a feature. Treat it like a real screen, not a fallback. ## Plan the Empty State Consult the [empty-state patterns](../frontend-design/reference/empty-state-patterns.md) for the main empty-state types, full-page error variants, CTA rules, and chrome-reduction guidance. Design the state around this structure: - **What this area is for** - **Why it’s useful** - **Primary CTA** - **Optional template/example** - **What inactive chrome should disappear for now** ## Build Better Empty States ### First-Use States - Explain what will appear here - Frame the value clearly - Offer the clearest starting action - Consider a starter template or sample data shortcut ### No-Results States - Explain that the current query/filter produced nothing - Offer a recovery action like clearing filters or broadening search - Preserve enough context so users understand what happened ### Cleared-Content States - Use a lighter tone than first use - Offer a simple path back to creation - Add undo or recovery when appropriate ### Permission States - Explain the access limitation plainly - Say who can grant access or what role is needed - Offer a request-access path when possible ### Error States - State what failed in simple language - Match the recovery path to the failure type: retry for transient failures, sign-in for expired sessions, request access for 403, home/search for 404, and status/support for broader service failures - Add support/help path when needed ### Reduce Dead Chrome - Hide tabs, filters, sidebars, or sort controls that provide no value before content exists - Keep the screen focused on the message and the next step ### Use Visual Interest Carefully - Illustration or icon is optional, but helpful when it supports comprehension or attention - The CTA should still be stronger than the decoration **NEVER**: - Leave users staring at “No items” with no next step - Keep inactive controls visible just because the full UI normally has them - Let the illustration overpower the message and CTA - Use the same empty-state tone for first use, permissions, and errors - Use a generic catch-all error page when a more specific recovery path is available ## Verify Empty-State Quality - **Clarity**: Does the state explain what belongs here? - **Value framing**: Does it explain why the user should care? - **Next step**: Is the CTA obvious? - **Chrome cleanup**: Is inactive UI removed? - **Appropriate tone**: Does the state match first use / no results / permission / error? Remember: The best empty states feel like helpful product design, not like the app ran out of things to say.
© aladicf · MIT · aladicf/better-web-ui