agent-runbook 0.1.0

Generate a local runbook for AI coding agents.
mod checks;
mod cli;
mod interpret;
mod registry;
mod render;
mod scan;

use cli::{CommandArgs, parse_args};
use scan::{ScanInput, scan};

fn main() {
    match parse_args(std::env::args().skip(1)) {
        CommandArgs::Help => {
            println!("{}", cli::help_text());
        }
        CommandArgs::Invalid(reason) => {
            eprintln!("{reason}\n\n{}", cli::help_text());
            std::process::exit(1);
        }
        CommandArgs::Scan { mode } => {
            let cwd = match std::env::current_dir() {
                Ok(path) => path,
                Err(error) => {
                    eprintln!("Failed to read current directory: {error}");
                    std::process::exit(1);
                }
            };

            let result = scan(ScanInput { cwd, mode });
            println!("{}", render::render_scan(&result));
        }
    }
}