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

dotnet-init — скилл для Claude Code: настройка .NET-проекта

Разбирает структуру .NET-решения, задаёт вопросы про архитектуру и стек и пишет готовый CLAUDE.md. Пригодится на старте проекта или при подключении набора к существующему коду.

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

Что делает dotnet-init

Скилл смотрит на текущую папку: ищет .slnx или .sln, читает .csproj и по типу SDK понимает, что перед ним — веб-API, Blazor, воркер, библиотека классов или модульный монолит. Если решения нет, спрашивает, что вы собираете, и разворачивает структуру: dotnet new sln -n ProjectName --format slnx, нужный шаблон проекта, папки src/ и tests/, Directory.Build.props с настройками .NET 10.

Дальше идёт опрос про сложность домена, размер команды и границы модулей. Скилл подтягивает architecture-advisor и предлагает вариант с обоснованием: вертикальные срезы, Clean Architecture, DDD или модульный монолит. Отдельно уточняет базу данных, аутентификацию, кеширование, обмен сообщениями и тесты. В существующем проекте соглашения вытаскивает convention-learner.

На выходе — CLAUDE.md в корне, собранный из шаблона templates/ с подставленным именем проекта и выбранным стеком. Если файл уже есть, скилл не перезапишет его молча: предложит объединить, заменить или оставить как есть, а перед правкой сделает копию ./CLAUDE.md.bak. Это и есть главная причина ставить его на живой репозиторий — рукописные разделы не пропадут.

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

  • развернуть структуру .NET-решения с нуля
  • определить тип проекта по файлам решения и .csproj
  • выбрать архитектуру под сложность домена и размер команды
  • собрать CLAUDE.md под конкретный стек без копирования шаблона
  • влить настройки набора в существующий CLAUDE.md, сохранив свои разделы

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

  • /dotnet-init
  • Инициализируй проект для dotnet-claude-kit
  • Сгенерируй CLAUDE.md для этого решения

Как установить dotnet-init

1Через Skills CLI (Vercel)

npx skills add codewithmukesh/dotnet-claude-kit --skill dotnet-init -a claude-code

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

~/.claude/skills/dotnet-init/SKILL.md

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

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

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

migrate Скилл ведёт разработчика через миграции схемы EF Core, смену версии .NET и обновление NuGet. На каждом шаге он готовит план отката и запускает тесты. CX Codex +1 2 800установок plan Составляет план реализации для .NET-задач с учётом архитектуры проекта. Нужен перед изменениями, которые затрагивают несколько слоёв или модулей. CX Codex +1 2 800установок scaffold Создаёт полный набор файлов для новой фичи в .NET 10: endpoint, handler, валидатор, DTO, конфигурацию EF и интеграционные тесты. CX Codex +1 2 800установок build-fix Запускает автономный цикл починки сборки и тестов в проектах на .NET. Скилл разбирает ошибки компилятора, исправляет код и останавливается при регрессиях. CX Codex +1 2 800установок spec Превращает сырую идею фичи в письменную спецификацию с критериями приёмки. Задаёт вопросы раундами, пока не закроет все пробелы. CX Codex +1 2 800установок checkpoint Делает git-коммит с описанием и короткую заметку о состоянии работы, не завершая сессию. Пригодится перед рискованным рефактором. CX Codex +1 2 800установок tdd Скилл ведёт строгий цикл разработки через тестирование в .NET 10: от падающего теста в xUnit v3 до минимального кода и рефакторинга. CX Codex +1 2 800установок wrap-up Скилл сохраняет итоги сессии в .claude/handoff.md и подгружает их при следующем запуске. Пригодится, если работа над задачей не укладывается в один заход. CX Codex +1 2 800установок

Похожие

