{
  "id": "mesheryctl",
  "name": "Meshery CLI",
  "homepage": "https://docs.meshery.io/guides/mesheryctl/working-with-mesheryctl/",
  "executables": [
    "mesheryctl"
  ],
  "dotfiles": {
    "paths": [
      "~/.meshery/config.yaml",
      "~/.meshery/meshery.yaml"
    ],
    "secret": [],
    "secret_paths": [
      {
        "file": "~/.meshery/config.yaml",
        "format": "yaml",
        "match": {
          "key_path": [
            "contexts.*.token"
          ]
        }
      }
    ]
  },
  "commands": {
    "format": 1,
    "label": "Meshery CLI",
    "description": "Start, stop and check a Meshery deployment. Other mesheryctl commands (designs, models, contexts, ...) are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "system",
          "start"
        ],
        "label": "Start Meshery",
        "source": [
          {
            "id": "doc",
            "kind": "manual",
            "url": "https://docs.meshery.io/reference/mesheryctl/system/start",
            "evidence": "mesheryctl system start [flags]\n  -p, --platform string   platform to deploy Meshery to.\n      --provider string   (optional) Defaults to the provider specified in the current context\n      --reset             (optional) reset Meshery's configuration file to default settings.\n      --skip-browser      (optional) skip opening of MesheryUI in browser.\n      --skip-update       (optional) skip checking for new Meshery's container images.\n  -c, --context string   (optional) temporarily change the current context.\n  -y, --yes              (optional) assume yes for user interactive prompts.\n"
          }
        ],
        "field": [
          {
            "id": "platform",
            "label": "Platform",
            "type": "string",
            "option": [
              "--platform",
              "-p"
            ],
            "suggestions": [
              {
                "value": "docker",
                "label": "Docker"
              },
              {
                "value": "kubernetes",
                "label": "Kubernetes"
              }
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "provider",
            "label": "Provider",
            "type": "string",
            "option": [
              "--provider"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "skip_browser",
            "label": "Do not open the UI",
            "type": "boolean",
            "option": [
              "--skip-browser"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "skip_update",
            "label": "Skip image update check",
            "type": "boolean",
            "option": [
              "--skip-update"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "reset",
            "label": "Reset configuration file to defaults",
            "type": "boolean",
            "option": [
              "--reset"
            ],
            "effect": "overwrite",
            "sources": [
              "doc"
            ]
          },
          {
            "id": "context",
            "label": "Context",
            "type": "string",
            "option": [
              "--context",
              "-c"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "yes",
            "label": "Assume yes for prompts",
            "type": "boolean",
            "option": [
              "--yes",
              "-y"
            ],
            "sources": [
              "doc"
            ]
          }
        ],
        "task": [
          {
            "id": "start",
            "label": "Start Meshery",
            "fields": [
              "platform",
              "skip_browser"
            ],
            "required": []
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "platform",
              "provider",
              "skip_browser",
              "skip_update"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "reset",
              "context",
              "yes"
            ]
          }
        ]
      },
      {
        "path": [
          "system",
          "stop"
        ],
        "label": "Stop Meshery",
        "source": [
          {
            "id": "doc",
            "kind": "manual",
            "url": "https://docs.meshery.io/reference/mesheryctl/system/stop",
            "evidence": "mesheryctl system stop [flags]\n      --force            (optional) uninstall Meshery resources forcefully\n      --keep-namespace   (optional) keep the Meshery namespace during uninstallation\n      --reset            (optional) reset Meshery's configuration file to default settings.\n  -c, --context string   (optional) temporarily change the current context.\n  -y, --yes              (optional) assume yes for user interactive prompts.\n"
          }
        ],
        "field": [
          {
            "id": "force",
            "label": "Force uninstall of resources",
            "type": "boolean",
            "option": [
              "--force"
            ],
            "effect": "delete",
            "sources": [
              "doc"
            ]
          },
          {
            "id": "keep_namespace",
            "label": "Keep the Meshery namespace",
            "type": "boolean",
            "option": [
              "--keep-namespace"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "reset",
            "label": "Reset configuration file to defaults",
            "type": "boolean",
            "option": [
              "--reset"
            ],
            "effect": "overwrite",
            "sources": [
              "doc"
            ]
          },
          {
            "id": "context",
            "label": "Context",
            "type": "string",
            "option": [
              "--context",
              "-c"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "yes",
            "label": "Assume yes for prompts",
            "type": "boolean",
            "option": [
              "--yes",
              "-y"
            ],
            "sources": [
              "doc"
            ]
          }
        ],
        "task": [
          {
            "id": "stop",
            "label": "Stop Meshery",
            "fields": [
              "keep_namespace"
            ],
            "required": []
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "keep_namespace",
              "force"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "reset",
              "context",
              "yes"
            ]
          }
        ]
      },
      {
        "path": [
          "system",
          "check"
        ],
        "label": "Check system",
        "source": [
          {
            "id": "doc",
            "kind": "manual",
            "url": "https://docs.meshery.io/reference/mesheryctl/system/check",
            "evidence": "mesheryctl system check [flags]\n      --adapter string   Check status of specified meshery adapter\n      --adapters         Check status of meshery adapters\n      --components       Check status of Meshery components\n      --operator         Verify the health of Meshery Operator's deployment with MeshSync and Broker\n      --preflight        Verify environment readiness to deploy Meshery\n  -c, --context string   (optional) temporarily change the current context.\n  -y, --yes              (optional) assume yes for user interactive prompts.\n"
          }
        ],
        "field": [
          {
            "id": "adapter",
            "label": "Adapter",
            "type": "string",
            "option": [
              "--adapter"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "adapters",
            "label": "Check adapters",
            "type": "boolean",
            "option": [
              "--adapters"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "components",
            "label": "Check components",
            "type": "boolean",
            "option": [
              "--components"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "operator",
            "label": "Check Meshery Operator",
            "type": "boolean",
            "option": [
              "--operator"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "preflight",
            "label": "Preflight (environment readiness)",
            "type": "boolean",
            "option": [
              "--preflight"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "context",
            "label": "Context",
            "type": "string",
            "option": [
              "--context",
              "-c"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "yes",
            "label": "Assume yes for prompts",
            "type": "boolean",
            "option": [
              "--yes",
              "-y"
            ],
            "sources": [
              "doc"
            ]
          }
        ],
        "task": [
          {
            "id": "preflight",
            "label": "Preflight check",
            "fields": [
              "preflight"
            ],
            "required": [],
            "set": {
              "preflight": [
                true
              ]
            }
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "preflight",
              "components",
              "adapters",
              "adapter",
              "operator"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "context",
              "yes"
            ]
          }
        ]
      }
    ]
  }
}
