Agent skill
metrics-dashboard
Tracks pipeline velocity, success rates, and cycle times. Use to view performance metrics, identify bottlenecks, and generate reports.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/metrics-dashboard
SKILL.md
Metrics Dashboard
Aggregates pipeline run data to track velocity, success rates, and identify improvement areas.
Data Sources
runs/*/status.json- Phase timestamps, success/failureruns/*/ticket.json- Ticket metadata- Git history - Commit and PR data
- Notion - Ticket status transitions
Workflow
1. Collect Run Data
find runs/ -name "status.json" -type f | while read f; do
jq -c '{
id: .ticketId,
status: .status,
started: .intakeAt,
completed: .completedAt,
phases: .phaseTimestamps
}' "$f"
done > /tmp/runs-data.jsonl
2. Calculate Metrics
Cycle Time:
jq -s '
map(select(.completed != null)) |
map(.cycleTime = ((.completed | fromdate) - (.started | fromdate)) / 3600) |
{
avgCycleTimeHours: (map(.cycleTime) | add / length),
minCycleTimeHours: (map(.cycleTime) | min),
maxCycleTimeHours: (map(.cycleTime) | max)
}
' /tmp/runs-data.jsonl
Success Rate:
jq -s '{
total: length,
completed: (map(select(.status == "done")) | length),
failed: (map(select(.status == "failed")) | length),
inProgress: (map(select(.status | test("^(implementing|review|pr-created)$"))) | length)
} | .successRate = (.completed / .total * 100)' /tmp/runs-data.jsonl
Phase Duration:
jq -s '
map(.phases) | flatten | group_by(.phase) |
map({phase: .[0].phase, avgMinutes: (map(.durationSeconds) | add / length / 60)})
' /tmp/runs-data.jsonl
3. Generate Dashboard
# Pipeline Metrics Dashboard
**Period:** Last 30 days | **Generated:** {timestamp}
## Summary
| Metric | Value | Trend |
| ----------------- | ------- | ---------- |
| Tickets Completed | 12 | ↑ +3 |
| Success Rate | 83% | ↑ +5% |
| Avg Cycle Time | 2.5 hrs | ↓ -0.5 hrs |
## Cycle Time Breakdown
Intake ████ 5 min | Research ████████ 15 min | Planning ██████ 10 min
Implement █████████████ 25 min | Quality ████ 8 min | Review ██████ 12 min
## Success by Type
| Type | Count | Success | Avg Time |
| -------- | ----- | ------- | -------- |
| Bug Fix | 5 | 100% | 1.2 hrs |
| Feature | 4 | 75% | 3.5 hrs |
| Refactor | 3 | 67% | 2.8 hrs |
## Failure Analysis
| Failure Point | Count | % |
| ---------------- | ----- | --- |
| Quality gates | 2 | 40% |
| CI failures | 1 | 20% |
| Review rejection | 1 | 20% |
## Recommendations
1. **Reduce implementation time** - Consider more parallel subagents
2. **Improve quality gates** - 40% of failures at this stage
4. Save Dashboard
echo "$DASHBOARD" > "$RUN_DIR/../metrics-$(date +%Y-%m-%d).md"
cat > runs/metrics-summary.json << EOF
{"generatedAt": "$(date -Iseconds)", "period": "30d", "totalRuns": $TOTAL, "successRate": $SUCCESS_RATE, "avgCycleTimeHours": $AVG_CYCLE}
EOF
# Append to history
jq -c '{date: now | strftime("%Y-%m-%d"), metrics: .}' runs/metrics-summary.json >> runs/metrics-history.jsonl
Custom Queries
# Tickets by assignee
jq -s 'group_by(.assignee) | map({assignee: .[0].assignee, count: length})' /tmp/runs-data.jsonl
# Slowest tickets
jq -s 'sort_by(.cycleTime) | reverse | .[0:5]' /tmp/runs-data.jsonl
# Failed at phase
jq -s 'map(select(.status == "failed")) | group_by(.failedAtPhase)' /tmp/runs-data.jsonl
Notion Integration (Optional)
Prompt user before syncing metrics to Notion.
Output Artifacts
| File | Location | Description |
|---|---|---|
| metrics-{date}.md | runs/ |
Point-in-time dashboard |
| metrics-summary.json | runs/ |
Latest metrics JSON |
| metrics-history.jsonl | runs/ |
Historical trends |
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?