Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Flow metrics analyzer (lead time, cycle time, throughput, WIP, aging WIP) for sprint and team health, with cumulative flow diagrams.
.claude/skills/borghei-cycle-time-analyzer/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | 58% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 5% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 240% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 110% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 86% | 0% |
Compute and visualize the four core Kanban flow metrics -- lead time, cycle time, throughput, and work-in-progress -- from issue history data exported from Jira, Linear, GitHub Projects, or any tracker that records status transitions. The output is a dashboard suitable for sprint retrospectives, executive reporting, and bottleneck analysis, plus a Mermaid cumulative flow diagram that visualizes work accumulation over time.
Flow metrics are the most useful diagnostic for team and process health, far more so than velocity or story points. Daniel Vacanti's work (Actionable Agile Metrics for Predictability, 2015) shows that predictability and throughput are governed by Little's Law (Throughput = WIP / Cycle Time), and that the most reliable way to improve delivery is to lower WIP and stabilize cycle time -- not to estimate harder. This skill also reports aging WIP (in-flight work older than the team's 85th-percentile cycle time -- the items most at risk) and supports the shared --format schema (json, markdown, mermaid, confluence, notion, linear).
scrum-master/).scrum-master/velocity_analyzer.py.scrum-master/sprint_capacity_calculator.py.Before running the analysis, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
bashpython scripts/flow_metrics.py --input issues.json --format markdown # full dashboard python scripts/flow_metrics.py --input issues.json --format mermaid # cumulative flow diagram python scripts/flow_metrics.py --demo --format markdown # sample output, no input
Review the 85th-percentile cycle time (not the average), flag aging WIP that exceeds it, and re-run weekly to track the trend. See references/metrics-and-tool-reference.md for the full workflow, CLI flags, and JSON schemas.
| Tool | Purpose | Command | |------|---------|---------| | flow_metrics.py | Compute lead time, cycle time, throughput, WIP, aging WIP, CFD | python scripts/flow_metrics.py --input issues.json --format markdown |
references/metrics-and-tool-reference.md -- Precise definitions of the four metrics, Little's Law, aging WIP, the 7-step workflow, troubleshooting matrix, success criteria, and the full flow_metrics.py CLI flags + input/output JSON schemas. Read when running an analysis or wiring up the tool.references/flow-metrics-guide.md -- Vacanti-style deep dive: lead vs cycle, distributions vs averages, Little's Law, aging WIP, common anti-patterns. Read for narrative depth and tracker-specific export instructions.references/red-flags.md -- Bad-vs-good examples of flow-metric reporting. Read this to sanity-check a dashboard before sharing it.In Scope:
SHARED_OUTPUT_SCHEMA.mdOut of Scope:
scrum-master/velocity_analyzer.py)scrum-master/)senior-pm/resource_capacity_planner.py)Important Caveats:
| Integration | Direction | What Flows | |-------------|-----------|------------| | scrum-master/ | Complementary | Flow metrics + velocity together provide the full delivery picture | | scrum-master/retrospective_analyzer.py | Feeds into | Flow trends inform retro topics | | dependency-map/ | Complementary | Long cycle times often correlate with cross-team dependencies | | sprint-retrospective/ | Feeds into | CFD and aging WIP are standard retro inputs | | senior-pm/project_health_dashboard.py | Feeds into | Throughput trends feed portfolio health | | status-update-generator/ | Feeds into | Weekly status includes throughput and aging WIP highlights | | agile-coach/ | Used by | Coaches use flow metrics to assess team maturity |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-17 | pass→pass | 12,590 | 2,473 | -80% | 1 | 1 | 0% | 2,164 | 2,043 | -6% | 0 | 0 | — |
case-01 | pass→pass | 20,025 | 26,363 | +32% | 1 | 1 | 0% | 3,524 | 6,153 | +75% | 0 | 0 | — |
case-02 | fail→pass | 25,487 | 33,791 | +33% | 1 | 1 | 0% | 4,295 | 6,804 | +58% | 0 | 0 | — |
case-03 | fail→pass | 35,550 | 28,008 | -21% | 1 | 1 | 0% | 6,036 | 6,358 | +5% | 0 | 0 | — |
case-04 | pass→pass | 12,495 | 9,582 | -23% | 1 | 1 | 0% | 1,924 | 3,265 | +70% | 0 | 0 | — |
case-05 | pass→pass | 10,842 | 10,475 | -3% | 1 | 1 | 0% | 1,781 | 3,253 | +83% | 0 | 0 | — |
case-06 | pass→pass | 15,198 | 14,667 | -3% | 1 | 1 | 0% | 2,187 | 3,912 | +79% | 0 | 0 | — |
case-07 | pass→pass | 4,507 | 2,516 | -44% | 1 | 1 | 0% | 701 | 2,027 | +189% | 0 | 0 | — |
case-08 | pass→pass | 5,616 | 2,732 | -51% | 1 | 1 | 0% | 878 | 2,026 | +131% | 0 | 0 | — |
case-09 | fail→fail | 12,756 | 10,398 | -18% | 1 | 1 | 0% | 1,789 | 3,364 | +88% | 0 | 0 | — |
case-10 | fail→fail | 7,181 | 9,336 | +30% | 1 | 1 | 0% | 1,096 | 3,148 | +187% | 0 | 0 | — |
case-11 | fail→pass | 7,563 | 12,166 | +61% | 1 | 1 | 0% | 991 | 3,371 | +240% | 0 | 0 | — |
case-12 | fail→pass | 8,678 | 8,234 | -5% | 1 | 1 | 0% | 1,385 | 2,903 | +110% | 0 | 0 | — |
case-13 | pass→pass | 16,142 | 14,748 | -9% | 1 | 1 | 0% | 2,247 | 3,730 | +66% | 0 | 0 | — |
case-14 | pass→pass | 15,528 | 17,081 | +10% | 1 | 1 | 0% | 2,274 | 4,194 | +84% | 0 | 0 | — |
case-15 | pass→pass | 7,852 | 7,354 | -6% | 1 | 1 | 0% | 1,299 | 2,932 | +126% | 0 | 0 | — |
case-16 | fail→pass | 7,690 | 3,308 | -57% | 1 | 1 | 0% | 1,156 | 2,146 | +86% | 0 | 0 | — |
case-18 | fail→pass | 14,152 | 5,743 | -59% | 1 | 1 | 0% | 2,142 | 2,556 | +19% | 0 | 0 | — |
case-19 | pass→pass | 9,811 | 7,233 | -26% | 1 | 1 | 0% | 1,555 | 2,777 | +79% | 0 | 0 | — |
case-20 | pass→pass | 10,948 | 9,627 | -12% | 1 | 1 | 0% | 1,648 | 2,968 | +80% | 0 | 0 | — |
case-21 | pass→pass | 17,425 | 22,671 | +30% | 1 | 1 | 0% | 2,504 | 5,113 | +104% | 0 | 0 | — |
case-22 | fail→pass | 8,715 | 2,671 | -69% | 1 | 1 | 0% | 1,365 | 2,086 | +53% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +32 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.