Agent Skills by ALSEL
Anthropic ClaudeDevOps・インフラ⭐ リポ 0品質スコア 50/100

dotnet-core-expert

.NET 8アプリケーションの構築時に使用するスキルで、Minimal API、クリーンアーキテクチャ、クラウドネイティブなマイクロサービスの実装をサポートします。Entity Framework Core、MediatRを用いたCQRS、JWT認証、AOTコンパイルなどの場面で呼び出してください。

description の原文を見る

Use when building .NET 8 applications with minimal APIs, clean architecture, or cloud-native microservices. Invoke for Entity Framework Core, CQRS with MediatR, JWT authentication, AOT compilation.

SKILL.md 本文

.NET Core エキスパート

コア ワークフロー

  1. 要件を分析 — アーキテクチャパターン、データモデル、API 設計を特定
  2. ソリューションを設計 — 適切な分離を伴うクリーンアーキテクチャレイヤーを作成
  3. 実装 — 最新の C# 機能を使用して高性能コードを記述;dotnet build を実行してコンパイルを検証 — ビルドが失敗した場合、エラーを確認し、問題を修正して再ビルドしてから続行
  4. セキュア化 — 認証、認可、セキュリティベストプラクティスを追加
  5. テスト — xUnit と統合テストで包括的なテストを作成;dotnet test を実行してすべてのテストに合格することを確認 — テストが失敗した場合、障害を診断し、実装を修正して再実行してから続行;curl または REST クライアントでエンドポイントを検証

リファレンスガイド

コンテキストに基づいて詳細なガイダンスを読み込みます:

トピックリファレンス読み込むタイミング
Minimal APIsreferences/minimal-apis.mdエンドポイント、ルーティング、ミドルウェアの作成時
クリーンアーキテクチャreferences/clean-architecture.mdCQRS、MediatR、レイヤー、DI パターン時
Entity Frameworkreferences/entity-framework.mdDbContext、マイグレーション、リレーションシップ時
認証references/authentication.mdJWT、Identity、認可ポリシー時
クラウドネイティブreferences/cloud-native.mdDocker、ヘルスチェック、設定時

制約事項

必須事項

  • .NET 8 と C# 12 の機能を使用
  • Nullable 参照型を有効化:.csproj<Nullable>enable</Nullable> を設定
  • すべての I/O 操作に async/await を使用 — 例:await dbContext.Users.ToListAsync()
  • 適切な依存性注入を実装
  • DTO には record 型を使用 — 例:public record UserDto(int Id, string Name);
  • クリーンアーキテクチャの原則に従う
  • WebApplicationFactory<Program> で統合テストを作成
  • OpenAPI/Swagger ドキュメントを設定

禁止事項

  • 同期 I/O 操作を使用しない
  • API レスポンスでエンティティを直接公開しない
  • 入力検証をスキップしない
  • レガシー .NET Framework パターンを使用しない
  • アーキテクチャレイヤーに関心を混在させない
  • 非推奨の EF Core パターンを使用しない

コード例

Minimal API エンドポイント

// Program.cs
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
builder.Services.AddMediatR(cfg => cfg.RegisterServicesFromAssembly(typeof(Program).Assembly));

var app = builder.Build();
app.UseSwagger();
app.UseSwaggerUI();

app.MapGet("/users/{id}", async (int id, ISender sender, CancellationToken ct) =>
{
    var result = await sender.Send(new GetUserQuery(id), ct);
    return result is null ? Results.NotFound() : Results.Ok(result);
})
.WithName("GetUser")
.Produces<UserDto>()
.ProducesProblem(404);

app.Run();

MediatR クエリハンドラ

// Application/Users/GetUserQuery.cs
public record GetUserQuery(int Id) : IRequest<UserDto?>;

public sealed class GetUserQueryHandler : IRequestHandler<GetUserQuery, UserDto?>
{
    private readonly AppDbContext _db;

    public GetUserQueryHandler(AppDbContext db) => _db = db;

    public async Task<UserDto?> Handle(GetUserQuery request, CancellationToken ct) =>
        await _db.Users
            .AsNoTracking()
            .Where(u => u.Id == request.Id)
            .Select(u => new UserDto(u.Id, u.Name))
            .FirstOrDefaultAsync(ct);
}

