Verosek Audit Vault signed, tamper-evident trace of an AI agent's decisions and tool callsAudit Vault

Every step signed. Every decision explainable.

Tamper-evident HMAC-SHA256 trace. Downloadable decision receipts. Offline verification with one CLI command — auditors never call home.

Trace Timeline

Eight step types. One request. One signed trace.

Request received
LLM call
Tool proposed
Policy decision
Security scan input
Tool executed
Security scan output
Security blocked
HMAC-SHA256
Step Types

Every stage of a request is an explicit step.

Step typeFields captured
REQUEST_RECEIVEDInput messages, target model, available tools
LLM_CALLPrompt/completion/total tokens, finish reason, provider URL, latency, cost
TOOL_PROPOSEDTool name, arguments preview, hash, connection
POLICY_DECISIONALLOW/MODIFY/BLOCK, score, block reason, modifications, access config snapshot
SECURITY_SCAN_INPUTShield pre-LLM verdict with mode (enforce | log_only)
TOOL_EXECUTEDSuccess, duration, result preview, data volume
SECURITY_SCAN_OUTPUTShield post-LLM verdict
SECURITY_BLOCKEDBlocked verdicts surfaced as a dedicated step for faster triage
Decision Receipt

Download a receipt. Verify offline.

{
"trace_id": "trace_01HQ5V8K3P7Z2MJR9",
"decision": "BLOCK",
"key_id": "vsk_prod_04",
"tool": "postgres.query",
"score": 8,
"triggered_checks": [
{
"id": "CHK-002",
"detail": "DELETE not in allowed_operations [SELECT]"
}
],
"modifications_applied": [],
"request_hash": "sha256:3b2d…91a",
"signed_at": "2026-04-15T09:41:22Z",
"signature": "hmac-sha256:a7b9c2…4f8e"
}
$ verosek-verify-receipt receipt.json
 
reading receipt.json ...
signature: hmac-sha256:a7b9c2...4f8e
signed at: 2026-04-15T09:41:22Z
request_hash match: ok
triggered_checks well-formed: ok
signature verifies: ok
 
VALID
↓ Download receipt

Frequently Asked Questions

Logs are written by the system you are auditing, so you have to trust them. Verosek's records are signed and chained, so tampering is provable instead of assumed. It is evidence, not a log.

Yes. You verify against a key only you hold, on your own machine, with no call back to us. If we disappeared tomorrow, your evidence would still stand on its own.

Every record is linked to the others, so changing or removing any one of them breaks verification for the rest. You cannot rewrite history without it showing.

You keep all of it, in an open format, and it keeps verifying forever against your key. There is no lock-in on your evidence.

Two lines to migrate. Every SDK to every provider.