# Sechs Prompts, mit denen ein Content-Agent sicher auf Kundenkonten arbeitet

_2026-09-22 · Prompts zum Kopieren für einen KI-Content-Agenten mit Shager: feste Regeln, Wochenentwürfe, Textvarianten, Planung, Prüfung und Fehleranalyse._

Die Prompts, auf die es bei einem Content-Agenten ankommt, sind keine cleveren Einzeiler. Es ist ein fester Anweisungsblock, der die harten Regeln einmal festlegt, plus eine Handvoll Aufgaben-Prompts, die jeweils genau eine Sache erledigen: die Woche entwerfen, Texte variieren, planen, alles vor der Veröffentlichung prüfen und Fehler einordnen. Hier sind sechs davon – vollständig und bereit zum Einfügen, geschrieben für einen Agenten, der per MCP mit Shager verbunden ist.

Sie sind für Claude Code und Claude Desktop geschrieben und sollten mit kleinen Anpassungen auch in Codex oder Cursor funktionieren, denn die Tool-Namen kommen vom MCP-Server, nicht vom Client.

## Wie diese Prompts aufgebaut sind

Zwei Techniken tragen den Großteil der Last. Anthropics [Best Practices fürs Prompting](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-prompting-best-practices) empfehlen, Anweisungen, Kontext und Eingaben mit XML-Tags zu trennen, damit das Modell ein Kundenbriefing nicht mit einer Anweisung verwechselt, und Format und Tonalität mit konkreten Beispielen festzunageln. Beides findest du unten.

Das zweite Prinzip ist meins: Jeder Prompt nennt genau die Shager-Tools, die er aufrufen darf. Ein Agent, dem man sagt „veröffentliche das“, findet einen Weg. Ein Agent, dem man sagt „ruf `create_post` ohne `schedule_at` auf, dann hör auf“, tut genau das.

Ersetze vor dem Einsatz alles in spitzen Klammern.

## Prompt 1: feste Anweisungen

