Activity Timeline
The Activity Timeline provides a unified view of all communications — emails and meetings — for a specific CRM account or contact. Instead of querying email and calendar systems separately, get a single chronological feed for account review, call prep, or relationship analysis.Usage
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
account_id | string | One of account_id or contact_id | CRM account ID |
contact_id | string | One of account_id or contact_id | CRM contact ID |
days | integer | No | Lookback window (1–365, default: 90) |
limit | integer | No | Max items to return |
offset | integer | No | Pagination offset |
types | array | No | Filter by type: ["email"], ["meeting"], or both (default) |
Response
How agents use activity data
Activity timelines are exposed to agents through two paths that serve different purposes:As a tool result (on demand)
When an agent callsget_account_activity_timeline or get_contact_activity_timeline, the result flows through the artifact-backed result cache:
- The full timeline payload is stored in the result cache with a TTL
- A compact summary (item count, date range, 3-item preview) is returned to the LLM
- The agent emits a
<account_activity_timeline ref="cr_xxx" />tag - The UI renders the full timeline as a panel artifact
As background context (automatic)
Thecrm_context async prompt block automatically includes recent activity signals (last meeting date, last email date, communication frequency) as part of the agent’s background context. This gives agents ambient awareness of relationship health without the user explicitly asking “when did we last talk to Acme?”
Artifact-backed result types
The activity timeline artifacts live inartifacts/<type>/ARTIFACT.py. Each file uses @artifact(...) to register the UI type and register_cached_tool(...) to wire the matching tool result to the same summarizer:
| Tool | Artifact type | Display |
|---|---|---|
get_account_activity_timeline | account_activity_timeline | Panel |
get_contact_activity_timeline | contact_activity_timeline | Panel |
draft_email and display types like records_table.
