I, too, have found the CLI shell to be quite useful for a variety of processing scenarios. I have also, at times, thought it would be nice for it to have some sort of programmability. Yet, after considering the alternatives, I have never gotten to the point of seriously proposing such to the SQLite dev group. There are several reasons for this reluctance. One is that it is exceedingly easy to write scripts, in any of dozens of languages, that simply produce commands to be piped into the shell. This serves most lesser needs. Another is that, for Perl, Python, TCL, PowerShell and many other programming/scripting tools, there are SQLite libraries available that are very easy to use. These tools have served all of my heavier-duty needs. As you might have read, SQLite was initially created as a TCL library. It works very well, almost naturally in the "TCL way". It's almost like shell programming, but with fewer crazy-inducing features.