You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Shell snippets leave $ARGUMENTS unquoted in status/result/cancel/setup #29
Several Claude command markdown files invoke the companion with raw $ARGUMENTS in a shell snippet. If a user-provided argument contains shell metacharacters, the shell can split or interpret it before Node receives argv.
This is especially relevant for cancel, result, and status, where job-id prefixes are expected to be inert strings.
User arguments should be passed to the companion exactly as user input, not interpreted by the shell.
Suggested fix
Quote or otherwise safely pass arguments in all command markdown snippets. At minimum, mirror the safer treatment used by the review/adversarial command docs and ensure free-form text with #, $, ;, &, |, backticks, etc. survives unchanged.
Add a lightweight NL artifact test that scans command markdown for unsafe $ARGUMENTS usage.
Fixed by PR #51 commit 214852a — all command markdown files (cancel, result, status, setup) now route through safe-command.mjs heredoc bridge that feeds raw args as data, not shell syntax.
Activity
JohnnyVicious commentedon Apr 12, 2026
Fixed by PR #51 commit 214852a — all command markdown files (cancel, result, status, setup) now route through safe-command.mjs heredoc bridge that feeds raw args as data, not shell syntax.