dotnet-backend-patterns Seth Hobson Скилл для разработки на C# и .NET: паттерны асинхронного кода, внедрение зависимостей, Entity Framework Core, кэширование и тестирование. Нужен, если вы пишете backend API, MCP-серверы или рецензируете код на C#. CX Codex 19 076установок dotnet-design-pattern-review официальный github Проверяет выбранный C#/.NET-код на применение паттернов проектирования и предлагает правки без изменения файлов. Подходит для ревью архитектуры проекта. 11 609установок azure-mgmt-apimanagement-dotnet Microsoft Скилл для management plane операций Azure API Management на .NET: создание сервисов, API, продуктов, подписок и политик через Azure Resource Manager. Пригодится, когда нужно развернуть APIM-инфраструктуру кодом. ★ 3 148звёзд репо analyzing-dotnet-performance dotnet Ищет около 50 антипаттернов производительности в коде на C# и .NET — от лишних аллокаций в строках до блокировок в async. Пригодится при аудите горячих путей перед релизом. CX Codex +1 4 900установок dotnet-core-expert https://github.com/Jeffallan Скилл для Claude Code, который ведёт агента по сборке бэкенда на .NET 8: минимальные API, чистая архитектура, EF Core, CQRS и JWT, от требований до dotnet test. CX Codex +1 4 700установок dotnet-patterns affaan-m Набор архитектурных правил C# и ASP.NET Core для ИИ-ассистентов. Задаёт стандарты написания чистого кода, работы с DI, асинхронностью и обработкой ошибок. CX Codex +1 4 600установок

Рядом в теме «Настройка агента: память, контекст, субагенты»

Всё по теме «Настройка агента: память, контекст, субагенты» →

Вопросы о dotnet-init

Как установить dotnet-init в Claude?

Выполните npx skills add codewithmukesh/dotnet-claude-kit --skill dotnet-init -a claude-code. Скилл окажется в ~/.claude/skills/dotnet-init/SKILL.md.

Что делает dotnet-init?

Определяет тип .NET-проекта, задаёт вопросы про архитектуру и стек, а затем генерирует настроенный CLAUDE.md в корне проекта.

Что будет, если в проекте уже есть CLAUDE.md?

Скилл прочитает его, найдёт разделы, написанные вручную, и спросит, что делать: объединить, перезаписать или оставить файл нетронутым. Перед объединением и перезаписью оригинал уходит в ./CLAUDE.md.bak.

Исходный текст

SKILL.md · MIT
---
name: dotnet-init
description: >
  Interactive project initialization. Detects project type, asks architecture
  questions, and generates a customized CLAUDE.md — no manual template copying.
  Use when: "init project", "setup project", "initialize", "new project setup",
  "generate CLAUDE.md", "configure for dotnet-claude-kit", or starting Claude
  Code on a fresh or existing .NET codebase.
---

# /dotnet-init

## What

Interactively initializes a .NET project for use with dotnet-claude-kit. Detects the project type, asks targeted questions about architecture and tech stack, then generates a fully customized `CLAUDE.md` in the project root.

**No manual template copying required.**

## When

- Starting a new .NET project with Claude Code
- Adding dotnet-claude-kit to an existing project
- "init project", "setup project", "generate CLAUDE.md", "configure for dotnet-claude-kit"

## How

### Step 1: Detect or Ask Project Type

Analyze the current directory to determine if this is an existing or greenfield project:

```
→ Look for .slnx / .sln files
→ If found, scan .csproj files for SDK type:
  - Microsoft.NET.Sdk.Web → web-api or blazor-app
  - Microsoft.NET.Sdk.Worker → worker-service
  - Microsoft.NET.Sdk → class-library
  - Multiple projects with inter-module references → modular-monolith
  - If ambiguous, ask the user

→ If NO solution/project found (greenfield):
  - Ask: "What are you building?"
    - REST API / microservice → web-api
    - Blazor application → blazor-app
    - Background worker / queue processor → worker-service
    - NuGet package / shared library → class-library
    - Multi-module system → modular-monolith
  - Ask: "Project name?"
  - Scaffold the solution structure:
    - dotnet new sln -n ProjectName --format slnx   (modern XML solution format)
    - dotnet new webapi / worker / classlib as appropriate
    - Set up Directory.Build.props with .NET 10 defaults
    - Create src/ and tests/ folder structure
```

### Step 2: Architecture Questionnaire

Load the `architecture-advisor` skill and ask targeted questions:

1. **Domain complexity** — CRUD-heavy, moderate business rules, or rich domain?
2. **Team size** — Solo, small team, or large team?
3. **Module boundaries** — Single deployable or multiple bounded contexts?
4. **Existing patterns** — (existing projects only) Detect conventions via `convention-learner` skill

→ Recommend: VSA, Clean Architecture, DDD, or Modular Monolith with rationale.

### Step 3: Tech Stack Selection

Ask about specific technology choices:

