recipe_save
Skills und Rezepte · macOS · Windows
Wirkung: Schreiben. Status: bedingt verfügbar.
„Bedingte Verfügbarkeit“ bedeutet, dass das Werkzeug von Version, Plattform, Berechtigungen, Konto oder Konfiguration abhängen kann. Es ist nicht in jeder Installation aktiv.
macOS
Zweck
Speichert einen wiederverwendbaren SKILL – ein benanntes Rezept (eine geordnete Folge von LMCP-Tool-Aufrufen mit Parametern) – auf diesem Mac, damit der Benutzer ihn jederzeit mit recipe_run erneut ausführen kann. Ein Benutzer würde einen speichern, um einen mehrstufigen LMCP-Ablauf, den er wiederholt (ein Morgenbriefing, Posteingangs-Triage, ein Wochenbericht, ein Datenabruf), in einen einzigen wiederverwendbaren Befehl zu verwandeln. Gespeicherte Skills können über recipe_export mit anderen Personen geteilt werden. Das Manifest muss einen name und ein nicht leeres steps-Array haben. Ein Schritt kann sich nicht selbst bestätigen: `confirm` in den Argumenten eines Schritts wird beim Speichern entfernt (confirm_removed_steps sagt, bei wie vielen Schritten eines vorhanden war) und bei der Ausführung ignoriert, sodass ein Schritt, dessen Tool eine Bestätigung verlangt, mit seiner Vorschau antwortet, statt ausgeführt zu werden. Ein Name, der bereits ein Rezept ist, wird mit recipe_exists abgelehnt und nichts wird geschrieben; übergeben Sie overwrite: true, um es zu ersetzen. Gibt {name} zurück.
Erforderliche Eingaben
manifest
Die Namen bleiben exakt so erhalten, wie das Werkzeug sie verlangt. Die kanonischen technischen Definitionen auf Englisch stehen im ausklappbaren Schema unten.
Berechtigungen und Bestätigung
Das Schema deklariert keinen ausdrücklichen Bestätigungsparameter. Das erlaubt keine Handlung ohne Zustimmung; prüfen Sie die Wirkung und holen Sie eine Autorisierung ein.
- Verwenden Sie auf dieser Plattform nur die vom Benutzer autorisierten Apps, Konten und Ressourcen. Informationen zu den Verbindungs- und Berechtigungsanforderungen finden Sie in der plattformspezifischen Beschreibung dieses Tools. Dieser Katalog beansprucht keine zusätzlichen OAuth-Bereiche oder Betriebssystemberechtigungen.
Kanonisches technisches Schema auf Englisch — macOS
{
"properties": {
"manifest": {
"description": "The recipe manifest. Shape: {\"name\": string (required), \"description\": string, \"params\": [{\"name\": string, \"type\": \"string\"|\"int\"|\"bool\", \"default\": any}], \"steps\": [ ... ] (required, non-empty), \"outputs\": [{\"kind\": string}]}. A step is EITHER a tool call {\"tool\": <tool_name>, \"args\": {...}} OR a pause {\"wait\": {\"seconds\": N}} (also {\"wait\": N}). A tool-call step may add \"optional\": true (a boolean; default false): if it fails, recipe_run records {ok:false, error} for it, lists it in skipped_optional and carries on with the next step, instead of stopping — use it for a source the user may not have (an app, a permission). Any arg string may interpolate a declared param with ${name} (e.g. \"limit\": \"${count}\"); an arg that is exactly \"${name}\" keeps the param's type. Steps run in order; a later step can consume an EARLIER step's output with \"${steps[N].result.KEY}\" (0-based; supports .key and [i], e.g. \"account\": \"${steps[0].result.accounts[0].name}\"). A step cannot confirm itself: do not put `confirm` in a step's args (it is removed when saving and ignored when running). recipe_run asks for one confirmation when the recipe has state-changing steps; a step whose tool asks for its own confirmation then answers with its preview and is not executed. A step that names a note should give note_name (the note's title): a note_id only names the note on the Mac that issued it, so a step that gives both is saved with note_name alone.",
"type": "object"
},
"overwrite": {
"description": "Must be true to replace a recipe that already has this name. Without it, a taken name is refused with recipe_exists and the existing recipe is left as it was.",
"type": "boolean"
}
},
"required": [
"manifest"
],
"type": "object"
}Dokumentationsbeispiel
Dokumentationsbeispiel für recipe_save. Führen Sie dieses Beispiel nicht aus. Die gezeigten Argumente gehören zu einem fiktiven Datensatz; ermitteln Sie reale Kennungen und holen Sie vor einem echten Aufruf die Genehmigung ein.
{
"manifest": {
"description": "Read the local date and time.",
"name": "Demo morning brief",
"steps": [
{
"args": {},
"tool": "get_datetime"
}
]
}
}Windows
Zweck
Speichert einen wiederverwendbaren SKILL – ein benanntes Rezept (eine geordnete Folge von LMCP-Tool-Aufrufen mit Parametern) – auf diesem Rechner, damit der Benutzer ihn jederzeit mit recipe_run erneut ausführen kann. Ein Benutzer würde einen speichern, um einen mehrstufigen LMCP-Ablauf, den er wiederholt (ein Morgenbriefing, Posteingangs-Triage, ein Wochenbericht, ein Datenabruf), in einen einzigen wiederverwendbaren Befehl zu verwandeln. Das Manifest muss einen name und ein nicht leeres steps-Array haben. Ein Schritt kann "optional": true hinzufügen (ein Boolean; Standard false): Schlägt er fehl, hält recipe_run {ok:false, error} dafür fest, listet ihn in skipped_optional auf und macht mit dem nächsten Schritt weiter, statt zu stoppen – verwenden Sie es für eine Quelle, die der Benutzer womöglich nicht hat (eine App, eine Berechtigung). Ein Argument-String kann einen deklarierten Parameter mit ${name} einsetzen; ein Argument, das genau "${name}" ist, behält den Typ des Parameters. Ein späterer Schritt kann die Ausgabe eines früheren mit "${steps[N].result.KEY}" verwenden (0-basiert; unterstützt .key und [i]). Ein Schritt kann sich nicht selbst bestätigen: confirm in den Argumenten eines Schritts wird entfernt, sodass ein Schritt, dessen Tool eine Bestätigung verlangt (senden, löschen, eine Datei ersetzen, einen Befehl ausführen), seine Vorschau zurückgibt. Ein Name, der bereits ein Rezept ist, wird mit recipe_exists abgelehnt und nichts wird geschrieben; übergeben Sie overwrite: true, um es zu ersetzen. Gibt {name, step_count} zurück.
Erforderliche Eingaben
manifest
Die Namen bleiben exakt so erhalten, wie das Werkzeug sie verlangt. Die kanonischen technischen Definitionen auf Englisch stehen im ausklappbaren Schema unten.
Berechtigungen und Bestätigung
Das Schema deklariert keinen ausdrücklichen Bestätigungsparameter. Das erlaubt keine Handlung ohne Zustimmung; prüfen Sie die Wirkung und holen Sie eine Autorisierung ein.
- Verwenden Sie auf dieser Plattform nur die vom Benutzer autorisierten Apps, Konten und Ressourcen. Informationen zu den Verbindungs- und Berechtigungsanforderungen finden Sie in der plattformspezifischen Beschreibung dieses Tools. Dieser Katalog beansprucht keine zusätzlichen OAuth-Bereiche oder Betriebssystemberechtigungen.
Kanonisches technisches Schema auf Englisch — Windows
{
"properties": {
"manifest": {
"description": "The recipe manifest. Shape: {\"name\": string (required), \"description\": string, \"schema_version\": int, \"params\": [{\"name\": string, \"type\": string, \"default\": any}], \"steps\": [{\"tool\": string, \"args\": object, \"optional\": bool}] (required, non-empty)}.",
"type": "object"
},
"overwrite": {
"description": "Must be true to replace a recipe that already has this name. Without it, a taken name is refused with recipe_exists and the existing recipe is left as it was.",
"type": "boolean"
}
},
"required": [
"manifest"
],
"type": "object"
}Dokumentationsbeispiel
Dokumentationsbeispiel für recipe_save. Führen Sie dieses Beispiel nicht aus. Die gezeigten Argumente gehören zu einem fiktiven Datensatz; ermitteln Sie reale Kennungen und holen Sie vor einem echten Aufruf die Genehmigung ein.
{
"manifest": {
"description": "Read the local date and time.",
"name": "Demo morning brief",
"steps": [
{
"args": {},
"tool": "get_datetime"
}
]
}
}