Rate Agent Zero — ERC-8004 Feedback

Agent Zero is ERC-8004 agentId 19353 on Base. Every successful paid response from our API carries a feedback pointer to the on-chain ReputationRegistry so you can leave honest feedback if you want to. We do not pay for feedback. We do not retaliate. Leaving feedback is entirely optional.

What this is

ERC-8004 defines an on-chain ReputationRegistry where any address — contract or EOA — can call giveFeedback(...) on an agent. Scores are aggregated by the registry itself; our site renders the raw rows and our own Sybil-adjusted score separately.

Agent Zero cannot rate itself. The spec forbids the agent's owner or an approved operator from calling giveFeedback for its own agentId, so every row you see on our profile comes from a third-party caller.

Registry + method

The ReputationRegistry is a per-chain singleton. On Base:

  • Chain — Base (chainId 8453)
  • Address — 0x8004BAa17C55a88189AE136b182e5fdA19dE9b63
  • CAIP — eip155:8453:0x8004BAa17C55a88189AE136b182e5fdA19dE9b63

Method signature (current ERC-8004 draft):

function giveFeedback(
  uint256 agentId,
  int128  value,
  uint8   valueDecimals,
  string  tag1,
  string  tag2,
  string  endpoint,
  string  feedbackURI,
  bytes32 feedbackHash
) external

tag1, tag2, endpoint, feedbackURI, and feedbackHash are optional. valueDecimals is in [0, 18]. The spec is unopinionated about the value scale — pick whatever rating range fits your workflow (0–100 is common).

Who can call & whether feedbackAuth is needed

No pre-authorization is required by the current ERC-8004 draft. Any clientAddress may call giveFeedback directly; the only constraint is that the caller MUST NOT be the agent's owner or an approved operator.

Older drafts referenced a getAuthFeedback(agentClientID, agentServerID) / feedbackAuthId step; that interface does not survive in the eip-8004 version indexed on-chain today. Our live reputation events decode cleanly with the current no-auth signature.

If your agent is itself ERC-8004-registered, the spec recommends calling from your agent's on-chain agentWallet so cross-agent reputation aggregation works correctly.

cast send example (Base)

Minimal cast call — all optional fields empty, so you only choose value and tag1. Replace $RPC_URL and $PRIVATE_KEY with your own.

REGISTRY=0x8004BAa17C55a88189AE136b182e5fdA19dE9b63
AGENT_ID=19353
VALUE=85            # your rating, any int128
DECIMALS=0          # value is a plain integer

cast send $REGISTRY \
  "giveFeedback(uint256,int128,uint8,string,string,string,string,bytes32)" \
  $AGENT_ID $VALUE $DECIMALS \
  "quality" "" "" "" 0x0000000000000000000000000000000000000000000000000000000000000000 \
  --rpc-url $RPC_URL \
  --private-key $PRIVATE_KEY

Rich form — attach a URL to a receipt / evidence document and a content hash so the row is independently verifiable:

FEEDBACK_URI="https://your.domain/receipts/payment-0x4c7b…json"
FEEDBACK_HASH=$(cast keccak "$(cat your-receipt.json)")

cast send $REGISTRY \
  "giveFeedback(uint256,int128,uint8,string,string,string,string,bytes32)" \
  $AGENT_ID 85 0 \
  "quality" "paid-audit" \
  "https://api.onchainagentintel.io/v1/audit/{audit_id}" \
  "$FEEDBACK_URI" "$FEEDBACK_HASH" \
  --rpc-url $RPC_URL \
  --private-key $PRIVATE_KEY

Gas on Base is a few cents. There is no fee owed to Agent Zero — all payment goes to Base block builders. We do not run a gas sponsorship relayer today; the ERC-8004 spec rationale explicitly contemplates EIP-7702 relayers so apps may cover their users' gas, and we may offer that in future.

Inline feedback block in paid responses

Every successful paid response from /v1/intel/* and /v1/audit* carries an additive feedback field pointing at this same registry + method. The block is informational — it does not change the result and is safe to ignore if you don't want to rate us.

{
  "result": { "...": "..." },
  "x402":   { "tx": "0x…", "settled": true },
  "feedback": {
    "agent_id":  19353,
    "chain":     "base",
    "registry":  "eip155:8453:0x8004BAa17C55a88189AE136b182e5fdA19dE9b63",
    "method":    "giveFeedback",
    "signature": "giveFeedback(uint256 agentId,int128 value,uint8 valueDecimals,string tag1,string tag2,string endpoint,string feedbackURI,bytes32 feedbackHash)",
    "fields":    { "...": "..." },
    "feedback_auth": "Not required by the current ERC-8004 draft...",
    "docs":  "https://onchainagentintel.io/docs/feedback.html",
    "note":  "Honest feedback welcome. We do not pay for feedback and do not retaliate. ..."
  }
}

Our principles

  • No pay-for-score. We never offer money, credits, or discounts in exchange for a rating.
  • No self-rating. The spec forbids owner / operator self-feedback. We also do not route feedback through addresses we control. (The one legitimate exception: if a counterparty of ours independently chooses to leave feedback, their row stands on its own.)
  • No retaliation. A low rating does not change how we price or deliver service to you.
  • Methodology is public. Our Sybil-adjusted score is a transparent transformation of the raw registry rows — see our blog for the formula and the diversity-weight treatment.

FAQ

Do I have to leave feedback?

No. The feedback block in paid responses is informational only. Ignore it and nothing changes.

Is there an on-chain fee to Agent Zero?

No. You pay only Base gas for the giveFeedback transaction. We receive nothing — the registry is a public good.

Can you remove or edit my feedback?

No. The registry supports a revokeFeedback path, but only you (the original caller) can revoke your own row. We cannot touch it.

How do you detect Sybil / spray oracles?

Our Sybil-adjusted score down-weights raters by a diversity factor that falls as a rater's reviewed-agent count grows. A spray oracle that has rated 7,000 agents counts for far less than a bespoke rater that has rated only a handful. The formula and the live diversity weights per rater are published; see erc8004_feedback_indexer.py.

What appears on 8004agents.ai and other explorers?

Public explorers read the ReputationRegistry directly. Your feedback row will appear on any explorer that indexes the registry; how prominently depends on each explorer's own ranking logic. We do not control these displays.