К основному содержанию
скилл CX Codex

microsoft-extensions-dependency-injection — скилл для Claude Code: DI

Скилл для наведения порядка в регистрациях сервисов .NET: разбивает Program.cs на расширения и помогает выбрать время жизни сервиса.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-dependency-injection -a claude-code
Открыть на GitHub

Что делает microsoft-extensions-dependency-injection

Скилл описывает, как группировать регистрации в Microsoft.Extensions.DependencyInjection через методы-расширения IServiceCollection. Вместо длинного Program.cs вы получаете цепочку вида AddUserServices().AddOrderServices().AddEmailServices(), где каждый метод отвечает за свой кусок. Заодно разбираются времена жизни Singleton, Scoped и Transient, декораторы и перехват сервисов.

Внутри — соглашения по именам (Add{Feature}Services(), Configure{Feature}(), Use{Feature}() для middleware) и по раскладке файлов: {Feature}ServiceCollectionExtensions.cs лежит рядом с сервисами этой фичи. Отдельный блок про тесты: конфигурацию из продакшена переиспользуют в WebApplicationFactory, подменяя только то, что отличается — например, отправитель писем или платёжный процессор.

Главная выгода проявляется в команде: меньше конфликтов при merge и видимые границы между подсистемами. Но у расширений есть порядок вызовов, и если один модуль зависит от другого, вызывать AddEmailServices() до AddOrderServices() придётся вам — скилл лишь напоминает, что это ответственность вызывающего.

Какие задачи решает

  • разбить разросшийся Program.cs на читаемые блоки регистраций
  • выбрать между Singleton, Scoped и Transient без ошибок
  • переиспользовать продакшен-конфигурацию DI в интеграционных тестах
  • спрятать внутренние зависимости библиотеки за одним методом Add*
  • договориться в команде об именах и файлах для регистраций

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

  • Разложи регистрации сервисов в Program.cs по методам-расширениям Add*Services()
  • Проверь времена жизни этих сервисов и скажи, где Scoped превратится в captive dependency
  • Помоги подменить IEmailSender на тестовый двойник в WebApplicationFactory

Как установить microsoft-extensions-dependency-injection

1Через Skills CLI (Vercel)

npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-dependency-injection -a claude-code

2Вручную: положить файлы

~/.claude/skills/microsoft-extensions-dependency-injection/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/microsoft-extensions-dependency-injection/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора5

Похожие

dependency-injection-patterns Aaronontheweb Скилл учит раскладывать регистрации сервисов в ASP.NET Core по расширениям IServiceCollection, чтобы Program.cs не распухал. CX Codex +1 668установок dependency-injection codewithmukesh Скилл внедряет паттерны dependency injection для .NET 10: выбор времён жизни сервисов, keyed services, декораторы через Scrutor и защиту от captive dependency. CX Codex +1 2 800установок microsoft-extensions-configuration Aaronontheweb Скилл для Claude и других ИИ-редакторов: подсказывает, как привязывать конфигурацию из appsettings.json к типизированным классам и проверять её на старте приложения. CX Codex +1 577установок golang-dependency-injection samber Помогает организовать внедрение зависимостей в Go-проектах: от ручных конструкторов до библиотек wire, dig, fx и do. CX Codex +1 39 500установок spring-boot-dependency-injection giuseppe-trisciuoglio Скилл внедряет паттерны внедрения зависимостей через конструктор в Spring Boot. Он помогает избавиться от field injection и настроить выбор бинов через @Primary и @Qualifier. CX Codex +1 3 800установок migrate-static-to-wrapper dotnet Меняет статические вызовы в C# на инжектируемые абстракции: DateTime.UtcNow на TimeProvider, File.* на IFileSystem. Работает в границах одного файла, проекта или неймспейса. CX Codex +1 3 300установок

Рядом в теме «Бэкенд и API»

Всё по теме «Бэкенд и API» →

Вопросы о microsoft-extensions-dependency-injection

Как установить microsoft-extensions-dependency-injection в Claude?

Через skills CLI: npx skills add wshaddix/dotnet-skills --skill microsoft-extensions-dependency-injection -a claude-code. После этого файл скилла лежит в ~/.claude/skills/microsoft-extensions-dependency-injection/SKILL.md.

Что делает этот скилл?

Показывает, как организовать регистрации сервисов в .NET через методы-расширения IServiceCollection, и разбирает времена жизни сервисов, декораторы и перехват.

С какими платформами он совместим?

Кроме Claude есть установка для Codex, Cursor, GitHub Copilot, Gemini CLI и OpenCode — у каждой своя команда и путь к файлу скилла.

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой