diff --git a/hive-forge/src/verbs/list.rs b/hive-forge/src/verbs/list.rs index 01197652..81db0f0e 100644 --- a/hive-forge/src/verbs/list.rs +++ b/hive-forge/src/verbs/list.rs @@ -86,15 +86,16 @@ pub struct Args { #[arg(long = "label")] labels: Vec, /// Page size — items per page (default: 30; forge's per-page cap, - /// ~50, applies). - #[arg(long, default_value_t = 30)] + /// ~50, applies). Must be >= 1. + #[arg(long, default_value_t = 30, value_parser = clap::value_parser!(u64).range(1..))] limit: u64, /// Page number to fetch (1-based; default 1). Combine with `--limit` /// to walk a large result set incrementally — fetch page 1, process, /// fetch page 2, … until a short/empty page. This keeps each call /// token-bounded (one page at a time) instead of pulling a whole - /// repo's population into a single response. - #[arg(long, default_value_t = 1)] + /// repo's population into a single response. Must be >= 1 (the forge + /// pages are 1-based; page 0 is rejected). + #[arg(long, default_value_t = 1, value_parser = clap::value_parser!(u64).range(1..))] page: u64, }