jeremylongshore/claude-code-plugins-plus-skills
gamma-pack
plugins/saas-packs/gamma-pack/skills/gamma-prod-checklist/SKILL.md
January 22, 2026
Select agents to install to:
npx add-skill https://github.com/jeremylongshore/claude-code-plugins-plus-skills/blob/main/plugins/saas-packs/gamma-pack/skills/gamma-prod-checklist/SKILL.md -a claude-code --skill gamma-prod-checklistInstallation paths:
.claude/skills/gamma-prod-checklist/# Gamma Production Checklist
## Overview
Comprehensive checklist to ensure your Gamma integration is production-ready.
## Prerequisites
- Completed development and testing
- Staging environment validated
- Monitoring infrastructure ready
## Production Checklist
### 1. Authentication & Security
- [ ] Production API key obtained (not development key)
- [ ] API key stored in secret manager (not env file)
- [ ] Key rotation procedure documented and tested
- [ ] Minimum required scopes configured
- [ ] No secrets in source code or logs
```typescript
// Production client configuration
const gamma = new GammaClient({
apiKey: await secretManager.getSecret('GAMMA_API_KEY'),
timeout: 30000,
retries: 3,
});
```
### 2. Error Handling
- [ ] All API calls wrapped in try/catch
- [ ] Exponential backoff for rate limits
- [ ] Graceful degradation for API outages
- [ ] User-friendly error messages
- [ ] Error tracking integration (Sentry, etc.)
```typescript
import * as Sentry from '@sentry/node';
try {
await gamma.presentations.create({ ... });
} catch (err) {
Sentry.captureException(err, {
tags: { service: 'gamma', operation: 'create' },
});
throw new UserError('Unable to create presentation. Please try again.');
}
```
### 3. Performance
- [ ] Client instance reused (singleton pattern)
- [ ] Connection pooling enabled
- [ ] Appropriate timeouts configured
- [ ] Response caching where applicable
- [ ] Async operations for long tasks
### 4. Monitoring & Logging
- [ ] Request/response logging (sanitized)
- [ ] Latency metrics collection
- [ ] Error rate alerting
- [ ] Rate limit monitoring
- [ ] Health check endpoint
```typescript
// Health check
app.get('/health/gamma', async (req, res) => {
try {
await gamma.ping();
res.json({ status: 'healthy', service: 'gamma' });
} catch (err) {
res.status(503).json({ status: 'unhealthy', error: err.message });
}
});
```
### 5. Rate Limiting
- [ ] Rate limit tier confirmed with Gamma
- [ ] Request q