Antworten auf Erstattungsanfragen mit KI entwerfen, nie versenden
Ein Agent prüft eine Erstattungsanfrage anhand Ihrer Richtlinie und entwirft eine Antwort, die ein Mensch freigibt. Die Erstattung selbst kann er nicht auslösen.
- Dateien
- Schreibgeschützte Verbindung
- Callback
- Budgetlimit
Eine echte Ausführung ansehen
Eine echte Ausführung vom 7. Okt. 2026, erneut abgespielt. Modell: openai/gpt-6-luna.
{
"ticket_id": "tkt_1001",
"today": "2026-10-06"
}- In WarteschlangeBudget $0.03 reserviert
- MicroVMmicroVM ready
- MicroVMworker started · shell off · web off
- Datei
read refund-policy.md - Verbindunghelpdesk GET /tickets/tkt_1001
- Ergebnis
helpdesk GET → 200 - MicroVMmicroVM destroyed
- Erfolgreich3 Modellaufrufe, 4,442 TokensAufgezeichnete Ausgabe (Englisch)
Decision: Eligible
Reason: Policy clause 1 allows a full refund within 14 days for an annual plan if no project was created and no API call was made. The ticket shows purchase on 2026-09-28, zero projects, and zero API calls; the request is dated 2026-10-06, within 14 days.
Draft reply: Hi Maria, your annual plan meets the refund criteria. The billing team will process the refund to your original payment method. Best, Support
- Worker zerstört$0.002782 berechnet, $0.027218 freigegeben
Selbst ausführen
Öffnen Sie das Beispiel im Playground, mit der vollständig ausgefüllten Anfrage. Es läuft in Ihrem eigenen Konto, innerhalb des angezeigten Budgets, gegen dieselben schreibgeschützten Beispielsysteme.
Budget für dieses Beispiel: $0.03
So funktioniert es
Die Richtlinie ist eine Datei, und das Ticket kommt aus einer schreibgeschützten Helpdesk-Verbindung. Der Agent entscheidet, ob die Anfrage berechtigt ist, zitiert die Klausel, auf die er sich stützt, und schreibt einen Entwurf. Ein Mensch gibt ihn frei, und das Abrechnungssystem erledigt den Rest.
Was der Agent tun kann und was nicht
Die Berechtigungen sind Teil der Anfrage. Alles, was hier nicht aufgeführt ist, steht der Ausführung nicht zur Verfügung.
| Einstellung | Erlaubt |
|---|---|
| Verbindungen | helpdesk: nur GET, unter ephemer.al/api/samples/support-api |
| Web | Aus |
| Shell | Aus |
| Dateien | refund-policy.md (schreibgeschützt) |
| Null-Datenspeicherung | Aus: Das Protokoll wird 30 Tage lang gespeichert |
| Budget | $0.03, ein festes Limit |
| Timeout | 60 Sekunden |
Zugangsdaten gelangen nie in die Maschine: Ein Broker ergänzt sie bei jedem Aufruf und erzwingt die oben genannten Methoden.
Der Code
Das ist die genaue Anfrage, die das Beispiel sendet. Setzen Sie EPHEMERAL_API_KEY auf einen Mitgliedsschlüssel Ihrer Organisation.
curl -X POST $EPHEMERAL_URL/v1/runs \
-H "Authorization: Bearer $EPHEMERAL_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d @request.jsonDateien in der Anfrage
Inline übergeben, es wird also nichts vorher hochgeladen. Der Agent sieht jede einzelne als schreibgeschützte Datei.
refund-policy.md
# Refund policy
1. Annual plans may be refunded in full within 14 days of purchase if no project has been created and no API call has been made.
2. After 14 days, or after any use, annual plans are refunded pro rata for the unused full months only, at our discretion.
3. Monthly plans are not refunded for the current month; cancelling stops the next charge.
4. A refund is issued by the billing team only, to the original payment method. Never promise a date.
5. Always be polite, concise and plain. Do not offer discounts.
Vollständiger Anfragetext request.json
Derselbe Text, mit den Dateien inline.
{
"prompt": "Handle the refund request in the helpdesk ticket input.ticket_id (GET /tickets/{id}); today's date is input.today. Apply refund-policy.md. Reply in Markdown with: Decision (eligible, not eligible or needs a human, one line), Reason (cite the policy clause number and the ticket facts you used), and Draft reply (under 90 words, in the customer's language). The draft is for a human to review: never say a refund has been issued, only that the billing team will process it if the decision is eligible. Use only what the data returns and never guess; if a call fails or a field is missing, say so.",
"input": {
"ticket_id": "tkt_1001",
"today": "2026-10-06"
},
"files": [
{
"path": "refund-policy.md",
"content": "# Refund policy\n\n1. Annual plans may be refunded in full within 14 days of purchase if no project has been created and no API call has been made.\n2. After 14 days, or after any use, annual plans are refunded pro rata for the unused full months only, at our discretion.\n3. Monthly plans are not refunded for the current month; cancelling stops the next charge.\n4. A refund is issued by the billing team only, to the original payment method. Never promise a date.\n5. Always be polite, concise and plain. Do not offer discounts.\n"
}
],
"connections": {
"helpdesk": {
"type": "http",
"url": "https://ephemer.al/api/samples/support-api",
"auth": {
"type": "bearer",
"token": "sample_read_key"
},
"allowed_methods": [
"GET"
],
"instructions": "A helpdesk. GET /tickets lists tickets (id, subject, status, language). GET /tickets/{id} returns one ticket with customer, context (order or invoice facts) and the full message thread. Amounts are in cents."
}
},
"shell": false,
"timeout_seconds": 60,
"max_cost_micros": 30000
}