GitLabSummaryCLI.osx-x64 0.2.4

There is a newer version of this package available.
See the version list below for details.
dotnet add package GitLabSummaryCLI.osx-x64 --version 0.2.4
                    
NuGet\Install-Package GitLabSummaryCLI.osx-x64 -Version 0.2.4
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="GitLabSummaryCLI.osx-x64" Version="0.2.4" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="GitLabSummaryCLI.osx-x64" Version="0.2.4" />
                    
Directory.Packages.props
<PackageReference Include="GitLabSummaryCLI.osx-x64" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add GitLabSummaryCLI.osx-x64 --version 0.2.4
                    
#r "nuget: GitLabSummaryCLI.osx-x64, 0.2.4"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package GitLabSummaryCLI.osx-x64@0.2.4
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=GitLabSummaryCLI.osx-x64&version=0.2.4
                    
Install as a Cake Addin
#tool nuget:?package=GitLabSummaryCLI.osx-x64&version=0.2.4
                    
Install as a Cake Tool

gitlab-summary

A .NET 10 CLI tool and real-time dashboard for monitoring GitLab CI/CD pipeline activity across all projects in a group.

📚 Complete Documentation — Installation, guides, API reference, and more

Features

Core Functionality

  • CLI Summary View — Compact table showing pipeline counts, pass/fail rates, and durations per project
  • Detailed View — Per-pipeline breakdown with branch, source, commit, and timing info
  • Real-time Dashboard — SSE-powered Vue 3 + Vuetify web dashboard with drill-down
  • Cross-platform — Secure token storage via macOS Keychain, Windows DPAPI, or Linux DataProtection
  • Flexible Filtering — Filter by project, configurable time range (minutes/hours/days)
  • Subgroup Support — Includes nested subgroups by default

Dashboard Features

  • Effective Pipeline Status — Shows true pipeline health based on actual job outcomes (green only when all jobs pass, orange for partial success)
  • Enhanced Pipeline Charts — Hybrid chart with stacked success/partial areas and trend lines for failures
  • Dynamic Group & Period Selection — Change GitLab group and time range without restarting server
  • Group Hierarchy Browser — Tree-view modal to navigate and select groups (parent/siblings/children)
  • AI-Powered Failure Analysis — Analyze failed jobs with Copilot, cache results, ask follow-up questions
  • AI Analysis History — Dedicated page to view all cached AI analyses with pagination and search
  • Enhanced Job Logs — GitLab CI section parsing with timing display, clean ANSI code handling
  • Pipeline Details — View full pipeline details including jobs, commits, and notes from any context
  • User Contributor Details — Click on any user to view their pipeline statistics and success rate
  • Fork Detection — Visual badges indicate forked repositories
  • Theme Persistence — Dark/light mode preference saved across sessions
  • Responsive Navigation — Collapsible sidebar with saved state

Installation

dotnet tool install -g GitLabSummary

To update to the latest version:

dotnet tool update -g GitLabSummary

Option 2: Self-Contained Executables

Download pre-built executables from the Releases page:

  • Windows: gitlab-summary-win-x64.exe
  • macOS (Apple Silicon): gitlab-summary-osx-arm64
  • macOS (Intel): gitlab-summary-osx-x64
  • Linux: gitlab-summary-linux-x64

Option 3: Build from Source

# Clone the repository
git clone https://github.com/garrardkitchen/gitlab-summary.git
cd gitlab-summary

# Build the dashboard
cd src/dashboard
npm install
npm run build

# Build the CLI
cd ../cli
dotnet build

Prerequisites

  • .NET 10 SDK (for building from source)
  • GitLab Personal Access Token or Group Access Token with read_api scope
  • GitHub Copilot subscription (for AI failure analysis):
    • GitHub account with active Copilot subscription
    • Authenticated with GitHub CLI: gh auth login
    • The Copilot SDK will automatically download the required CLI on first use

Quick Start

# Store your GitLab token securely
gitlab-summary token set --url https://gitlab.example.com

# View pipeline summary (last 24 hours)
gitlab-summary pipelines --group my-org

# View detailed breakdown
gitlab-summary pipelines --group my-org --since 2d --detailed

# Filter to a specific project
gitlab-summary pipelines --group my-org --project api-service --since 12h

# Start the real-time dashboard (opens browser automatically)
gitlab-summary serve --group my-org --open

Dashboard

# Start the SSE server + open browser
dotnet run --project src/cli/GitLabSummary -- serve --group my-org --open

# In another terminal, start the Vue dev server
cd src/dashboard
npm install
npm run dev
# → http://localhost:3000 (proxies API to localhost:5100)

# Or build and serve from CLI (port 5100 serves built dashboard)
npm run build
# Restart serve command → http://localhost:5100

