@puls-atlas/cli
Version:
The Puls Atlas CLI tool for managing Atlas projects
24 lines • 1.08 kB
JavaScript
import { logger } from '../../utils/logger.js';
import { createAtlasAiArtifacts, ensureInitWriteAllowed, logAiWriteOutcome, writeAtlasAiArtifacts } from './artifactsRuntime.js';
export const runAiInit = async (options = {}, dependencies = {}, cwd = process.cwd()) => {
const loggerImpl = dependencies.logger ?? logger;
let spinner;
try {
spinner = loggerImpl.spinner('Initializing Atlas AI context...');
const artifacts = createAtlasAiArtifacts(options, dependencies, cwd, 'atlas ai init');
ensureInitWriteAllowed(artifacts, options, dependencies);
if (!options.dryRun) {
writeAtlasAiArtifacts(artifacts, dependencies);
}
spinner.succeed(options.dryRun ? 'Atlas AI context preview is ready.' : 'Atlas AI context is ready.');
logAiWriteOutcome(loggerImpl, artifacts, options.dryRun ? 'init (dry-run)' : 'init');
return {
artifacts,
status: options.dryRun ? 'preview' : 'ready'
};
} catch (error) {
spinner?.fail('Failed to initialize Atlas AI context.');
loggerImpl.error(error.message);
return null;
}
};