calumjs

process-transcript

3
2
# Install this skill:
npx skills add calumjs/ClaudeCode.MeetingSummariser --skill "process-transcript"

Install specific skill from multi-skill repository

# Description

Process a VTT transcript into a comprehensive, multi-tab HTML dashboard using specialized analysis agents. Use when the user provides a .vtt file, has a transcript to process, or mentions a meeting recording. This is the PRIMARY skill for handling transcripts.

# SKILL.md


name: process-transcript
description: Process a VTT transcript into a comprehensive, multi-tab HTML dashboard using specialized analysis agents. Use when the user provides a .vtt file, has a transcript to process, or mentions a meeting recording. This is the PRIMARY skill for handling transcripts.
allowed-tools: Read, Write, Bash, Glob


Process Transcript to Dashboard (Advanced)

Convert a .vtt meeting transcript into a comprehensive, deployed HTML dashboard using multiple specialized analyzers.

CRITICAL: What This Skill Does

  1. βœ… Orchestrates 6 specialized analysis agents
  2. βœ… Runs consolidation to ensure consistency
  3. βœ… Creates a multi-tab HTML dashboard with rich insights
  4. βœ… Deploys to surge.sh
  5. βœ… Returns a public URL

NEVER DO

  • ❌ Create markdown (.md) files
  • ❌ Skip any analysis phase
  • ❌ Skip the consolidation step
  • ❌ Generate a simple single-page summary
  • ❌ Skip the deployment

Pipeline Steps

Step 1: Setup

  • Determine project name and date
  • Create folder structure
  • Copy transcript to projects/{project}/transcripts/{date}.vtt

Step 2: Run Analysis Agents (IN PARALLEL if possible)

Delegate to each specialized agent in .claude/agents/:

  1. timeline-analyzer β†’ analysis/timeline.json
  2. Identifies meeting segments (review, retro, planning)
  3. Creates timeline with timestamps and summaries

  4. people-analyzer β†’ analysis/people.json

  5. Analyzes each participant's contributions
  6. Calculates speaking time vs. value contributed
  7. Provides constructive feedback

  8. insights-generator β†’ analysis/insights.json

  9. Finds non-obvious patterns and observations
  10. Identifies risks, opportunities, team health signals
  11. Generates ad-hoc creative insights

  12. analytics-generator β†’ analysis/analytics.json

  13. Produces data-driven metrics and statistics
  14. Creates chart-ready data
  15. Calculates efficiency scores

  16. longitudinal-analyzer β†’ analysis/longitudinal.json

  17. Compares with previous meetings (if available)
  18. Identifies trends and patterns over time
  19. Tracks improvement and recurring issues

  20. scrum-analyzer β†’ analysis/scrum.json

  21. Analyzes scrum methodology compliance and ceremony effectiveness
  22. Evaluates scrum role fulfillment (PO, SM, Dev Team)
  23. Identifies scrum anti-patterns and health metrics
  24. Provides agile coaching recommendations

Step 3: CONSOLIDATION (Critical Quality Step)

Run the consolidator agent to:

  1. Normalize names
  2. Create canonical name mapping
  3. If "Alice" is identified as "Product Owner", use "Alice" everywhere
  4. Replace role references with actual names where known

  5. Cross-reference validation

  6. Verify consistency between agent outputs
  7. Resolve metric discrepancies
  8. Link action items to owners

  9. Deduplicate

  10. Remove redundant insights
  11. Merge duplicate action items
  12. Consolidate repeated quotes

  13. Enrich data

  14. Connect decisions to timeline segments
  15. Link insights to relevant participants
  16. Add IDs for cross-referencing

  17. Quality check

  18. Flag unidentified participants
  19. Note action items without owners
  20. Document all changes made

Output: analysis/consolidated.json

Step 4: Generate Multi-Tab Dashboard

Create projects/{project}/dashboards/{date}/index.html using the consolidated data:

