fix(cli): precompute bare root help startup path

This commit is contained in:
Vincent Koc
2026-03-24 12:23:25 -07:00
parent 91b1e41132
commit 805bff6e7e
3 changed files with 72 additions and 8 deletions

View File

@@ -23,7 +23,23 @@ function buildRootHelpProgram(): Command {
return program;
}
export function outputRootHelp(): void {
export function renderRootHelpText(): string {
const program = buildRootHelpProgram();
program.outputHelp();
let output = "";
const originalWrite = process.stdout.write.bind(process.stdout);
const captureWrite: typeof process.stdout.write = ((chunk: string | Uint8Array) => {
output += String(chunk);
return true;
}) as typeof process.stdout.write;
process.stdout.write = captureWrite;
try {
program.outputHelp();
} finally {
process.stdout.write = originalWrite;
}
return output;
}
export function outputRootHelp(): void {
process.stdout.write(renderRootHelpText());
}