workerssuper 5.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/.claude-plugin/marketplace.json +20 -0
  2. package/.claude-plugin/plugin.json +13 -0
  3. package/.codex/INSTALL.md +67 -0
  4. package/.cursor-plugin/plugin.json +18 -0
  5. package/.gitattributes +18 -0
  6. package/.github/FUNDING.yml +3 -0
  7. package/.github/ISSUE_TEMPLATE/bug_report.md +52 -0
  8. package/.github/ISSUE_TEMPLATE/config.yml +5 -0
  9. package/.github/ISSUE_TEMPLATE/feature_request.md +34 -0
  10. package/.github/ISSUE_TEMPLATE/platform_support.md +23 -0
  11. package/.github/PULL_REQUEST_TEMPLATE.md +87 -0
  12. package/.opencode/INSTALL.md +83 -0
  13. package/.opencode/plugins/superpowers.js +107 -0
  14. package/CHANGELOG.md +13 -0
  15. package/CODE_OF_CONDUCT.md +128 -0
  16. package/GEMINI.md +2 -0
  17. package/LICENSE +21 -0
  18. package/README.md +187 -0
  19. package/RELEASE-NOTES.md +1057 -0
  20. package/agents/code-reviewer.md +48 -0
  21. package/commands/brainstorm.md +5 -0
  22. package/commands/execute-plan.md +5 -0
  23. package/commands/write-plan.md +5 -0
  24. package/docs/README.codex.md +126 -0
  25. package/docs/README.opencode.md +130 -0
  26. package/docs/plans/2025-11-22-opencode-support-design.md +294 -0
  27. package/docs/plans/2025-11-22-opencode-support-implementation.md +1095 -0
  28. package/docs/plans/2025-11-28-skills-improvements-from-user-feedback.md +711 -0
  29. package/docs/plans/2026-01-17-visual-brainstorming.md +571 -0
  30. package/docs/superpowers/plans/2026-01-22-document-review-system.md +301 -0
  31. package/docs/superpowers/plans/2026-02-19-visual-brainstorming-refactor.md +523 -0
  32. package/docs/superpowers/plans/2026-03-11-zero-dep-brainstorm-server.md +479 -0
  33. package/docs/superpowers/specs/2026-01-22-document-review-system-design.md +136 -0
  34. package/docs/superpowers/specs/2026-02-19-visual-brainstorming-refactor-design.md +162 -0
  35. package/docs/superpowers/specs/2026-03-11-zero-dep-brainstorm-server-design.md +118 -0
  36. package/docs/testing.md +303 -0
  37. package/docs/windows/polyglot-hooks.md +212 -0
  38. package/gemini-extension.json +6 -0
  39. package/hooks/hooks-cursor.json +10 -0
  40. package/hooks/hooks.json +16 -0
  41. package/hooks/run-hook.cmd +46 -0
  42. package/hooks/session-start +57 -0
  43. package/package.json +5 -0
  44. package/skills/brainstorming/SKILL.md +164 -0
  45. package/skills/brainstorming/scripts/frame-template.html +214 -0
  46. package/skills/brainstorming/scripts/helper.js +88 -0
  47. package/skills/brainstorming/scripts/server.cjs +338 -0
  48. package/skills/brainstorming/scripts/start-server.sh +153 -0
  49. package/skills/brainstorming/scripts/stop-server.sh +55 -0
  50. package/skills/brainstorming/spec-document-reviewer-prompt.md +49 -0
  51. package/skills/brainstorming/visual-companion.md +286 -0
  52. package/skills/dispatching-parallel-agents/SKILL.md +182 -0
  53. package/skills/executing-plans/SKILL.md +70 -0
  54. package/skills/finishing-a-development-branch/SKILL.md +200 -0
  55. package/skills/receiving-code-review/SKILL.md +213 -0
  56. package/skills/requesting-code-review/SKILL.md +105 -0
  57. package/skills/requesting-code-review/code-reviewer.md +146 -0
  58. package/skills/subagent-driven-development/SKILL.md +277 -0
  59. package/skills/subagent-driven-development/code-quality-reviewer-prompt.md +26 -0
  60. package/skills/subagent-driven-development/implementer-prompt.md +113 -0
  61. package/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
  62. package/skills/systematic-debugging/CREATION-LOG.md +119 -0
  63. package/skills/systematic-debugging/SKILL.md +296 -0
  64. package/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
  65. package/skills/systematic-debugging/condition-based-waiting.md +115 -0
  66. package/skills/systematic-debugging/defense-in-depth.md +122 -0
  67. package/skills/systematic-debugging/find-polluter.sh +63 -0
  68. package/skills/systematic-debugging/root-cause-tracing.md +169 -0
  69. package/skills/systematic-debugging/test-academic.md +14 -0
  70. package/skills/systematic-debugging/test-pressure-1.md +58 -0
  71. package/skills/systematic-debugging/test-pressure-2.md +68 -0
  72. package/skills/systematic-debugging/test-pressure-3.md +69 -0
  73. package/skills/test-driven-development/SKILL.md +371 -0
  74. package/skills/test-driven-development/testing-anti-patterns.md +299 -0
  75. package/skills/using-git-worktrees/SKILL.md +218 -0
  76. package/skills/using-superpowers/SKILL.md +115 -0
  77. package/skills/using-superpowers/references/codex-tools.md +25 -0
  78. package/skills/using-superpowers/references/gemini-tools.md +33 -0
  79. package/skills/verification-before-completion/SKILL.md +139 -0
  80. package/skills/writing-plans/SKILL.md +145 -0
  81. package/skills/writing-plans/plan-document-reviewer-prompt.md +49 -0
  82. package/skills/writing-skills/SKILL.md +655 -0
  83. package/skills/writing-skills/anthropic-best-practices.md +1150 -0
  84. package/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
  85. package/skills/writing-skills/graphviz-conventions.dot +172 -0
  86. package/skills/writing-skills/persuasion-principles.md +187 -0
  87. package/skills/writing-skills/render-graphs.js +168 -0
  88. package/skills/writing-skills/testing-skills-with-subagents.md +384 -0
  89. package/tests/brainstorm-server/package-lock.json +36 -0
  90. package/tests/brainstorm-server/package.json +10 -0
  91. package/tests/brainstorm-server/server.test.js +424 -0
  92. package/tests/brainstorm-server/windows-lifecycle.test.sh +351 -0
  93. package/tests/brainstorm-server/ws-protocol.test.js +392 -0
  94. package/tests/claude-code/README.md +158 -0
  95. package/tests/claude-code/analyze-token-usage.py +168 -0
  96. package/tests/claude-code/run-skill-tests.sh +187 -0
  97. package/tests/claude-code/test-document-review-system.sh +177 -0
  98. package/tests/claude-code/test-helpers.sh +202 -0
  99. package/tests/claude-code/test-subagent-driven-development-integration.sh +314 -0
  100. package/tests/claude-code/test-subagent-driven-development.sh +165 -0
  101. package/tests/explicit-skill-requests/prompts/action-oriented.txt +3 -0
  102. package/tests/explicit-skill-requests/prompts/after-planning-flow.txt +17 -0
  103. package/tests/explicit-skill-requests/prompts/claude-suggested-it.txt +11 -0
  104. package/tests/explicit-skill-requests/prompts/i-know-what-sdd-means.txt +8 -0
  105. package/tests/explicit-skill-requests/prompts/mid-conversation-execute-plan.txt +3 -0
  106. package/tests/explicit-skill-requests/prompts/please-use-brainstorming.txt +1 -0
  107. package/tests/explicit-skill-requests/prompts/skip-formalities.txt +3 -0
  108. package/tests/explicit-skill-requests/prompts/subagent-driven-development-please.txt +1 -0
  109. package/tests/explicit-skill-requests/prompts/use-systematic-debugging.txt +1 -0
  110. package/tests/explicit-skill-requests/run-all.sh +70 -0
  111. package/tests/explicit-skill-requests/run-claude-describes-sdd.sh +100 -0
  112. package/tests/explicit-skill-requests/run-extended-multiturn-test.sh +113 -0
  113. package/tests/explicit-skill-requests/run-haiku-test.sh +144 -0
  114. package/tests/explicit-skill-requests/run-multiturn-test.sh +143 -0
  115. package/tests/explicit-skill-requests/run-test.sh +136 -0
  116. package/tests/opencode/run-tests.sh +163 -0
  117. package/tests/opencode/setup.sh +73 -0
  118. package/tests/opencode/test-plugin-loading.sh +72 -0
  119. package/tests/opencode/test-priority.sh +198 -0
  120. package/tests/opencode/test-tools.sh +104 -0
  121. package/tests/skill-triggering/prompts/dispatching-parallel-agents.txt +8 -0
  122. package/tests/skill-triggering/prompts/executing-plans.txt +1 -0
  123. package/tests/skill-triggering/prompts/requesting-code-review.txt +3 -0
  124. package/tests/skill-triggering/prompts/systematic-debugging.txt +11 -0
  125. package/tests/skill-triggering/prompts/test-driven-development.txt +7 -0
  126. package/tests/skill-triggering/prompts/writing-plans.txt +10 -0
  127. package/tests/skill-triggering/run-all.sh +60 -0
  128. package/tests/skill-triggering/run-test.sh +88 -0
  129. package/tests/subagent-driven-dev/go-fractals/design.md +81 -0
  130. package/tests/subagent-driven-dev/go-fractals/plan.md +172 -0
  131. package/tests/subagent-driven-dev/go-fractals/scaffold.sh +45 -0
  132. package/tests/subagent-driven-dev/run-test.sh +106 -0
  133. package/tests/subagent-driven-dev/svelte-todo/design.md +70 -0
  134. package/tests/subagent-driven-dev/svelte-todo/plan.md +222 -0
  135. package/tests/subagent-driven-dev/svelte-todo/scaffold.sh +46 -0
