{
  "id": "pueue",
  "name": "Pueue",
  "homepage": "https://github.com/Nukesor/pueue",
  "description": "Pueue is a command-line task management tool for sequential and parallel execution of long-running tasks.",
  "executables": [
    "pueue",
    "pueued"
  ],
  "dotfiles": {
    "paths": [
      "[appData]/pueue/pueue.yml",
      "[appData]/pueue/pueue_aliases.yml"
    ],
    "exclude": [
      "[dataHome]/pueue/"
    ],
    "secret": [
      "[dataHome]/pueue/shared_secret",
      "[dataHome]/pueue/certs/daemon.key"
    ]
  },
  "commands": {
    "format": 1,
    "label": "pueue",
    "description": "Queue a shell command with pueue add. Other subcommands, groups, dependencies and delays are not covered.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": false,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "add"
        ],
        "label": "Queue a command",
        "description": "Add a command to the pueue queue. The daemon must be running.",
        "source": [
          {
            "id": "changelog",
            "kind": "manual",
            "url": "https://github.com/Nukesor/pueue/blob/main/CHANGELOG.md",
            "revision": "2026-10-27",
            "evidence": "- `pueue add` Canonicalize `--working-directory` paths.\n`pueue add --immediate install_something && pueue send 0 'y\\n'`\n- Add `add --follow` flag that may be called in combination with `--immediate`\n- Add the `--working-directory` parameter to the `pueue add` command\n`task add --label $LABEL` option, which will be displayed when calling `pueue status`.\n`--start-immediately` and `--stashed` collided.\n"
          }
        ],
        "field": [
          {
            "id": "command",
            "label": "Command",
            "description": "The command to queue, as one shell string (quote it).",
            "type": "string",
            "position": 0,
            "min": 1,
            "sources": [
              "changelog"
            ]
          },
          {
            "id": "label",
            "label": "Label",
            "description": "Shown in pueue status.",
            "type": "string",
            "option": [
              "--label"
            ],
            "sources": [
              "changelog"
            ]
          },
          {
            "id": "working_directory",
            "label": "Working directory",
            "type": "path",
            "option": [
              "--working-directory"
            ],
            "path": {
              "kind": "directory",
              "role": "input"
            },
            "sources": [
              "changelog"
            ]
          },
          {
            "id": "immediate",
            "label": "Start immediately",
            "type": "boolean",
            "option": [
              "--immediate"
            ],
            "sources": [
              "changelog"
            ]
          },
          {
            "id": "follow",
            "label": "Follow output (with immediate)",
            "type": "boolean",
            "option": [
              "--follow"
            ],
            "sources": [
              "changelog"
            ]
          },
          {
            "id": "stashed",
            "label": "Add as stashed",
            "type": "boolean",
            "option": [
              "--stashed"
            ],
            "sources": [
              "changelog"
            ]
          }
        ],
        "task": [
          {
            "id": "queue",
            "label": "Queue a command",
            "fields": [
              "command",
              "label"
            ],
            "required": [
              "command"
            ]
          },
          {
            "id": "run_now",
            "label": "Run now and follow",
            "fields": [
              "command",
              "immediate",
              "follow"
            ],
            "required": [
              "command"
            ],
            "set": {
              "immediate": [
                true
              ],
              "follow": [
                true
              ]
            }
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "command",
              "label",
              "working_directory"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "immediate",
              "follow",
              "stashed"
            ]
          }
        ]
      }
    ]
  }
}
