<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Dimitar Stoyanov</title>
    <description>The latest articles on DEV Community by Dimitar Stoyanov (@dimitar_stoyanov_3fe3b0bf).</description>
    <link>https://dev.to/dimitar_stoyanov_3fe3b0bf</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3930992%2F11f7c5bc-b8f7-4612-94d2-f513311b46a2.jpg</url>
      <title>DEV Community: Dimitar Stoyanov</title>
      <link>https://dev.to/dimitar_stoyanov_3fe3b0bf</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dimitar_stoyanov_3fe3b0bf"/>
    <language>en</language>
    <item>
      <title>How to keep Claude Code on Opus 4.6 without breaking your normal install</title>
      <dc:creator>Dimitar Stoyanov</dc:creator>
      <pubDate>Thu, 14 May 2026 10:32:41 +0000</pubDate>
      <link>https://dev.to/dimitar_stoyanov_3fe3b0bf/how-to-keep-claude-code-on-opus-46-without-breaking-your-normal-install-2lh</link>
      <guid>https://dev.to/dimitar_stoyanov_3fe3b0bf/how-to-keep-claude-code-on-opus-46-without-breaking-your-normal-install-2lh</guid>
      <description>&lt;p&gt;There's been a lot of discussion recently around how Claude Code updates affect behavior, predictability, and token usage.&lt;/p&gt;

&lt;p&gt;When Claude Code updates, it's not just the model that changes - the CLI harness, system prompts, tool-calling behavior, and context management all evolve too. Newer is often better. But not always for every workflow.&lt;/p&gt;

&lt;p&gt;In my own setup, I noticed that some skills, agents, and project workflows I'd built behaved differently after recent updates. Not necessarily worse, but differently enough that predictability started to matter.&lt;/p&gt;

&lt;p&gt;For AI-assisted development, that matters.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem
&lt;/h2&gt;

&lt;p&gt;Sometimes you want the latest model. Sometimes you want the setup your workflow was built around.&lt;/p&gt;

&lt;p&gt;There's no built-in way to run an older Claude Code version side-by-side with the latest one. If you pin the model with &lt;code&gt;--model&lt;/code&gt;, you still get the latest harness — and harness changes can affect behavior just as much as model changes.&lt;/p&gt;

&lt;h2&gt;
  
  
  The solution: &lt;code&gt;claude46&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;I made a small open-source helper that gives you a separate &lt;code&gt;claude46&lt;/code&gt; command:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Claude Code pinned to 2.1.110&lt;/strong&gt; (the pre-Opus-4.7 harness)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Opus 4.6 1M&lt;/strong&gt; as the default model&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auto-updates fully blocked&lt;/strong&gt; for that launcher only&lt;/li&gt;
&lt;li&gt;Your normal &lt;code&gt;claude&lt;/code&gt; install is &lt;strong&gt;left untouched&lt;/strong&gt; and free to update&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  One-liner install
&lt;/h3&gt;

&lt;p&gt;macOS / Linux:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://raw.githubusercontent.com/sparklingneuronics/claude-code-helpers/v0.2.0/install-claude46.sh | bash
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Windows (PowerShell):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="n"&gt;irm&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;https://raw.githubusercontent.com/sparklingneuronics/claude-code-helpers/v0.2.0/install-claude46.ps1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;iex&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then just run &lt;code&gt;claude46&lt;/code&gt; instead of &lt;code&gt;claude&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6fuze4ahpyoonx5tnh6l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6fuze4ahpyoonx5tnh6l.png" alt=" " width="800" height="383"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Is it better?
&lt;/h2&gt;

&lt;p&gt;Not universally. I still use newer versions. But for workflows tuned around previous behavior — especially skills and agents built on top of Claude Code — having a stable pinned setup is useful.&lt;/p&gt;

&lt;p&gt;The same idea as pinning a compiler or framework version: you want to choose when to upgrade, not have it happen under you.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;The bash installer downloads Claude Code 2.1.110 to &lt;code&gt;~/.local/share/claude46/&lt;/code&gt; and writes a wrapper script that sets &lt;code&gt;DISABLE_AUTOUPDATER=1&lt;/code&gt;, &lt;code&gt;DISABLE_UPDATES=1&lt;/code&gt;, and &lt;code&gt;ANTHROPIC_MODEL=claude-opus-4-6[1m]&lt;/code&gt; before exec-ing the pinned binary.&lt;/p&gt;

&lt;p&gt;The Windows installer does the same via &lt;code&gt;npm install --prefix&lt;/code&gt; into &lt;code&gt;%LOCALAPPDATA%\claude46\&lt;/code&gt;, writing a &lt;code&gt;.cmd&lt;/code&gt; wrapper with the same env vars.&lt;/p&gt;

&lt;p&gt;Both are tested end-to-end via CI on real runners.&lt;/p&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Repo: &lt;a href="https://github.com/sparklingneuronics/claude-code-helpers" rel="noopener noreferrer"&gt;github.com/sparklingneuronics/claude-code-helpers&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;MIT licensed, no telemetry, no API proxy&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>claude</category>
      <category>cli</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
