clay-debug-bundle
Collect Clay debug evidence for support tickets and troubleshooting.Use when encountering persistent issues, preparing support tickets,or collecting diagnostic information for Clay problems.Trigger with phrases like "clay debug", "clay support bundle","collect clay logs", "clay diagnostic".
When & Why to Use This Skill
The Clay Debug Bundle skill is an automated diagnostic tool designed to streamline the troubleshooting process for Clay SDK users. It automatically gathers environment metadata, SDK versions, and system logs while ensuring security through the redaction of sensitive credentials, making it an essential utility for generating comprehensive support tickets and resolving persistent technical issues.
Use Cases
- Case 1: Generating a standardized diagnostic package to provide Clay support teams with all necessary context for faster ticket resolution.
- Case 2: Automating the redaction of API keys, secrets, and PII from local log files before sharing them with external collaborators or technical forums.
- Case 3: Verifying local environment compatibility by checking Node.js versions, npm configurations, and network connectivity to Clay's API health endpoints.
- Case 4: Capturing real-time error traces and configuration snapshots to debug intermittent SDK failures in development or staging environments.
| name | clay-debug-bundle |
|---|---|
| description | | |
| allowed-tools | Read, Bash(grep:*), Bash(curl:*), Bash(tar:*), Grep |
| version | 1.0.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
Clay Debug Bundle
Overview
Collect all necessary diagnostic information for Clay support tickets.
Prerequisites
- Clay SDK installed
- Access to application logs
- Permission to collect environment info
Instructions
Step 1: Create Debug Bundle Script
#!/bin/bash
# clay-debug-bundle.sh
BUNDLE_DIR="clay-debug-$(date +%Y%m%d-%H%M%S)"
mkdir -p "$BUNDLE_DIR"
echo "=== Clay 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 "CLAY_API_KEY: ${CLAY_API_KEY:+[SET]}" >> "$BUNDLE_DIR/summary.txt"
Step 3: Gather SDK and Logs
# SDK version
npm list @clay/sdk 2>/dev/null >> "$BUNDLE_DIR/summary.txt"
# Recent logs (redacted)
grep -i "clay" ~/.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.clay.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
clay-debug-YYYYMMDD-HHMMSS.tar.gzarchive containing:summary.txt- Environment and SDK infologs.txt- Recent redacted logsconfig-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
- Create bundle:
bash clay-debug-bundle.sh - Review for sensitive data
- Upload to Clay support portal
Resources
Next Steps
For rate limit issues, see clay-rate-limits.