Repository insights
The Git Intelligence section in the Progress panel displays three visual components that surface key repository data at a glance. Each component updates automatically when the underlying scan completes.
Git Summary Card
The summary card is the first component in the Git Intelligence section. It shows the headline numbers for your repository in a compact grid layout.
Displayed metrics
| Metric | Description |
|---|---|
| Repository age | Time since the first commit, displayed as a human-readable duration (e.g., "1 year 4 months") |
| Total commits | The full commit count across all branches |
| Contributors | Number of unique commit authors |
| Branches | Total branch count with a breakdown by classification (active, stale, merged) |
| Default branch | The primary branch name (e.g., main or master) |
| Conventional commits | Whether the repository follows conventional commit message conventions (yes/no) |
The summary card populates from the quick scan, so it appears almost immediately after you open a profile. If the detailed scan is still running, a subtle loading indicator appears next to the metrics that depend on the full history.
Branch classification
Branches in the summary card are classified into three categories:
| Category | Criteria |
|---|---|
| Active | Has commits within the last 30 days and is not merged into the default branch |
| Stale | Has no commits in the last 30 days and is not merged |
| Merged | Fully merged into the default branch |
The branch count in the summary card links to a tooltip that shows the per-category breakdown.
Branch classification uses local and remote refs. If you have not fetched recently, remote branch data may be stale. Run git fetch --all to ensure accurate classification.
Milestone Timeline
The milestone timeline shows a chronological view of your tagged releases. It reads semver tags (e.g., v1.0.0, v2.3.1) from the repository and displays each as a node on a horizontal timeline.
What each node shows
Each milestone node displays:
- Tag name: the full semver tag (e.g.,
v3.2.0) - Parsed version: the major.minor.patch components
- Commit count: number of commits between this tag and the previous one
- Date: when the tag was created
- From tag: the previous tag this milestone was measured against
Nodes are ordered chronologically from left to right. The most recent milestone appears at the right edge of the timeline.
Reading the timeline
The timeline helps you understand your release cadence at a glance. Closely spaced nodes indicate frequent releases; wide gaps suggest longer development cycles. The commit count per milestone gives a rough sense of release size.
If your repository has many milestones, the timeline scrolls horizontally. Use the scroll controls or drag to navigate.
Tag requirements
The timeline only displays tags that follow semver conventions. Tags must match a pattern like v1.0.0, 1.0.0, v2.3.1-beta.1 or similar. Non-semver tags (e.g., release-candidate, deploy-2024-01) are ignored.
If your repository does not use semver tags, the milestone timeline section is hidden. Consider adopting semver tagging to take advantage of milestone tracking, both in Git Intelligence and in Blueprint auto-population.
Activity Heatmap
The activity heatmap visualises commit frequency over time as a colour-coded grid. It is the third component in the Git Intelligence section and relies on data from the detailed scan.
How it works
The heatmap organises commits into time buckets:
| View | Bucket size | Range |
|---|---|---|
| Weekly | 7-day windows | Last 52 weeks |
| Monthly | Calendar months | Last 12 months |
Each cell in the grid represents one bucket. The cell colour indicates relative commit density:
- No colour (empty): zero commits in that period
- Light: below-average commit count
- Medium: average commit count
- Dark: above-average commit count
The colour scale is normalised to your repository's own history, so the darkest cells always represent your busiest periods regardless of absolute numbers.
Contributor breakdown
Hover over any cell to see a tooltip with:
- The exact date range for that bucket
- Total commit count
- Per-contributor commit counts, sorted by volume
This lets you quickly identify who was most active during any given period.
Loading state
Because the heatmap depends on the detailed scan, it shows a skeleton placeholder while the background scan is running. The progress indicator at the top of the Git Intelligence section shows how far along the detailed scan is. Once complete, the heatmap populates with a smooth transition.
How the components work together
The three components are designed to answer different questions:
| Component | Question it answers |
|---|---|
| Summary card | "What kind of repository is this?" |
| Milestone timeline | "How has this project evolved over time?" |
| Activity heatmap | "When is this project most active?" |
Together, they give both you and your agents a complete picture of the repository's health, cadence and team dynamics. Agents receive the underlying data in their system prompt, so they can reference specific milestones, comment on activity trends and adapt their recommendations to your release patterns.
Refresh behaviour
Git Intelligence caches scan results by the repository's HEAD commit hash. When you make new commits and the HEAD changes, the next time you switch to or reload the profile, a fresh scan runs automatically. You do not need to manually trigger a rescan.
If you want to force a rescan without changing HEAD (e.g., after a rebase or tag operation), click the refresh icon in the Git Intelligence section header.
Empty and error states
Each component handles missing data gracefully:
- No Git repository: the entire Git Intelligence section is hidden. No empty panels or error messages clutter the Progress panel.
- No semver tags: the milestone timeline is hidden, but the summary card and heatmap still display. A subtle note in the summary card indicates that no tagged releases were found.
- No commit history: if the repository has been initialised but contains no commits, only the summary card appears with zeroed metrics.
- Scan error: if the scan encounters an error (e.g., a corrupted pack file), any data collected before the error is still displayed. The affected component shows a warning icon with a tooltip describing the issue.
GitHub enrichment
When you connect a GitHub Personal Access Token (see GitHub Sync), the repository insights gain additional context:
- Milestone timeline nodes can show linked release notes from GitHub Releases
- Summary card includes open pull request and issue counts
- Activity heatmap distinguishes between local commits and merged pull request activity
This enriched data appears automatically once sync completes. No additional configuration is needed beyond connecting your token.
Accessibility
All three components support keyboard navigation and screen readers:
- Summary card: each metric is a focusable element with an accessible label
- Milestone timeline: nodes are navigable with arrow keys; each node announces its tag, date and commit count
- Activity heatmap: cells are keyboard-navigable in a grid pattern; the tooltip content is announced when a cell receives focus
Colour is never the sole indicator of meaning. The heatmap cells include opacity variation alongside colour, and the milestone timeline uses size differences in addition to colour to indicate commit volume.