agent skills

Executing Plans

Superpowers workflow for implementing a written plan step-by-step in a single session, with verification at each step and a clear stop-on-blocker policy. Use when you have a written implementation plan and want the agent to walk it to completion.
by obra updated Sep 10, 2026 MIT
install via your agent of choice
❯ Install via your harness's plugin path (Claude Code /plugin install superpowers@claude-plugins-official; Codex App Plugins; Cursor /add-plugin superpowers; OpenCode fetches the .opencode/INSTALL.md from raw.githubusercontent.com/obra/superpowers/main/.opencode/INSTALL.md). All thirteen supported hosts are listed in obra/superpowers README. No `npx skills add obra/superpowers` — the upstream does not document that command.

## what it does

tl;dr: this is the single-agent half of Superpowers. When you have a written plan and no subagent runner, executing-plans walks it task-by-task in one session and passes the baton to finishing-a-development-branch when green. When subagents exist, the upstream SKILL.md itself tells you to switch to superpowers:subagent-driven-development instead — same plan, fan-out.

What it actually does

SKILL.md (obra/superpowers, fetched 2026-09-10) prescribes a three-step loop the agent announces into the session at the start:

  1. Load and review plan. Open an isolated workspace first via using-git-worktrees. Read the plan file. Review it critically for gaps or wrong assumptions — raise concerns to your human partner before any task is touched.
  2. Execute tasks. Mark each task in_progress, follow the plan’s exact step text, run the listed verifications, mark completed. The skill is explicit: do not skip verifications, do not improvise around plan steps, do not guess when an instruction is unclear.
  3. Complete development. Once every task is green, hand off: “I’m using the finishing-a-development-branch skill to complete this work.” That sub-skill then runs the test suite, detects the worktree state, and presents the merge / PR / keep menu.

The stop conditions are a named list, not vibes. The skill says STOP immediately when:

  • a blocker lands (missing dep, failing test, unclear instruction)
  • the plan has a critical gap that blocks starting
  • a verification fails repeatedly

When that happens: stop, ask, do not push through.

When to load it vs. the subagent variant

The description field is the trigger list:

Use when you have a written implementation plan to execute in a separate session with review checkpoints

The skill body adds the carve-out: “Superpowers works much better with access to subagents (Claude Code, Codex CLI, Codex App, Copilot CLI, and Gemini CLI all qualify). If subagents are available, use superpowers:subagent-driven-development instead of this skill.”

In practice: load executing-plans when the plan exists and the host runs single-threaded (Pi, Hermes without subagent tooling, or any session where you’d otherwise unpack the plan yourself). Load subagent-driven-development when you want one fresh subagent per task with two-stage review.

Install

The upstream README does not document npx skills add obra/superpowers. Install is per-harness and the README enumerates thirteen of them. The most common paths:

# Claude Code — official Anthropic marketplace
/plugin install superpowers@claude-plugins-official

# Claude Code — Superpowers marketplace
/plugin marketplace add obra/superpowers-marketplace
/plugin install superpowers@superpowers-marketplace

# Codex CLI — official Codex marketplace
/plugins
# search: superpowers → Install Plugin

# Cursor
/add-plugin superpowers

# Gemini CLI
gemini extensions install https://github.com/obra/superpowers

# OpenCode — host fetches install doc itself
# Say: "Fetch and follow instructions from
#       https://raw.githubusercontent.com/obra/superpowers/main/.opencode/INSTALL.md"

# Antigravity
agy plugin install https://github.com/obra/superpowers

If your host only watches a local SKILL.md, clone the repo and drop this one file:

git clone https://github.com/obra/superpowers
# place at any path your host's skill loader watches:
#   ~/.claude/skills/executing-plans/SKILL.md
#   .claude/skills/executing-plans/SKILL.md

SKILL.md is the entry point. The skill loads using-git-worktrees and finishing-a-development-branch as referenced sub-skills — install the whole skills/ tree, not just this one file.

Gotchas

  • Not the right skill when subagents exist. The upstream text says use subagent-driven-development instead. Agents that ignore this waste the two-stage review per task.
  • Never start on main/master without explicit consent. The skill calls this out as a hard rule. If the worktree setup lands on the default branch, stop and ask.
  • Reviews before execution. The plan-review step is mandatory and meant to surface gaps cheaply, not to rubber-stamp. If concerns surface later, return to review — don’t push through.
  • finishing-a-development-branch is required at the end. The skill chains to it; load both or expect a half-finished branch.
  • brainstorming and writing-plans are upstream. This skill expects a written plan to already exist. Plan-writing itself is a separate skill.
  • sandbox_test.verdict: untested — we read SKILL.md and the README; we did not execute a plan through the skill.

Related: Finishing a Development Branch — the skill executing-plans chains into when implementation is green; Subagent-Driven Development — the subagent variant the upstream prefers when available; Using Git Worktrees — referenced sub-skill called out in Step 1.

## compatibility

claude-code ✓
cursor ✓
cline
aider
codex-cli ✓
copilot-cli ✓
gemini-cli ✓
opencode ✓
kimi-code ✓

## embed this badge

cache ✓ in cache.directory
![cached](https://cache.directory/badge/obra-executing-plans.svg)