| name | init |
|---|---|
| description | Scaffold the Lights Out SWE harness (copilot-instructions.md, preferences.md, LIGHTS-OUT-SWE.md, scaffolding/, docs/input/, .gitignore) into the current repo. Run once to set up a new repository before starting the pipeline. |
| disable-model-invocation | true |
Bootstrap the Lights Out SWE harness into the current repository. After this command runs, the user should be able to say "build me X" and the pipeline (EXPAND > DESIGN > ANALYZE > BUILD > REVIEW > RECONCILE > VERIFY > DEPLOY) will engage.
This skill ships a bundled init.sh script alongside a templates/ directory containing the exact files a new project needs. There is no network fetch — every file copied is shipped with the plugin and matches the plugin's structure.
-
Refuse if the harness is already installed. If
.github/copilot-instructions.mdexists in the workspace root, stop. Print:.github/copilot-instructions.mdalready exists. Delete it (and any other harness files you want refreshed) before re-running/lo-swe:init.Do not overwrite. Exit without making any changes. (
init.shenforces this too — exit code1.)
-
Locate the script. It lives next to this
SKILL.md. The absolute path is the directory containing this file plus/init.sh. -
Run the script in the workspace root:
bash <absolute-path-to-skill-dir>/init.sh
On Windows, run it from Git Bash (which is on PATH in this environment). Do not attempt to translate the script to PowerShell or
cmd— the.shis the source of truth.If the workspace is not the intended target, pass the target directory as the first argument:
bash <absolute-path-to-skill-dir>/init.sh /path/to/target
-
Read the script's output. It reports, per file:
+written — newly created=skipped — already existed, left untouched
It also prints the next steps for the user.
-
Surface the summary to the user as a clean markdown list (one section for
written, one forskipped), then tell them:Commit these files, then say "build me X" to start the pipeline. The first phase will be EXPAND, which writes
scaffolding/scope.md.
After the script runs, confirm the following exist in the repository root:
.github/copilot-instructions.mdpreferences.mdLIGHTS-OUT-SWE.mdscaffolding/(with at least.gitkeepinside)docs/input/(withREADME.mdinside).gitignore
If any are missing, report which ones and why. Do not silently succeed on a partial install.
The templates/ directory next to this skill contains the canonical set:
templates/
.github/copilot-instructions.md # pipeline loop + discipline rules (auto-loaded by Copilot)
.gitignore # standard ignores for Python / Rust / Node / Go / IDE noise
LIGHTS-OUT-SWE.md # user-facing guide to the harness
preferences.md # stack + conventions (user customizes)
docs/input/README.md # placeholder explaining what goes in docs/input/
scaffolding/.gitkeep # keeps the empty scaffolding/ dir under git
These are the only files this skill writes into the user's repo. The plugin's agents, skills, and prompts (including the phase prompts like /lo-swe:expand) are provided by the plugin itself and do not get copied into the user's repo.
- This skill writes user-project files only. It must never modify files under
agents/,skills/,prompts/, or.claude-plugin/(those are plugin-owned). - Once written, the user owns the installed files. Edit
preferences.mdper project. Re-running/lo-swe:initrefuses by design. - If you ever need to refresh the harness for a new plugin version, delete the files you want refreshed (at minimum
.github/copilot-instructions.md) and re-run/lo-swe:init.