Back to skills
Dotnet Run File
Run script-like CSharp programs using dotnet run file.cs. Use this skill when users want to execute CSharp code directly, write one-liner scripts via stdin, or learn about run file directives.
40 stars
0 votes
0 copies
0 views
Added 12/19/2025
data-aic#shellbashapi
Works with
claude codeapi
Install via CLI
$
openskills install NikiforovAll/claude-code-rulesFiles
SKILL.md
---
name: dotnet-run-file
description: Run script-like CSharp programs using dotnet run file.cs. Use this skill when users want to execute CSharp code directly, write one-liner scripts via stdin, or learn about run file directives.
---
# .NET Run Files
Run C# code directly without creating project files using .NET 10's `dotnet run file.cs` feature.
## When to Use This Skill
Use this skill when the user wants to:
- Execute C# code quickly without creating a project
- Write one-liner scripts via stdin (ideal for Claude Code)
- Learn about run file directives (`#:package`, `#:sdk`, `#:property`)
- Create executable shell scripts in C#
- Convert a run file to a full project
## Guide
For detailed examples and directives reference, load `references/guide.md`.
## Quick Reference
### Basic Execution
```bash
# Run a .cs file
dotnet run app.cs
# Run from stdin
echo 'Console.WriteLine("Hello");' | dotnet run -
# Multi-line via heredoc
dotnet run - << 'EOF'
var now = DateTime.Now;
Console.WriteLine($"Time: {now}");
EOF
```
### Directives
```csharp
#:package Humanizer@* // NuGet package (version required, wildcards ok)
#:sdk Microsoft.NET.Sdk.Web // SDK selection
#:property LangVersion preview // MSBuild property
#:project ../src/MyLib // Project reference
```
### Convert to Project
```bash
dotnet project convert app.cs
```
## Core Operations
### 1. Run a C# File
**Steps**:
1. Create a `.cs` file with your code (top-level statements supported)
2. Add directives at the top if needed (packages, SDK, properties)
3. Execute: `dotnet run filename.cs`
**Example**:
```csharp
// hello.cs
Console.WriteLine("Hello from .NET!");
```
```bash
dotnet run hello.cs
```
### 2. Execute via Stdin
**Purpose**: Run C# code without creating files - ideal for quick scripts and AI-assisted workflows.
**Patterns**:
```bash
# Simple one-liner
echo 'Console.WriteLine(Math.PI);' | dotnet run -
# With package
dotnet run - << 'EOF'
#:package Humanizer@*
using Humanizer;
Console.WriteLine(TimeSpan.FromMinutes(90).Humanize());
EOF
# Heredoc for multi-line
dotnet run - << 'EOF'
using System.Text.Json;
var obj = new { Name = "Test", Value = 42 };
Console.WriteLine(JsonSerializer.Serialize(obj));
EOF
```
## Interactive Flow
When user asks to run C# code without specifics:
1. Ask what they want to accomplish
2. Determine if stdin one-liner or file-based is better
3. For simple tasks → use stdin pattern
4. For complex tasks → create a `.cs` file
5. Add necessary directives based on requirements
6. Execute and show results
## Claude Code Integration Tips
**For AI-assisted workflows**:
- Prefer stdin for quick calculations, data transformations, API calls
- Use heredoc syntax for multi-line code
- Output JSON for easy parsing: `dotnet run script.cs | jq .`
Attribution
Comments (0)
No comments yet. Be the first to comment!
