> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Manage Recipes

> Step-by-step guide to updating, editing, and deleting recipes

Update recipe versions, validate changes, and retire old templates safely.

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
from praisonaiagents import Agent

agent = Agent(name="Recipe Maintainer", instructions="Guide safe recipe updates and rollbacks.")
agent.start("How do I version my recipe changes?")
```

The user edits `agents.yaml`, validates the folder, and re-runs the recipe with updated variables.

```mermaid theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
graph LR
    subgraph "Manage Recipes"
        U[📋 Edit] --> A[⚙️ Validate]
        A --> O[✅ Re-run]
    end

    classDef input fill:#6366F1,stroke:#7C90A0,color:#fff
    classDef process fill:#189AB4,stroke:#7C90A0,color:#fff
    classDef output fill:#10B981,stroke:#7C90A0,color:#fff

    class U input
    class A process
    class O output
```

## How It Works

```mermaid theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
sequenceDiagram
    participant User
    participant CLI
    participant Recipe

    User->>CLI: Edit agents.yaml
    CLI->>Recipe: validate ./my-recipe
    Recipe-->>CLI: Pass / errors
    CLI-->>User: Safe to re-run or fix
```

***

## How to Update a Recipe

<Steps>
  <Step title="Check Current Version">
    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    praisonai recipe info my-recipe
    ```
  </Step>

  <Step title="Edit agents.yaml">
    Update the configuration and make changes:

    ```yaml theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    # agents.yaml
    framework: praisonai
    topic: "{{task}}"

    roles:
      agent:
        role: Updated Agent
        goal: Updated goal
        # ... modifications
    ```
  </Step>

  <Step title="Validate Changes">
    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    praisonai recipe validate ./my-recipe
    ```
  </Step>

  <Step title="Test Updated Recipe">
    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    praisonai recipe run ./my-recipe --var task="Test task"
    ```
  </Step>
</Steps>

## How to Edit Recipe Variables

<Steps>
  <Step title="View Current Variables">
    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    praisonai recipe info my-recipe
    ```
  </Step>

  <Step title="Use Variables in agents.yaml">
    ```yaml theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    framework: praisonai
    topic: "{{task}}"

    roles:
      agent:
        role: "{{role_name}}"
        goal: Complete the task
        tasks:
          main_task:
            description: |
              Task: {{task}}
              Format: {{output_format}}
    ```
  </Step>

  <Step title="Run with Variables">
    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    praisonai recipe run my-recipe --var task="Research AI" --var output_format="markdown"
    ```
  </Step>
</Steps>

## How to Delete a Recipe

<Steps>
  <Step title="List Installed Recipes">
    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    praisonai recipe list
    ```
  </Step>

  <Step title="Remove Recipe">
    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    praisonai recipe remove my-recipe
    ```
  </Step>

  <Step title="Verify Removal">
    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    praisonai recipe list
    ```
  </Step>
</Steps>

## Recipe Management Commands

| Command                            | Description         |
| ---------------------------------- | ------------------- |
| `praisonai recipe list`            | List all recipes    |
| `praisonai recipe info <name>`     | Show recipe details |
| `praisonai recipe validate <path>` | Validate recipe     |
| `praisonai recipe remove <name>`   | Remove recipe       |

## Best Practices

<AccordionGroup>
  <Accordion title="Validate after every edit">
    Run `praisonai recipe validate` before re-running so a bad change is caught while it is easy to fix.
  </Accordion>

  <Accordion title="Track recipes in version control">
    Commit `agents.yaml` and `tools.py` so changes are reviewable and a broken update can be rolled back cleanly.
  </Accordion>

  <Accordion title="Confirm removal with list">
    After `praisonai recipe remove`, run `praisonai recipe list` to verify the recipe is gone and no callers still reference it.
  </Accordion>
</AccordionGroup>

***

## Related

<CardGroup cols={2}>
  <Card title="Debug Recipes" icon="bug" href="/docs/guides/templates/debug-templates">
    Troubleshoot a failing update
  </Card>

  <Card title="Create Custom Recipes" icon="plus" href="/docs/guides/templates/create-custom-templates">
    Author a new recipe
  </Card>
</CardGroup>
