(** Example CLI application using Cacheio_cmd module *) open Cmdliner let main () = (* Default app name for the cache CLI tool *) let app_name = "cacheio-cli" in (* Run with Eio to provide the filesystem and stdin *) Eio_main.run @@ fun env -> let fs = env#fs in let stdin = (env#stdin :> Eio.Flow.source_ty Eio.Resource.t) in let doc = "Cache management tool" in let man = [ `S "DESCRIPTION"; `P "A command-line tool for managing the Cacheio file cache."; `P "This tool provides subcommands for listing, clearing, and managing cached files."; ] in let info = Cmd.info "cache" ~doc ~man in let cmd = Cmd.group info (Cacheio_cmd.Cmd.make_commands ~app_name fs stdin) in exit (Cmd.eval cmd) let () = main ()