Summary
Running ./install.sh with Dreaming enabled fails when ~/.copilot/skills already exists but is not initialized as a Git repository.
Observed behavior
The installer completes the normal preflight and then exits with:
/Users/<user>/.copilot/skills must be a Git repository
This is easy to encounter when the directory was created by Copilot or contains existing skill symlinks.
Root cause
manage-dreaming.mjs requires the local skills root to be a no-remote Git repository. It rejects an existing directory without .git, rather than initializing it.
Workaround
Initialize the existing directory manually, without adding a remote:
git init ~/.copilot/skills
./install.sh
Or disable Dreaming with ./install.sh --no-dreaming.
Expected behavior
When ~/.copilot/skills exists and has no .git, the installer should either initialize it as a no-remote repository or provide a clear preflight remediation prompt. Existing skill files and symlinks must be preserved, and repositories with a configured remote should continue to be rejected.
Summary
Running
./install.shwith Dreaming enabled fails when~/.copilot/skillsalready exists but is not initialized as a Git repository.Observed behavior
The installer completes the normal preflight and then exits with:
This is easy to encounter when the directory was created by Copilot or contains existing skill symlinks.
Root cause
manage-dreaming.mjsrequires the local skills root to be a no-remote Git repository. It rejects an existing directory without.git, rather than initializing it.Workaround
Initialize the existing directory manually, without adding a remote:
git init ~/.copilot/skills ./install.shOr disable Dreaming with
./install.sh --no-dreaming.Expected behavior
When
~/.copilot/skillsexists and has no.git, the installer should either initialize it as a no-remote repository or provide a clear preflight remediation prompt. Existing skill files and symlinks must be preserved, and repositories with a configured remote should continue to be rejected.