github-copilot-use-cases csharp.instructions.md

A set of guidelines for building applications in C#, a programming language in the .NET ecosystem. It covers naming, formatting, error handling, maintainability, and selected modern C# practices.

In plain words
What is it for?
Use it when writing or reviewing C# applications. It guides names, interfaces, private fields, namespaces, .editorconfig formatting, pattern matching, and exception handling.
Why use it?
It helps keep C# code consistent and easier to maintain across a project. It also encourages cautious code-review suggestions and clearer handling of failures and dependencies.

Instructions file for GitHub Copilot

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/amir0135/github-copilot-use-cases/csharp
Clone the repo
git clone --depth 1 https://github.com/amir0135/github-copilot-use-cases

Made for: GitHub Copilot.

Per session 1,083 This file is loaded in full into every session.
When invoked 1,083 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin 91% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.01083 $0.01083
Opus 5 $0.00541 $0.00541
Sonnet 5 $0.00217 $0.00217
Haiku 4.5 $0.00108 $0.00108

Measured yesterday against content hash c915e53d59ed, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

github-copilot-use-cases csharp.instructions.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

91% identical to agent-engineering-experiment csharp.instructions.md — 7 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

.github/instructions/csharp.instructions.md · 115 lines

How it starts

The opening of the file, as written. The whole thing — 115 lines — stays where its author put it; the contents beside it link to each section on GitHub.

C# Development

C# Instructions

  • Always use the latest version C#, currently C# 13 features.
  • Write clear and concise comments for each function.

General Instructions

  • Make only high confidence suggestions when reviewing code changes.
  • Write code with good maintainability practices, including comments on why certain design decisions were made.
  • Handle edge cases and write clear exception handling.
  • For libraries or external dependencies, mention their usage and purpose in comments.

Naming Conventions

  • Follow PascalCase for component names, method names, and public members.
  • Use camelCase for private fields and local variables.
  • Prefix interface names with "I" (e.g., IUserService).

Formatting

  • Apply code-formatting style defined in .editorconfig.
  • Prefer file-scoped namespace declarations and single-line using directives.
  • Insert a newline before the opening curly brace of any code block (e.g., after if, for, while, foreach, using, try, etc.).
  • Ensure that the final return statement of a method is on its own line.
  • Use pattern matching and switch expressions wherever possible.
  • Use nameof instead of string literals when referring to member names.
  • Ensure that XML doc comments are created for any public APIs. When applicable, include <example> and <code> documentation in the comments.

Project Setup and Structure

  • Guide users through creating a new .NET project with the appropriate templates.
  • Explain the purpose of each generated file and folder to build understanding of the project structure.
  • Demonstrate how to organize code using feature folders or domain-driven design principles.
  • Show proper separation of concerns with models, services, and data access layers.
  • Explain the Program.cs and configuration system in ASP.NET Core 9 including environment-specific settings.

Nullable Reference Types

  • Declare variables non-nullable, and check for null at entry points.
  • Always use is null or is not null instead of == null or != null.
  • Trust the C# null annotations and don't add null checks when the type system says a value cannot be null.

Read the full file on GitHub · 115 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 115 lines · 1,083 tokens per session scan A c915e53d59ed

Subscribe to this mod's changes

github-copilot-use-cases csharp.instructions.md is an instructions file published in the GitHub repository amir0135/github-copilot-use-cases (2 stars, last pushed 21d ago), licensed MIT. It adds 1,083 tokens to every session, about $0.0054 per session on Opus 5. A static security scan graded it A with 0 findings. It is 91% identical to agent-engineering-experiment csharp.instructions.md, differing in 7 lines, and is treated as a copy.