microsoft-extensions-configuration · wshaddix — скилл для Claude Code: настройка
Скилл для работы с Microsoft.Extensions.Configuration: привязка настроек к классам, валидация на старте и разбор IOptions.
npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-configuration -a claude-codeЧто делает microsoft-extensions-configuration
Скилл описывает паттерны конфигурации в .NET-приложениях. Он подсказывает агенту, как связать секцию из appsettings.json с типизированным классом через BindConfiguration, как включить проверку атрибутами и как написать собственный валидатор на IValidateOptions<T>.
Отдельная тема — валидация на старте. Без .ValidateOnStart() проверки срабатывают только при первом обращении к настройкам, то есть ошибка в строке подключения всплывёт уже в бою. Скилл разбирает порядок: сначала атрибуты, потом кастомные валидаторы, а все ошибки собираются в один список.
Внутри есть примеры валидаторов с зависимостями из DI — логгером и окружением. Материал обрывается на проверке настроек базы данных, так что по остальным сценариям опирайтесь на то, что успели прочитать. Для работы нужен проект на .NET с пакетом Microsoft.Extensions.Options.
Какие задачи решает
- связать секцию appsettings.json с типизированным классом настроек
- проверить конфигурацию на старте и упасть с понятной ошибкой
- написать валидатор с доступом к логгеру и окружению через DI
- разобраться, чем отличаются IOptions, IOptionsSnapshot и IOptionsMonitor
- собрать все ошибки конфигурации в один отчёт вместо падения в глубине логики
Примеры запросов агенту
- покажи, как забиндить SmtpSettings из appsettings.json и провалидировать на старте
- напиши IValidateOptions для DatabaseSettings с проверкой строки подключения
- почему моя валидация не срабатывает при запуске приложения?
Как установить microsoft-extensions-configuration
1Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-configuration -a claude-code2Вручную: положить файлы
~/.claude/skills/microsoft-extensions-configuration/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/microsoft-extensions-configuration/
1Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-configuration -a codex2Вручную: положить файлы
.agents/skills/microsoft-extensions-configuration/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-configuration -a cursor2Вручную: положить файлы
.cursor/skills/microsoft-extensions-configuration/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install wshaddix/dotnet-skills microsoft-extensions-configuration2Вручную: положить файлы
.github/skills/microsoft-extensions-configuration/SKILL.md1Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-configuration -a gemini-cli2Командой платформы
gemini skills install https://github.com/wshaddix/dotnet-skills --path skills/microsoft-extensions-configurationВручную: положить файлы
.devin/skills/microsoft-extensions-configuration/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-configuration -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора5
Другие версии microsoft-extensions-configuration
Похожие
Рядом в теме «Бэкенд и API»
Всё по теме «Бэкенд и API» →Вопросы о microsoft-extensions-configuration
Как установить microsoft-extensions-configuration в Claude?
Выполните npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-configuration -a claude-code. После этого файл скилла окажется в ~/.claude/skills/microsoft-extensions-configuration/SKILL.md.
Что делает этот скилл?
Даёт агенту паттерны Microsoft.Extensions.Configuration: привязку настроек, валидацию через Data Annotations и IValidateOptions, работу с IOptions в сервисах.
Зачем нужна валидация на старте?
Чтобы приложение падало сразу с понятным сообщением, а не через десять минут работы в глубине бизнес-логики. Для этого к регистрации опций добавляют .ValidateOnStart().