{
  "id": "copier",
  "name": "Copier",
  "homepage": "https://copier.readthedocs.io",
  "description": "A library and command-line utility for rendering projects templates.",
  "executables": [
    "copier"
  ],
  "dotfiles": {
    "paths": [
      "[configHome]/copier/settings.yml",
      "[appData]/copier/settings.yml",
      "%LOCALAPPDATA%/copier/settings.yml",
      "%LOCALAPPDATA%/copier/copier/settings.yml"
    ],
    "secret": []
  },
  "commands": {
    "format": 1,
    "label": "Copy a template",
    "description": "Bootstrap or overwrite a project from a Copier template with `copier copy`. Update, recopy, data files and answer overrides are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "copy"
        ],
        "label": "Copy from a template",
        "source": [
          {
            "id": "cli",
            "kind": "help",
            "url": "https://github.com/copier-org/copier/blob/master/copier/_cli.py",
            "revision": "master 2026-10",
            "evidence": "[\"-x\", \"--exclude\"],\n[\"-r\", \"--vcs-ref\"],\npretend = cli.Flag([\"-n\", \"--pretend\"], help=\"Run but do not make any changes\")\n[\"-s\", \"--skip\"],\nhelp=\"Skip specified files if they exist already\",\nquiet = cli.Flag([\"-q\", \"--quiet\"], help=\"Suppress status output\")\n[\"--UNSAFE\", \"--trust\"],\n[\"-T\", \"--skip-tasks\"],\n[\"-d\", \"--data\"],\n\"VARIABLE=VALUE\",\n[\"-C\", \"--no-cleanup\"],\n[\"-l\", \"--defaults\"],\n[\"-f\", \"--force\"],\nhelp=\"Same as `--defaults --overwrite`.\",\n[\"-w\", \"--overwrite\"],\nhelp=\"Overwrite files that already exist, without asking.\",\n"
          }
        ],
        "field": [
          {
            "id": "template_src",
            "label": "Template source",
            "description": "Local path or git URL of the template.",
            "type": "string",
            "position": 0,
            "sources": [
              "cli"
            ]
          },
          {
            "id": "destination",
            "label": "Destination",
            "type": "path",
            "position": 1,
            "path": {
              "kind": "directory",
              "role": "output"
            },
            "sources": [
              "cli"
            ]
          },
          {
            "id": "vcs_ref",
            "label": "Template git ref",
            "type": "string",
            "option": [
              "--vcs-ref",
              "-r"
            ],
            "sources": [
              "cli"
            ]
          },
          {
            "id": "data",
            "label": "Answers (VARIABLE=VALUE)",
            "type": "string",
            "option": [
              "--data",
              "-d"
            ],
            "multiple": true,
            "sources": [
              "cli"
            ]
          },
          {
            "id": "exclude",
            "label": "Exclude patterns",
            "type": "string",
            "option": [
              "--exclude",
              "-x"
            ],
            "multiple": true,
            "sources": [
              "cli"
            ]
          },
          {
            "id": "defaults",
            "label": "Use default answers",
            "type": "boolean",
            "option": [
              "--defaults",
              "-l"
            ],
            "sources": [
              "cli"
            ]
          },
          {
            "id": "overwrite",
            "label": "Overwrite existing files",
            "type": "boolean",
            "option": [
              "--overwrite",
              "-w"
            ],
            "effect": "overwrite",
            "sources": [
              "cli"
            ]
          },
          {
            "id": "force",
            "label": "Force (defaults + overwrite)",
            "type": "boolean",
            "option": [
              "--force",
              "-f"
            ],
            "effect": "overwrite",
            "sources": [
              "cli"
            ]
          },
          {
            "id": "pretend",
            "label": "Pretend (no changes)",
            "type": "boolean",
            "option": [
              "--pretend",
              "-n"
            ],
            "sources": [
              "cli"
            ]
          },
          {
            "id": "trust",
            "label": "Trust template (allow tasks and extensions)",
            "type": "boolean",
            "option": [
              "--trust"
            ],
            "effect": "exec",
            "sources": [
              "cli"
            ]
          },
          {
            "id": "skip_tasks",
            "label": "Skip template tasks",
            "type": "boolean",
            "option": [
              "--skip-tasks",
              "-T"
            ],
            "sources": [
              "cli"
            ]
          },
          {
            "id": "quiet",
            "label": "Quiet",
            "type": "boolean",
            "option": [
              "--quiet",
              "-q"
            ],
            "sources": [
              "cli"
            ]
          }
        ],
        "task": [
          {
            "id": "copy",
            "label": "Copy template",
            "fields": [
              "template_src",
              "destination",
              "vcs_ref",
              "data",
              "defaults"
            ],
            "required": [
              "template_src",
              "destination"
            ]
          },
          {
            "id": "preview",
            "label": "Preview only",
            "set": {
              "pretend": [
                true
              ]
            },
            "lock": [
              "pretend"
            ],
            "fields": [
              "template_src",
              "destination",
              "pretend",
              "data",
              "defaults"
            ],
            "required": [
              "template_src",
              "destination"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "template_src",
              "destination",
              "vcs_ref",
              "data",
              "defaults",
              "pretend"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "exclude",
              "overwrite",
              "force",
              "trust",
              "skip_tasks",
              "quiet"
            ]
          }
        ]
      }
    ]
  }
}
