{
  "name": "caffeinate",
  "description": "Prevent the system from sleeping on behalf of a utility",
  "options": [
    {
      "names": [
        "-d"
      ],
      "description": "Create an assertion to prevent the display from sleeping"
    },
    {
      "names": [
        "-i"
      ],
      "description": "Create an assertion to prevent the system from idle sleeping"
    },
    {
      "names": [
        "-m"
      ],
      "description": "Create an assertion to prevent the disk from idle sleeping"
    },
    {
      "names": [
        "-s"
      ],
      "description": "Create an assertion to prevent the system from sleeping. This assertion is valid only when system is running on AC power"
    },
    {
      "names": [
        "-u"
      ],
      "description": "Create an assertion to declare that user is active. If the display is off, this option turns the display on and prevents the display from going into idle sleep. If a timeout is not specified with '-t'"
    },
    {
      "names": [
        "-t"
      ],
      "description": "Specifies the timeout value in seconds for which this assertion has to be valid. The assertion is dropped after the specified timeout. Timeout value is not used when an utility is invoked with this co",
      "takes_arg": true,
      "arg": {
        "name": "time",
        "description": "(in seconds)"
      }
    },
    {
      "names": [
        "-w"
      ],
      "description": "Waits for the process with the specified pid to exit. Once the the process exits, the assertion is also released.  This option is ignored when used with utility option",
      "takes_arg": true,
      "arg": {
        "name": "pid",
        "description": "(in seconds)"
      }
    }
  ]
}
