There are a very small number of cases where it is necessary or desirable to work directly with the fossil database - debugging, exploring, or tweaking low-level data in a nonstandard and generally unrecommended way (for example, when merging repositories as described in ).  Nevertheless, in those cases it is necessary to have the sqlite shell available separately.  Fossil already bundles 95% of sqlite with it, so why not include the raw shell also?  The main benefit (in those admittedly rare cases) would be that you are guaranteed to have the correct version of sqlite, while the shell installed elsewhere may be different (if you are tracking fossil and sqlite builds separately).