Agent Skills: Fireflies.ai Debug Bundle

|

UncategorizedID: jeremylongshore/claude-code-plugins-plus-skills/fireflies-debug-bundle

Install this agent skill to your local

pnpm dlx add-skill https://github.com/jeremylongshore/claude-code-plugins-plus-skills/tree/HEAD/plugins/saas-packs/fireflies-pack/skills/fireflies-debug-bundle

Skill Files

Browse the full folder contents for fireflies-debug-bundle.

Download Skill

Loading file tree…

plugins/saas-packs/fireflies-pack/skills/fireflies-debug-bundle/SKILL.md

Skill Metadata

Name
fireflies-debug-bundle
Description
|

Fireflies.ai Debug Bundle

Current State

!node --version 2>/dev/null || echo 'N/A' !python3 --version 2>/dev/null || echo 'N/A'

Overview

Collect all diagnostic information needed to resolve Fireflies.ai integration issues. Generates a redacted bundle safe for sharing with support.

Prerequisites

  • FIREFLIES_API_KEY environment variable set
  • curl and jq available
  • Permission to collect environment info

Instructions

Step 1: Create Debug Bundle Script

#!/bin/bash
set -euo pipefail

BUNDLE_DIR="fireflies-debug-$(date +%Y%m%d-%H%M%S)"
mkdir -p "$BUNDLE_DIR"

echo "=== Fireflies.ai Debug Bundle ===" > "$BUNDLE_DIR/summary.txt"
echo "Generated: $(date -u +%Y-%m-%dT%H:%M:%SZ)" >> "$BUNDLE_DIR/summary.txt"
echo "" >> "$BUNDLE_DIR/summary.txt"

# 1. Environment
echo "--- Environment ---" >> "$BUNDLE_DIR/summary.txt"
echo "Node: $(node --version 2>/dev/null || echo 'N/A')" >> "$BUNDLE_DIR/summary.txt"
echo "Python: $(python3 --version 2>/dev/null || echo 'N/A')" >> "$BUNDLE_DIR/summary.txt"
echo "OS: $(uname -s) $(uname -r)" >> "$BUNDLE_DIR/summary.txt"
echo "API Key: ${FIREFLIES_API_KEY:+SET (${#FIREFLIES_API_KEY} chars)}" >> "$BUNDLE_DIR/summary.txt"
echo "" >> "$BUNDLE_DIR/summary.txt"

# 2. API Connectivity
echo "--- API Connectivity ---" >> "$BUNDLE_DIR/summary.txt"
curl -s -o "$BUNDLE_DIR/api-response.json" -w "HTTP %{http_code} | %{time_total}s\n" \
  -X POST https://api.fireflies.ai/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIREFLIES_API_KEY" \
  -d '{"query": "{ user { name email is_admin } }"}' \
  >> "$BUNDLE_DIR/summary.txt" 2>&1

# 3. User & Plan Info
echo "" >> "$BUNDLE_DIR/summary.txt"
echo "--- Account Info ---" >> "$BUNDLE_DIR/summary.txt"
curl -s -X POST https://api.fireflies.ai/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIREFLIES_API_KEY" \
  -d '{"query": "{ user { name email is_admin num_transcripts minutes_consumed is_calendar_in_sync integrations } }"}' \
  | jq '.data.user | {name, is_admin, transcripts: .num_transcripts, minutes: .minutes_consumed, calendar_sync: .is_calendar_in_sync}' \
  >> "$BUNDLE_DIR/summary.txt" 2>/dev/null

# 4. Recent Transcripts (metadata only)
echo "" >> "$BUNDLE_DIR/summary.txt"
echo "--- Recent Transcripts (last 5) ---" >> "$BUNDLE_DIR/summary.txt"
curl -s -X POST https://api.fireflies.ai/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIREFLIES_API_KEY" \
  -d '{"query": "{ transcripts(limit: 5) { id title date duration organizer_email } }"}' \
  | jq '.data.transcripts[]? | {id, title, date, duration}' \
  >> "$BUNDLE_DIR/summary.txt" 2>/dev/null

# 5. GraphQL package versions
echo "" >> "$BUNDLE_DIR/summary.txt"
echo "--- Dependencies ---" >> "$BUNDLE_DIR/summary.txt"
npm list graphql graphql-request 2>/dev/null >> "$BUNDLE_DIR/summary.txt" || echo "No npm packages found" >> "$BUNDLE_DIR/summary.txt"
pip freeze 2>/dev/null | grep -i "request\|graphql" >> "$BUNDLE_DIR/summary.txt" || true

# 6. Config (redacted)
echo "" >> "$BUNDLE_DIR/summary.txt"
echo "--- Config (redacted) ---" >> "$BUNDLE_DIR/summary.txt"
if [ -f .env ]; then
  cat .env | sed 's/=.*/=***REDACTED***/' >> "$BUNDLE_DIR/config-redacted.txt"
fi

# Package
tar -czf "$BUNDLE_DIR.tar.gz" "$BUNDLE_DIR"
rm -rf "$BUNDLE_DIR"
echo "Bundle created: $BUNDLE_DIR.tar.gz"

Step 2: Quick Health Check

set -euo pipefail
echo "=== Fireflies Quick Health Check ==="

# Auth
echo -n "Auth: "
curl -s -X POST https://api.fireflies.ai/graphql \
  -H "Authorization: Bearer $FIREFLIES_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query": "{ user { email } }"}' | jq -r '.data.user.email // .errors[0].message'

# Calendar sync
echo -n "Calendar: "
curl -s -X POST https://api.fireflies.ai/graphql \
  -H "Authorization: Bearer $FIREFLIES_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query": "{ user { is_calendar_in_sync } }"}' | jq -r '.data.user.is_calendar_in_sync'

# Recent meeting
echo -n "Last meeting: "
curl -s -X POST https://api.fireflies.ai/graphql \
  -H "Authorization: Bearer $FIREFLIES_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query": "{ transcripts(limit: 1) { title date } }"}' | jq -r '.data.transcripts[0] | "\(.title) (\(.date))"'

Sensitive Data Handling

ALWAYS REDACT before sharing:

  • API keys and tokens
  • Meeting content and transcripts
  • Attendee emails and names
  • PII in action items

Safe to include:

  • Error codes and messages
  • HTTP status codes and latency
  • Package versions
  • Account metadata (admin status, transcript count)

Error Handling

| Item | Purpose | Included | |------|---------|----------| | API connectivity | Is the endpoint reachable? | HTTP status + latency | | Auth check | Is the API key valid? | User email or error code | | Calendar sync | Is the bot getting invites? | Boolean sync status | | Recent transcripts | Is processing working? | Metadata only (no content) | | Dependencies | Version conflicts? | Package versions |

Output

  • fireflies-debug-YYYYMMDD-HHMMSS.tar.gz archive with:
    • summary.txt -- environment, connectivity, account info
    • api-response.json -- raw API response
    • config-redacted.txt -- configuration with secrets masked

Resources

Next Steps

For rate limit issues, see fireflies-rate-limits.