Superpowers 7.0 stops a cloned repo from running its own bash at session start on Windows

1 month ago

Superpowers 7.0.0 fixes the session-start hook that loads its skills: on Windows it stops running a bash.cmd or where.bat planted at a repository's root, finds per-user Git installs, skips WSL launchers and reports hook failures; on every OS it survives a broken PATH. https://github.com/obra/superpowers/releases/tag/v7.0.0 https://github.com/obra/superpowers/pull/2393 https://github.com/obra/superpowers/pull/2349

Ask about this presentation

Chapters

  1. 0:00Superpowers 7.0 stops a cloned repo from running its own bash at session start on Windows
  2. 0:15The session-start hook is what hands your agent its skills
  3. 0:29Windows: a per-user Git install is now found
  4. 0:44Windows: a failing hook now reports its failure
  5. 0:57On any OS, the hook now survives a broken PATH at startup
  6. 1:08Who gets the fix: Superpowers 7.0.0 users on Claude Code and Cursor
Show transcript
  1. Superpowers 7.0, released on October 10, closes a Windows hole. A repository could put a file called bash.cmd or where.bat at its root, and the Superpowers hook ran it the moment a session started.

    Slide text
    github.com/obra/superpowers · hooks v7.0.0 · released Oct 10, 2026
    repository root, Windows, no Git in Program Files
    bash.cmd · where.bat ran at session start
    v7.0.0 ignored in the current directory
    obra/superpowers v7.0.0 release notes · PR #2393
  2. That hook runs on every startup, clear and compact. It injects the using-superpowers skill, which tells the agent to reach for its other skills. When the hook fails, the skills stay installed, but the agent never hears about them.

    Slide text
    github.com/obra/superpowers · hooks v7.0.0 · released Oct 10, 2026
    startup · clear · compact
    You have superpowers.
    full text of using-superpowers, injected as context
    hooks/hooks.json · hooks/session-start · v7.0.0
  3. On Windows, the hook only looked for Git in Program Files. A per-user Git install fell through to the WSL launcher, which fails without a Linux distro and injects nothing. Now it checks the per-user folder and skips those launchers.

    Slide text
    github.com/obra/superpowers · hooks v7.0.0 · released Oct 10, 2026
    Program Files Git, else the first bash on PATH
    …then %LOCALAPPDATA%\Programs\Git, skipping WSL launchers
    hooks/run-hook.cmd · PR #2393, issue #1863
  4. The Windows wrapper also hid failures. A hook that exited with an error code still reported success to the harness. Now the real exit code comes through, so a broken session start shows up as broken.

    Slide text
    github.com/obra/superpowers · hooks v7.0.0 · released Oct 10, 2026
    hook exits with
    7
    harness used to see
    0
    The exit code is now passed through.
    hooks/run-hook.cmd · PR #2393
  5. Claude Code can start this hook with a broken PATH. The hook then couldn't find dirname or cat, and the skills never loaded. It now uses bash builtins, so it needs nothing from PATH.

    Slide text
    github.com/obra/superpowers · hooks v7.0.0 · released Oct 10, 2026
    run-hook.cmd: line 43: dirname: command not found
    session-start: line 43: cat: command not found
    dirname, cat and bash lookups are now bash builtins.
    issue #2310 · PR #2349 · anthropics/claude-code#43127
  6. Superpowers ships this hook for Claude Code and Cursor, and the Windows fixes were tested on Windows 11 with Git Bash. One limit stays: with no bash installed, the hook still exits quietly, without loading the skills.

    Slide text
    github.com/obra/superpowers · hooks v7.0.0 · released Oct 10, 2026
    tested on Windows 11 with Git Bash 5.2.37 with no bash at all, the hook still exits quietly
    github.com/obra/superpowers/releases/tag/v7.0.0
    v7.0.0 release notes · hooks.json · hooks-cursor.json · PR #2393

What happened in AI today, in your inbox

One short email each evening. Read it and you’re caught up.

Built with ❤️ in New York