非同期クエリを使用した EF Core DbContext

// Infrastructure/AppDbContext.cs
public sealed class AppDbContext(DbContextOptions<AppDbContext> options) : DbContext(options)
{
    public DbSet<User> Users => Set<User>();

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.ApplyConfigurationsFromAssembly(typeof(AppDbContext).Assembly);
    }
}

// サービスでの使用
public async Task<IReadOnlyList<UserDto>> GetAllAsync(CancellationToken ct) =>
    await _db.Users
        .AsNoTracking()
        .Select(u => new UserDto(u.Id, u.Name))
        .ToListAsync(ct);

Record 型による DTO

public record UserDto(int Id, string Name);
public record CreateUserRequest(string Name, string Email);

出力テンプレート

.NET 機能を実装する場合、以下を提供します:

  1. プロジェクト構成(ソリューション/プロジェクトファイル)
  2. ドメインモデルと DTO
  3. API エンドポイントまたはサービス実装
  4. 該当する場合はデータベースコンテキストとマイグレーション
  5. アーキテクチャ上の決定についての簡潔な説明

ドキュメント

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
jeffallan
リポジトリ
jeffallan/claude-skills
ライセンス
MIT
最終更新
不明

Source: https://github.com/jeffallan/claude-skills / ライセンス: MIT

関連スキル

汎用DevOps・インフラ⭐ リポ 502

superpowers-streamer-cli

SuperPowers デスクトップストリーマーの npm パッケージをインストール、ログイン、実行、トラブルシューティングできます。ユーザーが npm から `superpowers-ai` をセットアップしたい場合、メールまたは電話でサインインもしくはアカウント作成を行いたい場合、ストリーマーを起動したい場合、表示されたコントロールリンクを開きたい場合、後で停止したい場合、またはソースコードへのアクセスなしに npm やランタイムの一般的な問題から復旧したい場合に使用します。

by rohanarun
汎用DevOps・インフラ⭐ リポ 493

catc-client-ops

Catalyst Centerのクライアント操作・監視機能 - 有線・無線クライアントのリスト表示・フィルタリング、MACアドレスによる詳細なクライアント検索、クライアント数分析、時間軸での分析、SSIDおよび周波数帯によるフィルタリング、無線トラブルシューティング機能を提供します。MACアドレスやIPアドレスでのクライアント検索、サイト別やSSID別のクライアント数集計、無線周波数帯の分布分析、Wi-Fi信号の問題調査が必要な場合に活用できます。

by automateyournetwork
汎用DevOps・インフラ⭐ リポ 39,967

ci-cd-and-automation

CI/CDパイプラインの設定を自動化します。ビルドおよびデプロイメントパイプラインの構築または変更時に使用できます。品質ゲートの自動化、CI内のテストランナー設定、またはデプロイメント戦略の確立が必要な場合に活用します。

by addyosmani
汎用DevOps・インフラ⭐ リポ 39,967

shipping-and-launch

本番環境へのリリース準備を行います。本番環境へのデプロイ準備が必要な場合、リリース前チェックリストが必要な場合、監視機能の設定を行う場合、段階的なロールアウトを計画する場合、またはロールバック戦略が必要な場合に使用します。

by addyosmani
OpenAIDevOps・インフラ⭐ リポ 38,974

linear-release-setup

Linear Releaseに向けたCI/CD設定を生成します。リリース追跡の設定、LinearのCIパイプライン構築、またはLinearリリースとのデプロイメント連携を実施する際に利用できます。GitHub Actions、GitLab CI、CircleCIなど複数のプラットフォームに対応しています。

by novuhq
Anthropic ClaudeDevOps・インフラ⭐ リポ 2,159

tracking-application-response-times

API エンドポイント、データベースクエリ、サービスコール全体にわたるアプリケーションのレスポンスタイムを追跡・最適化できます。パフォーマンス監視やボトルネック特定の際に活用してください。「レスポンスタイムを追跡する」「API パフォーマンスを監視する」「遅延を分析する」といった表現で呼び出せます。

by jeremylongshore
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: jeffallan · jeffallan/claude-skills · ライセンス: MIT