cli_tools
A collection of tools for building great command-line interfaces.
0.13.2
129K downloads/mo
#1023 most downloaded on pub.dev
serverpod/cli_tools
What this package is like to depend on
Last release 2 months ago
11 Jun 2026
Release timing varies
gaps range from 8 days to 4 months
Nearly every release is documented
notes for 26 of 28 stable releases
Nothing withdrawn
no release was ever pulled
2 years old
37 releases · first in 2024
12 releases in the last 12 months
see the full history below
Release timeline
37 releases · May 2024 to Jun 2026Releases
latest 37-
0.13.211 Jun 2026Release notes
Open source → -
0.13.103 Jun 2026Release notes
Open source →What's Changed
- feat(cli_tools): Make progress display more configurable by @christerswahn in #113
- chore(release): Publish cli_tools 0.13.1 by @christerswahn in #114
Full Changelog: cli_tools-v0.13.0...cli_tools-v0.13.1
Release notes
Open source → -
0.13.001 Jun 2026Release notes
Open source →What's Changed
- feat(cli_tools): Added Logger.progressStream method by @christerswahn in #108
- chore: Bump min Dart to 3.6; introduced Dart workspace by @christerswahn in #109
- chore(release): Publish cli_tools 0.12.0 and config 0.9.0 by @christerswahn in #110
- feat: Add a
flushmethod to the baseAnalyticsclass by @marcelomendoncasoares in #107 - fix(cli_tools): Matching behavior in VoidLogger; fixed regression by @christerswahn in #112
- chore(release): Publish cli_tools 0.13.0 by @marcelomendoncasoares in #111
New Contributors
- @marcelomendoncasoares made their first contribution in #107
Full Changelog: cli_tools-v0.11.0...cli_tools-v0.13.0
Release notes
Open source →- BREAKING FEAT(cli_tools): Adds a
flushmethod to theAnalyticsbase class to ensure all analytics events are sent before the program exits (#107). (87b037e2) - FIX(cli_tools): Make VoidLogger.progressStream throw same exception as StdOutLogger does on empty stream. (861fe7f0)
- FIX(cli_tools): Fixed regression in progress spinner on unsuccessful runner. (861fe7f0)
-
0.12.029 May 2026Release notes
Open source →What's Changed
- feat(cli_tools): Added Logger.progressStream method by @christerswahn in #108
- chore: Bump min Dart to 3.6; introduced Dart workspace by @christerswahn in #109
Full Changelog: cli_tools-v0.11.0...cli_tools-v0.12.0
-
0.11.029 Jan 2026Release notes
Open source →What's Changed
- test: Extend execute test to windows by @nielsenko in #98
- feat: Adds support for PostHog analytics. by @vlidholt in #100
- feat: Make library name configurable in PostHog analytics. by @vlidholt in #101
- chore(release): Publish new package versions by @christerswahn in #102
Full Changelog: cli_tools-v0.10.0...cli_tools-v0.11.0
Release notes
Open source →- FEAT: Make library name configurable in PostHog analytics. (#101).
- BREAKING FEAT: Adds support for PostHog analytics. (#100).
-
0.10.012 Dec 2025Release notes
Open source →What's Changed
- fix(config): Created a public OptionResolution interface by @christerswahn in #91
- feat(cli_tools): Enable IP geotracking in analytics events by @christerswahn in #93
- fix(cli_tools): Integration of
help -hwithMessageOutputby @indraneel12 in #92 - feat(cli_tools): Add execute helper function to run shell commands by @nielsenko in #96
- chore(release): Bump version by @Isakdl in #97
New Contributors
- @nielsenko made their first contribution in #96
- @Isakdl made their first contribution in #97
Full Changelog: cli_tools-v0.9.1...cli_tools-v0.10.0
Release notes
Open source →- FEAT(cli_tools): Add execute helper function to run shell commands (#90).
-
0.9.128 Oct 2025Release notes
Open source →What's Changed
- feat(cli_tools): Make the analytics behavior customizable by @christerswahn in #87
- chore(release): Publish cli_tools 0.9.1 by @christerswahn in #88
Full Changelog: cli_tools-v0.9.0...cli_tools-v0.9.1
-
0.9.027 Oct 2025Release notes
Open source →Note: This release has breaking changes.
- REFACTOR(cli_tools): Deprecated CommandDocumentationGenerator (#81).
- FEAT(cli_tools): Enable override of analytics API URL (#85).
- BREAKING REFACTOR(cli_tools): Renamed 'target' option to 'tool' (#83).
-
0.8.220 Oct 2025 -
0.8.120 Oct 2025Nothing published for this version
-
0.8.029 Sep 2025Release notes
Open source →- FEAT: Command line completion support (#65).
- FIX: Ensure tested up to Dart 3.9 (#62).
-
0.8.0-beta.116 Sep 2025 pre-releaseNothing published for this version
-
0.8.0-beta.019 Aug 2025 pre-releaseNothing published for this version
-
0.7.115 Aug 2025 -
0.7.007 Aug 2025Release notes
Open source →- refactor!: Moved out the
configlibrary from thecli_toolspackage and into its own package, to be published asconfigon pub.dev. - fix!: Removed unused static options list in BetterCommandRunner
- refactor!: Moved out the
-
0.7.0+115 Aug 2025Nothing published for this version
-
0.7.0-beta.207 Aug 2025 pre-releaseNothing published for this version
-
0.7.0-beta.106 Aug 2025 pre-releaseNothing published for this version
-
0.6.102 Jul 2025Release notes
Open source →- refactor: Configuration.resolve is a regular constructor instead of a factory constructor
-
0.6.013 Jun 2025Release notes
Open source →- feat!: By default,
Configurationresolvethrows an informativeUsageExceptionon user input error. - feat: Config library provides usage help text for set of options.
- feat!: By default,
-
0.5.115 May 2025Release notes
Open source →- feat: Support specifying a default unit other than seconds in DurationParser.
- docs: Moved config readme into main readme.
-
0.5.008 May 2025Release notes
Open source →- feat: Introduced the
configlibrary for unified args and env parsing - docs: Added README and code examples for the
configlibrary - fix: BREAKING.
BetterCommandconstructor changed to useMessageOutputclass for clearer specification of logging functions. - feat: BREAKING. Simplified default usage of
BetterCommand/Runner - feat: Subcommands inherit output behavior from their command runner unless overridden
- refactor: The default terminal usage output behavior is now the same as the args package
Command/CommandRunner - feat: New
Logger.logmethod with dynamically specified log level - fix: Include user input prompt feature in library export
- fix: Downgrade
collectiondependency to 1.18 to be compatible with Dart 3.3 - fix: Replaced
yaml_codecdependency withyamlin order to support Dart 3.3 - chore: Require Dart 3.3
- feat: Introduced the
-
0.5.0-beta.506 May 2025 pre-releaseNothing published for this version
-
0.5.0-beta.428 Apr 2025 pre-releaseNothing published for this version
-
0.5.0-beta.328 Apr 2025 pre-releaseNothing published for this version
-
0.5.0-beta.228 Apr 2025 pre-releaseNothing published for this version
-
0.5.0-beta.125 Apr 2025 pre-releaseNothing published for this version
-
0.4.004 Mar 2025Release notes
Open source →- feat: BREAKING. BetterCommandRunner's constructor changed to use MessageOutput class for clearer specification of logging functions.
-
0.3.028 Feb 2025Release notes
Open source →- feat: BREAKING. Logging behavior now allows configuring the log level for stderr. By default, all logs are now directed to stdout.
- feat: BREAKING. Preserves UsageException upon argument parse errors instead of replacing it with ExitException.
- feat: Changed dark red to bright red for console output.
-
0.2.022 Jan 2025 -
0.1.417 Jan 2025 -
0.1.317 Jan 2025Release notes
Open source →- feat: Add prompts module with confirm, select, multiselect and input components.
-
0.1.210 Dec 2024 -
0.1.121 Nov 2024Release notes
Open source →- fix: Report analytics event before running command.
- feat: Add documentation generator helper.
-
0.1.003 Jun 2024Release notes
Open source →- feat: Introduce BetterCommand class to simplify command creation.
- fix: BREAKING. Removes onError callbacks from PubApiClient and LocalStorageManager in favor of throwing exceptions.
-
0.0.209 May 2024Release notes
Open source →- Downgrades some dependencies to avoid compatibility issues with Serverpod CLI.
-
0.0.109 May 2024