Cryptographic agent identity layer. The registry assigns verifiable on-chain credentials and enables instant global revocation of compromised agents.
Generate a unique bytes32 identifier from the agent metadata, owner address, and salt.
Link one or more policy modules to the agent ID. Each policy defines a specific constraint.
Once registered, sentinel nodes begin intercepting and validating every matching transaction.
Any address can register an agent with attached policies. No approval process or gatekeeping required.
Agent owners can globally revoke an agent in a single transaction. All sentinel nodes stop processing immediately.
Attach multiple policy contracts to a single agent. Policies are checked in sequence — all must pass.
Every registration, policy change, and revocation is recorded as an immutable event on Base L2.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
interface IBouclierRegistry {
function registerAgent(
bytes32 agentId,
address[] calldata policies
) external;
function revokeAgent(bytes32 agentId) external;
function isActive(
bytes32 agentId
) external view returns (bool);
function getPolicies(
bytes32 agentId
) external view returns (address[] memory);
event AgentRegistered(bytes32 indexed agentId, address owner);
event AgentRevoked(bytes32 indexed agentId, string reason);
}Assign a verifiable on-chain identity and attach policy guardrails in a single transaction.