
Product
Socket for Jira Is Now Available
Socket for Jira lets teams turn alerts into Jira tickets with manual creation, automated ticketing rules, and two-way sync.
azure-functions-core-tools
Advanced tools

| Branch | Status |
|---|---|
| main | |
| in-proc |
The Azure Functions Core Tools provide a local development experience for creating, developing, testing, running, and debugging Azure Functions.
func [context] <action> [-/--options] [--help]
These options are available for all commands:
--script-root <PATH>: Set the root directory of the function app. Changes the working directory to the specified path. Defaults to the current directory.-v | --version: Display the version of Azure Functions Core Tools.-h | --help: Display help information about Azure Functions Core Tools or a specific command.For more detailed usage information, run func --help.
v1 (v1.x branch): Requires .NET 4.7.1 Windows Only
v4: (main branch): Self-contained cross-platform package (recommended)
| Version | Platform | Download Link | Notes |
|---|---|---|---|
| v4 | Windows 64-bit | Download | VS Code debugging requires 64-bit |
| v4 | Windows 32-bit | Download | |
| v3 | Windows 64-bit | Download | VS Code debugging requires 64-bit |
| v3 | Windows 32-bit | Download |
| Version | Installation Command |
|---|---|
| v4 | npm i -g azure-functions-core-tools@4 |
| v3 | npm i -g azure-functions-core-tools@3 --unsafe-perm true |
| v2 | npm i -g azure-functions-core-tools@2 --unsafe-perm true |
| Version | Installation Command |
|---|---|
| v4 | choco install azure-functions-core-tools |
| v3 | choco install azure-functions-core-tools-3 |
| v2 | choco install azure-functions-core-tools-2 |
[!NOTE] To debug Azure Functions in VSCode, the 64-bit version is required. This is now the default installation. However, if needed, you can explicitly specify it using the following parameter:
--params "'/x64'"
| Version | Installation Command |
|---|---|
| v4 | winget install Microsoft.Azure.FunctionsCoreTools |
| v3 | winget install Microsoft.Azure.FunctionsCoreTools -v 3.0.3904 |
| Version | Installation Commands |
|---|---|
| v4 | brew tap azure/functions brew install azure-functions-core-tools@4 |
| v3 | brew tap azure/functions brew install azure-functions-core-tools@3 |
| v2 | brew tap azure/functions brew install azure-functions-core-tools@2 |
If upgrading to a new version, you may have to run brew update to pull the latest formula
before you run the install command. Or, you can run brew upgrade.
[!NOTE] Homebrew allows side-by-side installation of v2 and v3. You can switch versions with:
brew link --overwrite azure-functions-core-tools@3
Installation for Linux requires two steps:
| OS Version | Installation Commands |
|---|---|
| Ubuntu 24.04 | wget -q https://packages.microsoft.com/config/ubuntu/24.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb |
| Ubuntu 22.04 | wget -q https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb |
| Ubuntu 20.04 | wget -q https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb |
| Ubuntu 19.04 | wget -q https://packages.microsoft.com/config/ubuntu/19.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb |
| Ubuntu 18.10 | wget -q https://packages.microsoft.com/config/ubuntu/18.10/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb |
| Ubuntu 18.04 | wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb |
| Ubuntu 16.04 / Mint 18 | wget -q https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb |
export DEBIAN_VERSION=12
apt-get update && apt-get install gpg wget -y
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | tee /usr/share/keyrings/microsoft-prod.gpg
wget -q https://packages.microsoft.com/config/debian/$DEBIAN_VERSION/prod.list
mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
chown root:root /usr/share/keyrings/microsoft-prod.gpg
chown root:root /etc/apt/sources.list.d/microsoft-prod.list
apt-get update && apt-get install azure-functions-core-tools-4 -y
apt-get update && apt-get install libicu-dev -y
| Version | Installation Commands |
|---|---|
| v4 | sudo apt-get update sudo apt-get install azure-functions-core-tools-4 |
| v3 | sudo apt-get update sudo apt-get install azure-functions-core-tools-3 |
| v2 | sudo apt-get update sudo apt-get install azure-functions-core-tools-2 |
npm can be used on all platforms. On unix platforms, you may need to specify --unsafe-perm if you are running npm with sudo. That's due to npm behavior of post install script.
Alternatively, you can install the CLI manually by downloading the latest release from the GitHub repo:
Download the latest release for your platform from here.
Unzip the CLI package
azure-functions-cli directory using the unzip tool, run this command from the directory containing the downloaded release zip:unzip -d azure-functions-cli Azure.Functions.Cli.linux-x64.*.zip
Make the func command executable
func binary, as well as gozip (used by func during packaging) executables. Assuming you used the instructions above to unzip:cd azure-functions-cli
chmod +x func
chmod +x gozip
./func --version # Test the executable
Optionally add func to your $PATH
func command without specifying the full path to the binary, add its directory to your $PATH environment variable. Assuming you're still following along from above:export PATH=`pwd`:$PATH
func
CurrentDirectory: is the default directory the functions runtime looks for functions in.%TMP%\LogFiles\Application\Functions: is the default directory for logs. It mirrors the logs directory on Azure as well.The Azure Functions Core tools collect usage data in order to help us improve your experience. The data is anonymous and doesn't include any user specific or personal information. The data is collected by Microsoft.
You can opt-out of telemetry by setting the FUNCTIONS_CORE_TOOLS_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
This project is under the benevolent umbrella of the .NET Foundation and is licensed under the MIT License
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
For questions on Azure Functions or the tools, you can ask questions here:
File bugs at Azure Functions Core Tools repo on GitHub.
FAQs
Azure Functions Core Tools
The npm package azure-functions-core-tools receives a total of 80,252 weekly downloads. As such, azure-functions-core-tools popularity was classified as popular.
We found that azure-functions-core-tools demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 14 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Socket for Jira lets teams turn alerts into Jira tickets with manual creation, automated ticketing rules, and two-way sync.

Company News
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.

Security News
NIST will stop enriching most CVEs under a new risk-based model, narrowing the NVD's scope as vulnerability submissions continue to surge.