fix(install): patch settings.local.json, not settings.json

The installer enabled the caveman and ponytail plugins and registered the
autotune and dream reminder hooks in the target's .claude/settings.json. That
file is the project's reviewed, version-controlled policy, so an install
rewrote a tracked file and the hooks block turned up in the working tree of
whoever ran the install, in a repository that never asked for them.

The patch now lands in .claude/settings.local.json instead, the machine-local
and untracked sibling Claude Code reads with higher precedence. Nothing else
changes: enable-plugins.js derives the reminder paths from the settings file's
own directory, which is still .claude, and it creates the file when it does
not exist.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Kevin Veen-BirkenbachandClaude Opus 5 committed 2026-09-21 22:31:02 +02:00
1 parent 5ab58b1c28
commit 3be5655b44
2 files changed
+2 -2

No files matched your search

+1 -1
View File
@@ -26,7 +26,7 @@ Copy the skills into a specific project (`<repo>/.agents/skills` and `<repo>/.cl
make project TARGET=/path/to/repo make project TARGET=/path/to/repo
``` ```
Both commands also patch the target's `.claude/settings.json`: the caveman and ponytail plugins are enabled so their modes auto-activate on session start, and two reminder hooks are registered — `autotune` points you at `/autotune` at most once an hour, `dream` points you at `/dream` at most once every twelve hours per repository (stamped in that repository's git dir). Existing settings are preserved. Both commands also patch the target's `.claude/settings.local.json` — the machine-local, untracked file, so a project's reviewed `.claude/settings.json` is never rewritten by an install: the caveman and ponytail plugins are enabled so their modes auto-activate on session start, and two reminder hooks are registered — `autotune` points you at `/autotune` at most once an hour, `dream` points you at `/dream` at most once every twelve hours per repository (stamped in that repository's git dir). Existing settings are preserved.
Restart your agent afterwards so it loads the new skills. Restart your agent afterwards so it loads the new skills.
+1 -1
View File
@@ -44,7 +44,7 @@ for dst in "${TARGET}/.agents/skills" "${TARGET}/.claude/skills"; do
cp -a "${src}/." "${dst}/" cp -a "${src}/." "${dst}/"
done done
settings="${TARGET}/.claude/settings.json" settings="${TARGET}/.claude/settings.local.json"
if command -v node &>/dev/null; then if command -v node &>/dev/null; then
log "skills: auto-enabling caveman + ponytail plugins in ${settings}" log "skills: auto-enabling caveman + ponytail plugins in ${settings}"
node "${REPO_ROOT}/scripts/enable-plugins.js" "${settings}" node "${REPO_ROOT}/scripts/enable-plugins.js" "${settings}"