feat(defaults): promote skillOverrides + autoMode.hard_deny to active defaults - #57
Merged
Merged
Conversation
… defaults Follow-up to PR #56's unblock batch. Two of the eight opt-ins shipped as stubs in that PR are now active defaults, based on a per-key review against the configurator's existing safety/efficiency goals. The other six stay stubbed for genuine reasons (user-workflow choice, infrastructure-dependent, or would break shipped scripts). Promoted: - skillOverrides: "name-only" → active in templates/token-efficiency/settings-patch.tier-pro.json (renders only when token-efficiency.tier=pro). Extends the pro tier's existing "aggressive context efficiency" contract by collapsing skill descriptions — the largest single contributor to per-turn context overhead, the metric /check-context flags. Model still sees skill names. basic tier unaffected. Personas affected: solo-experienced, small-team. Override by editing the patch. - autoMode.hard_deny: ["Running executable files", "Writing to system directories"] → active in templates/safety/settings-patch.json. Pure upside: zero behavior change for standard manual sessions (auto-mode classifier doesn't fire without --auto-mode), meaningful safety backstop for --auto-mode users. Consistent with the configurator's existing safety-first posture (disableBypassPermissionsMode, PreToolUse Bash blocking, scan-secrets, slop-scan). All non-custom personas affected. Tune via the patch. No tested_up_to bump (stays 2.1.150 from PR #56). No new tests required — schema validation + persona snapshots + 50+ shell fixtures all pass. Retrofit impact: existing users on cc-configure --retrofit will gain a top-level autoMode block (all non-custom personas) and, for pro-tier users, a top-level skillOverrides: "name-only". Both are no-ops in common workflows. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Merged
3 tasks
tigers1997
added a commit
that referenced
this pull request
May 23, 2026
…ive-default promotions (#58) Bundle release of PRs #56 + #57: - PR #56 — chore(compat): ship 8 schema-validated opt-ins + fix latent // strip; bump tested_up_to 2.1.132 → 2.1.150. Closed tracking issue #53 after a three-resurvey watch on SchemaStore PR #5706 (merged 2026-05-23, sync to CC v2.1.143). - PR #57 — feat(defaults): promote skillOverrides + autoMode.hard_deny to active defaults. Six other opt-ins from #56 stay stubbed for genuine reasons documented in the patch comments. CC_VERSION 2.5.0 → 2.6.0. Claude Code compat 2.1.116–2.1.150. Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
6 tasks
Merged
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to PR #56's unblock batch. After per-key review of the 8 schema-validated opt-ins against the configurator's existing safety/efficiency goals, two are promoted to active defaults. The other six stay stubbed for genuine reasons (user-workflow choice, infrastructure-dependent, or would break the shipped scripts).
What changes
skillOverrides// skillOverrides: "name-only"stub in tier-pro patchskillOverrides: "name-only"in tier-pro patch/check-context's top warning). Model still sees skill names — only descriptions trimmed.autoMode.hard_deny// autoMode: {...}stub in safety patchautoMode: {hard_deny: [...]}in safety patch--auto-mode(classifier doesn't fire). Meaningful safety backstop for auto-mode users. Consistent with the existing safety posture (disableBypassPermissionsMode, scan-secrets, slop-scan, etc.).Per-persona impact
autoModeskillOverridessolo-newersolo-experiencedname-only(pro tier)small-teamname-only(pro tier)library-authorcustomVerified with
python3 configure.py --persona <name>for each.Why the other 6 stay stubbed
worktree.baseRef— genuine workflow preference (freshvshead); no persona signal distinguishesworktree.bgIsolation— stub value matches CC default; writing active is a no-op; stub provides lever discoverabilitysandbox.failIfUnavailable— fail-closed aligns with safety in principle, but would break users on platforms wherebwrap/socataren't easily installable (esp. macOS). Real fix is a futuresafety.sandbox_strictflag.subagentStatusLine— shippedstatusline.shdoesn't handle--subagentflag yetstatusLine.hideVimModeIndicator— shippedstatusline.shdoesn't render vim mode, so active would just remove vim display entirely for vim usersCLAUDE_CODE_STOP_HOOK_BLOCK_CAP— no shipped Stop hook actually blocks repeatedly; raising the cap adds noise without benefitRetrofit impact for existing users
On next
cc-configure --retrofit, existing scaffolds will gain:autoModeblock (all non-custom personas)skillOverrides: "name-only"(pro-tier users only —solo-experiencedandsmall-team)Both are no-ops in common workflows:
autoMode.hard_denyonly matters under--auto-modeskillOverrides: "name-only"preserves/-menu access and only trims descriptions the user typically doesn't read; can override to"off"/"user-invocable-only"or remove entirely by editing the patchTest plan
python3 configure.py --check→ all checks passed; compat range unchanged (2.1.116–2.1.150)examples/persona-*/expected-tree.txt--modules core,$modsmoke combos passautoModeset in 4 of 5 personas,skillOverridesset in 2 of 5 personas, both absent incustomas expectedcheckworkflow) passes on this branchNo
tested_up_tobump (stays 2.1.150 from PR #56). No new tests required.🤖 Generated with Claude Code