Preprocessor executes !`command` directives inside markdown code spans

Resolved 💬 2 comments Opened Feb 20, 2026 by marcospgp Closed Feb 20, 2026

Description

The preprocessor directive syntax (exclamation mark followed by a backtick-wrapped command, e.g. ! + ` command `) is executed even when it appears inside markdown inline code spans in skill files. This means you cannot document the preprocessor syntax itself in a skill file without it being executed.

Steps to Reproduce

  1. Create a skill file (.claude/skills/example/SKILL.md) containing a line that documents the preprocessor syntax inside code spans
  2. Load the skill via the Skill tool

Expected Behavior

The preprocessor should skip directives that appear inside markdown code spans (backticks). The text should be treated as documentation, not executed.

Actual Behavior

Claude Code attempts to execute the directive, producing:

Bash command failed for pattern "!`command`": (eval):1: redirection with no command
[stderr]
(eval):1: redirection with no command

The skill fails to load.

Workaround

Avoid including the literal syntax in skill files. Describe it in prose instead:

- **Preprocessor** (syntax: exclamation + backtick-wrapped command) — Runs command, injects stdout.

Environment

  • Claude Code (CLI)
  • macOS (zsh shell)
  • Observed: 2026-02-20

View original on GitHub ↗

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