prompt.md – Capability Prompts
Jede Capability kann neben manifest.yaml eine Datei prompt.md enthalten. Wenn der Orchestrator den System Prompt für ein Gespräch zusammenstellt, hängt er prompt.md jeder aktiven Capability hinter das agent.md des Agenten. So kannst du detaillierte, toolspezifische Hinweise geben, ohne den Hauptprompt des Agenten zu überladen.
Wann du prompt.md verwenden solltest
Abschnitt betitelt „Wann du prompt.md verwenden solltest“Nutze prompt.md, wenn:
- das Tool eine API mit Feinheiten hat, bei der das LLM zusätzliche Hinweise braucht, etwa zu Parameterformaten
- du Beispiele für korrekte Tool-Nutzung geben möchtest
- es Sonderfälle oder Fehlerbehandlung gibt, denen das LLM folgen soll
Lass prompt.md weg, wenn das Tool so einfach ist, dass die description-Felder in manifest.yaml bereits ausreichen.
Beispiel
Abschnitt betitelt „Beispiel“Für eine Wetter-Capability könnte prompt.md so aussehen:
## Using the weather_lookup tool
Call `weather_lookup` when the user asks about current weather or a forecast.
### Parameter guidance- `location`: Prefer city names ("Berlin", "New York"). If the user gives a country without a city, ask them to be more specific.- `units`: Default to `metric`. Only switch to `imperial` if the user explicitly asks for Fahrenheit or miles.
### Response formatting- Report temperature, conditions, and humidity.- For forecasts, summarise the next 3 days in a short list.- If the API returns an error, tell the user the lookup failed and suggest they try again with a different location.
### Examples- User: "What's the weather in Tokyo?" → call `weather_lookup(location="Tokyo", units="metric")`- User: "How hot is it in Phoenix in Fahrenheit?" → call `weather_lookup(location="Phoenix", units="imperial")`So wird der Prompt zusammengesetzt
Abschnitt betitelt „So wird der Prompt zusammengesetzt“Der finale System Prompt, der an das LLM gesendet wird, entsteht in dieser Reihenfolge:
agent.md, also der Kernprompt des Agenten- Capability-
prompt.md-Dateien, jeweils eine pro aktiver Capability und in der Reihenfolge ausagent.yaml - Laufzeitkontext, also Template-Variablen wie
{{user_name}}und{{date}}
Best Practices
Abschnitt betitelt „Best Practices“- Nutze Überschriften: Das LLM verarbeitet strukturiertes Markdown zuverlässiger als Fließtext.
- Füge Beispiele hinzu: Zeig konkrete Tool-Call-Beispiele. Das verbessert die Genauigkeit bei Parameterformaten deutlich.
- Beschreibe Fehlerbehandlung: Sag dem LLM, was es tun soll, wenn das Tool einen Fehler zurückgibt.
- Wiederhole nicht das Manifest: Die
description-Felder ausmanifest.yamlwerden ohnehin an das Modell übergeben. Nutzeprompt.mdfür Hinweise, die über diese Basisinformationen hinausgehen.
Nächste Schritte
Abschnitt betitelt „Nächste Schritte“Sieh dir das gRPC Interface an, um die Transportschicht zu verstehen, oder geh direkt zum Beispiel: Wetter-Agent für ein vollständiges Arbeitsbeispiel mit prompt.md.