From gamma-pack
Upgrades Gamma SDK (@gamma/sdk npm, gamma-sdk pip) and migrates code for API breaking changes like client init, responses, errors. Checks versions, changelog, tests.
How this skill is triggered — by the user, by Claude, or both
Slash command
/gamma-pack:gamma-upgrade-migrationThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
!`npm list 2>/dev/null | head -20`
!npm list 2>/dev/null | head -20
!pip freeze 2>/dev/null | head -20
Guide for upgrading Gamma SDK versions and migrating between API versions safely.
set -euo pipefail
# Node.js
npm list @gamma/sdk
# Python
pip show gamma-sdk
# Check for available updates
npm outdated @gamma/sdk
set -euo pipefail
# View changelog
npm info @gamma/sdk changelog
# Or visit
# https://gamma.app/docs/changelog
set -euo pipefail
# Create upgrade branch
git checkout -b feat/gamma-sdk-upgrade
# Node.js - upgrade to latest
npm install @gamma/sdk@latest
# Python - upgrade to latest
pip install --upgrade gamma-sdk
# Or specific version
npm install @gamma/[email protected]
Common Migration Patterns:
// v1.x -> v2.x: Client initialization change
// Before (v1)
import Gamma from '@gamma/sdk';
const gamma = new Gamma(apiKey);
// After (v2)
import { GammaClient } from '@gamma/sdk';
const gamma = new GammaClient({ apiKey });
// v1.x -> v2.x: Response format change
// Before (v1)
const result = await gamma.createPresentation({ title: 'Test' });
console.log(result.id);
// After (v2)
const result = await gamma.presentations.create({ title: 'Test' });
console.log(result.data.id);
// v1.x -> v2.x: Error handling change
// Before (v1)
try {
await gamma.create({ ... });
} catch (e) {
if (e.code === 'RATE_LIMIT') { ... }
}
// After (v2)
import { RateLimitError } from '@gamma/sdk';
try {
await gamma.presentations.create({ ... });
} catch (e) {
if (e instanceof RateLimitError) { ... }
}
// Check for type changes
// tsconfig.json - ensure strict mode catches issues
{
"compilerOptions": {
"strict": true,
"noImplicitAny": true
}
}
// Run type check
npx tsc --noEmit
set -euo pipefail
# Run unit tests
npm test
# Run integration tests
npm run test:integration
# Manual smoke test
node -e "
const { GammaClient } = require('@gamma/sdk');
const g = new GammaClient({ apiKey: process.env.GAMMA_API_KEY });
g.ping().then(() => console.log('OK')).catch(console.error);
"
// Enable deprecation warnings
const gamma = new GammaClient({
apiKey: process.env.GAMMA_API_KEY,
showDeprecationWarnings: true,
});
// Migrate deprecated methods
// Deprecated
await gamma.getPresentations();
// New
await gamma.presentations.list();
set -euo pipefail
# If issues occur after upgrade
git checkout main
npm install # Restores previous version from lock file
# Or explicitly downgrade
npm install @gamma/[email protected]
Proceed to gamma-ci-integration for CI/CD setup.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin gamma-packProvides production readiness checklist for Gamma integrations, verifying auth/security, errors, performance, monitoring, rate limits, data handling, and recovery before deployment.
Upgrades groq-sdk via npm/pip, scans code for deprecated Groq models, and migrates to current IDs like llama-3.3-70b-versatile. Creates git upgrade branch.
Guides framework and language migrations: version upgrades, breaking changes, dependency audits, codemods, rollbacks. For React 19, Next.js App Router, Python 3.12, Node 22, etc.