This repo contains the .NET Core command-line (CLI) tools, used for building .NET Core apps and libraries through your development flow (compiling, NuGet package management, running, testing, ...).
C# Shell PowerShell HTML Python Groovy Other
Pull request Compare This branch is 1303 commits behind dotnet:rel/1.0.0.
Latest commit b7075b8 Aug 2, 2016 @pakrym pakrym committed on GitHub Use JsonTextReader in DependencyContextJsonReader (#3972)
Using low level JsonTextReader in DependencyContextJsonReader class for performance reasons
Failed to load latest commit information.
Documentation Fixing images in the test protocol documentation Aug 1, 2016
TestAssets [Fixes #3502] Fix: publishOptions: [...] not respected Jul 13, 2016
build_projects small fix Jul 26, 2016
packaging Consume dotnet-deb-tool in cli Jul 26, 2016
resources/images Updated the version badge so that it is readable with the current ver… Jun 30, 2016
src Use JsonTextReader in DependencyContextJsonReader (#3972) Aug 2, 2016
test Use JsonTextReader in DependencyContextJsonReader (#3972) Aug 2, 2016
tools Consume dotnet-deb-tool in cli Jul 26, 2016
.gitignore Add contributing info and developer guide Nov 18, 2015
ISSUE_TEMPLATE issue template, the --info is the new --version Mar 31, 2016
LICENSE Initial commit Oct 2, 2015
Microsoft.DotNet.Cli.sln Adding the configurer to dotnet. Jun 10, 2016
NuGet.Config Adding dotnet-core feed to the NuGet.config since that has the stable… Jun 14, 2016
NuGet.master.config add readme Oct 8, 2015
PULL_REQUEST_TEMPLATE add PR template May 3, 2016 Update (#3904) Jul 22, 2016
build.cmd Remove The host build, consume the host build from core-setup May 25, 2016
global.json Fix the update-dependencies project so it builds and runs again. May 17, 2016
netci.groovy update netci.groovy to use ubuntu.14.04 Jun 1, 2016
omnisharp.json Update omnisharp setting. Disable auto restore. Mar 27, 2016

.NET Command Line Interface

.NET Slack Status Join the chat at

This repo contains the source code for cross-platform .NET Core command line toolchain. It contains the implementation of each command, the native packages for various supported platforms as well as documentation.

RTM and Preview 2 bits

To get the latest released bits (RTM for .NET Core and Preview 2 for tooling), check out our Getting started page.

Also, don't forget to check out the documentation.

Changes in issue triaging

We are making significant changes to the CLI tooling by supporting MSBuild as the build engine and csproj as the project format. You can read "Changes to project.json" blog post for more context. We've realized that this also means that many of the shortcomings of the current tooling will be solved by this move so we've decided to introduce two new labels to indicate that in the issues:

  • msbuild-mitigated - this label indicates the issue will be mitigated via move to MSBuild.
  • msbuild-notapplicable - this label indicates the issue will not be applicable after moving to MSBuild.

We will close issues that are labelled with one of these labels. Proactive triaging will help us reduce the number of issues and enable us to focus on issues that require fixing independent of the move to msbuild.

Please feel free to re-open and comment on any issue that you believe was triaged incorrectly.

Found an issue?

You can consult the known issues page to find out the current issues and to see the workarounds.

If you don't find your issue, please file one! However, given that this is a very high-frequency repo, we've setup some basic guidelines to help you. Please consult those first.

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.

Build Status

Ubuntu 14.04 / Linux Mint 17 Ubuntu 16.04 Debian 8.2 Windows x64 Windows x86 Mac OS X CentOS 7.1 / Oracle Linux 7.1 RHEL 7.2 OpenSUSE 13.2 Fedora 23

Installers and Binaries

You can download .NET Core as either an installer (MSI, PKG) or a zip (zip, gzip). You can download the product in two flavours:

  • .NET Core - .NET Core runtime and framework
  • .NET Core SDK - .NET Core + CLI tools

Note: please be aware that below installers are the latest bits. If you want to install the latest released versions, please check out the section above.)

Version .NET Core Installer .NET Core SDK Installer .NET Core Binaries .NET Core SDK Binaries
Windows x64 Download Download Download Download
Windows x86 Download Download Download Download
Ubuntu 14.04 / Linux Mint 17 See Below See Below Download Download
Ubuntu 16.04 N/A N/A Download Download
Debian 8.2 N/A N/A Download Download
Mac OS X Download Download Download Download
CentOS 7.1 / Oracle Linux 7 N/A N/A Download Download
RHEL 7.2 N/A N/A Download Download
openSUSE 13.2 N/A N/A Download Download
Fedora 23 N/A N/A Download Download

Ubuntu Installers

Our Debian packages are put together slightly differently than the other OS specific installers. Instead of combining everything, we have separate component packages that depend on each other. If you're installing these directly from the .deb files (via dpkg or similar), then you'll need to install them in the order presented below.

**For Ubuntu 14.04

Version Installers
Shared Host Download
Host Framework Resolver Download
Shared Framework Download
Sdk Download


You can also use our Docker base images found on to set up your dev or testing environment for usage.

Basic usage

When you have the .NET Command Line Interface installed on your OS of choice, you can try it out using some of the samples on the dotnet/core repo. You can download the sample in a directory, and then you can kick the tires of the CLI.

First, you will need to restore the packages:

dotnet restore

This will restore all of the packages that are specified in the project.json file of the given sample.

Then you can either run from source or compile the sample. Running from source is straightforward:

dotnet run

Compiling to IL is done using:

dotnet build

This will drop an IL assembly in ./bin/[configuration]/[framework]/[binary name] that you can run using dotnet bin/[configuration]/[framework]/[binaryname.dll].

For more details, please refer to the documentation.

Building from source

If you are building from source, take note that the build depends on NuGet packages hosted on MyGet, so if it is down, the build may fail. If that happens, you can always see the MyGet status page for more info.

Read over the contributing guidelines and developer documentation for prerequisites for building from source.

Questions & Comments

For any and all feedback, please use the Issues on this repository.


By downloading the .zip you are agreeing to the terms in the project EULA.