StartConceptsPlaybooksFeature docsAPI & MCPChangelog
← All feature docs
Feature docs · /rollup

Activity

A read-only rollup of what your scheduled runs produced: every run, its outcome and counts, and the brain state behind it, assembled from the telemetry and brain sync the runtime records.

Overview

The work runs on a schedule, on our servers; this is where you see the result. Every skill reports emit_telemetry when it finishes and sync_brain for the brain files it touched. Activity at /rollup turns that stream into a per-account cockpit.

Scoped to your account. A run by your roles never appears on anyone else's Activity.

What it shows

Delivered to your Drive

The runtime can put its reports where you actually read them: your Google Drive. When Drive delivery is enabled for your account, the daily run writes each report into your Drive "Accounts" folder as a native Google Doc (so it opens formatted and you can comment on it) plus a raw .md copy (the exact model output). The Delivered to your Drive card links each one, you never dig for a file.

This is a deployment option, off by default. It only runs when your operator enables owned connectors, your account opts in, and you've connected Google with Drive access. Writing a file into your own Drive folder is delivery, not an outbound send, nothing leaves your account. A delivery that fails is flagged on the card and never affects the run itself.

Drafts ready to send

On each scheduled pass, a run reads your account signals and drafts outreach for the contacts worth a touch that day. Those drafts land in the Drafts ready to send card, highest-quality first. Nothing is ever sent for you, every send is an explicit click.

A draft with no email address on the contact shows "no email" and can't be sent until you add one. Leads sourced from someone engaging with your content appear on Content Studio under Warm leads instead, so the same person never shows up in both places.

Questions to ask

On a scheduled pass, a run looks at your worked deals, the ones past qualification, with a live close date and real MEDDPICC evidence, and finds the specific thing you still don't know about each: no economic buyer named, no decision process mapped, no compelling metric quantified. For each gap it drafts the actual question to ask that buyer next, in a discovery style that opens a conversation instead of inviting a one-word answer.

Only worked deals ever appear here, a deal you opened yesterday won't generate "ask who the economic buyer is", because an unstarted deal is supposed to have gaps. So an empty card means "nothing worth asking right now", never noise. Questions surface only once your pipeline actually holds opportunities with MEDDPICC detail; until then the card stays quiet.

Brain-state timeline

Brain sync is append-only, so every scope keeps a history of snapshots. The Brain State card links each scope to /rollup/brain/[scope], where you can see how that brain evolved:

Live activity

Skills that declare their start (the start_run MCP tool) show up while they work, not just after:

Product versions that don't declare starts never appear as running, their runs land directly in Recent runs when they finish, exactly as before.

Performance trends

Each role card carries a runs-per-day sparkline for the active window, with a 7d / 30d / 90d toggle above the grid. Under the sparkline: that role's median run duration and its error rate over the window. Bars for days with at least one failed run are tinted red; hover any bar for that day's exact counts.

The trend data (per role, and per skill within each role) comes from GET /api/me/rollup-trends?window=7d|30d|90d, scoped to your account.

How your work connects

The roles are built to feed each other: your business record carries your company, offer and voice, each role reads it, and each produces brain scopes the next one consumes. The How your work connects card draws that as a small diagram (inline SVG, no external libraries) over what you actually own:

Below the diagram, coordination warnings flag things to fix, each linking straight to the fix:

Honest empty state: owning one thing means there is nothing to coordinate, so the card says so and links to the catalog. Warnings are deterministic rules over your own run and sync history, no AI, every one reproducible.

Goals & targets

The Goals card turns Activity from a receipt into a pace check. Set a target against any outcome your roles actually report and see how far along you are this week or month:

The same data is available as JSON at GET /api/me/goals.

Pace & behind-pace alerts

Each goal shows a pace badge, Ahead, On pace, or Behind, computed deterministically by comparing how far through the window you are with how far toward target you are (within a plus-or-minus 15% band of the straight-line expectation). The progress bar tints red when you fall behind. Nothing here is a guess; every status is reproducible from your run history.

What moved to Home

Activity is the record of what ran. Deciding what to do about it belongs on Home, where everything competing for your attention is ranked against everything else rather than in its own card.

Two cards moved there. Suggested next actions, a fixed rule table over your telemetry, is now part of the ranked line, so a nudge from your run history sits in the same order as a deal about to slip instead of in a separate list you might not scroll to. Your hosted drafts is now the Waiting on you block, which shows how long each has waited, because an approval that quietly piles up is the failure that card could not surface.

Nothing was lost and nothing new is hidden. This page keeps the full run history, the health and coordination views, your goals, and the drill-downs below.

Run drill-down

Every row in Recent Runs links to /rollup/run/[id], one run, in full:

Per-role drill-down

Every role you own has its own page at /rollup/[pluginId], reachable by clicking its name anywhere it appears on Activity: the Is everything running? card, the By role card, or its node in How your work connects. It pulls that role's slice into one place:

Honest scoping: something you do not own, or a made-up id, reads as not found, indistinguishable from one that does not exist. Every section has an empty state (a role that has never run shows a connect prompt, not fake data).

Filter by account

When your skills tag their runs with an account (the optional account_ref label they pass to emit_telemetry, a domain or account name), Activity gains an Account filter above the runs:

Whether a skill tags its runs is up to the skill. One that works a specific account should pass its domain; one with no single account omits it. See the API reference for the label convention.

Dossier completeness

A compact GTM Context Dossier card rides along near the top of Activity: a meter scoring how many of the six dossier sections are filled (company, products, founder, voice, ICP, competitors) and a consumed-by line showing which roles have actually read your context, Core once your session pulls config, and each role with when it last synced brain state against it. The card appears only when it's relevant (you own the Content Engine, a dossier exists, or something has consumed it) and links to /onboarding/dossier to sharpen it. Full detail: GTM Context Dossier.

How it fills up

  1. Connect your tools and finish the setup for the roles you hold.
  2. As the scheduled runs happen, they call emit_telemetry and sync_brain against the runtime.
  3. This page reads the resulting plugin_runs and brain_sync records, scoped to your account.

Until a run happens, Activity shows an empty state with a link to connect.

Weekly digest email

Every Monday, we email you a recap of the same data, runs and "actions" this week versus last, what changed, and any role that is idle or erroring, so you stay in the loop without logging in. You only get it if your runs happened in the last week. Every email has a one-click unsubscribe; you can also opt out from account settings.

How you compare

When your deployment enables cross-tenant benchmarks, a "How you compare" card shows your activity per won opportunity against the anonymized median band across every team on the deployment, never any other team's raw data. It appears only when the deployment flag is on, at least five teams have data, and you have not opted out (Settings, Data). Read-only. Full detail: docs/privacy/cross-tenant-benchmarks.md.

Data & privacy

The work runs on our servers, so we process the data you connect to do it. That data is encrypted at rest, isolated to your tenant, never sold, and never used to train models, and you can export or delete it at any time. Two different things flow into Activity, and they carry different sensitivity:

A short "Your data" card sits at the top of Activity linking to the full explainer on the Trust & security page (which also carries the security one-pager and our honest SOC 2 roadmap statement).

Related