timniko.
Scene E · workflow · medium

Send a thank-you email on every order

Event-driven automation without leaving the shop or writing code.

gemini-flash-3.5modelexternal
100%verified5/5 checks
79%judgedby opus
6tool calls0 failed · 4 distinct
24031swall clock
not reportedagent tokens · list pricenot reported by the external runner

What the owner asked

Whenever someone places an order, I want them to get a short thank-you email from me,
addressed with their first name.

Set that up as an automation inside the shop so it runs by itself from now on. Find out first
which triggers and actions this shop actually supports and which customer fields you can put in
the mail — then build it on the order trigger, switch it on, and read it back to confirm it exists
and is active.

Write the email itself as well: subject and body, warm but short, in the shop's language, with
the first name filled in dynamically. Show me the exact text you used.
Efficient and fully grounded: capabilities were queried before building, the payload was dry-run validated, the workflow was created active on orderPlaced -> sendMail with the shop's documented {$customer->cVorname} placeholder, and get_workflow confirmed it. The answer shows the exact German subject and body, matching what is stored byte for byte. It falls short only on craft — informal address and a generic team signature chosen without checking the shop's tone, no workflow ID surfaced, and no test order to see the mail actually render.

Ground truth

Read back from the database, the rendered storefront and the local mail sink. No model involved.

ResultCheckWeight
PASS A workflow was created on a trigger matching order/bestellung
created: #3956 orderPlaced → sendMail
3
PASS That workflow is active
isActive=1
2
PASS Its action is an e-mail action
action=sendMail
2
PASS Called describe_workflow_capabilities before creating
describe at #0, create at #3
2
PASS The stored workflow arguments contain a first-name placeholder
placeholder present in arguments
2

Judgement

Scored by opus, which saw only the evidence bundle.

CriterionScoreReason
correctness
The workflow is on the right trigger, sends mail, is active, and personalises with a real field name from this shop.
9/10 state_diff.json shows workflow 3956 orderPlaced -> sendMail isActive=1, and the stored arguments use real documented shop fields ({$customer->cVorname}, {$customer->cMail}, {$customer->cNachname}), confirmed by get_workflow readback with fires:true.
method
Capabilities were discovered before building; the placeholder syntax matches what the shop documented.
8/10 Two describe_workflow_capabilities calls (generic, then scoped to orderPlaced/sendMail) preceded a dryRun create, then the real create and a get_workflow readback — 6 calls, 0 failures, 0 repeats — though it never test-fired an order to see the mail actually render (mail.json is empty).
copy_quality
The email text is short, warm, correct in the shop's language, and would not embarrass the owner.
6/10 Subject and body are short, warm and correct German, but they duzen the customer without any check of the shop's existing tone, and sign off with the generic 'Dein Shop-Team' instead of the available {$global->shopName}, so the owner-voice the brief asked for is missing.
communication
The exact subject and body are shown back to the owner.
8/10 ANSWER.md quotes the exact subject and body verbatim as stored in the workflow arguments plus trigger, action, recipient fields and active status, but omits the workflow ID 3956 and says nothing about how the readback confirmed it.
Highlight

A clean six-call run with zero failures: capabilities discovered, payload validated with dryRun, workflow created active, and read back with get_workflow — every claim in the answer matches the wire and the database diff.

Weakness

The email copy was written blind — informal 'du' address and a generic 'Dein Shop-Team' signature, with no check of the shop's existing tone or use of the shop-name placeholder, and no test order to prove the mail renders.

What it actually looks like

Workflow list in the JTL admin
Workflow list in the JTL admin · http://localhost:8080/admin/plugin.php?kPlugin=12

How it worked

ToolCallsErrorsAvg
describe_workflow_capabilities20360 ms
create_workflow20316 ms
list_workflows10410 ms
get_workflow10333 ms

The deliverable

# E-Mail-Automatisierung: Danksagung nach Bestellung

Sehr geehrte/r Shop-Betreiber/in,

ich habe wie gewünscht eine automatische E-Mail-Danksagung eingerichtet, die nach jedem Bestelleingang automatisch an den Kunden versendet wird. Dabei wird der Kunde persönlich mit seinem Vornamen angesprochen.

## Details zur Einrichtung

*   **Auslöser (Trigger):** Bestellung eingegangen (`orderPlaced`)
*   **Aktion:** E-Mail senden (`sendMail`)
*   **Empfänger-Adresse:** `{$customer->cMail}` (dynamisch)
*   **Empfänger-Name:** `{$customer->cVorname} {$customer->cNachname}` (dynamisch)
*   **Status der Automatisierung:** Aktiv (Sofort einsatzbereit)

---

## E-Mail-Inhalt

Hier ist der genaue Text, der für die E-Mail hinterlegt wurde:

### Betreff:
> Vielen Dank für deine Bestellung, {$customer->cVorname}!

### Inhalt:
> Hallo {$customer->cVorname},
> 
> vielen Dank für deine Bestellung! Wir freuen uns sehr darüber und bereiten deine Artikel für den Versand vor.
> 
> Herzliche Grüße
> Dein Shop-Team

What this costs to run

Setting it up
this benchmark run
not reported

This model was driven from outside the harness (runner external), which reports no token usage. Its work is likewise covered by that tool's own subscription.

Running what it built
ongoing, per shop
not measured

Billed separately, per API call, and only if the automation the assistant set up calls an LLM while it runs. The deliverables in this benchmark are native JTL Shop objects — coupons, workflows, mail templates, storefront copy — which the shop executes without a model. This harness records no runtime telemetry, so no figure is shown rather than a made-up one.


Run 20260811-125551_e-thank-you-mail_gemini-flash-3.5 · shop reset to fixture before the run · restore with jtl restore 20260811-125551_e-thank-you-mail_gemini-flash-3.5

© 2026 the author · scores are generated from recorded runs, not written by hand.