104 lines
3.3 KiB
Markdown
104 lines
3.3 KiB
Markdown
# Confectionery Skills Hub
|
|
|
|
A set of skills (*tool definitions*) for recipe management and order processing in a sweet shop / confectionery.
|
|
|
|
---
|
|
|
|
## 1. Skill: `create_recipe`
|
|
|
|
Registers a new dessert recipe in the sweet shop's catalog.
|
|
|
|
### When to use
|
|
* The user wants to register a new recipe, cake, candy, or preparation.
|
|
* The user provides a list of ingredients and yield weight for registration.
|
|
|
|
### Parameter Schema
|
|
|
|
| Field | Type | Required | Description |
|
|
| :--- | :--- | :--- | :--- |
|
|
| `recipe_name` | `string` | Yes | Official name of the recipe (e.g., `"Carrot Cake with Brigadeiro"`). |
|
|
| `type` | `string` (enum) | Yes | Category: `"cake"`, `"candy"`, `"ice_cream"`, `"pie"`, `"other"`. |
|
|
| `yield_kg` | `number` | Yes | Estimated final yield in kg (e.g., `1.8`). |
|
|
| `ingredients` | `string[]` | Yes | List of ingredients with approximate quantities. |
|
|
| `description` | `string` | No | Brief preparation method or sensory notes. |
|
|
|
|
### Sample Input (Tool Call)
|
|
```json
|
|
{
|
|
"recipe_name": "Ninho Volcano Cake",
|
|
"type": "cake",
|
|
"yield_kg": 2.1,
|
|
"ingredients": [
|
|
"4 eggs",
|
|
"2 cups all-purpose flour",
|
|
"1 cup powdered milk",
|
|
"1 can sweetened condensed milk",
|
|
"200ml heavy cream"
|
|
],
|
|
"description": "Fluffy cake with generous creamy filling in the center."
|
|
}
|
|
```
|
|
|
|
## 2. Skill: `search_recipe`
|
|
|
|
Searches the catalog to list recipes by name or category.
|
|
|
|
### When to use
|
|
* The user asks whether a specific dessert is on the menu.
|
|
* The user wants to see ingredients or view items belonging to a specific category (e.g., "what pies do we have?").
|
|
|
|
### Parameter Schema
|
|
|
|
| Field | Type | Required | Description |
|
|
| :--- | :--- | :--- | :--- |
|
|
| `search_term` | `string` | No | Keyword or partial name of the dessert (e.g., `"brigadeiro"`). |
|
|
| `type` | `string` (enum) | No | Category filter: `"cake"`, `"candy"`, `"ice_cream"`, `"pie"`, `"other"`. |
|
|
|
|
### Sample Input (Tool Call)
|
|
```json
|
|
{
|
|
"search_term": "carrot",
|
|
"type": "cake"
|
|
}
|
|
```
|
|
|
|
## 3. Skill: `create_order`
|
|
|
|
Registers a new custom order or counter sale in the sweet shop.
|
|
|
|
### When to use
|
|
* The customer or attendant requests to complete an order.
|
|
* Items to purchase, customer details, and delivery information are provided.
|
|
|
|
### Parameter Schema
|
|
|
|
| Field | Type | Required | Description |
|
|
| :--- | :--- | :--- | :--- |
|
|
| `customer_name` | `string` | Yes | Full name of the customer. |
|
|
| `delivery_address` | `string` | Yes | Shipping address or `"Store Pickup"`. |
|
|
| `items` | `object[]` | Yes | List containing the purchased items. |
|
|
| `items[].item_name` | `string` | Yes | Name of the product. |
|
|
| `items[].quantity` | `integer` | Yes | Quantity of units or portions. |
|
|
| `items[].unit_price` | `number` | Yes | Unit price in local currency (BRL). |
|
|
| `discount` | `number` | No | Flat discount amount applied in local currency (BRL). Default: `0`. |
|
|
|
|
### Sample Input (Tool Call)
|
|
```json
|
|
{
|
|
"customer_name": "Fernanda Lima",
|
|
"delivery_address": "Av. Paulista, 1000 - Apt 42",
|
|
"items": [
|
|
{
|
|
"item_name": "100-Pack of Gourmet Brigadeiros",
|
|
"quantity": 1,
|
|
"unit_price": 120.00
|
|
},
|
|
{
|
|
"item_name": "Whole Dutch Pie",
|
|
"quantity": 1,
|
|
"unit_price": 85.00
|
|
}
|
|
],
|
|
"discount": 15.00
|
|
}
|
|
``` |