AgentCount
Sections
Check your agent
Agent

VerifyAgent.eth

mainnet|id 32101|owner 0xed976ca9036bc2d4e25ba8219fada1be503a09c7

Checks 1–7

VerifyAgent.eth is the public verification layer for CommandLayer receipts. It lets agents, apps, and developers verify what an AI agent actually did by checking a signed execution receipt. Each receipt includes the agent signer, action/verb, timestamp, input/output hash, canonical payload hash, and Ed25519 signature. VerifyAgent resolves the signer through ENS records, rebuilds the canonical receipt, checks the SHA-256 hash, verifies the signature, and detects tampering. For ERC-8004-style discovery, VerifyAgent.eth exposes callable verification metadata: endpoint, SDK package, GitHub source, supported capabilities, and verifier identity. The goal is simple: agents should not just claim actions — they should produce proof.

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
    25873488
    chain_id
    1
    token_id
    32101

    checked at 2026-08-31T07:10:02.879911Z

  2. Reachable?rung 2 · resolvable

    pass

    The document URL it declared actually answers when fetched.

    passed

    bytes
    1927
    data_uri_variant
    base64
    inline
    true
    scheme
    data
    uri
    data:application/json;base64,ewogICJ0eXBlIjogImh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtODAwNCNyZWdpc3RyYXRpb24tdjEiLAogICJuYW1lIjogIlZlcmlmeUFnZW50LmV0aCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcmlmeUFnZW50LmV0aCBpcyB0aGUgcHVibGljIHZlcmlmaWNhdGlvbiBsYXllciBmb3IgQ29tbWFuZExheWVyIHJlY2VpcHRzLlxuXG5JdCBsZXRzIGFnZW50cywgYXBwcywgYW5kIGRldmVsb3BlcnMgdmVyaWZ5IHdoYXQgYW4gQUkgYWdlbnQgYWN0dWFsbHkgZGlkIGJ5IGNoZWNraW5nIGEgc2lnbmVkIGV4ZWN1dGlvbiByZWNlaXB0LiBFYWNoIHJlY2VpcHQgaW5jbHVkZXMgdGhlIGFnZW50IHNpZ25lciwgYWN0aW9uL3ZlcmIsIHRpbWVzdGFtcCwgaW5wdXQvb3V0cHV0IGhhc2gsIGNhbm9uaWNhbCBwYXlsb2FkIGhhc2gsIGFuZCBFZDI1NTE5IHNpZ25hdHVyZS5cblxuVmVyaWZ5QWdlbnQgcmVzb2x2ZXMgdGhlIHNpZ25lciB0aHJvdWdoIEVOUyByZWNvcmRzLCByZWJ1aWxkcyB0aGUgY2Fub25pY2FsIHJlY2VpcHQsIGNoZWNrcyB0aGUgU0hBLTI1NiBoYXNoLCB2ZXJpZmllcyB0aGUgc2lnbmF0dXJlLCBhbmQgZGV0ZWN0cyB0YW1wZXJpbmcuXG5cbkZvciBFUkMtODAwNC1zdHlsZSBkaXNjb3ZlcnksIFZlcmlmeUFnZW50LmV0aCBleHBvc2VzIGNhbGxhYmxlIHZlcmlmaWNhdGlvbiBtZXRhZGF0YTogZW5kcG9pbnQsIFNESyBwYWNrYWdlLCBHaXRIdWIgc291cmNlLCBzdXBwb3J0ZWQgY2FwYWJpbGl0aWVzLCBhbmQgdmVyaWZpZXIgaWRlbnRpdHkuIFRoZSBnb2FsIGlzIHNpbXBsZTogYWdlbnRzIHNob3VsZCBub3QganVzdCBjbGFpbSBhY3Rpb25zIOKAlCB0aGV5IHNob3VsZCBwcm9kdWNlIHByb29mLiIsCiAgImltYWdlIjogImh0dHBzOi8vYmxvYi44MDA0c2Nhbi5hcHAvZmJmODRmZTQwOGUwZTNlNTZiYTkwMzUzOGJlZGIxZTE5MzU1NjBjMzc0NjIxOWNmOTg1NzJhY2ZlNTYyYzhjNi5qcGciLAogICJzZXJ2aWNlcyI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAiY3VzdG9tIiwKICAgICAgImVuZHBvaW50IjogImh0dHBzOi8vd3d3LmNvbW1hbmRsYXllci5vcmcvYXBpL2FnZW50cy92ZXJpZnlhZ2VudCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIk9BU0YiLAogICAgICAiZW5kcG9pbnQiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FnbnRjeS9vYXNmLyIsCiAgICAgICJ2ZXJzaW9uIjogInYwLjguMCIsCiAgICAgICJza2lsbHMiOiBbCiAgICAgICAgImFkdmFuY2VkX3JlYXNvbmluZ19wbGFubmluZy9zdHJhdGVnaWNfcGxhbm5pbmciLAogICAgICAgICJhZ2VudF9vcmNoZXN0cmF0aW9uL2FnZW50X2Nvb3JkaW5hdGlvbiIsCiAgICAgICAgImFkdmFuY2VkX3JlYXNvbmluZ19wbGFubmluZy9sb25nX2hvcml6b25fcmVhc29uaW5nIiwKICAgICAgICAiZ292ZXJuYW5jZV9jb21wbGlhbmNlL2F1ZGl0X3RyYWlsX3N1bW1hcml6YXRpb24iLAogICAgICAgICJnb3Zlcm5hbmNlX2NvbXBsaWFuY2Uvcmlza19jbGFzc2lmaWNhdGlvbiIsCiAgICAgICAgImdvdmVybmFuY2VfY29tcGxpYW5jZS9wb2xpY3lfbWFwcGluZyIsCiAgICAgICAgImV2YWx1YXRpb25fbW9uaXRvcmluZy9xdWFsaXR5X2V2YWx1YXRpb24iLAogICAgICAgICJldmFsdWF0aW9uX21vbml0b3JpbmcvcGVyZm9ybWFuY2VfbW9uaXRvcmluZyIKICAgICAgXSwKICAgICAgImRvbWFpbnMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiQ3VzdG9tIiwKICAgICAgImVuZHBvaW50IjogImh0dHBzOi8vd3d3LmNvbW1hbmRsYXllci5vcmcvYXBpL2FnZW50cy92ZXJpZnlhZ2VudCIKICAgIH0KICBdLAogICJyZWdpc3RyYXRpb25zIjogW10sCiAgInN1cHBvcnRlZFRydXN0cyI6IFsKICAgICJjcnlwdG8tZWNvbm9taWMiCiAgXSwKICAiYWN0aXZlIjogZmFsc2UsCiAgIng0MDJzdXBwb3J0IjogZmFsc2UKfQ==

    checked at 2026-08-31T07:10:02.879911Z

  3. Readable?rung 3 · parseable

    pass

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

    passed

    body_bytes
    1927
    body_sha256
    6a0e2fedca8144ae87e653d1f5db0f17fdf0caf4536f7fda35b96823fea32a14
    content_type

    checked at 2026-08-31T07:10:02.879911Z

  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
    x402Support, supportedTrust
    must_violations
    (empty)
    registrations_checked
    0
    services_field_source
    services
    services_status
    present
    should_gaps
    services[].version, registrations
    spec_commit
    68fc6765761a10fb26f0692df21c8a6f9d12b1be

    checked at 2026-08-31T07:10:02.879911Z

  5. Claims its identity?rung 5 · bound

    unclaimed

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

    unclaimed — the document made no claim to check

    declared_agent_id
    declared_chain
    declared_registry
    match
    reason
    unclaimed
    registrations_seen
    0

    checked at 2026-08-31T07:10:02.879911Z

  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://www.commandlayer.org/api/agents/verifyagent","elapsed_ms":542,"final_url":"https://www.commandlayer.org/api/agents/verifyagent","http_status":405,"index":0,"kind":"https","name":"custom","outcome":"not_live","probed":true,"probed_url":"https://www.commandlayer.org/api/agents/verifyagent"}, {"declared":"https://github.com/agntcy/oasf/","elapsed_ms":1817,"final_url":"https://github.com/agntcy/oasf/","http_status":200,"index":1,"kind":"https","name":"OASF","outcome":"live","probed":true,"probed_url":"https://github.com/agntcy/oasf/"}, {"declared":"https://www.commandlayer.org/api/agents/verifyagent","elapsed_ms":542,"final_url":"https://www.commandlayer.org/api/agents/verifyagent","http_status":405,"index":2,"kind":"https","name":"Custom","outcome":"not_live","probed":true,"probed_url":"https://www.commandlayer.org/api/agents/verifyagent"}
    endpoints_answered_not_live
    2
    endpoints_declared
    3
    endpoints_live
    1
    endpoints_our_error
    0
    endpoints_payment_gated
    0
    endpoints_probeable
    3
    endpoints_probed
    3
    endpoints_refused
    0

    checked at 2026-08-31T08:46:48.862283Z

  7. Has feedback?rung 7 · attested

    fail

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

    did not pass

    distinct_authors
    0
    feedback_count
    0
    reason
    no_feedback

    checked at 2026-08-31T07:10:02.879911Z

