AgentCount
Sections
Check your agent
Agent

Otto AI - Trading Agent

mainnet|id 6940|owner 0x197b33028a4ac0bccda2cdb51205d9f48f50d65b

Checks 1–7

Non-custodial DeFi execution agent: multi-chain token swaps via Odos, cross-chain bridges via LiFi, and Hyperliquid perpetual futures with TP/SL. Funds stay in user's Safe smart account. Website: https://useotto.xyz | X: @useOttoAI

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
    25723900
    chain_id
    1
    token_id
    6940

    checked at 2026-08-10T10:29:52.122389Z

  2. Reachable?rung 2 · resolvable

    pass

    The document URL it declared actually answers when fetched.

    passed

    elapsed_ms
    82
    gateway_attempts
    {"error":null,"gateway":"https://ipfs.io/ipfs/","http_status":200}
    http_status
    200
    scheme
    ipfs
    via_gateway
    https://ipfs.io/ipfs/

    checked at 2026-08-10T10:29:52.122389Z

  3. Readable?rung 3 · parseable

    pass

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

    passed

    body_bytes
    2063
    body_sha256
    157f784b502984ffdb0aaa834b2b8ffea7f149b6dbb2d5af9e1fad41e81923ed
    content_type
    application/json

    checked at 2026-08-10T10:29:52.122389Z

  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
    2
    services_field_source
    services
    services_status
    present
    should_gaps
    services[].version
    spec_commit
    68fc6765761a10fb26f0692df21c8a6f9d12b1be

    checked at 2026-08-10T10:29:52.122389Z

  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
    6940
    declared_chain
    1
    declared_registry
    eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432
    match
    true
    registrations_seen
    2

    checked at 2026-08-10T10:29:52.122389Z

  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://useotto.xyz/.well-known/a2a/trading-agent.json","elapsed_ms":1276,"final_url":"https://useotto.xyz/.well-known/a2a/trading-agent.json","http_status":200,"index":0,"kind":"https","name":"A2A","outcome":"live","probed":true,"probed_url":"https://useotto.xyz/.well-known/a2a/trading-agent.json"}, {"declared":"https://github.com/agntcy/oasf/","elapsed_ms":1975,"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://app.virtuals.io","elapsed_ms":393,"final_url":"https://app.virtuals.io/","http_status":200,"index":2,"kind":"https","name":"ACP","outcome":"live","probed":true,"probed_url":"https://app.virtuals.io"}, {"declared":"https://useotto.xyz","elapsed_ms":787,"final_url":"https://useotto.xyz/","http_status":200,"index":3,"kind":"https","name":"web","outcome":"live","probed":true,"probed_url":"https://useotto.xyz"}, {"declared":"https://docs.useotto.xyz","elapsed_ms":1026,"final_url":"https://docs.useotto.xyz/","http_status":200,"index":4,"kind":"https","name":"docs","outcome":"live","probed":true,"probed_url":"https://docs.useotto.xyz"}, {"declared":"https://x.com/useOttoAI","elapsed_ms":0,"error":"robots_disallowed","index":5,"kind":"https","name":"twitter","outcome":"refused","probed":true,"probed_url":"https://x.com/useOttoAI"}, {"declared":"support@useotto.xyz","index":6,"kind":"email","name":"email","probed":false}
    endpoints_answered_not_live
    0
    endpoints_declared
    7
    endpoints_live
    5
    endpoints_our_error
    0
    endpoints_payment_gated
    0
    endpoints_probeable
    6
    endpoints_probed
    6
    endpoints_refused
    1

    checked at 2026-08-10T11:57:37.277100Z

  7. Has feedback?rung 7 · attested

    pass

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

    passed

    distinct_authors
    7
    feedback_count
    10

    checked at 2026-08-10T10:29:52.122389Z

On-chain snapshot

mainnet
token id
6940
owner
0x197b33028a4ac0bccda2cdb51205d9f48f50d65b
block
25,723,900
observed
2026-08-10T10:29:52.126440Z
ipfs://bafkreiavp54ewubjqt75wcvkqnfsxd76u7yutnw3wlk27hq7vva6qgjd5u

What the fetch saw

ipfs
scheme
ipfs
http status
200
content type
application/json
size
2,063 bytes
sha256
157f784b502984ffdb0aaa834b2b8ffea7f149b6dbb2d5af9e1fad41e81923ed
elapsed
82 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
15744566-e63c-4814-85ca-c900b4c09cff
chain
mainnet
pinned block
25,723,900
agents
49,501
started
2026-08-10T10:09:00.141614Z
finished
2026-08-10T11:31:56.201501Z
checker
0.7.0 · 55deaa9ce71c025a9199311a53cdc2de236eae53
spec commit
68fc6765761a10fb26f0692df21c8a6f9d12b1be
Reproduce
cargo run -p sweeper -- mainnet   # at block 25723900

What each check measures →