{"version":"2.1.267","anchor":"tool-call-argument-spoofing-guard-for-internal-artifact-keys","canonical_anchor":"tool-call-argument-spoofing-guard-for-internal-artifact-keys","heading":"New guard prevents spoofing internal artifact keys","tier":"notice","area":"Elsewhere","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.267\/e\/tool-call-argument-spoofing-guard-for-internal-artifact-keys","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.267","markdown":"### New guard prevents spoofing internal artifact keys\n\nClaude Code now blocks tool calls that fake internal __artifact-prefixed argument keys, except for tools allowed to set them\n\n**What**\n\n- Tool calls whose arguments include a key beginning with `__artifact` are now denied unless the tool is recognized as one that legitimately mints such keys, with the message \"Nothing was done. The arguments carry a key that only Claude Code sets.\"\n\n- This relies on a new `mintsArtifactKeys()` capability check, which is also used to suppress certain artifact-related event logging for contexts that mint their own artifact keys.\n\n**Why**\n\nThis prevents a model or malicious input from spoofing internal artifact bookkeeping keys that only Claude Code itself is meant to set.\n\n- Area: Elsewhere\n- Tier: You'll notice\n- Useful: 1\/5\n- Signal: 2\/5"}