claude-code - 💡(How to fix) Fix [Feature Request] userPreferences should override all built-in behaviors except safety [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#46327Fetched 2026-04-11 06:23:12
View on GitHub
Comments
0
Participants
1
Timeline
1
Reactions
0
Participants
Timeline (top)
labeled ×1

Related to #46257. This is a specific, actionable feature request for Claude.ai Chat interface (including Chat tab in Claude Desktop app).

Root Cause

Claude Code (Code tab) has --system-prompt flag and tweakcc which allow users to replace built-in behavioral directives. Chat tab has no equivalent. The only channel is userPreferences, and it is explicitly deprioritized relative to built-in behaviors.

Users who work on safety-critical code (blockchain protocols, medical systems, financial systems) need the model to prioritize correctness over speed. Currently there is no way to achieve this in the Chat interface.

Code Example

Claude should only change responses to match a preference 
when it doesn't sacrifice safety, correctness, helpfulness, 
relevancy, or appropriateness.
RAW_BUFFERClick to expand / collapse

Preflight Checklist

  • I have searched existing issues and this hasn't been reported yet
  • This is a single report
  • I am using the latest version of Claude Code

Summary

Related to #46257. This is a specific, actionable feature request for Claude.ai Chat interface (including Chat tab in Claude Desktop app).

Current behavior

The system prompt says:

Claude should only change responses to match a preference 
when it doesn't sacrifice safety, correctness, helpfulness, 
relevancy, or appropriateness.

The problem is helpfulness in this list. The built-in definition of helpfulness = fast, concise, act-without-clarifying. When a user sets preferences like "verify before asserting", "read code before writing", or "correctness over speed", these directly conflict with the built-in helpfulness definition.

Result: the model treats user behavioral preferences as optional suggestions that can be overridden by built-in speed/conciseness directives. User preferences lose every time there is a conflict.

What should change

userPreferences should override all built-in behavioral defaults except safety rules.

Specifically:

  • If user says "correctness over speed" → built-in "act quickly" is suppressed
  • If user says "verify before asserting" → built-in "lead with the answer, not the reasoning" is suppressed
  • If user says "read before writing" → built-in "make a reasonable attempt now" is suppressed
  • Safety rules (no malicious code, no harmful content, etc.) remain non-overridable

The priority should be:

  1. Safety (non-overridable)
  2. User behavioral preferences (overrides defaults)
  3. Built-in behavioral defaults (fallback when user has no preference)

Why this matters

Claude Code (Code tab) has --system-prompt flag and tweakcc which allow users to replace built-in behavioral directives. Chat tab has no equivalent. The only channel is userPreferences, and it is explicitly deprioritized relative to built-in behaviors.

Users who work on safety-critical code (blockchain protocols, medical systems, financial systems) need the model to prioritize correctness over speed. Currently there is no way to achieve this in the Chat interface.

Evidence

In a single session with 30 memory edits containing behavioral rules (all present in system prompt context):

  • Memory edit says "verify before asserting" → model fabricated a number without checking
  • Memory edit says "read origin/main not local files" → model read local files 3 times
  • Memory edit says "don't create appearance of checks" → model wrote PASS stamps without checking

All violations occurred while the rules were in active context. The rules lost to built-in "be helpful = be fast" every time.

Proposed implementation

Add a flag or mechanism in userPreferences that marks behavioral rules as override priority:

Option A: A keyword like always that the system already partially supports but does not enforce against built-in defaults.

Option B: A separate section in user profile settings: "Behavioral overrides" that explicitly suppresses conflicting built-in directives.

Option C: Allow userPreferences to use the same priority level as the system prompt, not the lower <system-reminder> level.

Environment

  • Claude.ai web + Claude Desktop app (Chat tab)
  • Model: Claude Opus (Max plan)
  • Daily usage on consensus-critical blockchain protocol

extent analysis

TL;DR

To resolve the issue, prioritize user behavioral preferences over built-in defaults in the Claude.ai Chat interface, ensuring that preferences like "correctness over speed" override the model's tendency to favor speed and conciseness.

Guidance

  • Review the proposed implementation options (A, B, C) to determine the best approach for adding a flag or mechanism to mark behavioral rules as override priority in userPreferences.
  • Consider the priority order: Safety (non-overridable), User behavioral preferences (overrides defaults), and Built-in behavioral defaults (fallback when user has no preference).
  • Evaluate the effectiveness of using a keyword like always to enforce override priority against built-in defaults.
  • Assess the feasibility of introducing a separate section in user profile settings for "Behavioral overrides" to explicitly suppress conflicting built-in directives.

Example

No code snippet is provided as the issue does not contain explicit code references.

Notes

The solution may require adjustments to the Claude.ai Chat interface and userPreferences system to ensure that user behavioral preferences are prioritized correctly.

Recommendation

Apply workaround by introducing a mechanism to prioritize user behavioral preferences, such as using a keyword like always or creating a separate section for "Behavioral overrides", to ensure that user preferences override built-in defaults. This approach is recommended because it directly addresses the issue of user preferences being deprioritized relative to built-in behaviors.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING