CLAUDE.md rules are not enforced at session start — repeated violations despite documented rules

Resolved 💬 12 comments Opened Mar 23, 2026 by iimon-lab Closed Apr 26, 2026

Problem

I have a detailed CLAUDE.md file with 25+ documented lessons learned, mandatory checklists, and explicit session-start workflows. Despite Claude Code reading CLAUDE.md at session start and acknowledging all rules, it repeatedly violates the most fundamental rule: getting user approval before starting work.

Reproduction

  1. Create a CLAUDE.md with a mandatory approval workflow (e.g., "Before starting any task, present the plan to the user and wait for explicit 'yes' approval")
  2. Start a new session and give Claude a task
  3. Claude reads CLAUDE.md, acknowledges the rules, then immediately starts working without requesting approval

This has happened across many sessions despite:

  • 25+ failure lessons documented in CLAUDE.md
  • A dedicated checklist file (sp_action_checklist.md) that Claude is required to read before any work
  • Explicit "Action Control Rules" section in CLAUDE.md
  • Multiple iterations of adding stronger language and more explicit instructions

Expected Behavior

When CLAUDE.md defines mandatory pre-work steps (like user approval), Claude should always execute those steps before starting any task, regardless of context.

Actual Behavior

Claude reads CLAUDE.md, sometimes even reports "checklist confirmed", then skips the mandatory approval step and begins work autonomously. The failure-record-and-repeat cycle continues indefinitely:

Record lesson → Violate → Apologize → Record again → Violate again

Feature Request

Please consider implementing one or more of the following:

  1. Mandatory hooks/triggers in CLAUDE.md: A way to define steps that are _enforced_ by the system, not just "suggested" to the model. For example, a session_start_hook that blocks all tool calls until specified steps are completed.
  1. Priority/enforcement levels for CLAUDE.md rules: Allow users to mark certain rules as [ENFORCED] or [BLOCKING] so the system treats them differently from general guidance.
  1. Pre-action gate: A system-level mechanism that checks CLAUDE.md-defined preconditions before allowing tool execution (similar to how permission modes work, but user-configurable).

Environment

  • Claude Code on Windows 11
  • Model: Claude Opus 4.6 (1M context)
  • CLAUDE.md size: ~500 lines with detailed rules, lessons, and checklists

Impact

This is a critical usability issue for users who rely on CLAUDE.md to define workflows. If documented rules are not reliably followed, the entire CLAUDE.md system becomes unreliable documentation rather than an enforceable configuration.

View original on GitHub ↗

This issue has 12 comments on GitHub. Read the full discussion on GitHub ↗