Agent Activity Feed & Narrative Transparency Console
Agent Activity Feed & Narrative Transparency Console
The Activity Feed transforms raw AI agent execution logs into a plain-English story of what your AI team actually did. Instead of parsing hundreds of tool-call entries, you see structured narratives, key action highlights, and aggregate stats — all in real time.
Accessing the Activity Feed
Navigate to any product dashboard and click Activity Feed (📖) in the Build section of the sidebar. The direct URL is:
/dashboard/products/[product-id]/activity
The page is also linked from the sidebar between Observability and Docs.
Activity Feed Page
Stats Bar
At the top of the page, a stats bar summarises the selected time period:
| Stat | Description |
|---|---|
| Runs | Total pipeline runs (completed count shown below) |
| Agents Deployed | Number of unique agent types that ran |
| Tool Operations | Total tool calls across all runs |
| Tokens Used | Total inference tokens consumed |
Date Range Selector
Filter the feed by time window:
- Today (default)
- Last 3 days
- Last 7 days
The feed auto-refreshes every 5 minutes.
Run Cards
Each pipeline run appears as a card showing:
- ✅ / ❌ completion status
- Feature title (e.g. "feat: revenue dashboard")
- Start time and duration
- Number of agents, tool operations, and tokens used
- Highlight pills — key outcomes extracted from tool logs (e.g. "Created PR: 'feat: revenue dashboard'", "Build passed ✓", "Released version v0.8.2")
- Agent type badges — which agent types participated
Expanding a Run Story
Click the Story button on any run card to expand the full Narrative Panel inline — a vertical timeline of each agent's contribution. Click Full detail to navigate to the raw pipeline run detail page.
Narrative Panel
The Narrative Panel renders each agent's work as an expandable timeline card. It appears in two places:
- Inline in the Activity Feed — expand any run card via the Story button
- At the top of every completed pipeline run detail page — under the heading "What Your AI Team Did"
Per-Agent Timeline Cards
Each card shows:
- Emoji icon and color-coded agent type badge
- Headline — a plain-English summary of what the agent did (e.g. "Implementation Agent wrote 7 files in 4m" or "Research Agent conducted 12 investigations in 2m")
- Detail bullets — step-by-step breakdown of the agent's actions
- Key Actions pills — extracted highlights such as files written, PRs opened, and CI outcomes
- Duration, tool call count, and token usage
Reasoning Excerpts
Where available, the panel surfaces reasoning from thinking-level logs, for example:
Reasoning: "I need to check the existing router pattern before writing..."
Run Summary
Completed runs include a one-paragraph prose summary, for example:
"Your AI team successfully built 'Revenue Dashboard' in 6 minutes. Research Agent, Implementation Agent, Testing Agent collaborated across 47 tool operations..."
API — agentNarrative tRPC Router
Three procedures are available via the agentNarrative router:
agentNarrative.getRunNarrative
Returns the full narrative for a single pipeline run.
Input:
{ pipelineRunId: string }
Returns:
{
pipelineRunId: string;
status: string | null;
featureTitle?: string;
summary: string | null; // One-paragraph prose summary
beats: NarrativeBeat[]; // Per-agent timeline entries
}
agentNarrative.getDailyDigest
Returns a digest of all runs for a product over a given number of days.
Input:
{ projectId: string; days: 1 | 3 | 7 }
Returns:
{
stats: {
totalRuns: number;
completedRuns: number;
uniqueAgentTypes: string[];
totalToolCalls: number;
totalTokens: number;
};
runs: DigestRun[];
}
agentNarrative.getGlobalDailyDigest
Returns a cross-product digest for the overview dashboard.
Input:
{ days: 1 | 3 | 7 }
Returns: Same shape as getDailyDigest but aggregated across all products.
NarrativeBeat Type
Each entry in the beats array represents one agent's contribution:
interface NarrativeBeat {
agentType: string; // e.g. "implementation_agent"
agentName: string; // Display name
icon: string; // Emoji icon
color: string; // CSS colour class
status: "completed" | "failed" | "skipped";
headline: string; // Plain-English summary line
details: string[]; // Bullet-point detail list
highlights: string[]; // Key action pill labels
durationMs: number | null;
toolCallCount: number;
tokenCount: number;
}
Pipeline Detail Page Integration
Every completed pipeline run detail page now renders a "What Your AI Team Did" section at the top, above the existing raw tool-call log. This section is rendered by the NarrativePanel component and populated automatically via agentNarrative.getRunNarrative.
No additional configuration is required — the narrative panel appears automatically for all completed runs that have agent log data.