The klish is a framework for implementing a CISCO-like CLI on a UNIX systems. It is configurable by XML files.
https://src.libcode.org/download/klish/

Serj Kalichev 4d670316e3 Implement dry-run %!s(int64=12) %!d(string=hai) anos
bin 4d670316e3 Implement dry-run %!s(int64=12) %!d(string=hai) anos
clish 4d670316e3 Implement dry-run %!s(int64=12) %!d(string=hai) anos
contrib d32755628a Debian: Add debian text to contrib/README %!s(int64=12) %!d(string=hai) anos
debian 99b81c886a Debian: Fix some lintian bugs %!s(int64=12) %!d(string=hai) anos
examples ba539af810 First resolved symbol. %!s(int64=12) %!d(string=hai) anos
konf 0f9e7e730c Broken autotools workaround %!s(int64=12) %!d(string=hai) anos
lub f5b0e4c29c History related options %!s(int64=12) %!d(string=hai) anos
tinyrl 19c4a3932a Add hotkey callback to tinyrl lib %!s(int64=12) %!d(string=hai) anos
xml-examples cd705b47a8 Add test for > within attribute value %!s(int64=12) %!d(string=hai) anos
.gitignore 70395cdf1e Add simple plugin examples %!s(int64=12) %!d(string=hai) anos
CHANGES cc624ef42c Redirect readers of CHANGES and ISSUES to the actual web pages %!s(int64=12) %!d(string=hai) anos
ChangeLog edce0a7c8e Adding Debian package required files %!s(int64=12) %!d(string=hai) anos
ISSUES cc624ef42c Redirect readers of CHANGES and ISSUES to the actual web pages %!s(int64=12) %!d(string=hai) anos
LICENCE b81ff592c3 From: Emmanuel Deloget <logout@free.fr> %!s(int64=12) %!d(string=hai) anos
Makefile.am 774d6367e2 Add debian dir to EXTRA_DIST %!s(int64=12) %!d(string=hai) anos
README 4632c1a5b8 Remove legacy information from README %!s(int64=12) %!d(string=hai) anos
autogen.sh 8cdf6d307a Create m4 dir within autogen.sh script %!s(int64=12) %!d(string=hai) anos
clish.xsd 803f3d2e3c Add default sym %!s(int64=12) %!d(string=hai) anos
configure.ac 3179fda619 Version 1.7.0 %!s(int64=12) %!d(string=hai) anos

README

See the http://klish.googlecode.com page for information about klish.