id = "cookiecutter" name = "Cookiecutter" homepage = "https://cookiecutter.readthedocs.io/" description = "A command-line utility that creates projects from project templates." executables = ["cookiecutter"] [dotfiles] # https://cookiecutter.readthedocs.io/en/stable/advanced/user_config.html # documents ~/.cookiecutterrc as Cookiecutter's user configuration file. paths = ["~/.cookiecutterrc"] exclude = [] secret = [] side_effect = false [commands] format = 1 label = "Generate a project from a template" description = "Render a Cookiecutter template (local path, git URL or shorthand) into a new project. Replay, config-file, hook and debug-file options are left out." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = true } [[commands.source]] id = "cli" kind = "help" url = "https://github.com/cookiecutter/cookiecutter/blob/main/cookiecutter/cli.py" revision = "main 2026-10" evidence = """ '--no-input', help='Do not prompt for parameters and only use cookiecutter.json file content. ' '-c', '--checkout', help='branch, tag or commit to checkout after git clone', '--directory', help='Directory within repo that holds cookiecutter.json file ' '-v', '--verbose', is_flag=True, help='Print debug information', default=False '-f', '--overwrite-if-exists', help='Overwrite the contents of the output directory if it already exists', '-s', '--skip-if-file-exists', help='Skip the files in the corresponding directories if they already exist', '-o', '--output-dir', help='Where to output the generated project dir into', '-l', '--list-installed', is_flag=True, help='List currently installed templates.' """ [[commands.field]] id = "template" label = "Template" description = "Local directory, git/hg URL, or a shorthand such as gh:owner/repo." type = "string" position = 0 sources = ["cli"] [[commands.field]] id = "no_input" label = "Use defaults, do not prompt" type = "boolean" option = ["--no-input"] sources = ["cli"] [[commands.field]] id = "checkout" label = "Branch, tag or commit" type = "string" option = ["--checkout", "-c"] sources = ["cli"] [[commands.field]] id = "directory" label = "Template subdirectory" description = "Directory inside the repository that holds cookiecutter.json." type = "string" option = ["--directory"] sources = ["cli"] [[commands.field]] id = "output_dir" label = "Output directory" type = "path" option = ["--output-dir", "-o"] path = { kind = "directory", role = "output" } sources = ["cli"] [[commands.field]] id = "overwrite" label = "Overwrite existing output" type = "boolean" option = ["--overwrite-if-exists", "-f"] effect = "overwrite" sources = ["cli"] [[commands.field]] id = "skip_existing" label = "Skip files that already exist" type = "boolean" option = ["--skip-if-file-exists", "-s"] sources = ["cli"] [[commands.field]] id = "verbose" label = "Verbose" type = "boolean" option = ["--verbose", "-v"] sources = ["cli"] [[commands.field]] id = "list_installed" label = "List installed templates" type = "boolean" option = ["--list-installed", "-l"] sources = ["cli"] [[commands.task]] id = "generate" label = "Generate project" fields = ["template", "checkout", "output_dir", "no_input"] required = ["template"] [[commands.task]] id = "list" label = "List installed templates" set = { list_installed = [true] } lock = ["list_installed"] fields = ["list_installed"] required = [] [[commands.group]] id = "basic" label = "Basic" fields = ["template", "checkout", "output_dir", "no_input", "list_installed"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["directory", "overwrite", "skip_existing", "verbose"]