39 lines
1.1 KiB
JavaScript
39 lines
1.1 KiB
JavaScript
#!/usr/bin/env node
|
|
|
|
const { Command } = require('commander');
|
|
const fs = require('fs-extra');
|
|
const path = require('path');
|
|
|
|
const program = new Command();
|
|
|
|
program
|
|
.name('bmad-flatten')
|
|
.description('BMad-Method codebase flattener tool')
|
|
.version('1.0.0')
|
|
.option('-o, --output <path>', 'Output file path', 'flattened-codebase.xml')
|
|
.action(async (options) => {
|
|
try {
|
|
console.log(`Flattening codebase to: ${options.output}`);
|
|
|
|
// TODO: Implement actual flattening logic
|
|
const outputPath = path.resolve(options.output);
|
|
|
|
// Create basic XML structure for now
|
|
const xmlContent = `<?xml version="1.0" encoding="UTF-8"?>
|
|
<codebase>
|
|
<!-- Flattened codebase will be generated here -->
|
|
</codebase>`;
|
|
|
|
await fs.writeFile(outputPath, xmlContent);
|
|
console.log(`Codebase flattened successfully to: ${outputPath}`);
|
|
} catch (error) {
|
|
console.error('Flattening failed:', error.message);
|
|
process.exit(1);
|
|
}
|
|
});
|
|
|
|
if (require.main === module) {
|
|
program.parse();
|
|
}
|
|
|
|
module.exports = program; |