askill
verify

verifySafety 90Repository

Verify agent identity using ERC-8004 on-chain registry

31 stars
1.2k downloads
Updated 2/8/2026

Package Files

Loading files...
SKILL.md

Verify - Agent Identity Verification

Verify any agent's on-chain identity using ERC-8004. Prevents impersonation attacks.

Why This Matters

On January 29, 2026, an agent named "samaltman" attempted to hijack bots via prompt injection. Anyone can claim to be anyone. ERC-8004 provides cryptographic proof of identity.


Chat Commands

Verify Agent

/verify 1234                           # Verify agent by ID
/verify 0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb7  # Verify by address
/verify eip155:8453:0x7177...Dd09A:1234             # Full format

Check Before Copy Trading

/verify trader 0x123...                # Verify trader before copying
/verify whale 0xabc...                 # Verify whale identity

Register Clodds

/verify register                       # Register this Clodds instance
/verify register --name "MyBot"        # With custom name

Stats

/verify stats                          # Show total registered agents
/verify reputation 1234                # Get agent's reputation score

TypeScript API

Quick Verification

import { verifyAgent, hasIdentity } from 'clodds/identity';

// Verify by agent ID
const result = await verifyAgent(1234);
if (result.verified) {
  console.log(`Verified: ${result.name}`);
  console.log(`Owner: ${result.owner}`);
  console.log(`Reputation: ${result.reputation?.averageScore}/100`);
}

// Check if address has identity
const hasId = await hasIdentity('0x742d35Cc...');

Full Client

import { createERC8004Client } from 'clodds/identity';

const client = createERC8004Client('base-sepolia');

// Get agent details
const agent = await client.getAgent(1234);
console.log(agent?.card?.name);
console.log(agent?.card?.description);

// Verify ownership
const isOwner = await client.verifyOwnership(1234, '0x742...');

// Get reputation
const rep = await client.getReputation(1234);
console.log(`Score: ${rep?.averageScore}/100 (${rep?.feedbackCount} reviews)`);

// Give feedback
const txHash = await client.giveFeedback(1234, 85, 'Great trading signals');

Register Agent

import { createERC8004Client, buildAgentCard } from 'clodds/identity';

const client = createERC8004Client('base', process.env.PRIVATE_KEY);

// Build agent card
const card = buildAgentCard({
  name: 'Clodds Trading Bot',
  description: 'AI-powered prediction market assistant',
  walletAddress: '0x742d35Cc...',
  apiEndpoint: 'https://api.cloddsbot.com/agent',
});

// Upload to IPFS (use Pinata, web3.storage, etc.)
const ipfsUri = await uploadToIPFS(card);

// Register on-chain
const { agentId, txHash } = await client.register(ipfsUri);
console.log(`Registered as agent #${agentId}`);

Contract Addresses

Same on all EVM chains (CREATE2 deterministic):

ContractAddress
Identity Registry0x7177a6867296406881E20d6647232314736Dd09A
Reputation Registry0xB5048e3ef1DA4E04deB6f7d0423D06F63869e322
Validation Registry0x662b40A526cb4017d947e71eAF6753BF3eeE66d8

Live on: Ethereum, Base, Optimism, Arbitrum, Polygon (and testnets)


Supported Networks

NetworkStatusDefault
BaseLive
EthereumLive
OptimismLive
ArbitrumLive
PolygonLive
Sepolia (testnet)Live
Base SepoliaLive

Mainnet launched January 29, 2026. 19,000+ agents already registered.


Use Cases

Copy Trading Verification

Before copying a trader, verify their identity:

const result = await verifyAgent(traderAgentId);
if (!result.verified) {
  console.warn('UNVERIFIED TRADER - Proceed with caution');
}
if (result.reputation?.averageScore < 50) {
  console.warn('LOW REPUTATION - Consider skipping');
}

Whale Tracking

Verify whale identity claims:

const isVerified = await hasIdentity(whaleAddress);
// Only trust signals from verified whales

Bot-to-Bot Communication

Verify other agents before interaction:

const agent = await client.getAgent(otherAgentId);
if (agent?.card?.endpoints?.find(e => e.name === 'A2A')) {
  // Safe to communicate via A2A protocol
}

Best Practices

  1. Always verify before copy trading - Don't trust unverified traders
  2. Check reputation scores - Low scores indicate potential issues
  3. Verify on the right network - Use same network as trading
  4. Register your bot - Build trust with verified identity
  5. Give feedback - Help build the trust graph

Links

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

95/100Analyzed 2/12/2026

Excellent, comprehensive skill documentation for identity verification. Includes clear chat commands, TypeScript API examples, contract addresses, and use cases. Well-structured and highly actionable, serving as a strong reference implementation.

90
95
75
95
95

Metadata

Licenseunknown
Version-
Updated2/8/2026
Publisheralsk1992

Tags

apici-cdgithubprompting