Every System Needs an Entry Point

A skill library is only as good as the moment an agent remembers to consult it. You can write the best debugging methodology in the world, document it perfectly, and ship it to every machine your team runs — and a capable agent will still skip it, because the task looked easy and the agent already “knew how to debug.” The superpowers using superpowers skill exists to close that gap. It is the bootstrap of the Superpowers library: a small meta-skill whose single job is to make every other skill get loaded at the right moment — before the agent says anything at all.

This article is a deep dive into how that bootstrap works: the discovery pattern it standardizes, the unusually strict rule it enforces, how it adapts across six different agent harnesses, and what a run looks like when every skill in the chain fires in order — traced through a real infrastructure audit on one of our production boxes.

What the using-superpowers Skill Actually Does

The skill triggers at the start of any conversation. Its contents establish three things and nothing else:

That is the whole design. The bootstrap carries no methodology of its own — no debugging phases, no planning templates. It is pure control flow: an interrupt handler that runs before the agent’s own reasoning gets a chance to talk itself out of doing homework.

One exemption is baked into the top of the file: a <SUBAGENT-STOP> block tells dispatched subagents to ignore the skill entirely. The orchestrator already did the routing when it wrote the subagent’s brief; making every worker re-run skill discovery would add overhead and second-guess the delegation. The bootstrap runs at the top of the control loop, not inside every leaf of it.

The Rule: Skill Check Comes Before Everything

Most agent instructions are written as guidance. This one is written as a wall, wrapped in literal <EXTREMELY-IMPORTANT> tags so it survives any amount of context pressure:

If you think there is even a 1% chance a skill might apply
to what you are doing, you ABSOLUTELY MUST invoke the skill.

IF A SKILL APPLIES TO YOUR TASK, YOU DO NOT HAVE A CHOICE.
YOU MUST USE IT.

This is not negotiable. You cannot rationalize your way out
of this.

The load-bearing detail is timing. The rule requires invoking relevant skills before any response — and it explicitly enumerates the escape hatches agents reach for: asking a clarifying question, exploring the codebase, checking git, “gathering a little context first.” All of those are responses. The skill check precedes them, because skills tell you how to ask, how to explore, and what to look at. Checking files before checking skills inverts the order and quietly produces the exact unstructured flailing the library exists to prevent.

The 1% threshold is deliberate. It removes the judgment call: the agent is not asked to decide whether a skill is needed, only whether there is any plausible chance it applies. If the skill turns out to be wrong for the situation, the agent simply doesn’t have to use it — the cost of a false positive is one file read. The cost of a false negative is an undisciplined run.

The Skill Discovery Pattern

Loading a skill is one call: skill_view("superpowers-<name>"). The pattern is a two-level lookup, and it is worth understanding as a lazy-loading problem:

The naming discipline matters as much as the call. The superpowers- prefix makes the library one prefix-match away, and each description is written as a trigger — “Use when starting any conversation…”, “Use when you have a spec or requirements for a multi-step task…” — so level 1 is doing pattern matching the agent barely has to think about.

After the call comes the part agents most often skip: announce, then obey. The skill says to state “Using [skill] to [purpose]” out loud and then follow it exactly — if it ships a checklist, every item becomes a todo. The announcement is not theater. It puts the commitment in the transcript, where the user can veto it and where later turns can hold the run accountable to it.

Skill Priority: Process Before Implementation

When several skills plausibly apply, the bootstrap imposes an ordering rather than leaving it to taste: process skills come first — they set the approach — and implementation skills carry it out. Two worked examples from the skill itself:

Without this rule, “build X” resolves straight to the implementation skill, and the design phase silently disappears — the most expensive omission in the chain, because it’s the one nobody notices until the wrong thing ships.

Why the Bootstrap Matters: Killing “I Remember This”

The deepest problem the bootstrap solves isn’t forgetting — it’s remembering. Skills are prose, and agents are fluent in prose, which means an agent that has seen a skill once believes it has internalized it. The skill ships a red-flags table specifically to name and shoot that reflex:

