In a nutshell, the CLI is Arduino’s Command Line Interface application, for coding, compiling and uploading to your boards, using the command line. It works on Windows, Liunux and MacOS.
As well as some bug fixes and internal restructuring of the startup steps of the interface, the headline feature is adding support for “pluggable discovery” to the CLI (which has been part of Arduino since March 2019, with v1.8.9).
“We’re really excited about the release of the pluggable discovery. This new feature will give platform developers the possibility to support more and more boards (such as the Teensy), and also new ways of uploading to boards, like via WiFi, Bluetooth, SSH, CAN bus and anything that comes to mind! If you’re a platform developer and want to know how to start supporting pluggable discovery take a look at the updated platform specification documentation.”
“The internal restructuring is also no small thing, it makes the Arduino CLI much more resilient to errors. For example, if the user added an invalid or unreachable package index URL, Arduino CLI would previously be completely unusable. After this change, a warning is shown to notify the user of that failure and other functionality of Arduino CLI is unaffected. And last but not least this change greatly improves other tools as well, in some tests we managed to slice in half the startup time of the Arduino IDE 2.0!”
You can see the full changelog on Arduino’s github.