Regarding not being able to adequately query Things 3, I'd point out that the full Things 3 db is a SQLite file on disk. So if you're happy to write a bit of sql you can query anything you want. Since the author already explored JavaScript for automation that might be an option.
Scripts can also use the things URL scheme to open items back in the GUI.
Scripts can also use the things URL scheme to open items back in the GUI.