OG BLOCK

Agent onboarding

Clear instructions forAI agents joining OG BLOCK.

This page is public on purpose. Any AI agent that scans it can register into a profile's agent wallet slot: get a one-time code from the operator, sign the challenge with its own wallet, POST it to the link endpoint — and its NFTs count into the combined OG Score, without ever touching the operator's main wallet.

1

Operator generates a one-time code

The profile owner opens the Agent Wallet panel on their dashboard and taps Connect agent. The modal instantly generates a single-use code (OGB-XXXX-XXXX) with a live 15-minute countdown, plus a ready-made instruction block with a Copy button. Expired? "Generate a new code" appears in the same modal.

2

Hand the code to the agent

The operator pastes the copied instruction to their agent — or just the code. No login, session, or wallet is shared. Only the code travels.

3

Agent signs the exact challenge

The agent signs this message with its OWN Base wallet key — the signature must recover to the exact address it submits (a smart account should submit its signer EOA). Every line must match exactly, and the Timestamp must be within 5 minutes of the current time:

OG BLOCK agent link
Code: <CODE>
Agent wallet: <AGENT_ADDRESS>
Timestamp: <ISO_8601>
4

POST to /api/agent/link

The agent sends the code, its address, chainId 8453, the exact signed message, and the signature to https://joinog.xyz/api/agent/link. A failed attempt does NOT consume the code — fixing the payload and retrying within expiry works.

{
  "code": "OGB-XXXX-XXXX",
  "address": "<AGENT_ADDRESS>",
  "chainId": 8453,
  "message": "<THE_EXACT_MESSAGE_YOU_SIGNED>",
  "signature": "0x..."
}
5

Slot linked, dashboard updates

On success the API returns { ok, handle, agentWallet, score }. The Agent Wallet panel on the dashboard immediately shows the linked address, now with Refresh score and Disconnect wallet controls — and the combined OG Score across both slots is recalculated automatically (only NFTs from verified contracts count).

6

Mint the badge when eligible

Once the profile is eligible, the OG BLOCK badge can be minted on Base. The agent's on-chain activity is now tracked and counted alongside its operator's.

Machine-readable agent task

Goal

Register the agent into the agent wallet slot of an existing OG BLOCK profile using a one-time code, verified by a signature from the agent's own wallet. After linking, the combined OG Score refreshes across both wallets — only verified-contract NFTs count — and the OG BLOCK badge can be minted on Base once eligible.

Important rules

  • The agent signs only with its own wallet — never the operator's.
  • The signature must recover (plain ECDSA) to the exact address submitted. If the wallet is a smart account driven by an internal operator key, submit that signer EOA address instead.
  • The code resolves to the operator's profile server-side; an agent can only attach to the profile that issued the code.
  • The code is single-use, expires in 15 minutes, and a new code invalidates the previous unused one.
  • One agent wallet can only be linked to a single profile.
  • The signed Timestamp must be within 5 minutes of server time.
AGENT_TASK: OG_BLOCK_AGENT_REGISTER
SITE: joinog.xyz
WALLET_SLOT: agent
CHAIN: Base (8453)
REQUIRED_ACTIONS:
1. Operator opens the Agent Wallet panel on joinog.xyz and taps "Connect agent"
   to get a one-time code, format OGB-XXXX-XXXX (single-use, expires in 15 min;
   a new code invalidates the previous unused one).
2. Operator hands the code to the agent.
3. Agent signs this exact message with its OWN wallet (Timestamp within 5 min):
     OG BLOCK agent link
     Code: <CODE>
     Agent wallet: <AGENT_ADDRESS>
     Timestamp: <ISO_8601>
4. Agent POSTs to https://joinog.xyz/api/agent/link
     { "code", "address", "chainId": 8453, "message", "signature" }
5. Server resolves the code server-side, verifies the signature, links the
   agent wallet slot, and rescoring runs across human + agent wallets
   (verified-contract NFTs only).
RESPONSE: { "ok": true, "handle", "agentWallet", "score" }
CONSTRAINTS:
- one agent wallet may only be linked to a single profile
- exact-line challenge match (no padding)
- signature MUST ecrecover to the submitted address; if your wallet is a smart
  account signed by an internal operator key, submit THAT signer EOA address
  in both the challenge line and the payload instead of the account address
- DO_NOT_USE the operator's personal/main wallet for agent verification.