- **Database**: PostgreSQL, SQL Server, SQLite, or none yet
- **Auth**: JWT, OIDC, Cookie, or none yet
- **Caching**: HybridCache, Redis, or none yet
- **Messaging**: Wolverine, MassTransit, or none yet
- **Testing**: Confirm xUnit + Testcontainers defaults

### Step 4: Generate CLAUDE.md

Load the appropriate template from `templates/` as a base, then customize:

- Replace `[ProjectName]` with the actual project/solution name
- Set the chosen architecture
- Configure the tech stack section
- For existing projects: add project-specific conventions detected in Step 2
- For greenfield: add recommended conventions based on architecture choice

**Before writing, check for an existing `CLAUDE.md`. Never overwrite it silently.**

```
→ If ./CLAUDE.md does NOT exist:
  - Write the generated content to ./CLAUDE.md

→ If ./CLAUDE.md ALREADY exists:
  - Read it and identify hand-written / custom sections
    (anything not produced by a kit template)
  - Ask: "You already have a CLAUDE.md. How should I proceed?"
    - Merge (recommended) → keep the user's custom sections, add or refresh the
      kit's architecture, tech-stack, and convention sections in place
    - Overwrite → replace it entirely with the freshly generated file
    - Keep → leave the file untouched and print the generated content so the
      user can copy what they want by hand
  - For Merge and Overwrite: back the original up to ./CLAUDE.md.bak first.
    Never discard user content without a .bak backup.
```

### Step 5: Verify Setup

```
→ Confirm .mcp.json exists or create it (for Roslyn MCP server)
→ For existing projects:
  - Verify the solution file is discoverable
  - Run a quick health check to establish baseline
  - Report: "Project initialized. Run /health-check to see your baseline."
→ For greenfield projects:
  - Verify dotnet build succeeds on the scaffolded solution
  - Report: "Project created. Run /scaffold to add your first feature."
```

**Skills invoked:** `project-setup`, `architecture-advisor`, `convention-learner`
**Agent:** `dotnet-architect`

## Example — Existing Project

```
User: /dotnet-init

Claude: Detected:
  - Solution: MyApp.slnx (3 projects)
  - SDK: Microsoft.NET.Sdk.Web → Web API
  - Database: PostgreSQL (from connection string)
  - Auth: JWT (from appsettings)

  1. Domain complexity? [CRUD-heavy / Moderate / Rich domain]
  > Moderate

  2. Team size? [Solo / Small / Large]
  > Small

  Recommendation: Vertical Slice Architecture
  Generated: ./CLAUDE.md (MyApp + VSA + PostgreSQL + JWT)
  Run /health-check to see your baseline.
```

## Example — Greenfield Project

```
User: /dotnet-init

Claude: No .sln or .csproj found. Let's set up a new project.

  1. What are you building? [REST API / Blazor / Worker / Library / Modular Monolith]
  > REST API

  2. Project name?
  > OrderService

  3. Domain complexity? [CRUD-heavy / Moderate / Rich domain]
  > CRUD-heavy

  Recommendation: Vertical Slice Architecture

  Creating solution...
  → dotnet new sln -n OrderService --format slnx
  → dotnet new webapi -n OrderService.Api -o src/OrderService.Api
  → dotnet new xunit3 -n OrderService.Tests -o tests/OrderService.Tests
  → Directory.Build.props with .NET 10 defaults
  → Generated: ./CLAUDE.md (OrderService + VSA + scaffold-ready)

  Run /scaffold to add your first feature.
```

## Example — Existing Project With a CLAUDE.md

```
User: /dotnet-init

Claude: Detected:
  - Solution: MyApp.slnx (3 projects) → Web API
  - Found an existing CLAUDE.md (custom "Deployment" and "Team conventions" sections)

  You already have a CLAUDE.md. How should I proceed?
  [Merge (recommended) / Overwrite / Keep]
  > Merge

  → Backed up original to ./CLAUDE.md.bak
  → Kept your Deployment + Team conventions sections
  → Refreshed architecture (VSA), tech-stack (PostgreSQL + JWT), and convention sections
  Generated: ./CLAUDE.md
  Run /health-check to see your baseline.
```

## Related

- `/plan` — Plan before building features
- `/health-check` — Assess project health after init
- `/scaffold` — Scaffold features using the chosen architecture

© codewithmukesh · MIT · codewithmukesh/dotnet-claude-kit

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

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

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