[Bug] Anthropic API Error: Duplicate tool names during session compaction

Resolved 💬 3 comments Opened Dec 16, 2025 by ebeckner-looptech Closed Dec 16, 2025

Bug Description
Unable to compress sessions due to the following breaking error: ⎿  Error: Error during compaction: Error: API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"tools: Tool names must be unique."},"request_id":"req_011CWAqfKWZ7ApDcCXCRsp9B"}

Environment Info

  • Platform: darwin
  • Terminal: Apple_Terminal
  • Version: 2.0.70
  • Feedback ID: dfdb4b15-5c4b-42f4-93e1-f2677d07d1ab

Errors

[{"error":"Error: Entity not found: Issue - Could not find referenced Issue.\n    at RLB (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1082:33923)\n    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at async Object.call (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1082:45266)\n    at async yU8 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1861:17438)","timestamp":"2025-12-16T18:11:20.844Z"},{"error":"Error: Command failed: /opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/vendor/ripgrep/arm64-darwin/rg --files --glob services/**/* --sort=modified --no-ignore --hidden /Users/elliott.beckner/dev/looptech/winston\n\n    at genericNodeError (node:internal/errors:985:15)\n    at wrappedFn (node:internal/errors:539:14)\n    at ChildProcess.exithandler (node:child_process:417:12)\n    at ChildProcess.emit (node:events:508:28)\n    at ChildProcess.emit (node:domain:489:12)\n    at maybeClose (node:internal/child_process:1101:16)\n    at ChildProcess._handle.onexit (node:internal/child_process:305:5)","timestamp":"2025-12-16T18:12:29.416Z"},{"error":"Error: Command failed: /opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/vendor/ripgrep/arm64-darwin/rg --files --glob apps/web/src/**/*.ts* --sort=modified --no-ignore --hidden /Users/elliott.beckner/dev/looptech/winston\n\n    at genericNodeError (node:internal/errors:985:15)\n    at wrappedFn (node:internal/errors:539:14)\n    at ChildProcess.exithandler (node:child_process:417:12)\n    at ChildProcess.emit (node:events:508:28)\n    at ChildProcess.emit (node:domain:489:12)\n    at maybeClose (node:internal/child_process:1101:16)\n    at ChildProcess._handle.onexit (node:internal/child_process:305:5)","timestamp":"2025-12-16T18:12:29.493Z"},{"error":"Error: Command failed: /opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/vendor/ripgrep/arm64-darwin/rg --files --glob packages/**/* --sort=modified --no-ignore --hidden /Users/elliott.beckner/dev/looptech/winston\n\n    at genericNodeError (node:internal/errors:985:15)\n    at wrappedFn (node:internal/errors:539:14)\n    at ChildProcess.exithandler (node:child_process:417:12)\n    at ChildProcess.emit (node:events:508:28)\n    at ChildProcess.emit (node:domain:489:12)\n    at maybeClose (node:internal/child_process:1101:16)\n    at ChildProcess._handle.onexit (node:internal/child_process:305:5)","timestamp":"2025-12-16T18:12:29.506Z"},{"error":"Error: 400 {\"type\":\"error\",\"error\":{\"type\":\"invalid_request_error\",\"message\":\"tools: Tool names must be unique.\"},\"request_id\":\"req_011CWAq4ZTyL4d76C8WPRtYU\"}\n    at B9.generate (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:459:10797)\n    at q_.makeStatusError (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:796:2195)\n    at q_.makeRequest (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:796:5419)\n    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at async w11.model (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:4493:6319)\n    at async w11 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1232:18701)\n    at async $d2 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:4493:6473)\n    at async file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:4491:3797\n    at async Jp1 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:946:2037)\n    at async uJA (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:4491:3767)","timestamp":"2025-12-16T18:20:53.457Z"},{"error":"Error: API Error: 400 {\"type\":\"error\",\"error\":{\"type\":\"invalid_request_error\",\"message\":\"tools: Tool names must be unique.\"},\"request_id\":\"req_011CWAq4ZTyL4d76C8WPRtYU\"}\n    at sB1 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1651:1556)\n    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at async ieB (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1725:3259)\n    at async J$ (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1861:2369)\n    at async J$ (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1861:7648)\n    at async J$ (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1861

Note: Error logs were truncated.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