 Line Interface (CLI) has traditionally been an essential interface to any network device making CLI the de facto interface for communication with devices via a serial port. Typically, a terminal would be connected to serial ports for moni- toring device status, for diagnostic commands to isolate the hardware problems or for recording and notifying of alarms. The originators of CLI intended it to be a low-overhead way of managing devices. This is reflected in its lightweight design. By modern standards, it is certainly extremely lightweight given that it is command line driven! In their pure form, CLI commands are an American Standard Code for Information Interchange (ASCII)- based human-to-machine language with intuitive meanings, but without any stand- ardized way in which these commands could manage devices. That is, the meaning of a CLI command for device X would be different for device Y, if that command was defined at all for device Y. Nonetheless, a niche was carved out for CLI in device management by its ease of use for network management staff and the ease with which it could be quickly implemented and integrated into a network device. Despite advances in network management technologies, and the advent of other popular forms of management protocols since CLI, such as SNMP and Transaction Language One (TL1), there are many devices which can only be used with CLI. As CLI has been around for so long, it is still the most prevalent interface for management connectivity to devices. 5.2 Keeping CLI relevant Owing to the popularity of the Internet and other IP networks, CLI support was broadened to TCP and other transport protocols, though it was originally designed for serial links only. This allowed CLI users to continue to use the same CLI com- mands from a remote, web-based terminal. Device management can be a very big task when it involves managing devices with large numbers of commands. The AdventNe CLI API simplifies this via APIs, which hide the complexity of the commands from the user. The API also all