#!node import { program } from 'commander'; import * as fs from 'fs/promises'; import { defaultProdiaParams, fetchProdia } from './prodia'; program .name('prodia-scripts') .description('cli for prodia usage') .version('0.1.0'); program .command('sdxl') .description('generate an image with sdxl') .argument('[config]', 'path to the config json', './sdxl.gen.json') .option('--init', 'create a default sdxl.gen.json') .action(async (config, flags) => { console.log(config, flags); if (flags.init) { console.log('Creating sdxl.gen.json...'); await fs.writeFile( './sdxl.gen.json', JSON.stringify(defaultProdiaParams, null, 4) ); return; } else { console.log(`Reading config=${config}...`); const txt = await fs.readFile(config, { encoding: 'utf8' }); const json = JSON.parse(txt); console.log(`Fetching prodia api...`); const status = await fetchProdia(json); console.log('done:', status); } }); program.parse();