@@ -0,0 +1,1057 @@
1
+ # Superpowers Release Notes
2
+
3
+ ## v5.0.5 (2026-03-17)
4
+
5
+ ### Bug Fixes
6
+
7
+ - **Brainstorm server ESM fix** — renamed `server.js` → `server.cjs` so the brainstorming server starts correctly on Node.js 22+ where the root `package.json` `"type": "module"` caused `require()` to fail. (PR #784 by @sarbojitrana, fixes #774, #780, #783)
8
+ - **Brainstorm owner-PID on Windows** — skip PID lifecycle monitoring on Windows/MSYS2 where the PID namespace is invisible to Node.js, preventing the server from self-terminating after 60 seconds. (#770, docs from PR #768 by @lucasyhzlu-debug)
9
+ - **stop-server.sh reliability** — verify the server process actually died before reporting success. SIGTERM + 2s wait + SIGKILL fallback. (#723)
10
+
11
+ ### Changed
12
+
13
+ - **Execution handoff** — restore user choice between subagent-driven and inline execution after plan writing. Subagent-driven is recommended but no longer mandatory.
14
+
15
+ ## v5.0.4 (2026-03-16)
16
+
17
+ ### Review Loop Refinements
18
+
19
+ Dramatically reduces token usage and speeds up spec and plan reviews by eliminating unnecessary review passes and tightening reviewer focus.
20
+
21
+ - **Single whole-plan review** — plan reviewer now reviews the complete plan in one pass instead of chunk-by-chunk. Removed all chunk-related concepts (`## Chunk N:` headings, 1000-line chunk limits, per-chunk dispatch).
22
+ - **Raised the bar for blocking issues** — both spec and plan reviewer prompts now include a "Calibration" section: only flag issues that would cause real problems during implementation. Minor wording, stylistic preferences, and formatting quibbles should not block approval.
23
+ - **Reduced max review iterations** — from 5 to 3 for both spec and plan review loops. If the reviewer is calibrated correctly, 3 rounds is plenty.
24
+ - **Streamlined reviewer checklists** — spec reviewer trimmed from 7 categories to 5; plan reviewer from 7 to 4. Removed formatting-focused checks (task syntax, chunk size) in favor of substance (buildability, spec alignment).
25
+
26
+ ### OpenCode
27
+
28
+ - **One-line plugin install** — OpenCode plugin now auto-registers the skills directory via a `config` hook. No symlinks or `skills.paths` config needed. Install is just adding one line to `opencode.json`. (PR #753)
29
+ - **Added `package.json`** so OpenCode can install superpowers as an npm package from git.
30
+
31
+ ### Bug Fixes
32
+
33
+ - **Verify server actually stopped** — `stop-server.sh` now confirms the process is dead before reporting success. SIGTERM + 2s wait + SIGKILL fallback. Reports failure if the process survives. (PR #751)
34
+ - **Generic agent language** — brainstorm companion waiting page now says "the agent" instead of "Claude".
35
+
36
+ ## v5.0.3 (2026-03-15)
37
+
38
+ ### Cursor Support
39
+
40
+ - **Cursor hooks** — added `hooks/hooks-cursor.json` with Cursor's camelCase format (`sessionStart`, `version: 1`) and updated `.cursor-plugin/plugin.json` to reference it. Fixed platform detection in `session-start` to check `CURSOR_PLUGIN_ROOT` first (Cursor may also set `CLAUDE_PLUGIN_ROOT`). (Based on PR #709)
41
+
42
+ ### Bug Fixes
43
+
44
+ - **Stop firing SessionStart hook on `--resume`** — the startup hook was re-injecting context on resumed sessions, which already have the context in their conversation history. The hook now fires only on `startup`, `clear`, and `compact`.
45
+ - **Bash 5.3+ hook hang** — replaced heredoc (`cat <<EOF`) with `printf` in `hooks/session-start`. Fixes indefinite hang on macOS with Homebrew bash 5.3+ caused by a bash regression with large variable expansion in heredocs. (#572, #571)
46
+ - **POSIX-safe hook script** — replaced `${BASH_SOURCE[0]:-$0}` with `$0` in `hooks/session-start`. Fixes "Bad substitution" error on Ubuntu/Debian where `/bin/sh` is dash. (#553)
47
+ - **Portable shebangs** — replaced `#!/bin/bash` with `#!/usr/bin/env bash` in all shell scripts. Fixes execution on NixOS, FreeBSD, and macOS with Homebrew bash where `/bin/bash` is outdated or missing. (#700)
48
+ - **Brainstorm server on Windows** — auto-detect Windows/Git Bash (`OSTYPE=msys*`, `MSYSTEM`) and switch to foreground mode, fixing silent server failure caused by `nohup`/`disown` process reaping. (#737)
49
+ - **Codex docs fix** — replaced deprecated `collab` flag with `multi_agent` in Codex documentation. (PR #749)
50
+
51
+ ## v5.0.2 (2026-03-11)
52
+
53
+ ### Zero-Dependency Brainstorm Server
54
+
55
+ **Removed all vendored node_modules — server.js is now fully self-contained**
56
+
57
+ - Replaced Express/Chokidar/WebSocket dependencies with zero-dependency Node.js server using built-in `http`, `fs`, and `crypto` modules
58
+ - Removed ~1,200 lines of vendored `node_modules/`, `package.json`, and `package-lock.json`
59
+ - Custom WebSocket protocol implementation (RFC 6455 framing, ping/pong, proper close handshake)
60
+ - Native `fs.watch()` file watching replaces Chokidar
61
+ - Full test suite: HTTP serving, WebSocket protocol, file watching, and integration tests
62
+
63
+ ### Brainstorm Server Reliability
64
+
65
+ - **Auto-exit after 30 minutes idle** — server shuts down when no clients are connected, preventing orphaned processes
66
+ - **Owner process tracking** — server monitors the parent harness PID and exits when the owning session dies
67
+ - **Liveness check** — skill verifies server is responsive before reusing an existing instance
68
+ - **Encoding fix** — proper `<meta charset="utf-8">` on served HTML pages
69
+
70
+ ### Subagent Context Isolation
71
+
72
+ - All delegation skills (brainstorming, dispatching-parallel-agents, requesting-code-review, subagent-driven-development, writing-plans) now include context isolation principle
73
+ - Subagents receive only the context they need, preventing context window pollution
74
+
75
+ ## v5.0.1 (2026-03-10)
76
+
77
+ ### Agentskills Compliance
78
+
79
+ **Brainstorm-server moved into skill directory**
80
+
81
+ - Moved `lib/brainstorm-server/` → `skills/brainstorming/scripts/` per the [agentskills.io](https://agentskills.io) specification
82
+ - All `${CLAUDE_PLUGIN_ROOT}/lib/brainstorm-server/` references replaced with relative `scripts/` paths
83
+ - Skills are now fully portable across platforms — no platform-specific env vars needed to locate scripts
84
+ - `lib/` directory removed (was the last remaining content)
85
+
86
+ ### New Features
87
+
88
+ **Gemini CLI extension**
89
+
90
+ - Native Gemini CLI extension support via `gemini-extension.json` and `GEMINI.md` at repo root
91
+ - `GEMINI.md` @imports `using-superpowers` skill and tool mapping table at session start
92
+ - Gemini CLI tool mapping reference (`skills/using-superpowers/references/gemini-tools.md`) — translates Claude Code tool names (Read, Write, Edit, Bash, etc.) to Gemini CLI equivalents (read_file, write_file, replace, etc.)
93
+ - Documents Gemini CLI limitations: no subagent support, skills fall back to `executing-plans`
94
+ - Extension root at repo root for cross-platform compatibility (avoids Windows symlink issues)
95
+ - Install instructions added to README
96
+
97
+ ### Improvements
98
+
99
+ **Multi-platform brainstorm server launch**
100
+
101
+ - Per-platform launch instructions in visual-companion.md: Claude Code (default mode), Codex (auto-foreground via `CODEX_CI`), Gemini CLI (`--foreground` with `is_background`), and fallback for other environments
102
+ - Server now writes startup JSON to `$SCREEN_DIR/.server-info` so agents can find the URL and port even when stdout is hidden by background execution
103
+
104
+ **Brainstorm server dependencies bundled**
105
+
106
+ - `node_modules` vendored into the repo so the brainstorm server works immediately on fresh plugin installs without requiring `npm` at runtime
107
+ - Removed `fsevents` from bundled deps (macOS-only native binary; chokidar falls back gracefully without it)
108
+ - Fallback auto-install via `npm install` if `node_modules` is missing
109
+
110
+ **OpenCode tool mapping fix**
111
+
112
+ - `TodoWrite` → `todowrite` (was incorrectly mapped to `update_plan`); verified against OpenCode source
113
+
114
+ ### Bug Fixes
115
+
116
+ **Windows/Linux: single quotes break SessionStart hook** (#577, #529, #644, PR #585)
117
+
118
+ - Single quotes around `${CLAUDE_PLUGIN_ROOT}` in hooks.json fail on Windows (cmd.exe doesn't recognize single quotes as path delimiters) and on Linux (single quotes prevent variable expansion)
119
+ - Fix: replaced single quotes with escaped double quotes — works across macOS bash, Windows cmd.exe, Windows Git Bash, and Linux, with and without spaces in paths
120
+ - Verified on Windows 11 (NT 10.0.26200.0) with Claude Code 2.1.72 and Git for Windows
121
+
122
+ **Brainstorming spec review loop skipped** (#677)
123
+
124
+ - The spec review loop (dispatch spec-document-reviewer subagent, iterate until approved) existed in the prose "After the Design" section but was missing from the checklist and process flow diagram
125
+ - Since agents follow the diagram and checklist more reliably than prose, the spec review step was being skipped entirely
126
+ - Added step 7 (spec review loop) to the checklist and corresponding nodes to the dot graph
127
+ - Tested with `claude --plugin-dir` and `claude-session-driver`: worker now correctly dispatches the reviewer
128
+
129
+ **Cursor install command** (PR #676)
130
+
131
+ - Fixed Cursor install command in README: `/plugin-add` → `/add-plugin` (confirmed via Cursor 2.5 release announcement)
132
+
133
+ **User review gate in brainstorming** (#565)
134
+
135
+ - Added explicit user review step between spec completion and writing-plans handoff
136
+ - User must approve the spec before implementation planning begins
137
+ - Checklist, process flow, and prose updated with the new gate
138
+
139
+ **Session-start hook emits context only once per platform**
140
+
141
+ - Hook now detects whether it's running in Claude Code or another platform
142
+ - Emits `hookSpecificOutput` for Claude Code, `additional_context` for others — prevents double context injection
143
+
144
+ **Linting fix in token analysis script**
145
+
146
+ - `except:` → `except Exception:` in `tests/claude-code/analyze-token-usage.py`
147
+
148
+ ### Maintenance
149
+
150
+ **Removed dead code**
151
+
152
+ - Deleted `lib/skills-core.js` and its test (`tests/opencode/test-skills-core.js`) — unused since February 2026
153
+ - Removed skills-core existence check from `tests/opencode/test-plugin-loading.sh`
154
+
155
+ ### Community
156
+
157
+ - @karuturi — Claude Code official marketplace install instructions (PR #610)
158
+ - @mvanhorn — session-start hook dual-emit fix, OpenCode tool mapping fix
159
+ - @daniel-graham — linting fix for bare except
160
+ - PR #585 author — Windows/Linux hooks quoting fix
161
+
162
+ ---
163
+
164
+ ## v5.0.0 (2026-03-09)
165
+
166
+ ### Breaking Changes
167
+
168
+ **Specs and plans directory restructured**
169
+
170
+ - Specs (brainstorming output) now save to `docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md`
171
+ - Plans (writing-plans output) now save to `docs/superpowers/plans/YYYY-MM-DD-<feature-name>.md`
172
+ - User preferences for spec/plan locations override these defaults
173
+ - All internal skill references, test files, and example paths updated to match
174
+ - Migration: move existing files from `docs/plans/` to new locations if desired
175
+
176
+ **Subagent-driven development mandatory on capable harnesses**
177
+
178
+ Writing-plans no longer offers a choice between subagent-driven and executing-plans. On harnesses with subagent support (Claude Code, Codex), subagent-driven-development is required. Executing-plans is reserved for harnesses without subagent capability, and now tells the user that Superpowers works better on a subagent-capable platform.
179
+
180
+ **Executing-plans no longer batches**
181
+
182
+ Removed the "execute 3 tasks then stop for review" pattern. Plans now execute continuously, stopping only for blockers.
183
+
184
+ **Slash commands deprecated**
185
+
186
+ `/brainstorm`, `/write-plan`, and `/execute-plan` now show deprecation notices pointing users to the corresponding skills. Commands will be removed in the next major release.
187
+
188
+ ### New Features
189
+
190
+ **Visual brainstorming companion**
191
+
192
+ Optional browser-based companion for brainstorming sessions. When a topic would benefit from visuals, the brainstorming skill offers to show mockups, diagrams, comparisons, and other content in a browser window alongside terminal conversation.
193
+
194
+ - `lib/brainstorm-server/` — WebSocket server with browser helper library, session management scripts, and dark/light themed frame template ("Superpowers Brainstorming" with GitHub link)
195
+ - `skills/brainstorming/visual-companion.md` — Progressive disclosure guide for server workflow, screen authoring, and feedback collection
196
+ - Brainstorming skill adds a visual companion decision point to its process flow: after exploring project context, the skill evaluates whether upcoming questions involve visual content and offers the companion in its own message
197
+ - Per-question decision: even after accepting, each question is evaluated for whether browser or terminal is more appropriate
198
+ - Integration tests in `tests/brainstorm-server/`
199
+
200
+ **Document review system**
201
+
202
+ Automated review loops for spec and plan documents using subagent dispatch:
203
+
204
+ - `skills/brainstorming/spec-document-reviewer-prompt.md` — Reviewer checks completeness, consistency, architecture, and YAGNI
205
+ - `skills/writing-plans/plan-document-reviewer-prompt.md` — Reviewer checks spec alignment, task decomposition, file structure, and file size
206
+ - Brainstorming dispatches spec reviewer after writing the design doc
207
+ - Writing-plans includes chunk-based plan review loop after each section
208
+ - Review loops repeat until approved or escalate after 5 iterations
209
+ - End-to-end tests in `tests/claude-code/test-document-review-system.sh`
210
+ - Design spec and implementation plan in `docs/superpowers/`
211
+
212
+ **Architecture guidance across the skill pipeline**
213
+
214
+ Design-for-isolation and file-size-awareness guidance added to brainstorming, writing-plans, and subagent-driven-development:
215
+
216
+ - **Brainstorming** — New sections: "Design for isolation and clarity" (clear boundaries, well-defined interfaces, independently testable units) and "Working in existing codebases" (follow existing patterns, targeted improvements only)
217
+ - **Writing-plans** — New "File Structure" section: map out files and responsibilities before defining tasks. New "Scope Check" backstop: catch multi-subsystem specs that should have been decomposed during brainstorming
218
+ - **SDD implementer** — New "Code Organization" section (follow plan's file structure, report concerns about growing files) and "When You're in Over Your Head" escalation guidance
219
+ - **SDD code quality reviewer** — Now checks architecture, unit decomposition, plan conformance, and file growth
220
+ - **Spec/plan reviewers** — Architecture and file size added to review criteria
221
+ - **Scope assessment** — Brainstorming now assesses whether a project is too large for a single spec. Multi-subsystem requests are flagged early and decomposed into sub-projects, each with its own spec → plan → implementation cycle
222
+
223
+ **Subagent-driven development improvements**
224
+
225
+ - **Model selection** — Guidance for choosing model capability by task type: cheap models for mechanical implementation, standard for integration, capable for architecture and review
226
+ - **Implementer status protocol** — Subagents now report DONE, DONE_WITH_CONCERNS, BLOCKED, or NEEDS_CONTEXT. Controller handles each status appropriately: re-dispatching with more context, upgrading model capability, breaking tasks apart, or escalating to human
227
+
228
+ ### Improvements
229
+
230
+ **Instruction priority hierarchy**
231
+
232
+ Added explicit priority ordering to using-superpowers:
233
+
234
+ 1. User's explicit instructions (CLAUDE.md, AGENTS.md, direct requests) — highest priority
235
+ 2. Superpowers skills — override default system behavior
236
+ 3. Default system prompt — lowest priority
237
+
238
+ If CLAUDE.md or AGENTS.md says "don't use TDD" and a skill says "always use TDD," the user's instructions win.
239
+
240
+ **SUBAGENT-STOP gate**
241
+
242
+ Added `<SUBAGENT-STOP>` block to using-superpowers. Subagents dispatched for specific tasks now skip the skill instead of activating the 1% rule and invoking full skill workflows.
243
+
244
+ **Multi-platform improvements**
245
+
246
+ - Codex tool mapping moved to progressive disclosure reference file (`references/codex-tools.md`)
247
+ - Platform Adaptation pointer added so non-Claude-Code platforms can find tool equivalents
248
+ - Plan headers now address "agentic workers" instead of "Claude" specifically
249
+ - Collab feature requirement documented in `docs/README.codex.md`
250
+
251
+ **Writing-plans template updates**
252
+
253
+ - Plan steps now use checkbox syntax (`- [ ] **Step N:**`) for progress tracking
254
+ - Plan header references both subagent-driven-development and executing-plans with platform-aware routing
255
+
256
+ ---
257
+
258
+ ## v4.3.1 (2026-02-21)
259
+
260
+ ### Added
261
+
262
+ **Cursor support**
263
+
264
+ Superpowers now works with Cursor's plugin system. Includes a `.cursor-plugin/plugin.json` manifest and Cursor-specific installation instructions in the README. The SessionStart hook output now includes an `additional_context` field alongside the existing `hookSpecificOutput.additionalContext` for Cursor hook compatibility.
265
+
266
+ ### Fixed
267
+
268
+ **Windows: Restored polyglot wrapper for reliable hook execution (#518, #504, #491, #487, #466, #440)**
269
+
270
+ Claude Code's `.sh` auto-detection on Windows was prepending `bash` to the hook command, breaking execution. The fix:
271
+
272
+ - Renamed `session-start.sh` to `session-start` (extensionless) so auto-detection doesn't interfere
273
+ - Restored `run-hook.cmd` polyglot wrapper with multi-location bash discovery (standard Git for Windows paths, then PATH fallback)
274
+ - Exits silently if no bash is found rather than erroring
275
+ - On Unix, the wrapper runs the script directly via `exec bash`
276
+ - Uses POSIX-safe `dirname "$0"` path resolution (works on dash/sh, not just bash)
277
+
278
+ This fixes SessionStart failures on Windows with spaces in paths, missing WSL, `set -euo pipefail` fragility on MSYS, and backslash mangling.
279
+
280
+ ## v4.3.0 (2026-02-12)
281
+
282
+ This fix should dramatically improve superpowers skills compliance and should reduce the chances of Claude entering its native plan mode unintentionally.
283
+
284
+ ### Changed
285
+
286
+ **Brainstorming skill now enforces its workflow instead of describing it**
287
+
288
+ Models were skipping the design phase and jumping straight to implementation skills like frontend-design, or collapsing the entire brainstorming process into a single text block. The skill now uses hard gates, a mandatory checklist, and a graphviz process flow to enforce compliance:
289
+
290
+ - `<HARD-GATE>`: no implementation skills, code, or scaffolding until design is presented and user approves
291
+ - Explicit checklist (6 items) that must be created as tasks and completed in order
292
+ - Graphviz process flow with `writing-plans` as the only valid terminal state
293
+ - Anti-pattern callout for "this is too simple to need a design" — the exact rationalization models use to skip the process
294
+ - Design section sizing based on section complexity, not project complexity
295
+
296
+ **Using-superpowers workflow graph intercepts EnterPlanMode**
297
+
298
+ Added an `EnterPlanMode` intercept to the skill flow graph. When the model is about to enter Claude's native plan mode, it checks whether brainstorming has happened and routes through the brainstorming skill instead. Plan mode is never entered.
299
+
300
+ ### Fixed
301
+
302
+ **SessionStart hook now runs synchronously**
303
+
304
+ Changed `async: true` to `async: false` in hooks.json. When async, the hook could fail to complete before the model's first turn, meaning using-superpowers instructions weren't in context for the first message.
305
+
306
+ ## v4.2.0 (2026-02-05)
307
+
308
+ ### Breaking Changes
309
+
310
+ **Codex: Replaced bootstrap CLI with native skill discovery**
311
+
312
+ The `superpowers-codex` bootstrap CLI, Windows `.cmd` wrapper, and related bootstrap content file have been removed. Codex now uses native skill discovery via `~/.agents/skills/superpowers/` symlink, so the old `use_skill`/`find_skills` CLI tools are no longer needed.
313
+
314
+ Installation is now just clone + symlink (documented in INSTALL.md). No Node.js dependency required. The old `~/.codex/skills/` path is deprecated.
315
+
316
+ ### Fixes
317
+
318
+ **Windows: Fixed Claude Code 2.1.x hook execution (#331)**
319
+
320
+ Claude Code 2.1.x changed how hooks execute on Windows: it now auto-detects `.sh` files in commands and prepends `bash`. This broke the polyglot wrapper pattern because `bash "run-hook.cmd" session-start.sh` tries to execute the `.cmd` file as a bash script.
321
+
322
+ Fix: hooks.json now calls session-start.sh directly. Claude Code 2.1.x handles the bash invocation automatically. Also added .gitattributes to enforce LF line endings for shell scripts (fixes CRLF issues on Windows checkout).
323
+
324
+ **Windows: SessionStart hook runs async to prevent terminal freeze (#404, #413, #414, #419)**
325
+
326
+ The synchronous SessionStart hook blocked the TUI from entering raw mode on Windows, freezing all keyboard input. Running the hook async prevents the freeze while still injecting superpowers context.
327
+
328
+ **Windows: Fixed O(n^2) `escape_for_json` performance**
329
+
330
+ The character-by-character loop using `${input:$i:1}` was O(n^2) in bash due to substring copy overhead. On Windows Git Bash this took 60+ seconds. Replaced with bash parameter substitution (`${s//old/new}`) which runs each pattern as a single C-level pass — 7x faster on macOS, dramatically faster on Windows.
331
+
332
+ **Codex: Fixed Windows/PowerShell invocation (#285, #243)**
333
+
334
+ - Windows doesn't respect shebangs, so directly invoking the extensionless `superpowers-codex` script triggered an "Open with" dialog. All invocations now prefixed with `node`.
335
+ - Fixed `~/` path expansion on Windows — PowerShell doesn't expand `~` when passed as an argument to `node`. Changed to `$HOME` which expands correctly in both bash and PowerShell.
336
+
337
+ **Codex: Fixed path resolution in installer**
338
+
339
+ Used `fileURLToPath()` instead of manual URL pathname parsing to correctly handle paths with spaces and special characters on all platforms.
340
+
341
+ **Codex: Fixed stale skills path in writing-skills**
342
+
343
+ Updated `~/.codex/skills/` reference (deprecated) to `~/.agents/skills/` for native discovery.
344
+
345
+ ### Improvements
346
+
347
+ **Worktree isolation now required before implementation**
348
+
349
+ Added `using-git-worktrees` as a required skill for both `subagent-driven-development` and `executing-plans`. Implementation workflows now explicitly require setting up an isolated worktree before starting work, preventing accidental work directly on main.
350
+
351
+ **Main branch protection softened to require explicit consent**
352
+
353
+ Instead of prohibiting main branch work entirely, the skills now allow it with explicit user consent. More flexible while still ensuring users are aware of the implications.
354
+
355
+ **Simplified installation verification**
356
+
357
+ Removed `/help` command check and specific slash command list from verification steps. Skills are primarily invoked by describing what you want to do, not by running specific commands.
358
+
359
+ **Codex: Clarified subagent tool mapping in bootstrap**
360
+
361
+ Improved documentation of how Codex tools map to Claude Code equivalents for subagent workflows.
362
+
363
+ ### Tests
364
+
365
+ - Added worktree requirement test for subagent-driven-development
366
+ - Added main branch red flag warning test
367
+ - Fixed case sensitivity in skill recognition test assertions
368
+
369
+ ---
370
+
371
+ ## v4.1.1 (2026-01-23)
372
+
373
+ ### Fixes
374
+
375
+ **OpenCode: Standardized on `plugins/` directory per official docs (#343)**
376
+
377
+ OpenCode's official documentation uses `~/.config/opencode/plugins/` (plural). Our docs previously used `plugin/` (singular). While OpenCode accepts both forms, we've standardized on the official convention to avoid confusion.
378
+
379
+ Changes:
380
+ - Renamed `.opencode/plugin/` to `.opencode/plugins/` in repo structure
381
+ - Updated all installation docs (INSTALL.md, README.opencode.md) across all platforms
382
+ - Updated test scripts to match
383
+
384
+ **OpenCode: Fixed symlink instructions (#339, #342)**
385
+
386
+ - Added explicit `rm` before `ln -s` (fixes "file already exists" errors on reinstall)
387
+ - Added missing skills symlink step that was absent from INSTALL.md
388
+ - Updated from deprecated `use_skill`/`find_skills` to native `skill` tool references
389
+
390
+ ---
391
+
392
+ ## v4.1.0 (2026-01-23)
393
+
394
+ ### Breaking Changes
395
+
396
+ **OpenCode: Switched to native skills system**
397
+
398
+ Superpowers for OpenCode now uses OpenCode's native `skill` tool instead of custom `use_skill`/`find_skills` tools. This is a cleaner integration that works with OpenCode's built-in skill discovery.
399
+
400
+ **Migration required:** Skills must be symlinked to `~/.config/opencode/skills/superpowers/` (see updated installation docs).
401
+
402
+ ### Fixes
403
+
404
+ **OpenCode: Fixed agent reset on session start (#226)**
405
+
406
+ The previous bootstrap injection method using `session.prompt({ noReply: true })` caused OpenCode to reset the selected agent to "build" on first message. Now uses `experimental.chat.system.transform` hook which modifies the system prompt directly without side effects.
407
+
408
+ **OpenCode: Fixed Windows installation (#232)**
409
+
410
+ - Removed dependency on `skills-core.js` (eliminates broken relative imports when file is copied instead of symlinked)
411
+ - Added comprehensive Windows installation docs for cmd.exe, PowerShell, and Git Bash
412
+ - Documented proper symlink vs junction usage for each platform
413
+
414
+ **Claude Code: Fixed Windows hook execution for Claude Code 2.1.x**
415
+
416
+ Claude Code 2.1.x changed how hooks execute on Windows: it now auto-detects `.sh` files in commands and prepends `bash `. This broke the polyglot wrapper pattern because `bash "run-hook.cmd" session-start.sh` tries to execute the .cmd file as a bash script.
417
+
418
+ Fix: hooks.json now calls session-start.sh directly. Claude Code 2.1.x handles the bash invocation automatically. Also added .gitattributes to enforce LF line endings for shell scripts (fixes CRLF issues on Windows checkout).
419
+
420
+ ---
421
+
422
+ ## v4.0.3 (2025-12-26)
423
+
424
+ ### Improvements
425
+
426
+ **Strengthened using-superpowers skill for explicit skill requests**
427
+
428
+ Addressed a failure mode where Claude would skip invoking a skill even when the user explicitly requested it by name (e.g., "subagent-driven-development, please"). Claude would think "I know what that means" and start working directly instead of loading the skill.
429
+
430
+ Changes:
431
+ - Updated "The Rule" to say "Invoke relevant or requested skills" instead of "Check for skills" - emphasizing active invocation over passive checking
432
+ - Added "BEFORE any response or action" - the original wording only mentioned "response" but Claude would sometimes take action without responding first
433
+ - Added reassurance that invoking a wrong skill is okay - reduces hesitation
434
+ - Added new red flag: "I know what that means" → Knowing the concept ≠ using the skill
435
+
436
+ **Added explicit skill request tests**
437
+
438
+ New test suite in `tests/explicit-skill-requests/` that verifies Claude correctly invokes skills when users request them by name. Includes single-turn and multi-turn test scenarios.
439
+
440
+ ## v4.0.2 (2025-12-23)
441
+
442
+ ### Fixes
443
+
444
+ **Slash commands now user-only**
445
+
446
+ Added `disable-model-invocation: true` to all three slash commands (`/brainstorm`, `/execute-plan`, `/write-plan`). Claude can no longer invoke these commands via the Skill tool—they're restricted to manual user invocation only.
447
+
448
+ The underlying skills (`superpowers:brainstorming`, `superpowers:executing-plans`, `superpowers:writing-plans`) remain available for Claude to invoke autonomously. This change prevents confusion when Claude would invoke a command that just redirects to a skill anyway.
449
+
450
+ ## v4.0.1 (2025-12-23)
451
+
452
+ ### Fixes
453
+
454
+ **Clarified how to access skills in Claude Code**
455
+
456
+ Fixed a confusing pattern where Claude would invoke a skill via the Skill tool, then try to Read the skill file separately. The `using-superpowers` skill now explicitly states that the Skill tool loads skill content directly—no need to read files.
457
+
458
+ - Added "How to Access Skills" section to `using-superpowers`
459
+ - Changed "read the skill" → "invoke the skill" in instructions
460
+ - Updated slash commands to use fully qualified skill names (e.g., `superpowers:brainstorming`)
461
+
462
+ **Added GitHub thread reply guidance to receiving-code-review** (h/t @ralphbean)
463
+
464
+ Added a note about replying to inline review comments in the original thread rather than as top-level PR comments.
465
+
466
+ **Added automation-over-documentation guidance to writing-skills** (h/t @EthanJStark)
467
+
468
+ Added guidance that mechanical constraints should be automated, not documented—save skills for judgment calls.
469
+
470
+ ## v4.0.0 (2025-12-17)
471
+
472
+ ### New Features
473
+
474
+ **Two-stage code review in subagent-driven-development**
475
+
476
+ Subagent workflows now use two separate review stages after each task:
477
+
478
+ 1. **Spec compliance review** - Skeptical reviewer verifies implementation matches spec exactly. Catches missing requirements AND over-building. Won't trust implementer's report—reads actual code.
479
+
480
+ 2. **Code quality review** - Only runs after spec compliance passes. Reviews for clean code, test coverage, maintainability.
481
+
482
+ This catches the common failure mode where code is well-written but doesn't match what was requested. Reviews are loops, not one-shot: if reviewer finds issues, implementer fixes them, then reviewer checks again.
483
+
484
+ Other subagent workflow improvements:
485
+ - Controller provides full task text to workers (not file references)
486
+ - Workers can ask clarifying questions before AND during work
487
+ - Self-review checklist before reporting completion
488
+ - Plan read once at start, extracted to TodoWrite
489
+
490
+ New prompt templates in `skills/subagent-driven-development/`:
491
+ - `implementer-prompt.md` - Includes self-review checklist, encourages questions
492
+ - `spec-reviewer-prompt.md` - Skeptical verification against requirements
493
+ - `code-quality-reviewer-prompt.md` - Standard code review
494
+
495
+ **Debugging techniques consolidated with tools**
496
+
497
+ `systematic-debugging` now bundles supporting techniques and tools:
498
+ - `root-cause-tracing.md` - Trace bugs backward through call stack
499
+ - `defense-in-depth.md` - Add validation at multiple layers
500
+ - `condition-based-waiting.md` - Replace arbitrary timeouts with condition polling
501
+ - `find-polluter.sh` - Bisection script to find which test creates pollution
502
+ - `condition-based-waiting-example.ts` - Complete implementation from real debugging session
503
+
504
+ **Testing anti-patterns reference**
505
+
506
+ `test-driven-development` now includes `testing-anti-patterns.md` covering:
507
+ - Testing mock behavior instead of real behavior
508
+ - Adding test-only methods to production classes
509
+ - Mocking without understanding dependencies
510
+ - Incomplete mocks that hide structural assumptions
511
+
512
+ **Skill test infrastructure**
513
+
514
+ Three new test frameworks for validating skill behavior:
515
+
516
+ `tests/skill-triggering/` - Validates skills trigger from naive prompts without explicit naming. Tests 6 skills to ensure descriptions alone are sufficient.
517
+
518
+ `tests/claude-code/` - Integration tests using `claude -p` for headless testing. Verifies skill usage via session transcript (JSONL) analysis. Includes `analyze-token-usage.py` for cost tracking.
519
+
520
+ `tests/subagent-driven-dev/` - End-to-end workflow validation with two complete test projects:
521
+ - `go-fractals/` - CLI tool with Sierpinski/Mandelbrot (10 tasks)
522
+ - `svelte-todo/` - CRUD app with localStorage and Playwright (12 tasks)
523
+
524
+ ### Major Changes
525
+
526
+ **DOT flowcharts as executable specifications**
527
+
528
+ Rewrote key skills using DOT/GraphViz flowcharts as the authoritative process definition. Prose becomes supporting content.
529
+
530
+ **The Description Trap** (documented in `writing-skills`): Discovered that skill descriptions override flowchart content when descriptions contain workflow summaries. Claude follows the short description instead of reading the detailed flowchart. Fix: descriptions must be trigger-only ("Use when X") with no process details.
531
+
532
+ **Skill priority in using-superpowers**
533
+
534
+ When multiple skills apply, process skills (brainstorming, debugging) now explicitly come before implementation skills. "Build X" triggers brainstorming first, then domain skills.
535
+
536
+ **brainstorming trigger strengthened**
537
+
538
+ Description changed to imperative: "You MUST use this before any creative work—creating features, building components, adding functionality, or modifying behavior."
539
+
540
+ ### Breaking Changes
541
+
542
+ **Skill consolidation** - Six standalone skills merged:
543
+ - `root-cause-tracing`, `defense-in-depth`, `condition-based-waiting` → bundled in `systematic-debugging/`
544
+ - `testing-skills-with-subagents` → bundled in `writing-skills/`
545
+ - `testing-anti-patterns` → bundled in `test-driven-development/`
546
+ - `sharing-skills` removed (obsolete)
547
+
548
+ ### Other Improvements
549
+
550
+ - **render-graphs.js** - Tool to extract DOT diagrams from skills and render to SVG
551
+ - **Rationalizations table** in using-superpowers - Scannable format including new entries: "I need more context first", "Let me explore first", "This feels productive"
552
+ - **docs/testing.md** - Guide to testing skills with Claude Code integration tests
553
+
554
+ ---
555
+
556
+ ## v3.6.2 (2025-12-03)
557
+
558
+ ### Fixed
559
+
560
+ - **Linux Compatibility**: Fixed polyglot hook wrapper (`run-hook.cmd`) to use POSIX-compliant syntax
561
+ - Replaced bash-specific `${BASH_SOURCE[0]:-$0}` with standard `$0` on line 16
562
+ - Resolves "Bad substitution" error on Ubuntu/Debian systems where `/bin/sh` is dash
563
+ - Fixes #141
564
+
565
+ ---
566
+
567
+ ## v3.5.1 (2025-11-24)
568
+
569
+ ### Changed
570
+
571
+ - **OpenCode Bootstrap Refactor**: Switched from `chat.message` hook to `session.created` event for bootstrap injection
572
+ - Bootstrap now injects at session creation via `session.prompt()` with `noReply: true`
573
+ - Explicitly tells the model that using-superpowers is already loaded to prevent redundant skill loading
574
+ - Consolidated bootstrap content generation into shared `getBootstrapContent()` helper
575
+ - Cleaner single-implementation approach (removed fallback pattern)
576
+
577
+ ---
578
+
579
+ ## v3.5.0 (2025-11-23)
580
+
581
+ ### Added
582
+
583
+ - **OpenCode Support**: Native JavaScript plugin for OpenCode.ai
584
+ - Custom tools: `use_skill` and `find_skills`
585
+ - Message insertion pattern for skill persistence across context compaction
586
+ - Automatic context injection via chat.message hook
587
+ - Auto re-injection on session.compacted events
588
+ - Three-tier skill priority: project > personal > superpowers
589
+ - Project-local skills support (`.opencode/skills/`)
590
+ - Shared core module (`lib/skills-core.js`) for code reuse with Codex
591
+ - Automated test suite with proper isolation (`tests/opencode/`)
592
+ - Platform-specific documentation (`docs/README.opencode.md`, `docs/README.codex.md`)
593
+
594
+ ### Changed
595
+
596
+ - **Refactored Codex Implementation**: Now uses shared `lib/skills-core.js` ES module
597
+ - Eliminates code duplication between Codex and OpenCode
598
+ - Single source of truth for skill discovery and parsing
599
+ - Codex successfully loads ES modules via Node.js interop
600
+
601
+ - **Improved Documentation**: Rewrote README to explain problem/solution clearly
602
+ - Removed duplicate sections and conflicting information
603
+ - Added complete workflow description (brainstorm → plan → execute → finish)
604
+ - Simplified platform installation instructions
605
+ - Emphasized skill-checking protocol over automatic activation claims
606
+
607
+ ---
608
+
609
+ ## v3.4.1 (2025-10-31)
610
+
611
+ ### Improvements
612
+
613
+ - Optimized superpowers bootstrap to eliminate redundant skill execution. The `using-superpowers` skill content is now provided directly in session context, with clear guidance to use the Skill tool only for other skills. This reduces overhead and prevents the confusing loop where agents would execute `using-superpowers` manually despite already having the content from session start.
614
+
615
+ ## v3.4.0 (2025-10-30)
616
+
617
+ ### Improvements
618
+
619
+ - Simplified `brainstorming` skill to return to original conversational vision. Removed heavyweight 6-phase process with formal checklists in favor of natural dialogue: ask questions one at a time, then present design in 200-300 word sections with validation. Keeps documentation and implementation handoff features.
620
+
621
+ ## v3.3.1 (2025-10-28)
622
+
623
+ ### Improvements
624
+
625
+ - Updated `brainstorming` skill to require autonomous recon before questioning, encourage recommendation-driven decisions, and prevent agents from delegating prioritization back to humans.
626
+ - Applied writing clarity improvements to `brainstorming` skill following Strunk's "Elements of Style" principles (omitted needless words, converted negative to positive form, improved parallel construction).
627
+
628
+ ### Bug Fixes
629
+
630
+ - Clarified `writing-skills` guidance so it points to the correct agent-specific personal skill directories (`~/.claude/skills` for Claude Code, `~/.codex/skills` for Codex).
631
+
632
+ ## v3.3.0 (2025-10-28)
633
+
634
+ ### New Features
635
+
636
+ **Experimental Codex Support**
637
+ - Added unified `superpowers-codex` script with bootstrap/use-skill/find-skills commands
638
+ - Cross-platform Node.js implementation (works on Windows, macOS, Linux)
639
+ - Namespaced skills: `superpowers:skill-name` for superpowers skills, `skill-name` for personal
640
+ - Personal skills override superpowers skills when names match
641
+ - Clean skill display: shows name/description without raw frontmatter
642
+ - Helpful context: shows supporting files directory for each skill
643
+ - Tool mapping for Codex: TodoWrite→update_plan, subagents→manual fallback, etc.
644
+ - Bootstrap integration with minimal AGENTS.md for automatic startup
645
+ - Complete installation guide and bootstrap instructions specific to Codex
646
+
647
+ **Key differences from Claude Code integration:**
648
+ - Single unified script instead of separate tools
649
+ - Tool substitution system for Codex-specific equivalents
650
+ - Simplified subagent handling (manual work instead of delegation)
651
+ - Updated terminology: "Superpowers skills" instead of "Core skills"
652
+
653
+ ### Files Added
654
+ - `.codex/INSTALL.md` - Installation guide for Codex users
655
+ - `.codex/superpowers-bootstrap.md` - Bootstrap instructions with Codex adaptations
656
+ - `.codex/superpowers-codex` - Unified Node.js executable with all functionality
657
+
658
+ **Note:** Codex support is experimental. The integration provides core superpowers functionality but may require refinement based on user feedback.
659
+
660
+ ## v3.2.3 (2025-10-23)
661
+
662
+ ### Improvements
663
+
664
+ **Updated using-superpowers skill to use Skill tool instead of Read tool**
665
+ - Changed skill invocation instructions from Read tool to Skill tool
666
+ - Updated description: "using Read tool" → "using Skill tool"
667
+ - Updated step 3: "Use the Read tool" → "Use the Skill tool to read and run"
668
+ - Updated rationalization list: "Read the current version" → "Run the current version"
669
+
670
+ The Skill tool is the proper mechanism for invoking skills in Claude Code. This update corrects the bootstrap instructions to guide agents toward the correct tool.
671
+
672
+ ### Files Changed
673
+ - Updated: `skills/using-superpowers/SKILL.md` - Changed tool references from Read to Skill
674
+
675
+ ## v3.2.2 (2025-10-21)
676
+
677
+ ### Improvements
678
+
679
+ **Strengthened using-superpowers skill against agent rationalization**
680
+ - Added EXTREMELY-IMPORTANT block with absolute language about mandatory skill checking
681
+ - "If even 1% chance a skill applies, you MUST read it"
682
+ - "You do not have a choice. You cannot rationalize your way out."
683
+ - Added MANDATORY FIRST RESPONSE PROTOCOL checklist
684
+ - 5-step process agents must complete before any response
685
+ - Explicit "responding without this = failure" consequence
686
+ - Added Common Rationalizations section with 8 specific evasion patterns
687
+ - "This is just a simple question" → WRONG
688
+ - "I can check files quickly" → WRONG
689
+ - "Let me gather information first" → WRONG
690
+ - Plus 5 more common patterns observed in agent behavior
691
+
692
+ These changes address observed agent behavior where they rationalize around skill usage despite clear instructions. The forceful language and pre-emptive counter-arguments aim to make non-compliance harder.
693
+
694
+ ### Files Changed
695
+ - Updated: `skills/using-superpowers/SKILL.md` - Added three layers of enforcement to prevent skill-skipping rationalization
696
+
697
+ ## v3.2.1 (2025-10-20)
698
+
699
+ ### New Features
700
+
701
+ **Code reviewer agent now included in plugin**
702
+ - Added `superpowers:code-reviewer` agent to plugin's `agents/` directory
703
+ - Agent provides systematic code review against plans and coding standards
704
+ - Previously required users to have personal agent configuration
705
+ - All skill references updated to use namespaced `superpowers:code-reviewer`
706
+ - Fixes #55
707
+
708
+ ### Files Changed
709
+ - New: `agents/code-reviewer.md` - Agent definition with review checklist and output format
710
+ - Updated: `skills/requesting-code-review/SKILL.md` - References to `superpowers:code-reviewer`
711
+ - Updated: `skills/subagent-driven-development/SKILL.md` - References to `superpowers:code-reviewer`
712
+
713
+ ## v3.2.0 (2025-10-18)
714
+
715
+ ### New Features
716
+
717
+ **Design documentation in brainstorming workflow**
718
+ - Added Phase 4: Design Documentation to brainstorming skill
719
+ - Design documents now written to `docs/plans/YYYY-MM-DD-<topic>-design.md` before implementation
720
+ - Restores functionality from original brainstorming command that was lost during skill conversion
721
+ - Documents written before worktree setup and implementation planning
722
+ - Tested with subagent to verify compliance under time pressure
723
+
724
+ ### Breaking Changes
725
+
726
+ **Skill reference namespace standardization**
727
+ - All internal skill references now use `superpowers:` namespace prefix
728
+ - Updated format: `superpowers:test-driven-development` (previously just `test-driven-development`)
729
+ - Affects all REQUIRED SUB-SKILL, RECOMMENDED SUB-SKILL, and REQUIRED BACKGROUND references
730
+ - Aligns with how skills are invoked using the Skill tool
731
+ - Files updated: brainstorming, executing-plans, subagent-driven-development, systematic-debugging, testing-skills-with-subagents, writing-plans, writing-skills
732
+
733
+ ### Improvements
734
+
735
+ **Design vs implementation plan naming**
736
+ - Design documents use `-design.md` suffix to prevent filename collisions
737
+ - Implementation plans continue using existing `YYYY-MM-DD-<feature-name>.md` format
738
+ - Both stored in `docs/plans/` directory with clear naming distinction
739
+
740
+ ## v3.1.1 (2025-10-17)
741
+
742
+ ### Bug Fixes
743
+
744
+ - **Fixed command syntax in README** (#44) - Updated all command references to use correct namespaced syntax (`/superpowers:brainstorm` instead of `/brainstorm`). Plugin-provided commands are automatically namespaced by Claude Code to avoid conflicts between plugins.
745
+
746
+ ## v3.1.0 (2025-10-17)
747
+
748
+ ### Breaking Changes
749
+
750
+ **Skill names standardized to lowercase**
751
+ - All skill frontmatter `name:` fields now use lowercase kebab-case matching directory names
752
+ - Examples: `brainstorming`, `test-driven-development`, `using-git-worktrees`
753
+ - All skill announcements and cross-references updated to lowercase format
754
+ - This ensures consistent naming across directory names, frontmatter, and documentation
755
+
756
+ ### New Features
757
+
758
+ **Enhanced brainstorming skill**
759
+ - Added Quick Reference table showing phases, activities, and tool usage
760
+ - Added copyable workflow checklist for tracking progress
761
+ - Added decision flowchart for when to revisit earlier phases
762
+ - Added comprehensive AskUserQuestion tool guidance with concrete examples
763
+ - Added "Question Patterns" section explaining when to use structured vs open-ended questions
764
+ - Restructured Key Principles as scannable table
765
+
766
+ **Anthropic best practices integration**
767
+ - Added `skills/writing-skills/anthropic-best-practices.md` - Official Anthropic skill authoring guide
768
+ - Referenced in writing-skills SKILL.md for comprehensive guidance
769
+ - Provides patterns for progressive disclosure, workflows, and evaluation
770
+
771
+ ### Improvements
772
+
773
+ **Skill cross-reference clarity**
774
+ - All skill references now use explicit requirement markers:
775
+ - `**REQUIRED BACKGROUND:**` - Prerequisites you must understand
776
+ - `**REQUIRED SUB-SKILL:**` - Skills that must be used in workflow
777
+ - `**Complementary skills:**` - Optional but helpful related skills
778
+ - Removed old path format (`skills/collaboration/X` → just `X`)
779
+ - Updated Integration sections with categorized relationships (Required vs Complementary)
780
+ - Updated cross-reference documentation with best practices
781
+
782
+ **Alignment with Anthropic best practices**
783
+ - Fixed description grammar and voice (fully third-person)
784
+ - Added Quick Reference tables for scanning
785
+ - Added workflow checklists Claude can copy and track
786
+ - Appropriate use of flowcharts for non-obvious decision points
787
+ - Improved scannable table formats
788
+ - All skills well under 500-line recommendation
789
+
790
+ ### Bug Fixes
791
+
792
+ - **Re-added missing command redirects** - Restored `commands/brainstorm.md` and `commands/write-plan.md` that were accidentally removed in v3.0 migration
793
+ - Fixed `defense-in-depth` name mismatch (was `Defense-in-Depth-Validation`)
794
+ - Fixed `receiving-code-review` name mismatch (was `Code-Review-Reception`)
795
+ - Fixed `commands/brainstorm.md` reference to correct skill name
796
+ - Removed references to non-existent related skills
797
+
798
+ ### Documentation
799
+
800
+ **writing-skills improvements**
801
+ - Updated cross-referencing guidance with explicit requirement markers
802
+ - Added reference to Anthropic's official best practices
803
+ - Improved examples showing proper skill reference format
804
+
805
+ ## v3.0.1 (2025-10-16)
806
+
807
+ ### Changes
808
+
809
+ We now use Anthropic's first-party skills system!
810
+
811
+ ## v2.0.2 (2025-10-12)
812
+
813
+ ### Bug Fixes
814
+
815
+ - **Fixed false warning when local skills repo is ahead of upstream** - The initialization script was incorrectly warning "New skills available from upstream" when the local repository had commits ahead of upstream. The logic now correctly distinguishes between three git states: local behind (should update), local ahead (no warning), and diverged (should warn).
816
+
817
+ ## v2.0.1 (2025-10-12)
818
+
819
+ ### Bug Fixes
820
+
821
+ - **Fixed session-start hook execution in plugin context** (#8, PR #9) - The hook was failing silently with "Plugin hook error" preventing skills context from loading. Fixed by:
822
+ - Using `${BASH_SOURCE[0]:-$0}` fallback when BASH_SOURCE is unbound in Claude Code's execution context
823
+ - Adding `|| true` to handle empty grep results gracefully when filtering status flags
824
+
825
+ ---
826
+
827
+ # Superpowers v2.0.0 Release Notes
828
+
829
+ ## Overview
830
+
831
+ Superpowers v2.0 makes skills more accessible, maintainable, and community-driven through a major architectural shift.
832
+
833
+ The headline change is **skills repository separation**: all skills, scripts, and documentation have moved from the plugin into a dedicated repository ([obra/superpowers-skills](https://github.com/obra/superpowers-skills)). This transforms superpowers from a monolithic plugin into a lightweight shim that manages a local clone of the skills repository. Skills auto-update on session start. Users fork and contribute improvements via standard git workflows. The skills library versions independently from the plugin.
834
+
835
+ Beyond infrastructure, this release adds nine new skills focused on problem-solving, research, and architecture. We rewrote the core **using-skills** documentation with imperative tone and clearer structure, making it easier for Claude to understand when and how to use skills. **find-skills** now outputs paths you can paste directly into the Read tool, eliminating friction in the skills discovery workflow.
836
+
837
+ Users experience seamless operation: the plugin handles cloning, forking, and updating automatically. Contributors find the new architecture makes improving and sharing skills trivial. This release lays the foundation for skills to evolve rapidly as a community resource.
838
+
839
+ ## Breaking Changes
840
+
841
+ ### Skills Repository Separation
842
+
843
+ **The biggest change:** Skills no longer live in the plugin. They've been moved to a separate repository at [obra/superpowers-skills](https://github.com/obra/superpowers-skills).
844
+
845
+ **What this means for you:**
846
+
847
+ - **First install:** Plugin automatically clones skills to `~/.config/superpowers/skills/`
848
+ - **Forking:** During setup, you'll be offered the option to fork the skills repo (if `gh` is installed)
849
+ - **Updates:** Skills auto-update on session start (fast-forward when possible)
850
+ - **Contributing:** Work on branches, commit locally, submit PRs to upstream
851
+ - **No more shadowing:** Old two-tier system (personal/core) replaced with single-repo branch workflow
852
+
853
+ **Migration:**
854
+
855
+ If you have an existing installation:
856
+ 1. Your old `~/.config/superpowers/.git` will be backed up to `~/.config/superpowers/.git.bak`
857
+ 2. Old skills will be backed up to `~/.config/superpowers/skills.bak`
858
+ 3. Fresh clone of obra/superpowers-skills will be created at `~/.config/superpowers/skills/`
859
+
860
+ ### Removed Features
861
+
862
+ - **Personal superpowers overlay system** - Replaced with git branch workflow
863
+ - **setup-personal-superpowers hook** - Replaced by initialize-skills.sh
864
+
865
+ ## New Features
866
+
867
+ ### Skills Repository Infrastructure
868
+
869
+ **Automatic Clone & Setup** (`lib/initialize-skills.sh`)
870
+ - Clones obra/superpowers-skills on first run
871
+ - Offers fork creation if GitHub CLI is installed
872
+ - Sets up upstream/origin remotes correctly
873
+ - Handles migration from old installation
874
+
875
+ **Auto-Update**
876
+ - Fetches from tracking remote on every session start
877
+ - Auto-merges with fast-forward when possible
878
+ - Notifies when manual sync needed (branch diverged)
879
+ - Uses pulling-updates-from-skills-repository skill for manual sync
880
+
881
+ ### New Skills
882
+
883
+ **Problem-Solving Skills** (`skills/problem-solving/`)
884
+ - **collision-zone-thinking** - Force unrelated concepts together for emergent insights
885
+ - **inversion-exercise** - Flip assumptions to reveal hidden constraints
886
+ - **meta-pattern-recognition** - Spot universal principles across domains
887
+ - **scale-game** - Test at extremes to expose fundamental truths
888
+ - **simplification-cascades** - Find insights that eliminate multiple components
889
+ - **when-stuck** - Dispatch to right problem-solving technique
890
+
891
+ **Research Skills** (`skills/research/`)
892
+ - **tracing-knowledge-lineages** - Understand how ideas evolved over time
893
+
894
+ **Architecture Skills** (`skills/architecture/`)
895
+ - **preserving-productive-tensions** - Keep multiple valid approaches instead of forcing premature resolution
896
+
897
+ ### Skills Improvements
898
+
899
+ **using-skills (formerly getting-started)**
900
+ - Renamed from getting-started to using-skills
901
+ - Complete rewrite with imperative tone (v4.0.0)
902
+ - Front-loaded critical rules
903
+ - Added "Why" explanations for all workflows
904
+ - Always includes /SKILL.md suffix in references
905
+ - Clearer distinction between rigid rules and flexible patterns
906
+
907
+ **writing-skills**
908
+ - Cross-referencing guidance moved from using-skills
909
+ - Added token efficiency section (word count targets)
910
+ - Improved CSO (Claude Search Optimization) guidance
911
+
912
+ **sharing-skills**
913
+ - Updated for new branch-and-PR workflow (v2.0.0)
914
+ - Removed personal/core split references
915
+
916
+ **pulling-updates-from-skills-repository** (new)
917
+ - Complete workflow for syncing with upstream
918
+ - Replaces old "updating-skills" skill
919
+
920
+ ### Tools Improvements
921
+
922
+ **find-skills**
923
+ - Now outputs full paths with /SKILL.md suffix
924
+ - Makes paths directly usable with Read tool
925
+ - Updated help text
926
+
927
+ **skill-run**
928
+ - Moved from scripts/ to skills/using-skills/
929
+ - Improved documentation
930
+
931
+ ### Plugin Infrastructure
932
+
933
+ **Session Start Hook**
934
+ - Now loads from skills repository location
935
+ - Shows full skills list at session start
936
+ - Prints skills location info
937
+ - Shows update status (updated successfully / behind upstream)
938
+ - Moved "skills behind" warning to end of output
939
+
940
+ **Environment Variables**
941
+ - `SUPERPOWERS_SKILLS_ROOT` set to `~/.config/superpowers/skills`
942
+ - Used consistently throughout all paths
943
+
944
+ ## Bug Fixes
945
+
946
+ - Fixed duplicate upstream remote addition when forking
947
+ - Fixed find-skills double "skills/" prefix in output
948
+ - Removed obsolete setup-personal-superpowers call from session-start
949
+ - Fixed path references throughout hooks and commands
950
+
951
+ ## Documentation
952
+
953
+ ### README
954
+ - Updated for new skills repository architecture
955
+ - Prominent link to superpowers-skills repo
956
+ - Updated auto-update description
957
+ - Fixed skill names and references
958
+ - Updated Meta skills list
959
+
960
+ ### Testing Documentation
961
+ - Added comprehensive testing checklist (`docs/TESTING-CHECKLIST.md`)
962
+ - Created local marketplace config for testing
963
+ - Documented manual testing scenarios
964
+
965
+ ## Technical Details
966
+
967
+ ### File Changes
968
+
969
+ **Added:**
970
+ - `lib/initialize-skills.sh` - Skills repo initialization and auto-update
971
+ - `docs/TESTING-CHECKLIST.md` - Manual testing scenarios
972
+ - `.claude-plugin/marketplace.json` - Local testing config
973
+
974
+ **Removed:**
975
+ - `skills/` directory (82 files) - Now in obra/superpowers-skills
976
+ - `scripts/` directory - Now in obra/superpowers-skills/skills/using-skills/
977
+ - `hooks/setup-personal-superpowers.sh` - Obsolete
978
+
979
+ **Modified:**
980
+ - `hooks/session-start.sh` - Use skills from ~/.config/superpowers/skills
981
+ - `commands/brainstorm.md` - Updated paths to SUPERPOWERS_SKILLS_ROOT
982
+ - `commands/write-plan.md` - Updated paths to SUPERPOWERS_SKILLS_ROOT
983
+ - `commands/execute-plan.md` - Updated paths to SUPERPOWERS_SKILLS_ROOT
984
+ - `README.md` - Complete rewrite for new architecture
985
+
986
+ ### Commit History
987
+
988
+ This release includes:
989
+ - 20+ commits for skills repository separation
990
+ - PR #1: Amplifier-inspired problem-solving and research skills
991
+ - PR #2: Personal superpowers overlay system (later replaced)
992
+ - Multiple skill refinements and documentation improvements
993
+
994
+ ## Upgrade Instructions
995
+
996
+ ### Fresh Install
997
+
998
+ ```bash
999
+ # In Claude Code
1000
+ /plugin marketplace add obra/superpowers-marketplace
1001
+ /plugin install superpowers@superpowers-marketplace
1002
+ ```
1003
+
1004
+ The plugin handles everything automatically.
1005
+
1006
+ ### Upgrading from v1.x
1007
+
1008
+ 1. **Backup your personal skills** (if you have any):
1009
+ ```bash
1010
+ cp -r ~/.config/superpowers/skills ~/superpowers-skills-backup
1011
+ ```
1012
+
1013
+ 2. **Update the plugin:**
1014
+ ```bash
1015
+ /plugin update superpowers
1016
+ ```
1017
+
1018
+ 3. **On next session start:**
1019
+ - Old installation will be backed up automatically
1020
+ - Fresh skills repo will be cloned
1021
+ - If you have GitHub CLI, you'll be offered the option to fork
1022
+
1023
+ 4. **Migrate personal skills** (if you had any):
1024
+ - Create a branch in your local skills repo
1025
+ - Copy your personal skills from backup
1026
+ - Commit and push to your fork
1027
+ - Consider contributing back via PR
1028
+
1029
+ ## What's Next
1030
+
1031
+ ### For Users
1032
+
1033
+ - Explore the new problem-solving skills
1034
+ - Try the branch-based workflow for skill improvements
1035
+ - Contribute skills back to the community
1036
+
1037
+ ### For Contributors
1038
+
1039
+ - Skills repository is now at https://github.com/obra/superpowers-skills
1040
+ - Fork → Branch → PR workflow
1041
+ - See skills/meta/writing-skills/SKILL.md for TDD approach to documentation
1042
+
1043
+ ## Known Issues
1044
+
1045
+ None at this time.
1046
+
1047
+ ## Credits
1048
+
1049
+ - Problem-solving skills inspired by Amplifier patterns
1050
+ - Community contributions and feedback
1051
+ - Extensive testing and iteration on skill effectiveness
1052
+
1053
+ ---
1054
+
1055
+ **Full Changelog:** https://github.com/obra/superpowers/compare/dd013f6...main
1056
+ **Skills Repository:** https://github.com/obra/superpowers-skills
1057
+ **Issues:** https://github.com/obra/superpowers/issues