On-chain snapshot

mainnet
token id
32101
owner
0xed976ca9036bc2d4e25ba8219fada1be503a09c7
block
25,873,488
observed
2026-08-31T07:10:02.881621Z
tokenURI
data:application/json;base64,ewogICJ0eXBlIjogImh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtODAwNCNyZWdpc3RyYXRpb24tdjEiLAogICJuYW1lIjogIlZlcmlmeUFnZW50LmV0aCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcmlmeUFnZW50LmV0aCBpcyB0aGUgcHVibGljIHZlcmlmaWNhdGlvbiBsYXllciBmb3IgQ29tbWFuZExheWVyIHJlY2VpcHRzLlxuXG5JdCBsZXRzIGFnZW50cywgYXBwcywgYW5kIGRldmVsb3BlcnMgdmVyaWZ5IHdoYXQgYW4gQUkgYWdlbnQgYWN0dWFsbHkgZGlkIGJ5IGNoZWNraW5nIGEgc2lnbmVkIGV4ZWN1dGlvbiByZWNlaXB0LiBFYWNoIHJlY2VpcHQgaW5jbHVkZXMgdGhlIGFnZW50IHNpZ25lciwgYWN0aW9uL3ZlcmIsIHRpbWVzdGFtcCwgaW5wdXQvb3V0cHV0IGhhc2gsIGNhbm9uaWNhbCBwYXlsb2FkIGhhc2gsIGFuZCBFZDI1NTE5IHNpZ25hdHVyZS5cblxuVmVyaWZ5QWdlbnQgcmVzb2x2ZXMgdGhlIHNpZ25lciB0aHJvdWdoIEVOUyByZWNvcmRzLCByZWJ1aWxkcyB0aGUgY2Fub25pY2FsIHJlY2VpcHQsIGNoZWNrcyB0aGUgU0hBLTI1NiBoYXNoLCB2ZXJpZmllcyB0aGUgc2lnbmF0dXJlLCBhbmQgZGV0ZWN0cyB0YW1wZXJpbmcuXG5cbkZvciBFUkMtODAwNC1zdHlsZSBkaXNjb3ZlcnksIFZlcmlmeUFnZW50LmV0aCBleHBvc2VzIGNhbGxhYmxlIHZlcmlmaWNhdGlvbiBtZXRhZGF0YTogZW5kcG9pbnQsIFNESyBwYWNrYWdlLCBHaXRIdWIgc291cmNlLCBzdXBwb3J0ZWQgY2FwYWJpbGl0aWVzLCBhbmQgdmVyaWZpZXIgaWRlbnRpdHkuIFRoZSBnb2FsIGlzIHNpbXBsZTogYWdlbnRzIHNob3VsZCBub3QganVzdCBjbGFpbSBhY3Rpb25zIOKAlCB0aGV5IHNob3VsZCBwcm9kdWNlIHByb29mLiIsCiAgImltYWdlIjogImh0dHBzOi8vYmxvYi44MDA0c2Nhbi5hcHAvZmJmODRmZTQwOGUwZTNlNTZiYTkwMzUzOGJlZGIxZTE5MzU1NjBjMzc0NjIxOWNmOTg1NzJhY2ZlNTYyYzhjNi5qcGciLAogICJzZXJ2aWNlcyI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAiY3VzdG9tIiwKICAgICAgImVuZHBvaW50IjogImh0dHBzOi8vd3d3LmNvbW1hbmRsYXllci5vcmcvYXBpL2FnZW50cy92ZXJpZnlhZ2VudCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIk9BU0YiLAogICAgICAiZW5kcG9pbnQiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FnbnRjeS9vYXNmLyIsCiAgICAgICJ2ZXJzaW9uIjogInYwLjguMCIsCiAgICAgICJza2lsbHMiOiBbCiAgICAgICAgImFkdmFuY2VkX3JlYXNvbmluZ19wbGFubmluZy9zdHJhdGVnaWNfcGxhbm5pbmciLAogICAgICAgICJhZ2VudF9vcmNoZXN0cmF0aW9uL2FnZW50X2Nvb3JkaW5hdGlvbiIsCiAgICAgICAgImFkdmFuY2VkX3JlYXNvbmluZ19wbGFubmluZy9sb25nX2hvcml6b25fcmVhc29uaW5nIiwKICAgICAgICAiZ292ZXJuYW5jZV9jb21wbGlhbmNlL2F1ZGl0X3RyYWlsX3N1bW1hcml6YXRpb24iLAogICAgICAgICJnb3Zlcm5hbmNlX2NvbXBsaWFuY2Uvcmlza19jbGFzc2lmaWNhdGlvbiIsCiAgICAgICAgImdvdmVybmFuY2VfY29tcGxpYW5jZS9wb2xpY3lfbWFwcGluZyIsCiAgICAgICAgImV2YWx1YXRpb25fbW9uaXRvcmluZy9xdWFsaXR5X2V2YWx1YXRpb24iLAogICAgICAgICJldmFsdWF0aW9uX21vbml0b3JpbmcvcGVyZm9ybWFuY2VfbW9uaXRvcmluZyIKICAgICAgXSwKICAgICAgImRvbWFpbnMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiQ3VzdG9tIiwKICAgICAgImVuZHBvaW50IjogImh0dHBzOi8vd3d3LmNvbW1hbmRsYXllci5vcmcvYXBpL2FnZW50cy92ZXJpZnlhZ2VudCIKICAgIH0KICBdLAogICJyZWdpc3RyYXRpb25zIjogW10sCiAgInN1cHBvcnRlZFRydXN0cyI6IFsKICAgICJjcnlwdG8tZWNvbm9taWMiCiAgXSwKICAiYWN0aXZlIjogZmFsc2UsCiAgIng0MDJzdXBwb3J0IjogZmFsc2UKfQ==

What the fetch saw

data
scheme
data
request url
final url
http status
content type
size
1,927 bytes
sha256
6a0e2fedca8144ae87e653d1f5db0f17fdf0caf4536f7fda35b96823fea32a14
elapsed
0 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
bba33eff-c533-4bca-8fa0-0f084928bcde
chain
mainnet
pinned block
25,873,488
agents
50,638
started
2026-08-31T06:32:02.218274Z
finished
2026-08-31T08:10:40.641929Z
checker
0.7.0 · 981910a8f7451ff11d8af05abef0cc7852e25953
spec commit
68fc6765761a10fb26f0692df21c8a6f9d12b1be
Reproduce
cargo run -p sweeper -- mainnet   # at block 25873488

What each check measures →