id = "mcfly" name = "McFly" homepage = "https://github.com/cantino/mcfly" description = "An intelligent shell history search tool." executables = ["mcfly"] [dotfiles] # McFly's official README documents the legacy ~/.mcfly config and the macOS # config at ~/Library/Application Support/McFly/config.toml. The Linux data # directory spelling is conditional on XDG_DATA_DIR and is not a fixed path; # arbitrary MCFLY_* environment settings are likewise outside this catalog. # https://github.com/cantino/mcfly#settings paths = [ "~/.mcfly", "[appData]/McFly/config.toml", ] exclude = [] secret = [] side_effect = false [commands] format = 1 label = "McFly" description = "Root has no options of its own; use the dump subcommand to export shell history." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.subcommand]] path = ["dump"] label = "Dump history" description = "Write McFly's command history to standard output as JSON or CSV, optionally filtered by time or regex." [[commands.subcommand.source]] id = "readme" kind = "manual" url = "https://github.com/cantino/mcfly/blob/master/README.md" revision = "2026-10-27" evidence = """ mcfly dump --since '2023-01-01' --before '2023-09-12 09:15:30' You can specify **csv** as dump format via `--format csv` as well. mcfly dump -r '^cargo run' You can use `-r/--regex` and time options at the same time. """ [[commands.subcommand.field]] id = "since" label = "Since" description = "Local time, e.g. 2023-01-01." type = "string" option = ["--since"] sources = ["readme"] [[commands.subcommand.field]] id = "before" label = "Before (exclusive)" type = "string" option = ["--before"] sources = ["readme"] [[commands.subcommand.field]] id = "regex" label = "Command regex" type = "string" option = ["--regex", "-r"] sources = ["readme"] [[commands.subcommand.field]] id = "format" label = "Format" description = "JSON is the default." type = "enum" option = ["--format"] choices = [{ value = "csv", label = "CSV" }] sources = ["readme"] [[commands.subcommand.task]] id = "all" label = "Dump everything" fields = [] required = [] [[commands.subcommand.task]] id = "filtered" label = "Filtered dump" fields = ["since", "regex", "format"] required = [] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["since", "before", "regex", "format"]