ThoughtReality
“I remember this skill”Skills evolve. Read the current version.
“This is just a simple question”Questions are tasks. Check for skills.
“I need more context first”The skill check comes before clarifying questions.
“The skill is overkill”Simple things become complex. Use it.
“I know what that means”Knowing the concept ≠ using the skill. Invoke it.

The “I remember this skill” row is the one that justifies the whole meta-skill. Stale mental copies drift: a skill gets a new verification step, a tightened gate, a fixed edge case, and the agent is still executing the version it read three weeks ago — confidently, and with no diff to notice. Re-invoking on every use makes skill updates take effect immediately, the same way a package manager beats copy-pasting library source into your project. The re-read costs a few hundred tokens; the stale copy costs the improvement itself.

Platform Adaptation: One Rule, Six Harnesses

The Superpowers library targets multiple agent products, and each one names its tools differently — what counts as “invoking a skill,” where todos live, how subagents get dispatched. The bootstrap handles this with a single dispatch table: if your harness appears in the list, read its reference file for special instructions:

HarnessReference file
Claude Codereferences/claude-code-tools.md
Codexreferences/codex-tools.md
Pireferences/pi-tools.md
Antigravityreferences/antigravity-tools.md
Hermes Agentreferences/hermes-tools.md
Musereferences/muse-tools.md

The architecture keeps the methodology portable and confines the glue to one small file per platform. The 1% rule, the priority ordering, and the rationalization table are identical everywhere; only the mechanics of how you call skill_view, raise a todo, or spawn a subagent change per harness.

Precedence is settled at the bottom of the file: explicit user instructions (CLAUDE.md, AGENTS.md, direct requests) beat skills, which beat default behavior. The bootstrap enforces skills; it does not override the human.

Real Example: The SYNAS Audit, Skill by Skill

SYNAS is one of our always-on production boxes — Docker services behind an nftables drop-only SSH lock, the kind of machine where a confident wrong command is an outage. The request was five words: “look into Docker on SYNAS.” Here is the bootstrap’s control flow on that exact message, announce-and-all:

Two things are worth noticing. First, the handoffs were explicit: the bootstrap routed to brainstorming, and brainstorming’s own final step handed off to writing-plans. Nobody chose the sequence ad hoc; it is encoded in the skills. Second, the audit’s most valuable output is an absence: nothing restarted, nothing “cleaned up,” because the design gate approved the method before any state-changing command existed. That outcome is invisible in logs — you only see it by tracing which skill fired first.

Related Deep Dives in the Series

Here is everything using-superpowers sits above — the complete library it exists to dispatch into:

SkillOne-line job
brainstormingTurn vague ideas into approved designs through one-question-at-a-time dialogue.
writing-plansConvert an approved design into an execution-ready, checkbox-driven plan.
executing-plansRun a written plan faithfully, verifying each step before marking it done.
dispatching-parallel-agentsSplit independent work across concurrent subagents with bounded briefs.
subagent-driven-developmentHand each work unit to a fresh subagent briefed by the design doc.
systematic-debuggingFind root cause in four phases before attempting any fix.
test-driven-developmentRed–green–refactor: a failing test before any implementation.
using-git-worktreesIsolate feature work in parallel working trees without stash roulette.
requesting-code-reviewTrigger review before committing; security and quality gates.
receiving-code-reviewEvaluate review feedback technically instead of complying blindly.
verification-before-completionProve it works before saying “done” — evidence, not confidence.
finishing-a-development-branchCleanly land or discard the branch once work is complete.
writing-skillsAuthor new skills so future agents inherit the procedure.
diagnosing-superpowersTroubleshoot the skill system itself when skills fail to fire.

Notice the shape: every entry is a procedure for a specific moment, and the bootstrap is the router that connects a moment to its procedure. Remove the router and you don’t lose a step — you lose every step at once, because each one depends on being invoked at a moment an agent would rather improvise.

Where This Fits in the Series

This article is the entry point to the Superpowers deep-dive series, and the reading order mirrors the runtime order: the brainstorming skill is the first gate a real task hits, the writing-plans skill turns the approved design into a plan, and the executing-plans skill carries it to verified completion. Start with using-superpowers itself, though — it is the one skill that decides whether you ever reach the others.