Using Superpowers
Jesse Vincent (obra)CommunityCreated by Jesse Vincent (obra)
- Skill
- Meta (authoring, orchestration, planning, memory)
- Agent tooling
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
The using-superpowers skill establishes a strict operational framework for AI agents. It mandates that agents must check for and invoke applicable skills before taking any action, including asking clarifying questions or performing initial research. This protocol is designed to prevent rationalization and ensure that agents consistently apply established methodologies, workflows, and best practices to every task. It includes specific guidance on skill priority, handling red flags that indicate potential avoidance of established procedures, and platform-specific adaptations for various agent harnesses.
What it does
- Enforces the mandatory invocation of relevant skills before any response or action.
- Requires agents to prioritize process-oriented skills over implementation tasks.
- Provides a checklist of red flags to identify and correct rationalization behaviors.
- Integrates with platform-specific tool mappings for various agent environments.
- Ensures that user instructions take precedence over default skill behaviors.
When to use it
- At the start of every new conversation or user interaction.
- Before initiating any task, including simple questions or information gathering.
- When determining the sequence of operations for complex, multi-step projects.
- Whenever there is a possibility that an existing skill might apply to the current request.
Advantages
- Promotes consistent and disciplined agent behavior across different tasks.
- Reduces the likelihood of skipping critical planning or debugging steps.
- Standardizes the interaction model between the agent and the user.
- Provides clear guidance on how to handle conflicting instructions or complex workflows.
Usage examples
- “Can you help me fix this bug in the login module?”
- The agent identifies the relevant debugging skill, announces 'Using systematic-debugging to address the login bug', and follows the skill's prescribed workflow before touching any code.
- “What is the current status of the project?”
- The agent checks for a project management skill, announces its intent to use it, and proceeds to gather information according to the skill's defined process.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/obra/using-superpowers/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip using-superpowers.zip -d .agents/skills
Documentation by Jesse Vincent (obra)
<SUBAGENT-STOP> If you were dispatched as a subagent to execute a specific task, ignore 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. You cannot rationalize your way out of this. </EXTREMELY-IMPORTANT>
The Rule
Invoke relevant or requested skills BEFORE any response or action — including clarifying questions, exploring the codebase, or checking files. If it turns out wrong for the situation, you don't have to use it.
Before entering plan mode: if you haven't already brainstormed, invoke the brainstorming skill first.
Then announce "Using [skill] to [purpose]" and follow the skill exactly. If it has a checklist, create a todo per item.
Skill Priority
When multiple skills apply, process skills come first — they set the approach, then implementation skills (frontend-design, etc.) carry it out. Brainstorming and systematic-debugging are Superpowers' most common process skills, but the rule holds for any of them.
"Let's build X" → superpowers:brainstorming first, then implementation skills.
"Fix this bug" → superpowers:systematic-debugging first, then domain skills.
Red Flags
These thoughts mean STOP—you're rationalizing:
| Thought | Reality |
|---|---|
| "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. |
Platform Adaptation
If your harness appears here, read its reference file for special instructions:
Claude Code:
references/claude-code-tools.mdCodex:
references/codex-tools.mdPi:
references/pi-tools.mdAntigravity:
references/antigravity-tools.mdHermes Agent:
references/hermes-tools.mdMuse:
references/muse-tools.md
User Instructions
User instructions (CLAUDE.md, AGENTS.md, GEMINI.md, etc, direct requests) take precedence over skills, which in turn override default behavior. Only skip skill workflows or instructions when your human partner has explicitly told you to.
Files
- ATTRIBUTION.mdAdded by AutoGineer867 B
- LICENSELicence file added by AutoGineer1.0 KiB
- SKILL.md3.1 KiB
- references/antigravity-tools.md1.5 KiB
- references/claude-code-tools.md1.4 KiB
- references/codex-tools.md4.7 KiB
- references/gemini-tools.md4.5 KiB
- references/hermes-tools.md1.9 KiB
- references/muse-tools.md1.9 KiB
- references/pi-tools.md1.2 KiB
references/gemini-tools.md
Gemini CLI Tool Mapping
Skills speak in actions ("dispatch a subagent", "create a todo", "read a file"). On Gemini CLI these resolve to the tools below.
| Action skills request | Gemini CLI equivalent |
|---|---|
| Read a file | read_file |
| Read multiple files at once | read_many_files |
| Create a new file | write_file |
| Edit a file | replace |
| Run a shell command | run_shell_command |
| Search file contents | grep_search |
| Find files by name | glob |
| List files and subdirectories | list_directory |
| Fetch a URL | web_fetch |
| Search the web | google_web_search |
| Invoke a skill | activate_skill |
Dispatch a subagent (Subagent (general-purpose): template) | invoke_agent with agent_name: "generalist" (invocable via @generalist chat syntax — see Subagent support) |
| Multiple parallel dispatches | Multiple invoke_agent calls in the same response |
| Task tracking ("create a todo", "mark complete") | write_todos (statuses: pending, in_progress, completed, cancelled, blocked) |
Instructions file
When a skill mentions "your instructions file", on Gemini CLI this is GEMINI.md. Gemini CLI loads GEMINI.md hierarchically: global at ~/.gemini/GEMINI.md, project-level files in workspace directories and their ancestors, and sub-directory GEMINI.md files when a tool accesses files in those directories.
Personal skills directory
User-level skills live at ~/.gemini/skills/, with ~/.agents/skills/ as a cross-runtime alias (shared with Codex and Copilot CLI). When both directories exist at the same scope, .agents/skills/ takes precedence. Each skill is a subdirectory containing a SKILL.md (with name and description frontmatter).
Subagent support
Gemini CLI dispatches subagents through the invoke_agent tool, which takes agent_name and prompt parameters. The same dispatch is also surfaced as a chat-syntax shortcut: typing @generalist <prompt> is equivalent to calling invoke_agent with agent_name: "generalist". Built-in agent names include generalist, cli_help, codebase_investigator, and (with browser tooling enabled) browser_agent.
Skills dispatch with Subagent (general-purpose): and either reference a prompt-template file (e.g., superpowers:subagent-driven-development's ./implementer-prompt.md) or supply an inline prompt. On Gemini CLI:
| Skill dispatch form | Gemini CLI equivalent |
|---|---|
References a *-prompt.md template (implementer, task-reviewer, code-reviewer, etc.) | Fill the template, then invoke_agent with agent_name: "generalist" and the filled prompt |
References superpowers:requesting-code-review's ./code-reviewer.md | invoke_agent with agent_name: "generalist" and the filled review template |
| Inline prompt (no template referenced) | invoke_agent with agent_name: "generalist" and your inline prompt |
Prompt filling
Skills provide prompt templates with placeholders like {WHAT_WAS_IMPLEMENTED} or [FULL TEXT of task]. Fill all placeholders before passing the complete prompt to invoke_agent. The prompt template itself contains the agent's role, review criteria, and expected output format — the subagent will follow it.
Parallel dispatch
Gemini CLI supports parallel subagent dispatch. Issue multiple invoke_agent calls in the same response (or multiple @generalist invocations in one prompt) to run independent subagent work in parallel. Keep dependent tasks sequential, but do not serialize independent subagent tasks just to preserve a simpler history.
Additional Gemini CLI tools
These tools are unique to Gemini CLI:
| Tool | Purpose |
|---|---|
save_memory (legacy) | Persist facts across sessions when experimental.memoryV2 = false |
get_internal_docs | Look up Gemini CLI's bundled documentation |
ask_user | Pose structured questions to the user (text / single-select / multi-select) |
enter_plan_mode / exit_plan_mode | Switch into and out of read-only plan mode |
update_topic | Update the current conversation's topic / strategic-intent metadata |
complete_task | Signal that a Gemini subagent has completed and return its result to the parent agent |
tracker_create_task, tracker_update_task, tracker_get_task, tracker_list_tasks, tracker_add_dependency, tracker_visualize | Rich task tracker with dependency and visualization support |
read_mcp_resource, list_mcp_resources | MCP resource access |
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Jesse Vincent (obra)
- Publisher
- Jesse Vincent (obra) (Community)
- Source
- obra/superpowers · skills/using-superpowers · commit 22f0b46
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Jesse Vincent (obra) or Jesse Vincent (obra).
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download using-superpowers.zip