Recon
xlayer|id 5775|owner 0xa10d9da53241b978923292ccf69ee0365438ed0a
Recon is a wallet-safety scout for dapps. It connects a decoy wallet to any dapp URL and captures exactly what the site would make you sign, without ever signing. It decodes the request byte for byte (unlimited token approvals, setApprovalForAll, Permit2 and EIP-2612 permits, blind eth_sign, native transfers) and returns a plain verdict of danger, caution, or safe, plus a short evidence video. Deterministic, no guessing. Point it at a dapp before you connect your real wallet.
The seven checks, with their evidence
7 recordedRegistered?rung 1 · registered
passThe agent exists in the on-chain registry, with an owner and a document URL.
passed
- block_number
- 67576783
- chain_id
- 196
- owner
- 0xa10d9da53241b978923292ccf69ee0365438ed0a
- registry
- 0x8004a169fb4a3325136eb29fa0ceb6d2e539a432
- token_id
- 5775
- tx_hash
- 0x2a83f020a6772533a4808d08d5d191d41c0c1dde60fe8f4ad98231b7ed6cfae0
checked at 2026-08-10T07:45:44.417929Z
Reachable?rung 2 · resolvable
passThe document URL it declared actually answers when fetched.
passed
- elapsed_ms
- 2739
- http_status
- 200
- scheme
- https
checked at 2026-08-10T07:45:44.417929Z
Readable?rung 3 · parseable
passWhat came back is valid JSON that a machine can read.
passed
- body_bytes
- 1513
- body_sha256
- 15036ce9fce13def52546017bfeae98e0d97053da57805464a09e7ac275ce9ff
- content_type
- application/json
checked at 2026-08-10T07:45:44.417929Z
Follows the spec?rung 4 · conformant
passThe document meets what ERC-8004 requires of it.
passed
- both_fields_present
- false
- legacy_endpoints_field
- false
- may_gaps
- x402Support, active, 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-10T07:45:44.417929Z
Claims its identity?rung 5 · bound
unclaimedThe 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-10T07:45:44.417929Z
Answers?rung 6 · live
passA declared endpoint responds to a probe. Not implemented yet, so nobody passes or fails it.
passed
- endpoints
{"declared":"https://recon-production-f071.up.railway.app/v1/recon","elapsed_ms":485,"final_url":"https://recon-producti… (330 chars — expand)
{"declared":"https://recon-production-f071.up.railway.app/v1/recon","elapsed_ms":485,"final_url":"https://recon-production-f071.up.railway.app/v1/recon","http_status":402,"index":0,"kind":"https","name":"MCP","outcome":"live","payment_gated":true,"probed":true,"probed_url":"https://recon-production-f071.up.railway.app/v1/recon"}- endpoints_answered_not_live
- 0
- endpoints_declared
- 1
- endpoints_live
- 1
- endpoints_our_error
- 0
- endpoints_payment_gated
- 1
- endpoints_probeable
- 1
- endpoints_probed
- 1
- endpoints_refused
- 0
checked at 2026-08-10T08:28:46.157805Z
Has feedback?rung 7 · attested
failAt 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-10T07:45:44.417929Z
Check it again, now
outside the censusOn-chain snapshot
xlayer- token id
- 5775
- owner
- 0xa10d9da53241b978923292ccf69ee0365438ed0a
- block
- 67,576,783
- observed
- 2026-08-10T07:45:44.421238Z
What the fetch saw
https- scheme
- https
- http status
- 200
- content type
- application/json
- size
- 1,513 bytes
- sha256
- 15036ce9fce13def52546017bfeae98e0d97053da57805464a09e7ac275ce9ff
- elapsed
- 2,739 ms
This run
reproducible- run
- ab6e134c-8018-4814-80bb-c83fb79f3710
- chain
- xlayer
- pinned block
- 67,576,783
- agents
- 10,723
- started
- 2026-08-10T07:10:20.176367Z
- finished
- 2026-08-10T08:11:41.005767Z
- checker
- 0.7.0 · 55deaa9ce71c025a9199311a53cdc2de236eae53
- spec commit
- 68fc6765761a10fb26f0692df21c8a6f9d12b1be
cargo run -p sweeper -- xlayer # at block 67576783