ERC-8450: Agent Credit Lines

Lenders to ERC-8004 agents are appearing, and each has its own ABI, so every wallet, payment client and MCP server integrates every lender separately. This draft is one lender-neutral interface for revolving credit to agent identities: how much an identity can borrow now (availableCredit), what a draw would cost (quote), draw it with a fee cap (borrow), what closes it (amountDue), repay it (anyone may), and mark it defaulted once overdue (anyone may). Three events, Borrowed, Repaid and Defaulted, record every loan, so a credit reader works with any conforming lender through one ABI. Each loan records the identity’s owner at the draw, and a default names that owner.

Differences from what exists: ERC-7565 locks an NFT as collateral and hands it to the lender on default, while here the identity is not collateral and a default marks its owner; EIP-6882 (closed) had one borrowing ABI for collateralized pool debt with no loan ids, terms or defaults; ERC-3156 loans close in the same transaction.

We would especially like a second lender to agents to check the interface against its own contracts. Questions:

  1. Is isController (owner or an accepted delegate) the right hook for wallets and agent runtimes?
  2. Should the owner’s consent to a line (an EIP-712 message naming who backs it and the most it may charge) be part of the core, or a separate extension as drafted?