ApplicationBuilderHelpers 4.1.149

This package has a SemVer 2.0.0 package version: 4.1.149+build.20261013061220.fd6030d.
dotnet add package ApplicationBuilderHelpers --version 4.1.149
                    
NuGet\Install-Package ApplicationBuilderHelpers -Version 4.1.149
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ApplicationBuilderHelpers" Version="4.1.149" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ApplicationBuilderHelpers" Version="4.1.149" />
                    
Directory.Packages.props
<PackageReference Include="ApplicationBuilderHelpers" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ApplicationBuilderHelpers --version 4.1.149
                    
#r "nuget: ApplicationBuilderHelpers, 4.1.149"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package ApplicationBuilderHelpers@4.1.149
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ApplicationBuilderHelpers&version=4.1.149
                    
Install as a Cake Addin
#tool nuget:?package=ApplicationBuilderHelpers&version=4.1.149
                    
Install as a Cake Tool

ApplicationBuilderHelpers

Build command-line apps in .NET with plain classes. Mark a class as a command, add options and arguments as properties, then run it.

  • Targets: net6.0 through net10.0 · AOT-ready on net8.0+ · Trimmable
  • Packages: Microsoft.Extensions.Hosting, Microsoft.Extensions.DependencyInjection.Abstractions, AbsolutePathHelpers

Features

  • Commands with automatic parsing. You write a class. The library reads the arguments.
  • Services in your command. Ask for a service. The library provides it.
  • Shared setup modules. Group common services once. Reuse them in every app.
  • App settings that reuse another key with @ref: — see Configuration.
  • Command markers: [Command], [CommandOption], [CommandArgument].
  • Subcommands like deploy prod. Nest as deep as you need.
  • Styled --help with 6 color themes and adjustable width.
  • Console and web hosts. Use the default for CLIs. Plug in your own for servers.

Installation

dotnet add package ApplicationBuilderHelpers

Quick Start

New here? Follow Getting Started for a full Hello sample. It prints Hello, Alice! and exits 0. Prefer a full starter app? See Starter Templates.

RunAsync returns an exit code: 0 success, 2 bad input, 1 failure, 130 canceled. See Commands.

Core Concepts

Extend Command and override Run. Add options with [CommandOption] and positionals with [CommandArgument]. Put shared setup in Application Dependencies.

Exit codes: 0 means success, 2 means bad input, 1 means failure, 130 means canceled. See API Reference.

How a Run Works

Commands → Shared setup → Host build → Services → Your Run method
  1. You register commands and shared setup modules.
  2. The library builds the host once per run.
  3. The library fills your options, arguments, and services.
  4. Your Run method executes.

Full order lives in Commands.

Documentation

Guide Covers
Getting Started Install, minimal app, first command, run it
Starter Templates Copy-only Plain CLI, WebApi, or WebApiAndWebApp starter
Commands Commands, options, arguments, services, completion
Application Dependencies Shared setup modules
Configuration & Themes App name, help width, themes, @ref: settings
Custom Type Parsers Support your own option types
Advanced Topics Subcommands, web hosts, errors, help
API Reference Every public class and method

Secret values stay hidden. Help, errors, and completions never print them.

Contributing

Contributions are welcome! Please submit a Pull Request.

License

MIT — see the LICENSE file.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
4.1.149 18 10/13/2026
4.1.147 42 10/6/2026
4.1.145 39 10/1/2026
4.1.143 38 9/27/2026
4.1.142 50 9/23/2026
4.1.141 53 9/17/2026
4.1.140 50 9/16/2026
4.1.139 54 9/16/2026
4.1.138 48 9/15/2026
4.1.137 45 9/15/2026
4.1.136 52 9/14/2026
4.1.135 54 9/10/2026
4.1.134 472 9/9/2026
4.1.133 47 9/9/2026
4.1.132 55 9/9/2026
4.1.131 104 9/7/2026
4.1.130 66 9/4/2026
4.1.129 91 8/17/2026
4.1.128 53 8/17/2026
4.1.127 83 8/14/2026
Loading failed

## New Version
* Bump `application_builder_helpers` from `4.1.147` to `4.1.149`. See [changelog](https://github.com/Kiryuumaru/ApplicationBuilderHelpers/compare/application_builder_helpers/4.1.147...application_builder_helpers/4.1.149)

## What's Changed
* fix(cli): narrow over-eager routing and forgiveness guards by @Kiryuumaru in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/684
* docs: add struct-compatible parser sample (Fixes #680) by @Kiryuumaru in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/685
* fix(cli): report surplus word after resolved help target (Fixes #677) by @Kiryuumaru in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/686
* fix(cli): route root-opt past bankable globals, promote agreed shared-base defaults by @Kiryuumaru in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/687
* fix: consolidate command-first routing, childless-only miss, strict flags by @Kiryuumaru in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/688
* fix(cli): nuke pre-slot lookahead and canonical rebind by @Kiryuumaru in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/689
* fix(cli): forgive surplus-after-help only when leaf owns a positional slot (Refs #677) by @Kiryuumaru in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/690
* fix(cli): restore bool positional literal table (Fixes #691) by @Kiryuumaru in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/693
* fix(cli): uniform exit-2 for surplus after resolved help path (Fixes #692) by @Kiryuumaru in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/694
* Bump AbsolutePathHelpers from 0.3.148 to 0.3.149 by @dependabot[bot] in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/695
* Bump xunit.runner.visualstudio from 4.0.0 to 4.0.1 by @dependabot[bot] in https://github.com/Kiryuumaru/ApplicationBuilderHelpers/pull/696

**Full Changelog**: https://github.com/Kiryuumaru/ApplicationBuilderHelpers/compare/build.20261006042727.276c4c7...build.20261013061220.fd6030d