Tab 1: Overview

  • Meeting summary
  • Key decisions (with timeline refs)
  • Action items with owners (canonical names)
  • Quick stats

Tab 2: Timeline

  • Visual timeline of meeting segments
  • Duration bars
  • Key moments highlighted
  • Participants (by canonical name)
  • Energy level indicators

Tab 3: People & Roles

  • Participant cards (canonical names with roles as subtitle)
  • Speaking time visualization
  • Value contribution ratings
  • Strengths and feedback for each person
  • Team dynamics summary

Tab 4: Insights

  • Ad-hoc observations
  • Risk signals
  • Opportunity spotting
  • Team health indicators
  • Notable quotes (attributed to canonical names)

Tab 5: Analytics

  • Charts and graphs (using Chart.js)
  • Time breakdown pie chart
  • Participation bar chart (canonical names)
  • Sentiment analysis
  • Efficiency scores
  • Week-over-week comparisons
  • Recurring themes
  • Improvement tracking
  • Trajectory visualizations

Step 5: Deploy to Surge.sh

cd projects/{project}/dashboards/{date}
surge . {project}-{date}.surge.sh

Step 6: Report Success

βœ“ Analysis complete:
  - Timeline: 5 segments identified
  - People: 6 participants analyzed  
  - Insights: 8 observations generated
  - Analytics: 12 metrics calculated
  - Trends: Compared with 3 previous meetings
  - Scrum: 3 ceremonies analyzed, 2 anti-patterns detected

βœ“ Consolidation:
  - Normalized 12 name references
  - Merged 2 duplicate action items
  - Identified 2 unidentified speakers
  - Quality score: 92/100

βœ“ Dashboard generated: projects/{project}/dashboards/{date}/index.html
βœ“ Deployed to: https://{project}-{date}.surge.sh

File Structure

projects/{project}/
β”œβ”€β”€ transcripts/{date}.vtt
β”œβ”€β”€ analysis/
β”‚   β”œβ”€β”€ timeline.json          # From timeline-analyzer
β”‚   β”œβ”€β”€ people.json            # From people-analyzer
β”‚   β”œβ”€β”€ insights.json          # From insights-generator
β”‚   β”œβ”€β”€ analytics.json         # From analytics-generator
β”‚   β”œβ”€β”€ longitudinal.json      # From longitudinal-analyzer
β”‚   β”œβ”€β”€ scrum.json            # From scrum-analyzer
β”‚   └── consolidated.json      # From consolidator (USED FOR DASHBOARD)
└── dashboards/{date}/
    └── index.html             # THE DELIVERABLE

Dashboard Quality Standards

The dashboard should be:
- Consistent - Same names/terms throughout all tabs
- Beautiful - Modern, polished design with Tailwind CSS
- Interactive - Tabs, hover effects, expandable sections
- Data-rich - Charts, metrics, visualizations
- Actionable - Clear next steps and recommendations
- Insightful - Goes beyond obvious observations
- Human - Recognizes individual contributions by name

Technology Stack

  • Tailwind CSS (CDN) - Styling
  • Chart.js (CDN) - Data visualizations
  • Alpine.js (CDN) - Tab interactivity
  • Vanilla JS - Additional interactions

Consolidation Examples

Name Normalization

BEFORE (inconsistent):
- Timeline: "Product Owner presented..."
- People: "Alice spoke for 15 minutes..."
- Action Items: "PO to follow up..."

AFTER (consolidated):
- Timeline: "Alice (Product Owner) presented..."
- People: "Alice spoke for 15 minutes..."
- Action Items: "Alice to follow up..."

Cross-Reference

BEFORE (disconnected):
- Decision: "Decided to postpone feature X"
- Timeline: Segment 3 mentions postponement
- Person: Bob raised the concern

AFTER (connected):
- Decision: "Decided to postpone feature X" 
  - Decided during: Segment 3 (Sprint Planning)
  - Raised by: Bob
  - Related insight: Technical debt concern #2

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.