|
I used Superpowers for a few weeks. I ran into a couple issues: * I wish I could turn it on selectively. Many of my requests do not require the "verification before completion" and TDD ceremony. For example, agents using stock Superpowers will go so far as to grep a file every time you ask to add something to them to verify that the edit really landed. * While I like speccing out/designing a project before implementation (nothing new in that regard), I don't like how precisely superpowers plans out the implementation in the /writing-plans skill. It tells future agents exactly what files to edit. There are two big issues with this: * We need to manage context rot. If one LLM session is responsible for writing out the entire plan, we aren't solving context rot. Not only is the "smart window" of context exhausted by the time the agent is planning, eg, step 7 out of 15, but it's also dragging forward all the possibly bad ideas it had earlier. It would be better if steps were planned independently.
* Implementation is an iterative process. You find things out as you go. Your assumptions turned out to be wrong, you realize APIs don't behave the way you thought you did, etc. This is why writing out a precise plan ahead of time is an issue – it's written without this iteration.
IMO, the strongest part of Superpowers is /subagent-driven-development. Yes, it's SUPER slow. For a laugh, you can ask it to make a change you know can be done in one line. It'll do it in one line, but it take literally an hour with all the verification. But that's sort of the point. It is _very_ deliberate. For each step, it reviews the step for both compliance and code quality, then has another agent implement the fixes, _and then it reviews the fixes again_. It does this for every step (not at the end of the project). While this might seem like overkill, it leads to code which complies with the spec far better.Instead of writing a super detailed spec, I think I'd like /writing-plans to come up with appropriate "units" of work (sometimes called slices) and to brainstorm with the user regarding implementation, but to leave it looser than "edit this exact file in this exact way". That should leave a lot more leeway to implementation agents but still give the review agents something to check compliance against. |