[BUG] Skill loader validates bash patterns in documentation/examples as real commands

Resolved 💬 2 comments Opened Jan 19, 2026 by Pierozi Closed Jan 19, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

When loading a skill via the Skill tool, the permission checker scans the entire skill content and validates inline bash patterns (!command) even when they appear in documentation, code blocks, or examples—not as actual commands to execute.

What Should Happen?

Claude should read the skill without executing the bash command through the interpolation character.

Error Messages/Logs

Bash command permission check failed for pattern "!`npm test $1`": This command requires approval

Steps to Reproduce

  1. install official plugin-dev from Anthropic
  2. ran the prompt read the skill command-development from plugin-dev

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.12

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

Impact

  • Skills that teach or document bash usage cannot be loaded without pre-approving every example command
  • This defeats the purpose of having educational/reference skills about command development

Suggested Fix

The skill loader should distinguish between executable bash patterns and illustrative text, possibly by:

  • Only parsing bash patterns outside of markdown code blocks
  • Adding an escape mechanism for documentation examples

View original on GitHub ↗

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