# principle-experience-first

Скилл-принцип, который смещает приоритет при продуктовых и UX-решениях в сторону пользователя. Пригодится, когда спорят о скоупе фич.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 5100 установок · ★ 2737
- Автор: backnotprop
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/backnotprop/pstack/tree/HEAD/skills/principle-experience-first/SKILL.md
- Обновлён: 2026-10-24
- HTML: https://affpapa.org/nevibecode/skills/principle-experience-first

## Что делает

Скилл задаёт одно правило: когда удобство реализации конфликтует с тем, что почувствует пользователь, выбирать нужно пользователя. Каждая фича, контрол и опция должны быть оправданы, а три отполированные возможности лучше десяти сырых.

Пользователь здесь не только конечный юзер интерфейса. Для библиотеки или внутреннего API это коллега, который её импортирует. Тот, кто будет поддерживать код после вас, тоже пользователь. Поэтому скилл требует объяснять влияние решений с их позиции.

Отдельно выделен принцип «сначала прототип»: дизайн-решения дешевле проверять на throwaway HTML, чем в продакшен-коде. Есть и указание про основной цикл: каждая фича либо обслуживает центральный рабочий процесс, либо не мешает.

Во `frontmatter` стоит `disable-model-invocation: true`, так что сам по себе скилл не сработает — его нужно вызывать вручную, когда возникает продуктовый или UX-трейдофф.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add backnotprop/pstack --skill principle-experience-first -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/principle-experience-first/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/principle-experience-first/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add backnotprop/pstack --skill principle-experience-first -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/principle-experience-first/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add backnotprop/pstack --skill principle-experience-first -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/principle-experience-first/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install backnotprop/pstack principle-experience-first
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/principle-experience-first/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add backnotprop/pstack --skill principle-experience-first -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/backnotprop/pstack --path skills/principle-experience-first
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/principle-experience-first/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add backnotprop/pstack --skill principle-experience-first -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/backnotprop/pstack/tree/HEAD/skills/principle-experience-first/SKILL.md

## Когда брать
- определить, чем пожертвовать при урезании скоупа
- не дать удобству кода победить удобство пользователя
- учесть интересы того, кто будет поддерживать код
- проверить дизайн-гипотезу до продакшен-кода

## Примеры запросов агенту
- Примени principle-experience-first к выбору между двумя вариантами фичи
- Какие фичи стоит вырезать, чтобы основной сценарий стал лучше?
- Оцени это решение с точки зрения пользователя библиотеки

## Похожие
- [designing-user-experience](https://affpapa.org/nevibecode/skills/designing-user-experience.md) — скилл · 458 установок
- [experience-map](https://affpapa.org/nevibecode/skills/experience-map.md) — скилл · 2100 установок
- [tailwindcss-mobile-first](https://affpapa.org/nevibecode/skills/tailwindcss-mobile-first.md) — скилл · 2100 установок
- [design-first-ui-prompting](https://affpapa.org/nevibecode/skills/design-first-ui-prompting.md) — скилл · 1800 установок
- [image-first-grid-layout](https://affpapa.org/nevibecode/skills/image-first-grid-layout.md) — скилл · 1400 установок
- [mobile-first-design](https://affpapa.org/nevibecode/skills/mobile-first-design.md) — скилл · 857 установок

Из того же набора: [backnotprop/pstack](https://affpapa.org/nevibecode/by/backnotprop/pstack.md) — 44 карточки

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
