Skip to content

Releases: pcvelz/superpowers

v6.2.1

Choose a tag to compare

@pcvelz pcvelz released this 18 Jul 10:29

Improvements

  • Routed dispatches now carry a recommended thinking effort per tier. With model routing active, the session notice includes an effort map (mechanical=low, standard=medium, frontier=inherit) as an implicit default; an effort key in model-routing.json overrides it, and /onboard asks who controls the thinking level. Advisory only: capability and effort are independent dials, so escalate the tier, not the effort, when a routed-down dispatch underperforms.
  • Explicit sonnetEffort keys from earlier setups keep working and ride the new notice as a Sonnet-specific override.

v6.2.0

Choose a tag to compare

@pcvelz pcvelz released this 18 Jul 08:24

Syncs the fork with upstream Superpowers v6.1.0/v6.1.1 and hardens the enforcement hooks on Windows.

What's New (from upstream)

  • Leaner session bootstrap, cutting per-session context cost. Thanks to @Ismael for the report (#24).
  • SDD artifacts moved out of .git/ into .superpowers/sdd/.
  • Brainstorming visual companion overhaul, with new server auth and lifecycle test suites.
  • Codex SessionStart fix and portal packaging from upstream v6.1.1.
  • Shell-lint tooling and expanded test coverage (hooks, shell lint, Codex/Kimi/Pi manifests).

Fixes

  • Windows: enforcement gates no longer fail open with native jq/python3. CRLF in tool output made the gates silently allow on Git Bash; all command substitutions now strip trailing CR (a no-op on macOS/Linux), and the session-start notice survives a missing iconv. Thanks to @jegitoe for the detailed report and reproduction steps (#27).
  • Gemini leftovers removed after upstream dropped Gemini CLI support.
  • Code-review subagents no longer create manual worktrees under /tmp — native worktree tools or git show [SHA]:path instead (#12).
  • Harness install docs point at the right repository, and the Codex manifest again ships its hook-suppression key.

Improvements

  • Onboarding can recommend Sonnet at medium reasoning effort for routed dispatches — above medium, Sonnet costs more than Opus at high effort for lower fidelity. Opt-in sonnetEffort key, session-start advisory.

v6.0.4

Choose a tag to compare

@pcvelz pcvelz released this 11 Jul 12:44

Fixes

  • Line endings are now normalized to LF for all text files. The previous per-pattern .gitattributes rules covered *.sh and hooks/session-start but missed the extensionless plugin hooks (pre-taskcreate-model-tier, pre-askuser-handoff-guard, pre-agent-model-routing), which could check out with CRLF and fail with $'\r': command not found (#22). A blanket * text=auto eol=lf default closes the hole and covers future extensionless scripts. Thanks to @anarchylimes for the fix (#23).

Improvements

  • Compact task subjects. Claude Code re-injects every native task's subject line into context on periodic reminders, so long subjects are paid for repeatedly. writing-plans and the shared task format reference now require compact subjects (aim ≤ 60 chars) with detail kept in the description (#24).
  • Plan self-check reads the tasks file once. The writing-plans post-creation self-check now reads <plan>.tasks.json a single time instead of a per-task TaskGet pass, removing a duplicate full-description materialization per task (#24).

v6.0.3

Choose a tag to compare

@pcvelz pcvelz released this 17 Jun 14:37

Fixes

  • Model-tier routing guard no longer false-blocks legitimate dispatches. When a plan's native task IDs did not start at 1 — for example, when some tasks were created earlier in the same session — the routing gate resolved a task to the wrong tier and could wrongly block a correctly-tiered agent dispatch (a frontier task read as standard, blocking its model). The gate now binds each task's tier to its real native task ID parsed from the task-creation result, instead of a creation-order counter. Transcripts without task-creation records fall back to the prior behavior.

Improvements

  • Added regression tests pinning the task-ID binding fix: offset IDs (the reported failure), the result-less fall-back path, and genuine-mismatch blocking on the authoritative path.

v6.0.2

Choose a tag to compare

@pcvelz pcvelz released this 13 Jun 08:50

Fixes

  • using-git-worktrees now documents native worktree teardown. The skill covered creating an isolated worktree with the native tools but had no exit path; it now directs ExitWorktree for cleanup, preferred over git worktree remove (which leaves state the harness cannot manage). Thanks to @arthursw for the report (#12).

Improvements

  • onboard enhancements. The onboarding command now offers opt-in plugin auto-update for the marketplace, and enabling the user-gate hooks also disables Auto Plan Mode (EnterPlanMode), which they require. The README install-verification section now points at /superpowers-extended-cc:onboard.

v6.0.1

Choose a tag to compare

@pcvelz pcvelz released this 12 Jun 15:24

Fixes

  • Hook false-positive on non-canonical task-close narrations resolved. The routing gate now recognizes a broader assessment vocabulary — closes that summarize work without using the prior fixed keyword list (e.g. "closure assessment: … reclosing legitimate") no longer trigger a spurious block. Thanks to @killett for the detailed report and reproduction steps (#19).
  • Hardened dispatch union detection, handoff guard escape logic, and routing gate heuristics to reduce noise in complex multi-agent sessions.

Improvements

  • Added missing final step to the upstream double-install removal flow in the onboard command docs.
  • Added Test 30 with a native-session transcript fixture to pin the routing gate fix.

v6.0.0

Choose a tag to compare

@pcvelz pcvelz released this 10 Jun 21:04

Major release: cost-aware subagent model routing, guided onboarding, configurable commit strategy, and bounded parallel dispatch.

Subagent Model Routing (opt-in)

Plan execution no longer sends every subagent to the session model. Each plan task carries a modelTier (mechanical / standard / frontier), and implementers, reviewers, and fix dispatches run on the cheapest model that fits the work. On frontier-priced sessions this routes the bulk of plan execution to Haiku/Sonnet while judgment work keeps full power.

  • One-file opt-in: docs/superpowers/model-routing.json in your project, or ~/.claude/superpowers/model-routing.json as a user-level default (project file wins). Delete the file to switch everything off.
  • Four harness-enforced layers, all dormant without the routing file: a session-start notice that injects the tier rules, a plan gate requiring a valid tier on every plan task, a dispatch gate validating each Agent call against the union of in-progress task tiers, and an execution-handoff guard. Kill switch: SUPERPOWERS_ROUTING_GUARD=0. Everything fails open on parse errors.
  • Tiers are abstract on purpose: plans survive model generations; the routing file decides what a tier means today. A concrete model pin in task metadata overrides the tier.
  • Design doc: docs/model-routing-flow.md (including what this deliberately does NOT do: no token budgets, no spend telemetry).

Guided Onboarding

New /superpowers-extended-cc:onboard command: a short multiple-choice walkthrough of the optional features (model routing, user-gate enforcement hooks, commit strategy) that writes the chosen configuration files in place. One scope choice, asked once, governs every write: this project (docs/superpowers/ plus the project's .claude/settings.json) or user-level for all projects (~/.claude/superpowers/ plus ~/.claude/settings.json), with each write confirmed back with its absolute path. Manual setup stays fully documented in the README; onboarding is a convenience, never a requirement.

Commit Strategy (opt-in)

docs/superpowers/workflow.json with {"commitStrategy": "at-end"} switches plan execution from per-task commits to a single commit at plan end: tasks leave changes in the working tree and one final task commits the full implementation. Default behavior (per-task commits) is unchanged when the file is absent. Design doc: docs/workflow-config-flow.md.

Bounded Parallel Dispatch

subagent-driven-development now permits concurrent subagents instead of forbidding all parallelism: read-only audit and verification agents are always parallel-safe, and implementers may run concurrently when their tasks' files lists are disjoint and their blockedBy chains are independent. Two writers on one file remain forbidden, and every task keeps its own two-stage review. The dispatch gate understands multiple in-progress tasks and validates against the union of their tiers.

Plan Quality

  • The plan document header gains a "User decisions (already made)" record, and deferred decisions must be self-contained when they fire: the question names the artifact with its role and verified state, says why it is still open, and may never recommend against a recorded decision.
  • During execution, coordinators answer questions from the plan record first and only escalate to you when the record genuinely does not answer them.

Model routing is documented for Claude Code v2.1.170 and later.

v5.5.0

Choose a tag to compare

@pcvelz pcvelz released this 01 Jun 20:29

What's new

  • Dev builds now carry a semver -dev pre-release suffix (e.g. 5.5.0-dev), stripped only at release time. /plugin reads the version at branch HEAD and ignores git tags, so this makes the distinction between a stable release and the rolling main branch visible downstream. Thanks to @Stashub for the suggestion (#16).
  • User-gate hook docs standardized on .claude/settings.json for registration, and the writing-plans gate-detection check now recognizes hooks registered in any of the three Claude Code settings files Claude Code merges (settings.json, settings.local.json, and user-global ~/.claude/settings.json) — so it no longer nudges you to enable enforcement you already opted into elsewhere.
  • Synced upstream contributor guidelines.

v5.4.0

Choose a tag to compare

@pcvelz pcvelz released this 12 May 20:03

User-Thrown Gate Enforcement — Optional Flow

New: an opt-in three-layer flow for user-requested verification gates.

What it does

  • writing-plans silently tags tasks containing gate-language verbs (verify, prove, validate, gate, e2e) with userGate:true + banner.
  • executing-plans gains one rule: run user-gate tasks as specified — no inline shortcuts, no cheaper substitutes.
  • /gate-check (new): "do I know HOW?" self-check; either captures AC: <criterion> — PROVEN BY <evidence> lines or routes to /specify-gate.
  • /specify-gate (new): 4-question AskUserQuestion flow that locks down vague verification mechanics.

Activation (fully opt-in)

Installing the plugin does NOT enable any enforcement. Register one or more of the following in .claude/settings.local.json — each is independent:

Hook Trigger What it enforces Escape hatch
hooks/examples/post-task-complete-revalidate.sh PostToolUse on TaskUpdate User-gate close requires AC: … — PROVEN BY … evidence SUPERPOWERS_USERGATE_GUARD=0
hooks/examples/stop-revalidate-user-gates.sh Stop "Plan complete" claims must be backed by gate evidence SUPERPOWERS_USERGATE_STOP_GUARD=0
hooks/examples/post-agent-return-validate.sh PostToolUse on Agent Subagent return matches the in_progress task's requireEvidenceTokens axes SUPERPOWERS_AGENT_RETURN_GUARD=0
hooks/examples/pre-agent-task-dispatch-validate.sh PreToolUse on Agent Agent dispatch matches the in_progress task's subagentType/model/dispatchBrief SUPERPOWERS_DISPATCH_GUARD=0
hooks/examples/pre-task-blockedby-enforce.sh PreToolUse on TaskUpdate A task can't transition to in_progress while its blockedBy list still has open tasks SUPERPOWERS_BLOCKEDBY_GUARD=0

See README → Recommended Configuration for the exact JSON snippets per hook.

New files

  • docs/user-gate-flow.md — canonical design doc
  • skills/checking-gates/SKILL.md, skills/specifying-gates/SKILL.md
  • commands/gate-check.md, commands/specify-gate.md
  • hooks/examples/{post-task-complete-revalidate,stop-revalidate-user-gates,post-agent-return-validate,pre-agent-task-dispatch-validate,pre-task-blockedby-enforce}.sh
  • tests/claude-code/test-user-gate-hooks.sh (integration test, all assertions green)

Schema extension

skills/shared/task-format-reference.md adds: userGate, tags, requiresUserSpecification, gateScope, failurePolicy, subagentBrief, requireEvidenceTokens.

Surgical-layer additions to existing skills (always-on, harmless without hooks)

  • skills/writing-plans/SKILL.md — gate-language detection rules + tagging steps
  • skills/executing-plans/SKILL.md — one rule: run user-gate tasks exactly as specified

v5.3.0

Choose a tag to compare

@pcvelz pcvelz released this 12 May 10:25

Syncs the fork with upstream Superpowers v5.1.0.

What's New (from upstream)

  • Inline self-review replaces subagent review loops in writing-plans and brainstorming. Faster plans, no quality regression.
  • code-reviewer agent lifted into requesting-code-review skill. Dispatches via general-purpose Task tool with the lifted prompt template at skills/requesting-code-review/code-reviewer.md.
  • Codex App compatibility in using-git-worktrees and finishing-a-development-branch (sandboxed-worktree detection).
  • New .codex-plugin/ manifest for Codex App distribution (fork-branded).
  • Additional test suites: test-requesting-code-review.sh, test-worktree-native-preference.sh, test-bootstrap-caching for OpenCode.
  • writing-skills: corrected guidance that skill frontmatter takes more than two fields (obra#882).

Fork Invariants (Preserved)

  • superpowers-extended-cc: skill prefix maintained on all cross-references.
  • Native task tooling (TaskCreate/TaskUpdate/TaskList/TaskGet) preserved.
  • CRITICAL CONSTRAINTS, HARD-GATE, and Native Task sections unchanged.

Installation

/plugin marketplace add pcvelz/superpowers
/plugin install superpowers-extended-cc@superpowers-extended-cc-marketplace

Restart Claude Code to load v5.3.0.