It seems the sticking point is the column headers but if you as a human take them off programmatically and put them back on mentally, it's a much easier problem.
Shell and plain text are too embedded in the unix-descendant world to get rid of, and I'm not advocating for anything like that. Just trying to push back against oft-repeated maxims about the power of plain text. Structured data has lots to offer for composability, power, and UX.