It bugs me that browsers don’t support a good interface for actively “operating” on web data i.e. a “meta” layer on top of the data. By and large, they restrict users into (only) consuming information, in an extremely passive mode.

What would it take to not just do operations on the client side (like JS), but also insert the locus of control to empower the user side with flexibility?

My guess is that it would take a really good understanding of what task the user is trying to accomplish. Working from that, you could then create the interfaces.

I frequently catch myself writing code more from the "I am able do this" rather than the "should I do this" point of view. In my experience, not having a clear goal that benefits a user makes it hard to get any idea adopted.

What do you think an empowered user would want to do? All the pieces are probably there to make things work.

I think what’s needed is a robust bunch of primitives that users can easily combine to do many things. As with any organic system, I would expect the availability of capabilities to spur creativity, the Emacs ecosystem being a great case in point.

But to try and give a more direct answer to your question: I often want to download/backup or otherwise programmatically process content that I routinely interact with online (this could be playlists, emails, messages, whatever). Another interesting example pertains to the “agents” available in “Huginn”: https://github.com/huginn/huginn

It would be nice if more such capabilities were integrated into the browser (or other common operating tools).