Dieser Block gehört in den dauerhaften Kontext des Agenten: eine [`CLAUDE.md`-Datei](https://code.claude.com/docs/en/memory) für Claude Code, die Projektanweisungen in Claude Desktop, eine [`AGENTS.md`-Datei](https://developers.openai.com/codex/guides/agents-md) für Codex. Laut Anthropics Gedächtnis-Dokumentation werden kürzere, konkrete Anweisungen zuverlässiger befolgt – behalte also nur die Regeln, die du wirklich brauchst. Jede Regel hier verhindert einen Fehler, den Agenten machen, wenn ihnen niemand etwas anderes sagt. Der Block wird einmal pro Sitzung gelesen und erspart dir, die Regeln in jeder Aufgabe zu wiederholen.

```text
You are the content distribution agent for <AGENCY NAME>. You work through the
Shager MCP server. Shager publishes to Facebook Pages, Instagram professional
accounts and YouTube channels through official APIs.

<hard_rules>
1. Never publish or schedule unless the task explicitly says "schedule". Default
   to drafts: call create_post WITHOUT schedule_at.
2. Before any write, call whoami and list_workspaces, and state which workspace
   you are about to act on by name. If the task does not name a client, ask.
3. Every post to more than one account uses per_channel with a different caption
   for each account. Never send identical captions to multiple accounts.
4. Times are ISO 8601 with an explicit offset, computed from the workspace
   timezone for that specific date. Never guess an offset.
5. Never shorten stagger_seconds below the default [30, 90].
6. Do not invent facts about the client: prices, opening hours, offers, dates.
   If the brief does not contain it, leave it out or ask.
7. If any tool returns an error, stop and report the error code and message.
   Do not retry more than once.
</hard_rules>

<house_style>
1. Short sentences. No hashtags unless the brief asks for them.
2. Facebook first comments may carry the link. On Instagram and YouTube Shorts,
   links in comments and captions are not clickable; do not rely on them there.
3. Write in the language of the account, not the language of the brief.
</house_style>

<reporting>
End every task with a table: account name, network, what you did, post_id,
status. Then one line: what a human needs to do next, if anything.
</reporting>
```

## Prompt 2: die Woche aus einem Briefing entwerfen

Das ist das Arbeitspferd. Das Briefing steht in einem eigenen Tag, damit das Modell es als Material behandelt und nicht als Befehl.

```text
Draft next week's posts for the client workspace "<CLIENT WORKSPACE NAME>".

<brief>
<PASTE THE CLIENT BRIEF, OFFERS, DATES AND ASSETS HERE>
</brief>

<steps>
1. Call list_channels and list_groups for this workspace. Summarise the accounts
   by network and group before drafting.
2. For each media URL in the brief, call upload_media_from_url. For video, pass
   width, height and duration_ms; if you do not know them, ask me.
3. Plan <NUMBER> posts for the week. Show me the plan as a table (day, topic,
   format, target group) and wait for "go".
4. After "go", call create_post once per planned post, as a draft, with:
   caption, group_ids, media_ids, per_channel (one caption per account),
   cta_url and campaign "<CAMPAIGN SLUG>", label "<CLIENT> week <NN> post <n>".
5. Do not call schedule_post or request_approval.
</steps>

Report using the reporting table from your standing instructions.
```

Die Zeile „wait for go“ in Schritt 3 kostet eine Nachricht und fängt die meisten schlechten Pläne ab, bevor daraus vierzig Entwürfe werden.

## Prompt 3: Textvarianten pro Konto

Nutze diesen Prompt, wenn aus einem freigegebenen Mastertext viele werden sollen. Er enthält Beispiele, denn Beispiele steuern die Tonalität besser als Adjektive.

```text
Rewrite the master caption below for each account in the post <POST_ID> in
workspace "<CLIENT WORKSPACE NAME>". Call get_post to read the accounts.

<master_caption>
<PASTE MASTER CAPTION>
</master_caption>

<rules>
1. Keep every fact, offer and date exactly as in the master. Change wording,
   order and the opening line.
2. Anchor each version in something true about that account: its city, branch
   or audience, taken from the account name. Do not invent local details.
3. Same length as the master, within 20 percent.
4. No two versions may share the same first sentence.
</rules>

<examples>
<example>
Master: "Our winter menu starts Sunday."
Account "Cafe Lune Haifa": "Haifa, the soup is back. Winter menu from Sunday."
Account "Cafe Lune Eilat": "Yes, even in Eilat. The winter menu lands Sunday."
</example>
</examples>

Then call create_post as a new draft that copies the original's media_ids,
cta_url and campaign, with your captions in per_channel. Do not edit or cancel
the original. Report the new post_id.
```

Die Methode hinter diesem Prompt beschreibt [Textvarianten pro Konto mit KI](/en/blog/caption-variation-per-account-with-ai) ausführlicher.

## Prompt 4: freigegebene Entwürfe planen

Das ist der einzige Prompt, der die Uhr anfasst. Er funktioniert nur, wenn der Schlüssel den Scope `publish` hat, und den vergibt ein Mensch. Das ist Absicht.

```text
Schedule the approved drafts in workspace "<CLIENT WORKSPACE NAME>".

<steps>
1. Call list_posts with status APPROVED. Show me the list.
2. Read the workspace timezone. For each post, compute schedule_at for the
   local date and time I give below, with the correct UTC offset for that date.
3. For any post targeting more than 50 accounts on one network, warn me how
   long the staggered run will take at the default stagger before scheduling.
4. Call schedule_post for each. If one fails, stop and show the error.
</steps>

<times>
<POST LABEL OR ID> : <YYYY-MM-DD HH:MM local>
</times>
```

Die Überlegungen hinter den Zeitregeln findest du in [Planungsstrategie für Agenten](/en/blog/scheduling-strategy-for-agents).

## Prompt 5: Prüfung vor dem Start

Lass diesen Prompt als eigenen Durchgang laufen, am besten in einer frischen Sitzung – damit der Prüfer nicht gerade selbst die Entwürfe geschrieben hat, die er kontrolliert.

```text
You are reviewing drafts, not writing them. Do not create, edit, schedule or
cancel anything. Only call list_posts and get_post.

In workspace "<CLIENT WORKSPACE NAME>", review every post with status DRAFT or
APPROVED. For each, check:
1. Are any two per_channel captions identical, or identical apart from the
   account name?
2. Does any caption contain a fact not present in this brief?
   <brief><PASTE BRIEF></brief>
3. Is there a first_comment with a link on an Instagram or YouTube Short
   channel, where it will not be clickable?
4. Is a REEL or SHORT format set on media that is not vertical video?

Output one table: post label, account, issue, suggested fix. If there are no
issues, say so in one line.
```

Ein Prüfer, der nichts schreiben kann, ist die günstigste Sicherheitsebene, die du je einziehen wirst. Er passt gut zur menschlichen Kontrolle, die [Menschliche Freigabe für Agenten-Beiträge](/en/blog/human-approval-for-agent-posts) beschreibt.

## Prompt 6: Fehleranalyse

Bei einem großen Durchlauf schlagen einige Konten fehl. Die Frage ist, wie schnell du davon erfährst und ob der Agent es schlimmer macht.

```text
Check the result of post <POST_ID> in workspace "<CLIENT WORKSPACE NAME>".

1. Call get_post. List every account whose state is not published, with the
   error message exactly as returned.
2. Group the failures by likely cause: expired or revoked connection, missing
   permission, media rejected, other.
3. For connection problems, do not retry. Tell me which account owner needs a
   new connect link. If I confirm, call create_connect_link with a label naming
   that account.
4. Do not create a replacement post unless I ask.
```

## Ein Wort zu Schlüsseln und Kontext

Keiner dieser Prompts enthält einen API-Schlüssel, und das soll auch so bleiben. Der Schlüssel gehört in die Konfiguration des MCP-Clients oder in eine Umgebungsvariable. Wer ihn in einen Prompt kopiert, findet ihn später in Protokollen, Logs und manchmal im geteilten Chatverlauf wieder.

## FAQ

### Funktionieren diese Prompts auch mit anderen Modellen als Claude?

Die Struktur schon. XML-Tags und ausdrückliche Tool-Namen helfen jedem leistungsfähigen Modell. Eventuell musst du anpassen, wie die festen Anweisungen geladen werden, denn jeder Client hat seine eigene Datei oder Einstellung für dauerhaften Kontext.

### Warum lässt man den Agenten nicht direkt aus dem Wochen-Prompt heraus planen?

Weil die teuersten Fehler im Moment der Veröffentlichung passieren. Ein eigener Prompt mit einem separat vergebenen Scope macht diesen Moment zu einer bewussten Entscheidung. Einen Entwurf rückgängig zu machen kostet nichts. Einen Beitrag auf sechzig Seiten nicht.

### Wie lang sollten feste Anweisungen sein?

So lang, wie deine harten Regeln es verlangen, und keinen Satz länger. Wird eine Regel in der Praxis nie verletzt, kann sie vermutlich weg. Passiert ein Fehler zweimal, wird er zur Regel.

## Wie es weitergeht

Falls dein Agent noch nicht verbunden ist: Die [Einstiegsseite für Agenten](/en/agents) zeigt die MCP-Adresse und den Aufruf zur Selbstregistrierung. Fang mit den Prompts 1 und 2 bei einem einzigen Kunden an und nimm die anderen dazu, wenn das Volumen wächst.

---
Source: https://shager.ai/de/blog/prompts-for-a-content-agent
