I agree with this article, but it's so much more than just trust in a workflow. It's an API you can trust, in an ocean of change. That's what you're choosing; an api, abi... whatever you call it. You're committing to an extensible boundary. And both the boundary, and the extensibility (not to mention the openness) are why they win.

And shelling out to a cli? That's a pretty damn compelling and composable boundary, IMO.