One liner

You must pull the repo 1st and install the gitlab-summary tool from nuget as shown above

To run from one line:

(cd src/dashboard && npm run dev) & (cd ../.. && gitlab-summary serve --group 2217 --open)

Dashboard Usage

  • Change Group: Type group ID in top bar or click tree icon to browse hierarchy
  • Change Period: Select from dropdown (1d, 3d, 7d, 14d, 30d)
  • View Pipeline Details: Click any pipeline row to see jobs and logs
  • Analyze Failures: Click "Analyze with AI" on failed jobs (requires GitHub Copilot)
  • View Contributors: Click any username to see their statistics
  • Customize AI Prompt: Click settings icon → modify system prompt for AI analysis

CLI Reference

token set [--url <URL>]

Store or update your GitLab access token. Prompts for masked input.

token show

Display the stored token (masked) and configured GitLab URL.

token clear

Remove the stored token.

url set --url <URL>

Set the GitLab instance URL.

url show

Display the configured GitLab URL.

pipelines --group <GROUP> [OPTIONS]

Show pipeline activity summary.

Option Description Default
-g, --group GitLab group ID or path Required
-s, --since Time range (30m, 24h, 7d) 24h
-p, --project Filter by project name
-d, --detailed Show per-pipeline details false
-u, --url Override GitLab URL Config value

serve --group <GROUP> [OPTIONS]

Start SSE dashboard server.

Option Description Default
-g, --group GitLab group ID or path Required
-s, --since Time range 24h
--port Server port 5100
--open Open browser automatically false
--interval Refresh interval (seconds) 30
-u, --url Override GitLab URL Config value

API Endpoints (Serve Mode)

Core Endpoints

Endpoint Method Description
/api/events/pipelines GET SSE stream of pipeline summaries
/api/pipelines/summary GET Current summary snapshot
/api/pipelines/{projectId}/details/{pipelineId} GET Pipeline job details
/api/health GET Health check
/api/version GET Version information
/api/avatar?url={url} GET Proxy for GitLab avatars

Settings Endpoints

Endpoint Method Description
/api/settings GET Get current group and period
/api/settings POST Update group and period (body: {group, since})

Group Hierarchy Endpoints

Endpoint Method Description
/api/groups/{groupIdOrPath} GET Get group details
/api/groups/{groupIdOrPath}/subgroups GET Get child groups
/api/groups/parent/{parentId} GET Get sibling groups by parent ID

AI Analysis Endpoints

Endpoint Method Description
/api/ai/analyse POST Analyze failed job (body: {projectId, pipelineId, jobId, jobName, stage, log?})
/api/ai/followup POST Ask follow-up question (body: {projectId, pipelineId, jobId, jobName, stage, question, log?, previousAnalysis?})
/api/ai/analyzed GET Get list of analyzed job IDs for project (query: projectId)
/api/ai/cache GET Get cached analysis (query: projectId, jobId)
/api/ai/cache DELETE Delete cached analysis (query: projectId, jobId)
/api/ai/system-prompt GET Get current AI system prompt
/api/ai/system-prompt PUT Update AI system prompt (body: {prompt})

Job Trace Endpoint

Endpoint Method Description
/api/jobtrace GET Get job log trace (query: projectId, jobId)

Project Structure

src/
├── cli/                    # .NET 10 Console App
│   ├── GitLabSummary/      # Main project
│   │   ├── Commands/       # CLI command handlers
│   │   ├── Models/         # Data models
│   │   ├── Services/       # API client, aggregation, credentials, AI
│   │   ├── Rendering/      # Spectre.Console output formatters
│   │   └── Configuration/  # App settings
│   └── GitLabSummary.Tests/
└── dashboard/              # Vite + Vue 3 + Vuetify
    └── src/
        ├── composables/    # SSE stream, AI analysis, formatters
        ├── components/     # Vue components (dialogs, detail views)
        ├── pages/          # Route pages (Overview, Projects, Contributors)
        └── types/          # TypeScript interfaces

## Configuration

### Token Storage
Tokens are stored securely using platform-specific APIs:
- **macOS**: Keychain
- **Windows**: DPAPI (Data Protection API)
- **Linux**: .NET DataProtection with file-based key storage

### Settings File
Located at `~/.gitlab-summary/settings.json`:
```json
{
  "GitLabUrl": "https://gitlab.example.com"
}

AI Analysis Cache

Located at ~/.gitlab-summary/ai-analysis-cache.json — stores analysis results per job.

License

MIT

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.2.8 128 3/1/2026
0.2.7 108 2/12/2026
0.2.6 108 2/11/2026
0.2.5 105 2/10/2026
0.2.4 101 2/9/2026
0.2.3 107 2/9/2026