core:run-command runs a shell command and streams its output to your terminal.
It is included with @isox-sh/cli; no separate executor installation is needed.
The fully scoped reference is @isox-sh/core:run-command. Both also accept the
plural alias run-commands.
Wrap an existing script
For a project that already has abuild script in apps/web/package.json, create
apps/web/project.json:
apps/web/project.json
Options
Commands inherit the environment and standard input, output, and error streams.
A nonzero exit code or signal termination fails the Isox command. Cancellation
propagates to the child process tree.
Run multiple commands
command or commands. Every entry runs in its own shell
with the same cwd; changing directories in one entry does not affect another.
Entries run in parallel by default. Set parallel: false to run them in order.
A failed command stops the sequence or cancels parallel siblings. The executor
waits for all child processes to finish before returning.
String entries and command objects execute the same way. For example, this array
uses both forms:
command; set cwd and parallel on the enclosing
options object. Put each tool’s arguments directly in its command string.
Configure tool flags
Put tool flags incommand. Use named configurations for repeatable variants.
A configuration or CLI options override can switch between command and
commands; the explicitly supplied form replaces the inherited form. Supplying
both together in the same override is invalid.
For example, isox check web --strict would pass an option named strict to this
executor; it would not append --strict to your shell command. Define the full
command in the configuration instead:
targets.check, run
isox check web --config=strict. The example assumes your workspace provides
scripts/check.mjs and that it accepts --strict.
The executor passes command strings to the shell without expanding workspace
tokens or loading .env files. The invoked tools handle their own configuration.
Use target-level
dependsOn for required build ordering.
For programmatic execution and cancellation helpers, see the core API.