Quick answers
What does Vetro Attest do?
It checks your AI agent log (a Vetro ledger or an OpenTelemetry GenAI trace) for tampering and countersigns its digest at an independent timestamp, so you can prove the log existed, unchanged, at that moment.
Who needs it?
Teams running AI agents that must show auditors, customers or regulators what the agent did, for example under EU AI Act record-keeping (Article 12), without asking them to take their own word for it.
What does it cost?
Verifying a log is free and stores nothing. A full report with a signed attestation, or continuous re-attestation, is priced just below.
Verify
Free
- Hash-chain and ed25519 signature check
- OTel GenAI traces accepted as-is
- Event count, LLM and tool calls, cost
- EU AI Act report preview
- Nothing is stored
Attest
$49 one-off, per ledger
- Full EU AI Act report (Markdown + HTML)
- ed25519 countersignature from this service over your digest, timestamped
- Our public key, and a free endpoint so anyone can check it without trusting us
- No account, no subscription
Continuous
$19 /month after a 14-day free trial, cancel anytime$190 /year after a 14-day free trial, 2 months free
- Unlimited re-attestation of every release via API
- Same report + countersignature for each ledger
- For agents in production: an auditor wants the current version attested
Agency
$149 /month after a 14-day free trial, cancel anytime$1490 /year after a 14-day free trial, 2 months free
- For DPOs, law firms and compliance consultants: up to 25 client ledgers a month
- One API key for all clients, no checkout per client
- Each report headed Prepared for <client>
Document pack
$99 one-off, no ledger needed
- FRIA (Art. 27) and Annex IV technical documentation draft
- AI literacy plan (Art. 4) and Art. 50 transparency notices
- From 10 questions, signed PDF + editable Markdown
GDPR: DPA, subprocessors, EU hosting, 7-day retention
Check a ledger or an OTel trace
Welcome back: 30% off for 3 months is applied automatically at checkout on Continuous and Agency.
Card payment via Stripe. You are returned straight to your report.What the $49 gets you — a real example
Excerpts generated by this service from the sample ledger (example only: your report and attestation are built from your own ledger, and signed with our key).
EU AI Act report (Markdown + HTML + PDF) · PDF
# EU AI Act — record-keeping evidence report > Engineering evidence, not legal advice — see "Known gaps" before relying on this. ## Run inventory | Run | Status | Integrity | LLM calls | Tool calls | Cost | |---|---|---|---|---|---| | `ledger.jsonl` (run_mraxqd1w_f5191f80dc112c24) | completed | signed | 1 | 1 | $0.0001 | ## Obligation mapping | Theme | Article | Evidence | |---|---|---| | Automatic event recording | Art. 12 | Every LLM call, tool call, error and outcome recorded at the call site, mechanically. | | Integrity of retained logs | Art. 26 | Hash chain + ed25519 signatures — see the integrity column; tampering is detectable. | | Human oversight of sensitive actions | Art. 14(4) | tool.approve rules pause the agent; approval.request / approval.decision events record who allowed or refused what. | | Right to explanation | Art. 86 | Full decision trail (requests, responses, tool calls, policy decisions) per run. | ## Retention · Known gaps · Event log (…)
Countersigned attestation (attestation.json)
{
"statement": {
"digest": "faca842b7125cac108f4503ed4adf99fe404768c7ff2c7995b6ea27c87435c4e",
"source": "vetro-ledger",
"events": 7,
"verified": true,
"signed": true,
"attestedAt": "2026-09-26T01:00:12.743Z",
"service": "https://attest.example"
},
"signature": "tKO6IMdZCjIwysI9wrSXAr1b+S0eK/B5BSsqPEhRlidxm9tSkEJStSO91ofiUV+SIWsOMG7lRURTupR+ha+2DA==",
"publicKey": "-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEA…\n-----END PUBLIC KEY-----\n"
}
Start in 1 minute
Record your agent into a signed ledger, then verify it here for free. Node or Python, one line changes in your code.
npm i https://attest.piratefly.com/dl/vetro-core-0.1.0.tgz https://attest.piratefly.com/dl/vetro-anthropic-0.1.0.tgz pip install https://attest.piratefly.com/dl/vetro-0.1.0-py3-none-any.whl # Python
import Anthropic from '@anthropic-ai/sdk';
import { Vetro } from '@vetro/core';
import { wrapAnthropic } from '@vetro/anthropic'; // OpenAI: wrapOpenAI from @vetro/openai
const run = new Vetro().startRun({ name: 'my-agent' });
const client = wrapAnthropic(new Anthropic(), run); // every call now lands in .vetro/runs/*.vtl
Already on OpenTelemetry? Skip the SDK: paste your GenAI trace (OTLP/JSON) in the box above, or vetro otel import trace.json.
Bring the trace you already have
If your agent exports OpenTelemetry spans with the GenAI semantic conventions — OpenLLMetry, OpenInference, Langfuse, or your own instrumentation — export the OTLP/JSON payload and paste it here. It is converted into a hash-chained ledger, checked, and mapped onto the EU AI Act obligations exactly like a native ledger. An imported trace carries no signature of yours, which is precisely why the third-party countersignature is the only timestamped proof attached to it; the attestation says so explicitly in its source field.
What you are actually buying
The CLI is open source: you can already verify your own ledger, render the report and sign it with your own key. You cannot sign it as someone else. The countersignature is a statement by a party with no stake in your logs — that this exact digest, with this event count, verified clean at this timestamp — and that is the part an auditor, a customer or a court can weigh.
The attestation is a small JSON object: the statement, the signature, the public key. Verify any attestation, from anyone, for free:
curl -X POST https://attest.piratefly.com/api/verify-attestation -H 'content-type: application/json' -d @attestation.json
Limits, stated plainly
- The countersignature attests that a ledger verified at a time. It does not attest that the events in it are true, or that your agent behaved well.
- The EU AI Act report maps your ledger onto logging obligations. It is a structured aid for a compliance conversation, not legal advice and not a certification.
- The signing key lives on this server. If it is compromised, past attestations lose their force — our public key is published so you can pin it.
- A ledger is stored only when you pay, so that your report stays downloadable, and is deleted after 7 days. Free verification stores nothing.
- After payment the report and the attestation are also emailed to you as attachments, so they are yours to keep even after the 7 days — and you cannot lose them by closing the tab.