Advancing Command-Line

I spent part of today playing with my dedicated server at ServerMatrix.  Unlike the difficulties I ran into earlier using cPanel at ServInt , I had no trouble at all setting up the server using command-line.  It was ironic considering that cPanel is supposed to help people control Linux using easy to use GUI instead of the command-line.

Command-line interface is pretty tedious to use though and I intend to address that by hacking together my own version of SSH2/SCP/SFTP client that will automate most of the repeated tasks.

For example, I want to be able to get a list of processes with a single mouse click and 'pin' it to the side so it can be updated every few seconds.  I also want each command I give to become a branch node in a tree.  Response back from the server will get inserted under the branch.

Later on, I drag several related branches to a new task branch to create a composite command.  To specificy parameters, I open up the task and 'punch holes' into the commands, assigning them names and specifying acceptable input formats.  Most of the information can be extracted from man pages automatically to automatically document the task, leaving the user to provide a descriptive name and description.

When the task is run, necessary parameters are either asked for using auto-generated forms or extracted from results.  Subclassed tasks and composite tasks should also be possible so one could be build meta-tasks like "Setup Linux Web Server".  Eventually, these tasks can be shared with other people.

Doing everything on the client-side can be slow, so large tasks can be automatically sent to the server-side to be executed there.  While I could keep a stable of hand-written server-side scripts, I believe this is the right way to evolve the administrative tool technology.  Documentation is very important also because I believe good UI should not only be easy to use, but help the user understand how the system works instead of just learning which buttons to press.

Anyway, the web server is configured and awaiting content to be poured in.  Tomcat installation is next.

Update #1:

I forgot to mention that command-line bots will be cool to have also considering how popular IRC bots are.  To remember some tasks to do, just tell the ReminderBot about it and it will remind you later.  Most of these new features should be implemented on the client side so the server is not burdened unnecessarily.  Besides, there are pleandy of CPU cycles to burn on the client-side and connectivity is better so you can add P2P-based features to the command-line.