exa-debug-bundle

jeremylongshore's avatarfrom jeremylongshore

Collect Exa debug evidence for support tickets and troubleshooting.Use when encountering persistent issues, preparing support tickets,or collecting diagnostic information for Exa problems.Trigger with phrases like "exa debug", "exa support bundle","collect exa logs", "exa diagnostic".

⭐939stars🔀114forks📁View on GitHub🕐Updated Jan 11, 2026

When & Why to Use This Skill

The Exa Debug Bundle skill is a specialized diagnostic tool designed to streamline the troubleshooting process for Exa SDK and API integrations. It automates the collection of critical system information, including environment variables, SDK versions, and network health status, while ensuring sensitive data like API keys are redacted for secure sharing with support teams.

Use Cases

  • Case 1: Troubleshooting persistent Exa SDK errors by automatically generating a comprehensive diagnostic summary of the local environment.
  • Case 2: Preparing a secure, redacted support bundle for submission to technical support portals to ensure faster ticket resolution without leaking secrets.
  • Case 3: Diagnosing network connectivity and API health issues to distinguish between local configuration errors and external service outages.
  • Case 4: Auditing recent application logs for Exa-related warnings and stack traces using automated grep patterns to identify recurring failure points.
nameexa-debug-bundle
description|
allowed-toolsRead, Bash(grep:*), Bash(curl:*), Bash(tar:*), Grep
version1.0.0
licenseMIT
authorJeremy Longshore <jeremy@intentsolutions.io>

Exa Debug Bundle

Overview

Collect all necessary diagnostic information for Exa support tickets.

Prerequisites

  • Exa SDK installed
  • Access to application logs
  • Permission to collect environment info

Instructions

Step 1: Create Debug Bundle Script

#!/bin/bash
# exa-debug-bundle.sh

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

echo "=== Exa Debug Bundle ===" > "$BUNDLE_DIR/summary.txt"
echo "Generated: $(date)" >> "$BUNDLE_DIR/summary.txt"

Step 2: Collect Environment Info

# Environment info
echo "--- Environment ---" >> "$BUNDLE_DIR/summary.txt"
node --version >> "$BUNDLE_DIR/summary.txt" 2>&1
npm --version >> "$BUNDLE_DIR/summary.txt" 2>&1
echo "EXA_API_KEY: ${EXA_API_KEY:+[SET]}" >> "$BUNDLE_DIR/summary.txt"

Step 3: Gather SDK and Logs

# SDK version
npm list @exa/sdk 2>/dev/null >> "$BUNDLE_DIR/summary.txt"

# Recent logs (redacted)
grep -i "exa" ~/.npm/_logs/*.log 2>/dev/null | tail -50 >> "$BUNDLE_DIR/logs.txt"

# Configuration (redacted - secrets masked)
echo "--- Config (redacted) ---" >> "$BUNDLE_DIR/summary.txt"
cat .env 2>/dev/null | sed 's/=.*/=***REDACTED***/' >> "$BUNDLE_DIR/config-redacted.txt"

# Network connectivity test
echo "--- Network Test ---" >> "$BUNDLE_DIR/summary.txt"
echo -n "API Health: " >> "$BUNDLE_DIR/summary.txt"
curl -s -o /dev/null -w "%{http_code}" https://api.exa.com/health >> "$BUNDLE_DIR/summary.txt"
echo "" >> "$BUNDLE_DIR/summary.txt"

Step 4: Package Bundle

tar -czf "$BUNDLE_DIR.tar.gz" "$BUNDLE_DIR"
echo "Bundle created: $BUNDLE_DIR.tar.gz"

Output

  • exa-debug-YYYYMMDD-HHMMSS.tar.gz archive containing:
    • summary.txt - Environment and SDK info
    • logs.txt - Recent redacted logs
    • config-redacted.txt - Configuration (secrets removed)

Error Handling

Item Purpose Included
Environment versions Compatibility check ✓
SDK version Version-specific bugs ✓
Error logs (redacted) Root cause analysis ✓
Config (redacted) Configuration issues ✓
Network test Connectivity issues ✓

Examples

Sensitive Data Handling

ALWAYS REDACT:

  • API keys and tokens
  • Passwords and secrets
  • PII (emails, names, IDs)

Safe to Include:

  • Error messages
  • Stack traces (redacted)
  • SDK/runtime versions

Submit to Support

  1. Create bundle: bash exa-debug-bundle.sh
  2. Review for sensitive data
  3. Upload to Exa support portal

Resources

Next Steps

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