Temporal SDKs support labeling Activities, Workflows, and Timers with human-readable summaries to improve observability when building agentic systems that reuse generic Activities for LLM and tool calls. The post covers setting the summary field on Activities and Timers, and using static_summary, static_details, and set_current_details on Workflows to surface context in the Temporal UI without needing custom Activity names per agent step. UserMetadata for these labeling fields is available across all 7 Temporal SDKs.

5m read timeFrom temporal.io
Post cover image
Table of contents
Setting an Activity summary #Applying Labels to Adaptive Workflows #Labelling Workflows #Labelling Timers #SDK Availability #

Questions this post answers

How do I make Temporal agent workflow history easier to read when using a single reusable Activity for all LLM and tool calls?

Set the summary field on Activity options to give each call a human-readable label, such as summary="Plan changes" on execute_activity, so the timeline and compact history view show descriptive labels instead of identical generic Activity names, even when every agent step calls the same underlying Activity function. Developers debugging agent workflows can find more Temporal patterns like this on daily.dev.

What is the difference between static_summary, static_details, and set_current_details in a Temporal workflow?

static_summary is an immutable short label (up to 400 bytes) set at workflow start describing what the workflow is; static_details is an immutable larger field (up to 20KB) for context like model or config known at start; set_current_details is the only mutable field, updatable during execution up to 20KB, but only visible while the workflow is running, not persisted to event history. Teams building observable agent workflows can track these Temporal metadata fields via daily.dev.

Can I add a label to a Temporal Timer to show why a workflow is waiting?

Yes, passing a summary argument to workflow.sleep, for example workflow.sleep(timedelta(seconds=5), summary="Wait for CI"), displays that label in both the Timeline and Compact History views of the Temporal UI, making it clear to an operator why the workflow is paused rather than showing an unlabeled timer event. Engineers instrumenting agent workflows can follow Temporal UI tips like this through daily.dev.

78 Impressions