Skip to content

feat: Global agent activity timeline — aggregate memory events #235

Description

@ajianaz

What

Build a global activity timeline that aggregates memory events across all namespaces — giving users a bird's-eye view of what their agents are remembering, forgetting, and linking over time.

Why

Current timeline view (PR #218) is per-memory. Users need a global view to spot patterns: "My agent stored 50 memories today" or "No new memories in 3 days — is the agent offline?"

How

Data source

GET /recent is already covered in Corin (utekeServer.recent()). This issue uses that existing endpoint + aggregates by day/week.

Implementation

Layer 3 — ActivityTimeline.svelte:

  • Vertical timeline with date headers
  • Each day shows:
    • Memory count badge
    • Top 3 memories (preview, click to expand)
    • Type distribution mini-bar
  • Filter by:
    • Namespace (all or specific)
    • Date range (last 7d, 30d, custom)
    • Memory type (fact, reference, etc.)
  • Zoom levels: daily -> weekly -> monthly
  • Activity heatmap (GitHub-style contribution graph) at top

Activity heatmap

  Jul                    Aug
  M T W T F S S    M T W T F S S
  . . . . . . .    . . . . . . .
  . . . . . . .    . . . . . . .
  . . . . . . .    . . . . . . .
  . . . . . . .    . . . . . . .
  . . . . . . .    . . . . . . .  <- today
  • Green intensity = memory count that day
  • Click day -> scroll timeline to that date

Integration

This is the third tab in the Agent Memory Dashboard:

  1. Health Overview (stats)
  2. Context Preview (POST /context)
  3. Activity Timeline (this issue)

Testing

  • Timeline renders with daily grouping
  • Activity heatmap shows correct intensity
  • Click heatmap day -> scrolls timeline
  • Namespace filter works
  • Date range filter works
  • Type filter works
  • Click memory -> opens detail
  • Empty state: "No activity yet"

Related Issues

Checklist

  • ActivityTimeline.svelte
  • Activity heatmap component
  • Filters (namespace, date, type)
  • Memory detail click-through
  • Empty + loading states

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions