eat: enhance flattener tool with improved CLI integration and custom directory support (#372)

* feat(cli): move flatten command to installer and update docs

Refactor the flatten command from tools/cli.js to tools/installer/bin/bmad.js for better integration. Add support for custom input directory and improve error handling. Update documentation in README.md and working-in-the-brownfield.md to reflect new command usage. Also clean up package-lock.json and add it to .gitignore.

* chore: update gitignore and add package-lock.json for installer tool

Remove package-lock.json from root gitignore since it's now needed for the installer tool
Add package-lock.json with dependencies for the bmad-method installer

---------

Co-authored-by: Devin Stagner <devin@blackstag.family>
This commit is contained in:
manjaroblack
2025-07-27 18:02:08 -05:00
committed by GitHub
parent a2ddf926e5
commit a80ea150f2
9 changed files with 1171 additions and 1564 deletions

View File

@@ -110,6 +110,20 @@ program
}
});
program
.command('flatten')
.description('Flatten codebase to XML format')
.option('-i, --input <path>', 'Input directory to flatten', process.cwd())
.option('-o, --output <path>', 'Output file path', 'flattened-codebase.xml')
.action(async (options) => {
try {
await installer.flatten(options);
} catch (error) {
console.error(chalk.red('Flatten failed:'), error.message);
process.exit(1);
}
});
async function promptInstallation() {
// Display ASCII logo