Artefakte
Mit Artefakten kannst du dauerhafte Workflow-Ausgaben speichern, ohne den zentralen Workflow-Zustand aufzublähen.
Sie eignen sich für Entwurfsdokumente, extrahierte JSON-Pläne, Zitate, Quellenmanifeste, generierte Dateipfade oder Momentaufnahmen von Prompts und Antworten, die du später prüfen möchtest. Das ist besonders nützlich für Agenten-Workflows: Der endgültige Zustand bleibt klein und übersichtlich, auch wenn jeder Lauf umfangreiche Zwischenergebnisse erzeugt.
Warum Artefakte statt Workflow-Zustand verwenden
Der Workflow-Zustand eignet sich ideal für kleine öffentliche Daten, die der nächste Schritt sofort benötigt.
Artefakte eignen sich besser, wenn die Ausgabe größer als übliche Zustandswerte ist, hauptsächlich später geprüft werden soll, für Prüfungs- oder Exportansichten nützlich ist oder sich als benannte Ausgabe besser eignet als als einzelner großer Zustandsblock.
Ein Artefakt für den aktuellen Workflow-Schritt speichern
Wenn Code bereits innerhalb eines Workflow-Schritts ausgeführt wird, verwende Queuety::put_current_artifact():
use Queuety\Queuety;
use Queuety\Step;
final class DraftBriefStep implements Step
{
public function handle(array $state): array
{
$draft = [
'title' => 'Pricing brief',
'body' => '...',
];
Queuety::put_current_artifact(
'draft',
$draft,
'json',
[ 'source' => 'planner' ],
);
return [ 'draft_ready' => true ];
}
public function config(): array
{
return [];
}
}
Queuety fügt automatisch die aktuelle Workflow-ID und den Schrittindex hinzu.
Ein Artefakt außerhalb des Workflows speichern
Wenn du die Workflow-ID bereits kennst, verwende Queuety::put_artifact():
Queuety::put_artifact(
$workflow_id,
'research_brief',
"# Research Brief\n\nDone.",
'markdown',
metadata: [ 'reviewed_by' => 'editor@example.com' ],
);
Artefakte wieder auslesen
$artifact = Queuety::workflow_artifact( $workflow_id, 'draft' );
$artifacts = Queuety::workflow_artifacts( $workflow_id );
Jeder Artefakteintrag enthält die Felder key, kind, content, metadata, step_index, created_at und updated_at. Queuety::workflow_artifacts() lässt content weg, sofern du true nicht als zweites Argument übergibst.
Integration des Workflow-Status
Queuety::workflow_status() enthält jetzt eine kurze Artefaktübersicht:
$status = Queuety::workflow_status( $workflow_id );
echo $status->artifact_count; // 2
print_r( $status->artifact_keys ); // ['draft', 'citations']
So bleiben Artefakte sichtbar, ohne dass ihr vollständiger Inhalt in der Statusausgabe erscheint.
CLI
Artefakte für einen Workflow auflisten:
wp queuety workflow artifacts 42
Ein Artefakt mit Inhalt anzeigen:
wp queuety workflow artifact 42 draft
Unter CLI findest du die vollständige Befehlsreferenz.
Exporte und Wiedergabe
Artefakte sind in Workflow-Exporten enthalten und werden in wiedergegebene Workflows kopiert.
So lassen sich agentengesteuerte Ausführungen mit Artefakten auch dann überprüfen, wenn du sie zwischen Umgebungen verschiebst oder anhand ihres exportierten Ausführungsverlaufs erneut erstellst.