Docs / Getting Started
Stability & Versioning
0.3.0 is the first stable release of the 0.3 series. The public cliver-core API stays
backward compatible: 0.3.x releases contain bug fixes and backward-compatible additions.
Breaking changes require a new minor release. The cliver CLI application remains experimental
and is not published to PyPI.
What counts as public API
Section titled “What counts as public API”- Names exported from
cliver_core.__init__—AgentCore,ModelBinding,ModelBindings,presets, and the other documented exports. - Documented methods, parameters, return types, and event payloads on those objects.
- The wire and lifecycle contracts under Core Concepts.
Modules, classes, and functions under cliver_core.* that are not exported or documented are
internal. They may change without notice.
Versioning
Section titled “Versioning”- SemVer before 1.0.
0.3.0is a stable minor release; breaking changes require a new minor release (0.4.0). - Patch releases (
0.3.1) contain bug fixes and backward-compatible additions. - Deprecations are announced in the changelog for at least one minor release before removal.
- Pre-releases (
a,b,rc) are not selected by default. Pin the exact pre-release or pass--pre. --prealso allows pre-releases of transitive dependencies. Prefer the exact pin.
Python support
Section titled “Python support”CI tests Python 3.10, 3.11, 3.12, and 3.13. The package declares requires-python >=3.10.
Operational contracts
Section titled “Operational contracts”- Loop-safe, not thread-safe. Create and use one agent, set of bindings, and MCP client per event loop. Do not share them across threads or loops.
- Stateless by default.
AgentCoredoes not carry conversation state; passconversation=on every call and persist what you need in the application. - Lifecycle.
AgentCore.open(...)as an async context manager, or a directawait agent.aclose(), drains media jobs the agent started and closes providers its bindings built. It never owns the MCP client or a provider you supplied.await bindings.preflight()validates endpoints and credentials at startup;cliver_core.integrations.lifespanwires both into an ASGI app without a framework dependency.
See Concurrency & Lifecycle for the full contract.
Experimental surfaces
Section titled “Experimental surfaces”- The
cliverCLI application (not on PyPI yet). - Local model backends depend on their upstream libraries (
sentence-transformers,FlagEmbedding, andlaya). - Provider brands are curated convenience, not coverage. A wire-compatible vendor needs no brand
entry — pass
base_urland the protocol explicitly.