From 3be5655b441c562d21228ea60a7b0b27c05e8c41 Mon Sep 17 00:00:00 2001 From: Kevin Veen-Birkenbach Date: Mon, 21 Sep 2026 22:30:53 +0200 Subject: [PATCH] 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) --- README.md | 2 +- scripts/install.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 85e9bfb..2dcb7bd 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ Copy the skills into a specific project (`/.agents/skills` and `/.cl 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. diff --git a/scripts/install.sh b/scripts/install.sh index ff99ef7..bc3cce3 100644 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -44,7 +44,7 @@ for dst in "${TARGET}/.agents/skills" "${TARGET}/.claude/skills"; do cp -a "${src}/." "${dst}/" done -settings="${TARGET}/.claude/settings.json" +settings="${TARGET}/.claude/settings.local.json" if command -v node &>/dev/null; then log "skills: auto-enabling caveman + ponytail plugins in ${settings}" node "${REPO_ROOT}/scripts/enable-plugins.js" "${settings}"