Skip to main content
ClaudeWave

Offline signed-receipt verification with independently supplied keys. Shared browser/CLI engine, explicit formats and trust boundaries. Apache-2.0.

SubagentsRegistry oficial5 estrellas6 forks● JavaScriptNOASSERTIONActualizado today
ClaudeWave Trust Score
80/100
✓ Trusted
Passed
  • ✓Actively maintained (<30d)
  • ✓Clear description
  • ✓Topics declared
  • ✓Documented (README)
Flags
  • !Licence file present but not machine-readable
Last scanned: 10/20/2026
Install as a Claude Code subagent
Method: Clone
Terminal
git clone https://github.com/VeritasActa/verify && cp verify/*.md ~/.claude/agents/
1. Clone the repository and copy the agent .md definitions into ~/.claude/agents (or .claude/agents inside a project).
2. Start a new Claude Code session to load the agents.
3. Delegate work to them with the Task/Agent tool or by name.
Casos de uso

Resumen de Subagents

# @veritasacta/verify

**Check signed records yourself, without contacting the issuing service.**

An offline CLI and a shared browser receipt engine. Supply a receipt and a public
key obtained through a separate trusted channel, then apply your own trust policy.
No account, proxy, signing daemon or onboarding step is required to verify a receipt.

[Try the browser sample](https://www.veritasacta.com/verify?sample=current) ·
[Receipt specification](https://datatracker.ietf.org/doc/draft-farley-acta-signed-receipts/) ·
[Conformance evidence](https://www.veritasacta.com/conformance)

## Verify an existing receipt

```bash
npm install -g @veritasacta/verify
verify receipt.json --key YOUR_INDEPENDENTLY_OBTAINED_PUBLIC_KEY
```

The key is 64 hexadecimal characters. Do not treat a key supplied with an unknown
receipt as an independent trust pin. This verification path runs offline once the
package is installed; installation and explicitly requested URL/JWKS lookups use
the network.

To try the public example, download [this receipt](samples/current-receipt.json)
and use its **demonstration-only** key:

```bash
verify current-receipt.json --key ebb8cf3efc78717c50e7c438c0ad5498f8fa4e09607fea1e030ac129b5965225
```

A valid signature is not proof of claim truth, complete action coverage, signer
authority or recipient acceptance. A signed timestamp is an issuer assertion,
not an independent timestamp.

## Read the outcome correctly

| Outcome | Meaning | Next step |
| --- | --- | --- |
| Verified / exit 0 | The checks implemented for this profile passed | Apply identity, authority and reliance policies; read warnings and binding scope |
| Failed / exit 1 | A verification check failed | Check the expected key, signature, structure and reported error |
| Not checked / exit 2 | The verifier could not decide | Supply missing material or use a supported format/algorithm |

**Exit 1 does not prove tampering.** Supplying the wrong expected key can produce
the same result. Some legacy JSON error categories use the name `tampered` for
compatibility; it denotes failed verification, not a forensic conclusion.
See [error codes](ERRORS.md) and the profile-specific output.

## Browser and CLI

Both use `src/detect.js`, `src/engines/ed25519-receipt.js` and the same canonicalizer.
The browser bundle is published in `browser/`, with a SHA-256 build manifest.

The browser accepts individual Ed25519 envelopes, v2 structured receipts, v1 flat
receipts and historical website `receipt_version: "1.0"` receipts. That historical
profile excluded `public_key` from signing and is explicitly labelled; it is not
silently promoted to draft-03 conformance. All browser profiles require an external
key. Unsupported formats are **not checked**, not reported as bad signatures.

Both entry points reject duplicate JSON members before parsing. The browser limits
input to 1 MiB and depth 64; the CLI file parser allows 50 MiB and depth 128.
Bundles and specialist profiles, including selective disclosure, VOPRF, Knowledge
Units, Gate evidence and governed-run manifests, require the CLI. Profile success
only establishes the checks named in that output, not universal completeness.

## Choose a guide

| Task | Guide |
| --- | --- |
| Verify bundles, chains, prompts or specialist artifacts | [Advanced reference](docs/reference.md) |
| Issue receipts or configure a proxy/daemon | [Issuance and adapters](docs/issuance.md) |
| Understand threats and limitations | [Threat model](THREAT-MODEL.md) |
| Report a vulnerability | [Security policy](SECURITY.md) |
| Inspect exact release changes | [Changelog](CHANGELOG.md) |

## Release integrity, not publisher authentication

`verify --self-check` recomputes monitored source hashes against a **bundled integrity
commitment** (the Sigil). It detects drift from that commitment. Someone replacing
both the code and commitment can create a new internally consistent package.

It does **not** independently authenticate the publisher or establish a canonical
release. Pin a reference obtained independently and inspect release provenance.
`--attest` is a local, self-signed integrity statement; separately pin its key before
relying on it.

## Release and standards status

<!-- release-manifest:start -->
Verifier: **[0.10.25](https://github.com/VeritasActa/verify/releases/tag/v0.10.25)**. Status reviewed 2026-10-19.

- [draft-farley-acta-signed-receipts-03](https://datatracker.ietf.org/doc/draft-farley-acta-signed-receipts/): active individual Internet-Draft.
- [draft-farley-acta-knowledge-units-00](https://datatracker.ietf.org/doc/draft-farley-acta-knowledge-units/): expired individual Internet-Draft (expired 2026-10-08).

Internet-Drafts are proposals, not adopted IETF standards or endorsements.
<!-- release-manifest:end -->

[`release-manifest.json`](release-manifest.json) is the source for version/status
blocks in this README, the website, the organisation profile and draft index.
`node scripts/sync-public-metadata.mjs --check` checks sibling repository copies.
No draft is revised or resubmitted by this synchronization.

## Development and maintainership

Maintained by Tom Farley / ScopeBlind. Independent verification does not imply
independent organizational governance. Contributions should include reproducible
fixtures and negative cases. [Open an issue](https://github.com/VeritasActa/verify/issues)
for interoperability questions.

```bash
npm ci
npm run build:browser
npm test
npm run check:browser
npm run check:sigil
npm run test:conformance
```

Apache-2.0. See [LICENSE](LICENSE) and [PATENTS.md](PATENTS.md) for the actual terms.
The Acta public record is a [separate reference application](https://github.com/VeritasActa/Acta).
ScopeBlind / Legate are commercial applications, not prerequisites for verification.
agent-swarmsagentsanonymous-credentialscryptographyprivacyrate-limitingrfc9497verificationvoprfzero-knowledgezero-trust

Lo que la gente pregunta sobre verify

¿Qué es VeritasActa/verify?

+

VeritasActa/verify es subagents para el ecosistema de Claude AI. Offline signed-receipt verification with independently supplied keys. Shared browser/CLI engine, explicit formats and trust boundaries. Apache-2.0. Tiene 5 estrellas en GitHub y su última actualización registrada es del 2026-10-20.

¿Cómo se instala verify?

+

Puedes instalar verify clonando el repositorio (https://github.com/VeritasActa/verify) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.

¿Es seguro usar VeritasActa/verify?

+

Nuestro agente de seguridad ha analizado VeritasActa/verify y le ha asignado un Trust Score de 80/100 (tier: Trusted). Revisa el desglose completo de comprobaciones superadas y flags en esta página.

¿Quién mantiene VeritasActa/verify?

+

VeritasActa/verify es mantenido por VeritasActa. La última actividad registrada en GitHub es del 2026-10-20, con 5 issues abiertos.

¿Hay alternativas a verify?

+

Sí. En ClaudeWave puedes explorar subagents similares en /categories/agents, ordenados por popularidad o actividad reciente.

Despliega verify en tu cloud

Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.

¿Mantienes este repo? Añade un badge a tu README

Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.

Featured on ClaudeWave: VeritasActa/verify
[![Featured on ClaudeWave](https://claudewave.com/api/badge/veritasacta-verify)](https://claudewave.com/repo/veritasacta-verify)
<a href="https://claudewave.com/repo/veritasacta-verify"><img src="https://claudewave.com/api/badge/veritasacta-verify" alt="Featured on ClaudeWave: VeritasActa/verify" width="320" height="64" /></a>

Más Subagents

Alternativas a verify