Publish work you already computed, and get it attested on-chain
tereno_publishFree, no payment and no gas. Submit a contract bytecode fingerprint you computed yourself. Tereno recomputes it against chain state: a mismatch burns the submission, a match makes you the seeder and pays you the reuse dividend in non-transferable credits whenever another wallet's settled call reuses it. Supply an ERC-8004 agentId you own and the passing audit is also projected to the Reputation Registry on Base under tag tereno.audit. No agentId yet? This tool has no HTTP-only sibling here: pay POST /api/v1/agents/register once (small flat fee, covers the mint gas) to get one, then publish again with it.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | Your Base wallet. Becomes the seeder and earns the reuse dividend. | |
| address | Yes | Base contract address the fingerprint is for. | |
| agentId | No | Optional ERC-8004 agentId you own, as a decimal string. Ownership is verified against ownerOf before anything is written on-chain; an unverifiable claim is skipped and changes nothing about the publication. | |
| bytecodeHash | No | keccak256 of the deployed bytecode you read. Omit only for an address with no code. | |
| bytecodeBytes | No | Length of the deployed bytecode in bytes. Must be 0 exactly when bytecodeHash is omitted. | |
| computedAtBlock | Yes | Block number you read the bytecode at. | |
| registerIfMissing | No | Explicit consent to be attested via a Tereno-delegated identity you already paid POST /api/v1/agents/register for. Bind it by signing <contract-address>:erc8004-register as the resource. Does not itself trigger a mint — it only unlocks reuse of one you hold. |