Before any API call, the agent checks that a credential is configured via credential-brokers. For first-time setup, it walks you through generating a Jira API token and storing it in your OS keychain — the token never appears in a file the agent can read. It then asks you to confirm the JQL scope or Confluence target before running the first query.
You: Confirm the credential is in place — or tell the agent to set it up. Name the scope explicitly: project key, date range, and any filters (component, label, team). For AI adoption reports, decide whether you’re running a cohort split within one window (labels = ai-assisted vs unlabeled) or a before/after comparison across two windows. A scoped query takes 10 seconds to define; an unscoped query returns every issue in the project and the numbers will be meaningless.
Stage 2 — Collect and compute
With credentials and scope confirmed, the agent runs the appropriate skill. For flow-metrics, it reads Jira changelogs — never the issues themselves — and computes cycle time, throughput, defect ratio, rework rate, and flow distribution for the scoped period. For a cohort split, it measures the AI-labeled and unlabeled stories against the same window and records both sides in the JSON output. For a program-level rollup, it runs one invocation per project and then passes all JSON files to ai-adoption-report program.
You: Watch the collection complete. If the agent reports an unmapped status or an empty cohort, address it before continuing — an unmapped status exits with the offending name, and an empty cohort means no stories were labeled in that window. It’s faster to fix the scope or labeling than to interpret a report built on incomplete data.
Stage 3 — Review the report and share
The agent presents the adoption report — a Markdown file with metric deltas, a per-scope table (program mode), and a JSON sidecar — for your review before any further action.
You: Check that the numbers match your informal expectations. An unexpectedly large or small cohort, a metric that looks implausible, or a scope that accidentally included cancelled work are all worth investigating before the report leaves the session. Once you’re satisfied, tell the agent how to share it: publish to Confluence, paste into a Teams update, or extract the headline numbers for a slide. The JSON sidecar is available for dashboards or Power BI if you need a structured feed rather than a formatted document.