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.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin gamma-packThis skill is limited to using the following tools:
!`npm list 2>/dev/null | head -20`
Provides 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.
Framework and language migration patterns - version upgrades, breaking changes, dependency audit, safe rollback. Use for: migrate, migration, upgrade, version bump, breaking changes, deprecation, dependency audit, npm audit, pip-audit, codemod, jscodeshift, rector, rollback, semver, changelog, framework upgrade, language upgrade, React 19, Vue 3, Next.js App Router, Laravel 11, Angular, Python 3.12, Node 22, TypeScript 5, Go 1.22, Rust 2024, PHP 8.4.
Share bugs, ideas, or general feedback.
!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/sdk@2.0.0
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/sdk@1.x.x
Proceed to gamma-ci-integration for CI/CD setup.