Skip to main content

civitas-contrib

Community integrations and extras for Civitas — the production runtime for Python agents.

Everything here needs a third-party runtime dependency (a vendor / driver / framework SDK) or integrates with a specific external product. Core mechanism, protocols, and zero-dependency implementations live in civitas itself; civitas-contrib holds the batteries that pull in someone else's package. (See the contrib boundary rule in the core repo's docs/design/spanstore-and-contrib-boundary.md.)

Install

pip install civitas-contrib            # base (pulls in civitas)
pip install "civitas-contrib[openai]"  # + a specific integration's deps

Each integration's third-party dependency is an extra, so you only install what you use.

What's inside

Category Modules Extra Status
LLM provider plugins plugins.anthropic, plugins.openai, plugins.gemini, plugins.mistral matching extra ([anthropic], [openai], [gemini], [mistral]) Real, unit-tested (anthropic/openai)
Framework adapters adapters.langgraph, adapters.openai [langgraph], [openai] Real
State stores (driver-backed) plugins.postgres_store, plugins.mysql_store [postgres], [mysql] Real, integration-tested against real Postgres/MySQL
Span stores (driver-backed) plugins.postgres_span_store, plugins.mysql_span_store [postgres], [mysql] Real, integration-tested against real Postgres/MySQL
Exporters plugins.otel, eval.exporters (ArizeExporter, LangfuseExporter, BraintrustExporter, LangSmithExporter, FiddlerExporter) [otel], [arize], [langfuse], [braintrust], [langsmith], [fiddler] Real

Not yet implemented, honest placeholders only — importable, but raise NotImplementedError on instantiation with a link to track progress, matching the same pattern for both:

  • adapters.crewai.CrewAIAgent — no extra needed (doesn't touch the crewai SDK yet).
  • plugins.litellm.LiteLLMProvider — no extra needed (doesn't touch the litellm SDK yet).

There is no civitas_contrib.plugins.fiddler module — [fiddler] backs eval.exporters.FiddlerExporter (an eval exporter), not a model provider.

The span stores implement civitas's SpanStore protocol (durable, queryable telemetry) and are usable as plugins.exporters of type: postgres / type: mysql. The state stores implement StateStore (type: postgres / type: mysql under plugins.state). Both reuse core's public civitas.observability.normalize_span and match core's SQLiteSpanStore query results exactly.

Moved to core

SQLiteStateStore moved to core civitas (civitas.plugins.sqlite_store) in civitas v0.11.0 — SQLite is stdlib, so it adds no third-party dependency and belongs in core. The old civitas_contrib.plugins.sqlite_store import path still works via a deprecating re-export shim; update to:

from civitas.plugins.sqlite_store import SQLiteStateStore

YAML type: sqlite state stores already resolve to core and need no change.

License

Apache 2.0.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

civitas_contrib-0.2.0.tar.gz (20.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

civitas_contrib-0.2.0-py3-none-any.whl (28.2 kB view details)

Uploaded Python 3

File details

Details for the file civitas_contrib-0.2.0.tar.gz.

File metadata

  • Download URL: civitas_contrib-0.2.0.tar.gz
  • Upload date:
  • Size: 20.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for civitas_contrib-0.2.0.tar.gz
Algorithm Hash digest
SHA256 3e66334ed2d55403be3b55ede24a3f49d3c2c7edd87717825064ab893e259781
MD5 4c389df38ec66f75b6b81ed6614414b8
BLAKE2b-256 a9f75345670ac837d544b3521a8267e438b30a1b35a7b335a0109efd3be80ad4

See more details on using hashes here.

Provenance

The following attestation bundles were made for civitas_contrib-0.2.0.tar.gz:

Publisher: publish.yml on civitas-io/civitas-contrib

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file civitas_contrib-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: civitas_contrib-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 28.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for civitas_contrib-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5069f880b53934b8ce72b2de365f12bdadcbbb9f7b719c9a78f84b545b0e2412
MD5 6442f7afd234734f04c376620ec6a072
BLAKE2b-256 5bd72dd7024e17e1a763a8d7a54a091176f12a067c43da070790775181a0439b

See more details on using hashes here.

Provenance

The following attestation bundles were made for civitas_contrib-0.2.0-py3-none-any.whl:

Publisher: publish.yml on civitas-io/civitas-contrib

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page