Analytics Instrumentation agents and flows

GitLab Duo Agent Platform agents and flows that plan, implement, and review internal events instrumentation

The Analytics Instrumentation group maintains these GitLab Duo Agent Platform agents and flows for internal events instrumentation. You run agents in chat. A flow runs the same instructions as its agent: you trigger it from an issue or merge request, and it posts its results there.

Definitions for all agents and flows are in the analytics-instrumentation agents and flows project.

Agents

Instrumentation Planner Agent

  • Catalog: Planner Agent
  • Definition: instrumentation_planner_agent.yml
  • Purpose: Turns a tracking idea into an implementation-ready tracking requirements issue, or adds research to an existing issue.
  • Invocation: Chat.
  • Modes:
    • New idea: free-form description of what to track.
    • Enrich existing issue: an issue reference (#1234 or a URL).
    • URL and interaction list: a GitLab page URL and a list of UI interactions to track.
  • Output:
    • New idea and URL modes: an issue that follows the Analytics Instrumentation Agent Issue template, titled Tracking Requirements: <action> <target> <where>, with proposed labels analytics instrumentation, Category:<category>, and group::<group>.
    • Enrich mode: a comment headed ## 🔍 Tracking Requirements Research (auto-generated). The issue description is not edited.

Instrumentation Implementation Agent

  • Catalog: Implementation agent
  • Definition: instrumentation_implementation_agent.yml
  • Purpose: Creates event and metric definitions, instrumentation code, and specs, then opens or updates a merge request.
  • Invocation: Chat, or on an analytics instrumentation issue.
  • Modes:
    • Issue-driven: posts an Instrumentation Plan on the issue and waits for confirmation before implementing.
    • Prompt-driven: asks clarifying questions, then either opens the merge request directly or creates an issue and continues in issue-driven mode.
  • Output:
    • A new or updated merge request.
    • Issue-driven mode only: status notes on the issue, such as ⏳ Starting implementation, Instrumentation Plan — Amendment, ✅ MR opened, 🔗 introduced_by_url updated, or ❌ Implementation failed.

Instrumentation Reviewer Agent

  • Catalog: Reviewer agent
  • Definition: instrumentation_reviewer_agent.yml
  • Purpose: Reviews the analytics instrumentation files in a merge request: event and metric definitions, tracking calls, tests, and data privacy.
  • Invocation: Chat, with a merge request reference.
  • Scope: Analytics instrumentation files only, matched by path or by tracking calls in the file content. The full list is in the definition file.
  • Output:
    • A summary note with the status ❌ Changes Required, ⚠️ Needs Improvement, or ✅ Approved.
    • One inline diff note per finding, prefixed [issue], [suggestion], or [nitpick].
    • If no files are in scope: ✅ No analytics instrumentation changes detected — nothing to review.

Flows

Instrumentation Implementation Flow

Instrumentation Reviewer Flow

  • Catalog: Reviewer flow
  • Definition: instrumentation_reviewer_flow.yml
  • Runs: Instrumentation Reviewer Agent.
  • Triggers:
    • Ready merge requests: starts automatically when the merge request is ready for review.
    • Draft merge requests: mention @ai-instrumentation-review-gitlab-org, or run /request_review @ai-instrumentation-review-gitlab-org.
  • Output: The same summary note and inline diff notes as the agent, posted on the merge request.

External data sources

Before doing any work, all agents and flows fetch these sources from each source project’s default branch:

Source Used for
GitLab VERSION milestone
stages.yml Valid product_group values
feature_categories.yml Valid product_categories values