Persistent State Pattern (with Data Enrichment)

The genie stores and retrieves domain-specific data beyond conversational history, enabling reporting over time, stateful workflows, and consistent scoring across sessions.

Design Patterns Architecture

Why This Pattern

The reasoning trigger is a single question: does this data need to outlive the conversation and be comparable across conversations? If yes, conversational memory — which is per-thread — is the wrong place for it. You need an explicit store with a defined schema, so a score generated today means the same thing as a score generated in six months.

Contrast with Memory-Augmented: that pattern is about the user's convenience (don't re-ask what you already told me). This one is about the business record's integrity (the number has to mean the same thing everywhere it's used).

When to Use It

  • Results need to be standardized and comparable across sessions — call scores, health scores, or account metrics.
  • Data from one conversation should enrich or inform a later one, or feed reporting/dashboards over time.

When NOT to Use It

  • The data is only relevant within a single conversation — persisting it adds governance overhead for no benefit.
  • You need lightweight per-user preferences rather than domain/business data — that's Memory-Augmented.

How It Works in Workato

  • Create a skill to store and retrieve the data.
  • Optionally, create skills or recipes to apply scoring, metrics, or enrichment based on available knowledge or reasoning.
  • Make the underlying data table or external data source available to the genie via a skill.

Source: Agentic Design Cookbook V2.0, pp. 19–20

Put these cookbook patterns to work

Get started