Skip to content

Post-Processors

Configure post-processors to analyze, summarize, and process conversations after user turns or when conversations expire.


Overview

Post-processors execute logic after the agent has responded — either after each user turn or when a conversation ends. They can analyze messages, generate summaries, ingest conversation transcripts into knowledge repositories, and more.

Post-processors are categorized into two groups based on their execution trigger:

Category Trigger Use Case
Turn Post-Processor After every user turn Real-time message analysis, tagging, sentiment tracking
Conversation Post-Processor On conversation expiry or completion Summaries, transcript ingestion, final actions

Post-processors are configured at the workspace level under Settings > Processors > Post-Processors, then assigned to individual agents.

Post-Processors List

Available Types

Add Post-Processor Modal

Category Type
Conversation Post-Processor Conversation Analyzer, Knowledge Ingestion, Summary
Turn Post Processor Message Analyzer

Turn Post-Processors

Turn post-processors execute after every user interaction (turn) within a conversation. They provide real-time analysis as the conversation progresses.

Message Analyzer

The Message Analyzer evaluates each message exchange and applies tags or analysis in real time.

Field Description
Name Descriptive name for this analyzer
Batch Model The model used for analysis. Required for the Re-Run capability
Configuration Define the analysis rules and tag outputs

Batch Model Requirement

To enable the Re-Run capability for Message Analyzer configurations, a Batch Model must be defined in its settings.


Conversation Post-Processors

Conversation post-processors execute when a conversation expires or completes. The expiry is controlled by the Conversation Inactivity Duration setting (default: 60 minutes) under Agent Settings > Behavior.

Conversation Analyzer

Analyzes completed conversations based on a prompt and extracts structured data as JSON. Useful for extracting key fields (names, dates, decisions) from conversation transcripts.

Field Required Description
Post-Processor Name Yes Descriptive name for this analyzer
Model for Batch Processing Yes The batch model used to analyze the conversation
Prompt Yes The extraction prompt. Use {{fields}} placeholder — it is replaced with the fields defined in the Fields table below

Default Prompt: The system provides a default prompt that instructs the model to extract fields as valid JSON, using null for missing values, YYYY-MM-DD for dates, exact values only (no inference), final corrected values, and true/false for booleans.

Fields Table:

Define the properties to extract from conversations:

Column Required Description
Name Yes The field name (becomes the JSON key)
Type Yes Data type (string, number, boolean, date, etc.)
Description Yes Description of what to extract for this field

Click "Add" to create additional fields.

Filter & Inspect Analyzer Outputs

Conversation Analyzer outputs are usable at the individual-conversation level, not just in aggregate reports:

  • Filter conversations by analyzer field/value via the Analysis option under Filters on the Conversations page (free text, contains-match, case-insensitive).
  • Inspect every post-processor run on a conversation via the Conversation Analysis button on its detail view — status, extracted values, errors, and last-updated timestamps in one place.

See Conversations → Conversation Analysis.


Knowledge Ingestion

Knowledge Ingestion Configuration

Automatically pushes the full transcript of expired or completed conversations to a defined Knowledge Repository, enabling continuous learning and data enrichment.

Configuration:

Field Required Description
Post-Processor Name Yes Descriptive name
Prefix Text No Text automatically prepended to transcripts before saving. Supports dynamic placeholders (see below)
API Key Yes API key for authenticating with the repository. Use {{SECRETS.KEY}} for secrets configured for the workspace
Knowledge Repository (UUID) Yes The UUID of the destination knowledge repository for conversation transcripts

Supported Placeholders for Prefix Text:

Placeholder Description
{{user.email}} The authenticated user's email
{{user.name}} The authenticated user's name
{{date}} Timestamp of the conversation
{{conversation.id}} Unique conversation identifier
{{conversation.duration}} Total conversation duration
{{agent.name}} Name of the agent
{{workspace.name}} Name of the workspace

Conversation Memory

Using prefix placeholders ensures stored conversations are fully searchable by user identity and date, transforming standard transcripts into actionable "user conversation memory."


Summary

Summary Configuration

Analyzes expired or completed conversation transcripts and automatically generates a summary. Summaries can be viewed as a report on the agent reports dashboard.

Field Required Description
Post-Processor Name Yes Descriptive name
Model for Batch Processing Yes The batch model used for summary generation
Prompt to analyze messages Yes The prompt used to analyze conversations. A Default link resets to the built-in prompt. Example: "Analyze this conversation between Human, AI and Support Assistant. Summarize the conversation in less than 50 words."

Conversation Inactivity Duration

This setting controls when conversation post-processors trigger. Located under Agent Settings > Behavior, it defines the duration of inactivity (in minutes) after which a conversation reaches a soft expiry.

  • Default: 60 minutes
  • When the inactivity duration is reached, all configured Conversation Post-Processors execute (soft expiry on the backend)
  • If the user resumes the conversation later, the new message is appended to the existing context. The next time the conversation reaches the inactivity duration, post-processors re-run and update / overwrite the previously generated outcomes (summary, metadata, CRM updates) based on the newly accumulated context
  • The chat input itself remains active — there is no hard, user-visible expiry. See Continuous Conversations
  • Changing this value affects when summaries are generated and transcripts are ingested

End of Conversation Message

When a conversation concludes due to system idle timeout, the system injects an internal user turn with the tag internal_end_of_conversation. This provides a "last chance" for the agent to perform final actions such as summarizing or updating user memory.

Configuration:

  1. Navigate to Agent Settings > Instructions
  2. Enable the "End of Conversation" checkbox
  3. Set the custom message text (e.g., "System message: this conversation ended by system idle timeout")

The agent responds to this internal message as it would any other turn. The response is persisted in conversation history, and any configured post-processors trigger immediately after.

Permission

Access to the End of Conversation Message setting is RBAC-controlled and provided to the Admin role by default.


Manual Re-Run

Post-processors can be manually re-executed for all or selected conversations directly from the Conversation Monitoring screen.

Re-run Post Processor Conversations page — clicking Re-run opens the Re-run Post Processor modal: pick which post-processor to execute, then choose Re-run scope (All Conversations or Only Failed)

  1. Navigate to the agent's Conversations page
  2. Click the Re-run action in the toolbar (alongside Select and Show filters)
  3. In the Re-run Post Processor modal, pick the post-processor from the dropdown
  4. Choose the Re-run scopeAll Conversations or Only Failed
  5. Click Re-run

Permission

The Re-Run Post Processor capability is controlled by a dedicated permission, enabled by default for Admin, Workspace Admin, and Supervisor roles.


Batch Monitoring

A centralized Batch Monitoring screen provides visibility into the status of all running batch processes within a workspace — including post-processor jobs.

Batch Monitoring

Access: Click the User Icon (top right corner) and select Batch Monitoring.

Permission

Access to Batch Monitoring is permission-based, provided by default to Admin and Workspace Admin roles.