OAIS Sentinel Documentation
How Sentinel Core captures AI interactions as tamper-evident, independently timestamped evidence across Amazon Bedrock, Azure OpenAI, Google Vertex AI, Cohere and self-hosted models.
1. Getting started
Sentinel is deployed with each customer by the OAIS team. Installation packages, tenant credentials and keys are provided during onboarding, not downloaded from this website. AWS Marketplace subscribers start by completing registration; everyone else starts with a scoping call.
Once your tenant is provisioned, initialise the client with the activation token we give you:
sentinel init --token <activation token from onboarding>
Then wrap your model calls. For Amazon Bedrock, the wrapper stands in for the bedrock-runtime client:
from oais_sentinel import SentinelBedrockClient
# Same interface as boto3.client('bedrock-runtime')
bedrock = SentinelBedrockClient()
response = bedrock.invoke_model(
modelId="<your Bedrock model ID>",
body={"prompt": "Assess commercial portfolio sensitivity..."}
)
# Evidence receipt for this interaction
receipt = response["sentinel_receipt"]
print(receipt["input_hash"])
2. Evidence architecture
Sentinel Core records what a governed AI pathway did without OAIS holding the content of the interaction.
- Keyed fingerprints in your environment: prompts and completions are fingerprinted locally with HMAC-SHA3-256, using a secret key your organization holds.
- No plaintext to OAIS: OAIS receives fingerprints and metadata, such as model identifier, timestamps and policy decisions, not prompt or response text.
- Signed, append-only records: each record is signed with Ed25519 and chained in an append-only ledger.
- Merkle batching and independent timestamps: records are batched into Merkle trees (RFC 6962-style; SHA3-256, not RFC 6962-interoperable), and each root is timestamped by an independent RFC 3161 authority (DigiCert or Sectigo). By default, if no authority can be reached, the batch stays unanchored and verification reports it as incomplete.
Privacy note: keeping plaintext out of the ledger reduces how much personal information OAIS processes. It does not by itself settle your obligations under PIPEDA, Quebec Law 25 or GDPR. Keyed fingerprints can still be personal information. Your privacy team should assess the deployment.
3. SDK wrappers
Sentinel wraps the client you already use, so application code changes very little. The examples below show the pattern. Which wrappers apply to your stack, and their exact package names in your release, are confirmed during scoping.
Microsoft Azure OpenAI
from oais_llm import SentinelAzureOpenAI
client = SentinelAzureOpenAI(
azure_endpoint="https://your-org.openai.azure.com/",
api_version="<your API version>"
)
response = client.chat.completions.create(
model="<your deployment name>",
messages=[{"role": "user", "content": "Evaluate pension duration risk..."}]
)
receipt = response.oais_receipt
Google Cloud Vertex AI
from oais_llm import SentinelVertexAI
client = SentinelVertexAI(project="your-gcp-project")
response = client.generate_content(
model="<your Gemini model>",
contents="Validate loan underwriting parameters..."
)
receipt = response.oais_receipt
Cohere and self-hosted models
from oais_llm import SentinelCohere
client = SentinelCohere()
response = client.chat(
model="<your Command model>",
message="Review municipal debt covenants..."
)
receipt = response.oais_receipt
Self-hosted models and applications in other languages connect through the reverse proxy described below. Support for a specific model server is confirmed during scoping.
4. CLI & reverse proxy
The sentinel command-line tool is included in the client package.
sentinel status
Shows the local workspace configuration and ledger state.
sentinel status
sentinel verify
Checks the ledger's Merkle structure and timestamps offline.
sentinel verify --db path/to/ledger.db
sentinel cert
Produces an evidence report (HTML and JSON) for internal audit and examiners.
sentinel cert --db path/to/ledger.db
sentinel cockpit
Starts a local dashboard (port 8501) for inspecting records and Merkle proofs.
sentinel cockpit --port 8501
sentinel proxy
Runs an HTTP reverse proxy so applications in any language can route model calls through Sentinel by changing their base URL.
export OPENAI_BASE_URL=http://localhost:8000/v1
sentinel proxy --port 8000
5. Regulatory fit
Sentinel produces evidence. It addresses the evidence and record-keeping part of these frameworks; the compliance determination stays with your institution and its auditors.
- OSFI Guideline E-23 (model risk management, effective May 1, 2027): tamper-evident records of model use and policy interventions, with timestamps your auditors can verify independently.
- EU AI Act, Article 12: supports the record-keeping expected of high-risk AI systems.
- ISO/IEC 42001: supports the documentation and traceability an AI management system needs.
Planning a deployment?
Start with a scoping call. We'll map Sentinel to your AI systems and agree on a 30-day pilot.
Request a demo →