It started due to having to reimplement the OS layer in Go because of tech constraints, but it means you _can_ implement VFSes, UDFs (scalar, aggregates and windows), and virtual tables in Go, with reasonable performance and nice APIs.
I also made a point of dogfooding this as much as possible, with a bunch of extensions and a few custom VFSes that use the same APIs available to clients of the library.
https://github.com/ncruces/go-sqlite3/tree/main/ext
https://github.com/ncruces/go-sqlite3/tree/main/vfs#custom-v...