granola-debug-bundle
Collects system information, audio configurations, and network data for Granola support without exposing meeting content.
Install
mkdir -p .claude/skills/granola-debug-bundle && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/7938" && unzip -o skill.zip -d .claude/skills/granola-debug-bundle && rm skill.zipInstalls to .claude/skills/granola-debug-bundle
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.
Create diagnostic bundles for Granola support requests.Key capabilities
- →Collect system OS and hardware information
- →Verify Granola process status
- →Check microphone and recording permissions
- →Test network connectivity to Granola API
- →Package diagnostic data into a secure zip file
How it works
The skill executes system commands to collect environment metadata, network status, and app configuration into a timestamped directory before zipping it for support.
Inputs & outputs
When to use granola-debug-bundle
- →Collecting logs for Granola support requests
- →Diagnosing system audio connectivity issues
- →Preparing technical reports for application bugs
- →Gathering environmental info for debugging
About this skill
Granola Debug Bundle
Current State
!sw_vers 2>/dev/null || uname -a
!defaults read /Applications/Granola.app/Contents/Info.plist CFBundleShortVersionString 2>/dev/null || echo 'Granola version: check Menu > About'
Overview
Collect diagnostic information for Granola support. Produces a zip bundle with system info, audio configuration, network connectivity, and app state — without exposing meeting content, transcripts, or API keys.
Prerequisites
- Terminal access (macOS Terminal or Windows PowerShell)
- Granola installed (even if malfunctioning)
- Internet access for network diagnostics
Instructions
Step 1 — Create Debug Directory
set -euo pipefail
DEBUG_DIR="$HOME/Desktop/granola-debug-$(date +%Y%m%d-%H%M%S)"
mkdir -p "$DEBUG_DIR"
echo "Debug directory: $DEBUG_DIR"
Step 2 — Collect System Information
macOS:
set -euo pipefail
cd "$DEBUG_DIR"
# OS and hardware
sw_vers > system-info.txt
uname -a >> system-info.txt
sysctl -n hw.memsize | awk '{printf "RAM: %.0f GB\n", $1/1073741824}' >> system-info.txt
# Granola version
defaults read /Applications/Granola.app/Contents/Info.plist CFBundleShortVersionString >> system-info.txt 2>/dev/null || echo "Version: not found" >> system-info.txt
# Granola process status
pgrep -l Granola >> system-info.txt 2>/dev/null || echo "Granola: NOT RUNNING" >> system-info.txt
# Audio configuration (critical for transcription issues)
system_profiler SPAudioDataType > audio-config.txt 2>/dev/null
Windows (PowerShell):
$dir = "$env:USERPROFILE\Desktop\granola-debug-$(Get-Date -Format 'yyyyMMdd-HHmmss')"
New-Item -ItemType Directory -Path $dir
# System info
Get-CimInstance Win32_OperatingSystem | Select Caption, Version > "$dir\system-info.txt"
Get-Process Granola -ErrorAction SilentlyContinue >> "$dir\system-info.txt"
# Audio devices
Get-CimInstance Win32_SoundDevice | Select Name, Status > "$dir\audio-config.txt"
Step 3 — Check Permissions (macOS)
set -euo pipefail
cd "$DEBUG_DIR"
echo "=== Permission Check ===" > permissions.txt
# Check if Granola has microphone access
sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db \
"SELECT service, allowed FROM access WHERE client='ai.granola.app';" >> permissions.txt 2>/dev/null \
|| echo "Cannot read TCC database (expected on macOS 14+). Check manually:" >> permissions.txt
echo "" >> permissions.txt
echo "Manual verification required:" >> permissions.txt
echo " System Settings > Privacy & Security > Microphone > Granola" >> permissions.txt
echo " System Settings > Privacy & Security > Screen & System Audio Recording > Granola" >> permissions.txt
Step 4 — Network Diagnostics
set -euo pipefail
cd "$DEBUG_DIR"
# Test Granola API connectivity
echo "=== Network Tests ===" > network-test.txt
echo "Timestamp: $(date -u +%Y-%m-%dT%H:%M:%SZ)" >> network-test.txt
# API endpoint
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" --connect-timeout 5 https://api.granola.ai/ 2>/dev/null || echo "FAIL")
echo "api.granola.ai: HTTP $HTTP_CODE" >> network-test.txt
# DNS resolution
nslookup api.granola.ai >> network-test.txt 2>&1
# WorkOS auth endpoint (Granola uses WorkOS for authentication)
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" --connect-timeout 5 https://api.workos.com/ 2>/dev/null || echo "FAIL")
echo "api.workos.com (auth): HTTP $HTTP_CODE" >> network-test.txt
Step 5 — Collect Cache Metadata (Not Content)
set -euo pipefail
cd "$DEBUG_DIR"
CACHE_FILE="$HOME/Library/Application Support/Granola/cache-v3.json"
echo "=== Cache Metadata ===" > cache-info.txt
if [ -f "$CACHE_FILE" ]; then
ls -lh "$CACHE_FILE" >> cache-info.txt
# Count documents without exposing content
python3 -c "
import json
from pathlib import Path
try:
raw = json.loads(Path('$CACHE_FILE').read_text())
state = json.loads(raw) if isinstance(raw, str) else raw
data = state.get('state', state)
print(f'Documents: {len(data.get(\"documents\", {}))}')
print(f'Transcripts: {len(data.get(\"transcripts\", {}))}')
print(f'Meetings metadata: {len(data.get(\"meetingsMetadata\", {}))}')
except Exception as e:
print(f'Parse error: {e}')
" >> cache-info.txt 2>/dev/null
else
echo "Cache file not found" >> cache-info.txt
fi
Step 6 — Package and Submit
set -euo pipefail
cd "$(dirname "$DEBUG_DIR")"
zip -r "$(basename "$DEBUG_DIR").zip" "$(basename "$DEBUG_DIR")/"
echo "Bundle ready: $(basename "$DEBUG_DIR").zip"
echo "Submit to: [email protected] or via in-app support"
Self-Diagnosis Checklist
Run through this before contacting support:
- Granola is updated to the latest version (Check for updates in menu)
- Internet connection is stable (can load granola.ai in browser)
- Microphone permission is granted
- Screen & System Audio Recording permission is granted (macOS)
- Correct audio input device is selected in System Settings
- No conflicting virtual audio software (Loopback, BlackHole, etc.)
- Calendar is connected and syncing (check Settings > Calendar)
- Sufficient disk space (> 500 MB free)
- status.granola.ai shows no active incidents
Privacy: What the Bundle Does NOT Include
- Meeting transcripts or notes content
- Personal calendar event details
- API keys or authentication tokens
- Audio recordings
- Contact/attendee information
Output
- Zip file on Desktop containing system, audio, network, and app diagnostics
- Ready for submission to Granola support at [email protected]
- Self-diagnosis checklist completed before escalation
Error Handling
| Error | Cause | Fix |
|---|---|---|
| Permission denied on TCC database | macOS 14+ security | Use manual permission verification instead |
| Network test fails | Firewall or proxy | Check outbound HTTPS to api.granola.ai and api.workos.com |
| Zip creation fails | Disk full | Free space, or tar instead: tar czf bundle.tar.gz debug-dir/ |
| Cache parse error | Different Granola version | Report the error — it helps support identify the version issue |
Resources
Next Steps
Proceed to granola-rate-limits to understand usage limits and plan differences.
When not to use it
- →When troubleshooting issues unrelated to the Granola application
Prerequisites
Limitations
- →TCC database access is restricted on macOS 14+
- →Requires manual verification if automated permission checks fail
How it compares
This approach automates the collection of specific technical logs required by support, avoiding the manual gathering of disparate system files.
Compared to similar skills
granola-debug-bundle side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| granola-debug-bundle (this skill) | 0 | 27d | Review | Intermediate |
| godot | 1,044 | 5mo | Review | Intermediate |
| python-testing-patterns | 77 | 2mo | Review | Intermediate |
| error-handling-patterns | 35 | 2mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by jeremylongshore
View all by jeremylongshore →You might also like
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
python-testing-patterns
wshobson
Implement comprehensive testing strategies with pytest, fixtures, mocking, and test-driven development. Use when writing Python tests, setting up test suites, or implementing testing best practices.
error-handling-patterns
wshobson
Master error handling patterns across languages including exceptions, Result types, error propagation, and graceful degradation to build resilient applications. Use when implementing error handling, designing APIs, or improving application reliability.
chrome-devtools
mrgoonie
Browser automation, debugging, and performance analysis using Puppeteer CLI scripts. Use for automating browsers, taking screenshots, analyzing performance, monitoring network traffic, web scraping, form automation, and JavaScript debugging.
unreal-engine-cpp-pro
sickn33
Expert guide for Unreal Engine 5.x C++ development, covering UObject hygiene, performance patterns, and best practices.
python-performance-optimization
wshobson
Profile and optimize Python code using cProfile, memory profilers, and performance best practices. Use when debugging slow Python code, optimizing bottlenecks, or improving application performance.