mirror of
https://github.com/block/goose.git
synced 2026-07-17 12:56:20 +02:00
44 lines
3.1 KiB
Markdown
44 lines
3.1 KiB
Markdown
# Recipe
|
|
|
|
A Recipe represents a personalized, user-generated agent configuration that defines specific behaviors and capabilities within the goose system. # Fields ## Required Fields * `version` - Semantic version of the Recipe file format (defaults to \"1.0.0\") * `title` - Short, descriptive name of the Recipe * `description` - Detailed description explaining the Recipe's purpose and functionality * `Instructions` - Instructions that defines the Recipe's behavior ## Optional Fields * `prompt` - the initial prompt to the session to start with * `extensions` - List of extension configurations required by the Recipe * `context` - Supplementary context information for the Recipe * `activities` - Activity labels that appear when loading the Recipe * `author` - Information about the Recipe's creator and metadata * `parameters` - Additional parameters for the Recipe * `response` - Response configuration including JSON schema validation * `retry` - Retry configuration for automated validation and recovery # Example use goose::recipe::Recipe; // Using the builder pattern let recipe = Recipe::builder() .title(\"Example Agent\") .description(\"An example Recipe configuration\") .instructions(\"Act as a helpful assistant\") .build() .expect(\"Missing required fields\"); // Or using struct initialization let recipe = Recipe { version: \"1.0.0\".to_string(), title: \"Example Agent\".to_string(), description: \"An example Recipe configuration\".to_string(), instructions: Some(\"Act as a helpful assistant\".to_string()), prompt: None, extensions: None, context: None, activities: None, author: None, settings: None, parameters: None, response: None, sub_recipes: None, retry: None, };
|
|
|
|
## Properties
|
|
|
|
Name | Type | Description | Notes
|
|
------------ | ------------- | ------------- | -------------
|
|
**activities** | **List[str]** | | [optional]
|
|
**author** | [**Author**](Author.md) | | [optional]
|
|
**context** | **List[str]** | | [optional]
|
|
**description** | **str** | |
|
|
**extensions** | [**List[ExtensionConfig]**](ExtensionConfig.md) | | [optional]
|
|
**instructions** | **str** | | [optional]
|
|
**parameters** | [**List[RecipeParameter]**](RecipeParameter.md) | | [optional]
|
|
**prompt** | **str** | | [optional]
|
|
**response** | [**Response**](Response.md) | | [optional]
|
|
**retry** | [**RetryConfig**](RetryConfig.md) | | [optional]
|
|
**settings** | [**Settings**](Settings.md) | | [optional]
|
|
**sub_recipes** | [**List[SubRecipe]**](SubRecipe.md) | | [optional]
|
|
**title** | **str** | |
|
|
**version** | **str** | | [optional]
|
|
|
|
## Example
|
|
|
|
```python
|
|
from goose_api.models.recipe import Recipe
|
|
|
|
# TODO update the JSON string below
|
|
json = "{}"
|
|
# create an instance of Recipe from a JSON string
|
|
recipe_instance = Recipe.from_json(json)
|
|
# print the JSON string representation of the object
|
|
print(Recipe.to_json())
|
|
|
|
# convert the object into a dict
|
|
recipe_dict = recipe_instance.to_dict()
|
|
# create an instance of Recipe from a dict
|
|
recipe_from_dict = Recipe.from_dict(recipe_dict)
|
|
```
|
|
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
|
|
|
|