Claude-skill-registry exa-upgrade-migration
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/exa-upgrade-migration" ~/.claude/skills/majiayu000-claude-skill-registry-exa-upgrade-migration && rm -rf "$T"
manifest:
skills/data/exa-upgrade-migration/SKILL.mdsource content
Exa Upgrade & Migration
Overview
Guide for upgrading Exa SDK versions and handling breaking changes.
Prerequisites
- Current Exa SDK installed
- Git for version control
- Test suite available
- Staging environment
Instructions
Step 1: Check Current Version
npm list @exa/sdk npm view @exa/sdk version
Step 2: Review Changelog
open https://github.com/exa/sdk/releases
Step 3: Create Upgrade Branch
git checkout -b upgrade/exa-sdk-vX.Y.Z npm install @exa/sdk@latest npm test
Step 4: Handle Breaking Changes
Update import statements, configuration, and method signatures as needed.
Output
- Updated SDK version
- Fixed breaking changes
- Passing test suite
- Documented rollback procedure
Error Handling
| SDK Version | API Version | Node.js | Breaking Changes |
|---|---|---|---|
| 3.x | 2024-01 | 18+ | Major refactor |
| 2.x | 2023-06 | 16+ | Auth changes |
| 1.x | 2022-01 | 14+ | Initial release |
Examples
Import Changes
// Before (v1.x) import { Client } from '@exa/sdk'; // After (v2.x) import { ExaClient } from '@exa/sdk';
Configuration Changes
// Before (v1.x) const client = new Client({ key: 'xxx' }); // After (v2.x) const client = new ExaClient({ apiKey: 'xxx', });
Rollback Procedure
npm install @exa/sdk@1.x.x --save-exact
Deprecation Handling
// Monitor for deprecation warnings in development if (process.env.NODE_ENV === 'development') { process.on('warning', (warning) => { if (warning.name === 'DeprecationWarning') { console.warn('[Exa]', warning.message); // Log to tracking system for proactive updates } }); } // Common deprecation patterns to watch for: // - Renamed methods: client.oldMethod() -> client.newMethod() // - Changed parameters: { key: 'x' } -> { apiKey: 'x' } // - Removed features: Check release notes before upgrading
Resources
Next Steps
For CI integration during upgrades, see
exa-ci-integration.