Pular para o conteúdo principal

Updating SDK Packages

How updates work

Business logic (auth, payments, games) lives in @cactus-agents/* packages. When the Cactus team releases updates, you pull them via pnpm:

# Update every @cactus-agents package within the ranges in package.json
pnpm update "@cactus-agents/*"

# Update a single package
pnpm update @cactus-agents/api-client

:::caution Quote the glob "@cactus-agents/*" must be quoted. Unquoted, the shell tries to expand it before pnpm sees it — in zsh (the default shell on macOS) the command aborts with zsh: no matches found. :::

Which packages you depend on

Your package.json is the authoritative list — it declares 15 @cactus-agents/* dependencies today:

PackageWhat it covers
accountsAuthentication, user account and wallet
api-clientHTTP client and caching layer for the backend
brandBrand identity resolution
country-configPer-country rules (currency, decimals, documents, KYC operators)
gamesCasino catalog and game data
gamificationLoyalty/VIP program integration
i18nTranslation resources and locale loading
kycIdentity-verification flows
paymentsDeposits, withdrawals, payment methods
platform-cacheServer-side cache engine
sportsSportsbook module and provider config
sports-rogueNative "rogue" sportsbook SDK
typesShared TypeScript types
utilsShared helpers
validationsRegistration/profile validation rule engine

Read the current versions straight from your own package.json rather than from this page — they move independently and often.

:::note Do not add @cactus-agents/mocks That package is deprecated. Its modules are empty stubs; the mock data it used to provide was replaced by real API integrations. Nothing in the template depends on it. :::

Removed packages

Three packages no longer exist. If your fork still imports from them, pnpm install cannot resolve them:

RemovedReplaced by
@cactus-agents/auth@cactus-agents/accounts
@cactus-agents/user@cactus-agents/accounts
@cactus-agents/wallet@cactus-agents/accounts

The three were unified into a single package. Almost every exported name carried over unchanged, so the migration is mostly a find-and-replace on import paths — but a handful of symbols were renamed. Follow Accounts migration before running any other update if your fork still depends on auth, user or wallet.

What gets updated

  • Bug fixes and security patches
  • New features (e.g., new payment providers)
  • API compatibility updates

What doesn't change

Updating the SDK never touches your own code:

  • Your theme colors (app/config/theme/colors.ts) and fonts (app/config/theme/fonts.ts)
  • Your route URLs (app/config/routes/paths.ts) and route tree (app/router/routes.ts)
  • Your layout composition (app/config/layout/composition.ts)
  • Everything under overrides/<your-brand>/
  • Your components, pages, hooks and services
  • Your environment variables

Checking for updates

pnpm outdated "@cactus-agents/*"

After updating

  1. Run pnpm install to resolve updated dependencies
  2. Run pnpm typecheck — this is where a breaking change in the SDK surfaces first
  3. Test locally with pnpm dev
  4. Verify key flows (login, registration, deposit, wallet)
  5. Deploy — see Deployment