# What changed in @oclif/core

> 27 changes in @oclif/core 4 to 5 from its official release notes, upgrade guides and advisories: 1 breaking, 1 deprecations, 1 security, 9 new APIs and options. Each one cited. Sources checked 2026-10-19. HTML: https://unstale.sh/npm/@oclif/core/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## @oclif/core 5

### Breaking changes

- Requires Node >=22 and drops EOL Node versions. (5.0.0) — [release notes](https://github.com/oclif/core/releases/tag/5.0.0)

### New APIs and options

- Adds an environment variable to configure the stdin read timeout. (5.1.0) — [release notes](https://github.com/oclif/core/releases/tag/5.1.0)

### Fixes and other changes

- When --json is enabled, errors use the error's oclif exit code. (5.1.8) — [release notes](https://github.com/oclif/core/releases/tag/5.1.8)

## @oclif/core 4

### Security

- Resolved a security vulnerability in the PowerShell path. (4.13.4) — [release notes](https://github.com/oclif/core/releases/tag/4.13.4)

### Deprecations

- Warnings are now emitted for hidden, deprecated aliases. (4.9.0) — [release notes](https://github.com/oclif/core/releases/tag/4.9.0)

### New APIs and options

- Exposes the root help formatter for developers to use. (4.13.0) — [release notes](https://github.com/oclif/core/releases/tag/4.13.0)
- Adds Args.option() for typed arg options. (4.12.0) — [release notes](https://github.com/oclif/core/releases/tag/4.12.0)
- Adds an API and basic logic for command-level constraints, including conditions. (4.11.0) — [release notes](https://github.com/oclif/core/releases/tag/4.11.0)
- Adds overloads that provide variadic argument return types. (4.10.0) — [release notes](https://github.com/oclif/core/releases/tag/4.10.0)
- Adds the multiple property to ArgProps for defining variadic arguments. (4.10.0) — [release notes](https://github.com/oclif/core/releases/tag/4.10.0)
- Allows an array of default values for varargs. (4.10.0) — [release notes](https://github.com/oclif/core/releases/tag/4.10.0)
- Implements variadic argument parsing with a shift/pop algorithm. (4.10.0) — [release notes](https://github.com/oclif/core/releases/tag/4.10.0)
- Flag relationships now support combinable and only, allowing developers to configure these relationships between flags. (4.6.0) — [release notes](https://github.com/oclif/core/releases/tag/4.6.0)

### Behavior and default changes

- Validates variadic argument constraints at definition time. (4.10.0) — [release notes](https://github.com/oclif/core/releases/tag/4.10.0)
- Help text shows a ... suffix for variadic arguments. (4.10.0) — [release notes](https://github.com/oclif/core/releases/tag/4.10.0)
- Flag help now shows the environment variable associated with a flag, helping users identify how to configure it. (4.8.0) — [release notes](https://github.com/oclif/core/releases/tag/4.8.0)
- allowNo now supports aliases. (4.7.0) — [release notes](https://github.com/oclif/core/releases/tag/4.7.0)

### Fixes and other changes

- Error messages are now included in --json output. (4.11.7) — [release notes](https://github.com/oclif/core/releases/tag/4.11.7)
- Causative errors are now also pretty-printed, making them easier to read. (4.11.6) — [release notes](https://github.com/oclif/core/releases/tag/4.11.6)
- A typo in a PowerShell command was fixed. (4.11.5) — [release notes](https://github.com/oclif/core/releases/tag/4.11.5)
- WSL handling is corrected. (4.10.3) — [release notes](https://github.com/oclif/core/releases/tag/4.10.3)
- Includes the multiple property in cached argument metadata. (4.10.0) — [release notes](https://github.com/oclif/core/releases/tag/4.10.0)
- Provides clearer messages when variadic arguments are invalid. (4.10.0) — [release notes](https://github.com/oclif/core/releases/tag/4.10.0)
- --flags-dir now works with third-party plugins. (4.8.4) — [release notes](https://github.com/oclif/core/releases/tag/4.8.4)
- Windows shell identification is more reliable. (4.8.3) — [release notes](https://github.com/oclif/core/releases/tag/4.11.5), [release notes](https://github.com/oclif/core/releases/tag/4.8.3)
- Descriptions are retained when the summary is hidden in help. (4.7.2) — [release notes](https://github.com/oclif/core/releases/tag/4.7.2)
- Warn about unparsed arguments. (4.7.1) — [release notes](https://github.com/oclif/core/releases/tag/4.7.1)
