Agent

HashProof

celo|id 1867|owner 0x0a25c91209a158d0a4922837cdd590ace0d13f0d

Checks 1–7

HashProof issues verifiable credentials (diplomas, course completions, attendance, memberships) with one API call — no account, no API key, no human onboarding. $0.10 USDC per credential, paid via x402 on Base (eip155:8453) or Celo (eip155:42220). Every credential is registered on-chain in the CredentialRegistry contract on Celo (0x7a1B759A602Aba72a70f99Dffd0a386d7504ce9B), pinned to IPFS, and delivered as a PDF with a QR code anyone can scan to verify for free against three independent sources: database, IPFS and blockchain. Agent flow: GET /templates/:ref/requirements (free) to discover required fields, POST /templates/:ref/preview (free) to check the layout, POST /issueCredential ($0.10 via x402) to issue, then share https://hashproof.dev/verify/:id. Verification is always free and public. Also available as an MCP server (npx hashproof-mcp, in the official MCP registry) and as an agent skill. Full guide: https://hashproof.dev/skill.md

Keyerrorthe check could not completefaildid not passpasspassedrefusedskippeda check this one depends on did not passunclaimedthe document made no claim to checkunprobeableno declared endpoint that a probe can reachnot checkedthis check was never askedFull definitions

The seven checks, with their evidence

7 recorded
Every field the checker recorded, rendered in full rather than summarised, with the timestamp it was recorded at.
  1. Registered?rung 1 · registered

    pass

    The agent exists in the on-chain registry, with an owner and a document URL.

    passed

    block_number
    78133263
    chain_id
    42220
    token_id
    1867

    checked at 2026-09-22T00:26:26.480223Z

  2. Reachable?rung 2 · resolvable

    pass

    The document URL it declared actually answers when fetched.

    passed

    elapsed_ms
    483403
    gateway_attempts
    {"error":null,"gateway":"https://ipfs.io/ipfs/","http_status":429}, {"error":"ssrf_blocked: dns resolution failed: faile… (337 chars — expand){"error":null,"gateway":"https://ipfs.io/ipfs/","http_status":429}, {"error":"ssrf_blocked: dns resolution failed: failed to lookup address information: Temporary failure in name resolution","gateway":"https://cloudflare-ipfs.com/ipfs/","http_status":null}, {"error":null,"gateway":"https://gateway.pinata.cloud/ipfs/","http_status":200}
    http_status
    200
    scheme
    ipfs
    via_gateway
    https://gateway.pinata.cloud/ipfs/

    checked at 2026-09-22T00:26:26.480223Z

  3. Readable?rung 3 · parseable

    pass

    What came back is valid JSON that a machine can read.

    passed

    body_bytes
    2025
    body_sha256
    4e7179447195ffc3f5b597ac063bf56e30722bae8d258d81cf66361fc24f29e1
    content_type
    application/json

    checked at 2026-09-22T00:26:26.480223Z

  4. Follows the spec?rung 4 · conformant

    pass

    The document meets what ERC-8004 requires of it.

    passed

    both_fields_present
    false
    legacy_endpoints_field
    false
    may_gaps
    (empty)
    must_violations
    (empty)
    registrations_checked
    1
    services_field_source
    services
    services_status
    present
    should_gaps
    services[].version
    spec_commit
    68fc6765761a10fb26f0692df21c8a6f9d12b1be

    checked at 2026-09-22T00:26:26.480223Z

  5. Claims its identity?rung 5 · bound

    pass

    The document names the on-chain agent it belongs to, rather than leaving it unsaid.

    passed

    declared_agent_id
    1867
    declared_chain
    42220
    declared_registry
    eip155:42220:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432
    match
    true
    registrations_seen
    1

    checked at 2026-09-22T00:26:26.480223Z

  6. Answers?rung 6 · live

    pass

    A declared endpoint responds to a probe. Not implemented yet, so nobody passes or fails it.

    passed

    endpoints
    {"declared":"https://api.hashproof.dev","elapsed_ms":828,"final_url":"https://api.hashproof.dev/","http_status":200,"ind… (1,014 chars — expand){"declared":"https://api.hashproof.dev","elapsed_ms":828,"final_url":"https://api.hashproof.dev/","http_status":200,"index":0,"kind":"https","name":"web","outcome":"live","probed":true,"probed_url":"https://api.hashproof.dev"}, {"declared":"https://api.hashproof.dev/issueCredential","elapsed_ms":1346,"final_url":"https://api.hashproof.dev/issueCredential","http_status":402,"index":1,"kind":"https","name":"web","outcome":"live","payment_gated":true,"probed":true,"probed_url":"https://api.hashproof.dev/issueCredential"}, {"declared":"https://api.hashproof.dev/mcp","elapsed_ms":1161,"final_url":"https://api.hashproof.dev/mcp","http_status":405,"index":2,"kind":"https","name":"MCP","outcome":"not_live","probed":true,"probed_url":"https://api.hashproof.dev/mcp"}, {"declared":"https://github.com/agntcy/oasf/","elapsed_ms":1747,"final_url":"https://github.com/agntcy/oasf/","http_status":200,"index":3,"kind":"https","name":"OASF","outcome":"live","probed":true,"probed_url":"https://github.com/agntcy/oasf/"}
    endpoints_answered_not_live
    1
    endpoints_declared
    4
    endpoints_live
    3
    endpoints_our_error
    0
    endpoints_payment_gated
    1
    endpoints_probeable
    4
    endpoints_probed
    4
    endpoints_refused
    0

    checked at 2026-09-22T02:09:45.320852Z

  7. Has feedback?rung 7 · attested

    pass

    At least one on-chain feedback entry names this agent.

    passed

    distinct_authors
    4
    feedback_count
    4

    checked at 2026-09-22T00:26:26.480223Z

Check it again, now

outside the census
Everything above is one sweep, pinned to one block. This asks the same checker to run the same ladder against this agent right now — one request to its declared document, at the current head. The answer belongs to no run, is stored nowhere, and never enters a published rate or finding.
Sends one request to the agent’s own server. Rate limited.

On-chain snapshot

celo
token id
1867
owner
0x0a25c91209a158d0a4922837cdd590ace0d13f0d
block
78,133,263
observed
2026-09-22T00:26:26.484500Z
ipfs://QmW32bRw6v7r16rLyHyApG7W4QSfdi8sUDtortKhcLNU4s

What the fetch saw

ipfs
scheme
ipfs
http status
200
content type
application/json
size
2,025 bytes
sha256
4e7179447195ffc3f5b597ac063bf56e30722bae8d258d81cf66361fc24f29e1
elapsed
483,403 ms

This run

reproducible
Every status above is scoped to this sweep, at this block. Rerun it and you should get these answers back.
run
9099ff7a-d3d5-4719-9ed6-6d2a6a73909d
chain
celo
pinned block
78,133,263
agents
9,860
started
2026-09-21T23:40:21.983586Z
finished
2026-09-22T02:08:28.496509Z
checker
0.7.0 · f60139c8802140544532ad9241c5d7a943939769
spec commit
68fc6765761a10fb26f0692df21c8a6f9d12b1be
Reproduce
cargo run -p sweeper -- celo   # at block 78133263

What each check measures →