Claude-skill-registry fieldy-analysis
Analyze Field Labs coaching transcription data, calculate session metrics, and generate daily summaries. Use for processing Fieldy voice transcriptions and creating coaching reports.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/fieldy-analysis" ~/.claude/skills/majiayu000-claude-skill-registry-fieldy-analysis && rm -rf "$T"
skills/data/fieldy-analysis/SKILL.mdFieldy Analysis
Process and analyze Field Labs coaching transcription data to generate daily email summaries.
Quick Start
Analyze today's Fieldy data:
python scripts/analyze_fieldy.py data/fieldy/fieldy_2026-01-04.json
Generate daily summary:
python scripts/generate_fieldy_summary.py data/fieldy/fieldy_2026-01-04.json --output summary.json
Data Structure
Input Format (fieldy_YYYY-MM-DD.json)
{ "date": "2026-01-04", "transcriptions": [ { "timestamp": "2026-01-04T10:30:00.000000+00:00", "transcription": "Full text of the transcription...", "transcriptions": [ { "text": "Individual sentence or phrase", "speaker": "Unknown", "start": 0.704, "end": 7.184, "duration": null } ], "metadata": { "ip_address": "192.168.1.1", "user_agent": "python-httpx/0.28.1", "received_at": "2026-01-04T10:30:00.000000" } } ] }
Metrics to Calculate
Session Metrics
-
Total Sessions
- Count of transcription entries for the day
- Each entry = one coaching session/call
-
Total Duration
- Calculate from start/end times of transcription segments
- Sum of all segment durations
-
Average Session Length
- Total duration / number of sessions
- Measured in minutes
-
Session Timeline
- Timestamps of each session
- Distribution throughout the day
Content Metrics
-
Total Words
- Word count across all transcriptions
- Indicates session depth/engagement
-
Average Words per Session
- Total words / number of sessions
-
Speakers
- Identify unique speakers (if available)
- Track multi-speaker sessions
-
Topics/Keywords
- Extract common topics from transcriptions
- Identify coaching themes
Analysis Scripts
analyze_fieldy.py
Analyze Fieldy transcription data and calculate metrics.
Usage:
python scripts/analyze_fieldy.py input.json --output analysis.json
Output:
{ "date": "2026-01-04", "summary": { "total_sessions": 12, "total_duration_minutes": 145.3, "avg_session_minutes": 12.1, "total_words": 5234, "avg_words_per_session": 436, "first_session": "2026-01-04T08:15:00", "last_session": "2026-01-04T17:45:00" }, "sessions": [ { "timestamp": "2026-01-04T08:15:00", "duration_minutes": 8.5, "word_count": 342, "segment_count": 15 } ] }
generate_fieldy_summary.py
Generate formatted summary for daily email report.
Usage:
python scripts/generate_fieldy_summary.py input.json \ --output summary.json \ --format report
Output (report format):
{ "title": "Fieldy Daily Summary", "subtitle": "Friday, January 4, 2026", "metrics": [ { "label": "Total Sessions", "value": "12", "trend": "up", "change": "+2" }, { "label": "Total Duration", "value": "145 min", "trend": "up", "change": "+15 min" }, { "label": "Avg Session Length", "value": "12.1 min", "trend": "neutral" } ], "sections": [ { "title": "Session Timeline", "type": "timeline", "data": { "events": [...] } } ] }
extract_insights.py
Extract key topics and insights from transcriptions using text analysis.
Usage:
python scripts/extract_insights.py input.json --top-keywords 10
Features:
- Keyword frequency analysis
- Topic clustering
- Sentiment indicators
- Common phrases
Report Templates
Daily Email Summary
Standard format for daily Fieldy email:
Subject: Fieldy Daily Summary - [Date]
Content:
- Total sessions count
- Total duration in minutes
- Average session length
- Session timeline (first/last session times)
- Notable keywords or topics (if available)
Weekly Rollup
Aggregate metrics for the week:
- Sessions per day
- Trend analysis (increasing/decreasing)
- Busiest day
- Total weekly duration
Integration with Agents
Fieldy Agent Workflow
# 1. Read today's Fieldy data fieldy_file = f"data/fieldy/fieldy_{today}.json" # 2. Analyze with fieldy-analysis skill python scripts/analyze_fieldy.py {fieldy_file} --output analysis.json # 3. Generate summary for report python scripts/generate_fieldy_summary.py analysis.json --format report # 4. Use report-generation skill to create HTML python ../report-generation/scripts/generate_html_report.py \ summary.json --template daily-summary --output fieldy_report.html # 5. Delegate to communication-agent to send email task(agent="communication-agent", prompt=f"Send fieldy_report.html to dave+mega@flycowgames.com")
Reporting Agent Integration
For weekly reports combining Fieldy with other metrics:
# Aggregate week's Fieldy data fieldy_weekly = aggregate_fieldy_week(start_date, end_date) # Combine with GitHub, Skillz, etc. combined_report = { "fieldy": fieldy_weekly, "github": github_weekly, "skillz": skillz_weekly } # Generate comprehensive weekly report python ../report-generation/scripts/generate_html_report.py \ combined_report.json --template weekly-summary
Data Quality
Validation Checks
-
Missing Data
- Check for empty transcriptions
- Validate timestamp format
- Ensure duration calculations are positive
-
Outliers
- Flag sessions > 60 minutes (likely errors)
- Flag sessions < 1 minute (incomplete)
- Check for duplicate timestamps
-
Completeness
- Verify all required fields present
- Check transcriptions array not empty
- Validate metadata structure
Scheduling
The Fieldy Agent runs daily at:
- Time: 11:00 AM UTC (3:00 AM PT)
- Trigger: systemd timer (daily-fieldy-email.timer)
- Recipients: dave+mega@flycowgames.com
Tips
-
Duration Calculation
- Use segment start/end times when available
- Fall back to word count estimation (150 words/min)
- Handle missing duration gracefully
-
Timezone Handling
- Fieldy timestamps are in UTC
- Convert to PT for email display
- Ensure date boundaries are correct
-
Error Handling
- Handle missing files gracefully
- Continue processing if one session fails
- Log errors for debugging
-
Performance
- Cache parsed data to avoid re-parsing
- Process sessions in parallel if many
- Limit keyword extraction to top N
Example Daily Report
Fieldy Daily Summary Friday, January 4, 2026 Summary: ✓ 12 total coaching sessions ✓ 145 minutes total duration ✓ 12.1 minutes average session length Timeline: • First session: 8:15 AM PT • Last session: 5:45 PM PT • Most active period: 2:00 PM - 4:00 PM Top Keywords: • technique (45 mentions) • training (38 mentions) • form (32 mentions) • practice (28 mentions)
Reference
- Fieldy data location:
data/fieldy/fieldy_YYYY-MM-DD.json - Archive location:
(optional)data/fieldy/archive/ - Report recipients: See
config/email_accounts.json