Skip to content

Nickatak/CLAUDE_OVERRIDE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

CLAUDE_OVERRIDE - Opus 4.7

In Opus 4.7, CLAUDE.md is delivered as per-turn <system-reminder> content rather than sitting in the agent's initial instruction layer. The wrapping system-reminder explicitly tells the agent: "this context may or may not be relevant to your tasks. You should not respond to this context unless it is highly relevant to your task." That demotes CLAUDE.md's override authority from structural instruction to conditional context, and the same content that held firm on 4.6 drifts on 4.7.

Known bug, publicly reported:

Workaround

Deliver the same content through a slot that still lands in the initial instruction layer. Two options work:

  • --append-system-prompt - CLI flag, officially sanctioned, semantically clean. Daily-drive requires wrapping in a shell alias. Not available from the VSCode extension.
  • Output Style (this repo) - set once, persists across sessions, works uniformly across CLI and the VSCode extension. Technically a slot abuse (it's intended for persona/tone), but it lands in the initial instruction layer and survives across sessions without per-invocation wrapping.

We chose Output Style because the VSCode extension is the primary entrypoint here and --append-system-prompt isn't reachable there. If you daily-drive from the CLI, --append-system-prompt is the semantically cleaner route.

This is a routing workaround, not a content change. The TypeScript-interfaces thesis on the Opus-4.6 branch is unchanged.

How to use

  1. Build your contract file following the guide on the Opus-4.6 branch. That branch's README is the canonical walkthrough for modeling yourself and writing the interfaces.
  2. Install the result as a custom Output Style:
    • Save it as ~/.claude/output-styles/<your-style-name>.md for user-level, or .claude/output-styles/<your-style-name>.md for project-scoped.
    • Include frontmatter at the top of the file:
      ---
      name: your-style-name
      description: short description
      ---
    • Activate via /config -> Output style, or set outputStyle in .claude/settings.json.
    • Start a new Claude Code session for the style to take effect.

output-style.md in this repo is the standalone template. The content is identical to the CLAUDE.md on the Opus-4.6 branch, renamed to match its deployment slot, with frontmatter pre-populated.

Caveat

This is a cheat, not an upgrade. CLAUDE.md is semantically the right home for override instructions - the system prompt literally grants it override authority. The Output Style route works because of where it lands in the prompt, not because it's a more appropriate home for the content. Version-bound accordingly: if a future Claude Code release restores CLAUDE.md to the instruction layer, this workaround is unnecessary. If it demotes Output Style too, this workaround breaks.

See also

  • Branch Opus-4.6 - original approach and full guide.

About

TypeScript-interface contracts for modeling yourself to Claude Code, deployed as an Output Style to work around the Opus 4.7 CLAUDE.md regression.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors