# azure-pipelines-validator

Проверяет azure-pipelines.yml локальными скриптами: синтаксис, безопасность, best practices. Пригодится перед мержем пайплайна.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 637 установок · ★ 327
- Автор: akin-ozer
- Лицензия: Apache-2.0 · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/akin-ozer/cc-devops-skills/tree/HEAD/devops-skills-plugin/skills/azure-pipelines-validator/SKILL.md
- Обновлён: 2026-07-26
- HTML: https://affpapa.org/nevibecode/skills/azure-pipelines-validator

## Что делает

Скилл запускает bash-скрипт, который разбирает YAML Azure DevOps и выдаёт отчёт по трём корзинам: синтаксис, безопасность, best practices. Каждое замечание помечено severity — Blocking, Warning, Info — и rule ID, например `hardcoded-secret` или `task-version-zero`. Рядом с находкой идёт короткая рекомендация по исправлению.

Есть режимы: полный прогон, только синтаксис (`--syntax-only`), только best practices (`--best-practices`), только безопасность (`--security-only`) и строгий режим `--strict`, где предупреждения валят проверку. Коды возврата простые: 0 — прошло, 1 — блокирующие проблемы, 2 — неверный вызов. Пути скрипт берёт от корня репозитория через `git rev-parse --show-toplevel`; если корень не определился, он останавливается и просит указать путь, а не угадывает.

Для работы нужны `bash` и `python3`. Если `yamllint` не установлен, проверка не падает — lint просто пропускается с пометкой в отчёте. Без Python скриптовая валидация блокируется, остаётся ручной разбор YAML. Генерацией пайплайнов с нуля скилл не занимается — для этого есть `azure-pipelines-generator`.

## Требования
- Работает с: Azure

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add akin-ozer/cc-devops-skills --skill azure-pipelines-validator -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add akin-ozer/cc-devops-skills --skill azure-pipelines-validator -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add akin-ozer/cc-devops-skills --skill azure-pipelines-validator -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install akin-ozer/cc-devops-skills azure-pipelines-validator
```

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

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add akin-ozer/cc-devops-skills --skill azure-pipelines-validator -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/akin-ozer/cc-devops-skills --path devops-skills-plugin/skills/azure-pipelines-validator
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add akin-ozer/cc-devops-skills --skill azure-pipelines-validator -a opencode
```

### Claude.ai

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

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/akin-ozer/cc-devops-skills/tree/HEAD/devops-skills-plugin/skills/azure-pipelines-validator/SKILL.md

## Когда брать
- проверить `azure-pipelines.yml` перед мержем
- найти хардкод паролей и секретов в пайплайне
- поймать синтаксические ошибки в YAML до запуска сборки
- прогнать security-скан пайплайна в CI
- проверить пайплайн на best practices: версии задач, кэш, displayName

## Примеры запросов агенту
- Проверь мой `azure-pipelines.yml` на синтаксис и безопасность
- Запусти security-скан этого Azure DevOps пайплайна
- Почему падает этот YAML? Прогони валидатор в строгом режиме

## Похожие
- [azure-pipelines](https://affpapa.org/nevibecode/skills/azure-pipelines.md) — скилл · 430 установок
- [azure-devops](https://affpapa.org/nevibecode/skills/devops-skills-azure-devops.md) — скилл · 325 установок
- [azure-kubernetes-automatic-readiness](https://affpapa.org/nevibecode/skills/azure-kubernetes-automatic-readiness.md) — скилл · ★ 3148
- [azure-keyvault](https://affpapa.org/nevibecode/skills/azure-keyvault.md) — скилл · 321 установка
- [azure-key-vault](https://affpapa.org/nevibecode/skills/azure-key-vault.md) — скилл · 309 установок
- [azure-developer-cli](https://affpapa.org/nevibecode/skills/azure-developer-cli.md) — скилл · 32 установки

Из того же набора: [akin-ozer/cc-devops-skills](https://affpapa.org/nevibecode/by/akin-ozer/cc-devops-skills.md) — 28 карточек

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

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