See·two-phase async

Image Generation

Generate images

DALL-E and others. Returns content URI + content hash + dimensions.

0x0000000000000000000000000000000000000818Explorer

Interactive form — coming next session

Two-phase async UI in progress. The precompile itself is 0x0000000000000000000000000000000000000818 and live on testnet — use the canonical Solidity / viem code below to integrate from your own contract.

ABI summary

(
  ModalInput[] inputs,        // [{ kind, prompt, ... }]
  OutputConfig output,        // width, height, steps, guidance
  string model,               // e.g. "dall-e-3"
  address executor,           // TEEServiceRegistry capability=4
  bytes[] encryptedSecrets,
  uint256 ttl,                // 1-500 blocks
  ...18 fields total
)
→ delivers (string contentUri, bytes32 contentHash, uint256 width, uint256 height, uint256 sizeBytes)

Callback pattern

Two-phase precompiles deliver results via AsyncDelivery at 0x5A16214fF555848411544b005f7Ac063742f39F6 calling your contract’s callback. Always verify msg.sender == ASYNC_DELIVERY to prevent injection.

function onLongRunningResult(bytes32 jobId, bytes calldata result) external {
    require(msg.sender == ASYNC_DELIVERY, "unauth");
    // ... decode result based on this precompile's response ABI
}
Read the spectwo-phase · image