# distill

Разбирает существующий код и вытаскивает из него поведенческую спецификацию на языке Allium. Пригодится, когда надо задокументировать, что система делает на уровне домена.

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

## Что делает

Скилл проходит по кодовой базе и отделяет доменные решения от деталей реализации. Код говорит, как всё устроено; спецификация фиксирует, что система делает и почему это важно. Отсюда два рабочих вопроса: зачем это заказчику и можно ли сделать иначе, оставаясь той же системой. Если ответ «можно» — деталь уходит в реализацию, если «нельзя» — попадает в спецификацию.

Работает в двух режимах. В интерактивном скилл спрашивает прямо в разговоре и ждёт ответа. В неинтерактивном он идёт как субагент `distill`, например внутри цикла Allium, где спросить некого: тогда спорные решения — намеренное поведение или случайное, кто актор, какие процессы брать — он записывает в спецификацию как `open question` и перечисляет их в финальном выводе.

Перед разбором скилл выясняет границы: какой кусок кодовой базы описываем, что исключаем (легаси, инфраструктура, устаревшие пути, эксперименты под флагами), кто владеет спецификацией. В шапке `.allium`-файла он документирует включённое и исключённое, а первой строкой ставит маркер версии языка. В монорепозиториях с несколькими системами без этого шага спецификация расползётся на чужие домены.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add juxt/allium --skill distill -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add juxt/allium --skill distill -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add juxt/allium --skill distill -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install juxt/allium distill
```

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

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add juxt/allium --skill distill -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/juxt/allium --path skills/distill
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add juxt/allium --skill distill -a opencode
```

### Claude.ai

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

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

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

## Примеры запросов агенту
- Извлеки спецификацию Allium из сервиса планирования интервью, аутентификацию и аналитику исключи
- Прогони distill по этому репозиторию и запиши неоднозначные решения как open question
- Собери спецификацию поведения для модуля заказов, легаси V1 не трогай

## Похожие
- [distill-memory](https://affpapa.org/nevibecode/skills/distill-memory.md) — скилл · 733 установки
- [feature-forge](https://affpapa.org/nevibecode/skills/feature-forge.md) — скилл · 4200 установок
- [speckit-specify](https://affpapa.org/nevibecode/skills/speckit-specify.md) — скилл · 2600 установок
- [prompt-optimizer](https://affpapa.org/nevibecode/skills/daymade-prompt-optimizer.md) — скилл · 2100 установок
- [documenting-legacy-codebases](https://affpapa.org/nevibecode/skills/documenting-legacy-codebases.md) — скилл · 17900 установок
- [spark](https://affpapa.org/nevibecode/skills/spark.md) — скилл · 541 установка

## Другие версии с тем же именем
- [distill · aladicf](https://affpapa.org/nevibecode/skills/aladicf-distill.md) — 548 установок

Из того же набора: [juxt/allium](https://affpapa.org/nevibecode/by/juxt/allium.md) — 6 карточек

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

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