Skip to main content
The display system formats agent output in the terminal and exposes hooks for custom rendering.
This page covers terminal output only. For per-channel presentation (streaming, tool progress, footers), see Display Policy.
The user runs the agent in a terminal; the display system renders Rich output and optional global callbacks.

How It Works

Quick Start

1

Default terminal output

2

Custom interaction handler

3

Inspect TaskOutput in a task callback

Core Types

TaskOutput

ReflectionOutput

Import both from the top level: from praisonaiagents import TaskOutput, ReflectionOutput.

Global Registries

Built-in display helpers (display_interaction, display_tool_call, display_error, and others) call registered callbacks even when verbose output is off.

Best Practices

Register handlers once at startup instead of monkey-patching internal display functions.
When you need the full TaskOutput object, attach a callback on Task rather than an interaction handler.
Set output=False in CI or server mode and rely on callbacks for structured logs.
Event names, autonomy callbacks, and async patterns are documented on the Display Callbacks page.

Display Callbacks

Event types and registration patterns

Output Config

Verbose, stream, and markdown output settings