A plugin can define an action or a docker. If it’s an action, then you can assign a shortcut to it and when you use the shortcut, that action happens. If it’s a docker, then you get a docker with buttons and everything else, and those buttons can do stuff too. Scripts are kind of… you need to open the Scripter first to run it. With a plugin you already have all of it saved and you can access it more directly than going into a Scripter and then running a script.
There is not really a way to access brush strokes though.
There is lots of potential and lots of different purposes. You can check my Life Drawing Plugin for example - Life Drawing Sessions plugin - version 0.9.1 (alpha) - update May 8th '20 - or there are also plugins to get nicer color selectors or other things. There is Pigment.O plugin and KanvasBuddy - a Minimalist Toolbar and lots of other things: https://docs.krita.org/en/resources_page.html#user-made-python-plugins
There is a new scripting site in the making that has a section that shows all the actions and all the icons, you can get the link here: New Krita Scripting website feedback but it will be on krita.org when it’s finished.