From intercom-pack
Runs Intercom production checklist for auth, API errors/rate limits, webhooks, data handling, monitoring before deploying integrations to prod.
How this skill is triggered — by the user, by Claude, or both
Slash command
/intercom-pack:intercom-prod-checklistThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Complete checklist for deploying Intercom integrations to production, covering authentication, error handling, rate limits, webhooks, and monitoring.
Complete checklist for deploying Intercom integrations to production, covering authentication, error handling, rate limits, webhooks, and monitoring.
grep -r "dG9r" .)try/catch with IntercomError)X-Hub-Signature verification implemented (HMAC-SHA1)import { IntercomClient, IntercomError } from "intercom-client";
interface IntercomHealthStatus {
status: "healthy" | "degraded" | "unhealthy";
latencyMs: number;
authenticated: boolean;
rateLimitRemaining?: number;
error?: string;
}
async function checkIntercomHealth(
client: IntercomClient
): Promise<IntercomHealthStatus> {
const start = Date.now();
try {
const admins = await client.admins.list();
return {
status: "healthy",
latencyMs: Date.now() - start,
authenticated: true,
rateLimitRemaining: undefined, // Parsed from response headers
};
} catch (err) {
const latencyMs = Date.now() - start;
if (err instanceof IntercomError) {
return {
status: err.statusCode === 429 ? "degraded" : "unhealthy",
latencyMs,
authenticated: err.statusCode !== 401,
error: `${err.statusCode}: ${err.message}`,
};
}
return {
status: "unhealthy",
latencyMs,
authenticated: false,
error: (err as Error).message,
};
}
}
// Express health endpoint
app.get("/health", async (req, res) => {
const intercom = await checkIntercomHealth(client);
const overall = intercom.status === "healthy" ? 200 : 503;
res.status(overall).json({
status: intercom.status,
services: { intercom },
timestamp: new Date().toISOString(),
});
});
#!/bin/bash
set -euo pipefail
echo "=== Intercom Production Pre-Flight ==="
# 1. Auth check
echo -n "Auth: "
STATUS=$(curl -s -o /dev/null -w "%{http_code}" \
-H "Authorization: Bearer $INTERCOM_ACCESS_TOKEN" \
https://api.intercom.io/me)
[ "$STATUS" = "200" ] && echo "PASS" || { echo "FAIL ($STATUS)"; exit 1; }
# 2. Rate limit headroom
echo -n "Rate limit remaining: "
REMAINING=$(curl -s -D - -o /dev/null \
-H "Authorization: Bearer $INTERCOM_ACCESS_TOKEN" \
https://api.intercom.io/me 2>/dev/null | grep -i x-ratelimit-remaining | awk '{print $2}')
echo "$REMAINING"
# 3. Intercom platform status
echo -n "Intercom status: "
curl -s https://status.intercom.com/api/v2/status.json | jq -r '.status.indicator'
# 4. Webhook endpoint reachable (if configured)
if [ -n "${WEBHOOK_URL:-}" ]; then
echo -n "Webhook endpoint: "
WH_STATUS=$(curl -s -o /dev/null -w "%{http_code}" "$WEBHOOK_URL")
echo "$WH_STATUS"
fi
echo "=== Pre-flight complete ==="
# 1. Disable Intercom integration via feature flag
curl -X PATCH https://your-config-service/flags/intercom_enabled \
-d '{"value": false}'
# 2. If using k8s, rollback deployment
kubectl rollout undo deployment/intercom-service
kubectl rollout status deployment/intercom-service
# 3. Verify rollback
curl -s https://your-app.com/health | jq '.services.intercom'
# 4. Disable webhooks in Intercom Developer Hub
# (prevents queued webhook deliveries to unhealthy endpoint)
| Alert | Condition | Severity | Action |
|---|---|---|---|
| API unreachable | 5xx > 10/min | P1 | Enable fallback, check status page |
| Auth failure | Any 401 | P1 | Rotate token, verify in Developer Hub |
| Rate limited | 429 > 5/min | P2 | Reduce request volume, add queuing |
| High latency | P95 > 3s | P2 | Check Intercom status, enable caching |
| Webhook failures | Delivery errors | P3 | Check endpoint health, verify signature |
For version upgrades, see intercom-upgrade-migration.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin intercom-packExecutes HubSpot production deployment checklist for CRM integrations, including verifications, TypeScript health check endpoint, and monitoring setup.
Deploys Intercom apps to Vercel, Fly.io, and Cloud Run with secrets, webhook handlers, and health checks.
Executes Fireflies.ai production checklist for integrations: API keys, webhooks with signature verification, GraphQL health checks, monitoring, rollback.