Upgrading
On this page
Alpha.6: remove mock providers and upgrade management togetherOrganization package names before 0.1.0From sibling source dependenciesFrom static driver credentialsPreserve execution and data contractsThe current release candidate keeps wire protocol 1.0. Python uses reviewed GitHub archives while PyPI approval is pending. Keep the installed artifact's source and lockfile.
The host and language packages may receive independent package versions while
retaining an explicitly compatible protocol.
Before changing a host or client, call protocol(), require the features your
workflow uses, and check the compatibility matrix. Unknown
required events or incompatible major wire versions must fail clearly.
Protocol rules define optional-event negotiation and stable errors.
Alpha.6: remove mock providers and upgrade management together
Back up a host's private configuration, then remove any provider entries whose
kind is mock and the corresponding provider IDs from grants. Alpha.6 rejects
that legacy configuration with MOCK_PROVIDER_REMOVED; it never silently turns
a fake connection into a real account. Preserve actual providers, native account
directories, Usagestat identities and application grants. Configure the intended
real connection explicitly. New CLI setup requires --provider.
The mockProvider export, DeterministicEmbeddingAdapter,
@agenticdriver/sdk/provider-conformance subpath and simulated acceptance scripts
have been removed. Replace fake embedding configuration with an actual supported
embedding account before using vector indexing. Historical usage records remain
readable; new adapters cannot emit synthetic usage provenance.
Upgrade the execution host before its management clients, or coordinate both in
one maintenance window after active work drains. Older hosts advertise the removed
fixture provider-definition category, which alpha.6 management clients reject.
Wire protocol 1.0 alone does not establish management compatibility. Older clients
can read alpha.6's remaining categories. An SDK dependency update does not replace
a running host or expand saved grants. Never restart another application's host
without coordinating its active work.
Organization package names before 0.1.0
The SDK repository is now agenticdriver/agenticdriver. JavaScript applications
adopt the npm package @agenticdriver/sdk, replacing development imports from
agenticdriver and its subpaths. The CLI command remains agenticdriver.
Go applications adopt github.com/agenticdriver/agenticdriver/clients/go in both
their imports and go.mod. Python and Rust retain the name agenticdriver.
No registry package or semantic-version Go tag was published under the earlier personal ownership plan. Existing development archives should remain pinned until each app verifies the new published package, imports, lockfile and workflow. The wire protocol remains 1.0. See release ownership and readiness.
From sibling source dependencies
Build or obtain reviewed npm/wheel/module/crate artifacts, install them in the
application, and retain its lockfile. The quickstart shows all four
languages. Do not use a checkout-relative TypeScript alias, Python import path or
Go replace directive as a deployment dependency. A Rust path to the extracted
crate in an application's vendored artifacts is distinct from a sibling checkout.
Move to registry coordinates only after the deliberate package release and
installation checks have completed.
From static driver credentials
Keep the application's canonical user, organization and service IDs. Programmatic hosts can supply HostAuthentication backed by the application's existing policy. Use either that interface or static tokens, never both. Static CLI tokens remain supported; changing a configured static token requires a coordinated host restart. See Access control.
Preserve execution and data contracts
- Keep stable Usagestat
hostId, provider instance andaccountIdbindings. Accounting depends on these identities; model names are not account identities. - Preserve canonical source IDs and revisions when changing parsing, chunking or embeddings. Use revision checks and atomic replacement; revalidate ownership when evidence is read.
- Require current durable-job authorization through a deliberate resolver. Expired request tokens cannot become indefinite worker credentials.
- Keep application approvals and accepted artifacts in the application. Validate returned citation IDs against actual selected evidence before saving.
- Cancel/drain a host deliberately before upgrades, back up its compatible state, and verify idempotent replay after restart. Never retry an uncertain side effect solely because the network connection was lost.