Skip to content
alyn
davidondrej

Fireflies Transcript skill

Fetch raw Fireflies.ai meeting transcripts. Use only when the user explicitly invokes /fireflies-transcript; for YouTube, use youtube-transcript.

$npx skills add davidondrej/skills --skill fireflies-transcript
View this skill on GitHubdavidondrej/skills/skills/fireflies-transcript/SKILL.md
Pack stars
4,291
Pack installs
10k
Alyn Score
61/99
Updated
2 h ago
License
MIT
– views – installs via Alyn

davidondrej

Fireflies Transcript

Install Fireflies Transcript

Pick your agent. Every command is ready to paste.

$npx skills add davidondrej/skills --skill fireflies-transcript

The open skills CLI detects your agents (Claude Code, Cursor, Codex and 70+ more) and installs to the right folder. Add -g to install globally.

01

Install it

Run the command above, or upload the folder in Claude.

02

Ask naturally

Describe the task. Your agent loads fireflies-transcript when the request matches its description.

03

Name it if needed

If it does not trigger, say “use the fireflies-transcript skill”. In Codex, type $fireflies-transcript.

The skill itself

SKILL.md

FolderGitHub

Fireflies Transcript

Fetch any meeting transcript from Fireflies.ai as raw text via GraphQL. Read-only.

Auth (state-check first)

The API key lives in ~/.fireflies/env (mode 600, never commit or print it):

source ~/.fireflies/env   # exports FIREFLIES_API_KEY
[ -n "$FIREFLIES_API_KEY" ] || echo "MISSING KEY - stop and tell the user"

Every call is a POST to https://api.fireflies.ai/graphql with Authorization: Bearer $FIREFLIES_API_KEY and a JSON body {"query": "..."}.

Step 1 - find the meeting id

curl -sS -X POST https://api.fireflies.ai/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIREFLIES_API_KEY" \
  -d '{"query":"{ transcripts(limit: 25) { id title date duration } }"}' \
  | jq -r '.data.transcripts[] | "\(.id) | \(.title) | \(.date)"'
  • date is epoch milliseconds. Convert on macOS: date -r $((1784127600000/1000)).
  • The transcripts(title:) filter is EXACT-match — it returns [] for partial names. List recent meetings and grep locally instead.
  • Ad-hoc meetings have no proper title (e.g. Untitled - Wed, 15 Jul 2026 17:00:55 CEST). Identify those by date/time, then confirm via content or speakers, not the title.
  • Paginate older meetings with skip: (e.g. transcripts(limit: 50, skip: 25)).

Step 2 - pull the raw transcript

QUERY='{ transcript(id: "MEETING_ID") { title sentences { speaker_name text } } }'
curl -sS -X POST https://api.fireflies.ai/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIREFLIES_API_KEY" \
  -d "$(jq -nc --arg query "$QUERY" '{query: $query}')" \
  > /tmp/ff.json

# speaker-labeled raw text (usual deliverable)
jq -r '.data.transcript.sentences[] | "\(.speaker_name): \(.text)"' /tmp/ff.json

# bare text only
jq -r '.data.transcript.sentences[].text' /tmp/ff.json

Transcripts run to hundreds of sentences — save to a file, never dump to stdout/chat.

Optional extras on the same transcript(id:) query: summary { overview short_summary keywords }, participants, duration, meeting_link.

Failure modes

  • sentences: null — recording still processing or no audio captured; nothing to pull.
  • errors[] in the response instead of data — usually a bad field name; fix the query.
  • 401/invalid key — key was rotated; ask the user for a new one (Fireflies dashboard: Settings -> Developer settings), update ~/.fireflies/env.

Verify before reporting done

A pull is successful only if the sentence count is > 0 and the speakers/topic match the meeting the user asked about — check the first few lines, don't trust the title alone.

Tips for Fireflies Transcript

  • • Start a fresh session after installing so your agent picks up the new skill.
  • • It is part of a pack with 30 skills. Install only the ones you need with --skill to keep triggers precise.
  • • If two skills overlap, mention the one you want by name.

Questions about Fireflies Transcript

What does the Fireflies Transcript skill do?

Fetch raw Fireflies.ai meeting transcripts. Use only when the user explicitly invokes /fireflies-transcript; for YouTube, use youtube-transcript.

How do I install Fireflies Transcript?

Run "npx skills add davidondrej/skills --skill fireflies-transcript" in your project. The skills CLI installs it for Claude Code, Cursor, Codex and 70+ other agents. In Claude on the web, upload the skill folder as a ZIP under Customize > Skills.

Does Fireflies Transcript work in Cursor and Codex?

Yes. Fireflies Transcript uses the open SKILL.md format, so it works in Claude Code, Claude, Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot and other agents that support agent skills.

Is Fireflies Transcript free?

Fireflies Transcript is open source on GitHub under the MIT license. It is free to install; check the license before commercial use.

Who made Fireflies Transcript?

Fireflies Transcript is published by davidondrej in the davidondrej/skills repository, together with 29 other skills.

Similar skills. From other creators.