{
  "name": "oh-my-posh",
  "subcommands": [
    {
      "name": "init",
      "description": "Initialize oh-my-posh for your shell",
      "options": [
        {
          "names": [
            "--config",
            "-c"
          ],
          "description": "The config file to use",
          "takes_arg": true,
          "arg": {
            "name": "CONFIG",
            "description": "The configuration to use",
            "template": "filepaths"
          }
        },
        {
          "names": [
            "--print",
            "-p"
          ],
          "description": "Print the init script"
        }
      ],
      "args": [
        {
          "name": "SHELL",
          "suggestions": [
            "zsh",
            "fish",
            "pwsh",
            "powershell",
            "cmd",
            "bash",
            "shell"
          ]
        }
      ]
    },
    {
      "name": "get",
      "description": "Get oh-my-posh values",
      "args": [
        {
          "name": "VALUE",
          "suggestions": [
            "millis",
            "shell"
          ]
        }
      ]
    },
    {
      "name": "debug",
      "description": "Debug oh-my-posh, example usage: 'oh-my-posh debug'",
      "options": [
        {
          "names": [
            "--config",
            "-c"
          ],
          "description": "The config file to use",
          "takes_arg": true,
          "arg": {
            "name": "CONFIG",
            "description": "The configuration to use",
            "template": "filepaths"
          }
        }
      ]
    },
    {
      "name": "config",
      "description": "Interact with the oh-my-posh configuration",
      "subcommands": [
        {
          "name": "edit",
          "description": "Edit the config file, example usage: 'oh-my-posh config edit'"
        },
        {
          "name": "migrate",
          "description": "Migrate the config file, example usage: 'oh-my-posh config migrate --config ~/.config.omp.json'",
          "options": [
            {
              "names": [
                "--write",
                "-w"
              ],
              "description": "Write the migrated config to the configuration file, example usage: 'oh-my-posh config migrate --write'"
            },
            {
              "names": [
                "--format",
                "-f"
              ],
              "description": "The file format to use",
              "takes_arg": true,
              "arg": {
                "name": "FORMAT",
                "description": "The export format",
                "suggestions": [
                  "json",
                  "yaml",
                  "toml"
                ]
              }
            }
          ]
        },
        {
          "name": "export",
          "description": "Export the config file, example usage: 'oh-my-posh config export --config ~/.config.omp.toml'",
          "options": [
            {
              "names": [
                "--output",
                "-o"
              ],
              "description": "The file to output the migrated config to, example usage: 'oh-my-posh config export --output ~/.config.omp.json'",
              "takes_arg": true,
              "arg": {
                "name": "OUTPUT",
                "description": "The file to write to",
                "template": "filepaths"
              }
            },
            {
              "names": [
                "--format",
                "-f"
              ],
              "description": "The file format to use",
              "takes_arg": true,
              "arg": {
                "name": "FORMAT",
                "description": "The export format",
                "suggestions": [
                  "json",
                  "yaml",
                  "toml"
                ]
              }
            }
          ]
        }
      ],
      "options": [
        {
          "names": [
            "--config",
            "-c"
          ],
          "description": "The config file to use",
          "takes_arg": true,
          "arg": {
            "name": "CONFIG",
            "description": "The configuration to use",
            "template": "filepaths"
          }
        }
      ]
    },
    {
      "name": "print",
      "description": "Print a prompt",
      "options": [
        {
          "names": [
            "--config",
            "-c"
          ],
          "description": "The config file to use",
          "takes_arg": true,
          "arg": {
            "name": "CONFIG",
            "description": "The configuration to use",
            "template": "filepaths"
          }
        },
        {
          "names": [
            "--terminal-width",
            "-w"
          ],
          "description": "The terminal width, example usage: 'oh-my-posh print primary --terminal-width 200'",
          "takes_arg": true,
          "arg": {
            "name": "WIDTH",
            "description": "The terminal width"
          }
        },
        {
          "names": [
            "--command"
          ],
          "description": "The current command for tooltips, example usage: 'oh-my-posh print tooltip --command az'",
          "takes_arg": true,
          "arg": {
            "name": "COMMAND",
            "description": "The tooltip command"
          }
        },
        {
          "names": [
            "--error",
            "-e"
          ],
          "description": "The last exit code, example usage: 'oh-my-posh print primary --error 127'",
          "takes_arg": true,
          "arg": {
            "name": "ERROR CODE",
            "description": "The last error code"
          }
        },
        {
          "names": [
            "--eval"
          ],
          "description": "Use eval to render the prompt, example usage: 'oh-my-posh print primary --eval'"
        },
        {
          "names": [
            "--execution-time"
          ],
          "description": "Use last command execution time in millis, example usage: 'oh-my-posh print primary --execution-time 200'",
          "takes_arg": true,
          "arg": {
            "name": "EXECUTION TIME",
            "description": "The last command's execution time"
          }
        },
        {
          "names": [
            "--plain",
            "-p"
          ],
          "description": "Print a prompt without ASNI codes, example usage: 'oh-my-posh print primary --plain'"
        },
        {
          "names": [
            "--pswd"
          ],
          "description": "The current working directory according to PowerShell, example usage: 'oh-my-posh print primary --pswd C:\\Users\\user\\Documents'",
          "takes_arg": true,
          "arg": {
            "name": "POWERSHELL WORKING DIRECTORY",
            "description": "The working directory according to PowerShell",
            "template": "filepaths"
          }
        },
        {
          "names": [
            "--pwd"
          ],
          "description": "The current working directory, example usage: 'oh-my-posh print primary --pwd /home/user/Documents'",
          "takes_arg": true,
          "arg": {
            "name": "WORKING DIRECTORY",
            "description": "The working directory",
            "template": "filepaths"
          }
        },
        {
          "names": [
            "--shell"
          ],
          "description": "The current shell, example usage: 'oh-my-posh print primary --shell fish'",
          "takes_arg": true,
          "arg": {
            "name": "SHELL",
            "description": "The shell used",
            "suggestions": [
              "zsh",
              "fish",
              "pwsh",
              "powershell",
              "cmd",
              "bash",
              "shell"
            ]
          }
        },
        {
          "names": [
            "--stack-count"
          ],
          "description": "The directory stack count, example usage: 'oh-my-posh print primary --stack-count 1'",
          "takes_arg": true,
          "arg": {
            "name": "NUM",
            "description": "The number of stacks"
          }
        }
      ],
      "args": [
        {
          "name": "PROMPT",
          "suggestions": [
            "primary",
            "secondary",
            "right",
            "transient",
            "tooltip",
            "valid",
            "error"
          ]
        }
      ]
    },
    {
      "name": "version",
      "description": "Display the oh-my-posh version, example usage: 'oh-my-posh version'"
    }
  ],
  "options": [
    {
      "names": [
        "--help",
        "-h"
      ],
      "description": "Show help for oh-my-posh"
    }
  ]
}
