Privacy architecture

The metrics travel. The content doesn't.

Measuring a team's AI work only works if the team trusts the measurement. So the boundary is architectural, not a policy promise: the collector is built so that raw content cannot reach the cloud at the default level.

THE HARD BOUNDARY

Transcripts exist only on the engineer's machine. Every derived stat (tokens, tool health, prompt lengths, session titles) is computed locally by the uploader and shipped as a digest. The cloud never parses raw content at Level 1.

LEVEL 1

Usage metrics

the default · on for every install
  • Timestamps of agent activity: when runs start and stop
  • Counts: prompts, tool calls, error tallies, token totals
  • Locally computed aggregates: prompt-length stats, tool-health tallies
  • Session titles, AI-summarized on your machine from your first prompts (a short label like "Fix checkout race"); when summarization is unavailable a generic placeholder uploads instead, never raw prompt text
  • Data starts at install: only hook-recorded events upload by default. Optional backfill (backfillDays in the local config) rebuilds recent history locally from transcript timestamps under the same rules, statistics only, labeled as estimated past records
  • Raw prompts never leave the machine
  • Tool arguments never leave the machine
  • File contents and transcripts never leave the machine
LEVEL 2

Full session archive

separate, explicit opt-in at install time
  • Complete transcripts upload to your org's own storage, not ours
  • Separate consent: the installer asks for it explicitly; it is never bundled into the default
  • Per machine: each engineer answers for their own device during install
  • Skippable forever: Level 1 alone powers the full lanes board and every metric

Who sees what

Access follows roles, enforced at the database layer. Admins read their org. Members read themselves. An engineer always sees their own data; the lead sees the team they run; nobody sees across org boundaries.

Verify it yourself

OPEN SOURCE COLLECTOR

The collector ships as a public npm package. Read the source and see exactly which events it emits. No compiled blob, no hidden channel.

INSPECTABLE HOOKS

The installer writes plain hooks into your agent's settings file. Open the file and read what runs on each event. Delete the hooks and collection stops.

LOCAL COMPUTATION

Digests are computed on the machine before upload. What travels is the result of the math, not the material it was computed from.

Why we built it this way

A measurement tool that engineers route around measures nothing. Level 1 is deliberately boring: timestamps and counts are enough to draw the lanes, compute leverage, and surface tool health, and they are not interesting to leak. Teams that want full session archives for review or training can opt into Level 2 with eyes open, on their own storage.

Install the collector How the metrics work