Setting the file. One moment.
Subchapter 15.8
examples/settings-json-patch.mdMarkdown3 KBView on GitHub
.claude/settings.json across every repo that has oneA worked campaign showing a deterministic deep-merge recipe whose idempotency is structural — the merge converges, so a re-run changes nothing. Read it for shape, then generalize.
Also bundled
EvalsRecipe type: deterministic (deep-merge a JSON patch). Signal type: file-existence (.claude/settings.json present).
intent: "Add a standard <key> setting to .claude/settings.json in every repo that already has one, without disturbing existing keys."
scope: multi-repo
target_selector:
enumerate: "gh repo list bitwarden --no-archived --limit 1000 --json name,defaultBranchRef"
applicability_filter:
signal: ".claude/settings.json present"
detect: "gh api repos/bitwarden/<repo>/contents/.claude/settings.json --jq .sha"
recipe:
type: deterministic
body: "deep-merge the patch object into .claude/settings.json (jq '. * $patch'), preserving existing keys"
idempotency: "the merged result equals the current file → no change written, no-op"
validation: "JSON parses + schema sanity check + Skill(perform-preflight)"
pr_spec:
branch: "force-multiplier/claude-settings-<key>"
title: "[PM-XXXXX] chore: Standardize <key> in .claude/settings.json"
body: "<filled from the repo's PULL_REQUEST_TEMPLATE.md>"
labels: ["ai-review"]
draft: true
safety_policy:
max_targets_per_run: 10
destructive: false
dry_run: false
pilot: required.claude/settings.json. Repos without one are skipped-not-applicable — this campaign standardizes existing configs, it does not create new ones.<key>, nothing else), confirm existing keys are untouched, validate the JSON parses. Lock the PR shape, confirm, fan out.applied with a PR; repos already carrying the value are already-compliant (the idempotent no-op — no diff, no PR), so the count still reconciles as selected = applied + already-compliant + skipped-not-applicable + failed.