Bug
When a <Command> block uses JSX expression syntax for its command prop (i.e. command={"..."} instead of command="..."), the backend fails to find the component at execution time:
Failed to find component: component not found: create-github-repo
Failed to execute script on the server
Steps to Reproduce
Use a JSX expression for the command prop on a Command block:
<Command
id="create-github-repo"
command={"gh repo create org/repo --private && echo \"Done\""}
title="Create repo"
/>
Run the block → error: component not found: create-github-repo
Changing to a plain string attribute works fine:
<Command
id="create-github-repo"
command="gh repo create org/repo --private && echo Done"
title="Create repo"
/>
Context
This was encountered when trying to use escaped double quotes (\") inside a command attribute. Plain string attributes (command="...") don't support backslash escapes — the MDX parser rejects \ (U+005C) as an unexpected character in attribute names. The natural workaround is to use a JSX expression (command={"..."}), which supports JS string escapes, but the backend doesn't recognize the component when props are passed this way.
Expected Behavior
JSX expression syntax (command={"..."}) should work identically to plain string syntax (command="...") for component registration and execution.
Workaround
Avoid characters that need escaping in command attributes. For example, use echo Repo created: $REPO_URL instead of echo "Repo created: $REPO_URL".
Bug
When a
<Command>block uses JSX expression syntax for itscommandprop (i.e.command={"..."}instead ofcommand="..."), the backend fails to find the component at execution time:Steps to Reproduce
Use a JSX expression for the
commandprop on a Command block:Run the block → error:
component not found: create-github-repoChanging to a plain string attribute works fine:
Context
This was encountered when trying to use escaped double quotes (
\") inside acommandattribute. Plain string attributes (command="...") don't support backslash escapes — the MDX parser rejects\(U+005C) as an unexpected character in attribute names. The natural workaround is to use a JSX expression (command={"..."}), which supports JS string escapes, but the backend doesn't recognize the component when props are passed this way.Expected Behavior
JSX expression syntax (
command={"..."}) should work identically to plain string syntax (command="...") for component registration and execution.Workaround
Avoid characters that need escaping in
commandattributes. For example, useecho Repo created: $REPO_URLinstead ofecho "Repo created: $REPO_URL".