<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Igor Kramar</title>
    <description>The latest articles on DEV Community by Igor Kramar (@ikramar).</description>
    <link>https://dev.to/ikramar</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2211561%2F11d1ba7b-e52e-4488-bc50-cbb19848e004.jpg</url>
      <title>DEV Community: Igor Kramar</title>
      <link>https://dev.to/ikramar</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ikramar"/>
    <language>en</language>
    <item>
      <title>Superpowers vs Compound Engineering: is the 'vs' even real?</title>
      <dc:creator>Igor Kramar</dc:creator>
      <pubDate>Mon, 04 May 2026 13:02:08 +0000</pubDate>
      <link>https://dev.to/ikramar/superpowers-vs-compound-engineering-is-the-vs-even-real-58gc</link>
      <guid>https://dev.to/ikramar/superpowers-vs-compound-engineering-is-the-vs-even-real-58gc</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Superpowers and Compound Engineering aren't competitors. They're optimised for different worlds. Superpowers is gold for &lt;strong&gt;mature codebases with established methodology&lt;/strong&gt; (TDD shops, large legacy systems, teams enforcing standards). Compound Engineering is gold for &lt;strong&gt;early-stage products where one person owns a feature end-to-end&lt;/strong&gt;. Pick by &lt;em&gt;what your codebase looks like&lt;/em&gt;, not by which README sounds shinier.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If you've spent any time in the Claude Code plugin ecosystem in the last few months, you've almost certainly heard about both:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/obra/superpowers" rel="noopener noreferrer"&gt;&lt;strong&gt;Superpowers&lt;/strong&gt;&lt;/a&gt; by Jesse Vincent — a "complete software development methodology" plugin, ~42k stars, in Anthropic's official marketplace.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/EveryInc/compound-engineering-plugin" rel="noopener noreferrer"&gt;&lt;strong&gt;Compound Engineering&lt;/strong&gt;&lt;/a&gt; by Every — a 36-skill, 50-agent framework around the idea that "each unit of engineering work should make the next one easier", ~16k stars.
