
# Referencia CLI

Všetky operácie Queuety sú predvolene dostupné cez WP-CLI v mennom priestore `wp queuety`.

Ak chcete zverejniť rovnaký strom príkazov pod iným koreňom, napríklad `wp themequeue`, definujte `QUEUETY_CLI_COMMAND` pred spustením Queuety.

Pre testovacie prostredia agentov a ďalšie integrácie virtuálneho bashu považujte túto stránku za referenciu pre používateľov a mostík PHP za strojové rozhranie:

- `Queuety::cli_command_map()` sprístupňuje serializovateľný katalóg príkazov
- `Queuety::resolve_cli_command( $path, $args, $assoc_args )` premieňa analyzovaný vstup `wp queuety ...` na normalizovaný plán vykonávania, ktorý uprednostňuje priame volateľné funkcie PHP

Stavové automaty v tomto strome nemajú žiadne príkazy; preskúmajte ich prostredníctvom PHP API opísaných v časti [Stavové automaty](https://queuety.inline0.dev/sk/docs/state-machines).

## Príkazy úloh

### `wp queuety work`

Spustí pracovníka, ktorý spracúva úlohy.

```bash
wp queuety work [--queue=<queue>] [--once] [--workers=<n>]
wp queuety work [--queue=<queue>] [--min-workers=<n>] --max-workers=<n>
```

| Možnosť | Opis |
|---|---|
| `--queue=<queue>` | Queue(s) na spracovanie, pri zoradení podľa priority oddelené čiarkami (predvolené: `default`) |
| `--once` | Spracuje najviac jednu úlohu a skončí (skončí aj okamžite, keď nemožno prevziať žiadnu úlohu) |
| `--workers=<n>` | Spustí N procesov pracovníkov (vyžaduje rozšírenia `pcntl` a `posix`, rovnako ako `--min-workers` a `--max-workers`) |
| `--min-workers=<n>` | Minimálny počet pracovníkov pre adaptívny fond. Vyžaduje `--max-workers` |
| `--max-workers=<n>` | Maximálny počet pracovníkov pre adaptívny fond |

```bash
# Single worker on default queue
wp queuety work

# Process a specific queue
wp queuety work --queue=emails

# Process multiple queues in priority order
wp queuety work --queue=critical,default,low

# One-shot mode
wp queuety work --once

# Multi-worker mode
wp queuety work --workers=4

# Adaptive worker pool
wp queuety work --queue=providers --min-workers=2 --max-workers=6
```

Ak zadáte viacero frontov, pracovník sa pokúsi prevziať úlohu z každého frontu v uvedenom poradí. Prednosť má prvý front s dostupnou úlohou. `--workers` udržiava nemennú veľkosť fondu. `--min-workers` a `--max-workers` zapínajú adaptívne škálovanie pre rovnakú množinu príkazov. Stratégie nasadenia nájdete v časti [Pracovníci](https://queuety.inline0.dev/sk/docs/features/workers) a model prijímania úloh pre adaptívne fondy v časti [Správa zdrojov](https://queuety.inline0.dev/sk/docs/features/resource-management).

### `wp queuety flush`

Spracuje všetky čakajúce úlohy a skončí.

```bash
wp queuety flush [--queue=<queue>]
```

| Možnosť | Opis |
|---|---|
| `--queue=<queue>` | Queue(s) na vyprázdnenie, pri zoradení podľa priority oddelené čiarkami (predvolené: `default`) |

```bash
# Flush a single queue
wp queuety flush --queue=emails

# Flush multiple queues in priority order
wp queuety flush --queue=critical,default,low
```

### `wp queuety dispatch`

Odošle úlohu z príkazového riadka.

```bash
wp queuety dispatch <handler> [--payload=<json>] [--queue=<queue>] [--priority=<priority>] [--delay=<seconds>]
```

| Možnosť | Opis |
|---|---|
| `<handler>` | Názov obslužnej rutiny alebo triedy (povinné) |
| `--payload=<json>` | Dáta JSON (predvolené: `{}`) |
| `--queue=<queue>` | Názov frontu (predvolené: `default`) |
| `--priority=<priority>` | Úroveň priority 0-3 (predvolené: `0`) |
| `--delay=<seconds>` | Oneskorenie v sekundách (predvolené: `0`) |

```bash
wp queuety dispatch send_email --payload='{"to":"user@example.com"}' --queue=emails
```

### `wp queuety status`

Zobrazí štatistiky frontu.

```bash
wp queuety status [--queue=<queue>]
```

| Možnosť | Opis |
|---|---|
| `--queue=<queue>` | Filter podľa názvu frontu |

### `wp queuety list`

Vypíše zoznam úloh.

```bash
wp queuety list [--queue=<queue>] [--status=<status>] [--format=<format>]
```

| Možnosť | Opis |
|---|---|
| `--queue=<queue>` | Filter podľa frontu |
| `--status=<status>` | Filter podľa stavu (`pending`, `processing`, `completed`, `failed`, `buried`) |
| `--format=<format>` | Formát výstupu: `table` (predvolený), `json`, `csv`, `yaml` |

### `wp queuety inspect`

Zobrazí úplné podrobnosti o úlohe vrátane dát a histórie záznamov.

```bash
wp queuety inspect <id>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID úlohy (povinné) |

### `wp queuety retry`

Zopakuje konkrétnu úlohu.

```bash
wp queuety retry <id>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID úlohy, ktorej vykonanie sa má zopakovať (povinné) |

### `wp queuety retry-buried`

Zopakuje všetky odložené úlohy.

```bash
wp queuety retry-buried
```

### `wp queuety bury`

Manuálne odloží úlohu.

```bash
wp queuety bury <id>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID úlohy, ktorá sa má odložiť (povinné) |

### `wp queuety delete`

Odstráni úlohu.

```bash
wp queuety delete <id>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID úlohy, ktorá sa má odstrániť (povinné) |

### `wp queuety recover`

Obnoví zastarané úlohy, ktoré uviazli v stave `processing`.

```bash
wp queuety recover
```

### `wp queuety purge`

Odstráni dokončené úlohy.

```bash
wp queuety purge [--older-than=<days>]
```

| Možnosť | Opis |
|---|---|
| `--older-than=<days>` | Odstráni úlohy staršie než N dní (predvolené: `QUEUETY_RETENTION_DAYS`) |

### `wp queuety pause`

Pozastaví front, aby ho pracovníci preskakovali.

```bash
wp queuety pause <queue>
```

| Možnosť | Opis |
|---|---|
| `<queue>` | Názov frontu, ktorý sa má pozastaviť (povinné) |

### `wp queuety resume`

Obnoví pozastavený front.

```bash
wp queuety resume <queue>
```

| Možnosť | Opis |
|---|---|
| `<queue>` | Názov frontu, ktorý sa má obnoviť (povinné) |

### `wp queuety metrics`

Zobrazí metriky podľa obslužnej rutiny.

```bash
wp queuety metrics [--minutes=<minutes>] [--format=<format>]
```

| Možnosť | Opis |
|---|---|
| `--minutes=<minutes>` | Časové obdobie v minútach (predvolené: `60`) |
| `--format=<format>` | Formát výstupu: `table` (predvolený), `json`, `csv`, `yaml` |

### `wp queuety discover`

Vyhľadá triedy obslužných rutín v adresári.

```bash
wp queuety discover <directory> <namespace> [--register]
```

| Možnosť | Opis |
|---|---|
| `<directory>` | Adresár na prehľadanie a vyhľadanie tried obslužných rutín (povinné) |
| `<namespace>` | Predpona menného priestoru PSR-4 pre adresár (povinné) |
| `--register` | Skutočne zaregistruje nájdené obslužné rutiny |

## Príkazy pracovných postupov

### `wp queuety workflow status`

Zobrazí stav a priebeh pracovného postupu.

```bash
wp queuety workflow status <id>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |

`status` vypíše aktuálny krok, voliteľný názov kroku, metadáta verzie/hašu, režim čakania, súhrn artefaktov a blok `WaitInfo` JSON, ak pracovný postup práve čaká na signály alebo závislosti.

### `wp queuety workflow list`

Vypíše zoznam pracovných postupov.

```bash
wp queuety workflow list [--status=<status>] [--format=<format>]
```

| Možnosť | Opis |
|---|---|
| `--status=<status>` | Filter podľa stavu: `running`, `completed`, `failed`, `paused`, `waiting_for_signal`, `waiting_for_workflows`, `cancelled` |
| `--format=<format>` | Formát výstupu: `table` (predvolený), `json`, `csv`, `yaml` |

Príkaz vráti najviac 50 pracovných postupov. Načíta hodnotu `--limit`, ale WP-CLI momentálne tento príznak odmieta, pretože ho príkaz nedeklaruje ([#12](https://github.com/inline0/queuety/issues/12)); na nastavenie iného limitu použite `Queuety::list_workflows()`.

Predvolená tabuľka obsahuje `StepName` a `WaitMode`, aby sa zablokované pracovné postupy dali ľahšie prehliadať.

### `wp queuety workflow retry`

Zopakovať neúspešný pracovný postup od kroku, pri ktorom zlyhal.

```bash
wp queuety workflow retry <id>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |

### `wp queuety workflow approve`

Odošle schvaľovací signál do pracovného postupu.

```bash
wp queuety workflow approve <id> [--data=<json>] [--signal=<name>]
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |
| `--data=<json>` | Voliteľné dátové zaťaženie objektu JSON |
| `--signal=<name>` | Prepíše názov schvaľovacieho signálu (predvolené: `approval`, ktorý zodpovedá `wait_for_approval()`; krok `wait_for_decision()` predvolene čaká na `approved`, preto mu zadajte `--signal=approved`) |

### `wp queuety workflow reject`

Odošle zamietavý signál do pracovného postupu.

```bash
wp queuety workflow reject <id> [--data=<json>] [--signal=<name>]
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |
| `--data=<json>` | Voliteľné dátové zaťaženie objektu JSON |
| `--signal=<name>` | Prepíše názov zamietavého signálu (predvolené: `rejected`) |

### `wp queuety workflow input`

Odošle štruktúrovaný vstup do pracovného postupu.

```bash
wp queuety workflow input <id> [--data=<json>] [--signal=<name>]
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |
| `--data=<json>` | Voliteľné dátové zaťaženie objektu JSON |
| `--signal=<name>` | Prepíše názov vstupného signálu (predvolené: `input`) |

### `wp queuety workflow artifacts`

Vypíše zoznam uložených artefaktov pracovného postupu.

```bash
wp queuety workflow artifacts <id> [--format=<format>] [--with-content]
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |
| `--format=<format>` | Formát výstupu: `table` (predvolený) alebo `json` |
| `--with-content` | Zahrnie obsah artefaktov do výstupu |

### `wp queuety workflow artifact`

Zobrazí jeden uložený artefakt pracovného postupu.

```bash
wp queuety workflow artifact <id> <key>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |
| `<key>` | Kľúč artefaktu (povinné) |

### `wp queuety workflow pause`

Pozastaví spustený pracovný postup.

```bash
wp queuety workflow pause <id>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |

### `wp queuety workflow resume`

Obnoviť pozastavený pracovný postup.

```bash
wp queuety workflow resume <id>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |

### `wp queuety workflow cancel`

Zruší pracovný postup, ktorý už nie je v stave `completed` ani `cancelled`. V rámci jednej transakcie Queuety nastaví stav na `cancelled`, odloží čakajúce a spracúvané úlohy pracovného postupu a zaznamená `workflow_cancelled`; potom spustí kompenzácie a všetky zaregistrované obslužné rutiny na vyčistenie.

```bash
wp queuety workflow cancel <id>
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu, ktorý sa má zrušiť (povinné) |

```bash
wp queuety workflow cancel 42
```

### `wp queuety workflow timeline`

Zobrazí časovú os udalostí pracovného postupu. Zobrazuje všetky udalosti krokov (spustené, dokončené, zlyhané) s časovými pečiatkami, obslužnými rutinami a trvaním.

```bash
wp queuety workflow timeline <id> [--limit=<limit>] [--offset=<offset>] [--format=<format>]
```

| Možnosť | Opis |
|---|---|
| `<id>` | ID pracovného postupu (povinné) |
| `--limit=<limit>` | Maximálny počet vrátených udalostí (predvolené: `100`) |
| `--offset=<offset>` | Počet starších udalostí, ktoré sa majú preskočiť (predvolené: `0`) |
| `--format=<format>` | Formát výstupu: `table` (predvolený), `json`, `csv`, `yaml` |

```bash
wp queuety workflow timeline 42
```

Stĺpce výstupu: `ID`, `Step`, `Event`, `Handler`, `Duration_ms`, `Error`, `Created_at`.

### `wp queuety workflow state-at`

Zobrazí verejný stav pracovného postupu po dokončení alebo obnovení konkrétneho kroku pracovného postupu.

```bash
wp queuety workflow state-at <id> <step>
```

| Možnosť | Popis |
|---|---|
| `<id>` | ID workflowu (povinné) |
| `<step>` | Index kroku, od 0 (povinné) |

```bash
wp queuety workflow state-at 42 0
```

Podrobnosti o zaznamenávaných údajoch a možnostiach použitia nájdete v [Denníku udalostí workflowu](https://queuety.inline0.dev/sk/docs/workflows/event-log).

### `wp queuety workflow rewind`

Vráťte workflow na predchádzajúci krok a pokračujte krokom, ktorý nasleduje po ňom. Obnoví sa stav z denníka udalostí `state_after` pre daný krok a zaradí sa do frontu nasledujúci krok (`<step> + 1`); daný krok sa znova nespustí.

```bash
wp queuety workflow rewind <id> <step>
```

| Možnosť | Popis |
|---|---|
| `<id>` | ID workflowu (povinné) |
| `<step>` | Index kroku, na ktorý sa chcete vrátiť, od 0 (povinné) |

```bash
wp queuety workflow rewind 42 1
```

Podrobnosti nájdete v [Cestovaní v čase](https://queuety.inline0.dev/sk/docs/workflows/time-travel).

### `wp queuety workflow fork`

Rozvetvite spustený workflow do nezávislej kópie v jeho aktuálnom stave. Rozvetvený workflow dostane nové ID a bude pokračovať samostatne.

```bash
wp queuety workflow fork <id>
```

| Možnosť | Popis |
|---|---|
| `<id>` | ID workflowu, ktorý chcete rozvetviť (povinné) |

```bash
wp queuety workflow fork 42
# Success: Workflow #42 forked. New workflow ID: 43.
```

Podrobnosti nájdete v [Rozvetvovaní](https://queuety.inline0.dev/sk/docs/workflows/forking).

### `wp queuety workflow export`

Exportujte úplnú históriu vykonávania workflowu do JSON. Obsahuje záznam workflowu, úlohy, udalosti workflowu, položky denníka, uložené signály a čakania na závislosti workflowu.

```bash
wp queuety workflow export <id> [--output=<file>]
```

| Možnosť | Popis |
|---|---|
| `<id>` | ID workflowu (povinné) |
| `--output=<file>` | Cesta k súboru, do ktorého sa zapíše JSON. Predvolene sa vypíše na štandardný výstup. |

```bash
# Print to stdout
wp queuety workflow export 42

# Write to a file
wp queuety workflow export 42 --output=/tmp/workflow-42.json
```

Podrobnosti o štruktúre JSON nájdete v [Exportovaní a prehrávaní](https://queuety.inline0.dev/sk/docs/workflows/export-replay).

### `wp queuety workflow replay`

Prehrajte exportovaný workflow zo súboru JSON. Vytvorí sa nový workflow s exportovaným stavom, metadátami a historickou časovou osou.

```bash
wp queuety workflow replay <file>
```

| Možnosť | Popis |
|---|---|
| `<file>` | Cesta k súboru s exportovaným JSON (povinné) |

```bash
wp queuety workflow replay /tmp/workflow-42.json
# Success: Workflow replayed. New workflow ID: 85.
```

Podrobnosti nájdete v časti [Export a opätovné prehratie](https://queuety.inline0.dev/sk/docs/workflows/export-replay).

## Príkazy plánovania

### `wp queuety schedule list`

Vypíšte všetky opakujúce sa plány.

```bash
wp queuety schedule list [--format=<format>]
```

| Možnosť | Popis |
|---|---|
| `--format=<format>` | Formát výstupu: `table` (predvolený), `json`, `csv`, `yaml` |

### `wp queuety schedule add`

Pridajte opakujúci sa plán.

```bash
wp queuety schedule add <handler> [--every=<interval>] [--cron=<expression>] [--payload=<json>] [--queue=<queue>]
```

| Možnosť | Popis |
|---|---|
| `<handler>` | Názov obslužnej funkcie alebo trieda (povinné) |
| `--every=<interval>` | Výraz intervalu (e.g. `1 hour`, `30 minutes`) |
| `--cron=<expression>` | Výraz Cron (e.g. `0 3 * * *`) |
| `--payload=<json>` | Údaje JSON (predvolené: `{}`) |
| `--queue=<queue>` | Názov frontu (predvolený: `default`) |

Musíte zadať buď `--every`, alebo `--cron`.

```bash
wp queuety schedule add cleanup_handler --every="1 hour"
wp queuety schedule add nightly_report --cron="0 3 * * *" --queue=reports
```

### `wp queuety schedule remove`

Odstráňte plán podľa názvu obslužnej funkcie.

```bash
wp queuety schedule remove <handler>
```

| Možnosť | Popis |
|---|---|
| `<handler>` | Názov obslužnej funkcie, ktorú chcete odstrániť (povinné) |

### `wp queuety schedule run`

Ručne spustite cyklus plánovača. Zaradí úlohy do frontu pre všetky plány, ktorých čas nastal.

```bash
wp queuety schedule run
```

## Príkazy denníka

### `wp queuety log`

Vyhľadajte položky denníka.

```bash
wp queuety log [--job=<id>] [--workflow=<id>] [--handler=<name>] [--event=<event>] [--since=<datetime>] [--limit=<n>] [--format=<format>]
```

| Možnosť | Popis |
|---|---|
| `--job=<id>` | Filtrovanie podľa ID úlohy |
| `--workflow=<id>` | Filtrovanie podľa ID workflowu |
| `--handler=<name>` | Filtrovanie podľa názvu obslužnej funkcie |
| `--event=<event>` | Filtrovanie podľa typu udalosti (`started`, `completed`, `failed`, `buried`, `retried`, `workflow_started`, `workflow_completed`, `workflow_failed`, `workflow_paused`, `workflow_resumed`, `workflow_cancelled`, `workflow_rewound`, `workflow_forked`, `workflow_deadline_exceeded`, `debug`) |
| `--since=<datetime>` | Zobrazenie položiek od tohto dátumu a času |
| `--limit=<n>` | Maximálny počet zobrazených položiek (predvolene: `50`) |
| `--format=<format>` | Formát výstupu: `table` (predvolený), `json`, `csv`, `yaml` |

Filtre sa nekombinujú: Queuety použije prvý zadaný filter v poradí `--job`, `--workflow`, `--handler`, `--event`, `--since`. `--job` a `--workflow` vrátia všetky položky od najstaršej a ignorujú `--limit`. `--handler` a `--event` vrátia najnovšie položky ako prvé. Ak nezadáte filter, príkaz načíta položky za posledných 24 hodín; tieto položky aj `--since` sa zoradia od najstaršej, takže `--limit` ponechá najstaršie položky v danom časovom rozsahu.

```bash
# Logs from the last 24 hours (oldest first)
wp queuety log

# Logs for a job
wp queuety log --job=42

# Failed events
wp queuety log --event=failed --limit=100

# Logs since a specific time
wp queuety log --since="2025-03-01 00:00:00"
```

### Mazanie záznamov denníka

`LogCommand` definuje podpríkaz `purge` (`wp queuety log purge --older-than=<days>`), ale WP-CLI registruje `wp queuety log` ako samostatný príkaz, takže podpríkaz nie je dostupný a zlyhá s chybou „Too many positional arguments: purge“ ([#11](https://github.com/inline0/queuety/issues/11)). Staré položky denníka namiesto toho vymažte z PHP:

```bash
wp eval 'echo Queuety\Queuety::purge_logs( 30 );'
```

## Príkazy webhookov

### `wp queuety webhook add`

Zaregistrujte webhook URL pre udalosť.

```bash
wp queuety webhook add <event> <url>
```

| Možnosť | Popis |
|---|---|
| `<event>` | Názov udalosti: `job.completed`, `job.failed`, `job.buried` alebo `workflow.failed` (povinné) |
| `<url>` | URL, na ktorú sa majú odosielať oznámenia metódou POST (povinné) |

```bash
wp queuety webhook add job.buried https://hooks.slack.com/services/...
```

### `wp queuety webhook list`

Vypíšte všetky zaregistrované webhooky.

```bash
wp queuety webhook list [--format=<format>]
```

| Možnosť | Popis |
|---|---|
| `--format=<format>` | Formát výstupu: `table` (predvolený), `json`, `csv`, `yaml` |

### `wp queuety webhook remove`

Odstráňte webhook podľa ID.

```bash
wp queuety webhook remove <id>
```

| Možnosť | Popis |
|---|---|
| `<id>` | ID webhooku, ktorý chcete odstrániť (povinné) |
