I feel like GNUCash splits the difference. You still get a GUI and reporting tools, but you also get the benefit of local reasoning that double entry accounting provides: as long as every transaction is balanced the entire book is balanced. And the data model supports transactions between more than two accounts, which is extremely useful.
My preferred backend is SQL based, so it's a relatively amenable to inspection and custom tooling.
My preferred backend is SQL based, so it's a relatively amenable to inspection and custom tooling.