From sundial-org-awesome-openclaw-skills-4
Syncs Granola meeting transcripts, summaries, and notes to local disk from macOS app auth. Enables bash searches by title, content, date, or attendees.
npx claudepluginhub joshuarweaver/cascade-ai-ml-agents-misc-2 --plugin sundial-org-awesome-openclaw-skills-4This skill uses the workspace's default tool permissions.
Access Granola meeting transcripts, summaries, and notes.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Access Granola meeting transcripts, summaries, and notes.
Granola stores meetings in the cloud. To access them locally:
pip install requests
python ~/path/to/clawdbot/skills/granola/scripts/sync.py ~/granola-meetings
clawdbot_cron({
action: "add",
job: {
name: "Granola Sync",
description: "Sync Granola meetings to local disk",
schedule: { kind: "cron", expr: "0 */6 * * *", tz: "America/New_York" },
sessionTarget: "isolated",
wakeMode: "now",
payload: {
kind: "agentTurn",
message: "Run the Granola sync: python {skillsDir}/granola/scripts/sync.py ~/granola-meetings",
deliver: false
}
}
})
The sync script reads auth from ~/Library/Application Support/Granola/supabase.json (created when you sign into Granola on macOS).
After sync, each meeting is a folder:
~/granola-meetings/
{meeting-id}/
metadata.json - title, date, attendees
transcript.md - formatted transcript
transcript.json - raw transcript data
document.json - full API response
notes.md - AI summary (if available)
List recent meetings:
for d in $(ls -t ~/granola-meetings | head -10); do
jq -r '"\(.created_at[0:10]) | \(.title)"' ~/granola-meetings/$d/metadata.json 2>/dev/null
done
Search by title:
grep -l "client name" ~/granola-meetings/*/metadata.json | while read f; do
jq -r '.title' "$f"
done
Search transcript content:
grep -ri "keyword" ~/granola-meetings/*/transcript.md
Meetings on a specific date:
for d in ~/granola-meetings/*/metadata.json; do
if jq -e '.created_at | startswith("2026-01-03")' "$d" > /dev/null 2>&1; then
jq -r '.title' "$d"
fi
done