Allium — скилл

Язык поведенческих спецификаций и набор скиллов: агент ведет .allium-файл рядом с кодом, сверяет с ним реализацию и генерирует тесты

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

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

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

  • Хук в Claude Code запускает allium check после каждой правки файлов
  • Агенты tend и weed сами правят спецификацию и могут менять код при сведении расхождений
  • Скилл propagate создает файлы тестов в проекте
Все причины и проверки

juxt/allium

Установка

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

npx skillfoxx add skills/allium

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

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

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

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

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

  • Хук в Claude Code запускает allium check после каждой правки файлов
  • Агенты tend и weed сами правят спецификацию и могут менять код при сведении расхождений
  • Скилл propagate создает файлы тестов в проекте

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

Что делает

Allium — формальный язык для описания того, что должна делать система, без указаний, как она устроена внутри. Агент ведет рядом с кодом файл .allium: в нем сущности и правила, у каждого правила есть событие when, предусловия requires и результат ensures. Из-за такой структуры противоречия видны сами: два правила с несовместимыми условиями выдают конфликт, и модели не нужно замечать его в прозе. В пакет входят шесть рабочих скиллов. /allium служит точкой входа и по цели вроде «добавь подарочные карты» гонит весь цикл до сходимости. /elicit строит спецификацию в диалоге о новой функции, /distill вытягивает ее из существующего кода и отбрасывает детали реализации. /tend правит спецификацию при изменении требований, /weed ищет расхождения между спецификацией и кодом и сводит их в любую сторону, /propagate генерирует из спецификации тесты. Есть и скилл witness, который независимо подтверждает, что цикл действительно сошелся, а тесты не ослабляли. Для Claude Code плагин приносит еще автономных агентов tend и weed в отдельном контексте и хук, который после каждой правки запускает allium check. Отдельный CLI проверяет структуру спецификации: прослеживает поток данных между правилами и находит жизненные циклы без конечного состояния.

Для кого. Для разработчиков и архитекторов, которые ведут с агентами долгие проекты и хотят зафиксировать намерение, а не только код.

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

  • К десятому-двадцатому промпту агент теряет исходный замысел, и нужен документ, который переживает сессии
  • В проекте есть код без описания поведения, и по нему надо восстановить спецификацию, а заодно найти неявные баги
  • Новая функция вроде сброса пароля или подарочных карт должна сначала получить правила, а уже потом реализацию
  • Нужны интеграционные и сквозные тесты, которые следуют из заданного поведения, а не из текущей реализации
  • Спецификация и код разошлись, и нужно понять, где ошибка: в коде или в самой спецификации

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

  • Нужно описать схему базы данных, дизайн API или интерфейс: язык намеренно исключает детали реализации
  • Задача разовая и мелкая, например поправить стиль кнопки: для нее цикл со спецификацией будет лишним
  • Нужны модульные тесты внутренних функций: из спецификации получаются интеграционные и сквозные тесты
  • Вы пользуетесь только автодополнением кода без агента: в README такие помощники прямо исключены

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

/allium добавь в магазин подарочные карты и доведи спецификацию, тесты и код до согласия

Ограничения

CLI ставится отдельно (brew tap juxt/allium && brew install allium или cargo install allium-cli). Без него скиллы работают по справочнику языка, но формальной проверки каждой правки не будет. Автономные агенты tend и weed доступны в Claude Code и GitHub Copilot, автоматическая проверка после правок есть у Claude Code из коробки, в Cursor, Windsurf и Aider ее подключают рецептом, а в остальных редакторах через git-хук. На больших кодебазах распутывание кода в спецификацию может потребовать нескольких проходов.

Как отключить. В Claude Code выполните /plugin uninstall allium. Если ставили через npx skills, удалите папку allium и соседние скиллы из каталога скиллов агента. Файлы .allium в проекте остаются, это обычный текст.

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

Как поставить Allium в Claude Code?

Через маркетплейс JUXT: /plugin marketplace add juxt/claude-plugins, затем /plugin install allium. После этого команда /allium запускает точку входа, она осмотрит проект и предложит следующий шаг.

Как поставить Allium в Codex?

