unstale

npm / cac

cac

What changed in cac 7, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-19.

4 breaking1 security1 new APIs and options1 behavior and defaults3 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli on npm

cac 710 changes

Breaking changes 4

  • The CJS build is removed; CAC is ESM-only. Migrate to ESM imports or use Node.js ≥ 20.19.0 for native require() support for ES modules.

    7.0.0release notes

  • Event listener methods were renamed to follow the EventTarget API; use cli.addEventListener() instead of cli.on().

    7.0.0release notes

  • Node.js 20.19.0 is now the minimum required version; earlier versions are no longer supported.

    7.0.0release notes

  • CAC throws an error when arguments are unused.

    7.0.0release notes

Security 1

  • Prevents prototype pollution via dotted option names when parsing command-line options.

    7.0.1release notes

New APIs and options 1

Behavior and default changes 1

Fixes and other changes 3

  • An omitted array option remains absent instead of being added to the parsed result.

    7.1.0release notes

  • cac reads process.argv lazily.

    7.1.0release notes

  • A bug in checking default commands was fixed.

    7.0.0release notes