Summary
Invoking /cozy-bump (with or without arguments) fails immediately in Claude Code with:
Error: Shell command failed for pattern "!` test would catch `": [stderr]
(eval):1: parse error: condition expected: would
The skill never starts — the slash-command preprocessor errors out before reaching the assistant.
Root cause
skills/cozy-bump/SKILL.md line 305 contains the sequence `if !` followed by test would catch followed by `tee`:
Without pipefail, the `if !` test would catch `tee`'s exit status (always 0 when it can write the file), and a failing make generate would slip through the gate.
Claude Code's slash-command preprocessor appears to interpret the !` adjacency as a shell-execution prefix on the following backtick-quoted span. After it strips the backticks, the harness ends up eval-ing test would catch as a shell condition. Zsh's [[ ]] parser then rejects would (it's not a valid binary operator), producing the error above.
The skill body is otherwise pure documentation — no tool actually needs to run that text.
Reproduction
- Install
cozy-bump@cozystack-claude-plugins in Claude Code (any version 2.1.x).
- Type
/cozy-bump (or /cozy-bump <pkg>) at the prompt.
- Observe the error above immediately, before any model turn.
Suggested fix
Rephrase line 305 so ! is never adjacent to a backtick. For example:
Without pipefail, the negation in `if ! make ... | tee ...` only observes `tee`'s exit status (always 0 when it can write the file), and a failing make generate would slip through the gate.
Verified locally: rewriting the line to remove the !` adjacency unblocks /cozy-bump.
Environment
- Claude Code 2.1.126
- Plugin:
cozy-bump@cozystack-claude-plugins v1.0.0
- Shell: zsh on Linux
Summary
Invoking
/cozy-bump(with or without arguments) fails immediately in Claude Code with:The skill never starts — the slash-command preprocessor errors out before reaching the assistant.
Root cause
skills/cozy-bump/SKILL.mdline 305 contains the sequence`if !`followed bytest would catchfollowed by`tee`:Claude Code's slash-command preprocessor appears to interpret the
!`adjacency as a shell-execution prefix on the following backtick-quoted span. After it strips the backticks, the harness ends upeval-ingtest would catchas a shell condition. Zsh's[[ ]]parser then rejectswould(it's not a valid binary operator), producing the error above.The skill body is otherwise pure documentation — no tool actually needs to run that text.
Reproduction
cozy-bump@cozystack-claude-pluginsin Claude Code (any version 2.1.x)./cozy-bump(or/cozy-bump <pkg>) at the prompt.Suggested fix
Rephrase line 305 so
!is never adjacent to a backtick. For example:Verified locally: rewriting the line to remove the
!`adjacency unblocks/cozy-bump.Environment
cozy-bump@cozystack-claude-pluginsv1.0.0