Constitutional AI governance for clinical decision support — Agents Assemble hackathon
Project description
clinicalguard
Constitutional AI governance for healthcare agents.
clinicalguard is a Starlette-based A2A service for validating proposed clinical
actions against a healthcare constitution. It combines deterministic ACGS validation,
healthcare-specific validators, JSON-RPC 2.0 endpoints, and audit-trail persistence.
Installation
clinicalguard supports Python 3.11+.
pip install acgs-lite clinicalguard
pip install clinicalguard[anthropic]
pip install clinicalguard[openai]
clinicalguard currently relies on acgs-lite at runtime; install it alongside the
package when working from PyPI or source checkouts.
Quick Start
Run the Service
uvicorn clinicalguard.main:app --host 0.0.0.0 --port 8080
Validate a Clinical Action
curl -X POST http://localhost:8080/ \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tasks/send",
"params": {
"id": "task-001",
"message": {
"parts": [{
"text": "validate_clinical_action: Patient SYNTH-042 on Warfarin. Propose Aspirin 325mg daily."
}]
}
}
}'
Build the App in Python
from clinicalguard.agent import ClinicalGuardApp
guard = ClinicalGuardApp.create(
constitution_path="constitution/healthcare_v1.yaml",
audit_log_path="audit.jsonl",
)
app = guard.build_starlette_app()
Key Features
- Healthcare-focused constitutional validation with MACI-style self-approval blocking.
- A2A skills for clinical validation, HIPAA checks, and audit-trail queries.
- Starlette service surface with agent-card, health, and JSON-RPC endpoints.
- Audit-log persistence and restoration for forensic review.
- Optional Anthropic and OpenAI reasoning layers on top of deterministic checks.
Configuration
| Variable | Default | Purpose |
|---|---|---|
CLINICALGUARD_API_KEY |
unset | Optional X-API-Key protection for request handling |
CLINICALGUARD_URL |
unset | Optional published service URL for agent-card metadata |
License
AGPL-3.0-or-later. Commercial licensing is available; contact hello@acgs.ai.
Links
Constitutional Hash: 608508a9bd224290
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 clinicalguard-1.0.0.tar.gz.
File metadata
- Download URL: clinicalguard-1.0.0.tar.gz
- Upload date:
- Size: 38.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5fdec2ee4da5c2428296528bb7a9053592a3e3ca1ef41b4a4f068accd12f8a10
|
|
| MD5 |
6bcbae682fd44af544dc816fd0300a79
|
|
| BLAKE2b-256 |
cb18c62eab120eef9d67da9de37471532d9e798ecd0f60d2ae6bb613b6748995
|
File details
Details for the file clinicalguard-1.0.0-py3-none-any.whl.
File metadata
- Download URL: clinicalguard-1.0.0-py3-none-any.whl
- Upload date:
- Size: 2.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f79ba074fd94127089c97c9db999239e61dd52e69fd33c17c51899f06caafac
|
|
| MD5 |
5419e380280eb4eafb8013a56acbe932
|
|
| BLAKE2b-256 |
6a0f949cc72d415c1727a61edd7ee4e7fa9f4bbe5598447e9106d4cf5c2924e0
|