writing-skills
writing-skills
Use when creating new skills, editing existing skills, or verifying skills work before deployment
figma-prod-checklistProduction readiness checklist for Figma REST API integrations. Use when deploying Figma integrations to production, preparing for launch, or auditing an existing integration for production fitness. Trigger with phrases like "figma production", "deploy figma", "figma go-live", "figma launch checklist".
Independent GitHub snapshot · Automated classification · Original documentation governs
name: figma-prod-checklist description: 'Production readiness checklist for Figma REST API integrations.
Use when deploying Figma integrations to production, preparing for launch,
or auditing an existing integration for production fitness.
Trigger with phrases like "figma production", "deploy figma",
"figma go-live", "figma launch checklist".
' allowed-tools: Read, Bash(curl:*), Grep version: 1.6.0 license: MIT author: Jeremy Longshore jeremy@intentsolutions.io tags:
Complete checklist for deploying Figma API integrations to production, covering authentication, error handling, rate limits, monitoring, and rollback.
file_content:read, not files:read)Retry-After header honored on 429 responses// Health check endpoint
async function figmaHealthCheck() {
const start = Date.now();
try {
const res = await fetch('https://api.figma.com/v1/me', {
headers: { 'X-Figma-Token': process.env.FIGMA_PAT! },
signal: AbortSignal.timeout(5000),
});
return {
status: res.ok ? 'healthy' : 'degraded',
latencyMs: Date.now() - start,
httpStatus: res.status,
};
} catch (error) {
return {
status: 'unhealthy',
latencyMs: Date.now() - start,
error: error instanceof Error ? error.message : 'Unknown',
};
}
}
#!/bin/bash
echo "=== Figma Production Pre-Flight ==="
# 1. Token valid?
STATUS=$(curl -s -o /dev/null -w "%{http_code}" \
-H "X-Figma-Token: ${FIGMA_PAT}" \
https://api.figma.com/v1/me)
echo "Auth: $STATUS (expect 200)"
# 2. File accessible?
STATUS=$(curl -s -o /dev/null -w "%{http_code}" \
-H "X-Figma-Token: ${FIGMA_PAT}" \
"https://api.figma.com/v1/files/${FIGMA_FILE_KEY}?depth=1")
echo "File: $STATUS (expect 200)"
# 3. Figma status page
echo -n "Figma Status: "
curl -s https://www.figmastatus.com/api/v2/status.json 2>/dev/null \
| jq -r '.status.description // "Unable to check"'
echo "=== Pre-flight complete ==="
| Alert | Condition | Severity | Action |
|---|---|---|---|
| Auth Failure | 403 errors > 0 | P1 | Rotate PAT immediately |
| Rate Limited | 429 errors > 5/min | P2 | Reduce request rate; check plan tier |
| High Latency | P95 > 5000ms | P2 | Check Figma status; add caching |
| API Down | 5xx errors > 10/min | P1 | Enable fallback; check status.figma.com |
Run the Step 7 pre-flight before the go-live cut:
./scripts/figma-preflight.sh
✓ FIGMA_PAT present, not in repo (gitleaks clean)
✓ /v1/me → 200 (token valid, acting as design-infra@example.com)
✓ File probe ?depth=1 → 200 in 240ms
✓ 429 handler: Retry-After honored (simulated)
✓ Webhook passcode verification: forged POST → 401
✗ Alerting: no alert rule for figma_api_requests_total{status="429"}
1 failure — fix before ship
Each line maps to a checklist step in this skill (auth → errors → rate limits → monitoring → data → webhooks). A red pre-flight is the checklist telling you which section to reopen — here, Step 4 (references/monitoring-health.md).
For version upgrades, see figma-upgrade-migration.