Awesome Open Source
Awesome Open Source

Build Status Join the chat at

This repository contains the code for the System.CommandLine libraries and the dotnet-suggest global tool.


Package Version Description
System.CommandLine Nuget Command line parser, model binding, invocation, shell completions
System.CommandLine.DragonFruit Nuget Build command-line apps by convention with a strongly-typed Main method
System.CommandLine.Rendering Nuget Structured terminal output rendering and ANSI support
System.CommandLine.Hosting Nuget support for using System.CommandLine with Microsoft.Extensions.Hosting
dotnet-suggest Nuget A command-line tool to provide shell completions for apps built using System.CommandLine.

Daily builds are available if you add this feed to your nuget.config:


Getting started

Syntax Concepts and Parser


Your first app

How to...

Interactive tutorials

You can try out System.CommandLine using an interactive tutorial that showcases its features and APIs, powered by Try .NET.


To use the tutorial, first clone the command-line-api repository:

> git clone

Next, install the dotnet try global tool:

> dotnet tool install -g Microsoft.dotnet-try

Finally, launch the dotnet try pointing to the tutorial directory inside the cloned repository:

> dotnet try <PATH_TO_COMMAND_LINE_API_REPO>/docs

Code of Conduct

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information, see the .NET Foundation Code of Conduct


See the Contributing guide for developer documentation.


This project is licensed under the MIT license.

.NET Foundation

.NET is a .NET Foundation project.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
c-sharp (11,556
terminal (671
command-line (503
parser (482
dotnet-core (378
parsing (175
posix (78
dotnet-standard (68

Find Open Source By Browsing 7,000 Topics Across 59 Categories