NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #1151 most downloaded on npm
Simple yet powerful framework for building command-line apps.
Last release 7 months ago
27 Feb 2026
Ships unpredictably
gaps range from 2 weeks to 3.5 years
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
122 releases · first in 2016
Drop Node.js < 20.19.0 support. Node.js 20.19.0 is now the minimum required version.
require(), either migrate to ESM imports or upgrade to Node.js ≥ 20.19.0, which supports require() for ES modules natively.EventTarget API. cli.on() and related methods have been renamed to cli.addEventListener(). Update your code accordingly:--- cli.on('command:*', () => { ... })
+++ cli.addEventListener('command:*', () => { ... })Please use the JSR package instead: @cac/cac
import cac from 'jsr:@cac/cac'One column per quarter.
Drop support for Node.js < 20.19.0.
require.cli.on() and related methods to cli.addEventListener() to follow the EventTarget API.fix typescript issue and fix wrong export field (fix #143 )
compat with NodeNext moduleResolution
6.7.12 (2021-11-12) Bug Fixes make cac work on Deno 1.16
default exports.require should be pointed to index-compat.js
remove module.exports statement from esm build
make sure --version appears in the help message of the default command
remove version from the help message for sub commands
output help for sub commands too
only output help and version for non-sub commands
Revert "fix: only output version message for root command"
only output version message for root command
properly export CAC in commonjs build (5060bd9), closes #56 #102
respect default value for negated options if presents
## 6.7.1 (2020-12-11) ### Bug Fixes * publish mod.ts
# 6.7.0 (2020-12-11) ### Features * make cac deno-native
## 6.6.1 (2020-07-15) ### Bug Fixes * publish mod.mjs
# 6.6.0 (2020-07-14) ### Features * Add native ESM support
allow helpCallback to return sections
expose showHelpOnExit and showVersionOnExit
unset matched command when --help or --version is present
types: export CAC in types (dcd8028), closes #80
compatibility with deno 1.0, closes #75
## 6.5.8 (2020-03-20) ### Bug Fixes * deno: Fix deno argv handling
Use Deno EventEmitter polyfill (#66) (aa8f868), closes #58
stop running command with help or version
always camelcase parsed options
camelcase option name before setting default value
*This release only affects Deno users.*
types: changed events module to named export.
## 6.5.1 (2019-04-14) ### Bug Fixes * include missing file
# 6.5.0 (2019-04-14) ### Features * add deno support
## 6.4.3 (2019-04-09) ### Bug Fixes * set this.matchedCommandName
## 6.4.2 (2019-01-26) ### Bug Fixes * .* can be used multiple times
allow to use .* to denote dot-nested option
# 6.4.0 (2019-01-10) ### Features * add support for Array types
## 6.3.12 (2018-12-25) ### Bug Fixes * check value of all options
allow negated option to be used with required string-type option
## 6.3.9 (2018-12-02) ### Bug Fixes * double-dashes support
update exported function as well
## 6.3.7 (2018-12-01) ### Bug Fixes * allow to set program name
## 6.3.6 (2018-11-30) ### Bug Fixes * trying to fix #34 again
option with brackets should be set to string type (b1fbe18), closes #34
make it optional to run command's action
## 6.3.3 (2018-11-27) ### Bug Fixes * emit command:* properly
make command description optional
output corresponding help message for sub-commands
bundle node_modules for smaller size
## 6.2.6 (2018-11-26) ### Bug Fixes * use global helpCallback
handle dots in option validation
## 6.2.4 (2018-11-26) ### Bug Fixes * merge dot-nested options
tweak validation for required option
use mri so that boolean option won't default to false
## 6.2.1 (2018-11-26) ### Bug Fixes * check required command options
add command config to ignore option default value
## 6.1.3 (2018-11-26) ### Bug Fixes * oops
remove the first arg for sub-command
unknown options should be checked against original cli options
Your coding agent can read these notes before it upgrades. Set up the MCP server →