VEXIS AI Governance adapter for CrewAI — task guardrails, step callbacks, and audit trails for every crew execution
Project description
vexis-crewai
VEXIS AI Governance adapter for CrewAI — task guardrails, step callbacks, and audit trails for every crew execution.
Add one guardrail function. Every task output gets checked against your VEXIS governance policies. PII is caught. Blocked outputs trigger retries. Everything gets an audit trail.
Installation
pip install vexis-crewai
Quick Start: Task Guardrail
from crewai import Agent, Task, Crew
from vexis_crewai import vexis_guardrail
# Create VEXIS guardrail
guardrail = vexis_guardrail(api_key="gp_live_xxx")
# Attach to any task
report_task = Task(
description="Write a customer analysis report",
expected_output="A report with customer insights",
agent=analyst_agent,
guardrail=guardrail, # ← VEXIS governance
guardrail_max_retries=2, # Retry if blocked
)
If the agent's output contains PII, secrets, or violates your policies, CrewAI automatically retries the task with VEXIS feedback.
Quick Start: Step Callback
from vexis_crewai import VexisStepCallback
callback = VexisStepCallback(api_key="gp_live_xxx")
crew = Crew(
agents=[researcher, writer],
tasks=[research_task, write_task],
step_callback=callback, # ← Every step governed
)
result = crew.kickoff(inputs={"topic": "AI Safety"})
# Governance summary
print(f"Checked: {callback.check_count}, Blocked: {callback.blocked_count}")
print(f"Traces: {callback.trace_ids}")
Combined Governance
from vexis_crewai import VexisCrewGovernance
gov = VexisCrewGovernance(api_key="gp_live_xxx")
task = Task(..., guardrail=gov.task_guardrail())
crew = Crew(..., step_callback=gov.step_callback())
result = crew.kickoff(inputs={...})
print(gov.summary()) # {"checks": 12, "blocked": 1, "trace_ids": [...]}
Configuration
guardrail = vexis_guardrail(
api_key="gp_live_xxx",
base_url="https://gateway.internal.corp:8080", # On-prem
fail_open=False, # Block on gateway errors (default)
metadata={"team": "ml"}, # Extra metadata on traces
)
How It Works
| Decision | Guardrail Behavior |
|---|---|
ALLOWED |
(True, output) — task proceeds |
MODIFIED |
(True, sanitized_output) — proceeds with PII redacted |
BLOCKED |
(False, feedback) — CrewAI retries with VEXIS feedback |
Links
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vexis_crewai-0.1.0.tar.gz.
File metadata
- Download URL: vexis_crewai-0.1.0.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
acc51d8a74df942b709657c147564a7272daf5d52b933f493e3472bfabdf5b49
|
|
| MD5 |
889e6cb8bd4eb12449dd76b4be8bbe0f
|
|
| BLAKE2b-256 |
295f57a80ebda5053a31177461d244c9c9074d22319b07c1fcdd05c132bbaf87
|
Provenance
The following attestation bundles were made for vexis_crewai-0.1.0.tar.gz:
Publisher:
ci.yml on disruptivetrends/vexis-crewai
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vexis_crewai-0.1.0.tar.gz -
Subject digest:
acc51d8a74df942b709657c147564a7272daf5d52b933f493e3472bfabdf5b49 - Sigstore transparency entry: 1273102229
- Sigstore integration time:
-
Permalink:
disruptivetrends/vexis-crewai@e6506a029beb113d2f5ade20faf89e43e478a317 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/disruptivetrends
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@e6506a029beb113d2f5ade20faf89e43e478a317 -
Trigger Event:
push
-
Statement type:
File details
Details for the file vexis_crewai-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vexis_crewai-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8008d432eb09ded4244fd2e4734de0865c2a583b555488f233a658b4244721ec
|
|
| MD5 |
8f906b7858a41ff89c5158d457941024
|
|
| BLAKE2b-256 |
2d1831c173a8dea9838d83f6d246cbe2c3187359ff7ec710fbf56b9d1cf8ef06
|
Provenance
The following attestation bundles were made for vexis_crewai-0.1.0-py3-none-any.whl:
Publisher:
ci.yml on disruptivetrends/vexis-crewai
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vexis_crewai-0.1.0-py3-none-any.whl -
Subject digest:
8008d432eb09ded4244fd2e4734de0865c2a583b555488f233a658b4244721ec - Sigstore transparency entry: 1273102335
- Sigstore integration time:
-
Permalink:
disruptivetrends/vexis-crewai@e6506a029beb113d2f5ade20faf89e43e478a317 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/disruptivetrends
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@e6506a029beb113d2f5ade20faf89e43e478a317 -
Trigger Event:
push
-
Statement type: