Skip to content

docs: add ERC-8183 integration guide for Arc Escrow#29

Open
consumeobeydie wants to merge 2 commits into
circlefin:masterfrom
consumeobeydie:feat/erc8183-integration-guide
Open

docs: add ERC-8183 integration guide for Arc Escrow#29
consumeobeydie wants to merge 2 commits into
circlefin:masterfrom
consumeobeydie:feat/erc8183-integration-guide

Conversation

@consumeobeydie

Copy link
Copy Markdown

Summary

This PR adds an ERC-8183 integration guide showing how to extend Arc Escrow with Arc Testnet's native agentic commerce standard.

What's included

  • Complete ERC-8183 job lifecycle walkthrough
  • Integration example replacing custom EIP-712 escrow with native ERC-8183
  • AI validation flow combining offchain validation with onchain settlement
  • Multi-agent extension showing autonomous sub-agent hiring

Why ERC-8183?

ERC-8183 is Arc Testnet's native standard for agentic commerce. It provides trustless escrow, autonomous agent hiring, and native USDC settlement — making it a natural upgrade path for Arc Escrow apps.

Live Verification

This integration has been tested and verified on Arc Testnet:

@osr21

osr21 commented Jun 27, 2026

Copy link
Copy Markdown

Sharing our ERC-8004 AgentRegistry as a complementary identity layer

We took a related approach on Arc Testnet, implementing ERC-8004 (Agent Identity) rather than ERC-8183 (Agent Commerce). The two standards are complementary and our experience may be useful context for this guide.

Our AgentRegistry (ERC-8004 pattern)

AgentRegistry: 0xF891f7cCF2A795801b9F1cE8Bd5753B5a6043e72 (Arc Testnet)

The registry gives agents a persistent on-chain identity with reputation tracking:

struct Agent {
    address owner;       // wallet that registered this agent
    string  name;        // human-readable label, e.g. "TreasuryAgent-v2"
    string  agentType;   // "market-maker" | "orchestrator" | "data-provider" | "custom"
    string  metadataURI; // IPFS/HTTPS pointer to full metadata JSON
    Status  status;      // Active | Suspended | Deactivated
    uint256 totalVolume; // cumulative USDC transacted (6-decimal raw)
    uint256 txCount;     // total recorded activities
}

Activity is recorded via recordActivity(agentId, amount) (permissionless in simulation-first mode), updating a 0–100 reputation score derived from txCount + totalVolume. Any contract — including Arc Escrow — can attest to an agent's on-chain history without requiring the agent to call in.

Full source: AgentRegistry.sol

How ERC-8004 + ERC-8183 fit together

  • ERC-8183 handles the commerce lifecycle: job posting → bid → escrow → completion → payout
  • ERC-8004 handles agent identity: who the agent is, what type, what track record

Natural integration points:

  • An ERC-8183 job poster could query an ERC-8004 registry to filter bids by minimum reputation before accepting
  • An ERC-8183 arbiter could weight dispute resolution toward the higher-reputation agent
  • The AgentRegistry can emit reputation attestations that Arc Escrow release conditions validate

SplitPayment as a payout complement

We also deployed a SplitPayment contract (0xDcF9f0c13B3ffC8D108909794E8659FDA8864FCe) that distributes USDC to multiple recipients in one transaction. This could serve as the payout layer for an ERC-8183 job with multiple sub-agents or a payment split between agent and platform.

Source: SplitPayment.sol

Curious whether the ERC-8183 guide plans to reference any identity/reputation layer, or if that's intentionally out of scope for this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants