id = "hermit" name = "Hermit" homepage = "https://cashapp.github.io/hermit" description = "Manages isolated, self-bootstrapping sets of tools in software projects." executables = ["hermit"] [dotfiles] # Hermit's official user-configuration guide documents ~/.hermit.hcl as the # global configuration file. It controls prompt, Git behaviour, and defaults # inherited by newly-created project environments. # https://cashapp.github.io/hermit/usage/user-config/ paths = ["~/.hermit.hcl"] exclude = [] secret = [] side_effect = false [commands] format = 1 label = "Hermit" description = "Install packages into the active Hermit environment, or install shell hooks. Other commands are left out." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false } [[commands.subcommand]] path = ["install"] label = "Install packages" [[commands.subcommand.source]] id = "docs" kind = "manual" url = "https://cashapp.github.io/hermit/usage/get-started/" revision = "2026-10-27" evidence = """Once your environment is activated, use hermit search to search for project🐚~/project$ hermit install go-1.16.3""" [[commands.subcommand.field]] id = "packages" label = "Packages" description = "For example go-1.16.3." type = "string" position = 0 multiple = true sources = ["docs"] [[commands.subcommand.task]] id = "install" label = "Install packages" fields = ["packages"] required = ["packages"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["packages"] [[commands.subcommand]] path = ["shell-hooks"] label = "Install shell hooks" description = "Writes Hermit hooks into your shell's startup file." [[commands.subcommand.source]] id = "shell" kind = "manual" url = "https://cashapp.github.io/hermit/usage/shell/" revision = "2026-10-27" evidence = """hermit shell-hooks --zsh hermit shell-hooks --bash hermit shell-hooks --fish""" [[commands.subcommand.field]] id = "zsh" label = "zsh" type = "boolean" option = ["--zsh"] effect = "overwrite" sources = ["shell"] [[commands.subcommand.field]] id = "bash" label = "bash" type = "boolean" option = ["--bash"] effect = "overwrite" sources = ["shell"] [[commands.subcommand.field]] id = "fish" label = "fish" type = "boolean" option = ["--fish"] effect = "overwrite" sources = ["shell"] [[commands.subcommand.task]] id = "zsh" label = "Install for zsh" fields = ["zsh"] required = ["zsh"] set = { zsh = [true] } [[commands.subcommand.task]] id = "bash" label = "Install for bash" fields = ["bash"] required = ["bash"] set = { bash = [true] } [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["zsh", "bash", "fish"]