Both ship as Claude Code plugins. Both wrap roughly the same surface — brainstorm, plan, work, review. Both have evangelists writing "I 100x'd my output" posts. So the natural question gets asked a lot: &lt;strong&gt;which one wins?&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I installed both, ran them on the same projects for a few weeks (work — a Nuxt/Vue 3 platform product; personal — a small landing-page tool and my wife's florist site), and the answer turned out to be more interesting than I expected.&lt;/p&gt;

&lt;p&gt;The "vs" is the wrong question. Let me show you why.&lt;/p&gt;

&lt;h2&gt;
  
  
  What both plugins are actually solving
&lt;/h2&gt;

&lt;p&gt;Bare Claude Code is excellent at small tasks and dangerous at large ones. Without scaffolding it tends to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Skip planning and start typing code on turn two.&lt;/li&gt;
&lt;li&gt;Forget the lessons from yesterday's bug-hunt by tomorrow morning.&lt;/li&gt;
&lt;li&gt;Drift further from your project's conventions the longer the session runs.&lt;/li&gt;
&lt;li&gt;Treat each new request as if the codebase were a stranger.
Both plugins exist to fix this — but they fix it from different ends. To see the difference, you have to look past the README marketing and ask what each one &lt;em&gt;forces&lt;/em&gt; you to do.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The 90% overlap
&lt;/h2&gt;

&lt;p&gt;Honestly: most of the surface is the same. Here's the side-by-side:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Phase&lt;/th&gt;
&lt;th&gt;Superpowers&lt;/th&gt;
&lt;th&gt;Compound Engineering&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Refine a vague idea&lt;/td&gt;
&lt;td&gt;&lt;code&gt;brainstorming&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;/ce-brainstorm&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Turn it into a plan&lt;/td&gt;
&lt;td&gt;&lt;code&gt;writing-plans&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;/ce-plan&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Isolated execution&lt;/td&gt;
&lt;td&gt;&lt;code&gt;using-git-worktrees&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;ce-worktree&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Code review before merge&lt;/td&gt;
&lt;td&gt;&lt;code&gt;requesting-code-review&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;/ce-code-review&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Systematic debugging&lt;/td&gt;
&lt;td&gt;&lt;code&gt;systematic-debugging&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;/ce-debug&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;If you only look at this table, the conclusion is "they're the same plugin with different prefixes". That conclusion is wrong, and the difference is hidden in two places: &lt;strong&gt;what each plugin enforces&lt;/strong&gt;, and &lt;strong&gt;what each one adds beyond the shared surface&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The real difference
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Superpowers is a discipline-enforcement engine
&lt;/h3&gt;

&lt;p&gt;Read the Superpowers source and you find it again and again: this plugin is opinionated, and the opinions have teeth. The clearest example is TDD:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If Claude tries to write code before tests, this skill literally makes it delete the code and start over. No exceptions.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That's not a tip. That's a guard rail. Other examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The brainstorming skill &lt;strong&gt;activates automatically&lt;/strong&gt; when you describe a feature — you can't accidentally skip it.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;systematic-debugging&lt;/code&gt; runs a 4-phase root-cause process and triggers a mandatory architectural review after three failed fix attempts.&lt;/li&gt;
&lt;li&gt;YAGNI and "evidence over claims" are baked in as non-negotiables.
Superpowers is, in Jesse Vincent's own framing, a &lt;em&gt;methodology&lt;/em&gt;. It's there to make Claude behave the way a senior engineer at a disciplined shop would behave, whether you remember to ask or not.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The cost of this is real: Superpowers will fight you when you don't want to do TDD, when you want to vibe-code a quick spike, when you'd rather see something running before you write the test. That's not a bug. That's the entire point.&lt;/p&gt;

&lt;h3&gt;
  
  
  Compound Engineering is a knowledge-accumulation framework
&lt;/h3&gt;

&lt;p&gt;Compound Engineering's central claim is in its name: each cycle should make the next cycle cheaper. The unique skills, the ones Superpowers has no real equivalent for, all serve that claim:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;/ce-compound&lt;/code&gt;&lt;/strong&gt; — after a feature ships, you write down what was learned. Bug patterns, gotchas, surprising decisions. These get indexed and pulled into the context of future plans.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;/ce-compound-refresh&lt;/code&gt;&lt;/strong&gt; — periodically reviews stored learnings and decides whether to keep, update, replace or archive them. Without this, your knowledge base drifts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;/ce-strategy&lt;/code&gt;&lt;/strong&gt; — maintains a &lt;code&gt;STRATEGY.md&lt;/code&gt; at the repo root: target problem, persona, key metrics, tracks. &lt;code&gt;/ce-ideate&lt;/code&gt;, &lt;code&gt;/ce-brainstorm&lt;/code&gt; and &lt;code&gt;/ce-plan&lt;/code&gt; all read it as grounding.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;/ce-product-pulse&lt;/code&gt;&lt;/strong&gt; — time-windowed reports of what users actually experienced, saved to &lt;code&gt;docs/pulse-reports/&lt;/code&gt; so a timeline of outcomes builds up over time.
Notice what's happening here: CE is reaching &lt;em&gt;above&lt;/em&gt; the engineering loop (strategy) and &lt;em&gt;below&lt;/em&gt; it (user outcomes), and tying both back into the planning context. It's trying to be a product loop, not just an engineering one.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The cost is also real: 36 skills and 50+ agents is a lot of surface. Without discipline you end up running ceremonial workflows on tasks that didn't need them. And &lt;code&gt;/ce-compound&lt;/code&gt; only works if you actually use it after every cycle — skip it for two sprints and CE collapses into "Claude Code with extra slash commands".&lt;/p&gt;

&lt;h2&gt;
  
  
  Where each one breaks
&lt;/h2&gt;

&lt;p&gt;This is the part most comparison posts skip, so let me be specific.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Superpowers breaks when your domain isn't TDD-shaped.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I tried Superpowers on a Nuxt/Vue 3 SSR feature where most of the work was prop-drilling, layout tweaks and Pinia state plumbing. The TDD-first enforcement turned a 90-minute change into a 3-hour session of writing tests for code that's mostly visual. For SSR-specific bugs (hydration mismatches, server-only state) the discipline pays for itself. For "make this card layout responsive", it's pure friction.&lt;/p&gt;

&lt;p&gt;Superpowers also struggles with rapid iteration. Brainstorm-plan-test-implement is brilliant for a feature you'll ship to a million users. It's overkill for a 30-minute spike where the goal is to know whether an approach is even viable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Compound Engineering breaks when you skip the compound step.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is the trap. CE has so many slash commands that it feels productive even when you're just running &lt;code&gt;/ce-plan&lt;/code&gt; and &lt;code&gt;/ce-work&lt;/code&gt; on autopilot. But CE without &lt;code&gt;/ce-compound&lt;/code&gt; is &lt;em&gt;not&lt;/em&gt; compound engineering — it's just a more verbose Claude Code session. The plugin's value compounds only if you compound. I've watched myself skip it under deadline pressure on three consecutive cycles before I noticed the framework had quietly become decorative.&lt;/p&gt;

&lt;p&gt;CE also breaks at team scale. The named-persona reviewers (&lt;code&gt;ce-dhh-rails-reviewer&lt;/code&gt;, &lt;code&gt;ce-kieran-typescript-reviewer&lt;/code&gt;) encode somebody else's taste. On a personal project that's fine — useful, even. On a team project, "the reviewer Claude is roleplaying as DHH" is not a conversation I want to have with a senior colleague at standup.&lt;/p&gt;

&lt;h2&gt;
  
  
  The shape that actually predicts which one fits
&lt;/h2&gt;

&lt;p&gt;Here's the rule of thumb I landed on after two months of switching back and forth:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Your situation&lt;/th&gt;
&lt;th&gt;Better fit&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Mature codebase, established conventions, real test suite&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Superpowers&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Greenfield product, you own it end-to-end, conventions still forming&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Compound Engineering&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Team enforcing TDD or similar discipline&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Superpowers&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Solo dev or small team, knowledge dies if not written down&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Compound Engineering&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Legacy system where consistency matters more than novelty&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Superpowers&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Early-stage product where strategy shifts week to week&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Compound Engineering&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;You want the plugin to constrain you&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Superpowers&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;You want the plugin to remember for you&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Compound Engineering&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Or stated more bluntly: &lt;strong&gt;Superpowers is for codebases with a methodology to enforce. Compound Engineering is for products where the knowledge to compound is still being created.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A startup with a 6-month-old codebase and a single engineer per feature has very little to enforce — there are no conventions yet, the test suite is patchy, the architecture is in flux. What it desperately needs is a memory: why did we pick Pinia over Vuex, what broke last sprint, who is the persona we're optimising for. CE's &lt;code&gt;/ce-strategy&lt;/code&gt;, &lt;code&gt;/ce-product-pulse&lt;/code&gt; and &lt;code&gt;/ce-compound&lt;/code&gt; are exactly that memory.&lt;/p&gt;

&lt;p&gt;A 10-year-old enterprise codebase with 30 engineers has the opposite shape. The knowledge already exists — in the test suite, in code review norms, in the architectural decision records. What it needs is &lt;em&gt;enforcement&lt;/em&gt;, because the failure mode is drift away from established standards under deadline pressure. Superpowers' "delete the code, write the test first, no exceptions" is precisely calibrated to that failure mode.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I actually run, and where
&lt;/h2&gt;

&lt;p&gt;For my work codebase (Nuxt/Vue 3, established team, real conventions), I lean on Superpowers — but selectively. &lt;code&gt;brainstorming&lt;/code&gt; and &lt;code&gt;writing-plans&lt;/code&gt; for any non-trivial feature; &lt;code&gt;systematic-debugging&lt;/code&gt; for tricky SSR bugs; I let TDD enforcement run on backend Pinia store logic and turn it down on pure UI work.&lt;/p&gt;

&lt;p&gt;For personal projects (the landing-page tool, the florist site), I run Compound Engineering. &lt;code&gt;/ce-strategy&lt;/code&gt; once at the start gives every subsequent &lt;code&gt;/ce-plan&lt;/code&gt; real context about what the product is for. &lt;code&gt;/ce-compound&lt;/code&gt; after each meaningful feature actually compounds — I've already had &lt;code&gt;/ce-plan&lt;/code&gt; surface a learning from a previous cycle that saved me an evening.&lt;/p&gt;

&lt;p&gt;I don't run both in the same repo. They both touch &lt;code&gt;CLAUDE.md&lt;/code&gt;, they both want to be the source of truth for how the agent behaves, and the conflict isn't worth it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The honest version of "vs"
&lt;/h2&gt;

&lt;p&gt;If someone asks "which plugin should I install?" — that's the wrong question. The right one is: &lt;strong&gt;what shape is the work?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Mature codebase, established discipline, the failure mode is drift → Superpowers.&lt;/p&gt;

&lt;p&gt;Early product, single owner per feature, the failure mode is forgotten learnings → Compound Engineering.&lt;/p&gt;

&lt;p&gt;The "vs" framing is what marketing produces when two tools are competing for the same star count. Engineering produces a different question: what fits this codebase, this team, this stage?&lt;/p&gt;

&lt;p&gt;Try both. Run each on the project where its philosophy actually matches. You'll know within a week which one earned its place.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;If you've run them both and your shape is different from mine, I'd genuinely like to hear it in the comments — especially the cases where I'm probably wrong.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>claude</category>
      <category>productivity</category>
      <category>tooling</category>
    </item>
  </channel>
</rss>
