I think the two-tiered input-output approach you propose makes sense. Allowing users to inspect and mutate lower-level languages allows the user to make modifications as needed. I think it's very much in the spirit of free software.
But then again, for text-based search specifically (search engines, notes, etc.), I think there is some value in querying the LLM directly, as it is able to fuzzy search by inspecting its weights. This results in a lesser degree of specificity, which allows for more false positives, but can maybe capture similar words (i.e., synonyms / typos / tenses) or higher-level semantic concepts.
Maybe they're just two different search algorithms, and the user should be able to choose between them.
Thanks for linking the article, I found it very interesting.