Hey Roots community! ![]()
I’ve been building with Sage + Acorn + Lando for a while now, and like many of you, I started integrating AI assistants into my workflow. The problem? Every session I’d end up re-explaining the same things: how ACF Composer works, that we use Poet for CPTs, that routes go through Acorn, not register_rest_route(), that assets rebuild via Lando… It got old fast.
So I built something to fix that.
Superpowers Sage
An agent plugin that gives your AI assistant deep, opinionated knowledge of the Roots ecosystem — and keeps it that way across sessions.
GitHub: https://github.com/codigodoleo/superpowers-sage
It works with Claude Code, VS Code (GitHub Copilot Chat), and Cursor. Same plugin, same skills, installed once.
What it actually does
Instead of pasting docs or re-explaining conventions every time, the plugin injects that knowledge automatically and gives you slash commands for the full development workflow:
/architecture-discovery → produces an approved Architecture Decision Record
/plan-generator → turns the ADR into an executable plan with assets
/building → implements from the plan, verifies each component
/reviewing → convention audit + design alignment check
For day-to-day work, individual skills like /modeling, /debugging, /designing, and /verifying can be called directly.
The opinionated part
The plugin enforces patterns I care about for Roots projects:
| Instead of | Use |
|---|---|
register_post_type() |
Poet (config/poet.php) |
| ACF GUI | ACF Composer |
register_rest_route() |
Acorn Routes |
| CF7 / Gravity Forms | Livewire + HTML Forms |
| Raw cron | Action Scheduler + Queue/Job |
| Shortcodes | Blade Components |
Your AI assistant won’t suggest the “wrong” way because it simply doesn’t know one — the plugin corrects the frame before any code gets written.
The plan system
One thing I’m particularly happy with: plans survive context compression. When the AI session gets long and the context window compresses, hooks re-inject the active plan path automatically. No more “wait, what were we building again?”
Plans live in docs/plans/YYYY-MM-DD-<topic>/ and include the architecture record, content model, design assets, component sub-plans, and an auto-populated activity log.
Design tool integration
If you use Figma or Google Stitch, the /designing and /verifying skills connect directly to them. The AI can extract design specs and then screenshot your implementation to compare — pixel-by-pixel visual verification before you mark a component done.
Zero-token hooks
There are lifecycle hooks that run without consuming LLM context at all:
-
post-edit — runs
lando flushfor PHP files,lando theme-buildfor assets, automatically -
session-start — health check, detects design tools, injects the ecosystem guide
-
pre-commit — reminds you to visually verify against design reference before committing
Installation
# Claude Code
claude plugin marketplace add codigodoleo/superpowers-sage
claude plugin install superpowers-sage@superpowers-sage
# Then in your Sage project:
/onboarding
/onboarding analyzes the project, detects your stack and packages, and suggests next steps.
VS Code and Cursor instructions are in the README.
This is still early — I’m actively building on it and would love feedback from people who live in this stack daily. If you try it and something doesn’t match how you work with Sage/Acorn, I want to know.
Happy to answer questions here. ![]()