Brainby arc-labs/docs
Migration

SDK versions

Where the Brain SDKs stand today (0.1.0) and the compatibility guarantees that take effect at 1.0.

Current versions

SDKPackageInstallVersion
TypeScript@brain-db/sdknpm install @brain-db/sdk0.1.0
Pythonbrain-db-sdkpip install brain-db-sdk0.1.0
Rustbrain-db-sdkcargo add brain-db-sdk0.1.0

Each SDK ships two clients: a JSON HTTP client (BrainHttpClient) over the hosted edge, and a native wire client (BrainClient) speaking the BRN0 protocol with the full typed-graph, transaction, and subscription surface. See the per-language sections (TypeScript, Python, Rust).

No upgrades to migrate yet

0.1.0 is the first published line — there is no prior release to migrate from, and no breaking change to reconcile. If a side-by-side upgrade guide is ever needed, it lands here.

Pre-1.0, the SDK surface can change in place between 0.1.x releases. No deprecated aliases are kept and no back-compat shims are added while the wire protocol is still settling. Pin an exact version (@brain-db/sdk@0.1.0, brain-db-sdk==0.1.0) and read the changelog before bumping.

What 1.0 will guarantee

When 1.0 ships, the SDKs adopt the usual semver contract. Within a major version, these stay stable:

  • The verb names on both clients — encode, recall, forget, link, unlink, plan, reason, whoami, capabilities, plus the wire client's typed-graph verbs.
  • The request/response shapes (EncodeResult, RecallResult with its Single / Many / None verdict, ForgetResult, …).
  • The identity-by-key model — the API key always carries (namespace, agent).

Additive changes (new optional fields, new verbs) ship in minors. Anything that removes or renames a field, changes a type, or tightens validation waits for the next major with migration notes in the changelog.

The SDKs share a release cadence and a conformance corpus — the same wire golden-bytes fixtures gate all three. If you upgrade one, upgrade the others in the same window to keep parity.

Was this page helpful?

On this page