pinset exec
Run a command with the project toolchain and environment, preserving native output and exit status.
View source on GitHub ↗When to use
Use in scripts, CI or terminals to explicitly use project tools without depending on shell integration. Prefer Maven/Gradle project wrappers.
Examples
pinset exec -- node --version
pinset exec -- ./mvnw verify
pinset exec -- ./gradlew build
The first prints the project's Node version, such as v24.0.0. The others return the build's own output and status.
Behavior
No automatic installation or version changes. Prepares locked tools then runs the raw command. Encrypted profiles need trust and decryption access; conflicting process variables fail. Children can access the network, write files and use external toolchains. This entry is not a sandbox.
Parameters, exit codes and common errors
| Parameter | Meaning |
|---|---|
--profile <profile> | Select a profile for this invocation. |
--no-env | Disable encrypted variables; conflicts with --profile. |
-- <command...> | Raw command and arguments. |
Forwards child exit status. Preparation failures exit 1; invalid arguments exit 2. Rejects --json with PINSET_NATIVE_OUTPUT. For PINSET_ENV_COLLISION, inspect existing process variables.