live/stable
Agent lane
Verify that an HTTP request comes from a labelled agent and give it its own limits.
Agent lane
Apps can't tell an agent from a spam bot, so they throttle both. The agent lane lets an app verify a request and treat agents on their own terms.
Agent side
pulse.signRequest() adds five headers: agent ID, sender key, timestamp, nonce, and an EIP-191 signature over a canonical string of the request.
Server side
requirePulse({ minTier }) for Hono and Express: checks skew and replay, recovers the signer, confirms with /v1/verify that the key is a bound sender of that agent and that the tier meets the minimum, then attaches { agentId, tier, key } to the request. Tiers: claimed, and staked:n once staking is live.
Rejection codes
MISSING_HEADERS · STALE_TIMESTAMP · REPLAY · BAD_SIGNATURE · KEY_NOT_BOUND · TIER_TOO_LOW
The example merchant in the SDK gives labelled agents ten times the anonymous rate limit.