Take an app from working to wanted.
vibe-glow runs a repeatable, gated beautification campaign: a measuring stick first, a skeptic-verified findings register next, then fix batches re-reviewed until clean, then the flagship release. Go app-wide with an invented design language, or scoped to one area with a goal in your own words. Consent is per stage, so one yes runs one stage.
Includes6 commands
Six commands, one campaign.
Start with the concierge and it runs the next right stage after you say yes. Or call any stage directly. Nothing auto-advances.
Start here.
The concierge and the bare entry point. Asks whether you want a full glow-up or a focused fix, gathers what it needs, and runs each stage only after an explicit yes. You never need to know a stage name.
Reach for it when you want the whole campaign without learning the stages.
Build the measuring stick.
Stage 0. Invents a design language for an app-wide campaign, or extracts a conventions brief for a scoped one. Captures the app's invariants, such as user theming, so reviewers know what they can't touch.
Reach for it before anyone judges a screen as good or bad.
Find what's actually wrong.
Stage 1. Five Opus review lenses produce a findings register, and a skeptic pass faces every finding before it becomes work. Scoped campaigns audit only their scope, weighted toward your goal.
Reach for it when you want a ranked list you can defend, not a vibe.
Ship one fix batch.
Stage 2, one wave per call. Branch, fix, review, re-capture, re-review until the surfaces measure clean. Every tally is re-derived from the register's rows, never carried forward from the last wave.
Reach for it when the register is approved and it's time to change pixels.
Close the campaign.
Stage 3. The flagship release for an app-wide run, or a goal-check close-out for a scoped one. It re-derives the severity-4+ status from the register before it opens.
Reach for it when every high-severity finding is clean or explicitly waived.
Where is the campaign.
Read-only. Stage, scope, adapter, invariants, findings tallies read from the register this invocation, and the wave ledger. No captures, no writes, no agents.
Reach for it when you're coming back to a campaign cold.
Measure first, skeptic second, ship third.
The campaign runs identity → audit → wave → reveal. Identity produces the measuring stick. Audit runs five Opus review lenses, and a skeptic pass tries to refute each finding before it becomes work. Waves ship fix batches and re-review until the surface measures clean. Reveal closes it out. Consent is per stage: one yes runs one stage.
Per-app invariants outrank findings. If the app has user theming, color belongs to the user and identity lives in structure. Scoreboard claims re-derive from register rows every time they're written; the commands record that a carried-forward scoreboard once cost a campaign an extra wave. Evidence like screenshots stays out of git, while state, measuring sticks, and the findings register are committed.
Evidence comes from two adapters: winui-powershell (window capture, UIA route maps, UIA tree dumps, and pixel sampling) and web-playwright. The first dogfood target was 626 Mod Launcher. Loggers and an evolve pass are deliberately deferred until they're earned.
Install.
Stable marketplace
Tagged releases, promoted via the Vibe Plugins marketplace.
/plugin marketplace add estevanhernandez-stack-ed/vibe-plugins /plugin install vibe-glow@vibe-plugins
Campaign state lives in .vibe-glow/state.json at your repo root. Evidence adapters cover WinUI (PowerShell capture) and web (Playwright).
One plugin in a family.
Vibe Plugins are a coordinated family — installed independently, composed when present.