Командами codex plugin marketplace add juxt/claude-plugins и codex plugin add allium@juxt-plugins. В Codex работают скиллы, а автономных агентов нет, проверка идет через git-хук или вручную командой allium check.

Зачем держать спецификацию рядом с кодом, если код и так источник истины?

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

Чем Allium отличается от обычных требований в markdown?

У markdown нет механизма, который выявил бы противоречие между «пользователь должен быть авторизован» и «гостевой заказ разрешен». В Allium правила имеют формальные условия и результаты, поэтому конфликт условий видно из структуры.

Нужен ли CLI, чтобы пользоваться скиллами?

Нет, без него скиллы опираются на справочник языка. С CLI каждая правка проверяется формально, а результаты сразу попадают в разговор с агентом.

Обсуждение

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

Скиллы

Два скилла для разработки от спецификации: /spec задает вопросы и сохраняет документ в specs/, /spec-impl реализует утвержденную спецификацию по шагам

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

Плагин для Claude Code: разработка через спецификацию по одному файлу SPEC.md, цикл из семи команд без под-агентов

ПлагинРасширенный доступ1,2 тыс.Звезды репозитория

Готовая обвязка для Claude Code и Codex: разработка по спецификации, TDD, память между сессиями, проверки качества и контрольные точки для человека

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

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

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

Claude Code Skills and Agents

Claude Code Skills & Agents

Плагин Claude Code с набором скиллов и субагентов: глубокое исследование, генерация картинок, работа с GitHub, разбор кода и переключение моделей

ПлагинШирокий доступ1,7 тыс.Звезды репозитория

Softaworks Agent Toolkit

Softaworks Agent Skills

Маркетплейс скиллов, субагентов и команд для кодовых агентов: разработка, документация, планирование и рабочая коммуникация

ПлагинРасширенный доступ2,6 тыс.Звезды репозитория

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

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

ЗаписьОфициальныйЗвезды репозиторияГлавное отличие
Allium (эта запись)нет519
Spec Kitнет142 487ведет разработку от спецификации к плану и задачам, а Allium держит формальные правила поведения и сверяет их с кодом
OpenSpecнет72 778хранит предложения изменений и требования в markdown, а Allium описывает поведение формальным языком с проверкой CLI

Коротко о README

README объясняет идею цикла: собрать контекст через /elicit или /distill, действовать через /propagate и реализацию, проверить тестами и /weed, затем повторять до сходимости. Дальше идут матрица поддерживаемых редакторов с уровнями интеграции, таблица скиллов, разделы о том, почему спецификация лучше прямого чтения кода и markdown-требований, и примеры правил на языке Allium для сброса пароля и автоматического размыкателя.

Бейдж для README

Исходный SKILL.md

---
name: allium
description: Give your AI agents something more useful than a prompt. Velocity through clarity.
version: 3
auto_trigger:
  - file_patterns: ["**/*.allium"]
  - keywords: ["allium", "allium spec", "allium specification", ".allium file"]
---

# Allium

Allium is a formal language for capturing software behaviour at the domain level. It sits between informal feature descriptions and implementation, providing a precise way to specify what software does without prescribing how it's built.

The name comes from the botanical family containing onions and shallots, continuing a tradition in behaviour specification tooling established by Cucumber and Gherkin.

Key principles:

- Describes observable behaviour, not implementation
- Captures domain logic that matters at the behavioural level
- Generates integration and end-to-end tests (not unit tests)
- Forces ambiguities into the open before implementation
- Implementation-agnostic: the same spec could be implemented in any language

Allium does NOT specify programming language or framework choices, database schemas or storage mechanisms, API designs or UI layouts, or internal algorithms (unless they are domain-level concerns).

## Routing table

| Task | Tool | When |
|------|------|------|
| Writing or reading `.allium` files | this skill | You need language syntax and structure |
| Building a spec through conversation | `elicit` skill | User describes a feature or behaviour they want to build |
| Extracting a spec from existing code | `distill` skill | User has implementation code and wants a spec from it |
| Modifying an existing spec | `tend` skill | User wants targeted changes to `.allium` files |
| Checking spec-to-code alignment | `weed` skill | User wants to find or fix divergences between spec and implementation |
| Generating tests from a spec | `propagate` skill | User wants to generate tests from a specification |

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

Foxx AIAllium
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.