On this pageNavigation ▾

Package Reference

Caatinga is published as modular TypeScript npm packages under the @caatinga scope.

Package Role Browser-safe Install command
@caatinga/cli CLI binary (caatinga / ctg) No npm install -g @caatinga/cli
@caatinga/core Config loading, artifact I/O, Stellar CLI orchestration No (use ./browser) Dependency of @caatinga/cli
@caatinga/core/browser Errors + artifact types only (excludes Node modules) Yes Dependency of @caatinga/client
@caatinga/client createCaatingaClient, wallet session, invoke/read/simulate/buildXdr Yes npm install @caatinga/client
@caatinga/client/react WalletProvider + useWallet (React >=18 optional peer) Yes Subpath of @caatinga/client
@caatinga/client/vite SWK bundler helpers: walletStubViteAliases, walletStubOverrides Yes Subpath of @caatinga/client
@caatinga/client/freighter Freighter wallet adapter Yes Subpath of @caatinga/client
@caatinga/client/stellar-wallets-kit Multi-wallet adapter (Freighter, xBull, etc.) Yes Subpath of @caatinga/client
@caatinga/zk ZK proof serialization, Circom Groth16 helpers No (use ./browser) Dependency of @caatinga/cli
@caatinga/zk/browser Browser ZK binding helpers Yes Subpath of @caatinga/zk

Release & Versioning Policy

  • Latest release: 3.9.2 (all four packages ship in lockstep).
  • Status: v1.0 stable contract on npm major 3.x. Breaking changes to the Tier 1 surface require a major bump and will land on an explicit 4.0.0. ZK commands (ctg zk *) are experimental and outside the contract.
  • Reproducible CI: Pin an exact version (e.g. @caatinga/cli@3.9.2) rather than floating tags.
  • Stellar CLI Compatibility: Hard floor 23.0.0; last tested 27.0.0.
  • @caatinga/cli dependency ranges: @caatinga/core and @caatinga/zk ^3.9.1 or later, kept aligned with the release group.

3.9.2 highlights

  • Security fix: identity export/import no longer leave a leftover tarball of Stellar secret keys in os.tmpdir(). See CLI Identity Reference for the remediation steps if you ran either command before upgrading.
  • Smaller install: the published @caatinga/cli tarball dropped from 95.3 MB packed / 283.7 MB unpacked to 67.4 kB — the Rust target/ build directory and test_snapshots are now excluded from what gets published.
  • sync-env no longer wipes unrelated variables in the target env file; concurrent deploy/upgrade no longer race on caatinga.artifacts.json; deploy retries when the RPC hasn’t indexed a just-uploaded WASM yet. See Gotchas for the full list.