Claude Code「tool call could not be parsed」/工具呼叫格式錯誤:成因與修正(call/invoke/parameter 以文字形式顯示)

現在有故障嗎?

Claude Code 官方狀態正常。若此錯誤持續出現,多半是實作或你的運作環境問題。

更新於: 2026年6月6日 凌晨3:34 UTC

查看 Claude Code 的運作狀態

錯誤含義

模型以錯誤格式輸出 tool call,因此 harness 將其拒絕為「tool call could not be parsed」。它沒有產生正確包裝好的 call,而是輸出一個裸露的 invoke 且永遠不會執行,使得「call」、「<invoke name=…>」或「<parameter>」以可見文字外洩出來。在長對話中,一旦有一個格式錯誤的 call 進入歷史,之後每一次 tool call 都會持續複製同一種壞掉的格式(這是發生在脈絡內的 few-shot poisoning)。這並不是你程式碼的 bug,而是 Claude Code(模型/harness)端的已知問題。

常見原因

  • 長對話中接連串接了大量循序的 tool call
  • 一旦歷史中存在格式錯誤的 call,模型會以自迴歸方式重現它(few-shot poisoning)
  • 在同一對話內重試會讓這個壞掉的範例被更牢固地固定下來,使情況惡化
  • 載入龐大、XML/標記密集的檔案或 skill,會稀釋對 tool call 格式的掌控
  • 在長時間的工作對話中使用大型脈絡(例如 1M)並投入高度運算

解決方法

  1. 1.執行 /clear(或開啟新對話)以丟棄被污染的歷史,這是唯一已確認有效的復原方式
  2. 2.切勿在同一對話內重試(這會強化壞掉的格式)
  3. 3.在對話變長之前定期使用 /compact
  4. 4.避免一次批次處理過多編輯;在各個 tool call 之間穿插簡短的說明文字或檢查
  5. 5.避免一次載入龐大的 XML/heredoc 密集檔案或 skill
  6. 6.將 Claude Code 更新到最新版本(修正工作仍在持續進行)
  7. 7.在本頁頂端確認這並非 Anthropic API 中斷(此問題在模型/harness 端,與 API 中斷無關)

何時該等待 / 等待也無濟於事的情況

這是已知的模型/harness 問題(已在 GitHub 上回報;永久修正仍在進行中),在同一對話內單純等待並無法解決。改用 /clear 切換到全新對話才是可靠的修正方式。若要避免再次發生,請保持對話簡短、頻繁 /compact,並且絕不重試格式錯誤的 call。

Claude Code 當機時的替代方案

CodexCursorGitHub CopilotClineWindsurfContinue

相關錯誤

常見問題

Tool call could not be parsed 是什麼?

模型以錯誤格式輸出 tool call,因此 harness 將其拒絕為「tool call could not be parsed」。它沒有產生正確包裝好的 call,而是輸出一個裸露的 invoke 且永遠不會執行,使得「call」、「<invoke name=…>」或「<parameter>」以可見文字外洩出來。在長對話中,一旦有一個格式錯誤的 call 進入歷史,之後每一次 tool call 都會持續複製同一種壞掉的格式(這是發生在脈絡內的 few-shot poisoning)。這並不是你程式碼的 bug,而是 Claude Code(模型/harness)端的已知問題。

Tool call could not be parsed 如何解決?

執行 /clear(或開啟新對話)以丟棄被污染的歷史,這是唯一已確認有效的復原方式 / 切勿在同一對話內重試(這會強化壞掉的格式) / 在對話變長之前定期使用 /compact / 避免一次批次處理過多編輯;在各個 tool call 之間穿插簡短的說明文字或檢查 / 避免一次載入龐大的 XML/heredoc 密集檔案或 skill / 將 Claude Code 更新到最新版本(修正工作仍在持續進行) / 在本頁頂端確認這並非 Anthropic API 中斷(此問題在模型/harness 端,與 API 中斷無關)

對比查看 Claude Code