fix: use execFileSync to preserve spaces in CLI arguments
Replace execSync with execFileSync in npx wrapper so that argument values containing spaces (e.g. --user-name "CI Bot") are passed as discrete array elements instead of being split by the shell. Fixes #2066 Signed-off-by: majiayu000 <1835304752@qq.com>
This commit is contained in:
parent
ad9cb7a177
commit
4d153c35da
|
|
@ -5,7 +5,7 @@
|
||||||
* This file ensures proper execution when run via npx from GitHub or npm registry
|
* This file ensures proper execution when run via npx from GitHub or npm registry
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const { execSync } = require('node:child_process');
|
const { execFileSync } = require('node:child_process');
|
||||||
const path = require('node:path');
|
const path = require('node:path');
|
||||||
const fs = require('node:fs');
|
const fs = require('node:fs');
|
||||||
|
|
||||||
|
|
@ -25,7 +25,7 @@ if (isNpxExecution) {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// Execute CLI from user's working directory (process.cwd()), not npm cache
|
// Execute CLI from user's working directory (process.cwd()), not npm cache
|
||||||
execSync(`node "${bmadCliPath}" ${args.join(' ')}`, {
|
execFileSync('node', [bmadCliPath, ...args], {
|
||||||
stdio: 'inherit',
|
stdio: 'inherit',
|
||||||
cwd: process.cwd(), // This preserves the user's working directory
|
cwd: process.cwd(), // This preserves the user's working directory
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue