Skip to main content
Run this skill to migrate from Eppo to Confidence:
npx skills add spotify/confidence-ai-plugins --skill migrate-eppo
The installer works with Claude Code, Cursor, Codex, Gemini CLI, and other AI assistants, and asks which one to install to. You can also install the full Confidence plugin with your assistant’s own plugin manager. The kit moves your feature flags, allocations, and audiences to Confidence, then rewrites your application code from the Eppo SDK to the Confidence SDK. See the migrations overview for how migration kits work.

Before You Begin

To run this migration kit, you need:
  • The Confidence plugin installed in your AI assistant
  • An Eppo API key—not an SDK key—with read access to feature flags, stored in the EPPO_API_KEY environment variable. You can create one under Admin > API Keys in the Eppo dashboard.
  • The Confidence Flags MCP server, authenticated with your account
  • The Confidence Documentation MCP server, used during code transformation

Run the Migration

Invoke the kit with the /confidence:migrate-eppo command in your AI assistant.
1

Plan the flag migration

Run /confidence:migrate-eppo plan flag. The kit scans your Eppo flags, asks you to choose a Confidence client and map the subject entity, and writes a migration plan file.
2

Review the plan

The plan lists every flag with its allocations and targeting rules, and marks anything that can’t migrate automatically. Plan files are resumable, so you can pause and continue later.
3

Execute the flag migration

Run /confidence:migrate-eppo execute <plan-file>. The kit recreates your flags in Confidence with one targeting rule per allocation, in the same waterfall order.
4

Plan and execute the code migration

Run /confidence:migrate-eppo plan code, review the plan, then execute it. If your app already uses OpenFeature, the kit swaps the registered provider and leaves call sites unchanged. Otherwise it rewrites each Eppo SDK call to the Confidence SDK, creating one pull request per flag.

What Gets Migrated

EppoConfidence
Feature flag with allocationsFlag with one targeting rule per allocation, in waterfall order
Reusable audienceSegment, created once and referenced by multiple flags
subjectKey randomization unitEntity field of your choice, such as user_id
Default allocationFinal catch-all targeting rule at 100%
Variation valueVariant assigned within a rule
Confidence has no server-side flag default. The kit reproduces Eppo defaults as a final catch-all targeting rule that serves the default variant.

Known Limitations

The kit flags these Eppo features for manual review because Confidence doesn’t support them:
  • Switchback allocations that rotate exposure in time windows
  • General regular expression matching—only prefix, suffix, and alternation patterns convert cleanly
  • Contextual bandits (getBanditAction), which need a redesign in Confidence

Analyze Historical Experiments

The migration kit moves your flags and code, not your historical experiment results. To re-analyze experiments that ran on Eppo, import their assignment data into your data warehouse and follow the Analyze a Past Experiment quickstart.

Migrations Overview

How migration kits work and how to install the plugin

Use AI with Confidence

Set up the Confidence MCP servers for your AI assistant

Analyze a Past Experiment

Re-analyze experiments that ran on another platform

SDK Integration

Integrate Confidence SDKs into your application