fireflies-core-workflow-b
Advanced workflow for interacting with meeting transcripts and generating data-driven insights.
Install
mkdir -p .claude/skills/fireflies-core-workflow-b && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/5322" && unzip -o skill.zip -d .claude/skills/fireflies-core-workflow-b && rm skill.zipInstalls to .claude/skills/fireflies-core-workflow-b
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Search across Fireflies.ai transcripts, use AskFred AI, and build meetingKey capabilities
- →Search transcripts using keyword and date filters
- →Query meeting content via AskFred AI
- →Aggregate meeting analytics for reporting
- →Manage AskFred conversation threads
- →Calculate total meeting duration and action items
How it works
It executes GraphQL queries to filter transcript metadata and uses AskFred mutation endpoints to perform natural language Q&A over meeting content.
Inputs & outputs
When to use fireflies-core-workflow-b
- →Searching meeting history
- →Querying AskFred AI assistant
- →Aggregating meeting data for reports
About this skill
Fireflies.ai Core Workflow B -- Search, AskFred & Analytics
Overview
Secondary workflow: search across transcripts with keyword and date filters, use AskFred AI for natural language Q&A over meetings, and aggregate meeting analytics for reporting.
Prerequisites
- Completed
fireflies-install-authsetup - Familiarity with
fireflies-core-workflow-a - AI credits for AskFred queries (check Fireflies dashboard)
Instructions
Step 1: Search Transcripts by Keyword
const SEARCH_TRANSCRIPTS = `
query SearchMeetings(
$keyword: String,
$fromDate: DateTime,
$toDate: DateTime,
$participants: [String],
$limit: Int
) {
transcripts(
keyword: $keyword
fromDate: $fromDate
toDate: $toDate
participants: $participants
limit: $limit
) {
id title date duration
organizer_email
participants
summary { overview action_items keywords }
}
}
`;
// Search for "quarterly review" in the last 30 days
const results = await firefliesQuery(SEARCH_TRANSCRIPTS, {
keyword: "quarterly review",
fromDate: new Date(Date.now() - 30 * 86400000).toISOString(),
limit: 20,
});
console.log(`Found ${results.transcripts.length} matching meetings`);
for (const t of results.transcripts) {
console.log(` ${t.title} (${t.date}) - ${t.duration}min`);
}
Step 2: AskFred -- AI Q&A Over a Single Meeting
// Create a new AskFred thread tied to a transcript
const CREATE_THREAD = `
mutation CreateThread($input: CreateAskFredThreadInput!) {
createAskFredThread(input: $input) {
id
title
messages {
id
answer
suggested_queries
}
}
}
`;
const thread = await firefliesQuery(CREATE_THREAD, {
input: {
query: "What were the key decisions made in this meeting?",
transcript_id: "your-transcript-id",
},
});
console.log("Fred says:", thread.createAskFredThread.messages[0].answer);
console.log("Suggested follow-ups:", thread.createAskFredThread.messages[0].suggested_queries);
Step 3: AskFred -- Continue a Conversation
const CONTINUE_THREAD = `
mutation ContinueThread($thread_id: String!, $query: String!) {
continueAskFredThread(thread_id: $thread_id, query: $query) {
id
answer
suggested_queries
}
}
`;
const followUp = await firefliesQuery(CONTINUE_THREAD, {
thread_id: thread.createAskFredThread.id,
query: "Who is responsible for the action items?",
});
console.log("Follow-up:", followUp.continueAskFredThread.answer);
Step 4: AskFred -- Cross-Meeting Analysis
// Query across multiple meetings (no transcript_id = searches all)
const crossMeeting = await firefliesQuery(CREATE_THREAD, {
input: {
query: "What topics came up repeatedly across our sprint planning meetings?",
// filters can narrow scope without tying to a single transcript
},
});
Step 5: Meeting Analytics Aggregation
async function meetingAnalytics(days: number = 30) {
const since = new Date(Date.now() - days * 86400000).toISOString();
const data = await firefliesQuery(`
query Analytics($fromDate: DateTime) {
transcripts(fromDate: $fromDate, limit: 100) {
id title date duration
organizer_email participants
summary { action_items keywords }
analytics {
speakers { name duration word_count questions }
sentiments { positive_pct negative_pct }
}
}
}
`, { fromDate: since });
const meetings = data.transcripts;
const totalMinutes = meetings.reduce((s: number, m: any) => s + (m.duration || 0), 0);
const totalActions = meetings.reduce(
(s: number, m: any) => s + (m.summary?.action_items?.length || 0), 0
);
// Top keywords across all meetings
const keywordCounts: Record<string, number> = {};
for (const m of meetings) {
for (const kw of m.summary?.keywords || []) {
keywordCounts[kw] = (keywordCounts[kw] || 0) + 1;
}
}
const topKeywords = Object.entries(keywordCounts)
.sort((a, b) => b[1] - a[1])
.slice(0, 10);
return {
period: `${days} days`,
totalMeetings: meetings.length,
totalHours: (totalMinutes / 60).toFixed(1),
totalActionItems: totalActions,
avgDuration: Math.round(totalMinutes / meetings.length),
topKeywords,
};
}
Step 6: List and Manage AskFred Threads
// List all threads
const threads = await firefliesQuery(`{
askfred_threads {
id title transcript_id created_at
}
}`);
// Delete a thread (cleanup)
await firefliesQuery(`
mutation DeleteThread($id: String!) {
deleteAskFredThread(thread_id: $id)
}
`, { id: "thread-id-to-delete" });
AskFred Credits
AskFred API calls consume AI credits. If you receive require_ai_credits, visit the Upgrade section in your Fireflies dashboard to add credits. Budget accordingly for production use.
Error Handling
| Error | Cause | Solution |
|---|---|---|
require_ai_credits | No AI credits remaining | Purchase credits in Fireflies dashboard |
| Empty search results | No matching transcripts | Broaden keyword or date range |
| Thread not found | Invalid thread ID | List threads first to get valid IDs |
| Rate limit 429 | Too many requests | Implement backoff per fireflies-rate-limits |
Output
- Keyword search results across transcript history
- AskFred AI-powered Q&A threads with suggested follow-ups
- Cross-meeting analytics report with keyword trends
Resources
Next Steps
For common errors, see fireflies-common-errors.
When not to use it
- →When performing administrative workspace management
- →When the primary goal is simple transcript retrieval without analysis
Prerequisites
Limitations
- →AskFred queries consume AI credits
- →Search results depend on transcript availability
How it compares
This workflow automates cross-meeting analysis and data aggregation that would otherwise require manual review of individual transcripts.
Compared to similar skills
fireflies-core-workflow-b side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| fireflies-core-workflow-b (this skill) | 1 | 25d | Review | Intermediate |
| korean-public-data-api | 5 | 9mo | No flags | Intermediate |
| apollo-data-handling | 1 | 25d | Caution | Intermediate |
| azure-ai-contentunderstanding-py | 1 | 27d | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by jeremylongshore
View all by jeremylongshore →You might also like
korean-public-data-api
swszz
Extract API request/response schema from Korean Public Data Portal (data.go.kr) documentation pages and generate structured JSON representation
apollo-data-handling
jeremylongshore
Apollo.io data management and compliance. Use when handling contact data, implementing GDPR compliance, or managing data exports and retention. Trigger with phrases like "apollo data", "apollo gdpr", "apollo compliance", "apollo data export", "apollo data retention", "apollo pii".
azure-ai-contentunderstanding-py
microsoft
Azure AI Content Understanding SDK for Python. Use for multimodal content extraction from documents, images, audio, and video. Triggers: "azure-ai-contentunderstanding", "ContentUnderstandingClient", "multimodal analysis", "document extraction", "video analysis", "audio transcription".
azure-ai-document-intelligence-dotnet
microsoft
Azure AI Document Intelligence SDK for .NET. Extract text, tables, and structured data from documents using prebuilt and custom models. Use for invoice processing, receipt extraction, ID document analysis, and custom document models. Triggers: "Document Intelligence", "DocumentIntelligenceClient", "form recognizer", "invoice extraction", "receipt OCR", "document analysis .NET".
fireflies-core-workflow-a
jeremylongshore
Execute Fireflies.ai primary workflow: Core Workflow A. Use when implementing primary use case, building main features, or core integration tasks. Trigger with phrases like "fireflies main workflow", "primary task with fireflies".
fireflies-cost-tuning
jeremylongshore
Optimize Fireflies.ai costs through tier selection, sampling, and usage monitoring. Use when analyzing Fireflies.ai billing, reducing API costs, or implementing usage monitoring and budget alerts. Trigger with phrases like "fireflies cost", "fireflies billing", "reduce fireflies costs", "fireflies pricing", "fireflies expensive", "fireflies budget".