Environment (required)
| Field |
Value |
| Superpowers version |
v6.1.1 (dev @ c809093) |
| Harness (Claude Code, Cursor, etc.) |
GitHub Copilot CLI |
| Harness version |
1.0.69-1 |
| Your model + version |
Not reliably retained from the original run. This is a static docs/tool-surface mismatch, so it isn't model-specific — anyone can confirm it by reading the section against the Windows Copilot CLI tool surface. |
| All plugins installed |
The run that surfaced it used a Chinese fork of Superpowers; I'm filing upstream because the mismatch applies verbatim to upstream's Copilot CLI section (quoted below). |
| OS + shell |
Windows, PowerShell 7.6.3 |
Is this a Superpowers issue or a platform issue?
Copilot CLI itself works here. The mismatch is in Superpowers' skills/brainstorming/visual-companion.md.
What happened?
In #1680 you asked which environments have a functional coding agent but no Bash. GitHub Copilot CLI on Windows is one. Its supported Windows mode is PowerShell — "Windows from within Powershell and WSL" (https://docs.github.com/en/copilot/concepts/agents/copilot-cli/about-copilot-cli), and the install prerequisite is "PowerShell v6 or higher" (https://github.com/github/copilot-cli). In that mode the agent's shell tool is PowerShell: it exposes powershell (with a detach option), read_powershell, and stop_powershell. There is no Bash tool with mode: "async", read_bash, or stop_bash.
The Copilot CLI section in skills/brainstorming/visual-companion.md (dev @ c809093) reads:
# Use --foreground and start the server via the bash tool with mode: "async"
# so the process survives across turns. Capture the returned shellId for
# read_bash / stop_bash if you need to interact with it later.
scripts/start-server.sh --project-dir /path/to/project --open --foreground
Every control it names (bash tool, mode: "async", read_bash, stop_bash) is absent in Windows Copilot CLI, so a Windows Copilot CLI agent can't follow the section as written. The same file's generic Other environments note already has the right shape — "use --foreground and launch the command with your platform's background execution mechanism" — so the ask here is narrow: make the Copilot CLI block stop contradicting guidance the file already gives. To be clear about scope: I'm not asking for .ps1 ports or native PowerShell copies of the scripts — only for this one section to stop naming a tool surface that isn't present on a supported platform.
Steps to reproduce
- Run GitHub Copilot CLI on Windows (PowerShell mode) with Superpowers installed.
- Enter the brainstorming visual-companion path.
- Have the agent follow the Copilot CLI launch section.
bash / read_bash / stop_bash / mode: "async" aren't available, and the bare scripts/start-server.sh isn't runnable from PowerShell either.
Expected behavior
The Copilot CLI section should point at a mechanism that exists in Windows Copilot CLI (a non-blocking/background shell run) instead of Bash-tool-only controls.
Actual behavior
It names mode: "async", read_bash, and stop_bash. In the run that surfaced this (a downstream fork whose file omitted the Copilot section entirely), the agent improvised a blocking foreground launch, the CLI stayed busy, and a server process was left running. I'm citing that only as the symptom of the same root cause — no Bash tool on Windows Copilot CLI — and I'm not reopening the older Windows lifecycle/orphan issues.
Debug log or conversation transcript
Verified on this machine (Windows, PowerShell 7.6.3, Copilot CLI 1.0.69-1):
- Tools present:
powershell (with detach), read_powershell, stop_powershell. Absent: bash / read_bash / stop_bash.
scripts/start-server.sh … run directly in PowerShell → "not recognized". It runs when invoked as & "C:\Program Files\Git\bin\bash.exe" scripts/start-server.sh … --foreground.
- Launched that way in a backgrounded/detached shell, the call returns immediately and the server survives across turns (keyed URL → 200, no-key → 403). That is the behavior the section is trying to describe.
Suggested direction (docs-only)
Keep it a one-file change: drop the Bash-tool-specific names and point at whatever non-blocking/background mechanism the harness provides — i.e., bring the Copilot CLI block in line with the Other environments wording already in this file. For example:
# Start it with Copilot CLI's non-blocking/background shell mechanism so the
# server survives across turns. Keep --foreground so the harness, not the
# script, owns backgrounding. The launcher is a .sh, so invoke it via bash
# (on Windows, call Git Bash's bash.exe from the PowerShell tool).
bash scripts/start-server.sh --project-dir /path/to/project --open --foreground
If this direction looks right, I'm happy to send a one-file PR against dev. If you'd prefer it even more generic, I can do that instead.
Environment (required)
Is this a Superpowers issue or a platform issue?
Copilot CLI itself works here. The mismatch is in Superpowers'
skills/brainstorming/visual-companion.md.What happened?
In #1680 you asked which environments have a functional coding agent but no Bash. GitHub Copilot CLI on Windows is one. Its supported Windows mode is PowerShell — "Windows from within Powershell and WSL" (https://docs.github.com/en/copilot/concepts/agents/copilot-cli/about-copilot-cli), and the install prerequisite is "PowerShell v6 or higher" (https://github.com/github/copilot-cli). In that mode the agent's shell tool is PowerShell: it exposes
powershell(with adetachoption),read_powershell, andstop_powershell. There is no Bash tool withmode: "async",read_bash, orstop_bash.The Copilot CLI section in
skills/brainstorming/visual-companion.md(dev @ c809093) reads:Every control it names (
bash tool,mode: "async",read_bash,stop_bash) is absent in Windows Copilot CLI, so a Windows Copilot CLI agent can't follow the section as written. The same file's generic Other environments note already has the right shape — "use--foregroundand launch the command with your platform's background execution mechanism" — so the ask here is narrow: make the Copilot CLI block stop contradicting guidance the file already gives. To be clear about scope: I'm not asking for.ps1ports or native PowerShell copies of the scripts — only for this one section to stop naming a tool surface that isn't present on a supported platform.Steps to reproduce
bash/read_bash/stop_bash/mode: "async"aren't available, and the barescripts/start-server.shisn't runnable from PowerShell either.Expected behavior
The Copilot CLI section should point at a mechanism that exists in Windows Copilot CLI (a non-blocking/background shell run) instead of Bash-tool-only controls.
Actual behavior
It names
mode: "async",read_bash, andstop_bash. In the run that surfaced this (a downstream fork whose file omitted the Copilot section entirely), the agent improvised a blocking foreground launch, the CLI stayed busy, and a server process was left running. I'm citing that only as the symptom of the same root cause — no Bash tool on Windows Copilot CLI — and I'm not reopening the older Windows lifecycle/orphan issues.Debug log or conversation transcript
Verified on this machine (Windows, PowerShell 7.6.3, Copilot CLI 1.0.69-1):
powershell(withdetach),read_powershell,stop_powershell. Absent:bash/read_bash/stop_bash.scripts/start-server.sh …run directly in PowerShell → "not recognized". It runs when invoked as& "C:\Program Files\Git\bin\bash.exe" scripts/start-server.sh … --foreground.Suggested direction (docs-only)
Keep it a one-file change: drop the Bash-tool-specific names and point at whatever non-blocking/background mechanism the harness provides — i.e., bring the Copilot CLI block in line with the Other environments wording already in this file. For example:
If this direction looks right, I'm happy to send a one-file PR against
dev. If you'd prefer it even more generic, I can do that instead.