Concepts

Observability

What's working, how much is going out, and what the agent did - three distinct questions, three distinct tools.

Rilo separates outcome analysis, send volume, and the audit trail. Picking the right tool matters because each one deliberately refuses the others' questions.

QuestionTool
Which angle / sequence / segment is actually working?analyze_outreach
What can I slice by right now?list_analysis_fields
How much are we sending? Are we ramping?get_outreach_volume
What did the agent do, and did it succeed?list_agent_activityget_activity_event
How is one small/new campaign doing?get_sequence with include_stats

Outcome analysis

analyze_outreach slices an outcome rate - acceptance, reply, or positive_reply - by any dimension (angle, sequence, sender, seniority, industry, company size, custom enrichment fields via person_attr:<path> / company_attr:<path>, …) and compares each slice against the rest of the cohort. Omit fields to sweep every dimension ranked winners-first; multiple fields slice independently, never as a cross-tab.

The evidence tiers keep it honest:

  • significant - n ≥ 50 and p < 0.05 (n ≥ 100 adds strength: strong)
  • early_signal - n of 20–49; explicitly not strong enough to act on
  • under 20 - no rate shown at all (named in field_notes with counts)

Two counting caveats: stopped enrollments are censored out of every denominator, and acceptance is approximate (LinkedIn never signals declines). positive_reply derives from conversation tags and undercounts while replies are untagged - lead with reply when tagging discipline is unknown, and check the reply_tags block.

Statistical suppression is not absence of data - for a raw status readout of a small or new campaign, use get_sequence include_stats=true (per-step funnel + by_angle).

Call list_analysis_fields first when unsure which dimensions the data supports: it reports live coverage per dimension, custom fields discovered in person/company attributes (these vary per lead group), and which conversation tags are actually in use.

Send volume

get_outreach_volume counts outbound happened events - connection invites (li_connect), cold messages (li_outreach), follow-ups (li_message), thread replies (li_reply) - per day or week bucket, the same rows the send-cap gates count. Zeros are shown: an empty bucket means nothing was sent. Volume, not outcomes.

Audit trail

list_agent_activity is the feed of past tool calls for the workspace, newest first - who ran what, when, and whether it succeeded, filterable by user, operation, outcome, or time range. Each row carries a short input preview; get_activity_event lazily loads one event's full input and output. Tool calls ≠ sends - volume questions belong to get_outreach_volume.

On this page