# Madspec Policy Engine

> Операционный навык для жизненного цикла проектных правил в MADSpec. Использовать, когда нужно показать, предложить, применить, объяснить или проверить проектные правила через `madspec policy ...`.

- Skill: `madteacher/madspec-policy-engine` (Agent Skill)
- Install (CLI): `npx skillmds@latest add madteacher/madspec-policy-engine`
- Raw SKILL.md: https://api.skillmd.com/api/skills/madteacher/madspec-policy-engine/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: MADTeacher (https://skillmd.com/u/madteacher)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/madteacher/madspec-policy-engine

---


# `madspec-policy-engine`

## Когда использовать

Используй этот навык, когда пользователь просит:

- показать текущие проектные правила
- предложить или изменить правило проекта
- вывести устаревшее правило из действия
- объяснить, почему правило влияет на процесс
- проверить состояние ветки через `madspec policy validate`

## Язык и стиль

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

## Канонический порядок работы

1. Прочитай текущее состояние через `madspec policy show --json-output`.
2. Если нужно изменить правила, сначала создай предложение через `madspec policy propose`.
3. Покажи пользователю предварительное сравнение и предупреждения.
4. Применяй изменение только через `madspec policy apply` или `madspec policy set`.
5. После применения изменения при необходимости запускай `madspec policy validate`.

## Источник истины

- `.madspec/system/policy/state.json`
- `.madspec/system/policy/proposals.jsonl`
- `.madspec/system/policy/history.jsonl`

`policy.md` и разделы с правилами внутри производных артефактов ветки — это производные представления.

## Ограничения E1

- Слой правил общий для всего проекта и не поддерживает локальные переопределения на уровне ветки
- Принудительно проверяются только поддержанные инварианты процесса
- Неподдерживаемый `ruleType` автоматически нормализуется в рекомендацию с режимом `guideline`
- Системные правила являются `read-only` и не должны изменяться через пользовательский процесс

## Полезные команды

```bash
madspec policy show --json-output
madspec policy propose --policy-id ... --title ... --description ...
madspec policy apply --proposal-id ...
madspec policy deprecate --policy-id ...
madspec policy validate --stage mvp.plan --toon-output
madspec policy explain --policy-id ... --json-output
```

