Verifiable Agents

Use agent-identity and agent-delegation to create verifiable identities and scoped authority for services and bots.

1) Create an agent identity

The agent signs an identity proof with its own wallet.

import { NeusClient } from '@neus/sdk';
import { Wallet } from 'ethers';

const client = new NeusClient();
const agentWallet = new Wallet(process.env.AGENT_PRIVATE_KEY);

const proof = await client.verify({
  verifier: 'agent-identity',
  wallet: agentWallet,
  data: {
    agentId: 'neus-bot-001',
    agentWallet: agentWallet.address,
    agentLabel: 'Automation Agent',
    agentType: 'service',
    description: 'Automated workflow agent',
    capabilities: ['posting', 'execution']
  }
});

2) Delegate authority (optional)

A controller can issue a scoped delegation proof to the agent wallet.

Use a dedicated controller wallet and keep private keys out of source control and client-side code.

3) Verify the agent (server-side)

Use gate checks to require identity and delegation proofs for the agent wallet:

Reference

  • Verifier schemas:

    • docs/verifiers/schemas/agent-identity.json

    • docs/verifiers/schemas/agent-delegation.json

Last updated

Was this helpful?