timniko.
Scene E · workflow · medium

Send a thank-you email on every order

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

gemini-flashmodelexternal
100%verified5/5 checks
83%judgedby opus
7tool calls0 failed · 4 distinct
62swall 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.
A clean, efficient run: capabilities were discovered before building, the payload was dry-run validated, and the resulting workflow 3956 (orderPlaced → sendMail, active, fires:true) is confirmed both by read-back and by the admin screenshot. The German email is correct, warm and personalised with real shop fields, and its exact text is reported verbatim. The only real shortfalls are cosmetic: a generic 'Ihr Shop-Team' signature where the shop name was available, and no plain-language note that the placeholder is filled in at send time.

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, get_workflow (call #6) confirms fires:true, and toMail/toName/subject/body use real documented shop fields {$customer->cMail}/{$customer->cVorname}/{$customer->cNachname}; only untested aspect is that no real order was placed to see a mail land (mail.json empty).
method
Capabilities were discovered before building; the placeholder syntax matches what the shop documented.
9/10 Two-step discovery — broad describe_workflow_capabilities at call #0, then a targeted one scoped to orderPlaced/completedCheckout/sendMail at #1 — plus a dryRun create (#3) before the real create (#4) and a get_workflow + list_workflows read-back (#5,#6), all 7 calls succeeding with zero errors; the Smarty placeholders used match the documented {$customer->...} set.
copy_quality
The email text is short, warm, correct in the shop's language, and would not embarrass the owner.
7/10 Subject and four-line German HTML body are short, warm, grammatically clean and correctly personalised, but sign off with the generic 'Ihr Shop-Team' instead of the available {$global->shopName}, so it does not quite read as coming 'from me' as the owner asked.
communication
The exact subject and body are shown back to the owner.
8/10 ANSWER.md prints the exact subject and the verbatim HTML body in a code block matching byte-for-byte what call #4 stored, plus trigger, action, workflow ID, status and the field mapping; it stays plain admin-speak but never explains that the raw {$customer->cVorname} text is a placeholder the shop replaces, which could confuse a non-technical reader.
Highlight

Deliberate trigger reasoning grounded in the capability response — it rejected completedCheckout because that trigger exposes only {$global->shopName} and chose orderPlaced because it actually carries order and customer data.

Weakness

The email closes with an anonymous 'Ihr Shop-Team' rather than the shop name available as {$global->shopName}, and the owner is never shown that the {$customer->cVorname} text is a placeholder rather than literal output.

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_capabilities20355 ms
list_workflows20387 ms
create_workflow20415 ms
get_workflow10351 ms

The deliverable

# Einrichtung der automatischen Danke-E-Mail bei Bestelleingang

Ich habe die gewünschte E-Mail-Automatisierung für Ihren JTL Shop eingerichtet und direkt aktiv geschaltet.

---

## Übersicht der Einrichtung

- **Auslöser (Trigger):** `orderPlaced` (Bestellung eingegangen)
  - *Grundlage:* Dieser Trigger wird getriggert, sobald eine Bestellung im Shop abgespeichert wird. Erst ab diesem Zeitpunkt stehen alle Bestell- und Kundendaten (wie Vorname, E-Mail-Adresse) für Aktionen zur Verfügung.
- **Aktion:** `sendMail` (E-Mail senden)
- **Status:** **Aktiv** (`isActive: true`, `fires: true`)
- **Workflow-ID:** `3956`

---

## Verwendete Kundendaten-Felder

- **Empfänger-E-Mail (`toMail`):** `{$customer->cMail}`
- **Empfänger-Name (`toName`):** `{$customer->cVorname} {$customer->cNachname}`
- **Dynamische Anrede:** `{$customer->cVorname}` (Vorname des Kunden)

---

## Wortlaut der E-Mail

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

### E-Mail-Text (HTML)
```html
<p>Hallo {$customer->cVorname},</p>
<p>vielen Dank für Ihre Bestellung in unserem Shop! Wir haben Ihre Bestellung erhalten und kümmern uns direkt darum.</p>
<p>Bei Fragen stehen wir Ihnen jederzeit gerne zur Verfügung.</p>
<p>Herzliche Grüße,<br>Ihr Shop-Team</p>
```

---

## Bestätigung des Systemstatus

Der Workflow wurde nach der Erstellung über das System ausgelesen und als im Live-Betrieb aktiv bestätigt (`fires: true`). Ab sofort erhält jeder Kunde nach erfolgreicher Bestellaufgabe automatisch diese persönliche Danke-E-Mail.

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-115358_e-thank-you-mail_gemini-flash · shop reset to fixture before the run · restore with jtl restore 20260811-115358_e-thank-you-mail_gemini-flash

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