- Claude Codeでコンテキスト喪失やコード削除などの深刻な問題が発生中?
- 旧バージョン(1.0.33など)へのダウングレードで回避可能
- 通常の
autoUpdates: false
設定では強制更新を止められない -
対処手順:
-
which claude
で実行パスを確認し、競合ファイルがあれば削除 -
npm install -g @anthropic-ai/[email protected]
で安定版をインストール -
~/.claude/settings.json
に"env": { "DISABLE_AUTOUPDATER": "1" }
を追加して自動更新を停止
-
- 代替ツールとしてSuperClaudeなどのラッパーも検討可能か
ここ数日、Claude Codeを使用していて、コンテキストがすぐに消費されてしまったり、トートロジーのような挙動が発生したりする問題に遭遇しました。ネットで調べてみると、同様の事象が他の人にも起きているようです。
この記事では、Claude Codeの不安定な動作に対処するため、特定のバージョンへダウングレードし、自動更新を無効化する方法を解説します。
GitHub Issue #4487では、以下のような問題が報告されています:
主な症状
- コンテキスト健忘症 – 最初はコードベースを正しく読み込むが、数メッセージ後に全てのコンテキストを喪失
- コードの消失 – ファイル分割リクエストで1,684行中225行が無断削除される事例も発生
- Claude 4の性能劣化 – 1ヶ月の比較テストで、Claude 3.5より冗長で不要な複雑性を追加する傾向
影響範囲
- Claude Code CLI v1.0.61とCursor IDE両方で同じ問題が発生(macOS 15.5環境)
- 数メッセージごとにコンテキストのリマインドが必要
- Claudeのミスを修正する時間が元の作業時間を上回る状況
- OS: macOS
- パッケージマネージャー: Homebrew と npm を併用
バージョン1.0.33へのダウングレードを試みましたが、以下のような問題に遭遇しました。
$ npm install -g @anthropic-ai/[email protected]
$ claude --version
1.0.63 (Claude Code)
原因を調査したところ、実行されているclaudeコマンドのパスに問題がありました。
$ which claude
/opt/homebrew/bin/claude
npmで管理されているものではなく、Homebrewのパスに置かれた別のファイルが実行されていました。これはHomebrewのパッケージでもなく、VS Code拡張機能などが自動で配置したファイルである可能性が高いです。
解決方法:競合ファイルの削除
競合を解決するため、古い実行ファイルを削除します。
$ rm /opt/homebrew/bin/claude
これでnpmでインストールしたバージョンが正しく認識されるようになりました。
公式ドキュメントに従って自動更新を無効にしても、Claude Code起動時に自動的に最新版へ更新されてしまいます。
$ claude config set -g autoUpdates false
公式ドキュメントによると、Claude CodeにはDISABLE_AUTOUPDATER
という環境変数があり、これはautoUpdates
設定よりも優先されます。特定のバージョンでは強制更新機能が働き、通常の設定では無効化できないようです。
方法A:コマンド実行時に環境変数を指定
環境変数を直接指定することで、自動更新をブロックできます。
DISABLE_AUTOUPDATER=1 claude
エイリアスを設定すれば、毎回入力する手間も省けます:
alias claude='DISABLE_AUTOUPDATER=1 claude'
方法B:settings.jsonを編集(私はこっちにしてます。)
~/.claude/settings.json
ファイルを直接編集して、環境変数を永続化する方法です。
- 設定ファイルを開く:
nano ~/.claude/settings.json
- 以下の内容を追加:
{
"model": "opus",
"env": {
"DISABLE_AUTOUPDATER": "1"
}
}
この設定により、Claude Code起動時に自動的にDISABLE_AUTOUPDATER=1
が適用され、強制更新が無効化されます。
7-1. 現在のバージョンと実行パスの確認
$ claude --version
$ which claude
7-2. 競合ファイルの削除(必要な場合)
$ rm /opt/homebrew/bin/claude
7-3. 安定版へのダウングレード
$ npm install -g @anthropic-ai/[email protected]
$ claude --version
7-4. 自動更新の無効化
settings.jsonを編集
$ nano ~/.claude/settings.json
以下の内容を追加または編集:
{
"model": "opus",
"env": {
"DISABLE_AUTOUPDATER": "1"
}
}
7-5. 動作確認
$ claude
$ claude --version
正直なところ、バージョンによってClaude Codeの挙動が変わっているかどうかは不明確なので、現在のバージョンのままでClaude Codeのラッパーツールを使うという選択肢も検討する価値があります。(私はSuperClaudeを実験的に使用しています。)
Claude Codeの強制的な自動更新は、DISABLE_AUTOUPDATER
環境変数を使用することで制御できます。settings.json
への直接編集が解決策として有効です。
現在のバージョンで問題が発生している方は、この方法で安定したバージョンに固定することで問題を回避できます。
他にも知見があれば、コメント欄で共有いただけると幸いです。
Views: 0