Claude Code のエラー

Transcript writes are failing

結論

会話履歴を保存できていない状態。ディスク空き容量と書き込み権限が主因。

確認した版 Claude Code v2.1.214
確認日 2026年8月21日
文言の照合 Claude Code v2.1.238
最終更新 2026年8月21日
根拠 一次情報で確認

エラー文字列

Claude Code
Transcript writes are failing

何が起きているか

会話の履歴(transcript)をファイルに書き込めていません。

⚠️ 作業自体は続けられますが、履歴が保存されていないため --resume で再開できません。 長い作業の途中でこれが出たまま放置すると、セッションを閉じた時点で内容が失われます。

原因は次のとおりです。

原因 状況
ディスクの空き容量不足 最多。とくにCドライブが逼迫している環境
書き込み権限が無い 別ユーザーで作ったディレクトリ、管理者権限で一度起動した
同期ソフトによるロック OneDrive / Dropbox / Google Drive がファイルを掴んでいる
ウイルス対策ソフトの干渉 リアルタイムスキャンが書き込みをブロック
ディレクトリが無い/壊れている 手動で消した、移行に失敗した

Windows では「OneDrive がユーザーフォルダを同期している」構成が非常に多く、これが原因になりがちです。

直し方

1. ディスクの空きを確認する

Windows(PowerShell)

Get-PSDrive -PSProvider FileSystem |
  Select-Object Name,
    @{n='空きGB';e={[math]::Round($_.Free/1GB,1)}},
    @{n='使用GB';e={[math]::Round($_.Used/1GB,1)}}

macOS / Linux

df -h ~

⚠️ 空きが数GBを切っていたら、それが原因です。 履歴以外にも様々な不具合が起きます。

2. 書き込めるか実際に試す

Windows(PowerShell)

$dir = "$env:USERPROFILE\.claude"
Test-Path $dir
try {
  $t = Join-Path $dir "write-test.tmp"
  "test" | Out-File -FilePath $t -Encoding utf8 -ErrorAction Stop
  Remove-Item $t
  "書き込み可"
} catch {
  "書き込み不可: $($_.Exception.Message)"
}

macOS / Linux

ls -ld ~/.claude
touch ~/.claude/write-test.tmp && rm ~/.claude/write-test.tmp && echo "書き込み可"

3. 権限を直す

macOS / Linux

sudo chown -R "$(id -u):$(id -g)" ~/.claude
chmod -R u+rwX ~/.claude

⚠️ 一度 sudo で Claude Code を起動すると、作られたファイルの所有者が root になり、以後ずっと書き込めなくなります。 上のコマンドで所有者を戻してください。そして今後は sudo で起動しないでください。

Windows

管理者権限で一度起動した場合も同様の状態になりえます。エクスプローラーで %USERPROFILE%\.claude のプロパティ → セキュリティから、自分のアカウントに変更権限があるか確認してください。

4. ⭐ 同期ソフトの対象から外す(Windows で最も多い)

OneDrive がユーザーフォルダを同期している場合、.claude も同期対象になり、書き込み中にロックされることがあります。

まず、同期対象になっているか確認します。

"$env:USERPROFILE\.claude"
$env:OneDrive

.claude のパスが OneDrive 配下(例: C:\Users\you\OneDrive\...)になっているなら、それが原因です。

対処

  • OneDrive の設定 →「フォルダーのバックアップを管理」から、該当フォルダの同期を止める
  • OneDrive の「このデバイスで常に保持する」を設定して、オンデマンド化を解除する

⚠️ 「ファイルオンデマンド」でプレースホルダ化されていると、書き込みのたびにダウンロードが走り、失敗しやすくなります。

Dropbox や Google Drive でも同様です。開発関連のディレクトリは同期対象から外すのが定石です。

5. ウイルス対策ソフトを確認する

リアルタイムスキャンが書き込みをブロックしている場合、.claude ディレクトリを除外対象に追加すると解消します。

⚠️ 除外を追加するときは、対象を最小限にしてください。 ドライブ全体やホームディレクトリ全体を除外しないこと。

6. 保存が意図的に無効化されていないか確認する

次のメッセージが出ている場合は、故障ではなく設定です。

Transcript saving is off — CLAUDE_CODE_SKIP_PROMPT_HISTORY is set

環境変数を確認します。

env | grep CLAUDE_CODE_SKIP_PROMPT_HISTORY
Get-ChildItem Env: | Where-Object Name -match 'CLAUDE_CODE_SKIP_PROMPT_HISTORY'

有効にする場合は外してください。

unset CLAUDE_CODE_SKIP_PROMPT_HISTORY

なお Transcript saving is off — inherited CLAUDE_CODE_CHILD_SESSION marker は、親から起動された子セッションの正常な動作です。対処は不要です。

再発防止

  • 開発関連のディレクトリをクラウド同期の対象にしない。 .claude に限らず、node_modules やビルド成果物も同じ理由で外すべきです
  • sudo や管理者権限で Claude Code を起動しない。 一度やると後を引きます
  • ディスクの空きを月に一度は確認する。逼迫は静かに進行し、症状は分かりにくい形で出ます
  • 長い作業の途中でこの警告を見たら、放置せずその場で対処する。閉じた時点で履歴は戻りません

この手順で直りませんでしたか?

環境を添えて報告いただければ、追加の原因を検証してこのページに反映します。

エラーを報告する