AI Skill
Review
Audit score 70

using-superpowers

obra/superpowers

Establish skill-first workflow—invoke relevant skills before any response, even with 1% applicability.

What is using-superpowers?

This skill enforces a disciplined approach to using AI agent skills by requiring skill invocation before responding to any user request. Use it at the start of conversations to ensure you're leveraging the right tools and workflows rather than improvising.

  • Requires skill invocation check before any response or action
  • Establishes instruction priority: user directives > skills > default system behavior
  • Provides platform-specific skill loading mechanisms (Claude Code, Codex, Copilot CLI, Gemini CLI, etc.)
  • Distinguishes between rigid skills (TDD, debugging) and flexible skills (patterns)
  • Identifies red flags that indicate rationalization rather than proper skill checking

How to install using-superpowers

npx skills add https://github.com/obra/superpowers --skill using-superpowers
Claude Code
Cursor
Windsurf
Cline

How to use using-superpowers

  1. 1.When receiving a user request, immediately check if any skill might apply (even 1% chance)
  2. 2.If a skill applies, invoke it using your platform's skill-loading mechanism before responding
  3. 3.Announce which skill you're using and its purpose
  4. 4.Follow the invoked skill exactly; if it includes a checklist, create todos for each item
  5. 5.Only then provide your response, including any clarifying questions

Use cases

Good for
  • Starting a new conversation to establish which skills apply to the task
  • Deciding whether to invoke a skill when multiple could apply
  • Clarifying instruction priority when user directives conflict with skill requirements
  • Determining the correct skill loading mechanism for your platform
  • Recognizing when you're rationalizing away from proper skill discipline
Who it's for
  • AI agents starting conversations with users
  • Developers using Claude Code, Codex, Copilot CLI, or Gemini CLI
  • Teams implementing skill-based workflows
  • Anyone needing to enforce disciplined tool usage

using-superpowers FAQ

Should I check for skills even for simple questions?

Yes. Questions are tasks. Check for applicable skills before clarifying or responding, even if the request seems straightforward.

What if I need more context before invoking a skill?

Skill checking comes BEFORE clarifying questions. Invoke the skill first; it may guide how you gather information.

Can I skip a skill if I think it's overkill?

No. If a skill exists and could apply, use it. Simple tasks often become complex, and skills prevent wasted effort.

What if multiple skills could apply?

Use process skills first (brainstorming, debugging), then implementation skills. Process skills determine HOW to approach the task.

Do user instructions override skills?

Yes. User instructions (CLAUDE.md, direct requests) have highest priority, followed by skills, then default system behavior.

Full instructions (SKILL.md)

Source of truth, from obra/superpowers.


name: using-superpowers description: Use when starting any conversation - establishes how to find and use skills, requiring skill invocation before ANY response including clarifying questions

<SUBAGENT-STOP> If you were dispatched as a subagent to execute a specific task, skip this skill. </SUBAGENT-STOP> <EXTREMELY-IMPORTANT> 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. This is not optional. You cannot rationalize your way out of this. </EXTREMELY-IMPORTANT>

Instruction Priority

Superpowers skills override default system prompt behavior, but user instructions always take precedence:

  1. User's explicit instructions (CLAUDE.md, GEMINI.md, AGENTS.md, direct requests) — highest priority
  2. Superpowers skills — override default system behavior where they conflict
  3. Default system prompt — lowest priority

If CLAUDE.md, GEMINI.md, or AGENTS.md says "don't use TDD" and a skill says "always use TDD," follow the user's instructions. The user is in control.

How to Access Skills

Never read skill files manually with file tools — always use your platform's skill-loading mechanism so the skill is properly activated.

In Claude Code: Use the Skill tool. When you invoke a skill, its content is loaded and presented to you — follow it directly.

In Codex: Skills load natively. Follow the instructions presented when a skill activates.

In Copilot CLI: Use the skill tool. Skills are auto-discovered from installed plugins.

In Gemini CLI: Skills activate via the activate_skill tool. Gemini loads skill metadata at session start and activates the full content on demand.

In other environments: Check your platform's documentation for how skills are loaded.

Platform Adaptation

Skills speak in actions ("dispatch a subagent", "create a todo", "read a file") rather than naming any one runtime's tools. For per-platform tool equivalents and instructions-file conventions, see claude-code-tools.md, codex-tools.md, copilot-tools.md, gemini-tools.md, pi-tools.md, and antigravity-tools.md. Gemini CLI users get the tool mapping loaded automatically via GEMINI.md.

Using Skills

The Rule

Invoke relevant or requested skills BEFORE any response or action. Even a 1% chance a skill might apply means that you should invoke the skill to check. If an invoked skill turns out to be wrong for the situation, you don't need to use it.

digraph skill_flow {
    "User message received" [shape=doublecircle];
    "About to enter plan mode?" [shape=doublecircle];
    "Already brainstormed?" [shape=diamond];
    "Invoke brainstorming skill" [shape=box];
    "Might any skill apply?" [shape=diamond];
    "Invoke the skill" [shape=box];
    "Announce: 'Using [skill] to [purpose]'" [shape=box];
    "Has checklist?" [shape=diamond];
    "Create a todo per item" [shape=box];
    "Follow skill exactly" [shape=box];
    "Respond (including clarifications)" [shape=doublecircle];

    "About to enter plan mode?" -> "Already brainstormed?";
    "Already brainstormed?" -> "Invoke brainstorming skill" [label="no"];
    "Already brainstormed?" -> "Might any skill apply?" [label="yes"];
    "Invoke brainstorming skill" -> "Might any skill apply?";

    "User message received" -> "Might any skill apply?";
    "Might any skill apply?" -> "Invoke the skill" [label="yes, even 1%"];
    "Might any skill apply?" -> "Respond (including clarifications)" [label="definitely not"];
    "Invoke the skill" -> "Announce: 'Using [skill] to [purpose]'";
    "Announce: 'Using [skill] to [purpose]'" -> "Has checklist?";
    "Has checklist?" -> "Create a todo per item" [label="yes"];
    "Has checklist?" -> "Follow skill exactly" [label="no"];
    "Create a todo per item" -> "Follow skill exactly";
}

Red Flags

These thoughts mean STOP—you're rationalizing:

ThoughtReality
"This is just a simple question"Questions are tasks. Check for skills.
"I need more context first"Skill check comes BEFORE clarifying questions.
"Let me explore the codebase first"Skills tell you HOW to explore. Check first.
"I can check git/files quickly"Files lack conversation context. Check for skills.
"Let me gather information first"Skills tell you HOW to gather information.
"This doesn't need a formal skill"If a skill exists, use it.
"I remember this skill"Skills evolve. Read current version.
"This doesn't count as a task"Action = task. Check for skills.
"The skill is overkill"Simple things become complex. Use it.
"I'll just do this one thing first"Check BEFORE doing anything.
"This feels productive"Undisciplined action wastes time. Skills prevent this.
"I know what that means"Knowing the concept ≠ using the skill. Invoke it.

Skill Priority

When multiple skills could apply, use this order:

  1. Process skills first (brainstorming, systematic-debugging) - these determine HOW to approach the task
  2. Implementation skills second (frontend-design, mcp-builder) - these guide execution

"Let's build X" → brainstorming first, then implementation skills. "Fix this bug" → systematic-debugging first, then domain-specific skills.

Skill Types

Rigid (TDD, systematic-debugging): Follow exactly. Don't adapt away discipline.

Flexible (patterns): Adapt principles to context.

The skill itself tells you which.

User Instructions

Instructions say WHAT, not HOW. "Add X" or "Fix Y" doesn't mean skip workflows.