Don't require user to specify target directory. (#6)

Reviewed-on: #6
Co-authored-by: Drew Galbraith <drew@tiramisu.one>
Co-committed-by: Drew Galbraith <drew@tiramisu.one>
This commit is contained in:
Drew 2026-03-02 04:01:07 +00:00 committed by Drew
parent 7efc6705d3
commit 0fcdf4ed0d
2 changed files with 19 additions and 9 deletions

View file

@ -12,7 +12,7 @@ use anyhow::Context;
/// Run skate against a project directory.
///
/// ```text
/// Usage: skate --project-dir <path> [--yolo]
/// Usage: skate [--project-dir <path>] [--yolo]
/// ```
///
/// `ANTHROPIC_API_KEY` must be set in the environment.
@ -35,7 +35,8 @@ struct Cli {
/// Parse `argv` into [`Cli`].
///
/// Accepts `--project-dir <path>` (required) and `--yolo` (optional).
/// Accepts `--project-dir <path>` (optional, defaults to current directory)
/// and `--yolo` (optional).
fn parse_cli() -> anyhow::Result<Cli> {
let mut project_dir: Option<PathBuf> = None;
let mut yolo = false;
@ -56,6 +57,9 @@ fn parse_cli() -> anyhow::Result<Cli> {
}
}
let project_dir = project_dir.context("Usage: skate --project-dir <path> [--yolo]")?;
let project_dir = match project_dir {
Some(p) => p,
None => std::env::current_dir().context("failed to determine current directory")?,
};
Ok(Cli { project_dir, yolo })
}